首页
社区
课程
招聘
[求助][求助]C++
发表于: 2012-4-23 19:33 6449

[求助][求助]C++

2012-4-23 19:33
6449
v11 = __PAIR__(v9, v10)
            + v46
            + __PAIR__(((v9 >> 31) | v10) + __CFADD__(v9, v9 ^ v10) + (v9 >> 31) + (v10 ^ v9), v9 + (v9 ^ v10));

上面语句什么意思,不会C++ 翻译成delphi或者VB怎么写。
全代码如下:
v33 = (a3 - 8) / 8;
      do
      {
        v9 = *(_DWORD *)(v3 + 4);
        v10 = *(_DWORD *)v3;
        v44 ^= v9;
        v42 ^= *(_DWORD *)v3;
        v3 += 8;
        v11 = __PAIR__(v9, v10)
            + v46
            + __PAIR__(((v9 >> 31) | v10) + __CFADD__(v9, v9 ^ v10) + (v9 >> 31) + (v10 ^ v9), v9 + (v9 ^ v10));
        v8 = v11 ^ v46;
        v7 = HIDWORD(v11) ^ HIDWORD(v46);
        v12 = v33 == 1;
        v46 ^= v11;
        --v33;
      }
      while ( !v12 );
      v5 = v37;
      v6 = a3;

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (11)
雪    币: 316
活跃值: (128)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
2
不会,求高人
2012-4-23 19:43
0
雪    币: 183
活跃值: (55)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
强大的F5啊!!
2012-4-23 20:57
0
雪    币: 136
活跃值: (429)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
4
呵呵,就是看不懂那个语句
2012-4-23 21:51
0
雪    币: 297
活跃值: (265)
能力值: ( LV4,RANK:55 )
在线值:
发帖
回帖
粉丝
5
结合反汇编看看能不能判断出局部变量或参数的变量类型或是结构啥的再去理解,单看这个,我艹这特么是啥
2012-4-23 21:55
0
雪    币: 89
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
能读懂相关的运算,但是不知道程序想干嘛。。。
2012-4-23 22:07
0
雪    币: 136
活跃值: (429)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
7
__PAIR__是什么意思
__CFADD__应该是相当于汇编中的adc
2012-4-23 22:38
0
雪    币: 144
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
__PAIR__ 经常看见。。。好像是和64位数有关
不知道对不对
2012-4-23 22:41
0
雪    币: 227
活跃值: (109)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
这代码。。看得真蛋疼。
就这么一点也不知道是要干嘛的
2012-4-23 22:45
0
雪    币: 89
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
感觉贴出来的代码还是不够多呀
我查了一下几个东西
#define HIDWORD(x) (*((_DWORD*)&(x)+1))

关于__PAIR__
This class couples together a pair of values, which may be of different types (T1 and T2). The individual values can be accessed through the public members first and second. The class is defined as: template <class T1, class T2> struct pair { typedef T1 first_type; typedef T2 second_type; T1 first; T2 second; pair() : first(T1()), second(T2()) {} pair(const T1& x, const T2& y) : first(x), second(y) {} template <class U, class V> pair (const pair<U,V> &p) : first(p.first), second(p.second) { } }
代码多点,应该还是能够读懂的
2012-4-23 23:08
0
雪    币: 17
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
function __PAIR__(High, Low:DWORD):Int64;
begin
  result := (High shl ( sizeof(High) * 8) ) or Low;
end;

function __CFADD__(V1, V2:DWORD):DWORD;
begin
  result :=  V1 + V2;
end;

v11 = __PAIR__(v9, v10)
            + v46
            + __PAIR__(((v9 shr 31) or v10) + __CFADD__(v9, v9 xor v10) + (v9 shr 31) + (v10 xor v9), v9 + (v9 xor v10));
2012-4-24 02:03
0
雪    币: 136
活跃值: (429)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
12
谢谢,我试下。
2012-4-24 08:49
0
游客
登录 | 注册 方可回帖
返回
//