Function at 0x140066c70
Capabilities:
Receive data
Receive data on socket

Disassembly:
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x130
lea rdi, [rsp + 0x30]
mov ecx, 0x40
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x140]
mov rax, qword [0x1400dd4e0]
xor rax, rsp
mov qword [rsp + 0x128], rax
mov dword [rsp + 0xe4], 0
mov rax, qword [rsp + 0x140]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0xe8]
mov rax, qword [rax + 0x5d0]
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x140]
add rax, 0xe8
mov qword [rsp + 0xf8], rax
mov dword [rsp + 0xd4], 0x80
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x144]
add eax, 4
lea rcx, [rsp + 0xd4]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
mov r8d, eax
mov rax, qword [rsp + 0xf0]
mov rdx, qword [rax + 0x150]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax + 0x18]
call qword [sym.imp.WS2_32.dll_recvfrom]
mov rcx, qword [rsp + 0xf0]
mov dword [rcx + 0x13c], eax
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x138], 0
jne 0x140066da6
movsxd rax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0xf0]
add rcx, 0xb8
mov r8, rax
lea rdx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0xf0]
mov ecx, dword [rsp + 0xd4]
mov dword [rax + 0x138], ecx
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x13c], 4
jge 0x140066ddf
lea rdx, str.Received_too_short_packet
mov rcx, qword [rsp + 0x140]
call fcn.140034870
mov rax, qword [rsp + 0xf0]
mov dword [rax + 0xc], 7
jmp 0x1400670a7
mov rax, qword [rsp + 0xf0]
add rax, 0x150
mov rcx, rax
call fcn.140065dc0
mov word [rsp + 0x100], ax
movzx eax, word [rsp + 0x100]
mov rcx, qword [rsp + 0xf0]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x120], eax
mov eax, dword [rsp + 0x120]
dec eax
mov dword [rsp + 0x120], eax
cmp dword [rsp + 0x120], 5
ja case.0x140066e59.1
movsxd rax, dword [rsp + 0x120]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0x670dc]
add rax, rcx
jmp rax
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x13c], 4
jle 0x140066f64
mov rax, qword [rsp + 0xf0]
movzx eax, word [rax + 0x14c]
inc eax
and eax, 0xffff
mov dword [rsp + 0x124], eax
mov rcx, qword [rsp + 0xf0]
add rcx, 0x150
call fcn.140065e00
movzx eax, ax
mov ecx, dword [rsp + 0x124]
cmp ecx, eax
jne 0x140066f64
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x13c]
sub eax, 4
cdqe
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x150]
add rcx, 4
mov r9, rax
mov r8, rcx
mov edx, 1
mov rcx, qword [rsp + 0x140]
call fcn.140034b40
mov dword [rsp + 0xe4], eax
cmp dword [rsp + 0xe4], 0
je 0x140066f20
mov edx, 5
mov rcx, qword [rsp + 0xf0]
call fcn.140066b80
mov eax, dword [rsp + 0xe4]
jmp 0x1400670ae
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x13c]
sub eax, 4
cdqe
mov rcx, qword [rsp + 0xf8]
add rax, qword [rcx + 0x10]
mov rcx, qword [rsp + 0xf8]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0xf8]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rsp + 0x140]
call fcn.1400542b0
jmp 0x14006707d
mov rax, qword [rsp + 0xf0]
add rax, 0x150
mov rcx, rax
call fcn.140065e00
mov word [rsp + 0x104], ax
mov rax, qword [rsp + 0xf0]
mov rax, qword [rax + 0x150]
add rax, 4
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x13c]
sub eax, 4
cdqe
mov qword [rsp + 0x110], rax
movzx eax, word [rsp + 0x104]
mov rcx, qword [rsp + 0xf0]
mov dword [rcx + 8], eax
mov rdx, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x108]
call fcn.140065e40
cmp rax, qword [rsp + 0x110]
jae 0x14006700b
mov r8, qword [rsp + 0x108]
lea rdx, str.TFTP_error:__s
mov rcx, qword [rsp + 0x140]
call fcn.140034730
jmp 0x14006707d
jmp 0x14006707d
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x13c]
sub eax, 2
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x150]
add rcx, 2
mov r8d, eax
mov rdx, rcx
mov rcx, qword [rsp + 0xf0]
call fcn.140065f90
mov dword [rsp + 0xe4], eax
cmp dword [rsp + 0xe4], 0
je 0x140067060
mov eax, dword [rsp + 0xe4]
jmp 0x1400670ae
jmp 0x14006707d
lea r8, str.Internal_error:_Unexpected_packet
lea rdx, [0x1400d700c]
mov rcx, qword [rsp + 0x140]
call fcn.140034870
mov rcx, qword [rsp + 0x140]
call fcn.140054470
test eax, eax
je 0x1400670a7
mov edx, 5
mov rcx, qword [rsp + 0xf0]
call fcn.140066b80
mov eax, Ordinal_46
jmp 0x1400670ae
mov eax, dword [rsp + 0xe4]
mov rdi, rax
mov rcx, rsp
lea rdx, reloc.WS2_32.dll_bind
call fcn.1400aeeb0
mov rax, rdi
mov rcx, qword [rsp + 0x128]
xor rcx, rsp
call fcn.1400ae6f0
add rsp, 0x130
pop rdi
ret