Function at 0x1400575c0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x160
mov rax, qword [0x1400710e0]
xor rax, rsp
mov qword [rsp + 0x150], rax
mov esi, dword [rsp + 0x1c8]
mov edi, r8d
mov dword [rsp + 0x34], r8d
mov r8, rdx
mov r15, rdx
mov rbx, rcx
mov edx, 0x104
add rcx, 0x4c
mov dword [rsp + 0x38], r9d
call fcn.140025e1c
mov eax, dword [rsp + 0x1c0]
mov r14d, dword [rsp + 0x1d0]
mov edx, dword [rsp + 0x1d8]
mov dword [rbx + 0x8b8], edi
mov dword [rbx + 0x8c0], eax
xor edi, edi
lea rax, str.DEFAULT
mov dword [rbx + 0x8bc], esi
mov dword [rbx + 0x8b4], r14d
xor ecx, ecx
nop
cmp ecx, 7
jae 0x14005766a
cmp edx, dword [rax - 0x10]
jne 0x14005765d
mov rdi, qword [rax]
inc ecx
add rax, 0x28
test rdi, rdi
je 0x140057650
jmp 0x14005766f
test rdi, rdi
je 0x1400576a9
lea rdx, str.DEFAULT
mov rcx, rdi
call fcn.140025430
test eax, eax
je 0x1400576a9
lea rdx, [0x14005e5b0]
mov rcx, rdi
call fcn.140025430
test eax, eax
je 0x1400576a9
lea rcx, [rbx + 0x768]
mov r8, rdi
mov edx, 0x104
call fcn.140025e1c
cmp byte [rbx + 0x150], 0
jne 0x1400576cb
lea r8, str._Sync
lea rcx, [rbx + 0x150]
mov r9d, r14d
mov rdx, r15
call fcn.140056f90
lea r12, [rbx + 0x254]
cmp byte [r12], 0
jne 0x1400576ee
lea r8, str._Mem
mov r9d, r14d
mov rdx, r15
mov rcx, r12
call fcn.140056f90
cmp byte [rbx + 0x358], 0
jne 0x140057767
lea r8, str._Ready
lea rcx, [rbx + 0x358]
mov r9d, r14d
mov rdx, r15
call fcn.140056f90
test rdi, rdi
je 0x140057767
lea rdx, str.DEFAULT
mov rcx, rdi
call fcn.140025430
test eax, eax
je 0x140057767
lea rdx, [0x14005e5b0]
mov rcx, rdi
call fcn.140025430
test eax, eax
je 0x140057767
lea r8, [0x140066b28]
lea rcx, [rbx + 0x358]
mov edx, 0x104
call fcn.140026090
lea rcx, [rbx + 0x358]
mov r8, rdi
mov edx, 0x104
call fcn.140026090
cmp byte [rbx + 0x45c], 0
jne 0x1400577e0
lea r8, str._Read
lea rcx, [rbx + 0x45c]
mov r9d, r14d
mov rdx, r15
call fcn.140056f90
test rdi, rdi
je 0x1400577e0
lea rdx, str.DEFAULT
mov rcx, rdi
call fcn.140025430
test eax, eax
je 0x1400577e0
lea rdx, [0x14005e5b0]
mov rcx, rdi
call fcn.140025430
test eax, eax
je 0x1400577e0
lea r8, [0x140066b28]
lea rcx, [rbx + 0x45c]
mov edx, 0x104
call fcn.140026090
lea rcx, [rbx + 0x45c]
mov r8, rdi
mov edx, 0x104
call fcn.140026090
cmp byte [rbx + 0x560], 0
jne 0x140057802
lea r8, str._Discovery
lea rcx, [rbx + 0x560]
mov r9d, r14d
mov rdx, r15
call fcn.140056f90
cmp byte [rbx + 0x664], 0
jne 0x140057824
lea r8, str._Exclusive
lea rcx, [rbx + 0x664]
mov r9d, r14d
mov rdx, r15
call fcn.140056f90
cmp qword [rbx + 0x38], 0
jne 0x140057845
lea rcx, [rbx + 0x898]
lea r8, [rbx + 0x150]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
mov qword [rbx + 0x38], rax
mov eax, dword [rsp + 0x34]
mov r15d, dword [rsp + 0x38]
test esi, esi
mov dword [rbx + 0x48], r15d
cmove esi, eax
cmp qword [rbx + 0x28], 0
mov dword [rsp + 0x30], esi
jne 0x140057889
xor r9d, r9d
inc eax
lea rdx, [rbx + 0x898]
lea r8d, [r9 + 4]
or rcx, 0xffffffffffffffff
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov qword [rbx + 0x28], rax
mov r10, qword [rbx + 0x28]
test r10, r10
je 0x1400578bf
cmp qword [rbx + 0x908], 0
jne 0x1400578cd
lea ecx, [rsi + 1]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rcx
mov rcx, r10
mov edx, 0xf001f
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [rbx + 0x908], rax
cmp qword [rbx + 0x908], 0
je 0x140057a5e
cmp byte [rbx + 0x560], 0
mov esi, dword [rbx + 0x48]
je 0x140057962
lea r8, [rbx + 0x560]
lea rcx, [rsp + 0x40]
mov edx, 0x104
call fcn.140025e1c
mov edx, 0x104
lea rcx, [rsp + 0x40]
test esi, esi
je 0x140057956
lea r8, str._Server
call fcn.140026090
test rdi, rdi
je 0x140057962
lea rdx, str.DEFAULT
mov rcx, rdi
call fcn.140025430
test eax, eax
je 0x140057962
mov rcx, rdi
call fcn.14000ce30
test al, al
jne 0x140057962
lea r8, [0x140066b28]
lea rcx, [rsp + 0x40]
mov edx, 0x104
call fcn.140026090
mov r8, rdi
mov edx, 0x104
lea rcx, [rsp + 0x40]
jmp 0x14005795d
lea r8, str._Client
call fcn.140026090
cmp qword [rbx + 0x10], 0
jne 0x140057988
xor r8d, r8d
lea rcx, [rbx + 0x898]
lea r9, [rbx + 0x45c]
lea edx, [r8 + 1]
call qword [sym.imp.KERNEL32.dll_CreateEventA]
mov qword [rbx + 0x10], rax
cmp qword [rbx + 8], 0
jne 0x1400579ae
xor r8d, r8d
lea rcx, [rbx + 0x898]
lea r9, [rbx + 0x358]
lea edx, [r8 + 1]
call qword [sym.imp.KERNEL32.dll_CreateEventA]
mov qword [rbx + 8], rax
cmp qword [rbx + 0x30], 0
jne 0x1400579d2
xor r8d, r8d
lea rcx, [rbx + 0x898]
lea r9, [rsp + 0x40]
lea edx, [r8 + 1]
call qword [sym.imp.KERNEL32.dll_CreateEventA]
mov qword [rbx + 0x30], rax
cmp qword [rbx + 0x40], 0
jne 0x140057a03
cmp dword [rsp + 0x1c0], 0
je 0x140057a03
mov edx, 1
lea rcx, [rbx + 0x898]
lea r9, [rbx + 0x664]
mov r8d, edx
call qword [sym.imp.KERNEL32.dll_CreateEventA]
mov qword [rbx + 0x40], rax
test r15d, r15d
je 0x140057a5a
cmp qword [rbx + 0x20], 0
jne 0x140057a2a
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateEventA]
mov qword [rbx + 0x20], rax
test rax, rax
je 0x140057a5a
cmp qword [rbx + 0x18], 0
jne 0x140057a5a
xor ecx, ecx
lea rax, [rsp + 0x34]
lea r8, [0x140057060]
mov qword [rsp + 0x28], rax
mov r9, rbx
xor edx, edx
mov dword [rsp + 0x20], ecx
mov dword [rsp + 0x34], ecx
call fcn.140026a24
mov qword [rbx + 0x18], rax
mov esi, dword [rsp + 0x30]
cmp qword [rbx + 0x28], 0
je 0x140057a8a
cmp qword [rbx + 0x908], 0
je 0x140057a8a
cmp qword [rbx + 0x10], 0
je 0x140057a8a
cmp qword [rbx + 8], 0
je 0x140057a8a
mov dword [rbx + 0x8b0], esi
mov eax, 1
jmp 0x140057a94
mov rcx, rbx
call fcn.1400572a0
xor eax, eax
mov rcx, qword [rsp + 0x150]
xor rcx, rsp
call fcn.140023ca0
mov rbx, qword [rsp + 0x1b8]
add rsp, 0x160
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret