421545:	84 c0                	test   %al,%al
421547:	74 2f                	je     0x421578
421549:	8b 7d 14             	mov    0x14(%ebp),%edi
42154c:	85 ff                	test   %edi,%edi
42154e:	74 3d                	je     0x42158d
421550:	83 ff 02             	cmp    $0x2,%edi
421553:	7c 05                	jl     0x42155a
421555:	83 ff 24             	cmp    $0x24,%edi
421558:	7e 33                	jle    0x42158d
42155a:	8b 45 08             	mov    0x8(%ebp),%eax
42155d:	50                   	push   %eax
42155e:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
421562:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
421569:	33 c0                	xor    %eax,%eax
42156b:	50                   	push   %eax
42156c:	50                   	push   %eax
42156d:	50                   	push   %eax
42156e:	50                   	push   %eax
42156f:	50                   	push   %eax
421570:	e8 7d f4 ff ff       	call   0x4209f2
421575:	83 c4 18             	add    $0x18,%esp
421578:	8b 4d 10             	mov    0x10(%ebp),%ecx
42157b:	85 c9                	test   %ecx,%ecx
42157d:	0f 84 11 05 00 00    	je     0x421a94
421583:	8b 45 0c             	mov    0xc(%ebp),%eax
421586:	89 01                	mov    %eax,(%ecx)
421588:	e9 07 05 00 00       	jmp    0x421a94
42158d:	8b 45 0c             	mov    0xc(%ebp),%eax
421590:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
421594:	0f b6 5d 18          	movzbl 0x18(%ebp),%ebx
421598:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
42159e:	0f b7 30             	movzwl (%eax),%esi
4215a1:	8d 48 02             	lea    0x2(%eax),%ecx
4215a4:	89 4d 0c             	mov    %ecx,0xc(%ebp)
4215a7:	83 fe 2d             	cmp    $0x2d,%esi
4215aa:	75 05                	jne    0x4215b1
4215ac:	83 cb 02             	or     $0x2,%ebx
4215af:	eb 05                	jmp    0x4215b6
4215b1:	83 fe 2b             	cmp    $0x2b,%esi
4215b4:	75 09                	jne    0x4215bf
4215b6:	0f b7 31             	movzwl (%ecx),%esi
4215b9:	83 c1 02             	add    $0x2,%ecx
4215bc:	89 4d 0c             	mov    %ecx,0xc(%ebp)
4215bf:	c7 85 74 ff ff ff 3a 	movl   $0x3a,-0x8c(%ebp)
4215c6:	00 00 00
4215c9:	b8 10 ff 00 00       	mov    $0xff10,%eax
4215ce:	c7 45 f8 60 06 00 00 	movl   $0x660,-0x8(%ebp)
4215d5:	c7 45 f4 6a 06 00 00 	movl   $0x66a,-0xc(%ebp)
4215dc:	c7 45 f0 f0 06 00 00 	movl   $0x6f0,-0x10(%ebp)
4215e3:	c7 45 ec fa 06 00 00 	movl   $0x6fa,-0x14(%ebp)
4215ea:	c7 45 e8 66 09 00 00 	movl   $0x966,-0x18(%ebp)
4215f1:	c7 45 e4 70 09 00 00 	movl   $0x970,-0x1c(%ebp)
4215f8:	c7 45 e0 e6 09 00 00 	movl   $0x9e6,-0x20(%ebp)
4215ff:	c7 45 dc f0 09 00 00 	movl   $0x9f0,-0x24(%ebp)
421606:	c7 45 d8 66 0a 00 00 	movl   $0xa66,-0x28(%ebp)
42160d:	c7 45 d4 70 0a 00 00 	movl   $0xa70,-0x2c(%ebp)
421614:	c7 45 d0 e6 0a 00 00 	movl   $0xae6,-0x30(%ebp)
42161b:	c7 45 cc f0 0a 00 00 	movl   $0xaf0,-0x34(%ebp)
421622:	c7 45 c8 66 0b 00 00 	movl   $0xb66,-0x38(%ebp)
421629:	c7 45 c4 70 0b 00 00 	movl   $0xb70,-0x3c(%ebp)
421630:	c7 45 c0 66 0c 00 00 	movl   $0xc66,-0x40(%ebp)
421637:	c7 45 bc 70 0c 00 00 	movl   $0xc70,-0x44(%ebp)
42163e:	c7 45 b8 e6 0c 00 00 	movl   $0xce6,-0x48(%ebp)
421645:	c7 45 b4 f0 0c 00 00 	movl   $0xcf0,-0x4c(%ebp)
42164c:	c7 45 b0 66 0d 00 00 	movl   $0xd66,-0x50(%ebp)
421653:	c7 45 ac 70 0d 00 00 	movl   $0xd70,-0x54(%ebp)
42165a:	c7 45 a8 50 0e 00 00 	movl   $0xe50,-0x58(%ebp)
421661:	c7 45 a4 5a 0e 00 00 	movl   $0xe5a,-0x5c(%ebp)
421668:	c7 45 a0 d0 0e 00 00 	movl   $0xed0,-0x60(%ebp)
42166f:	c7 45 9c da 0e 00 00 	movl   $0xeda,-0x64(%ebp)
421676:	c7 45 98 20 0f 00 00 	movl   $0xf20,-0x68(%ebp)
42167d:	c7 45 94 2a 0f 00 00 	movl   $0xf2a,-0x6c(%ebp)
421684:	c7 45 90 40 10 00 00 	movl   $0x1040,-0x70(%ebp)
42168b:	c7 45 8c 4a 10 00 00 	movl   $0x104a,-0x74(%ebp)
421692:	c7 45 88 e0 17 00 00 	movl   $0x17e0,-0x78(%ebp)
421699:	c7 45 84 ea 17 00 00 	movl   $0x17ea,-0x7c(%ebp)
4216a0:	c7 45 80 10 18 00 00 	movl   $0x1810,-0x80(%ebp)
4216a7:	c7 85 7c ff ff ff 1a 	movl   $0x181a,-0x84(%ebp)
4216ae:	18 00 00
4216b1:	c7 85 78 ff ff ff 1a 	movl   $0xff1a,-0x88(%ebp)
4216b8:	ff 00 00
4216bb:	6a 30                	push   $0x30
4216bd:	5a                   	pop    %edx
4216be:	85 ff                	test   %edi,%edi
4216c0:	74 09                	je     0x4216cb
4216c2:	83 ff 10             	cmp    $0x10,%edi
4216c5:	0f 85 e2 01 00 00    	jne    0x4218ad
4216cb:	66 3b f2             	cmp    %dx,%si
4216ce:	0f 82 66 01 00 00    	jb     0x42183a
4216d4:	66 3b b5 74 ff ff ff 	cmp    -0x8c(%ebp),%si
4216db:	73 0a                	jae    0x4216e7
4216dd:	0f b7 c6             	movzwl %si,%eax
4216e0:	2b c2                	sub    %edx,%eax
4216e2:	e9 4e 01 00 00       	jmp    0x421835
4216e7:	66 3b f0             	cmp    %ax,%si
4216ea:	0f 83 34 01 00 00    	jae    0x421824
4216f0:	8b 55 f8             	mov    -0x8(%ebp),%edx
4216f3:	66 3b f2             	cmp    %dx,%si
4216f6:	0f 82 3e 01 00 00    	jb     0x42183a
4216fc:	66 3b 75 f4          	cmp    -0xc(%ebp),%si
421700:	72 db                	jb     0x4216dd
421702:	8b 55 f0             	mov    -0x10(%ebp),%edx
421705:	66 3b f2             	cmp    %dx,%si
421708:	0f 82 2c 01 00 00    	jb     0x42183a
42170e:	66 3b 75 ec          	cmp    -0x14(%ebp),%si
421712:	72 c9                	jb     0x4216dd
421714:	8b 55 e8             	mov    -0x18(%ebp),%edx
421717:	66 3b f2             	cmp    %dx,%si
42171a:	0f 82 1a 01 00 00    	jb     0x42183a
421720:	66 3b 75 e4          	cmp    -0x1c(%ebp),%si
421724:	72 b7                	jb     0x4216dd
421726:	8b 55 e0             	mov    -0x20(%ebp),%edx
421729:	66 3b f2             	cmp    %dx,%si
42172c:	0f 82 08 01 00 00    	jb     0x42183a
421732:	66 3b 75 dc          	cmp    -0x24(%ebp),%si
421736:	72 a5                	jb     0x4216dd
421738:	8b 55 d8             	mov    -0x28(%ebp),%edx
42173b:	66 3b f2             	cmp    %dx,%si
42173e:	0f 82 f6 00 00 00    	jb     0x42183a
421744:	66 3b 75 d4          	cmp    -0x2c(%ebp),%si
421748:	72 93                	jb     0x4216dd
42174a:	8b 55 d0             	mov    -0x30(%ebp),%edx
42174d:	66 3b f2             	cmp    %dx,%si
421750:	0f 82 e4 00 00 00    	jb     0x42183a
421756:	66 3b 75 cc          	cmp    -0x34(%ebp),%si
42175a:	72 81                	jb     0x4216dd
42175c:	8b 55 c8             	mov    -0x38(%ebp),%edx
42175f:	66 3b f2             	cmp    %dx,%si
421762:	0f 82 d2 00 00 00    	jb     0x42183a
421768:	66 3b 75 c4          	cmp    -0x3c(%ebp),%si
42176c:	0f 82 6b ff ff ff    	jb     0x4216dd
421772:	8b 55 c0             	mov    -0x40(%ebp),%edx
421775:	66 3b f2             	cmp    %dx,%si
421778:	0f 82 bc 00 00 00    	jb     0x42183a
42177e:	66 3b 75 bc          	cmp    -0x44(%ebp),%si
421782:	0f 82 55 ff ff ff    	jb     0x4216dd
421788:	8b 55 b8             	mov    -0x48(%ebp),%edx
42178b:	66 3b f2             	cmp    %dx,%si
42178e:	0f 82 a6 00 00 00    	jb     0x42183a
421794:	66 3b 75 b4          	cmp    -0x4c(%ebp),%si
421798:	0f 82 3f ff ff ff    	jb     0x4216dd
42179e:	8b 55 b0             	mov    -0x50(%ebp),%edx
4217a1:	66 3b f2             	cmp    %dx,%si
4217a4:	0f 82 90 00 00 00    	jb     0x42183a
4217aa:	66 3b 75 ac          	cmp    -0x54(%ebp),%si
4217ae:	0f 82 29 ff ff ff    	jb     0x4216dd
4217b4:	8b 55 a8             	mov    -0x58(%ebp),%edx
4217b7:	66 3b f2             	cmp    %dx,%si
4217ba:	72 7e                	jb     0x42183a
4217bc:	66 3b 75 a4          	cmp    -0x5c(%ebp),%si
4217c0:	0f 82 17 ff ff ff    	jb     0x4216dd
4217c6:	8b 55 a0             	mov    -0x60(%ebp),%edx
4217c9:	66 3b f2             	cmp    %dx,%si
4217cc:	72 6c                	jb     0x42183a
4217ce:	66 3b 75 9c          	cmp    -0x64(%ebp),%si
4217d2:	0f 82 05 ff ff ff    	jb     0x4216dd
4217d8:	8b 55 98             	mov    -0x68(%ebp),%edx
4217db:	66 3b f2             	cmp    %dx,%si
4217de:	72 5a                	jb     0x42183a
4217e0:	66 3b 75 94          	cmp    -0x6c(%ebp),%si
4217e4:	0f 82 f3 fe ff ff    	jb     0x4216dd
4217ea:	8b 55 90             	mov    -0x70(%ebp),%edx
4217ed:	66 3b f2             	cmp    %dx,%si
4217f0:	72 48                	jb     0x42183a
4217f2:	66 3b 75 8c          	cmp    -0x74(%ebp),%si
4217f6:	0f 82 e1 fe ff ff    	jb     0x4216dd
4217fc:	8b 55 88             	mov    -0x78(%ebp),%edx
4217ff:	66 3b f2             	cmp    %dx,%si
421802:	72 36                	jb     0x42183a
421804:	66 3b 75 84          	cmp    -0x7c(%ebp),%si
421808:	0f 82 cf fe ff ff    	jb     0x4216dd
42180e:	8b 55 80             	mov    -0x80(%ebp),%edx
421811:	66 3b f2             	cmp    %dx,%si
421814:	72 24                	jb     0x42183a
421816:	66 3b b5 7c ff ff ff 	cmp    -0x84(%ebp),%si
42181d:	73 1b                	jae    0x42183a
42181f:	e9 b9 fe ff ff       	jmp    0x4216dd
421824:	66 3b b5 78 ff ff ff 	cmp    -0x88(%ebp),%si
42182b:	73 0d                	jae    0x42183a
42182d:	0f b7 c6             	movzwl %si,%eax
421830:	2d 10 ff 00 00       	sub    $0xff10,%eax
421835:	83 f8 ff             	cmp    $0xffffffff,%eax
421838:	75 28                	jne    0x421862
42183a:	0f b7 c6             	movzwl %si,%eax
42183d:	83 f8 41             	cmp    $0x41,%eax
421840:	72 0a                	jb     0x42184c
421842:	83 f8 5a             	cmp    $0x5a,%eax
421845:	77 05                	ja     0x42184c
421847:	8d 48 9f             	lea    -0x61(%eax),%ecx
42184a:	eb 08                	jmp    0x421854
42184c:	8d 48 9f             	lea    -0x61(%eax),%ecx
42184f:	83 f9 19             	cmp    $0x19,%ecx
421852:	77 4f                	ja     0x4218a3
421854:	83 f9 19             	cmp    $0x19,%ecx
421857:	77 03                	ja     0x42185c
421859:	83 c0 e0             	add    $0xffffffe0,%eax
42185c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
42185f:	83 c0 c9             	add    $0xffffffc9,%eax
421862:	85 c0                	test   %eax,%eax
421864:	75 3d                	jne    0x4218a3
421866:	0f b7 01             	movzwl (%ecx),%eax
421869:	83 c1 02             	add    $0x2,%ecx
42186c:	89 4d 0c             	mov    %ecx,0xc(%ebp)
42186f:	83 f8 78             	cmp    $0x78,%eax
421872:	74 1a                	je     0x42188e
421874:	83 f8 58             	cmp    $0x58,%eax
421877:	74 15                	je     0x42188e
421879:	85 ff                	test   %edi,%edi
42187b:	75 06                	jne    0x421883
42187d:	6a 08                	push   $0x8
42187f:	5f                   	pop    %edi
421880:	89 7d 14             	mov    %edi,0x14(%ebp)
421883:	50                   	push   %eax
421884:	8d 4d 0c             	lea    0xc(%ebp),%ecx
421887:	e8 e4 2c 00 00       	call   0x424570
42188c:	eb 1f                	jmp    0x4218ad
42188e:	85 ff                	test   %edi,%edi
421890:	75 06                	jne    0x421898
421892:	6a 10                	push   $0x10
421894:	5f                   	pop    %edi
421895:	89 7d 14             	mov    %edi,0x14(%ebp)
421898:	0f b7 31             	movzwl (%ecx),%esi
42189b:	83 c1 02             	add    $0x2,%ecx
42189e:	89 4d 0c             	mov    %ecx,0xc(%ebp)
4218a1:	eb 0a                	jmp    0x4218ad
4218a3:	85 ff                	test   %edi,%edi
4218a5:	75 06                	jne    0x4218ad
4218a7:	6a 0a                	push   $0xa
4218a9:	5f                   	pop    %edi
4218aa:	89 7d 14             	mov    %edi,0x14(%ebp)
4218ad:	83 c8 ff             	or     $0xffffffff,%eax
4218b0:	33 d2                	xor    %edx,%edx
4218b2:	f7 f7                	div    %edi
4218b4:	8b f8                	mov    %eax,%edi
4218b6:	6a 30                	push   $0x30
4218b8:	58                   	pop    %eax
4218b9:	66 3b f0             	cmp    %ax,%si
4218bc:	0f 82 4c 01 00 00    	jb     0x421a0e
4218c2:	6a 3a                	push   $0x3a
4218c4:	59                   	pop    %ecx
4218c5:	66 3b f1             	cmp    %cx,%si
4218c8:	0f 82 36 01 00 00    	jb     0x421a04
4218ce:	b8 10 ff 00 00       	mov    $0xff10,%eax
4218d3:	66 3b f0             	cmp    %ax,%si
4218d6:	0f 83 1f 01 00 00    	jae    0x4219fb
4218dc:	8b 45 f8             	mov    -0x8(%ebp),%eax
4218df:	66 3b f0             	cmp    %ax,%si
4218e2:	0f 82 26 01 00 00    	jb     0x421a0e
4218e8:	66 3b 75 f4          	cmp    -0xc(%ebp),%si
4218ec:	0f 82 12 01 00 00    	jb     0x421a04
4218f2:	8b 45 f0             	mov    -0x10(%ebp),%eax
4218f5:	66 3b f0             	cmp    %ax,%si
4218f8:	0f 82 10 01 00 00    	jb     0x421a0e
4218fe:	66 3b 75 ec          	cmp    -0x14(%ebp),%si
421902:	0f 82 fc 00 00 00    	jb     0x421a04
421908:	8b 45 e8             	mov    -0x18(%ebp),%eax
42190b:	66 3b f0             	cmp    %ax,%si
42190e:	0f 82 fa 00 00 00    	jb     0x421a0e
421914:	66 3b 75 e4          	cmp    -0x1c(%ebp),%si
421918:	0f 82 e6 00 00 00    	jb     0x421a04
42191e:	8b 45 e0             	mov    -0x20(%ebp),%eax
421921:	66 3b f0             	cmp    %ax,%si
421924:	0f 82 e4 00 00 00    	jb     0x421a0e
42192a:	66 3b 75 dc          	cmp    -0x24(%ebp),%si
42192e:	0f 82 d0 00 00 00    	jb     0x421a04
421934:	8b 45 d8             	mov    -0x28(%ebp),%eax
421937:	66 3b f0             	cmp    %ax,%si
42193a:	0f 82 ce 00 00 00    	jb     0x421a0e
421940:	66 3b 75 d4          	cmp    -0x2c(%ebp),%si
421944:	0f 82 ba 00 00 00    	jb     0x421a04
42194a:	8b 45 d0             	mov    -0x30(%ebp),%eax
42194d:	66 3b f0             	cmp    %ax,%si
421950:	0f 82 b8 00 00 00    	jb     0x421a0e
421956:	66 3b 75 cc          	cmp    -0x34(%ebp),%si
42195a:	0f 82 a4 00 00 00    	jb     0x421a04
421960:	8b 45 c8             	mov    -0x38(%ebp),%eax
421963:	66 3b f0             	cmp    %ax,%si
421966:	0f 82 a2 00 00 00    	jb     0x421a0e
42196c:	66 3b 75 c4          	cmp    -0x3c(%ebp),%si
421970:	0f 82 8e 00 00 00    	jb     0x421a04
421976:	8b 45 c0             	mov    -0x40(%ebp),%eax
421979:	66 3b f0             	cmp    %ax,%si
42197c:	0f 82 8c 00 00 00    	jb     0x421a0e
421982:	66 3b 75 bc          	cmp    -0x44(%ebp),%si
421986:	72 7c                	jb     0x421a04
421988:	8b 45 b8             	mov    -0x48(%ebp),%eax
42198b:	66 3b f0             	cmp    %ax,%si
42198e:	72 7e                	jb     0x421a0e
421990:	66 3b 75 b4          	cmp    -0x4c(%ebp),%si
421994:	72 6e                	jb     0x421a04
421996:	8b 45 b0             	mov    -0x50(%ebp),%eax
421999:	66 3b f0             	cmp    %ax,%si
42199c:	72 70                	jb     0x421a0e
42199e:	66 3b 75 ac          	cmp    -0x54(%ebp),%si
4219a2:	72 60                	jb     0x421a04
4219a4:	8b 45 a8             	mov    -0x58(%ebp),%eax
4219a7:	66 3b f0             	cmp    %ax,%si
4219aa:	72 62                	jb     0x421a0e
4219ac:	66 3b 75 a4          	cmp    -0x5c(%ebp),%si
4219b0:	72 52                	jb     0x421a04
4219b2:	8b 45 a0             	mov    -0x60(%ebp),%eax
4219b5:	66 3b f0             	cmp    %ax,%si
4219b8:	72 54                	jb     0x421a0e
4219ba:	66 3b 75 9c          	cmp    -0x64(%ebp),%si
4219be:	72 44                	jb     0x421a04
4219c0:	8b 45 98             	mov    -0x68(%ebp),%eax
4219c3:	66 3b f0             	cmp    %ax,%si
4219c6:	72 46                	jb     0x421a0e
4219c8:	66 3b 75 94          	cmp    -0x6c(%ebp),%si
4219cc:	72 36                	jb     0x421a04
4219ce:	8b 45 90             	mov    -0x70(%ebp),%eax
4219d1:	66 3b f0             	cmp    %ax,%si
4219d4:	72 38                	jb     0x421a0e
4219d6:	66 3b 75 8c          	cmp    -0x74(%ebp),%si
4219da:	72 28                	jb     0x421a04
4219dc:	8b 45 88             	mov    -0x78(%ebp),%eax
4219df:	66 3b f0             	cmp    %ax,%si
4219e2:	72 2a                	jb     0x421a0e
4219e4:	66 3b 75 84          	cmp    -0x7c(%ebp),%si
4219e8:	72 1a                	jb     0x421a04
4219ea:	8b 45 80             	mov    -0x80(%ebp),%eax
4219ed:	66 3b f0             	cmp    %ax,%si
4219f0:	72 1c                	jb     0x421a0e
4219f2:	66 3b b5 7c ff ff ff 	cmp    -0x84(%ebp),%si
4219f9:	eb 07                	jmp    0x421a02
4219fb:	66 3b b5 78 ff ff ff 	cmp    -0x88(%ebp),%si
421a02:	73 0a                	jae    0x421a0e
421a04:	0f b7 ce             	movzwl %si,%ecx
421a07:	2b c8                	sub    %eax,%ecx
421a09:	83 f9 ff             	cmp    $0xffffffff,%ecx
421a0c:	75 2e                	jne    0x421a3c
421a0e:	0f b7 ce             	movzwl %si,%ecx
421a11:	83 f9 41             	cmp    $0x41,%ecx
421a14:	72 05                	jb     0x421a1b
421a16:	83 f9 5a             	cmp    $0x5a,%ecx
421a19:	76 0b                	jbe    0x421a26
421a1b:	83 f9 61             	cmp    $0x61,%ecx
421a1e:	72 19                	jb     0x421a39
421a20:	66 83 fe 7a          	cmp    $0x7a,%si
421a24:	77 13                	ja     0x421a39
421a26:	6a 19                	push   $0x19
421a28:	8d 46 9f             	lea    -0x61(%esi),%eax
421a2b:	5a                   	pop    %edx
421a2c:	66 3b c2             	cmp    %dx,%ax
421a2f:	77 03                	ja     0x421a34
421a31:	83 c1 e0             	add    $0xffffffe0,%ecx
421a34:	83 c1 c9             	add    $0xffffffc9,%ecx
421a37:	eb 03                	jmp    0x421a3c
421a39:	83 c9 ff             	or     $0xffffffff,%ecx
421a3c:	8b 55 14             	mov    0x14(%ebp),%edx