408ae8:	5b                   	pop    %ebx
408ae9:	5d                   	pop    %ebp
408aea:	c3                   	ret
408aeb:	55                   	push   %ebp
408aec:	8b ec                	mov    %esp,%ebp
408aee:	56                   	push   %esi
408aef:	57                   	push   %edi
408af0:	33 f6                	xor    %esi,%esi
408af2:	ff 75 0c             	push   0xc(%ebp)
408af5:	ff 75 08             	push   0x8(%ebp)
408af8:	e8 df 70 00 00       	call   0x40fbdc
408afd:	8b f8                	mov    %eax,%edi
408aff:	59                   	pop    %ecx
408b00:	59                   	pop    %ecx
408b01:	85 ff                	test   %edi,%edi
408b03:	75 2c                	jne    0x408b31
408b05:	39 45 0c             	cmp    %eax,0xc(%ebp)
408b08:	74 27                	je     0x408b31
408b0a:	39 05 a8 1d 42 00    	cmp    %eax,0x421da8
408b10:	76 1f                	jbe    0x408b31
408b12:	56                   	push   %esi
408b13:	ff 15 20 90 41 00    	call   *0x419020
408b19:	8d 86 e8 03 00 00    	lea    0x3e8(%esi),%eax
408b1f:	8b f0                	mov    %eax,%esi
408b21:	3b 05 a8 1d 42 00    	cmp    0x421da8,%eax
408b27:	76 03                	jbe    0x408b2c
408b29:	83 ce ff             	or     $0xffffffff,%esi
408b2c:	83 fe ff             	cmp    $0xffffffff,%esi
408b2f:	75 c1                	jne    0x408af2
408b31:	8b c7                	mov    %edi,%eax
408b33:	5f                   	pop    %edi
408b34:	5e                   	pop    %esi
408b35:	5d                   	pop    %ebp
408b36:	c3                   	ret
408b37:	55                   	push   %ebp
408b38:	8b ec                	mov    %esp,%ebp
408b3a:	8b 55 0c             	mov    0xc(%ebp),%edx
408b3d:	a1 88 08 42 00       	mov    0x420888,%eax
408b42:	8b 4d 08             	mov    0x8(%ebp),%ecx
408b45:	23 4d 0c             	and    0xc(%ebp),%ecx
408b48:	f7 d2                	not    %edx
408b4a:	23 d0                	and    %eax,%edx
408b4c:	0b d1                	or     %ecx,%edx
408b4e:	89 15 88 08 42 00    	mov    %edx,0x420888
408b54:	5d                   	pop    %ebp
408b55:	c3                   	ret
408b56:	e8 a6 71 00 00       	call   0x40fd01
408b5b:	85 c0                	test   %eax,%eax
408b5d:	74 08                	je     0x408b67
408b5f:	6a 16                	push   $0x16
408b61:	e8 c4 71 00 00       	call   0x40fd2a
408b66:	59                   	pop    %ecx
408b67:	f6 05 88 08 42 00 02 	testb  $0x2,0x420888
408b6e:	74 21                	je     0x408b91
408b70:	6a 17                	push   $0x17
408b72:	e8 01 ef 00 00       	call   0x417a78
408b77:	85 c0                	test   %eax,%eax
408b79:	74 05                	je     0x408b80
408b7b:	6a 07                	push   $0x7
408b7d:	59                   	pop    %ecx
408b7e:	cd 29                	int    $0x29
408b80:	6a 01                	push   $0x1
408b82:	68 15 00 00 40       	push   $0x40000015
408b87:	6a 03                	push   $0x3
408b89:	e8 0c 29 00 00       	call   0x40b49a
408b8e:	83 c4 0c             	add    $0xc,%esp
408b91:	6a 03                	push   $0x3
408b93:	e8 fe 1f 00 00       	call   0x40ab96
408b98:	cc                   	int3
408b99:	cc                   	int3
408b9a:	cc                   	int3
408b9b:	cc                   	int3
408b9c:	cc                   	int3
408b9d:	cc                   	int3
408b9e:	cc                   	int3
408b9f:	cc                   	int3
408ba0:	8b 54 24 04          	mov    0x4(%esp),%edx
408ba4:	8b 4c 24 08          	mov    0x8(%esp),%ecx
408ba8:	f7 c2 03 00 00 00    	test   $0x3,%edx
408bae:	75 40                	jne    0x408bf0
408bb0:	8b 02                	mov    (%edx),%eax
408bb2:	3a 01                	cmp    (%ecx),%al
408bb4:	75 32                	jne    0x408be8
408bb6:	84 c0                	test   %al,%al
408bb8:	74 26                	je     0x408be0
408bba:	3a 61 01             	cmp    0x1(%ecx),%ah
408bbd:	75 29                	jne    0x408be8
408bbf:	84 e4                	test   %ah,%ah
408bc1:	74 1d                	je     0x408be0
408bc3:	c1 e8 10             	shr    $0x10,%eax
408bc6:	3a 41 02             	cmp    0x2(%ecx),%al
408bc9:	75 1d                	jne    0x408be8
408bcb:	84 c0                	test   %al,%al
408bcd:	74 11                	je     0x408be0
408bcf:	3a 61 03             	cmp    0x3(%ecx),%ah
408bd2:	75 14                	jne    0x408be8
408bd4:	83 c1 04             	add    $0x4,%ecx
408bd7:	83 c2 04             	add    $0x4,%edx
408bda:	84 e4                	test   %ah,%ah
408bdc:	75 d2                	jne    0x408bb0
408bde:	8b ff                	mov    %edi,%edi
408be0:	33 c0                	xor    %eax,%eax
408be2:	c3                   	ret
408be3:	eb 03                	jmp    0x408be8
408be5:	cc                   	int3
408be6:	cc                   	int3
408be7:	cc                   	int3
408be8:	1b c0                	sbb    %eax,%eax
408bea:	83 c8 01             	or     $0x1,%eax
408bed:	c3                   	ret
408bee:	8b ff                	mov    %edi,%edi
408bf0:	f7 c2 01 00 00 00    	test   $0x1,%edx
408bf6:	74 18                	je     0x408c10
408bf8:	8a 02                	mov    (%edx),%al
408bfa:	83 c2 01             	add    $0x1,%edx
408bfd:	3a 01                	cmp    (%ecx),%al
408bff:	75 e7                	jne    0x408be8
408c01:	83 c1 01             	add    $0x1,%ecx
408c04:	84 c0                	test   %al,%al
408c06:	74 d8                	je     0x408be0
408c08:	f7 c2 02 00 00 00    	test   $0x2,%edx
408c0e:	74 a0                	je     0x408bb0
408c10:	66 8b 02             	mov    (%edx),%ax
408c13:	83 c2 02             	add    $0x2,%edx
408c16:	3a 01                	cmp    (%ecx),%al
408c18:	75 ce                	jne    0x408be8
408c1a:	84 c0                	test   %al,%al
408c1c:	74 c2                	je     0x408be0
408c1e:	3a 61 01             	cmp    0x1(%ecx),%ah
408c21:	75 c5                	jne    0x408be8
408c23:	84 e4                	test   %ah,%ah
408c25:	74 b9                	je     0x408be0
408c27:	83 c1 02             	add    $0x2,%ecx
408c2a:	eb 84                	jmp    0x408bb0
408c2c:	55                   	push   %ebp
408c2d:	8b ec                	mov    %esp,%ebp
408c2f:	e8 0f 00 00 00       	call   0x408c43
408c34:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
408c38:	74 05                	je     0x408c3f
408c3a:	e8 86 84 00 00       	call   0x4110c5
408c3f:	db e2                	fnclex
408c41:	5d                   	pop    %ebp
408c42:	c3                   	ret
408c43:	b8 39 06 41 00       	mov    $0x410639,%eax
408c48:	a3 9c 11 42 00       	mov    %eax,0x42119c
408c4d:	c7 05 a0 11 42 00 19 	movl   $0x410f19,0x4211a0
408c54:	0f 41 00
408c57:	c7 05 a4 11 42 00 a8 	movl   $0x410fa8,0x4211a4
408c5e:	0f 41 00
408c61:	c7 05 a8 11 42 00 00 	movl   $0x411000,0x4211a8
408c68:	10 41 00
408c6b:	c7 05 ac 11 42 00 83 	movl   $0x411083,0x4211ac
408c72:	10 41 00
408c75:	a3 b0 11 42 00       	mov    %eax,0x4211b0
408c7a:	c7 05 b4 11 42 00 5a 	movl   $0x41065a,0x4211b4
408c81:	06 41 00
408c84:	c7 05 b8 11 42 00 c0 	movl   $0x410fc0,0x4211b8
408c8b:	0f 41 00
408c8e:	c7 05 bc 11 42 00 2a 	movl   $0x410f2a,0x4211bc
408c95:	0f 41 00
408c98:	c7 05 c0 11 42 00 11 	movl   $0x411011,0x4211c0
408c9f:	10 41 00
408ca2:	c3                   	ret
408ca3:	55                   	push   %ebp
408ca4:	8b ec                	mov    %esp,%ebp
408ca6:	8b 45 08             	mov    0x8(%ebp),%eax
408ca9:	66 8b 08             	mov    (%eax),%cx
408cac:	83 c0 02             	add    $0x2,%eax
408caf:	66 85 c9             	test   %cx,%cx
408cb2:	75 f5                	jne    0x408ca9
408cb4:	2b 45 08             	sub    0x8(%ebp),%eax
408cb7:	d1 f8                	sar    $1,%eax
408cb9:	48                   	dec    %eax
408cba:	5d                   	pop    %ebp
408cbb:	c3                   	ret
408cbc:	55                   	push   %ebp
408cbd:	8b ec                	mov    %esp,%ebp
408cbf:	83 ec 18             	sub    $0x18,%esp
408cc2:	8d 4d e8             	lea    -0x18(%ebp),%ecx
408cc5:	53                   	push   %ebx
408cc6:	57                   	push   %edi
408cc7:	ff 75 0c             	push   0xc(%ebp)
408cca:	e8 2e c5 ff ff       	call   0x4051fd
408ccf:	8b 5d 08             	mov    0x8(%ebp),%ebx
408cd2:	bf 00 01 00 00       	mov    $0x100,%edi
408cd7:	3b df                	cmp    %edi,%ebx
408cd9:	73 60                	jae    0x408d3b
408cdb:	8b 4d e8             	mov    -0x18(%ebp),%ecx
408cde:	83 79 74 01          	cmpl   $0x1,0x74(%ecx)
408ce2:	7e 14                	jle    0x408cf8
408ce4:	8d 45 e8             	lea    -0x18(%ebp),%eax
408ce7:	50                   	push   %eax
408ce8:	6a 01                	push   $0x1
408cea:	53                   	push   %ebx
408ceb:	e8 00 35 00 00       	call   0x40c1f0
408cf0:	8b 4d e8             	mov    -0x18(%ebp),%ecx
408cf3:	83 c4 0c             	add    $0xc,%esp
408cf6:	eb 0d                	jmp    0x408d05
408cf8:	8b 81 90 00 00 00    	mov    0x90(%ecx),%eax
408cfe:	0f b7 04 58          	movzwl (%eax,%ebx,2),%eax
408d02:	83 e0 01             	and    $0x1,%eax
408d05:	85 c0                	test   %eax,%eax
408d07:	74 1e                	je     0x408d27
408d09:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
408d0d:	8b 81 94 00 00 00    	mov    0x94(%ecx),%eax
408d13:	0f b6 0c 18          	movzbl (%eax,%ebx,1),%ecx
408d17:	74 07                	je     0x408d20
408d19:	8b 45 f0             	mov    -0x10(%ebp),%eax
408d1c:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
408d20:	8b c1                	mov    %ecx,%eax
408d22:	e9 d2 00 00 00       	jmp    0x408df9
408d27:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
408d2b:	74 07                	je     0x408d34
408d2d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
408d30:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
408d34:	8b c3                	mov    %ebx,%eax
408d36:	e9 be 00 00 00       	jmp    0x408df9
408d3b:	8b 45 e8             	mov    -0x18(%ebp),%eax
408d3e:	83 78 74 01          	cmpl   $0x1,0x74(%eax)
408d42:	7e 2d                	jle    0x408d71
408d44:	8b c3                	mov    %ebx,%eax
408d46:	c1 f8 08             	sar    $0x8,%eax
408d49:	89 45 08             	mov    %eax,0x8(%ebp)
408d4c:	8d 4d e8             	lea    -0x18(%ebp),%ecx
408d4f:	0f b6 c0             	movzbl %al,%eax
408d52:	51                   	push   %ecx
408d53:	50                   	push   %eax
408d54:	e8 1e 85 00 00       	call   0x411277
408d59:	59                   	pop    %ecx
408d5a:	59                   	pop    %ecx
408d5b:	85 c0                	test   %eax,%eax
408d5d:	74 12                	je     0x408d71
408d5f:	8b 45 08             	mov    0x8(%ebp),%eax
408d62:	6a 02                	push   $0x2
408d64:	88 45 fc             	mov    %al,-0x4(%ebp)
408d67:	88 5d fd             	mov    %bl,-0x3(%ebp)
408d6a:	c6 45 fe 00          	movb   $0x0,-0x2(%ebp)
408d6e:	59                   	pop    %ecx
408d6f:	eb 15                	jmp    0x408d86
408d71:	e8 07 f4 ff ff       	call   0x40817d
408d76:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
408d7c:	33 c9                	xor    %ecx,%ecx
408d7e:	88 5d fc             	mov    %bl,-0x4(%ebp)
408d81:	c6 45 fd 00          	movb   $0x0,-0x3(%ebp)
408d85:	41                   	inc    %ecx
408d86:	8b 45 e8             	mov    -0x18(%ebp),%eax
408d89:	6a 01                	push   $0x1
408d8b:	ff 70 04             	push   0x4(%eax)
408d8e:	8d 55 f8             	lea    -0x8(%ebp),%edx
408d91:	6a 03                	push   $0x3
408d93:	52                   	push   %edx
408d94:	51                   	push   %ecx
408d95:	8d 4d fc             	lea    -0x4(%ebp),%ecx
408d98:	51                   	push   %ecx
408d99:	57                   	push   %edi
408d9a:	ff b0 a8 00 00 00    	push   0xa8(%eax)
408da0:	8d 45 e8             	lea    -0x18(%ebp),%eax
408da3:	50                   	push   %eax
408da4:	e8 4d fc ff ff       	call   0x4089f6
408da9:	83 c4 24             	add    $0x24,%esp
408dac:	85 c0                	test   %eax,%eax
408dae:	75 15                	jne    0x408dc5
408db0:	38 45 f4             	cmp    %al,-0xc(%ebp)
408db3:	0f 84 7b ff ff ff    	je     0x408d34
408db9:	8b 45 f0             	mov    -0x10(%ebp),%eax
408dbc:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
408dc0:	e9 6f ff ff ff       	jmp    0x408d34
408dc5:	83 f8 01             	cmp    $0x1,%eax
408dc8:	75 13                	jne    0x408ddd
408dca:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
408dce:	0f b6 45 f8          	movzbl -0x8(%ebp),%eax
408dd2:	74 25                	je     0x408df9
408dd4:	8b 4d f0             	mov    -0x10(%ebp),%ecx
408dd7:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
408ddb:	eb 1c                	jmp    0x408df9
408ddd:	0f b6 55 f8          	movzbl -0x8(%ebp),%edx
408de1:	0f b6 45 f9          	movzbl -0x7(%ebp),%eax
408de5:	c1 e2 08             	shl    $0x8,%edx
408de8:	0b d0                	or     %eax,%edx
408dea:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
408dee:	74 07                	je     0x408df7
408df0:	8b 4d f0             	mov    -0x10(%ebp),%ecx
408df3:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
408df7:	8b c2                	mov    %edx,%eax
408df9:	5f                   	pop    %edi
408dfa:	5b                   	pop    %ebx
408dfb:	c9                   	leave
408dfc:	c3                   	ret
408dfd:	55                   	push   %ebp
408dfe:	8b ec                	mov    %esp,%ebp
408e00:	83 3d 74 27 42 00 00 	cmpl   $0x0,0x422774
408e07:	75 12                	jne    0x408e1b
408e09:	8b 4d 08             	mov    0x8(%ebp),%ecx
408e0c:	8d 41 bf             	lea    -0x41(%ecx),%eax
408e0f:	83 f8 19             	cmp    $0x19,%eax
408e12:	77 03                	ja     0x408e17
408e14:	83 c1 20             	add    $0x20,%ecx
408e17:	8b c1                	mov    %ecx,%eax
408e19:	5d                   	pop    %ebp
408e1a:	c3                   	ret
408e1b:	6a 00                	push   $0x0
408e1d:	ff 75 08             	push   0x8(%ebp)
408e20:	e8 97 fe ff ff       	call   0x408cbc
408e25:	59                   	pop    %ecx
408e26:	59                   	pop    %ecx
408e27:	5d                   	pop    %ebp
408e28:	c3                   	ret
408e29:	cc                   	int3
408e2a:	cc                   	int3
408e2b:	cc                   	int3
408e2c:	cc                   	int3
408e2d:	cc                   	int3
408e2e:	cc                   	int3
408e2f:	cc                   	int3
408e30:	8b 44 24 08          	mov    0x8(%esp),%eax
408e34:	8b 4c 24 10          	mov    0x10(%esp),%ecx
408e38:	0b c8                	or     %eax,%ecx
408e3a:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
408e3e:	75 09                	jne    0x408e49
408e40:	8b 44 24 04          	mov    0x4(%esp),%eax
408e44:	f7 e1                	mul    %ecx
408e46:	c2 10 00             	ret    $0x10
408e49:	53                   	push   %ebx
408e4a:	f7 e1                	mul    %ecx
408e4c:	8b d8                	mov    %eax,%ebx
408e4e:	8b 44 24 08          	mov    0x8(%esp),%eax
408e52:	f7 64 24 14          	mull   0x14(%esp)
408e56:	03 d8                	add    %eax,%ebx
408e58:	8b 44 24 08          	mov    0x8(%esp),%eax
408e5c:	f7 e1                	mul    %ecx
408e5e:	03 d3                	add    %ebx,%edx
408e60:	5b                   	pop    %ebx
408e61:	c2 10 00             	ret    $0x10
408e64:	cc                   	int3
408e65:	cc                   	int3
408e66:	cc                   	int3
408e67:	cc                   	int3
408e68:	cc                   	int3
408e69:	cc                   	int3
408e6a:	cc                   	int3
408e6b:	cc                   	int3
408e6c:	cc                   	int3
408e6d:	cc                   	int3
408e6e:	cc                   	int3
408e6f:	cc                   	int3
408e70:	53                   	push   %ebx
408e71:	56                   	push   %esi
408e72:	8b 44 24 18          	mov    0x18(%esp),%eax
408e76:	0b c0                	or     %eax,%eax
408e78:	75 18                	jne    0x408e92