Function at 0x140116e2b
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x168
mov rbx, r8
mov rsi, rdx
mov rdi, rcx
mov r13, qword [rcx + 0xc0]
test r13, r13
je 0x140116e5e
lock inc qword [r13]
jle 0x14011745d
cmp byte [rsi + 0x68], 0
je 0x140116ec1
mov rax, qword [rsi + 0x30]
mov rcx, qword [rsi + 0x10]
lea r8, [rsp + 0xc0]
mov qword [r8 + 0x10], rcx
movups xmm0, xmmword [rsi]
movaps xmmword [r8], xmm0
mov qword [r8 + 0x18], r13
mov qword [r8 + 0x20], rax
movups xmm0, xmmword [rsi + 0x38]
movups xmmword [r8 + 0x28], xmm0
movups xmm0, xmmword [rsi + 0x18]
movups xmmword [r8 + 0x38], xmm0
mov rax, qword [rsi + 0x28]
mov qword [r8 + 0x48], rax
mov byte [r8 + 0xa0], 0
mov rcx, qword [rdi + 0xc8]
mov rdx, qword [rdi + 0xd0]
call fcn.140117654
jmp 0x140117411
mov bpl, byte [rsi + 0x69]
test bpl, bpl
jne 0x1401173b7
movups xmm0, xmmword [rsi + 0x48]
movups xmm1, xmmword [rsi + 0x58]
movups xmmword [rsp + 0xe8], xmm1
movups xmmword [rsp + 0xd8], xmm0
movups xmm0, xmmword [rsi + 0x30]
movaps xmmword [rsp + 0xc0], xmm0
mov rax, qword [rsi + 0x40]
mov qword [rsp + 0xd0], rax
mov ecx, 0x40
mov edx, 8
call fcn.140101491
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
movaps xmm2, xmmword [rsp + 0xe0]
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax + 0x20], xmm2
mov rcx, qword [rsp + 0xf0]
mov qword [rax + 0x30], rcx
mov byte [rax + 0x38], 0
lea rcx, [rsp + 0x70]
mov qword [rcx], rax
mov rdx, rbx
call fcn.14011799f
test al, al
je 0x140116f61
cmp byte [rdi + 0x80], 2
jne 0x140116f70
mov bl, 2
jmp 0x140116fc7
mov rcx, qword [rsp + 0x70]
call fcn.140117d89
jmp 0x1401173b7
mov r14, qword [rdi + 0x70]
mov rax, qword [r14 + 0x40]
movabs rcx, 0x7fffffffffffffff
mov rdx, qword [r14 + 0x30]
xor rdx, rcx
cmp rax, rdx
je 0x140117445
lea rdx, [rax + 1]
lock cmpxchg qword [r14 + 0x40], rdx
jne 0x140116f82
lock inc qword [r14]
jle 0x14011745d
lea rcx, [rsp + 0xc0]
and word [rcx], 0
and qword [rcx + 8], 0
mov byte [rcx + 0x18], 0
call fcn.1401185a3
mov r12, rax
xor ebx, ebx
test r13, r13
je 0x140116fd7
lock inc qword [r13]
jle 0x14011745d
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x30], rax
mov rax, qword [rdi + 0xc8]
test rax, rax
je 0x14011705b
mov r15, qword [rdi + 0xd0]
mov rcx, qword [r15 + 0x10]
dec rcx
and rcx, 0xfffffffffffffff0
mov byte [rsp + 0x68], bpl
lea rbp, [rax + rcx]
add rbp, 0x10
mov ecx, 0x28
mov edx, 8
call fcn.140101491
mov rcx, qword [rsp + 0x30]
mov qword [rax], rcx
mov qword [rax + 8], r13
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r12
mov byte [rax + 0x20], bl
mov ecx, dword [rsp + 0x29]
mov edx, dword [rsp + 0x2c]
mov dword [rax + 0x21], ecx
mov dword [rax + 0x24], edx
lea r8, fcn.140117dbb
mov rcx, rbp
mov bpl, byte [rsp + 0x68]
mov rdx, rax
call qword [r15 + 0x18]
jmp 0x1401173b7
call fcn.14019156a
lea r15, [rsp + 0x80]
mov qword [r15], rax
mov qword [rsp + 0x90], r15
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xb0], r12
mov byte [rsp + 0xb8], bl
mov eax, dword [rsp + 0x29]
mov ecx, dword [rsp + 0x2c]
mov dword [rsp + 0xb9], eax
mov dword [rsp + 0xbc], ecx
call fcn.14010654f
test rax, rax
je 0x14011745f
mov rcx, rax
call fcn.140105bd2
cmp dword [rax], 2
mov qword [rsp + 0xc0], r15
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xd0], r13
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xe0], r12
mov dword [rsp + 0x3c], ebx
mov byte [rsp + 0xe8], bl
mov r8d, dword [rsp + 0x29]
mov ecx, dword [rsp + 0x2c]
mov dword [rsp + 0xe9], r8d
mov dword [rsp + 0xec], ecx
mov qword [rsp + 0x68], rdx
jne 0x14011713a
lea rcx, [rsp + 0xc8]
call fcn.140117dbb
xor r15d, r15d
jmp 0x14011738b
mov r8, rax
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x60], rcx
add rax, 8
test byte [r8], 1
je 0x140117271
mov rbx, qword [rax]
lock inc qword [rbx]
jle 0x14011745d
lea rax, [rbx + 0x10]
mov qword [rsp + 0x58], rax
lea rax, [rbx + 0x88]
mov qword [rsp + 0x50], rax
mov rcx, qword [rbx + 0x1f0]
mov rdx, qword [rbx + 0x1f8]
call fcn.140129cf8
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rdx
mov ecx, 0x100
mov edx, pe_nt_image_headers64
call fcn.140101491
mov r15, rax
mov qword [rax], 0xcc
and qword [rax + 8], 0
lea rax, [0x1402751b0]
mov qword [r15 + 0x10], rax
and qword [r15 + 0x18], 0
mov qword [r15 + 0x20], rbx
mov rax, qword [rsp + 0x60]
mov qword [r15 + 0x28], rax
and dword [r15 + 0x30], 0
mov rax, qword [rsp + 0x30]
mov qword [r15 + 0x38], rax
mov qword [r15 + 0x40], r13
mov qword [r15 + 0x48], r14
mov qword [r15 + 0x50], r12
mov eax, dword [rsp + 0x3c]
mov byte [r15 + 0x58], al
mov eax, dword [rsp + 0x29]
mov ecx, dword [rsp + 0x2c]
mov dword [r15 + 0x59], eax
mov dword [r15 + 0x5c], ecx
and qword [r15 + 0x70], 0
xorps xmm0, xmm0
movaps xmmword [r15 + 0x60], xmm0
mov rax, qword [rsp + 0x48]
mov qword [r15 + 0x80], rax
mov rax, qword [rsp + 0x40]
mov qword [r15 + 0x88], rax
mov rcx, qword [rsp + 0x50]
mov rdx, r15
mov r8, r15
call fcn.14010605a
mov r14, rax
lea r8, [rsp + 0x88]
mov rax, qword [rsp + 0x60]
mov qword [r8], rax
mov rcx, qword [rbx + 0x1e0]
mov rdx, qword [rbx + 0x1e8]
call fcn.1401955a8
mov rcx, qword [rsp + 0x58]
mov rdx, r14
call fcn.140193561
jmp 0x14011738b
mov qword [rsp + 0x78], rax
mov rax, qword [rax]
lock inc qword [rax]
jle 0x14011745d
lea rcx, [rax + 0x78]
mov qword [rsp + 0x58], rcx
mov rcx, qword [rax + 0x190]
mov rdx, qword [rax + 0x198]
mov rbx, rax
mov qword [rsp + 0x40], rax
call fcn.140129cf8
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rdx
mov ecx, 0x100
mov edx, pe_nt_image_headers64
call fcn.140101491
mov r15, rax
mov qword [rax], 0xcc
and qword [rax + 8], 0
lea rax, [0x1402752a0]
mov qword [r15 + 0x10], rax
and qword [r15 + 0x18], 0
mov qword [r15 + 0x20], rbx
mov rbx, qword [rsp + 0x60]
mov qword [r15 + 0x28], rbx
and dword [r15 + 0x30], 0
mov rax, qword [rsp + 0x30]
mov qword [r15 + 0x38], rax
mov qword [r15 + 0x40], r13
mov qword [r15 + 0x48], r14
mov qword [r15 + 0x50], r12
mov eax, dword [rsp + 0x3c]
mov byte [r15 + 0x58], al
mov eax, dword [rsp + 0x29]
mov ecx, dword [rsp + 0x2c]
mov dword [r15 + 0x59], eax
mov dword [r15 + 0x5c], ecx
and qword [r15 + 0x70], 0
xorps xmm0, xmm0
movaps xmmword [r15 + 0x60], xmm0
mov rax, qword [rsp + 0x50]
mov qword [r15 + 0x80], rax
mov rax, qword [rsp + 0x48]
mov qword [r15 + 0x88], rax
mov rcx, qword [rsp + 0x58]
mov rdx, r15
mov r8, r15
call fcn.14010605a
mov r14, rax
lea r8, [rsp + 0x88]
mov qword [r8], rbx
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x180]
mov rdx, qword [rax + 0x188]
call fcn.1401955a8
test r14, r14
je 0x14011738b
mov rcx, qword [rsp + 0x78]
mov rdx, r14
call fcn.1401931ad
mov rax, qword [rsp + 0x68]
dec qword [rax]
test r15, r15
je 0x140117470
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [r15], rcx
je 0x1401173b7
mov rax, qword [r15 + 0x10]
mov rcx, r15
call qword [rax + 0x20]
mov rax, qword [rsi + 0x10]
lea r8, [rsp + 0xc0]
mov qword [r8 + 0x10], rax
movups xmm0, xmmword [rsi]
movaps xmmword [r8], xmm0
mov qword [r8 + 0x18], r13
and qword [r8 + 0x20], 0
movups xmm0, xmmword [rsi + 0x18]
movups xmmword [r8 + 0x38], xmm0
mov rax, qword [rsi + 0x28]
mov qword [r8 + 0x48], rax
mov byte [r8 + 0xa0], 0
mov rcx, qword [rdi + 0xc8]
mov rdx, qword [rdi + 0xd0]
call fcn.140117654
test bpl, bpl
je 0x140117430
lea rcx, [rsi + 0x30]
call fcn.14011699c
add rsi, 0x48
mov rcx, rsi
add rsp, 0x168
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.140101963
nop
add rsp, 0x168
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str.cannot_clone__Sender_____too_many_outstanding_senders
lea r8, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_futures_channel_0.3.31_src_mpsc_mod.rs
mov edx, 0x35
call fcn.140069290
ud2
lea rcx, [rsp + 0x98]
call fcn.140117dbb
mov al, 1
jmp 0x140117472
xor eax, eax
lea rcx, [rsp + 0xc0]
mov byte [rcx], al
call fcn.140105b7f
int3