Function at 0x4d9400
Capabilities:
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x3f8
mov eax, 1
mov rbx, rcx
lock xadd dword [rcx + 0x248], eax
lea r9, [0x008913db]
mov r8d, 0x10
lea rdx, [fcn.004d5400]
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x110]
lea rdi, [rsp + 0x100]
mov qword [rsp + 0x98], rcx
mov dword [rsp + 0x5c], eax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char______gnu_cxx::__to_xstring_std::__cxx11::basic_string_char__std::char_traits_char___std.allocator_char_____char__int____char__unsigned_long_long__char_const__char___un
lea r8, [0x008913e5]
xor r9d, r9d
lea rcx, [rsp + 0xf0]
lea rdx, [r8 - 7]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0xf0], rdi
call method.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_construct_char_const__char_const__char_const__std::forward_iterator_tag_
mov r9, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf8]
mov eax, 0xf
mov r8, qword [rsp + 0x118]
mov r11, rax
mov r10, qword [rsp + 0x110]
cmp r9, rdi
cmovne r11, qword [rsp + 0x100]
lea rdx, [rcx + r8]
cmp rdx, r11
jbe 0x4da880
lea rdi, [rsp + 0x120]
cmp r10, rdi
mov qword [rsp + 0x80], rdi
cmovne rax, qword [rsp + 0x120]
cmp rdx, rax
jbe 0x4da5c8
mov rcx, qword [rsp + 0x90]
mov rdx, r10
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_append_char_const__unsigned_long_long_
lea rdi, [rsp + 0x140]
lea rdx, [rax + 0x10]
mov qword [rsp + 0x130], rdi
mov rcx, qword [rax]
mov qword [rsp + 0x88], rdi
cmp rcx, rdx
je 0x4da960
mov qword [rsp + 0x130], rcx
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x140], rcx
mov rcx, qword [rax + 8]
mov qword [rsp + 0x138], rcx
mov qword [rax], rdx
mov qword [rax + 8], 0
mov byte [rax + 0x10], 0
movabs rax, 0x3fffffffffffffff
cmp qword [rsp + 0x138], rax
je 0x4dac57
lea rax, [rsp + 0x130]
mov r8d, 1
lea rdx, [0x00891248]
mov rcx, rax
mov qword [rsp + 0x68], rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_append_char_const__unsigned_long_long_
lea rdi, [rsp + 0x160]
lea rdx, [rax + 0x10]
mov qword [rsp + 0x150], rdi
mov rcx, qword [rax]
mov qword [rsp + 0x70], rdi
cmp rcx, rdx
je 0x4da978
mov qword [rsp + 0x150], rcx
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x160], rcx
mov rcx, qword [rax + 8]
lea r15, [rsp + 0x1e0]
mov qword [rsp + 0x158], rcx
mov qword [rax], rdx
mov qword [rax + 8], 0
mov byte [rax + 0x10], 0
cmp qword [rsp + 0x158], 0
jne 0x4da5e8
mov rcx, qword [rsp + 0x150]
cmp rcx, qword [rsp + 0x70]
je 0x4d9612
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x130]
cmp rcx, qword [rsp + 0x88]
je 0x4d9629
call sym.operator_delete_void_
mov rcx, qword [rsp + 0xf0]
cmp rcx, qword [rsp + 0x78]
je 0x4d963d
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x110]
cmp rcx, qword [rsp + 0x80]
je 0x4d9654
call sym.operator_delete_void_
lea rax, str._home_user_blur_src_cryptonote_basic_miner.cpp
xor r12d, r12d
mov rcx, r15
mov edx, 1
mov qword [rsp + 0x1f0], rax
lea rax, str.bool_cryptonote::miner::worker_thread__
lea r14, method.el::base::Writer.Writer__
mov qword [rsp + 0x200], rax
lea r8, [0x00891410]
lea rax, [0x00887f2f]
mov qword [rsp + 0x1e0], r14
mov dword [rsp + 0x1e8], pe_nt_image_headers64
mov dword [rsp + 0x1f8], 0x182
mov word [rsp + 0x208], r12w
mov qword [rsp + 0x210], 0
mov byte [rsp + 0x218], 0
mov qword [rsp + 0x220], 0
mov qword [rsp + 0x228], rax
mov dword [rsp + 0x230], 2
mov qword [rsp + 0x238], 0
mov qword [rsp + 0x240], 0
mov qword [rsp + 0x248], 0
call method.el::base::Writer.construct_int__char_const__..._
cmp byte [rax + 0x38], 0
mov rsi, rax
jne 0x4da900
mov rcx, r15
mov qword [rsp + 0x1e0], r14
call method.el::base::Writer.processDispatch__
mov rsi, qword [rsp + 0x240]
mov r12, qword [rsp + 0x238]
cmp rsi, r12
je 0x4d9774
nop word [rax + rax]
mov rcx, qword [r12]
lea rax, [r12 + 0x10]
cmp rcx, rax
je 0x4d9763
call sym.operator_delete_void_
add r12, 0x20
cmp rsi, r12
jne 0x4d9750
mov r12, qword [rsp + 0x238]
test r12, r12
je 0x4d9781
mov rcx, r12
call sym.operator_delete_void_
lea rax, [rbx + 0x234]
mov qword [rsp + 0x60], rax
lea rax, fcn.006ffe70
mov esi, dword [rbx + 0x234]
mov byte [rsp + 0x218], 0
mov qword [rsp + 0x1e0], 0
mov qword [rsp + 0x1e8], 0
add esi, dword [rsp + 0x5c]
mov qword [rsp + 0x1f0], 0
mov qword [rsp + 0x1f8], 0
mov qword [rsp + 0x200], 0
mov qword [rsp + 0x208], 0
mov qword [rsp + 0x210], 0
mov qword [rsp + 0x238], 0
mov qword [rsp + 0x240], 0
mov qword [rsp + 0x248], 0
mov qword [rsp + 0x250], 0
mov qword [rsp + 0x258], 0
mov qword [rsp + 0x260], 0
mov qword [rsp + 0x268], 0
mov qword [rsp + 0x270], 0
mov qword [rsp + 0x278], 0
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x288], 0
mov qword [rsp + 0x290], 0
mov qword [rsp + 0x298], 0
mov qword [rsp + 0x2c8], 0
mov qword [rsp + 0x2d0], 0
mov qword [rsp + 0x2d8], 0
mov qword [rsp + 0x2e0], 0
mov qword [rsp + 0x2e8], 0
mov qword [rsp + 0x2f0], 0
mov qword [rsp + 0x2f8], 0
mov qword [rsp + 0x300], 0
mov qword [rsp + 0x308], 0
mov qword [rsp + 0x310], 0
mov qword [rsp + 0x318], 0
mov qword [rsp + 0x320], 0
mov qword [rsp + 0x330], 0
mov qword [rsp + 0x338], 0
mov qword [rsp + 0x340], 0
mov qword [rsp + 0x348], 0
mov qword [rsp + 0x350], 0
mov qword [rsp + 0x358], 0
mov qword [rsp + 0x360], 0
mov qword [rsp + 0x368], 0
mov qword [rsp + 0x370], 0
mov qword [rsp + 0x378], 0
mov qword [rsp + 0x380], 0
mov qword [rsp + 0x388], 0
mov qword [rsp + 0x228], 1
mov qword [rsp + 0x230], 0
mov byte [rsp + 0x2a0], 0
mov byte [rsp + 0x280], 0
mov byte [rsp + 0x281], 0
mov qword [rsp + 0x3b8], 0
mov qword [rsp + 0x3c0], 0
mov qword [rsp + 0x3c8], 0
call sym.slow_hash_allocate_state
mov edi, dword [rbx]
test edi, edi
jne 0x4d9e15
lea rax, [rbx + 0x250]
xor r13d, r13d
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x160]
mov qword [rsp + 0xa8], rax
nop dword [rax]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax]
test eax, eax
jne 0x4da130
mov eax, dword [rbx + 0x230]
cmp eax, edi
je 0x4d9ccd
mov eax, dword [0x008686a0]
lea r12, [rsp + 0x170]
mov rcx, r12
mov qword [rsp + 0x170], rax
call method.void_boost::this_thread::sleep_for_long_long__boost.ratio_1ll__1000ll____boost::chrono::duration_long_long__boost::ratio_1ll__1000ll____const_
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r13d, eax
mov eax, dword [rbx + 0xc]
lea rbp, [rbx + 0xc]
cmp r13d, eax
je 0x4da5b8
mov eax, dword [rbx + 0x10]
lea rdi, [rbx + 0x10]
nop dword [rax + rax]
mov edx, eax
mov r8d, eax
mov rcx, rdi
mov esi, eax
or edx, 0x80000000
call dbg._InterlockedCompareExchange
cmp esi, eax
jne 0x4d9aa0
test eax, eax
js 0x4da228
xchg dword [rbp], r13d
mov dword [rbx + 8], 1
mov rax, qword [rbx + 0x50]
movdqu xmm0, xmmword [rbx + 0x20]
lea rdx, [rbx + 0x78]
lea rcx, [rsp + 0x238]
movdqu xmm1, xmmword [rbx + 0x30]
movdqu xmm2, xmmword [rbx + 0x40]
mov qword [rsp + 0x210], rax
movups xmmword [rsp + 0x1e0], xmm0
movups xmmword [rsp + 0x1f0], xmm1
movups xmmword [rsp + 0x200], xmm2
mov byte [rsp + 0x218], 0
mfence
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x228], rax
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x230], rax
call fcn.008093f0
lea rdx, [rbx + 0x90]
lea rcx, [rsp + 0x250]
call method.std::vector_cryptonote::tx_out__std::allocator_cryptonote::tx_out___.operator_std::vector_cryptonote::tx_out__std::allocator_cryptonote::tx_out____const_
lea rdx, [rbx + 0xa8]
lea rcx, [rsp + 0x268]
call method.std::vector_unsigned_char__std::allocator_unsigned_char___.operator_std::vector_unsigned_char__std::allocator_unsigned_char____const_
lea rdx, [rbx + 0xc8]
lea rcx, [rsp + 0x288]
mov byte [rsp + 0x280], 0
mov byte [rsp + 0x281], 0
call method.std::vector_std::vector_crypto::signature__std::allocator_crypto::signature_____std::allocator_std::vector_crypto::signature__std::allocator_crypto::signature_______.operator_std::vector_std::vector_crypto::signature__std::allocator_crypto::signat
movzx eax, byte [rbx + 0xe0]
movdqu xmm3, xmmword [rbx + 0xe1]
lea rdx, [rbx + 0x108]
lea rcx, [rsp + 0x2c8]
movdqu xmm4, xmmword [rbx + 0xf1]
mov byte [rsp + 0x2a0], al
movups xmmword [rsp + 0x2a1], xmm3
movups xmmword [rsp + 0x2b1], xmm4
call method.std::vector_std::vector_rct::ctkey__std::allocator_rct::ctkey_____std::allocator_std::vector_rct::ctkey__std::allocator_rct::ctkey_______.operator_std::vector_std::vector_rct::ctkey__std::allocator_rct::ctkey_____std::allocator_std::vector_rct::ct
lea rdx, [rbx + 0x120]
lea rcx, [rsp + 0x2e0]
call method.std::vector_rct::key__std::allocator_rct::key___.operator_std::vector_rct::key__std::allocator_rct::key____const_
lea rdx, [rbx + 0x138]
lea rcx, [rsp + 0x2f8]
call method.std::vector_rct::ecdhTuple__std::allocator_rct::ecdhTuple___.operator_std::vector_rct::ecdhTuple__std::allocator_rct::ecdhTuple____const_
lea rdx, [rbx + 0x150]
lea rcx, [rsp + 0x310]
call method.std::vector_rct::ctkey__std::allocator_rct::ctkey___.operator_std::vector_rct::ctkey__std::allocator_rct::ctkey____const_
mov rax, qword [rbx + 0x168]
lea rdx, [rbx + 0x170]
lea rcx, [rsp + 0x330]
mov qword [rsp + 0x328], rax
call method.std::vector_rct::rangeSig__std::allocator_rct::rangeSig___.operator_std::vector_rct::rangeSig__std::allocator_rct::rangeSig____const_
lea rdx, [rbx + 0x188]
lea rcx, [rsp + 0x348]
call method.std::vector_rct::Bulletproof__std::allocator_rct::Bulletproof___.operator_std::vector_rct::Bulletproof__std::allocator_rct::Bulletproof____const_
lea rdx, [rbx + 0x1a0]
lea rcx, [rsp + 0x360]
call method.std::vector_rct::mgSig__std::allocator_rct::mgSig___.operator_std::vector_rct::mgSig__std::allocator_rct::mgSig____const_
lea rdx, [rbx + 0x1b8]
lea rcx, [rsp + 0x378]
call method.std::vector_rct::key__std::allocator_rct::key___.operator_std::vector_rct::key__std::allocator_rct::key____const_
movzx eax, byte [rbx + 0xc0]
test al, al
jne 0x4da1f8
movzx eax, byte [rbx + 0xc1]
test al, al
jne 0x4da1d8
lea rdx, [rbx + 0x1f8]
lea rcx, [rsp + 0x3b8]
call method.std::vector_crypto::hash__std::allocator_crypto::hash___.operator_std::vector_crypto::hash__std::allocator_crypto::hash____const_
movzx eax, byte [rbx + 0x58]
test al, al
jne 0x4da1a8
mov rax, qword [rbx + 0x240]
mov r13, qword [rbx + 0x238]
mov qword [rsp + 0x50], rax
mov eax, dword [rbx + 8]
sub eax, 1
mov dword [rbx + 8], eax
je 0x4da190
mov edi, dword [rbx + 0x230]
mov rax, qword [rsp + 0x60]
mov esi, dword [rax]
add esi, dword [rsp + 0x5c]
test edi, edi
jne 0x4d9f80
lea rax, str._home_user_blur_src_cryptonote_basic_miner.cpp
xor ebp, ebp
lea r12, [rsp + 0x170]
mov edx, 1
mov qword [rsp + 0x180], rax
lea rax, str.bool_cryptonote::miner::worker_thread__
mov rcx, r12
lea r8, str.miner
mov qword [rsp + 0x190], rax
lea rax, [0x00887f2f]
mov qword [rsp + 0x170], r14
mov dword [rsp + 0x178], 4
mov dword [rsp + 0x188], 0x19e
mov word [rsp + 0x198], bp
mov qword [rsp + 0x1a0], 0
mov byte [rsp + 0x1a8], 0
mov qword [rsp + 0x1b0], 0
mov qword [rsp + 0x1b8], rax
mov dword [rsp + 0x1c0], 2
mov qword [rsp + 0x1c8], 0
mov qword [rsp + 0x1d0], 0
mov qword [rsp + 0x1d8], 0
call method.el::base::Writer.construct_int__char_const__..._
cmp byte [rax + 0x38], 0
mov rbp, rax
jne 0x4da140
mov rcx, r12
mov qword [rsp + 0x170], r14
call method.el::base::Writer.processDispatch__
mov rbp, qword [rsp + 0x1d0]
mov r12, qword [rsp + 0x1c8]
cmp rbp, r12
je 0x4d9df4
nop word [rax + rax]
mov rcx, qword [r12]
lea rax, [r12 + 0x10]
cmp rcx, rax
je 0x4d9de3
call sym.operator_delete_void_
add r12, 0x20
cmp rbp, r12
jne 0x4d9dd0
mov r12, qword [rsp + 0x1c8]
test r12, r12
je 0x4d9e01
mov rcx, r12
call sym.operator_delete_void_
mov ecx, 0x3e8
call method.epee::misc_utils.sleep_no_w_long_
mov eax, dword [rbx]
test eax, eax
je 0x4d9a40
call sym.slow_hash_free_state
lea rax, str._home_user_blur_src_cryptonote_basic_miner.cpp
lea r12, [rsp + 0x170]
mov edx, 1
mov qword [rsp + 0x170], r14
mov qword [rsp + 0x180], rax
mov rcx, r12
lea rax, str.bool_cryptonote::miner::worker_thread__
lea r8, [0x00891410]
mov qword [rsp + 0x190], rax
xor eax, eax
mov word [rsp + 0x198], ax
lea rax, [0x00887f2f]
mov dword [rsp + 0x178], pe_nt_image_headers64
mov dword [rsp + 0x188], 0x1ba
mov qword [rsp + 0x1a0], 0
mov byte [rsp + 0x1a8], 0
mov qword [rsp + 0x1b0], 0
mov qword [rsp + 0x1b8], rax
mov dword [rsp + 0x1c0], 2
mov qword [rsp + 0x1c8], 0
mov qword [rsp + 0x1d0], 0
mov qword [rsp + 0x1d8], 0
call method.el::base::Writer.construct_int__char_const__..._
cmp byte [rax + 0x38], 0
mov rbx, rax
jne 0x4da898
mov rcx, r12
mov qword [rsp + 0x170], r14
call method.el::base::Writer.processDispatch__
mov rbx, qword [rsp + 0x1d0]
mov r12, qword [rsp + 0x1c8]
cmp rbx, r12
je 0x4d9f34
nop dword [rax]
mov rcx, qword [r12]
lea rax, [r12 + 0x10]
cmp rcx, rax
je 0x4d9f23
call sym.operator_delete_void_
add r12, 0x20
cmp rbx, r12
jne 0x4d9f10
mov r12, qword [rsp + 0x1c8]
test r12, r12
je 0x4d9f41
mov rcx, r12
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x3b8]
test rcx, rcx
je 0x4d9f53
call sym.operator_delete_void_
lea rcx, [rsp + 0x220]
call fcn.006ffe70
mov eax, 1
add rsp, 0x3f8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea r12, [rsp + 0xd0]
mov r8, qword [rsp + 0x50]
mov rcx, r15
mov dword [rsp + 0x210], esi
mov rdx, r12
call method.cryptonote.get_block_longhash_cryptonote::block_const__crypto::hash__unsigned_long_long_
mov rdx, r13
mov rcx, r12
call method.cryptonote.check_hash_crypto::hash_const__unsigned_long_long_
test al, al
je 0x4da118
add qword [rbx + 0x320], 1
lea rax, str._home_user_blur_src_cryptonote_basic_miner.cpp
xor r11d, r11d
mov edx, 1
mov qword [rsp + 0x180], rax
lea r12, [rsp + 0x170]
lea rax, str.bool_cryptonote::miner::worker_thread__
mov qword [rsp + 0x190], rax
lea r8, [0x00891410]
lea rax, [0x00887f2f]
mov rcx, r12
mov qword [rsp + 0x170], r14
mov dword [rsp + 0x178], pe_nt_image_headers64
mov dword [rsp + 0x188], 0x1ab
mov word [rsp + 0x198], r11w
mov qword [rsp + 0x1a0], 0
mov byte [rsp + 0x1a8], 0
mov qword [rsp + 0x1b0], 0
mov qword [rsp + 0x1b8], rax
mov dword [rsp + 0x1c0], 2
mov qword [rsp + 0x1c8], 0
mov qword [rsp + 0x1d0], 0
mov qword [rsp + 0x1d8], 0
call method.el::base::Writer.construct_int__char_const__..._
cmp byte [rax + 0x38], 0
mov rbp, rax
jne 0x4da840
mov rcx, qword [rsp + 0x68]
mov rdx, r15
call method.cryptonote.get_block_hash_cryptonote::block_const_
cmp byte [rbp + 0x38], 0
jne 0x4da738
mov rcx, r12
mov qword [rsp + 0x170], r14
call method.el::base::Writer.processDispatch__
mov rbp, qword [rsp + 0x1d0]
mov r12, qword [rsp + 0x1c8]
cmp rbp, r12
je 0x4da0ec
nop dword [rax]
mov rcx, qword [r12]
lea rax, [r12 + 0x10]
cmp rcx, rax
je 0x4da0db
call sym.operator_delete_void_
add r12, 0x20
cmp rbp, r12
jne 0x4da0c8
mov r12, qword [rsp + 0x1c8]
test r12, r12
je 0x4da0f9
mov rcx, r12
call sym.operator_delete_void_
mov rcx, qword [rbx + 0x2a0]
mov rdx, r15
mov rax, qword [rcx]
call qword [rax]
test al, al
jne 0x4da2f0
sub qword [rbx + 0x320], 1
mov eax, dword [rbx + 0x24c]
add esi, eax
lock add qword [rbx + 0x350], 1
jmp 0x4d9e0b
mov ecx, 0x64
call method.epee::misc_utils.sleep_no_w_long_
jmp 0x4d9e0b
mov rax, qword [rax + 0x40]
mov r8d, 0x1a
lea rdx, str.Block_template_not_set_yet
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 [0x0099e5d0]
mov rax, qword [rax]
test byte [rax + 0x49], 0x20
je 0x4d9da2
mov rcx, qword [rbp + 0x40]
mov r8d, 1
lea rdx, [0x00887e22]
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 0x4d9da2
xchg dword [rbp], eax
lea rcx, [rbx + 0x10]
call method.boost::detail::basic_timed_mutex.unlock__
jmp 0x4d9cbc
movdqu xmm5, xmmword [rbx + 0x210]
movups xmmword [rsp + 0x3d0], xmm5
movdqu xmm5, xmmword [rbx + 0x220]
movups xmmword [rsp + 0x3e0], xmm5
mov byte [rsp + 0x218], 1
jmp 0x4d9c9a
mov rax, qword [rbx + 0x1f0]
mov qword [rsp + 0x3b0], rax
mov byte [rsp + 0x281], 1
jmp 0x4d9c7a
movdqu xmm5, xmmword [rbx + 0x1d0]
movups xmmword [rsp + 0x390], xmm5
movdqu xmm5, xmmword [rbx + 0x1e0]
movups xmmword [rsp + 0x3a0], xmm5
mov byte [rsp + 0x280], 1
jmp 0x4d9c6b
mov esi, dword [rbx + 0x10]
jmp 0x4da232
mov esi, eax
mov ecx, esi
mov edx, esi
lea eax, [rsi + 1]
sar ecx, 0x1f
or edx, 0x80000000
and ecx, 1
cmovne edx, eax
mov eax, esi
lock cmpxchg dword [rdi], edx
cmp eax, esi
jne 0x4da230
test cl, cl
cmovne esi, edx
test esi, esi
jns 0x4d9ac1
lea rax, [rbx + 0x18]
mov qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x18]
mov qword [rsp + 0x50], rax
test rax, rax
je 0x4daa77
mov r12, qword [sym.imp.KERNEL32.dll_WaitForSingleObjectEx]
nop dword [rax]
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
mov edx, 0xffffffff
call r12
and esi, 0x7fffffff
or esi, 0x40000000
test esi, esi
js 0x4da2d3
nop dword [rax + rax]
lea edx, [rsi - 1]
mov eax, esi
and edx, 0x3fffffff
or edx, 0x80000000
lock cmpxchg dword [rdi], edx
cmp eax, esi
je 0x4d9ac1
mov esi, eax
test esi, esi
jns 0x4da2b0
mov edx, esi
mov eax, esi
and edx, 0xbfffffff
lock cmpxchg dword [rdi], edx
cmp eax, esi
je 0x4da288
mov esi, eax
jmp 0x4da2cf
mov r8, qword [rbx + 0x330]
test r8, r8
je 0x4da118
mov rdx, qword [rbx + 0x328]
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x90]
add r8, rdx
mov qword [rsp + 0xf0], rax
call fcn.004d5530
movabs rax, 0x3fffffffffffffff
cmp qword [rsp + 0xf8], rax
je 0x4dac63
mov rcx, qword [rsp + 0x90]
mov r8d, 1
lea rdx, [0x00891487]
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_append_char_const__unsigned_long_long_
movabs rax, 0x3fffffffffffffff
sub rax, qword [rsp + 0xf8]
cmp rax, 0xe
jbe 0x4dac3b
mov rcx, qword [rsp + 0x90]
mov r8d, 0xf
lea rdx, str.miner_conf.json
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_append_char_const__unsigned_long_long_
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x110], rdx
mov rcx, qword [rax]
lea rdx, [rax + 0x10]
cmp rcx, rdx
je 0x4daac6
mov qword [rsp + 0x110], rcx
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x120], rcx
mov rcx, qword [rax + 8]
mov r9d, 1
xor r8d, r8d
mov qword [rsp + 0x118], rcx
lea rcx, [rbx + 0x320]
mov qword [rax], rdx
mov rdx, qword [rsp + 0x68]
mov qword [rax + 8], 0
mov byte [rax + 0x10], 0
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x138], 0
mov qword [rsp + 0x130], rax
mov byte [rsp + 0x140], 0
call sym._ZN4epee13serialization15store_t_to_jsonIN10cryptonote5miner12miner_configEEEbRT_RNSt7__cxx1112basic_stringIcSt11char_traitsIc
mov rdx, qword [rsp + 0x98]
lea r12, [rsp + 0x180]
xor r10d, r10d
lea rcx, [rsp + 0x150]
mov qword [rsp + 0x170], r12
mov qword [rsp + 0x178], 0
mov word [rsp + 0x180], r10w
call method.epee::string_tools.utf8_to_utf16_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x150]
mov r8, qword [rsp + 0x158]
cmp rax, qword [rsp + 0x70]
je 0x4daba2
mov rdx, qword [rsp + 0x160]
cmp rcx, r12
je 0x4dabe7
mov r9, qword [rsp + 0x180]
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], r8
mov qword [rsp + 0x180], rdx
test rcx, rcx
je 0x4dabff
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x160], r9
mov qword [rsp + 0x158], 0
xor edx, edx
mov word [rcx], dx
mov rcx, qword [rsp + 0x150]
cmp rcx, qword [rsp + 0x70]
je 0x4da4e8
call sym.operator_delete_void_
mov qword [rsp + 0x30], 0
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [rsp + 0x170]
mov dword [rsp + 0x28], pe_nt_image_headers64
mov edx, 0x40000000
mov dword [rsp + 0x20], 2
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbp, rax
cmp rax, 0xffffffffffffffff
je 0x4da556
mov qword [rsp + 0x20], 0
mov r8d, dword [rsp + 0x138]
mov rcx, rax
lea r9, [rsp + 0xcc]
mov rdx, qword [rsp + 0x130]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x170]
cmp rcx, r12
je 0x4da568
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x130]
cmp rcx, qword [rsp + 0x88]
je 0x4da57f
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x110]
cmp rcx, qword [rsp + 0x80]
je 0x4da596
call sym.operator_delete_void_
mov rcx, qword [rsp + 0xf0]
cmp rcx, qword [rsp + 0x78]
je 0x4da118
call sym.operator_delete_void_
jmp 0x4da118
add dword [rbx + 8], 1
jmp 0x4d9acc
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x98]
xor r8d, r8d
xor edx, edx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_replace_unsigned_long_long__unsigned_long_long__char_const__unsigned_long_long_
jmp 0x4d9502
mov rax, qword [0x0099e5d0]
mov rdi, qword [rax]
lea rax, [rdi + 0x10]
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x48], rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea r15, [rsp + 0x1e0]
mov rcx, r15
call fcn.0081e4e0
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov edx, eax
lea rcx, [rsp + 0x1f0]
call method.std::ostream_std::ostream._M_insert_unsigned_long__unsigned_long_
lea r12, [rsp + 0x170]
lea rdx, [rsp + 0x1f8]
mov rcx, r12
call method.std::__cxx11::basic_stringbuf_char__std::char_traits_char___std::allocator_char___.str___const
mov rcx, r15
lea r13, [rdi + 0x140]
call fcn.0081ef80
mov r14, qword [rdi + 0x148]
mov qword [rsp + 0x50], r13
test r14, r14
je 0x4da98a
mov rbp, qword [rsp + 0x178]
mov rdi, qword [rsp + 0x170]
jmp 0x4da689
mov r14, qword [r14 + 0x18]
test r14, r14
je 0x4da6da
mov rsi, qword [r14 + 0x28]
mov r8, rbp
cmp rsi, rbp
cmovbe r8, rsi
test r8, r8
je 0x4da6ac
mov rcx, qword [r14 + 0x20]
mov rdx, rdi
call sym.memcmp
test eax, eax
jne 0x4da6ca
sub rsi, rbp
mov eax, 0x80000000
cmp rsi, rax
jge 0x4da6ce
movabs rax, 0xffffffff7fffffff
cmp rsi, rax
jle 0x4da680
mov eax, esi
test eax, eax
js 0x4da680
mov r13, r14
mov r14, qword [r14 + 0x10]
test r14, r14
jne 0x4da689
cmp qword [rsp + 0x50], r13
je 0x4da98f
mov rcx, r12
lea rdx, [r13 + 0x20]
lea r12, [rsp + 0x180]
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.compare_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__const
test eax, eax
js 0x4da98f
lea rdx, [rsp + 0x150]
lea rcx, [r13 + 0x40]
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_assign_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, qword [rsp + 0x170]
cmp rcx, r12
je 0x4da724
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x4d95fe
mov rax, qword [rbp + 0x40]
lea rdx, [rsp + 0xb0]
mov qword [rsp + 0xb8], 0x20
lea rcx, [rax + 0x78]
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xb0], rax
call method.epee::to_hex.formatted_std::ostream__epee::span_unsigned_char_const__
mov rax, qword [0x0099e5d0]
mov rax, qword [rax]
test byte [rax + 0x49], 0x20
jne 0x4dab20
cmp byte [rbp + 0x38], 0
je 0x4da0a0
lea rax, [rbp + 0x40]
lea rdx, str._at_height
mov rcx, rax
mov qword [rsp + 0xa0], rax
call method.el::base::MessageBuilder.operator___char_const_
cmp byte [rbp + 0x38], 0
je 0x4da0a0
mov rax, qword [rbp + 0x40]
mov rdx, qword [rsp + 0x50]
lea rcx, [rax + 0x78]
call method.std::ostream_std::ostream._M_insert_unsigned_long_long__unsigned_long_long_
mov rax, qword [0x0099e5d0]
mov rax, qword [rax]
test byte [rax + 0x49], 0x20
jne 0x4dab00
cmp byte [rbp + 0x38], 0
je 0x4da0a0
mov rcx, qword [rsp + 0xa0]
lea rdx, str._for_difficulty:
call method.el::base::MessageBuilder.operator___char_const_
cmp byte [rbp + 0x38], 0
je 0x4da0a0
mov rax, qword [rbp + 0x40]
mov rdx, r13
lea rcx, [rax + 0x78]
call method.std::ostream_std::ostream._M_insert_unsigned_long_long__unsigned_long_long_
mov rax, qword [0x0099e5d0]
mov rax, qword [rax]
test byte [rax + 0x49], 0x20
jne 0x4daae0
cmp byte [rbp + 0x38], 0
je 0x4da0a0
mov rcx, qword [rsp + 0xa0]
lea rdx, [0x00891482]
call method.el::base::MessageBuilder.operator___char_const_
jmp 0x4da0a0
lea rax, [rax + 0x40]
lea rdx, str.e_1_1_92m
mov rcx, rax
mov qword [rsp + 0xa0], rax
call method.el::base::MessageBuilder.operator___char_const_
cmp byte [rbp + 0x38], 0
je 0x4da089
mov rcx, qword [rsp + 0xa0]
lea rdx, str.Found_block
call method.el::base::MessageBuilder.operator___char_const_
jmp 0x4da089
lea rax, [rsp + 0x120]
mov qword [rsp + 0x80], rax
jmp 0x4d94f2
lea r13, [rax + 0x40]
lea rdx, str.Miner_thread_stopped__
mov rcx, r13
call method.el::base::MessageBuilder.operator___char_const_
cmp byte [rbx + 0x38], 0
je 0x4d9ee7
mov rax, qword [rbx + 0x40]
mov edx, dword [rsp + 0x5c]
lea rcx, [rax + 0x78]
call method.std::ostream_std::ostream._M_insert_unsigned_long__unsigned_long_
mov rax, qword [0x0099e5d0]
mov rax, qword [rax]
test byte [rax + 0x49], 0x20
jne 0x4dab60
cmp byte [rbx + 0x38], 0
je 0x4d9ee7
lea rdx, [0x00891248]
mov rcx, r13
call method.el::base::MessageBuilder.operator___char_const_
jmp 0x4d9ee7
lea r12, [rax + 0x40]
lea rdx, str.Miner_thread_was_started__
mov rcx, r12
call method.el::base::MessageBuilder.operator___char_const_
cmp byte [rsi + 0x38], 0
je 0x4d9722
mov rax, qword [rsi + 0x40]
mov edx, dword [rsp + 0x5c]
lea rcx, [rax + 0x78]
call method.std::ostream_std::ostream._M_insert_unsigned_long__unsigned_long_
mov rax, qword [0x0099e5d0]
mov rax, qword [rax]
test byte [rax + 0x49], 0x20
jne 0x4dab40
cmp byte [rsi + 0x38], 0
je 0x4d9722
lea rdx, [0x00891248]
mov rcx, r12
call method.el::base::MessageBuilder.operator___char_const_
jmp 0x4d9722
movdqu xmm0, xmmword [rax + 0x10]
movups xmmword [rsp + 0x140], xmm0
jmp 0x4d953e
movdqu xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x160], xmm1
jmp 0x4d95cc
mov r13, qword [rsp + 0x50]
mov ecx, 0x60
lea r12, [rsp + 0x180]
call sym.operator_new_unsigned_long_long_
lea rsi, [rax + 0x30]
mov r14, rax
lea r12, [rsp + 0x180]
mov qword [rax + 0x20], rsi
mov rax, qword [rsp + 0x170]
cmp rax, r12
je 0x4daa64
mov qword [r14 + 0x20], rax
mov rax, qword [rsp + 0x180]
mov qword [r14 + 0x30], rax
mov rbp, qword [rsp + 0x60]
lea rdi, [r14 + 0x50]
mov r8, r13
lea r9, [r14 + 0x20]
mov rax, qword [rsp + 0x178]
mov qword [r14 + 0x40], rdi
lea rcx, [rsp + 0xb0]
mov qword [r14 + 0x48], 0
add rbp, 0x138
mov qword [r14 + 0x28], rax
mov rdx, rbp
mov byte [r14 + 0x50], 0
mov qword [rsp + 0x170], r12
mov qword [rsp + 0x178], 0
mov byte [rsp + 0x180], 0
call sym._ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIS5_ESaIS8_EE29_M
mov r8, qword [rsp + 0xb8]
mov r13, qword [rsp + 0xb0]
test r8, r8
je 0x4dab79
mov rdx, r13
mov r9, r14
mov rcx, rbp
call sym._ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIS5_ESaIS8_EE14_M
mov r13, rax
jmp 0x4da701
movdqu xmm2, xmmword [rsp + 0x180]
movups xmmword [r14 + 0x30], xmm2
jmp 0x4da9d5
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventA]
mov qword [rsp + 0x50], rax
test rax, rax
je 0x4dac47
mov rcx, qword [rsp + 0x50]
xor eax, eax
lea rdx, [rbx + 0x18]
lock cmpxchg qword [rdx], rcx
mov r12, rax
test rax, rax
je 0x4da27a
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsp + 0x50], r12
jmp 0x4da27a
movdqu xmm3, xmmword [rax + 0x10]
movups xmmword [rsp + 0x120], xmm3
jmp 0x4da3c0
mov rax, qword [rbp + 0x40]
lea rdx, [0x00887e22]
lea rcx, [rax + 0x78]
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
jmp 0x4da81b
mov rax, qword [rbp + 0x40]
lea rdx, [0x00887e22]
lea rcx, [rax + 0x78]
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
jmp 0x4da7cf
mov rax, qword [rbp + 0x40]
mov r8d, 1
lea rdx, [0x00887e22]
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 0x4da77a
mov rax, qword [rsi + 0x40]
lea rdx, [0x00887e22]
lea rcx, [rax + 0x78]
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
jmp 0x4da942
mov rax, qword [rbx + 0x40]
lea rdx, [0x00887e22]
lea rcx, [rax + 0x78]
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
jmp 0x4da8da
mov rcx, qword [r14 + 0x40]
cmp rdi, rcx
je 0x4dab87
call sym.operator_delete_void_
mov rcx, qword [r14 + 0x20]
cmp rsi, rcx
je 0x4dab95
call sym.operator_delete_void_
mov rcx, r14
call sym.operator_delete_void_
jmp 0x4da701
test r8, r8
je 0x4dabca
cmp r8, 1
je 0x4dac1e
mov rdx, qword [rsp + 0x70]
add r8, r8
call sym.memcpy
mov r8, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x170]
xor r9d, r9d
mov qword [rsp + 0x178], r8
mov word [rcx + r8*2], r9w
mov rcx, qword [rsp + 0x150]
jmp 0x4da4c3
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], r8
mov qword [rsp + 0x180], rdx
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xa8]
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x70], rcx
jmp 0x4da4c3
movzx eax, word [rsp + 0x160]
mov word [rcx], ax
mov r8, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x170]
jmp 0x4dabca
lea rcx, [0x00887e0a]
call method.std.__throw_length_error_char_const_
mov rcx, r12
call method.boost::thread_resource_error.thread_resource_error__
mov rcx, r12
call method.void_boost::throw_exception_boost.thread_resource_error__boost::thread_resource_error_const_
lea rcx, [0x00887e0a]
call method.std.__throw_length_error_char_const_
lea rcx, [0x00887e0a]
call method.std.__throw_length_error_char_const_
mov rbx, rax
mov rcx, r12
lea rax, method.boost::thread_exception.thread_exception__
mov qword [rsp + 0x170], rax
call sym.boost::system::system_error::system_error__
mov rcx, r15
call method.cryptonote::block.block__
mov rcx, rbx
call sym._Unwind_Resume
mov rcx, qword [rsp + 0x170]
mov rbx, rax
cmp rcx, r12
je 0x4dacae
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x130]
cmp rcx, qword [rsp + 0x88]
je 0x4dacc5
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x110]
cmp rcx, qword [rsp + 0x80]
je 0x4dacdc
call sym.operator_delete_void_
mov rcx, qword [rsp + 0xf0]
cmp rcx, qword [rsp + 0x78]
je 0x4dac89
call sym.operator_delete_void_
jmp 0x4dac89