亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? unit1.pas

?? pe結(jié)構(gòu)分析器windows界面
?? PAS
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
  memo1.Lines.Add(format('  %-*s%X',[width, 'base of data',
                  peoptionalHeader.BaseOfData]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'image base',
                  peoptionalHeader.ImageBase]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'section align',
                  peoptionalHeader.SectionAlignment]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'file align',
                  peoptionalHeader.FileAlignment]));
  memo1.Lines.Add(format('  %-*s%u.%.2u',[width, 'required OS version',
                  peoptionalHeader.MajorOperatingSystemVersion,
                  peoptionalHeader.MinorOperatingSystemVersion]));
  memo1.Lines.Add(format('  %-*s%u.%.2u',[width, 'image version',
                  peoptionalHeader.MajorImageVersion,
                  peoptionalHeader.MinorImageVersion]));
  memo1.Lines.Add(format('  %-*s%u.%.2u',[width, 'subsystem version',
                  peoptionalHeader.MajorSubsystemVersion,
                  peoptionalHeader.MinorSubsystemVersion]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'size of image',
                  peoptionalHeader.SizeOfImage]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'size of headers',
                  peoptionalHeader.SizeOfHeaders]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'checksum',
                  peoptionalHeader.CheckSum]));

  case peoptionalHeader.Subsystem of
    IMAGE_SUBSYSTEM_NATIVE: s := 'Native';
    IMAGE_SUBSYSTEM_WINDOWS_GUI: s := 'Windows GUI';
    IMAGE_SUBSYSTEM_WINDOWS_CUI: s := 'Windows character';
    IMAGE_SUBSYSTEM_OS2_CUI: s := 'OS/2 character';
    IMAGE_SUBSYSTEM_POSIX_CUI: s := 'Posix character';
  else
    s := 'unknown';
  end;

  memo1.Lines.Add(format('  %-*s%.4X<%s>',[width, 'Subsystem',
                  peoptionalHeader.Subsystem,s]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'stack reserve size',
                  peoptionalHeader.SizeOfStackReserve]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'stack commit size',
                  peoptionalHeader.SizeOfStackCommit]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'heap reserve size',
                  peoptionalHeader.SizeOfStackReserve]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'heap commit size',
                  peoptionalHeader.SizeOfHeapCommit]));
  memo1.Lines.Add(format('  %-*s%X',[width, 'RVAs & sizes',
                  peoptionalHeader.NumberOfRvaAndSizes]));

  memo1.Lines.Add('');
  memo1.Lines.Add('Data Directory');
  for i:=0 to peoptionalHeader.NumberOfRvaAndSizes-1 do
  begin
    if i>12 then
       datadirname:='unused'
    else
       datadirname:=ImageDirectoryNames[i];

    memo1.Lines.Add(format('  %-12s rva: %.8X  size: %.8X',[datadirname,
                    peoptionalHeader.DataDirectory[i].VirtualAddress,
                    peoptionalheader.DataDirectory[i].Size]));
  end;
end;

procedure TForm1.DumpSectionTable(section:pImageSectionHeader;cSections:integer);
var
 i,j,l:integer;
 sec_name:string;
 s:string;
begin
  memo1.Lines.Add('');
  memo1.Lines.Add('Section Table');
  //
  for i:=1 to cSections do
  begin
    sec_name:='';
    s:='';
    for j:=0 to cSections do
    begin
      if (chr(section.name[j])<>#0) and (chr(section.name[j])<>#$10) then
        sec_name:=sec_name+chr(section.Name[j])
      else
        break;
    end;
    //
    memo1.Lines.Add(format('  %.2d %-8s  VirtSize: %.8X  VirtAddr:  %.8X',
        [i,sec_name,section.Misc.PhysicalAddress,section.VirtualAddress]));
    memo1.Lines.Add(format('    raw data offs:   %.8X  raw data size: %.8X',
        [section.PointerToRawData,section.SizeOfRawData]));
    memo1.Lines.Add(format('    relocation offs: %.8X  relocations:   %.8X',
        [section.PointerToRelocations,section.NumberOfRelocations]));
    memo1.Lines.Add(format('    line # offs:     %.8X  line #`s:      %.8X',
        [section.PointerToLinenumbers,section.NumberOfLinenumbers]));
    memo1.Lines.Add(format('    characteristics: %.8X',[section.Characteristics]));
    //
    for l:=0 to 12 do
    begin
    // why this write ????? i don`t know :_<
    if (section.Characteristics and sectionCharacteristics[l].flag)<>0 then
      s:=s+format( '  %s', [sectionCharacteristics[l].name]);
    end;
    memo1.Lines.Add(format( '   %s', [s]));
    memo1.Lines.Add('');
    //
    inc(section);
  end;
end;

{procedure TForm1.DumpResourceSection(base:Longword;peNTHeader:pImageNtHeaders);
var
PIMAGERESOURCEDIRECTORY
 resDir:pImageresourceDirectory;
begin
  resDir:=GetSectionPtr('.rsrc', peNTHeader, (longword)base);
    //if ( !resDir )
        //return;
    memo1.clear;
    memo1.add('Resources');
    DumpResourceDirectory(resDir, (DWORD)resDir, 0, 0);
end;}

function TForm1.GetEnclosingSectionHeader(rva:DWORD;
                        peNTHeader:pImageNtHeaders):pImageSectionHeader;
var
 section:pImageSectionHeader;
 i:integer;
begin
  section:=pImageSectionHeader(longword(pentheader)+sizeof(TImageNtHeaders));
  for  i:=0 to peNTHeader.FileHeader.NumberOfSections-1 do
  begin
        // Is the RVA within this section?
        if (rva >= longword(section.VirtualAddress))and
             (rva < longword(section.VirtualAddress + section.Misc.VirtualSize)) then
          begin
            result:=section;
            exit;
          end;
        inc(section);
  end;
  result:=nil;
end;

procedure TForm1.DumpImportsSection(base:LongWord;peNTHeader:pImageNtHeaders);
var
 importDesc:pImageImportDescriptor;
 thunk,thunkIAT:pImageThunkData;
 pOrdinalName:Pimageimportbyname;
 pSection:pImageSectionHeader;
 delta:integer;
 importsStartRVA:longword;
 i:integer;
 s:string;
begin
  importsStartRVA := peNTHeader.OptionalHeader.DataDirectory
                            [IMAGE_DIRECTORY_ENTRY_IMPORT].VirtualAddress;
  if importsStartRVA=0 then
     exit;
  //
  pSection:= GetEnclosingSectionHeader(importsStartRVA, peNTHeader);
  if pSection=nil then
     exit;
  delta := integer(pSection.VirtualAddress-pSection.PointerToRawData);
  importDesc := pImageImportDescriptor(importsStartRVA - delta + base);
  //
  memo1.Lines.Add('');
  memo1.Lines.Add('Imports Table:');
  while true do
  begin
    if (importDesc.TimeDateStamp=0) and (importDesc.Name=0) then
       exit;
     //why????
     memo1.Lines.Add(format(' %s',[pchar(importDesc.Name) - delta + base]));
     memo1.Lines.Add(format('  Hint/Name Table: %.8X',[importDesc.u.Characteristics]));
     memo1.Lines.Add(format('  TimeDateStamp:   %.8X',[importDesc.TimedateStamp]));
     memo1.Lines.Add(format('  ForwarderChain:  %.8X',[importDesc.ForwarderChina]));
     memo1.Lines.Add(format('  First thunk RVA: %.8X',[importDesc.FirstThunk]));

     //thunk := pImageThunkData(importDesc.u.Characteristics);
     //thunkIAT := pImageThunkData(importDesc.FirstThunk);

     if importdesc.u.OriginalFirstThunk<>0 then
       thunk:=pImageThunkData(importdesc.u.OriginalFirstThunk)
     else
        thunk:=pImageThunkData(importdesc.FirstThunk);
     // Adjust the pointer to point where the tables are in the mem mapped file.
     thunk := pImageThunkData(pchar(thunk )- delta + base);
     //
     memo1.Lines.Add('  Ordn  Name');
     //
     while thunk.u1.AddressOfData <> 0 do
     begin
       if (thunk.u1.Ordinal and $80000000) <> 0 then
         memo1.Lines.Add(format('  %.4u',[thunk.u1.Ordinal-$80000000]))
       else
        begin
         pOrdinalName := pImageImportByName(thunk.u1.AddressOfData);
         pOrdinalName := pImageImportByName(pchar(pOrdinalName) - delta + base);
         s:='';
         for i:=0 to 99 do
           begin
             if chr(pordinalname.name[i])<>#0 then
               s:=s+chr(pordinalname.name[i])
             else
              break;
           end;
           memo1.Lines.Add(format('  %4u  %s',[pOrdinalName.Hint,s]));
        end;
        inc(thunk);            // Advance to next thunk
     end;
   inc(importdesc);
  end;
end;

procedure TForm1.DumpExportsSection(base:LongWord;peNTHeader:pImageNtHeaders);
var
 exportDir:PImageExportDirectory;
 header:pImageSectionHeader;
 delta:integer;
 filename:pchar;
 i:longword;
 exportsStartRVA, exportsEndRVA:longword;
 functions:PDWORD;
 ordinals:PWORD;
 name:pchar;
 entryPointRVA:DWORD;
 j:DWORD;
 s:string;
 l,m:integer;
begin
  exportsStartRVA := peNTHeader.OptionalHeader.DataDirectory
                            [IMAGE_DIRECTORY_ENTRY_EXPORT].VirtualAddress;
  exportsEndRVA := exportsStartRVA + peNTHeader.OptionalHeader.DataDirectory
                            [IMAGE_DIRECTORY_ENTRY_EXPORT].Size;
  if (exportsStartRVA=0) or (exportsEndRVA=0) then
     exit;
  //
  header := GetEnclosingSectionHeader( exportsStartRVA, peNTHeader );
  if header=nil then
     exit;
  delta := integer(header.VirtualAddress - header.PointerToRawData);
  exportDir := pImageExportDirectory (exportsStartRVA - delta + base);
  //
  filename := pchar(exportDir.Name - delta + base);
  //
  memo1.Lines.Add('');
  memo1.Lines.add('Exports Table:');
  //
  memo1.Lines.Add(format('  Name:            %s',[filename]));
  memo1.Lines.Add(format('  Characteristics: %.8X',[exportdir.Characteristics]));
  memo1.Lines.Add(format('  TimeDateStamp:   %.8X',[exportdir.TimeDateStamp]));
  memo1.Lines.Add(format('  Version:         %u.%.2u',
                             [exportdir.MajorVersion,exportdir.MinorVersion]));
  memo1.Lines.Add(format('  Ordinal base:    %.8X',[exportdir.Base]));
  memo1.Lines.Add(format('  # of functions:  %.8X',[exportdir.NumberOfFunctions]));
  memo1.Lines.Add(format('  # of Names:      %.8X',[exportdir.NumberOfNames]));
  //
  functions := PDWORD(Dword(exportDir.AddressOfFunctions) - delta + base);
  //ordinals := PWORD(pchar(exportDir.AddressOfNameOrdinals) - delta + base);
  //name := pchar(Dword(exportDir.AddressOfNames) - delta + base);
  name:=pchar(exportDir.Name - delta + base);
  //
  memo1.Lines.Add('');
  memo1.Lines.Add('  Entry Pt  Ordn  Name');
  //
  for  i:=0 to exportDir.NumberOfFunctions-1 do
  begin
     entryPointRVA :=functions^;
     if entryPointRVA = 0 then
       continue;
       // See if this function has an associated name exported for it.
       ordinals := PWORD(Dword(exportDir.AddressOfNameOrdinals) - delta + base);
       //
       for  j:=0 to exportDir.NumberOfNames-1 do
       begin
         if ordinals^ = i then
         begin
           s:='';
           while true do //move pointer posetion
           begin
             if name^=#0 then
             begin
              break;
             end;
             inc(name);
           end;
           //
           while true do
           begin
             if (name-1)^=#0 then
             begin
              s:=format('  %s', [name]);
              break;
             end;
             inc(name);
           end;
          end;
         inc(ordinals);
       end;
       //
      memo1.Lines.Add(format('  %.8X  %4u%s',[entryPointRVA, i + exportDir.Base,s]));
      inc(functions);
  end;
end;

procedure TForm1.About1Click(Sender: TObject);
begin
   if sender=About1 then
     messagebox(handle,'FileName:WinDump'+#13+'Authors:sjctheworld'+#13+'Copyright:2004-2005',
                     'About',MB_OK or MB_ICONINFORMATION)
   else
     messagebox(handle,'程序名稱:WinDump'+#13+'程序設(shè)計(jì):sjctheworld'+#13+'版權(quán)所有:2004-2005',
                     '關(guān)于',MB_OK or MB_ICONINFORMATION)
end;

procedure TForm1.Chinese1Click(Sender: TObject);
begin
   chinese1.Checked:=true;
   if Chinese1.Checked=true then
   begin
     e1.Checked:=false;
     application.MainForm.Menu:=mainmenu2;
     DisPalyRowNO;
   end;
end;

procedure TForm1.E1Click(Sender: TObject);
begin
   e1.Checked:=true;
   if e1.Checked=true then
   begin
     Chinese1.Checked:=false;
     application.MainForm.Menu:=mainmenu1;
     DisPalyRowNO;
   end;
end;

end.

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩电影一区二区三区四区| 国产真实乱偷精品视频免| 日韩精品中文字幕一区二区三区| 国产suv精品一区二区883| 亚洲电影视频在线| 亚洲国产成人自拍| 欧美一级夜夜爽| 在线观看日韩av先锋影音电影院| 国产精品亚洲人在线观看| 亚洲高清在线精品| 国产精品国产自产拍高清av | 久久www免费人成看片高清| 亚洲乱码国产乱码精品精小说| 精品国产乱码久久久久久影片| 91福利资源站| 99这里只有久久精品视频| 国产一区二区三区| 免费人成网站在线观看欧美高清| 一区二区三区在线免费视频| 国产精品色一区二区三区| 欧美精品一区二区三| 欧美日韩高清一区二区三区| 97久久超碰国产精品| 成人午夜免费av| 粉嫩绯色av一区二区在线观看| 久久99这里只有精品| 日韩av中文在线观看| 午夜精品国产更新| 亚洲高清久久久| 亚洲成a天堂v人片| 亚洲电影一级片| 婷婷激情综合网| 日韩一区精品视频| 午夜欧美在线一二页| 亚洲成人久久影院| 亚洲成人激情自拍| 亚洲444eee在线观看| 亚洲成av人**亚洲成av**| 亚洲国产精品天堂| 亚洲超碰97人人做人人爱| 午夜精品久久久久久久99水蜜桃 | 日韩精品免费视频人成| 亚洲一区二区三区四区五区中文| 亚洲黄色小说网站| 亚洲一区自拍偷拍| 亚洲自拍偷拍av| 午夜免费久久看| 日韩国产欧美一区二区三区| 青青草97国产精品免费观看无弹窗版| 国产精品18久久久久久久久久久久 | 久久精品国产在热久久| 另类小说欧美激情| 国产一区欧美二区| 国产成+人+日韩+欧美+亚洲| 成人精品免费网站| 91亚洲永久精品| 91麻豆成人久久精品二区三区| 99精品偷自拍| 欧美日韩一本到| 欧美二区三区的天堂| 日韩免费看的电影| 国产午夜精品在线观看| 国产精品传媒在线| 亚洲韩国一区二区三区| 视频在线观看国产精品| 精品一区二区三区免费毛片爱| 国产精品正在播放| 色欧美日韩亚洲| 欧美日韩国产综合一区二区| 精品嫩草影院久久| ...xxx性欧美| 午夜精品爽啪视频| 国产99久久久国产精品潘金网站| av午夜一区麻豆| 欧美日韩一区小说| 2021国产精品久久精品| 国产精品久久久久影院色老大| 一区二区三区四区不卡视频| 日本成人中文字幕| av电影一区二区| 日韩视频在线永久播放| 亚洲欧美影音先锋| 美女免费视频一区| 99久久综合国产精品| 制服丝袜日韩国产| 国产精品黄色在线观看| 蜜桃视频一区二区三区在线观看| 不卡一区二区在线| 日韩亚洲欧美中文三级| 日韩理论片一区二区| 久草精品在线观看| 欧美日韩中文另类| 日本一二三不卡| 久久精品国产久精国产| 色欲综合视频天天天| 久久蜜桃香蕉精品一区二区三区| 亚洲人123区| 国产精品一卡二| 日韩一级免费一区| 亚洲最色的网站| 成人免费看黄yyy456| 欧美一区二区日韩| 一区二区免费视频| 粉嫩av一区二区三区粉嫩| 欧美一级久久久久久久大片| 亚洲免费观看高清完整版在线| 国产美女一区二区| 日韩欧美资源站| 亚洲不卡av一区二区三区| 91视频www| 国产欧美一区二区三区沐欲| 麻豆精品国产传媒mv男同| 欧美在线观看禁18| 亚洲裸体xxx| 丁香五精品蜜臀久久久久99网站| 日韩美女一区二区三区四区| 五月婷婷综合在线| 欧美亚洲国产怡红院影院| 国产精品久久看| 国产乱码精品一区二区三区av| 欧美一二三区精品| 爽爽淫人综合网网站| 欧美综合一区二区三区| 国产精品传媒入口麻豆| 成人污污视频在线观看| 亚洲国产高清在线观看视频| 国产成人鲁色资源国产91色综| 精品欧美一区二区在线观看| 日韩综合小视频| 3d动漫精品啪啪1区2区免费| 亚洲第一会所有码转帖| 欧美日韩在线三级| 日韩精品亚洲专区| 欧美一区二区三区四区视频| 日本sm残虐另类| 欧美大胆一级视频| 久久成人综合网| 欧美成人bangbros| 国产一区二区在线影院| 国产人成亚洲第一网站在线播放| 国产乱码精品一区二区三区忘忧草| 久久人人97超碰com| 精品亚洲国产成人av制服丝袜| 欧美大片在线观看| 国产福利91精品| 国产精品国产三级国产普通话三级| 大白屁股一区二区视频| 亚洲欧美日韩久久精品| 在线视频一区二区三| 丝袜美腿亚洲一区二区图片| 欧美一区二区不卡视频| 国产一区二区三区在线观看免费视频 | 亚洲男女一区二区三区| 91成人免费电影| 视频一区在线播放| 久久免费国产精品| 99热精品国产| 亚洲成人午夜影院| 日韩精品一区国产麻豆| 国产盗摄精品一区二区三区在线 | 精品奇米国产一区二区三区| 国产精品12区| 亚洲啪啪综合av一区二区三区| 欧美色电影在线| 美国av一区二区| 国产精品短视频| 欧美日韩在线观看一区二区| 久久成人免费日本黄色| 国产精品你懂的在线欣赏| 欧美丝袜丝交足nylons图片| 日韩激情在线观看| 中文字幕av一区 二区| 欧美亚洲免费在线一区| 国产在线精品不卡| 樱桃视频在线观看一区| 精品国产一区二区国模嫣然| av电影天堂一区二区在线| 日韩国产欧美在线视频| 亚洲国产精品成人久久综合一区| 欧美三片在线视频观看| 国产精品自拍毛片| 亚洲h在线观看| 国产日产亚洲精品系列| 欧美午夜精品电影| 国产成人精品免费在线| 午夜久久久久久| 国产精品成人免费| 91精品国产综合久久久蜜臀粉嫩 | 成人中文字幕合集| 亚洲一区免费观看| 久久久另类综合| 欧美日韩国产影片| 99热精品国产| 狠狠色丁香久久婷婷综| 亚洲国产婷婷综合在线精品| 久久久综合精品| 欧美日本不卡视频| 色先锋aa成人| 成熟亚洲日本毛茸茸凸凹| 捆绑调教美女网站视频一区|