Function at 0x1401d34a0
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x30
mov rdi, r9
mov r12, rdx
mov rsi, rcx
test rcx, rcx
je 0x1401d34fa
mov rbx, qword [rsp + 0x80]
test r8d, r8d
mov r14d, 0x7d0
mov qword [rsp + 0x20], rbx
cmovne r14d, r8d
mov r8d, r14d
call fcn.1401d3cf0
test al, al
jne 0x1401d3513
mov rax, qword [rbx]
lea rdx, str.1st_UDP_send_for_nameserver_1_failed.
mov rcx, rbx
call qword [rax + 0x28]
xor al, al
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
mov rdx, rbx
mov rcx, rdi
call fcn.1401034b0
test al, al
jne 0x1401d34fa
call sub.KERNEL32.dll_GetTickCount
mov r9d, 0x5dc
mov qword [rsp + 0x28], rbx
lea r8, [rsp + 0x60]
mov dword [rsp + 0x60], 0xffffffff
mov rdx, rsi
mov qword [rsp + 0x20], rdi
mov ecx, 1
mov r15d, eax
call fcn.1401d3e40
test al, al
jne 0x1401d3775
cmp byte [rdi + 0x29], al
jne 0x1401d34fa
cmp byte [rdi + 0x2a], al
jne 0x1401d34fa
call sub.KERNEL32.dll_GetTickCount
cmp eax, r15d
mov ecx, r14d
cmovb r15d, eax
xor ebp, ebp
sub eax, r15d
sub ecx, eax
cmp eax, r14d
cmovb ebp, ecx
test ebp, ebp
jne 0x1401d3595
mov rax, qword [rbx]
lea rdx, str.DNS_timeout.
jmp 0x1401d34f4
mov r9, rdi
mov qword [rsp + 0x20], rbx
mov r8d, r14d
mov rdx, r12
mov rcx, rsi
call fcn.1401d3cf0
test al, al
jne 0x1401d35be
mov rax, qword [rbx]
lea rdx, str.2nd_UDP_send_for_nameserver_1_failed.
jmp 0x1401d34f4
mov rdx, rbx
mov rcx, rdi
call fcn.1401034b0
test al, al
jne 0x1401d34fa
cmp ebp, 0x7d0
jbe 0x1401d3681
mov qword [rsp + 0x28], rbx
lea r8, [rsp + 0x60]
mov r9d, 0x7d0
mov qword [rsp + 0x20], rdi
mov rdx, rsi
mov dword [rsp + 0x60], 0xffffffff
mov ecx, 1
call fcn.1401d3e40
test al, al
jne 0x1401d3775
cmp byte [rdi + 0x29], al
jne 0x1401d34fa
cmp byte [rdi + 0x2a], al
jne 0x1401d34fa
call sub.KERNEL32.dll_GetTickCount
cmp eax, r15d
mov edx, ebp
mov ecx, ebp
cmovb r15d, eax
xor ebp, ebp
sub eax, r15d
sub edx, eax
cmp eax, ecx
cmovb ebp, edx
test ebp, ebp
je 0x1401d3586
mov r9, rdi
mov qword [rsp + 0x20], rbx
mov r8d, r14d
mov rdx, r12
mov rcx, rsi
call fcn.1401d3cf0
test al, al
jne 0x1401d366e
mov rax, qword [rbx]
lea rdx, str.3rd_UDP_send_for_nameserver_1_failed.
jmp 0x1401d34f4
mov rdx, rbx
mov rcx, rdi
call fcn.1401034b0
test al, al
jne 0x1401d34fa
cmp ebp, 0x3e8
jbe 0x1401d3731
mov qword [rsp + 0x28], rbx
lea r8, [rsp + 0x60]
mov r9d, 0x3e8
mov qword [rsp + 0x20], rdi
mov rdx, rsi
mov dword [rsp + 0x60], 0xffffffff
mov ecx, 1
call fcn.1401d3e40
test al, al
jne 0x1401d3775
cmp byte [rdi + 0x29], al
jne 0x1401d34fa
cmp byte [rdi + 0x2a], al
jne 0x1401d34fa
call sub.KERNEL32.dll_GetTickCount
cmp eax, r15d
mov edx, ebp
mov ecx, ebp
cmovb r15d, eax
xor ebp, ebp
sub eax, r15d
sub edx, eax
cmp eax, ecx
cmovb ebp, edx
test ebp, ebp
je 0x1401d3586
mov r9, rdi
mov qword [rsp + 0x20], rbx
mov r8d, r14d
mov rdx, r12
mov rcx, rsi
call fcn.1401d3cf0
test al, al
jne 0x1401d371e
mov rax, qword [rbx]
lea rdx, str.4th_UDP_send_for_nameserver_1_failed.
jmp 0x1401d34f4
mov rdx, rbx
mov rcx, rdi
call fcn.1401034b0
test al, al
jne 0x1401d34fa
mov qword [rsp + 0x28], rbx
lea r8, [rsp + 0x60]
mov r9d, ebp
mov qword [rsp + 0x20], rdi
mov rdx, rsi
mov ecx, 1
call fcn.1401d3e40
test al, al
jne 0x1401d3775
cmp byte [rdi + 0x29], al
jne 0x1401d34fa
cmp byte [rdi + 0x2a], al
jne 0x1401d34fa
mov rax, qword [rbx]
lea rdx, str.Waited__but_no_data_ready_on_UDP_socket.
jmp 0x1401d34f4
mov al, 1
jmp 0x1401d34fc