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
413e4f:	83 e8 37             	sub    $0x37,%eax
413e52:	eb 03                	jmp    0x413e57
413e54:	83 c8 ff             	or     $0xffffffff,%eax
413e57:	3b c7                	cmp    %edi,%eax
413e59:	77 22                	ja     0x413e7d
413e5b:	8b 4d 10             	mov    0x10(%ebp),%ecx
413e5e:	81 c1 08 03 00 00    	add    $0x308,%ecx
413e64:	c6 45 fe 01          	movb   $0x1,-0x2(%ebp)
413e68:	3b d9                	cmp    %ecx,%ebx
413e6a:	74 03                	je     0x413e6f
413e6c:	88 03                	mov    %al,(%ebx)
413e6e:	43                   	inc    %ebx
413e6f:	8b ce                	mov    %esi,%ecx
413e71:	e8 45 3a 00 00       	call   0x4178bb
413e76:	8a c8                	mov    %al,%cl
413e78:	88 4d f9             	mov    %cl,-0x7(%ebp)
413e7b:	eb a7                	jmp    0x413e24
413e7d:	89 5d f4             	mov    %ebx,-0xc(%ebp)
413e80:	33 db                	xor    %ebx,%ebx
413e82:	80 7d fe 00          	cmpb   $0x0,-0x2(%ebp)
413e86:	75 1e                	jne    0x413ea6
413e88:	8d 4d d8             	lea    -0x28(%ebp),%ecx
413e8b:	e8 a6 0f 00 00       	call   0x414e36
413e90:	84 c0                	test   %al,%al
413e92:	74 0a                	je     0x413e9e
413e94:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
413e98:	0f 85 78 01 00 00    	jne    0x414016
413e9e:	6a 07                	push   $0x7
413ea0:	58                   	pop    %eax
413ea1:	5f                   	pop    %edi
413ea2:	5e                   	pop    %esi
413ea3:	5b                   	pop    %ebx
413ea4:	c9                   	leave
413ea5:	c3                   	ret
413ea6:	ff 75 f9             	push   -0x7(%ebp)
413ea9:	8b ce                	mov    %esi,%ecx
413eab:	e8 9b 43 00 00       	call   0x41824b
413eb0:	8b 4e 14             	mov    0x14(%esi),%ecx
413eb3:	8b 46 10             	mov    0x10(%esi),%eax
413eb6:	89 4d e8             	mov    %ecx,-0x18(%ebp)
413eb9:	8b ce                	mov    %esi,%ecx
413ebb:	89 45 e4             	mov    %eax,-0x1c(%ebp)
413ebe:	e8 f8 39 00 00       	call   0x4178bb
413ec3:	88 45 f9             	mov    %al,-0x7(%ebp)
413ec6:	8a cb                	mov    %bl,%cl
413ec8:	3c 45                	cmp    $0x45,%al
413eca:	74 11                	je     0x413edd
413ecc:	3c 50                	cmp    $0x50,%al
413ece:	74 08                	je     0x413ed8
413ed0:	3c 65                	cmp    $0x65,%al
413ed2:	74 09                	je     0x413edd
413ed4:	3c 70                	cmp    $0x70,%al
413ed6:	75 0b                	jne    0x413ee3
413ed8:	8a 4d ff             	mov    -0x1(%ebp),%cl
413edb:	eb 06                	jmp    0x413ee3
413edd:	8a 4d ff             	mov    -0x1(%ebp),%cl
413ee0:	80 f1 01             	xor    $0x1,%cl
413ee3:	84 c9                	test   %cl,%cl
413ee5:	0f 84 06 01 00 00    	je     0x413ff1
413eeb:	8b ce                	mov    %esi,%ecx
413eed:	e8 c9 39 00 00       	call   0x4178bb
413ef2:	8a c8                	mov    %al,%cl
413ef4:	80 f9 2d             	cmp    $0x2d,%cl
413ef7:	88 4d f9             	mov    %cl,-0x7(%ebp)
413efa:	0f 94 45 fd          	sete   -0x3(%ebp)
413efe:	80 f9 2b             	cmp    $0x2b,%cl
413f01:	74 05                	je     0x413f08
413f03:	80 f9 2d             	cmp    $0x2d,%cl
413f06:	75 0c                	jne    0x413f14
413f08:	8b ce                	mov    %esi,%ecx
413f0a:	e8 ac 39 00 00       	call   0x4178bb
413f0f:	8a c8                	mov    %al,%cl
413f11:	88 4d f9             	mov    %cl,-0x7(%ebp)
413f14:	88 5d fe             	mov    %bl,-0x2(%ebp)
413f17:	80 f9 30             	cmp    $0x30,%cl
413f1a:	75 15                	jne    0x413f31
413f1c:	c6 45 fe 01          	movb   $0x1,-0x2(%ebp)
413f20:	8b ce                	mov    %esi,%ecx
413f22:	e8 94 39 00 00       	call   0x4178bb
413f27:	8a c8                	mov    %al,%cl
413f29:	88 4d f9             	mov    %cl,-0x7(%ebp)
413f2c:	80 f9 30             	cmp    $0x30,%cl
413f2f:	74 ef                	je     0x413f20
413f31:	8a c1                	mov    %cl,%al
413f33:	2c 30                	sub    $0x30,%al
413f35:	3c 09                	cmp    $0x9,%al
413f37:	77 08                	ja     0x413f41
413f39:	0f be c1             	movsbl %cl,%eax
413f3c:	83 e8 30             	sub    $0x30,%eax
413f3f:	eb 1e                	jmp    0x413f5f
413f41:	8a c1                	mov    %cl,%al
413f43:	2c 61                	sub    $0x61,%al
413f45:	3c 19                	cmp    $0x19,%al
413f47:	77 08                	ja     0x413f51
413f49:	0f be c1             	movsbl %cl,%eax
413f4c:	83 e8 57             	sub    $0x57,%eax
413f4f:	eb 0e                	jmp    0x413f5f
413f51:	8a c1                	mov    %cl,%al
413f53:	2c 41                	sub    $0x41,%al
413f55:	3c 19                	cmp    $0x19,%al
413f57:	77 2f                	ja     0x413f88
413f59:	0f be c1             	movsbl %cl,%eax
413f5c:	83 e8 37             	sub    $0x37,%eax
413f5f:	83 f8 0a             	cmp    $0xa,%eax
413f62:	73 24                	jae    0x413f88
413f64:	6b db 0a             	imul   $0xa,%ebx,%ebx
413f67:	c6 45 fe 01          	movb   $0x1,-0x2(%ebp)
413f6b:	03 d8                	add    %eax,%ebx
413f6d:	81 fb 50 14 00 00    	cmp    $0x1450,%ebx
413f73:	7f 0e                	jg     0x413f83
413f75:	8b ce                	mov    %esi,%ecx
413f77:	e8 3f 39 00 00       	call   0x4178bb
413f7c:	8a c8                	mov    %al,%cl
413f7e:	88 4d f9             	mov    %cl,-0x7(%ebp)
413f81:	eb ae                	jmp    0x413f31
413f83:	bb 51 14 00 00       	mov    $0x1451,%ebx
413f88:	8a c1                	mov    %cl,%al
413f8a:	2c 30                	sub    $0x30,%al
413f8c:	3c 09                	cmp    $0x9,%al
413f8e:	77 08                	ja     0x413f98
413f90:	0f be c1             	movsbl %cl,%eax
413f93:	83 e8 30             	sub    $0x30,%eax
413f96:	eb 1e                	jmp    0x413fb6
413f98:	8a c1                	mov    %cl,%al
413f9a:	2c 61                	sub    $0x61,%al
413f9c:	3c 19                	cmp    $0x19,%al
413f9e:	77 08                	ja     0x413fa8
413fa0:	0f be c1             	movsbl %cl,%eax
413fa3:	83 e8 57             	sub    $0x57,%eax
413fa6:	eb 0e                	jmp    0x413fb6
413fa8:	8a c1                	mov    %cl,%al
413faa:	2c 41                	sub    $0x41,%al
413fac:	3c 19                	cmp    $0x19,%al
413fae:	77 19                	ja     0x413fc9
413fb0:	0f be c1             	movsbl %cl,%eax
413fb3:	83 e8 37             	sub    $0x37,%eax
413fb6:	83 f8 0a             	cmp    $0xa,%eax
413fb9:	73 0e                	jae    0x413fc9
413fbb:	8b ce                	mov    %esi,%ecx
413fbd:	e8 f9 38 00 00       	call   0x4178bb
413fc2:	8a c8                	mov    %al,%cl
413fc4:	88 4d f9             	mov    %cl,-0x7(%ebp)
413fc7:	eb bf                	jmp    0x413f88
413fc9:	80 7d fd 00          	cmpb   $0x0,-0x3(%ebp)
413fcd:	74 02                	je     0x413fd1
413fcf:	f7 db                	neg    %ebx
413fd1:	80 7d fe 00          	cmpb   $0x0,-0x2(%ebp)
413fd5:	75 1a                	jne    0x413ff1
413fd7:	8d 4d d8             	lea    -0x28(%ebp),%ecx
413fda:	e8 57 0e 00 00       	call   0x414e36
413fdf:	84 c0                	test   %al,%al
413fe1:	0f 84 b7 fe ff ff    	je     0x413e9e
413fe7:	8b ce                	mov    %esi,%ecx
413fe9:	e8 cd 38 00 00       	call   0x4178bb
413fee:	88 45 f9             	mov    %al,-0x7(%ebp)
413ff1:	ff 75 f9             	push   -0x7(%ebp)
413ff4:	8b ce                	mov    %esi,%ecx
413ff6:	e8 50 42 00 00       	call   0x41824b
413ffb:	8b 7d 10             	mov    0x10(%ebp),%edi
413ffe:	8b 55 f4             	mov    -0xc(%ebp),%edx
414001:	8d 77 08             	lea    0x8(%edi),%esi
414004:	eb 0c                	jmp    0x414012
414006:	8d 42 ff             	lea    -0x1(%edx),%eax
414009:	8b ca                	mov    %edx,%ecx
41400b:	80 38 00             	cmpb   $0x0,(%eax)
41400e:	8b d0                	mov    %eax,%edx
414010:	75 0b                	jne    0x41401d
414012:	3b d6                	cmp    %esi,%edx
414014:	75 f0                	jne    0x414006
414016:	6a 02                	push   $0x2
414018:	e9 83 fe ff ff       	jmp    0x413ea0
41401d:	81 fb 50 14 00 00    	cmp    $0x1450,%ebx
414023:	7f 43                	jg     0x414068
414025:	81 fb b0 eb ff ff    	cmp    $0xffffebb0,%ebx
41402b:	7c 34                	jl     0x414061