44d6da:	74 f1                	je     0x44d6cd
44d6dc:	8b 7d f4             	mov    -0xc(%ebp),%edi
44d6df:	33 d2                	xor    %edx,%edx
44d6e1:	38 55 ff             	cmp    %dl,-0x1(%ebp)
44d6e4:	0f 94 c2             	sete   %dl
44d6e7:	4a                   	dec    %edx
44d6e8:	83 e2 06             	and    $0x6,%edx
44d6eb:	83 c2 09             	add    $0x9,%edx
44d6ee:	8a c1                	mov    %cl,%al
44d6f0:	2c 30                	sub    $0x30,%al
44d6f2:	3c 09                	cmp    $0x9,%al
44d6f4:	77 08                	ja     0x44d6fe
44d6f6:	0f be c1             	movsbl %cl,%eax
44d6f9:	83 e8 30             	sub    $0x30,%eax
44d6fc:	eb 23                	jmp    0x44d721
44d6fe:	8a c1                	mov    %cl,%al
44d700:	2c 61                	sub    $0x61,%al
44d702:	3c 19                	cmp    $0x19,%al
44d704:	77 08                	ja     0x44d70e
44d706:	0f be c1             	movsbl %cl,%eax
44d709:	83 e8 57             	sub    $0x57,%eax
44d70c:	eb 13                	jmp    0x44d721
44d70e:	8a c1                	mov    %cl,%al
44d710:	2c 41                	sub    $0x41,%al
44d712:	3c 19                	cmp    $0x19,%al
44d714:	77 08                	ja     0x44d71e
44d716:	0f be c1             	movsbl %cl,%eax
44d719:	83 e8 37             	sub    $0x37,%eax
44d71c:	eb 03                	jmp    0x44d721
44d71e:	83 c8 ff             	or     $0xffffffff,%eax
44d721:	3b c2                	cmp    %edx,%eax
44d723:	77 17                	ja     0x44d73c
44d725:	b5 01                	mov    $0x1,%ch
44d727:	3b 5d ec             	cmp    -0x14(%ebp),%ebx
44d72a:	74 03                	je     0x44d72f
44d72c:	88 03                	mov    %al,(%ebx)
44d72e:	43                   	inc    %ebx
44d72f:	8b 06                	mov    (%esi),%eax
44d731:	47                   	inc    %edi
44d732:	8a 08                	mov    (%eax),%cl
44d734:	40                   	inc    %eax
44d735:	88 4d fb             	mov    %cl,-0x5(%ebp)
44d738:	89 06                	mov    %eax,(%esi)
44d73a:	eb b2                	jmp    0x44d6ee
44d73c:	8b 45 08             	mov    0x8(%ebp),%eax
44d73f:	89 7d f4             	mov    %edi,-0xc(%ebp)
44d742:	8b 7d f0             	mov    -0x10(%ebp),%edi
44d745:	8b 00                	mov    (%eax),%eax
44d747:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
44d74d:	8b 00                	mov    (%eax),%eax
44d74f:	3a 08                	cmp    (%eax),%cl
44d751:	75 73                	jne    0x44d7c6
44d753:	8b 06                	mov    (%esi),%eax
44d755:	8a 08                	mov    (%eax),%cl
44d757:	40                   	inc    %eax
44d758:	88 4d fb             	mov    %cl,-0x5(%ebp)
44d75b:	89 06                	mov    %eax,(%esi)
44d75d:	3b 5d e8             	cmp    -0x18(%ebp),%ebx
44d760:	75 17                	jne    0x44d779
44d762:	80 f9 30             	cmp    $0x30,%cl
44d765:	75 12                	jne    0x44d779
44d767:	b5 01                	mov    $0x1,%ch
44d769:	8a 08                	mov    (%eax),%cl
44d76b:	ff 4d f4             	decl   -0xc(%ebp)
44d76e:	40                   	inc    %eax
44d76f:	88 4d fb             	mov    %cl,-0x5(%ebp)
44d772:	89 06                	mov    %eax,(%esi)
44d774:	80 f9 30             	cmp    $0x30,%cl
44d777:	74 f0                	je     0x44d769
44d779:	8a c1                	mov    %cl,%al
44d77b:	2c 30                	sub    $0x30,%al
44d77d:	3c 09                	cmp    $0x9,%al
44d77f:	77 08                	ja     0x44d789
44d781:	0f be c1             	movsbl %cl,%eax
44d784:	83 e8 30             	sub    $0x30,%eax
44d787:	eb 23                	jmp    0x44d7ac
44d789:	8a c1                	mov    %cl,%al
44d78b:	2c 61                	sub    $0x61,%al
44d78d:	3c 19                	cmp    $0x19,%al
44d78f:	77 08                	ja     0x44d799
44d791:	0f be c1             	movsbl %cl,%eax
44d794:	83 e8 57             	sub    $0x57,%eax
44d797:	eb 13                	jmp    0x44d7ac
44d799:	8a c1                	mov    %cl,%al
44d79b:	2c 41                	sub    $0x41,%al
44d79d:	3c 19                	cmp    $0x19,%al
44d79f:	77 08                	ja     0x44d7a9
44d7a1:	0f be c1             	movsbl %cl,%eax
44d7a4:	83 e8 37             	sub    $0x37,%eax
44d7a7:	eb 03                	jmp    0x44d7ac
44d7a9:	83 c8 ff             	or     $0xffffffff,%eax
44d7ac:	3b c2                	cmp    %edx,%eax
44d7ae:	77 16                	ja     0x44d7c6
44d7b0:	b5 01                	mov    $0x1,%ch
44d7b2:	3b 5d ec             	cmp    -0x14(%ebp),%ebx
44d7b5:	74 03                	je     0x44d7ba
44d7b7:	88 03                	mov    %al,(%ebx)
44d7b9:	43                   	inc    %ebx
44d7ba:	8b 06                	mov    (%esi),%eax
44d7bc:	8a 08                	mov    (%eax),%cl
44d7be:	40                   	inc    %eax
44d7bf:	88 4d fb             	mov    %cl,-0x5(%ebp)
44d7c2:	89 06                	mov    %eax,(%esi)
44d7c4:	eb b3                	jmp    0x44d779
44d7c6:	ff 75 fb             	push   -0x5(%ebp)
44d7c9:	84 ed                	test   %ch,%ch
44d7cb:	8b ce                	mov    %esi,%ecx
44d7cd:	75 1b                	jne    0x44d7ea
44d7cf:	e8 ec 5b 00 00       	call   0x4533c0
44d7d4:	33 c0                	xor    %eax,%eax
44d7d6:	89 3e                	mov    %edi,(%esi)
44d7d8:	38 45 ff             	cmp    %al,-0x1(%ebp)
44d7db:	0f 94 c0             	sete   %al
44d7de:	48                   	dec    %eax
44d7df:	83 e0 fb             	and    $0xfffffffb,%eax
44d7e2:	83 c0 07             	add    $0x7,%eax
44d7e5:	e9 c9 01 00 00       	jmp    0x44d9b3
44d7ea:	e8 d1 5b 00 00       	call   0x4533c0
44d7ef:	8b 0e                	mov    (%esi),%ecx
44d7f1:	89 4d ec             	mov    %ecx,-0x14(%ebp)
44d7f4:	8a 01                	mov    (%ecx),%al
44d7f6:	8d 51 01             	lea    0x1(%ecx),%edx
44d7f9:	32 c9                	xor    %cl,%cl
44d7fb:	88 45 fb             	mov    %al,-0x5(%ebp)
44d7fe:	89 55 f0             	mov    %edx,-0x10(%ebp)
44d801:	89 16                	mov    %edx,(%esi)
44d803:	3c 45                	cmp    $0x45,%al
44d805:	74 11                	je     0x44d818
44d807:	3c 50                	cmp    $0x50,%al
44d809:	74 08                	je     0x44d813
44d80b:	3c 65                	cmp    $0x65,%al
44d80d:	74 09                	je     0x44d818
44d80f:	3c 70                	cmp    $0x70,%al
44d811:	75 0c                	jne    0x44d81f
44d813:	8a 4d ff             	mov    -0x1(%ebp),%cl
44d816:	eb 07                	jmp    0x44d81f
44d818:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
44d81c:	0f 94 c1             	sete   %cl
44d81f:	33 ff                	xor    %edi,%edi
44d821:	84 c9                	test   %cl,%cl
44d823:	0f 84 fd 00 00 00    	je     0x44d926
44d829:	8a 0a                	mov    (%edx),%cl
44d82b:	8d 42 01             	lea    0x1(%edx),%eax
44d82e:	80 f9 2d             	cmp    $0x2d,%cl
44d831:	88 4d fb             	mov    %cl,-0x5(%ebp)
44d834:	89 06                	mov    %eax,(%esi)
44d836:	0f 94 c5             	sete   %ch
44d839:	80 f9 2b             	cmp    $0x2b,%cl
44d83c:	74 05                	je     0x44d843
44d83e:	80 f9 2d             	cmp    $0x2d,%cl
44d841:	75 08                	jne    0x44d84b
44d843:	8a 08                	mov    (%eax),%cl
44d845:	40                   	inc    %eax
44d846:	88 4d fb             	mov    %cl,-0x5(%ebp)
44d849:	89 06                	mov    %eax,(%esi)
44d84b:	32 d2                	xor    %dl,%dl
44d84d:	80 f9 30             	cmp    $0x30,%cl
44d850:	75 11                	jne    0x44d863
44d852:	fe c2                	inc    %dl
44d854:	8b 06                	mov    (%esi),%eax
44d856:	8a 08                	mov    (%eax),%cl
44d858:	40                   	inc    %eax
44d859:	88 4d fb             	mov    %cl,-0x5(%ebp)
44d85c:	89 06                	mov    %eax,(%esi)
44d85e:	80 f9 30             	cmp    $0x30,%cl
44d861:	74 f1                	je     0x44d854
44d863:	8a c1                	mov    %cl,%al
44d865:	2c 30                	sub    $0x30,%al
44d867:	3c 09                	cmp    $0x9,%al
44d869:	77 08                	ja     0x44d873
44d86b:	0f be c1             	movsbl %cl,%eax
44d86e:	83 e8 30             	sub    $0x30,%eax
44d871:	eb 23                	jmp    0x44d896
44d873:	8a c1                	mov    %cl,%al
44d875:	2c 61                	sub    $0x61,%al
44d877:	3c 19                	cmp    $0x19,%al
44d879:	77 08                	ja     0x44d883
44d87b:	0f be c1             	movsbl %cl,%eax
44d87e:	83 e8 57             	sub    $0x57,%eax
44d881:	eb 13                	jmp    0x44d896
44d883:	8a c1                	mov    %cl,%al
44d885:	2c 41                	sub    $0x41,%al
44d887:	3c 19                	cmp    $0x19,%al
44d889:	77 08                	ja     0x44d893
44d88b:	0f be c1             	movsbl %cl,%eax
44d88e:	83 e8 37             	sub    $0x37,%eax
44d891:	eb 03                	jmp    0x44d896
44d893:	83 c8 ff             	or     $0xffffffff,%eax
44d896:	83 f8 0a             	cmp    $0xa,%eax
44d899:	73 20                	jae    0x44d8bb
44d89b:	6b ff 0a             	imul   $0xa,%edi,%edi
44d89e:	b2 01                	mov    $0x1,%dl
44d8a0:	03 f8                	add    %eax,%edi
44d8a2:	81 ff 50 14 00 00    	cmp    $0x1450,%edi
44d8a8:	7f 0c                	jg     0x44d8b6
44d8aa:	8b 06                	mov    (%esi),%eax
44d8ac:	8a 08                	mov    (%eax),%cl
44d8ae:	40                   	inc    %eax
44d8af:	88 4d fb             	mov    %cl,-0x5(%ebp)
44d8b2:	89 06                	mov    %eax,(%esi)
44d8b4:	eb ad                	jmp    0x44d863
44d8b6:	bf 51 14 00 00       	mov    $0x1451,%edi
44d8bb:	8a c1                	mov    %cl,%al
44d8bd:	2c 30                	sub    $0x30,%al
44d8bf:	3c 09                	cmp    $0x9,%al
44d8c1:	77 08                	ja     0x44d8cb
44d8c3:	0f be c1             	movsbl %cl,%eax
44d8c6:	83 e8 30             	sub    $0x30,%eax
44d8c9:	eb 23                	jmp    0x44d8ee
44d8cb:	8a c1                	mov    %cl,%al
44d8cd:	2c 61                	sub    $0x61,%al
44d8cf:	3c 19                	cmp    $0x19,%al
44d8d1:	77 08                	ja     0x44d8db
44d8d3:	0f be c1             	movsbl %cl,%eax
44d8d6:	83 e8 57             	sub    $0x57,%eax
44d8d9:	eb 13                	jmp    0x44d8ee
44d8db:	8a c1                	mov    %cl,%al
44d8dd:	2c 41                	sub    $0x41,%al
44d8df:	3c 19                	cmp    $0x19,%al
44d8e1:	77 08                	ja     0x44d8eb
44d8e3:	0f be c1             	movsbl %cl,%eax
44d8e6:	83 e8 37             	sub    $0x37,%eax
44d8e9:	eb 03                	jmp    0x44d8ee
44d8eb:	83 c8 ff             	or     $0xffffffff,%eax
44d8ee:	83 f8 0a             	cmp    $0xa,%eax
44d8f1:	73 0c                	jae    0x44d8ff
44d8f3:	8b 06                	mov    (%esi),%eax
44d8f5:	8a 08                	mov    (%eax),%cl
44d8f7:	40                   	inc    %eax
44d8f8:	88 4d fb             	mov    %cl,-0x5(%ebp)
44d8fb:	89 06                	mov    %eax,(%esi)
44d8fd:	eb bc                	jmp    0x44d8bb
44d8ff:	84 ed                	test   %ch,%ch
44d901:	74 02                	je     0x44d905
44d903:	f7 df                	neg    %edi
44d905:	84 d2                	test   %dl,%dl
44d907:	75 1d                	jne    0x44d926
44d909:	ff 75 fb             	push   -0x5(%ebp)
44d90c:	8b ce                	mov    %esi,%ecx
44d90e:	e8 ad 5a 00 00       	call   0x4533c0
44d913:	8b 45 ec             	mov    -0x14(%ebp),%eax
44d916:	89 06                	mov    %eax,(%esi)
44d918:	c6 45 fb 00          	movb   $0x0,-0x5(%ebp)
44d91c:	8a 00                	mov    (%eax),%al
44d91e:	88 45 fb             	mov    %al,-0x5(%ebp)
44d921:	8b 45 f0             	mov    -0x10(%ebp),%eax
44d924:	89 06                	mov    %eax,(%esi)
44d926:	ff 75 fb             	push   -0x5(%ebp)
44d929:	8b ce                	mov    %esi,%ecx
44d92b:	e8 90 5a 00 00       	call   0x4533c0
44d930:	8b 55 e8             	mov    -0x18(%ebp),%edx
44d933:	3b da                	cmp    %edx,%ebx
44d935:	74 5c                	je     0x44d993
44d937:	80 7b ff 00          	cmpb   $0x0,-0x1(%ebx)
44d93b:	75 05                	jne    0x44d942
44d93d:	4b                   	dec    %ebx
44d93e:	3b da                	cmp    %edx,%ebx
44d940:	75 f5                	jne    0x44d937
44d942:	3b da                	cmp    %edx,%ebx
44d944:	74 4d                	je     0x44d993
44d946:	81 ff 50 14 00 00    	cmp    $0x1450,%edi
44d94c:	7f 26                	jg     0x44d974
44d94e:	be b0 eb ff ff       	mov    $0xffffebb0,%esi
44d953:	3b fe                	cmp    %esi,%edi
44d955:	7c 25                	jl     0x44d97c
44d957:	8a 4d ff             	mov    -0x1(%ebp),%cl
44d95a:	33 c0                	xor    %eax,%eax
44d95c:	84 c9                	test   %cl,%cl
44d95e:	0f 94 c0             	sete   %al
44d961:	48                   	dec    %eax
44d962:	83 e0 03             	and    $0x3,%eax
44d965:	40                   	inc    %eax
44d966:	0f af 45 f4          	imul   -0xc(%ebp),%eax
44d96a:	03 f8                	add    %eax,%edi
44d96c:	81 ff 50 14 00 00    	cmp    $0x1450,%edi
44d972:	7e 04                	jle    0x44d978
44d974:	6a 09                	push   $0x9
44d976:	eb 1d                	jmp    0x44d995
44d978:	3b fe                	cmp    %esi,%edi
44d97a:	7d 04                	jge    0x44d980
44d97c:	6a 08                	push   $0x8
44d97e:	eb 15                	jmp    0x44d995
44d980:	8b 45 10             	mov    0x10(%ebp),%eax
44d983:	2b da                	sub    %edx,%ebx
44d985:	89 38                	mov    %edi,(%eax)
44d987:	89 58 04             	mov    %ebx,0x4(%eax)
44d98a:	33 c0                	xor    %eax,%eax
44d98c:	84 c9                	test   %cl,%cl
44d98e:	0f 95 c0             	setne  %al
44d991:	eb 20                	jmp    0x44d9b3
44d993:	6a 02                	push   $0x2
44d995:	58                   	pop    %eax
44d996:	eb 1b                	jmp    0x44d9b3
44d998:	57                   	push   %edi
44d999:	8d 45 fb             	lea    -0x5(%ebp),%eax
44d99c:	56                   	push   %esi
44d99d:	50                   	push   %eax
44d99e:	e8 95 0f 00 00       	call   0x44e938
44d9a3:	eb 0b                	jmp    0x44d9b0
44d9a5:	57                   	push   %edi
44d9a6:	8d 45 fb             	lea    -0x5(%ebp),%eax
44d9a9:	56                   	push   %esi
44d9aa:	50                   	push   %eax
44d9ab:	e8 37 0e 00 00       	call   0x44e7e7
44d9b0:	83 c4 0c             	add    $0xc,%esp
44d9b3:	5f                   	pop    %edi
44d9b4:	5b                   	pop    %ebx
44d9b5:	5e                   	pop    %esi
44d9b6:	8b e5                	mov    %ebp,%esp
44d9b8:	5d                   	pop    %ebp
44d9b9:	c3                   	ret
44d9ba:	8b ff                	mov    %edi,%edi
44d9bc:	55                   	push   %ebp
44d9bd:	8b ec                	mov    %esp,%ebp
44d9bf:	83 ec 30             	sub    $0x30,%esp
44d9c2:	53                   	push   %ebx
44d9c3:	8b 5d 0c             	mov    0xc(%ebp),%ebx
44d9c6:	8b cb                	mov    %ebx,%ecx
44d9c8:	e8 62 5a 00 00       	call   0x45342f
44d9cd:	84 c0                	test   %al,%al
44d9cf:	75 08                	jne    0x44d9d9
44d9d1:	6a 07                	push   $0x7
44d9d3:	58                   	pop    %eax
44d9d4:	e9 09 0e 00 00       	jmp    0x44e7e2
44d9d9:	57                   	push   %edi
44d9da:	8b 3b                	mov    (%ebx),%edi
44d9dc:	89 7d dc             	mov    %edi,-0x24(%ebp)
44d9df:	66 8b 07             	mov    (%edi),%ax
44d9e2:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
44d9e6:	8d 47 02             	lea    0x2(%edi),%eax
44d9e9:	eb 0c                	jmp    0x44d9f7
44d9eb:	8b 0b                	mov    (%ebx),%ecx
44d9ed:	66 8b 01             	mov    (%ecx),%ax
44d9f0:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
44d9f4:	8d 41 02             	lea    0x2(%ecx),%eax
44d9f7:	6a 08                	push   $0x8
44d9f9:	ff 75 f8             	push   -0x8(%ebp)
44d9fc:	89 03                	mov    %eax,(%ebx)
44d9fe:	e8 ed 49 02 00       	call   0x4723f0
44da03:	59                   	pop    %ecx
44da04:	59                   	pop    %ecx
44da05:	85 c0                	test   %eax,%eax
44da07:	75 e2                	jne    0x44d9eb
44da09:	66 8b 55 f8          	mov    -0x8(%ebp),%dx
44da0d:	56                   	push   %esi
44da0e:	8b 75 10             	mov    0x10(%ebp),%esi
44da11:	6a 2d                	push   $0x2d
44da13:	59                   	pop    %ecx
44da14:	81 c6 08 03 00 00    	add    $0x308,%esi
44da1a:	89 4d d0             	mov    %ecx,-0x30(%ebp)