Function at 0x40cd0e
Capabilities:
Encode data using xor

Disassembly:
push ebp
add al, 7
adc ecx, dword [eax]
push ebx
popal
outsb dx, byte [esi]
and byte [edx + 0x6f], cl
jae 0x40cd80
xor dword [eax + esi], esp
and al, byte [esi]
add edx, dword [ebp + 4]
or dl, byte [ebx + ebx]
inc ecx
outsd dx, dword fs:[esi]
bound esp, qword [ebp + 0x20]
push ebx
jns 0x40cda2
je 0x40cd96
insd dword es:[edi], dx
jae 0x40cd60
and byte [ecx + 0x6e], cl
arpl word [edi + 0x72], bp
jo 0x40cdab
jb 0x40cd9f
je 0x40cda5
xor dword fs:[esi], edi
xor byte [esi + eax], bh
add edx, dword [ebp + 4]
or edx, dword [ebx]
xor eax, 0x69676944
je 0x40cdb3
insb byte es:[edi], dx
and byte [ecx + 0x44], cl
and byte [ebx + 0x6c], al
popal
jae 0x40cdcf
and byte [ebx], dh
and byte [0x63694d20], ch
jb 0x40cdd5
and byte [ebp + 0x69], cl
arpl word [edx + 0x6f], si
jae 0x40cdd7
je 0x40cd8b
push ebx
outsd dx, dword [esi]
je 0x40cde7
popal
jb 0x40cdd8
and byte [esi + 0x61], dl
insb byte es:[edi], dx
imul esp, dword [ecx + 0x74], 0x206e6f69
jbe 0x40cdb3
xor dh, byte [ecx]
sbb al, 0x30
xor dword [eax + esi], ebx
sbb al, byte [esi]
push es
add edx, dword [ebp + 4]
or edx, dword [ebx + edx]
inc ecx
arpl word [edx + 0x6f], si
adc eax, dword [ecx + 0x63]
jb 0x40cdff
bound esp, qword [ecx + 0x74]
and byte [ebp + 0x6e], al
imul ebp, dword [bp + 0x65], 0x6e697265
xor dword [si], esp
xor byte [edx], ah
push es
xor dword [eax + esi], esp
and al, byte [esi]
add edx, dword [ebp + 4]
add edx, dword [ebx + ebx]
push ebp
add al, 3
adc al, 0x1b
inc ecx
outsd dx, dword fs:[esi]
bound esp, qword [ebp + 0x20]
push ebx
jns 0x40ce26
je 0x40ce1a
insd dword es:[edi], dx
jae 0x40cde4
and byte [ecx + 0x6e], cl
arpl word [edi + 0x72], bp
jo 0x40ce2f
jb 0x40ce23
je 0x40ce29
xor byte fs:[ecx + 0x60d309f], al
or dword [edx], ebp
xchg byte [eax - 0x7a], cl
test dword [0x5010101], 0x8d810300
xchg bh, dh
or eax, 0x5010101
add byte [ebx], al
add eax, 0x8d810300
add eax, dword [ecx - 0x7ecfff73]
mov dword [edx], eax
add dword [ecx + 0x767cb00], 0x69e6590a
or dword [ebp - 0x767ed000], 0x818102
retf
add byte [eax], dh
or dword [ecx + 0x818102], 0xa0767cb
pop ecx
pop es
or bl, byte [ecx - 0x1a]
imul ebp, dword [edi], 0x489874fd
out 0x69, al
das
std
je 0x40cd85
dec eax
cdq
sbb dword [esi + 0x3dc13d95], esi
or al, 0x5b
mov ebx, 0x2ebda74e
inc eax
jb 0x40ce46
inc esi
invalid
daa
pop edi
push cs
in eax, 3
cmp ebx, edx
and ebp, dword [edi*4 + 0x15084a1b]
mov ebp, 0x15084a1b
or byte [0xf77e0139], dl
cmp dword [ecx], eax
jle 0x40ce23
add dword [esi - 9], edi
xor byte [esi - 0x7892308f], ch
lea edi, [esi - 0x2f980fe]
call 0xdf840b25
mov esi, 0x6f664f2a
pop ebx
test byte [esi + 0x7d533ef8], 0x2c
iretd
push ebx
jge 0x40ce76
insd dword es:[edi], dx
sti
fcomp st(7)
test dword [ebx + ecx - 0x253b8e19], esp
jae 0x40cea5
pop es
push ss
pop ebx
pop edx
mov ch, 0x9d
dec ebp
and al, 0x84
add dword [ebp + 2], esp
add eax, dword [ecx]
add byte [ecx], al
mov dword [0x307f0182], eax
add byte [ecx], 0x7b
xor byte [ecx], cl
push es
add edx, dword [ebp + 0x1d]
adc eax, dword [edx + eax]
add al, 2
xor byte [eax], al
xor byte [esi], cl
push es
add edx, dword [ebp + 0x1d]
sgdt [ecx]
inc dword [esp + eax]
add eax, dword [edx]
pop es
xor byte [eax], 0x40
push es
add edx, dword [ebp + 0x1d]
pop ds
add al, 0x39
xor byte [edi], dh
xor byte [0x31a033a0], dh
xchg byte [edi], ch
push 0x3a707474
das
das
inc ebx
push ebx
inc ebx
xor ebp, dword [0x34303032]
sub eax, 0x2e6c7263
jbe 0x40cf19
jb 0x40cf1f
jae 0x40cf21
outsb dx, byte [si]
arpl word cs:[edi + 0x6d], bp
das
inc ebx
push ebx
inc ebx
xor ebp, dword [0x34303032]
arpl word cs:[edx + 0x6c], si
xor byte [esi + eax + 3], al
push ebp
sbb eax, 0x303d0420
cmp esi, dword [eax]
cmp dword [esi], eax
or esp, dword [eax - 0x7a]
dec eax
add dword [esi + 0x70145f8], eax
pop ss
add esi, dword [eax]
sub dh, byte [eax]
sub byte [esi], al
or byte [ebx], ch
push es
add dword [0x1020705], eax
push ss
sbb al, 0x68
je 0x40cf6d
jo 0x40cf6e
cmp ch, byte [edi]
das
ja 0x40cf77
ja 0x40cf30
jbe 0x40cf69
jb 0x40cf6f
jae 0x40cf71
outsb dx, byte [si]
arpl word cs:[edi + 0x6d], bp
das
jb 0x40cf81
popal
xor byte [ebx], dl
push es
add edx, dword [ebp + 0x1d]
and eax, 0xa300c04
add al, 0xc
xor byte [edx], cl
push es
or byte [ebx], ch
push es
sub eax, dword [esi]
add dword [0x3030705], eax
xor byte [ebp + 6], dh
or byte [ebx], ch
push es
add dword [0x1010705], eax
pop es
add dword [ecx], eax
add al, 0x69
xor byte [edi + 0x30], ah
and al, 6
or byte [ebx], ch
push es
add dword [0x1300705], eax
xchg byte [eax], bl
push 0x3a707474
das
das
outsd dx, dword [esi]
arpl word [ebx + 0x70], si
jbe 0x40cfb8
jb 0x40cfbe
jae 0x40cfc0
outsb dx, byte [si]
arpl word cs:[edi + 0x6d], bp
xor byte [edi], bh
push es
or byte [ebx], ch
push es
add dword [0x2300705], eax
xchg byte [ebx], dh
push 0x3a707474
je 0x40cfdf
jo 0x40cfaa
cmp ch, byte [edi]
das
das
inc ebx
push ebx
inc ebx
xor ebp, dword [0x34303032]
sub eax, 0x2e616961
xor dh, byte [eax]
xor byte [ebp + 0x2e616961], dh
jbe 0x40cfe7
jb 0x40cfed
jb 0x40cfed
jae 0x40cfef
outsb dx, byte [si]
arpl word cs:[edi + 0x6d], bp
das
inc ebx
push ebx
inc ebx
xor ebp, dword [0x34303032]
sub eax, 0x2e616961
arpl word [ebp + 0x72], sp
xor byte [edi], bl
push es
add edx, dword [ebp + 0x1d]
and eax, dword [eax + ebx]
xor byte [esi], dl
adc byte [eax + ecx], 0xf5
adc al, 8
cmc
push ecx
call 0x3d7eceae
jl 0x40d01f
iretd
pop ebx
js 0x40cf63
fistp qword [ecx + 0x113037c5]
aaa
xor byte [ecx], dl
adc dword [esi], eax
push es
or dword [eax - 0x7a], esp
dec eax
add dword [esi + 0x10142f8], eax
add al, 4
add eax, dword [edx]
add al, 0x10
xor byte [esi], dl
push es
or ch, byte [ebx]
push es
add dword [ecx + eax], eax
xor byte [edi], 2
add dword [ebx], ebx
add al, 8
sbb eax, dword [eax + ecx]
xor byte [esi], al
add dword [ecx], eax
add byte [ecx], al
add edi, edi
xor byte [0x862a0906], cl
add dword [ecx], eax
push dword [eax]
or eax, 0x862a0906
or dword [edx], ebp
xchg byte [eax - 0x7a], cl
test dword [0x5050101], 0x1820300
add dword [eax], eax
mov cl, 0x26
dec eax
xchg bh, dh
or eax, 0x5050101
add byte [ebx], al
add byte [ecx], 1
add byte [ecx + esi*4 + 0x26], ah
invalid
mov ebx, 0xcabf7c24
cli
pop edx
invalid