Function at 0x4064e3
Capabilities:
Get common file path
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x378
push ebx
push esi
push edi
mov dword [ebp - 0x12c], 0
mov eax, dword [ebp + 8]
mov dword [0x413a44], eax
mov eax, dword [ebp + 8]
mov dword [0x413838], eax
lea eax, [ebp - 0x110]
push eax
push 0x100
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
movsx eax, byte [ebp + eax - 0x111]
cmp eax, 0x5c
je 0x406557
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
movsx eax, byte [ebp + eax - 0x111]
cmp eax, 0x2f
jne 0x406578
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp - 0x378], eax
mov eax, dword [ebp - 0x378]
mov byte [ebp + eax - 0x111], 0
lea eax, [ebp - 0x110]
push eax
call fcn.0040ec20
add esp, 4
push 0x105
push 0
push 0x413730
call fcn.00408e50
add esp, 0xc
push 0x413730
push 0
push 0x4115d0
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_GetTempFileNameA]
push 0x5c
push 0x413730
call fcn.00409120
add esp, 8
mov dword [ebp - 0x24c], eax
cmp dword [ebp - 0x24c], 0
je 0x4065f9
mov eax, dword [ebp - 0x24c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
mov eax, dword [ebp - 0x24c]
inc eax
push eax
push 0x413730
call fcn.00409420
add esp, 0xc
push 0x4115d4
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x118], eax
xor eax, eax
mov al, byte [ebp - 0x118]
mov dword [0x4135c0], eax
xor eax, eax
mov al, byte [ebp - 0x117]
mov dword [0x413a40], eax
push 0x4115d8
call fcn.00409380
add esp, 4
mov dword [ebp - 0x128], eax
cmp dword [ebp - 0x128], 0
je 0x4066a4
push 0x4115dc
mov eax, dword [ebp - 0x128]
push eax
call fcn.00409300
add esp, 8
test eax, eax
je 0x4066a4
mov dword [0x4115c8], 1
mov dword [0x4133a0], 7
mov dword [0x4134b4], 4
or dword [0x4108e8], 0x100
and dword [0x4108e8], 0xffffff7f
jmp 0x406713
cmp dword [0x4135c0], 4
jge 0x4066eb
cmp dword [0x413a40], 0x32
jge 0x4066eb
mov dword [0x4133a0], 3
mov dword [0x4134b4], 1
or dword [0x4108e8], 0x80
and dword [0x4108e8], 0xfffffeff
jmp 0x406713
mov dword [0x4133a0], 7
mov dword [0x4134b4], 4
or dword [0x4108e8], 0x100
and dword [0x4108e8], 0xffffff7f
push str.WSInstal
push 0x4136d0
call fcn.00408f30
add esp, 8
cmp dword [ebp + 0xc], 0
jne 0x40682e
push 0x28
push 0
lea eax, [ebp - 0x374]
push eax
call fcn.00408e50
add esp, 0xc
mov dword [ebp - 0x374], 0x200b
mov dword [ebp - 0x370], 0x406a45
mov dword [ebp - 0x36c], 0
mov dword [ebp - 0x368], 0
mov eax, dword [0x413a44]
mov dword [ebp - 0x364], eax
push str.APP_MAIN
mov eax, dword [0x413a44]
push eax
call dword [sym.imp.USER32.dll_LoadIconA]
mov dword [ebp - 0x360], eax
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [ebp - 0x35c], eax
push 0x808000
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x354], 0
mov dword [ebp - 0x350], 0x4136d0
lea eax, [ebp - 0x374]
push eax
call dword [sym.imp.USER32.dll_RegisterClassA]
movzx eax, ax
test eax, eax
jne 0x40682e
cmp dword [ebp - 0x12c], 0
je 0x4067f8
mov eax, dword [ebp - 0x12c]
push eax
call fcn.0040308b
add esp, 4
push 0x100
lea eax, [ebp - 0x248]
push eax
push 0x273a
call section..text
add esp, 0xc
push 0x30
push 0
lea eax, [ebp - 0x248]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, 0xffffffff
jmp 0x406a3e
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
mov ecx, 5
cdq
idiv ecx
mov dword [ebp - 0x114], eax
shl dword [ebp - 0x114], 2
cmp dword [ebp - 0x114], 0x258
jge 0x406874
mov dword [ebp - 0x114], 0x258
mov eax, dword [ebp - 4]
sub eax, dword [ebp - 0xc]
mov ecx, 5
cdq
idiv ecx
mov dword [ebp - 0x11c], eax
shl dword [ebp - 0x11c], 2
cmp dword [ebp - 0x11c], 0x190
jge 0x4068a9
mov dword [ebp - 0x11c], 0x190
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x114]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 4]
sub eax, dword [ebp - 0x11c]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x124], eax
push 0
mov eax, dword [0x413a44]
push eax
push 0
push 0
mov eax, dword [ebp - 0x11c]
push eax
mov eax, dword [ebp - 0x114]
push eax
mov eax, dword [ebp - 0x124]
push eax
mov eax, dword [ebp - 0x120]
push eax
push 0x2c80000
push str.WS_FTP_Limited_Edition_Install__32_
push 0x4136d0
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x4134b0], eax
cmp dword [0x4134b0], 0
jne 0x406976
cmp dword [ebp - 0x12c], 0
je 0x406940
mov eax, dword [ebp - 0x12c]
push eax
call fcn.0040308b
add esp, 4
push 0x100
lea eax, [ebp - 0x248]
push eax
push 0x273b
call section..text
add esp, 0xc
push 0x30
push 0
lea eax, [ebp - 0x248]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, 2
jmp 0x406a3e
push 1
mov eax, dword [0x4134b0]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
cmp dword [ebp - 0x12c], 0
je 0x4069a0
mov eax, dword [ebp - 0x12c]
push eax
call fcn.0040308b
add esp, 4
push 0
push 0x64
push 0x111
mov eax, dword [0x4134b0]
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
push 0
push 0
push 0
lea eax, [ebp - 0x148]
push eax
call dword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
je 0x406a17
cmp dword [0x4115bc], 0
je 0x4069f8
lea eax, [ebp - 0x148]
push eax
mov eax, dword [0x4115bc]
push eax
call dword [sym.imp.USER32.dll_IsDialogMessageA]
test eax, eax
jne 0x406a12
lea eax, [ebp - 0x148]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x148]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
jmp 0x4069b5
cmp dword [ebp - 0x12c], 0
je 0x406a33
mov eax, dword [ebp - 0x12c]
push eax
call fcn.0040308b
add esp, 4
mov eax, dword [ebp - 0x140]
jmp 0x406a3e
pop edi
pop esi
pop ebx
leave
ret 0x10