Function at 0x10000e538
Capabilities:
Check mutex on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4a0
mov rax, qword [0x100019110]
xor rax, rsp
mov qword [rsp + 0x490], rax
xor ebx, ebx
or rax, 0xffffffffffffffff
mov ebp, ebx
mov dword [rsp + 0x54], ebx
mov rsi, rax
mov r13, rax
mov r15d, ebx
mov dword [rsp + 0x4c], ebx
mov qword [rsp + 0x68], rbx
mov r12d, ebx
mov dword [rsp + 0x50], ebx
call qword [sym.imp.SETUPAPI.dll_SetupGetThreadLogToken]
lea r8, [0x100002780]
lea edx, [rbx + 1]
xor ecx, ecx
mov rdi, rax
mov qword [rsp + 0x60], rax
call qword [sym.imp.API_MS_Win_Core_Synch_L1_1_0.dll_CreateMutexW]
mov r14, rax
mov qword [rsp + 0x80], rax
test rax, rax
jne 0x10000e5c8
call qword [sym.imp.API_MS_Win_Core_ErrorHandling_L1_1_0.dll_GetLastError]
mov ebx, eax
jmp 0x10000e5f3
call qword [sym.imp.API_MS_Win_Core_ErrorHandling_L1_1_0.dll_GetLastError]
cmp eax, 0xb7
jne 0x10000e5f3
xor r8d, r8d
or edx, 0xffffffff
mov rcx, r14
call qword [sym.imp.API_MS_Win_Core_Synch_L1_1_0.dll_WaitForSingleObjectEx]
cmp eax, 0xffffffff
je 0x10000e5be
mov ecx, 0xd
test eax, eax
cmovne ebx, ecx
mov ecx, ebx
call qword [sym.imp.API_MS_Win_Core_ErrorHandling_L1_1_0.dll_SetLastError]
movabs rbx, 0x1000000000000002
test r14, r14
jne 0x10000e617
call qword [sym.imp.API_MS_Win_Core_ErrorHandling_L1_1_0.dll_GetLastError]
mov ebp, eax
jmp 0x10000e982
test rdi, rdi
jne 0x10000e64a
lea r12d, [rdi + 1]
lea r9, [rsp + 0x60]
lea r8, [0x100004640]
mov edx, r12d
xor ecx, ecx
call fcn.100011408
mov rdi, qword [rsp + 0x60]
mov rcx, rdi
mov dword [rsp + 0x50], eax
call qword [sym.imp.SETUPAPI.dll_SetupSetThreadLogToken]
jmp 0x10000e66b
lea r9, [0x1000046a0]
mov edx, 0x800000
mov r8d, 0x30004
mov rcx, rdi
call qword [sym.imp.SETUPAPI.dll_SetupWriteTextLog]
mov r12d, 1
cmp dword [0x10001979c], ebp
je 0x10000e6af
mov al, byte [0x1000197a0]
cmp al, 4
jae 0x10000e681
test al, al
jne 0x10000e6af
test qword [0x100019788], rbx
je 0x10000e6af
mov rcx, qword [0x100019790]
mov rax, rcx
and rax, rbx
cmp rax, rcx
jne 0x10000e6af
mov rcx, qword [0x100019770]
lea rdx, [0x100001980]
call fcn.100006d54
call qword [sym.imp.API_MS_Win_Core_ProcessThreads_L1_1_0.dll_GetCurrentProcess]
lea r8, [rsp + 0x68]
mov edx, 0x2000000
mov rcx, rax
call qword [sym.imp.API_MS_Win_Core_ProcessThreads_L1_1_0.dll_OpenProcessToken]
test eax, eax
jne 0x10000e6d9
call qword [sym.imp.API_MS_Win_Core_ErrorHandling_L1_1_0.dll_GetLastError]
mov ebp, eax
jmp 0x10000e974
call fcn.10000de80
mov r13, rax
cmp rax, 0xffffffffffffffff
je 0x10000e6cc
mov r9d, 4
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.SETUPAPI.dll_SetupDiGetClassDevsW]
mov rsi, rax
cmp rax, 0xffffffffffffffff
je 0x10000e6cc
xor edx, edx
lea rcx, [rsp + 0x88]
lea r8d, [rdx + 0x20]
call sub.msvcrt.dll_memset
lea r8, [rsp + 0x88]
xor edx, edx
mov rcx, rsi
mov dword [rsp + 0x88], 0x20
call qword [sym.imp.SETUPAPI.dll_SetupDiEnumDeviceInfo]
test eax, eax
je 0x10000e974
mov r14d, ebp
movabs rbp, 0x8000000000000000
lea rcx, [rsp + 0x300]
xor edx, edx
mov r8d, 0x190
add r14d, r12d
call sub.msvcrt.dll_memset
and qword [rsp + 0x20], 0
lea r8, [rsp + 0x300]
lea rdx, [rsp + 0x88]
mov r9d, 0xc8
mov rcx, rsi
call qword [sym.imp.SETUPAPI.dll_SetupDiGetDeviceInstanceIdW]
test eax, eax
je 0x10000e91a
xor r12d, r12d
lea rax, [rsp + 0x48]
lea r9, [rsp + 0x44]
mov dword [rsp + 0x38], r12d
mov qword [rsp + 0x30], r12
lea r8, [0x100002110]
lea rdx, [rsp + 0x88]
mov rcx, rsi
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x20], rax
xor ebx, ebx
call qword [sym.imp.SETUPAPI.dll_SetupDiGetDevicePropertyW]
cmp eax, r12d
je 0x10000e7de
cmp dword [rsp + 0x44], 7
jne 0x10000e7de
mov eax, dword [rsp + 0x48]
jmp 0x10000e7e5
mov eax, r12d
mov dword [rsp + 0x48], eax
test al, 0x40
je 0x10000e83e
mov dword [rsp + 0x38], r12d
lea rax, [rsp + 0x40]
mov qword [rsp + 0x30], r12
lea r9, [rsp + 0x44]
lea r8, [0x100002278]
lea rdx, [rsp + 0x88]
mov rcx, rsi
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.SETUPAPI.dll_SetupDiGetDevicePropertyW]
cmp eax, r12d
je 0x10000e83e
cmp dword [rsp + 0x44], 0x17
jne 0x10000e83e
cmp dword [rsp + 0x40], 0xe0000248
mov eax, 1
cmove ebx, eax
lea rax, [rsp + 0x4c]
lea r8, [rsp + 0x88]
mov r9d, 0x100
mov rdx, rsi
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.10000d648
mov r12d, eax
test ebx, ebx
jne 0x10000ea1f
test eax, eax
jne 0x10000e914
cmp dword [rsp + 0x4c], ebx
jne 0x10000e8a2
lea rax, [rsp + 0x300]
lea r9, [0x1000046d0]
lea r8d, [r12 + 2]
mov edx, 0x800000
mov rcx, rdi
mov qword [rsp + 0x20], rax
call qword [sym.imp.SETUPAPI.dll_SetupWriteTextLog]
jmp 0x10000e914
lea rdx, [rsp + 0x300]
mov rcx, r13
call fcn.10000e2cc
test eax, eax
je 0x10000e9d0
cmp dword [0x10001979c], 0
je 0x10000e914
mov al, byte [0x1000197a0]
cmp al, 4
jae 0x10000e8d1
test al, al
jne 0x10000e914
movabs rbx, 0x8000000000000000
test qword [0x100019788], rbx
je 0x10000e911
mov rcx, qword [0x100019790]
mov rax, rcx
and rax, rbx
cmp rax, rcx
jne 0x10000e911
mov rcx, qword [0x100019770]
lea r8, [rsp + 0x300]
lea rdx, [0x1000018e0]
call fcn.100006ce8
mov rbp, rbx
mov r12d, 1
xor edx, edx
lea rcx, [rsp + 0x88]
lea r8d, [rdx + 0x20]
call sub.msvcrt.dll_memset
lea r8, [rsp + 0x88]
mov edx, r14d
mov rcx, rsi
mov dword [rsp + 0x88], 0x20
call qword [sym.imp.SETUPAPI.dll_SetupDiEnumDeviceInfo]
test eax, eax
jne 0x10000e749
mov ebp, dword [rsp + 0x54]
mov r14, qword [rsp + 0x80]
test r15d, r15d
je 0x10000e96a
call fcn.10000e3b8
movabs rbx, 0x1000000000000002
mov rcx, r14
call qword [sym.imp.API_MS_Win_Core_Synch_L1_1_0.dll_ReleaseMutex]
mov r12d, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x10000e992
call qword [sym.imp.API_MS_Win_Core_Handle_L1_1_0.dll_CloseHandle]
cmp rsi, 0xffffffffffffffff
je 0x10000e9a1
mov rcx, rsi
call qword [sym.imp.SETUPAPI.dll_SetupDiDestroyDeviceInfoList]
cmp r13, 0xffffffffffffffff
je 0x10000e9b0
mov rcx, r13
call qword [sym.imp.SETUPAPI.dll_SetupDiDestroyDeviceInfoList]
mov rcx, rdi
test r12d, r12d
je 0x10000eb90
mov edx, ebp
call fcn.100011b20
xor ecx, ecx
call qword [sym.imp.SETUPAPI.dll_SetupSetThreadLogToken]
jmp 0x10000ebac
cmp dword [0x10001979c], 0
je 0x10000ea27
mov al, byte [0x1000197a0]
cmp al, 4
jae 0x10000e9e7
test al, al
jne 0x10000ea27
test qword [0x100019788], rbp
je 0x10000ea27
mov rcx, qword [0x100019790]
mov rax, rcx
and rax, rbp
cmp rax, rcx
jne 0x10000ea27
mov rcx, qword [0x100019770]
lea r8, [rsp + 0x300]
lea rdx, [0x1000018d0]
call fcn.100006ce8
jmp 0x10000ea27
test eax, eax
je 0x10000e914
lea rax, [rsp + 0x300]
lea r9, [0x100004720]
mov edx, 0x800000
mov r8d, 0x20004
mov rcx, rdi
mov qword [rsp + 0x20], rax
call qword [sym.imp.SETUPAPI.dll_SetupWriteTextLog]
and dword [rsp + 0x7c], 0
mov eax, 1
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x88]
lea r9d, [rax + 0xf]
mov rcx, rsi
mov dword [rsp + 0x70], 8
mov dword [rsp + 0x74], 5
mov dword [rsp + 0x78], eax
call qword [sym.imp.SETUPAPI.dll_SetupDiSetClassInstallParamsW]
mov ebx, dword [rsp + 0x9c]
and dword [rsp + 0x40], 0
lea r8, [rsp + 0x88]
mov rdx, rsi
mov ecx, 5
call qword [sym.imp.SETUPAPI.dll_SetupDiCallClassInstaller]
test eax, eax
je 0x10000eac2
lea rdx, [rsp + 0x88]
mov rcx, rsi
call qword [sym.imp.SETUPAPI.dll_SetupDiRemoveDevice]
test eax, eax
jne 0x10000eacc
call qword [sym.imp.API_MS_Win_Core_ErrorHandling_L1_1_0.dll_GetLastError]
mov dword [rsp + 0x40], eax
xor edx, edx
mov ecx, ebx
call qword [sym.imp.SETUPAPI.dll_CM_Setup_DevNode]
mov ebx, 0x248
lea rcx, [rsp + 0xb0]
mov r8, rbx
xor edx, edx
call sub.msvcrt.dll_memset
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x88]
mov rcx, rsi
mov dword [rsp + 0xb0], ebx
call qword [sym.imp.SETUPAPI.dll_SetupDiGetDeviceInstallParamsW]
test eax, eax
je 0x10000eb55
test dword [rsp + 0xb4], 0x180
je 0x10000eb55
test r12d, r12d
mov r12d, 1
jne 0x10000eb5b
lea rax, [rsp + 0x300]
lea r9, [0x100004758]
lea r8d, [r12 + 1]
mov edx, 0x800000
mov rcx, rdi
mov r15d, r12d
mov qword [rsp + 0x20], rax
call qword [sym.imp.SETUPAPI.dll_SetupWriteTextLog]
jmp 0x10000eb5b
mov r12d, 1
mov eax, dword [rsp + 0x40]
lea r9, [0x100004778]
mov edx, 0x800000
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0x300]
mov r8d, 0x40004
mov rcx, rdi
mov qword [rsp + 0x20], rax
call qword [sym.imp.SETUPAPI.dll_SetupWriteTextLog]
jmp 0x10000e91a
lea r9, [0x1000047b8]
mov edx, 0x800000
mov r8d, 0x50004
mov dword [rsp + 0x20], ebp
call qword [sym.imp.SETUPAPI.dll_SetupWriteTextLog]
cmp dword [0x10001979c], 0
je 0x10000ebf1
mov al, byte [0x1000197a0]
cmp al, 4
jae 0x10000ebc3
test al, al
jne 0x10000ebf1
test qword [0x100019788], rbx
je 0x10000ebf1
mov rcx, qword [0x100019790]
mov rax, rcx
and rax, rbx
cmp rax, rcx
jne 0x10000ebf1
mov rcx, qword [0x100019770]
lea rdx, [0x100001990]
call fcn.100006d54
mov eax, ebp
mov rcx, qword [rsp + 0x490]
xor rcx, rsp
call fcn.100014800
lea r11, [rsp + 0x4a0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret