User Tools

Site Tools


windowsdlls

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
windowsdlls [2009/05/08 08:32] nopsledwindowsdlls [2010/04/29 14:48] (current) megadiscman
Line 124: Line 124:
  
 </code> </code>
- 
 ===== OpenMG Secure Module - Implementation Architecture ===== ===== OpenMG Secure Module - Implementation Architecture =====
  
Line 147: Line 146:
 module 51 communicates the content, right data, module 51 communicates the content, right data,
 etc., or manages the right data. etc., or manages the right data.
 +
 +Comparision with the implementation:
  
 Playback module, write module, read module, lcm module all communicate directly to Playback module, write module, read module, lcm module all communicate directly to
Line 153: Line 154:
 Modules in the plugin-layer at the top would communicate with these "Content using" modules. In the implementation Modules in the plugin-layer at the top would communicate with these "Content using" modules. In the implementation
 they never directly communicate with salwrap/pfcom. Plug-in modules uses these modules using COM. they never directly communicate with salwrap/pfcom. Plug-in modules uses these modules using COM.
 +There are tough, exceptions, a couple of functions can be used in pfcom trough COM. Its also possible to use SAL (salExec0) using COM (omgmisc.dll DLL link to salwrap.dll salExec0).
  
 <code> <code>
 .................................................................................................... + UI .................................................................................................... + UI
- SonicStage+ SonicStage                                                              omgjukebox.exe
 .................................................................................................... ....................................................................................................
  ^    ^  ^    ^
Line 162: Line 164:
  | COM    | COM  | COM    | COM
  v    v  v    v
-.................................................................................................... Plug-in layer+.................................................................................................... Plug-in layer (AVLib)
      + CheckOut +Playback     + PlayBack      + CheckOut +Playback     + PlayBack
      + CheckIn +Convert     + Convert      + CheckIn +Convert     + Convert
Line 192: Line 194:
         |         |
  v  v
-   +++++++++++++++++ +++++++++++++++++++++  +++++++++++++++++++++++++ +   +++++++++++++++++++++++++++++++++++++   +++++++++++++++++++++++++++++++  +++++++++++++++++++++++++++++++++++ 
-   rights information +   License repository/Management Area      song file storage section              icv.dat 
-    (opf data)      icv.dat   maclist1,2.dat             OMGKEY, OMGRIGHTS +                                                                                  maclist1.datmaclist2.dat 
-   +++++++++++++++++ +++++++++++++++++++++  ++++++++++++++++++++++++++    [License information]                   [header | music data ]                ekb\version.ekb 
 +                                                                                  OMGKEY\salomgid.dat 
 +    <OMGDIR>\procfile\                      <APPDATA DIR>\Sonicstage           OMGRIGHT\<value>.icv                
 +   +++++++++++++++++++++++++++++++++++++   +++++++++++++++++++++++++++++++  +++++++++++++++++++++++++++++++++++
  
  
Line 209: Line 214:
 .................................................................................................... ....................................................................................................
 </code> </code>
 + 
    
  
Line 232: Line 238:
 The OCM files (except for init.ocm which contains an extra layer of packing) are interpreted as [[OCMBytecode]] The OCM files (except for init.ocm which contains an extra layer of packing) are interpreted as [[OCMBytecode]]
  
-Here is a decode for native code blocks from OCM files. It is severe works-for-me-quality, having at least the following issues:+Here is a decoder for native code blocks from OCM files. It is severe works-for-me-quality, having at least the following issues:
   * It does not name imports from salwrap, it just puts offsets into the import table into a generic name. Check here for some name [[OCMSalwrapExports]]   * It does not name imports from salwrap, it just puts offsets into the import table into a generic name. Check here for some name [[OCMSalwrapExports]]
   * It is unable to parse named exports   * It is unable to parse named exports
Line 239: Line 245:
 The output of the program is an assembler source file (completely unreadable) that is intended to be compiled by the GNU assembler (Win32 port or cross-assembler in linux) and then loaded into a good disassembler, like IDA 4.9 Freeware for example. The output of the program is an assembler source file (completely unreadable) that is intended to be compiled by the GNU assembler (Win32 port or cross-assembler in linux) and then loaded into a good disassembler, like IDA 4.9 Freeware for example.
  
-[[codeblockparser]]+[[codeblockparser]] (the format of the codeblocks is in [[codeblockformat]])
  
 Some info about analysing an OCM file can be found in this part of chat log: Some info about analysing an OCM file can be found in this part of chat log:
Line 249: Line 255:
   * Netmd.ocm: [[netmdocm]]   * Netmd.ocm: [[netmdocm]]
   * Device.sal: [[devicesal]]   * Device.sal: [[devicesal]]
 +  * Trkinf: [[trkinfocm]]
 +
 +===== Links =====
  
 +  * [[http://newgre.net/antire]] - Anti-Reverse Engineering Techniques in DRM Code
windowsdlls.1241771578.txt.gz · Last modified: 2009/05/08 08:32 by nopsled

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki