Function at 0x140022f40
Capabilities:
Delete file

Disassembly:
mov r11, rsp
push r14
sub rsp, 0x80
mov qword [r11 - 0x28], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rdi
mov r14, r8
mov ebx, edx
mov rdi, rcx
mov ecx, 8
mov rax, qword gs:[0x58]
mov r9, qword [rax]
lea rax, str.CTieredVolume::ReportProcessingTerminated
mov qword [rcx + r9], rax
lea rcx, [r11 - 0x20]
call fcn.14000865c
nop
test bl, 1
je 0x1400230e1
mov r9d, dword [rdi + 0xb8]
cmp r9d, 7
je 0x140022ff5
lea rbp, [0x140048138]
mov rcx, qword [0x140048138]
cmp rcx, rbp
je 0x1400233bc
test byte [rcx + 0x1c], 1
je 0x1400233bc
cmp byte [rcx + 0x19], 4
jb 0x1400233bc
lea rax, [rdi + 0x2a0]
mov edx, 0x56
mov qword [rsp + 0x20], rax
lea r8, [0x14003fab0]
mov rcx, qword [rcx + 0x10]
call fcn.140009b74
jmp 0x1400233bc
lea rbp, [0x140048138]
mov rcx, qword [0x140048138]
cmp rcx, rbp
je 0x140023030
test byte [rcx + 0x1c], 1
je 0x140023030
cmp byte [rcx + 0x19], 4
jb 0x140023030
lea r9, [rdi + 0x2a0]
mov edx, 0x57
lea r8, [0x14003fab0]
mov rcx, qword [rcx + 0x10]
call fcn.14000a010
xor edx, edx
mov rcx, rdi
call fcn.1400226cc
test eax, eax
jns 0x140023076
mov rcx, qword [0x140048138]
cmp rcx, rbp
je 0x140023076
test byte [rcx + 0x1c], 1
je 0x140023076
cmp byte [rcx + 0x19], 2
jb 0x140023076
lea r9, [rdi + 0x2a0]
mov edx, 0x58
mov dword [rsp + 0x20], eax
lea r8, [0x14003fab0]
mov rcx, qword [rcx + 0x10]
call fcn.140008b3c
lea rbx, [rdi + 0x18]
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_AcquireSRWLockExclusive]
cmp dword [rdi + 0xb8], 7
jne 0x1400230ca
mov rcx, qword [0x140048138]
cmp rcx, rbp
je 0x1400230c0
test byte [rcx + 0x1c], 1
je 0x1400230c0
cmp byte [rcx + 0x19], 4
jb 0x1400230c0
lea r9, [rdi + 0x2a0]
mov edx, 0x59
lea r8, [0x14003fab0]
mov rcx, qword [rcx + 0x10]
call fcn.14000a010
mov dword [rdi + 0xb8], 2
test rbx, rbx
je 0x1400233bc
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
jmp 0x1400233bc
lea rbx, [rdi + 0x18]
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_AcquireSRWLockExclusive]
cmp dword [rdi + 0xb8], 7
jne 0x140023158
lea rbp, [0x140048138]
mov rcx, qword [0x140048138]
cmp rcx, rbp
je 0x140023132
test byte [rcx + 0x1c], 1
je 0x140023132
cmp byte [rcx + 0x19], 4
jb 0x140023132
lea r9, [rdi + 0x2a0]
mov edx, 0x5a
lea r8, [0x14003fab0]
mov rcx, qword [rcx + 0x10]
call fcn.14000a010
mov dword [rdi + 0xb8], 2
and dword [rsp + 0x70], 0
test rbx, rbx
je 0x1400233c1
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
jmp 0x1400233c1
test rbx, rbx
je 0x140023166
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
lea rbx, [rdi + 0x5e0]
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140018204
mov rcx, rbx
call fcn.1400184d4
lea rdx, [rdi + 0x478]
mov rcx, rdi
call fcn.140018004
mov byte [rdi + 0x470], 0
mov rcx, qword [rdi + 0x340]
call qword [sym.imp.api_ms_win_core_file_l1_1_0.dll_DeleteFileW]
mov ecx, dword [rdi + 0x13c]
xor edx, edx
mov rax, qword [r14]
div rcx
mov qword [rdi + 0x108], rax
xor edx, edx
mov rax, qword [r14 + 8]
div rcx
mov qword [rdi + 0x110], rax
xor edx, edx
mov rax, qword [r14 + 0x10]
div rcx
mov qword [rdi + 0x210], rax
xor edx, edx
mov rax, qword [r14 + 0x18]
div rcx
mov qword [rdi + 0x218], rax
mov eax, dword [r14 + 0x20]
mov dword [rdi + 0x220], eax
cmp qword [rdi + 0x680], 0
je 0x140023257
lea rcx, [rsp + 0xa8]
call qword [sym.imp.api_ms_win_core_realtime_l1_1_0.dll_QueryUnbiasedInterruptTime]
mov rcx, qword [rsp + 0xa8]
sub rcx, qword [rdi + 0x680]
add rcx, 0x23c345ff
movabs rax, 0xe5109ec205d7bea7
mul rcx
shr rdx, 0x1d
cmp byte [rdi + 0x688], 0
je 0x140023242
sub edx, dword [rdi + 0x224]
mov dword [rdi + 0x228], edx
and qword [rdi + 0x680], 0
mov byte [rdi + 0x688], 0
test byte [0x140048c80], 1
je 0x1400232cb
movzx r8d, word [rdi + 0x2b8]
shr r8w, 1
mov eax, dword [rdi + 0x228]
mov dword [rsp + 0x50], eax
mov eax, dword [rdi + 0x224]
mov dword [rsp + 0x48], eax
mov eax, dword [rdi + 0x220]
mov dword [rsp + 0x40], eax
mov rax, qword [rdi + 0x218]
mov qword [rsp + 0x38], rax
mov rax, qword [rdi + 0x210]
mov qword [rsp + 0x30], rax
mov rax, qword [rdi + 0x110]
mov qword [rsp + 0x28], rax
mov rax, qword [rdi + 0x108]
mov qword [rsp + 0x20], rax
mov r9, qword [rdi + 0x2c0]
call fcn.14001e52c
mov r9d, eax
jmp 0x1400232ce
xor r9d, r9d
lea rbp, [0x140048138]
mov rcx, qword [0x140048138]
cmp rcx, rbp
je 0x14002330e
test byte [rcx + 0x1c], 1
je 0x14002330e
cmp byte [rcx + 0x19], 4
jb 0x14002330e
lea rax, [rdi + 0x2a0]
mov edx, 0x5b
mov qword [rsp + 0x20], rax
lea r8, [0x14003fab0]
mov rcx, qword [rcx + 0x10]
call fcn.140009b74
mov rcx, rdi
call fcn.1400233e8
mov rcx, qword [0x140048138]
cmp rcx, rbp
je 0x140023352
test byte [rcx + 0x1c], 1
je 0x140023352
cmp byte [rcx + 0x19], 4
jb 0x140023352
lea r8, [rdi + 0x2a0]
mov edx, 0x5c
mov qword [rsp + 0x20], r8
mov r9d, eax
lea r8, [0x14003fab0]
mov rcx, qword [rcx + 0x10]
call fcn.140009b74
lea r8, [rdi + 0xd0]
lea rdx, [rdi + 0x310]
mov rcx, qword [rdi + 0x10]
call fcn.140008704
and dword [rdi + 0x144], 0
and dword [rdi + 0x230], 0
and dword [rdi + 0x22c], 0
mov rcx, qword [0x140048138]
cmp rcx, rbp
je 0x1400233b2
test byte [rcx + 0x1c], 1
je 0x1400233b2
cmp byte [rcx + 0x19], 4
jb 0x1400233b2
lea r9, [rdi + 0x2a0]
mov edx, 0x5d
lea r8, [0x14003fab0]
mov rcx, qword [rcx + 0x10]
call fcn.14000a010
mov dword [rdi + 0xb8], 1
and dword [rsp + 0x70], 0
lea rcx, [rsp + 0x68]
call fcn.1400084bc
xor eax, eax
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop r14
ret