Function at 0x14002a890
Capabilities:
Set socket configuration

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0x90
mov rax, qword [0x140054040]
xor rax, rsp
mov qword [rbp + 0xf], rax
mov rsi, r8
mov r14, rcx
mov qword [rbp - 9], rcx
mov r9, rdx
call fcn.14002f7c0
nop
xor r15d, r15d
mov qword [rbp - 1], r15
lea rax, [0x1405db110]
mov qword [rbp + 7], rax
mov r12d, 2
mov edi, r12d
mov eax, 0x17
cmp word [rsi], r12w
cmovne edi, eax
mov rcx, qword [r14]
add rcx, 0x28
lea rax, [rbp - 1]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 6
mov dword [rsp + 0x20], 1
mov r9d, edi
lea r8, [r14 + 8]
lea rdx, [rbp - 0x29]
call fcn.14000c9f0
cmp dword [rax], r15d
jne 0x14002a94f
mov dword [r14 + 0x40], edi
mov byte [r14 + 0x44], r15b
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x21], xmm1
mov qword [rbp - 0x29], r12
movups xmm0, xmmword [rbp - 0x29]
movups xmmword [r14 + 0x48], xmm0
unpckhpd xmm1, xmm1
movsd qword [r14 + 0x58], xmm1
mov dword [r14 + 0x60], r15d
cmp dword [rbp - 1], r15d
jne 0x14002aba6
mov dword [rbp - 0x31], 1
mov rcx, qword [r14 + 8]
lea r12, [0x1405daf48]
cmp rcx, 0xffffffffffffffff
jne 0x14002a989
mov edx, 0x2719
lea rcx, [rbp - 1]
call fcn.140028700
mov edi, 4
jmp 0x14002aa2a
mov dword [rsp + 0x20], 4
lea r9, [rbp - 0x31]
mov edx, 0xffff
mov r8d, 4
call qword [sym.imp.WS2_32.dll_setsockopt]
mov edi, 4
test eax, eax
jne 0x14002a9d0
mov dword [rbp - 1], r15d
mov rcx, qword [r14 + 8]
cmp rcx, 0xffffffffffffffff
jne 0x14002aa39
mov edx, 0x2719
lea rcx, [rbp - 1]
call fcn.140028700
jmp 0x14002aad4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdi + rcx]
cmp dword [0x1405df224], eax
jle 0x14002aa14
lea rcx, [0x1405df224]
call fcn.14003a8f0
cmp dword [0x1405df224], 0xffffffff
jne 0x14002aa14
lea rcx, [0x14003f350]
call fcn.14003ac60
lea rcx, [0x1405df224]
call fcn.14003a884
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rbp - 1], eax
mov qword [rbp + 7], r12
movaps xmm0, xmmword [rbp - 1]
movdqa xmmword [rbp - 1], xmm0
cmp dword [rbp - 1], r15d
jne 0x14002ab84
jmp 0x14002a9b3
mov eax, 0x1c
mov r8d, select
cmp word [rsi], 2
cmovne r8d, eax
mov rdx, rsi
call qword [sym.imp.WS2_32.dll_bind]
test eax, eax
jne 0x14002aa7a
mov dword [rbp - 1], r15d
mov rcx, qword [r14 + 8]
cmp rcx, 0xffffffffffffffff
jne 0x14002aae3
mov edx, 0x2719
lea rcx, [rbp - 1]
call fcn.140028700
jmp 0x14002ab4c
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdi + rcx]
cmp dword [0x1405df224], eax
jle 0x14002aabe
lea rcx, [0x1405df224]
call fcn.14003a8f0
cmp dword [0x1405df224], 0xffffffff
jne 0x14002aabe
lea rcx, [0x14003f350]
call fcn.14003ac60
lea rcx, [0x1405df224]
call fcn.14003a884
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rbp - 1], eax
mov qword [rbp + 7], r12
movaps xmm0, xmmword [rbp - 1]
movdqa xmmword [rbp - 1], xmm0
cmp dword [rbp - 1], r15d
jne 0x14002ab95
jmp 0x14002aa5d
mov edx, 0x7fffffff
call qword [sym.imp.WS2_32.dll_listen]
test eax, eax
je 0x14002ab52
mov rax, qword gs:[0x58]
mov rdx, qword [rax]
mov eax, dword [rdi + rdx]
cmp dword [0x1405df224], eax
jle 0x14002ab36
lea rcx, [0x1405df224]
call fcn.14003a8f0
cmp dword [0x1405df224], 0xffffffff
jne 0x14002ab36
lea rcx, [0x14003f350]
call fcn.14003ac60
lea rcx, [0x1405df224]
call fcn.14003a884
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rbp - 1], eax
mov qword [rbp + 7], r12
movaps xmm0, xmmword [rbp - 1]
movdqa xmmword [rbp - 1], xmm0
cmp dword [rbp - 1], r15d
jne 0x14002ab73
mov rax, r14
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.14003a7b0
add rsp, 0x90
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rdx, str.listen
lea rcx, [rbp - 1]
call fcn.140009ab0
int3
lea rdx, str.set_option
lea rcx, [rbp - 1]
call fcn.140009ab0
int3
lea rdx, str.bind
lea rcx, [rbp - 1]
call fcn.140009ab0
int3
lea rdx, str.open
lea rcx, [rbp - 1]
call fcn.140009ab0
int3