449bf5:	89 46 04             	mov    %eax,0x4(%esi)
449bf8:	eb 10                	jmp    0x449c0a
449bfa:	66 83 f8 20          	cmp    $0x20,%ax
449bfe:	75 06                	jne    0x449c06
449c00:	dd 07                	fldl   (%edi)
449c02:	dd 1e                	fstpl  (%esi)
449c04:	eb 04                	jmp    0x449c0a
449c06:	8b 07                	mov    (%edi),%eax
449c08:	89 06                	mov    %eax,(%esi)
449c0a:	5f                   	pop    %edi
449c0b:	8b c6                	mov    %esi,%eax
449c0d:	5e                   	pop    %esi
449c0e:	5d                   	pop    %ebp
449c0f:	c2 04 00             	ret    $0x4
449c12:	55                   	push   %ebp
449c13:	8b ec                	mov    %esp,%ebp
449c15:	56                   	push   %esi
449c16:	8b f1                	mov    %ecx,%esi
449c18:	e8 ef 3c fd ff       	call   0x41d90c
449c1d:	84 c0                	test   %al,%al
449c1f:	74 0c                	je     0x449c2d
449c21:	8b 0e                	mov    (%esi),%ecx
449c23:	85 c9                	test   %ecx,%ecx
449c25:	74 06                	je     0x449c2d
449c27:	51                   	push   %ecx
449c28:	e8 6c 8e fb ff       	call   0x402a99
449c2d:	6a 10                	push   $0x10
449c2f:	e8 b6 58 fd ff       	call   0x41f4ea
449c34:	59                   	pop    %ecx
449c35:	85 c0                	test   %eax,%eax
449c37:	74 0c                	je     0x449c45
449c39:	ff 75 08             	push   0x8(%ebp)
449c3c:	8b c8                	mov    %eax,%ecx
449c3e:	e8 d6 31 fc ff       	call   0x40ce19
449c43:	eb 02                	jmp    0x449c47
449c45:	33 c0                	xor    %eax,%eax
449c47:	89 06                	mov    %eax,(%esi)
449c49:	8b c6                	mov    %esi,%eax
449c4b:	5e                   	pop    %esi
449c4c:	5d                   	pop    %ebp
449c4d:	c2 04 00             	ret    $0x4
449c50:	0f b7 41 08          	movzwl 0x8(%ecx),%eax
449c54:	66 83 f8 41          	cmp    $0x41,%ax
449c58:	74 21                	je     0x449c7b
449c5a:	66 83 f8 52          	cmp    $0x52,%ax
449c5e:	74 1b                	je     0x449c7b
449c60:	66 83 f8 53          	cmp    $0x53,%ax
449c64:	74 15                	je     0x449c7b
449c66:	66 83 f8 54          	cmp    $0x54,%ax
449c6a:	74 0f                	je     0x449c7b
449c6c:	66 83 f8 55          	cmp    $0x55,%ax
449c70:	74 09                	je     0x449c7b
449c72:	66 83 f8 56          	cmp    $0x56,%ax
449c76:	74 03                	je     0x449c7b
449c78:	33 c0                	xor    %eax,%eax
449c7a:	c3                   	ret
449c7b:	33 c0                	xor    %eax,%eax
449c7d:	40                   	inc    %eax
449c7e:	c3                   	ret
449c7f:	0f b7 41 08          	movzwl 0x8(%ecx),%eax
449c83:	66 83 f8 20          	cmp    $0x20,%ax
449c87:	7c 09                	jl     0x449c92
449c89:	66 83 f8 2f          	cmp    $0x2f,%ax
449c8d:	7f 03                	jg     0x449c92
449c8f:	b0 01                	mov    $0x1,%al
449c91:	c3                   	ret
449c92:	32 c0                	xor    %al,%al
449c94:	c3                   	ret
449c95:	0f b7 41 08          	movzwl 0x8(%ecx),%eax
449c99:	66 83 f8 10          	cmp    $0x10,%ax
449c9d:	7c 09                	jl     0x449ca8
449c9f:	66 83 f8 1f          	cmp    $0x1f,%ax
449ca3:	7f 03                	jg     0x449ca8
449ca5:	b0 01                	mov    $0x1,%al
449ca7:	c3                   	ret
449ca8:	32 c0                	xor    %al,%al
449caa:	c3                   	ret
449cab:	0f b7 41 08          	movzwl 0x8(%ecx),%eax
449caf:	66 85 c0             	test   %ax,%ax
449cb2:	78 09                	js     0x449cbd
449cb4:	66 83 f8 0f          	cmp    $0xf,%ax
449cb8:	7f 03                	jg     0x449cbd
449cba:	b0 01                	mov    $0x1,%al
449cbc:	c3                   	ret
449cbd:	32 c0                	xor    %al,%al
449cbf:	c3                   	ret
449cc0:	55                   	push   %ebp
449cc1:	8b ec                	mov    %esp,%ebp
449cc3:	53                   	push   %ebx
449cc4:	ff 75 08             	push   0x8(%ebp)
449cc7:	8b d9                	mov    %ecx,%ebx
449cc9:	e8 3a 40 fd ff       	call   0x41dd08
449cce:	85 c0                	test   %eax,%eax
449cd0:	74 08                	je     0x449cda
449cd2:	8b 4d 0c             	mov    0xc(%ebp),%ecx
449cd5:	89 48 14             	mov    %ecx,0x14(%eax)
449cd8:	eb 4e                	jmp    0x449d28
449cda:	56                   	push   %esi
449cdb:	57                   	push   %edi
449cdc:	8b 7d 10             	mov    0x10(%ebp),%edi
449cdf:	6a 20                	push   $0x20
449ce1:	81 e7 00 ff 00 00    	and    $0xff00,%edi
449ce7:	e8 fe 57 fd ff       	call   0x41f4ea
449cec:	8b f0                	mov    %eax,%esi
449cee:	59                   	pop    %ecx
449cef:	85 f6                	test   %esi,%esi
449cf1:	74 09                	je     0x449cfc
449cf3:	8b ce                	mov    %esi,%ecx
449cf5:	e8 fd 3a fc ff       	call   0x40d7f7
449cfa:	eb 02                	jmp    0x449cfe
449cfc:	33 f6                	xor    %esi,%esi
449cfe:	ff 75 08             	push   0x8(%ebp)
449d01:	8b ce                	mov    %esi,%ecx
449d03:	e8 e5 d1 fb ff       	call   0x406eed
449d08:	8b 45 0c             	mov    0xc(%ebp),%eax
449d0b:	83 66 1c 00          	andl   $0x0,0x1c(%esi)
449d0f:	83 66 18 00          	andl   $0x0,0x18(%esi)
449d13:	83 cf 01             	or     $0x1,%edi
449d16:	89 7e 10             	mov    %edi,0x10(%esi)
449d19:	89 46 14             	mov    %eax,0x14(%esi)
449d1c:	ff 33                	push   (%ebx)
449d1e:	56                   	push   %esi
449d1f:	e8 9c 3b fc ff       	call   0x40d8c0
449d24:	5f                   	pop    %edi
449d25:	89 03                	mov    %eax,(%ebx)
449d27:	5e                   	pop    %esi
449d28:	5b                   	pop    %ebx
449d29:	5d                   	pop    %ebp
449d2a:	c2 0c 00             	ret    $0xc
449d2d:	55                   	push   %ebp
449d2e:	8b ec                	mov    %esp,%ebp
449d30:	8b 45 08             	mov    0x8(%ebp),%eax
449d33:	56                   	push   %esi
449d34:	8b f1                	mov    %ecx,%esi
449d36:	83 66 04 00          	andl   $0x0,0x4(%esi)
449d3a:	40                   	inc    %eax
449d3b:	50                   	push   %eax
449d3c:	89 46 08             	mov    %eax,0x8(%esi)
449d3f:	e8 a6 57 fd ff       	call   0x41f4ea
449d44:	59                   	pop    %ecx
449d45:	89 06                	mov    %eax,(%esi)
449d47:	8b ce                	mov    %esi,%ecx
449d49:	c6 00 00             	movb   $0x0,(%eax)
449d4c:	e8 f9 cd fb ff       	call   0x406b4a
449d51:	8b c6                	mov    %esi,%eax
449d53:	5e                   	pop    %esi
449d54:	5d                   	pop    %ebp
449d55:	c2 04 00             	ret    $0x4
449d58:	55                   	push   %ebp
449d59:	8b ec                	mov    %esp,%ebp
449d5b:	56                   	push   %esi
449d5c:	8b f1                	mov    %ecx,%esi
449d5e:	e8 bd 8e fc ff       	call   0x412c20
449d63:	6a 18                	push   $0x18
449d65:	c7 46 0c 0a 00 00 00 	movl   $0xa,0xc(%esi)
449d6c:	e8 79 57 fd ff       	call   0x41f4ea
449d71:	59                   	pop    %ecx
449d72:	85 c0                	test   %eax,%eax
449d74:	74 0c                	je     0x449d82
449d76:	ff 75 08             	push   0x8(%ebp)
449d79:	8b c8                	mov    %eax,%ecx
449d7b:	e8 23 f3 ff ff       	call   0x4490a3
449d80:	eb 02                	jmp    0x449d84
449d82:	33 c0                	xor    %eax,%eax
449d84:	89 06                	mov    %eax,(%esi)
449d86:	8b c6                	mov    %esi,%eax
449d88:	5e                   	pop    %esi
449d89:	5d                   	pop    %ebp
449d8a:	c2 04 00             	ret    $0x4
449d8d:	55                   	push   %ebp
449d8e:	8b ec                	mov    %esp,%ebp
449d90:	56                   	push   %esi
449d91:	8b f1                	mov    %ecx,%esi
449d93:	e8 88 8e fc ff       	call   0x412c20
449d98:	6a 10                	push   $0x10
449d9a:	c7 46 0c 04 00 00 00 	movl   $0x4,0xc(%esi)
449da1:	e8 44 57 fd ff       	call   0x41f4ea
449da6:	59                   	pop    %ecx
449da7:	85 c0                	test   %eax,%eax
449da9:	74 0e                	je     0x449db9
449dab:	8b 4d 08             	mov    0x8(%ebp),%ecx
449dae:	ff 31                	push   (%ecx)
449db0:	8b c8                	mov    %eax,%ecx
449db2:	e8 62 30 fc ff       	call   0x40ce19
449db7:	eb 02                	jmp    0x449dbb
449db9:	33 c0                	xor    %eax,%eax
449dbb:	89 46 08             	mov    %eax,0x8(%esi)
449dbe:	8b c6                	mov    %esi,%eax
449dc0:	5e                   	pop    %esi
449dc1:	5d                   	pop    %ebp
449dc2:	c2 04 00             	ret    $0x4
449dc5:	55                   	push   %ebp
449dc6:	8b ec                	mov    %esp,%ebp
449dc8:	83 e4 f8             	and    $0xfffffff8,%esp
449dcb:	56                   	push   %esi
449dcc:	57                   	push   %edi
449dcd:	8b f1                	mov    %ecx,%esi
449dcf:	e8 4c 8e fc ff       	call   0x412c20
449dd4:	8b 7d 08             	mov    0x8(%ebp),%edi
449dd7:	85 ff                	test   %edi,%edi
449dd9:	74 57                	je     0x449e32
449ddb:	57                   	push   %edi
449ddc:	8b ce                	mov    %esi,%ecx
449dde:	e8 15 0d 00 00       	call   0x44aaf8
449de3:	3c 01                	cmp    $0x1,%al
449de5:	74 4b                	je     0x449e32
449de7:	57                   	push   %edi
449de8:	8b ce                	mov    %esi,%ecx
449dea:	e8 3a 09 00 00       	call   0x44a729
449def:	3c 01                	cmp    $0x1,%al
449df1:	74 3f                	je     0x449e32
449df3:	6a 10                	push   $0x10
449df5:	c7 46 0c 08 00 00 00 	movl   $0x8,0xc(%esi)
449dfc:	e8 e9 56 fd ff       	call   0x41f4ea
449e01:	59                   	pop    %ecx
449e02:	50                   	push   %eax
449e03:	89 06                	mov    %eax,(%esi)
449e05:	ff 15 64 d4 48 00    	call   *0x48d464
449e0b:	57                   	push   %edi
449e0c:	ff 36                	push   (%esi)
449e0e:	ff 15 48 d4 48 00    	call   *0x48d448
449e14:	85 c0                	test   %eax,%eax
449e16:	79 1a                	jns    0x449e32
449e18:	ff 36                	push   (%esi)
449e1a:	ff 15 4c d4 48 00    	call   *0x48d44c
449e20:	ff 36                	push   (%esi)
449e22:	e8 37 57 fd ff       	call   0x41f55e
449e27:	83 26 00             	andl   $0x0,(%esi)
449e2a:	59                   	pop    %ecx
449e2b:	8b ce                	mov    %esi,%ecx
449e2d:	e8 ee 8d fc ff       	call   0x412c20
449e32:	5f                   	pop    %edi
449e33:	8b c6                	mov    %esi,%eax
449e35:	5e                   	pop    %esi
449e36:	8b e5                	mov    %ebp,%esp
449e38:	5d                   	pop    %ebp
449e39:	c2 04 00             	ret    $0x4
449e3c:	55                   	push   %ebp
449e3d:	8b ec                	mov    %esp,%ebp
449e3f:	56                   	push   %esi
449e40:	8b f1                	mov    %ecx,%esi
449e42:	e8 d9 8d fc ff       	call   0x412c20
449e47:	6a 14                	push   $0x14
449e49:	c7 46 0c 0f 00 00 00 	movl   $0xf,0xc(%esi)
449e50:	e8 95 56 fd ff       	call   0x41f4ea
449e55:	59                   	pop    %ecx
449e56:	85 c0                	test   %eax,%eax
449e58:	74 0c                	je     0x449e66
449e5a:	ff 75 08             	push   0x8(%ebp)
449e5d:	8b c8                	mov    %eax,%ecx
449e5f:	e8 dc a4 ff ff       	call   0x444340
449e64:	eb 02                	jmp    0x449e68
449e66:	33 c0                	xor    %eax,%eax
449e68:	89 06                	mov    %eax,(%esi)
449e6a:	8b c6                	mov    %esi,%eax
449e6c:	5e                   	pop    %esi
449e6d:	5d                   	pop    %ebp
449e6e:	c2 04 00             	ret    $0x4
449e71:	e8 8a b8 fb ff       	call   0x405700
449e76:	33 c9                	xor    %ecx,%ecx
449e78:	84 c0                	test   %al,%al
449e7a:	0f 94 c1             	sete   %cl
449e7d:	8a c1                	mov    %cl,%al
449e7f:	c3                   	ret
449e80:	56                   	push   %esi
449e81:	8b f1                	mov    %ecx,%esi
449e83:	0f b7 06             	movzwl (%esi),%eax
449e86:	66 3b 02             	cmp    (%edx),%ax
449e89:	74 04                	je     0x449e8f
449e8b:	32 c0                	xor    %al,%al
449e8d:	5e                   	pop    %esi
449e8e:	c3                   	ret
449e8f:	53                   	push   %ebx
449e90:	33 db                	xor    %ebx,%ebx
449e92:	43                   	inc    %ebx
449e93:	66 85 c0             	test   %ax,%ax
449e96:	74 5b                	je     0x449ef3
449e98:	66 3b c3             	cmp    %bx,%ax
449e9b:	74 56                	je     0x449ef3
449e9d:	a9 00 60 00 00       	test   $0x6000,%eax
449ea2:	75 42                	jne    0x449ee6
449ea4:	83 f8 0e             	cmp    $0xe,%eax
449ea7:	75 06                	jne    0x449eaf
449ea9:	6a 10                	push   $0x10
449eab:	52                   	push   %edx
449eac:	56                   	push   %esi
449ead:	eb 2d                	jmp    0x449edc
449eaf:	83 c0 fe             	add    $0xfffffffe,%eax
449eb2:	6a 04                	push   $0x4
449eb4:	59                   	pop    %ecx
449eb5:	83 f8 22             	cmp    $0x22,%eax
449eb8:	77 19                	ja     0x449ed3
449eba:	0f b6 80 0c 9f 44 00 	movzbl 0x449f0c(%eax),%eax
449ec1:	ff 24 85 f8 9e 44 00 	jmp    *0x449ef8(,%eax,4)
449ec8:	8b cb                	mov    %ebx,%ecx
449eca:	eb 07                	jmp    0x449ed3
449ecc:	6a 02                	push   $0x2
449ece:	eb 02                	jmp    0x449ed2
449ed0:	6a 08                	push   $0x8
449ed2:	59                   	pop    %ecx
449ed3:	51                   	push   %ecx
449ed4:	8d 42 08             	lea    0x8(%edx),%eax
449ed7:	50                   	push   %eax
449ed8:	8d 46 08             	lea    0x8(%esi),%eax
449edb:	50                   	push   %eax
449edc:	e8 82 56 fd ff       	call   0x41f563
449ee1:	83 c4 0c             	add    $0xc,%esp
449ee4:	eb 06                	jmp    0x449eec
449ee6:	8b 46 08             	mov    0x8(%esi),%eax
449ee9:	2b 42 08             	sub    0x8(%edx),%eax
449eec:	f7 d8                	neg    %eax
449eee:	1b c0                	sbb    %eax,%eax
449ef0:	40                   	inc    %eax
449ef1:	eb 02                	jmp    0x449ef5
449ef3:	8a c3                	mov    %bl,%al
449ef5:	5b                   	pop    %ebx
449ef6:	5e                   	pop    %esi
449ef7:	c3                   	ret
449ef8:	cc                   	int3
449ef9:	9e                   	sahf
449efa:	44                   	inc    %esp
449efb:	00 d3                	add    %dl,%bl
449efd:	9e                   	sahf
449efe:	44                   	inc    %esp
449eff:	00 d0                	add    %dl,%al
449f01:	9e                   	sahf
449f02:	44                   	inc    %esp
449f03:	00 c8                	add    %cl,%al
449f05:	9e                   	sahf
449f06:	44                   	inc    %esp
449f07:	00 d3                	add    %dl,%bl
449f09:	9e                   	sahf
449f0a:	44                   	inc    %esp
449f0b:	00 00                	add    %al,(%eax)
449f0d:	01 01                	add    %eax,(%ecx)
449f0f:	02 02                	add    (%edx),%al
449f11:	02 04 04             	add    (%esp,%eax,1),%al
449f14:	00 00                	add    %al,(%eax)
449f16:	04 04                	add    $0x4,%al
449f18:	04 04                	add    $0x4,%al
449f1a:	03 03                	add    (%ebx),%eax
449f1c:	00 01                	add    %al,(%ecx)
449f1e:	02 02                	add    (%edx),%al
449f20:	01 01                	add    %eax,(%ecx)
449f22:	04 04                	add    $0x4,%al
449f24:	04 04                	add    $0x4,%al
449f26:	04 04                	add    $0x4,%al
449f28:	04 04                	add    $0x4,%al
449f2a:	04 04                	add    $0x4,%al
449f2c:	04 04                	add    $0x4,%al