Function at 0x4164d0
Capabilities:
Create pipe

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x45b264
mov eax, dword fs:[0]
push eax
sub esp, 0xa0
mov eax, dword [0x476188]
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.0041bb80
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.0040a730
push esi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.004121f0
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x41655d
mov eax, dword [eax]
mov edi, dword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
push 0x479448
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 0x4165bd
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4165b3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b2c
push edx
push ecx
call fcn.00436c0f
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 0x41660e
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x416604
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b31
push edx
push ecx
call fcn.00436c0f
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 0x416663
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x416659
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b36
push edx
push ecx
call fcn.00436c0f
add esp, 8
lea eax, [ebp - 0x58]
push ebx
push eax
call fcn.0041bb80
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.0040a730
push esi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.004121f0
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x4166b9
mov eax, dword [eax]
push 0x479448
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 0x41670f
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x416705
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b3b
push edx
push ecx
call fcn.00436c0f
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 0x416761
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x416757
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b40
push edx
push ecx
call fcn.00436c0f
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 0x4167b6
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4167ac
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b45
push edx
push ecx
call fcn.00436c0f
add esp, 8
push dword [ebp - 0x8c]
lea eax, [ebp - 0x58]
push eax
call fcn.0041bb80
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.0040a730
push esi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.004121f0
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x416811
mov eax, dword [eax]
push eax
push 0
push 0
push 0x479448
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov edx, dword [ebp - 0x5c]
mov edi, eax
cmp edx, 8
jb 0x41685d
mov ecx, dword [ebp - 0x70]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x416853
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b4a
push edx
push ecx
call fcn.00436c0f
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 0x4168af
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4168a5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b4f
push edx
push ecx
call fcn.00436c0f
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 0x416904
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4168fa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b54
push edx
push ecx
call fcn.00436c0f
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.0041bb80
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.0040a730
sub esp, 0x18
mov byte [ebp - 4], 7
mov eax, esp
lea ecx, [ebp - 0x40]
push esi
push ecx
push eax
call fcn.004121f0
add esp, 0xc
call fcn.00416380
mov edx, dword [ebp - 0x2c]
add esp, 0x18
mov byte [ebp - 4], 6
cmp edx, 8
jb 0x4169b6
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4169ac
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b59
push edx
push ecx
call fcn.00436c0f
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 0x416a0e
mov ecx, dword [ebp - 0x88]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x416a04
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416b5e
push edx
push ecx
call fcn.00436c0f
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.00436bdf
mov esi, eax
add esp, 4
test esi, esi
je 0x416a3f
movq xmm0, qword [ebp - 0x1c]
movq qword [esi], xmm0
mov dword [esi + 8], edi
jmp 0x416a41
xor esi, esi
mov dword [ebp - 0x90], esi
lea ecx, [ebp - 0xac]
mov dword [ebp - 4], 8
call fcn.00414350
mov dword [ebp - 0xac], 0x45f62c
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.0041a550
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x416a9e
push 0xc
push eax
call fcn.00436c0f
add esp, 8
mov esi, dword [ebp - 0xa4]
mov edi, dword [ebp - 0xa8]
push esi
mov byte [ebp - 4], 0xa
call fcn.0041e75b
add esp, 4
test eax, eax
je 0x416ac4
push eax
call fcn.0041eb76
add esp, 4
push esi
call fcn.0041e69f
push edi
call fcn.0041e9c6
add esp, 8
mov eax, dword [ebp - 0x94]
mov dword [ebp - 4], 0xb
test eax, eax
jne 0x416af4
push 1
call fcn.0041eba3
mov eax, dword [ebp - 0x94]
add esp, 4
push eax
push dword [ebp - 0x98]
call fcn.0041e2c2
add esp, 8
test eax, eax
je 0x416b10
push eax
call fcn.0041eb76
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.00436e18
mov esp, ebp
pop ebp
ret
call fcn.0043bfe9
call fcn.0043bfe9
call fcn.0043bfe9
call fcn.0043bfe9
call fcn.0043bfe9
call fcn.0043bfe9
call fcn.0043bfe9
call fcn.0043bfe9
call fcn.0043bfe9
call fcn.0043bfe9
call fcn.0043bfe9
int3