414bdc:	ff 75 0c             	push   0xc(%ebp)
414bdf:	57                   	push   %edi
414be0:	e8 86 01 00 00       	call   0x414d6b
414be5:	8b 45 fc             	mov    -0x4(%ebp),%eax
414be8:	56                   	push   %esi
414be9:	40                   	inc    %eax
414bea:	6a 30                	push   $0x30
414bec:	50                   	push   %eax
414bed:	e8 fe 42 ff ff       	call   0x408ef0
414bf2:	83 c4 1c             	add    $0x1c,%esp
414bf5:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
414bf9:	5f                   	pop    %edi
414bfa:	5e                   	pop    %esi
414bfb:	5b                   	pop    %ebx
414bfc:	74 0a                	je     0x414c08
414bfe:	8b 45 ec             	mov    -0x14(%ebp),%eax
414c01:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
414c08:	33 c0                	xor    %eax,%eax
414c0a:	c9                   	leave
414c0b:	c3                   	ret
414c0c:	8b ff                	mov    %edi,%edi
414c0e:	55                   	push   %ebp
414c0f:	8b ec                	mov    %esp,%ebp
414c11:	83 ec 14             	sub    $0x14,%esp
414c14:	53                   	push   %ebx
414c15:	56                   	push   %esi
414c16:	57                   	push   %edi
414c17:	ff 75 18             	push   0x18(%ebp)
414c1a:	33 c0                	xor    %eax,%eax
414c1c:	8d 7d ec             	lea    -0x14(%ebp),%edi
414c1f:	ff 75 14             	push   0x14(%ebp)
414c22:	ab                   	stos   %eax,%es:(%edi)
414c23:	ab                   	stos   %eax,%es:(%edi)
414c24:	ab                   	stos   %eax,%es:(%edi)
414c25:	8d 45 ec             	lea    -0x14(%ebp),%eax
414c28:	8b 7d 1c             	mov    0x1c(%ebp),%edi
414c2b:	50                   	push   %eax
414c2c:	8b 45 08             	mov    0x8(%ebp),%eax
414c2f:	57                   	push   %edi
414c30:	ff 70 04             	push   0x4(%eax)
414c33:	ff 30                	push   (%eax)
414c35:	e8 b7 a4 00 00       	call   0x41f0f1
414c3a:	8b 5d 0c             	mov    0xc(%ebp),%ebx
414c3d:	33 d2                	xor    %edx,%edx
414c3f:	83 c4 18             	add    $0x18,%esp
414c42:	89 45 fc             	mov    %eax,-0x4(%ebp)
414c45:	83 7d ec 2d          	cmpl   $0x2d,-0x14(%ebp)
414c49:	8b 45 f0             	mov    -0x10(%ebp),%eax
414c4c:	0f 94 c2             	sete   %dl
414c4f:	48                   	dec    %eax
414c50:	89 45 f8             	mov    %eax,-0x8(%ebp)
414c53:	83 c8 ff             	or     $0xffffffff,%eax
414c56:	8d 34 1a             	lea    (%edx,%ebx,1),%esi
414c59:	39 45 10             	cmp    %eax,0x10(%ebp)
414c5c:	74 05                	je     0x414c63
414c5e:	8b 45 10             	mov    0x10(%ebp),%eax
414c61:	2b c2                	sub    %edx,%eax
414c63:	ff 75 28             	push   0x28(%ebp)
414c66:	8d 4d ec             	lea    -0x14(%ebp),%ecx
414c69:	ff 75 fc             	push   -0x4(%ebp)
414c6c:	51                   	push   %ecx
414c6d:	57                   	push   %edi
414c6e:	50                   	push   %eax
414c6f:	56                   	push   %esi
414c70:	e8 a0 a3 00 00       	call   0x41f015
414c75:	83 c4 18             	add    $0x18,%esp
414c78:	85 c0                	test   %eax,%eax
414c7a:	74 05                	je     0x414c81
414c7c:	c6 03 00             	movb   $0x0,(%ebx)
414c7f:	eb 50                	jmp    0x414cd1
414c81:	8b 45 f0             	mov    -0x10(%ebp),%eax
414c84:	48                   	dec    %eax
414c85:	83 f8 fc             	cmp    $0xfffffffc,%eax
414c88:	7c 2b                	jl     0x414cb5
414c8a:	3b c7                	cmp    %edi,%eax
414c8c:	7d 27                	jge    0x414cb5
414c8e:	39 45 f8             	cmp    %eax,-0x8(%ebp)
414c91:	7d 0a                	jge    0x414c9d
414c93:	8a 06                	mov    (%esi),%al
414c95:	46                   	inc    %esi
414c96:	84 c0                	test   %al,%al
414c98:	75 f9                	jne    0x414c93
414c9a:	88 46 fe             	mov    %al,-0x2(%esi)
414c9d:	ff 75 2c             	push   0x2c(%ebp)
414ca0:	8d 45 ec             	lea    -0x14(%ebp),%eax
414ca3:	6a 01                	push   $0x1
414ca5:	50                   	push   %eax
414ca6:	57                   	push   %edi
414ca7:	ff 75 10             	push   0x10(%ebp)
414caa:	53                   	push   %ebx
414cab:	e8 64 fe ff ff       	call   0x414b14
414cb0:	83 c4 18             	add    $0x18,%esp
414cb3:	eb 1c                	jmp    0x414cd1
414cb5:	ff 75 2c             	push   0x2c(%ebp)
414cb8:	8d 45 ec             	lea    -0x14(%ebp),%eax
414cbb:	6a 01                	push   $0x1
414cbd:	50                   	push   %eax
414cbe:	ff 75 24             	push   0x24(%ebp)
414cc1:	ff 75 20             	push   0x20(%ebp)
414cc4:	57                   	push   %edi
414cc5:	ff 75 10             	push   0x10(%ebp)
414cc8:	53                   	push   %ebx
414cc9:	e8 6d fc ff ff       	call   0x41493b
414cce:	83 c4 20             	add    $0x20,%esp
414cd1:	5f                   	pop    %edi
414cd2:	5e                   	pop    %esi
414cd3:	5b                   	pop    %ebx
414cd4:	c9                   	leave
414cd5:	c3                   	ret
414cd6:	8b ff                	mov    %edi,%edi
414cd8:	55                   	push   %ebp
414cd9:	8b ec                	mov    %esp,%ebp
414cdb:	51                   	push   %ecx
414cdc:	8a 4d 0c             	mov    0xc(%ebp),%cl
414cdf:	8b 55 14             	mov    0x14(%ebp),%edx
414ce2:	0f b6 c1             	movzbl %cl,%eax
414ce5:	83 c0 04             	add    $0x4,%eax
414ce8:	3b d0                	cmp    %eax,%edx
414cea:	73 0b                	jae    0x414cf7
414cec:	8b 45 10             	mov    0x10(%ebp),%eax
414cef:	6a 0c                	push   $0xc
414cf1:	c6 00 00             	movb   $0x0,(%eax)
414cf4:	58                   	pop    %eax
414cf5:	c9                   	leave
414cf6:	c3                   	ret
414cf7:	84 c9                	test   %cl,%cl
414cf9:	8b 4d 10             	mov    0x10(%ebp),%ecx
414cfc:	74 0d                	je     0x414d0b
414cfe:	c6 01 2d             	movb   $0x2d,(%ecx)
414d01:	41                   	inc    %ecx
414d02:	c6 01 00             	movb   $0x0,(%ecx)
414d05:	83 fa ff             	cmp    $0xffffffff,%edx
414d08:	74 01                	je     0x414d0b
414d0a:	4a                   	dec    %edx
414d0b:	8b 45 08             	mov    0x8(%ebp),%eax
414d0e:	53                   	push   %ebx
414d0f:	56                   	push   %esi
414d10:	57                   	push   %edi
414d11:	0f b6 7d 18          	movzbl 0x18(%ebp),%edi
414d15:	8d 1c 85 fc ff ff ff 	lea    -0x4(,%eax,4),%ebx
414d1c:	83 f7 01             	xor    $0x1,%edi
414d1f:	03 ff                	add    %edi,%edi
414d21:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
414d24:	8b 34 85 f8 7c 42 00 	mov    0x427cf8(,%eax,4),%esi
414d2b:	8d 46 01             	lea    0x1(%esi),%eax
414d2e:	89 45 fc             	mov    %eax,-0x4(%ebp)
414d31:	8a 06                	mov    (%esi),%al
414d33:	46                   	inc    %esi
414d34:	84 c0                	test   %al,%al
414d36:	75 f9                	jne    0x414d31
414d38:	2b 75 fc             	sub    -0x4(%ebp),%esi
414d3b:	3b f2                	cmp    %edx,%esi
414d3d:	1b c0                	sbb    %eax,%eax
414d3f:	43                   	inc    %ebx
414d40:	03 c3                	add    %ebx,%eax
414d42:	03 c7                	add    %edi,%eax
414d44:	ff 34 85 f8 7c 42 00 	push   0x427cf8(,%eax,4)
414d4b:	52                   	push   %edx
414d4c:	51                   	push   %ecx
414d4d:	e8 fc d5 ff ff       	call   0x41234e
414d52:	83 c4 0c             	add    $0xc,%esp
414d55:	5f                   	pop    %edi
414d56:	5e                   	pop    %esi
414d57:	5b                   	pop    %ebx
414d58:	85 c0                	test   %eax,%eax
414d5a:	75 02                	jne    0x414d5e
414d5c:	c9                   	leave
414d5d:	c3                   	ret
414d5e:	33 c0                	xor    %eax,%eax
414d60:	50                   	push   %eax
414d61:	50                   	push   %eax
414d62:	50                   	push   %eax
414d63:	50                   	push   %eax
414d64:	50                   	push   %eax
414d65:	e8 44 83 ff ff       	call   0x40d0ae
414d6a:	cc                   	int3
414d6b:	8b ff                	mov    %edi,%edi
414d6d:	55                   	push   %ebp
414d6e:	8b ec                	mov    %esp,%ebp
414d70:	8b 55 14             	mov    0x14(%ebp),%edx
414d73:	85 d2                	test   %edx,%edx
414d75:	74 26                	je     0x414d9d
414d77:	56                   	push   %esi
414d78:	8b 75 10             	mov    0x10(%ebp),%esi
414d7b:	8b ce                	mov    %esi,%ecx
414d7d:	57                   	push   %edi
414d7e:	8d 79 01             	lea    0x1(%ecx),%edi
414d81:	8a 01                	mov    (%ecx),%al
414d83:	41                   	inc    %ecx
414d84:	84 c0                	test   %al,%al
414d86:	75 f9                	jne    0x414d81
414d88:	2b cf                	sub    %edi,%ecx
414d8a:	8d 41 01             	lea    0x1(%ecx),%eax
414d8d:	50                   	push   %eax
414d8e:	8d 04 16             	lea    (%esi,%edx,1),%eax
414d91:	56                   	push   %esi
414d92:	50                   	push   %eax
414d93:	e8 d8 3b ff ff       	call   0x408970
414d98:	83 c4 0c             	add    $0xc,%esp
414d9b:	5f                   	pop    %edi
414d9c:	5e                   	pop    %esi
414d9d:	5d                   	pop    %ebp
414d9e:	c3                   	ret
414d9f:	8b ff                	mov    %edi,%edi
414da1:	55                   	push   %ebp
414da2:	8b ec                	mov    %esp,%ebp
414da4:	53                   	push   %ebx
414da5:	8b 5d 14             	mov    0x14(%ebp),%ebx
414da8:	56                   	push   %esi
414da9:	8b 75 08             	mov    0x8(%ebp),%esi
414dac:	57                   	push   %edi
414dad:	0f bf cb             	movswl %bx,%ecx
414db0:	8b 56 04             	mov    0x4(%esi),%edx
414db3:	23 55 10             	and    0x10(%ebp),%edx
414db6:	8b 06                	mov    (%esi),%eax
414db8:	81 e2 ff ff 0f 00    	and    $0xfffff,%edx
414dbe:	23 45 0c             	and    0xc(%ebp),%eax
414dc1:	e8 ea d7 00 00       	call   0x4225b0
414dc6:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
414dca:	0f b7 f8             	movzwl %ax,%edi
414dcd:	75 09                	jne    0x414dd8
414dcf:	83 ff 08             	cmp    $0x8,%edi
414dd2:	1a c0                	sbb    %al,%al
414dd4:	fe c0                	inc    %al
414dd6:	eb 55                	jmp    0x414e2d
414dd8:	e8 60 41 00 00       	call   0x418f3d
414ddd:	85 c0                	test   %eax,%eax
414ddf:	75 12                	jne    0x414df3
414de1:	53                   	push   %ebx
414de2:	ff 75 10             	push   0x10(%ebp)
414de5:	ff 75 0c             	push   0xc(%ebp)
414de8:	56                   	push   %esi
414de9:	e8 f3 f6 ff ff       	call   0x4144e1
414dee:	83 c4 10             	add    $0x10,%esp
414df1:	eb 3a                	jmp    0x414e2d
414df3:	3d 00 02 00 00       	cmp    $0x200,%eax
414df8:	75 16                	jne    0x414e10
414dfa:	33 c0                	xor    %eax,%eax
414dfc:	66 85 ff             	test   %di,%di
414dff:	74 2c                	je     0x414e2d
414e01:	39 46 04             	cmp    %eax,0x4(%esi)
414e04:	7c 27                	jl     0x414e2d
414e06:	7f 04                	jg     0x414e0c
414e08:	39 06                	cmp    %eax,(%esi)
414e0a:	72 21                	jb     0x414e2d
414e0c:	b0 01                	mov    $0x1,%al
414e0e:	eb 1d                	jmp    0x414e2d
414e10:	3d 00 01 00 00       	cmp    $0x100,%eax
414e15:	75 14                	jne    0x414e2b
414e17:	33 c0                	xor    %eax,%eax
414e19:	66 85 ff             	test   %di,%di
414e1c:	74 0f                	je     0x414e2d
414e1e:	39 46 04             	cmp    %eax,0x4(%esi)
414e21:	7f 0a                	jg     0x414e2d
414e23:	7c e7                	jl     0x414e0c
414e25:	39 06                	cmp    %eax,(%esi)
414e27:	73 04                	jae    0x414e2d
414e29:	eb e1                	jmp    0x414e0c
414e2b:	32 c0                	xor    %al,%al
414e2d:	5f                   	pop    %edi
414e2e:	5e                   	pop    %esi
414e2f:	5b                   	pop    %ebx
414e30:	5d                   	pop    %ebp
414e31:	c3                   	ret
414e32:	8b ff                	mov    %edi,%edi
414e34:	55                   	push   %ebp
414e35:	8b ec                	mov    %esp,%ebp
414e37:	51                   	push   %ecx
414e38:	51                   	push   %ecx
414e39:	56                   	push   %esi
414e3a:	57                   	push   %edi
414e3b:	8b 7d 0c             	mov    0xc(%ebp),%edi
414e3e:	85 ff                	test   %edi,%edi
414e40:	75 16                	jne    0x414e58
414e42:	e8 b4 9f ff ff       	call   0x40edfb
414e47:	6a 16                	push   $0x16
414e49:	5e                   	pop    %esi
414e4a:	89 30                	mov    %esi,(%eax)
414e4c:	e8 30 82 ff ff       	call   0x40d081
414e51:	8b c6                	mov    %esi,%eax
414e53:	e9 32 01 00 00       	jmp    0x414f8a
414e58:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
414e5c:	76 e4                	jbe    0x414e42
414e5e:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
414e62:	74 de                	je     0x414e42
414e64:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
414e68:	76 d8                	jbe    0x414e42
414e6a:	8b 75 1c             	mov    0x1c(%ebp),%esi
414e6d:	53                   	push   %ebx
414e6e:	33 db                	xor    %ebx,%ebx
414e70:	83 fe 41             	cmp    $0x41,%esi
414e73:	74 12                	je     0x414e87
414e75:	83 fe 45             	cmp    $0x45,%esi
414e78:	74 0d                	je     0x414e87
414e7a:	83 fe 46             	cmp    $0x46,%esi
414e7d:	74 08                	je     0x414e87
414e7f:	88 5d fc             	mov    %bl,-0x4(%ebp)
414e82:	83 fe 47             	cmp    $0x47,%esi
414e85:	75 04                	jne    0x414e8b
414e87:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
414e8b:	8b 4d 24             	mov    0x24(%ebp),%ecx
414e8e:	8b c1                	mov    %ecx,%eax
414e90:	83 e0 08             	and    $0x8,%eax
414e93:	0b c3                	or     %ebx,%eax
414e95:	75 41                	jne    0x414ed8
414e97:	ff 75 08             	push   0x8(%ebp)
414e9a:	e8 e0 f5 ff ff       	call   0x41447f
414e9f:	59                   	pop    %ecx
414ea0:	8b c8                	mov    %eax,%ecx
414ea2:	85 c9                	test   %ecx,%ecx
414ea4:	74 2f                	je     0x414ed5
414ea6:	8b 45 08             	mov    0x8(%ebp),%eax
414ea9:	39 58 04             	cmp    %ebx,0x4(%eax)
414eac:	7f 0c                	jg     0x414eba
414eae:	7c 04                	jl     0x414eb4
414eb0:	39 18                	cmp    %ebx,(%eax)
414eb2:	73 06                	jae    0x414eba
414eb4:	c6 45 f8 01          	movb   $0x1,-0x8(%ebp)
414eb8:	eb 03                	jmp    0x414ebd
414eba:	88 5d f8             	mov    %bl,-0x8(%ebp)
414ebd:	ff 75 fc             	push   -0x4(%ebp)
414ec0:	ff 75 10             	push   0x10(%ebp)
414ec3:	57                   	push   %edi
414ec4:	ff 75 f8             	push   -0x8(%ebp)
414ec7:	51                   	push   %ecx
414ec8:	e8 09 fe ff ff       	call   0x414cd6
414ecd:	83 c4 14             	add    $0x14,%esp
414ed0:	e9 b4 00 00 00       	jmp    0x414f89
414ed5:	8b 4d 24             	mov    0x24(%ebp),%ecx
414ed8:	8b c1                	mov    %ecx,%eax
414eda:	83 e0 10             	and    $0x10,%eax
414edd:	0b c3                	or     %ebx,%eax
414edf:	74 04                	je     0x414ee5
414ee1:	6a 03                	push   $0x3
414ee3:	eb 02                	jmp    0x414ee7
414ee5:	6a 02                	push   $0x2
414ee7:	83 e1 20             	and    $0x20,%ecx
414eea:	0b cb                	or     %ebx,%ecx
414eec:	58                   	pop    %eax
414eed:	74 03                	je     0x414ef2
414eef:	8b 5d 30             	mov    0x30(%ebp),%ebx
414ef2:	83 fe 61             	cmp    $0x61,%esi
414ef5:	7f 2b                	jg     0x414f22
414ef7:	74 0a                	je     0x414f03
414ef9:	83 ee 41             	sub    $0x41,%esi
414efc:	74 05                	je     0x414f03
414efe:	83 ee 04             	sub    $0x4,%esi
414f01:	eb 22                	jmp    0x414f25
414f03:	53                   	push   %ebx
414f04:	ff 75 2c             	push   0x2c(%ebp)