Function at 0x4aa970
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
mov ecx, 6
push 0
push 0
dec ecx
jne 0x4aa978
push ebx
push esi
push edi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00403ff8
xor eax, eax
push ebp
push 0x4aac33
push dword fs:[eax]
mov dword fs:[eax], esp
jmp 0x4aa9a4
push 1
call sub.kernel32.dll_Sleep
cmp dword [0x4bc534], 0
jne 0x4aa99d
cmp byte [0x4c93e5], 2
jne 0x4aaa71
xor ebx, ebx
jmp 0x4aaa5f
lea ecx, [ebp - 8]
mov edx, ebx
mov eax, dword [0x4c9150]
mov esi, dword [eax]
call dword [esi + 0xc]
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 8]
mov edx, dword [0x4c9148]
call fcn.00403e90
mov eax, dword [ebp - 0x10]
call fcn.0044bb6c
test al, al
je 0x4aaa46
xor esi, esi
jmp 0x4aaa2a
lea ecx, [ebp - 0xc]
mov edx, esi
mov eax, dword [0x4c9154]
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 8]
call fcn.00404008
push eax
mov eax, dword [ebp - 0xc]
call fcn.00404008
pop edx
call fcn.00409610
test eax, eax
jne 0x4aaa29
mov edx, esi
mov eax, dword [0x4c9154]
mov ecx, dword [eax]
call dword [ecx + 0x44]
jmp 0x4aaa38
inc esi
mov eax, dword [0x4c9154]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp esi, eax
jl 0x4aa9f1
mov edx, ebx
mov eax, dword [0x4c9150]
mov ecx, dword [eax]
call dword [ecx + 0x44]
jmp 0x4aaa47
inc ebx
test bl, 0xff
jne 0x4aaa5f
push 1
call sub.kernel32.dll_Sleep
mov eax, dword [0x4bcbec]
mov eax, dword [eax]
call fcn.00431ea0
mov eax, dword [0x4c9150]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp ebx, eax
jl 0x4aa9c1
mov eax, dword [0x4c9150]
mov edx, dword [eax]
call dword [edx + 0x14]
mov ebx, eax
dec ebx
jmp 0x4aaab0
lea ecx, [ebp - 0x14]
mov edx, ebx
mov eax, dword [0x4c9150]
mov esi, dword [eax]
call dword [esi + 0xc]
mov eax, dword [ebp - 0x14]
call fcn.004aa7e4
test bl, 0xff
jne 0x4aaaaf
push 1
call sub.kernel32.dll_Sleep
mov eax, dword [0x4bcbec]
mov eax, dword [eax]
call fcn.00431ea0
dec ebx
test ebx, ebx
jl 0x4aaac2
mov eax, dword [0x4c9150]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp ebx, eax
jl 0x4aaa80
mov eax, dword [0x4c9150]
mov edx, dword [eax]
call dword [edx + 0x40]
xor ebx, ebx
jmp 0x4aab3b
lea ecx, [ebp - 0x1c]
mov edx, ebx
mov eax, dword [0x4c9154]
mov esi, dword [eax]
call dword [esi + 0xc]
mov ecx, dword [ebp - 0x1c]
lea eax, [ebp - 0x18]
mov edx, dword [0x4c9148]
call fcn.00403e90
mov eax, dword [ebp - 0x18]
xor edx, edx
call fcn.00408fe0
lea ecx, [ebp - 0x24]
mov edx, ebx
mov eax, dword [0x4c9154]
mov esi, dword [eax]
call dword [esi + 0xc]
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x20]
mov edx, dword [0x4c9148]
call fcn.00403e90
mov eax, dword [ebp - 0x20]
call fcn.004094cc
test bl, 0xff
jne 0x4aab3a
push 1
call sub.kernel32.dll_Sleep
mov eax, dword [0x4bcbec]
mov eax, dword [eax]
call fcn.00431ea0
inc ebx
mov eax, dword [0x4c9154]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp ebx, eax
jl 0x4aaad0
mov eax, dword [0x4c9140]
call fcn.0049e888
mov eax, dword [0x4c9144]
call fcn.0049e888
mov eax, dword [0x4c9154]
mov edx, dword [eax]
call dword [edx + 0x40]
lea eax, [ebp - 0x28]
mov ecx, 0x4aac4c
mov edx, dword [0x4c9148]
call fcn.00403e90
mov eax, dword [ebp - 0x28]
call fcn.00408f78
test al, al
je 0x4aabcb
push 1
push 0x4aac5c
push 0x4aac68
push dword [0x4c9148]
push 0x4aac4c
push 0x4aac78
lea eax, [ebp - 0x2c]
mov edx, 4
call fcn.00403f04
mov eax, dword [ebp - 0x2c]
call fcn.00404008
push eax
push 0x4aac7c
push 0x4aac88
push 0
call sub.shell32.dll_ShellExecuteA
jmp 0x4aabfa
cmp dword [ebp - 4], 0
je 0x4aabfa
cmp byte [0x4bc538], 0
je 0x4aabfa
lea eax, [ebp - 0x30]
mov ecx, 0x4aac98
mov edx, dword [0x4c9148]
call fcn.00403e90
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 4]
mov al, 1
call fcn.00492bf8
push 0
push 1
push 0
push 0
push 0
mov ecx, 1
mov edx, 0x94
mov eax, dword [0x4c812c]
call fcn.004a1ab4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4aac3a
lea eax, [ebp - 0x30]
mov edx, 0xc
call fcn.00403be8
ret