Function at 0x14000ac80
Capabilities:
Move file

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov ebp, r8d
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x140045010]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rcx, rdx
call fcn.140003a60
mov ebx, eax
test eax, eax
jne 0x14000ad07
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.14001c1a8
test eax, eax
je 0x14000ad1f
mov eax, dword [0x140048558]
mov ecx, dword [0x140045e44]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000aea1
call fcn.14001ba74
mov r9d, dword [rax]
lea rcx, [0x140048348]
lea rdx, str.rename_file:_failed_to_read_file_status_info:__S__err:__d
mov r8, rdi
call fcn.14000ed50
mov ebx, 6
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140023fe0
mov eax, ebx
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
ret
movzx eax, word [rsp + 0x36]
and eax, 0xf000
cmp eax, 0x8000
je 0x14000ad82
xor bpl, 1
movzx eax, ax
cmp eax, 0x4000
sete bl
or bl, bpl
mov eax, dword [0x140048558]
mov ecx, dword [0x140045e44]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000aee2
test bl, bl
je 0x14000af26
lea rcx, [0x140048348]
lea rdx, str.rename_file:_proceeding_to_rename_the_directory
call fcn.14000ed50
xor ebx, ebx
mov rcx, rsi
xor edx, edx
call fcn.14001eba8
test eax, eax
je 0x14000adf8
mov rcx, rdi
mov rdx, rsi
call fcn.14001f79c
test eax, eax
je 0x14000ad07
mov eax, dword [0x140048558]
mov ecx, dword [0x140045e44]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000af4e
call fcn.14001ba74
mov eax, dword [rax]
mov dword [rsp + 0x20], eax
lea rcx, [0x140048348]
lea rdx, str.rename_file:_failed_to_rename_file___src:__S__dst:_S__err:__d
mov r8, rdi
mov r9, rsi
call fcn.14000ed50
mov ebx, 7
jmp 0x14000ad07
mov rcx, rsi
mov edx, 0x180
call fcn.14001ee7c
mov rcx, rsi
call fcn.14001f774
test eax, eax
je 0x14000ad92
mov ebp, eax
mov eax, dword [0x140048558]
mov ecx, dword [0x140045e44]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000af8f
call fcn.14001ba74
mov eax, dword [rax]
mov dword [rsp + 0x20], eax
lea rcx, [0x140048348]
lea rdx, str.ensure_remove:_failed_to_remove_file:__S__rv:__d__err:__d
mov r8, rsi
mov r9d, ebp
call fcn.14000ed50
mov eax, dword [0x140048558]
mov ecx, dword [0x140045e44]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000afd0
lea rcx, [0x140048348]
lea rdx, str.rename_file:_destination_file_exists_and_could_not_be_removed:__S
mov r8, rsi
call fcn.14000ed50
mov ebx, 0x3e
jmp 0x14000ad07
lea rcx, [0x140048558]
call fcn.140014020
cmp dword [0x140048558], 0xffffffff
jne 0x14000ace4
mov qword [0x140048348], 0
lea rcx, [0x14000ac50]
call fcn.1400141d8
lea rcx, [0x140048558]
call fcn.140014088
jmp 0x14000ace4
lea rcx, [0x140048558]
call fcn.140014020
cmp dword [0x140048558], 0xffffffff
jne 0x14000ad67
mov qword [0x140048348], 0
lea rcx, [0x14000ac50]
call fcn.1400141d8
lea rcx, [0x140048558]
call fcn.140014088
test bl, bl
jne 0x14000ad6f
call fcn.14001ba74
mov r9d, dword [rax]
lea rcx, [0x140048348]
lea rdx, str.rename_file:_path_present__but_not_a_file:__S__err:__d
mov r8, rdi
call fcn.14000ed50
mov ebx, 0x30
jmp 0x14000ad07
lea rcx, [0x140048558]
call fcn.140014020
cmp dword [0x140048558], 0xffffffff
jne 0x14000adca
mov qword [0x140048348], 0
lea rcx, [0x14000ac50]
call fcn.1400141d8
lea rcx, [0x140048558]
call fcn.140014088
jmp 0x14000adca
lea rcx, [0x140048558]
call fcn.140014020
cmp dword [0x140048558], 0xffffffff
jne 0x14000ae38
mov qword [0x140048348], 0
lea rcx, [0x14000ac50]
call fcn.1400141d8
lea rcx, [0x140048558]
call fcn.140014088
jmp 0x14000ae38
lea rcx, [0x140048558]
call fcn.140014020
cmp dword [0x140048558], 0xffffffff
jne 0x14000ae81
mov qword [0x140048348], 0
lea rcx, [0x14000ac50]
call fcn.1400141d8
lea rcx, [0x140048558]
call fcn.140014088
jmp 0x14000ae81