429cb2:	8b 40 04             	mov    0x4(%eax),%eax
429cb5:	50                   	push   %eax
429cb6:	e8 25 ce fd ff       	call   0x406ae0
429cbb:	8b 45 fc             	mov    -0x4(%ebp),%eax
429cbe:	8b 58 04             	mov    0x4(%eax),%ebx
429cc1:	33 d2                	xor    %edx,%edx
429cc3:	8b 45 fc             	mov    -0x4(%ebp),%eax
429cc6:	e8 51 e5 ff ff       	call   0x42821c
429ccb:	53                   	push   %ebx
429ccc:	e8 1f cd fd ff       	call   0x4069f0
429cd1:	8b 55 fc             	mov    -0x4(%ebp),%edx
429cd4:	a1 b4 d8 48 00       	mov    0x48d8b4,%eax
429cd9:	e8 ea 24 ff ff       	call   0x41c1c8
429cde:	33 c0                	xor    %eax,%eax
429ce0:	5a                   	pop    %edx
429ce1:	59                   	pop    %ecx
429ce2:	59                   	pop    %ecx
429ce3:	64 89 10             	mov    %edx,%fs:(%eax)
429ce6:	68 fb 9c 42 00       	push   $0x429cfb
429ceb:	8b 45 fc             	mov    -0x4(%ebp),%eax
429cee:	e8 a1 e3 ff ff       	call   0x428094
429cf3:	c3                   	ret
429cf4:	e9 6f 9e fd ff       	jmp    0x403b68
429cf9:	eb f0                	jmp    0x429ceb
429cfb:	5b                   	pop    %ebx
429cfc:	59                   	pop    %ecx
429cfd:	5d                   	pop    %ebp
429cfe:	c3                   	ret
429cff:	90                   	nop
429d00:	55                   	push   %ebp
429d01:	8b ec                	mov    %esp,%ebp
429d03:	51                   	push   %ecx
429d04:	53                   	push   %ebx
429d05:	56                   	push   %esi
429d06:	89 45 fc             	mov    %eax,-0x4(%ebp)
429d09:	8b 45 fc             	mov    -0x4(%ebp),%eax
429d0c:	83 78 58 00          	cmpl   $0x0,0x58(%eax)
429d10:	0f 84 d0 00 00 00    	je     0x429de6
429d16:	8b 45 fc             	mov    -0x4(%ebp),%eax
429d19:	e8 0a e2 ff ff       	call   0x427f28
429d1e:	33 c0                	xor    %eax,%eax
429d20:	55                   	push   %ebp
429d21:	68 df 9d 42 00       	push   $0x429ddf
429d26:	64 ff 30             	push   %fs:(%eax)
429d29:	64 89 20             	mov    %esp,%fs:(%eax)
429d2c:	8b 45 fc             	mov    -0x4(%ebp),%eax
429d2f:	8b 40 58             	mov    0x58(%eax),%eax
429d32:	e8 e5 12 00 00       	call   0x42b01c
429d37:	8b 45 fc             	mov    -0x4(%ebp),%eax
429d3a:	8b 40 58             	mov    0x58(%eax),%eax
429d3d:	8b 40 28             	mov    0x28(%eax),%eax
429d40:	8b 40 08             	mov    0x8(%eax),%eax
429d43:	e8 34 fe ff ff       	call   0x429b7c
429d48:	8b 45 fc             	mov    -0x4(%ebp),%eax
429d4b:	8b 40 58             	mov    0x58(%eax),%eax
429d4e:	e8 c9 13 00 00       	call   0x42b11c
429d53:	6a 00                	push   $0x0
429d55:	e8 56 cc fd ff       	call   0x4069b0
429d5a:	8b d8                	mov    %eax,%ebx
429d5c:	8b 45 fc             	mov    -0x4(%ebp),%eax
429d5f:	8b 40 58             	mov    0x58(%eax),%eax
429d62:	8b 40 28             	mov    0x28(%eax),%eax
429d65:	8b 70 08             	mov    0x8(%eax),%esi
429d68:	85 f6                	test   %esi,%esi
429d6a:	74 0f                	je     0x429d7b
429d6c:	56                   	push   %esi
429d6d:	53                   	push   %ebx
429d6e:	e8 65 cd fd ff       	call   0x406ad8
429d73:	8b 55 fc             	mov    -0x4(%ebp),%edx
429d76:	89 42 5c             	mov    %eax,0x5c(%edx)
429d79:	eb 08                	jmp    0x429d83
429d7b:	8b 45 fc             	mov    -0x4(%ebp),%eax
429d7e:	33 d2                	xor    %edx,%edx
429d80:	89 50 5c             	mov    %edx,0x5c(%eax)
429d83:	8b 45 fc             	mov    -0x4(%ebp),%eax
429d86:	8b 40 58             	mov    0x58(%eax),%eax
429d89:	8b 40 28             	mov    0x28(%eax),%eax
429d8c:	8b 70 10             	mov    0x10(%eax),%esi
429d8f:	85 f6                	test   %esi,%esi
429d91:	74 17                	je     0x429daa
429d93:	6a ff                	push   $0xffffffff
429d95:	56                   	push   %esi
429d96:	53                   	push   %ebx
429d97:	e8 44 cd fd ff       	call   0x406ae0
429d9c:	8b 55 fc             	mov    -0x4(%ebp),%edx
429d9f:	89 42 60             	mov    %eax,0x60(%edx)
429da2:	53                   	push   %ebx
429da3:	e8 08 cd fd ff       	call   0x406ab0
429da8:	eb 08                	jmp    0x429db2
429daa:	8b 45 fc             	mov    -0x4(%ebp),%eax
429dad:	33 d2                	xor    %edx,%edx
429daf:	89 50 60             	mov    %edx,0x60(%eax)
429db2:	8b d3                	mov    %ebx,%edx
429db4:	8b 45 fc             	mov    -0x4(%ebp),%eax
429db7:	e8 60 e4 ff ff       	call   0x42821c
429dbc:	8b 55 fc             	mov    -0x4(%ebp),%edx
429dbf:	a1 b4 d8 48 00       	mov    0x48d8b4,%eax
429dc4:	e8 63 23 ff ff       	call   0x41c12c
429dc9:	33 c0                	xor    %eax,%eax
429dcb:	5a                   	pop    %edx
429dcc:	59                   	pop    %ecx
429dcd:	59                   	pop    %ecx
429dce:	64 89 10             	mov    %edx,%fs:(%eax)
429dd1:	68 e6 9d 42 00       	push   $0x429de6
429dd6:	8b 45 fc             	mov    -0x4(%ebp),%eax
429dd9:	e8 b6 e2 ff ff       	call   0x428094
429dde:	c3                   	ret
429ddf:	e9 84 9d fd ff       	jmp    0x403b68
429de4:	eb f0                	jmp    0x429dd6
429de6:	5e                   	pop    %esi
429de7:	5b                   	pop    %ebx
429de8:	59                   	pop    %ecx
429de9:	5d                   	pop    %ebp
429dea:	c3                   	ret
429deb:	90                   	nop
429dec:	ff 40 04             	incl   0x4(%eax)
429def:	c3                   	ret
429df0:	53                   	push   %ebx
429df1:	8b d8                	mov    %eax,%ebx
429df3:	85 db                	test   %ebx,%ebx
429df5:	74 16                	je     0x429e0d
429df7:	ff 4b 04             	decl   0x4(%ebx)
429dfa:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
429dfe:	75 0d                	jne    0x429e0d
429e00:	8b c3                	mov    %ebx,%eax
429e02:	8b 10                	mov    (%eax),%edx
429e04:	ff 12                	call   *(%edx)
429e06:	8b c3                	mov    %ebx,%eax
429e08:	e8 df 95 fd ff       	call   0x4033ec
429e0d:	5b                   	pop    %ebx
429e0e:	c3                   	ret
429e0f:	90                   	nop
429e10:	53                   	push   %ebx
429e11:	56                   	push   %esi
429e12:	e8 89 99 fd ff       	call   0x4037a0
429e17:	8b da                	mov    %edx,%ebx
429e19:	8b f0                	mov    %eax,%esi
429e1b:	8b 46 14             	mov    0x14(%esi),%eax
429e1e:	85 c0                	test   %eax,%eax
429e20:	74 13                	je     0x429e35
429e22:	e8 55 fd ff ff       	call   0x429b7c
429e27:	8b 46 14             	mov    0x14(%esi),%eax
429e2a:	50                   	push   %eax
429e2b:	e8 c8 cb fd ff       	call   0x4069f8
429e30:	33 c0                	xor    %eax,%eax
429e32:	89 46 14             	mov    %eax,0x14(%esi)
429e35:	8b c6                	mov    %esi,%eax
429e37:	8b 10                	mov    (%eax),%edx
429e39:	ff 12                	call   *(%edx)
429e3b:	8b 46 64             	mov    0x64(%esi),%eax
429e3e:	85 c0                	test   %eax,%eax
429e40:	74 06                	je     0x429e48
429e42:	50                   	push   %eax
429e43:	e8 90 c8 fd ff       	call   0x4066d8
429e48:	8d 46 6c             	lea    0x6c(%esi),%eax
429e4b:	e8 88 42 fe ff       	call   0x40e0d8
429e50:	8b d3                	mov    %ebx,%edx
429e52:	80 e2 fc             	and    $0xfc,%dl
429e55:	8b c6                	mov    %esi,%eax
429e57:	e8 80 95 fd ff       	call   0x4033dc
429e5c:	84 db                	test   %bl,%bl
429e5e:	7e 07                	jle    0x429e67
429e60:	8b c6                	mov    %esi,%eax
429e62:	e8 21 99 fd ff       	call   0x403788
429e67:	5e                   	pop    %esi
429e68:	5b                   	pop    %ebx
429e69:	c3                   	ret
429e6a:	8b c0                	mov    %eax,%eax
429e6c:	53                   	push   %ebx
429e6d:	8b d8                	mov    %eax,%ebx
429e6f:	8b 43 08             	mov    0x8(%ebx),%eax
429e72:	85 c0                	test   %eax,%eax
429e74:	74 13                	je     0x429e89
429e76:	3b 43 14             	cmp    0x14(%ebx),%eax
429e79:	74 0e                	je     0x429e89
429e7b:	e8 fc fc ff ff       	call   0x429b7c
429e80:	8b 43 08             	mov    0x8(%ebx),%eax
429e83:	50                   	push   %eax
429e84:	e8 6f cb fd ff       	call   0x4069f8
429e89:	8b 43 0c             	mov    0xc(%ebx),%eax
429e8c:	85 c0                	test   %eax,%eax
429e8e:	74 13                	je     0x429ea3
429e90:	e8 e7 fc ff ff       	call   0x429b7c
429e95:	8b 43 0c             	mov    0xc(%ebx),%eax
429e98:	50                   	push   %eax
429e99:	e8 5a cb fd ff       	call   0x4069f8
429e9e:	33 c0                	xor    %eax,%eax
429ea0:	89 43 0c             	mov    %eax,0xc(%ebx)
429ea3:	8b 43 10             	mov    0x10(%ebx),%eax
429ea6:	e8 09 c7 ff ff       	call   0x4265b4
429eab:	33 c0                	xor    %eax,%eax
429ead:	89 43 08             	mov    %eax,0x8(%ebx)
429eb0:	33 c0                	xor    %eax,%eax
429eb2:	89 43 10             	mov    %eax,0x10(%ebx)
429eb5:	5b                   	pop    %ebx
429eb6:	c3                   	ret
429eb7:	90                   	nop
429eb8:	55                   	push   %ebp
429eb9:	8b ec                	mov    %esp,%ebp
429ebb:	81 c4 f0 fb ff ff    	add    $0xfffffbf0,%esp
429ec1:	53                   	push   %ebx
429ec2:	56                   	push   %esi
429ec3:	89 55 fc             	mov    %edx,-0x4(%ebp)
429ec6:	8b f0                	mov    %eax,%esi
429ec8:	85 f6                	test   %esi,%esi
429eca:	0f 84 9e 00 00 00    	je     0x429f6e
429ed0:	66 83 79 26 08       	cmpw   $0x8,0x26(%ecx)
429ed5:	0f 87 93 00 00 00    	ja     0x429f6e
429edb:	8d 95 f0 fb ff ff    	lea    -0x410(%ebp),%edx
429ee1:	b9 ff 00 00 00       	mov    $0xff,%ecx
429ee6:	8b 45 fc             	mov    -0x4(%ebp),%eax
429ee9:	e8 2e ee ff ff       	call   0x428d1c
429eee:	8b d8                	mov    %eax,%ebx
429ef0:	85 db                	test   %ebx,%ebx
429ef2:	74 7a                	je     0x429f6e
429ef4:	6a 00                	push   $0x0
429ef6:	e8 cd cd fd ff       	call   0x406cc8
429efb:	89 45 f8             	mov    %eax,-0x8(%ebp)
429efe:	8b 45 f8             	mov    -0x8(%ebp),%eax
429f01:	50                   	push   %eax
429f02:	e8 a9 ca fd ff       	call   0x4069b0
429f07:	89 45 f4             	mov    %eax,-0xc(%ebp)
429f0a:	56                   	push   %esi
429f0b:	8b 45 f4             	mov    -0xc(%ebp),%eax
429f0e:	50                   	push   %eax
429f0f:	e8 c4 cb fd ff       	call   0x406ad8
429f14:	89 45 f0             	mov    %eax,-0x10(%ebp)
429f17:	33 c0                	xor    %eax,%eax
429f19:	55                   	push   %ebp
429f1a:	68 67 9f 42 00       	push   $0x429f67
429f1f:	64 ff 30             	push   %fs:(%eax)
429f22:	64 89 20             	mov    %esp,%fs:(%eax)
429f25:	8d 85 f0 fb ff ff    	lea    -0x410(%ebp),%eax
429f2b:	50                   	push   %eax
429f2c:	53                   	push   %ebx
429f2d:	6a 00                	push   $0x0
429f2f:	8b 45 f4             	mov    -0xc(%ebp),%eax
429f32:	50                   	push   %eax
429f33:	e8 c8 cb fd ff       	call   0x406b00
429f38:	33 c0                	xor    %eax,%eax
429f3a:	5a                   	pop    %edx
429f3b:	59                   	pop    %ecx
429f3c:	59                   	pop    %ecx
429f3d:	64 89 10             	mov    %edx,%fs:(%eax)
429f40:	68 6e 9f 42 00       	push   $0x429f6e
429f45:	8b 45 f0             	mov    -0x10(%ebp),%eax
429f48:	50                   	push   %eax
429f49:	8b 45 f4             	mov    -0xc(%ebp),%eax
429f4c:	50                   	push   %eax
429f4d:	e8 86 cb fd ff       	call   0x406ad8
429f52:	8b 45 f4             	mov    -0xc(%ebp),%eax
429f55:	50                   	push   %eax
429f56:	e8 95 ca fd ff       	call   0x4069f0
429f5b:	8b 45 f8             	mov    -0x8(%ebp),%eax
429f5e:	50                   	push   %eax
429f5f:	6a 00                	push   $0x0
429f61:	e8 b2 cf fd ff       	call   0x406f18
429f66:	c3                   	ret
429f67:	e9 fc 9b fd ff       	jmp    0x403b68
429f6c:	eb d7                	jmp    0x429f45
429f6e:	5e                   	pop    %esi
429f6f:	5b                   	pop    %ebx
429f70:	8b e5                	mov    %ebp,%esp
429f72:	5d                   	pop    %ebp
429f73:	c3                   	ret
429f74:	f6 40 28 03          	testb  $0x3,0x28(%eax)
429f78:	74 42                	je     0x429fbc
429f7a:	83 78 40 00          	cmpl   $0x0,0x40(%eax)
429f7e:	75 3c                	jne    0x429fbc
429f80:	66 8b 50 26          	mov    0x26(%eax),%dx
429f84:	66 83 fa 10          	cmp    $0x10,%dx
429f88:	75 17                	jne    0x429fa1
429f8a:	c7 40 40 00 f8 00 00 	movl   $0xf800,0x40(%eax)
429f91:	c7 40 44 e0 07 00 00 	movl   $0x7e0,0x44(%eax)
429f98:	c7 40 48 1f 00 00 00 	movl   $0x1f,0x48(%eax)
429f9f:	eb 1b                	jmp    0x429fbc
429fa1:	66 83 fa 20          	cmp    $0x20,%dx
429fa5:	75 15                	jne    0x429fbc
429fa7:	c7 40 40 00 00 ff 00 	movl   $0xff0000,0x40(%eax)
429fae:	c7 40 44 00 ff 00 00 	movl   $0xff00,0x44(%eax)
429fb5:	c7 40 48 ff 00 00 00 	movl   $0xff,0x48(%eax)
429fbc:	c3                   	ret
429fbd:	8d 40 00             	lea    0x0(%eax),%eax
429fc0:	55                   	push   %ebp
429fc1:	8b ec                	mov    %esp,%ebp
429fc3:	81 c4 68 ff ff ff    	add    $0xffffff68,%esp
429fc9:	53                   	push   %ebx
429fca:	56                   	push   %esi
429fcb:	57                   	push   %edi
429fcc:	89 4d f4             	mov    %ecx,-0xc(%ebp)
429fcf:	89 55 f8             	mov    %edx,-0x8(%ebp)
429fd2:	89 45 fc             	mov    %eax,-0x4(%ebp)
429fd5:	33 c0                	xor    %eax,%eax
429fd7:	89 45 f0             	mov    %eax,-0x10(%ebp)
429fda:	8b 45 0c             	mov    0xc(%ebp),%eax
429fdd:	83 78 18 00          	cmpl   $0x0,0x18(%eax)
429fe1:	74 1a                	je     0x429ffd
429fe3:	8b 45 0c             	mov    0xc(%ebp),%eax
429fe6:	83 78 1c 00          	cmpl   $0x0,0x1c(%eax)
429fea:	0f 84 25 06 00 00    	je     0x42a615
429ff0:	8b 45 0c             	mov    0xc(%ebp),%eax
429ff3:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
429ff7:	0f 84 18 06 00 00    	je     0x42a615
429ffd:	8b 45 0c             	mov    0xc(%ebp),%eax
42a000:	83 78 18 00          	cmpl   $0x0,0x18(%eax)
42a004:	75 1a                	jne    0x42a020
42a006:	8b 45 0c             	mov    0xc(%ebp),%eax
42a009:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
42a00d:	0f 84 02 06 00 00    	je     0x42a615
42a013:	8b 45 0c             	mov    0xc(%ebp),%eax
42a016:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
42a01a:	0f 84 f5 05 00 00    	je     0x42a615
42a020:	8b 45 fc             	mov    -0x4(%ebp),%eax
42a023:	e8 54 fb ff ff       	call   0x429b7c
42a028:	33 c0                	xor    %eax,%eax
42a02a:	89 45 90             	mov    %eax,-0x70(%ebp)
42a02d:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
42a031:	74 1c                	je     0x42a04f
42a033:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
42a039:	50                   	push   %eax
42a03a:	6a 54                	push   $0x54
42a03c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42a03f:	50                   	push   %eax
42a040:	e8 03 ca fd ff       	call   0x406a48
42a045:	83 f8 18             	cmp    $0x18,%eax
42a048:	7d 05                	jge    0x42a04f
42a04a:	e8 25 e4 ff ff       	call   0x428474
42a04f:	6a 00                	push   $0x0
42a051:	e8 72 cc fd ff       	call   0x406cc8
42a056:	e8 2d e5 ff ff       	call   0x428588
42a05b:	89 45 e8             	mov    %eax,-0x18(%ebp)
42a05e:	8b 45 e8             	mov    -0x18(%ebp),%eax
42a061:	50                   	push   %eax
42a062:	e8 49 c9 fd ff       	call   0x4069b0
42a067:	e8 1c e5 ff ff       	call   0x428588
42a06c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
42a06f:	33 d2                	xor    %edx,%edx
42a071:	55                   	push   %ebp
42a072:	68 0e a6 42 00       	push   $0x42a60e
42a077:	64 ff 32             	push   %fs:(%edx)
42a07a:	64 89 22             	mov    %esp,%fs:(%edx)
42a07d:	8b 45 0c             	mov    0xc(%ebp),%eax
42a080:	83 78 18 28          	cmpl   $0x28,0x18(%eax)
42a084:	73 5e                	jae    0x42a0e4
42a086:	8b 45 0c             	mov    0xc(%ebp),%eax
42a089:	66 8b 40 10          	mov    0x10(%eax),%ax
42a08d:	8b 55 0c             	mov    0xc(%ebp),%edx
42a090:	66 0b 42 12          	or     0x12(%edx),%ax
42a094:	66 83 f8 01          	cmp    $0x1,%ax
42a098:	75 26                	jne    0x42a0c0