Function at 0x1400c6960
Capabilities:
Get thread local storage value

Disassembly:
mov rax, rsp
push rbp
push rsi
sub rsp, 0x48
mov rsi, rdx
mov rbp, rcx
test rcx, rcx
je 0x1400c6ca8
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], r12
mov qword [rax - 0x18], r13
xor r13d, r13d
mov qword [rax - 0x20], r14
mov qword [rax - 0x28], r15
movaps xmmword [rax - 0x38], xmm6
movss xmm6, dword [0x1402c9f8c]
mov ecx, dword [rbp + 0x2152c]
mov eax, 8
test rsi, rsi
cmove rsi, rax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov r15, rax
test rax, rax
jne 0x1400c69da
lea r8, [rbp + 0x10]
mov rdx, rbp
lea rcx, [rbp + 0x2152c]
call fcn.1400c5c50
mov r15, rax
test rax, rax
je 0x1400c69e1
mov byte [r15 + 0x344], r13b
cmp rsi, 0x1fc1
jae 0x1400c6c8f
test r15, r15
je 0x1400c6c88
mov ecx, esi
call fcn.1400c6540
mov r8d, eax
inc r8
lea rax, [r8 + r8*2]
lea r14, [r15 + rax*8]
test r14, r14
je 0x1400c6c88
mov rdx, qword [r14]
test rdx, rdx
je 0x1400c6aa6
mov r8, qword [rdx + 0x58]
test r8, r8
je 0x1400c6a33
mov rax, qword [r8]
mov qword [rdx + 0x58], rax
jmp 0x1400c6a58
mov r8, qword [rdx + 0x50]
test r8, r8
je 0x1400c6a8e
movzx eax, word [rdx + 0x72]
mov rcx, r8
sub rcx, rax
lea rax, [rdx + 0x80]
cmp rcx, rax
cmovb rcx, r13
mov qword [rdx + 0x50], rcx
inc word [rdx + 0x70]
test r8, r8
je 0x1400c6a92
mov rax, r8
mov r15, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
movaps xmm6, xmmword [rsp + 0x20]
add rsp, 0x48
pop rsi
pop rbp
ret
mov byte [rdx + 0x74], 1
mov rax, qword [r14]
mov rdx, qword [rax + 0x48]
test rdx, rdx
je 0x1400c6aa6
mov qword [r14], rdx
jmp 0x1400c6a21
mov rcx, r14
call fcn.1400c65b0
mov rbx, rax
test rax, rax
je 0x1400c6b0f
cmp qword [rax + 0x50], r13
je 0x1400c6ac2
mov byte [rax + 0x74], r13b
jmp 0x1400c6ae6
movzx edx, word [rax + 0x72]
movzx eax, word [rax + 0x70]
imul edx, eax
movd xmm0, edx
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm6
seta al
test al, al
mov byte [rbx + 0x74], al
sete al
test al, al
je 0x1400c6af1
mov rdx, rbx
mov rcx, r14
call fcn.1400c6d00
cmp qword [rbx + 0x58], r13
je 0x1400c699f
mov rax, qword [rbx + 0x58]
mov rcx, qword [rax]
inc word [rbx + 0x70]
mov qword [rbx + 0x58], rcx
jmp 0x1400c6a64
lea rcx, [rbp + 0x21530]
mov r8d, esi
mov rdx, r15
call fcn.1400c6150
mov rbx, rax
test rax, rax
je 0x1400c6c51
nop dword [rax]
mov rcx, qword [r14]
mov qword [rbx + 0x40], rcx
mov rcx, qword [r14]
test rcx, rcx
je 0x1400c6b5d
mov rcx, qword [rcx + 0x48]
mov qword [rbx + 0x48], rcx
mov rax, qword [r14]
mov qword [rax + 0x48], rbx
mov rax, qword [rbx + 0x48]
test rax, rax
je 0x1400c6b60
mov qword [rax + 0x40], rbx
jmp 0x1400c6b60
mov qword [r14], rbx
mov qword [r14], rbx
mov rdx, qword [rbx + 0x58]
test rdx, rdx
je 0x1400c6b75
mov rax, qword [rdx]
mov qword [rbx + 0x58], rax
jmp 0x1400c6b9a
mov rdx, qword [rbx + 0x50]
test rdx, rdx
je 0x1400c6bab
movzx eax, word [rbx + 0x72]
mov rcx, rdx
sub rcx, rax
lea rax, [rbx + 0x80]
cmp rcx, rax
cmovb rcx, r13
mov qword [rbx + 0x50], rcx
inc word [rbx + 0x70]
test rdx, rdx
je 0x1400c6baf
mov rax, rdx
jmp 0x1400c6a64
mov byte [rbx + 0x74], 1
cmp esi, 0x40
ja 0x1400c6bbc
lea edi, [rsi - 1]
shr edi, 3
jmp 0x1400c6c1d
cmp esi, 0x400
ja 0x1400c6bd7
lea edx, [rsi - 1]
bsr eax, edx
lea ecx, [rax - 2]
shr edx, cl
lea edi, [rax - 5]
lea edi, [rdx + rdi*4]
jmp 0x1400c6c1d
cmp esi, 0xfc0
ja 0x1400c6c00
cmp esi, 0xa80
ja 0x1400c6bf9
cmp esi, 0x700
mov edi, r13d
seta dil
add edi, 0x18
jmp 0x1400c6c1d
mov edi, 0x1a
jmp 0x1400c6c1d
cmp esi, 0x1fc0
ja 0x1400c6c1a
cmp esi, 0x1500
mov edi, r13d
seta dil
add edi, 0x1b
jmp 0x1400c6c1d
or edi, 0xffffffff
mov ecx, edi
add rcx, 0x2153
shl rcx, 4
add rcx, rbp
call fcn.1400c6d70
mov rbx, rax
test rax, rax
je 0x1400c6c48
mov r8d, edi
mov rdx, r15
mov rcx, rax
call fcn.1400c6e00
test rbx, rbx
jne 0x1400c6b30
mov rdx, rsi
mov rcx, rbp
call fcn.1400c61b0
mov rbx, rax
test rax, rax
je 0x1400c6c88
mov rdx, rax
mov rcx, r14
call fcn.1400c6fe0
mov rcx, rbx
mov qword [r14], rbx
call fcn.1400c57a0
test rax, rax
jne 0x1400c6a64
jmp 0x1400c699f
xor eax, eax
jmp 0x1400c6a64
mov r9d, 0x40
mov r8, rsi
mov rdx, r15
mov rcx, rbp
call fcn.1400c6420
jmp 0x1400c6a64
xor eax, eax
add rsp, 0x48
pop rsi
pop rbp
ret