40153a:	e8 94 e1 03 00       	call   0x43f6d3
40153f:	59                   	pop    %ecx
401540:	c3                   	ret
401541:	cc                   	int3
401542:	cc                   	int3
401543:	cc                   	int3
401544:	cc                   	int3
401545:	cc                   	int3
401546:	cc                   	int3
401547:	cc                   	int3
401548:	cc                   	int3
401549:	cc                   	int3
40154a:	cc                   	int3
40154b:	cc                   	int3
40154c:	cc                   	int3
40154d:	cc                   	int3
40154e:	cc                   	int3
40154f:	cc                   	int3
401550:	56                   	push   %esi
401551:	8b f1                	mov    %ecx,%esi
401553:	33 c0                	xor    %eax,%eax
401555:	40                   	inc    %eax
401556:	8d 4e 0c             	lea    0xc(%esi),%ecx
401559:	89 46 04             	mov    %eax,0x4(%esi)
40155c:	89 46 08             	mov    %eax,0x8(%esi)
40155f:	c7 06 30 62 49 00    	movl   $0x496230,(%esi)
401565:	e8 f8 ab 00 00       	call   0x40c162
40156a:	8b c6                	mov    %esi,%eax
40156c:	5e                   	pop    %esi
40156d:	c3                   	ret
40156e:	56                   	push   %esi
40156f:	8b f1                	mov    %ecx,%esi
401571:	33 c0                	xor    %eax,%eax
401573:	40                   	inc    %eax
401574:	8d 4e 0c             	lea    0xc(%esi),%ecx
401577:	89 46 04             	mov    %eax,0x4(%esi)
40157a:	89 46 08             	mov    %eax,0x8(%esi)
40157d:	c7 06 a4 61 49 00    	movl   $0x4961a4,(%esi)
401583:	e8 3f ac 00 00       	call   0x40c1c7
401588:	8b c6                	mov    %esi,%eax
40158a:	5e                   	pop    %esi
40158b:	c3                   	ret
40158c:	56                   	push   %esi
40158d:	8b f1                	mov    %ecx,%esi
40158f:	33 c0                	xor    %eax,%eax
401591:	40                   	inc    %eax
401592:	8d 4e 10             	lea    0x10(%esi),%ecx
401595:	89 46 04             	mov    %eax,0x4(%esi)
401598:	89 46 08             	mov    %eax,0x8(%esi)
40159b:	c7 06 e0 61 49 00    	movl   $0x4961e0,(%esi)
4015a1:	e8 92 ac 00 00       	call   0x40c238
4015a6:	8b c6                	mov    %esi,%eax
4015a8:	5e                   	pop    %esi
4015a9:	c3                   	ret
4015aa:	56                   	push   %esi
4015ab:	8b f1                	mov    %ecx,%esi
4015ad:	33 c0                	xor    %eax,%eax
4015af:	40                   	inc    %eax
4015b0:	8d 4e 0c             	lea    0xc(%esi),%ecx
4015b3:	89 46 04             	mov    %eax,0x4(%esi)
4015b6:	89 46 08             	mov    %eax,0x8(%esi)
4015b9:	c7 06 08 62 49 00    	movl   $0x496208,(%esi)
4015bf:	e8 c7 ae 00 00       	call   0x40c48b
4015c4:	8b c6                	mov    %esi,%eax
4015c6:	5e                   	pop    %esi
4015c7:	c3                   	ret
4015c8:	56                   	push   %esi
4015c9:	8b f1                	mov    %ecx,%esi
4015cb:	33 c0                	xor    %eax,%eax
4015cd:	40                   	inc    %eax
4015ce:	8d 4e 0c             	lea    0xc(%esi),%ecx
4015d1:	89 46 04             	mov    %eax,0x4(%esi)
4015d4:	89 46 08             	mov    %eax,0x8(%esi)
4015d7:	c7 06 b8 61 49 00    	movl   $0x4961b8,(%esi)
4015dd:	e8 fd ae 00 00       	call   0x40c4df
4015e2:	8b c6                	mov    %esi,%eax
4015e4:	5e                   	pop    %esi
4015e5:	c3                   	ret
4015e6:	56                   	push   %esi
4015e7:	8b f1                	mov    %ecx,%esi
4015e9:	33 c0                	xor    %eax,%eax
4015eb:	40                   	inc    %eax
4015ec:	8d 4e 0c             	lea    0xc(%esi),%ecx
4015ef:	89 46 04             	mov    %eax,0x4(%esi)
4015f2:	89 46 08             	mov    %eax,0x8(%esi)
4015f5:	c7 06 f4 61 49 00    	movl   $0x4961f4,(%esi)
4015fb:	e8 5d af 00 00       	call   0x40c55d
401600:	8b c6                	mov    %esi,%eax
401602:	5e                   	pop    %esi
401603:	c3                   	ret
401604:	56                   	push   %esi
401605:	8b f1                	mov    %ecx,%esi
401607:	33 c0                	xor    %eax,%eax
401609:	40                   	inc    %eax
40160a:	8d 4e 0c             	lea    0xc(%esi),%ecx
40160d:	89 46 04             	mov    %eax,0x4(%esi)
401610:	89 46 08             	mov    %eax,0x8(%esi)
401613:	c7 06 1c 62 49 00    	movl   $0x49621c,(%esi)
401619:	e8 b0 af 00 00       	call   0x40c5ce
40161e:	8b c6                	mov    %esi,%eax
401620:	5e                   	pop    %esi
401621:	c3                   	ret
401622:	56                   	push   %esi
401623:	8b f1                	mov    %ecx,%esi
401625:	33 c0                	xor    %eax,%eax
401627:	40                   	inc    %eax
401628:	8d 4e 0c             	lea    0xc(%esi),%ecx
40162b:	89 46 04             	mov    %eax,0x4(%esi)
40162e:	89 46 08             	mov    %eax,0x8(%esi)
401631:	c7 06 cc 61 49 00    	movl   $0x4961cc,(%esi)
401637:	e8 e6 af 00 00       	call   0x40c622
40163c:	8b c6                	mov    %esi,%eax
40163e:	5e                   	pop    %esi
40163f:	c3                   	ret
401640:	56                   	push   %esi
401641:	8b f1                	mov    %ecx,%esi
401643:	33 c0                	xor    %eax,%eax
401645:	40                   	inc    %eax
401646:	8d 4e 0c             	lea    0xc(%esi),%ecx
401649:	89 46 04             	mov    %eax,0x4(%esi)
40164c:	89 46 08             	mov    %eax,0x8(%esi)
40164f:	c7 06 78 62 49 00    	movl   $0x496278,(%esi)
401655:	e8 40 aa 00 00       	call   0x40c09a
40165a:	8b c6                	mov    %esi,%eax
40165c:	5e                   	pop    %esi
40165d:	c3                   	ret
40165e:	55                   	push   %ebp
40165f:	8b ec                	mov    %esp,%ebp
401661:	56                   	push   %esi
401662:	8b f1                	mov    %ecx,%esi
401664:	33 c0                	xor    %eax,%eax
401666:	83 66 10 00          	andl   $0x0,0x10(%esi)
40166a:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
401671:	66 89 06             	mov    %ax,(%esi)
401674:	8b 45 0c             	mov    0xc(%ebp),%eax
401677:	39 45 08             	cmp    %eax,0x8(%ebp)
40167a:	74 0e                	je     0x40168a
40167c:	2b 45 08             	sub    0x8(%ebp),%eax
40167f:	d1 f8                	sar    $1,%eax
401681:	50                   	push   %eax
401682:	ff 75 08             	push   0x8(%ebp)
401685:	e8 19 e2 01 00       	call   0x41f8a3
40168a:	8b c6                	mov    %esi,%eax
40168c:	5e                   	pop    %esi
40168d:	5d                   	pop    %ebp
40168e:	c2 0c 00             	ret    $0xc
401691:	6a 08                	push   $0x8
401693:	b8 61 9c 48 00       	mov    $0x489c61,%eax
401698:	e8 ad e3 03 00       	call   0x43fa4a
40169d:	8b f1                	mov    %ecx,%esi
40169f:	89 75 f0             	mov    %esi,-0x10(%ebp)
4016a2:	83 26 00             	andl   $0x0,(%esi)
4016a5:	8d 4e 04             	lea    0x4(%esi),%ecx
4016a8:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4016ab:	e8 42 97 00 00       	call   0x40adf2
4016b0:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4016b7:	8b 4d 08             	mov    0x8(%ebp),%ecx
4016ba:	8b d1                	mov    %ecx,%edx
4016bc:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
4016c0:	72 02                	jb     0x4016c4
4016c2:	8b 11                	mov    (%ecx),%edx
4016c4:	8b 41 10             	mov    0x10(%ecx),%eax
4016c7:	8d 04 42             	lea    (%edx,%eax,2),%eax
4016ca:	72 02                	jb     0x4016ce
4016cc:	8b 09                	mov    (%ecx),%ecx
4016ce:	ff 75 08             	push   0x8(%ebp)
4016d1:	ff 75 0c             	push   0xc(%ebp)
4016d4:	50                   	push   %eax
4016d5:	51                   	push   %ecx
4016d6:	8b ce                	mov    %esi,%ecx
4016d8:	e8 c9 41 00 00       	call   0x4058a6
4016dd:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4016e1:	8b c6                	mov    %esi,%eax
4016e3:	e8 2b e3 03 00       	call   0x43fa13
4016e8:	c2 08 00             	ret    $0x8
4016eb:	55                   	push   %ebp
4016ec:	8b ec                	mov    %esp,%ebp
4016ee:	8b 45 0c             	mov    0xc(%ebp),%eax
4016f1:	56                   	push   %esi
4016f2:	8b f1                	mov    %ecx,%esi
4016f4:	83 66 10 00          	andl   $0x0,0x10(%esi)
4016f8:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
4016ff:	c6 06 00             	movb   $0x0,(%esi)
401702:	39 45 08             	cmp    %eax,0x8(%ebp)
401705:	74 0c                	je     0x401713
401707:	2b 45 08             	sub    0x8(%ebp),%eax
40170a:	50                   	push   %eax
40170b:	ff 75 08             	push   0x8(%ebp)
40170e:	e8 97 e0 01 00       	call   0x41f7aa
401713:	8b c6                	mov    %esi,%eax
401715:	5e                   	pop    %esi
401716:	5d                   	pop    %ebp
401717:	c2 0c 00             	ret    $0xc
40171a:	55                   	push   %ebp
40171b:	8b ec                	mov    %esp,%ebp
40171d:	56                   	push   %esi
40171e:	8b f1                	mov    %ecx,%esi
401720:	33 c0                	xor    %eax,%eax
401722:	83 66 10 00          	andl   $0x0,0x10(%esi)
401726:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
40172d:	66 89 06             	mov    %ax,(%esi)
401730:	8b 45 0c             	mov    0xc(%ebp),%eax
401733:	39 45 08             	cmp    %eax,0x8(%ebp)
401736:	74 0e                	je     0x401746
401738:	2b 45 08             	sub    0x8(%ebp),%eax
40173b:	d1 f8                	sar    $1,%eax
40173d:	50                   	push   %eax
40173e:	ff 75 08             	push   0x8(%ebp)
401741:	e8 5d e1 01 00       	call   0x41f8a3
401746:	8b c6                	mov    %esi,%eax
401748:	5e                   	pop    %esi
401749:	5d                   	pop    %ebp
40174a:	c2 0c 00             	ret    $0xc
40174d:	55                   	push   %ebp
40174e:	8b ec                	mov    %esp,%ebp
401750:	8b 45 08             	mov    0x8(%ebp),%eax
401753:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
401757:	72 02                	jb     0x40175b
401759:	8b 00                	mov    (%eax),%eax
40175b:	89 01                	mov    %eax,(%ecx)
40175d:	8b c1                	mov    %ecx,%eax
40175f:	5d                   	pop    %ebp
401760:	c2 04 00             	ret    $0x4
401763:	55                   	push   %ebp
401764:	8b ec                	mov    %esp,%ebp
401766:	8b 45 08             	mov    0x8(%ebp),%eax
401769:	8b d0                	mov    %eax,%edx
40176b:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
40176f:	72 02                	jb     0x401773
401771:	8b 10                	mov    (%eax),%edx
401773:	89 11                	mov    %edx,(%ecx)
401775:	8b 40 10             	mov    0x10(%eax),%eax
401778:	89 41 04             	mov    %eax,0x4(%ecx)
40177b:	8b c1                	mov    %ecx,%eax
40177d:	5d                   	pop    %ebp
40177e:	c2 04 00             	ret    $0x4
401781:	55                   	push   %ebp
401782:	8b ec                	mov    %esp,%ebp
401784:	8b 45 08             	mov    0x8(%ebp),%eax
401787:	8b d0                	mov    %eax,%edx
401789:	83 78 14 08          	cmpl   $0x8,0x14(%eax)
40178d:	72 02                	jb     0x401791
40178f:	8b 10                	mov    (%eax),%edx
401791:	89 11                	mov    %edx,(%ecx)
401793:	8b 40 10             	mov    0x10(%eax),%eax
401796:	89 41 04             	mov    %eax,0x4(%ecx)
401799:	8b c1                	mov    %ecx,%eax
40179b:	5d                   	pop    %ebp
40179c:	c2 04 00             	ret    $0x4
40179f:	6a 08                	push   $0x8
4017a1:	b8 9c 9c 48 00       	mov    $0x489c9c,%eax
4017a6:	e8 9f e2 03 00       	call   0x43fa4a
4017ab:	8b f1                	mov    %ecx,%esi
4017ad:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4017b4:	33 db                	xor    %ebx,%ebx
4017b6:	88 5d f0             	mov    %bl,-0x10(%ebp)
4017b9:	8d 45 70             	lea    0x70(%ebp),%eax
4017bc:	ff 75 f0             	push   -0x10(%ebp)
4017bf:	89 1e                	mov    %ebx,(%esi)
4017c1:	83 ec 68             	sub    $0x68,%esp
4017c4:	89 5e 04             	mov    %ebx,0x4(%esi)
4017c7:	8b cc                	mov    %esp,%ecx
4017c9:	89 65 f0             	mov    %esp,-0x10(%ebp)
4017cc:	89 5e 08             	mov    %ebx,0x8(%esi)
4017cf:	50                   	push   %eax
4017d0:	e8 bf a0 00 00       	call   0x40b894
4017d5:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
4017d9:	83 ec 68             	sub    $0x68,%esp
4017dc:	8d 45 08             	lea    0x8(%ebp),%eax
4017df:	89 65 ec             	mov    %esp,-0x14(%ebp)
4017e2:	8b cc                	mov    %esp,%ecx
4017e4:	50                   	push   %eax
4017e5:	e8 aa a0 00 00       	call   0x40b894
4017ea:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
4017ee:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4017f2:	8b ce                	mov    %esi,%ecx
4017f4:	e8 a4 34 00 00       	call   0x404c9d
4017f9:	88 5d fc             	mov    %bl,-0x4(%ebp)
4017fc:	8d 4d 08             	lea    0x8(%ebp),%ecx
4017ff:	e8 c9 cb 00 00       	call   0x40e3cd
401804:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
401808:	8d 4d 70             	lea    0x70(%ebp),%ecx
40180b:	e8 bd cb 00 00       	call   0x40e3cd
401810:	8b c6                	mov    %esi,%eax
401812:	e8 fc e1 03 00       	call   0x43fa13
401817:	c2 d4 00             	ret    $0xd4
40181a:	55                   	push   %ebp
40181b:	8b ec                	mov    %esp,%ebp
40181d:	83 ec 0c             	sub    $0xc,%esp
401820:	56                   	push   %esi
401821:	ff 75 08             	push   0x8(%ebp)
401824:	8b f1                	mov    %ecx,%esi
401826:	83 26 00             	andl   $0x0,(%esi)
401829:	83 66 04 00          	andl   $0x0,0x4(%esi)
40182d:	e8 99 18 00 00       	call   0x4030cb
401832:	84 c0                	test   %al,%al
401834:	74 07                	je     0x40183d
401836:	8b c6                	mov    %esi,%eax
401838:	5e                   	pop    %esi
401839:	c9                   	leave
40183a:	c2 04 00             	ret    $0x4
40183d:	8d 4d f4             	lea    -0xc(%ebp),%ecx
401840:	e8 38 b5 00 00       	call   0x40cd7d
401845:	68 98 16 4b 00       	push   $0x4b1698
40184a:	8d 45 f4             	lea    -0xc(%ebp),%eax
40184d:	50                   	push   %eax
40184e:	e8 6f 29 04 00       	call   0x4441c2
401853:	cc                   	int3
401854:	55                   	push   %ebp
401855:	8b ec                	mov    %esp,%ebp
401857:	6a ff                	push   $0xffffffff
401859:	68 bf 9c 48 00       	push   $0x489cbf
40185e:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
401864:	50                   	push   %eax
401865:	51                   	push   %ecx
401866:	51                   	push   %ecx
401867:	56                   	push   %esi
401868:	a1 94 80 4b 00       	mov    0x4b8094,%eax
40186d:	33 c5                	xor    %ebp,%eax
40186f:	50                   	push   %eax
401870:	8d 45 f4             	lea    -0xc(%ebp),%eax
401873:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
401879:	8b f1                	mov    %ecx,%esi
40187b:	ff 75 08             	push   0x8(%ebp)
40187e:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
401882:	8d 4d ec             	lea    -0x14(%ebp),%ecx
401885:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
401889:	e8 f8 52 00 00       	call   0x406b86
40188e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
401892:	8b 06                	mov    (%esi),%eax
401894:	8b 4d ec             	mov    -0x14(%ebp),%ecx
401897:	89 0e                	mov    %ecx,(%esi)
401899:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40189c:	89 45 ec             	mov    %eax,-0x14(%ebp)
40189f:	8b 46 04             	mov    0x4(%esi),%eax
4018a2:	89 45 f0             	mov    %eax,-0x10(%ebp)
4018a5:	89 4e 04             	mov    %ecx,0x4(%esi)
4018a8:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4018ac:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4018af:	e8 d3 64 01 00       	call   0x417d87
4018b4:	8b c6                	mov    %esi,%eax
4018b6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4018b9:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4018c0:	59                   	pop    %ecx
4018c1:	5e                   	pop    %esi
4018c2:	c9                   	leave
4018c3:	c2 04 00             	ret    $0x4
4018c6:	6a 20                	push   $0x20
4018c8:	b8 e2 9c 48 00       	mov    $0x489ce2,%eax
4018cd:	e8 e3 e1 03 00       	call   0x43fab5