Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Closers Online (CBT/OBT) (CMF format) 0.4
- # Written by Ekey (h4x0r)
- #
- # script for QuickBMS http://quickbms.aluigi.org
- # Korean Client
- # http://closers.nexon.com
- # NK ENGINE COMBINE FILE ver. 1.0
- #idstring "\x4E\x00\x4B\x00\x20\x00\x45\x00\x4E\x00\x47\x00\x49\x00\x4E\x00\x45\x00\x20\x00\x43\x00\x4F\x00\x4D\x00\x42\x00\x49\x00\x4E\x00\x45\x00\x20\x00\x46\x00\x49\x00\x4C\x00\x45\x00\x20\x00\x76\x00\x65\x00\x72\x00\x2E\x00\x20\x00\x31\x00\x2E\x00\x30\x00\x00\x00"
- # Indonesian Client
- # http://closers.megaxus.com
- # COMBINE FILE ver. 1.0 - Also can be nulled for SCRIPT_PACK.CMF archive
- #idstring "\x43\x00\x4F\x00\x4D\x00\x42\x00\x49\x00\x4E\x00\x45\x00\x20\x00\x46\x00\x49\x00\x4C\x00\x45\x00\x20\x00\x76\x00\x65\x00\x72\x00\x2E\x00\x20\x00\x31\x00\x2E\x00\x30\x00\x00\x00"
- # Keys for decrypting entry table info
- set ENTRY_KEY1 long "0xAC9372DE"
- set ENTRY_KEY2 long "0x8469AF01"
- set ENTRY_KEY3 long "0xDC39628F"
- # Keys for decrypting files with extension FX, LUA, TET, XET
- set SCRIPT_KEY1 long "0x826CCAB8"
- set SCRIPT_KEY2 long "0x46A2C7F2"
- set SCRIPT_KEY3 long "0x90DC3AFD"
- # Function for decrypt > pBuffer, dwSize, dwKey1, dwKey2, dwKey3
- set MEMORY_FILE2 binary "\x55\x8b\xec\xb8\xab\xaa\xaa\x2a\xf7\x6d\x0c\xd1\xfa\x8b\xc2\xc1\xe8\x1f\x03\xc2\x89\x45\x0c\x85\xc0\x7e\x7b\x53\x8b\x5d\x08\x56\x57\x83\xc3\x08\x8b\x53\xf8\x8b\x73\xfc\x8b\x3b\x8b\xca\xc1\xf9\x18\x81\xe1\xff\x00\x00\x00\x8b\xc2\xc1\xe0\x18\x0b\xc8\x81\xe2\x00\xff\xff\x00\x0b\xca\x33\x4d\x10\x8b\xc6\x89\x4b\xf8\x8b\xce\xc1\xf9\x18\x81\xe1\xff\x00\x00\x00\xc1\xe0\x18\x0b\xc8\x81\xe6\x00\xff\xff\x00\x0b\xce\x33\x4d\x14\x8b\xc7\x89\x4b\xfc\x8b\xcf\xc1\xf9\x18\x81\xe1\xff\x00\x00\x00\xc1\xe0\x18\x0b\xc8\x81\xe7\x00\xff\xff\x00\x0b\xcf\x33\x4d\x18\xff\x4d\x0c\x89\x0b\x8d\x5b\x0c\x75\x91\x5f\x5e\x5b\x5d\xc3"
- # Function for wipe unused data > pBuffer, dwSize
- set MEMORY_FILE3 binary "\x55\x8b\xec\xb8\xe1\x83\x0f\x3e\xf7\x6d\x0c\x56\x8b\x75\x08\xc1\xfa\x07\x57\x8b\xfa\xc1\xef\x1f\x03\xfa\x85\xff\x7e\x2d\x8b\xff\x32\xc9\x33\xc0\x66\x83\x3c\x46\x00\x74\x07\x80\xf9\x01\x75\x0a\xeb\x02\xb1\x01\x33\xd2\x66\x89\x14\x46\x40\x3d\xff\x00\x00\x00\x7c\xe2\x81\xc6\x10\x02\x00\x00\x4f\x75\xd5\x5f\x5e\x5d\xc3"
- goto 0x64
- get FILES long
- savepos TABLE_OFFSET
- xmath FILES "((FILES << 24) & 0xFF000000) | ((FILES >> 0) & 0x0000FF00) | ((FILES << 0) & 0x00FF0000) | ((FILES >> 24) & 0x000000FF)"
- math FILES ^= ENTRY_KEY1
- set TABLE_SIZE long FILES
- math TABLE_SIZE *= 528
- set DATASIZE long 104
- math DATASIZE += TABLE_SIZE
- log MEMORY_FILE TABLE_OFFSET TABLE_SIZE
- calldll MEMORY_FILE2 0 cdecl RET MEMORY_FILE TABLE_SIZE ENTRY_KEY1 ENTRY_KEY2 ENTRY_KEY3
- calldll MEMORY_FILE3 0 cdecl RET MEMORY_FILE TABLE_SIZE
- for i = 0 < FILES
- getdstring UNAME 512 MEMORY_FILE
- set NAME UNICODE UNAME
- get SIZE long MEMORY_FILE
- get ZSIZE long MEMORY_FILE
- get OFFSET long MEMORY_FILE
- math OFFSET += DATASIZE
- get FLAG long MEMORY_FILE
- set EXT extension NAME
- if EXT == "FX"
- set FLAG long 2
- elseif EXT == "LUA"
- set FLAG long 2
- elseif EXT == "TET"
- set FLAG long 2
- elseif EXT == "XET"
- set FLAG long 2
- endif
- if FLAG == 0
- log NAME OFFSET SIZE
- elseif FLAG == 1
- clog NAME OFFSET ZSIZE SIZE
- elseif FLAG == 2
- log NAME OFFSET ZSIZE
- #================================================================================
- # Decrypting scripts not supported anymore. Now game uses modified SEED algorithm.
- # Use COSTool :)
- #================================================================================
- #
- #encryption seed_cbc "\x34\x9F\x99\x14\xAC\xD2\x7A\x31\x9E\xEA\x52\x86\x49\x71\xB5\xD1" "\x84\xAC\xDD\x31\x89\x54\xFF\x29\xA3\x5C\x60\xEE\x07\xFA\x74\x16"
- #log MEMORY_FILE4 OFFSET ZSIZE
- #encryption "" ""
- #calldll MEMORY_FILE2 0 cdecl RET MEMORY_FILE4 ZSIZE SCRIPT_KEY1 SCRIPT_KEY2 SCRIPT_KEY3
- # Temporary set unzip dynamic because not all data decompressed while extracting files. Decompress it manually, if you want (Use OffZip for example) ^^
- #comtype unzip_dynamic
- #clog NAME 0 ZSIZE SIZE MEMORY_FILE4
- endif
- next i
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement