Function at 0x4d9330
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 0x4d97e2
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov al, byte [eax + 0x352]
mov byte [ebp - 0xd], al
mov eax, dword [ebp - 4]
mov byte [eax + 0x352], 0
mov eax, dword [ebp - 4]
mov byte [eax + 0x358], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x270], 1
xor dl, 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x217], dl
mov edx, 0x7530
mov eax, dword [ebp - 4]
call fcn.005aa9ac
mov eax, dword [ebp - 4]
mov byte [eax + 0x1e7], 1
xor edx, edx
push ebp
push 0x4d97b8
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebp - 4]
cmp dword [eax + 0x1f8], 0
setne al
or bl, al
je 0x4d9453
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1f8]
test eax, eax
je 0x4d93ea
cmp byte [eax + 0x1b8], 0
je 0x4d93ea
push 2
mov eax, dword [eax + 0x22c]
push eax
call sub.wsock32.dll_shutdown
mov eax, dword [ebp - 4]
cmp byte [eax + 0x32e], 0
jne 0x4d9453
mov eax, dword [ebp - 4]
cmp byte [eax + 0xdc], 0
jne 0x4d9453
mov eax, dword [ebp - 4]
cmp byte [eax + 0x1c0], 0
jne 0x4d9453
mov edx, 0x4d97f8
mov eax, dword [ebp - 4]
call fcn.005a96e4
mov ax, word [0x4d97fc]
mov word [ebp - 6], ax
push 1
push 2
lea eax, [ebp - 6]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x22c]
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 + 0x22c]
push eax
call sub.wsock32.dll_send
mov eax, dword [ebp - 4]
mov byte [eax + 0x358], 1
xor esi, esi
mov eax, dword [ebp - 4]
mov ax, word [eax + 0x1e4]
mov edx, eax
sub dx, 0x7d
je 0x4d9478
sub dx, 0x19
je 0x4d9478
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.004d82f0
mov eax, dword [ebp - 4]
movsx eax, word [eax + 0x1e4]
cmp ebx, eax
je 0x4d949e
inc esi
mov ebx, eax
push 0
push 1
lea edx, [ebp - 0x14]
mov eax, 0x4d1dbc
call fcn.00405c9c
mov edx, dword [ebp - 0x14]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.004d473c
mov eax, dword [ebp - 4]
mov ax, word [eax + 0x1e4]
movsx edx, ax
cmp ebx, edx
je 0x4d94d0
inc esi
cmp ax, 0x1f3
jle 0x4d9515
mov eax, dword [ebp - 4]
mov byte [eax + 0x1e7], 0
mov edx, 0x3a98
mov eax, dword [ebp - 4]
call fcn.005aa9ac
mov eax, dword [ebp - 4]
mov byte [eax + 0x1e7], 1
push 0
push 1
lea edx, [ebp - 0x14]
mov eax, 0x4d1dbc
call fcn.00405c9c
mov edx, dword [ebp - 0x14]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004d473c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1f8]
test eax, eax
je 0x4d9631
call fcn.005a9558
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1f8]
mov cl, 1
xor edx, edx
call fcn.005ac530
cmp esi, 2
je 0x4d9631
mov eax, dword [ebp - 4]
mov byte [eax + 0x1e7], 0
mov edx, 0x2710
mov eax, dword [ebp - 4]
call fcn.005aa9ac
mov eax, dword [ebp - 4]
mov byte [eax + 0x1e7], 1
mov eax, dword [ebp - 4]
movsx ebx, word [eax + 0x1e4]
lea eax, [ebp - 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x224]
call fcn.00403d34
jmp 0x4d9607
lea eax, [ebp - 0x14]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 0xc]
call fcn.0040411c
mov eax, dword [ebp - 0x14]
push eax
lea eax, [ebp - 0x18]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x224]
mov ecx, 3
mov edx, 1
call fcn.0040411c
mov edx, dword [ebp - 0x18]
pop eax
call fcn.00404028
je 0x4d95f3
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x224]
mov ecx, 1
mov edx, 4
call fcn.0040411c
mov eax, dword [ebp - 0x14]
mov edx, 0x4d9808
call fcn.00404028
je 0x4d9631
push 0
push 1
lea eax, [ebp - 0x14]
push eax
xor ecx, ecx
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.004d82f0
mov eax, dword [ebp - 4]
cmp byte [eax + 0x268], 0
je 0x4d9631
mov eax, dword [ebp - 4]
cmp byte [eax + 0x216], 0
jne 0x4d9631
mov eax, dword [ebp - 4]
movsx eax, word [eax + 0x1e4]
cmp ebx, eax
je 0x4d9587
xor edx, edx
push ebp
push 0x4d977d
push dword fs:[edx]
mov dword fs:[edx], esp
mov dx, 1
mov eax, dword [ebp - 4]
call fcn.005acc80
mov eax, dword [ebp - 4]
cmp dword [eax + 0x1f8], 0
jne 0x4d9739
mov edx, dword [ebp - 4]
cmp word [edx + 0x1e4], 0
je 0x4d9711
mov eax, dword [ebp - 4]
mov ax, word [eax + 0x1e4]
cmp ax, 0xe2
je 0x4d9739
cmp ax, 0xe1
je 0x4d9739
cmp ax, 0x1f3
jge 0x4d9739
jmp 0x4d9711
lea eax, [ebp - 0xc]
push eax
mov cl, 1
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.005a9878
mov ecx, dword [ebp - 0xc]
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.005ac7c4
mov eax, dword [ebp - 4]
cmp byte [eax + 0x268], 0
je 0x4d96e0
mov eax, dword [ebp - 0xc]
mov edx, dword [0x5bc024]
mov edx, dword [edx]
call fcn.00404028
je 0x4d96e0
push 1
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.004d80c4
lea eax, [ebp - 0x14]
push eax
mov ecx, 4
mov edx, 1
mov eax, dword [ebp - 0xc]
call fcn.0040411c
mov eax, dword [ebp - 0x14]
mov edx, 0x4d9814
call fcn.00404028
je 0x4d9739
mov dx, 5
mov eax, dword [ebp - 4]
call fcn.005acc80
mov eax, dword [ebp - 4]
cmp byte [eax + 0x268], 0
je 0x4d9739
mov eax, dword [ebp - 4]
cmp byte [eax + 0x215], 0
jne 0x4d9739
mov eax, dword [ebp - 4]
cmp byte [eax + 0x216], 0
je 0x4d9696
mov eax, dword [ebp - 4]
cmp dword [eax + 0x1ec], 0
jle 0x4d974f
mov eax, dword [ebp - 4]
mov byte [eax + 0x1e8], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4d9784
mov eax, dword [ebp - 4]
mov byte [eax + 0x217], 0
mov eax, dword [ebp - 4]
mov byte [eax + 0x358], 0
mov eax, dword [ebp - 4]
mov dl, byte [ebp - 0xd]
mov byte [eax + 0x352], dl
ret