Function at 0x100d2530
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x14
mov ebx, dword [0x101def10]
test ebx, ebx
je 0x100d25cf
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def18]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d25bb
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def18]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d25b0
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d25a7
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2547
jmp 0x100d25cf
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d2569
mov esi, dword [0x101def18]
test esi, esi
je 0x100d25f1
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def18], eax
mov dword [0x101def10], eax
mov ebx, dword [0x101def1c]
test ebx, ebx
je 0x100d2693
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def24]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d267f
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def24]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2674
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d266b
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d260b
jmp 0x100d2693
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d262d
mov esi, dword [0x101def24]
test esi, esi
je 0x100d26b5
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def24], eax
mov dword [0x101def1c], eax
mov ebx, dword [0x101def28]
test ebx, ebx
je 0x100d2757
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def30]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d2743
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def30]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2738
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d272f
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d26cf
jmp 0x100d2757
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d26f1
mov esi, dword [0x101def30]
test esi, esi
je 0x100d2779
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def30], eax
mov dword [0x101def28], eax
mov ebx, dword [0x101def34]
test ebx, ebx
je 0x100d281b
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def3c]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d2807
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def3c]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d27fc
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d27f3
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2793
jmp 0x100d281b
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d27b5
mov esi, dword [0x101def3c]
test esi, esi
je 0x100d283d
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def3c], eax
mov dword [0x101def34], eax
mov ebx, dword [0x101def40]
test ebx, ebx
je 0x100d28df
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def48]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d28cb
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def48]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d28c0
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d28b7
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2857
jmp 0x100d28df
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d2879
mov esi, dword [0x101def48]
test esi, esi
je 0x100d2901
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def48], eax
mov dword [0x101def40], eax
mov ebx, dword [0x101def4c]
test ebx, ebx
je 0x100d29a3
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def54]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d298f
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def54]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2984
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d297b
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d291b
jmp 0x100d29a3
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d293d
mov esi, dword [0x101def54]
test esi, esi
je 0x100d29c5
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def54], eax
mov dword [0x101def4c], eax
mov ebx, dword [0x101def58]
test ebx, ebx
je 0x100d2a67
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def60]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d2a53
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def60]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2a48
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d2a3f
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d29df
jmp 0x100d2a67
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d2a01
mov esi, dword [0x101def60]
test esi, esi
je 0x100d2a89
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def60], eax
mov dword [0x101def58], eax
mov ebx, dword [0x101def64]
test ebx, ebx
je 0x100d2b2b
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def6c]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d2b17
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def6c]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2b0c
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d2b03
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2aa3
jmp 0x100d2b2b
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d2ac5
mov esi, dword [0x101def6c]
test esi, esi
je 0x100d2b4d
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def6c], eax
mov dword [0x101def64], eax
mov ebx, dword [0x101def70]
test ebx, ebx
je 0x100d2bef
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def78]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d2bdb
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def78]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2bd0
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d2bc7
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2b67
jmp 0x100d2bef
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d2b89
mov esi, dword [0x101def78]
test esi, esi
je 0x100d2c11
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def78], eax
mov dword [0x101def70], eax
mov ebx, dword [0x101def7c]
test ebx, ebx
je 0x100d2cb3
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def84]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d2c9f
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def84]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2c94
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d2c8b
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2c2b
jmp 0x100d2cb3
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d2c4d
mov esi, dword [0x101def84]
test esi, esi
je 0x100d2cd5
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def84], eax
mov dword [0x101def7c], eax
mov ebx, dword [0x101def88]
test ebx, ebx
je 0x100d2d77
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def90]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d2d63
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def90]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2d58
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d2d4f
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2cef
jmp 0x100d2d77
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d2d11
mov esi, dword [0x101def90]
test esi, esi
je 0x100d2d99
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def90], eax
mov dword [0x101def88], eax
mov ebx, dword [0x101def94]
test ebx, ebx
je 0x100d2e3b
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101def9c]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d2e27
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101def9c]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2e1c
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d2e13
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2db3
jmp 0x100d2e3b
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d2dd5
mov esi, dword [0x101def9c]
test esi, esi
je 0x100d2e5d
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101def9c], eax
mov dword [0x101def94], eax
mov ebx, dword [0x101defa0]
test ebx, ebx
je 0x100d2eff
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101defa8]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d2eeb
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101defa8]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2ee0
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d2ed7
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2e77
jmp 0x100d2eff
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d2e99
mov esi, dword [0x101defa8]
test esi, esi
je 0x100d2f21
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101defa8], eax
mov dword [0x101defa0], eax
mov ebx, dword [0x101defac]
test ebx, ebx
je 0x100d2fc3
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101defb4]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d2faf
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101defb4]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d2fa4
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d2f9b
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2f3b
jmp 0x100d2fc3
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d2f5d
mov esi, dword [0x101defb4]
test esi, esi
je 0x100d2fe5
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101defb4], eax
mov dword [0x101defac], eax
mov ebx, dword [0x101defb8]
test ebx, ebx
je 0x100d3087
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101defc0]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d3073
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101defc0]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d3068
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d305f
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d2fff
jmp 0x100d3087
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d3021
mov esi, dword [0x101defc0]
test esi, esi
je 0x100d30a9
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101defc0], eax
mov dword [0x101defb8], eax
mov ebx, dword [0x101defc4]
test ebx, ebx
je 0x100d314b
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101defcc]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d3137
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101defcc]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d312c
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d3123
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d30c3
jmp 0x100d314b
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d30e5
mov esi, dword [0x101defcc]
test esi, esi
je 0x100d316d
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101defcc], eax
mov dword [0x101defc4], eax
mov ebx, dword [0x101defd0]
test ebx, ebx
je 0x100d320f
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101defd8]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d31fb
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101defd8]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d31f0
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d31e7
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d3187
jmp 0x100d320f
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d31a9
mov esi, dword [0x101defd8]
test esi, esi
je 0x100d3231
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101defd8], eax
mov dword [0x101defd0], eax
mov ebx, dword [0x101defdc]
test ebx, ebx
je 0x100d32d3
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101defe4]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d32bf
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101defe4]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d32b4
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d32ab
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d324b
jmp 0x100d32d3
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d326d
mov esi, dword [0x101defe4]
test esi, esi
je 0x100d32f5
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101defe4], eax
mov dword [0x101defdc], eax
mov ebx, dword [0x101defe8]
test ebx, ebx
je 0x100d3397
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101deff0]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d3383
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101deff0]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d3378
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d336f
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d330f
jmp 0x100d3397
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d3331
mov esi, dword [0x101deff0]
test esi, esi
je 0x100d33b9
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101deff0], eax
mov dword [0x101defe8], eax
mov ebx, dword [0x101deff4]
test ebx, ebx
je 0x100d345b
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov edi, dword [0x101deffc]
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov esi, eax
test eax, eax
je 0x100d3447
lea eax, [edi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [edi + 8], esi
mov esi, dword [ebx + 0xc]
lea eax, [esi - 1]
mov dword [ebx + 0xc], eax
mov eax, dword [0x101deffc]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
cmp esi, 1
jne 0x100d343c
mov eax, dword [ebx + 8]
lock dec dword [eax + 0x48]
jne 0x100d3433
mov dword [esp], eax
call fcn.100d1c70
mov dword [esp], ebx
call dword [sym.imp.mozglue.dll_free]
mov eax, dword [ebp - 0x10]
mov ebx, eax
test eax, eax
jne 0x100d33d3
jmp 0x100d345b
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x100d33f5
mov esi, dword [0x101deffc]
test esi, esi
je 0x100d347d
lea eax, [esi + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.mozglue.dll_free]
xor eax, eax
mov dword [0x101deffc], eax
mov dword [0x101deff4], eax
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret