Function at 0x1002ec70
Capabilities:
Get system information on windows
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x2c
mov eax, dword [0x1007a00c]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [0x1007a708]
mov bl, 1
test eax, eax
je 0x1002eca2
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1002cad0
mov eax, ebx
add esp, 0x2c
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x1007a734
call dword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
mov eax, dword [0x1007a708]
mov bl, 1
test eax, eax
jne 0x1002ee88
mov eax, dword [0x1007a73c]
mov ecx, dword [0x1007a2f0]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jle 0x1002ed0e
push 0x1007a73c
call fcn.1002d432
add esp, 4
cmp dword [0x1007a73c], 0xffffffff
jne 0x1002ed0e
lea esi, [ebp - 0x34]
push esi
call dword [sym.imp.kernel32.dll_GetSystemInfo]
mov eax, dword [esi + 4]
mov dword [0x1007a738], eax
push 0x1007a73c
call fcn.1002d432
add esp, 4
mov eax, 0x1000
xor edx, edx
div dword [0x1007a738]
test edx, edx
jne 0x1002eec0
mov edi, 0x1007a740
push 0x40
push edi
push str.MALLOC_OPTIONS
call dword [sym.imp.kernel32.dll_GetEnvironmentVariableA]
test eax, eax
cmove edi, eax
je 0x1002ed84
mov al, byte [edi]
test al, al
je 0x1002ed84
xor esi, esi
movsx ecx, al
add ecx, 0xffffffd0
cmp ecx, 9
jbe 0x1002eefe
xor ecx, ecx
inc ecx
mov dword [ebp - 0x38], ecx
dec dword [ebp - 0x38]
movsx ecx, al
cmp ecx, 0x72
jne 0x1002ee98
mov byte [0x1007a674], 1
cmp dword [ebp - 0x38], 0
je 0x1002ed7b
mov al, byte [edi + esi]
jmp 0x1002ed5a
mov al, byte [edi + esi + 1]
inc esi
test al, al
jne 0x1002ed45
mov dword [0x1007a6e8], 0
mov eax, 0x1388
mov esi, dword [sym.imp.kernel32.dll_InitializeCriticalSectionAndSpinCount]
push eax
push 0x1007a6ec
call esi
xor edi, edi
mov dword [0x1007a780], edi
mov dword [0x1007a704], edi
mov eax, 0x1388
push eax
push 0x1007a678
call esi
mov dword [0x1007a690], edi
mov dword [0x1007a694], edi
mov dword [0x1007a698], edi
mov dword [0x1007a6e4], edi
mov dword [0x1007a6dc], edi
mov eax, 0x1388
push eax
push 0x1007a6b8
call esi
mov dword [0x1007a72c], edi
mov dword [0x1007a730], edi
mov dword [ebp - 0x30], edi
mov eax, dword [0x1007a024]
mov dword [ebp - 0x34], eax
mov eax, 0x1388
push eax
push 0x1007a70c
call esi
test eax, eax
je 0x1002eee4
lea edx, [ebp - 0x34]
xor ecx, ecx
call fcn.10021bf0
mov dword [0x1007a724], eax
test eax, eax
je 0x1002eefa
mov ecx, dword [0x1007a2f0]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
mov dword [ecx + 8], eax
push 0x1388
push 0x1007a69c
call dword [sym.imp.kernel32.dll_InitializeCriticalSectionAndSpinCount]
mov ecx, 0x4000
call fcn.1000b180
test eax, eax
je 0x1002eef0
mov esi, eax
push 0x4000
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [0x1007a6b4], esi
xor eax, eax
inc eax
xchg dword [0x1007a708], eax
call fcn.100016e0
push 0x1007a734
call dword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
jmp 0x1002ec8e
cmp ecx, 0x46
jne 0x1002ef30
mov eax, dword [0x1007a024]
test eax, eax
je 0x1002ef51
add eax, eax
je 0x1002ed70
mov dword [0x1007a024], eax
jmp 0x1002ed70
mov ecx, str._jemalloc_
mov edx, str.Compile_time_page_size_does_not_divide_the_runtime_one._n
call fcn.10030280
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_CRASH__
int3
mov dword [0x1007a724], 0
jmp 0x1002eefa
mov dword [0x1007a6b4], 0
xor ebx, ebx
jmp 0x1002ee88
mov dword [ebp - 0x38], 0
mov eax, dword [ebp - 0x38]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*2]
mov dword [ebp - 0x38], eax
movsx eax, byte [edi + esi + 1]
inc esi
mov ecx, eax
add ecx, 0xffffffd0
cmp ecx, 0xa
jb 0x1002ef05
cmp dword [ebp - 0x38], 0
je 0x1002ed7b
jmp 0x1002ed5a
cmp ecx, 0x52
jne 0x1002ef41
mov byte [0x1007a674], 0
jmp 0x1002ed70
cmp ecx, 0x66
jne 0x1002ef60
shr dword [0x1007a024], 1
jmp 0x1002ed70
mov dword [0x1007a024], 1
jmp 0x1002ed70
lea ecx, [ebp - 0x34]
mov byte [ecx], al
mov byte [ecx + 1], 0
mov eax, 2
push 0xa
push str._jemalloc_
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__write]
add esp, 0xc
push 0x35
push str.:__malloc__Unsupported_character_in_malloc_options:_
mov eax, 2
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__write]
add esp, 0xc
lea ecx, [ebp - 0x34]
mov edx, 0x10071020
call fcn.10030280
jmp 0x1002ed70