Function at 0x4240f0
Capabilities:
Check if file exists
Create thread

Disassembly:
push ebp
lea ebp, [esp - 0x6c]
sub esp, 0xe1c
mov eax, dword [0x4abf20]
mov ecx, dword [0x4ac434]
push ebx
mov dword [ebp + 0x68], eax
mov eax, 1
cmp ecx, eax
push esi
push edi
mov dword [ebp - 0xda0], 0x1f9
jne 0x424139
cmp dword [ebp + 0x7c], eax
jne 0x4244c6
mov eax, dword [ebp + 0x74]
push 0
push eax
call dword [sym.imp.USER32.dll_EndDialog]
jmp 0x4244c6
mov dword [0x4ac434], eax
xor ebx, ebx
xor eax, eax
mov word [ebp - 0x37c], bx
mov ecx, 0x81
lea edi, [ebp - 0x37a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
cmp dword [ebp + 0x78], 0x65
mov esi, 0x1e
mov dword [ebp - 0xda4], esi
jne 0x42418e
call fcn.0041fc60
mov ecx, esi
sub ecx, eax
cmp ecx, esi
jl 0x42417e
mov dword [ebp - 0xda4], esi
jmp 0x42418e
xor edx, edx
cmp ecx, ebx
setl dl
dec edx
and edx, ecx
mov dword [ebp - 0xda4], edx
mov esi, dword [0x4ac02c]
push 0x104
lea eax, [ebp - 0x37c]
push eax
push ebx
call esi
push ebx
push ebx
lea ecx, [ebp - 0xd9c]
push ecx
lea edx, [ebp + 0x50]
push edx
lea eax, [ebp - 0x37c]
push eax
call dword [sym.imp.MSVCR71.dll__wsplitpath]
push str.TrialTrial7.dll
lea ecx, [ebp - 0xd9c]
push ecx
lea edx, [ebp + 0x50]
push edx
lea eax, [ebp - 0x37c]
push 0x4935d4
push eax
call dword [sym.imp.MSVCR71.dll_swprintf]
add esp, 0x28
lea ecx, [ebp - 0x37c]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4241fd
mov eax, 0x1869f
jmp 0x4244cc
xor eax, eax
mov byte [ebp + 0x10], bl
mov ecx, 0xf
lea edi, [ebp + 0x11]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
mov word [ebp - 0x994], bx
mov ecx, 0x81
lea edi, [ebp - 0x992]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
mov word [ebp - 0xb9c], bx
mov ecx, 0x81
lea edi, [ebp - 0xb9a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
mov word [ebp - 0x78c], bx
mov ecx, 0x81
lea edi, [ebp - 0x78a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
mov byte [ebp - 0x174], bl
mov ecx, 0x40
lea edi, [ebp - 0x173]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
xor edx, edx
mov dword [ebp + 0x5a], edx
stosb byte es:[edi], al
push ebx
lea eax, [ebp - 0xdac]
mov dword [ebp + 0x5e], edx
push eax
mov dword [ebp + 0x62], edx
push str.UI_Multiple_Language
mov word [ebp + 0x58], bx
mov word [ebp + 0x66], dx
mov dword [ebp - 0xdb0], 0x104
mov dword [ebp - 0xdac], ebx
call fcn.00436820
lea ecx, [ebp + 0x58]
push 8
push ecx
call fcn.00433150
add esp, 0x14
push 0x104
lea edx, [ebp - 0x584]
push edx
push ebx
call esi
push str..sim
lea eax, [ebp - 0x584]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRenameExtensionW]
lea ecx, [ebp - 0x584]
push ecx
call dword [0x4ac074]
lea esi, [eax + eax + 2]
mov eax, esi
add eax, 3
and eax, 0xfffffffc
call fcn.00484560
mov eax, esp
push ebx
push esi
lea edx, [ebp - 0x584]
push edx
push eax
call fcn.004010a0
push eax
call dword [0x4a92cc]
lea eax, [ebp - 0x174]
push eax
lea ecx, [ebp - 0xdb0]
push ecx
push 0x5002
call dword [0x4a92c8]
add esp, 0x10
lea edx, [ebp - 0x174]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
inc esi
lea eax, [esi + esi]
add eax, 3
and eax, 0xfffffffc
call fcn.00484560
mov eax, esp
push ebx
push esi
lea ecx, [ebp - 0x174]
push ecx
push eax
call fcn.00401060
mov esi, dword [sym.imp.MSVCR71.dll_wcscpy]
push eax
lea edx, [ebp - 0x994]
push edx
call esi
push 0x104
lea eax, [ebp - 0xb9c]
push eax
push str.BuildInPacks
call fcn.00436b60
push 0x104
lea ecx, [ebp - 0x78c]
push ecx
push str.InstalledPacks
call fcn.00436b60
add esp, 0x20
lea edx, [ebp - 0x37c]
push edx
call dword [0x4ac04c]
push str.LaunchTrialDialog
push eax
call dword [0x4ac038]
lea ecx, [ebp - 0xda0]
push ecx
lea edx, [ebp + 0x10]
push edx
lea ecx, [ebp - 0x78c]
push ecx
lea edx, [ebp - 0xb9c]
push edx
lea ecx, [ebp - 0x994]
push ecx
mov ecx, dword [ebp - 0xda4]
lea edx, [ebp + 0x58]
push edx
mov edx, dword [ebp + 0x78]
push ecx
push edx
call eax
mov eax, dword [ebp - 0xda0]
add esp, 0x20
cmp eax, 0x1f5
jne 0x424475
xor eax, eax
mov word [ebp - 0x70], bx
mov ecx, 0x1f
lea edi, [ebp - 0x6e]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
inc edi
lea eax, [edi + edi]
add eax, 3
and eax, 0xfffffffc
call fcn.00484560
mov eax, esp
push ebx
push edi
lea ecx, [ebp + 0x10]
push ecx
push eax
call fcn.00401060
push eax
lea edx, [ebp - 0x70]
push edx
call esi
mov esi, dword [ebp + 0x74]
lea ecx, [ebp - 0xda8]
push ecx
lea eax, [ebp - 0x70]
push ebx
push 0x421a50
mov dword [ebp - 0xda8], eax
mov dword [ebp - 0xda4], esi
call dword [sym.imp.MSVCR71.dll__beginthread]
mov edx, dword [0x4adb50]
push ebx
push 0x41fa90
push esi
push 0x23a
push edx
call fcn.00433390
add esp, 0x28
jmp 0x4244af
cmp eax, 0x1f6
jne 0x42449e
lea ecx, [ebp - 0x58]
call fcn.00415850
push ebx
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
lea ecx, [ebp - 0x58]
call fcn.004196b0
lea ecx, [ebp - 0x58]
call fcn.00415ae0
jmp 0x4244af
cmp eax, 0x1f7
jne 0x4244af
push 1
call fcn.0041f940
add esp, 4
cmp dword [ebp + 0x7c], 1
jne 0x4244c0
mov eax, dword [ebp + 0x74]
push ebx
push eax
call dword [sym.imp.USER32.dll_EndDialog]
mov dword [0x4ac434], ebx
mov eax, dword [ebp - 0xda0]
lea esp, [ebp - 0xdbc]
mov ecx, dword [ebp + 0x68]
call fcn.00484547
pop edi
pop esi
pop ebx
add ebp, 0x6c
mov esp, ebp
pop ebp
ret