Function at 0x1400ed0f2
Capabilities:
Get thread local storage value

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0xf0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x40], rcx
mov qword [rbp + 0x48], rdx
mov qword [rbp + 0x60], r8
lock inc qword [0x1401aa170]
jle 0x1400ed622
mov ebx, r9d
mov rsi, rdx
mov rdi, rcx
call fcn.1400edbb0
test rax, rax
jne 0x1400ed15d
lea rax, str.library_std_src_threadlocal.rs
mov qword [rsp + 0x20], rax
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destructionC:UsersUser.rustup_toolchains_nightly_x86_64_pc_windows_gnulib_rustlib_src_rustlibrary_std_src_threadlocal.rs
lea r9, [0x140193a50]
push 0x46
pop rdx
mov r8, rbp
call fcn.14000bd90
cmp byte [rax + 8], 0
jne 0x1400ed687
inc qword [rax]
mov byte [rax + 8], 1
mov eax, dword [0x1401aa0b8]
cmp eax, 0x3ffffffd
ja 0x1400ed188
lea ecx, [rax + 1]
lock cmpxchg dword [0x1401aa0b8], ecx
je 0x1400ed194
lea rcx, [0x1401aa0b8]
call fcn.1400ed7a0
mov r12b, byte [rbp + 0xd0]
mov al, byte [0x1401aa0c0]
cmp qword [0x1401aa0c8], 0
jne 0x1400ed271
mov r15, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x48]
call qword [rax + 0x28]
mov rsi, rax
mov rdi, rdx
mov r14b, 3
test r12b, r12b
je 0x1400ed2ce
mov qword [rbp - 8], r15
mov rdi, qword [rdi + 0x18]
mov rcx, rsi
call rdi
movabs rcx, 0xb98b1b7157a64178
xor rax, rcx
movabs rcx, 0x63eb502cd6cb5d6d
xor rdx, rcx
or rdx, rax
jne 0x1400ed302
push 8
pop rcx
mov rax, rsi
mov rax, qword [rax]
mov rcx, qword [rsi + rcx]
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], rcx
mov ecx, dword [0x1401aa138]
test ecx, ecx
je 0x1400ed5ff
dec ecx
call sub.kernel32.dll_TlsGetValue
cmp rax, 3
jb 0x1400ed391
lea rcx, [0x1401aa060]
cmp rax, rcx
jne 0x1400ed484
and qword [rbp + 0x50], 0
mov qword [rbp + 0x58], rcx
lea rcx, str.mainRUST_BACKTRACElibrary_std_src_sys_commonwtf8.rslibrary_std_src_ffios_str.rs
push 4
pop rax
test rcx, rcx
lea rdx, str._unnamed_thread__panicked_at__n
cmovne rdx, rcx
push 9
pop rcx
cmovne rcx, rax
jmp 0x1400ed3a3
mov rsi, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x48]
call qword [rax + 0x28]
mov r8, rbp
mov qword [r8], rax
mov qword [r8 + 8], rdx
mov qword [r8 + 0x10], rsi
mov byte [r8 + 0x18], bl
mov byte [r8 + 0x19], r12b
mov rcx, qword [0x1401aa0c8]
mov rax, qword [0x1401aa0d0]
mov rdx, r8
call qword [rax + 0x28]
call fcn.1400edb70
call fcn.1400edbb0
test rax, rax
je 0x1400ed138
mov byte [rax + 8], 0
test bl, bl
je 0x1400ed715
call fcn.1400edba0
call fcn.1400edbb0
test rax, rax
jne 0x1400ed339
lea rax, str.library_std_src_threadlocal.rs
mov qword [rsp + 0x20], rax
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destructionC:UsersUser.rustup_toolchains_nightly_x86_64_pc_windows_gnulib_rustlib_src_rustlibrary_std_src_threadlocal.rs
lea r9, [0x140193a50]
push 0x46
pop rdx
mov r8, rbp
call fcn.14000bd90
jmp 0x1400ed48b
mov rcx, rsi
call rdi
movabs rcx, 0xda7ab17d115f59c3
xor rax, rcx
movabs rcx, 0x93a3de133feb3be5
xor rdx, rcx
or rdx, rax
jne 0x1400ed48d
mov rax, rsi
add rax, 8
push 0x10
pop rcx
jmp 0x1400ed206
mov r14b, 1
cmp qword [rax], 1
ja 0x1400ed1d0
mov r14b, byte [0x1401aa0b0]
dec r14b
cmp r14b, 3
jb 0x1400ed1d0
lea rdx, [0x14018e7a1]
mov rcx, rbp
push 0xe
pop r8
call fcn.140110f40
mov rax, qword [rbp]
movabs rcx, 0x7fffffffffffffff
inc rcx
cmp rax, rcx
jne 0x1400ed50b
mov r14b, 2
mov cl, 3
jmp 0x1400ed5d1
push 9
pop rcx
mov qword [rbp + 0x50], 2
lea rdx, str._unnamed_thread__panicked_at__n
mov qword [rbp + 0x30], rdx
mov qword [rbp + 0x38], rcx
and dword [rbp + 0x68], 0
mov byte [rbp + 0x6c], 0
mov cl, 1
xor eax, eax
lock cmpxchg byte [0x1401aa0b1], cl
je 0x1400ed3cd
lea rcx, [0x1401aa0b1]
call fcn.1400ee680
mov rax, qword [0x1401aa170]
shl rax, 1
test rax, rax
jne 0x1400ed612
xor esi, esi
mov al, byte [0x1401aa0b2]
lea rax, [rbp + 0x30]
mov rcx, rbp
mov qword [rcx], rax
lea rax, [0x1400edb50]
mov qword [rcx + 8], rax
lea rdx, [rbp - 8]
mov qword [rcx + 0x10], rdx
lea rdx, [0x1400ed970]
mov qword [rcx + 0x18], rdx
lea r8, [0x14018f598]
lea rdx, [rbp - 0x50]
mov qword [rdx], r8
lea r8, [rbp - 0x18]
mov qword [rdx + 8], 4
and qword [rdx + 0x20], 0
mov qword [rcx + 0x20], r8
mov qword [rcx + 0x28], rax
mov qword [rdx + 0x10], rcx
mov qword [rdx + 0x18], 3
lea rcx, [rbp + 0x68]
call fcn.1400eda00
lea rcx, [rbp - 0x20]
mov qword [rcx], rax
call fcn.1400edb30
movzx eax, r14b
lea rcx, [0x140146f7c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
lea rcx, [rbp + 0x68]
xor edx, edx
call fcn.1400eeab0
mov rcx, rbp
mov qword [rcx], rax
call fcn.1400edb30
jmp case.0x1400ed46a.3
lock inc qword [rax - 0x10]
jg 0x1400ed49c
ud2
lea rax, str.Box_dyn_Any_aborting_due_to_panic_at
push 0xc
pop rcx
jmp 0x1400ed20d
mov rcx, rax
add rcx, 0xfffffffffffffff0
mov qword [rbp + 0x50], 1
mov qword [rbp + 0x58], rcx
mov rcx, qword [rax + 8]
test rcx, rcx
jne 0x1400ed4bf
xor ecx, ecx
jmp 0x1400ed257
mov rax, qword [rax + 0x10]
dec rax
jmp 0x1400ed257
lea rcx, [rbp + 0x68]
mov dl, 1
call fcn.1400eeab0
mov rcx, rbp
mov qword [rcx], rax
call fcn.1400edb30
jmp case.0x1400ed46a.3
xor eax, eax
xchg byte [0x1401420d8], al
test al, al
jne 0x1400ed551
lea rcx, [0x1401aa0b1]
mov edx, esi
call fcn.1400ee780
lea rcx, [rbp + 0x50]
call fcn.1400ee650
jmp 0x1400ed2aa
mov r14, qword [rbp + 8]
mov rcx, qword [rbp + 0x10]
cmp rcx, 1
je 0x1400ed58f
cmp rcx, 4
jne 0x1400ed5b5
cmp dword [r14], 0x6c6c7566
jne 0x1400ed5b5
test rax, rax
je 0x1400ed547
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
mov r14b, 1
mov cl, 2
jmp 0x1400ed5d1
lea rax, str.note:_run_with__RUST_BACKTRACE1__environment_variable_to_display_a_backtrace_n
mov rdx, rbp
mov qword [rdx], rax
mov qword [rdx + 8], 1
mov qword [rdx + 0x10], 8
xorps xmm0, xmm0
movups xmmword [rdx + 0x18], xmm0
lea rcx, [rbp + 0x68]
call fcn.1400eda00
lea rcx, [rbp - 0x50]
mov qword [rcx], rax
call fcn.1400edb30
jmp case.0x1400ed46a.3
cmp byte [r14], 0x30
jne 0x1400ed5b5
test rax, rax
je 0x1400ed387
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
jmp 0x1400ed387
test rax, rax
je 0x1400ed5cc
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
mov cl, 1
xor r14d, r14d
xor eax, eax
lock cmpxchg byte [0x1401aa0b0], cl
je 0x1400ed1d0
mov r14b, 3
cmp al, 4
jae 0x1400ed1d0
shl al, 3
mov r14d, 0x2010003
mov ecx, eax
shr r14d, cl
jmp 0x1400ed1d0
lea rcx, [0x1401aa120]
call fcn.1400edca0
mov ecx, eax
jmp 0x1400ed225
call fcn.1400ee730
mov esi, eax
xor sil, 1
jmp 0x1400ed3e2
lea rcx, [rbp + 0x50]
and dword [rcx], 0
mov byte [rcx + 4], 0
lea rax, [rbp + 0x60]
lea r8, [rbp - 0x50]
mov qword [r8], rax
lea rax, [0x1400ed970]
mov qword [r8 + 8], rax
lea rax, [rbp + 0x40]
mov qword [r8 + 0x10], rax
lea rax, [0x14018f748]
mov rdx, rbp
mov qword [rdx], rax
mov qword [rdx + 8], 3
and qword [rdx + 0x20], 0
lea rax, [0x14000ab10]
mov qword [r8 + 0x18], rax
mov qword [rdx + 0x10], r8
mov qword [rdx + 0x18], 2
call fcn.1400eda00
lea rcx, [rbp + 0x30]
jmp 0x1400ed706
mov rcx, rdi
call qword [rsi + 0x30]
test rax, rax
push 1
pop r8
cmovne r8, rax
cmove rdx, rax
lea rax, [rbp + 0x30]
lea rcx, [rbp - 0x18]
and dword [rcx], 0
mov qword [rax], r8
mov qword [rax + 8], rdx
mov byte [rcx + 4], 0
lea rdx, [rbp + 0x60]
lea r8, [rbp - 0x50]
mov qword [r8], rdx
lea rdx, [0x1400ed970]
mov qword [r8 + 8], rdx
mov qword [r8 + 0x10], rax
lea rax, [0x14018f7b0]
mov rdx, rbp
mov qword [rdx], rax
mov qword [rdx + 8], 3
and qword [rdx + 0x20], 0
lea rax, [0x1400edb50]
mov qword [r8 + 0x18], rax
mov qword [rdx + 0x10], r8
mov qword [rdx + 0x18], 2
call fcn.1400eda00
lea rcx, [rbp + 0x50]
mov qword [rcx], rax
call fcn.1400edb30
push 7
pop rcx
int 0x29
ud2
lea rcx, [rbp + 0x30]
and dword [rcx], 0
mov byte [rcx + 4], 0
lea rax, str.thread_caused_non_unwinding_panic._aborting._n
mov rdx, rbp
mov qword [rdx], rax
mov qword [rdx + 8], 1
mov qword [rdx + 0x10], 8
xorps xmm0, xmm0
movups xmmword [rdx + 0x18], xmm0
call fcn.1400eda00
lea rcx, [rbp - 0x50]
mov qword [rcx], rax
call fcn.1400edb30
push 7
pop rcx
int 0x29
ud2