// File: /workspace/github_cpp_makefile_star2_O3/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, -0x60(%rbp)
movq $0x0, -0x38(%rbp)
movq 0xa2ef(%rip), %r14      # 0xefd0
movq $0x0, -0x30(%rbp)
movl $0x13, %edx
movq %r14, %rdi
leaq 0x5577(%rip), %rsi      # 0xa26f
callq 0x2240
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %rax, %r15
movl $0x15, %edx
movq %rax, %rdi
leaq 0x55f1(%rip), %rsi      # 0xa327
callq 0x2240
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %rax, %r15
movl $0x16, %edx
movq %rax, %rdi
leaq 0x55c9(%rip), %rsi      # 0xa33d
callq 0x2240
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %rax, %r15
movl $0xb, %edx
movq %rax, %rdi
leaq 0x5431(%rip), %rsi      # 0xa1e3
callq 0x2240
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movl $0x22, %edx
movq %rax, %rdi
leaq 0x5567(%rip), %rsi      # 0xa354
callq 0x2240
movq 0xa1e7(%rip), %rdi      # 0xefe0
leaq -0x54(%rbp), %rsi
callq 0x20f0
movl $0x11, %r15d
movl -0x54(%rbp), %eax
decl %eax
cmpl $0x3, %eax
ja 0x518e
leaq 0x51f7(%rip), %rcx      # 0xa014
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl $0x1b, %edx
movq %r14, %rdi
leaq 0x52ae(%rip), %rsi      # 0xa0e3
callq 0x2240
movq 0xa19f(%rip), %rdi      # 0xefe0
movq (%rdi), %rax
movq -0x18(%rax), %rax
movq 0x10(%rdi,%rax), %rbx
movl $0x20, %edx
leaq -0xb0(%rbp), %rsi
callq 0x2330
movq 0xa17b(%rip), %rcx      # 0xefe0
movq (%rcx), %rax
movq -0x18(%rax), %rax
cmpl $0x0, 0x20(%rcx,%rax)
jne 0x4e9a
addq $-0x21, %rbx
cmpq $-0x21, %rbx
ja 0x4e9a
movq 0xa15c(%rip), %rcx      # 0xefe0
movq 0xe8(%rcx,%rax), %rdi
movq 0x10(%rdi), %rax
cmpq 0x18(%rdi), %rax
jae 0x5439
movq -0x60(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x4562
movq %rax, %r12
testq %rax, %rax
je 0x5197
movl $0x14, %edx
movq %r14, %rdi
leaq 0x54c5(%rip), %rsi      # 0xa38a
callq 0x2240
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %r12, %rdi
callq 0x398a
callq 0x2290
movl $0x23, %edx
movq %r14, %rdi
leaq 0x5492(%rip), %rsi      # 0xa39f
callq 0x2240
jmp 0x5237
movl $0xc, %edx
movq %r14, %rdi
leaq 0x54cb(%rip), %rsi      # 0xa3f1
callq 0x2240
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %rax, %r12
movl $0xf, %edx
movq %rax, %rdi
leaq 0x549a(%rip), %rsi      # 0xa3fe
callq 0x2240
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %rax, %r12
movl $0x10, %edx
movq %rax, %rdi
leaq 0x546b(%rip), %rsi      # 0xa40e
callq 0x2240
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %rax, %r12
movl $0x13, %edx
movq %rax, %rdi
leaq 0x543d(%rip), %rsi      # 0xa41f
callq 0x2240
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %rax, %r12
movl $0xb, %edx
movq %rax, %rdi
leaq 0x5412(%rip), %rsi      # 0xa433
callq 0x2240
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movl $0x1e, %edx
movq %rax, %rdi
leaq 0x53e2(%rip), %rsi      # 0xa43f
callq 0x2240
movq 0x9f77(%rip), %rdi      # 0xefe0
leaq -0x54(%rbp), %rsi
callq 0x20f0
movl -0x54(%rbp), %eax
decl %eax
leaq 0x510b(%rip), %rsi      # 0xa189
cmpl $0x4, %eax
ja 0x51a4
leaq 0x4f96(%rip), %rcx      # 0xa024
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movw $0x6e, -0x8c(%rbp)
movl $0x696d6461, -0x90(%rbp) # imm = 0x696D6461
leaq -0x50(%rbp), %rdi
movq -0x60(%rbp), %rsi
leaq -0x90(%rbp), %rdx
callq 0x4c2e
movq -0x50(%rbp), %r13
movq -0x48(%rbp), %rbx
movq -0x40(%rbp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, -0x50(%rbp)
movq $0x0, -0x40(%rbp)
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x5103
movq -0x30(%rbp), %rsi
subq %rdi, %rsi
callq 0x21f0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x5103
movq -0x40(%rbp), %rsi
subq %rdi, %rsi
callq 0x21f0
movq %r13, -0x38(%rbp)
movq %r12, -0x30(%rbp)
cmpq %rbx, %r13
je 0x4ce9
movq %r13, %r15
movq (%r15), %rdi
callq 0x398a
addq $0x8, %r15
cmpq %rbx, %r15
jne 0x5117
movq %r13, -0x38(%rbp)
movq %r12, -0x30(%rbp)
jmp 0x4ce9
movl $0x19, %edx
movq %r14, %rdi
leaq 0x527f(%rip), %rsi      # 0xa3c3
callq 0x2240
movq 0x9e90(%rip), %rdi      # 0xefe0
leaq -0x64(%rbp), %rsi
callq 0x20f0
movq -0x60(%rbp), %rcx
movq (%rcx), %rax
movq 0x8(%rcx), %rcx
movl $0x13, %r15d
cmpq %rcx, %rax
je 0x5185
movl -0x64(%rbp), %edx
movq (%rax), %r12
cmpl %edx, 0x68(%r12)
je 0x51db
addq $0x8, %rax
cmpq %rcx, %rax
jne 0x5172
leaq 0x5251(%rip), %rsi      # 0xa3dd
jmp 0x51a4
leaq 0x4ff4(%rip), %rsi      # 0xa189
jmp 0x51a4
movl $0x12, %r15d
leaq 0x51d3(%rip), %rsi      # 0xa377
movq %r14, %rdi
movq %r15, %rdx
callq 0x2240
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
jmp 0x4ce9
movl $0x14, %edx
movq %r14, %rdi
leaq 0x51a0(%rip), %rsi      # 0xa38a
callq 0x2240
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %r12, %rdi
callq 0x398a
callq 0x2290
movl $0x23, %edx
movq %r14, %rdi
leaq 0x516d(%rip), %rsi      # 0xa39f
callq 0x2240
callq 0x2290
cmpb $0x6e, %al
je 0x546b
movq %r12, %rdi
callq 0x37f0
jmp 0x4ce9
movabsq $0x6c706f655074754f, %rax # imm = 0x6C706F655074754F
movq %rax, -0x90(%rbp)
movw $0x65, -0x88(%rbp)
leaq -0x50(%rbp), %rdi
movq -0x60(%rbp), %rsi
leaq -0x90(%rbp), %rdx
callq 0x4c2e
movq -0x50(%rbp), %r15
movq -0x48(%rbp), %rbx
movq -0x40(%rbp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, -0x50(%rbp)
movq $0x0, -0x40(%rbp)
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x52c4
movq -0x30(%rbp), %rsi
subq %rdi, %rsi
callq 0x21f0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x52c4
movq -0x40(%rbp), %rsi
subq %rdi, %rsi
callq 0x21f0
movq %r15, -0x38(%rbp)
movq %r12, -0x30(%rbp)
cmpq %rbx, %r15
je 0x4ce9
movq %r15, %r13
movq (%r13), %rdi
callq 0x398a
addq $0x8, %r13
cmpq %rbx, %r13
jne 0x52d8
jmp 0x542c
movabsq $0x656c706f65506e, %rax # imm = 0x656C706F65506E
movq %rax, -0x8b(%rbp)
movabsq $0x65506e6f6d6d6f43, %rax # imm = 0x65506E6F6D6D6F43
movq %rax, -0x90(%rbp)
leaq -0x50(%rbp), %rdi
movq -0x60(%rbp), %rsi
leaq -0x90(%rbp), %rdx
callq 0x4c2e
movq -0x50(%rbp), %r15
movq -0x48(%rbp), %rbx
movq -0x40(%rbp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, -0x50(%rbp)
movq $0x0, -0x40(%rbp)
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x536a
movq -0x30(%rbp), %rsi
subq %rdi, %rsi
callq 0x21f0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x536a
movq -0x40(%rbp), %rsi
subq %rdi, %rsi
callq 0x21f0
movq %r15, -0x38(%rbp)
movq %r12, -0x30(%rbp)
cmpq %rbx, %r15
je 0x4ce9
movq %r15, %r13
movq (%r13), %rdi
callq 0x398a
addq $0x8, %r13
cmpq %rbx, %r13
jne 0x537e
jmp 0x542c
movabsq $0x656c706f65506e49, %rax # imm = 0x656C706F65506E49
movq %rax, -0x90(%rbp)
movb $0x0, -0x88(%rbp)
leaq -0x50(%rbp), %rdi
movq -0x60(%rbp), %rsi
leaq -0x90(%rbp), %rdx
callq 0x4c2e
movq -0x50(%rbp), %r15
movq -0x48(%rbp), %rbx
movq -0x40(%rbp), %r12
xorps %xmm0, %xmm0
movaps %xmm0, -0x50(%rbp)
movq $0x0, -0x40(%rbp)
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x5406
movq -0x30(%rbp), %rsi
subq %rdi, %rsi
callq 0x21f0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x5406
movq -0x40(%rbp), %rsi
subq %rdi, %rsi
callq 0x21f0
movq %r15, -0x38(%rbp)
movq %r12, -0x30(%rbp)
cmpq %rbx, %r15
je 0x4ce9
movq %r15, %r13
movq (%r13), %rdi
callq 0x398a
addq $0x8, %r13
cmpq %rbx, %r13
jne 0x541a
movq %r15, -0x38(%rbp)
movq %r12, -0x30(%rbp)
jmp 0x4ce9
movq (%rdi), %rax
callq *0x48(%rax)
cmpl $-0x1, %eax
jne 0x4e9a
movq 0x9b91(%rip), %rcx      # 0xefe0
movq (%rcx), %rax
movq -0x18(%rax), %rax
leaq (%rcx,%rax), %rdi
movl 0x20(%rcx,%rax), %esi
orl $0x2, %esi
callq 0x2310
jmp 0x4e9a
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x5480
movq -0x30(%rbp), %rsi
subq %rdi, %rsi
callq 0x21f0
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x54b2
jmp 0x54b2
jmp 0x54b2
jmp 0x54b2
jmp 0x549e
jmp 0x549e
movq %rax, %rbx
movq %r15, %rdi
jmp 0x54ac
movq %rax, %rbx
movq %r13, %rdi
movq %r12, -0x30(%rbp)
jmp 0x54b9
movq %rax, %rbx
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x54ca
movq -0x30(%rbp), %rsi
subq %rdi, %rsi
callq 0x21f0
movq %rbx, %rdi
callq 0x2350