Function at 0x8de1e0
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x8de1e6
pop ebp
sub ebp, 6
sub ebp, 0x4de1e0
jmp 0x8de244
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
adc bl, dh
sti
mov dword [0x7e8877e2], eax
invalid
jmp 0x8de24d
mov eax, 0x4de1e0
add eax, ebp
add eax, 0x93
mov ecx, 0x633
mov edx, 0xaf596a77
scasd eax, dword es:[edi]
xor byte [eax], dl
inc eax
dec ecx
jne 0x8de264
jmp 0x8de277
add byte [eax], al
cmp eax, 0x1da5462e
aaa
pop ds
movsd dword es:[edi], dword [esi]
sbb eax, 0x67771f37
ja 0x8de2e3
ja 0x8de2f5
pop ds
ja 0x8de23c
pop ebx
ja 0x8de27a
xchg dword [edi], esi
pop ebp
or al, 0x44
test byte [edi + 0x440c5d37], 0x44
mov bh, 0x27
mov dl, ah
dec ebx
push esi
xor esi, dword [edi + 0x27]
cld
mov edx, 0x774bfefc
ja 0x8de318
div byte [esi + 0x7777778f]
je 0x8de263
mov edx, 0x777771cf
ja 0x8de27c
iretd
pop edi
ja 0x8de329
ja 0x8de234
xchg ebp, eax
je 0x8de276
cld
idiv byte [ebx + 0x77]
ja 0x8de334
je 0x8de271
daa
pop ds
sti
inc ecx
jle 0x8de33c
pop ds
and eax, 0x767733dc
pop ebx
push ebx
pop ds
ja 0x8de347
ja 0x8de349
lahf
jb 0x8de34c
ja 0x8de34e
sahf
pop edi
ja 0x8de352
ja 0x8de2ff
and ebp, dword [edx]
cld
bnd jg 0x8de35a
ja 0x8de35c
cld
loop 0x8de363
ja 0x8de361
ja 0x8de2e8
cld
cli
ja 0x8de367
ja 0x8de367
ja 0x8de2a8
sahf
jne 0x8de33b
jne 0x8de2eb
mov ch, 0x73
js 0x8de2ee
or dword [eax - 0x4ad57778], 0x7b
mov byte [edx], ch
mov ch, 0x7b
ja 0x8de301
sti
push ebx
jae 0x8de380
ja 0x8de382
pop ds
sti
inc ecx
jle 0x8de387
pop ds
and eax, 0x767733dc
pop ebx
push ebx
lahf
jb 0x8de393
ja 0x8de395
sahf
dec eax
jne 0x8de399
ja 0x8de346
cld
wait
mov byte [edx], al
jnp 0x8de2b2
add bh, byte [ebx - 0x78]
mov byte [edx], al
jg 0x8de2cc
add bh, byte [edi - 0x61]
add eax, 0xfc777777
ja 0x8de3a7
ja 0x8de32e
retf 0x777f
ja 0x8de3ad
ja 0x8de32e
xchg byte [esp - 0x7909f473], ah
movsb byte es:[edi], byte [esi]
movsb byte es:[edi], byte [esi]
lea ecx, fs:[ebx]
lea ecx, [ebx]
or esi, esi
xchg byte [esp - 0x41bbf473], ah
inc esp
test byte [esi + 0xb8d64a4], 0x44
lea ecx, fs:[ebx]
inc esp
mov esi, 0x9ff4a544
movsd dword es:[edi], dword [esi]
hlt
jb 0x8de38a
js 0x8de340
cmp dword [edi + 0x77], esi
cmp dword [edi + 0x77], esi
ja 0x8de3c7
ja 0x8de3ca
invalid
dec esi
test dword [edi + ebx*4 + 0x776df378], 0x8cf77777
sahf
mov word [edi + 0x776df378], ds
ja 0x8de3db
ja 0x8de3da
ja 0x8de35c
test dword [esi + ebx*4 + 0x7766f378], 0xf6117777
mov word [esi + 0x7766f378], ds
ja 0x8de3e4
js 0x8de35c
ja 0x8de3e3
ja 0x8de37f
adc esi, esi
test byte [eax + ecx*4 + 0x62f37852], 0x77
ja 0x8de3ef
mov word [eax + 0x62f37852], cs
ja 0x8de3ee
ja 0x8de3af
sahf
sahf
mov ebx, 0x5e888888
cmp ecx, dword [esi + 0x76]
dec esi
jbe 0x8de377
hlt
mov dh, 0x72
hlt
lahf
jae 0x8de327
retf 0x8888
mov byte [eax + 0x4e235e88], cl
mov byte [esi + 0x23], bl
dec esi
jne 0x8de386
mov dh, 0x71
hlt
jno 0x8de389
popfd
jae 0x8de38c
lahf
jb 0x8de339
fmul qword [eax - 0x4ad57778]
jnp 0x8de41a
and bh, ah
wait
and dword [eax], esp
and bh, ah
and byte [edx], ah
cld
add bh, byte [ebx - 4]
jnp 0x8de3a9
or bh, byte [edi - 0x75]
invalid
mov eax, ebp
idiv ebp
jno 0x8de3ab
mov cl, 0x76
ja 0x8de430
ja 0x8de3ba
push dword [eax - 0xa]
jo 0x8de3b3
mov al, 0x76
ja 0x8de438
ja 0x8de38f
jne 0x8de43c
ja 0x8de43e
jne 0x8de36e
js 0x8de3bd
bnd jb 0x8de444
jb 0x8de444
ja 0x8de446
std
popal
xor dword [ebp - 0x5b], esp
js 0x8de3ca
scasd eax, dword es:[edi]
mov byte [eax + 0x78a57588], cl
jne 0x8de381
movsd dword es:[edi], dword [esi]
js 0x8de3d0
bnd jb 0x8de457
jb 0x8de457
ja 0x8de459
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword gs:[esi]
js 0x8de3dd
sbb eax, 0x44777777
mov bh, 0x75
movsd dword es:[edi], dword [esi]
jne 0x8de396
js 0x8de3e5
bnd jb 0x8de46c
jb 0x8de46c
ja 0x8de46e
std
popal
xor dword [ebp - 0x5b], esp
js 0x8de3f2
pop ebp
jbe 0x8de478
ja 0x8de478
movsd dword es:[edi], dword [esi]
js 0x8de3f8
jb 0x8de47f
ja 0x8de480
ja 0x8de481
ja 0x8de408
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8de407
jb 0x8de48e
ja 0x8de48f
ja 0x8de490
ja 0x8de417
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8de416
jb 0x8de49d
ja 0x8de49e
ja 0x8de49f
ja 0x8de426
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8de425
jb 0x8de4ac
ja 0x8de4ae
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x78
jno 0x8de4b9
js 0x8de433
jno 0x8de4b9
ja 0x8de4bb
cld
test al, 0x5c
pop esp
scasd eax, dword es:[edi]
std
je 0x8de44a
push dword [eax + 0x30]
jo 0x8de47d
int3
sahf
pop es
mov byte [eax + 0x7776cf88], cl
iretd
ja 0x8de4d2
ja 0x8de4d3
ja 0x8de4d2
jne 0x8de403
movsd dword es:[edi], dword [esi]
js 0x8de452
jb 0x8de4d9
ja 0x8de4da
ja 0x8de4db
ja 0x8de462
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8de461
bnd jb 0x8de4e8
jb 0x8de4e8
ja 0x8de4ea
std
popal
xor dword [ebp - 0x5b], esp
js 0x8de46f
cmc
test eax, 0x5c888888
mov byte [esp + esi*4 - 0x34], bl
mov ah, 0xcc
int3
jbe 0x8de4fa
ja 0x8de4fc
js 0x8de479
inc ebx
inc ebx
ja 0x8de501
ja 0x8de45a
jbe 0x8de505
ja 0x8de507
ja 0x8de506
jne 0x8de437
movsd dword es:[edi], dword [esi]
js 0x8de486
jb 0x8de50d
ja 0x8de50e
ja 0x8de50f
ja 0x8de496
std
popal
xor dword [ebp - 0x5b], esp
mov esi, 0xf278a575
mov esi, 0xf278a575
jne 0x8de446
js 0x8de495
jb 0x8de51c
ja 0x8de51e
std
popal
xor dword [ebp - 0x5b], esp
js 0x8de4a3
test eax, 0x21888888
cld
sbb byte [edx + eax*4 - 0x7c], 0xd3
sub dword [esi - 0x77777781], ebx
aas
mov dh, 0x97
jg 0x8de445
mov byte [eax + 0x7f97b63f], cl
xchg edi, eax
jg 0x8de4c1
std
jno 0x8de4f7
cld
lahf
into
jbe 0x8de542
ja 0x8de544
jne 0x8de474
js 0x8de4c3
jb 0x8de54a
ja 0x8de54b
ja 0x8de54c
ja 0x8de4d3
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword [esi]
mov esi, 0xf278a575
mov esi, 0xf278a575
jb 0x8de559
ja 0x8de55b
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword [esi]
js 0x8de4e0
cmc
test eax, 0xf6888888
mov dh, dh
invalid
mov byte [eax - 0x70097778], cl
ja 0x8de571
mov dh, dh
invalid
ja 0x8de578
imul byte [esi - 0x77777778]
mov byte [eax + 0x77f78ff6], cl
ja 0x8de584
mov dh, dh
invalid
test byte [edi + 0x777777f7], 0xf6
mul byte [esi + 0x77777777]
cmpsb byte [esi], byte es:[edi]
ja 0x8de588
ja 0x8de58a
test byte [edi + 0x777777f7], 0xf6
cmpsb byte [esi], byte es:[edi]
ja 0x8de594
ja 0x8de595
ja 0x8de596
ja 0x8de541
and esp, edi
cld
sbb byte [edi + eax*4 - 0x7c], 0xd3
sub dword [esi - 0x77777614], ebx
std
jno 0x8de560
inc esp
mov esi, 0x78769fb7
mov bh, 0x9f
jbe 0x8de5ad
rep insd dword es:[edi], dx
ja 0x8de5b0
ja 0x8de531
cmpsb byte [esi], byte es:[edi]
jne 0x8de5b5
ja 0x8de5b7
cld
lahf
and esp, edi
sbb byte [edi + eax*4 - 0x7c], 0xd3
sub esp, ecx
int3
jbe 0x8de5c4
ja 0x8de5c5
ja 0x8de5c6
ja 0x8de4ee
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 0x8de5d9
sub byte [ecx], ch
sahf
jae 0x8de5de
ja 0x8de5e0
imul esp, dword [edx], 0x97cf4afa
xchg esi, eax
cmp dh, byte [edi + 0x74]
ja 0x8de5e7
mov dl, 0xf6
mov bh, 0xc4
je 0x8de5f0
ja 0x8de5f1
ja 0x8de549
into
je 0x8de5f5
je 0x8de5f5
ja 0x8de54d
jnp 0x8de55d
sub dl, byte [esi]
inc edi
aaa
js 0x8de57c
js 0x8de57c
or dword [eax + 0x739e8888], 0xe0777777
fsubrp st(5)
in eax, 0xcf
sub eax, 0xbb482c2c
invalid
iretd
jnp 0x8de569
xchg edx, eax
jns 0x8de53b
fisub word [0x7b47e5f0]
and eax, 0x7b47e5f0
invalid
inc edi
jnp 0x8de635
jnp 0x8de636
jnp 0x8de5e4
sub byte [esp + eax*8 + 0x27], dh
je 0x8de582
daa
dec eax
jge 0x8de5e3
cli
mov ecx, 0x7b7b7b83
cmp dword [ebx + 0x7b], 0x7b
jnp 0x8de642
jnp 0x8de643
jnp 0x8de641
js 0x8de577
lodsd eax, dword [esi]
cli
cmp byte [ebx + 0x7b], 0x7b
jnp 0x8de645
jmp dword [ebx + edi*2 + 0x7b]
stosb byte es:[edi], al
lock sub ch, byte [ebx - 4]
stosb byte es:[edi], al
js 0x8de5e2
add dword [edi + 0x78], esi
ja 0x8de65b
js 0x8de5ed
or dword [edi - 0x77], ebp
fbld tbyte [0x7b53b9fa]
outsd dx, dword [esi]
mov edi, ebx
and al, 0x25
cli
mov ecx, 0x7b7b7b53
jnp 0x8de66a
xor byte [edx - 0x7b7b7b52], dl
xchg edx, eax
scasb al, byte es:[edi]
test byte [esp + eax*4 + 0x7b3b7b13], al
jnp 0x8de60e
adc edi, dword [ebx + 0x3b]
jnp 0x8de675
adc edi, dword [ebx - 0x49]
jnp 0x8de5b4
push edi
jnp 0x8de62d
test dh, ch
cmp ebx, dword [edx + 0x3f]
pop edx
aas
jnp 0x8de603
test eax, esi
add eax, 0x4cc7f047
fstp xword [ebx + 0x7b]
jnp 0x8de68b
test eax, esi
movsd dword es:[edi], dword [esi]
cli
nop
jnp 0x8de695
cmp edi, dword [ebx - 0x10]
sub al, 0x7b
invalid
jg 0x8de61d
cmp dword [ebx + 0x7b], 0xff747b7b
cmp eax, 0x787b7b7b
jnp 0x8de6a7
lodsd eax, dword [esi]
cli
mov esp, 0x7b7b7b73
jnp 0x8de631
cli
xchg edx, eax
jae 0x8de6b5
jnp 0x8de6b7
cli
cmp byte [ebx + 0x7b], 0x7b
jnp 0x8de6b7
je 0x8de643
jmp [edi + 0x1d848484]
scasd eax, dword es:[edi]
test byte [esp + eax*4 - 0x45830fe3], al
test byte [0x93ba7cf0], bl
xchg ebx, eax
ja 0x8de647
wait
je 0x8de64c
cmp dword [eax + 0x7b], 0x7b
jnp 0x8de6cc
invalid
jnp 0x8de6d8
sbb eax, 0x9bfa7cf0
test byte [ebx + edi*2 + 0x7b], dh
js 0x8de621
jp 0x8de6cd
xor dh, byte [edx]
clc
mov esp, 0x84b39279
test byte [edx + edx*4 + 0x7b7b7b7f], al
jg 0x8de6f2
jnp 0x8de6f4
test bh, ah
sbb dl, ch
ret
js 0x8de706
jnp 0x8de70a
sar dword [esi - 0x5e], 0x31
invalid
imul edi, dword [ebx], 0x32
je 0x8de698
lea eax, [esp + eax*4 + 0x7b7f9284]
jnp 0x8de71e
jle 0x8de714
cwde
stc
stc
mov ebp, esi
or dword [edx - 7], eax
mov ebp, esi
ret 0xfe49
jge 0x8de637
std
add dword [edx + 0x7e], esi
jno 0x8de6b7
loope 0x8de73d
jle 0x8de73f
jmp 0xe9ffedbb
jmp 0x81bc9f47
sub ebx, 0x7e3a5f3a
inc dword [esi + 0x7e7e7e7e]
pop edi
cmp bh, byte [esi - 1]
xchg byte [esi + 0x7e], bh
jle 0x8de753
jle 0x8de752
jle 0x8de747
jno 0x8de6d2
sti
jo 0x8de757
jle 0x8de758
jle 0x8de759
jle 0x8de6c5
jmp 0xe9ffedd5
cmc
push es
jb 0x8de6c9
jge 0x8de69a
sub ebx, 0x7e3a5f2e
pop edi
cmp bh, byte [esi - 3]
std
add dword [edx + 0x7e], esi
jno 0x8de6e9
adc edi, dword [esi + 0x7e]
jle 0x8de771
jle 0x8de6f1
std
add dword [esi + 0x7e], edi
jno 0x8de6f4
je 0x8de779
jle 0x8de77b
std
add dword [esi + 0x7e], ebp
jno 0x8de6fd
xor edi, dword [esi + 0x7e]
jle 0x8de733
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 0x8de713
dec ecx
jle 0x8de79a
jle 0x8de717
xchg edi, eax
cmc
pop ss
jle 0x8de71c
xchg edi, eax
sub al, 0x75
mov bh, 0x71
idiv dword [eax + 0x7e]
jle 0x8de7ac
das
xchg edi, eax
ja 0x8de7b0
jle 0x8de7b2
jle 0x8de7b2
jge 0x8de6e6
mov al, 0xff
mov edi, 0x7e7e7e7c
das
invalid
sub esp, 0x7e3a5f36
and al, 0xf7
cmp edi, dword [esi + 0x26]
in al, dx
pop edi
cmp bh, byte [esi + 0x24]
idiv dword [ebx]
jle 0x8de76f
invalid
add dword [ecx + 0x6ab9ff23], 0x977e7e7e
and dword [ebx], 0x7e6ab9ff
push 0x7e
jle 0x8de7d8
jle 0x8de7d9
jle 0x8de6f3
xchg edi, eax
sub dword [ecx + 0x1a2a8181], eax
or dword [ebx + 0x7e], 0x167e7e7e
fst dword [esi + 0x2b287e33]
call 0xe8cff669
cmc
cli
dec esi
push es
push cs
inc edx
call 0x6dce26d
jle 0x8de7f8
jle 0x8de7f9
jle 0x8de7f9
jge 0x8de735
mov eax, 0x7e62beff
jle 0x8de801
invalid
cmc
jle 0x8de804
mov eax, 0x7e3ef5ee
out dx, al
jge 0x8de747
cmc
mov dh, 0x2e
adc al, 0x7e
adc al, 0x7f
sub esi, ebp
cmp byte [edx - 0xb], al
cmc
cli
dec esi
push esi
jle 0x8de81e
jle 0x8de81f
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 0x8de83d
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]
pop ss
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
pop ss
sbb dword [ebx], edx
pop ds
push cs
or al, 0x11
or bl, byte [ebx]
sbb eax, 0x500c110a
sbb ebx, dword [0x500c110a]
adc dword [eax + edx*2], ecx
sbb eax, 0x73511311
je 0x8de849
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 0x8de8be
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 0x8de908
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 [eax + 0xf], ah
add byte [eax], al
mov al, byte [0x8b0000ec]
rol cl, 0x86
fnstenv [edx - 0x4b]
mov word ss:[edx], es
and al, 0xbf
arpl word [edx], di
inc esi
push ecx
mov edi, 0x51463a63
cmpsd dword [esi], dword es:[edi]
inc ecx
in eax, 0xfa
pop ebp
rcr byte [ebp + edx*4 - 0x16095cb0], 0xf2
add esi, ecx
fsub qword [esi - 0x18ef8e33]
push ebp
push edi
jb 0x8de908
out dx, al
test al, 0x2e
xchg ebx, eax
wait
lcall 0x10ac, 0x33205101
cmp eax, 0x8801258b
mov ebp, 0xb17166eb
cmp al, 0xf2
add dh, dh
cmpsd dword [esi], dword es:[edi]
pop edx
clc
in al, dx
into
cmp esi, ecx
and dl, byte [eax - 0x5ab9e0f7]
movsd dword es:[edi], dword [esi]
pop ecx
scasb al, byte es:[edi]
clc
push ebp
add bh, byte [esi - 0x1d55b738]
add eax, 0x9600e0b2
jl 0x8de904
mov edx, 0xad7dbb92
cmp eax, 0xfca703fe
and byte [esi + 0x18], bh
popal
pop edx
iretd