Function at 0x42425c
Capabilities:
Create raw socket
Get socket status
Receive data
Receive data on socket
Send data
Send data on socket
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x954
mov eax, dword [0x481028]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
xor eax, eax
push esi
push edi
xor ebx, ebx
mov word [ebp - 0x818], bx
lea edi, [ebp - 0x816]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
mov word [ebp - 0x828], bx
lea edi, [ebp - 0x826]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
mov edi, 0x3ff
push edi
lea eax, [ebp - 0x407]
push ebx
push eax
mov esi, ecx
mov byte [ebp - 0x408], bl
call sub.MSVCR80.dll_memset
push edi
lea eax, [ebp - 0x807]
push ebx
push eax
mov byte [ebp - 0x808], bl
call sub.MSVCR80.dll_memset
add esp, 0x18
push esi
mov dword [ebp - 0x844], 0x10
mov word [ebp - 0x816], 0x44
call dword [sym.imp.WS2_32.dll_inet_addr]
mov dword [ebp - 0x814], eax
mov word [ebp - 0x818], 2
mov byte [ebp - 0x408], 8
mov byte [ebp - 0x407], bl
mov word [ebp - 0x402], bx
mov word [ebp - 0x406], bx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov word [ebp - 0x404], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0x16
mov dword [ebp - 0x400], eax
lea eax, [ebp - 0x408]
xor ecx, ecx
pop edx
movzx esi, word [eax]
add ecx, esi
inc eax
inc eax
dec edx
jne 0x424336
mov eax, ecx
movzx ecx, cx
xor edi, edi
inc edi
push edi
shr eax, 0x10
add eax, ecx
push ebx
push ebx
mov ecx, eax
shr ecx, 0x10
push edi
add ecx, eax
push 3
not ecx
push 2
mov word [ebp - 0x406], cx
call dword [sym.imp.WS2_32.dll_WSASocketW]
mov esi, eax
cmp esi, 0xffffffff
jne 0x42437a
push 3
pop eax
jmp 0x424498
mov dword [ebp - 0x834], ebx
mov dword [ebp - 0x830], ebx
push 0x10
lea eax, [ebp - 0x818]
push eax
push ebx
push 0x2c
lea eax, [ebp - 0x408]
push eax
push esi
call dword [sym.imp.WS2_32.dll_sendto]
cmp eax, 0xffffffff
je 0x424474
lea eax, [ebp - 0x82c]
push eax
push 0x8004667e
push esi
mov dword [ebp - 0x82c], edi
call dword [sym.imp.WS2_32.dll_ioctlsocket]
mov dword [ebp - 0x840], ebx
mov dword [ebp - 0x83c], 0x64
mov dword [ebp - 0x94c], esi
mov dword [ebp - 0x950], edi
mov dword [ebp - 0x838], ebx
lea eax, [ebp - 0x840]
push eax
push ebx
push ebx
lea eax, [ebp - 0x950]
push eax
push ebx
call dword [sym.imp.WS2_32.dll_select]
cmp eax, ebx
jg 0x42442b
cmp eax, 0xffffffff
je 0x424453
mov eax, dword [ebp - 0x838]
add eax, dword [ebp - 0x83c]
mov dword [ebp - 0x94c], esi
cmp eax, 0xbb9
mov dword [ebp - 0x838], eax
mov dword [ebp - 0x950], edi
jl 0x4243e4
jmp 0x424453
lea eax, [ebp - 0x844]
push eax
lea eax, [ebp - 0x828]
push eax
push ebx
push 0x400
lea eax, [ebp - 0x808]
push eax
push esi
call dword [sym.imp.WS2_32.dll_recvfrom]
mov dword [ebp - 0x834], eax
lea eax, [ebp - 0x82c]
push eax
push 0x8004667e
push esi
mov dword [ebp - 0x82c], ebx
call dword [sym.imp.WS2_32.dll_ioctlsocket]
cmp dword [ebp - 0x834], ebx
jg 0x424496
inc dword [ebp - 0x830]
cmp dword [ebp - 0x830], 3
jl 0x424386
cmp dword [ebp - 0x834], ebx
jg 0x424496
push 2
jmp 0x424374
mov eax, edi
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004568ce
leave
ret