home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carsten's PPE Collection
/
Carstens_PPE_Collection_2007.zip
/
T
/
T2-WREP.ZIP
/
W.PPE
(
.txt
)
< prev
Wrap
PCBoard Programming Language Executable
|
1995-05-28
|
9KB
|
496 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 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN007
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String STRING025
String STRING026
String TSTRING027(9)
String STRING028
String TSTRING029(9)
String STRING030
String STRING031
String TSTRING032(9)
String STRING033
String STRING034
String STRING035
String STRING036
;------------------------------------------------------------------------------
Cls
FOpen 1, PPEPath() + "W.CFG", 0, 0
FGet 1, STRING005
FGet 1, STRING006
FGet 1, STRING008
FGet 1, STRING009
FGet 1, STRING010
FGet 1, STRING011
FGet 1, STRING022
FGet 1, STRING026
FGet 1, STRING012
FGet 1, STRING013
FGet 1, STRING014
FGet 1, STRING015
FGet 1, STRING016
FGet 1, STRING017
FGet 1, STRING018
FGet 1, STRING021
FGet 1, STRING019
FGet 1, STRING020
FGet 1, STRING024
FGet 1, STRING030
FGet 1, STRING031
FGet 1, STRING033
FGet 1, STRING034
FGet 1, STRING035
FGet 1, STRING036
FGet 1, TSTRING032(1)
FGet 1, TSTRING032(2)
FGet 1, TSTRING032(3)
FGet 1, TSTRING032(4)
FGet 1, TSTRING032(5)
FGet 1, TSTRING032(6)
FGet 1, TSTRING032(7)
FGet 1, TSTRING032(8)
FClose 1
STRING007 = " @X0FUSER INFO v1.0 by Cyber"
AnsiPos 1, 2
PrintLn STRING005 + "┌────────────── ─ ∙ · · ∙ ─ ────────────┐"
PrintLn STRING005 + "│" + STRING007, STRING005 + "@POS:78@│"
PrintLn STRING005 + "├───┬──────────────────────────────┬─────────────────────────────┬───────────┤"
PrintLn STRING005 + "│" + STRING008, STRING005 + "@POS:36@│ " + STRING009, STRING005 + "@POS:66@│ " + STRING010, STRING005 + "@POS:78@│"
PrintLn STRING005 + "├───┴──────────────────────────────┼─────────────────────────────┼───────────┤"
PrintLn STRING005 + "│ │ │ │"
PrintLn STRING005 + "│" + STRING012, STRING005 + "@POS:36@│@POS:66@│" + STRING011, STRING005 + "@POS:78@│"
PrintLn STRING005 + "│" + STRING013, STRING005 + "@POS:36@│@POS:66@│" + STRING011, STRING005 + "@POS:78@│"
PrintLn STRING005 + "│" + STRING014, STRING005 + "@POS:36@│@POS:66@│" + STRING011, STRING005 + "@POS:78@│"
PrintLn STRING005 + "│" + STRING015, STRING005 + "@POS:36@│@POS:66@│" + STRING011, STRING005 + "@POS:78@│"
PrintLn STRING005 + "│" + STRING016, STRING005 + "@POS:36@│@POS:66@│" + STRING011, STRING005 + "@POS:78@│"
PrintLn STRING005 + "│" + STRING017, STRING005 + "@POS:36@│@POS:66@│" + STRING011, STRING005 + "@POS:78@│"
PrintLn STRING005 + "│" + STRING018, STRING005 + "@POS:36@│@POS:66@│" + STRING011, STRING005 + "@POS:78@│"
PrintLn STRING005 + "│" + STRING021, STRING005 + "@POS:36@│@POS:66@│" + STRING011, STRING005 + "@POS:78@│"
PrintLn STRING005 + "│ │ │ │"
PrintLn STRING005 + "│ @POS:36@├───────────┬─────────────────┴───────────┤"
PrintLn STRING005 + "│ @POS:36@│" + STRING026, STRING005 + "@POS:78@│"
PrintLn STRING005 + "├──────────────────────────────────@POS:36@┴───────────┴─────────────────@POS:66@────────────┤"
PrintLn STRING005 + "│ │"
PrintLn STRING005 + "└────────────── ─ ∙ · · ∙ ─ ────────────┘"
:LABEL001
NewPwd STRING002, BOOLEAN007
STRING003 = U_Pwd
AnsiPos 39, 8
Print " "
AnsiPos 39, 8
PrintLn STRING006, STRING003
AnsiPos 39, 9
GetUser
STRING023 = U_City
AnsiPos 39, 9
Print " "
AnsiPos 39, 9
Print STRING006, STRING023
PutUser
GetUser
TSTRING027(1) = U_Cls
AnsiPos 39, 10
Print " "
Select Case (TSTRING027(1))
Case 0
AnsiPos 39, 10
Print STRING006, "No"
Case 1
AnsiPos 39, 10
Print STRING006, "Yes"
End Select
PutUser
GetUser
TSTRING027(2) = U_Scroll
AnsiPos 39, 11
Print " "
Select Case (TSTRING027(2))
Case 0
AnsiPos 39, 11
Print STRING006, "No"
Case 1
AnsiPos 39, 11
Print STRING006, "Yes"
End Select
PutUser
GetUser
AnsiPos 39, 12
Print " "
If ((U_FSE == 1) && (U_FSEP == 0)) Then
AnsiPos 39, 12
Print STRING006, "Yes"
ElseIf ((U_FSE == 0) && (U_FSEP == 1)) Then
AnsiPos 39, 12
Print STRING006, "Ask"
ElseIf ((U_FSE == 0) && (U_FSEP == 0)) Then
AnsiPos 39, 12
Print STRING006, "No"
Endif
PutUser
GetUser
TSTRING027(3) = U_Def79
AnsiPos 39, 13
Print " "
Select Case (TSTRING027(3))
Case 0
AnsiPos 39, 13
Print STRING006, "No"
Case 1
AnsiPos 39, 13
Print STRING006, "Yes"
End Select
PutUser
AnsiPos 39, 14
Print " "
AnsiPos 39, 14
PrintLn STRING006, U_PageLen
GetUser
TSTRING027(4) = U_Expert
AnsiPos 39, 15
Print " "
Select Case (TSTRING027(4))
Case 0
AnsiPos 39, 15
Print STRING006, "Off"
Case 1
AnsiPos 39, 15
Print STRING006, "On"
End Select
PutUser
AnsiPos 1, 20
Print "@POS:78@" + STRING005 + "│"
AnsiPos 47, 18
Print " "
AnsiPos 1, 20
STRING004 = ""
InputStr STRING005 + "│ " + STRING019, STRING004, 14, 1, "12345678Qq", 2 + 4 + 32
If (((STRING004 == "Q") || (STRING004 == "q")) || (STRING004 == "")) Goto LABEL010
Select Case (STRING004)
Case 1
AnsiPos 47, 18
PrintLn TSTRING032(1)
Goto LABEL002
Case 2
AnsiPos 47, 18
PrintLn TSTRING032(2)
Goto LABEL003
Case 3
AnsiPos 47, 18
PrintLn TSTRING032(3)
Goto LABEL004
Case 4
AnsiPos 47, 18
PrintLn TSTRING032(4)
Goto LABEL005
Case 5
AnsiPos 47, 18
PrintLn TSTRING032(5)
Goto LABEL006
Case 6
AnsiPos 47, 18
PrintLn TSTRING032(6)
Goto LABEL007
Case 7
AnsiPos 47, 18
PrintLn TSTRING032(7)
Goto LABEL008
Case 8
AnsiPos 47, 18
PrintLn TSTRING032(8)
Goto LABEL009
End Select
:LABEL002
STRING002 = 0
AnsiPos 1, 20
Print "@POS:78@" + STRING005 + "│"
AnsiPos 1, 20
InputStr STRING005 + "│ " + STRING020, STRING002, 1, 12, Mask_Pwd(), 1
Newline
NewPwd STRING002, BOOLEAN007
AnsiPos 67, 8
PrintLn STRING022 + " "
AnsiPos 67, 8
If (!BOOLEAN007) Print STRING011
Goto LABEL001
:LABEL003
GetUser
STRING025 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890-/&$+()[]\|@%^,;:?#!~=_.*{} "
AnsiPos 1, 20
Print "@POS:78@" + STRING005 + "│"
AnsiPos 1, 20
STRING028 = U_City
InputStr STRING005 + "│ " + STRING024, STRING028, 14, 24, STRING025, 2 + 4 + 8 + 32
AnsiPos 67, 9
PrintLn STRING022 + " "
AnsiPos 67, 9
If (STRING028 == U_City) Print STRING011
U_City = STRING028
PutUser
Goto LABEL001
:LABEL004
GetUser
AnsiPos 1, 20
Print "@POS:78@" + STRING005 + "│"
TSTRING029(1) = U_Cls
Select Case (TSTRING029(1))
Case 0
TSTRING029(1) = "N"
Case 1
TSTRING029(1) = "Y"
End Select
AnsiPos 1, 20
InputStr STRING005 + "│ " + STRING030, TSTRING029(1), 14, 1, "YyNn", 2 + 4 + 8 + 32
AnsiPos 67, 10
PrintLn STRING022 + " "
AnsiPos 67, 10
If ((TSTRING029(1) == "N") || (TSTRING029(2) == "n")) Then
TSTRING029(1) = 0
ElseIf ((TSTRING029(1) == "Y") || (TSTRING029(2) == "y")) Then
TSTRING029(1) = 1
Endif
If (TSTRING029(1) == U_Cls) Print STRING011
U_Cls = TSTRING029(1)
PutUser
Goto LABEL001
:LABEL005
GetUser
AnsiPos 1, 20
Print "@POS:78@" + STRING005 + "│"
TSTRING029(2) = U_Scroll
Select Case (TSTRING029(2))
Case 0
TSTRING029(2) = "N"
Case 1
TSTRING029(2) = "Y"
End Select
AnsiPos 1, 20
InputStr STRING005 + "│ " + STRING031, TSTRING029(2), 14, 1, "YyNn", 2 + 4 + 8 + 32
AnsiPos 67, 11
PrintLn STRING022 + " "
AnsiPos 67, 11
Select Case (TSTRING029(2))
Case "N", "n"
TSTRING029(2) = 0
Case "Y", "y"
TSTRING029(2) = 1
End Select
If (TSTRING029(2) == U_Scroll) Print STRING011
U_Scroll = TSTRING029(2)
PutUser
Goto LABEL001
:LABEL006
GetUser
AnsiPos 1, 20
Print "@POS:78@" + STRING005 + "│"
If ((U_FSE == 0) && (U_FSEP == 0)) Then
TSTRING029(3) = "N"
ElseIf ((U_FSE == 1) && (U_FSEP == 0)) Then
TSTRING029(3) = "Y"
ElseIf ((U_FSE == 0) && (U_FSEP == 1)) Then
TSTRING029(3) = "A"
Endif
AnsiPos 1, 20
InputStr STRING005 + "│ " + STRING033, TSTRING029(3), 14, 1, "YyNnAa", 2 + 4 + 8 + 32
AnsiPos 67, 12
PrintLn STRING022 + " "
AnsiPos 67, 12
Select Case (TSTRING029(3))
Case "Y", "y"
TSTRING029(4) = 1
TSTRING029(5) = 0
Case "N", "n"
TSTRING029(4) = 0
TSTRING029(5) = 0
Case "A", "a"
TSTRING029(4) = 0
TSTRING029(5) = 1
End Select
If ((TSTRING029(4) == U_FSE) && (TSTRING029(5) == U_FSEP)) Print STRING011
Select Case (TSTRING029(3))
Case "Y", "y"
U_FSE = 1
U_FSEP = 0
Case "N", "n"
U_FSE = 0
U_FSEP = 0
Case "A", "a"
U_FSE = 0
U_FSEP = 1
End Select
PutUser
Goto LABEL001
:LABEL007
GetUser
AnsiPos 1, 20
Print "@POS:78@" + STRING005 + "│"
TSTRING029(6) = U_Def79
Select Case (TSTRING029(6))
Case 0
TSTRING029(6) = "N"
Case 1
TSTRING029(6) = "Y"
End Select
AnsiPos 1, 20
InputStr STRING005 + "│ " + STRING034, TSTRING029(6), 14, 1, "YyNn", 2 + 4 + 8 + 32
AnsiPos 67, 13
PrintLn STRING022 + " "
AnsiPos 67, 13
Select Case (TSTRING029(6))
Case "N", "n"
TSTRING029(6) = 0
Case "Y", "y"
TSTRING029(6) = 1
End Select
If (TSTRING029(6) == U_Def79) Print STRING011
U_Def79 = TSTRING029(6)
PutUser
Goto LABEL001
:LABEL008
GetUser
AnsiPos 1, 20
Print "@POS:78@" + STRING005 + "│"
TSTRING029(7) = U_PageLen
AnsiPos 1, 20
InputStr STRING005 + "│ " + STRING035, TSTRING029(7), 14, 2, "1234567890", 2 + 4 + 8 + 32
AnsiPos 67, 14
PrintLn STRING022 + " "
AnsiPos 67, 14
If (TSTRING029(7) == U_PageLen) Print STRING011
U_PageLen = TSTRING029(7)
PutUser
Goto LABEL001
:LABEL009
GetUser
AnsiPos 1, 20
Print "@POS:78@" + STRING005 + "│"
TSTRING029(8) = U_Expert
Select Case (TSTRING029(8))
Case 0
TSTRING029(8) = "F"
Case 1
TSTRING029(8) = "O"
End Select
AnsiPos 1, 20
InputStr STRING005 + "│ " + STRING036, TSTRING029(8), 14, 1, "OoFf", 2 + 4 + 8 + 32
AnsiPos 67, 15
PrintLn STRING022 + " "
AnsiPos 67, 15
Select Case (TSTRING029(8))
Case "F", "f"
TSTRING029(8) = 0
Case "O", "o"
TSTRING029(8) = 1
End Select
If (TSTRING029(8) == U_Expert) Print STRING011
U_Expert = TSTRING029(8)
PutUser
Goto LABEL001
:LABEL010
Cls
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 2 Cls
; 88 Goto
; 53 Let
; 38 Print
; 38 PrintLn
; 53 If
; 1 FOpen
; 1 FClose
; 33 FGet
; 13 GetUser
; 13 PutUser
; 9 InputStr
; 1 Newline
; 67 AnsiPos
; 2 NewPwd
;
;
; ■ Functions used :
;
; 130 +
; 75 ==
; 45 !
; 7 &&
; 16 ||
; 1 Mask_Pwd()
; 1 PPEPath()
;
;------------------------------------------------------------------------------
;
; Analysis flags : WcH
;
; W - Write user ■ 5
; Program writes a user record. Although this may be normal for a
; User Editor, it may also be a way to modify an account level.
; ■ Search for : PUTUSER
;
; c - Change password ■ 3
; Program directly changes a user's password. This may be ok for
; a password history manager, but it is very suspect. Check!
; ■ Search for : NEWPWD
;
; H - Read Password or Password History ■ 5
; Program is reading the user's password or last password history
; This may be ok for a password manager, but it is very suspect. Check!
; ■ Search for : U_PWDHIST, U_PWD
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 0 For/Next
; 0 While/EndWhile
; 8 If/Then or If/Then/Else
; 14 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------