5ed957:	8a 18                	mov    (%eax),%bl
5ed959:	40                   	inc    %eax
5ed95a:	89 45 0c             	mov    %eax,0xc(%ebp)
5ed95d:	8d 45 c8             	lea    -0x38(%ebp),%eax
5ed960:	50                   	push   %eax
5ed961:	0f b6 c3             	movzbl %bl,%eax
5ed964:	6a 08                	push   $0x8
5ed966:	50                   	push   %eax
5ed967:	88 5d f4             	mov    %bl,-0xc(%ebp)
5ed96a:	88 5d ff             	mov    %bl,-0x1(%ebp)
5ed96d:	e8 42 03 00 00       	call   0x5edcb4
5ed972:	83 c4 0c             	add    $0xc,%esp
5ed975:	85 c0                	test   %eax,%eax
5ed977:	75 db                	jne    0x5ed954
5ed979:	0f b6 45 18          	movzbl 0x18(%ebp),%eax
5ed97d:	89 45 f8             	mov    %eax,-0x8(%ebp)
5ed980:	80 fb 2d             	cmp    $0x2d,%bl
5ed983:	75 08                	jne    0x5ed98d
5ed985:	83 c8 02             	or     $0x2,%eax
5ed988:	89 45 f8             	mov    %eax,-0x8(%ebp)
5ed98b:	eb 05                	jmp    0x5ed992
5ed98d:	80 fb 2b             	cmp    $0x2b,%bl
5ed990:	75 11                	jne    0x5ed9a3
5ed992:	8b 55 0c             	mov    0xc(%ebp),%edx
5ed995:	8a 1a                	mov    (%edx),%bl
5ed997:	42                   	inc    %edx
5ed998:	88 5d ff             	mov    %bl,-0x1(%ebp)
5ed99b:	88 5d f4             	mov    %bl,-0xc(%ebp)
5ed99e:	89 55 0c             	mov    %edx,0xc(%ebp)
5ed9a1:	eb 03                	jmp    0x5ed9a6
5ed9a3:	8b 55 0c             	mov    0xc(%ebp),%edx
5ed9a6:	8b 4d 14             	mov    0x14(%ebp),%ecx
5ed9a9:	85 c9                	test   %ecx,%ecx
5ed9ab:	74 09                	je     0x5ed9b6
5ed9ad:	83 f9 10             	cmp    $0x10,%ecx
5ed9b0:	0f 85 8a 00 00 00    	jne    0x5eda40
5ed9b6:	8a c3                	mov    %bl,%al
5ed9b8:	2c 30                	sub    $0x30,%al
5ed9ba:	3c 09                	cmp    $0x9,%al
5ed9bc:	77 08                	ja     0x5ed9c6
5ed9be:	0f be c3             	movsbl %bl,%eax
5ed9c1:	83 c0 d0             	add    $0xffffffd0,%eax
5ed9c4:	eb 23                	jmp    0x5ed9e9
5ed9c6:	8a c3                	mov    %bl,%al
5ed9c8:	2c 61                	sub    $0x61,%al
5ed9ca:	3c 19                	cmp    $0x19,%al
5ed9cc:	77 08                	ja     0x5ed9d6
5ed9ce:	0f be c3             	movsbl %bl,%eax
5ed9d1:	83 c0 a9             	add    $0xffffffa9,%eax
5ed9d4:	eb 13                	jmp    0x5ed9e9
5ed9d6:	8a c3                	mov    %bl,%al
5ed9d8:	2c 41                	sub    $0x41,%al
5ed9da:	3c 19                	cmp    $0x19,%al
5ed9dc:	77 08                	ja     0x5ed9e6
5ed9de:	0f be c3             	movsbl %bl,%eax
5ed9e1:	83 c0 c9             	add    $0xffffffc9,%eax
5ed9e4:	eb 03                	jmp    0x5ed9e9
5ed9e6:	83 c8 ff             	or     $0xffffffff,%eax
5ed9e9:	85 c0                	test   %eax,%eax
5ed9eb:	74 0c                	je     0x5ed9f9
5ed9ed:	85 c9                	test   %ecx,%ecx
5ed9ef:	75 4f                	jne    0x5eda40
5ed9f1:	6a 0a                	push   $0xa
5ed9f3:	58                   	pop    %eax
5ed9f4:	89 45 14             	mov    %eax,0x14(%ebp)
5ed9f7:	eb 49                	jmp    0x5eda42
5ed9f9:	8a 02                	mov    (%edx),%al
5ed9fb:	42                   	inc    %edx
5ed9fc:	88 45 e8             	mov    %al,-0x18(%ebp)
5ed9ff:	89 55 0c             	mov    %edx,0xc(%ebp)
5eda02:	3c 78                	cmp    $0x78,%al
5eda04:	74 1f                	je     0x5eda25
5eda06:	3c 58                	cmp    $0x58,%al
5eda08:	74 1b                	je     0x5eda25
5eda0a:	85 c9                	test   %ecx,%ecx
5eda0c:	75 07                	jne    0x5eda15
5eda0e:	c7 45 14 08 00 00 00 	movl   $0x8,0x14(%ebp)
5eda15:	ff 75 e8             	push   -0x18(%ebp)
5eda18:	8d 4d 0c             	lea    0xc(%ebp),%ecx
5eda1b:	e8 00 02 00 00       	call   0x5edc20
5eda20:	8b 45 14             	mov    0x14(%ebp),%eax
5eda23:	eb 1d                	jmp    0x5eda42
5eda25:	85 c9                	test   %ecx,%ecx
5eda27:	75 07                	jne    0x5eda30
5eda29:	c7 45 14 10 00 00 00 	movl   $0x10,0x14(%ebp)
5eda30:	8a 02                	mov    (%edx),%al
5eda32:	88 45 ff             	mov    %al,-0x1(%ebp)
5eda35:	88 45 f4             	mov    %al,-0xc(%ebp)
5eda38:	8d 42 01             	lea    0x1(%edx),%eax
5eda3b:	89 45 0c             	mov    %eax,0xc(%ebp)
5eda3e:	eb e0                	jmp    0x5eda20
5eda40:	8b c1                	mov    %ecx,%eax
5eda42:	99                   	cltd
5eda43:	53                   	push   %ebx
5eda44:	8b ca                	mov    %edx,%ecx
5eda46:	89 45 d8             	mov    %eax,-0x28(%ebp)
5eda49:	51                   	push   %ecx
5eda4a:	50                   	push   %eax
5eda4b:	6a ff                	push   $0xffffffff
5eda4d:	6a ff                	push   $0xffffffff
5eda4f:	89 4d dc             	mov    %ecx,-0x24(%ebp)
5eda52:	e8 29 44 ff ff       	call   0x5e1e80
5eda57:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
5eda5a:	5b                   	pop    %ebx
5eda5b:	90                   	nop
5eda5c:	8b 5d f8             	mov    -0x8(%ebp),%ebx
5eda5f:	89 4d e0             	mov    %ecx,-0x20(%ebp)
5eda62:	8a 4d ff             	mov    -0x1(%ebp),%cl
5eda65:	89 45 ec             	mov    %eax,-0x14(%ebp)
5eda68:	89 55 e8             	mov    %edx,-0x18(%ebp)
5eda6b:	8a c1                	mov    %cl,%al
5eda6d:	2c 30                	sub    $0x30,%al
5eda6f:	3c 09                	cmp    $0x9,%al
5eda71:	77 08                	ja     0x5eda7b
5eda73:	0f be c9             	movsbl %cl,%ecx
5eda76:	83 c1 d0             	add    $0xffffffd0,%ecx
5eda79:	eb 23                	jmp    0x5eda9e
5eda7b:	8a c1                	mov    %cl,%al
5eda7d:	2c 61                	sub    $0x61,%al
5eda7f:	3c 19                	cmp    $0x19,%al
5eda81:	77 08                	ja     0x5eda8b
5eda83:	0f be c9             	movsbl %cl,%ecx
5eda86:	83 c1 a9             	add    $0xffffffa9,%ecx
5eda89:	eb 13                	jmp    0x5eda9e
5eda8b:	8a c1                	mov    %cl,%al
5eda8d:	2c 41                	sub    $0x41,%al
5eda8f:	3c 19                	cmp    $0x19,%al
5eda91:	77 08                	ja     0x5eda9b
5eda93:	0f be c9             	movsbl %cl,%ecx
5eda96:	83 c1 c9             	add    $0xffffffc9,%ecx
5eda99:	eb 03                	jmp    0x5eda9e
5eda9b:	83 c9 ff             	or     $0xffffffff,%ecx
5eda9e:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5edaa1:	83 f9 ff             	cmp    $0xffffffff,%ecx
5edaa4:	74 60                	je     0x5edb06
5edaa6:	3b 4d 14             	cmp    0x14(%ebp),%ecx
5edaa9:	73 5b                	jae    0x5edb06
5edaab:	8b 45 f0             	mov    -0x10(%ebp),%eax
5edaae:	83 cb 08             	or     $0x8,%ebx
5edab1:	3b f2                	cmp    %edx,%esi
5edab3:	72 23                	jb     0x5edad8
5edab5:	8b 55 ec             	mov    -0x14(%ebp),%edx
5edab8:	77 04                	ja     0x5edabe
5edaba:	3b c2                	cmp    %edx,%eax
5edabc:	72 1a                	jb     0x5edad8
5edabe:	3b c2                	cmp    %edx,%eax
5edac0:	75 11                	jne    0x5edad3
5edac2:	3b 75 e8             	cmp    -0x18(%ebp),%esi
5edac5:	75 0c                	jne    0x5edad3
5edac7:	3b 7d e4             	cmp    -0x1c(%ebp),%edi
5edaca:	72 0f                	jb     0x5edadb
5edacc:	77 05                	ja     0x5edad3
5edace:	3b 4d e0             	cmp    -0x20(%ebp),%ecx
5edad1:	76 08                	jbe    0x5edadb
5edad3:	83 cb 04             	or     $0x4,%ebx
5edad6:	eb 1a                	jmp    0x5edaf2
5edad8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5edadb:	56                   	push   %esi
5edadc:	50                   	push   %eax
5edadd:	ff 75 dc             	push   -0x24(%ebp)
5edae0:	ff 75 d8             	push   -0x28(%ebp)
5edae3:	e8 18 40 ff ff       	call   0x5e1b00
5edae8:	03 45 f8             	add    -0x8(%ebp),%eax
5edaeb:	8b f2                	mov    %edx,%esi
5edaed:	89 45 f0             	mov    %eax,-0x10(%ebp)
5edaf0:	13 f7                	adc    %edi,%esi
5edaf2:	8b 45 0c             	mov    0xc(%ebp),%eax
5edaf5:	8b 55 e8             	mov    -0x18(%ebp),%edx
5edaf8:	8a 08                	mov    (%eax),%cl
5edafa:	40                   	inc    %eax
5edafb:	88 4d f4             	mov    %cl,-0xc(%ebp)
5edafe:	89 45 0c             	mov    %eax,0xc(%ebp)
5edb01:	e9 65 ff ff ff       	jmp    0x5eda6b
5edb06:	ff 75 f4             	push   -0xc(%ebp)
5edb09:	8d 4d 0c             	lea    0xc(%ebp),%ecx
5edb0c:	89 5d f8             	mov    %ebx,-0x8(%ebp)
5edb0f:	e8 0c 01 00 00       	call   0x5edc20
5edb14:	f6 c3 08             	test   $0x8,%bl
5edb17:	75 0a                	jne    0x5edb23
5edb19:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5edb1c:	8b f7                	mov    %edi,%esi
5edb1e:	89 45 0c             	mov    %eax,0xc(%ebp)
5edb21:	eb 41                	jmp    0x5edb64
5edb23:	8b 5d f0             	mov    -0x10(%ebp),%ebx
5edb26:	56                   	push   %esi
5edb27:	53                   	push   %ebx
5edb28:	ff 75 f8             	push   -0x8(%ebp)
5edb2b:	e8 2e f5 ff ff       	call   0x5ed05e
5edb30:	83 c4 0c             	add    $0xc,%esp
5edb33:	84 c0                	test   %al,%al
5edb35:	74 31                	je     0x5edb68
5edb37:	e8 bd f4 ff ff       	call   0x5ecff9
5edb3c:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
5edb42:	8b 45 f8             	mov    -0x8(%ebp),%eax
5edb45:	a8 01                	test   $0x1,%al
5edb47:	75 08                	jne    0x5edb51
5edb49:	83 cb ff             	or     $0xffffffff,%ebx
5edb4c:	83 ce ff             	or     $0xffffffff,%esi
5edb4f:	eb 23                	jmp    0x5edb74
5edb51:	a8 02                	test   $0x2,%al
5edb53:	74 07                	je     0x5edb5c
5edb55:	be 00 00 00 80       	mov    $0x80000000,%esi
5edb5a:	eb 08                	jmp    0x5edb64
5edb5c:	83 cf ff             	or     $0xffffffff,%edi
5edb5f:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
5edb64:	8b df                	mov    %edi,%ebx
5edb66:	eb 0c                	jmp    0x5edb74
5edb68:	f6 45 f8 02          	testb  $0x2,-0x8(%ebp)
5edb6c:	74 06                	je     0x5edb74
5edb6e:	f7 db                	neg    %ebx
5edb70:	13 f7                	adc    %edi,%esi
5edb72:	f7 de                	neg    %esi
5edb74:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
5edb78:	0f 84 a7 fd ff ff    	je     0x5ed925
5edb7e:	8b 45 c4             	mov    -0x3c(%ebp),%eax
5edb81:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
5edb88:	e9 98 fd ff ff       	jmp    0x5ed925
5edb8d:	8b ff                	mov    %edi,%edi
5edb8f:	55                   	push   %ebp
5edb90:	8b ec                	mov    %esp,%ebp
5edb92:	53                   	push   %ebx
5edb93:	57                   	push   %edi
5edb94:	8b f9                	mov    %ecx,%edi
5edb96:	8b 4d 08             	mov    0x8(%ebp),%ecx
5edb99:	c6 47 0c 00          	movb   $0x0,0xc(%edi)
5edb9d:	8d 5f 04             	lea    0x4(%edi),%ebx
5edba0:	85 c9                	test   %ecx,%ecx
5edba2:	74 09                	je     0x5edbad
5edba4:	8b 01                	mov    (%ecx),%eax
5edba6:	89 03                	mov    %eax,(%ebx)
5edba8:	8b 41 04             	mov    0x4(%ecx),%eax
5edbab:	eb 15                	jmp    0x5edbc2
5edbad:	83 3d a8 10 73 00 00 	cmpl   $0x0,0x7310a8
5edbb4:	75 11                	jne    0x5edbc7
5edbb6:	a1 38 8c 72 00       	mov    0x728c38,%eax
5edbbb:	89 03                	mov    %eax,(%ebx)
5edbbd:	a1 3c 8c 72 00       	mov    0x728c3c,%eax
5edbc2:	89 43 04             	mov    %eax,0x4(%ebx)
5edbc5:	eb 41                	jmp    0x5edc08
5edbc7:	56                   	push   %esi
5edbc8:	e8 6c 68 01 00       	call   0x604439
5edbcd:	89 07                	mov    %eax,(%edi)
5edbcf:	8d 77 08             	lea    0x8(%edi),%esi
5edbd2:	53                   	push   %ebx
5edbd3:	50                   	push   %eax
5edbd4:	8b 48 4c             	mov    0x4c(%eax),%ecx
5edbd7:	89 0b                	mov    %ecx,(%ebx)
5edbd9:	8b 48 48             	mov    0x48(%eax),%ecx
5edbdc:	89 0e                	mov    %ecx,(%esi)
5edbde:	e8 eb 6b 01 00       	call   0x6047ce
5edbe3:	56                   	push   %esi
5edbe4:	ff 37                	push   (%edi)
5edbe6:	e8 10 6c 01 00       	call   0x6047fb
5edbeb:	8b 0f                	mov    (%edi),%ecx
5edbed:	83 c4 10             	add    $0x10,%esp
5edbf0:	8b 81 50 03 00 00    	mov    0x350(%ecx),%eax
5edbf6:	5e                   	pop    %esi
5edbf7:	a8 02                	test   $0x2,%al
5edbf9:	75 0d                	jne    0x5edc08
5edbfb:	83 c8 02             	or     $0x2,%eax
5edbfe:	89 81 50 03 00 00    	mov    %eax,0x350(%ecx)
5edc04:	c6 47 0c 01          	movb   $0x1,0xc(%edi)
5edc08:	8b c7                	mov    %edi,%eax
5edc0a:	5f                   	pop    %edi
5edc0b:	5b                   	pop    %ebx
5edc0c:	5d                   	pop    %ebp
5edc0d:	c2 04 00             	ret    $0x4
5edc10:	80 79 0c 00          	cmpb   $0x0,0xc(%ecx)
5edc14:	74 09                	je     0x5edc1f
5edc16:	8b 01                	mov    (%ecx),%eax
5edc18:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
5edc1f:	c3                   	ret
5edc20:	8b ff                	mov    %edi,%edi
5edc22:	55                   	push   %ebp
5edc23:	8b ec                	mov    %esp,%ebp
5edc25:	8b 01                	mov    (%ecx),%eax
5edc27:	48                   	dec    %eax
5edc28:	89 01                	mov    %eax,(%ecx)
5edc2a:	8a 4d 08             	mov    0x8(%ebp),%cl
5edc2d:	84 c9                	test   %cl,%cl
5edc2f:	74 14                	je     0x5edc45
5edc31:	38 08                	cmp    %cl,(%eax)
5edc33:	74 10                	je     0x5edc45
5edc35:	e8 bf f3 ff ff       	call   0x5ecff9
5edc3a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5edc40:	e8 da f2 ff ff       	call   0x5ecf1f
5edc45:	5d                   	pop    %ebp
5edc46:	c2 04 00             	ret    $0x4
5edc49:	8b ff                	mov    %edi,%edi
5edc4b:	55                   	push   %ebp
5edc4c:	8b ec                	mov    %esp,%ebp
5edc4e:	8b 01                	mov    (%ecx),%eax
5edc50:	83 c0 fe             	add    $0xfffffffe,%eax
5edc53:	89 01                	mov    %eax,(%ecx)
5edc55:	66 8b 4d 08          	mov    0x8(%ebp),%cx
5edc59:	66 85 c9             	test   %cx,%cx
5edc5c:	74 15                	je     0x5edc73
5edc5e:	66 39 08             	cmp    %cx,(%eax)
5edc61:	74 10                	je     0x5edc73
5edc63:	e8 91 f3 ff ff       	call   0x5ecff9
5edc68:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5edc6e:	e8 ac f2 ff ff       	call   0x5ecf1f
5edc73:	5d                   	pop    %ebp
5edc74:	c2 04 00             	ret    $0x4
5edc77:	83 39 00             	cmpl   $0x0,(%ecx)
5edc7a:	75 13                	jne    0x5edc8f
5edc7c:	e8 78 f3 ff ff       	call   0x5ecff9
5edc81:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5edc87:	e8 93 f2 ff ff       	call   0x5ecf1f
5edc8c:	32 c0                	xor    %al,%al
5edc8e:	c3                   	ret
5edc8f:	b0 01                	mov    $0x1,%al
5edc91:	c3                   	ret
5edc92:	8b ff                	mov    %edi,%edi
5edc94:	55                   	push   %ebp
5edc95:	8b ec                	mov    %esp,%ebp
5edc97:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5edc9a:	8d 41 01             	lea    0x1(%ecx),%eax
5edc9d:	3d 00 01 00 00       	cmp    $0x100,%eax
5edca2:	77 0c                	ja     0x5edcb0
5edca4:	8b 45 08             	mov    0x8(%ebp),%eax
5edca7:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
5edcab:	23 45 10             	and    0x10(%ebp),%eax
5edcae:	5d                   	pop    %ebp
5edcaf:	c3                   	ret
5edcb0:	33 c0                	xor    %eax,%eax
5edcb2:	5d                   	pop    %ebp
5edcb3:	c3                   	ret
5edcb4:	8b ff                	mov    %edi,%edi
5edcb6:	55                   	push   %ebp
5edcb7:	8b ec                	mov    %esp,%ebp
5edcb9:	8b 4d 10             	mov    0x10(%ebp),%ecx
5edcbc:	56                   	push   %esi
5edcbd:	85 c9                	test   %ecx,%ecx
5edcbf:	74 30                	je     0x5edcf1
5edcc1:	8b 55 08             	mov    0x8(%ebp),%edx
5edcc4:	8b 31                	mov    (%ecx),%esi
5edcc6:	8d 42 01             	lea    0x1(%edx),%eax
5edcc9:	3d 00 01 00 00       	cmp    $0x100,%eax
5edcce:	77 0b                	ja     0x5edcdb
5edcd0:	8b 06                	mov    (%esi),%eax
5edcd2:	0f b7 04 50          	movzwl (%eax,%edx,2),%eax
5edcd6:	23 45 0c             	and    0xc(%ebp),%eax
5edcd9:	eb 2a                	jmp    0x5edd05
5edcdb:	83 7e 04 01          	cmpl   $0x1,0x4(%esi)
5edcdf:	7e 0c                	jle    0x5edced
5edce1:	51                   	push   %ecx
5edce2:	ff 75 0c             	push   0xc(%ebp)
5edce5:	52                   	push   %edx
5edce6:	e8 18 6a 01 00       	call   0x604703