Function at 0x14031bc30
Capabilities:
Send data
Send data on socket

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0x80]
movaps xmmword [rbp], xmm6
mov qword [rbp - 8], 0xfffffffffffffffe
mov qword [rbp - 0x40], r9
mov r15, rdx
mov qword [rbp - 0x28], rcx
mov rbx, qword [rdx + 0x10]
mov r8, qword [r8]
lea rcx, [rbp - 0x18]
mov rdx, rbx
mov qword [rbp - 0x38], r8
mov r9b, 1
call fcn.14031a7d0
movzx eax, byte [rbp - 0xf]
cmp al, 3
jne 0x14031bca7
mov rax, qword [rbp - 0x28]
mov qword [rax], 2
movaps xmm6, xmmword [rbp]
add rsp, 0x98
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, qword [rbp + 0x80]
mov r12, qword [r15 + 0x18]
mov rsi, qword [r15 + 0x20]
mov r13d, 0xffffffff
cmp rcx, r13
cmovb r13, rcx
xorps xmm6, xmm6
jmp 0x14031bceb
lea rcx, [rbp - 0x18]
mov rdx, rbx
mov r8, qword [rbp - 0x38]
mov r9b, 1
call fcn.14031a7d0
movzx eax, byte [rbp - 0xf]
cmp al, 3
je 0x14031bc84
mov rdi, qword [rbp - 0x18]
cmp al, 2
je 0x14031bfad
cmp r12, 0xffffffffffffffff
je 0x14031bff8
movzx r14d, byte [rbp - 0x10]
mov dword [rbp - 0x1c], 0
movups xmmword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], 0
mov rcx, r12
mov rdx, qword [rbp - 0x40]
mov r8d, r13d
lea r9, [rbp - 0x1c]
call sub.ws2_32.dll_WSASend
cmp eax, 0xffffffff
jne 0x14031bfc1
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov rcx, rax
shl rcx, 0x20
or rcx, 2
mov qword [rbp - 0x30], rcx
mov ecx, eax
call fcn.1402ff3a0
cmp al, 0xd
jne 0x14031bdc0
test rsi, rsi
je 0x14031bdc0
mov rcx, qword [rsi]
mov rax, qword [rsi + 8]
lock inc qword [rax]
jle 0x14031c012
add rcx, 0x10
mov rdx, qword [rsi + 8]
mov r8, qword [rsi + 0x10]
movzx r9d, byte [rsi + 0x18]
call fcn.140292210
mov r15, rax
test rax, rax
je 0x14031bdc0
mov qword [rbp - 0x10], r15
mov qword [rbp - 0x18], 1
mov rcx, qword [rbp - 0x30]
call fcn.140290870
mov eax, r15d
and eax, 3
lea rcx, [0x14031c0a0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov qword [rbp - 0x18], 1
mov r15, qword [rbp - 0x30]
mov qword [rbp - 0x10], r15
mov eax, r15d
and eax, 3
lea rcx, [0x14031c0a0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movzx eax, byte [r15 + 0x10]
jmp case.0x14031be8c.0
movzx eax, byte [r15 + 0xf]
jmp case.0x14031be8c.0
add byte [rax], al
add byte [rax], al
mov rcx, r15
shr rcx, 0x20
call fcn.1402ff3a0
cmp al, 0xd
jne 0x14031bfe4
movzx ecx, r14b
and edi, 3
mov rax, qword [rbx]
shl rcx, 0x10
xor rdi, 0x7f00000f
nop dword [rax]
mov rdx, rax
shr rdx, 0x10
cmp r14b, dl
jne 0x14031be4a
mov edx, eax
and edx, edi
or rdx, rcx
lock cmpxchg qword [rbx], rdx
jne 0x14031be30
cmp qword [rbp - 0x18], 0
je 0x14031bcd0
lea rcx, [rbp - 0x10]
call fcn.140077a10
jmp 0x14031bcd0
mov rcx, r15
shr rcx, 0x20
cmp ecx, 0x28
ja case.default.0x14031be8c
xor eax, eax
lea rdx, [0x14031c0b0]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
mov al, 1
jmp case.0x14031be8c.0
invalid
invalid
invalid
mov al, 0x29
jmp case.0x14031be8c.0
invalid
invalid
invalid
mov al, 2
jmp case.0x14031be8c.0
invalid
invalid
invalid
mov al, 3
jmp case.0x14031be8c.0
invalid
invalid
invalid
mov al, 4
jmp case.0x14031be8c.0
invalid
invalid
invalid
mov al, 5
jmp case.0x14031be8c.0
invalid
invalid
invalid
mov al, 6
jmp case.0x14031be8c.0
invalid
invalid
invalid
mov al, 7
jmp case.0x14031be8c.0
mov al, 8
jmp case.0x14031be8c.0
mov al, 9
jmp case.0x14031be8c.0
mov al, 0xa
jmp case.0x14031be8c.0
mov al, 0xb
jmp case.0x14031be8c.0
mov al, 0xc
jmp case.0x14031be8c.0
mov al, 0xd
jmp case.0x14031be8c.0
mov al, 0xe
jmp case.0x14031be8c.0
mov al, 0xf
jmp case.0x14031be8c.0
mov al, 0x10
jmp case.0x14031be8c.0
mov al, 0x11
jmp case.0x14031be8c.0
mov al, 0x12
jmp case.0x14031be8c.0
mov al, 0x13
jmp case.0x14031be8c.0
mov al, 0x14
jmp case.0x14031be8c.0
mov al, 0x15
jmp case.0x14031be8c.0
mov al, 0x16
jmp case.0x14031be8c.0
mov al, 0x17
jmp case.0x14031be8c.0
mov al, 0x18
jmp case.0x14031be8c.0
mov al, 0x19
jmp case.0x14031be8c.0
mov al, 0x1a
jmp case.0x14031be8c.0
mov al, 0x1b
jmp case.0x14031be8c.0
mov al, 0x1c
jmp case.0x14031be8c.0
mov al, 0x1d
jmp case.0x14031be8c.0
mov al, 0x1e
jmp case.0x14031be8c.0
mov al, 0x1f
jmp case.0x14031be8c.0
mov al, 0x20
jmp case.0x14031be8c.0
mov al, 0x21
jmp case.0x14031be8c.0
mov al, 0x22
jmp case.0x14031be8c.0
mov al, 0x23
jmp case.0x14031be8c.0
mov al, 0x24
jmp case.0x14031be8c.0
mov al, 0x25
jmp case.0x14031be8c.0
mov al, 0x26
jmp case.0x14031be8c.0
mov al, 0x27
jmp case.0x14031be8c.0
mov al, 0x28
jmp case.0x14031be8c.0
mov rax, qword [rbp - 0x28]
mov qword [rax], 1
mov qword [rax + 8], rdi
jmp 0x14031bc8f
mov ecx, dword [rbp - 0x1c]
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x10], rcx
mov rax, qword [rbp - 0x28]
mov qword [rax], 0
mov qword [rax + 8], rcx
jmp 0x14031bc8f
mov rax, qword [rbp - 0x28]
mov qword [rax], 1
mov qword [rax + 8], r15
jmp 0x14031bc8f
lea rcx, str.called__Option::unwrap____on_a__None__valueC:Usersidofi.cargo_registry_srcindex.crates.io_6f17d22bba15001fwinapi_util_0.1.5_srcwin.rs
lea r8, str.C:Usersidofi.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.29.1_srciopoll_evented.rs
mov edx, 0x2b
call fcn.140354ff0
ud2
ud2