4249b3:	33 f6                	xor    %esi,%esi
4249b5:	66 c7 04 24 00 03    	movw   $0x300,(%esp)
4249bb:	85 ff                	test   %edi,%edi
4249bd:	74 38                	je     0x4249f7
4249bf:	6a 00                	push   $0x0
4249c1:	e8 72 21 fe ff       	call   0x406b38
4249c6:	8b d8                	mov    %eax,%ebx
4249c8:	57                   	push   %edi
4249c9:	53                   	push   %ebx
4249ca:	e8 d9 22 fe ff       	call   0x406ca8
4249cf:	8b f8                	mov    %eax,%edi
4249d1:	8d 44 24 04          	lea    0x4(%esp),%eax
4249d5:	50                   	push   %eax
4249d6:	68 00 01 00 00       	push   $0x100
4249db:	6a 00                	push   $0x0
4249dd:	53                   	push   %ebx
4249de:	e8 e5 21 fe ff       	call   0x406bc8
4249e3:	66 89 44 24 02       	mov    %ax,0x2(%esp)
4249e8:	57                   	push   %edi
4249e9:	53                   	push   %ebx
4249ea:	e8 b9 22 fe ff       	call   0x406ca8
4249ef:	53                   	push   %ebx
4249f0:	e8 8b 21 fe ff       	call   0x406b80
4249f5:	eb 14                	jmp    0x424a0b
4249f7:	66 89 4c 24 02       	mov    %cx,0x2(%esp)
4249fc:	8b c2                	mov    %edx,%eax
4249fe:	8d 54 24 04          	lea    0x4(%esp),%edx
424a02:	03 c9                	add    %ecx,%ecx
424a04:	03 c9                	add    %ecx,%ecx
424a06:	e8 d1 e4 fd ff       	call   0x402edc
424a0b:	66 83 7c 24 02 00    	cmpw   $0x0,0x2(%esp)
424a11:	74 2b                	je     0x424a3e
424a13:	66 83 7c 24 02 10    	cmpw   $0x10,0x2(%esp)
424a19:	75 0b                	jne    0x424a26
424a1b:	8b c4                	mov    %esp,%eax
424a1d:	e8 ee fe ff ff       	call   0x424910
424a22:	84 c0                	test   %al,%al
424a24:	75 0e                	jne    0x424a34
424a26:	0f b7 54 24 02       	movzwl 0x2(%esp),%edx
424a2b:	8d 44 24 04          	lea    0x4(%esp),%eax
424a2f:	e8 70 fd ff ff       	call   0x4247a4
424a34:	8b c4                	mov    %esp,%eax
424a36:	50                   	push   %eax
424a37:	e8 2c 21 fe ff       	call   0x406b68
424a3c:	8b f0                	mov    %eax,%esi
424a3e:	8b c6                	mov    %esi,%eax
424a40:	81 c4 04 04 00 00    	add    $0x404,%esp
424a46:	5f                   	pop    %edi
424a47:	5e                   	pop    %esi
424a48:	5b                   	pop    %ebx
424a49:	c3                   	ret
424a4a:	8b c0                	mov    %eax,%eax
424a4c:	53                   	push   %ebx
424a4d:	56                   	push   %esi
424a4e:	57                   	push   %edi
424a4f:	51                   	push   %ecx
424a50:	8b f9                	mov    %ecx,%edi
424a52:	8b f2                	mov    %edx,%esi
424a54:	8b d8                	mov    %eax,%ebx
424a56:	33 c0                	xor    %eax,%eax
424a58:	89 04 24             	mov    %eax,(%esp)
424a5b:	85 db                	test   %ebx,%ebx
424a5d:	74 36                	je     0x424a95
424a5f:	54                   	push   %esp
424a60:	6a 04                	push   $0x4
424a62:	53                   	push   %ebx
424a63:	e8 98 21 fe ff       	call   0x406c00
424a68:	85 c0                	test   %eax,%eax
424a6a:	74 29                	je     0x424a95
424a6c:	83 3c 24 00          	cmpl   $0x0,(%esp)
424a70:	74 23                	je     0x424a95
424a72:	8d 47 01             	lea    0x1(%edi),%eax
424a75:	3b 04 24             	cmp    (%esp),%eax
424a78:	7d 03                	jge    0x424a7d
424a7a:	89 04 24             	mov    %eax,(%esp)
424a7d:	56                   	push   %esi
424a7e:	8b 44 24 04          	mov    0x4(%esp),%eax
424a82:	50                   	push   %eax
424a83:	6a 00                	push   $0x0
424a85:	53                   	push   %ebx
424a86:	e8 7d 21 fe ff       	call   0x406c08
424a8b:	8b c6                	mov    %esi,%eax
424a8d:	8b 14 24             	mov    (%esp),%edx
424a90:	e8 0f fd ff ff       	call   0x4247a4
424a95:	8b 04 24             	mov    (%esp),%eax
424a98:	5a                   	pop    %edx
424a99:	5f                   	pop    %edi
424a9a:	5e                   	pop    %esi
424a9b:	5b                   	pop    %ebx
424a9c:	c3                   	ret
424a9d:	8d 40 00             	lea    0x0(%eax),%eax
424aa0:	55                   	push   %ebp
424aa1:	8b ec                	mov    %esp,%ebp
424aa3:	83 c4 ec             	add    $0xffffffec,%esp
424aa6:	53                   	push   %ebx
424aa7:	56                   	push   %esi
424aa8:	57                   	push   %edi
424aa9:	89 4d f8             	mov    %ecx,-0x8(%ebp)
424aac:	8b da                	mov    %edx,%ebx
424aae:	89 45 fc             	mov    %eax,-0x4(%ebp)
424ab1:	8b 45 fc             	mov    -0x4(%ebp),%eax
424ab4:	d1 68 08             	shrl   $1,0x8(%eax)
424ab7:	8b 55 fc             	mov    -0x4(%ebp),%edx
424aba:	0f b7 52 0e          	movzwl 0xe(%edx),%edx
424abe:	8b 45 fc             	mov    -0x4(%ebp),%eax
424ac1:	8b 40 04             	mov    0x4(%eax),%eax
424ac4:	b9 20 00 00 00       	mov    $0x20,%ecx
424ac9:	e8 72 f9 ff ff       	call   0x424440
424ace:	8b 55 fc             	mov    -0x4(%ebp),%edx
424ad1:	f7 6a 08             	imull  0x8(%edx)
424ad4:	8b 55 fc             	mov    -0x4(%ebp),%edx
424ad7:	89 42 14             	mov    %eax,0x14(%edx)
424ada:	8b 45 fc             	mov    -0x4(%ebp),%eax
424add:	0f b7 40 0e          	movzwl 0xe(%eax),%eax
424ae1:	e8 3a f9 ff ff       	call   0x424420
424ae6:	8b f0                	mov    %eax,%esi
424ae8:	6a 00                	push   $0x0
424aea:	e8 c9 23 fe ff       	call   0x406eb8
424aef:	89 45 f0             	mov    %eax,-0x10(%ebp)
424af2:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
424af6:	75 05                	jne    0x424afd
424af8:	e8 b7 f6 ff ff       	call   0x4241b4
424afd:	33 d2                	xor    %edx,%edx
424aff:	55                   	push   %ebp
424b00:	68 4d 4c 42 00       	push   $0x424c4d
424b05:	64 ff 32             	push   %fs:(%edx)
424b08:	64 89 22             	mov    %esp,%fs:(%edx)
424b0b:	8b 7d fc             	mov    -0x4(%ebp),%edi
424b0e:	8b c7                	mov    %edi,%eax
424b10:	83 c0 28             	add    $0x28,%eax
424b13:	8b d6                	mov    %esi,%edx
424b15:	03 d2                	add    %edx,%edx
424b17:	03 d2                	add    %edx,%edx
424b19:	03 c2                	add    %edx,%eax
424b1b:	89 45 ec             	mov    %eax,-0x14(%ebp)
424b1e:	6a 00                	push   $0x0
424b20:	8b 45 fc             	mov    -0x4(%ebp),%eax
424b23:	57                   	push   %edi
424b24:	8b 45 ec             	mov    -0x14(%ebp),%eax
424b27:	50                   	push   %eax
424b28:	6a 04                	push   $0x4
424b2a:	8b 45 fc             	mov    -0x4(%ebp),%eax
424b2d:	50                   	push   %eax
424b2e:	8b 45 f0             	mov    -0x10(%ebp),%eax
424b31:	50                   	push   %eax
424b32:	e8 11 20 fe ff       	call   0x406b48
424b37:	e8 74 f7 ff ff       	call   0x4242b0
424b3c:	89 45 f4             	mov    %eax,-0xc(%ebp)
424b3f:	33 c0                	xor    %eax,%eax
424b41:	55                   	push   %ebp
424b42:	68 73 4b 42 00       	push   $0x424b73
424b47:	64 ff 30             	push   %fs:(%eax)
424b4a:	64 89 20             	mov    %esp,%fs:(%eax)
424b4d:	8b 55 08             	mov    0x8(%ebp),%edx
424b50:	33 c9                	xor    %ecx,%ecx
424b52:	8b 45 f4             	mov    -0xc(%ebp),%eax
424b55:	e8 66 f7 ff ff       	call   0x4242c0
424b5a:	89 03                	mov    %eax,(%ebx)
424b5c:	33 c0                	xor    %eax,%eax
424b5e:	5a                   	pop    %edx
424b5f:	59                   	pop    %ecx
424b60:	59                   	pop    %ecx
424b61:	64 89 10             	mov    %edx,%fs:(%eax)
424b64:	68 7a 4b 42 00       	push   $0x424b7a
424b69:	8b 45 f4             	mov    -0xc(%ebp),%eax
424b6c:	50                   	push   %eax
424b6d:	e8 1e 20 fe ff       	call   0x406b90
424b72:	c3                   	ret
424b73:	e9 10 f5 fd ff       	jmp    0x404088
424b78:	eb ef                	jmp    0x424b69
424b7a:	8b 45 fc             	mov    -0x4(%ebp),%eax
424b7d:	8b 40 14             	mov    0x14(%eax),%eax
424b80:	01 45 ec             	add    %eax,-0x14(%ebp)
424b83:	8b 45 fc             	mov    -0x4(%ebp),%eax
424b86:	66 bb 01 00          	mov    $0x1,%bx
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)