Function at 0x44d414
Capabilities:
Create process on windows
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffa4
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 8], ecx
mov ebx, edx
mov dword [ebp - 4], eax
mov edi, dword [ebp + 0x10]
mov esi, dword [ebp + 0x14]
xor eax, eax
push ebp
push 0x44d628
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x44d603
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 9], 1
lea eax, [ebp - 0x50]
xor ecx, ecx
mov edx, 0x3c
call fcn.00403a68
mov dword [ebp - 0x50], 0x3c
mov dword [ebp - 0x4c], 0x440
xor eax, eax
mov dword [ebp - 0x48], eax
xor eax, eax
mov dword [ebp - 0x44], eax
xor eax, eax
mov dword [ebp - 0x48], eax
xor eax, eax
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 4]
call fcn.004059c0
mov dword [ebp - 0x40], eax
mov eax, ebx
call fcn.004059c0
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 8]
call fcn.004059c0
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], esi
lea eax, [ebp - 0x50]
push eax
call sub.shell32.dll_ShellExecuteExA
test eax, eax
je 0x44d5eb
mov byte [ebp - 9], 1
cmp byte [ebp + 0x18], 0
je 0x44d4f4
mov ebx, 1
push 0x1f4
mov eax, dword [ebp - 0x18]
push eax
call sub.kernel32.dll_WaitForSingleObject
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x18]
push eax
call sub.kernel32.dll_GetExitCodeProcess
inc ebx
cmp dword [ebp - 0x10], 0x103
jne 0x44d4f4
cmp ebx, 0x3c
jle 0x44d4ca
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp - 0x18]
mov dword [eax], ebx
mov eax, ebx
call fcn.0044bffc
mov dword [edi], eax
push 0x44d644
push dword [ebp - 4]
push 0x44d65c
mov eax, dword [edi]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x58]
call fcn.0040917c
push dword [ebp - 0x58]
push 0x44d670
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x5c]
call fcn.0040917c
push dword [ebp - 0x5c]
lea eax, [ebp - 0x54]
mov edx, 6
call fcn.004058c4
mov eax, dword [ebp - 0x54]
call fcn.0043fdf4
mov eax, dword [ebp + 0xc]
cmp dword [eax], 0xffffffff
je 0x44d5f9
mov eax, dword [edi]
call fcn.0044a2b8
mov ebx, eax
test ebx, ebx
jne 0x44d594
xor eax, eax
mov dword [ebp - 0x14], eax
inc dword [ebp - 0x14]
mov edx, 0x44d684
mov eax, 0x1f4
call fcn.0044caa0
mov eax, dword [edi]
call fcn.0044a2b8
mov ebx, eax
test ebx, ebx
jne 0x44d594
cmp dword [ebp - 0x14], 5
jle 0x44d56f
test ebx, ebx
je 0x44d5b7
cmp esi, 7
je 0x44d5b7
push ebx
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x44d5b7
call sub.user32.dll_GetForegroundWindow
cmp ebx, eax
je 0x44d5b7
mov eax, ebx
call fcn.00449f10
test ebx, ebx
je 0x44d5c8
cmp esi, 7
jne 0x44d5c8
push 7
push ebx
call sub.user32.dll_ShowWindow
test ebx, ebx
je 0x44d5d9
cmp esi, 3
jne 0x44d5d9
push 3
push ebx
call sub.user32.dll_ShowWindow
test ebx, ebx
je 0x44d5f9
test esi, esi
jne 0x44d5f9
push 0
push ebx
call sub.user32.dll_ShowWindow
jmp 0x44d5f9
mov byte [ebp - 9], 0
call sub.kernel32.dll_GetLastError_1
mov edx, dword [ebp + 8]
mov dword [edx], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x44d60d
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x44d62f
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.00405538
ret