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

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0xd0
mov rdi, rcx
mov ecx, dword [0x005b70e8]
test ecx, ecx
je 0x4cb9a2
dec ecx
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 1
jbe 0x4cb7d8
mov rsi, rax
cmp qword [rax], 0
jne 0x4cb994
mov ecx, dword [0x005b70e8]
test ecx, ecx
je 0x4cb9b5
dec ecx
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 1
je 0x4cb992
mov rsi, rax
test rax, rax
jne 0x4cb844
mov ecx, 0x10
mov edx, 8
call fcn.00414fe0
test rax, rax
je 0x4cba44
mov rsi, rax
mov qword [rax], 0
lea rax, [0x005b70d0]
mov qword [rsi + 8], rax
mov ecx, dword [0x005b70e8]
test ecx, ecx
je 0x4cb9c8
dec ecx
mov rdx, rsi
call sub.KERNEL32.dll_TlsSetValue
test rdi, rdi
je 0x4cb85c
mov rbx, qword [rdi]
mov qword [rdi], 0
test rbx, rbx
jne 0x4cb980
xorps xmm0, xmm0
lea rdi, [rsp + 0x20]
movaps xmmword [rdi + 0x10], xmm0
movaps xmmword [rdi], xmm0
mov rcx, rdi
call fcn.004ce970
test rax, rax
jne 0x4cb9db
movaps xmm0, xmmword [rsp + 0x20]
movaps xmm1, xmmword [rsp + 0x30]
lea rdi, [rsp + 0x50]
movaps xmmword [rdi + 0x10], xmm1
movaps xmmword [rdi], xmm0
lea rbx, [rsp + 0xa0]
mov rcx, rbx
mov rdx, rdi
call fcn.004cba74
movaps xmm0, xmmword [rbx]
movaps xmm1, xmmword [rbx + 0x10]
movaps xmm2, xmmword [rbx + 0x20]
movaps xmmword [rsp + 0x40], xmm2
movaps xmmword [rsp + 0x30], xmm1
movaps xmmword [rsp + 0x20], xmm0
movups xmmword [rbx - 8], xmm0
movups xmmword [rbx + 8], xmm1
movups xmmword [rbx + 0x18], xmm2
movups xmm0, xmmword [rbx - 0x10]
movaps xmmword [rdi], xmm0
movups xmm0, xmmword [rbx]
movaps xmmword [rdi + 0x10], xmm0
movups xmm0, xmmword [rbx + 0x10]
movaps xmmword [rdi + 0x20], xmm0
mov rax, qword [rbx + 0x20]
mov qword [rdi + 0x30], rax
mov ecx, 0x170
mov edx, 0x10
call fcn.00414fe0
test rax, rax
je 0x4cba38
mov rbx, rax
mov eax, 1
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov rcx, rbx
add rcx, 0x10
mov r8d, 0x100
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rbx + 0x110], 0x40
movaps xmm0, xmmword [rsp + 0x50]
movaps xmm1, xmmword [rsp + 0x60]
movaps xmm2, xmmword [rsp + 0x70]
movups xmmword [rbx + 0x118], xmm0
movups xmmword [rbx + 0x128], xmm1
movups xmmword [rbx + 0x138], xmm2
mov rax, qword [rsp + 0x80]
mov qword [rbx + 0x148], rax
mov eax, 0x10000
mov qword [rbx + 0x150], rax
mov qword [rbx + 0x158], rax
mov qword [rbx + 0x160], 0
mov rcx, qword [rsi]
mov qword [rsi], rbx
test rcx, rcx
je 0x4cb994
call fcn.004cb609
jmp 0x4cb994
xor esi, esi
mov rax, rsi
add rsp, 0xd0
pop rbx
pop rdi
pop rsi
ret
lea rcx, [0x005b70d0]
call fcn.0053fad0
mov ecx, eax
jmp 0x4cb7c0
lea rcx, [0x005b70d0]
call fcn.0053fad0
mov ecx, eax
jmp 0x4cb7e8
lea rcx, [0x005b70d0]
call fcn.0053fad0
mov ecx, eax
jmp 0x4cb83c
mov qword [rsp + 0x20], rax
lea rax, [0x005e1ab8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rax], rdi
lea rcx, [0x004ce8d0]
mov qword [rax + 8], rcx
lea rdx, str.could_not_initialize_thread_rng:
lea rcx, [rsp + 0x90]
mov qword [rcx + 0x10], rdx
mov edx, 1
mov qword [rcx + 0x18], rdx
mov qword [rcx], 0
mov qword [rcx + 0x20], rax
mov qword [rcx + 0x28], rdx
lea rdx, str.registry_src_octopus.retort.com_8754fae0eb2f08f1_mitt_0.8.5_src_rngs_thread.rs
call fcn.00426330
ud2
mov ecx, 0x170
mov edx, 0x10
jmp 0x4cba4e
mov ecx, 0x10
mov edx, 8
call fcn.00417bf0
ud2