Function at 0x180233950
Capabilities:
Check mutex on windows

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rax - 0xe8]
sub rsp, 0x1d0
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov rax, qword [0x1804cd010]
xor rax, rsp
mov qword [rbp + 0xc0], rax
xor r14d, r14d
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], 7
mov word [rbp - 0x68], r14w
lea r15d, [r14 + 1]
test cl, cl
je 0x180233f2e
mov eax, dword [0x1804de058]
test r15b, al
jne 0x1802339dc
or eax, r15d
mov dword [0x1804de058], eax
mov qword [0x1804de050], r14
lea rcx, [0x1803b0b10]
call fcn.180388940
nop
lea rcx, [0x1804de050]
call fcn.180243510
lea rcx, [rsp + 0x78]
call fcn.180260810
nop
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], r14
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], 7
mov word [rbp - 0x20], r14w
mov qword [rbp + 0x10], r14
mov qword [rbp + 0x18], r14
mov qword [rbp + 0x10], r14
mov qword [rbp + 0x18], 7
mov word [rbp], r14w
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], r14
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], 7
mov word [rbp + 0x20], r14w
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], r14
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], 7
mov word [rbp + 0x40], r14w
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x78], r14
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x78], 7
mov word [rbp + 0x60], r14w
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], r14
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], 7
mov word [rbp + 0x80], r14w
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xb0], r14
lea rcx, [rbp - 0x20]
call fcn.1802605a0
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], r14w
mov r8d, 0x33
lea rdx, str.84E2A8BE_B4E9_4C0B_824A_BE2182ECD590_optimizeUpdate
lea rcx, [rsp + 0x58]
call fcn.180004ea0
nop
mov qword [rsp + 0x38], r14
mov word [rsp + 0x40], 0
mov word [rsp + 0x40], 0
xor bl, bl
cmp qword [rsp + 0x68], 0
je 0x180233b19
lea r8, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae r8, qword [rsp + 0x58]
jmp 0x180233b1c
mov r8, r14
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov rdi, rax
mov qword [rsp + 0x38], rax
test rax, rax
je 0x180233b49
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, bl
cmp eax, 0xb7
cmove ebx, r15d
mov byte [rsp + 0x41], bl
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x180233b8e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180233b89
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180233b89
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180388460
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], r14w
test rdi, rdi
je 0x180233baf
test bl, bl
jne 0x180233c61
mov qword [rsp + 0x30], r14
lea rcx, [rsp + 0x30]
call fcn.18025fbb0
nop
lea rcx, [rsp + 0x30]
call fcn.1802601c0
mov rcx, rax
call fcn.180164760
test al, al
je 0x180233c16
lea rcx, [rsp + 0x30]
call fcn.180260030
lea rdx, [rax + 1]
lea rcx, [rsp + 0x30]
call fcn.18025fe10
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.180260350
mov rbx, qword [rsp + 0x30]
test rbx, rbx
je 0x180233c1b
mov rcx, rbx
call fcn.18016a5f0
jmp 0x180233c1b
mov rbx, qword [rsp + 0x30]
test rbx, rbx
je 0x180233c46
mov rsi, rbx
mov rbx, r14
mov qword [rsp + 0x30], rbx
test rsi, rsi
je 0x180233c46
mov rcx, rsi
call fcn.180169520
mov edx, 0x20
mov rcx, rsi
call fcn.180388460
nop
test rbx, rbx
je 0x180233c61
mov rcx, rbx
call fcn.180169520
mov edx, 0x20
mov rcx, rbx
call fcn.180388460
nop
test rdi, rdi
je 0x180233c74
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsp + 0x38], r14
mov word [rsp + 0x40], 0
mov ecx, 0x2f0
call fcn.180388424
mov qword [rsp + 0x38], rax
mov rcx, rax
call fcn.180385dd0
nop
mov qword [rsp + 0x30], rax
lea r8, [rbp - 0x20]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x30]
call fcn.180386240
mov rbx, qword [rsp + 0x30]
cmp byte [rbx], 0
je 0x180233e6b
lea rdx, [rbx + 0x138]
lea rcx, [rbx + 0x120]
call fcn.180387320
mov rax, qword [rbx + 0x100]
cmp byte [rax + 0x10], 0
je 0x180233ce5
lea rcx, [rbx + 0x100]
call fcn.18016a5f0
lea rdx, [rbx + 0x48]
lea rcx, [rbx + 0x120]
call fcn.1803873f0
test al, al
je 0x180233e6b
lea rdx, [rsp + 0x58]
lea rcx, [rbx + 0x100]
call fcn.18016a2c0
nop
mov rax, qword [rbx + 0x100]
cmp byte [rax + 0x10], 0
je 0x180233d3a
cmp qword [rsp + 0x68], 0
je 0x180233d3a
mov r8b, 1
lea rdx, [rsp + 0x58]
lea rcx, [rbx + 0x100]
call fcn.18016a300
mov byte [rbx], al
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x180233d7f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180233d7a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180233d7a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180388460
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], r14w
mov r8d, 7
lea rdx, str._update
lea rcx, [rbp - 0x68]
call fcn.180004ea0
nop
mov rcx, rbx
call fcn.180385f20
mov edx, 0x2f0
mov rcx, rbx
call fcn.180388460
mov qword [rsp + 0x30], r14
lea rcx, [rbp + 0xa0]
call fcn.180005e20
nop
lea rcx, [rbp + 0x80]
call fcn.180004e20
nop
lea rcx, [rbp + 0x60]
call fcn.180004e20
nop
lea rcx, [rbp + 0x40]
call fcn.180004e20
nop
lea rcx, [rbp + 0x20]
call fcn.180004e20
nop
lea rcx, [rbp]
call fcn.180004e20
nop
lea rcx, [rbp - 0x20]
call fcn.180004e20
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x180233e54
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180233e4f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180233e4f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180388460
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x70], 7
mov word [rsp + 0x78], r14w
jmp 0x180233f44
mov rcx, rbx
call fcn.180385f20
mov edx, 0x2f0
mov rcx, rbx
call fcn.180388460
mov qword [rsp + 0x30], r14
lea rcx, [rbp + 0xa0]
call fcn.180005e20
nop
lea rcx, [rbp + 0x80]
call fcn.180004e20
nop
lea rcx, [rbp + 0x60]
call fcn.180004e20
nop
lea rcx, [rbp + 0x40]
call fcn.180004e20
nop
lea rcx, [rbp + 0x20]
call fcn.180004e20
nop
lea rcx, [rbp]
call fcn.180004e20
nop
lea rcx, [rbp - 0x20]
call fcn.180004e20
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x180233f15
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180233f10
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180233f10
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180388460
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x70], 7
mov word [rsp + 0x78], r14w
xor bl, bl
jmp 0x180234285
mov r8d, 7
lea rdx, str._manual
lea rcx, [rbp - 0x68]
call fcn.180004ea0
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x50]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x180233f8a
lea rdi, [rcx + 1]
mov qword [rbp - 0x58], rdi
lea rbx, [rbp - 0x68]
cmp rdx, 8
cmovae rbx, qword [rbp - 0x68]
lea rcx, [rbx + rcx*2]
mov r8d, 2
lea rdx, [0x1803c4b80]
call sub.VCRUNTIME140.dll_memmove
mov word [rbx + rdi*2], r14w
jmp 0x180233fa5
mov qword [rsp + 0x20], r15
lea r9, [0x1803c4b80]
xor r8d, r8d
mov rdx, r15
lea rcx, [rbp - 0x68]
call fcn.180009e30
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x50]
mov rax, rdx
sub rax, rcx
cmp rax, 0x14
jb 0x180233feb
lea rdi, [rcx + 0x14]
mov qword [rbp - 0x58], rdi
lea rbx, [rbp - 0x68]
cmp rdx, 8
cmovae rbx, qword [rbp - 0x68]
lea rcx, [rbx + rcx*2]
mov r8d, 0x28
lea rdx, str._update_platform_x64
call sub.VCRUNTIME140.dll_memmove
mov word [rbx + rdi*2], r14w
jmp 0x18023400b
mov qword [rsp + 0x20], 0x14
lea r9, str._update_platform_x64
xor r8d, r8d
lea edx, [r8 + 0x14]
lea rcx, [rbp - 0x68]
call fcn.180009e30
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x70], 7
mov word [rsp + 0x78], r14w
mov r8d, 0x11
lea rdx, str.2345PicUpdate.exe
lea rcx, [rsp + 0x78]
call fcn.180004ea0
nop
lea rdx, [rsp + 0x78]
lea rcx, [rbp - 0x48]
call fcn.180234f90
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x180234090
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18023408b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18023408b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180388460
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x70], 7
mov word [rsp + 0x78], r14w
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], r14w
mov r8d, 0x11
lea rdx, str.2345PicUpdate.exe
lea rcx, [rsp + 0x58]
call fcn.180004ea0
nop
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x48]
lea rcx, [rsp + 0x78]
call fcn.18015aff0
mov rbx, rax
lea rax, [rbp - 0x48]
cmp rax, rbx
je 0x18023411f
lea rcx, [rbp - 0x48]
call fcn.180004e20
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x48], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x38], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 7
mov word [rbx], r14w
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x180234163
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18023415e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18023415e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180388460
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x70], 7
mov word [rsp + 0x78], r14w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x1802341ba
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1802341b5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1802341b5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180388460
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], r14w
lea rbx, [rbp - 0x48]
cmp qword [rbp - 0x30], 8
cmovae rbx, qword [rbp - 0x48]
mov rax, qword [0x1804df690]
test rax, rax
jne 0x18023420c
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, str.CheckSigner
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1804df690], rax
test rax, rax
je 0x18023421a
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call rax
test al, al
jne 0x18023421e
xor bl, bl
jmp 0x180234231
xor r9d, r9d
lea rdx, [rbp - 0x68]
lea rcx, [rbp - 0x48]
call fcn.180165860
movzx ebx, al
mov rdx, qword [rbp - 0x30]
cmp rdx, 8
jb 0x180234274
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18023426f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18023426f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180388460
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], 7
mov word [rbp - 0x48], r14w
mov rdx, qword [rbp - 0x50]
cmp rdx, 8
jb 0x1802342c8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1802342c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1802342c3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180388460
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], 7
mov word [rbp - 0x68], r14w
movzx eax, bl
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.180388400
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret