Function at 0x406891
Capabilities:
Create process on windows
Print debug messages

Disassembly:
push ebp
lea ebp, [esp - 0xba4]
sub esp, 0xc24
mov eax, dword [0x41b044]
xor eax, ebp
mov dword [ebp + 0xba0], eax
mov eax, dword [ebp + 0xbac]
push ebx
push esi
push edi
push 0x7ff
mov dword [ebp - 0x68], eax
lea eax, [ebp + 0x3a1]
mov esi, ecx
push 0
push eax
mov dword [ebp - 0x78], esi
mov byte [ebp + 0x3a0], 0
call fcn.004070d0
lea eax, [esi + 0x3a]
push eax
mov dword [ebp - 0x80], eax
mov ebx, 0x800
lea eax, [ebp + 0x3a0]
push ebx
push eax
call fcn.00407b52
push 0x418790
lea eax, [ebp + 0x3a0]
push ebx
push eax
call fcn.0040736d
add esp, 0x24
mov esi, 0x41dddc
push str.browser
mov eax, esi
call fcn.0040335f
mov edi, eax
push 0x418200
mov eax, esi
call fcn.0040335f
mov dword [ebp - 0x7c], eax
push 0x4181fc
mov eax, esi
call fcn.0040335f
mov dword [ebp - 0x70], eax
push 0x4181f8
mov eax, esi
call fcn.0040335f
mov dword [ebp - 0x74], eax
push 0x4181f4
mov eax, esi
call fcn.0040335f
mov dword [ebp - 0x64], eax
push str.confno
mov eax, esi
call fcn.0040335f
mov dword [ebp - 0x6c], eax
push str.confid
mov eax, esi
call fcn.0040335f
push edi
push dword [ebp - 0x7c]
lea edi, [ebp + 0x3a0]
push dword [ebp - 0x70]
push dword [ebp - 0x74]
push dword [ebp - 0x64]
push dword [ebp - 0x6c]
push eax
call fcn.00403b12
push str.rtoken
mov eax, esi
call fcn.0040335f
mov edi, eax
push str.uname
mov eax, esi
call fcn.0040335f
mov dword [ebp - 0x6c], eax
push 0x418220
mov eax, esi
call fcn.0040335f
mov dword [ebp - 0x64], eax
push str.token
mov eax, esi
call fcn.0040335f
mov dword [ebp - 0x74], eax
push str.stype
mov eax, esi
call fcn.0040335f
mov dword [ebp - 0x70], eax
push 0x41820c
mov eax, esi
call fcn.0040335f
push edi
push dword [ebp - 0x6c]
lea edi, [ebp + 0x3a0]
push dword [ebp - 0x64]
push dword [ebp - 0x74]
push dword [ebp - 0x70]
push eax
call fcn.00403c9a
push str.___action
mov eax, edi
push ebx
push eax
call fcn.0040736d
add esp, 0xc
push str.action
mov eax, esi
call fcn.0040335f
mov esi, eax
test esi, esi
je 0x406a54
mov edi, str.start
push edi
push esi
call fcn.00404e63
pop ecx
pop ecx
test al, al
je 0x406a32
push edi
jmp 0x406a59
mov edi, str.join
push edi
push esi
call fcn.00404e63
pop ecx
test al, al
pop ecx
lea eax, [ebp + 0x3a0]
je 0x406a4d
push edi
jmp 0x406a5f
push str.launch
jmp 0x406a5f
push str.launch
lea eax, [ebp + 0x3a0]
push ebx
push eax
call fcn.0040736d
mov esi, dword [ebp - 0x78]
add esp, 0xc
cmp byte [esi + 0x38], 0
je 0x406a87
push str.___install_vs2008true
lea eax, [ebp + 0x3a0]
push ebx
push eax
call fcn.0040736d
add esp, 0xc
cmp byte [esi + 0x39], 0
je 0x406aa2
push str.___copy_winhttptrue
lea eax, [ebp + 0x3a0]
push ebx
push eax
call fcn.0040736d
add esp, 0xc
xor edi, edi
cmp dword [ebp - 0x68], edi
je 0x406adb
push dword [ebp - 0x68]
call fcn.00407d40
pop ecx
test eax, eax
jbe 0x406adb
push 0x418098
lea eax, [ebp + 0x3a0]
push ebx
push eax
call fcn.0040736d
push dword [ebp - 0x68]
lea eax, [ebp + 0x3a0]
push ebx
push eax
call fcn.0040736d
add esp, 0x18
push 0x3ff
lea eax, [ebp - 0x5f]
push edi
push eax
mov byte [ebp - 0x60], 0
call fcn.004070d0
push dword [ebp - 0x80]
mov esi, 0x400
lea eax, [ebp - 0x60]
push esi
push eax
call fcn.00407b52
push str.Installer.exe
lea eax, [ebp - 0x60]
push esi
push eax
call fcn.0040736d
mov esi, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
add esp, 0x24
push str._CZpDownloadMgr::AllDownloadSuccess__To_Launch_Installer__params:
call esi
lea eax, [ebp + 0x3a0]
push eax
call esi
push 1
push 0x417cc6
lea eax, [ebp + 0x3a0]
push eax
lea eax, [ebp - 0x60]
push eax
push edi
push edi
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov ecx, dword [ebp + 0xba0]
pop edi
pop esi
xor ecx, ebp
mov al, 1
pop ebx
call fcn.00406bdf
add ebp, 0xba4
leave
ret 4