Function at 0x14008a8e0
Capabilities:
Resolve dns

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa0
mov rbx, r8
inc rbx
sete bpl
je 0x14008ac25
js 0x14008ac25
mov rdi, r9
mov r15, r8
mov r12, rdx
mov rsi, rcx
movzx eax, byte [0x140254141]
xor ecx, ecx
mov rdx, rbx
call fcn.14008bd10
test rax, rax
je 0x14008ac25
mov r14, rax
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 0
test bpl, bpl
jne 0x14008ac01
xor ebx, ebx
lea rcx, [r14 + rbx]
mov rdx, r12
mov r8, r15
call sub.msvcrt.dll_memcpy
add rbx, r15
mov qword [rsp + 0x50], rbx
lea rax, [r12 + 7]
and rax, 0xfffffffffffffff8
sub rax, r12
jne 0x14008a9c0
lea rcx, [r15 - 0x10]
xor eax, eax
movdqa xmm0, xmmword [0x1401b4f80]
movabs rdx, 0x8080808080808080
nop dword [rax + rax]
movdqu xmm1, xmmword [r12 + rax]
movdqa xmm2, xmm1
paddq xmm2, xmm0
pandn xmm1, xmm2
pshufd xmm2, xmm1, 0xee
por xmm2, xmm1
movq r8, xmm2
test r8, rdx
jne 0x14008a9ec
add rax, 0x10
cmp rax, rcx
jbe 0x14008a990
jmp 0x14008a9ec
cmp rax, r15
cmovae rax, r15
xor ecx, ecx
nop dword [rax]
cmp byte [r12 + rcx], 0
je 0x14008aa6b
inc rcx
cmp rax, rcx
jne 0x14008a9d0
lea rcx, [r15 - 0x10]
cmp rax, rcx
jbe 0x14008a979
cmp rax, r15
je 0x14008aa0f
nop word cs:[rax + rax]
cmp byte [r12 + rax], 0
je 0x14008aa6b
inc rax
cmp r15, rax
jne 0x14008aa00
movdqu xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x20], xmm0
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x30], rbx
mov r15, qword [rsp + 0x20]
cmp r15, rbx
jne 0x14008aae6
mov r15, rbx
inc r15
je 0x14008ac25
mov rdx, r15
not rdx
shr rdx, 0x3f
test rbx, rbx
je 0x14008aab0
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], rbx
jmp 0x14008aab9
mov rax, qword [rsp + 0x40]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x14008ab4a
lea rcx, str.file_name_contained_an_unexpected_NUL_byte
mov qword [rsi + 8], rcx
mov qword [rsi], 1
test rax, rax
jne 0x14008abdf
add rsp, 0xa0
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov qword [rsp + 0x78], 0
lea rcx, [rsp + 0x58]
lea r9, [rsp + 0x70]
mov r8, r15
call fcn.14000cd20
cmp qword [rsp + 0x58], 0
jne 0x14008ac1f
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
cmp rbx, r15
jne 0x14008ab02
lea rcx, [rsp + 0x20]
mov rdx, rbx
call fcn.14000cdb0
mov r15, qword [rsp + 0x20]
mov rbx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x28]
mov byte [r14 + rbx], 0
inc rbx
mov qword [rsp + 0x30], rbx
cmp r15, rbx
jbe 0x14008ab4a
mov rcx, qword [0x1402540f8]
xor edx, edx
mov r8, r14
test rbx, rbx
je 0x14008ab3f
mov r9, rbx
call sub.KERNEL32.dll_HeapReAlloc
mov r14, rax
test rax, rax
jne 0x14008ab4a
jmp 0x14008ac25
call sub.KERNEL32.dll_HeapFree
mov r14d, 1
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x70], xmm0
movdqa xmmword [rsp + 0x90], xmm0
movdqa xmmword [rsp + 0x80], xmm0
mov dword [rsp + 0x78], 1
mov qword [rsp + 0x58], 0
lea r8, [rsp + 0x70]
lea r9, [rsp + 0x58]
mov rcx, r14
xor edx, edx
call sub.ws2_32.dll_getaddrinfo
test eax, eax
je 0x14008abb6
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
mov byte [r14], 0
test rbx, rbx
jne 0x14008abdf
jmp 0x14008aa9e
mov rax, qword [rdi]
mov rcx, qword [rsp + 0x58]
movzx eax, word [rax]
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], rcx
mov word [rsi + 0x18], ax
xor eax, eax
mov qword [rsi], rax
mov byte [r14], 0
test rbx, rbx
je 0x14008aa9e
mov rcx, qword [0x1402540f8]
xor edx, edx
mov r8, r14
add rsp, 0xa0
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
jmp sub.KERNEL32.dll_HeapFree
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8, r15
call fcn.14000cc80
mov r14, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x50]
jmp 0x14008a94e
cmp qword [rsp + 0x60], 0
ud2