40cc57:	3d 8e 00 00 c0       	cmp    $0xc000008e,%eax
40cc5c:	75 09                	jne    0x40cc67
40cc5e:	c7 46 64 83 00 00 00 	movl   $0x83,0x64(%esi)
40cc65:	eb 5e                	jmp    0x40ccc5
40cc67:	3d 90 00 00 c0       	cmp    $0xc0000090,%eax
40cc6c:	75 09                	jne    0x40cc77
40cc6e:	c7 46 64 81 00 00 00 	movl   $0x81,0x64(%esi)
40cc75:	eb 4e                	jmp    0x40ccc5
40cc77:	3d 91 00 00 c0       	cmp    $0xc0000091,%eax
40cc7c:	75 09                	jne    0x40cc87
40cc7e:	c7 46 64 84 00 00 00 	movl   $0x84,0x64(%esi)
40cc85:	eb 3e                	jmp    0x40ccc5
40cc87:	3d 93 00 00 c0       	cmp    $0xc0000093,%eax
40cc8c:	75 09                	jne    0x40cc97
40cc8e:	c7 46 64 85 00 00 00 	movl   $0x85,0x64(%esi)
40cc95:	eb 2e                	jmp    0x40ccc5
40cc97:	3d 8d 00 00 c0       	cmp    $0xc000008d,%eax
40cc9c:	75 09                	jne    0x40cca7
40cc9e:	c7 46 64 82 00 00 00 	movl   $0x82,0x64(%esi)
40cca5:	eb 1e                	jmp    0x40ccc5
40cca7:	3d 8f 00 00 c0       	cmp    $0xc000008f,%eax
40ccac:	75 09                	jne    0x40ccb7
40ccae:	c7 46 64 86 00 00 00 	movl   $0x86,0x64(%esi)
40ccb5:	eb 0e                	jmp    0x40ccc5
40ccb7:	3d 92 00 00 c0       	cmp    $0xc0000092,%eax
40ccbc:	75 07                	jne    0x40ccc5
40ccbe:	c7 46 64 8a 00 00 00 	movl   $0x8a,0x64(%esi)
40ccc5:	ff 76 64             	push   0x64(%esi)
40ccc8:	6a 08                	push   $0x8
40ccca:	ff d3                	call   *%ebx
40cccc:	59                   	pop    %ecx
40cccd:	89 7e 64             	mov    %edi,0x64(%esi)
40ccd0:	eb 07                	jmp    0x40ccd9
40ccd2:	83 60 08 00          	andl   $0x0,0x8(%eax)
40ccd6:	51                   	push   %ecx
40ccd7:	ff d3                	call   *%ebx
40ccd9:	8b 45 f8             	mov    -0x8(%ebp),%eax
40ccdc:	59                   	pop    %ecx
40ccdd:	89 46 60             	mov    %eax,0x60(%esi)
40cce0:	83 c8 ff             	or     $0xffffffff,%eax
40cce3:	5b                   	pop    %ebx
40cce4:	5f                   	pop    %edi
40cce5:	5e                   	pop    %esi
40cce6:	c9                   	leave
40cce7:	c3                   	ret
40cce8:	8b ff                	mov    %edi,%edi
40ccea:	56                   	push   %esi
40cceb:	57                   	push   %edi
40ccec:	33 ff                	xor    %edi,%edi
40ccee:	39 3d 3c 12 c7 00    	cmp    %edi,0xc7123c
40ccf4:	75 05                	jne    0x40ccfb
40ccf6:	e8 c8 2c 00 00       	call   0x40f9c3
40ccfb:	8b 35 a4 23 c7 00    	mov    0xc723a4,%esi
40cd01:	85 f6                	test   %esi,%esi
40cd03:	75 05                	jne    0x40cd0a
40cd05:	be 26 a2 41 00       	mov    $0x41a226,%esi
40cd0a:	8a 06                	mov    (%esi),%al
40cd0c:	3c 20                	cmp    $0x20,%al
40cd0e:	77 08                	ja     0x40cd18
40cd10:	84 c0                	test   %al,%al
40cd12:	74 2e                	je     0x40cd42
40cd14:	85 ff                	test   %edi,%edi
40cd16:	74 24                	je     0x40cd3c
40cd18:	3c 22                	cmp    $0x22,%al
40cd1a:	75 09                	jne    0x40cd25
40cd1c:	33 c9                	xor    %ecx,%ecx
40cd1e:	85 ff                	test   %edi,%edi
40cd20:	0f 94 c1             	sete   %cl
40cd23:	8b f9                	mov    %ecx,%edi
40cd25:	0f b6 c0             	movzbl %al,%eax
40cd28:	50                   	push   %eax
40cd29:	e8 62 8a 00 00       	call   0x415790
40cd2e:	59                   	pop    %ecx
40cd2f:	85 c0                	test   %eax,%eax
40cd31:	74 01                	je     0x40cd34
40cd33:	46                   	inc    %esi
40cd34:	46                   	inc    %esi
40cd35:	eb d3                	jmp    0x40cd0a
40cd37:	3c 20                	cmp    $0x20,%al
40cd39:	77 07                	ja     0x40cd42
40cd3b:	46                   	inc    %esi
40cd3c:	8a 06                	mov    (%esi),%al
40cd3e:	84 c0                	test   %al,%al
40cd40:	75 f5                	jne    0x40cd37
40cd42:	5f                   	pop    %edi
40cd43:	8b c6                	mov    %esi,%eax
40cd45:	5e                   	pop    %esi
40cd46:	c3                   	ret
40cd47:	83 3d 3c 12 c7 00 00 	cmpl   $0x0,0xc7123c
40cd4e:	75 05                	jne    0x40cd55
40cd50:	e8 6e 2c 00 00       	call   0x40f9c3
40cd55:	56                   	push   %esi
40cd56:	8b 35 f0 07 43 00    	mov    0x4307f0,%esi
40cd5c:	57                   	push   %edi
40cd5d:	33 ff                	xor    %edi,%edi
40cd5f:	85 f6                	test   %esi,%esi
40cd61:	75 18                	jne    0x40cd7b
40cd63:	83 c8 ff             	or     $0xffffffff,%eax
40cd66:	e9 a0 00 00 00       	jmp    0x40ce0b
40cd6b:	3c 3d                	cmp    $0x3d,%al
40cd6d:	74 01                	je     0x40cd70
40cd6f:	47                   	inc    %edi
40cd70:	56                   	push   %esi
40cd71:	e8 ea 91 ff ff       	call   0x405f60
40cd76:	59                   	pop    %ecx
40cd77:	8d 74 06 01          	lea    0x1(%esi,%eax,1),%esi
40cd7b:	8a 06                	mov    (%esi),%al
40cd7d:	84 c0                	test   %al,%al
40cd7f:	75 ea                	jne    0x40cd6b
40cd81:	6a 04                	push   $0x4
40cd83:	47                   	inc    %edi
40cd84:	57                   	push   %edi
40cd85:	e8 1b ae ff ff       	call   0x407ba5
40cd8a:	8b f8                	mov    %eax,%edi
40cd8c:	59                   	pop    %ecx
40cd8d:	59                   	pop    %ecx
40cd8e:	89 3d 9c 09 43 00    	mov    %edi,0x43099c
40cd94:	85 ff                	test   %edi,%edi
40cd96:	74 cb                	je     0x40cd63
40cd98:	8b 35 f0 07 43 00    	mov    0x4307f0,%esi
40cd9e:	53                   	push   %ebx
40cd9f:	eb 42                	jmp    0x40cde3
40cda1:	56                   	push   %esi
40cda2:	e8 b9 91 ff ff       	call   0x405f60
40cda7:	8b d8                	mov    %eax,%ebx
40cda9:	43                   	inc    %ebx
40cdaa:	80 3e 3d             	cmpb   $0x3d,(%esi)
40cdad:	59                   	pop    %ecx
40cdae:	74 31                	je     0x40cde1
40cdb0:	6a 01                	push   $0x1
40cdb2:	53                   	push   %ebx
40cdb3:	e8 ed ad ff ff       	call   0x407ba5
40cdb8:	59                   	pop    %ecx
40cdb9:	59                   	pop    %ecx
40cdba:	89 07                	mov    %eax,(%edi)
40cdbc:	85 c0                	test   %eax,%eax
40cdbe:	74 4e                	je     0x40ce0e
40cdc0:	56                   	push   %esi
40cdc1:	53                   	push   %ebx
40cdc2:	50                   	push   %eax
40cdc3:	e8 ef c7 ff ff       	call   0x4095b7
40cdc8:	83 c4 0c             	add    $0xc,%esp
40cdcb:	85 c0                	test   %eax,%eax
40cdcd:	74 0f                	je     0x40cdde
40cdcf:	33 c0                	xor    %eax,%eax
40cdd1:	50                   	push   %eax
40cdd2:	50                   	push   %eax
40cdd3:	50                   	push   %eax
40cdd4:	50                   	push   %eax
40cdd5:	50                   	push   %eax
40cdd6:	e8 22 83 ff ff       	call   0x4050fd
40cddb:	83 c4 14             	add    $0x14,%esp
40cdde:	83 c7 04             	add    $0x4,%edi
40cde1:	03 f3                	add    %ebx,%esi
40cde3:	80 3e 00             	cmpb   $0x0,(%esi)
40cde6:	75 b9                	jne    0x40cda1
40cde8:	ff 35 f0 07 43 00    	push   0x4307f0
40cdee:	e8 2d 82 ff ff       	call   0x405020
40cdf3:	83 25 f0 07 43 00 00 	andl   $0x0,0x4307f0
40cdfa:	83 27 00             	andl   $0x0,(%edi)
40cdfd:	c7 05 30 12 c7 00 01 	movl   $0x1,0xc71230
40ce04:	00 00 00
40ce07:	33 c0                	xor    %eax,%eax
40ce09:	59                   	pop    %ecx
40ce0a:	5b                   	pop    %ebx
40ce0b:	5f                   	pop    %edi
40ce0c:	5e                   	pop    %esi
40ce0d:	c3                   	ret
40ce0e:	ff 35 9c 09 43 00    	push   0x43099c
40ce14:	e8 07 82 ff ff       	call   0x405020
40ce19:	83 25 9c 09 43 00 00 	andl   $0x0,0x43099c
40ce20:	83 c8 ff             	or     $0xffffffff,%eax
40ce23:	eb e4                	jmp    0x40ce09
40ce25:	8b ff                	mov    %edi,%edi
40ce27:	55                   	push   %ebp
40ce28:	8b ec                	mov    %esp,%ebp
40ce2a:	51                   	push   %ecx
40ce2b:	8b 4d 10             	mov    0x10(%ebp),%ecx
40ce2e:	53                   	push   %ebx
40ce2f:	33 c0                	xor    %eax,%eax
40ce31:	56                   	push   %esi
40ce32:	89 07                	mov    %eax,(%edi)
40ce34:	8b f2                	mov    %edx,%esi
40ce36:	8b 55 0c             	mov    0xc(%ebp),%edx
40ce39:	c7 01 01 00 00 00    	movl   $0x1,(%ecx)
40ce3f:	39 45 08             	cmp    %eax,0x8(%ebp)
40ce42:	74 09                	je     0x40ce4d
40ce44:	8b 5d 08             	mov    0x8(%ebp),%ebx
40ce47:	83 45 08 04          	addl   $0x4,0x8(%ebp)
40ce4b:	89 13                	mov    %edx,(%ebx)
40ce4d:	89 45 fc             	mov    %eax,-0x4(%ebp)
40ce50:	80 3e 22             	cmpb   $0x22,(%esi)
40ce53:	75 10                	jne    0x40ce65
40ce55:	33 c0                	xor    %eax,%eax
40ce57:	39 45 fc             	cmp    %eax,-0x4(%ebp)
40ce5a:	b3 22                	mov    $0x22,%bl
40ce5c:	0f 94 c0             	sete   %al
40ce5f:	46                   	inc    %esi
40ce60:	89 45 fc             	mov    %eax,-0x4(%ebp)
40ce63:	eb 3c                	jmp    0x40cea1
40ce65:	ff 07                	incl   (%edi)
40ce67:	85 d2                	test   %edx,%edx
40ce69:	74 08                	je     0x40ce73
40ce6b:	8a 06                	mov    (%esi),%al
40ce6d:	88 02                	mov    %al,(%edx)
40ce6f:	42                   	inc    %edx
40ce70:	89 55 0c             	mov    %edx,0xc(%ebp)
40ce73:	8a 1e                	mov    (%esi),%bl
40ce75:	0f b6 c3             	movzbl %bl,%eax
40ce78:	50                   	push   %eax
40ce79:	46                   	inc    %esi
40ce7a:	e8 11 89 00 00       	call   0x415790
40ce7f:	59                   	pop    %ecx
40ce80:	85 c0                	test   %eax,%eax
40ce82:	74 13                	je     0x40ce97
40ce84:	ff 07                	incl   (%edi)
40ce86:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
40ce8a:	74 0a                	je     0x40ce96
40ce8c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40ce8f:	8a 06                	mov    (%esi),%al
40ce91:	ff 45 0c             	incl   0xc(%ebp)
40ce94:	88 01                	mov    %al,(%ecx)
40ce96:	46                   	inc    %esi
40ce97:	8b 55 0c             	mov    0xc(%ebp),%edx
40ce9a:	8b 4d 10             	mov    0x10(%ebp),%ecx
40ce9d:	84 db                	test   %bl,%bl
40ce9f:	74 32                	je     0x40ced3
40cea1:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
40cea5:	75 a9                	jne    0x40ce50
40cea7:	80 fb 20             	cmp    $0x20,%bl
40ceaa:	74 05                	je     0x40ceb1
40ceac:	80 fb 09             	cmp    $0x9,%bl
40ceaf:	75 9f                	jne    0x40ce50
40ceb1:	85 d2                	test   %edx,%edx
40ceb3:	74 04                	je     0x40ceb9
40ceb5:	c6 42 ff 00          	movb   $0x0,-0x1(%edx)
40ceb9:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40cebd:	80 3e 00             	cmpb   $0x0,(%esi)
40cec0:	0f 84 e9 00 00 00    	je     0x40cfaf
40cec6:	8a 06                	mov    (%esi),%al
40cec8:	3c 20                	cmp    $0x20,%al
40ceca:	74 04                	je     0x40ced0
40cecc:	3c 09                	cmp    $0x9,%al
40cece:	75 06                	jne    0x40ced6
40ced0:	46                   	inc    %esi
40ced1:	eb f3                	jmp    0x40cec6
40ced3:	4e                   	dec    %esi
40ced4:	eb e3                	jmp    0x40ceb9
40ced6:	80 3e 00             	cmpb   $0x0,(%esi)
40ced9:	0f 84 d0 00 00 00    	je     0x40cfaf
40cedf:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
40cee3:	74 09                	je     0x40ceee
40cee5:	8b 45 08             	mov    0x8(%ebp),%eax
40cee8:	83 45 08 04          	addl   $0x4,0x8(%ebp)
40ceec:	89 10                	mov    %edx,(%eax)
40ceee:	ff 01                	incl   (%ecx)
40cef0:	33 db                	xor    %ebx,%ebx
40cef2:	43                   	inc    %ebx
40cef3:	33 c9                	xor    %ecx,%ecx
40cef5:	eb 02                	jmp    0x40cef9
40cef7:	46                   	inc    %esi
40cef8:	41                   	inc    %ecx
40cef9:	80 3e 5c             	cmpb   $0x5c,(%esi)
40cefc:	74 f9                	je     0x40cef7
40cefe:	80 3e 22             	cmpb   $0x22,(%esi)
40cf01:	75 26                	jne    0x40cf29
40cf03:	f6 c1 01             	test   $0x1,%cl
40cf06:	75 1f                	jne    0x40cf27
40cf08:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
40cf0c:	74 0c                	je     0x40cf1a
40cf0e:	8d 46 01             	lea    0x1(%esi),%eax
40cf11:	80 38 22             	cmpb   $0x22,(%eax)
40cf14:	75 04                	jne    0x40cf1a
40cf16:	8b f0                	mov    %eax,%esi
40cf18:	eb 0d                	jmp    0x40cf27
40cf1a:	33 c0                	xor    %eax,%eax
40cf1c:	33 db                	xor    %ebx,%ebx
40cf1e:	39 45 fc             	cmp    %eax,-0x4(%ebp)
40cf21:	0f 94 c0             	sete   %al
40cf24:	89 45 fc             	mov    %eax,-0x4(%ebp)
40cf27:	d1 e9                	shr    $1,%ecx
40cf29:	85 c9                	test   %ecx,%ecx
40cf2b:	74 12                	je     0x40cf3f
40cf2d:	49                   	dec    %ecx
40cf2e:	85 d2                	test   %edx,%edx
40cf30:	74 04                	je     0x40cf36
40cf32:	c6 02 5c             	movb   $0x5c,(%edx)
40cf35:	42                   	inc    %edx
40cf36:	ff 07                	incl   (%edi)
40cf38:	85 c9                	test   %ecx,%ecx
40cf3a:	75 f1                	jne    0x40cf2d
40cf3c:	89 55 0c             	mov    %edx,0xc(%ebp)
40cf3f:	8a 06                	mov    (%esi),%al
40cf41:	84 c0                	test   %al,%al
40cf43:	74 55                	je     0x40cf9a
40cf45:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
40cf49:	75 08                	jne    0x40cf53
40cf4b:	3c 20                	cmp    $0x20,%al
40cf4d:	74 4b                	je     0x40cf9a
40cf4f:	3c 09                	cmp    $0x9,%al
40cf51:	74 47                	je     0x40cf9a
40cf53:	85 db                	test   %ebx,%ebx
40cf55:	74 3d                	je     0x40cf94
40cf57:	0f be c0             	movsbl %al,%eax
40cf5a:	50                   	push   %eax
40cf5b:	85 d2                	test   %edx,%edx
40cf5d:	74 23                	je     0x40cf82
40cf5f:	e8 2c 88 00 00       	call   0x415790
40cf64:	59                   	pop    %ecx
40cf65:	85 c0                	test   %eax,%eax
40cf67:	74 0d                	je     0x40cf76
40cf69:	8a 06                	mov    (%esi),%al
40cf6b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40cf6e:	ff 45 0c             	incl   0xc(%ebp)
40cf71:	88 01                	mov    %al,(%ecx)
40cf73:	46                   	inc    %esi
40cf74:	ff 07                	incl   (%edi)
40cf76:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40cf79:	8a 06                	mov    (%esi),%al
40cf7b:	ff 45 0c             	incl   0xc(%ebp)
40cf7e:	88 01                	mov    %al,(%ecx)
40cf80:	eb 0d                	jmp    0x40cf8f
40cf82:	e8 09 88 00 00       	call   0x415790
40cf87:	59                   	pop    %ecx
40cf88:	85 c0                	test   %eax,%eax
40cf8a:	74 03                	je     0x40cf8f
40cf8c:	46                   	inc    %esi
40cf8d:	ff 07                	incl   (%edi)
40cf8f:	ff 07                	incl   (%edi)
40cf91:	8b 55 0c             	mov    0xc(%ebp),%edx
40cf94:	46                   	inc    %esi
40cf95:	e9 56 ff ff ff       	jmp    0x40cef0
40cf9a:	85 d2                	test   %edx,%edx
40cf9c:	74 07                	je     0x40cfa5
40cf9e:	c6 02 00             	movb   $0x0,(%edx)
40cfa1:	42                   	inc    %edx
40cfa2:	89 55 0c             	mov    %edx,0xc(%ebp)
40cfa5:	ff 07                	incl   (%edi)
40cfa7:	8b 4d 10             	mov    0x10(%ebp),%ecx
40cfaa:	e9 0e ff ff ff       	jmp    0x40cebd
40cfaf:	8b 45 08             	mov    0x8(%ebp),%eax
40cfb2:	5e                   	pop    %esi
40cfb3:	5b                   	pop    %ebx
40cfb4:	85 c0                	test   %eax,%eax
40cfb6:	74 03                	je     0x40cfbb
40cfb8:	83 20 00             	andl   $0x0,(%eax)
40cfbb:	ff 01                	incl   (%ecx)
40cfbd:	c9                   	leave
40cfbe:	c3                   	ret
40cfbf:	8b ff                	mov    %edi,%edi