Function at 0x10001fb0c
Capabilities:
Check if file exists
Delete file
Move file

Disassembly:
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0x90
mov r12, rcx
mov rcx, qword [0x10002e120]
lea rax, [0x10002e120]
cmp rcx, rax
je 0x10001fb55
bt dword [rcx + 0x1c], 0x1d
jae 0x10001fb55
mov rcx, qword [rcx + 0x10]
lea r8, [0x100005f28]
mov edx, 0x13
call fcn.10001031c
lea rdx, [0x100007f90]
lea rcx, [rsp + 0x50]
mov r9d, 1
mov r8d, 0x15a
call fcn.10001ed8c
and dword [rsp + 0xd0], 0
and dword [rsp + 0xc8], 0
and dword [rsp + 0xc0], 0
and qword [rsp + 0x38], 0
and qword [rsp + 0x48], 0
lea rax, [0x100005e20]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x40], rax
test r12, r12
jne 0x10001fbbb
mov ebx, 0x80070057
mov eax, 0x165
jmp 0x10001fd92
and dword [rsp + 0x50], 0
mov eax, 0x166
lea r9, [rsp + 0xc0]
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0xd0]
mov rcx, r12
mov word [rsp + 0x54], ax
call fcn.10001f4cc
mov ebx, eax
mov dword [rsp + 0x50], eax
test eax, eax
mov eax, 0x16d
js 0x10001fd96
mov word [rsp + 0x54], ax
mov eax, dword [rsp + 0xc8]
test eax, eax
jne 0x10001fc22
xor ebx, ebx
mov eax, 0x172
mov dword [rsp + 0x50], ebx
mov word [rsp + 0x54], ax
jmp 0x10001fd9b
mov ebp, dword [rsp + 0xc0]
mov edi, 4
neg ebp
mov esi, edi
cmp ebp, edi
jg 0x10001fd9b
lea r13d, [rdi + 1]
sub r13d, eax
cmp esi, r13d
lea r8, [0x100005f48]
lea rcx, [0x100007fa8]
mov qword [rsp + 0x20], r8
mov r8, r12
mov r9d, esi
jl 0x10001fcbb
mov rdx, rcx
lea rcx, [rsp + 0x30]
call fcn.1000284f0
mov ebx, eax
mov dword [rsp + 0x50], eax
test eax, eax
mov eax, 0x181
js 0x10001fd96
mov rcx, qword [rsp + 0x30]
mov word [rsp + 0x54], ax
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x10001fd5b
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jne 0x10001fd6a
mov eax, 0x185
xor ebx, ebx
mov word [rsp + 0x54], ax
mov dword [rsp + 0x50], ebx
jmp 0x10001fd5f
neg r9d
test esi, esi
lea rdx, [0x100007fc0]
cmovns r9d, esi
test esi, esi
cmovns rdx, rcx
lea rcx, [rsp + 0x30]
call fcn.1000284f0
mov ebx, eax
mov dword [rsp + 0x50], eax
test eax, eax
mov eax, 0x191
js 0x10001fd96
mov word [rsp + 0x54], ax
lea rax, [0x100005f48]
lea rdx, [0x100007fa8]
lea rcx, [rsp + 0x40]
mov r9d, edi
mov r8, r12
mov qword [rsp + 0x20], rax
call fcn.1000284f0
mov ebx, eax
mov dword [rsp + 0x50], eax
test eax, eax
mov eax, 0x196
js 0x10001fd96
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x30]
mov r8d, 1
mov word [rsp + 0x54], ax
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
jne 0x10001fd59
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jne 0x10001fd7f
mov eax, 0x19b
jmp 0x10001fcab
dec edi
mov ebx, dword [rsp + 0x50]
dec esi
cmp esi, ebp
jl 0x10001fd9b
jmp 0x10001fc41
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
mov eax, 0x185
jmp 0x10001fd92
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
mov eax, 0x19b
mov dword [rsp + 0x50], ebx
mov word [rsp + 0x56], ax
lea rcx, [rsp + 0x40]
call fcn.100027da0
lea rcx, [rsp + 0x30]
call fcn.100027da0
lea rcx, [rsp + 0x50]
call fcn.10001eea4
mov eax, ebx
mov rbx, qword [rsp + 0xd8]
add rsp, 0x90
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret