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

Disassembly:
sub rsp, 0x28
cmp dword [0x14009ffe0], 0
je 0x1400412c7
mov eax, 1
add rsp, 0x28
ret
xor eax, eax
lea rcx, [0x1400a0008]
xor edx, edx
mov qword [0x14009ffe0], rax
mov r8d, 0x240
call sub.VCRUNTIME140.dll_memset
xor edx, edx
lea rcx, [0x1400a0270]
mov r8d, 0x2848
call sub.VCRUNTIME140.dll_memset
mov rax, qword [0x1400a2ed8]
mov rcx, qword [0x1400a2ed0]
movsd xmm1, qword [0x140093810]
mov qword [0x14009fff0], rax
mov rax, qword [0x1400a2ee0]
mov qword [0x14009fff8], rax
mov rax, qword [0x1400a2ee8]
mov qword [0x1400a0000], rax
movsd qword [0x1400a0268], xmm1
mov qword [0x14009ffe8], rcx
movups xmm2, xmmword [0x1400937f0]
movups xmm0, xmmword [0x140093800]
movups xmmword [0x1400a0248], xmm2
movups xmmword [0x1400a0258], xmm0
test rcx, rcx
jne 0x14004138b
lea rax, [0x14003eea0]
mov qword [0x14009ffe8], rax
lea rax, [0x14003eec0]
mov qword [0x14009fff0], rax
lea rax, [0x14003eeb0]
mov qword [0x14009fff8], rax
psrldq xmm2, 8
movd r8d, xmm2
lea eax, [r8 - 0x60000]
cmp eax, 4
jbe 0x1400413c6
cmp r8d, 0x60005
je 0x14004169b
lea rdx, str.Invalid_platform_ID_0x_08X
mov ecx, 0x10003
call fcn.140039200
xor eax, eax
add rsp, 0x28
ret
cmp r8d, 0x60005
je 0x14004169b
cmp r8d, 0x60000
jne 0x1400413ee
lea rdx, [0x1400a0008]
lea ecx, [r8 + 1]
call fcn.140034b80
jmp 0x14004143c
lea r9, [0x140085290]
xor eax, eax
mov rcx, r9
nop word [rax + rax]
cmp dword [rcx], r8d
je 0x14004142a
inc rax
add rcx, 0x10
cmp rax, 1
jb 0x140041400
lea rdx, str.The_requested_platform_is_not_supported
mov ecx, 0x1000e
call fcn.140039200
xor eax, eax
add rsp, 0x28
ret
add rax, rax
lea rdx, [0x1400a0008]
mov ecx, r8d
call qword [r9 + rax*8 + 8]
test eax, eax
je 0x14004169b
call qword [0x1400a0010]
test eax, eax
je 0x140041696
lea rcx, [0x1400a1998]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [0x1400a1990], 1
call qword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [0x1400a1980], eax
cmp eax, 0xffffffff
je 0x140041685
mov dword [0x1400a197c], 1
call qword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [0x1400a1988], eax
cmp eax, 0xffffffff
je 0x140041685
mov ecx, dword [0x1400a1980]
lea rdx, [0x1400a2ac0]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x20], rdi
mov dword [0x1400a1984], 1
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
mov rdx, qword [0x1400a0000]
mov ecx, 0x2d0a5
call qword [0x14009ffe8]
test rax, rax
je 0x1400414f0
xor edx, edx
mov r8d, 0x2d0a5
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov rdx, rax
jmp 0x1400414fe
xor edx, edx
mov ecx, 0x10005
call fcn.140039200
xor edx, edx
mov qword [0x1400a1970], rdx
lea rdi, str.03000000300f00000a01000000000000_3_In_1_Conversion_Box_a:b2_b:b1_back:b9_dpdown:h0.4_dpleft:h0.8_dpright:h0.2_dpup:h0.1_leftshoulder:b6_leftstick:b10_lefttrigger:b4_leftx:a0_lefty:a1_rightshoulder:b7_rightstick:b11_righttrigger:b5_rightx:a3_righty:a2_start:b8_x:b3_y:b0_platform:Windows_
xor ebx, ebx
nop
movsxd rax, dword [0x1400a1978]
imul rcx, rax, 0xf5
add rcx, rdx
mov rdx, qword [rbx + rdi]
call fcn.140042ba0
test eax, eax
je 0x140041534
inc dword [0x1400a1978]
add rbx, 8
cmp rbx, 0x1788
jae 0x14004154a
mov rdx, qword [0x1400a1970]
jmp 0x140041510
lea rcx, [0x1400a19c8]
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, [0x1400a02b8]
xorps xmm0, xmm0
mov qword [0x1400a19c0], rax
movups xmmword [0x1400a0708], xmm0
xor eax, eax
mov dword [0x14009ffe0], 1
xor edx, edx
mov qword [0x1400a0738], rax
mov r8d, 0x450
mov dword [0x1400a0708], 0x30001
movups xmmword [0x1400a0718], xmm0
mov dword [0x1400a070c], 0x36001
movups xmmword [0x1400a0728], xmm0
mov qword [0x1400a0710], 1
call sub.VCRUNTIME140.dll_memset
movdqa xmm0, xmmword [0x140050670]
xor eax, eax
mov rdi, qword [rsp + 0x20]
mov rbx, qword [rsp + 0x38]
movdqa xmmword [0x1400a02d0], xmm0
xorps xmm0, xmm0
movups xmmword [0x1400a0280], xmm0
mov qword [0x1400a02b0], rax
mov eax, 1
movups xmmword [0x1400a02a0], xmm0
mov dword [0x1400a02e0], 1
movups xmmword [0x1400a0290], xmm0
mov dword [0x1400a02ec], 1
movdqa xmm0, xmmword [str._b_b_b_b]
movdqa xmmword [0x1400a0270], xmm0
mov dword [0x1400a02f0], 1
mov dword [0x1400a02b8], 0x80000000
mov dword [0x1400a02bc], 0x80000000
mov dword [0x1400a0280], 0x18
mov dword [0x1400a0284], 8
mov dword [0x1400a02a8], 1
mov dword [0x1400a0740], 0xffffffff
mov dword [0x1400a02fc], 1
add rsp, 0x28
ret
lea rdx, str.Win32:_Failed_to_allocate_TLS_index
mov ecx, 0x10008
call fcn.140039200
call fcn.140043820
xor eax, eax
add rsp, 0x28
ret