413aaf:	8d 45 f8             	lea    -0x8(%ebp),%eax
413ab2:	50                   	push   %eax
413ab3:	ff 75 08             	push   0x8(%ebp)
413ab6:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
413aba:	e8 e3 1a 00 00       	call   0x4155a2
413abf:	59                   	pop    %ecx
413ac0:	59                   	pop    %ecx
413ac1:	c9                   	leave
413ac2:	c3                   	ret
413ac3:	8b ff                	mov    %edi,%edi
413ac5:	55                   	push   %ebp
413ac6:	8b ec                	mov    %esp,%ebp
413ac8:	51                   	push   %ecx
413ac9:	51                   	push   %ecx
413aca:	8b 45 0c             	mov    0xc(%ebp),%eax
413acd:	89 45 f8             	mov    %eax,-0x8(%ebp)
413ad0:	8d 45 f8             	lea    -0x8(%ebp),%eax
413ad3:	50                   	push   %eax
413ad4:	ff 75 08             	push   0x8(%ebp)
413ad7:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
413adb:	e8 68 38 00 00       	call   0x417348
413ae0:	59                   	pop    %ecx
413ae1:	59                   	pop    %ecx
413ae2:	c9                   	leave
413ae3:	c3                   	ret
413ae4:	8b ff                	mov    %edi,%edi
413ae6:	55                   	push   %ebp
413ae7:	8b ec                	mov    %esp,%ebp
413ae9:	51                   	push   %ecx
413aea:	51                   	push   %ecx
413aeb:	8b 45 0c             	mov    0xc(%ebp),%eax
413aee:	89 45 f8             	mov    %eax,-0x8(%ebp)
413af1:	8d 45 f8             	lea    -0x8(%ebp),%eax
413af4:	50                   	push   %eax
413af5:	ff 75 08             	push   0x8(%ebp)
413af8:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
413afc:	e8 47 38 00 00       	call   0x417348
413b01:	59                   	pop    %ecx
413b02:	59                   	pop    %ecx
413b03:	c9                   	leave
413b04:	c3                   	ret
413b05:	8b ff                	mov    %edi,%edi
413b07:	55                   	push   %ebp
413b08:	8b ec                	mov    %esp,%ebp
413b0a:	ff 75 18             	push   0x18(%ebp)
413b0d:	8b 4d 08             	mov    0x8(%ebp),%ecx
413b10:	ff 75 14             	push   0x14(%ebp)
413b13:	ff 75 10             	push   0x10(%ebp)
413b16:	ff 75 0c             	push   0xc(%ebp)
413b19:	e8 9e 12 00 00       	call   0x414dbc
413b1e:	8b 45 08             	mov    0x8(%ebp),%eax
413b21:	5d                   	pop    %ebp
413b22:	c3                   	ret
413b23:	8b ff                	mov    %edi,%edi
413b25:	55                   	push   %ebp
413b26:	8b ec                	mov    %esp,%ebp
413b28:	81 ec 10 03 00 00    	sub    $0x310,%esp
413b2e:	a1 c0 d0 43 00       	mov    0x43d0c0,%eax
413b33:	33 c5                	xor    %ebp,%eax
413b35:	89 45 fc             	mov    %eax,-0x4(%ebp)
413b38:	8b 45 08             	mov    0x8(%ebp),%eax
413b3b:	56                   	push   %esi
413b3c:	8b 75 2c             	mov    0x2c(%ebp),%esi
413b3f:	85 f6                	test   %esi,%esi
413b41:	74 04                	je     0x413b47
413b43:	85 c0                	test   %eax,%eax
413b45:	75 26                	jne    0x413b6d
413b47:	e8 25 8b 00 00       	call   0x41c671
413b4c:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
413b52:	e8 97 98 ff ff       	call   0x40d3ee
413b57:	8b 4d 24             	mov    0x24(%ebp),%ecx
413b5a:	85 c9                	test   %ecx,%ecx
413b5c:	74 0a                	je     0x413b68
413b5e:	8b 45 1c             	mov    0x1c(%ebp),%eax
413b61:	0b 45 20             	or     0x20(%ebp),%eax
413b64:	75 02                	jne    0x413b68
413b66:	88 01                	mov    %al,(%ecx)
413b68:	33 c0                	xor    %eax,%eax
413b6a:	40                   	inc    %eax
413b6b:	eb 33                	jmp    0x413ba0
413b6d:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
413b73:	51                   	push   %ecx
413b74:	8d 4d 0c             	lea    0xc(%ebp),%ecx
413b77:	51                   	push   %ecx
413b78:	50                   	push   %eax
413b79:	e8 b9 00 00 00       	call   0x413c37
413b7e:	56                   	push   %esi
413b7f:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
413b85:	51                   	push   %ecx
413b86:	50                   	push   %eax
413b87:	e8 48 07 00 00       	call   0x4142d4
413b8c:	8b 55 24             	mov    0x24(%ebp),%edx
413b8f:	83 c4 18             	add    $0x18,%esp
413b92:	85 d2                	test   %edx,%edx
413b94:	74 0a                	je     0x413ba0
413b96:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
413b99:	0b 4d 20             	or     0x20(%ebp),%ecx
413b9c:	75 02                	jne    0x413ba0
413b9e:	88 0a                	mov    %cl,(%edx)
413ba0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
413ba3:	33 cd                	xor    %ebp,%ecx
413ba5:	5e                   	pop    %esi
413ba6:	e8 fc 60 ff ff       	call   0x409ca7
413bab:	c9                   	leave
413bac:	c3                   	ret
413bad:	8b ff                	mov    %edi,%edi
413baf:	55                   	push   %ebp
413bb0:	8b ec                	mov    %esp,%ebp
413bb2:	81 ec 10 03 00 00    	sub    $0x310,%esp
413bb8:	a1 c0 d0 43 00       	mov    0x43d0c0,%eax
413bbd:	33 c5                	xor    %ebp,%eax
413bbf:	89 45 fc             	mov    %eax,-0x4(%ebp)
413bc2:	8b 45 08             	mov    0x8(%ebp),%eax
413bc5:	56                   	push   %esi
413bc6:	8b 75 2c             	mov    0x2c(%ebp),%esi
413bc9:	85 f6                	test   %esi,%esi
413bcb:	74 04                	je     0x413bd1
413bcd:	85 c0                	test   %eax,%eax
413bcf:	75 26                	jne    0x413bf7
413bd1:	e8 9b 8a 00 00       	call   0x41c671
413bd6:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
413bdc:	e8 0d 98 ff ff       	call   0x40d3ee
413be1:	8b 4d 24             	mov    0x24(%ebp),%ecx
413be4:	85 c9                	test   %ecx,%ecx
413be6:	74 0a                	je     0x413bf2
413be8:	8b 45 1c             	mov    0x1c(%ebp),%eax
413beb:	0b 45 20             	or     0x20(%ebp),%eax
413bee:	75 02                	jne    0x413bf2
413bf0:	88 01                	mov    %al,(%ecx)
413bf2:	33 c0                	xor    %eax,%eax
413bf4:	40                   	inc    %eax
413bf5:	eb 33                	jmp    0x413c2a
413bf7:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
413bfd:	51                   	push   %ecx
413bfe:	8d 4d 0c             	lea    0xc(%ebp),%ecx
413c01:	51                   	push   %ecx
413c02:	50                   	push   %eax
413c03:	e8 2f 00 00 00       	call   0x413c37
413c08:	56                   	push   %esi
413c09:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
413c0f:	51                   	push   %ecx
413c10:	50                   	push   %eax
413c11:	e8 2a 08 00 00       	call   0x414440
413c16:	8b 55 24             	mov    0x24(%ebp),%edx
413c19:	83 c4 18             	add    $0x18,%esp
413c1c:	85 d2                	test   %edx,%edx
413c1e:	74 0a                	je     0x413c2a
413c20:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
413c23:	0b 4d 20             	or     0x20(%ebp),%ecx
413c26:	75 02                	jne    0x413c2a
413c28:	88 0a                	mov    %cl,(%edx)
413c2a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
413c2d:	33 cd                	xor    %ebp,%ecx
413c2f:	5e                   	pop    %esi
413c30:	e8 72 60 ff ff       	call   0x409ca7
413c35:	c9                   	leave
413c36:	c3                   	ret
413c37:	8b ff                	mov    %edi,%edi
413c39:	55                   	push   %ebp
413c3a:	8b ec                	mov    %esp,%ebp
413c3c:	83 ec 28             	sub    $0x28,%esp
413c3f:	53                   	push   %ebx
413c40:	56                   	push   %esi
413c41:	8b 75 0c             	mov    0xc(%ebp),%esi
413c44:	8b ce                	mov    %esi,%ecx
413c46:	57                   	push   %edi
413c47:	e8 80 46 00 00       	call   0x4182cc
413c4c:	84 c0                	test   %al,%al
413c4e:	0f 84 4a 02 00 00    	je     0x413e9e
413c54:	8b 4e 14             	mov    0x14(%esi),%ecx
413c57:	8b 46 10             	mov    0x10(%esi),%eax
413c5a:	89 4d e8             	mov    %ecx,-0x18(%ebp)
413c5d:	8b ce                	mov    %esi,%ecx
413c5f:	89 45 e4             	mov    %eax,-0x1c(%ebp)
413c62:	e8 54 3c 00 00       	call   0x4178bb
413c67:	8b 7d 08             	mov    0x8(%ebp),%edi
413c6a:	8d 4d f9             	lea    -0x7(%ebp),%ecx
413c6d:	89 4d dc             	mov    %ecx,-0x24(%ebp)
413c70:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
413c73:	89 75 d8             	mov    %esi,-0x28(%ebp)
413c76:	89 4d e0             	mov    %ecx,-0x20(%ebp)
413c79:	eb 07                	jmp    0x413c82
413c7b:	8b ce                	mov    %esi,%ecx
413c7d:	e8 39 3c 00 00       	call   0x4178bb
413c82:	57                   	push   %edi
413c83:	88 45 f9             	mov    %al,-0x7(%ebp)
413c86:	0f b6 c0             	movzbl %al,%eax
413c89:	6a 08                	push   $0x8
413c8b:	50                   	push   %eax
413c8c:	e8 5b ec ff ff       	call   0x4128ec
413c91:	83 c4 0c             	add    $0xc,%esp
413c94:	85 c0                	test   %eax,%eax
413c96:	75 e3                	jne    0x413c7b
413c98:	8a 4d f9             	mov    -0x7(%ebp),%cl
413c9b:	8b 55 10             	mov    0x10(%ebp),%edx
413c9e:	80 f9 2d             	cmp    $0x2d,%cl
413ca1:	0f 94 c0             	sete   %al
413ca4:	88 82 08 03 00 00    	mov    %al,0x308(%edx)
413caa:	74 05                	je     0x413cb1
413cac:	80 f9 2b             	cmp    $0x2b,%cl
413caf:	75 0c                	jne    0x413cbd
413cb1:	8b ce                	mov    %esi,%ecx
413cb3:	e8 03 3c 00 00       	call   0x4178bb
413cb8:	8a c8                	mov    %al,%cl
413cba:	88 4d f9             	mov    %cl,-0x7(%ebp)
413cbd:	80 f9 49             	cmp    $0x49,%cl
413cc0:	0f 84 c1 03 00 00    	je     0x414087
413cc6:	80 f9 69             	cmp    $0x69,%cl
413cc9:	0f 84 b8 03 00 00    	je     0x414087
413ccf:	80 f9 4e             	cmp    $0x4e,%cl
413cd2:	0f 84 97 03 00 00    	je     0x41406f
413cd8:	80 f9 6e             	cmp    $0x6e,%cl
413cdb:	0f 84 8e 03 00 00    	je     0x41406f
413ce1:	33 db                	xor    %ebx,%ebx
413ce3:	88 5d ff             	mov    %bl,-0x1(%ebp)
413ce6:	80 f9 30             	cmp    $0x30,%cl
413ce9:	75 43                	jne    0x413d2e
413ceb:	8b 46 14             	mov    0x14(%esi),%eax
413cee:	8b ce                	mov    %esi,%ecx
413cf0:	8b 7e 10             	mov    0x10(%esi),%edi
413cf3:	89 45 f4             	mov    %eax,-0xc(%ebp)
413cf6:	e8 c0 3b 00 00       	call   0x4178bb
413cfb:	88 45 f0             	mov    %al,-0x10(%ebp)
413cfe:	3c 78                	cmp    $0x78,%al
413d00:	74 13                	je     0x413d15
413d02:	3c 58                	cmp    $0x58,%al
413d04:	74 0f                	je     0x413d15
413d06:	ff 75 f0             	push   -0x10(%ebp)
413d09:	8b ce                	mov    %esi,%ecx
413d0b:	e8 3b 45 00 00       	call   0x41824b
413d10:	8a 4d f9             	mov    -0x7(%ebp),%cl
413d13:	eb 19                	jmp    0x413d2e
413d15:	8b ce                	mov    %esi,%ecx
413d17:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
413d1b:	e8 9b 3b 00 00       	call   0x4178bb
413d20:	8a c8                	mov    %al,%cl
413d22:	89 7d e4             	mov    %edi,-0x1c(%ebp)
413d25:	8b 45 f4             	mov    -0xc(%ebp),%eax
413d28:	88 4d f9             	mov    %cl,-0x7(%ebp)
413d2b:	89 45 e8             	mov    %eax,-0x18(%ebp)
413d2e:	8b 55 10             	mov    0x10(%ebp),%edx
413d31:	89 5d f0             	mov    %ebx,-0x10(%ebp)
413d34:	88 5d fe             	mov    %bl,-0x2(%ebp)
413d37:	8d 42 08             	lea    0x8(%edx),%eax
413d3a:	89 45 f4             	mov    %eax,-0xc(%ebp)
413d3d:	80 f9 30             	cmp    $0x30,%cl
413d40:	75 18                	jne    0x413d5a
413d42:	c6 45 fe 01          	movb   $0x1,-0x2(%ebp)
413d46:	8b ce                	mov    %esi,%ecx
413d48:	e8 6e 3b 00 00       	call   0x4178bb
413d4d:	8a c8                	mov    %al,%cl
413d4f:	88 4d f9             	mov    %cl,-0x7(%ebp)
413d52:	80 f9 30             	cmp    $0x30,%cl
413d55:	74 ef                	je     0x413d46
413d57:	8b 55 10             	mov    0x10(%ebp),%edx
413d5a:	8b 7d f4             	mov    -0xc(%ebp),%edi
413d5d:	33 db                	xor    %ebx,%ebx
413d5f:	38 5d ff             	cmp    %bl,-0x1(%ebp)
413d62:	0f 94 c3             	sete   %bl
413d65:	4b                   	dec    %ebx
413d66:	83 e3 06             	and    $0x6,%ebx
413d69:	83 c3 09             	add    $0x9,%ebx
413d6c:	89 5d ec             	mov    %ebx,-0x14(%ebp)
413d6f:	8a c1                	mov    %cl,%al
413d71:	2c 30                	sub    $0x30,%al
413d73:	3c 09                	cmp    $0x9,%al
413d75:	77 08                	ja     0x413d7f
413d77:	0f be c1             	movsbl %cl,%eax
413d7a:	83 e8 30             	sub    $0x30,%eax
413d7d:	eb 23                	jmp    0x413da2
413d7f:	8a c1                	mov    %cl,%al
413d81:	2c 61                	sub    $0x61,%al
413d83:	3c 19                	cmp    $0x19,%al
413d85:	77 08                	ja     0x413d8f
413d87:	0f be c1             	movsbl %cl,%eax
413d8a:	83 e8 57             	sub    $0x57,%eax
413d8d:	eb 13                	jmp    0x413da2
413d8f:	8a c1                	mov    %cl,%al
413d91:	2c 41                	sub    $0x41,%al
413d93:	3c 19                	cmp    $0x19,%al
413d95:	77 08                	ja     0x413d9f
413d97:	0f be c1             	movsbl %cl,%eax
413d9a:	83 e8 37             	sub    $0x37,%eax
413d9d:	eb 03                	jmp    0x413da2
413d9f:	83 c8 ff             	or     $0xffffffff,%eax
413da2:	3b c3                	cmp    %ebx,%eax
413da4:	77 25                	ja     0x413dcb
413da6:	8d 8a 08 03 00 00    	lea    0x308(%edx),%ecx
413dac:	c6 45 fe 01          	movb   $0x1,-0x2(%ebp)
413db0:	3b f9                	cmp    %ecx,%edi
413db2:	74 03                	je     0x413db7
413db4:	88 07                	mov    %al,(%edi)
413db6:	47                   	inc    %edi
413db7:	ff 45 f0             	incl   -0x10(%ebp)
413dba:	8b ce                	mov    %esi,%ecx
413dbc:	e8 fa 3a 00 00       	call   0x4178bb
413dc1:	8b 55 10             	mov    0x10(%ebp),%edx
413dc4:	8a c8                	mov    %al,%cl
413dc6:	88 4d f9             	mov    %cl,-0x7(%ebp)
413dc9:	eb a4                	jmp    0x413d6f
413dcb:	89 7d f4             	mov    %edi,-0xc(%ebp)
413dce:	8b 7d 08             	mov    0x8(%ebp),%edi
413dd1:	6a 00                	push   $0x0
413dd3:	5b                   	pop    %ebx
413dd4:	8b 07                	mov    (%edi),%eax
413dd6:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
413ddc:	8b 00                	mov    (%eax),%eax
413dde:	3a 08                	cmp    (%eax),%cl
413de0:	0f 85 9c 00 00 00    	jne    0x413e82
413de6:	8b ce                	mov    %esi,%ecx
413de8:	e8 ce 3a 00 00       	call   0x4178bb
413ded:	8b 55 10             	mov    0x10(%ebp),%edx
413df0:	8a c8                	mov    %al,%cl
413df2:	83 c2 08             	add    $0x8,%edx
413df5:	88 4d f9             	mov    %cl,-0x7(%ebp)
413df8:	39 55 f4             	cmp    %edx,-0xc(%ebp)
413dfb:	75 21                	jne    0x413e1e
413dfd:	80 f9 30             	cmp    $0x30,%cl
413e00:	75 1c                	jne    0x413e1e
413e02:	8b 5d f0             	mov    -0x10(%ebp),%ebx
413e05:	c6 45 fe 01          	movb   $0x1,-0x2(%ebp)
413e09:	8b ce                	mov    %esi,%ecx
413e0b:	4b                   	dec    %ebx
413e0c:	e8 aa 3a 00 00       	call   0x4178bb
413e11:	8a c8                	mov    %al,%cl
413e13:	88 4d f9             	mov    %cl,-0x7(%ebp)
413e16:	80 f9 30             	cmp    $0x30,%cl
413e19:	74 ee                	je     0x413e09
413e1b:	89 5d f0             	mov    %ebx,-0x10(%ebp)
413e1e:	8b 7d ec             	mov    -0x14(%ebp),%edi
413e21:	8b 5d f4             	mov    -0xc(%ebp),%ebx
413e24:	8a c1                	mov    %cl,%al
413e26:	2c 30                	sub    $0x30,%al
413e28:	3c 09                	cmp    $0x9,%al
413e2a:	77 08                	ja     0x413e34
413e2c:	0f be c1             	movsbl %cl,%eax
413e2f:	83 e8 30             	sub    $0x30,%eax
413e32:	eb 23                	jmp    0x413e57
413e34:	8a c1                	mov    %cl,%al
413e36:	2c 61                	sub    $0x61,%al
413e38:	3c 19                	cmp    $0x19,%al
413e3a:	77 08                	ja     0x413e44
413e3c:	0f be c1             	movsbl %cl,%eax
413e3f:	83 e8 57             	sub    $0x57,%eax
413e42:	eb 13                	jmp    0x413e57
413e44:	8a c1                	mov    %cl,%al
413e46:	2c 41                	sub    $0x41,%al
413e48:	3c 19                	cmp    $0x19,%al
413e4a:	77 08                	ja     0x413e54
413e4c:	0f be c1             	movsbl %cl,%eax