Function at 0x14018b300
Capabilities:
Set socket configuration

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x14024fa28]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rsi, r8
mov r14d, edx
mov rdi, rcx
test r8, r8
je 0x14018b5ad
xor ebx, ebx
cmp r9d, 4
jb 0x14018b340
mov eax, dword [r8]
jmp 0x14018b342
mov eax, ebx
lea ecx, [rdx - 1]
mov dword [rbp - 0x49], eax
cmp ecx, 0xe
ja case.0x14018b366.4
movsxd rdx, ecx
lea rcx, [0x140000000]
mov r8d, dword [rcx + rdx*4 + 0x18b5d8]
add r8, rcx
jmp r8
lea r8, [rbp - 0x49]
mov edx, 0x8004667e
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
setne bl
lea eax, [rbx - 1]
jmp 0x14018b5bc
movsxd rcx, edi
lea r9, [rbp - 0x41]
mov edx, 0xffff
mov dword [rbp - 0x41], eax
mov r8d, 4
mov dword [rsp + 0x20], 4
call qword [sym.imp.WS2_32.dll_setsockopt]
neg eax
sbb eax, eax
jmp 0x14018b5bc
movsxd rcx, edi
lea r9, [rbp - 0x39]
mov edx, 0xffff
mov dword [rbp - 0x39], eax
mov r8d, 0xfffffffb
mov dword [rsp + 0x20], 4
call qword [sym.imp.WS2_32.dll_setsockopt]
neg eax
sbb eax, eax
jmp 0x14018b5bc
mov edx, 0x29
movsxd rcx, edi
lea r9, [rbp - 0x31]
mov dword [rbp - 0x31], eax
mov dword [rsp + 0x20], 4
lea r8d, [rdx - 0xe]
call qword [sym.imp.WS2_32.dll_setsockopt]
neg eax
sbb eax, eax
jmp 0x14018b5bc
mov dword [rbp - 0x29], eax
lea r9, [rbp - 0x29]
xor edx, edx
mov r8d, 9
movsxd rcx, edi
mov dword [rsp + 0x20], 4
call qword [sym.imp.WS2_32.dll_setsockopt]
neg eax
sbb eax, eax
jmp 0x14018b5bc
xor edx, edx
movsxd rcx, edi
lea r9, [rbp - 0x21]
mov dword [rbp - 0x21], eax
mov dword [rsp + 0x20], 4
lea r8d, [rdx + 0xa]
call qword [sym.imp.WS2_32.dll_setsockopt]
neg eax
sbb eax, eax
jmp 0x14018b5bc
xor edx, edx
movsxd rcx, edi
lea r9, [rbp - 0x19]
mov dword [rbp - 0x19], eax
mov dword [rsp + 0x20], 4
lea r8d, [rdx + 0xb]
call qword [sym.imp.WS2_32.dll_setsockopt]
neg eax
sbb eax, eax
jmp 0x14018b5bc
mov dword [rbp - 0x11], eax
lea r9, [rbp - 0x11]
mov edx, 0x29
jmp 0x14018b414
mov edx, 0x29
mov dword [rbp - 9], eax
lea r9, [rbp - 9]
lea r8d, [rdx - 0x1f]
jmp 0x14018b41a
mov edx, 0x29
mov dword [rbp - 1], eax
lea r9, [rbp - 1]
lea r8d, [rdx - 0x1e]
jmp 0x14018b41a
mov edx, 6
mov dword [rbp + 7], eax
lea r9, [rbp + 7]
lea r8d, [rdx - 5]
jmp 0x14018b41a
cmp r9d, 0x10
jne 0x14018b5ad
mov rax, qword [rsi]
test rax, rax
je 0x14018b5ad
mov rcx, qword [rax]
cmp word [rcx], 2
jne 0x14018b548
lfence
mov rax, qword [rsi]
test rax, rax
je 0x14018b508
mov rcx, qword [rax]
cmp word [rcx], 2
jne 0x14018b508
add rcx, 4
jmp 0x14018b515
mov ecx, 0xa
call fcn.14018f3e0
mov rcx, rbx
mov eax, dword [rcx]
lea r9, [rbp + 0xf]
mov dword [rbp + 0xf], eax
cmp r14d, 9
mov eax, dword [rsi + 8]
setne bl
movsxd rcx, edi
xor edx, edx
mov dword [rbp + 0x13], eax
mov dword [rsp + 0x20], 8
lea r8d, [rbx + 0xc]
call qword [sym.imp.WS2_32.dll_setsockopt]
neg eax
sbb eax, eax
jmp 0x14018b5bc
cmp word [rcx], 0x17
jne 0x14018b5ad
lfence
mov rax, qword [rsi]
test rax, rax
je 0x14018b568
mov rcx, qword [rax]
cmp word [rcx], 0x17
jne 0x14018b568
add rcx, 8
jmp 0x14018b575
mov ecx, 0xa
call fcn.14018f3e0
mov rcx, rbx
movups xmm0, xmmword [rcx]
mov eax, dword [rsi + 8]
lea r9, [rbp + 0x17]
cmp r14d, 9
movsxd rcx, edi
mov edx, 0x29
mov dword [rbp + 0x27], eax
setne bl
mov dword [rsp + 0x20], reloc.WS2_32.dll_sendto
movups xmmword [rbp + 0x17], xmm0
lea r8d, [rbx + 0xc]
call qword [sym.imp.WS2_32.dll_setsockopt]
neg eax
sbb eax, eax
jmp 0x14018b5bc
mov ecx, 0xa
call fcn.14018f3e0
mov eax, 0xffffffff
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1401c5190
add rsp, 0xb0
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret