Function at 0x1400be850
Capabilities:
Resolve dns

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x238
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
lea rcx, [rsp + 0xb8]
call fcn.140021f00
cmp word [rsp + 0xb8], 2
jne 0x1400be974
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xc8], 0
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0xd8], 1
movabs rax, 0x3a0000003a
mov qword [rsp + 0xe0], rax
lea rcx, [rsp + 0x60]
lea rdx, [rsp + 0xb8]
call fcn.1400bed80
cmp qword [rsp + 0x60], 0
je 0x1400be9c9
mov r14, qword [rsp + 0x68]
mov rax, qword [rsp + 0x70]
lea rcx, [rbx + rax]
sub rdi, rax
mov rdx, rdi
call fcn.140027690
mov edi, eax
test dil, 1
jne 0x1400be9d2
shr edi, 0x10
mov rax, qword [0x1401d2170]
cmp rax, 3
jne 0x1400beceb
cmp r14, 0x17f
ja 0x1400becfd
lea r15, [rsp + 0xb8]
mov rcx, r15
mov rdx, rbx
mov r8, r14
call sub.msvcrt.dll_memcpy
mov byte [rsp + r14 + 0xb8], 0
inc r14
lea rcx, [rsp + 0x48]
mov rdx, r15
mov r8, r14
call fcn.14001fc50
cmp qword [rsp + 0x48], 0
je 0x1400be9db
lea rax, str.file_name_contained_an_unexpected_NUL_byte
jmp 0x1400bea32
movzx eax, byte [0x1401d21f0]
mov ecx, 0x20
mov edx, 4
call fcn.14002c8c0
test rax, rax
je 0x1400bed1a
movups xmm0, xmmword [rsp + 0xb8]
movups xmm1, xmmword [rsp + 0xc8]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov rcx, rax
add rcx, 0x20
mov qword [rsi], rax
mov qword [rsi + 8], 1
mov qword [rsi + 0x10], rax
mov qword [rsi + 0x18], rcx
jmp 0x1400bea51
lea rax, str.invalid_socket_address
jmp 0x1400bea46
lea rax, str.invalid_port_value
jmp 0x1400bea46
mov rcx, qword [rsp + 0x50]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
mov dword [rsp + 0x68], 1
mov qword [rsp + 0x90], 0
lea r8, [rsp + 0x60]
lea r9, [rsp + 0x90]
xor edx, edx
call sub.ws2_32.dll_getaddrinfo
test eax, eax
je 0x1400beccd
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x30], rax
mov eax, 1
test rax, rax
je 0x1400bea65
mov rax, qword [rsp + 0x30]
mov qword [rsi + 8], rax
mov qword [rsi], 0
add rsp, 0x238
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movups xmm0, xmmword [rsp + 0x30]
movzx eax, word [rsp + 0x40]
mov ecx, dword [rsp + 0x42]
mov dword [rsp + 0xa8], ecx
movzx r8d, word [rsp + 0x46]
mov word [rsp + 0xac], r8w
mov word [rsp + 0x26], ax
lea rdx, [rsp + 0x30]
movups xmmword [rsp + 0x30], xmm0
mov word [rsp + 0x40], ax
mov dword [rsp + 0x42], ecx
mov word [rsp + 0x46], r8w
lea rax, [rsp + 0x26]
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0xb8]
call fcn.1400be390
movzx edi, word [rsp + 0xb8]
cmp di, 2
jne 0x1400beae4
mov rcx, qword [rsp + 0x30]
call sub.ws2_32.dll_freeaddrinfo
mov eax, 4
xor ecx, ecx
xor edi, edi
jmp 0x1400becb2
mov qword [rsp + 0xb0], rsi
mov ebp, dword [rsp + 0xba]
movzx r14d, word [rsp + 0xbe]
mov eax, dword [rsp + 0xd0]
mov dword [rsp + 0x70], eax
movups xmm0, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x60], xmm0
movzx r12d, word [rsp + 0xd4]
movzx r15d, word [rsp + 0xd6]
mov rax, qword [rsp + 0x28]
movzx esi, word [rax]
movzx eax, byte [0x1401d21f0]
mov ecx, pe_nt_image_headers64
mov edx, 4
call fcn.14002c8c0
test rax, rax
je 0x1400bed2b
mov rbx, rax
test di, di
cmovne r12d, esi
cmove r14d, esi
mov eax, dword [rsp + 0x70]
mov dword [rbx + 0x18], eax
movaps xmm0, xmmword [rsp + 0x60]
movups xmmword [rbx + 8], xmm0
mov word [rbx], di
mov dword [rbx + 2], ebp
mov word [rbx + 6], r14w
mov word [rbx + 0x1c], r12w
mov word [rbx + 0x1e], r15w
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], 4
mov qword [rsp + 0x58], 1
movups xmm0, xmmword [rsp + 0x28]
movups xmm1, xmmword [rsp + 0x38]
movaps xmmword [rsp + 0x70], xmm1
movaps xmmword [rsp + 0x60], xmm0
mov edi, 1
mov r13d, 0x20
jmp 0x1400bec02
mov word [rbx + r13], r12w
mov dword [rbx + r13 + 2], r14d
mov word [rbx + r13 + 6], bp
movaps xmm0, xmmword [rsp + 0x90]
movups xmmword [rbx + r13 + 8], xmm0
mov eax, dword [rsp + 0xa0]
mov dword [rbx + r13 + 0x18], eax
mov word [rbx + r13 + 0x1c], r15w
mov word [rbx + r13 + 0x1e], si
inc rdi
mov qword [rsp + 0x58], rdi
add r13, 0x20
lea rcx, [rsp + 0xb8]
lea rdx, [rsp + 0x68]
call fcn.1400be390
movzx r12d, word [rsp + 0xb8]
cmp r12w, 2
je 0x1400bec96
mov r14d, dword [rsp + 0xba]
movzx ebp, word [rsp + 0xbe]
lea rcx, [rsp + 0xc0]
mov eax, dword [rcx + 0x10]
mov dword [rsp + 0xa0], eax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x90], xmm0
mov rax, qword [rsp + 0x60]
movzx r15d, word [rax]
test r12w, r12w
jne 0x1400bec6c
mov ebp, r15d
movzx r15d, word [rsp + 0xd4]
movzx esi, word [rsp + 0xd6]
cmp rdi, qword [rsp + 0x50]
jne 0x1400bebc0
lea rcx, [rsp + 0x48]
mov rdx, rdi
call fcn.1400be500
mov rbx, qword [rsp + 0x48]
jmp 0x1400bebc0
mov rcx, qword [rsp + 0x68]
call sub.ws2_32.dll_freeaddrinfo
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0xb0]
shl rdi, 5
add rdi, rax
mov qword [rsi], rax
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], rax
mov qword [rsi + 0x18], rdi
jmp 0x1400bea51
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
mov word [rsp + 0x40], di
xor eax, eax
jmp 0x1400bea3c
call fcn.1400be5c0
cmp r14, 0x17f
jbe 0x1400be92e
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8, r14
mov r9d, edi
call fcn.1400be620
mov rax, qword [rsp + 0x28]
jmp 0x1400bea3c
mov ecx, 4
mov edx, 0x20
call fcn.14000fd90
ud2
mov ecx, 4
mov edx, pe_nt_image_headers64
call fcn.14000fd90
ud2