Function at 0x44900e
Capabilities:
Create process on windows
Create process suspended

Disassembly:
push 0xc8
mov eax, 0x5b1f89
call fcn.0058f792
mov eax, dword [ebp + 0x14]
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x5c], eax
xor eax, eax
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], eax
mov ebx, eax
call fcn.0046d5d4
push 7
pop ecx
xor edx, edx
mov dword [ebp - 0x14], ecx
xor eax, eax
mov dword [ebp - 0x18], edx
mov word [ebp - 0x28], ax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x30], edx
mov word [ebp - 0x40], ax
mov byte [ebp - 4], 3
cmp dword [ebp + 0xc], eax
jne 0x449093
xor edi, edi
inc edi
mov ebx, edi
xor esi, esi
push esi
push edi
lea ecx, [ebp - 0x40]
call fcn.00404970
push esi
push edi
lea ecx, [ebp - 0x28]
call fcn.00404970
xor eax, eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], al
call fcn.0046d690
lea ecx, [ebp + 8]
call fcn.00407a8b
mov eax, ebx
call fcn.0058f741
ret 0x14
push 0x44
pop edi
push edi
push edx
lea eax, [ebp - 0xd4]
push eax
call fcn.0058e700
mov dword [ebp - 0xd4], edi
add esp, 0xc
xor edi, edi
inc edi
mov dword [ebp - 0xa8], edi
call fcn.00474a71
mov ecx, dword [eax + 4]
lea ecx, [ecx + 0xcc]
call fcn.0041adf9
and eax, 0xf
cmp al, 2
jne 0x4490db
xor eax, eax
mov word [ebp - 0xa4], ax
jmp 0x4490e2
mov word [ebp - 0xa4], di
cmp dword [ebp + 0xc], edi
jbe 0x449210
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
mov dword [ebp - 0x64], eax
cmp eax, ecx
je 0x44927e
add eax, 0x10
cmp dword [eax + 0x14], 8
jb 0x449106
mov eax, dword [eax]
push 0x5c
push eax
lea ecx, [ebp - 0x7c]
call fcn.0046eb6a
push edi
lea ecx, [ebp - 0x7c]
call fcn.0046dbf8
test eax, eax
je 0x449165
push 2
lea ecx, [ebp - 0x7c]
call fcn.0046dbf8
test eax, eax
je 0x449165
test esi, esi
je 0x449165
cmp dword [ebp - 0x5c], 0
je 0x449165
push esi
push edi
lea ecx, [ebp - 0x7c]
call fcn.0046dbf8
push eax
call fcn.005921d4
pop ecx
pop ecx
test eax, eax
jne 0x449165
push dword [ebp - 0x5c]
lea ecx, [ebp - 0x7c]
push 2
call fcn.0046dbf8
push eax
call fcn.005921d4
pop ecx
pop ecx
test eax, eax
je 0x44917a
lea ecx, [ebp - 0x64]
call fcn.004212e4
mov eax, dword [ebp - 0x64]
cmp eax, dword [ebp + 8]
jne 0x4490fb
jmp 0x44927e
push str.Two_or_more_added_printers_have_been_found._n
push str.CInstallAction::SetPrinterAsDefaultW
push 5
call fcn.00424dad
add esp, 0xc
lea ecx, [ebp - 0x7c]
xor esi, esi
push esi
call fcn.0046dbf8
push eax
push str.PrinterName____1_lS___n
push str.CInstallAction::SetPrinterAsDefaultW
push 5
call fcn.00424dad
add esp, 0x10
lea ecx, [ebp - 0x7c]
push edi
call fcn.0046dbf8
push eax
push str.DriverName____1_lS___n
push str.CInstallAction::SetPrinterAsDefaultW
push 5
call fcn.00424dad
add esp, 0x10
lea ecx, [ebp - 0x7c]
push 2
call fcn.0046dbf8
push eax
push str.PortName____1_lS___n
push str.CInstallAction::SetPrinterAsDefaultW
push 5
call fcn.00424dad
add esp, 0x10
lea ecx, [ebp - 0x7c]
push esi
call fcn.0046dbf8
mov esi, eax
xor eax, eax
cmp word [esi], ax
je 0x449204
push esi
call fcn.0058edd4
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00404be0
jmp 0x44927e
mov eax, dword [ebp + 8]
mov eax, dword [eax]
add eax, 0x10
cmp dword [eax + 0x14], 8
jb 0x449220
mov eax, dword [eax]
push 0x5c
push eax
lea ecx, [ebp - 0x7c]
call fcn.0046eb6a
xor esi, esi
lea ecx, [ebp - 0x7c]
push esi
call fcn.0046dbf8
mov esi, eax
xor eax, eax
cmp word [esi], ax
je 0x449246
push esi
call fcn.0058edd4
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00404be0
push str.A_last_added_printer_has_been_found._n
mov esi, str.CInstallAction::SetPrinterAsDefaultW
push esi
push 5
call fcn.00424dad
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
push str.PrinterName____1_lS___n
push esi
push 5
call fcn.00424dad
add esp, 0x1c
cmp byte [ebp + 0x18], 0
jne 0x4492d4
cmp dword [ebp - 0x18], 0
je 0x44905e
lea ecx, [ebp - 0x5c]
call fcn.00461e21
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 4
call fcn.004624f3
cmp dword [ebp - 0x14], 8
lea ecx, [ebp - 0x28]
mov esi, eax
cmovae ecx, dword [ebp - 0x28]
push ecx
call sub.WINSPOOL.DRV_Ordinal_204
mov ebx, eax
test esi, esi
je 0x4492c3
lea ecx, [ebp - 0x5c]
call fcn.00462826
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 3
call fcn.00461e2a
jmp 0x44905e
cmp dword [ebp - 0x18], 0
je 0x44905e
call fcn.00474a71
mov ecx, dword [eax + 4]
lea ecx, [ecx + 0xcc]
call fcn.004137a9
push eax
lea ecx, [ebp - 0x58]
call fcn.00401c0c
mov esi, str.rundll32
mov byte [ebp - 4], 5
push esi
call fcn.0058edd4
pop ecx
push eax
push esi
lea ecx, [ebp - 0x40]
call fcn.00404be0
cmp dword [ebp - 0x44], 8
lea esi, [ebp - 0x58]
cmovae esi, dword [ebp - 0x58]
xor ebx, ebx
cmp word [esi], bx
jne 0x44932a
mov eax, ebx
jmp 0x449331
push esi
call fcn.0058edd4
pop ecx
push eax
push esi
lea ecx, [ebp - 0x40]
call fcn.00404a83
mov esi, str._PrintUIEntry
push esi
call fcn.0058edd4
pop ecx
push eax
push esi
lea ecx, [ebp - 0x40]
call fcn.00404a83
mov esi, str._y__n__
push esi
call fcn.0058edd4
pop ecx
push eax
push esi
lea ecx, [ebp - 0x40]
call fcn.00404a83
cmp dword [ebp - 0x14], 8
lea esi, [ebp - 0x28]
cmovae esi, dword [ebp - 0x28]
cmp word [esi], bx
jne 0x44937b
mov eax, ebx
jmp 0x449382
push esi
call fcn.0058edd4
pop ecx
push eax
push esi
lea ecx, [ebp - 0x40]
call fcn.00404a83
mov esi, 0x5d08d8
push esi
call fcn.0058edd4
pop ecx
push eax
push esi
lea ecx, [ebp - 0x40]
call fcn.00404a83
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
mov esi, str.CInstallAction::SetPrinterAsDefaultW
cmovae eax, dword [ebp - 0x40]
push eax
push str.CmdLine____1_lS___n
push esi
push 4
call fcn.00424dad
add esp, 0x10
lea ecx, [ebp - 0x8c]
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push ecx
lea ecx, [ebp - 0xd4]
push ecx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
mov ebx, eax
test ebx, ebx
jne 0x449405
push str.CreateProcess_failed._n
push esi
push 2
call fcn.00424dad
add esp, 0xc
jmp 0x449485
push str.CreateProcess_success._n
push esi
push 4
call fcn.00424dad
add esp, 0xc
push dword [ebp - 0x88]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.00474a71
mov ecx, dword [eax + 4]
call fcn.0047605a
push 0x1f4
mov byte [ebp - 4], 6
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x64
push dword [ebp - 0x8c]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov esi, eax
call fcn.00470341
lea ecx, [ebp - 0x5d]
mov byte [ebp - 4], 5
call fcn.0040801f
cmp esi, 0x102
je 0x449421
lea eax, [ebp - 0x90]
push eax
push dword [ebp - 0x8c]
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
push dword [ebp - 0x8c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor esi, esi
lea ecx, [ebp - 0x58]
push esi
push edi
call fcn.00404970
jmp 0x449060