// File: xelia-it[P]mustache/third-party/catch2/single_include/catch2/catch.hpp
// Function: Catch::(anonymous namespace)::makeReporter(std::shared_ptr<Catch::Config> const&)
IStreamingReporterPtr makeReporter(std::shared_ptr<Config> const& config) {
            if (Catch::getRegistryHub().getReporterRegistry().getListeners().empty()) {
                return createReporter(config->getReporterName(), config);
            }

            // On older platforms, returning std::unique_ptr<ListeningReporter>
            // when the return type is std::unique_ptr<IStreamingReporter>
            // doesn't compile without a std::move call. However, this causes
            // a warning on newer platforms. Thus, we have to work around
            // it a bit and downcast the pointer manually.
            auto ret = std::unique_ptr<IStreamingReporter>(new ListeningReporter);
            auto& multi = static_cast<ListeningReporter&>(*ret);
            auto const& listeners = Catch::getRegistryHub().getReporterRegistry().getListeners();
            for (auto const& listener : listeners) {
                multi.addListener(listener->create(Catch::ReporterConfig(config)));
            }
            multi.addReporter(createReporter(config->getReporterName(), config));
            return ret;
        }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x120, %rsp            # imm = 0x120
movq %rdi, -0xb8(%rbp)
movq %rdi, %rax
movq %rax, -0xb0(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
callq 0x5ee50
movq %rax, %rdi
movq (%rdi), %rax
callq *0x10(%rax)
movq %rax, %rdi
movq (%rdi), %rax
callq *0x20(%rax)
movq %rax, %rdi
callq 0xafc60
testb $0x1, %al
jne 0x7b969
jmp 0x7b9d9
movq -0x10(%rbp), %rdi
callq 0x8e0c0
movq %rax, %rdi
callq 0x5a8c0
movq %rax, -0xc8(%rbp)
movq -0x10(%rbp), %rsi
leaq -0x20(%rbp), %rdi
movq %rdi, -0xc0(%rbp)
callq 0x8e090
movq -0xb8(%rbp), %rdi
movq -0xc8(%rbp), %rsi
movq -0xc0(%rbp), %rdx
callq 0x7bcd0
jmp 0x7b9b1
leaq -0x20(%rbp), %rdi
callq 0x8c0e0
jmp 0x7bcb2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x20(%rbp), %rdi
callq 0x8c0e0
jmp 0x7bcc2
movb $0x0, -0x2d(%rbp)
movl $0x30, %edi
callq 0x52720
movq %rax, %rdi
movq %rdi, %rax
movq %rax, -0xd0(%rbp)
callq 0x77550
jmp 0x7b9fb
movq -0xb8(%rbp), %rdi
movq -0xd0(%rbp), %rsi
callq 0xafca0
movq -0xb8(%rbp), %rdi
callq 0x8f420
movq %rax, -0xd8(%rbp)
jmp 0x7ba23
movq -0xd8(%rbp), %rax
movq %rax, -0x38(%rbp)
callq 0x5ee50
movq %rax, -0xe0(%rbp)
jmp 0x7ba3c
movq -0xe0(%rbp), %rdi
movq (%rdi), %rax
movq 0x10(%rax), %rax
callq *%rax
movq %rax, -0xe8(%rbp)
jmp 0x7ba55
movq -0xe8(%rbp), %rdi
movq (%rdi), %rax
movq 0x20(%rax), %rax
callq *%rax
movq %rax, -0xf0(%rbp)
jmp 0x7ba6e
movq -0xf0(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rdi
callq 0xafcd0
movq %rax, -0x50(%rbp)
movq -0x48(%rbp), %rdi
callq 0xafd00
movq %rax, -0x58(%rbp)
leaq -0x50(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0xafd30
testb $0x1, %al
jne 0x7bab1
jmp 0x7bbd3
leaq -0x50(%rbp), %rdi
callq 0xafd70
movq %rax, -0x60(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x108(%rbp)
movq -0x60(%rbp), %rdi
callq 0x8dfe0
movq %rax, -0x100(%rbp)
movq -0x10(%rbp), %rsi
leaq -0x90(%rbp), %rdi
movq %rdi, -0xf8(%rbp)
callq 0x8e090
movq -0xf8(%rbp), %rsi
leaq -0x80(%rbp), %rdi
callq 0x5ca20
jmp 0x7bb02
movq -0x100(%rbp), %rsi
movq (%rsi), %rax
movq 0x10(%rax), %rax
leaq -0x68(%rbp), %rdi
leaq -0x80(%rbp), %rdx
callq *%rax
jmp 0x7bb1c
movq -0x108(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x775b0
jmp 0x7bb2e
leaq -0x68(%rbp), %rdi
callq 0x8f380
leaq -0x80(%rbp), %rdi
callq 0x8efa0
leaq -0x90(%rbp), %rdi
callq 0x8c0e0
leaq -0x50(%rbp), %rdi
callq 0xafd90
jmp 0x7ba9b
movq -0xd0(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
callq 0x526b0
jmp 0x7bcc2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x7bca4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x7bbc2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x7bbb9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x8f380
leaq -0x80(%rbp), %rdi
callq 0x8efa0
leaq -0x90(%rbp), %rdi
callq 0x8c0e0
jmp 0x7bca4
movq -0x38(%rbp), %rax
movq %rax, -0x120(%rbp)
movq -0x10(%rbp), %rdi
callq 0x8e0c0
movq %rax, %rdi
callq 0x5a8c0
movq %rax, -0x118(%rbp)
movq -0x10(%rbp), %rsi
leaq -0xa8(%rbp), %rdi
movq %rdi, -0x110(%rbp)
callq 0x8e090
movq -0x118(%rbp), %rsi
movq -0x110(%rbp), %rdx
leaq -0x98(%rbp), %rdi
callq 0x7bcd0
jmp 0x7bc29
movq -0x120(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x775e0
jmp 0x7bc3e
leaq -0x98(%rbp), %rdi
callq 0x8f380
leaq -0xa8(%rbp), %rdi
callq 0x8c0e0
movb $0x1, -0x2d(%rbp)
testb $0x1, -0x2d(%rbp)
jne 0x7bca2
jmp 0x7bc96
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x7bc88
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x98(%rbp), %rdi
callq 0x8f380
leaq -0xa8(%rbp), %rdi
callq 0x8c0e0
jmp 0x7bca4
movq -0xb8(%rbp), %rdi
callq 0x8f380
jmp 0x7bcb2
movq -0xb8(%rbp), %rdi
callq 0x8f380
jmp 0x7bcc2
movq -0xb0(%rbp), %rax
addq $0x120, %rsp            # imm = 0x120
popq %rbp
retq
movq -0x28(%rbp), %rdi
callq 0x52c90
nopl (%rax,%rax)