home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / ACD-CUI1.ZIP / CUIE.PPE (.txt) < prev    next >
Encoding:
PCBoard Programming Language Executable  |  1994-11-26  |  5.2 KB  |  394 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN007
  20.     Boolean  BOOLEAN008
  21.     Boolean  BOOLEAN009
  22.     Integer  INTEGER001
  23.     Integer  INTEGER002
  24.     Integer  INTEGER003
  25.     Integer  INTEGER004
  26.     Integer  INTEGER005
  27.     Integer  INTEGER006
  28.     Integer  INTEGER007
  29.     Integer  INTEGER008
  30.     Integer  INTEGER009
  31.     Integer  INTEGER010
  32.     Integer  INTEGER011
  33.     Integer  INTEGER012
  34.     Integer  INTEGER013
  35.     Integer  INTEGER014
  36.     Integer  INTEGER015
  37.     Integer  INTEGER016
  38.     Integer  INTEGER017
  39.     Integer  INTEGER018
  40.     Integer  INTEGER019
  41.     Integer  INTEGER020
  42.     Integer  INTEGER021
  43.     Integer  INTEGER022
  44.     Integer  INTEGER023
  45.     Integer  INTEGER024
  46.     Integer  INTEGER025
  47.     Integer  INTEGER026
  48.     Integer  INTEGER027
  49.     Integer  INTEGER028
  50.     Integer  INTEGER029
  51.     Integer  INTEGER030
  52.     String   STRING005
  53.     String   STRING006
  54.     String   STRING007
  55.     String   STRING008
  56.     String   STRING009
  57.     String   STRING010
  58.     String   STRING011
  59.     String   STRING012
  60.  
  61. ;------------------------------------------------------------------------------
  62.  
  63.     FOpen 1, PPEPath() + "CUIE.CNF", 2, 3
  64.     FGet 1, INTEGER001
  65.     FGet 1, INTEGER002
  66.     FGet 1, INTEGER003
  67.     FGet 1, INTEGER004
  68.     FGet 1, INTEGER005
  69.     FGet 1, INTEGER006
  70.     FGet 1, INTEGER007
  71.     FGet 1, INTEGER008
  72.     FGet 1, INTEGER009
  73.     FGet 1, INTEGER010
  74.     FGet 1, INTEGER011
  75.     FGet 1, INTEGER012
  76.     FGet 1, INTEGER013
  77.     FGet 1, INTEGER014
  78.     FGet 1, INTEGER015
  79.     FGet 1, INTEGER016
  80.     FGet 1, INTEGER017
  81.     FGet 1, INTEGER018
  82.     FGet 1, INTEGER019
  83.     FGet 1, INTEGER020
  84.     FGet 1, INTEGER021
  85.     FGet 1, INTEGER022
  86.     FGet 1, INTEGER023
  87.     FGet 1, INTEGER024
  88.     FGet 1, INTEGER025
  89.     FGet 1, INTEGER026
  90.     FGet 1, INTEGER027
  91.     FGet 1, INTEGER028
  92.     FGet 1, INTEGER029
  93.     FGet 1, INTEGER030
  94.     FClose 1
  95.     STRING012 = "1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM,./;'[]-=\`~!@#$%^&*()_+|}{:?>< "
  96.     GetUser
  97.     DispFile PPEPath() + "CUIE.PCB", 1
  98.     :LABEL001
  99.     PutUser
  100.     BOOLEAN007 = 0
  101.     BOOLEAN008 = 0
  102.     AnsiPos INTEGER001, INTEGER002
  103.     Print "  "
  104.     AnsiPos INTEGER001, INTEGER002
  105.     STRING006 = ""
  106.     AnsiPos INTEGER003, INTEGER004
  107.     Print "<Hidden>                "
  108.     AnsiPos INTEGER005, INTEGER006
  109.     Print U_City
  110.     AnsiPos INTEGER007, INTEGER008
  111.     Print U_BDPhone
  112.     AnsiPos INTEGER009, INTEGER010
  113.     Print U_HVPhone
  114.     STRING008 = U_Cls
  115.     Gosub LABEL004
  116.     AnsiPos INTEGER011, INTEGER012
  117.     Print STRING009
  118.     STRING008 = U_Scroll
  119.     Gosub LABEL004
  120.     AnsiPos INTEGER013, INTEGER014
  121.     Print STRING009
  122.     STRING008 = U_LongHDR
  123.     Gosub LABEL004
  124.     AnsiPos INTEGER015, INTEGER016
  125.     PrintLn STRING009
  126.     If ((U_FSE == 0) && (U_FSEP == 0)) STRING007 = "N                        "
  127.     If ((U_FSE == 1) && (U_FSEP == 0)) STRING007 = "Y                        "
  128.     If ((U_FSEP == 1) && (U_FSE == 0)) STRING007 = "A                        "
  129.     AnsiPos INTEGER017, INTEGER018
  130.     PrintLn STRING007
  131.     STRING008 = U_Def79
  132.     Gosub LABEL004
  133.     AnsiPos INTEGER019, INTEGER020
  134.     Print STRING009
  135.     AnsiPos INTEGER021, INTEGER022
  136.     Print U_Addr(0)
  137.     AnsiPos INTEGER023, INTEGER024
  138.     Print U_Addr(1)
  139.     AnsiPos INTEGER025, INTEGER026
  140.     Print U_Addr(2)
  141.     AnsiPos INTEGER027, INTEGER028
  142.     Print U_Addr(3)
  143.     AnsiPos INTEGER029, INTEGER030
  144.     Print U_Addr(4)
  145.     AnsiPos INTEGER001, INTEGER002
  146.     InputStr "_", STRING006, 15, 2, "1234567890QS", 10
  147.     PrintLn 
  148.     If (STRING006 == "") Then
  149.         PutUser
  150.         Cls
  151.         End
  152.     Endif
  153.     If (STRING006 == "1") Then
  154.         STRING005 = U_Pwd
  155.         While (!BOOLEAN007 || !BOOLEAN008) Do
  156.             STRING010 = ""
  157.             STRING011 = ""
  158.             AnsiPos INTEGER003, INTEGER004
  159.             Print "                        "
  160.             AnsiPos INTEGER003, INTEGER004
  161.             InputStr "_", STRING010, 14, 12, STRING012, 10
  162.             If (STRING010 == "") Then
  163.                 STRING011 = STRING005
  164.                 Goto LABEL001
  165.             Endif
  166.             AnsiPos INTEGER003, INTEGER004
  167.             Print "                        "
  168.             AnsiPos INTEGER003, INTEGER004
  169.             Print "@X07Verify@X08: "
  170.             InputStr "_", STRING011, 14, 12, STRING012, 10
  171.             If (STRING010 <> STRING011) Then
  172.                 AnsiPos INTEGER003, INTEGER004
  173.                 Print "Passwords Do Not Match  "
  174.                 Delay 36
  175.                 BOOLEAN007 = 0
  176.                 Goto LABEL002
  177.             Endif
  178.             BOOLEAN007 = 1
  179.             :LABEL002
  180.             If (BOOLEAN007) NewPwd STRING011, BOOLEAN009
  181.             If (BOOLEAN009) Goto LABEL003
  182.             AnsiPos INTEGER003, INTEGER004
  183.             Print "Password Fails PSA Check"
  184.             Delay 36
  185.             BOOLEAN008 = 0
  186.             Continue
  187.             :LABEL003
  188.             BOOLEAN008 = 1
  189.         EndWhile
  190.         Goto LABEL001
  191.     Endif
  192.     If (STRING006 == "2") Then
  193.         AnsiPos INTEGER005, INTEGER006
  194.         Print "                         "
  195.         AnsiPos INTEGER005, INTEGER006
  196.         InputStr "_", U_City, 15, 25, STRING012, 10
  197.         PrintLn 
  198.         Goto LABEL001
  199.     Endif
  200.     If (STRING006 == "3") Then
  201.         AnsiPos INTEGER007, INTEGER008
  202.         Print "             "
  203.         AnsiPos INTEGER007, INTEGER008
  204.         InputStr "_", U_BDPhone, 14, 13, "1234567890-()", 10
  205.         PrintLn 
  206.         Goto LABEL001
  207.     Endif
  208.     If (STRING006 == "4") Then
  209.         AnsiPos INTEGER009, INTEGER010
  210.         Print "             "
  211.         AnsiPos INTEGER009, INTEGER010
  212.         InputStr "_", U_HVPhone, 7, 13, "1234567890-()", 10
  213.         PrintLn 
  214.         Goto LABEL001
  215.     Endif
  216.     If (STRING006 == "5") Then
  217.         STRING008 = U_Cls
  218.         Gosub LABEL004
  219.         AnsiPos INTEGER011, INTEGER012
  220.         Print "@X08(@X0FY@X08)@X07es or @X08(@X0FN@X08)@X07o @X08: "
  221.         InputYN "_", STRING009, 14
  222.         Gosub LABEL005
  223.         U_Cls = STRING008
  224.         Goto LABEL001
  225.     Endif
  226.     If (STRING006 == "6") Then
  227.         STRING008 = U_Scroll
  228.         Gosub LABEL004
  229.         AnsiPos INTEGER013, INTEGER014
  230.         Print "@X08(@X0FY@X08)@X07es or @X08(@X0FN@X08)@X07o @X08: "
  231.         InputYN "_", STRING009, 14
  232.         Gosub LABEL005
  233.         U_Scroll = STRING008
  234.         Goto LABEL001
  235.     Endif
  236.     If (STRING006 == "7") Then
  237.         STRING008 = U_LongHDR
  238.         Gosub LABEL004
  239.         AnsiPos INTEGER015, INTEGER016
  240.         Print "@X08(@X0FY@X08)@X07es or @X08(@X0FN@X08)@X07o @X08: "
  241.         InputYN "_", STRING009, 14
  242.         Gosub LABEL005
  243.         U_LongHDR = STRING008
  244.         Goto LABEL001
  245.     Endif
  246.     If (STRING006 == "8") Then
  247.         AnsiPos INTEGER017, INTEGER018
  248.         Print "@X08(@X0FY@X08)@X07es, @X08(@X0FN@X08)@X07o, @X08(@X0FA@X08)@X07sk @X08: "
  249.         InputStr "_", STRING007, 14, 1, "YNA", 10
  250.         If (STRING007 == "Y") Then
  251.             U_FSE = 1
  252.             U_FSEP = 0
  253.         Endif
  254.         If (STRING007 == "N") Then
  255.             U_FSE = 0
  256.             U_FSEP = 0
  257.         Endif
  258.         If (STRING007 == "A") Then
  259.             U_FSE = 0
  260.             U_FSEP = 1
  261.         Endif
  262.         Goto LABEL001
  263.     Endif
  264.     If (STRING006 == "9") Then
  265.         STRING008 = U_Def79
  266.         Gosub LABEL004
  267.         AnsiPos INTEGER019, INTEGER020
  268.         Print "@X08(@X0FY@X08)@X07es or @X08(@X0FN@X08)@X07o @X08: "
  269.         InputYN "_", STRING009, 14
  270.         PrintLn 
  271.         Gosub LABEL005
  272.         U_Def79 = STRING008
  273.         Goto LABEL001
  274.     Endif
  275.     If (STRING006 == "10") Then
  276.         AnsiPos INTEGER021, INTEGER022
  277.         Print "                         "
  278.         AnsiPos INTEGER021, INTEGER022
  279.         InputStr "_", U_Addr(0), 14, 25, STRING012, 10
  280.         PrintLn 
  281.         Goto LABEL001
  282.     Endif
  283.     If (STRING006 == "11") Then
  284.         AnsiPos INTEGER023, INTEGER024
  285.         Print "                         "
  286.         AnsiPos INTEGER023, INTEGER024
  287.         InputStr "_", U_Addr(1), 14, 25, STRING012, 10
  288.         Goto LABEL001
  289.     Endif
  290.     If (STRING006 == "12") Then
  291.         AnsiPos INTEGER025, INTEGER026
  292.         Print "                         "
  293.         AnsiPos INTEGER025, INTEGER026
  294.         InputStr "_", U_Addr(2), 14, 25, STRING012, 10
  295.         Goto LABEL001
  296.     Endif
  297.     If (STRING006 == "13") Then
  298.         AnsiPos INTEGER027, INTEGER028
  299.         Print "                         "
  300.         AnsiPos INTEGER027, INTEGER028
  301.         InputStr "_", U_Addr(3), 14, 25, STRING012, 10
  302.         Goto LABEL001
  303.     Endif
  304.     If (STRING006 == "14") Then
  305.         AnsiPos INTEGER029, INTEGER030
  306.         Print "                         "
  307.         AnsiPos INTEGER029, INTEGER030
  308.         InputStr "_", U_Addr(4), 14, 25, STRING012, 10
  309.         Goto LABEL001
  310.     Endif
  311.     If (STRING006 == "Q") Then
  312.         PutUser
  313.         Cls
  314.         End
  315.     Endif
  316.     :LABEL004
  317.     If (STRING008 == 1) STRING009 = "Y                        "
  318.     If (STRING008 == 0) STRING009 = "N                        "
  319.     Return
  320.     :LABEL005
  321.     If (STRING009 == "Y") STRING008 = 1
  322.     If (STRING009 == "N") STRING008 = 0
  323.     Return
  324.  
  325. ;------------------------------------------------------------------------------
  326. ;
  327. ; Usage report (before postprocessing)
  328. ;
  329. ; ■ Statements used :
  330. ;
  331. ;    2       End
  332. ;    2       Cls
  333. ;    41      Goto 
  334. ;    37      Let 
  335. ;    31      Print 
  336. ;    8       PrintLn 
  337. ;    31      If 
  338. ;    1       DispFile 
  339. ;    1       FOpen 
  340. ;    1       FClose 
  341. ;    30      FGet 
  342. ;    1       GetUser
  343. ;    3       PutUser
  344. ;    12      InputStr 
  345. ;    4       InputYN 
  346. ;    12      Gosub 
  347. ;    2       Return
  348. ;    2       Delay 
  349. ;    44      AnsiPos 
  350. ;    1       NewPwd 
  351. ;
  352. ;
  353. ; ■ Functions used :
  354. ;
  355. ;    2       +
  356. ;    30      ==
  357. ;    1       <>
  358. ;    25      !
  359. ;    3       &&
  360. ;    1       ||
  361. ;    2       PPEPath()
  362. ;
  363. ;------------------------------------------------------------------------------
  364. ;
  365. ; Analysis flags : WcH
  366. ;
  367. ; W - Write user ■ 5
  368. ;     Program writes a user record. Although this may be normal for a
  369. ;     User Editor, it may also be a way to modify an account level.
  370. ;     ■ Search for : PUTUSER
  371. ;
  372. ; c - Change password ■ 3
  373. ;     Program directly changes a user's password. This may be ok for
  374. ;     a password history manager, but it is very suspect. Check!
  375. ;     ■ Search for : NEWPWD
  376. ;
  377. ; H - Read Password or Password History ■ 5
  378. ;     Program is reading the user's password or last password history
  379. ;     This may be ok for a password manager, but it is very suspect. Check!
  380. ;     ■ Search for : U_PWDHIST, U_PWD
  381. ;
  382. ;------------------------------------------------------------------------------
  383. ;
  384. ; Postprocessing report
  385. ;
  386. ;    0       For/Next
  387. ;    1       While/EndWhile
  388. ;    21      If/Then or If/Then/Else
  389. ;    0       Select Case
  390. ;
  391. ;------------------------------------------------------------------------------
  392. ;                 AEGiS Corp - Break the routines, code against the machines!
  393. ;------------------------------------------------------------------------------
  394.