Function at 0x14012aec0
Capabilities:
Set socket configuration

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov qword [rbp + 0x30], 0xfffffffffffffffe
mov r14, rdx
mov rsi, rcx
mov rcx, qword [rcx]
call fcn.140129d80
test al, al
jne 0x14012b323
movdqa xmm0, xmmword [0x1401b6b30]
movdqu xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], al
mov edx, 1
lea ecx, [rdx + 1]
lea r8d, [rdx + 5]
call qword [sym.imp.WS2_32.dll_socket]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x14012af6e
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, [rbp - 0x80]
call fcn.14012e2d0
nop
mov r8, rax
lea rdx, str.socket_failed_
lea rcx, [rsp + 0x40]
call fcn.14001af10
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140037ca0
lea rcx, [rsp + 0x40]
call fcn.14001d000
nop
lea rcx, [rbp - 0x80]
call fcn.14001d000
jmp 0x14012b3f2
xor r12d, r12d
mov qword [rbp + 0x18], r12
mov rax, qword [0x14028c608]
lea rcx, [rbp]
mov qword [rsp + 0x38], rcx
lea rcx, [rbp + 0xc0]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], 0x20
mov dword [rsp + 0x20], 0x20
xor r9d, r9d
lea r8, [rbp + 0x40]
mov rdx, rdi
mov rcx, qword [rsi + 8]
call rax
cmp eax, 1
jne 0x14012afcc
lea rdx, str.AcceptEx_returned_immediately__which_is_not_supported.
lea rcx, [rsp + 0x60]
call fcn.14005ae50
jmp 0x14012b3e9
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e5
je 0x14012b015
mov edx, eax
lea rcx, [rsp + 0x40]
call fcn.14012e2d0
nop
mov r8, rax
lea rdx, str.AcceptEx_failed_
lea rcx, [rbp - 0x80]
call fcn.14001af10
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140037ca0
lea rcx, [rbp - 0x80]
call fcn.14001d000
nop
jmp 0x14012b3df
mov rcx, qword [rsi]
call fcn.140129a60
mov qword [rbp + 0x20], rax
mov byte [rbp + 0x28], r12b
lea rax, [rbp]
mov qword [rsi + 0x10], rax
mov rcx, qword [rsi]
call fcn.140129a60
mov rbx, rax
lea rax, vtable.std::_Func_impl_no_alloc_class__lambda_baf161cc29e7caa5846ee516fddfe6bb___void___.0
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rsi
lea rax, [rbp - 0x40]
mov qword [rbp - 8], rax
mov qword [rbp - 0x48], r12
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x40]
call qword [method.std::_Func_impl_no_alloc_class__lambda_baf161cc29e7caa5846ee516fddfe6bb___void___.virtual_0]
mov qword [rbp - 0x48], rax
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x14012b082
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp - 8], r12
lea rdx, [rbx + 0x70]
lea rcx, [rbp - 0x40]
call fcn.140108b50
lea rdx, [rbp - 0x80]
lea rcx, [rbx + 0x70]
call fcn.140108b50
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14012b0b6
mov rax, qword [rcx]
lea rdx, [rbp - 0x80]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
nop
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x14012b0cf
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov rcx, qword [rsi]
call fcn.140129730
mov rcx, qword [rsi]
call fcn.140129a60
lea rbx, [rax + 0x70]
mov rcx, qword [rbx + 0x38]
test rcx, rcx
je 0x14012b0fc
mov rax, qword [rcx]
cmp rcx, rbx
setne dl
call qword [rax + 0x20]
mov qword [rbx + 0x38], r12
mov qword [rsi + 0x10], r12
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rbp + 0xd8]
lea rdx, [rbp]
mov rcx, qword [rsi + 8]
call qword [sym.imp.WS2_32.dll_WSAGetOverlappedResult]
cmp eax, 1
je 0x14012b188
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e3
je 0x14012b172
mov edx, eax
lea rcx, [rsp + 0x40]
call fcn.14012e2d0
nop
mov r8, rax
lea rdx, str.AcceptEx_failed_
lea rcx, [rbp - 0x80]
call fcn.14001af10
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140037ca0
lea rcx, [rbp - 0x80]
call fcn.14001d000
nop
jmp 0x14012b3df
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
test eax, eax
jne 0x14012b298
jmp 0x14012b350
mov rcx, rdi
cmp byte [rbp + 0x28], 0
je 0x14012b1a4
call qword [sym.imp.WS2_32.dll_closesocket]
test eax, eax
jne 0x14012b2de
jmp 0x14012b37d
mov dword [rsp + 0x20], 8
lea r9, [rsi + 8]
mov edx, 0xffff
mov r8d, 0x700b
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x14012b207
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, [rsp + 0x40]
call fcn.14012e2d0
nop
mov r8, rax
lea rdx, str.setsockopt_failed_
lea rcx, [rbp - 0x80]
call fcn.14001af10
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140037ca0
lea rcx, [rbp - 0x80]
call fcn.14001d000
nop
jmp 0x14012b3df
mov rcx, qword [rsi]
call fcn.140033760
mov rdx, rax
xor r9d, r9d
xor r8d, r8d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CreateIoCompletionPort]
mov rbx, rax
mov rcx, qword [rsi]
call fcn.140033760
cmp rbx, rax
jne 0x14012b3aa
mov r8, rdi
mov rdx, qword [rsi]
mov rcx, r14
call fcn.14012c410
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x14012b27d
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14012b278
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14012b292
call fcn.14014f740
mov rax, r14
add rsp, 0x180
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1401705dc
nop
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
nop
mov edx, eax
lea rcx, [rbp - 0x80]
call fcn.14012e2d0
nop
mov r8, rax
lea rdx, str.TcpListener::accept__closesocket_failed_
lea rcx, [rbp - 0x40]
call fcn.14001af10
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.14001cb20
lea rdx, [0x140275160]
lea rcx, [rsp + 0x40]
call fcn.14016cf20
nop
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, [rbp - 0x40]
call fcn.14012e2d0
nop
mov r8, rax
lea rdx, str.TcpConnector::connect__closesocket_failed_
lea rcx, [rbp - 0x80]
call fcn.14001af10
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.14001cb20
lea rdx, [0x140275160]
lea rcx, [rsp + 0x40]
call fcn.14016cf20
nop
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x40]
call fcn.14012a4b0
lea rdx, [0x140276208]
lea rcx, [rsp + 0x40]
call fcn.14016cf20
nop
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x40]
call fcn.14012a4b0
lea rdx, [0x140276208]
lea rcx, [rsp + 0x40]
call fcn.14016cf20
int3
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x40]
call fcn.14012a4b0
lea rdx, [0x140276208]
lea rcx, [rsp + 0x40]
call fcn.14016cf20
int3
lea rcx, [rsp + 0x40]
call fcn.14012e6a0
nop
mov r8, rax
lea rdx, str.CreateIoCompletionPort_failed_
lea rcx, [rbp - 0x80]
call fcn.14001af10
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140037ca0
lea rcx, [rbp - 0x80]
call fcn.14001d000
nop
lea rcx, [rsp + 0x40]
call fcn.14001d000
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
lea r8, [rsp + 0x60]
lea rdx, str.TcpListener::accept_
lea rcx, [rbp - 0x40]
call fcn.14001af70
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.14001cb20
lea rdx, [0x140275160]
lea rcx, [rsp + 0x40]
call fcn.14016cf20
int3