408acc:	c3                   	ret
408acd:	8d 40 00             	lea    0x0(%eax),%eax
408ad0:	53                   	push   %ebx
408ad1:	56                   	push   %esi
408ad2:	51                   	push   %ecx
408ad3:	8b da                	mov    %edx,%ebx
408ad5:	8b f0                	mov    %eax,%esi
408ad7:	8b c3                	mov    %ebx,%eax
408ad9:	e8 52 bd ff ff       	call   0x404830
408ade:	50                   	push   %eax
408adf:	8b c3                	mov    %ebx,%eax
408ae1:	e8 4a bf ff ff       	call   0x404a30
408ae6:	8b d0                	mov    %eax,%edx
408ae8:	8b c6                	mov    %esi,%eax
408aea:	59                   	pop    %ecx
408aeb:	e8 ac ff ff ff       	call   0x408a9c
408af0:	89 04 24             	mov    %eax,(%esp)
408af3:	8b 04 24             	mov    (%esp),%eax
408af6:	5a                   	pop    %edx
408af7:	5e                   	pop    %esi
408af8:	5b                   	pop    %ebx
408af9:	c3                   	ret
408afa:	8b c0                	mov    %eax,%eax
408afc:	53                   	push   %ebx
408afd:	56                   	push   %esi
408afe:	57                   	push   %edi
408aff:	51                   	push   %ecx
408b00:	8b f9                	mov    %ecx,%edi
408b02:	8b f2                	mov    %edx,%esi
408b04:	8b d8                	mov    %eax,%ebx
408b06:	8b c6                	mov    %esi,%eax
408b08:	e8 23 bf ff ff       	call   0x404a30
408b0d:	8b d0                	mov    %eax,%edx
408b0f:	8b cf                	mov    %edi,%ecx
408b11:	8b c3                	mov    %ebx,%eax
408b13:	e8 84 ff ff ff       	call   0x408a9c
408b18:	89 04 24             	mov    %eax,(%esp)
408b1b:	8b 04 24             	mov    (%esp),%eax
408b1e:	5a                   	pop    %edx
408b1f:	5f                   	pop    %edi
408b20:	5e                   	pop    %esi
408b21:	5b                   	pop    %ebx
408b22:	c3                   	ret
408b23:	90                   	nop
408b24:	57                   	push   %edi
408b25:	56                   	push   %esi
408b26:	89 d7                	mov    %edx,%edi
408b28:	89 c6                	mov    %eax,%esi
408b2a:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
408b2f:	31 c0                	xor    %eax,%eax
408b31:	f2 ae                	repnz scas %es:(%edi),%al
408b33:	f7 d1                	not    %ecx
408b35:	89 d7                	mov    %edx,%edi
408b37:	31 d2                	xor    %edx,%edx
408b39:	f3 a6                	repz cmpsb %es:(%edi),%ds:(%esi)
408b3b:	8a 46 ff             	mov    -0x1(%esi),%al
408b3e:	8a 57 ff             	mov    -0x1(%edi),%dl
408b41:	29 d0                	sub    %edx,%eax
408b43:	5e                   	pop    %esi
408b44:	5f                   	pop    %edi
408b45:	c3                   	ret
408b46:	8b c0                	mov    %eax,%eax
408b48:	57                   	push   %edi
408b49:	56                   	push   %esi
408b4a:	89 d7                	mov    %edx,%edi
408b4c:	89 c6                	mov    %eax,%esi
408b4e:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
408b53:	31 c0                	xor    %eax,%eax
408b55:	f2 ae                	repnz scas %es:(%edi),%al
408b57:	f7 d1                	not    %ecx
408b59:	89 d7                	mov    %edx,%edi
408b5b:	31 d2                	xor    %edx,%edx
408b5d:	f3 a6                	repz cmpsb %es:(%edi),%ds:(%esi)
408b5f:	74 21                	je     0x408b82
408b61:	8a 46 ff             	mov    -0x1(%esi),%al
408b64:	3c 61                	cmp    $0x61,%al
408b66:	72 06                	jb     0x408b6e
408b68:	3c 7a                	cmp    $0x7a,%al
408b6a:	77 02                	ja     0x408b6e
408b6c:	2c 20                	sub    $0x20,%al
408b6e:	8a 57 ff             	mov    -0x1(%edi),%dl
408b71:	80 fa 61             	cmp    $0x61,%dl
408b74:	72 08                	jb     0x408b7e
408b76:	80 fa 7a             	cmp    $0x7a,%dl
408b79:	77 03                	ja     0x408b7e
408b7b:	80 ea 20             	sub    $0x20,%dl
408b7e:	29 d0                	sub    %edx,%eax
408b80:	74 db                	je     0x408b5d
408b82:	5e                   	pop    %esi
408b83:	5f                   	pop    %edi
408b84:	c3                   	ret
408b85:	8d 40 00             	lea    0x0(%eax),%eax
408b88:	57                   	push   %edi
408b89:	56                   	push   %esi
408b8a:	53                   	push   %ebx
408b8b:	89 d7                	mov    %edx,%edi
408b8d:	89 c6                	mov    %eax,%esi
408b8f:	89 cb                	mov    %ecx,%ebx
408b91:	31 c0                	xor    %eax,%eax
408b93:	09 c9                	or     %ecx,%ecx
408b95:	74 2f                	je     0x408bc6
408b97:	f2 ae                	repnz scas %es:(%edi),%al
408b99:	29 cb                	sub    %ecx,%ebx
408b9b:	89 d9                	mov    %ebx,%ecx
408b9d:	89 d7                	mov    %edx,%edi
408b9f:	31 d2                	xor    %edx,%edx
408ba1:	f3 a6                	repz cmpsb %es:(%edi),%ds:(%esi)
408ba3:	74 21                	je     0x408bc6
408ba5:	8a 46 ff             	mov    -0x1(%esi),%al
408ba8:	3c 61                	cmp    $0x61,%al
408baa:	72 06                	jb     0x408bb2
408bac:	3c 7a                	cmp    $0x7a,%al
408bae:	77 02                	ja     0x408bb2
408bb0:	2c 20                	sub    $0x20,%al
408bb2:	8a 57 ff             	mov    -0x1(%edi),%dl
408bb5:	80 fa 61             	cmp    $0x61,%dl
408bb8:	72 08                	jb     0x408bc2
408bba:	80 fa 7a             	cmp    $0x7a,%dl
408bbd:	77 03                	ja     0x408bc2
408bbf:	80 ea 20             	sub    $0x20,%dl
408bc2:	29 d0                	sub    %edx,%eax
408bc4:	74 db                	je     0x408ba1
408bc6:	5b                   	pop    %ebx
408bc7:	5e                   	pop    %esi
408bc8:	5f                   	pop    %edi
408bc9:	c3                   	ret
408bca:	8b c0                	mov    %eax,%eax
408bcc:	51                   	push   %ecx
408bcd:	8b cc                	mov    %esp,%ecx
408bcf:	89 01                	mov    %eax,(%ecx)
408bd1:	eb 0c                	jmp    0x408bdf
408bd3:	84 c0                	test   %al,%al
408bd5:	75 06                	jne    0x408bdd
408bd7:	33 c0                	xor    %eax,%eax
408bd9:	89 01                	mov    %eax,(%ecx)
408bdb:	eb 0a                	jmp    0x408be7
408bdd:	ff 01                	incl   (%ecx)
408bdf:	8b 01                	mov    (%ecx),%eax
408be1:	8a 00                	mov    (%eax),%al
408be3:	3a d0                	cmp    %al,%dl
408be5:	75 ec                	jne    0x408bd3
408be7:	8b 01                	mov    (%ecx),%eax
408be9:	5a                   	pop    %edx
408bea:	c3                   	ret
408beb:	90                   	nop
408bec:	57                   	push   %edi
408bed:	56                   	push   %esi
408bee:	53                   	push   %ebx
408bef:	09 c0                	or     %eax,%eax
408bf1:	74 44                	je     0x408c37
408bf3:	09 d2                	or     %edx,%edx
408bf5:	74 40                	je     0x408c37
408bf7:	89 c3                	mov    %eax,%ebx
408bf9:	89 d7                	mov    %edx,%edi
408bfb:	32 c0                	xor    %al,%al
408bfd:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
408c02:	f2 ae                	repnz scas %es:(%edi),%al
408c04:	f7 d1                	not    %ecx
408c06:	49                   	dec    %ecx
408c07:	74 2e                	je     0x408c37
408c09:	89 ce                	mov    %ecx,%esi
408c0b:	89 df                	mov    %ebx,%edi
408c0d:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
408c12:	f2 ae                	repnz scas %es:(%edi),%al
408c14:	f7 d1                	not    %ecx
408c16:	29 f1                	sub    %esi,%ecx
408c18:	76 1d                	jbe    0x408c37
408c1a:	89 df                	mov    %ebx,%edi
408c1c:	8d 5e ff             	lea    -0x1(%esi),%ebx
408c1f:	89 d6                	mov    %edx,%esi
408c21:	ac                   	lods   %ds:(%esi),%al
408c22:	f2 ae                	repnz scas %es:(%edi),%al
408c24:	75 11                	jne    0x408c37
408c26:	89 c8                	mov    %ecx,%eax
408c28:	57                   	push   %edi
408c29:	89 d9                	mov    %ebx,%ecx
408c2b:	f3 a6                	repz cmpsb %es:(%edi),%ds:(%esi)
408c2d:	5f                   	pop    %edi
408c2e:	89 c1                	mov    %eax,%ecx
408c30:	75 ed                	jne    0x408c1f
408c32:	8d 47 ff             	lea    -0x1(%edi),%eax
408c35:	eb 02                	jmp    0x408c39
408c37:	31 c0                	xor    %eax,%eax
408c39:	5b                   	pop    %ebx
408c3a:	5e                   	pop    %esi
408c3b:	5f                   	pop    %edi
408c3c:	c3                   	ret
408c3d:	8d 40 00             	lea    0x0(%eax),%eax
408c40:	53                   	push   %ebx
408c41:	8b d8                	mov    %eax,%ebx
408c43:	83 c3 04             	add    $0x4,%ebx
408c46:	8b c3                	mov    %ebx,%eax
408c48:	e8 eb 9d ff ff       	call   0x402a38
408c4d:	89 18                	mov    %ebx,(%eax)
408c4f:	83 c0 04             	add    $0x4,%eax
408c52:	5b                   	pop    %ebx
408c53:	c3                   	ret
408c54:	51                   	push   %ecx
408c55:	89 04 24             	mov    %eax,(%esp)
408c58:	83 2c 24 04          	subl   $0x4,(%esp)
408c5c:	8b 04 24             	mov    (%esp),%eax
408c5f:	8b 00                	mov    (%eax),%eax
408c61:	83 e8 04             	sub    $0x4,%eax
408c64:	5a                   	pop    %edx
408c65:	c3                   	ret
408c66:	8b c0                	mov    %eax,%eax
408c68:	53                   	push   %ebx
408c69:	56                   	push   %esi
408c6a:	51                   	push   %ecx
408c6b:	8b d8                	mov    %eax,%ebx
408c6d:	85 db                	test   %ebx,%ebx
408c6f:	75 07                	jne    0x408c78
408c71:	33 c0                	xor    %eax,%eax
408c73:	89 04 24             	mov    %eax,(%esp)
408c76:	eb 1d                	jmp    0x408c95
408c78:	8b c3                	mov    %ebx,%eax
408c7a:	e8 b9 fd ff ff       	call   0x408a38
408c7f:	8b f0                	mov    %eax,%esi
408c81:	46                   	inc    %esi
408c82:	8b c6                	mov    %esi,%eax
408c84:	e8 b7 ff ff ff       	call   0x408c40
408c89:	8b ce                	mov    %esi,%ecx
408c8b:	8b d3                	mov    %ebx,%edx
408c8d:	e8 d2 fd ff ff       	call   0x408a64
408c92:	89 04 24             	mov    %eax,(%esp)
408c95:	8b 04 24             	mov    (%esp),%eax
408c98:	5a                   	pop    %edx
408c99:	5e                   	pop    %esi
408c9a:	5b                   	pop    %ebx
408c9b:	c3                   	ret
408c9c:	85 c0                	test   %eax,%eax
408c9e:	74 0a                	je     0x408caa
408ca0:	83 e8 04             	sub    $0x4,%eax
408ca3:	8b 10                	mov    (%eax),%edx
408ca5:	e8 be 9d ff ff       	call   0x402a68
408caa:	c3                   	ret
408cab:	90                   	nop
408cac:	53                   	push   %ebx
408cad:	56                   	push   %esi
408cae:	57                   	push   %edi
408caf:	83 c4 d8             	add    $0xffffffd8,%esp
408cb2:	8b d9                	mov    %ecx,%ebx
408cb4:	8b f2                	mov    %edx,%esi
408cb6:	8b f8                	mov    %eax,%edi
408cb8:	83 fb 1f             	cmp    $0x1f,%ebx
408cbb:	76 05                	jbe    0x408cc2
408cbd:	bb 1f 00 00 00       	mov    $0x1f,%ebx
408cc2:	8b d3                	mov    %ebx,%edx
408cc4:	4a                   	dec    %edx
408cc5:	8b c6                	mov    %esi,%eax
408cc7:	e8 28 37 00 00       	call   0x40c3f4
408ccc:	3c 01                	cmp    $0x1,%al
408cce:	75 01                	jne    0x408cd1
408cd0:	4b                   	dec    %ebx
408cd1:	8b c4                	mov    %esp,%eax
408cd3:	8b cb                	mov    %ebx,%ecx
408cd5:	8b d6                	mov    %esi,%edx
408cd7:	e8 88 fd ff ff       	call   0x408a64
408cdc:	c6 04 1c 00          	movb   $0x0,(%esp,%ebx,1)
408ce0:	8b c4                	mov    %esp,%eax
408ce2:	89 44 24 20          	mov    %eax,0x20(%esp)
408ce6:	c6 44 24 24 06       	movb   $0x6,0x24(%esp)
408ceb:	8d 54 24 20          	lea    0x20(%esp),%edx
408cef:	8b 04 bd 8c 51 45 00 	mov    0x45518c(,%edi,4),%eax
408cf6:	33 c9                	xor    %ecx,%ecx
408cf8:	e8 eb f3 ff ff       	call   0x4080e8
408cfd:	83 c4 28             	add    $0x28,%esp
408d00:	5f                   	pop    %edi
408d01:	5e                   	pop    %esi
408d02:	5b                   	pop    %ebx
408d03:	c3                   	ret
408d04:	53                   	push   %ebx
408d05:	8b 0d 1c 0d 46 00    	mov    0x460d1c,%ecx
408d0b:	83 39 00             	cmpl   $0x0,(%ecx)
408d0e:	74 0c                	je     0x408d1c
408d10:	8b 1d 1c 0d 46 00    	mov    0x460d1c,%ebx
408d16:	8b 1b                	mov    (%ebx),%ebx
408d18:	ff d3                	call   *%ebx
408d1a:	5b                   	pop    %ebx
408d1b:	c3                   	ret
408d1c:	b0 10                	mov    $0x10,%al
408d1e:	e8 95 9e ff ff       	call   0x402bb8
408d23:	5b                   	pop    %ebx
408d24:	c3                   	ret
408d25:	8d 40 00             	lea    0x0(%eax),%eax
408d28:	53                   	push   %ebx
408d29:	8b d8                	mov    %eax,%ebx
408d2b:	8b c3                	mov    %ebx,%eax
408d2d:	e8 3e b8 ff ff       	call   0x404570
408d32:	5b                   	pop    %ebx
408d33:	c3                   	ret
408d34:	55                   	push   %ebp
408d35:	8b ec                	mov    %esp,%ebp
408d37:	83 c4 94             	add    $0xffffff94,%esp
408d3a:	53                   	push   %ebx
408d3b:	33 db                	xor    %ebx,%ebx
408d3d:	89 5d ec             	mov    %ebx,-0x14(%ebp)
408d40:	53                   	push   %ebx
408d41:	56                   	push   %esi
408d42:	57                   	push   %edi
408d43:	89 c7                	mov    %eax,%edi
408d45:	89 ce                	mov    %ecx,%esi
408d47:	31 c0                	xor    %eax,%eax
408d49:	89 45 fc             	mov    %eax,-0x4(%ebp)
408d4c:	03 4d 10             	add    0x10(%ebp),%ecx
408d4f:	89 7d f8             	mov    %edi,-0x8(%ebp)
408d52:	31 c0                	xor    %eax,%eax
408d54:	89 45 f4             	mov    %eax,-0xc(%ebp)
408d57:	89 45 f0             	mov    %eax,-0x10(%ebp)
408d5a:	89 45 ec             	mov    %eax,-0x14(%ebp)
408d5d:	09 d2                	or     %edx,%edx
408d5f:	74 0d                	je     0x408d6e
408d61:	39 ce                	cmp    %ecx,%esi
408d63:	74 09                	je     0x408d6e
408d65:	ac                   	lods   %ds:(%esi),%al
408d66:	3c 25                	cmp    $0x25,%al
408d68:	74 0e                	je     0x408d78
408d6a:	aa                   	stos   %al,%es:(%edi)
408d6b:	4a                   	dec    %edx
408d6c:	75 f3                	jne    0x408d61
408d6e:	89 f8                	mov    %edi,%eax
408d70:	2b 45 f8             	sub    -0x8(%ebp),%eax
408d73:	e9 23 03 00 00       	jmp    0x40909b
408d78:	39 ce                	cmp    %ecx,%esi
408d7a:	74 f2                	je     0x408d6e
408d7c:	ac                   	lods   %ds:(%esi),%al
408d7d:	3c 25                	cmp    $0x25,%al
408d7f:	74 e9                	je     0x408d6a
408d81:	8d 5e fe             	lea    -0x2(%esi),%ebx
408d84:	89 5d e8             	mov    %ebx,-0x18(%ebp)
408d87:	88 45 e7             	mov    %al,-0x19(%ebp)
408d8a:	3c 2d                	cmp    $0x2d,%al
408d8c:	75 05                	jne    0x408d93
408d8e:	39 ce                	cmp    %ecx,%esi
408d90:	74 dc                	je     0x408d6e
408d92:	ac                   	lods   %ds:(%esi),%al
408d93:	e8 7e 00 00 00       	call   0x408e16
408d98:	3c 3a                	cmp    $0x3a,%al
408d9a:	75 0a                	jne    0x408da6
408d9c:	89 5d f4             	mov    %ebx,-0xc(%ebp)
408d9f:	39 ce                	cmp    %ecx,%esi
408da1:	74 cb                	je     0x408d6e
408da3:	ac                   	lods   %ds:(%esi),%al
408da4:	eb e1                	jmp    0x408d87
408da6:	89 5d e0             	mov    %ebx,-0x20(%ebp)
408da9:	bb ff ff ff ff       	mov    $0xffffffff,%ebx
408dae:	3c 2e                	cmp    $0x2e,%al
408db0:	75 0a                	jne    0x408dbc
408db2:	39 ce                	cmp    %ecx,%esi
408db4:	74 b8                	je     0x408d6e