// File: /workspace/github_cpp_makefile_star2_O1/MichaelXanth[P]RPG_Game/Living/Heroes/Warrior.cpp
// Function: Warrior::~Warrior()
Warrior::~Warrior()
{
    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 %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
leaq 0x1672d(%rip), %rax     # 0x2e980
movq %rax, (%rdi)
movq 0x68(%rdi), %rax
cmpq 0x70(%rdi), %rax
je 0x182c9
movq 0x70(%rbx), %rcx
subq %rax, %rcx
shrq $0x3, %rcx
movslq %ecx, %r14
shlq $0x3, %r14
movq %r14, %r15
negq %r15
movq -0x8(%rax,%r14), %rdi
testq %rdi, %rdi
je 0x18288
movq (%rdi), %rax
callq *0x60(%rax)
movq 0x68(%rbx), %rax
movq 0x70(%rbx), %rdx
leaq (%rax,%r14), %rsi
cmpq %rdx, %rsi
je 0x182ac
leaq (%rax,%r14), %rdi
addq $-0x8, %rdi
subq %rax, %rdx
addq %r15, %rdx
callq 0x32b0
movq 0x68(%rbx), %rax
movq 0x70(%rbx), %rcx
addq $-0x8, %rcx
movq %rcx, 0x70(%rbx)
addq $-0x8, %r14
addq $0x8, %r15
cmpq %rcx, %rax
jne 0x18278
movq 0x50(%rbx), %rax
cmpq 0x58(%rbx), %rax
je 0x1833c
movq 0x58(%rbx), %rcx
subq %rax, %rcx
shrq $0x3, %rcx
movslq %ecx, %r14
shlq $0x3, %r14
movq %r14, %r15
negq %r15
movq -0x8(%rax,%r14), %rdi
testq %rdi, %rdi
je 0x182fb
movq (%rdi), %rax
callq *0x60(%rax)
movq 0x50(%rbx), %rax
movq 0x58(%rbx), %rdx
leaq (%rax,%r14), %rsi
cmpq %rdx, %rsi
je 0x1831f
leaq (%rax,%r14), %rdi
addq $-0x8, %rdi
subq %rax, %rdx
addq %r15, %rdx
callq 0x32b0
movq 0x50(%rbx), %rax
movq 0x58(%rbx), %rcx
addq $-0x8, %rcx
movq %rcx, 0x58(%rbx)
addq $-0x8, %r14
addq $0x8, %r15
cmpq %rcx, %rax
jne 0x182eb
movq 0x38(%rbx), %rax
cmpq 0x40(%rbx), %rax
je 0x183af
movq 0x40(%rbx), %rcx
subq %rax, %rcx
shrq $0x3, %rcx
movslq %ecx, %r14
shlq $0x3, %r14
movq %r14, %r15
negq %r15
movq -0x8(%rax,%r14), %rdi
testq %rdi, %rdi
je 0x1836e
movq (%rdi), %rax
callq *0x60(%rax)
movq 0x38(%rbx), %rax
movq 0x40(%rbx), %rdx
leaq (%rax,%r14), %rsi
cmpq %rdx, %rsi
je 0x18392
leaq (%rax,%r14), %rdi
addq $-0x8, %rdi
subq %rax, %rdx
addq %r15, %rdx
callq 0x32b0
movq 0x38(%rbx), %rax
movq 0x40(%rbx), %rcx
addq $-0x8, %rcx
movq %rcx, 0x40(%rbx)
addq $-0x8, %r14
addq $0x8, %r15
cmpq %rcx, %rax
jne 0x1835e
movq 0x80(%rbx), %rax
cmpq 0x88(%rbx), %rax
je 0x1843a
movq 0x88(%rbx), %rcx
subq %rax, %rcx
shrq $0x3, %rcx
movslq %ecx, %r14
shlq $0x3, %r14
movq %r14, %r15
negq %r15
movq -0x8(%rax,%r14), %rdi
testq %rdi, %rdi
je 0x183ea
movq (%rdi), %rax
callq *0x20(%rax)
movq 0x80(%rbx), %rax
movq 0x88(%rbx), %rdx
leaq (%rax,%r14), %rsi
cmpq %rdx, %rsi
je 0x18414
leaq (%rax,%r14), %rdi
addq $-0x8, %rdi
subq %rax, %rdx
addq %r15, %rdx
callq 0x32b0
movq 0x80(%rbx), %rax
movq 0x88(%rbx), %rcx
addq $-0x8, %rcx
movq %rcx, 0x88(%rbx)
addq $-0x8, %r14
addq $0x8, %r15
cmpq %rcx, %rax
jne 0x183da
movq 0xb0(%rbx), %rax
cmpq 0xb8(%rbx), %rax
je 0x184c5
movq 0xb8(%rbx), %rcx
subq %rax, %rcx
shrq $0x3, %rcx
movslq %ecx, %r14
shlq $0x3, %r14
movq %r14, %r15
negq %r15
movq -0x8(%rax,%r14), %rdi
testq %rdi, %rdi
je 0x18475
movq (%rdi), %rax
callq *0x20(%rax)
movq 0xb0(%rbx), %rax
movq 0xb8(%rbx), %rdx
leaq (%rax,%r14), %rsi
cmpq %rdx, %rsi
je 0x1849f
leaq (%rax,%r14), %rdi
addq $-0x8, %rdi
subq %rax, %rdx
addq %r15, %rdx
callq 0x32b0
movq 0xb0(%rbx), %rax
movq 0xb8(%rbx), %rcx
addq $-0x8, %rcx
movq %rcx, 0xb8(%rbx)
addq $-0x8, %r14
addq $0x8, %r15
cmpq %rcx, %rax
jne 0x18465
movq 0x98(%rbx), %rax
cmpq 0xa0(%rbx), %rax
je 0x18550
movq 0xa0(%rbx), %rcx
subq %rax, %rcx
shrq $0x3, %rcx
movslq %ecx, %r14
shlq $0x3, %r14
movq %r14, %r15
negq %r15
movq -0x8(%rax,%r14), %rdi
testq %rdi, %rdi
je 0x18500
movq (%rdi), %rax
callq *0x20(%rax)
movq 0x98(%rbx), %rax
movq 0xa0(%rbx), %rdx
leaq (%rax,%r14), %rsi
cmpq %rdx, %rsi
je 0x1852a
leaq (%rax,%r14), %rdi
addq $-0x8, %rdi
subq %rax, %rdx
addq %r15, %rdx
callq 0x32b0
movq 0x98(%rbx), %rax
movq 0xa0(%rbx), %rcx
addq $-0x8, %rcx
movq %rcx, 0xa0(%rbx)
addq $-0x8, %r14
addq $0x8, %r15
cmpq %rcx, %rax
jne 0x184f0
movq %rbx, %rdi
popq %rbx
popq %r14
popq %r15
jmp 0x109de
nop