Function at 0x1401bd140
Capabilities:
Resolve dns

Disassembly:
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xa0
mov qword [rbp - 0x49], 0xfffffffffffffffe
mov qword [rsp + 0xf0], rbx
mov rsi, r9
mov r15, rcx
lea rdx, [rbp - 0x41]
mov rcx, qword [rcx + 8]
call fcn.1400fd690
nop
mov r11, qword [rbp - 0x41]
cmp dword [rbp - 0x35], 0
jne 0x1401bd191
xor bl, bl
jmp 0x1401bd533
lea r14, [r15 + 0xb0]
mov rax, qword [r14]
mov r9, qword [rax + 8]
mov rbx, rax
cmp byte [r9 + 0x19], 0
jne 0x1401bd1ee
nop dword [rax]
mov rcx, qword [r9 + 0x20]
mov r10, r11
sub r10, rcx
nop word [rax + rax]
movzx r8d, word [rcx]
movzx edx, word [rcx + r10]
sub r8d, edx
jne 0x1401bd1d6
add rcx, 2
test edx, edx
jne 0x1401bd1c0
test r8d, r8d
jns 0x1401bd1e1
mov r9, qword [r9 + 0x10]
jmp 0x1401bd1e7
mov rbx, r9
mov r9, qword [r9]
cmp byte [r9 + 0x19], 0
je 0x1401bd1b0
cmp rbx, rax
je 0x1401bd21f
mov rcx, r11
mov r9, qword [rbx + 0x20]
sub r9, r11
nop dword [rax]
movzx r8d, word [rcx]
movzx edx, word [rcx + r9]
sub r8d, edx
jne 0x1401bd216
add rcx, 2
test edx, edx
jne 0x1401bd200
test r8d, r8d
mov qword [rbp + 0x67], rbx
jns 0x1401bd223
mov qword [rbp + 0x67], rax
lea rax, [rbp + 0x67]
mov rax, qword [rax]
cmp rax, qword [r14]
je 0x1401bd23c
movzx ecx, byte [rax + 0x30]
mov byte [rsi], cl
mov bl, 1
jmp 0x1401bd533
lea r13, [0x140323de0]
mov qword [rbp - 0x21], r13
xor r12d, r12d
mov qword [rbp - 0x19], r12
mov qword [rbp - 0x11], r13
mov qword [rbp - 9], r12
lea edx, [r12 + 0x2e]
mov rcx, r11
call fcn.14029b070
mov rdi, rax
test rax, rax
je 0x1401bd3a4
sub rdi, qword [rbp - 0x41]
sar rdi, 1
test edi, edi
js 0x1401bd3a4
mov r9d, edi
xor r8d, r8d
lea rdx, [rbp - 1]
lea rcx, [rbp - 0x41]
call fcn.1401eb1b0
mov rbx, rax
mov edx, dword [rax + 0xc]
lea rcx, [rbp - 0x21]
call fcn.1401e9030
movsxd r9, dword [rbx + 0xc]
mov eax, dword [rbp - 0x19]
inc eax
movsxd rdx, eax
mov r8, qword [rbx]
mov rcx, qword [rbp - 0x21]
call fcn.14029b4d8
mov edx, dword [rbx + 0xc]
lea rcx, [rbp - 0x21]
call fcn.1401ea290
nop
cmp dword [rbp + 7], r12d
jle 0x1401bd2d4
mov rcx, qword [rbp - 1]
call fcn.140298600
lea r8d, [rdi + 1]
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 0x41]
call fcn.1401eaef0
mov rbx, rax
mov edx, dword [rax + 0xc]
lea rcx, [rbp - 0x11]
call fcn.1401e9030
movsxd r9, dword [rbx + 0xc]
mov eax, dword [rbp - 9]
inc eax
movsxd rdx, eax
mov r8, qword [rbx]
mov rcx, qword [rbp - 0x11]
call fcn.14029b4d8
mov edx, dword [rbx + 0xc]
lea rcx, [rbp - 0x11]
call fcn.1401ea290
nop
cmp dword [rbp + 0x1f], 0
jle 0x1401bd328
mov rcx, qword [rbp + 0x17]
call fcn.140298600
mov ebx, r12d
lea rdi, str.microsoft
mov r8d, 1
mov rdx, qword [rdi]
lea rcx, [rbp - 0x21]
call fcn.1401e9310
test al, al
jne 0x1401bd359
inc ebx
add rdi, 8
movsxd rax, ebx
cmp rax, 4
jb 0x1401bd332
jmp 0x1401bd3a4
mov byte [rsi], 0
mov r8, rsi
lea rdx, [rbp - 0x41]
lea rcx, [rbp - 1]
call fcn.1401bda20
nop
mov rdx, rax
mov rcx, r14
call fcn.1401bdc40
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x17]
mov rcx, r14
call fcn.14011c120
nop
cmp dword [rbp + 7], 0
jle 0x1401bd39d
mov rcx, qword [rbp - 1]
call fcn.140298600
mov bl, 1
jmp 0x1401bd510
mov byte [rsi], 0
mov qword [rbp - 0x29], r12
mov edx, dword [rbp - 0x35]
test edx, edx
jne 0x1401bd3b8
mov qword [rbp - 0x31], r13
jmp 0x1401bd3dd
lea rcx, [rbp - 0x31]
call fcn.1401e9030
movsxd r9, dword [rbp - 0x35]
mov eax, dword [rbp - 0x29]
inc eax
movsxd rdx, eax
mov r8, qword [rbp - 0x41]
mov rcx, qword [rbp - 0x31]
call fcn.14029b4d8
mov edx, dword [rbp - 0x35]
lea rcx, [rbp - 0x31]
call fcn.1401ea290
nop
lea rdx, str..multi.surbl.org
lea rcx, [rbp - 0x31]
call fcn.1401e7680
mov rdx, qword [rbp - 0x31]
lea rcx, str.Lookup:__ws_r_n
call fcn.140298d38
mov qword [rbp + 0x6f], r12
mov edx, 1
mov qword [rsp + 0x28], r12
lea rax, [rbp + 0x6f]
mov qword [rsp + 0x20], rax
mov r9, qword [r15 + 0xa8]
mov r8d, 0x1000
mov rcx, qword [rbp - 0x31]
call qword [sym.imp.DNSAPI.dll_DnsQuery_W]
test eax, eax
jne 0x1401bd4bd
mov rbx, qword [rbp + 0x6f]
test rbx, rbx
je 0x1401bd4af
mov eax, dword [rbx + 0x14]
and al, 3
cmp al, 1
jne 0x1401bd467
cmp word [rbx + 0x10], 1
jne 0x1401bd467
mov ecx, dword [rbx + 0x20]
call qword [sym.imp.WS2_32.dll_inet_ntoa]
mov rdi, rax
test rax, rax
jne 0x1401bd471
mov rbx, qword [rbx]
test rbx, rbx
je 0x1401bd4ab
jmp 0x1401bd446
mov r8d, 4
lea rdx, str.127.
mov rcx, rax
call fcn.14029d580
test eax, eax
jne 0x1401bd4ab
lea edx, [rax + 0x2e]
mov rcx, rdi
call fcn.14029d248
test rax, rax
je 0x1401bd4ab
lea rcx, [rax + 1]
call fcn.14029bc3c
cmp eax, 8
jne 0x1401bd4ab
mov byte [rsi], 1
mov rbx, qword [rbp + 0x6f]
mov edx, 1
mov rcx, rbx
call qword [sym.imp.DNSAPI.dll_DnsRecordListFree]
mov r8, rsi
lea rdx, [rbp - 0x41]
lea rcx, [rbp - 1]
call fcn.1401bda20
nop
mov rdx, rax
mov rcx, r14
call fcn.1401bdc40
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x17]
mov rcx, r14
call fcn.14011c120
nop
cmp dword [rbp + 7], 0
jle 0x1401bd4fe
mov rcx, qword [rbp - 1]
call fcn.140298600
mov bl, 1
cmp dword [rbp - 0x29], 0
jle 0x1401bd510
mov rcx, qword [rbp - 0x31]
call fcn.140298600
nop
cmp dword [rbp - 9], 0
jle 0x1401bd520
mov rcx, qword [rbp - 0x11]
call fcn.140298600
nop
cmp dword [rbp - 0x19], 0
jle 0x1401bd52f
mov rcx, qword [rbp - 0x21]
call fcn.140298600
mov r11, qword [rbp - 0x41]
cmp dword [rbp - 0x39], 0
jle 0x1401bd541
mov rcx, r11
call fcn.140298600
movzx eax, bl
mov rbx, qword [rsp + 0xf0]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret