Function at 0x14007f4b0
Capabilities:
Set socket configuration

Disassembly:
mov qword [rsp + 0x10], rbx
mov byte [rsp + 0x20], r9b
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
movzx esi, r9b
mov r15, r8
mov rdi, rcx
mov r9, rdx
xor r8d, r8d
xor edx, edx
call fcn.14007f8c0
nop
movzx r14d, word [r15]
mov eax, 0x17
mov r12d, 2
cmp r14w, r12w
cmovne r12d, eax
mov r13, qword [rdi]
cmp qword [rdi + 8], 0xffffffffffffffff
je 0x14007f52b
call fcn.1400ae490
mov dword [rbp - 0x30], 1
mov qword [rbp - 0x28], rax
movaps xmm0, xmmword [rbp - 0x30]
movaps xmmword [rbp - 0x30], xmm0
movd ebx, xmm0
jmp 0x14007f693
mov dword [rsp + 0x28], 1
xor ebx, ebx
mov dword [rsp + 0x20], ebx
xor r9d, r9d
lea edx, [rbx + 1]
lea r8d, [rbx + 6]
mov ecx, r12d
call qword [sym.imp.WS2_32.dll_WSASocketW]
mov rsi, rax
lea rax, [0x14013e5e8]
cmp rsi, 0xffffffffffffffff
je 0x14007f58e
mov dword [rbp - 0x30], ebx
mov qword [rbp - 0x28], rax
cmp r14w, 2
je 0x14007f589
mov dword [rbp + 0x50], ebx
mov dword [rsp + 0x20], 4
lea r9, [rbp + 0x50]
lea edx, [rbx + 0x29]
lea r8d, [rbx + 0x1b]
mov rcx, rsi
call qword [sym.imp.WSOCK32.dll_setsockopt]
xor r14d, r14d
jmp 0x14007f5b9
call fcn.1400ae900
mov rbx, rax
call qword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov r14d, eax
mov dword [rbp - 0x30], eax
mov qword [rbp - 0x28], rbx
movaps xmm0, xmmword [rbp - 0x30]
movaps xmmword [rbp - 0x30], xmm0
mov rsi, 0xffffffffffffffff
movd ebx, xmm0
mov qword [rbp - 0x40], rsi
cmp rsi, 0xffffffffffffffff
jne 0x14007f5dc
lea rcx, [rbp - 0x40]
call fcn.1400984e0
test r14d, r14d
jne 0x14007f68f
xor eax, eax
jmp 0x14007f663
mov rdx, qword [r13 + 0x30]
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rdx + 0x28]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CreateIoCompletionPort]
test rax, rax
jne 0x14007f627
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
call fcn.1400ae900
mov dword [rbp - 0x30], ebx
mov qword [rbp - 0x28], rax
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x30], xmm0
test ebx, ebx
je 0x14007f627
lea rcx, [rbp - 0x40]
call fcn.1400984e0
mov ebx, dword [rbp - 0x30]
jmp 0x14007f68f
mov qword [rbp - 0x40], 0xffffffffffffffff
mov qword [rdi + 8], rsi
mov byte [rdi + select], 0x10
lea rcx, [rdi + 0x18]
movzx r8d, byte [rbp + 0x40]
xor edx, edx
call fcn.14008d430
xor eax, eax
mov dword [rbp - 0x30], eax
lea rcx, [0x14013e5e8]
mov qword [rbp - 0x28], rcx
movaps xmm0, xmmword [rbp - 0x30]
movaps xmmword [rbp - 0x30], xmm0
movd ebx, xmm0
mov dword [rdi + 0x40], r12d
mov byte [rdi + 0x44], 0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x18], xmm1
mov qword [rbp - 0x20], 2
movups xmm0, xmmword [rbp - 0x20]
movups xmmword [rdi + 0x48], xmm0
unpckhpd xmm1, xmm1
movsd qword [rdi + 0x58], xmm1
mov dword [rdi + 0x60], eax
movzx esi, byte [rbp + 0x58]
test ebx, ebx
jne 0x14007f7af
test sil, sil
je 0x14007f6fc
mov dword [rbp + 0x50], 1
mov rcx, qword [rdi + 8]
cmp rcx, 0xffffffffffffffff
je 0x14007f7c0
mov dword [rsp + 0x20], 4
lea r9, [rbp + 0x50]
mov edx, 0xffff
mov r8d, 4
call qword [sym.imp.WSOCK32.dll_setsockopt]
test eax, eax
je 0x14007f6fc
call fcn.1400ae900
mov rbx, rax
call qword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov dword [rbp - 0x30], eax
mov qword [rbp - 0x28], rbx
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x30], xmm0
test eax, eax
jne 0x14007f7d9
mov rcx, qword [rdi + 8]
cmp rcx, 0xffffffffffffffff
je 0x14007f7ea
mov eax, 0x1c
mov r8d, select
cmp word [r15], 2
cmovne r8d, eax
mov rdx, r15
call qword [sym.imp.WSOCK32.dll_bind]
test eax, eax
je 0x14007f751
call fcn.1400ae900
mov rbx, rax
call qword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov dword [rbp - 0x30], eax
mov qword [rbp - 0x28], rbx
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x30], xmm0
test eax, eax
jne 0x14007f803
mov rcx, qword [rdi + 8]
cmp rcx, 0xffffffffffffffff
je 0x14007f814
mov edx, 0x7fffffff
call qword [sym.imp.WSOCK32.dll_listen]
test eax, eax
je 0x14007f794
call fcn.1400ae900
mov rbx, rax
call qword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov dword [rbp - 0x30], eax
mov qword [rbp - 0x28], rbx
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x30], xmm0
test eax, eax
jne 0x14007f82d
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
lea rdx, [0x140110f88]
lea rcx, [rbp - 0x30]
call fcn.1400a99a0
int3
call fcn.1400ae900
mov dword [rbp - 0x30], 0x2719
mov qword [rbp - 0x28], rax
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x30], xmm0
lea rdx, str.set_option
lea rcx, [rbp - 0x30]
call fcn.1400a99a0
int3
call fcn.1400ae900
mov dword [rbp - 0x30], 0x2719
mov qword [rbp - 0x28], rax
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x30], xmm0
lea rdx, str.bind
lea rcx, [rbp - 0x30]
call fcn.1400a99a0
int3
call fcn.1400ae900
mov dword [rbp - 0x30], 0x2719
mov qword [rbp - 0x28], rax
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x30], xmm0
lea rdx, str.listen
lea rcx, [rbp - 0x30]
call fcn.1400a99a0
int3