4013bd:	48                   	dec    %eax
4013be:	8b ce                	mov    %esi,%ecx
4013c0:	8b f0                	mov    %eax,%esi
4013c2:	2b c1                	sub    %ecx,%eax
4013c4:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
4013c9:	74 2f                	je     0x4013fa
4013cb:	01 05 0c ec 42 00    	add    %eax,0x42ec0c
4013d1:	6a 00                	push   $0x0
4013d3:	ff 35 f4 eb 42 00    	push   0x42ebf4
4013d9:	68 30 75 00 00       	push   $0x7530
4013de:	ff 35 0c ec 42 00    	push   0x42ec0c
4013e4:	ff 15 44 81 40 00    	call   *0x408144
4013ea:	50                   	push   %eax
4013eb:	68 02 04 00 00       	push   $0x402
4013f0:	ff 74 24 18          	push   0x18(%esp)
4013f4:	ff 15 00 82 40 00    	call   *0x408200
4013fa:	85 f6                	test   %esi,%esi
4013fc:	7d 92                	jge    0x401390
4013fe:	33 c0                	xor    %eax,%eax
401400:	5e                   	pop    %esi
401401:	c2 08 00             	ret    $0x8
401404:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
401409:	eb f5                	jmp    0x401400
40140b:	8b 44 24 04          	mov    0x4(%esp),%eax
40140f:	8b 0d 34 f4 42 00    	mov    0x42f434,%ecx
401415:	6a 00                	push   $0x0
401417:	ff 74 81 6c          	push   0x6c(%ecx,%eax,4)
40141b:	e8 69 ff ff ff       	call   0x401389
401420:	c2 04 00             	ret    $0x4
401423:	68 30 a8 40 00       	push   $0x40a830
401428:	ff 74 24 08          	push   0x8(%esp)
40142c:	e8 5c 3e 00 00       	call   0x40528d
401431:	c2 04 00             	ret    $0x4
401434:	55                   	push   %ebp
401435:	8b ec                	mov    %esp,%ebp
401437:	81 ec c8 01 00 00    	sub    $0x1c8,%esp
40143d:	a1 28 f4 42 00       	mov    0x42f428,%eax
401442:	53                   	push   %ebx
401443:	56                   	push   %esi
401444:	8b 75 08             	mov    0x8(%ebp),%esi
401447:	57                   	push   %edi
401448:	6a 07                	push   $0x7
40144a:	59                   	pop    %ecx
40144b:	8d 7d c8             	lea    -0x38(%ebp),%edi
40144e:	89 45 f8             	mov    %eax,-0x8(%ebp)
401451:	33 db                	xor    %ebx,%ebx
401453:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
401455:	8b 45 cc             	mov    -0x34(%ebp),%eax
401458:	8b 55 d0             	mov    -0x30(%ebp),%edx
40145b:	8b f0                	mov    %eax,%esi
40145d:	8b fa                	mov    %edx,%edi
40145f:	c1 e6 0a             	shl    $0xa,%esi
401462:	b9 00 00 43 00       	mov    $0x430000,%ecx
401467:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40146a:	c1 e7 0a             	shl    $0xa,%edi
40146d:	03 f1                	add    %ecx,%esi
40146f:	03 f9                	add    %ecx,%edi
401471:	8d 4d cc             	lea    -0x34(%ebp),%ecx
401474:	89 0d 6c b8 40 00    	mov    %ecx,0x40b86c
40147a:	8b 4d c8             	mov    -0x38(%ebp),%ecx
40147d:	83 c1 fe             	add    $0xfffffffe,%ecx
401480:	83 f9 41             	cmp    $0x41,%ecx
401483:	0f 87 2f 15 00 00    	ja     0x4029b8
401489:	ff 24 8d ca 29 40 00 	jmp    *0x4029ca(,%ecx,4)
401490:	53                   	push   %ebx
401491:	50                   	push   %eax
401492:	e8 f6 3d 00 00       	call   0x40528d
401497:	e9 b2 0e 00 00       	jmp    0x40234e
40149c:	ff 05 ec eb 42 00    	incl   0x42ebec
4014a2:	39 5d f8             	cmp    %ebx,-0x8(%ebp)
4014a5:	0f 84 a3 0e 00 00    	je     0x40234e
4014ab:	53                   	push   %ebx
4014ac:	ff 15 78 82 40 00    	call   *0x408278
4014b2:	e9 97 0e 00 00       	jmp    0x40234e
4014b7:	50                   	push   %eax
4014b8:	e8 b0 fe ff ff       	call   0x40136d
4014bd:	48                   	dec    %eax
4014be:	53                   	push   %ebx
4014bf:	50                   	push   %eax
4014c0:	e8 c4 fe ff ff       	call   0x401389
4014c5:	e9 f9 14 00 00       	jmp    0x4029c3
4014ca:	53                   	push   %ebx
4014cb:	50                   	push   %eax
4014cc:	e8 bc 3d 00 00       	call   0x40528d
4014d1:	e9 e2 14 00 00       	jmp    0x4029b8
4014d6:	53                   	push   %ebx
4014d7:	e8 2e 16 00 00       	call   0x402b0a
4014dc:	83 f8 01             	cmp    $0x1,%eax
4014df:	59                   	pop    %ecx
4014e0:	89 55 f0             	mov    %edx,-0x10(%ebp)
4014e3:	7f 03                	jg     0x4014e8
4014e5:	33 c0                	xor    %eax,%eax
4014e7:	40                   	inc    %eax
4014e8:	50                   	push   %eax
4014e9:	ff 15 8c 80 40 00    	call   *0x40808c
4014ef:	e9 c4 14 00 00       	jmp    0x4029b8
4014f4:	ff 75 f8             	push   -0x8(%ebp)
4014f7:	ff 15 44 82 40 00    	call   *0x408244
4014fd:	e9 b6 14 00 00       	jmp    0x4029b8
401502:	c1 e0 02             	shl    $0x2,%eax
401505:	39 5d d4             	cmp    %ebx,-0x2c(%ebp)
401508:	75 26                	jne    0x401530
40150a:	8b 88 c0 f4 42 00    	mov    0x42f4c0(%eax),%ecx
401510:	6a 01                	push   $0x1
401512:	89 88 00 f5 42 00    	mov    %ecx,0x42f500(%eax)
401518:	e8 ed 15 00 00       	call   0x402b0a
40151d:	59                   	pop    %ecx
40151e:	89 55 f0             	mov    %edx,-0x10(%ebp)
401521:	8b 4d cc             	mov    -0x34(%ebp),%ecx
401524:	89 04 8d c0 f4 42 00 	mov    %eax,0x42f4c0(,%ecx,4)
40152b:	e9 88 14 00 00       	jmp    0x4029b8
401530:	8b 88 00 f5 42 00    	mov    0x42f500(%eax),%ecx
401536:	89 88 c0 f4 42 00    	mov    %ecx,0x42f4c0(%eax)
40153c:	e9 77 14 00 00       	jmp    0x4029b8
401541:	8b 45 d4             	mov    -0x2c(%ebp),%eax
401544:	8d 34 85 c0 f4 42 00 	lea    0x42f4c0(,%eax,4),%esi
40154b:	33 c0                	xor    %eax,%eax
40154d:	8b 0e                	mov    (%esi),%ecx
40154f:	3b cb                	cmp    %ebx,%ecx
401551:	0f 94 c0             	sete   %al
401554:	23 4d d8             	and    -0x28(%ebp),%ecx
401557:	8b 44 85 cc          	mov    -0x34(%ebp,%eax,4),%eax
40155b:	89 0e                	mov    %ecx,(%esi)
40155d:	e9 61 14 00 00       	jmp    0x4029c3
401562:	ff 34 95 c0 f4 42 00 	push   0x42f4c0(,%edx,4)
401569:	56                   	push   %esi
40156a:	e9 f1 13 00 00       	jmp    0x402960
40156f:	8b 0d f0 eb 42 00    	mov    0x42ebf0,%ecx
401575:	8b 35 48 82 40 00    	mov    0x408248,%esi
40157b:	3b cb                	cmp    %ebx,%ecx
40157d:	74 07                	je     0x401586
40157f:	52                   	push   %edx
401580:	51                   	push   %ecx
401581:	ff d6                	call   *%esi
401583:	8b 45 cc             	mov    -0x34(%ebp),%eax
401586:	8b 0d 04 ec 42 00    	mov    0x42ec04,%ecx
40158c:	3b cb                	cmp    %ebx,%ecx
40158e:	0f 84 24 14 00 00    	je     0x4029b8
401594:	50                   	push   %eax
401595:	51                   	push   %ecx
401596:	ff d6                	call   *%esi
401598:	e9 1b 14 00 00       	jmp    0x4029b8
40159d:	6a f0                	push   $0xfffffff0
40159f:	e8 88 15 00 00       	call   0x402b2c
4015a4:	ff 75 d0             	push   -0x30(%ebp)
4015a7:	50                   	push   %eax
4015a8:	ff 15 b4 80 40 00    	call   *0x4080b4
4015ae:	85 c0                	test   %eax,%eax
4015b0:	0f 85 02 14 00 00    	jne    0x4029b8
4015b6:	e9 c8 11 00 00       	jmp    0x402783
4015bb:	6a f0                	push   $0xfffffff0
4015bd:	e8 6a 15 00 00       	call   0x402b2c
4015c2:	8b f8                	mov    %eax,%edi
4015c4:	57                   	push   %edi
4015c5:	e8 cd 45 00 00       	call   0x405b97
4015ca:	8b f0                	mov    %eax,%esi
4015cc:	3b f3                	cmp    %ebx,%esi
4015ce:	74 54                	je     0x401624
4015d0:	6a 5c                	push   $0x5c
4015d2:	56                   	push   %esi
4015d3:	e8 51 45 00 00       	call   0x405b29
4015d8:	8b f0                	mov    %eax,%esi
4015da:	8a 06                	mov    (%esi),%al
4015dc:	88 1e                	mov    %bl,(%esi)
4015de:	3a c3                	cmp    %bl,%al
4015e0:	88 45 0b             	mov    %al,0xb(%ebp)
4015e3:	75 16                	jne    0x4015fb
4015e5:	39 5d d4             	cmp    %ebx,-0x2c(%ebp)
4015e8:	74 11                	je     0x4015fb
4015ea:	e8 fe 41 00 00       	call   0x4057ed
4015ef:	85 c0                	test   %eax,%eax
4015f1:	74 08                	je     0x4015fb
4015f3:	57                   	push   %edi
4015f4:	e8 5a 41 00 00       	call   0x405753
4015f9:	eb 06                	jmp    0x401601
4015fb:	57                   	push   %edi
4015fc:	e8 cf 41 00 00       	call   0x4057d0
401601:	3b c3                	cmp    %ebx,%eax
401603:	74 15                	je     0x40161a
401605:	3d b7 00 00 00       	cmp    $0xb7,%eax
40160a:	75 0b                	jne    0x401617
40160c:	57                   	push   %edi
40160d:	ff 15 fc 80 40 00    	call   *0x4080fc
401613:	a8 10                	test   $0x10,%al
401615:	75 03                	jne    0x40161a
401617:	ff 45 fc             	incl   -0x4(%ebp)
40161a:	8a 45 0b             	mov    0xb(%ebp),%al
40161d:	88 06                	mov    %al,(%esi)
40161f:	46                   	inc    %esi
401620:	3a c3                	cmp    %bl,%al
401622:	75 ac                	jne    0x4015d0
401624:	39 5d d0             	cmp    %ebx,-0x30(%ebp)
401627:	74 29                	je     0x401652
401629:	6a e6                	push   $0xffffffe6
40162b:	e8 f3 fd ff ff       	call   0x401423
401630:	57                   	push   %edi
401631:	68 00 58 43 00       	push   $0x435800
401636:	e8 2b 4b 00 00       	call   0x406166
40163b:	57                   	push   %edi
40163c:	ff 15 00 81 40 00    	call   *0x408100
401642:	85 c0                	test   %eax,%eax
401644:	0f 85 6e 13 00 00    	jne    0x4029b8
40164a:	ff 45 fc             	incl   -0x4(%ebp)
40164d:	e9 66 13 00 00       	jmp    0x4029b8
401652:	6a f5                	push   $0xfffffff5
401654:	e9 4b 0c 00 00       	jmp    0x4022a4
401659:	53                   	push   %ebx
40165a:	e8 cd 14 00 00       	call   0x402b2c
40165f:	50                   	push   %eax
401660:	e8 04 4e 00 00       	call   0x406469
401665:	e9 81 06 00 00       	jmp    0x401ceb
40166a:	6a d0                	push   $0xffffffd0
40166c:	e8 bb 14 00 00       	call   0x402b2c
401671:	6a df                	push   $0xffffffdf
401673:	8b f0                	mov    %eax,%esi
401675:	e8 b2 14 00 00       	call   0x402b2c
40167a:	6a 13                	push   $0x13
40167c:	8b f8                	mov    %eax,%edi
40167e:	e8 a9 14 00 00       	call   0x402b2c
401683:	57                   	push   %edi
401684:	56                   	push   %esi
401685:	ff 15 04 81 40 00    	call   *0x408104
40168b:	85 c0                	test   %eax,%eax
40168d:	74 07                	je     0x401696
40168f:	6a e3                	push   $0xffffffe3
401691:	e9 0e 0c 00 00       	jmp    0x4022a4
401696:	39 5d d4             	cmp    %ebx,-0x2c(%ebp)
401699:	0f 84 e4 10 00 00    	je     0x402783
40169f:	56                   	push   %esi
4016a0:	e8 c4 4d 00 00       	call   0x406469
4016a5:	85 c0                	test   %eax,%eax
4016a7:	0f 84 d6 10 00 00    	je     0x402783
4016ad:	57                   	push   %edi
4016ae:	56                   	push   %esi
4016af:	e8 91 48 00 00       	call   0x405f45
4016b4:	6a e4                	push   $0xffffffe4
4016b6:	e9 e9 0b 00 00       	jmp    0x4022a4
4016bb:	53                   	push   %ebx
4016bc:	e8 6b 14 00 00       	call   0x402b2c
4016c1:	8b f0                	mov    %eax,%esi
4016c3:	8d 45 08             	lea    0x8(%ebp),%eax
4016c6:	50                   	push   %eax
4016c7:	57                   	push   %edi
4016c8:	68 00 04 00 00       	push   $0x400
4016cd:	56                   	push   %esi
4016ce:	ff 15 08 81 40 00    	call   *0x408108
4016d4:	85 c0                	test   %eax,%eax
4016d6:	74 23                	je     0x4016fb
4016d8:	8b 45 08             	mov    0x8(%ebp),%eax
4016db:	3b c6                	cmp    %esi,%eax
4016dd:	76 25                	jbe    0x401704
4016df:	38 18                	cmp    %bl,(%eax)
4016e1:	74 21                	je     0x401704
4016e3:	56                   	push   %esi
4016e4:	e8 80 4d 00 00       	call   0x406469
4016e9:	3b c3                	cmp    %ebx,%eax
4016eb:	74 0e                	je     0x4016fb
4016ed:	83 c0 2c             	add    $0x2c,%eax
4016f0:	50                   	push   %eax
4016f1:	ff 75 08             	push   0x8(%ebp)
4016f4:	e8 6d 4a 00 00       	call   0x406166
4016f9:	eb 09                	jmp    0x401704
4016fb:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
401702:	88 1f                	mov    %bl,(%edi)
401704:	39 5d d4             	cmp    %ebx,-0x2c(%ebp)
401707:	0f 85 ab 12 00 00    	jne    0x4029b8
40170d:	68 00 04 00 00       	push   $0x400
401712:	57                   	push   %edi
401713:	57                   	push   %edi
401714:	ff 15 0c 81 40 00    	call   *0x40810c
40171a:	e9 99 12 00 00       	jmp    0x4029b8
40171f:	6a ff                	push   $0xffffffff
401721:	e8 06 14 00 00       	call   0x402b2c
401726:	8d 4d 08             	lea    0x8(%ebp),%ecx
401729:	51                   	push   %ecx
40172a:	56                   	push   %esi
40172b:	68 00 04 00 00       	push   $0x400
401730:	53                   	push   %ebx
401731:	50                   	push   %eax
401732:	53                   	push   %ebx
401733:	ff 15 10 81 40 00    	call   *0x408110
401739:	85 c0                	test   %eax,%eax
40173b:	0f 85 77 12 00 00    	jne    0x4029b8
401741:	e9 11 10 00 00       	jmp    0x402757
401746:	6a ef                	push   $0xffffffef
401748:	e8 df 13 00 00       	call   0x402b2c
40174d:	50                   	push   %eax
40174e:	56                   	push   %esi
40174f:	e8 da 45 00 00       	call   0x405d2e
401754:	e9 55 fe ff ff       	jmp    0x4015ae
401759:	6a 31                	push   $0x31
40175b:	e8 cc 13 00 00       	call   0x402b2c
401760:	8b f0                	mov    %eax,%esi
401762:	8b 45 cc             	mov    -0x34(%ebp),%eax
401765:	83 e0 07             	and    $0x7,%eax
401768:	56                   	push   %esi
401769:	89 75 f8             	mov    %esi,-0x8(%ebp)
40176c:	89 45 08             	mov    %eax,0x8(%ebp)
40176f:	e8 f7 43 00 00       	call   0x405b6b
401774:	56                   	push   %esi
401775:	be 30 a4 40 00       	mov    $0x40a430,%esi
40177a:	85 c0                	test   %eax,%eax
40177c:	74 08                	je     0x401786
40177e:	56                   	push   %esi
40177f:	e8 e2 49 00 00       	call   0x406166
401784:	eb 17                	jmp    0x40179d
401786:	68 00 58 43 00       	push   $0x435800
40178b:	56                   	push   %esi
40178c:	e8 d5 49 00 00       	call   0x406166
401791:	50                   	push   %eax
401792:	e8 67 43 00 00       	call   0x405afe
401797:	50                   	push   %eax
401798:	e8 e5 49 00 00       	call   0x406182
40179d:	56                   	push   %esi
40179e:	e8 2d 4c 00 00       	call   0x4063d0
4017a3:	bf 30 ac 40 00       	mov    $0x40ac30,%edi
4017a8:	83 7d 08 03          	cmpl   $0x3,0x8(%ebp)
4017ac:	7c 31                	jl     0x4017df
4017ae:	56                   	push   %esi
4017af:	e8 b5 4c 00 00       	call   0x406469
4017b4:	33 c9                	xor    %ecx,%ecx
4017b6:	3b c3                	cmp    %ebx,%eax
4017b8:	74 10                	je     0x4017ca
4017ba:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4017bd:	83 c0 14             	add    $0x14,%eax
4017c0:	51                   	push   %ecx
4017c1:	50                   	push   %eax
4017c2:	ff 15 f4 80 40 00    	call   *0x4080f4
4017c8:	8b c8                	mov    %eax,%ecx
4017ca:	8b 45 08             	mov    0x8(%ebp),%eax
4017cd:	83 c0 fd             	add    $0xfffffffd,%eax
4017d0:	0d 00 00 00 80       	or     $0x80000000,%eax
4017d5:	23 c1                	and    %ecx,%eax
4017d7:	f7 d8                	neg    %eax
4017d9:	1b c0                	sbb    %eax,%eax
4017db:	40                   	inc    %eax
4017dc:	89 45 08             	mov    %eax,0x8(%ebp)
4017df:	39 5d 08             	cmp    %ebx,0x8(%ebp)
4017e2:	75 06                	jne    0x4017ea
4017e4:	56                   	push   %esi
4017e5:	e8 f0 44 00 00       	call   0x405cda
4017ea:	33 c0                	xor    %eax,%eax
4017ec:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
4017f0:	0f 95 c0             	setne  %al
4017f3:	40                   	inc    %eax
4017f4:	50                   	push   %eax
4017f5:	68 00 00 00 40       	push   $0x40000000
4017fa:	56                   	push   %esi
4017fb:	e8 ff 44 00 00       	call   0x405cff
401800:	83 f8 ff             	cmp    $0xffffffff,%eax