Function at 0x1400554d1
Capabilities:
Set socket configuration

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x158
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xd0], 0xfffffffffffffffe
mov r12, r9
mov r14, r8
mov rbx, rdx
mov rsi, rcx
movzx edi, word [rdx]
test di, di
push 2
pop rax
push 0x17
pop r15
cmove r15d, eax
mov rax, qword [0x1401a71d8]
cmp rax, 3
jne 0x140055663
and dword [rsp + 0x20], 0
mov dword [rsp + 0x28], 0x81
push 1
pop rdx
push 6
pop r8
mov ecx, r15d
xor r9d, r9d
call qword [sym.imp.ws2_32.dll_WSASocketW]
cmp rax, 0xffffffffffffffff
je 0x140055588
mov qword [rbp + 0x98], r12
lea r15, [rbp + 0xa0]
mov dword [r15], 1
mov byte [rbp + 0xcf], 1
mov qword [rbp + 0xc0], rax
mov rcx, rax
mov edx, 0x8004667e
mov r8, r15
call qword [sym.imp.ws2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
je 0x1400555de
xor edx, edx
jmp 0x1400555e6
call fcn.1400e0e3b
lea rdx, str.tcp_open_errortcp_set_nonblocking_errortcp_bind_local_errorC:Userschaos.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.35.1_src_syncmpsclist.rs
lea r15, [rbp - 0x38]
push 0xe
pop r8
mov rcx, r15
mov r9, rax
call fcn.140055147
mov rcx, qword [r15]
mov rax, qword [r15 + 8]
movups xmm0, xmmword [r15 + 0x10]
movaps xmmword [rbp + 0xa0], xmm0
test rcx, rcx
je 0x14005554b
movaps xmm0, xmmword [rbp + 0xa0]
movups xmmword [rsi + 0x20], xmm0
mov qword [rsi + 0x10], rcx
mov qword [rsi + 0x18], rax
mov dword [rsi + 8], 0x3b9aca01
jmp 0x140055875
call fcn.1400e0e3b
mov rdx, rax
mov byte [rbp + 0xcf], 1
lea r8, [0x140149aae]
lea rcx, [rbp - 0x38]
push 0x19
pop r9
call fcn.140055a0d
mov rax, qword [rbp - 0x38]
test rax, rax
je 0x14005561b
mov rcx, qword [rbp - 0x20]
mov qword [rsi + 0x28], rcx
movups xmm0, xmmword [rbp - 0x30]
jmp 0x140055859
mov r12d, dword [r14 + 0x48]
cmp r12d, 0x3b9aca00
je 0x14005572e
mov r13, qword [r14 + 0x40]
mov byte [rbp + 0xcf], 1
push 8
pop rdx
push 1
pop r8
mov rcx, qword [rbp + 0xc0]
call fcn.1400e13c3
test rax, rax
je 0x140055697
mov byte [rbp + 0xcf], 1
mov rcx, rax
call fcn.1400551fa
jmp 0x14005572e
lea rax, [rbp + 0x78]
mov byte [rax], 1
lea r8, [rbp - 0x38]
mov qword [r8], rax
lea rax, str.C:Userschaos.cargo_registry_srcindex.crates.io_6f17d22bba15001f_socket2_0.5.5_src_syswindows.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x1401a71d8]
lea r9, [0x140154220]
xor edx, edx
call fcn.140127620
jmp 0x140055525
mov ecx, 0x3e8
mov rax, r13
mul rcx
mov rcx, rax
mov r8, rdx
xor r9d, r9d
mov r10d, 0xf4240
mov eax, r12d
xor edx, edx
div r10d
add rax, rcx
adc r8, 0
mov ecx, 0xffffffff
cmp rax, rcx
cmovae rax, rcx
neg r8
sbb r9d, r9d
or r9d, eax
lea r8, [rbp - 0x38]
mov dword [r8], 1
mov dword [r8 + 4], r9d
and dword [r8 + 8], 0
and dword [rbp + 0xa0], 0
mov byte [rbp + 0xcf], 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x30], r15
and dword [rsp + 0x28], 0
and qword [rsp + 0x20], 0
push 0xc
pop r9
mov rcx, qword [rbp + 0xc0]
mov edx, 0x98000004
call qword [sym.imp.ws2_32.dll_WSAIoctl]
cmp eax, 0xffffffff
je 0x14005597e
test di, di
je 0x140055791
cmp byte [r14 + 0x56], 0
je 0x1400557d3
mov eax, dword [r14 + 0x57]
mov ecx, dword [r14 + 0x63]
lea rdx, [rbp + 0xa0]
mov dword [rdx + 0x10], ecx
mov rcx, qword [r14 + 0x5b]
mov qword [rdx + 8], rcx
mov dword [rdx + 4], eax
and qword [rdx + 0x14], 0
and word [rdx + 0x1c], 0
mov word [rdx], 1
lea r15, [rbp - 0x38]
mov rcx, r15
call fcn.1400e1445
mov byte [rbp + 0xcf], 1
mov rcx, qword [rbp + 0xc0]
mov rdx, r15
call fcn.1400e13fb
jmp 0x140055820
cmp byte [r14 + 0x51], 0
je 0x1400557ef
mov eax, dword [r14 + 0x52]
lea rdx, [rbp + 0xa0]
mov dword [rdx + 2], eax
and word [rdx + 6], 0
and word [rdx], 0
lea r15, [rbp - 0x38]
mov rcx, r15
call fcn.1400e1445
mov byte [rbp + 0xcf], 1
mov rcx, qword [rbp + 0xc0]
mov rdx, r15
call fcn.1400e13fb
jmp 0x140055820
xorps xmm0, xmm0
movups xmmword [rbp + 0xae], xmm0
movups xmmword [rbp + 0xa4], xmm0
mov word [rbp + 0xa0], 1
jmp 0x1400557f7
and qword [rbp + 0xa0], 0
lea r15, [rbp - 0x38]
lea rdx, [rbp + 0xa0]
mov rcx, r15
call fcn.1400e1445
mov byte [rbp + 0xcf], 1
mov rcx, qword [rbp + 0xc0]
mov rdx, r15
call fcn.1400e13fb
mov byte [rbp + 0xcf], 1
lea r8, [0x140149ac7]
lea rcx, [rbp + 0x78]
push 0x14
pop r9
mov rdx, rax
call fcn.140055a0d
mov rax, qword [rbp + 0x78]
test rax, rax
je 0x14005588a
mov rcx, qword [rbp + 0x90]
mov qword [rsi + 0x28], rcx
movups xmm0, xmmword [rbp + 0x80]
movups xmmword [rsi + 0x18], xmm0
mov qword [rsi + 0x10], rax
mov dword [rsi + 8], 0x3b9aca01
mov rcx, qword [rbp + 0xc0]
call qword [sym.imp.ws2_32.dll_closesocket]
nop
add rsp, 0x158
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
cmp byte [r14 + 0x68], 0
je 0x1400558b1
push 4
pop rdx
push 1
pop r8
mov rcx, qword [rbp + 0xc0]
call fcn.1400e13c3
test rax, rax
je 0x1400558b1
mov rcx, rax
call fcn.1400551fa
cmp qword [r14], 0
je 0x1400558ec
mov rax, qword [r14 + 8]
mov rcx, rax
shr rcx, 0x20
xor r8d, r8d
neg rcx
sbb r8d, r8d
or r8d, eax
mov rcx, qword [rbp + 0xc0]
mov edx, 0x1001
call fcn.1400e13c3
test rax, rax
je 0x1400558ec
mov rcx, rax
call fcn.1400551fa
cmp qword [r14 + 0x10], 0
je 0x140055928
mov rax, qword [r14 + 0x18]
mov rcx, rax
shr rcx, 0x20
xor r8d, r8d
neg rcx
sbb r8d, r8d
or r8d, eax
mov rcx, qword [rbp + 0xc0]
mov edx, 0x1002
call fcn.1400e13c3
test rax, rax
je 0x140055928
mov rcx, rax
call fcn.1400551fa
mov eax, dword [rbp + 0x140]
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x68], xmm1
movups xmmword [rbp + 0x58], xmm0
mov ecx, dword [rbp + 0x74]
mov dword [rsi + 0x2c], ecx
movups xmm0, xmmword [rbp + 0x64]
movups xmmword [rsi + 0x1c], xmm0
movups xmm0, xmmword [rbp + 0x54]
movups xmmword [rsi + 0xc], xmm0
mov rcx, qword [rbp + 0x98]
mov qword [rsi], rcx
mov dword [rsi + 8], eax
mov rax, qword [rbp + 0xc0]
mov qword [rsi + 0x30], rax
xor eax, eax
mov byte [rsi + 0x88], al
mov byte [rsi + 0x90], al
jmp 0x140055875
call fcn.1400e0e3b
jmp 0x14005564f