Function at 0x1400a7380
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 0x1400a740d
mov r14, qword [rdi + 0xb0]
mov rax, qword [rdi + 0xc0]
mov rbx, qword [rdi + 0xc8]
cmp rax, rbx
jb 0x1400a75dc
mov rax, qword [rdi + 0xb8]
mov qword [rsp + 0x28], r14
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 0x1400a75be
mov rbx, rax
jmp 0x1400a75f3
mov rcx, qword [rdi + 0xe8]
mov qword [rsp + 0x48], rcx
mov dword [rsp + 0x50], eax
call fcn.140089ab0
mov r8d, edx
lea rcx, [rsp + 0x48]
mov rdx, rax
call fcn.140089b90
cmp edx, 0x3b9aca00
jne 0x1400a7493
movzx eax, byte [0x1401bb111]
mov edx, 0x1a
xor ecx, ecx
call fcn.140089d40
test rax, rax
je 0x1400a76e4
movups xmm0, xmmword [0x14016afda]
movups xmmword [rax + 0xa], xmm0
movups xmm0, xmmword [str.timed_out_reading_response]
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.1400b4a40
jmp 0x1400a76cc
mov ebp, edx
mov r14, rax
mov rcx, qword [rdi + 0xd8]
mov rax, qword [rdi + 0xe0]
call qword [rax + 0xb8]
test rax, rax
je 0x1400a739f
mov rbx, rax
mov ecx, 0x3e8
mov rax, r14
mul rcx
mov r14, rax
seto r15b
mov eax, 0xffffffff
jo 0x1400a7513
mov ecx, ebp
imul rcx, rcx, 0x431bde83
shr rcx, 0x32
add rcx, r14
jb 0x1400a7513
imul edx, ebp, 0x68c26139
ror edx, 6
xor r8d, r8d
cmp edx, 0x10c7
setae r8b
add rcx, r8
jb 0x1400a7513
mov eax, 0xffffffff
cmp rcx, rax
cmovb rax, rcx
test rax, rax
je 0x1400a76c5
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 0x1400a75ac
mov eax, 0xffffffff
test r15b, r15b
jne 0x1400a757f
mov ecx, ebp
imul rcx, rcx, 0x431bde83
shr rcx, 0x32
add r14, rcx
jb 0x1400a757f
imul ecx, ecx, 0xf4240
xor edx, edx
sub ebp, ecx
setne dl
add r14, rdx
jb 0x1400a757f
mov eax, 0xffffffff
cmp r14, rax
cmovb rax, r14
test rax, rax
je 0x1400a76c5
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 0x1400a739f
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
jmp 0x1400a76cc
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 0x1400a75f3
add r14, rax
mov qword [rsi], r14
mov qword [rsi + 8], rbx
jmp 0x1400a76d7
mov rcx, rbx
call fcn.1400a5bb0
mov ecx, eax
mov rax, rbx
cmp cl, 0xd
jne 0x1400a76cc
movzx eax, byte [0x1401bb111]
mov edx, 0x1a
xor ecx, ecx
call fcn.140089d40
test rax, rax
je 0x1400a76e4
movups xmm0, xmmword [0x14016afda]
movups xmmword [rax + 0xa], xmm0
movups xmm0, xmmword [str.timed_out_reading_response]
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.1400b4a40
mov ecx, ebx
and ecx, 3
lea rdx, [rcx - 2]
cmp rdx, 2
jb 0x1400a76cc
test rcx, rcx
je 0x1400a76cc
mov r14, rax
mov rdi, qword [rbx - 1]
mov r15, qword [rbx + 7]
mov rax, qword [r15]
test rax, rax
je 0x1400a7689
mov rcx, rdi
call rax
dec rbx
cmp qword [r15 + 8], 0
je 0x1400a76af
cmp qword [r15 + 0x10], 0x11
jb 0x1400a769e
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1401bb0c8]
xor edx, edx
mov r8, rdi
call fcn.1400fda74
mov rcx, qword [0x1401bb0c8]
xor edx, edx
mov r8, rbx
call fcn.1400fda74
mov rax, r14
jmp 0x1400a76cc
lea rax, [0x140146df0]
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
ud2