Function at 0x5d7b76
Capabilities:
Check mutex on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
mov eax, dword [0x70d514]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor ebx, ebx
lea ecx, [ebp - 0x1c]
push str.false
mov dword [ebp - 0x5c], ebx
call fcn.00449380
push str.hasDownloadedUpdate
lea ecx, [ebp - 0x34]
call fcn.00449380
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.005b95e6
push eax
push reloc.WS2_32.dll_accept
call fcn.005b8d5f
add esp, 0x10
lea ecx, [ebp - 0x34]
call fcn.00449330
lea ecx, [ebp - 0x1c]
call fcn.00449330
lea eax, [ebp - 0x58]
mov dword [ebp - 0x58], ebx
push eax
mov dword [ebp - 0x54], ebx
call fcn.005d5211
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x58]
push eax
call fcn.005bc7da
pop ecx
pop ecx
push str.__crashed
lea ecx, [ebp - 0x1c]
call fcn.00449380
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x58]
call fcn.005bc5d1
lea ecx, [ebp - 0x1c]
mov bl, al
call fcn.00449330
test bl, bl
je 0x5d7c28
push 1
call fcn.005ba096
push eax
call fcn.005b860a
pop ecx
pop ecx
jmp 0x5d7c84
call fcn.005b68c8
mov esi, eax
call fcn.005bc2bb
push esi
mov ecx, eax
call fcn.005a7c64
xor ebx, ebx
inc ebx
test al, al
je 0x5d7c6a
push str.__loader
lea ecx, [ebp - 0x1c]
call fcn.00449380
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x58]
call fcn.005bc5d1
test al, al
jne 0x5d7c6d
xor ecx, ecx
inc ecx
mov byte [ebp - 0x4d], cl
mov ebx, ecx
jmp 0x5d7c71
mov ebx, dword [ebp - 0x5c]
mov byte [ebp - 0x4d], 0
test bl, 1
je 0x5d7c7e
lea ecx, [ebp - 0x1c]
call fcn.00449330
cmp byte [ebp - 0x4d], 0
je 0x5d7c8b
xor esi, esi
jmp 0x5d7f5e
lea eax, [ebp - 0x64]
xor ebx, ebx
push eax
push str._installer_singleapplication_mutex
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
call fcn.005b96c8
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.005a615f
add esp, 0xc
push eax
call fcn.005b9af2
pop ecx
pop ecx
lea ecx, [ebp - 0x1c]
call fcn.00449330
push dword [ebp - 0x64]
push 1
push ebx
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [ebp - 0x5c], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x5d7d13
call fcn.005c22c2
mov byte [eax + 0xec], 1
call fcn.005c22c2
mov ecx, eax
call fcn.005c2333
call fcn.005b70c8
test al, al
je 0x5d7d00
call fcn.005bf824
call fcn.005c22c2
mov ecx, eax
call fcn.005c4db7
mov esi, ebx
jmp 0x5d7f4c
push str.__silent
lea ecx, [ebp - 0x1c]
call fcn.00449380
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x58]
call fcn.005bc5d1
lea ecx, [ebp - 0x1c]
mov bl, al
call fcn.00449330
test bl, bl
je 0x5d7d43
xor edi, edi
call fcn.005c5204
jmp 0x5d7d46
mov edi, dword [ebp + 0x14]
mov esi, str.__reseller
lea ecx, [ebp - 0x1c]
push esi
call fcn.00449380
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x58]
call fcn.005bc5d1
lea ecx, [ebp - 0x1c]
mov bl, al
call fcn.00449330
test bl, bl
je 0x5d7d92
push esi
lea ecx, [ebp - 0x1c]
call fcn.00449380
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x58]
call fcn.005bc7ae
push eax
call fcn.005d7b46
pop ecx
lea ecx, [ebp - 0x1c]
call fcn.00449330
mov esi, str.__subid
lea ecx, [ebp - 0x1c]
push esi
call fcn.00449380
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x58]
call fcn.005bc5d1
lea ecx, [ebp - 0x1c]
mov bl, al
call fcn.00449330
test bl, bl
je 0x5d7dde
push esi
lea ecx, [ebp - 0x1c]
call fcn.00449380
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x58]
call fcn.005bc7ae
push eax
call fcn.005d7b5e
pop ecx
lea ecx, [ebp - 0x1c]
call fcn.00449330
push str.__test
lea ecx, [ebp - 0x1c]
call fcn.00449380
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x58]
call fcn.005bc5d1
lea ecx, [ebp - 0x1c]
mov bl, al
call fcn.00449330
movzx ecx, byte [0x713710]
test bl, bl
push 1
pop eax
cmovne ecx, eax
xor ebx, ebx
push eax
mov byte [0x713710], cl
mov esi, ebx
call fcn.005ba096
push eax
call fcn.005b860a
call fcn.005ba096
push eax
call fcn.005b7f02
add esp, 0xc
test al, al
jne 0x5d7ecf
call fcn.005b74ea
push eax
push 0x6696ac
call fcn.005ba096
push eax
lea eax, [ebp - 0x4c]
push str.Unable_to_create_temporary_directory__
push eax
call fcn.005a0eb7
add esp, 0xc
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.005a0e4e
add esp, 0xc
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.005a0e25
add esp, 0xc
lea ecx, [ebp - 0x1c]
call fcn.00449330
lea ecx, [ebp - 0x4c]
call fcn.00449330
xor eax, eax
inc eax
push eax
sub esp, 0x18
lea eax, [ebp - 0x34]
mov ecx, esp
push eax
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], ebx
call fcn.005a3525
call fcn.005c1a63
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.005cbbe9
push eax
call fcn.005b48b4
add esp, 0x28
lea ecx, [ebp - 0x4c]
call fcn.00449330
lea ecx, [ebp - 0x34]
call fcn.00449330
jmp 0x5d7f23
push ebx
call dword [sym.imp.ole32.dll_CoInitialize]
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_DefWindowProcW]
push 4
call fcn.005d5b6d
pop ecx
push ebx
push dword [ebp + 8]
push ebx
mov ebx, 0x713770
mov ecx, ebx
call fcn.005d5ea7
call fcn.005d4d1a
push edi
push dword [ebp + 0x10]
call fcn.005d71a0
pop ecx
pop ecx
mov ecx, ebx
mov esi, eax
call fcn.005d75d3
call dword [sym.imp.ole32.dll_CoUninitialize]
push dword [ebp - 0x5c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor ebx, ebx
call fcn.005c22c2
mov ecx, eax
call fcn.005c4db7
call fcn.005a5a1a
mov ecx, eax
call fcn.005a5f0c
xor eax, eax
inc eax
push eax
call fcn.005ba096
push eax
call fcn.005b860a
pop ecx
pop ecx
cmp dword [ebp - 0x64], 0
je 0x5d7f5e
push dword [ebp - 0x64]
call fcn.0062f1c7
pop ecx
mov dword [ebp - 0x60], ebx
lea eax, [ebp - 0x58]
push eax
mov ecx, eax
call fcn.005d5228
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.006285ca
leave
ret 0x10