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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x30
mov eax, dword [0x1009a00c]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [0x1009a804]
mov bl, 1
test eax, eax
je 0x10048182
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100468e0
mov eax, ebx
add esp, 0x30
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x1009a808
call dword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov eax, dword [0x1009a804]
mov bl, 1
test eax, eax
jne 0x10048368
mov eax, dword [0x1009a3c8]
mov ecx, dword fs:[0x2c]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x1009a810]
mov dword [ebp - 0x3c], ecx
cmp eax, dword [ecx + 4]
jle 0x100481f0
push 0x1009a810
call fcn.10046148
add esp, 4
cmp dword [0x1009a810], 0xffffffff
jne 0x100481f0
lea esi, [ebp - 0x34]
push esi
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [esi + 4]
mov dword [0x1009a80c], eax
push 0x1009a810
call fcn.100460fe
add esp, 4
mov eax, 0x1000
xor edx, edx
div dword [0x1009a80c]
test edx, edx
jne 0x100483a0
mov esi, 0x1009a814
push 0x40
push esi
push str.MALLOC_OPTIONS
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
test eax, eax
cmove esi, eax
je 0x10048269
mov al, byte [esi]
test al, al
je 0x10048269
mov dword [ebp - 0x38], 0
movsx eax, al
add eax, 0xffffffd0
cmp eax, 9
jbe 0x100483de
xor edi, edi
inc edi
mov eax, dword [ebp - 0x38]
mov al, byte [esi + eax]
movsx ecx, al
cmp ecx, 0x72
jne 0x10048378
mov byte [0x1009a76c], 1
dec edi
jne 0x1004823e
mov ecx, dword [ebp - 0x38]
mov al, byte [esi + ecx + 1]
inc ecx
mov dword [ebp - 0x38], ecx
test al, al
jne 0x1004822c
mov dword [0x1009a7d0], 0
mov eax, 0x1388
mov edi, dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
push eax
push 0x1009a7b0
call edi
xor esi, esi
mov dword [0x1009a7c8], esi
mov dword [0x1009a7cc], esi
mov eax, 0x1388
push eax
push 0x1009a770
call edi
mov dword [0x1009a788], esi
mov dword [0x1009a78c], esi
mov dword [0x1009a790], esi
mov eax, 0x1388
push eax
push 0x1009a7d4
call edi
mov dword [0x1009a800], esi
mov dword [0x1009a7f8], esi
mov dword [0x1009a74c], esi
mov dword [0x1009a750], esi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], esi
mov eax, dword [0x1009a024]
mov dword [ebp - 0x34], eax
mov eax, 0x1388
push eax
push 0x1009a72c
call edi
test eax, eax
je 0x100483c4
lea edx, [ebp - 0x34]
xor ecx, ecx
call fcn.1003b4f0
mov dword [0x1009a744], eax
test eax, eax
je 0x100483da
mov ecx, dword [ebp - 0x3c]
lea ecx, [ecx + 8]
mov dword [ecx], eax
push 0x1388
push 0x1009a794
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
mov ecx, 0x4000
call fcn.1000c400
test eax, eax
je 0x100483d0
mov esi, eax
push 0x4000
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [0x1009a7ac], esi
xor eax, eax
inc eax
xchg dword [0x1009a804], eax
call fcn.10002140
push 0x1009a808
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1004816e
cmp ecx, 0x46
jne 0x10048407
mov eax, dword [0x1009a024]
test eax, eax
je 0x10048428
add eax, eax
je 0x10048257
mov dword [0x1009a024], eax
jmp 0x10048257
mov ecx, str._jemalloc_
mov edx, str.Compile_time_page_size_does_not_divide_the_runtime_one._n
call fcn.1004cde0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_CRASH__
int3
mov dword [0x1009a744], 0
jmp 0x100483da
mov dword [0x1009a7ac], 0
xor ebx, ebx
jmp 0x10048368
xor edi, edi
lea ecx, [edi + edi*4]
lea edi, [eax + ecx*2]
mov ecx, dword [ebp - 0x38]
movsx eax, byte [esi + ecx + 1]
inc ecx
mov dword [ebp - 0x38], ecx
add eax, 0xffffffd0
cmp eax, 0xa
jb 0x100483e0
test edi, edi
je 0x1004825a
jmp 0x1004823e
cmp ecx, 0x52
jne 0x10048418
mov byte [0x1009a76c], 0
jmp 0x10048257
cmp ecx, 0x66
jne 0x10048437
shr dword [0x1009a024], 1
jmp 0x10048257
mov dword [0x1009a024], 1
jmp 0x10048257
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, 0x10090196
call fcn.1004cde0
jmp 0x10048257