Function at 0x1017a28
Capabilities:
Connect socket
Get local ipv4 addresses
Get socket information
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x98
mov eax, dword [0x102e77c]
and word [ebp - 0x84], 0
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
push 0x1f
pop ecx
push 1
mov dword [ebp - 4], eax
push 0
xor eax, eax
or esi, 0xffffffff
lea edi, [ebp - 0x82]
rep stosd dword es:[edi], eax
push ebx
push esi
push esi
stosw word es:[edi], ax
mov edi, dword [sym.imp.WS2_32.dll_WSASocketW]
push esi
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x98], esi
call edi
cmp eax, esi
mov dword [ebp - 0x8c], eax
jne 0x1017af5
push 0x5d6
push 0x1004f98
call fcn.0100c9d4
push 0x1004f7c
call fcn.0100cb2d
pop ecx
mov edi, esi
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
mov dword [ebp - 0x90], eax
jne 0x1017ab3
mov dword [ebp - 0x90], esi
cmp dword [ebp - 0x8c], esi
mov ebx, dword [sym.imp.WS2_32.dll_closesocket]
je 0x1017ac9
push dword [ebp - 0x8c]
call ebx
cmp edi, esi
je 0x1017ad0
push edi
call ebx
cmp dword [ebp - 0x98], esi
je 0x1017ae0
push dword [ebp - 0x98]
call ebx
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x90]
pop edi
pop esi
pop ebx
call fcn.0102222e
leave
ret 4
push 1
push 0
push ebx
push esi
push esi
push esi
call edi
mov edi, eax
cmp edi, esi
jne 0x1017b1e
push 0x5dd
push 0x1004f98
call fcn.0100c9d4
push 0x1004f60
jmp 0x1017cfe
mov ax, word [ebx + 0x4c]
mov word [ebp - 0x84], ax
lea eax, [ebp - 0x84]
push eax
call fcn.010174e0
mov eax, dword [ebx + 0x54]
push eax
mov dword [ebp - 0x94], eax
lea eax, [ebp - 0x84]
push eax
push edi
call dword [sym.imp.WS2_32.dll_bind]
cmp eax, esi
jne 0x1017b6a
push 0x5e8
push 0x1004f98
call fcn.0100c9d4
push 0x1004f4c
jmp 0x1017cfe
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0x84]
push eax
push edi
call dword [sym.imp.WS2_32.dll_getsockname]
cmp eax, esi
jne 0x1017b9c
push 0x5ee
push 0x1004f98
call fcn.0100c9d4
push 0x1004f30
jmp 0x1017cfe
mov ebx, dword [ebx + 0x5c]
cmp ebx, 6
jne 0x1017c7f
push bind
push edi
call dword [sym.imp.WS2_32.dll_listen]
cmp eax, esi
jne 0x1017bd1
push 0x5f6
push 0x1004f98
call fcn.0100c9d4
push 0x1004f18
jmp 0x1017cfe
push dword [ebp - 0x94]
lea eax, [ebp - 0x84]
push eax
push dword [ebp - 0x8c]
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, esi
jne 0x1017c07
push 0x5fc
push 0x1004f98
call fcn.0100c9d4
push 0x1004f00
jmp 0x1017cfe
xor ebx, ebx
push ebx
push ebx
push edi
call dword [sym.imp.WS2_32.dll_accept]
push ebx
mov dword [ebp - 0x98], eax
push 1
lea eax, [ebp - 0x85]
push eax
push dword [ebp - 0x8c]
call dword [sym.imp.WS2_32.dll_send]
cmp eax, esi
jne 0x1017c4b
push 0x604
push 0x1004f98
call fcn.0100c9d4
push 0x1004eec
jmp 0x1017cfe
push ebx
push 1
lea eax, [ebp - 0x85]
push eax
push dword [ebp - 0x98]
call dword [sym.imp.WS2_32.dll_recv]
cmp eax, esi
jne 0x1017d09
push 0x60a
push 0x1004f98
call fcn.0100c9d4
push 0x1004ed8
jmp 0x1017cfe
cmp ebx, 0x11
jne 0x1017d09
push dword [ebp - 0x94]
lea eax, [ebp - 0x84]
push eax
push 0
push 1
lea eax, [ebp - 0x85]
push eax
push dword [ebp - 0x8c]
call dword [sym.imp.WS2_32.dll_sendto]
cmp eax, esi
jne 0x1017cc6
push 0x612
push 0x1004f98
call fcn.0100c9d4
push 0x1004ec0
jmp 0x1017cfe
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0x84]
push eax
push 0
push 1
lea eax, [ebp - 0x85]
push eax
push edi
call dword [sym.imp.WS2_32.dll_recvfrom]
cmp eax, esi
jne 0x1017d09
push 0x618
push 0x1004f98
call fcn.0100c9d4
push 0x1004ea8
call fcn.0100cb2d
pop ecx
jmp 0x1017a9d
and dword [ebp - 0x90], 0
jmp 0x1017ab3