设为首页收藏本站帮助中心
查看: 540|回复: 0
收起左侧

易语言实现破坏一个字节集数据 指定位置间隔写入随机字节值,(返回破坏字节数,整数型)

[复制链接]
发表于 2020-4-16 18:54:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?加入我们

x
1.png

  1. .版本 2
  2. .支持库 spec

  3. .程序集 程序集1

  4. .子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码

  5. 置随机数种子 ()
  6. _临时子程序 ()  ' 在初始化代码执行完毕后调用测试代码
  7. 返回 (0)  ' 可以根据您的需要返回任意数值

  8. .子程序 _临时子程序
  9. .局部变量 字节集, 字节集

  10. ' 本名称子程序用作测试程序用,仅在开发及调试环境中有效,编译发布程序前将被系统自动清空,请将所有用作测试的临时代码放在本子程序中。 ***注意不要修改本子程序的名称、参数及返回值类型。
  11. 字节集 = 取空白字节集 (256)
  12. 输出调试文本 (字节集_破坏 (字节集, 64, 8))
  13. 调试输出 (字节集)

  14. .子程序 字节集_破坏, 整数型, , 破坏一个字节集数据,在指定位置间隔写入随机值以制作损坏的程序、压缩包等文件,成功返回破坏字节数,失败返回0
  15. .参数 数据, 字节集, 参考, 提供待破坏的字节集变量
  16. .参数 间隔, 整数型, , 例如该值为100,则在第100、200字节...处写入随机值,值越小破坏程度越大,1为全部填充随机,必须大于等于1
  17. .参数 偏移, 整数型, 可空, 开头指定字节数不做破坏处理,必须大于等于0
  18. .局部变量 长度, 整数型
  19. .局部变量 指针, 整数型
  20. .局部变量 随机值, 字节型
  21. .局部变量 破坏字节数, 整数型

  22. 长度 = 取字节集长度 (数据)
  23. .如果真 (间隔 ≤ 0 或 长度 ≤ 0 或 间隔 + 偏移 > 长度 或 偏移 < 0)
  24.     返回 (0)
  25. .如果真结束
  26. 指针 = 间隔 + 偏移
  27. .判断循环首 (真)
  28.     .如果真 (指针 > 长度)
  29.         跳出循环 ()
  30.     .如果真结束
  31.     .循环判断首 ()
  32.         随机值 = 取随机数 (0, 255)
  33.     .循环判断尾 (随机值 = 数据 [指针])
  34.     数据 [指针] = 随机值
  35.     破坏字节数 = 破坏字节数 + 1
  36.     指针 = 指针 + 间隔
  37. .判断循环尾 ()
  38. 返回 (破坏字节数)

复制代码

相关帖子

这个小可爱很神秘,什么都没留下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则