Function at 0x4abaf8
Capabilities:
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffe8
push ebx
push esi
xor ebx, ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0xc], ebx
mov ebx, ecx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x4abfa2
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov al, byte [eax + 0x2e6]
mov byte [ebp - 0xd], al
mov eax, dword [ebp - 4]
mov byte [eax + 0x2e6], 0
mov eax, dword [ebp - 4]
mov byte [eax + 0x2ec], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x208], 1
xor dl, 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x1af], dl
mov edx, 0x7530
mov eax, dword [ebp - 4]
call fcn.0057ad24
mov eax, dword [ebp - 4]
mov byte [eax + 0x17f], 1
xor edx, edx
push ebp
push 0x4abf78
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebp - 4]
cmp dword [eax + 0x190], 0
setne al
or bl, al
je 0x4abc1b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x190]
test eax, eax
je 0x4abbb2
cmp byte [eax + 0x150], 0
je 0x4abbb2
push 2
mov eax, dword [eax + 0x1c4]
push eax
call sub.wsock32.dll_shutdown
mov eax, dword [ebp - 4]
cmp byte [eax + 0x2c2], 0
jne 0x4abc1b
mov eax, dword [ebp - 4]
cmp byte [eax + 0xdc], 0
jne 0x4abc1b
mov eax, dword [ebp - 4]
cmp byte [eax + 0x158], 0
jne 0x4abc1b
mov edx, 0x4abfb8
mov eax, dword [ebp - 4]
call fcn.00579ae4
mov ax, word [0x4abfbc]
mov word [ebp - 6], ax
push 1
push 2
lea eax, [ebp - 6]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c4]
push eax
call sub.wsock32.dll_send
push 1
push 2
lea eax, [ebp - 6]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c4]
push eax
call sub.wsock32.dll_send
mov eax, dword [ebp - 4]
mov byte [eax + 0x2ec], 1
xor esi, esi
mov eax, dword [ebp - 4]
mov ax, word [eax + 0x17c]
mov edx, eax
sub dx, 0x7d
je 0x4abc40
sub dx, 0x19
je 0x4abc40
inc esi
movsx ebx, ax
push 0
push 1
lea eax, [ebp - 0x14]
push eax
xor ecx, ecx
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.004aab5c
mov eax, dword [ebp - 4]
movsx eax, word [eax + 0x17c]
cmp ebx, eax
je 0x4abc66
inc esi
mov ebx, eax
lea edx, [ebp - 0x14]
mov eax, 0x4a4b0c
call fcn.00405c64
mov edx, dword [ebp - 0x14]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.004a728c
mov eax, dword [ebp - 4]
mov ax, word [eax + 0x17c]
movsx edx, ax
cmp ebx, edx
je 0x4abc94
inc esi
cmp ax, 0x1f3
jle 0x4abcd5
mov eax, dword [ebp - 4]
mov byte [eax + 0x17f], 0
mov edx, 0x3a98
mov eax, dword [ebp - 4]
call fcn.0057ad24
mov eax, dword [ebp - 4]
mov byte [eax + 0x17f], 1
lea edx, [ebp - 0x14]
mov eax, 0x4a4b0c
call fcn.00405c64
mov edx, dword [ebp - 0x14]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004a728c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x190]
test eax, eax
je 0x4abdf1
call fcn.00579958
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x190]
mov cl, 1
xor edx, edx
call fcn.0057c0e8
cmp esi, 2
je 0x4abdf1
mov eax, dword [ebp - 4]
mov byte [eax + 0x17f], 0
mov edx, 0x2710
mov eax, dword [ebp - 4]
call fcn.0057ad24
mov eax, dword [ebp - 4]
mov byte [eax + 0x17f], 1
mov eax, dword [ebp - 4]
movsx ebx, word [eax + 0x17c]
lea eax, [ebp - 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x1bc]
call fcn.00403ca4
jmp 0x4abdc7
lea eax, [ebp - 0x14]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 0xc]
call fcn.0040408c
mov eax, dword [ebp - 0x14]
push eax
lea eax, [ebp - 0x18]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1bc]
mov ecx, 3
mov edx, 1
call fcn.0040408c
mov edx, dword [ebp - 0x18]
pop eax
call fcn.00403f98
je 0x4abdb3
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1bc]
mov ecx, 1
mov edx, 4
call fcn.0040408c
mov eax, dword [ebp - 0x14]
mov edx, 0x4abfc8
call fcn.00403f98
je 0x4abdf1
push 0
push 1
lea eax, [ebp - 0x14]
push eax
xor ecx, ecx
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.004aab5c
mov eax, dword [ebp - 4]
cmp byte [eax + 0x200], 0
je 0x4abdf1
mov eax, dword [ebp - 4]
cmp byte [eax + 0x1ae], 0
jne 0x4abdf1
mov eax, dword [ebp - 4]
movsx eax, word [eax + 0x17c]
cmp ebx, eax
je 0x4abd47
xor edx, edx
push ebp
push 0x4abf3d
push dword fs:[edx]
mov dword fs:[edx], esp
mov dx, 1
mov eax, dword [ebp - 4]
call fcn.0057c848
mov eax, dword [ebp - 4]
cmp dword [eax + 0x190], 0
jne 0x4abef9
mov edx, dword [ebp - 4]
cmp word [edx + 0x17c], 0
je 0x4abed1
mov eax, dword [ebp - 4]
mov ax, word [eax + 0x17c]
cmp ax, 0xe2
je 0x4abef9
cmp ax, 0xe1
je 0x4abef9
cmp ax, 0x1f3
jge 0x4abef9
jmp 0x4abed1
lea eax, [ebp - 0xc]
push eax
mov cl, 1
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.00579c78
mov ecx, dword [ebp - 0xc]
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0057c374
mov eax, dword [ebp - 4]
cmp byte [eax + 0x200], 0
je 0x4abea0
mov eax, dword [ebp - 0xc]
mov edx, dword [0x585ebc]
mov edx, dword [edx]
call fcn.00403f98
je 0x4abea0
push 1
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.004aa930
lea eax, [ebp - 0x14]
push eax
mov ecx, 4
mov edx, 1
mov eax, dword [ebp - 0xc]
call fcn.0040408c
mov eax, dword [ebp - 0x14]
mov edx, 0x4abfd4
call fcn.00403f98
je 0x4abef9
mov dx, 5
mov eax, dword [ebp - 4]
call fcn.0057c848
mov eax, dword [ebp - 4]
cmp byte [eax + 0x200], 0
je 0x4abef9
mov eax, dword [ebp - 4]
cmp byte [eax + 0x1ad], 0
jne 0x4abef9
mov eax, dword [ebp - 4]
cmp byte [eax + 0x1ae], 0
je 0x4abe56
mov eax, dword [ebp - 4]
cmp dword [eax + 0x184], 0
jle 0x4abf0f
mov eax, dword [ebp - 4]
mov byte [eax + 0x180], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4abf44
mov eax, dword [ebp - 4]
mov byte [eax + 0x1af], 0
mov eax, dword [ebp - 4]
mov byte [eax + 0x2ec], 0
mov eax, dword [ebp - 4]
mov dl, byte [ebp - 0xd]
mov byte [eax + 0x2e6], dl
ret