// File: /workspace/github_cpp_makefile_star2_O3/negativeview[P]Software-Business-Sim/MasterState.cpp
// Function: MasterState::~MasterState()
MasterState::~MasterState() {
	delete this->_playerCompany;
	this->_playerCompany = NULL;
	delete this->_allCompanies;
	this->_allCompanies = NULL;

	for (list<Person *>::iterator allWorkersIterator = this->_allWorkers->begin(); allWorkersIterator != this->_allWorkers->end(); ++allWorkersIterator) {
		Person *p = *allWorkersIterator;
		delete p;
	}
	delete this->_allWorkers;
	this->_allWorkers = NULL;

	for (list<Person *>::iterator allConsumersIterator = this->_allConsumers->begin(); allConsumersIterator != this->_allConsumers->end(); ++allConsumersIterator) {
		Person *p = *allConsumersIterator;
		delete p;
	}
	delete this->_allConsumers;
	this->_allConsumers = NULL;

	for (vector<Platform *>::iterator platformIterator = this->_allPlatforms->begin(); platformIterator != this->_allPlatforms->end(); ++platformIterator) {
		Platform *platform = *platformIterator;
		delete platform;
	}
	delete this->_allPlatforms;
	this->_allPlatforms = NULL;
	delete this->_playerCompany;
	this->_playerCompany = NULL;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq (%rdi), %r14
testq %r14, %r14
je 0x9ebd
movq %r14, %rdi
callq 0x782e
movl $0x38, %esi
movq %r14, %rdi
callq 0x3320
movq $0x0, (%rbx)
movq 0x8(%rbx), %r14
testq %r14, %r14
je 0x9ef7
movq (%r14), %rdi
cmpq %r14, %rdi
je 0x9ef7
movq (%rdi), %r15
movl $0x18, %esi
callq 0x3320
movq %r15, %rdi
cmpq %r14, %r15
jne 0x9ee2
movl $0x18, %esi
movq %r14, %rdi
callq 0x3320
movq $0x0, 0x8(%rbx)
movq 0x10(%rbx), %r14
movq (%r14), %r15
cmpq %r14, %r15
je 0x9f47
movq 0x10(%r15), %r14
testq %r14, %r14
je 0x9f29
movq %r14, %rdi
callq 0x8b34
movl $0x80, %esi
movq %r14, %rdi
callq 0x3320
movq 0x10(%rbx), %r14
movq (%r15), %r15
cmpq %r14, %r15
jne 0x9f18
testq %r14, %r14
je 0x9f66
movq (%r14), %rdi
cmpq %r14, %rdi
je 0x9f69
movq (%rdi), %r15
movl $0x18, %esi
callq 0x3320
movq %r15, %rdi
cmpq %r14, %r15
jne 0x9f4f
jmp 0x9f69
xorl %r14d, %r14d
movl $0x18, %esi
movq %r14, %rdi
callq 0x3320
movq $0x0, 0x10(%rbx)
movq 0x18(%rbx), %r14
movq (%r14), %r15
cmpq %r14, %r15
je 0x9fb9
movq 0x10(%r15), %r14
testq %r14, %r14
je 0x9f9b
movq %r14, %rdi
callq 0x8b34
movl $0x80, %esi
movq %r14, %rdi
callq 0x3320
movq 0x18(%rbx), %r14
movq (%r15), %r15
cmpq %r14, %r15
jne 0x9f8a
testq %r14, %r14
je 0x9fd8
movq (%r14), %rdi
cmpq %r14, %rdi
je 0x9fdb
movq (%rdi), %r15
movl $0x18, %esi
callq 0x3320
movq %r15, %rdi
cmpq %r14, %r15
jne 0x9fc1
jmp 0x9fdb
xorl %r14d, %r14d
movl $0x18, %esi
movq %r14, %rdi
callq 0x3320
movq $0x0, 0x18(%rbx)
movq 0x30(%rbx), %r15
movq (%r15), %r14
cmpq 0x8(%r15), %r14
je 0xa02b
movq (%r14), %r15
testq %r15, %r15
je 0xa00d
movq %r15, %rdi
callq 0xaae6
movl $0x40, %esi
movq %r15, %rdi
callq 0x3320
addq $0x8, %r14
movq 0x30(%rbx), %r15
cmpq 0x8(%r15), %r14
jne 0x9ffd
movq (%r15), %r14
testq %r14, %r14
je 0xa03f
movq 0x10(%r15), %rsi
subq %r14, %rsi
movq %r14, %rdi
callq 0x3320
movl $0x18, %esi
movq %r15, %rdi
callq 0x3320
movq $0x0, 0x30(%rbx)
movq (%rbx), %r14
testq %r14, %r14
je 0xa064
movq %r14, %rdi
callq 0x782e
movl $0x38, %esi
movq %r14, %rdi
callq 0x3320
movq $0x0, (%rbx)
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
nop