Function at 0x140005c80
Capabilities:
Connect socket
Receive data
Receive data on socket
Resolve dns
Send data
Send data on socket
Send http request
Set socket configuration

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1188]
mov eax, 0x1288
call fcn.140029f70
sub rsp, rax
movaps xmmword [rsp + 0x1270], xmm6
movaps xmmword [rsp + 0x1260], xmm7
mov rax, qword [0x14003e180]
xor rax, rsp
mov qword [rbp + 0x1150], rax
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x38], rdx
mov rsi, rcx
mov qword [rbp - 0x40], rdx
mov r13, qword [rbp + 0x11f0]
mov edi, 1
mov dword [rbp], edi
lea rcx, [rbp + 0x60]
call fcn.140002c40
mov rcx, rax
mov r14, qword [rbp + 0x11f8]
imul rax, r14, 0xf4240
add rax, qword [rcx]
mov qword [rsp + 0x60], rax
mov r8, qword [rsi + 0x18]
lea rcx, [rsi + 8]
cmp qword [rsi + 0x20], 0xf
jbe 0x140005d1d
mov rcx, qword [rsi + 8]
cmp r8, 4
jne 0x140006c66
lea rdx, str.http
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140006c66
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
movups xmmword [rbp + 0x130], xmm0
movups xmmword [rbp + 0x140], xmm0
movzx eax, byte [rsi + 1]
mov ebx, 2
test al, al
jne 0x140005d64
mov eax, ebx
jmp 0x140005d72
cmp al, dil
jne 0x140006c22
mov eax, reloc.WS2_32.dll_socket
mov dword [rbp + 0x124], eax
mov dword [rbp + 0x128], edi
cmp qword [rsi + 0x98], 0
jne 0x140005d91
lea rdx, [0x140032788]
jmp 0x140005da2
lea rdx, [rsi + 0x88]
cmp qword [rdx + 0x18], 0xf
jbe 0x140005da2
mov rdx, qword [rdx]
lea rcx, [rsi + 0x68]
cmp qword [rsi + 0x80], 0xf
jbe 0x140005db4
mov rcx, qword [rsi + 0x68]
lea r9, [rbp - 0x30]
lea r8, [rbp + 0x120]
call qword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
jne 0x140006c87
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
mov rax, qword [sym.imp.WS2_32.dll_freeaddrinfo]
mov qword [rbp + 0xe0], rax
mov r15, qword [rbp - 0x30]
mov qword [rsp + 0x48], r15
mov qword [rbp + 0xe8], r15
xor eax, eax
movups xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], rax
movdqu xmmword [rbp - 0x18], xmm0
xor ecx, ecx
mov qword [rbp - 8], rcx
mov rdi, qword [r13 + 8]
sub rdi, qword [r13]
sar rdi, 6
test rdi, rdi
je 0x140005efd
movabs rax, 0x3ffffffffffffff
cmp rdi, rax
ja 0x140006cc5
shl rdi, 6
test rdi, rdi
jne 0x140005e3f
mov ebx, ecx
jmp 0x140005e7f
cmp rdi, 0x1000
jb 0x140005e74
lea rcx, [rdi + 0x27]
cmp rcx, rdi
jbe 0x140006ccb
call fcn.140028e70
test rax, rax
je 0x140005e6d
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140005e7f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.140028e70
mov rbx, rax
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x10], rbx
lea rax, [rdi + rbx]
mov qword [rbp - 8], rax
lea rax, [rbp - 0x18]
mov qword [rbp + 0x60], rax
mov r15, qword [r13 + 8]
mov rdi, qword [r13]
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x20], rbx
mov qword [rbp + 0x28], rbx
lea rax, [rbp - 0x18]
mov qword [rbp + 0x30], rax
cmp rdi, r15
je 0x140005eef
nop dword [rax + rax]
mov qword [rbp - 0x50], rbx
mov rdx, rdi
mov rcx, rbx
call fcn.14000dde0
nop
lea rcx, [rbx + 0x20]
lea rdx, [rdi + 0x20]
call fcn.14000dde0
nop
add rbx, 0x40
mov qword [rbp + 0x28], rbx
add rdi, 0x40
cmp rdi, r15
jne 0x140005ec0
mov qword [rbp - 0x10], rbx
mov ebx, 2
mov r15, qword [rsp + 0x48]
lea rax, [rbp - 0x18]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x40]
mov r8, qword [rsp + 0x50]
lea rdx, [rsi + 8]
lea rcx, [rbp + 8]
call fcn.1400051a0
nop
movzx eax, byte [rsi + 1]
test al, al
je 0x140005f33
cmp al, 1
jne 0x140006e79
mov ebx, reloc.WS2_32.dll_socket
mov edi, 1
mov r8d, 6
mov edx, edi
mov ecx, ebx
call qword [sym.imp.WS2_32.dll_socket]
mov rsi, rax
mov qword [rsp + 0x58], rax
cmp rax, 0xffffffffffffffff
je 0x140006cd1
mov dword [rbp - 0x24], edi
lea r8, [rbp - 0x24]
mov edx, 0x8004667e
mov rcx, rax
call qword [sym.imp.WS2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
je 0x140006cfc
movabs rbx, 0x431bde82d7b634db
test r14, r14
js 0x140005fc4
lea rcx, [rsp + 0x40]
call fcn.140002c40
mov r12, qword [rsp + 0x60]
mov rcx, r12
sub rcx, qword [rsp + 0x40]
mov rax, rbx
imul rcx
mov rbx, rdx
sar rbx, 0x12
mov rax, rbx
shr rax, 0x3f
add rbx, rax
test rbx, rbx
mov r13d, 0
cmovle rbx, r13
jmp 0x140005fd3
mov rbx, 0xffffffffffffffff
mov r12, qword [rsp + 0x60]
xor r13d, r13d
mov edi, dword [r15 + 0x10]
mov r15, qword [r15 + 0x20]
mov r8d, edi
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x140006011
nop
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2714
jne 0x140006066
mov r8d, edi
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x140005ff0
mov ebx, 1
mov rdi, qword [rbp + 0x10]
mov r15, qword [rbp + 8]
sub rdi, r15
je 0x140006146
test r14, r14
js 0x1400060cc
lea rcx, [rsp + 0x40]
call fcn.140002c40
mov rcx, r12
sub rcx, qword [rsp + 0x40]
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
test rdx, rdx
cmovle rdx, r13
jmp 0x1400060d3
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
jne 0x140006d5c
mov r8, rbx
mov ebx, 1
mov edx, ebx
lea rcx, [rsp + 0x58]
call fcn.140004a20
mov dword [rbp - 0x24], 4
lea rax, [rbp - 0x24]
mov qword [rsp + 0x20], rax
lea r9, [rbp]
mov edx, 0xffff
mov r8d, 0x1007
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_getsockopt]
cmp eax, 0xffffffff
je 0x140006d31
mov edx, dword [rbp]
test edx, edx
jne 0x140006c43
jmp 0x140006016
mov rdx, 0xffffffffffffffff
mov r8, rdx
mov edx, ebx
lea rcx, [rsp + 0x58]
call fcn.140004a20
xor r9d, r9d
mov r8d, edi
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_send]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x140006131
nop dword [rax + rax]
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2714
jne 0x140006128
xor r9d, r9d
mov r8d, edi
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_send]
mov ebx, eax
cmp eax, 0xffffffff
je 0x140006100
jmp 0x140006131
cmp ebx, 0xffffffff
je 0x140006d87
movsxd rax, ebx
add r15, rax
sub rdi, rax
je 0x140006146
mov ebx, 1
jmp 0x140006027
mov word [rbp - 0x28], 0xa0d
mov dword [rbp - 0x20], 0xa0d0a0d
mov rax, qword [rsp + 0x38]
xorps xmm0, xmm0
movups xmmword [rax + 8], xmm0
mov qword [rax + 0x18], r13
mov qword [rax + 0x20], recv
mov byte [rax + 8], 0
mov qword [rax + 0x28], r13
mov qword [rax + 0x30], r13
mov qword [rax + 0x38], r13
mov qword [rax + 0x40], r13
mov qword [rax + 0x48], r13
mov qword [rax + 0x50], r13
mov dword [rbp], 1
xor eax, eax
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x18], xmm1
mov qword [rbp - 8], r13
xor r13b, r13b
mov byte [rsp + 0x31], r13b
xor ebx, ebx
mov qword [rsp + 0x50], rbx
mov byte [rsp + 0x30], bl
mov r15d, ebx
mov dword [rbp - 0x24], eax
mov rdi, qword [rbp - 0x10]
mov r12, qword [rbp - 0x18]
jmp 0x1400061c2
xor ebx, ebx
test r14, r14
js 0x1400061fd
lea rcx, [rbp - 0x50]
call fcn.140002c40
mov rcx, qword [rsp + 0x60]
sub rcx, qword [rbp - 0x50]
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
test rdx, rdx
cmovle rdx, rbx
jmp 0x140006204
mov rdx, 0xffffffffffffffff
mov r8, rdx
xor edx, edx
lea rcx, [rsp + 0x58]
call fcn.140004a20
xor r9d, r9d
mov r8d, 0x1000
lea rdx, [rbp + 0x150]
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_recv]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x14000626b
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2714
jne 0x140006262
xor r9d, r9d
mov r8d, 0x1000
lea rdx, [rbp + 0x150]
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_recv]
mov ebx, eax
cmp eax, 0xffffffff
je 0x140006233
jmp 0x14000626b
cmp ebx, 0xffffffff
je 0x140006db2
movsxd r9, ebx
test ebx, ebx
je 0x140006b76
lea r8, [rbp + 0x150]
mov rdx, rdi
lea rcx, [rbp - 0x18]
call fcn.140011f60
mov r12, qword [rbp - 0x18]
test r13b, r13b
jne 0x140006757
mov r9, qword [rbp - 0x10]
mov qword [rsp + 0x40], r9
mov rax, r9
mov rcx, r9
sub rcx, r12
cmp rcx, 4
jl 0x1400062cf
lea r8, [r9 - 4]
mov rdx, r12
mov ecx, dword [rbp - 0x20]
cmp ecx, dword [r12]
je 0x1400062cc
nop
cmp rdx, r8
je 0x1400062cf
inc rdx
cmp ecx, dword [rdx]
jne 0x1400062c0
mov rax, rdx
cmp rax, r9
je 0x140006a2e
lea rbx, [rax + 2]
mov r8, rbx
mov rdx, r12
lea rcx, [rbp + 0xf0]
call fcn.1400102e0
nop
mov rdi, qword [rbp + 0xf0]
mov eax, dword [rbp + 0xf8]
mov r13, qword [rsp + 0x38]
mov dword [r13], eax
movzx eax, word [rbp + 0xfc]
mov word [r13 + 4], ax
lea rdx, [rbp + 0x100]
lea rcx, [r13 + 8]
call fcn.14000dd10
mov r8, rbx
mov rdx, rdi
lea rcx, [rbp + 0x90]
call fcn.140010550
nop
mov rdi, qword [rbp + 0x90]
movups xmm7, xmmword [rbp + 0x98]
movups xmmword [rbp + 0x68], xmm7
movups xmm6, xmmword [rbp + 0xa8]
movups xmmword [rbp + 0x78], xmm6
xor r10d, r10d
mov qword [rbp + 0xa8], r10
mov qword [rbp + 0xb0], recv
mov byte [rbp + 0x98], r10b
movups xmm2, xmmword [rbp + 0xb8]
movups xmmword [rbp + 0x40], xmm2
movups xmm1, xmmword [rbp + 0xc8]
movups xmmword [rbp + 0x50], xmm1
mov qword [rbp + 0xc8], r10
mov qword [rbp + 0xd0], recv
mov byte [rbp + 0xb8], r10b
lea rax, [rbp + 0x68]
movq rcx, xmm7
movdqa xmm0, xmm6
psrldq xmm0, 8
movq rdx, xmm0
cmp rdx, 0xf
cmova rax, rcx
movq r8, xmm6
cmp r8, 0x11
jne 0x140006445
movabs r9, 0x726566736e617274
cmp qword [rax], r9
jne 0x140006445
movabs r9, 0x6e69646f636e652d
cmp qword [rax + 8], r9
jne 0x140006445
cmp byte [rax + 0x10], 0x67
jne 0x140006445
lea rdx, [rbp + 0x40]
movq rcx, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0xf
cmova rdx, rcx
movq rax, xmm1
cmp rax, 7
jne 0x140006ddd
cmp dword [rdx], 0x6e756863
jne 0x140006ddd
cmp word [rdx + 4], 0x656b
jne 0x140006ddd
cmp byte [rdx + 6], 0x64
jne 0x140006ddd
mov byte [rsp + 0x30], 1
jmp 0x14000653d
lea rax, [rbp + 0x68]
cmp rdx, 0xf
cmova rax, rcx
cmp r8, 0xe
jne 0x14000653d
movabs rcx, 0x2d746e65746e6f63
cmp qword [rax], rcx
jne 0x14000653d
cmp dword [rax + 8], 0x676e656c
jne 0x14000653d
cmp word [rax + 0xc], 0x6874
jne 0x14000653d
lea rcx, [rbp + 0x40]
movq r8, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rdx, xmm0
cmp rdx, 0xf
cmova rcx, r8
movq rax, xmm1
add rcx, rax
lea rax, [rbp + 0x40]
cmp rdx, 0xf
cmova rax, r8
mov r9, r10
mov qword [rsp + 0x50], r10
cmp rax, rcx
je 0x1400064fd
nop word [rax + rax]
movsx r8d, byte [rax]
lea edx, [r8 - 0x30]
cmp dl, 9
ja 0x140006e10
lea edx, [r8 - 0x30]
movsxd r8, edx
lea rdx, [r9 + r9*4]
lea r9, [r8 + rdx*2]
mov qword [rsp + 0x50], r9
inc rax
cmp rax, rcx
jne 0x1400064d0
mov byte [rsp + 0x31], 1
mov qword [rbp + 0x60], r9
lea rcx, [r13 + 0x40]
mov rax, qword [rcx + 0x10]
sub rax, qword [rcx]
cmp r9, rax
jbe 0x14000653d
movabs rax, 0x7fffffffffffffff
cmp r9, rax
ja 0x140006e31
lea rdx, [rbp + 0x60]
call fcn.140010df0
movups xmm1, xmmword [rbp + 0x50]
movups xmm2, xmmword [rbp + 0x40]
xor r10d, r10d
movaps xmmword [rsp + 0x70], xmm7
movaps xmmword [rbp - 0x80], xmm6
mov qword [rbp + 0x78], r10
mov qword [rbp + 0x80], recv
mov byte [rbp + 0x68], 0
movaps xmmword [rbp - 0x70], xmm2
movaps xmmword [rbp - 0x60], xmm1
mov qword [rbp + 0x50], r10
mov qword [rbp + 0x58], recv
mov byte [rbp + 0x40], 0
lea rax, [r13 + 0x28]
mov rdx, qword [rax + 8]
cmp rdx, qword [rax + 0x10]
je 0x1400065a7
movups xmmword [rdx], xmm7
movups xmmword [rdx + 0x10], xmm6
mov r13d, recv
mov byte [rsp + 0x70], 0
movups xmmword [rdx + 0x20], xmm2
movups xmmword [rdx + 0x30], xmm1
mov edx, r13d
mov byte [rbp - 0x70], 0
add qword [rax + 8], 0x40
jmp 0x1400065bc
lea r8, [rsp + 0x70]
mov rcx, rax
call fcn.1400127d0
mov rdx, qword [rbp - 0x58]
mov r13, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x1400065f3
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400065ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006a19
call fcn.140028eac
cmp r13, 0xf
jbe 0x14000662d
lea rdx, [r13 + 1]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006627
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006a19
call fcn.140028eac
nop
mov rdx, qword [rbp + 0x58]
cmp rdi, rbx
je 0x140006697
cmp rdx, 0xf
jbe 0x14000666d
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006668
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006a20
call fcn.140028eac
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x58], recv
mov byte [rbp + 0x40], 0
lea rcx, [rbp + 0x98]
call fcn.140005bd0
mov r13, qword [rsp + 0x38]
jmp 0x140006321
cmp rdx, 0xf
jbe 0x1400066ce
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400066c9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006a20
call fcn.140028eac
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x58], recv
mov byte [rbp + 0x40], 0
lea rcx, [rbp + 0x98]
call fcn.140005bd0
lea rdx, [rbx + 2]
mov rdi, qword [rsp + 0x40]
cmp r12, rdx
je 0x140006711
sub rdi, rdx
mov r8, rdi
mov rcx, r12
call sub.VCRUNTIME140.dll_memmove
add rdi, r12
mov qword [rbp - 0x10], rdi
mov r13b, 1
mov rdx, qword [rbp + 0x118]
cmp rdx, 0xf
jbe 0x14000675b
inc rdx
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006750
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006a27
call fcn.140028eac
jmp 0x14000675b
mov rdi, qword [rbp - 0x10]
cmp byte [rsp + 0x30], 0
je 0x1400068fc
mov r8d, dword [rbp - 0x24]
xor ebx, ebx
movzx edx, word [rbp - 0x28]
test r15, r15
je 0x1400067e3
mov rax, rdi
sub rax, r12
mov rbx, r15
cmp rax, r15
cmovb rbx, rax
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rcx + 0x48]
mov r9, rbx
mov r8, r12
add rcx, 0x40
call fcn.140011f60
lea rdx, [r12 + rbx]
cmp r12, rdx
je 0x1400067bb
sub rdi, rdx
mov r8, rdi
mov rcx, r12
call sub.VCRUNTIME140.dll_memmove
add rdi, r12
mov qword [rbp - 0x10], rdi
sub r15, rbx
mov r8d, dword [rbp - 0x24]
movzx r8d, r8b
mov eax, 1
cmove r8d, eax
mov dword [rbp - 0x24], r8d
cmp r12, rdi
mov ebx, 0
je 0x1400061c2
jmp 0x14000676c
test r8b, r8b
je 0x14000682e
mov rax, rdi
sub rax, r12
cmp rax, 2
jb 0x1400061c2
cmp dx, word [r12]
jne 0x140006e37
xor al, al
mov dword [rbp - 0x24], eax
lea rax, [r12 + 2]
cmp r12, rax
je 0x14000682e
sub rdi, rax
mov r8, rdi
mov rdx, rax
mov rcx, r12
call sub.VCRUNTIME140.dll_memmove
add rdi, r12
mov qword [rbp - 0x10], rdi
movzx edx, word [rbp - 0x28]
mov rcx, rdi
mov rax, rdi
sub rax, r12
cmp rax, 2
jl 0x140006860
lea r8, [rdi - 2]
mov rax, r12
cmp dx, word [r12]
je 0x14000685d
nop dword [rax + rax]
cmp rax, r8
je 0x140006860
inc rax
cmp dx, word [rax]
jne 0x140006850
mov rcx, rax
cmp rcx, rdi
je 0x1400061c2
mov r15, rbx
cmp r12, rcx
je 0x1400068c5
mov rax, r12
nop dword [rax]
nop dword [rax + rax]
movzx r9d, byte [rax]
lea r8d, [r9 - 0x30]
cmp r8b, 9
ja 0x140006894
lea r8, [r9 - 0x30]
jmp 0x1400068b6
lea r8d, [r9 - 0x41]
cmp r8b, 5
ja 0x1400068a4
lea r8, [r9 - 0x37]
jmp 0x1400068b6
lea r8d, [r9 - 0x61]
cmp r8b, 5
ja 0x140006e58
lea r8, [r9 - 0x57]
shl r15, 4
add r15, r8
inc rax
cmp rax, rcx
jne 0x140006880
add rcx, 2
cmp r12, rcx
je 0x1400068ea
sub rdi, rcx
mov r8, rdi
mov rdx, rcx
mov rcx, r12
call sub.VCRUNTIME140.dll_memmove
add rdi, r12
mov qword [rbp - 0x10], rdi
movzx edx, word [rbp - 0x28]
test r15, r15
je 0x140006ad4
mov r8d, dword [rbp - 0x24]
jmp 0x140006770
mov r9, rdi
sub r9, r12
mov rbx, qword [rsp + 0x38]
mov rdx, qword [rbx + 0x48]
mov r8, r12
lea rcx, [rbx + 0x40]
call fcn.140011f60
cmp r12, rdi
cmovne rdi, r12
mov qword [rbp - 0x10], rdi
cmp byte [rsp + 0x31], 0
je 0x1400061c0
mov rax, qword [rbx + 0x48]
sub rax, qword [rbx + 0x40]
cmp rax, qword [rsp + 0x50]
jb 0x1400061c0
test r12, r12
je 0x14000697b
mov rdx, qword [rbp - 8]
sub rdx, r12
mov rax, r12
cmp rdx, 0x1000
jb 0x140006972
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006ba4
mov rcx, r12
call fcn.140028eac
nop
cmp rsi, 0xffffffffffffffff
je 0x14000698b
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x1400069d5
mov rdx, qword [rbp + 0x18]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400069c0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006bf5
call fcn.140028eac
xorps xmm0, xmm0
movdqu xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], 0
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
nop
mov rax, qword [rsp + 0x38]
mov rcx, qword [rbp + 0x1150]
xor rcx, rsp
call fcn.140028e50
movaps xmm6, xmmword [rsp + 0x1270]
movaps xmm7, xmmword [rsp + 0x1260]
add rsp, 0x1288
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
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
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
test r12, r12
je 0x140006a69
mov rdx, qword [rbp - 8]
sub rdx, r12
mov rax, r12
cmp rdx, 0x1000
jb 0x140006a60
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006ba4
mov rcx, r12
call fcn.140028eac
nop
cmp rsi, 0xffffffffffffffff
je 0x140006a79
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x140006ac3
mov rdx, qword [rbp + 0x18]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006aae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006bf5
call fcn.140028eac
xorps xmm0, xmm0
movdqu xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], 0
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
nop
jmp 0x1400069e1
test r12, r12
je 0x140006b0f
mov rdx, qword [rbp - 8]
sub rdx, r12
mov rax, r12
cmp rdx, 0x1000
jb 0x140006b06
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006ba4
mov rcx, r12
call fcn.140028eac
nop
cmp rsi, 0xffffffffffffffff
je 0x140006b1f
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x140006b65
mov rdx, qword [rbp + 0x18]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006b54
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006bf5
call fcn.140028eac
xorps xmm0, xmm0
movdqu xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], rbx
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
nop
jmp 0x1400069e1
test r12, r12
je 0x140006bb4
mov rdx, qword [rbp - 8]
sub rdx, r12
mov rax, r12
cmp rdx, 0x1000
jb 0x140006bab
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006bab
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r12
call fcn.140028eac
nop
cmp rsi, 0xffffffffffffffff
je 0x140006bc4
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x140006c11
mov rdx, qword [rbp + 0x18]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006bfc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006bfc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140028eac
xorps xmm0, xmm0
movdqu xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], 0
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
nop
jmp 0x1400069e1
lea rdx, str.Unsupported_protocol
lea rcx, [rbp + 0x20]
call fcn.140004910
lea rdx, [0x14003b428]
lea rcx, [rbp + 0x20]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea r9, str.Failed_to_connect
lea rcx, [rsp + 0x70]
call fcn.140002790
lea rdx, [0x14003b228]
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea rdx, str.Only_HTTP_scheme_is_supported
lea rcx, [rbp + 0x20]
call fcn.140004910
lea rdx, [0x14003b428]
lea rcx, [rbp + 0x20]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebx, eax
lea r8, [rsi + 0x68]
lea rdx, str.Failed_to_get_address_info_of
lea rcx, [rbp + 0x20]
call fcn.14000ee00
nop
mov r9, rax
mov edx, ebx
lea rcx, [rsp + 0x70]
call fcn.140002740
lea rdx, [0x14003b228]
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
call fcn.14000eaa0
int3
call fcn.140001420
nop
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_create_socket
lea rcx, [rsp + 0x70]
call fcn.140002790
lea rdx, [0x14003b228]
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
lea rcx, [rsp + 0x58]
call fcn.140004b80
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_get_socket_flags
lea rcx, [rsp + 0x70]
call fcn.140002790
lea rdx, [0x14003b228]
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_get_socket_option
lea rcx, [rsp + 0x70]
call fcn.140002790
lea rdx, [0x14003b228]
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_connect
lea rcx, [rsp + 0x70]
call fcn.140002790
lea rdx, [0x14003b228]
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_send_data
lea rcx, [rsp + 0x70]
call fcn.140002790
lea rdx, [0x14003b228]
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_read_data
lea rcx, [rsp + 0x70]
call fcn.140002790
lea rdx, [0x14003b228]
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea r8, [rbp + 0x40]
lea rdx, str.Unsupported_transfer_encoding:
lea rcx, [rsp + 0x70]
call fcn.14000ee00
nop
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.140007290
lea rdx, [0x14003b490]
lea rcx, [rbp + 0x20]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea rdx, str.Invalid_digit
lea rcx, [rbp + 0x20]
call fcn.140004b90
lea rdx, [0x14003b490]
lea rcx, [rbp + 0x20]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
call fcn.14000eaa0
nop
lea rdx, str.Invalid_chunk
lea rcx, [rbp + 0x20]
call fcn.140004b90
lea rdx, [0x14003b490]
lea rcx, [rbp + 0x20]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
lea rdx, str.Invalid_hex_digit
lea rcx, [rbp + 0x20]
call fcn.140004b90
lea rdx, [0x14003b490]
lea rcx, [rbp + 0x20]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea rdx, str.Unsupported_protocol
lea rcx, [rbp + 0x20]
call fcn.140004910
lea rdx, [0x14003b428]
lea rcx, [rbp + 0x20]
call sub.VCRUNTIME140.dll__CxxThrowException
int3