Function at 0x100ea490
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x20
mov dword [ebp - 0x10], edx
cmp dword [ecx + 0x1c], 0
je 0x100ea606
mov ebx, ecx
mov eax, dword [ecx]
xor ecx, ecx
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], ecx
mov dword [eax + 0x28], ecx
cmp dword [ebx + 0x2c], ecx
je 0x100ea59d
mov esi, dword [ebp - 0x10]
push esi
call sym.nss3.dll_PORT_ArenaMark_Util
add esp, 4
mov dword [ebp - 0x18], eax
mov eax, dword [ebx + 0x1c]
lea eax, [eax*4 + 4]
push eax
push esi
call sym.nss3.dll_PORT_ArenaAlloc_Util
add esp, 8
mov edi, eax
mov eax, dword [ebx + 0x1c]
shl eax, 2
lea eax, [eax + eax*2]
push eax
push esi
call sym.nss3.dll_PORT_ArenaAlloc_Util
add esp, 8
mov dword [ebp - 0x1c], edi
test edi, edi
je 0x100ea5ca
test eax, eax
je 0x100ea5ca
cmp dword [ebx + 0x1c], 0
jle 0x100ea5f5
add eax, 8
xor esi, esi
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x14], eax
mov eax, dword [ebx + 0x20]
mov ecx, dword [ebx + 0x24]
mov eax, dword [eax + esi*4]
mov dword [ebp - 0x2c], eax
mov edi, dword [ecx + esi*4]
push dword [edi]
push dword [ebp - 0x10]
call sym.nss3.dll_PORT_ArenaAlloc_Util
add esp, 8
mov ecx, ebx
mov ebx, eax
mov eax, dword [ebp - 0x14]
mov dword [eax - 4], ebx
test ebx, ebx
je 0x100ea60b
lea edx, [eax - 8]
mov dword [ebp - 0x28], edx
mov edx, dword [edi]
mov dword [ebp - 0x24], edx
mov dword [eax], edx
mov ecx, dword [edi + 0x18]
call dword [section..00cfg]
push dword [ebp - 0x24]
push dword [ebp - 0x14]
push ebx
mov ebx, dword [ebp - 0x2c]
push ebx
call ecx
add esp, 0x10
mov ecx, dword [edi + 0xc]
call dword [section..00cfg]
push 1
push ebx
call ecx
add esp, 8
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x28]
mov dword [eax + esi*4], ecx
mov eax, dword [ebp - 0x14]
inc esi
add eax, 0xc
mov ebx, dword [ebp - 0x20]
cmp esi, dword [ebx + 0x1c]
jl 0x100ea51b
jmp 0x100ea5f7
cmp dword [ebx + 0x1c], 0
jle 0x100ea606
xor esi, esi
mov eax, dword [ebx + 0x20]
mov ecx, dword [ebx + 0x24]
mov edi, dword [eax + esi*4]
mov eax, dword [ecx + esi*4]
mov ecx, dword [eax + 0xc]
call dword [section..00cfg]
push 1
push edi
call ecx
add esp, 8
inc esi
cmp esi, dword [ebx + 0x1c]
jl 0x100ea5a5
jmp 0x100ea606
cmp dword [0x101f4f80], 0
je 0x100ea673
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x100ea643
mov eax, dword [eax + 0x28]
mov dword [ebx + 0x34], eax
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
jmp 0x100ea634
xor esi, esi
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx + esi*4], 0
mov dword [eax], ecx
add esp, 0x20
jmp 0x100ea63e
mov esi, ecx
cmp dword [0x101f4f80], 0
je 0x100ea67d
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
mov edi, dword [ebp - 0x18]
je 0x100ea65b
mov eax, dword [eax + 0x28]
mov dword [esi + 0x34], eax
mov ecx, dword [ebp - 0x10]
mov edx, edi
push 0
call fcn.100dd3f0
add esp, 0x24
pop esi
pop edi
pop ebx
pop ebp
ret
sub esp, 0x10
movaps xmm0, xmmword [0x101b11e0]
movups xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100ea5e7
sub esp, 0x10
movaps xmm0, xmmword [0x101b11e0]
movups xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100ea629
call fcn.1001b2e0
jmp 0x100ea5d7
call fcn.1001b2e0
jmp 0x100ea616