Function at 0x18005b9e0
Capabilities:
Resume thread
Suspend thread

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x8d8
movapd xmmword [rsp + 0x8c0], xmm10
movapd xmmword [rsp + 0x8b0], xmm9
movapd xmmword [rsp + 0x8a0], xmm8
movapd xmmword [rsp + 0x890], xmm7
movapd xmmword [rsp + 0x880], xmm6
mov r15, rcx
mov rax, qword [0x1800a6010]
xor rax, rsp
mov qword [rsp + 0x878], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov esi, eax
lea rcx, [0x1800a7fc0]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov dword [0x1800a7ff0], esi
mov rax, qword [0x1800a8008]
mov cl, 1
test rax, rax
je 0x18005ba68
test byte [rax + 0x39], 4
sete cl
mov byte [rsp + 0x3f], cl
mov dword [0x1800a7ff0], 0
lea rcx, [0x1800a7fc0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
lea rax, [0x180093960]
lea rsi, [rsp + 0x348]
mov qword [rsi - 8], rax
mov rcx, rsi
mov edx, 0x20000
call fcn.18006bc30
mov qword [rsi + 8], 0
mov rcx, qword [rsi]
xor ebx, ebx
mov eax, 0
test rcx, rcx
je 0x18005babd
mov eax, dword [rcx + 0x38]
lea rdi, [rsp + 0x340]
mov dword [rdi + 0x18], eax
mov qword [rdi + 0x58], rbx
lea rsi, [rsp + 0x270]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_InitializeSRWLock]
mov byte [rsi + 0x70], bl
xorpd xmm6, xmm6
movupd xmmword [rsi + 0x78], xmm6
movupd xmmword [rsi + 0x88], xmm6
mov qword [rsi + 0x98], rbx
mov eax, 1
mov qword [rsi + 0xa0], rax
mov qword [rsi + 0xa8], rax
mov qword [rsi + 0xb0], rax
movupd xmmword [rsi + 0xb8], xmm6
mov qword [rsi + 0xc8], rbx
mov rcx, rsi
mov rdx, rdi
call fcn.180068b40
mov qword [rsp + 0x130], rsi
mov byte [rsp + 0x198], bl
mov qword [rsp + 0x1b8], rbx
movupd xmmword [rsp + 0x1a0], xmm6
mov dword [rsp + 0x1b0], ebx
movabs rax, 0x7fefffffffffffff
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x1c8], rbx
mov dword [rsp + 0x1d0], ebx
mov qword [rsp + 0x1d8], rbx
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0x1e8], rbx
mov dword [rsp + 0x1f0], ebx
mov qword [rsp + 0x1f8], rbx
mov qword [rsp + 0x200], rax
mov qword [rsp + 0x208], rbx
mov dword [rsp + 0x210], ebx
mov qword [rsp + 0x218], rbx
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], rbx
mov dword [rsp + 0x230], ebx
mov qword [rsp + 0x238], rbx
mov qword [rsp + 0x240], rax
mov qword [rsp + 0x248], rbx
mov dword [rsp + 0x250], ebx
mov qword [rsp + 0x258], rbx
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], rbx
mov rcx, rsi
call fcn.18004f460
mov rax, qword [rsi + 0xa8]
mov rax, qword [rsi + 0xb0]
mov qword [rsp + 0x48], rax
mov rax, qword [rsi + 0xc0]
mov qword [rsp + 0x58], rax
cmp byte [rsi + 0x70], bl
je 0x18005bc49
lea rcx, [rsp + 0x2a0]
mov dword [rcx + 0x30], 0
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
lea rcx, [rsp + 0xf0]
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov esi, eax
lea rcx, [0x1800a7fc0]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov dword [0x1800a7ff0], esi
lea rcx, [rsp + 0xd0]
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
mov rax, qword [0x1800a8008]
test rax, rax
jne 0x18005bd7c
mov dword [0x1800a7ff0], 0
lea rcx, [0x1800a7fc0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
lea rcx, [rsp + 0x138]
call fcn.180069320
lea rcx, [rsp + 0x270]
call fcn.18004f310
mov rcx, qword [rsp + 0x398]
test rcx, rcx
je 0x18005bcf3
lea rsi, [rsp + 0x360]
cmp rcx, rsi
setne dl
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x18004aa4e.0]
mov qword [rsi + 0x38], 0
mov rsi, qword [rsp + 0x350]
mov qword [rsp + 0x350], 0
test rsi, rsi
jne 0x18005c89a
mov rsi, qword [rsp + 0x348]
mov qword [rsp + 0x348], 0
test rsi, rsi
jne 0x18005c8af
mov rcx, qword [rsp + 0x878]
xor rcx, rsp
call fcn.18004bde0
movaps xmm6, xmmword [rsp + 0x880]
movaps xmm7, xmmword [rsp + 0x890]
movaps xmm8, xmmword [rsp + 0x8a0]
movaps xmm9, xmmword [rsp + 0x8b0]
movaps xmm10, xmmword [rsp + 0x8c0]
add rsp, 0x8d8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movabs rbx, 0x8000000000000000
mov r14d, 0x210
lea r13, [rsp + 0xb8]
movsd xmm7, qword [0x180093280]
movsd xmm8, qword [0x180093288]
movsd xmm9, qword [0x180093290]
xorpd xmm10, xmm10
xor r12d, r12d
mov qword [rsp + 0x68], r15
mov ecx, dword [rax + 0x18]
cmp ecx, dword [r15 + 4]
jne 0x18005bc92
mov rdi, qword [rax + 0x78]
mov rcx, rdi
call fcn.18004f460
mov rsi, qword [rdi + 0xa8]
mov rax, qword [rdi + 0xc0]
cmp byte [rdi + 0x70], 0
je 0x18005bdfc
mov dword [rdi + 0x60], 0
add rdi, 0x30
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, qword [0x1800a8008]
add rcx, r14
mov rdx, rsi
call fcn.18006c000
mov rcx, r13
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
mov eax, dword [0x1800a7fbc]
test eax, eax
jg 0x18005c189
mov rax, qword [0x1800a8008]
cmp byte [rax + 0x208], 0
jne 0x18005c189
cmp byte [rax + 0x209], 0
jne 0x18005c189
mov rbp, qword [0x1800a8000]
lea rdi, [rsp + 0xf0]
mov rcx, rdi
mov rdx, rbp
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
mov rsi, rax
mov rcx, rdi
mov rdx, rbp
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
movabs rcx, 0x7fffffffffffffff
cmp rsi, rcx
cmovb rcx, rsi
test rsi, rsi
cmovg rsi, rbx
test rax, rax
cmovg rsi, rcx
mov r15, qword [0x1800a8008]
add r15, 0x78
mov rax, qword [0x1800a8000]
mov rcx, qword [rax + 0x50]
mov qword [rsp + 0x40], rcx
test rcx, rcx
mov qword [rsp + 0x60], rsi
je 0x18005c003
mov rdi, qword [rax + 0x48]
shl qword [rsp + 0x40], 3
xor ebp, ebp
mov rax, qword [rdi + rbp]
mov byte [rsp + 0x3a0], 0x15
mov qword [rsp + 0x3a1], rax
mov rdx, qword [r15]
lea rcx, [rsp + 0x108]
lea r8, [rsp + 0x3a0]
call fcn.180053e90
movapd xmm0, xmm7
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
je 0x18005bf1b
cmp rsi, rbx
jne 0x18005bf0e
movapd xmm0, xmm8
jmp 0x18005bf1b
mov rcx, rsi
call sym.mozglue.dll_public:_static_double___cdecl_mozilla::BaseTimeDurationPlatformUtils::ToSeconds_long_long___int64__
mulsd xmm0, xmm9
mov byte [rsp + 0x3a0], 0x12
movsd qword [rsp + 0x3a1], xmm0
mov rdx, qword [r15]
lea rcx, [rsp + 0x108]
lea r8, [rsp + 0x3a0]
call fcn.180053e90
mov rax, qword [rdi + rbp]
mov rcx, qword [rax + 0x18]
mov rsi, qword [rcx]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x18005bf5c
xor ebx, ebx
jmp 0x18005bf62
mov rax, qword [rax]
movsxd rbx, eax
mov byte [rsp + 0x3a0], 0x16
mov qword [rsp + 0x3a1], 0
mov rdx, qword [r15]
lea r13, [rsp + 0x108]
mov rcx, r13
mov r14, r15
lea r15, [rsp + 0x3a0]
mov r8, r15
call fcn.180053e90
mov byte [rsp + 0x3a0], 0x18
mov qword [rsp + 0x3a1], rsi
mov rdx, qword [r14]
mov rcx, r13
mov r8, r15
mov r15, r14
call fcn.180053e90
test rbx, rbx
je 0x18005bfe5
mov byte [rsp + 0x3a0], 0x17
mov qword [rsp + 0x3a1], rbx
mov rdx, qword [r15]
lea rcx, [rsp + 0x108]
lea r8, [rsp + 0x3a0]
call fcn.180053e90
add rbp, 8
cmp qword [rsp + 0x40], rbp
movabs rbx, 0x8000000000000000
mov rsi, qword [rsp + 0x60]
jne 0x18005bec3
lea rcx, [rsp + 0xa0]
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
mov al, byte [rsp + 0x3f]
test al, al
je 0x18005c031
mov rax, qword [0x1800a8008]
mov rdi, qword [rax + 0x1c0]
test rdi, rdi
jne 0x18005c3c5
mov qword [rsp + 0x40], r15
lea rcx, [rsp + 0x3a0]
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
mov rax, qword [0x1800a8008]
mov rcx, qword [rax + 0x70]
test rcx, rcx
je 0x18005c05a
call fcn.18006c750
lea rdi, [rsp + 0x3a0]
mov rcx, rdi
lea rsi, [rsp + 0xa0]
mov rdx, rsi
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
mov r14, rax
mov rcx, rdi
mov rdx, rsi
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
movabs rdx, 0x7fffffffffffffff
cmp r14, rdx
mov rcx, rdx
mov rdi, rdx
cmovb rcx, r14
test r14, r14
cmovg r14, rbx
test rax, rax
cmovg r14, rcx
mov rcx, rsi
lea r13, [rsp + 0xb8]
mov rdx, r13
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
mov rbp, rax
mov rcx, rsi
mov rdx, r13
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
cmp rbp, rdi
mov rcx, rdi
mov rsi, rdi
cmovb rcx, rbp
test rbp, rbp
cmovg rbp, rbx
test rax, rax
cmovg rbp, rcx
mov rcx, r13
lea r15, [rsp + 0xd0]
mov rdx, r15
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
mov rdi, rax
mov rcx, r13
mov rdx, r15
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
mov rcx, rsi
cmp rdi, rsi
cmovb rcx, rdi
test rdi, rdi
cmovg rdi, rbx
test rax, rax
cmovg rdi, rcx
mov rcx, r15
lea rdx, [rsp + 0xf0]
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
mov rsi, rax
mov rcx, r15
lea rdx, [rsp + 0xf0]
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
movabs rcx, 0x7fffffffffffffff
cmp rsi, rcx
cmovb rcx, rsi
test rsi, rsi
cmovg rsi, rbx
test rax, rax
cmovg rsi, rcx
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rbp
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x60]
mov r8, rsi
mov r9, rdi
call fcn.1800541a0
mov r15, qword [rsp + 0x68]
mov r14d, 0x210
mov dword [0x1800a7ff0], 0
lea rcx, [0x1800a7fc0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
xorps xmm0, xmm0
cvtsi2sd xmm0, dword [r15 + 8]
divsd xmm0, xmm9
ucomisd xmm0, xmm7
jb 0x18005c25e
lea rax, [rbx - 1]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x3b0], rax
movupd xmm0, xmmword [rsp + 0xf0]
movapd xmmword [rsp + 0x3a0], xmm0
lea rbp, [rsp + 0x3a0]
mov rcx, rbp
lea rdi, [rsp + 0x108]
mov rdx, rdi
call fcn.180049d60
mov rcx, rdi
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
mov rcx, rbp
mov rdx, rdi
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
mov rsi, rax
mov rcx, rbp
mov rdx, rdi
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
movabs rdx, 0x7fffffffffffffff
cmp rsi, rdx
mov rcx, rdx
cmovb rcx, rsi
test rsi, rsi
cmovg rsi, rbx
test rax, rax
cmovg rsi, rcx
sub rsi, r12
movapd xmm6, xmm7
cmp rsi, rdx
je 0x18005c28c
cmp rsi, rbx
jne 0x18005c276
movapd xmm6, xmm8
jmp 0x18005c28c
ucomisd xmm8, xmm0
jb 0x18005c3ad
mov qword [rsp + 0x108], rbx
jmp 0x18005c1c4
mov rcx, rsi
call sym.mozglue.dll_public:_static_double___cdecl_mozilla::BaseTimeDurationPlatformUtils::ToSeconds_long_long___int64__
movapd xmm6, xmm0
mulsd xmm6, xmm9
mulsd xmm6, xmm9
maxsd xmm6, xmm10
cvttsd2si rdx, xmm6
mov rcx, r15
call fcn.18005c8e0
lea rcx, [rsp + 0xd0]
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x100], rax
movupd xmm0, xmmword [rsp + 0xd0]
movapd xmmword [rsp + 0xf0], xmm0
divsd xmm6, xmm9
ucomisd xmm6, xmm7
jb 0x18005c399
lea rax, [rbx - 1]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0xe0], rax
movupd xmm0, xmmword [rsp + 0x108]
movapd xmmword [rsp + 0xd0], xmm0
lea rdi, [rsp + 0xd0]
mov rcx, rdi
mov rdx, r13
call fcn.180049d60
lea rsi, [rsp + 0xf0]
mov rcx, rsi
mov rdx, rdi
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
mov r12, rax
mov rcx, rsi
mov rdx, rdi
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
movabs rcx, 0x7fffffffffffffff
cmp r12, rcx
cmovb rcx, r12
test r12, r12
cmovg r12, rbx
test rax, rax
cmovg r12, rcx
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov esi, eax
lea rcx, [0x1800a7fc0]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov dword [0x1800a7ff0], esi
mov rcx, rdi
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
mov rax, qword [0x1800a8008]
test rax, rax
jne 0x18005bdbb
jmp 0x18005bc92
ucomisd xmm8, xmm6
jb 0x18005c3b7
mov qword [rsp + 0xb8], rbx
jmp 0x18005c2ea
call sym.mozglue.dll_public:_static_long_long___int64____cdecl_mozilla::BaseTimeDurationPlatformUtils::TicksFromMilliseconds_double_
jmp 0x18005c1bc
movapd xmm0, xmm6
call sym.mozglue.dll_public:_static_long_long___int64____cdecl_mozilla::BaseTimeDurationPlatformUtils::TicksFromMilliseconds_double_
jmp 0x18005c2e2
mov r13, qword [rax + 0x1b8]
shl rdi, 4
add rdi, r13
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x50], r12
mov r12, qword [r13]
mov rbp, qword [r13 + 8]
mov r14, qword [r12 + 0x38]
test r14, r14
je 0x18005c3f4
lock inc dword [r14 + 0x40]
mov eax, dword [r12 + 0x1c]
test eax, eax
je 0x18005c43d
mov eax, 1
mov ecx, 2
lock cmpxchg dword [r12 + 0x1c], ecx
je 0x18005c43d
mov rcx, qword [0x1800a8008]
add rcx, 0x78
lea r9, [rbp + 8]
mov r8, qword [0x1800a8000]
mov edx, dword [r14 + 0x38]
call fcn.180055e20
test al, al
je 0x18005c43d
mov r12, qword [rsp + 0x50]
jmp 0x18005c774
lea rcx, [rsp + 0x88]
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
mov rdi, qword [r15]
mov rcx, rdi
call fcn.18004f460
mov rax, qword [rdi + 0xa8]
mov qword [rsp + 0x80], rax
mov rax, qword [rdi + 0xc0]
cmp byte [rdi + 0x70], 0
je 0x18005c487
mov dword [rdi + 0x60], 0
add rdi, 0x30
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rsp + 0x40], r13
mov rdi, qword [r12 + 0x38]
test rdi, rdi
je 0x18005c49a
lock inc dword [rdi + 0x40]
mov r13, r14
mov eax, dword [rdi + 0x38]
mov rdx, qword [r15]
mov byte [rsp + 0x3a0], 0x11
mov dword [rsp + 0x3a1], eax
lea rcx, [rsp + 0x108]
lea r8, [rsp + 0x3a0]
call fcn.180053e90
mov rsi, qword [rsp + 0x108]
lock dec dword [rdi + 0x40]
jne 0x18005c4e5
mov rcx, rdi
call fcn.1800258f0
mov rcx, rdi
call sym.mozglue.dll__aligned_free
mov qword [rsp + 0x78], rsi
mov qword [rbp + 8], rsi
mov byte [rbp + 0x10], 1
mov rbp, qword [0x1800a8000]
lea r14, [rsp + 0x88]
mov rcx, r14
mov rdx, rbp
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
mov rdi, rax
mov rcx, r14
mov rdx, rbp
call sym.mozglue.dll_public:_unsigned_long_long_unsigned___int64____cdecl_mozilla::TimeStampValue::operator__class_mozilla::TimeStampValue_const____ptr64_const___ptr64
movabs rcx, 0x7fffffffffffffff
cmp rdi, rcx
cmovb rcx, rdi
mov rdx, rbx
test rdi, rdi
jg 0x18005c536
mov rdx, rdi
test rax, rax
jg 0x18005c53e
mov rcx, rdx
movapd xmm0, xmm7
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
mov r14, r13
mov r13, qword [rsp + 0x40]
je 0x18005c56f
cmp rcx, rbx
jne 0x18005c565
movapd xmm0, xmm8
jmp 0x18005c56f
call sym.mozglue.dll_public:_static_double___cdecl_mozilla::BaseTimeDurationPlatformUtils::ToSeconds_long_long___int64__
mulsd xmm0, xmm9
mov byte [rsp + 0x3a0], 0x12
movsd qword [rsp + 0x3a1], xmm0
mov rdx, qword [r15]
lea rcx, [rsp + 0x108]
lea r8, [rsp + 0x3a0]
call fcn.180053e90
mov rax, qword [r12 + 0x28]
mov rbp, qword [rax]
test rbp, rbp
je 0x18005c660
mov r8d, 0x4d0
lea rcx, [rsp + 0x3a0]
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_SuspendThread]
cmp eax, 0xffffffff
je 0x18005c660
mov dword [rsp + 0x3d0], 0x10000b
mov rcx, rbp
lea rdx, [rsp + 0x3a0]
call qword [sym.imp.KERNEL32.dll_GetThreadContext]
test eax, eax
je 0x18005c657
mov rax, qword [rsp + 0x498]
mov qword [rsp + 0x108], rax
movupd xmm0, xmmword [rsp + 0x438]
movupd xmmword [rsp + 0x110], xmm0
mov qword [rsp + 0x120], 0
lea rax, [rsp + 0x130]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 1
xor ecx, ecx
mov rdx, r12
lea r8, [rsp + 0x108]
mov r9, qword [rsp + 0x78]
call fcn.180070600
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_ResumeThread]
lea rcx, [rsp + 0x270]
call fcn.18004f460
mov rax, qword [rsp + 0x318]
mov rsi, qword [rsp + 0x320]
mov rdi, qword [rsp + 0x330]
cmp byte [rsp + 0x2e0], 0
je 0x18005c6a8
mov dword [rsp + 0x2d0], 0
lea rcx, [rsp + 0x2a0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
jne 0x18005c6de
call sym.mozglue.dll_class_mozilla::ProfileChunkedBuffer____ptr64___cdecl_mozilla::baseprofiler::profiler_get_core_buffer_void_
lea rcx, [0x1800a7ee8]
call fcn.18004f460
mov rdi, qword [0x1800a7f60]
test rdi, rdi
jne 0x18005c7a2
xor ebp, ebp
xor ebx, ebx
jmp 0x18005c7bf
mov ecx, 3
call fcn.180058df0
test al, al
je 0x18005c712
sub esi, dword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov edi, eax
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__getpid]
lea rcx, str._I__d__d__Stack_sample_too_big_for_local_storage__needed__u_bytes_n
mov edx, eax
mov r8d, edi
mov r9d, esi
call fcn.180058ea0
lea rsi, [rsp + 0x270]
mov rcx, rsi
call fcn.180058320
mov rcx, rsi
call fcn.18004f460
mov rax, qword [rsp + 0x318]
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x58], rax
cmp byte [rsp + 0x2e0], 0
je 0x18005c76f
mov dword [rsp + 0x2d0], 0
lea rcx, [rsp + 0x2a0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, qword [rsp + 0x70]
test r14, r14
je 0x18005c790
lock dec dword [r14 + 0x40]
jne 0x18005c790
mov rcx, r14
call fcn.1800258f0
mov rcx, r14
call sym.mozglue.dll__aligned_free
add r13, 0x10
cmp r13, rdi
jne 0x18005c3dd
jmp 0x18005c031
mov rax, qword [rdi]
mov rax, qword [rax + 8]
mov rcx, rdi
call qword [case.0x18004aa4e.0]
mov rbx, rax
mov rbp, rax
and rbp, 0xffffffffffffff00
cmp byte [0x1800a7f58], 0
je 0x18005c7df
mov dword [0x1800a7f48], 0
lea rcx, [0x1800a7f18]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test rdi, rdi
je 0x18005c8c4
sub rsi, qword [rsp + 0x48]
movzx eax, bl
or rax, rbp
cmp rsi, rax
jae 0x18005c864
call sym.mozglue.dll_class_mozilla::ProfileChunkedBuffer____ptr64___cdecl_mozilla::baseprofiler::profiler_get_core_buffer_void_
mov qword [rsp + 0x108], 0
mov byte [rsp + 0x12f], 0
lea rax, [rsp + 0x12f]
mov qword [rsp + 0x3a0], rax
lea rax, [0x1800a7ee8]
mov qword [rsp + 0x3a8], rax
lea rax, [rsp + 0x108]
mov qword [rsp + 0x3b0], rax
lea rcx, [rsp + 0x270]
lea rdx, [rsp + 0x3a0]
call fcn.18006c130
movabs rbx, 0x8000000000000000
jmp 0x18005c712
mov ecx, 3
call fcn.180058df0
test al, al
movabs rbx, 0x8000000000000000
je 0x18005c712
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov edi, eax
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__getpid]
lea rcx, str._I__d__d__Stack_sample_too_big_for_profiler_storage__needed__u_bytes_n
jmp 0x18005c705
mov rcx, rsi
call fcn.180062a80
mov rcx, rsi
call sym.mozglue.dll__aligned_free
jmp 0x18005bd10
mov rcx, rsi
call fcn.180062a80
mov rcx, rsi
call sym.mozglue.dll__aligned_free
jmp 0x18005bd2d
lea rax, str.MOZ_RELEASE_ASSERT_isSome___
mov qword [sym.mozglue.dll_gMozCrashReason], rax
int3