Function at 0x1400b1c20
Capabilities:
Set socket configuration

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x3d8
lea rbp, [rsp + 0x80]
add byte [rax], 0
add byte [rax - 0x39], cl
test dword [rax + 3], edx
add byte [rax], al
invalid
invalid
invalid
dec dword [rcx + rcx*4 - 0x7b]
sub byte [rbx], al
add byte [rax], al
mov rsi, rdx
mov qword [rbp + 0x318], rcx
movzx eax, byte [rdx + 0x378]
test eax, eax
invalid
je 0x1400b1c8c
cmp eax, 3
jne case.default.0x1400b1c8a
lea rax, [rsi + 0x1f0]
mov qword [rbp + 0x320], rax
movzx eax, byte [rsi + 0x280]
lea rcx, [0x1401d5718]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
mov qword [rsi + 0x10], rax
mov qword [rsi + 0x18], rcx
mov qword [rsi + 0x20], 0
mov qword [rsi + 0x40], rax
xor r12d, r12d
mov rcx, qword [rax + 0x10]
mov r15, r12
cmp rcx, qword [rax + 0x18]
jne 0x1400b1d6c
test r15, r15
je 0x1400b3118
mov rcx, qword [rsi + 0x28]
mov rax, qword [rsi + 0x30]
mov r8, qword [rsi + 0x38]
jmp 0x1400b32c9
add byte [rax], al
lea rdx, [rcx + 0x20]
mov qword [rax + 0x10], rdx
movzx eax, word [rcx]
movups xmm0, xmmword [rcx + 0x10]
movups xmmword [rbp - 0x22], xmm0
movups xmm0, xmmword [rcx + 2]
movaps xmmword [rbp - 0x30], xmm0
cmp ax, 2
je 0x1400b310b
jp 0x1400b1da2
add byte [rax], al
mov r15, qword [rsi + 0x20]
test r15, r15
jne 0x1400b1cc4
movzx eax, byte [0x1401de2b8]
mov rcx, qword [0x1401de220]
test rcx, rcx
jne 0x1400b3144
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je case.0x1400a3159.93
mov rcx, rax
mov qword [0x1401de220], rax
mov r8d, 0x13
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je case.0x1400a3159.93
invalid
lodsb al, byte [rsi]
invalid
add byte [rax], al
mov rbx, rax
movups xmm0, xmmword [str.Network_unreachabletcp_connect_error]
movups xmmword [rax], xmm0
mov dword [rax + 0xf], 0x656c6261
movzx eax, byte [0x1401de2b8]
mov rcx, qword [0x1401de220]
test rcx, rcx
jne 0x1400b319b
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1400b3718
mov rcx, rax
mov qword [0x1401de220], rax
mov r8d, 0x18
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1400b3718
mov rdi, rax
mov qword [rax], rbx
mov qword [rax + 8], 0x13
mov qword [rax + 0x10], 0x13
movzx eax, byte [0x1401de2b8]
mov rcx, qword [0x1401de220]
test rcx, rcx
jne 0x1400b31f4
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1400b3729
invalid
invalid
add byte [rax], al
mov rcx, rax
mov qword [0x1401de220], rax
mov r8d, 0x18
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1400b3729
mov rbx, rax
mov qword [rax], rdi
lea rax, [0x14019fdc8]
mov qword [rbx + 8], rax
mov byte [rbx + 0x10], 7
movzx eax, byte [0x1401de2b8]
mov rcx, qword [0x1401de220]
test rcx, rcx
jne 0x1400b324c
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
ror byte [rdi], 0x84
movsd dword [rdi], dword [rsi]
add eax, dword [rax]
invalid
mov rcx, rax
mov qword [0x1401de220], rax
mov r8d, 0x11
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1400b35e7
invalid
mov r15, rax
movups xmm0, xmmword [0x1401a24f3]
movups xmmword [rax], xmm0
mov byte [rax + 0x10], 0x72
movzx eax, byte [0x1401de2b8]
mov rcx, qword [0x1401de220]
test rcx, rcx
jne 0x1400b32a0
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1400b35d6
mov rcx, rax
mov qword [0x1401de220], rax
mov r8d, 8
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1400b35d6
invalid
inc rbx
mov qword [rax], rbx
lea r8, [0x1401a2d00]
mov ecx, 0x11
mov r14d, 2
mov ecx, 1
mov edx, 0x11
mov ecx, 8
mov qword [rbp + 0x340], rdi