Function at 0x140069d80
Capabilities:
Check mutex on windows

Disassembly:
mov r11, rsp
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rbp
mov qword [r11 + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0xb0
mov rax, qword [0x14011b040]
xor rax, rsp
mov qword [rsp + 0xa8], rax
mov rsi, rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
xor edi, edi
mov qword [r11 - 0x50], rdi
mov qword [r11 - 0x48], rdi
lea r8d, [rdi + 0x1c]
lea rdx, str._WEASEL_Furand
lea rcx, [r11 - 0x60]
call fcn.1400073a0
nop
lea rcx, [rsp + 0x88]
call fcn.140069840
mov r9, rax
mov r14, qword [rax + 0x10]
cmp qword [rax + 0x18], 7
jbe 0x140069df5
mov r9, qword [rax]
mov r15, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x80]
mov rax, rcx
sub rax, r15
cmp r14, rax
ja 0x140069e3f
lea rax, [r15 + r14]
mov qword [rsp + 0x78], rax
lea rbx, [rsp + 0x68]
cmp rcx, 7
cmova rbx, qword [rsp + 0x68]
lea rcx, [rbx + r15*2]
lea r8, [r14 + r14]
mov rdx, r9
call fcn.1400c56a0
lea rax, [r14 + r15]
mov word [rbx + rax*2], di
jmp 0x140069e58
mov qword [rsp + 0x20], r14
movzx r8d, byte [rsp + 0x60]
mov rdx, r14
lea rcx, [rsp + 0x68]
call fcn.14000c8e0
nop
mov rdx, qword [rsp + 0xa0]
cmp rdx, 7
jbe 0x140069ea0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140069e9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a075
call fcn.14006d178
lea r8, [rsp + 0x68]
cmp qword [rsp + 0x80], 7
cmova r8, qword [rsp + 0x68]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x140069f1f
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
je 0x140069f1f
cmp qword [0x14011bed0], 0
jne 0x140069ee7
mov qword [0x14011bed0], rdi
lea r9, [rsi + 0x40]
lea r8, [0x14011be80]
call fcn.14001da40
movzx ebp, ax
mov rax, qword [rsi + 0x28]
test rax, rax
jne 0x140069f94
call fcn.14006cc58
mov qword [rsi + 0x28], rax
test rax, rax
jne 0x140069f94
lea ecx, [rax + 0xe]
call qword [sym.imp.KERNEL32.dll_SetLastError]
nop
mov rdx, qword [rsp + 0x80]
cmp rdx, 7
jbe 0x140069f64
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140069f5f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a07b
call fcn.14006d178
mov rax, rdi
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.14006ce40
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rdi
ret
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.14006cd88
test bp, bp
je 0x140069f1f
lea rbx, [rsi + 0x10]
test rbx, rbx
je 0x14006a065
test rsi, rsi
je 0x14006a065
mov qword [rbx], rsi
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [rbx + 8], eax
lea rcx, [0x14011bf88]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [0x14011bfb0]
mov qword [rbx + 0x10], rax
mov qword [0x14011bfb0], rbx
lea rcx, [0x14011bf88]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, qword [0x1401217f8]
mov r10d, dword [0x14011bd2c]
mov r8d, dword [0x14011bd34]
sub r8d, r10d
mov r9d, dword [0x14011bd28]
mov eax, dword [0x14011bd30]
sub eax, r9d
mov rdx, rbp
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov dword [rsp + 0x38], r8d
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], r9d
mov r9d, 0x8000000
xor r8d, r8d
lea ecx, [r8 + 0x20]
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov rdi, rax
jmp 0x140069f1f
mov edx, 1
mov ecx, 0xc0000005
call fcn.1400024c0
int3
call fcn.1400a5664
nop
call fcn.1400a5664
int3