40c9ff:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
40ca05:	83 c8 ff             	or     $0xffffffff,%eax
40ca08:	e9 94 00 00 00       	jmp    0x40caa1
40ca0d:	85 db                	test   %ebx,%ebx
40ca0f:	78 08                	js     0x40ca19
40ca11:	3b 1d 00 46 41 00    	cmp    0x414600,%ebx
40ca17:	72 1a                	jb     0x40ca33
40ca19:	e8 1c 77 ff ff       	call   0x40413a
40ca1e:	83 20 00             	andl   $0x0,(%eax)
40ca21:	e8 01 77 ff ff       	call   0x404127
40ca26:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
40ca2c:	e8 56 62 ff ff       	call   0x402c87
40ca31:	eb d2                	jmp    0x40ca05
40ca33:	8b c3                	mov    %ebx,%eax
40ca35:	c1 f8 05             	sar    $0x5,%eax
40ca38:	8d 3c 85 20 46 41 00 	lea    0x414620(,%eax,4),%edi
40ca3f:	8b f3                	mov    %ebx,%esi
40ca41:	83 e6 1f             	and    $0x1f,%esi
40ca44:	c1 e6 06             	shl    $0x6,%esi
40ca47:	8b 07                	mov    (%edi),%eax
40ca49:	0f be 44 30 04       	movsbl 0x4(%eax,%esi,1),%eax
40ca4e:	83 e0 01             	and    $0x1,%eax
40ca51:	74 c6                	je     0x40ca19
40ca53:	53                   	push   %ebx
40ca54:	e8 85 66 ff ff       	call   0x4030de
40ca59:	59                   	pop    %ecx
40ca5a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40ca5e:	8b 07                	mov    (%edi),%eax
40ca60:	f6 44 30 04 01       	testb  $0x1,0x4(%eax,%esi,1)
40ca65:	74 14                	je     0x40ca7b
40ca67:	ff 75 10             	push   0x10(%ebp)
40ca6a:	ff 75 0c             	push   0xc(%ebp)
40ca6d:	53                   	push   %ebx
40ca6e:	e8 6e f8 ff ff       	call   0x40c2e1
40ca73:	83 c4 0c             	add    $0xc,%esp
40ca76:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40ca79:	eb 17                	jmp    0x40ca92
40ca7b:	e8 a7 76 ff ff       	call   0x404127
40ca80:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
40ca86:	e8 af 76 ff ff       	call   0x40413a
40ca8b:	83 20 00             	andl   $0x0,(%eax)
40ca8e:	83 4d e4 ff          	orl    $0xffffffff,-0x1c(%ebp)
40ca92:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40ca99:	e8 0c 00 00 00       	call   0x40caaa
40ca9e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
40caa1:	e8 0f 77 ff ff       	call   0x4041b5
40caa6:	c3                   	ret
40caa7:	8b 5d 08             	mov    0x8(%ebp),%ebx
40caaa:	53                   	push   %ebx
40caab:	e8 cd 66 ff ff       	call   0x40317d
40cab0:	59                   	pop    %ecx
40cab1:	c3                   	ret
40cab2:	6a 10                	push   $0x10
40cab4:	68 30 14 41 00       	push   $0x411430
40cab9:	e8 b2 76 ff ff       	call   0x404170
40cabe:	8b 5d 08             	mov    0x8(%ebp),%ebx
40cac1:	83 fb fe             	cmp    $0xfffffffe,%ebx
40cac4:	75 13                	jne    0x40cad9
40cac6:	e8 5c 76 ff ff       	call   0x404127
40cacb:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
40cad1:	83 c8 ff             	or     $0xffffffff,%eax
40cad4:	e9 a1 00 00 00       	jmp    0x40cb7a
40cad9:	85 db                	test   %ebx,%ebx
40cadb:	78 08                	js     0x40cae5
40cadd:	3b 1d 00 46 41 00    	cmp    0x414600,%ebx
40cae3:	72 12                	jb     0x40caf7
40cae5:	e8 3d 76 ff ff       	call   0x404127
40caea:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
40caf0:	e8 92 61 ff ff       	call   0x402c87
40caf5:	eb da                	jmp    0x40cad1
40caf7:	8b c3                	mov    %ebx,%eax
40caf9:	c1 f8 05             	sar    $0x5,%eax
40cafc:	8d 3c 85 20 46 41 00 	lea    0x414620(,%eax,4),%edi
40cb03:	8b f3                	mov    %ebx,%esi
40cb05:	83 e6 1f             	and    $0x1f,%esi
40cb08:	c1 e6 06             	shl    $0x6,%esi
40cb0b:	8b 07                	mov    (%edi),%eax
40cb0d:	0f be 44 06 04       	movsbl 0x4(%esi,%eax,1),%eax
40cb12:	83 e0 01             	and    $0x1,%eax
40cb15:	74 ce                	je     0x40cae5
40cb17:	53                   	push   %ebx
40cb18:	e8 c1 65 ff ff       	call   0x4030de
40cb1d:	59                   	pop    %ecx
40cb1e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40cb22:	8b 07                	mov    (%edi),%eax
40cb24:	f6 44 06 04 01       	testb  $0x1,0x4(%esi,%eax,1)
40cb29:	74 31                	je     0x40cb5c
40cb2b:	53                   	push   %ebx
40cb2c:	e8 44 65 ff ff       	call   0x403075
40cb31:	59                   	pop    %ecx
40cb32:	50                   	push   %eax
40cb33:	ff 15 38 f1 40 00    	call   *0x40f138
40cb39:	85 c0                	test   %eax,%eax
40cb3b:	75 0b                	jne    0x40cb48
40cb3d:	ff 15 44 f0 40 00    	call   *0x40f044
40cb43:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40cb46:	eb 04                	jmp    0x40cb4c
40cb48:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
40cb4c:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
40cb50:	74 19                	je     0x40cb6b
40cb52:	e8 e3 75 ff ff       	call   0x40413a
40cb57:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
40cb5a:	89 08                	mov    %ecx,(%eax)
40cb5c:	e8 c6 75 ff ff       	call   0x404127
40cb61:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
40cb67:	83 4d e4 ff          	orl    $0xffffffff,-0x1c(%ebp)
40cb6b:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40cb72:	e8 0c 00 00 00       	call   0x40cb83
40cb77:	8b 45 e4             	mov    -0x1c(%ebp),%eax
40cb7a:	e8 36 76 ff ff       	call   0x4041b5
40cb7f:	c3                   	ret
40cb80:	8b 5d 08             	mov    0x8(%ebp),%ebx
40cb83:	53                   	push   %ebx
40cb84:	e8 f4 65 ff ff       	call   0x40317d
40cb89:	59                   	pop    %ecx
40cb8a:	c3                   	ret
40cb8b:	f6 41 0c 40          	testb  $0x40,0xc(%ecx)
40cb8f:	74 06                	je     0x40cb97
40cb91:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
40cb95:	74 24                	je     0x40cbbb
40cb97:	ff 49 04             	decl   0x4(%ecx)
40cb9a:	78 0b                	js     0x40cba7
40cb9c:	8b 11                	mov    (%ecx),%edx
40cb9e:	88 02                	mov    %al,(%edx)
40cba0:	ff 01                	incl   (%ecx)
40cba2:	0f b6 c0             	movzbl %al,%eax
40cba5:	eb 0c                	jmp    0x40cbb3
40cba7:	0f be c0             	movsbl %al,%eax
40cbaa:	51                   	push   %ecx
40cbab:	50                   	push   %eax
40cbac:	e8 7b a4 ff ff       	call   0x40702c
40cbb1:	59                   	pop    %ecx
40cbb2:	59                   	pop    %ecx
40cbb3:	83 f8 ff             	cmp    $0xffffffff,%eax
40cbb6:	75 03                	jne    0x40cbbb
40cbb8:	09 06                	or     %eax,(%esi)
40cbba:	c3                   	ret
40cbbb:	ff 06                	incl   (%esi)
40cbbd:	c3                   	ret
40cbbe:	8b ff                	mov    %edi,%edi
40cbc0:	55                   	push   %ebp
40cbc1:	8b ec                	mov    %esp,%ebp
40cbc3:	81 ec 80 02 00 00    	sub    $0x280,%esp
40cbc9:	a1 84 22 41 00       	mov    0x412284,%eax
40cbce:	33 c5                	xor    %ebp,%eax
40cbd0:	89 45 fc             	mov    %eax,-0x4(%ebp)
40cbd3:	53                   	push   %ebx
40cbd4:	8b 5d 0c             	mov    0xc(%ebp),%ebx
40cbd7:	56                   	push   %esi
40cbd8:	8b 75 08             	mov    0x8(%ebp),%esi
40cbdb:	33 c0                	xor    %eax,%eax
40cbdd:	57                   	push   %edi
40cbde:	8b 7d 14             	mov    0x14(%ebp),%edi
40cbe1:	ff 75 10             	push   0x10(%ebp)
40cbe4:	8d 8d ac fd ff ff    	lea    -0x254(%ebp),%ecx
40cbea:	89 b5 d0 fd ff ff    	mov    %esi,-0x230(%ebp)
40cbf0:	89 bd e4 fd ff ff    	mov    %edi,-0x21c(%ebp)
40cbf6:	89 85 a8 fd ff ff    	mov    %eax,-0x258(%ebp)
40cbfc:	89 85 f0 fd ff ff    	mov    %eax,-0x210(%ebp)
40cc02:	89 85 c8 fd ff ff    	mov    %eax,-0x238(%ebp)
40cc08:	89 85 e8 fd ff ff    	mov    %eax,-0x218(%ebp)
40cc0e:	89 85 cc fd ff ff    	mov    %eax,-0x234(%ebp)
40cc14:	89 85 a4 fd ff ff    	mov    %eax,-0x25c(%ebp)
40cc1a:	89 85 c4 fd ff ff    	mov    %eax,-0x23c(%ebp)
40cc20:	e8 c0 53 ff ff       	call   0x401fe5
40cc25:	e8 fd 74 ff ff       	call   0x404127
40cc2a:	89 85 9c fd ff ff    	mov    %eax,-0x264(%ebp)
40cc30:	85 f6                	test   %esi,%esi
40cc32:	75 2b                	jne    0x40cc5f
40cc34:	e8 ee 74 ff ff       	call   0x404127
40cc39:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
40cc3f:	e8 43 60 ff ff       	call   0x402c87
40cc44:	80 bd b8 fd ff ff 00 	cmpb   $0x0,-0x248(%ebp)
40cc4b:	74 0a                	je     0x40cc57
40cc4d:	8b 85 b4 fd ff ff    	mov    -0x24c(%ebp),%eax
40cc53:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
40cc57:	83 c8 ff             	or     $0xffffffff,%eax
40cc5a:	e9 61 0b 00 00       	jmp    0x40d7c0
40cc5f:	f6 46 0c 40          	testb  $0x40,0xc(%esi)
40cc63:	75 5e                	jne    0x40ccc3
40cc65:	56                   	push   %esi
40cc66:	e8 45 5e ff ff       	call   0x402ab0
40cc6b:	59                   	pop    %ecx
40cc6c:	ba 78 2b 41 00       	mov    $0x412b78,%edx
40cc71:	83 f8 ff             	cmp    $0xffffffff,%eax
40cc74:	74 1b                	je     0x40cc91
40cc76:	83 f8 fe             	cmp    $0xfffffffe,%eax
40cc79:	74 16                	je     0x40cc91
40cc7b:	8b c8                	mov    %eax,%ecx
40cc7d:	83 e1 1f             	and    $0x1f,%ecx
40cc80:	8b f0                	mov    %eax,%esi
40cc82:	c1 fe 05             	sar    $0x5,%esi
40cc85:	c1 e1 06             	shl    $0x6,%ecx
40cc88:	03 0c b5 20 46 41 00 	add    0x414620(,%esi,4),%ecx
40cc8f:	eb 02                	jmp    0x40cc93
40cc91:	8b ca                	mov    %edx,%ecx
40cc93:	f6 41 24 7f          	testb  $0x7f,0x24(%ecx)
40cc97:	75 9b                	jne    0x40cc34
40cc99:	83 f8 ff             	cmp    $0xffffffff,%eax
40cc9c:	74 19                	je     0x40ccb7
40cc9e:	83 f8 fe             	cmp    $0xfffffffe,%eax
40cca1:	74 14                	je     0x40ccb7
40cca3:	8b c8                	mov    %eax,%ecx
40cca5:	83 e0 1f             	and    $0x1f,%eax
40cca8:	c1 f9 05             	sar    $0x5,%ecx
40ccab:	c1 e0 06             	shl    $0x6,%eax
40ccae:	03 04 8d 20 46 41 00 	add    0x414620(,%ecx,4),%eax
40ccb5:	eb 02                	jmp    0x40ccb9
40ccb7:	8b c2                	mov    %edx,%eax
40ccb9:	f6 40 24 80          	testb  $0x80,0x24(%eax)
40ccbd:	0f 85 71 ff ff ff    	jne    0x40cc34
40ccc3:	33 f6                	xor    %esi,%esi
40ccc5:	3b de                	cmp    %esi,%ebx
40ccc7:	0f 84 67 ff ff ff    	je     0x40cc34
40cccd:	8a 13                	mov    (%ebx),%dl
40cccf:	89 b5 dc fd ff ff    	mov    %esi,-0x224(%ebp)
40ccd5:	89 b5 d8 fd ff ff    	mov    %esi,-0x228(%ebp)
40ccdb:	89 b5 bc fd ff ff    	mov    %esi,-0x244(%ebp)
40cce1:	89 b5 a0 fd ff ff    	mov    %esi,-0x260(%ebp)
40cce7:	88 95 ef fd ff ff    	mov    %dl,-0x211(%ebp)
40cced:	84 d2                	test   %dl,%dl
40ccef:	0f 84 b2 0a 00 00    	je     0x40d7a7
40ccf5:	43                   	inc    %ebx
40ccf6:	89 9d c0 fd ff ff    	mov    %ebx,-0x240(%ebp)
40ccfc:	39 b5 dc fd ff ff    	cmp    %esi,-0x224(%ebp)
40cd02:	0f 8c 89 0a 00 00    	jl     0x40d791
40cd08:	8d 42 e0             	lea    -0x20(%edx),%eax
40cd0b:	3c 58                	cmp    $0x58,%al
40cd0d:	77 0f                	ja     0x40cd1e
40cd0f:	0f be c2             	movsbl %dl,%eax
40cd12:	0f b6 80 b0 09 41 00 	movzbl 0x4109b0(%eax),%eax
40cd19:	83 e0 0f             	and    $0xf,%eax
40cd1c:	eb 02                	jmp    0x40cd20
40cd1e:	33 c0                	xor    %eax,%eax
40cd20:	8b 8d bc fd ff ff    	mov    -0x244(%ebp),%ecx
40cd26:	6b c0 09             	imul   $0x9,%eax,%eax
40cd29:	0f b6 84 08 d0 09 41 	movzbl 0x4109d0(%eax,%ecx,1),%eax
40cd30:	00
40cd31:	6a 08                	push   $0x8
40cd33:	c1 e8 04             	shr    $0x4,%eax
40cd36:	5e                   	pop    %esi
40cd37:	89 85 bc fd ff ff    	mov    %eax,-0x244(%ebp)
40cd3d:	3b c6                	cmp    %esi,%eax
40cd3f:	0f 84 ef fe ff ff    	je     0x40cc34
40cd45:	6a 07                	push   $0x7
40cd47:	59                   	pop    %ecx
40cd48:	3b c1                	cmp    %ecx,%eax
40cd4a:	0f 87 20 0a 00 00    	ja     0x40d770
40cd50:	ff 24 85 d2 d7 40 00 	jmp    *0x40d7d2(,%eax,4)
40cd57:	33 c0                	xor    %eax,%eax
40cd59:	83 8d e8 fd ff ff ff 	orl    $0xffffffff,-0x218(%ebp)
40cd60:	89 85 8c fd ff ff    	mov    %eax,-0x274(%ebp)
40cd66:	89 85 a4 fd ff ff    	mov    %eax,-0x25c(%ebp)
40cd6c:	89 85 c8 fd ff ff    	mov    %eax,-0x238(%ebp)
40cd72:	89 85 cc fd ff ff    	mov    %eax,-0x234(%ebp)
40cd78:	89 85 f0 fd ff ff    	mov    %eax,-0x210(%ebp)
40cd7e:	89 85 c4 fd ff ff    	mov    %eax,-0x23c(%ebp)
40cd84:	e9 e7 09 00 00       	jmp    0x40d770
40cd89:	0f be c2             	movsbl %dl,%eax
40cd8c:	83 e8 20             	sub    $0x20,%eax
40cd8f:	74 48                	je     0x40cdd9
40cd91:	83 e8 03             	sub    $0x3,%eax
40cd94:	74 34                	je     0x40cdca
40cd96:	2b c6                	sub    %esi,%eax
40cd98:	74 24                	je     0x40cdbe
40cd9a:	48                   	dec    %eax
40cd9b:	48                   	dec    %eax
40cd9c:	74 14                	je     0x40cdb2
40cd9e:	83 e8 03             	sub    $0x3,%eax
40cda1:	0f 85 c9 09 00 00    	jne    0x40d770
40cda7:	09 b5 f0 fd ff ff    	or     %esi,-0x210(%ebp)
40cdad:	e9 be 09 00 00       	jmp    0x40d770
40cdb2:	83 8d f0 fd ff ff 04 	orl    $0x4,-0x210(%ebp)
40cdb9:	e9 b2 09 00 00       	jmp    0x40d770
40cdbe:	83 8d f0 fd ff ff 01 	orl    $0x1,-0x210(%ebp)
40cdc5:	e9 a6 09 00 00       	jmp    0x40d770
40cdca:	81 8d f0 fd ff ff 80 	orl    $0x80,-0x210(%ebp)
40cdd1:	00 00 00
40cdd4:	e9 97 09 00 00       	jmp    0x40d770
40cdd9:	83 8d f0 fd ff ff 02 	orl    $0x2,-0x210(%ebp)
40cde0:	e9 8b 09 00 00       	jmp    0x40d770
40cde5:	80 fa 2a             	cmp    $0x2a,%dl
40cde8:	75 2c                	jne    0x40ce16
40cdea:	83 c7 04             	add    $0x4,%edi
40cded:	89 bd e4 fd ff ff    	mov    %edi,-0x21c(%ebp)
40cdf3:	8b 7f fc             	mov    -0x4(%edi),%edi
40cdf6:	89 bd c8 fd ff ff    	mov    %edi,-0x238(%ebp)
40cdfc:	85 ff                	test   %edi,%edi
40cdfe:	0f 89 6c 09 00 00    	jns    0x40d770
40ce04:	83 8d f0 fd ff ff 04 	orl    $0x4,-0x210(%ebp)
40ce0b:	f7 9d c8 fd ff ff    	negl   -0x238(%ebp)
40ce11:	e9 5a 09 00 00       	jmp    0x40d770
40ce16:	8b 85 c8 fd ff ff    	mov    -0x238(%ebp),%eax
40ce1c:	6b c0 0a             	imul   $0xa,%eax,%eax
40ce1f:	0f be ca             	movsbl %dl,%ecx
40ce22:	8d 44 08 d0          	lea    -0x30(%eax,%ecx,1),%eax
40ce26:	89 85 c8 fd ff ff    	mov    %eax,-0x238(%ebp)
40ce2c:	e9 3f 09 00 00       	jmp    0x40d770
40ce31:	83 a5 e8 fd ff ff 00 	andl   $0x0,-0x218(%ebp)
40ce38:	e9 33 09 00 00       	jmp    0x40d770
40ce3d:	80 fa 2a             	cmp    $0x2a,%dl
40ce40:	75 26                	jne    0x40ce68
40ce42:	83 c7 04             	add    $0x4,%edi
40ce45:	89 bd e4 fd ff ff    	mov    %edi,-0x21c(%ebp)
40ce4b:	8b 7f fc             	mov    -0x4(%edi),%edi
40ce4e:	89 bd e8 fd ff ff    	mov    %edi,-0x218(%ebp)
40ce54:	85 ff                	test   %edi,%edi
40ce56:	0f 89 14 09 00 00    	jns    0x40d770
40ce5c:	83 8d e8 fd ff ff ff 	orl    $0xffffffff,-0x218(%ebp)
40ce63:	e9 08 09 00 00       	jmp    0x40d770
40ce68:	8b 85 e8 fd ff ff    	mov    -0x218(%ebp),%eax
40ce6e:	6b c0 0a             	imul   $0xa,%eax,%eax
40ce71:	0f be ca             	movsbl %dl,%ecx
40ce74:	8d 44 08 d0          	lea    -0x30(%eax,%ecx,1),%eax
40ce78:	89 85 e8 fd ff ff    	mov    %eax,-0x218(%ebp)
40ce7e:	e9 ed 08 00 00       	jmp    0x40d770
40ce83:	80 fa 49             	cmp    $0x49,%dl
40ce86:	74 55                	je     0x40cedd
40ce88:	80 fa 68             	cmp    $0x68,%dl
40ce8b:	74 44                	je     0x40ced1
40ce8d:	80 fa 6c             	cmp    $0x6c,%dl
40ce90:	74 18                	je     0x40ceaa
40ce92:	80 fa 77             	cmp    $0x77,%dl
40ce95:	0f 85 d5 08 00 00    	jne    0x40d770
40ce9b:	81 8d f0 fd ff ff 00 	orl    $0x800,-0x210(%ebp)
40cea2:	08 00 00
40cea5:	e9 c6 08 00 00       	jmp    0x40d770
40ceaa:	80 3b 6c             	cmpb   $0x6c,(%ebx)
40cead:	75 16                	jne    0x40cec5
40ceaf:	43                   	inc    %ebx
40ceb0:	81 8d f0 fd ff ff 00 	orl    $0x1000,-0x210(%ebp)
40ceb7:	10 00 00
40ceba:	89 9d c0 fd ff ff    	mov    %ebx,-0x240(%ebp)
40cec0:	e9 ab 08 00 00       	jmp    0x40d770
40cec5:	83 8d f0 fd ff ff 10 	orl    $0x10,-0x210(%ebp)
40cecc:	e9 9f 08 00 00       	jmp    0x40d770
40ced1:	83 8d f0 fd ff ff 20 	orl    $0x20,-0x210(%ebp)
40ced8:	e9 93 08 00 00       	jmp    0x40d770
40cedd:	8a 03                	mov    (%ebx),%al
40cedf:	3c 36                	cmp    $0x36,%al
40cee1:	75 1e                	jne    0x40cf01
40cee3:	80 7b 01 34          	cmpb   $0x34,0x1(%ebx)
40cee7:	75 18                	jne    0x40cf01
40cee9:	83 c3 02             	add    $0x2,%ebx
40ceec:	81 8d f0 fd ff ff 00 	orl    $0x8000,-0x210(%ebp)
40cef3:	80 00 00
40cef6:	89 9d c0 fd ff ff    	mov    %ebx,-0x240(%ebp)
40cefc:	e9 6f 08 00 00       	jmp    0x40d770
40cf01:	3c 33                	cmp    $0x33,%al
40cf03:	75 1e                	jne    0x40cf23