// File: tdv[P]boss/boss/include/other/rapidxml-1.13/rapidxml_print.hpp
// Function: std::ostream_iterator<char, char, std::char_traits<char>> rapidxml::internal::copy_and_expand_chars<std::ostream_iterator<char, char, std::char_traits<char>>, char>(char const*, char const*, char, std::ostream_iterator<char, char, std::char_traits<char>>)
inline OutIt copy_and_expand_chars(const Ch *begin, const Ch *end, Ch noexpand, OutIt out)
        {
            while (begin != end)
            {
                if (*begin == noexpand)
                {
                    *out++ = *begin;    // No expansion, copy character
                }
                else
                {
                    switch (*begin)
                    {
                    case Ch('<'):
                        *out++ = Ch('&'); *out++ = Ch('l'); *out++ = Ch('t'); *out++ = Ch(';');
                        break;
                    case Ch('>'): 
                        *out++ = Ch('&'); *out++ = Ch('g'); *out++ = Ch('t'); *out++ = Ch(';');
                        break;
                    case Ch('\''): 
                        *out++ = Ch('&'); *out++ = Ch('a'); *out++ = Ch('p'); *out++ = Ch('o'); *out++ = Ch('s'); *out++ = Ch(';');
                        break;
                    case Ch('"'): 
                        *out++ = Ch('&'); *out++ = Ch('q'); *out++ = Ch('u'); *out++ = Ch('o'); *out++ = Ch('t'); *out++ = Ch(';');
                        break;
                    case Ch('&'): 
                        *out++ = Ch('&'); *out++ = Ch('a'); *out++ = Ch('m'); *out++ = Ch('p'); *out++ = Ch(';'); 
                        break;
                    default:
                        *out++ = *begin;    // No expansion, copy character
                    }
                }
                ++begin;    // Step to next character
            }
            return out;
        }

// Assembly:
subq $0x78, %rsp
movq %r8, 0x18(%rsp)
movq %rdi, 0x20(%rsp)
movb %cl, %al
movq %rdi, %rcx
movq %rcx, 0x28(%rsp)
movq %rdi, 0x70(%rsp)
movq %rsi, 0x68(%rsp)
movq %rdx, 0x60(%rsp)
movb %al, 0x5f(%rsp)
movq %r8, 0x50(%rsp)
movq 0x68(%rsp), %rax
cmpq 0x60(%rsp), %rax
je 0x3c24b
movq 0x68(%rsp), %rax
movsbl (%rax), %eax
movsbl 0x5f(%rsp), %ecx
cmpl %ecx, %eax
jne 0x3be11
movq 0x18(%rsp), %rdi
movq 0x68(%rsp), %rax
movq %rax, 0x10(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq 0x10(%rsp), %rsi
movq %rax, %rdi
callq 0x3b850
jmp 0x3c238
movq 0x68(%rsp), %rax
movsbl (%rax), %eax
addl $-0x22, %eax
movl %eax, %ecx
movq %rcx, 0x8(%rsp)
subl $0x1c, %eax
ja 0x3c20d
movq 0x8(%rsp), %rax
leaq 0xba358(%rip), %rcx     # 0xf6190
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x18(%rsp), %rdi
movb $0x26, 0x4f(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x4f(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x6c, 0x4e(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x4e(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x74, 0x4d(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x4d(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x3b, 0x4c(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x4c(%rsp), %rsi
callq 0x3b850
jmp 0x3c236
movq 0x18(%rsp), %rdi
movb $0x26, 0x4b(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x4b(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x67, 0x4a(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x4a(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x74, 0x49(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x49(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x3b, 0x48(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3b850
jmp 0x3c236
movq 0x18(%rsp), %rdi
movb $0x26, 0x47(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x47(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x61, 0x46(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x46(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x70, 0x45(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x45(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x6f, 0x44(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x44(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x73, 0x43(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x43(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x3b, 0x42(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x42(%rsp), %rsi
callq 0x3b850
jmp 0x3c236
movq 0x18(%rsp), %rdi
movb $0x26, 0x41(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x41(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x71, 0x40(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x40(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x75, 0x3f(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x3f(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x6f, 0x3e(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x3e(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x74, 0x3d(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x3d(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x3b, 0x3c(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x3c(%rsp), %rsi
callq 0x3b850
jmp 0x3c236
movq 0x18(%rsp), %rdi
movb $0x26, 0x3b(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x3b(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x61, 0x3a(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x3a(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x6d, 0x39(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x39(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x70, 0x38(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x38(%rsp), %rsi
callq 0x3b850
movq 0x18(%rsp), %rdi
movb $0x3b, 0x37(%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq %rax, %rdi
leaq 0x37(%rsp), %rsi
callq 0x3b850
jmp 0x3c236
movq 0x18(%rsp), %rdi
movq 0x68(%rsp), %rax
movq %rax, (%rsp)
xorl %esi, %esi
callq 0x3c270
movq %rax, %rdi
callq 0x3b840
movq (%rsp), %rsi
movq %rax, %rdi
callq 0x3b850
jmp 0x3c238
movq 0x68(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x68(%rsp)
jmp 0x3bdc0
movq 0x18(%rsp), %rsi
movq 0x20(%rsp), %rdi
callq 0x3a270
movq 0x28(%rsp), %rax
addq $0x78, %rsp
retq
nopw %cs:(%rax,%rax)
nop