Function at 0x14005bbd0
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, 0x178
mov rbx, r8
mov rsi, rdx
mov rdi, rcx
mov r12, qword [rcx + 0xb0]
test r12, r12
je 0x14005bc28
lock inc qword [r12]
jle 0x14005cc23
cmp byte [rsi + 0x68], 0
je 0x14005bc31
mov r14, qword [rsi + 0x20]
mov r13, qword [rsi + 0x28]
mov rbp, qword [rsi + 0x30]
mov al, 1
mov qword [rsp + 0x20], rax
xor eax, eax
mov qword [rsp + 0x28], rax
jmp 0x14005c3ad
xor r12d, r12d
cmp byte [rsi + 0x68], 0
jne 0x14005bc09
cmp byte [rsi + 0x69], 0
je 0x14005bc4d
mov al, 1
mov qword [rsp + 0x28], rax
xor r13d, r13d
mov al, 1
mov qword [rsp + 0x20], rax
jmp 0x14005c3ad
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
movups xmm0, xmmword [rsi + 0x20]
movaps xmmword [rsp + 0x90], xmm0
mov rax, qword [rsi + 0x30]
mov qword [rsp + 0xa0], rax
mov rcx, qword [0x1401e4bf8]
test rcx, rcx
jne 0x14005bc9e
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14005cc35
mov rcx, rax
mov qword [0x1401e4bf8], rax
mov r8d, 0x40
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14005cc35
mov rcx, qword [rsp + 0xa0]
mov qword [rax + 0x30], rcx
movaps xmm0, xmmword [rsp + 0x70]
movaps xmm1, xmmword [rsp + 0x80]
movaps xmm2, xmmword [rsp + 0x90]
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov byte [rax + 0x38], 0
mov ecx, dword [rsp + 0x128]
mov edx, dword [rsp + 0x12b]
mov dword [rax + 0x3c], edx
mov dword [rax + 0x39], ecx
mov qword [rsp + 0xd0], rax
lea rcx, [rsp + 0xd0]
mov rdx, rbx
call fcn.1400c6c40
test al, al
je 0x14005bd2c
mov r13, qword [rdi + 0xc0]
cmp byte [rdi + 0xd0], 2
jne 0x14005bd90
mov dl, 2
jmp 0x14005be6c
mov rbx, qword [rsp + 0xd0]
test rbx, rbx
je 0x14005c39c
lea rcx, [rbx + 0x20]
call fcn.140021800
mov rax, qword [rbx + 0x28]
lock dec qword [rax]
jne 0x14005bd59
lea rcx, [rbx + 0x28]
call fcn.1400cdad0
mov rax, qword [rbx + 0x30]
lock dec qword [rax]
jne 0x14005bd6c
mov rcx, qword [rbx + 0x30]
call fcn.1400d00d0
mov rcx, rbx
call fcn.14005dcf0
mov r8, qword [rsp + 0xd0]
mov rcx, qword [0x1401e4bf8]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x14005c39c
mov rax, qword [r13 + 0x40]
movabs rcx, 0x7fffffffffffffff
nop
mov rdx, qword [r13 + 0x30]
xor rdx, rcx
cmp rax, rdx
je 0x14005cc09
lea rdx, [rax + 1]
lock cmpxchg qword [r13 + 0x40], rdx
jne 0x14005bda0
lock inc qword [r13]
jle 0x14005cc23
mov rcx, qword [0x1401e4bf8]
test rcx, rcx
jne 0x14005bdec
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14005cc7c
mov rcx, rax
mov qword [0x1401e4bf8], rax
mov r8d, 0x38
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14005cc7c
mov r15, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov byte [rax + 0x18], 0
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x73]
mov dword [r15 + 0x19], eax
mov dword [r15 + 0x1c], ecx
xorps xmm0, xmm0
movups xmmword [r15 + 0x20], xmm0
mov byte [r15 + 0x30], 0
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [r15 + 0x34], ecx
mov dword [r15 + 0x31], eax
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x73]
mov dword [rsp + 0x128], eax
mov dword [rsp + 0x12b], ecx
xor edx, edx
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x33], ecx
mov dword [rsp + 0x30], eax
test r12, r12
mov dword [rsp + 0x28], edx
je 0x14005be9a
lock inc qword [r12]
mov r9, r12
jg 0x14005be9d
jmp 0x14005cc23
xor r9d, r9d
mov r8, qword [rsp + 0xd0]
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [rsp + 0xf3], ecx
mov dword [rsp + 0xf0], eax
mov r14, qword [rdi + 0x20]
test r14, r14
mov qword [rsp + 0x20], r8
mov qword [rsp + 0x110], r9
je 0x14005bf73
mov rbx, qword [rdi + 0x28]
mov rbp, qword [rbx + 0x10]
mov rcx, qword [0x1401e4bf8]
test rcx, rcx
jne 0x14005bf02
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14005cc51
mov rcx, rax
mov qword [0x1401e4bf8], rax
mov r8d, 0x28
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14005cc51
dec rbp
and rbp, 0xfffffffffffffff0
lea rcx, [r14 + rbp]
add rcx, 0x10
mov rdx, qword [rsp + 0x110]
mov qword [rax], rdx
mov qword [rax + 8], r13
mov qword [rax + 0x10], r15
mov edx, dword [rsp + 0x28]
mov byte [rax + 0x18], dl
mov edx, dword [rsp + 0xf0]
mov r8d, dword [rsp + 0xf3]
mov dword [rax + 0x19], edx
mov dword [rax + 0x1c], r8d
mov rdx, qword [rsp + 0x20]
mov qword [rax + 0x20], rdx
lea r8, fcn.14004fff0
mov rdx, rax
call qword [rbx + 0x18]
jmp 0x14005c39c
mov ebx, 1
mov ebp, 1
lock xadd qword [0x1401e4070], rbp
lea rcx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.26_srccommonexec.rs
call fcn.140109160
mov r14, rdx
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], rdx
lock xadd qword [rdx], rbx
test rax, rax
je 0x14005c0c9
test rbx, rbx
js 0x14005cc23
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [rsp + 0x73], ecx
mov dword [rsp + 0x70], eax
mov rcx, qword [0x1401e4bf8]
test rcx, rcx
jne 0x14005bff1
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14005cc83
mov rcx, rax
mov qword [0x1401e4bf8], rax
mov r8d, 0x80
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14005cc83
mov rbx, rax
mov qword [rax], 0xcc
mov qword [rax + 8], 0
lea rax, [0x14019d210]
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], 0
mov qword [rbx + 0x20], r14
mov qword [rbx + 0x28], rbp
mov qword [rbx + 0x30], 0
mov rax, qword [rsp + 0x110]
mov qword [rbx + 0x38], rax
mov qword [rbx + 0x40], r13
mov qword [rbx + 0x48], r15
mov eax, dword [rsp + 0x28]
mov byte [rbx + 0x50], al
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x73]
mov dword [rbx + 0x51], eax
mov dword [rbx + 0x54], ecx
mov rax, qword [rsp + 0x20]
mov qword [rbx + 0x58], rax
mov qword [rbx + 0x78], 0
xorps xmm0, xmm0
movups xmmword [rbx + 0x60], xmm0
mov rax, qword [r14 + 0x208]
mov qword [rbx + 0x18], rax
mov cl, 1
xor eax, eax
lock cmpxchg byte [r14 + 0x1e8], cl
jne 0x14005c200
cmp byte [r14 + 0x200], 0
je 0x14005c21a
xor ecx, ecx
mov al, 1
lock cmpxchg byte [r14 + 0x1e8], cl
je 0x14005c1c7
add r14, 0x1e8
jmp 0x14005cbc7
test rbx, rbx
js 0x14005cc23
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [rsp + 0x73], ecx
mov dword [rsp + 0x70], eax
mov rcx, qword [0x1401e4bf8]
test rcx, rcx
jne 0x14005c107
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14005cc83
mov rcx, rax
mov qword [0x1401e4bf8], rax
mov r8d, 0x80
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14005cc83
mov rbx, rax
mov qword [rax], 0xcc
mov qword [rax + 8], 0
lea rax, [0x14019d0d0]
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], 0
mov qword [rbx + 0x20], r14
mov qword [rbx + 0x28], rbp
mov qword [rbx + 0x30], 0
mov rax, qword [rsp + 0x110]
mov qword [rbx + 0x38], rax
mov qword [rbx + 0x40], r13
mov qword [rbx + 0x48], r15
mov eax, dword [rsp + 0x28]
mov byte [rbx + 0x50], al
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x73]
mov dword [rbx + 0x51], eax
mov dword [rbx + 0x54], ecx
mov rax, qword [rsp + 0x20]
mov qword [rbx + 0x58], rax
mov qword [rbx + 0x78], 0
xorps xmm0, xmm0
movups xmmword [rbx + 0x60], xmm0
mov rax, qword [r14 + 0x58]
mov qword [rbx + 0x18], rax
mov cl, 1
xor eax, eax
lock cmpxchg byte [r14 + 0x38], cl
jne 0x14005c29c
cmp byte [r14 + 0x50], 0
je 0x14005c2b0
xor ecx, ecx
mov al, 1
lock cmpxchg byte [r14 + 0x38], cl
jne 0x14005cbc3
mov rax, 0xffffffffffffffc0
lock xadd qword [rbx], rax
cmp rax, 0x3f
jbe 0x14005cb87
and rax, 0xffffffffffffffc0
cmp rax, 0x40
jne 0x14005c1f1
mov rax, qword [rbx + 0x10]
mov rcx, rbx
call qword [rax + 0x28]
mov rax, qword [rbx + 0x10]
mov rcx, rbx
call qword [rax + 0x48]
jmp 0x14005c33e
lea rcx, [r14 + 0x1e8]
call fcn.140148540
cmp byte [r14 + 0x200], 0
jne 0x14005c0aa
mov qword [rsp + 0x50], rbx
mov rax, qword [r14 + 0x1f0]
cmp rax, rbx
je 0x14005cc94
mov rcx, qword [rbx + 0x10]
mov rcx, qword [rcx]
mov qword [rbx + rcx + 8], rax
mov rcx, qword [rbx + 0x10]
mov rcx, qword [rcx]
mov qword [rbx + rcx], 0
test rax, rax
je 0x14005c25a
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx]
mov qword [rax + rcx], rbx
mov qword [r14 + 0x1f0], rbx
cmp qword [r14 + 0x1f8], 0
jne 0x14005c272
mov qword [r14 + 0x1f8], rbx
xor ecx, ecx
mov al, 1
lock cmpxchg byte [r14 + 0x1e8], cl
jne 0x14005cbe7
add r14, 0x10
mov rcx, r14
mov rdx, rbx
xor r8d, r8d
call fcn.140101e40
jmp 0x14005c33e
lea rcx, [r14 + 0x38]
call fcn.140148540
cmp byte [r14 + 0x50], 0
jne 0x14005c1b7
mov qword [rsp + 0x50], rbx
mov rax, qword [r14 + 0x40]
cmp rax, rbx
je 0x14005cca9
mov rcx, qword [rbx + 0x10]
mov rcx, qword [rcx]
mov qword [rbx + rcx + 8], rax
mov rcx, qword [rbx + 0x10]
mov rcx, qword [rcx]
mov qword [rbx + rcx], 0
test rax, rax
je 0x14005c2ed
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx]
mov qword [rax + rcx], rbx
mov qword [r14 + 0x40], rbx
cmp qword [r14 + 0x48], 0
jne 0x14005c2fc
mov qword [r14 + 0x48], rbx
xor ecx, ecx
mov al, 1
lock cmpxchg byte [r14 + 0x38], cl
jne 0x14005cbf8
lea rcx, [rsp + 0x130]
mov eax, dword [0x1401e4c88]
mov rdx, qword gs:[0x58]
mov rax, qword [rdx + rax*8]
mov r8, qword [rax + 0x148]
mov rdx, rbx
test r8, r8
jne 0x14005c339
xor r8d, r8d
call fcn.140101be0
cmp qword [rsp + 0x128], 0
je 0x14005c366
mov rax, qword [rsp + 0x130]
lock dec qword [rax]
jne 0x14005c381
mov rcx, qword [rsp + 0x130]
call fcn.1400ceb50
jmp 0x14005c381
mov rax, qword [rsp + 0x130]
lock dec qword [rax]
jne 0x14005c381
mov rcx, qword [rsp + 0x130]
call fcn.140001900
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [rbx], rcx
je 0x14005c39c
mov rax, qword [rbx + 0x10]
mov rcx, rbx
call qword [rax + 0x38]
xor eax, eax
mov qword [rsp + 0x28], rax
xor eax, eax
mov qword [rsp + 0x20], rax
xor r13d, r13d
mov rax, qword [rsi + 0x48]
mov qword [rsp + 0x100], rax
movups xmm0, xmmword [rsi + 0x38]
movaps xmmword [rsp + 0xf0], xmm0
mov rax, qword [rsi + 0x60]
mov qword [rsp + 0x40], rax
movups xmm0, xmmword [rsi + 0x50]
movaps xmmword [rsp + 0x30], xmm0
mov rbx, qword [rdi + 0x20]
test rbx, rbx
je 0x14005c4e9
mov rdi, qword [rdi + 0x28]
mov r15, qword [rdi + 0x10]
mov rcx, qword [0x1401e4bf8]
test rcx, rcx
jne 0x14005c411
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14005cc27
mov rcx, rax
mov qword [0x1401e4bf8], rax
mov r8d, 0xa8
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14005cc27
dec r15
and r15, 0xfffffffffffffff0
lea rcx, [r15 + rbx]
add rcx, 0x10
movups xmm0, xmmword [rsp + 0x168]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [rsp + 0x128]
movups xmm1, xmmword [rsp + 0x138]
movups xmm2, xmmword [rsp + 0x148]
movups xmm3, xmmword [rsp + 0x158]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov qword [rax + 0x50], r12
mov qword [rax + 0x58], r14
mov qword [rax + 0x60], r13
mov qword [rax + 0x68], rbp
movaps xmm0, xmmword [rsp + 0xf0]
movups xmmword [rax + 0x70], xmm0
mov rdx, qword [rsp + 0x100]
mov qword [rax + 0x80], rdx
movaps xmm0, xmmword [rsp + 0x30]
movups xmmword [rax + 0x88], xmm0
mov rdx, qword [rsp + 0x40]
mov qword [rax + 0x98], rdx
mov byte [rax + 0xa0], 0
mov edx, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x73]
mov dword [rax + 0xa1], edx
mov dword [rax + 0xa4], r8d
lea r8, [0x14019b298]
mov rdx, rax
call qword [rdi + 0x18]
mov rbx, qword [rsp + 0x20]
jmp 0x14005ca55
mov edi, 1
mov r15d, 1
lock xadd qword [0x1401e4070], r15
lea rcx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fhyper_0.14.26_srccommonexec.rs
call fcn.140109160
mov rbx, rdx
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], rdx
lock xadd qword [rdx], rdi
test rax, rax
je 0x14005c726
test rdi, rdi
js 0x14005cc23
movups xmm0, xmmword [rsp + 0x128]
movups xmm1, xmmword [rsp + 0x138]
movups xmm2, xmmword [rsp + 0x148]
movups xmm3, xmmword [rsp + 0x158]
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x90], xmm2
movaps xmmword [rsp + 0xa0], xmm3
movups xmm0, xmmword [rsp + 0x168]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x50], xmm0
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x60], rax
movaps xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0xd0], xmm0
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xe0], rax
mov rcx, qword [0x1401e4bf8]
test rcx, rcx
jne 0x14005c5d9
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14005cc2e
mov rcx, rax
mov qword [0x1401e4bf8], rax
mov r8d, 0xf8
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14005cc2e
mov rdi, rax
mov qword [rax], 0xcc
mov qword [rax + 8], 0
lea rax, [0x14019cef0]
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], 0
mov qword [rdi + 0x20], rbx
mov qword [rdi + 0x28], r15
movaps xmm0, xmmword [rsp + 0x70]
movaps xmm1, xmmword [rsp + 0x80]
movaps xmm2, xmmword [rsp + 0x90]
movaps xmm3, xmmword [rsp + 0xa0]
movups xmmword [rdi + 0x30], xmm0
movups xmmword [rdi + 0x40], xmm1
movups xmmword [rdi + 0x50], xmm2
movups xmmword [rdi + 0x60], xmm3
movaps xmm0, xmmword [rsp + 0xb0]
movups xmmword [rdi + 0x70], xmm0
mov qword [rdi + 0x80], r12
mov qword [rdi + 0x88], r14
mov qword [rdi + 0x90], r13
mov qword [rdi + 0x98], rbp
mov rax, qword [rsp + 0x60]
mov qword [rdi + 0xb0], rax
movaps xmm0, xmmword [rsp + 0x50]
movups xmmword [rdi + 0xa0], xmm0
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rdi + 0xb8], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rdi + 0xc8], rax
mov byte [rdi + 0xd0], 0
mov eax, dword [rsp + 0xc9]
mov ecx, dword [rsp + 0xcc]
mov dword [rdi + 0xd4], ecx
mov dword [rdi + 0xd1], eax
mov qword [rdi + 0xf0], 0
xorps xmm0, xmm0
movups xmmword [rdi + 0xd8], xmm0
mov rax, qword [rbx + 0x208]
mov qword [rdi + 0x18], rax
mov cl, 1
xor eax, eax
lock cmpxchg byte [rbx + 0x1e8], cl
jne 0x14005c976
cmp byte [rbx + 0x200], 0
je 0x14005c98f
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rbx + 0x1e8], cl
je 0x14005c90a
add rbx, 0x1e8
jmp 0x14005cb69
test rdi, rdi
js 0x14005cc23
movups xmm0, xmmword [rsp + 0x128]
movups xmm1, xmmword [rsp + 0x138]
movups xmm2, xmmword [rsp + 0x148]
movups xmm3, xmmword [rsp + 0x158]
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x90], xmm2
movaps xmmword [rsp + 0xa0], xmm3
movups xmm0, xmmword [rsp + 0x168]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x50], xmm0
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x60], rax
movaps xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0xd0], xmm0
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xe0], rax
mov rcx, qword [0x1401e4bf8]
test rcx, rcx
jne 0x14005c7d5
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14005cc2e
mov rcx, rax
mov qword [0x1401e4bf8], rax
mov r8d, 0xf8
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14005cc2e
mov rdi, rax
mov qword [rax], 0xcc
mov qword [rax + 8], 0
lea rax, [0x14019d120]
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], 0
mov qword [rdi + 0x20], rbx
mov qword [rdi + 0x28], r15
movaps xmm0, xmmword [rsp + 0x70]
movaps xmm1, xmmword [rsp + 0x80]
movaps xmm2, xmmword [rsp + 0x90]
movaps xmm3, xmmword [rsp + 0xa0]
movups xmmword [rdi + 0x30], xmm0
movups xmmword [rdi + 0x40], xmm1
movups xmmword [rdi + 0x50], xmm2
movups xmmword [rdi + 0x60], xmm3
movaps xmm0, xmmword [rsp + 0xb0]
movups xmmword [rdi + 0x70], xmm0
mov qword [rdi + 0x80], r12
mov qword [rdi + 0x88], r14
mov qword [rdi + 0x90], r13
mov qword [rdi + 0x98], rbp
mov rax, qword [rsp + 0x60]
mov qword [rdi + 0xb0], rax
movaps xmm0, xmmword [rsp + 0x50]
movups xmmword [rdi + 0xa0], xmm0
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rdi + 0xb8], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rdi + 0xc8], rax
mov byte [rdi + 0xd0], 0
mov eax, dword [rsp + 0xc9]
mov ecx, dword [rsp + 0xcc]
mov dword [rdi + 0xd4], ecx
mov dword [rdi + 0xd1], eax
mov qword [rdi + 0xf0], 0
xorps xmm0, xmm0
movups xmmword [rdi + 0xd8], xmm0
mov rax, qword [rbx + 0x58]
mov qword [rdi + 0x18], rax
mov cl, 1
xor eax, eax
lock cmpxchg byte [rbx + 0x38], cl
jne 0x14005caac
cmp byte [rbx + 0x50], 0
je 0x14005cabf
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rbx + 0x38], cl
jne 0x14005cb65
mov rax, 0xffffffffffffffc0
lock xadd qword [rdi], rax
cmp rax, 0x3f
jbe 0x14005cb87
and rax, 0xffffffffffffffc0
cmp rax, 0x40
mov rbx, qword [rsp + 0x20]
jne 0x14005c939
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [rax + 0x28]
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [rax + 0x48]
cmp qword [rsp + 0x118], 0
je 0x14005ca1f
mov rax, qword [rsp + 0x120]
lock dec qword [rax]
jne 0x14005ca3a
mov rcx, qword [rsp + 0x120]
call fcn.1400ceb50
jmp 0x14005ca3a
lea rcx, [rbx + 0x1e8]
call fcn.140148540
cmp byte [rbx + 0x200], 0
jne 0x14005c708
mov qword [rsp + 0x50], rdi
mov rax, qword [rbx + 0x1f0]
cmp rax, rdi
je 0x14005cc3c
mov rcx, qword [rdi + 0x10]
mov rcx, qword [rcx]
mov qword [rdi + rcx + 8], rax
mov rcx, qword [rdi + 0x10]
mov rcx, qword [rcx]
mov qword [rdi + rcx], 0
test rax, rax
je 0x14005c9cf
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx]
mov qword [rax + rcx], rdi
mov qword [rbx + 0x1f0], rdi
cmp qword [rbx + 0x1f8], 0
jne 0x14005c9e7
mov qword [rbx + 0x1f8], rdi
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rbx + 0x1e8], cl
jne 0x14005cba1
add rbx, 0x10
mov rcx, rbx
mov rdx, rdi
xor r8d, r8d
call fcn.140101e40
mov rbx, qword [rsp + 0x20]
cmp qword [rsp + 0x118], 0
jne 0x14005c952
mov rax, qword [rsp + 0x120]
lock dec qword [rax]
jne 0x14005ca3a
mov rcx, qword [rsp + 0x120]
call fcn.140001900
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [rdi], rcx
je 0x14005ca55
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [rax + 0x38]
cmp byte [rsp + 0x28], 0
je 0x14005ca8b
lea rcx, [rsi + 0x20]
call fcn.140021800
mov rax, qword [rsi + 0x28]
lock dec qword [rax]
jne 0x14005ca78
lea rcx, [rsi + 0x28]
call fcn.1400cdad0
mov rax, qword [rsi + 0x30]
lock dec qword [rax]
jne 0x14005ca8b
mov rcx, qword [rsi + 0x30]
call fcn.1400d00d0
test bl, bl
je 0x14005ca97
mov rcx, rsi
call fcn.14005dcf0
nop
add rsp, 0x178
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rbx + 0x38]
call fcn.140148540
cmp byte [rbx + 0x50], 0
jne 0x14005c8fb
mov qword [rsp + 0x50], rdi
mov rax, qword [rbx + 0x40]
cmp rax, rdi
je 0x14005cc58
mov rcx, qword [rdi + 0x10]
mov rcx, qword [rcx]
mov qword [rdi + rcx + 8], rax
mov rcx, qword [rdi + 0x10]
mov rcx, qword [rcx]
mov qword [rdi + rcx], 0
test rax, rax
je 0x14005cafc
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx]
mov qword [rax + rcx], rdi
mov qword [rbx + 0x40], rdi
cmp qword [rbx + 0x48], 0
jne 0x14005cb0b
mov qword [rbx + 0x48], rdi
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rbx + 0x38], cl
jne 0x14005cbb2
lea rcx, [rsp + 0x120]
mov eax, dword [0x1401e4c88]
mov rdx, qword gs:[0x58]
mov rax, qword [rdx + rax*8]
mov r8, qword [rax + 0x148]
mov rdx, rdi
test r8, r8
jne 0x14005cb47
xor r8d, r8d
call fcn.140101be0
mov rbx, qword [rsp + 0x20]
cmp qword [rsp + 0x118], 0
jne 0x14005c952
jmp 0x14005ca1f
add rbx, 0x38
mov rcx, rbx
call fcn.140148870
mov rax, 0xffffffffffffffc0
lock xadd qword [rdi], rax
cmp rax, 0x3f
ja 0x14005c920
lea rcx, str.assertion_failed:_prev.ref_count_____1
lea r8, [0x1401a9448]
mov edx, 0x27
call fcn.140144ec0
ud2
lea rcx, [rbx + 0x1e8]
call fcn.140148870
jmp 0x14005c9f9
add rbx, 0x38
mov rcx, rbx
call fcn.140148870
jmp 0x14005cb1a
add r14, 0x38
mov rcx, r14
call fcn.140148870
mov rax, 0xffffffffffffffc0
lock xadd qword [rbx], rax
cmp rax, 0x3f
ja 0x14005c1dd
jmp 0x14005cb87
lea rcx, [r14 + 0x1e8]
call fcn.140148870
jmp 0x14005c285
add r14, 0x38
mov rcx, r14
call fcn.140148870
jmp 0x14005c30c
lea rcx, str.cannot_clone__Sender_____too_many_outstanding_senders
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_futures_channel_0.3.28_srcmpscmod.rs
mov edx, 0x35
call fcn.140149e90
ud2
ud2
mov ecx, 0xa8
jmp 0x14005cc88
mov ecx, 0xf8
jmp 0x14005cc88
mov ecx, 0x40
jmp 0x14005cc88
mov qword [rsp + 0x80], 0
add rbx, 0x1f0
jmp 0x14005cc68
mov ecx, 0x28
jmp 0x14005cc88
mov qword [rsp + 0x80], 0
add rbx, 0x40
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x70]
mov rcx, rbx
call fcn.140149b30
ud2
mov ecx, 0x38
jmp 0x14005cc88
mov ecx, 0x80
mov edx, 8
call fcn.140144b00
ud2
mov qword [rsp + 0x80], 0
add r14, 0x1f0
jmp 0x14005ccb9
mov qword [rsp + 0x80], 0
add r14, 0x40
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x70]
mov rcx, r14
call fcn.140149b30
ud2