Function at 0x8de110
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x8de116
pop ebp
sub ebp, 6
sub ebp, 0x4de110
jmp 0x8de174
push ecx
mov esi, 0x22de486e
mov ebp, 0x77e2a302
mov byte [esi - 0x10], bh
shl dword [edi - 0x17], 1
add al, 0
add byte [eax], al
inc ecx
aad 0x6d
sar byte [eax + 0x4de110], 1
mov dword [0x7e8877e2], eax
invalid
jmp 0x8de17d
mov eax, 0x4de110
add eax, ebp
add eax, 0x93
mov ecx, 0x646
mov edx, 0x571ea777
push edi
xor byte [eax], dl
inc eax
dec ecx
jne 0x8de194
jmp 0x8de1a7
add byte [eax], al
cmp eax, 0x1d195c45
aaa
pop ds
sbb dword [0x67771f37], ebx
sbb eax, 0x67771f37
ja 0x8de213
ja 0x8de225
pop ds
ja 0x8de16c
pop ebx
ja 0x8de1aa
xchg dword [eax - 0x3b], ecx
lea edi, [esi + esi*8 - 0x723ab779]
mov esp, 0x8827b744
loop 0x8de210
push esi
xor esi, dword [edi + 0x27]
cld
mov edx, 0x774bfefc
ja 0x8de248
div byte [esi + 0x7777778f]
je 0x8de193
mov edx, 0x777771cf
ja 0x8de1ac
iretd
pop edi
ja 0x8de259
ja 0x8de164
xchg ebp, eax
je 0x8de1a6
cld
idiv byte [ebx + 0x77]
ja 0x8de264
je 0x8de1a1
daa
pop ds
mov edx, 0x1f777e42
fdiv qword ss:[ebx]
ja 0x8de271
pop ebx
push ebx
pop ds
ja 0x8de277
ja 0x8de279
lahf
jb 0x8de27c
ja 0x8de27e
sahf
pop edi
ja 0x8de282
ja 0x8de22f
and ebp, dword [edx]
cld
bnd jg 0x8de28a
ja 0x8de28c
cld
loop 0x8de293
ja 0x8de291
ja 0x8de218
cld
cli
ja 0x8de297
ja 0x8de297
ja 0x8de1d8
sahf
jne 0x8de26b
jne 0x8de21b
mov ch, 0x73
js 0x8de21e
or dword [eax - 0x4ad57778], 0x7b
mov byte [edx], ch
mov ch, 0x7b
ja 0x8de231
sti
push ebx
jae 0x8de2b0
ja 0x8de2b2
pop ds
mov edx, 0x1f777e42
fdiv qword ss:[ebx]
ja 0x8de2bc
pop ebx
push ebx
lahf
jb 0x8de2c3
ja 0x8de2c5
sahf
cmp al, 0x75
ja 0x8de2ca
and bh, ah
wait
mov byte [edx], al
jnp 0x8de1e2
mov byte [edx], al
jg 0x8de1fc
add bh, byte [edi - 0x61]
or dword [edi + 0x77], esi
ja 0x8de2d7
ja 0x8de25e
retf 0x777f
jg 0x8de2dc
ja 0x8de2dd
ja 0x8de2de
ja 0x8de25e
test byte [esi + 0xb225781], 0xf6
xchg byte [ecx - 0x9f4dda9], al
and cl, byte [ebx]
test byte [esi + 0xb225781], 0x44
xchg byte [ecx + 0x440b2257], al
and cl, byte [ebx]
inc esp
mov esi, 0x235385f6
test byte [ebp + 0x71852353], 0xf6
push ebx
and eax, dword [ebp + 0x5385f671]
test dword [ecx - 0xa], esi
test dword [ebx + 0x23], edx
test dword [ecx + 0x44], esi
and eax, dword [ebp - 0xb5abb8f]
lahf
jb 0x8de2c6
movsd dword es:[edi], dword [esi]
hlt
js 0x8de27c
cmp dword [edi + 0x77], esi
ja 0x8de303
ja 0x8de306
invalid
aas
ja 0x8de309
ja 0x8de30a
ja 0x8de2a5
adc esp, edi
cld
imul ecx, dword [esi - 9], 0xffffff8c
lahf
js 0x8de28f
test dword [edi + ebx*4 + 0x776df378], 0x8cf77777
sahf
js 0x8de298
mov word [edi + 0x776df378], ds
ja 0x8de317
insd dword es:[edi], dx
ja 0x8de316
ja 0x8de298
test dword [esi + ebx*4 + 0x7766f378], 0xf6117777
mov word [esi + 0x7766f378], ds
ja 0x8de320
ja 0x8de31f
ja 0x8de2bb
adc esi, esi
test byte [eax + ecx*4 + 0x62f37852], 0x77
mov word [eax + 0x62f37852], cs
ja 0x8de32a
bound esi, qword [edi + 0x77]
ja 0x8de32b
ja 0x8de2eb
sahf
sahf
mov ebx, 0x5e888888
cmp ecx, dword [esi + 0x76]
hlt
dec esi
jbe 0x8de2b3
mov dh, 0x72
hlt
lahf
jae 0x8de263
retf 0x8888
mov byte [eax + 0x4e235e88], cl
mov byte [esi + 0x23], bl
and ecx, dword [esi + 0x75]
hlt
dec esi
jne 0x8de2c2
mov dh, 0x71
hlt
jae 0x8de2c8
lahf
jb 0x8de275
fmul qword [eax - 0x4ad57778]
mov ch, 0x7b
jnp 0x8de356
ja 0x8de302
and bh, ah
cld
wait
and dword [eax], esp
and bh, ah
cld
add bh, byte [ebx - 4]
jnp 0x8de2e5
or bh, byte [edi - 0x75]
invalid
mov eax, ebp
idiv ebp
jno 0x8de2e7
mov cl, 0x76
ja 0x8de36c
ja 0x8de2f6
push dword [eax - 0xa]
jo 0x8de2ef
mov al, 0x76
ja 0x8de374
ja 0x8de2cb
jne 0x8de378
ja 0x8de37a
ja 0x8de379
jne 0x8de2aa
movsd dword es:[edi], dword [esi]
js 0x8de2f9
bnd jb 0x8de380
jb 0x8de380
ja 0x8de382
ja 0x8de309
std
popal
xor dword [ebp - 0x5b], esp
js 0x8de306
scasd eax, dword es:[edi]
mov byte [eax + 0x78a57588], cl
jne 0x8de2bd
movsd dword es:[edi], dword [esi]
js 0x8de30c
bnd jb 0x8de393
jb 0x8de393
ja 0x8de395
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword gs:[esi]
js 0x8de319
sbb eax, 0x44777777
mov bh, 0x75
movsd dword es:[edi], dword [esi]
jne 0x8de2d2
js 0x8de321
bnd jb 0x8de3a8
jb 0x8de3a8
ja 0x8de3aa
std
popal
xor dword [ebp - 0x5b], esp
js 0x8de32e
pop ebp
jbe 0x8de3b4
ja 0x8de3b4
movsd dword es:[edi], dword [esi]
js 0x8de334
jb 0x8de3bb
ja 0x8de3bc
ja 0x8de3bd
ja 0x8de344
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8de343
jb 0x8de3ca
ja 0x8de3cb
ja 0x8de3cc
ja 0x8de353
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8de352
jb 0x8de3d9
ja 0x8de3da
ja 0x8de3db
ja 0x8de362
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8de361
jb 0x8de3e8
ja 0x8de3ea
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x78
mov bh, 0x78
js 0x8de36f
jno 0x8de3f5
jno 0x8de3f5
ja 0x8de3f7
cld
test al, 0x5c
pop esp
scasd eax, dword es:[edi]
std
je 0x8de386
push dword [eax + 0x30]
jo 0x8de3b9
int3
sahf
pop es
mov byte [eax + 0x7776cf88], cl
iretd
ja 0x8de40e
ja 0x8de40f
ja 0x8de40e
jne 0x8de33f
movsd dword es:[edi], dword [esi]
js 0x8de38e
jb 0x8de415
ja 0x8de416
ja 0x8de417
ja 0x8de39e
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8de39d
bnd jb 0x8de424
jb 0x8de424
ja 0x8de426
std
popal
xor dword [ebp - 0x5b], esp
js 0x8de3ab
cmc
test eax, 0x5c888888
mov byte [esp + esi*4 - 0x34], bl
mov ah, 0xcc
int3
jbe 0x8de436
ja 0x8de438
js 0x8de3b5
inc ebx
inc ebx
ja 0x8de43d
ja 0x8de396
jbe 0x8de441
ja 0x8de443
ja 0x8de442
jne 0x8de373
movsd dword es:[edi], dword [esi]
js 0x8de3c2
jb 0x8de449
ja 0x8de44a
ja 0x8de44b
ja 0x8de3d2
std
popal
xor dword [ebp - 0x5b], esp
mov esi, 0xf278a575
mov esi, 0xf278a575
jne 0x8de382
js 0x8de3d1
jb 0x8de458
ja 0x8de45a
std
popal
xor dword [ebp - 0x5b], esp
js 0x8de3df
test eax, 0x21888888
cld
sbb byte [edx + eax*4 - 0x7c], 0xd3
sub dword [esi - 0x77777781], ebx
aas
mov dh, 0x97
jg 0x8de381
mov byte [eax + 0x7f97b63f], cl
xchg edi, eax
jg 0x8de3fd
std
jno 0x8de433
cld
lahf
into
jbe 0x8de47e
ja 0x8de480
jne 0x8de3b0
js 0x8de3ff
jb 0x8de486
ja 0x8de487
ja 0x8de488
ja 0x8de40f
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword [esi]
mov esi, 0xf278a575
mov esi, 0xf278a575
jb 0x8de495
ja 0x8de497
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword [esi]
js 0x8de41c
cmc
test eax, 0xf6888888
mov dh, dh
invalid
mov byte [eax - 0x70097778], cl
ja 0x8de4ad
mov dh, dh
invalid
ja 0x8de4b4
imul byte [esi - 0x77777778]
mov byte [eax + 0x77f78ff6], cl
ja 0x8de4c0
mov dh, dh
invalid
test byte [edi + 0x777777f7], 0xf6
mul byte [esi + 0x77777777]
cmpsb byte [esi], byte es:[edi]
ja 0x8de4c4
ja 0x8de4c6
test byte [edi + 0x777777f7], 0xf6
cmpsb byte [esi], byte es:[edi]
ja 0x8de4d0
ja 0x8de4d1
ja 0x8de4d2
ja 0x8de47d
and esp, edi
cld
sbb byte [edi + eax*4 - 0x7c], 0xd3
sub dword [esi - 0x77777614], ebx
std
jno 0x8de49c
inc esp
mov esi, 0x78769fb7
mov bh, 0x9f
jbe 0x8de4e9
rep insd dword es:[edi], dx
ja 0x8de4ec
ja 0x8de46d
cmpsb byte [esi], byte es:[edi]
jne 0x8de4f1
ja 0x8de4f3
cld
lahf
and esp, edi
sbb byte [edi + eax*4 - 0x7c], 0xd3
sub esp, ecx
int3
jbe 0x8de500
ja 0x8de501
ja 0x8de502
ja 0x8de42a
sahf
add al, 0x89
mov byte [eax + 0x7f0a5c2a], cl
cld
mov al, 0x28
sub esp, edi
xchg edx, eax
sub dh, byte [ebp + 0x2928777f]
jg 0x8de515
sub byte [ecx], ch
sahf
jae 0x8de51a
ja 0x8de51c
imul ecx, dword [ecx - 8], 0x9667cf99
cmp dh, byte [edi + 0x74]
ja 0x8de523
mov dl, 0xf6
mov bh, 0xc8
je 0x8de52c
ja 0x8de52d
ja 0x8de485
into
insd dword es:[edi], dx
je 0x8de531
ja 0x8de489
jnp 0x8de4d8
adc byte [edi + eax*2 + 0x783e3767], 0xf2
inc edi
aaa
js 0x8de4b8
js 0x8de4b8
or dword [eax + 0x739e8888], 0xe0777777
dec ecx
mov bh, 0x16
push ss
sub eax, 0xbb482c2c
invalid
jnp 0x8de4a5
xchg edx, eax
jns 0x8de477
fisub word [0x7b47e5f0]
jnp 0x8de572
invalid
inc edi
jnp 0x8de571
jnp 0x8de520
sub byte [esp + eax*8 + 0x27], dh
je 0x8de4be
daa
dec eax
jge 0x8de51f
cli
mov ecx, 0x7b7b7b83
cmp dword [ebx + 0x7b], 0x7b
jnp 0x8de57e
jnp 0x8de57f
jnp 0x8de57d
js 0x8de4b3
lodsd eax, dword [esi]
cli
cmp byte [ebx + 0x7b], 0x7b
jnp 0x8de581
jmp dword [eax + 0x7b]
xor dword [ebx + 0x78], ebp
add dword [edi + 0x78], esi
or dword [edi - 0x77], ebp
fbld tbyte [0x7b53b9fa]
js 0x8de525
outsd dx, dword [esi]
mov edi, ebx
and al, 0x25
cli
and eax, 0x7b53b9fa
mov ecx, 0x7b7b7b53
push ebx
jnp 0x8de5a1
jnp 0x8de5a2
jnp 0x8de558
xor byte [edx - 0x7b7b7b5e], dl
xchg edx, eax
mov byte [0x13848484], al
test byte [ebx], dl
adc edi, dword [ebx + 0x3b]
jnp 0x8de56b
jnp 0x8de5ad
jnp 0x8de546
adc edi, dword [ebx - 0x49]
jnp 0x8de4ec
push edi
jnp 0x8de565
test dh, ch
cmp ebx, dword [edx + 0x3f]
pop edx
aas
jnp 0x8de53b
test esp, edi
invalid
invalid
jnp 0x8de593
jnp 0x8de556
xor eax, 0x81fc7b01
cld
xor al, 2
jg 0x8de562
lock add bh, byte [edi - 4]
cld
cmp dl, 0x81
jnp 0x8de5e6
jnp 0x8de5e8
je 0x8de56e
invalid
cmp eax, 0x787b7b7b
jnp 0x8de5ee
jnp 0x8de5ec
js 0x8de522
lodsd eax, dword [esi]
cli
mov esp, 0x7b7b7b73
cli
xchg edx, eax
jae 0x8de5fa
jnp 0x8de5fb
jnp 0x8de5fc
jnp 0x8de57c
cli
cmp byte [ebx + 0x7b], 0x7b
jnp 0x8de5fc
push dword [edi + 0x1d848484]
invalid
test byte [0x93ba7cf0], bl
xchg ebx, eax
ja 0x8de58c
clc
wait
je 0x8de591
cmp dword [eax + 0x7b], 0x7b
jnp 0x8de611
invalid
jnp 0x8de5c0
sbb eax, 0x9bfa7cf0
test byte [ebx + edi*2 + 0x7b], dh
js 0x8de566
invalid
jp 0x8de612
xor dh, byte [edx]
clc
mov esp, 0x84b39279
test byte [edx + edx*4 + 0x7b7b7b7f], al
test byte [edx], al
jge 0x8de588
ret
jnp 0x8de663
jle 0x8de606
jbe 0x8de592
stc
mov ebp, esi
cmc
or dword [edx - 7], eax
mov ebp, esi
ret 0xfe49
jge 0x8de57c
cmp ch, 1
jb 0x8de67e
std
add dword [edx + 0x7e], esi
jno 0x8de5fc
jecxz 0x8de682
jle 0x8de684
jmp 0xe9ffed00
pop edi
cmp bh, byte [esi - 1]
xchg byte [esi + 0x7e], bh
jle 0x8de698
jle 0x8de697
jle 0x8de68c
jno 0x8de617
sti
jb 0x8de69c
jle 0x8de69e
cmc
cmp dword [edx + 0x7d], esi
mov eax, 0x2eeb812e
pop edi
cmp bh, byte [esi - 3]
std
add dword [edx + 0x7e], esi
jno 0x8de62c
adc edi, dword [esi + 0x7e]
jle 0x8de634
jle 0x8de6b4
std
add dword [esi + 0x7e], edi
jno 0x8de637
je 0x8de6bc
jle 0x8de6be
std
add dword [esi + 0x7e], ebp
jno 0x8de640
xor edi, dword [esi + 0x7e]
jle 0x8de676
cmc
stosd dword es:[edi], eax
stc
xor ebp, 3
outsb dx, byte [esi]
stc
cmp dword [ebp - 0x70], 0xfffffffd
std
add edi, dword [esi + 0x7e]
jno 0x8de656
dec ecx
jle 0x8de6dd
jle 0x8de65a
xchg edi, eax
cmc
pop ss
jle 0x8de65f
xchg edi, eax
sub al, 0x75
mov bh, 0x71
idiv dword [eax + 0x7e]
jle 0x8de6ef
das
xchg edi, eax
ja 0x8de6f3
jle 0x8de6f5
jle 0x8de6f5
jge 0x8de629
mov al, 0xff
mov edi, 0x7e7e7e7c
das
invalid
jle 0x8de6af
sub esp, 0x7e3a5f36
and al, 0xf7
cmp edi, dword [esi + 0x26]
in al, dx
pop edi
pop edi
cmp bh, byte [esi + 0x24]
idiv dword [ebx]
jle 0x8de6b2
invalid
and edi, edi
mov ecx, 0x7e7e7e6a
invalid
jle 0x8de71c
xchg edi, eax
daa
add dword [ecx - 0x7ee5d57f], 0x7e7e7e4b
jle 0x8de6c2
xchg esp, eax
cdq
xor edi, dword [esi + 0x28]
jle 0x8de6d9
sub esi, ebp
cmc
cmp byte [edx - 0xb], al
inc edx
cmc
cli
dec esi
push es
jle 0x8de739
jle 0x8de73a
jge 0x8de676
mov eax, 0x7e62beff
invalid
jle 0x8de742
cmc
jle 0x8de745
mov eax, 0x7e3ef5ee
out dx, al
jge 0x8de688
cmc
mov dh, 0x2e
adc al, 0x7e
adc al, 0x7f
sub ebp, eax
cmc
push cs
inc edx
call 0x56dce1d6
cmc
cli
dec esi
push esi
jle 0x8de761
jle 0x8de762
mov eax, 0x2a9e812f
push ss
sbb ebx, dword [esi + 0x3b]
adc byte [edi], dl
pop ss
sbb dword [ebx], edx
pop ds
pop esi
or al, 0x11
or al, 0x11
or bl, byte [ebx]
sbb eax, 0x5e0c110a
or byte [ebx], bl
or al, 0xd
pop ss
adc dword [eax], edx
pop esi
dec edi
push eax
dec ebp
dec edi
jae 0x8de780
cmp bl, byte [ebx]
or byte [ebx], bl
adc dl, byte [ecx]
push cs
sbb ecx, dword [esp + eax*2]
pop esi
sub byte [edx], dl
pop ds
sbb dl, byte [edi]
adc edx, dword [edi]
or al, 0x5e
sub eax, 0x1116150b
or byte [ebx + 0x74], dh
sub eax, 0x5e1b0a17
inc esp
pop esi
push ss
or cl, byte [edx]
push cs
inc esp
push ecx
push ecx
or dword [ecx], ecx
or dword [eax + 0x1b], edx
adc byte [edi], dl
push eax
sbb edx, dword [eax]
pop ss
sbb dword [ebx], edx
pop ds
push cs
or al, 0x11
or bl, byte [ebx]
adc dword [edx], ecx
sbb ebx, dword [0x500c110a]
sbb eax, 0x500c110a
sbb eax, 0x73511311
je 0x8de78c
push ebx
adc ebx, dword [edi]
pop ss
adc bl, byte [esi + 0x44]
pop esi
or eax, 0x110e0e0b
or al, 0xa
sbb edx, dword ds:[eax]
sbb edx, dword [eax]
adc byte [edi], dl
pop ss
sbb dword [ebx], edx
pop ds
push cs
or al, 0x11
or bl, byte [ebx]
sbb eax, 0x500c110a
sbb eax, 0x74731311
sub dl, byte [esi]
pop ss
or eax, 0x110c0e5e
sbb dword [edi + ebx], ecx
pop ds
adc ebx, dword [esi + 0x17]
or eax, 0x110c0e5e
or bl, byte [ebx]
sbb eax, 0x5e1a1b0a
or dword [edi], edx
or bl, byte [ebx]
sbb bl, byte [esi + 9]
pop ss
or dl, byte [esi]
pop esi
sub al, 0x3b
cmp dword [edi], esi
sub eax, 0x3b2c3b2a
cmp bl, byte [esi + 0x28]
cmp ebp, dword [ebp + 0x5e303137]
adc dword [eax], ebx
pop esi
sub dl, byte [esi]
sbb ebx, dword [esi + 0x3b]
adc byte [edi], dl
sbb dword [ebx], edx
pop ds
pop esi
or al, 0x11
or bl, byte [ebx]
sbb eax, 0x731a1b0a
je 0x8de801
aas
adc dl, byte [edx]
pop esi
or al, 0x17
sbb dword [esi], edx
or cl, byte [0xd1b0c5e]
sbb ecx, dword [eax + ecx]
sbb ebx, dword [edx]
pop edi
jae 0x8de84b
xor dl, byte [edi]
or eax, 0x1b1d101b
pop esi
push ss
adc dword [edx], edx
sbb bl, byte [ebx]
or al, 0x44
pop esi
pop ebx
or eax, 0x57e
add byte [esi + 0xf], bl
add byte [eax], al
mov al, byte [0xa40000ec]
loop 0x8de7c1
cmp eax, 0xa9b9a53a
je 0x2dce09a1
and dword [eax + 0x2d], eax
wait
hlt
mov ch, 0x71
lcall 0xe7d1, 0xeb836883
pop esi
mov ch, 0x93
inc eax
xlatb
push 0x43
js 0x8de853
imul al
iretd
jae 0x8de897
out dx, eax
cmp esi, esp
loope 0x8de8ce
jge 0x8de855
add dword [eax + 0x429c1454], esi
mov al, 0x54
push esp
adc al, 0x9c
inc edx
push edx
jp 0x8de82d
scasd eax, dword es:[edi]
cld
das
dec edx
outsb dx, byte [esi]
pop es
push edi
invalid
stosb byte es:[edi], al
mov ch, 0x33
jo 0x8de912
sub eax, 0xb031f7a2
unpckhps xmm5, xmmword [0xc74125ab]
pop edx
or edx, dword [0x5aa07a82]
cwde
salc
sbb eax, 0xbd84e673
cld
cmpsd dword [esi], dword es:[edi]
jo 0x8de8ef
inc esi
or al, 0x52
bound esp, qword [edx - 0x3d]
mov ecx, 0xc2a430d5
adc al, 0x44
inc ebp
retf 0x196
mov esp, 0x83287ec1
pushal
mov edi, 0x977e25d1
movsd dword es:[edi], dword [esi]
int 0x67
add ecx, dword [ebx + ebp*8 - 0x69]
imul ecx, dword [edx - 0x66], 0x546365f6
add eax, 0x64dc8737
xor al, 0x1d
mov al, 0xb
xchg ebp, eax
mov esi, 0xdb773782
int 0x83
hlt
or edx, dword [ebp + 0x773782be]
fcmovne st(0), st(5)
xor esp, 0x79
and ch, byte [ecx + 0x3e]
rol dword [ecx - 0x64c6ba1], 1
fild qword [eax]
out dx, eax
inc eax
out 0xa3, al
xor dword [ebx], 0x18
neg byte [edx + 0x44fa3041]
rcl bl, cl
out 0xa2, eax
outsd dx, dword [esi]
xchg byte [ebp + 0x2f], bl
outsd dx, dword [esi]
test al, 0xed
scasd eax, dword es:[edi]
and byte [ecx*8 - 0x659341d6], dh
adc byte [esi + 0x1ab30617], 0x64
das
invalid