428a7e:	72 16                	jb     0x428a96
428a80:	75 05                	jne    0x428a87
428a82:	3b 55 f4             	cmp    -0xc(%ebp),%edx
428a85:	76 0f                	jbe    0x428a96
428a87:	8b 7d 0c             	mov    0xc(%ebp),%edi
428a8a:	83 c8 04             	or     $0x4,%eax
428a8d:	89 45 fc             	mov    %eax,-0x4(%ebp)
428a90:	85 ff                	test   %edi,%edi
428a92:	74 ac                	je     0x428a40
428a94:	eb 05                	jmp    0x428a9b
428a96:	0f af d9             	imul   %ecx,%ebx
428a99:	03 da                	add    %edx,%ebx
428a9b:	0f b7 3e             	movzwl (%esi),%edi
428a9e:	83 c6 02             	add    $0x2,%esi
428aa1:	e9 6d ff ff ff       	jmp    0x428a13
428aa6:	a8 04                	test   $0x4,%al
428aa8:	75 1f                	jne    0x428ac9
428aaa:	a8 01                	test   $0x1,%al
428aac:	75 40                	jne    0x428aee
428aae:	8b c8                	mov    %eax,%ecx
428ab0:	83 e1 02             	and    $0x2,%ecx
428ab3:	74 08                	je     0x428abd
428ab5:	81 fb 00 00 00 80    	cmp    $0x80000000,%ebx
428abb:	77 0c                	ja     0x428ac9
428abd:	85 c9                	test   %ecx,%ecx
428abf:	75 2d                	jne    0x428aee
428ac1:	81 fb ff ff ff 7f    	cmp    $0x7fffffff,%ebx
428ac7:	76 25                	jbe    0x428aee
428ac9:	e8 40 f1 ff ff       	call   0x427c0e
428ace:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
428ad4:	8b 45 fc             	mov    -0x4(%ebp),%eax
428ad7:	a8 01                	test   $0x1,%al
428ad9:	74 05                	je     0x428ae0
428adb:	83 cb ff             	or     $0xffffffff,%ebx
428ade:	eb 0e                	jmp    0x428aee
428ae0:	6a 00                	push   $0x0
428ae2:	a8 02                	test   $0x2,%al
428ae4:	5b                   	pop    %ebx
428ae5:	0f 95 c3             	setne  %bl
428ae8:	81 c3 ff ff ff 7f    	add    $0x7fffffff,%ebx
428aee:	85 ff                	test   %edi,%edi
428af0:	74 02                	je     0x428af4
428af2:	89 37                	mov    %esi,(%edi)
428af4:	a8 02                	test   $0x2,%al
428af6:	74 02                	je     0x428afa
428af8:	f7 db                	neg    %ebx
428afa:	5f                   	pop    %edi
428afb:	5e                   	pop    %esi
428afc:	8b c3                	mov    %ebx,%eax
428afe:	5b                   	pop    %ebx
428aff:	c9                   	leave
428b00:	c3                   	ret
428b01:	55                   	push   %ebp
428b02:	8b ec                	mov    %esp,%ebp
428b04:	6a 00                	push   $0x0
428b06:	ff 75 10             	push   0x10(%ebp)
428b09:	ff 75 0c             	push   0xc(%ebp)
428b0c:	ff 75 08             	push   0x8(%ebp)
428b0f:	e8 11 fe ff ff       	call   0x428925
428b14:	83 c4 10             	add    $0x10,%esp
428b17:	5d                   	pop    %ebp
428b18:	c3                   	ret
428b19:	55                   	push   %ebp
428b1a:	8b ec                	mov    %esp,%ebp
428b1c:	83 ec 34             	sub    $0x34,%esp
428b1f:	8d 4d cc             	lea    -0x34(%ebp),%ecx
428b22:	ff 75 08             	push   0x8(%ebp)
428b25:	e8 f5 83 ff ff       	call   0x420f1f
428b2a:	8b 45 10             	mov    0x10(%ebp),%eax
428b2d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
428b30:	85 c0                	test   %eax,%eax
428b32:	74 02                	je     0x428b36
428b34:	89 08                	mov    %ecx,(%eax)
428b36:	53                   	push   %ebx
428b37:	56                   	push   %esi
428b38:	33 d2                	xor    %edx,%edx
428b3a:	57                   	push   %edi
428b3b:	85 c9                	test   %ecx,%ecx
428b3d:	74 11                	je     0x428b50
428b3f:	8b 45 14             	mov    0x14(%ebp),%eax
428b42:	85 c0                	test   %eax,%eax
428b44:	74 1f                	je     0x428b65
428b46:	83 f8 02             	cmp    $0x2,%eax
428b49:	7c 05                	jl     0x428b50
428b4b:	83 f8 24             	cmp    $0x24,%eax
428b4e:	7e 15                	jle    0x428b65
428b50:	e8 b9 f0 ff ff       	call   0x427c0e
428b55:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
428b5b:	e8 b0 e2 ff ff       	call   0x426e10
428b60:	e9 68 02 00 00       	jmp    0x428dcd
428b65:	0f b7 19             	movzwl (%ecx),%ebx
428b68:	8b fa                	mov    %edx,%edi
428b6a:	6a 08                	push   $0x8
428b6c:	53                   	push   %ebx
428b6d:	89 55 fc             	mov    %edx,-0x4(%ebp)
428b70:	89 7d ec             	mov    %edi,-0x14(%ebp)
428b73:	89 5d f4             	mov    %ebx,-0xc(%ebp)
428b76:	8d 71 02             	lea    0x2(%ecx),%esi
428b79:	e8 93 02 00 00       	call   0x428e11
428b7e:	59                   	pop    %ecx
428b7f:	59                   	pop    %ecx
428b80:	85 c0                	test   %eax,%eax
428b82:	74 1d                	je     0x428ba1
428b84:	0f b7 3e             	movzwl (%esi),%edi
428b87:	6a 08                	push   $0x8
428b89:	57                   	push   %edi
428b8a:	89 7d f4             	mov    %edi,-0xc(%ebp)
428b8d:	83 c6 02             	add    $0x2,%esi
428b90:	e8 7c 02 00 00       	call   0x428e11
428b95:	59                   	pop    %ecx
428b96:	59                   	pop    %ecx
428b97:	85 c0                	test   %eax,%eax
428b99:	75 e9                	jne    0x428b84
428b9b:	8b 7d ec             	mov    -0x14(%ebp),%edi
428b9e:	8b 5d f4             	mov    -0xc(%ebp),%ebx
428ba1:	8b 45 18             	mov    0x18(%ebp),%eax
428ba4:	66 83 fb 2d          	cmp    $0x2d,%bx
428ba8:	75 05                	jne    0x428baf
428baa:	83 c8 02             	or     $0x2,%eax
428bad:	eb 06                	jmp    0x428bb5
428baf:	66 83 fb 2b          	cmp    $0x2b,%bx
428bb3:	75 09                	jne    0x428bbe
428bb5:	0f b7 1e             	movzwl (%esi),%ebx
428bb8:	83 c6 02             	add    $0x2,%esi
428bbb:	89 5d f4             	mov    %ebx,-0xc(%ebp)
428bbe:	89 45 f8             	mov    %eax,-0x8(%ebp)
428bc1:	8b 45 14             	mov    0x14(%ebp),%eax
428bc4:	85 c0                	test   %eax,%eax
428bc6:	0f 88 f5 01 00 00    	js     0x428dc1
428bcc:	83 f8 01             	cmp    $0x1,%eax
428bcf:	0f 84 ec 01 00 00    	je     0x428dc1
428bd5:	83 f8 24             	cmp    $0x24,%eax
428bd8:	0f 8f e3 01 00 00    	jg     0x428dc1
428bde:	85 c0                	test   %eax,%eax
428be0:	75 30                	jne    0x428c12
428be2:	53                   	push   %ebx
428be3:	e8 5e b0 00 00       	call   0x433c46
428be8:	59                   	pop    %ecx
428be9:	85 c0                	test   %eax,%eax
428beb:	74 08                	je     0x428bf5
428bed:	6a 0a                	push   $0xa
428bef:	58                   	pop    %eax
428bf0:	89 45 14             	mov    %eax,0x14(%ebp)
428bf3:	eb 4d                	jmp    0x428c42
428bf5:	0f b7 06             	movzwl (%esi),%eax
428bf8:	6a 78                	push   $0x78
428bfa:	59                   	pop    %ecx
428bfb:	66 3b c1             	cmp    %cx,%ax
428bfe:	74 0c                	je     0x428c0c
428c00:	6a 58                	push   $0x58
428c02:	59                   	pop    %ecx
428c03:	66 3b c1             	cmp    %cx,%ax
428c06:	74 04                	je     0x428c0c
428c08:	6a 08                	push   $0x8
428c0a:	eb e3                	jmp    0x428bef
428c0c:	6a 10                	push   $0x10
428c0e:	58                   	pop    %eax
428c0f:	89 45 14             	mov    %eax,0x14(%ebp)
428c12:	83 f8 10             	cmp    $0x10,%eax
428c15:	75 2b                	jne    0x428c42
428c17:	53                   	push   %ebx
428c18:	e8 29 b0 00 00       	call   0x433c46
428c1d:	59                   	pop    %ecx
428c1e:	85 c0                	test   %eax,%eax
428c20:	75 1d                	jne    0x428c3f
428c22:	0f b7 06             	movzwl (%esi),%eax
428c25:	6a 78                	push   $0x78
428c27:	59                   	pop    %ecx
428c28:	66 3b c1             	cmp    %cx,%ax
428c2b:	74 08                	je     0x428c35
428c2d:	6a 58                	push   $0x58
428c2f:	59                   	pop    %ecx
428c30:	66 3b c1             	cmp    %cx,%ax
428c33:	75 0a                	jne    0x428c3f
428c35:	0f b7 5e 02          	movzwl 0x2(%esi),%ebx
428c39:	89 5d f4             	mov    %ebx,-0xc(%ebp)
428c3c:	83 c6 04             	add    $0x4,%esi
428c3f:	8b 45 14             	mov    0x14(%ebp),%eax
428c42:	99                   	cltd
428c43:	8b ca                	mov    %edx,%ecx
428c45:	51                   	push   %ecx
428c46:	50                   	push   %eax
428c47:	6a ff                	push   $0xffffffff
428c49:	6a ff                	push   $0xffffffff
428c4b:	89 45 dc             	mov    %eax,-0x24(%ebp)
428c4e:	89 4d e0             	mov    %ecx,-0x20(%ebp)
428c51:	e8 3a fc ff ff       	call   0x428890
428c56:	89 5d e8             	mov    %ebx,-0x18(%ebp)
428c59:	8b 5d f4             	mov    -0xc(%ebp),%ebx
428c5c:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
428c5f:	89 45 f0             	mov    %eax,-0x10(%ebp)
428c62:	89 55 ec             	mov    %edx,-0x14(%ebp)
428c65:	53                   	push   %ebx
428c66:	e8 db af 00 00       	call   0x433c46
428c6b:	59                   	pop    %ecx
428c6c:	8b c8                	mov    %eax,%ecx
428c6e:	89 45 f4             	mov    %eax,-0xc(%ebp)
428c71:	83 f9 ff             	cmp    $0xffffffff,%ecx
428c74:	75 57                	jne    0x428ccd
428c76:	6a 41                	push   $0x41
428c78:	58                   	pop    %eax
428c79:	66 3b c3             	cmp    %bx,%ax
428c7c:	77 06                	ja     0x428c84
428c7e:	66 83 fb 5a          	cmp    $0x5a,%bx
428c82:	76 32                	jbe    0x428cb6
428c84:	6a 19                	push   $0x19
428c86:	8d 43 9f             	lea    -0x61(%ebx),%eax
428c89:	59                   	pop    %ecx
428c8a:	66 3b c1             	cmp    %cx,%ax
428c8d:	76 2a                	jbe    0x428cb9
428c8f:	8b 45 fc             	mov    -0x4(%ebp),%eax
428c92:	8b 5d f8             	mov    -0x8(%ebp),%ebx
428c95:	8b 4d 10             	mov    0x10(%ebp),%ecx
428c98:	83 ee 02             	sub    $0x2,%esi
428c9b:	f6 c3 08             	test   $0x8,%bl
428c9e:	0f 85 93 00 00 00    	jne    0x428d37
428ca4:	85 c9                	test   %ecx,%ecx
428ca6:	74 03                	je     0x428cab
428ca8:	8b 75 0c             	mov    0xc(%ebp),%esi
428cab:	33 d2                	xor    %edx,%edx
428cad:	8b c2                	mov    %edx,%eax
428caf:	8b fa                	mov    %edx,%edi
428cb1:	e9 f5 00 00 00       	jmp    0x428dab
428cb6:	6a 19                	push   $0x19
428cb8:	59                   	pop    %ecx
428cb9:	8d 43 9f             	lea    -0x61(%ebx),%eax
428cbc:	66 3b c1             	cmp    %cx,%ax
428cbf:	0f b7 c3             	movzwl %bx,%eax
428cc2:	77 03                	ja     0x428cc7
428cc4:	83 e8 20             	sub    $0x20,%eax
428cc7:	8d 48 c9             	lea    -0x37(%eax),%ecx
428cca:	89 4d f4             	mov    %ecx,-0xc(%ebp)
428ccd:	8b 5d f8             	mov    -0x8(%ebp),%ebx
428cd0:	8b 45 fc             	mov    -0x4(%ebp),%eax
428cd3:	3b 4d 14             	cmp    0x14(%ebp),%ecx
428cd6:	73 bd                	jae    0x428c95
428cd8:	83 cb 08             	or     $0x8,%ebx
428cdb:	89 5d f8             	mov    %ebx,-0x8(%ebp)
428cde:	3b 7d ec             	cmp    -0x14(%ebp),%edi
428ce1:	72 2f                	jb     0x428d12
428ce3:	8b 55 f0             	mov    -0x10(%ebp),%edx
428ce6:	77 04                	ja     0x428cec
428ce8:	3b c2                	cmp    %edx,%eax
428cea:	72 26                	jb     0x428d12
428cec:	3b c2                	cmp    %edx,%eax
428cee:	75 13                	jne    0x428d03
428cf0:	3b 7d ec             	cmp    -0x14(%ebp),%edi
428cf3:	75 0e                	jne    0x428d03
428cf5:	33 d2                	xor    %edx,%edx
428cf7:	3b 55 e8             	cmp    -0x18(%ebp),%edx
428cfa:	72 16                	jb     0x428d12
428cfc:	77 05                	ja     0x428d03
428cfe:	3b 4d e4             	cmp    -0x1c(%ebp),%ecx
428d01:	76 0f                	jbe    0x428d12
428d03:	8b 4d 10             	mov    0x10(%ebp),%ecx
428d06:	83 cb 04             	or     $0x4,%ebx
428d09:	89 5d f8             	mov    %ebx,-0x8(%ebp)
428d0c:	85 c9                	test   %ecx,%ecx
428d0e:	74 88                	je     0x428c98
428d10:	eb 1a                	jmp    0x428d2c
428d12:	57                   	push   %edi
428d13:	50                   	push   %eax
428d14:	ff 75 e0             	push   -0x20(%ebp)
428d17:	ff 75 dc             	push   -0x24(%ebp)
428d1a:	e8 d1 b0 00 00       	call   0x433df0
428d1f:	03 45 f4             	add    -0xc(%ebp),%eax
428d22:	6a 00                	push   $0x0
428d24:	89 45 fc             	mov    %eax,-0x4(%ebp)
428d27:	8b fa                	mov    %edx,%edi
428d29:	58                   	pop    %eax
428d2a:	13 f8                	adc    %eax,%edi
428d2c:	0f b7 1e             	movzwl (%esi),%ebx
428d2f:	83 c6 02             	add    $0x2,%esi
428d32:	e9 2e ff ff ff       	jmp    0x428c65
428d37:	f6 c3 04             	test   $0x4,%bl
428d3a:	75 33                	jne    0x428d6f
428d3c:	f6 c3 01             	test   $0x1,%bl
428d3f:	75 65                	jne    0x428da6
428d41:	8b cb                	mov    %ebx,%ecx
428d43:	83 e1 02             	and    $0x2,%ecx
428d46:	74 12                	je     0x428d5a
428d48:	81 ff 00 00 00 80    	cmp    $0x80000000,%edi
428d4e:	77 1f                	ja     0x428d6f
428d50:	72 08                	jb     0x428d5a
428d52:	33 d2                	xor    %edx,%edx
428d54:	3b c2                	cmp    %edx,%eax
428d56:	77 17                	ja     0x428d6f
428d58:	eb 02                	jmp    0x428d5c
428d5a:	33 d2                	xor    %edx,%edx
428d5c:	85 c9                	test   %ecx,%ecx
428d5e:	75 41                	jne    0x428da1
428d60:	81 ff ff ff ff 7f    	cmp    $0x7fffffff,%edi
428d66:	72 39                	jb     0x428da1
428d68:	77 05                	ja     0x428d6f
428d6a:	83 f8 ff             	cmp    $0xffffffff,%eax
428d6d:	76 32                	jbe    0x428da1
428d6f:	e8 9a ee ff ff       	call   0x427c0e
428d74:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
428d7a:	f6 c3 01             	test   $0x1,%bl
428d7d:	74 08                	je     0x428d87
428d7f:	83 c8 ff             	or     $0xffffffff,%eax
428d82:	83 cf ff             	or     $0xffffffff,%edi
428d85:	eb 22                	jmp    0x428da9
428d87:	f6 c3 02             	test   $0x2,%bl
428d8a:	74 0b                	je     0x428d97
428d8c:	33 d2                	xor    %edx,%edx
428d8e:	8b c2                	mov    %edx,%eax
428d90:	bf 00 00 00 80       	mov    $0x80000000,%edi
428d95:	eb 14                	jmp    0x428dab
428d97:	83 c8 ff             	or     $0xffffffff,%eax
428d9a:	bf ff ff ff 7f       	mov    $0x7fffffff,%edi
428d9f:	eb 08                	jmp    0x428da9
428da1:	8b 45 fc             	mov    -0x4(%ebp),%eax
428da4:	eb 05                	jmp    0x428dab
428da6:	8b 45 fc             	mov    -0x4(%ebp),%eax
428da9:	33 d2                	xor    %edx,%edx
428dab:	8b 4d 10             	mov    0x10(%ebp),%ecx
428dae:	85 c9                	test   %ecx,%ecx
428db0:	74 02                	je     0x428db4
428db2:	89 31                	mov    %esi,(%ecx)
428db4:	f6 c3 02             	test   $0x2,%bl
428db7:	74 1a                	je     0x428dd3
428db9:	f7 d8                	neg    %eax
428dbb:	13 fa                	adc    %edx,%edi
428dbd:	f7 df                	neg    %edi
428dbf:	eb 12                	jmp    0x428dd3
428dc1:	8b 45 10             	mov    0x10(%ebp),%eax
428dc4:	85 c0                	test   %eax,%eax
428dc6:	74 05                	je     0x428dcd
428dc8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
428dcb:	89 08                	mov    %ecx,(%eax)
428dcd:	33 c9                	xor    %ecx,%ecx
428dcf:	8b c1                	mov    %ecx,%eax
428dd1:	8b f9                	mov    %ecx,%edi
428dd3:	80 7d d8 00          	cmpb   $0x0,-0x28(%ebp)
428dd7:	74 07                	je     0x428de0
428dd9:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
428ddc:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
428de0:	8b d7                	mov    %edi,%edx
428de2:	5f                   	pop    %edi
428de3:	5e                   	pop    %esi
428de4:	5b                   	pop    %ebx
428de5:	c9                   	leave
428de6:	c3                   	ret
428de7:	55                   	push   %ebp
428de8:	8b ec                	mov    %esp,%ebp
428dea:	83 3d 80 01 4c 00 00 	cmpl   $0x0,0x4c0180
428df1:	6a 00                	push   $0x0
428df3:	ff 75 10             	push   0x10(%ebp)
428df6:	ff 75 0c             	push   0xc(%ebp)