Function at 0x4ce1e0
Capabilities:
Write file on windows

Disassembly:
push rbp
sub rsp, 0x6c0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x650], rcx
mov qword [rbp + 0x658], rdx
mov rax, qword [0x005272c8]
test rax, rax
je 0x4ce636
mov rax, qword [rbp + 0x658]
mov eax, dword [rax + 0x268]
mov dword [rbp + 0x620], eax
mov eax, dword [rbp + 0x620]
mov ecx, eax
call dbg.get_thr_cgpu
mov qword [rbp + 0x618], rax
mov rax, qword [rbp + 0x658]
mov rax, qword [rax + 0x270]
mov qword [rbp + 0x610], rax
mov rax, qword [rbp + 0x658]
mov eax, dword [rax + 0x350]
mov dword [rbp + 0x60c], eax
mov rax, qword [rbp + 0x658]
add rax, 0x180
mov edx, 0x20
mov rcx, rax
call dbg.bin2hex
mov qword [rbp + 0x600], rax
mov rax, qword [rbp + 0x658]
add rax, 0x1a0
mov edx, 0x20
mov rcx, rax
call dbg.bin2hex
mov qword [rbp + 0x5f8], rax
movzx eax, byte [0x00526a53]
test al, al
je 0x4ce307
mov rax, qword [rbp + 0x658]
mov edx, 0x50
mov rcx, rax
call dbg.bin2hex
mov qword [rbp + 0x638], rax
mov rax, qword [rbp + 0x658]
add rax, 0x1c0
mov edx, 0x4c
mov rcx, rax
call dbg.bin2hex
mov qword [rbp + 0x630], rax
mov rax, qword [rbp + 0x658]
add rax, 0x4c
mov edx, 4
mov rcx, rax
call dbg.bin2hex
mov qword [rbp + 0x628], rax
jmp 0x4ce322
mov rax, qword [rbp + 0x658]
mov edx, 0x100
mov rcx, rax
call dbg.bin2hex
mov qword [rbp + 0x638], rax
movzx eax, byte [0x00526a53]
test al, al
je 0x4ce3ec
mov rax, qword [rbp + 0x658]
mov rax, qword [rax + 0x298]
mov r9d, eax
mov rax, qword [rbp + 0x658]
mov rcx, qword [rax + 0x2a8]
mov rax, qword [rbp + 0x658]
mov rdx, qword [rax + 0x290]
mov rax, qword [rbp + 0x610]
mov r8d, dword [rax + 0x718]
lea rax, [rbp + 0x1f0]
mov dword [rsp + 0x60], r9d
mov qword [rsp + 0x58], rcx
mov rcx, qword [rbp + 0x628]
mov qword [rsp + 0x50], rcx
mov rcx, qword [rbp + 0x630]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rbp + 0x5f8]
mov qword [rsp + 0x40], rcx
mov rcx, qword [rbp + 0x638]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rbp + 0x600]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rdx
mov rdx, qword [rbp + 0x650]
mov qword [rsp + 0x20], rdx
mov r9d, r8d
lea r8, str.odo_share:__n_odokey:__d_n_reason:__s_n_job_id:__s_n_target:__s_n_data:__s_n_hash:__s_n_job:__s_n_nonce:__s_n_ntime:__s_n_nonce2:__d_n
mov edx, 0x400
mov rcx, rax
call sym.snprintf_3
mov dword [rbp + 0x624], eax
jmp 0x4ce48a
mov rax, qword [rbp + 0x618]
mov r8d, dword [rax + 0x10]
mov rax, qword [rbp + 0x618]
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x10]
mov rax, qword [rbp + 0x610]
mov rdx, qword [rax + 0xb8]
mov r10d, dword [rbp + 0x60c]
lea rax, [rbp + 0x1f0]
mov r9, qword [rbp + 0x638]
mov qword [rsp + 0x58], r9
mov r9, qword [rbp + 0x5f8]
mov qword [rsp + 0x50], r9
mov r9d, dword [rbp + 0x620]
mov dword [rsp + 0x48], r9d
mov dword [rsp + 0x40], r8d
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
mov rdx, qword [rbp + 0x600]
mov qword [rsp + 0x28], rdx
mov rdx, qword [rbp + 0x650]
mov qword [rsp + 0x20], rdx
mov r9d, r10d
lea r8, str._lu__s__s__s__s_u__u__s__s_n
mov edx, 0x400
mov rcx, rax
call sym.snprintf_3
mov dword [rbp + 0x624], eax
mov rax, qword [rbp + 0x600]
mov rcx, rax
call sym.free
mov rax, qword [rbp + 0x5f8]
mov rcx, rax
call sym.free
mov rax, qword [rbp + 0x638]
mov rcx, rax
call sym.free
mov rax, qword [rbp + 0x630]
mov rcx, rax
call sym.free
mov rax, qword [rbp + 0x628]
mov rcx, rax
call sym.free
cmp dword [rbp + 0x624], 0x3ff
jle 0x4ce4ea
mov byte [rbp + 0x5ef], 0
jmp 0x4ce554
cmp dword [rbp + 0x624], 0
jns 0x4ce554
lea rax, [0x0052c158]
movzx eax, byte [rax]
test al, al
jne 0x4ce520
mov rax, qword [0x00514ac0]
movzx eax, byte [rax]
test al, al
jne 0x4ce520
mov rax, qword [0x00514ab0]
mov eax, dword [rax]
test eax, eax
js 0x4ce639
lea rax, [rbp - 0x10]
lea r8, str.sharelog_printf_error
mov edx, 0x200
mov rcx, rax
call sym.snprintf_3
lea rax, [rbp - 0x10]
mov r8d, 0
mov rdx, rax
mov ecx, 0
call dbg._applog
jmp 0x4ce639
mov r9d, 0x2ce
lea r8, str.sharelog
lea rdx, str..._.._cgminer_4.9.1_cgminer.c
lea rcx, [0x005272c0]
call sym._mutex_lock_2
mov rcx, qword [0x005272c8]
mov eax, dword [rbp + 0x624]
movsxd rdx, eax
lea rax, [rbp + 0x1f0]
mov r9, rcx
mov r8d, 1
mov rcx, rax
call sym.fwrite
mov qword [rbp + 0x5f0], rax
mov rax, qword [0x005272c8]
mov rcx, rax
call sym.fflush
mov r9d, 0x2d1
lea r8, str.sharelog
lea rdx, str..._.._cgminer_4.9.1_cgminer.c
lea rcx, [0x005272c0]
call sym._mutex_unlock_2
cmp qword [rbp + 0x5f0], 1
je 0x4ce63a
lea rax, [0x0052c158]
movzx eax, byte [rax]
test al, al
jne 0x4ce605
mov rax, qword [0x00514ac0]
movzx eax, byte [rax]
test al, al
jne 0x4ce605
mov rax, qword [0x00514ab0]
mov eax, dword [rax]
test eax, eax
js 0x4ce63a
lea rax, [rbp - 0x10]
lea r8, str.sharelog_fwrite_error
mov edx, 0x200
mov rcx, rax
call sym.snprintf_3
lea rax, [rbp - 0x10]
mov r8d, 0
mov rdx, rax
mov ecx, 0
call dbg._applog
jmp 0x4ce63a
nop
jmp 0x4ce63a
nop
add rsp, 0x6c0
pop rbp
ret