/
githubmirror
/
x64dbg
Обзор
Документация
Войти
/
githubmirror
/
x64dbg
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
development
src/dbg/analysis/AnalysisPass.h
43 строки
1 KB
Duncan Ogilvie
Fix compilation on MinGW (clang)
17 мар 2025, 04:32
17 мар 2025, 04:32
9b301b3
Код
Авторство
О чём код?
#pragma once #include "_global.h" #include "BasicBlock.h" #include <functional> class AnalysisPass { public: AnalysisPass(duint VirtualStart, duint VirtualEnd, BBlockArray & MainBlocks); virtual ~AnalysisPass(); virtual const char* GetName() = 0; virtual bool Analyse() = 0; protected: duint m_VirtualStart; duint m_VirtualEnd; duint m_DataSize; unsigned char* m_Data; BBlockArray & m_MainBlocks; unsigned char* TranslateAddress(duint Address) { ASSERT_TRUE(ValidateAddress(Address)); return &m_Data[Address - m_VirtualStart]; } bool ValidateAddress(duint Address) { return (Address >= m_VirtualStart && Address < m_VirtualEnd); } BasicBlock* FindBBlockInRange(duint Address); duint FindBBlockIndex(BasicBlock* Block); duint IdealThreadCount(); void SetIdealThreadCount(duint Count); void ParallelFor(duint ThreadCount, const std::function<void(duint)> & Worker); private: duint m_InternalMaxThreads; };