Function at 0x140047fa0
Capabilities:
Get socket status

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f0]
sub rsp, 0x2f0
mov rax, qword [0x14008fd48]
xor rax, rsp
mov qword [rbp + 0x1e0], rax
mov r12, r9
mov r15, r8
mov rsi, rdx
mov r13, rcx
mov rax, qword [rbp + 0x240]
mov qword [rsp + 0x40], rax
xor r14b, r14b
mov rax, qword [rcx]
cmp rax, 0xffffffffffffffff
nop
je 0x14004808b
test r15, r15
je 0x14004808b
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140048026
imul rbx, rax, 0x64
jmp 0x140048042
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
mov qword [rbp - 0x28], rsi
mov dword [rbp - 0x30], 1
mov dword [rbp - 0x70], 0
mov dword [rbp - 0x6c], 0x2710
nop dword [rax + rax]
lea ecx, [rsi + 1]
lea rax, [rbp - 0x70]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp - 0x30]
call qword [sym.imp.WS2_32.dll_select]
test eax, eax
jns 0x1400480bf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
cmp dword [rax], 4
je 0x140048060
movzx eax, r14b
mov rcx, qword [rbp + 0x1e0]
xor rcx, rsp
call fcn.140069a90
lea r11, [rsp + 0x2f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
jne 0x14004813e
call sub.MSVCP140.dll__Query_perf_frequency
mov rdi, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rdi, 0x989680
jne 0x1400480dd
imul rcx, rax, 0x64
jmp 0x1400480f8
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rcx, rax
sub rcx, rbx
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rax, r12, 0x3e8
cmp rdx, rax
jg 0x14004808b
mov qword [rsp + 0x38], 1
lea rcx, [rsp + 0x38]
call fcn.140011a60
jmp 0x140048042
cmp r15, 1
sete bl
mov byte [rsp + 0x30], 0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x68], xmm0
movups xmmword [rbp - 0x58], xmm0
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x38], rax
mov rdi, qword [rsp + 0x40]
mov rax, qword [rdi + 0x28]
mov r11, qword [rax]
mov rax, qword [rdi + 0x20]
mov r10, qword [rax]
mov rax, qword [rdi + 0x18]
mov r9, qword [rax]
mov rax, qword [rdi + 0x10]
mov r8, qword [rax]
mov rax, qword [rdi + 8]
mov rcx, qword [rax]
mov rax, qword [rdi]
mov rdx, qword [rax]
lea rax, vtable.httplib::detail::SSLSocketStream.0
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rdx
mov qword [rbp - 0x58], rcx
mov qword [rbp - 0x50], r8
mov qword [rbp - 0x48], r9
mov qword [rbp - 0x40], r10
mov qword [rbp - 0x38], r11
xor r9d, r9d
lea edx, [r9 + 0x4e]
lea r8d, [r9 + 4]
call sub.libssl_3_x64.dll_SSL_ctrl
nop
mov rcx, qword [rdi + 0x30]
lea rax, [rcx + 8]
lea rdx, vtable.std::_Func_impl_no_alloc_class__lambda_19360138a36c0fef71838a2fe71c257f___void__struct_httplib::Request____ptr64_.0
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x50]
mov qword [rbp - 0x78], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x30]
movzx r8d, bl
lea rdx, [rbp - 0x68]
mov rcx, qword [rcx]
call fcn.1400549a0
movzx r14d, al
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x140048221
mov rax, qword [rcx]
lea rdx, [rsp + 0x50]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
nop
test r14b, r14b
je 0x14004808b
cmp byte [rsp + 0x30], 0
jne 0x14004808b
dec r15
mov rax, qword [r13]
jmp 0x140047ff6