Function at 0x14030f870
Capabilities:
Resolve dns

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xc0
xor ebx, ebx
mov r13, rcx
mov rsi, rdx
mov dword [rbp + 0x77], ebx
lea ecx, [rbx + 0x28]
call fcn.1404e17f4
lea edx, [rbx + 0xd]
mov r12, rax
lea rcx, [0x140003dd8]
mov dword [rax], ebx
call fcn.140367c40
mov qword [r12 + 8], rax
lea rbx, [0x140049658]
mov qword [r12 + 0x10], rbx
lea rax, [0x1400495e0]
mov qword [r12 + 0x18], rax
lea rcx, [rbp - 0x61]
or r14d, 0xffffffff
mov rdx, rsi
mov dword [r12 + 0x20], r14d
call fcn.1403cd010
mov rdx, rsi
lea rcx, [r12 + 0x18]
call fcn.140363940
mov rax, qword [rbp - 0x61]
cmp dword [rax + 4], 0
jne 0x14030f9c6
mov dword [r12], 1
lea rdx, [0x14000c180]
mov rax, qword [rsi]
xor r9d, r9d
mov dword [rsp + 0x20], r14d
cmp dword [rax + 4], r9d
jne 0x14030f936
lea r8, [0x14000c168]
lea rcx, [rbp - 0x41]
call fcn.14038c480
lea ebx, [r14 + 2]
jmp 0x14030f94b
lea r8, [0x14000c190]
lea rcx, [rbp - 0x49]
call fcn.14038c480
mov ebx, 2
mov rdx, rax
lea rcx, [r12 + 8]
call fcn.140363940
test bl, 2
je 0x14030f98d
mov rcx, qword [rbp - 0x49]
and ebx, 0xfffffffd
mov eax, dword [rcx]
test eax, eax
je 0x14030f97f
cmp eax, 0xffffffff
je 0x14030f98d
mov eax, r14d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14030f98d
mov rcx, qword [rbp - 0x49]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
test bl, 1
je 0x14030fe52
mov rcx, qword [rbp - 0x41]
mov eax, dword [rcx]
test eax, eax
je 0x14030fe43
cmp eax, 0xffffffff
je 0x14030fe52
mov eax, r14d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14030fe52
mov rcx, qword [rbp - 0x41]
jmp 0x14030fe43
xor ecx, ecx
lea r9, [rbp - 0x59]
mov qword [rbp - 0x11], rcx
lea r8, [rbp - 0x11]
xor edx, edx
mov qword [rbp - 9], rcx
mov qword [rbp - 1], rcx
mov qword [rbp + 7], rcx
mov qword [rbp + 0xf], rcx
mov qword [rbp + 0x17], rcx
mov dword [rbp - 0xd], edx
mov qword [rbp - 0x59], rdx
mov rcx, qword [rax + 0x10]
add rcx, rax
call qword [sym.imp.WS2_32.dll_getaddrinfo]
mov ecx, eax
test eax, eax
jne 0x14030fd44
mov rsi, qword [rbp - 0x59]
mov qword [rbp + 0x77], rbx
test rsi, rsi
je 0x14030fc47
nop dword [rax]
mov eax, dword [rsi + 4]
cmp eax, 2
je 0x14030fb92
cmp eax, 0x17
je 0x14030fa9f
xor r9d, r9d
mov dword [r12], 2
lea r8, [0x14000c1a8]
mov dword [rsp + 0x20], r14d
lea rdx, [0x14000c180]
lea rcx, [rbp - 0x39]
call fcn.14038c480
mov rdx, rax
lea rcx, [r12 + 8]
call fcn.140363940
mov rcx, qword [rbp - 0x39]
mov eax, dword [rcx]
test eax, eax
je 0x14030fa8c
cmp eax, 0xffffffff
je 0x14030fc36
mov eax, r14d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14030fc36
mov rcx, qword [rbp - 0x39]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
jmp 0x14030fc36
lea rcx, [rbp + 0x7f]
call fcn.140302b50
mov rbx, qword [rsi + 0x20]
lea rcx, [rbp + 0x7f]
lea rdx, [rbx + 8]
call fcn.140303fe0
mov edx, dword [rbx + 0x18]
test edx, edx
je 0x14030fb08
mov r8d, 0xa
lea rcx, [rbp - 0x31]
call fcn.1403692f0
mov rdx, rax
lea rcx, [rbp + 0x7f]
call fcn.140304330
mov rcx, qword [rbp - 0x31]
mov eax, dword [rcx]
test eax, eax
je 0x14030fafa
cmp eax, 0xffffffff
je 0x14030fb08
mov eax, r14d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14030fb08
mov rcx, qword [rbp - 0x31]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
mov rax, qword [rbp + 0x77]
movsxd rdi, dword [rax + 0xc]
movsxd rbx, dword [rax + 8]
add rdi, 2
add rbx, 2
lea rdi, [rax + rdi*8]
lea rbx, [rax + rbx*8]
cmp rbx, rdi
je 0x14030fb4d
nop dword [rax]
mov rcx, qword [rbx]
lea rdx, [rbp + 0x7f]
call fcn.140302d00
test al, al
jne 0x14030fb89
add rbx, 8
cmp rbx, rdi
jne 0x14030fb30
mov rax, qword [rbp + 0x77]
cmp dword [rax], 1
lea rcx, [rbp + 0x77]
jbe 0x14030fb68
mov edx, 0x7fffffff
mov r8d, 1
call fcn.1402ff490
jmp 0x14030fb6d
call fcn.140379820
mov ecx, 8
mov rbx, rax
call fcn.1404e17f4
lea rdx, [rbp + 0x7f]
mov rcx, rax
call fcn.140446950
mov qword [rbx], rax
lea rcx, [rbp + 0x7f]
jmp 0x14030fc31
lea rcx, [rbp - 0x69]
call fcn.140302b50
mov rax, qword [rsi + 0x20]
mov ecx, dword [rax + 4]
call qword [sym.imp.WS2_32.dll_ntohl]
mov edx, eax
lea rcx, [rbp - 0x69]
call fcn.140304060
mov rax, qword [rbp + 0x77]
movsxd rdi, dword [rax + 0xc]
movsxd rbx, dword [rax + 8]
add rdi, 2
add rbx, 2
lea rdi, [rax + rdi*8]
lea rbx, [rax + rbx*8]
cmp rbx, rdi
je 0x14030fbf1
mov rcx, qword [rbx]
lea rdx, [rbp - 0x69]
call fcn.140302d00
test al, al
jne 0x14030fc2d
add rbx, 8
cmp rbx, rdi
jne 0x14030fbd4
mov rax, qword [rbp + 0x77]
cmp dword [rax], 1
lea rcx, [rbp + 0x77]
jbe 0x14030fc0c
mov edx, 0x7fffffff
mov r8d, 1
call fcn.1402ff490
jmp 0x14030fc11
call fcn.140379820
mov ecx, 8
mov rbx, rax
call fcn.1404e17f4
lea rdx, [rbp - 0x69]
mov rcx, rax
call fcn.140446950
mov qword [rbx], rax
lea rcx, [rbp - 0x69]
call fcn.140302c20
mov rsi, qword [rsi + 0x28]
test rsi, rsi
jne 0x14030fa20
mov rbx, qword [rbp + 0x77]
mov eax, dword [rbx + 8]
cmp dword [rbx + 0xc], eax
jne 0x14030fcb0
xor r9d, r9d
mov dword [r12], 2
lea r8, [0x14000c1a8]
mov dword [rsp + 0x20], r14d
lea rdx, [0x14000c180]
lea rcx, [rbp - 0x29]
call fcn.14038c480
mov rdx, rax
lea rcx, [r12 + 8]
call fcn.140363940
mov rcx, qword [rbp - 0x29]
mov eax, dword [rcx]
test eax, eax
je 0x14030fca2
cmp eax, 0xffffffff
je 0x14030fcb0
mov eax, r14d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14030fcb0
mov rcx, qword [rbp - 0x29]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
lea rdx, [rbp + 0x77]
lea rcx, [r12 + 0x10]
call fcn.1402fd580
mov rcx, qword [rbp - 0x59]
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
mov rsi, qword [rbp + 0x77]
mov eax, dword [rsi]
test eax, eax
je 0x14030fcef
cmp eax, 0xffffffff
je 0x14030fe52
mov eax, r14d
lock xadd dword [rsi], eax
cmp eax, 1
jne 0x14030fe52
mov rsi, qword [rbp + 0x77]
movsxd rbx, dword [rsi + 0xc]
movsxd r15, dword [rsi + 8]
add rbx, 2
add r15, 2
lea rbx, [rsi + rbx*8]
lea r15, [rsi + r15*8]
cmp r15, rbx
je 0x14030fd37
nop dword [rax]
mov rdi, qword [rbx - 8]
sub rbx, 8
test rdi, rdi
je 0x14030fd32
mov rcx, rdi
call fcn.140302c20
mov edx, 8
mov rcx, rdi
call fcn.1404e1830
cmp rbx, r15
jne 0x14030fd10
mov rcx, rsi
call fcn.1404e1e20
jmp 0x14030fe52
add eax, 0xffffd507
test eax, 0xfffffffc
jne 0x14030fdbc
cmp ecx, 0x2afb
je 0x14030fdbc
xor r9d, r9d
mov dword [r12], 1
lea r8, [0x14000a208]
mov dword [rsp + 0x20], r14d
lea rdx, [0x14000c180]
lea rcx, [rbp - 0x21]
call fcn.14038c480
mov rdx, rax
lea rcx, [r12 + 8]
call fcn.140363940
mov rcx, qword [rbp - 0x21]
mov eax, dword [rcx]
test eax, eax
je 0x14030fe43
cmp eax, 0xffffffff
je 0x14030fe52
mov eax, r14d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14030fe52
mov rcx, qword [rbp - 0x21]
jmp 0x14030fe43
mov dword [r12], 2
call fcn.140311ad0
mov r8d, r14d
lea rcx, [rbp - 0x19]
mov rdx, rax
call fcn.140367ed0
mov rcx, qword [rax]
mov qword [rbp - 0x51], rcx
lea rcx, [0x1400495e0]
mov qword [rax], rcx
mov rcx, qword [rbp - 0x19]
mov eax, dword [rcx]
test eax, eax
je 0x14030fe08
cmp eax, 0xffffffff
je 0x14030fe16
mov eax, r14d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14030fe16
mov rcx, qword [rbp - 0x19]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
lea rdx, [rbp - 0x51]
lea rcx, [r12 + 8]
call fcn.140363940
mov rcx, qword [rbp - 0x51]
mov eax, dword [rcx]
test eax, eax
je 0x14030fe43
cmp eax, 0xffffffff
je 0x14030fe52
mov eax, r14d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14030fe52
mov rcx, qword [rbp - 0x51]
mov r8d, 8
lea edx, [r8 - 6]
call fcn.140379300
mov rcx, qword [rbp - 0x61]
mov qword [r13], r12
mov eax, dword [rcx]
test eax, eax
je 0x14030fe74
cmp eax, 0xffffffff
je 0x14030fe83
lock xadd dword [rcx], r14d
cmp r14d, 1
jne 0x14030fe83
mov rcx, qword [rbp - 0x61]
mov r8d, 8
lea edx, [r8 - 7]
call fcn.140379300
mov rax, r13
mov rbx, qword [rsp + 0x100]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret