Function at 0x40f3eb
Capabilities:
Encode data using xor

Disassembly:
sti
jecxz 0x40f25c
xchg dword [edi - 0x79f96d85], eax
xchg byte [ecx], dh
dec esp
std
das
xor byte [ecx + ebp - 0x73], cl
dec eax
out 0x8d, eax
dec ebx
sub dword [0x87154cb9], eax
xchg dword [edi - 0x46f7b379], eax
pop eax
xchg dword [edi + 0x294c8787], eax
mov ecx, dword [ebp + esi - 0x73]
dec esp
cmp eax, 0x5384c05
xchg bh, dh
xor al, 0x6b
call 0x33f479e4
dec edx
mov dword [ecx + 0x4c31f786], ebx
std
das
xchg bh, dh
xor dword [ebp + edi*8 + 0x2f], ecx
das
xor byte [edx + 0x214cb932], dh
xchg dword [edi + 0x414b8787], eax
add eax, 0x4a03296a
add byte [edi - 0x79784379], ah
inc ecx
lea eax, [esi + 0x41860341]
mov edi, ebx
inc ebx
adc al, 7
xchg dword [ecx + ebp - 0x73], ecx
dec esp
cmpsd dword [esi], dword es:[edi]
mov dword [eax - 9], ecx
test dword [ebp + ebp - 0x73], ecx
dec ebx
daa
mov dword [ecx - 0x7878dab4], edi
xchg dword [edi + 0x4b05354c], eax
and al, 0xb9
dec ebx
adc eax, 0x87878787
mov dh, 0x34
imul ebp, eax, 0xffffff8b
xchg dword [ecx], esi
dec esp
std
dec eax
std
mov esi, dword [eax]
mov dl, 0x32
add eax, 0x2005294b
out 0xaf, eax
scasd eax, dword es:[edi]
scasd eax, dword es:[edi]
xchg byte [ecx + 5], al
xchg byte [ecx - 0x6f], al
xchg byte [ecx - 0x71], al
xchg byte [ecx - 0x73], al
xchg byte [ecx - 0x75], al
sti
cmpsb byte [esi], byte es:[edi]
inc edx
xchg dword [edi + 0x4b97e948], eax
sub dword [ebx], eax
mov dh, 0x34
dec esp
sub dword [ebx], eax
dec esp
jns 0x40f31a
push 0xc14c05b2
cdq
lea ecx, [esi + ebp*4 - 0x75]
and dh, ch
sti
mov dh, 0x7f
xchg byte [esi - 0x794d7844], al
ret 0x8691
mov dh, 0x68
xor dword [ebp + edi*8 + 0x48], ecx
std
mov dword [0x8b454730], eax
sbb byte [edi], al
xchg dword [edi + 0x66e39041], eax
and byte [edi - 0x72d2b379], 0x4b
pop es
and bh, ah
cmpsd dword [esi], dword es:[edi]
jnp 0x40f314
xchg dword [edi - 0xcc6b779], eax
xchg dword [edx + 0x29], ebp
cmc
jl 0x40f2c1
cmpsd dword [esi], dword es:[edi]
xchg dword [edi + 3], edx
je 0x40f2ef
xchg dword [ebp + 0x2d], ecx
and byte [edi + 0x4b], ah
sub edi, esi
dec esp
sub dword [ebx + 0x4cf9294b], edx
sub dword [ebp + 0x4cfb294b], ecx
sub dword [ebp + 0x4cfd294b], edx
sub dword [edi + 0x48ff294b], edx
cmp dword [ecx], eax
xchg dword [eax + 0x39], ecx
add eax, dword [edi - 0x78fac6b8]
dec ebx
cmp dword [ecx], eax
dec ebx
cmp eax, 0x8757b903
xchg dword [edi - 0xcd6b479], eax
dec ebp
sub ebx, esi
mov ecx, 0x87878758
xchg dword [edx + 0x29], ebp
jmp 0x40f397
sub ebp, ebp
dec esp
sub dword [edi - 0x410d6b5], ecx
xchg dword [eax - 0x38b37879], esp
mov dword [edi + 0x294b8787], 0xed294df1
scasd eax, dword es:[edi]
dec esp
sub dword [ebx + 0x31869f86], ecx
int1
xor esi, dword [ebx]
dec eax
cmp ebx, ebp
xchg dword [eax + 0x45], ecx
add eax, 0xb912c187
dec esp
adc eax, 0x87878787
dec esp
or byte [ebp + esi - 0xd], cl
dec ebx
or byte [ecx - 0x7878eab5], bh
xchg dword [edi + 0x294c0b7c], eax
mov ecx, 0x87878758
xchg dword [edi + 0xb7c8787], eax
dec esp
xchg dword [edi + 0x4c0b7c87], eax
sub ebx, esi
mov ecx, 0x87878758
xchg dword [ecx + ebp - 0x15], ecx
xor al, 0x6b
push 0x2ffd4c31
xor byte [0x4c8d294c], al
stosd dword es:[edi], eax
mov esp, dword [eax]
sub eax, 0xff31fb8d
xchg byte [esi + 0x4c8b294c], al
cmpsd dword [esi], dword es:[edi]
mov dword [eax - 9], ecx
mov edx, 0x294c0fc1
lea ebp, [edx - 0x59]
cdq
pop es
xchg dword [edi - 0x5818df79], eax
jl 0x40f3d6
jl 0x40f3d7
mov esp, 0x8d294c07
xchg byte [edi - 0x72d6b36d], bh
xchg byte [edi - 0x72d6b36f], bh
xchg byte [edi - 0x79784373], bh
inc ecx
invalid