home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
PCBOARD
/
WONDIR15.ZIP
/
WONDIR.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-02-22
|
2KB
|
155 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Boolean BOOLEAN002
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
String STRING001
String STRING002
;------------------------------------------------------------------------------
BOOLEAN001 = 0
STRING001 = Chr(70) + Chr(73) + Chr(78) + Chr(83) + Chr(84) + Chr(69) + Chr(82)
BOOLEAN002 = 1
INTEGER001 = 5
If (Exist(PPEPath() + "wondir.key")) Then
STRING002 = ReadLine(PCBDat(), 94)
INTEGER003 = Len(STRING002)
INTEGER006 = INTEGER003
INTEGER004 = 0
For INTEGER002 = 1 To INTEGER003
INTEGER004 = INTEGER004 + Asc(Left(STRING002, 1)) * 921
STRING002 = Right(STRING002, INTEGER006)
INTEGER006 = INTEGER006 - 1
Next
INTEGER004 = INTEGER004 - INTEGER003
INTEGER005 = ReadLine(PPEPath() + "wondir.key", 1)
If (INTEGER004 == INTEGER005) Then
STRING001 = Chr(82) + Chr(65) + Chr(78) + Chr(68) + Chr(89)
If (Exist(PPEPath() + "wondir.cfg")) Then
BOOLEAN002 = Left(ReadLine(PPEPath() + "wondir.cfg", 7), 1)
INTEGER001 = Left(ReadLine(PPEPath() + "wondir.cfg", 8), 2)
Endif
Endif
Endif
If (BOOLEAN002) Gosub LABEL001
Tokenize STRING001
Call PPEPath() + "wondir1.ppe"
End
:LABEL001
GetUser
If (U_Fdl() - INTEGER001 >= U_Ful()) Then
DispFile PPEPath() + "dlhog", 1
If (GrafMode() == "R") Then
Delay (5 * 182) / 10
Goto LABEL002
Endif
Delay (3 * 182) / 10
:LABEL002
MPrintLn "!|*"
Cls
Endif
Return
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 1 Cls
; 8 Goto
; 18 Let
; 7 If
; 1 DispFile
; 1 GetUser
; 1 Gosub
; 1 Return
; 2 Delay
; 1 Tokenize
; 1 Call
; 1 MPrintLn
;
;
; ■ Functions used :
;
; 3 *
; 2 /
; 19 +
; 3 -
; 2 ==
; 1 <
; 1 <=
; 3 >=
; 6 !
; 2 &&
; 1 ||
; 1 Len(
; 3 Left()
; 1 Right()
; 12 Chr()
; 1 Asc()
; 1 U_Ful()
; 1 U_Fdl()
; 1 PCBDat()
; 7 PPEPath()
; 4 ReadLine()
; 2 Exist()
; 1 GrafMode()
;
;------------------------------------------------------------------------------
;
; Analysis flags : MCd
;
; M - Send text to modem only ■ 4
; Some informations are sent only to the modem, not to the local
; screen, this is a well known way to make stealth backdoors, Check!
; ■ Search for : SENDMODEM, MPRINT, MPRINTLN
;
; C - Call child PPE ■ 3
; This is usually normal, but may be a tricky way to launch some
; sysop-only commands.
; ■ Search for : CALL
;
; d - Access PCBOARD.DAT ■ 2
; Program gets the full pathname to PCBOARD.DAT, this may be usefull
; for many PPE so they can find various informations on the system
; (system paths, max number of lines in messages, ...) but it may also
; be a way to gather vital informations.
; ■ Search for : PCBDAT()
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 1 For/Next
; 0 While/EndWhile
; 5 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------