4693fa:	e8 df e9 fa ff       	call   0x417dde
4693ff:	83 c4 10             	add    $0x10,%esp
469402:	85 c0                	test   %eax,%eax
469404:	75 02                	jne    0x469408
469406:	8b c7                	mov    %edi,%eax
469408:	85 db                	test   %ebx,%ebx
46940a:	75 02                	jne    0x46940e
46940c:	8b df                	mov    %edi,%ebx
46940e:	3b c3                	cmp    %ebx,%eax
469410:	72 06                	jb     0x469418
469412:	2b c7                	sub    %edi,%eax
469414:	8b d8                	mov    %eax,%ebx
469416:	eb 02                	jmp    0x46941a
469418:	2b df                	sub    %edi,%ebx
46941a:	85 db                	test   %ebx,%ebx
46941c:	75 01                	jne    0x46941f
46941e:	43                   	inc    %ebx
46941f:	83 c6 10             	add    $0x10,%esi
469422:	57                   	push   %edi
469423:	8b ce                	mov    %esi,%ecx
469425:	e8 57 7d f9 ff       	call   0x401181
46942a:	53                   	push   %ebx
46942b:	8d 45 0c             	lea    0xc(%ebp),%eax
46942e:	50                   	push   %eax
46942f:	8b ce                	mov    %esi,%ecx
469431:	e8 55 27 00 00       	call   0x46bb8b
469436:	50                   	push   %eax
469437:	8b ce                	mov    %esi,%ecx
469439:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
46943d:	e8 b1 7e f9 ff       	call   0x4012f3
469442:	8b 4d 0c             	mov    0xc(%ebp),%ecx
469445:	83 c1 f0             	add    $0xfffffff0,%ecx
469448:	e8 05 7f f9 ff       	call   0x401352
46944d:	8b 4d 08             	mov    0x8(%ebp),%ecx
469450:	83 c1 f0             	add    $0xfffffff0,%ecx
469453:	e8 fa 7e f9 ff       	call   0x401352
469458:	33 c0                	xor    %eax,%eax
46945a:	40                   	inc    %eax
46945b:	5f                   	pop    %edi
46945c:	5b                   	pop    %ebx
46945d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
469460:	5e                   	pop    %esi
469461:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
469468:	c9                   	leave
469469:	c2 08 00             	ret    $0x8
46946c:	55                   	push   %ebp
46946d:	8b ec                	mov    %esp,%ebp
46946f:	51                   	push   %ecx
469470:	8b 41 04             	mov    0x4(%ecx),%eax
469473:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
469477:	05 98 00 00 00       	add    $0x98,%eax
46947c:	50                   	push   %eax
46947d:	ff 75 08             	push   0x8(%ebp)
469480:	e8 3a fc ff ff       	call   0x4690bf
469485:	8b 45 08             	mov    0x8(%ebp),%eax
469488:	59                   	pop    %ecx
469489:	59                   	pop    %ecx
46948a:	c9                   	leave
46948b:	c2 04 00             	ret    $0x4
46948e:	b8 04 27 48 00       	mov    $0x482704,%eax
469493:	e8 e4 e7 fa ff       	call   0x417c7c
469498:	51                   	push   %ecx
469499:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
46949d:	56                   	push   %esi
46949e:	8b f1                	mov    %ecx,%esi
4694a0:	e8 51 6d fd ff       	call   0x4401f6
4694a5:	8b 10                	mov    (%eax),%edx
4694a7:	8b c8                	mov    %eax,%ecx
4694a9:	ff 52 0c             	call   *0xc(%edx)
4694ac:	83 c0 10             	add    $0x10,%eax
4694af:	89 45 f0             	mov    %eax,-0x10(%ebp)
4694b2:	8b 46 04             	mov    0x4(%esi),%eax
4694b5:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4694b9:	85 c0                	test   %eax,%eax
4694bb:	5e                   	pop    %esi
4694bc:	74 09                	je     0x4694c7
4694be:	50                   	push   %eax
4694bf:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4694c2:	e8 ba 7c f9 ff       	call   0x401181
4694c7:	8b 4d 08             	mov    0x8(%ebp),%ecx
4694ca:	8d 45 f0             	lea    -0x10(%ebp),%eax
4694cd:	50                   	push   %eax
4694ce:	e8 ff 7b f9 ff       	call   0x4010d2
4694d3:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4694d6:	83 c1 f0             	add    $0xfffffff0,%ecx
4694d9:	e8 74 7e f9 ff       	call   0x401352
4694de:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4694e1:	8b 45 08             	mov    0x8(%ebp),%eax
4694e4:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4694eb:	c9                   	leave
4694ec:	c2 04 00             	ret    $0x4
4694ef:	56                   	push   %esi
4694f0:	ff 74 24 0c          	push   0xc(%esp)
4694f4:	8b f1                	mov    %ecx,%esi
4694f6:	8d 4e 10             	lea    0x10(%esi),%ecx
4694f9:	c7 06 e8 a0 48 00    	movl   $0x48a0e8,(%esi)
4694ff:	e8 90 7d f9 ff       	call   0x401294
469504:	66 8b 44 24 10       	mov    0x10(%esp),%ax
469509:	8b 4c 24 08          	mov    0x8(%esp),%ecx
46950d:	83 66 04 00          	andl   $0x0,0x4(%esi)
469511:	66 89 46 14          	mov    %ax,0x14(%esi)
469515:	8b 44 24 14          	mov    0x14(%esp),%eax
469519:	83 f8 01             	cmp    $0x1,%eax
46951c:	89 4e 0c             	mov    %ecx,0xc(%esi)
46951f:	75 03                	jne    0x469524
469521:	8b 41 04             	mov    0x4(%ecx),%eax
469524:	89 46 08             	mov    %eax,0x8(%esi)
469527:	8b c6                	mov    %esi,%eax
469529:	5e                   	pop    %esi
46952a:	c2 10 00             	ret    $0x10
46952d:	b8 21 27 48 00       	mov    $0x482721,%eax
469532:	e8 45 e7 fa ff       	call   0x417c7c
469537:	51                   	push   %ecx
469538:	53                   	push   %ebx
469539:	56                   	push   %esi
46953a:	57                   	push   %edi
46953b:	ff 75 14             	push   0x14(%ebp)
46953e:	33 db                	xor    %ebx,%ebx
469540:	53                   	push   %ebx
469541:	ff 75 10             	push   0x10(%ebp)
469544:	8b f1                	mov    %ecx,%esi
469546:	ff 75 08             	push   0x8(%ebp)
469549:	89 75 f0             	mov    %esi,-0x10(%ebp)
46954c:	e8 9e ff ff ff       	call   0x4694ef
469551:	8d 7e 18             	lea    0x18(%esi),%edi
469554:	8b cf                	mov    %edi,%ecx
469556:	89 5d fc             	mov    %ebx,-0x4(%ebp)
469559:	c7 06 fc a0 48 00    	movl   $0x48a0fc,(%esi)
46955f:	e8 50 7b f9 ff       	call   0x4010b4
469564:	89 5d 14             	mov    %ebx,0x14(%ebp)
469567:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46956a:	53                   	push   %ebx
46956b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
46956f:	e8 e1 df ff ff       	call   0x467555
469574:	83 f8 02             	cmp    $0x2,%eax
469577:	74 07                	je     0x469580
469579:	c7 45 14 01 00 00 00 	movl   $0x1,0x14(%ebp)
469580:	ff 75 10             	push   0x10(%ebp)
469583:	8b cf                	mov    %edi,%ecx
469585:	e8 f7 7b f9 ff       	call   0x401181
46958a:	85 db                	test   %ebx,%ebx
46958c:	89 5e 04             	mov    %ebx,0x4(%esi)
46958f:	74 27                	je     0x4695b8
469591:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
469595:	75 21                	jne    0x4695b8
469597:	ff 76 0c             	push   0xc(%esi)
46959a:	b9 60 a8 4a 00       	mov    $0x4aa860,%ecx
46959f:	53                   	push   %ebx
4695a0:	e8 ac e7 ff ff       	call   0x467d51
4695a5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4695a8:	5f                   	pop    %edi
4695a9:	8b c6                	mov    %esi,%eax
4695ab:	5e                   	pop    %esi
4695ac:	5b                   	pop    %ebx
4695ad:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4695b4:	c9                   	leave
4695b5:	c2 10 00             	ret    $0x10
4695b8:	6a 06                	push   $0x6
4695ba:	ff 76 08             	push   0x8(%esi)
4695bd:	e8 95 ea ff ff       	call   0x468057
4695c2:	cc                   	int3
4695c3:	b8 3e 27 48 00       	mov    $0x48273e,%eax
4695c8:	e8 af e6 fa ff       	call   0x417c7c
4695cd:	51                   	push   %ecx
4695ce:	53                   	push   %ebx
4695cf:	8b 5d 08             	mov    0x8(%ebp),%ebx
4695d2:	56                   	push   %esi
4695d3:	57                   	push   %edi
4695d4:	ff 75 18             	push   0x18(%ebp)
4695d7:	8b f1                	mov    %ecx,%esi
4695d9:	ff 75 1c             	push   0x1c(%ebp)
4695dc:	89 75 f0             	mov    %esi,-0x10(%ebp)
4695df:	ff 75 0c             	push   0xc(%ebp)
4695e2:	53                   	push   %ebx
4695e3:	e8 07 ff ff ff       	call   0x4694ef
4695e8:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4695ec:	8d 7e 18             	lea    0x18(%esi),%edi
4695ef:	8b cf                	mov    %edi,%ecx
4695f1:	c7 06 fc a0 48 00    	movl   $0x48a0fc,(%esi)
4695f7:	e8 b8 7a f9 ff       	call   0x4010b4
4695fc:	ff 75 0c             	push   0xc(%ebp)
4695ff:	8b cf                	mov    %edi,%ecx
469601:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
469605:	e8 77 7b f9 ff       	call   0x401181
46960a:	ff 76 08             	push   0x8(%esi)
46960d:	8b 45 20             	mov    0x20(%ebp),%eax
469610:	8b 5b 08             	mov    0x8(%ebx),%ebx
469613:	f7 d8                	neg    %eax
469615:	1b c0                	sbb    %eax,%eax
469617:	25 00 00 00 08       	and    $0x8000000,%eax
46961c:	50                   	push   %eax
46961d:	6a 01                	push   $0x1
46961f:	ff 75 14             	push   0x14(%ebp)
469622:	ff 75 10             	push   0x10(%ebp)
469625:	ff 75 1c             	push   0x1c(%ebp)
469628:	ff 75 0c             	push   0xc(%ebp)
46962b:	53                   	push   %ebx
46962c:	ff 15 84 09 4b 00    	call   *0x4b0984
469632:	85 c0                	test   %eax,%eax
469634:	89 46 04             	mov    %eax,0x4(%esi)
469637:	75 0f                	jne    0x469648
469639:	ff 15 9c 03 4b 00    	call   *0x4b039c
46963f:	50                   	push   %eax
469640:	ff 76 08             	push   0x8(%esi)
469643:	e8 0f ea ff ff       	call   0x468057
469648:	ff 76 0c             	push   0xc(%esi)
46964b:	b9 60 a8 4a 00       	mov    $0x4aa860,%ecx
469650:	50                   	push   %eax
469651:	e8 fb e6 ff ff       	call   0x467d51
469656:	8b 4d f4             	mov    -0xc(%ebp),%ecx
469659:	5f                   	pop    %edi
46965a:	8b c6                	mov    %esi,%eax
46965c:	5e                   	pop    %esi
46965d:	5b                   	pop    %ebx
46965e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
469665:	c9                   	leave
469666:	c2 1c 00             	ret    $0x1c
469669:	b8 50 27 48 00       	mov    $0x482750,%eax
46966e:	e8 09 e6 fa ff       	call   0x417c7c
469673:	51                   	push   %ecx
469674:	56                   	push   %esi
469675:	57                   	push   %edi
469676:	ff 75 18             	push   0x18(%ebp)
469679:	8b 7d 08             	mov    0x8(%ebp),%edi
46967c:	ff 75 1c             	push   0x1c(%ebp)
46967f:	8b f1                	mov    %ecx,%esi
469681:	ff 75 0c             	push   0xc(%ebp)
469684:	89 75 f0             	mov    %esi,-0x10(%ebp)
469687:	57                   	push   %edi
469688:	e8 62 fe ff ff       	call   0x4694ef
46968d:	ff 76 08             	push   0x8(%esi)
469690:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
469694:	6a 00                	push   $0x0
469696:	6a 02                	push   $0x2
469698:	ff 75 14             	push   0x14(%ebp)
46969b:	c7 06 10 a1 48 00    	movl   $0x48a110,(%esi)
4696a1:	ff 75 10             	push   0x10(%ebp)
4696a4:	8b 7f 08             	mov    0x8(%edi),%edi
4696a7:	ff 75 1c             	push   0x1c(%ebp)
4696aa:	ff 75 0c             	push   0xc(%ebp)
4696ad:	57                   	push   %edi
4696ae:	ff 15 84 09 4b 00    	call   *0x4b0984
4696b4:	85 c0                	test   %eax,%eax
4696b6:	89 46 04             	mov    %eax,0x4(%esi)
4696b9:	75 09                	jne    0x4696c4
4696bb:	50                   	push   %eax
4696bc:	ff 76 08             	push   0x8(%esi)
4696bf:	e8 93 e9 ff ff       	call   0x468057
4696c4:	ff 76 0c             	push   0xc(%esi)
4696c7:	b9 60 a8 4a 00       	mov    $0x4aa860,%ecx
4696cc:	50                   	push   %eax
4696cd:	e8 7f e6 ff ff       	call   0x467d51
4696d2:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4696d5:	5f                   	pop    %edi
4696d6:	8b c6                	mov    %esi,%eax
4696d8:	5e                   	pop    %esi
4696d9:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4696e0:	c9                   	leave
4696e1:	c2 18 00             	ret    $0x18
4696e4:	b8 62 27 48 00       	mov    $0x482762,%eax
4696e9:	e8 8e e5 fa ff       	call   0x417c7c
4696ee:	51                   	push   %ecx
4696ef:	53                   	push   %ebx
4696f0:	56                   	push   %esi
4696f1:	57                   	push   %edi
4696f2:	ff 75 14             	push   0x14(%ebp)
4696f5:	33 db                	xor    %ebx,%ebx
4696f7:	53                   	push   %ebx
4696f8:	ff 75 10             	push   0x10(%ebp)
4696fb:	8b f1                	mov    %ecx,%esi
4696fd:	ff 75 08             	push   0x8(%ebp)
469700:	89 75 f0             	mov    %esi,-0x10(%ebp)
469703:	e8 e7 fd ff ff       	call   0x4694ef
469708:	8b 7d 0c             	mov    0xc(%ebp),%edi
46970b:	57                   	push   %edi
46970c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
46970f:	c7 06 10 a1 48 00    	movl   $0x48a110,(%esi)
469715:	89 5d 14             	mov    %ebx,0x14(%ebp)
469718:	e8 38 de ff ff       	call   0x467555
46971d:	83 f8 03             	cmp    $0x3,%eax
469720:	74 07                	je     0x469729
469722:	c7 45 14 01 00 00 00 	movl   $0x1,0x14(%ebp)
469729:	3b fb                	cmp    %ebx,%edi
46972b:	89 7e 04             	mov    %edi,0x4(%esi)
46972e:	74 26                	je     0x469756
469730:	39 5d 14             	cmp    %ebx,0x14(%ebp)
469733:	75 21                	jne    0x469756
469735:	ff 76 0c             	push   0xc(%esi)
469738:	b9 60 a8 4a 00       	mov    $0x4aa860,%ecx
46973d:	57                   	push   %edi
46973e:	e8 0e e6 ff ff       	call   0x467d51
469743:	8b 4d f4             	mov    -0xc(%ebp),%ecx
469746:	5f                   	pop    %edi
469747:	8b c6                	mov    %esi,%eax
469749:	5e                   	pop    %esi
46974a:	5b                   	pop    %ebx
46974b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
469752:	c9                   	leave
469753:	c2 10 00             	ret    $0x10
469756:	53                   	push   %ebx
469757:	ff 76 08             	push   0x8(%esi)
46975a:	e8 f8 e8 ff ff       	call   0x468057
46975f:	cc                   	int3
469760:	b8 75 27 48 00       	mov    $0x482775,%eax
469765:	e8 12 e5 fa ff       	call   0x417c7c
46976a:	53                   	push   %ebx
46976b:	8b 5d 14             	mov    0x14(%ebp),%ebx
46976e:	83 fb 01             	cmp    $0x1,%ebx
469771:	56                   	push   %esi
469772:	57                   	push   %edi
469773:	8b f1                	mov    %ecx,%esi
469775:	75 03                	jne    0x46977a
469777:	8b 5e 08             	mov    0x8(%esi),%ebx
46977a:	8b 7d 08             	mov    0x8(%ebp),%edi
46977d:	8b 47 04             	mov    0x4(%edi),%eax
469780:	53                   	push   %ebx
469781:	ff 75 0c             	push   0xc(%ebp)
469784:	ff 75 10             	push   0x10(%ebp)
469787:	50                   	push   %eax
469788:	ff 76 04             	push   0x4(%esi)
46978b:	ff 15 80 09 4b 00    	call   *0x4b0980
469791:	85 c0                	test   %eax,%eax
469793:	89 45 14             	mov    %eax,0x14(%ebp)
469796:	75 07                	jne    0x46979f
469798:	50                   	push   %eax
469799:	53                   	push   %ebx
46979a:	e8 b8 e8 ff ff       	call   0x468057
46979f:	6a 50                	push   $0x50
4697a1:	e8 af 68 fd ff       	call   0x440055
4697a6:	59                   	pop    %ecx
4697a7:	89 45 08             	mov    %eax,0x8(%ebp)
4697aa:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4697ae:	85 c0                	test   %eax,%eax
4697b0:	74 0e                	je     0x4697c0
4697b2:	56                   	push   %esi
4697b3:	57                   	push   %edi
4697b4:	ff 75 14             	push   0x14(%ebp)
4697b7:	8b c8                	mov    %eax,%ecx
4697b9:	e8 a3 fa ff ff       	call   0x469261
4697be:	eb 02                	jmp    0x4697c2
4697c0:	33 c0                	xor    %eax,%eax
4697c2:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4697c5:	5f                   	pop    %edi
4697c6:	5e                   	pop    %esi
4697c7:	5b                   	pop    %ebx
4697c8:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4697cf:	c9                   	leave
4697d0:	c2 10 00             	ret    $0x10
4697d3:	b8 92 27 48 00       	mov    $0x482792,%eax
4697d8:	e8 9f e4 fa ff       	call   0x417c7c