Function at 0x140089af0
Capabilities:
Set socket configuration

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x88
mov rbx, qword [rcx + 0x10]
lea r12, [rsp + 0x50]
mov rbp, rcx
mov rdi, rdx
mov rcx, r12
call fcn.14005c650
movdqu xmm0, xmmword [rsp + 0x50]
lea rdx, [rbx + 8]
mov rcx, rdi
lea r8, [rbx + 0x98]
movups xmmword [rbx + 0x148], xmm0
call fcn.140088540
mov esi, eax
test eax, eax
je 0x140089b80
mov r9, qword [rbx + 0x98]
cmp r9, 0xffffffffffffffff
jne 0x140089b60
mov eax, esi
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov rdx, qword [rbp + 0x18]
mov r8d, 1
mov rcx, rdi
call fcn.140088fd0
mov qword [rbx + 0x98], 0xffffffffffffffff
jmp 0x140089b49
mov rcx, qword [rbp + 0x10]
mov rdx, rdi
call fcn.140089490
mov esi, eax
test eax, eax
jne 0x140089b3c
mov eax, dword [rbx + 8]
cmp eax, 0x17
je 0x140089db8
mov rcx, qword [rbx + 0x98]
cmp eax, 2
je 0x140089c88
cmp eax, 0x17
je 0x140089c88
call fcn.140089a10
cmp qword [rdi + 0x278], 0
je 0x140089c0a
mov edx, 1
mov rcx, rdi
call fcn.140054540
mov rdx, qword [rbx + 0x98]
mov rcx, qword [rdi + 0x280]
xor r8d, r8d
call qword [rdi + 0x278]
xor edx, edx
mov rcx, rdi
mov r13d, eax
call fcn.140054540
cmp r13d, 2
je 0x140089df0
test r13d, r13d
jne 0x140089e00
xor r13d, r13d
mov eax, dword [rbx + 8]
cmp eax, 2
je 0x140089d78
cmp eax, 0x17
je 0x140089d78
mov rcx, qword [rbx + 0x98]
mov edx, 1
call fcn.14008d7d0
cmp dword [rbx + 0xc], 2
movzx eax, byte [rbx + 0x17c]
setne dl
shl edx, 2
and eax, 0xfffffffb
or eax, edx
mov byte [rbx + 0x17c], al
test r13b, r13b
je 0x140089b49
mov rcx, qword [rbp + 0x10]
mov rdx, rdi
call fcn.140089520
mov rcx, r12
call fcn.14005c650
movdqu xmm1, xmmword [rsp + 0x50]
movups xmmword [rbx + 0x158], xmm1
or byte [rbp + 0x24], 1
jmp 0x140089b49
cmp dword [rbx + 0xc], 1
jne 0x140089bb7
test byte [rdi + 0xa0f], 4
jne 0x140089e10
call fcn.140089a10
movzx eax, byte [rdi + 0xa10]
test al, 2
je 0x140089bbc
mov r13, qword [rbx + 0x98]
shr al, 1
lea r9, [rsp + 0x6c]
mov dword [rsp + 0x20], 4
and eax, 1
mov r8d, 8
mov edx, 0xffff
mov dword [rsp + 0x6c], eax
mov rcx, r13
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
js 0x140089bbc
mov ecx, dword [rdi + 0x9b0]
mov dword [rsp + 0x74], 1
call fcn.140065250
mov ecx, dword [rdi + 0x9b4]
imul eax, eax, 0x3e8
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0x78], eax
call fcn.140065250
mov dword [rsp + 0x28], 0
mov r9d, 0xc
mov rcx, r13
imul eax, eax, 0x3e8
lea r8, [rsp + 0x74]
mov qword [rsp + 0x40], 0
mov edx, 0x98000004
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x20], 0
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0x7c], eax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], rax
call qword [sym.imp.WS2_32.dll_WSAIoctl]
jmp 0x140089bbc
lea rcx, [rbx + 0x18]
call fcn.14008d720
mov r9d, dword [rbx + 8]
mov rdx, qword [rbp + 0x18]
mov rcx, rdi
mov r8, qword [rbx + 0x98]
mov dword [rsp + 0x20], eax
call fcn.140088910
test eax, eax
je 0x140089c22
cmp eax, 1
mov esi, 7
cmovne esi, eax
jmp 0x140089b3c
lea r9, [rsp + 0x74]
mov r8d, 0x1b
mov edx, 0x29
mov rcx, qword [rbx + 0x98]
mov dword [rsp + 0x74], 0
mov dword [rsp + 0x20], 4
call qword [sym.imp.WS2_32.dll_setsockopt]
mov eax, dword [rbx + 8]
jmp 0x140089b9e
mov r13d, 1
jmp 0x140089c0d
mov esi, 0x2a
jmp 0x140089b3c
lea r9, [rsp + 0x74]
mov dword [rsp + 0x74], 1
mov edx, 6
mov r8d, 1
mov dword [rsp + 0x20], 4
call qword [sym.imp.WS2_32.dll_setsockopt]
mov rcx, qword [rbx + 0x98]
jmp 0x140089c9f