Function at 0x44d020
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x59dee1
mov eax, dword fs:[0]
push eax
sub esp, 0xdc0
mov eax, dword [0x601018]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, edx
mov dword [ebp - 0xdac], eax
lea eax, [edi + 0x808]
mov dword [ebp - 0xdc0], eax
mov eax, dword [eax]
xor ebx, ebx
mov dword [ebp - 0xda8], ecx
cmp eax, ebx
je 0x44d085
push eax
call dword [sym.imp.KERNEL32.dll_TryEnterCriticalSection]
xor edx, edx
cmp eax, ebx
setne dl
mov eax, edx
jmp 0x44d087
xor eax, eax
mov dword [ebp - 0xdbc], eax
mov dword [ebp - 4], ebx
cmp eax, ebx
je 0x44d3be
lea eax, [ebp - 0xda4]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x44d0af
xor edx, edx
xor ecx, ecx
jmp 0x44d0bb
mov ecx, dword [ebp - 0xda0]
mov edx, dword [ebp - 0xda4]
lea eax, [edi + 0x810]
mov dword [eax + 4], ecx
mov dword [ebp - 0xdb8], eax
mov dword [eax], edx
lea ecx, [ebp - 0x14c]
push str.begin_jpeg_cache_grooming
lea eax, [ebp - 0x154]
mov dword [ebp - 0x154], ecx
mov dword [ebp - 0x150], 0x100
mov dword [ebp - 0x44], 1
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], ebx
mov byte [ebp - 0x38], bl
call fcn.00506660
mov byte [ebp - 4], 1
mov eax, dword [edi + 0x824]
push eax
push str.retention
push str._s___d_
lea esi, [ebp - 0x154]
call fcn.00506600
mov edx, dword [ebp - 0xda8]
add esp, 0xc
mov dword [ebp - 0x44], ebx
push ebx
mov ebx, dword [ebp - 0xdac]
mov ecx, esi
call fcn.0042c010
xor ebx, ebx
mov byte [ebp - 4], bl
call fcn.00506520
lea eax, [ebp - 0xd9c]
call fcn.00518670
lea eax, [ebp - 0xd8c]
lea esi, [edi + 4]
mov edx, eax
sub esi, edx
mov cl, byte [esi + eax]
mov byte [eax], cl
inc eax
cmp cl, bl
jne 0x44d164
mov esi, dword [edi + 0x824]
lea eax, [ebp - 0xda4]
push eax
call dword [sym.imp.MSVCR100.dll__time64]
mov ecx, dword [ebp - 0xda4]
mov eax, esi
imul eax, eax, 0xe10
cdq
add esp, 4
sub ecx, eax
mov eax, dword [ebp - 0xda0]
sbb eax, edx
movzx edx, byte [0x5cdfb4]
mov dword [ebp - 0xd90], eax
mov eax, dword [ebp - 0x58c]
mov dword [ebp - 0xd94], ecx
mov ecx, dword [str..vje]
mov byte [ebp + eax - 0x588], 6
mov dword [ebp + eax - 0x587], ecx
mov ecx, dword [str..vjd]
mov byte [ebp + eax - 0x583], dl
movzx edx, byte [0x5cdfbc]
lea eax, [ebp + eax - 0x588]
mov eax, dword [ebp - 0x58c]
add eax, 6
mov dword [ebp - 0x58c], eax
mov byte [ebp + eax - 0x588], 6
mov dword [ebp + eax - 0x587], ecx
mov cl, byte [edi + 0x81c]
lea eax, [ebp + eax - 0x588]
mov byte [eax + 5], dl
movzx edx, byte [edi + 0x81d]
add dword [ebp - 0x58c], 6
lea eax, [edi + 0x818]
mov byte [ebp - 0x15c], cl
lea ecx, [ebp - 0xd9c]
mov dword [ebp - 0xd98], eax
mov byte [ebp - 0x15b], dl
call fcn.00518260
lea eax, [ebp - 0x14c]
mov dword [ebp - 0x154], eax
push str.end_jpeg_cache_grooming
lea eax, [ebp - 0x154]
mov dword [ebp - 0x150], 0x100
mov dword [ebp - 0x44], 1
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], ebx
mov byte [ebp - 0x38], bl
call fcn.00506660
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x170]
mov eax, dword [ebp - 0x168]
mov edx, dword [ebp - 0x16c]
mov edi, dword [ebp - 0x174]
mov dword [ebp - 0xdc8], ecx
mov ecx, dword [ebp - 0x184]
mov dword [ebp - 0xda0], eax
mov eax, dword [ebp - 0x178]
push eax
mov dword [ebp - 0xdb4], ecx
mov ecx, dword [ebp - 0x17c]
push ecx
mov dword [ebp - 0xda4], edx
mov edx, dword [ebp - 0x180]
push str.total_files
push str._s___lld_
lea esi, [ebp - 0x154]
mov dword [ebp - 0xdb0], edx
call fcn.00506600
mov edx, dword [ebp - 0xdb0]
mov eax, dword [ebp - 0xdb4]
push edx
push eax
push str.total_bytes
push str._s___lld_
call fcn.00506600
mov ecx, dword [ebp - 0xda0]
push ecx
mov edx, dword [ebp - 0xda4]
push edx
push str.deleted_files
push str._s___lld_
call fcn.00506600
mov eax, dword [ebp - 0xdc8]
push eax
push edi
push str.deleted_bytes
push str._s___lld_
call fcn.00506600
mov edi, dword [ebp - 0xdb8]
add esp, 0x40
mov esi, edi
call fcn.00503930
push edx
push eax
push str.elapsed
push str._s___lld_
lea esi, [ebp - 0x154]
call fcn.00506600
mov edx, dword [ebp - 0xda8]
add esp, 0x10
mov dword [ebp - 0x44], ebx
push ebx
mov ebx, dword [ebp - 0xdac]
mov ecx, esi
call fcn.0042c010
mov byte [ebp - 4], 0
call fcn.00506520
lea ecx, [ebp - 0xda4]
push ecx
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x44d39a
xor ecx, ecx
jmp 0x44d3a6
mov eax, dword [ebp - 0xda0]
mov ecx, dword [ebp - 0xda4]
mov edx, dword [ebp - 0xdc0]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov eax, dword [edx]
test eax, eax
je 0x44d3be
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00596083
mov esp, ebp
pop ebp
ret 4