Function at 0x14011ca30
Capabilities:
Get socket status
Set socket configuration

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x2d8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x250], 0xfffffffffffffffe
mov rsi, rcx
mov al, 1
xchg byte [rcx + 0x98], al
lea rax, vtable.std::_Func_impl_no_alloc_class__private:_bool___cdecl_httplib::Server::listen_internal_void____ptr64::_1::_lambda_1___void___.0
mov qword [rbp + 0x1f8], rax
mov qword [rbp + 0x200], rcx
lea rax, [rbp + 0x1f8]
mov qword [rbp + 0x230], rax
mov byte [rbp + 0x238], 1
mov rcx, qword [rcx + 0x40]
test rcx, rcx
je 0x14011cd11
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov qword [rbp + 0x248], rax
lea r13, [rbp + 0x240]
lea rdi, [rbp - 0x50]
mov r14, qword [sym.imp.WS2_32.dll_select]
jmp 0x14011cad0
mov rcx, qword [rbp + 0x248]
mov rax, qword [rcx]
call qword [rax + Ordinal_26]
nop word cs:[rax + rax]
mov rax, qword [rsi + 0x48]
mov r12b, 1
cmp rax, 0xffffffffffffffff
je 0x14011cca2
mov rbx, qword [rsi + 0x48]
movdqu xmm0, xmmword [rsi + 0x80]
mov qword [rbp - 0x48], rbx
mov dword [rbp - 0x50], 1
pshufd xmm0, xmm0, 0xe8
movq qword [rbp + 0x240], xmm0
inc ebx
nop word [rax + rax]
mov qword [rsp + 0x20], r13
mov ecx, ebx
mov rdx, rdi
xor r8d, r8d
xor r9d, r9d
call r14
test eax, eax
jns 0x14011cb40
call fcn.14022ff0c
cmp dword [rax], 4
je 0x14011cb10
jmp 0x14011cb46
je 0x14011cab9
mov rcx, qword [rsi + 0x48]
xor edx, edx
xor r8d, r8d
call qword [sym.imp.WS2_32.dll_accept]
cmp rax, 0xffffffffffffffff
je 0x14011cc50
mov rbx, rax
imul ecx, dword [rsi + 0x60], 0x3e8
movabs r12, 0x20c49ba5e353f7cf
mov rax, r12
imul qword [rsi + 0x68]
mov rax, rdx
shr rax, 0x3f
shr rdx, 7
add edx, eax
add edx, ecx
mov dword [rbp - 0x50], edx
mov dword [rsp + 0x20], 4
mov rcx, rbx
mov edx, 0xffff
mov r8d, 0x1006
mov r9, rdi
mov r15, qword [sym.imp.WS2_32.dll_setsockopt]
call r15
imul ecx, dword [rsi + 0x70], 0x3e8
mov rax, r12
imul qword [rsi + 0x78]
mov rax, rdx
shr rax, 0x3f
shr rdx, 7
add edx, eax
add edx, ecx
mov dword [rbp - 0x50], edx
mov dword [rsp + 0x20], 4
mov rcx, rbx
mov edx, 0xffff
mov r8d, 0x1005
mov r9, rdi
call r15
lea rax, vtable.std::_Func_impl_no_alloc_class__private:_bool___cdecl_httplib::Server::listen_internal_void____ptr64::_1::_lambda_2___void___.0
mov qword [rbp + 0x1b8], rax
mov qword [rbp + 0x1c0], rsi
mov qword [rbp + 0x1c8], rbx
lea rdx, [rbp + 0x1b8]
mov qword [rbp + 0x1f0], rdx
mov rcx, qword [rbp + 0x248]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
test al, al
jne 0x14011cad0
mov rcx, rbx
mov edx, 2
call qword [sym.imp.WS2_32.dll_shutdown]
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
jmp 0x14011cad0
call fcn.14022ff0c
cmp dword [rax], 0x18
jne 0x14011cc6f
mov qword [rbp - 0x50], 1
mov rcx, rdi
call fcn.1400f5840
jmp 0x14011cad0
call fcn.14022ff0c
cmp dword [rax], 4
je 0x14011cad0
call fcn.14022ff0c
cmp dword [rax], 0xb
je 0x14011cad0
mov rax, qword [rsi + 0x48]
cmp rax, 0xffffffffffffffff
je 0x14011cca2
mov rcx, qword [rsi + 0x48]
call qword [sym.imp.WS2_32.dll_closesocket]
xor r12d, r12d
mov rcx, qword [rbp + 0x248]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp + 0x248]
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
cmp byte [rbp + 0x238], 0
je 0x14011ccdb
mov rcx, qword [rbp + 0x230]
test rcx, rcx
je 0x14011cd16
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbp + 0x230]
test rcx, rcx
je 0x14011ccfa
lea rax, [rbp + 0x1f8]
cmp rcx, rax
setne dl
mov rax, qword [rcx]
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
mov eax, r12d
add rsp, 0x2d8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.1401439b4
call fcn.1401439b4
int3