4089a4:	75 03                	jne    0x4089a9
4089a6:	09 06                	or     %eax,(%esi)
4089a8:	c3                   	ret
4089a9:	ff 06                	incl   (%esi)
4089ab:	c3                   	ret
4089ac:	8b ff                	mov    %edi,%edi
4089ae:	55                   	push   %ebp
4089af:	8b ec                	mov    %esp,%ebp
4089b1:	56                   	push   %esi
4089b2:	8b f0                	mov    %eax,%esi
4089b4:	eb 13                	jmp    0x4089c9
4089b6:	8b 4d 10             	mov    0x10(%ebp),%ecx
4089b9:	8a 45 08             	mov    0x8(%ebp),%al
4089bc:	ff 4d 0c             	decl   0xc(%ebp)
4089bf:	e8 b5 ff ff ff       	call   0x408979
4089c4:	83 3e ff             	cmpl   $0xffffffff,(%esi)
4089c7:	74 06                	je     0x4089cf
4089c9:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4089cd:	7f e7                	jg     0x4089b6
4089cf:	5e                   	pop    %esi
4089d0:	5d                   	pop    %ebp
4089d1:	c3                   	ret
4089d2:	8b ff                	mov    %edi,%edi
4089d4:	55                   	push   %ebp
4089d5:	8b ec                	mov    %esp,%ebp
4089d7:	f6 47 0c 40          	testb  $0x40,0xc(%edi)
4089db:	53                   	push   %ebx
4089dc:	56                   	push   %esi
4089dd:	8b f0                	mov    %eax,%esi
4089df:	8b d9                	mov    %ecx,%ebx
4089e1:	74 32                	je     0x408a15
4089e3:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
4089e7:	75 2c                	jne    0x408a15
4089e9:	8b 45 08             	mov    0x8(%ebp),%eax
4089ec:	01 06                	add    %eax,(%esi)
4089ee:	eb 2b                	jmp    0x408a1b
4089f0:	8a 03                	mov    (%ebx),%al
4089f2:	ff 4d 08             	decl   0x8(%ebp)
4089f5:	8b cf                	mov    %edi,%ecx
4089f7:	e8 7d ff ff ff       	call   0x408979
4089fc:	43                   	inc    %ebx
4089fd:	83 3e ff             	cmpl   $0xffffffff,(%esi)
408a00:	75 13                	jne    0x408a15
408a02:	e8 ce d0 ff ff       	call   0x405ad5
408a07:	83 38 2a             	cmpl   $0x2a,(%eax)
408a0a:	75 0f                	jne    0x408a1b
408a0c:	8b cf                	mov    %edi,%ecx
408a0e:	b0 3f                	mov    $0x3f,%al
408a10:	e8 64 ff ff ff       	call   0x408979
408a15:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
408a19:	7f d5                	jg     0x4089f0
408a1b:	5e                   	pop    %esi
408a1c:	5b                   	pop    %ebx
408a1d:	5d                   	pop    %ebp
408a1e:	c3                   	ret
408a1f:	8b ff                	mov    %edi,%edi
408a21:	55                   	push   %ebp
408a22:	8b ec                	mov    %esp,%ebp
408a24:	81 ec 78 02 00 00    	sub    $0x278,%esp
408a2a:	a1 68 b2 42 00       	mov    0x42b268,%eax
408a2f:	33 c5                	xor    %ebp,%eax
408a31:	89 45 fc             	mov    %eax,-0x4(%ebp)
408a34:	53                   	push   %ebx
408a35:	8b 5d 0c             	mov    0xc(%ebp),%ebx
408a38:	56                   	push   %esi
408a39:	8b 75 08             	mov    0x8(%ebp),%esi
408a3c:	33 c0                	xor    %eax,%eax
408a3e:	57                   	push   %edi
408a3f:	8b 7d 14             	mov    0x14(%ebp),%edi
408a42:	ff 75 10             	push   0x10(%ebp)
408a45:	8d 8d a4 fd ff ff    	lea    -0x25c(%ebp),%ecx
408a4b:	89 b5 b4 fd ff ff    	mov    %esi,-0x24c(%ebp)
408a51:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
408a57:	89 85 b8 fd ff ff    	mov    %eax,-0x248(%ebp)
408a5d:	89 85 f0 fd ff ff    	mov    %eax,-0x210(%ebp)
408a63:	89 85 cc fd ff ff    	mov    %eax,-0x234(%ebp)
408a69:	89 85 e8 fd ff ff    	mov    %eax,-0x218(%ebp)
408a6f:	89 85 d0 fd ff ff    	mov    %eax,-0x230(%ebp)
408a75:	89 85 c0 fd ff ff    	mov    %eax,-0x240(%ebp)
408a7b:	89 85 c8 fd ff ff    	mov    %eax,-0x238(%ebp)
408a81:	e8 de ed ff ff       	call   0x407864
408a86:	85 f6                	test   %esi,%esi
408a88:	75 35                	jne    0x408abf
408a8a:	e8 46 d0 ff ff       	call   0x405ad5
408a8f:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
408a95:	33 c0                	xor    %eax,%eax
408a97:	50                   	push   %eax
408a98:	50                   	push   %eax
408a99:	50                   	push   %eax
408a9a:	50                   	push   %eax
408a9b:	50                   	push   %eax
408a9c:	e8 84 c7 ff ff       	call   0x405225
408aa1:	83 c4 14             	add    $0x14,%esp
408aa4:	80 bd b0 fd ff ff 00 	cmpb   $0x0,-0x250(%ebp)
408aab:	74 0a                	je     0x408ab7
408aad:	8b 85 ac fd ff ff    	mov    -0x254(%ebp),%eax
408ab3:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
408ab7:	83 c8 ff             	or     $0xffffffff,%eax
408aba:	e9 c8 0a 00 00       	jmp    0x409587
408abf:	f6 46 0c 40          	testb  $0x40,0xc(%esi)
408ac3:	75 5e                	jne    0x408b23
408ac5:	56                   	push   %esi
408ac6:	e8 b6 36 00 00       	call   0x40c181
408acb:	59                   	pop    %ecx
408acc:	ba 80 b6 42 00       	mov    $0x42b680,%edx
408ad1:	83 f8 ff             	cmp    $0xffffffff,%eax
408ad4:	74 1b                	je     0x408af1
408ad6:	83 f8 fe             	cmp    $0xfffffffe,%eax
408ad9:	74 16                	je     0x408af1
408adb:	8b c8                	mov    %eax,%ecx
408add:	83 e1 1f             	and    $0x1f,%ecx
408ae0:	8b f0                	mov    %eax,%esi
408ae2:	c1 fe 05             	sar    $0x5,%esi
408ae5:	c1 e1 06             	shl    $0x6,%ecx
408ae8:	03 0c b5 60 12 c7 00 	add    0xc71260(,%esi,4),%ecx
408aef:	eb 02                	jmp    0x408af3
408af1:	8b ca                	mov    %edx,%ecx
408af3:	f6 41 24 7f          	testb  $0x7f,0x24(%ecx)
408af7:	75 91                	jne    0x408a8a
408af9:	83 f8 ff             	cmp    $0xffffffff,%eax
408afc:	74 19                	je     0x408b17
408afe:	83 f8 fe             	cmp    $0xfffffffe,%eax
408b01:	74 14                	je     0x408b17
408b03:	8b c8                	mov    %eax,%ecx
408b05:	83 e0 1f             	and    $0x1f,%eax
408b08:	c1 f9 05             	sar    $0x5,%ecx
408b0b:	c1 e0 06             	shl    $0x6,%eax
408b0e:	03 04 8d 60 12 c7 00 	add    0xc71260(,%ecx,4),%eax
408b15:	eb 02                	jmp    0x408b19
408b17:	8b c2                	mov    %edx,%eax
408b19:	f6 40 24 80          	testb  $0x80,0x24(%eax)
408b1d:	0f 85 67 ff ff ff    	jne    0x408a8a
408b23:	33 c9                	xor    %ecx,%ecx
408b25:	3b d9                	cmp    %ecx,%ebx
408b27:	0f 84 5d ff ff ff    	je     0x408a8a
408b2d:	8a 13                	mov    (%ebx),%dl
408b2f:	89 8d d8 fd ff ff    	mov    %ecx,-0x228(%ebp)
408b35:	89 8d e0 fd ff ff    	mov    %ecx,-0x220(%ebp)
408b3b:	89 8d bc fd ff ff    	mov    %ecx,-0x244(%ebp)
408b41:	88 95 ef fd ff ff    	mov    %dl,-0x211(%ebp)
408b47:	84 d2                	test   %dl,%dl
408b49:	0f 84 1f 0a 00 00    	je     0x40956e
408b4f:	43                   	inc    %ebx
408b50:	83 bd d8 fd ff ff 00 	cmpl   $0x0,-0x228(%ebp)
408b57:	89 9d c4 fd ff ff    	mov    %ebx,-0x23c(%ebp)
408b5d:	0f 8c 0b 0a 00 00    	jl     0x40956e
408b63:	8a c2                	mov    %dl,%al
408b65:	2c 20                	sub    $0x20,%al
408b67:	3c 58                	cmp    $0x58,%al
408b69:	77 11                	ja     0x408b7c
408b6b:	0f be c2             	movsbl %dl,%eax
408b6e:	0f be 80 f0 ab 41 00 	movsbl 0x41abf0(%eax),%eax
408b75:	83 e0 0f             	and    $0xf,%eax
408b78:	33 f6                	xor    %esi,%esi
408b7a:	eb 04                	jmp    0x408b80
408b7c:	33 f6                	xor    %esi,%esi
408b7e:	33 c0                	xor    %eax,%eax
408b80:	0f be 84 c1 10 ac 41 	movsbl 0x41ac10(%ecx,%eax,8),%eax
408b87:	00
408b88:	6a 07                	push   $0x7
408b8a:	c1 f8 04             	sar    $0x4,%eax
408b8d:	59                   	pop    %ecx
408b8e:	89 85 94 fd ff ff    	mov    %eax,-0x26c(%ebp)
408b94:	3b c1                	cmp    %ecx,%eax
408b96:	0f 87 ad 09 00 00    	ja     0x409549
408b9c:	ff 24 85 97 95 40 00 	jmp    *0x409597(,%eax,4)
408ba3:	83 8d e8 fd ff ff ff 	orl    $0xffffffff,-0x218(%ebp)
408baa:	89 b5 90 fd ff ff    	mov    %esi,-0x270(%ebp)
408bb0:	89 b5 c0 fd ff ff    	mov    %esi,-0x240(%ebp)
408bb6:	89 b5 cc fd ff ff    	mov    %esi,-0x234(%ebp)
408bbc:	89 b5 d0 fd ff ff    	mov    %esi,-0x230(%ebp)
408bc2:	89 b5 f0 fd ff ff    	mov    %esi,-0x210(%ebp)
408bc8:	89 b5 c8 fd ff ff    	mov    %esi,-0x238(%ebp)
408bce:	e9 76 09 00 00       	jmp    0x409549
408bd3:	0f be c2             	movsbl %dl,%eax
408bd6:	83 e8 20             	sub    $0x20,%eax
408bd9:	74 4a                	je     0x408c25
408bdb:	83 e8 03             	sub    $0x3,%eax
408bde:	74 36                	je     0x408c16
408be0:	83 e8 08             	sub    $0x8,%eax
408be3:	74 25                	je     0x408c0a
408be5:	48                   	dec    %eax
408be6:	48                   	dec    %eax
408be7:	74 15                	je     0x408bfe
408be9:	83 e8 03             	sub    $0x3,%eax
408bec:	0f 85 57 09 00 00    	jne    0x409549
408bf2:	83 8d f0 fd ff ff 08 	orl    $0x8,-0x210(%ebp)
408bf9:	e9 4b 09 00 00       	jmp    0x409549
408bfe:	83 8d f0 fd ff ff 04 	orl    $0x4,-0x210(%ebp)
408c05:	e9 3f 09 00 00       	jmp    0x409549
408c0a:	83 8d f0 fd ff ff 01 	orl    $0x1,-0x210(%ebp)
408c11:	e9 33 09 00 00       	jmp    0x409549
408c16:	81 8d f0 fd ff ff 80 	orl    $0x80,-0x210(%ebp)
408c1d:	00 00 00
408c20:	e9 24 09 00 00       	jmp    0x409549
408c25:	83 8d f0 fd ff ff 02 	orl    $0x2,-0x210(%ebp)
408c2c:	e9 18 09 00 00       	jmp    0x409549
408c31:	80 fa 2a             	cmp    $0x2a,%dl
408c34:	75 2c                	jne    0x408c62
408c36:	83 c7 04             	add    $0x4,%edi
408c39:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
408c3f:	8b 7f fc             	mov    -0x4(%edi),%edi
408c42:	3b fe                	cmp    %esi,%edi
408c44:	89 bd cc fd ff ff    	mov    %edi,-0x234(%ebp)
408c4a:	0f 8d f9 08 00 00    	jge    0x409549
408c50:	83 8d f0 fd ff ff 04 	orl    $0x4,-0x210(%ebp)
408c57:	f7 9d cc fd ff ff    	negl   -0x234(%ebp)
408c5d:	e9 e7 08 00 00       	jmp    0x409549
408c62:	8b 85 cc fd ff ff    	mov    -0x234(%ebp),%eax
408c68:	6b c0 0a             	imul   $0xa,%eax,%eax
408c6b:	0f be ca             	movsbl %dl,%ecx
408c6e:	8d 44 08 d0          	lea    -0x30(%eax,%ecx,1),%eax
408c72:	89 85 cc fd ff ff    	mov    %eax,-0x234(%ebp)
408c78:	e9 cc 08 00 00       	jmp    0x409549
408c7d:	89 b5 e8 fd ff ff    	mov    %esi,-0x218(%ebp)
408c83:	e9 c1 08 00 00       	jmp    0x409549
408c88:	80 fa 2a             	cmp    $0x2a,%dl
408c8b:	75 26                	jne    0x408cb3
408c8d:	83 c7 04             	add    $0x4,%edi
408c90:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
408c96:	8b 7f fc             	mov    -0x4(%edi),%edi
408c99:	3b fe                	cmp    %esi,%edi
408c9b:	89 bd e8 fd ff ff    	mov    %edi,-0x218(%ebp)
408ca1:	0f 8d a2 08 00 00    	jge    0x409549
408ca7:	83 8d e8 fd ff ff ff 	orl    $0xffffffff,-0x218(%ebp)
408cae:	e9 96 08 00 00       	jmp    0x409549
408cb3:	8b 85 e8 fd ff ff    	mov    -0x218(%ebp),%eax
408cb9:	6b c0 0a             	imul   $0xa,%eax,%eax
408cbc:	0f be ca             	movsbl %dl,%ecx
408cbf:	8d 44 08 d0          	lea    -0x30(%eax,%ecx,1),%eax
408cc3:	89 85 e8 fd ff ff    	mov    %eax,-0x218(%ebp)
408cc9:	e9 7b 08 00 00       	jmp    0x409549
408cce:	80 fa 49             	cmp    $0x49,%dl
408cd1:	74 55                	je     0x408d28
408cd3:	80 fa 68             	cmp    $0x68,%dl
408cd6:	74 44                	je     0x408d1c
408cd8:	80 fa 6c             	cmp    $0x6c,%dl
408cdb:	74 18                	je     0x408cf5
408cdd:	80 fa 77             	cmp    $0x77,%dl
408ce0:	0f 85 63 08 00 00    	jne    0x409549
408ce6:	81 8d f0 fd ff ff 00 	orl    $0x800,-0x210(%ebp)
408ced:	08 00 00
408cf0:	e9 54 08 00 00       	jmp    0x409549
408cf5:	80 3b 6c             	cmpb   $0x6c,(%ebx)
408cf8:	75 16                	jne    0x408d10
408cfa:	43                   	inc    %ebx
408cfb:	81 8d f0 fd ff ff 00 	orl    $0x1000,-0x210(%ebp)
408d02:	10 00 00
408d05:	89 9d c4 fd ff ff    	mov    %ebx,-0x23c(%ebp)
408d0b:	e9 39 08 00 00       	jmp    0x409549
408d10:	83 8d f0 fd ff ff 10 	orl    $0x10,-0x210(%ebp)
408d17:	e9 2d 08 00 00       	jmp    0x409549
408d1c:	83 8d f0 fd ff ff 20 	orl    $0x20,-0x210(%ebp)
408d23:	e9 21 08 00 00       	jmp    0x409549
408d28:	8a 03                	mov    (%ebx),%al
408d2a:	3c 36                	cmp    $0x36,%al
408d2c:	75 1d                	jne    0x408d4b
408d2e:	80 7b 01 34          	cmpb   $0x34,0x1(%ebx)
408d32:	75 17                	jne    0x408d4b
408d34:	43                   	inc    %ebx
408d35:	43                   	inc    %ebx
408d36:	81 8d f0 fd ff ff 00 	orl    $0x8000,-0x210(%ebp)
408d3d:	80 00 00
408d40:	89 9d c4 fd ff ff    	mov    %ebx,-0x23c(%ebp)
408d46:	e9 fe 07 00 00       	jmp    0x409549
408d4b:	3c 33                	cmp    $0x33,%al
408d4d:	75 1d                	jne    0x408d6c
408d4f:	80 7b 01 32          	cmpb   $0x32,0x1(%ebx)
408d53:	75 17                	jne    0x408d6c
408d55:	43                   	inc    %ebx
408d56:	43                   	inc    %ebx
408d57:	81 a5 f0 fd ff ff ff 	andl   $0xffff7fff,-0x210(%ebp)
408d5e:	7f ff ff
408d61:	89 9d c4 fd ff ff    	mov    %ebx,-0x23c(%ebp)
408d67:	e9 dd 07 00 00       	jmp    0x409549
408d6c:	3c 64                	cmp    $0x64,%al
408d6e:	0f 84 d5 07 00 00    	je     0x409549
408d74:	3c 69                	cmp    $0x69,%al
408d76:	0f 84 cd 07 00 00    	je     0x409549
408d7c:	3c 6f                	cmp    $0x6f,%al
408d7e:	0f 84 c5 07 00 00    	je     0x409549
408d84:	3c 75                	cmp    $0x75,%al
408d86:	0f 84 bd 07 00 00    	je     0x409549
408d8c:	3c 78                	cmp    $0x78,%al
408d8e:	0f 84 b5 07 00 00    	je     0x409549
408d94:	3c 58                	cmp    $0x58,%al
408d96:	0f 84 ad 07 00 00    	je     0x409549
408d9c:	89 b5 94 fd ff ff    	mov    %esi,-0x26c(%ebp)
408da2:	8d 85 a4 fd ff ff    	lea    -0x25c(%ebp),%eax
408da8:	50                   	push   %eax
408da9:	0f b6 c2             	movzbl %dl,%eax
408dac:	50                   	push   %eax
408dad:	89 b5 c8 fd ff ff    	mov    %esi,-0x238(%ebp)
408db3:	e8 f0 9f 00 00       	call   0x412da8
408db8:	59                   	pop    %ecx
408db9:	85 c0                	test   %eax,%eax
408dbb:	8a 85 ef fd ff ff    	mov    -0x211(%ebp),%al
408dc1:	59                   	pop    %ecx
408dc2:	74 22                	je     0x408de6
408dc4:	8b 8d b4 fd ff ff    	mov    -0x24c(%ebp),%ecx
408dca:	8d b5 d8 fd ff ff    	lea    -0x228(%ebp),%esi
408dd0:	e8 a4 fb ff ff       	call   0x408979
408dd5:	8a 03                	mov    (%ebx),%al
408dd7:	43                   	inc    %ebx
408dd8:	89 9d c4 fd ff ff    	mov    %ebx,-0x23c(%ebp)
408dde:	84 c0                	test   %al,%al
408de0:	0f 84 a4 fc ff ff    	je     0x408a8a
408de6:	8b 8d b4 fd ff ff    	mov    -0x24c(%ebp),%ecx
408dec:	8d b5 d8 fd ff ff    	lea    -0x228(%ebp),%esi
408df2:	e8 82 fb ff ff       	call   0x408979
408df7:	e9 4d 07 00 00       	jmp    0x409549
408dfc:	0f be c2             	movsbl %dl,%eax
408dff:	83 f8 64             	cmp    $0x64,%eax
408e02:	0f 8f e8 01 00 00    	jg     0x408ff0
408e08:	0f 84 79 02 00 00    	je     0x409087
408e0e:	83 f8 53             	cmp    $0x53,%eax
408e11:	0f 8f f2 00 00 00    	jg     0x408f09
408e17:	0f 84 80 00 00 00    	je     0x408e9d
408e1d:	83 e8 41             	sub    $0x41,%eax
408e20:	74 10                	je     0x408e32
408e22:	48                   	dec    %eax
408e23:	48                   	dec    %eax
408e24:	74 58                	je     0x408e7e
408e26:	48                   	dec    %eax
408e27:	48                   	dec    %eax
408e28:	74 08                	je     0x408e32
408e2a:	48                   	dec    %eax
408e2b:	48                   	dec    %eax
408e2c:	0f 85 92 05 00 00    	jne    0x4093c4
408e32:	80 c2 20             	add    $0x20,%dl
408e35:	c7 85 90 fd ff ff 01 	movl   $0x1,-0x270(%ebp)
408e3c:	00 00 00
408e3f:	88 95 ef fd ff ff    	mov    %dl,-0x211(%ebp)
408e45:	83 8d f0 fd ff ff 40 	orl    $0x40,-0x210(%ebp)
408e4c:	39 b5 e8 fd ff ff    	cmp    %esi,-0x218(%ebp)
408e52:	8d 9d f4 fd ff ff    	lea    -0x20c(%ebp),%ebx
408e58:	b8 00 02 00 00       	mov    $0x200,%eax
408e5d:	89 9d e4 fd ff ff    	mov    %ebx,-0x21c(%ebp)
408e63:	89 85 a0 fd ff ff    	mov    %eax,-0x260(%ebp)
408e69:	0f 8d 48 02 00 00    	jge    0x4090b7
408e6f:	c7 85 e8 fd ff ff 06 	movl   $0x6,-0x218(%ebp)
408e76:	00 00 00
408e79:	e9 a5 02 00 00       	jmp    0x409123
408e7e:	f7 85 f0 fd ff ff 30 	testl  $0x830,-0x210(%ebp)
408e85:	08 00 00
408e88:	0f 85 98 00 00 00    	jne    0x408f26
408e8e:	81 8d f0 fd ff ff 00 	orl    $0x800,-0x210(%ebp)
408e95:	08 00 00
408e98:	e9 89 00 00 00       	jmp    0x408f26
408e9d:	f7 85 f0 fd ff ff 30 	testl  $0x830,-0x210(%ebp)