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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x1800a6010]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov eax, dword [0x1800a6698]
test eax, eax
je 0x18002fe1f
mov rax, rdi
mul rsi
jo 0x1800300ca
test rax, rax
je 0x18002fdff
cmp rax, 0x1f0
ja 0x18002fdb7
mov ecx, dword [0x1800a64f4]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov rcx, qword [rcx + 8]
test rcx, rcx
je 0x18002fddb
mov rdx, rax
mov r8b, 1
call fcn.180030190
mov rsi, rax
test rax, rax
je 0x1800300ca
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.18004bde0
mov rax, rsi
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [0x1800a66c8]
cmp rax, 0xf00
jbe 0x18002fd7f
cmp rax, 0xfc000
ja 0x18002fe09
mov rdx, rax
mov r8b, 1
call fcn.180038150
jmp 0x18002fd8a
mov rcx, qword [0x1800a66c8]
mov edx, dword [0x1800a64f4]
mov rbp, qword gs:[0x58]
mov rdx, qword [rbp + rdx*8]
mov qword [rdx + 8], rcx
jmp 0x18002fd7f
mov eax, 1
jmp 0x18002fd58
mov r8d, 0x100000
mov rdx, rax
mov r9b, 1
call fcn.180004060
jmp 0x18002fd8a
lea rcx, [0x1800a66e8]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov eax, dword [0x1800a6698]
test eax, eax
jne 0x180030039
mov eax, dword [0x1800a66f8]
mov ecx, dword [0x1800a64f4]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x18002fe94
lea rcx, [0x1800a66f8]
call fcn.18004a800
cmp dword [0x1800a66f8], 0xffffffff
jne 0x18002fe94
lea rbx, [rsp + 0x20]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rbx + 4]
mov qword [0x1800a66f0], rax
lea rcx, [0x1800a66f8]
call fcn.18004a7a0
mov eax, 0x1000
xor edx, edx
div qword [0x1800a66f0]
test rdx, rdx
jne 0x180030079
lea rcx, str.MALLOC_OPTIONS
lea rbx, [0x1800a6700]
mov rdx, rbx
mov r8d, 0x40
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
xor r14d, r14d
test eax, eax
cmovne r14, rbx
je 0x18002ff1a
mov al, byte [r14]
test al, al
je 0x18002ff1a
xor r12d, r12d
movsx eax, al
add eax, 0xffffffd0
mov ebx, 1
cmp eax, 9
jbe 0x1800300dd
mov r13d, r12d
mov al, byte [r14 + r13]
movsx ecx, al
cmp ecx, 0x72
jne 0x18003004b
mov byte [0x1800a6588], 1
dec ebx
jne 0x18002fef4
inc r12d
mov al, byte [r14 + r12]
test al, al
jne 0x18002fedd
mov qword [0x1800a6658], 0
lea rcx, [0x1800a6660]
mov rbx, qword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
mov edx, 0x1388
call rbx
xor ebp, ebp
mov qword [0x1800a6690], rbp
mov qword [0x1800a6688], rbp
lea rcx, [0x1800a6590]
mov edx, 0x1388
call rbx
mov qword [0x1800a65b8], rbp
mov qword [0x1800a65c0], rbp
mov qword [0x1800a65c8], rbp
lea rcx, [0x1800a6600]
mov edx, 0x1388
call rbx
mov qword [0x1800a6650], rbp
mov qword [0x1800a6640], rbp
xorps xmm0, xmm0
movups xmmword [0x1800a66d8], xmm0
lea rcx, [0x1800a66a0]
mov dword [rsp + 0x28], 0
mov rax, qword [0x1800a6038]
mov qword [rsp + 0x20], rax
mov edx, 0x1388
call rbx
test eax, eax
je 0x1800300a5
lea rdx, [rsp + 0x20]
xor ecx, ecx
call fcn.18003dfc0
mov qword [0x1800a66c8], rax
test rax, rax
je 0x1800300bd
mov ecx, dword [0x1800a64f4]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 8], rax
lea rcx, [0x1800a65d0]
mov edx, 0x1388
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
mov ecx, 0x20
call fcn.180002210
test rax, rax
je 0x1800300b2
xorps xmm0, xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax], xmm0
mov qword [0x1800a65f8], rax
mov eax, 1
xchg dword [0x1800a6698], eax
call fcn.180002410
lea rcx, [0x1800a66e8]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x18002fd43
cmp ecx, 0x46
jne 0x180030102
mov rax, qword [0x1800a6038]
test rax, rax
je 0x180030124
add rax, rax
je 0x18002ff0b
mov qword [0x1800a6038], rax
jmp 0x18002ff0b
lea rcx, str._jemalloc_
lea rdx, str.Compile_time_page_size_does_not_divide_the_runtime_one._n
call fcn.180051bf0
lea rax, str.MOZ_CRASH__
mov qword [sym.mozglue.dll_gMozCrashReason], rax
int3
mov qword [0x1800a66c8], 0
jmp 0x1800300bd
mov qword [0x1800a65f8], 0
lea rcx, [0x1800a66e8]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], 0xc
xor esi, esi
jmp 0x18002fd96
xor ebx, ebx
lea ecx, [rbx + rbx*4]
lea ebx, [rax + rcx*2]
inc r12d
movsx eax, byte [r14 + r12]
add eax, 0xffffffd0
cmp eax, 0xa
jb 0x1800300df
test ebx, ebx
je 0x18002ff0f
jmp 0x18002fef1
cmp ecx, 0x52
jne 0x180030113
mov byte [0x1800a6588], 0
jmp 0x18002ff0b
cmp ecx, 0x66
jne 0x180030134
shr qword [0x1800a6038], 1
jmp 0x18002ff0b
mov qword [0x1800a6038], 1
jmp 0x18002ff0b
lea r15, [rsp + 0x20]
mov byte [r15], al
mov byte [r15 + 1], 0
lea rdx, str._jemalloc_
mov rbp, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__write]
mov ecx, 2
mov r8d, 0xa
call rbp
lea rdx, str.:__malloc__Unsupported_character_in_malloc_options:_
mov ecx, 2
mov r8d, 0x35
call rbp
lea rdx, [0x18009ab44]
mov rcx, r15
call fcn.180051bf0
jmp 0x18002ff0b