Function at 0x1017a450
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 0x1017a474
cmp dword [ebp + 0x14], 0
je 0x1017a490
push 0
push 0xffffe89d
jmp 0x1017a47b
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 0x1017a4a4
push dword [esi + 0x168]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
mov eax, dword [esi + 0x1fc]
test eax, eax
je 0x1017a50f
push 0
push eax
push dword [esi + 0x1f8]
push esi
call fcn.10175700
add esp, 0x10
mov edi, eax
test eax, eax
js 0x1017a511
mov eax, dword [esi + 0x1fc]
sub eax, edi
test edi, edi
mov dword [esi + 0x1fc], eax
je 0x1017a4f7
test eax, eax
je 0x1017a4f7
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 0x1017a511
push 0
push 0xffffe892
call sym.nss3.dll_PR_SetError
add esp, 8
xor edi, edi
dec edi
jmp 0x1017a511
xor edi, edi
test byte [esi + 0x1d], 4
jne 0x1017a525
push dword [esi + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test edi, edi
js 0x1017a486
cmp dword [ebp + 0x10], 0
jle 0x1017a55a
cmp dword [0x101d4d40], 0
je 0x1017a7b7
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x1017a7a3
mov dword [esi + 0x17c], eax
xor ebx, ebx
cmp dword [esi + 0x38], 0
je 0x1017a57b
mov ecx, esi
mov edx, 2
call fcn.1017a300
test eax, eax
jne 0x1017a483
jmp 0x1017a705
test byte [esi + 0x1d], 4
jne 0x1017a58f
push dword [esi + 0x16c]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
cmp dword [esi + 0x60], 0
mov eax, 0
mov ebx, 0
mov dword [ebp - 0x14], 0
jne 0x1017a622
mov edx, dword [esi + 0x1c]
test edx, 0x4010000
je 0x1017a611
bt edx, 0xa
jb 0x1017a5c8
push dword [esi + 0x170]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi + 0x600]
xor ebx, ebx
dec ecx
cmp ecx, 2
setb bl
cmp dword [esi + 0x53c], 0
setne cl
or cl, bl
movzx eax, cl
xor ecx, ecx
cmp dword [esi + 0x450], 0
sete cl
bt edx, 0xa
mov dword [ebp - 0x14], ecx
jb 0x1017a61c
push dword [esi + 0x170]
mov dword [ebp - 0x10], eax
call sym.nss3.dll_PR_ExitMonitor
mov eax, dword [ebp - 0x10]
add esp, 4
jmp 0x1017a61c
xor ebx, ebx
xor eax, eax
mov dword [ebp - 0x14], 0
cmp dword [esi + 0x60], 0
je 0x1017a698
movzx ecx, word [esi + 0x58]
cmp ecx, 0x304
jb 0x1017a698
mov dword [ebp - 0x10], eax
push esi
call fcn.10188280
add esp, 4
test eax, eax
je 0x1017a643
mov eax, dword [ebp - 0x10]
jmp 0x1017a698
test byte [esi + 0x1d], 4
jne 0x1017a657
push dword [esi + 0x170]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
push 0x10
push 7
push esi
call fcn.10183ae0
add esp, 0xc
test byte [esi + 0x1d], 4
jne 0x1017a698
push dword [esi + 0x170]
mov dword [ebp - 0x10], eax
call sym.nss3.dll_PR_ExitMonitor
mov eax, dword [ebp - 0x10]
add esp, 4
jmp 0x1017a698
mov ecx, dword [esi + 0xcc]
test ecx, ecx
je 0x1017a69c
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov edi, eax
test eax, eax
je 0x1017a680
cmp dword [ebp - 0x14], 0
je 0x1017a6df
mov eax, dword [esi + 0x1c]
bt eax, 0xa
jb 0x1017a6bc
push dword [esi + 0x170]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x600]
xor ebx, ebx
dec ecx
cmp ecx, 2
setb bl
bt eax, 0xa
jb 0x1017a6df
push dword [esi + 0x170]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test byte [esi + 0x1d], 4
jne 0x1017a6f3
push dword [esi + 0x16c]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test edi, edi
js 0x1017a78d
cmp dword [esi + 0x38], 0
jne 0x1017a562
test ebx, ebx
je 0x1017a744
test byte [esi + 0x1d], 4
mov edi, dword [ebp + 0x10]
jne 0x1017a720
push dword [esi + 0x174]
call fcn.1013e010
add esp, 4
push edi
push 0x17
push esi
call fcn.10189860
add esp, 0xc
test byte [esi + 0x1d], 4
mov ebx, eax
jne 0x1017a747
push dword [esi + 0x174]
call fcn.1013e0d0
add esp, 4
jmp 0x1017a747
mov ebx, dword [ebp + 0x10]
test ebx, ebx
je 0x1017a79c
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x1017a46b
test byte [esi + 0x1d], 4
jne 0x1017a76a
push dword [esi + 0x168]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
push 0
push ebx
push edi
push esi
call fcn.10161070
add esp, 0x10
test byte [esi + 0x1d], 4
mov edi, eax
jne 0x1017a78d
push dword [esi + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
mov dword [esi + 0x17c], 0
jmp 0x1017a486
xor edi, edi
jmp 0x1017a486
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
jmp 0x1017a554
call sym.nss3.dll_PR_Init
jmp 0x1017a540