454085:	c6 45 eb 00          	movb   $0x0,-0x15(%ebp)
454089:	50                   	push   %eax
45408a:	68 01 02 00 00       	push   $0x201
45408f:	6a 00                	push   $0x0
454091:	68 f0 c8 68 00       	push   $0x68c8f0
454096:	68 02 00 00 80       	push   $0x80000002
45409b:	c6 45 e9 00          	movb   $0x0,-0x17(%ebp)
45409f:	32 ff                	xor    %bh,%bh
4540a1:	c6 45 ea 00          	movb   $0x0,-0x16(%ebp)
4540a5:	83 ce ff             	or     $0xffffffff,%esi
4540a8:	32 db                	xor    %bl,%bl
4540aa:	ff 15 d4 20 68 00    	call   *0x6820d4
4540b0:	85 c0                	test   %eax,%eax
4540b2:	75 33                	jne    0x4540e7
4540b4:	8d 45 f8             	lea    -0x8(%ebp),%eax
4540b7:	c7 45 f4 04 00 00 00 	movl   $0x4,-0xc(%ebp)
4540be:	50                   	push   %eax
4540bf:	8d 45 f0             	lea    -0x10(%ebp),%eax
4540c2:	c7 45 f8 04 00 00 00 	movl   $0x4,-0x8(%ebp)
4540c9:	50                   	push   %eax
4540ca:	8d 45 f4             	lea    -0xc(%ebp),%eax
4540cd:	50                   	push   %eax
4540ce:	6a 00                	push   $0x0
4540d0:	68 68 c9 68 00       	push   $0x68c968
4540d5:	ff 75 ec             	push   -0x14(%ebp)
4540d8:	ff 15 d0 20 68 00    	call   *0x6820d0
4540de:	85 c0                	test   %eax,%eax
4540e0:	75 05                	jne    0x4540e7
4540e2:	8b 75 f0             	mov    -0x10(%ebp),%esi
4540e5:	b3 01                	mov    $0x1,%bl
4540e7:	ff 75 ec             	push   -0x14(%ebp)
4540ea:	ff 15 44 20 68 00    	call   *0x682044
4540f0:	84 db                	test   %bl,%bl
4540f2:	74 06                	je     0x4540fa
4540f4:	85 f6                	test   %esi,%esi
4540f6:	0f 94 45 eb          	sete   -0x15(%ebp)
4540fa:	8d 45 ec             	lea    -0x14(%ebp),%eax
4540fd:	83 ce ff             	or     $0xffffffff,%esi
454100:	50                   	push   %eax
454101:	68 01 02 00 00       	push   $0x201
454106:	6a 00                	push   $0x0
454108:	68 00 c8 68 00       	push   $0x68c800
45410d:	68 02 00 00 80       	push   $0x80000002
454112:	32 db                	xor    %bl,%bl
454114:	ff 15 d4 20 68 00    	call   *0x6820d4
45411a:	85 c0                	test   %eax,%eax
45411c:	75 33                	jne    0x454151
45411e:	8d 45 f0             	lea    -0x10(%ebp),%eax
454121:	c7 45 f4 04 00 00 00 	movl   $0x4,-0xc(%ebp)
454128:	50                   	push   %eax
454129:	8d 45 f8             	lea    -0x8(%ebp),%eax
45412c:	c7 45 f0 04 00 00 00 	movl   $0x4,-0x10(%ebp)
454133:	50                   	push   %eax
454134:	8d 45 f4             	lea    -0xc(%ebp),%eax
454137:	50                   	push   %eax
454138:	6a 00                	push   $0x0
45413a:	68 68 c9 68 00       	push   $0x68c968
45413f:	ff 75 ec             	push   -0x14(%ebp)
454142:	ff 15 d0 20 68 00    	call   *0x6820d0
454148:	85 c0                	test   %eax,%eax
45414a:	75 05                	jne    0x454151
45414c:	8b 75 f8             	mov    -0x8(%ebp),%esi
45414f:	b3 01                	mov    $0x1,%bl
454151:	ff 75 ec             	push   -0x14(%ebp)
454154:	ff 15 44 20 68 00    	call   *0x682044
45415a:	84 db                	test   %bl,%bl
45415c:	74 06                	je     0x454164
45415e:	85 f6                	test   %esi,%esi
454160:	0f 94 45 ea          	sete   -0x16(%ebp)
454164:	8d 45 ec             	lea    -0x14(%ebp),%eax
454167:	83 ce ff             	or     $0xffffffff,%esi
45416a:	50                   	push   %eax
45416b:	68 01 02 00 00       	push   $0x201
454170:	6a 00                	push   $0x0
454172:	68 88 c7 68 00       	push   $0x68c788
454177:	68 02 00 00 80       	push   $0x80000002
45417c:	32 db                	xor    %bl,%bl
45417e:	ff 15 d4 20 68 00    	call   *0x6820d4
454184:	85 c0                	test   %eax,%eax
454186:	75 33                	jne    0x4541bb
454188:	8d 45 f0             	lea    -0x10(%ebp),%eax
45418b:	c7 45 f4 04 00 00 00 	movl   $0x4,-0xc(%ebp)
454192:	50                   	push   %eax
454193:	8d 45 f8             	lea    -0x8(%ebp),%eax
454196:	c7 45 f0 04 00 00 00 	movl   $0x4,-0x10(%ebp)
45419d:	50                   	push   %eax
45419e:	8d 45 f4             	lea    -0xc(%ebp),%eax
4541a1:	50                   	push   %eax
4541a2:	6a 00                	push   $0x0
4541a4:	68 68 c9 68 00       	push   $0x68c968
4541a9:	ff 75 ec             	push   -0x14(%ebp)
4541ac:	ff 15 d0 20 68 00    	call   *0x6820d0
4541b2:	85 c0                	test   %eax,%eax
4541b4:	75 05                	jne    0x4541bb
4541b6:	8b 75 f8             	mov    -0x8(%ebp),%esi
4541b9:	b3 01                	mov    $0x1,%bl
4541bb:	ff 75 ec             	push   -0x14(%ebp)
4541be:	ff 15 44 20 68 00    	call   *0x682044
4541c4:	84 db                	test   %bl,%bl
4541c6:	74 06                	je     0x4541ce
4541c8:	85 f6                	test   %esi,%esi
4541ca:	0f 94 45 e9          	sete   -0x17(%ebp)
4541ce:	8d 45 ec             	lea    -0x14(%ebp),%eax
4541d1:	83 ce ff             	or     $0xffffffff,%esi
4541d4:	50                   	push   %eax
4541d5:	68 01 02 00 00       	push   $0x201
4541da:	6a 00                	push   $0x0
4541dc:	68 78 c8 68 00       	push   $0x68c878
4541e1:	68 02 00 00 80       	push   $0x80000002
4541e6:	32 db                	xor    %bl,%bl
4541e8:	ff 15 d4 20 68 00    	call   *0x6820d4
4541ee:	85 c0                	test   %eax,%eax
4541f0:	75 33                	jne    0x454225
4541f2:	8d 45 f0             	lea    -0x10(%ebp),%eax
4541f5:	c7 45 f4 04 00 00 00 	movl   $0x4,-0xc(%ebp)
4541fc:	50                   	push   %eax
4541fd:	8d 45 f8             	lea    -0x8(%ebp),%eax
454200:	c7 45 f0 04 00 00 00 	movl   $0x4,-0x10(%ebp)
454207:	50                   	push   %eax
454208:	8d 45 f4             	lea    -0xc(%ebp),%eax
45420b:	50                   	push   %eax
45420c:	6a 00                	push   $0x0
45420e:	68 68 c9 68 00       	push   $0x68c968
454213:	ff 75 ec             	push   -0x14(%ebp)
454216:	ff 15 d0 20 68 00    	call   *0x6820d0
45421c:	85 c0                	test   %eax,%eax
45421e:	75 05                	jne    0x454225
454220:	8b 75 f8             	mov    -0x8(%ebp),%esi
454223:	b3 01                	mov    $0x1,%bl
454225:	ff 75 ec             	push   -0x14(%ebp)
454228:	ff 15 44 20 68 00    	call   *0x682044
45422e:	84 db                	test   %bl,%bl
454230:	74 05                	je     0x454237
454232:	85 f6                	test   %esi,%esi
454234:	0f 94 c7             	sete   %bh
454237:	80 7d eb 00          	cmpb   $0x0,-0x15(%ebp)
45423b:	75 22                	jne    0x45425f
45423d:	80 7d ea 00          	cmpb   $0x0,-0x16(%ebp)
454241:	75 1c                	jne    0x45425f
454243:	80 7d e9 00          	cmpb   $0x0,-0x17(%ebp)
454247:	75 16                	jne    0x45425f
454249:	84 ff                	test   %bh,%bh
45424b:	75 12                	jne    0x45425f
45424d:	5e                   	pop    %esi
45424e:	32 c0                	xor    %al,%al
454250:	5b                   	pop    %ebx
454251:	8b 4d fc             	mov    -0x4(%ebp),%ecx
454254:	33 cd                	xor    %ebp,%ecx
454256:	e8 7f d2 18 00       	call   0x5e14da
45425b:	8b e5                	mov    %ebp,%esp
45425d:	5d                   	pop    %ebp
45425e:	c3                   	ret
45425f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
454262:	b0 01                	mov    $0x1,%al
454264:	5e                   	pop    %esi
454265:	33 cd                	xor    %ebp,%ecx
454267:	5b                   	pop    %ebx
454268:	e8 6d d2 18 00       	call   0x5e14da
45426d:	8b e5                	mov    %ebp,%esp
45426f:	5d                   	pop    %ebp
454270:	c3                   	ret
454271:	cc                   	int3
454272:	cc                   	int3
454273:	cc                   	int3
454274:	cc                   	int3
454275:	cc                   	int3
454276:	cc                   	int3
454277:	cc                   	int3
454278:	cc                   	int3
454279:	cc                   	int3
45427a:	cc                   	int3
45427b:	cc                   	int3
45427c:	cc                   	int3
45427d:	cc                   	int3
45427e:	cc                   	int3
45427f:	cc                   	int3
454280:	55                   	push   %ebp
454281:	8b ec                	mov    %esp,%ebp
454283:	83 ec 14             	sub    $0x14,%esp
454286:	a1 d4 89 72 00       	mov    0x7289d4,%eax
45428b:	33 c5                	xor    %ebp,%eax
45428d:	89 45 fc             	mov    %eax,-0x4(%ebp)
454290:	8b 4d 0c             	mov    0xc(%ebp),%ecx
454293:	8b 55 08             	mov    0x8(%ebp),%edx
454296:	56                   	push   %esi
454297:	8b 75 10             	mov    0x10(%ebp),%esi
45429a:	57                   	push   %edi
45429b:	8b 7d 14             	mov    0x14(%ebp),%edi
45429e:	85 c9                	test   %ecx,%ecx
4542a0:	74 76                	je     0x454318
4542a2:	85 f6                	test   %esi,%esi
4542a4:	74 72                	je     0x454318
4542a6:	53                   	push   %ebx
4542a7:	8d 45 ec             	lea    -0x14(%ebp),%eax
4542aa:	32 db                	xor    %bl,%bl
4542ac:	50                   	push   %eax
4542ad:	0f b6 45 18          	movzbl 0x18(%ebp),%eax
4542b1:	83 f0 01             	xor    $0x1,%eax
4542b4:	c1 e0 08             	shl    $0x8,%eax
4542b7:	05 01 01 00 00       	add    $0x101,%eax
4542bc:	50                   	push   %eax
4542bd:	6a 00                	push   $0x0
4542bf:	51                   	push   %ecx
4542c0:	52                   	push   %edx
4542c1:	ff 15 d4 20 68 00    	call   *0x6820d4
4542c7:	85 c0                	test   %eax,%eax
4542c9:	75 31                	jne    0x4542fc
4542cb:	8d 45 f8             	lea    -0x8(%ebp),%eax
4542ce:	c7 45 f4 04 00 00 00 	movl   $0x4,-0xc(%ebp)
4542d5:	50                   	push   %eax
4542d6:	8d 45 f0             	lea    -0x10(%ebp),%eax
4542d9:	c7 45 f8 04 00 00 00 	movl   $0x4,-0x8(%ebp)
4542e0:	50                   	push   %eax
4542e1:	8d 45 f4             	lea    -0xc(%ebp),%eax
4542e4:	50                   	push   %eax
4542e5:	6a 00                	push   $0x0
4542e7:	56                   	push   %esi
4542e8:	ff 75 ec             	push   -0x14(%ebp)
4542eb:	ff 15 d0 20 68 00    	call   *0x6820d0
4542f1:	85 c0                	test   %eax,%eax
4542f3:	75 07                	jne    0x4542fc
4542f5:	8b 45 f0             	mov    -0x10(%ebp),%eax
4542f8:	b3 01                	mov    $0x1,%bl
4542fa:	89 07                	mov    %eax,(%edi)
4542fc:	ff 75 ec             	push   -0x14(%ebp)
4542ff:	ff 15 44 20 68 00    	call   *0x682044
454305:	8a c3                	mov    %bl,%al
454307:	5b                   	pop    %ebx
454308:	5f                   	pop    %edi
454309:	5e                   	pop    %esi
45430a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45430d:	33 cd                	xor    %ebp,%ecx
45430f:	e8 c6 d1 18 00       	call   0x5e14da
454314:	8b e5                	mov    %ebp,%esp
454316:	5d                   	pop    %ebp
454317:	c3                   	ret
454318:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45431b:	32 c0                	xor    %al,%al
45431d:	5f                   	pop    %edi
45431e:	33 cd                	xor    %ebp,%ecx
454320:	5e                   	pop    %esi
454321:	e8 b4 d1 18 00       	call   0x5e14da
454326:	8b e5                	mov    %ebp,%esp
454328:	5d                   	pop    %ebp
454329:	c3                   	ret
45432a:	cc                   	int3
45432b:	cc                   	int3
45432c:	cc                   	int3
45432d:	cc                   	int3
45432e:	cc                   	int3
45432f:	cc                   	int3
454330:	55                   	push   %ebp
454331:	8b ec                	mov    %esp,%ebp
454333:	83 ec 08             	sub    $0x8,%esp
454336:	a1 d4 89 72 00       	mov    0x7289d4,%eax
45433b:	33 c5                	xor    %ebp,%eax
45433d:	89 45 fc             	mov    %eax,-0x4(%ebp)
454340:	56                   	push   %esi
454341:	8b 4d 0c             	mov    0xc(%ebp),%ecx
454344:	8d 45 f8             	lea    -0x8(%ebp),%eax
454347:	8b 55 08             	mov    0x8(%ebp),%edx
45434a:	57                   	push   %edi
45434b:	8b 75 10             	mov    0x10(%ebp),%esi
45434e:	8b 7d 18             	mov    0x18(%ebp),%edi
454351:	6a 00                	push   $0x0
454353:	50                   	push   %eax
454354:	0f b6 45 20          	movzbl 0x20(%ebp),%eax
454358:	6a 00                	push   $0x0
45435a:	83 f0 01             	xor    $0x1,%eax
45435d:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
454364:	c1 e0 08             	shl    $0x8,%eax
454367:	05 3f 01 0f 00       	add    $0xf013f,%eax
45436c:	50                   	push   %eax
45436d:	6a 00                	push   $0x0
45436f:	6a 00                	push   $0x0
454371:	6a 00                	push   $0x0
454373:	51                   	push   %ecx
454374:	52                   	push   %edx
454375:	ff 15 e4 20 68 00    	call   *0x6820e4
45437b:	85 c0                	test   %eax,%eax
45437d:	75 35                	jne    0x4543b4
45437f:	ff 75 1c             	push   0x1c(%ebp)
454382:	57                   	push   %edi
454383:	ff 75 14             	push   0x14(%ebp)
454386:	50                   	push   %eax
454387:	56                   	push   %esi
454388:	ff 75 f8             	push   -0x8(%ebp)
45438b:	ff 15 cc 20 68 00    	call   *0x6820cc
454391:	ff 75 f8             	push   -0x8(%ebp)
454394:	8b f0                	mov    %eax,%esi
454396:	ff 15 44 20 68 00    	call   *0x682044
45439c:	85 f6                	test   %esi,%esi
45439e:	74 12                	je     0x4543b2
4543a0:	5f                   	pop    %edi
4543a1:	8b c6                	mov    %esi,%eax
4543a3:	5e                   	pop    %esi
4543a4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4543a7:	33 cd                	xor    %ebp,%ecx
4543a9:	e8 2c d1 18 00       	call   0x5e14da
4543ae:	8b e5                	mov    %ebp,%esp
4543b0:	5d                   	pop    %ebp
4543b1:	c3                   	ret
4543b2:	33 c0                	xor    %eax,%eax
4543b4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4543b7:	5f                   	pop    %edi
4543b8:	33 cd                	xor    %ebp,%ecx
4543ba:	5e                   	pop    %esi
4543bb:	e8 1a d1 18 00       	call   0x5e14da
4543c0:	8b e5                	mov    %ebp,%esp
4543c2:	5d                   	pop    %ebp
4543c3:	c3                   	ret
4543c4:	cc                   	int3
4543c5:	cc                   	int3
4543c6:	cc                   	int3
4543c7:	cc                   	int3
4543c8:	cc                   	int3
4543c9:	cc                   	int3
4543ca:	cc                   	int3
4543cb:	cc                   	int3
4543cc:	cc                   	int3
4543cd:	cc                   	int3
4543ce:	cc                   	int3
4543cf:	cc                   	int3
4543d0:	55                   	push   %ebp
4543d1:	8b ec                	mov    %esp,%ebp
4543d3:	57                   	push   %edi
4543d4:	8b f9                	mov    %ecx,%edi
4543d6:	8b 07                	mov    (%edi),%eax
4543d8:	85 c0                	test   %eax,%eax
4543da:	74 51                	je     0x45442d
4543dc:	56                   	push   %esi
4543dd:	57                   	push   %edi
4543de:	ff 77 04             	push   0x4(%edi)
4543e1:	50                   	push   %eax
4543e2:	e8 c9 fe fe ff       	call   0x4442b0
4543e7:	8b 4f 08             	mov    0x8(%edi),%ecx
4543ea:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
4543ef:	8b 37                	mov    (%edi),%esi
4543f1:	83 c4 0c             	add    $0xc,%esp
4543f4:	2b ce                	sub    %esi,%ecx
4543f6:	f7 e9                	imul   %ecx
4543f8:	c1 fa 02             	sar    $0x2,%edx
4543fb:	8b c2                	mov    %edx,%eax
4543fd:	c1 e8 1f             	shr    $0x1f,%eax
454400:	03 c2                	add    %edx,%eax
454402:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
454405:	c1 e1 03             	shl    $0x3,%ecx
454408:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
45440e:	72 12                	jb     0x454422
454410:	8b 56 fc             	mov    -0x4(%esi),%edx