417398:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41739b:	8b 55 0c             	mov    0xc(%ebp),%edx
41739e:	33 ff                	xor    %edi,%edi
4173a0:	8b 45 10             	mov    0x10(%ebp),%eax
4173a3:	85 c0                	test   %eax,%eax
4173a5:	74 04                	je     0x4173ab
4173a7:	2b d3                	sub    %ebx,%edx
4173a9:	89 10                	mov    %edx,(%eax)
4173ab:	8b 46 28             	mov    0x28(%esi),%eax
4173ae:	39 b8 80 00 00 00    	cmp    %edi,0x80(%eax)
4173b4:	8b c1                	mov    %ecx,%eax
4173b6:	7d 0e                	jge    0x4173c6
4173b8:	5f                   	pop    %edi
4173b9:	5e                   	pop    %esi
4173ba:	5b                   	pop    %ebx
4173bb:	c9                   	leave
4173bc:	c2 0c 00             	ret    $0xc
4173bf:	8b f8                	mov    %eax,%edi
4173c1:	e9 78 ff ff ff       	jmp    0x41733e
4173c6:	b8 b4 0d 04 80       	mov    $0x80040db4,%eax
4173cb:	eb eb                	jmp    0x4173b8
4173cd:	68 48 01 00 00       	push   $0x148
4173d2:	b8 7f ec 41 00       	mov    $0x41ec7f,%eax
4173d7:	e8 65 3a 00 00       	call   0x41ae41
4173dc:	51                   	push   %ecx
4173dd:	51                   	push   %ecx
4173de:	51                   	push   %ecx
4173df:	ff 35 10 8a 43 00    	push   0x438a10
4173e5:	8d 8d b0 fe ff ff    	lea    -0x150(%ebp),%ecx
4173eb:	be 05 40 00 80       	mov    $0x80004005,%esi
4173f0:	e8 18 71 ff ff       	call   0x40e50d
4173f5:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4173f9:	8d 85 b0 fe ff ff    	lea    -0x150(%ebp),%eax
4173ff:	68 19 00 02 00       	push   $0x20019
417404:	68 e0 41 40 00       	push   $0x4041e0
417409:	50                   	push   %eax
41740a:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
417410:	e8 49 79 ff ff       	call   0x40ed5e
417415:	8d 85 ac fe ff ff    	lea    -0x154(%ebp),%eax
41741b:	50                   	push   %eax
41741c:	68 b0 41 40 00       	push   $0x4041b0
417421:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
417427:	e8 24 06 00 00       	call   0x417a50
41742c:	85 c0                	test   %eax,%eax
41742e:	74 0e                	je     0x41743e
417430:	8b 8d ac fe ff ff    	mov    -0x154(%ebp),%ecx
417436:	33 f6                	xor    %esi,%esi
417438:	89 0d 0c 8a 43 00    	mov    %ecx,0x438a0c
41743e:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
417444:	e8 8c c0 ff ff       	call   0x4134d5
417449:	8d 8d b0 fe ff ff    	lea    -0x150(%ebp),%ecx
41744f:	e8 81 c0 ff ff       	call   0x4134d5
417454:	8b c6                	mov    %esi,%eax
417456:	e8 95 39 00 00       	call   0x41adf0
41745b:	c3                   	ret
41745c:	68 44 01 00 00       	push   $0x144
417461:	b8 b2 ec 41 00       	mov    $0x41ecb2,%eax
417466:	e8 d6 39 00 00       	call   0x41ae41
41746b:	51                   	push   %ecx
41746c:	51                   	push   %ecx
41746d:	51                   	push   %ecx
41746e:	ff 35 10 8a 43 00    	push   0x438a10
417474:	8d 8d b0 fe ff ff    	lea    -0x150(%ebp),%ecx
41747a:	e8 8e 70 ff ff       	call   0x40e50d
41747f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
417483:	8d 85 b0 fe ff ff    	lea    -0x150(%ebp),%eax
417489:	68 19 00 02 00       	push   $0x20019
41748e:	68 e0 41 40 00       	push   $0x4041e0
417493:	50                   	push   %eax
417494:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
41749a:	e8 bf 78 ff ff       	call   0x40ed5e
41749f:	68 08 8a 43 00       	push   $0x438a08
4174a4:	68 04 42 40 00       	push   $0x404204
4174a9:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
4174af:	e8 9c 05 00 00       	call   0x417a50
4174b4:	f7 d8                	neg    %eax
4174b6:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
4174bc:	1b f6                	sbb    %esi,%esi
4174be:	f7 d6                	not    %esi
4174c0:	81 e6 05 40 00 80    	and    $0x80004005,%esi
4174c6:	e8 0a c0 ff ff       	call   0x4134d5
4174cb:	8d 8d b0 fe ff ff    	lea    -0x150(%ebp),%ecx
4174d1:	e8 ff bf ff ff       	call   0x4134d5
4174d6:	8b c6                	mov    %esi,%eax
4174d8:	e8 13 39 00 00       	call   0x41adf0
4174dd:	c3                   	ret
4174de:	68 58 01 00 00       	push   $0x158
4174e3:	b8 f0 ec 41 00       	mov    $0x41ecf0,%eax
4174e8:	e8 54 39 00 00       	call   0x41ae41
4174ed:	51                   	push   %ecx
4174ee:	51                   	push   %ecx
4174ef:	51                   	push   %ecx
4174f0:	ff 35 10 8a 43 00    	push   0x438a10
4174f6:	8d 8d b0 fe ff ff    	lea    -0x150(%ebp),%ecx
4174fc:	e8 0c 70 ff ff       	call   0x40e50d
417501:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
417505:	8d 85 b0 fe ff ff    	lea    -0x150(%ebp),%eax
41750b:	68 19 00 02 00       	push   $0x20019
417510:	68 e0 41 40 00       	push   $0x4041e0
417515:	50                   	push   %eax
417516:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
41751c:	e8 3d 78 ff ff       	call   0x40ed5e
417521:	68 f0 85 43 00       	push   $0x4385f0
417526:	68 20 42 40 00       	push   $0x404220
41752b:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
417531:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
417535:	e8 16 05 00 00       	call   0x417a50
41753a:	85 c0                	test   %eax,%eax
41753c:	75 0c                	jne    0x41754a
41753e:	39 05 bc 8e 43 00    	cmp    %eax,0x438ebc
417544:	0f 85 4d b5 00 00    	jne    0x422a97
41754a:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
417550:	e8 80 bf ff ff       	call   0x4134d5
417555:	8d 8d b0 fe ff ff    	lea    -0x150(%ebp),%ecx
41755b:	e8 75 bf ff ff       	call   0x4134d5
417560:	e8 8b 38 00 00       	call   0x41adf0
417565:	c3                   	ret
417566:	8b ff                	mov    %edi,%edi
417568:	55                   	push   %ebp
417569:	8b ec                	mov    %esp,%ebp
41756b:	83 ec 34             	sub    $0x34,%esp
41756e:	a1 08 85 43 00       	mov    0x438508,%eax
417573:	33 c5                	xor    %ebp,%eax
417575:	89 45 fc             	mov    %eax,-0x4(%ebp)
417578:	53                   	push   %ebx
417579:	8b 5d 08             	mov    0x8(%ebp),%ebx
41757c:	8b c1                	mov    %ecx,%eax
41757e:	56                   	push   %esi
41757f:	57                   	push   %edi
417580:	8b 7d 0c             	mov    0xc(%ebp),%edi
417583:	89 55 ec             	mov    %edx,-0x14(%ebp)
417586:	8b 55 10             	mov    0x10(%ebp),%edx
417589:	89 45 e8             	mov    %eax,-0x18(%ebp)
41758c:	85 ff                	test   %edi,%edi
41758e:	75 43                	jne    0x4175d3
417590:	ff 75 ec             	push   -0x14(%ebp)
417593:	8b 32                	mov    (%edx),%esi
417595:	b8 cc 3f 40 00       	mov    $0x403fcc,%eax
41759a:	50                   	push   %eax
41759b:	50                   	push   %eax
41759c:	33 c0                	xor    %eax,%eax
41759e:	50                   	push   %eax
41759f:	50                   	push   %eax
4175a0:	6a 14                	push   $0x14
4175a2:	59                   	pop    %ecx
4175a3:	51                   	push   %ecx
4175a4:	51                   	push   %ecx
4175a5:	8b 4e 0c             	mov    0xc(%esi),%ecx
4175a8:	50                   	push   %eax
4175a9:	ff 75 e8             	push   -0x18(%ebp)
4175ac:	52                   	push   %edx
4175ad:	ff 15 20 a5 43 00    	call   *0x43a520
4175b3:	ff 56 0c             	call   *0xc(%esi)
4175b6:	8b f0                	mov    %eax,%esi
4175b8:	85 f6                	test   %esi,%esi
4175ba:	0f 88 77 b5 00 00    	js     0x422b37
4175c0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4175c3:	8b c6                	mov    %esi,%eax
4175c5:	5f                   	pop    %edi
4175c6:	5e                   	pop    %esi
4175c7:	33 cd                	xor    %ebp,%ecx
4175c9:	5b                   	pop    %ebx
4175ca:	e8 f1 31 00 00       	call   0x41a7c0
4175cf:	c9                   	leave
4175d0:	c2 0c 00             	ret    $0xc
4175d3:	8b 37                	mov    (%edi),%esi
4175d5:	89 45 d0             	mov    %eax,-0x30(%ebp)
4175d8:	33 c0                	xor    %eax,%eax
4175da:	6a 14                	push   $0x14
4175dc:	59                   	pop    %ecx
4175dd:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4175e0:	89 45 d8             	mov    %eax,-0x28(%ebp)
4175e3:	89 45 dc             	mov    %eax,-0x24(%ebp)
4175e6:	b8 cc 3f 40 00       	mov    $0x403fcc,%eax
4175eb:	89 45 e0             	mov    %eax,-0x20(%ebp)
4175ee:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4175f1:	8d 45 cc             	lea    -0x34(%ebp),%eax
4175f4:	50                   	push   %eax
4175f5:	ff 75 ec             	push   -0x14(%ebp)
4175f8:	8d 45 f0             	lea    -0x10(%ebp),%eax
4175fb:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4175fe:	50                   	push   %eax
4175ff:	89 4d f8             	mov    %ecx,-0x8(%ebp)
417602:	8b 4e 0c             	mov    0xc(%esi),%ecx
417605:	57                   	push   %edi
417606:	c7 45 f0 0c 00 00 00 	movl   $0xc,-0x10(%ebp)
41760d:	c7 45 cc 1c 00 00 00 	movl   $0x1c,-0x34(%ebp)
417614:	ff 15 20 a5 43 00    	call   *0x43a520
41761a:	ff 56 0c             	call   *0xc(%esi)
41761d:	eb 97                	jmp    0x4175b6
41761f:	6a 08                	push   $0x8
417621:	b8 20 ed 41 00       	mov    $0x41ed20,%eax
417626:	e8 e3 37 00 00       	call   0x41ae0e
41762b:	8b c1                	mov    %ecx,%eax
41762d:	89 45 f0             	mov    %eax,-0x10(%ebp)
417630:	33 ff                	xor    %edi,%edi
417632:	89 38                	mov    %edi,(%eax)
417634:	89 7d ec             	mov    %edi,-0x14(%ebp)
417637:	8a 5d 0c             	mov    0xc(%ebp),%bl
41763a:	53                   	push   %ebx
41763b:	89 7d fc             	mov    %edi,-0x4(%ebp)
41763e:	ff 15 8c a3 43 00    	call   *0x43a38c
417644:	8b 35 44 1a 40 00    	mov    0x401a44,%esi
41764a:	8b ce                	mov    %esi,%ecx
41764c:	50                   	push   %eax
41764d:	ff 15 20 a5 43 00    	call   *0x43a520
417653:	ff d6                	call   *%esi
417655:	53                   	push   %ebx
417656:	ff 75 08             	push   0x8(%ebp)
417659:	8b f0                	mov    %eax,%esi
41765b:	56                   	push   %esi
41765c:	ff 15 84 a3 43 00    	call   *0x43a384
417662:	85 c0                	test   %eax,%eax
417664:	0f 84 e0 b4 00 00    	je     0x422b4a
41766a:	39 7d 0c             	cmp    %edi,0xc(%ebp)
41766d:	76 16                	jbe    0x417685
41766f:	8b 5d 10             	mov    0x10(%ebp),%ebx
417672:	57                   	push   %edi
417673:	56                   	push   %esi
417674:	ff 15 90 a3 43 00    	call   *0x43a390
41767a:	8b 0c bb             	mov    (%ebx,%edi,4),%ecx
41767d:	47                   	inc    %edi
41767e:	89 08                	mov    %ecx,(%eax)
417680:	3b 7d 0c             	cmp    0xc(%ebp),%edi
417683:	72 ed                	jb     0x417672
417685:	8b 45 f0             	mov    -0x10(%ebp),%eax
417688:	89 30                	mov    %esi,(%eax)
41768a:	e8 4d 37 00 00       	call   0x41addc
41768f:	c2 0c 00             	ret    $0xc
417692:	8b ff                	mov    %edi,%edi
417694:	56                   	push   %esi
417695:	8b f1                	mov    %ecx,%esi
417697:	8b 4e 0c             	mov    0xc(%esi),%ecx
41769a:	85 c9                	test   %ecx,%ecx
41769c:	74 0b                	je     0x4176a9
41769e:	8b 46 04             	mov    0x4(%esi),%eax
4176a1:	66 83 7c 48 fe 5c    	cmpw   $0x5c,-0x2(%eax,%ecx,2)
4176a7:	74 22                	je     0x4176cb
4176a9:	8b 06                	mov    (%esi),%eax
4176ab:	57                   	push   %edi
4176ac:	6a ff                	push   $0xffffffff
4176ae:	51                   	push   %ecx
4176af:	8b 78 10             	mov    0x10(%eax),%edi
4176b2:	68 8c 41 40 00       	push   $0x40418c
4176b7:	81 ff a0 36 41 00    	cmp    $0x4136a0,%edi
4176bd:	0f 85 af b4 00 00    	jne    0x422b72
4176c3:	8b ce                	mov    %esi,%ecx
4176c5:	e8 d6 bf ff ff       	call   0x4136a0
4176ca:	5f                   	pop    %edi
4176cb:	5e                   	pop    %esi
4176cc:	c3                   	ret
4176cd:	8b ff                	mov    %edi,%edi
4176cf:	55                   	push   %ebp
4176d0:	8b ec                	mov    %esp,%ebp
4176d2:	51                   	push   %ecx
4176d3:	57                   	push   %edi
4176d4:	68 00 20 00 00       	push   $0x2000
4176d9:	6a 42                	push   $0x42
4176db:	ff 15 34 a1 43 00    	call   *0x43a134
4176e1:	8b f8                	mov    %eax,%edi
4176e3:	85 ff                	test   %edi,%edi
4176e5:	0f 84 98 b4 00 00    	je     0x422b83
4176eb:	53                   	push   %ebx
4176ec:	56                   	push   %esi
4176ed:	8d 45 fc             	lea    -0x4(%ebp),%eax
4176f0:	33 db                	xor    %ebx,%ebx
4176f2:	50                   	push   %eax
4176f3:	6a 01                	push   $0x1
4176f5:	57                   	push   %edi
4176f6:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4176f9:	ff 15 70 a0 43 00    	call   *0x43a070
4176ff:	8b f0                	mov    %eax,%esi
417701:	85 f6                	test   %esi,%esi
417703:	0f 88 95 b4 00 00    	js     0x422b9e
417709:	6a 04                	push   $0x4
41770b:	53                   	push   %ebx
41770c:	53                   	push   %ebx
41770d:	6a 04                	push   $0x4
41770f:	ff 35 78 8d 43 00    	push   0x438d78
417715:	ff 15 c8 a1 43 00    	call   *0x43a1c8
41771b:	85 c0                	test   %eax,%eax
41771d:	0f 84 98 b4 00 00    	je     0x422bbb
417723:	8b 18                	mov    (%eax),%ebx
417725:	50                   	push   %eax
417726:	ff 15 bc a1 43 00    	call   *0x43a1bc
41772c:	85 c0                	test   %eax,%eax
41772e:	0f 84 87 b4 00 00    	je     0x422bbb
417734:	8d 43 04             	lea    0x4(%ebx),%eax
417737:	3d 00 20 00 00       	cmp    $0x2000,%eax
41773c:	0f 87 68 b4 00 00    	ja     0x422baa
417742:	50                   	push   %eax
417743:	6a 00                	push   $0x0
417745:	6a 00                	push   $0x0
417747:	6a 04                	push   $0x4
417749:	ff 35 78 8d 43 00    	push   0x438d78
41774f:	ff 15 c8 a1 43 00    	call   *0x43a1c8
417755:	8b f0                	mov    %eax,%esi
417757:	85 f6                	test   %esi,%esi
417759:	0f 84 5c b4 00 00    	je     0x422bbb
41775f:	57                   	push   %edi
417760:	ff 15 44 a1 43 00    	call   *0x43a144
417766:	85 c0                	test   %eax,%eax
417768:	0f 84 46 b4 00 00    	je     0x422bb4
41776e:	53                   	push   %ebx
41776f:	8d 4e 04             	lea    0x4(%esi),%ecx
417772:	51                   	push   %ecx
417773:	50                   	push   %eax
417774:	e8 6d 37 00 00       	call   0x41aee6
417779:	83 c4 0c             	add    $0xc,%esp
41777c:	56                   	push   %esi
41777d:	ff 15 bc a1 43 00    	call   *0x43a1bc
417783:	57                   	push   %edi
417784:	ff 15 40 a1 43 00    	call   *0x43a140
41778a:	85 c0                	test   %eax,%eax
41778c:	75 0a                	jne    0x417798
41778e:	ff 15 a8 a0 43 00    	call   *0x43a0a8
417794:	85 c0                	test   %eax,%eax
417796:	75 24                	jne    0x4177bc
417798:	68 1c 8a 43 00       	push   $0x438a1c
41779d:	68 90 41 40 00       	push   $0x404190
4177a2:	ff 75 fc             	push   -0x4(%ebp)
4177a5:	ff 15 74 a0 43 00    	call   *0x43a074
4177ab:	8b f0                	mov    %eax,%esi
4177ad:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4177b0:	e8 93 4a ff ff       	call   0x40c248
4177b5:	8b c6                	mov    %esi,%eax
4177b7:	5e                   	pop    %esi
4177b8:	5b                   	pop    %ebx
4177b9:	5f                   	pop    %edi
4177ba:	c9                   	leave
4177bb:	c3                   	ret
4177bc:	ff 15 a8 a0 43 00    	call   *0x43a0a8
4177c2:	eb e7                	jmp    0x4177ab
4177c4:	8b ff                	mov    %edi,%edi
4177c6:	55                   	push   %ebp
4177c7:	8b ec                	mov    %esp,%ebp
4177c9:	83 ec 14             	sub    $0x14,%esp
4177cc:	a1 08 85 43 00       	mov    0x438508,%eax
4177d1:	33 c5                	xor    %ebp,%eax
4177d3:	89 45 fc             	mov    %eax,-0x4(%ebp)
4177d6:	53                   	push   %ebx
4177d7:	56                   	push   %esi
4177d8:	8b d9                	mov    %ecx,%ebx
4177da:	8d 45 ec             	lea    -0x14(%ebp),%eax
4177dd:	57                   	push   %edi
4177de:	8d 7d ec             	lea    -0x14(%ebp),%edi
4177e1:	8b 73 04             	mov    0x4(%ebx),%esi
4177e4:	83 ee 10             	sub    $0x10,%esi
4177e7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4177e8:	a5                   	movsl  %ds:(%esi),%es:(%edi)