Function at 0x1001e05a
Capabilities:
Encode data using xor

Disassembly:
add byte [ebp], ah
outsb dx, byte [esi]
add byte [eax + eax + 0x65], dh
add byte [edx], dh
add byte cs:[eax + eax + 0x6e], ch
add byte [ebx], ch
add byte [eax], al
inc eax
inc ebx
cmp bl, byte [edi + edx*2 + 0x49]
dec esi
inc esp
dec edi
push edi
push ebx
pop esp
push ebx
jns 0x1001e076
je 0x1001e06a
insd dword es:[edi], dx
xor esi, dword [edx]
pop esp
js 0x1001e07b
jae 0x1001e07d
xor dh, byte [edx + 0x65]
jae 0x1001e040
insb byte es:[edi], dx
insb byte es:[edi], dx
sub al, 0x2d
xor dword ss:[eax], esi
xor eax, dword [eax]
sbb al, 0
push esp
add byte [eax], al
add byte [ebx], cl
add bh, ch
mov esi, 0
add byte [eax], al
add byte [eax], al
and eax, 0x79005300
add byte [ebx], dh
je 0x1001e038
add byte gs:[ebp], ch
push edx
add byte [edi], ch
outsd dx, dword [esi]
add byte [eax + eax + 0x25], dh
add byte [eax + eax + 0x73], bl
add byte [ecx], bh
jae 0x1001e04e
je 0x1001e050
add byte gs:[ebp], ch
xor eax, dword [eax]
xor al, byte [eax]
pop esp
add byte [edi], dh
ja 0x1001e05c
jae 0x1001e05e
arpl word [eax], ax
jne 0x1001e062
imul eax, dword [eax], 0x63002e
jo 0x1001e06a
insb byte es:[edi], dx
add byte [eax], al
add byte [eax], al
add byte [eax + eax], bl
add byte [eax], al
add dword [eax - 0x52000000], esi
add byte [esi], dh
add byte [ebp + eax + 0x3cc30000], bl
add byte [eax], al
add byte [esi - 0x63ffca00], ch
add byte ss:[ebp + eax + 0x3cc30000], bl
pushfd
add eax, 0x3cc30000
add eax, dword [edi]
and byte [eax], al
pop es
pop ecx
std
dec esi
add byte cs:[eax + eax + 0x6e], ch
add byte [ebx], ch
add byte [eax], al
cmp byte [eax], al
add eax, dword [eax]
add al, 0
out dx, eax
mov esi, 0x7033cc3
xor byte [esi], bh
mov dword [edx], ecx
adc al, 0
and al, byte [eax]
pop es
pop ecx
std
dec esi
add byte cs:[eax + eax + 0x6e], ch
add byte [ebx], ch
add byte [eax], al
inc eax
jae 0x1001e122
insb byte es:[edi], dx
insb byte es:[edi], dx
xor esi, dword [edx]
insb byte es:[edi], dx
insb byte es:[edi], dx
sub al, 0x2d
xor dh, byte [edx]
xor byte [ecx], dh
cmp byte [eax], al
sbb al, 0
pop edx
add byte [eax], al
add byte [ebx], cl
add bh, ch
mov esi, 0
add byte [eax], al
add byte [eax], al
and eax, 0x79005300
add byte [ebx], dh
je 0x1001e0e7
add byte gs:[ebp], ch
push edx
add byte [edi], ch
outsd dx, dword [esi]
add byte [eax + eax + 0x25], dh
add byte [eax + eax + 0x73], bl
add byte [ecx], bh
jae 0x1001e0fd
je 0x1001e0ff
add byte gs:[ebp], ch
xor eax, dword [eax]
xor al, byte [eax]
pop esp
add byte [esi], ch
je 0x1001e10d
bound eax, qword [eax]
popal
add byte [ebx], ah
imul eax, dword [eax], 0x75
add byte [eax], dh
jo 0x1001e119
add byte cs:[ebp], ah
js 0x1001e11f
add byte gs:[eax], al
add byte [eax], al
add byte [eax + eax], bl
add byte [eax], al
add dword [eax - 0x4a000000], edi
add byte [esi], dh
add byte [ebp + eax + 0x3cc30000], bl
in al, 6
and byte [eax], al
sar dword [eax - 0x28], 0x76
add eax, 0x2e74066e
js 0x1001e117
jbe 0x1001e146
outsb dx, byte [esi]
push es
je 0x1001e173
add byte [eax + eax + 0x6e], ch
add byte [ebx], ch
add byte [eax], al
cmp al, 0
insb byte es:[edi], dx
add byte [esi], ch
imul eax, dword [eax], 0
add byte [eax + eax], bh
add eax, dword [eax]
add al, 0
out dx, eax
mov esi, 0x6e43cc3
xor byte [esi], bh
mov dword [edx], ecx
adc al, 0
add cl, al
js 0x1001e13d
jbe 0x1001e16c
outsb dx, byte [esi]
push es
je 0x1001e199
add byte [eax + eax + 0x6e], ch
add byte [ebx], ch
add byte [eax], al
inc eax
jae 0x1001e1df
insb byte es:[edi], dx
add byte [esi], ch
imul eax, dword [eax], 0
add byte [eax + 0x73], al
push 0x336c6c65
xor ch, byte [esi]
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
xor esi, dword [edx]
insb byte es:[edi], dx
insb byte es:[edi], dx
sub al, 0x2d
xor dh, byte [edx]
xor byte [edx], dh
add byte ss:[eax], ah
add byte [edx], bl
add byte [eax], al
or eax, dword [eax]
out dx, eax
mov esi, 0
add byte [eax], al
add byte [eax], al
and eax, 0x79005300
add byte [0x79005300], ah
add byte [ebx], dh
je 0x1001e1a4
add byte gs:[ebp], ch
push edx
add byte [edi], ch
outsd dx, dword [esi]
add byte [eax + eax + 0x25], dh
add byte [eax + eax + 0x73], bl
add byte [ecx], bh
jae 0x1001e1ba
je 0x1001e1bc
add byte gs:[ebp], ch
xor eax, dword [eax]
xor al, byte [eax]
pop esp
add byte [ebx], ah
insb byte es:[edi], dx
add byte [ebp], ah
popal
add byte [esi], ch
insd dword es:[edi], dx
add byte [edi], ah
jb 0x1001e1d6
add byte cs:[ebp], ah
js 0x1001e1dc
add byte gs:[eax], al
add byte [eax], al
add byte [eax], ah
add byte [eax], al
add byte [ecx], al
mov edx, 0xb8000000
add byte [esi], dh
add ah, al
add eax, 0x3cc30000
jecxz 0x1001e1fd
and byte [eax], al
sar dword [eax - 0x28], 0x76
invalid