Function at 0x402db0
Capabilities:
Contain obfuscated stackstrings
Link many functions at runtime

Disassembly:
sub esp, 0x1a8
mov dword [ecx + 4], 0xffffffff
mov dword [ecx + 0x80], 0
mov dword [ecx + 0x84], 0
call fcn.004030c0
mov eax, dword [0x4188d4]
test eax, eax
je 0x402de8
xor eax, eax
add esp, 0x1a8
ret
mov al, 0x6c
push esi
mov byte [esp + 0xc], al
mov byte [esp + 0xd], al
mov byte [esp + 0x19], al
mov byte [esp + 0x1a], al
lea eax, [esp + 4]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov cl, 0x32
mov dl, 0x64
push eax
mov byte [esp + 0xc], 0x77
mov byte [esp + 0xd], 0x73
mov byte [esp + 0xe], cl
mov byte [esp + 0xf], 0x5f
mov byte [esp + 0x10], 0x33
mov byte [esp + 0x11], cl
mov byte [esp + 0x12], 0x2e
mov byte [esp + 0x13], dl
mov byte [esp + 0x16], 0
mov byte [esp + 0x18], 0x77
mov byte [esp + 0x19], 0x73
mov byte [esp + 0x1a], 0x6f
mov byte [esp + 0x1b], 0x63
mov byte [esp + 0x1c], 0x6b
mov byte [esp + 0x1d], 0x33
mov byte [esp + 0x1e], cl
mov byte [esp + 0x1f], 0x2e
mov byte [esp + 0x20], dl
mov byte [esp + 0x23], 0
call edi
mov esi, eax
test esi, esi
jne 0x402e7e
lea ecx, [esp + 0x14]
push ecx
call edi
mov esi, eax
test esi, esi
je 0x402fa2
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.WSAStartup
push esi
call edi
push str.WSACleanup
push esi
mov dword [0x41888c], eax
call edi
push str.ioctlsocket
push esi
mov dword [0x418890], eax
call edi
push str.socket
push esi
mov dword [0x418894], eax
call edi
push str.connect
push esi
mov dword [0x418898], eax
call edi
push str.send
push esi
mov dword [0x41889c], eax
call edi
push str.recv
push esi
mov dword [0x4188a0], eax
call edi
push str.closesocket
push esi
mov dword [0x4188a4], eax
call edi
push str.shutdown
push esi
mov dword [0x4188a8], eax
call edi
push str.setsockopt
push esi
mov dword [0x4188ac], eax
call edi
push str.htons
push esi
mov dword [0x4188b0], eax
call edi
push str.bind
push esi
mov dword [0x4188c4], eax
call edi
push str.listen
push esi
mov dword [0x4188b4], eax
call edi
push str.select
push esi
mov dword [0x4188b8], eax
call edi
push str.accept
push esi
mov dword [0x4188bc], eax
call edi
push str.setsockopt
push esi
mov dword [0x4188c0], eax
call edi
push str.htonl
push esi
mov dword [0x4188b0], eax
call edi
push str.htons
push esi
mov dword [0x4188c8], eax
call edi
push str.ntohl
push esi
mov dword [0x4188c4], eax
call edi
push str.ntohs
push esi
mov dword [0x4188d0], eax
call edi
mov dword [0x4188cc], eax
push str.inet_addr
push esi
call edi
push str.__WSAFDIsSet
push esi
mov dword [0x418888], eax
call edi
mov dword [0x418884], eax
mov eax, dword [0x418884]
pop edi
test eax, eax
pop esi
je 0x4030b2
mov eax, dword [0x418888]
test eax, eax
je 0x4030b2
mov eax, dword [0x41888c]
test eax, eax
je 0x4030b2
mov ecx, dword [0x418890]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x418894]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x418898]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x41889c]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188a0]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188a4]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188a8]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188ac]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188b0]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188b4]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188b8]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188bc]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188c0]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188c4]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188c8]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188cc]
test ecx, ecx
je 0x4030b2
mov ecx, dword [0x4188d0]
test ecx, ecx
je 0x4030b2
lea edx, [esp + 0x18]
push edx
push 0x202
call eax
test eax, eax
jne 0x4030b2
mov dword [0x4188d4], 1
add esp, 0x1a8
ret
or eax, 0xffffffff
add esp, 0x1a8
ret