Function at 0x40bb60
Capabilities:
Accept command line arguments

Disassembly:
sub esp, 0x404
push ebx
push ebp
mov ebp, ecx
push esi
push edi
or ecx, 0xffffffff
mov edi, str.DEMO_DEMO_00_DEMO_00
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebp + 0x40f]
mov eax, ecx
mov esi, edi
shr ecx, 2
mov edi, edx
lea edx, [ebp + 0x426]
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
push str.www.cimco.com
rep movsb byte es:[edi], byte [esi]
mov edi, str.CIMCO_A_S
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push str.http:___s
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [ebp + 0x4ee]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.45_45_85_60_50___FAX:_45_45_85_60_53
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [ebp + 0x520]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.www.cimco.com
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp + 0x584]
push ecx
call dword [sym.imp.MSVCRT.dll_sprintf]
mov edi, str.DEMO_Version
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp + 0x5e8]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor edx, edx
and ecx, 3
mov ebx, 1
rep movsb byte es:[edi], byte [esi]
mov word [ebp + 0x64c], dx
mov edi, 0x42a800
or ecx, 0xffffffff
xor eax, eax
mov word [ebp + 0x64e], bx
lea esi, [ebp + 0x650]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [esp + 0x1c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x1c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x42a800
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
lea esi, [ebp + 0x718]
sub edi, ecx
mov eax, ecx
mov dword [esp + 0x1c], esi
mov esi, edi
mov edi, dword [esp + 0x1c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, 4
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 2
mov word [ebp + 0x8cb], bx
mov word [ebp + 0x80d], cx
mov word [ebp + 0x80f], bx
mov byte [ebp + 0x813], bl
mov byte [ebp + 0x814], bl
mov byte [ebp + 0x818], bl
mov byte [ebp + 0x815], bl
mov byte [ebp + 0x816], bl
mov byte [ebp + 0x817], bl
mov byte [ebp + 0x819], bl
mov word [ebp + 0x859], ax
mov word [ebp + 0x85b], cx
mov byte [ebp + 0x81a], bl
mov byte [ebp + 0x81b], bl
mov byte [ebp + 0x81c], bl
mov byte [ebp + 0x81d], bl
mov byte [ebp + 0x81e], bl
mov byte [ebp + 0x81f], bl
mov byte [ebp + 0x820], 0x10
mov byte [ebp + 0x821], dl
mov byte [ebp + 0x823], bl
mov byte [ebp + 0x822], dl
mov byte [ebp + 0x825], bl
mov byte [ebp + 0x824], bl
mov byte [ebp + 0x826], bl
mov dword [ebp + 0x829], edx
mov byte [ebp + 0x82d], dl
mov word [ebp + 0x82f], dx
mov word [ebp + 0x831], dx
mov word [ebp + 0x833], dx
mov word [ebp + 0x835], dx
mov word [ebp + 0x837], dx
mov byte [ebp + 0x839], bl
mov byte [ebp + 0x83b], al
mov byte [ebp + 0x83e], bl
mov word [ebp + 0x841], dx
mov byte [ebp + 0x8ca], bl
mov byte [ebp + 0x8cc], bl
mov word [ebp + 0x8ce], bx
mov esi, dword [sym.imp.MSVCRT.dll_time]
push edx
mov byte [ebp + 0x8c5], bl
mov word [ebp + 0x8c7], dx
mov byte [ebp + 0x8c9], bl
mov byte [ebp + 0x83d], dl
mov word [ebp + 0x83f], dx
call esi
mov dword [ebp + 0x8bd], eax
lea edi, [ebp + 0x85d]
mov ecx, 7
mov eax, 0x40004
add esp, 0x10
rep stosd dword es:[edi], eax
mov byte [ebp + 6], bl
mov byte [ebp + 7], 0x1b
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
test eax, eax
je 0x40be8a
push str.__expire
push eax
call fcn.004121d0
mov cl, byte [0x42b018]
add esp, 8
test cl, cl
jne 0x40be8a
test eax, eax
je 0x40be8a
mov cl, byte [eax + 8]
test cl, cl
jne 0x40be8a
push 0
mov ecx, ebp
mov byte [0x42b018], bl
call fcn.0040fd90
push 0
mov edi, eax
call esi
sub edi, eax
mov eax, 0xc22e4507
imul edi
add edx, edi
add esp, 4
sar edx, 0x10
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
push edx
lea edx, [esp + 0x18]
push str.This_demo_expires_in__d_days
push edx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0xc
lea eax, [esp + 0x14]
push 0
push str.Expire
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x404
ret