摘要: 转眼之间,国庆7天长假就结束了,我也全宅在了父母那里。没有网络,我就开始翻硬盘,发现了以前从看雪上下载的一些CrackMe,很久没碰这些东西了,我也只能找个简单的玩玩了。输入的字符串存储在全局变量中,调用了两个子函数,比较它们的返回值。根据name算出一个值。根据Key算出一个值。验证步骤如下:1. 输入name和key2. check_name(name) == check_key(key)则成功上面两个函数逆出的代码如下:int check_name(const char* name){ int sum = 0; while(char c = *name++) { ... 阅读全文
posted @ 2013-10-08 20:23 avexer 阅读(1849) 评论(0) 推荐(0) 编辑
摘要: 多个线程读写同一个shared_ptr对象需要加锁(注意分清shared_ptr对象与shared_ptr管理的对象)。MutexLock mutex;shared_ptr globalPtr;void read(){ shared_ptr localPtr; { MutexLockGuard lock(mutex); localPtr = globalPtr; } // ...}void write(){ shared_ptr newPtr(new Foo()); { MutexLockGuard lock(mut... 阅读全文
posted @ 2013-10-08 07:26 avexer 阅读(272) 评论(0) 推荐(0) 编辑