Function at 0x14017a9c0
Capabilities:
Set socket configuration

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x78
mov rax, qword [0x140628fc0]
xor rax, rsp
mov qword [rbp - 0x18], rax
mov r13d, r9d
mov rsi, r8
mov rdi, rdx
mov qword [rbp - 0x40], rcx
mov r14d, dword [rbp + 0x68]
mov r8d, dword [rbp + 0x70]
mov rbx, qword [rbp + 0x78]
xor r12d, r12d
cmp qword [rsi], 0xffffffffffffffff
je 0x14017aa73
mov dword [rbp - 0x34], r12d
movabs rdx, 0x4d54ee85da812030
mov rcx, qword [0x140629df0]
add rcx, rdx
lea rsi, str.X___
cmp rcx, 1
jbe 0x14017aa3d
mov rax, qword [str.X___]
lea edx, [r12 + 1]
mov rcx, rsi
call qword [rax + 0x30]
jmp 0x14017aa3f
mov al, 1
movzx eax, al
add rax, 2
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x38], 1
mov qword [rbp - 0x30], rsi
movups xmm2, xmmword [rbp - 0x38]
movups xmmword [rbx], xmm2
movsd xmm1, qword [rbp - 0x28]
movsd qword [rbx + 0x10], xmm1
movups xmmword [rdi], xmm2
movsd qword [rdi + 0x10], xmm1
jmp 0x14017ac31
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov edx, r14d
mov ecx, r13d
call qword [sym.imp.WS2_32.dll_WSASocketW]
mov r15, rax
cmp rax, 0xffffffffffffffff
sete dl
mov rcx, rbx
call fcn.140174c30
cmp r15, 0xffffffffffffffff
je 0x14017aacf
cmp r13d, 0x17
jne 0x14017aacf
mov dword [rbp - 0x20], r12d
mov dword [rsp + 0x20], 4
lea r9, [rbp - 0x20]
lea edx, [r13 + 0x12]
lea r8d, [r13 + 4]
mov rcx, r15
call qword [sym.imp.WS2_32.dll_setsockopt]
nop
cmp r15, 0xffffffffffffffff
jne 0x14017aae5
movups xmm0, xmmword [rbx]
movups xmmword [rdi], xmm0
movsd xmm1, qword [rbx + 0x10]
jmp 0x14017ac2c
mov rdx, qword [rbp - 0x40]
mov rdx, qword [rdx + 8]
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rdx + 0x28]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CreateIoCompletionPort]
test rax, rax
jne 0x14017ab79
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13d, eax
mov dword [rbp - 0x34], r12d
movabs rdx, 0x4d54ee85da812030
add rdx, qword [0x140629e98]
lea rax, [0x140629e90]
cmp rdx, 1
jbe 0x14017ab46
mov rcx, qword [0x140629e90]
mov r8, qword [rcx + 0x30]
mov edx, r13d
mov rcx, rax
call r8
jmp 0x14017ab4c
test r13d, r13d
setne al
movzx eax, al
add rax, 2
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x38], r13d
lea rax, [0x140629e90]
mov qword [rbp - 0x30], rax
movups xmm0, xmmword [rbp - 0x38]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rbp - 0x28]
movsd qword [rbx + 0x10], xmm1
jmp 0x14017ab8d
xorps xmm0, xmm0
mov qword [rbp - 0x28], r12
movups xmmword [rbx], xmm0
movsd xmm0, qword [rbp - 0x28]
movsd qword [rbx + 0x10], xmm0
movups xmm1, xmmword [rbx]
movsd xmm0, qword [rbx + 0x10]
movsd qword [rbp - 0x28], xmm0
test byte [rbp - 0x28], 1
je 0x14017abe5
cmp qword [rbp - 0x28], 1
jne 0x14017abb4
movd eax, xmm1
test eax, eax
setne al
test al, al
je 0x14017abe5
movups xmmword [rdi], xmm1
movsd xmm1, qword [rbx + 0x10]
movsd qword [rdi + 0x10], xmm1
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], r12
mov byte [rbp - 0x48], 0
lea r9, [rbp - 0x38]
mov r8b, 1
lea rdx, [rbp - 0x48]
mov rcx, r15
call fcn.140174da0
jmp 0x14017ac31
mov qword [rbp - 0x40], 0xffffffffffffffff
mov qword [rsi], r15
sub r14d, 1
je 0x14017ac08
cmp r14d, 1
je 0x14017ac02
mov byte [rsi + 8], 0
jmp 0x14017ac0c
mov byte [rsi + 8], 0x20
jmp 0x14017ac0c
mov byte [rsi + 8], reloc.WS2_32.dll_recv
lea rcx, [rsi + 0x10]
call fcn.1401b4f10
xorps xmm2, xmm2
mov qword [rbp - 0x28], r12
movups xmmword [rbx], xmm2
movsd xmm1, qword [rbp - 0x28]
movsd qword [rbx + 0x10], xmm1
movups xmmword [rdi], xmm2
movsd qword [rdi + 0x10], xmm1
mov rax, rdi
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.1404a0a30
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret