Function at 0x7ff670d931b0
Capabilities:
Set socket configuration

Disassembly:
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x20], r9d
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov eax, r9d
mov r15, r8
mov rdi, rdx
xor r12d, r12d
cmp qword [r8], 0xffffffffffffffff
je 0x7ff670d93256
mov dword [rbp - 0x2c], r12d
movabs rdx, 0x4d54ee85da812030
mov rcx, qword [0x7ff670e2aa70]
add rcx, rdx
lea rbx, [0x7ff670e2aa68]
cmp rcx, 1
jbe 0x7ff670d9321c
mov rax, qword [0x7ff670e2aa68]
lea edx, [r12 + 1]
mov rcx, rbx
call qword [rax + 0x30]
jmp 0x7ff670d9321e
mov al, 1
movzx eax, al
add rax, 2
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x30], 1
mov qword [rbp - 0x28], rbx
mov rax, qword [rbp + 0x70]
movups xmm2, xmmword [rbp - 0x30]
movups xmmword [rax], xmm2
movsd xmm1, qword [rbp - 0x20]
movsd qword [rax + 0x10], xmm1
movups xmmword [rdi], xmm2
movsd qword [rdi + 0x10], xmm1
jmp 0x7ff670d93494
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov r8d, dword [rbp + 0x68]
mov r13d, dword [rbp + 0x60]
mov edx, r13d
mov ecx, eax
call qword [sym.imp.ws2_32.dll_WSASocketW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
sete dl
mov rsi, qword [rbp + 0x70]
mov rcx, rsi
call fcn.7ff670d915b0
mov r14, 0xffffffffffffffff
cmp rbx, r14
jne 0x7ff670d932a0
mov rbx, r14
jmp 0x7ff670d932c9
cmp dword [rbp + 0x58], 0x17
jne 0x7ff670d932c9
mov dword [rbp + 0x50], r12d
mov dword [rsp + 0x20], 4
lea r9, [rbp + 0x50]
mov edx, 0x29
lea r8d, [rdx - 0xe]
mov rcx, rbx
call qword [sym.imp.ws2_32.dll_setsockopt]
nop
cmp rbx, 0xffffffffffffffff
jne 0x7ff670d932df
movups xmm0, xmmword [rsi]
movups xmmword [rdi], xmm0
movsd xmm1, qword [rsi + 0x10]
jmp 0x7ff670d9348f
mov rdx, qword [rbp + 0x40]
mov rdx, qword [rdx + 8]
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rdx + 0x28]
mov rcx, rbx
call qword [sym.imp.kernel32.dll_CreateIoCompletionPort]
test rax, rax
jne 0x7ff670d93373
call qword [sym.imp.kernel32.dll_GetLastError]
mov dword [rbp - 0x40], eax
mov dword [rbp - 0x2c], r12d
movabs rdx, 0x4d54ee85da812030
add rdx, qword [0x7ff670e25138]
lea r9, [0x7ff670e25130]
cmp rdx, 1
jbe 0x7ff670d93346
mov rcx, qword [0x7ff670e25130]
mov r8, qword [rcx + 0x30]
mov edx, eax
mov rcx, r9
call r8
lea r9, [0x7ff670e25130]
jmp 0x7ff670d9334b
test eax, eax
setne al
movzx eax, al
add rax, 2
mov qword [rbp - 0x20], rax
mov eax, dword [rbp - 0x40]
mov dword [rbp - 0x30], eax
mov qword [rbp - 0x28], r9
movups xmm0, xmmword [rbp - 0x30]
movups xmmword [rsi], xmm0
movsd xmm1, qword [rbp - 0x20]
movsd qword [rsi + 0x10], xmm1
jmp 0x7ff670d9338b
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], r12
movups xmmword [rsi], xmm0
movsd xmm0, qword [rbp - 0x20]
movsd qword [rsi + 0x10], xmm0
movups xmm1, xmmword [rsi]
movups xmmword [rbp - 0x18], xmm1
movsd xmm0, qword [rsi + 0x10]
movsd qword [rbp - 8], xmm0
test byte [rbp - 8], 1
je 0x7ff670d933e7
cmp qword [rbp - 8], 1
jne 0x7ff670d933b6
movd eax, xmm1
test eax, eax
setne al
test al, al
je 0x7ff670d933e7
movups xmmword [rdi], xmm1
movsd xmm1, qword [rsi + 0x10]
movsd qword [rdi + 0x10], xmm1
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
mov qword [rbp - 8], r12
mov byte [rbp + 0x50], 0
lea r9, [rbp - 0x18]
lea rdx, [rbp + 0x50]
mov rcx, rbx
call fcn.7ff670d91670
jmp 0x7ff670d93494
mov qword [rbp - 0x40], r14
mov qword [r15], rbx
sub r13d, 1
je 0x7ff670d93408
cmp r13d, 1
je 0x7ff670d93401
mov byte [r15 + 8], 0
jmp 0x7ff670d9340d
mov byte [r15 + 8], 0x20
jmp 0x7ff670d9340d
mov byte [r15 + 8], 0x10
mov ecx, 0x18
call fcn.7ff670dbe3bc
mov qword [rbp - 0x38], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rcx, fcn.7ff670d51b20
mov qword [rax], rcx
mov qword [rax + 0x10], r12
mov qword [r15 + 0x10], r12
mov rbx, qword [r15 + 0x18]
mov qword [r15 + 0x18], rax
test rbx, rbx
je 0x7ff670d93478
mov eax, r14d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x7ff670d93478
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x7ff670d93478
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
xorps xmm2, xmm2
mov qword [rbp - 8], r12
movups xmmword [rsi], xmm2
movsd xmm1, qword [rbp - 8]
movsd qword [rsi + 0x10], xmm1
movups xmmword [rdi], xmm2
movsd qword [rdi + 0x10], xmm1
mov rax, rdi
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret