Function at 0x140178180
Capabilities:
Resolve dns

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x1e0
mov rsi, rcx
mov r14, qword [rdx]
mov rbx, qword [rdx + 8]
movzx edi, word [rdx + 0x10]
mov rax, qword [0x1402e9128]
cmp rax, 3
jne 0x140177cc7
cmp rbx, 0x17f
ja 0x140177cd9
lea r15, [rsp + 0x60]
mov rcx, r15
mov rdx, r14
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov byte [rsp + rbx + 0x60], 0
lea rax, [rbx + 1]
cmp rbx, 0xe
ja 0x140177b78
xor edx, edx
nop
cmp byte [rsp + rdx + 0x60], 0
je 0x140177c34
inc rdx
cmp rax, rdx
jne 0x140177b60
jmp 0x140177c8e
lea rcx, [rsp + 0x67]
and rcx, 0xfffffffffffffff8
sub rcx, r15
je 0x140177bae
je 0x140177bae
xor edx, edx
nop word [rax + rax]
cmp byte [rsp + rdx + 0x60], 0
je 0x140177c34
inc rdx
cmp rcx, rdx
jne 0x140177b90
lea rdx, [rbx - 0xf]
cmp rcx, rdx
jbe 0x140177bb4
jmp 0x140177c05
lea rdx, [rbx - 0xf]
xor ecx, ecx
movabs r8, 0xfefefefefefefeff
movabs r9, 0x8080808080808080
nop dword [rax + rax]
mov r10, qword [rsp + rcx + 0x60]
mov r11, r10
not r11
add r10, r8
and r11, r9
test r11, r10
jne 0x140177c05
mov r10, qword [rsp + rcx + 0x68]
mov r11, r10
not r11
add r10, r8
and r11, r9
test r11, r10
jne 0x140177c05
add rcx, 0x10
cmp rcx, rdx
jbe 0x140177bd0
sub rax, rcx
je 0x140177c8e
lea r8, [rsp + rcx]
add r8, 0x60
xor edx, edx
nop dword [rax + rax]
cmp byte [r8 + rdx], 0
je 0x140177c31
inc rdx
cmp rax, rdx
jne 0x140177c20
jmp 0x140177c8e
add rdx, rcx
cmp rdx, rbx
jne 0x140177c8e
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
mov dword [rsp + 0x38], 1
mov qword [rsp + 0x28], 0
lea rcx, [rsp + 0x60]
lea r8, [rsp + 0x30]
lea r9, [rsp + 0x28]
xor edx, edx
call sub.ws2_32.dll_getaddrinfo
test eax, eax
je 0x140177ca2
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
jmp 0x140177cb5
lea rax, str.file_name_contained_an_unexpected_NUL_byte
mov qword [rsi + 8], rax
mov qword [rsi], 1
jmp 0x140177cb8
mov rax, qword [rsp + 0x28]
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], rax
mov word [rsi + 0x18], di
xor eax, eax
mov qword [rsi], rax
add rsp, 0x1e0
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
call fcn.140178120
cmp rbx, 0x17f
jbe 0x140177b3a
mov rcx, rsi
mov rdx, r14
mov r8, rbx
mov r9d, edi
add rsp, 0x1e0
pop rbx
pop rdi
pop rsi
pop r14
pop r15
jmp 0x140178180
push r14
push rsi
push rdi
push rbx
sub rsp, 0x88
mov ebx, r9d
mov rsi, rcx
lea rcx, [rsp + 0x30]
call fcn.140020890
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1401781da
lea rax, str.file_name_contained_an_unexpected_NUL_byte
mov qword [rsi + 8], rax
mov qword [rsi], 1
cmp qword [rsp + 0x38], 0
je 0x140178262
mov edx, 1
add rsp, 0x88
pop rbx
pop rdi
pop rsi
pop r14
jmp fcn.140020450
mov rdi, qword [rsp + 0x38]
mov r14, qword [rsp + 0x40]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x58], 1
mov qword [rsp + 0x28], 0
lea r8, [rsp + 0x50]
lea r9, [rsp + 0x28]
mov rcx, rdi
xor edx, edx
call sub.ws2_32.dll_getaddrinfo
test eax, eax
je 0x140178237
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
jmp 0x14017824a
mov rax, qword [rsp + 0x28]
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], rax
mov word [rsi + 0x18], bx
xor eax, eax
mov qword [rsi], rax
mov byte [rdi], 0
test r14, r14
je 0x140178262
mov edx, 1
mov rcx, rdi
call fcn.140020450
nop
add rsp, 0x88
pop rbx
pop rdi
pop rsi
pop r14
ret