Function at 0x1400a8240
Capabilities:
Set socket configuration

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x140391620]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov r14, rcx
mov rdx, qword [rcx + 0x30]
call fcn.14009caf0
cmp dword [rax + 4], 0
je 0x1400a859c
mov rdx, qword [r14 + 0x30]
call fcn.14009caf0
mov edx, 0xf
mov ecx, 0x16
cmp dword [rax + 4], 1
cmovne edx, ecx
lea rcx, [rbp - 0x41]
call fcn.1400a6980
nop
mov rbx, qword [r14 + 0x268]
mov ecx, 0x200
call fcn.140255070
mov rsi, rax
mov qword [rbp - 0x11], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, vtable.std::_Ref_count_obj2_class_boost::asio::ssl::stream_class_boost::asio::basic_stream_socket_class_boost::asio::ip::tcp__class_boost::asio::any_io_executor___.0
mov qword [rsi], rax
lea rdi, [rsi + 0x10]
mov qword [rbp - 0x21], rdi
lea rcx, [rdi + 8]
mov rdx, rbx
call fcn.1400b7b40
nop
mov r8, qword [rdi + 0x80]
mov qword [rbp + 7], r8
mov rax, qword [rdi + 0x90]
mov qword [rbp + 0x17], rax
lea rdx, [rdi + 0x70]
lea rcx, [rbp - 9]
call qword [r8 + 8]
nop
mov rax, qword [rdi + 0x98]
mov qword [rbp + 0x1f], rax
lea rcx, [rdi + 0xa0]
lea r8, [rbp - 9]
mov rdx, qword [rbp - 0x39]
call fcn.1400b9380
nop
lea rcx, [rbp - 9]
mov rax, qword [rbp + 7]
call qword [rax]
nop
mov qword [r14 + 0x2b0], rdi
mov rbx, qword [r14 + 0x2b8]
mov qword [r14 + 0x2b8], rsi
mov edi, 0xffffffff
test rbx, rbx
je 0x1400a8387
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1400a8387
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, edi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400a8387
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov rcx, qword [r14 + 0x2b0]
lea rax, [rcx + 8]
mov qword [r14 + 0x280], rax
call fcn.1400b3fc0
lea rdx, str.ROOT
xor ecx, ecx
call qword [sym.imp.CRYPT32.dll_CertOpenSystemStoreW]
mov r15, rax
test rax, rax
jne 0x1400a846a
mov rcx, qword [rbp - 0x39]
test rcx, rcx
je 0x1400a8429
call fcn.14010a6d0
test rax, rax
je 0x1400a83e4
mov r8, qword [rax]
lea edx, [r15 + 1]
mov rcx, rax
call qword [r8]
xor edx, edx
mov rcx, qword [rbp - 0x39]
call fcn.14010ac30
xor edx, edx
mov rcx, qword [rbp - 0x39]
call fcn.14010a6e0
test rax, rax
je 0x1400a8420
xor edx, edx
mov rcx, qword [rbp - 0x39]
call fcn.14010a6e0
test rax, rax
je 0x1400a8412
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
xor r8d, r8d
xor edx, edx
mov rcx, qword [rbp - 0x39]
call fcn.14010ac40
mov rcx, qword [rbp - 0x39]
call fcn.14010a4e0
mov rbx, qword [rbp - 0x29]
test rbx, rbx
je 0x1400a8692
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1400a8692
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x1400a8692
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
jmp 0x1400a8692
call fcn.140154290
mov r12, rax
xor edx, edx
mov rcx, r15
call qword [sym.imp.CRYPT32.dll_CertEnumCertificatesInStore]
mov rbx, rax
test rax, rax
je 0x1400a84ce
nop word [rax + rax]
lea rdx, [rbx + 8]
mov r8d, dword [rbx + 0x10]
xor ecx, ecx
call fcn.14014f2c0
mov rsi, rax
test rax, rax
je 0x1400a84ba
mov rdx, rax
mov rcx, r12
call fcn.140153fa0
mov rcx, rsi
call fcn.14014f210
mov rdx, rbx
mov rcx, r15
call qword [sym.imp.CRYPT32.dll_CertEnumCertificatesInStore]
mov rbx, rax
test rax, rax
jne 0x1400a8490
mov rcx, rbx
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
xor edx, edx
mov rcx, r15
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
mov rdx, r12
mov rcx, qword [rbp - 0x39]
call fcn.14010ab70
nop
mov rcx, qword [rbp - 0x39]
test rcx, rcx
je 0x1400a8560
call fcn.14010a6d0
test rax, rax
je 0x1400a851b
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
xor edx, edx
mov rcx, qword [rbp - 0x39]
call fcn.14010ac30
xor edx, edx
mov rcx, qword [rbp - 0x39]
call fcn.14010a6e0
test rax, rax
je 0x1400a8557
xor edx, edx
mov rcx, qword [rbp - 0x39]
call fcn.14010a6e0
test rax, rax
je 0x1400a8549
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
xor r8d, r8d
xor edx, edx
mov rcx, qword [rbp - 0x39]
call fcn.14010ac40
mov rcx, qword [rbp - 0x39]
call fcn.14010a4e0
mov rbx, qword [rbp - 0x29]
test rbx, rbx
je 0x1400a8590
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1400a8590
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x1400a8590
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov rax, qword [r14 + 0x280]
jmp 0x1400a8642
mov rdi, qword [r14 + 0x268]
mov ecx, 0xa8
call fcn.140255070
mov rsi, rax
mov qword [rbp - 0x21], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, vtable.std::_Ref_count_obj2_class_boost::asio::basic_stream_socket_class_boost::asio::ip::tcp__class_boost::asio::any_io_executor__.0
mov qword [rsi], rax
lea rbx, [rsi + 0x10]
mov rdx, rdi
mov rcx, rbx
call fcn.1400b7b40
nop
mov qword [rbp - 0x21], rbx
mov qword [rbp - 0x19], rsi
lea rdx, [rbp - 0x21]
lea rcx, [r14 + 0x2c0]
call fcn.14008b980
mov rcx, qword [rbp - 0x19]
test rcx, rcx
je 0x1400a8634
mov edi, 0xffffffff
mov eax, edi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1400a8634
mov rbx, qword [rbp - 0x19]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x1400a8634
mov rcx, qword [rbp - 0x19]
mov rax, qword [rcx]
call qword [rax + 8]
mov rax, qword [r14 + 0x2c0]
mov qword [r14 + 0x280], rax
mov dword [rbp - 0x49], 0x2710
mov rcx, qword [rax + 8]
mov dword [rsp + 0x20], 4
lea r9, [rbp - 0x49]
mov edx, 0xffff
mov r8d, 0x1006
call qword [sym.imp.WS2_32.dll_setsockopt]
mov rax, qword [r14 + 0x280]
mov rcx, qword [rax + 8]
mov dword [rsp + 0x20], 4
lea r9, [rbp - 0x49]
mov edx, 0xffff
mov r8d, 0x1005
call qword [sym.imp.WS2_32.dll_setsockopt]
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.140255050
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret