405afa:	0f 4e f0             	cmovle %eax,%esi
405afd:	b8 05 40 00 80       	mov    $0x80004005,%eax
405b02:	85 f6                	test   %esi,%esi
405b04:	0f 49 f0             	cmovns %eax,%esi
405b07:	56                   	push   %esi
405b08:	68 08 05 00 00       	push   $0x508
405b0d:	68 bc cc 44 00       	push   $0x44ccbc
405b12:	89 75 0c             	mov    %esi,0xc(%ebp)
405b15:	e8 b9 dc ff ff       	call   0x4037d3
405b1a:	68 34 d4 44 00       	push   $0x44d434
405b1f:	e9 09 fc ff ff       	jmp    0x40572d
405b24:	56                   	push   %esi
405b25:	ff 75 f8             	push   -0x8(%ebp)
405b28:	ff 75 10             	push   0x10(%ebp)
405b2b:	53                   	push   %ebx
405b2c:	e8 50 27 00 00       	call   0x408281
405b31:	8b f0                	mov    %eax,%esi
405b33:	89 75 0c             	mov    %esi,0xc(%ebp)
405b36:	85 f6                	test   %esi,%esi
405b38:	79 0a                	jns    0x405b44
405b3a:	68 70 cf 44 00       	push   $0x44cf70
405b3f:	e9 e9 fb ff ff       	jmp    0x40572d
405b44:	8b 4d 14             	mov    0x14(%ebp),%ecx
405b47:	85 c9                	test   %ecx,%ecx
405b49:	74 05                	je     0x405b50
405b4b:	8b 45 f0             	mov    -0x10(%ebp),%eax
405b4e:	89 01                	mov    %eax,(%ecx)
405b50:	8b 5d fc             	mov    -0x4(%ebp),%ebx
405b53:	ff 75 08             	push   0x8(%ebp)
405b56:	ff 15 b8 b1 44 00    	call   *0x44b1b8
405b5c:	8b 45 ec             	mov    -0x14(%ebp),%eax
405b5f:	85 c0                	test   %eax,%eax
405b61:	74 39                	je     0x405b9c
405b63:	33 c9                	xor    %ecx,%ecx
405b65:	8b f9                	mov    %ecx,%edi
405b67:	85 db                	test   %ebx,%ebx
405b69:	74 2b                	je     0x405b96
405b6b:	8b f0                	mov    %eax,%esi
405b6d:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
405b71:	74 10                	je     0x405b83
405b73:	83 3c be 00          	cmpl   $0x0,(%esi,%edi,4)
405b77:	74 12                	je     0x405b8b
405b79:	ff 34 be             	push   (%esi,%edi,4)
405b7c:	e8 6e f9 03 00       	call   0x4454ef
405b81:	eb 08                	jmp    0x405b8b
405b83:	ff 34 be             	push   (%esi,%edi,4)
405b86:	e8 08 cc ff ff       	call   0x402793
405b8b:	47                   	inc    %edi
405b8c:	3b fb                	cmp    %ebx,%edi
405b8e:	72 dd                	jb     0x405b6d
405b90:	8b 75 0c             	mov    0xc(%ebp),%esi
405b93:	8b 45 ec             	mov    -0x14(%ebp),%eax
405b96:	50                   	push   %eax
405b97:	e8 fd dd ff ff       	call   0x403999
405b9c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
405b9f:	85 c0                	test   %eax,%eax
405ba1:	74 06                	je     0x405ba9
405ba3:	50                   	push   %eax
405ba4:	e8 17 98 03 00       	call   0x43f3c0
405ba9:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
405bad:	74 1e                	je     0x405bcd
405baf:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
405bb3:	74 08                	je     0x405bbd
405bb5:	ff 75 f4             	push   -0xc(%ebp)
405bb8:	e8 32 f9 03 00       	call   0x4454ef
405bbd:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
405bc1:	74 22                	je     0x405be5
405bc3:	ff 75 f8             	push   -0x8(%ebp)
405bc6:	e8 24 f9 03 00       	call   0x4454ef
405bcb:	eb 18                	jmp    0x405be5
405bcd:	33 c0                	xor    %eax,%eax
405bcf:	50                   	push   %eax
405bd0:	e8 be cb ff ff       	call   0x402793
405bd5:	ff 75 f4             	push   -0xc(%ebp)
405bd8:	e8 b6 cb ff ff       	call   0x402793
405bdd:	ff 75 f8             	push   -0x8(%ebp)
405be0:	e8 ae cb ff ff       	call   0x402793
405be5:	5f                   	pop    %edi
405be6:	8b c6                	mov    %esi,%eax
405be8:	5e                   	pop    %esi
405be9:	5b                   	pop    %ebx
405bea:	8b e5                	mov    %ebp,%esp
405bec:	5d                   	pop    %ebp
405bed:	c2 14 00             	ret    $0x14
405bf0:	55                   	push   %ebp
405bf1:	8b ec                	mov    %esp,%ebp
405bf3:	51                   	push   %ecx
405bf4:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
405bf8:	b8 7c da 44 00       	mov    $0x44da7c,%eax
405bfd:	83 7d 08 2b          	cmpl   $0x2b,0x8(%ebp)
405c01:	56                   	push   %esi
405c02:	57                   	push   %edi
405c03:	bf 5c da 44 00       	mov    $0x44da5c,%edi
405c08:	0f 45 f8             	cmovne %eax,%edi
405c0b:	8d 45 fc             	lea    -0x4(%ebp),%eax
405c0e:	50                   	push   %eax
405c0f:	68 19 01 02 00       	push   $0x20119
405c14:	68 a0 da 44 00       	push   $0x44daa0
405c19:	68 02 00 00 80       	push   $0x80000002
405c1e:	e8 1c b2 03 00       	call   0x440e3f
405c23:	8b f0                	mov    %eax,%esi
405c25:	85 f6                	test   %esi,%esi
405c27:	79 07                	jns    0x405c30
405c29:	68 f4 da 44 00       	push   $0x44daf4
405c2e:	eb 36                	jmp    0x405c66
405c30:	ff 75 0c             	push   0xc(%ebp)
405c33:	57                   	push   %edi
405c34:	ff 75 fc             	push   -0x4(%ebp)
405c37:	e8 32 b3 03 00       	call   0x440f6e
405c3c:	8b f0                	mov    %eax,%esi
405c3e:	85 f6                	test   %esi,%esi
405c40:	79 11                	jns    0x405c53
405c42:	57                   	push   %edi
405c43:	68 18 db 44 00       	push   $0x44db18
405c48:	56                   	push   %esi
405c49:	e8 e1 a4 03 00       	call   0x44012f
405c4e:	83 c4 0c             	add    $0xc,%esp
405c51:	eb 1b                	jmp    0x405c6e
405c53:	ff 75 0c             	push   0xc(%ebp)
405c56:	e8 d3 ce ff ff       	call   0x402b2e
405c5b:	8b f0                	mov    %eax,%esi
405c5d:	85 f6                	test   %esi,%esi
405c5f:	79 0d                	jns    0x405c6e
405c61:	68 40 db 44 00       	push   $0x44db40
405c66:	56                   	push   %esi
405c67:	e8 c3 a4 03 00       	call   0x44012f
405c6c:	59                   	pop    %ecx
405c6d:	59                   	pop    %ecx
405c6e:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
405c72:	74 09                	je     0x405c7d
405c74:	ff 75 fc             	push   -0x4(%ebp)
405c77:	ff 15 00 b0 44 00    	call   *0x44b000
405c7d:	5f                   	pop    %edi
405c7e:	8b c6                	mov    %esi,%eax
405c80:	5e                   	pop    %esi
405c81:	8b e5                	mov    %ebp,%esp
405c83:	5d                   	pop    %ebp
405c84:	c2 08 00             	ret    $0x8
405c87:	55                   	push   %ebp
405c88:	8b ec                	mov    %esp,%ebp
405c8a:	51                   	push   %ecx
405c8b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
405c8f:	8d 45 fc             	lea    -0x4(%ebp),%eax
405c92:	53                   	push   %ebx
405c93:	8b 5d 08             	mov    0x8(%ebp),%ebx
405c96:	56                   	push   %esi
405c97:	50                   	push   %eax
405c98:	ff 75 0c             	push   0xc(%ebp)
405c9b:	53                   	push   %ebx
405c9c:	e8 15 f9 ff ff       	call   0x4055b6
405ca1:	8b f0                	mov    %eax,%esi
405ca3:	85 f6                	test   %esi,%esi
405ca5:	79 13                	jns    0x405cba
405ca7:	ff 75 0c             	push   0xc(%ebp)
405caa:	68 70 cc 44 00       	push   $0x44cc70
405caf:	56                   	push   %esi
405cb0:	e8 7a a4 03 00       	call   0x44012f
405cb5:	83 c4 0c             	add    $0xc,%esp
405cb8:	eb 49                	jmp    0x405d03
405cba:	83 fe 01             	cmp    $0x1,%esi
405cbd:	75 07                	jne    0x405cc6
405cbf:	be 90 04 07 80       	mov    $0x80070490,%esi
405cc4:	eb 3d                	jmp    0x405d03
405cc6:	57                   	push   %edi
405cc7:	6b 7d fc 38          	imul   $0x38,-0x4(%ebp),%edi
405ccb:	03 7b 20             	add    0x20(%ebx),%edi
405cce:	83 7f 18 00          	cmpl   $0x0,0x18(%edi)
405cd2:	75 29                	jne    0x405cfd
405cd4:	83 7f 2c 00          	cmpl   $0x0,0x2c(%edi)
405cd8:	7e 23                	jle    0x405cfd
405cda:	8d 47 08             	lea    0x8(%edi),%eax
405cdd:	50                   	push   %eax
405cde:	ff 77 34             	push   0x34(%edi)
405ce1:	ff 57 30             	call   *0x30(%edi)
405ce4:	8b f0                	mov    %eax,%esi
405ce6:	85 f6                	test   %esi,%esi
405ce8:	79 13                	jns    0x405cfd
405cea:	ff 75 0c             	push   0xc(%ebp)
405ced:	68 8c d4 44 00       	push   $0x44d48c
405cf2:	56                   	push   %esi
405cf3:	e8 37 a4 03 00       	call   0x44012f
405cf8:	83 c4 0c             	add    $0xc,%esp
405cfb:	eb 05                	jmp    0x405d02
405cfd:	8b 45 10             	mov    0x10(%ebp),%eax
405d00:	89 38                	mov    %edi,(%eax)
405d02:	5f                   	pop    %edi
405d03:	8b c6                	mov    %esi,%eax
405d05:	5e                   	pop    %esi
405d06:	5b                   	pop    %ebx
405d07:	8b e5                	mov    %ebp,%esp
405d09:	5d                   	pop    %ebp
405d0a:	c2 0c 00             	ret    $0xc
405d0d:	55                   	push   %ebp
405d0e:	8b ec                	mov    %esp,%ebp
405d10:	56                   	push   %esi
405d11:	ff 15 e0 b1 44 00    	call   *0x44b1e0
405d17:	0f b7 c0             	movzwl %ax,%eax
405d1a:	99                   	cltd
405d1b:	52                   	push   %edx
405d1c:	50                   	push   %eax
405d1d:	ff 75 0c             	push   0xc(%ebp)
405d20:	e8 8b a5 01 00       	call   0x4202b0
405d25:	8b f0                	mov    %eax,%esi
405d27:	85 f6                	test   %esi,%esi
405d29:	79 0d                	jns    0x405d38
405d2b:	68 fc ca 44 00       	push   $0x44cafc
405d30:	56                   	push   %esi
405d31:	e8 f9 a3 03 00       	call   0x44012f
405d36:	59                   	pop    %ecx
405d37:	59                   	pop    %ecx
405d38:	8b c6                	mov    %esi,%eax
405d3a:	5e                   	pop    %esi
405d3b:	5d                   	pop    %ebp
405d3c:	c2 08 00             	ret    $0x8
405d3f:	55                   	push   %ebp
405d40:	8b ec                	mov    %esp,%ebp
405d42:	56                   	push   %esi
405d43:	ff 15 e4 b1 44 00    	call   *0x44b1e4
405d49:	0f b7 c0             	movzwl %ax,%eax
405d4c:	99                   	cltd
405d4d:	52                   	push   %edx
405d4e:	50                   	push   %eax
405d4f:	ff 75 0c             	push   0xc(%ebp)
405d52:	e8 59 a5 01 00       	call   0x4202b0
405d57:	8b f0                	mov    %eax,%esi
405d59:	85 f6                	test   %esi,%esi
405d5b:	79 0d                	jns    0x405d6a
405d5d:	68 fc ca 44 00       	push   $0x44cafc
405d62:	56                   	push   %esi
405d63:	e8 c7 a3 03 00       	call   0x44012f
405d68:	59                   	pop    %ecx
405d69:	59                   	pop    %ecx
405d6a:	8b c6                	mov    %esi,%eax
405d6c:	5e                   	pop    %esi
405d6d:	5d                   	pop    %ebp
405d6e:	c2 08 00             	ret    $0x8
405d71:	55                   	push   %ebp
405d72:	8b ec                	mov    %esp,%ebp
405d74:	51                   	push   %ecx
405d75:	51                   	push   %ecx
405d76:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
405d7a:	8d 45 f8             	lea    -0x8(%ebp),%eax
405d7d:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
405d81:	56                   	push   %esi
405d82:	50                   	push   %eax
405d83:	ff 15 80 b1 44 00    	call   *0x44b180
405d89:	50                   	push   %eax
405d8a:	e8 2c ac 03 00       	call   0x4409bb
405d8f:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
405d93:	8d 45 fc             	lea    -0x4(%ebp),%eax
405d96:	75 26                	jne    0x405dbe
405d98:	ff 75 08             	push   0x8(%ebp)
405d9b:	50                   	push   %eax
405d9c:	e8 56 de 03 00       	call   0x443bf7
405da1:	8b f0                	mov    %eax,%esi
405da3:	85 f6                	test   %esi,%esi
405da5:	79 2d                	jns    0x405dd4
405da7:	56                   	push   %esi
405da8:	68 6e 08 00 00       	push   $0x86e
405dad:	68 bc cc 44 00       	push   $0x44ccbc
405db2:	e8 1c da ff ff       	call   0x4037d3
405db7:	68 e8 d7 44 00       	push   $0x44d7e8
405dbc:	eb 2e                	jmp    0x405dec
405dbe:	50                   	push   %eax
405dbf:	ff 75 08             	push   0x8(%ebp)
405dc2:	e8 29 fe ff ff       	call   0x405bf0
405dc7:	8b f0                	mov    %eax,%esi
405dc9:	85 f6                	test   %esi,%esi
405dcb:	79 07                	jns    0x405dd4
405dcd:	68 68 d9 44 00       	push   $0x44d968
405dd2:	eb 18                	jmp    0x405dec
405dd4:	6a 00                	push   $0x0
405dd6:	ff 75 fc             	push   -0x4(%ebp)
405dd9:	ff 75 0c             	push   0xc(%ebp)
405ddc:	e8 13 a5 01 00       	call   0x4202f4
405de1:	8b f0                	mov    %eax,%esi
405de3:	85 f6                	test   %esi,%esi
405de5:	79 0d                	jns    0x405df4
405de7:	68 fc ca 44 00       	push   $0x44cafc
405dec:	56                   	push   %esi
405ded:	e8 3d a3 03 00       	call   0x44012f
405df2:	59                   	pop    %ecx
405df3:	59                   	pop    %ecx
405df4:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
405df8:	74 08                	je     0x405e02
405dfa:	ff 75 fc             	push   -0x4(%ebp)
405dfd:	e8 ed f6 03 00       	call   0x4454ef
405e02:	8b c6                	mov    %esi,%eax
405e04:	5e                   	pop    %esi
405e05:	8b e5                	mov    %ebp,%esp
405e07:	5d                   	pop    %ebp
405e08:	c2 08 00             	ret    $0x8
405e0b:	55                   	push   %ebp
405e0c:	8b ec                	mov    %esp,%ebp
405e0e:	83 ec 28             	sub    $0x28,%esp
405e11:	a1 08 a0 46 00       	mov    0x46a008,%eax
405e16:	33 c5                	xor    %ebp,%eax
405e18:	89 45 fc             	mov    %eax,-0x4(%ebp)
405e1b:	56                   	push   %esi
405e1c:	8b 75 0c             	mov    0xc(%ebp),%esi
405e1f:	33 c0                	xor    %eax,%eax
405e21:	57                   	push   %edi
405e22:	6a 08                	push   $0x8
405e24:	59                   	pop    %ecx
405e25:	8d 7d dc             	lea    -0x24(%ebp),%edi
405e28:	c7 45 d8 10 00 00 00 	movl   $0x10,-0x28(%ebp)
405e2f:	f3 ab                	rep stos %eax,%es:(%edi)
405e31:	8d 45 d8             	lea    -0x28(%ebp),%eax
405e34:	50                   	push   %eax
405e35:	8d 45 dc             	lea    -0x24(%ebp),%eax
405e38:	50                   	push   %eax
405e39:	ff 15 d0 b1 44 00    	call   *0x44b1d0
405e3f:	85 c0                	test   %eax,%eax
405e41:	75 35                	jne    0x405e78
405e43:	ff 15 e8 b0 44 00    	call   *0x44b0e8
405e49:	0f b7 f0             	movzwl %ax,%esi
405e4c:	81 ce 00 00 07 80    	or     $0x80070000,%esi
405e52:	85 c0                	test   %eax,%eax
405e54:	0f 4e f0             	cmovle %eax,%esi
405e57:	b8 05 40 00 80       	mov    $0x80004005,%eax
405e5c:	85 f6                	test   %esi,%esi
405e5e:	0f 49 f0             	cmovns %eax,%esi
405e61:	56                   	push   %esi
405e62:	68 0d 07 00 00       	push   $0x70d
405e67:	68 bc cc 44 00       	push   $0x44ccbc
405e6c:	e8 62 d9 ff ff       	call   0x4037d3
405e71:	68 54 d7 44 00       	push   $0x44d754
405e76:	eb 17                	jmp    0x405e8f
405e78:	6a 00                	push   $0x0
405e7a:	8d 45 dc             	lea    -0x24(%ebp),%eax
405e7d:	50                   	push   %eax
405e7e:	56                   	push   %esi
405e7f:	e8 70 a4 01 00       	call   0x4202f4
405e84:	8b f0                	mov    %eax,%esi
405e86:	85 f6                	test   %esi,%esi
405e88:	79 0d                	jns    0x405e97
405e8a:	68 fc ca 44 00       	push   $0x44cafc
405e8f:	56                   	push   %esi
405e90:	e8 9a a2 03 00       	call   0x44012f
405e95:	59                   	pop    %ecx
405e96:	59                   	pop    %ecx
405e97:	8b 4d fc             	mov    -0x4(%ebp),%ecx
405e9a:	8b c6                	mov    %esi,%eax
405e9c:	5f                   	pop    %edi
405e9d:	33 cd                	xor    %ebp,%ecx
405e9f:	5e                   	pop    %esi
405ea0:	e8 91 7f 02 00       	call   0x42de36
405ea5:	8b e5                	mov    %ebp,%esp
405ea7:	5d                   	pop    %ebp
405ea8:	c2 08 00             	ret    $0x8