Function at 0x9659b0
Capabilities:
Check for time delay via gettickcount
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0xb10538
push 0xa847a0
mov eax, dword fs:[0]
push eax
sub esp, 0x1a8
mov eax, dword [0xb196ec]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x1c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov ebx, ecx
mov dword [ebp - 0x1b8], ebx
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x1b4], eax
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
mov edi, eax
test ebx, ebx
je 0x965a0d
mov byte [ebx], 0
cmp dword [0xbd8590], 0
jne 0x965a75
call esi
sub eax, edi
cmp eax, 0x3e8
jae 0x965a57
push 1
mov ecx, str.WinSockLoadInProgress
call fcn.00962f00
mov dword [ebp - 0x1b4], eax
test eax, eax
je 0x965a57
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x965a57
lea eax, [ebp - 0x1b4]
push eax
call fcn.00985290
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x965a16
cmp dword [0xbd8590], 0
je 0x965a86
cmp dword [ebp - 0x1b4], 0
je 0x965a75
lea ecx, [ebp - 0x1b4]
push ecx
call fcn.00985290
mov dword [ebp - 4], 0xfffffffe
mov eax, 1
jmp 0x965c96
mov ecx, str.ws2_32.dll
call fcn.0094c620
mov edi, eax
test edi, edi
jne 0x965ac7
test ebx, ebx
je 0x965aa9
push 0x100
mov esi, ebx
call fcn.00960b00
add esp, 4
cmp dword [ebp - 0x1b4], 0
je 0x965c8d
lea edx, [ebp - 0x1b4]
push edx
call fcn.00985290
jmp 0x965c8d
push str.WSACleanup
push edi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call esi
mov dword [0xbd85a8], eax
push str.WSAStartup
push edi
call esi
mov dword [0xbd85a0], eax
test eax, eax
jne 0x965b35
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
xor esi, esi
mov dword [0xbd8590], esi
mov dword [0xbd85a8], esi
mov dword [0xbd85a0], esi
cmp ebx, esi
je 0x965b18
push str.Unable_to_GetProcAddress_of_WSACleanup_WSAStartup_
push ebx
call fcn.00a78f30
add esp, 8
cmp dword [ebp - 0x1b4], esi
je 0x965c8d
lea eax, [ebp - 0x1b4]
push eax
call fcn.00985290
jmp 0x965c8d
lea ecx, [ebp - 0x1b0]
push ecx
push 0x202
call eax
mov ebx, eax
test ebx, ebx
je 0x965bee
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
xor esi, esi
mov dword [0xbd8590], esi
mov dword [0xbd85a8], esi
mov dword [0xbd85a0], esi
mov eax, dword [ebp - 0x1b8]
cmp eax, esi
je 0x965bd1
cmp ebx, 0x276b
jne 0x965b82
push ebx
push str.WSAStartup_Error:_WSASYSNOTREADY___d_
jmp 0x965bc8
cmp ebx, 0x276c
jne 0x965b92
push ebx
push str.WSAStartup_Error:_WSAVERNOTSUPPORTED___d_
jmp 0x965bc8
cmp ebx, 0x2734
jne 0x965ba2
push ebx
push str.WSAStartup_Error:_WSAEINPROGRESS___d_
jmp 0x965bc8
cmp ebx, 0x2753
jne 0x965bb2
push ebx
push str.WSAStartup_Error:_WSAEPROCLIM___d_
jmp 0x965bc8
cmp ebx, 0x271e
jne 0x965bc2
push ebx
push str.WSAStartup_Error:_WSAEFAULT___d_
jmp 0x965bc8
push ebx
push str.Unknown_WSAStartup_Error:__d
push eax
call fcn.00a78f30
add esp, 0xc
cmp dword [ebp - 0x1b4], esi
je 0x965c8d
lea edx, [ebp - 0x1b4]
push edx
call fcn.00985290
jmp 0x965c8d
push str.inet_ntoa
push edi
call esi
mov dword [reloc.WS2_32.dll_inet_ntoa], eax
push str.gethostbyname
push edi
call esi
mov dword [reloc.WS2_32.dll_gethostbyname], eax
push str.WSAGetLastError
push edi
call esi
mov dword [reloc.WS2_32.dll_WSAGetLastError], eax
push str.htonl
push edi
call esi
mov dword [reloc.WS2_32.dll_htonl], eax
push str.gethostname
push edi
call esi
mov dword [0xbd85ac], eax
push str.closesocket
push edi
call esi
mov dword [reloc.WS2_32.dll_closesocket], eax
push str.WSASocketA
push edi
call esi
mov dword [0xbd85b4], eax
push 0xaeb244
push edi
call esi
mov dword [reloc.WS2_32.dll_WSAIoctl], eax
mov dword [0xbd8590], edi
cmp dword [ebp - 0x1b4], 0
je 0x965a75
lea eax, [ebp - 0x1b4]
push eax
jmp 0x965a70
mov dword [ebp - 4], 0xfffffffe
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.00a78f21
mov esp, ebp
pop ebp
ret