Function at 0x10025d90
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket
Get local ipv4 addresses
Get socket information
Get socket status
Resolve dns
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008ac65
mov eax, dword fs:[0]
push eax
sub esp, 0x274
mov eax, dword [0x100a70c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x278], edx
mov edi, ecx
push 0
push 1
push 2
mov dword [ebp - 4], 0
call dword [sym.imp.WS2_32.dll_socket]
mov esi, eax
cmp esi, 0xffffffff
je 0x1002605f
lea eax, [ebp - 0x270]
mov dword [ebp - 0x270], 1
push eax
push 0x8004667e
push esi
call dword [sym.imp.WS2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
je 0x10026058
xorps xmm0, xmm0
mov eax, 2
push 0x1bb
movlpd qword [ebp - 0x30], xmm0
mov word [ebp - 0x38], ax
call dword [sym.imp.WS2_32.dll_htons]
cmp dword [ebp + 0x1c], 0xf
mov word [ebp - 0x36], ax
lea eax, [ebp + 8]
cmova eax, dword [ebp + 8]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
test eax, eax
je 0x10026058
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
push dword [eax]
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov edx, eax
mov dword [ebp - 0x18], 0
mov ecx, edx
mov dword [ebp - 0x14], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x28], xmm0
lea eax, [ecx + 1]
mov dword [ebp - 0x26c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10025e72
sub ecx, dword [ebp - 0x26c]
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.10003170
mov byte [ebp - 4], 1
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0xf
xorps xmm0, xmm0
movups xmmword [ebp - 0x50], xmm0
cmova edx, dword [ebp - 0x28]
mov ecx, edx
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
lea eax, [ecx + 1]
mov dword [ebp - 0x26c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10025eb8
sub ecx, dword [ebp - 0x26c]
push ecx
push edx
lea ecx, [ebp - 0x50]
call fcn.10003170
lea ecx, [ebp - 0x50]
call fcn.1001a940
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x34], eax
cmp ecx, 0xf
jbe 0x10025f0e
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10025f04
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100260af
push ecx
push edx
call fcn.10063694
add esp, 8
push 0x10
lea eax, [ebp - 0x38]
push eax
push esi
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x10025f6a
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x10025f6a
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10026058
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10025f5b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100260b4
push ecx
push edx
call fcn.10063694
add esp, 8
jmp 0x10026058
lea eax, [ebp - 0x280]
mov dword [ebp - 0x280], 3
push eax
push 0
lea eax, [ebp - 0x154]
mov dword [ebp - 0x27c], 0
push eax
lea eax, [ebp - 0x258]
mov dword [ebp - 0x254], esi
push eax
push 0
mov dword [ebp - 0x258], 1
mov dword [ebp - 0x150], esi
mov dword [ebp - 0x154], 1
call dword [sym.imp.WS2_32.dll_select]
test eax, eax
jle 0x10026040
lea eax, [ebp - 0x274]
mov dword [ebp - 0x274], 0x10
push eax
lea eax, [ebp - 0x268]
push eax
push esi
call dword [sym.imp.WS2_32.dll_getsockname]
cmp eax, 0xffffffff
je 0x10026040
mov eax, dword [ebp - 0x264]
test edi, edi
je 0x10025ff5
mov dword [edi], eax
push eax
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov edi, eax
test edi, edi
je 0x1002601d
mov edx, edi
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x10026007
sub edx, ecx
mov ecx, dword [ebp - 0x278]
push edx
push edi
call fcn.10002e20
push esi
call dword [sym.imp.WS2_32.dll_closesocket]
mov eax, dword [ebp - 0x14]
cmp eax, 0xf
jbe 0x1002603c
push eax
push dword [ebp - 0x28]
lea eax, [ebp - 0x28]
push eax
call fcn.100030d0
add esp, 0xc
xor esi, esi
jmp 0x10026062
mov eax, dword [ebp - 0x14]
cmp eax, 0xf
jbe 0x10026058
push eax
push dword [ebp - 0x28]
lea eax, [ebp - 0x28]
push eax
call fcn.100030d0
add esp, 0xc
push esi
call dword [sym.imp.WS2_32.dll_closesocket]
or esi, 0xffffffff
mov ecx, dword [ebp + 0x1c]
cmp ecx, 0xf
jbe 0x10026092
mov edx, dword [ebp + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10026088
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100260b9
push ecx
push edx
call fcn.10063694
add esp, 8
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10063337
mov esp, ebp
pop ebp
ret
call fcn.1006dd3f
call fcn.1006dd3f
call fcn.1006dd3f
int3