Results 1 to 10 of 40

Thread: Reverse Engineering References

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #37
    Codesaurus Skarma's Avatar
    Join Date
    Apr 2009
    Location
    Columbus, OH
    Posts
    227

    Re: [INFO] Reverse Engineering References

    Reversed from Halo CE 1.08 using OllyDbg, IDA Pro, Hexrays, and msdn.

    Creates a CRC table from all 256 possible ASCII characters. The only argument used in this function in Halo CE 1.08 is 0x00652968, where the table is stored. This is called only once when Halo first loads up.

    The byte at 0x006B4CA0 is set to 1 after the Crc table is initialized.

    Code:
    //----- (004D3840) --------------------------------------------------------
    
    #define Crc32Poly 0xEDB88320
     
    void InitCrc32Table(DWORD Crc32Table[256])
    {
    for(DWORD i = 0; i < 256; i++)
    {
     DWORD Crc32 = i;
     
     for(DWORD j = 8; j > 0; j--)
     {
       if(Crc32 & 1)
         Crc32 = (Crc32 >> 1) ^ Crc32Poly;
       else
         Crc32 >>= 1;
     }
     
     Crc32Table[i] = Crc32;
    }
    }
    Last edited by Skarma; October 28th, 2009 at 09:56 PM.
    Reply With Quote

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •