Results 1 to 5 of 5

Thread: Reversing Microsoft Reader .lit format to text format, any ideas?

  1. #1

    Reversing Microsoft Reader .lit format to text format, any ideas?

    Wondering if there are any thoughts to convert the .lit format used by the Microsoft Reader program to other formats.

    There are programs to convert from several different to .lit but I haven't heard of anyone being able to convert it back to other formats.

    If anyone has any ideas, please post.
    I promise that I have read the FAQ and tried to use the Search to answer my question.

  2. #2
    I don't know of any progams that automate the task, but i my
    give you a hint on writing your own.

    First, get the "reader" application that processes the given file.
    Look in its disassembly for some sort of an "open" function call.
    Applications first open the target file, and use some sort of
    handle -returned by the OS- to reffer to the file.

    First find the function that opens the file, and pay a close
    attention to the code that follows.

    See if the code reads the values of particular offsets within the file, and note where it stores these values. You will see them reused later, so you will need to jot them down (the offset within
    the file, its value as seen in the debugger, and memory location
    where it is stored.)

    Try to pick one value at a time, and hexedit it to a different value. The reader application will complain about an erraneous
    value X, Bingo!

    Some times the application will read the entire header at once,
    and store it in a dynamic array. Use IDA to isolate the usual
    open/malloc/read functions, and concentrate on the guts.
    Note down the base of the array, and watch out for any variables being compared to an offset of ESI, EDI at rare times.

    If the application reads an entire chunk from the file, note the
    size of that chunk. mostly a paremeter passed to read() which
    ends up in ECX ;P

    I don't know about how much intimacy with the application are
    you willing to have, and how important it is to you. So if really
    intersted, let me know and i will write more on the topic.

    Hunt down for those little closed-source DOS demos, which
    happen to have a run time library for sound and graphics and
    such. They are the easiest to understand, and you will grow so
    little reversing muscles disassembling them.

    Get SkyRoads, it is tiny and comes with 30 or so files, and the
    game is really interesting. Hint, the sprite for the space jet is
    hardcoded in the main app, but all the levels and their repectve
    sound data are in files ; )
    I promise that I have read the FAQ and tried to use the Search to answer my question.

  3. #3
    I think someone at alt.binaries.e-books is working on something. Ping the group and ask.
    I promise that I have read the FAQ and tried to use the Search to answer my question.

  4. #4
    Thanks for the hints. This is what I found from the bookwarez crowd.


    Ok now the correct instructions. Thanks to Chase for pointing out my
    mistake along with the correct link.

    Download and install wintask from

    Open the lit file you wish to convert and make sure you're on the
    first page of TEXT not the chapter listing. Take note of that number,
    go to the last page you wish to convert and subtract the page number
    of the first page of text from the last page you wish to convert. Now
    go back to the first page of text.

    Now open up wordpad. I use the name convert.doc on my desktop.

    Now open the SRC file I've attached in WinTask and click on Play, then
    a box should come up, click run, then click Ok. Now type in the
    number of pages to convert (the number you calculated earlier). It
    should handle everything.

    I put a dialog box with some info in it, if you decide to modify and
    redistribute it change it to "Convert by Tecnodude version
    " add to the version number " Modifyed by: " your name or handle
    and the current date. This way we can keep all the revisions separate.


    CallDialog Dialog
    CallDialog PageD

    BEGINDIALOG Dialog 337, 260, 350, 110
    CAPTION "Convert by Tecnodude"
    TEXT "Convert Version .03 by Tecnodude 1-19-2001", 59, 15
    DEFPUSHBUTTON "&OK", btnOK, 125, 41, 75, 23

    BEGINDIALOG PageD 337, 260, 350, 138
    CAPTION "Number of pages to convert"
    TEXT "Please enter the number of pages to convert:", 55, 19
    EDITTEXT pages$, 128, 42, 78, 20
    DEFPUSHBUTTON "&OK", btnOK, 130, 78, 75, 23
    UseWindow("MSREADER.EXE|EBUI_CHILD|Microsoft Reader|1",1)

    UseWindow("MSREADER.EXE|EBUI_CHILD|Microsoft Reader|1",1)

    UseWindow("MSREADER.EXE|EBUI_CHILD|Microsoft Reader|1",1)

    UseWindow("WORDPAD.EXE|RichEdit20W|New WordPad Document - WordPad|1",1)
    SendKeys("<Ctrl v>")

    UseWindow("MSREADER.EXE|EBUI_CHILD|Microsoft Reader|1",1)
    until pages<1

    PS: <Dunamai> Von_Cha, one note. Make sure the Reader Font Size is at its default (middle setting)
    I promise that I have read the FAQ and tried to use the Search to answer my question.

  5. #5

    .lit format to text format

    Now if we could just find Win Task ...
    I promise that I have read the FAQ and tried to use the Search to answer my question.

Similar Threads

  1. Detecting whether the EXE is in PE format
    By binarycoder2k in forum The Newbie Forum
    Replies: 12
    Last Post: May 3rd, 2007, 02:03
  2. Reversing an unknown image format?
    By sporadic in forum The Newbie Forum
    Replies: 4
    Last Post: December 20th, 2003, 18:37
  3. Bad or unknown format
    By mong in forum OllyDbg Support Forums
    Replies: 4
    Last Post: February 18th, 2003, 16:30
  4. IVT format?
    By crUsAdEr in forum Malware Analysis and Unpacking Forum
    Replies: 9
    Last Post: April 8th, 2002, 11:41
  5. Breakpoint format in Softice
    By JMI in forum Tools of Our Trade (TOT) Messageboard
    Replies: 0
    Last Post: April 25th, 2001, 13:35


Posting Permissions

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