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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
mov eax, dword [0x4f9b3c]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
mov ebx, ecx
mov eax, dword [ebx + 0x10]
push esi
mov esi, dword [eax]
xor edx, edx
push edi
mov dword [ebp - 0x54], str.octet
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x50], edx
cmp dword [esi + 0x2ec], edx
je 0x41c0b7
mov dword [ebp - 0x54], str.netascii
mov eax, dword [ebp + 8]
sub eax, edx
push 3
pop ecx
je 0x41c110
sub eax, ecx
je 0x41c106
dec eax
je 0x41c102
dec eax
je 0x41c0fb
dec eax
je 0x41c0e2
dec eax
je 0x41c110
push str.tftp_send_first:_internal_error
push esi
call fcn.0040ec0a
pop ecx
jmp 0x41c30a
push 6
cmp dword [esi + 0x324], edx
je 0x41c107
mov eax, ebx
call fcn.0041c00b
mov dword [ebp - 0x50], eax
jmp 0x41c30a
mov dword [ebx], ecx
jmp 0x41c30b
push 4
jmp 0x41c0ec
push ecx
mov esi, ebx
call fcn.0041c045
jmp 0x41c0f3
inc dword [ebx + 0x18]
mov eax, dword [ebx + 0x18]
cmp eax, dword [ebx + 0x20]
jle 0x41c12b
mov dword [ebx + 8], 0xffffff9e
mov dword [ebx], ecx
xor eax, eax
jmp 0x41c30e
lea edi, [ebx + 0x160]
mov eax, edi
cmp dword [esi + 0x324], edx
je 0x41c175
push 2
pop ecx
call fcn.0041bd7d
mov eax, dword [edi]
mov ecx, dword [ebx + 0x10]
mov ecx, dword [ecx]
add eax, 4
mov dword [ecx + 0x114], eax
mov eax, dword [esi + 0x86e8]
mov ecx, dword [esi + 0x86ec]
mov edx, eax
and edx, ecx
cmp edx, 0xffffffff
je 0x41c17d
push ecx
push eax
mov eax, esi
call fcn.00416bc6
pop ecx
pop ecx
jmp 0x41c17d
xor ecx, ecx
inc ecx
call fcn.0041bd7d
mov eax, dword [ebx + 0x10]
mov eax, dword [eax]
mov ecx, dword [eax + 0x86b8]
push 0
inc ecx
xor esi, esi
call fcn.004209da
mov esi, eax
pop ecx
mov dword [ebp - 0x5c], esi
test esi, esi
jne 0x41c1a4
push 0x1b
pop eax
jmp 0x41c30e
mov eax, dword [edi]
push 0
push dword [ebp - 0x54]
add eax, 2
push 0
push esi
push str._s_c_s_c
push dword [ebx + 0x154]
push eax
call fcn.004193e0
add esp, 0x1c
push esi
call fcn.00493670
pop ecx
push dword [ebp - 0x54]
mov esi, eax
call fcn.00493670
lea esi, [esi + eax + 4]
mov eax, dword [ebp - 0x58]
cmp dword [eax + 0x324], 0
pop ecx
je 0x41c213
mov ecx, dword [eax + 0x86e8]
mov eax, dword [eax + 0x86ec]
mov edx, ecx
and edx, eax
cmp edx, 0xffffffff
je 0x41c213
push eax
push ecx
push str._I64d
lea eax, [ebp - 0x4c]
push 0x40
push eax
call fcn.004193e0
add esp, 0x14
jmp 0x41c223
lea eax, [ebp - 0x4c]
push 0x4e0f34
push eax
call fcn.00498b20
pop ecx
pop ecx
mov eax, dword [edi]
push str.tsize
add eax, esi
push eax
push esi
push ebx
call fcn.0041bfd0
add esi, eax
lea eax, [ebp - 0x4c]
push eax
mov eax, dword [edi]
add eax, esi
push eax
push esi
push ebx
call fcn.0041bfd0
push dword [ebx + 0x158]
add esi, eax
push 0x4de62c
lea eax, [ebp - 0x4c]
push 0x40
push eax
call fcn.004193e0
mov eax, dword [edi]
push str.blksize
add eax, esi
push eax
push esi
push ebx
call fcn.0041bfd0
add esi, eax
add esp, 0x40
lea eax, [ebp - 0x4c]
push eax
mov eax, dword [edi]
add eax, esi
push eax
push esi
push ebx
call fcn.0041bfd0
push dword [ebx + 0x1c]
add esi, eax
push 0x4de62c
lea eax, [ebp - 0x4c]
push 0x40
push eax
call fcn.004193e0
mov eax, dword [edi]
push str.timeout
add eax, esi
push eax
push esi
push ebx
call fcn.0041bfd0
add esi, eax
lea eax, [ebp - 0x4c]
push eax
mov eax, dword [edi]
add eax, esi
push eax
push esi
push ebx
call fcn.0041bfd0
add esp, 0x40
add esi, eax
mov eax, dword [ebx + 0x10]
mov eax, dword [eax + 0x4c]
push dword [eax + 0x10]
push dword [eax + 0x18]
push 0
push esi
push dword [edi]
push dword [ebx + 0x14]
call dword [sym.imp.WS2_32.dll_sendto]
cmp eax, esi
je 0x41c301
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push dword [ebx + 0x10]
mov ebx, eax
call fcn.00428f6a
pop ecx
push eax
push 0x4de6ac
push dword [ebp - 0x58]
call fcn.0040ec0a
add esp, 0xc
push dword [ebp - 0x5c]
call dword [0x4fb068]
pop ecx
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004927bf
leave
ret