Function at 0x14003c780
Capabilities:
Access peb ldr_data

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x298
movaps xmmword [rsp + 0x280], xmm6
mov r12, r9
mov r15, r8
mov r14, rdx
mov rsi, rcx
movzx eax, byte [0x1401ea9b8]
mov ecx, 0x48
mov edx, 8
call fcn.140143230
test rax, rax
je 0x14003cb29
mov rdi, rax
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 1
mov byte [rax + 0x40], 0
xorps xmm6, xmm6
movups xmmword [rax + 0x20], xmm6
mov qword [rax + 0x30], 0
mov qword [rax], 2
movzx eax, byte [0x1401ea9b8]
mov ecx, 0x48
mov edx, 8
call fcn.140143230
test rax, rax
je 0x14003cb29
mov rbx, rax
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 1
mov byte [rax + 0x40], 0
movups xmmword [rax + 0x20], xmm6
mov qword [rax + 0x30], 0
mov qword [rax], 2
lea rcx, [rsp + 0x60]
mov r8d, 0x100
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x160]
mov r8d, 0x100
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rsp + 0x260], xmm0
movups xmmword [rsp + 0x270], xmm1
mov eax, dword [0x14021d30c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x130]
cmp eax, 1
je 0x14003c8e3
test eax, eax
jne 0x14003cbb6
mov eax, dword [0x14021d30c]
mov rcx, qword gs:[0x58]
mov r14, qword [rcx + rax*8]
lea rcx, [r14 + 0x120]
lea rdx, [0x140114b90]
call fcn.1400fb5f0
mov byte [r14 + 0x130], 1
mov eax, dword [0x14021d30c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r14, qword [rax + 0x120]
test r14, r14
je 0x14003cb3e
inc qword [r14]
je 0x14003cb3a
mov r13d, 1
lock xadd qword [0x1401e9148], r13
mov r12, qword [r14 + 0x10]
lock inc qword [r12]
jle 0x14003cb3a
movzx eax, byte [0x1401ea9b8]
mov ecx, 0x400
mov edx, 0x80
call fcn.140143230
test rax, rax
je 0x14003cb7a
mov r15, rax
mov rbp, qword [rsp + 0x300]
mov qword [rax], 0xcc
mov qword [rax + 8], 0
lea rax, [0x14016b798]
mov qword [r15 + 0x10], rax
mov qword [r15 + 0x18], 0
mov qword [r15 + 0x20], r12
mov qword [r15 + 0x28], r13
lea rcx, [r15 + 0x30]
lea rdx, [rsp + 0x60]
mov r8d, 0x220
call sub.VCRUNTIME140.dll_memcpy
mov qword [r15 + 0x250], rdi
mov qword [r15 + 0x258], rbx
movups xmm0, xmmword [rbp]
movups xmmword [r15 + 0x260], xmm0
mov rax, qword [rbp + 0x10]
mov qword [r15 + 0x270], rax
mov byte [r15 + 0x300], 0
xorps xmm0, xmm0
movaps xmmword [r15 + 0x3b0], xmm0
mov qword [r15 + 0x3c0], 0
mov rax, qword [r12 + 0x18]
mov qword [r15 + 0x18], rax
cmp byte [r12 + 0x30], 0
je 0x14003ca24
mov rax, 0xffffffffffffffc0
lock xadd qword [r15], rax
cmp rax, 0x3f
jbe 0x14003cb9c
and rax, 0xffffffffffffffc0
cmp rax, 0x40
jne 0x14003ca13
mov rax, qword [r15 + 0x10]
mov rcx, r15
call qword [rax + 0x10]
mov rax, qword [r15 + 0x10]
mov rcx, r15
call qword [rax + 0x30]
dec qword [r14]
jne 0x14003ca9a
jmp 0x14003ca81
mov qword [rsp + 0x28], r15
mov rax, qword [r12 + 0x20]
cmp rax, r15
je 0x14003cbe1
mov qword [r15 + 0x3b8], rax
mov qword [r15 + 0x3b0], 0
test rax, rax
je 0x14003ca5a
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rax + rcx], r15
mov qword [r12 + 0x20], r15
cmp qword [r12 + 0x28], 0
jne 0x14003ca6c
mov qword [r12 + 0x28], r15
mov rcx, qword [r14 + 0x10]
add rcx, 0x10
mov rdx, r15
call fcn.140114fc0
dec qword [r14]
jne 0x14003ca9a
mov rax, qword [r14 + 0x10]
lock dec qword [rax]
jne 0x14003ca94
mov rcx, qword [r14 + 0x10]
call fcn.14001a190
dec qword [r14 + 8]
je 0x14003cb0e
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [r15], rcx
je 0x14003cab5
mov rax, qword [r15 + 0x10]
mov rcx, r15
call qword [rax + 0x20]
movzx eax, byte [0x1401ea9b8]
mov ecx, 0x18
mov edx, 8
call fcn.140143230
test rax, rax
je 0x14003cb8b
mov qword [rax], 1
mov qword [rax + 8], 1
mov byte [rax + 0x10], 0
mov qword [rsi], rbx
mov qword [rsi + 8], rdi
mov qword [rsi + 0x10], rax
movaps xmm6, xmmword [rsp + 0x280]
add rsp, 0x298
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, r14
call fcn.140142490
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [r15], rcx
jne 0x14003caab
jmp 0x14003cab5
mov ecx, 8
mov edx, 0x48
call fcn.140162fc0
ud2
ud2
lea rax, str._spawn_local__called_from_outside_of_a__task::LocalSet_
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 1
lea rax, [0x1401aa580]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
lea rdx, str.crates_ncan_src_netconnection.rs
lea rcx, [rsp + 0x30]
call fcn.140163280
ud2
mov ecx, 0x80
mov edx, 0x400
call fcn.140162fc0
ud2
mov ecx, 8
mov edx, 0x18
call fcn.140162fc0
ud2
lea rcx, str.assertion_failed:_prev.ref_count_____1
lea r8, [0x1401a9700]
mov edx, 0x27
call fcn.140163440
ud2
lea rax, str.C:Usersmqnu7.rustup_toolchains_nightly_x86_64_pc_windows_gnulib_rustlib_src_rustlibrary_std_src_threadlocal.rs
mov qword [rsp + 0x20], rax
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction
lea r9, method..virtual_0
lea r8, [rsp + 0x30]
mov edx, 0x46
call fcn.140163790
ud2
mov qword [rsp + 0x30], 0
add r12, 0x20
lea rdx, [rsp + 0x28]
lea r8, [rsp + 0x30]
mov rcx, r12
call fcn.140160100
ud2