Function at 0x43f584
Capabilities:
Create tcp socket
Initialize winsock library
Resolve dns

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1ac
push ebx
push esi
push edi
xor ebx, ebx
push 0x18e
lea eax, [esp + 0x2e]
push ebx
push eax
mov word [esp + 0x34], bx
call fcn.004883c0
add esp, 0xc
lea eax, [esp + 0x28]
push eax
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
jne 0x43f5df
push 6
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
push str.localhost
call dword [sym.imp.WS2_32.dll_gethostbyname]
push 0x4bf8e8
push ebx
mov dword [esp + 0x14], ebx
call fcn.0048ed7f
pop ecx
pop ecx
lea eax, [esp + 0x10]
call fcn.004241ab
push dword [eax]
call fcn.00448512
mov eax, dword [esp + 0x10]
add eax, 0xfffffff0
call fcn.0040151c
call fcn.0041e5f0
push dword [ebp + 0x10]
mov edi, 0x4dc87c
push edi
call fcn.0043f15b
push dword [ebp + 0x10]
push 0x4dc878
call fcn.00401aed
push dword [ebp + 0x10]
lea eax, [esp + 0x1c]
push eax
call fcn.004024c6
call fcn.0043f433
test eax, eax
je 0x43f66a
push str.One_instance_is_running
mov esi, 0x4dc90c
call fcn.0044866c
pop ecx
mov eax, 0xe000000f
call fcn.004245b3
push 6
mov eax, edi
call fcn.00402760
jmp 0x43f783
call fcn.004427c3
cmp eax, 6
push 8
pop esi
je 0x43f6e8
cmp eax, 7
je 0x43f6e8
cmp eax, esi
je 0x43f6e8
cmp eax, 0xa
je 0x43f6e8
cmp eax, 0xb
je 0x43f6e8
cmp eax, 0xc
je 0x43f6e8
push 0x4b6e94
lea eax, [esp + 0x1c]
call fcn.004026bb
test eax, eax
jne 0x43f6e8
push str.IsWinXPAndLater_return_false
mov esi, 0x4dc90c
call fcn.0044866c
pop ecx
mov eax, 0xe0000010
call fcn.004245b3
push 5
mov eax, edi
call fcn.00402760
cmp byte [0x4dc888], bl
jne 0x43f783
push 0x40
push 0x4bf924
push 0x4bf934
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x43f783
call fcn.004038eb
test eax, eax
jne 0x43f700
mov eax, 0xe0000011
call fcn.004245b3
jmp 0x43f783
call fcn.004044f1
test eax, eax
jne 0x43f71b
push str.CheckEnvironment_return_fase
mov esi, 0x4dc90c
call fcn.0044866c
pop ecx
jmp 0x43f783
push ebx
call dword [sym.imp.ole32.dll_CoInitialize]
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_DefWindowProcW]
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], 4
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
call fcn.004411d9
test eax, eax
jl 0x43f772
push str.g_App.Run...
mov esi, 0x4dc90c
call fcn.0044866c
pop ecx
call fcn.0040398f
push eax
push str.g_App.Run_return:_d
mov dword [esp + 0x14], eax
call fcn.0044866c
pop ecx
pop ecx
call fcn.00441068
call dword [sym.imp.ole32.dll_CoUninitialize]
cmp dword [esp + 0xc], ebx
jne 0x43f78c
push 9
mov eax, edi
call fcn.00402760
cmp dword [0x4dc6d8], ebx
jne 0x43f7a8
cmp byte [0x4dc888], bl
jne 0x43f7a8
cmp dword [0x4dc660], ebx
jne 0x43f7a8
xor eax, eax
jmp 0x43f7ab
xor eax, eax
inc eax
push eax
call fcn.0043f512
cmp dword [0x4dc804], ebx
pop ecx
jne 0x43f7bf
call fcn.004046fa
call fcn.0043f2e2
cmp dword [0x4dc6d0], ebx
je 0x43f7d1
call fcn.00424402
mov eax, dword [0x4dc688]
cmp eax, ebx
je 0x43f7e0
push eax
call sub.gdiplus.dll_GdiplusShutdown
mov eax, dword [0x4dc6f0]
cmp dword [eax - 0xc], ebx
je 0x43f7f8
push ebx
push ebx
push 1
push ebx
push eax
call fcn.00423b18
add esp, 0x14
mov esi, 0x4dc79c
call fcn.0041ed57
mov esi, 0x4dc730
call fcn.0043de47
call fcn.0044860c
mov eax, dword [0x4dc584]
cmp eax, ebx
mov esi, dword [sym.imp.KERNEL32.DLL_CloseHandle]
je 0x43f829
push eax
call esi
mov dword [0x4dc584], ebx
mov eax, dword [0x4dc580]
cmp eax, ebx
je 0x43f83b
push eax
call esi
mov dword [0x4dc580], ebx
cmp dword [0x4dc7f8], ebx
je 0x43f848
call fcn.00422fa1
lea esi, [esp + 0x18]
call fcn.00405580
call dword [sym.imp.WS2_32.dll_WSACleanup]
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10