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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x254
mov eax, dword [0x533524]
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 0x4fcfa4
push 0
call fcn.004a54d5
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
push 0x4fcfa8
call fcn.0042a620
add esp, 8
mov ecx, 0x536954
push 0
push dword [0x53693c]
push 0
call fcn.00422e90
lea ecx, [ebp - 0x218]
call fcn.0040a9b0
call fcn.00422d20
mov ecx, eax
call fcn.00464830
mov eax, dword [0x5369dc]
test al, 1
jne 0x426306
or eax, 1
mov ecx, 0x5369d8
mov dword [0x5369dc], eax
call fcn.00430b90
push 0x4f7690
call fcn.0046b4bc
add esp, 4
mov ecx, 0x5369d8
call fcn.00430be0
push ebx
call fcn.00422c90
mov ecx, eax
call fcn.0041c480
push ebx
push str.lpstrCmdLine_s
call fcn.0042a620
add esp, 8
call fcn.00422c90
mov ecx, eax
call fcn.0041d270
push eax
call fcn.004305a0
mov ecx, 0x536990
call fcn.0040b0e0
mov esi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test eax, eax
jne 0x426377
push str.CheckSingleInstance_failed__exit
call fcn.0042a620
add esp, 4
push 0
push 0x4fd034
push 0
call fcn.004305b0
jmp 0x426667
call fcn.00422540
test eax, eax
jne 0x426391
push eax
push 0x4fd050
push eax
call fcn.004305b0
jmp 0x426667
call fcn.00422c90
mov ecx, eax
call fcn.0041c0d0
push eax
call fcn.00417f60
mov ecx, eax
call fcn.00413860
push 0x4fb028
call fcn.00417f60
mov ecx, eax
call fcn.00413920
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.00478070
add esp, 0xc
lea eax, [ebp - 0x20c]
push 0x104
push eax
push dword [0x53693c]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x20c]
push eax
call fcn.00417f60
mov ecx, eax
call fcn.004137d0
mov ecx, dword [0x5369d4]
test ecx, ecx
jne 0x42644a
push 0x5321c8
call esi
cmp dword [0x5369d4], 0
jne 0x42643d
push 0x60
call fcn.00432860
add esp, 4
test eax, eax
je 0x42642f
mov ecx, eax
call fcn.0041ba90
mov ecx, eax
jmp 0x426431
xor ecx, ecx
xchg dword [ebp - 0x210], eax
mov dword [0x5369d4], ecx
push 0x5321c8
call edi
mov ecx, dword [0x5369d4]
call fcn.0041d280
sub esp, 0x28
test eax, eax
mov eax, esp
mov dword [eax + 0x24], 0
mov ecx, dword [0x536930]
je 0x4264b8
test ecx, ecx
jne 0x4264ad
push 0x531e2c
call esi
cmp dword [0x536930], 0
jne 0x4264a0
push 0x20
call fcn.00432860
add esp, 4
test eax, eax
je 0x426492
mov ecx, eax
call fcn.00412810
mov ecx, eax
jmp 0x426494
xor ecx, ecx
xchg dword [ebp - 0x210], eax
mov dword [0x536930], ecx
push 0x531e2c
call edi
mov ecx, dword [0x536930]
push 0
push 0
push str.update_1
jmp 0x426509
test ecx, ecx
jne 0x426500
push 0x531e2c
call esi
cmp dword [0x536930], 0
jne 0x4264f3
push 0x20
call fcn.00432860
add esp, 4
test eax, eax
je 0x4264e5
mov ecx, eax
call fcn.00412810
mov ecx, eax
jmp 0x4264e7
xor ecx, ecx
xchg dword [ebp - 0x210], eax
mov dword [0x536930], ecx
push 0x531e2c
call edi
mov ecx, dword [0x536930]
push 0
push 0
push str.install_1
call fcn.00413410
call fcn.00422fb0
test eax, eax
jne 0x426531
mov ecx, 0x536990
call fcn.0040b720
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x426667
push 0x110
lea eax, [ebp - 0x114]
mov dword [ebp - 0x118], 0x114
push 0
push eax
call fcn.00478070
add esp, 0xc
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [ebp - 0x114], 6
jae 0x42662f
call fcn.00422c90
mov ecx, eax
call fcn.0041d270
test eax, eax
jne 0x426667
lea ecx, [ebp - 0x254]
call fcn.00431160
call dword [sym.imp.USER32.dll_GetActiveWindow]
mov ebx, eax
mov eax, dword [ebp - 0x240]
test eax, eax
jne 0x4265c3
call fcn.00453856
mov dword [ebp - 0x240], eax
test eax, eax
jne 0x4265c3
push 0xe
call dword [sym.imp.KERNEL32.dll_SetLastError]
lea ecx, [ebp - 0x254]
call fcn.00431230
jmp 0x426667
push 0
push 0
push eax
call fcn.00453958
lea eax, [ebp - 0x254]
mov dword [ebp - 0x24c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push 0x53103c
mov dword [ebp - 0x248], eax
call esi
mov eax, dword [0x531054]
mov dword [ebp - 0x244], eax
lea eax, [ebp - 0x24c]
push 0x53103c
mov dword [0x531054], eax
call edi
push 0
push 0x425220
push ebx
push 0xf2
push dword [0x53716c]
call dword [sym.imp.USER32.dll_DialogBoxParamW]
lea ecx, [ebp - 0x254]
call fcn.00431230
jmp 0x426667
call fcn.00423670
test eax, eax
jne 0x42665b
sub esp, 0x28
mov eax, esp
push 0
push 0
push str.install_file_fail
mov dword [eax + 0x24], 0
call fcn.00417f60
mov ecx, eax
call fcn.00413410
jmp 0x426667
push dword [ebp + 0x14]
push ebx
call fcn.00424dc0
add esp, 8
mov eax, dword [0x5369dc]
test al, 1
jne 0x42668f
or eax, 1
mov ecx, 0x5369d8
mov dword [0x5369dc], eax
call fcn.00430b90
push 0x4f7690
call fcn.0046b4bc
add esp, 4
mov ecx, 0x5369d8
call fcn.00431060
call fcn.00422d20
mov ecx, eax
call fcn.004649a0
call fcn.00422db0
mov ecx, eax
call fcn.00428e50
mov ecx, 0x536990
call fcn.0040b720
mov ebx, dword [0x53694c]
add ebx, 0x10
push ebx
call esi
mov esi, dword [0x53698c]
test esi, esi
je 0x426719
cmp dword [esi + 4], 0
jle 0x4266e7
mov eax, dword [esi]
push dword [eax]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov esi, dword [0x53698c]
test esi, esi
je 0x426719
mov eax, dword [esi]
test eax, eax
je 0x426700
push eax
call fcn.00493793
add esp, 4
mov dword [esi], 0
push 0xc
push esi
mov dword [esi + 4], 0
mov dword [esi + 8], 0
call fcn.0046b0b3
add esp, 8
push ebx
mov dword [0x53698c], 0
call edi
mov esi, dword [0x536988]
test esi, esi
je 0x42676e
mov eax, dword [esi]
test eax, eax
je 0x426745
push eax
call fcn.00493793
add esp, 4
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x42675c
push eax
call fcn.00493793
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
mov dword [esi + 8], 0
call fcn.0046b0b3
add esp, 8
mov esi, dword [0x536980]
test esi, esi
je 0x4267a3
cmp dword [esi], 0
je 0x4267a3
nop dword [eax]
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x42678d
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 0x426780
mov esi, dword [0x532118]
mov ecx, dword [0x53211c]
cmp esi, ecx
jae 0x4267cd
mov eax, dword [esi]
test eax, eax
je 0x4267c6
mov eax, dword [eax + 0x1c]
push 0
call eax
mov ecx, dword [0x53211c]
add esi, 4
cmp esi, ecx
jb 0x4267b3
mov ecx, 0x536954
call fcn.00425350
call dword [sym.imp.ole32.dll_CoUninitialize]
lea ecx, [ebp - 0x218]
call fcn.0040a9f0
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0046b078
mov esp, ebp
pop ebp
ret 0x10