Function at 0x100e5250
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x24
mov edi, ecx
mov eax, dword [0x101f1014]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ecx + 0x28], 1
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x100e52fc
mov ebx, edx
xor ecx, ecx
mov dword [edi + 0x24], ecx
mov dword [edi + 0x30], ecx
mov dword [edi + 0x20], ecx
mov dword [edi + 0x38], ecx
add eax, 0xc
push ecx
push ecx
push eax
call fcn.1007bc60
add esp, 0xc
test eax, eax
je 0x100e5311
mov esi, eax
mov dword [ebp - 0x18], 0
cmp dword [edi + 0x2c], 0
je 0x100e5346
test ebx, ebx
je 0x100e534f
mov ecx, edi
call fcn.100e3770
test eax, eax
mov dword [ebp - 0x24], esi
jne 0x100e5370
mov ecx, ebx
call fcn.100e3770
mov esi, eax
xor eax, eax
test esi, esi
je 0x100e536d
mov ecx, edi
mov edx, esi
call fcn.100e3910
test eax, eax
je 0x100e536b
push 1
push esi
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
mov esi, dword [ebp - 0x24]
xor eax, eax
jmp 0x100e5370
xor eax, eax
inc eax
mov dword [edi + 0x24], eax
mov dword [edi + 0x20], eax
mov dword [edi + 0x38], 0xffffe052
jmp 0x100e56e7
xor eax, eax
inc eax
mov dword [edi + 0x24], eax
mov dword [edi + 0x20], eax
cmp dword [0x101f4f80], 0
je 0x100e55c9
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x100e55ae
mov eax, dword [eax + 0x28]
mov dword [edi + 0x38], eax
jmp 0x100e56e7
push 0
push 0xffffe005
jmp 0x100e5361
mov dword [edi + 0x20], 1
mov eax, 0xffffe005
mov dword [edi + 0x38], eax
push 0
push eax
call sym.nss3.dll_PR_SetError
jmp 0x100e56db
mov eax, esi
mov esi, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2c], ebx
push edi
call sym.nss3.dll_SECOID_FindOID_Util
add esp, 4
test eax, eax
je 0x100e54e7
cmp dword [eax + 0xc], 0xa4
jne 0x100e54e7
push dword [edi + 0xc]
call sym.nss3.dll_SECOID_FindOID_Util
add esp, 4
test eax, eax
je 0x100e54e7
cmp dword [eax + 0xc], 0xa8
jne 0x100e54e7
mov eax, dword [edi + 0xc]
add eax, 0xc
push eax
call sym.nss3.dll_SECITEM_DupItem_Util
add esp, 4
test eax, eax
je 0x100e54e7
mov ebx, eax
xor eax, eax
push eax
mov dword [ebp - 0x20], 0
push eax
push ebx
call fcn.1007bc60
add esp, 0xc
test eax, eax
je 0x100e548d
mov dword [ebp - 0x30], eax
push 0x400
call sym.nss3.dll_PORT_NewArena_Util
add esp, 4
test eax, eax
je 0x100e5461
push 0x10
push eax
mov dword [ebp - 0x28], eax
call sym.nss3.dll_PORT_ArenaAlloc_Util
add esp, 8
test eax, eax
je 0x100e546a
mov esi, eax
xor eax, eax
mov dword [esi + 8], eax
mov dword [esi + 4], eax
mov dword [ebp - 0x20], 0
mov dword [esi + 0xc], eax
mov eax, dword [ebp - 0x28]
mov dword [esi], eax
push esi
push 0x100e5720
push dword [edi + 0x40]
push dword [ebp - 0x30]
call fcn.100a7aa0
add esp, 0x10
test eax, eax
jne 0x100e5471
cmp dword [esi + 0xc], 0
jne 0x100e5471
cmp dword [esi + 4], 0
mov eax, dword [ebp - 0x28]
je 0x100e5474
mov eax, dword [esi + 8]
push dword [eax]
call sym.nss3.dll_SECITEM_DupItem_Util
add esp, 4
mov dword [ebp - 0x20], eax
jmp 0x100e5471
mov dword [ebp - 0x20], 0
jmp 0x100e5482
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x28]
push 1
push eax
call sym.nss3.dll_PORT_FreeArena_Util
add esp, 8
mov esi, dword [ebp - 0x24]
push dword [ebp - 0x30]
call sym.nss3.dll_CERT_DestroyCertificate
add esp, 4
push 1
push ebx
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
mov eax, dword [ebp - 0x1c]
test eax, eax
mov ebx, dword [ebp - 0x20]
je 0x100e54c6
test ebx, ebx
je 0x100e54c6
push ebx
push eax
call sym.nss3.dll_SECITEM_CompareItem_Util
add esp, 8
test eax, eax
jne 0x100e54ca
push 1
push dword [ebp - 0x1c]
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
jmp 0x100e56d1
test ebx, ebx
je 0x100e54e7
mov ecx, edi
mov edx, ebx
call fcn.100e3910
mov edx, ebx
mov bl, 1
test eax, eax
je 0x100e5587
mov eax, dword [ebp - 0x1c]
jmp 0x100e56be
mov edx, dword [ebp - 0x1c]
test edx, edx
je 0x100e553a
cmp dword [edx + 4], 0
je 0x100e553a
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x14], 0
test eax, eax
je 0x100e5528
lea esi, [ebp - 0x14]
push esi
push 0x100e58d0
push eax
push edx
call fcn.100a7d20
mov edx, dword [ebp - 0x1c]
add esp, 0x10
cmp dword [esi], 0
mov esi, dword [ebp - 0x24]
jne 0x100e553a
push 1
push edx
jmp 0x100e56d6
push 0
push 0xffffe005
call sym.nss3.dll_PR_SetError
mov edx, dword [ebp - 0x1c]
add esp, 8
mov ecx, dword [ebp + 8]
mov ebx, esi
mov esi, edx
call dword [section..00cfg]
lea eax, [ebp - 0x18]
push ebx
push eax
push esi
call dword [ebp + 8]
add esp, 0xc
mov ebx, eax
lea eax, [ebp - 0x18]
cmp dword [eax], 0
je 0x100e5570
mov dword [edi + 0x20], 1
xor ebx, ebx
mov eax, 0xffffe057
jmp 0x100e56af
test ebx, ebx
je 0x100e557f
mov esi, ebx
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x100e55d3
jmp 0x100e55e0
mov esi, dword [ebp - 0x1c]
jmp 0x100e568a
mov ecx, dword [ebp - 0x2c]
call fcn.100e3910
test eax, eax
je 0x100e54df
mov dword [edi + 0x20], 1
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x38]
mov bl, 1
mov esi, dword [ebp - 0x1c]
jmp 0x100e56b6
sub esp, 0x10
movaps xmm0, xmmword [0x101b11e0]
movups xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100e533b
call fcn.1001b2e0
jmp 0x100e5327
push 1
push eax
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
mov esi, ebx
cmp dword [esi + 4], 0
mov ebx, dword [ebp + 8]
je 0x100e565f
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x14], 0
test eax, eax
je 0x100e5650
lea ebx, [ebp - 0x14]
push ebx
push 0x100e58d0
push eax
push esi
call fcn.100a7d20
add esp, 0x10
cmp dword [ebx], 0
mov ebx, dword [ebp + 8]
jne 0x100e565f
mov ecx, edi
mov edx, esi
call fcn.100e3910
test eax, eax
jne 0x100e563d
mov ecx, dword [ebp - 0x2c]
mov edx, esi
call fcn.100e3910
test eax, eax
je 0x100e563d
mov dword [edi + 0x20], 1
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x38]
mov dword [edi + 0x38], eax
push 1
push esi
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
mov esi, dword [ebp - 0x24]
jmp 0x100e56de
push 0
push 0xffffe005
call sym.nss3.dll_PR_SetError
add esp, 8
mov ecx, ebx
call dword [section..00cfg]
push dword [ebp - 0x24]
lea eax, [ebp - 0x18]
push eax
push esi
call ebx
add esp, 0xc
cmp dword [ebp - 0x18], 0
jne 0x100e555d
mov ebx, eax
mov eax, esi
test ebx, ebx
jne 0x100e55d3
mov dword [edi + 0x20], 1
cmp dword [0x101f4f80], 0
je 0x100e5711
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x100e56f9
mov eax, dword [eax + 0x28]
xor ebx, ebx
mov dword [ebp - 0x20], 0
mov dword [edi + 0x38], eax
mov eax, esi
mov esi, dword [ebp - 0x24]
test eax, eax
je 0x100e56cd
push 1
push eax
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
test bl, bl
je 0x100e56de
push 1
push dword [ebp - 0x20]
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
push esi
call sym.nss3.dll_CERT_DestroyCertificate
add esp, 4
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10157a00
add esp, 0x24
pop esi
pop edi
pop ebx
pop ebp
ret
sub esp, 0x10
movaps xmm0, xmmword [0x101b11e0]
movups xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100e56aa
call fcn.1001b2e0
jmp 0x100e569a