Function at 0x402bb0
Capabilities:
Check mutex on windows
Connect pipe
Create pipe
Create process on windows
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c8
mov eax, dword [0x41c3d0]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push 0x10
push str.Test_jd8ch_Level
lea ecx, [ebp - 0x358]
mov dword [ebp - 0x344], 0xf
mov dword [ebp - 0x348], 0
mov byte [ebp - 0x358], 0
call fcn.004015a0
push 8
push str._starter
lea ecx, [ebp - 0x358]
call fcn.004021a0
cmp dword [ebp - 0x344], 0x10
lea eax, [ebp - 0x358]
cmovae eax, dword [ebp - 0x358]
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
test eax, eax
je 0x402c3d
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x402c3d
mov esi, 0xc
jmp 0x402f8d
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x328], ax
lea eax, [ebp - 0x326]
push eax
call fcn.00404980
add esp, 0xc
lea eax, [ebp - 0x328]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
sub esp, 0x18
xor eax, eax
mov edx, esp
mov dword [edx + 0x14], 7
mov dword [edx + 0x10], 0
mov word [edx], ax
cmp word [ebp - 0x328], ax
jne 0x402c94
xor ecx, ecx
jmp 0x402caf
lea ecx, [ebp - 0x328]
lea esi, [ecx + 2]
lea ecx, [ecx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x402ca0
sub ecx, esi
sar ecx, 1
push ecx
lea eax, [ebp - 0x328]
mov ecx, edx
push eax
call fcn.00402560
lea eax, [ebp - 0x370]
push eax
call fcn.00402790
add esp, 0x1c
mov dword [ebp - 0x32c], 7
xor eax, eax
mov dword [ebp - 0x330], 0
lea ecx, [ebp - 0x340]
mov word [ebp - 0x340], ax
push 8
push 0x4145e8
call fcn.00402560
push 4
push str..exe
lea ecx, [ebp - 0x340]
call fcn.00402360
cmp dword [ebp - 0x32c], 8
lea ecx, [ebp - 0x340]
lea eax, [ebp - 0x370]
cmovae ecx, dword [ebp - 0x340]
cmp dword [ebp - 0x35c], 8
cmovae eax, dword [ebp - 0x370]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x402d5c
test dx, dx
je 0x402d58
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x402d5c
add eax, 4
add ecx, 4
test dx, dx
jne 0x402d36
xor eax, eax
jmp 0x402d61
sbb eax, eax
or eax, 1
test eax, eax
je 0x402e0a
sub esp, 0x18
xor eax, eax
mov ecx, esp
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x340]
push eax
call fcn.00402440
sub esp, 0x18
xor eax, eax
mov ecx, esp
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x340]
push eax
call fcn.00402440
sub esp, 0x18
xor eax, eax
mov ecx, esp
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x370]
push eax
call fcn.00402440
call fcn.00401b00
add esp, 0x48
test eax, eax
jne 0x402e00
push 0x1010
push 0x414608
push 0x414624
push eax
call dword [sym.imp.USER32.dll_MessageBoxW]
mov esi, 1
jmp 0x402f25
push 0x44
lea eax, [ebp - 0x3b4]
push 0
push eax
call fcn.00404980
add esp, 0xc
lea eax, [ebp - 0x3c4]
xorps xmm0, xmm0
movdqu xmmword [ebp - 0x3c4], xmm0
movdqu xmm0, xmmword [str..maple.sib]
push eax
lea eax, [ebp - 0x3b4]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x1c]
movdqu xmmword [ebp - 0x1c], xmm0
push eax
movq xmm0, qword [0x414658]
push 0
movq qword [ebp - 0xc], xmm0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x402e8c
push 0x1010
push 0x414608
push 0x414660
push eax
call dword [sym.imp.USER32.dll_MessageBoxW]
mov esi, 2
jmp 0x402f25
push 0
push 0
push dword [ebp - 0x3c4]
push 0x401e20
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push 0x103
lea eax, [ebp - 0x11f]
mov byte [ebp - 0x120], 0
push 0
push eax
call fcn.00404980
push str.Test_jd8ch_Level
lea eax, [ebp - 0x120]
push str..pipe_s_start
push eax
call fcn.00401a00
add esp, 0x18
lea eax, [ebp - 0x120]
push 0
push 0
push 0x400
push 0x400
push 1
push 0
push 3
push eax
call dword [sym.imp.KERNEL32.dll_CreateNamedPipeA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x402f07
mov esi, 1
jmp 0x402f25
push 0
push esi
call dword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
test eax, eax
jne 0x402f19
lea esi, [eax + 2]
jmp 0x402f25
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, 3
cmp dword [ebp - 0x32c], 8
jb 0x402f3c
push dword [ebp - 0x340]
call fcn.00403693
add esp, 4
xor eax, eax
mov dword [ebp - 0x32c], 7
cmp dword [ebp - 0x35c], 8
mov dword [ebp - 0x330], 0
mov word [ebp - 0x340], ax
jb 0x402f70
push dword [ebp - 0x370]
call fcn.00403693
add esp, 4
xor eax, eax
mov dword [ebp - 0x35c], 7
mov dword [ebp - 0x360], 0
mov word [ebp - 0x370], ax
cmp dword [ebp - 0x344], 0x10
jb 0x402fa4
push dword [ebp - 0x358]
call fcn.00403693
add esp, 4
mov ecx, dword [ebp - 4]
mov eax, esi
xor ecx, ebp
pop esi
call fcn.00403ecc
mov esp, ebp
pop ebp
ret 0x10