4573e7:	8d 4d 10             	lea    0x10(%ebp),%ecx
4573ea:	e8 f3 79 01 00       	call   0x46ede2
4573ef:	50                   	push   %eax
4573f0:	8b cf                	mov    %edi,%ecx
4573f2:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
4573f6:	e8 f8 9e fa ff       	call   0x4012f3
4573fb:	8b 4d 08             	mov    0x8(%ebp),%ecx
4573fe:	83 c1 f0             	add    $0xfffffff0,%ecx
457401:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
457405:	e8 48 9f fa ff       	call   0x401352
45740a:	8b 07                	mov    (%edi),%eax
45740c:	89 46 3c             	mov    %eax,0x3c(%esi)
45740f:	8b 46 14             	mov    0x14(%esi),%eax
457412:	40                   	inc    %eax
457413:	89 46 18             	mov    %eax,0x18(%esi)
457416:	6a 2a                	push   $0x2a
457418:	8b cb                	mov    %ebx,%ecx
45741a:	e8 f4 f1 fa ff       	call   0x406613
45741f:	8d 45 10             	lea    0x10(%ebp),%eax
457422:	50                   	push   %eax
457423:	8b cb                	mov    %ebx,%ecx
457425:	e8 a2 47 01 00       	call   0x46bbcc
45742a:	6a 3b                	push   $0x3b
45742c:	8b cb                	mov    %ebx,%ecx
45742e:	e8 e0 f1 fa ff       	call   0x406613
457433:	8b 4d 10             	mov    0x10(%ebp),%ecx
457436:	83 c1 f0             	add    $0xfffffff0,%ecx
457439:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
45743d:	e8 10 9f fa ff       	call   0x401352
457442:	83 7d 14 ff          	cmpl   $0xffffffff,0x14(%ebp)
457446:	0f 85 6a ff ff ff    	jne    0x4573b6
45744c:	8b 03                	mov    (%ebx),%eax
45744e:	8b 40 f4             	mov    -0xc(%eax),%eax
457451:	6a 00                	push   $0x0
457453:	48                   	dec    %eax
457454:	50                   	push   %eax
457455:	8b cb                	mov    %ebx,%ecx
457457:	e8 49 78 01 00       	call   0x46eca5
45745c:	ff 46 14             	incl   0x14(%esi)
45745f:	5f                   	pop    %edi
457460:	8b 4d f0             	mov    -0x10(%ebp),%ecx
457463:	83 c1 f0             	add    $0xfffffff0,%ecx
457466:	e8 e7 9e fa ff       	call   0x401352
45746b:	8b 4d ec             	mov    -0x14(%ebp),%ecx
45746e:	83 c1 f0             	add    $0xfffffff0,%ecx
457471:	e8 dc 9e fa ff       	call   0x401352
457476:	8b 4d f4             	mov    -0xc(%ebp),%ecx
457479:	5e                   	pop    %esi
45747a:	5b                   	pop    %ebx
45747b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
457482:	c9                   	leave
457483:	c2 10 00             	ret    $0x10
457486:	b8 2f 34 48 00       	mov    $0x48342f,%eax
45748b:	e8 ec 07 fc ff       	call   0x417c7c
457490:	81 ec d0 01 00 00    	sub    $0x1d0,%esp
457496:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
45749b:	53                   	push   %ebx
45749c:	56                   	push   %esi
45749d:	57                   	push   %edi
45749e:	33 ff                	xor    %edi,%edi
4574a0:	57                   	push   %edi
4574a1:	57                   	push   %edi
4574a2:	57                   	push   %edi
4574a3:	6a 06                	push   $0x6
4574a5:	57                   	push   %edi
4574a6:	57                   	push   %edi
4574a7:	ff 75 14             	push   0x14(%ebp)
4574aa:	8b f1                	mov    %ecx,%esi
4574ac:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
4574b2:	89 45 f0             	mov    %eax,-0x10(%ebp)
4574b5:	e8 0c e3 fd ff       	call   0x4357c6
4574ba:	89 7d fc             	mov    %edi,-0x4(%ebp)
4574bd:	e8 34 8d fe ff       	call   0x4401f6
4574c2:	8b 10                	mov    (%eax),%edx
4574c4:	8b c8                	mov    %eax,%ecx
4574c6:	ff 52 0c             	call   *0xc(%edx)
4574c9:	83 c0 10             	add    $0x10,%eax
4574cc:	89 85 28 fe ff ff    	mov    %eax,-0x1d8(%ebp)
4574d2:	ff 75 0c             	push   0xc(%ebp)
4574d5:	33 db                	xor    %ebx,%ebx
4574d7:	43                   	inc    %ebx
4574d8:	8d 8d 28 fe ff ff    	lea    -0x1d8(%ebp),%ecx
4574de:	88 5d fc             	mov    %bl,-0x4(%ebp)
4574e1:	e8 18 9d fa ff       	call   0x4011fe
4574e6:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
4574ec:	e8 78 df fd ff       	call   0x435469
4574f1:	8b 4d 10             	mov    0x10(%ebp),%ecx
4574f4:	83 c0 34             	add    $0x34,%eax
4574f7:	09 08                	or     %ecx,(%eax)
4574f9:	e8 f8 8c fe ff       	call   0x4401f6
4574fe:	8b 10                	mov    (%eax),%edx
457500:	8b c8                	mov    %eax,%ecx
457502:	ff 52 0c             	call   *0xc(%edx)
457505:	83 c0 10             	add    $0x10,%eax
457508:	89 45 14             	mov    %eax,0x14(%ebp)
45750b:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
45750f:	e8 e2 8c fe ff       	call   0x4401f6
457514:	8b 10                	mov    (%eax),%edx
457516:	8b c8                	mov    %eax,%ecx
457518:	ff 52 0c             	call   *0xc(%edx)
45751b:	83 c0 10             	add    $0x10,%eax
45751e:	89 45 0c             	mov    %eax,0xc(%ebp)
457521:	39 7d 18             	cmp    %edi,0x18(%ebp)
457524:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
457528:	74 1e                	je     0x457548
45752a:	8d 45 0c             	lea    0xc(%ebp),%eax
45752d:	50                   	push   %eax
45752e:	ff 75 18             	push   0x18(%ebp)
457531:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
457537:	e8 2d df fd ff       	call   0x435469
45753c:	50                   	push   %eax
45753d:	8d 45 14             	lea    0x14(%ebp),%eax
457540:	50                   	push   %eax
457541:	e8 c3 fd ff ff       	call   0x457309
457546:	eb 4a                	jmp    0x457592
457548:	8b 46 08             	mov    0x8(%esi),%eax
45754b:	3b c7                	cmp    %edi,%eax
45754d:	89 85 24 fe ff ff    	mov    %eax,-0x1dc(%ebp)
457553:	74 3d                	je     0x457592
457555:	83 c6 04             	add    $0x4,%esi
457558:	8d 85 24 fe ff ff    	lea    -0x1dc(%ebp),%eax
45755e:	50                   	push   %eax
45755f:	8b ce                	mov    %esi,%ecx
457561:	e8 fc fe fa ff       	call   0x407462
457566:	8b 00                	mov    (%eax),%eax
457568:	f7 db                	neg    %ebx
45756a:	1b db                	sbb    %ebx,%ebx
45756c:	8d 4d 0c             	lea    0xc(%ebp),%ecx
45756f:	23 d9                	and    %ecx,%ebx
457571:	53                   	push   %ebx
457572:	50                   	push   %eax
457573:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
457579:	e8 eb de fd ff       	call   0x435469
45757e:	50                   	push   %eax
45757f:	8d 45 14             	lea    0x14(%ebp),%eax
457582:	50                   	push   %eax
457583:	e8 81 fd ff ff       	call   0x457309
457588:	33 db                	xor    %ebx,%ebx
45758a:	39 bd 24 fe ff ff    	cmp    %edi,-0x1dc(%ebp)
457590:	75 c6                	jne    0x457558
457592:	e8 5f 8c fe ff       	call   0x4401f6
457597:	8b 10                	mov    (%eax),%edx
457599:	8b c8                	mov    %eax,%ecx
45759b:	ff 52 0c             	call   *0xc(%edx)
45759e:	83 c0 10             	add    $0x10,%eax
4575a1:	89 45 18             	mov    %eax,0x18(%ebp)
4575a4:	68 02 f0 00 00       	push   $0xf002
4575a9:	8d 4d 18             	lea    0x18(%ebp),%ecx
4575ac:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
4575b0:	e8 49 9c fa ff       	call   0x4011fe
4575b5:	8b 75 18             	mov    0x18(%ebp),%esi
4575b8:	ff 76 f4             	push   -0xc(%esi)
4575bb:	8d 4d 14             	lea    0x14(%ebp),%ecx
4575be:	56                   	push   %esi
4575bf:	e8 77 f0 fa ff       	call   0x40663b
4575c4:	57                   	push   %edi
4575c5:	8d 4d 14             	lea    0x14(%ebp),%ecx
4575c8:	e8 46 f0 fa ff       	call   0x406613
4575cd:	68 10 bc 48 00       	push   $0x48bc10
4575d2:	8d 4d 14             	lea    0x14(%ebp),%ecx
4575d5:	e8 15 44 01 00       	call   0x46b9ef
4575da:	57                   	push   %edi
4575db:	8d 4d 14             	lea    0x14(%ebp),%ecx
4575de:	e8 30 f0 fa ff       	call   0x406613
4575e3:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
4575e9:	e8 7b de fd ff       	call   0x435469
4575ee:	83 c0 14             	add    $0x14,%eax
4575f1:	ff 00                	incl   (%eax)
4575f3:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
4575f9:	e8 6b de fd ff       	call   0x435469
4575fe:	8b 7d 14             	mov    0x14(%ebp),%edi
457601:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
457607:	89 78 0c             	mov    %edi,0xc(%eax)
45760a:	e8 5a de fd ff       	call   0x435469
45760f:	8b 8d 28 fe ff ff    	mov    -0x1d8(%ebp),%ecx
457615:	89 48 30             	mov    %ecx,0x30(%eax)
457618:	8b 4d 08             	mov    0x8(%ebp),%ecx
45761b:	68 04 01 00 00       	push   $0x104
457620:	e8 6b 9b fa ff       	call   0x401190
457625:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
45762b:	8b d8                	mov    %eax,%ebx
45762d:	e8 37 de fd ff       	call   0x435469
457632:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
457638:	89 58 1c             	mov    %ebx,0x1c(%eax)
45763b:	e8 2d de fd ff       	call   0x43546d
457640:	8b 4d 08             	mov    0x8(%ebp),%ecx
457643:	6a ff                	push   $0xffffffff
457645:	8b d8                	mov    %eax,%ebx
457647:	e8 db 9a fa ff       	call   0x401127
45764c:	33 c0                	xor    %eax,%eax
45764e:	83 fb 01             	cmp    $0x1,%ebx
457651:	0f 94 c0             	sete   %al
457654:	8d 4e f0             	lea    -0x10(%esi),%ecx
457657:	8b d8                	mov    %eax,%ebx
457659:	e8 f4 9c fa ff       	call   0x401352
45765e:	8b 4d 0c             	mov    0xc(%ebp),%ecx
457661:	83 c1 f0             	add    $0xfffffff0,%ecx
457664:	e8 e9 9c fa ff       	call   0x401352
457669:	8d 4f f0             	lea    -0x10(%edi),%ecx
45766c:	e8 e1 9c fa ff       	call   0x401352
457671:	8b 8d 28 fe ff ff    	mov    -0x1d8(%ebp),%ecx
457677:	83 c1 f0             	add    $0xfffffff0,%ecx
45767a:	e8 d3 9c fa ff       	call   0x401352
45767f:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
457683:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
457689:	e8 60 e0 fd ff       	call   0x4356ee
45768e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
457691:	5f                   	pop    %edi
457692:	5e                   	pop    %esi
457693:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45769a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
45769d:	8b c3                	mov    %ebx,%eax
45769f:	5b                   	pop    %ebx
4576a0:	e8 39 05 fc ff       	call   0x417bde
4576a5:	c9                   	leave
4576a6:	c2 14 00             	ret    $0x14
4576a9:	b8 b9 34 48 00       	mov    $0x4834b9,%eax
4576ae:	e8 c9 05 fc ff       	call   0x417c7c
4576b3:	83 ec 3c             	sub    $0x3c,%esp
4576b6:	53                   	push   %ebx
4576b7:	56                   	push   %esi
4576b8:	57                   	push   %edi
4576b9:	ff 75 08             	push   0x8(%ebp)
4576bc:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4576bf:	8d 4d 08             	lea    0x8(%ebp),%ecx
4576c2:	e8 cd 9b fa ff       	call   0x401294
4576c7:	33 ff                	xor    %edi,%edi
4576c9:	8d 4d b8             	lea    -0x48(%ebp),%ecx
4576cc:	89 7d fc             	mov    %edi,-0x4(%ebp)
4576cf:	e8 5b 4e 01 00       	call   0x46c52f
4576d4:	6a 07                	push   $0x7
4576d6:	8d 45 e8             	lea    -0x18(%ebp),%eax
4576d9:	50                   	push   %eax
4576da:	8d 4d 08             	lea    0x8(%ebp),%ecx
4576dd:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4576e1:	c7 45 c8 04 00 00 00 	movl   $0x4,-0x38(%ebp)
4576e8:	e8 9e 44 01 00       	call   0x46bb8b
4576ed:	68 70 c2 48 00       	push   $0x48c270
4576f2:	50                   	push   %eax
4576f3:	e8 40 56 01 00       	call   0x46cd38
4576f8:	59                   	pop    %ecx
4576f9:	59                   	pop    %ecx
4576fa:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4576fd:	83 c1 f0             	add    $0xfffffff0,%ecx
457700:	8a d8                	mov    %al,%bl
457702:	e8 4b 9c fa ff       	call   0x401352
457707:	84 db                	test   %bl,%bl
457709:	8d 4d 08             	lea    0x8(%ebp),%ecx
45770c:	74 23                	je     0x457731
45770e:	8b 45 08             	mov    0x8(%ebp),%eax
457711:	c7 45 c8 01 00 00 00 	movl   $0x1,-0x38(%ebp)
457718:	8b 40 f4             	mov    -0xc(%eax),%eax
45771b:	83 c0 f9             	add    $0xfffffff9,%eax
45771e:	50                   	push   %eax
45771f:	8d 45 e8             	lea    -0x18(%ebp),%eax
457722:	50                   	push   %eax
457723:	e8 34 75 01 00       	call   0x46ec5c
457728:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
45772c:	e9 9a 00 00 00       	jmp    0x4577cb
457731:	6a 08                	push   $0x8
457733:	8d 45 e8             	lea    -0x18(%ebp),%eax
457736:	50                   	push   %eax
457737:	e8 4f 44 01 00       	call   0x46bb8b
45773c:	68 64 c2 48 00       	push   $0x48c264
457741:	50                   	push   %eax
457742:	e8 f1 55 01 00       	call   0x46cd38
457747:	59                   	pop    %ecx
457748:	59                   	pop    %ecx
457749:	8b 4d e8             	mov    -0x18(%ebp),%ecx
45774c:	83 c1 f0             	add    $0xfffffff0,%ecx
45774f:	8a d8                	mov    %al,%bl
457751:	e8 fc 9b fa ff       	call   0x401352
457756:	84 db                	test   %bl,%bl
457758:	8d 4d 08             	lea    0x8(%ebp),%ecx
45775b:	74 20                	je     0x45777d
45775d:	8b 45 08             	mov    0x8(%ebp),%eax
457760:	c7 45 c8 02 00 00 00 	movl   $0x2,-0x38(%ebp)
457767:	8b 40 f4             	mov    -0xc(%eax),%eax
45776a:	83 c0 f8             	add    $0xfffffff8,%eax
45776d:	50                   	push   %eax
45776e:	8d 45 e8             	lea    -0x18(%ebp),%eax
457771:	50                   	push   %eax
457772:	e8 e5 74 01 00       	call   0x46ec5c
457777:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
45777b:	eb 4e                	jmp    0x4577cb
45777d:	6a 0a                	push   $0xa
45777f:	8d 45 e8             	lea    -0x18(%ebp),%eax
457782:	50                   	push   %eax
457783:	e8 03 44 01 00       	call   0x46bb8b
457788:	68 58 c2 48 00       	push   $0x48c258
45778d:	50                   	push   %eax
45778e:	e8 a5 55 01 00       	call   0x46cd38
457793:	59                   	pop    %ecx
457794:	59                   	pop    %ecx
457795:	8b 4d e8             	mov    -0x18(%ebp),%ecx
457798:	83 c1 f0             	add    $0xfffffff0,%ecx
45779b:	8a d8                	mov    %al,%bl
45779d:	e8 b0 9b fa ff       	call   0x401352
4577a2:	84 db                	test   %bl,%bl
4577a4:	0f 84 ac 04 00 00    	je     0x457c56
4577aa:	8b 45 08             	mov    0x8(%ebp),%eax
4577ad:	c7 45 c8 03 00 00 00 	movl   $0x3,-0x38(%ebp)
4577b4:	8b 40 f4             	mov    -0xc(%eax),%eax
4577b7:	83 c0 f6             	add    $0xfffffff6,%eax
4577ba:	50                   	push   %eax
4577bb:	8d 45 e8             	lea    -0x18(%ebp),%eax
4577be:	50                   	push   %eax
4577bf:	8d 4d 08             	lea    0x8(%ebp),%ecx
4577c2:	e8 95 74 01 00       	call   0x46ec5c
4577c7:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
4577cb:	8d 4d 08             	lea    0x8(%ebp),%ecx
4577ce:	50                   	push   %eax
4577cf:	e8 1f 9b fa ff       	call   0x4012f3
4577d4:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4577d7:	83 c1 f0             	add    $0xfffffff0,%ecx
4577da:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4577de:	e8 6f 9b fa ff       	call   0x401352
4577e3:	57                   	push   %edi
4577e4:	6a 22                	push   $0x22
4577e6:	8d 4d 08             	lea    0x8(%ebp),%ecx
4577e9:	e8 ed 73 01 00       	call   0x46ebdb
4577ee:	8b f0                	mov    %eax,%esi
4577f0:	83 fe ff             	cmp    $0xffffffff,%esi
4577f3:	0f 84 5d 04 00 00    	je     0x457c56
4577f9:	56                   	push   %esi
4577fa:	8d 45 e8             	lea    -0x18(%ebp),%eax
4577fd:	50                   	push   %eax
4577fe:	8d 4d 08             	lea    0x8(%ebp),%ecx
457801:	e8 85 43 01 00       	call   0x46bb8b
457806:	50                   	push   %eax
457807:	8d 4d cc             	lea    -0x34(%ebp),%ecx
45780a:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
45780e:	e8 e0 9a fa ff       	call   0x4012f3
457813:	8b 4d e8             	mov    -0x18(%ebp),%ecx
457816:	83 c1 f0             	add    $0xfffffff0,%ecx
457819:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
45781d:	e8 30 9b fa ff       	call   0x401352
457822:	8b 45 08             	mov    0x8(%ebp),%eax
457825:	8b 40 f4             	mov    -0xc(%eax),%eax
457828:	2b c6                	sub    %esi,%eax
45782a:	50                   	push   %eax
45782b:	8d 45 f0             	lea    -0x10(%ebp),%eax
45782e:	50                   	push   %eax
45782f:	8d 4d 08             	lea    0x8(%ebp),%ecx
457832:	e8 25 74 01 00       	call   0x46ec5c
457837:	50                   	push   %eax
457838:	8d 4d 08             	lea    0x8(%ebp),%ecx
45783b:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
45783f:	e8 af 9a fa ff       	call   0x4012f3
457844:	8b 4d f0             	mov    -0x10(%ebp),%ecx