Function at 0x100064104
Capabilities:
Check mutex on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x280
mov rax, qword [0x100083138]
xor rax, rsp
mov qword [rsp + 0x270], rax
xor edi, edi
mov r13, r8
mov r15, rcx
mov r12d, edx
lea rcx, [rsp + 0x38]
lea r8d, [rdi + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
mov r14d, edi
mov dword [rsp + 0x30], edi
call sub.msvcrt.dll_memset
cmp r15, rdi
je 0x100064416
cmp r12d, 4
lea ebx, [rdi + 2]
je 0x10006417d
cmp r12d, 3
je 0x10006417d
cmp r12d, ebx
jne 0x100064416
cmp r13, rdi
je 0x100064416
cmp dword [0x10008451c], edi
mov qword [r13], rdi
jne 0x10006419f
call fcn.100064d00
cmp eax, edi
jne 0x10006441b
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x28]
mov rcx, r15
call fcn.100064f58
cmp eax, edi
jne 0x1000641bf
mov eax, 0x6e
jmp 0x10006441b
lea r9, [0x100006358]
lea rax, [rsp + 0x60]
mov edx, 0x104
lea rcx, [rsp + 0x60]
mov r10d, edi
sub r9, rax
mov r8, rdx
lea rax, [r8 + 0x7ffffefa]
cmp rax, rdi
je 0x100064200
movzx eax, word [r9 + rcx]
cmp ax, di
je 0x100064200
mov word [rcx], ax
add rcx, rbx
sub r8, 1
jne 0x1000641de
cmp r8, rdi
mov r11d, 0x8007007a
jne 0x100064211
sub rcx, rbx
mov r10d, r11d
cmp r10d, edi
mov word [rcx], di
jl 0x1000641b5
mov rcx, rdx
lea rax, [rsp + 0x60]
cmp word [rax], di
je 0x10006422f
add rax, rbx
sub rcx, 1
jne 0x100064221
cmp rcx, rdi
je 0x1000641b5
mov rax, rdx
mov r10d, 0x103
sub rax, rcx
lea rcx, [rsp + 0x60]
sub r10, rax
mov rax, rdx
cmp word [rcx], di
je 0x100064259
add rcx, rbx
sub rax, 1
jne 0x10006424b
cmp rax, rdi
je 0x1000641b5
mov r8, rdx
sub r8, rax
cmp r10, 0x7ffffffe
ja 0x1000641b5
sub rdx, r8
lea rcx, [rsp + r8*2 + 0x60]
mov r9d, edi
je 0x1000642bb
lea rax, [rdx + r8]
lea r8, [rax + r10 - 0x104]
mov r10, r15
sub r10, rcx
cmp r8, rdi
je 0x1000642b6
movzx eax, word [r10 + rcx]
cmp ax, di
je 0x1000642b6
sub rdx, 1
mov word [rcx], ax
sub r8, 1
add rcx, rbx
cmp rdx, rdi
jne 0x100064294
cmp rdx, rdi
jne 0x1000642c1
sub rcx, rbx
mov r9d, r11d
cmp r9d, edi
mov word [rcx], di
jl 0x1000641b5
lea rcx, [rsp + 0x30]
call fcn.100068f30
cmp eax, edi
jne 0x10006441b
lea r8, [rsp + 0x60]
lea rcx, [rsp + 0x30]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
cmp rax, rdi
mov rbp, rax
jne 0x100064328
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x30]
mov ebx, eax
call fcn.1000690dc
mov rcx, qword [rsp + 0x28]
call qword [sym.imp.msvcrt.dll_free]
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.msvcrt.dll_free]
mov eax, ebx
jmp 0x10006441b
lea rcx, [rsp + 0x30]
call fcn.1000690dc
mov edx, 0x3e8
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rdi, qword [rsp + 0x28]
test eax, eax
je 0x100064365
cmp eax, 0x80
je 0x100064365
cmp eax, 0x102
jne 0x1000643fd
mov ebx, 0x20
jmp 0x100064405
mov rdx, qword [rsp + 0x20]
mov rcx, rdi
call fcn.1000651e8
cmp eax, ebx
jne 0x10006437e
cmp r12d, 3
jne 0x100064399
jmp 0x1000643f0
mov ecx, 0xb7
cmp eax, ecx
jne 0x1000643eb
cmp r12d, ebx
jne 0x1000643b2
mov rdx, qword [rsp + 0x20]
mov rcx, rdi
call fcn.100065488
mov rdx, qword [rsp + 0x20]
mov rcx, rdi
call fcn.100065308
test eax, eax
jne 0x1000643eb
xor ebx, ebx
lea r14d, [rax + 1]
jmp 0x1000643b4
mov ebx, ecx
mov r8, qword [rsp + 0x20]
mov r9, rbp
mov rdx, rdi
mov rcx, r15
call fcn.100065508
test rax, rax
je 0x1000643d2
mov qword [r13], rax
jmp 0x10006440e
test r14d, r14d
mov ebx, 0xe
je 0x1000643f0
mov rdx, qword [rsp + 0x20]
mov rcx, rdi
call fcn.100065488
jmp 0x1000643f0
mov ebx, 0x6e
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
test eax, eax
jne 0x100064405
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
jmp 0x100064310
mov eax, 0x57
mov rcx, qword [rsp + 0x270]
xor rcx, rsp
call fcn.10006bd80
lea r11, [rsp + 0x280]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret