// File: MichaelXanth[P]RPG_Game/Market/Market.cpp
// Function: Market::~Market()
Market::~Market()
{
    for (int i = iceSpellsArray.size(); !iceSpellsArray.empty(); i--) {
        delete iceSpellsArray[i-1];
        iceSpellsArray.erase(iceSpellsArray.begin() + i-1);
    }

    for (int i = fireSpellsArray.size(); !fireSpellsArray.empty(); i--) {
        delete fireSpellsArray[i-1];
        fireSpellsArray.erase(fireSpellsArray.begin() + i-1);
    }

    for (int i = lightingSpellsArray.size(); !lightingSpellsArray.empty(); i--) {
        delete lightingSpellsArray[i-1];
        lightingSpellsArray.erase(lightingSpellsArray.begin() + i-1);
    }

    for (int i = weaponsArray.size(); !weaponsArray.empty(); i--) {
        delete weaponsArray[i-1];
        weaponsArray.erase(weaponsArray.begin() + i-1);
    }

    for (int i = armorsArray.size(); !armorsArray.empty(); i--) {
        delete armorsArray[i-1];
        armorsArray.erase(armorsArray.begin() + i-1);
    }

    for (int i = potionsArray.size(); !potionsArray.empty(); i--) {
        delete potionsArray[i-1];
        potionsArray.erase(potionsArray.begin() + i-1);
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1c0, %rsp            # imm = 0x1C0
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0x130(%rbp)
addq $0xd8, %rdi
callq 0x26e60
movl %eax, -0xc(%rbp)
movq -0x130(%rbp), %rdi
addq $0xd8, %rdi
callq 0x27b30
xorb $-0x1, %al
testb $0x1, %al
jne 0x30c57
jmp 0x30d10
movq -0x130(%rbp), %rdi
addq $0xd8, %rdi
movl -0xc(%rbp), %eax
subl $0x1, %eax
movslq %eax, %rsi
callq 0x27180
movq (%rax), %rax
movq %rax, -0x138(%rbp)
cmpq $0x0, %rax
je 0x30c90
movq -0x138(%rbp), %rdi
movq (%rdi), %rax
callq *0x60(%rax)
movq -0x130(%rbp), %rdi
addq $0xd8, %rdi
movq %rdi, -0x148(%rbp)
callq 0x27210
movq %rax, -0x30(%rbp)
movslq -0xc(%rbp), %rsi
leaq -0x30(%rbp), %rdi
callq 0x27240
movq %rax, -0x28(%rbp)
leaq -0x28(%rbp), %rdi
movl $0x1, %esi
callq 0x27940
movq %rax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x27280
movq -0x148(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x271a0
movq %rax, -0x140(%rbp)
jmp 0x30cf7
movq -0x140(%rbp), %rax
movq %rax, -0x38(%rbp)
movl -0xc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x30c39
movq -0x130(%rbp), %rdi
addq $0xc0, %rdi
callq 0x26e40
movl %eax, -0x3c(%rbp)
movq -0x130(%rbp), %rdi
addq $0xc0, %rdi
callq 0x27b70
xorb $-0x1, %al
testb $0x1, %al
jne 0x30d44
jmp 0x30dfd
movq -0x130(%rbp), %rdi
addq $0xc0, %rdi
movl -0x3c(%rbp), %eax
subl $0x1, %eax
movslq %eax, %rsi
callq 0x272c0
movq (%rax), %rax
movq %rax, -0x150(%rbp)
cmpq $0x0, %rax
je 0x30d7d
movq -0x150(%rbp), %rdi
movq (%rdi), %rax
callq *0x60(%rax)
movq -0x130(%rbp), %rdi
addq $0xc0, %rdi
movq %rdi, -0x160(%rbp)
callq 0x27350
movq %rax, -0x60(%rbp)
movslq -0x3c(%rbp), %rsi
leaq -0x60(%rbp), %rdi
callq 0x27380
movq %rax, -0x58(%rbp)
leaq -0x58(%rbp), %rdi
movl $0x1, %esi
callq 0x27980
movq %rax, -0x50(%rbp)
leaq -0x48(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x273c0
movq -0x160(%rbp), %rdi
movq -0x48(%rbp), %rsi
callq 0x272e0
movq %rax, -0x158(%rbp)
jmp 0x30de4
movq -0x158(%rbp), %rax
movq %rax, -0x68(%rbp)
movl -0x3c(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x3c(%rbp)
jmp 0x30d26
movq -0x130(%rbp), %rdi
addq $0xa8, %rdi
callq 0x26e20
movl %eax, -0x6c(%rbp)
movq -0x130(%rbp), %rdi
addq $0xa8, %rdi
callq 0x27bb0
xorb $-0x1, %al
testb $0x1, %al
jne 0x30e31
jmp 0x30ef9
movq -0x130(%rbp), %rdi
addq $0xa8, %rdi
movl -0x6c(%rbp), %eax
subl $0x1, %eax
movslq %eax, %rsi
callq 0x27400
movq (%rax), %rax
movq %rax, -0x168(%rbp)
cmpq $0x0, %rax
je 0x30e6a
movq -0x168(%rbp), %rdi
movq (%rdi), %rax
callq *0x60(%rax)
movq -0x130(%rbp), %rdi
addq $0xa8, %rdi
movq %rdi, -0x178(%rbp)
callq 0x27490
movq %rax, -0x90(%rbp)
movslq -0x6c(%rbp), %rsi
leaq -0x90(%rbp), %rdi
callq 0x274c0
movq %rax, -0x88(%rbp)
leaq -0x88(%rbp), %rdi
movl $0x1, %esi
callq 0x27900
movq %rax, -0x80(%rbp)
leaq -0x78(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x27500
movq -0x178(%rbp), %rdi
movq -0x78(%rbp), %rsi
callq 0x27420
movq %rax, -0x170(%rbp)
jmp 0x30edd
movq -0x170(%rbp), %rax
movq %rax, -0x98(%rbp)
movl -0x6c(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x6c(%rbp)
jmp 0x30e13
movq -0x130(%rbp), %rdi
addq $0xf0, %rdi
callq 0x26e80
movl %eax, -0x9c(%rbp)
movq -0x130(%rbp), %rdi
addq $0xf0, %rdi
callq 0x2d300
xorb $-0x1, %al
testb $0x1, %al
jne 0x30f30
jmp 0x31010
movq -0x130(%rbp), %rdi
addq $0xf0, %rdi
movl -0x9c(%rbp), %eax
subl $0x1, %eax
movslq %eax, %rsi
callq 0x27540
movq (%rax), %rax
movq %rax, -0x180(%rbp)
cmpq $0x0, %rax
je 0x30f6c
movq -0x180(%rbp), %rdi
movq (%rdi), %rax
callq *0x20(%rax)
movq -0x130(%rbp), %rdi
addq $0xf0, %rdi
movq %rdi, -0x190(%rbp)
callq 0x275d0
movq %rax, -0xc0(%rbp)
movslq -0x9c(%rbp), %rsi
leaq -0xc0(%rbp), %rdi
callq 0x27600
movq %rax, -0xb8(%rbp)
leaq -0xb8(%rbp), %rdi
movl $0x1, %esi
callq 0x2d340
movq %rax, -0xb0(%rbp)
leaq -0xa8(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x27640
movq -0x190(%rbp), %rdi
movq -0xa8(%rbp), %rsi
callq 0x27560
movq %rax, -0x188(%rbp)
jmp 0x30fee
movq -0x188(%rbp), %rax
movq %rax, -0xc8(%rbp)
movl -0x9c(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x9c(%rbp)
jmp 0x30f12
movq -0x130(%rbp), %rdi
addq $0x120, %rdi            # imm = 0x120
callq 0x26ec0
movl %eax, -0xcc(%rbp)
movq -0x130(%rbp), %rdi
addq $0x120, %rdi            # imm = 0x120
callq 0x2d380
xorb $-0x1, %al
testb $0x1, %al
jne 0x31047
jmp 0x31127
movq -0x130(%rbp), %rdi
addq $0x120, %rdi            # imm = 0x120
movl -0xcc(%rbp), %eax
subl $0x1, %eax
movslq %eax, %rsi
callq 0x27680
movq (%rax), %rax
movq %rax, -0x198(%rbp)
cmpq $0x0, %rax
je 0x31083
movq -0x198(%rbp), %rdi
movq (%rdi), %rax
callq *0x20(%rax)
movq -0x130(%rbp), %rdi
addq $0x120, %rdi            # imm = 0x120
movq %rdi, -0x1a8(%rbp)
callq 0x27710
movq %rax, -0xf0(%rbp)
movslq -0xcc(%rbp), %rsi
leaq -0xf0(%rbp), %rdi
callq 0x27740
movq %rax, -0xe8(%rbp)
leaq -0xe8(%rbp), %rdi
movl $0x1, %esi
callq 0x2d3c0
movq %rax, -0xe0(%rbp)
leaq -0xd8(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x27780
movq -0x1a8(%rbp), %rdi
movq -0xd8(%rbp), %rsi
callq 0x276a0
movq %rax, -0x1a0(%rbp)
jmp 0x31105
movq -0x1a0(%rbp), %rax
movq %rax, -0xf8(%rbp)
movl -0xcc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xcc(%rbp)
jmp 0x31029
movq -0x130(%rbp), %rdi
addq $0x108, %rdi            # imm = 0x108
callq 0x26ea0
movl %eax, -0xfc(%rbp)
movq -0x130(%rbp), %rdi
addq $0x108, %rdi            # imm = 0x108
callq 0x2d400
xorb $-0x1, %al
testb $0x1, %al
jne 0x3115e
jmp 0x3123e
movq -0x130(%rbp), %rdi
addq $0x108, %rdi            # imm = 0x108
movl -0xfc(%rbp), %eax
subl $0x1, %eax
movslq %eax, %rsi
callq 0x277c0
movq (%rax), %rax
movq %rax, -0x1b0(%rbp)
cmpq $0x0, %rax
je 0x3119a
movq -0x1b0(%rbp), %rdi
movq (%rdi), %rax
callq *0x20(%rax)
movq -0x130(%rbp), %rdi
addq $0x108, %rdi            # imm = 0x108
movq %rdi, -0x1c0(%rbp)
callq 0x27850
movq %rax, -0x120(%rbp)
movslq -0xfc(%rbp), %rsi
leaq -0x120(%rbp), %rdi
callq 0x27880
movq %rax, -0x118(%rbp)
leaq -0x118(%rbp), %rdi
movl $0x1, %esi
callq 0x2d440
movq %rax, -0x110(%rbp)
leaq -0x108(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x278c0
movq -0x1c0(%rbp), %rdi
movq -0x108(%rbp), %rsi
callq 0x277e0
movq %rax, -0x1b8(%rbp)
jmp 0x3121c
movq -0x1b8(%rbp), %rax
movq %rax, -0x128(%rbp)
movl -0xfc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0xfc(%rbp)
jmp 0x31140
movq -0x130(%rbp), %rdi
addq $0x1b0, %rdi            # imm = 0x1B0
callq 0x3a060
movq -0x130(%rbp), %rdi
addq $0x198, %rdi            # imm = 0x198
callq 0x3a060
movq -0x130(%rbp), %rdi
addq $0x180, %rdi            # imm = 0x180
callq 0x3a060
movq -0x130(%rbp), %rdi
addq $0x168, %rdi            # imm = 0x168
callq 0x3a060
movq -0x130(%rbp), %rdi
addq $0x150, %rdi            # imm = 0x150
callq 0x3a060
movq -0x130(%rbp), %rdi
addq $0x138, %rdi            # imm = 0x138
callq 0x3a060
movq -0x130(%rbp), %rdi
addq $0x120, %rdi            # imm = 0x120
callq 0x26be0
movq -0x130(%rbp), %rdi
addq $0x108, %rdi            # imm = 0x108
callq 0x26c40
movq -0x130(%rbp), %rdi
addq $0xf0, %rdi
callq 0x26ca0
movq -0x130(%rbp), %rdi
addq $0xd8, %rdi
callq 0x26d00
movq -0x130(%rbp), %rdi
addq $0xc0, %rdi
callq 0x26d60
movq -0x130(%rbp), %rdi
addq $0xa8, %rdi
callq 0x26dc0
movq -0x130(%rbp), %rdi
callq 0x50b0
addq $0x1c0, %rsp            # imm = 0x1C0
popq %rbp
retq
movq %rax, %rdi
callq 0x5270
nop