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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
push ebx
push esi
push edi
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x10]
mov edx, dword [ecx]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x10]
sub ecx, 3
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], 4
ja case.0x4333f0.1
mov edx, dword [ebp - 0x10]
jmp dword [edx*4 + 0x433784]
mov eax, dword [ebp + 8]
add eax, 0x14c
push eax
call fcn.004337e0
add esp, 4
and eax, 0xffff
mov dword [ebp - 8], eax
mov ecx, dword [ebp + 8]
xor edx, edx
mov dx, word [ecx + 0x30]
add edx, 1
and edx, 0xffff
cmp edx, dword [ebp - 8]
jne 0x433433
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
xor edx, edx
mov dx, word [ecx + 0x30]
cmp edx, dword [ebp - 8]
jne 0x433458
mov eax, dword [ebp - 8]
push eax
push str.Received_last_DATA_packet_block__d_again._n
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.00418a50
add esp, 0xc
jmp fcn.00433484
mov edx, dword [ebp + 8]
xor eax, eax
mov ax, word [edx + 0x30]
add eax, 1
and eax, 0xffff
push eax
mov ecx, dword [ebp - 8]
push ecx
push str.Received_unexpected_DATA_packet_block__d__expecting_block__d_n
mov edx, dword [ebp - 0xc]
push edx
call fcn.00418a50
add esp, 0x10
jmp fcn.0043377b
mov ecx, dword [ebp + 8]
mov word [ecx + 0x30], 0
mov edx, dword [ebp + 8]
mov dword [edx + 0x18], 0
push 4
mov eax, dword [ebp + 8]
add eax, 0x150
push eax
call fcn.00433240
add esp, 8
mov ecx, dword [ebp + 8]
mov dx, word [ecx + 0x30]
push edx
mov eax, dword [ebp + 8]
add eax, 0x150
push eax
call fcn.004337a0
add esp, 8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x138]
push edx
mov eax, dword [ebp + 8]
add eax, 0xb8
push eax
push 0
push 4
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x150]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x14]
push ecx
call dword [sym.imp.WS2_32.dll_sendto]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jge 0x43360f
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x10]
push eax
call fcn.004205c0
add esp, 8
push eax
push 0x45e580
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.00418ad0
add esp, 0xc
mov eax, 0x37
jmp fcn.0043377d
mov edx, dword [ebp + 8]
mov dword [edx], 1
mov eax, dword [ebp + 8]
add eax, 0x2c
push eax
call dword [sym.imp.MSVCR100.dll__time32]
add esp, 4
jmp fcn.0043377b
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x18]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], edx
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x18]
push edx
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cx, word [eax + 0x30]
add ecx, 1
and ecx, 0xffff
push ecx
push str.Timeout_waiting_for_block__d_ACK.__Retries___d_n
mov edx, dword [ebp - 0xc]
push edx
call fcn.00418a50
add esp, 0x10
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x18]
cmp edx, dword [ecx + 0x20]
jle 0x43368a
mov eax, dword [ebp + 8]
mov dword [eax + 8], 0xffffff9d
mov ecx, dword [ebp + 8]
mov dword [ecx], 3
jmp 0x4336f4
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x138]
push eax
mov ecx, dword [ebp + 8]
add ecx, 0xb8
push ecx
push 0
push 4
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x150]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x14]
push edx
call dword [sym.imp.WS2_32.dll_sendto]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jge 0x4336f4
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x10]
push ecx
call fcn.004205c0
add esp, 8
push eax
push 0x45e580
mov edx, dword [ebp - 0xc]
push edx
call fcn.00418ad0
add esp, 0xc
mov eax, 0x37
jmp fcn.0043377d
jmp fcn.0043377b
push 5
mov eax, dword [ebp + 8]
add eax, 0x150
push eax
call fcn.00433240
add esp, 8
mov ecx, dword [ebp + 8]
mov dx, word [ecx + 0x30]
push edx
mov eax, dword [ebp + 8]
add eax, 0x150
push eax
call fcn.004337a0
add esp, 8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x138]
push edx
mov eax, dword [ebp + 8]
add eax, 0xb8
push eax
push 0
push 4
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x150]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x14]
push ecx
call dword [sym.imp.WS2_32.dll_sendto]
mov edx, dword [ebp + 8]
mov dword [edx], 3
jmp fcn.0043377b
push str.tftp_rx:_internal_error
push 0x45e580
mov eax, dword [ebp - 0xc]
push eax
call fcn.00418ad0
add esp, 0xc
mov eax, 0x47
jmp fcn.0043377d