Function at 0x40eee0
Capabilities:
Check mutex on windows
Create process on windows
Hide graphical window
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44c
mov eax, dword [0x413008]
xor eax, ebp
mov dword [ebp - 8], eax
mov dword [ebp - 0x44c], 0
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
mov dword [0x418cf0], eax
mov dword [ebp - 0x3ac], 8
mov dword [ebp - 0x3a8], 0x20
lea ecx, [ebp - 0x3ac]
push ecx
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
call fcn.0040b450
test eax, eax
je 0x40ef51
call fcn.0040b3b0
test eax, eax
jne 0x40ef51
call fcn.0040b330
jmp 0x40f24b
push str.Global_vLan_2.x
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [ebp - 0x3a4], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x40ef7a
xor eax, eax
jmp 0x40f24b
lea edx, [ebp - 0x198]
push edx
push 0x202
call sub.WS2_32.dll_WSAStartup
test eax, eax
je 0x40efaa
push 0x10
push 0x414018
push str.Initialize_socket_component_failed_
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
jmp 0x40f24b
call fcn.0040f260
mov dword [ebp - 0x3d4], 3
mov dword [ebp - 0x3d0], 0x40edc0
mov dword [ebp - 0x3cc], 0
mov dword [ebp - 0x3c8], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0x3c4], eax
push 0x65
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x3c0], eax
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorW]
mov dword [ebp - 0x3bc], eax
mov dword [ebp - 0x3b8], 0x10
mov dword [ebp - 0x3b4], 0
mov dword [ebp - 0x3b0], str.vLoaderWnd
lea edx, [ebp - 0x3d4]
push edx
call dword [sym.imp.USER32.dll_RegisterClassW]
movzx eax, ax
test eax, eax
jne 0x40f052
push 0x10
push 0x4140a8
push str.This_program_requires_Windows_2000_XP_
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
jmp 0x40f24b
push 0
mov ecx, dword [ebp + 8]
push ecx
push 0
push 0
push 0xf0
push 0x168
push 0
push 0
push 0x80c80180
push 0x414140
push str.vLoaderWnd
push 1
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [0x418ce4], eax
push 0
call dword [sym.imp.USER32.dll_GetSystemMetrics]
sub eax, 0x168
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x1a0], eax
push 1
call dword [sym.imp.USER32.dll_GetSystemMetrics]
sub eax, 0xf0
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x19c], eax
push 1
push 0
push 0
mov edx, dword [ebp - 0x19c]
push edx
mov eax, dword [ebp - 0x1a0]
push eax
push 0
mov ecx, dword [0x418ce4]
push ecx
call dword [sym.imp.USER32.dll_SetWindowPos]
push 5
mov edx, dword [0x418ce4]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [0x418ce4]
push eax
call dword [sym.imp.USER32.dll_UpdateWindow]
push 0
push 0
push 0
lea ecx, [ebp - 0x400]
push ecx
call dword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
je 0x40f127
lea edx, [ebp - 0x400]
push edx
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x400]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
jmp 0x40f0f4
mov ecx, dword [0x418ce4]
push ecx
call dword [sym.imp.USER32.dll_DestroyWindow]
mov edx, dword [ebp - 0x3a4]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.0040e0c0
call dword [sym.imp.ole32.dll_CoUninitialize]
cmp dword [0x417044], 0
je 0x40f245
push 0x414188
push 0x418ae0
push 0x41419c
lea eax, [ebp - 0x3a0]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
push 0x44
push 0
lea ecx, [ebp - 0x448]
push ecx
call fcn.00401700
add esp, 0xc
push 0x10
push 0
lea edx, [ebp - 0x3e4]
push edx
call fcn.00401700
add esp, 0xc
mov dword [ebp - 0x448], 0x44
lea eax, [ebp - 0x3e4]
push eax
lea ecx, [ebp - 0x448]
push ecx
push 0x418ae0
push 0
push 0
push 0
push 0
push 0
push 0
lea edx, [ebp - 0x3a0]
push edx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
cmp dword [ebp - 4], 0x12c
jge 0x40f245
push 0
push str.IPvE_vLan_2900
call dword [sym.imp.USER32.dll_FindWindowW]
mov dword [ebp - 0x44c], eax
cmp dword [ebp - 0x44c], 0
je 0x40f230
push 5
mov eax, dword [ebp - 0x44c]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push 0xf120
push 0x112
mov ecx, dword [ebp - 0x44c]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp - 0x44c]
push edx
call dword [sym.imp.USER32.dll_SetForegroundWindow]
jmp 0x40f245
push 0
push 0x64
call dword [sym.imp.KERNEL32.dll_SleepEx]
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
jmp 0x40f1d4
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.00401006
mov esp, ebp
pop ebp
ret 0x10