Function at 0x100fffc0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x10
mov edi, dword [ebp + 8]
mov eax, dword [0x101ef014]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [edi + 0xc4]
call fcn.100f4c50
test eax, eax
je 0x1010003c
mov esi, dword [ebp + 0xc]
test byte [edi + 0x1d], 4
jne 0x100ffffc
push dword [edi + 0x170]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
add esi, 0xffffffec
cmp esi, 6
ja case.0x1010000b.23
mov ecx, dword [ebp + 0x1c]
jmp dword [esi*4 + 0x101c40fc]
mov eax, dword [edi + 0x450]
cmp eax, 6
je 0x10100145
cmp dword [edi + 0xa24], 1
jne 0x10100145
mov dword [ecx + 4], 0
xor esi, esi
jmp 0x101006cc
push 0
push 0xffffd053
call sym.nss3.dll_PR_SetError
add esp, 8
xor esi, esi
dec esi
jmp 0x101006e0
cmp dword [ecx + 4], 2
jne 0x1010016b
mov eax, dword [ecx]
mov bl, byte [eax]
mov bh, byte [eax + 1]
movzx esi, bh
mov dword [ecx + 4], 0
mov ecx, dword [edi + 0xf4]
test ecx, ecx
je 0x101000aa
mov eax, edi
lea edi, [ebp - 0x14]
mov byte [edi], bl
mov byte [edi + 1], bh
mov byte [ebp - 0x18], bh
mov edi, dword [eax]
mov dword [ebp - 0x1c], edi
mov edi, esi
mov esi, dword [eax + 0xf8]
call dword [section..00cfg]
lea eax, [ebp - 0x14]
push eax
push esi
mov esi, edi
push dword [ebp - 0x1c]
mov bh, byte [ebp - 0x18]
call ecx
add esp, 0xc
cmp esi, 0x45
jg 0x101003ac
lea eax, [esi - 0x14]
cmp eax, 0x28
mov edi, dword [ebp + 8]
ja case.default.0x101000c2
jmp dword [eax*4 + 0x101c4118]
mov ecx, 0xffffd010
jmp 0x1010067c
cmp dword [edi + 0xa24], 1
jne 0x101001ad
movzx eax, word [ebp + 0x10]
movzx eax, ax
push ecx
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push eax
push edi
call fcn.100f0bc0
add esp, 0x14
jmp 0x1010011c
cmp dword [edi + 0xa24], 1
jne case.0x1010000b.23
push edi
mov esi, ecx
call fcn.1011fa40
add esp, 4
test eax, eax
je case.0x1010000b.23
push esi
push edi
call fcn.100f08a0
add esp, 8
mov esi, eax
jmp 0x101006cc
cmp dword [edi + 0xa24], 1
je 0x10100139
push 0xa
push 2
push edi
call fcn.100f2eb0
add esp, 0xc
push 0
push 0xffffd037
jmp 0x101006c1
cmp dword [edi + 0x4a8], 0
je 0x1010032a
push 0xa
push 2
push edi
call fcn.100f2eb0
add esp, 0xc
push 0
push 0xffffd033
jmp 0x101006c1
movzx eax, word [edi + 0x58]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2 + 0x2f]
push eax
push 2
push edi
call fcn.100f2eb0
add esp, 0xc
xor esi, esi
xor eax, eax
cmp dword [edi + 0x60], esi
sete al
or eax, 0xffffd006
push esi
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
push esi
push 0xffffd026
jmp 0x101006c1
mov ebx, dword [ecx + 4]
test ebx, ebx
je 0x101003d1
mov esi, dword [ecx]
lea eax, [edi + 0x498]
mov dword [ebp - 0x1c], eax
mov ecx, dword [edi + 0x4a8]
cmp ecx, 4
jae 0x1010021e
movzx edx, byte [esi]
inc esi
dec ebx
lea eax, [ecx + 1]
mov dword [edi + 0x4a8], eax
test ecx, ecx
je 0x10100309
mov dword [ebp - 0x18], esi
mov esi, dword [edi + 0x4b0]
shl esi, 8
or esi, edx
mov dword [edi + 0x4b0], esi
cmp ecx, 3
jb 0x10100216
cmp esi, 0x20000
jae 0x101004c7
mov eax, 4
test esi, esi
je 0x10100321
mov esi, dword [ebp - 0x18]
jmp 0x10100312
mov dword [ebp - 0x18], esi
mov eax, edi
mov edi, dword [edi + 0x4b0]
mov esi, dword [eax + 0x49c]
test esi, esi
jne 0x10100274
cmp ebx, edi
jb 0x10100274
sete al
movzx eax, al
push eax
push edi
mov esi, dword [ebp - 0x18]
push esi
mov edi, dword [ebp + 8]
push edi
call fcn.100fbd60
add esp, 0x10
mov edx, edi
mov edi, dword [edi + 0x4b0]
sub ebx, edi
xor ecx, ecx
mov dword [edx + 0x4b0], ecx
mov dword [edx + 0x4a8], ecx
test eax, eax
je 0x10100300
jmp 0x1010050c
push edi
push dword [ebp - 0x1c]
call fcn.1010a300
add esp, 8
test eax, eax
jne 0x1010050c
sub edi, esi
cmp ebx, edi
cmovb edi, ebx
mov esi, ebx
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x498]
add eax, dword [ebx + 0x49c]
push edi
push dword [ebp - 0x18]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebx + 0x49c]
add eax, edi
mov dword [ebx + 0x49c], eax
cmp eax, dword [ebx + 0x4b0]
jne 0x1010044d
xor ecx, ecx
sub esi, edi
sete cl
push ecx
push eax
push dword [ebx + 0x498]
push ebx
call fcn.100fbd60
add esp, 0x10
xor ecx, ecx
mov dword [ebx + 0x49c], ecx
mov dword [ebx + 0x4b0], ecx
mov dword [ebx + 0x4a8], ecx
test eax, eax
mov ebx, esi
mov esi, dword [ebp - 0x18]
jne 0x1010050c
add esi, edi
xor eax, eax
mov edi, dword [ebp + 8]
jmp 0x10100312
mov dword [edi + 0x4ac], edx
xor eax, eax
inc eax
mov ecx, eax
test ebx, ebx
jne 0x101001c9
jmp 0x101003f1
mov eax, edi
xor edi, edi
jmp 0x10100229
cmp dword [ecx + 4], 1
jne 0x101003da
mov edx, ecx
mov ecx, dword [ecx]
cmp byte [ecx], 1
jne 0x1010041c
mov dword [edx + 4], 0
cmp eax, 6
jne 0x1010045b
test byte [edi + 0x1d], 4
jne 0x10100365
push dword [edi + 0x174]
call fcn.100d31d0
add esp, 4
push dword [edi + 0x3b0]
call fcn.10118a60
add esp, 4
mov eax, dword [edi + 0x3b4]
mov dword [edi + 0x3b0], eax
mov dword [edi + 0x3b4], 0
test byte [edi + 0x1d], 4
jne 0x1010039d
push dword [edi + 0x174]
call fcn.100d32c0
add esp, 4
mov dword [edi + 0x450], 7
jmp 0x10100035
cmp esi, 0x55
mov edi, dword [ebp + 8]
jle 0x101003f7
lea eax, [esi - 0x64]
cmp eax, 0x15
ja case.default.0x101003c0
jmp dword [eax*4 + 0x101c41bc]
mov ecx, 0xffffd066
jmp 0x1010067c
xor ebx, ebx
xor esi, esi
jmp 0x1010053c
movzx eax, word [edi + 0x58]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2]
add eax, 0x2f
push eax
jmp 0x1010041e
xor ebx, ebx
xor esi, esi
jmp 0x10100453
cmp esi, 0x46
je 0x10100544
cmp esi, 0x47
je 0x1010054e
cmp esi, 0x50
jne case.0x101003c0.101
mov ecx, 0xffffd064
jmp 0x1010067c
push 0x2f
push 2
push edi
call fcn.100f2eb0
add esp, 0xc
xor esi, esi
xor eax, eax
cmp dword [edi + 0x60], esi
sete al
or eax, 0xffffd006
push esi
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
push esi
push 0xffffd025
jmp 0x101006c1
xor esi, esi
mov edi, ebx
xor ebx, ebx
mov ecx, dword [ebp + 0x1c]
jmp 0x1010053c
cmp eax, 1
je 0x1010064c
cmp eax, 8
jne 0x10100152
movzx eax, word [edi + 0x58]
cmp eax, 0x304
jb 0x10100152
xor esi, esi
cmp dword [edi + 0x620], 0
jne 0x101006cc
jmp 0x10100152
test esi, esi
je 0x101005ff
mov ecx, 0xffffd03b
cmp esi, 0xa
je 0x1010067c
jmp case.0x101003c0.101
cmp esi, 0x56
je 0x10100677
cmp esi, 0x5a
jne case.0x101003c0.101
mov ecx, 0xffffd065
jmp 0x1010067c
movzx eax, word [edi + 0x58]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2 + 0x2f]
push eax
push 2
push edi
call fcn.100f2eb0
add esp, 0xc
xor esi, esi
xor eax, eax
cmp dword [edi + 0x60], esi
sete al
or eax, 0xffffd006
push esi
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
push esi
push 0xffffd027
call sym.nss3.dll_PR_SetError
add esp, 8
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + 4]
sub eax, ebx
jne 0x10100521
xor esi, esi
dec esi
mov edi, dword [ebp + 8]
jmp 0x101006cc
mov ecx, dword [ebp + 0x1c]
mov ecx, dword [ecx]
add eax, ecx
push ebx
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov ecx, dword [ebp + 0x1c]
add esp, 0xc
xor esi, esi
dec esi
mov edi, dword [ebp + 8]
mov dword [ecx + 4], ebx
jmp 0x101006cc
mov ecx, 0xffffd062
jmp 0x1010067c
mov ecx, 0xffffd063
jmp 0x1010067c
mov ecx, 0xffffd039
jmp 0x1010067c
mov ecx, 0xffffd05b
jmp 0x1010067c
mov ecx, 0xffffd05c
jmp 0x1010067c
mov ecx, 0xffffd03c
jmp 0x1010067c
mov ecx, 0xffffd03d
jmp 0x1010067c
mov ecx, 0xffffd003
jmp 0x1010067c
mov ecx, 0xffffd011
jmp 0x1010067c
mov ecx, 0xffffd03f
jmp 0x1010067c
mov ecx, 0xffffd012
jmp 0x1010067c
mov ecx, 0xffffd013
jmp 0x1010067c
mov ecx, 0xffffd040
jmp 0x1010067c
mov ecx, 0xffffd03e
jmp 0x1010067c
mov ecx, 0xffffd05d
jmp 0x1010067c
mov ecx, 0xffffd05e
jmp 0x1010067c
mov ecx, 0xffffd05f
jmp 0x1010067c
mov ecx, 0xffffd060
jmp 0x1010067c
mov ecx, 0xffffd061
jmp 0x1010067c
mov dword [edi + 0x48], 1
mov ecx, 0xffffd03a
jmp 0x1010067c
mov ecx, 0xffffd08f
jmp 0x1010067c
mov ecx, 0xffffd068
jmp 0x1010067c
mov ecx, 0xffffd069
jmp 0x1010067c
mov ecx, 0xffffd06a
jmp 0x1010067c
mov ecx, 0xffffd06b
jmp 0x1010067c
mov ecx, 0xffffd06c
jmp 0x1010067c
mov ecx, 0xffffd0b5
jmp 0x1010067c
mov ecx, 0xffffd082
jmp 0x1010067c
mov ecx, 0xffffd0bf
jmp 0x1010067c
movzx eax, word [edi + 0x26]
cmp eax, 0x304
jb 0x10100152
cmp dword [edi + 0x624], 0
jne 0x10100152
mov dword [edi + 0x624], 1
jmp 0x10100035
mov ecx, 0xffffd083
movzx eax, word [edi + 0x58]
cmp eax, 0x304
jb 0x10100699
cmp dword [edi + 0x450], 8
je 0x10100699
cmp esi, 0x5a
je 0x10100699
test esi, esi
jne 0x1010069e
cmp bl, 2
jne 0x101006f4
push edi
mov esi, ecx
call fcn.1010d0e0
add esp, 4
cmp bh, 0x28
mov eax, 0xffffd002
cmovne eax, esi
cmp dword [edi + 0x450], 8
cmovne eax, esi
push 0
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
xor esi, esi
dec esi
test byte [edi + 0x1d], 4
jne 0x101006e0
push dword [edi + 0x170]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10156ff0
mov eax, esi
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
xor esi, esi
cmp bh, 0x29
jne 0x101006cc
cmp dword [edi + 0x450], 3
jne 0x101006cc
mov dword [edi + 0x450], 4
push edi
call fcn.100f5020
add esp, 4
jmp 0x1010011c