Function at 0x1400e3000
Capabilities:
Check for time delay via queryperformancecounter
Get disk size

Disassembly:
mov r11, rsp
mov byte [r11 + 0x20], r9b
mov qword [r11 + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [r11 + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x430
mov qword [rsp + 0x2b0], 0xfffffffffffffffe
movaps xmmword [r11 - 0x48], xmm6
mov rax, qword [0x14016bb40]
xor rax, rsp
mov qword [rsp + 0x410], rax
mov rsi, rcx
mov qword [r11 - 0x198], rcx
mov r12, r8
lea rax, [0x1401239b8]
mov qword [r11 - 0x350], rax
mov dword [rsp + 0x120], 0x19
mov dword [rsp + 0x124], 1
lea rdx, str.Entering_CAnalysis::AnalyzeVolume_n
lea rcx, [r11 - 0x350]
call fcn.14000b580
lea r11, [0x140123a00]
mov qword [rsp + 0x68], r11
mov dword [rsp + 0x70], 0x19
mov dword [rsp + 0x74], 1
lea rcx, section..data
mov rax, qword [section..data]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x78], rax
lea rdx, str.Leaving_CAnalysis::AnalyzeVolume_n
lea rcx, [rsp + 0x78]
call fcn.140018c30
mov rcx, qword [rsi]
test rcx, rcx
jne 0x1400e30e6
mov ecx, 0x80004003
call fcn.14001e940
int3
lea rdx, [rsp + 0x1e0]
call fcn.140001bd0
nop
lea rcx, [0x140123a48]
mov qword [rsp + 0x208], rcx
mov dword [rsp + 0x210], 0x21
mov dword [rsp + 0x214], 1
mov r8, qword [rax]
lea rdx, str.Analysis_of_volume__s_started
lea rcx, [rsp + 0x208]
call fcn.14000b5d0
nop
mov rdx, qword [rsp + 0x1e0]
add rdx, 0xffffffffffffffe8
or ebx, 0xffffffff
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400e3156
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rsi]
add rcx, 0x228
mov qword [rsp + 0x1d0], rcx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [rsp + 0x1d8], 1
xor r15d, r15d
mov qword [rsp + 0x188], r15
mov byte [rsp + 0x190], r15b
lea rcx, [rsp + 0x188]
call fcn.1400023c0
nop
mov rcx, qword [rsi]
mov qword [rsp + 0x88], rcx
mov rax, qword [rsi + 8]
mov qword [rsp + 0x90], rax
test rax, rax
je 0x1400e31c7
lock inc dword [rax + 8]
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x88]
lea rdx, [rsp + 0x88]
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x238], rax
test rax, rax
je 0x1400e31f0
lock inc dword [rax + 8]
mov r8, r12
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0x260]
call fcn.140032630
mov r14d, dword [rsp + 0x478]
mov dword [rsp + 0x2a0], r14d
mov rdi, qword [rsp + 0x90]
test rdi, rdi
je 0x1400e3244
lock dec dword [rdi + 8]
jne 0x1400e3244
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lock dec dword [rdi + 0xc]
jne 0x1400e3244
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
nop
mov r8, rsi
mov rdx, r12
lea rcx, [rsp + 0x330]
call fcn.1400cc160
nop
cmp r14d, 1
jne 0x1400e32b6
mov dword [rsp + 0x340], r14d
mov qword [rsp + 0x378], r15
mov dword [rsp + 0x388], r15d
xor eax, eax
mov qword [rsp + 0x318], rax
mov qword [rsp + 0x320], rax
lea rcx, [rsp + 0x318]
call qword [sym.imp.KERNEL32.dll_GetSystemTime]
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x358], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x360], rax
lea rcx, [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rdi, qword [rsi]
lea r13, [rdi + 0x228]
mov qword [rsp + 0x2f8], r13
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [rsp + 0x300], 1
mov edx, dword [rdi + 0x1a4]
movzx ecx, word [rdi + 0x1a0]
call fcn.1400c3fc0
movzx r12d, al
cmp byte [rdi + 0x170], 0
je 0x1400e3315
test al, al
jne 0x1400e3315
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1400e35fa
lea rax, [0x1401243f0]
mov qword [rsp + 0x138], rax
mov dword [rsp + 0x140], 0xec
mov dword [rsp + 0x144], 1
mov r8, qword [rdi + 0x198]
lea rdx, str.Intialization_for_volume__s_started.
lea rcx, [rsp + 0x138]
call fcn.14000b5d0
mov rcx, rdi
call fcn.1400c6200
lea rax, [rsp + 0x198]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x108]
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x60]
mov rcx, qword [rdi + 0x1c8]
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceW]
test eax, eax
jne 0x1400e33a9
mov byte [rdi + 0x170], al
test r12b, r12b
je 0x1400e33a4
mov rcx, qword [rdi + 0x80]
call fcn.14001f750
call fcn.140031a90
mov ecx, dword [rsp + 0x60]
mov eax, dword [rsp + 0x40]
imul rcx, rax
mov qword [rdi + 0x290], rcx
mov qword [rsp + 0x2c0], rdi
mov rcx, qword [rdi + 0x450]
call fcn.1400de9e0
mov qword [rsp + 0x2c8], rax
lea rdx, [rdi + 0x280]
mov rcx, rax
call fcn.1400b9af0
mov r12d, eax
mov r8, qword [rdi + 0x198]
test eax, eax
jns 0x1400e3439
lea rax, [0x140124408]
mov qword [rsp + 0x98], rax
mov dword [rsp + 0xa0], 0x109
mov dword [rsp + 0xa4], 1
mov r9d, r12d
lea rdx, str.GetClustersCount_for_volume__s_failed_with_error_code_0x_08x.
lea rcx, [rsp + 0x98]
call fcn.14000b5d0
mov ecx, r12d
call fcn.14001e940
lea rax, [0x1401244f0]
mov qword [rsp + 0x158], rax
mov dword [rsp + 0x160], 0x10e
mov dword [rsp + 0x164], 1
mov r9, qword [rdi + 0x280]
lea rdx, str.GetClustersCount_for_volume__s_returned__I64d_clusters.
lea rcx, [rsp + 0x158]
call fcn.14000b5d0
lea r15, [rdi + 0x258]
mov qword [rsp + 0x308], r15
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [rsp + 0x310], 1
mov rax, qword [rdi + 0x280]
add rax, 7
cqo
and edx, 7
add rax, rdx
sar rax, 3
mov qword [rdi + 0x298], rax
mov dl, 1
mov rcx, rdi
call fcn.1400c58d0
mov r12d, eax
mov r8, qword [rdi + 0x198]
test eax, eax
jns 0x1400e3513
lea rax, [0x140124508]
mov qword [rsp + 0x220], rax
mov dword [rsp + 0x228], 0x120
mov dword [rsp + 0x22c], 1
mov r9d, r12d
lea rdx, str.ReloadMap_for_volume__s_failed_with_error_code_0x_08x.
lea rcx, [rsp + 0x220]
call fcn.14000b5d0
mov ecx, r12d
call fcn.14001e940
lea rax, [0x140124600]
mov qword [rsp + 0x178], rax
mov dword [rsp + 0x180], 0x123
mov dword [rsp + 0x184], 1
lea rdx, [0x140124630]
lea rcx, [rsp + 0x178]
call fcn.14000b5d0
mov rdx, qword [rdi + 0x280]
dec rdx
mov rcx, qword [rdi + 0x20]
call fcn.140028c70
nop
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea r11, str.CVolume::Initialize
mov qword [rsp + 0x1f8], r11
mov dword [rsp + 0x200], 0x127
mov dword [rsp + 0x204], 1
mov r8, qword [rdi + 0x198]
lea rdx, str.Intialization_for_volume__s_finished.
lea rcx, [rsp + 0x1f8]
call fcn.14000b5d0
mov byte [rdi + 0x170], 1
mov rdi, qword [rdi + 0x450]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
dec dword [rdi + 0x40]
cmp dword [rdi + 0x40], 0
jg 0x1400e35df
mov rcx, qword [rdi + 0x28]
test rcx, rcx
je 0x1400e35df
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r15d, r15d
mov qword [rdi + 0x28], r15
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r14d, dword [rsp + 0x478]
mov rcx, qword [rsi]
call fcn.1400276b0
mov rcx, qword [rsi]
call fcn.1400c46a0
mov edi, eax
mov rcx, qword [rsi]
test eax, eax
jns 0x1400e366b
lea rdx, [rsp + 0x218]
call fcn.140001bd0
nop
lea rcx, [0x140123aa8]
mov qword [rsp + 0xa8], rcx
mov dword [rsp + 0xb0], 0x3c
mov dword [rsp + 0xb4], 1
mov r9d, edi
mov r8, qword [rax]
lea rdx, str.Flushing_volume__s_failed_with_error_code_0x_08x.
lea rcx, [rsp + 0xa8]
call fcn.14000b5d0
nop
mov rdx, qword [rsp + 0x218]
jmp 0x1400e36be
lea rdx, [rsp + 0xf8]
call fcn.140001bd0
nop
lea rcx, [0x140123b58]
mov qword [rsp + 0xb8], rcx
mov dword [rsp + 0xc0], 0x40
mov dword [rsp + 0xc4], 1
mov r8, qword [rax]
lea rdx, str.Volume__s_flushed.
lea rcx, [rsp + 0xb8]
call fcn.14000b5d0
nop
mov rdx, qword [rsp + 0xf8]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400e36d8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov dl, 1
mov rcx, qword [rsi]
call fcn.1400c58d0
mov rax, qword [rsi]
mov byte [rax + 0x171], 0
mov r8, qword [rsi]
cmp byte [r8 + 0x170], 0
jne 0x1400e3743
lea rax, [0x140123b78]
mov qword [rsp + 0xd0], rax
mov dword [rsp + 0xd8], 0x4c
mov dword [rsp + 0xdc], 1
mov r8, qword [r8 + 0x198]
lea rdx, str.Volume__s_is_not_initialized_
lea rcx, [rsp + 0xd0]
call fcn.14000b5d0
mov ecx, 0x139f
call fcn.14001e940
mov eax, dword [0x1401785a4]
test al, 1
jne 0x1400e3778
or eax, 1
mov dword [0x1401785a4], eax
mov qword [rsp + 0x58], 0
lea rcx, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
mov r11, qword [rsp + 0x58]
mov qword [0x1401785a8], r11
jmp 0x1400e377f
mov r11, qword [0x1401785a8]
test r11, r11
jne 0x1400e378c
xorps xmm6, xmm6
movaps xmm1, xmm6
jmp 0x1400e3801
lea rcx, [rsp + 0xc8]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov r11d, dword [0x1401785a4]
test r11b, 1
jne 0x1400e37d4
or r11d, 1
mov dword [0x1401785a4], r11d
mov qword [rsp + 0x50], 0
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
mov r11, qword [rsp + 0x50]
mov qword [0x1401785a8], r11
jmp 0x1400e37db
mov r11, qword [0x1401785a8]
mov rax, qword [rsp + 0xc8]
sub rax, qword [rsp + 0x48]
pxor xmm1, xmm1
cvtsi2ss xmm1, rax
pxor xmm0, xmm0
cvtsi2ss xmm0, r11
divss xmm1, xmm0
xorps xmm6, xmm6
lea rax, [0x140123bd8]
mov qword [rsp + 0xe8], rax
mov dword [rsp + 0xf0], 0x50
mov dword [rsp + 0xf4], 1
unpcklps xmm1, xmm1
cvtps2pd xmm2, xmm1
movq r8, xmm2
lea rdx, str.Initialization_finished_in__.3f_seconds.
lea rcx, [rsp + 0xe8]
call fcn.14000b5d0
lea rcx, [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rcx, qword [rsi]
call fcn.1400c5ef0
mov rcx, qword [rsi]
call fcn.1400277b0
mov rax, qword [rsi]
movzx edx, byte [rsp + 0x488]
lea rcx, [rsp + 0x260]
cmp dword [rax + 0x1f8], 1
jne 0x1400e3887
call fcn.1400e13d0
movzx r12d, al
jmp 0x1400e3890
call fcn.1400cb640
movzx r12d, al
lea rdx, [rsp + 0xe0]
mov rcx, qword [rsi]
call fcn.140001bd0
mov rdi, rax
mov ecx, dword [0x1401785a4]
test cl, 1
jne 0x1400e38d9
or ecx, 1
mov dword [0x1401785a4], ecx
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
mov r11, qword [rsp + 0x30]
mov qword [0x1401785a8], r11
jmp 0x1400e38e0
mov r11, qword [0x1401785a8]
test r11, r11
je 0x1400e3957
lea rcx, [rsp + 0x100]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov r11d, dword [0x1401785a4]
test r11b, 1
jne 0x1400e392d
or r11d, 1
mov dword [0x1401785a4], r11d
mov qword [rsp + 0x38], 0
lea rcx, [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
mov r11, qword [rsp + 0x38]
mov qword [0x1401785a8], r11
jmp 0x1400e3934
mov r11, qword [0x1401785a8]
mov rax, qword [rsp + 0x100]
sub rax, qword [rsp + 0x48]
pxor xmm6, xmm6
cvtsi2ss xmm6, rax
pxor xmm0, xmm0
cvtsi2ss xmm0, r11
divss xmm6, xmm0
lea rax, [0x140123c78]
mov qword [rsp + 0x128], rax
mov dword [rsp + 0x130], 0x5f
mov dword [rsp + 0x134], 1
unpcklps xmm6, xmm6
cvtps2pd xmm3, xmm6
movq r9, xmm3
mov r8, qword [rdi]
lea rdx, str.Analysis_of_volume__s_finished_in__.3f_seconds.
lea rcx, [rsp + 0x128]
call fcn.14000b5d0
nop
mov rdx, qword [rsp + 0xe0]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400e39c1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
test r12b, r12b
je 0x1400e39d0
mov rax, qword [rsi]
mov byte [rax + 0x171], 1
mov rdi, qword [rsp + 0x288]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x30]
cmp eax, 6
je 0x1400e3a14
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x30]
cmp eax, 5
je 0x1400e3a14
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x30]
cmp eax, 7
je 0x1400e3a14
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x30]
cmp eax, 8
jne 0x1400e3baf
lea rax, [0x140123d40]
mov qword [rsp + 0x148], rax
mov dword [rsp + 0x150], 0x6d
mov dword [rsp + 0x154], 1
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x30]
mov r8d, eax
lea rdx, str.Update_files_for_benchmark_after_analysis_after_operation:__d
lea rcx, [rsp + 0x148]
call fcn.14000b5d0
lea rax, [rsp + 0x168]
mov qword [rsp + 0x80], rax
mov rax, qword [rsi]
mov qword [rsp + 0x168], rax
mov rax, qword [rsi + 8]
mov qword [rsp + 0x170], rax
test rax, rax
je 0x1400e3a89
lock inc dword [rax + 8]
lea rcx, [rsp + 0x2d8]
call fcn.1400b7880
nop
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x240]
call fcn.1400b7900
nop
mov rdi, qword [rsp + 0x2e0]
test rdi, rdi
je 0x1400e3ad8
lock dec dword [rdi + 8]
jne 0x1400e3ad8
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lock dec dword [rdi + 0xc]
jne 0x1400e3ad8
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
lea rax, [rsp + 0x110]
mov qword [rsp + 0x80], rax
lea rdx, [rsp + 0x110]
mov rcx, qword [rsi]
call fcn.140001bd0
mov rdi, rax
mov qword [rsp + 0x2b8], rax
lea rcx, [rsp + 0x2e8]
call fcn.1400b7880
nop
mov rcx, qword [rax]
add rcx, 0x38
mov rdx, rdi
call fcn.14004f750
lea rcx, [rsp + 0x240]
cmp rax, rcx
je 0x1400e3b3e
lea rdx, [rsp + 0x240]
mov rcx, rax
call fcn.14004f440
nop
mov rdx, qword [rdi]
sub rdx, 0x18
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400e3b5c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdi, qword [rsp + 0x2f0]
test rdi, rdi
je 0x1400e3b88
lock dec dword [rdi + 8]
jne 0x1400e3b88
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lock dec dword [rdi + 0xc]
jne 0x1400e3b88
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x240]
test rcx, rcx
je 0x1400e3baf
mov rdx, qword [rsp + 0x248]
call fcn.14000cc70
mov rcx, qword [rsp + 0x240]
call fcn.14005e094
mov rcx, qword [rsi]
call fcn.140032590
test r12b, r12b
je 0x1400e3bdd
cmp r14d, 1
jne 0x1400e3bdd
lea rcx, [rsp + 0x330]
call fcn.1400cc980
lea rcx, [rsp + 0x330]
call fcn.1400cc360
nop
lea rcx, [rsp + 0x398]
call fcn.1400329d0
nop
mov rdx, qword [rsp + 0x350]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400e3c0e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdi, qword [rsp + 0x338]
test rdi, rdi
je 0x1400e3c3a
lock dec dword [rdi + 8]
jne 0x1400e3c3a
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lock dec dword [rdi + 0xc]
jne 0x1400e3c3a
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x290]
test rcx, rcx
je 0x1400e3c73
lock dec dword [rcx + 8]
jne 0x1400e3c73
mov rdi, qword [rsp + 0x290]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lock dec dword [rdi + 0xc]
jne 0x1400e3c73
mov rcx, qword [rsp + 0x290]
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x280]
test rcx, rcx
je 0x1400e3cac
lock dec dword [rcx + 8]
jne 0x1400e3cac
mov rdi, qword [rsp + 0x280]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lock dec dword [rdi + 0xc]
jne 0x1400e3cac
mov rcx, qword [rsp + 0x280]
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
lea rcx, [rsp + 0x188]
call fcn.1400024c0
nop
mov rcx, qword [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov byte [rsp + 0x1d8], 0
call fcn.14001dd30
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x20], rcx
mov r9d, dword [rsp + 0x74]
mov r8d, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
mov rcx, rax
call fcn.14001d040
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400e3d17
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdi, qword [rsi + 8]
test rdi, rdi
je 0x1400e3d43
mov eax, ebx
lock xadd dword [rdi + 8], eax
dec eax
jne 0x1400e3d43
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lock dec dword [rdi + 0xc]
jne 0x1400e3d43
mov rdx, qword [rdi]
mov rcx, rdi
call qword [rdx + 0x10]
movzx eax, r12b
mov rcx, qword [rsp + 0x410]
xor rcx, rsp
call fcn.14005e0b0
movaps xmm6, xmmword [rsp + 0x420]
add rsp, 0x430
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret