joyce8/EMBER2024-capa huggingface dataset:
Function at 0x100ed250
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov ebx, dword [ebp + 8]
test ebx, ebx
je 0x100ed2c8
mov edi, dword [ebx + 0x10]
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov esi, eax
test eax, eax
je 0x100ed2d0
lea eax, [edi + 0x1c]
mov dword [ebp - 0x10], eax
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [edi + 8], esi
mov eax, dword [ebx + 8]
lea ecx, [eax - 1]
cmp eax, 1
mov dword [ebx + 8], ecx
jg 0x100ed2bd
mov eax, dword [ebx]
test eax, eax
je 0x100ed2bd
push 0
push eax
call sym.nss3.dll_PORT_FreeArena_Util
add esp, 8
push edi
call sym.nss3.dll_PR_Unlock
add esp, 4
push dword [ebp - 0x10]
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
push edi
call dword [sym.imp.mozglue.dll_free]
jmp 0x100ed2c3
push edi
call sym.nss3.dll_PR_Unlock
add esp, 8
jmp 0x100ed2cb
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov esi, eax
jmp 0x100ed273

Function at 0x100efb50
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 8
mov eax, dword [ebp + 8]
sub esp, 8
mov dword [esp + 4], eax
call sym.nss3.dll_CERT_FindCertByNickname
add esp, 8
test eax, eax
je 0x100efbd4
mov esi, eax
add eax, 0x54
push eax
push dword [ebp + 0xc]
call sym.nss3.dll_SECITEM_HashCompare
add esp, 8
mov edi, dword [0x101d5788]
xor ebx, ebx
test eax, eax
sete al
test edi, edi
je 0x100efbd8
mov byte [ebp - 0xd], al
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
mov dword [ebp - 0x14], eax
je 0x100efc0a
lea eax, [edi + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov eax, dword [ebp - 0x14]
mov dword [edi + 8], eax
mov eax, dword [0x101d5788]
mov edi, dword [esi + 0x15c]
test eax, eax
je 0x100efbcf
push eax
call sym.nss3.dll_PR_Unlock
add esp, 4
mov al, byte [ebp - 0xd]
jmp 0x100efbde
xor ebx, ebx
jmp 0x100efc00
mov edi, dword [esi + 0x15c]
mov bl, al
test edi, edi
je 0x100efbef
push edi
call fcn.10104ae0
add esp, 4
jmp 0x100efc00
mov eax, dword [esi]
test eax, eax
je 0x100efc00
push 0
push eax
call sym.nss3.dll_PORT_FreeArena_Util
add esp, 8
mov eax, ebx
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov dword [ebp - 0x14], eax
jmp 0x100efba7
Function at 0x100efe40
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov edi, dword [ebp + 8]
test edi, edi
je 0x100efeb6
mov ebx, dword [0x101d5788]
test ebx, ebx
je 0x100efe90
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov esi, eax
test eax, eax
je 0x100efebb
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [ebx + 8], esi
mov eax, dword [0x101d5788]
mov esi, dword [edi + 0x15c]
test eax, eax
je 0x100efe96
push eax
call sym.nss3.dll_PR_Unlock
add esp, 4
jmp 0x100efe96
mov esi, dword [edi + 0x15c]
test esi, esi
je 0x100efea5
push esi
call fcn.10104ae0
add esp, 4
jmp 0x100efeb6
mov eax, dword [edi]
test eax, eax
je 0x100efeb6
push 0
push eax
call sym.nss3.dll_PORT_FreeArena_Util
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov esi, eax
jmp 0x100efe69

Function at 0x100efed0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 8
mov edi, dword [ebp + 8]
mov ebx, dword [0x101d5808]
push edi
call fcn.10106d10
add esp, 4
test eax, eax
je 0x100eff88
mov esi, eax
push edi
push eax
call fcn.101061e0
add esp, 8
test eax, eax
mov edi, ebx
je 0x100eff30
push esi
push edi
call fcn.1010bc40
add esp, 8
test eax, eax
je 0x100eff30
mov ebx, eax
push esi
call fcn.10107560
add esp, 4
test eax, eax
je 0x100eff27
call fcn.100f0030
push ebx
call fcn.101079e0
add esp, 4
push 1
push 0
push esi
call fcn.10107b60
add esp, 0xc
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x10], edi
mov edi, dword [eax]
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov ebx, eax
test eax, eax
je 0x100eff93
lea eax, [edi + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [edi + 8], ebx
push esi
mov esi, dword [ebp - 0x10]
push esi
call fcn.1010a060
add esp, 8
mov eax, dword [esi + 0x14]
push dword [eax]
call sym.nss3.dll_PR_Unlock
add esp, 4
neg dword [ebp - 0x14]
sbb eax, eax
jmp 0x100eff8b
xor eax, eax
dec eax
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov ebx, eax
jmp 0x100eff5a

Function at 0x100effb0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov edi, dword [ebp + 8]
mov ebx, dword [0x101d5784]
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov esi, eax
test eax, eax
je 0x100f0017
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [ebx + 8], esi
xor esi, esi
dec esi
test edi, edi
je 0x100f0002
mov eax, dword [edi + 0x160]
test eax, eax
je 0x100f0002
mov ecx, dword [ebp + 0xc]
mov edx, dword [eax + 8]
xor esi, esi
mov dword [ecx + 8], edx
movsd xmm0, qword [eax]
movsd qword [ecx], xmm0
push dword [0x101d5784]
call sym.nss3.dll_PR_Unlock
add esp, 4
mov eax, esi
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov esi, eax
jmp 0x100effd1
Function at 0x100f0dc0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
mov ecx, dword [ebp + 0xc]
xor edx, edx
pop ebp
jmp fcn.100f0dd0
Function at 0x100f1060
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
pop ebp
jmp fcn.100f0dd0
Function at 0x100f14c0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov edi, dword [ebp + 8]
test edi, edi
je 0x100f150f
mov ebx, dword [0x101d5788]
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov esi, eax
test eax, eax
je 0x100f1517
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [ebx + 8], esi
mov ecx, dword [ebp + 0xc]
mov eax, dword [edi + 0x14c]
mov dword [ecx], eax
push dword [0x101d5788]
call sym.nss3.dll_PR_Unlock
add esp, 4
xor eax, eax
jmp 0x100f1512
xor eax, eax
dec eax
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov esi, eax
jmp 0x100f14e5
Function at 0x100f96d0
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
xor edi, edi
dec edi
cmp edx, 0x13
jg 0x100f97ca
mov ebx, edx
mov esi, ecx
lea eax, [ecx + 0xd8]
push eax
call sym.nss3.dll_SECOID_FindOID_Util
add esp, 4
test eax, eax
je 0x100f97ca
mov eax, dword [eax + 0xc]
xor edi, edi
cmp eax, 0xc7
jg 0x100f971e
lea ecx, [eax - 0x7c]
cmp ecx, 3
jb 0x100f9734
cmp eax, 0xbd
je 0x100f9734
jmp 0x100f97ca
lea ecx, [eax - 0x13a]
cmp ecx, 2
jb 0x100f9734
cmp eax, 0xc8
jne 0x100f97ca
cmp dword [esi + 0xec], 0
jne 0x100f97ca
cmp dword [esi + 0x170], 0
je 0x100f974f
xor edi, edi
dec edi
jmp 0x100f97ca
call sym.nss3.dll_PR_Now
push 0xb
push edx
push eax
push esi
call sym.nss3.dll_CERT_FindCertIssuer
add esp, 0x10
test eax, eax
mov edi, 0xffffffff
je 0x100f97ca
mov dword [ebp - 0x10], eax
add eax, 0xd8
push eax
call sym.nss3.dll_SECOID_FindOID_Util
add esp, 4
xor edi, edi
dec edi
test eax, eax
je 0x100f97be
mov eax, dword [eax + 0xc]
cmp eax, 0xc7
jg 0x100f979d
lea ecx, [eax - 0x7c]
cmp ecx, 3
jb 0x100f97af
cmp eax, 0xbd
je 0x100f97af
jmp 0x100f97be
lea ecx, [eax - 0x13a]
cmp ecx, 2
jb 0x100f97af
cmp eax, 0xc8
jne 0x100f97be
mov ecx, dword [ebp - 0x10]
inc ebx
mov edx, ebx
call fcn.100f96d0
test eax, eax
je 0x100f97d4
mov ecx, dword [ebp - 0x10]
push ecx
call sym.nss3.dll_CERT_DestroyCertificate
add esp, 4
mov eax, edi
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x10]
cmp dword [ecx + 0xec], 0
je 0x100f97c1
mov ecx, dword [ebp - 0x10]
lea eax, [esi + 0xe4]
add ecx, 0xe4
push ecx
push eax
push dword [esi]
call sym.nss3.dll_SECITEM_CopyItem_Util
mov ecx, dword [ebp - 0x10]
add esp, 0xc
mov edi, eax
jmp 0x100f97c1
Function at 0x100fe6a0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push 0x100fe880
push 0x101d57c0
call sym.nss3.dll_PR_CallOnce
add esp, 8
xor esi, esi
dec esi
test eax, eax
jne 0x100fe849
mov ebx, dword [0x101d57cc]
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov edi, eax
test eax, eax
je 0x100fe850
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [ebx + 8], edi
mov edi, dword [0x101d57d4]
mov bl, byte [0x101d57d0]
push dword [0x101d57cc]
call sym.nss3.dll_PR_Unlock
add esp, 4
test bl, bl
jne 0x100fe71a
test edi, edi
jne 0x100fe71a
push 0
push 0xffffe09a
jmp 0x100fe824
cmp dword [ebp + 8], 0
je 0x100fe7cc
mov ebx, dword [0x101d57e0]
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov edi, eax
test eax, eax
je 0x100fe866
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [ebx + 8], edi
mov ecx, dword [0x101d57e8]
test ecx, ecx
jle 0x100fe794
mov eax, dword [0x101d57ec]
mov edi, ecx
lea edx, [eax + 4]
mov ebx, dword [ebp + 8]
cmp dword [edx - 4], ebx
jne 0x100fe774
mov ebx, dword [ebp + 0xc]
cmp dword [edx], ebx
je 0x100fe80f
add edx, 8
dec edi
jne 0x100fe761
add eax, 4
mov edx, ecx
cmp dword [eax - 4], 0
jne 0x100fe78e
cmp dword [eax], 0
je 0x100fe82e
add eax, 8
dec edx
jne 0x100fe77f
cmp dword [0x101d57e4], ecx
jne 0x100fe7d5
shl ecx, 3
add ecx, 0x50
js 0x100fe7f0
push ecx
push dword [0x101d57ec]
call dword [sym.imp.mozglue.dll_realloc]
add esp, 8
test eax, eax
je 0x100fe7f0
mov ecx, dword [0x101d57e8]
add dword [0x101d57e4], 0xa
mov dword [0x101d57ec], eax
jmp 0x100fe7da
push 0
push 0xffffe005
jmp 0x100fe824
mov eax, dword [0x101d57ec]
mov edx, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
mov dword [eax + ecx*8], edx
mov dword [eax + ecx*8 + 4], esi
inc ecx
mov dword [0x101d57e8], ecx
jmp 0x100fe839
push 0
push 0xffffe013
call sym.nss3.dll_PR_SetError
add esp, 8
push dword [0x101d57e0]
call sym.nss3.dll_PR_Unlock
add esp, 4
jmp 0x100fe849
push dword [0x101d57e0]
call sym.nss3.dll_PR_Unlock
add esp, 4
push 0
push 0xffffe001
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100fe849
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
mov dword [eax - 4], ecx
mov dword [eax], edx
push dword [0x101d57e0]
call sym.nss3.dll_PR_Unlock
add esp, 4
xor esi, esi
mov eax, esi
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov edi, eax
jmp 0x100fe6df
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov edi, eax
jmp 0x100fe740
Function at 0x100fea70
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push 0x100fe880
push 0x101d57c0
call sym.nss3.dll_PR_CallOnce
add esp, 8
test eax, eax
jne 0x100feaf1
mov edi, dword [0x101d57cc]
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov esi, eax
test eax, eax
je 0x100feb11
lea eax, [edi + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [edi + 8], esi
cmp byte [0x101d57d0], 1
jne 0x100fead4
cmp dword [0x101d57d8], 0
je 0x100feaf8
push 0xffffffffffffffff
push dword [0x101d57dc]
call sym.nss3.dll_PR_WaitCondVar
add esp, 8
jmp 0x100feab9
push dword [0x101d57cc]
call sym.nss3.dll_PR_Unlock
add esp, 4
push 0
push 0xffffe09a
call sym.nss3.dll_PR_SetError
add esp, 8
xor eax, eax
dec eax
pop esi
pop edi
pop ebp
ret
call fcn.100fe8d0
mov esi, eax
push dword [0x101d57cc]
call sym.nss3.dll_PR_Unlock
add esp, 4
mov eax, esi
jmp 0x100feaf4
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov esi, eax
jmp 0x100feaa3

Function at 0x100feb30
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push 0x100fe880
push 0x101d57c0
call sym.nss3.dll_PR_CallOnce
add esp, 8
xor esi, esi
dec esi
test eax, eax
jne 0x100fec51
mov esi, dword [0x101d57cc]
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov edi, eax
test eax, eax
je 0x100fec58
mov ebx, dword [ebp + 8]
lea eax, [esi + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [esi + 8], edi
cmp dword [0x101d57d8], 0
je 0x100feb9a
push 0xffffffffffffffff
push dword [0x101d57dc]
call sym.nss3.dll_PR_WaitCondVar
add esp, 8
jmp 0x100feb7f
test ebx, ebx
je 0x100febb9
mov eax, dword [0x101d57d4]
test eax, eax
je 0x100febd2
cmp eax, ebx
je 0x100fec13
mov ecx, eax
mov eax, dword [eax]
test eax, eax
je 0x100febd2
cmp eax, ebx
jne 0x100febab
jmp 0x100fec18
cmp byte [0x101d57d0], 0
mov esi, 0xffffffff
je 0x100febf4
mov al, 1
mov byte [0x101d57d0], 0
jmp 0x100fec2d
push dword [0x101d57cc]
call sym.nss3.dll_PR_Unlock
add esp, 4
push 0
push 0xffffe09a
call sym.nss3.dll_PR_SetError
add esp, 8
xor esi, esi
dec esi
jmp 0x100fec51
push dword [0x101d57cc]
call sym.nss3.dll_PR_Unlock
add esp, 4
push 0
push 0xffffe09a
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100fec51
mov ecx, 0x101d57d4
mov eax, dword [ebx]
mov dword [ecx], eax
push ebx
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov al, byte [0x101d57d0]
xor al, 1
xor esi, esi
test al, 1
je 0x100fec43
cmp dword [0x101d57d4], 0
jne 0x100fec43
call fcn.100fe8d0
mov esi, eax
push dword [0x101d57cc]
call sym.nss3.dll_PR_Unlock
add esp, 4
mov eax, esi
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov edi, eax
jmp 0x100feb6f

Function at 0x100fee70
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
pop ebp
jmp sym.nss3.dll_PORT_Alloc_Util

Function at 0x100fee80
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
pop ebp
jmp sym.nss3.dll_PORT_ZAlloc_Util
Function at 0x100feeb0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
pop ebp
jmp sym.nss3.dll_PORT_Strdup_Util

Function at 0x100feef0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
pop ebp
jmp sym.nss3.dll_PORT_NewArena_Util

Function at 0x100fef00
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
pop ebp
jmp sym.nss3.dll_PORT_ArenaAlloc_Util

Function at 0x100fef50
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
pop ebp
jmp sym.nss3.dll_PORT_FreeArena_Util

Function at 0x100ff2b0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov edi, dword [ebp + 0xc]
cmp edi, 0xfffffff8
jb 0x100ff2cf
push 2
call fcn.100ffa40
add esp, 4
xor esi, esi
jmp 0x100ff397
mov eax, dword [ebp + 8]
lea ebx, [edi + 8]
test eax, eax
je 0x100ff336
mov edi, dword [eax + 0x1c]
test edi, edi
je 0x100ff354
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov esi, eax
test eax, eax
je 0x100ff39e
lea eax, [edi + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov edx, dword [ebp + 8]
mov dword [edi + 8], esi
mov edi, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
lea ecx, [eax + ebx]
not eax
and eax, ecx
cmp eax, ebx
jb 0x100ff37d
mov ecx, dword [edx + 0x10]
mov ebx, edx
mov esi, dword [ecx + 0xc]
mov edx, dword [ecx + 8]
sub edx, esi
cmp eax, edx
jbe 0x100ff35b
push eax
push ebx
call sym.nss3.dll_PL_ArenaAllocate
add esp, 8
mov esi, eax
jmp 0x100ff360
push ebx
push 1
call dword [sym.imp.mozglue.dll_calloc]
add esp, 8
test eax, eax
je 0x100ff2be
mov esi, eax
mov dword [eax + 4], edi
add esi, 8
jmp 0x100ff397
push 4
jmp 0x100ff2c0
add eax, esi
mov dword [ecx + 0xc], eax
mov eax, dword [ebp + 8]
test esi, esi
je 0x100ff37d
mov dword [esi], eax
mov dword [esi + 4], edi
add esi, 8
push edi
push 0
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
jmp 0x100ff389
push 2
call fcn.100ffa40
add esp, 4
xor esi, esi
mov eax, dword [ebp + 8]
push dword [eax + 0x1c]
call sym.nss3.dll_PR_Unlock
add esp, 4
mov eax, esi
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov esi, eax
jmp 0x100ff2f6
Function at 0x100ff3c0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov ebx, dword [ebp + 8]
xor esi, esi
test ebx, ebx
je 0x100ff446
mov eax, dword [ebx - 8]
test eax, eax
je 0x100ff41c
mov edi, dword [eax + 0x1c]
test edi, edi
je 0x100ff439
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
mov dword [ebp - 0x10], eax
je 0x100ff450
lea eax, [edi + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov eax, dword [ebp - 0x10]
mov dword [edi + 8], eax
push dword [ebx - 4]
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, dword [ebx - 8]
push dword [eax + 0x1c]
call sym.nss3.dll_PR_Unlock
jmp 0x100ff434
lea edi, [ebx - 8]
push dword [ebx - 4]
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push edi
call dword [sym.imp.mozglue.dll_free]
add esp, 4
jmp 0x100ff446
push 3
call fcn.100ffa40
add esp, 4
xor esi, esi
dec esi
mov eax, esi
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov dword [ebp - 0x10], eax
jmp 0x100ff3f1

Function at 0x100ff470
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov edi, dword [ebp + 8]
call fcn.100ff960
test eax, eax
je 0x100ff48f
mov word [eax + 2], 0
mov dword [eax + 4], 0
mov ebx, dword [edi + 0x1c]
test ebx, ebx
je 0x100ff4f2
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov esi, eax
test eax, eax
je 0x100ff504
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [ebx + 8], esi
push edi
call sym.nss3.dll_PL_FinishArenaPool
add esp, 4
mov esi, dword [edi + 0x1c]
mov dword [edi + 0x1c], 0
push esi
call sym.nss3.dll_PR_Unlock
add esp, 4
lea eax, [esi + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
push esi
call dword [sym.imp.mozglue.dll_free]
add esp, 4
push edi
call fcn.100ff3c0
add esp, 4
xor eax, eax
jmp 0x100ff4ff
push 4
call fcn.100ffa40
add esp, 4
xor eax, eax
dec eax
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov esi, eax
jmp 0x100ff4a8
Function at 0x100ff520
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov edi, dword [ebp + 8]
mov ebx, dword [edi + 0x1c]
test ebx, ebx
je 0x100ff58c
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov esi, eax
test eax, eax
je 0x100ff59e
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [ebx + 8], esi
push edi
call sym.nss3.dll_PL_FinishArenaPool
add esp, 4
mov esi, dword [edi + 0x1c]
mov dword [edi + 0x1c], 0
push esi
call sym.nss3.dll_PR_Unlock
add esp, 4
lea eax, [esi + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_DeleteCriticalSection]
push esi
call dword [sym.imp.mozglue.dll_free]
add esp, 4
push edi
call fcn.100ff3c0
add esp, 4
xor eax, eax
jmp 0x100ff599
push 4
call fcn.100ffa40
add esp, 4
xor eax, eax
dec eax
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov esi, eax
jmp 0x100ff542

Function at 0x100ff5c0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov edi, dword [ebp + 8]
mov ebx, dword [edi + 0x1c]
test ebx, ebx
je 0x100ff61d
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov esi, eax
test eax, eax
je 0x100ff67a
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [ebx + 8], esi
mov eax, dword [edi + 0x18]
lea ecx, [eax + 0x10]
not eax
and eax, ecx
cmp eax, 0x10
jb 0x100ff64f
mov ecx, dword [edi + 0x10]
mov ebx, dword [ecx + 0xc]
mov edx, dword [ecx + 8]
sub edx, ebx
cmp eax, edx
jbe 0x100ff621
push eax
push edi
call sym.nss3.dll_PL_ArenaAllocate
add esp, 8
jmp 0x100ff628
push 4
jmp 0x100ff669
add eax, ebx
mov dword [ecx + 0xc], eax
mov eax, ebx
test eax, eax
je 0x100ff64f
lea esi, [eax + 8]
mov dword [eax], edi
mov dword [eax + 4], 8
mov dword [eax + 0xc], ebx
mov dword [eax + 8], 0x4d41524b
push dword [edi + 0x1c]
call sym.nss3.dll_PR_Unlock
add esp, 4
jmp 0x100ff673
mov esi, 2
push esi
call fcn.100ffa40
add esp, 4
push dword [edi + 0x1c]
call sym.nss3.dll_PR_Unlock
add esp, 4
push esi
call fcn.100ffa40
add esp, 4
xor esi, esi
mov eax, esi
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov esi, eax
jmp 0x100ff5e6
Function at 0x100ff690
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
cmp dword [edx], 0x4d41524b
jne 0x100ff71a
mov esi, dword [ecx + 0x1c]
test esi, esi
je 0x100ff708
mov edi, edx
mov dword [ebp - 0x10], ecx
push dword [0x101d4d30]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov ebx, eax
test eax, eax
je 0x100ff74a
lea eax, [esi + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [esi + 8], ebx
cmp dword [edi], 0x4d41524b
jne 0x100ff70c
mov eax, dword [ebp + 8]
mov ebx, dword [ebp - 0x10]
mov dword [edi], 0
test eax, eax
je 0x100ff73b
mov ecx, dword [ebx + 0x10]
mov eax, dword [edi + 4]
mov edx, dword [ecx + 4]
mov esi, dword [ecx + 0xc]
mov edi, eax
sub edi, edx
sub esi, edx
cmp edi, esi
jbe 0x100ff72f
push eax
push ebx
call sym.nss3.dll_PL_ArenaRelease
add esp, 8
jmp 0x100ff73b
push 4
jmp 0x100ff71c
mov eax, dword [ebp - 0x10]
push dword [eax + 0x1c]
call sym.nss3.dll_PR_Unlock
add esp, 4
push 5
call fcn.100ffa40
add esp, 4
xor eax, eax
dec eax
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, dword [ebx + 0x18]
add eax, edx
not edx
and edx, eax
mov dword [ecx + 0xc], edx
push dword [ebx + 0x1c]
call sym.nss3.dll_PR_Unlock
add esp, 4
xor eax, eax
jmp 0x100ff727
xor eax, eax
push eax
push eax
push 1
push eax
call fcn.100e2c70
add esp, 0x10
mov ebx, eax
jmp 0x100ff6c1