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

Disassembly:
xchg r13, rbp
mov qword [rsp + 0x18], r13
xchg rbp, r13
push rdi
sub rsp, 0x20
mov rdi, qword gs:[0x30]
xchg r14, rcx
mov rbp, r14
xchg rcx, r14
mov rax, qword [rdi + 0x2d8]
xchg r11, rax
mov qword [rcx + 0xf8], r11
xchg r11, rax
xchg rsi, rax
mov rsi, qword [rdi + 0x2e0]
xchg rsi, rax
xchg r12, rax
mov qword [rcx + 0x98], r12
xchg r12, rax
xchg r12, rax
mov r12, qword [rcx + 0xc8]
xchg r12, rax
mov qword [rcx + 0x80], rax
cmp byte [rdi + 0x2ec], 0
jne 0x14002fd2e
cmp qword [0x140216fe0], 0
je 0x14002fd2e
mov byte [rdi + 0x2ec], 0x23
xor byte [rdi + 0x2ec], 0x12
sub byte [rdi + 0x2ec], 9
add byte [rdi + 0x2ec], 8
sub byte [rdi + 0x2ec], 5
add byte [rdi + 0x2ec], 1
xor byte [rdi + 0x2ec], 0x2c
xor byte [rdi + 0x2ec], 1
mov rax, qword [0x140216fe0]
xchg r10, rcx
mov r10, qword [rax + 0x30]
xchg r10, rcx
cmp qword [rdi + 0x2d8], rcx
jne 0x14002fcef
xchg r13, rbx
mov qword [rsp + 0x30], r13
xchg r13, rbx
xchg rdi, rbx
mov rdi, qword [rbp + 0x98]
xchg rdi, rbx
cmp dword [rbx + 0x4f0], 0x80000003
jne 0x14002fbe0
xchg rcx, rdx
mov rdx, qword [rax + 0x18]
xchg rcx, rdx
mov qword [rsp + 0x38], rsi
cmp qword [rbx + 0x500], rcx
jne 0x14002fb40
lea rax, [0x14002dbd0]
mov byte [rdi + 0x2ec], 0x49
sub byte [rdi + 0x2ec], 0x1a
xor byte [rdi + 0x2ec], 0x44
xor byte [rdi + 0x2ec], 0x1a
sub byte [rdi + 0x2ec], 0x17
sub byte [rdi + 0x2ec], 0x26
xor byte [rdi + 0x2ec], 0x23
add byte [rdi + 0x2ec], 0x21
sub byte [rdi + 0x2ec], 0x38
xor edx, edx
mov qword [rbx + 0xf8], rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_RtlRestoreContext]
mov rax, qword [0x140216fe0]
mov ecx, dword [rax + 0xc]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
cmp rax, 4
mov rax, qword [0x140216fe0]
jne 0x14002fbd5
mov ecx, dword [rax + 0xc]
mov edx, 0x47999ba3
add edx, 0x2d93f3eb
sub edx, 0x44e94756
add edx, 0x247878b6
sub edx, 0x1bae11a6
add edx, 0x445effe6
sub edx, 0x7d6daf29
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
mov byte [rdi + 0x2ec], 0x7d
sub byte [rdi + 0x2ec], 0x72
add byte [rdi + 0x2ec], 0x62
xor byte [rdi + 0x2ec], 3
xor byte [rdi + 0x2ec], 4
sub byte [rdi + 0x2ec], 0x6a
xor edx, edx
inc qword [rbx + 0xf8]
xchg rbx, rcx
mov rbx, rcx
xchg rcx, rbx
call qword [sym.imp.KERNEL32.dll_RtlRestoreContext]
mov rax, qword [0x140216fe0]
xchg r11, rsi
mov r11, qword [rsp + 0x38]
xchg rsi, r11
cmp byte [rax + 6], 0
jne 0x14002fca2
mov ecx, dword [rbx + 0x4f0]
cmp ecx, 1
je 0x14002fc83
cmp ecx, 0x80000001
je 0x14002fc5a
cmp ecx, 0x80000003
je 0x14002fc3d
cmp ecx, 0x80000004
jne 0x14002fca2
mov byte [rax], 0x5b
sub byte [rax], 0x1e
xor byte [rax], 0x13
xor byte [rax], 0x67
sub byte [rax], 0x17
xor byte [rax], 0x57
sub byte [rax], 0x34
xor byte [rax], 0x22
xor byte [rax], 0x12
jmp 0x14002fc9b
mov byte [rax + 2], 0x38
add byte [rax + 2], 0x45
sub byte [rax + 2], 0xf
sub byte [rax + 2], 0x66
xor byte [rax + 2], 0xf
xor byte [rax + 2], 6
jmp 0x14002fc9b
mov byte [rax + 4], 0x1b
xor byte [rax + 4], 0x6b
xor byte [rax + 4], 0x51
add byte [rax + 4], 0x48
add byte [rax + 4], 2
xor byte [rax + 4], 0x6b
add byte [rax + 4], 0x51
xor byte [rax + 4], 0x2a
xor byte [rax + 4], 0x7a
jmp 0x14002fc9b
mov byte [rax + 3], 0x57
sub byte [rax + 3], 0x38
xor byte [rax + 3], 0x41
sub byte [rax + 3], 0x33
xor byte [rax + 3], 0x3e
sub byte [rax + 3], 0x14
mov rax, qword [0x140216fe0]
cmp qword [rbx + 0x48], 0
jne 0x14002fcce
cmp qword [rbx + 0x50], 0
jne 0x14002fcce
cmp qword [rbx + 0x58], 0
jne 0x14002fcce
cmp qword [rbx + 0x60], 0
je 0x14002fcea
mov byte [rax + 1], 0x7e
xor byte [rax + 1], 0x33
sub byte [rax + 1], 0x38
sub byte [rax + 1], 0x11
add byte [rax + 1], 0x62
xor byte [rax + 1], 0x17
sub byte [rax + 1], 0x70
mov rbx, qword [rsp + 0x30]
mov byte [rdi + 0x2ec], 0x5f
xor byte [rdi + 0x2ec], 0x75
add byte [rdi + 0x2ec], 1
sub byte [rdi + 0x2ec], 5
add byte [rdi + 0x2ec], 7
sub byte [rdi + 0x2ec], 0x18
xor byte [rdi + 0x2ec], 0x2d
sub byte [rdi + 0x2ec], 0x28
sub byte [rdi + 0x2ec], 0x10
xor edx, edx
xchg rbp, rcx
mov rbp, rcx
xchg rbp, rcx
xchg r8, rbp
mov r8, qword [rsp + 0x40]
xchg r8, rbp
add rsp, 0x20
nop
mov rdi, qword [rsp]
add rsp, 8
jmp qword [sym.imp.KERNEL32.dll_RtlRestoreContext]