Function at 0x14021ee10
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push r15
mov r9, rcx
mov rax, rdx
push r14
push r13
push r12
push rbp
mov rbp, r8
push rdi
push rsi
push rbx
sub rsp, 0x68
mov r12, qword [r8]
mov r13, qword [rdx + 0xb0]
cmp qword [rdx + 8], r13
je 0x14021ee3c
xor r13d, r13d
mov rdx, qword [r9 + 8]
mov edi, dword [rax + 0x30]
mov r14, qword [rax + 0x50]
mov rsi, qword [rax + 0x80]
test rdx, rdx
setne r8b
cmp edi, 0xffffffff
je 0x14021ee6f
test r8b, r8b
je 0x14021ee6f
movzx ecx, byte [r9 + 0x80]
shl rdi, cl
add rdi, rdx
jmp 0x14021ee71
xor edi, edi
mov ebx, dword [rax + 0x60]
cmp ebx, 0xffffffff
je 0x14021ee8e
test r8b, r8b
je 0x14021ee8e
movzx ecx, byte [r9 + 0x80]
shl rbx, cl
add rbx, rdx
jmp 0x14021ee90
xor ebx, ebx
test rdi, rdi
mov r10, qword [rax]
setne r15b
cmp r14, r13
ja 0x14021eebe
movabs rax, 0x59659dbdef4c1103
test r14, r14
sete dl
cmp r10, rax
sete al
test dl, al
je 0x14021ef1d
test r15b, r15b
je 0x14021ef1d
test r12, r12
jne 0x14021ef2b
cmp byte [0x1403e8a08], 1
jbe 0x14021ef2b
mov qword [rsp + 0x30], r13
lea rax, str._workaround_for_incoherent_flaw_of_unified_page_buffer_cache_
lea r9, str.catch_invalid__sdb_mod_txnid__lli_for_meta_txnid__lli__s_n
mov r8d, 0x2b10
mov qword [rsp + 0x38], rax
lea rax, str.free
mov ecx, 2
lea rdx, str.meta_checktxnid
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x48], r10
call fcn.14021c450
cmp rsi, r13
mov r10, qword [rsp + 0x48]
jbe 0x14021ef30
jmp 0x14021ef53
mov al, 1
cmp rsi, r13
jbe 0x14021ef32
test r12, r12
je 0x14021ef53
jmp 0x14021ef9c
cmp rsi, r13
ja 0x14021ef9c
xor eax, eax
movabs rdx, 0x59659dbdef4c1103
test rsi, rsi
sete cl
cmp r10, rdx
sete dl
test cl, dl
je 0x14021ef9e
test rbx, rbx
je 0x14021ef9e
jmp 0x14021ef24
cmp byte [0x1403e8a08], 1
jbe 0x14021ef9c
mov qword [rsp + 0x30], r13
lea rax, str._workaround_for_incoherent_flaw_of_unified_page_buffer_cache_
lea r9, str.catch_invalid__sdb_mod_txnid__lli_for_meta_txnid__lli__s_n
mov r8d, 0x2b1b
mov qword [rsp + 0x38], rax
lea rax, str.main
mov ecx, 2
lea rdx, str.meta_checktxnid
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call fcn.14021c450
xor eax, eax
test r14, r14
je 0x14021f008
test r15b, r15b
je 0x14021f008
mov rdx, qword [rdi]
cmp r14, rdx
je 0x14021f008
xor eax, eax
test r12, r12
jne 0x14021f008
cmp byte [0x1403e8a08], 1
jbe 0x14021f008
mov byte [rsp + 0x48], al
lea rax, str._workaround_for_incoherent_flaw_of_unified_page_buffer_cache_
lea r9, str.catch_invalid_root_page_txnid__lli_for__sdb_mod_txnid__lli__s_n
mov r8d, 0x2b29
mov qword [rsp + 0x38], rax
lea rax, str.free
mov ecx, 2
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rdx, str.meta_checktxnid
mov qword [rsp + 0x30], rsi
call fcn.14021c450
mov al, byte [rsp + 0x48]
test rbx, rbx
je 0x14021f06a
test rsi, rsi
je 0x14021f06a
mov rdx, qword [rbx]
cmp rsi, rdx
je 0x14021f06a
test r12, r12
jne 0x14021f075
cmp byte [0x1403e8a08], 1
jbe 0x14021f075
mov qword [rsp + 0x20], rdx
lea rax, str._workaround_for_incoherent_flaw_of_unified_page_buffer_cache_
lea r9, str.catch_invalid_root_page_txnid__lli_for__sdb_mod_txnid__lli__s_n
mov r8d, 0x2b38
mov qword [rsp + 0x38], rax
lea rax, str.main
mov ecx, 2
lea rdx, str.meta_checktxnid
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rax
call fcn.14021c450
jmp 0x14021f075
xor r12d, r12d
test al, al
jne 0x14021f0f6
cmp qword [rbp], 0
mov rax, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x58], 0
jne 0x14021f09e
call rax
mov rax, qword [rsp + 0x58]
mov qword [rbp], rax
jmp 0x14021f0ec
call rax
mov rax, qword [rsp + 0x58]
sub rax, qword [rbp]
cmp rax, 0x1999
jbe 0x14021f0ec
cmp byte [0x1403e8a08], 0
mov r12d, 0xffff87b4
je 0x14021f0f6
lea rax, str._workaround_for_incoherent_flaw_of_unified_page_buffer_cache_
lea r9, str.bailout_waiting_for_valid_snapshot__s_n
mov r8d, 0x2b4d
mov ecx, 1
mov qword [rsp + 0x20], rax
lea rdx, str.meta_waittxnid
call fcn.14021c450
jmp 0x14021f0f6
call qword [sym.imp.KERNEL32.dll_SwitchToThread]
or r12d, 0xffffffff
add rsp, 0x68
mov eax, r12d
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret