QFMOD v1.99b QFMOD

  • 1. Introduction
  • 2. Usage
  • ***** 2.1. Commands
  • ***** 2.2. Switches
  • 3. Examples



    1. Introduction

    QFMOD - модифицирует файлы.


    2. Usage
     
    QFMOD quick file modifier.
    
    Usage: QFMOD [COMMAND..] [-SWITCH..]
    
    commands:
    =========
     compare:[1-5]         compare two files.
     find:<val>            finding.
     change:<val>          change, replacement.
     to:<val>              will changed on ...
     offset:<hex>          Hex address.
     counter:<num>         counter.
     backup:[yes,no]       save backup copy.
     chksum:[normal,total] Fix check sum.
    
    switches:
    =========
     s<file>               Set source file.
     d<dir>                Set output file dir.
     m:[hex,text]          mode of programm work.
    
     Errorlevels returned by QFMOD are as follows:
     0 - no errors
     1 - error
     2 - QFMOD was not working
     3 - unequal size of files, to compare(if been 'comare' command)
    
    



    2.1 Commands
     COMPARE                  Сравнивать
     
     Сравнить два файла. Программа сравнит два файла. Данная команда может принимать параметр
     (цифра от 1 до 5, после дветочия) задающий способ вывода:
    
       1 - вывод таблицы типа (offset val_1 val_2), без рамок, несовпадения выделяются
           символом *  
     
       2 - вывод таблицы типа (offset | val_1 | val_2), с рамкой, несовпадения выделяются
           символом *  
    
       3 - вывод таблицы типа (offset val_1 val_2), без рамок, выводятся только
           несовпадения.
    
       4 - вывод таблицы типа (offset | val_1 | val_2), с рамкой, выводятся только
           несовпадения.
    
       5 - вывод только offset-ов, только несовпадения. 
    
    
     FIND                  Искать
     Программа найдет заданное значение.
    
     CHANGE                Замена
     Программа поменяет значение, заданное данной командой, на значение заданное командой 'TO'.
    
     TO                    На что менять
     Программа поменяет значение заданное командой 'CHANGE', на значение, заданное данной командой.
    
     OFFSET                Шестнадцатиричный адресс
     Программа начнет просматривать файл с адреса, заданного данной командой.
     Примечание: программа рассмотрит одинакого шестнадцатиричное значение 0x1000 и 1000 
    
    
     COUNTER               Счетчик
     Программа произведет работу, заданное количество раз.
    
     backup                Резервная копия
     QFMOD создаст резервную копию файла.
     Данная команда имеет два параметра:
             yes  - создать резервную копию файла. 
             no   - НЕ создавать резервную копию файла.
     Команда backup без параметра равнозначна команде backup с параметром 'yes' т.е создать ре
     зервную копию файла.
    
    
    
     CHKSUM                Контрольная сумма
     QFMOD подсчитает контрольную сумму файла, и если она отличается от той что записана
     в PE заголовке, заменит эти данные.
     Данная команда имеет два параметра:
             normal  - Предполагает что PE заголовок в НАЧАЛЕ файла. 
             total   - Предполагает что PE заголовок в ЛЮБОМ МЕСТЕ файла(как у setupldr.bin).
     Команда chksum без параметра равнозначна команде chksum с параметром 'normal' т.е предпола
     гается что PE заголовок в начале файла.
    
    
    



    2.2 Switches
     -s<dir>                 Имя(путь)исходного файла
    
     -d<dir>                 Директорий результат
     Директорий, в который сохранить файл результат.
    
     -m                      Режим работы программы
     Задает режим работы программы. Может иметь два значения:
               hex    - шестнадцатиричный
               text   - текстовый
    
    



    3. EXAMPLES
     1. Пример поиска байт(hex).
    
      
    QFMOD -Ssetupldr.bin -m:HEX FIND:90909090
    
    В данном случае программа будет искать сочетание шестнадцатиричных чисел - 90909090, в файле setupldr.bin и если найдет, то выведет на экран.




     2. Пример поиска и замены символов (text). 
    
     
    QFMOD -Ssetupldr.bin -m:text change:i386 to:BT_1
    
    В данном случае программа будет искать, для замены, сочетание текстовых символов - i386, в файле setupldr.bin и если найдет, то заменит их на сочетание символов BT_1.




     3. Пример вывода байт на экран.
    
     
    QFMOD -Ssetup.exe -m:hex find offset:0x1000 counter:10
    
    В данном случае программа выведет 10 символов и их шестнадцатиричных значений, начиная с hex адреса 0x1000, файла setup.exe.




     4. Пример поиска байт(hex). 
    
    QFMOD -Ssetup.exe -m:hex find:0x9c67
    
    В данном случае программа выведет все сочетания 9c67 в файле setup.exe.




     5. Пример поиска байт(hex).
    
    QFMOD -SC:\setup.exe -m:hex find:0x9c67 counter:5
    
    В данном случае программа выведет 5 сочетаний 9c67 начиная от первого встреченного в файле C:\setup.exe.




     6. Пример поиска байт(hex). 
    
    QFMOD -Ssetup.exe -m:hex find:0x9c67 counter:5 offset:0x1200
    
    В данном случае программа выведет 5 сочетаний 9c67 начиная c дреса 0x1200, в файле setup.exe




     7. Пример использования QFMOD в командном сценарии. 
    
    REM
    REM Данный скрипт сравнивает файл F1 с файлом F2, и, если обнаружит отличия производит 
    REM изменения в F1. Итог F1 делается одинаковым с F2.
    REM (работает медленно)
    REM
    @ECHO OFF
    SET F1=SETUP.EXE
    SET F2=E:\SETUP.EXE
    
    QFMOD -M:HEX COMPARE:3 -S%F1% -S%F2% > %TEMP%\MISMATCH.TXT
    
    IF EXIST %TEMP%\MISMATCH.TXT (
    FOR /F "TOKENS=1,2,3* delims= " %%A IN (%TEMP%\MISMATCH.TXT) DO (
    ECHO ------------------------------------------------------------
    QFMOD -M:HEX -S%F1% OFFSET:%%A CHANGE:0x%%B TO:0x%%C COUNTER:1
    ECHO OFFSET=%%A    %%B =^> %%C
    ECHO ------------------------------------------------------------
    REM PAUSE
     )
     )
    
    
    PAUSE
    
    Данный пример демонстрирует то, как QFMOD может сравнивнить два файла и вности изменения в файл.









    Copyright © 2008,2009 by nanopredator