Function at 0x140001000
Capabilities:
Delete file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xa0
mov rax, qword [0x140005008]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rbx, rdx
cmp ecx, 5
je 0x140001057
lea rdx, str.Incorrect_number_of_parameters_passed
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1400014c0
mov eax, 1
jmp 0x140001476
mov rdx, qword [rdx + 0x20]
xor esi, esi
mov qword [rbp - 0x31], rsi
mov edi, 0xf
mov qword [rbp - 0x29], rdi
mov byte [rbp - 0x41], sil
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], sil
jne 0x140001075
lea rcx, [rbp - 0x41]
call fcn.1400018c0
nop
mov r8, qword [rbx + 8]
mov r13, qword [rbp - 0x41]
cmp byte [r8], 0x2d
jne 0x1400013bf
cmp byte [r8 + 1], 0x64
jne 0x1400013bf
cmp byte [r8 + 2], 0
jne 0x1400013bf
mov rcx, rsi
mov rdx, qword [rbx + 0x10]
lea r9, str.true
nop
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r9 + rcx - 1]
jne 0x1400013bf
cmp rcx, 5
jne 0x1400010c0
mov rax, qword [rbx + 0x18]
cmp byte [rax], 0x2d
jne 0x1400013bf
cmp byte [rax + 1], 0x70
jne 0x1400013bf
cmp byte [rax + 2], 0
jne 0x1400013bf
movabs rcx, 0x7fffffffffffffff
mov r15, rcx
mov r14, qword [rbp - 0x31]
sub r15, r14
cmp r15, 0x2b
jb 0x1400014a9
lea rax, [rbp - 0x41]
cmp qword [rbp - 0x29], 0x10
cmovae rax, r13
mov qword [rbp - 0x49], rax
mov qword [rbp - 9], rsi
mov qword [rbp - 1], rsi
lea r12, [r14 + 0x2b]
mov rbx, rdi
lea rsi, [rbp - 0x19]
mov edx, 0x16
cmp r12, rbx
jbe 0x1400011c4
mov rbx, r12
or rbx, 0xf
cmp rbx, rcx
jbe 0x140001156
mov rbx, rcx
jmp 0x14000115d
cmp rbx, rdx
cmovb rbx, rdx
mov rcx, rbx
add rcx, 1
mov rdx, 0xffffffffffffffff
cmovb rcx, rdx
cmp rcx, 0x1000
jb 0x1400011ab
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400014af
mov rcx, rax
call fcn.140001abc
test rax, rax
je 0x1400011a4
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
mov rax, qword [rbp - 0x49]
jmp 0x1400011c0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test rcx, rcx
je 0x1400011be
call fcn.140001abc
mov rsi, rax
mov rax, qword [rbp - 0x49]
jmp 0x1400011c0
xor esi, esi
mov qword [rbp - 0x19], rsi
mov qword [rbp - 9], r12
mov qword [rbp - 1], rbx
mov r8, r14
mov rdx, rax
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
movups xmm0, xmmword [str.Lightroom_Classic_CC_7_Preferences.agprefs]
movups xmmword [r14 + rsi], xmm0
movups xmm1, xmmword [0x140003398]
movups xmmword [r14 + rsi + 0x10], xmm1
movsd xmm0, qword [0x1400033a8]
movsd qword [r14 + rsi + 0x20], xmm0
movzx eax, word [0x1400033b0]
mov word [r14 + rsi + 0x28], ax
movzx eax, byte [0x1400033b2]
mov byte [r14 + rsi + 0x2a], al
mov byte [rsi + r12], 0
cmp r15, 0x33
jb 0x1400014b5
lea r15, [rbp - 0x41]
cmp qword [rbp - 0x29], 0x10
cmovae r15, r13
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x17], xmm0
lea rsi, [r14 + 0x33]
lea rbx, [rbp + 7]
cmp rsi, 0xf
jbe 0x1400012d8
mov rdi, rsi
or rdi, 0xf
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
jbe 0x14000126c
mov rdi, rax
jmp 0x140001279
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
mov rcx, rdi
add rcx, 1
mov rax, 0xffffffffffffffff
cmovb rcx, rax
cmp rcx, 0x1000
jb 0x1400012c3
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400014a3
mov rcx, rax
call fcn.140001abc
test rax, rax
je 0x1400012bc
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1400012d4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test rcx, rcx
je 0x1400012d2
call fcn.140001abc
mov rbx, rax
jmp 0x1400012d4
xor ebx, ebx
mov qword [rbp + 7], rbx
mov qword [rbp + 0x17], rsi
mov qword [rbp + 0x1f], rdi
mov r8, r14
mov rdx, r15
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
movups xmm0, xmmword [str.Lightroom_Classic_CC_7_Startup_Preferences.agprefs]
movups xmmword [r14 + rbx], xmm0
movups xmm1, xmmword [0x1400033c8]
movups xmmword [r14 + rbx + 0x10], xmm1
movups xmm0, xmmword [0x1400033d8]
movups xmmword [r14 + rbx + 0x20], xmm0
movzx eax, word [0x1400033e8]
mov word [r14 + rbx + 0x30], ax
movzx eax, byte [0x1400033ea]
mov byte [r14 + rbx + 0x32], al
mov byte [rbx + rsi], 0
lea rbx, [rbp - 0x19]
mov edi, 2
nop word [rax + rax]
lea rdx, [rbp - 0x19]
cmp qword [rbp - 1], 0x10
cmovae rdx, qword [rbp - 0x19]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1400014c0
mov rcx, rax
lea rdx, [0x1400033ec]
call fcn.1400014c0
mov rcx, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x140001376
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
test eax, eax
je 0x14000138f
lea rcx, str.Error_deleting_file
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_perror]
jmp 0x14000139c
lea rcx, str.File_successfully_deleted
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_puts]
add rbx, 0x20
sub rdi, 1
jne 0x140001340
lea r9, [0x140001a20]
lea edx, [rdi + 0x20]
lea r8d, [rdi + 2]
lea rcx, [rbp - 0x19]
call fcn.140001b24
jmp 0x140001436
mov rdx, r8
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1400014c0
mov rcx, rax
lea rdx, [0x1400033ec]
call fcn.1400014c0
mov rcx, rax
mov rdx, qword [rbx + 0x10]
call fcn.1400014c0
mov rcx, rax
lea rdx, [0x1400033ec]
call fcn.1400014c0
mov rcx, rax
mov rdx, qword [rbx + 0x18]
call fcn.1400014c0
mov rcx, rax
lea rdx, [0x1400033ec]
call fcn.1400014c0
lea rdx, str.Nothing_to_do_
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1400014c0
mov rcx, rax
lea rdx, [0x1400033ec]
call fcn.1400014c0
nop
mov rax, qword [rbp - 0x29]
cmp rax, 0x10
jb 0x140001474
lea rdx, [rax + 1]
mov rax, r13
cmp rdx, 0x1000
jb 0x14000146c
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000146c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r13
call fcn.140001ab4
xor eax, eax
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.140001a90
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400018a0
nop
call fcn.140001700
int3
call fcn.1400018a0
nop
call fcn.140001700
int3