Function at 0x8dddf4
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x8dddfa
pop ebp
sub ebp, 6
sub ebp, 0x4dddf4
jmp 0x8dde58
mov esi, 0x22de486e
mov ebp, 0x77e2a302
mov byte [esi - 0x10], bh
shl dword [edi - 0x17], 1
add al, 0
add byte [eax], al
push 0xffffffffffffffd4
and al, 0xf3
jmp 0x8dde61
jmp 0x8dde61
mov eax, 0x4dddf4
add eax, ebp
add eax, 0x93
mov ecx, 0x62c
mov edx, 0xf208fa78
add byte [edx - 0xdf70588], bh
xor byte [eax], dl
inc eax
dec ecx
jne 0x8dde78
jmp 0x8dde8b
add byte [eax], al
outsd dx, dword [esi]
sub ch, bh
rcl byte [edx], 0x38
adc bh, byte [eax]
adc byte [eax + 0x68], bh
js 0x8ddf0a
js 0x8ddea3
adc byte [eax - 0x4c], bh
js 0x8dde49
push esp
js 0x8dde91
mov byte [ebp - 0x63a56af], bl
mov byte [ebp + 0x4bc5a951], bl
dec ebx
mov eax, 0x44ed8728
pop ecx
cmp al, 0x78
sub bl, dh
mov ch, 0xf3
int1
int1
inc esp
js 0x8ddf2c
js 0x8ddeaf
mov ecx, 0x78787880
jnp 0x8dde72
sar byte [esi + 0x78], 0x78
js 0x8dde85
push eax
js 0x8ddf3e
js 0x8dde57
invalid
lcall 0x7874, 0xf9f3b07b
js 0x8ddf49
jnp 0x8dde90
sub byte [eax], dl
xchg edi, eax
dec ebx
jno 0x8ddf51
adc byte [edx + edx*8 + 0x3c], bh
js 0x8ddf58
push esp
pop esp
adc byte [eax + 0x78], bh
js 0x8ddf5e
nop
jge 0x8ddf61
js 0x8ddf63
xchg ecx, eax
push edx
js 0x8ddf67
js 0x8ddf1e
cmc
adc al, 0x5c
js 0x8ddee9
std
jo 0x8ddf71
js 0x8ddf73
in eax, dx
je 0x8ddf77
js 0x8ddf79
cmc
push 0xb9787878
xchg ecx, eax
jp 0x8ddf54
dec ecx
jp 0x8ddf08
mov edx, 0xfd77317c
mov word [edi - 0x45da7879], es
je 0x8ddf92
hlt
js 0x8ddf98
js 0x8ddf32
xchg edi, eax
dec ebx
jno 0x8ddf9e
adc byte [edx + edx*8 + 0x3c], bh
js 0x8ddfa5
push esp
pop esp
sub dword [eax + 0x7878787d], edx
js 0x8ddfac
xchg ecx, eax
inc edi
jp 0x8ddfb0
js 0x8ddf67
sub al, 0x25
xchg dword [0x700d8774], ecx
and eax, 0x87740d87
je 0x8ddec7
or eax, 0x780a9070
js 0x8ddfbf
nop
or bh, byte [eax + 0x78]
js 0x8ddf3b
lds esi, [eax + 0x78]
lds esi, [eax + 0x78]
jo 0x8ddfc3
js 0x8ddfc4
js 0x8ddfc5
js 0x8ddf99
dec ebx
mov cl, 0xf9
mov ah, byte [ecx]
add byte [ebx + 0x218af9d3], bh
and dword [eax], eax
mov ebx, 0x218af9d3
sar ecx, cl
mov ah, byte [ecx]
add byte [ebx - 0x455b42d], bh
mov ebx, 0xfbaa4bd3
nop
jge 0x8ddf91
ja 0x8ddf5f
js 0x8ddfde
js 0x8ddfdf
ja 0x8ddf59
lock xor byte [eax + 0x78], bh
xor byte [eax + 0x78], bh
js 0x8ddf8c
inc ecx
clc
adc dword [eax + 0x7862fc77], 0x78
nop
ja 0x8ddf72
bound edi, qword [eax + 0x78]
js 0x8ddff1
js 0x8ddf73
adc dword [ecx + 0x7869fc77], 0x78
js 0x8ddfa2
stc
add dword [edi + 0x6dfc775d], 0x78
js 0x8de006
cmp dword [ecx - 0x7878784c], edx
xchg dword [edi + 0x41345187], eax
xchg dword [edi + 0x79413451], eax
push ecx
xor al, 0x41
jns 0x8ddf94
sti
mov ecx, 0x7c90fb7d
xchg ecx, eax
lds eax, [edi + 0x2c518787]
xchg dword [ecx + 0x2c], edx
push ecx
sub al, 0x41
inc ecx
jp 0x8ddfa3
mov ecx, 0x7c92fb7e
sti
jle 0x8ddfa6
xchg edx, eax
jl 0x8ddfa9
nop
jge 0x8ddf42
xchg ecx, eax
rol dword [edi - 0x45da7879], cl
je 0x8de031
sub eax, 0x2f2e94f3
sub eax, 0xf3740df3
or eax, 0x7005f374
add eax, 0xf8ca8470
jo 0x8ddf4a
test dl, cl
clc
retf 0xf2f8
bnd jle 0x8ddfc4
mov esi, 0x78787879
invalid
stosb byte es:[edi], al
ja 0x8ddfde
jge 0x8de05b
js 0x8de05d
repne outsb dx, byte [esi]
push 0xffffffffffffffaa
ja 0x8ddfe7
mov al, byte [0x7a878787]
stosb byte es:[edi], al
ja 0x8ddff1
jge 0x8de06e
js 0x8de070
repne outsb dx, byte [esi]
push 0xffffffffffffffaa
ja 0x8ddffa
adc bh, byte [eax + 0x78]
js 0x8de04f
mov eax, 0xfd77aa7a
stosb byte es:[edi], al
ja 0x8de006
jge 0x8de083
js 0x8de085
repne outsb dx, byte [esi]
push 0xffffffffffffffaa
ja 0x8de00f
push edx
jns 0x8de08f
js 0x8de093
stosb byte es:[edi], al
ja 0x8de019
jge 0x8de096
js 0x8de098
repne outsb dx, byte [esi]
push 0xffffffffffffffaa
imul edi, dword [eax - 0x2885586], 0x7d
js 0x8de0a6
js 0x8de022
outsb dx, byte [esi]
push 0xffffffffffffffaa
imul edi, dword [eax - 0x2885586], 0x7d
js 0x8de0b5
js 0x8de031
outsb dx, byte [esi]
push 0xffffffffffffffaa
imul edi, dword [eax - 0x2885586], 0x7d
js 0x8de0c4
js 0x8de040
outsb dx, byte [esi]
push 0xffffffffffffffaa
imul edi, dword [eax + 0x787efc77], 0x78
js 0x8de04e
cmpsd dword [esi], dword es:[edi]
push ebx
mov al, byte [0x7ff07bf2]
aas
jg 0x8de0a2
ret
jns 0x8de0e8
js 0x8de0ea
jp 0x8de01e
stosb byte es:[edi], al
ja 0x8de073
jge 0x8de0f0
js 0x8de0f2
repne outsb dx, byte [esi]
push 0xffffffffffffffaa
imul edi, dword [eax - 0x2885586], 0x7d
js 0x8de100
stosb byte es:[edi], al
ja 0x8de082
jge 0x8de0ff
js 0x8de101
js 0x8de07c
repne outsb dx, byte [esi]
outsb dx, byte [esi]
push 0xffffffffffffffaa
ja 0x8de08a
cli
cmpsb byte [esi], byte es:[edi]
xchg dword [edi - 0x3c44ac79], eax
jns 0x8de111
xchg dword [ebx - 0x45], edx
ret
js 0x8de112
js 0x8de113
js 0x8de113
ja 0x8de09a
std
dec esp
js 0x8de118
js 0x8de063
jns 0x8de11c
js 0x8de11e
jp 0x8de052
stosb byte es:[edi], al
ja 0x8de0a7
jge 0x8de124
js 0x8de126
repne outsb dx, byte [esi]
push 0xffffffffffffffaa
imul esi, dword [ecx - 0x2885586], 0x7d
js 0x8de134
jp 0x8de061
stosb byte es:[edi], al
ja 0x8de0b6
jge 0x8de133
js 0x8de135
js 0x8de0b0
repne outsb dx, byte [esi]
outsb dx, byte [esi]
push 0xffffffffffffffaa
ja 0x8de0be
cmpsb byte [esi], byte es:[edi]
xchg dword [edi - 0x700cd179], eax
push ebx
lea ecx, [ebx + 0x709126dc]
xchg dword [edi - 0x6746cf79], eax
jo 0x8de0cc
jle 0x8de11a
pause
sar dword [ecx + 0x78], 0x78
js 0x8de15e
stosb byte es:[edi], al
ja 0x8de0e4
jge 0x8de161
js 0x8de162
js 0x8de163
js 0x8de0de
repne outsb dx, byte [esi]
outsb dx, byte [esi]
push 0xffffffffffffffaa
imul esi, dword [ecx - 0x2885586], 0x7d
jp 0x8de09e
stosb byte es:[edi], al
ja 0x8de0f3
jge 0x8de170
js 0x8de171
js 0x8de172
js 0x8de0ed
repne outsb dx, byte [esi]
outsb dx, byte [esi]
push 0xffffffffffffffaa
ja 0x8de0fb
cli
cmpsb byte [esi], byte es:[edi]
xchg dword [edi + 0x7880f987], eax
add eax, 0xa1f97878
xchg dword [edi - 0x7f067879], eax
stc
cmp byte [eax + 0x7d], 0x78
js 0x8de111
js 0x8de192
js 0x8de18f
stc
mov eax, dword [0x87878787]
xchg dword [edi - 0x77f0679], eax
js 0x8de19a
xchg ecx, edi
stc
cmp al, 0x78
js 0x8de19b
js 0x8de11d
stc
test eax, 0x78787878
stc
js 0x8de1a0
js 0x8de123
cmp al, 0x78
js 0x8de1a7
stc
test eax, 0x78787878
js 0x8de1ad
js 0x8de164
invalid
invalid
jp 0x8de1cc
js 0x8de1ce
pause
invalid
fsub qword [esi]
ret
ret
jns 0x8de1db
js 0x8de1dc
js 0x8de1dd
js 0x8de0f7
xchg ecx, eax
or eax, dword [esi + 0x53258787]
add eax, 0x27bff370
daa
popfd
popfd
and eax, 0x277870ba
xchg ecx, eax
jl 0x8de1f5
js 0x8de1f7
inc ebx
out dx, eax
add eax, 0xa58cc080
xor eax, 0xf9bd7b78
ror byte [ebp - 0x428487cb], 0xf9
mov word [ebp - 0x428487cb], fs
stc
mov eax, 0x78787bcd
sal dword [edx + 0x7b], 0x78
js 0x8de152
jb 0x8de20e
jnp 0x8de20c
js 0x8de20d
js 0x8de158
ret 0xd099
cdq
shl cl, 1
dec eax
dec eax
push 0xfd773138
mov es, word [edi + 0x7c918787]
js 0x8de220
js 0x8de221
js 0x8de15f
mov ch, 0x7d
xlatb
jge 0x8de183
scasd eax, dword es:[edi]
iretd
pop eax
jo 0x8de162
imul edi, dword [esi + eax*8], 0xffffffc7
adc al, byte [edi]
pop es
movsd dword es:[edi], dword [esi]
cdq
cdq
cdq
retf 0x2696
cdq
cdq
cdq
lcall 0x9999, 0x9962184f
cdq
xchg esi, eax
sbb eax, 0x99999982
iretd
jmp 0x8de184
imul edi, dword [0x5b18c7c6], 0xffffffb1
cdq
mov bh, 0x18
pop ebx
mov cl, 0x99
cdq
cdq
sal byte [eax + 0x40], cl
int1
cdq
fstp dword [ecx + 0x5599f199]
int1
cdq
push ebp
mov ch, 0x99
iretd
cmp dword [ecx + 0x679a9999], ebx
adc al, byte [edi + 0x18]
cdq
cdq
cdq
lcall 0x9972, 0x18471267
jb 0x8de1c4
cdq
fstp dword [ecx - 0x1ced9ce2]
cdq
push ds
arpl word [edx], dx
salc
popfd
sbb byte [ebx - 0x67], ah
cdq
cdq
cdq
xchg esi, eax
sbb eax, 0x999999df
lcall 0x9999, 0x915e184f
cdq
sbb byte [eax - 0x6f], dh
cdq
cdq
cdq
sbb byte [eax - 0x67], ah
pushal
cdq
cdq
cdq
cdq
xchg esi, eax
sbb eax, 0x66666649
call dword [edx]
sahf
pop eax
jno 0x8de1f9
sbb bh, byte [ecx - 0x6a]
jns 0x8de1fd
sbb byte [ecx - 0x66], ah
cdq
cdq
cdq
xchg esi, eax
sbb al, 0x94
cdq
cdq
cdq
call dword [edx]
sahf
sbb byte [ecx + 0x66], bh
xchg esi, eax
cdq
cdq
lcall 0x1ad0, 0xd081985b
pop esi
wait
jo 0x8de2d8
jo 0x8de229
jo 0x8de229
cdq
cdq
cdq
mov ecx, 0x21191502
insd dword es:[edi], dx
inc esp
aam 0x99
lcall 0x999d, 0x5c59185c
cdq
and byte [ebx - 0x68], ah
cdq
cdq
and esp, dword [edi - 0x567063b5]
mov ecx, ebx
rcl byte [esi + 0x66666f1c]
jo 0x8de253
cdq
cdq
cdq
add ch, byte [ebx - 0x6426d3bc]
sub al, 0x1b
nop
daa
fstp dword [ebx + 0x27901b2c]
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
movsb byte es:[edi], byte [esi]
pop ecx
and al, 0xd8
stosd dword es:[edi], eax
cmpsd dword [esi], dword es:[edi]
test al, 0x23
aas
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
xor byte [edi + ebx*8], ch
stosd dword es:[edi], eax
xor byte [ecx - 0x1ccda709], ah
xchg bl, ah
cmpsd dword [esi], dword es:[edi]
movsb byte es:[edi], byte [esi]
popal
neg dword [eax + 0x32]
jecxz 0x8de265
jecxz 0x8de288
pop edi
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
test al, 0x22
test eax, 0x30a7a7a7
sub al, 0xdf
stosd dword es:[edi], eax
xor byte [ecx - 0x8cda709], ah
xchg bl, ah
cmpsd dword [esi], dword es:[edi]
and al, 0xd8
stosd dword es:[edi], eax
cmpsd dword [esi], dword es:[edi]
test al, 0x23
shl dword [edi - 0x27db5859], 0xa7
cmpsd dword [esi], dword es:[edi]
test al, 0x22
lodsd eax, dword [esi]
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
and al, 0xd8
mov bh, 0xa7
test al, 0x23
loope 0x8de2be
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
sub dh, dl
cmpsd dword [esi], dword es:[edi]
sub al, 0xc8
mov bh, 0xa4
dec ecx
and al, 0xda
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
test al, 0x23
xchg esp, eax
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
sub al, 0xea
cmpsd dword [esi], dword es:[edi]
div ebp
lodsb al, byte [esi]
outsb dx, byte [esi]
test al, 0x2e
mov eax, dword [0xf6a7a7a7]
dec esi
scasb al, byte es:[edi]
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
cmpsd dword [esi], dword es:[edi]
movsb byte es:[edi], byte [esi]
imul esp, dword [esi], 0xa7a7a566
cmpsd dword [esi], dword es:[edi]
div bh
pop eax
xor eax, 0xa7e386ef
std
loop 0x8de2fa
jmp dword [esi]