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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd4
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x2c], ebx
mov edi, ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov esi, 0x53e170
xor eax, eax
push ebp
push 0x4e6ae2
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 9], 0
cmp dword [esi], 0
jg 0x4e6acc
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
mov dword [esi], eax
mov eax, dword [ebp - 8]
mov dword [eax], 0x13572469
mov eax, dword [ebp - 8]
mov edx, dword [0x53b338]
mov dword [eax + 8], edx
mov eax, dword [ebp - 8]
mov byte [eax + 0xf], 0
mov edx, dword [esi]
mov eax, dword [ebp - 8]
call fcn.004bd650
neg al
mov edx, dword [ebp - 8]
mov byte [edx + 0xf], al
mov eax, dword [ebp - 4]
cmp dword [eax + 0x320], 0
jne 0x4e6908
lea edx, [ebp - 0x2c]
mov eax, dword [0x53be94]
mov eax, dword [eax]
call fcn.004522e4
mov eax, dword [ebp - 0x2c]
call fcn.004e6374
mov edx, dword [ebp - 4]
mov dword [edx + 0x320], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
cmp byte [0x53e178], 0
jne 0x4e6acc
mov byte [0x53e178], 0xff
xor edx, edx
push ebp
push 0x4e6ac1
push dword fs:[edx]
mov dword fs:[edx], esp
cmp dword [esi], 0
jle 0x4e6aac
mov eax, dword [esi]
cmp eax, dword [0x53b318]
jle 0x4e694d
call fcn.004036e4
jmp 0x4e6acc
mov word [ebp - 0x28], 2
cmp dword [esi], 0x100
jge 0x4e6961
mov dword [esi], pe_nt_image_headers32
mov eax, edi
cmp eax, 0xa
jle 0x4e69b9
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x320]
dec edx
cmp edx, 0x17ec03
jne 0x4e69b9
mov eax, dword [edi]
call fcn.0040403c
push eax
call sub.wsock32.dll_inet_addr
mov dword [ebp - 0x24], eax
mov ax, word [edi + 4]
push eax
call sub.wsock32.dll_htons
mov word [ebp - 0x26], ax
push 0x10
lea eax, [ebp - 0x28]
push eax
push 0
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [0x53e174]
push eax
call sub.wsock32.dll_sendto
mov ebx, eax
jmp 0x4e6a83
cmp eax, 2
jne 0x4e69f5
mov ax, word [0x53e110]
push eax
call sub.wsock32.dll_htons
mov word [ebp - 0x26], ax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x24], eax
push 0x10
lea eax, [ebp - 0x28]
push eax
push 0
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [0x53e16c]
push eax
call sub.wsock32.dll_sendto
mov ebx, eax
jmp 0x4e6a83
test eax, eax
jne 0x4e6a0b
mov ax, word [0x53e110]
push eax
call sub.wsock32.dll_htons
mov word [ebp - 0x26], ax
jmp 0x4e6a37
cmp eax, 1
jne 0x4e6a22
mov ax, word [0x53e10c]
push eax
call sub.wsock32.dll_htons
mov word [ebp - 0x26], ax
jmp 0x4e6a37
cmp eax, 3
jne 0x4e6a37
mov ax, word [0x53e114]
push eax
call sub.wsock32.dll_htons
mov word [ebp - 0x26], ax
mov eax, dword [0x53e150]
mov eax, dword [eax + 8]
dec eax
test eax, eax
jl 0x4e6a83
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 0
mov edx, dword [ebp - 0x14]
mov eax, dword [0x53e150]
call fcn.00411b18
mov dword [ebp - 0x24], eax
push 0x10
lea eax, [ebp - 0x28]
push eax
push 0
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [0x53e16c]
push eax
call sub.wsock32.dll_sendto
mov ebx, eax
inc dword [ebp - 0x14]
dec dword [ebp - 0x18]
jne 0x4e6a4f
cmp ebx, 0xffffffff
jne 0x4e6a93
xor eax, eax
mov dword [esi], eax
call fcn.004036e4
jmp 0x4e6acc
inc dword [0x53b338]
sub dword [esi], ebx
cmp dword [esi], 0
jle 0x4e6930
add dword [ebp - 0x10], ebx
jmp 0x4e6930
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4e6ac8
mov byte [0x53e178], 0
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4e6ae9
lea eax, [ebp - 0x2c]
call fcn.00403bf8
ret