首页
社区
课程
招聘
大家看看这段C,能帮我转C#吗?
发表于: 2010-5-8 14:51 3825

大家看看这段C,能帮我转C#吗?

2010-5-8 14:51
3825
我试过几次,查过,发现好多错误,
例如数值如何WHILE
还有这个:
if ( !BYTE1(v5) )
在C# 不能正常原因哦

int __usercall sub_401334<eax>(int a1<ebx>)
{
  int result; // eax@2
  int v2; // ecx@3
  char v3; // al@4
  int v4; // eax@6
  int v5; // eax@7

  if ( a1 )
  {
    v2 = a1;
    if ( !(a1 & 3) )
      goto LABEL_6;
    do
    {
      v3 = *(_BYTE *)v2++;
      if ( !v3 )
        return v2 - 1 - a1;
    }
    while ( v2 & 3 );
    while ( 1 )
    {
      do
      {
LABEL_6:
        v4 = (*(_DWORD *)v2 + 2130640639) ^ ~*(_DWORD *)v2;
        v2 += 4;
      }
      while ( !(v4 & 0x81010100) );
      v5 = *(_DWORD *)(v2 - 4);
      if ( !(_BYTE)v5 )
        break;
      if ( !BYTE1(v5) )
        return v2 - 3 - a1;
      if ( !(v5 & 0xFF0000) )
        return v2 - 2 - a1;
      if ( !(v5 & 0xFF000000) )
        return v2 - 1 - a1;
    }
    result = v2 - 4 - a1;
  }
  else
  {
    result = 0;
  }
  return result;
}
帮帮忙,谢谢

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 117
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
在线等,都没有给个反应呀
2010-5-8 16:49
0
雪    币: 424
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
3
数值就是while (a) 改成 while (a!=0)
if ( !BYTE1(v5) ) 是强制类型转换 BYTE1也不是C本来就有的= =
2010-5-8 17:17
0
雪    币: 117
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
这段有人说了是C Pseudocode
这方面的岗上说法少,不知道是不是我找得少
把这部分了解了就应该转换了,有无这方法的信息,

谢谢
2010-5-8 22:55
0
雪    币: 424
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
5
C#不支持指针,所以我觉得要翻译可能会做不到
2010-5-9 10:26
0
雪    币: 117
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
转成正常的C也可以
2010-5-9 10:32
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
7
String.Length
2010-5-9 11:53
0
雪    币: 35
活跃值: (11)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
我会C#  把指针变数组吧
2010-5-9 14:25
0
雪    币: 117
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
你是说这段程序只是个求字符长度?
2010-5-9 15:02
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
10
你终于看懂了
2010-5-9 19:27
0
雪    币: 117
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
不会吧,我倒,我还以为是加解密封包的
2010-5-9 20:15
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
12
另一帖你只给我1Kx,这个应多一点点吧.
2010-5-9 22:48
0
雪    币: 117
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
应该的  应该的
2010-5-10 08:38
0
游客
登录 | 注册 方可回帖
返回
//