Function at 0x4042b5
Capabilities:
Create process on windows

Disassembly:
push 0x58c
mov eax, 0x454eaa
call fcn.0043c7da
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x578], eax
mov eax, dword [ebp + 0x20]
xor ebx, ebx
push 0xff
mov dword [ebp - 0x580], eax
lea eax, [ebp - 0x10f]
mov esi, ecx
push ebx
push eax
mov dword [ebp - 0x584], esi
mov byte [ebp - 0x110], bl
call fcn.004360a0
mov edi, dword [sym.imp.user32.dll_wsprintfA]
add esp, 0xc
lea eax, [ebp - 0x110]
push str._auto
push eax
mov dword [ebp - 0x57c], ebx
mov byte [esi], bl
call edi
pop ecx
pop ecx
cmp dword [ebp + 8], ebx
je 0x404330
push str.__scheduled
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.kernel32.dll_lstrcatA]
cmp dword [ebp + 0x24], ebx
je 0x404347
push str.__critical
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.kernel32.dll_lstrcatA]
push 1
push ebx
lea eax, [ebp - 0x110]
push eax
push dword [ebp - 0x578]
push str.open
push ebx
call dword [sym.imp.shell32.dll_ShellExecuteA]
xor ecx, ecx
cmp eax, 0x20
setg cl
mov dword [ebp - 0x574], ecx
cmp ecx, ebx
jne 0x404504
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x4c7
jne 0x4045c8
lea esi, [ebp - 0x570]
call fcn.0043acef
mov ecx, dword [0x475058]
mov dword [ebp - method.ATL::CComObject_class_CDownloadTracker_.virtual_0], vtable.ATL::CComObject_class_CDownloadTracker_.0
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], ebx
lea eax, [ebp - 0x110]
cmp dword [ebp + 8], ebx
je 0x4043bf
push str.__scheduled
jmp 0x4043c4
push 0x45d48e
push eax
call edi
pop ecx
pop ecx
cmp dword [ebp + 0x24], ebx
je 0x4043e0
push str.__critical
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.kernel32.dll_lstrcatA]
push 0xff
lea eax, [ebp - 0x30f]
push ebx
push eax
mov dword [ebp - 0x598], ebx
mov dword [ebp - 0x594], ebx
mov byte [ebp - 0x310], bl
call fcn.004360a0
add esp, 0xc
mov esi, 0x4c7
push esi
lea eax, [ebp - 0x310]
push str.Failed_to_start_UpdateChecker_process:_d_n
push eax
call edi
lea eax, [ebp - 0x310]
add esp, 0xc
push eax
call fcn.004154d3
pop ecx
push dword [ebp + 0x24]
lea eax, [ebp - 0x57c]
push dword [ebp + 0x18]
lea ecx, [ebp - 0x598]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push eax
call fcn.0043acef
mov eax, dword [ebp - 0x57c]
add esp, 0x18
push 1
mov dword [ebp - 0x53c], eax
push 1
lea eax, [ebp - 0x570]
push eax
call fcn.0043acef
cmp dword [ebp - 0x544], ebx
jne 0x404567
cmp eax, 0x2ee2
jne 0x40449c
push dword [ebp + 0x24]
mov ebx, dword [ebp - 0x584]
call fcn.0040420c
pop ecx
test eax, eax
jne 0x40457f
xor ebx, ebx
jmp 0x4043e0
push 1
push ebx
lea eax, [ebp - 0x110]
push eax
push dword [ebp - 0x578]
push str.open
push ebx
call dword [sym.imp.shell32.dll_ShellExecuteA]
xor ecx, ecx
cmp eax, 0x20
setg cl
mov dword [ebp - 0x574], ecx
cmp ecx, ebx
jne 0x4044d8
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, esi
je 0x4043e0
mov ecx, dword [ebp - 0x554]
cmp ecx, ebx
je 0x4044e9
push 2
call fcn.0040716e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x570]
call fcn.00405bbf
cmp dword [ebp - 0x574], ebx
je 0x4045c8
push 0xff
lea eax, [ebp - 0x20f]
push ebx
push eax
mov byte [ebp - 0x210], bl
call fcn.004360a0
add esp, 0xc
push dword [ebp - 0x578]
lea eax, [ebp - 0x210]
push str.Started_UpdateChecker_process_Successfully:_s_n
push eax
call edi
add esp, 0xc
cmp dword [ebp + 8], ebx
je 0x404554
lea esi, [ebp - 0x598]
call fcn.00410e01
mov ecx, eax
call fcn.00411295
mov ecx, esi
call fcn.00410e5b
lea eax, [ebp - 0x210]
push eax
call fcn.004154d3
xor eax, eax
jmp 0x40460b
push str.Cancelled_by_user_or_Received_shutdown_signal_n
call fcn.004154d3
mov eax, dword [ebp - 0x580]
pop ecx
mov dword [eax], ebx
jmp 0x4044d8
push 0xff
lea eax, [ebp - 0x20f]
push 0
push eax
mov byte [ebp - 0x210], 0
call fcn.004360a0
add esp, 0xc
lea eax, [ebp - 0x210]
push str.New_Update_Available_n
push eax
call edi
lea eax, [ebp - 0x210]
push eax
call fcn.004154d3
add esp, 0xc
lea ecx, [ebp - 0x570]
call fcn.00405bbf
xor eax, eax
jmp 0x40460c
call dword [sym.imp.kernel32.dll_GetLastError]
push 0xff
mov esi, eax
lea eax, [ebp - 0x30f]
push ebx
push eax
mov byte [ebp - 0x310], bl
call fcn.004360a0
add esp, 0xc
push esi
lea eax, [ebp - 0x310]
push str.Failed_to_start_UpdateChecker_process:_d_n
push eax
call edi
add esp, 0xc
lea eax, [ebp - 0x310]
push eax
call fcn.004154d3
mov eax, esi
pop ecx
call fcn.0043c85d
ret