Function at 0x14002ae40
Capabilities:
Move file

Disassembly:
mov rax, rsp
push r12
push r14
push r15
sub rsp, 0x130
mov qword [rsp + 0x38], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1400a3010]
xor rax, rsp
mov qword [rsp + 0x120], rax
mov rsi, rcx
mov qword [rsp + 0x28], rcx
mov rcx, qword [rcx + 8]
mov rax, qword [rcx]
call qword [rax]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x70]
test al, al
je 0x14002b384
mov rcx, qword [rsi + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x60]
test al, al
je 0x14002b384
lea rdx, [rsi + 0x70]
lea rcx, [rsp + 0x40]
call qword [sym.imp.isl3.dll_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____cdecl_isl::extract_dir_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const____ptr64_]
nop
mov r8, rax
lea rdx, str.wtemp.cfg
lea rcx, [rsp + 0xc0]
call fcn.14002e960
nop
cmp qword [rsp + 0x58], 8
jb 0x14002aee6
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov qword [rsp + 0x58], 7
xor edi, edi
mov qword [rsp + 0x50], rdi
mov word [rsp + 0x40], di
mov qword [rsp + reloc.mfc120u.dll_Ordinal_280], 7
mov qword [rsp + 0x110], rdi
mov word [rsp + 0x100], di
lea r8d, [rdi + 4]
lea rdx, str..bak
lea rcx, [rsp + 0x100]
call fcn.1400113d0
nop
lea r8, [rsp + 0x100]
lea rdx, [rsi + 0x70]
lea rcx, [rsp + 0xe0]
call fcn.14002eac0
nop
cmp qword [rsp + reloc.mfc120u.dll_Ordinal_280], 8
jb 0x14002af63
mov rcx, qword [rsp + 0x100]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov qword [rsp + reloc.mfc120u.dll_Ordinal_280], 7
mov qword [rsp + 0x110], rdi
mov word [rsp + 0x100], di
mov r14b, 1
mov byte [rsp + 0x20], r14b
movzx r9d, r14b
mov r8d, 2
lea rdx, [rsp + 0xc0]
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.treestor3.dll_void___cdecl_isl::saveTreeFile_class_isl::ITreeStorage_const____ptr64__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const____ptr64__enum_isl::tree_stor_serialization_e__bool_]
lea rdx, [rsp + 0xe0]
cmp qword [rsp + 0xf8], 8
cmovae rdx, qword [rsp + 0xe0]
cmp qword [rsi + 0x88], 8
jb 0x14002afcd
mov rcx, qword [rsi + 0x70]
jmp 0x14002afd1
lea rcx, [rsi + 0x70]
mov r8d, 9
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
setne r12b
test r12b, r12b
jne 0x14002b0fc
lea r8, [rsi + 0x70]
lea rdx, str.Backup_local_config_file_error__
lea rcx, [rsp + 0xa0]
call fcn.140023df0
nop
lea r8, str.___
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140023ee0
nop
lea r8, [rsp + 0xe0]
mov rdx, rax
lea rcx, [rsp + 0x80]
call fcn.140012070
nop
lea r8, [0x140076b18]
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140023ee0
mov r15, rax
mov rcx, qword [rsi + 8]
mov rdx, qword [rcx]
call qword [rdx + 0x18]
mov r8, qword [rax]
mov rdx, r15
mov rcx, rax
call qword [r8 + 0x18]
nop
cmp qword [rsp + 0x58], 8
jb 0x14002b075
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], rdi
mov word [rsp + 0x40], di
cmp qword [rsp + 0x98], 8
jb 0x14002b0a1
mov rcx, qword [rsp + 0x80]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rdi
mov word [rsp + 0x80], di
cmp qword [rsp + 0x78], 8
jb 0x14002b0d0
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov qword [rsp + 0x78], 7
mov qword [rsp + 0x70], rdi
mov word [rsp + 0x60], di
cmp qword [rsp + 0xb8], 8
jb 0x14002b0fc
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
cmp qword [rsi + 0x88], 8
jb 0x14002b10c
mov rdx, qword [rsi + 0x70]
jmp 0x14002b110
lea rdx, [rsi + 0x70]
lea rcx, [rsp + 0xc0]
cmp qword [rsp + 0xd8], 8
cmovae rcx, qword [rsp + 0xc0]
mov r8d, 9
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
je 0x14002b147
xor r14b, r14b
mov byte [rsp + 0x20], r14b
jmp 0x14002b271
lea r8, [rsp + 0xc0]
lea rdx, str.Cant_write_local_config_file__
lea rcx, [rsp + 0xa0]
call fcn.140023df0
nop
lea r8, str.___
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140023ee0
nop
lea r8, [rsi + 0x70]
mov rdx, rax
lea rcx, [rsp + 0x80]
call fcn.140012070
nop
lea r8, [0x140076b18]
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140023ee0
mov r15, rax
mov rcx, qword [rsi + 8]
mov rdx, qword [rcx]
call qword [rdx + 0x18]
mov r8, qword [rax]
mov rdx, r15
mov rcx, rax
call qword [r8 + 0x18]
nop
cmp qword [rsp + 0x78], 8
jb 0x14002b1d0
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov qword [rsp + 0x78], 7
mov qword [rsp + 0x70], rdi
mov word [rsp + 0x60], di
cmp qword [rsp + 0x98], 8
jb 0x14002b1fc
mov rcx, qword [rsp + 0x80]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rdi
mov word [rsp + 0x80], di
cmp qword [rsp + 0x58], 8
jb 0x14002b22b
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], rdi
mov word [rsp + 0x40], di
cmp qword [rsp + 0xb8], 8
jb 0x14002b257
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
test r12b, r12b
je 0x14002b271
mov r8b, 1
lea rdx, [rsi + 0x70]
lea rcx, [rsp + 0xe0]
call qword [sym.imp.isl3.dll_bool___cdecl_isl::file_copy_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const____ptr64__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const____ptr64__bool_]
mov rcx, qword [rsi + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x68]
nop
jmp 0x14002b28b
test r14b, r14b
je 0x14002b336
lea rcx, [rsp + 0xc0]
call qword [sym.imp.isl3.dll_bool___cdecl_isl::file_delete_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const____ptr64_]
test al, al
jne 0x14002b336
lea r8, [rsp + 0xc0]
lea rdx, str.Error_deleting_temporary_file__
lea rcx, [rsp + 0xa0]
call fcn.140023df0
nop
lea r8, [0x140076b18]
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140023ee0
mov rbx, rax
mov rcx, qword [rsi + 8]
mov rdx, qword [rcx]
call qword [rdx + 0x18]
mov r8, qword [rax]
mov rdx, rbx
mov rcx, rax
call qword [r8 + 0x18]
nop
cmp qword [rsp + 0x78], 8
jb 0x14002b309
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov qword [rsp + 0x78], 7
mov qword [rsp + 0x70], rdi
mov word [rsp + 0x60], di
cmp qword [rsp + 0xb8], 8
jb 0x14002b336
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
nop
cmp qword [rsp + 0xf8], 8
jb 0x14002b34f
mov rcx, qword [rsp + 0xe0]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov qword [rsp + 0xf8], 7
mov qword [rsp + 0xf0], rdi
mov word [rsp + 0xe0], di
cmp qword [rsp + 0xd8], 8
jb 0x14002b384
mov rcx, qword [rsp + 0xc0]
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.140065260
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r12
ret