首页
社区
课程
招聘
[求助]PE文件用二进制方式打开问题
发表于: 2009-5-12 08:59 3280

[求助]PE文件用二进制方式打开问题

2009-5-12 08:59
3280
各位老大,小弟遇到一个问题,在DOS窗口下已经实现,
但在输出到文本文件和输出到一个EDIT控件时不知道从何下手了,请不吝赐教,
函数如下(代码写的不规范,请将就着看)

void  vvv(unsigned char *aa,int i)//*aa 存放的是读取好的可执行文件的16个字符,i 表示第 i 个*aa
{
  printf("%08lx:   ",i*16);//显示00000000:-00000010:
  
  int j;
  char k='.';//遇到小于33和大于126的字符用‘.’代替
  for(j=0;j<N;j++)
  {
    if((aa[j]<33)||(aa[j]>255))  aa[j]='\0';
    printf("%02lx  ",aa[j]);//显示二进制代码
    
  }
  printf("       ");
  for(j=0;j<N;j++)
  {
    if((aa[j]<33)||(aa[j]>126))  //pbuf[i][j]='.';
      printf("%c",k);//显示‘.’字符,16进制时2EH
    else
      printf("%c ",aa[j]););//显示字符
  }
  printf("\n");
}

以上函数可以在DOS窗口实现如下输出:

00000000:   4d  5a  90  00  00  00  00  00  00  00  00  00  ff  ff  00  00         M Z ..............
00000010:   b8  00  00  00  00  00  00  00  40  00  00  00  00  00  00  00         ........@ .......
00000020:   00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00         ................
00000030:   00  00  00  00  00  00  00  00  00  00  00  00  b8  00  00  00         ................
00000040:   00  00  ba  00  00  b4  00  cd  21  b8  00  4c  cd  21  54  68         ........! ..L .! T h
00000050:   69  73  00  70  72  6f  67  72  61  6d  00  63  61  6e  6e  6f         i s .p r o g r a m .c a n n o
00000060:   74  00  62  65  00  72  75  6e  00  69  6e  00  44  4f  53  00         t .b e .r u n .i n .D O S .
00000070:   6d  6f  64  65  2e  00  00  00  24  00  00  00  00  00  00  00         m o d e . ...$ .......
00000080:   2a  e9  91  38  6e  88  ff  6b  6e  88  ff  6b  6e  88  ff  6b         * ..8 n ..k n ..k n ..k
00000090:   e0  97  ec  6b  78  88  ff  6b  92  a8  ed  6b  6f  88  ff  6b         ...k x ..k ...k o ..k
000000a0:   a9  8e  f9  6b  6f  88  ff  6b  52  69  63  68  6e  88  ff  6b         ...k o ..k R i c h n ..k
000000b0:   00  00  00  00  00  00  00  00  50  45  00  00  4c  00  00  00         ........P E ..L ...

请问:
1、怎样编程才能实现按照以上格式输出到TXT文本,或者输出到一个EDIT控件中
2、在字符列如何显示ASCII码以外的字符(例如:二进制 D6 D0 B9 FA  则后面字符显示 中国)
请给出代码,谢谢谢谢

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//