Function at 0x1400111b0
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0xd0
movdqa xmmword [rsp + 0xc0], xmm7
movdqa xmmword [rsp + 0xb0], xmm6
mov ecx, dword [0x140060028]
test ecx, ecx
je 0x14001123e
dec ecx
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 2
jb 0x1400111f0
mov rax, qword [rax + 8]
test rax, rax
jne 0x14001151c
mov ecx, dword [0x140060028]
test ecx, ecx
je 0x140011259
dec ecx
call sub.KERNEL32.dll_TlsGetValue
test rax, rax
je 0x140011271
mov rsi, rax
cmp rax, 1
jne 0x1400112df
lea rax, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadlocal.rs
mov qword [rsp + 0x20], rax
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destructionlibrary_std_src_threadlocal.rs
lea r9, [0x1400651f8]
lea r8, [rsp + 0x30]
mov edx, 0x46
call fcn.14000c9c0
ud2
lea rcx, [0x140060010]
call fcn.14001ca30
mov ecx, eax
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 2
jae 0x1400111e3
jmp 0x1400111f0
lea rcx, [0x140060010]
call fcn.14001ca30
mov ecx, eax
call sub.KERNEL32.dll_TlsGetValue
test rax, rax
jne 0x140011206
movzx eax, byte [0x140181040]
mov rcx, qword [0x140181128]
test rcx, rcx
jne 0x14001129c
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x1400115d0
mov rcx, rax
mov qword [0x140181128], rax
mov r8d, 0x10
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x1400115d0
mov rsi, rax
lea rax, [0x140060010]
mov qword [rsi], rax
mov qword [rsi + 8], 0
mov ecx, dword [0x140060028]
test ecx, ecx
je 0x14001153c
dec ecx
mov rdx, rsi
call sub.KERNEL32.dll_TlsSetValue
pxor xmm0, xmm0
movdqa xmmword [rsp + 0xa0], xmm0
movdqa xmmword [rsp + 0x90], xmm0
lea rdi, [rsp + 0x90]
mov rcx, rdi
call fcn.140013e90
test rax, rax
jne 0x140011564
movdqa xmm7, xmmword [rsp + 0x90]
movdqa xmm6, xmmword [rsp + 0xa0]
movdqa xmmword [rsp + 0x70], xmm6
movdqa xmmword [rsp + 0x60], xmm7
mov rax, qword [0x140181180]
test rax, rax
je 0x14001137d
test eax, 0x4000
jne 0x140011389
pshufd xmm0, xmm7, 0xee
pshufd xmm1, xmm6, 0xee
movq rdi, xmm7
movq rax, xmm0
movq rcx, xmm6
movq rdx, xmm1
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], rdx
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x50], xmm0
jmp 0x1400113a4
call fcn.1400428c0
test eax, 0x4000
je 0x14001133f
lea r8, [0x140065218]
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x60]
call fcn.140011ae0
mov rdi, qword [rsp + 0x30]
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x70], rdx
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rcx
movzx eax, byte [0x140181040]
mov rcx, qword [0x140181128]
test rcx, rcx
jne 0x140011404
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x140011553
mov rcx, rax
mov qword [0x140181128], rax
mov r8d, 0x170
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140011553
mov qword [rax], 1
mov qword [rax + 8], 1
pxor xmm0, xmm0
movdqa xmmword [rax + 0x10], xmm0
movdqa xmmword [rax + 0x20], xmm0
movdqa xmmword [rax + 0x30], xmm0
movdqa xmmword [rax + 0x40], xmm0
movdqa xmmword [rax + 0x50], xmm0
movdqa xmmword [rax + 0x60], xmm0
movdqa xmmword [rax + 0x70], xmm0
movdqa xmmword [rax + 0x80], xmm0
movdqa xmmword [rax + 0x90], xmm0
movdqa xmmword [rax + 0xa0], xmm0
movdqa xmmword [rax + 0xb0], xmm0
movdqa xmmword [rax + 0xc0], xmm0
movdqa xmmword [rax + 0xd0], xmm0
movdqa xmmword [rax + 0xe0], xmm0
movdqa xmmword [rax + 0xf0], xmm0
movdqa xmmword [rax + 0x100], xmm0
mov qword [rax + 0x110], 0x40
mov qword [rax + 0x120], rdi
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movups xmmword [rax + 0x128], xmm0
movups xmmword [rax + 0x138], xmm1
mov rcx, qword [rsp + 0x80]
mov qword [rax + 0x148], rcx
mov qword [rax + 0x150], 0x10000
mov qword [rax + 0x158], 0x10000
mov qword [rax + 0x160], 0
mov r8, qword [rsi + 8]
mov qword [rsi + 8], rax
test r8, r8
je 0x140011518
dec qword [r8]
jne 0x140011518
dec qword [r8 + 8]
jne 0x140011518
mov rcx, qword [0x140181128]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov rax, qword [rsi + 8]
inc qword [rax]
je 0x14001154f
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
add rsp, 0xd0
pop rbx
pop rdi
pop rsi
ret
lea rcx, [0x140060010]
call fcn.14001ca30
mov ecx, eax
jmp 0x1400112d7
ud2
mov ecx, 0x10
mov edx, 0x170
call fcn.1400051a0
ud2
mov qword [rsp + 0x90], rax
lea rax, [0x140065388]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x60], rdi
lea rax, [0x140013dc0]
mov qword [rsp + 0x68], rax
lea rax, str.could_not_initialize_thread_rng:
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 1
mov qword [rsp + 0x50], 0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 1
lea rdx, str.C:UsersEvgen.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rand_0.8.5_src_rngs_thread.rs
lea rcx, [rsp + 0x30]
call fcn.14000ae60
ud2
mov ecx, 8
mov edx, 0x10
call fcn.1400051a0
ud2