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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xa8
lea rbx, method.el::base::Writer.Writer__
lea rbp, str._home_biz_blur_src_blockchain_db_lmdb_db_lmdb.cpp
mov edx, 1
lea rdi, str.virtual_void_cryptonote::BlockchainLMDB::batch_stop__
lea rsi, [0x00871fca]
lea r8, str.blockchain.db.lmdb
mov r12, rcx
lea r13, [rsp + 0x30]
xor ecx, ecx
mov qword [rsp + 0x30], rbx
mov word [rsp + 0x58], cx
mov rcx, r13
mov dword [rsp + 0x38], 2
mov qword [rsp + 0x40], rbp
mov dword [rsp + 0x48], 0xa20
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x60], 0
mov byte [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], rsi
mov dword [rsp + 0x80], 2
mov qword [rsp + 0x88], 0
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 0
call method.el::base::Writer.construct_int__char_const__..._
cmp byte [rax + 0x38], 0
mov r14, rax
jne 0x423190
mov rcx, r13
mov qword [rsp + 0x30], rbx
call method.el::base::Writer.processDispatch__
mov r15, qword [rsp + 0x90]
mov r14, qword [rsp + 0x88]
cmp r15, r14
je 0x422e82
nop dword [rax + rax]
mov rcx, qword [r14]
lea rax, [r14 + 0x10]
cmp rcx, rax
je 0x422e71
call sym.operator_delete_void_
add r14, 0x20
cmp r15, r14
jne 0x422e60
mov r14, qword [rsp + 0x88]
test r14, r14
je 0x422e8f
mov rcx, r14
call sym.operator_delete_void_
cmp byte [r12 + 0xf4], 0
je 0x423345
cmp byte [r12 + 0xf5], 0
je 0x423322
cmp qword [r12 + 0xe8], 0
je 0x4232ff
mov rcx, r13
call method.boost::this_thread.get_id__
mov eax, dword [rsp + 0x30]
cmp dword [r12 + 0xf0], eax
jne 0x423368
mov rcx, r12
call method.cryptonote::BlockchainLMDB.check_open___const
xor edx, edx
mov rcx, r13
mov qword [rsp + 0x30], rbx
mov word [rsp + 0x58], dx
lea r8, str.blockchain.db.lmdb
mov edx, 1
mov dword [rsp + 0x38], 2
mov qword [rsp + 0x40], rbp
mov dword [rsp + 0x48], 0xa2a
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x60], 0
mov byte [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], rsi
mov dword [rsp + 0x80], 2
mov qword [rsp + 0x88], 0
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 0
call method.el::base::Writer.construct_int__char_const__..._
cmp byte [rax + 0x38], 0
mov r14, rax
jne 0x423290
mov rcx, r13
mov qword [rsp + 0x30], rbx
call method.el::base::Writer.processDispatch__
mov r15, qword [rsp + 0x90]
mov r14, qword [rsp + 0x88]
cmp r15, r14
je 0x422fba
nop word [rax + rax]
mov rcx, qword [r14]
lea rax, [r14 + 0x10]
cmp rcx, rax
je 0x422fa9
call sym.operator_delete_void_
add r14, 0x20
cmp r15, r14
jne 0x422f98
mov r14, qword [rsp + 0x88]
test r14, r14
je 0x422fc7
mov rcx, r14
call sym.operator_delete_void_
cmp qword [0x0086e6c0], 0
je 0x423278
mov rcx, r13
mov r15, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea r14, [rsp + 0x40]
call r15
mov rcx, qword [r12 + 0xe0]
mov byte [rsp + 0x40], 0
imul rax, qword [rsp + 0x30], 0x3b9aca00
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], 0
cqo
idiv qword [0x0086e6c0]
movabs rdx, 0x431bde82d7b634db
mul rdx
shr rdx, 0x12
mov qword [rsp + 0x28], rdx
mov rdx, r13
call method.cryptonote::mdb_txn_safe.commit_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____
mov rcx, qword [rsp + 0x30]
cmp rcx, r14
je 0x423041
call sym.operator_delete_void_
cmp qword [0x0086e6c0], 0
je 0x423260
mov rcx, r13
call r15
imul rax, qword [rsp + 0x30], 0x3b9aca00
mov rcx, r12
cqo
idiv qword [0x0086e6c0]
movabs rdx, 0x431bde82d7b634db
mul rdx
mov rax, rdx
shr rax, 0x12
sub rax, qword [rsp + 0x28]
add qword [r12 + 0x30], rax
call method.cryptonote::BlockchainLMDB.cleanup_batch__
xor eax, eax
mov edx, 1
mov rcx, r13
lea r8, str.blockchain.db.lmdb
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x38], 2
mov qword [rsp + 0x40], rbp
mov dword [rsp + 0x48], 0xa38
mov qword [rsp + 0x50], rdi
mov word [rsp + 0x58], ax
mov qword [rsp + 0x60], 0
mov byte [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], rsi
mov dword [rsp + 0x80], 2
mov qword [rsp + 0x88], 0
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 0
call method.el::base::Writer.construct_int__char_const__..._
cmp byte [rax + 0x38], 0
mov rsi, rax
jne 0x423210
mov rcx, r13
mov qword [rsp + 0x30], rbx
call method.el::base::Writer.processDispatch__
mov rbx, qword [rsp + 0x90]
mov r12, qword [rsp + 0x88]
cmp rbx, r12
je 0x42316c
nop dword [rax]
mov rcx, qword [r12]
lea rax, [r12 + 0x10]
cmp rcx, rax
je 0x42315b
call sym.operator_delete_void_
add r12, 0x20
cmp rbx, r12
jne 0x423148
mov r12, qword [rsp + 0x88]
test r12, r12
je 0x42317a
mov rcx, r12
call sym.operator_delete_void_
nop
add rsp, 0xa8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rax + 0x40]
mov r8d, 0x10
lea rdx, str.BlockchainLMDB::
lea rcx, [rax + 0x78]
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__long_long_
mov r15, qword [0x00939c20]
mov rax, qword [r15]
test byte [rax + 0x49], 0x20
jne 0x4232e0
cmp byte [r14 + 0x38], 0
je 0x422e39
mov rax, qword [r14 + 0x40]
mov r8d, 0xa
lea rdx, str.batch_stop
lea rcx, [rax + 0x78]
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__long_long_
mov rax, qword [r15]
test byte [rax + 0x49], 0x20
je 0x422e39
mov rcx, qword [r14 + 0x40]
mov r8d, 1
lea rdx, [0x00871f4a]
add rcx, 0x78
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__long_long_
jmp 0x422e39
mov rax, qword [rax + 0x40]
mov r8d, 0x16
lea rdx, str.batch_transaction:_end
lea rcx, [rax + 0x78]
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__long_long_
mov rax, qword [0x00939c20]
mov rax, qword [rax]
test byte [rax + 0x49], 0x20
je 0x42311f
mov rcx, qword [rsi + 0x40]
mov r8d, 1
lea rdx, [0x00871f4a]
add rcx, 0x78
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__long_long_
jmp 0x42311f
lea rcx, [0x0086e6c0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
jmp 0x42304f
lea rcx, [0x0086e6c0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
jmp 0x422fd5
mov rax, qword [rax + 0x40]
mov r8d, 0x20
lea rdx, str.batch_transaction:_committing...
lea rcx, [rax + 0x78]
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__long_long_
mov rax, qword [0x00939c20]
mov rax, qword [rax]
test byte [rax + 0x49], 0x20
je 0x422f70
mov rcx, qword [r14 + 0x40]
mov r8d, 1
lea rdx, [0x00871f4a]
add rcx, 0x78
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__long_long_
jmp 0x422f70
mov rax, qword [r14 + 0x40]
mov r8d, 1
lea rdx, [0x00871f4a]
lea rcx, [rax + 0x78]
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__long_long_
jmp 0x4231be
mov rcx, r13
lea rdx, str.batch_transaction_not_in_progress
lea rbx, sym.cryptonote::DB_ERROR::DB_ERROR__
call method.cryptonote::DB_EXCEPTION.DB_EXCEPTION_char_const_
mov rcx, r13
mov qword [rsp + 0x30], rbx
call sym.void__anonymous_namespace_::throw1_cryptonote::DB_ERROR__cryptonote::DB_ERROR_const___clone_constprop0_
mov rcx, r13
lea rdx, str.batch_transaction_not_in_progress
lea rbx, sym.cryptonote::DB_ERROR::DB_ERROR__
call method.cryptonote::DB_EXCEPTION.DB_EXCEPTION_char_const_
mov rcx, r13
mov qword [rsp + 0x30], rbx
call sym.void__anonymous_namespace_::throw1_cryptonote::DB_ERROR__cryptonote::DB_ERROR_const___clone_constprop0_
mov rcx, r13
lea rdx, str.batch_transactions_not_enabled
lea rbx, sym.cryptonote::DB_ERROR::DB_ERROR__
call method.cryptonote::DB_EXCEPTION.DB_EXCEPTION_char_const_
mov rcx, r13
mov qword [rsp + 0x30], rbx
call sym.void__anonymous_namespace_::throw0_cryptonote::DB_ERROR__cryptonote::DB_ERROR_const___clone_constprop0_
mov rcx, r13
lea rdx, str.batch_transaction_owned_by_other_thread
lea rbx, sym.cryptonote::DB_ERROR::DB_ERROR__
call method.cryptonote::DB_EXCEPTION.DB_EXCEPTION_char_const_
mov rcx, r13
mov qword [rsp + 0x30], rbx
call sym.void__anonymous_namespace_::throw1_cryptonote::DB_ERROR__cryptonote::DB_ERROR_const___clone_constprop0_
mov rcx, r13
mov r12, rax
mov qword [rsp + 0x30], rbx
call method.el::base::Writer.processDispatch__
lea rcx, [rsp + 0x88]
call method.std::vector_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::allocator_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______.vector__
mov rcx, r12
call sym._Unwind_Resume
mov rcx, qword [rsp + 0x30]
mov rbx, rax
mov rsi, rdx
cmp rcx, r14
je 0x4233c5
call sym.operator_delete_void_
mov rcx, rbx
mov rax, rsi
sub rax, 1
jne 0x42341b
call sym.__cxa_begin_catch
mov rcx, r12
call method.cryptonote::BlockchainLMDB.cleanup_batch__
call sym.__cxa_rethrow
mov r12, rax
mov rcx, r13
mov qword [rsp + 0x30], rbx
call sym.cryptonote::DB_EXCEPTION::DB_EXCEPTION__
mov rcx, r12
call sym._Unwind_Resume
mov rcx, r13
mov r12, rax
mov qword [rsp + 0x30], rbx
call method.el::base::Writer.processDispatch__
lea rcx, [rsp + 0x88]
call method.std::vector_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::allocator_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______.vector__
mov rcx, r12
call sym._Unwind_Resume
jmp 0x4233e3