Function at 0x1400c3c70
Capabilities:
Set socket configuration

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x50
mov r13d, r9d
mov rsi, r8
mov rdi, rdx
xor r12d, r12d
cmp qword [r8], 0xffffffffffffffff
je 0x1400c3d11
mov dword [rbp - 0x1c], r12d
movabs rdx, 0x4d54ee85da812030
mov rcx, qword [0x140275df8]
add rcx, rdx
lea rbx, [0x140275df0]
cmp rcx, 1
jbe 0x1400c3cd7
mov rax, qword [0x140275df0]
mov edx, 1
mov rcx, rbx
call qword [rax + 0x30]
jmp 0x1400c3cd9
mov al, 1
movzx eax, al
add rax, 2
mov qword [rbp - 0x10], rax
mov dword [rbp - 0x20], 1
mov qword [rbp - 0x18], rbx
mov rax, qword [rbp + 0x70]
movups xmm2, xmmword [rbp - 0x20]
movups xmmword [rax], xmm2
movsd xmm1, qword [rbp - 0x10]
movsd qword [rax + 0x10], xmm1
movups xmmword [rdi], xmm2
movsd qword [rdi + 0x10], xmm1
jmp 0x1400c3ede
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov r8d, dword [rbp + 0x68]
mov r15d, dword [rbp + 0x60]
mov edx, r15d
mov ecx, r13d
call qword [sym.imp.WS2_32.dll_WSASocketW]
mov r14, rax
cmp rax, 0xffffffffffffffff
sete dl
mov rbx, qword [rbp + 0x70]
mov rcx, rbx
call fcn.1400be880
cmp r14, 0xffffffffffffffff
je 0x1400c3d7c
cmp r13d, 0x17
jne 0x1400c3d7c
mov dword [rbp + 0x50], r12d
mov dword [rsp + 0x20], 4
lea r9, [rbp + 0x50]
mov edx, 0x29
mov r8d, 0x1b
mov rcx, r14
call qword [sym.imp.WS2_32.dll_setsockopt]
nop
cmp r14, 0xffffffffffffffff
jne 0x1400c3d92
movups xmm0, xmmword [rbx]
movups xmmword [rdi], xmm0
movsd xmm1, qword [rbx + 0x10]
jmp 0x1400c3ed9
mov rdx, qword [rbp + 0x40]
mov rdx, qword [rdx + 8]
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rdx + 0x28]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CreateIoCompletionPort]
test rax, rax
jne 0x1400c3e26
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13d, eax
mov dword [rbp - 0x1c], r12d
movabs rdx, 0x4d54ee85da812030
add rdx, qword [0x140275e88]
lea rax, [0x140275e80]
cmp rdx, 1
jbe 0x1400c3df3
mov rcx, qword [0x140275e80]
mov r8, qword [rcx + 0x30]
mov edx, r13d
mov rcx, rax
call r8
jmp 0x1400c3df9
test r13d, r13d
setne al
movzx eax, al
add rax, 2
mov qword [rbp - 0x10], rax
mov dword [rbp - 0x20], r13d
lea rax, [0x140275e80]
mov qword [rbp - 0x18], rax
movups xmm0, xmmword [rbp - 0x20]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rbp - 0x10]
movsd qword [rbx + 0x10], xmm1
jmp 0x1400c3e3a
xorps xmm0, xmm0
mov qword [rbp - 0x10], r12
movups xmmword [rbx], xmm0
movsd xmm0, qword [rbp - 0x10]
movsd qword [rbx + 0x10], xmm0
movups xmm1, xmmword [rbx]
movsd xmm0, qword [rbx + 0x10]
movsd qword [rbp - 0x10], xmm0
test byte [rbp - 0x10], 1
je 0x1400c3e8d
cmp qword [rbp - 0x10], 1
jne 0x1400c3e61
movd eax, xmm1
test eax, eax
setne al
test al, al
je 0x1400c3e8d
movups xmmword [rdi], xmm1
movsd qword [rdi + 0x10], xmm0
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], r12
mov byte [rbp + 0x50], 0
lea r9, [rbp - 0x20]
mov r8b, 1
lea rdx, [rbp + 0x50]
mov rcx, r14
call fcn.1400be9f0
jmp 0x1400c3ede
mov qword [rbp + 0x50], 0xffffffffffffffff
mov qword [rsi], r14
sub r15d, 1
je 0x1400c3eb0
cmp r15d, 1
je 0x1400c3eaa
mov byte [rsi + 8], 0
jmp 0x1400c3eb4
mov byte [rsi + 8], 0x20
jmp 0x1400c3eb4
mov byte [rsi + 8], select
lea rcx, [rsi + 0x10]
movzx r8d, byte [rbp + 0x50]
call fcn.1400cf840
xorps xmm2, xmm2
mov qword [rbp - 0x10], r12
movups xmmword [rbx], xmm2
movsd xmm1, qword [rbp - 0x10]
movsd qword [rbx + 0x10], xmm1
movups xmmword [rdi], xmm2
movsd qword [rdi + 0x10], xmm1
mov rax, rdi
mov rbx, qword [rsp + 0x98]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret