Function at 0x1400a9ed8
Capabilities:
Resolve dns

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x90
lea rbp, [rsp + 0x30]
mov qword [rbp + 0x90], rbx
mov qword [rbp + 0x98], rsi
mov qword [rbp + 0xa0], rdi
mov rax, qword [0x14030ef00]
xor rax, rbp
mov qword [rbp + 0x50], rax
xor r12d, r12d
mov dword [rbp + 0x10], r9d
mov qword [rbp + 0x18], rdx
mov r15, r8
mov dword [rbp + 4], r12d
mov rdi, rdx
mov qword [rbp + 8], r12
mov r14, rcx
mov dword [rbp], r12d
test r8, r8
je 0x1400a9f4c
test r9d, r9d
jle 0x1400a9f4c
xor eax, eax
xorps xmm0, xmm0
movups xmmword [r8], xmm0
mov qword [r8 + 0x10], rax
mov dword [r8 + 0x18], eax
cmp byte [rcx], 0x5b
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov dword [rbp + 0x28], 1
movabs rbx, 0xffffffffffffff0
mov dword [rbp + 0x2c], 6
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
jne 0x1400aa01c
mov edx, 0x1000
call fcn.1401ecbac
movsxd rsi, eax
mov rcx, rax
lea rax, [rsi + 0xf]
cmp rax, rsi
ja 0x1400a9f98
mov rax, rbx
and rax, 0xfffffffffffffff0
call fcn.1401dc320
sub rsp, rax
lea rdi, [rsp + 0x30]
cmp ecx, 2
jl 0x1400aa14e
lea rbx, [rsi - 2]
inc r14
test rbx, rbx
je 0x1400aa011
test rdi, rdi
jne 0x1400a9fd0
call fcn.1401ebba4
mov dword [rax], reloc.WS2_32.dll_shutdown
jmp 0x1400aa00c
test r14, r14
je 0x1400a9fea
cmp rsi, rbx
jb 0x1400a9fea
mov r8, rbx
mov rdx, r14
mov rcx, rdi
call fcn.140210d80
jmp 0x1400aa011
mov r8, rsi
xor edx, edx
mov rcx, rdi
call fcn.140211420
test r14, r14
je 0x1400a9fc3
cmp rsi, rbx
jae 0x1400aa011
call fcn.1401ebba4
mov dword [rax], 0x22
call fcn.1401eac1c
mov byte [rbx + rdi], r12b
mov r14, rdi
mov rdi, qword [rbp + 0x18]
test r14, r14
jne 0x1400aa026
mov esi, r12d
jmp 0x1400aa04b
mov dword [rsp + 0x28], r12d
or r9d, 0xffffffff
mov r8, r14
mov qword [rsp + 0x20], r12
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea esi, [rax*2 + 2]
movsxd rbx, esi
test rdi, rdi
je 0x1400aa079
mov dword [rsp + 0x28], r12d
or r9d, 0xffffffff
mov r8, rdi
mov qword [rsp + 0x20], r12
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea r12d, [rax*2 + 2]
movsxd rcx, r12d
movabs rdx, 0xffffffffffffff0
test esi, esi
jne 0x1400aa08e
xor edi, edi
jmp 0x1400aa0ab
lea rax, [rbx + 0xf]
cmp rax, rbx
ja 0x1400aa09a
mov rax, rdx
and rax, 0xfffffffffffffff0
call fcn.1401dc320
sub rsp, rax
lea rdi, [rsp + 0x30]
test r12d, r12d
jne 0x1400aa0b4
xor ebx, ebx
jmp 0x1400aa0d1
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1400aa0c0
mov rax, rdx
and rax, 0xfffffffffffffff0
call fcn.1401dc320
sub rsp, rax
lea rbx, [rsp + 0x30]
test rdi, rdi
je 0x1400aa0f3
mov dword [rsp + 0x28], esi
or r9d, 0xffffffff
mov r8, r14
mov qword [rsp + 0x20], rdi
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test rbx, rbx
je 0x1400aa117
mov r8, qword [rbp + 0x18]
or r9d, 0xffffffff
mov dword [rsp + 0x28], r12d
xor edx, edx
mov ecx, 0xfde9
mov qword [rsp + 0x20], rbx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea r9, [rbp + 8]
mov rdx, rbx
lea r8, [rbp + 0x20]
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_GetAddrInfoW]
test eax, eax
je 0x1400aa145
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x1400aa13e
call qword [sym.imp.WS2_32.dll_FreeAddrInfoW]
xor eax, eax
jmp 0x1400aa25a
mov rbx, qword [rbp + 8]
test rbx, rbx
jne 0x1400aa156
or eax, 0xffffffff
jmp 0x1400aa25a
mov r13d, dword [rbp]
mov rax, rbx
cmp dword [rax + 4], 2
je 0x1400aa169
cmp dword [rax + 4], 0x17
jne 0x1400aa16c
inc r13d
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1400aa15d
mov dword [rbp], r13d
mov r13d, dword [rbp + 0x10]
test r15, r15
je 0x1400aa1a9
test r13d, r13d
jne 0x1400aa1a9
movsxd rbx, dword [rbp]
xor r9d, r9d
imul rcx, rbx, 0x1c
xor r8d, r8d
xor edx, edx
call fcn.14009fdfc
mov qword [r15], rax
mov r13d, ebx
mov rbx, qword [rbp + 8]
mov r15, rax
test rbx, rbx
je 0x1400aa24e
test r13d, r13d
jle 0x1400aa24a
cmp dword [rbx + 4], 2
je 0x1400aa1c7
cmp dword [rbx + 4], 0x17
jne 0x1400aa23d
movsxd rdi, dword [rbp + 4]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x20]
imul rax, rdi, 0x1c
add rax, r15
test rcx, rcx
je 0x1400aa235
test rax, rax
jne 0x1400aa1f1
call fcn.1401ebba4
mov dword [rax], reloc.WS2_32.dll_shutdown
jmp 0x1400aa230
test rdx, rdx
je 0x1400aa209
cmp rcx, 0x1c
ja 0x1400aa209
mov r8, rcx
mov rcx, rax
call fcn.140210d80
jmp 0x1400aa235
xor r8d, r8d
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], r8
mov dword [rax + 0x18], r8d
test rdx, rdx
je 0x1400aa1e4
cmp rcx, 0x1c
jbe 0x1400aa235
call fcn.1401ebba4
mov dword [rax], 0x22
call fcn.1401eac1c
inc edi
mov dword [rbp + 4], edi
dec r13d
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1400aa1b2
mov rbx, qword [rbp + 8]
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_FreeAddrInfoW]
mov eax, dword [rbp + 4]
mov rcx, qword [rbp + 0x50]
xor rcx, rbp
call fcn.1401dbdb0
mov rbx, qword [rbp + 0x90]
mov rsi, qword [rbp + 0x98]
mov rdi, qword [rbp + 0xa0]
lea rsp, [rbp + 0x60]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret