Function at 0x10110560
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 0x10110584
cmp dword [ebp + 0x14], 0
je 0x101105a0
push 0
push 0xffffe89d
jmp 0x1011058b
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 0x101105b4
push dword [esi + 0x168]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
mov eax, dword [esi + 0x1fc]
test eax, eax
je 0x10110621
push 0
push eax
push dword [esi + 0x1f8]
push esi
call fcn.1010b590
add esp, 0x10
mov edi, eax
test eax, eax
js 0x10110623
mov ecx, dword [esi + 0x1fc]
mov eax, ecx
sub eax, edi
mov dword [esi + 0x1fc], eax
test edi, edi
je 0x10110609
cmp ecx, edi
je 0x10110609
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 0x10110623
push 0
push 0xffffe892
call sym.nss3.dll_PR_SetError
add esp, 8
xor edi, edi
dec edi
jmp 0x10110623
xor edi, edi
test byte [esi + 0x1d], 4
jne 0x10110637
push dword [esi + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test edi, edi
js 0x10110596
cmp dword [ebp + 0x10], 0
jle 0x1011066c
cmp dword [0x101f4f80], 0
je 0x101108e3
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x101108c8
mov dword [esi + 0x17c], eax
xor ebx, ebx
cmp dword [esi + 0x38], 0
je 0x1011068d
mov ecx, esi
mov edx, 2
call fcn.10110410
test eax, eax
jne 0x10110593
jmp 0x101107f4
test byte [esi + 0x1d], 4
jne 0x101106a1
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 0x10110730
mov eax, dword [esi + 0x1c]
test eax, 0x4010000
je 0x10110717
bt eax, 0xa
jb 0x101106d8
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 0x10110727
push dword [esi + 0x170]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
jmp 0x10110727
mov dword [ebp - 0x10], 0
xor ebx, ebx
mov dword [ebp - 0x14], 0
movzx ebx, bl
cmp dword [esi + 0x60], 0
je 0x1011077f
movzx eax, word [esi + 0x58]
cmp eax, 0x304
jb 0x1011077f
push esi
call fcn.1011ed30
add esp, 4
test eax, eax
jne 0x1011077f
test byte [esi + 0x1d], 4
jne 0x1011075c
push dword [esi + 0x170]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
push 0x10
push 7
push esi
call fcn.1011a130
add esp, 0xc
mov ebx, eax
test byte [esi + 0x1d], 4
jne 0x1011077f
push dword [esi + 0x170]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test ebx, ebx
je 0x10110892
mov ebx, dword [ebp - 0x10]
cmp byte [ebp - 0x14], 0
je 0x101107cb
mov eax, dword [esi + 0x1c]
bt eax, 0xa
jb 0x101107aa
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 0x101107cb
push dword [esi + 0x170]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test byte [esi + 0x1d], 4
jne 0x101107df
push dword [esi + 0x16c]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test edi, edi
js 0x1011087c
movzx ebx, bl
cmp dword [esi + 0x38], 0
jne 0x10110674
test ebx, ebx
je 0x10110833
test byte [esi + 0x1d], 4
mov edi, dword [ebp + 0x10]
jne 0x1011080f
push dword [esi + 0x174]
call fcn.100d4620
add esp, 4
push edi
push 0x17
push esi
call fcn.10120210
add esp, 0xc
mov ebx, eax
test byte [esi + 0x1d], 4
jne 0x10110836
push dword [esi + 0x174]
call fcn.100d4700
add esp, 4
jmp 0x10110836
mov ebx, dword [ebp + 0x10]
test ebx, ebx
je 0x1011088b
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x1011057b
test byte [esi + 0x1d], 4
jne 0x10110859
push dword [esi + 0x168]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
push 0
push ebx
push edi
push esi
call fcn.100f62e0
add esp, 0x10
mov edi, eax
test byte [esi + 0x1d], 4
jne 0x1011087c
push dword [esi + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
mov dword [esi + 0x17c], 0
jmp 0x10110596
xor edi, edi
jmp 0x10110596
mov ecx, dword [esi + 0xcc]
test ecx, ecx
mov ebx, dword [ebp - 0x10]
je 0x1011078a
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov edi, eax
mov ecx, dword [esi + 0xcc]
test ecx, ecx
je 0x1011078a
test edi, edi
je 0x101108a3
jmp 0x1011078a
sub esp, 0x10
movaps xmm0, xmmword [0x101b11e0]
movups xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x10110666
call fcn.1001b2e0
jmp 0x10110652