Function at 0x10009b970
Capabilities:
Get thread local storage value

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov qword [rax - 0x38], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x20], rsi
mov r13, r9
mov rdi, r8
movsxd rsi, ecx
mov ecx, edx
call fcn.10006bf10
mov r12, rax
mov ebp, dword [rsp + 0xa8]
mov r15d, ebp
and r15d, 0x12f0002
xor r14d, r14d
mov ebx, r14d
cmp esi, 0xb
ja case.0x10009b9dc.8
lea rax, [0x100000000]
mov edx, dword [rax + rsi*4 + 0x9bdb4]
add rdx, rax
jmp rdx
mov r8d, dword [0x10002b354]
mov dword [rsp + 0x20], r14d
mov edx, 0x1b0
mov r9d, edx
mov rcx, rdi
call fcn.100106000
mov rbx, rax
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10009ba46
mov dword [rax + 8], 1
lea rax, [0x10001d230]
mov qword [rbx], rax
mov qword [rbx + 0x10], 0x2000
mov dword [rbx + 0x18], r14d
mov qword [rbx + 0x20], r14
mov dword [rbx + 0x28], r14d
mov qword [rbx + 0x30], r14
lea rax, [0x10001d4b0]
mov qword [rbx], rax
lea rax, [0x10001d5f0]
mov qword [rbx], rax
jmp 0x10009ba49
mov rbx, r14
jmp 0x10009bd65
mov r8d, dword [0x10002b354]
mov dword [rsp + 0x20], r14d
mov edx, 0x580
mov r9d, edx
mov rcx, rdi
call fcn.100106000
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10009ba81
mov rcx, rax
call fcn.1000b3d60
mov rbx, rax
jmp 0x10009ba84
mov rbx, r14
call fcn.100068a00
mov rsi, qword gs:[0x30]
mov r14, rax
add rsi, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x10009bab0
mov ecx, r14d
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rsi, rax
test rsi, rsi
je 0x10009bac1
mov r8, qword [rsi + 0xd8]
test r8, r8
jne 0x10009baf9
call fcn.100063d30
call fcn.100068a00
mov r14, rax
mov rsi, qword gs:[0x30]
add rsi, rax
mov rcx, rax
call fcn.10006c530
test eax, eax
jne 0x10009baf2
mov ecx, r14d
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rsi, rax
mov r8, qword [rsi + 0xd8]
shr ebp, 0x19
and ebp, 1
mov dword [rsp + 0x28], ebp
mov r8, qword [r8 + 0x210]
jmp 0x10009bd4f
mov r8d, dword [0x10002b354]
mov dword [rsp + 0x20], r14d
mov edx, 0x280
lea r9d, [rdx - 8]
mov rcx, rdi
call fcn.100106000
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10009bb43
mov rcx, rax
call fcn.1000b5c40
mov rbx, rax
jmp 0x10009bb46
mov rbx, r14
jmp 0x10009bd65
mov r8d, dword [0x10002b354]
mov dword [rsp + 0x20], r14d
mov edx, 0x200
mov r9d, edx
mov rcx, rdi
call fcn.100106000
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10009bb7e
mov rcx, rax
call fcn.1000b5f30
mov rbx, rax
jmp 0x10009bb81
mov rbx, r14
jmp 0x10009bd65
mov r8d, dword [0x10002b354]
mov dword [rsp + 0x20], r14d
mov edx, 0x650
lea r9d, [rdx - 8]
mov rcx, rdi
call fcn.100106000
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10009bbba
mov rcx, rax
call fcn.1000b7f60
mov rbx, rax
jmp 0x10009bbbd
mov rbx, r14
jmp 0x10009bd47
mov r8d, dword [0x10002b354]
mov dword [rsp + 0x20], r14d
mov edx, 0x5d0
mov r9d, edx
mov rcx, rdi
call fcn.100106000
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10009bbf5
mov rcx, rax
call fcn.1000b8220
mov rbx, rax
jmp 0x10009bbf8
mov rbx, r14
jmp 0x10009ba84
mov r8d, dword [0x10002b354]
mov dword [rsp + 0x20], r14d
mov edx, 0x2d0
lea r9d, [rdx - 8]
mov rcx, rdi
call fcn.100106000
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10009bc31
mov rcx, rax
call fcn.1000b8330
mov rbx, rax
jmp 0x10009bc34
mov rbx, r14
jmp 0x10009bd65
mov r8d, dword [0x10002b354]
mov dword [rsp + 0x20], r14d
mov edx, 0x6a0
lea r9d, [rdx - 8]
mov rcx, rdi
call fcn.100106000
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10009bc6d
mov rcx, rax
call fcn.1000b8450
mov rbx, rax
jmp 0x10009bc70
mov rbx, r14
jmp 0x10009bd47
mov r8d, dword [0x10002b354]
mov dword [rsp + 0x20], r14d
mov edx, 0x340
lea r9d, [rdx - 8]
mov rcx, rdi
call fcn.100106000
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10009bca9
mov rcx, rax
call fcn.1000ba9b0
mov rbx, rax
jmp 0x10009bcac
mov rbx, r14
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0xb8]
mov r8, qword [rsp + 0xb0]
mov rdx, rdi
mov rcx, rbx
call fcn.1000b9fb0
test eax, eax
jne 0x10009bd65
mov rbx, r14
jmp case.0x10009b9dc.8
mov r8d, dword [0x10002b354]
mov dword [rsp + 0x20], r14d
mov edx, 0x710
lea r9d, [rdx - 8]
mov rcx, rdi
call fcn.100106000
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10009bd18
mov rcx, rax
call fcn.1000bcf10
mov rbx, rax
jmp 0x10009bd1b
mov rbx, r14
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0xb8]
mov r8, qword [rsp + 0xb0]
mov rdx, rdi
mov rcx, rbx
call fcn.1000bc510
test eax, eax
je 0x10009bcdc
mov dword [rsp + 0x28], r14d
xor r8d, r8d
mov dword [rsp + 0x20], r15d
mov r9d, 1
mov rdx, r12
mov rcx, rbx
call fcn.100113e80
test rbx, rbx
je case.0x10009b9dc.8
movzx ecx, word [rsp + 0xa0]
mov word [rsp + 0x20], cx
movzx r9d, word [rsp + 0x98]
mov r8, r13
mov rdx, rdi
mov rcx, rbx
call fcn.100107ba0
mov rax, rbx
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x88]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
ret