Function at 0x5300d0
Capabilities:
Create pipe

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffec
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.0040514c
mov eax, dword [ebp - 8]
call fcn.0040514c
mov eax, dword [ebp - 0xc]
call fcn.0040514c
mov eax, dword [ebp + 0x40]
call fcn.0040514c
mov eax, dword [ebp + 0x14]
call fcn.0040514c
mov ebx, 0x55edd0
xor eax, eax
push ebp
push 0x530332
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x5302fd
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 0
push 0x1000
push 0x1000
push 0xff
push 7
push 3
mov eax, dword [ebp - 4]
call fcn.0040515c
push eax
call sub.kernel32.dll_CreateNamedPipeA
mov dword [0x55edc8], eax
mov cl, 1
mov dl, 1
mov eax, dword [0x52ffbc]
call fcn.00427d44
mov dword [ebx], eax
mov eax, dword [ebx]
add eax, 0x44
mov edx, dword [ebp - 4]
call fcn.00404cd4
mov eax, dword [ebx]
add eax, 0x48
mov edx, dword [ebp + 0x40]
call fcn.00404cd4
mov eax, dword [ebx]
add eax, 0x4c
mov edx, dword [ebp - 0xc]
call fcn.00404cd4
mov eax, dword [ebx]
add eax, 0x40
mov edx, dword [ebp + 0x14]
call fcn.00404cd4
mov eax, dword [ebx]
mov byte [eax + 0xf], 1
mov eax, dword [ebx]
call fcn.0042811c
call fcn.004e0fa4
test al, al
jne 0x5301f0
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 8]
call fcn.0040c594
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x10]
call fcn.0040b69c
mov eax, dword [ebp - 0x10]
mov edx, 0x53034c
call fcn.004050a8
jne 0x5301f0
mov eax, dword [ebp - 8]
call fcn.0040c200
test al, al
je 0x5301f0
mov eax, dword [ebp - 8]
call fcn.00533794
mov eax, dword [ebp - 8]
call fcn.0051cc9c
mov byte [0x55edd4], al
mov cl, 1
mov dl, 1
mov eax, dword [0x530050]
call fcn.00427d44
mov dword [0x55edc4], eax
mov eax, dword [0x55edc4]
mov edx, dword [0x55edc8]
mov dword [eax + 0x48], edx
mov eax, dword [0x55edc4]
add eax, 0x4c
mov edx, dword [ebp - 8]
call fcn.00404cd4
mov eax, dword [0x55edc4]
mov dl, byte [ebp + 0x1c]
mov byte [eax + 0x44], dl
mov eax, dword [0x55edc4]
mov edx, dword [ebp + 0x3c]
mov dword [eax + 0x54], edx
mov eax, dword [0x55edc4]
mov edx, dword [ebp + 0x38]
mov dword [eax + 0x58], edx
mov eax, dword [0x55edc4]
mov edx, dword [ebp + 0x34]
mov dword [eax + 0x5c], edx
mov eax, dword [0x55edc4]
mov edx, dword [ebp + 0x30]
mov dword [eax + 0x60], edx
mov eax, dword [0x55edc4]
mov edx, dword [ebp + 0x2c]
mov dword [eax + 0x64], edx
mov eax, dword [0x55edc4]
mov edx, dword [ebp + 0x28]
mov dword [eax + 0x68], edx
mov eax, dword [0x55edc4]
mov edx, dword [ebp + 0x24]
mov dword [eax + 0x6c], edx
mov eax, dword [0x55edc4]
mov edx, dword [ebp + 0x20]
mov dword [eax + 0x70], edx
mov eax, dword [0x55edc4]
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x78], edx
mov eax, dword [0x55edc4]
mov edx, dword [ebp + 0xc]
mov dword [eax + 0x7c], edx
xor eax, eax
push ebp
push 0x5302cb
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp + 8]
mov edx, dword [0x55edc4]
mov dword [edx + 0x40], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5302d5
mov eax, dword [0x55edc4]
mov dl, byte [ebp + 0x18]
mov byte [eax + 0x74], dl
mov eax, dword [0x55edc4]
mov byte [eax + 0xf], 1
mov eax, dword [0x55edc4]
call fcn.0042811c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x530307
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x530339
lea eax, [ebp - 0x14]
mov edx, 5
call fcn.00404ca4
lea eax, [ebp + 0x14]
call fcn.00404c80
lea eax, [ebp + 0x40]
call fcn.00404c80
ret