Function at 0x41d690
Capabilities:
Check mutex on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x60ef7d
mov eax, dword fs:[0]
push eax
mov eax, 0x16f8
call fcn.00537800
mov eax, dword [0x68e4d8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov dword [0x699e64], eax
push str.geeks_950EEE4C_A752_4B04_A2A1_6BAE74A52919
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [ebp - 0x1660], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x165c], eax
cmp dword [ebp - 0x165c], 0xb7
je 0x41d6fd
cmp dword [ebp - 0x165c], 5
jne 0x41d71a
cmp dword [ebp - 0x1660], 0
je 0x41d713
mov ecx, dword [ebp - 0x1660]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x41dde5
mov dword [ebp - 0x1654], 0
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
push 0
call dword [sym.imp.ole32.dll_OleInitialize]
push 0
push 0
push 0
push 0
call dword [sym.imp.USER32.dll_DefWindowProcW]
push 4
call fcn.0041c1c0
add esp, 4
push 0
mov edx, dword [ebp + 8]
push edx
push 0
mov ecx, 0x69dfd8
call fcn.0041c480
push 0x69e018
mov ecx, 0x69dfd8
call fcn.0041c5e0
push 0x660130
call fcn.005198c0
add esp, 4
push 0
push 0
push 0
lea ecx, [ebp - 0x1704]
call fcn.0041c980
push 0
lea eax, [ebp - 0x1704]
push eax
lea ecx, [ebp - 0x16b0]
push ecx
call dword [sym.imp.gdiplus.dll_GdiplusStartup]
mov edx, dword [ebp + 8]
push edx
call fcn.0041cb70
add esp, 4
lea ecx, [ebp - 0x16b4]
call fcn.0040efc0
mov dword [ebp - 4], 0
mov eax, dword [ebp + 0x10]
push eax
call fcn.0040a7c0
mov ecx, eax
call fcn.0040d220
call fcn.0041d560
call fcn.0040a7c0
mov ecx, eax
call fcn.0040d940
mov dword [ebp - 0x16bc], eax
push 0x66013c
lea ecx, [ebp - 0x1668]
call fcn.0040ab00
mov byte [ebp - 4], 1
push 0x660144
lea ecx, [ebp - 0x1664]
call fcn.0040ab00
mov byte [ebp - 4], 2
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x16d0], esp
push 0
call fcn.0040aa60
mov dword [ebp - 0x16f0], eax
mov byte [ebp - 4], 3
push 0
push 0
lea ecx, [ebp - 0x1668]
push ecx
lea edx, [ebp - 0x1664]
push edx
call fcn.0040a9b0
mov byte [ebp - 4], 2
mov ecx, eax
call fcn.005192d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1664]
call fcn.0040aae0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1668]
call fcn.0040aae0
lea ecx, [ebp - 0x1650]
call fcn.0040efc0
mov byte [ebp - 4], 4
lea eax, [ebp - 0x1650]
push eax
call fcn.0041ce70
add esp, 4
mov dword [ebp - 0x166c], eax
cmp dword [ebp - 0x166c], 0
jg 0x41da2f
cmp dword [ebp - 0x166c], 0
jge 0x41d8c1
cmp dword [ebp - 0x16bc], 0
jne 0x41d8c1
push 0
push 0x66014c
push 0x660154
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
call fcn.0040a7c0
mov ecx, eax
call fcn.0040da20
mov dword [ebp - 0x16c0], eax
lea ecx, [ebp - 0x1658]
push ecx
call fcn.0040a7c0
mov ecx, eax
call fcn.0040ddf0
mov byte [ebp - 4], 5
cmp dword [ebp - 0x16c0], 0
jne 0x41d96f
call fcn.0042a5c0
mov dword [ebp - 0x1670], eax
lea edx, [ebp - 0x1650]
push edx
mov eax, dword [ebp - 0x1670]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x1670]
mov eax, dword [edx + 0x54]
call eax
lea ecx, [ebp - 0x1658]
call fcn.0040ac80
push eax
push str.RunApp_cmdLine:__s
call fcn.005198c0
add esp, 8
xor ecx, ecx
mov byte [ebp - 0x1649], cl
call fcn.0042a5c0
mov dword [ebp - 0x1674], eax
lea ecx, [ebp - 0x1658]
call fcn.0040ac80
push eax
lea ecx, [ebp - 0x1649]
call fcn.0041de00
push eax
mov edx, dword [ebp - 0x1674]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x1674]
mov edx, dword [eax + 0x3c]
call edx
mov dword [ebp - 0x1654], 0x10
push str.ver_exist
lea ecx, [ebp - 0x167c]
call fcn.0040ab00
mov byte [ebp - 4], 6
push 0x6601ac
lea ecx, [ebp - 0x1678]
call fcn.0040ab00
mov byte [ebp - 4], 7
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x16c4], esp
push 0
call fcn.0040aa60
mov dword [ebp - 0x16c8], eax
mov byte [ebp - 4], 8
push 0
push 0
lea eax, [ebp - 0x167c]
push eax
lea ecx, [ebp - 0x1678]
push ecx
call fcn.0040a9b0
mov byte [ebp - 4], 7
mov ecx, eax
call fcn.005192d0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1678]
call fcn.0040aae0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x167c]
call fcn.0040aae0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1658]
call fcn.0040aae0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1650]
call fcn.0040aae0
jmp 0x41dd05
call fcn.0041cd10
mov dword [ebp - 0x1654], eax
cmp dword [ebp - 0x1654], 0
je 0x41daec
push str.fail_task
lea ecx, [ebp - 0x1684]
call fcn.0040ab00
mov byte [ebp - 4], 9
push 0x6601c8
lea ecx, [ebp - 0x1680]
call fcn.0040ab00
mov byte [ebp - 4], 0xa
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x16cc], esp
push 0
call fcn.0040aa60
mov dword [ebp - 0x16e4], eax
mov byte [ebp - 4], 0xb
push 0
push 0
lea edx, [ebp - 0x1684]
push edx
lea eax, [ebp - 0x1680]
push eax
call fcn.0040a9b0
mov byte [ebp - 4], 0xa
mov ecx, eax
call fcn.005192d0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x1680]
call fcn.0040aae0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1684]
call fcn.0040aae0
push str.init_task_fail.
call fcn.005198c0
add esp, 4
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1650]
call fcn.0040aae0
jmp 0x41dd05
call fcn.0041cdc0
test eax, eax
jne 0x41db9b
push str.fail_config
lea ecx, [ebp - 0x168c]
call fcn.0040ab00
mov byte [ebp - 4], 0xc
push 0x660208
lea ecx, [ebp - 0x1688]
call fcn.0040ab00
mov byte [ebp - 4], 0xd
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x16d4], esp
push 0
call fcn.0040aa60
mov dword [ebp - 0x16d8], eax
mov byte [ebp - 4], 0xe
push 0
push 0
lea ecx, [ebp - 0x168c]
push ecx
lea edx, [ebp - 0x1688]
push edx
call fcn.0040a9b0
mov byte [ebp - 4], 0xd
mov ecx, eax
call fcn.005192d0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x1688]
call fcn.0040aae0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x168c]
call fcn.0040aae0
mov dword [ebp - 0x1654], 0xe
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1650]
call fcn.0040aae0
jmp 0x41dd05
push 0
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x16a0], eax
push 1
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x16a4], eax
mov eax, dword [ebp - 0x16a0]
sub eax, 0x258
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x16ac], eax
mov eax, dword [ebp - 0x16a4]
sub eax, 0x190
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x16a8], eax
push str.show
lea ecx, [ebp - 0x1694]
call fcn.0040ab00
mov byte [ebp - 4], 0xf
push 0x66021c
lea ecx, [ebp - 0x1690]
call fcn.0040ab00
mov byte [ebp - 4], 0x10
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x16dc], esp
push 0
call fcn.0040aa60
mov dword [ebp - 0x16e0], eax
mov byte [ebp - 4], 0x11
push 0
push 0
lea eax, [ebp - 0x1694]
push eax
lea ecx, [ebp - 0x1690]
push ecx
call fcn.0040a9b0
mov byte [ebp - 4], 0x10
mov ecx, eax
call fcn.005192d0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x1690]
call fcn.0040aae0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1694]
call fcn.0040aae0
lea ecx, [ebp - 0x1648]
call fcn.0042f160
mov byte [ebp - 4], 0x12
push 0xffffffffffffffff
push 0x660224
lea ecx, [ebp - 0x94]
call fcn.00446e60
mov byte [ebp - 4], 0x13
push 0
push 0x190
push 0x258
mov edx, dword [ebp - 0x16a8]
push edx
mov eax, dword [ebp - 0x16ac]
push eax
lea ecx, [ebp - 0x94]
push ecx
push 0
lea ecx, [ebp - 0x1648]
call fcn.00444780
mov dword [ebp - 0x16f4], eax
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x94]
call fcn.004472b0
mov ecx, 0x69e018
call fcn.0041c1f0
mov dword [ebp - 0x1654], eax
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1648]
call fcn.0042f290
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1650]
call fcn.0040aae0
xor edx, edx
jne 0x41d86a
push str.exit
lea ecx, [ebp - 0x169c]
call fcn.0040ab00
mov byte [ebp - 4], 0x14
push 0x660250
lea ecx, [ebp - 0x1698]
call fcn.0040ab00
mov byte [ebp - 4], 0x15
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x16e8], esp
push 0
call fcn.0040aa60
mov dword [ebp - 0x16ec], eax
mov byte [ebp - 4], 0x16
push 0
push 0
lea eax, [ebp - 0x169c]
push eax
lea ecx, [ebp - 0x1698]
push ecx
call fcn.0040a9b0
mov byte [ebp - 4], 0x15
mov ecx, eax
call fcn.005192d0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x1698]
call fcn.0040aae0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x169c]
call fcn.0040aae0
mov ecx, 0x69dfd8
call fcn.0041c690
mov ecx, 0x69dfd8
call fcn.0041c590
push 0x5dc
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [ebp - 0x16b0]
push edx
call dword [sym.imp.gdiplus.dll_GdiplusShutdown]
call dword [sym.imp.ole32.dll_OleUninitialize]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0x1654]
mov dword [ebp - 0x16b8], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x16b4]
call fcn.0040aae0
mov eax, dword [ebp - 0x16b8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005367cc
mov esp, ebp
pop ebp
ret