Function at 0x14004619d
Capabilities:
Receive data
Receive data on socket

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov rdi, r9
mov qword [rsp + 0x48], r8
mov r15, rdx
mov qword [rsp + 0x38], rcx
mov r8d, dword [rdx + 0x38]
cmp r8d, 0x3b9aca01
jne 0x140046276
mov r14, qword [r15]
mov rdx, qword [r15 + 8]
mov r8d, dword [r15 + 0x10]
mov rcx, qword [r14 + 0x1e8]
call fcn.1400465f9
test rax, rax
jne 0x14004628b
lea rdx, [r14 + 0x1e8]
mov rcx, r14
call fcn.1400466dd
test rax, rax
jne 0x14004628b
lea rsi, [rsp + 0x50]
mov rcx, r14
call fcn.1400789a7
test al, al
je 0x1400463b8
mov r8, qword [r14 + 0x1e8]
mov rcx, rsi
mov rdx, r14
call fcn.140046749
cmp qword [rsp + 0x50], 0
jne 0x1400463a4
cmp qword [rsp + 0x58], 0
jne 0x14004620e
lea rsi, [rsp + 0x50]
mov rcx, rsi
mov rdx, r14
call fcn.1400768dc
cmp byte [rsi], 0x17
jne 0x1400463ae
cmp qword [rsp + 0x60], 0
jne 0x1400463b8
xorps xmm0, xmm0
mov rax, qword [rsp + 0x38]
movups xmmword [rax], xmm0
jmp 0x14004629b
mov r14, qword [r15 + 0x28]
mov rdx, qword [r15 + 0x30]
mov rcx, r14
call fcn.1400465f9
test rax, rax
je 0x1400462af
mov rcx, qword [rsp + 0x38]
mov qword [rcx + 8], rax
mov qword [rcx], 1
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rbx, [r15 + 0x10]
mov rcx, qword [r15 + 8]
mov r13, qword [r15 + 0x10]
mov r12, qword [r15 + 0x18]
cmp r12, r13
jne 0x1400462f7
cmp rcx, rdi
ja 0x1400462f7
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov rcx, qword [rsp + 0x38]
mov rdx, r14
mov r8, qword [rsp + 0x48]
mov r9, rdi
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.1400a0280
mov rax, r12
sub rax, r13
jbe 0x140046309
mov rsi, qword [r15]
test rsi, rsi
jne 0x140046353
jmp 0x14004628b
mov rsi, qword [r15]
lea rdx, [rsp + 0x50]
mov qword [rdx], rsi
mov qword [rdx + 8], rcx
and qword [rdx + 0x10], 0
mov rax, qword [r15 + 0x20]
mov qword [rdx + 0x18], rax
mov rcx, r14
call fcn.1400a0110
test rax, rax
jne 0x14004628b
and qword [r15 + 0x10], 0
mov r12, qword [rsp + 0x60]
mov qword [r15 + 0x18], r12
mov rax, qword [rsp + 0x68]
mov qword [r15 + 0x20], rax
xor r13d, r13d
mov rax, r12
add rsi, r13
lea rdx, [rsp + 0x78]
mov qword [rdx], rsi
mov qword [rdx + 8], rax
lea rsi, [rsp + 0x50]
mov rcx, rsi
mov r8, qword [rsp + 0x48]
mov r9, rdi
call fcn.140046560
cmp qword [rsi], 0
mov rax, qword [rsi + 8]
jne 0x14004628b
add r13, rax
cmp r13, r12
cmovae r13, r12
mov qword [rbx], r13
mov rcx, qword [rsp + 0x38]
mov qword [rcx + 8], rax
and qword [rcx], 0
jmp 0x14004629b
mov rax, qword [rsp + 0x58]
jmp 0x14004628b
lea rcx, [rsp + 0x50]
call fcn.14007565c
cmp byte [r14 + 0x12a], 0
je 0x1400463d9
mov rax, qword [r14 + 0x1a8]
or rax, qword [r14 + 0x1b8]
sete al
mov dword [rsp + 0x44], eax
jmp 0x1400463e1
mov dword [rsp + 0x44], 0
lea rax, [r14 + 0x48]
mov qword [rsp + 0x70], rax
mov al, byte [r14 + 0x12b]
mov byte [rsp + 0x37], al
xor r15d, r15d
cmp r15, rdi
jae 0x1400464f4
cmp qword [r14 + 0x70], 0
je 0x1400464f4
mov rax, qword [r14 + 0x68]
mov rcx, qword [r14 + 0x58]
mov rdx, qword [r14 + 0x60]
cmp rax, rdx
mov r8d, 0
cmovae r8, rdx
sub rax, r8
imul rax, rax, 0x18
mov rsi, qword [rcx + rax]
mov r12, qword [rcx + rax + 0x10]
mov rcx, r15
mov rdx, qword [rsp + 0x48]
mov r8, rdi
lea r9, [0x140137078]
call fcn.14003ac47
mov rbp, rax
mov rbx, rdx
cmp rdx, r12
mov r13, r12
cmovb r13, rdx
lea rax, str._rustc_36fb58e433c782e27dd41034284e157cf86d587flibrary_std_srcioimpls.rs
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, r12
mov r9, r13
call fcn.140008874
mov rsi, qword [rsp + 0x50]
mov r12, qword [rsp + 0x58]
cmp r13, 1
jne 0x1400464a9
test r12, r12
je 0x140046545
test rbx, rbx
je 0x14004654e
mov al, byte [rsi]
mov byte [rbp], al
mov edx, 1
jmp 0x1400464e2
lea rax, str._rustc_36fb58e433c782e27dd41034284e157cf86d587flibrary_std_srcioimpls.rs
mov qword [rsp + 0x20], rax
xor ecx, ecx
mov rdx, r13
mov r8, rbp
mov r9, rbx
call fcn.14002d0c5
lea rcx, str._rustc_36fb58e433c782e27dd41034284e157cf86d587flibrary_std_srcioimpls.rs
mov qword [rsp + 0x20], rcx
mov rcx, rax
mov r8, rsi
mov r9, r12
call fcn.140050446
mov rdx, r13
mov rcx, qword [rsp + 0x70]
call fcn.140078728
add r15, r13
jmp 0x1400463f8
test r15, r15
je 0x14004650c
mov rdx, qword [rsp + 0x38]
mov qword [rdx + 8], r15
xor eax, eax
mov qword [rdx], rax
jmp 0x14004629b
test rdi, rdi
je 0x1400464f9
cmp byte [rsp + 0x44], 0
jne 0x1400464f9
cmp byte [rsp + 0x37], 0
movabs rax, 0xd00000003
movabs rcx, 0x2500000003
cmove rcx, rax
mov rdx, qword [rsp + 0x38]
mov qword [rdx + 8], rcx
mov eax, 1
jmp 0x140046504
lea r8, str._rustc_36fb58e433c782e27dd41034284e157cf86d587flibrary_std_srcioimpls.rs
jmp 0x140046555
lea r8, str._rustc_36fb58e433c782e27dd41034284e157cf86d587flibrary_std_srcioimpls.rs
xor ecx, ecx
xor edx, edx
call fcn.14010ea50
ud2