Function at 0x10033f50
Capabilities:
Allocate thread local storage
Get thread local storage value
Set thread local storage value

Disassembly:
mov ecx, dword [0x1004c978]
sub esp, 0x950
mov eax, dword [0x1004c97c]
xorps xmm0, xmm0
mov dword [0x10056998], 0
movlpd qword [0x100569c0], xmm0
push ebx
push esi
push edi
push 0x100569f4
movlpd qword [0x100569c8], xmm0
movlpd qword [0x100569d0], xmm0
movlpd qword [0x100569d8], xmm0
movlpd qword [0x100569e4], xmm0
mov dword [0x100569ec], 0
mov dword [0x100569b8], ecx
mov dword [0x100569bc], eax
mov dword [0x100569b0], ecx
mov dword [0x100569b4], eax
mov dword [0x100569e0], 0
call dword [sym.imp.KERNEL32.dll_InitializeSRWLock]
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [0x10056a08], eax
cmp eax, 0xffffffff
je 0x10034433
mov ecx, dword [0x10056998]
push 0x10050998
push eax
mov dword [ecx*4 + 0x100569a0], 0x10032930
inc ecx
mov dword [0x10056998], ecx
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
je 0x1003444e
mov byte [0x10051de2], 1
call dword [sym.imp.KERNEL32.dll_GetLastError]
push dword [0x10056a08]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
push esi
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
test ebx, ebx
jne 0x10034415
mov ecx, 0x950
call fcn.10033a20
mov ebx, eax
test ebx, ebx
je 0x1003443f
xorps xmm0, xmm0
mov byte [ebx], 0
xor eax, eax
movlpd qword [esp + 0x18], xmm0
movlpd qword [esp + 0x20], xmm0
movlpd qword [esp + 0x28], xmm0
movlpd qword [esp + 0x30], xmm0
movlpd qword [esp + 0x38], xmm0
movlpd qword [esp + 0x40], xmm0
movlpd qword [esp + 0x48], xmm0
movlpd qword [esp + 0x50], xmm0
movlpd qword [esp + 0x58], xmm0
movlpd qword [esp + 0x60], xmm0
movlpd qword [esp + 0x68], xmm0
movlpd qword [esp + 0x70], xmm0
movlpd qword [esp + 0x80], xmm0
movlpd qword [esp + 0x88], xmm0
movlpd qword [esp + 0x90], xmm0
movaps xmm0, xmmword [0x1004e200]
push 0x8c
push eax
mov word [esp + 0xd5], ax
mov byte [esp + 0xd7], al
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], eax
mov byte [esp + 0xe0], al
mov dword [esp + 0xf8], eax
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], eax
lea eax, [esp + 0x108]
movups xmmword [esp + 0xa0], xmm0
mov word [esp + 0x18], 0
xorps xmm0, xmm0
mov byte [esp + 0x1a], 0
push eax
mov dword [esp + 0x84], 0
mov word [esp + 0xb4], 0xffff
movups xmmword [esp + 0xb6], xmm0
mov word [esp + 0xd6], 0
movups xmmword [esp + 0xc6], xmm0
mov byte [esp + 0xd8], 0
movlpd qword [esp + 0xec], xmm0
movlpd qword [esp + 0xf4], xmm0
call fcn.10036180
add esp, 0xc
mov dword [esp + 0x18c], 1
mov dword [esp + 0x190], 0
mov dword [esp + 0x194], 1
mov dword [esp + 0x198], 0
mov dword [esp + 0x19c], 1
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1a4], 1
mov dword [esp + 0x1a8], 0
mov dword [esp + 0x1ac], 1
mov dword [esp + 0x1b0], 0
mov dword [esp + 0x1b4], 1
mov dword [esp + 0x1b8], 0
mov dword [esp + 0x1bc], 1
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x1c4], 1
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], 1
mov dword [esp + 0x1d0], 0
mov dword [esp + 0x1d4], 1
mov dword [esp + 0x1d8], 0
mov dword [esp + 0x1dc], 1
mov dword [esp + 0x1e0], 0
mov dword [esp + 0x1e4], 1
mov dword [esp + 0x1e8], 0
mov dword [esp + 0x1ec], 1
mov dword [esp + 0x1f0], 0
mov dword [esp + 0x1f4], 1
mov dword [esp + 0x1f8], 0
mov dword [esp + 0x1fc], 1
mov dword [esp + 0x200], 0
mov dword [esp + 0x204], 1
mov dword [esp + 0x208], 0
mov dword [esp + 0x20c], 1
mov dword [esp + 0x210], 0
mov dword [esp + 0x214], 1
xor eax, eax
mov dword [esp + 0x218], 0
push 0x6d8
xorps xmm0, xmm0
mov word [esp + 0x251], ax
push eax
mov byte [esp + 0x257], al
mov dword [esp + 0x278], eax
lea eax, [esp + 0x280]
push eax
mov dword [esp + 0x228], 1
mov dword [esp + 0x22c], 0
mov dword [esp + 0x230], 1
mov dword [esp + 0x234], 0
mov dword [esp + 0x238], 1
mov dword [esp + 0x23c], 0
mov dword [esp + 0x240], 1
mov dword [esp + 0x244], 0
mov dword [esp + 0x248], 1
mov dword [esp + 0x24c], 0
mov dword [esp + 0x250], 1
mov dword [esp + 0x254], 0
mov byte [esp + 0x258], 6
movlpd qword [esp + 0x25c], xmm0
movlpd qword [esp + 0x264], xmm0
movlpd qword [esp + 0x26c], xmm0
movlpd qword [esp + 0x274], xmm0
call fcn.10036180
add esp, 0xc
mov dword [esp + 0x950], 0
lea edi, [ebx + 8]
mov byte [esp + 0x954], 0
mov ecx, 0x252
lea esi, [esp + 0x10]
rep movsd dword es:[edi], dword [esi]
push ebx
push dword [0x10056a08]
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
je 0x1003444e
cmp byte [ebx + 0x244], 0
lea eax, [ebx + 8]
je 0x10034435
xor dl, dl
mov ecx, eax
pop edi
pop esi
pop ebx
add esp, 0x950
jmp fcn.10032cd0
xor eax, eax
pop edi
pop esi
pop ebx
add esp, 0x950
ret
mov ecx, str._jemalloc_:_Error_allocating_TSD_n
call fcn.10027c00
call fcn.10038150
mov ecx, str._jemalloc_:_Error_setting_TSD_n
call fcn.10027c00
call fcn.10038150
int3