在经历股市多年的大起大落、大赚大赔之后。痛定思痛。深切感到在金融市场拼搏。必须建立健全交易纪律守则,严格运行。

这套完整的纪律守则,就是“交易系统”。

在很多方面,它与一般的专家系统相近似。

专家系统的最佳开发工具,是Erlang下的Eresye。它的缺点是。其它语言如C、Python对它的调用不方便。

假设主程序是C或Python,一般需将Eresye做成server。通过sockets通讯调用,比較麻烦。

在简单有用方面,Prolog是第二佳的开发工具。

假设仅仅採用其推理机功能,Visual Prolog 也是不错的选择。

我用的是Visual Prolog 5.2。

这是个免费软件,其编译的EXE、DLL文件执行之始,会弹出一个窗体:

为了不显示这个窗体,我先后试过几次,在5.0、5.1和旧版5.2下均获成功。

第一次的破解,是在Win98下用动态跟踪工具(忘记了名字),无休无眠地追了22个小时,找到关键分支点,绕过了窗体弹出指令。

上一次的破解,是在Win2000下用个静态分析工具(好像叫exescope。记不清了),看到exe文件里有两个函数调用。一个好像是openwindow,还有一个好像是closewindow,以及相相应的机器码指令。然后。在ultraEdit里,用CloseWindow的机器码。覆盖OpenWindow的机器码。于是。任务完毕。

这都多年前的事情。详细细节已记不清。

第一次的动态跟踪,事后曾写过篇幅庞大、十分具体的操作过程记录。但不知何故后来丢失,可惜。

以后的破解过程,都没做记录。

这次破解,仅仅好又一次開始,摸索前行。

一、准备工具

用google、baidu等,以“静态查看EXE"等句子搜索,找到几个软件,试过后,确定用PEbrowse。

又搜到机器码编辑器010Editor,工具备齐了(UltraEdit 为了收费会自己主动罢工,等等。非常讨厌,好多年不再用它)。

二、准备目标文件

用Visual Prolog 自己主动生成并编译一个空白项目,比方 learn01.exe。

三、使用PEbrowse

1、打开目标文件learn01.exe

2、展开左栏的Sections

3、双击当中的对象.text。右栏出现反汇编的代码

4、Ctrl-F键,搜索”messagebox“,找到:

0x44329F: FF1560044900           CALL        DWORD PTR [USER32.DLL!MessageBoxA]; (0x490460)

5、记住机器码:FF1560044900

6、Ctrl-F键,搜索”destroywindow“,找到:

0x431D7E: FF153C034900           CALL        DWORD PTR [USER32.DLL!DestroyWindow]; (0x49033C)

7、记住机器码:FF153C034900

8、关闭 PEbrowse。

四、使用 010Editor

1、打开目标文件learn01.exe

2、Ctrl-F键。打开Find窗体

在 Type 下拉框选择 Hex Bytes (H)

在 Value 文本框填入 FF1560044900

3、button Find All,会在编辑器中找到第一处的 FF1560044900

4、按键 F3 共计3次,定位于第4处 FF1560044900

5、把 FF1560044900 改为 FF153C034900

6、保存文件learn01.exe

7、执行learn01.exe,提示窗体Attention不再弹出。

注意!

确定第4处机器码,是逐次实验的结果。即:第1处 FF1560044900 改为 FF153C034900后。存盘。并执行。未达标,则恢复第1处代码,再改动第2处代码,存盘执行,……直至改动第4处代码。

再次轻度破解EXE文件的更多相关文章

  1. c#:Reflector+Reflexil 修改编译后的dll/exe文件

    不知道大家有没有这样的经历:现场实施时测试出一个bug,明明知道某个dll/exe文件只要修改一二行代码即可,但手头没有开发环境,紧急情况下,可以用reflector + reflexil 临时直接修 ...

  2. [原创]Matlab之GUI生成EXE文件

    近期因为项目需要,简化流程,写了一些Matlab程序,并配备上了GUI界面使其简单易用.然后问题来了,可移植性.使用Matlab生成EXE文件(可以封装很多的function),然后在一台安装有Mat ...

  3. 关于win7系统中所有exe文件都被以word方式打开的解决方法

    手残一刻,电脑桌面所有的软件快捷方式都变成了word的打开方式,鼠标右键选中某exe文件也没打开方式那个选项, 第一次尝试: 在控制面板——默认程序中修改默认打开方式,但是没有找到解决方法

  4. 如何用DELPHI编程修改外部EXE文件的版本信

    右击里面有修改 点开直接修改就可以了吧. DELPHI 里程序的版本信息怎么是灰色的,无法更改 耐心读以下说明,应该能解决你的问题,如果不能解决,请Hi我~ 如何给自己的dll文件添加版本信息呢? 首 ...

  5. 让我们写的程序生成单个的exe文件(C#winform程序举例)

    一准备: 首先你要有自己写好的代码程序 然后你需要在百度搜索Enigma Virtual Box 6.90并下载,运行后可看到如何的界面 注意:首次启动是英文的,更改语言后再次启动就是中文了. 二制作 ...

  6. 如何在Ubuntu安装*.exe文件

    下载及安装 若你使用 Debian 或者 Ubuntu 之类的发行版,只需要一个命令即可完成安装: apt-get install wine 若你使用的为其他发行版,请访问 http://winehq ...

  7. 用JSmooth制作java jar文件的可运行exe文件教程【图文】

    这是我之前在个人博客3yj上面写的一篇文章,如今转载过来,原文地址 (这不是广告哦) 几年前,刚接触java的是,就想用一些方法把自己的劳动果实保护起来,曾经也用过非常多这种工具,有一个特别好用,今天 ...

  8. 使用JSmooth制造java jar文件可以运行exe文件教程图像

    这是我之前在个人博客3yj上面写的一篇文章,如今转载过来,原文地址 (这不是广告哦) 几年前,刚接触java的是.就想用一些方法把自己的劳动果实保护起来,曾经也用过非常多这种工具.有一个特别好用,今天 ...

  9. 反编译python打包的exe文件

    目录 1.前言 2.使用环境 3.还原过程 4.号外 5.exe文件和所用到的反编译工具 6.参考 7.去签名(补漏) 前言 拿到了利用驱动人生进行传播的病毒样本,发现是python打包成的exe文件 ...

随机推荐

  1. Python读写Redis数据库

    import redis class Database: def __init__(self): self.host = 'localhost' self.port = 6379 def write( ...

  2. Http 与 Socket 区别

    HTTP:超文本传输协议,首先它是一个协议,并且是基于TCP/IP协议基础之上的应用层协议.TCP/IP协议是传输层协议,主要解决数据如何在网络中传输,HTTP是应用层协议,主要解决如何包装数据.HT ...

  3. 怎么清除SVN密码,以及重置eclipse中svn插件密码

    如何清除SVN密码,以及重置eclipse中svn插件密码? 清除SVN客户端密码方法: 邮件选择TortoiseSVN中的settings选项---Saved Data---右边会发现有个Authe ...

  4. dump datafile block

    Oracle dump datafile block有两种方式: 然后根据block id执行dump 命令: SQL> alter system dump datafile 4 block 2 ...

  5. 改善C#程序的50种方法

    为什么程序已经可以正常工作了,我们还要改变它们呢?答案就是我们可以让它们变得更好.我们常常会改变所使用的工具或者语言,因为新的工具或者语言更富生产力.如果固守旧有的习惯,我们将得不到期望的结果.对于C ...

  6. [FJSC2014]滑行

    [题目描述] 首长NOI惨跪,于是去念文化课了.现在,他面对一道物理题. 现在有一个小滑块可以在地面上滑行,地面上被划分成不同的区域,使得小滑块在不同的区域内部有一个不同的速度上限. 小滑块在(0,0 ...

  7. SIFT算法:确定特征点方向

    SIFT算法:DoG尺度空间生产  SIFT算法:KeyPoint找寻.定位与优化 SIFT算法:确定特征点方向  SIFT算法:特征描述子 目录: 1.计算邻域梯度方向和幅值 2.计算梯度方向直方图 ...

  8. Mac 下配置XAMPP

    1:去官方下载 2:安装dmg 3:安装完成后, 网页上提示, 要设置相应的密码, 设置完成. 4:打开对应的app程序, 把 mysql Database运行起来, 不然, 网页上看到的就是未运行状 ...

  9. HDOJ -- 1015

    1.DFS #include<cmath> #include<cstdio> #include<cstdlib> #include<string> #i ...

  10. 浅谈pageobject模式

    先来看两段代码 代码1: package com.zlshuo.selenium.nonaming.pageobject; /** * @author leshuo * @version 2014年5 ...