44c2e2:	0f 84 76 8d fc ff    	je     0x41505e
44c2e8:	83 c7 02             	add    $0x2,%edi
44c2eb:	42                   	inc    %edx
44c2ec:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c2ef:	3b 55 f4             	cmp    -0xc(%ebp),%edx
44c2f2:	7e cf                	jle    0x44c2c3
44c2f4:	e9 a9 f8 ff ff       	jmp    0x44bba2
44c2f9:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c2fc:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
44c303:	83 fa 01             	cmp    $0x1,%edx
44c306:	0f 8c 9c f8 ff ff    	jl     0x44bba8
44c30c:	8b 56 7c             	mov    0x7c(%esi),%edx
44c30f:	8b 45 f4             	mov    -0xc(%ebp),%eax
44c312:	3b fa                	cmp    %edx,%edi
44c314:	0f 83 4c 25 00 00    	jae    0x44e866
44c31a:	0f b7 0f             	movzwl (%edi),%ecx
44c31d:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
44c323:	73 10                	jae    0x44c335
44c325:	8b 46 44             	mov    0x44(%esi),%eax
44c328:	f6 04 01 01          	testb  $0x1,(%ecx,%eax,1)
44c32c:	0f 85 2c 8d fc ff    	jne    0x41505e
44c332:	8b 45 f4             	mov    -0xc(%ebp),%eax
44c335:	83 c7 02             	add    $0x2,%edi
44c338:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c33b:	3b fa                	cmp    %edx,%edi
44c33d:	73 1e                	jae    0x44c35d
44c33f:	66 8b 07             	mov    (%edi),%ax
44c342:	b9 00 fc 00 00       	mov    $0xfc00,%ecx
44c347:	66 23 c1             	and    %cx,%ax
44c34a:	b9 00 dc 00 00       	mov    $0xdc00,%ecx
44c34f:	66 3b c1             	cmp    %cx,%ax
44c352:	8b 45 f4             	mov    -0xc(%ebp),%eax
44c355:	75 06                	jne    0x44c35d
44c357:	83 c7 02             	add    $0x2,%edi
44c35a:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c35d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
44c360:	41                   	inc    %ecx
44c361:	89 4d ec             	mov    %ecx,-0x14(%ebp)
44c364:	3b c8                	cmp    %eax,%ecx
44c366:	7e aa                	jle    0x44c312
44c368:	e9 35 f8 ff ff       	jmp    0x44bba2
44c36d:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c370:	ba 01 00 00 00       	mov    $0x1,%edx
44c375:	39 55 f4             	cmp    %edx,-0xc(%ebp)
44c378:	0f 8c 27 f8 ff ff    	jl     0x44bba5
44c37e:	3b 7e 7c             	cmp    0x7c(%esi),%edi
44c381:	0f 83 df 24 00 00    	jae    0x44e866
44c387:	0f b7 0f             	movzwl (%edi),%ecx
44c38a:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
44c390:	0f 83 c8 8c fc ff    	jae    0x41505e
44c396:	8b 46 44             	mov    0x44(%esi),%eax
44c399:	f6 04 01 01          	testb  $0x1,(%ecx,%eax,1)
44c39d:	0f 84 bb 8c fc ff    	je     0x41505e
44c3a3:	83 c7 02             	add    $0x2,%edi
44c3a6:	42                   	inc    %edx
44c3a7:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c3aa:	3b 55 f4             	cmp    -0xc(%ebp),%edx
44c3ad:	7e cf                	jle    0x44c37e
44c3af:	e9 ee f7 ff ff       	jmp    0x44bba2
44c3b4:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c3b7:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
44c3be:	83 fa 01             	cmp    $0x1,%edx
44c3c1:	0f 8c e1 f7 ff ff    	jl     0x44bba8
44c3c7:	8b 56 7c             	mov    0x7c(%esi),%edx
44c3ca:	8b 45 f4             	mov    -0xc(%ebp),%eax
44c3cd:	3b fa                	cmp    %edx,%edi
44c3cf:	0f 83 91 24 00 00    	jae    0x44e866
44c3d5:	0f b7 0f             	movzwl (%edi),%ecx
44c3d8:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
44c3de:	73 10                	jae    0x44c3f0
44c3e0:	8b 46 44             	mov    0x44(%esi),%eax
44c3e3:	f6 04 01 10          	testb  $0x10,(%ecx,%eax,1)
44c3e7:	0f 85 71 8c fc ff    	jne    0x41505e
44c3ed:	8b 45 f4             	mov    -0xc(%ebp),%eax
44c3f0:	83 c7 02             	add    $0x2,%edi
44c3f3:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c3f6:	3b fa                	cmp    %edx,%edi
44c3f8:	73 1e                	jae    0x44c418
44c3fa:	66 8b 07             	mov    (%edi),%ax
44c3fd:	b9 00 fc 00 00       	mov    $0xfc00,%ecx
44c402:	66 23 c1             	and    %cx,%ax
44c405:	b9 00 dc 00 00       	mov    $0xdc00,%ecx
44c40a:	66 3b c1             	cmp    %cx,%ax
44c40d:	8b 45 f4             	mov    -0xc(%ebp),%eax
44c410:	75 06                	jne    0x44c418
44c412:	83 c7 02             	add    $0x2,%edi
44c415:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c418:	8b 4d ec             	mov    -0x14(%ebp),%ecx
44c41b:	41                   	inc    %ecx
44c41c:	89 4d ec             	mov    %ecx,-0x14(%ebp)
44c41f:	3b c8                	cmp    %eax,%ecx
44c421:	7e aa                	jle    0x44c3cd
44c423:	e9 7a f7 ff ff       	jmp    0x44bba2
44c428:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c42b:	ba 01 00 00 00       	mov    $0x1,%edx
44c430:	39 55 f4             	cmp    %edx,-0xc(%ebp)
44c433:	0f 8c 6c f7 ff ff    	jl     0x44bba5
44c439:	3b 7e 7c             	cmp    0x7c(%esi),%edi
44c43c:	0f 83 24 24 00 00    	jae    0x44e866
44c442:	0f b7 0f             	movzwl (%edi),%ecx
44c445:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
44c44b:	0f 83 0d 8c fc ff    	jae    0x41505e
44c451:	8b 46 44             	mov    0x44(%esi),%eax
44c454:	f6 04 01 10          	testb  $0x10,(%ecx,%eax,1)
44c458:	0f 84 00 8c fc ff    	je     0x41505e
44c45e:	83 c7 02             	add    $0x2,%edi
44c461:	42                   	inc    %edx
44c462:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c465:	3b 55 f4             	cmp    -0xc(%ebp),%edx
44c468:	7e cf                	jle    0x44c439
44c46a:	e9 33 f7 ff ff       	jmp    0x44bba2
44c46f:	83 f9 0f             	cmp    $0xf,%ecx
44c472:	0f 87 86 20 00 00    	ja     0x44e4fe
44c478:	ff 24 8d b7 02 45 00 	jmp    *0x4502b7(,%ecx,4)
44c47f:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c482:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
44c489:	83 fa 01             	cmp    $0x1,%edx
44c48c:	0f 8c 16 f7 ff ff    	jl     0x44bba8
44c492:	8b 4e 7c             	mov    0x7c(%esi),%ecx
44c495:	3b f9                	cmp    %ecx,%edi
44c497:	0f 83 c9 23 00 00    	jae    0x44e866
44c49d:	8b 56 18             	mov    0x18(%esi),%edx
44c4a0:	85 d2                	test   %edx,%edx
44c4a2:	74 1b                	je     0x44c4bf
44c4a4:	8d 46 1c             	lea    0x1c(%esi),%eax
44c4a7:	6a 00                	push   $0x0
44c4a9:	50                   	push   %eax
44c4aa:	51                   	push   %ecx
44c4ab:	8b cf                	mov    %edi,%ecx
44c4ad:	e8 ed 99 fc ff       	call   0x415e9f
44c4b2:	83 c4 0c             	add    $0xc,%esp
44c4b5:	85 c0                	test   %eax,%eax
44c4b7:	0f 85 a1 8b fc ff    	jne    0x41505e
44c4bd:	eb 2c                	jmp    0x44c4eb
44c4bf:	8b 56 1c             	mov    0x1c(%esi),%edx
44c4c2:	8d 04 12             	lea    (%edx,%edx,1),%eax
44c4c5:	2b c8                	sub    %eax,%ecx
44c4c7:	3b f9                	cmp    %ecx,%edi
44c4c9:	77 20                	ja     0x44c4eb
44c4cb:	66 8b 07             	mov    (%edi),%ax
44c4ce:	66 3b 46 34          	cmp    0x34(%esi),%ax
44c4d2:	75 17                	jne    0x44c4eb
44c4d4:	83 fa 01             	cmp    $0x1,%edx
44c4d7:	0f 84 81 8b fc ff    	je     0x41505e
44c4dd:	66 8b 47 02          	mov    0x2(%edi),%ax
44c4e1:	66 3b 46 36          	cmp    0x36(%esi),%ax
44c4e5:	0f 84 73 8b fc ff    	je     0x41505e
44c4eb:	83 be 8c 00 00 00 00 	cmpl   $0x0,0x8c(%esi)
44c4f2:	74 31                	je     0x44c525
44c4f4:	8d 47 02             	lea    0x2(%edi),%eax
44c4f7:	3b 46 7c             	cmp    0x7c(%esi),%eax
44c4fa:	72 29                	jb     0x44c525
44c4fc:	83 7e 18 00          	cmpl   $0x0,0x18(%esi)
44c500:	75 23                	jne    0x44c525
44c502:	83 7e 1c 02          	cmpl   $0x2,0x1c(%esi)
44c506:	75 1d                	jne    0x44c525
44c508:	66 8b 07             	mov    (%edi),%ax
44c50b:	66 3b 46 34          	cmp    0x34(%esi),%ax
44c50f:	75 14                	jne    0x44c525
44c511:	c7 46 68 01 00 00 00 	movl   $0x1,0x68(%esi)
44c518:	83 be 8c 00 00 00 01 	cmpl   $0x1,0x8c(%esi)
44c51f:	0f 8f 9b cb ff ff    	jg     0x4490c0
44c525:	8b 55 ec             	mov    -0x14(%ebp),%edx
44c528:	83 c7 02             	add    $0x2,%edi
44c52b:	42                   	inc    %edx
44c52c:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c52f:	89 55 ec             	mov    %edx,-0x14(%ebp)
44c532:	3b 55 f4             	cmp    -0xc(%ebp),%edx
44c535:	0f 8e 57 ff ff ff    	jle    0x44c492
44c53b:	e9 62 f6 ff ff       	jmp    0x44bba2
44c540:	8b 46 7c             	mov    0x7c(%esi),%eax
44c543:	8d 0c 12             	lea    (%edx,%edx,1),%ecx
44c546:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c549:	2b c1                	sub    %ecx,%eax
44c54b:	3b f8                	cmp    %eax,%edi
44c54d:	0f 87 13 23 00 00    	ja     0x44e866
44c553:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44c556:	03 f9                	add    %ecx,%edi
44c558:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c55b:	e9 48 f6 ff ff       	jmp    0x44bba8
44c560:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c563:	ba 01 00 00 00       	mov    $0x1,%edx
44c568:	39 55 f4             	cmp    %edx,-0xc(%ebp)
44c56b:	0f 8c 34 f6 ff ff    	jl     0x44bba5
44c571:	8b 4e 7c             	mov    0x7c(%esi),%ecx
44c574:	3b f9                	cmp    %ecx,%edi
44c576:	0f 83 ea 22 00 00    	jae    0x44e866
44c57c:	0f b7 07             	movzwl (%edi),%eax
44c57f:	83 c7 02             	add    $0x2,%edi
44c582:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c585:	83 f8 0d             	cmp    $0xd,%eax
44c588:	7f 27                	jg     0x44c5b1
44c58a:	74 13                	je     0x44c59f
44c58c:	83 f8 0a             	cmp    $0xa,%eax
44c58f:	74 3f                	je     0x44c5d0
44c591:	83 c0 f5             	add    $0xfffffff5,%eax
44c594:	83 f8 01             	cmp    $0x1,%eax
44c597:	0f 87 c1 8a fc ff    	ja     0x41505e
44c59d:	eb 27                	jmp    0x44c5c6
44c59f:	3b f9                	cmp    %ecx,%edi
44c5a1:	73 2d                	jae    0x44c5d0
44c5a3:	66 83 3f 0a          	cmpw   $0xa,(%edi)
44c5a7:	75 27                	jne    0x44c5d0
44c5a9:	83 c7 02             	add    $0x2,%edi
44c5ac:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c5af:	eb 1f                	jmp    0x44c5d0
44c5b1:	3d 85 00 00 00       	cmp    $0x85,%eax
44c5b6:	74 0e                	je     0x44c5c6
44c5b8:	05 d8 df ff ff       	add    $0xffffdfd8,%eax
44c5bd:	83 f8 01             	cmp    $0x1,%eax
44c5c0:	0f 87 98 8a fc ff    	ja     0x41505e
44c5c6:	83 7e 6c 00          	cmpl   $0x0,0x6c(%esi)
44c5ca:	0f 85 8e 8a fc ff    	jne    0x41505e
44c5d0:	42                   	inc    %edx
44c5d1:	3b 55 f4             	cmp    -0xc(%ebp),%edx
44c5d4:	7e 9e                	jle    0x44c574
44c5d6:	e9 c7 f5 ff ff       	jmp    0x44bba2
44c5db:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c5de:	ba 01 00 00 00       	mov    $0x1,%edx
44c5e3:	39 55 f4             	cmp    %edx,-0xc(%ebp)
44c5e6:	0f 8c b9 f5 ff ff    	jl     0x44bba5
44c5ec:	3b 7e 7c             	cmp    0x7c(%esi),%edi
44c5ef:	0f 83 71 22 00 00    	jae    0x44e866
44c5f5:	0f b7 0f             	movzwl (%edi),%ecx
44c5f8:	83 c7 02             	add    $0x2,%edi
44c5fb:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c5fe:	81 f9 0e 18 00 00    	cmp    $0x180e,%ecx
44c604:	7f 36                	jg     0x44c63c
44c606:	0f 84 52 8a fc ff    	je     0x41505e
44c60c:	81 f9 a0 00 00 00    	cmp    $0xa0,%ecx
44c612:	7f 1a                	jg     0x44c62e
44c614:	0f 84 44 8a fc ff    	je     0x41505e
44c61a:	83 f9 09             	cmp    $0x9,%ecx
44c61d:	0f 84 3b 8a fc ff    	je     0x41505e
44c623:	83 f9 20             	cmp    $0x20,%ecx
44c626:	0f 84 32 8a fc ff    	je     0x41505e
44c62c:	eb 4a                	jmp    0x44c678
44c62e:	81 f9 80 16 00 00    	cmp    $0x1680,%ecx
44c634:	0f 84 24 8a fc ff    	je     0x41505e
44c63a:	eb 3c                	jmp    0x44c678
44c63c:	81 f9 5f 20 00 00    	cmp    $0x205f,%ecx
44c642:	7f 28                	jg     0x44c66c
44c644:	0f 84 14 8a fc ff    	je     0x41505e
44c64a:	81 f9 00 20 00 00    	cmp    $0x2000,%ecx
44c650:	7c 26                	jl     0x44c678
44c652:	81 f9 0a 20 00 00    	cmp    $0x200a,%ecx
44c658:	0f 8e 00 8a fc ff    	jle    0x41505e
44c65e:	81 f9 2f 20 00 00    	cmp    $0x202f,%ecx
44c664:	0f 84 f4 89 fc ff    	je     0x41505e
44c66a:	eb 0c                	jmp    0x44c678
44c66c:	81 f9 00 30 00 00    	cmp    $0x3000,%ecx
44c672:	0f 84 e6 89 fc ff    	je     0x41505e
44c678:	42                   	inc    %edx
44c679:	3b 55 f4             	cmp    -0xc(%ebp),%edx
44c67c:	0f 8e 6a ff ff ff    	jle    0x44c5ec
44c682:	e9 1e f5 ff ff       	jmp    0x44bba5
44c687:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c68a:	ba 01 00 00 00       	mov    $0x1,%edx
44c68f:	39 55 f4             	cmp    %edx,-0xc(%ebp)
44c692:	0f 8c 0d f5 ff ff    	jl     0x44bba5
44c698:	3b 7e 7c             	cmp    0x7c(%esi),%edi
44c69b:	0f 83 c5 21 00 00    	jae    0x44e866
44c6a1:	0f b7 0f             	movzwl (%edi),%ecx
44c6a4:	83 c7 02             	add    $0x2,%edi
44c6a7:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c6aa:	81 f9 0e 18 00 00    	cmp    $0x180e,%ecx
44c6b0:	7f 2a                	jg     0x44c6dc
44c6b2:	74 60                	je     0x44c714
44c6b4:	81 f9 a0 00 00 00    	cmp    $0xa0,%ecx
44c6ba:	7f 12                	jg     0x44c6ce
44c6bc:	74 56                	je     0x44c714
44c6be:	83 f9 09             	cmp    $0x9,%ecx
44c6c1:	74 51                	je     0x44c714
44c6c3:	83 f9 20             	cmp    $0x20,%ecx
44c6c6:	0f 85 92 89 fc ff    	jne    0x41505e
44c6cc:	eb 46                	jmp    0x44c714
44c6ce:	81 f9 80 16 00 00    	cmp    $0x1680,%ecx
44c6d4:	0f 85 84 89 fc ff    	jne    0x41505e
44c6da:	eb 38                	jmp    0x44c714
44c6dc:	81 f9 5f 20 00 00    	cmp    $0x205f,%ecx
44c6e2:	7f 24                	jg     0x44c708
44c6e4:	74 2e                	je     0x44c714
44c6e6:	81 f9 00 20 00 00    	cmp    $0x2000,%ecx
44c6ec:	0f 8c 6c 89 fc ff    	jl     0x41505e
44c6f2:	81 f9 0a 20 00 00    	cmp    $0x200a,%ecx
44c6f8:	7e 1a                	jle    0x44c714
44c6fa:	81 f9 2f 20 00 00    	cmp    $0x202f,%ecx
44c700:	0f 85 58 89 fc ff    	jne    0x41505e
44c706:	eb 0c                	jmp    0x44c714
44c708:	81 f9 00 30 00 00    	cmp    $0x3000,%ecx
44c70e:	0f 85 4a 89 fc ff    	jne    0x41505e
44c714:	42                   	inc    %edx
44c715:	3b 55 f4             	cmp    -0xc(%ebp),%edx
44c718:	0f 8e 7a ff ff ff    	jle    0x44c698
44c71e:	e9 82 f4 ff ff       	jmp    0x44bba5
44c723:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c726:	ba 01 00 00 00       	mov    $0x1,%edx
44c72b:	39 55 f4             	cmp    %edx,-0xc(%ebp)
44c72e:	0f 8c 71 f4 ff ff    	jl     0x44bba5
44c734:	3b 7e 7c             	cmp    0x7c(%esi),%edi
44c737:	0f 83 29 21 00 00    	jae    0x44e866
44c73d:	0f b7 0f             	movzwl (%edi),%ecx
44c740:	83 c7 02             	add    $0x2,%edi
44c743:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c746:	81 f9 85 00 00 00    	cmp    $0x85,%ecx
44c74c:	7f 16                	jg     0x44c764
44c74e:	0f 84 0a 89 fc ff    	je     0x41505e
44c754:	83 f9 0a             	cmp    $0xa,%ecx
44c757:	7c 1f                	jl     0x44c778
44c759:	83 f9 0d             	cmp    $0xd,%ecx
44c75c:	0f 8e fc 88 fc ff    	jle    0x41505e
44c762:	eb 14                	jmp    0x44c778
44c764:	81 f9 28 20 00 00    	cmp    $0x2028,%ecx
44c76a:	7c 0c                	jl     0x44c778
44c76c:	81 f9 29 20 00 00    	cmp    $0x2029,%ecx
44c772:	0f 8e e6 88 fc ff    	jle    0x41505e
44c778:	42                   	inc    %edx
44c779:	3b 55 f4             	cmp    -0xc(%ebp),%edx
44c77c:	7e b6                	jle    0x44c734
44c77e:	e9 22 f4 ff ff       	jmp    0x44bba5
44c783:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c786:	b9 01 00 00 00       	mov    $0x1,%ecx
44c78b:	3b d1                	cmp    %ecx,%edx
44c78d:	0f 8c 15 f4 ff ff    	jl     0x44bba8
44c793:	3b 7e 7c             	cmp    0x7c(%esi),%edi
44c796:	0f 83 ca 20 00 00    	jae    0x44e866
44c79c:	0f b7 07             	movzwl (%edi),%eax
44c79f:	83 c7 02             	add    $0x2,%edi
44c7a2:	89 7d f8             	mov    %edi,-0x8(%ebp)
44c7a5:	3d 85 00 00 00       	cmp    $0x85,%eax
44c7aa:	7f 10                	jg     0x44c7bc
44c7ac:	74 1c                	je     0x44c7ca
44c7ae:	83 c0 f6             	add    $0xfffffff6,%eax
44c7b1:	83 f8 03             	cmp    $0x3,%eax
44c7b4:	0f 87 a4 88 fc ff    	ja     0x41505e
44c7ba:	eb 0e                	jmp    0x44c7ca
44c7bc:	05 d8 df ff ff       	add    $0xffffdfd8,%eax
44c7c1:	83 f8 01             	cmp    $0x1,%eax
44c7c4:	0f 87 94 88 fc ff    	ja     0x41505e
44c7ca:	41                   	inc    %ecx
44c7cb:	3b ca                	cmp    %edx,%ecx
44c7cd:	7e c4                	jle    0x44c793
44c7cf:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44c7d2:	e9 d1 f3 ff ff       	jmp    0x44bba8
44c7d7:	8b 7d f8             	mov    -0x8(%ebp),%edi
44c7da:	ba 01 00 00 00       	mov    $0x1,%edx
44c7df:	39 55 f4             	cmp    %edx,-0xc(%ebp)
44c7e2:	0f 8c bd f3 ff ff    	jl     0x44bba5
44c7e8:	3b 7e 7c             	cmp    0x7c(%esi),%edi
44c7eb:	0f 83 75 20 00 00    	jae    0x44e866