40298a:	c9                   	leave
40298b:	c3                   	ret
40298c:	8b ff                	mov    %edi,%edi
40298e:	55                   	push   %ebp
40298f:	8b ec                	mov    %esp,%ebp
402991:	33 c0                	xor    %eax,%eax
402993:	50                   	push   %eax
402994:	ff 75 10             	push   0x10(%ebp)
402997:	ff 75 0c             	push   0xc(%ebp)
40299a:	ff 75 08             	push   0x8(%ebp)
40299d:	39 05 fc cd 45 00    	cmp    %eax,0x45cdfc
4029a3:	75 07                	jne    0x4029ac
4029a5:	68 38 b7 40 00       	push   $0x40b738
4029aa:	eb 01                	jmp    0x4029ad
4029ac:	50                   	push   %eax
4029ad:	e8 ab fd ff ff       	call   0x40275d
4029b2:	83 c4 14             	add    $0x14,%esp
4029b5:	5d                   	pop    %ebp
4029b6:	c3                   	ret
4029b7:	8b ff                	mov    %edi,%edi
4029b9:	55                   	push   %ebp
4029ba:	8b ec                	mov    %esp,%ebp
4029bc:	8b 45 08             	mov    0x8(%ebp),%eax
4029bf:	8b 00                	mov    (%eax),%eax
4029c1:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
4029c7:	75 2a                	jne    0x4029f3
4029c9:	83 78 10 03          	cmpl   $0x3,0x10(%eax)
4029cd:	75 24                	jne    0x4029f3
4029cf:	8b 40 14             	mov    0x14(%eax),%eax
4029d2:	3d 20 05 93 19       	cmp    $0x19930520,%eax
4029d7:	74 15                	je     0x4029ee
4029d9:	3d 21 05 93 19       	cmp    $0x19930521,%eax
4029de:	74 0e                	je     0x4029ee
4029e0:	3d 22 05 93 19       	cmp    $0x19930522,%eax
4029e5:	74 07                	je     0x4029ee
4029e7:	3d 00 40 99 01       	cmp    $0x1994000,%eax
4029ec:	75 05                	jne    0x4029f3
4029ee:	e8 52 22 00 00       	call   0x404c45
4029f3:	33 c0                	xor    %eax,%eax
4029f5:	5d                   	pop    %ebp
4029f6:	c2 04 00             	ret    $0x4
4029f9:	68 b7 29 40 00       	push   $0x4029b7
4029fe:	ff 15 7c 10 40 00    	call   *0x40107c
402a04:	33 c0                	xor    %eax,%eax
402a06:	c3                   	ret
402a07:	8b ff                	mov    %edi,%edi
402a09:	55                   	push   %ebp
402a0a:	8b ec                	mov    %esp,%ebp
402a0c:	57                   	push   %edi
402a0d:	bf e8 03 00 00       	mov    $0x3e8,%edi
402a12:	57                   	push   %edi
402a13:	ff 15 20 10 40 00    	call   *0x401020
402a19:	ff 75 08             	push   0x8(%ebp)
402a1c:	ff 15 50 10 40 00    	call   *0x401050
402a22:	81 c7 e8 03 00 00    	add    $0x3e8,%edi
402a28:	81 ff 60 ea 00 00    	cmp    $0xea60,%edi
402a2e:	77 04                	ja     0x402a34
402a30:	85 c0                	test   %eax,%eax
402a32:	74 de                	je     0x402a12
402a34:	5f                   	pop    %edi
402a35:	5d                   	pop    %ebp
402a36:	c3                   	ret
402a37:	8b ff                	mov    %edi,%edi
402a39:	55                   	push   %ebp
402a3a:	8b ec                	mov    %esp,%ebp
402a3c:	e8 a9 04 00 00       	call   0x402eea
402a41:	ff 75 08             	push   0x8(%ebp)
402a44:	e8 f6 02 00 00       	call   0x402d3f
402a49:	ff 35 0c b0 40 00    	push   0x40b00c
402a4f:	e8 cb 0c 00 00       	call   0x40371f
402a54:	68 ff 00 00 00       	push   $0xff
402a59:	ff d0                	call   *%eax
402a5b:	83 c4 0c             	add    $0xc,%esp
402a5e:	5d                   	pop    %ebp
402a5f:	c3                   	ret
402a60:	8b ff                	mov    %edi,%edi
402a62:	55                   	push   %ebp
402a63:	8b ec                	mov    %esp,%ebp
402a65:	68 a4 11 40 00       	push   $0x4011a4
402a6a:	ff 15 50 10 40 00    	call   *0x401050
402a70:	85 c0                	test   %eax,%eax
402a72:	74 15                	je     0x402a89
402a74:	68 94 11 40 00       	push   $0x401194
402a79:	50                   	push   %eax
402a7a:	ff 15 38 10 40 00    	call   *0x401038
402a80:	85 c0                	test   %eax,%eax
402a82:	74 05                	je     0x402a89
402a84:	ff 75 08             	push   0x8(%ebp)
402a87:	ff d0                	call   *%eax
402a89:	5d                   	pop    %ebp
402a8a:	c3                   	ret
402a8b:	8b ff                	mov    %edi,%edi
402a8d:	55                   	push   %ebp
402a8e:	8b ec                	mov    %esp,%ebp
402a90:	ff 75 08             	push   0x8(%ebp)
402a93:	e8 c8 ff ff ff       	call   0x402a60
402a98:	59                   	pop    %ecx
402a99:	ff 75 08             	push   0x8(%ebp)
402a9c:	ff 15 84 10 40 00    	call   *0x401084
402aa2:	cc                   	int3
402aa3:	6a 08                	push   $0x8
402aa5:	e8 61 23 00 00       	call   0x404e0b
402aaa:	59                   	pop    %ecx
402aab:	c3                   	ret
402aac:	6a 08                	push   $0x8
402aae:	e8 7e 22 00 00       	call   0x404d31
402ab3:	59                   	pop    %ecx
402ab4:	c3                   	ret
402ab5:	8b ff                	mov    %edi,%edi
402ab7:	55                   	push   %ebp
402ab8:	8b ec                	mov    %esp,%ebp
402aba:	56                   	push   %esi
402abb:	8b f0                	mov    %eax,%esi
402abd:	eb 0b                	jmp    0x402aca
402abf:	8b 06                	mov    (%esi),%eax
402ac1:	85 c0                	test   %eax,%eax
402ac3:	74 02                	je     0x402ac7
402ac5:	ff d0                	call   *%eax
402ac7:	83 c6 04             	add    $0x4,%esi
402aca:	3b 75 08             	cmp    0x8(%ebp),%esi
402acd:	72 f0                	jb     0x402abf
402acf:	5e                   	pop    %esi
402ad0:	5d                   	pop    %ebp
402ad1:	c3                   	ret
402ad2:	8b ff                	mov    %edi,%edi
402ad4:	55                   	push   %ebp
402ad5:	8b ec                	mov    %esp,%ebp
402ad7:	56                   	push   %esi
402ad8:	8b 75 08             	mov    0x8(%ebp),%esi
402adb:	33 c0                	xor    %eax,%eax
402add:	eb 0f                	jmp    0x402aee
402adf:	85 c0                	test   %eax,%eax
402ae1:	75 10                	jne    0x402af3
402ae3:	8b 0e                	mov    (%esi),%ecx
402ae5:	85 c9                	test   %ecx,%ecx
402ae7:	74 02                	je     0x402aeb
402ae9:	ff d1                	call   *%ecx
402aeb:	83 c6 04             	add    $0x4,%esi
402aee:	3b 75 0c             	cmp    0xc(%ebp),%esi
402af1:	72 ec                	jb     0x402adf
402af3:	5e                   	pop    %esi
402af4:	5d                   	pop    %ebp
402af5:	c3                   	ret
402af6:	8b ff                	mov    %edi,%edi
402af8:	55                   	push   %ebp
402af9:	8b ec                	mov    %esp,%ebp
402afb:	83 3d 10 0c 89 00 00 	cmpl   $0x0,0x890c10
402b02:	74 19                	je     0x402b1d
402b04:	68 10 0c 89 00       	push   $0x890c10
402b09:	e8 22 25 00 00       	call   0x405030
402b0e:	59                   	pop    %ecx
402b0f:	85 c0                	test   %eax,%eax
402b11:	74 0a                	je     0x402b1d
402b13:	ff 75 08             	push   0x8(%ebp)
402b16:	ff 15 10 0c 89 00    	call   *0x890c10
402b1c:	59                   	pop    %ecx
402b1d:	e8 5a 24 00 00       	call   0x404f7c
402b22:	68 50 11 40 00       	push   $0x401150
402b27:	68 3c 11 40 00       	push   $0x40113c
402b2c:	e8 a1 ff ff ff       	call   0x402ad2
402b31:	59                   	pop    %ecx
402b32:	59                   	pop    %ecx
402b33:	85 c0                	test   %eax,%eax
402b35:	75 42                	jne    0x402b79
402b37:	68 7e 36 40 00       	push   $0x40367e
402b3c:	e8 24 24 00 00       	call   0x404f65
402b41:	b8 34 11 40 00       	mov    $0x401134,%eax
402b46:	c7 04 24 38 11 40 00 	movl   $0x401138,(%esp)
402b4d:	e8 63 ff ff ff       	call   0x402ab5
402b52:	83 3d 14 0c 89 00 00 	cmpl   $0x0,0x890c14
402b59:	59                   	pop    %ecx
402b5a:	74 1b                	je     0x402b77
402b5c:	68 14 0c 89 00       	push   $0x890c14
402b61:	e8 ca 24 00 00       	call   0x405030
402b66:	59                   	pop    %ecx
402b67:	85 c0                	test   %eax,%eax
402b69:	74 0c                	je     0x402b77
402b6b:	6a 00                	push   $0x0
402b6d:	6a 02                	push   $0x2
402b6f:	6a 00                	push   $0x0
402b71:	ff 15 14 0c 89 00    	call   *0x890c14
402b77:	33 c0                	xor    %eax,%eax
402b79:	5d                   	pop    %ebp
402b7a:	c3                   	ret
402b7b:	6a 18                	push   $0x18
402b7d:	68 c8 a4 40 00       	push   $0x40a4c8
402b82:	e8 ed 10 00 00       	call   0x403c74
402b87:	6a 08                	push   $0x8
402b89:	e8 7d 22 00 00       	call   0x404e0b
402b8e:	59                   	pop    %ecx
402b8f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
402b93:	33 db                	xor    %ebx,%ebx
402b95:	43                   	inc    %ebx
402b96:	39 1d a4 c8 45 00    	cmp    %ebx,0x45c8a4
402b9c:	0f 84 c5 00 00 00    	je     0x402c67
402ba2:	89 1d a0 c8 45 00    	mov    %ebx,0x45c8a0
402ba8:	8a 45 10             	mov    0x10(%ebp),%al
402bab:	a2 9c c8 45 00       	mov    %al,0x45c89c
402bb0:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
402bb4:	0f 85 9d 00 00 00    	jne    0x402c57
402bba:	ff 35 08 0c 89 00    	push   0x890c08
402bc0:	e8 5a 0b 00 00       	call   0x40371f
402bc5:	59                   	pop    %ecx
402bc6:	8b f8                	mov    %eax,%edi
402bc8:	89 7d d8             	mov    %edi,-0x28(%ebp)
402bcb:	85 ff                	test   %edi,%edi
402bcd:	74 78                	je     0x402c47
402bcf:	ff 35 04 0c 89 00    	push   0x890c04
402bd5:	e8 45 0b 00 00       	call   0x40371f
402bda:	59                   	pop    %ecx
402bdb:	8b f0                	mov    %eax,%esi
402bdd:	89 75 dc             	mov    %esi,-0x24(%ebp)
402be0:	89 7d e4             	mov    %edi,-0x1c(%ebp)
402be3:	89 75 e0             	mov    %esi,-0x20(%ebp)
402be6:	83 ee 04             	sub    $0x4,%esi
402be9:	89 75 dc             	mov    %esi,-0x24(%ebp)
402bec:	3b f7                	cmp    %edi,%esi
402bee:	72 57                	jb     0x402c47
402bf0:	e8 21 0b 00 00       	call   0x403716
402bf5:	39 06                	cmp    %eax,(%esi)
402bf7:	74 ed                	je     0x402be6
402bf9:	3b f7                	cmp    %edi,%esi
402bfb:	72 4a                	jb     0x402c47
402bfd:	ff 36                	push   (%esi)
402bff:	e8 1b 0b 00 00       	call   0x40371f
402c04:	8b f8                	mov    %eax,%edi
402c06:	e8 0b 0b 00 00       	call   0x403716
402c0b:	89 06                	mov    %eax,(%esi)
402c0d:	ff d7                	call   *%edi
402c0f:	ff 35 08 0c 89 00    	push   0x890c08
402c15:	e8 05 0b 00 00       	call   0x40371f
402c1a:	8b f8                	mov    %eax,%edi
402c1c:	ff 35 04 0c 89 00    	push   0x890c04
402c22:	e8 f8 0a 00 00       	call   0x40371f
402c27:	83 c4 0c             	add    $0xc,%esp
402c2a:	39 7d e4             	cmp    %edi,-0x1c(%ebp)
402c2d:	75 05                	jne    0x402c34
402c2f:	39 45 e0             	cmp    %eax,-0x20(%ebp)
402c32:	74 0e                	je     0x402c42
402c34:	89 7d e4             	mov    %edi,-0x1c(%ebp)
402c37:	89 7d d8             	mov    %edi,-0x28(%ebp)
402c3a:	89 45 e0             	mov    %eax,-0x20(%ebp)
402c3d:	8b f0                	mov    %eax,%esi
402c3f:	89 75 dc             	mov    %esi,-0x24(%ebp)
402c42:	8b 7d d8             	mov    -0x28(%ebp),%edi
402c45:	eb 9f                	jmp    0x402be6
402c47:	68 60 11 40 00       	push   $0x401160
402c4c:	b8 5c 11 40 00       	mov    $0x40115c,%eax
402c51:	e8 5f fe ff ff       	call   0x402ab5
402c56:	59                   	pop    %ecx
402c57:	68 68 11 40 00       	push   $0x401168
402c5c:	b8 64 11 40 00       	mov    $0x401164,%eax
402c61:	e8 4f fe ff ff       	call   0x402ab5
402c66:	59                   	pop    %ecx
402c67:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
402c6e:	e8 1f 00 00 00       	call   0x402c92
402c73:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
402c77:	75 28                	jne    0x402ca1
402c79:	89 1d a4 c8 45 00    	mov    %ebx,0x45c8a4
402c7f:	6a 08                	push   $0x8
402c81:	e8 ab 20 00 00       	call   0x404d31
402c86:	59                   	pop    %ecx
402c87:	ff 75 08             	push   0x8(%ebp)
402c8a:	e8 fc fd ff ff       	call   0x402a8b
402c8f:	33 db                	xor    %ebx,%ebx
402c91:	43                   	inc    %ebx
402c92:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
402c96:	74 08                	je     0x402ca0
402c98:	6a 08                	push   $0x8
402c9a:	e8 92 20 00 00       	call   0x404d31
402c9f:	59                   	pop    %ecx
402ca0:	c3                   	ret
402ca1:	e8 13 10 00 00       	call   0x403cb9
402ca6:	c3                   	ret
402ca7:	8b ff                	mov    %edi,%edi
402ca9:	55                   	push   %ebp
402caa:	8b ec                	mov    %esp,%ebp
402cac:	6a 00                	push   $0x0
402cae:	6a 00                	push   $0x0
402cb0:	ff 75 08             	push   0x8(%ebp)
402cb3:	e8 c3 fe ff ff       	call   0x402b7b
402cb8:	83 c4 0c             	add    $0xc,%esp
402cbb:	5d                   	pop    %ebp
402cbc:	c3                   	ret
402cbd:	8b ff                	mov    %edi,%edi
402cbf:	55                   	push   %ebp
402cc0:	8b ec                	mov    %esp,%ebp
402cc2:	6a 00                	push   $0x0
402cc4:	6a 01                	push   $0x1
402cc6:	ff 75 08             	push   0x8(%ebp)
402cc9:	e8 ad fe ff ff       	call   0x402b7b
402cce:	83 c4 0c             	add    $0xc,%esp
402cd1:	5d                   	pop    %ebp
402cd2:	c3                   	ret
402cd3:	6a 01                	push   $0x1
402cd5:	6a 00                	push   $0x0
402cd7:	6a 00                	push   $0x0
402cd9:	e8 9d fe ff ff       	call   0x402b7b
402cde:	83 c4 0c             	add    $0xc,%esp
402ce1:	c3                   	ret
402ce2:	6a 01                	push   $0x1
402ce4:	6a 01                	push   $0x1
402ce6:	6a 00                	push   $0x0
402ce8:	e8 8e fe ff ff       	call   0x402b7b
402ced:	83 c4 0c             	add    $0xc,%esp
402cf0:	c3                   	ret
402cf1:	8b ff                	mov    %edi,%edi
402cf3:	56                   	push   %esi
402cf4:	e8 1d 0a 00 00       	call   0x403716
402cf9:	8b f0                	mov    %eax,%esi
402cfb:	56                   	push   %esi
402cfc:	e8 8b 26 00 00       	call   0x40538c
402d01:	56                   	push   %esi
402d02:	e8 16 26 00 00       	call   0x40531d
402d07:	56                   	push   %esi
402d08:	e8 ad 1c 00 00       	call   0x4049ba
402d0d:	56                   	push   %esi
402d0e:	e8 fb 25 00 00       	call   0x40530e
402d13:	56                   	push   %esi
402d14:	e8 e6 25 00 00       	call   0x4052ff
402d19:	56                   	push   %esi
402d1a:	e8 ce 23 00 00       	call   0x4050ed
402d1f:	56                   	push   %esi
402d20:	e8 fe 01 00 00       	call   0x402f23
402d25:	56                   	push   %esi
402d26:	e8 53 1f 00 00       	call   0x404c7e
402d2b:	68 bd 2c 40 00       	push   $0x402cbd
402d30:	e8 6f 09 00 00       	call   0x4036a4
402d35:	83 c4 24             	add    $0x24,%esp
402d38:	a3 0c b0 40 00       	mov    %eax,0x40b00c
402d3d:	5e                   	pop    %esi
402d3e:	c3                   	ret
402d3f:	8b ff                	mov    %edi,%edi
402d41:	55                   	push   %ebp
402d42:	8b ec                	mov    %esp,%ebp
402d44:	51                   	push   %ecx
402d45:	51                   	push   %ecx
402d46:	53                   	push   %ebx
402d47:	8b 5d 08             	mov    0x8(%ebp),%ebx
402d4a:	56                   	push   %esi
402d4b:	57                   	push   %edi
402d4c:	33 f6                	xor    %esi,%esi
402d4e:	33 ff                	xor    %edi,%edi
402d50:	89 7d fc             	mov    %edi,-0x4(%ebp)
402d53:	3b 1c fd 10 b0 40 00 	cmp    0x40b010(,%edi,8),%ebx
402d5a:	74 09                	je     0x402d65
402d5c:	47                   	inc    %edi
402d5d:	89 7d fc             	mov    %edi,-0x4(%ebp)
402d60:	83 ff 17             	cmp    $0x17,%edi
402d63:	72 ee                	jb     0x402d53