Function at 0x10014440
Capabilities:
Create pipe

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1004ed54
mov eax, dword fs:[0]
push eax
sub esp, 0xa0
mov eax, dword [0x1006a188]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x58]
push ebx
push eax
mov dword [ebp - 0x8c], ebx
call fcn.1001a380
add esp, 8
mov esi, eax
push 0x12
xor eax, eax
mov dword [ebp - 4], 0
push str..pipeLUNA_HOOK
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
call fcn.1000d0e0
push esi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.1000fd60
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x100144cd
mov eax, dword [eax]
mov edi, dword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
push 0x1006d550
push 0xffffffffffffffff
push 0xc350
push 0
push 0xff
push 6
push 1
push eax
call edi
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x90], eax
cmp edx, 8
jb 0x1001452d
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10014523
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014a9c
push edx
push ecx
call fcn.1003443f
add esp, 8
mov edx, dword [ebp - 0x14]
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
mov byte [ebp - 4], al
cmp edx, 8
jb 0x1001457e
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10014574
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014aa1
push edx
push ecx
call fcn.1003443f
add esp, 8
mov edx, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x100145d3
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100145c9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014aa6
push edx
push ecx
call fcn.1003443f
add esp, 8
lea eax, [ebp - 0x58]
push ebx
push eax
call fcn.1001a380
add esp, 8
mov esi, eax
push 0x12
xor eax, eax
mov dword [ebp - 4], 2
push str..pipeLUNA_HOST
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
call fcn.1000d0e0
push esi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.1000fd60
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x10014629
mov eax, dword [eax]
push 0x1006d550
push 0xffffffffffffffff
push 0
push 0xc350
push 0xff
push 6
push 2
push eax
call edi
mov edx, dword [ebp - 0x2c]
mov ebx, eax
cmp edx, 8
jb 0x1001467f
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10014675
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014aab
push edx
push ecx
call fcn.1003443f
add esp, 8
mov edx, dword [ebp - 0x14]
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
mov byte [ebp - 4], 2
cmp edx, 8
jb 0x100146d1
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100146c7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014ab0
push edx
push ecx
call fcn.1003443f
add esp, 8
mov edx, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x10014726
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1001471c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014ab5
push edx
push ecx
call fcn.1003443f
add esp, 8
push dword [ebp - 0x8c]
lea eax, [ebp - 0x58]
push eax
call fcn.1001a380
add esp, 8
mov esi, eax
push 0x13
xor eax, eax
mov dword [ebp - 4], 4
push str.LUNA_PIPE_AVAILABLE
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
call fcn.1000d0e0
push esi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.1000fd60
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x10014781
mov eax, dword [eax]
push eax
push 0
push 0
push 0x1006d550
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov edx, dword [ebp - 0x5c]
mov edi, eax
cmp edx, 8
jb 0x100147cd
mov ecx, dword [ebp - 0x70]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100147c3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014aba
push edx
push ecx
call fcn.1003443f
add esp, 8
mov edx, dword [ebp - 0x14]
xor eax, eax
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 7
mov word [ebp - 0x70], ax
mov byte [ebp - 4], 4
cmp edx, 8
jb 0x1001481f
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10014815
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014abf
push edx
push ecx
call fcn.1003443f
add esp, 8
mov edx, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x10014874
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1001486a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014ac4
push edx
push ecx
call fcn.1003443f
add esp, 8
push dword [ebp - 0x8c]
xor eax, eax
mov dword [ebp - 0x48], 0
mov word [ebp - 0x58], ax
lea eax, [ebp - 0x88]
push eax
mov dword [ebp - 0x44], 7
call fcn.1001a380
add esp, 8
mov esi, eax
push 0x13
xor eax, eax
mov dword [ebp - 4], 6
push str.LUNA_PIPE_AVAILABLE
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
call fcn.1000d0e0
sub esp, 0x18
mov byte [ebp - 4], 7
mov eax, esp
lea ecx, [ebp - 0x40]
push esi
push ecx
push eax
call fcn.1000fd60
add esp, 0xc
call fcn.100142f0
mov edx, dword [ebp - 0x2c]
add esp, 0x18
mov byte [ebp - 4], 6
cmp edx, 8
jb 0x10014926
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1001491c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014ac9
push edx
push ecx
call fcn.1003443f
add esp, 8
mov edx, dword [ebp - 0x74]
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x1001497e
mov ecx, dword [ebp - 0x88]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10014974
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014ace
push edx
push ecx
call fcn.1003443f
add esp, 8
push edi
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov eax, dword [ebp - 0x90]
push 0xc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ebx
call fcn.1003440f
mov esi, eax
add esp, 4
test esi, esi
je 0x100149af
movq xmm0, qword [ebp - 0x1c]
movq qword [esi], xmm0
mov dword [esi + 8], edi
jmp 0x100149b1
xor esi, esi
mov dword [ebp - 0x90], esi
lea ecx, [ebp - 0xac]
mov dword [ebp - 4], 8
call fcn.10012290
mov dword [ebp - 0xac], 0x10053414
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x9c], esi
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0xac]
call fcn.10018cc0
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x10014a0e
push 0xc
push eax
call fcn.1003443f
add esp, 8
mov esi, dword [ebp - 0xa4]
mov edi, dword [ebp - 0xa8]
push esi
mov byte [ebp - 4], 0xa
call fcn.1001c543
add esp, 4
test eax, eax
je 0x10014a34
push eax
call fcn.1001c9aa
add esp, 4
push esi
call fcn.1001c487
push edi
call fcn.1001d801
add esp, 8
mov eax, dword [ebp - 0x94]
mov dword [ebp - 4], 0xb
test eax, eax
jne 0x10014a64
push 1
call fcn.1001c9d7
mov eax, dword [ebp - 0x94]
add esp, 4
push eax
push dword [ebp - 0x98]
call fcn.1001d56c
add esp, 8
test eax, eax
je 0x10014a80
push eax
call fcn.1001c9aa
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1003444d
mov esp, ebp
pop ebp
ret
call fcn.100398a9
call fcn.100398a9
call fcn.100398a9
call fcn.100398a9
call fcn.100398a9
call fcn.100398a9
call fcn.100398a9
call fcn.100398a9
call fcn.100398a9
call fcn.100398a9
call fcn.100398a9
int3