2016-01-06 00:01:17 +09:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
// util.h
|
|
|
|
// 8/23/2013 jichi
|
|
|
|
|
2018-10-14 10:29:23 -04:00
|
|
|
#include "common.h"
|
2016-01-06 00:01:17 +09:00
|
|
|
|
|
|
|
namespace Util {
|
|
|
|
|
|
|
|
bool unloadCurrentModule();
|
|
|
|
|
|
|
|
DWORD GetCodeRange(DWORD hModule,DWORD *low, DWORD *high);
|
|
|
|
DWORD FindCallAndEntryBoth(DWORD fun, DWORD size, DWORD pt, DWORD sig);
|
|
|
|
DWORD FindCallOrJmpRel(DWORD fun, DWORD size, DWORD pt, bool jmp);
|
|
|
|
DWORD FindCallOrJmpAbs(DWORD fun, DWORD size, DWORD pt, bool jmp);
|
|
|
|
DWORD FindCallBoth(DWORD fun, DWORD size, DWORD pt);
|
|
|
|
DWORD FindCallAndEntryAbs(DWORD fun, DWORD size, DWORD pt, DWORD sig);
|
|
|
|
DWORD FindCallAndEntryRel(DWORD fun, DWORD size, DWORD pt, DWORD sig);
|
|
|
|
DWORD FindEntryAligned(DWORD start, DWORD back_range);
|
|
|
|
DWORD FindImportEntry(DWORD hModule, DWORD fun);
|
2018-06-15 04:32:35 -04:00
|
|
|
bool CheckFile(LPCWSTR name);
|
2016-01-06 00:01:17 +09:00
|
|
|
|
|
|
|
bool SearchResourceString(LPCWSTR str);
|
|
|
|
|
2019-11-10 14:13:54 -05:00
|
|
|
std::pair<uint64_t, uint64_t> QueryModuleLimits(HMODULE module);
|
2019-06-09 00:48:30 -04:00
|
|
|
std::vector<uint64_t> SearchMemory(const void* bytes, short length, DWORD protect = PAGE_EXECUTE, uintptr_t minAddr = 0, uintptr_t maxAddr = -1ULL);
|
2018-08-28 22:05:56 -04:00
|
|
|
|
2016-01-06 00:01:17 +09:00
|
|
|
} // namespace Util
|
|
|
|
|
|
|
|
// EOF
|