Function at 0x1401ac560
Capabilities:
Resolve dns

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1e8
mov rsi, rcx
mov rdi, qword [rdx]
mov rbx, qword [rdx + 8]
movzx ebp, word [rdx + 0x10]
mov rax, qword [0x14031a130]
cmp rax, 3
jne 0x1401ac006
cmp rbx, 0x17f
ja 0x1401ac018
lea rcx, [rsp + 0x68]
mov rdx, rdi
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov byte [rsp + rbx + 0x68], 0
lea r8, [rbx + 1]
cmp rbx, 0xe
ja 0x1401abf59
lea rcx, [rbx + 1]
xor eax, eax
xor edx, edx
nop
cmp byte [rsp + rdx + 0x68], 0
je 0x1401abf6c
inc rdx
cmp rcx, rdx
jne 0x1401abf40
mov rdx, r8
test rax, rax
jne 0x1401abf76
jmp 0x1401abfd0
lea rdx, [rsp + 0x68]
xor ecx, ecx
call fcn.14002d640
test rax, rax
jne 0x1401abf76
jmp 0x1401abfd0
mov eax, 1
test rax, rax
je 0x1401abfd0
cmp rdx, rbx
jne 0x1401abfd0
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 + 0x68]
lea r8, [rsp + 0x30]
lea r9, [rsp + 0x28]
xor edx, edx
call sub.ws2_32.dll_getaddrinfo
test eax, eax
je 0x1401abfe4
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
jmp 0x1401abff7
lea rax, str.file_name_contained_an_unexpected_NUL_byte
mov qword [rsi + 8], rax
mov qword [rsi], 1
jmp 0x1401abffa
mov rax, qword [rsp + 0x28]
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], rax
mov word [rsi + 0x18], bp
xor eax, eax
mov qword [rsi], rax
add rsp, 0x1e8
pop rbx
pop rbp
pop rdi
pop rsi
ret
call fcn.1401ac4f0
cmp rbx, 0x17f
jbe 0x1401abf17
mov rcx, rsi
mov rdx, rdi
mov r8, rbx
mov r9d, ebp
add rsp, 0x1e8
pop rbx
pop rbp
pop rdi
pop rsi
jmp 0x1401ac560
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov rdi, r8
inc rdi
je 0x1401ac703
js 0x1401ac71d
mov r14d, r9d
mov rbx, r8
mov rbp, rdx
mov r15, rcx
mov rcx, qword [0x14031a128]
test rcx, rcx
jne 0x1401ac5ae
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1401ac6f4
mov rcx, rax
mov qword [0x14031a128], rax
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1401ac6f4
mov rsi, rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0
mov rcx, rax
mov rdx, rbp
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x38], rbx
xor ecx, ecx
mov rdx, rbp
mov r8, rbx
call fcn.14002d640
test rax, rax
je 0x1401ac634
lea rax, str.file_name_contained_an_unexpected_NUL_byte
mov qword [r15 + 8], rax
mov qword [r15], 1
test rdi, rdi
je 0x1401ac6c5
mov rcx, qword [0x14031a128]
xor edx, edx
mov r8, rsi
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
jmp fcn.1401f903c
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x50], rax
movups xmm0, xmmword [rsp + 0x28]
movaps xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call fcn.1400272b0
mov rdi, rax
mov rbx, rdx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x48], 1
mov qword [rsp + 0x28], 0
lea r8, [rsp + 0x40]
lea r9, [rsp + 0x28]
mov rcx, rax
xor edx, edx
call sub.ws2_32.dll_getaddrinfo
test eax, eax
je 0x1401ac6d3
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [r15 + 8], rax
mov eax, 1
mov qword [r15], rax
mov byte [rdi], 0
test rbx, rbx
je 0x1401ac6c5
mov rcx, qword [0x14031a128]
xor edx, edx
mov r8, rdi
call fcn.1401f903c
nop
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
mov rax, qword [rsp + 0x28]
mov qword [r15 + 8], rax
mov qword [r15 + 0x10], rax
mov word [r15 + 0x18], r14w
xor eax, eax
mov qword [r15], rax
mov byte [rdi], 0
test rbx, rbx
jne 0x1401ac6b4
jmp 0x1401ac6c5
mov edx, 1
mov rcx, rdi
call fcn.1400270c0
ud2
lea rcx, str.called__Option::unwrap____on_a__None__valueC:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823untrusted_0.9.0_src_reader.rs
lea r8, str.library_alloc_src_ffic_str.rs
mov edx, 0x2b
call fcn.14002cb80
ud2
call fcn.140027070
ud2