// File: /workspace/github_cpp_makefile_star2_O3/jovermann[P]streplace/src/streplace.cpp
// Function: Streplace::processDirectory(std::filesystem::__cxx11::directory_entry const&)
void processDirectory(const std::filesystem::directory_entry& directoryEntry)
    {
        if (recursive && (!skipDir(directoryEntry.path())))
        {
            if (verbose >= 2)
            {
                std::cout << "Processing dir " << directoryEntry.path().string() << ".\n";
            }

            // Note: Take a copy of each directory_entry intentionally,
            // because we will potentially modify it (rename) in processDirectoryEntry.
            for (std::filesystem::directory_entry entry: std::filesystem::directory_iterator(directoryEntry))
            {
                processDirectoryEntry(entry);
            }

            numDirsProcessed++;
        }
        else
        {
            std::cout << "Ignoring dir " << directoryEntry.path().string() << ".\n";
            numIgnored++;
        }
    }

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x50, %rsp
movq %rsi, %r14
movq %rdi, %rbx
cmpb $0x1, (%rdi)
jne 0x11853
movq %rbx, %rdi
movq %r14, %rsi
callq 0x20922
testb %al, %al
je 0x118d3
movq 0x1c756(%rip), %r15     # 0x2dfb0
leaq 0x1127e(%rip), %rsi     # 0x22adf
movl $0xd, %edx
movq %r15, %rdi
callq 0x54b0
movq (%r14), %rsi
leaq 0x20(%rsp), %r12
movq 0x8(%r14), %rdx
addq %rsi, %rdx
movq %r12, -0x10(%r12)
leaq 0x10(%rsp), %r14
movq %r14, %rdi
callq 0x9172
movq (%r14), %rsi
movq 0x8(%r14), %rdx
movq %r15, %rdi
callq 0x54b0
leaq 0x10068(%rip), %rsi     # 0x2190d
movl $0x2, %edx
movq %rax, %rdi
callq 0x54b0
movq 0x10(%rsp), %rdi
cmpq %r12, %rdi
je 0x118c9
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x5410
movl $0x78, %eax
jmp 0x11a26
cmpl $0x2, 0x4(%rbx)
jb 0x11950
movq 0x1c6d0(%rip), %r15     # 0x2dfb0
leaq 0x111e8(%rip), %rsi     # 0x22acf
movl $0xf, %edx
movq %r15, %rdi
callq 0x54b0
movq (%r14), %rsi
leaq 0x20(%rsp), %r13
movq 0x8(%r14), %rdx
addq %rsi, %rdx
movq %r13, -0x10(%r13)
leaq 0x10(%rsp), %r12
movq %r12, %rdi
callq 0x9172
movq (%r12), %rsi
movq 0x8(%r12), %rdx
movq %r15, %rdi
callq 0x54b0
leaq 0xffe1(%rip), %rsi      # 0x2190d
movl $0x2, %edx
movq %rax, %rdi
callq 0x54b0
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
je 0x11950
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x5410
leaq 0x40(%rsp), %r15
movq %r15, %rdi
movq %r14, %rsi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x5240
movq (%r15), %rcx
movq 0x8(%r15), %rdi
testq %rdi, %rdi
je 0x1198a
movq 0x1c631(%rip), %rax     # 0x2dfa8
cmpb $0x0, (%rax)
je 0x11999
incl 0x8(%rdi)
movq %rcx, (%rsp)
movq %rdi, 0x8(%rsp)
jmp 0x119b3
movq %rcx, (%rsp)
movq $0x0, 0x8(%rsp)
jmp 0x119c6
lock
incl 0x8(%rdi)
movq %rcx, (%rsp)
movq %rdi, 0x8(%rsp)
movq 0x48(%rsp), %rcx
movq %rcx, %rdi
testq %rcx, %rcx
je 0x119c6
cmpb $0x0, (%rax)
je 0x119bd
incl 0x8(%rdi)
jmp 0x119c1
lock
incl 0x8(%rdi)
callq 0x1ff42
movq %rsp, %r14
leaq 0x10(%rsp), %r15
cmpq $0x0, 0x8(%rsp)
je 0x11a12
movq %r14, %rdi
callq 0x5760
movq %rax, %r12
movq %r15, %rdi
movq %rax, %rsi
callq 0x11082
movb 0x28(%r12), %al
movb %al, 0x38(%rsp)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xe0ca
movq %r15, %rdi
callq 0xdfea
movq %r14, %rdi
callq 0x5140
jmp 0x119ce
movq 0x48(%rsp), %rdi
testq %rdi, %rdi
je 0x11a21
callq 0x1ff42
movl $0xa8, %eax
incq (%rbx,%rax)
addq $0x50, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
jne 0x11a54
jmp 0x11a95
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r12, %rdi
je 0x11a95
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x5410
jmp 0x11a95
jmp 0x11a74
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0xdfea
jmp 0x11a77
movq %rax, %rbx
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x11a86
callq 0x1ff42
movq 0x48(%rsp), %rdi
testq %rdi, %rdi
je 0x11a95
callq 0x1ff42
movq %rbx, %rdi
callq 0x5720
nop