Function at 0x4446c0
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 [0x463ed0], eax
call fcn.00443330
mov byte [0x463ed4], al
call fcn.00437e00
mov byte [ebp - 4], al
movzx ecx, byte [ebp - 4]
test ecx, ecx
jne 0x4446f2
xor eax, eax
jmp 0x4453e1
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 0x457540
lea ecx, [ebp - 0x14]
call fcn.0040e600
movzx eax, al
test eax, eax
je 0x444798
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 0x461094
lea ecx, [ebp - 0x58]
call fcn.0040d180
push eax
call fcn.004433d0
movzx edx, al
test edx, edx
jne 0x44481a
movzx eax, byte [ebp - 1]
test eax, eax
jne 0x4447d5
push str.Cant_load_config_info
call fcn.00443880
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 0x4453e1
push 0x457574
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 0x444ace
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 0x4448d1
movzx edx, byte [ebp - 1]
test edx, edx
jne 0x444874
push str.Config_failed
call fcn.00443880
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 0x4453e1
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 0x4575a8
lea ecx, [ebp - 0x64]
push ecx
lea edx, [ebp - 0x154]
push edx
call fcn.0040fe60
push 0x4575b4
lea ecx, [ebp - 0x154]
call fcn.00410610
movzx eax, al
test eax, eax
je 0x44492b
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 0x444963
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 0x444a2a
movzx ecx, byte [ebp - 1]
test ecx, ecx
jne 0x444a2a
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 0x444a2a
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 0x4453e1
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 [0x4570fc]
push edx
lea ecx, [ebp - 0xa8]
call fcn.004113d0
movzx eax, al
test eax, eax
jne 0x444b64
movzx ecx, byte [ebp - 1]
test ecx, ecx
jne 0x444b04
push str.Cannot_create_temp_folder_archive
call fcn.00443880
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 0x4453e1
push 0x18
call fcn.00445628
add esp, 4
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 0
je 0x444b90
mov ecx, dword [ebp - 0x94]
call fcn.00434300
mov dword [ebp - 0x98], eax
jmp 0x444b9a
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 0x444c44
push str.Cannot_load_codecs
call fcn.00443880
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 0x4453e1
lea ecx, [ebp - 0xa8]
call fcn.00442e00
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.00432eb0
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x444dc1
movzx edx, byte [ebp - 1]
test edx, edx
jne 0x444d43
cmp dword [ebp - 0x24], 1
je 0x444cb5
movzx eax, byte [ebp - 3]
test eax, eax
je 0x444cca
lea ecx, [ebp - 0xb4]
push ecx
push 8
call fcn.004157e0
mov dword [ebp - 0x24], 0x80004005
cmp dword [ebp - 0x24], 0x80004004
je 0x444d43
lea ecx, [ebp - 0xb4]
call fcn.0040d410
movzx edx, al
test edx, edx
je 0x444d0c
mov eax, dword [ebp - 0x24]
push eax
lea ecx, [ebp - 0x200]
push ecx
call fcn.004433a0
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 0x4453e1
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 0x444e6d
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 0x4453e1
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x4c]
call fcn.0040d410
movzx ecx, al
test ecx, ecx
jne 0x445040
lea edx, [ebp - 0x4c]
push edx
lea eax, [ebp - 0x124]
push eax
call fcn.00442f80
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 0x444ef3
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.00442f80
lea ecx, [ebp - 0x108]
call fcn.0040d410
movzx edx, al
test edx, edx
je 0x444f21
mov dword [ebp - 0x1ac], 0
jmp 0x444f32
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 0x44501c
movzx edx, byte [ebp - 1]
test edx, edx
jne 0x444f88
push str.Cannot_open_file
call fcn.00443880
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 0x4453e1
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 0x44534c
lea ecx, [ebp - 0x20]
call fcn.0040d410
movzx ecx, al
test ecx, ecx
je 0x445109
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 0x445109
movzx eax, byte [ebp - 1]
test eax, eax
jne 0x44508b
push str.Cannot_find_setup.exe
call fcn.00443880
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 0x4453e1
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 0x4576cc
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 0x4451c6
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.00442f80
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 0x445320
movzx edx, byte [ebp - 1]
test edx, edx
jne 0x44528c
lea eax, [ebp - 0x148]
push eax
call fcn.004438a0
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 0x4453e1
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 0x445368
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