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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x80c
push ebx
mov ebx, dword [ebp + 8]
xor ecx, ecx
cmp ebx, ecx
push esi
push edi
mov dword [esp + 0x810], ecx
jne 0x717969
mov eax, dword [0x8692e0]
mov dword [ebp + 8], eax
mov ebx, eax
mov edi, dword [ebp + 0xc]
mov al, byte [edi]
cmp al, 0x3b
jne 0x717995
mov ebx, dword [ebx + 0xdc]
cmp ebx, ecx
je case.0x717a25.3
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
push ecx
push edx
push edi
call ebx
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp al, 0x5c
jne 0x7179c6
lea esi, [esp + 0x10]
mov edi, ebx
call fcn.00717800
mov eax, dword [ebp + 0x14]
mov ecx, dword [esp + 0x810]
push 0x10
push eax
mov eax, dword [ebx]
push 0
push ecx
mov edx, esi
push edx
push eax
call sub.WS2_32.dll_sendto
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x10]
cmp esi, 7
jl case.0x717a25.3
cmp al, 0xfe
jne case.0x717a25.3
cmp byte [edi + 1], 0xfd
jne case.0x717a25.3
cmp dword [ebx + 0xb8], ecx
jle 0x7179f2
mov dword [ebx + 0xb8], ecx
mov al, byte [edi + 2]
mov edx, dword [edi + 3]
mov byte [esp + 0x10], al
movsx eax, al
sub esi, 7
cmp eax, 6
mov dword [esp + 0x11], edx
lea ecx, [edi + 7]
mov edx, 5
mov dword [esp + 0xc], ecx
mov dword [ebp + 0x10], esi
mov dword [esp + 0x810], edx
ja case.0x717a25.3
jmp dword [eax*4 + 0x717b98]
lea eax, [esp + 0x10]
push eax
push ebx
mov edx, esi
call fcn.007174c0
jmp 0x717b71
cmp dword [ebx + 0xa8], 0
je 0x717a5a
cmp esi, 0xd
jl 0x717a5a
lea edx, [ecx + esi - 0xd]
mov esi, ebx
call fcn.00717170
mov esi, dword [ebp + 0x10]
mov eax, dword [esp + 0xc]
push ebx
mov ebx, esi
lea edi, [esp + 0x14]
call fcn.007170d0
mov ebx, dword [ebp + 8]
add esp, 4
jmp 0x717b74
cmp esi, 0x20
jle 0x717a84
mov dword [ebp + 0x10], 0x20
mov esi, dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
mov ecx, esi
mov esi, dword [esp + 0xc]
mov byte [esp + 0x10], dl
mov edx, ecx
shr ecx, 2
lea edi, [esp + 0x15]
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
add dword [esp + 0x810], eax
jmp 0x717b74
cmp dword [ebx + 0xb8], 0xffffffff
je case.0x717a25.3
xor eax, eax
mov edi, edi
mov dl, byte [eax + edi + 3]
cmp dl, byte [ebx + eax + 0x84]
jne case.0x717a25.3
add eax, 1
cmp eax, 4
jl 0x717ac0
cmp esi, 2
jl case.0x717a25.3
add ecx, 1
push ecx
mov dword [ebx + 0xb8], 0xffffffff
call fcn.00716d00
mov ecx, dword [esp + 0x10]
movsx edx, byte [ecx]
mov edi, eax
mov eax, dword [ebx + 0x114]
push eax
push edi
push edx
call dword [ebx + 0x9c]
push edi
call fcn.0071ec2a
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
nop
mov dl, byte [eax + edi + 3]
cmp dl, byte [ebx + eax + 0x84]
jne case.0x717a25.3
add eax, 1
cmp eax, 4
jl 0x717b20
cmp esi, 4
jl case.0x717a25.3
mov edi, dword [ecx]
mov esi, ebx
mov byte [esp + 0x10], 7
mov dword [esp + 0x15], edi
mov dword [esp + 0x810], 9
call fcn.00717900
test eax, eax
jne 0x717b74
mov eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0xc]
add eax, 0xfffffffc
push eax
add ecx, 4
push ecx
mov edi, ebx
call fcn.00717840
add esp, 8
mov edx, dword [ebp + 0x14]
mov eax, dword [esp + 0x810]
push 0x10
push edx
mov edx, dword [ebx]
push 0
push eax
lea ecx, [esp + 0x20]
push ecx
push edx
call sub.WS2_32.dll_sendto
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret