Function at 0x14002767c
Capabilities:
Get thread local storage value

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rcx
mov ecx, dword [0x1401ab0a0]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
add rax, 0x60
mov qword [rsp + 0x68], rax
mov rax, qword [rcx]
mov qword [rsp + 0x70], rax
cmp rax, rdx
jle 0x1400276ce
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
call fcn.1400274d8
jmp 0x1400279de
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
cmp rax, rcx
jge 0x1400279de
mov rax, qword [rsp + 0x58]
mov rcx, rax
add rcx, 8
mov qword [rsp + 0x48], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x50], rax
cmp rax, 0
je 0x140027770
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
or rax, rax
movabs rdx, 0xd0a555724f73c130
movabs r8, 0x2f5aaa8db08c3ecf
xor rdx, r8
xor rax, rdx
movabs rdx, 0xbfffffffffffffff
movabs r8, 0xbfffffffffffffff
or rdx, r8
xor rdx, 0xffffffffffffffff
or rax, rdx
movabs rdx, 0xf2dc27428b8f4831
movabs r8, 0xd23d8bd7470b7ce
xor rdx, r8
xor rax, rdx
cmp rax, rcx
jge 0x1400278ba
mov rdx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x60]
xor eax, eax
sub rax, rdx
mov rcx, r8
add rcx, rax
mov qword [rsp + 0x40], rcx
mov rax, rcx
xor rax, 0xffffffffffffffff
movabs r10, 0xe8390d37278605fa
movabs r9, 0x17c6f2c8d879fa05
xor r10, r9
mov r9, rcx
xor r9, r10
or rax, r9
xor rax, 0xffffffffffffffff
mov r9, r8
xor r9, 0xffffffffffffffff
or rax, r9
mov r9, r8
xor r9, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or r9, r8
movabs r10, 0xf567af2bf96d1902
movabs r8, 0xa9850d40692e6fd
xor r10, r8
mov r8, rcx
xor r8, r10
xor r9, 0xffffffffffffffff
or r8, r9
movabs r9, 0x2494f7a3641121b4
movabs r10, 0xdb6b085c9beede4b
xor r9, r10
xor rax, r9
xor r8, 0xffffffffffffffff
or rax, r8
movabs r8, 0xaf743a235f21471a
movabs r9, 0xaf743a235f21471a
xor r8, r9
cmp rax, r8
setl al
xor rcx, rdx
movabs rdx, 0xff19b82601b6ece0
movabs r8, 0xe647d9fe49131f
xor rdx, r8
cmp rcx, rdx
setg cl
and al, cl
test al, 1
jne 0x1400278b0
mov r8, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x70]
movabs r9, 0x61747b12dd3ecb5c
movabs rax, 0x61747b12dd3ecb54
xor r9, rax
movabs rax, 0x41aed7ef823019e9
movabs r10, 0x41aed7ef823019e1
xor rax, r10
mov qword [rsp + 0x20], rax
call fcn.1400184ef
mov rcx, rax
mov rax, qword [rsp + 0x48]
mov qword [rax], rcx
jmp 0x1400278ba
call fcn.14000a590
jmp 0x1400279de
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov qword [rcx], rdx
mov qword [rsp + 0x38], rax
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x30], rax
cmp rax, rcx
jge 0x1400279de
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 3
add rcx, rax
xor eax, eax
mov edx, eax
call fcn.1400cb869
mov rax, qword [rsp + 0x68]
mov al, byte [rax]
mov cl, 0xf7
xor cl, 0xf7
cmp al, cl
jne 0x1400279de
mov rdx, qword [rsp + 0x30]
mov rax, rdx
add rax, 1
movabs rcx, 0x9e2c933086619b65
movabs r8, 0x61d36ccf799e649a
xor rcx, r8
mov r8, rdx
and r8, rcx
movabs rcx, 0x9df1e6cebde8f886
movabs r9, 0x9df1e6cebde8f884
xor rcx, r9
imul rcx, r8
movabs r8, 0x94eb86076c7a3134
movabs r9, 0x6b1479f89385cecb
xor r8, r9
add rdx, r8
sub rdx, rcx
mov rcx, rax
xor rcx, 0xffffffffffffffff
mov r8, rax
xor r8, 0xffffffffffffffff
and rcx, r8
or rdx, rdx
movabs r8, 0x1942b9ee738bc560
movabs r9, 0xe6bd46118c743a9f
xor r8, r9
xor rdx, r8
or rcx, rdx
movabs rdx, 0xc7a9171befcac765
movabs r8, 0x3856e8e41035389a
xor rdx, r8
xor rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x38], rax
jge 0x1400278d1
call fcn.14000a590
nop
add rsp, 0x78
ret