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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1b4
mov eax, dword [0x1006de68]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x160], 0
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x190], 0
mov dword [ebp - 0x170], 0xffffffff
mov dword [ebp - 0x158], 0xffffffff
mov dword [ebp - 0x184], 0
lea eax, [ebp - 0x154]
push eax
call fcn.1002e7d0
add esp, 4
cmp dword [ebp + 0x18], 0
jne 0x1004464d
jmp 0x10044aa4
mov ecx, 1
imul edx, ecx, 0
mov dword [ebp - 0x19c], edx
cmp dword [ebp - 0x19c], 0x100
jae 0x10044669
jmp 0x1004466e
call fcn.10059a86
mov eax, dword [ebp - 0x19c]
mov byte [ebp + eax - 0x104], 0
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x170], ecx
mov dword [ebp - 0x158], 0xffffffff
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x190], 0
cmp dword [ebp + 0x14], 0
jg 0x100446bf
mov dword [ebp - 0x168], 0xbebc200
jmp 0x100446c8
mov edx, dword [ebp + 0x14]
mov dword [ebp - 0x168], edx
mov eax, dword [ebp + 0x18]
push eax
call fcn.1002e7d0
add esp, 4
cmp dword [ebp + 8], 0
jae 0x10044711
mov ecx, dword [ebp + 0x18]
push ecx
push 0x834
push 2
call fcn.1002ed90
add esp, 0xc
mov dword [ebp - 0x158], 0x3f4
push str.Negative_socket_number_supplied
lea edx, [ebp - 0x104]
push edx
call dword [sym.imp.MSVCR120.dll_sprintf]
add esp, 8
jmp 0x10044aa4
cmp dword [ebp + 0x10], 0
jne 0x1004474e
mov eax, dword [ebp + 0x18]
push eax
push 0x835
push 2
call fcn.1002ed90
add esp, 0xc
mov dword [ebp - 0x158], 0x3f4
push str.Null_message_buffer_supplied_supplied
lea ecx, [ebp - 0x104]
push ecx
call dword [sym.imp.MSVCR120.dll_sprintf]
add esp, 8
jmp 0x10044aa4
call fcn.10044f10
mov dword [ebp - 0x178], eax
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x15c], edx
cmp dword [ebp + 0xc], 0
jle 0x10044a75
mov eax, dword [ebp - 0x168]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10046980
add esp, 8
call fcn.10044f10
mov dword [ebp - 0x198], eax
mov edx, dword [ebp - 0x178]
push edx
mov eax, dword [ebp - 0x198]
push eax
call fcn.10044f90
add esp, 8
cmp eax, dword [ebp - 0x168]
jb 0x100448ee
mov ecx, dword [ebp + 0x18]
push ecx
push 0x839
push 2
call fcn.1002ed90
add esp, 0xc
mov edx, dword [ebp + 8]
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x158], 0x3f4
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x180], eax
cvtsi2sd xmm0, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x180]
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x1005e240]
divsd xmm0, qword [0x1005e230]
movsd qword [ebp - 0x1b4], xmm0
mov edx, dword [ebp - 0x198]
mov dword [ebp - 0x18c], edx
cvtsi2sd xmm0, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x18c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1005e240]
divsd xmm0, qword [0x1005e230]
movsd qword [ebp - 0x1ac], xmm0
mov ecx, dword [ebp - 0x168]
mov dword [ebp - 0x194], ecx
cvtsi2sd xmm0, dword [ebp - 0x194]
mov edx, dword [ebp - 0x194]
shr edx, 0x1f
addsd xmm0, qword [edx*8 + 0x1005e240]
divsd xmm0, qword [0x1005e230]
movsd qword [ebp - 0x1a4], xmm0
sub esp, 8
movsd xmm0, qword [ebp - 0x1a4]
movsd qword [esp], xmm0
sub esp, 8
movsd xmm0, qword [ebp - 0x1ac]
movsd qword [esp], xmm0
sub esp, 8
movsd xmm0, qword [ebp - 0x1b4]
movsd qword [esp], xmm0
push str.Time_out_on_write_expired__Start_time___f_sec__End_Time___f_sec__Timeout___f_sec
lea eax, [ebp - 0x104]
push eax
call dword [sym.imp.MSVCR120.dll_sprintf]
add esp, 0x20
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp - 0x15c]
push edx
push str._nRequested_write_size___d_number_of_unwritten_bytes___d
lea eax, [ebp - 0x104]
push eax
call sub.MSVCR120.dll_strlen
add esp, 4
lea ecx, [ebp + eax - 0x104]
push ecx
call dword [sym.imp.MSVCR120.dll_sprintf]
add esp, 0x10
jmp 0x10044aa4
cmp dword [ebp + 0xc], 0xfa00
jle 0x10044903
mov dword [ebp - 0x15c], 0xfa00
jmp 0x1004490c
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x15c], edx
push 0
mov eax, dword [ebp - 0x15c]
push eax
mov ecx, dword [ebp + 0x10]
add ecx, dword [ebp - 0x17c]
push ecx
mov edx, dword [ebp + 8]
push edx
call sub.WSOCK32.dll_send
mov dword [ebp - 0x164], eax
push 0x105a3eb0
lea eax, [ebp - 0x16c]
push eax
call fcn.10046a60
add esp, 8
mov ecx, dword [ebp + 0x18]
push ecx
push 0
push 0
lea edx, [ebp - 0x171]
push edx
push 1
mov eax, dword [ebp + 8]
push eax
call fcn.10044040
add esp, 0x18
mov ecx, 4
imul edx, ecx, 0
mov eax, dword [ebp + 0x18]
cmp dword [eax + edx + 0x28], 0
jle 0x10044989
mov ecx, dword [ebp + 0x18]
push ecx
push 0x83a
push 2
call fcn.1002ed90
add esp, 0xc
jmp 0x10044aa4
cmp dword [ebp - 0x164], 0
jle 0x100449ca
call fcn.10044f10
mov dword [ebp - 0x178], eax
mov edx, dword [ebp - 0x17c]
add edx, dword [ebp - 0x164]
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp + 0xc]
sub eax, dword [ebp - 0x164]
mov dword [ebp + 0xc], eax
mov dword [ebp - 0x160], 0
jmp 0x10044a70
cmp dword [ebp - 0x164], 0
jge 0x10044a22
cmp dword [ebp - 0x16c], 0
je 0x100449ee
cmp dword [ebp - 0x16c], 0xb
je 0x100449ee
cmp dword [ebp - 0x16c], 0x23
jne 0x100449f3
jmp 0x10044762
mov ecx, dword [ebp + 0x18]
push ecx
mov edx, dword [0x105a3eb0]
push edx
push 1
call fcn.1002ed90
add esp, 0xc
mov eax, dword [ebp + 0x18]
push eax
push 0x83a
push 2
call fcn.1002ed90
add esp, 0xc
jmp 0x10044aa4
cmp dword [ebp + 0x14], 0
jge 0x10044a70
mov ecx, dword [ebp - 0x160]
add ecx, 1
mov dword [ebp - 0x160], ecx
cmp dword [ebp - 0x160], 0xa
jne 0x10044a6b
mov edx, dword [ebp + 0x18]
push edx
mov eax, dword [0x105a3eb0]
push eax
push 1
call fcn.1002ed90
add esp, 0xc
mov ecx, dword [ebp + 0x18]
push ecx
push 0x837
push 2
call fcn.1002ed90
add esp, 0xc
jmp 0x10044aa4
jmp 0x10044762
jmp 0x10044762
cmp dword [ebp - 0x158], 0
jg 0x10044aa4
mov dword [ebp - 0x158], 0x3f9
mov edx, dword [ebp - 0x15c]
push edx
push str.Number_of_bytes_written___d
lea eax, [ebp - 0x104]
push eax
call dword [sym.imp.MSVCR120.dll_sprintf]
add esp, 0xc
mov ecx, 4
imul edx, ecx, 0
mov eax, dword [ebp + 0x18]
cmp dword [eax + edx + 0x28], 0
jle 0x10044ae9
cmp dword [ebp - 0x158], 0
jg 0x10044ae9
mov dword [ebp - 0x158], 0x3f4
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp - 0x15c]
push edx
push str.Socket_send_failure__requested_write_size___d_number_of_unwritten_bytes___d
lea eax, [ebp - 0x104]
push eax
call dword [sym.imp.MSVCR120.dll_sprintf]
add esp, 0x10
cmp dword [ebp - 0x158], 0
jle 0x10044b2f
lea ecx, [ebp - 0x154]
push ecx
mov edx, dword [ebp + 0x18]
push edx
lea eax, [ebp - 0x104]
push eax
mov ecx, dword [ebp - 0x190]
push ecx
mov edx, dword [ebp - 0x188]
push edx
mov eax, dword [ebp - 0x184]
push eax
mov ecx, dword [ebp - 0x170]
push ecx
mov edx, dword [ebp - 0x158]
push edx
call fcn.1001d030
add esp, 0x20
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10059cde
mov esp, ebp
pop ebp
ret