Function at 0x4466f0
Capabilities:
Accept command line arguments
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x25c
mov eax, dword [ebp + 8]
mov dword [0x465e74], eax
call fcn.00445340
mov byte [0x465e70], al
call fcn.00439480
mov byte [ebp - 4], al
movzx ecx, byte [ebp - 4]
test ecx, ecx
jne 0x446722
xor eax, eax
jmp 0x447411
call fcn.00404830
lea ecx, [ebp - 0x70]
call fcn.0040dbc0
lea ecx, [ebp - 0x14]
call fcn.0040dbc0
lea ecx, [ebp - 0x4c]
call fcn.0040dbc0
lea ecx, [ebp - 0x34]
call fcn.0040dbc0
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [ebp - 0x178]
call fcn.0040db70
lea edx, [ebp - 0x14]
push edx
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x178]
push ecx
call fcn.0040d5f0
lea ecx, [ebp - 0x178]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040dbc0
lea edx, [ebp - 0x58]
push edx
call fcn.00410db0
lea ecx, [ebp - 0x14]
call fcn.0040d6f0
mov byte [ebp - 1], 0
push 0x459534
lea ecx, [ebp - 0x14]
call fcn.0040e600
movzx eax, al
test eax, eax
je 0x4467c8
mov byte [ebp - 1], 1
push 2
lea ecx, [ebp - 0x14]
call fcn.0040d4b0
push eax
lea ecx, [ebp - 0x14]
call fcn.0040de30
lea ecx, [ebp - 0x14]
call fcn.0040d6f0
lea ecx, [ebp - 0x40]
call fcn.0040d930
lea ecx, [ebp - 0x40]
push ecx
push str.___InstallEnd__
push str.___Install__UTF_8_
lea ecx, [ebp - 0x58]
call fcn.0040d180
push eax
call fcn.004453e0
movzx edx, al
test edx, edx
jne 0x44684a
movzx eax, byte [ebp - 1]
test eax, eax
jne 0x446805
push str.Cant_load_config_info
call fcn.004458b0
mov dword [ebp - 0xb8], 1
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xb8]
jmp 0x447411
push 0x459568
lea ecx, [ebp - 0x7c]
call fcn.0040db00
lea ecx, [ebp - 0x20]
call fcn.0040dbc0
mov byte [ebp - 2], 1
lea ecx, [ebp - 0x40]
call fcn.0040d410
movzx ecx, al
test ecx, ecx
jne 0x446afe
lea ecx, [ebp - 0x64]
call fcn.0040d030
lea edx, [ebp - 0x64]
push edx
lea eax, [ebp - 0x40]
push eax
call fcn.0040fa60
movzx ecx, al
test ecx, ecx
jne 0x446901
movzx edx, byte [ebp - 1]
test edx, edx
jne 0x4468a4
push str.Config_failed
call fcn.004458b0
mov dword [ebp - 0xbc], 1
lea ecx, [ebp - 0x64]
call fcn.0042cba0
lea ecx, [ebp - 0x20]
call fcn.0040d110
lea ecx, [ebp - 0x7c]
call fcn.0040d110
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xbc]
jmp 0x447411
push str.Title
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0x160]
push ecx
call fcn.0040fe60
push str.BeginPrompt
lea edx, [ebp - 0x64]
push edx
lea eax, [ebp - 0xfc]
push eax
call fcn.0040fe60
push 0x45959c
lea ecx, [ebp - 0x64]
push ecx
lea edx, [ebp - 0x154]
push edx
call fcn.0040fe60
push 0x4595a8
lea ecx, [ebp - 0x154]
call fcn.00410610
movzx eax, al
test eax, eax
je 0x44695b
mov byte [ebp - 2], 0
push str.Directory
lea ecx, [ebp - 0x64]
push ecx
call fcn.0040f930
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0
jl 0x446993
mov edx, dword [ebp - 0x90]
push edx
lea ecx, [ebp - 0x64]
call fcn.0040d140
add eax, 0xc
push eax
lea ecx, [ebp - 0x7c]
call fcn.0040dcb0
lea ecx, [ebp - 0xfc]
call fcn.0040d410
movzx eax, al
test eax, eax
jne 0x446a5a
movzx ecx, byte [ebp - 1]
test ecx, ecx
jne 0x446a5a
push 0x24
lea ecx, [ebp - 0x160]
call fcn.0040d180
push eax
lea ecx, [ebp - 0xfc]
call fcn.0040d180
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
je 0x446a5a
mov dword [ebp - 0xc0], 0
lea ecx, [ebp - 0x154]
call fcn.0040d110
lea ecx, [ebp - 0xfc]
call fcn.0040d110
lea ecx, [ebp - 0x160]
call fcn.0040d110
lea ecx, [ebp - 0x64]
call fcn.0042cba0
lea ecx, [ebp - 0x20]
call fcn.0040d110
lea ecx, [ebp - 0x7c]
call fcn.0040d110
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xc0]
jmp 0x447411
push str.RunProgram
lea edx, [ebp - 0x64]
push edx
lea eax, [ebp - 0x1dc]
push eax
call fcn.0040fe60
push eax
lea ecx, [ebp - 0x20]
call fcn.0040dcb0
lea ecx, [ebp - 0x1dc]
call fcn.0040d110
push str.ExecuteFile
lea ecx, [ebp - 0x64]
push ecx
lea edx, [ebp - 0x1e8]
push edx
call fcn.0040fe60
push eax
lea ecx, [ebp - 0x4c]
call fcn.0040dcb0
lea ecx, [ebp - 0x1e8]
call fcn.0040d110
push str.ExecuteParameters
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0x1f4]
push ecx
call fcn.0040fe60
push eax
lea ecx, [ebp - 0x34]
call fcn.0040dcb0
lea ecx, [ebp - 0x1f4]
call fcn.0040d110
lea ecx, [ebp - 0x154]
call fcn.0040d110
lea ecx, [ebp - 0xfc]
call fcn.0040d110
lea ecx, [ebp - 0x160]
call fcn.0040d110
lea ecx, [ebp - 0x64]
call fcn.0042cba0
lea ecx, [ebp - 0xa8]
call fcn.004343f0
mov edx, dword [0x4594c4]
push edx
lea ecx, [ebp - 0xa8]
call fcn.004113d0
movzx eax, al
test eax, eax
jne 0x446b94
movzx ecx, byte [ebp - 1]
test ecx, ecx
jne 0x446b34
push str.Cannot_create_temp_folder_archive
call fcn.004458b0
mov dword [ebp - 0xc4], 1
lea ecx, [ebp - 0xa8]
call fcn.004347a0
lea ecx, [ebp - 0x20]
call fcn.0040d110
lea ecx, [ebp - 0x7c]
call fcn.0040d110
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xc4]
jmp 0x447411
push 0x18
call fcn.00447658
add esp, 4
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 0
je 0x446bc0
mov ecx, dword [ebp - 0x94]
call fcn.00434300
mov dword [ebp - 0x98], eax
jmp 0x446bca
mov dword [ebp - 0x98], 0
mov edx, dword [ebp - 0x98]
mov dword [ebp - 0xc8], edx
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x80], eax
mov ecx, dword [ebp - 0x80]
push ecx
lea ecx, [ebp - 8]
call fcn.00415dc0
mov ecx, dword [ebp - 0x80]
call fcn.0042cfd0
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0
je 0x446c74
push str.Cannot_load_codecs
call fcn.004458b0
mov dword [ebp - 0xd0], 1
lea ecx, [ebp - 8]
call fcn.004163f0
lea ecx, [ebp - 0xa8]
call fcn.004347a0
lea ecx, [ebp - 0x20]
call fcn.0040d110
lea ecx, [ebp - 0x7c]
call fcn.0040d110
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xd0]
jmp 0x447411
lea ecx, [ebp - 0xa8]
call fcn.00444e10
push eax
lea ecx, [ebp - 0x8c]
call fcn.0040dac0
mov byte [ebp - 3], 0
lea ecx, [ebp - 0xb4]
call fcn.0040dbc0
lea edx, [ebp - 0xb4]
push edx
lea eax, [ebp - 3]
push eax
movzx ecx, byte [ebp - 2]
push ecx
lea edx, [ebp - 0x8c]
push edx
lea eax, [ebp - 0x58]
push eax
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.00432e20
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x446df1
movzx edx, byte [ebp - 1]
test edx, edx
jne 0x446d73
cmp dword [ebp - 0x24], 1
je 0x446ce5
movzx eax, byte [ebp - 3]
test eax, eax
je 0x446cfa
lea ecx, [ebp - 0xb4]
push ecx
push 8
call fcn.004157e0
mov dword [ebp - 0x24], 0x80004005
cmp dword [ebp - 0x24], 0x80004004
je 0x446d73
lea ecx, [ebp - 0xb4]
call fcn.0040d410
movzx edx, al
test edx, edx
je 0x446d3c
mov eax, dword [ebp - 0x24]
push eax
lea ecx, [ebp - 0x200]
push ecx
call fcn.004453b0
push eax
lea ecx, [ebp - 0xb4]
call fcn.0040dcb0
lea ecx, [ebp - 0x200]
call fcn.0040d110
push 0x10
push 7
lea edx, [ebp - 0x20c]
push edx
call fcn.00415630
mov ecx, eax
call fcn.0040d180
push eax
lea ecx, [ebp - 0xb4]
call fcn.0040d180
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [ebp - 0x20c]
call fcn.0040d110
mov dword [ebp - 0xf0], 1
lea ecx, [ebp - 0xb4]
call fcn.0040d110
lea ecx, [ebp - 0x8c]
call fcn.0040d110
lea ecx, [ebp - 8]
call fcn.004163f0
lea ecx, [ebp - 0xa8]
call fcn.004347a0
lea ecx, [ebp - 0x20]
call fcn.0040d110
lea ecx, [ebp - 0x7c]
call fcn.0040d110
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xf0]
jmp 0x447411
lea ecx, [ebp - 0xb4]
call fcn.0040d110
lea ecx, [ebp - 0x118]
call fcn.00434350
lea ecx, [ebp - 0x8c]
call fcn.0040d180
push eax
call fcn.00412660
movzx eax, al
test eax, eax
jne 0x446e9d
mov dword [ebp - 0xe8], 1
lea ecx, [ebp - 0x118]
call fcn.00434700
lea ecx, [ebp - 0x8c]
call fcn.0040d110
lea ecx, [ebp - 8]
call fcn.004163f0
lea ecx, [ebp - 0xa8]
call fcn.004347a0
lea ecx, [ebp - 0x20]
call fcn.0040d110
lea ecx, [ebp - 0x7c]
call fcn.0040d110
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xe8]
jmp 0x447411
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x4c]
call fcn.0040d410
movzx ecx, al
test ecx, ecx
jne 0x447070
lea edx, [ebp - 0x4c]
push edx
lea eax, [ebp - 0x124]
push eax
call fcn.00444f90
mov dword [ebp - 0x1c0], 0x3c
mov dword [ebp - 0x1bc], 0x140
mov dword [ebp - 0x1b8], 0
mov dword [ebp - 0x1b4], 0
lea ecx, [ebp - 0x124]
call fcn.0040d180
mov dword [ebp - 0x1b0], eax
lea ecx, [ebp - 0x14]
call fcn.0040d410
movzx ecx, al
test ecx, ecx
jne 0x446f23
lea ecx, [ebp - 0x34]
call fcn.0040e1e0
lea edx, [ebp - 0x14]
push edx
lea ecx, [ebp - 0x34]
call fcn.0040e030
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0x108]
push ecx
call fcn.00444f90
lea ecx, [ebp - 0x108]
call fcn.0040d410
movzx edx, al
test edx, edx
je 0x446f51
mov dword [ebp - 0x1ac], 0
jmp 0x446f62
lea ecx, [ebp - 0x108]
call fcn.0040d180
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a4], 1
mov dword [ebp - 0x188], 0
lea eax, [ebp - 0x1c0]
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteExA]
mov ecx, dword [ebp - 0x1a0]
mov dword [ebp - 0xe4], ecx
cmp dword [ebp - 0xe4], 0x20
ja 0x44704c
movzx edx, byte [ebp - 1]
test edx, edx
jne 0x446fb8
push str.Cannot_open_file
call fcn.004458b0
mov dword [ebp - 0xe0], 1
lea ecx, [ebp - 0x108]
call fcn.0040d110
lea ecx, [ebp - 0x124]
call fcn.0040d110
lea ecx, [ebp - 0x118]
call fcn.00434700
lea ecx, [ebp - 0x8c]
call fcn.0040d110
lea ecx, [ebp - 8]
call fcn.004163f0
lea ecx, [ebp - 0xa8]
call fcn.004347a0
lea ecx, [ebp - 0x20]
call fcn.0040d110
lea ecx, [ebp - 0x7c]
call fcn.0040d110
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xe0]
jmp 0x447411
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x108]
call fcn.0040d110
lea ecx, [ebp - 0x124]
call fcn.0040d110
jmp 0x44737c
lea ecx, [ebp - 0x20]
call fcn.0040d410
movzx ecx, al
test ecx, ecx
je 0x447139
push str.setup.exe
lea ecx, [ebp - 0x20]
call fcn.0040de30
lea ecx, [ebp - 0x20]
call fcn.0040d180
push eax
call fcn.00412c10
movzx edx, al
test edx, edx
jne 0x447139
movzx eax, byte [ebp - 1]
test eax, eax
jne 0x4470bb
push str.Cannot_find_setup.exe
call fcn.004458b0
mov dword [ebp - 0xec], 1
lea ecx, [ebp - 0x118]
call fcn.00434700
lea ecx, [ebp - 0x8c]
call fcn.0040d110
lea ecx, [ebp - 8]
call fcn.004163f0
lea ecx, [ebp - 0xa8]
call fcn.004347a0
lea ecx, [ebp - 0x20]
call fcn.0040d110
lea ecx, [ebp - 0x7c]
call fcn.0040d110
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xec]
jmp 0x447411
lea ecx, [ebp - 0x8c]
push ecx
lea ecx, [ebp - 0x130]
call fcn.0040dac0
lea edx, [ebp - 0x130]
push edx
call fcn.00414f00
push str.__T_
lea ecx, [ebp - 0x184]
call fcn.0040db70
lea eax, [ebp - 0x130]
push eax
lea ecx, [ebp - 0x184]
push ecx
lea ecx, [ebp - 0x20]
call fcn.0040eab0
lea ecx, [ebp - 0x184]
call fcn.0040d110
lea ecx, [ebp - 0x130]
call fcn.0040d110
lea edx, [ebp - 0x20]
push edx
lea ecx, [ebp - 0x148]
call fcn.0040dac0
push 0x4596c4
lea ecx, [ebp - 0x16c]
call fcn.0040db70
lea eax, [ebp - 0x8c]
push eax
lea ecx, [ebp - 0x16c]
push ecx
lea ecx, [ebp - 0x20]
call fcn.0040eab0
lea ecx, [ebp - 0x16c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d410
movzx edx, al
test edx, edx
jne 0x4471f6
lea ecx, [ebp - 0x20]
call fcn.0040e1c0
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x20]
call fcn.0040e030
mov dword [ebp - 0x25c], 0x44
mov dword [ebp - 0x258], 0
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x230], 0
xor ecx, ecx
mov word [ebp - 0x22a], cx
mov dword [ebp - 0x228], 0
lea edx, [ebp - 0x20]
push edx
lea eax, [ebp - 0x7c]
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.0040df30
push eax
lea edx, [ebp - 0x13c]
push edx
call fcn.00444f90
lea ecx, [ebp - 0x218]
call fcn.0040d110
lea eax, [ebp - 0x1d0]
push eax
lea ecx, [ebp - 0x25c]
push ecx
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x13c]
call fcn.0040d180
push eax
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 0
jne 0x447350
movzx edx, byte [ebp - 1]
test edx, edx
jne 0x4472bc
lea eax, [ebp - 0x148]
push eax
call fcn.004458d0
mov dword [ebp - 0xd8], 1
lea ecx, [ebp - 0x13c]
call fcn.0040d110
lea ecx, [ebp - 0x148]
call fcn.0040d110
lea ecx, [ebp - 0x118]
call fcn.00434700
lea ecx, [ebp - 0x8c]
call fcn.0040d110
lea ecx, [ebp - 8]
call fcn.004163f0
lea ecx, [ebp - 0xa8]
call fcn.004347a0
lea ecx, [ebp - 0x20]
call fcn.0040d110
lea ecx, [ebp - 0x7c]
call fcn.0040d110
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xd8]
jmp 0x447411
mov ecx, dword [ebp - 0x1cc]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x1d0]
mov dword [ebp - 0x28], edx
lea ecx, [ebp - 0x13c]
call fcn.0040d110
lea ecx, [ebp - 0x148]
call fcn.0040d110
cmp dword [ebp - 0x28], 0
je 0x447398
push 0xffffffffffffffff
mov eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [ebp - 0x28]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xd4], 0
lea ecx, [ebp - 0x118]
call fcn.00434700
lea ecx, [ebp - 0x8c]
call fcn.0040d110
lea ecx, [ebp - 8]
call fcn.004163f0
lea ecx, [ebp - 0xa8]
call fcn.004347a0
lea ecx, [ebp - 0x20]
call fcn.0040d110
lea ecx, [ebp - 0x7c]
call fcn.0040d110
lea ecx, [ebp - 0x40]
call fcn.0040d110
lea ecx, [ebp - 0x58]
call fcn.0040d110
lea ecx, [ebp - 0x34]
call fcn.0040d110
lea ecx, [ebp - 0x4c]
call fcn.0040d110
lea ecx, [ebp - 0x14]
call fcn.0040d110
lea ecx, [ebp - 0x70]
call fcn.0040d110
mov eax, dword [ebp - 0xd4]
mov esp, ebp
pop ebp
ret 0x10