44e5a2:	0f 82 2a 01 00 00    	jb     0x44e6d2
44e5a8:	83 c0 0a             	add    $0xa,%eax
44e5ab:	66 3b c8             	cmp    %ax,%cx
44e5ae:	73 0d                	jae    0x44e5bd
44e5b0:	0f b7 c1             	movzwl %cx,%eax
44e5b3:	2d 66 0c 00 00       	sub    $0xc66,%eax
44e5b8:	e9 10 01 00 00       	jmp    0x44e6cd
44e5bd:	b8 e6 0c 00 00       	mov    $0xce6,%eax
44e5c2:	66 3b c8             	cmp    %ax,%cx
44e5c5:	0f 82 07 01 00 00    	jb     0x44e6d2
44e5cb:	83 c0 0a             	add    $0xa,%eax
44e5ce:	66 3b c8             	cmp    %ax,%cx
44e5d1:	73 0d                	jae    0x44e5e0
44e5d3:	0f b7 c1             	movzwl %cx,%eax
44e5d6:	2d e6 0c 00 00       	sub    $0xce6,%eax
44e5db:	e9 ed 00 00 00       	jmp    0x44e6cd
44e5e0:	b8 66 0d 00 00       	mov    $0xd66,%eax
44e5e5:	66 3b c8             	cmp    %ax,%cx
44e5e8:	0f 82 e4 00 00 00    	jb     0x44e6d2
44e5ee:	83 c0 0a             	add    $0xa,%eax
44e5f1:	66 3b c8             	cmp    %ax,%cx
44e5f4:	73 0d                	jae    0x44e603
44e5f6:	0f b7 c1             	movzwl %cx,%eax
44e5f9:	2d 66 0d 00 00       	sub    $0xd66,%eax
44e5fe:	e9 ca 00 00 00       	jmp    0x44e6cd
44e603:	b8 50 0e 00 00       	mov    $0xe50,%eax
44e608:	66 3b c8             	cmp    %ax,%cx
44e60b:	0f 82 c1 00 00 00    	jb     0x44e6d2
44e611:	83 c0 0a             	add    $0xa,%eax
44e614:	66 3b c8             	cmp    %ax,%cx
44e617:	73 0d                	jae    0x44e626
44e619:	0f b7 c1             	movzwl %cx,%eax
44e61c:	2d 50 0e 00 00       	sub    $0xe50,%eax
44e621:	e9 a7 00 00 00       	jmp    0x44e6cd
44e626:	b8 d0 0e 00 00       	mov    $0xed0,%eax
44e62b:	66 3b c8             	cmp    %ax,%cx
44e62e:	0f 82 9e 00 00 00    	jb     0x44e6d2
44e634:	83 c0 0a             	add    $0xa,%eax
44e637:	66 3b c8             	cmp    %ax,%cx
44e63a:	73 0d                	jae    0x44e649
44e63c:	0f b7 c1             	movzwl %cx,%eax
44e63f:	2d d0 0e 00 00       	sub    $0xed0,%eax
44e644:	e9 84 00 00 00       	jmp    0x44e6cd
44e649:	b8 20 0f 00 00       	mov    $0xf20,%eax
44e64e:	66 3b c8             	cmp    %ax,%cx
44e651:	72 7f                	jb     0x44e6d2
44e653:	83 c0 0a             	add    $0xa,%eax
44e656:	66 3b c8             	cmp    %ax,%cx
44e659:	73 0a                	jae    0x44e665
44e65b:	0f b7 c1             	movzwl %cx,%eax
44e65e:	2d 20 0f 00 00       	sub    $0xf20,%eax
44e663:	eb 68                	jmp    0x44e6cd
44e665:	b8 40 10 00 00       	mov    $0x1040,%eax
44e66a:	66 3b c8             	cmp    %ax,%cx
44e66d:	72 63                	jb     0x44e6d2
44e66f:	83 c0 0a             	add    $0xa,%eax
44e672:	66 3b c8             	cmp    %ax,%cx
44e675:	73 0a                	jae    0x44e681
44e677:	0f b7 c1             	movzwl %cx,%eax
44e67a:	2d 40 10 00 00       	sub    $0x1040,%eax
44e67f:	eb 4c                	jmp    0x44e6cd
44e681:	b8 e0 17 00 00       	mov    $0x17e0,%eax
44e686:	66 3b c8             	cmp    %ax,%cx
44e689:	72 47                	jb     0x44e6d2
44e68b:	83 c0 0a             	add    $0xa,%eax
44e68e:	66 3b c8             	cmp    %ax,%cx
44e691:	73 0a                	jae    0x44e69d
44e693:	0f b7 c1             	movzwl %cx,%eax
44e696:	2d e0 17 00 00       	sub    $0x17e0,%eax
44e69b:	eb 30                	jmp    0x44e6cd
44e69d:	b8 10 18 00 00       	mov    $0x1810,%eax
44e6a2:	66 3b c8             	cmp    %ax,%cx
44e6a5:	72 2b                	jb     0x44e6d2
44e6a7:	83 c0 0a             	add    $0xa,%eax
44e6aa:	66 3b c8             	cmp    %ax,%cx
44e6ad:	73 23                	jae    0x44e6d2
44e6af:	0f b7 c1             	movzwl %cx,%eax
44e6b2:	2d 10 18 00 00       	sub    $0x1810,%eax
44e6b7:	eb 14                	jmp    0x44e6cd
44e6b9:	b8 1a ff 00 00       	mov    $0xff1a,%eax
44e6be:	66 3b c8             	cmp    %ax,%cx
44e6c1:	73 07                	jae    0x44e6ca
44e6c3:	0f b7 c1             	movzwl %cx,%eax
44e6c6:	2b c6                	sub    %esi,%eax
44e6c8:	eb 03                	jmp    0x44e6cd
44e6ca:	83 c8 ff             	or     $0xffffffff,%eax
44e6cd:	83 f8 ff             	cmp    $0xffffffff,%eax
44e6d0:	75 38                	jne    0x44e70a
44e6d2:	6a 41                	push   $0x41
44e6d4:	58                   	pop    %eax
44e6d5:	66 3b c1             	cmp    %cx,%ax
44e6d8:	77 08                	ja     0x44e6e2
44e6da:	6a 5a                	push   $0x5a
44e6dc:	58                   	pop    %eax
44e6dd:	66 3b c8             	cmp    %ax,%cx
44e6e0:	76 0d                	jbe    0x44e6ef
44e6e2:	66 8b c1             	mov    %cx,%ax
44e6e5:	66 2b 45 f4          	sub    -0xc(%ebp),%ax
44e6e9:	66 3b 45 f0          	cmp    -0x10(%ebp),%ax
44e6ed:	77 18                	ja     0x44e707
44e6ef:	66 8b c1             	mov    %cx,%ax
44e6f2:	66 2b 45 f4          	sub    -0xc(%ebp),%ax
44e6f6:	66 3b 45 f0          	cmp    -0x10(%ebp),%ax
44e6fa:	0f b7 c1             	movzwl %cx,%eax
44e6fd:	77 03                	ja     0x44e702
44e6ff:	83 e8 20             	sub    $0x20,%eax
44e702:	83 c0 c9             	add    $0xffffffc9,%eax
44e705:	eb 03                	jmp    0x44e70a
44e707:	83 c8 ff             	or     $0xffffffff,%eax
44e70a:	83 f8 0a             	cmp    $0xa,%eax
44e70d:	73 13                	jae    0x44e722
44e70f:	8b 03                	mov    (%ebx),%eax
44e711:	66 8b 08             	mov    (%eax),%cx
44e714:	83 c0 02             	add    $0x2,%eax
44e717:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
44e71b:	89 03                	mov    %eax,(%ebx)
44e71d:	e9 5f fd ff ff       	jmp    0x44e481
44e722:	8b 75 d8             	mov    -0x28(%ebp),%esi
44e725:	8d 7e 02             	lea    0x2(%esi),%edi
44e728:	84 f6                	test   %dh,%dh
44e72a:	74 03                	je     0x44e72f
44e72c:	f7 5d ec             	negl   -0x14(%ebp)
44e72f:	84 d2                	test   %dl,%dl
44e731:	75 1b                	jne    0x44e74e
44e733:	ff 75 f8             	push   -0x8(%ebp)
44e736:	8b cb                	mov    %ebx,%ecx
44e738:	e8 ab 4c 00 00       	call   0x4533e8
44e73d:	33 c0                	xor    %eax,%eax
44e73f:	89 33                	mov    %esi,(%ebx)
44e741:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
44e745:	66 8b 06             	mov    (%esi),%ax
44e748:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
44e74c:	89 3b                	mov    %edi,(%ebx)
44e74e:	ff 75 f8             	push   -0x8(%ebp)
44e751:	8b cb                	mov    %ebx,%ecx
44e753:	e8 90 4c 00 00       	call   0x4533e8
44e758:	8b 75 10             	mov    0x10(%ebp),%esi
44e75b:	8b 55 e8             	mov    -0x18(%ebp),%edx
44e75e:	8d 5e 08             	lea    0x8(%esi),%ebx
44e761:	3b d3                	cmp    %ebx,%edx
44e763:	74 5b                	je     0x44e7c0
44e765:	80 7a ff 00          	cmpb   $0x0,-0x1(%edx)
44e769:	75 05                	jne    0x44e770
44e76b:	4a                   	dec    %edx
44e76c:	3b d3                	cmp    %ebx,%edx
44e76e:	75 f5                	jne    0x44e765
44e770:	3b d3                	cmp    %ebx,%edx
44e772:	74 4c                	je     0x44e7c0
44e774:	8b 4d ec             	mov    -0x14(%ebp),%ecx
44e777:	81 f9 50 14 00 00    	cmp    $0x1450,%ecx
44e77d:	7f 24                	jg     0x44e7a3
44e77f:	bf b0 eb ff ff       	mov    $0xffffebb0,%edi
44e784:	3b cf                	cmp    %edi,%ecx
44e786:	7c 23                	jl     0x44e7ab
44e788:	33 c0                	xor    %eax,%eax
44e78a:	38 45 ff             	cmp    %al,-0x1(%ebp)
44e78d:	0f 94 c0             	sete   %al
44e790:	48                   	dec    %eax
44e791:	83 e0 03             	and    $0x3,%eax
44e794:	40                   	inc    %eax
44e795:	0f af 45 e0          	imul   -0x20(%ebp),%eax
44e799:	03 c8                	add    %eax,%ecx
44e79b:	81 f9 50 14 00 00    	cmp    $0x1450,%ecx
44e7a1:	7e 04                	jle    0x44e7a7
44e7a3:	6a 09                	push   $0x9
44e7a5:	eb 1b                	jmp    0x44e7c2
44e7a7:	3b cf                	cmp    %edi,%ecx
44e7a9:	7d 04                	jge    0x44e7af
44e7ab:	6a 08                	push   $0x8
44e7ad:	eb 13                	jmp    0x44e7c2
44e7af:	33 c0                	xor    %eax,%eax
44e7b1:	89 0e                	mov    %ecx,(%esi)
44e7b3:	2b d3                	sub    %ebx,%edx
44e7b5:	38 45 ff             	cmp    %al,-0x1(%ebp)
44e7b8:	89 56 04             	mov    %edx,0x4(%esi)
44e7bb:	0f 95 c0             	setne  %al
44e7be:	eb 20                	jmp    0x44e7e0
44e7c0:	6a 02                	push   $0x2
44e7c2:	58                   	pop    %eax
44e7c3:	eb 1b                	jmp    0x44e7e0
44e7c5:	57                   	push   %edi
44e7c6:	8d 45 f8             	lea    -0x8(%ebp),%eax
44e7c9:	53                   	push   %ebx
44e7ca:	50                   	push   %eax
44e7cb:	e8 83 02 00 00       	call   0x44ea53
44e7d0:	eb 0b                	jmp    0x44e7dd
44e7d2:	57                   	push   %edi
44e7d3:	8d 45 f8             	lea    -0x8(%ebp),%eax
44e7d6:	53                   	push   %ebx
44e7d7:	50                   	push   %eax
44e7d8:	e8 a4 00 00 00       	call   0x44e881
44e7dd:	83 c4 0c             	add    $0xc,%esp
44e7e0:	5e                   	pop    %esi
44e7e1:	5f                   	pop    %edi
44e7e2:	5b                   	pop    %ebx
44e7e3:	8b e5                	mov    %ebp,%esp
44e7e5:	5d                   	pop    %ebp
44e7e6:	c3                   	ret
44e7e7:	8b ff                	mov    %edi,%edi
44e7e9:	55                   	push   %ebp
44e7ea:	8b ec                	mov    %esp,%ebp
44e7ec:	51                   	push   %ecx
44e7ed:	53                   	push   %ebx
44e7ee:	56                   	push   %esi
44e7ef:	8b 75 0c             	mov    0xc(%ebp),%esi
44e7f2:	33 c9                	xor    %ecx,%ecx
44e7f4:	57                   	push   %edi
44e7f5:	8b 7d 08             	mov    0x8(%ebp),%edi
44e7f8:	6a 03                	push   $0x3
44e7fa:	5b                   	pop    %ebx
44e7fb:	8a 07                	mov    (%edi),%al
44e7fd:	3a 81 44 c9 49 00    	cmp    0x49c944(%ecx),%al
44e803:	74 08                	je     0x44e80d
44e805:	3a 81 48 c9 49 00    	cmp    0x49c948(%ecx),%al
44e80b:	75 56                	jne    0x44e863
44e80d:	8b 06                	mov    (%esi),%eax
44e80f:	8a 10                	mov    (%eax),%dl
44e811:	40                   	inc    %eax
44e812:	41                   	inc    %ecx
44e813:	89 06                	mov    %eax,(%esi)
44e815:	88 17                	mov    %dl,(%edi)
44e817:	3b cb                	cmp    %ebx,%ecx
44e819:	75 e0                	jne    0x44e7fb
44e81b:	52                   	push   %edx
44e81c:	8b ce                	mov    %esi,%ecx
44e81e:	e8 9d 4b 00 00       	call   0x4533c0
44e823:	8b 06                	mov    (%esi),%eax
44e825:	89 45 fc             	mov    %eax,-0x4(%ebp)
44e828:	8a 08                	mov    (%eax),%cl
44e82a:	40                   	inc    %eax
44e82b:	89 06                	mov    %eax,(%esi)
44e82d:	88 0f                	mov    %cl,(%edi)
44e82f:	33 c9                	xor    %ecx,%ecx
44e831:	8a 07                	mov    (%edi),%al
44e833:	3a 81 4c c9 49 00    	cmp    0x49c94c(%ecx),%al
44e839:	74 08                	je     0x44e843
44e83b:	3a 81 54 c9 49 00    	cmp    0x49c954(%ecx),%al
44e841:	75 29                	jne    0x44e86c
44e843:	8b 06                	mov    (%esi),%eax
44e845:	8a 10                	mov    (%eax),%dl
44e847:	40                   	inc    %eax
44e848:	41                   	inc    %ecx
44e849:	89 06                	mov    %eax,(%esi)
44e84b:	88 17                	mov    %dl,(%edi)
44e84d:	83 f9 05             	cmp    $0x5,%ecx
44e850:	75 df                	jne    0x44e831
44e852:	52                   	push   %edx
44e853:	8b ce                	mov    %esi,%ecx
44e855:	e8 66 4b 00 00       	call   0x4533c0
44e85a:	5f                   	pop    %edi
44e85b:	5e                   	pop    %esi
44e85c:	8b c3                	mov    %ebx,%eax
44e85e:	5b                   	pop    %ebx
44e85f:	8b e5                	mov    %ebp,%esp
44e861:	5d                   	pop    %ebp
44e862:	c3                   	ret
44e863:	8b 45 10             	mov    0x10(%ebp),%eax
44e866:	6a 07                	push   $0x7
44e868:	5b                   	pop    %ebx
44e869:	89 45 fc             	mov    %eax,-0x4(%ebp)
44e86c:	0f b6 0f             	movzbl (%edi),%ecx
44e86f:	51                   	push   %ecx
44e870:	8b ce                	mov    %esi,%ecx
44e872:	e8 49 4b 00 00       	call   0x4533c0
44e877:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e87a:	c6 07 00             	movb   $0x0,(%edi)
44e87d:	89 06                	mov    %eax,(%esi)
44e87f:	eb d9                	jmp    0x44e85a
44e881:	8b ff                	mov    %edi,%edi
44e883:	55                   	push   %ebp
44e884:	8b ec                	mov    %esp,%ebp
44e886:	51                   	push   %ecx
44e887:	53                   	push   %ebx
44e888:	56                   	push   %esi
44e889:	8b 75 0c             	mov    0xc(%ebp),%esi
44e88c:	33 db                	xor    %ebx,%ebx
44e88e:	57                   	push   %edi
44e88f:	8b 7d 08             	mov    0x8(%ebp),%edi
44e892:	8b cb                	mov    %ebx,%ecx
44e894:	0f b7 07             	movzwl (%edi),%eax
44e897:	66 3b 81 64 c9 49 00 	cmp    0x49c964(%ecx),%ax
44e89e:	74 09                	je     0x44e8a9
44e8a0:	66 3b 81 6c c9 49 00 	cmp    0x49c96c(%ecx),%ax
44e8a7:	75 69                	jne    0x44e912
44e8a9:	8b 06                	mov    (%esi),%eax
44e8ab:	83 c1 02             	add    $0x2,%ecx
44e8ae:	0f b7 10             	movzwl (%eax),%edx
44e8b1:	83 c0 02             	add    $0x2,%eax
44e8b4:	89 06                	mov    %eax,(%esi)
44e8b6:	66 89 17             	mov    %dx,(%edi)
44e8b9:	83 f9 06             	cmp    $0x6,%ecx
44e8bc:	75 d6                	jne    0x44e894
44e8be:	52                   	push   %edx
44e8bf:	8b ce                	mov    %esi,%ecx
44e8c1:	e8 22 4b 00 00       	call   0x4533e8
44e8c6:	8b 06                	mov    (%esi),%eax
44e8c8:	89 45 fc             	mov    %eax,-0x4(%ebp)
44e8cb:	0f b7 08             	movzwl (%eax),%ecx
44e8ce:	83 c0 02             	add    $0x2,%eax
44e8d1:	89 06                	mov    %eax,(%esi)
44e8d3:	66 89 0f             	mov    %cx,(%edi)
44e8d6:	0f b7 07             	movzwl (%edi),%eax
44e8d9:	66 3b 83 74 c9 49 00 	cmp    0x49c974(%ebx),%ax
44e8e0:	74 09                	je     0x44e8eb
44e8e2:	66 3b 83 80 c9 49 00 	cmp    0x49c980(%ebx),%ax
44e8e9:	75 31                	jne    0x44e91c
44e8eb:	8b 06                	mov    (%esi),%eax
44e8ed:	83 c3 02             	add    $0x2,%ebx
44e8f0:	0f b7 08             	movzwl (%eax),%ecx
44e8f3:	83 c0 02             	add    $0x2,%eax
44e8f6:	89 06                	mov    %eax,(%esi)
44e8f8:	66 89 0f             	mov    %cx,(%edi)
44e8fb:	83 fb 0a             	cmp    $0xa,%ebx
44e8fe:	75 d6                	jne    0x44e8d6
44e900:	51                   	push   %ecx
44e901:	8b ce                	mov    %esi,%ecx
44e903:	e8 e0 4a 00 00       	call   0x4533e8
44e908:	6a 03                	push   $0x3
44e90a:	58                   	pop    %eax
44e90b:	5f                   	pop    %edi
44e90c:	5e                   	pop    %esi
44e90d:	5b                   	pop    %ebx
44e90e:	8b e5                	mov    %ebp,%esp
44e910:	5d                   	pop    %ebp
44e911:	c3                   	ret
44e912:	8b 45 10             	mov    0x10(%ebp),%eax
44e915:	6a 07                	push   $0x7
44e917:	89 45 fc             	mov    %eax,-0x4(%ebp)
44e91a:	eb 02                	jmp    0x44e91e
44e91c:	6a 03                	push   $0x3
44e91e:	0f b7 0f             	movzwl (%edi),%ecx
44e921:	5b                   	pop    %ebx
44e922:	51                   	push   %ecx
44e923:	8b ce                	mov    %esi,%ecx
44e925:	e8 be 4a 00 00       	call   0x4533e8
44e92a:	33 c0                	xor    %eax,%eax
44e92c:	66 89 07             	mov    %ax,(%edi)
44e92f:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e932:	89 06                	mov    %eax,(%esi)
44e934:	8b c3                	mov    %ebx,%eax
44e936:	eb d3                	jmp    0x44e90b
44e938:	8b ff                	mov    %edi,%edi
44e93a:	55                   	push   %ebp
44e93b:	8b ec                	mov    %esp,%ebp
44e93d:	83 ec 0c             	sub    $0xc,%esp
44e940:	56                   	push   %esi
44e941:	8b 75 08             	mov    0x8(%ebp),%esi
44e944:	8d 45 10             	lea    0x10(%ebp),%eax
44e947:	57                   	push   %edi
44e948:	8b 7d 0c             	mov    0xc(%ebp),%edi