summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDennis Brentjes <d.brentjes@gmail.com>2016-06-20 14:33:39 +0200
committerDennis Brentjes <d.brentjes@gmail.com>2016-06-20 14:33:39 +0200
commit307c4669d787d25df04d990b3a0e47a1617b078f (patch)
tree64a1e2a45578ea347ff4d18a7a081be838e63ef0
parentdd8f1658c47db665481c725b9469408cf17e8c2e (diff)
downloadopenwar-307c4669d787d25df04d990b3a0e47a1617b078f.tar.gz
openwar-307c4669d787d25df04d990b3a0e47a1617b078f.tar.bz2
openwar-307c4669d787d25df04d990b3a0e47a1617b078f.zip
adds the option to set an offset to le header.
-rw-r--r--le/le_header_parser.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/le/le_header_parser.cpp b/le/le_header_parser.cpp
index e8c7096..3cd5770 100644
--- a/le/le_header_parser.cpp
+++ b/le/le_header_parser.cpp
@@ -10,6 +10,7 @@ int main(int argc, char* argv[]) {
boost::program_options::options_description description;
description.add_options()
("help,h", "produces this help message")
+ ("offset,o", boost::program_options::value<uint16_t>(), "the offset of the LE header")
("exe,e", boost::program_options::value<std::string>(), "The LE executable to parse the header for.")
;
@@ -48,8 +49,14 @@ int main(int argc, char* argv[]) {
return -1;
}
+ uint32_t offset;
+ if(vm.count("offset")) {
+ offset = vm["offset"].as<uint16_t>();
+ }
+
std::ifstream file(file_path.string());
- file.seekg(0x2aa8);
+ //offset for WAR.exe = 10920
+ file.ignore(offset);
auto x = le::parse_header(file);
std::cout << x << std::endl;