欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

[原创]华途加密软件-剪贴板的算法

[原创]华途加密软件-剪贴板的算法

闲来无事,看了下华途剪贴板的算法如下:
其中a3是剪贴板的格式
a1是数据块
a2是数据块长度
int __cdecl sub_1001C9E0(int a1, unsigned int a2, int a3)
{
  int result; // eax@1
  unsigned int l; // [sp+4h] [bp-10h]@14
  unsigned int k; // [sp+8h] [bp-Ch]@10
  unsigned int j; // [sp+Ch] [bp-8h]@6
  unsigned int i; // [sp+10h] [bp-4h]@2
  result = a3;
  switch ( a3 )
  {
    case 1:
      for ( i = 0; i < a2 - 1; ++i )
      {
        result = i + a1;
        *(_BYTE *)(i + a1) ^= 0xC3u;
      }
      break;
    case 13:
      for ( j = 0; j < a2 - 2; ++j )
      {
        *(_BYTE *)(j + a1) ^= 0xC3u;
        result = j + 1;
      }
      break;
    case 7:
      for ( k = 0; ; ++k )
      {
        result = a2 - 1;
        if ( k >= a2 - 1 )
          break;
        *(_BYTE *)(k + a1) ^= 0xC3u;
      }
      break;
    case 3:
    case 14:
      return result;
    default:
      for ( l = 0; l < a2; ++l )
      {
        result = l + a1;
        *(_BYTE *)(l + a1) ^= 0xC3u;
      }
      break;
  }
  return result;
}

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途。
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功