// File: /workspace/github_cpp_makefile_star2_O2/kongrigoriou[P]Text-Based-RPG/src/Market.cpp
// Function: Market::displayItems()
void Market::displayItems() {

	list<Weapon*> ::iterator it;
	cout << "WEAPONS \n" << endl;

	for (it = Weapons.begin(); it !=  Weapons.end(); ++it) {
		cout << (*it)->get_name() << " " << (*it)->get_price() << " " << (*it)->get_minlvl() << " " << (*it)->get_damage() << " " << (*it)->get_handsNeeded() << endl;
	}

	list<Armor*> ::iterator ia;
	cout << "ARMORS \n" << endl;

	for (ia = Armors.begin(); ia != Armors.end(); ++ia) {
		cout << (*ia)->get_name() << " " << (*ia)->get_price() << " " << (*ia)->get_minlvl() << " " << (*ia)->get_protection() << endl;
	}

	list<Potion*> ::iterator ip;
	cout << "POTIONS \n" << endl;

	for (ip = Potions.begin(); ip != Potions.end(); ++ip) {
		cout << (*ip)->get_name() << " " << (*ip)->get_price() << " " << (*ip)->get_minlvl() << " " << (*ip)->get_buff() << endl;
	}

	list<Spell*> :: iterator sp;
	cout << "SPELLS \n" << endl;

	for(sp = Spells.begin(); sp != Spells.end(); ++sp){
		cout << (*sp)->get_name() << " " << (*sp)->get_price()<< " " << (*sp)->get_minlvl() << " " << (*sp)->get_DmgRange() << " " << (*sp)->get_MagicPower()
			<< " " << (*sp)->get_Reduction() <<  endl;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %r14
movq 0xc275(%rip), %rbx      # 0x12fd0
leaq 0x58f0(%rip), %rsi      # 0xc652
movq %rbx, %rdi
callq 0x31a0
movq %rax, %rdi
callq 0x30f0
leaq -0x50(%rbp), %r15
leaq 0x5d8d(%rip), %r12      # 0xcb0a
movq %r14, -0x30(%rbp)
movq (%r14), %r14
cmpq -0x30(%rbp), %r14
je 0x6e3f
movq 0x10(%r14), %rsi
movq %r15, %rdi
callq 0x9f40
movq %rbx, %rdi
movq %r15, %rsi
callq 0x3170
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%r14), %rdi
callq 0x9f5c
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%r14), %rdi
callq 0x9f66
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%r14), %rdi
movq (%rdi), %rax
callq *0x8(%rax)
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%r14), %rdi
movq (%rdi), %rax
callq *(%rax)
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
callq 0x30f0
movq %r15, %rdi
callq 0x30e0
jmp 0x6d81
movq 0xc18a(%rip), %rdi      # 0x12fd0
leaq 0x580f(%rip), %rsi      # 0xc65c
callq 0x31a0
movq %rax, %rdi
callq 0x30f0
movq -0x30(%rbp), %rax
leaq 0x18(%rax), %rbx
leaq -0x50(%rbp), %r15
leaq 0x5c9d(%rip), %r12      # 0xcb0a
movq %rbx, %r14
movq (%r14), %r14
cmpq %rbx, %r14
je 0x6f10
movq 0x10(%r14), %rsi
movq %r15, %rdi
callq 0x9f40
movq 0xc141(%rip), %rdi      # 0x12fd0
movq %r15, %rsi
callq 0x3170
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%r14), %rdi
callq 0x9f5c
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%r14), %rdi
callq 0x9f66
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%r14), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
callq 0x30f0
movq %r15, %rdi
callq 0x30e0
jmp 0x6e70
movq 0xc0b9(%rip), %rdi      # 0x12fd0
leaq 0x5747(%rip), %rsi      # 0xc665
callq 0x31a0
movq %rax, %rdi
callq 0x30f0
movq -0x30(%rbp), %rax
leaq 0x30(%rax), %rbx
leaq -0x50(%rbp), %r15
leaq 0x5bcc(%rip), %r12      # 0xcb0a
movq %rbx, %r14
movq (%r14), %r14
cmpq %rbx, %r14
je 0x6fe1
movq 0x10(%r14), %rsi
movq %r15, %rdi
callq 0x9f40
movq 0xc070(%rip), %rdi      # 0x12fd0
movq %r15, %rsi
callq 0x3170
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%r14), %rdi
callq 0x9f5c
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%r14), %rdi
callq 0x9f66
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%r14), %rdi
movq (%rdi), %rax
callq *0x20(%rax)
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
callq 0x30f0
movq %r15, %rdi
callq 0x30e0
jmp 0x6f41
movq 0xbfe8(%rip), %rdi      # 0x12fd0
leaq 0x5680(%rip), %rsi      # 0xc66f
callq 0x31a0
movq %rax, %rdi
callq 0x30f0
movq -0x30(%rbp), %rbx
addq $0x48, %rbx
leaq -0x50(%rbp), %r15
leaq 0x5afb(%rip), %r12      # 0xcb0a
movq %rbx, %r14
movq (%rbx), %rbx
cmpq %r14, %rbx
je 0x70f4
movq 0x10(%rbx), %rsi
movq %r15, %rdi
callq 0x9f40
movq 0xbf9f(%rip), %rdi      # 0x12fd0
movq %r15, %rsi
callq 0x3170
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%rbx), %rdi
callq 0x9f5c
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%rbx), %rdi
callq 0x9f66
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%rbx), %rdi
callq 0x9ce0
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%rbx), %rdi
callq 0x9cea
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
movq %r12, %rsi
callq 0x31a0
movq %rax, %r13
movq 0x10(%rbx), %rdi
movq (%rdi), %rax
callq *0x28(%rax)
movq %r13, %rdi
movl %eax, %esi
callq 0x3230
movq %rax, %rdi
callq 0x30f0
movq %r15, %rdi
callq 0x30e0
jmp 0x7012
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x7109
jmp 0x7109
jmp 0x7109
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0x30e0
movq %rbx, %rdi
callq 0x3240
nop