Function at 0x48b0d8
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 0x48b500
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 + 0x2f0], 0
mov byte [ebx + 0x2ea], 0
cmp byte [ebx + 0x1361], 0
je 0x48b12d
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.0048da08
push 6
push 1
push 2
call sub.wsock32.dll_socket
mov esi, eax
mov dword [ebx + 0x33c], esi
inc esi
jne 0x48b151
lea ecx, [ebp - 0x18]
mov dx, 0x2733
mov eax, ebx
call fcn.0048db70
mov eax, dword [ebx + 0x2c8]
mov edx, dword [0x54c6b8]
mov edx, dword [edx]
call fcn.00403f34
je 0x48b1bb
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 0x48b1a9
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
add dword [ebx - 0x1289173d], ecx
invalid
dec dword [ebx + 0x3f07e8c3]
add byte [eax], al
mov byte [ebx + 0x340], 1
mov byte [ebx + 0x1361], 1
mov byte [ebx + 0x329], 0
mov byte [ebx + 0x32a], 0
cmp byte [ebx + 0x1360], 0
je 0x48b220
mov ecx, 0x48b518
mov dl, 1
mov eax, dword [0x489668]
call fcn.0040badc
call fcn.0040361c
xor esi, esi
xor eax, eax
push ebp
push 0x48b246
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0x18]
xor edx, edx
mov eax, ebx
call fcn.0048dcc4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x48b272
cmp dword [ebx + 0x2b8], 0
jne 0x48b2ca
test esi, esi
jg 0x48b286
cmp word [ebx + 0x76], 0
jne 0x48b29e
mov ecx, 0x48b534
mov dl, 1
mov eax, dword [0x489668]
call fcn.0040badc
call fcn.0040361c
jmp 0x48b2ca
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 0x48b2c9
mov ecx, 0x48b534
mov dl, 1
mov eax, dword [0x489668]
call fcn.0040badc
call fcn.0040361c
inc esi
cmp dword [ebx + 0x2b8], 0
je 0x48b222
mov word [ebx + 0x2b4], 2
cmp dword [ebx + 0xd0], 0
jne 0x48b2ff
mov ax, word [ebx + 0xf0]
push eax
call sub.wsock32.dll_htons
mov word [ebx + 0x2b6], ax
jmp 0x48b313
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 0x48b34b
lea ecx, [ebp - 0x18]
mov dx, 0x2733
mov eax, ebx
call fcn.0048db70
xor edx, edx
mov eax, ebx
call fcn.0048c93c
mov eax, ebx
call fcn.0048e180
cmp byte [ebx + 0x1360], 0
jne 0x48b37f
cmp byte [ebx + 0x32a], 0
jne 0x48b37f
cmp byte [ebx + 0x329], 0
jne 0x48b37f
cmp byte [ebx + 0xec], 0
jne 0x48b354
mov eax, ebx
call fcn.0048c98c
cmp byte [ebx + 0x32a], 0
jne 0x48b3a5
cmp byte [ebx + 0x329], 0
jne 0x48b3a5
cmp byte [ebx + 0xec], 0
jne 0x48b4aa
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.0048da08
mov byte [ebx + 0x1361], 0
cmp word [ebx + 0x9e], 0
je 0x48b3cf
mov edx, ebx
mov eax, dword [ebx + 0xa0]
call dword [ebx + 0x9c]
cmp byte [ebx + 0xe6], 0
je 0x48b3ee
mov ecx, 0x48b558
mov dl, 1
mov eax, dword [0x4896c0]
call fcn.0040badc
call fcn.0040361c
cmp byte [ebx + 0xec], 0
jne 0x48b436
mov eax, ebx
call fcn.0048db58
cmp eax, 0x2733
jne 0x48b411
mov edx, 0x274c
mov eax, ebx
call fcn.0048db60
mov eax, ebx
call fcn.0048db58
lea ecx, [ebp - 0x18]
mov dl, 1
call fcn.00487d6c
mov ecx, dword [ebp - 0x18]
mov dl, 1
mov eax, dword [0x489668]
call fcn.0040badc
call fcn.0040361c
cmp byte [ebx + 0x32a], 0
je 0x48b461
lea ecx, [ebp - 0x18]
mov dl, 1
mov ax, 0x274c
call fcn.00487d6c
mov ecx, dword [ebp - 0x18]
mov dl, 1
mov eax, dword [0x489668]
call fcn.0040badc
call fcn.0040361c
cmp byte [ebx + 0xec], 0
je 0x48b489
cmp byte [ebx + 0x1360], 0
jne 0x48b489
mov ecx, 0x48b574
mov dl, 1
mov eax, dword [0x489668]
call fcn.0040badc
call fcn.0040361c
cmp byte [ebx + 0x329], 0
je 0x48b4ea
mov ecx, 0x48b558
mov dl, 1
mov eax, dword [0x489668]
call fcn.0040badc
call fcn.0040361c
jmp 0x48b4ea
mov eax, dword [ebx + 0xe0]
cmp eax, 0xa
jne 0x48b4c0
xor edx, edx
mov eax, ebx
call fcn.0048e244
jmp 0x48b4ea
cmp eax, 0x10
jne 0x48b4d0
mov dl, 1
mov eax, ebx
call fcn.0048e244
jmp 0x48b4ea
cmp eax, 0xb
jne 0x48b4de
mov eax, ebx
call fcn.0048e620
jmp 0x48b4ea
cmp eax, 0xd
jne 0x48b4ea
mov eax, ebx
call fcn.0048ee74
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x48b507
lea eax, [ebp - 0x18]
call fcn.00403ba8
ret