// File: /workspace/github_cpp_makefile_star2_O1/PRDeving[P]CheckMyTags/src/checkmytags.cpp
// Function: main
int main(int argc, char* argv[]){

    getLookFor(argv[2]);
    int count = 0;    

    string line;
    if(argc < 2){
        cout << "No file." << endl;
        return 0;
    }
    ifstream is(argv[1]);

    while(getline(is, line)){
        checkIf(&line);
        count++;
    }

    cout << endl << endl << count << " lines analyzed." << endl
         << "____________________________" << endl <<endl;

    for(unsigned int x = 0; x < tags.size(); x++){
        if(tags[x].count < 0){
            cout << abs(tags[x].count) << " " << tags[x].name << "> closes uneeded" << endl;
        }else if(tags[x].count > 0){
            cout << tags[x].count << " " << tags[x].name << "> tags unclosed" << endl;
        }else{
            cout << "Every " << tags[x].name << "> tags correctly closed" << endl;
        }
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x228, %rsp            # imm = 0x228
movq %rsi, %rbx
movl %edi, %r14d
movq 0x10(%rsi), %rdi
callq 0x23ec
leaq -0x38(%rbp), %r15
movq %r15, -0x10(%r15)
movq $0x0, -0x8(%r15)
movb $0x0, (%r15)
cmpl $0x1, %r14d
jg 0x2862
movq 0x37ba(%rip), %rbx      # 0x5fd8
leaq 0x17ff(%rip), %rsi      # 0x4024
movl $0x8, %edx
movq %rbx, %rdi
callq 0x2140
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0x2100
movsbl %al, %esi
movq 0x3788(%rip), %rdi      # 0x5fd8
callq 0x2030
movq %rax, %rdi
callq 0x20b0
jmp 0x2b7b
movq 0x8(%rbx), %rsi
leaq -0x250(%rbp), %r14
movq %r14, %rdi
movl $0x8, %edx
callq 0x21d0
xorl %ebx, %ebx
leaq -0x48(%rbp), %r15
movq -0x250(%rbp), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2100
movsbl %al, %edx
movq %r14, %rdi
movq %r15, %rsi
callq 0x21e0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
testb $0x5, 0x20(%rax,%rcx)
jne 0x28c0
movq %r15, %rdi
callq 0x266d
incl %ebx
jmp 0x2880
movq 0x3711(%rip), %rdi      # 0x5fd8
movq (%rdi), %rax
addq -0x18(%rax), %rdi
movl $0xa, %esi
callq 0x2100
movsbl %al, %esi
movq 0x36f6(%rip), %rdi      # 0x5fd8
callq 0x2030
movq %rax, %rdi
callq 0x20b0
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2100
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20b0
movq %rax, %rdi
movl %ebx, %esi
callq 0x2190
movq %rax, %rbx
leaq 0x1700(%rip), %rsi      # 0x402d
movl $0x10, %edx
movq %rax, %rdi
callq 0x2140
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2100
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20b0
movq %rax, %rbx
leaq 0x16d3(%rip), %rsi      # 0x403e
movl $0x1c, %edx
movq %rax, %rdi
callq 0x2140
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2100
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20b0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2100
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20b0
movq 0x3770(%rip), %rax      # 0x6140
cmpq %rax, 0x3771(%rip)      # 0x6148
je 0x2b6b
movl $0x1, %r15d
xorl %ecx, %ecx
movq 0x35ec(%rip), %rbx      # 0x5fd8
movabsq $-0x71c71c71c71c71c7, %r12 # imm = 0x8E38E38E38E38E39
leaq (%rcx,%rcx,8), %r14
movl 0x40(%rax,%r14,8), %esi
testl %esi, %esi
js 0x2a71
je 0x2ad8
movq %rbx, %rdi
callq 0x2190
movq %rax, %r13
movl $0x1, %edx
movq %rax, %rdi
leaq 0x165e(%rip), %rsi      # 0x4081
callq 0x2140
movq 0x3711(%rip), %rax      # 0x6140
movq (%rax,%r14,8), %rsi
movq 0x8(%rax,%r14,8), %rdx
movq %r13, %rdi
callq 0x2140
movq %rax, %r13
movl $0xf, %edx
movq %rax, %rdi
leaq 0x161a(%rip), %rsi      # 0x406c
callq 0x2140
movq (%r13), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2100
jmp 0x2b30
negl %esi
movq %rbx, %rdi
callq 0x2190
movq %rax, %r13
movl $0x1, %edx
movq %rax, %rdi
leaq 0x15f4(%rip), %rsi      # 0x4081
callq 0x2140
movq 0x36a7(%rip), %rax      # 0x6140
movq (%rax,%r14,8), %rsi
movq 0x8(%rax,%r14,8), %rdx
movq %r13, %rdi
callq 0x2140
movq %rax, %r13
movl $0x10, %edx
movq %rax, %rdi
leaq 0x159f(%rip), %rsi      # 0x405b
callq 0x2140
movq (%r13), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2100
jmp 0x2b30
movl $0x6, %edx
movq %rbx, %rdi
leaq 0x1595(%rip), %rsi      # 0x407c
callq 0x2140
movq 0x364d(%rip), %rax      # 0x6140
movq (%rax,%r14,8), %rsi
movq 0x8(%rax,%r14,8), %rdx
movq %rbx, %rdi
callq 0x2140
movq %rax, %r13
movl $0x17, %edx
movq %rax, %rdi
leaq 0x156d(%rip), %rsi      # 0x4083
callq 0x2140
movq (%r13), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2100
movsbl %al, %esi
movq %r13, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20b0
movl %r15d, %ecx
movq 0x35fb(%rip), %rdx      # 0x6148
movq 0x35ec(%rip), %rax      # 0x6140
subq %rax, %rdx
sarq $0x3, %rdx
imulq %r12, %rdx
incl %r15d
cmpq %rcx, %rdx
ja 0x29f6
leaq -0x250(%rbp), %rdi
callq 0x2040
leaq -0x38(%rbp), %r15
movq -0x48(%rbp), %rdi
cmpq %r15, %rdi
je 0x2b90
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x2120
xorl %eax, %eax
addq $0x228, %rsp            # imm = 0x228
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
jmp 0x2bc1
movq %rax, %rbx
jmp 0x2bc5
jmp 0x2bb2
jmp 0x2bb2
movq %rax, %rbx
leaq -0x250(%rbp), %rdi
callq 0x2040
leaq -0x38(%rbp), %r15
movq -0x48(%rbp), %rdi
cmpq %r15, %rdi
je 0x2bda
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x2120
movq %rbx, %rdi
callq 0x21b0