Function at 0x4260b0
Capabilities:
Accept command line arguments
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x218
mov eax, dword [0x53451c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 0x10]
push esi
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 0x4fdfe4
push 0
call fcn.004a5ef8
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
push 0x4fdfe8
call fcn.0042a3c0
add esp, 8
mov ecx, 0x537978
push 0
push dword [0x53795c]
push 0
call fcn.00422ce0
lea ecx, [ebp - 0x218]
call fcn.0040aa90
call fcn.00422b70
mov ecx, eax
call fcn.00464f70
mov eax, dword [0x5379fc]
test al, 1
jne 0x426176
or eax, 1
mov ecx, 0x5379f8
mov dword [0x5379fc], eax
call fcn.004314f0
push 0x4f81d0
call fcn.0046becc
add esp, 4
mov ecx, 0x5379f8
call fcn.00431540
push ebx
call fcn.00422ae0
mov ecx, eax
call fcn.0041c2f0
push ebx
push str.lpstrCmdLine_s
call fcn.0042a3c0
add esp, 8
call fcn.00422ae0
mov ecx, eax
call fcn.0041d0e0
push eax
call fcn.00430de0
mov ecx, 0x5379b4
call fcn.0040b1c0
mov esi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test eax, eax
jne 0x4261e9
push str.CheckSingleInstance_failed__exit
call fcn.0042a3c0
add esp, 4
push 0
push 0
push 0x4fe074
push 0
call fcn.00430fe0
jmp 0x426427
call fcn.00422390
test eax, eax
jne 0x426204
push eax
push eax
push 0x4fe090
push eax
call fcn.00430fe0
jmp 0x426427
call fcn.00422ae0
mov ecx, eax
call fcn.0041bf40
push eax
call fcn.00418020
mov ecx, eax
call fcn.00413940
push 0x4fc03c
call fcn.00418020
mov ecx, eax
call fcn.00413a00
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.00478a90
add esp, 0xc
lea eax, [ebp - 0x20c]
push 0x104
push eax
push dword [0x53795c]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x20c]
push eax
call fcn.00418020
mov ecx, eax
call fcn.004138b0
mov ecx, dword [0x5379f4]
test ecx, ecx
jne 0x4262bd
push 0x5331c0
call esi
cmp dword [0x5379f4], 0
jne 0x4262b0
push 0x60
call fcn.00433270
add esp, 4
test eax, eax
je 0x4262a2
mov ecx, eax
call fcn.0041b900
mov ecx, eax
jmp 0x4262a4
xor ecx, ecx
xchg dword [ebp - 0x210], eax
mov dword [0x5379f4], ecx
push 0x5331c0
call edi
mov ecx, dword [0x5379f4]
call fcn.0041d0f0
sub esp, 0x28
test eax, eax
mov eax, esp
mov dword [eax + 0x24], 0
mov ecx, dword [0x537958]
je 0x42632b
test ecx, ecx
jne 0x426320
push 0x532e2c
call esi
cmp dword [0x537958], 0
jne 0x426313
push 0x20
call fcn.00433270
add esp, 4
test eax, eax
je 0x426305
mov ecx, eax
call fcn.004128f0
mov ecx, eax
jmp 0x426307
xor ecx, ecx
xchg dword [ebp - 0x210], eax
mov dword [0x537958], ecx
push 0x532e2c
call edi
mov ecx, dword [0x537958]
push 0
push 0
push str.update_1
jmp 0x42637c
test ecx, ecx
jne 0x426373
push 0x532e2c
call esi
cmp dword [0x537958], 0
jne 0x426366
push 0x20
call fcn.00433270
add esp, 4
test eax, eax
je 0x426358
mov ecx, eax
call fcn.004128f0
mov ecx, eax
jmp 0x42635a
xor ecx, ecx
xchg dword [ebp - 0x210], eax
mov dword [0x537958], ecx
push 0x532e2c
call edi
mov ecx, dword [0x537958]
push 0
push 0
push str.install_1
call fcn.004134f0
call fcn.00422e00
test eax, eax
jne 0x4263a4
mov ecx, 0x5379b4
call fcn.0040b800
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x426427
push 0x110
lea eax, [ebp - 0x114]
mov dword [ebp - 0x118], 0x114
push 0
push eax
call fcn.00478a90
add esp, 0xc
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [ebp - 0x114], 6
jae 0x4263ef
push 0
push 0x4fe0dc
push 0x4fe0e8
push 0
call fcn.00430df0
jmp 0x426427
call fcn.004234c0
test eax, eax
jne 0x42641b
sub esp, 0x28
mov eax, esp
push 0
push 0
push str.install_file_fail
mov dword [eax + 0x24], 0
call fcn.00418020
mov ecx, eax
call fcn.004134f0
jmp 0x426427
push dword [ebp + 0x14]
push ebx
call fcn.00424c30
add esp, 8
mov eax, dword [0x5379fc]
test al, 1
jne 0x42644f
or eax, 1
mov ecx, 0x5379f8
mov dword [0x5379fc], eax
call fcn.004314f0
push 0x4f81d0
call fcn.0046becc
add esp, 4
mov ecx, 0x5379f8
call fcn.00431a60
call fcn.00422b70
mov ecx, eax
call fcn.004650e0
call fcn.00422c00
mov ecx, eax
call fcn.00428bf0
mov ecx, 0x5379b4
call fcn.0040b800
mov ebx, dword [0x53796c]
add ebx, 0x10
push ebx
call esi
mov esi, dword [0x5379b0]
test esi, esi
je 0x4264d9
cmp dword [esi + 4], 0
jle 0x4264a7
mov eax, dword [esi]
push dword [eax]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov esi, dword [0x5379b0]
test esi, esi
je 0x4264d9
mov eax, dword [esi]
test eax, eax
je 0x4264c0
push eax
call fcn.004941b3
add esp, 4
mov dword [esi], 0
push 0xc
push esi
mov dword [esi + 4], 0
mov dword [esi + 8], 0
call fcn.0046bac3
add esp, 8
push ebx
mov dword [0x5379b0], 0
call edi
mov esi, dword [0x5379ac]
test esi, esi
je 0x42652e
mov eax, dword [esi]
test eax, eax
je 0x426505
push eax
call fcn.004941b3
add esp, 4
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x42651c
push eax
call fcn.004941b3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
mov dword [esi + 8], 0
call fcn.0046bac3
add esp, 8
mov esi, dword [0x5379a4]
test esi, esi
je 0x426563
cmp dword [esi], 0
je 0x426563
nop dword [eax]
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x42654d
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 0x426540
mov esi, dword [0x533110]
mov ecx, dword [0x533114]
cmp esi, ecx
jae 0x42658d
mov eax, dword [esi]
test eax, eax
je 0x426586
mov eax, dword [eax + 0x1c]
push 0
call eax
mov ecx, dword [0x533114]
add esi, 4
cmp esi, ecx
jb 0x426573
mov ecx, 0x537978
call fcn.004251c0
call dword [sym.imp.ole32.dll_CoUninitialize]
lea ecx, [ebp - 0x218]
call fcn.0040aad0
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0046ba88
mov esp, ebp
pop ebp
ret 0x10