/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation.  All rights reserved. */
/* time: October 27, 1993 5:43:08 pm PDT */
/* C2C version: April 20, 1993 (sun4) */
/* ref-counting: off */
/* file: XlAuthImpl, module: XlAuthImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [2674687631,2832851281] XlAuthImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef word (*fPt)();
typedef struct {word f0, f1;} W2;
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {word f0, f1, f2, f3, f4;} W5;
typedef struct {W8 f; W5 r;} W13;
typedef struct {word f0, f1, f2, f3;} W4;
typedef W4 *W4Pt;
typedef W5 *W5Pt;
#define SOURCE(p, l) /* source p, l */
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
static void NoName←Q504();
static void XlAuthImpl←P0();
static void GetAuth←P60();
static void GetAuthorization←P120();
static word NoName←Q564();
static word NoName←Q624();
static void ReadAuthRec←P276();
static word Read16←P384();
static word ReadString←P444();
static void NoName←Q684();
static void NoName←Q744();
static struct {unsigned f; char r[16];} string1 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[4];} string2 = {65537, "\001\000\000"};
static struct {unsigned f; char r[12];} string3 = {655372, "XAUTHORITY\000"};
static struct {unsigned f; char r[12];} string4 = {720908, ".Xauthority"};
static struct {unsigned f; char r[12];} string5 = {589836, "127.0.0.1\000\000"};
static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\237\154\176\217\300\250\331\341\121\100\164\000\000"};
static struct {unsigned f; char r[4];} string7 = {196611, "\004x\000"};
static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\255\053\300\023\300\142\135\315\105\100\150\000\000"};
static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\314\240\077\114\300\013\241\042\210\100\150\000\000"};
static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"};
static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\141\260\110\353\300\162\250\066\353\100\150\000\000"};
static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\332\223\177\020\300\304\076\102\260\100\164\000\000"};
static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[12];} string14 = {720908, "\257\300kte\023\205\204\320@h"};
static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\373\026\306\327\300\127\347\125\066\100\150\000\000"};
static struct {
   word f0[14]; word f14; word f15; word f16; 
   word f17; word f18; word f19; word f20; 
   word f21[16]; 
   } globalframe = {
   {0}, (word) GetAuthorization←P120, 0, (word) GetAuth←P60, 
   0, (word) XlAuthImpl←P0, 0, (word) 2147483647, 
   {0}
   };

static void NoName←Q504()
   {
   register ptr gf←c070 =  (ptr) &globalframe;
   word var←c13900;
   (* (( (ptr) gf←c070)+9) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (*  (ptr) (( (bPt) gf←c070)+44) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c070)+9) ), (word) &string3);
   (*  (ptr) (( (bPt) gf←c070)+48) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c070)+9) ), (word) &string4);
   (*  (ptr) (( (bPt) gf←c070)+52) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c070)+9) ), (word) &string5);
   (void) XR←DeclareGlobalFrame((word) "XlAuthImpl", &globalframe, (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7)
      , (word) (( (bPt) gf←c070)+72)/* var←c13228 */ );
   var←c13900 = (word) XR←ImportInterface((word) "Convert", (word) XR←GetTypeIndexS((word) (&string8)), 73);
   (* (( (ptr) gf←c070)+31)/* var←c13452 */  ) = var←c13900;
   (void) XR←ImportProcS(var←c13900, 67387905);
   var←c13900 = (word) XR←ImportInterface((word) "EnvironmentVariables", (word) XR←GetTypeIndexS((word) (&string9)), 1);
   (* (( (ptr) gf←c070)+35)/* var←c13644 */  ) = var←c13900;
   (void) XR←ImportProcS(var←c13900, 67371009);
   var←c13900 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string10)), 103);
   (* (( (ptr) gf←c070)+36)/* var←c13772 */  ) = var←c13900;
   (void) XR←ImportProcS(var←c13900, 67917827);
   (void) XR←ImportProcS(var←c13900, 67395585);
   (void) XR←ImportProcS(var←c13900, 530434);
   var←c13900 = (word) XR←ImportInterface((word) "PFS", (word) XR←GetTypeIndexS((word) (&string11)), 40);
   (* (( (ptr) gf←c070)+34)/* var←c13612 */  ) = var←c13900;
   (void) XR←ImportProcS(var←c13900, 67371265);
   (void) XR←ImportProcS(var←c13900, 71312136);
   var←c13900 = (word) XR←ImportInterface((word) "RefText", (word) XR←GetTypeIndexS((word) (&string12)), 26);
   (* (( (ptr) gf←c070)+32)/* var←c13484 */  ) = var←c13900;
   (void) XR←ImportProcS(var←c13900, 67371009);
   var←c13900 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string13)), 43);
   (* (( (ptr) gf←c070)+30)/* var←c13420 */  ) = var←c13900;
   (void) XR←ImportProcS(var←c13900, 67633666);
   (void) XR←ImportProcS(var←c13900, 67373313);
   (void) XR←ImportProcS(var←c13900, 67903235);
   (void) XR←ImportProcS(var←c13900, 67896323);
   var←c13900 = (word) XR←ImportInterface((word) "SystemNames", (word) XR←GetTypeIndexS((word) (&string14)), 9);
   (* (( (ptr) gf←c070)+33)/* var←c13516 */  ) = var←c13900;
   (void) XR←ImportProcS(var←c13900, 67110656);
   (void) XR←ImportProcS(var←c13900, 67109120);
   var←c13900 = (word) XR←ImportInterface((word) "XlAuthFriends", (word) XR←GetTypeIndexS((word) (&string15)), 1);
   (* (( (ptr) gf←c070)+29)/* var←c13388 */  ) = var←c13900;
   }

static void XlAuthImpl←P0(formal←c021, formal←c020)
   word formal←c021;
   word formal←c020;
   {
   register ptr gf←c13932 =  (ptr) &globalframe;
   /* XlAuthImpl: */ 
SOURCE(137, 2607)
   /* moved to installation proc */ 
SOURCE(2708, 36)
   (*  (ptr) (* (( (ptr) (* (( (ptr) gf←c13932)+29)/* var←c13388 */  ))+4) ) ) = (word) (( (bPt) gf←c13932)+64)/* var←c13196 */ ;
   }

static void GetAuth←P60(formal←c032, family←v4896, adress←v4924, display←v4952, proposedMethod←v4980)
   word formal←c032;
   word family←v4896;
   word adress←v4924;
   word display←v4952;
   word proposedMethod←v4980;
   {
   register ptr gf←c13964 =  (ptr) &globalframe;
   word method←v5024;
   word data←v5052;
   /* GetAuth: */ 
SOURCE(581, 522)
SOURCE(581, 522)
   method←v5024 = 0;
SOURCE(581, 522)
   data←v5052 = 0;
SOURCE(625, 316)
   if ((family←v4896 == 0)) {
SOURCE(657, 284)
      {
         word pd16;
         pd16 = (* (( (ptr) (* (( (ptr) gf←c13964)+30)/* var←c13420 */  ))+8) );
         if ((0 != (word) ( *( (fPt) ((*  (ptr) pd16 ))))(adress←v4924, (* (( (ptr) gf←c13964)+13) ), 1, pd16))) {
SOURCE(698, 26)
            family←v4896 = 256;
            }
         else {
SOURCE(724, 217)
            {
               word addr←v3560;
               word text←v3588;
SOURCE(726, 56)
               {
                  word pd17;
                  pd17 = (* (( (ptr) (* (( (ptr) gf←c13964)+31)/* var←c13452 */  ))+70) );
                  addr←v3560 = (word) ( *( (fPt) ((*  (ptr) pd17 ))))(adress←v4924, pd17);
                  };
SOURCE(784, 31)
               {
                  word pd18;
                  pd18 = (* (( (ptr) (* (( (ptr) gf←c13964)+32)/* var←c13484 */  ))+4) );
                  text←v3588 = (word) ( *( (fPt) ((*  (ptr) pd18 ))))(4, pd18);
                  };
SOURCE(817, 21)
               {
                  word limit19;
                  (* ((( (bPt) text←v3588)+4)+(
                        limit19 = (word)  (unsigned) (* (( (hPt) text←v3588)+1) ),
                        BCK(0, limit19)
                        )) ) = ((unsigned)addr←v3560 >> 24);
                  };
SOURCE(840, 21)
               {
                  word limit20;
                  (* ((( (bPt) text←v3588)+4)+(
                        limit20 = (word)  (unsigned) (* (( (hPt) text←v3588)+1) ),
                        BCK(1, limit20)
                        )) ) = (((unsigned)addr←v3560 << 8) >> 24);
                  };
SOURCE(863, 21)
               {
                  word limit21;
                  (* ((( (bPt) text←v3588)+4)+(
                        limit21 = (word)  (unsigned) (* (( (hPt) text←v3588)+1) ),
                        BCK(2, limit21)
                        )) ) = (((unsigned)addr←v3560 << 16) >> 24);
                  };
SOURCE(886, 21)
               {
                  word limit22;
                  (* ((( (bPt) text←v3588)+4)+(
                        limit22 = (word)  (unsigned) (* (( (hPt) text←v3588)+1) ),
                        BCK(3, limit22)
                        )) ) = addr←v3560;
                  };
SOURCE(909, 32)
               {
                  word pd23;
                  pd23 = (* (( (ptr) (* (( (ptr) gf←c13964)+30)/* var←c13420 */  ))+35) );
                  adress←v4924 = (word) ( *( (fPt) ((*  (ptr) pd23 ))))(text←v3588, 0, 32767, pd23);
                  };
               };
            };
         };
      };
SOURCE(947, 61)
   if ((family←v4896 == 256)) {
SOURCE(974, 34)
      {
         word pd24;
         pd24 = (* (( (ptr) (* (( (ptr) gf←c13964)+33)/* var←c13516 */  ))+5) );
         adress←v4924 = (word) ( *( (fPt) ((*  (ptr) pd24 ))))(pd24);
         };
      };
SOURCE(1010, 93)
   {
      W2 var←c13548;
      (void) GetAuthorization←P120((word) &var←c13548, 0, family←v4896, proposedMethod←v4980, adress←v4924, display←v4952);
      data←v5052 = var←c13548.f1;
      method←v5024 = var←c13548.f0;
      };
   /* removed tail goto */ 
   (*  (ptr) formal←c032 ) = method←v5024;
   (* (( (ptr) formal←c032)+1) ) = data←v5052;
   return;
   }

static void GetAuthorization←P120(formal←c041, formal←c092, formal←c093, formal←c094, formal←c095, formal←c096)
   word formal←c041;
   word formal←c092;
   word formal←c093;
   word formal←c094;
   word formal←c095;
   word formal←c096;
   {
   W13 var←c13996;
   /* declaration of fileName←v3348 skipped */ 
   /* declaration of rFamily←v3376 skipped */ 
   /* declaration of rMethod←v3404 skipped */ 
   /* declaration of rAdress←v3432 skipped */ 
   /* declaration of rDisplayNumber←v3460 skipped */ 
   /* declaration of method←v3504 skipped */ 
   /* declaration of data←v3532 skipped */ 
   /* declaration of var←c13580 skipped */ 
   (* (( (ptr) &var←c13996)+4)/* fileName←v3348 */  ) = formal←c092;
   (* (( (ptr) &var←c13996)+5)/* rFamily←v3376 */  ) = formal←c093;
   (* (( (ptr) &var←c13996)+6)/* rMethod←v3404 */  ) = formal←c094;
   (* (( (ptr) &var←c13996)+7)/* rAdress←v3432 */  ) = formal←c095;
   (* (( (ptr) &var←c13996)+8)/* rDisplayNumber←v3460 */  ) = formal←c096;
   /* GetAuthorization: */ 
SOURCE(1109, 1594)
   {
      word tmpAddr25;
      tmpAddr25 = (word) (( (ptr) &var←c13996)+11)/* var←c13580 */ ;
      (*  (ptr) tmpAddr25 ) = ( ((word)  (fPt) ReadAuthRec←P276) );
      (* (( (ptr) tmpAddr25) + 1) ) = 1;
      };
SOURCE(1109, 1594)
   (* (( (ptr) &var←c13996)+9)/* method←v3504 */  ) = 0;
SOURCE(1109, 1594)
   (* (( (ptr) &var←c13996)+10)/* data←v3532 */  ) = 0;
SOURCE(1292, 1411)
SOURCE(1294, 1367)
   {
      word var←c02;
      {
         word var←c084;
         var←c084 = (word) &var←c13996;
         var←c02 = (word) XR←Enable(( ((word)  (fPt) NoName←Q564) ), ( ((word)  (fPt) NoName←Q684) ), var←c084);
         };
      if ((var←c02 == 4)) {
         goto lab←L100002;
         }
      else {
         if ((var←c02 == 2)) {
            goto lab←L100001;
            };
         };
      };
   goto lab←L100012;
   lab←L100002: ;
SOURCE(2682, 19)
   (* (( (ptr) &var←c13996)+10)/* data←v3532 */  ) = 0;
   (* (( (ptr) &var←c13996)+9)/* method←v3504 */  ) = 0;
   lab←L100012: ;
   /* removed tail goto */ 
   lab←L100001: ;
   (*  (ptr) formal←c041 ) = (* (( (ptr) &var←c13996)+9)/* method←v3504 */  );
   (* (( (ptr) formal←c041)+1) ) = (* (( (ptr) &var←c13996)+10)/* data←v3532 */  );
   return;
   }

static word NoName←Q564(formal←c074)
   word formal←c074;
   {
   W5 var←c089;
   register ptr gf←c073 =  (ptr) &globalframe;
   var←c089.f0 = formal←c074;
SOURCE(1329, 19)
   {
      /* declaration of s←v3672 skipped */ 
SOURCE(1769, 12)
      var←c089.f4/* s←v3672 */  = 0;
SOURCE(1783, 179)
      if (((* (( (ptr) formal←c074)+4) ) == 0)) {
SOURCE(1806, 49)
         {
            word pd26;
            pd26 = (* (( (ptr) (* (( (ptr) gf←c073)+35)/* var←c13644 */  ))+4) );
            (* (( (ptr) formal←c074)+4) ) = (word) ( *( (fPt) ((*  (ptr) pd26 ))))((* ((( (ptr) gf←c073)+11)) ), pd26);
            };
SOURCE(1857, 105)
         {
            word pd27;
            pd27 = (* (( (ptr) (* (( (ptr) gf←c073)+30)/* var←c13420 */  ))+13) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd27 ))))((* ((( (ptr) formal←c074)+4)) ), pd27))) {
SOURCE(1890, 72)
               {
                  word var←c13676;
                  {
                     word pd28;
                     pd28 = (* (( (ptr) (* (( (ptr) gf←c073)+33)/* var←c13516 */  ))+11) );
                     var←c13676 = (word) ( *( (fPt) ((*  (ptr) pd28 ))))(pd28);
                     };
                  {
                     word pd29;
                     pd29 = (* (( (ptr) (* (( (ptr) gf←c073)+30)/* var←c13420 */  ))+6) );
                     (* (( (ptr) formal←c074)+4) ) = (word) ( *( (fPt) ((*  (ptr) pd29 ))))(var←c13676, (* (( (ptr) gf←c073)+12) ), pd29);
                     };
                  };
               };
            };
         };
SOURCE(1970, 46)
      {
         word var←c13708;
         {
            word pd30;
            pd30 = (* (( (ptr) (* (( (ptr) gf←c073)+34)/* var←c13612 */  ))+5) );
            var←c13708 = (word) ( *( (fPt) ((*  (ptr) pd30 ))))((* ((( (ptr) formal←c074)+4)) ), pd30);
            };
         {
            W2 var←c13740;
            var←c13740.f0 = 4096;
            var←c13740.f1 = 2;
            {
               word pd31;
               pd31 = (* (( (ptr) (* (( (ptr) gf←c073)+34)/* var←c13612 */  ))+39) );
               var←c089.f4/* s←v3672 */  = (word) ( *( (fPt) ((*  (ptr) pd31 ))))(var←c13708, 0, (*  (W4Pt) (( (ptr) gf←c073)+20)/* var←c13292 */  ), 0, 0, (*  (W5Pt) (
                     ( (ptr) gf←c073)+24)/* var←c13356 */  )
                  , 1, var←c13740, pd31);
               };
            };
         };
SOURCE(2018, 627)
SOURCE(2047, 558)
      lab←L100008: ;
SOURCE(2095, 510)
      {
         word var←c01;
         {
            word var←c085;
            var←c085 = (word) &var←c089;
            var←c01 = (word) XR←Enable(( ((word)  (fPt) NoName←Q624) ), ( ((word)  (fPt) NoName←Q744) ), var←c085);
            };
         if ((var←c01 == 3)) {
            goto lab←L100005;
            }
         else {
            if ((var←c01 == 2)) {
               return(2);
               };
            };
         };
      goto lab←L100008;
      /* c2c skipped dead code */ 
      lab←L100005: ;
SOURCE(2650, 11)
      {
         word pd32;
         pd32 = (* (( (ptr) (* (( (ptr) gf←c073)+36)/* var←c13772 */  ))+28) );
         (void) ( *( (fPt) ((*  (ptr) pd32 ))))(var←c089.f4/* s←v3672 */ , 0, pd32);
         };
      };
   return(0);
   }

static word NoName←Q624(formal←c076)
   word formal←c076;
   {
   register ptr gf←c075 =  (ptr) &globalframe;
SOURCE(2143, 28)
   {
      W5 ar←v3820;
SOURCE(2143, 28)
      (void) ReadAuthRec←P276((word) &ar←v3820, (* (( (ptr) formal←c076)+4) ), (word) (( (bPt) (*  (ptr) formal←c076 ))+44));
SOURCE(2173, 432)
      if (((ar←v3820.f0 == 65535) || ((* (( (ptr) (*  (ptr) formal←c076 ))+5) ) == 65535)) || (ar←v3820.f0 == (* (( (ptr) (*  (ptr) formal←c076 ))+5)
       ))) {
SOURCE(2255, 350)
         {
            word pd33;
            word pd35;
            word pd36;
            pd33 = (* (( (ptr) (* (( (ptr) gf←c075)+30)/* var←c13420 */  ))+13) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd33 ))))(ar←v3820.f1, pd33))) { goto then034;};
            pd35 = (* (( (ptr) (* (( (ptr) gf←c075)+30)/* var←c13420 */  ))+13) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd35 ))))((* ((( (ptr) (*  (ptr) formal←c076 ))+7)) ), pd35))) { goto then034;};
            pd36 = (* (( (ptr) (* (( (ptr) gf←c075)+30)/* var←c13420 */  ))+8) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd36 ))))(ar←v3820.f1, (* (( (ptr) (*  (ptr) formal←c076 ))+7) ), 1, pd36))) {
               then034: ;
SOURCE(2348, 257)
               {
                  word pd37;
                  word pd39;
                  word pd40;
                  pd37 = (* (( (ptr) (* (( (ptr) gf←c075)+30)/* var←c13420 */  ))+13) );
                  if ((0 != (word) ( *( (fPt) ((*  (ptr) pd37 ))))(ar←v3820.f2, pd37))) { goto then038;};
                  pd39 = (* (( (ptr) (* (( (ptr) gf←c075)+30)/* var←c13420 */  ))+13) );
                  if ((0 != (word) ( *( (fPt) ((*  (ptr) pd39 ))))((* ((( (ptr) (*  (ptr) formal←c076 ))+8)) ), pd39))) { goto then038;};
                  pd40 = (* (( (ptr) (* (( (ptr) gf←c075)+30)/* var←c13420 */  ))+8) );
                  if ((0 != (word) ( *( (fPt) ((*  (ptr) pd40 ))))(ar←v3820.f2, (* (( (ptr) (*  (ptr) formal←c076 ))+8) ), 1, pd40))) {
                     then038: ;
SOURCE(2469, 136)
                     {
                        word pd41;
                        word pd43;
                        word pd44;
                        pd41 = (* (( (ptr) (* (( (ptr) gf←c075)+30)/* var←c13420 */  ))+13) );
                        if ((0 != (word) ( *( (fPt) ((*  (ptr) pd41 ))))(ar←v3820.f3, pd41))) { goto then042;};
                        pd43 = (* (( (ptr) (* (( (ptr) gf←c075)+30)/* var←c13420 */  ))+13) );
                        if ((0 != (word) ( *( (fPt) ((*  (ptr) pd43 ))))((* ((( (ptr) (*  (ptr) formal←c076 ))+6)) ), pd43))) { goto then042;};
                        pd44 = (* (( (ptr) (* (( (ptr) gf←c075)+30)/* var←c13420 */  ))+8) );
                        if ((0 != (word) ( *( (fPt) ((*  (ptr) pd44 ))))(ar←v3820.f3, (* (( (ptr) (*  (ptr) formal←c076 ))+6) ), 1, pd44))) {
                           then042: ;
SOURCE(2562, 18)
                           (* (( (ptr) (*  (ptr) formal←c076 ))+9) ) = ar←v3820.f3;
SOURCE(2582, 14)
                           (* (( (ptr) (*  (ptr) formal←c076 ))+10) ) = ar←v3820.f4;
SOURCE(2598, 7)
                           return(2);
                           };
                        };
                     };
                  };
               };
            };
         };
      };
   return(0);
   }

static void ReadAuthRec←P276(formal←c052, s←v3748, formal←c14060)
   word formal←c052;
   word s←v3748;
   word formal←c14060;
   {
   W8 var←c14028;
   W5 ar←v3792;
   /* declaration of var←c13804 skipped */ 
   /* declaration of var←c13836 skipped */ 
   formal←c14060 = (formal←c14060 - 44);
   var←c14028.f0 = formal←c14060;
   /* ReadAuthRec: */ 
SOURCE(1329, 19)
   {
      word tmpAddr45;
      tmpAddr45 = (word) (( (ptr) &var←c14028)+4)/* var←c13804 */ ;
      (*  (ptr) tmpAddr45 ) = ( ((word)  (fPt) ReadString←P444) );
      (* (( (ptr) tmpAddr45) + 1) ) = 1;
      };
   {
      word tmpAddr46;
      tmpAddr46 = (word) (( (ptr) &var←c14028)+6)/* var←c13836 */ ;
      (*  (ptr) tmpAddr46 ) = ( ((word)  (fPt) Read16←P384) );
      (* (( (ptr) tmpAddr46) + 1) ) = 1;
      };
SOURCE(1329, 19)
   XR←FillWords(&ar←v3792, 5, 0);
SOURCE(1629, 21)
   ar←v3792.f0 = (word) Read16←P384(s←v3748, (word) (( (bPt) &var←c14028)+24)/* var←c13836 */ );
SOURCE(1652, 25)
   ar←v3792.f1 = (word) ReadString←P444(s←v3748, (word) (( (bPt) &var←c14028)+16)/* var←c13804 */ );
SOURCE(1680, 32)
   ar←v3792.f2 = (word) ReadString←P444(s←v3748, (word) (( (bPt) &var←c14028)+16)/* var←c13804 */ );
SOURCE(1714, 25)
   ar←v3792.f3 = (word) ReadString←P444(s←v3748, (word) (( (bPt) &var←c14028)+16)/* var←c13804 */ );
SOURCE(1741, 23)
   ar←v3792.f4 = (word) ReadString←P444(s←v3748, (word) (( (bPt) &var←c14028)+16)/* var←c13804 */ );
   /* removed tail goto */ 
   (*  (W5Pt) formal←c052 ) = ar←v3792;
   return;
   }

static word Read16←P384(s←v3968, formal←c14124)
   word s←v3968;
   word formal←c14124;
   {
   register ptr gf←c14092 =  (ptr) &globalframe;
   word var←c4012;
   word hword←v4144;
   formal←c14124 = (formal←c14124 - 24);
   /* Read16: */ 
SOURCE(1388, 14)
SOURCE(1437, 36)
   {
      word pd47;
      pd47 = (* (( (ptr) (* (( (ptr) gf←c14092)+36)/* var←c13772 */  ))+100) );
      hword←v4144 = (word) ( *( (fPt) ((*  (ptr) pd47 ))))(s←v3968, pd47);
      };
SOURCE(1475, 31)
   return((((word)  (unsigned) (((unsigned)hword←v4144 << 16) >> 24) << 8) +  (unsigned) (hword←v4144 & 0377)));
   }

static word ReadString←P444(s←v4072, formal←c14188)
   word s←v4072;
   word formal←c14188;
   {
   register ptr gf←c14156 =  (ptr) &globalframe;
   word var←c4116;
   word leng←v4188;
   formal←c14188 = (formal←c14188 - 16);
   /* ReadString: */ 
SOURCE(1509, 18)
SOURCE(1565, 24)
   leng←v4188 = (word) Read16←P384(s←v4072, (word) (( (bPt) formal←c14188)+24));
SOURCE(1591, 35)
   {
      word pd48;
      pd48 = (* (( (ptr) (* (( (ptr) gf←c14156)+36)/* var←c13772 */  ))+92) );
      return((word) ( *( (fPt) ((*  (ptr) pd48 ))))(s←v4072, leng←v4188, 1, pd48));
      };
   }

static void NoName←Q684(formal←c064, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c064;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   register ptr gf←c082 =  (ptr) &globalframe;
   if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c082)+34)/* var←c13612 */  ))+9) ))) {
      {
         W4 error←v9228;
         error←v9228 = (*  (W4Pt) formal←c200003 );
SOURCE(1314, 13)
         (*  (ptr) formal←c064 ) = 2;
         (* (( (ptr) formal←c064)+1) ) = 4;
         return;
         };
      };
   (*  (ptr) formal←c064 ) = 0;
   (* (( (ptr) formal←c064)+1) ) = 0;
   return;
   }

static void NoName←Q744(formal←c069, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
   word formal←c069;
   word formal←c200004;
   word formal←c200005;
   word formal←c200006;
   word formal←c200007;
   {
   register ptr gf←c083 =  (ptr) &globalframe;
   if ((formal←c200005 == (* (( (ptr) (* (( (ptr) gf←c083)+36)/* var←c13772 */  ))+4) )) || (formal←c200005 == (* (( (ptr) (* (
         ( (ptr) gf←c083)+36)/* var←c13772 */  ))+5) ))) {
SOURCE(2130, 11)
      (*  (ptr) formal←c069 ) = 2;
      (* (( (ptr) formal←c069)+1) ) = 3;
      return;
      };
   (*  (ptr) formal←c069 ) = 0;
   (* (( (ptr) formal←c069)+1) ) = 0;
   return;
   }

/* file: XlAuthImpl, module: XlAuthImpl, compiled at: October 27, 1993 5:43:08 pm PDT */ 
extern void XR←install←XlAuthImpl() {
   NoName←Q504();
   }
extern void XR←run←XlAuthImpl() { XR←Start(&globalframe); }