424b8a:	66 89 58 0e          	mov    %bx,0xe(%eax)
424b8e:	8b 45 fc             	mov    -0x4(%ebp),%eax
424b91:	0f b7 d3             	movzwl %bx,%edx
424b94:	8b 45 fc             	mov    -0x4(%ebp),%eax
424b97:	8b 40 04             	mov    0x4(%eax),%eax
424b9a:	b9 20 00 00 00       	mov    $0x20,%ecx
424b9f:	e8 9c f8 ff ff       	call   0x424440
424ba4:	8b 55 fc             	mov    -0x4(%ebp),%edx
424ba7:	f7 6a 08             	imull  0x8(%edx)
424baa:	8b 55 fc             	mov    -0x4(%ebp),%edx
424bad:	89 42 14             	mov    %eax,0x14(%edx)
424bb0:	8b 45 fc             	mov    -0x4(%ebp),%eax
424bb3:	c7 40 20 02 00 00 00 	movl   $0x2,0x20(%eax)
424bba:	8b 45 fc             	mov    -0x4(%ebp),%eax
424bbd:	c7 40 24 02 00 00 00 	movl   $0x2,0x24(%eax)
424bc4:	8b 45 fc             	mov    -0x4(%ebp),%eax
424bc7:	83 c0 28             	add    $0x28,%eax
424bca:	33 d2                	xor    %edx,%edx
424bcc:	89 10                	mov    %edx,(%eax)
424bce:	c7 40 04 ff ff ff 00 	movl   $0xffffff,0x4(%eax)
424bd5:	6a 00                	push   $0x0
424bd7:	8b 5d fc             	mov    -0x4(%ebp),%ebx
424bda:	53                   	push   %ebx
424bdb:	8b 45 ec             	mov    -0x14(%ebp),%eax
424bde:	50                   	push   %eax
424bdf:	6a 04                	push   $0x4
424be1:	8b 45 fc             	mov    -0x4(%ebp),%eax
424be4:	53                   	push   %ebx
424be5:	8b 45 f0             	mov    -0x10(%ebp),%eax
424be8:	50                   	push   %eax
424be9:	e8 5a 1f fe ff       	call   0x406b48
424bee:	e8 bd f6 ff ff       	call   0x4242b0
424bf3:	89 45 f4             	mov    %eax,-0xc(%ebp)
424bf6:	33 c0                	xor    %eax,%eax
424bf8:	55                   	push   %ebp
424bf9:	68 2d 4c 42 00       	push   $0x424c2d
424bfe:	64 ff 30             	push   %fs:(%eax)
424c01:	64 89 20             	mov    %esp,%fs:(%eax)
424c04:	8b 55 08             	mov    0x8(%ebp),%edx
424c07:	b1 01                	mov    $0x1,%cl
424c09:	8b 45 f4             	mov    -0xc(%ebp),%eax
424c0c:	e8 af f6 ff ff       	call   0x4242c0
424c11:	8b 55 f8             	mov    -0x8(%ebp),%edx
424c14:	89 02                	mov    %eax,(%edx)
424c16:	33 c0                	xor    %eax,%eax
424c18:	5a                   	pop    %edx
424c19:	59                   	pop    %ecx
424c1a:	59                   	pop    %ecx
424c1b:	64 89 10             	mov    %edx,%fs:(%eax)
424c1e:	68 34 4c 42 00       	push   $0x424c34
424c23:	8b 45 f4             	mov    -0xc(%ebp),%eax
424c26:	50                   	push   %eax
424c27:	e8 64 1f fe ff       	call   0x406b90
424c2c:	c3                   	ret
424c2d:	e9 56 f4 fd ff       	jmp    0x404088
424c32:	eb ef                	jmp    0x424c23
424c34:	33 c0                	xor    %eax,%eax
424c36:	5a                   	pop    %edx
424c37:	59                   	pop    %ecx
424c38:	59                   	pop    %ecx
424c39:	64 89 10             	mov    %edx,%fs:(%eax)
424c3c:	68 54 4c 42 00       	push   $0x424c54
424c41:	8b 45 f0             	mov    -0x10(%ebp),%eax
424c44:	50                   	push   %eax
424c45:	6a 00                	push   $0x0
424c47:	e8 dc 24 fe ff       	call   0x407128
424c4c:	c3                   	ret
424c4d:	e9 36 f4 fd ff       	jmp    0x404088
424c52:	eb ed                	jmp    0x424c41
424c54:	5f                   	pop    %edi
424c55:	5e                   	pop    %esi
424c56:	5b                   	pop    %ebx
424c57:	8b e5                	mov    %ebp,%esp
424c59:	5d                   	pop    %ebp
424c5a:	c2 04 00             	ret    $0x4
424c5d:	8d 40 00             	lea    0x0(%eax),%eax
424c60:	85 c0                	test   %eax,%eax
424c62:	75 05                	jne    0x424c69
424c64:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
424c69:	c3                   	ret
424c6a:	8b c0                	mov    %eax,%eax
424c6c:	55                   	push   %ebp
424c6d:	8b ec                	mov    %esp,%ebp
424c6f:	83 c4 f8             	add    $0xfffffff8,%esp
424c72:	53                   	push   %ebx
424c73:	56                   	push   %esi
424c74:	57                   	push   %edi
424c75:	89 45 fc             	mov    %eax,-0x4(%ebp)
424c78:	0f b6 0a             	movzbl (%edx),%ecx
424c7b:	8b 45 08             	mov    0x8(%ebp),%eax
424c7e:	8b 40 08             	mov    0x8(%eax),%eax
424c81:	8b 00                	mov    (%eax),%eax
424c83:	2b c8                	sub    %eax,%ecx
424c85:	0f b6 5a 01          	movzbl 0x1(%edx),%ebx
424c89:	8b 55 08             	mov    0x8(%ebp),%edx
424c8c:	8b 52 08             	mov    0x8(%edx),%edx
424c8f:	2b 5a 04             	sub    0x4(%edx),%ebx
424c92:	8b 75 fc             	mov    -0x4(%ebp),%esi
424c95:	0f b6 36             	movzbl (%esi),%esi
424c98:	8b 55 08             	mov    0x8(%ebp),%edx
424c9b:	8b 52 08             	mov    0x8(%edx),%edx
424c9e:	2b f0                	sub    %eax,%esi
424ca0:	8b 45 fc             	mov    -0x4(%ebp),%eax
424ca3:	0f b6 40 01          	movzbl 0x1(%eax),%eax
424ca7:	8b 55 08             	mov    0x8(%ebp),%edx
424caa:	8b 52 08             	mov    0x8(%edx),%edx
424cad:	2b 42 04             	sub    0x4(%edx),%eax
424cb0:	89 45 f8             	mov    %eax,-0x8(%ebp)
424cb3:	8b c1                	mov    %ecx,%eax
424cb5:	99                   	cltd
424cb6:	33 c2                	xor    %edx,%eax
424cb8:	2b c2                	sub    %edx,%eax
424cba:	8b f8                	mov    %eax,%edi
424cbc:	8b c6                	mov    %esi,%eax
424cbe:	99                   	cltd
424cbf:	33 c2                	xor    %edx,%eax
424cc1:	2b c2                	sub    %edx,%eax
424cc3:	3b f8                	cmp    %eax,%edi
424cc5:	7f 26                	jg     0x424ced
424cc7:	85 c9                	test   %ecx,%ecx
424cc9:	7e 04                	jle    0x424ccf
424ccb:	3b f1                	cmp    %ecx,%esi
424ccd:	7c 1e                	jl     0x424ced
424ccf:	8b c3                	mov    %ebx,%eax
424cd1:	99                   	cltd
424cd2:	33 c2                	xor    %edx,%eax
424cd4:	2b c2                	sub    %edx,%eax
424cd6:	8b c8                	mov    %eax,%ecx
424cd8:	8b 45 f8             	mov    -0x8(%ebp),%eax
424cdb:	99                   	cltd
424cdc:	33 c2                	xor    %edx,%eax
424cde:	2b c2                	sub    %edx,%eax
424ce0:	3b c8                	cmp    %eax,%ecx
424ce2:	7f 09                	jg     0x424ced
424ce4:	85 db                	test   %ebx,%ebx
424ce6:	7e 09                	jle    0x424cf1
424ce8:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
424ceb:	7e 04                	jle    0x424cf1
424ced:	33 c0                	xor    %eax,%eax
424cef:	eb 02                	jmp    0x424cf3
424cf1:	b0 01                	mov    $0x1,%al
424cf3:	5f                   	pop    %edi
424cf4:	5e                   	pop    %esi
424cf5:	5b                   	pop    %ebx
424cf6:	59                   	pop    %ecx
424cf7:	59                   	pop    %ecx
424cf8:	5d                   	pop    %ebp
424cf9:	c3                   	ret
424cfa:	8b c0                	mov    %eax,%eax
424cfc:	55                   	push   %ebp
424cfd:	8b ec                	mov    %esp,%ebp
424cff:	83 c4 90             	add    $0xffffff90,%esp
424d02:	53                   	push   %ebx
424d03:	56                   	push   %esi
424d04:	57                   	push   %edi
424d05:	89 4d f4             	mov    %ecx,-0xc(%ebp)
424d08:	89 55 f8             	mov    %edx,-0x8(%ebp)
424d0b:	89 45 fc             	mov    %eax,-0x4(%ebp)
424d0e:	8b 5d 0c             	mov    0xc(%ebp),%ebx
424d11:	8b 45 f4             	mov    -0xc(%ebp),%eax
424d14:	c1 e0 04             	shl    $0x4,%eax
424d17:	89 45 ec             	mov    %eax,-0x14(%ebp)
424d1a:	8b 45 ec             	mov    -0x14(%ebp),%eax
424d1d:	e8 b2 df fd ff       	call   0x402cd4
424d22:	89 45 f0             	mov    %eax,-0x10(%ebp)
424d25:	33 d2                	xor    %edx,%edx
424d27:	55                   	push   %ebp
424d28:	68 f5 4f 42 00       	push   $0x424ff5
424d2d:	64 ff 32             	push   %fs:(%edx)
424d30:	64 89 22             	mov    %esp,%fs:(%edx)
424d33:	8b 55 f0             	mov    -0x10(%ebp),%edx
424d36:	8b 4d ec             	mov    -0x14(%ebp),%ecx
424d39:	8b 45 fc             	mov    -0x4(%ebp),%eax
424d3c:	8b 30                	mov    (%eax),%esi
424d3e:	ff 56 0c             	call   *0xc(%esi)
424d41:	8b 03                	mov    (%ebx),%eax
424d43:	0b 43 04             	or     0x4(%ebx),%eax
424d46:	75 1b                	jne    0x424d63
424d48:	6a 0b                	push   $0xb
424d4a:	e8 61 22 fe ff       	call   0x406fb0
424d4f:	8b 55 08             	mov    0x8(%ebp),%edx
424d52:	89 02                	mov    %eax,(%edx)
424d54:	6a 0c                	push   $0xc
424d56:	e8 55 22 fe ff       	call   0x406fb0
424d5b:	8b 55 08             	mov    0x8(%ebp),%edx
424d5e:	89 42 04             	mov    %eax,0x4(%edx)
424d61:	eb 0d                	jmp    0x424d70
424d63:	8b 45 08             	mov    0x8(%ebp),%eax
424d66:	8b 13                	mov    (%ebx),%edx
424d68:	89 10                	mov    %edx,(%eax)
424d6a:	8b 53 04             	mov    0x4(%ebx),%edx
424d6d:	89 50 04             	mov    %edx,0x4(%eax)
424d70:	6a 00                	push   $0x0
424d72:	e8 41 21 fe ff       	call   0x406eb8
424d77:	89 45 d8             	mov    %eax,-0x28(%ebp)
424d7a:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
424d7e:	75 05                	jne    0x424d85
424d80:	e8 2f f4 ff ff       	call   0x4241b4
424d85:	33 d2                	xor    %edx,%edx
424d87:	55                   	push   %ebp
424d88:	68 e5 4d 42 00       	push   $0x424de5
424d8d:	64 ff 32             	push   %fs:(%edx)
424d90:	64 89 22             	mov    %esp,%fs:(%edx)
424d93:	6a 0e                	push   $0xe
424d95:	8b 45 d8             	mov    -0x28(%ebp),%eax
424d98:	50                   	push   %eax
424d99:	e8 3a 1e fe ff       	call   0x406bd8
424d9e:	8b d8                	mov    %eax,%ebx
424da0:	6a 0c                	push   $0xc
424da2:	8b 45 d8             	mov    -0x28(%ebp),%eax
424da5:	50                   	push   %eax
424da6:	e8 2d 1e fe ff       	call   0x406bd8
424dab:	66 0f af d8          	imul   %ax,%bx
424daf:	8b c3                	mov    %ebx,%eax
424db1:	66 83 f8 08          	cmp    $0x8,%ax
424db5:	76 09                	jbe    0x424dc0
424db7:	c7 45 e4 ff ff ff 7f 	movl   $0x7fffffff,-0x1c(%ebp)
424dbe:	eb 0c                	jmp    0x424dcc
424dc0:	8b c8                	mov    %eax,%ecx
424dc2:	b8 01 00 00 00       	mov    $0x1,%eax
424dc7:	d3 e0                	shl    %cl,%eax
424dc9:	89 45 e4             	mov    %eax,-0x1c(%ebp)
424dcc:	33 c0                	xor    %eax,%eax
424dce:	5a                   	pop    %edx
424dcf:	59                   	pop    %ecx
424dd0:	59                   	pop    %ecx
424dd1:	64 89 10             	mov    %edx,%fs:(%eax)
424dd4:	68 ec 4d 42 00       	push   $0x424dec
424dd9:	8b 45 d8             	mov    -0x28(%ebp),%eax
424ddc:	50                   	push   %eax
424ddd:	6a 00                	push   $0x0
424ddf:	e8 44 23 fe ff       	call   0x407128
424de4:	c3                   	ret
424de5:	e9 9e f2 fd ff       	jmp    0x404088
424dea:	eb ed                	jmp    0x424dd9
424dec:	33 c0                	xor    %eax,%eax
424dee:	89 45 dc             	mov    %eax,-0x24(%ebp)
424df1:	8b 45 f0             	mov    -0x10(%ebp),%eax
424df4:	0f b7 40 02          	movzwl 0x2(%eax),%eax
424df8:	e8 63 fe ff ff       	call   0x424c60
424dfd:	89 45 e0             	mov    %eax,-0x20(%ebp)
424e00:	8b 7d f4             	mov    -0xc(%ebp),%edi
424e03:	4f                   	dec    %edi
424e04:	85 ff                	test   %edi,%edi
424e06:	7e 4c                	jle    0x424e54
424e08:	be 01 00 00 00       	mov    $0x1,%esi
424e0d:	8b c6                	mov    %esi,%eax
424e0f:	03 c0                	add    %eax,%eax
424e11:	8b 55 f0             	mov    -0x10(%ebp),%edx
424e14:	0f b7 44 c2 02       	movzwl 0x2(%edx,%eax,8),%eax
424e19:	e8 42 fe ff ff       	call   0x424c60
424e1e:	8b d8                	mov    %eax,%ebx
424e20:	3b 5d e4             	cmp    -0x1c(%ebp),%ebx
424e23:	7f 2b                	jg     0x424e50
424e25:	3b 5d e0             	cmp    -0x20(%ebp),%ebx
424e28:	7c 26                	jl     0x424e50
424e2a:	55                   	push   %ebp
424e2b:	8b c6                	mov    %esi,%eax
424e2d:	03 c0                	add    %eax,%eax
424e2f:	8b 55 f0             	mov    -0x10(%ebp),%edx
424e32:	8d 14 c2             	lea    (%edx,%eax,8),%edx
424e35:	8b 45 dc             	mov    -0x24(%ebp),%eax
424e38:	03 c0                	add    %eax,%eax
424e3a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
424e3d:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
424e40:	e8 27 fe ff ff       	call   0x424c6c
424e45:	59                   	pop    %ecx
424e46:	84 c0                	test   %al,%al
424e48:	74 06                	je     0x424e50
424e4a:	89 75 dc             	mov    %esi,-0x24(%ebp)
424e4d:	89 5d e0             	mov    %ebx,-0x20(%ebp)
424e50:	46                   	inc    %esi
424e51:	4f                   	dec    %edi
424e52:	75 b9                	jne    0x424e0d
424e54:	8b 45 dc             	mov    -0x24(%ebp),%eax
424e57:	03 c0                	add    %eax,%eax
424e59:	8b 55 f0             	mov    -0x10(%ebp),%edx
424e5c:	8d 04 c2             	lea    (%edx,%eax,8),%eax
424e5f:	89 45 c0             	mov    %eax,-0x40(%ebp)
424e62:	8b 45 c0             	mov    -0x40(%ebp),%eax
424e65:	0f b6 00             	movzbl (%eax),%eax
424e68:	8b 55 08             	mov    0x8(%ebp),%edx
424e6b:	89 02                	mov    %eax,(%edx)
424e6d:	8b 45 c0             	mov    -0x40(%ebp),%eax
424e70:	0f b6 40 01          	movzbl 0x1(%eax),%eax
424e74:	8b 55 08             	mov    0x8(%ebp),%edx
424e77:	89 42 04             	mov    %eax,0x4(%edx)
424e7a:	8b 45 c0             	mov    -0x40(%ebp),%eax
424e7d:	8b 40 08             	mov    0x8(%eax),%eax
424e80:	e8 4f de fd ff       	call   0x402cd4
424e85:	89 45 d4             	mov    %eax,-0x2c(%ebp)
424e88:	33 c0                	xor    %eax,%eax
424e8a:	55                   	push   %ebp
424e8b:	68 d5 4f 42 00       	push   $0x424fd5
424e90:	64 ff 30             	push   %fs:(%eax)
424e93:	64 89 20             	mov    %esp,%fs:(%eax)
424e96:	8b 45 c0             	mov    -0x40(%ebp),%eax
424e99:	8b 50 0c             	mov    0xc(%eax),%edx
424e9c:	8b 45 ec             	mov    -0x14(%ebp),%eax
424e9f:	03 45 10             	add    0x10(%ebp),%eax
424ea2:	2b d0                	sub    %eax,%edx
424ea4:	66 b9 01 00          	mov    $0x1,%cx
424ea8:	8b 45 fc             	mov    -0x4(%ebp),%eax
424eab:	8b 18                	mov    (%eax),%ebx
424ead:	ff 53 14             	call   *0x14(%ebx)
424eb0:	8b 45 c0             	mov    -0x40(%ebp),%eax
424eb3:	8b 48 08             	mov    0x8(%eax),%ecx
424eb6:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
424eb9:	8b d3                	mov    %ebx,%edx
424ebb:	8b 45 fc             	mov    -0x4(%ebp),%eax
424ebe:	8b 30                	mov    (%eax),%esi
424ec0:	ff 56 0c             	call   *0xc(%esi)
424ec3:	8b 45 08             	mov    0x8(%ebp),%eax
424ec6:	50                   	push   %eax
424ec7:	8d 4d c8             	lea    -0x38(%ebp),%ecx
424eca:	8d 55 cc             	lea    -0x34(%ebp),%edx
424ecd:	8b c3                	mov    %ebx,%eax
424ecf:	e8 cc fb ff ff       	call   0x424aa0
424ed4:	8d 45 90             	lea    -0x70(%ebp),%eax
424ed7:	50                   	push   %eax
424ed8:	6a 18                	push   $0x18
424eda:	8b 45 c8             	mov    -0x38(%ebp),%eax
424edd:	50                   	push   %eax
424ede:	e8 1d 1d fe ff       	call   0x406c00
424ee3:	8d 45 a8             	lea    -0x58(%ebp),%eax
424ee6:	50                   	push   %eax
424ee7:	6a 18                	push   $0x18
424ee9:	8b 45 cc             	mov    -0x34(%ebp),%eax
424eec:	50                   	push   %eax
424eed:	e8 0e 1d fe ff       	call   0x406c00
424ef2:	8b 5d 9c             	mov    -0x64(%ebp),%ebx
424ef5:	0f af 5d 98          	imul   -0x68(%ebp),%ebx
424ef9:	0f b7 45 a0          	movzwl -0x60(%ebp),%eax
424efd:	0f af d8             	imul   %eax,%ebx
424f00:	8b 45 b4             	mov    -0x4c(%ebp),%eax
424f03:	f7 6d b0             	imull  -0x50(%ebp)
424f06:	0f b7 55 b8          	movzwl -0x48(%ebp),%edx
424f0a:	f7 ea                	imul   %edx
424f0c:	89 45 c4             	mov    %eax,-0x3c(%ebp)
424f0f:	8b 45 c4             	mov    -0x3c(%ebp),%eax
424f12:	03 c3                	add    %ebx,%eax
424f14:	89 45 e8             	mov    %eax,-0x18(%ebp)
424f17:	8b 45 e8             	mov    -0x18(%ebp),%eax
424f1a:	e8 b5 dd fd ff       	call   0x402cd4
424f1f:	89 45 d0             	mov    %eax,-0x30(%ebp)
424f22:	33 c0                	xor    %eax,%eax
424f24:	55                   	push   %ebp
424f25:	68 b2 4f 42 00       	push   $0x424fb2
424f2a:	64 ff 30             	push   %fs:(%eax)
424f2d:	64 89 20             	mov    %esp,%fs:(%eax)