Function at 0x180016320
Capabilities:
Create pipe
Create thread

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x100
mov rax, qword [0x180038040]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov r14d, ecx
xor r12d, r12d
mov edx, ecx
lea rcx, [rbp - 0x19]
call fcn.18001b2c0
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x49], xmm1
lea r8d, [r12 + 0x12]
lea rdx, str..pipeLUNA_HOOK
lea rcx, [rbp - 0x59]
call fcn.180003570
nop
mov r9, rbx
lea r8, [rbp - 0x59]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp - 0x39]
call fcn.180013840
lea rcx, [rbp - 0x39]
cmp qword [rbp - 0x21], 7
cmova rcx, qword [rbp - 0x39]
lea rdi, [0x1800395c8]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], 0xffffffff
mov dword [rsp + 0x28], 0xc350
mov dword [rsp + 0x20], r12d
lea edx, [r12 + 1]
mov r9d, 0xff
lea r8d, [r12 + 6]
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
mov r15, rax
mov rdx, qword [rbp - 0x21]
cmp rdx, 7
jbe 0x180016422
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001641d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800168fd
call fcn.18001f240
movdqa xmm0, xmmword [0x18002d000]
movdqu xmmword [rbp - 0x29], xmm0
mov word [rbp - 0x39], r12w
mov rdx, qword [rbp - 0x41]
cmp rdx, 7
jbe 0x180016475
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001646f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016903
call fcn.18001f240
nop
mov rdx, qword [rbp - 1]
cmp rdx, 7
jbe 0x1800164b5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800164b0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016909
call fcn.18001f240
mov edx, r14d
lea rcx, [rbp - 0x19]
call fcn.18001b2c0
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x49], xmm1
mov r8d, 0x12
lea rdx, str..pipeLUNA_HOST
lea rcx, [rbp - 0x59]
call fcn.180003570
nop
mov r9, rbx
lea r8, [rbp - 0x59]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp - 0x39]
call fcn.180013840
lea rcx, [rbp - 0x39]
cmp qword [rbp - 0x21], 7
cmova rcx, qword [rbp - 0x39]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], 0xffffffff
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], 0xc350
mov edx, 2
mov r9d, 0xff
lea r8d, [rdx + 4]
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
mov rsi, rax
mov rdx, qword [rbp - 0x21]
cmp rdx, 7
jbe 0x18001657f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001657a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001690f
call fcn.18001f240
movdqa xmm0, xmmword [0x18002d000]
movdqu xmmword [rbp - 0x29], xmm0
mov word [rbp - 0x39], r12w
mov rdx, qword [rbp - 0x41]
cmp rdx, 7
jbe 0x1800165d2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800165cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016915
call fcn.18001f240
nop
mov rdx, qword [rbp - 1]
cmp rdx, 7
jbe 0x180016612
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001660d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001691b
call fcn.18001f240
mov edx, r14d
lea rcx, [rbp - 0x19]
call fcn.18001b2c0
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x49], xmm1
mov r8d, 0x13
lea rdx, str.LUNA_PIPE_AVAILABLE
lea rcx, [rbp - 0x59]
call fcn.180003570
nop
mov r9, rbx
lea r8, [rbp - 0x59]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp - 0x39]
call fcn.180013840
lea r9, [rbp - 0x39]
cmp qword [rbp - 0x21], 7
cmova r9, qword [rbp - 0x39]
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov rdi, rax
mov rdx, qword [rbp - 0x21]
cmp rdx, 7
jbe 0x1800166bb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800166b6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016921
call fcn.18001f240
movdqa xmm0, xmmword [0x18002d000]
movdqu xmmword [rbp - 0x29], xmm0
mov word [rbp - 0x39], r12w
mov rdx, qword [rbp - 0x41]
cmp rdx, 7
jbe 0x18001670e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180016708
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016927
call fcn.18001f240
nop
mov rdx, qword [rbp - 1]
cmp rdx, 7
jbe 0x18001674e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180016749
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001692d
call fcn.18001f240
movdqa xmm0, xmmword [0x18002d000]
movdqu xmmword [rbp - 9], xmm0
mov word [rbp - 0x19], r12w
mov edx, r14d
lea rcx, [rbp + 7]
call fcn.18001b2c0
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x49], xmm1
mov r8d, 0x13
lea rdx, str.LUNA_PIPE_AVAILABLE
lea rcx, [rbp - 0x59]
call fcn.180003570
nop
mov r9, rbx
lea r8, [rbp - 0x59]
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.180013840
lea rcx, [rsp + 0x48]
call fcn.180016070
nop
mov rdx, qword [rbp - 0x41]
cmp rdx, 7
jbe 0x1800167f7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800167f1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016933
call fcn.18001f240
nop
mov rdx, qword [rbp + 0x1f]
cmp rdx, 7
jbe 0x180016837
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180016832
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016939
call fcn.18001f240
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov qword [rbp - 0x59], r15
mov qword [rbp - 0x51], rsi
mov qword [rbp - 0x49], rdi
mov ecx, 0x18
call fcn.18001f204
test rax, rax
je 0x18001686e
movups xmm0, xmmword [rbp - 0x59]
movups xmmword [rax], xmm0
movsd xmm1, qword [rbp - 0x49]
movsd qword [rax + 0x10], xmm1
jmp 0x180016871
mov rax, r12
mov qword [rbp - 0x59], rax
lea rcx, [rbp - 0x31]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r12d
mov r9, rax
lea r8, [0x1800120f0]
xor edx, edx
xor ecx, ecx
call sub.msvcrt.dll__beginthreadex
mov qword [rbp - 0x39], rax
test rax, rax
je 0x1800168ee
cmp dword [rbp - 0x31], 0
je 0x1800168e3
movaps xmm0, xmmword [rbp - 0x39]
movdqa xmmword [rbp - 0x59], xmm0
lea rcx, [rbp - 0x59]
call fcn.18001e2f4
test eax, eax
jne 0x1800168e3
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.18001f6d0
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
mov ecx, 1
call fcn.18001ec78
nop
mov dword [rbp - 0x31], r12d
mov ecx, 6
call fcn.18001ec78
nop
call fcn.1800233e0
nop
call fcn.1800233e0
nop
call fcn.1800233e0
nop
call fcn.1800233e0
nop
call fcn.1800233e0
nop
call fcn.1800233e0
nop
call fcn.1800233e0
nop
call fcn.1800233e0
nop
call fcn.1800233e0
nop
call fcn.1800233e0
nop
call fcn.1800233e0
int3