// File: kongrigoriou[P]Text-Based-RPG/src/Heroes.cpp
// Function: Hero::display_inventory()
void Hero::display_inventory(){

    list<Weapon*> ::iterator it;
    list<Armor*> :: iterator ar;
    list<Potion*> :: iterator pt;
    list<Spell*> :: iterator is;
    cout << "Weapons are" << endl;
    for (it = Weapons.begin(); it !=  Weapons.end(); ++it){
        cout << (*it)->get_name() << " " ;
    }
    cout << endl;
    cout << "Armors are" << endl;
	for(ar = Armors.begin(); ar != Armors.end(); ++ar){
        cout << (*ar)->get_name() << " ";
    }
    cout << endl;
    cout << "Potions are" << endl;
    for(pt = Potions.begin(); pt != Potions.end(); ++pt){
        cout <<(*pt)->get_name() << " " ;
    }
    cout << endl;
    cout << "Spells are" << endl;
   for(is = Spells.begin(); is!= Spells.end(); ++is){
       cout << (*is)->get_name() << " ";
   }
   cout << endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x140, %rsp            # imm = 0x140
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x100(%rbp)
leaq -0x10(%rbp), %rdi
callq 0x7ad0
leaq -0x18(%rbp), %rdi
callq 0x7af0
leaq -0x20(%rbp), %rdi
callq 0x7b10
leaq -0x28(%rbp), %rdi
callq 0x7b30
movq 0x195ab(%rip), %rdi     # 0x1efd0
leaq 0xf909(%rip), %rsi      # 0x15335
callq 0x31e0
movq %rax, %rdi
movq 0x19585(%rip), %rsi     # 0x1efc0
callq 0x3210
movq -0x100(%rbp), %rdi
addq $0x68, %rdi
callq 0x7b50
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x100(%rbp), %rdi
addq $0x68, %rdi
callq 0x7bb0
movq %rax, -0x38(%rbp)
leaq -0x10(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0x7b80
testb $0x1, %al
jne 0x5a83
jmp 0x5b01
leaq -0x10(%rbp), %rdi
callq 0x7be0
movq (%rax), %rsi
leaq -0x58(%rbp), %rdi
movq %rdi, -0x110(%rbp)
callq 0x12640
movq -0x110(%rbp), %rsi
movq 0x19523(%rip), %rdi     # 0x1efd0
callq 0x31b0
movq %rax, -0x108(%rbp)
jmp 0x5abb
movq -0x108(%rbp), %rdi
leaq 0x10041(%rip), %rsi     # 0x15b0a
callq 0x31e0
jmp 0x5ad0
leaq -0x58(%rbp), %rdi
callq 0x3120
leaq -0x10(%rbp), %rdi
callq 0x7c00
jmp 0x5a5c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x58(%rbp), %rdi
callq 0x3120
jmp 0x5e4a
movq 0x194c8(%rip), %rdi     # 0x1efd0
movq 0x194b1(%rip), %rsi     # 0x1efc0
callq 0x3210
movq 0x194b5(%rip), %rdi     # 0x1efd0
leaq 0xf81f(%rip), %rsi      # 0x15341
callq 0x31e0
movq %rax, %rdi
movq 0x1948f(%rip), %rsi     # 0x1efc0
callq 0x3210
movq -0x100(%rbp), %rdi
addq $0x98, %rdi
callq 0x7c20
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x100(%rbp), %rdi
addq $0x98, %rdi
callq 0x7c80
movq %rax, -0x78(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x7c50
testb $0x1, %al
jne 0x5b82
jmp 0x5c09
leaq -0x18(%rbp), %rdi
callq 0x7cb0
movq (%rax), %rsi
leaq -0x98(%rbp), %rdi
movq %rdi, -0x120(%rbp)
callq 0x12640
movq -0x120(%rbp), %rsi
movq 0x19421(%rip), %rdi     # 0x1efd0
callq 0x31b0
movq %rax, -0x118(%rbp)
jmp 0x5bbd
movq -0x118(%rbp), %rdi
leaq 0xff3f(%rip), %rsi      # 0x15b0a
callq 0x31e0
jmp 0x5bd2
leaq -0x98(%rbp), %rdi
callq 0x3120
leaq -0x18(%rbp), %rdi
callq 0x7cd0
jmp 0x5b55
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x98(%rbp), %rdi
callq 0x3120
jmp 0x5e4a
movq 0x193c0(%rip), %rdi     # 0x1efd0
movq 0x193a9(%rip), %rsi     # 0x1efc0
callq 0x3210
movq 0x193ad(%rip), %rdi     # 0x1efd0
leaq 0xf722(%rip), %rsi      # 0x1534c
callq 0x31e0
movq %rax, %rdi
movq 0x19387(%rip), %rsi     # 0x1efc0
callq 0x3210
movq -0x100(%rbp), %rdi
addq $0xb0, %rdi
callq 0x7cf0
movq %rax, -0xa0(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x100(%rbp), %rdi
addq $0xb0, %rdi
callq 0x7d50
movq %rax, -0xa8(%rbp)
leaq -0x20(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x7d20
testb $0x1, %al
jne 0x5c96
jmp 0x5d1d
leaq -0x20(%rbp), %rdi
callq 0x7d80
movq (%rax), %rsi
leaq -0xc8(%rbp), %rdi
movq %rdi, -0x130(%rbp)
callq 0x12640
movq -0x130(%rbp), %rsi
movq 0x1930d(%rip), %rdi     # 0x1efd0
callq 0x31b0
movq %rax, -0x128(%rbp)
jmp 0x5cd1
movq -0x128(%rbp), %rdi
leaq 0xfe2b(%rip), %rsi      # 0x15b0a
callq 0x31e0
jmp 0x5ce6
leaq -0xc8(%rbp), %rdi
callq 0x3120
leaq -0x20(%rbp), %rdi
callq 0x7da0
jmp 0x5c63
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0xc8(%rbp), %rdi
callq 0x3120
jmp 0x5e4a
movq 0x192ac(%rip), %rdi     # 0x1efd0
movq 0x19295(%rip), %rsi     # 0x1efc0
callq 0x3210
movq 0x19299(%rip), %rdi     # 0x1efd0
leaq 0xf61a(%rip), %rsi      # 0x15358
callq 0x31e0
movq %rax, %rdi
movq 0x19273(%rip), %rsi     # 0x1efc0
callq 0x3210
movq -0x100(%rbp), %rdi
addq $0x80, %rdi
callq 0x7dc0
movq %rax, -0xd0(%rbp)
movq -0xd0(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x100(%rbp), %rdi
addq $0x80, %rdi
callq 0x7e20
movq %rax, -0xd8(%rbp)
leaq -0x28(%rbp), %rdi
leaq -0xd8(%rbp), %rsi
callq 0x7df0
testb $0x1, %al
jne 0x5daa
jmp 0x5e2e
leaq -0x28(%rbp), %rdi
callq 0x7e50
movq (%rax), %rsi
leaq -0xf8(%rbp), %rdi
movq %rdi, -0x140(%rbp)
callq 0x12640
movq -0x140(%rbp), %rsi
movq 0x191f9(%rip), %rdi     # 0x1efd0
callq 0x31b0
movq %rax, -0x138(%rbp)
jmp 0x5de5
movq -0x138(%rbp), %rdi
leaq 0xfd17(%rip), %rsi      # 0x15b0a
callq 0x31e0
jmp 0x5dfa
leaq -0xf8(%rbp), %rdi
callq 0x3120
leaq -0x28(%rbp), %rdi
callq 0x7e70
jmp 0x5d77
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0xf8(%rbp), %rdi
callq 0x3120
jmp 0x5e4a
movq 0x1919b(%rip), %rdi     # 0x1efd0
movq 0x19184(%rip), %rsi     # 0x1efc0
callq 0x3210
addq $0x140, %rsp            # imm = 0x140
popq %rbp
retq
movq -0x60(%rbp), %rdi
callq 0x3330
nopw %cs:(%rax,%rax)