Function at 0x1400dcce0
Capabilities:
Get disk size

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], r9
mov dword [r11 + 0x18], r8d
mov qword [r11 + 0x10], rdx
mov qword [r11 + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4c0
mov qword [rsp + 0x390], 0xfffffffffffffffe
movaps xmmword [r11 - 0x48], xmm6
movaps xmmword [r11 - 0x58], xmm7
movaps xmmword [r11 - 0x68], xmm8
movaps xmmword [r11 - 0x78], xmm9
mov rax, qword [0x14016bb40]
xor rax, rsp
mov qword [rsp + 0x478], rax
mov r12, rcx
mov qword [rsp + 0x80], rcx
mov qword [r11 - 0x1c8], rcx
mov rbx, rdx
mov qword [rsp + 0x40], rdx
mov qword [r11 - 0x188], rdx
mov eax, r8d
mov dword [rsp + 0x94], eax
mov rdi, r9
lea rcx, [0x140120930]
mov qword [r11 - 0x318], rcx
mov dword [rsp + 0x1e8], 0x2c0
mov dword [rsp + 0x1ec], 1
lea rdx, str.Entering_CDefragmentation::DefragFiles__d__n
lea rcx, [r11 - 0x318]
call fcn.14000b580
lea r11, [0x140120980]
mov qword [rsp + 0x48], r11
mov dword [rsp + 0x50], 0x2c1
mov dword [rsp + 0x54], 1
lea rcx, section..data
mov rax, qword [section..data]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
lea rdx, [0x1401209a0]
lea rcx, [rsp + 0x58]
call fcn.140018c30
lea r11, [0x1401209c8]
mov qword [rsp + 0x268], r11
mov dword [rsp + 0x270], 0x2c3
mov dword [rsp + 0x274], 1
lea rdx, str.Entering_CDefragmentation::DefragFiles_n
lea rcx, [rsp + 0x268]
call fcn.14000b580
lea r11, [0x140120a10]
mov qword [rsp + 0x60], r11
mov dword [rsp + 0x68], 0x2c3
mov dword [rsp + 0x6c], 1
lea rcx, section..data
mov rax, qword [section..data]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x70], rax
lea rdx, str.Leaving_CDefragmentation::DefragFiles_n
lea rcx, [rsp + 0x70]
call fcn.140018c30
mov rcx, qword [r12]
test rcx, rcx
jne 0x1400dce77
mov ecx, 0x80004003
call fcn.14001e940
int3
mov edx, dword [rcx + 0x1a4]
movzx ecx, word [rcx + 0x1a0]
call fcn.1400c3fc0
test al, al
je 0x1400dce98
mov dl, 1
mov rcx, qword [r12]
call fcn.1400c62c0
mov rax, qword [rbx]
test rax, rax
je 0x1400ddd7e
cmp qword [rax + 8], 0
je 0x1400ddd7e
mov rcx, qword [r12]
add rcx, 0x228
mov qword [rsp + 0xe0], rcx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [rsp + 0xe8], 1
xor r13d, r13d
mov qword [rsp + 0x240], r13
mov byte [rsp + 0x248], r13b
lea rcx, [rsp + 0x240]
call fcn.1400023c0
nop
lea rcx, [rsp + 0x3c0]
call fcn.14003de80
nop
lea ecx, [r13 + 0x40]
call fcn.14005e584
mov qword [rsp + 0x388], rax
test rax, rax
je 0x1400dcf4f
mov rcx, qword [r12]
mov qword [rsp + 0x300], rcx
mov rcx, qword [r12 + 8]
mov qword [rsp + 0x308], rcx
test rcx, rcx
je 0x1400dcf37
lock inc dword [rcx + 8]
mov r8, rdi
lea rdx, [rsp + 0x300]
mov rcx, rax
call fcn.140032630
mov rbx, rax
jmp 0x1400dcf52
mov rbx, r13
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], r13
mov rdx, rbx
lea rcx, [rsp + 0x220]
call fcn.14003f020
mov rdx, qword [rsp + 0xc0]
mov rcx, qword [rax]
mov qword [rsp + 0xc0], rcx
mov qword [rax], rdx
mov rdi, qword [rsp + 0x220]
or r15, 0xffffffffffffffff
test rdi, rdi
je 0x1400dcfb7
lock dec dword [rdi + 8]
jne 0x1400dcfb7
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lock dec dword [rdi + 0xc]
jne 0x1400dcfb7
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
mov r8, rbx
mov rdx, rbx
lea rcx, [rsp + 0xb8]
call fcn.140017020
nop
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x428]
call fcn.14003e010
nop
mov rdi, qword [rsp + 0xc0]
test rdi, rdi
je 0x1400dd019
mov eax, r15d
lock xadd dword [rdi + 8], eax
dec eax
jne 0x1400dd019
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
mov eax, r15d
lock xadd dword [rdi + 0xc], eax
dec eax
jne 0x1400dd019
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
nop
mov rdi, qword [r12]
lea rsi, [rdi + 0x228]
mov qword [rsp + 0x378], rsi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [rsp + 0x380], 1
mov edx, dword [rdi + 0x1a4]
movzx ecx, word [rdi + 0x1a0]
call fcn.1400c3fc0
movzx ebx, al
cmp byte [rdi + 0x170], 0
je 0x1400dd06d
test al, al
jne 0x1400dd06d
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1400dd35e
lea rax, [0x1401243f0]
mov qword [rsp + 0x200], rax
mov dword [rsp + 0x208], 0xec
mov dword [rsp + 0x20c], 1
mov r8, qword [rdi + 0x198]
lea rdx, str.Intialization_for_volume__s_started.
lea rcx, [rsp + 0x200]
call fcn.14000b5d0
mov rcx, rdi
call fcn.1400c6200
lea rax, [rsp + 0x238]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x1c8]
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x98]
mov rcx, qword [rdi + 0x1c8]
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceW]
test eax, eax
jne 0x1400dd106
mov byte [rdi + 0x170], al
test bl, bl
je 0x1400dd101
mov rcx, qword [rdi + 0x80]
call fcn.14001f750
call fcn.140031a90
mov ecx, dword [rsp + 0x98]
mov eax, dword [rsp + 0x90]
imul rcx, rax
mov qword [rdi + 0x290], rcx
mov qword [rsp + 0x338], rdi
mov rcx, qword [rdi + 0x450]
call fcn.1400de9e0
mov qword [rsp + 0x340], rax
lea rdx, [rdi + 0x280]
mov rcx, rax
call fcn.1400b9af0
mov ebx, eax
mov r8, qword [rdi + 0x198]
test eax, eax
jns 0x1400dd19a
lea rax, [0x140124408]
mov qword [rsp + 0x250], rax
mov dword [rsp + 0x258], 0x109
mov dword [rsp + 0x25c], 1
mov r9d, ebx
lea rdx, str.GetClustersCount_for_volume__s_failed_with_error_code_0x_08x.
lea rcx, [rsp + 0x250]
call fcn.14000b5d0
mov ecx, ebx
call fcn.14001e940
lea rax, [0x1401244f0]
mov qword [rsp + 0x198], rax
mov dword [rsp + 0x1a0], 0x10e
mov dword [rsp + 0x1a4], 1
mov r9, qword [rdi + 0x280]
lea rdx, str.GetClustersCount_for_volume__s_returned__I64d_clusters.
lea rcx, [rsp + 0x198]
call fcn.14000b5d0
lea r13, [rdi + 0x258]
mov qword [rsp + 0x348], r13
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [rsp + 0x350], 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 ebx, eax
mov r8, qword [rdi + 0x198]
test eax, eax
jns 0x1400dd272
lea rax, [0x140124508]
mov qword [rsp + 0x1a8], rax
mov dword [rsp + 0x1b0], 0x120
mov dword [rsp + 0x1b4], 1
mov r9d, ebx
lea rdx, str.ReloadMap_for_volume__s_failed_with_error_code_0x_08x.
lea rcx, [rsp + 0x1a8]
call fcn.14000b5d0
mov ecx, ebx
call fcn.14001e940
lea rax, [0x140124600]
mov qword [rsp + 0x1b8], rax
mov dword [rsp + 0x1c0], 0x123
mov dword [rsp + 0x1c4], 1
lea rdx, [0x140124630]
lea rcx, [rsp + 0x1b8]
call fcn.14000b5d0
mov rdx, qword [rdi + 0x280]
dec rdx
mov rcx, qword [rdi + 0x20]
call fcn.140028c70
nop
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea r11, str.CVolume::Initialize
mov qword [rsp + 0x1d0], r11
mov dword [rsp + 0x1d8], 0x127
mov dword [rsp + 0x1dc], 1
mov r8, qword [rdi + 0x198]
lea rdx, str.Intialization_for_volume__s_finished.
lea rcx, [rsp + 0x1d0]
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 0x1400dd340
mov rcx, qword [rdi + 0x28]
test rcx, rcx
je 0x1400dd340
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r13d, r13d
mov qword [rdi + 0x28], r13
jmp 0x1400dd343
xor r13d, r13d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r12, qword [rsp + 0x80]
xor edx, edx
mov rcx, qword [r12]
call fcn.1400c58d0
lea rcx, [0x140120a58]
mov qword [rsp + 0x1f0], rcx
mov dword [rsp + 0x1f8], 0x2e7
mov dword [rsp + 0x1fc], 1
mov r8d, eax
lea rdx, str.ReloadMap_returned_0x_08x_n
lea rcx, [rsp + 0x1f0]
call fcn.14000b580
mov r8, qword [r12]
cmp byte [r8 + 0x170], 0
jne 0x1400dd3fd
lea rax, [0x140120a98]
mov qword [rsp + 0x210], rax
mov dword [rsp + 0x218], 0x2eb
mov dword [rsp + 0x21c], 1
mov r8, qword [r8 + 0x198]
lea rdx, [0x140120ab8]
lea rcx, [rsp + 0x210]
call fcn.14000b5d0
mov ecx, 0x139f
call fcn.14001e940
mov qword [rsp + 0x438], r13
mov qword [rsp + 0x440], r13
lea rbx, vtable.OperationStatus.0
mov qword [rsp + 0x108], rbx
xorpd xmm9, xmm9
movsd qword [rsp + 0x110], xmm9
mov qword [rsp + 0x118], 0
mov dword [rsp + 0x120], r13d
lea rdx, str.Unknown
lea rcx, [rsp + 0x128]
call fcn.14001e210
nop
lea rcx, section..data
mov rax, qword [section..data]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x130], rax
mov dword [rsp + 0x118], 3
mov qword [rsp + 0x11c], 1
lea rdx, [rsp + 0x108]
mov rcx, qword [rsp + 0x428]
call fcn.140022750
nop
mov rdx, qword [rsp + 0x130]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400dd4c1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdx, qword [rsp + 0x128]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400dd4e4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov qword [rsp + 0xa8], r13
mov ecx, 0x18
call fcn.14005e584
test rax, rax
je 0x1400ddd3d
mov qword [rsp + 0xa0], rax
mov qword [rax], rax
mov rax, qword [rsp + 0xa0]
mov qword [rax + 8], rax
mov r14b, 1
mov rdi, qword [rsp + 0x40]
mov rax, qword [rdi]
mov qword [rsp + 0x398], rax
mov rcx, qword [rax]
mov rax, qword [rcx]
mov qword [rsp + 0x88], rax
lea r12, [rsp + 0x88]
mov qword [rsp + 0x78], rcx
movzx esi, r14b
movsd xmm8, qword [0x140135628]
lea rax, [rsp + 0x78]
test sil, sil
je 0x1400dd700
mov rcx, qword [r12]
cmp rcx, qword [rax]
je 0x1400dd700
xor sil, sil
mov rcx, qword [rcx + 0x10]
sub rcx, 0x18
call fcn.14001e5d0
lea rbx, [rax + 0x18]
mov qword [rsp + 0x3b8], rbx
xor edx, edx
nop word [rax + rax]
test sil, sil
jne 0x1400dd6bb
mov rcx, qword [rdi]
mov rax, qword [rcx + 8]
movd xmm6, r13d
cvtdq2pd xmm6, xmm6
pxor xmm0, xmm0
cvtsi2sd xmm0, rax
test rax, rax
jns 0x1400dd5bc
addsd xmm0, xmm8
divsd xmm6, xmm0
movsd xmm1, qword [0x14011ff38]
mulsd xmm6, xmm1
lea r12d, [r13 + 1]
movd xmm7, r12d
cvtdq2pd xmm7, xmm7
pxor xmm0, xmm0
cvtsi2sd xmm0, rax
test rax, rax
jns 0x1400dd5ec
addsd xmm0, xmm8
divsd xmm7, xmm0
mulsd xmm7, xmm1
mov qword [rsp + 0x468], 7
mov qword [rsp + 0x460], rdx
mov word [rsp + 0x450], dx
xor eax, eax
mov rcx, r15
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rbx
lea rcx, [rsp + 0x450]
call fcn.14001a580
nop
mov byte [rsp + 0x30], 0
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x28], rax
movsd qword [rsp + 0x20], xmm7
movapd xmm3, xmm6
mov r8d, dword [rsp + 0x94]
lea rdx, [rsp + 0x450]
lea rcx, [rsp + 0x3c0]
call fcn.1400dc210
movzx r14d, al
cmp qword [rsp + 0x468], 8
jb 0x1400dd688
mov rcx, qword [rsp + 0x450]
call fcn.14005e094
mov qword [rsp + 0x468], 7
xor edx, edx
mov qword [rsp + 0x460], rdx
mov word [rsp + 0x450], dx
mov rdi, qword [rsp + 0x40]
test r14b, r14b
je 0x1400dd6bb
mov r13d, r12d
mov sil, 1
jmp 0x1400dd590
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400dd6d6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
test sil, sil
lea r12, [rsp + 0x88]
lea rax, [rsp + 0x78]
je 0x1400dd700
lea r12, [rsp + 0x88]
mov rax, qword [r12]
mov rcx, qword [rax]
mov qword [r12], rcx
jmp 0x1400dd551
cmp qword [rsp + 0xa8], 0
je 0x1400dd9d3
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0xf0]
call fcn.14000b620
nop
lea rcx, [rsp + 0xa0]
call fcn.14000c960
xor r13d, r13d
mov esi, r13d
mov rdx, qword [rsp + 0xf0]
mov rax, qword [rdx]
mov qword [rsp + 0xd0], rax
lea rdi, [rsp + 0xd0]
mov qword [rsp + 0xc8], rdx
mov bl, 1
movsd xmm6, qword [0x140136a48]
mov r12, qword [rsp + 0x80]
lea rax, [rsp + 0xc8]
test bl, bl
je 0x1400dd975
mov rcx, qword [rdi]
cmp rcx, qword [rax]
je 0x1400dd975
xor bl, bl
mov rcx, qword [rcx + 0x10]
sub rcx, 0x18
call fcn.14001e5d0
lea rdi, [rax + 0x18]
mov qword [rsp + 0xd8], rdi
test bl, bl
jne 0x1400dd93c
mov byte [rsp + 0x2b0], bl
mov qword [rsp + 0x2b1], r13
mov qword [rsp + 0x2b9], r13
mov qword [rsp + 0x2c1], r13
lea rcx, [rsp + 0x2c9]
call fcn.140028bf0
nop
mov rax, qword [r12]
mov qword [rsp + 0x320], rax
mov rax, qword [r12 + 8]
mov qword [rsp + 0x328], rax
test rax, rax
je 0x1400dd803
lock inc dword [rax + 8]
mov rdi, qword [rsp + 0xd8]
lea r8, [rsp + 0x2b0]
mov rdx, rdi
lea rcx, [rsp + 0x320]
call fcn.1400c74a0
mov rax, qword [rsp + 0xf8]
pxor xmm2, xmm2
cvtsi2sd xmm2, rax
test rax, rax
jns 0x1400dd836
addsd xmm2, xmm8
movd xmm0, esi
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm0, qword [0x14011ff38]
movsd qword [rsp + 0x260], xmm0
inc esi
lea rax, [rsp + 0x260]
mov qword [rsp + 0x2f0], rax
movd xmm0, esi
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm0, qword [0x14011ff38]
movsd qword [rsp + 0x2f8], xmm0
mov qword [rsp + 0x310], r13
mov qword [rsp + 0x318], r13
movaps xmm0, xmmword [rsp + 0x2f0]
movdqa xmmword [rsp + 0x360], xmm0
lea rax, [rsp + 0x310]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x360]
lea r8, [rsp + 0x2b0]
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x3c0]
call fcn.1400db8b0
test eax, eax
setns r14b
lea r13, [rsp + 0x2c9]
mov rax, qword [rsp + 0x2c9]
mov rcx, qword [rax]
mov qword [rax], rax
mov rax, qword [rsp + 0x2c9]
mov qword [rax + 8], rax
mov qword [rsp + 0x2d1], 0
cmp rcx, qword [r13]
je 0x1400dd929
mov rbx, qword [rcx]
call fcn.14005e094
mov rcx, rbx
jmp 0x1400dd916
mov rcx, qword [r13]
call fcn.14005e094
mov bl, 1
xor r13d, r13d
jmp 0x1400dd7a4
lea rdx, [rdi - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400dd957
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
lea rdi, [rsp + 0xd0]
mov rax, qword [rdi]
mov rcx, qword [rax]
mov qword [rdi], rcx
mov rdx, qword [rsp + 0xf0]
jmp 0x1400dd76d
mov rdi, qword [rdx]
mov qword [rdx], rdx
mov rax, qword [rsp + 0xf0]
mov qword [rax + 8], rax
mov qword [rsp + 0xf8], r13
nop
mov rcx, qword [rsp + 0xf0]
cmp rdi, rcx
je 0x1400dd9cc
mov rbx, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rdx, 0x18
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400dd9bf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, rdi
call fcn.14005e094
mov rdi, rbx
jmp 0x1400dd990
call fcn.14005e094
jmp 0x1400dd9de
mov r12, qword [rsp + 0x80]
xor r13d, r13d
mov edi, r13d
cmp qword [rsp + 0x440], 0
jbe 0x1400dd9fb
cmp qword [rsp + 0x438], 0
setne dil
inc edi
test r14b, r14b
je 0x1400ddac6
lea rax, vtable.OperationStatus.0
mov qword [rsp + 0x168], rax
movsd qword [rsp + 0x170], xmm9
mov qword [rsp + 0x178], 0
mov dword [rsp + 0x180], r13d
lea rdx, str.Unknown
lea rcx, [rsp + 0x188]
call fcn.14001e210
nop
lea rcx, section..data
mov rax, qword [section..data]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x190], rax
mov dword [rsp + 0x178], 3
mov dword [rsp + 0x17c], 6
mov dword [rsp + 0x180], edi
lea rdx, [rsp + 0x168]
mov rcx, qword [rsp + 0x428]
call fcn.140022750
nop
mov rdx, qword [rsp + 0x190]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400ddab9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdx, qword [rsp + 0x188]
jmp 0x1400ddb83
lea rax, vtable.OperationStatus.0
mov qword [rsp + 0x138], rax
movsd qword [rsp + 0x140], xmm9
mov qword [rsp + 0x148], 0
mov dword [rsp + 0x150], r13d
lea rdx, str.Unknown
lea rcx, [rsp + 0x158]
call fcn.14001e210
nop
lea rcx, section..data
mov rax, qword [section..data]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x160], rax
mov dword [rsp + 0x148], 3
mov dword [rsp + 0x14c], 5
mov dword [rsp + 0x150], edi
lea rdx, [rsp + 0x138]
mov rcx, qword [rsp + 0x428]
call fcn.140022750
nop
mov rdx, qword [rsp + 0x160]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400ddb7b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdx, qword [rsp + 0x158]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400ddb9e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
lea rax, str.CDefragmentation::DefragFiles
mov qword [rsp + 0x228], rax
mov dword [rsp + 0x230], 0x332
mov dword [rsp + 0x234], 1
movzx r8d, r14b
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x438]
lea rdx, str.DefragFiles_finished_with_status:_0x_08x._Defragmented:__d__Failed:__d.
lea rcx, [rsp + 0x228]
call fcn.14000b5d0
nop
mov rax, qword [rsp + 0xa0]
mov rdi, qword [rax]
mov qword [rax], rax
mov rax, qword [rsp + 0xa0]
mov qword [rax + 8], rax
mov qword [rsp + 0xa8], r13
mov rcx, qword [rsp + 0xa0]
cmp rdi, rcx
je 0x1400ddc4f
mov rbx, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rdx, 0x18
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400ddc42
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, rdi
call fcn.14005e094
mov rdi, rbx
jmp 0x1400ddc13
call fcn.14005e094
nop
lea rcx, [rsp + 0x3c0]
call fcn.14003df00
nop
lea rcx, [rsp + 0x240]
call fcn.1400024c0
nop
cmp byte [rsp + 0xe8], 0
je 0x1400ddc91
mov rcx, qword [rsp + 0xe0]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov byte [rsp + 0xe8], 0
call fcn.14001dd30
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x20], rcx
mov r9d, dword [rsp + 0x6c]
mov r8d, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
mov rcx, rax
call fcn.14001d040
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400ddcd9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
call fcn.14001dd30
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x20], rcx
mov r9d, dword [rsp + 0x54]
mov r8d, dword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
mov rcx, rax
call fcn.14001d040
nop
mov rax, qword [rsp + 0x58]
lea rdx, [rax - 0x18]
lock xadd dword [rdx + 0x10], r15d
dec r15d
test r15d, r15d
jg 0x1400ddd21
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, r12
call fcn.14002d430
nop
mov rcx, qword [rsp + 0x40]
call fcn.14002d430
movzx eax, r14b
jmp 0x1400dde76
mov qword [rsp + 0x278], r13
lea rdx, [rsp + 0x278]
lea rcx, [rsp + 0x3a0]
call fcn.14005e770
lea rax, vtable.std::bad_alloc.0
mov qword [rsp + 0x3a0], rax
lea rdx, [0x1401692c0]
lea rcx, [rsp + 0x3a0]
call fcn.140062dbc
nop
call fcn.14001dd30
mov rcx, rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x6c]
mov r8d, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
call fcn.14001d040
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
or r15, 0xffffffffffffffff
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400dddca
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
call fcn.14001dd30
mov rcx, rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x54]
mov r8d, dword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.14001d040
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400dde12
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdi, qword [r12 + 8]
test rdi, rdi
je 0x1400dde47
mov eax, r15d
lock xadd dword [rdi + 8], eax
dec eax
jne 0x1400dde47
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
mov eax, r15d
lock xadd dword [rdi + 0xc], eax
dec eax
jne 0x1400dde47
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
nop
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x1400dde74
mov eax, r15d
lock xadd dword [rdi + 8], eax
dec eax
jne 0x1400dde74
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lock dec dword [rdi + 0xc]
jne 0x1400dde74
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
xor al, al
mov rcx, qword [rsp + 0x478]
xor rcx, rsp
call fcn.14005e0b0
lea r11, [rsp + 0x4c0]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret