// File: /workspace/github_cpp_makefile_star2_O1/xelia-it[P]mustache/third-party/catch2/single_include/catch2/catch.hpp
// Function: Catch::makeStream(Catch::StringRef const&)
auto makeStream( StringRef const &filename ) -> IStream const* {
        if( filename.empty() )
            return new Detail::CoutStream();
        else if( filename[0] == '%' ) {
            if( filename == "%debug" )
                return new Detail::DebugOutStream();
            else
                CATCH_ERROR( "Unrecognised stream: '" << filename << "'" );
        }
        else
            return new Detail::FileStream( filename );
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x50, %rsp
movq 0x8(%rdi), %r15
testq %r15, %r15
je 0x236ed
movq %rdi, %rbx
movq (%rdi), %r12
cmpb $0x25, (%r12)
jne 0x23725
leaq 0x59046(%rip), %rsi     # 0x7c67c
leaq -0x58(%rbp), %r14
movq %r14, %rdi
callq 0x2d91c
movq 0x8(%rbx), %rdx
cmpq 0x8(%r14), %rdx
jne 0x2378b
movq (%rbx), %rdi
movq -0x58(%rbp), %rsi
callq 0x1b570
testl %eax, %eax
jne 0x2378b
movl $0x120, %edi            # imm = 0x120
callq 0x1b510
movq %rax, %rbx
leaq 0x86020(%rip), %rax     # 0xa9698
movq %rax, (%rbx)
movl $0x148, %edi            # imm = 0x148
callq 0x1b510
movq %rax, %r14
movq 0x888a1(%rip), %rax     # 0xabf30
addq $0x10, %rax
movq %rax, (%r14)
leaq 0x38(%r14), %rdi
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%r14)
movups %xmm0, 0x18(%r14)
movups %xmm0, 0x28(%r14)
callq 0x1ba40
leaq 0x86020(%rip), %rax     # 0xa96d8
movq %rax, (%r14)
leaq 0x40(%r14), %rax
movq %r14, %rcx
addq $0x140, %rcx            # imm = 0x140
movq %rax, 0x28(%r14)
movq %rax, 0x20(%r14)
movq %rcx, 0x30(%r14)
movq %r14, 0x8(%rbx)
movq %rbx, %rdi
addq $0x10, %rdi
movq %r14, %rsi
callq 0x1b1d0
jmp 0x2377b
movl $0x118, %edi            # imm = 0x118
callq 0x1b510
movq %rax, %rbx
leaq 0x85f57(%rip), %rax     # 0xa9658
movq %rax, (%rbx)
leaq 0x8(%rbx), %rdi
movq 0x88889(%rip), %rax     # 0xabf98
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq 0xe8(%rax,%rcx), %rsi
callq 0x1b1d0
jmp 0x2377b
movl $0x208, %edi            # imm = 0x208
callq 0x1b510
movq %rax, %rbx
movq %r12, -0x68(%rbp)
movq %r15, -0x60(%rbp)
leaq 0x8602f(%rip), %rax     # 0xa9770
movq %rax, (%rbx)
movq %rbx, %r14
addq $0x8, %r14
movq %r14, %rdi
callq 0x1b8a0
leaq -0x68(%rbp), %rdi
callq 0x2d93e
movq %r14, %rdi
movq %rax, %rsi
movl $0x10, %edx
callq 0x1b080
movq (%r14), %rax
movq -0x18(%rax), %rax
testb $0x5, 0x20(%r14,%rax)
jne 0x237eb
movq %rbx, %rax
addq $0x50, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
leaq -0x38(%rbp), %r14
movq %r14, %rdi
callq 0x2d4f4
movq 0x10(%r14), %rdi
leaq 0x58ee1(%rip), %rsi     # 0x7c683
movl $0x16, %edx
callq 0x1b5e0
movq -0x28(%rbp), %rdi
movq (%rbx), %rsi
movq 0x8(%rbx), %rdx
callq 0x1b690
movq -0x28(%rbp), %rdi
leaq 0x5a820(%rip), %rsi     # 0x7dfe7
movl $0x1, %edx
callq 0x1b5e0
movq -0x28(%rbp), %rsi
addq $0x8, %rsi
leaq -0x58(%rbp), %rdi
callq 0x1b7f0
leaq -0x58(%rbp), %rdi
callq 0x1cf52
leaq -0x38(%rbp), %rdi
callq 0x2d4f4
movq -0x28(%rbp), %rdi
leaq 0x5a492(%rip), %rsi     # 0x7dc91
movl $0x16, %edx
callq 0x1b5e0
movq -0x28(%rbp), %rdi
movq %r12, %rsi
movq %r15, %rdx
callq 0x1b690
movq -0x28(%rbp), %rdi
leaq 0x5a7c4(%rip), %rsi     # 0x7dfe7
movl $0x1, %edx
callq 0x1b5e0
movq -0x28(%rbp), %rsi
addq $0x8, %rsi
leaq -0x58(%rbp), %rdi
callq 0x1b7f0
leaq -0x58(%rbp), %rdi
callq 0x1cf52
movq %rax, %r15
leaq -0x48(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x23878
callq 0x1b4d0
jmp 0x23878
movq %rax, %r15
leaq -0x48(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x238ad
callq 0x1b4d0
jmp 0x238ad
movq %rax, %r15
leaq -0x38(%rbp), %rdi
callq 0x2d53a
jmp 0x238bb
jmp 0x238b8
movq %rax, %r15
movq 0x8(%rbx), %rdi
testq %rdi, %rdi
je 0x23897
movq (%rdi), %rax
callq *0x8(%rax)
movq $0x0, 0x8(%rbx)
jmp 0x238c3
jmp 0x238a5
jmp 0x238a5
movq %rax, %r15
jmp 0x238c3
movq %rax, %r15
leaq -0x38(%rbp), %rdi
callq 0x2d53a
jmp 0x238cb
movq %rax, %r15
movq %r14, %rdi
callq 0x1b770
movq %rbx, %rdi
callq 0x1b4d0
movq %r15, %rdi
callq 0x1b910
nop