Skip to content

Commit

Permalink
Fix
Browse files Browse the repository at this point in the history
  • Loading branch information
horsicq committed Apr 29, 2019
1 parent 3b45fdb commit 1d98240
Show file tree
Hide file tree
Showing 12 changed files with 8 additions and 71 deletions.
4 changes: 0 additions & 4 deletions binary.h
Original file line number Diff line number Diff line change
Expand Up @@ -225,16 +225,12 @@ public slots:
// char pEntryPoint[EPCODE];
// unsigned int nEntryPointSize;
unsigned long long ___nSize;

unsigned char *___pMemory;

int nIsReverse;

private:
// void _clearMemory();
// void addMemory(unsigned int nOffset,unsigned int nSize);


};

#endif // BINARY_H
7 changes: 3 additions & 4 deletions die_source/dielib/dielib.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,9 @@
#define DIE_SINGLELINEOUTPUT 0x00000010
#define DIE_SHOWFILEFORMATONCE 0x00000020

#ifdef Q_OS_WIN
typedef unsigned short wchar_t;
#endif

//#ifdef Q_OS_WIN
//typedef unsigned short wchar_t;
//#endif

#ifdef __cplusplus
extern "C" {
Expand Down
7 changes: 1 addition & 6 deletions die_source/scan.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
#ifndef SCAN_H
#define SCAN_H


#include <QCoreApplication>
//#include <QtConcurrentMap>
#include <QFutureWatcher>
Expand Down Expand Up @@ -55,26 +54,22 @@ class Scan : public QObject
{
Q_OBJECT
public:
explicit Scan(QObject *parent = 0);
explicit Scan(QObject *parent=nullptr);
void setData(QString sScanFileName,__DIE_OPTIONS *pOptions);
void setData(QList<QString> *dirContent,__DIE_OPTIONS *pOptions);
void setData(__DIE_OPTIONS *pOptions);
void setShowSource(bool bShowSource);

bool isRun();
bool isCompleted();
void setRun(bool bIsRun);

bool analize(QString sFileName,bool bFullScan);
bool die_scanPE(QString sFileName,QString sPrefix);
bool die_scanELF(QString sFileName,QString sPrefix);
bool die_scanMACH(QString sFileName,QString sPrefix);
bool die_scanMSDOS(QString sFileName,QString sPrefix);
bool die_scanText(QString sFileName,QString sPrefix);
bool die_scanBinary(QString sFileName,QString sPrefix);

void die_handleSignatures(PluginsScript *pluginScript,QList<__SIGNATURE> *pListSignatures,QString sType);

static void loadTypeScripts(QList<__SIGNATURE> *pList,QString sType,__DIE_OPTIONS *pOptions);
static void die_loadScripts(__DIE_OPTIONS *pOptions);
// void _compareFile(QString sScript);
Expand Down
5 changes: 1 addition & 4 deletions die_source/scriptbinary.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ class scriptBinary : public scriptGeneric
{
Q_OBJECT
public:
explicit scriptBinary(QObject *parent = 0);
explicit scriptBinary(QObject *parent=nullptr);
void setData(Binary *binary);

signals:
Expand All @@ -41,12 +41,10 @@ public slots:
// QString upperCase(QString sString);

// bool isPlainText();

bool compare(QString sSignature,unsigned int nOffset=0);
// bool compareHeader(QString sSignature);
bool compareEP(QString sSignature,unsigned int nOffset=0);
// bool compareEPn(QString sSignature,unsigned int nOffset);

QString getString(unsigned int nOffset,unsigned int nSize=50);
unsigned int readDword(unsigned int nOffset);
unsigned short readWord(unsigned int nOffset);
Expand All @@ -62,7 +60,6 @@ public slots:
int findString(unsigned int nOffset, unsigned int nSize, QString sValue);
int findSignature(unsigned int nOffset, unsigned int nSize, QString sSignature);
bool isSignaturePresent(unsigned int nOffset, unsigned int nSize, QString sSignature);

float calculateEntropy(unsigned int nOffset, unsigned int nSize);
QString getSignature(unsigned int nOffset,unsigned int nSize);
QString calculateMD5(unsigned int nOffset, unsigned int nSize);
Expand Down
15 changes: 0 additions & 15 deletions die_source/scriptelf.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ class scriptELF : public scriptGeneric

public slots:
QString getGeneralOptions();

unsigned short getElfHeader_type();
unsigned short getElfHeader_machine();
unsigned int getElfHeader_version();
Expand All @@ -51,7 +50,6 @@ public slots:
unsigned short getElfHeader_shentsize();
unsigned short getElfHeader_shnum();
unsigned short getElfHeader_shstrndx();

bool compareEP(QString sSignature,unsigned int nOffset=0);
// bool compareEPn(QString sSignature,unsigned int nOffset);
// bool compareHeader(QString sSignature);
Expand All @@ -71,41 +69,28 @@ public slots:
int findString(unsigned int nOffset, unsigned int nSize, QString sValue);
int findSignature(unsigned int nOffset, unsigned int nSize, QString sSignature);
bool isSignaturePresent(unsigned int nOffset, unsigned int nSize, QString sSignature);

// bool compareReg(QString sSignature,unsigned int nOffset);

bool isSectionNamePresent(QString sSectionName);
bool isStringInTablePresent(QString sSectionName, QString sString);

float calculateEntropy(unsigned int nOffset, unsigned int nSize);
QString getSignature(unsigned int nOffset,unsigned int nSize);
QString calculateMD5(unsigned int nOffset, unsigned int nSize);

unsigned int getSectionFileOffset(int nSection);
unsigned int getSectionFileSize(int nSection);
int getSectionNumber(QString sSectionName);

long long RVAToOffset(unsigned long long nRVA);
long long VAToOffset(unsigned long long nVA);
long long OffsetToVA(unsigned long long nOffset);
long long OffsetToRVA(unsigned long long nOffset);

unsigned int getProgramFileOffset(int nProgram);
unsigned int getProgramFileSize(int nProgram);

unsigned int getOverlaySize();
unsigned int getOverlayOffset();
bool isOverlayPresent();


int getNumberOfSections();
int getNumberOfPrograms();

QString getSectionName(int nSection);


bool compareOverlay(QString sSignature,unsigned int nOffset=0);

long long getEntryPointOffset();
private:
ELFFile *elffile;
Expand Down
2 changes: 0 additions & 2 deletions die_source/scriptgeneric.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ public slots:
// virtual bool compareHeader(QString sSignature)=0;
virtual bool compareEP(QString sSignature,unsigned int nOffset)=0;
// virtual bool compareEP(unsigned int nOffset,QString sSignature)=0;

virtual QString getString(unsigned int nOffset,unsigned int nSize=50)=0;
virtual unsigned int readDword(unsigned int nOffset)=0;
virtual unsigned short readWord(unsigned int nOffset)=0;
Expand All @@ -63,7 +62,6 @@ public slots:
virtual bool isSignaturePresent(unsigned int nOffset, unsigned int nSize, QString sSignature)=0;
virtual float calculateEntropy(unsigned int nOffset, unsigned int nSize)=0;
virtual QString getSignature(unsigned int nOffset,unsigned int nSize)=0;

virtual QString calculateMD5(unsigned int nOffset, unsigned int nSize)=0;

public slots:
Expand Down
9 changes: 0 additions & 9 deletions die_source/scriptmach.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ public slots:

bool compareEP(QString sSignature,unsigned int nOffset=0);
// bool compareEPn(QString sSignature,unsigned int nOffset);

QString getString(unsigned int nOffset,unsigned int nSize=50);
unsigned int readDword(unsigned int nOffset);
unsigned short readWord(unsigned int nOffset);
Expand All @@ -58,33 +57,25 @@ public slots:
bool isLibraryPresent(QString sLibrary);
unsigned int getLibraryCurrentVersion(QString sLibrary);
int getSectionNumber(QString sSectionName);

QString getGeneralOptions();
int getNumberOfSections();
int getNumberOfSegments();

float calculateEntropy(unsigned int nOffset, unsigned int nSize);
QString getSignature(unsigned int nOffset,unsigned int nSize);
QString calculateMD5(unsigned int nOffset, unsigned int nSize);

unsigned int getSectionFileOffset(int nSection);
unsigned int getSectionFileSize(int nSection);

QString getSectionName(int nSection);

QString getSegmentName(int nSegment);
unsigned int getSegmentFileSize(int nSegment);
unsigned int getSegmentFileOffset(int nSegment);

long long RVAToOffset(unsigned long long nRVA);
long long VAToOffset(unsigned long long nVA);
long long OffsetToVA(unsigned long long nOffset);
long long OffsetToRVA(unsigned long long nOffset);

unsigned int getOverlaySize();
unsigned int getOverlayOffset();
bool isOverlayPresent();

bool compareOverlay(QString sSignature,unsigned int nOffset=0);
long long getEntryPointOffset();
private:
Expand Down
2 changes: 0 additions & 2 deletions die_source/scriptmsdos.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,10 @@ class scriptMSDOS : public scriptGeneric
explicit scriptMSDOS(QObject *parent = 0);
void setData(MSDOSFile *msdosfile);


public slots:

bool compareEP(QString sSignature,unsigned int nOffset=0);
// bool compareEPn(QString sSignature,unsigned int nOffset);

QString getString(unsigned int nOffset,unsigned int nSize=50);
unsigned int readDword(unsigned int nOffset);
unsigned short readWord(unsigned int nOffset);
Expand Down
2 changes: 1 addition & 1 deletion die_source/singlefilescan.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ void SingleFileScan::appendError(QString sMessage)
appendMessage(sMessage);
}

#ifdef Q_WS_WIN
#ifdef Q_OS_WIN
bool WINAPI _DllMain(_In_ HINSTANCE hinstDLL,_In_ DWORD fdwReason,_In_ LPVOID lpvReserved)
{
switch(fdwReason)
Expand Down
4 changes: 2 additions & 2 deletions die_source/singlefilescan.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ class SingleFileScan : public QObject
{
Q_OBJECT
public:
SingleFileScan(QObject *parent = 0);
SingleFileScan(QObject *parent=nullptr);

// void setOptions(__DIE_OPTIONS *pOptions);
static void flagsToOptions(unsigned int nFlags,__DIE_OPTIONS *pOptions);
Expand All @@ -31,7 +31,7 @@ private slots:
QString sResult;
QString sCurrentType;
};
#ifdef Q_WS_WIN
#ifdef Q_OS_WIN
bool WINAPI _DllMain(_In_ HINSTANCE hinstDLL,_In_ DWORD fdwReason,_In_ LPVOID lpvReserved);
#endif
int __DIE_scan(QString szFileName,char *pszOutBuffer,int nOutBufferSize,unsigned int nFlags,QString sDataBase);
Expand Down
8 changes: 0 additions & 8 deletions machfile.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ MACHFile::MACHFile(QObject *parent) :

bool MACHFile::isValid()
{

if(size()>=(int)sizeof(mach_header))
{
unsigned int nMagic=readDword(0);
Expand All @@ -53,13 +52,11 @@ bool MACHFile::isMACH64()
return true;
}


return false;
}

bool MACHFile::isReverse()
{

if(nIsReverse==-1)
{
unsigned int nMagic=readDword(0);
Expand Down Expand Up @@ -429,8 +426,6 @@ unsigned int MACHFile::getSegmentHeaderOffset(unsigned int nSegment)
{
return getLoadCommand_offset(nResult-1);
}


}

emit appendError(QString("Invalid segment number: %1").arg(nSegment));
Expand Down Expand Up @@ -912,8 +907,6 @@ QList<load_command_offset> MACHFile::getLoadCommands_offset()
nOffset+=record.cmdsize;
}



return listResult;
}

Expand Down Expand Up @@ -1046,7 +1039,6 @@ QList<section_64> MACHFile::getSectionsList64()
{
QList<section_64> listResult;


QList<load_command_offset> list=getLoadCommands_offset();
unsigned int nOffset=0;

Expand Down
14 changes: 0 additions & 14 deletions pluginsscript.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,20 +26,6 @@
#include <QFile>
#include <QDir>
#include "die_source/utils.h"
//#include "../_pe.h"
//#include "scriptpe.h"
//#include "scriptbinary.h"
//#include "scriptelf.h"
//#include "scriptmsdos.h"
////#include "dialogoptions.h"
//#include <QTime>

//struct __SD
//{
// QByteArray *baData;
// unsigned int nEntryPointOffset;
// unsigned int nSize;
//};

class PluginsScript : public QScriptEngine
{
Expand Down

0 comments on commit 1d98240

Please sign in to comment.