Function at 0x14000b260
Capabilities:
Check mutex on windows

Disassembly:
mov rax, rsp
push rbp
push rdi
push r12
push r13
push r14
lea rbp, [rax - 0x118]
sub rsp, 0x1f0
mov qword [rsp + 0x68], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov rbx, rdx
mov r14, rcx
xor edi, edi
mov dword [rbp + 0x138], edi
call fcn.140091150
test al, al
je 0x14000b2aa
call fcn.140008d90
test al, al
jne 0x14000b2c0
mov rcx, r14
call fcn.140008b80
test al, al
jne 0x14000b2c0
mov esi, 0x80004005
jmp 0x14000b88f
call fcn.140091150
or r12, 0xffffffffffffffff
test al, al
je 0x14000b362
lea rcx, [0x14011d880]
mov rax, qword [0x14011d880]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x48], rax
test rbx, rbx
je 0x14000b32f
test rbx, 0xffffffffffff0000
jne 0x14000b31c
movzx edi, bx
xor edx, edx
mov ecx, edi
call fcn.1400017e0
test rax, rax
je 0x14000b342
mov r8d, edi
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.140001f70
jmp 0x14000b342
xor eax, eax
mov rcx, r12
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
dec rcx
jmp 0x14000b331
xor ecx, ecx
mov r8d, ecx
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.140001e80
nop
mov edi, 1
mov dword [rbp + 0x138], edi
lea rdx, [rsp + 0x48]
mov rcx, r14
call fcn.1400088b0
test al, al
sete sil
jmp 0x14000b365
mov sil, 1
test dil, 1
je 0x14000b38b
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000b38b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
test sil, sil
je 0x14000b3ef
call fcn.140091150
test al, al
je 0x14000b3a2
call fcn.140008d90
test al, al
jne 0x14000b3ae
mov rcx, r14
call fcn.140008b80
test al, al
je 0x14000b3d9
mov dword [rbp + 0x130], 0
lea rdx, [rbp + 0x130]
lea rcx, str.SoftwareSelfUpdateAvailable
call fcn.14005da70
cmp dword [rbp + 0x130], 0
setne al
test al, al
jne 0x14000b3ef
mov esi, 0x80040201
lea rcx, str.DownloadSoftware:E_VU_SSUOPTIONDISABLED
call fcn.1400191f0
jmp 0x14000b88f
lea rcx, [rsp + 0x70]
call fcn.1400386c0
lea rcx, [rsp + 0x70]
call fcn.1400415c0
test al, al
jne 0x14000b41d
mov esi, 0x80040200
lea rcx, str.DownloadSoftware:E_VU_INTERNETNOTAVAILABLE
call fcn.1400191f0
jmp 0x14000b88f
mov rcx, r14
call fcn.1400085f0
test al, al
jne 0x14000b433
mov esi, 0x8004020f
jmp 0x14000b88f
lea rcx, [0x14011d880]
mov rax, qword [0x14011d880]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
test rbx, rbx
je 0x14000b491
test rbx, 0xffffffffffff0000
jne 0x14000b47e
movzx edi, bx
xor edx, edx
mov ecx, edi
call fcn.1400017e0
test rax, rax
je 0x14000b4a4
mov r8d, edi
mov rdx, rax
lea rcx, [rsp + 0x58]
call fcn.140001f70
jmp 0x14000b4a4
xor eax, eax
mov rcx, r12
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
dec rcx
jmp 0x14000b493
xor ecx, ecx
mov r8d, ecx
mov rdx, rbx
lea rcx, [rsp + 0x58]
call fcn.140001e80
nop
lea rdx, [rsp + 0x58]
mov rcx, qword [0x14011e220]
call fcn.140023ae0
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000b4d6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
lea r8, str.GlobalVAIO_Update_SSU_Mutex
mov edx, 1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov r13, rax
test rax, rax
je 0x14000b86d
cmp rax, 0xffffffffffffffff
je 0x14000b86d
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x14000b851
cmp eax, 5
je 0x14000b851
lea rcx, [0x14011d880]
mov rax, qword [0x14011d880]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x38]
mov rdx, rbx
mov rcx, r14
call fcn.1400ae1e0
mov esi, eax
test eax, eax
js 0x14000b82f
mov rcx, qword [rsp + 0x38]
cmp dword [rcx - 0x10], 0
je 0x14000b82f
mov rcx, qword [0x14011e220]
mov rdx, qword [rcx]
call qword [rdx + 0x28]
cmp eax, 1
jne 0x14000b5aa
mov esi, 0x8004020e
lea rcx, str.DownloadSoftware:E_VU_VAIOUPDATEBUSY
call fcn.1400191f0
nop
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r12d
dec r12d
test r12d, r12d
jg 0x14000b872
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
jmp 0x14000b872
mov rcx, r14
call fcn.140009cd0
lea rcx, [0x14011d880]
mov rax, qword [0x14011d880]
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rsp + 0x30], rdi
test rbx, rbx
je 0x14000b610
test rbx, 0xffffffffffff0000
jne 0x14000b5fd
movzx ebx, bx
xor edx, edx
mov ecx, ebx
call fcn.1400017e0
test rax, rax
je 0x14000b627
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.140001f70
jmp 0x14000b622
xor eax, eax
mov rcx, r12
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
dec rcx
jmp 0x14000b612
xor ecx, ecx
mov r8d, ecx
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.140001e80
mov rdi, qword [rsp + 0x30]
mov dword [rsp + 0x60], 6
mov rcx, qword [0x14011e220]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
call qword [rax + reloc.ATL100.DLL_Ordinal_56]
test eax, eax
js 0x14000b80e
lea rcx, [0x14011d880]
mov rax, qword [0x14011d880]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x50], rax
lea rdx, str.GlobalVAIO_Update_SSU_Event
test rdx, 0xffffffffffff0000
jne 0x14000b69e
movzx ebx, dx
xor edx, edx
mov ecx, ebx
call fcn.1400017e0
test rax, rax
je 0x14000b6af
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.140001f70
jmp 0x14000b6af
mov r8d, Ordinal_32
lea rcx, [rsp + 0x50]
call fcn.140001e80
nop
mov r8d, dword [rdi - 0x10]
mov rdx, rdi
lea rcx, [rsp + 0x50]
call fcn.140003c10
mov rbx, qword [rsp + 0x50]
mov r9, rbx
xor r8d, r8d
lea edx, [r8 + 1]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14000b7ec
cmp rax, 0xffffffffffffffff
je 0x14000b7ec
mov dword [rsp + 0x20], 0x4ff
or r9d, 0xffffffff
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea ecx, [r8 + 1]
call qword [sym.imp.USER32.dll_MsgWaitForMultipleObjects]
mov rcx, qword [rsp + 0x40]
test eax, eax
je 0x14000b790
mov esi, 0x80004005
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsp + 0x40], 0
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000b746
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000b767
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r12d
dec r12d
test r12d, r12d
jg 0x14000b872
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
jmp 0x14000b872
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsp + 0x40], 0
lea rcx, [rbp - 0x80]
call fcn.14009f810
nop
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.14009f870
mov esi, eax
mov rcx, qword [rbp + 0xe8]
test rcx, rcx
je 0x14000b7ce
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
lea rcx, [rbp + 0x70]
call fcn.14004bd80
nop
lea rcx, [rbp - 8]
call fcn.14004bd80
nop
lea rcx, [rbp - 0x80]
call fcn.14004bd80
nop
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000b807
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdi, qword [rsp + 0x30]
jmp 0x14000b813
mov esi, 0x80004005
lea rdx, [rdi - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000b82f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r12d
dec r12d
test r12d, r12d
jg 0x14000b872
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
jmp 0x14000b872
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, 0x8004020e
lea rcx, str.DownloadSoftware:E_VU_VAIOUPDATEBUSY
call fcn.1400191f0
jmp 0x14000b88f
mov esi, 0x80004005
test r13, r13
je 0x14000b88f
cmp r13, 0xffffffffffffffff
je 0x14000b88f
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, esi
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rbp
ret