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)
428df9:	ff 75 08             	push   0x8(%ebp)
428dfc:	75 07                	jne    0x428e05
428dfe:	68 50 ac 4b 00       	push   $0x4bac50
428e03:	eb 02                	jmp    0x428e07
428e05:	6a 00                	push   $0x0
428e07:	e8 0d fd ff ff       	call   0x428b19
428e0c:	83 c4 14             	add    $0x14,%esp
428e0f:	5d                   	pop    %ebp
428e10:	c3                   	ret
428e11:	55                   	push   %ebp
428e12:	8b ec                	mov    %esp,%ebp
428e14:	51                   	push   %ecx
428e15:	66 8b 45 08          	mov    0x8(%ebp),%ax
428e19:	b9 ff ff 00 00       	mov    $0xffff,%ecx
428e1e:	66 3b c1             	cmp    %cx,%ax
428e21:	75 04                	jne    0x428e27
428e23:	33 c0                	xor    %eax,%eax
428e25:	c9                   	leave
428e26:	c3                   	ret
428e27:	b9 00 01 00 00       	mov    $0x100,%ecx
428e2c:	66 3b c1             	cmp    %cx,%ax
428e2f:	73 0e                	jae    0x428e3f
428e31:	0f b7 c8             	movzwl %ax,%ecx
428e34:	a1 70 b1 4b 00       	mov    0x4bb170,%eax
428e39:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
428e3d:	eb 1c                	jmp    0x428e5b
428e3f:	8d 45 fc             	lea    -0x4(%ebp),%eax
428e42:	50                   	push   %eax
428e43:	6a 01                	push   $0x1
428e45:	8d 45 08             	lea    0x8(%ebp),%eax
428e48:	50                   	push   %eax
428e49:	6a 01                	push   $0x1
428e4b:	ff 15 98 d3 48 00    	call   *0x48d398
428e51:	f7 d8                	neg    %eax
428e53:	1b c0                	sbb    %eax,%eax
428e55:	23 45 fc             	and    -0x4(%ebp),%eax
428e58:	0f b7 c0             	movzwl %ax,%eax
428e5b:	0f b7 4d 0c          	movzwl 0xc(%ebp),%ecx
428e5f:	23 c1                	and    %ecx,%eax
428e61:	c9                   	leave
428e62:	c3                   	ret
428e63:	55                   	push   %ebp
428e64:	8b ec                	mov    %esp,%ebp
428e66:	56                   	push   %esi
428e67:	8b 75 0c             	mov    0xc(%ebp),%esi
428e6a:	57                   	push   %edi
428e6b:	56                   	push   %esi
428e6c:	e8 c2 9a ff ff       	call   0x422933
428e71:	59                   	pop    %ecx
428e72:	8b 4e 0c             	mov    0xc(%esi),%ecx
428e75:	8b f8                	mov    %eax,%edi
428e77:	f6 c1 82             	test   $0x82,%cl
428e7a:	75 17                	jne    0x428e93
428e7c:	e8 8d ed ff ff       	call   0x427c0e
428e81:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
428e87:	83 4e 0c 20          	orl    $0x20,0xc(%esi)
428e8b:	83 c8 ff             	or     $0xffffffff,%eax
428e8e:	e9 19 01 00 00       	jmp    0x428fac
428e93:	f6 c1 40             	test   $0x40,%cl
428e96:	74 0d                	je     0x428ea5
428e98:	e8 71 ed ff ff       	call   0x427c0e
428e9d:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
428ea3:	eb e2                	jmp    0x428e87
428ea5:	53                   	push   %ebx
428ea6:	33 db                	xor    %ebx,%ebx
428ea8:	f6 c1 01             	test   $0x1,%cl
428eab:	74 13                	je     0x428ec0
428ead:	89 5e 04             	mov    %ebx,0x4(%esi)
428eb0:	f6 c1 10             	test   $0x10,%cl
428eb3:	74 7d                	je     0x428f32
428eb5:	8b 46 08             	mov    0x8(%esi),%eax
428eb8:	83 e1 fe             	and    $0xfffffffe,%ecx
428ebb:	89 06                	mov    %eax,(%esi)
428ebd:	89 4e 0c             	mov    %ecx,0xc(%esi)
428ec0:	8b 46 0c             	mov    0xc(%esi),%eax
428ec3:	83 e0 ef             	and    $0xffffffef,%eax
428ec6:	83 c8 02             	or     $0x2,%eax
428ec9:	89 46 0c             	mov    %eax,0xc(%esi)
428ecc:	89 5e 04             	mov    %ebx,0x4(%esi)
428ecf:	a9 0c 01 00 00       	test   $0x10c,%eax
428ed4:	75 2a                	jne    0x428f00
428ed6:	e8 3b bf ff ff       	call   0x424e16
428edb:	83 c0 20             	add    $0x20,%eax
428ede:	3b f0                	cmp    %eax,%esi
428ee0:	74 0c                	je     0x428eee
428ee2:	e8 2f bf ff ff       	call   0x424e16
428ee7:	83 c0 40             	add    $0x40,%eax
428eea:	3b f0                	cmp    %eax,%esi
428eec:	75 0b                	jne    0x428ef9
428eee:	57                   	push   %edi
428eef:	e8 fe ac 00 00       	call   0x433bf2
428ef4:	59                   	pop    %ecx
428ef5:	85 c0                	test   %eax,%eax
428ef7:	75 07                	jne    0x428f00
428ef9:	56                   	push   %esi
428efa:	e8 25 af 00 00       	call   0x433e24
428eff:	59                   	pop    %ecx
428f00:	f7 46 0c 08 01 00 00 	testl  $0x108,0xc(%esi)
428f07:	74 7a                	je     0x428f83
428f09:	8b 56 08             	mov    0x8(%esi),%edx
428f0c:	8b 0e                	mov    (%esi),%ecx
428f0e:	8d 42 01             	lea    0x1(%edx),%eax
428f11:	89 06                	mov    %eax,(%esi)
428f13:	8b 46 18             	mov    0x18(%esi),%eax
428f16:	2b ca                	sub    %edx,%ecx
428f18:	48                   	dec    %eax
428f19:	89 4d 0c             	mov    %ecx,0xc(%ebp)
428f1c:	89 46 04             	mov    %eax,0x4(%esi)
428f1f:	85 c9                	test   %ecx,%ecx
428f21:	7e 17                	jle    0x428f3a
428f23:	51                   	push   %ecx
428f24:	52                   	push   %edx
428f25:	57                   	push   %edi
428f26:	e8 36 20 00 00       	call   0x42af61
428f2b:	83 c4 0c             	add    $0xc,%esp
428f2e:	8b d8                	mov    %eax,%ebx
428f30:	eb 47                	jmp    0x428f79
428f32:	83 c9 20             	or     $0x20,%ecx
428f35:	89 4e 0c             	mov    %ecx,0xc(%esi)
428f38:	eb 68                	jmp    0x428fa2
428f3a:	83 ff ff             	cmp    $0xffffffff,%edi
428f3d:	74 1b                	je     0x428f5a
428f3f:	83 ff fe             	cmp    $0xfffffffe,%edi
428f42:	74 16                	je     0x428f5a
428f44:	8b cf                	mov    %edi,%ecx
428f46:	8b c7                	mov    %edi,%eax
428f48:	83 e1 1f             	and    $0x1f,%ecx
428f4b:	c1 f8 05             	sar    $0x5,%eax
428f4e:	c1 e1 06             	shl    $0x6,%ecx
428f51:	03 0c 85 40 09 4c 00 	add    0x4c0940(,%eax,4),%ecx
428f58:	eb 05                	jmp    0x428f5f
428f5a:	b9 d0 ad 4b 00       	mov    $0x4badd0,%ecx
428f5f:	f6 41 04 20          	testb  $0x20,0x4(%ecx)
428f63:	74 14                	je     0x428f79
428f65:	6a 02                	push   $0x2
428f67:	53                   	push   %ebx
428f68:	53                   	push   %ebx
428f69:	57                   	push   %edi
428f6a:	e8 c4 67 00 00       	call   0x42f733
428f6f:	23 c2                	and    %edx,%eax
428f71:	83 c4 10             	add    $0x10,%esp
428f74:	83 f8 ff             	cmp    $0xffffffff,%eax
428f77:	74 25                	je     0x428f9e
428f79:	8b 4e 08             	mov    0x8(%esi),%ecx
428f7c:	8a 45 08             	mov    0x8(%ebp),%al
428f7f:	88 01                	mov    %al,(%ecx)
428f81:	eb 16                	jmp    0x428f99
428f83:	33 c0                	xor    %eax,%eax
428f85:	40                   	inc    %eax
428f86:	50                   	push   %eax
428f87:	89 45 0c             	mov    %eax,0xc(%ebp)
428f8a:	8d 45 08             	lea    0x8(%ebp),%eax
428f8d:	50                   	push   %eax
428f8e:	57                   	push   %edi
428f8f:	e8 cd 1f 00 00       	call   0x42af61
428f94:	83 c4 0c             	add    $0xc,%esp
428f97:	8b d8                	mov    %eax,%ebx
428f99:	3b 5d 0c             	cmp    0xc(%ebp),%ebx
428f9c:	74 09                	je     0x428fa7
428f9e:	83 4e 0c 20          	orl    $0x20,0xc(%esi)
428fa2:	83 c8 ff             	or     $0xffffffff,%eax
428fa5:	eb 04                	jmp    0x428fab
428fa7:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
428fab:	5b                   	pop    %ebx
428fac:	5f                   	pop    %edi
428fad:	5e                   	pop    %esi
428fae:	5d                   	pop    %ebp
428faf:	c3                   	ret
428fb0:	55                   	push   %ebp
428fb1:	8b ec                	mov    %esp,%ebp
428fb3:	81 ec 88 04 00 00    	sub    $0x488,%esp
428fb9:	a1 c0 ad 4b 00       	mov    0x4badc0,%eax
428fbe:	33 c5                	xor    %ebp,%eax
428fc0:	89 45 fc             	mov    %eax,-0x4(%ebp)
428fc3:	8b 45 08             	mov    0x8(%ebp),%eax