Function at 0x140051ef0
Capabilities:
Set socket configuration

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0xc0
lea rbp, [rsp + 0x80]
vmovaps xmmword [rbp + 0x30], xmm6
mov qword [rbp + 0x28], 0xfffffffffffffffe
mov ebx, r9d
mov rdi, r8
mov r15, rdx
mov r12, rcx
mov rcx, qword [rdx]
lea rax, vtable.type_info.0
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], 0
lea r8, [0x140052760]
lea rdx, [rbp - 0x40]
mov r9, r15
call fcn.14002d9a0
mov r14, rax
mov qword [r12], rax
lea rsi, [r12 + 8]
mov dword [r12 + 0x40], 2
mov byte [r12 + 0x44], 0
vxorps xmm6, xmm6, xmm6
vmovups xmmword [r12 + 0x50], xmm6
mov dword [r12 + 0x60], 0
mov qword [r12 + 0x48], 2
lea rax, [r12 + 0x68]
lea rcx, [0x1400910b0]
mov qword [r12 + 0x90], rcx
lea rcx, fcn.140001010
mov qword [r12 + 0x80], rcx
mov qword [r12 + 0x70], r15
mov qword [r12 + 0x88], rax
lea rax, [0x140091290]
mov qword [r12 + 0x98], rax
mov qword [r12 + 8], 0xffffffffffffffff
mov byte [r12 + 0x10], 0
lea r15, [r14 + 0x50]
vmovups xmmword [r12 + 0x18], xmm6
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [r14 + 0x78]
mov qword [r12 + 0x30], rax
mov qword [r12 + 0x38], 0
mov rax, qword [r14 + 0x78]
test rax, rax
je 0x140052004
mov qword [rax + 0x30], rsi
mov qword [r14 + 0x78], rsi
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
vmovaps xmmword [rbp + 0x10], xmm6
mov qword [rbp + 0x20], 0
cmp word [rdi], 2
mov eax, 2
mov r14d, 0x17
cmove r14d, eax
mov qword [rbp - 0x10], r12
mov rcx, qword [r12]
add rcx, 0x28
lea rax, [rbp + 0x10]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 6
mov dword [rsp + 0x20], 1
lea rdx, [rbp - 0x40]
mov r8, rsi
mov r9d, r14d
call fcn.1400533a0
mov rax, qword [rbp - 0x30]
test al, 1
jne 0x14005209b
mov r12, qword [rbp - 0x10]
lea rax, [r12 + 0x50]
mov dword [r12 + 0x40], r14d
mov byte [r12 + 0x44], 0
vxorps xmm0, xmm0, xmm0
vmovups xmmword [rax], xmm0
mov dword [rax + 0x10], 0
mov qword [r12 + 0x48], 2
jmp 0x1400520ab
cmp rax, 1
mov r12, qword [rbp - 0x10]
jne 0x1400520ab
cmp dword [rbp - 0x40], 0
je 0x140052071
mov rcx, qword [rbp + 0x20]
mov edx, ecx
and edx, 1
lea rax, str.W:3rdParty_boost_1_85_0_boost_asiodetailwin_iocp_socket_service.hpp
or rax, rdx
cmp rcx, 2
cmovb rax, rcx
mov qword [rbp + 0x20], rax
lea r14, str.W:3rdParty_boost_1_85_0_boost_asio_basic_socket_acceptor.hpp
mov qword [rbp - 8], r14
lea r15, str.__cdecl_boost::asio::basic_socket_acceptor_boost::asio::ip::tcp_::basic_socket_acceptor_ExecutionContext___const_endpoint_type___bool__constraint_t_is_convertible_ExecutionContext___execution_context__::value____Protocol__boost::asio::ip::tcp__Executor__boost::asio::any_io_executor__ExecutionContext__boost::asio::io_context_
mov qword [rbp], r15
movabs rcx, 0x500000123
mov qword [rbp + 8], rcx
test rdx, rdx
je 0x140052107
cmp rax, 1
jne 0x14005245b
cmp dword [rbp + 0x10], 0
jne 0x14005245b
mov rcx, qword [rsi]
test bl, bl
je 0x140052232
mov dword [rbp - 0x40], 1
cmp rcx, 0xffffffffffffffff
je 0x140052168
mov dword [rsp + 0x20], 4
lea r9, [rbp - 0x40]
mov edx, 0xffff
mov r8d, 4
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x1400521b4
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebx, eax
mov rax, qword [0x1400c1358]
shr rax, 1
movabs rcx, 0x595588bd12bf6fe8
cmp rax, rcx
jne 0x1400521c3
test ebx, ebx
setne al
jmp 0x1400521d6
mov rax, qword [0x1400c1358]
shr rax, 1
movabs rcx, 0x595588bd12bf6fe8
cmp rax, rcx
je 0x1400521a0
mov rax, qword [0x1400c1350]
lea rcx, [0x1400c1350]
mov edx, 0x2719
call qword [rax + 0x30]
mov ecx, 2
test al, al
je 0x1400521a5
mov ecx, 3
mov qword [rbp + 0x10], 0x2719
mov ebx, 0x2719
jmp 0x1400521e7
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x10], xmm0
xor ebx, ebx
xor eax, eax
jmp 0x1400521ff
mov rax, qword [0x1400c1350]
lea rcx, [0x1400c1350]
mov edx, ebx
call qword [rax + 0x30]
movzx ecx, al
or rcx, 2
mov dword [rbp + 0x10], ebx
mov dword [rbp + 0x14], 0
lea rax, [0x1400c1350]
mov qword [rbp + 0x18], rax
and ecx, 1
lea rax, str.W:3rdParty_boost_1_85_0_boost_asiodetailwin_iocp_socket_service.hpp
or rax, rcx
mov qword [rbp + 0x20], rax
mov qword [rbp - 8], r14
mov qword [rbp], r15
movabs rcx, 0x700000128
mov qword [rbp + 8], rcx
test al, 1
je 0x14005222f
cmp rax, 1
jne 0x14005249d
test ebx, ebx
jne 0x14005249d
mov rcx, qword [rsi]
cmp rcx, 0xffffffffffffffff
je 0x140052280
cmp word [rdi], 2
mov eax, 0x10
mov r8d, 0x1c
cmove r8d, eax
mov rdx, rdi
call qword [sym.imp.WS2_32.dll_bind]
test eax, eax
je 0x1400522cc
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edi, eax
mov rax, qword [0x1400c1358]
shr rax, 1
movabs rcx, 0x595588bd12bf6fe8
cmp rax, rcx
jne 0x1400522db
test edi, edi
setne al
jmp 0x1400522ee
mov rax, qword [0x1400c1358]
shr rax, 1
movabs rcx, 0x595588bd12bf6fe8
cmp rax, rcx
je 0x1400522b8
mov rax, qword [0x1400c1350]
lea rcx, [0x1400c1350]
mov edx, 0x2719
call qword [rax + 0x30]
mov ecx, 2
test al, al
je 0x1400522bd
mov ecx, 3
mov qword [rbp + 0x10], 0x2719
mov edi, 0x2719
jmp 0x1400522ff
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x10], xmm0
xor edi, edi
xor eax, eax
jmp 0x140052317
mov rax, qword [0x1400c1350]
lea rcx, [0x1400c1350]
mov edx, edi
call qword [rax + 0x30]
movzx ecx, al
or rcx, 2
mov dword [rbp + 0x10], edi
mov dword [rbp + 0x14], 0
lea rax, [0x1400c1350]
mov qword [rbp + 0x18], rax
and ecx, 1
lea rax, str.W:3rdParty_boost_1_85_0_boost_asiodetailwin_iocp_socket_service.hpp
or rax, rcx
mov qword [rbp + 0x20], rax
mov qword [rbp - 8], r14
mov qword [rbp], r15
movabs rcx, 0x50000012b
mov qword [rbp + 8], rcx
test al, 1
je 0x140052347
cmp rax, 1
jne 0x14005247c
test edi, edi
jne 0x14005247c
mov rcx, qword [rsi]
cmp rcx, 0xffffffffffffffff
je 0x14005238b
mov edx, 0x7fffffff
call qword [sym.imp.WS2_32.dll_listen]
test eax, eax
je 0x140052420
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, eax
mov rax, qword [0x1400c1358]
shr rax, 1
movabs rcx, 0x595588bd12bf6fe8
cmp rax, rcx
jne 0x1400523d2
test esi, esi
setne al
jmp 0x1400523e5
mov rax, qword [0x1400c1358]
shr rax, 1
movabs rcx, 0x595588bd12bf6fe8
cmp rax, rcx
je 0x1400523c3
mov rax, qword [0x1400c1350]
lea rcx, [0x1400c1350]
mov edx, 0x2719
call qword [rax + 0x30]
mov ecx, 2
test al, al
je 0x1400523c8
mov ecx, 3
mov qword [rbp + 0x10], 0x2719
jmp 0x1400523f6
mov rax, qword [0x1400c1350]
lea rcx, [0x1400c1350]
mov edx, esi
call qword [rax + 0x30]
movzx ecx, al
or rcx, 2
mov dword [rbp + 0x10], esi
mov dword [rbp + 0x14], 0
lea rax, [0x1400c1350]
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], rcx
mov qword [rbp - 8], r14
mov qword [rbp], r15
movabs rax, 0x50000012e
mov qword [rbp + 8], rax
test cl, 1
jne 0x14005243a
mov rax, r12
vmovaps xmm6, xmmword [rbp + 0x30]
add rsp, 0xc0
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret
lea r8, str.listen
lea rcx, [rbp - 0x40]
lea rdx, [rbp + 0x10]
call fcn.14002b5d0
lea rcx, [rbp - 0x40]
lea rdx, [rbp - 8]
call fcn.14002b9a0
lea r8, str.open
lea rcx, [rbp - 0x40]
lea rdx, [rbp + 0x10]
call fcn.14002b5d0
lea rcx, [rbp - 0x40]
lea rdx, [rbp - 8]
call fcn.14002b9a0
lea r8, [0x14009ed1f]
lea rcx, [rbp - 0x40]
lea rdx, [rbp + 0x10]
call fcn.14002b5d0
lea rcx, [rbp - 0x40]
lea rdx, [rbp - 8]
call fcn.14002b9a0
lea r8, str.set_option
lea rcx, [rbp - 0x40]
lea rdx, [rbp + 0x10]
call fcn.14002b5d0
lea rcx, [rbp - 0x40]
lea rdx, [rbp - 8]
call fcn.14002b9a0
int3