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

Disassembly:
mov eax, dword [esp + 0x14]
sub esp, 0x10
test ax, ax
push esi
push edi
jne 0x42bee7
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
push 0
push esi
push eax
push ecx
call dword [sym.imp.WS2_32.dll_send]
jmp 0x42bf39
xor edx, edx
push eax
mov dword [esp + 0xc], edx
mov word [esp + 0xc], 2
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], edx
call dword [sym.imp.WS2_32.dll_htons]
mov word [esp + 0xa], ax
mov eax, dword [esp + 0x28]
push eax
call dword [sym.imp.WS2_32.dll_htonl]
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
lea ecx, [esp + 8]
push 0x10
push ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x24]
push 0
push esi
push edx
push eax
call dword [sym.imp.WS2_32.dll_sendto]
cmp eax, 0xffffffff
jne 0x42c085
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, eax
lea eax, [esi - 0x273f]
cmp eax, 0x12
ja case.0x42bf61.10049
xor ecx, ecx
mov cl, byte [eax + 0x42c1c0]
jmp dword [ecx*4 + 0x42c1b4]
push str.err_EAFNOSUPPORT_in_send
push 0x45fb78
call fcn.004126b0
add esp, 8
mov esi, eax
mov ecx, esi
push 0xa
call fcn.00412400
mov edx, dword [esi]
xor edi, edi
mov eax, dword [edx + 4]
add eax, esi
test byte [eax + 4], 6
jne 0x42bfa8
mov eax, dword [eax + 0x28]
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x2c]
cmp eax, 0xffffffff
jne 0x42bfa8
mov edi, 4
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
test edi, edi
je case.0x42bf61.10048
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 0x28]
or eax, edi
test edx, edx
jne 0x42c19b
or al, 4
push 0
push eax
call fcn.00448183
pop edi
xor al, al
pop esi
add esp, 0x10
ret
push str._in_send
push esi
call fcn.0043b6d0
add esp, 4
push eax
push 0x455ce8
push esi
push str.err
push 0x45fb78
call fcn.004126b0
add esp, 8
mov ecx, eax
call fcn.00411f80
push eax
call fcn.004126b0
add esp, 8
push eax
call fcn.004126b0
add esp, 8
push eax
call fcn.004126b0
add esp, 8
mov esi, eax
mov ecx, esi
push 0xa
call fcn.00412400
mov ecx, dword [esi]
xor edi, edi
mov edx, dword [ecx + 4]
mov cl, byte [edx + esi + 4]
test cl, 6
lea eax, [edx + esi]
jne 0x42c054
mov eax, dword [eax + 0x28]
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x2c]
cmp eax, 0xffffffff
jne 0x42c054
mov edi, 4
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
test edi, edi
je case.0x42bf61.10048
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 0x28]
or eax, edi
test edx, edx
jne 0x42c19b
or al, 4
push 0
push eax
call fcn.00448183
pop edi
xor al, al
pop esi
add esp, 0x10
ret
test eax, eax
jne 0x42c0fe
push str.no_data_sent_in_send
push 0x45fb78
call fcn.004126b0
add esp, 8
mov esi, eax
mov ecx, esi
push 0xa
call fcn.00412400
mov ecx, dword [esi]
xor edi, edi
mov edx, dword [ecx + 4]
mov cl, byte [edx + esi + 4]
test cl, 6
lea eax, [edx + esi]
jne 0x42c0cd
mov eax, dword [eax + 0x28]
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x2c]
cmp eax, 0xffffffff
jne 0x42c0cd
mov edi, 4
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
test edi, edi
je case.0x42bf61.10048
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 0x28]
or eax, edi
test edx, edx
jne 0x42c19b
or al, 4
push 0
push eax
call fcn.00448183
pop edi
xor al, al
pop esi
add esp, 0x10
ret
cmp eax, esi
je 0x42c1ab
mov cl, byte [esp + 0x30]
test cl, cl
je case.0x42bf61.10048
push str._bytes_sent
push esi
push str._out_of
push eax
push str.only
push 0x45fb78
call fcn.004126b0
add esp, 8
mov ecx, eax
call fcn.00411f80
push eax
call fcn.004126b0
add esp, 8
mov ecx, eax
call fcn.00411f80
push eax
call fcn.004126b0
add esp, 8
mov esi, eax
mov ecx, esi
push 0xa
call fcn.00412400
mov ecx, dword [esi]
xor edi, edi
mov edx, dword [ecx + 4]
mov cl, byte [edx + esi + 4]
test cl, 6
lea eax, [edx + esi]
jne 0x42c182
mov eax, dword [eax + 0x28]
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x2c]
cmp eax, 0xffffffff
jne 0x42c182
mov edi, 4
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
test edi, edi
je case.0x42bf61.10048
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 0x28]
or eax, edi
test edx, edx
jne 0x42c19b
or al, 4
push 0
push eax
call fcn.00448183
pop edi
xor al, al
pop esi
add esp, 0x10
ret
pop edi
mov al, 1
pop esi
add esp, 0x10
ret