Function at 0xef682c
Capabilities:
Encode data using xor

Disassembly:
jmp 0xef6836
pushal
call 0xef683c
pop ebp
sub ebp, 0x10
sub ebp, 0xaf682c
jmp 0xef6852
push 0x4e900af
add byte [eax], al
add byte [ecx - 0x12], al
retf
mov eax, 0xaf682c
add eax, ebp
add eax, 0x4c
mov ecx, 0x5c2
mov edx, 0x94371877
xor byte [eax], dl
inc eax
dec ecx
jne 0xef6869
jmp 0xef687c
cld
mov edx, 0x774bfefc
ja 0xef68fb
div byte [esi + 0x7777778f]
je 0xef6846
iretd
in al, 0x42
stc
ja 0xef692b
pop ebx
push ebx
pop ds
shl cl, 1
xchg ebx, eax
inc esp
lahf
jb 0xef6936
ja 0xef6938
sahf
inc ebx
ja 0xef693c
ja 0xef68c1
adc edx, dword [ebx - 0x75]
invalid
sti
push ebx
jae 0xef6976
ja 0xef6978
pop ds
out dx, eax
inc ebp
push esi
ja 0xef6926
in al, 0x42
stc
ja 0xef6982
pop ebx
push ebx
cli
adc edx, dword [ebx - 0x75]
invalid
add bh, byte [ebx - 0x78]
jnp 0xef68b0
add bh, byte [edi - 0x61]
add eax, 0xfc777777
retf 0x777f
xchg byte [edx + 0x79], dl
lmsw si
push edx
jns 0xef6949
add esi, esi
xchg byte [edx + 0x79], dl
sgdt [esi + edi*4 + 0x44]
jns 0xef694f
add dword [esi + edi*4 + 0x44], eax
movsd dword es:[edi], dword [esi]
hlt
js 0xef693e
cmp dword [edi + 0x77], esi
ja 0xef69c8
js 0xef6950
invalid
aas
ja 0xef69cb
ja 0xef6967
cld
imul ecx, dword [esi - 9], 0xffffff8c
lahf
js 0xef6951
mov word [edi + 0x776df378], ds
ja 0xef69d9
insd dword es:[edi], dx
ja 0xef69d8
ja 0xef695a
test dword [esi + ebx*4 + 0x7766f378], 0xf6117777
mov word [esi + 0x7766f378], ds
ja 0xef69e2
ja 0xef69e1
ja 0xef697d
adc esi, esi
test byte [eax + ecx*4 + 0x62f37852], 0x77
ja 0xef69ed
mov word [eax + 0x62f37852], cs
ja 0xef69ec
ja 0xef69ad
sahf
sahf
mov ebx, 0x5e888888
cmp ecx, dword [esi + 0x76]
hlt
jbe 0xef6975
mov dh, 0x72
hlt
jb 0xef6978
lahf
jae 0xef6925
retf 0x8888
mov byte [esi + 0x23], bl
dec esi
jne 0xef6984
mov dh, 0x71
hlt
jae 0xef698a
lahf
jb 0xef6937
fmul qword [eax - 0x4ad57778]
jnp 0xef6a18
and bh, ah
wait
and dword [eax], esp
and bh, ah
cld
add bh, byte [ebx - 4]
jnp 0xef69a7
or bh, byte [edi - 0x75]
invalid
mov eax, ebp
idiv ebp
jno 0xef69a9
mov cl, 0x76
ja 0xef6a2e
ja 0xef69b8
push dword [eax - 0xa]
jo 0xef69b1
mov al, 0x76
ja 0xef6a36
ja 0xef698d
jne 0xef6a3a
ja 0xef6a3c
jne 0xef696c
js 0xef69bb
bnd jb 0xef6a42
jb 0xef6a42
ja 0xef6a44
std
popal
xor dword [ebp - 0x5b], esp
js 0xef69c8
scasd eax, dword es:[edi]
mov byte [eax + 0x78a57588], cl
jne 0xef697f
movsd dword es:[edi], dword [esi]
js 0xef69ce
bnd jb 0xef6a55
jb 0xef6a55
ja 0xef6a57
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword gs:[esi]
js 0xef69db
sbb eax, 0x44777777
mov bh, 0x75
movsd dword es:[edi], dword [esi]
jne 0xef6994
js 0xef69e3
bnd jb 0xef6a6a
jb 0xef6a6a
ja 0xef6a6c
std
popal
xor dword [ebp - 0x5b], esp
js 0xef69f0
pop ebp
jbe 0xef6a76
ja 0xef6a76
movsd dword es:[edi], dword [esi]
js 0xef69f6
jb 0xef6a7d
ja 0xef6a7e
ja 0xef6a7f
ja 0xef6a06
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0xef6a05
jb 0xef6a8c
ja 0xef6a8d
ja 0xef6a8e
ja 0xef6a15
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0xef6a14
jb 0xef6a9b
ja 0xef6a9c
ja 0xef6a9d
ja 0xef6a24
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0xef6a23
jb 0xef6aaa
ja 0xef6aac
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x78
jno 0xef6ab7
js 0xef6a31
jno 0xef6ab7
ja 0xef6ab9
cld
test al, 0x5c
pop esp
scasd eax, dword es:[edi]
std
je 0xef6a48
push dword [eax + 0x30]
jo 0xef6a7b
int3
sahf
pop es
mov byte [eax + 0x7776cf88], cl
iretd
ja 0xef6ad0
ja 0xef6ad1
ja 0xef6ad0
jne 0xef6a01
movsd dword es:[edi], dword [esi]
js 0xef6a50
jb 0xef6ad7
ja 0xef6ad8
ja 0xef6ad9
ja 0xef6a60
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0xef6a5f
bnd jb 0xef6ae6
jb 0xef6ae6
ja 0xef6ae8
std
popal
xor dword [ebp - 0x5b], esp
js 0xef6a6d
cmc
test eax, 0x5c888888
mov byte [esp + esi*4 - 0x34], bl
mov ah, 0xcc
int3
jbe 0xef6af8
ja 0xef6afa
js 0xef6a77
inc ebx
inc ebx
ja 0xef6aff
ja 0xef6a58
jbe 0xef6b03
ja 0xef6b05
ja 0xef6b04
jne 0xef6a35
movsd dword es:[edi], dword [esi]
js 0xef6a84
jb 0xef6b0b
ja 0xef6b0c
ja 0xef6b0d
ja 0xef6a94
std
popal
xor dword [ebp - 0x5b], esp
mov esi, 0xf278a575
mov esi, 0xf278a575
jne 0xef6a44
js 0xef6a93
jb 0xef6b1a
ja 0xef6b1c
std
popal
xor dword [ebp - 0x5b], esp
js 0xef6aa1
test eax, 0x21888888
cld
sbb byte [edx + eax*4 - 0x7c], 0xd3
sub dword [esi - 0x77777781], ebx
aas
mov dh, 0x97
jg 0xef6a43
mov byte [eax + 0x7f97b63f], cl
xchg edi, eax
jg 0xef6abf
std
jno 0xef6af5
cld
lahf
into
jbe 0xef6b40
ja 0xef6b42
jne 0xef6a72
js 0xef6ac1
jb 0xef6b48
ja 0xef6b49
ja 0xef6b4a
ja 0xef6ad1
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword [esi]
mov esi, 0xf278a575
mov esi, 0xf278a575
jb 0xef6b57
ja 0xef6b59
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword [esi]
js 0xef6ade
cmc
test eax, 0xf6888888
mov dh, dh
invalid
mov byte [eax - 0x70097778], cl
ja 0xef6b6f
mov dh, dh
invalid
ja 0xef6b76
imul byte [esi - 0x77777778]
mov byte [eax + 0x77f78ff6], cl
ja 0xef6b82
mov dh, dh
invalid
test byte [edi + 0x777777f7], 0xf6
mul byte [esi + 0x77777777]
cmpsb byte [esi], byte es:[edi]
ja 0xef6b86
ja 0xef6b88
test byte [edi + 0x777777f7], 0xf6
cmpsb byte [esi], byte es:[edi]
ja 0xef6b92
ja 0xef6b93
ja 0xef6b94
ja 0xef6b3f
and esp, edi
cld
sbb byte [edi + eax*4 - 0x7c], 0xd3
sub dword [esi - 0x77777614], ebx
mov dword [eax + 0x3171fd88], ecx
std
jno 0xef6b5e
inc esp
mov esi, 0x78769fb7
mov bh, 0x9f
jbe 0xef6bab
js 0xef6b27
rep insd dword es:[edi], dx
insd dword es:[edi], dx
ja 0xef6bae
ja 0xef6b2f
cmpsb byte [esi], byte es:[edi]
jne 0xef6bb3
ja 0xef6bb5
cld
lahf
and esp, edi
sbb byte [edi + eax*4 - 0x7c], 0xd3
sub esp, ecx
int3
jbe 0xef6bc2
ja 0xef6bc3
ja 0xef6bc4
ja 0xef6aec
sahf
add al, 0x89
mov byte [eax + 0x7f0a5c2a], cl
cld
mov byte [edx], ch
pop esp
or bh, byte [edi - 4]
mov al, 0x28
sub esp, edi
xchg edx, eax
sub dh, byte [ebp - 0x3d78881]
jg 0xef6bd7
sub ah, bh
inc ebx
push ebx
cli
adc edx, dword [ebx + 0x73]
sahf
jae 0xef6be2
ja 0xef6be4
imul edi, dword [ecx + edx*2 + 0x56], 0xd81f5bcf
ja 0xef6beb
push ecx
push esi
iretd
je 0xef6b2a
mov dl, 0xf6
mov bh, 0x1c
je 0xef6bf4
div byte [edi + 0x7777741c]
into
ja 0xef6b4d
aam 0x75
ja 0xef6bfa
jne 0xef6bf9
ja 0xef6b51
int 0x7b
add eax, 0x674732c0
aaa
jnp 0xef6b8b
sal byte [edx], 0x47
inc edi
aaa
js 0xef6b80
or dword [eax + 0x739e8888], 0xe0777777
sahf
jae 0xef6c0c
ja 0xef6c0d
ja 0xef6c0e
ja 0xef6b78
loopne 0xef6be1
dec eax
or edi, ebp
cld
test esp, edi
invalid
js 0xef6b32
sub eax, 0x473df020
lock dec dword [ebx + 0x4f]
and al, dh
cmp eax, 0x4bfff047
dec dword [ebx + 0x4f]
dec edi
jnp 0xef6c33
jnp 0xef6c0a
mov dword [0x1f081fc], eax
jnp 0xef6bbd
lock add dword [ebx - 4], edi
cld
xor eax, 0x81fa7f34
jnp 0xef6c44
invalid
xor al, 0x7f
cli
jg 0xef6bc0
cmp dword [ebx + 0x7b], 0xff747b7b
jnp 0xef6c46
je 0xef6bcc
invalid
cmp eax, 0x787b7b7b
lodsd eax, dword [esi]
cli
mov esp, 0x7b7b7b73
jnp 0xef6c53
jnp 0xef6c54
jnp 0xef6bd4
cli
xchg edx, eax
jae 0xef6c58
jnp 0xef6c5a
cli
cmp byte [ebx + 0x7b], 0x7b
jnp 0xef6c5e
jnp 0xef6c5f
jnp 0xef6c60
jnp 0xef6c5a
je 0xef6be6
jmp [ebx + 0x1d848484]
stosd dword es:[edi], eax
test byte [esp + eax*4 - 0x45830fe3], al
test byte [0x93ba7cf0], bl
sbb eax, 0x93ba7cf0
xchg ebx, eax
ja 0xef6bea
wait
je 0xef6bef
cli
cmp dword [eax + 0x7b], 0x7b
jnp 0xef6c6f
je 0xef6bfa
invalid
jbe 0xef6c79
jnp 0xef6c7b
sbb eax, 0x9bfa7cf0
test byte [ebx + edi*2 + 0x7b], dh
js 0xef6bc4
mov ecx, 0x3232637a
jp 0xef6c70
arpl word [edx], si
xor dh, byte [edx]
xor bh, al
clc
mov esp, 0x84b39279
test byte [edx + edx*4 + 0x7b7b7b7f], al
test byte [ecx - 0x40], dh
scasd eax, dword es:[edi]
ret
push edi
adc edx, esp
jnp 0xef6c9e
mov esi, 0x7f61bbfa
jnp 0xef6ca8
ret 0x7a8f
jle 0xef6c21
jg 0xef6c5b
dec ebx
imul edi, dword [ebx], 0x32
cmp esi, dword [edx]
je 0xef6c3b
lea eax, [esp + eax*4 + 0x7b7f9284]
jnp 0xef6cc1
jle 0xef6c91
sub eax, 0x4200f58f
cmc
cmc
add byte [edx - 0xb], al
ret 0xfe49
jle 0xef6cd2
jge 0xef6bd6
cmp ch, 1
std
add dword [edx + 0x7e], esi
jb 0xef6cd8
jno 0xef6c56
cli
les edi, [esi + 0x7e]
jle 0xef6cde
jle 0xef6c4a
jmp 0xea61735a
cmc
push es
jb 0xef6c4e
jmp 0x821e24e6
jge 0xef6c1f
sub ebx, 0x7ef3c1e6
sub ebx, 0x7ef3c1e6
inc dword [esi + 0x7e7e7e7e]
xchg byte [esi + 0x7e], bh
jle 0xef6cf0
jle 0xef6cf1
jle 0xef6cf2
jle 0xef6ce6
jno 0xef6c71
sti
jo 0xef6cf6
jle 0xef6cf8
jle 0xef6c64
jmp 0xea617374
cmc
push es
jb 0xef6c68
jge 0xef6c39
sub ebx, 0x7ef3c1da
std
add dword [edx + 0x7e], esi
jno 0xef6c88
idiv byte [esi + 0x7e]
jle 0xef6d10
jle 0xef6c90
std
add dword [esi + 0x7e], edi
jle 0xef6d14
jno 0xef6c93
je 0xef6d18
jle 0xef6d1a
std
add dword [esi + 0x7e], ebp
jno 0xef6c9c
outsb dx, byte [esi]
jle 0xef6d12
cli
sbb al, 0x7e
jle 0xef6d24
sbb bl, byte [edx - 0x7e]
not dword [edx + 0x5a]
pop edx
xor bh, 0x52
pop edx
sub edi, dword [esi - 0xb]
adc dword [esi + 0x7d], ebp
nop
std
add edi, dword [esi + 0x7e]
jle 0xef6d37
jno 0xef6cb5
aaa
jle 0xef6d3c
jle 0xef6cb9
xchg edi, eax
cmc
pop ss
jle 0xef6cbe
xchg edi, eax
sbb bl, byte [edx - 0x7e]
idiv dword [edx + 0x5a]
sub al, 0x75
mov bh, 0x71
div dword [edx + 0x7e]
jb 0xef6d52
jle 0xef6d54
sbb bl, byte [edx - 0x7e]
div dword [edx + 0x5a]
pop edx
xor bh, 0x72
pop edx
xchg edi, eax
jno 0xef6d5e
jle 0xef6d60
jge 0xef6c94
invalid
jl 0xef6d66
jle 0xef6d68
sbb bl, byte [edx - 0x7e]
div dword [edx + 0x5a]
pop edx
sub esp, 0x7ef3c1e2
sub esp, 0x7ef3c1e2
in al, dx
loop 0xef6cb7
jle 0xef6d1d
and al, 0xf7
cmp edi, dword [esi + 0x26]
idiv dword [ebx]
jle 0xef6d23
invalid
mov ecx, 0x7e7e7e6a
xchg edi, eax
jle 0xef6d92
jle 0xef6cad
inc edx
add dword [ecx - 0x7ee5d57f], 0x7e7e7e4b
jle 0xef6d39
add dword [ecx + 0x4b811a2a], 0x7e7e7e7e
sub bl, byte [edx]
or dword [ebx + 0x7e], 0x167e7e7e
dec ebx
jle 0xef6d9e
jle 0xef6da0
push ss
inc ebp
adc cl, dl
jle 0xef6d53
sbb bl, byte [edx - 0x7e]
test dword [edx + 0x5a], 0xf54238f5
cli
dec esi
push esi
jle 0xef6db6
jle 0xef6db7
jle 0xef6db7
jge 0xef6cf3
mov eax, 0x162a9e81
sbb dword [esi + 0x5e1b162a], 0x1917103b
adc ebx, dword [edi]
sahf
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, 0x5e0c110a
or byte [ebx], bl
sbb ecx, dword [ecx + 0x5e101117]
or al, 0xd
pop ss
adc dword [eax], edx
pop esi
dec edi
push eax
dec ebp
dec edi
jae 0xef6dd4
cmp bl, byte [ebx]
or byte [ebx], bl
adc dl, byte [ecx]
push cs
sbb ecx, dword [esp + eax*2]
or al, 0x44
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
or eax, 0x1b515144
adc byte [edi], dl
sbb dword [ebx], edx
pop ds
push cs
or al, 0x11
or bl, byte [ebx]
sbb eax, 0x500c110a
sbb eax, 0x73511311
push ecx
jae 0xef6e15
je 0xef6ddd
cmp edx, dword [ebx + 0x13]
pop ds
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]
pop ss
sbb dword [ebx], edx
adc ebx, dword [edi]
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
adc ebx, dword [esi + 0x17]
pop ss
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 0xef6e52
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 0xef6e9c
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 - 0xbfffff2], ah
test dword [eax], 0x75f70800
add ch, byte [ebp - 0x7a]
add byte [eax], al
or bh, dh
jne 0xef6e4d
insd dword es:[edi], dx
xchg byte [edi], ch
das
cdq
in eax, 0xad
invalid
mov dword [0xc75e3d90], eax
in al, dx
add dword [ecx - 0x47], edx
jo 0xef6e45
push edx
in al, dx
dec edx
stosd dword es:[edi], eax
and ch, byte [edi + edx*4]
mov byte [edx + 0x59], cl
mov edx, 0x8ad836a2
or eax, 0xb02fa671
dec ebx
std
add eax, 0x1bd13a2b
inc ecx
ficom dword [eax + 0x5de01b03]
mov ecx, 0x657f7df5
cmpsb byte [esi], byte es:[edi]
xchg edi, eax
sbb edi, eax
stosd dword es:[edi], eax
cmp eax, 0xd67bf22d
jmp 0xb28d64c6
test eax, 0x8c1a1212
jge 0xef6e37
fldlg2
xchg byte [eax - 0x63], dl
sbb dh, byte [eax - 1]
xor ebx, dword [ebp - 0x1a1c0ced]
jge 0xef6ec2
fstp dword [esi]
mov al, 0x33
mov edx, 0x86d24878
imul edi, dword [ebx], 0xffffff8f
iretd
cmp bh, byte [esi - 0x64]
inc ebx
mov ah, 0x5c
xor bh, bh
inc ebp
outsd dx, dword [esi]
int 0xfc
and dl, byte [esi]
dec esi
jo 0xef6e5b
sub byte [edx + 0x77], bl
dec eax
outsb dx, byte [esi]
invalid