TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Mike Bilow
from: Rinat Sadretdinow
date: 1996-01-11 19:59:32
subject: EXE compressor/encryptor for OS/2

Hello Mike!

Wednesday January 03 1996 19:44, Mike Bilow wrote to Rinat Sadretdinow:

 MB> Since code is loaded into read-only memory, and is both shareable and
 MB> discardable, any code compression facility must be built into the
 MB> operating system.

Yes, you said right.

 MB> If applications try to do their own code compression, then very bad
 MB> things will happen.

But it is still possible (I hope). I see the only way to reach this (maybe
someone guess another path): a little stub allocates enough memory to store all
the unpacked exe code and second stub, unpacks the application segments into
it,
calls DosCreateCSAlias, and then jumps to the second stub. Second stub frees
previous code segment allocated for application by the OS/2 system loader and
jumps to the application entry code into unpacked code. I've never tried to do
this but think it will work. The only disaster I assume that OS/2 may (or may
not :-) to swap or move the code segment created guessing it was general data
segment allocated by the application.

 RS>> Yes, but unfortunately REPACK does not pack all programs
 RS>> properly. Sometimes it turns them into unexecutable stuff
 RS>> without possibility to restore original code :-(

 MB> This is the first I've heard of this.  I've had some extensive
 MB> discussions with IBM about REPACK, and they are not aware of any such
 MB> problems.  Can you provide an example?

Sorry, it was my miss. I repacked wpp386.exe and did not mention it had its own
loader that incompatible with standard OS/2 LX files. As the result I got exe
file about 7 kilobytes long and it could not be executed by OS/2.

 RS>> Wrong, exe page type #5 is not supported by OS/2 system
 RS>> loader prior 2.99 only. So very first OS/2 WARP versions can
 RS>> execute those files also. But 2.0 and 2.11 cannot.

 MB> Technically, no.  If you apply the CSDs to 2.11 that came out after
 MB> Warp, then it will also support the Iterated-II segment type.  I think
 MB> that the latest is FixPak 98 (XR_B098), which installs on top of a
 MB> 2.11 system (XR_6200) and brings the kernel build level to 6.665.

I didn't know that, thank you for information.

Bye!
Rinat Sadretdinow

--- GoldED/2 2.50.A0715 UNREG
* Origin: --== Thunder Bird Mail Station ==-- (2:5020/620)
SEEN-BY: 50/99 270/101 620/243 711/401 409 410 413 430 808 809 934 955
SEEN-BY: 712/407 515 517 628 713/888 800/1 7877/2809
@PATH: 5020/620 509 35 400 464/200 31 72 34 5100/8 396/1 270/101 712/515
@PATH: 711/808 809 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.