Function at 0x1800a13c0
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
xor esi, esi
mov rdi, r9
cmp ecx, 0x48530500
ja 0x1800a14b3
je 0x1800a1724
cmp ecx, 0x46580201
ja 0x1800a143b
cmp ecx, 0x46580200
jae 0x1800a1554
cmp ecx, 0x43530400
jb 0x1800a1426
cmp ecx, 0x43530401
jbe 0x1800a1724
cmp ecx, 0x43530500
je 0x1800a1724
cmp ecx, 0x44530500
je 0x1800a1724
mov eax, 0x80070057
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
cmp ecx, 0x46580400
jb 0x1800a1426
cmp ecx, 0x46580401
jbe 0x1800a1467
cmp ecx, 0x475303ff
jbe 0x1800a1426
cmp ecx, 0x47530401
jbe 0x1800a1724
cmp ecx, 0x47530500
jmp 0x1800a1420
mov ecx, 0x19700
call fcn.1800c63b0
mov rbx, rax
test rax, rax
je 0x1800a17ac
mov rcx, rax
call fcn.1800a2380
lea r11, [0x18003f630]
mov eax, 0x8007000e
test rbx, rbx
mov dword [rbx + 0x196f8], esi
mov qword [rbx], r11
mov qword [rdi], rbx
cmovne eax, esi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
cmp ecx, 0xfffe0500
ja 0x1800a15ef
je 0x1800a1724
cmp ecx, 0xfffe02ff
ja 0x1800a15bc
je 0x1800a1507
cmp ecx, 0x54580100
je 0x1800a1554
cmp ecx, 0xfffe0100
jbe 0x1800a1426
cmp ecx, 0xfffe0102
jbe 0x1800a1507
cmp ecx, 0xfffe01ff
jbe 0x1800a1426
cmp ecx, 0xfffe0203
ja 0x1800a1426
mov ecx, 0x196f8
call fcn.1800c63b0
mov rbx, rax
test rax, rax
je 0x1800a17ac
mov rcx, rax
call fcn.1800a2380
lea r11, [0x18003df40]
mov eax, 0x8007000e
mov qword [rbx], r11
test rbx, rbx
mov byte [rbx + 0x195d1], sil
mov qword [rdi], rbx
cmovne eax, esi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x1800a1563
mov rax, rsi
jmp 0x1800a1569
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [rax]
xor edx, edx
mov r8d, 0x19700
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
je 0x1800a17ac
mov rcx, rax
call fcn.1800a2380
lea r11, [0x18003da70]
mov eax, 0x8007000e
test rbx, rbx
mov dword [rbx + 0x196f8], esi
mov qword [rbx], r11
mov qword [rdi], rbx
cmovne eax, esi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
cmp ecx, 0xfffe0300
jb 0x1800a1426
cmp ecx, 0xfffe0301
jbe 0x1800a162b
cmp ecx, 0xfffe03ff
je 0x1800a162b
jbe 0x1800a1426
cmp ecx, 0xfffe0401
jbe 0x1800a1724
jmp 0x1800a1426
cmp ecx, 0xffff03ff
ja 0x1800a1704
je 0x1800a162b
cmp ecx, 0xffff0200
jb 0x1800a1426
cmp ecx, 0xffff0205
jbe 0x1800a163a
cmp ecx, 0xffff02ff
je 0x1800a163a
jbe 0x1800a1426
cmp ecx, 0xffff0301
ja 0x1800a1426
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x1800a16aa
mov rax, rsi
jmp 0x1800a16b0
mov ecx, 0x19738
call fcn.1800c63b0
mov rbx, rax
test rax, rax
je 0x1800a17ac
mov rcx, rax
call fcn.1800a2380
lea rax, [0x180261060]
mov byte [rbx + 0x19730], sil
mov qword [rbx + 0x19528], rax
lea rax, [0x180261210]
lea r11, [0x18003e3f0]
mov qword [rbx + 0x19530], rax
mov qword [rbx], r11
mov eax, 0x8007000e
test rbx, rbx
mov byte [rbx + 0x195d1], sil
mov qword [rdi], rbx
cmovne eax, esi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [rax]
xor edx, edx
mov r8d, 0x196f8
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
je 0x1800a17ac
mov rcx, rax
call fcn.1800a2380
lea r11, [0x18003e650]
mov eax, 0x8007000e
mov qword [rbx], r11
test rbx, rbx
mov byte [rbx + 0x195d1], sil
mov qword [rdi], rbx
cmovne eax, esi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
cmp ecx, 0xffff0400
jb 0x1800a1426
cmp ecx, 0xffff0401
jbe 0x1800a1724
cmp ecx, 0xffff0500
jne 0x1800a1426
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x1800a1733
mov rax, rsi
jmp 0x1800a1739
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [rax]
xor edx, edx
mov r8d, 0x19720
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
je 0x1800a17ac
mov rcx, rax
call fcn.1800a2380
lea r11, [0x18003f460]
mov eax, 0x8007000e
mov qword [rbx], r11
mov qword [rbx + 0x196f8], rsi
mov qword [rbx + 0x19700], rsi
mov qword [rbx + 0x19708], rsi
mov byte [rbx + 0x19710], sil
mov byte [rbx + 0x19711], 1
test rbx, rbx
mov byte [rbx + 0x195d1], sil
mov qword [rdi], rbx
cmovne eax, esi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov rbx, rsi
mov eax, 0x8007000e
test rbx, rbx
mov qword [rdi], rbx
mov rbx, qword [rsp + 0x30]
cmovne eax, esi
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret