4059ae:	eb 06                	jmp    0x4059b6
4059b0:	ff 15 c8 80 40 00    	call   *0x4080c8
4059b6:	c2 04 00             	ret    $0x4
4059b9:	6a 05                	push   $0x5
4059bb:	e8 02 0e 00 00       	call   0x4067c2
4059c0:	85 c0                	test   %eax,%eax
4059c2:	74 0a                	je     0x4059ce
4059c4:	ff d0                	call   *%eax
4059c6:	85 c0                	test   %eax,%eax
4059c8:	74 04                	je     0x4059ce
4059ca:	33 c0                	xor    %eax,%eax
4059cc:	40                   	inc    %eax
4059cd:	c3                   	ret
4059ce:	33 c0                	xor    %eax,%eax
4059d0:	c3                   	ret
4059d1:	55                   	push   %ebp
4059d2:	8b ec                	mov    %esp,%ebp
4059d4:	83 ec 10             	sub    $0x10,%esp
4059d7:	8d 45 f0             	lea    -0x10(%ebp),%eax
4059da:	c7 05 30 67 42 00 44 	movl   $0x44,0x426730
4059e1:	00 00 00
4059e4:	50                   	push   %eax
4059e5:	33 c0                	xor    %eax,%eax
4059e7:	68 30 67 42 00       	push   $0x426730
4059ec:	50                   	push   %eax
4059ed:	50                   	push   %eax
4059ee:	68 00 00 00 04       	push   $0x4000000
4059f3:	50                   	push   %eax
4059f4:	50                   	push   %eax
4059f5:	50                   	push   %eax
4059f6:	ff 75 08             	push   0x8(%ebp)
4059f9:	50                   	push   %eax
4059fa:	ff 15 d0 80 40 00    	call   *0x4080d0
405a00:	85 c0                	test   %eax,%eax
405a02:	74 0c                	je     0x405a10
405a04:	ff 75 f4             	push   -0xc(%ebp)
405a07:	ff 15 20 81 40 00    	call   *0x408120
405a0d:	8b 45 f0             	mov    -0x10(%ebp),%eax
405a10:	c9                   	leave
405a11:	c2 04 00             	ret    $0x4
405a14:	8b 44 24 04          	mov    0x4(%esp),%eax
405a18:	50                   	push   %eax
405a19:	83 60 24 00          	andl   $0x0,0x24(%eax)
405a1d:	c7 00 3c 00 00 00    	movl   $0x3c,(%eax)
405a23:	ff 15 7c 81 40 00    	call   *0x40817c
405a29:	c2 04 00             	ret    $0x4
405a2c:	ff 25 ec 81 40 00    	jmp    *0x4081ec
405a32:	68 00 04 00 00       	push   $0x400
405a37:	ff 74 24 0c          	push   0xc(%esp)
405a3b:	ff 74 24 0c          	push   0xc(%esp)
405a3f:	ff 35 18 92 42 00    	push   0x429218
405a45:	ff 15 f0 81 40 00    	call   *0x4081f0
405a4b:	c2 08 00             	ret    $0x8
405a4e:	8b 44 24 08          	mov    0x8(%esp),%eax
405a52:	8b c8                	mov    %eax,%ecx
405a54:	81 e1 ff ff 1f 00    	and    $0x1fffff,%ecx
405a5a:	83 3d 00 a3 42 00 00 	cmpl   $0x0,0x42a300
405a61:	74 05                	je     0x405a68
405a63:	c1 e8 15             	shr    $0x15,%eax
405a66:	75 47                	jne    0x405aaf
405a68:	83 3d 08 a3 42 00 00 	cmpl   $0x0,0x42a308
405a6f:	74 06                	je     0x405a77
405a71:	81 f1 00 00 18 00    	xor    $0x180000,%ecx
405a77:	a1 48 a2 42 00       	mov    0x42a248,%eax
405a7c:	68 e8 a3 40 00       	push   $0x40a3e8
405a81:	a3 ec a3 40 00       	mov    %eax,0x40a3ec
405a86:	a1 40 a2 42 00       	mov    0x42a240,%eax
405a8b:	a3 f0 a3 40 00       	mov    %eax,0x40a3f0
405a90:	8b 44 24 08          	mov    0x8(%esp),%eax
405a94:	a3 f4 a3 40 00       	mov    %eax,0x40a3f4
405a99:	c7 05 f8 a3 40 00 40 	movl   $0x429240,0x40a3f8
405aa0:	92 42 00
405aa3:	89 0d fc a3 40 00    	mov    %ecx,0x40a3fc
405aa9:	ff 15 f4 81 40 00    	call   *0x4081f4
405aaf:	c2 08 00             	ret    $0x8
405ab2:	56                   	push   %esi
405ab3:	8b 74 24 08          	mov    0x8(%esp),%esi
405ab7:	57                   	push   %edi
405ab8:	56                   	push   %esi
405ab9:	e8 fb 03 00 00       	call   0x405eb9
405abe:	8b f8                	mov    %eax,%edi
405ac0:	83 ff ff             	cmp    $0xffffffff,%edi
405ac3:	74 2e                	je     0x405af3
405ac5:	f6 44 24 10 01       	testb  $0x1,0x10(%esp)
405aca:	56                   	push   %esi
405acb:	74 08                	je     0x405ad5
405acd:	ff 15 d4 80 40 00    	call   *0x4080d4
405ad3:	eb 06                	jmp    0x405adb
405ad5:	ff 15 40 81 40 00    	call   *0x408140
405adb:	85 c0                	test   %eax,%eax
405add:	74 05                	je     0x405ae4
405adf:	33 c0                	xor    %eax,%eax
405ae1:	40                   	inc    %eax
405ae2:	eb 11                	jmp    0x405af5
405ae4:	f6 44 24 10 04       	testb  $0x4,0x10(%esp)
405ae9:	75 08                	jne    0x405af3
405aeb:	57                   	push   %edi
405aec:	56                   	push   %esi
405aed:	ff 15 74 80 40 00    	call   *0x408074
405af3:	33 c0                	xor    %eax,%eax
405af5:	5f                   	pop    %edi
405af6:	5e                   	pop    %esi
405af7:	c2 08 00             	ret    $0x8
405afa:	55                   	push   %ebp
405afb:	8b ec                	mov    %esp,%ebp
405afd:	81 ec 58 02 00 00    	sub    $0x258,%esp
405b03:	53                   	push   %ebx
405b04:	8b 5d 0c             	mov    0xc(%ebp),%ebx
405b07:	56                   	push   %esi
405b08:	57                   	push   %edi
405b09:	8b 7d 08             	mov    0x8(%ebp),%edi
405b0c:	8b c3                	mov    %ebx,%eax
405b0e:	83 e0 04             	and    $0x4,%eax
405b11:	57                   	push   %edi
405b12:	89 45 fc             	mov    %eax,-0x4(%ebp)
405b15:	e8 ab 02 00 00       	call   0x405dc5
405b1a:	f6 c3 08             	test   $0x8,%bl
405b1d:	89 45 f8             	mov    %eax,-0x8(%ebp)
405b20:	74 17                	je     0x405b39
405b22:	57                   	push   %edi
405b23:	ff 15 40 81 40 00    	call   *0x408140
405b29:	f7 d8                	neg    %eax
405b2b:	1b c0                	sbb    %eax,%eax
405b2d:	40                   	inc    %eax
405b2e:	01 05 e8 a2 42 00    	add    %eax,0x42a2e8
405b34:	e9 7d 01 00 00       	jmp    0x405cb6
405b39:	89 5d 08             	mov    %ebx,0x8(%ebp)
405b3c:	83 65 08 01          	andl   $0x1,0x8(%ebp)
405b40:	74 11                	je     0x405b53
405b42:	85 c0                	test   %eax,%eax
405b44:	0f 84 1a 01 00 00    	je     0x405c64
405b4a:	f6 c3 02             	test   $0x2,%bl
405b4d:	0f 84 11 01 00 00    	je     0x405c64
405b53:	be 30 57 42 00       	mov    $0x425730,%esi
405b58:	57                   	push   %edi
405b59:	56                   	push   %esi
405b5a:	e8 89 08 00 00       	call   0x4063e8
405b5f:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
405b63:	74 0d                	je     0x405b72
405b65:	68 7c a5 40 00       	push   $0x40a57c
405b6a:	56                   	push   %esi
405b6b:	e8 94 08 00 00       	call   0x406404
405b70:	eb 06                	jmp    0x405b78
405b72:	57                   	push   %edi
405b73:	e8 91 01 00 00       	call   0x405d09
405b78:	66 83 3f 00          	cmpw   $0x0,(%edi)
405b7c:	75 0a                	jne    0x405b88
405b7e:	66 83 3d 30 57 42 00 	cmpw   $0x5c,0x425730
405b85:	5c
405b86:	75 0b                	jne    0x405b93
405b88:	68 14 a0 40 00       	push   $0x40a014
405b8d:	57                   	push   %edi
405b8e:	e8 71 08 00 00       	call   0x406404
405b93:	57                   	push   %edi
405b94:	e8 65 08 00 00       	call   0x4063fe
405b99:	8d 1c 47             	lea    (%edi,%eax,2),%ebx
405b9c:	8d 85 a8 fd ff ff    	lea    -0x258(%ebp),%eax
405ba2:	50                   	push   %eax
405ba3:	56                   	push   %esi
405ba4:	ff 15 38 81 40 00    	call   *0x408138
405baa:	8b f0                	mov    %eax,%esi
405bac:	83 fe ff             	cmp    $0xffffffff,%esi
405baf:	0f 84 a4 00 00 00    	je     0x405c59
405bb5:	66 83 bd d4 fd ff ff 	cmpw   $0x2e,-0x22c(%ebp)
405bbc:	2e
405bbd:	75 1e                	jne    0x405bdd
405bbf:	66 83 bd d6 fd ff ff 	cmpw   $0x0,-0x22a(%ebp)
405bc6:	00
405bc7:	74 73                	je     0x405c3c
405bc9:	66 83 bd d6 fd ff ff 	cmpw   $0x2e,-0x22a(%ebp)
405bd0:	2e
405bd1:	75 0a                	jne    0x405bdd
405bd3:	66 83 bd d8 fd ff ff 	cmpw   $0x0,-0x228(%ebp)
405bda:	00
405bdb:	74 5f                	je     0x405c3c
405bdd:	8d 85 d4 fd ff ff    	lea    -0x22c(%ebp),%eax
405be3:	50                   	push   %eax
405be4:	53                   	push   %ebx
405be5:	e8 fe 07 00 00       	call   0x4063e8
405bea:	f6 85 a8 fd ff ff 10 	testb  $0x10,-0x258(%ebp)
405bf1:	74 15                	je     0x405c08
405bf3:	8b 45 0c             	mov    0xc(%ebp),%eax
405bf6:	83 e0 03             	and    $0x3,%eax
405bf9:	3c 03                	cmp    $0x3,%al
405bfb:	75 3f                	jne    0x405c3c
405bfd:	ff 75 0c             	push   0xc(%ebp)
405c00:	57                   	push   %edi
405c01:	e8 f4 fe ff ff       	call   0x405afa
405c06:	eb 34                	jmp    0x405c3c
405c08:	ff 75 fc             	push   -0x4(%ebp)
405c0b:	57                   	push   %edi
405c0c:	e8 a1 fe ff ff       	call   0x405ab2
405c11:	85 c0                	test   %eax,%eax
405c13:	75 1f                	jne    0x405c34
405c15:	39 45 fc             	cmp    %eax,-0x4(%ebp)
405c18:	74 12                	je     0x405c2c
405c1a:	57                   	push   %edi
405c1b:	6a f1                	push   $0xfffffff1
405c1d:	e8 2e f8 ff ff       	call   0x405450
405c22:	6a 00                	push   $0x0
405c24:	57                   	push   %edi
405c25:	e8 84 05 00 00       	call   0x4061ae
405c2a:	eb 10                	jmp    0x405c3c
405c2c:	ff 05 e8 a2 42 00    	incl   0x42a2e8
405c32:	eb 08                	jmp    0x405c3c
405c34:	57                   	push   %edi
405c35:	6a f2                	push   $0xfffffff2
405c37:	e8 14 f8 ff ff       	call   0x405450
405c3c:	8d 85 a8 fd ff ff    	lea    -0x258(%ebp),%eax
405c42:	50                   	push   %eax
405c43:	56                   	push   %esi
405c44:	ff 15 3c 81 40 00    	call   *0x40813c
405c4a:	85 c0                	test   %eax,%eax
405c4c:	0f 85 63 ff ff ff    	jne    0x405bb5
405c52:	56                   	push   %esi
405c53:	ff 15 4c 81 40 00    	call   *0x40814c
405c59:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
405c5d:	74 05                	je     0x405c64
405c5f:	66 83 63 fe 00       	andw   $0x0,-0x2(%ebx)
405c64:	33 f6                	xor    %esi,%esi
405c66:	39 75 08             	cmp    %esi,0x8(%ebp)
405c69:	74 4b                	je     0x405cb6
405c6b:	39 75 f8             	cmp    %esi,-0x8(%ebp)
405c6e:	75 08                	jne    0x405c78
405c70:	ff 05 e8 a2 42 00    	incl   0x42a2e8
405c76:	eb 3e                	jmp    0x405cb6
405c78:	57                   	push   %edi
405c79:	e8 ad 0a 00 00       	call   0x40672b
405c7e:	85 c0                	test   %eax,%eax
405c80:	74 34                	je     0x405cb6
405c82:	57                   	push   %edi
405c83:	e8 35 00 00 00       	call   0x405cbd
405c88:	8b 45 fc             	mov    -0x4(%ebp),%eax
405c8b:	0c 01                	or     $0x1,%al
405c8d:	50                   	push   %eax
405c8e:	57                   	push   %edi
405c8f:	e8 1e fe ff ff       	call   0x405ab2
405c94:	85 c0                	test   %eax,%eax
405c96:	75 16                	jne    0x405cae
405c98:	39 75 fc             	cmp    %esi,-0x4(%ebp)
405c9b:	74 d3                	je     0x405c70
405c9d:	57                   	push   %edi
405c9e:	6a f1                	push   $0xfffffff1
405ca0:	e8 ab f7 ff ff       	call   0x405450
405ca5:	56                   	push   %esi
405ca6:	57                   	push   %edi
405ca7:	e8 02 05 00 00       	call   0x4061ae
405cac:	eb 08                	jmp    0x405cb6
405cae:	57                   	push   %edi
405caf:	6a e5                	push   $0xffffffe5
405cb1:	e8 9a f7 ff ff       	call   0x405450
405cb6:	5f                   	pop    %edi
405cb7:	5e                   	pop    %esi
405cb8:	5b                   	pop    %ebx
405cb9:	c9                   	leave
405cba:	c2 08 00             	ret    $0x8
405cbd:	56                   	push   %esi
405cbe:	8b 74 24 08          	mov    0x8(%esp),%esi
405cc2:	56                   	push   %esi
405cc3:	e8 36 07 00 00       	call   0x4063fe
405cc8:	8d 04 46             	lea    (%esi,%eax,2),%eax
405ccb:	50                   	push   %eax
405ccc:	56                   	push   %esi
405ccd:	ff 15 f8 81 40 00    	call   *0x4081f8
405cd3:	66 83 38 5c          	cmpw   $0x5c,(%eax)
405cd7:	74 0b                	je     0x405ce4
405cd9:	68 14 a0 40 00       	push   $0x40a014
405cde:	56                   	push   %esi
405cdf:	e8 20 07 00 00       	call   0x406404
405ce4:	8b c6                	mov    %esi,%eax
405ce6:	5e                   	pop    %esi
405ce7:	c2 04 00             	ret    $0x4
405cea:	8b 44 24 04          	mov    0x4(%esp),%eax
405cee:	eb 0e                	jmp    0x405cfe
405cf0:	66 3b 4c 24 08       	cmp    0x8(%esp),%cx
405cf5:	74 0f                	je     0x405d06
405cf7:	50                   	push   %eax
405cf8:	ff 15 48 82 40 00    	call   *0x408248
405cfe:	66 8b 08             	mov    (%eax),%cx
405d01:	66 85 c9             	test   %cx,%cx
405d04:	75 ea                	jne    0x405cf0
405d06:	c2 08 00             	ret    $0x8
405d09:	56                   	push   %esi
405d0a:	8b 74 24 08          	mov    0x8(%esp),%esi
405d0e:	56                   	push   %esi
405d0f:	e8 ea 06 00 00       	call   0x4063fe
405d14:	8d 04 46             	lea    (%esi,%eax,2),%eax
405d17:	66 83 38 5c          	cmpw   $0x5c,(%eax)
405d1b:	74 0c                	je     0x405d29
405d1d:	50                   	push   %eax
405d1e:	56                   	push   %esi
405d1f:	ff 15 f8 81 40 00    	call   *0x4081f8
405d25:	3b c6                	cmp    %esi,%eax
405d27:	77 ee                	ja     0x405d17
405d29:	66 83 20 00          	andw   $0x0,(%eax)
405d2d:	83 c0 02             	add    $0x2,%eax
405d30:	5e                   	pop    %esi
405d31:	c2 04 00             	ret    $0x4
405d34:	8b 54 24 04          	mov    0x4(%esp),%edx
405d38:	66 8b 0a             	mov    (%edx),%cx
405d3b:	8b c1                	mov    %ecx,%eax
405d3d:	0c 20                	or     $0x20,%al
405d3f:	66 83 f9 5c          	cmp    $0x5c,%cx
405d43:	75 06                	jne    0x405d4b
405d45:	66 39 4a 02          	cmp    %cx,0x2(%edx)
405d49:	74 13                	je     0x405d5e
405d4b:	66 3d 61 00          	cmp    $0x61,%ax
405d4f:	72 12                	jb     0x405d63
405d51:	66 3d 7a 00          	cmp    $0x7a,%ax
405d55:	77 0c                	ja     0x405d63
405d57:	66 83 7a 02 3a       	cmpw   $0x3a,0x2(%edx)
405d5c:	75 05                	jne    0x405d63
405d5e:	33 c0                	xor    %eax,%eax
405d60:	40                   	inc    %eax
405d61:	eb 02                	jmp    0x405d65
405d63:	33 c0                	xor    %eax,%eax
405d65:	c2 04 00             	ret    $0x4
405d68:	53                   	push   %ebx
405d69:	56                   	push   %esi
405d6a:	8b 35 48 82 40 00    	mov    0x408248,%esi
405d70:	57                   	push   %edi
405d71:	8b 7c 24 10          	mov    0x10(%esp),%edi
405d75:	57                   	push   %edi
405d76:	ff d6                	call   *%esi
405d78:	8b d8                	mov    %eax,%ebx
405d7a:	53                   	push   %ebx
405d7b:	ff d6                	call   *%esi
405d7d:	66 8b 0f             	mov    (%edi),%cx
405d80:	66 85 c9             	test   %cx,%cx
405d83:	74 12                	je     0x405d97
405d85:	66 83 3b 3a          	cmpw   $0x3a,(%ebx)
405d89:	75 0c                	jne    0x405d97
405d8b:	66 83 7b 02 5c       	cmpw   $0x5c,0x2(%ebx)
405d90:	75 05                	jne    0x405d97
405d92:	50                   	push   %eax
405d93:	ff d6                	call   *%esi
405d95:	eb 28                	jmp    0x405dbf
405d97:	66 83 f9 5c          	cmp    $0x5c,%cx
405d9b:	75 20                	jne    0x405dbd
405d9d:	66 39 4f 02          	cmp    %cx,0x2(%edi)
405da1:	75 1a                	jne    0x405dbd
405da3:	6a 02                	push   $0x2
405da5:	5e                   	pop    %esi
405da6:	6a 5c                	push   $0x5c
405da8:	50                   	push   %eax
405da9:	4e                   	dec    %esi
405daa:	e8 3b ff ff ff       	call   0x405cea
405daf:	66 83 38 00          	cmpw   $0x0,(%eax)
405db3:	74 08                	je     0x405dbd
405db5:	40                   	inc    %eax