Function at 0x1400b7170
Capabilities:
Set socket configuration

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
mov rdi, rdx
mov rsi, rcx
mov eax, dword [rdx + 0xf0]
cmp eax, 0x3b9aca00
jne 0x1400b71fd
mov r14, qword [rdi + 0xb0]
mov rax, qword [rdi + 0xc0]
mov rbx, qword [rdi + 0xc8]
cmp rax, rbx
jb 0x1400b7494
mov rax, qword [rdi + 0xb8]
mov qword [rsp + 0x28], r14
je 0x1400b71dc
invalid
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0
mov rax, qword [rdi + 0xd0]
mov qword [rsp + 0x40], rax
mov rcx, qword [rdi + 0xd8]
mov rax, qword [rdi + 0xe0]
lea rdx, [rsp + 0x28]
xor r8d, r8d
call qword [rax + 0x48]
test rax, rax
je 0x1400b7476
mov rbx, rax
jmp 0x1400b74ab
mov rcx, qword [rdi + 0xe8]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x28], 0
lea rcx, [rsp + 0x28]
call sub.KERNEL32.dll_QueryPerformanceCounter
test eax, eax
je 0x1400b7595
mov rbx, qword [rsp + 0x28]
mov rcx, qword [0x140259130]
test rcx, rcx
jne 0x1400b7269
mov qword [rsp + 0x28], 0
lea rcx, [rsp + 0x28]
call sub.KERNEL32.dll_QueryPerformanceFrequency
test eax, eax
je 0x1400b7595
mov rcx, qword [rsp + 0x28]
mov qword [0x140259130], rcx
test rcx, rcx
je 0x1400b759a
mov rax, rbx
or rax, rcx
shr rax, 0x20
je 0x1400b727f
mov rax, rbx
xor edx, edx
div rcx
jmp 0x1400b7285
mov eax, ebx
xor edx, edx
div ecx
imul r8, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x1400b72a9
xor edx, edx
div rcx
mov rcx, rax
jmp 0x1400b72af
xor edx, edx
div ecx
mov ecx, eax
add rcx, r8
mov rax, rcx
shr rax, 9
movabs rdx, 0x44b82fa09b5a53
mul rdx
shr rdx, 0xb
imul eax, edx, 0x3b9aca00
sub ecx, eax
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x30], ecx
lea rcx, [rsp + 0x48]
lea rdx, [rsp + 0x28]
call fcn.140093890
cmp edx, 0x3b9aca00
jne 0x1400b734b
movzx eax, byte [0x140259141]
mov edx, 0x1a
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x1400b759a
movups xmm0, xmmword [0x1401ff9d1]
movups xmmword [rax + 0xa], xmm0
movups xmm0, xmmword [0x1401ff9c7]
movups xmmword [rax], xmm0
mov qword [rsp + 0x28], 0x1a
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0x1a
lea rdx, [rsp + 0x28]
mov cl, 0x16
call fcn.1400c9620
jmp 0x1400b757d
mov ebp, edx
mov r14, rax
mov rcx, qword [rdi + 0xd8]
mov rax, qword [rdi + 0xe0]
call qword [rax + 0xb8]
test rax, rax
je 0x1400b718f
mov rbx, rax
mov ecx, 0x3e8
mov rax, r14
mul rcx
mov r14, rax
seto r15b
mov eax, 0xffffffff
jo 0x1400b73cb
mov ecx, ebp
imul rcx, rcx, 0x431bde83
shr rcx, 0x32
add rcx, r14
jb 0x1400b73cb
imul edx, ebp, 0x68c26139
ror edx, 6
xor r8d, r8d
cmp edx, 0x10c7
setae r8b
add rcx, r8
jb 0x1400b73cb
mov eax, 0xffffffff
cmp rcx, rax
cmovb rax, rcx
test rax, rax
je case.0x1400b7631.131
mov dword [rsp + 0x28], eax
mov rcx, qword [rbx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x28]
mov edx, 0xffff
mov r8d, 0x1006
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x1400b7464
mov eax, 0xffffffff
test r15b, r15b
jne 0x1400b7437
mov ecx, ebp
imul rcx, rcx, 0x431bde83
shr rcx, 0x32
add r14, rcx
jb 0x1400b7437
imul ecx, ecx, 0xf4240
xor edx, edx
sub ebp, ecx
setne dl
add r14, rdx
jb 0x1400b7437
mov eax, 0xffffffff
cmp r14, rax
cmovb rax, r14
test rax, rax
je case.0x1400b7631.131
mov dword [rsp + 0x28], eax
mov rcx, qword [rbx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x28]
mov edx, 0xffff
mov r8d, 0x1005
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
jne 0x1400b718f
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
loopne 0x1400b748d
or rax, 2
jmp 0x1400b757d
mov qword [rdi + 0xc0], 0
mov rbx, qword [rsp + 0x38]
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rdi + 0xc8], xmm0
xor eax, eax
sub rbx, rax
test r14, r14
je 0x1400b74ab
add r14, rax
mov qword [rsi], r14
mov qword ss:[rsi + 8], rbx
jmp 0x1400b7588
mov rcx, rbx
call fcn.1400b75a0
mov ecx, eax
mov rax, rbx
cmp cl, 0xd
jne 0x1400b757d
movzx eax, byte [0x140259141]
mov edx, 0x1a
xor ecx, ecx
call fcn.14008b700
test rax, rax
ror byte [rdi], 0x84
invalid
add byte [rax], al
add byte [rax], al
movups xmm0, xmmword [0x1401ff9d1]
movups xmmword [rax + 0xa], xmm0
movups xmm0, xmmword [0x1401ff9c7]
movups xmmword [rax], xmm0
mov qword [rsp + 0x28], 0x1a
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0x1a
and al, 0x38
sbb al, byte [rax]
add byte [rax], al
invalid
lea rdx, [rsp + 0x28]
mov cl, 0x16
call fcn.1400c9620
mov ecx, ebx
and ecx, 3
lea rdx, [rcx - 2]
cmp rdx, 2
jb 0x1400b757d
test rcx, rcx
je 0x1400b757d
mov r15, rax
lea rdi, [rbx - 1]
dec dword [rbx + rcx*4 + 0x73]
dec dword [rax - 0x75]
pop rbx
invalid
mov rcx, r14
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x1400b7560
cmp qword [rbx + 0x10], 0x11
jb case.0x1400b6c9f.57
mov r14, qword [r14 - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, r14
call sub.KERNEL32.dll_HeapFree
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, rdi
mov eax, edi
call sub.KERNEL32.dll_HeapFree
mov rax, r15
clc
jmp 0x1400b757d
lea rax, [0x1401dbba0]
mov qword [rsi + 8], rax
mov qword [rsi], 0
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
call sub.KERNEL32.dll_GetLastError
ud2