Function at 0x402440
Capabilities:
Encode data using xor

Disassembly:
push 0x42cfc8
call sub.MSVBVM60.DLL_ThunRTMain
add byte [eax], al
add byte [eax], al
add byte [eax], al
xor byte [eax], al
add byte [eax], al
inc eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [esi], bh
jns 0x40247e
pop ds
pop edx
test bl, dl
lcall 0x73e3, 0x3ea5b248
jl 0x40245e
sbb dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + esi*2 + 0x68], ch
add byte [eax], al
add byte [eax], al
insb byte es:[edi], dx
jo 0x4024e7
push 0x656c6261
outsb dx, byte [esi]
popal
bound ebp, qword [ebp + 0x6e]
imul ebp, dword fs:[esi + 0x67], 0
add byte [eax], al
add byte [eax], al
dec esp
xor dword [eax], eax
sbb ch, byte [edx]
and ch, cl
jle 0x402478
rol dword [esi - 0x51], 1
scasb al, byte es:[edi]
dec esi
sbb esi, edi
loope 0x4024ff
test al, 0x15
stc
add byte [edi + 0x1f], bh
mov esp, 0x248d45c5
mov es, ecx
lodsb al, byte [esi]
aas
in eax, 0x97
cmp cl, byte [edi - 0x53]
xor ebx, dword [ecx - 0x48ee309a]
or al, 0
stosb byte es:[edi], al
add byte [eax - 0x2d], ah
xchg ebx, eax
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
test eax, 0xacea0002
add byte [eax], al
add byte [esi], al
add byte [esi + 0x61], cl
bound ebp, qword [edi + 0x6c]
popal
add byte [0x4f001201], cl
dec edi
jo 0x402567
outsb dx, byte [esi]
and byte [eax + 0x69], dl
arpl word [ebp + esi*2 + 0x72], si
and byte gs:[esi + 0x69], al
insb byte es:[edi], dx
jae 0x402512
or al, byte [edx]
sbb dword [ecx], eax
add byte [edx], al
and ebx, dword [esi + 0x6c0000ac]
je 0x402521
add byte [esi + 0xac], dl
add byte [ecx], al
add byte [edx], dl
add byte [eax], ah
and byte [eax], dl
add byte [ecx], al
add byte [eax + eax], al
call 0x2640253b
add dword [eax], eax
add byte [eax], dl
adc byte [eax], dl
add byte [ecx], al
add byte [eax + eax], al
sub byte [ecx], al
add byte [eax], al
push cs
add al, 0
add byte [eax], ah
and byte [eax], al
add byte [ecx], al
add byte [eax], cl
add byte [eax + 0x36000008], ch
add eax, 0x18180000
add byte [eax], al
add dword [eax], eax
or byte [eax], al
enter 6, 0
fimul word [0x14140000]
add dh, bl
or eax, 0x14140000
add byte [eax], al
add dword [eax], eax
or byte [eax], al
or byte [esi], al
add byte [eax], al
cmpsb byte [esi], byte es:[edi]
adc al, 0
add byte [eax], dl
adc byte [eax], al
add byte [ecx], al
add byte [eax], cl
add byte [eax + 5], ch
add byte [eax], al
scasb al, byte es:[edi]
sbb al, byte [eax]
add byte [eax], bl
sbb byte [eax], al
add byte [ecx], al
add byte [eax], ah
add byte [eax + 0x16000009], cl
and byte [eax], al
add byte [eax], dl
adc byte [eax], al
add byte [ecx], al
add byte [eax], ah
add byte [eax + 4], ch
add byte [eax], al
sahf
sub dword [eax], eax
add byte [eax], ah
and byte [eax], al
add byte [ecx], al
add byte [eax], bl
add byte [eax + 0x600000c], ch
add byte cs:[eax], al
and byte [eax], ah
add byte [eax], al
add dword [eax], eax
sbb byte [eax], al
test al, 0xc
add byte [eax], al
scasb al, byte es:[edi]
cmp al, byte [eax]
add byte [eax], ah
and byte [eax], al
add byte [ecx], al
add byte [eax], bl
add byte [eax + 0x5600000c], ch
inc edi
add byte [eax], al
and byte [eax], ah
add byte [eax], al
add dword [eax], eax
sbb byte [eax], al
test al, 0xc
add byte [eax], al
invalid