// File: /workspace/github_cpp_makefile_star2_O1/Neotoxic-off[P]Abstrakt/src/abstract/abstrakt.cpp
// Function: abstrakt::display_errors()
bool abstrakt::display_errors()
{
    std::size_t count = this->reported.line.size();
    std::size_t padding = std::to_string(this->reported.line.at(count - 1)).size();
    auto line_index = this->reported.line.begin();
    auto data_index = this->reported.data.begin();

    for (; line_index != this->reported.line.end(); line_index++, data_index++) {
        std::cout << this->colors.colors["blue"] << "line " << std::setw(static_cast<int>(padding)) << *line_index << ": " << *data_index << this->colors.colors["reset"] << std::endl;
    }

    std::cout << this->colors.colors["red"] << "\nTotal Errors: " << this->reported.data.size() << this->colors.colors["reset"] << std::endl;

    return (true);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq 0xe0(%rdi), %rax
movq %rdi, -0x30(%rbp)
movq 0xe8(%rdi), %rcx
movq %rcx, %rdx
subq %rax, %rdx
sarq $0x3, %rdx
cmpq %rax, %rcx
je 0x4e9c
movq -0x8(%rax,%rdx,8), %r14
movl $0x1, %eax
cmpq $0xa, %r14
jb 0x4bb6
movl $0x4, %eax
movabsq $0x346dc5d63886594b, %rcx # imm = 0x346DC5D63886594B
movq %r14, %rdx
cmpq $0x63, %rdx
jbe 0x4baf
cmpq $0x3e7, %rdx            # imm = 0x3E7
jbe 0x4bb4
cmpq $0x2710, %rdx           # imm = 0x2710
jb 0x4bb6
mulxq %rcx, %rsi, %rsi
shrq $0xb, %rsi
addl $0x4, %eax
cmpq $0x1869f, %rdx          # imm = 0x1869F
movq %rsi, %rdx
ja 0x4b7a
addl $-0x3, %eax
jmp 0x4bb6
addl $-0x2, %eax
jmp 0x4bb6
decl %eax
movl %eax, %esi
leaq -0x40(%rbp), %rbx
movq %rbx, -0x10(%rbx)
leaq -0x50(%rbp), %r15
movq %r15, %rdi
xorl %edx, %edx
callq 0x21d0
movq (%r15), %rdi
movl 0x8(%r15), %esi
movq %r14, %rdx
callq 0x6755
movq (%r15), %rdi
movq 0x8(%r15), %r15
cmpq %rbx, %rdi
je 0x4bf5
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2190
movq -0x30(%rbp), %rax
movq 0xe0(%rax), %rbx
cmpq 0xe8(%rax), %rbx
je 0x4d7c
movq -0x30(%rbp), %rax
movq 0xc8(%rax), %r13
addq $0x30, %rax
movq %rax, -0x78(%rbp)
movslq %r15d, %rax
movq %rax, -0x80(%rbp)
leaq -0x50(%rbp), %r15
leaq -0x40(%rbp), %rax
movq %rax, -0x50(%rbp)
movq %r15, %rdi
leaq 0x251b(%rip), %rsi      # 0x7158
leaq 0x2518(%rip), %rdx      # 0x715c
callq 0x2ef8
movq -0x78(%rbp), %rdi
movq %r15, %r12
movq %r15, %rsi
callq 0x5b58
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq 0x6372(%rip), %rdi      # 0xafd8
callq 0x21c0
movq %rax, %r15
movl $0x5, %edx
movq %rax, %rdi
leaq 0x24e0(%rip), %rsi      # 0x715d
callq 0x21c0
movq (%r15), %rax
movq -0x18(%rax), %rax
movq -0x80(%rbp), %rcx
movq %rcx, 0x10(%r15,%rax)
movq (%rbx), %rsi
movq %r15, %rdi
callq 0x2100
movq %rax, %r15
movl $0x2, %edx
movq %rax, %rdi
leaq 0x24c5(%rip), %rsi      # 0x7174
callq 0x21c0
movq (%r13), %rsi
movq 0x8(%r13), %rdx
movq %r15, %rdi
callq 0x21c0
movq %rax, %r15
leaq -0x60(%rbp), %rax
movq %rax, -0x70(%rbp)
leaq -0x70(%rbp), %r14
movq %r14, %rdi
leaq 0x2473(%rip), %rsi      # 0x7150
leaq 0x2471(%rip), %rdx      # 0x7155
callq 0x2ef8
movq -0x78(%rbp), %rdi
movq %r14, %rsi
callq 0x5b58
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %r15, %rdi
callq 0x21c0
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x2170
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq -0x70(%rbp), %rdi
leaq -0x60(%rbp), %rax
cmpq %rax, %rdi
je 0x4d47
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x2190
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x4d60
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2190
addq $0x8, %rbx
addq $0x20, %r13
movq -0x30(%rbp), %rax
cmpq 0xe8(%rax), %rbx
movq %r12, %r15
jne 0x4c2b
leaq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
movq %rax, (%rdi)
leaq 0x23d5(%rip), %rsi      # 0x7163
leaq 0x23d1(%rip), %rdx      # 0x7166
callq 0x2ef8
movq -0x30(%rbp), %rax
leaq 0x30(%rax), %r14
leaq -0x50(%rbp), %rsi
movq %r14, %rdi
callq 0x5b58
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq 0x621c(%rip), %rdi      # 0xafd8
callq 0x21c0
movq %rax, %r15
leaq 0x239c(%rip), %rsi      # 0x7167
movl $0xf, %edx
movq %rax, %rdi
callq 0x21c0
movq -0x30(%rbp), %rax
movq 0xd0(%rax), %rsi
subq 0xc8(%rax), %rsi
sarq $0x5, %rsi
movq %r15, %rdi
callq 0x2100
movq %rax, %rbx
leaq -0x60(%rbp), %r15
movq %r15, -0x10(%r15)
leaq 0x2348(%rip), %rsi      # 0x7150
leaq 0x2346(%rip), %rdx      # 0x7155
leaq -0x70(%rbp), %rdi
callq 0x2ef8
leaq -0x70(%rbp), %rsi
movq %r14, %rdi
callq 0x5b58
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %rbx, %rdi
callq 0x21c0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2170
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq -0x70(%rbp), %rdi
cmpq %r15, %rdi
je 0x4e72
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x2190
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x4e8b
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2190
movb $0x1, %al
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq -0x1(%rdx), %rsi
leaq 0x24dd(%rip), %rdi      # 0x7384
xorl %eax, %eax
callq 0x2210
jmp 0x4ee7
jmp 0x4ec2
jmp 0x4ee7
movq %rax, %rbx
movq -0x70(%rbp), %rdi
cmpq %r15, %rdi
jne 0x4ed9
jmp 0x4eea
movq %rax, %rbx
jmp 0x4f03
jmp 0x4ee7
movq %rax, %rbx
movq -0x70(%rbp), %rdi
leaq -0x60(%rbp), %rax
cmpq %rax, %rdi
je 0x4eea
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x2190
jmp 0x4eea
movq %rax, %rbx
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x4f03
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2190
movq %rbx, %rdi
callq 0x2270
nop