// File: /workspace/github_cpp_makefile_star2_O3/negativeview[P]Software-Business-Sim/MasterState.cpp
// Function: MasterState::_setupConsumers()
void MasterState::_setupConsumers() {
	for (int i = 0; i < 500; i++) {
		string firstName = this->_names->getFirstName();
		string lastName = this->_names->getLastName();

		int money = rand() % 100000;

		Person *p = new Person(firstName, lastName, money);

		for (vector<Platform *>::iterator it = this->_allPlatforms->begin(); it != this->_allPlatforms->end(); ++it) {
			p->setPlatformSkill(*it, rand() % 100);
		}

		for (vector<Language *>::iterator it2 = this->_allLanguages->begin(); it2 != this->_allLanguages->end(); ++it2) {
			p->setLanguageSkill(*it2, rand() % 100);
		}

		this->_allConsumers->push_back(p);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %rdi, %rbx
leaq -0x80(%rbp), %r14
xorl %r12d, %r12d
leaq -0x50(%rbp), %r15
movq 0x28(%rbx), %rdi
callq 0x4c1a
leaq -0xb0(%rbp), %rdi
movq %rax, %rsi
movq %r15, %rdx
callq 0xa084
movq 0x28(%rbx), %rdi
callq 0x4c4e
movl %r12d, -0x30(%rbp)
movq %r15, %rdi
movq %rax, %rsi
leaq -0x29(%rbp), %rdx
callq 0xa084
callq 0x30c0
movl %eax, %r15d
movl $0x80, %edi
callq 0x3300
movq %rax, %r12
movq %r14, -0x90(%rbp)
movq -0xb0(%rbp), %rsi
movq -0xa8(%rbp), %rdx
addq %rsi, %rdx
leaq -0x90(%rbp), %rdi
callq 0x41fc
leaq -0x60(%rbp), %rax
movq %rax, -0x70(%rbp)
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
addq %rsi, %rdx
leaq -0x70(%rbp), %r13
movq %r13, %rdi
callq 0x41fc
movslq %r15d, %rcx
imulq $0x14f8b589, %rcx, %rax # imm = 0x14F8B589
movq %rax, %rdx
shrq $0x3f, %rdx
sarq $0x2d, %rax
addl %edx, %eax
imull $0x186a0, %eax, %eax    # imm = 0x186A0
subl %eax, %ecx
movq %r12, %rdi
leaq -0x90(%rbp), %rsi
movq %r13, %rdx
callq 0x810c
movq -0x70(%rbp), %rdi
leaq -0x60(%rbp), %rax
cmpq %rax, %rdi
je 0x981f
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x3320
movq -0x90(%rbp), %rdi
cmpq %r14, %rdi
je 0x9837
movq -0x80(%rbp), %rsi
incq %rsi
callq 0x3320
movq 0x30(%rbx), %rax
movq (%rax), %r14
cmpq 0x8(%rax), %r14
je 0x987d
movq (%r14), %r15
callq 0x30c0
movslq %eax, %rdx
imulq $0x51eb851f, %rdx, %rax # imm = 0x51EB851F
movq %rax, %rcx
shrq $0x3f, %rcx
sarq $0x25, %rax
addl %ecx, %eax
imull $0x64, %eax, %eax
subl %eax, %edx
movq %r12, %rdi
movq %r15, %rsi
callq 0x8ace
addq $0x8, %r14
movq 0x30(%rbx), %rax
jmp 0x983e
movq 0x38(%rbx), %rax
movq (%rax), %r14
cmpq 0x8(%rax), %r14
je 0x98c3
movq (%r14), %r15
callq 0x30c0
movslq %eax, %rdx
imulq $0x51eb851f, %rdx, %rax # imm = 0x51EB851F
movq %rax, %rcx
shrq $0x3f, %rcx
sarq $0x25, %rax
addl %ecx, %eax
imull $0x64, %eax, %eax
subl %eax, %edx
movq %r12, %rdi
movq %r15, %rsi
callq 0x8af2
addq $0x8, %r14
movq 0x38(%rbx), %rax
jmp 0x9884
movq 0x18(%rbx), %r15
movl $0x18, %edi
callq 0x3300
leaq -0x80(%rbp), %r14
movq %r12, 0x10(%rax)
movq %rax, %rdi
movq %r15, %rsi
callq 0x3040
incq 0x10(%r15)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x9901
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x3320
movq -0xb0(%rbp), %rdi
leaq -0xa0(%rbp), %rax
cmpq %rax, %rdi
leaq -0x50(%rbp), %r15
movl -0x30(%rbp), %r12d
je 0x992b
movq -0xa0(%rbp), %rsi
incq %rsi
callq 0x3320
incl %r12d
cmpl $0x1f4, %r12d           # imm = 0x1F4
jne 0x9746
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x994f
movq %rax, %rbx
jmp 0x99c1
movq %rax, %rbx
jmp 0x9992
movq %rax, %rbx
jmp 0x997a
movq %rax, %rbx
movq -0x70(%rbp), %rdi
leaq -0x60(%rbp), %rax
cmpq %rax, %rdi
je 0x997a
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x3320
movq -0x90(%rbp), %rdi
cmpq %r14, %rdi
je 0x9992
movq -0x80(%rbp), %rsi
incq %rsi
callq 0x3320
movl $0x80, %esi
movq %r12, %rdi
callq 0x3320
jmp 0x99a8
jmp 0x99a5
jmp 0x99a5
movq %rax, %rbx
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x99c1
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x3320
movq -0xb0(%rbp), %rdi
leaq -0xa0(%rbp), %rax
cmpq %rax, %rdi
je 0x99e3
movq -0xa0(%rbp), %rsi
incq %rsi
callq 0x3320
movq %rbx, %rdi
callq 0x3500
nop