Function at 0x14002a750
Capabilities:
Set socket configuration

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xa0
movaps xmmword [rax - 0x28], xmm6
mov rax, qword [0x1401c5538]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rdi, rcx
lea rdx, [rcx + 0x28]
cmp qword [rdx + 0x18], 0x10
jb 0x14002a792
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
xor r14d, r14d
mov qword [rbp - 0x19], r14
lea rax, [rbp - 0x29]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rbp - 0x11]
mov r15d, 2
mov ecx, r15d
call fcn.140029f70
mov ebx, dword [rbp - 0x11]
test eax, eax
cmovle ebx, r14d
mov rax, qword [rbp - 0x19]
test al, 1
je 0x14002a7e8
cmp rax, 1
jne 0x14002aacf
cmp dword [rbp - 0x29], r14d
setne al
test al, al
jne 0x14002aacf
movzx ecx, word [rdi + 0x48]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x17], xmm0
mov dword [rbp + 0x27], r14d
mov esi, reloc.WS2_32.dll_socket
mov word [rbp + 0xf], r15w
call qword [sym.imp.WS2_32.dll_htons]
mov word [rbp + 0x11], ax
mov ecx, ebx
call qword [sym.imp.WS2_32.dll_ntohl]
mov ecx, eax
call qword [sym.imp.WS2_32.dll_htonl]
mov dword [rbp + 0x13], eax
cmp word [rbp + 0xf], 2
cmove esi, r15d
mov dword [rbp - 0x11], esi
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], r14
lea r8, [rdi + 0x58]
lea rax, [rbp - 0x29]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x11]
lea rdx, [rbp - 9]
mov rcx, qword [rdi + 0x50]
call fcn.14002a560
mov rax, qword [rbp - 0x19]
test al, 1
je 0x14002a875
cmp rax, 1
jne 0x14002aad9
cmp dword [rbp - 0x29], 0
setne al
test al, al
jne 0x14002aad9
mov dword [rbp - 0x11], 1
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], r14
mov rcx, qword [rdi + 0x58]
movabs rsi, 0x4d54ee85da812030
lea rbx, [0x1401c1018]
cmp rcx, 0xffffffffffffffff
jne 0x14002a8f6
mov dword [rbp - 5], r14d
mov rcx, qword [0x1401c1020]
add rcx, rsi
cmp rcx, 1
jbe 0x14002a8ca
mov rax, qword [0x1401c1018]
mov edx, 0x2719
mov rcx, rbx
call qword [rax + 0x30]
jmp 0x14002a8cc
mov al, 1
movzx eax, al
add rax, 2
mov qword [rbp + 7], rax
mov dword [rbp - 9], 0x2719
mov qword [rbp - 1], rbx
movups xmm0, xmmword [rbp - 9]
movups xmmword [rbp - 0x29], xmm0
movsd xmm1, qword [rbp + 7]
movsd qword [rbp - 0x19], xmm1
jmp 0x14002a921
mov dword [rsp + 0x20], 4
lea r9, [rbp - 0x11]
mov edx, 0xffff
mov r8d, 4
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
setne dl
lea rcx, [rbp - 0x29]
call fcn.14000a290
test byte [rbp - 0x19], 1
je 0x14002a941
cmp qword [rbp - 0x19], 1
jne 0x14002aaea
cmp dword [rbp - 0x29], 0
setne al
test al, al
jne 0x14002aaea
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], r14
mov eax, select
mov r8d, 0x1c
cmp word [rbp + 0xf], 2
cmove r8d, eax
mov rcx, qword [rdi + 0x58]
cmp rcx, 0xffffffffffffffff
jne 0x14002a9be
mov dword [rbp - 5], r14d
mov rcx, qword [0x1401c1020]
add rcx, rsi
cmp rcx, 1
jbe 0x14002a992
mov rax, qword [0x1401c1018]
mov edx, 0x2719
mov rcx, rbx
call qword [rax + 0x30]
jmp 0x14002a994
mov al, 1
movzx eax, al
add rax, 2
mov qword [rbp + 7], rax
mov dword [rbp - 9], 0x2719
mov qword [rbp - 1], rbx
movups xmm0, xmmword [rbp - 9]
movups xmmword [rbp - 0x29], xmm0
movsd xmm1, qword [rbp + 7]
movsd qword [rbp - 0x19], xmm1
jmp 0x14002a9d6
lea rdx, [rbp + 0xf]
call qword [sym.imp.WS2_32.dll_bind]
test eax, eax
setne dl
lea rcx, [rbp - 0x29]
call fcn.14000a290
test byte [rbp - 0x19], 1
je 0x14002a9f6
cmp qword [rbp - 0x19], 1
jne 0x14002aafb
cmp dword [rbp - 0x29], 0
setne al
test al, al
jne 0x14002aafb
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], r14
mov rcx, qword [rdi + 0x58]
cmp rcx, 0xffffffffffffffff
jne 0x14002aa5f
mov dword [rbp - 5], r14d
mov rcx, qword [0x1401c1020]
add rcx, rsi
cmp rcx, 1
jbe 0x14002aa33
mov rax, qword [0x1401c1018]
mov edx, 0x2719
mov rcx, rbx
call qword [rax + 0x30]
jmp 0x14002aa35
mov al, 1
movzx eax, al
add rax, 2
mov qword [rbp + 7], rax
mov dword [rbp - 9], 0x2719
mov qword [rbp - 1], rbx
movups xmm0, xmmword [rbp - 9]
movups xmmword [rbp - 0x29], xmm0
movsd xmm1, qword [rbp + 7]
movsd qword [rbp - 0x19], xmm1
jmp 0x14002aa78
mov edx, 0x7fffffff
call qword [sym.imp.WS2_32.dll_listen]
test eax, eax
setne dl
lea rcx, [rbp - 0x29]
call fcn.14000a290
test byte [rbp - 0x19], 1
je 0x14002aa90
cmp qword [rbp - 0x19], 1
jne 0x14002aabe
cmp dword [rbp - 0x29], 0
setne al
test al, al
jne 0x14002aabe
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1401453a0
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
lea rdx, [0x140178018]
lea rcx, [rbp - 0x29]
call fcn.140004d40
int3
lea rcx, [rbp - 0x29]
call fcn.140023820
int3
lea rdx, str.open
lea rcx, [rbp - 0x29]
call fcn.140004d40
int3
lea rdx, str.set_option
lea rcx, [rbp - 0x29]
call fcn.140004d40
int3
lea rdx, [0x140178020]
lea rcx, [rbp - 0x29]
call fcn.140004d40
int3