Function at 0x140082e40
Capabilities:
Check if file exists
Delete directory
Get file attributes
Move file
Set file attributes

Disassembly:
mov rax, rsp
push rdi
sub rsp, 0x2a0
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov rax, qword [0x14012a4f8]
xor rax, rsp
mov qword [rsp + 0x290], rax
mov ecx, 8
call fcn.1400aee14
xor ebp, ebp
test rax, rax
je 0x140082e8d
lea rcx, [rsp + 0x38]
mov qword [rax], rcx
jmp 0x140082e90
mov rax, rbp
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x38]
call fcn.14007a5d0
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x30], rbp
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov r9d, 0x20119
xor r8d, r8d
lea rdx, str.softwareWeatherTool
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140082efc
lea r9d, [rax + 7]
lea r8, [rsp + 0x38]
mov edx, 0x100
mov rcx, qword [rsp + 0x30]
call fcn.140082250
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rax, qword [rsp + 0x60]
mov rbx, qword [rax]
mov rcx, qword [rsp + 0x38]
mov rsi, rcx
nop dword [rax]
mov rdi, rax
test rsi, rsi
je 0x140082f1d
cmp rsi, rcx
je 0x140082f27
call fcn.1400aedac
mov rax, qword [rsp + 0x60]
cmp rbx, rdi
je 0x1400830b5
test rsi, rsi
jne 0x140082f3f
call fcn.1400aedac
mov r11, rbp
jmp 0x140082f42
mov r11, qword [rsi]
cmp rbx, qword [r11 + 0x28]
jne 0x140082f4d
call fcn.1400aedac
cmp qword [rbx + 0x30], 8
jb 0x140082f5a
mov rdi, qword [rbx + 0x18]
jmp 0x140082f5e
lea rdi, [rbx + 0x18]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140082f7e
test al, 1
je 0x140082f7e
and eax, 0xfffffffe
mov edx, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
xor edx, edx
mov rcx, rdi
call fcn.14007e7c0
mov word [rsp + 0x80], bp
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0x82]
call fcn.1400ad2f0
test rsi, rsi
jne 0x140082fb4
call fcn.1400aedac
mov r11, rbp
jmp 0x140082fb7
mov r11, qword [rsi]
cmp rbx, qword [r11 + 0x28]
jne 0x140082fc2
call fcn.1400aedac
cmp qword [rbx + 0x30], 8
jb 0x140082fcf
mov r8, qword [rbx + 0x18]
jmp 0x140082fd3
lea r8, [rbx + 0x18]
mov edx, 0x104
lea rcx, [rsp + 0x80]
call fcn.1400aeb10
lea rcx, [rsp + 0x80]
call qword [sym.imp.SHLWAPI.dll_PathRemoveBackslashW]
lea rcx, [rsp + 0x80]
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea rcx, [rsp + 0x80]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x140083086
nop word [rax + rax]
lea rcx, [rsp + 0x80]
call qword [sym.imp.SHLWAPI.dll_PathIsRootW]
test eax, eax
jne 0x140083086
lea rcx, [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x140083058
xor edx, edx
lea r8d, [rax + 4]
lea rcx, [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
lea rcx, [rsp + 0x80]
call qword [sym.imp.SHLWAPI.dll_PathRemoveBackslashW]
lea rcx, [rsp + 0x80]
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea rcx, [rsp + 0x80]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x140083020
test rsi, rsi
jne 0x140083095
call fcn.1400aedac
mov r11, rbp
jmp 0x140083098
mov r11, qword [rsi]
cmp rbx, qword [r11 + 0x28]
jne 0x1400830a3
call fcn.1400aedac
mov rbx, qword [rbx]
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x38]
jmp 0x140082f10
mov rbx, qword [rax]
mov qword [rax], rax
mov rax, qword [rsp + 0x60]
mov qword [rax + 8], rax
mov qword [rsp + 0x68], rbp
mov rcx, qword [rsp + 0x60]
cmp rbx, rcx
je 0x14008310b
mov rdi, qword [rbx]
cmp qword [rbx + 0x30], 8
jb 0x1400830e6
mov rcx, qword [rbx + 0x18]
call fcn.1400ad0b8
mov qword [rbx + 0x30], 7
mov qword [rbx + 0x28], rbp
mov word [rbx + 0x18], bp
mov rcx, rbx
call fcn.1400ad0b8
mov rbx, rdi
mov rcx, qword [rsp + 0x60]
cmp rdi, rcx
jne 0x1400830d3
call fcn.1400ad0b8
mov qword [rsp + 0x60], rbp
mov rcx, qword [rsp + 0x38]
call fcn.1400ad0b8
mov rcx, qword [rsp + 0x290]
xor rcx, rsp
call fcn.1400ad2c0
lea r11, [rsp + 0x2a0]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret