Function at 0x401230
Capabilities:
Create directory
Create process on windows
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2aac
call fcn.0040fd70
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push edi
lea eax, [ebp - 0x414]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatW]
lea eax, [ebp - 0x414]
push str.newdownloader
push eax
call edi
push 0
lea eax, [ebp - 0x414]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0x20c]
push eax
call ebx
push str._res
lea eax, [ebp - 0x20c]
push eax
call edi
push 0
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x824]
push eax
call ebx
push str._back.png
lea eax, [ebp - 0x824]
push eax
call edi
push 0x66
mov edx, str.back.png
lea ecx, [ebp - 0x824]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0xa2c]
push eax
call ebx
push str._browse.png
lea eax, [ebp - 0xa2c]
push eax
call edi
push 0x67
mov edx, str.browse.png
lea ecx, [ebp - 0xa2c]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0xc34]
push eax
call ebx
push 0x415054
lea eax, [ebp - 0xc34]
push eax
call edi
push 0x68
mov edx, str.closebtn.png
lea ecx, [ebp - 0xc34]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0xe3c]
push eax
call ebx
push 0x41508c
lea eax, [ebp - 0xe3c]
push eax
call edi
push 0x69
mov edx, str.custominstl.png
lea ecx, [ebp - 0xe3c]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x1044]
push eax
call ebx
push 0x4150d0
lea eax, [ebp - 0x1044]
push eax
call edi
push 0x6a
mov edx, str.downloadbg.png
lea ecx, [ebp - 0x1044]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x124c]
push eax
call ebx
push 0x415110
lea eax, [ebp - 0x124c]
push eax
call edi
push 0x6b
mov edx, str.downloadbg2x.png
lea ecx, [ebp - 0x124c]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x1454]
push eax
call ebx
push 0x415158
lea eax, [ebp - 0x1454]
push eax
call edi
push 0x6c
mov edx, str.inputpath.png
lea ecx, [ebp - 0x1454]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x165c]
push eax
call ebx
push 0x415194
lea eax, [ebp - 0x165c]
push eax
call edi
push 0x6d
mov edx, 0x4151b4
lea ecx, [ebp - 0x165c]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x1864]
push eax
call ebx
push 0x4151d4
lea eax, [ebp - 0x1864]
push eax
call edi
push 0x6e
mov edx, 0x4151f8
lea ecx, [ebp - 0x1864]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x1a6c]
push eax
call ebx
push 0x41521c
lea eax, [ebp - 0x1a6c]
push eax
call edi
push 0x6f
mov edx, str.minbtn.png
lea ecx, [ebp - 0x1a6c]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x1c74]
push eax
call ebx
push str._scrollbar_background.png
lea eax, [ebp - 0x1c74]
push eax
call edi
push 0x70
mov edx, str.scrollbar_background.png
lea ecx, [ebp - 0x1c74]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x1e7c]
push eax
call ebx
push str._scrollbar_foreground.png
lea eax, [ebp - 0x1e7c]
push eax
call edi
push 0x71
mov edx, str.scrollbar_foreground.png
lea ecx, [ebp - 0x1e7c]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x2084]
push eax
call ebx
push 0x41531c
lea eax, [ebp - 0x2084]
push eax
call edi
push 0x72
mov edx, str.userProtocolcheck1.png
lea ecx, [ebp - 0x2084]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x228c]
push eax
call ebx
push 0x41537c
lea eax, [ebp - 0x228c]
push eax
call edi
push 0x73
mov edx, str.userProtocolcheck2.png
lea ecx, [ebp - 0x228c]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x2494]
push eax
call ebx
push str._autoruncheck1_pic.png
lea eax, [ebp - 0x2494]
push eax
call edi
push 0x77
mov edx, str.autoruncheck1_pic.png
lea ecx, [ebp - 0x2494]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x269c]
push eax
call ebx
push str._autoruncheck2_pic.png
lea eax, [ebp - 0x269c]
push eax
call edi
push 0x78
mov edx, str.autoruncheck2_pic.png
lea ecx, [ebp - 0x269c]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x28a4]
push eax
call ebx
push 0x415494
lea eax, [ebp - 0x28a4]
push eax
call edi
push 0x74
mov edx, str.wnd_icon.ico
lea ecx, [ebp - 0x28a4]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0x61c]
push eax
call ebx
push str._newdownloader.exe
lea eax, [ebp - 0x61c]
push eax
call edi
push 0x75
mov edx, str.newdownloader.exe
lea ecx, [ebp - 0x61c]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0x2aac]
push eax
call ebx
push 0x415518
lea eax, [ebp - 0x2aac]
push eax
call edi
push 0x76
mov edx, str.newdownloader.ini
lea ecx, [ebp - 0x2aac]
call fcn.004010b0
add esp, 4
test eax, eax
je 0x40173d
push 1
lea eax, [ebp - 0x414]
push eax
push 0
lea eax, [ebp - 0x61c]
push eax
push str.runas
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
pop edi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00401754
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
xor ecx, ebp
pop ebx
call fcn.00401754
mov esp, ebp
pop ebp
ret 0x10