Function at 0x42e420
Capabilities:
Create pipe

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x45e064
mov eax, dword fs:[0]
push eax
sub esp, 0xa0
mov eax, dword [0x4771ac]
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.0041b400
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.00416600
push esi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.0042a660
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x42e4ad
mov eax, dword [eax]
mov edi, dword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
push 0x47aaa4
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 0x42e50d
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e503
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42ea7c
push edx
push ecx
call fcn.0044eddd
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 0x42e55e
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e554
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42ea81
push edx
push ecx
call fcn.0044eddd
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 0x42e5b3
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e5a9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42ea86
push edx
push ecx
call fcn.0044eddd
add esp, 8
lea eax, [ebp - 0x58]
push ebx
push eax
call fcn.0041b400
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.00416600
push esi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.0042a660
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x42e609
mov eax, dword [eax]
push 0x47aaa4
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 0x42e65f
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e655
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42ea8b
push edx
push ecx
call fcn.0044eddd
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 0x42e6b1
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e6a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42ea90
push edx
push ecx
call fcn.0044eddd
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 0x42e706
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e6fc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42ea95
push edx
push ecx
call fcn.0044eddd
add esp, 8
push dword [ebp - 0x8c]
lea eax, [ebp - 0x58]
push eax
call fcn.0041b400
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.00416600
push esi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.0042a660
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x42e761
mov eax, dword [eax]
push eax
push 0
push 0
push 0x47aaa4
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov edx, dword [ebp - 0x5c]
mov edi, eax
cmp edx, 8
jb 0x42e7ad
mov ecx, dword [ebp - 0x70]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e7a3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42ea9a
push edx
push ecx
call fcn.0044eddd
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 0x42e7ff
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e7f5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42ea9f
push edx
push ecx
call fcn.0044eddd
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 0x42e854
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e84a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42eaa4
push edx
push ecx
call fcn.0044eddd
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.0041b400
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.00416600
sub esp, 0x18
mov byte [ebp - 4], 7
mov eax, esp
lea ecx, [ebp - 0x40]
push esi
push ecx
push eax
call fcn.0042a660
add esp, 0xc
call fcn.0042e210
mov edx, dword [ebp - 0x2c]
add esp, 0x18
mov byte [ebp - 4], 6
cmp edx, 8
jb 0x42e906
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e8fc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42eaa9
push edx
push ecx
call fcn.0044eddd
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 0x42e95e
mov ecx, dword [ebp - 0x88]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42e954
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42eaae
push edx
push ecx
call fcn.0044eddd
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.0044edad
mov esi, eax
add esp, 4
test esi, esi
je 0x42e98f
movq xmm0, qword [ebp - 0x1c]
movq qword [esi], xmm0
mov dword [esi + 8], edi
jmp 0x42e991
xor esi, esi
mov dword [ebp - 0x90], esi
lea ecx, [ebp - 0xac]
mov dword [ebp - 4], 8
call fcn.0042c1b0
mov dword [ebp - 0xac], 0x466ca4
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.00431e50
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x42e9ee
push 0xc
push eax
call fcn.0044eddd
add esp, 8
mov esi, dword [ebp - 0xa4]
mov edi, dword [ebp - 0xa8]
push esi
mov byte [ebp - 4], 0xa
call fcn.0043574c
add esp, 4
test eax, eax
je 0x42ea14
push eax
call fcn.00435a4e
add esp, 4
push esi
call fcn.00435690
push edi
call fcn.00437ce2
add esp, 8
mov eax, dword [ebp - 0x94]
mov dword [ebp - 4], 0xb
test eax, eax
jne 0x42ea44
push 1
call fcn.00435a7b
mov eax, dword [ebp - 0x94]
add esp, 4
push eax
push dword [ebp - 0x98]
call fcn.00435920
add esp, 8
test eax, eax
je 0x42ea60
push eax
call fcn.00435a4e
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.0044edeb
mov esp, ebp
pop ebp
ret
call fcn.004503b0
call fcn.004503b0
call fcn.004503b0
call fcn.004503b0
call fcn.004503b0
call fcn.004503b0
call fcn.004503b0
call fcn.004503b0
call fcn.004503b0
call fcn.004503b0
call fcn.004503b0
int3