Function at 0x4b051e
Capabilities:
Connect socket
Connect udp socket
Create udp socket
Get local ipv4 addresses
Get socket information
Receive data
Receive data on socket
Send data
Send data on socket
Set socket configuration

Disassembly:
sub esp, 0x6c
mov eax, dword [0x5c9040]
xor eax, esp
mov dword [esp + 0x64], eax
push ebx
push ebp
mov ebp, dword [esp + 0x7c]
push esi
mov esi, dword [sym.imp.WS2_32.dll_socket]
push edi
push 6
xor edi, edi
mov dword [esp + 0x20], 0x10
inc edi
push edi
push 2
pop eax
push eax
call esi
mov ebx, eax
cmp ebx, 0xffffffff
je 0x4b0799
push 0x10
lea eax, [esp + 0x50]
push 0
push eax
call fcn.0051c010
add esp, 0xc
push 2
pop eax
push 0x7f000001
mov word [esp + 0x50], ax
call dword [sym.imp.WS2_32.dll_htonl]
or dword [ebp + 4], 0xffffffff
or dword [ebp], 0xffffffff
mov dword [esp + 0x50], eax
xor eax, eax
push 4
mov word [esp + 0x52], ax
lea eax, [esp + 0x14]
push eax
push 0xfffffffffffffffb
push 0xffff
push ebx
mov dword [esp + 0x24], edi
call dword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
je 0x4b0786
push 0x10
lea eax, [esp + 0x50]
push eax
push ebx
call dword [sym.imp.WS2_32.dll_bind]
cmp eax, 0xffffffff
je 0x4b0786
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x50]
push eax
push ebx
call dword [sym.imp.WS2_32.dll_getsockname]
cmp eax, 0xffffffff
je 0x4b0786
cmp dword [esp + 0x1c], 0x10
jl 0x4b0786
push edi
push ebx
call dword [sym.imp.WS2_32.dll_listen]
cmp eax, 0xffffffff
je 0x4b0786
push 0
push edi
push 2
pop eax
push eax
call esi
mov dword [ebp], eax
cmp eax, 0xffffffff
je 0x4b0786
push 0x10
lea ecx, [esp + 0x50]
push ecx
push eax
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x4b0786
mov ecx, ebx
call fcn.004b4776
test eax, eax
js 0x4b0786
xor esi, esi
mov dword [esp + 0x14], ebx
xor eax, eax
mov word [esp + 0x18], di
push esi
push 0x3e8
mov edx, edi
mov word [esp + 0x22], ax
lea ecx, [esp + 0x1c]
call fcn.0049267c
pop ecx
pop ecx
push esi
push esi
push ebx
call dword [sym.imp.WS2_32.dll_accept]
mov dword [ebp + 4], eax
cmp eax, 0xffffffff
je 0x4b0786
lea eax, [esp + 0x38]
push eax
call fcn.0048ccd6
mov esi, eax
lea edi, [esp + 0x2c]
pop ecx
push 9
lea edx, [esp + 0x60]
xor ecx, ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop edi
lea esi, [esp + 0x68]
mov dword [esp + 0x20], edi
push edi
mov dword [esp + 0x14], esi
call fcn.004900d6
pop ecx
test eax, eax
jne 0x4b0786
push eax
push edi
lea eax, [esp + 0x64]
push eax
push dword [ebp]
call dword [sym.imp.WS2_32.dll_send]
mov eax, dword [ebp + 4]
xor ecx, ecx
mov dword [esp + 0x14], eax
inc ecx
xor eax, eax
mov word [esp + 0x18], cx
push eax
mov edx, ecx
mov word [esp + 0x1e], ax
push 0x3e8
lea ecx, [esp + 0x1c]
call fcn.0049267c
pop ecx
pop ecx
push 0
push edi
push esi
push dword [ebp + 4]
call dword [sym.imp.WS2_32.dll_recv]
cmp eax, 0xffffffff
jne 0x4b0750
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x38]
push eax
call fcn.0048ccd6
sub esp, 0xc
lea esi, [esp + 0x38]
mov edi, esp
sub esp, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, eax
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0048cd67
add esp, 0x20
test edx, edx
jg 0x4b0786
jl 0x4b0739
cmp eax, 0xea60
ja 0x4b0786
cmp dword [esp + 0x24], 0x2733
jne 0x4b0786
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x20]
jmp 0x4b06bd
sub edi, eax
mov dword [esp + 0x20], edi
je 0x4b0763
add esi, eax
mov dword [esp + 0x10], esi
jmp 0x4b06bd
push 9
lea eax, [esp + 0x6c]
push eax
lea eax, [esp + 0x64]
push eax
call fcn.0051cbd0
add esp, 0xc
test eax, eax
jne 0x4b0786
push ebx
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
jmp 0x4b079c
mov esi, dword [sym.imp.WS2_32.dll_closesocket]
push ebx
call esi
push dword [ebp]
call esi
push dword [ebp + 4]
call esi
or eax, 0xffffffff
mov ecx, dword [esp + 0x74]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0051b034
add esp, 0x6c
ret