블로그 이미지
Every unexpected event is a path to learning for you. blueasa

카테고리

분류 전체보기 (2794)
Unity3D (852)
Programming (478)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (185)
협업 (11)
3DS Max (3)
Game (12)
Utility (68)
Etc (98)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (55)
Android (14)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday

What is Themida? 

 



 

 

Packer? Protector?



[출처] [Packer/Protector] Themida|작성자 ㄲㅑ

 

 

Themida  Main Screen



[출처] [Packer/Protector] Themida|작성자 ㄲㅑ

 

 

Protection Options



[출처] [Packer/Protector] Themida|작성자 ㄲㅑ

 



[출처] [Packer/Protector] Themida|작성자 ㄲㅑ

 

 

    Advanced Options



     

     


     

      Themida Packing Test 

      Test File

      - Unpack_Crackme.exe 

       

       


       

       

        File Packing 

         






        [출처] [Packer/Protector] Themida|작성자 ㄲㅑ

         

         

          Detection Of File (Use PE Scanner) 

           




          [출처] [Packer/Protector] Themida|작성자 ㄲㅑ

          반응형

          'Utility > Themida' 카테고리의 다른 글

          Themida 실행압축(Packing) 테스트  (0) 2012.05.10
          Posted by blueasa
          , |

          WxPyWiki 페이지 입니다
          공부하려고 한참을 찾다 구글링으로 찾았습니다
          Python의 GUI 툴인 WxGlade의 튜토리얼 입니다
          각각 함수에 대한 API와 상세 설명 메소드 설명 소스코드와 스샷들이 포함되어 있습니다
          메소드(methods) 하나하나에 대한 모든 코드들이 구현 되어 있어서 공부하거나 사용할 참고하세요 
          굉장히 설명이 잘 되어 있습니다 

          튜토리얼 한페이지에 모든 글이 포함되어 있어서 로딩 시간이 조금 오래 걸릴 수 있습니다 







          차례

          1. The wxPython Linux Tutorial
            1. Foreword
            2. wxPython API
            3. First Steps
              1. wx.Window
              2. wx.Frame
              3. wx.MenuBar
              4. wx.ToolBar
            4. Layout Management
              1. wx.BoxSizer
              2. wx.GridSizer
              3. wx.GridBagSizer
            5. Basic Objects
              1. Cursors
              2. Fonts
              3. Colours
              4. Bitmaps
            6. Events
              1. Examples
            7. Dialogs
              1. Custom dialogs
              2. Common Predefined Dialogs
            8. Core Widgets
              1. wx.Button
              2. wx.ToggleButton
              3. wx.BitmapButton
              4. wx.StaticLine
              5. wx.StaticText
              6. wx.StaticBox
              7. wx.ComboBox
              8. wx.CheckBox
              9. wx.StatusBar
              10. wx.RadioButton
              11. wx.Gauge
              12. wx.Slider
              13. wx.ListBox
              14. wx.SpinCtrl
              15. wx.ListCtrl
              16. wx.SplitterWindow
              17. wx.ScrolledWindow
              18. wx.TreeCtrl
              19. wx.Notebook
            9. wx.lib Classes
              1. Mouse Gestures
              2. AnalogClockWindow
              3. Bitmap Text Buttons
            10. Advanced Widgets
              1. CalendarCtrl
              2. LEDNumberCtrl
            11. Creating a taskbar application
            12. wx.TheClipboard
            13. Drag and Drop
            14. Plotting
            15. Configuring application settings
            16. wxPython functions
              1. System functions
              2. Dialog functions
              3. Other functions
            17. Using xml resource files
            18. Skeletons
              1. File Hunter
              2. SpreadSheet
            19. Tips And Tricks
              1. PopupMenu
              2. The tiniest wxPython application
              3. Interactive Button
              4. Error handling without dialogs
              5. UndoRedoFramework
            20. Gripts
              1. Tom
              2. Editor
              3. Kika
            21. Appendix
              1. Cursor IDs
              2. wx.Frame styles
              3. Standard Colour Database
              4. wx.Pen styles
              5. wx.Brush styles
              6. CalendarCtrl styles
              7. Keycodes
            22. Comments...







          WxGlade에 대한 여려 튜토리얼 링크가 있는 페이지 입니다
          http://wiki.wxpython.org/WxGladeTutorial


          가장 기본 튜토리얼 페이지 입니다
          http://wiki.wxpython.org/index.cgi/AnotherTutorial 


          출처 : http://paranwater.tistory.com/180

          반응형
          Posted by blueasa
          , |

          [서론]

            이전에 W.O.W 접속유지 프로그램을 만든적은 있지만 그때는 WOW 캡션이 정해져 있었고, 키입력만으로(방향키를 사용했음) 접속유지가 됐기때문에 단순한 키입력 메시지 전달만 하면 끝이었다. 

            다만.. W.O.W 에서 SendMessage를 먹어버려서 PostMessage로 처리했었다.

            (W.O.W 접속유지 프로그램 링크:http://blueasa.tistory.com/527)


            이번에는 서로(현재는 C# -> C++ 만 되는거 보고 정리함.. 나중에 업뎃 할지도..) SendMessage를 보내서 뭔가 일을 꾸밀(?) 수 있게 해보고 싶은마음에 시작.. 물론 양쪽 프로그램은 내가 직접 만든다는 가정하에..

            세상에 선구자는 많으니 역시나..자료를 찾기 시작.. 이전에 간단하나마 만든 것도 있고..

            말재주는 없으니 본론으로 들어가서 그냥 소스 정리..


          [사용된 WinAPI 함수 및 중요 키워드]

          FindWindow, SendMessage, WM_COPYDATA


          [Send : C#]



          [Source]

              public class MessageHelper
              {
                  [DllImport("User32.dll")]
                  private static extern int RegisterWindowMessage(string lpString);
          
                  [DllImport("User32.dll", EntryPoint = "FindWindow")]
                  public static extern Int32 FindWindow(String lpClassName, String lpWindowName);
          
                  //For use with WM_COPYDATA and COPYDATASTRUCT
                  [DllImport("User32.dll", CharSet = CharSet.Auto, SetLastError = false, EntryPoint = "SendMessage")]
                  public static extern int SendMessage(int hWnd, int Msg, int wParam, ref COPYDATASTRUCT lParam);
          
                  //For use with WM_COPYDATA and COPYDATASTRUCT
                  [DllImport("User32.dll", CharSet = CharSet.Auto, SetLastError = false, EntryPoint = "PostMessage")]
                  public static extern int PostMessage(int hWnd, int Msg, int wParam, ref COPYDATASTRUCT lParam);
          
                  //For use with WM_COPYDATA and COPYDATASTRUCT*
                  [DllImport("user32.dll", CharSet = CharSet.Auto, EntryPoint = "SendMessage")]
                  private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
          
                  [DllImport("User32.dll", CharSet = CharSet.Auto, EntryPoint = "SendMessage")]
                  public static extern int SendMessage(int hWnd, int Msg, int wParam, int lParam);
          
                  [DllImport("User32.dll", CharSet = CharSet.Auto, EntryPoint = "PostMessage")]
                  public static extern int PostMessage(int hWnd, int Msg, int wParam, int lParam);
          
                  [DllImport("User32.dll", EntryPoint = "SetForegroundWindow")]
                  public static extern bool SetForegroundWindow(int hWnd);
          
                  public const int WM_USER = 0x400;
                  public const int WM_SENDER = WM_USER + 4444;
                  public const int WM_COPYDATA = 0x4A;
          
                  //Used for WM_COPYDATA for string messages
                  //[StructLayout(LayoutKind.Sequential)] 
                  public struct COPYDATASTRUCT
                  {
                      public int dwData;
                      public int cbData;
                      //[MarshalAs(UnmanagedType.LPStr)]
                      public IntPtr lpData;
                  }
          
                  public bool BringAppToFront(int hWnd)
                  {
                      return SetForegroundWindow(hWnd);
                  }
          
                  public int SendWindowsStringMessage(int hWnd, int wParam, string command)
                  {
                      int result = 0;
          
                      if (hWnd != 0)
                      {
                          byte[] sarr = System.Text.Encoding.Default.GetBytes(command);
                          int len = sarr.Length;
          
                          COPYDATASTRUCT cds = new COPYDATASTRUCT();
                          //cds.dwData = (IntPtr)100;
                          cds.dwData = 0;
                          cds.cbData = len + 1;
                          //cds.cbData = Marshal.SizeOf(cds);
                          cds.lpData = Marshal.StringToHGlobalAnsi(command);
                          //cds.lpData = Marshal.StringToCoTaskMemAnsi(command);
          
                          result = SendMessage(hWnd, WM_COPYDATA, wParam, ref cds);
                      }
          
                      return result;
                  }
          
                  public int SendWindowsMessage(int hWnd, int Msg, int wParam, int lParam)
                  {
                      int result = 0;
          
                      if (hWnd != 0)
                      {
                          result = SendMessage(hWnd, Msg, wParam, lParam);
                      }
          
                      return result;
                  }
          
                  public int GetWindowID(string className, string windowName)
                  {
                      return FindWindow(className, windowName);
                  }
              }
          





          [Use]


          int hWnd = messageHelper.GetWindowID(null, windowCaption);
          messageHelper.SendWindowsStringMessage(hWnd, 0, String);
          



          [Receive : C++]


          [Source]


          WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
          {  
              switch ( msg )   
              {  
              case WM_COPYDATA:  
                  {  
                      //Used for WM_COPYDATA for string messages  
                      struct COPYDATASTRUCT  
                      {  
                          int dwData;  
                          int cbData;  
                          PVOID lpData;  
                      };  
            
                      COPYDATASTRUCT* cp = (COPYDATASTRUCT*)lParam;  
            
                      if( NULL != cp )  
                      {  
                          String strCommand = "";  
                          char szCommand[256] = {0,};  
                            
                          memcpy( szCommand, cp->lpData, cp->cbData );  
                            
                          if(NULL != szCommand)  
                          {  
          					/// ToDo  
          					/// 여기서 받은 문자열로 할 일 하면 됨.  
          					/// dwData는 여기선 의미가 없긴한데 enum이나 int 그대로 써서  
          					/// switch문 등으로 분기시켜서 여러가지 다양한 처리를 하려고
          					/// 처음 소스 짠사람이 만든 것 같다.  
          					/// 다른 일도 분류해서 처리하려면 사용하자.  
                          }  
                      }  
                  }  
                  break;  
              }  
          }  
          




          [주의]

          WM_COPYDATA 는 PostMessage로 날릴 수 없다고 한다. SendMessage를 사용하자.

          (상대쪽에서 받기 전에 이쪽에서 메모리 해제 되있으면 AV뜨기때문에..)

          참고 링크 : http://lunapiece.net/?mid=Tips&listStyle=webzine&document_srl=3780&sort_index=readed_count&order_type=desc


          P.s. 마음대로 되지 않고 삽질도 많이해서 여기저기 쓰이지 않는 주석이 남아있긴 하지만.. 삽질기념(?) 그냥 냅두기..

                 하도 검색하고 다녀서 참조한 곳을 다 찾기엔 좀 걸리거나 빼먹을 수 도 있을 것 같다. 출처를 찾으러 가야지..



          [참조]

          http://boycook.wordpress.com/2008/07/29/c-win32-messaging-with-sendmessage-and-wm_copydata/

          http://kofmania.tistory.com/45

          http://xarfox.tistory.com/45

          http://jacking.tistory.com/134

          http://www.hoons.kr/board.aspx?Name=qacshap&Mode=2&BoardIdx=10465&Key=&Value=

          http://lunapiece.net/?mid=Tips&listStyle=webzine&document_srl=3780&sort_index=readed_count&order_type=desc

          - 그 외 못 적은 곳은.. 죄송합니다..;;



          반응형
          Posted by blueasa
          , |


          링크 : http://www.thisisgame.com/board/list.php?category=4001&subcategory=25

          반응형

          '한글' 카테고리의 다른 글

          쉬운 맞춤법 공부  (0) 2012.10.23
          율/률(열/렬)  (0) 2012.06.03
          설레임 / 설렘  (0) 2012.06.03
          역할? 역활?  (0) 2012.05.08
          감쇠 와 감쇄  (0) 2012.04.27
          Posted by blueasa
          , |

          역할? 역활?

          한글 / 2012. 5. 8. 21:42

          역할

          위키백과, 우리 모두의 백과사전.

          역할(役割) 또는 사회적 역할(社會的役割)은 사회적 상황에서 배우에 의해 개념화되는 행동권리의무가 연결된 것이다. 주어진 각 사회적 지위와 사회적 위치 안에서 대개 예외 행위로 정의된다. 대한민국에서 일반인들이 자주 사용하고 있는 형태인 "역활"은 사전에 없는 낱말이며, "역할"의 잘못이다.



          반응형

          '한글' 카테고리의 다른 글

          쉬운 맞춤법 공부  (0) 2012.10.23
          율/률(열/렬)  (0) 2012.06.03
          설레임 / 설렘  (0) 2012.06.03
          이것이 우리말(TIG와 함께하는 바르고, 고운 우리말!)  (0) 2012.05.08
          감쇠 와 감쇄  (0) 2012.04.27
          Posted by blueasa
          , |

          I had a real pain recently where I wanted to control one windows app from another. I found some useful stuff on the net, but nothing that gave an end to end solution. So here’s what I came up with.

          Firstly I’ll explain why this is useful. SendMessage is part of the Win32 API, and is used to send messages from one application to another. There are a set of predefined properties that the message can relate to, and these can be used to send messages to existing applications to perform all sorts of useful functions such as changing the font in notepad, or bringing a window to the fore. For more information of the wider use of the SendMessage function, have a look at:

          http://www.autohotkey.com/docs/commands/PostMessage.htm

          http://msdn.microsoft.com/en-us/library/ms644950(VS.85).aspx

          The main use that I’m interested in is passing a specific instruction (via a string) from one app that I’ve written, to another one that I’ve written. This way I can effectively remote control one app from another (particularly useful if you want your main application to open a pop-up, and you don’t want to worry about the pop-up’s performance affecting the main application). Let’s now have a quick look at the SendMessage function:

          SendMessage(int hWnd, int Msg, int wParam, int lParam)

          hWnd – This is the window instance id of the application you want to send a message to. This id is retrieved using the FindWindow function

          Msg – This is the type of message you want to send

          wParam – Message specific data you pass in

          wParam – Message specific data you pass in

          Also used is the FindWindow function. This is to get the relevant window id:

          FindWindow(String lpClassName, String lpWindowName)

          lpClassName -The name of the class you want

          lpWindowName – The name of the window that you want

          To send a message that is a string, you need to use the WM_DATACOPY message property. The hard part is that you cannot just send the string as a parameter across. You need to send a pointer to the memory address of the string. If you just want to send an integer as a message you can use the WM_USER message property and send it as a value without a problem.

          Below now is a brief listing of my MessageHelper.cs class, for the whole class file see:

          http://craigcook.co.uk/samples/MessageHelper.cs.txt

          01using System;
          02using System.Collections.Generic;
          03using System.Linq;
          04using System.Text;
          05using System.Runtime.Serialization.Formatters.Binary;
          06using System.Runtime.InteropServices;
          07using System.Diagnostics;
          08 
          09public class MessageHelper
          10{
          11[DllImport("User32.dll")]
          12private static extern int RegisterWindowMessage(string lpString);
          13 
          14[DllImport("User32.dll", EntryPoint = "FindWindow")]
          15public static extern Int32 FindWindow(String lpClassName, String lpWindowName);
          16 
          17//For use with WM_COPYDATA and COPYDATASTRUCT
          18[DllImport("User32.dll", EntryPoint = "SendMessage")]
          19public static extern int SendMessage(int hWnd, int Msg, int wParam, refCOPYDATASTRUCT lParam);
          20 
          21//For use with WM_COPYDATA and COPYDATASTRUCT
          22[DllImport("User32.dll", EntryPoint = "PostMessage")]
          23public static extern int PostMessage(int hWnd, int Msg, int wParam, refCOPYDATASTRUCT lParam);
          24 
          25[DllImport("User32.dll", EntryPoint = "SendMessage")]
          26public static extern int SendMessage(int hWnd, int Msg, int wParam, intlParam);
          27 
          28[DllImport("User32.dll", EntryPoint = "PostMessage")]
          29public static extern int PostMessage(int hWnd, int Msg, int wParam, intlParam);
          30 
          31[DllImport("User32.dll", EntryPoint = "SetForegroundWindow")]
          32public static extern bool SetForegroundWindow(int hWnd);
          33 
          34public const int WM_USER = 0x400;
          35public const int WM_COPYDATA = 0x4A;
          36 
          37//Used for WM_COPYDATA for string messages
          38public struct COPYDATASTRUCT
          39{
          40     public IntPtr dwData;
          41     public int cbData;
          42     [MarshalAs(UnmanagedType.LPStr)]
          43     public string lpData;
          44}
          45 
          46public bool bringAppToFront(int hWnd)
          47{
          48     return SetForegroundWindow(hWnd);
          49}
          50 
          51public int sendWindowsStringMessage(int hWnd, int wParam, string msg)
          52{
          53    int result = 0;
          54 
          55     if (hWnd != 0)
          56     {
          57            byte[] sarr = System.Text.Encoding.Default.GetBytes(msg);
          58            int len = sarr.Length;
          59            COPYDATASTRUCT cds;
          60            cds.dwData = (IntPtr)100;
          61            cds.lpData = msg;
          62            cds.cbData = len + 1;
          63            result = SendMessage(hWnd, WM_COPYDATA, wParam, ref cds);
          64     }
          65 
          66     return result;
          67}
          68 
          69public int sendWindowsMessage(int hWnd, int Msg, int wParam, int lParam)
          70{
          71     int result = 0;
          72 
          73     if (hWnd != 0)
          74     {
          75            result = SendMessage(hWnd, Msg, wParam, lParam);
          76     }
          77 
          78     return result;
          79}
          80 
          81public int getWindowId(string className, string windowName)
          82{
          83 
          84     return FindWindow(className, windowName);
          85 
          86}
          87}

          So now you can call the code to send a message like so:

          MessageHelper msg = new MessageHelper();
          int result = 0;
          //First param can be null
          int hWnd = msg.getWindowId(null, “My App Name”);
          result = msg.sendWindowsStringMessage(hWnd, 0, “Some_String_Message”);
          //Or for an integer message
          result = msg.sendWindowsMessage(hWnd, MessageHelper.WM_USER, 123, 456);

          Now all you need to do on the app that you want to receive the message is override the following function in the form class (obviously you can change what the responses are, and you’ll need to create constants for the parameters):

          01protected override void WndProc(ref Message m)
          02{
          03switch (m.Msg)
          04{
          05     case WM_USER:
          06            MessageBox.Show("Message recieved: " + m.WParam + " - " + m.LParam);
          07            break;
          08     case WM_COPYDATA:
          09            COPYDATASTRUCT mystr = new COPYDATASTRUCT();
          10            Type mytype = mystr.GetType();
          11            mystr = (COPYDATASTRUCT)m.GetLParam(mytype);
          12            this.doSomethingWithMessage(mystr.lpData);
          13            break;
          14}
          15base.WndProc(ref m);
          16}


          출처 : http://boycook.wordpress.com/2008/07/29/c-win32-messaging-with-sendmessage-and-wm_copydata/

          반응형
          Posted by blueasa
          , |

          Spy++의 창 핸들을 찾는 방식을 어떻게 구현하나 뒤지다가 C++ 로 코드프로젝트에 만들어져 있는걸 보고,


          C# 으로 만들어진 게 없나 하고 찾아봤는데..


          역시나 있다..


          만쉐~ 역시 선구자들은 많아.. 잘사용해보세~ -_-;


          링크 : http://devpia.co.kr/MAEUL/Contents/Detail.aspx?BoardID=50&MAEULNO=20&no=881823&ref=881821&page=1


          C++ 소스 링크 : http://www.codeproject.com/Articles/1698/MS-Spy-style-Window-Finder


          C# 소스 링크 : http://www.codeproject.com/Articles/34981/FindWindow

          반응형
          Posted by blueasa
          , |

          1
          2
          3
          4
          5
          6
          7
          8
          9
          10
          11
          12
          13
          typedef BOOL __stdcall Callback(int a, int b);   //Hslee 콜백 등록!
          Callback *_cb;   //C#의 콜백루틴 받아오는 포인터변수
           
          void CallBackCall()  //콜백 루틴시키는 함수...(Callback함수와 연결됨)
          {
              if(_cb != NULL)
                  (_cb)(10,20);
          }
           
          void RegCallback(Callback *pcb)  //C#의 콜백루틴 받아와 연결하는 함수
          {
              _cb = pcb;
          }
          1
          2
          3
          4
          5
          6
          7
          8
          9
          10
          11
          12
          13
          14
          15
          16
          17
          18
          19
          20
          21
          22
          23
          using System.Runtime.InteropServices;
           
          namespace CallbackTest
          {
              class Program
              {  
                  [DllImport("CallbackTestDll.dll")]
                  static extern void RegCallback1(Callback1 callback);
                  delegate bool Callback1(int a, int b);
                   
                  static bool PrintWindow1(int a, int b)
                  {
                      Console.Write("a:"+a.ToString() + "b:" + b.ToString()+"\t");
                      return true;
                  }
           
                  static void Main(string[] args)
                  {
                      Callback1 callback1 = new Callback1(PrintWindow1);
                      RegCallback1(callback1);
                  }
              }
          }



          C#의 delegate루틴을 C++에 넘겨준뒤. C++에서 콜백이 발생됬을경우 C#으로 넘기게된다.
          여기서 주의할점.. C#은 콜백을 받아올때 가바지컬렉터 라는 놈이 관리를 하게된다..

          Callback발생 -> 카비지컬렉터 -> C# 루틴

          뭐 이런식으로 알고있다.. C#은 가비지컬렉터 수집을 자동으로 한다...
          Callback이 사용자가 요청했을때만 들어온다면 상관없지만...

          uRON(ETRI)의 로봇주행알고리즘 을 사용할경우 콜백이 미친듯이 들어와버리게된다..
          그러면서 가비지컬렉터가 싸이면서.. 프로그램이 종료되게된다..

          콜백이 미친듯이 들어오므로 가비지컬렉터수집을 사용자가 직접 해줘야 한다...

          C#의 콜백 루틴 안에다가 
          GC.Collect();

          를 넣어주게되면 가비지컬렉터를 강제로 수집하게된다..

          자세한사항은 MSDN 참고!



          이방법을 구현하기위하 온갖 MSDN을 뒤지면서 나만의 방법으로 바꿔주는데 성공했다.

          정말 힘들었던 작업....중 하나.. 정말 유용하게 쓰인다! 

          나같은 Robot Programming을 하는 사람이라면.. 디바이스제어는 C++ 
          Main Program은 Error가 적은 C#을 사용하용하는 사람들이 꽤 있을거 같다..


          출처 : http://periar.tistory.com/entry/C-DLL-Callback-%EC%9D%84-C-%EB%A3%A8%ED%8B%B4%EC%9C%BC%EB%A1%9C-%EA%B0%80%EC%A0%B8%EC%98%A4%EA%B8%B0

          반응형
          Posted by blueasa
          , |



          링크 : http://klmekleot.tistory.com/37



          반응형
          Posted by blueasa
          , |

          링크 : http://mh-nexus.de/en/hxd/


          HxD is a carefully designed and fast hex editor which, additionally to raw disk editing and modifying of main memory (RAM), handles files of any size.

          The easy to use interface offers features such as searching and replacing, exporting, checksums/digests, insertion of byte patterns, a file shredder, concatenation or splitting of files, statistics and much more.

          Editing works like in a text editor with a focus on a simple and task-oriented operation, as such functions were streamlined to hide differences that are purely technical.
          For example, drives and memory are presented similar to a file and are shown as a whole, in contrast to a sector/region-limited view that cuts off data which potentially belongs together. Drives and memory can be edited the same way as a regular file including support for undo. In addition memory-sections define a foldable region and inaccessible sections are hidden by default.

          Furthermore a lot of effort was put into making operations fast and efficient, instead of forcing you to use specialized functions for technical reasons or arbitrarily limiting file sizes. This includes a responsive interface and progress indicators for lengthy operations.

           

          Features

          • Available as a portable and installable edition
          • RAM-Editor
            • To edit the main memory
            • Memory sections are tagged with data-folds
          • Disk-Editor (Hard disks, floppy disks, ZIP-disks, USB flash drives, CDs, ...)
            • RAW reading and writing of disks and drives
            • for Win9x, WinNT and higher
          • Instant opening regardless of file-size
            • Up to 8EB; opening and editing is very fast
          • Liberal but safe file sharing with other programs
          • Flexible and fast searching/replacing for several data types
            • Data types: text (including Unicode), hex-values, integers and floats
            • Search direction: Forward, Backwards, All (starting from the beginning)
          • File compare (simple)
          • View data in Ansi, DOS, EBCDIC and Macintosh character sets
          • Checksum-Generator: Checksum, CRCs, Custom CRC, SHA-1, SHA-512, MD5, ...
          • Exporting of data to several formats
            • Source code (Pascal, C, Java, C#, VB.NET)
            • Formatted output (plain text, HTML, Richtext, TeX)
            • Hex files (Intel HEX, Motorola S-record)
          • Insertion of byte patterns
          • File tools
            • File shredder for safe file deletion
            • Splitting or concatenating of files
          • Basic data analysis (statistics)
            • Graphical representation of the byte/character distribution
            • Helps to identify the data type of a selection
          • Byte grouping
            • 1, 2, 4, 8 or 16 bytes packed together into one column
          • "Hex only" or "text only"-modes
          • Progress-window for lengthy operations
            • Shows the remaining time
            • Button to cancel
          • Modified data is highlighted
          • Unlimited undo
          • "Find updates..."-function
          • Easy to use and modern interface
          • Goto address
          • Printing
          • Overwrite or insert mode
          • Cut, copy, paste insert, paste write
          • Clipboard support for other hex editors
            • Visual Studio/Visual C++, WinHex, HexWorkshop, ...
          • Bookmarks
            • Ctrl+Shift+Number (0-9) sets a bookmark
            • Ctrl+Number (0-9) goes to a bookmark
          • Navigating to nibbles with Ctrl+Left or Ctrl+Right
          • Flicker free display and fast drawing

           

          Version1.7.7.0 (April 3, 2009)What's new?
          OSWindows 95, 98, ME, NT 4, 2000, XP, 2003, Vista, or 7
          Download page

           

          반응형
          Posted by blueasa
          , |