Function at 0x458fe0
Capabilities:
Check mutex on windows

Disassembly:
push 0xffffffffffffffff
push 0x4ea3cc
mov eax, dword fs:[0]
push eax
mov eax, 0x103c
call fcn.004de210
mov eax, dword [0x52a6ec]
xor eax, esp
mov dword [esp + 0x1038], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x52a6ec]
xor eax, esp
push eax
lea eax, [esp + 0x1050]
mov dword fs:[0], eax
push str.A946A6A9_917E_4949_B9BC_6BADA8C7FD63
xor edi, edi
push edi
xor bl, bl
push edi
mov byte [esp + 0x38], bl
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov ebp, eax
push ebp
mov dword [esp + 0x34], ebp
call fcn.0045c080
add esp, 4
test al, al
je 0x45905c
push 0x1388
push ebp
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
sete bl
mov byte [esp + 0x2c], bl
mov dword [esp + 0x1058], edi
test bl, bl
je 0x45909e
mov dword [esp + 0x18], VariantClear
mov bl, 1
mov byte [esp + 0x1058], bl
call fcn.0045d9a0
test al, al
je 0x4590ac
mov eax, dword [esp + 0x18]
cmp eax, edi
je 0x459097
cmp eax, 0x80000001
je 0x459097
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push ebp
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push ebp
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor al, al
jmp 0x459240
lea eax, [esp + 0x34]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
mov edx, dword [0x52a1ec]
mov eax, dword [edx + 0xc]
mov ecx, 0x52a1ec
call eax
add eax, 0x10
mov dword [esp + 0x1c], eax
push str.PTimes
push str.SoftwareGoogleCommonRlz
push 0x507648
lea eax, [esp + 0x28]
mov byte [esp + 0x1064], 2
call fcn.0045e200
add esp, 0xc
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
mov byte [esp + 0x1058], 3
mov esi, dword [esp + 0x1c]
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x1c]
mov edx, 0x20019
mov eax, esi
call fcn.00404dd0
test eax, eax
je 0x45917b
mov eax, dword [esp + 0x20]
cmp eax, edi
mov edi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
je 0x459133
push eax
call edi
lea eax, [esi - 0x10]
or ecx, 0xffffffff
lea edx, [eax + 0xc]
mov byte [esp + 0x1058], bl
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x459156
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x18]
test eax, eax
je 0x459168
cmp eax, 0x80000001
je 0x459168
push eax
call edi
push ebp
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push ebp
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x45923e
push 0x50bebc
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x44]
call fcn.0045ea50
test eax, eax
jne 0x459122
or eax, dword [esp + 0x3c]
mov esi, dword [esp + 0x38]
mov ecx, dword [esp + 0x40]
xor edi, edi
or edi, dword [esp + 0x34]
xor edx, edx
xor ebp, ebp
or esi, edx
or ecx, ebp
sub edi, eax
sbb esi, ecx
test esi, esi
jg 0x4591e4
jl 0x4591ba
test edi, edi
jae 0x4591e4
lea esi, [esp + 0x20]
call fcn.00405e70
lea ecx, [esp + 0x1c]
call fcn.0045ef50
mov eax, dword [esp + 0x18]
test eax, eax
je 0x459235
cmp eax, 0x80000001
je 0x459235
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x459235
xor eax, eax
lea ecx, [esp + 0x44]
mov word [esp + 0x44], ax
call fcn.0045acf0
test al, al
je 0x459204
mov ecx, 0x2a69c000
mov eax, 0xc9
jmp 0x45920e
mov ecx, 0x28e44000
mov eax, 0x580
cmp esi, eax
jl 0x459218
jg 0x45921a
cmp edi, ecx
jae 0x45921a
xor bl, bl
lea esi, [esp + 0x20]
call fcn.00405e70
lea ecx, [esp + 0x1c]
call fcn.0045ef50
lea eax, [esp + 0x18]
call fcn.0045dec0
lea esi, [esp + 0x2c]
call fcn.0045c160
mov al, bl
mov ecx, dword [esp + 0x1050]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1038]
xor ecx, esp
call fcn.004c9392
add esp, 0x1048
ret