Function at 0x140068610
Capabilities:
Resolve dns

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1178]
mov eax, 0x1278
call fcn.1402148b0
sub rsp, rax
movaps xmmword [rsp + 0x1260], xmm6
movaps xmmword [rsp + 0x1250], xmm7
movaps xmmword [rsp + 0x1240], xmm8
movaps xmmword [rsp + 0x1230], xmm9
mov rax, qword [0x14069f448]
xor rax, rsp
mov qword [rbp + 0x1120], rax
mov qword [rbp - 0x78], r9
mov r13, r8
mov r12, rdx
mov rbx, rcx
mov qword [rbp - 0x28], rdx
mov r15, qword [rbp + 0x11e0]
mov r14d, 1
mov dword [rbp - 0x58], r14d
call sub.MSVCP140.dll__Query_perf_frequency
mov rdi, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rdi, 0x989680
jne 0x1400686a3
imul rax, rax, 0x64
jmp 0x1400686be
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
mov rsi, qword [rbp + 0x11e8]
imul rcx, rsi, 0xf4240
add rax, rcx
mov qword [rbp - 0x50], rax
lea rdi, [rbx + 8]
mov r8, qword [rdi + 0x10]
mov rcx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x1400686e8
mov rcx, qword [rdi]
cmp r8, 4
jne 0x140069173
lea rdx, [0x140222258]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140069173
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
movups xmmword [rbp], xmm0
movups xmmword [rbp + 0x10], xmm0
mov al, byte [rbx + 1]
test al, al
jne 0x140068723
mov eax, 2
jmp 0x140068731
cmp al, r14b
jne 0x140069152
mov eax, reloc.WS2_32.dll_socket
mov dword [rbp - 0xc], eax
mov dword [rbp - 8], r14d
cmp qword [rbx + 0x98], 0
jne 0x14006874b
lea rdx, [0x1402222a8]
jmp 0x14006875c
lea rdx, [rbx + 0x88]
cmp qword [rdx + 0x18], 0x10
jb 0x14006875c
mov rdx, qword [rdx]
lea r14, [rbx + 0x68]
mov rcx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x14006876d
mov rcx, qword [r14]
lea r9, [rbp - 0x40]
lea r8, [rbp - 0x10]
call qword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
jne 0x140069194
mov rax, qword [0x14021d808]
mov qword [rbp - 0x20], rax
mov r14, qword [rbp - 0x40]
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x18], r14
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
and qword [rbp - 0x60], 0
lea r9, [r15 + 8]
mov rdx, qword [r9]
sub rdx, qword [r15]
sar rdx, 6
mov r8, r15
lea rcx, [rbp - 0x70]
call fcn.14001baf8
lea rax, [rbp - 0x70]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x78]
mov r8, r13
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.14005fbc4
nop
mov dl, byte [rbx + 1]
lea rcx, [rsp + 0x40]
call fcn.14002c830
nop
or r13, 0xffffffffffffffff
mov r15, qword [rbp - 0x50]
test rsi, rsi
js 0x140068809
mov rdx, r15
lea rcx, [rsp + 0x30]
call fcn.14002f9e8
jmp 0x14006880c
mov rax, r13
mov r9, rax
mov r8d, dword [r14 + 0x10]
mov rdx, qword [r14 + 0x20]
lea rcx, [rsp + 0x40]
call fcn.14005ccd4
mov rbx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
sub rbx, rdi
je 0x140068862
test rsi, rsi
js 0x140068844
mov rdx, r15
lea rcx, [rsp + 0x30]
call fcn.14002f9e8
jmp 0x140068847
mov rax, r13
mov r9, rax
mov r8, rbx
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.140069238
add rdi, rax
sub rbx, rax
jne 0x140068830
mov word [rsp + 0x34], 0xa0d
mov dword [rsp + 0x38], 0xa0d0a0d
xorps xmm0, xmm0
movups xmmword [r12 + 8], xmm0
xor ebx, ebx
mov qword [r12 + 0x18], rbx
mov qword [r12 + 0x20], recv
mov byte [r12 + 8], bl
mov qword [r12 + 0x28], rbx
mov qword [r12 + 0x30], rbx
mov qword [r12 + 0x38], rbx
lea r13, [r12 + 0x40]
mov qword [r13], rbx
mov qword [r13 + 8], rbx
mov qword [r13 + 0x10], rbx
lea eax, [rbx + 1]
mov dword [rbp - 0x58], eax
movdqu xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], rbx
mov dil, bl
mov byte [rsp + 0x32], bl
mov qword [rbp - 0x78], rbx
mov byte [rsp + 0x31], bl
mov qword [rsp + 0x60], rbx
mov al, bl
mov dword [rsp + 0x3c], eax
mov r15, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
jmp 0x1400688e8
xor ebx, ebx
test rsi, rsi
js 0x1400688fd
mov rdx, qword [rbp - 0x50]
lea rcx, [rsp + 0x30]
call fcn.14002f9e8
jmp 0x140068901
or rax, 0xffffffffffffffff
mov r9, rax
mov r8d, 0x1000
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x40]
call fcn.140065130
test rax, rax
je 0x14006906c
mov r9, rax
lea r8, [rbp + 0x120]
mov rdx, r15
lea rcx, [rsp + 0x68]
call fcn.14001e354
mov r14, qword [rsp + 0x68]
mov r15, qword [rsp + 0x70]
test dil, dil
jne 0x140068ce6
mov byte [rsp + 0x28], bl
lea rax, [rsp + 0x3c]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x38]
mov r8, r15
mov rdx, r14
lea rcx, [rbp - 0x38]
call fcn.14002a3c0
mov rax, qword [rbp - 0x38]
cmp rax, r15
je 0x140068fc5
lea rbx, [rax + 2]
mov r8, rbx
mov rdx, r14
lea rcx, [rbp + 0xf0]
call fcn.1400244e0
nop
mov rdi, qword [rbp + 0xf0]
mov eax, dword [rbp + 0xf8]
mov dword [r12], eax
movzx eax, word [rbp + 0xfc]
mov word [r12 + 4], ax
lea rdx, [rbp + 0x100]
lea rcx, [r12 + 8]
call fcn.14000a218
mov r8, rbx
mov rdx, rdi
lea rcx, [rbp + 0x60]
call fcn.140023fcc
nop
mov rdi, qword [rbp + 0x60]
movups xmm9, xmmword [rbp + 0x68]
movups xmmword [rbp + 0x40], xmm9
movups xmm8, xmmword [rbp + 0x78]
movups xmmword [rbp + 0x50], xmm8
and qword [rbp + 0x78], 0
mov eax, recv
mov qword [rbp + 0x80], rax
mov byte [rbp + 0x68], 0
movups xmm7, xmmword [rbp + 0x88]
movups xmmword [rbp + 0x20], xmm7
movups xmm6, xmmword [rbp + 0x98]
movups xmmword [rbp + 0x30], xmm6
and qword [rbp + 0x98], 0
mov qword [rbp + 0xa0], rax
mov byte [rbp + 0x88], 0
lea rcx, [rbp + 0x40]
movdqa xmm0, xmm8
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
setae dl
mov byte [rsp + 0x30], dl
movq r13, xmm9
cmovae rcx, r13
movq rax, xmm8
mov qword [rbp - 0x30], rax
cmp rax, 0x11
jne 0x140068b93
mov r8, rax
lea rdx, str.transfer_encoding
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140068b8b
lea rcx, [rbp + 0x20]
movq rdx, xmm7
movdqa xmm0, xmm6
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rcx, rdx
movq rax, xmm6
cmp rax, 7
jne 0x1400691dc
mov r8, rax
lea rdx, str.chunked
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400691dc
mov byte [rsp + 0x31], 1
lea r13, [r12 + 0x40]
movaps xmmword [rbp + 0xb0], xmm9
movaps xmmword [rbp + 0xc0], xmm8
and qword [rbp + 0x50], 0
mov eax, recv
mov qword [rbp + 0x58], rax
mov byte [rbp + 0x40], 0
movaps xmmword [rbp + 0xd0], xmm7
movaps xmmword [rbp + 0xe0], xmm6
and qword [rbp + 0x30], 0
mov qword [rbp + 0x38], rax
mov byte [rbp + 0x20], 0
lea rdx, [rbp + 0xb0]
lea rcx, [r12 + 0x28]
call fcn.14001c340
nop
lea rcx, [rbp + 0xb0]
call fcn.14002eb14
nop
mov rdx, qword [rbp + 0x38]
cmp rdi, rbx
je 0x140068c2e
cmp rdx, 0x10
jb 0x140068b6c
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068b67
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140068fb7
call fcn.140213ea4
and qword [rbp + 0x30], 0
mov qword [rbp + 0x38], recv
mov byte [rbp + 0x20], 0
lea rcx, [rbp + 0x68]
call fcn.14002eb14
jmp 0x1400689c3
mov rax, qword [rbp - 0x30]
mov dl, byte [rsp + 0x30]
lea rcx, [rbp + 0x40]
test dl, dl
cmovne rcx, r13
cmp rax, 0xe
jne 0x140068ac7
mov r8, rax
lea rdx, str.content_length
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140068ac7
lea rdx, [rbp + 0x20]
cmp qword [rbp + 0x38], 0x10
setae r8b
cmovae rdx, qword [rbp + 0x20]
add rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x20]
test r8b, r8b
cmovne rcx, qword [rbp + 0x20]
call fcn.14002af6c
mov rcx, rax
mov qword [rbp - 0x78], rax
mov byte [rsp + 0x32], 1
lea r13, [r12 + 0x40]
mov rax, qword [r13 + 0x10]
sub rax, qword [r13]
cmp rcx, rax
jbe 0x140068c21
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x140069211
mov rdx, rcx
mov rcx, r13
call fcn.14005bff0
movups xmm6, xmmword [rbp + 0x30]
movups xmm7, xmmword [rbp + 0x20]
jmp 0x140068acc
cmp rdx, 0x10
jb 0x140068c65
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068c60
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140068fb7
call fcn.140213ea4
and qword [rbp + 0x30], 0
mov qword [rbp + 0x38], recv
mov byte [rbp + 0x20], 0
lea rcx, [rbp + 0x68]
call fcn.14002eb14
lea rdx, [rbx + 2]
cmp r14, rdx
je 0x140068c9e
sub r15, rdx
mov r8, r15
mov rcx, r14
call sub.VCRUNTIME140.dll_memmove
add r15, r14
mov qword [rsp + 0x70], r15
mov edi, 1
mov rdx, qword [rbp + 0x118]
cmp rdx, 0x10
jb 0x140068ce4
inc rdx
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068cdf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140068fbe
call fcn.140213ea4
xor ebx, ebx
cmp byte [rsp + 0x31], bl
je 0x140068ed3
mov rcx, qword [rsp + 0x60]
mov eax, dword [rsp + 0x3c]
test rcx, rcx
je 0x140068d6e
mov rax, r15
sub rax, r14
mov rbx, rcx
cmp rax, rcx
cmovb rbx, rax
mov rdx, qword [r12 + 0x48]
mov r9, rbx
mov r8, r14
mov rcx, r13
call fcn.14001e354
lea rdx, [rbx + r14]
cmp r14, rdx
je 0x140068d40
sub r15, rdx
mov r8, r15
mov rcx, r14
call sub.VCRUNTIME140.dll_memmove
add r15, r14
mov qword [rsp + 0x70], r15
mov rcx, qword [rsp + 0x60]
sub rcx, rbx
mov qword [rsp + 0x60], rcx
mov eax, dword [rsp + 0x3c]
movzx eax, al
mov edx, 1
cmove eax, edx
mov dword [rsp + 0x3c], eax
cmp r14, r15
lea ebx, [rdx - 1]
je 0x1400688e8
jmp 0x140068cf9
test al, al
je 0x140068dbb
mov rax, r15
sub rax, r14
cmp rax, 2
jb 0x1400688e8
movzx eax, word [rsp + 0x34]
cmp ax, word [r14]
sete al
test al, al
je 0x140069217
mov al, bl
mov dword [rsp + 0x3c], eax
lea rdx, [r14 + 2]
cmp r14, rdx
je 0x140068dbb
sub r15, rdx
mov r8, r15
mov rcx, r14
call sub.VCRUNTIME140.dll_memmove
add r15, r14
mov qword [rsp + 0x70], r15
mov byte [rsp + 0x28], bl
lea rax, [rsp + 0x36]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x34]
mov r8, r15
mov rdx, r14
lea rcx, [rbp - 0x48]
call fcn.14002a3c0
mov rbx, qword [rbp - 0x48]
cmp rbx, r15
je 0x1400688e6
mov rdx, rbx
mov rcx, r14
call fcn.140023898
mov rcx, rax
mov qword [rsp + 0x60], rax
lea rdx, [rbx + 2]
cmp r14, rdx
je 0x140068e21
sub r15, rdx
mov r8, r15
mov rcx, r14
call sub.VCRUNTIME140.dll_memmove
add r15, r14
mov qword [rsp + 0x70], r15
mov rcx, qword [rsp + 0x60]
xor ebx, ebx
test rcx, rcx
jne 0x140068cf5
test r14, r14
je 0x140068e67
mov rdx, qword [rsp + 0x78]
sub rdx, r14
mov rax, r14
cmp rdx, 0x1000
jb 0x140068e5e
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006909a
mov rcx, r14
call fcn.140213ea4
nop
mov rcx, qword [rsp + 0x40]
cmp rcx, 0xffffffffffffffff
je 0x140068e79
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x140068ec3
mov rdx, qword [rsp + 0x58]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068eb0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400690ef
call fcn.140213ea4
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov rcx, qword [rbp - 0x80]
call qword [0x14021d808]
nop
jmp 0x140069114
mov r9, r15
sub r9, r14
mov rdx, qword [r13 + 8]
mov r8, r14
mov rcx, r13
call fcn.14001e354
cmp r14, r15
cmovne r15, r14
mov qword [rsp + 0x70], r15
cmp byte [rsp + 0x32], bl
je 0x1400688e8
mov rax, qword [r13 + 8]
sub rax, qword [r13]
cmp rax, qword [rbp - 0x78]
jb 0x1400688e8
test r14, r14
je 0x140068f4b
mov rdx, qword [rsp + 0x78]
sub rdx, r14
mov rax, r14
cmp rdx, 0x1000
jb 0x140068f42
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006909a
mov rcx, r14
call fcn.140213ea4
nop
mov rcx, qword [rsp + 0x40]
cmp rcx, 0xffffffffffffffff
je 0x140068f5d
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x140068fa7
mov rdx, qword [rsp + 0x58]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068f94
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400690ef
call fcn.140213ea4
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov rcx, qword [rbp - 0x80]
call qword [0x14021d808]
nop
jmp 0x140069114
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
test r14, r14
je 0x140069000
mov rdx, qword [rsp + 0x78]
sub rdx, r14
mov rax, r14
cmp rdx, 0x1000
jb 0x140068ff7
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006909a
mov rcx, r14
call fcn.140213ea4
nop
mov rcx, qword [rsp + 0x40]
cmp rcx, 0xffffffffffffffff
je 0x140069012
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x14006905c
mov rdx, qword [rsp + 0x58]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140069049
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400690ef
call fcn.140213ea4
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov rcx, qword [rbp - 0x80]
call qword [0x14021d808]
nop
jmp 0x140069114
test r14, r14
je 0x1400690aa
mov rdx, qword [rsp + 0x78]
sub rdx, r14
mov rax, r14
cmp rdx, 0x1000
jb 0x1400690a1
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400690a1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r14
call fcn.140213ea4
nop
mov rcx, qword [rsp + 0x40]
cmp rcx, 0xffffffffffffffff
je 0x1400690bc
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x140069109
mov rdx, qword [rsp + 0x58]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400690f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400690f6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140213ea4
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov rcx, qword [rbp - 0x80]
call qword [0x14021d808]
nop
mov rax, r12
mov rcx, qword [rbp + 0x1120]
xor rcx, rsp
call fcn.1402145d0
lea r11, [rsp + 0x1278]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rdx, str.Unsupported_protocol
lea rcx, [rbp - 0x70]
call fcn.14002c710
lea rdx, [0x14047ef40]
lea rcx, [rbp - 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
lea rdx, str.Only_HTTP_scheme_is_supported
lea rcx, [rbp - 0x70]
call fcn.14002c710
lea rdx, [0x14047ef40]
lea rcx, [rbp - 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebx, eax
mov r8, r14
lea rdx, str.Failed_to_get_address_info_of
lea rcx, [rbp + 0x40]
call fcn.14001b5b4
nop
mov r9, rax
lea r8, [0x140497808]
mov edx, ebx
lea rcx, [rbp + 0xb0]
call fcn.14002d990
lea rdx, [0x14047ee70]
lea rcx, [rbp + 0xb0]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea r8, [rbp + 0x20]
lea rdx, str.Unsupported_transfer_encoding:
lea rcx, [rbp + 0xb0]
call fcn.14001b5b4
nop
mov rdx, rax
lea rcx, [rbp - 0x70]
call fcn.14002c794
lea rdx, [0x14047efd0]
lea rcx, [rbp - 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
call fcn.140017ab4
nop
lea rdx, str.Invalid_chunk
lea rcx, [rbp - 0x70]
call fcn.14002c7e8
lea rdx, [0x14047efd0]
lea rcx, [rbp - 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
int3