Function at 0x1010efa0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 8
mov esi, dword [ebp + 8]
test byte [esi + 0x180], 2
jne 0x1010efc4
cmp dword [ebp + 0x14], 0
je 0x1010efe0
push 0
push 0xffffe89d
jmp 0x1010efcb
push 0
push 0xffffe8d7
call sym.nss3.dll_PR_SetError
add esp, 8
xor edi, edi
dec edi
mov eax, edi
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret
test byte [esi + 0x1d], 4
jne 0x1010eff4
push dword [esi + 0x168]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
mov eax, dword [esi + 0x1fc]
test eax, eax
je 0x1010f061
push 0
push eax
push dword [esi + 0x1f8]
push esi
call fcn.10109fd0
add esp, 0x10
mov edi, eax
test eax, eax
js 0x1010f063
mov ecx, dword [esi + 0x1fc]
mov eax, ecx
sub eax, edi
mov dword [esi + 0x1fc], eax
test edi, edi
je 0x1010f049
cmp ecx, edi
je 0x1010f049
mov ecx, dword [esi + 0x1f8]
mov edx, edi
add edx, ecx
push eax
push edx
push ecx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov eax, dword [esi + 0x1fc]
test eax, eax
je 0x1010f063
push 0
push 0xffffe892
call sym.nss3.dll_PR_SetError
add esp, 8
xor edi, edi
dec edi
jmp 0x1010f063
xor edi, edi
test byte [esi + 0x1d], 4
jne 0x1010f077
push dword [esi + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test edi, edi
js 0x1010efd6
cmp dword [ebp + 0x10], 0
jle 0x1010f0ac
cmp dword [0x101f2f50], 0
je 0x1010f323
push dword [0x101f25a4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x1010f308
mov dword [esi + 0x17c], eax
xor ebx, ebx
cmp dword [esi + 0x38], 0
je 0x1010f0cd
mov ecx, esi
mov edx, 2
call fcn.1010ee50
test eax, eax
jne 0x1010efd3
jmp 0x1010f234
test byte [esi + 0x1d], 4
jne 0x1010f0e1
push dword [esi + 0x16c]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
xor ebx, ebx
cmp dword [esi + 0x60], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
jne 0x1010f170
mov eax, dword [esi + 0x1c]
test eax, 0x4010000
je 0x1010f157
bt eax, 0xa
jb 0x1010f118
push dword [esi + 0x170]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x60c]
dec ecx
cmp ecx, 2
setb cl
cmp dword [esi + 0x548], 0
setne bl
mov dword [ebp - 0x10], ecx
or bl, cl
cmp dword [esi + 0x450], 0
sete cl
mov dword [ebp - 0x14], ecx
bt eax, 0xa
jb 0x1010f167
push dword [esi + 0x170]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
jmp 0x1010f167
mov dword [ebp - 0x10], 0
xor ebx, ebx
mov dword [ebp - 0x14], 0
movzx ebx, bl
cmp dword [esi + 0x60], 0
je 0x1010f1bf
movzx eax, word [esi + 0x58]
cmp eax, 0x304
jb 0x1010f1bf
push esi
call fcn.1011d770
add esp, 4
test eax, eax
jne 0x1010f1bf
test byte [esi + 0x1d], 4
jne 0x1010f19c
push dword [esi + 0x170]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
push 0x10
push 7
push esi
call fcn.10118b70
add esp, 0xc
mov ebx, eax
test byte [esi + 0x1d], 4
jne 0x1010f1bf
push dword [esi + 0x170]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test ebx, ebx
je 0x1010f2d2
mov ebx, dword [ebp - 0x10]
cmp byte [ebp - 0x14], 0
je 0x1010f20b
mov eax, dword [esi + 0x1c]
bt eax, 0xa
jb 0x1010f1ea
push dword [esi + 0x170]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x60c]
dec ecx
cmp ecx, 2
setb bl
bt eax, 0xa
jb 0x1010f20b
push dword [esi + 0x170]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test byte [esi + 0x1d], 4
jne 0x1010f21f
push dword [esi + 0x16c]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test edi, edi
js 0x1010f2bc
movzx ebx, bl
cmp dword [esi + 0x38], 0
jne 0x1010f0b4
test ebx, ebx
je 0x1010f273
test byte [esi + 0x1d], 4
mov edi, dword [ebp + 0x10]
jne 0x1010f24f
push dword [esi + 0x174]
call fcn.100d3060
add esp, 4
push edi
push 0x17
push esi
call fcn.1011ec50
add esp, 0xc
mov ebx, eax
test byte [esi + 0x1d], 4
jne 0x1010f276
push dword [esi + 0x174]
call fcn.100d3140
add esp, 4
jmp 0x1010f276
mov ebx, dword [ebp + 0x10]
test ebx, ebx
je 0x1010f2cb
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x1010efbb
test byte [esi + 0x1d], 4
jne 0x1010f299
push dword [esi + 0x168]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
push 0
push ebx
push edi
push esi
call fcn.100f4d20
add esp, 0x10
mov edi, eax
test byte [esi + 0x1d], 4
jne 0x1010f2bc
push dword [esi + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
mov dword [esi + 0x17c], 0
jmp 0x1010efd6
xor edi, edi
jmp 0x1010efd6
mov ecx, dword [esi + 0xcc]
test ecx, ecx
mov ebx, dword [ebp - 0x10]
je 0x1010f1ca
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov edi, eax
mov ecx, dword [esi + 0xcc]
test ecx, ecx
je 0x1010f1ca
test edi, edi
je 0x1010f2e3
jmp 0x1010f1ca
sub esp, 0x10
movaps xmm0, xmmword [0x101af1a0]
movups xmmword [esp], xmm0
call fcn.1006d800
add esp, 0x10
jmp 0x1010f0a6
call fcn.100029d0
jmp 0x1010f092