Function at 0x14001b2d0
Capabilities:
Reference cloudflare dns server

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov rax, qword [0x140063030]
xor rax, rsp
mov qword [rbp + 0x40], rax
mov rsi, r8
mov r14d, edx
mov rdi, rcx
mov qword [rsp + 0x48], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
xor r12d, r12d
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
lea ecx, [r12 + 0x48]
call fcn.140024544
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x70], r12
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 0xf
mov byte [rsp + 0x70], r12b
lea edx, [r12 + 0x28]
lea rcx, [rbp + 0x20]
call fcn.1400140c0
mov rbx, rax
mov dword [rsp + 0x50], 6
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], 1
lea ecx, [r12 + 0x20]
call fcn.140024544
mov qword [rax], r12
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov qword [rsp + 0x58], rax
cmp rax, rbx
je 0x14001b3c6
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x14001b3ba
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rax
call fcn.1400019f0
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.140008e30
nop
lea rcx, [rsp + 0x50]
call fcn.140006e70
lea rcx, [rbp - 0x70]
call fcn.14001af40
mov rbx, rax
mov dword [rsp + 0x50], 6
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], 1
mov ecx, 0x20
call fcn.140024544
mov qword [rax], r12
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov qword [rsp + 0x58], rax
cmp rax, rbx
je 0x14001b443
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x14001b437
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rax
call fcn.1400019f0
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.140008e30
nop
lea rcx, [rsp + 0x50]
call fcn.140006e70
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14001b499
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b494
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf02
call fcn.14002453c
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 0xf
mov byte [rbp - 0x70], 0
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x14001b4e4
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b4df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf08
call fcn.14002453c
mov edx, 0x29
lea rcx, [rbp + 0x20]
call fcn.1400140c0
mov rbx, rax
mov dword [rsp + 0x50], 6
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], 1
mov ecx, 0x20
call fcn.140024544
mov qword [rax], r12
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov qword [rsp + 0x58], rax
cmp rax, rbx
je 0x14001b54c
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x14001b540
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rax
call fcn.1400019f0
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.140008e30
nop
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], 6
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 0xf
mov byte [rbp - 0x70], 0
mov r8d, 7
lea rdx, [0x14005b360]
lea rcx, [rbp - 0x70]
call fcn.1400019f0
nop
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], 1
mov ecx, 0x20
call fcn.140024544
mov qword [rax], r12
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov qword [rsp + 0x58], rax
lea rcx, [rbp - 0x70]
cmp rax, rcx
je 0x14001b5ed
lea rdx, [rbp - 0x70]
cmp qword [rbp - 0x58], 0x10
cmovae rdx, qword [rbp - 0x70]
mov r8, qword [rbp - 0x60]
mov rcx, rax
call fcn.1400019f0
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14001b629
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b623
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf0e
call fcn.14002453c
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.140008e30
nop
lea rcx, [rsp + 0x50]
call fcn.140006e70
nop
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x14001b67f
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b67a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf14
call fcn.14002453c
mov edx, 0x2a
lea rcx, [rbp - 0x70]
call fcn.1400140c0
mov rbx, rax
mov dword [rsp + 0x50], 6
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], 1
mov ecx, 0x20
call fcn.140024544
mov qword [rax], r12
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov qword [rsp + 0x58], rax
cmp rax, rbx
je 0x14001b6e7
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x14001b6db
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rax
call fcn.1400019f0
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.140008e30
nop
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], 6
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], r12d
movd xmm0, r14d
cvtdq2pd xmm0, xmm0
movsd qword [rsp + 0x58], xmm0
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.140008e30
nop
lea rcx, [rsp + 0x50]
call fcn.140006e70
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14001b77d
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b778
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf1a
call fcn.14002453c
mov edx, 0x2b
lea rcx, [rbp - 0x70]
call fcn.1400140c0
mov rbx, rax
mov dword [rsp + 0x50], 6
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], 1
mov ecx, 0x20
call fcn.140024544
mov qword [rax], r12
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov qword [rsp + 0x58], rax
cmp rax, rbx
je 0x14001b7e5
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x14001b7d9
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rax
call fcn.1400019f0
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.140008e30
nop
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], 6
lea rcx, [rsp + 0x50]
call fcn.140006e70
mov dword [rsp + 0x50], 1
mov ecx, 0x20
call fcn.140024544
mov qword [rax], r12
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov qword [rsp + 0x58], rax
cmp rax, rsi
je 0x14001b856
mov r8, qword [rsi + 0x10]
cmp qword [rsi + 0x18], 0x10
jb 0x14001b84a
mov rsi, qword [rsi]
mov rdx, rsi
mov rcx, rax
call fcn.1400019f0
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.140008e30
nop
lea rcx, [rsp + 0x50]
call fcn.140006e70
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14001b8ac
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b8a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf20
call fcn.14002453c
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x60]
call fcn.140008920
nop
mov edx, dword [rbp - 0x40]
mov eax, edx
and eax, 0xf
mov esi, 0x10
sub esi, eax
add edx, 0x10
add esi, edx
mov ecx, esi
call fcn.140024e44
mov r15, rax
mov r8d, esi
xor edx, edx
mov rcx, rax
call fcn.140026e20
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x40], r15
mov edx, 0x23
lea rcx, [rbp + 0x20]
call fcn.1400145c0
nop
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x50]
mov rcx, rax
call fcn.14001a9e0
nop
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x14001b94b
mov rdx, qword [rbp + 0x30]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b946
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf26
call fcn.14002453c
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], rax
xorps xmm1, xmm1
movups xmmword [rbp + 0x20], xmm1
mov qword [rbp + 0x30], rax
mov dword [rsp + 0x28], esi
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x70]
call fcn.140015460
nop
mov rsi, qword [rbp + 0x28]
mov rbx, qword [rbp + 0x20]
sub rsi, rbx
cmp rsi, 0x20
jae 0x14001bb04
mov qword [rdi], r12
mov qword [rdi + 8], r12
mov ecx, 0x48
call fcn.140024544
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rdi], rax
mov qword [rdi + 0x10], r12
mov byte [rdi + 0x10], 0
mov qword [rdi + 0x28], 0xf
mov qword [rdi + 0x20], r12
test rbx, rbx
je 0x14001ba07
mov rdx, qword [rbp + 0x30]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x14001b9fe
mov rbx, qword [rbx - 8]
sub rax, rbx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf3e
mov rcx, rbx
call fcn.14002453c
nop
mov rcx, r15
call fcn.14002453c
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x14001ba4b
inc rdx
mov rcx, qword [rbp - 0x50]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14001ba46
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bef6
call fcn.14002453c
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], 0
lea rcx, [rsp + 0x60]
call fcn.140008f90
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x14001baa1
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ba9c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001befc
call fcn.14002453c
mov r8, qword [rsp + 0x60]
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 0xf
mov byte [rsp + 0x70], 0
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x60]
call fcn.14000df30
mov edx, 0x48
mov rcx, qword [rsp + 0x60]
call fcn.14002453c
mov rax, rdi
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.1400244f0
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
mov edx, 0x24
lea rcx, [rbp - 0x70]
call fcn.1400145c0
mov r8, rax
mov edx, esi
mov rcx, rbx
call fcn.14001a8c0
mov r14d, eax
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x14001bb5c
mov rdx, qword [rbp - 0x60]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001bb57
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf2c
call fcn.14002453c
test r14d, r14d
je 0x14001b994
mov qword [rbp], r12
mov rcx, r12
mov qword [rbp + 0x10], rcx
mov edx, 0xf
mov qword [rbp + 0x18], rdx
mov byte [rbp], cl
lea rsi, [rbx + 0x10]
movzx r9d, byte [rsi]
cmp rcx, rdx
jae 0x14001bba9
lea rax, [rcx + 1]
mov qword [rbp + 0x10], rax
lea rax, [rbp]
cmp rdx, 0x10
cmovae rax, qword [rbp]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14001bbb2
lea rcx, [rbp]
call fcn.140001580
add r14d, 0xffffffff
je 0x14001bbc5
inc rsi
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x10]
jmp 0x14001bb80
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], r12
mov ecx, 0x48
call fcn.140024544
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x20], r12
mov qword [rbp - 0x10], r12
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
lea rdx, [rbp]
lea rcx, [rbp - 0x30]
call fcn.140009060
mov qword [rdi], r12
mov qword [rdi + 8], r12
mov ecx, 0x48
test al, al
jne 0x14001bd25
call fcn.140024544
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rdi], rax
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x20], r12
mov qword [rdi + 0x28], 0xf
mov byte [rdi + 0x10], 0
lea rcx, [rbp - 0x30]
call fcn.140008f90
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x14001bca1
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001bc9c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf32
call fcn.14002453c
mov qword [rbp - 0x10], r12
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
mov r8, qword [rbp - 0x30]
mov r8, qword [r8 + 8]
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x30]
call fcn.14000df30
mov edx, 0x48
mov rcx, qword [rbp - 0x30]
call fcn.14002453c
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x14001bd10
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001bd0b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf38
call fcn.14002453c
mov qword [rbp + 0x10], r12
mov qword [rbp + 0x18], 0xf
mov byte [rbp], 0
jmp 0x14001b9cd
call fcn.140024544
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rdi], rax
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x20], r12
mov qword [rdi + 0x28], 0xf
mov byte [rdi + 0x10], 0
lea rdx, [rbp - 0x30]
mov rcx, rdi
call fcn.140008ba0
nop
lea rcx, [rbp - 0x30]
call fcn.140008f90
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x14001bda3
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001bd9e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf32
call fcn.14002453c
mov qword [rbp - 0x10], r12
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
mov r8, qword [rbp - 0x30]
mov r8, qword [r8 + 8]
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x30]
call fcn.14000df30
mov edx, 0x48
mov rcx, qword [rbp - 0x30]
call fcn.14002453c
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x14001be12
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001be0d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf38
call fcn.14002453c
mov qword [rbp + 0x10], r12
mov qword [rbp + 0x18], 0xf
mov byte [rbp], 0
test rbx, rbx
je 0x14001be5c
mov rdx, qword [rbp + 0x30]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x14001be53
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf3e
mov rcx, rbx
call fcn.14002453c
nop
mov rcx, r15
call fcn.14002453c
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x14001be9c
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001be97
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bef6
call fcn.14002453c
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], 0
lea rcx, [rsp + 0x60]
call fcn.140008f90
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x14001baa1
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ba9c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001befc
jmp 0x14001ba9c
call fcn.14002ae98
nop
call fcn.14002ae98
nop
call fcn.14002ae98
nop
call fcn.14002ae98
nop
call fcn.14002ae98
nop
call fcn.14002ae98
int3
call fcn.14002ae98
int3
call fcn.14002ae98
nop
call fcn.14002ae98
nop
call fcn.14002ae98
nop
call fcn.14002ae98
nop
call fcn.14002ae98
nop
call fcn.14002ae98
int3