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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
mov eax, dword [0x48dcc0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, ecx
mov eax, dword [esi + 0x10]
push edi
mov edi, dword [eax]
xor ebx, ebx
mov dword [ebp - 0x4c], str.octet
cmp dword [edi + 0x3bc], ebx
je 0x42923f
mov dword [ebp - 0x4c], str.netascii
mov eax, dword [ebp + 8]
sub eax, ebx
push 3
pop ecx
je 0x429295
sub eax, ecx
je 0x42928d
dec eax
je 0x429289
dec eax
je 0x429282
dec eax
je 0x42926a
dec eax
je 0x429295
push str.tftp_send_first:_internal_error
push edi
call fcn.0041acea
pop ecx
jmp 0x4294f4
push 6
cmp dword [edi + 0x3f4], ebx
je 0x42928e
mov eax, esi
call fcn.004291a6
mov ebx, eax
jmp 0x4294f4
mov dword [esi], ecx
jmp 0x4294f5
push 4
jmp 0x429274
push ecx
call fcn.004291dd
jmp 0x42927b
inc dword [esi + 0x18]
mov eax, dword [esi + 0x18]
cmp eax, dword [esi + 0x20]
jle 0x4292b0
mov dword [esi + 8], 0xffffff9e
mov dword [esi], ecx
xor eax, eax
jmp 0x4294f7
mov eax, dword [esi + 0x160]
cmp dword [edi + 0x3f4], ebx
mov byte [eax], bl
mov eax, dword [esi + 0x160]
je 0x429300
mov byte [eax + 1], 2
mov eax, dword [esi + 0x160]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
add eax, 4
mov dword [ecx + 0x150], eax
mov eax, dword [edi + 0x4af0]
mov ecx, dword [edi + 0x4af4]
mov edx, eax
and edx, ecx
cmp edx, 0xffffffff
je 0x429304
push ecx
push eax
push edi
call fcn.00422426
add esp, 0xc
jmp 0x429304
mov byte [eax + 1], 1
push ebx
push ebx
lea eax, [ebp - 0x48]
push eax
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
mov eax, dword [eax + 0x4ac0]
push ebx
inc eax
push eax
push edi
call fcn.00435a23
add esp, 0x18
mov dword [ebp - 0x54], eax
cmp eax, ebx
jne 0x4294f7
push dword [ebp - 0x4c]
call fcn.00451f40
mov ecx, dword [esi + 0x154]
push dword [ebp - 0x48]
sub ecx, eax
add ecx, 0xfffffffc
mov dword [ebp - 0x50], ecx
call fcn.00451f40
pop ecx
pop ecx
cmp eax, dword [ebp - 0x50]
jbe 0x429366
push str.TFTP_file_name_too_long_n
push edi
call fcn.0041acea
pop ecx
pop ecx
push 0x47
pop eax
jmp 0x4294f7
mov eax, dword [esi + 0x160]
push ebx
push dword [ebp - 0x4c]
inc eax
push ebx
push dword [ebp - 0x48]
inc eax
push str._s_c_s_c
push dword [esi + 0x154]
push eax
call fcn.0041eae2
push dword [ebp - 0x48]
call fcn.00451f40
push dword [ebp - 0x4c]
mov ebx, eax
call fcn.00451f40
add esp, 0x24
cmp dword [edi + 0x22c], 0
lea ebx, [ebx + eax + 4]
jne 0x4294a8
cmp dword [edi + 0x3f4], 0
je 0x4293e2
mov eax, dword [edi + 0x4af0]
mov ecx, dword [edi + 0x4af4]
mov edx, eax
and edx, ecx
cmp edx, 0xffffffff
je 0x4293e2
push ecx
push eax
push str._I64d
lea eax, [ebp - 0x44]
push 0x40
push eax
call fcn.0041eae2
add esp, 0x14
jmp 0x4293f2
lea eax, [ebp - 0x44]
push 0x470bc8
push eax
call fcn.004520a0
pop ecx
pop ecx
mov eax, dword [esi + 0x160]
push str.tsize
add eax, ebx
push eax
push ebx
push esi
call fcn.004288ec
add ebx, eax
lea eax, [ebp - 0x44]
push eax
mov eax, dword [esi + 0x160]
add eax, ebx
push eax
push ebx
push esi
call fcn.004288ec
push dword [esi + 0x158]
add ebx, eax
push 0x47b80c
lea eax, [ebp - 0x44]
push 0x40
push eax
call fcn.0041eae2
mov eax, dword [esi + 0x160]
push str.blksize
add eax, ebx
push eax
push ebx
push esi
call fcn.004288ec
add ebx, eax
add esp, 0x40
lea eax, [ebp - 0x44]
push eax
mov eax, dword [esi + 0x160]
add eax, ebx
push eax
push ebx
push esi
call fcn.004288ec
push dword [esi + 0x1c]
add ebx, eax
push 0x47b80c
lea eax, [ebp - 0x44]
push 0x40
push eax
call fcn.0041eae2
mov eax, dword [esi + 0x160]
push str.timeout
add eax, ebx
push eax
push ebx
push esi
call fcn.004288ec
add ebx, eax
lea eax, [ebp - 0x44]
push eax
mov eax, dword [esi + 0x160]
add eax, ebx
push eax
push ebx
push esi
call fcn.004288ec
add esp, 0x40
add ebx, eax
mov eax, dword [esi + 0x10]
mov eax, dword [eax + 0x54]
push dword [eax + 0x10]
push dword [eax + 0x18]
push 0
push ebx
push dword [esi + 0x160]
push dword [esi + 0x14]
call dword [sym.imp.WS2_32.dll_sendto]
cmp eax, ebx
je 0x4294e8
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push dword [esi + 0x10]
call fcn.0041fc3e
push eax
push 0x47ae54
push edi
call fcn.0041acea
add esp, 0x14
push dword [ebp - 0x48]
call dword [0x48d004]
mov ebx, dword [ebp - 0x54]
pop ecx
mov eax, ebx
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0044e6cf
leave
ret