2019-03-17 18:42:07 +03:00
|
|
|
#ifndef PE_H
|
|
|
|
#define PE_H
|
|
|
|
|
2019-03-20 18:05:14 +03:00
|
|
|
#include <QFile>
|
2019-03-17 18:42:07 +03:00
|
|
|
#include <QString>
|
2019-03-22 23:36:22 +03:00
|
|
|
#include <QVector>
|
2019-03-18 10:33:03 +03:00
|
|
|
#include "igetlibinfo.h"
|
2019-03-17 18:42:07 +03:00
|
|
|
|
2019-03-23 20:40:33 +03:00
|
|
|
namespace peparse {
|
|
|
|
struct parsed_pe_internal;
|
|
|
|
}
|
2019-03-18 10:33:03 +03:00
|
|
|
class PE : public IGetLibInfo {
|
2019-03-17 18:42:07 +03:00
|
|
|
|
2019-03-17 20:16:48 +03:00
|
|
|
private:
|
2019-03-21 00:34:57 +03:00
|
|
|
|
2019-08-31 22:22:26 +03:00
|
|
|
bool getDep(peparse::parsed_pe_internal *, LibInfo &res) const;
|
2019-03-18 17:12:40 +03:00
|
|
|
|
2019-03-17 18:42:07 +03:00
|
|
|
public:
|
|
|
|
|
|
|
|
enum class RunType: unsigned short {
|
|
|
|
_UNKNOWN = 0x0,
|
|
|
|
_32bit = 0x10B,
|
|
|
|
_64bit = 0x20B,
|
|
|
|
_ROM = 0x107,
|
|
|
|
};
|
|
|
|
PE();
|
2019-03-18 10:33:03 +03:00
|
|
|
|
2019-08-31 22:22:26 +03:00
|
|
|
bool getLibInfo(const QString& lib, LibInfo& info) const override;
|
2019-03-18 17:12:40 +03:00
|
|
|
|
|
|
|
~PE() override;
|
|
|
|
|
2019-03-17 18:42:07 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // PE_H
|