Function at 0x45a5b0
Capabilities:
Check mutex on windows
Create or open mutex on windows
Create process on windows
Get common file path

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x27c
call fcn.005dfa60
mov eax, dword [0x6a704c]
xor eax, esp
mov dword [esp + 0x278], eax
push ebx
push esi
mov esi, dword [ebp + 0x10]
push edi
push 6
push 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
mov ecx, esi
mov dword [esp + 0x60], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0xf
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45a600
sub ecx, edx
push ecx
push esi
lea ecx, [esp + 0x68]
call fcn.00446eb0
cmp dword [esp + 0x74], 0x10
lea ecx, [esp + 0x60]
mov edx, dword [esp + 0x70]
cmovae ecx, dword [esp + 0x60]
push 8
push str.__silent
push ecx
call fcn.00447c40
mov edx, dword [esp + 0x7c]
lea ecx, [esp + 0x6c]
add esp, 0xc
mov dword [esp + 0x10], eax
cmp eax, 0xffffffff
setne byte [esp + 0xf]
cmp dword [esp + 0x74], 0x10
push 0xb
cmovae ecx, dword [esp + 0x64]
push 0x67a598
push ecx
call fcn.00447c40
add esp, 0xc
push str.mediaget_uninstaller_mutex
push 1
push 0
cmp eax, 0xffffffff
je 0x45a7af
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
lea ecx, [esp + 0x30]
call fcn.00453ef0
mov esi, eax
xor edi, edi
xor ebx, ebx
cmp dword [esi + 0x14], 0x10
jb 0x45a693
mov eax, dword [esi]
push 0
push 0
push 0xffffffffffffffff
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
je 0x45a6bc
mov ebx, eax
add eax, eax
push eax
push 0
call fcn.005e4cb3
add esp, 8
mov edi, eax
cmp dword [esi + 0x14], 0x10
jb 0x45a6c4
mov esi, dword [esi]
push ebx
push edi
push 0xffffffffffffffff
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
call fcn.004527e0
mov edx, eax
lea ecx, [esp + 0x18]
call fcn.004522d0
cmp dword [eax + 0x14], 8
jb 0x45a6ee
mov eax, dword [eax]
push 0x1024
push eax
push edi
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov edx, dword [esp + 0x2c]
cmp eax, 6
sete bl
cmp edx, 8
jb 0x45a73f
mov ecx, dword [esp + 0x18]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x45a735
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45adb5
push edx
push ecx
call fcn.005df326
add esp, 8
xor eax, eax
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 7
mov word [esp + 0x18], ax
test edi, edi
je 0x45a763
push edi
call fcn.005e4cbe
add esp, 4
mov edx, dword [esp + 0x44]
cmp edx, 0x10
jb 0x45a799
mov ecx, dword [esp + 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45a78f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45adba
push edx
push ecx
call fcn.005df326
add esp, 8
test bl, bl
je 0x45ad6a
mov cl, byte [esp + 0xf]
call fcn.0045adf0
jmp 0x45ad6a
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x45ad6a
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x208
push 0
call fcn.005e4cb3
add esp, 8
mov dword [esp + 0x14], eax
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov ecx, dword fs:[0x2c]
mov esi, dword [ecx]
mov ecx, dword [0x6af508]
cmp ecx, dword [esi + 4]
jle 0x45a86d
push 0x6af508
call fcn.005df48a
add esp, 4
cmp dword [0x6af508], 0xffffffff
jne 0x45a86d
push 0x18
push str.mediaget_uninstaller.exe
mov ecx, 0x6af53c
mov dword [0x6af53c], 0
mov dword [0x6af54c], 0
mov dword [0x6af550], 0xf
call fcn.00446eb0
push 0x60ace0
call fcn.005df311
add esp, 4
push 0x6af508
call fcn.005df440
add esp, 4
mov eax, dword [0x6af5e4]
cmp eax, dword [esi + 4]
jle 0x45a8c8
push 0x6af5e4
call fcn.005df48a
add esp, 4
cmp dword [0x6af5e4], 0xffffffff
jne 0x45a8c8
push 0x60a980
mov dword [0x6af490], 0
mov dword [0x6af4a0], 0
mov dword [0x6af4a4], 0xf
call fcn.005df311
add esp, 4
push 0x6af5e4
call fcn.005df440
add esp, 4
mov edx, dword [0x6af4a0]
test edx, edx
jne 0x45a998
lea eax, [esp + 0x78]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
lea edx, [esp + 0x78]
lea ecx, [esp + 0x30]
call fcn.0044e3a0
push eax
mov ecx, 0x6af490
call fcn.004470a0
mov edx, dword [esp + 0x44]
cmp edx, 0x10
jb 0x45a934
mov ecx, dword [esp + 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45a92a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45adbf
push edx
push ecx
call fcn.005df326
add esp, 8
mov edx, dword [0x6af4a0]
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0xf
mov byte [esp + 0x30], 0
test edx, edx
je 0x45a998
mov esi, dword [0x6af4a4]
mov eax, 0x6af490
mov edi, dword [0x6af490]
cmp esi, 0x10
cmovae eax, edi
cmp byte [eax + edx - 1], 0x2f
je 0x45a9a4
cmp esi, 0x10
mov eax, 0x6af490
cmovae eax, edi
cmp byte [eax + edx - 1], 0x5c
je 0x45a9a4
push 0x679530
mov ecx, 0x6af490
call fcn.00446fe0
mov edx, dword [0x6af4a0]
mov edi, dword [0x6af490]
mov esi, dword [0x6af4a4]
mov ebx, bind
mov eax, ebx
sub eax, edx
cmp eax, dword [0x6af54c]
jb 0x45adc4
push dword [0x6af54c]
cmp esi, 0x10
mov ecx, 0x6af490
mov eax, 0x6af53c
cmovae ecx, edi
cmp dword [0x6af550], 0x10
cmovae eax, dword [0x6af53c]
push eax
push edx
push ecx
push ecx
push dword [esp + 0x24]
lea ecx, [esp + 0x30]
call fcn.004473d0
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x30]
mov dword [esp + 0x48], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0xf
call fcn.0044e3a0
lea edx, [esp + 0x18]
mov ecx, eax
call fcn.0044fb90
mov edx, dword [esp + 0x44]
test al, al
sete al
mov byte [esp + 0xf], al
cmp edx, 0x10
jb 0x45aa61
mov ecx, dword [esp + 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45aa53
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45adc9
push edx
push ecx
call fcn.005df326
mov al, byte [esp + 0x17]
add esp, 8
test al, al
je 0x45aadd
mov ecx, dword [esp + 0x28]
sub ebx, ecx
cmp ebx, 0x21
jb 0x45adce
cmp dword [esp + 0x2c], 0x10
lea eax, [esp + 0x18]
push ecx
cmovae eax, dword [esp + 0x1c]
push eax
push 0x21
push str.Unable_to_copy_file_to_temp_dir:
push ecx
push dword [esp + 0x24]
lea ecx, [esp + 0x48]
call fcn.004473d0
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x4c]
call fcn.004470a0
mov edx, dword [esp + 0x44]
cmp edx, 0x10
jb 0x45aadd
mov ecx, dword [esp + 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45aad3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45addd
push edx
push ecx
call fcn.005df326
add esp, 8
cmp dword [esp + 0x58], 0
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
jne 0x45abf1
push 0x208
push 0
mov ebx, 0x104
call fcn.005e4cb3
add esp, 8
lea ecx, [esp + 0x18]
cmp dword [esp + 0x2c], 0x10
mov esi, eax
cmovae ecx, dword [esp + 0x18]
push 0
push 0
push 0xffffffffffffffff
push ecx
push 0
push 0xfde9
call edi
cmp eax, ebx
jbe 0x45ab36
mov ebx, eax
add eax, eax
push eax
push esi
call fcn.005e4cb3
add esp, 8
mov esi, eax
cmp dword [esp + 0x2c], 0x10
lea eax, [esp + 0x18]
push ebx
cmovae eax, dword [esp + 0x1c]
push esi
push 0xffffffffffffffff
push eax
push 0
push 0xfde9
call edi
cmp dword [esp + 0x74], 0x10
lea ecx, [esp + 0x60]
mov edx, dword [esp + 0x70]
cmovae ecx, dword [esp + 0x60]
push 8
push str.__silent
push ecx
call fcn.00447c40
add esp, 0xc
mov edx, str.__uninstall___silent
cmp eax, 0xffffffff
mov ecx, str.__uninstall
cmovne ecx, edx
push 5
push 0
push ecx
push esi
push 0
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp eax, 0x20
jg 0x45abe4
mov edx, eax
lea ecx, [esp + 0x30]
call fcn.0044fda0
push eax
lea ecx, [esp + 0x4c]
call fcn.004470a0
mov edx, dword [esp + 0x44]
cmp edx, 0x10
jb 0x45abe4
mov ecx, dword [esp + 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45abda
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45add3
push edx
push ecx
call fcn.005df326
add esp, 8
test esi, esi
je 0x45abf1
push esi
call fcn.005e4cbe
add esp, 4
cmp dword [esp + 0x10], 0xffffffff
jne 0x45acc3
cmp dword [esp + 0x58], 0
je 0x45acc3
xor ebx, ebx
lea eax, [esp + 0x48]
push ebx
push ebx
xor esi, esi
cmp dword [esp + 0x64], 0x10
push 0xffffffffffffffff
cmovae eax, dword [esp + 0x54]
push eax
push ebx
push 0xfde9
call edi
test eax, eax
je 0x45ac3a
mov ebx, eax
add eax, eax
push eax
push esi
call fcn.005e4cb3
add esp, 8
mov esi, eax
cmp dword [esp + 0x5c], 0x10
lea ecx, [esp + 0x48]
push ebx
cmovae ecx, dword [esp + 0x4c]
push esi
push 0xffffffffffffffff
push ecx
push 0
push 0xfde9
call edi
call fcn.004527e0
mov edx, eax
lea ecx, [esp + 0x30]
call fcn.004522d0
cmp dword [eax + 0x14], 8
jb 0x45ac6e
mov eax, dword [eax]
push 0x10
push eax
push esi
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov edx, dword [esp + 0x44]
cmp edx, 8
jb 0x45acb6
mov ecx, dword [esp + 0x30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x45acac
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45add8
push edx
push ecx
call fcn.005df326
add esp, 8
test esi, esi
je 0x45acc3
push esi
call fcn.005e4cbe
add esp, 4
mov edx, dword [esp + 0x5c]
cmp edx, 0x10
jb 0x45acf9
mov ecx, dword [esp + 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45acef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45addd
push edx
push ecx
call fcn.005df326
add esp, 8
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0xf
mov byte [esp + 0x48], 0
cmp edx, 0x10
jb 0x45ad44
mov ecx, dword [esp + 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45ad3a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45addd
push edx
push ecx
call fcn.005df326
add esp, 8
mov eax, dword [esp + 0x14]
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0xf
mov byte [esp + 0x18], 0
test eax, eax
je 0x45ad6a
push eax
call fcn.005e4cbe
add esp, 4
mov edx, dword [esp + 0x74]
cmp edx, 0x10
jb 0x45ad9c
mov ecx, dword [esp + 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45ad92
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45ade2
push edx
push ecx
call fcn.005df326
add esp, 8
mov ecx, dword [esp + 0x284]
xor eax, eax
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.005df097
mov esp, ebp
pop ebp
ret 0x10
call fcn.005e4e95
call fcn.005e4e95
call fcn.005e4e95
call fcn.00446d70
call fcn.005e4e95
call fcn.00446d70
call fcn.005e4e95
call fcn.005e4e95
call fcn.005e4e95
call fcn.005e4e95
int3