Function at 0x140005180
Capabilities:
Delete file
Move file

Disassembly:
mov qword [rsp + 0x10], rbx
push rsi
sub rsp, 0x20
mov rbx, rcx
lea rcx, [0x1400b6f68]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_EnterCriticalSection]
nop dword [rax + rax]
test rbx, rbx
je 0x14001a8d2
cmp dword [rbx], 0x6060
jne 0x14001a8d2
mov rax, qword [rbx + 0x18]
mov qword [rsp + 0x30], rdi
test rax, rax
jne 0x14001a7ca
lea rcx, [0x1400b6f68]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
nop dword [rax + rax]
mov rcx, qword [rbx + 0x60]
xor esi, esi
test rcx, rcx
jne 0x14001a7e4
mov rax, qword [rbx + 8]
mov rcx, qword [rbx + 0x10]
mov rax, qword [rax + 0x118]
call qword [0x1400978a8]
test eax, eax
je 0x1400052c9
lea rcx, [0x1400b6f68]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_EnterCriticalSection]
nop dword [rax + rax]
mov rax, qword [rbx + 0x20]
test rax, rax
jne 0x14001a824
mov rax, qword [0x1400b6d40]
mov dword [rbx + 0x30], esi
mov dword [rbx + 0x50], esi
cmp rax, rbx
je 0x14001a836
test rax, rax
jne 0x14001a846
cmp qword [rbx + 0x18], rsi
jne 0x14001a869
lea rcx, [0x1400b6f68]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
nop dword [rax + rax]
mov rcx, qword [rbx + 0x38]
cmp rcx, 0xffffffffffffffff
jne 0x14001a878
mov rcx, qword [rbx + 0x40]
test rcx, rcx
jne 0x14001a88a
mov r8, qword [rbx + 0x48]
test r8, r8
je 0x14000529b
mov rcx, qword [0x1400b7220]
xor edx, edx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov rcx, qword [0x1400b7220]
mov r8, rbx
xor edx, edx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov eax, 1
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rsi
ret
mov eax, esi
jmp 0x1400052b8
test byte [rax + 0xc], 2
je 0x1400051c7
xor edx, edx
mov rcx, rbx
call fcn.140007498
nop
jmp 0x1400051c7
mov rax, qword [0x1400b52f8]
lea rdx, [0x1400b52f8]
cmp rax, rdx
je 0x14001a816
test byte [rax + 0x44], 4
je 0x14001a816
mov rcx, qword [rax + 0x38]
lea r8, [0x14009b610]
mov edx, 0x12
call fcn.14002d74c
mov rcx, qword [rbx + 0x60]
call fcn.1400028d0
mov qword [rbx + 0x60], rsi
jmp 0x1400051e9
mov qword [rax + 8], rsi
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14001a824
jmp 0x140005226
mov rax, qword [rbx + 0x28]
mov qword [0x1400b6d40], rax
jmp 0x140005245
lea rcx, [rax + 0x28]
mov rax, qword [rax + 0x28]
cmp rax, rbx
je 0x14001a85d
test rax, rax
jne 0x14001a846
jmp 0x140005245
mov rax, qword [rbx + 0x28]
mov qword [rcx], rax
jmp 0x140005245
lea rcx, [rbx + 0x18]
call fcn.1400075a4
nop
jmp 0x14000524f
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
nop dword [rax + rax]
nop
jmp 0x140005270
call qword [sym.imp.api_ms_win_core_file_l1_1_0.dll_DeleteFileW]
nop dword [rax + rax]
test eax, eax
jne 0x14001a8b0
mov rcx, qword [rbx + 0x40]
lea r8d, [rax + 4]
xor edx, edx
call qword [sym.imp.api_ms_win_core_file_l2_1_0.dll_MoveFileExW]
nop dword [rax + rax]
mov r8, qword [rbx + 0x40]
xor edx, edx
mov rcx, qword [0x1400b7220]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x40], rsi
jmp 0x14000527d
lea rcx, [0x1400b6f68]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
nop dword [rax + rax]
mov ecx, 6
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
xor esi, esi
mov eax, esi
jmp 0x1400052bd