Function at 0x401e12
Capabilities:
Check mutex on windows

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x44
push ebx
push esi
push edi
xor ebx, ebx
push ebx
push ebx
push 1
push ebx
call dword [sym.imp.KERNEL32.dll_HeapSetInformation]
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0x40
push 0x406c68
push 0x386
push eax
mov dword [0x4063bc], eax
call dword [sym.imp.USER32.dll_LoadStringW]
push 0x4011b8
push 1
push ebx
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x401e8a
push ebx
push str.DialerClass
call dword [sym.imp.USER32.dll_FindWindowW]
push eax
call dword [sym.imp.USER32.dll_SetForegroundWindow]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x40202f
mov eax, dword [sym.imp.USER32.dll_DefDlgProcW]
mov dword [esp + 0x2c], eax
mov eax, dword [0x4063bc]
push 1
push eax
mov dword [esp + 0x30], 0x2808
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], 0x1e
mov dword [esp + 0x40], eax
call dword [sym.imp.USER32.dll_LoadIconW]
push 0x7f00
push ebx
mov dword [esp + 0x44], eax
call dword [sym.imp.USER32.dll_LoadCursorW]
push 6
mov dword [esp + 0x44], eax
call dword [sym.imp.GDI32.dll_GetStockObject]
mov dword [esp + 0x44], eax
lea eax, [esp + 0x28]
push eax
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], str.DialerClass
call dword [sym.imp.USER32.dll_RegisterClassW]
push ebx
push 0x402520
push ebx
push 0xc8
push dword [0x4063bc]
call dword [sym.imp.USER32.dll_CreateDialogParamW]
mov dword [0x406d00], eax
call fcn.00402038
push 5
push dword [0x406d00]
call dword [sym.imp.USER32.dll_ShowWindow]
push dword [0x406d00]
call dword [sym.imp.USER32.dll_UpdateWindow]
push ebx
push 0x50
push 0x141
push 0xc9
push dword [0x406d00]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
call fcn.0040197a
mov esi, eax
test esi, esi
je 0x401f6b
mov ecx, dword [0x406d00]
mov edx, esi
push 0x30
call fcn.00404ae3
call fcn.00402356
mov eax, esi
jmp 0x40202f
xor esi, esi
inc esi
push esi
push esi
push ebx
push dword [0x406c50]
call dword [sym.imp.TAPI32.dll_lineRegisterRequestRecipient]
test eax, eax
je 0x401f98
mov ecx, dword [0x406d00]
mov edx, eax
push 0x30
mov dword [0x406f38], ebx
call fcn.00404ae3
jmp 0x401f9e
mov dword [0x406f38], esi
push 0x406c68
push dword [0x4063bc]
call dword [sym.imp.USER32.dll_LoadAcceleratorsW]
mov esi, eax
jmp 0x40200d
mov eax, dword [0x406d00]
test eax, eax
je 0x401fd1
lea ecx, [esp + 0xc]
push ecx
push eax
call dword [sym.imp.USER32.dll_IsDialogMessageW]
test eax, eax
jne 0x401ff8
mov eax, dword [0x406d00]
lea ecx, [esp + 0xc]
push ecx
push esi
push eax
call dword [sym.imp.USER32.dll_TranslateAcceleratorW]
test eax, eax
jne 0x401ff8
lea eax, [esp + 0xc]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [esp + 0xc]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
cmp dword [0x406024], ebx
je 0x40200d
cmp dword [0x406970], ebx
je 0x40200d
call fcn.004049bd
push ebx
push ebx
push ebx
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
jne 0x401fb3
call fcn.00402356
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10