Function at 0x140004090
Capabilities:
Check if file exists
Delete file
Delete registry key
Get file attributes

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x430]
sub rsp, 0x530
mov rax, qword [0x140017058]
xor rax, rsp
mov qword [rbp + 0x420], rax
mov byte [rsp + 0x30], cl
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
xor edi, edi
mov qword [rsp + 0x70], rdi
lea r8, [rsp + 0x60]
lea rdx, str.SoftwareQuickPluginsQuickTiles
mov rcx, 0xffffffff80000001
call fcn.140003e20
mov r12d, edi
mov r13, qword [rsp + 0x68]
mov r15, qword [rsp + 0x60]
sub r13, r15
sar r13, 5
test r13, r13
je 0x140004481
lea r14, [0x1400118ea]
movabs rcx, 0x7fffffffffffffff
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rdi
mov rdi, qword [r15 + 0x10]
mov rsi, r15
cmp qword [r15 + 0x18], 0x10
jb 0x14000413d
mov rsi, qword [r15]
cmp rdi, 0x10
jae 0x140004156
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x58], 0xf
jmp 0x1400041c7
mov rbx, rdi
or rbx, 0xf
cmp rbx, rcx
cmova rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1400041a0
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140004a26
mov rcx, rax
call fcn.14000f200
mov rcx, rax
test rax, rax
je 0x140004602
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1400041ae
test rcx, rcx
je 0x1400041ac
call fcn.14000f200
jmp 0x1400041ae
xor eax, eax
mov qword [rsp + 0x40], rax
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x50], rdi
lea r8, [rsp + 0x40]
mov rdx, 0xffffffff80000001
lea rcx, [rsp + 0x78]
call fcn.140007230
nop
cmp qword [rbp - 0x78], 0
jne 0x14000422d
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x140004226
inc rdx
mov rcx, qword [rsp + 0x78]
cmp rdx, 0x1000
mov rax, rcx
jb 0x140004221
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004610
call fcn.14000f244
xor edi, edi
jmp 0x14000446e
mov rbx, r15
cmp qword [r15 + 0x18], 0x10
jb 0x14000423a
mov rbx, qword [r15]
mov rdi, qword [r15 + 0x10]
test rdi, rdi
je 0x1400041ea
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp - 0x40]
call sub.VCRUNTIME140.dll_memset
lea rcx, [0x1400118e8]
nop dword [rax + rax]
movzx eax, byte [rcx]
mov byte [rbp + rax - 0x40], 1
inc rcx
cmp rcx, r14
jne 0x140004260
lea rax, [rdi - 1]
mov rcx, 0xffffffffffffffff
cmp rax, rcx
cmovb rcx, rax
add rcx, rbx
movzx eax, byte [rcx]
cmp byte [rbp + rax - 0x40], 0
jne 0x1400042a6
nop
cmp rcx, rbx
je 0x1400041ea
dec rcx
movzx eax, byte [rcx]
cmp byte [rbp + rax - 0x40], 0
je 0x140004290
sub rcx, rbx
cmp rcx, 0xffffffffffffffff
je 0x1400041ea
inc rcx
mov qword [rbp - 0x50], 0
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
mov rax, qword [r15 + 0x10]
cmp rax, rcx
jb 0x140004a38
sub rax, rcx
mov rsi, 0xffffffffffffffff
cmp rax, rsi
cmovb rsi, rax
mov rax, r15
cmp qword [r15 + 0x18], 0x10
jb 0x1400042f5
mov rax, qword [r15]
lea r14, [rax + rcx]
cmp rsi, 0xf
ja 0x140004320
mov qword [rbp - 0x50], rsi
mov r8, rsi
mov rdx, r14
lea rcx, [rbp - 0x60]
call sub.VCRUNTIME140.dll_memmove
mov byte [rbp + rsi - 0x60], 0
mov rdi, qword [rbp - 0x60]
jmp 0x1400043c3
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
ja 0x140004a32
mov rbx, rsi
or rbx, 0xf
cmp rbx, rax
jbe 0x14000434e
mov rbx, rax
movabs rax, 0x8000000000000027
jmp 0x140004375
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140004394
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140004a2c
mov rcx, rax
call fcn.14000f200
test rax, rax
je 0x140004609
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x1400043a5
test rcx, rcx
je 0x1400043a3
call fcn.14000f200
mov rdi, rax
jmp 0x1400043a5
xor edi, edi
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x48], rbx
mov r8, rsi
mov rdx, r14
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rsi], 0
mov qword [rbp - 0x60], rdi
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, rdi
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
test eax, eax
jne 0x14000457e
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x140004419
inc rdx
mov rcx, qword [rbp - 0x60]
cmp rdx, 0x1000
mov rax, rcx
jb 0x140004414
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004609
call fcn.14000f244
xor edi, edi
mov byte [rbp - 0x60], dil
mov qword [rbp - 0x48], 0xf
mov qword [rbp - 0x50], rdi
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x140004467
inc rdx
mov rcx, qword [rsp + 0x78]
cmp rdx, 0x1000
mov rax, rcx
jb 0x140004462
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004610
call fcn.14000f244
lea r14, [0x1400118ea]
inc r12d
add r15, 0x20
movsxd rax, r12d
cmp rax, r13
jb 0x140004118
cmp byte [rsp + 0x30], 0
je 0x140004617
lea rdx, str.SoftwareQuickPlugins
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegDeleteTreeW]
mov dword [rbp + 0xc8], 3
lea rax, [0x140017de0]
mov qword [rbp + 0xd0], rax
mov eax, 0x654
mov word [rbp + 0xe0], ax
lea rcx, [rbp + 0xc0]
call qword [sym.imp.SHELL32.dll_SHFileOperationW]
nop
mov rdi, qword [rsp + 0x60]
test rdi, rdi
je 0x1400049ee
mov rbx, rdi
mov rsi, qword [rsp + 0x68]
cmp rdi, rsi
je 0x140004542
nop dword [rax]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x140004526
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x140004521
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140004577
mov rcx, r8
call fcn.14000f244
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
add rbx, 0x20
cmp rbx, rsi
jne 0x1400044f0
mov rdx, qword [rsp + 0x70]
sub rdx, rdi
and rdx, 0xffffffffffffffe0
mov rax, rdi
cmp rdx, 0x1000
jb 0x1400049e6
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400049e6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
lea r8, [rsp + 0x78]
cmp qword [rbp - 0x70], 0x10
cmovae r8, qword [rsp + 0x78]
mov r9d, eax
lea rdx, str._sQuickTiles__dx64.dlt
lea rcx, [rbp + 0x100]
call fcn.140009220
mov dword [rsp + 0x28], 0x104
lea rax, [rbp + 0x210]
mov qword [rsp + 0x20], rax
mov r9d, 0xffffffff
lea r8, [rbp + 0x100]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [rbp + 0x210]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x1400045f0
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
je 0x1400043de
lea rcx, [rbp + 0x210]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x1400043de
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov ecx, edi
mov dword [rsp + 0x38], ecx
cmp qword [0x140017ff0], 0
jbe 0x1400044d2
nop dword [rax + rax]
lea r8d, [rcx + 0x7e2]
lea rdx, [0x1400118ec]
lea rcx, [rbp + 0xc0]
call fcn.140009220
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
lea rax, [rbp + 0xc0]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140004670
lea rdx, [rbp + 0xc0]
lea rcx, [rsp + 0x78]
call fcn.140005070
mov r12, qword [0x140017fe8]
mov rbx, qword [r12 + 8]
mov r15, r12
mov r13, qword [rbp - 0x70]
mov rsi, qword [rbp - 0x78]
mov r14, qword [rsp + 0x78]
cmp byte [rbx + 0x19], 0
jne 0x140004712
nop dword [rax]
lea rdx, [rsp + 0x78]
cmp r13, 0x10
cmovae rdx, r14
lea rcx, [rbx + 0x20]
cmp qword [rbx + 0x38], 0x10
jb 0x1400046cc
mov rcx, qword [rbx + 0x20]
mov rdi, qword [rbx + 0x30]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400046f7
cmp rdi, rsi
jae 0x1400046ef
mov eax, 0xffffffff
jmp 0x1400046f7
xor eax, eax
cmp rdi, rsi
seta al
shr eax, 0x1f
test al, al
je 0x140004704
mov rbx, qword [rbx + 0x10]
jmp 0x14000470a
mov r15, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x1400046b0
xor edi, edi
cmp byte [r15 + 0x19], 0
jne 0x140004764
lea rdx, [r15 + 0x20]
cmp qword [r15 + 0x38], 0x10
jb 0x140004728
mov rdx, qword [r15 + 0x20]
lea rcx, [rsp + 0x78]
cmp r13, 0x10
cmovae rcx, r14
mov rbx, qword [r15 + 0x30]
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14000475d
cmp rsi, rbx
jae 0x140004758
mov eax, 0xffffffff
jmp 0x14000475d
mov eax, edi
seta al
shr eax, 0x1f
test al, al
je 0x140004767
mov r15, r12
cmp r13, 0x10
jb 0x1400047a5
lea rdx, [r13 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x140004796
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400049d8
mov rcx, r14
call fcn.14000f244
mov r12, qword [0x140017fe8]
cmp r15, r12
je 0x1400049b9
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
lea rax, [rbp + 0xc0]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400047d0
lea rdx, [rbp + 0xc0]
lea rcx, [rsp + 0x78]
call fcn.140005070
nop
mov r13, qword [0x140017fe8]
mov rbx, qword [r13 + 8]
mov qword [rbp - 0x60], rbx
mov dword [rbp - 0x58], edi
mov r14, r13
mov r15, qword [rbp - 0x70]
mov rsi, qword [rbp - 0x78]
mov r12, qword [rsp + 0x78]
cmp byte [rbx + 0x19], 0
jne 0x140004890
nop dword [rax]
nop dword [rax + rax]
mov qword [rbp - 0x60], rbx
lea rdx, [rsp + 0x78]
cmp r15, 0x10
cmovae rdx, r12
lea rcx, [rbx + 0x20]
cmp qword [rbx + 0x38], 0x10
jb 0x140004840
mov rcx, qword [rbx + 0x20]
mov rdi, qword [rbx + 0x30]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14000486b
cmp rdi, rsi
jae 0x140004863
mov eax, 0xffffffff
jmp 0x14000486b
xor eax, eax
cmp rdi, rsi
seta al
shr eax, 0x1f
xor edi, edi
test al, al
je 0x14000487d
mov dword [rbp - 0x58], edi
mov rbx, qword [rbx + 0x10]
jmp 0x14000488a
mov dword [rbp - 0x58], 1
mov r14, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x140004820
cmp byte [r14 + 0x19], 0
jne 0x1400048e6
lea rdx, [r14 + 0x20]
cmp qword [r14 + 0x38], 0x10
jb 0x1400048a6
mov rdx, qword [r14 + 0x20]
lea rcx, [rsp + 0x78]
cmp r15, 0x10
cmovae rcx, r12
mov rbx, qword [r14 + 0x30]
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400048db
cmp rsi, rbx
jae 0x1400048d6
mov eax, 0xffffffff
jmp 0x1400048db
mov eax, edi
seta al
shr eax, 0x1f
test al, al
je 0x140004977
movabs rax, 0x38e38e38e38e38e
cmp qword [0x140017ff0], rax
je 0x140004a20
lea rbx, [0x140017fe8]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rdi
mov ecx, 0x48
call fcn.14000f200
nop
mov qword [rax + 0x30], rdi
mov qword [rax + 0x38], rdi
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rbp - 0x78]
movups xmmword [rax + 0x30], xmm1
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
mov qword [rax + 0x40], rdi
mov qword [rax], r13
mov qword [rax + 8], r13
mov qword [rax + 0x10], r13
mov word [rax + 0x18], 0
mov qword [rsp + 0x48], rdi
movups xmm0, xmmword [rbp - 0x60]
movaps xmmword [rbp - 0x60], xmm0
mov r8, rax
lea rdx, [rbp - 0x60]
mov rcx, rbx
call fcn.140004b50
mov r14, rax
mov rcx, qword [r14 + 0x40]
call fcn.1400087c0
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x1400049b9
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400049b4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400049df
call fcn.14000f244
mov ecx, dword [rsp + 0x38]
inc ecx
mov dword [rsp + 0x38], ecx
movsxd rax, ecx
cmp rax, qword [0x140017ff0]
jae 0x1400044d2
jmp 0x140004630
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rcx, rdi
call fcn.14000f244
mov al, 1
mov rcx, qword [rbp + 0x420]
xor rcx, rsp
call fcn.14000f5c0
lea r11, [rsp + 0x530]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140004e60
nop
call fcn.140004e20
nop
call fcn.140004e20
int3
call fcn.140004ea0
int3
call fcn.140004ee0
int3