454413:	83 c1 23             	add    $0x23,%ecx
454416:	2b f2                	sub    %edx,%esi
454418:	8d 46 fc             	lea    -0x4(%esi),%eax
45441b:	83 f8 1f             	cmp    $0x1f,%eax
45441e:	77 2f                	ja     0x45444f
454420:	8b f2                	mov    %edx,%esi
454422:	51                   	push   %ecx
454423:	56                   	push   %esi
454424:	e8 49 cc 18 00       	call   0x5e1072
454429:	83 c4 08             	add    $0x8,%esp
45442c:	5e                   	pop    %esi
45442d:	8b 4d 08             	mov    0x8(%ebp),%ecx
454430:	8b 45 0c             	mov    0xc(%ebp),%eax
454433:	89 0f                	mov    %ecx,(%edi)
454435:	8d 04 40             	lea    (%eax,%eax,2),%eax
454438:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
45443b:	89 47 04             	mov    %eax,0x4(%edi)
45443e:	8b 45 10             	mov    0x10(%ebp),%eax
454441:	8d 04 40             	lea    (%eax,%eax,2),%eax
454444:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
454447:	89 47 08             	mov    %eax,0x8(%edi)
45444a:	5f                   	pop    %edi
45444b:	5d                   	pop    %ebp
45444c:	c2 0c 00             	ret    $0xc
45444f:	e8 db 8a 19 00       	call   0x5ecf2f
454454:	cc                   	int3
454455:	cc                   	int3
454456:	cc                   	int3
454457:	cc                   	int3
454458:	cc                   	int3
454459:	cc                   	int3
45445a:	cc                   	int3
45445b:	cc                   	int3
45445c:	cc                   	int3
45445d:	cc                   	int3
45445e:	cc                   	int3
45445f:	cc                   	int3
454460:	55                   	push   %ebp
454461:	8b ec                	mov    %esp,%ebp
454463:	8b 45 08             	mov    0x8(%ebp),%eax
454466:	3d 55 55 55 15       	cmp    $0x15555555,%eax
45446b:	77 47                	ja     0x4544b4
45446d:	8d 04 40             	lea    (%eax,%eax,2),%eax
454470:	c1 e0 02             	shl    $0x2,%eax
454473:	3d 00 10 00 00       	cmp    $0x1000,%eax
454478:	72 23                	jb     0x45449d
45447a:	8d 48 23             	lea    0x23(%eax),%ecx
45447d:	3b c8                	cmp    %eax,%ecx
45447f:	76 33                	jbe    0x4544b4
454481:	51                   	push   %ecx
454482:	e8 bb cb 18 00       	call   0x5e1042
454487:	8b c8                	mov    %eax,%ecx
454489:	83 c4 04             	add    $0x4,%esp
45448c:	85 c9                	test   %ecx,%ecx
45448e:	74 29                	je     0x4544b9
454490:	8d 41 23             	lea    0x23(%ecx),%eax
454493:	83 e0 e0             	and    $0xffffffe0,%eax
454496:	89 48 fc             	mov    %ecx,-0x4(%eax)
454499:	5d                   	pop    %ebp
45449a:	c2 04 00             	ret    $0x4
45449d:	85 c0                	test   %eax,%eax
45449f:	74 0d                	je     0x4544ae
4544a1:	50                   	push   %eax
4544a2:	e8 9b cb 18 00       	call   0x5e1042
4544a7:	83 c4 04             	add    $0x4,%esp
4544aa:	5d                   	pop    %ebp
4544ab:	c2 04 00             	ret    $0x4
4544ae:	33 c0                	xor    %eax,%eax
4544b0:	5d                   	pop    %ebp
4544b1:	c2 04 00             	ret    $0x4
4544b4:	e8 27 0a ff ff       	call   0x444ee0
4544b9:	e8 71 8a 19 00       	call   0x5ecf2f
4544be:	cc                   	int3
4544bf:	cc                   	int3
4544c0:	55                   	push   %ebp
4544c1:	8b ec                	mov    %esp,%ebp
4544c3:	81 ec 24 02 00 00    	sub    $0x224,%esp
4544c9:	a1 d4 89 72 00       	mov    0x7289d4,%eax
4544ce:	33 c5                	xor    %ebp,%eax
4544d0:	89 45 fc             	mov    %eax,-0x4(%ebp)
4544d3:	53                   	push   %ebx
4544d4:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4544d7:	56                   	push   %esi
4544d8:	8b 75 08             	mov    0x8(%ebp),%esi
4544db:	53                   	push   %ebx
4544dc:	56                   	push   %esi
4544dd:	89 b5 dc fd ff ff    	mov    %esi,-0x224(%ebp)
4544e3:	ff 15 e0 20 68 00    	call   *0x6820e0
4544e9:	85 c0                	test   %eax,%eax
4544eb:	74 23                	je     0x454510
4544ed:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
4544f3:	50                   	push   %eax
4544f4:	68 19 00 02 00       	push   $0x20019
4544f9:	6a 00                	push   $0x0
4544fb:	53                   	push   %ebx
4544fc:	56                   	push   %esi
4544fd:	ff 15 d4 20 68 00    	call   *0x6820d4
454503:	85 c0                	test   %eax,%eax
454505:	74 1b                	je     0x454522
454507:	83 f8 02             	cmp    $0x2,%eax
45450a:	0f 85 6e 01 00 00    	jne    0x45467e
454510:	5e                   	pop    %esi
454511:	b0 01                	mov    $0x1,%al
454513:	5b                   	pop    %ebx
454514:	8b 4d fc             	mov    -0x4(%ebp),%ecx
454517:	33 cd                	xor    %ebp,%ecx
454519:	e8 bc cf 18 00       	call   0x5e14da
45451e:	8b e5                	mov    %ebp,%esp
454520:	5d                   	pop    %ebp
454521:	c3                   	ret
454522:	57                   	push   %edi
454523:	53                   	push   %ebx
454524:	ff 15 b8 21 68 00    	call   *0x6821b8
45452a:	66 83 7c 43 fe 5c    	cmpw   $0x5c,-0x2(%ebx,%eax,2)
454530:	8d 3c 43             	lea    (%ebx,%eax,2),%edi
454533:	89 bd e0 fd ff ff    	mov    %edi,-0x220(%ebp)
454539:	74 16                	je     0x454551
45453b:	b8 5c 00 00 00       	mov    $0x5c,%eax
454540:	66 89 07             	mov    %ax,(%edi)
454543:	83 c7 02             	add    $0x2,%edi
454546:	33 c0                	xor    %eax,%eax
454548:	89 bd e0 fd ff ff    	mov    %edi,-0x220(%ebp)
45454e:	66 89 07             	mov    %ax,(%edi)
454551:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
454557:	c7 85 f0 fd ff ff 04 	movl   $0x104,-0x210(%ebp)
45455e:	01 00 00
454561:	50                   	push   %eax
454562:	6a 00                	push   $0x0
454564:	6a 00                	push   $0x0
454566:	6a 00                	push   $0x0
454568:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
45456e:	50                   	push   %eax
45456f:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
454575:	50                   	push   %eax
454576:	6a 00                	push   $0x0
454578:	ff b5 e4 fd ff ff    	push   -0x21c(%ebp)
45457e:	ff 15 d8 20 68 00    	call   *0x6820d8
454584:	85 c0                	test   %eax,%eax
454586:	0f 85 cf 00 00 00    	jne    0x45465b
45458c:	0f 1f 40 00          	nopl   0x0(%eax)
454590:	33 c0                	xor    %eax,%eax
454592:	b9 08 02 00 00       	mov    $0x208,%ecx
454597:	66 89 07             	mov    %ax,(%edi)
45459a:	8b c3                	mov    %ebx,%eax
45459c:	0f 1f 40 00          	nopl   0x0(%eax)
4545a0:	66 83 38 00          	cmpw   $0x0,(%eax)
4545a4:	74 08                	je     0x4545ae
4545a6:	83 c0 02             	add    $0x2,%eax
4545a9:	83 e9 01             	sub    $0x1,%ecx
4545ac:	75 f2                	jne    0x4545a0
4545ae:	b8 08 02 00 00       	mov    $0x208,%eax
4545b3:	8b f1                	mov    %ecx,%esi
4545b5:	2b c1                	sub    %ecx,%eax
4545b7:	f7 de                	neg    %esi
4545b9:	1b f6                	sbb    %esi,%esi
4545bb:	23 f0                	and    %eax,%esi
4545bd:	85 c9                	test   %ecx,%ecx
4545bf:	74 4b                	je     0x45460c
4545c1:	ba 08 02 00 00       	mov    $0x208,%edx
4545c6:	8d 0c 73             	lea    (%ebx,%esi,2),%ecx
4545c9:	2b d6                	sub    %esi,%edx
4545cb:	74 32                	je     0x4545ff
4545cd:	8d bd f4 fd ff ff    	lea    -0x20c(%ebp),%edi
4545d3:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
4545d8:	2b f9                	sub    %ecx,%edi
4545da:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
4545e0:	85 c0                	test   %eax,%eax
4545e2:	74 15                	je     0x4545f9
4545e4:	0f b7 34 0f          	movzwl (%edi,%ecx,1),%esi
4545e8:	66 85 f6             	test   %si,%si
4545eb:	74 0c                	je     0x4545f9
4545ed:	66 89 31             	mov    %si,(%ecx)
4545f0:	48                   	dec    %eax
4545f1:	83 c1 02             	add    $0x2,%ecx
4545f4:	83 ea 01             	sub    $0x1,%edx
4545f7:	75 e7                	jne    0x4545e0
4545f9:	8b bd e0 fd ff ff    	mov    -0x220(%ebp),%edi
4545ff:	85 d2                	test   %edx,%edx
454601:	8d 41 fe             	lea    -0x2(%ecx),%eax
454604:	0f 45 c1             	cmovne %ecx,%eax
454607:	33 c9                	xor    %ecx,%ecx
454609:	66 89 08             	mov    %cx,(%eax)
45460c:	8b b5 dc fd ff ff    	mov    -0x224(%ebp),%esi
454612:	53                   	push   %ebx
454613:	56                   	push   %esi
454614:	e8 a7 fe ff ff       	call   0x4544c0
454619:	83 c4 08             	add    $0x8,%esp
45461c:	84 c0                	test   %al,%al
45461e:	74 3b                	je     0x45465b
454620:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
454626:	c7 85 f0 fd ff ff 04 	movl   $0x104,-0x210(%ebp)
45462d:	01 00 00
454630:	50                   	push   %eax
454631:	6a 00                	push   $0x0
454633:	6a 00                	push   $0x0
454635:	6a 00                	push   $0x0
454637:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
45463d:	50                   	push   %eax
45463e:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
454644:	50                   	push   %eax
454645:	6a 00                	push   $0x0
454647:	ff b5 e4 fd ff ff    	push   -0x21c(%ebp)
45464d:	ff 15 d8 20 68 00    	call   *0x6820d8
454653:	85 c0                	test   %eax,%eax
454655:	0f 84 35 ff ff ff    	je     0x454590
45465b:	33 c0                	xor    %eax,%eax
45465d:	66 89 47 fe          	mov    %ax,-0x2(%edi)
454661:	ff b5 e4 fd ff ff    	push   -0x21c(%ebp)
454667:	ff 15 44 20 68 00    	call   *0x682044
45466d:	53                   	push   %ebx
45466e:	56                   	push   %esi
45466f:	ff 15 e0 20 68 00    	call   *0x6820e0
454675:	5f                   	pop    %edi
454676:	85 c0                	test   %eax,%eax
454678:	0f 84 92 fe ff ff    	je     0x454510
45467e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
454681:	32 c0                	xor    %al,%al
454683:	5e                   	pop    %esi
454684:	33 cd                	xor    %ebp,%ecx
454686:	5b                   	pop    %ebx
454687:	e8 4e ce 18 00       	call   0x5e14da
45468c:	8b e5                	mov    %ebp,%esp
45468e:	5d                   	pop    %ebp
45468f:	c3                   	ret
454690:	55                   	push   %ebp
454691:	8b ec                	mov    %esp,%ebp
454693:	81 ec 14 04 00 00    	sub    $0x414,%esp
454699:	a1 d4 89 72 00       	mov    0x7289d4,%eax
45469e:	33 c5                	xor    %ebp,%eax
4546a0:	89 45 fc             	mov    %eax,-0x4(%ebp)
4546a3:	56                   	push   %esi
4546a4:	8b 75 0c             	mov    0xc(%ebp),%esi
4546a7:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
4546ad:	8b c8                	mov    %eax,%ecx
4546af:	ba 08 02 00 00       	mov    $0x208,%edx
4546b4:	57                   	push   %edi
4546b5:	8b 7d 08             	mov    0x8(%ebp),%edi
4546b8:	2b f1                	sub    %ecx,%esi
4546ba:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
4546c0:	8d 8a f6 fd ff 7f    	lea    0x7ffffdf6(%edx),%ecx
4546c6:	85 c9                	test   %ecx,%ecx
4546c8:	74 14                	je     0x4546de
4546ca:	0f b7 0c 06          	movzwl (%esi,%eax,1),%ecx
4546ce:	66 85 c9             	test   %cx,%cx
4546d1:	74 0b                	je     0x4546de
4546d3:	66 89 08             	mov    %cx,(%eax)
4546d6:	83 c0 02             	add    $0x2,%eax
4546d9:	83 ea 01             	sub    $0x1,%edx
4546dc:	75 e2                	jne    0x4546c0
4546de:	8d 48 fe             	lea    -0x2(%eax),%ecx
4546e1:	85 d2                	test   %edx,%edx
4546e3:	0f 45 c8             	cmovne %eax,%ecx
4546e6:	33 c0                	xor    %eax,%eax
4546e8:	66 89 01             	mov    %ax,(%ecx)
4546eb:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
4546f1:	50                   	push   %eax
4546f2:	57                   	push   %edi
4546f3:	e8 c8 fd ff ff       	call   0x4544c0
4546f8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4546fb:	83 c4 08             	add    $0x8,%esp
4546fe:	33 cd                	xor    %ebp,%ecx
454700:	0f b6 c0             	movzbl %al,%eax
454703:	5f                   	pop    %edi
454704:	5e                   	pop    %esi
454705:	e8 d0 cd 18 00       	call   0x5e14da
45470a:	8b e5                	mov    %ebp,%esp
45470c:	5d                   	pop    %ebp
45470d:	c3                   	ret
45470e:	cc                   	int3
45470f:	cc                   	int3
454710:	55                   	push   %ebp
454711:	8b ec                	mov    %esp,%ebp
454713:	56                   	push   %esi
454714:	ff 75 0c             	push   0xc(%ebp)
454717:	8b f1                	mov    %ecx,%esi
454719:	8b 46 04             	mov    0x4(%esi),%eax
45471c:	3b 46 08             	cmp    0x8(%esi),%eax
45471f:	74 0d                	je     0x45472e
454721:	8b c8                	mov    %eax,%ecx
454723:	e8 78 86 fe ff       	call   0x43cda0
454728:	83 46 04 18          	addl   $0x18,0x4(%esi)
45472c:	eb 06                	jmp    0x454734
45472e:	50                   	push   %eax
45472f:	e8 bc 5d ff ff       	call   0x44a4f0
454734:	8b 46 10             	mov    0x10(%esi),%eax
454737:	57                   	push   %edi
454738:	ff 75 08             	push   0x8(%ebp)
45473b:	3b 46 14             	cmp    0x14(%esi),%eax
45473e:	74 0d                	je     0x45474d
454740:	8b c8                	mov    %eax,%ecx
454742:	e8 59 86 fe ff       	call   0x43cda0
454747:	83 46 10 18          	addl   $0x18,0x10(%esi)
45474b:	eb 09                	jmp    0x454756
45474d:	50                   	push   %eax
45474e:	8d 4e 0c             	lea    0xc(%esi),%ecx
454751:	e8 9a 5d ff ff       	call   0x44a4f0
454756:	8b 46 1c             	mov    0x1c(%esi),%eax
454759:	ff 75 10             	push   0x10(%ebp)
45475c:	3b 46 20             	cmp    0x20(%esi),%eax
45475f:	74 0d                	je     0x45476e
454761:	8b c8                	mov    %eax,%ecx
454763:	e8 38 86 fe ff       	call   0x43cda0
454768:	83 46 1c 18          	addl   $0x18,0x1c(%esi)
45476c:	eb 09                	jmp    0x454777
45476e:	50                   	push   %eax
45476f:	8d 4e 18             	lea    0x18(%esi),%ecx
454772:	e8 79 5d ff ff       	call   0x44a4f0
454777:	8b 46 28             	mov    0x28(%esi),%eax
45477a:	5f                   	pop    %edi
45477b:	ff 75 14             	push   0x14(%ebp)
45477e:	3b 46 2c             	cmp    0x2c(%esi),%eax
454781:	74 10                	je     0x454793
454783:	8b c8                	mov    %eax,%ecx
454785:	e8 16 86 fe ff       	call   0x43cda0
45478a:	83 46 28 18          	addl   $0x18,0x28(%esi)
45478e:	5e                   	pop    %esi
45478f:	5d                   	pop    %ebp
454790:	c2 10 00             	ret    $0x10
454793:	50                   	push   %eax
454794:	8d 4e 24             	lea    0x24(%esi),%ecx
454797:	e8 54 5d ff ff       	call   0x44a4f0
45479c:	5e                   	pop    %esi
45479d:	5d                   	pop    %ebp
45479e:	c2 10 00             	ret    $0x10
4547a1:	cc                   	int3
4547a2:	cc                   	int3
4547a3:	cc                   	int3
4547a4:	cc                   	int3
4547a5:	cc                   	int3
4547a6:	cc                   	int3
4547a7:	cc                   	int3
4547a8:	cc                   	int3
4547a9:	cc                   	int3
4547aa:	cc                   	int3
4547ab:	cc                   	int3
4547ac:	cc                   	int3
4547ad:	cc                   	int3
4547ae:	cc                   	int3
4547af:	cc                   	int3
4547b0:	55                   	push   %ebp
4547b1:	8b ec                	mov    %esp,%ebp
4547b3:	51                   	push   %ecx
4547b4:	53                   	push   %ebx
4547b5:	56                   	push   %esi
4547b6:	8b f1                	mov    %ecx,%esi
4547b8:	57                   	push   %edi
4547b9:	6a 00                	push   $0x0
4547bb:	8d 5e 18             	lea    0x18(%esi),%ebx
4547be:	53                   	push   %ebx
4547bf:	8d 7e 0c             	lea    0xc(%esi),%edi