Function at 0x401b5f
Capabilities:
Encode data using xor

Disassembly:
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], bh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
aas
jbe 0x401c6f
xchg ecx, eax
ja 0x401bf6
jo 0x401c23
pop edx
test al, 0x3e
jno 0x401c40
lea ebx, [edi + 0x5e2ef9a5]
lahf
scasd eax, dword es:[edi]
mov ecx, 0xa16f022f
imul ecx, dword [esi], 0xef49487b
cmp ebp, edx
in eax, dx
cdq
ror byte [ebp - 0x317160ba], 1
lea eax, [esi - 0x61]
mov cs, esi
jge 0x401c87
push ss
int3
sar byte [edx + 0x6a], 0x46
or ch, byte [ebx]
jecxz 0x401c25
pop edx
ja 0x401c68
push ecx
adc al, 0x1d
jnp 0x401c69
mov ecx, 0x1ed4f64d
cmp bl, dl
add byte [ecx], 0x3b
jl 0x401c69
or eax, 0x5188e289
sbb dword [eax - 0x1c5aeab5], ebp
salc
invalid
xor edi, dword [ecx - 0x67]
add ecx, dword [ebx + 0x7d]
add dh, al
pop ecx
mov esp, esp
pop edx
push edi
sub al, 0x56
or al, 0x84
into
inc ebp
outsd dx, dword [esi]
dec edi
in al, dx
sbb bl, dh
mov ecx, 0x29a1460e
push esp
dec ebp
pop esi
sub byte [edx - 0x83f258e], 0xb1
lodsb al, byte [esi]
fcmovu st(0), st(7)
sub bl, byte [ebp + 0x14]
in eax, 0x4b
in eax, 0xd8
and bl, byte fs:[edi + 0x73bc9e38]
popal
cmp ebp, dword [edi - 0x2b85a096]
movsb byte es:[edi], byte [esi]
rol byte [esi + 0x7dacd897], cl
lds ebp, [esi]
popfd
aad 0x4d
adc dl, 8
jno 0x401cb8
sbb byte [ebx - 0x44c22055], ch
adc edx, ebx
movsd dword es:[edi], dword [esi]
xchg esp, eax
mov esi, 0x879794fd
rep movsd dword es:[edi], dword [esi]
nop
rcl ecx, 1
inc dword [ebp - 0x7cbde715]
lodsd eax, dword [esi]
mov byte [0xf004f7f5], bl
inc esp
xor dword [ebx - 0xf35b6ca], esp
jne 0x401cc8
pushfd
add dword fs:[edx + 0x765f9004], 0x48
xchg dword [ebp - 0x372f34e], edi
sub al, 0x67
popfd
sar byte [ecx], cl
and esi, ebp
add byte [edx + 0x62], 0x75
invalid