// File: chulchultrain[P]FactoryHead/EntryFilter/EntryFilter.cpp
// Function: EntryFilter::Evaluate(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>&)
void EntryFilter::Evaluate(vector<string> &res) {
	res.clear();
	vector< vector<string> > totalTemp;
	vector<string> temp;
	if(name != "") {
		nte.EvalToken(name,temp);
		totalTemp.push_back(temp);
	}
	for(unsigned int i = 0; i < 4; i++) {
		if(moves[i] != "") {
			mte.EvalToken(moves[i],temp);
			totalTemp.push_back(temp);
		}
	}
	for(unsigned int i = 0; i < 2; i++) {
		if(types[i] != "") {
			tte.EvalToken(types[i],temp);
			totalTemp.push_back(temp);
		}
	}
	MergeVectors(res,totalTemp);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x100, %rsp            # imm = 0x100
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0xd0(%rbp)
movq -0x10(%rbp), %rdi
callq 0x21ed0
leaq -0x28(%rbp), %rdi
callq 0x22000
leaq -0x40(%rbp), %rdi
callq 0x12040
movq -0xd0(%rbp), %rdi
subq $-0x80, %rdi
leaq 0xdbe5(%rip), %rsi      # 0x2f560
callq 0x6bc0
movb %al, -0xc1(%rbp)
jmp 0x21988
movb -0xc1(%rbp), %al
testb $0x1, %al
jne 0x21997
jmp 0x21a18
movq -0xd0(%rbp), %rsi
movq %rsi, %rax
addq $0x118, %rax            # imm = 0x118
movq %rax, -0xd8(%rbp)
subq $-0x80, %rsi
leaq -0x70(%rbp), %rdi
callq 0x3100
jmp 0x219bd
movq -0xd8(%rbp), %rdi
leaq -0x70(%rbp), %rsi
leaq -0x40(%rbp), %rdx
callq 0x24180
jmp 0x219d3
leaq -0x70(%rbp), %rdi
callq 0x3180
leaq -0x28(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x22020
jmp 0x219eb
jmp 0x21a18
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x21c0a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x70(%rbp), %rdi
callq 0x3180
jmp 0x21c0a
movl $0x0, -0x74(%rbp)
cmpl $0x4, -0x74(%rbp)
jae 0x21aef
movq -0xd0(%rbp), %rdi
movl -0x74(%rbp), %eax
shlq $0x5, %rax
addq %rax, %rdi
leaq 0xdb1f(%rip), %rsi      # 0x2f560
callq 0x6bc0
movb %al, -0xd9(%rbp)
jmp 0x21a4e
movb -0xd9(%rbp), %al
testb $0x1, %al
jne 0x21a5d
jmp 0x21adf
movq -0xd0(%rbp), %rsi
movq %rsi, %rax
addq $0x150, %rax            # imm = 0x150
movq %rax, -0xe8(%rbp)
movl -0x74(%rbp), %eax
shlq $0x5, %rax
addq %rax, %rsi
leaq -0x98(%rbp), %rdi
callq 0x3100
jmp 0x21a8c
movq -0xe8(%rbp), %rdi
leaq -0x98(%rbp), %rsi
leaq -0x40(%rbp), %rdx
callq 0x24240
jmp 0x21aa5
leaq -0x98(%rbp), %rdi
callq 0x3180
leaq -0x28(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x22020
jmp 0x21ac0
jmp 0x21adf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x98(%rbp), %rdi
callq 0x3180
jmp 0x21c0a
jmp 0x21ae1
movl -0x74(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x74(%rbp)
jmp 0x21a1f
movl $0x0, -0x9c(%rbp)
cmpl $0x2, -0x9c(%rbp)
jae 0x21be0
movq -0xd0(%rbp), %rax
movl -0x9c(%rbp), %ecx
shlq $0x5, %rcx
leaq 0xa0(%rax,%rcx), %rdi
leaq 0xda3a(%rip), %rsi      # 0x2f560
callq 0x6bc0
movb %al, -0xe9(%rbp)
jmp 0x21b33
movb -0xe9(%rbp), %al
testb $0x1, %al
jne 0x21b42
jmp 0x21bca
movq -0xd0(%rbp), %rax
movq %rax, %rcx
addq $0xe0, %rcx
movq %rcx, -0xf8(%rbp)
movl -0x9c(%rbp), %ecx
shlq $0x5, %rcx
leaq 0xa0(%rax,%rcx), %rsi
leaq -0xc0(%rbp), %rdi
callq 0x3100
jmp 0x21b7a
movq -0xf8(%rbp), %rdi
leaq -0xc0(%rbp), %rsi
leaq -0x40(%rbp), %rdx
callq 0x240a0
jmp 0x21b93
leaq -0xc0(%rbp), %rdi
callq 0x3180
leaq -0x28(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x22020
jmp 0x21bae
jmp 0x21bca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0xc0(%rbp), %rdi
callq 0x3180
jmp 0x21c0a
jmp 0x21bcc
movl -0x9c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x9c(%rbp)
jmp 0x21af9
movq -0x10(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x21790
jmp 0x21bef
leaq -0x40(%rbp), %rdi
callq 0x7b40
leaq -0x28(%rbp), %rdi
callq 0x22090
addq $0x100, %rsp            # imm = 0x100
popq %rbp
retq
leaq -0x40(%rbp), %rdi
callq 0x7b40
leaq -0x28(%rbp), %rdi
callq 0x22090
movq -0x48(%rbp), %rdi
callq 0x3410
nopw %cs:(%rax,%rax)
nop