Function at 0x10103be0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1c8
mov ecx, dword [ebp + 8]
mov eax, dword [0x101ef014]
xor eax, ebp
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1bc], eax
mov dword [ebp - 0x1b4], eax
mov eax, dword [ecx + 0x3b4]
movzx esi, word [eax + 0x10]
lea ebx, [ebp + 0x10]
lea edx, [ebp + 0xc]
lea eax, [ebp - 0x19f]
push ebx
push edx
push 3
push eax
push ecx
call fcn.100f5900
add esp, 0x14
mov edi, 0xffffd01f
test eax, eax
jne 0x10103d77
mov word [ebp - 0x1c0], si
mov ecx, 0x28
mov esi, 0xffffe08d
cmp byte [ebp - 0x19f], 3
jne 0x10103d67
movzx eax, word [ebp - 0x19e]
rol ax, 8
movzx eax, ax
push eax
call fcn.10113560
add esp, 4
test eax, eax
je 0x10103d62
cmp dword [eax + 8], 4
jne 0x10103d62
mov dword [ebp - 0x1cc], eax
lea eax, [ebp - 0x1bc]
push ebx
lea ecx, [ebp + 0xc]
push ecx
push 1
push eax
push dword [ebp + 8]
call fcn.100f5a30
add esp, 0x14
test eax, eax
jne 0x10103d77
cmp dword [ebp - 0x1b4], 0
mov ecx, 0x28
je 0x10103d9c
mov eax, dword [ebp - 0x1cc]
cmp dword [eax], 0x1d
je 0x10103ceb
mov eax, dword [ebp - 0x1b8]
mov esi, 0xffffe08e
cmp byte [eax], 4
jne 0x10103d67
mov esi, dword [ebp + 8]
mov eax, dword [esi + 0x3b4]
movzx eax, word [eax + 0x10]
cmp eax, 0x303
jne 0x10103da8
lea eax, [ebp - 0x1b0]
push eax
push ebx
lea eax, [ebp + 0xc]
push eax
push esi
call fcn.100f60a0
add esp, 0x10
test eax, eax
jne 0x10103d3c
mov eax, 0xd4
add eax, dword [esi + 0x78]
push eax
push dword [ebp - 0x1b0]
push esi
call fcn.100f5ea0
add esp, 0xc
test eax, eax
je 0x10103e5f
cmp dword [0x101f2f50], 0
je 0x1010404d
push dword [0x101f25a4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x1010401a
mov esi, dword [eax + 0x28]
jmp 0x10103da1
mov ecx, 0x28
push ecx
push 2
push dword [ebp + 8]
call fcn.100f2eb0
add esp, 0xc
mov edi, esi
push 0
push edi
call sym.nss3.dll_PR_SetError
add esp, 8
xor esi, esi
dec esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10156ff0
mov eax, esi
add esp, 0x1c8
pop esi
pop edi
pop ebx
pop ebp
ret
mov esi, 0xffffd01f
mov ecx, 0x2f
jmp 0x10103d67
mov dword [ebp - 0x1b0], 0
mov dword [ebp - 0x1c8], 0
lea ecx, [ebp - 0x1ac]
push ebx
lea eax, [ebp + 0xc]
push eax
push 2
push ecx
push esi
call fcn.100f5a30
add esp, 0x14
test eax, eax
jne 0x10103d77
cmp dword [ebp + 0x10], 0
je 0x10103dfe
movzx eax, word [ebp - 0x1c0]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea ecx, [ecx + ecx*2]
add ecx, 0x2f
mov esi, 0xffffd01f
jmp 0x10103d67
movzx eax, word [ebp - 0x1c0]
cmp eax, 0x301
mov eax, 0x33
mov ecx, 0x28
cmovae ecx, eax
mov dword [ebp - 0x1c0], ecx
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0x1d0], eax
mov ebx, dword [ebp - 0x1b4]
lea eax, [ebx + 0x44]
lea edi, [ebp - 0x153]
cmp eax, 0x144
mov dword [ebp - 0x1d4], eax
jae 0x10103e78
lea eax, [ebp - 0x10f]
mov dword [ebp - 0x1c4], eax
lea ecx, [ebp - 0x113]
lea edx, [ebp - 0x133]
jmp 0x10103e9c
push dword [ebp - 0x1b0]
call fcn.100f5b00
add esp, 4
mov dword [ebp - 0x1c8], eax
jmp 0x10103dbc
push eax
call sym.nss3.dll_PORT_Alloc_Util
add esp, 4
test eax, eax
je 0x10103f42
mov edi, eax
add eax, 0x44
mov dword [ebp - 0x1c4], eax
lea ecx, [edi + 0x40]
mov edx, edi
add edx, 0x20
lea eax, [esi + 0x410]
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
lea eax, [esi + 0x3f0]
movups xmmword [edi + 0x10], xmm1
movups xmmword [edi], xmm0
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movups xmmword [edx + 0x10], xmm1
movups xmmword [edx], xmm0
mov al, byte [ebp - 0x19d]
mov byte [ecx + 2], al
movzx eax, word [ebp - 0x19f]
mov word [ecx], ax
mov byte [edi + 0x43], bl
push ebx
push dword [ebp - 0x1d0]
push dword [ebp - 0x1c4]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea ebx, [ebp - 0x19c]
push ebx
push dword [ebp - 0x1d4]
push edi
push dword [ebp - 0x1c8]
call fcn.100f3790
add esp, 0x10
mov esi, eax
lea eax, [ebp - 0x153]
cmp edi, eax
je 0x10103f21
push edi
call dword [sym.imp.mozglue.dll_free]
add esp, 4
test esi, esi
lea eax, [ebp - 0x1ac]
jne 0x10103f42
push eax
push ebx
push dword [ebp - 0x1b0]
push dword [ebp + 8]
call fcn.100f3730
add esp, 0x10
test eax, eax
je 0x10103f5c
push 0xffffd044
call fcn.1010aec0
add esp, 4
mov esi, eax
mov ecx, dword [ebp - 0x1c0]
jmp 0x10103d67
push 0x800
call sym.nss3.dll_PORT_NewArena_Util
add esp, 4
test eax, eax
je 0x10103fe8
mov esi, eax
push 0xac
push eax
call sym.nss3.dll_PORT_ArenaAlloc_Util
add esp, 8
test eax, eax
je 0x10103ff2
mov edi, eax
add eax, 4
push 0xa8
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [edi], esi
push dword [ebp - 0x1cc]
push dword [ebp - 0x1b4]
push dword [ebp - 0x1b8]
push edi
call fcn.10103aa0
add esp, 0x10
test eax, eax
je 0x10104007
cmp dword [0x101f2f50], 0
je 0x10104057
push dword [0x101f25a4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10104035
mov edi, dword [eax + 0x28]
push 0x28
push 2
push dword [ebp + 8]
call fcn.100f2eb0
add esp, 0xc
jmp 0x10103ff7
mov edi, 0xffffe013
jmp 0x10103d77
mov edi, 0xffffe013
push 0
push esi
call sym.nss3.dll_PORT_FreeArena_Util
add esp, 8
jmp 0x10103d77
xor esi, esi
mov dword [edi + 8], esi
mov dword [edi + 0xc], esi
mov eax, dword [ebp + 8]
mov dword [eax + 0x7c], edi
jmp 0x10103d85
sub esp, 0x10
movaps xmm0, xmmword [0x101af1a0]
movups xmmword [esp], xmm0
call fcn.1006d800
add esp, 0x10
jmp 0x10103d5d
sub esp, 0x10
movaps xmm0, xmmword [0x101af1a0]
movups xmmword [esp], xmm0
call fcn.1006d800
add esp, 0x10
jmp 0x10103fd4
call fcn.100029d0
jmp 0x10103d49
call fcn.100029d0
jmp 0x10103fc4