summaryrefslogtreecommitdiff
path: root/PE/extract-various.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'PE/extract-various.cpp')
-rw-r--r--PE/extract-various.cpp35
1 files changed, 34 insertions, 1 deletions
diff --git a/PE/extract-various.cpp b/PE/extract-various.cpp
index 9a68a3d..a4261b9 100644
--- a/PE/extract-various.cpp
+++ b/PE/extract-various.cpp
@@ -9,7 +9,7 @@ int pos[50];
virtual int startup() throw (GeneralException) {
Input * f = new Input("dump/0000.out");
Output * s = new Output("various/various.txt");
- unsigned int c, b, i, j, size, n, changed;
+ unsigned int c, b, i, j, size, changed;
unsigned short p, t;
String fn;
@@ -126,6 +126,39 @@ virtual int startup() throw (GeneralException) {
delete s;
}
+ f = new Input("dump/0075.out");
+
+ for (i = 0; i < 4; i++) {
+ Uint32 pos, pos2, size;
+
+ f->seek(i * 4);
+ pos = f->readU32();
+ pos2 = f->readU32();
+ f->seek(pos);
+
+ if (i == 3) {
+ size = f->readU32();
+ f->seek(pos);
+ } else {
+ size = pos2 - pos;
+ }
+
+ s = new Output(String().set("75/%i.out", i));
+
+ copy(f, s, size);
+
+ delete s;
+
+ if (i == 1) {
+ s = new Output("75/text.txt");
+ f->seek(pos);
+ extracttext(f, s, size);
+ delete s;
+ }
+ }
+
+ delete f;
+
return 0;
}
CODE_ENDS