Function at 0x14006af40
Capabilities:
Get thread local storage value

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1a0
movaps xmmword [rsp + 0x190], xmm15
movaps xmmword [rsp + 0x180], xmm14
movaps xmmword [rsp + 0x170], xmm13
movaps xmmword [rsp + 0x160], xmm12
movaps xmmword [rsp + 0x150], xmm11
movaps xmmword [rsp + 0x140], xmm10
movaps xmmword [rsp + 0x130], xmm9
movaps xmmword [rsp + 0x120], xmm8
movaps xmmword [rsp + 0x110], xmm7
movaps xmmword [rsp + 0x100], xmm6
mov rsi, rdx
mov rax, qword [0x14012c028]
xor rax, rsp
mov qword [rsp + 0xf8], rax
test byte [0x14012e840], 0x19
jne 0x14006b318
call fcn.140061fd0
mov r14, rax
movsxd rax, dword [rsi + 0x78]
mov qword [rsp + 0xb8], rax
mov r15, qword [rsi + 0x20]
mov rcx, qword [0x14013e6e0]
test rcx, rcx
jne 0x14006b54a
xor edi, edi
mov rax, qword [0x14012dfa0]
and rax, rdi
cmp rax, qword [0x14012df88]
je 0x14006b557
mov ebx, 0xaaaaaaaa
test rdi, rdi
jne 0x14006b564
movabs rax, 0xc001c0ded017d00d
lea rcx, [rsp + 0xb8]
mov qword [rcx], rax
movabs rax, 0xd00d1d1d178119
mov qword [rcx + 0x38], rax
mov rax, qword [rsi + 0x20]
mov qword [rcx + 8], rax
movups xmm0, xmmword [rsi + 0x48]
movups xmm1, xmmword [rsi + 0x58]
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm1
mov eax, dword [rsi + 0x68]
mov qword [rcx + 0x30], rax
call fcn.140061fc0
mov eax, dword [0x140146540]
mov ecx, dword [0x14013ba7c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14006b4fc
mov ecx, dword [0x14013b660]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, eax
and ecx, 3
cmp ecx, 2
jne 0x14006b227
lea rdx, [0x14011a2a2]
lea r8, str....._base_threading_thread_local_storage.cc
lea r14, [rsp + 0x90]
mov rcx, r14
mov r9d, 0x1db
call fcn.140061ec0
mov edx, 0x11e1a300
mov rcx, r14
call fcn.1400c7be0
xor r15d, r15d
mov ecx, dword [0x14013b660]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
and rax, 0xfffffffffffffffc
je 0x14006b499
mov rcx, qword [0x140146530]
shl rcx, 4
mov qword [rax + rcx], rsi
mov ecx, dword [0x140146538]
mov rdx, qword [0x140146530]
shl rdx, 4
mov dword [rax + rdx + 8], ecx
mov r14, qword [rsi]
mov qword [rsi], 0
mov rax, qword [r14 + 8]
mov rcx, r14
call qword [0x140150008]
test r14, r14
jne 0x14006b47d
mov ecx, dword [0x14013b660]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
and rax, 0xfffffffffffffffc
je 0x14006b4ac
mov rcx, qword [0x140146530]
shl rcx, 4
mov qword [rax + rcx], r15
mov ecx, dword [0x140146538]
mov rdx, qword [0x140146530]
shl rdx, 4
mov dword [rax + rdx + 8], ecx
xor eax, eax
lea rcx, [rsp + 0xb8]
mov qword [rcx], rax
mov qword [rcx + 0x38], rax
call fcn.140061fc0
test rdi, rdi
jne 0x14006b589
mov rax, qword [0x14012dfa0]
and rax, rdi
cmp rax, qword [0x14012df88]
je 0x14006b5b8
test byte [0x14012e840], 0x19
jne 0x14006b255
mov rcx, qword [rsp + 0xf8]
xor rcx, rsp
call fcn.1400985e0
movaps xmm6, xmmword [rsp + 0x100]
movaps xmm7, xmmword [rsp + 0x110]
movaps xmm8, xmmword [rsp + 0x120]
movaps xmm9, xmmword [rsp + 0x130]
movaps xmm10, xmmword [rsp + 0x140]
movaps xmm11, xmmword [rsp + 0x150]
movaps xmm12, xmmword [rsp + 0x160]
movaps xmm13, xmmword [rsp + 0x170]
movaps xmm14, xmmword [rsp + 0x180]
movaps xmm15, xmmword [rsp + 0x190]
add rsp, 0x1a0
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
and rax, 0xfffffffffffffffc
je 0x14006b0d2
mov rcx, qword [0x140146530]
shl rcx, 4
mov edx, dword [rax + rcx + 8]
cmp edx, dword [0x140146538]
jne 0x14006b0d2
mov r15, qword [rax + rcx]
jmp 0x14006b0d5
movaps xmm0, xmmword [0x140114940]
lea rsi, [rsp + 0x40]
movaps xmmword [rsi + 0x10], xmm0
movaps xmmword [rsi], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
lea r8, [0x14012e840]
lea r9, [0x140114f2f]
mov rcx, rsi
mov dl, 0x45
call fcn.14006a700
mov rax, qword [rsi]
test rax, rax
je 0x14006b5c5
lea rsi, [rsp + 0x40]
mov cl, byte [rsi + 0x18]
mov rdx, qword [rsi + 8]
lea rdi, [rsp + 0x90]
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rdx
xor eax, eax
mov qword [rdi + 0x18], rax
mov byte [rdi + 0x20], cl
lea rcx, [rsp + 0xb8]
mov qword [rcx], rax
mov qword [rdi], rax
mov rax, qword [rdi + 8]
mov qword [rcx + 8], rax
mov rax, qword [rdi + 0x10]
mov qword [rcx + 0x10], rax
mov eax, dword [rdi + 0x11]
mov dword [rcx + 0x11], eax
movzx eax, word [rdi + 0x15]
mov word [rcx + 0x15], ax
mov al, byte [rdi + 0x17]
mov byte [rcx + 0x17], al
mov rax, qword [rdi + 0x18]
mov qword [rcx + 0x18], rax
mov al, byte [rdi + 0x20]
mov byte [rcx + 0x20], al
call fcn.14006a710
mov rcx, rdi
call fcn.14006a710
mov rcx, rsi
call fcn.14006a810
jmp 0x14006b1ac
mov rbx, r9
mov rdi, r8
mov r14, rcx
movaps xmm0, xmmword [0x140114940]
lea r15, [rsp + 0x70]
movaps xmmword [r15 + 0x10], xmm0
movaps xmmword [r15], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
lea r8, [0x14012e840]
lea r9, str.ThreadPool_RunTask
mov rcx, r15
mov dl, 0x42
call fcn.14006a700
mov rax, qword [r15]
test rax, rax
je 0x14006b46e
mov dl, byte [rsp + 0x88]
mov r8, qword [rsp + 0x78]
xor r9d, r9d
lea rcx, [rsp + 0x40]
mov qword [rcx], r9
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], r8
mov qword [rcx + 0x18], r9
mov byte [rcx + 0x20], dl
mov rdx, rsi
call fcn.14006b6d0
mov eax, dword [0x140146518]
mov ecx, dword [0x14013ba7c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14006b4bf
add r14, 8
lea r13, [rsp + 0x48]
mov rax, qword [0x140146510]
cmp byte [rax], 0
jne 0x14006b5cf
lea r15, [rsp + 0x40]
mov rcx, r14
mov rdx, r15
mov r8, rsi
call fcn.14006ac60
mov rax, qword [r15]
lea r12, [rsp + 0x98]
mov qword [r12 - 8], rax
mov qword [r15], 0
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 9]
movups xmmword [r12], xmm0
movups xmmword [r12 + 9], xmm1
lea rcx, str.scheduler
call fcn.14006ad40
cmp byte [rax], 0
jne 0x14006b5fb
lea rdi, [rsp + 0x90]
mov rax, qword [rdi]
lea rcx, [rsp + 0xb8]
mov qword [rcx], rax
mov qword [rdi], 0
movups xmm0, xmmword [r12]
movups xmm1, xmmword [r12 + 9]
movups xmmword [rcx + 8], xmm0
movups xmmword [rcx + 0x11], xmm1
call fcn.14006a710
mov rcx, rdi
call fcn.14006a710
lea rcx, [rsp + 0x40]
call fcn.14006a710
lea rcx, [rsp + 0x70]
call fcn.14006a810
jmp 0x14006afcc
lock dec dword [r14]
jne 0x14006b12f
mov rax, qword [r14 + 0x10]
mov rcx, r14
call qword [0x140150008]
jmp 0x14006b12f
test rsi, rsi
je 0x14006b10f
call fcn.1400051d0
jmp 0x14006b0eb
test r15, r15
je 0x14006b169
call fcn.1400051d0
jmp 0x14006b145
lea rcx, [0x140146518]
call fcn.140096578
cmp dword [0x140146518], 0xffffffff
jne 0x14006b3ba
lea rcx, str.toplevel.flow
call fcn.14006ad40
mov qword [0x140146510], rax
lea rcx, [0x140146518]
call fcn.1400966f0
jmp 0x14006b3ba
lea rcx, [0x140146540]
call fcn.140096578
cmp dword [0x140146540], 0xffffffff
jne 0x14006b087
mov qword [0x140146538], 0
lea rcx, [0x140146530]
mov qword [0x140146530], 0xffffffffffffffff
xor edx, edx
call fcn.140005670
lea rcx, [0x140146540]
call fcn.1400966f0
jmp 0x14006b087
call fcn.1400e3d20
mov rdi, rax
jmp 0x14006aff6
mov rcx, rdi
call fcn.140062440
jmp 0x14006b00d
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x20], rax
mov rcx, rdi
mov rdx, r14
mov r8, r15
mov r9b, 0x10
call fcn.1400e34c0
mov ebx, eax
jmp 0x14006b01b
cmp dword [rdi + 0x18], ebx
jbe 0x14006b5a3
mov rax, qword [rdi + 0x10]
mov ecx, ebx
shl rcx, 7
cmp dword [rax + rcx + 0x68], 0
jne 0x14006b671
mov rax, qword [rdi + 8]
lock dec dword [rax + 0x38]
mov rax, qword [rdi + 8]
lock inc dword [rax + 0x3c]
jmp 0x14006b188
mov rcx, rdi
call fcn.14006a8b0
jmp 0x14006b19f
lea rcx, [rsp + 0x40]
jmp 0x14006b30e
mov eax, dword [rsi + 0x78]
shl rax, 0x20
mov r8d, r14d
and r8d, 0xfffffff8
or r8, rax
xor r8, qword [0x14013ce70]
mov rcx, qword [rsp + 0x48]
mov edx, 0x30
call fcn.140035060
jmp 0x14006b3d3
mov r14, qword [rsp + 0x200]
mov rcx, qword [rsp + 0x98]
mov edx, 0x405
call fcn.14007bd80
mov r15, rax
movzx edx, byte [rdi + 9]
inc edx
mov rcx, rax
call fcn.1400f98e0
mov edx, dword [rbx + 0x40]
inc edx
mov rcx, r15
call fcn.1400f9980
movzx edx, byte [rdi + 0xa]
and edx, 0x7f
inc edx
mov rcx, r15
call fcn.1400f9a20
mov rcx, r14
call fcn.14005d490
test al, al
je 0x14006b427
mov rcx, r14
call fcn.1400e9cd0
movsxd r8, eax
mov rcx, r15
mov edx, 3
call fcn.14008f430
jmp 0x14006b427
mov r14, qword [0x14013e6e0]
lea rsi, [r14 + 0xc8]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14006b6ab
sub r14, 0xffffffffffffff80
mov rcx, rdi
mov edx, ebx
mov r8, r14
call fcn.1400e38a0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x14006b5a3
mov rcx, rsi
call fcn.140062160
jmp 0x14006b68c