Function at 0x14037c8a0
Capabilities:
Allocate thread local storage
Set thread local storage value

Disassembly:
sub rsp, 0x28
cmp dword [0x141443c80], 0
je 0x14037c8ba
mov eax, 1
vzeroupper
add rsp, 0x28
ret
xor eax, eax
lea rcx, [0x141443ca8]
xor edx, edx
mov qword [0x141443c80], rax
mov r8d, 0x240
call sub.VCRUNTIME140.dll_memset
xor edx, edx
lea rcx, [0x141443f10]
mov r8d, 0x2aa0
call sub.VCRUNTIME140.dll_memset
mov rax, qword [0x141446d68]
vmovups ymm0, ymmword [0x1413a0be0]
mov rcx, qword [0x141446d60]
mov qword [0x141443c90], rax
mov rax, qword [0x141446d70]
mov qword [0x141443c98], rax
mov rax, qword [0x141446d78]
mov qword [0x141443ca0], rax
mov qword [0x141443c88], rcx
vmovups ymmword [0x141443ee8], ymm0
vmovsd xmm0, qword [0x1413a0c00]
vmovsd qword [0x141443f08], xmm0
test rcx, rcx
jne 0x14037c972
lea rax, [0x1401e0390]
mov qword [0x141443c88], rax
lea rax, [0x14037c1f0]
mov qword [0x141443c90], rax
lea rax, [sub.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [0x141443c98], rax
lea rdx, [0x141443ca8]
mov ecx, 0x60001
vzeroupper
call fcn.1403866a0
test eax, eax
je 0x14037cbe9
call qword [0x141443cb0]
test eax, eax
je 0x14037cbe4
lea rcx, [0x141445638]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [0x141445630], 1
call qword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [0x141445620], eax
cmp eax, 0xffffffff
je 0x14037cbd3
mov dword [0x14144561c], 1
call qword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [0x141445628], eax
cmp eax, 0xffffffff
je 0x14037cbd3
mov ecx, dword [0x141445620]
lea rdx, [0x141446d80]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x20], rdi
mov dword [0x141445624], 1
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
mov rdx, qword [0x141443ca0]
mov ecx, 0x15d51
call qword [0x141443c88]
test rax, rax
je 0x14037ca3a
xor edx, edx
mov r8d, 0x15d51
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov rdx, rax
jmp 0x14037ca48
xor edx, edx
mov ecx, 0x10005
call fcn.14037c450
xor edx, edx
mov qword [0x141445610], rdx
lea rdi, [0x1413a0c10]
xor ebx, ebx
nop dword [rax + rax]
movsxd rax, dword [0x141445618]
imul rcx, rax, 0xf5
add rcx, rdx
mov rdx, qword [rbx + rdi]
call fcn.14037d590
test eax, eax
je 0x14037ca84
inc dword [0x141445618]
add rbx, 8
cmp rbx, 0xb68
jae 0x14037ca9a
mov rdx, qword [0x141445610]
jmp 0x14037ca60
lea rcx, [0x141445668]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x30]
lea rcx, [0x141443f58]
vpxor xmm0, xmm0, xmm0
vmovups ymmword [0x1414443a8], ymm0
mov qword [0x141445660], rax
xor edx, edx
xor eax, eax
mov dword [0x141443c80], 1
mov qword [0x1414443d8], rax
mov r8d, 0x450
vmovups xmmword [0x1414443c8], xmm0
mov dword [0x1414443a8], 0x30001
mov dword [0x1414443ac], 0x36001
mov qword [0x1414443b0], 1
vzeroupper
call sub.VCRUNTIME140.dll_memset
vmovdqu xmm0, xmmword [0x14140ed30]
mov rdi, qword [rsp + 0x20]
xor eax, eax
mov rbx, qword [rsp + 0x38]
vmovdqu xmmword [0x141443f70], xmm0
vpxor xmm0, xmm0, xmm0
vmovups ymmword [0x141443f10], ymm0
vmovups ymmword [0x141443f30], ymm0
vmovdqu xmm0, xmmword [0x14140ed80]
mov qword [0x141443f50], rax
mov eax, 1
vmovdqu xmmword [0x141443f10], xmm0
mov dword [0x141443f80], 1
mov dword [0x141443f8c], 1
mov dword [0x141443f90], 1
mov dword [0x141443f58], 0x80000000
mov dword [0x141443f5c], 0x80000000
mov dword [0x141443f9c], 1
mov dword [0x141443f20], 0x18
mov dword [0x141443f24], 8
mov dword [0x141443f48], 1
mov dword [0x1414443e0], 0xffffffff
vzeroupper
add rsp, 0x28
ret
lea rdx, [0x14140cac8]
mov ecx, 0x10008
call fcn.14037c450
call fcn.14037c200
xor eax, eax
vzeroupper
add rsp, 0x28
ret