Function at 0xdcec50
Capabilities:
Encode data using xor

Disassembly:
push ss
adc dword [ebx], esp
cmp ecx, dword [edx + 0x353a6c46]
invalid
jmp 0xdcec5a
pushal
call 0xdcec60
pop ebp
sub ebp, 0x10
sub ebp, 0x9cec50
jmp 0xdcec76
push cs
add ebx, dword [ecx + 0x2d]
mov eax, 0x9cec50
add eax, ebp
add eax, 0x4c
mov ecx, 0x5b7
dec esp
add byte [eax], al
add byte [ecx + 0x5b7], bh
mov edx, 0xff1f287c
xor byte [eax], dl
inc eax
dec ecx
jne 0xdcec8d
jmp 0xdceca0
div dword [ecx + 0x7c40f5f7]
jl 0xdced24
std
mov ebp, 0x7c7c7c84
jg 0xdcec61
les edi, [eax + 0x7c]
jl 0xdced31
invalid
jl 0xdcec46
sahf
jg 0xdcec72
idiv ebp
jo 0xdced3e
jl 0xdced40
jg 0xdcec7f
sub al, 0x2c
adc al, 0xbc
inc esp
pop ebp
jl 0xdcece2
in al, dx
iretd
jl 0xdced60
sub ecx, esi
adc byte [eax + 0x7c], bl
idiv ecx
je 0xdced69
jl 0xdced6b
imul ecx
jo 0xdced6f
jl 0xdced71
div ecx
insb byte es:[edi], dx
jl 0xdced76
jl 0xdcecb9
xchg ebp, eax
jle 0xdced4c
jle 0xdced00
invalid
mov esi, 0xf9733578
mov byte [ebx + 0x50f78383], al
pop eax
int1
sbb byte [eax + 0x78], bl
mov esi, 0xf0f77c70
pop eax
js 0xdced95
jl 0xdced97
adc al, 0xbc
inc esp
pop ebp
jl 0xdced35
in al, dx
iretd
jl 0xdceda3
push eax
pop eax
int1
sbb byte [eax - 0x80], bl
cmc
jo 0xdced87
xor ch, 0x70
pop eax
xchg esp, eax
jns 0xdcedae
jl 0xdcedaf
jl 0xdcedb0
jl 0xdcecca
xchg ebp, eax
xor dword [esi + 0x7c], edi
jl 0xdced2b
sbb byte [eax - 0x80], bl
cmc
push eax
pop eax
int1
adc byte [eax + 0x7c], bl
or dword [ecx], 0x70
or dword [ecx], 0x74
xchg esp, eax
add al, 0x7c
jl 0xdcedcb
jl 0xdcedca
jl 0xdced47
test ecx, 0x7c7c7c74
sal dword [esp + edi*2 + 0x7c], 0x7c
std
lea edi, [esi - 0x23f7a4a]
lea edi, [esi + 0x4fc085b6]
mov ch, 0x4f
ror byte [edi - 0x4b], 0x4f
dec edi
scasb al, byte es:[edi]
call dword [ecx + edi*2 + 0x32f87334]
jl 0xdcedea
jae 0xdced63
xor bh, byte [esp + edi*2 + 0x7c]
jl 0xdcede3
jae 0xdced65
hlt
xor al, 0x7c
jl 0xdcedf1
sbb dh, bh
pushal
inc ebp
mul dword [eax + 0x45]
cld
xchg dword [ebx + esi*2 + 0x7c7c66f8], edx
jl 0xdcedfd
jl 0xdced7f
xchg dword [ebp + 0x7c6df873], edx
jl 0xdcee07
insd dword es:[edi], dx
jl 0xdcee06
jl 0xdceda6
sbb bh, ch
std
xchg dword [ebx + 0x69f87359], eax
jl 0xdcee11
jl 0xdcedd4
xchg ebp, eax
mov al, 0x83
add dword [ebx + 0x7d453055], 0xffffffff
adc dword [ebp + 0x30], 0x45
jge 0xdceda0
invalid
mov ebp, 0x7894ff79
call dword [eax + edi*2 - 0x7c7c3e6b]
adc dword [ebp + 0x28], 0x45
xchg ebp, eax
rol dword [ebx + 0x28558383], 0x45
jle 0xdcedaf
invalid
mov ebp, 0x7896ff7a
call dword [ecx + edi*2 - 0x7c7c286b]
xor edi, 0x50
pop eax
int1
sbb byte [eax + 0x78], bl
mov esi, 0xf7297c70
nop
sub ch, byte [ebx]
sub edi, esi
or dword [eax - 9], esi
add dword [eax + eax*4 - 0x32], esi
sub ebp, dword [ecx]
test dword [ecx], 0x7401f770
or dh, 0xfc
into
cld
idiv byte [edx - 3]
mov edx, 0x7c7c7c7d
hlt
jl 0xdcee61
jl 0xdcedae
jle 0xdcee65
jl 0xdcee66
jl 0xdcee67
jl 0xdcee6a
jle 0xdced9b
scasb al, byte es:[edi]
jae 0xdcede8
jns 0xdcee6d
jl 0xdcee6f
imul byte [edx + 0x3a]
outsb dx, byte [esi]
scasb al, byte es:[edi]
jae 0xdcedf9
jmp dword [ebx + eax*4 - 0x51817c7d]
movsb byte es:[edi], byte [esi]
add dword [ebx + 0x73ae7e83], 0xfffffff9
cmp dword [esi - 0x52], 0x73
stc
jns 0xdcee80
jl 0xdcee82
imul byte [edx + 0x3a]
push 0x3a
outsb dx, byte [esi]
scasb al, byte es:[edi]
jae 0xdcee0c
call dword [esi]
push ss
jl 0xdcee8c
jl 0xdcee61
dec edi
mov esp, 0xf973ae7e
jns 0xdcee95
jl 0xdcee97
imul byte [edx + 0x3a]
outsb dx, byte [esi]
scasb al, byte es:[edi]
jae 0xdcee21
call dword [esi + 0x7d]
jl 0xdceea2
push esi
jge 0xdceea1
jl 0xdceea5
jle 0xdcedd6
scasb al, byte es:[edi]
jae 0xdcee23
jns 0xdceea8
jl 0xdceeaa
imul byte [edx + 0x3a]
outsb dx, byte [esi]
scasb al, byte es:[edi]
cmp ch, byte [esi - 0x52]
outsd dx, dword [esi]
mov esp, 0xf973ae7e
jns 0xdceeb7
jl 0xdceeb9
imul byte [edx + 0x3a]
outsb dx, byte [esi]
scasb al, byte es:[edi]
outsd dx, dword [esi]
mov esp, 0xf973ae7e
jns 0xdceec6
jl 0xdceec8
imul byte [edx + 0x3a]
outsb dx, byte [esi]
scasb al, byte es:[edi]
outsd dx, dword [esi]
mov esp, 0xf973ae7e
jns 0xdceed5
jl 0xdceed7
imul byte [edx + 0x3a]
outsb dx, byte [esi]
scasb al, byte es:[edi]
outsd dx, dword [esi]
mov esp, 0x7c7af873
clc
jp 0xdceee2
jl 0xdceee3
jl 0xdceee4
jl 0xdcee60
mul dword [ebx + 0x7ff6a457]
mov dword [0x7ff6a457], eax
push edi
movsb byte es:[edi], byte [esi]
idiv byte [edi - 0xc]
jg 0xdcee63
hlt
jnp 0xdceeac
invalid
jl 0xdcee0c
or al, 0x83
add dword [ebx + 0x7c7c7dc4], 0x7c
jl 0xdceefb
jl 0xdceeff
jle 0xdcee30
scasb al, byte es:[edi]
jae 0xdcee7d
jns 0xdcef02
jl 0xdcef04
imul byte [edx + 0x3a]
outsb dx, byte [esi]
scasb al, byte es:[edi]
outsd dx, dword [esi]
mov esp, 0xf973ae7e
jns 0xdcef11
jl 0xdcef13
imul byte [edx + 0x3a]
outsb dx, byte [esi]
scasb al, byte es:[edi]
jae 0xdcee9c
mov byte [0x57838383], al
adc dword [edi - 0x41], 0xffffffc7
push edi
mov edi, 0x7c7c7dc7
invalid
jge 0xdcef23
jl 0xdcef25
jl 0xdcef1d
jae 0xdceea4
stc
dec eax
jl 0xdcef2a
jl 0xdcee75
jge 0xdcef2e
jl 0xdcef2f
jl 0xdcef30
jl 0xdcef33
jle 0xdcee64
scasb al, byte es:[edi]
jae 0xdceeb1
stc
jns 0xdcef36
jl 0xdcef37
jl 0xdcef38
jl 0xdceeb3
imul byte [edx + 0x3a]
push 0x3a
outsb dx, byte [esi]
scasb al, byte es:[edi]
outsd dx, dword [esi]
mov ch, 0x7e
scasb al, byte es:[edi]
jae 0xdceec0
stc
jns 0xdcef45
jl 0xdcef46
jl 0xdcef47
jl 0xdceec2
imul byte [edx + 0x3a]
push 0x3a
outsb dx, byte [esi]
scasb al, byte es:[edi]
jae 0xdceed0
mov byte [0x2a838383], al
sub dword [edx], 0xfffffff7
mov edx, dword [edi - 0x77]
invalid
test dword [ebx - 0x277076a9], 0x83749522
xchg ebp, eax
je 0xdcee64
add dword [ebx + 0x749cbd34], 0xfffffff6
xor dword [edi*4 + 0x7af6749c], 0x3a
xor al, 0xbd
pushfd
je 0xdceede
mov ebp, 0x7af6749c
cmp dh, bh
xchg esp, eax
lds edi, [ebp + 0x7c]
jl 0xdcef6d
jp 0xdcef24
not dword [ebp + eax*8 + 0x7c7c7c7d]
jl 0xdcef6c
jl 0xdcef70
jle 0xdceea1
scasb al, byte es:[edi]
jae 0xdceeee
jns 0xdcef73
jl 0xdcef75
imul byte [edx + 0x3a]
outsb dx, byte [esi]
cmp ch, byte [esi - 0x52]
scasb al, byte es:[edi]
outsd dx, dword [esi]
mov ch, 0x7e
scasb al, byte es:[edi]
jae 0xdceefd
jns 0xdcef82
jl 0xdcef84
imul byte [edx + 0x3a]
push 0x3a
outsb dx, byte [esi]
scasb al, byte es:[edi]
jae 0xdcef0d
mov byte [0xfd838383], al
add dword [ebx + 0x17c84fd], 0x7c
std
test byte [ecx + eax + 0x7c], bh
jl 0xdcef95
jl 0xdcef17
std
movsd dword es:[edi], dword [esi]
add dword [ebx - 0x7b027c7d], 0x7c
jns 0xdcefa0
add dword [ebx + 0x797c84fd], 0x7c
jl 0xdcefa1
jl 0xdcef23
std
movsd dword es:[edi], dword [esi]
add dword [ebx - 0x7b027c7d], 0xfffffffc
cmp ebp, 0xffffff84
cld
jl 0xdcefac
jl 0xdcefad
jl 0xdcef2f
std
lodsd eax, dword [esi]
jl 0xdcefb1
jl 0xdcefb3
jl 0xdcef35
std
test ah, bh
jl 0xdcefb8
jl 0xdcefb9
jl 0xdcef3b
std
lodsd eax, dword [esi]
jl 0xdcefbd
jl 0xdcefbf
sub dh, bh
mov edx, dword [edi - 0x74]
invalid
push edi
mov word [edi - 0x186add28], cs
add byte [ebx + 0x3a7af683], 0x4f
jp 0xdcef8d
dec edi
mov ch, 0xbc
xchg esp, eax
jge 0xdcefcc
clc
jl 0xdcefd9
jl 0xdcefda
jl 0xdcef5c
std
lodsd eax, dword [esi]
jle 0xdcefde
jl 0xdcefe0
not dword [edx + ebp - 0x73a87409]
invalid
mov word [edi + 0x7dc722d8], cs
fsub dword [edx]
invalid
and al, bh
jge 0xdcefed
jl 0xdcefee
jl 0xdcefef
jl 0xdcef09
xchg ebp, eax
jb 0x57fe72fd
add byte [ebx + 0x1572183], 0x74
idiv dword [ebx - 0x6608dddd]
add dword [edi + esi*8 - 0x45], esi
and esp, dword [edx]
neg dword [ecx + 0x7c74be21]
and dword [esi + 0x22237c74], edi
mov esi, 0x22237c74
je 0xdcf002
and esp, dword [edx]
xchg ebp, eax
js 0xdcf007
jl 0xdcf009
shr ecx, cl
dec esp
rol esp, cl
sub al, 0x90
loopne 0xdcf012
jl 0xdcf016
jg 0xdcef51
mov ecx, 0x7f1bbcfd
jl 0xdcf01a
std
mov esp, 0x7c7c7f1b
invalid
jle 0xdcf01e
jl 0xdcf01f
jl 0xdcef6a
invalid
dec ecx
fsubrp st(6)
cmc
dec esp
insb byte es:[edi], dx
cmp al, 0x35
jae 0xdcefa7
stc
mov al, byte [ebx + 0x78958383]
jl 0xdcf032
adc dword [ebp + 0x7c7c7c78], 0x39
js 0xdcf031
jl 0xdcf033
jl 0xdceff1
cmp ebp, esp
in eax, 0xe8
out dx, eax
into
mov bh, 0xc2
call 0xc394bead
ret 0x7537
aaa
jne 0xdcef83
cmc
jle 0xdcefad
dec ecx
dec ecx
dec ecx
dec edx
mov bh, 0xc2
xchg edi, eax
ret 0x750f
pcmpeqw mm0, mm2
int 0x79
jge 0xdcf01c
dec ecx
dec ecx
bound edx, qword [ecx - 0x31b6e13e]
dec ecx
into
mov al, 0xc2
xor byte [ebp - 0x32], cl
dec ebp
into
mov al, 0xc8
mov bl, 0x49
dec ecx
dec ecx
dec ecx
inc esi
int 0xf
dec ecx
dec ecx
dec ecx
dec edx
lahf
enter 0x418e, 0x49
inc ecx
dec ecx
dec ecx
dec ecx
enter 0x41a0, 0x49
dec ecx
dec ecx
enter 0x49b0, 0x49
dec ecx
dec ecx
inc esi
int 0x99
mov dh, 0xb6
mov dh, 0x2f
das
ret 0x884e
dec esi
mov byte [ecx + 0x46a9ca45], ah
enter 0x4ab1, 0x49
dec edx
dec ecx
dec ecx
dec ecx
inc esi
int3
dec ecx
dec ecx
das
ret 0xc84e
dec esi
enter 0xffffffffffffb6a9, 0x46
dec ecx
dec ecx
dec edx
mov ecx, dword [eax + 0x51]
add byte [eax], al
retf 0x4b8e
mov dh, 0xb6
mov dh, 0xa0
dec ebp
dec ecx
dec ecx
dec ecx
mov al, byte [0x4949494d]
in eax, dx
or byte [ebx - 0x5ae60e23], al
aad 0x49
dec edx
mov eax, cs
mov dword [ebx + 0x4d], ebx
dec ecx
dec ecx
invalid