Function at 0x1400fd7e0
Capabilities:
Get file size
Read file on windows
Write file on windows

Disassembly:
endbr64
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
mov rbx, qword [0x140485900]
xor edx, edx
mov rax, qword [rbx]
mov qword [rsp + 0x68], rax
xor eax, eax
lea rdi, [rsp + 0x28]
movsxd rsi, ecx
mov rcx, rdi
call dbg.gettimeofday
movsxd rax, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x2c]
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x20], rax
call qword [sym.imp.msvcrt.dll__gmtime64]
mov rdx, rax
test rax, rax
je 0x1400fdb19
mov r13d, dword [rax + 0xc]
test r13w, r13w
je 0x1400fdae8
cmp r13w, 0x1f
ja 0x1400fdae8
mov ebp, dword [rax + 0x10]
mov ecx, ebp
add cx, 1
je 0x1400fdad9
cmp cx, 0xc
ja 0x1400fdad9
mov r11d, dword [rax + 0x14]
lea eax, [r11 + 0x76c]
cmp ax, 0x577
jbe 0x1400fdaca
cmp ax, 0x270f
ja 0x1400fdaca
mov r8d, 0xc
cmp cx, 0xc
je 0x1400fd900
mov r9d, 1
movzx r8d, cx
shl r9, cl
test r9d, 0xa50
jne 0x1400fda40
cmp cx, 2
jne 0x1400fd900
mov ecx, 0x1c
test al, 3
jne 0x1400fda45
imul ax, ax, 0x5c29
mov ecx, 0x1d
mov r9d, eax
ror r9w, 2
cmp r9w, 0x28f
ja 0x1400fda45
ror ax, 4
xor ecx, ecx
cmp ax, 0xa4
setb cl
add ecx, 0x1c
jmp 0x1400fda45
mov eax, 0xe
mov ecx, 0xaaaaaaab
mov r10d, r12d
movsxd r9, dword [rdx]
sub eax, r8d
add r11w, 0x1a2c
movsxd r8, dword [rdx + 4]
imul rax, rcx
movsxd rcx, dword [rdx + 8]
movzx edx, r13w
shr rax, 0x23
sub r11d, eax
neg eax
mov r12d, r11d
and eax, 0xc
shr r12w, 4
lea eax, [rax + rbp - 2]
movzx r12d, r12w
movzx eax, ax
imul r12d, r12d, 0xa3e
imul eax, eax, 0x99
shr r12d, 0x10
lea edx, [rdx + r12 - 0x7d2d]
mov r12d, r11d
movzx r11d, r11w
add eax, 2
imul r11d, r11d, 0x16d
shr r12w, 2
movzx r12d, r12w
add edx, r12d
imul r12d, r12d, 0x147b
add edx, r11d
mov r11d, 0xcccccccd
imul rax, r11
shr r12d, 0x11
sub edx, r12d
shr rax, 0x22
add eax, edx
movabs rdx, 0x141dd76000
mov eax, eax
imul rax, rdx
mov edx, r9d
or edx, r8d
or edx, ecx
jns 0x1400fdaa0
mov edx, ecx
neg edx
cmovs edx, ecx
mov ecx, r8d
mov edx, edx
imul rdx, rdx, 0xe10
neg ecx
cmovs ecx, r8d
mov ecx, ecx
mov r8, rcx
shl r8, 4
sub r8, rcx
mov ecx, r9d
neg ecx
lea rdx, [rdx + r8*4]
cmovs ecx, r9d
mov ecx, ecx
add rdx, rcx
imul rdx, rdx, 0xfffffffffff0bdc0
sub rdx, r10
add rax, rdx
xor edx, edx
test esi, esi
mov rcx, rdi
cmovs rsi, rdx
imul rsi, rsi, 0x3e8
add rsi, rax
mov qword [rsp + 0x28], rsi
call method.boost::this_thread.sleep_boost::posix_time::ptime_const_
mov rax, qword [rsp + 0x68]
sub rax, qword [rbx]
jne 0x1400fdb14
mov eax, 1
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov ecx, 0x1e
cmp cx, r13w
jae 0x1400fd900
lea rsi, [rsp + 0x40]
lea r8, [0x14039bfc2]
lea rax, [rsp + 0x50]
lea rdx, [r8 - 0x22]
mov rcx, rsi
lea rdi, [rsp + 0x30]
mov qword [rsp + 0x40], rax
call fcn.1400fce20
mov rdx, rsi
mov rcx, rdi
call sym.std::out_of_range::out_of_range_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
lea r12, method.boost::gregorian::bad_day_of_month.bad_day_of_month__
mov qword [rsp + 0x30], r12
mov rax, qword [rsp + 0x68]
sub rax, qword [rbx]
jne 0x1400fdb14
mov rcx, rdi
call method.void_boost::throw_exception_boost::gregorian.bad_day_of_month__boost::gregorian::bad_day_of_month_const_
nop
imul rcx, rcx, 0xe10
mov rdx, r8
shl rdx, 4
sub rdx, r8
lea rdx, [rcx + rdx*4]
add rdx, r9
imul rdx, rdx, 0xf4240
add rdx, r10
add rax, rdx
jmp 0x1400fda01
mov rax, qword [rsp + 0x68]
sub rax, qword [rbx]
jne 0x1400fdb14
call fcn.1400fd190
mov rax, qword [rsp + 0x68]
sub rax, qword [rbx]
jne 0x1400fdb14
call fcn.1400fd050
mov rax, qword [rsp + 0x68]
sub rax, qword [rbx]
jne 0x1400fdb14
call fcn.1400fd710
endbr64
mov rcx, rdi
mov rsi, rax
call fcn.14027d770
mov rax, qword [rsp + 0x68]
sub rax, qword [rbx]
je 0x1400fdbe5
call dbg.__stack_chk_fail
lea rdi, [rsp + 0x40]
lea rdx, [0x14039bf70]
mov rcx, rdi
call sym.std::runtime_error::runtime_error_char_const_
mov ecx, 0x40
call sym.__cxa_allocate_exception
mov rdx, rdi
mov rsi, rax
lea rax, [0x140492010]
mov qword [rsi], rax
lea rcx, [rsi + 8]
call sym.std::runtime_error::runtime_error_std::runtime_error_const_
xor eax, eax
mov qword [rsi + 0x38], 0xffffffffffffffff
mov qword [rsi + 0x20], rax
mov qword [rsi + 0x28], rax
mov qword [rsi + 0x30], rax
lea rax, fcn.140365a90
lea rcx, [rax - 0x30]
movq xmm1, rax
add rax, 0x28
movq xmm0, rcx
mov qword [rsi + 0x18], rax
punpcklqdq xmm0, xmm1
movups xmmword [rsi], xmm0
mov rax, qword [rsp + 0x68]
sub rax, qword [rbx]
jne 0x1400fdb14
lea r8, [method.boost::wrapexcept_std::runtime_error_.wrapexcept__]
lea rdx, sym.imp.libstdc_6.dll_vtable_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___
mov rcx, rsi
call sym.__cxa_throw
endbr64
mov rbp, rax
mov rcx, rsi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rax, qword [rsp + 0x68]
sub rax, qword [rbx]
jne 0x1400fdb14
mov rcx, rbp
call sym._Unwind_Resume
endbr64
mov rcx, rdi
mov qword [rsp + 0x30], r12
mov rbp, rax
call sym.std::out_of_range::out_of_range__
jmp 0x1400fdbb1
mov rcx, rsi
call sym._Unwind_Resume
nop
nop
nop
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rbp, qword [0x140485900]
mov rax, qword [rbp]
mov qword [rsp + 0x28], rax
xor eax, eax
mov rbx, r8
mov rsi, rcx
mov rdi, rdx
sub rbx, rdx
mov qword [rsp + 0x20], rbx
cmp rbx, 0xf
ja 0x1400fdc60
mov rcx, qword [rcx]
cmp rbx, 1
jne 0x1400fdc58
movzx eax, byte [rdx]
mov byte [rcx], al
mov rbx, qword [rsp + 0x20]
mov rcx, qword [rsi]
mov qword [rsi + 8], rbx
mov byte [rcx + rbx], 0
mov rax, qword [rsp + 0x28]
sub rax, qword [rbp]
jne 0x1400fdc91
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
test rbx, rbx
je 0x1400fdc37
jmp 0x1400fdc7c
lea rdx, [rsp + 0x20]
xor r8d, r8d
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_create_unsigned_long_long__unsigned_long_long_
mov qword [rsi], rax
mov rcx, rax
mov rax, qword [rsp + 0x20]
mov qword [rsi + 0x10], rax
mov r8, rbx
mov rdx, rdi
call sym.memcpy
mov rbx, qword [rsp + 0x20]
mov rcx, qword [rsi]
jmp 0x1400fdc37
call dbg.__stack_chk_fail
nop
nop word [rax + rax]