Function at 0x140001390
Capabilities:
Connect socket
Initialize winsock library
Resolve dns
Send data
Send data on socket
Send http request
Send http request with host header

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x178]
sub rsp, 0x250
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x140006008]
xor rax, rsp
mov qword [rbp + 0x130], rax
mov r15, rcx
xor ebx, ebx
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
mov ecx, 0x202
lea rdx, [rbp - 0x70]
call qword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
jne 0x140001848
xor r8d, r8d
lea edx, [rbx + 1]
mov edi, 2
mov ecx, edi
call qword [sym.imp.WS2_32.dll_socket]
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x140001842
mov word [rsp + 0x78], di
lea ecx, [rbx + 0x50]
call qword [sym.imp.WS2_32.dll_htons]
mov word [rsp + 0x7a], ax
mov qword [rsp + 0x30], rbx
mov rcx, r15
cmp qword [r15 + 0x18], 0x10
jb 0x140001438
mov rcx, qword [r15]
lea r9, [rsp + 0x30]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
jne 0x140001839
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx + 0x20]
mov edx, dword [rax + 4]
mov dword [rsp + 0x7c], edx
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x78]
mov rcx, r12
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x140001839
mov r13, qword [r15 + 0x10]
movabs rdi, 0x7fffffffffffffff
mov rax, rdi
sub rax, r13
cmp rax, 0x16
jb 0x14000187f
cmp qword [r15 + 0x18], 0x10
jb 0x1400014ab
mov r15, qword [r15]
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x48], xmm1
lea rax, [r13 + 0x16]
mov esi, recv
lea r14, [rsp + 0x38]
cmp rax, rsi
jbe 0x140001556
mov rsi, rax
or rsi, 0xf
cmp rsi, rdi
jbe 0x140001513
mov rsi, rdi
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.140002aec
test rax, rax
je 0x140001654
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
lea rax, [r13 + 0x16]
jmp 0x140001551
mov ecx, socket
cmp rsi, rcx
cmovb rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x14000153b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140001885
jmp 0x1400014f0
test rcx, rcx
je 0x14000154e
call fcn.140002aec
mov r14, rax
lea rax, [r13 + 0x16]
jmp 0x140001551
mov r14, rbx
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rsi
movups xmm0, xmmword [str.GET___HTTP_1.1_r_nHost:]
movups xmmword [r14], xmm0
mov eax, dword [0x140004588]
mov dword [r14 + 0x10], eax
movzx eax, word [0x14000458c]
mov word [r14 + 0x14], ax
lea rcx, [r14 + 0x16]
mov r8, r13
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov byte [r14 + r13 + 0x16], bl
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov rax, rdx
sub rax, rcx
cmp rax, 4
jb 0x1400015d6
lea rax, [rcx + 4]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x38]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x38]
mov dword [rax + rcx], 0xa0d0a0d
mov byte [rax + rcx + 4], 0
lea rax, [rsp + 0x38]
jmp 0x1400015ee
mov qword [rsp + 0x20], 4
mov edx, 4
lea rcx, [rsp + 0x38]
call fcn.1400024e0
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x68], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], sendto
mov byte [rax], 0
mov rdx, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x140001660
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000165b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000165b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140002b28
mov rsi, qword [rsp + 0x68]
lea r14, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae r14, qword [rsp + 0x58]
test rsi, rsi
je 0x1400016a6
mov rax, rbx
nop
lea rdx, [rax + r14]
xor r9d, r9d
mov r8d, esi
mov rcx, r12
call qword [sym.imp.WS2_32.dll_send]
cmp eax, 0xffffffff
je 0x1400016c4
add ebx, eax
sub esi, eax
movsxd rax, ebx
cmp rax, qword [rsp + 0x68]
jb 0x140001680
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1400016da
imul rax, rax, 0x64
jmp 0x1400016f8
mov rcx, r12
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
xor bl, bl
jmp 0x1400017f4
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rcx, rcx, 0x3b9aca00
add rax, rcx
movabs rcx, 0x7ffffffffa0a1eff
cmp rax, rcx
jge 0x14000170e
lea rdi, [rax + 0x5f5e100]
movabs rsi, 0x311cdad160000
movabs r14, 0x112e0be826d694b3
movsd xmm6, qword [0x140004638]
nop word [rax + rax]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x14000174e
imul rbx, rax, 0x64
jmp 0x14000176f
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
mov rbx, rax
imul rax, rcx, 0x3b9aca00
add rbx, rax
cmp rbx, rdi
jge 0x1400017e3
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
imul rdx, rax, 0x64
mov rax, rdi
sub rax, rbx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
comisd xmm0, xmm6
seta r8b
test r8b, r8b
lea rcx, [rdx + rsi]
jne 0x1400017a1
lea rcx, [rax + rdx]
add rax, rdx
add rdx, rsi
test r8b, r8b
cmove rdx, rax
mov rax, r14
imul rdx
sar rdx, 0x1a
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rsp + 0x38], rdx
imul eax, edx, 0x3b9aca00
sub ecx, eax
mov dword [rsp + 0x40], ecx
lea rcx, [rsp + 0x38]
call qword [sym.imp.MSVCP140.dll__Thrd_sleep]
jmp 0x140001730
mov rcx, r12
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov bl, 1
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x140001834
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000182f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000182f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140002b28
movzx eax, bl
jmp 0x14000184a
mov rcx, r12
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
xor al, al
mov rcx, qword [rbp + 0x130]
xor rcx, rsp
call fcn.140002830
lea r11, [rsp + 0x250]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400011a0
int3
call fcn.140001100
int3