5e351e:	53                   	push   %ebx
5e351f:	ff 75 10             	push   0x10(%ebp)
5e3522:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5e3525:	53                   	push   %ebx
5e3526:	ff 75 08             	push   0x8(%ebp)
5e3529:	e8 e2 fc ff ff       	call   0x5e3210
5e352e:	8b c8                	mov    %eax,%ecx
5e3530:	83 c4 0c             	add    $0xc,%esp
5e3533:	85 c9                	test   %ecx,%ecx
5e3535:	0f 84 30 01 00 00    	je     0x5e366b
5e353b:	8b 45 08             	mov    0x8(%ebp),%eax
5e353e:	8b 55 08             	mov    0x8(%ebp),%edx
5e3541:	83 e0 3f             	and    $0x3f,%eax
5e3544:	c1 fa 06             	sar    $0x6,%edx
5e3547:	57                   	push   %edi
5e3548:	6b f8 38             	imul   $0x38,%eax,%edi
5e354b:	89 55 fc             	mov    %edx,-0x4(%ebp)
5e354e:	8b 04 95 a8 70 71 00 	mov    0x7170a8(,%edx,4),%eax
5e3555:	89 45 f8             	mov    %eax,-0x8(%ebp)
5e3558:	80 7c 38 29 00       	cmpb   $0x0,0x29(%eax,%edi,1)
5e355d:	75 07                	jne    0x5e3566
5e355f:	8b c1                	mov    %ecx,%eax
5e3561:	e9 04 01 00 00       	jmp    0x5e366a
5e3566:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
5e3569:	56                   	push   %esi
5e356a:	8d 70 ff             	lea    -0x1(%eax),%esi
5e356d:	8a 0e                	mov    (%esi),%cl
5e356f:	84 c9                	test   %cl,%cl
5e3571:	78 07                	js     0x5e357a
5e3573:	8b f0                	mov    %eax,%esi
5e3575:	e9 9b 00 00 00       	jmp    0x5e3615
5e357a:	33 d2                	xor    %edx,%edx
5e357c:	0f b6 c1             	movzbl %cl,%eax
5e357f:	42                   	inc    %edx
5e3580:	eb 0e                	jmp    0x5e3590
5e3582:	83 fa 04             	cmp    $0x4,%edx
5e3585:	77 12                	ja     0x5e3599
5e3587:	3b f3                	cmp    %ebx,%esi
5e3589:	72 0e                	jb     0x5e3599
5e358b:	4e                   	dec    %esi
5e358c:	42                   	inc    %edx
5e358d:	0f b6 06             	movzbl (%esi),%eax
5e3590:	80 b8 78 16 69 00 00 	cmpb   $0x0,0x691678(%eax)
5e3597:	74 e9                	je     0x5e3582
5e3599:	8a 0e                	mov    (%esi),%cl
5e359b:	0f b6 c1             	movzbl %cl,%eax
5e359e:	0f be 80 78 16 69 00 	movsbl 0x691678(%eax),%eax
5e35a5:	85 c0                	test   %eax,%eax
5e35a7:	75 10                	jne    0x5e35b9
5e35a9:	e8 da 76 ff ff       	call   0x5dac88
5e35ae:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
5e35b4:	e9 88 00 00 00       	jmp    0x5e3641
5e35b9:	40                   	inc    %eax
5e35ba:	3b c2                	cmp    %edx,%eax
5e35bc:	75 04                	jne    0x5e35c2
5e35be:	03 f2                	add    %edx,%esi
5e35c0:	eb 53                	jmp    0x5e3615
5e35c2:	8b 45 f8             	mov    -0x8(%ebp),%eax
5e35c5:	f6 44 38 28 48       	testb  $0x48,0x28(%eax,%edi,1)
5e35ca:	74 35                	je     0x5e3601
5e35cc:	46                   	inc    %esi
5e35cd:	88 4c 38 2a          	mov    %cl,0x2a(%eax,%edi,1)
5e35d1:	83 fa 02             	cmp    $0x2,%edx
5e35d4:	72 11                	jb     0x5e35e7
5e35d6:	8b 45 fc             	mov    -0x4(%ebp),%eax
5e35d9:	8a 0e                	mov    (%esi),%cl
5e35db:	46                   	inc    %esi
5e35dc:	8b 04 85 a8 70 71 00 	mov    0x7170a8(,%eax,4),%eax
5e35e3:	88 4c 07 2b          	mov    %cl,0x2b(%edi,%eax,1)
5e35e7:	83 fa 03             	cmp    $0x3,%edx
5e35ea:	75 11                	jne    0x5e35fd
5e35ec:	8b 45 fc             	mov    -0x4(%ebp),%eax
5e35ef:	8a 0e                	mov    (%esi),%cl
5e35f1:	46                   	inc    %esi
5e35f2:	8b 04 85 a8 70 71 00 	mov    0x7170a8(,%eax,4),%eax
5e35f9:	88 4c 07 2c          	mov    %cl,0x2c(%edi,%eax,1)
5e35fd:	2b f2                	sub    %edx,%esi
5e35ff:	eb 14                	jmp    0x5e3615
5e3601:	f7 da                	neg    %edx
5e3603:	8b c2                	mov    %edx,%eax
5e3605:	6a 01                	push   $0x1
5e3607:	99                   	cltd
5e3608:	52                   	push   %edx
5e3609:	50                   	push   %eax
5e360a:	ff 75 08             	push   0x8(%ebp)
5e360d:	e8 ae bd 00 00       	call   0x5ef3c0
5e3612:	83 c4 10             	add    $0x10,%esp
5e3615:	ff 75 18             	push   0x18(%ebp)
5e3618:	2b f3                	sub    %ebx,%esi
5e361a:	ff 75 14             	push   0x14(%ebp)
5e361d:	56                   	push   %esi
5e361e:	53                   	push   %ebx
5e361f:	6a 00                	push   $0x0
5e3621:	68 e9 fd 00 00       	push   $0xfde9
5e3626:	e8 16 b5 00 00       	call   0x5eeb41
5e362b:	8b d8                	mov    %eax,%ebx
5e362d:	83 c4 18             	add    $0x18,%esp
5e3630:	85 db                	test   %ebx,%ebx
5e3632:	75 12                	jne    0x5e3646
5e3634:	ff 15 58 21 60 00    	call   *0x602158
5e363a:	50                   	push   %eax
5e363b:	e8 ee 75 ff ff       	call   0x5dac2e
5e3640:	59                   	pop    %ecx
5e3641:	83 c8 ff             	or     $0xffffffff,%eax
5e3644:	eb 23                	jmp    0x5e3669
5e3646:	8b 45 fc             	mov    -0x4(%ebp),%eax
5e3649:	3b de                	cmp    %esi,%ebx
5e364b:	0f 94 c1             	sete   %cl
5e364e:	fe c9                	dec    %cl
5e3650:	8b 14 85 a8 70 71 00 	mov    0x7170a8(,%eax,4),%edx
5e3657:	80 e1 02             	and    $0x2,%cl
5e365a:	8a 44 17 2d          	mov    0x2d(%edi,%edx,1),%al
5e365e:	24 fd                	and    $0xfd,%al
5e3660:	0a c8                	or     %al,%cl
5e3662:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
5e3665:	88 4c 17 2d          	mov    %cl,0x2d(%edi,%edx,1)
5e3669:	5e                   	pop    %esi
5e366a:	5f                   	pop    %edi
5e366b:	5b                   	pop    %ebx
5e366c:	c9                   	leave
5e366d:	c3                   	ret
5e366e:	8b ff                	mov    %edi,%edi
5e3670:	55                   	push   %ebp
5e3671:	8b ec                	mov    %esp,%ebp
5e3673:	51                   	push   %ecx
5e3674:	8b 45 10             	mov    0x10(%ebp),%eax
5e3677:	56                   	push   %esi
5e3678:	57                   	push   %edi
5e3679:	8b 7d 0c             	mov    0xc(%ebp),%edi
5e367c:	8b cf                	mov    %edi,%ecx
5e367e:	8b f7                	mov    %edi,%esi
5e3680:	8d 14 47             	lea    (%edi,%eax,2),%edx
5e3683:	3b fa                	cmp    %edx,%edi
5e3685:	73 5a                	jae    0x5e36e1
5e3687:	53                   	push   %ebx
5e3688:	0f b7 01             	movzwl (%ecx),%eax
5e368b:	83 f8 1a             	cmp    $0x1a,%eax
5e368e:	74 36                	je     0x5e36c6
5e3690:	83 f8 0d             	cmp    $0xd,%eax
5e3693:	75 15                	jne    0x5e36aa
5e3695:	8d 59 02             	lea    0x2(%ecx),%ebx
5e3698:	3b da                	cmp    %edx,%ebx
5e369a:	73 0e                	jae    0x5e36aa
5e369c:	6a 0a                	push   $0xa
5e369e:	5f                   	pop    %edi
5e369f:	66 39 3b             	cmp    %di,(%ebx)
5e36a2:	75 06                	jne    0x5e36aa
5e36a4:	8b c7                	mov    %edi,%eax
5e36a6:	6a 04                	push   $0x4
5e36a8:	eb 02                	jmp    0x5e36ac
5e36aa:	6a 02                	push   $0x2
5e36ac:	8d 7e 02             	lea    0x2(%esi),%edi
5e36af:	66 89 06             	mov    %ax,(%esi)
5e36b2:	5b                   	pop    %ebx
5e36b3:	89 7d fc             	mov    %edi,-0x4(%ebp)
5e36b6:	03 cb                	add    %ebx,%ecx
5e36b8:	8b 45 fc             	mov    -0x4(%ebp),%eax
5e36bb:	8b f0                	mov    %eax,%esi
5e36bd:	8b 7d 0c             	mov    0xc(%ebp),%edi
5e36c0:	3b ca                	cmp    %edx,%ecx
5e36c2:	72 c4                	jb     0x5e3688
5e36c4:	eb 1a                	jmp    0x5e36e0
5e36c6:	8b 45 08             	mov    0x8(%ebp),%eax
5e36c9:	8b c8                	mov    %eax,%ecx
5e36cb:	83 e0 3f             	and    $0x3f,%eax
5e36ce:	c1 f9 06             	sar    $0x6,%ecx
5e36d1:	6b d0 38             	imul   $0x38,%eax,%edx
5e36d4:	8b 0c 8d a8 70 71 00 	mov    0x7170a8(,%ecx,4),%ecx
5e36db:	80 4c 11 28 02       	orb    $0x2,0x28(%ecx,%edx,1)
5e36e0:	5b                   	pop    %ebx
5e36e1:	2b f7                	sub    %edi,%esi
5e36e3:	83 e6 fe             	and    $0xfffffffe,%esi
5e36e6:	5f                   	pop    %edi
5e36e7:	8b c6                	mov    %esi,%eax
5e36e9:	5e                   	pop    %esi
5e36ea:	c9                   	leave
5e36eb:	c3                   	ret
5e36ec:	6a 14                	push   $0x14
5e36ee:	68 10 a7 68 00       	push   $0x68a710
5e36f3:	e8 08 f2 fe ff       	call   0x5d2900
5e36f8:	8b 75 08             	mov    0x8(%ebp),%esi
5e36fb:	83 fe fe             	cmp    $0xfffffffe,%esi
5e36fe:	75 1b                	jne    0x5e371b
5e3700:	e8 70 75 ff ff       	call   0x5dac75
5e3705:	83 20 00             	andl   $0x0,(%eax)
5e3708:	e8 7b 75 ff ff       	call   0x5dac88
5e370d:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
5e3713:	83 c8 ff             	or     $0xffffffff,%eax
5e3716:	e9 cc 00 00 00       	jmp    0x5e37e7
5e371b:	85 f6                	test   %esi,%esi
5e371d:	78 0d                	js     0x5e372c
5e371f:	3b 35 a8 72 71 00    	cmp    0x7172a8,%esi
5e3725:	73 05                	jae    0x5e372c
5e3727:	33 c0                	xor    %eax,%eax
5e3729:	40                   	inc    %eax
5e372a:	eb 02                	jmp    0x5e372e
5e372c:	33 c0                	xor    %eax,%eax
5e372e:	85 c0                	test   %eax,%eax
5e3730:	75 1a                	jne    0x5e374c
5e3732:	e8 3e 75 ff ff       	call   0x5dac75
5e3737:	83 20 00             	andl   $0x0,(%eax)
5e373a:	e8 49 75 ff ff       	call   0x5dac88
5e373f:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
5e3745:	e8 96 2a ff ff       	call   0x5d61e0
5e374a:	eb c7                	jmp    0x5e3713
5e374c:	8b ce                	mov    %esi,%ecx
5e374e:	c1 f9 06             	sar    $0x6,%ecx
5e3751:	89 4d e0             	mov    %ecx,-0x20(%ebp)
5e3754:	8b c6                	mov    %esi,%eax
5e3756:	83 e0 3f             	and    $0x3f,%eax
5e3759:	6b d0 38             	imul   $0x38,%eax,%edx
5e375c:	89 55 dc             	mov    %edx,-0x24(%ebp)
5e375f:	8b 04 8d a8 70 71 00 	mov    0x7170a8(,%ecx,4),%eax
5e3766:	f6 44 10 28 01       	testb  $0x1,0x28(%eax,%edx,1)
5e376b:	74 c5                	je     0x5e3732
5e376d:	81 7d 10 ff ff ff 7f 	cmpl   $0x7fffffff,0x10(%ebp)
5e3774:	76 15                	jbe    0x5e378b
5e3776:	e8 fa 74 ff ff       	call   0x5dac75
5e377b:	83 20 00             	andl   $0x0,(%eax)
5e377e:	e8 05 75 ff ff       	call   0x5dac88
5e3783:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5e3789:	eb ba                	jmp    0x5e3745
5e378b:	56                   	push   %esi
5e378c:	e8 28 b5 00 00       	call   0x5eecb9
5e3791:	59                   	pop    %ecx
5e3792:	83 cb ff             	or     $0xffffffff,%ebx
5e3795:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
5e3798:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
5e379c:	8b 45 e0             	mov    -0x20(%ebp),%eax
5e379f:	8b 04 85 a8 70 71 00 	mov    0x7170a8(,%eax,4),%eax
5e37a6:	8b 4d dc             	mov    -0x24(%ebp),%ecx
5e37a9:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
5e37ae:	75 15                	jne    0x5e37c5
5e37b0:	e8 d3 74 ff ff       	call   0x5dac88
5e37b5:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
5e37bb:	e8 b5 74 ff ff       	call   0x5dac75
5e37c0:	83 20 00             	andl   $0x0,(%eax)
5e37c3:	eb 14                	jmp    0x5e37d9
5e37c5:	ff 75 10             	push   0x10(%ebp)
5e37c8:	ff 75 0c             	push   0xc(%ebp)
5e37cb:	56                   	push   %esi
5e37cc:	e8 34 00 00 00       	call   0x5e3805
5e37d1:	83 c4 0c             	add    $0xc,%esp
5e37d4:	8b d8                	mov    %eax,%ebx
5e37d6:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
5e37d9:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
5e37e0:	e8 18 00 00 00       	call   0x5e37fd
5e37e5:	8b c3                	mov    %ebx,%eax
5e37e7:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5e37ea:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5e37f1:	59                   	pop    %ecx
5e37f2:	5f                   	pop    %edi
5e37f3:	5e                   	pop    %esi
5e37f4:	5b                   	pop    %ebx
5e37f5:	c9                   	leave
5e37f6:	c3                   	ret
5e37f7:	8b 75 08             	mov    0x8(%ebp),%esi
5e37fa:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
5e37fd:	56                   	push   %esi
5e37fe:	e8 6b b5 00 00       	call   0x5eed6e
5e3803:	59                   	pop    %ecx
5e3804:	c3                   	ret
5e3805:	8b ff                	mov    %edi,%edi
5e3807:	55                   	push   %ebp
5e3808:	8b ec                	mov    %esp,%ebp
5e380a:	8b 55 08             	mov    0x8(%ebp),%edx
5e380d:	83 ec 24             	sub    $0x24,%esp
5e3810:	53                   	push   %ebx
5e3811:	57                   	push   %edi
5e3812:	83 fa fe             	cmp    $0xfffffffe,%edx
5e3815:	75 18                	jne    0x5e382f
5e3817:	e8 59 74 ff ff       	call   0x5dac75
5e381c:	83 20 00             	andl   $0x0,(%eax)
5e381f:	e8 64 74 ff ff       	call   0x5dac88
5e3824:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
5e382a:	e9 5a 03 00 00       	jmp    0x5e3b89
5e382f:	85 d2                	test   %edx,%edx
5e3831:	0f 88 3a 03 00 00    	js     0x5e3b71
5e3837:	3b 15 a8 72 71 00    	cmp    0x7172a8,%edx
5e383d:	0f 83 2e 03 00 00    	jae    0x5e3b71
5e3843:	8b c2                	mov    %edx,%eax
5e3845:	8b ca                	mov    %edx,%ecx
5e3847:	c1 e9 06             	shr    $0x6,%ecx
5e384a:	83 e0 3f             	and    $0x3f,%eax
5e384d:	6b f8 38             	imul   $0x38,%eax,%edi
5e3850:	33 db                	xor    %ebx,%ebx
5e3852:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5e3855:	43                   	inc    %ebx
5e3856:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
5e3859:	8b 04 8d a8 70 71 00 	mov    0x7170a8(,%ecx,4),%eax
5e3860:	89 7d f0             	mov    %edi,-0x10(%ebp)
5e3863:	8a 4c 07 28          	mov    0x28(%edi,%eax,1),%cl
5e3867:	88 4d ff             	mov    %cl,-0x1(%ebp)
5e386a:	84 cb                	test   %cl,%bl
5e386c:	0f 84 ff 02 00 00    	je     0x5e3b71
5e3872:	8b 4d 10             	mov    0x10(%ebp),%ecx
5e3875:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
5e387b:	76 18                	jbe    0x5e3895
5e387d:	e8 f3 73 ff ff       	call   0x5dac75
5e3882:	83 20 00             	andl   $0x0,(%eax)
5e3885:	e8 fe 73 ff ff       	call   0x5dac88
5e388a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5e3890:	e9 ef 02 00 00       	jmp    0x5e3b84
5e3895:	85 c9                	test   %ecx,%ecx
5e3897:	0f 84 d0 02 00 00    	je     0x5e3b6d
5e389d:	f6 45 ff 02          	testb  $0x2,-0x1(%ebp)
5e38a1:	0f 85 c6 02 00 00    	jne    0x5e3b6d
5e38a7:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
5e38ab:	74 d0                	je     0x5e387d
5e38ad:	56                   	push   %esi
5e38ae:	8b 74 07 18          	mov    0x18(%edi,%eax,1),%esi
5e38b2:	8a 44 07 29          	mov    0x29(%edi,%eax,1),%al
5e38b6:	88 45 ff             	mov    %al,-0x1(%ebp)
5e38b9:	89 75 ec             	mov    %esi,-0x14(%ebp)
5e38bc:	33 f6                	xor    %esi,%esi
5e38be:	0f be c0             	movsbl %al,%eax
5e38c1:	83 e8 01             	sub    $0x1,%eax
5e38c4:	74 33                	je     0x5e38f9
5e38c6:	83 e8 01             	sub    $0x1,%eax
5e38c9:	75 24                	jne    0x5e38ef
5e38cb:	8b c1                	mov    %ecx,%eax
5e38cd:	f7 d0                	not    %eax
5e38cf:	84 c3                	test   %al,%bl
5e38d1:	75 1c                	jne    0x5e38ef
5e38d3:	e8 9d 73 ff ff       	call   0x5dac75
5e38d8:	21 30                	and    %esi,(%eax)
5e38da:	e8 a9 73 ff ff       	call   0x5dac88
5e38df:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5e38e5:	e8 f6 28 ff ff       	call   0x5d61e0
5e38ea:	e9 b5 01 00 00       	jmp    0x5e3aa4
5e38ef:	8b d9                	mov    %ecx,%ebx
5e38f1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5e38f4:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5e38f7:	eb 73                	jmp    0x5e396c
5e38f9:	8b c1                	mov    %ecx,%eax
5e38fb:	f7 d0                	not    %eax
5e38fd:	84 c3                	test   %al,%bl
5e38ff:	74 d2                	je     0x5e38d3
5e3901:	6a 04                	push   $0x4
5e3903:	d1 e9                	shr    $1,%ecx
5e3905:	5b                   	pop    %ebx
5e3906:	3b cb                	cmp    %ebx,%ecx
5e3908:	72 02                	jb     0x5e390c
5e390a:	8b d9                	mov    %ecx,%ebx
5e390c:	53                   	push   %ebx
5e390d:	e8 4a 79 00 00       	call   0x5eb25c
5e3912:	6a 00                	push   $0x0
5e3914:	8b f0                	mov    %eax,%esi
5e3916:	e8 07 79 00 00       	call   0x5eb222
5e391b:	6a 00                	push   $0x0