home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carsten's PPE Collection
/
Carstens_PPE_Collection_2007.zip
/
S
/
SSI!SPEE.ZIP
/
PPLX15.DOC
< prev
next >
Wrap
Text File
|
1995-10-27
|
16KB
|
428 lines
▄▄▄▄▄▄ ▄
▄█▀▀██████▄ ▄
█ ██████▀ ▄▄█████████████▀ ▄▄▄▄▄▄▄▄▄▄ ▀▄█ ▄ ▄▄▄▄▄▄▄▄▄
░▀ ▐██▀██ ▄██▀▀▀ ▀█▀ ▄▄█████████████▄ ████▄ ▄███████████▄
░ ██▌ ▐█ ██ ░ ██▀▀ ▄▄▄▄▄▄▄▄▄ ▀█ █ ▄ ▄ █▀ ▄ █
██ █ ▀█ ██▀ █▀ ▀▄▄ ▄▄██▀ █▄ ▀▌ ▄
▐█▌ ▐█ █ ▄▄▄▄█▄▄▄▄▄ ██ █ ▀▄ ▀██ ▀████████▄
██ █ █▄ ▀░ ▀█ ██▄ █ ▄▀▀▄ █ ███ ░▀▀▀▀▀▀▀▀▓▓▄
██ ▄ █ ▀█▄ ░ ██ ▀▄ ░ ▀▄ █ ███ ▀██
▐█ ▄███▄ █ ▀█▄ ██▄ ▀▄▄▄▄▄ ▄▄▀ ██ ███ ▄ ▄██
▄▄ █▄ ░ ▄██ ▀██▄▄ ▄ ▄▄█▄ ▀██▄▄▄▄▄ ▀▀ ▄▄███ ██ ▄█ ▀ ▄▄▓▓█ ▀
█ ▀ ▄██ ░▀▀█▄ ▀▀██████████▄ ██████████████ ▄██ ███████████▀ ░
▌▀▄▄▄██▀▀ ░ kP<aRT>░▀███▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ▄▄ ▄ ▄ ▄ ▄
▌
▀ ▀ ▀ ▄ ▄▀ ▀▄█ █▀▀ █▀▒ █▀▒ █▀▒
▄ ▀ ▀ ▄ ▀ ▄▀▄ █ ▓▄▄ ▓▄█ ▓▀▄ ▓▀▀
· · ·-─────────────────--· · ·
P.P.L.X - 1.5O
· · ·-─────────────────--· · ·
PCBoard Programming Langage eXtractor
(C) 1995 Lone Runner
Main Coding - Lone Runner
Parts - The doC
· ·- DOC UPDATED, READ AGAIN! -· ·
──────────────────────────
IMPORTANT CHANGES :
───────────────────
- my internet address has changed !
- my PGP key has changed !
See at the end of the doc for the new address and the PGP key revocation
─────────────────────--· · ·
■ READ BEFORE USING !
─────────────────────--· · ·
You may use this program provided that :
- You are not part of any federal group (i don't like federal groups ;))
- You are not part of Clark Development Company (nothing personnal...)
- You planed to use it at home for personnal purposes only (no money here!)
THE AUTHOR MAY NOT BE RESPONSIBLE FOR ANY CHANGE MADE TO ANY PROGRAM
BY USING PPLX. Nobody will ever ever enter an action against Borland
because they made Turbo Debugger or to V Communication because they
made Sourcer. There is no more reason for PPLX author to be responsible
for any law violation by using this software.
If you don't agree with the above terms or if you are not in accordance
with restriction use, you HAVE to delete this software IMMEDIATLY.
Further use of this software will be considered as the acceptance of the
above terms.
─────────────--· · ·
■ DESCRIPTION
─────────────--· · ·
PPLX is a PPE decompiler... working with PPE's up to 3.10 handling FUNCTIONS
& PROCEDURES, and performing heuristic-like analysis.
See WHAT'S.NEW for release history.
──────────────--· · ·
■ INSTALLATION
──────────────--· · ·
Hmm... copy PPLX.EXE to your UTILS\ or WHATEVERITISCALLED\ subdirectory,
preferably in your PATH...
────────────--· · ·
■ USING PPLX
────────────--· · ·
PPLX FILENAME[.PPE] [/A] [/L] [/U]
You may use wildcards instead of a filename... for example :
PPLX C:\PCB\PPE\*.PPE /A
or
PPLX WEEKTOP.PPE /A /L
/A (that replace the old /ANALYSIS) allows PPLX to make an heuristic
analysis of the ppe beeing decompiled. If you decompile PPE's only to
check backdoors, you will love this switch! Look at the end of the PPX
file to see what we are talking about.
/L tells PPLX not to delete the PPU (decrypted PPE) file after decompiling
/U tells PPLX to only decrypt the PPE to the corresponding PPU file.
Previously used /DEBUG switch has been removed from the release version
*.PPU
─────
When decompiling a PPE 3.xx, PPLX creates a PPU file, that is in fact the
PPE 3.xx decrypted to a 2.0. Sometimes, you can even run the PPU file
after renaming it to .PPE (this can be usefull for some people still
running PCB 15.1). However, this is not recomended because some codes (such
as FINDFIRST or procedures & functions or many other things) wont be
handled by the old PCB... I have no idea what PCB does in this case, but
i believe that it would not be good (crash ?).
Leaving the PPU (/L) or only decrypting the PPE to a PPU file (/U) can also
be done if you want to have a look into the PPE... I don't know exactly
what you can do with it but some people asked me those switchs.
WARNINGS/ERRORS
───────────────
"Function is declared but not defined, code may not recompile..."
This means that, in the original source code, a function was coded but not
used. When PPLC compile the source, if a function is not used, it doesn't
update a important field that holds the function coordinates... In this
case, PPLX will not be able to detect the beginning of the function, and,
if there are local variables, to declare them. The same problem may appear
with procedures.
"Unknown statement xxxx, dunno how to handle it... Skipping!"
This means that an unknown statement was used, theorically, this cannot
happen, but in real life, a corrupted PPE or a anti-decompilation trick
can produce this warning. If an unknown statement is found, it is skipped,
causing some next statements to be irrationnal... Code may redecompile
correctly after some instructions but it is not likely that the code will
be recompilable.
"Unknown function xxxx, dunno how to handle it... Aborting!"
This is a fatal error, an unknown function cannot be skipped, it is due
to the same things (corrupted PPE, anti-decompilation trick) but cannot
recover.
"FATAL ERROR! ..."
Any error message beginning with "FATAL ERROR" means that the PPE cannot be
decompiled due to different reasons...
FOR/NEXT/WHILE/IF/THEN/CASE/...
───────────────────────────────
Don't be surprised by a strange line of code, for example "If (1 < 0)" is
often used to initiate a FOR/NEXT loop... This is due to PPLC that convert
all loops to IF/GOTO... That's lame, yes, but that's the way PPLC does
it... :(
BACKDOORS
─────────
Don't be shy ;) Decompile all your PPE's, and check the statements/functions
usage report, a GetAltUser in a JOIN replacement may be strange ;) Use
/A...
PPE'S RUNNING DIFFERENT AFTER BEEING DECOMPILED & RECOMPILED
────────────────────────────────────────────────────────────
Some PPE's (CSSC for example) compute a self check to see if they were
decompiled and recompiled... It is not a big deal because you have the
source so you can remove the self-check test.
ANTI-DECOMPILATION SYSTEMS
──────────────────────────
Sometimes, PPLX will report "Anti-decompilation system stripped!". In fact
this happen when a suposed anti-decompilation system has been found.
Depending on the anti-decompilation trick used, PPLX will remove or
modify the line so it can be decompiled. Sometimes you won't even see
the anti-decompilation in the resulting PPX file, sometimes you will have
something like :
INTEGER001 = INTEGER001 - *
Just modify this line or remove it so the file can be recompiled.
When PPLX remove the line itself, there is always a risk that this line
was really used in the code. For example, if a coder put an anti-
decompilation trick on a line that assign a variable, he can always
use the result of this assignation elswhere in the code. Because the line
has been stripped, the PPE will not run as before... Well... Get a life !
you have the code ! don't expect me to do everything for you ! :)
───────────────────────--· · ·
■ WARNINGz / DISCLAIMER
───────────────────────--· · ·
■ This decompiler should work perfectly on your machine as it is the
case on mine. However, some PPE may not decompile, due to some new
anti-decompilation tricks that maybe will cause PPLX to crash... It is
possible, also, that PPLX crash or fail to decompile a PPE because of a
special instruction chain that i didn't manage to handle... In such a
case, please mail me an uuencoded version of the PPE...
■ Do what you want with this... You may use this program in any way you
want, you may destroy it, burn it, eat it, smoke it, inject it, vomit it,
kick it, suck it, piss it, shot it, print it with reversed lines, rename
it to zip, arj, arc or whatever you want, try then to extract it, to
pkzipfix it, you may also perform sort on it, uuencode, crypt it with
PGP, play it on your GUS or even your SB, you may even decompile, modify
it, you may do WHAT YOU WANT, but NO MEMBER OF AEGiS CoRP MAY BE
RESPONSIBLE FOR ANY DAMAGE CAUSED BY THE USE OF THIS PROGRAM OR IT'S
MODIFICATIONS...
■ I don't ask any money for you to use PPLX, so don't expect support if
you experience troubles with this program. If i have time, i will answer
each email, but i cannot garantee this nor. Don't think it is because
i have a big ego, but i simply don't have much time :) Anyway, be
patient, answers may come a lot later than expected, but they may come...
─────────────--· · ·
■ FINAL WORDS
─────────────--· · ·
■ Clark Development Company
─────────────────────────
Still not decided to make OBJ code ? :)
■ Shareware PPE Coders
────────────────────
Well, sorry men, I also make PPE's, and very large ones that take many
months of programming, but asking money for such pieces of crap is lame...
■ PCB Sysops
──────────
Remember ? -> NEVER change a copyright notice ! :)
We have seen too many sysops changing PPE's authors name and doing such
lame operations... respect the work of a good coder... don't be lame, let
his name and notices...
■ Copyright-removers / Backdoor-creators / Lamers & Co
────────────────────────────────────────────────────
Don't bother, go to hell immediatly, don't wait to die... thanks.
■ Everybody
─────────
Suggestions ? Contacts ? (legal only)
* INTERNET ADDRESS CHANGED!!! *
───────────────────────────
-> Write to : lone.runner@nuxes.frmug.fr.net
NOTE : You CAN now send UUENCODED files, i'll receive them :)
Also, it is possible that you don't have the *LAST* version of the
decompiler since i release new versions when i find bugs, that means that
there is no periodicity for new releases of PPLX. For this reason, mail
me to ask the last version of the decompiler before telling that it is
impossible to decompile a PPE :)
Although i will try to make new versions as soon as bugs are found, i
cannot garantee that i will release one each time i found a new PPE that
don't decompile...
But please, PLEASE !!! Don't ask me to explain the PPE format :)
Oh yes, of course, SOURCE IS AVAILABLE... for 1.000.000$ Cash Only.
If you want to support AEGiS CoRP
─────────────────────────────────
You want to legalize marijuana ? jason.bourne@nuxes.frmug.fr.net
You want to play paintball and break your leg ? gandalf@nuxes.frmug.fr.net
You want to trash norton commander ? the.doc@nuxes.frmug.fr.net
Tha wan ta chad lak diss ? kloy@nuxes.frmug.fr.net
You want to exchange raggae CDs ? new.id@nuxes.frmug.fr.net
You want to kill Windows ? number.six@nuxes.frmug.fr.net
You want to give hardware ? ;) lone.runner@nuxes.frmug.fr.net
* PGP KEY CHANGED!!! *
──────────────────
Here is the revocation certification for my OLD key (so you know this
version is not a fake :) )
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6
mQCNAi+5pPgAAAEEAL/3Dtnn0sq3tEqvFVcXOo6gZiWZzQ+6bNjPOpLv7Wfh58Mj
fF/ySJBrJQjTv7CoHVrUxY/ev3VgBpgmmS6RKhZTdv+Grso6nDzoX1B7WSQGRqVW
JkII6zchYbr3HpCbYf5M1ui4bZTG59SUQAj9fq8U9flWOyLZBGMxOUzkhwwdAAUR
iQCVAgUgL/wReGMxOUzkhwwdAQFOVgP9Ew5THLYh6LlWig1yJnp4HV7kPZonCYHM
vreXP118CoHQ0D3cWRhfGTvpS57GnfIiodOK8zlZ4sU+kUcGKLTuj9jiQGfyLjTc
d9lX4LSTAMrkcafTntfHw1MEYZLmHjMy0CHS5w8U+wJkpZ2ufBa/qDSWBrEywTe4
VF1rOoSH+9i0L0ZyYW5jaXMgR2FzdGVsbHUgPGZyYW5jaXMuZ2FzdGVsbHVAZWxl
Y3Ryb24uZnI+iQCVAgUQL7lXS2MxOUzkhwwdAQFCbAP/Q5sYOEdcY+uL7MLG2hpJ
0uLN3mwcpfT2e1/xNp//jhqAg845MrgRytkJ+gVrBNyj9PkpBO6coQQggOVsPu50
UF+OU5jIHCl7JrWcIUBPp/WzNZTiqzP19txa9lghJkZzFZxPK1OZ/1u2X4hfvj/V
O6L90x6UaqhPYIMFR7YfYc8=
=U+IQ
-----END PGP PUBLIC KEY BLOCK-----
And here is my BRAND NEW KEY ! (much more nice looking isn't it ? ;))
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6
mQCNAi/8EHAAAAEEAKmS4/mymaVeyczvrKdr4sSdj8vKXHWz7SOK5wcI3S/bkIzk
cF7b0/V35uP5ItStUxNsU54zRDS9snl3MH4/9wgcpky/GEGVAeuC0suybpBOLiJP
JKUkffhk2jlB7qFB8+dQhMjBc1iUST8rDSuID7t7ChqdY2xHihxaVwFGSpdVAAUR
tB5sb25lLnJ1bm5lckBudXhlcy5mcm11Zy5mci5uZXS0C0xvbmUgUnVubmVy
=sqjP
-----END PGP PUBLIC KEY BLOCK-----
──────--· · ·
■ SOAP
──────--· · ·
Do you know SOAP ? No ??!!?
Well... SOAP stands for "State Of the Art for PCBoard", it is a fast-growing
internationnal network dedicaced to PCBoard. For now, SOAP is distributed
in France, Spain, Italy, Denmark, Germany and Switzerland, and many groups
has joined (like AEGiS, TNT, ECR and more). The purpose of this net is to
create a big meeting place for all sysops that have interests in PCB
(PPE Coding, Configuration problems, Interfacing, Ansi/ascii art, etc...)
There are also group-restricted confs for PPE group members. An echo file
is under develoment and should spread all productions from all groups on
SOAP and more...
If you want more infos (Conf list, etc...) see the Soap Infopackage
included into PPLX archive.
See ya in a SOAP Conf !
────────--· · ·
■ GREETS
────────--· · ·
Gandalf/Infiny/AEGiS - How is your leg ? :)
The doC/AEGiS - Thanks for your support in brainstormings
while trying to guess how was coded this
stupid PPE format ;)
Chicken/ECR - Why should i write something ?
I just want to greet you ! :)
Number Six/AEGiS - Still hyptnotized by your 21p screen ? :)
New ID/Massive Posse - Ragga rulez!
Jason Bourne/AEGiS - Legalize !!!
Ferem/MWB/AEGiS - Did you finish you realtime-gouraud-shaded-
fractal-landscape-with-integrated-phong-
and-mutating-multitasking-code-impossible-
to-trace ? :))
Kloy / (┤RT - Thanks for those kewl ASCIIz!
HACKTiON - your are kewl guyz, make more prods!
PWA - Is the PPE section still alive ? Hope so...
anyway, thanks to you guys, to have made
the world of PPE's so competitive...
All (good ;)) PPE Groups - Go on, continue to release new products,
and feel free to chat with AEGiS members,
write to aegis.corp@nuxes.frmug.fr.net !
_.LoNE RuNNeR
_ _ _ ___ ___/\
_________/\ /\_____________/\________________ ___ _ _ \/\______________
/ _ \/ _________ / ______________________ / __________ /
_/ __/ \ ____)___\/ \ \_/ \/\___________ \/_
\ \ \_ \ \_ \__ \_ \_ / /
\______\ /____________/________________/_____________/____________/kP
·-------`------'---------------------------------------------------------·