Function at 0x46b6b8
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
push edi
mov ebx, dword [ebp + 8]
test ebx, ebx
je 0x46bb4e
push ebx
call fcn.0046b530
cmp dword [0x4fccb4], 0
je 0x46b6f3
mov dword [ebx + 0x41c], 0xffffffff
mov eax, dword [ebx]
push eax
call fcn.004eae80
push eax
call fcn.004d9d04
xor esi, esi
xor edi, edi
mov eax, dword [ebx + 0x414]
test eax, eax
je 0x46b70d
cmp eax, dword [ebx + 0x408]
ja 0x46b840
mov dword [ebx + 0x3fc], 9
cmp dword [0x4fb7f4], 0
je 0x46b76d
mov eax, dword [ebx + 0x3f8]
test eax, eax
jl 0x46b731
push eax
call fcn.0040471c
pop ecx
mov dword [ebx + 0x3f8], 0xffffffff
mov dword [0x4f6958], ebx
xor edx, edx
mov dword [0x4fba24], edx
push 0
push 0x15
push 0x4f6a8c
call fcn.004ca178
xor ecx, ecx
mov dword [0x4f6958], ecx
push ebx
call fcn.00469dc8
test eax, eax
je 0x46bb4e
push 0
push 1
push 0x50f43a
lea eax, [ebx + 0x230]
push eax
call fcn.004626c4
cmp byte [0x50f43a], 0
je 0x46b840
push 0x50f43a
call fcn.00401318
pop ecx
add eax, 4
push eax
call fcn.0040c55c
pop ecx
mov esi, eax
test esi, esi
je 0x46b840
push esi
mov edi, 0x50f43a
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
lea eax, [ebx + 0x230]
push eax
lea edx, [ebx + 0x130]
push edx
push 0x4f6a96
push 0x50f43a
call sub.USER32.dll_wsprintfA
add esp, 0x10
push 0x50f43a
call fcn.00401318
pop ecx
add eax, 4
push eax
call fcn.0040c55c
pop ecx
mov edi, eax
test edi, edi
je 0x46b837
push esi
push edi
mov esi, edi
mov edi, 0x50f43a
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x46b840
push esi
call fcn.0040c454
pop ecx
xor esi, esi
cmp dword [0x4f4760], 0
je 0x46ba53
call fcn.0046b4f4
mov eax, dword [0x4f29d4]
push eax
mov edx, dword [0x4fd9fc]
push edx
call fcn.004bc3ec
mov eax, dword [ebx + 0x414]
test eax, eax
je 0x46b87a
cmp eax, dword [ebx + 0x408]
ja 0x46b9a9
lea edx, [ebx + 4]
push edx
lea ecx, [ebx + 0x230]
push ecx
push 0
push 0xb6b
call fcn.0041f178
push eax
push 0x50f43a
call sub.USER32.dll_wsprintfA
add esp, 0x10
mov dword [ebp - 4], 1
mov eax, dword [ebx + 0x42c]
test eax, eax
jle 0x46b902
mov edx, dword [ebx + 0x430]
sub edx, eax
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 1
jae 0x46b8c8
mov dword [ebp - 4], 1
cmp dword [ebp - 4], 0
jbe 0x46b8ee
push 1
mov ecx, dword [ebp - 4]
push ecx
push 0x4f6a9c
call fcn.004908e8
push eax
push 0x50f43a
call fcn.0040123c
add esp, 8
jmp 0x46b91c
push 0x4f6aa0
push 0x50f43a
call fcn.0040123c
add esp, 8
jmp 0x46b91c
push 0
push 0xb66
call fcn.0041f178
push eax
push 0x50f43a
call fcn.0040123c
add esp, 8
push 0x4f6aaa
push 0x50f43a
call fcn.0040123c
add esp, 8
cmp dword [ebp - 4], 0
jbe 0x46b97b
mov eax, dword [ebx + 0x408]
mov edx, dword [ebx + 0x418]
cmp eax, edx
jae 0x46b948
mov ecx, eax
jmp 0x46b94c
mov ecx, eax
sub ecx, edx
mov eax, ecx
xor edx, edx
div dword [ebp - 4]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
push eax
push 0x4f6aad
push 0x50f43a
call fcn.00401318
pop ecx
add eax, 0x50f43a
push eax
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x46b995
push 0
push 0xb66
call fcn.0041f178
push eax
push 0x50f43a
call fcn.0040123c
add esp, 8
push 0x4f6ab5
push 0x50f43a
call fcn.0040123c
add esp, 8
jmp 0x46ba12
push ebx
call fcn.0046a890
push ebx
call fcn.00469dc8
test eax, eax
je 0x46bb4e
cmp dword [ebx + 0x3fc], 4
jne 0x46b9ed
lea edx, [ebx + 4]
push edx
lea ecx, [ebx + 0x230]
push ecx
push 0
push 0xb68
call fcn.0041f178
push eax
push 0x50f43a
call sub.USER32.dll_wsprintfA
add esp, 0x10
jmp 0x46ba12
lea eax, [ebx + 4]
push eax
lea edx, [ebx + 0x230]
push edx
push 0
push 0xb69
call fcn.0041f178
push eax
push 0x50f43a
call sub.USER32.dll_wsprintfA
add esp, 0x10
xor ecx, ecx
mov dword [0x4fb760], ecx
mov eax, dword [0x4f29cc]
push eax
push 0x50f43a
mov edx, dword [0x4fd9fc]
push edx
call fcn.004bc548
mov ecx, dword [0x4f29d4]
push ecx
mov eax, dword [0x4fd9fc]
push eax
call fcn.004bc3ec
push 0
push 0
push 0x10
mov edx, dword [ebx]
push edx
call sub.USER32.dll_SendMessageA
jmp 0x46bab1
mov eax, dword [ebx + 0x414]
test eax, eax
je 0x46ba65
cmp eax, dword [ebx + 0x408]
ja 0x46ba7c
push 1
push ebx
push 0
push 0xb6a
call fcn.0041f178
push eax
call fcn.0046a8f0
jmp 0x46bab1
cmp dword [ebx + 0x3fc], 4
jne 0x46ba9c
push 1
push ebx
push 0
push 0xb67
call fcn.0041f178
push eax
call fcn.0046a8f0
jmp 0x46bab1
push 1
push ebx
push 0
push 0xb60
call fcn.0041f178
push eax
call fcn.0046a8f0
test esi, esi
je 0x46bb4e
cmp byte [esi], 0x2f
jne 0x46bad2
push 0
push 1
push edi
push esi
mov edx, dword [0x4fd9fc]
push edx
call fcn.004864e8
jmp 0x46bb3c
push 0x8001
call sub.KERNEL32.dll_SetErrorMode
push 5
push 0x4f7cec
push edi
push esi
push 0x4f6ab8
mov ecx, dword [0x4fd9ec]
push ecx
call sub.SHELL32.dll_ShellExecuteA
cmp eax, 0x1f
jae 0x46bb35
xor eax, eax
mov dword [0x4fb760], eax
push esi
push 0
push 0xb6c
call fcn.0041f178
push eax
push 0x50f43a
call sub.USER32.dll_wsprintfA
add esp, 0xc
mov edx, dword [0x4f29d4]
push edx
push 0x50f43a
mov ecx, dword [0x4fd9fc]
push ecx
call fcn.004bd330
push 0
call sub.KERNEL32.dll_SetErrorMode
push esi
call fcn.0040c454
pop ecx
test edi, edi
je 0x46bb4e
push edi
call fcn.0040c454
pop ecx
pop edi
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret 4