// File: /workspace/github_cpp_makefile_star2_O2/hzy1754785321[P]warehouse-manage-system/people.cpp
// Function: People::search()
void People::search()
{
		Person *p;
		People p1;
		char t;
		char name[32];
		char type[32];
		int id,flag;
		while(1)
		{
				cout << "\t\t\t\t\t1:by the name." << endl << "\t\t\t\t\t2:by the number." << endl << "\t\t\t\t\t3:search the type" << endl << "\t\t\t\t\t4:exit" << endl << "\t\t\t\t\tplease choice the search way:" ;
				cin >> flag;
				switch(flag)
				{
						case 1:
								cout << "\t\t\t\t\tplease input the name:" ;
								cin >> name;
								p=searchName(name);
								if(p==NULL)
								{
										cout << "\t\t\t\t\tsearch failed" << endl ;
										break;
								}
								else
								{
										cout << "\t\t\t\t\tsearch success!" << endl;
										p->show();
										getchar();
										cout << "\t\t\t\t\tdo you want to change it?(y/n)";
										t=getchar();
										if(t=='n')
												return ;
										else
												p->changeInfo();
												break;
								}
						case 2:
								cout << "\t\t\t\t\tplease input the id:" ;
								cin >> id;
								p=searchNumber(id);
								if(p==NULL)
								{
										cout << "\t\t\t\t\tsearch failed!" << endl;
										break;
								}
								else
								{
										cout << "\t\t\t\t\tsearch success!" << endl;
										p->show();
										getchar();
										cout << "\t\t\t\t\tdo you want to change it?(y/n)";
										t=getchar();
										if(t=='n')
												return ;
										else
												p->changeInfo();
												break;
								}
						case 3:
								cout << "\t\t\t\t\t1:admin" << endl << "\t\t\t\t\t2:inpeople" << endl << "\t\t\t\t\t3:outpeople" << endl << "\t\t\t\t\t4:commonpeople" << endl << "\t\t\t\t\t5:exit" << endl << "\t\t\t\t\tplease input your choice:" ;
								cin >> flag;
								switch(flag)
								{
										case 1://type="Admin";
											   strcpy(type,"admin");
											   p1=searchType(type);
											   p1.showAll();
											   break;
										case 2://type="InPeople";
											   strcpy(type,"InPeople");
											   p1=searchType(type);
											   p1.showAll();
											   break;
										case 3://type="OutPeople";
											   strcpy(type,"OutPeople");
											   p1=searchType(type);
											   p1.showAll();
											   break;
										case 4://type="CommonPeople";
											   strcpy(type,"CommonPeople");
											   p1=searchType(type);
											   p1.showAll();
											   break;
										case 5:break;
										default:cout << "\t\t\t\t\tinput error!" << endl;
												break;
								}break;
						case 4:return ;

						default:
								cout << "\t\t\t\t\tinput error!" << endl;
								break;
				}		
		/*		cout << "continue?(y/n)" ;
				getchar();
				if((getchar())=='n')
						return ;    */
		}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %rdi, %rbx
xorps %xmm0, %xmm0
leaq -0x70(%rbp), %rax
andq $0x0, 0x10(%rax)
movaps %xmm0, (%rax)
movq 0x97f5(%rip), %r15      # 0xcfd0
movq 0x97fe(%rip), %r14      # 0xcfe0
leaq 0x482b(%rip), %r12      # 0x8014
movq %rdi, -0x78(%rbp)
movq %r15, %rdi
leaq 0x4a65(%rip), %rsi      # 0x825c
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
leaq 0x4b06(%rip), %rsi      # 0x8314
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
leaq 0x4b05(%rip), %rsi      # 0x832a
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
leaq 0x4994(%rip), %rsi      # 0x81d0
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
leaq 0x4aee(%rip), %rsi      # 0x8341
callq 0x21c0
movq %r14, %rdi
leaq -0x2c(%rbp), %rsi
callq 0x2100
movl -0x2c(%rbp), %eax
decl %eax
leaq 0x4906(%rip), %rsi      # 0x8176
cmpl $0x3, %eax
ja 0x3a58
movslq (%r12,%rax,4), %rax
addq %r12, %rax
jmpq *%rax
movq %r15, %rdi
leaq 0x4844(%rip), %rsi      # 0x80d0
callq 0x21c0
movq %r14, %rdi
leaq -0xb0(%rbp), %rsi
callq 0x3fc1
movq %rbx, %rdi
leaq -0xb0(%rbp), %rsi
callq 0x3256
movq %rax, %r13
leaq 0x4aab(%rip), %rsi      # 0x8364
testq %rax, %rax
je 0x3a58
movq %r15, %rdi
leaq 0x4aab(%rip), %rsi      # 0x8377
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %r13, %rdi
callq 0x2976
callq 0x2270
movq %r15, %rdi
leaq 0x4a9c(%rip), %rsi      # 0x838c
callq 0x21c0
jmp 0x3a3e
movq %r15, %rdi
leaq 0x4ada(%rip), %rsi      # 0x83de
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
leaq 0x4ad0(%rip), %rsi      # 0x83eb
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
leaq 0x4ac9(%rip), %rsi      # 0x83fb
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
leaq 0x4ac3(%rip), %rsi      # 0x840c
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
leaq 0x4ac0(%rip), %rsi      # 0x8420
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
leaq 0x4ab5(%rip), %rsi      # 0x842c
callq 0x21c0
movq %r14, %rdi
leaq -0x2c(%rbp), %rsi
callq 0x2100
movl -0x2c(%rbp), %eax
decl %eax
leaq 0x47e2(%rip), %rsi      # 0x8176
cmpl $0x4, %eax
ja 0x3a58
leaq 0x4680(%rip), %rcx      # 0x8024
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movw $0x6e, -0x4c(%rbp)
movl $0x696d6461, -0x50(%rbp) # imm = 0x696D6461
movq %rbx, %rsi
leaq -0x90(%rbp), %rbx
movq %rbx, %rdi
leaq -0x50(%rbp), %rdx
callq 0x3748
jmp 0x3af5
movq %r15, %rdi
leaq 0x49d1(%rip), %rsi      # 0x83b0
callq 0x21c0
movq %r14, %rdi
leaq -0x30(%rbp), %rsi
callq 0x2100
movq %rbx, %rdi
leaq -0x30(%rbp), %rsi
callq 0x3232
leaq 0x49c7(%rip), %rsi      # 0x83ca
testq %rax, %rax
je 0x3a58
movq %rax, %r13
movq %r15, %rdi
leaq 0x4962(%rip), %rsi      # 0x8377
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
movq %r13, %rdi
callq 0x2976
callq 0x2270
movq %r15, %rdi
leaq 0x4953(%rip), %rsi      # 0x838c
callq 0x21c0
callq 0x2270
cmpb $0x6e, %al
je 0x3b1d
movq %r13, %rdi
callq 0x28b2
jmp 0x37ed
movq %r15, %rdi
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
jmp 0x37ed
movabsq $0x6c706f655074754f, %rax # imm = 0x6C706F655074754F
movq %rax, -0x50(%rbp)
movw $0x65, -0x48(%rbp)
movq %rbx, %rsi
leaq -0x90(%rbp), %rbx
movq %rbx, %rdi
leaq -0x50(%rbp), %rdx
callq 0x3748
jmp 0x3af5
movabsq $0x656c706f65506e, %rax # imm = 0x656C706F65506E
movq %rax, -0x4b(%rbp)
movabsq $0x65506e6f6d6d6f43, %rax # imm = 0x65506E6F6D6D6F43
movq %rax, -0x50(%rbp)
movq %rbx, %rsi
leaq -0x90(%rbp), %rbx
movq %rbx, %rdi
leaq -0x50(%rbp), %rdx
callq 0x3748
jmp 0x3af5
movabsq $0x656c706f65506e49, %rax # imm = 0x656C706F65506E49
movq %rax, -0x50(%rbp)
movb $0x0, -0x48(%rbp)
movq %rbx, %rsi
leaq -0x90(%rbp), %rbx
movq %rbx, %rdi
leaq -0x50(%rbp), %rdx
callq 0x3748
leaq -0x70(%rbp), %r13
movq %r13, %rdi
movq %rbx, %rsi
callq 0x408e
movq %rbx, %rdi
callq 0x4050
movq %r13, %rdi
callq 0x2f5c
movq -0x78(%rbp), %rbx
jmp 0x37ed
leaq -0x70(%rbp), %rdi
callq 0x4050
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x3b40
jmp 0x3b40
jmp 0x3b40
jmp 0x3b40
movq %rax, %rbx
leaq -0x70(%rbp), %rdi
callq 0x4050
movq %rbx, %rdi
callq 0x2310