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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x40
mov rsi, r9
mov ebp, r8d
mov r14, rdx
mov r15, rcx
call fcn.140083470
test al, al
je 0x140092535
call fcn.140083d90
mov rcx, qword [0x1402e0770]
mov rax, qword [rcx]
mov rax, qword [rax + 0x80]
call qword [case.0x140047d56.0]
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x140092384
mov ebx, 0x1392
jmp 0x14009255d
mov ecx, 8
call fcn.14015450c
mov rdi, rax
test rax, rax
je 0x140092558
xor r9d, r9d
mov qword [rax], 0xffffffffffffffff
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [rdi], rax
cmp rax, 0xffffffffffffffff
je 0x1400923c6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
test eax, eax
jne 0x1400923f4
mov rcx, qword [0x1402e0770]
mov rax, qword [rcx]
mov rax, qword [rax + 0x80]
call qword [case.0x140047d56.0]
mov ecx, eax
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
jne 0x14009241f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [rdi]
cmp rcx, 0xffffffffffffffff
je 0x14009240a
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi], 0xffffffffffffffff
mov edx, 8
mov rcx, rdi
call fcn.1401544c8
test ebx, ebx
jne 0x14009255d
mov rcx, qword [0x1402daa50]
lea rdi, [0x1402daa50]
cmp rcx, rdi
je 0x140092456
test dword [rcx + 0x44], 0x400000
je 0x140092456
cmp byte [rcx + 0x41], 4
jb 0x140092456
mov rcx, qword [rcx + 0x38]
lea r8, [0x140261900]
mov edx, 0x1e
call fcn.140024250
mov rax, qword [rsp + 0x90]
lea rcx, [r15 + 0x10]
mov r9, qword [rsp + 0x88]
mov r8d, ebp
mov qword [rsp + 0x30], r14
mov rdx, rsi
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x20], eax
call fcn.14007e200
mov rcx, qword [0x1402e0770]
mov esi, eax
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x80]
call qword [case.0x140047d56.0]
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [0x1402e0770]
mov rbx, rax
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x80]
call qword [case.0x140047d56.0]
mov ecx, eax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
test rbx, rbx
je 0x1400924f7
mov rcx, qword [rbx]
cmp rcx, 0xffffffffffffffff
je 0x1400924ea
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbx], 0xffffffffffffffff
mov edx, 8
mov rcx, rbx
call fcn.1401544c8
call fcn.1400832a0
call fcn.140083470
test al, al
jne 0x140092553
mov rcx, qword [0x1402daa50]
cmp rcx, rdi
je 0x140092535
test dword [rcx + 0x44], 0x400000
je 0x140092535
cmp byte [rcx + 0x41], 2
jb 0x140092535
mov rcx, qword [rcx + 0x38]
lea r8, [0x140261900]
mov edx, 0x1f
call fcn.140024250
mov eax, 1
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret
mov rax, rsi
jmp 0x14009253a
mov ebx, 0xe
mov rcx, qword [0x1402daa50]
lea rdi, [0x1402daa50]
cmp rcx, rdi
je 0x140092597
test dword [rcx + 0x44], 0x400000
je 0x140092597
cmp byte [rcx + 0x41], 2
jb 0x140092597
mov rcx, qword [rcx + 0x38]
lea r8, [0x140261900]
mov edx, 0x1d
mov r9d, ebx
call fcn.140026620
mov eax, ebx
jmp 0x14009253a