Function at 0x4489c0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x808
mov eax, dword [0x565fa8]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [0x565fb8]
cmp eax, 0xffffffff
mov dword [ebp - 0x814], eax
jne 0x448a9d
lea edi, [ebp - 0x814]
push edi
call fcn.00461930
add esp, 4
test al, al
jne 0x448a20
lea esi, [ebp - 0x810]
mov ecx, esi
push str.PlatformThreadLocalStorage::AllocTLS_key_
push 0xd0
push str..._.._base_threading_thread_local_storage.cc
call fcn.00426e70
mov ecx, esi
call fcn.00426f60
mov ecx, dword [ebp - 0x814]
cmp ecx, 0xffffffff
jne 0x448a74
push edi
call fcn.00461930
add esp, 4
test al, al
je 0x448a41
cmp dword [ebp - 0x814], 0xffffffff
jne 0x448a64
lea esi, [ebp - 0x810]
mov ecx, esi
push str.PlatformThreadLocalStorage::AllocTLS_key___key___PlatformThreadLocalStorage::TLS_KEY_OUT_OF_INDEXES
push 0xda
push str..._.._base_threading_thread_local_storage.cc
call fcn.00426e70
mov ecx, esi
call fcn.00426f60
push 0xffffffffffffffff
call fcn.00461950
add esp, 4
mov ecx, dword [ebp - 0x814]
mov eax, 0xffffffff
lock cmpxchg dword [0x565fb8], ecx
mov eax, dword [ebp - 0x814]
je 0x448a9d
push eax
call fcn.00461950
add esp, 4
mov eax, dword [0x565fb8]
mov dword [ebp - 0x814], eax
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ebx, eax
and ebx, 3
je 0x448c18
lea edi, [ebp - 0x80c]
mov dword [ebp - 0x810], 0x5124b0
lea ecx, [ebp - 0x7d8]
mov dword [ebp - method.std::__1::basic_ostream_char__struct_std::__1::char_traits_char__.virtual_0], vtable.std::__1::basic_ostream_char__struct_std::__1::char_traits_char__.0
push edi
call fcn.00407f46
mov dword [ebp - 0x790], 0
mov dword [ebp - 0x78c], 0xffffffff
mov ecx, edi
mov eax, dword [ebp - 0x810]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0x810], 0x5124b8
call fcn.00406936
mov dword [ebp - 0x80c], 0x5124c0
mov dword [ebp - 0x7e8], 0
mov dword [ebp - 0x7ec], 0
mov dword [ebp - 0x7e0], 0
mov dword [ebp - 0x7e4], 0
mov dword [ebp - 0x7dc], 0x10
lea esi, [ebp - 0x810]
push 0x40
push str.GetTlsVectorStateAndValue_key___TlsVectorState::kUninitialized
push esi
call fcn.00401965
add esp, 0xc
push 2
push 0x5124a5
push eax
call fcn.00401965
add esp, 0xc
mov ecx, esi
push ebx
call fcn.00407110
push 5
push str._vs.
push esi
call fcn.00401965
add esp, 0xc
mov ecx, esi
push 0
call fcn.00407110
push 1
push 0x5124ae
push esi
call fcn.00401965
add esp, 0xc
push 0xc
call fcn.004e6826
add esp, 4
mov ebx, eax
mov ecx, edi
push eax
call fcn.00403734
mov eax, dword [ebp - 0x810]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0x810], 0x5124b8
mov dword [ebp - 0x80c], 0x5124c0
cmp byte [ebp - 0x7e1], 0
jns 0x448be0
push dword [ebp - 0x7ec]
call fcn.004e6856
add esp, 4
mov ecx, edi
call fcn.00406924
mov ecx, edi
call fcn.00406cc0
lea ecx, [ebp - 0x7d8]
call fcn.0040691a
lea esi, [ebp - 0x810]
mov ecx, esi
push ebx
push 0xec
push str..._.._base_threading_thread_local_storage.cc
call fcn.00427d80
mov ecx, esi
call fcn.00426f60
lea edi, [ebp - 0x810]
push 0x800
push 0
push edi
call fcn.004ead00
add esp, 0xc
lea eax, [ebp - 0x80d]
push eax
push dword [ebp - 0x814]
call fcn.00461960
add esp, 8
push 0x800
call fcn.004e6883
add esp, 4
mov esi, eax
push 0x800
push edi
push eax
call fcn.004ea200
add esp, 0xc
mov eax, esi
or eax, 3
push eax
push dword [ebp - 0x814]
call fcn.00461960
add esp, 8
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004e6891
mov eax, esi
add esp, 0x808
pop esi
pop edi
pop ebx
pop ebp
ret