Function at 0x45c6ba
Capabilities:
Create process on windows

Disassembly:
push 0x1c4
mov eax, 0x55b1c1
call fcn.00523c97
mov esi, ecx
xor ebx, ebx
cmp dword [esi + 0x10], ebx
push 0x316
setne al
movzx eax, al
push eax
mov edi, str.srcPackageManager.cpp
call fcn.004922e6
mov eax, dword [esi + 0x10]
pop ecx
pop ecx
inc eax
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0xe0], ebx
mov dword [ebp - 0xdc], ebx
mov dword [ebp - 0xd8], ebx
call fcn.0045cf54
mov dword [ebp - 4], ebx
mov ecx, dword [esi + 0x14]
cmp ecx, 8
jb 0x45c718
mov eax, dword [esi]
jmp 0x45c71a
mov eax, esi
mov edx, dword [esi + 0x10]
lea eax, [eax + edx*2]
cmp ecx, 8
jb 0x45c729
mov ecx, dword [esi]
jmp 0x45c72b
mov ecx, esi
sub eax, ecx
sar eax, 1
add eax, eax
push eax
push ecx
push dword [ebp - 0xe0]
call fcn.00515390
xor eax, eax
lea edi, [ebp - 0xf0]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
add esp, 0xc
stosd dword es:[edi], eax
push 0x44
stosd dword es:[edi], eax
pop edi
push edi
lea eax, [ebp - 0x138]
push ebx
push eax
call fcn.00517e90
add esp, 0xc
lea eax, [ebp - 0xf0]
push eax
lea eax, [ebp - 0x138]
push eax
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0xe0]
mov dword [ebp - 0x138], edi
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x45c807
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004036c8
mov edi, eax
push str.CreateProcess_failed_with
push edi
mov byte [ebp - 4], 1
call fcn.00405d7d
pop ecx
pop ecx
push esi
push edi
call fcn.0041056c
lea eax, [ebp - 0x2c]
push eax
mov eax, edi
call fcn.00403732
mov byte [ebp - 4], 2
cmp esi, ebx
jle 0x45c7d9
and esi, 0xffff
or esi, 0x80070000
push 1
push 0x334
push str.srcPackageManager.cpp
push esi
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0xc0]
push eax
call fcn.0049844a
push 0x5c983c
lea eax, [ebp - 0xc0]
push eax
call fcn.0051ed55
push dword [ebp - 0xec]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0xd0], eax
push 0xffffffffffffffff
push eax
mov byte [ebp - 4], 3
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0xffffffff
jne 0x45c88a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004036c8
mov edi, eax
push str.WaitForSingleObject_failed_with
push edi
mov byte [ebp - 4], 4
call fcn.00405d7d
pop ecx
pop ecx
push esi
push edi
call fcn.0041056c
lea eax, [ebp - 0x2c]
push eax
mov eax, edi
call fcn.00403732
mov byte [ebp - 4], 5
cmp esi, ebx
jle 0x45c87e
and esi, 0xffff
or esi, 0x80070000
push 1
push 0x344
jmp 0x45c7e0
lea eax, [ebp - 0xcc]
push eax
push dword [ebp - 0xf0]
mov dword [ebp - 0xcc], ebx
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
jne 0x45c900
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004036c8
mov edi, eax
push str.GetExitCodeProcess_failed_with
push edi
mov byte [ebp - 4], 6
call fcn.00405d7d
pop ecx
pop ecx
push esi
push edi
call fcn.0041056c
lea eax, [ebp - 0x2c]
push eax
mov eax, edi
call fcn.00403732
mov byte [ebp - 4], 7
cmp esi, ebx
jle 0x45c8f4
and esi, 0xffff
or esi, 0x80070000
push 1
push 0x34f
jmp 0x45c7e0
lea eax, [ebp - 0xc8]
push eax
call fcn.004036c8
mov edi, eax
push str.Command_
push edi
mov byte [ebp - 4], 8
call fcn.00405d7d
push edi
mov ecx, esi
call fcn.0041193b
add esp, 0xc
push str._finished_with_code
push edi
call fcn.00405d7d
pop ecx
pop ecx
push dword [ebp - 0xcc]
push edi
call fcn.0041056c
lea eax, [ebp - 0x2c]
push eax
mov eax, edi
call fcn.00403732
mov byte [ebp - 4], 9
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x45c95c
lea eax, [ebp - 0x2c]
push eax
push 3
pop ecx
call fcn.00492b4d
pop ecx
push 1
xor edi, edi
lea esi, [ebp - 0x2c]
call fcn.00404145
lea eax, [ebp - 0xc8]
mov byte [ebp - 4], 3
call fcn.00402669
cmp dword [ebp - 0xcc], ebx
je 0x45c9d5
lea eax, [ebp - 0x1d0]
push eax
call fcn.004036c8
mov esi, eax
push str.Install_command_failed_with
push esi
mov byte [ebp - 4], 0xa
call fcn.00405d7d
pop ecx
pop ecx
push dword [ebp - 0xcc]
push esi
call fcn.0041056c
lea eax, [ebp - 0x2c]
push eax
mov eax, esi
call fcn.00403732
push 0x358
mov ecx, str.srcPackageManager.cpp
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xb
call fcn.004025fb
mov byte [ebp - 4], bl
cmp dword [ebp - 0xd0], ebx
je 0x45c9f5
cmp dword [ebp - 0xd0], 0xffffffff
je 0x45c9f5
push dword [ebp - 0xd0]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea esi, [ebp - 0xe0]
call fcn.00426e9d
call fcn.00523d1a
ret