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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x14
mov esi, dword [ebp + 0x18]
mov eax, dword [0x101db014]
xor eax, ebp
mov dword [ebp - 0x10], eax
cmp dword [ebp + 0xc], 0
je 0x10088c0a
mov eax, dword [ebp + 8]
lea ebx, [ebp - 0x1c]
push ebx
push 0x56
push dword [eax + 0x114]
call fcn.10085020
add esp, 0xc
test eax, eax
je 0x10088c3f
mov edi, eax
cmp dword [0x101de200], 0
je 0x10088d51
push dword [0x101de1f0]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10088d1b
cmp dword [eax + 0x28], 0xffffe023
jne 0x10088cf4
mov eax, dword [ebp + 8]
lea esi, [eax + 0x54]
push 0x101a5fb0
push esi
call sym.nss3.dll_SECITEM_HashCompare
add esp, 8
test eax, eax
je 0x10088c13
mov eax, 0x101a5fbc
jmp 0x10088c2a
xor edi, edi
xor eax, eax
jmp 0x10088d01
push 0x101a5fc8
push esi
call sym.nss3.dll_SECITEM_HashCompare
add esp, 8
test eax, eax
je 0x10088c88
mov eax, 0x101a5fd4
mov esi, dword [ebp + 0x18]
push eax
push ebx
push 0
call sym.nss3.dll_SECITEM_CopyItem_Util
add esp, 0xc
mov edi, eax
test eax, eax
jne 0x10088c9d
mov eax, dword [ebp + 0x14]
mov edi, ebx
mov ebx, eax
push eax
call sym.nss3.dll_PORT_ArenaMark_Util
add esp, 4
mov dword [ebp - 0x20], eax
push edi
push ebx
call fcn.10087d10
add esp, 8
mov ebx, eax
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x10088c6f
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
test ebx, ebx
jne 0x10088cc5
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp - 0x20]
push 0
call fcn.100e37d0
add esp, 4
xor edi, edi
dec edi
jmp 0x10088cf4
push 0
push 0xffffe023
call sym.nss3.dll_PR_SetError
add esp, 8
xor edi, edi
dec edi
mov esi, dword [ebp + 0x18]
cmp dword [0x101de200], 0
je 0x10088d5b
push dword [0x101de1f0]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10088d36
xor ebx, ebx
cmp dword [eax + 0x28], 0xffffe023
jne 0x10088cf4
mov edi, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
test ebx, ebx
je 0x10088ce0
push esi
push ebx
push dword [ebp + 0x14]
call sym.nss3.dll_CERT_CheckNameSpace
add esp, 0xc
test eax, eax
jne 0x10088cf9
mov esi, dword [esi + 0x28]
add esi, 0xffffffd8
add edi, 4
cmp esi, dword [ebp + 0xc]
jne 0x10088ccb
xor edi, edi
xor eax, eax
jmp 0x10088cfe
mov eax, dword [ebp + 8]
jmp 0x10088d01
mov eax, dword [edi]
xor edi, edi
dec edi
mov esi, dword [ebp + 0x18]
test esi, esi
je 0x10088d07
mov dword [esi], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1014dc80
mov eax, edi
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret
sub esp, 0x10
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
add esp, 0x10
jmp 0x10088bde
sub esp, 0x10
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
add esp, 0x10
jmp 0x10088cba
call fcn.100745e0
jmp 0x10088bca
call fcn.100745e0
jmp 0x10088caa
Function at 0x1008a1c0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x14
mov eax, dword [ebp + 8]
mov dword [esp + 4], eax
call sym.nss3.dll_CERT_FindCertByNickname
test eax, eax
je 0x1008a243
mov esi, eax
mov eax, dword [ebp + 0xc]
mov ecx, esi
add ecx, 0x54
mov dword [esp + 4], ecx
mov dword [esp], eax
call sym.nss3.dll_SECITEM_HashCompare
test eax, eax
sete al
mov dword [ebp - 0x10], eax
mov ebx, dword [0x101dec48]
test ebx, ebx
je 0x1008a247
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
mov edi, eax
test eax, eax
je 0x1008a27f
lea eax, [ebx + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [ebx + 8], edi
mov eax, dword [0x101dec48]
mov edi, dword [esi + 0x15c]
test eax, eax
je 0x1008a24d
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
jmp 0x1008a24d
xor eax, eax
jmp 0x1008a274
mov edi, dword [esi + 0x15c]
test edi, edi
je 0x1008a25b
mov dword [esp], edi
call fcn.1009fed0
jmp 0x1008a271
mov eax, dword [esi]
test eax, eax
je 0x1008a271
mov dword [esp], eax
mov dword [esp + 4], 0
call sym.nss3.dll_PORT_FreeArena_Util
mov eax, dword [ebp - 0x10]
movzx eax, al
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov edi, eax
jmp 0x1008a218
Function at 0x1008a4d0
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]
test edi, edi
je 0x1008a556
mov ebx, dword [0x101dec48]
test ebx, ebx
je 0x1008a52c
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 0x1008a55e
lea eax, [ebx + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [ebx + 8], esi
mov eax, dword [0x101dec48]
mov esi, dword [edi + 0x15c]
test eax, eax
je 0x1008a532
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
jmp 0x1008a532
mov esi, dword [edi + 0x15c]
test esi, esi
je 0x1008a540
mov dword [esp], esi
call fcn.1009fed0
jmp 0x1008a556
mov eax, dword [edi]
test eax, eax
je 0x1008a556
mov dword [esp], eax
mov dword [esp + 4], 0
call sym.nss3.dll_PORT_FreeArena_Util
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x1008a501

Function at 0x1008a580
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 [0x101decc8]
push edi
call fcn.100a2170
add esp, 4
test eax, eax
je 0x1008a636
mov esi, eax
push edi
push eax
call fcn.100a1620
add esp, 8
test eax, eax
je 0x1008a5de
push esi
push ebx
call fcn.100a7350
add esp, 8
test eax, eax
je 0x1008a5de
mov edi, eax
push esi
call fcn.100a29e0
add esp, 4
test eax, eax
je 0x1008a5d5
call fcn.1008a6f0
push edi
call fcn.100a2e70
add esp, 4
push 1
push 0
push esi
call fcn.100a3000
add esp, 0xc
mov dword [ebp - 0x14], eax
mov eax, dword [ebx + 0x14]
mov edi, dword [eax]
push dword [0x101de1f0]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov dword [ebp - 0x10], ebx
mov ebx, eax
test eax, eax
je 0x1008a641
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.100a56b0
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 0x1008a639
xor eax, eax
dec eax
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret
sub esp, 0x10
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
add esp, 0x10
mov ebx, eax
jmp 0x1008a608
Function at 0x1008a660
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 ebx, dword [0x101dec44]
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 0x1008a6d6
lea eax, [ebx + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [ebx + 8], esi
xor esi, esi
dec esi
test edi, edi
je 0x1008a6bf
mov eax, dword [edi + 0x160]
test eax, eax
je 0x1008a6bf
mov ecx, dword [ebp + 0xc]
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
movsd xmm0, qword [eax]
movsd qword [ecx], xmm0
xor esi, esi
mov eax, dword [0x101dec44]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
mov eax, esi
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x1008a689
Function at 0x1008b500
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
mov ecx, dword [ebp + 0xc]
xor edx, edx
pop ebp
jmp fcn.1008b510
Function at 0x1008b7b0
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.1008b510
Function at 0x1008bbf0
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]
test edi, edi
je 0x1008bc4b
mov ebx, dword [0x101dec48]
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 0x1008bc56
lea eax, [ebx + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [ebx + 8], esi
mov eax, dword [edi + 0x14c]
mov ecx, dword [ebp + 0xc]
mov dword [ecx], eax
mov eax, dword [0x101dec48]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
xor eax, eax
jmp 0x1008bc4e
xor eax, eax
dec eax
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x1008bc1d
Function at 0x10090de0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x18
mov edi, dword [ebp + 0x18]
mov eax, dword [0x101db014]
xor eax, ebp
mov dword [esp + 0x10], eax
test edi, edi
je 0x10090e66
mov ebx, ecx
mov ecx, dword [ebp + 0x10]
test ecx, ecx
je 0x10090e66
test ebx, ebx
je 0x10090e66
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x10090e66
mov dword [esp + 4], edx
mov dword [ecx], 0xffffffff
xor esi, esi
mov dword [eax], esi
mov dword [edi], esi
push dword [0x101dd100]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
mov ecx, ebx
call fcn.10090fa0
test eax, eax
je 0x10090f5b
mov ebx, eax
call sym.nss3.dll_PR_Now
cmp eax, dword [ebx + 0x10]
sbb edx, dword [ebx + 0x14]
jge 0x10090e5d
xor eax, eax
inc eax
cmp dword [ebx + 0x18], 0
je 0x10090e7d
cmp dword [ebx + 0x1c], 2
jne 0x10090e7d
mov eax, 2
mov cl, 1
jmp 0x10090e7f
push 0
push 0xffffe005
call sym.nss3.dll_PR_SetError
add esp, 8
xor esi, esi
dec esi
jmp 0x10090f69
xor ecx, ecx
mov dword [edi], eax
cmp dword [ebx + 0x18], 0
je 0x10090eae
mov eax, dword [ebx + 0x1c]
cmp eax, 2
je 0x10090f1b
cmp eax, 1
je 0x10090ed3
test eax, eax
jne 0x10090f22
mov eax, dword [ebp + 0x10]
mov dword [eax], 0
jmp 0x10090f5b
cmp dword [ebp + 0xc], 0
setne al
or al, cl
jne 0x10090ecb
cmp dword [0x101dd128], 1
jne 0x10090ecb
mov eax, dword [ebp + 0x10]
mov dword [eax], 0
mov eax, dword [ebx + 0x24]
jmp 0x10090f56
lea eax, [esp + 8]
push dword [ebx + 0x20]
push eax
call sym.nss3.dll_DER_GeneralizedTimeToTime_Util
add esp, 8
test eax, eax
jne 0x10090f35
mov edi, dword [ebp + 8]
push 0
push 0xffffe00c
call sym.nss3.dll_PR_SetError
add esp, 8
mov eax, dword [esp + 4]
cmp eax, dword [esp + 8]
sbb edi, dword [esp + 0xc]
setge al
setge cl
movzx ecx, cl
neg ecx
mov edx, dword [ebp + 0x10]
mov dword [edx], ecx
test al, al
jne 0x10090f3a
jmp 0x10090f5b
mov eax, 0xffffe07e
jmp 0x10090f27
mov eax, 0xffffe081
push 0
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
xor eax, eax
dec eax
mov ecx, dword [ebp + 0x10]
mov dword [ecx], eax
cmp dword [0x101de200], 0
je 0x10090f96
push dword [0x101de1f0]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10090f7e
mov eax, dword [eax + 0x28]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
push dword [0x101dd100]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
mov ecx, dword [esp + 0x10]
xor ecx, ebp
call fcn.1014dc80
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
sub esp, 0x10
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
add esp, 0x10
jmp 0x10090f53
call fcn.100745e0
jmp 0x10090f43
Function at 0x10094890
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 0x10094988
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 0x10094988
mov eax, dword [eax + 0xc]
xor edi, edi
cmp eax, 0xc7
jg 0x100948de
lea ecx, [eax - 0x7c]
cmp ecx, 3
jb 0x100948f4
cmp eax, 0xbd
je 0x100948f4
jmp 0x10094988
lea ecx, [eax - 0x13a]
cmp ecx, 2
jb 0x100948f4
cmp eax, 0xc8
jne 0x10094988
cmp dword [esi + 0xec], 0
jne 0x10094988
cmp dword [esi + 0x170], 0
je 0x1009490f
xor edi, edi
dec edi
jmp 0x10094988
call sym.nss3.dll_PR_Now
push 0xb
push edx
push eax
push esi
call sym.nss3.dll_CERT_FindCertIssuer
add esp, 0x10
xor edi, edi
dec edi
test eax, eax
je 0x10094988
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 0x1009497c
mov eax, dword [eax + 0xc]
cmp eax, 0xc7
jg 0x1009495b
lea ecx, [eax - 0x7c]
cmp ecx, 3
jb 0x1009496d
cmp eax, 0xbd
je 0x1009496d
jmp 0x1009497c
lea ecx, [eax - 0x13a]
cmp ecx, 2
jb 0x1009496d
cmp eax, 0xc8
jne 0x1009497c
inc ebx
mov ecx, dword [ebp - 0x10]
mov edx, ebx
call fcn.10094890
test eax, eax
je 0x10094992
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 0x1009497f
lea eax, [esi + 0xe4]
mov ecx, dword [ebp - 0x10]
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 0x1009497f
Function at 0x100997c0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
push 0x100999b0
push 0x101dec80
call sym.nss3.dll_PR_CallOnce
add esp, 8
xor esi, esi
dec esi
test eax, eax
jne 0x10099967
mov ebx, dword [0x101dec8c]
push dword [0x101de1f0]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov edi, eax
test eax, eax
je 0x10099971
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [ebx + 8], edi
mov edi, dword [0x101dec94]
mov bl, byte [0x101dec90]
push dword [0x101dec8c]
call sym.nss3.dll_PR_Unlock
add esp, 4
test bl, bl
jne 0x1009983b
test edi, edi
jne 0x1009983b
push 0
push 0xffffe09a
jmp 0x10099943
cmp dword [ebp + 8], 0
je 0x100998ee
mov eax, dword [0x101deca0]
mov dword [ebp - 0x10], eax
push dword [0x101de1f0]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov edi, eax
test eax, eax
je 0x1009998e
mov ebx, dword [ebp - 0x10]
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [ebx + 8], edi
mov edi, dword [0x101deca8]
test edi, edi
mov ebx, dword [ebp + 8]
jle 0x100998b6
xor ecx, ecx
mov eax, dword [0x101decac]
mov edx, dword [ebp + 0xc]
cmp dword [eax + ecx*8], ebx
jne 0x10099899
cmp dword [eax + ecx*8 + 4], edx
je 0x1009992e
inc ecx
cmp edi, ecx
jne 0x1009988a
xor ecx, ecx
cmp dword [eax + ecx*8], 0
jne 0x100998b1
cmp dword [eax + ecx*8 + 4], 0
je 0x1009994d
inc ecx
cmp edi, ecx
jne 0x100998a0
cmp dword [0x101deca4], edi
jne 0x100998f7
lea eax, [edi*8]
add eax, 0x50
js 0x1009990f
push eax
push dword [0x101decac]
call dword [sym.imp.mozglue.dll_realloc]
add esp, 8
test eax, eax
je 0x1009990f
mov dword [0x101decac], eax
lea ecx, [edi + 0xa]
mov dword [0x101deca4], ecx
jmp 0x100998fc
push 0
push 0xffffe005
jmp 0x10099943
mov eax, dword [0x101decac]
mov dword [eax + edi*8], ebx
mov ecx, dword [ebp + 0xc]
mov dword [eax + edi*8 + 4], ecx
inc edi
mov dword [0x101deca8], edi
jmp 0x10099957
push 0
push 0xffffe013
call sym.nss3.dll_PR_SetError
add esp, 8
push dword [0x101deca0]
call sym.nss3.dll_PR_Unlock
add esp, 4
jmp 0x10099967
push dword [0x101deca0]
call sym.nss3.dll_PR_Unlock
add esp, 4
push 0
push 0xffffe001
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x10099967
mov dword [eax + ecx*8], ebx
mov edx, dword [ebp + 0xc]
mov dword [eax + ecx*8 + 4], edx
push dword [0x101deca0]
call sym.nss3.dll_PR_Unlock
add esp, 4
xor esi, esi
mov eax, esi
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret
sub esp, 0x10
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
add esp, 0x10
mov edi, eax
jmp 0x10099800
sub esp, 0x10
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
add esp, 0x10
mov edi, eax
jmp 0x10099863
Function at 0x1009a000
Capabilities:
Get thread local storage value

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

Function at 0x1009a030
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
cmp dword [0x101de200], 0
je 0x1009a06e
mov eax, dword [0x101de1f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
test eax, eax
je 0x1009a05c
mov eax, dword [eax + 0x28]
add esp, 0x10
pop ebp
ret
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
jmp 0x1009a054
call fcn.100745e0
jmp 0x1009a03f

Function at 0x1009a080
Capabilities:
Get thread local storage value

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

Function at 0x1009a090
Capabilities:
Get thread local storage value

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

Function at 0x1009a0e0
Capabilities:
Get thread local storage value

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

Function at 0x1009a460
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 0x1009a47f
push 2
call fcn.1009ac70
add esp, 4
xor esi, esi
jmp 0x1009a54d
mov eax, dword [ebp + 8]
lea ebx, [edi + 8]
test eax, eax
je 0x1009a4e6
mov edi, dword [eax + 0x1c]
test edi, edi
je 0x1009a50a
push dword [0x101de1f0]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov esi, eax
test eax, eax
je 0x1009a554
lea eax, [edi + 0x1c]
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [edi + 8], esi
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x18]
lea ecx, [eax + ebx]
not eax
and eax, ecx
cmp eax, ebx
mov edi, dword [ebp + 0xc]
jb 0x1009a533
mov ecx, dword [edx + 0x10]
mov esi, dword [ecx + 0xc]
mov ebx, edx
mov edx, dword [ecx + 8]
sub edx, esi
cmp eax, edx
jbe 0x1009a511
push eax
push ebx
call sym.nss3.dll_PL_ArenaAllocate
add esp, 8
mov esi, eax
jmp 0x1009a516
push ebx
push 1
call dword [sym.imp.mozglue.dll_calloc]
add esp, 8
test eax, eax
je 0x1009a46e
mov esi, eax
mov dword [eax], 0
mov dword [eax + 4], edi
add esi, 8
jmp 0x1009a54d
push 4
jmp 0x1009a470
add eax, esi
mov dword [ecx + 0xc], eax
test esi, esi
mov eax, dword [ebp + 8]
je 0x1009a533
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 0x1009a53f
push 2
call fcn.1009ac70
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
sub esp, 0x10
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
add esp, 0x10
mov esi, eax
jmp 0x1009a4a6
Function at 0x1009a580
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 0x1009a606
mov eax, dword [ebx - 8]
test eax, eax
je 0x1009a5dc
mov edi, dword [eax + 0x1c]
test edi, edi
je 0x1009a5f9
push dword [0x101de1f0]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x1009a610
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 0x1009a5f4
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 0x1009a606
push 3
call fcn.1009ac70
add esp, 4
xor esi, esi
dec esi
mov eax, esi
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret
sub esp, 0x10
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
add esp, 0x10
mov dword [ebp - 0x10], eax
jmp 0x1009a5b1

Function at 0x1009a630
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]
call fcn.1009ab90
test eax, eax
je 0x1009a652
mov word [eax + 2], 0
mov dword [eax + 4], 0
mov ebx, dword [edi + 0x1c]
test ebx, ebx
je 0x1009a6c0
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 0x1009a6d7
lea eax, [ebx + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [ebx + 8], esi
mov dword [esp], edi
call sym.nss3.dll_PL_FinishArenaPool
mov esi, dword [edi + 0x1c]
mov dword [edi + 0x1c], 0
mov dword [esp], esi
call sym.nss3.dll_PR_Unlock
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]
mov dword [esp], edi
call fcn.1009a580
xor eax, eax
jmp 0x1009a6cf
mov dword [esp], 4
call fcn.1009ac70
xor eax, eax
dec eax
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x1009a670
Function at 0x1009a6f0
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 ebx, dword [edi + 0x1c]
test ebx, ebx
je 0x1009a76a
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 0x1009a781
lea eax, [ebx + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [ebx + 8], esi
mov dword [esp], edi
call sym.nss3.dll_PL_FinishArenaPool
mov esi, dword [edi + 0x1c]
mov dword [edi + 0x1c], 0
mov dword [esp], esi
call sym.nss3.dll_PR_Unlock
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]
mov dword [esp], edi
call fcn.1009a580
xor eax, eax
jmp 0x1009a779
mov dword [esp], 4
call fcn.1009ac70
xor eax, eax
dec eax
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x1009a71a

Function at 0x1009a7a0
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 ebx, dword [edi + 0x1c]
test ebx, ebx
je 0x1009a80c
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 0x1009a86f
lea eax, [ebx + 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
sub esp, 4
mov dword [ebx + 8], esi
mov eax, dword [edi + 0x18]
lea ecx, [eax + 0x10]
not eax
and eax, ecx
cmp eax, 0x10
jb 0x1009a843
mov ecx, dword [edi + 0x10]
mov ebx, dword [ecx + 0xc]
mov edx, dword [ecx + 8]
sub edx, ebx
cmp eax, edx
jbe 0x1009a815
mov dword [esp + 4], eax
mov dword [esp], edi
call sym.nss3.dll_PL_ArenaAllocate
jmp 0x1009a81c
mov dword [esp], 4
jmp 0x1009a85e
add eax, ebx
mov dword [ecx + 0xc], eax
mov eax, ebx
test eax, eax
je 0x1009a843
mov dword [eax], edi
mov dword [eax + 4], 8
lea esi, [eax + 8]
mov dword [eax + 0xc], ebx
mov dword [eax + 8], 0x4d41524b
mov eax, dword [edi + 0x1c]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
jmp 0x1009a865
mov esi, 2
mov dword [esp], esi
call fcn.1009ac70
mov eax, dword [edi + 0x1c]
mov dword [esp], eax
call sym.nss3.dll_PR_Unlock
mov dword [esp], esi
call fcn.1009ac70
xor esi, esi
mov eax, esi
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
movaps xmm0, xmmword [0x1019c190]
movups xmmword [esp], xmm0
call fcn.10072140
mov esi, eax
jmp 0x1009a7ce