Function at 0x4964c4
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
push edi
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x496798
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x328]
xor edx, edx
call fcn.0042c8fc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x34c]
mov edx, 0x4967b0
call fcn.00439ac8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2fc]
xor edx, edx
call fcn.00439ac8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x304]
xor edx, edx
call fcn.00439ac8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x324]
xor edx, edx
call fcn.00439ac8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x310]
mov edx, 0x4967cc
call fcn.00439ac8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x314]
mov edx, 0x4967f0
call fcn.00439ac8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x308]
mov edx, 0x64
call fcn.0042f584
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x308]
add eax, 0x80
mov edx, 0x496800
call fcn.0040468c
mov eax, dword [ebp - 4]
movzx edi, word [eax + 0x368]
dec edi
test edi, edi
jl 0x4965fc
inc edi
xor ebx, ebx
mov esi, ebx
shl esi, 2
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
cmp dword [eax + esi*8], 0
je 0x4965ca
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov ecx, dword [eax + esi*8]
mov eax, dword [0x4b21bc]
mov eax, dword [eax]
mov edx, 0x496810
call fcn.0045eb08
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
cmp dword [eax + esi*8 + 8], 0
je 0x4965f8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov ecx, dword [eax + esi*8 + 8]
mov eax, dword [0x4b21bc]
mov eax, dword [eax]
mov edx, 0x496810
call fcn.0045eb08
inc ebx
dec edi
jne 0x496599
mov eax, dword [ebp - 4]
cmp dword [eax + 0x35c], 0
je 0x496648
xor eax, eax
push ebp
push 0x496639
push dword fs:[eax]
mov dword fs:[eax], esp
push 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x35c]
call fcn.00404af8
push eax
call sub.kernel32.dll_WinExec
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x49676a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
call fcn.00405628
test eax, eax
jle 0x49676a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov eax, dword [eax + 0x18]
call fcn.00408eb8
test al, al
je 0x49676a
xor eax, eax
push ebp
push 0x496760
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov eax, dword [eax + 0x18]
call fcn.00409278
mov eax, dword [ebp - 0xc]
lea edx, [ebp - 8]
call fcn.00408518
mov eax, dword [ebp - 8]
mov edx, 0x496820
call fcn.00404a44
jne 0x496700
push 5
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov eax, dword [eax + 0x18]
call fcn.00409124
mov eax, dword [ebp - 0x10]
call fcn.00404af8
push eax
push 0x496828
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov eax, dword [eax + 0x18]
call fcn.00404af8
push eax
push 0x49682c
mov eax, dword [0x4b2420]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
push eax
call sub.shell32.dll_ShellExecuteA
jmp 0x496756
push 5
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov eax, dword [eax + 0x18]
call fcn.00409124
mov eax, dword [ebp - 0x14]
call fcn.00404af8
push eax
push 0x496828
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov eax, dword [eax + 0x18]
call fcn.00409124
mov eax, dword [ebp - 0x18]
call fcn.00404af8
push eax
push 0x49682c
mov eax, dword [0x4b2420]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
push eax
call sub.shell32.dll_ShellExecuteA
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x49676a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x310]
mov edx, 0x4967f0
call fcn.00439ac8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x49679f
lea eax, [ebp - 0x18]
mov edx, 5
call fcn.0040465c
ret