40d3c7:	80 38 6c             	cmpb   $0x6c,(%eax)
40d3ca:	75 0d                	jne    0x40d3d9
40d3cc:	40                   	inc    %eax
40d3cd:	c7 41 2c 04 00 00 00 	movl   $0x4,0x2c(%ecx)
40d3d4:	89 41 10             	mov    %eax,0x10(%ecx)
40d3d7:	eb 07                	jmp    0x40d3e0
40d3d9:	c7 41 2c 03 00 00 00 	movl   $0x3,0x2c(%ecx)
40d3e0:	b0 01                	mov    $0x1,%al
40d3e2:	c3                   	ret
40d3e3:	8a 41 31             	mov    0x31(%ecx),%al
40d3e6:	3c 46                	cmp    $0x46,%al
40d3e8:	75 1a                	jne    0x40d404
40d3ea:	8b 01                	mov    (%ecx),%eax
40d3ec:	83 e0 08             	and    $0x8,%eax
40d3ef:	83 c8 00             	or     $0x0,%eax
40d3f2:	0f 85 51 01 00 00    	jne    0x40d549
40d3f8:	c7 41 1c 07 00 00 00 	movl   $0x7,0x1c(%ecx)
40d3ff:	e9 f3 04 00 00       	jmp    0x40d8f7
40d404:	3c 4e                	cmp    $0x4e,%al
40d406:	75 26                	jne    0x40d42e
40d408:	8b 01                	mov    (%ecx),%eax
40d40a:	6a 08                	push   $0x8
40d40c:	5a                   	pop    %edx
40d40d:	23 c2                	and    %edx,%eax
40d40f:	83 c8 00             	or     $0x0,%eax
40d412:	0f 85 31 01 00 00    	jne    0x40d549
40d418:	89 51 1c             	mov    %edx,0x1c(%ecx)
40d41b:	e8 4b 76 00 00       	call   0x414a6b
40d420:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
40d426:	e8 b7 e8 ff ff       	call   0x40bce2
40d42b:	32 c0                	xor    %al,%al
40d42d:	c3                   	ret
40d42e:	83 79 2c 00          	cmpl   $0x0,0x2c(%ecx)
40d432:	75 e7                	jne    0x40d41b
40d434:	0f be c0             	movsbl %al,%eax
40d437:	83 f8 6a             	cmp    $0x6a,%eax
40d43a:	0f 8f be 00 00 00    	jg     0x40d4fe
40d440:	0f 84 af 00 00 00    	je     0x40d4f5
40d446:	83 f8 49             	cmp    $0x49,%eax
40d449:	74 4f                	je     0x40d49a
40d44b:	83 f8 4c             	cmp    $0x4c,%eax
40d44e:	74 3e                	je     0x40d48e
40d450:	83 f8 54             	cmp    $0x54,%eax
40d453:	74 2d                	je     0x40d482
40d455:	83 f8 68             	cmp    $0x68,%eax
40d458:	0f 85 eb 00 00 00    	jne    0x40d549
40d45e:	8b 41 10             	mov    0x10(%ecx),%eax
40d461:	80 38 68             	cmpb   $0x68,(%eax)
40d464:	75 10                	jne    0x40d476
40d466:	40                   	inc    %eax
40d467:	c7 41 2c 01 00 00 00 	movl   $0x1,0x2c(%ecx)
40d46e:	89 41 10             	mov    %eax,0x10(%ecx)
40d471:	e9 d3 00 00 00       	jmp    0x40d549
40d476:	c7 41 2c 02 00 00 00 	movl   $0x2,0x2c(%ecx)
40d47d:	e9 c7 00 00 00       	jmp    0x40d549
40d482:	c7 41 2c 0d 00 00 00 	movl   $0xd,0x2c(%ecx)
40d489:	e9 bb 00 00 00       	jmp    0x40d549
40d48e:	c7 41 2c 08 00 00 00 	movl   $0x8,0x2c(%ecx)
40d495:	e9 af 00 00 00       	jmp    0x40d549
40d49a:	8b 51 10             	mov    0x10(%ecx),%edx
40d49d:	8a 02                	mov    (%edx),%al
40d49f:	3c 33                	cmp    $0x33,%al
40d4a1:	75 18                	jne    0x40d4bb
40d4a3:	80 7a 01 32          	cmpb   $0x32,0x1(%edx)
40d4a7:	75 12                	jne    0x40d4bb
40d4a9:	8d 42 02             	lea    0x2(%edx),%eax
40d4ac:	c7 41 2c 0a 00 00 00 	movl   $0xa,0x2c(%ecx)
40d4b3:	89 41 10             	mov    %eax,0x10(%ecx)
40d4b6:	e9 8e 00 00 00       	jmp    0x40d549
40d4bb:	3c 36                	cmp    $0x36,%al
40d4bd:	75 15                	jne    0x40d4d4
40d4bf:	80 7a 01 34          	cmpb   $0x34,0x1(%edx)
40d4c3:	75 0f                	jne    0x40d4d4
40d4c5:	8d 42 02             	lea    0x2(%edx),%eax
40d4c8:	c7 41 2c 0b 00 00 00 	movl   $0xb,0x2c(%ecx)
40d4cf:	89 41 10             	mov    %eax,0x10(%ecx)
40d4d2:	eb 75                	jmp    0x40d549
40d4d4:	3c 64                	cmp    $0x64,%al
40d4d6:	74 14                	je     0x40d4ec
40d4d8:	3c 69                	cmp    $0x69,%al
40d4da:	74 10                	je     0x40d4ec
40d4dc:	3c 6f                	cmp    $0x6f,%al
40d4de:	74 0c                	je     0x40d4ec
40d4e0:	3c 75                	cmp    $0x75,%al
40d4e2:	74 08                	je     0x40d4ec
40d4e4:	3c 78                	cmp    $0x78,%al
40d4e6:	74 04                	je     0x40d4ec
40d4e8:	3c 58                	cmp    $0x58,%al
40d4ea:	75 5d                	jne    0x40d549
40d4ec:	c7 41 2c 09 00 00 00 	movl   $0x9,0x2c(%ecx)
40d4f3:	eb 54                	jmp    0x40d549
40d4f5:	c7 41 2c 05 00 00 00 	movl   $0x5,0x2c(%ecx)
40d4fc:	eb 4b                	jmp    0x40d549
40d4fe:	83 f8 6c             	cmp    $0x6c,%eax
40d501:	74 2a                	je     0x40d52d
40d503:	83 f8 74             	cmp    $0x74,%eax
40d506:	74 1c                	je     0x40d524
40d508:	83 f8 77             	cmp    $0x77,%eax
40d50b:	74 0e                	je     0x40d51b
40d50d:	83 f8 7a             	cmp    $0x7a,%eax
40d510:	75 37                	jne    0x40d549
40d512:	c7 41 2c 06 00 00 00 	movl   $0x6,0x2c(%ecx)
40d519:	eb 2e                	jmp    0x40d549
40d51b:	c7 41 2c 0c 00 00 00 	movl   $0xc,0x2c(%ecx)
40d522:	eb 25                	jmp    0x40d549
40d524:	c7 41 2c 07 00 00 00 	movl   $0x7,0x2c(%ecx)
40d52b:	eb 1c                	jmp    0x40d549
40d52d:	8b 41 10             	mov    0x10(%ecx),%eax
40d530:	80 38 6c             	cmpb   $0x6c,(%eax)
40d533:	75 0d                	jne    0x40d542
40d535:	40                   	inc    %eax
40d536:	c7 41 2c 04 00 00 00 	movl   $0x4,0x2c(%ecx)
40d53d:	89 41 10             	mov    %eax,0x10(%ecx)
40d540:	eb 07                	jmp    0x40d549
40d542:	c7 41 2c 03 00 00 00 	movl   $0x3,0x2c(%ecx)
40d549:	b0 01                	mov    $0x1,%al
40d54b:	c3                   	ret
40d54c:	0f b7 41 32          	movzwl 0x32(%ecx),%eax
40d550:	83 f8 46             	cmp    $0x46,%eax
40d553:	75 1a                	jne    0x40d56f
40d555:	8b 01                	mov    (%ecx),%eax
40d557:	83 e0 08             	and    $0x8,%eax
40d55a:	83 c8 00             	or     $0x0,%eax
40d55d:	0f 85 62 01 00 00    	jne    0x40d6c5
40d563:	c7 41 1c 07 00 00 00 	movl   $0x7,0x1c(%ecx)
40d56a:	e9 b7 05 00 00       	jmp    0x40db26
40d56f:	83 f8 4e             	cmp    $0x4e,%eax
40d572:	75 26                	jne    0x40d59a
40d574:	8b 01                	mov    (%ecx),%eax
40d576:	6a 08                	push   $0x8
40d578:	5a                   	pop    %edx
40d579:	23 c2                	and    %edx,%eax
40d57b:	83 c8 00             	or     $0x0,%eax
40d57e:	0f 85 41 01 00 00    	jne    0x40d6c5
40d584:	89 51 1c             	mov    %edx,0x1c(%ecx)
40d587:	e8 df 74 00 00       	call   0x414a6b
40d58c:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
40d592:	e8 4b e7 ff ff       	call   0x40bce2
40d597:	32 c0                	xor    %al,%al
40d599:	c3                   	ret
40d59a:	83 79 2c 00          	cmpl   $0x0,0x2c(%ecx)
40d59e:	75 e7                	jne    0x40d587
40d5a0:	83 f8 6a             	cmp    $0x6a,%eax
40d5a3:	0f 8f cd 00 00 00    	jg     0x40d676
40d5a9:	0f 84 be 00 00 00    	je     0x40d66d
40d5af:	83 f8 49             	cmp    $0x49,%eax
40d5b2:	74 53                	je     0x40d607
40d5b4:	83 f8 4c             	cmp    $0x4c,%eax
40d5b7:	74 42                	je     0x40d5fb
40d5b9:	83 f8 54             	cmp    $0x54,%eax
40d5bc:	74 31                	je     0x40d5ef
40d5be:	6a 68                	push   $0x68
40d5c0:	5a                   	pop    %edx
40d5c1:	3b c2                	cmp    %edx,%eax
40d5c3:	0f 85 fc 00 00 00    	jne    0x40d6c5
40d5c9:	8b 41 10             	mov    0x10(%ecx),%eax
40d5cc:	66 39 10             	cmp    %dx,(%eax)
40d5cf:	75 12                	jne    0x40d5e3
40d5d1:	83 c0 02             	add    $0x2,%eax
40d5d4:	c7 41 2c 01 00 00 00 	movl   $0x1,0x2c(%ecx)
40d5db:	89 41 10             	mov    %eax,0x10(%ecx)
40d5de:	e9 e2 00 00 00       	jmp    0x40d6c5
40d5e3:	c7 41 2c 02 00 00 00 	movl   $0x2,0x2c(%ecx)
40d5ea:	e9 d6 00 00 00       	jmp    0x40d6c5
40d5ef:	c7 41 2c 0d 00 00 00 	movl   $0xd,0x2c(%ecx)
40d5f6:	e9 ca 00 00 00       	jmp    0x40d6c5
40d5fb:	c7 41 2c 08 00 00 00 	movl   $0x8,0x2c(%ecx)
40d602:	e9 be 00 00 00       	jmp    0x40d6c5
40d607:	8b 51 10             	mov    0x10(%ecx),%edx
40d60a:	0f b7 02             	movzwl (%edx),%eax
40d60d:	83 f8 33             	cmp    $0x33,%eax
40d610:	75 19                	jne    0x40d62b
40d612:	66 83 7a 02 32       	cmpw   $0x32,0x2(%edx)
40d617:	75 12                	jne    0x40d62b
40d619:	8d 42 04             	lea    0x4(%edx),%eax
40d61c:	c7 41 2c 0a 00 00 00 	movl   $0xa,0x2c(%ecx)
40d623:	89 41 10             	mov    %eax,0x10(%ecx)
40d626:	e9 9a 00 00 00       	jmp    0x40d6c5
40d62b:	83 f8 36             	cmp    $0x36,%eax
40d62e:	75 16                	jne    0x40d646
40d630:	66 83 7a 02 34       	cmpw   $0x34,0x2(%edx)
40d635:	75 0f                	jne    0x40d646
40d637:	8d 42 04             	lea    0x4(%edx),%eax
40d63a:	c7 41 2c 0b 00 00 00 	movl   $0xb,0x2c(%ecx)
40d641:	89 41 10             	mov    %eax,0x10(%ecx)
40d644:	eb 7f                	jmp    0x40d6c5
40d646:	83 f8 64             	cmp    $0x64,%eax
40d649:	74 19                	je     0x40d664
40d64b:	83 f8 69             	cmp    $0x69,%eax
40d64e:	74 14                	je     0x40d664
40d650:	83 f8 6f             	cmp    $0x6f,%eax
40d653:	74 0f                	je     0x40d664
40d655:	83 f8 75             	cmp    $0x75,%eax
40d658:	74 0a                	je     0x40d664
40d65a:	83 f8 78             	cmp    $0x78,%eax
40d65d:	74 05                	je     0x40d664
40d65f:	83 f8 58             	cmp    $0x58,%eax
40d662:	75 61                	jne    0x40d6c5
40d664:	c7 41 2c 09 00 00 00 	movl   $0x9,0x2c(%ecx)
40d66b:	eb 58                	jmp    0x40d6c5
40d66d:	c7 41 2c 05 00 00 00 	movl   $0x5,0x2c(%ecx)
40d674:	eb 4f                	jmp    0x40d6c5
40d676:	6a 6c                	push   $0x6c
40d678:	5a                   	pop    %edx
40d679:	3b c2                	cmp    %edx,%eax
40d67b:	74 2a                	je     0x40d6a7
40d67d:	83 f8 74             	cmp    $0x74,%eax
40d680:	74 1c                	je     0x40d69e
40d682:	83 f8 77             	cmp    $0x77,%eax
40d685:	74 0e                	je     0x40d695
40d687:	83 f8 7a             	cmp    $0x7a,%eax
40d68a:	75 39                	jne    0x40d6c5
40d68c:	c7 41 2c 06 00 00 00 	movl   $0x6,0x2c(%ecx)
40d693:	eb 30                	jmp    0x40d6c5
40d695:	c7 41 2c 0c 00 00 00 	movl   $0xc,0x2c(%ecx)
40d69c:	eb 27                	jmp    0x40d6c5
40d69e:	c7 41 2c 07 00 00 00 	movl   $0x7,0x2c(%ecx)
40d6a5:	eb 1e                	jmp    0x40d6c5
40d6a7:	8b 41 10             	mov    0x10(%ecx),%eax
40d6aa:	66 39 10             	cmp    %dx,(%eax)
40d6ad:	75 0f                	jne    0x40d6be
40d6af:	83 c0 02             	add    $0x2,%eax
40d6b2:	c7 41 2c 04 00 00 00 	movl   $0x4,0x2c(%ecx)
40d6b9:	89 41 10             	mov    %eax,0x10(%ecx)
40d6bc:	eb 07                	jmp    0x40d6c5
40d6be:	c7 41 2c 03 00 00 00 	movl   $0x3,0x2c(%ecx)
40d6c5:	b0 01                	mov    $0x1,%al
40d6c7:	c3                   	ret
40d6c8:	8b ff                	mov    %edi,%edi
40d6ca:	55                   	push   %ebp
40d6cb:	8b ec                	mov    %esp,%ebp
40d6cd:	51                   	push   %ecx
40d6ce:	53                   	push   %ebx
40d6cf:	56                   	push   %esi
40d6d0:	8b f1                	mov    %ecx,%esi
40d6d2:	33 db                	xor    %ebx,%ebx
40d6d4:	43                   	inc    %ebx
40d6d5:	33 c9                	xor    %ecx,%ecx
40d6d7:	0f be 46 31          	movsbl 0x31(%esi),%eax
40d6db:	83 f8 64             	cmp    $0x64,%eax
40d6de:	7f 6c                	jg     0x40d74c
40d6e0:	0f 84 93 00 00 00    	je     0x40d779
40d6e6:	83 f8 58             	cmp    $0x58,%eax
40d6e9:	7f 3e                	jg     0x40d729
40d6eb:	74 37                	je     0x40d724
40d6ed:	83 f8 41             	cmp    $0x41,%eax
40d6f0:	0f 84 93 00 00 00    	je     0x40d789
40d6f6:	83 f8 43             	cmp    $0x43,%eax
40d6f9:	74 3e                	je     0x40d739
40d6fb:	83 f8 44             	cmp    $0x44,%eax
40d6fe:	7e 1d                	jle    0x40d71d
40d700:	83 f8 47             	cmp    $0x47,%eax
40d703:	0f 8e 80 00 00 00    	jle    0x40d789
40d709:	83 f8 53             	cmp    $0x53,%eax
40d70c:	75 0f                	jne    0x40d71d
40d70e:	8b ce                	mov    %esi,%ecx
40d710:	e8 32 14 00 00       	call   0x40eb47
40d715:	84 c0                	test   %al,%al
40d717:	0f 85 9f 00 00 00    	jne    0x40d7bc
40d71d:	32 c0                	xor    %al,%al
40d71f:	e9 cd 01 00 00       	jmp    0x40d8f1
40d724:	53                   	push   %ebx
40d725:	6a 10                	push   $0x10
40d727:	eb 57                	jmp    0x40d780
40d729:	83 e8 5a             	sub    $0x5a,%eax
40d72c:	74 15                	je     0x40d743
40d72e:	83 e8 07             	sub    $0x7,%eax
40d731:	74 56                	je     0x40d789
40d733:	48                   	dec    %eax
40d734:	83 e8 01             	sub    $0x1,%eax
40d737:	75 e4                	jne    0x40d71d
40d739:	51                   	push   %ecx
40d73a:	8b ce                	mov    %esi,%ecx
40d73c:	e8 6f 0c 00 00       	call   0x40e3b0
40d741:	eb d2                	jmp    0x40d715
40d743:	8b ce                	mov    %esi,%ecx
40d745:	e8 17 07 00 00       	call   0x40de61
40d74a:	eb c9                	jmp    0x40d715
40d74c:	83 f8 70             	cmp    $0x70,%eax
40d74f:	7f 4d                	jg     0x40d79e
40d751:	74 3f                	je     0x40d792
40d753:	83 f8 67             	cmp    $0x67,%eax
40d756:	7e 31                	jle    0x40d789
40d758:	83 f8 69             	cmp    $0x69,%eax
40d75b:	74 1c                	je     0x40d779
40d75d:	83 f8 6e             	cmp    $0x6e,%eax
40d760:	74 0e                	je     0x40d770
40d762:	83 f8 6f             	cmp    $0x6f,%eax
40d765:	75 b6                	jne    0x40d71d
40d767:	8b ce                	mov    %esi,%ecx
40d769:	e8 34 13 00 00       	call   0x40eaa2
40d76e:	eb a5                	jmp    0x40d715
40d770:	8b ce                	mov    %esi,%ecx
40d772:	e8 cf 11 00 00       	call   0x40e946
40d777:	eb 9c                	jmp    0x40d715
40d779:	83 4e 20 10          	orl    $0x10,0x20(%esi)
40d77d:	51                   	push   %ecx
40d77e:	6a 0a                	push   $0xa
40d780:	8b ce                	mov    %esi,%ecx
40d782:	e8 e1 0d 00 00       	call   0x40e568
40d787:	eb 8c                	jmp    0x40d715
40d789:	8b ce                	mov    %esi,%ecx
40d78b:	e8 fa 07 00 00       	call   0x40df8a
40d790:	eb 83                	jmp    0x40d715
40d792:	8b ce                	mov    %esi,%ecx
40d794:	e8 66 13 00 00       	call   0x40eaff
40d799:	e9 77 ff ff ff       	jmp    0x40d715
40d79e:	83 e8 73             	sub    $0x73,%eax
40d7a1:	0f 84 67 ff ff ff    	je     0x40d70e
40d7a7:	48                   	dec    %eax
40d7a8:	83 e8 01             	sub    $0x1,%eax
40d7ab:	74 d0                	je     0x40d77d
40d7ad:	83 e8 03             	sub    $0x3,%eax
40d7b0:	0f 85 67 ff ff ff    	jne    0x40d71d
40d7b6:	51                   	push   %ecx
40d7b7:	e9 69 ff ff ff       	jmp    0x40d725
40d7bc:	80 7e 30 00          	cmpb   $0x0,0x30(%esi)
40d7c0:	74 07                	je     0x40d7c9
40d7c2:	8a c3                	mov    %bl,%al
40d7c4:	e9 28 01 00 00       	jmp    0x40d8f1
40d7c9:	8b 56 20             	mov    0x20(%esi),%edx
40d7cc:	33 c0                	xor    %eax,%eax
40d7ce:	57                   	push   %edi
40d7cf:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
40d7d3:	8b f8                	mov    %eax,%edi
40d7d5:	88 45 fe             	mov    %al,-0x2(%ebp)
40d7d8:	8b c2                	mov    %edx,%eax
40d7da:	c1 e8 04             	shr    $0x4,%eax
40d7dd:	84 c3                	test   %al,%bl
40d7df:	74 27                	je     0x40d808
40d7e1:	8b c2                	mov    %edx,%eax
40d7e3:	c1 e8 06             	shr    $0x6,%eax
40d7e6:	84 c3                	test   %al,%bl
40d7e8:	74 06                	je     0x40d7f0
40d7ea:	c6 45 fc 2d          	movb   $0x2d,-0x4(%ebp)
40d7ee:	eb 16                	jmp    0x40d806
40d7f0:	84 d3                	test   %dl,%bl
40d7f2:	74 06                	je     0x40d7fa
40d7f4:	c6 45 fc 2b          	movb   $0x2b,-0x4(%ebp)
40d7f8:	eb 0c                	jmp    0x40d806
40d7fa:	8b c2                	mov    %edx,%eax
40d7fc:	d1 e8                	shr    $1,%eax
40d7fe:	84 c3                	test   %al,%bl
40d800:	74 06                	je     0x40d808
40d802:	c6 45 fc 20          	movb   $0x20,-0x4(%ebp)
40d806:	8b fb                	mov    %ebx,%edi
40d808:	8a 4e 31             	mov    0x31(%esi),%cl
40d80b:	80 f9 78             	cmp    $0x78,%cl
40d80e:	74 05                	je     0x40d815
40d810:	80 f9 58             	cmp    $0x58,%cl