Function at 0x180019f40
Capabilities:
Query environment variable

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x20
mov eax, dword [0x1800a7ee4]
mov ecx, dword [0x1800a64f4]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x180019fd7
lea rcx, [0x1800a7ee4]
call fcn.18004a800
cmp dword [0x1800a7ee4], 0xffffffff
jne 0x180019fd7
lea rcx, str.MOZ_BASE_PROFILER_VERBOSE_LOGGING
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
jne 0x18001a2ab
lea rcx, str.MOZ_BASE_PROFILER_DEBUG_LOGGING
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
jne 0x18001a2b5
lea rcx, str.MOZ_BASE_PROFILER_LOGGING
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
xor ecx, ecx
test rax, rax
setne cl
lea eax, [rcx + rcx*2]
mov dword [0x1800a7ee0], eax
lea rcx, [0x1800a7ee4]
call fcn.18004a7a0
cmp dword [0x1800a7ee0], 3
jge 0x18001a1a6
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp eax, dword [0x1800a7edc]
jne 0x18001a1ca
cmp qword [0x1800a8000], 0
je 0x18001a1e3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov esi, eax
lea rcx, [0x1800a7fc0]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov dword [0x1800a7ff0], esi
cmp qword [0x1800a8008], 0
jne 0x18001a1fc
xor r15d, r15d
mov rdi, qword [0x1800a8000]
test rdi, rdi
je 0x18001a10d
mov rax, qword [rdi + 0x98]
cmp rax, 0x10
jae 0x18001a163
mov qword [rdi + 0x90], 0
mov qword [rdi + 0x98], 0xf
mov byte [rdi + 0x80], 0
mov rax, qword [rdi + 0x78]
cmp rax, 0x10
jae 0x18001a186
mov qword [rdi + 0x70], 0
mov qword [rdi + 0x78], 0xf
mov byte [rdi + 0x60], 0
mov rcx, qword [rdi + 0x48]
cmp rcx, 8
jne 0x18001a22a
mov rbx, qword [rdi + 0x30]
mov rax, qword [rdi + 0x38]
test rax, rax
jg 0x18001a235
cmp rbx, 8
jne 0x18001a26b
mov rbx, qword [rdi + 0x18]
mov rax, qword [rdi + 0x20]
test rax, rax
jle 0x18001a0f6
lea r14, [rbx + rax*8]
mov rsi, qword [rbx]
mov qword [rbx], 0
test rsi, rsi
je 0x18001a0e9
mov rcx, rsi
call fcn.18001a300
mov rcx, rsi
call sym.mozglue.dll__aligned_free
add rbx, 8
cmp rbx, r14
jb 0x18001a0ca
mov rbx, qword [rdi + 0x18]
cmp rbx, 8
je 0x18001a105
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rdi
call sym.mozglue.dll__aligned_free
xor eax, eax
mov qword [0x1800a8000], rax
mov ecx, dword [0x1800a64f4]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], rax
mov dword [0x1800a7ff0], 0
lea rcx, [0x1800a7fc0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r15, r15
jne 0x18001a279
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
mov rcx, qword [rdi + 0x80]
add rax, 0xfffffffffffff001
cmp rax, 0xffffffffffffefff
jbe 0x18001a2bf
call sym.mozglue.dll__aligned_free
jmp 0x18001a051
mov rcx, qword [rdi + 0x60]
add rax, 0xfffffffffffff001
cmp rax, 0xffffffffffffefff
jbe 0x18001a2d8
call sym.mozglue.dll__aligned_free
jmp 0x18001a07c
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov esi, eax
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__getpid]
lea rcx, str._I__d__d__profiler_shutdown_n
mov edx, eax
mov r8d, esi
call fcn.180058ea0
jmp 0x180019fe4
lea rax, str.MOZ_RELEASE_ASSERT_profiler_is_main_thread___
mov qword [sym.mozglue.dll_gMozCrashReason], rax
int3
lea rax, str.MOZ_RELEASE_ASSERT_CorePS::Exists___
mov qword [sym.mozglue.dll_gMozCrashReason], rax
int3
lea rcx, str.MOZ_PROFILER_SHUTDOWN
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x18001a21d
cmp byte [rax], 0
je 0x18001a21d
mov rcx, rax
mov dl, 1
call fcn.18005df50
call fcn.18005e310
mov r15, rax
jmp 0x18001a030
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x18001a09e
lea rsi, [rbx + rax*8]
mov r14, qword [rbx]
test r14, r14
je 0x18001a259
lock dec dword [r14 + 0x48]
je 0x18001a259
lea rcx, [r14 + 0x10]
call fcn.1800258f0
mov rcx, r14
call sym.mozglue.dll__aligned_free
add rbx, 8
cmp rbx, rsi
jb 0x18001a239
mov rbx, qword [rdi + 0x30]
jmp 0x18001a0af
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x18001a0b9
mov rcx, qword [r15 + 0x10]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [r15 + 0x10]
cmp rcx, 0xffffffffffffffff
je 0x18001a298
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, r15
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
jmp sym.mozglue.dll__aligned_free
mov eax, 5
jmp 0x180019fc5
mov eax, 4
jmp 0x180019fc5
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x18001a2f1
mov rcx, rax
jmp 0x18001a17c
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x18001a2f1
mov rcx, rax
jmp 0x18001a19c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3