Function at 0x48b4a4
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffe8
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x18], edx
mov ebx, eax
xor eax, eax
push ebp
push 0x48b8e1
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebx + 0xe4], 0
mov byte [ebx + 0x311], 0
mov byte [ebx + 0x312], 0
mov byte [ebx + 0x2f4], 0
mov byte [ebx + 0x2ea], 0
cmp byte [ebx + 0x369], 0
je 0x48b4f9
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.0048de54
cmp dword [ebx + 0x364], 0
jne 0x48b50e
mov edx, 0x1000
mov eax, ebx
call fcn.0048a250
push 6
push 1
push 2
call sub.wsock32.dll_socket
mov esi, eax
mov dword [ebx + 0x33c], esi
inc esi
jne 0x48b532
lea ecx, [ebp - 0x18]
mov dx, 0x2733
mov eax, ebx
call fcn.0048e034
mov eax, dword [ebx + 0x2c8]
mov edx, dword [0x54e6e4]
mov edx, dword [edx]
call fcn.00403f34
je 0x48b59c
lea eax, [ebp - 0x14]
xor ecx, ecx
mov edx, 0x10
call fcn.00402bd8
mov word [ebp - 0x14], 2
push 0x15
call sub.wsock32.dll_htons
mov word [ebp - 0x12], ax
mov eax, dword [ebx + 0x2c8]
call fcn.00403fe8
push eax
call sub.wsock32.dll_inet_addr
mov esi, eax
mov dword [ebp - 0x10], esi
cmp esi, 0x100007f
jne 0x48b58a
xor eax, eax
mov dword [ebp - 0x10], eax
push 0x10
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebx + 0x33c]
push eax
call sub.wsock32.dll_bind
push 0x3f
push 0x465
mov eax, dword [ebx + 0x344]
push eax
mov eax, dword [ebx + 0x33c]
push eax
call sub.wsock32.dll_WSAAsyncSelect
mov dl, 1
mov eax, ebx
call fcn.0048a218
mov eax, ebx
call fcn.0048f5b4
mov byte [ebx + 0x340], 1
mov byte [ebx + 0x369], 1
mov byte [ebx + 0x329], 0
mov byte [ebx + 0x32a], 0
cmp byte [ebx + 0x368], 0
je 0x48b601
mov ecx, 0x48b8f8
mov dl, 1
mov eax, dword [0x4898cc]
call fcn.0040ba5c
call fcn.0040361c
xor esi, esi
xor eax, eax
push ebp
push 0x48b627
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0x18]
xor edx, edx
mov eax, ebx
call fcn.0048e188
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x48b653
cmp dword [ebx + 0x2b8], 0
jne 0x48b6ab
test esi, esi
jg 0x48b667
cmp word [ebx + 0x76], 0
jne 0x48b67f
mov ecx, 0x48b914
mov dl, 1
mov eax, dword [0x4898cc]
call fcn.0040ba5c
call fcn.0040361c
jmp 0x48b6ab
mov byte [ebp - 1], 0
lea ecx, [ebp - 1]
mov edx, ebx
mov eax, dword [ebx + 0x78]
call dword [ebx + 0x74]
cmp byte [ebp - 1], 0
jne 0x48b6aa
mov ecx, 0x48b914
mov dl, 1
mov eax, dword [0x4898cc]
call fcn.0040ba5c
call fcn.0040361c
inc esi
cmp dword [ebx + 0x2b8], 0
je 0x48b603
mov word [ebx + 0x2b4], 2
cmp dword [ebx + 0xd0], 0
jne 0x48b6e0
mov ax, word [ebx + 0xf0]
push eax
call sub.wsock32.dll_htons
mov word [ebx + 0x2b6], ax
jmp 0x48b6f4
mov ax, word [ebx + 0xdc]
push eax
call sub.wsock32.dll_htons
mov word [ebx + 0x2b6], ax
mov byte [ebx + 0x120], 0
mov eax, 0x10
mov byte [ebx + 0xec], 1
push eax
lea eax, [ebx + 0x2b4]
push eax
mov eax, dword [ebx + 0x33c]
push eax
call sub.wsock32.dll_connect
inc eax
jne 0x48b72c
lea ecx, [ebp - 0x18]
mov dx, 0x2733
mov eax, ebx
call fcn.0048e034
xor edx, edx
mov eax, ebx
call fcn.0048cd30
mov eax, ebx
call fcn.0048e644
cmp byte [ebx + 0x368], 0
jne 0x48b760
cmp byte [ebx + 0x32a], 0
jne 0x48b760
cmp byte [ebx + 0x329], 0
jne 0x48b760
cmp byte [ebx + 0xec], 0
jne 0x48b735
mov eax, ebx
call fcn.0048cd80
cmp byte [ebx + 0x32a], 0
jne 0x48b786
cmp byte [ebx + 0x329], 0
jne 0x48b786
cmp byte [ebx + 0xec], 0
jne 0x48b88b
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.0048de54
mov byte [ebx + 0x369], 0
cmp word [ebx + 0x9e], 0
je 0x48b7b0
mov edx, ebx
mov eax, dword [ebx + 0xa0]
call dword [ebx + 0x9c]
cmp byte [ebx + 0xe6], 0
je 0x48b7cf
mov ecx, 0x48b938
mov dl, 1
mov eax, dword [0x489924]
call fcn.0040ba5c
call fcn.0040361c
cmp byte [ebx + 0xec], 0
jne 0x48b817
mov eax, ebx
call fcn.0048e01c
cmp eax, 0x2733
jne 0x48b7f2
mov edx, 0x274c
mov eax, ebx
call fcn.0048e024
mov eax, ebx
call fcn.0048e01c
lea ecx, [ebp - 0x18]
mov dl, 1
call fcn.00487f68
mov ecx, dword [ebp - 0x18]
mov dl, 1
mov eax, dword [0x4898cc]
call fcn.0040ba5c
call fcn.0040361c
cmp byte [ebx + 0x32a], 0
je 0x48b842
lea ecx, [ebp - 0x18]
mov dl, 1
mov ax, 0x274c
call fcn.00487f68
mov ecx, dword [ebp - 0x18]
mov dl, 1
mov eax, dword [0x4898cc]
call fcn.0040ba5c
call fcn.0040361c
cmp byte [ebx + 0xec], 0
je 0x48b86a
cmp byte [ebx + 0x368], 0
jne 0x48b86a
mov ecx, 0x48b954
mov dl, 1
mov eax, dword [0x4898cc]
call fcn.0040ba5c
call fcn.0040361c
cmp byte [ebx + 0x329], 0
je 0x48b8cb
mov ecx, 0x48b938
mov dl, 1
mov eax, dword [0x4898cc]
call fcn.0040ba5c
call fcn.0040361c
jmp 0x48b8cb
mov eax, dword [ebx + 0xe0]
cmp eax, 0xa
jne 0x48b8a1
xor edx, edx
mov eax, ebx
call fcn.0048e708
jmp 0x48b8cb
cmp eax, 0x10
jne 0x48b8b1
mov dl, 1
mov eax, ebx
call fcn.0048e708
jmp 0x48b8cb
cmp eax, 0xb
jne 0x48b8bf
mov eax, ebx
call fcn.0048eae4
jmp 0x48b8cb
cmp eax, 0xd
jne 0x48b8cb
mov eax, ebx
call fcn.0048f338
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x48b8e8
lea eax, [ebp - 0x18]
call fcn.00403ba8
ret