Function at 0x180002000
Capabilities:
Check mutex on windows

Disassembly:
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x260
mov qword [rsp + 0x238], 0xfffffffffffffffe
mov dword [rsp + 0x1e4], 0
mov qword [rsp + 0x1c8], 0
mov qword [rsp + 0x1d8], 0
mov qword [rsp + 0x1c0], 0
xor eax, eax
mov word [rsp + 0x20], ax
lea rdi, [rsp + 0x22]
xor eax, eax
mov ecx, 0x196
rep stosb byte [rdi], al
mov qword [rsp + 0x1d0], 0
mov byte [rsp + 0x1e0], 0
xor eax, eax
test eax, eax
jne 0x180002071
cmp qword [rsp + 0x270], 0
jne 0x180002098
mov dword [rsp + 0x1e4], 0x57
xor eax, eax
test eax, eax
jne 0x18000208d
jmp 0x180002243
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
mov qword [0x180073c68], rax
mov ecx, 1
call fcn.180001c50
mov qword [rsp + 0x1c0], rax
call fcn.180001bf0
mov rax, qword [rsp + 0x270]
cmp dword [rax + 0x174], 0
jne 0x1800020e1
mov rcx, qword [rsp + 0x1c0]
call fcn.180001d50
mov ecx, 4
call fcn.18004f1fc
mov qword [rsp + 0x1f8], rax
cmp qword [rsp + 0x1f8], 0
je 0x180002115
mov rcx, qword [rsp + 0x1f8]
call fcn.18004d5e0
mov qword [rsp + 0x240], rax
jmp 0x180002121
mov qword [rsp + 0x240], 0
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x1f0], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x1c8]
mov eax, dword [rax]
mov dword [rsp + 0x230], eax
cmp dword [rsp + 0x230], 0
jne 0x180002172
mov dword [rsp + 0x1e4], 0x41
xor eax, eax
test eax, eax
jne 0x180002167
jmp 0x180002243
mov ecx, 0x650
call fcn.18004f1fc
mov qword [rsp + 0x208], rax
cmp qword [rsp + 0x208], 0
je 0x1800021a6
mov rcx, qword [rsp + 0x208]
call fcn.180044100
mov qword [rsp + 0x248], rax
jmp 0x1800021b2
mov qword [rsp + 0x248], 0
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x1d8]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x270]
mov rcx, qword [rsp + 0x1d8]
call qword [rax + reloc.WS2_32.dll_recv]
mov word [rsp + 0x1e8], ax
xor eax, eax
test eax, eax
jne 0x1800021f8
mov edx, 0xffffffff
mov rcx, qword [rsp + 0x270]
mov rcx, qword [rcx + 0x178]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rax, qword [rsp + 0x1d8]
mov rax, qword [rax]
movzx edx, word [rsp + 0x1e8]
mov rcx, qword [rsp + 0x1d8]
call qword [rax + 0x80]
xor eax, eax
test eax, eax
jne 0x180002071
xor eax, eax
test eax, eax
jne 0x180002243
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x210], rax
cmp qword [rsp + 0x210], 0
je 0x1800022ac
mov rcx, qword [rsp + 0x210]
call fcn.180045010
mov eax, 1
and eax, 1
test eax, eax
je 0x18000229a
mov rcx, qword [rsp + 0x210]
call fcn.18004f1f4
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x250], rax
jmp 0x1800022b8
mov qword [rsp + 0x250], 0
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x220], rax
cmp qword [rsp + 0x220], 0
je 0x18000231b
mov rcx, qword [rsp + 0x220]
call fcn.1800385e0
mov eax, 1
and eax, 1
test eax, eax
je 0x180002309
mov rcx, qword [rsp + 0x220]
call fcn.18004f1f4
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x258], rax
jmp 0x180002327
mov qword [rsp + 0x258], 0
cmp qword [0x180073c68], 0
je 0x180002349
mov rcx, qword [0x180073c68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x180073c68], 0
xor eax, eax
add rsp, 0x260
pop rdi
ret