Function at 0x4cc4e0
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe88
push ebx
push esi
push edi
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
movsx eax, byte [esi]
cmp eax, 0x61
jb 0x4cc4fd
sub eax, 0x20
cmp eax, 0x41
jb 0x4cc50d
cmp eax, 0x5a
ja 0x4cc50d
cmp byte [esi + 1], 0x3a
je 0x4cc52b
push 0x2f
push esi
call fcn.004cb2ec
add esp, 8
test eax, eax
jne 0x4cc52b
push 0x5c
push esi
call fcn.004cb2ec
add esp, 8
test eax, eax
je 0x4cc530
xor edx, edx
mov dword [ebp + 0x18], edx
xor ecx, ecx
mov dword [ebp - 0x14], ecx
push 0x5c
push esi
call fcn.004cb4f0
add esp, 8
mov edi, eax
test eax, eax
je 0x4cc549
inc edi
jmp 0x4cc54b
mov edi, esi
push 0x2e
push edi
call fcn.004cb4f0
add esp, 8
mov dword [ebp - 0x10], eax
test eax, eax
je 0x4cc5b3
mov edx, dword [ebp + 0x18]
lea ecx, [ebp - 0x118]
push edx
push 0x5cfa39
push ecx
push esi
call fcn.004cc2d8
add esp, 0x10
mov edi, eax
test eax, eax
je 0x4cc612
push 0x5cfa3a
mov edx, dword [ebp - 0x10]
push edx
call fcn.004cb394
add esp, 8
test eax, eax
je 0x4cc5aa
push 0x5cfa3f
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004cb394
add esp, 8
test eax, eax
jne 0x4cc612
mov dword [ebp - 0x14], 1
jmp 0x4cc612
mov eax, dword [ebp + 0x18]
lea edx, [ebp - 0x118]
push eax
push 0x5cfa44
push edx
push esi
call fcn.004cc2d8
add esp, 0x10
mov edi, eax
test eax, eax
jne 0x4cc612
mov edx, dword [ebp + 0x18]
lea ecx, [ebp - 0x118]
push edx
push 0x5cfa49
push ecx
push esi
call fcn.004cc2d8
add esp, 0x10
mov edi, eax
mov dword [ebp - 0x14], eax
test eax, eax
jne 0x4cc612
mov edx, dword [ebp + 0x18]
lea ecx, [ebp - 0x118]
push edx
push 0x5cfa4e
push ecx
push esi
call fcn.004cc2d8
add esp, 0x10
mov edi, eax
mov dword [ebp - 0x14], eax
test edi, edi
je 0x4cc62e
cmp dword [ebp - 0x14], 0
je 0x4cc640
push 0x5cfa53
call fcn.004cb99c
pop ecx
mov dword [ebp - 0xc], eax
test eax, eax
jne 0x4cc640
mov dword [0x5cf8dc], 2
or eax, 0xffffffff
jmp 0x4cc904
cmp dword [ebp - 0x14], 0
je 0x4cc65f
mov edx, dword [ebp + 0x10]
push edx
push 0x5cfa5b
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.004cc390
add esp, 0xc
mov edi, eax
jmp 0x4cc678
mov eax, dword [ebp + 0x10]
add eax, 4
push eax
push 0
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx]
push ecx
call fcn.004cc390
add esp, 0xc
mov edi, eax
test edi, edi
jne 0x4cc68e
mov dword [0x5cf8dc], 8
or eax, 0xffffffff
jmp 0x4cc904
cmp dword [ebp + 0x14], 0
jne 0x4cc69b
xor edx, edx
mov dword [ebp - 8], edx
jmp 0x4cc6c5
mov ecx, dword [ebp + 0x14]
push ecx
call fcn.004cc47c
pop ecx
mov dword [ebp - 8], eax
test eax, eax
jne 0x4cc6c5
mov dword [0x5cf8dc], 8
push edi
call fcn.00469a68
pop ecx
or eax, 0xffffffff
jmp 0x4cc904
call dword [0x5cf93c]
push 0x44
push 0
lea edx, [ebp - 0x168]
push edx
call fcn.004c485c
add esp, 0xc
mov dword [ebp - 0x168], 0x44
mov word [ebp - 0x138], 0xa
cmp dword [0x5ce3bc], 0
je 0x4cc72e
push 0
call dword [0x5ce3b4]
pop ecx
mov esi, eax
mov word [ebp - 0x136], si
movzx eax, si
push eax
call fcn.004c3a64
pop ecx
mov dword [ebp - 0x134], eax
test eax, eax
je 0x4cc6ac
mov edx, dword [ebp - 0x134]
push edx
call dword [0x5ce3b4]
pop ecx
mov dword [ebp - 0x124], 0xc
xor ecx, ecx
xor esi, esi
mov dword [ebp - 0x120], ecx
mov dword [ebp - 0x11c], 1
test bl, 0x20
je 0x4cc756
or esi, 0x10
jmp 0x4cc75e
test bl, 0x10
je 0x4cc75e
or esi, 8
test bl, 0x40
je 0x4cc769
or esi, 0x200
test bl, 0x80
je 0x4cc771
or esi, 4
test bh, 2
je 0x4cc77e
or esi, 0x800
jmp 0x4cc789
test bh, 4
je 0x4cc789
or esi, 0x1000
test bh, 8
je 0x4cc794
or esi, 0x4000000
test bh, 0x20
je 0x4cc79e
or esi, 0x20
jmp 0x4cc7c0
test bh, 0x10
je 0x4cc7a8
or esi, 0x40
jmp 0x4cc7c0
test bh, 0x40
je 0x4cc7b5
or esi, 0x80
jmp 0x4cc7c0
test bh, 0x80
je 0x4cc7c0
or esi, 0x100
lea eax, [ebp - 0x178]
lea edx, [ebp - 0x168]
push eax
push edx
push 0
lea eax, [ebp - 0x124]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x124]
push ecx
push esi
push 1
push eax
push edx
push edi
cmp dword [ebp - 0x14], 0
je 0x4cc7f1
mov ecx, dword [ebp - 0xc]
jmp 0x4cc7f7
lea ecx, [ebp - 0x118]
push ecx
call sub.KERNEL32.DLL_CreateProcessA
dec eax
je 0x4cc83e
call sub.KERNEL32.DLL_GetLastError
and eax, 0xffff
dec eax
je 0x4cc81e
sub eax, 7
je 0x4cc825
sub eax, 0x51
jne 0x4cc82c
mov eax, 0x2a
jmp 0x4cc831
mov eax, 0x13
jmp 0x4cc831
mov eax, 8
jmp 0x4cc831
mov eax, 0x15
mov dword [0x5cf8dc], eax
or esi, 0xffffffff
jmp 0x4cc8f1
cmp ebx, 0x10
jne 0x4cc848
mov ebx, 4
mov eax, ebx
and eax, 7
sub eax, 1
jb 0x4cc85f
je 0x4cc8a4
dec eax
je 0x4cc8bf
dec eax
sub eax, 2
jb 0x4cc893
jmp 0x4cc8d8
push 0xffffffffffffffff
mov edx, dword [ebp - 0x178]
push edx
call sub.KERNEL32.DLL_WaitForSingleObject
lea ecx, [ebp - 4]
push ecx
mov eax, dword [ebp - 0x178]
push eax
call sub.KERNEL32.DLL_GetExitCodeProcess
test bh, 1
jne 0x4cc88e
mov edx, dword [ebp - 0x178]
push edx
call sub.KERNEL32.DLL_CloseHandle
mov esi, dword [ebp - 4]
jmp 0x4cc8db
test bh, 1
jne 0x4cc8a4
mov eax, dword [ebp - 0x178]
push eax
call sub.KERNEL32.DLL_CloseHandle
mov edx, dword [ebp - 0x178]
push edx
mov ecx, dword [ebp - 0x170]
push ecx
call dword [0x5cfa30]
add esp, 8
mov esi, eax
jmp 0x4cc8db
mov eax, dword [ebp - 8]
push eax
call fcn.00469a68
pop ecx
push edi
call fcn.00469a68
pop ecx
push 0
call fcn.004cb94c
pop ecx
or esi, 0xffffffff
test bl, 0x80
jne 0x4cc8f1
test bh, 1
jne 0x4cc8f1
mov eax, dword [ebp - 0x174]
push eax
call sub.KERNEL32.DLL_CloseHandle
mov edx, dword [ebp - 8]
push edx
call fcn.00469a68
pop ecx
push edi
call fcn.00469a68
pop ecx
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret