Function at 0x6101be97
Capabilities:
Check mutex on windows

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x23c
mov eax, dword [0x61047110]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 0x10]
push ebx
xor ebx, ebx
push esi
mov esi, dword [ebp + 8]
push edi
xor eax, eax
cmp esi, ebx
mov dword [ebp - 0x23c], ebx
lea edi, [ebp - 0x238]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x21c], esi
mov dword [ebp - 0x224], ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x214], ebx
mov dword [ebp - 0x218], ebx
mov dword [ebp - 0x220], ebx
stosd dword es:[edi], eax
je 0x6101c0fc
cmp dword [ebp + 0xc], 4
je 0x6101bf0c
cmp dword [ebp + 0xc], 3
je 0x6101bf0c
cmp dword [ebp + 0xc], 2
jne 0x6101c0fc
cmp ecx, ebx
je 0x6101c0fc
cmp dword [0x61048630], ebx
mov dword [ecx], ebx
jne 0x6101bf2b
call fcn.6101b6a6
cmp eax, ebx
jne 0x6101c0ff
lea eax, [ebp - 0x214]
push eax
push esi
lea edi, [ebp - 0x218]
call fcn.6101bb64
test eax, eax
jne 0x6101bf49
push 0x6e
jmp 0x6101c0fe
push 0x61004494
mov esi, 0x104
push esi
lea eax, [ebp - 0x20c]
push eax
call fcn.6100cec8
test eax, eax
jl 0x6101bf42
lea eax, [ebp - 0x210]
push eax
push esi
lea eax, [ebp - 0x20c]
push eax
call fcn.6100c82f
test eax, eax
jl 0x6101bf42
lea eax, [esi - 1]
sub eax, dword [ebp - 0x210]
push eax
push dword [ebp - 0x21c]
lea eax, [ebp - 0x20c]
push esi
push eax
call fcn.6101b4b1
test eax, eax
jl 0x6101bf42
lea ecx, [ebp - 0x23c]
call fcn.6101b389
cmp eax, ebx
jne 0x6101c0ff
lea eax, [ebp - 0x20c]
push eax
push ebx
lea eax, [ebp - 0x23c]
push eax
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
cmp eax, ebx
mov dword [ebp - 0x210], eax
jne 0x6101c001
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea esi, [ebp - 0x23c]
mov edi, eax
call fcn.6101b2a9
push dword [ebp - 0x214]
call fcn.6102aef1
push dword [ebp - 0x218]
call fcn.6102aef1
pop ecx
pop ecx
mov eax, edi
jmp 0x6101c0ff
lea esi, [ebp - 0x23c]
call fcn.6101b2a9
push 0x3e8
push dword [ebp - 0x210]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edi, dword [ebp - 0x214]
cmp eax, ebx
mov ebx, dword [ebp - 0x218]
je 0x6101c047
cmp eax, 0x80
je 0x6101c047
cmp eax, 0x102
jne 0x6101c0d6
push 0x20
pop esi
jmp 0x6101c0de
push ebx
push edi
call fcn.6101bcb9
push 2
pop esi
cmp eax, esi
jne 0x6101c093
cmp dword [ebp + 0xc], 3
je 0x6101c0c6
push ebx
push edi
call fcn.6101bd6a
test eax, eax
jne 0x6101c0ae
xor esi, esi
mov dword [ebp - 0x220], 1
push dword [ebp - 0x210]
push ebx
push edi
push dword [ebp - 0x21c]
call fcn.6101b19d
test eax, eax
je 0x6101c0b3
mov ecx, dword [ebp - 0x224]
mov dword [ecx], eax
jmp 0x6101c0ea
mov ecx, 0xb7
cmp eax, ecx
jne 0x6101c0ae
cmp dword [ebp + 0xc], esi
jne 0x6101c0aa
push ebx
push edi
call fcn.6101be40
jmp 0x6101c05b
mov esi, ecx
jmp 0x6101c072
push 0x6e
pop esi
jmp 0x6101c0c6
cmp dword [ebp - 0x220], 0
push 0xe
pop esi
je 0x6101c0c6
push ebx
push edi
call fcn.6101be40
push dword [ebp - 0x210]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
test eax, eax
jne 0x6101c0de
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
push dword [ebp - 0x210]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push edi
call fcn.6102aef1
push ebx
call fcn.6102aef1
pop ecx
pop ecx
mov eax, esi
jmp 0x6101c0ff
push 0x57
pop eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.6102aaaa
leave
ret 0xc