Index: courgette/disassembler_win32.h |
diff --git a/courgette/disassembler_win32.h b/courgette/disassembler_win32.h |
index 42dc2fef3ada8367c6871a1fdf49c9850a68c326..d9d52e4b7e20b629c2ee7c79033f54dd56f12a7d 100644 |
--- a/courgette/disassembler_win32.h |
+++ b/courgette/disassembler_win32.h |
@@ -49,12 +49,17 @@ class DisassemblerWin32 : public Disassembler { |
static std::string SectionName(const Section* section); |
protected: |
+ // Returns 'true' if an valid executable is detected using only quick checks. |
huangs
2016/06/17 15:21:57
NIT: true does not need ''
NIT: *a* valid executab
|
+ // Derived classes should inject |magic| corresponding to their architecture, |
+ // which will be checked against the detected one. |
+ static bool QuickDetect(const uint8_t* start, size_t length, uint16_t magic); |
+ |
// Disassembler interfaces. |
RvaVisitor* CreateAbs32TargetRvaVisitor() override; |
RvaVisitor* CreateRel32TargetRvaVisitor() override; |
void RemoveUnusedRel32Locations(AssemblyProgram* program) override; |
- DisassemblerWin32(const void* start, size_t length); |
+ DisassemblerWin32(const uint8_t* start, size_t length); |
CheckBool ParseFile(AssemblyProgram* target) WARN_UNUSED_RESULT; |
bool ParseAbs32Relocs(); |