Function at 0x1400b9660
Capabilities:
Set socket configuration

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
movaps xmmword [rsp + 0x70], xmm6
mov r15, r8
mov rsi, rcx
call fcn.1400b8b70
nop
call fcn.14018e9e0
movzx r12d, word [r15]
mov edi, 2
mov r13d, edi
mov eax, 0x17
cmp r12w, di
cmovne r13d, eax
mov rax, qword [rsi + 0x60]
mov qword [rbp - 0x48], rax
xor ebx, ebx
lea r14, [fcn.140063630]
cmp qword [rsi], 0xffffffffffffffff
je 0x1400b96e7
call fcn.140063640
mov dword [rbp - 0x40], 1
mov qword [rbp - 0x38], rax
movaps xmm6, xmmword [rbp - 0x40]
movaps xmmword [rbp - 0x40], xmm6
jmp 0x1400b9846
xor ecx, ecx
call qword [sym.imp.WS2_32.dll_WSASetLastError]
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], ebx
xor r9d, r9d
lea r8d, [r9 + 0x11]
mov edx, edi
mov ecx, r13d
call qword [sym.imp.WS2_32.dll_WSASocketW]
mov rdi, rax
call fcn.14018e9e0
mov rbx, rax
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r15d, eax
mov dword [rbp - 0x40], eax
mov qword [rbp - 0x38], rbx
movaps xmm6, xmmword [rbp - 0x40]
movaps xmmword [rbp - 0x40], xmm6
xor ebx, ebx
cmp rdi, 0xffffffffffffffff
je 0x1400b9777
cmp r12w, 2
je 0x1400b9760
mov dword [rbp + 0x58], ebx
mov dword [rsp + 0x20], 4
lea r9, [rbp + 0x58]
mov edx, 0x29
lea r8d, [rdx - 0xe]
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_setsockopt]
mov dword [rbp - 0x40], ebx
call fcn.14018e9e0
mov qword [rbp - 0x38], rax
movaps xmm6, xmmword [rbp - 0x40]
movaps xmmword [rbp - 0x40], xmm6
mov r15d, ebx
mov qword [rbp - 0x50], rdi
cmp rdi, 0xffffffffffffffff
je 0x1400b97ce
mov rdx, qword [rbp - 0x48]
mov rdx, qword [rdx + 0x30]
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rdx + 0x28]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CreateIoCompletionPort]
test rax, rax
jne 0x1400b97de
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r15d, eax
call fcn.14018e9e0
mov dword [rbp - 0x40], r15d
mov qword [rbp - 0x38], rax
movaps xmm6, xmmword [rbp - 0x40]
movaps xmmword [rbp - 0x40], xmm6
mov rax, r14
test r15d, r15d
cmove rax, rbx
test rax, rax
je 0x1400b97e3
lea rcx, [rbp - 0x50]
call fcn.1400c82e0
test r15d, r15d
jne 0x1400b9842
jmp 0x1400b9816
call fcn.14018e9e0
mov qword [rbp - 0x50], 0xffffffffffffffff
mov qword [rsi], rdi
mov byte [rsi + 8], 0x20
lea rcx, [rsi + 0x10]
movzx r8d, byte [rbp + 0x50]
xor edx, edx
call fcn.1400b6240
mov dword [rbp - 0x40], ebx
call fcn.14018e9e0
mov qword [rbp - 0x38], rax
movaps xmm6, xmmword [rbp - 0x40]
movaps xmmword [rbp - 0x40], xmm6
mov dword [rsi + 0x38], r13d
mov byte [rsi + 0x3c], 0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
mov qword [rbp - 0x30], 2
movups xmm0, xmmword [rbp - 0x30]
movups xmmword [rsi + 0x40], xmm0
unpckhpd xmm1, xmm1
movsd qword [rsi + 0x50], xmm1
mov dword [rsi + 0x58], ebx
mov r15, qword [rbp + 0x50]
mov rcx, r14
movd eax, xmm6
test eax, eax
cmove rcx, rbx
test rcx, rcx
jne 0x1400b990d
movzx edi, word [r15]
mov rbx, qword [rsi]
cmp rbx, 0xffffffffffffffff
jne 0x1400b9887
call fcn.14018e9e0
mov dword [rbp - 0x40], 0x2719
mov qword [rbp - 0x38], rax
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm0
jmp 0x1400b991e
xor ecx, ecx
call qword [sym.imp.WS2_32.dll_WSASetLastError]
mov eax, 0x1c
mov r8d, reloc.WS2_32.dll_recv
cmp di, 2
cmovne r8d, eax
mov rdx, r15
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_bind]
mov edi, eax
call fcn.14018e9e0
mov rbx, rax
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rbp - 0x40], eax
mov qword [rbp - 0x38], rbx
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm0
test edi, edi
jne 0x1400b98fb
call fcn.14018e9e0
nop
mov rax, rsi
mov rbx, qword [rsp + 0xc8]
movaps xmm6, xmmword [rsp + 0x70]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
test eax, eax
mov eax, 0
cmove r14, rax
test r14, r14
jne 0x1400b991e
jmp 0x1400b98d8
lea rdx, str.open
lea rcx, [rbp - 0x40]
call fcn.140063120
int3
lea rdx, [0x1402c7ce0]
lea rcx, [rbp - 0x40]
call fcn.140063120
int3