Function at 0x424ed0
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x218
mov eax, dword [0x527494]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [ebp + 0x10]
push edi
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
push 0
push 0
push 0
push 0
call dword [sym.imp.USER32.dll_DefWindowProcW]
lea eax, [ebp - 0x214]
mov dword [ebp - 0x214], 8
push eax
mov dword [ebp - 0x210], 4
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
push 0x4f2f5c
push 0
call fcn.0049c6a5
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
push 0x4f2f60
call fcn.00428420
add esp, 8
mov ecx, 0x52a940
push 0
push dword [0x52a91c]
push 0
call fcn.00421cf0
lea ecx, [ebp - 0x218]
call fcn.00409ba0
call fcn.00421b80
mov ecx, eax
call fcn.0045b9d0
mov eax, dword [0x52a9bc]
test al, 1
jne 0x424f95
or eax, 1
mov ecx, 0x52a9b8
mov dword [0x52a9bc], eax
call fcn.0042e070
push 0x4eddb0
call fcn.0046263c
add esp, 4
mov ecx, 0x52a9b8
call fcn.0042e0c0
push esi
call fcn.00421af0
mov ecx, eax
call fcn.0041b2c0
push esi
push str.lpstrCmdLine_s
call fcn.00428420
add esp, 8
call fcn.00421af0
mov ecx, eax
call fcn.0041bc70
push eax
call fcn.0042d9c0
mov ecx, 0x52a97c
call fcn.0040a2d0
test eax, eax
jne 0x424ffa
push str.CheckSingleInstance_failed__exit
call fcn.00428420
add esp, 4
push 0
push 0x4f2fec
push 0
call fcn.0042d9d0
jmp 0x425147
call fcn.004213a0
test eax, eax
jne 0x425014
push eax
push 0x4f3008
push eax
call fcn.0042d9d0
jmp 0x425147
call fcn.00421af0
mov ecx, eax
call fcn.0041af10
push eax
call fcn.00417150
mov ecx, eax
call fcn.00412a70
push 0x4f0ff8
call fcn.00417150
mov ecx, eax
call fcn.00412b30
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.0046f230
add esp, 0xc
lea eax, [ebp - 0x20c]
push 0x104
push eax
push dword [0x52a91c]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x20c]
push eax
call fcn.00417150
mov ecx, eax
call fcn.004129e0
sub esp, 0x28
mov eax, esp
mov dword [eax + 0x24], 0
mov ecx, dword [0x52a918]
test ecx, ecx
jne 0x4250e1
push 0x525e2c
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [0x52a918], 0
jne 0x4250d0
push 0x20
call fcn.0042ea10
add esp, 4
test eax, eax
je 0x4250c2
mov ecx, eax
call fcn.00411a20
mov ecx, eax
jmp 0x4250c4
xor ecx, ecx
xchg dword [ebp - 0x210], eax
mov dword [0x52a918], ecx
push 0x525e2c
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [0x52a918]
push 0
push 0
push str.install_1
call fcn.00412620
call fcn.00421e20
test eax, eax
jne 0x42510f
mov ecx, 0x52a97c
call fcn.0040a910
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x425147
call fcn.004224e0
test eax, eax
jne 0x42513b
sub esp, 0x28
mov eax, esp
push 0
push 0
push str.install_file_fail
mov dword [eax + 0x24], 0
call fcn.00417150
mov ecx, eax
call fcn.00412620
jmp 0x425147
push dword [ebp + 0x14]
push esi
call fcn.00423bd0
add esp, 8
mov eax, dword [0x52a9bc]
test al, 1
jne 0x42516f
or eax, 1
mov ecx, 0x52a9b8
mov dword [0x52a9bc], eax
call fcn.0042e070
push 0x4eddb0
call fcn.0046263c
add esp, 4
mov ecx, 0x52a9b8
call fcn.0042e4b0
call fcn.00421b80
mov ecx, eax
call fcn.0045bb40
call fcn.00421c10
mov ecx, eax
call fcn.00426d30
mov ecx, 0x52a97c
call fcn.0040a910
mov edi, dword [0x52a92c]
add edi, 0x10
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov esi, dword [0x52a978]
test esi, esi
je 0x4251fd
cmp dword [esi + 4], 0
jle 0x4251cb
mov eax, dword [esi]
push dword [eax]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov esi, dword [0x52a978]
test esi, esi
je 0x4251fd
mov eax, dword [esi]
test eax, eax
je 0x4251e4
push eax
call fcn.0048a965
add esp, 4
mov dword [esi], 0
push 0xc
push esi
mov dword [esi + 4], 0
mov dword [esi + 8], 0
call fcn.00462233
add esp, 8
push edi
mov dword [0x52a978], 0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [0x52a974]
test esi, esi
je 0x425256
mov eax, dword [esi]
test eax, eax
je 0x42522d
push eax
call fcn.0048a965
add esp, 4
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x425244
push eax
call fcn.0048a965
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
mov dword [esi + 8], 0
call fcn.00462233
add esp, 8
mov esi, dword [0x52a96c]
test esi, esi
je 0x425288
cmp dword [esi], 0
je 0x425288
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x425272
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [esi + 0x20]
push 0
mov dword [esi + 0x10], 0
call eax
add esi, 0x24
cmp dword [esi], 0
jne 0x425265
mov esi, dword [0x526088]
mov ecx, dword [0x52608c]
cmp esi, ecx
jae 0x4252b2
mov eax, dword [esi]
test eax, eax
je 0x4252ab
mov eax, dword [eax + 0x1c]
push 0
call eax
mov ecx, dword [0x52608c]
add esi, 4
cmp esi, ecx
jb 0x425298
mov ecx, 0x52a940
call fcn.004240a0
call dword [sym.imp.ole32.dll_CoUninitialize]
lea ecx, [ebp - 0x218]
call fcn.00409be0
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
xor ecx, ebp
pop esi
call fcn.004621f8
mov esp, ebp
pop ebp
ret 0x10