![]() |
|
Reading Data\Etc\binary.lod - Printable Version +- LCKB (https://lckb.dev/forum) +-- Forum: ** OLD LCKB DATABASE ** (https://lckb.dev/forum/forumdisplay.php?fid=109) +--- Forum: Programmers Gateway (https://lckb.dev/forum/forumdisplay.php?fid=196) +---- Forum: Coders Talk (https://lckb.dev/forum/forumdisplay.php?fid=192) +---- Thread: Reading Data\Etc\binary.lod (/showthread.php?tid=2110) |
- someone - 06-30-2013 Dont know if someone posted something like this, so here is how to read binary.lod const unsigned char key[0x32] ={ 0x3B, 0x21, 0x6B, 0x2E, 0x61, 0x7A, 0x22, 0x4D, 0x41, 0x45, 0x6A, 0x68, 0x67, 0x61, 0x73, 0x62, 0x75, 0x62, 0x65, 0x31, 0x38, 0x33, 0x34, 0x30, 0x2D, 0x66, 0x5A, 0x2C, 0x3B, 0x61, 0x73, 0x41, 0x4F, 0x4A, 0x4D, 0x2E, 0x6A, 0x6F, 0x71, 0x77, 0x41, 0x73, 0x65, 0x66, 0x46, 0x73, 0x46, 0x6A, 0x64, 0x00 }; const unsigned char* Getkey(int &pKeyLen){ pKeyLen = 0x31; return key; } void DecriptBinary_lod(unsigned char* output, int keylen,const unsigned char* input ,int length){ const unsigned char* key = Getkey(keylen); if (length == 0){ return NULL; } int randomlen = length; for(int i = 0; i < length; i++){ int bKey = key[(randomlen) % keylen]; int bData = input[i]; bKey = (bKey ^ bData) << 0x10; int bResult = (length -i)& 0x80000007; if(! bResult){ bResult--; bResult = bResult | 0xFFFFFFF8; bResult++; } bKey = bKey << (unsigned char)7 - bResult; int reusult = bKey; bKey = bKey >> 0x10; reusult = reusult >> 0x18; output[i] = (unsigned char)(reusult | bKey); randomlen += 0x17; } } Output: 5 20130611_160529 Bin\Engine.dll 4870248 Bin\EntitiesMP.dll 2162800 Bin\GameMP.dll 155752 Bin\Shaders.dll 106602 Bin\Nksp.exe 659556 |