4a6ce5:	8b f9                	mov    %ecx,%edi
4a6ce7:	89 7c 24 10          	mov    %edi,0x10(%esp)
4a6ceb:	8b ef                	mov    %edi,%ebp
4a6ced:	8a 07                	mov    (%edi),%al
4a6cef:	84 c0                	test   %al,%al
4a6cf1:	74 58                	je     0x4a6d4b
4a6cf3:	8a c8                	mov    %al,%cl
4a6cf5:	84 c9                	test   %cl,%cl
4a6cf7:	8b f2                	mov    %edx,%esi
4a6cf9:	74 37                	je     0x4a6d32
4a6cfb:	8b fd                	mov    %ebp,%edi
4a6cfd:	2b fa                	sub    %edx,%edi
4a6cff:	8a 1e                	mov    (%esi),%bl
4a6d01:	84 db                	test   %bl,%bl
4a6d03:	74 29                	je     0x4a6d2e
4a6d05:	8a 04 37             	mov    (%edi,%esi,1),%al
4a6d08:	3a c3                	cmp    %bl,%al
4a6d0a:	74 19                	je     0x4a6d25
4a6d0c:	25 ff 00 00 00       	and    $0xff,%eax
4a6d11:	81 e3 ff 00 00 00    	and    $0xff,%ebx
4a6d17:	8a 80 40 9f 50 00    	mov    0x509f40(%eax),%al
4a6d1d:	3a 83 40 9f 50 00    	cmp    0x509f40(%ebx),%al
4a6d23:	75 09                	jne    0x4a6d2e
4a6d25:	8a 44 37 01          	mov    0x1(%edi,%esi,1),%al
4a6d29:	46                   	inc    %esi
4a6d2a:	84 c0                	test   %al,%al
4a6d2c:	75 d1                	jne    0x4a6cff
4a6d2e:	8b 7c 24 10          	mov    0x10(%esp),%edi
4a6d32:	80 3e 00             	cmpb   $0x0,(%esi)
4a6d35:	74 1d                	je     0x4a6d54
4a6d37:	84 c9                	test   %cl,%cl
4a6d39:	7d 08                	jge    0x4a6d43
4a6d3b:	8a 45 01             	mov    0x1(%ebp),%al
4a6d3e:	45                   	inc    %ebp
4a6d3f:	84 c0                	test   %al,%al
4a6d41:	74 08                	je     0x4a6d4b
4a6d43:	8a 4d 01             	mov    0x1(%ebp),%cl
4a6d46:	45                   	inc    %ebp
4a6d47:	84 c9                	test   %cl,%cl
4a6d49:	75 aa                	jne    0x4a6cf5
4a6d4b:	5f                   	pop    %edi
4a6d4c:	5e                   	pop    %esi
4a6d4d:	5d                   	pop    %ebp
4a6d4e:	83 c8 ff             	or     $0xffffffff,%eax
4a6d51:	5b                   	pop    %ebx
4a6d52:	59                   	pop    %ecx
4a6d53:	c3                   	ret
4a6d54:	8b c5                	mov    %ebp,%eax
4a6d56:	2b c7                	sub    %edi,%eax
4a6d58:	5f                   	pop    %edi
4a6d59:	5e                   	pop    %esi
4a6d5a:	5d                   	pop    %ebp
4a6d5b:	5b                   	pop    %ebx
4a6d5c:	59                   	pop    %ecx
4a6d5d:	c3                   	ret
4a6d5e:	90                   	nop
4a6d5f:	90                   	nop
4a6d60:	51                   	push   %ecx
4a6d61:	8b c1                	mov    %ecx,%eax
4a6d63:	53                   	push   %ebx
4a6d64:	55                   	push   %ebp
4a6d65:	56                   	push   %esi
4a6d66:	8a 18                	mov    (%eax),%bl
4a6d68:	57                   	push   %edi
4a6d69:	84 db                	test   %bl,%bl
4a6d6b:	89 44 24 10          	mov    %eax,0x10(%esp)
4a6d6f:	74 3f                	je     0x4a6db0
4a6d71:	8a cb                	mov    %bl,%cl
4a6d73:	84 c9                	test   %cl,%cl
4a6d75:	8b f2                	mov    %edx,%esi
4a6d77:	74 1e                	je     0x4a6d97
4a6d79:	8b f8                	mov    %eax,%edi
4a6d7b:	2b fa                	sub    %edx,%edi
4a6d7d:	8a 1e                	mov    (%esi),%bl
4a6d7f:	84 db                	test   %bl,%bl
4a6d81:	74 14                	je     0x4a6d97
4a6d83:	0f be 2c 37          	movsbl (%edi,%esi,1),%ebp
4a6d87:	0f be db             	movsbl %bl,%ebx
4a6d8a:	2b eb                	sub    %ebx,%ebp
4a6d8c:	75 09                	jne    0x4a6d97
4a6d8e:	8a 5c 37 01          	mov    0x1(%edi,%esi,1),%bl
4a6d92:	46                   	inc    %esi
4a6d93:	84 db                	test   %bl,%bl
4a6d95:	75 e6                	jne    0x4a6d7d
4a6d97:	80 3e 00             	cmpb   $0x0,(%esi)
4a6d9a:	74 1d                	je     0x4a6db9
4a6d9c:	84 c9                	test   %cl,%cl
4a6d9e:	7d 08                	jge    0x4a6da8
4a6da0:	8a 48 01             	mov    0x1(%eax),%cl
4a6da3:	40                   	inc    %eax
4a6da4:	84 c9                	test   %cl,%cl
4a6da6:	74 08                	je     0x4a6db0
4a6da8:	8a 48 01             	mov    0x1(%eax),%cl
4a6dab:	40                   	inc    %eax
4a6dac:	84 c9                	test   %cl,%cl
4a6dae:	75 c3                	jne    0x4a6d73
4a6db0:	5f                   	pop    %edi
4a6db1:	5e                   	pop    %esi
4a6db2:	5d                   	pop    %ebp
4a6db3:	83 c8 ff             	or     $0xffffffff,%eax
4a6db6:	5b                   	pop    %ebx
4a6db7:	59                   	pop    %ecx
4a6db8:	c3                   	ret
4a6db9:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4a6dbd:	5f                   	pop    %edi
4a6dbe:	5e                   	pop    %esi
4a6dbf:	5d                   	pop    %ebp
4a6dc0:	2b c1                	sub    %ecx,%eax
4a6dc2:	5b                   	pop    %ebx
4a6dc3:	59                   	pop    %ecx
4a6dc4:	c3                   	ret
4a6dc5:	90                   	nop
4a6dc6:	90                   	nop
4a6dc7:	90                   	nop
4a6dc8:	90                   	nop
4a6dc9:	90                   	nop
4a6dca:	90                   	nop
4a6dcb:	90                   	nop
4a6dcc:	90                   	nop
4a6dcd:	90                   	nop
4a6dce:	90                   	nop
4a6dcf:	90                   	nop
4a6dd0:	8b 44 24 08          	mov    0x8(%esp),%eax
4a6dd4:	55                   	push   %ebp
4a6dd5:	8b 6c 24 10          	mov    0x10(%esp),%ebp
4a6dd9:	56                   	push   %esi
4a6dda:	57                   	push   %edi
4a6ddb:	b9 00 01 00 00       	mov    $0x100,%ecx
4a6de0:	8b fd                	mov    %ebp,%edi
4a6de2:	8d 70 ff             	lea    -0x1(%eax),%esi
4a6de5:	f3 ab                	rep stos %eax,%es:(%edi)
4a6de7:	33 c9                	xor    %ecx,%ecx
4a6de9:	85 f6                	test   %esi,%esi
4a6deb:	7e 15                	jle    0x4a6e02
4a6ded:	8b 7c 24 10          	mov    0x10(%esp),%edi
4a6df1:	8b c6                	mov    %esi,%eax
4a6df3:	33 d2                	xor    %edx,%edx
4a6df5:	8a 14 39             	mov    (%ecx,%edi,1),%dl
4a6df8:	41                   	inc    %ecx
4a6df9:	89 44 95 00          	mov    %eax,0x0(%ebp,%edx,4)
4a6dfd:	48                   	dec    %eax
4a6dfe:	3b ce                	cmp    %esi,%ecx
4a6e00:	7c f1                	jl     0x4a6df3
4a6e02:	5f                   	pop    %edi
4a6e03:	5e                   	pop    %esi
4a6e04:	5d                   	pop    %ebp
4a6e05:	c3                   	ret
4a6e06:	90                   	nop
4a6e07:	90                   	nop
4a6e08:	90                   	nop
4a6e09:	90                   	nop
4a6e0a:	90                   	nop
4a6e0b:	90                   	nop
4a6e0c:	90                   	nop
4a6e0d:	90                   	nop
4a6e0e:	90                   	nop
4a6e0f:	90                   	nop
4a6e10:	8b 54 24 0c          	mov    0xc(%esp),%edx
4a6e14:	56                   	push   %esi
4a6e15:	8b 74 24 0c          	mov    0xc(%esp),%esi
4a6e19:	8d 46 fe             	lea    -0x2(%esi),%eax
4a6e1c:	89 74 b2 fc          	mov    %esi,-0x4(%edx,%esi,4)
4a6e20:	85 c0                	test   %eax,%eax
4a6e22:	8d 4e ff             	lea    -0x1(%esi),%ecx
4a6e25:	7c 65                	jl     0x4a6e8c
4a6e27:	53                   	push   %ebx
4a6e28:	55                   	push   %ebp
4a6e29:	8b 6c 24 18          	mov    0x18(%esp),%ebp
4a6e2d:	57                   	push   %edi
4a6e2e:	8d 3c 82             	lea    (%edx,%eax,4),%edi
4a6e31:	89 7c 24 18          	mov    %edi,0x18(%esp)
4a6e35:	8b 7c 24 14          	mov    0x14(%esp),%edi
4a6e39:	eb 04                	jmp    0x4a6e3f
4a6e3b:	8b 54 24 1c          	mov    0x1c(%esp),%edx
4a6e3f:	3b c1                	cmp    %ecx,%eax
4a6e41:	7e 14                	jle    0x4a6e57
4a6e43:	8b d8                	mov    %eax,%ebx
4a6e45:	2b dd                	sub    %ebp,%ebx
4a6e47:	03 de                	add    %esi,%ebx
4a6e49:	8b 54 9a fc          	mov    -0x4(%edx,%ebx,4),%edx
4a6e4d:	8b d8                	mov    %eax,%ebx
4a6e4f:	2b d9                	sub    %ecx,%ebx
4a6e51:	3b d3                	cmp    %ebx,%edx
4a6e53:	7c 22                	jl     0x4a6e77
4a6e55:	3b c1                	cmp    %ecx,%eax
4a6e57:	7d 02                	jge    0x4a6e5b
4a6e59:	8b c8                	mov    %eax,%ecx
4a6e5b:	85 c9                	test   %ecx,%ecx
4a6e5d:	8b e8                	mov    %eax,%ebp
4a6e5f:	7c 12                	jl     0x4a6e73
4a6e61:	8a 1c 39             	mov    (%ecx,%edi,1),%bl
4a6e64:	8b d1                	mov    %ecx,%edx
4a6e66:	2b d0                	sub    %eax,%edx
4a6e68:	03 d7                	add    %edi,%edx
4a6e6a:	3a 5c 32 ff          	cmp    -0x1(%edx,%esi,1),%bl
4a6e6e:	75 03                	jne    0x4a6e73
4a6e70:	49                   	dec    %ecx
4a6e71:	79 ee                	jns    0x4a6e61
4a6e73:	8b d0                	mov    %eax,%edx
4a6e75:	2b d1                	sub    %ecx,%edx
4a6e77:	8b 5c 24 18          	mov    0x18(%esp),%ebx
4a6e7b:	48                   	dec    %eax
4a6e7c:	89 13                	mov    %edx,(%ebx)
4a6e7e:	83 eb 04             	sub    $0x4,%ebx
4a6e81:	85 c0                	test   %eax,%eax
4a6e83:	89 5c 24 18          	mov    %ebx,0x18(%esp)
4a6e87:	7d b2                	jge    0x4a6e3b
4a6e89:	5f                   	pop    %edi
4a6e8a:	5d                   	pop    %ebp
4a6e8b:	5b                   	pop    %ebx
4a6e8c:	5e                   	pop    %esi
4a6e8d:	c3                   	ret
4a6e8e:	90                   	nop
4a6e8f:	90                   	nop
4a6e90:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4a6e94:	81 ec 08 04 00 00    	sub    $0x408,%esp
4a6e9a:	8d 44 24 08          	lea    0x8(%esp),%eax
4a6e9e:	53                   	push   %ebx
4a6e9f:	55                   	push   %ebp
4a6ea0:	56                   	push   %esi
4a6ea1:	8b b4 24 1c 04 00 00 	mov    0x41c(%esp),%esi
4a6ea8:	57                   	push   %edi
4a6ea9:	50                   	push   %eax
4a6eaa:	56                   	push   %esi
4a6eab:	51                   	push   %ecx
4a6eac:	e8 5f ff ff ff       	call   0x4a6e10
4a6eb1:	83 c4 0c             	add    $0xc,%esp
4a6eb4:	85 f6                	test   %esi,%esi
4a6eb6:	7e 0d                	jle    0x4a6ec5
4a6eb8:	8b bc 24 24 04 00 00 	mov    0x424(%esp),%edi
4a6ebf:	8b ce                	mov    %esi,%ecx
4a6ec1:	8b c6                	mov    %esi,%eax
4a6ec3:	f3 ab                	rep stos %eax,%es:(%edi)
4a6ec5:	8d 6e ff             	lea    -0x1(%esi),%ebp
4a6ec8:	33 ff                	xor    %edi,%edi
4a6eca:	85 ed                	test   %ebp,%ebp
4a6ecc:	7c 54                	jl     0x4a6f22
4a6ece:	8b c6                	mov    %esi,%eax
4a6ed0:	8d 5d 01             	lea    0x1(%ebp),%ebx
4a6ed3:	8d 54 ac 18          	lea    0x18(%esp,%ebp,4),%edx
4a6ed7:	2b c5                	sub    %ebp,%eax
4a6ed9:	89 54 24 10          	mov    %edx,0x10(%esp)
4a6edd:	48                   	dec    %eax
4a6ede:	89 5c 24 14          	mov    %ebx,0x14(%esp)
4a6ee2:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4a6ee6:	39 19                	cmp    %ebx,(%ecx)
4a6ee8:	75 20                	jne    0x4a6f0a
4a6eea:	3b f8                	cmp    %eax,%edi
4a6eec:	7d 1c                	jge    0x4a6f0a
4a6eee:	8b 94 24 24 04 00 00 	mov    0x424(%esp),%edx
4a6ef5:	8b c8                	mov    %eax,%ecx
4a6ef7:	2b cf                	sub    %edi,%ecx
4a6ef9:	8d 14 ba             	lea    (%edx,%edi,4),%edx
4a6efc:	03 f9                	add    %ecx,%edi
4a6efe:	39 32                	cmp    %esi,(%edx)
4a6f00:	75 02                	jne    0x4a6f04
4a6f02:	89 02                	mov    %eax,(%edx)
4a6f04:	83 c2 04             	add    $0x4,%edx
4a6f07:	49                   	dec    %ecx
4a6f08:	75 f4                	jne    0x4a6efe
4a6f0a:	8b 54 24 10          	mov    0x10(%esp),%edx
4a6f0e:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4a6f12:	83 ea 04             	sub    $0x4,%edx
4a6f15:	4b                   	dec    %ebx
4a6f16:	40                   	inc    %eax
4a6f17:	49                   	dec    %ecx
4a6f18:	89 54 24 10          	mov    %edx,0x10(%esp)
4a6f1c:	89 4c 24 14          	mov    %ecx,0x14(%esp)
4a6f20:	75 c0                	jne    0x4a6ee2
4a6f22:	8d 56 fe             	lea    -0x2(%esi),%edx
4a6f25:	85 d2                	test   %edx,%edx
4a6f27:	7c 1f                	jl     0x4a6f48
4a6f29:	8d 4c 24 18          	lea    0x18(%esp),%ecx
4a6f2d:	8b c5                	mov    %ebp,%eax
4a6f2f:	42                   	inc    %edx
4a6f30:	8b 19                	mov    (%ecx),%ebx
4a6f32:	8b fe                	mov    %esi,%edi
4a6f34:	2b fb                	sub    %ebx,%edi
4a6f36:	8b 9c 24 24 04 00 00 	mov    0x424(%esp),%ebx
4a6f3d:	83 c1 04             	add    $0x4,%ecx
4a6f40:	89 44 bb fc          	mov    %eax,-0x4(%ebx,%edi,4)
4a6f44:	48                   	dec    %eax
4a6f45:	4a                   	dec    %edx
4a6f46:	75 e8                	jne    0x4a6f30
4a6f48:	5f                   	pop    %edi
4a6f49:	5e                   	pop    %esi
4a6f4a:	5d                   	pop    %ebp
4a6f4b:	5b                   	pop    %ebx
4a6f4c:	81 c4 08 04 00 00    	add    $0x408,%esp
4a6f52:	c3                   	ret
4a6f53:	90                   	nop
4a6f54:	90                   	nop
4a6f55:	90                   	nop
4a6f56:	90                   	nop
4a6f57:	90                   	nop
4a6f58:	90                   	nop
4a6f59:	90                   	nop
4a6f5a:	90                   	nop
4a6f5b:	90                   	nop
4a6f5c:	90                   	nop
4a6f5d:	90                   	nop
4a6f5e:	90                   	nop
4a6f5f:	90                   	nop
4a6f60:	81 ec 04 08 00 00    	sub    $0x804,%esp
4a6f66:	53                   	push   %ebx
4a6f67:	8b 9c 24 14 08 00 00 	mov    0x814(%esp),%ebx
4a6f6e:	55                   	push   %ebp
4a6f6f:	56                   	push   %esi
4a6f70:	57                   	push   %edi
4a6f71:	8b bc 24 24 08 00 00 	mov    0x824(%esp),%edi
4a6f78:	8d 44 24 14          	lea    0x14(%esp),%eax
4a6f7c:	50                   	push   %eax
4a6f7d:	57                   	push   %edi
4a6f7e:	53                   	push   %ebx
4a6f7f:	e8 4c fe ff ff       	call   0x4a6dd0
4a6f84:	8d 8c 24 20 04 00 00 	lea    0x420(%esp),%ecx
4a6f8b:	51                   	push   %ecx
4a6f8c:	57                   	push   %edi
4a6f8d:	53                   	push   %ebx
4a6f8e:	e8 fd fe ff ff       	call   0x4a6e90
4a6f93:	8b 8c 24 34 08 00 00 	mov    0x834(%esp),%ecx
4a6f9a:	83 c4 18             	add    $0x18,%esp
4a6f9d:	33 c0                	xor    %eax,%eax
4a6f9f:	2b cf                	sub    %edi,%ecx
4a6fa1:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4a6fa5:	78 4b                	js     0x4a6ff2
4a6fa7:	8b ac 24 18 08 00 00 	mov    0x818(%esp),%ebp
4a6fae:	8d 4f ff             	lea    -0x1(%edi),%ecx
4a6fb1:	85 c9                	test   %ecx,%ecx
4a6fb3:	7c 40                	jl     0x4a6ff5
4a6fb5:	8d 34 28             	lea    (%eax,%ebp,1),%esi
4a6fb8:	8a 14 19             	mov    (%ecx,%ebx,1),%dl
4a6fbb:	3a 14 0e             	cmp    (%esi,%ecx,1),%dl
4a6fbe:	75 05                	jne    0x4a6fc5
4a6fc0:	49                   	dec    %ecx
4a6fc1:	78 32                	js     0x4a6ff5
4a6fc3:	eb f3                	jmp    0x4a6fb8
4a6fc5:	85 c9                	test   %ecx,%ecx
4a6fc7:	7c 2c                	jl     0x4a6ff5
4a6fc9:	8d 34 01             	lea    (%ecx,%eax,1),%esi
4a6fcc:	33 d2                	xor    %edx,%edx
4a6fce:	8a 14 2e             	mov    (%esi,%ebp,1),%dl
4a6fd1:	8b 54 94 14          	mov    0x14(%esp,%edx,4),%edx
4a6fd5:	2b d7                	sub    %edi,%edx
4a6fd7:	8d 54 0a 01          	lea    0x1(%edx,%ecx,1),%edx
4a6fdb:	8b 8c 8c 14 04 00 00 	mov    0x414(%esp,%ecx,4),%ecx
4a6fe2:	3b d1                	cmp    %ecx,%edx
4a6fe4:	7e 02                	jle    0x4a6fe8
4a6fe6:	8b ca                	mov    %edx,%ecx
4a6fe8:	03 c1                	add    %ecx,%eax