Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Types[0] = Pointer
- Types[1] = U32
- Types[2] = Variant
- Types[3] = PChar
- Types[4] = Currency
- Types[5] = Extended
- Types[6] = Double
- Types[7] = Single
- Types[8] = S64
- Types[9] = String
- Types[10] = U32
- Types[11] = S32
- Types[12] = S16
- Types[13] = U16
- Types[14] = S8
- Types[15] = String
- Types[16] = UnicodeString
- Types[17] = UnicodeString
- Types[18] = String
- Types[19] = UnicodeString
- Types[20] = WideString
- Types[21] = WideChar
- Types[22] = WideChar
- Types[23] = Char
- Types[24] = U8
- Types[25] = U16
- Types[26] = U32
- Types[27] = BOOLEAN = U8
- Types[28] = U8
- Types[29] = TWIZARDPAGE = Class
- Types[30] = ProcPtr
- Types[31] = ProcPtr
- Types[32] = TWIZARDFORM = Class
- Types[33] = TNEWBUTTON = Class
- Types[34] = TNEWNOTEBOOKPAGE = Class
- Types[35] = TOBJECT = Class
- Types[36] = TNOTIFYEVENT = ProcPtr
- Types[37] = TMSGBOXTYPE = U8
- Types[38] = TWIZARDPAGENOTIFYEVENT = ProcPtr
- Types[39] = TWIZARDPAGESHOULDSKIPEVENT = ProcPtr
- Types[40] = TWIZARDPAGEBUTTONEVENT = ProcPtr
- Types[41] = Record <UnicodeString,UnicodeString,UnicodeString,U8,U8>
- Types[42] = Record <UnicodeString,UnicodeString,UnicodeString,U8,U8>[]
- Types[43] = TOUTPUTPROGRESSWIZARDPAGE = Class
- Types[44] = TEXECWAIT = U8
- Types[45] = U8
- Types[46] = !OPENARRAYOFUNICODESTRING = UnicodeString[]
- Types[47] = Variant[]
- Types[48] = TSETUPPROCESSORARCHITECTURE = U8
- Types[49] = TWINDOWSVERSION = Record <U32,U32,U32,U32,U32,U8,U8,U16>
- Types[50] = U8
- Types[51] = TINPUTQUERYWIZARDPAGE = Class
- Types[52] = TNEWSTATICTEXT = Class
- Types[53] = TINPUTDIRWIZARDPAGE = Class
- Types[54] = !OPENARRAYOFCONST = Pointer[]
- Types[55] = IDISPATCH = Interface
- Types[56] = !OPENARRAYOFVARIANT = Variant[]
- Types[57] = TWIZARDPAGECANCELEVENT = ProcPtr
- Types[58] = TEDIT = Class
- Types[59] = TCONTROL = Class
- Types[60] = TCOMPONENT = Class
- Types[61] = TWINCONTROL = Class
- Types[62] = TPASSWORDEDIT = Class
- Types[63] = TNEWMEMO = Class
- Types[64] = TSTRINGS = Class
- Types[65] = TSETUPSTEP = U8
- Types[66] = TUNINSTALLSTEP = U8
- Vars[0].Type = BOOLEAN = U8
- Vars[1].Type = BOOLEAN = U8
- Vars[2].Type = BOOLEAN = U8
- Vars[3].Type = UnicodeString
- Vars[4].Type = UnicodeString
- Vars[5].Type = UnicodeString
- Vars[6].Type = UnicodeString
- Vars[7].Type = UnicodeString
- Vars[8].Type = UnicodeString
- Vars[9].Type = UnicodeString
- Vars[10].Type = UnicodeString
- Vars[11].Type = UnicodeString
- Vars[12].Type = BOOLEAN = U8
- Vars[13].Type = BOOLEAN = U8
- Vars[14].Type = ProcPtr
- Vars[15].Type = ProcPtr
- Vars[16].Type = UnicodeString
- Vars[17].Type = UnicodeString
- Vars[18].Type = UnicodeString
- Vars[19].Type = Record <UnicodeString,UnicodeString,UnicodeString,U8,U8>[]
- Vars[20].Type = BOOLEAN = U8
- Vars[21].Type = BOOLEAN = U8
- Vars[22].Type = TOUTPUTPROGRESSWIZARDPAGE = Class
- Vars[23].Type = TWINDOWSVERSION = Record <U32,U32,U32,U32,U32,U8,U8,U16>
- Vars[24].Type = UnicodeString
- Vars[25].Type = UnicodeString
- Vars[26].Type = UnicodeString
- Vars[27].Type = UnicodeString
- Vars[28].Type = UnicodeString
- Vars[29].Type = UnicodeString
- Vars[30].Type = UnicodeString
- Vars[31].Type = UnicodeString
- Vars[32].Type = UnicodeString
- Vars[33].Type = UnicodeString
- Vars[34].Type = BOOLEAN = U8
- Vars[35].Type = UnicodeString
- Vars[36].Type = TINPUTQUERYWIZARDPAGE = Class
- Vars[37].Type = TNEWSTATICTEXT = Class
- Vars[38].Type = TINPUTDIRWIZARDPAGE = Class
- Vars[39].Type = TNEWSTATICTEXT = Class
- Vars[40].Type = BOOLEAN = U8
- Vars[41].Type = UnicodeString
- Functions[0] = exported void !MAIN()
- ret
- Functions[1] = exported BOOLEAN COLLECTSERIALINFO(in UnicodeString Arg1,in UnicodeString Arg2)
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign RetVal, ( U8 0 )
- assign Var2, ( String "" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "Software\FlightSimLabs\" )
- calculate Var5 + Arg1
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String " Testing HKCU\" )
- calculate Var5 + Var1
- calculate Var5 + ( String "\SerialNumber" )
- assign Var4, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var4
- call LOG
- pop ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var2
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "SerialNumber" )
- pushtype UnicodeString ; StackCount = 7
- assign Var7, Var1
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483647 )
- pushvar Var3 ; StackCount = 9
- call REGQUERYSTRINGVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- assign Var5, Var3
- logicalnot Var5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_19e
- assign Var4, ( String " NOT Found..." )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var4
- call LOG
- pop ; StackCount = 4
- jump loc_1ec
- loc_19e:
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String " Found...: " )
- calculate Var5 + Var2
- assign Var4, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var4
- call LOG
- pop ; StackCount = 4
- loc_1ec:
- pushtype BOOLEAN ; StackCount = 5
- compare Var5, Var2 != ( String "" )
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_34a
- pushtype BOOLEAN ; StackCount = 5
- pushtype S32 ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, Var2
- pushvar Var6 ; StackCount = 8
- call LENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- compare Var5, Var6 != ( S32 34 )
- pop ; StackCount = 5
- jumptrue Var5, loc_2b5
- pushtype BOOLEAN ; StackCount = 6
- pushtype S32 ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Var8, Var2
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Arg2
- pushvar Var7 ; StackCount = 10
- call POS
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- compare Var6, Var7 != ( S32 1 )
- pop ; StackCount = 6
- calculate Var5 | Var6
- pop ; StackCount = 5
- loc_2b5:
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_304
- assign Var4, ( String " NOT a proper serial..." )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var4
- call LOG
- pop ; StackCount = 4
- jump loc_34a
- loc_304:
- assign Var4, ( String " Serial validated..." )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var4
- call LOG
- pop ; StackCount = 4
- assign RetVal, ( U8 1 )
- loc_34a:
- ret
- Functions[2] = external void LOG(out Arg1)
- Functions[3] = external returnsval REGQUERYSTRINGVALUE(out Arg1,out Arg2)
- Functions[4] = external returnsval LENGTH()
- Functions[5] = external returnsval POS(out Arg1)
- Functions[6] = exported void COLLECTSERIALSINFO()
- pushtype UnicodeString ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Global0, ( U8 0 )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "Collecting Serial Keys information..." )
- call LOG
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "" )
- call LOG
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "Looking for A320X-P3Dv4..." )
- call LOG
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "A320X-P4D" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "A320X-P3Dv4" )
- pushvar Global0 ; StackCount = 6
- call COLLECTSERIALINFO
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "Finished Collecting Serial Keys information..." )
- call LOG
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "" )
- call LOG
- pop ; StackCount = 3
- ret
- Functions[7] = exported void COLLECTSIMSINFO()
- pushtype U32 ; StackCount = 1
- pushtype U32 ; StackCount = 2
- pushtype U32 ; StackCount = 3
- pushtype U32 ; StackCount = 4
- pushtype U32 ; StackCount = 5
- pushtype U32 ; StackCount = 6
- pushtype BOOLEAN ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Global1, ( U8 0 )
- assign Global2, ( U8 0 )
- assign Global10, ( String "" )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Collecting simulator platform information..." )
- call LOG
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "" )
- call LOG
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Starting with Prepar3D v4..." )
- call LOG
- pop ; StackCount = 8
- assign Global3, ( String "SOFTWARE\Lockheed Martin\Prepar3d v4" )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "{userappdata}\Lockheed Martin\Prepar3d v4\" )
- pushvar Global9 ; StackCount = 10
- call EXPANDCONSTANT
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "{localappdata}\Lockheed Martin\Prepar3d v4\" )
- pushvar Global11 ; StackCount = 10
- call EXPANDCONSTANT
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "{userdocs}\Prepar3d v4 Files\" )
- pushvar Global5 ; StackCount = 10
- call EXPANDCONSTANT
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "{userdocs}\Prepar3d v4 Add-ons\" )
- pushvar Global6 ; StackCount = 10
- call EXPANDCONSTANT
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String " Testing HKLM\" )
- calculate Var9 + Global3
- calculate Var9 + ( String "\SetupPath" )
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- pushtype Pointer ; StackCount = 9
- setptr Var9, Global4
- pushtype UnicodeString ; StackCount = 10
- assign Var10, ( String "SetupPath" )
- pushtype UnicodeString ; StackCount = 11
- assign Var11, Global3
- pushtype S32 ; StackCount = 12
- assign Var12, ( S32 -2147483646 )
- pushvar Var7 ; StackCount = 13
- call REGQUERYSTRINGVALUE
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype BOOLEAN ; StackCount = 9
- assign Var9, Var7
- logicalnot Var9
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_4d2
- assign Var8, ( String " NOT Found..." )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String " Testing HKCU\" )
- calculate Var9 + Global3
- calculate Var9 + ( String "\AppPath" )
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- pushtype Pointer ; StackCount = 9
- setptr Var9, Global4
- pushtype UnicodeString ; StackCount = 10
- assign Var10, ( String "AppPath" )
- pushtype UnicodeString ; StackCount = 11
- assign Var11, Global3
- pushtype S32 ; StackCount = 12
- assign Var12, ( S32 -2147483647 )
- pushvar Var7 ; StackCount = 13
- call REGQUERYSTRINGVALUE
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype BOOLEAN ; StackCount = 9
- assign Var9, Var7
- logicalnot Var9
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_47f
- assign Var8, ( String " NOT Found..." )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- assign Global4, ( String "" )
- jump loc_4cd
- loc_47f:
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String " Found...: " )
- calculate Var9 + Global4
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- loc_4cd:
- jump loc_520
- loc_4d2:
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String " Found...: " )
- calculate Var9 + Global4
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- loc_520:
- pushtype BOOLEAN ; StackCount = 9
- compare Var9, Global4 != ( String "" )
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_a6d
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Global4
- calculate Var9 + ( String "\Prepar3D.exe" )
- assign Global8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String " Testing " )
- calculate Var9 + Global8
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- pushtype BOOLEAN ; StackCount = 9
- pushtype UnicodeString ; StackCount = 10
- assign Var10, Global8
- pushvar Var9 ; StackCount = 11
- call FILEEXISTS
- pop ; StackCount = 10
- pop ; StackCount = 9
- logicalnot Var9
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_647
- assign Var8, ( String " NOT Found..." )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- assign Global4, ( String "" )
- jump loc_a6d
- loc_647:
- pushtype BOOLEAN ; StackCount = 9
- pushtype Pointer ; StackCount = 10
- setptr Var10, Var2
- pushtype Pointer ; StackCount = 11
- setptr Var11, Var1
- pushtype UnicodeString ; StackCount = 12
- assign Var12, Global8
- pushvar Var9 ; StackCount = 13
- call GETVERSIONNUMBERS
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- assign Var3, Var1
- calculate Var3 >> ( S32 16 )
- assign Var4, Var1
- calculate Var4 & ( S32 65535 )
- assign Var5, Var2
- calculate Var5 >> ( S32 16 )
- assign Var6, Var2
- calculate Var6 & ( S32 65535 )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String " Found... " )
- calculate Var9 + Global8
- calculate Var9 + ( String " (" )
- pushtype UnicodeString ; StackCount = 10
- pushtype S64 ; StackCount = 11
- assign Var11, Var3
- pushvar Var10 ; StackCount = 12
- call INTTOSTR
- pop ; StackCount = 11
- pop ; StackCount = 10
- calculate Var9 + Var10
- pop ; StackCount = 9
- calculate Var9 + ( Char '.' )
- pushtype UnicodeString ; StackCount = 10
- pushtype S64 ; StackCount = 11
- assign Var11, Var4
- pushvar Var10 ; StackCount = 12
- call INTTOSTR
- pop ; StackCount = 11
- pop ; StackCount = 10
- calculate Var9 + Var10
- pop ; StackCount = 9
- calculate Var9 + ( Char '.' )
- pushtype UnicodeString ; StackCount = 10
- pushtype S64 ; StackCount = 11
- assign Var11, Var5
- pushvar Var10 ; StackCount = 12
- call INTTOSTR
- pop ; StackCount = 11
- pop ; StackCount = 10
- calculate Var9 + Var10
- pop ; StackCount = 9
- calculate Var9 + ( Char '.' )
- pushtype UnicodeString ; StackCount = 10
- pushtype S64 ; StackCount = 11
- assign Var11, Var6
- pushvar Var10 ; StackCount = 12
- call INTTOSTR
- pop ; StackCount = 11
- pop ; StackCount = 10
- calculate Var9 + Var10
- pop ; StackCount = 9
- calculate Var9 + ( Char ')' )
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- pushtype BOOLEAN ; StackCount = 9
- compare Var9, Var6 < ( S32 22841 )
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_8d5
- assign Var8, ( String " Please upgrade to a later P3D v4 version ..." )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- assign Global4, ( String "" )
- jump loc_a6d
- loc_8d5:
- pushtype BOOLEAN ; StackCount = 9
- compare Var9, Var6 > ( S32 22841 )
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_969
- assign Var8, ( String " Your P3D v4 version is newer than this installer can recognize..." )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- jump loc_a6d
- loc_969:
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String " AppData folder is \"" )
- calculate Var9 + Global9
- calculate Var9 + ( String "\" ..." )
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String " LocalAppData folder is \"" )
- calculate Var9 + Global11
- calculate Var9 + ( String "\" ..." )
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- assign Global1, ( U8 1 )
- assign Global10, ( String "Prepar3D.cfg" )
- loc_a6d:
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Finished collecting info..." )
- call LOG
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Results:" )
- call LOG
- pop ; StackCount = 8
- pushtype BOOLEAN ; StackCount = 9
- assign Var9, Global1
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_bfd
- assign Var8, ( String "Prepar3D v4 Exists..." )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String " AppData folder is \"" )
- calculate Var9 + Global9
- calculate Var9 + ( String "\" ..." )
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String " LocalAppData folder is \"" )
- calculate Var9 + Global11
- calculate Var9 + ( String "\" ..." )
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- jump loc_c3f
- loc_bfd:
- assign Var8, ( String "Prepar3D v4 does NOT exist..." )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Var8
- call LOG
- pop ; StackCount = 8
- loc_c3f:
- ret
- Functions[8] = external returnsval EXPANDCONSTANT(out Arg1)
- Functions[9] = external returnsval FILEEXISTS(out Arg1)
- Functions[10] = external returnsval GETVERSIONNUMBERS(out Arg1,in Arg2)
- Functions[11] = external returnsval INTTOSTR(out Arg1)
- Functions[12] = external stdcall returnsval kernel32.dll!GetFileAttributesA(out Arg1)
- Functions[13] = external stdcall returnsval kernel32.dll!SetFileAttributesA(out Arg1)
- Functions[14] = exported BOOLEAN ISREADONLY(in UnicodeString Arg1)
- pushtype U32 ; StackCount = 1
- pushtype String ; StackCount = 2
- assign Var2, Arg1
- pushvar Var1 ; StackCount = 3
- call kernel32.dll!GetFileAttributesA
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype U32 ; StackCount = 2
- assign Var2, Var1
- calculate Var2 & ( S32 1 )
- compare RetVal, Var2 == ( S32 1 )
- pop ; StackCount = 1
- ret
- Functions[15] = exported void REMOVEREADONLY(in UnicodeString Arg1)
- pushtype U32 ; StackCount = 1
- pushtype String ; StackCount = 2
- assign Var2, Arg1
- pushvar Var1 ; StackCount = 3
- call kernel32.dll!GetFileAttributesA
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype U32 ; StackCount = 3
- assign Var3, Var1
- calculate Var3 & ( S32 1 )
- compare Var2, Var3 == ( S32 1 )
- pop ; StackCount = 2
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_ae
- calculate Var1 - ( S32 1 )
- pushtype U32 ; StackCount = 2
- pushtype U32 ; StackCount = 3
- assign Var3, Var1
- pushtype String ; StackCount = 4
- assign Var4, Arg1
- pushvar Var2 ; StackCount = 5
- call kernel32.dll!SetFileAttributesA
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- loc_ae:
- ret
- Functions[16] = exported UnicodeString GETCOMMANDLINEPARAM(in UnicodeString Arg1)
- pushtype S32 ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- assign Var1, ( S32 0 )
- assign RetVal, ( String "" )
- assign Var2, ( U8 0 )
- pushtype BOOLEAN ; StackCount = 3
- loc_39:
- pushtype S32 ; StackCount = 4
- pushvar Var4 ; StackCount = 5
- call PARAMCOUNT
- pop ; StackCount = 4
- compare Var3, Var1 < Var4
- pop ; StackCount = 3
- jumpfalse Var3, loc_89
- pushtype BOOLEAN ; StackCount = 4
- assign Var4, Var2
- logicalnot Var4
- calculate Var3 & Var4
- pop ; StackCount = 3
- loc_89:
- jumpfalse Var3, loc_187
- pushtype BOOLEAN ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- pushtype S32 ; StackCount = 6
- assign Var6, Var1
- pushvar Var5 ; StackCount = 7
- call PARAMSTR
- pop ; StackCount = 6
- pop ; StackCount = 5
- compare Var4, Var5 == Arg1
- pop ; StackCount = 4
- jumpfalse Var4, loc_12c
- pushtype BOOLEAN ; StackCount = 5
- pushtype S32 ; StackCount = 6
- assign Var6, Var1
- calculate Var6 + ( S32 1 )
- pushtype S32 ; StackCount = 7
- pushvar Var7 ; StackCount = 8
- call PARAMCOUNT
- pop ; StackCount = 7
- compare Var5, Var6 <= Var7
- pop ; StackCount = 6
- pop ; StackCount = 5
- calculate Var4 & Var5
- pop ; StackCount = 4
- loc_12c:
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_172
- pushtype S32 ; StackCount = 4
- assign Var4, Var1
- calculate Var4 + ( S32 1 )
- pushvar RetVal ; StackCount = 5
- call PARAMSTR
- pop ; StackCount = 4
- pop ; StackCount = 3
- assign Var2, ( U8 1 )
- loc_172:
- calculate Var1 + ( S32 1 )
- jump loc_39
- loc_187:
- pop ; StackCount = 2
- ret
- Functions[17] = external returnsval PARAMCOUNT()
- Functions[18] = external returnsval PARAMSTR(out Arg1)
- Functions[19] = external stdcall void files:itdownload.dll!itd_cancel()
- Functions[20] = external stdcall void files:itdownload.dll!itd_clearfiles()
- Functions[21] = external stdcall returnsval files:itdownload.dll!itd_downloadfile(out Arg1)
- Functions[22] = external stdcall returnsval files:itdownload.dll!itd_getresultlen()
- Functions[23] = external stdcall void files:itdownload.dll!itd_getresultstring(out Arg1)
- Functions[24] = external stdcall void files:itdownload.dll!itd_initui(out Arg1)
- Functions[25] = external stdcall returnsval files:itdownload.dll!itd_loadstrings(out Arg1)
- Functions[26] = external stdcall void files:itdownload.dll!itd_setoption(out Arg1)
- Functions[27] = external stdcall returnsval files:itdownload.dll!itd_getfilesize(out Arg1)
- Functions[28] = external stdcall returnsval files:itdownload.dll!itd_getstring(out Arg1)
- Functions[29] = external stdcall returnsval files:itdownload.dll!itd_getoption(out Arg1,out Arg2)
- Functions[30] = external stdcall void files:itdownload.dll!itd_setstring(out Arg1)
- Functions[31] = external stdcall void files:itdownload.dll!itd_addfile(out Arg1)
- Functions[32] = external stdcall void files:itdownload.dll!itd_addmirror(out Arg1)
- Functions[33] = external stdcall void files:itdownload.dll!itd_addfilesize(out Arg1,out Arg2)
- Functions[34] = external stdcall returnsval files:itdownload.dll!itd_downloadfiles(out Arg1)
- Functions[35] = external stdcall returnsval files:itdownload.dll!itd_filecount()
- Functions[36] = external stdcall returnsval files:itdownload.dll!itd_postpage(out Arg1,out Arg2)
- Functions[37] = exported void ITD_DOWNLOADFILES()
- pushtype S32 ; StackCount = 1
- pushtype S32 ; StackCount = 2
- assign Var2, ( S32 0 )
- pushvar Var1 ; StackCount = 3
- call files:itdownload.dll!itd_downloadfiles
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[38] = exported void ITD_ADDFILE(in UnicodeString Arg1,in UnicodeString Arg2)
- pushtype String ; StackCount = 1
- assign Var1, Arg2
- pushtype String ; StackCount = 2
- assign Var2, Arg1
- call files:itdownload.dll!itd_addfile
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[39] = exported void ITD_ADDMIRROR(in UnicodeString Arg1,in UnicodeString Arg2)
- pushtype String ; StackCount = 1
- assign Var1, Arg2
- pushtype String ; StackCount = 2
- assign Var2, Arg1
- call files:itdownload.dll!itd_addmirror
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[40] = exported void ITD_ADDFILESIZE(in UnicodeString Arg1,in UnicodeString Arg2,in S32 Arg3)
- pushtype S32 ; StackCount = 1
- assign Var1, Arg3
- pushtype String ; StackCount = 2
- assign Var2, Arg2
- pushtype String ; StackCount = 3
- assign Var3, Arg1
- call files:itdownload.dll!itd_addfilesize
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[41] = exported BOOLEAN ITD_HANDLESKIPPAGE(in TWIZARDPAGE Arg1)
- pushtype S32 ; StackCount = 1
- pushvar Var1 ; StackCount = 2
- call files:itdownload.dll!itd_filecount
- pop ; StackCount = 1
- compare RetVal, Var1 == ( S32 0 )
- pop ; StackCount = 0
- ret
- Functions[42] = exported void ITD_SETSTRING(in S32 Arg1,in UnicodeString Arg2)
- pushtype String ; StackCount = 1
- assign Var1, Arg2
- pushtype S32 ; StackCount = 2
- assign Var2, Arg1
- call files:itdownload.dll!itd_setstring
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[43] = exported BOOLEAN ITD_GETFILESIZE(in UnicodeString Arg1,out U32 Arg2)
- pushtype Pointer ; StackCount = 1
- setptr Var1, Arg2
- pushtype String ; StackCount = 2
- assign Var2, Arg1
- pushvar RetVal ; StackCount = 3
- call files:itdownload.dll!itd_getfilesize
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[44] = exported BOOLEAN ITD_LOADSTRINGS(in UnicodeString Arg1)
- pushtype String ; StackCount = 1
- assign Var1, Arg1
- pushvar RetVal ; StackCount = 2
- call files:itdownload.dll!itd_loadstrings
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[45] = exported UnicodeString ITD_GETSTRING(in S32 Arg1)
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- assign Var2, Arg1
- pushvar Var1 ; StackCount = 3
- call files:itdownload.dll!itd_getstring
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushvar Var1 ; StackCount = 2
- call files:itdownload.dll!itd_getresultlen
- pop ; StackCount = 1
- pushtype Pointer ; StackCount = 2
- setptr Var2, RetVal
- call SETLENGTH
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, RetVal
- pushvar Var1 ; StackCount = 3
- call LENGTH
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype String ; StackCount = 2
- assign Var2, RetVal
- call files:itdownload.dll!itd_getresultstring
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[46] = external void SETLENGTH()
- Functions[47] = exported void ITD_NOWDODOWNLOAD(in TWIZARDPAGE Arg1)
- pushtype S32 ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- assign Var2, ( U8 0 )
- pushtype TNEWBUTTON ; StackCount = 3
- pushtype TWIZARDFORM ; StackCount = 4
- pushvar Var4 ; StackCount = 5
- call WIZARDFORM
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TWIZARDFORM->BACKBUTTON
- pop ; StackCount = 4
- pop ; StackCount = 3
- call TCONTROL->ENABLED
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- assign Var2, ( U8 0 )
- pushtype TNEWBUTTON ; StackCount = 3
- pushtype TWIZARDFORM ; StackCount = 4
- pushvar Var4 ; StackCount = 5
- call WIZARDFORM
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TWIZARDFORM->NEXTBUTTON
- pop ; StackCount = 4
- pop ; StackCount = 3
- call TCONTROL->ENABLED
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype S32 ; StackCount = 3
- assign Var3, ( S32 200 )
- pushvar Var2 ; StackCount = 4
- call ITD_GETSTRING
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Arg1
- call TWIZARDPAGE->CAPTION
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype S32 ; StackCount = 3
- assign Var3, ( S32 201 )
- pushvar Var2 ; StackCount = 4
- call ITD_GETSTRING
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Arg1
- call TWIZARDPAGE->DESCRIPTION
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype TNEWNOTEBOOKPAGE ; StackCount = 3
- pushtype TWIZARDPAGE ; StackCount = 4
- assign Var4, Arg1
- pushvar Var3 ; StackCount = 5
- call TWIZARDPAGE->SURFACE
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var2 ; StackCount = 4
- call TWINCONTROL->HANDLE
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushvar Var1 ; StackCount = 3
- call files:itdownload.dll!itd_downloadfiles
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype S32 ; StackCount = 2
- assign Var2, Var1
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, ( S32 0 ) == Var2
- jumpfalse Var3, loc_253
- pushtype BOOLEAN ; StackCount = 4
- assign Var4, ( U8 1 )
- pushtype TNEWBUTTON ; StackCount = 5
- pushtype TWIZARDFORM ; StackCount = 6
- pushvar Var6 ; StackCount = 7
- call WIZARDFORM
- pop ; StackCount = 6
- pushvar Var5 ; StackCount = 7
- call TWIZARDFORM->NEXTBUTTON
- pop ; StackCount = 6
- pop ; StackCount = 5
- call TCONTROL->ENABLED
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype TNOTIFYEVENT ; StackCount = 4
- pushtype TNEWBUTTON ; StackCount = 5
- pushtype TWIZARDFORM ; StackCount = 6
- pushvar Var6 ; StackCount = 7
- call WIZARDFORM
- pop ; StackCount = 6
- pushvar Var5 ; StackCount = 7
- call TWIZARDFORM->NEXTBUTTON
- pop ; StackCount = 6
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TBUTTON->ONCLICK
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype TOBJECT ; StackCount = 5
- pushtype TOBJECT ; StackCount = 6
- pushtype Pointer ; StackCount = 7
- setptr Var7, Var6
- call Class->SetNil
- pop ; StackCount = 6
- assign Var5, Var6
- pop ; StackCount = 5
- callvar Var4
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- pushtype ProcPtr ; StackCount = 5
- compare Var4, Global14 != Var5
- pop ; StackCount = 4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_24e
- pushtype TWIZARDPAGE ; StackCount = 4
- assign Var4, Arg1
- callvar Global14
- pop ; StackCount = 3
- loc_24e:
- jump loc_58b
- loc_253:
- compare Var3, ( S32 1 ) == Var2
- jumpfalse Var3, loc_277
- jump loc_58b
- loc_277:
- pushtype UnicodeString ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 502 )
- pushvar Var4 ; StackCount = 6
- call ITD_GETSTRING
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype TNEWBUTTON ; StackCount = 5
- pushtype TWIZARDFORM ; StackCount = 6
- pushvar Var6 ; StackCount = 7
- call WIZARDFORM
- pop ; StackCount = 6
- pushvar Var5 ; StackCount = 7
- call TWIZARDFORM->BACKBUTTON
- pop ; StackCount = 6
- pop ; StackCount = 5
- call TBUTTON->CAPTION
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- assign Var4, ( U8 1 )
- pushtype TNEWBUTTON ; StackCount = 5
- pushtype TWIZARDFORM ; StackCount = 6
- pushvar Var6 ; StackCount = 7
- call WIZARDFORM
- pop ; StackCount = 6
- pushvar Var5 ; StackCount = 7
- call TWIZARDFORM->BACKBUTTON
- pop ; StackCount = 6
- pop ; StackCount = 5
- call TCONTROL->ENABLED
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype TNEWBUTTON ; StackCount = 4
- pushtype TWIZARDFORM ; StackCount = 5
- pushvar Var5 ; StackCount = 6
- call WIZARDFORM
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TWIZARDFORM->BACKBUTTON
- pop ; StackCount = 5
- pop ; StackCount = 4
- call TCONTROL->SHOW
- pop ; StackCount = 3
- assign Global13, ( U8 1 )
- pushtype BOOLEAN ; StackCount = 4
- assign Var4, Global12
- pushtype TNEWBUTTON ; StackCount = 5
- pushtype TWIZARDFORM ; StackCount = 6
- pushvar Var6 ; StackCount = 7
- call WIZARDFORM
- pop ; StackCount = 6
- pushvar Var5 ; StackCount = 7
- call TWIZARDFORM->NEXTBUTTON
- pop ; StackCount = 6
- pop ; StackCount = 5
- call TCONTROL->ENABLED
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- pushtype ProcPtr ; StackCount = 5
- compare Var4, Global15 != Var5
- pop ; StackCount = 4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_3b5
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 3 )
- callvar Global15
- pop ; StackCount = 3
- loc_3b5:
- pushtype BOOLEAN ; StackCount = 4
- assign Var4, Global12
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_4b1
- pushtype UnicodeString ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 104 )
- pushvar Var4 ; StackCount = 6
- call ITD_GETSTRING
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype TWIZARDPAGE ; StackCount = 5
- assign Var5, Arg1
- call TWIZARDPAGE->CAPTION
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 250 )
- pushvar Var4 ; StackCount = 6
- call ITD_GETSTRING
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype TWIZARDPAGE ; StackCount = 5
- assign Var5, Arg1
- call TWIZARDPAGE->DESCRIPTION
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype S32 ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 6
- assign Var6, ( U8 2 )
- pushtype UnicodeString ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 250 )
- pushvar Var7 ; StackCount = 9
- call ITD_GETSTRING
- pop ; StackCount = 8
- pop ; StackCount = 7
- pushvar Var4 ; StackCount = 8
- call MSGBOX
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- jump loc_58b
- loc_4b1:
- pushtype UnicodeString ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 104 )
- pushvar Var4 ; StackCount = 6
- call ITD_GETSTRING
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype TWIZARDPAGE ; StackCount = 5
- assign Var5, Arg1
- call TWIZARDPAGE->CAPTION
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 251 )
- pushvar Var4 ; StackCount = 6
- call ITD_GETSTRING
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype TWIZARDPAGE ; StackCount = 5
- assign Var5, Arg1
- call TWIZARDPAGE->DESCRIPTION
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype S32 ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 6
- assign Var6, ( U8 2 )
- pushtype UnicodeString ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 251 )
- pushvar Var7 ; StackCount = 9
- call ITD_GETSTRING
- pop ; StackCount = 8
- pop ; StackCount = 7
- pushvar Var4 ; StackCount = 8
- call MSGBOX
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- loc_58b:
- pop ; StackCount = 2
- pop ; StackCount = 1
- ret
- Functions[48] = external returnsval WIZARDFORM()
- Functions[49] = external pascal void TWIZARDFORM->BACKBUTTON(out Arg1)
- Functions[50] = external pascal void TCONTROL->ENABLED(out Arg1)
- Functions[51] = external pascal void TWIZARDFORM->NEXTBUTTON(out Arg1)
- Functions[52] = external pascal void TWIZARDPAGE->CAPTION(out Arg1)
- Functions[53] = external pascal void TWIZARDPAGE->DESCRIPTION(out Arg1)
- Functions[54] = external pascal void TWIZARDPAGE->SURFACE(out Arg1)
- Functions[55] = external pascal void TWINCONTROL->HANDLE(out Arg1)
- Functions[56] = external pascal void TBUTTON->ONCLICK(out Arg1)
- Functions[57] = external pascal returnsval Class->SetNil(out Arg1)
- Functions[58] = external pascal void TBUTTON->CAPTION(out Arg1)
- Functions[59] = external register void TCONTROL->SHOW()
- Functions[60] = external returnsval MSGBOX(out Arg1,out Arg2)
- Functions[61] = exported void ITD_HANDLESHOWPAGE(in TWIZARDPAGE Arg1)
- pushtype BOOLEAN ; StackCount = 1
- assign Var1, ( U8 0 )
- pushtype TNEWBUTTON ; StackCount = 2
- pushtype TWIZARDFORM ; StackCount = 3
- pushvar Var3 ; StackCount = 4
- call WIZARDFORM
- pop ; StackCount = 3
- pushvar Var2 ; StackCount = 4
- call TWIZARDFORM->NEXTBUTTON
- pop ; StackCount = 3
- pop ; StackCount = 2
- call TCONTROL->ENABLED
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype TNEWBUTTON ; StackCount = 1
- pushtype TWIZARDFORM ; StackCount = 2
- pushvar Var2 ; StackCount = 3
- call WIZARDFORM
- pop ; StackCount = 2
- pushvar Var1 ; StackCount = 3
- call TWIZARDFORM->BACKBUTTON
- pop ; StackCount = 2
- pop ; StackCount = 1
- call TCONTROL->HIDE
- pop ; StackCount = 0
- pushtype BOOLEAN ; StackCount = 1
- pushtype ProcPtr ; StackCount = 2
- compare Var1, Global15 != Var2
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_a8
- pushtype S32 ; StackCount = 1
- assign Var1, ( S32 1 )
- callvar Global15
- pop ; StackCount = 0
- loc_a8:
- pushtype TWIZARDPAGE ; StackCount = 1
- assign Var1, Arg1
- call ITD_NOWDODOWNLOAD
- pop ; StackCount = 0
- ret
- Functions[62] = external register void TCONTROL->HIDE()
- Functions[63] = exported BOOLEAN ITD_HANDLEBACKCLICK(in TWIZARDPAGE Arg1)
- assign RetVal, ( U8 0 )
- pushtype BOOLEAN ; StackCount = 1
- assign Var1, Global13
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_74
- assign Global13, ( U8 0 )
- pushtype TNEWBUTTON ; StackCount = 1
- pushtype TWIZARDFORM ; StackCount = 2
- pushvar Var2 ; StackCount = 3
- call WIZARDFORM
- pop ; StackCount = 2
- pushvar Var1 ; StackCount = 3
- call TWIZARDFORM->BACKBUTTON
- pop ; StackCount = 2
- pop ; StackCount = 1
- call TCONTROL->HIDE
- pop ; StackCount = 0
- pushtype TWIZARDPAGE ; StackCount = 1
- assign Var1, Arg1
- call ITD_NOWDODOWNLOAD
- pop ; StackCount = 0
- loc_74:
- ret
- Functions[64] = exported BOOLEAN ITD_HANDLENEXTCLICK(in TWIZARDPAGE Arg1)
- pushtype BOOLEAN ; StackCount = 1
- pushtype ProcPtr ; StackCount = 2
- compare Var1, Global15 != Var2
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_44
- pushtype S32 ; StackCount = 1
- assign Var1, ( S32 2 )
- callvar Global15
- pop ; StackCount = 0
- loc_44:
- assign RetVal, ( U8 1 )
- ret
- Functions[65] = exported void ITD_INIT()
- ret
- Functions[66] = exported BOOLEAN ITD_POSTPAGE(in UnicodeString Arg1,in UnicodeString Arg2,out UnicodeString Arg3)
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Arg2
- pushvar Var1 ; StackCount = 3
- call LENGTH
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype String ; StackCount = 2
- assign Var2, Arg2
- pushtype String ; StackCount = 3
- assign Var3, Arg1
- pushvar RetVal ; StackCount = 4
- call files:itdownload.dll!itd_postpage
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype BOOLEAN ; StackCount = 1
- assign Var1, RetVal
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_cf
- pushtype S32 ; StackCount = 1
- pushvar Var1 ; StackCount = 2
- call files:itdownload.dll!itd_getresultlen
- pop ; StackCount = 1
- pushtype Pointer ; StackCount = 2
- setptr Var2, Arg3
- call SETLENGTH
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Arg3
- pushvar Var1 ; StackCount = 3
- call LENGTH
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype String ; StackCount = 2
- assign Var2, Arg3
- call files:itdownload.dll!itd_getresultstring
- pop ; StackCount = 1
- pop ; StackCount = 0
- loc_cf:
- ret
- Functions[67] = exported TWIZARDPAGE ITD_DOWNLOADAFTER(in S32 Arg1)
- pushtype TWIZARDPAGE ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype S32 ; StackCount = 3
- assign Var3, ( S32 201 )
- pushvar Var2 ; StackCount = 4
- call ITD_GETSTRING
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 200 )
- pushvar Var3 ; StackCount = 5
- call ITD_GETSTRING
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign Var4, Arg1
- pushvar Var1 ; StackCount = 5
- call CREATECUSTOMPAGE
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype TWIZARDPAGENOTIFYEVENT ; StackCount = 2
- assign Var2, ( ProcPtr ITD_HANDLESHOWPAGE )
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Var1
- call TWIZARDPAGE->ONACTIVATE
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype TWIZARDPAGESHOULDSKIPEVENT ; StackCount = 2
- assign Var2, ( ProcPtr ITD_HANDLESKIPPAGE )
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Var1
- call TWIZARDPAGE->ONSHOULDSKIPPAGE
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype TWIZARDPAGEBUTTONEVENT ; StackCount = 2
- assign Var2, ( ProcPtr ITD_HANDLEBACKCLICK )
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Var1
- call TWIZARDPAGE->ONBACKBUTTONCLICK
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype TWIZARDPAGEBUTTONEVENT ; StackCount = 2
- assign Var2, ( ProcPtr ITD_HANDLENEXTCLICK )
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Var1
- call TWIZARDPAGE->ONNEXTBUTTONCLICK
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype U32 ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype TNEWNOTEBOOKPAGE ; StackCount = 4
- pushtype TWIZARDPAGE ; StackCount = 5
- assign Var5, Var1
- pushvar Var4 ; StackCount = 6
- call TWIZARDPAGE->SURFACE
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TWINCONTROL->HANDLE
- pop ; StackCount = 4
- pop ; StackCount = 3
- assign Var2, Var3
- pop ; StackCount = 2
- call files:itdownload.dll!itd_initui
- pop ; StackCount = 1
- assign RetVal, Var1
- ret
- Functions[68] = external returnsval CREATECUSTOMPAGE(out Arg1,out Arg2)
- Functions[69] = external pascal void TWIZARDPAGE->ONACTIVATE(out Arg1)
- Functions[70] = external pascal void TWIZARDPAGE->ONSHOULDSKIPPAGE(out Arg1)
- Functions[71] = external pascal void TWIZARDPAGE->ONBACKBUTTONCLICK(out Arg1)
- Functions[72] = external pascal void TWIZARDPAGE->ONNEXTBUTTONCLICK(out Arg1)
- Functions[73] = exported void ITD_SETOPTION(in UnicodeString Arg1,in UnicodeString Arg2)
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "UI_Caption" )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Arg1
- pushvar Var2 ; StackCount = 5
- call COMPARETEXT
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- compare Var1, Var2 == ( S32 0 )
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_99
- pushtype UnicodeString ; StackCount = 1
- assign Var1, Arg2
- pushtype S32 ; StackCount = 2
- assign Var2, ( S32 200 )
- call ITD_SETSTRING
- pop ; StackCount = 1
- pop ; StackCount = 0
- jump loc_327
- loc_99:
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "UI_Description" )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Arg1
- pushvar Var2 ; StackCount = 5
- call COMPARETEXT
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- compare Var1, Var2 == ( S32 0 )
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_136
- pushtype UnicodeString ; StackCount = 1
- assign Var1, Arg2
- pushtype S32 ; StackCount = 2
- assign Var2, ( S32 201 )
- call ITD_SETSTRING
- pop ; StackCount = 1
- pop ; StackCount = 0
- jump loc_327
- loc_136:
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "UI_FailMessage" )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Arg1
- pushvar Var2 ; StackCount = 5
- call COMPARETEXT
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- compare Var1, Var2 == ( S32 0 )
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_1d3
- pushtype UnicodeString ; StackCount = 1
- assign Var1, Arg2
- pushtype S32 ; StackCount = 2
- assign Var2, ( S32 251 )
- call ITD_SETSTRING
- pop ; StackCount = 1
- pop ; StackCount = 0
- jump loc_327
- loc_1d3:
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "UI_FailOrContinueMessage" )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Arg1
- pushvar Var2 ; StackCount = 5
- call COMPARETEXT
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- compare Var1, Var2 == ( S32 0 )
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_27a
- pushtype UnicodeString ; StackCount = 1
- assign Var1, Arg2
- pushtype S32 ; StackCount = 2
- assign Var2, ( S32 250 )
- call ITD_SETSTRING
- pop ; StackCount = 1
- pop ; StackCount = 0
- jump loc_327
- loc_27a:
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "UI_AllowContinue" )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Arg1
- pushvar Var2 ; StackCount = 5
- call COMPARETEXT
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- compare Var1, Var2 == ( S32 0 )
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_300
- compare Global12, Arg2 == ( Char '1' )
- jump loc_327
- loc_300:
- pushtype String ; StackCount = 1
- assign Var1, Arg2
- pushtype String ; StackCount = 2
- assign Var2, Arg1
- call files:itdownload.dll!itd_setoption
- pop ; StackCount = 1
- pop ; StackCount = 0
- loc_327:
- ret
- Functions[74] = external returnsval COMPARETEXT(out Arg1)
- Functions[75] = exported UnicodeString ITD_GETOPTION(in UnicodeString Arg1)
- pushtype S32 ; StackCount = 1
- assign Var1, ( S32 500 )
- pushtype Pointer ; StackCount = 2
- setptr Var2, RetVal
- call SETLENGTH
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, RetVal
- pushvar Var2 ; StackCount = 4
- call LENGTH
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype String ; StackCount = 3
- assign Var3, RetVal
- pushtype String ; StackCount = 4
- assign Var4, Arg1
- pushvar Var1 ; StackCount = 5
- call files:itdownload.dll!itd_getoption
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype Pointer ; StackCount = 2
- setptr Var2, RetVal
- call SETLENGTH
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[76] = external stdcall void files:isxdl.dll!isxdl_AddFile(out Arg1)
- Functions[77] = external stdcall returnsval files:isxdl.dll!isxdl_DownloadFiles(out Arg1)
- Functions[78] = external stdcall returnsval files:isxdl.dll!isxdl_SetOption(out Arg1)
- Functions[79] = exported void ADDPRODUCT(in UnicodeString Arg1,in UnicodeString Arg2,in UnicodeString Arg3,in UnicodeString Arg4,in UnicodeString Arg5,in BOOLEAN Arg6,in BOOLEAN Arg7)
- pushtype UnicodeString ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, Global16
- calculate Var3 + ( String "%1" )
- calculate Var3 + Arg3
- calculate Var3 + ( Char '
- ' )
- assign Global16, Var3
- pop ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "{src}{\}" )
- pushvar Var4 ; StackCount = 6
- call EXPANDCONSTANT
- pop ; StackCount = 5
- pop ; StackCount = 4
- assign Var3, Var4
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "DependenciesDir" )
- pushvar Var4 ; StackCount = 6
- call CUSTOMMESSAGE
- pop ; StackCount = 5
- pop ; StackCount = 4
- calculate Var3 + Var4
- pop ; StackCount = 3
- calculate Var3 + ( Char '\' )
- calculate Var3 + Arg1
- assign Var1, Var3
- pop ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Var1
- pushvar Var3 ; StackCount = 5
- call FILEEXISTS
- pop ; StackCount = 4
- pop ; StackCount = 3
- logicalnot Var3
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_25e
- pushtype UnicodeString ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "{tmp}{\}" )
- pushvar Var4 ; StackCount = 6
- call EXPANDCONSTANT
- pop ; StackCount = 5
- pop ; StackCount = 4
- assign Var3, Var4
- pop ; StackCount = 3
- calculate Var3 + Arg1
- assign Var1, Var3
- pop ; StackCount = 2
- pushtype String ; StackCount = 3
- assign Var3, Var1
- pushtype String ; StackCount = 4
- assign Var4, Arg5
- call files:isxdl.dll!isxdl_AddFile
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, Global17
- calculate Var3 + ( String "%1" )
- calculate Var3 + Arg3
- calculate Var3 + ( Char '
- ' )
- assign Global17, Var3
- pop ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, Global18
- calculate Var3 + ( Char ' ' )
- calculate Var3 + Arg3
- calculate Var3 + ( String " (" )
- calculate Var3 + Arg4
- calculate Var3 + ( Char ')' )
- calculate Var3 + ( Char '
- ' )
- assign Global18, Var3
- pop ; StackCount = 2
- loc_25e:
- pushtype Record <UnicodeString,UnicodeString,UnicodeString,U8,U8>[] ; StackCount = 3
- assign Var3, Global19
- pushvar Var2 ; StackCount = 4
- call GETARRAYLENGTH
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype S32 ; StackCount = 3
- assign Var3, Var2
- calculate Var3 + ( S32 1 )
- pushtype Pointer ; StackCount = 4
- setptr Var4, Global19
- call SETARRAYLENGTH
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Global19
- pushtype U32 ; StackCount = 4
- assign Var4, Var2
- setptr Var3, Var3[Var4]
- pop ; StackCount = 3
- setptr Var3, Var3[0]
- assign Var3, Var1
- pop ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Global19
- pushtype U32 ; StackCount = 4
- assign Var4, Var2
- setptr Var3, Var3[Var4]
- pop ; StackCount = 3
- setptr Var3, Var3[1]
- assign Var3, Arg3
- pop ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Global19
- pushtype U32 ; StackCount = 4
- assign Var4, Var2
- setptr Var3, Var3[Var4]
- pop ; StackCount = 3
- setptr Var3, Var3[2]
- assign Var3, Arg2
- pop ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Global19
- pushtype U32 ; StackCount = 4
- assign Var4, Var2
- setptr Var3, Var3[Var4]
- pop ; StackCount = 3
- setptr Var3, Var3[3]
- assign Var3, Arg6
- pop ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Global19
- pushtype U32 ; StackCount = 4
- assign Var4, Var2
- setptr Var3, Var3[Var4]
- pop ; StackCount = 3
- setptr Var3, Var3[4]
- assign Var3, Arg7
- pop ; StackCount = 2
- ret
- Functions[80] = external returnsval CUSTOMMESSAGE(out Arg1)
- Functions[81] = external returnsval GETARRAYLENGTH()
- Functions[82] = external void SETARRAYLENGTH()
- Functions[83] = exported BOOLEAN SMARTEXEC(in Record <UnicodeString,UnicodeString,UnicodeString,U8,U8> Arg1,out S32 Arg2)
- pushtype BOOLEAN ; StackCount = 1
- pushtype String ; StackCount = 2
- pushtype String ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 3 )
- pushtype S32 ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, Arg1[0]
- pushvar Var6 ; StackCount = 8
- call LENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- calculate Var6 - ( S32 2 )
- pushtype UnicodeString ; StackCount = 7
- assign Var7, Arg1[0]
- pushvar Var4 ; StackCount = 8
- call COPY
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- assign Var3, Var4
- pop ; StackCount = 3
- pushvar Var2 ; StackCount = 4
- call LOWERCASE
- pop ; StackCount = 3
- pop ; StackCount = 2
- compare Var1, Var2 == ( String "exe" )
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_148
- pushtype Pointer ; StackCount = 1
- setptr Var1, Arg2
- pushtype TEXECWAIT ; StackCount = 2
- assign Var2, ( U8 1 )
- pushtype S32 ; StackCount = 3
- assign Var3, ( S32 1 )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Arg1[2]
- pushtype UnicodeString ; StackCount = 6
- assign Var6, Arg1[0]
- pushvar RetVal ; StackCount = 7
- call EXEC
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- jump loc_1e0
- loc_148:
- pushtype Pointer ; StackCount = 1
- setptr Var1, Arg2
- pushtype TEXECWAIT ; StackCount = 2
- assign Var2, ( U8 1 )
- pushtype S32 ; StackCount = 3
- assign Var3, ( S32 1 )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Arg1[2]
- pushtype UnicodeString ; StackCount = 6
- assign Var6, Arg1[0]
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "" )
- pushvar RetVal ; StackCount = 8
- call SHELLEXEC
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- loc_1e0:
- ret
- Functions[84] = external returnsval LOWERCASE(out Arg1)
- Functions[85] = external returnsval COPY(out Arg1,out Arg2)
- Functions[86] = external returnsval EXEC(out Arg1,out Arg2,out Arg3)
- Functions[87] = external returnsval SHELLEXEC(out Arg1,out Arg2,out Arg3,in Arg4)
- Functions[88] = exported BOOLEAN PENDINGREBOOT()
- pushtype UnicodeString ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Var1
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "PendingFileRenameOperations" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "SYSTEM\CurrentControlSet\Control\Session Manager" )
- pushtype S32 ; StackCount = 6
- assign Var6, ( S32 -2147483646 )
- pushvar Var2 ; StackCount = 7
- call REGQUERYMULTISTRINGVALUE
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_cf
- assign RetVal, ( U8 1 )
- jump loc_1c7
- loc_cf:
- pushtype BOOLEAN ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Var1
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "SetupExecute" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "SYSTEM\CurrentControlSet\Control\Session Manager" )
- pushtype S32 ; StackCount = 6
- assign Var6, ( S32 -2147483646 )
- pushvar Var2 ; StackCount = 7
- call REGQUERYMULTISTRINGVALUE
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- jumpfalse Var2, loc_19d
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Var1 != ( String "" )
- calculate Var2 & Var3
- pop ; StackCount = 2
- loc_19d:
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_1bb
- assign RetVal, ( U8 1 )
- jump loc_1c7
- loc_1bb:
- assign RetVal, ( U8 0 )
- loc_1c7:
- ret
- Functions[89] = external returnsval REGQUERYMULTISTRINGVALUE(out Arg1,out Arg2)
- Functions[90] = exported U8 INSTALLPRODUCTS()
- pushtype S32 ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign RetVal, ( U8 0 )
- pushtype Record <UnicodeString,UnicodeString,UnicodeString,U8,U8>[] ; StackCount = 5
- assign Var5, Global19
- pushvar Var3 ; StackCount = 6
- call GETARRAYLENGTH
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- compare Var5, Var3 > ( S32 0 )
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_60c
- pushtype UnicodeString ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "depinstall_description" )
- pushvar Var5 ; StackCount = 7
- call CUSTOMMESSAGE
- pop ; StackCount = 6
- pop ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "depinstall_title" )
- pushvar Var6 ; StackCount = 8
- call CUSTOMMESSAGE
- pop ; StackCount = 7
- pop ; StackCount = 6
- pushvar Global22 ; StackCount = 7
- call CREATEOUTPUTPROGRESSPAGE
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype TOUTPUTPROGRESSWIZARDPAGE ; StackCount = 5
- assign Var5, Global22
- call TOUTPUTPROGRESSWIZARDPAGE->SHOW
- pop ; StackCount = 4
- assign Var2, ( S32 0 )
- pushtype BOOLEAN ; StackCount = 5
- loc_10e:
- pushtype S32 ; StackCount = 6
- assign Var6, Var3
- calculate Var6 - ( S32 1 )
- compare Var5, Var2 <= Var6
- pop ; StackCount = 5
- jumpfalse Var5, loc_4fd
- pushtype BOOLEAN ; StackCount = 6
- pushtype Pointer ; StackCount = 7
- setptr Var7, Global19
- pushtype U32 ; StackCount = 8
- assign Var8, Var2
- setptr Var7, Var7[Var8]
- pop ; StackCount = 7
- setptr Var7, Var7[3]
- assign Var6, Var7
- pop ; StackCount = 6
- jumpfalse Var6, loc_1e9
- pushtype BOOLEAN ; StackCount = 7
- assign Var7, Global20
- jumptrue Var7, loc_1dc
- pushtype BOOLEAN ; StackCount = 8
- pushvar Var8 ; StackCount = 9
- call PENDINGREBOOT
- pop ; StackCount = 8
- calculate Var7 | Var8
- pop ; StackCount = 7
- loc_1dc:
- calculate Var6 & Var7
- pop ; StackCount = 6
- loc_1e9:
- setflag not Var6
- pop ; StackCount = 5
- jumpflag loc_207
- assign RetVal, ( U8 1 )
- jump loc_4fd
- loc_207:
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "" )
- pushtype UnicodeString ; StackCount = 7
- pushtype !OPENARRAYOFUNICODESTRING ; StackCount = 8
- pushtype !OPENARRAYOFUNICODESTRING ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, ( S32 1 )
- pushvar Var9 ; StackCount = 11
- call SETARRAYLENGTH
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype Pointer ; StackCount = 10
- setptr Var10, Global19
- pushtype U32 ; StackCount = 11
- assign Var11, Var2
- setptr Var10, Var10[Var11]
- pop ; StackCount = 10
- setptr Var10, Var10[1]
- assign Var9[0], Var10
- pop ; StackCount = 9
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- pushtype UnicodeString ; StackCount = 10
- assign Var10, ( String "depinstall_status" )
- pushvar Var9 ; StackCount = 11
- call CUSTOMMESSAGE
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushvar Var7 ; StackCount = 10
- call FMTMESSAGE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pushtype TOUTPUTPROGRESSWIZARDPAGE ; StackCount = 8
- assign Var8, Global22
- call TOUTPUTPROGRESSWIZARDPAGE->SETTEXT
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pushtype S32 ; StackCount = 6
- assign Var6, Var3
- pushtype S32 ; StackCount = 7
- assign Var7, Var2
- pushtype TOUTPUTPROGRESSWIZARDPAGE ; StackCount = 8
- assign Var8, Global22
- call TOUTPUTPROGRESSWIZARDPAGE->SETPROGRESS
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pushtype BOOLEAN ; StackCount = 6
- pushtype Pointer ; StackCount = 7
- setptr Var7, Var1
- pushtype Record <UnicodeString,UnicodeString,UnicodeString,U8,U8> ; StackCount = 8
- assign Var8, Global19[Var2]
- pushvar Var6 ; StackCount = 9
- call SMARTEXEC
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- setflag not Var6
- pop ; StackCount = 5
- jumpflag loc_4e1
- pushtype BOOLEAN ; StackCount = 6
- pushtype Pointer ; StackCount = 7
- setptr Var7, Global19
- pushtype U32 ; StackCount = 8
- assign Var8, Var2
- setptr Var7, Var7[Var8]
- pop ; StackCount = 7
- setptr Var7, Var7[4]
- assign Var6, Var7
- pop ; StackCount = 6
- setflag not Var6
- pop ; StackCount = 5
- jumpflag loc_447
- pushtype BOOLEAN ; StackCount = 6
- pushtype S32 ; StackCount = 7
- assign Var7, Var3
- calculate Var7 - ( S32 1 )
- compare Var6, Var2 == Var7
- pop ; StackCount = 6
- setflag not Var6
- pop ; StackCount = 5
- jumpflag loc_431
- assign Global20, ( U8 1 )
- jump loc_43d
- loc_431:
- assign RetVal, ( U8 1 )
- loc_43d:
- jump loc_4fd
- jump loc_4dc
- loc_447:
- pushtype BOOLEAN ; StackCount = 6
- compare Var6, Var1 == ( S32 0 )
- setflag not Var6
- pop ; StackCount = 5
- jumpflag loc_483
- calculate Var4 + ( S32 1 )
- jump loc_4dc
- loc_483:
- pushtype BOOLEAN ; StackCount = 6
- compare Var6, Var1 == ( S32 3010 )
- setflag not Var6
- pop ; StackCount = 5
- jumpflag loc_4cb
- assign Global20, ( U8 1 )
- calculate Var4 + ( S32 1 )
- jump loc_4dc
- loc_4cb:
- assign RetVal, ( U8 2 )
- jump loc_4fd
- loc_4dc:
- jump loc_4f2
- loc_4e1:
- assign RetVal, ( U8 2 )
- jump loc_4fd
- loc_4f2:
- inc Var2
- jump loc_10e
- loc_4fd:
- pop ; StackCount = 4
- assign Var2, ( S32 0 )
- pushtype BOOLEAN ; StackCount = 5
- loc_512:
- pushtype S32 ; StackCount = 6
- assign Var6, Var3
- calculate Var6 - Var4
- calculate Var6 - ( S32 1 )
- compare Var5, Var2 <= Var6
- pop ; StackCount = 5
- jumpfalse Var5, loc_5c2
- pushtype Pointer ; StackCount = 6
- setptr Var6, Global19
- pushtype U32 ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, Var2
- calculate Var8 + Var4
- assign Var7, Var8
- pop ; StackCount = 7
- setptr Var6, Var6[Var7]
- pop ; StackCount = 6
- assign Global19[Var2], Var6
- pop ; StackCount = 5
- inc Var2
- jump loc_512
- loc_5c2:
- pop ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, Var3
- calculate Var5 - Var4
- pushtype Pointer ; StackCount = 6
- setptr Var6, Global19
- call SETARRAYLENGTH
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype TOUTPUTPROGRESSWIZARDPAGE ; StackCount = 5
- assign Var5, Global22
- call TOUTPUTPROGRESSWIZARDPAGE->HIDE
- pop ; StackCount = 4
- loc_60c:
- ret
- Functions[91] = external returnsval CREATEOUTPUTPROGRESSPAGE(out Arg1)
- Functions[92] = external register void TOUTPUTPROGRESSWIZARDPAGE->SHOW()
- Functions[93] = external register void TOUTPUTPROGRESSWIZARDPAGE->SETTEXT(out Arg1)
- Functions[94] = external returnsval FMTMESSAGE(out Arg1)
- Functions[95] = external register void TOUTPUTPROGRESSWIZARDPAGE->SETPROGRESS(out Arg1)
- Functions[96] = external register void TOUTPUTPROGRESSWIZARDPAGE->HIDE()
- Functions[97] = exported UnicodeString PREPARETOINSTALL(out BOOLEAN Arg1)
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Global20, ( U8 0 )
- pushtype U8 ; StackCount = 3
- pushvar Var3 ; StackCount = 4
- call INSTALLPRODUCTS
- pop ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, ( U8 2 ) == Var3
- jumpfalse Var4, loc_179
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "depinstall_error" )
- pushvar Var2 ; StackCount = 6
- call CUSTOMMESSAGE
- pop ; StackCount = 5
- pop ; StackCount = 4
- assign Var1, ( S32 0 )
- pushtype BOOLEAN ; StackCount = 5
- loc_8d:
- pushtype S32 ; StackCount = 6
- pushtype Record <UnicodeString,UnicodeString,UnicodeString,U8,U8>[] ; StackCount = 7
- assign Var7, Global19
- pushvar Var6 ; StackCount = 8
- call GETARRAYLENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- calculate Var6 - ( S32 1 )
- compare Var5, Var1 <= Var6
- pop ; StackCount = 5
- jumpfalse Var5, loc_168
- pushtype UnicodeString ; StackCount = 6
- assign Var6, Var2
- calculate Var6 + ( Char '
- ' )
- calculate Var6 + ( Char ' ' )
- pushtype Pointer ; StackCount = 7
- setptr Var7, Global19
- pushtype U32 ; StackCount = 8
- assign Var8, Var1
- setptr Var7, Var7[Var8]
- pop ; StackCount = 7
- setptr Var7, Var7[1]
- calculate Var6 + Var7
- pop ; StackCount = 6
- assign Var2, Var6
- pop ; StackCount = 5
- inc Var1
- jump loc_8d
- loc_168:
- pop ; StackCount = 4
- assign RetVal, Var2
- jump loc_2a1
- loc_179:
- compare Var4, ( U8 1 ) == Var3
- jumpfalse Var4, loc_2a1
- pushtype Pointer ; StackCount = 5
- setptr Var5, Global19
- setptr Var5, Var5[0]
- setptr Var5, Var5[1]
- assign RetVal, Var5
- pop ; StackCount = 4
- assign Arg1, ( U8 1 )
- pushtype BOOLEAN ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "{srcexe}" )
- pushvar Var6 ; StackCount = 8
- call EXPANDCONSTANT
- pop ; StackCount = 7
- pop ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "InstallBootstrap" )
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" )
- pushtype S32 ; StackCount = 9
- assign Var9, ( S32 -2147483647 )
- pushvar Var5 ; StackCount = 10
- call REGWRITESTRINGVALUE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- jump loc_2a1
- loc_2a1:
- pop ; StackCount = 3
- pop ; StackCount = 2
- ret
- Functions[98] = external returnsval REGWRITESTRINGVALUE(out Arg1,out Arg2)
- Functions[99] = exported BOOLEAN NEEDRESTART()
- pushtype BOOLEAN ; StackCount = 1
- assign Var1, Global20
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_29
- assign RetVal, ( U8 1 )
- loc_29:
- ret
- Functions[100] = exported UnicodeString UPDATEREADYMEMO(in UnicodeString Arg1,in UnicodeString Arg2,in UnicodeString Arg3,in UnicodeString Arg4,in UnicodeString Arg5,in UnicodeString Arg6,in UnicodeString Arg7,in UnicodeString Arg8)
- pushtype UnicodeString ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Global17 != ( String "" )
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_12c
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- pushtype UnicodeString ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "depdownload_memo_title" )
- pushvar Var3 ; StackCount = 5
- call CUSTOMMESSAGE
- pop ; StackCount = 4
- pop ; StackCount = 3
- calculate Var2 + Var3
- pop ; StackCount = 2
- calculate Var2 + ( Char ':' )
- calculate Var2 + Arg2
- pushtype UnicodeString ; StackCount = 3
- pushtype !OPENARRAYOFUNICODESTRING ; StackCount = 4
- pushtype !OPENARRAYOFUNICODESTRING ; StackCount = 5
- pushtype S32 ; StackCount = 6
- assign Var6, ( S32 1 )
- pushvar Var5 ; StackCount = 7
- call SETARRAYLENGTH
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Var5[0], Arg1
- assign Var4, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Global17
- pushvar Var3 ; StackCount = 6
- call FMTMESSAGE
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- calculate Var2 + Var3
- pop ; StackCount = 2
- calculate Var2 + Arg2
- assign Var1, Var2
- pop ; StackCount = 1
- loc_12c:
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Global16 != ( String "" )
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_252
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- pushtype UnicodeString ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "depinstall_memo_title" )
- pushvar Var3 ; StackCount = 5
- call CUSTOMMESSAGE
- pop ; StackCount = 4
- pop ; StackCount = 3
- calculate Var2 + Var3
- pop ; StackCount = 2
- calculate Var2 + ( Char ':' )
- calculate Var2 + Arg2
- pushtype UnicodeString ; StackCount = 3
- pushtype !OPENARRAYOFUNICODESTRING ; StackCount = 4
- pushtype !OPENARRAYOFUNICODESTRING ; StackCount = 5
- pushtype S32 ; StackCount = 6
- assign Var6, ( S32 1 )
- pushvar Var5 ; StackCount = 7
- call SETARRAYLENGTH
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Var5[0], Arg1
- assign Var4, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Global16
- pushvar Var3 ; StackCount = 6
- call FMTMESSAGE
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- calculate Var2 + Var3
- pop ; StackCount = 2
- calculate Var2 + Arg2
- assign Var1, Var2
- pop ; StackCount = 1
- loc_252:
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- calculate Var2 + Arg4
- calculate Var2 + Arg2
- calculate Var2 + Arg2
- calculate Var2 + Arg7
- assign Var1, Var2
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Arg8 != ( String "" )
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_305
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- calculate Var2 + Arg2
- calculate Var2 + Arg2
- calculate Var2 + Arg8
- assign Var1, Var2
- pop ; StackCount = 1
- loc_305:
- assign RetVal, Var1
- ret
- Functions[101] = exported BOOLEAN NEXTBUTTONCLICK(in S32 Arg1)
- assign RetVal, ( U8 1 )
- pushtype BOOLEAN ; StackCount = 1
- compare Var1, Arg1 == ( S32 10 )
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_32f
- pushtype BOOLEAN ; StackCount = 1
- compare Var1, Global17 != ( String "" )
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_32f
- pushtype BOOLEAN ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushvar Var2 ; StackCount = 3
- call ACTIVELANGUAGE
- pop ; StackCount = 2
- compare Var1, Var2 != ( String "en" )
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_190
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "isxdl_langfile" )
- pushvar Var1 ; StackCount = 3
- call CUSTOMMESSAGE
- pop ; StackCount = 2
- pop ; StackCount = 1
- call EXTRACTTEMPORARYFILE
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype String ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "{tmp}{\}" )
- pushvar Var4 ; StackCount = 6
- call EXPANDCONSTANT
- pop ; StackCount = 5
- pop ; StackCount = 4
- assign Var3, Var4
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "isxdl_langfile" )
- pushvar Var4 ; StackCount = 6
- call CUSTOMMESSAGE
- pop ; StackCount = 5
- pop ; StackCount = 4
- calculate Var3 + Var4
- pop ; StackCount = 3
- assign Var2, Var3
- pop ; StackCount = 2
- pushtype String ; StackCount = 3
- assign Var3, ( String "language" )
- pushvar Var1 ; StackCount = 4
- call files:isxdl.dll!isxdl_SetOption
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- loc_190:
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype S32 ; StackCount = 3
- assign Var3, ( S32 6 )
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 4 )
- pushtype TMSGBOXTYPE ; StackCount = 5
- assign Var5, ( U8 1 )
- pushtype UnicodeString ; StackCount = 6
- pushtype !OPENARRAYOFUNICODESTRING ; StackCount = 7
- pushtype !OPENARRAYOFUNICODESTRING ; StackCount = 8
- pushtype S32 ; StackCount = 9
- assign Var9, ( S32 1 )
- pushvar Var8 ; StackCount = 10
- call SETARRAYLENGTH
- pop ; StackCount = 9
- pop ; StackCount = 8
- assign Var8[0], Global18
- assign Var7, Var8
- pop ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "depdownload_msg" )
- pushvar Var8 ; StackCount = 10
- call CUSTOMMESSAGE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushvar Var6 ; StackCount = 9
- call FMTMESSAGE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pushvar Var2 ; StackCount = 7
- call SUPPRESSIBLEMSGBOX
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- compare Var1, Var2 == ( S32 7 )
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_2a5
- assign RetVal, ( U8 0 )
- jump loc_32f
- loc_2a5:
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "{wizardhwnd}" )
- pushvar Var4 ; StackCount = 6
- call EXPANDCONSTANT
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call STRTOINT
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var2 ; StackCount = 4
- call files:isxdl.dll!isxdl_DownloadFiles
- pop ; StackCount = 3
- pop ; StackCount = 2
- compare Var1, Var2 == ( S32 0 )
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_32f
- assign RetVal, ( U8 0 )
- loc_32f:
- ret
- Functions[102] = external returnsval ACTIVELANGUAGE()
- Functions[103] = external void EXTRACTTEMPORARYFILE(out Arg1)
- Functions[104] = external returnsval SUPPRESSIBLEMSGBOX(out Arg1,out Arg2)
- Functions[105] = external returnsval STRTOINT(out Arg1)
- Functions[106] = exported BOOLEAN ISX86()
- assign RetVal, Global21
- jumptrue RetVal, loc_4b
- pushtype BOOLEAN ; StackCount = 1
- pushtype TSETUPPROCESSORARCHITECTURE ; StackCount = 2
- pushvar Var2 ; StackCount = 3
- call PROCESSORARCHITECTURE
- pop ; StackCount = 2
- compare Var1, Var2 == ( U8 1 )
- pop ; StackCount = 1
- calculate RetVal | Var1
- pop ; StackCount = 0
- loc_4b:
- jumptrue RetVal, loc_8b
- pushtype BOOLEAN ; StackCount = 1
- pushtype TSETUPPROCESSORARCHITECTURE ; StackCount = 2
- pushvar Var2 ; StackCount = 3
- call PROCESSORARCHITECTURE
- pop ; StackCount = 2
- compare Var1, Var2 == ( U8 0 )
- pop ; StackCount = 1
- calculate RetVal | Var1
- pop ; StackCount = 0
- loc_8b:
- ret
- Functions[107] = external returnsval PROCESSORARCHITECTURE()
- Functions[108] = exported BOOLEAN ISX64()
- assign RetVal, Global21
- logicalnot RetVal
- jumpfalse RetVal, loc_39
- pushtype BOOLEAN ; StackCount = 1
- pushvar Var1 ; StackCount = 2
- call IS64BITINSTALLMODE
- pop ; StackCount = 1
- calculate RetVal & Var1
- pop ; StackCount = 0
- loc_39:
- jumpfalse RetVal, loc_79
- pushtype BOOLEAN ; StackCount = 1
- pushtype TSETUPPROCESSORARCHITECTURE ; StackCount = 2
- pushvar Var2 ; StackCount = 3
- call PROCESSORARCHITECTURE
- pop ; StackCount = 2
- compare Var1, Var2 == ( U8 2 )
- pop ; StackCount = 1
- calculate RetVal & Var1
- pop ; StackCount = 0
- loc_79:
- ret
- Functions[109] = external returnsval IS64BITINSTALLMODE()
- Functions[110] = exported BOOLEAN ISIA64()
- assign RetVal, Global21
- logicalnot RetVal
- jumpfalse RetVal, loc_39
- pushtype BOOLEAN ; StackCount = 1
- pushvar Var1 ; StackCount = 2
- call IS64BITINSTALLMODE
- pop ; StackCount = 1
- calculate RetVal & Var1
- pop ; StackCount = 0
- loc_39:
- jumpfalse RetVal, loc_79
- pushtype BOOLEAN ; StackCount = 1
- pushtype TSETUPPROCESSORARCHITECTURE ; StackCount = 2
- pushvar Var2 ; StackCount = 3
- call PROCESSORARCHITECTURE
- pop ; StackCount = 2
- compare Var1, Var2 == ( U8 3 )
- pop ; StackCount = 1
- calculate RetVal & Var1
- pop ; StackCount = 0
- loc_79:
- ret
- Functions[111] = exported UnicodeString GETSTRING(in UnicodeString Arg1,in UnicodeString Arg2,in UnicodeString Arg3)
- pushtype BOOLEAN ; StackCount = 1
- pushvar Var1 ; StackCount = 2
- call ISX64
- pop ; StackCount = 1
- jumpfalse Var1, loc_42
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Arg2 != ( String "" )
- calculate Var1 & Var2
- pop ; StackCount = 1
- loc_42:
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_5f
- assign RetVal, Arg2
- jump loc_c9
- loc_5f:
- pushtype BOOLEAN ; StackCount = 1
- pushvar Var1 ; StackCount = 2
- call ISIA64
- pop ; StackCount = 1
- jumpfalse Var1, loc_a1
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Arg3 != ( String "" )
- calculate Var1 & Var2
- pop ; StackCount = 1
- loc_a1:
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_be
- assign RetVal, Arg3
- jump loc_c9
- loc_be:
- assign RetVal, Arg1
- loc_c9:
- ret
- Functions[112] = exported UnicodeString GETARCHITECTURESTRING()
- pushtype BOOLEAN ; StackCount = 1
- pushvar Var1 ; StackCount = 2
- call ISX64
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_36
- assign RetVal, ( String "_x64" )
- jump loc_7c
- loc_36:
- pushtype BOOLEAN ; StackCount = 1
- pushvar Var1 ; StackCount = 2
- call ISIA64
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_6d
- assign RetVal, ( String "_ia64" )
- jump loc_7c
- loc_6d:
- assign RetVal, ( String "" )
- loc_7c:
- ret
- Functions[113] = exported void SETFORCEX86(in BOOLEAN Arg1)
- assign Global21, Arg1
- ret
- Functions[114] = exported S32 STRINGTOVERSION(out UnicodeString Arg1)
- pushtype UnicodeString ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- pushtype S32 ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Arg1
- pushvar Var4 ; StackCount = 6
- call LENGTH
- pop ; StackCount = 5
- pop ; StackCount = 4
- compare Var3, Var4 == ( S32 0 )
- pop ; StackCount = 3
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_64
- assign RetVal, ( S32 -1 )
- ret
- loc_64:
- pushtype UnicodeString ; StackCount = 3
- assign Var3, Arg1
- pushtype Char ; StackCount = 4
- assign Var4, ( Char '.' )
- pushvar Var2 ; StackCount = 5
- call POS
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Var2 == ( S32 0 )
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_eb
- pushtype UnicodeString ; StackCount = 3
- assign Var3, Arg1
- pushvar RetVal ; StackCount = 4
- call STRTOINT
- pop ; StackCount = 3
- pop ; StackCount = 2
- assign Arg1, ( String "" )
- jump loc_1bc
- loc_eb:
- pushtype S32 ; StackCount = 3
- assign Var3, Var2
- calculate Var3 - ( S32 1 )
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 1 )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Arg1
- pushvar Var1 ; StackCount = 6
- call COPY
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Arg1
- pushvar Var3 ; StackCount = 5
- call LENGTH
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign Var4, Var2
- calculate Var4 + ( S32 1 )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Arg1
- pushvar Arg1 ; StackCount = 6
- call COPY
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, Var1
- pushvar RetVal ; StackCount = 4
- call STRTOINT
- pop ; StackCount = 3
- pop ; StackCount = 2
- loc_1bc:
- ret
- Functions[115] = exported S32 COMPAREINNERVERSION(out UnicodeString Arg1,out UnicodeString Arg2)
- pushtype S32 ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Arg1
- pushvar Var1 ; StackCount = 4
- call STRINGTOVERSION
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Arg2
- pushvar Var2 ; StackCount = 4
- call STRINGTOVERSION
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Var1 == ( S32 -1 )
- jumpfalse Var3, loc_8f
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var2 == ( S32 -1 )
- calculate Var3 & Var4
- pop ; StackCount = 3
- loc_8f:
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_ac
- assign RetVal, ( S32 0 )
- ret
- loc_ac:
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Var1 < ( S32 0 )
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_e2
- assign Var1, ( S32 0 )
- loc_e2:
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Var2 < ( S32 0 )
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_118
- assign Var2, ( S32 0 )
- loc_118:
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Var1 < Var2
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_14f
- assign RetVal, ( S32 -1 )
- jump loc_1b4
- loc_14f:
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Var1 > Var2
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_186
- assign RetVal, ( S32 1 )
- jump loc_1b4
- loc_186:
- pushtype Pointer ; StackCount = 3
- setptr Var3, Arg2
- pushtype Pointer ; StackCount = 4
- setptr Var4, Arg1
- pushvar RetVal ; StackCount = 5
- call COMPAREINNERVERSION
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- loc_1b4:
- ret
- Functions[116] = exported S32 COMPAREVERSION(in UnicodeString Arg1,in UnicodeString Arg2)
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var1, Arg1
- assign Var2, Arg2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Var2
- pushtype Pointer ; StackCount = 4
- setptr Var4, Var1
- pushvar RetVal ; StackCount = 5
- call COMPAREINNERVERSION
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- ret
- Functions[117] = exported void INITWINVERSION()
- pushtype Pointer ; StackCount = 1
- setptr Var1, Global23
- call GETWINDOWSVERSIONEX
- pop ; StackCount = 0
- ret
- Functions[118] = external void GETWINDOWSVERSIONEX(in Arg1)
- Functions[119] = exported BOOLEAN EXACTWINVERSION(in S32 Arg1,in S32 Arg2)
- pushtype BOOLEAN ; StackCount = 1
- compare Var1, Global23[0] == Arg1
- jumpfalse Var1, loc_4b
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Global23[1] == Arg2
- calculate Var1 & Var2
- pop ; StackCount = 1
- loc_4b:
- assign RetVal, Var1
- pop ; StackCount = 0
- ret
- Functions[120] = exported BOOLEAN MINWINVERSION(in S32 Arg1,in S32 Arg2)
- pushtype BOOLEAN ; StackCount = 1
- compare Var1, Global23[0] > Arg1
- jumptrue Var1, loc_7c
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Global23[0] == Arg1
- jumpfalse Var2, loc_6f
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Global23[1] >= Arg2
- calculate Var2 & Var3
- pop ; StackCount = 2
- loc_6f:
- calculate Var1 | Var2
- pop ; StackCount = 1
- loc_7c:
- assign RetVal, Var1
- pop ; StackCount = 0
- ret
- Functions[121] = exported BOOLEAN MAXWINVERSION(in S32 Arg1,in S32 Arg2)
- pushtype BOOLEAN ; StackCount = 1
- compare Var1, Global23[0] < Arg1
- jumptrue Var1, loc_7c
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Global23[0] == Arg1
- jumpfalse Var2, loc_6f
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Global23[1] <= Arg2
- calculate Var2 & Var3
- pop ; StackCount = 2
- loc_6f:
- calculate Var1 | Var2
- pop ; StackCount = 1
- loc_7c:
- assign RetVal, Var1
- pop ; StackCount = 0
- ret
- Functions[122] = exported BOOLEAN EXACTWINSPVERSION(in S32 Arg1,in S32 Arg2,in S32 Arg3)
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- assign Var2, Arg2
- pushtype S32 ; StackCount = 3
- assign Var3, Arg1
- pushvar Var1 ; StackCount = 4
- call EXACTWINVERSION
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_5a
- compare RetVal, Global23[3] == Arg3
- jump loc_66
- loc_5a:
- assign RetVal, ( U8 1 )
- loc_66:
- ret
- Functions[123] = exported BOOLEAN MINWINSPVERSION(in S32 Arg1,in S32 Arg2,in S32 Arg3)
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- assign Var2, Arg2
- pushtype S32 ; StackCount = 3
- assign Var3, Arg1
- pushvar Var1 ; StackCount = 4
- call EXACTWINVERSION
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_5a
- compare RetVal, Global23[3] >= Arg3
- jump loc_66
- loc_5a:
- assign RetVal, ( U8 1 )
- loc_66:
- ret
- Functions[124] = exported BOOLEAN MAXWINSPVERSION(in S32 Arg1,in S32 Arg2,in S32 Arg3)
- pushtype BOOLEAN ; StackCount = 1
- pushtype S32 ; StackCount = 2
- assign Var2, Arg2
- pushtype S32 ; StackCount = 3
- assign Var3, Arg1
- pushvar Var1 ; StackCount = 4
- call EXACTWINVERSION
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_5a
- compare RetVal, Global23[3] <= Arg3
- jump loc_66
- loc_5a:
- assign RetVal, ( U8 1 )
- loc_66:
- ret
- Functions[125] = exported UnicodeString GETFULLVERSION(in U32 Arg1,in U32 Arg2)
- pushtype UnicodeString ; StackCount = 1
- pushtype S64 ; StackCount = 2
- pushtype U32 ; StackCount = 3
- assign Var3, Arg1
- calculate Var3 >> ( S32 16 )
- assign Var2, Var3
- pop ; StackCount = 2
- pushvar Var1 ; StackCount = 3
- call INTTOSTR
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- calculate Var2 + ( Char '.' )
- pushtype UnicodeString ; StackCount = 3
- pushtype S64 ; StackCount = 4
- pushtype U32 ; StackCount = 5
- assign Var5, Arg1
- calculate Var5 & ( U32 65535 )
- assign Var4, Var5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call INTTOSTR
- pop ; StackCount = 4
- pop ; StackCount = 3
- calculate Var2 + Var3
- pop ; StackCount = 2
- assign Var1, Var2
- pop ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- calculate Var2 + ( Char '.' )
- pushtype UnicodeString ; StackCount = 3
- pushtype S64 ; StackCount = 4
- pushtype U32 ; StackCount = 5
- assign Var5, Arg2
- calculate Var5 >> ( S32 16 )
- assign Var4, Var5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call INTTOSTR
- pop ; StackCount = 4
- pop ; StackCount = 3
- calculate Var2 + Var3
- pop ; StackCount = 2
- assign Var1, Var2
- pop ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- calculate Var2 + ( Char '.' )
- pushtype UnicodeString ; StackCount = 3
- pushtype S64 ; StackCount = 4
- pushtype U32 ; StackCount = 5
- assign Var5, Arg2
- calculate Var5 & ( U32 65535 )
- assign Var4, Var5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call INTTOSTR
- pop ; StackCount = 4
- pop ; StackCount = 3
- calculate Var2 + Var3
- pop ; StackCount = 2
- assign Var1, Var2
- pop ; StackCount = 1
- assign RetVal, Var1
- ret
- Functions[126] = exported UnicodeString FILEVERSION(in UnicodeString Arg1)
- pushtype U32 ; StackCount = 1
- pushtype U32 ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- pushtype Pointer ; StackCount = 4
- setptr Var4, Var2
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var1
- pushtype UnicodeString ; StackCount = 6
- assign Var6, Arg1
- pushvar Var3 ; StackCount = 7
- call GETVERSIONNUMBERS
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_8e
- pushtype U32 ; StackCount = 3
- assign Var3, Var2
- pushtype U32 ; StackCount = 4
- assign Var4, Var1
- pushvar RetVal ; StackCount = 5
- call GETFULLVERSION
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- jump loc_9a
- loc_8e:
- assign RetVal, ( Char '0' )
- loc_9a:
- ret
- Functions[127] = exported BOOLEAN NETFXINSTALLED(in U8 Arg1,in UnicodeString Arg2)
- pushtype U32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Arg2 != ( String "" )
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_5a
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( Char '\' )
- calculate Var3 + Arg2
- assign Arg2, Var3
- pop ; StackCount = 2
- loc_5a:
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Arg1 == ( U8 0 )
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_132
- pushtype BOOLEAN ; StackCount = 3
- pushtype Pointer ; StackCount = 4
- setptr Var4, Var2
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "Install" )
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "Software\Microsoft\.NETFramework\Policy\v1.0\3705" )
- pushtype S32 ; StackCount = 7
- assign Var7, ( S32 -2147483646 )
- pushvar Var3 ; StackCount = 8
- call REGQUERYSTRINGVALUE
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- compare RetVal, Var2 != ( String "" )
- jump loc_771
- loc_132:
- pushtype U8 ; StackCount = 3
- assign Var3, Arg1
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, ( U8 1 ) == Var3
- jumpfalse Var4, loc_222
- pushtype BOOLEAN ; StackCount = 5
- pushtype Pointer ; StackCount = 6
- setptr Var6, Var1
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "Install" )
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Software\Microsoft\NET Framework Setup\NDP\v1.1.4322" )
- calculate Var9 + Arg2
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype S32 ; StackCount = 9
- assign Var9, ( S32 -2147483646 )
- pushvar Var5 ; StackCount = 10
- call REGQUERYDWORDVALUE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- jump loc_75a
- loc_222:
- compare Var4, ( U8 2 ) == Var3
- jumpfalse Var4, loc_2fe
- pushtype BOOLEAN ; StackCount = 5
- pushtype Pointer ; StackCount = 6
- setptr Var6, Var1
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "Install" )
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Software\Microsoft\NET Framework Setup\NDP\v2.0.50727" )
- calculate Var9 + Arg2
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype S32 ; StackCount = 9
- assign Var9, ( S32 -2147483646 )
- pushvar Var5 ; StackCount = 10
- call REGQUERYDWORDVALUE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- jump loc_75a
- loc_2fe:
- compare Var4, ( U8 3 ) == Var3
- jumpfalse Var4, loc_3e1
- pushtype BOOLEAN ; StackCount = 5
- pushtype Pointer ; StackCount = 6
- setptr Var6, Var1
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "InstallSuccess" )
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Software\Microsoft\NET Framework Setup\NDP\v3.0\Setup" )
- calculate Var9 + Arg2
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype S32 ; StackCount = 9
- assign Var9, ( S32 -2147483646 )
- pushvar Var5 ; StackCount = 10
- call REGQUERYDWORDVALUE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- jump loc_75a
- loc_3e1:
- compare Var4, ( U8 4 ) == Var3
- jumpfalse Var4, loc_4b7
- pushtype BOOLEAN ; StackCount = 5
- pushtype Pointer ; StackCount = 6
- setptr Var6, Var1
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "Install" )
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Software\Microsoft\NET Framework Setup\NDP\v3.5" )
- calculate Var9 + Arg2
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype S32 ; StackCount = 9
- assign Var9, ( S32 -2147483646 )
- pushvar Var5 ; StackCount = 10
- call REGQUERYDWORDVALUE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- jump loc_75a
- loc_4b7:
- compare Var4, ( U8 5 ) == Var3
- jumpfalse Var4, loc_592
- pushtype BOOLEAN ; StackCount = 5
- pushtype Pointer ; StackCount = 6
- setptr Var6, Var1
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "Install" )
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Software\Microsoft\NET Framework Setup\NDP\v4\Client" )
- calculate Var9 + Arg2
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype S32 ; StackCount = 9
- assign Var9, ( S32 -2147483646 )
- pushvar Var5 ; StackCount = 10
- call REGQUERYDWORDVALUE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- jump loc_75a
- loc_592:
- compare Var4, ( U8 6 ) == Var3
- jumpfalse Var4, loc_66b
- pushtype BOOLEAN ; StackCount = 5
- pushtype Pointer ; StackCount = 6
- setptr Var6, Var1
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "Install" )
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Software\Microsoft\NET Framework Setup\NDP\v4\Full" )
- calculate Var9 + Arg2
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype S32 ; StackCount = 9
- assign Var9, ( S32 -2147483646 )
- pushvar Var5 ; StackCount = 10
- call REGQUERYDWORDVALUE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- jump loc_75a
- loc_66b:
- compare Var4, ( U8 7 ) == Var3
- jumpfalse Var4, loc_75a
- pushtype BOOLEAN ; StackCount = 5
- pushtype Pointer ; StackCount = 6
- setptr Var6, Var1
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "Release" )
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Software\Microsoft\NET Framework Setup\NDP\v4\Full" )
- calculate Var9 + Arg2
- assign Var8, Var9
- pop ; StackCount = 8
- pushtype S32 ; StackCount = 9
- assign Var9, ( S32 -2147483646 )
- pushvar Var5 ; StackCount = 10
- call REGQUERYDWORDVALUE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- compare RetVal, Var1 >= ( S32 378389 )
- ret
- jump loc_75a
- loc_75a:
- pop ; StackCount = 3
- pop ; StackCount = 2
- compare RetVal, Var1 != ( S32 0 )
- loc_771:
- ret
- Functions[128] = external returnsval REGQUERYDWORDVALUE(out Arg1,out Arg2)
- Functions[129] = exported S32 NETFXSPVERSION(in U8 Arg1,in UnicodeString Arg2)
- pushtype U32 ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Arg2 != ( String "" )
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_55
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( Char '\' )
- calculate Var2 + Arg2
- assign Arg2, Var2
- pop ; StackCount = 1
- loc_55:
- pushtype U8 ; StackCount = 2
- assign Var2, Arg1
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, ( U8 0 ) == Var2
- jumpfalse Var3, loc_9a
- assign Var1, ( S32 -1 )
- jump loc_882
- loc_9a:
- compare Var3, ( U8 1 ) == Var2
- jumpfalse Var3, loc_191
- pushtype BOOLEAN ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var1
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "SP" )
- pushtype UnicodeString ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "Software\Microsoft\NET Framework Setup\NDP\v1.1.4322" )
- calculate Var8 + Arg2
- assign Var7, Var8
- pop ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483646 )
- pushvar Var4 ; StackCount = 9
- call REGQUERYDWORDVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- logicalnot Var4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_18c
- assign Var1, ( S32 -1 )
- loc_18c:
- jump loc_882
- loc_191:
- compare Var3, ( U8 2 ) == Var2
- jumpfalse Var3, loc_289
- pushtype BOOLEAN ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var1
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "SP" )
- pushtype UnicodeString ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "Software\Microsoft\NET Framework Setup\NDP\v2.0.50727" )
- calculate Var8 + Arg2
- assign Var7, Var8
- pop ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483646 )
- pushvar Var4 ; StackCount = 9
- call REGQUERYDWORDVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- logicalnot Var4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_284
- assign Var1, ( S32 -1 )
- loc_284:
- jump loc_882
- loc_289:
- compare Var3, ( U8 3 ) == Var2
- jumpfalse Var3, loc_37b
- pushtype BOOLEAN ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var1
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "SP" )
- pushtype UnicodeString ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "Software\Microsoft\NET Framework Setup\NDP\v3.0" )
- calculate Var8 + Arg2
- assign Var7, Var8
- pop ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483646 )
- pushvar Var4 ; StackCount = 9
- call REGQUERYDWORDVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- logicalnot Var4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_376
- assign Var1, ( S32 -1 )
- loc_376:
- jump loc_882
- loc_37b:
- compare Var3, ( U8 4 ) == Var2
- jumpfalse Var3, loc_46d
- pushtype BOOLEAN ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var1
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "SP" )
- pushtype UnicodeString ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "Software\Microsoft\NET Framework Setup\NDP\v3.5" )
- calculate Var8 + Arg2
- assign Var7, Var8
- pop ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483646 )
- pushvar Var4 ; StackCount = 9
- call REGQUERYDWORDVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- logicalnot Var4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_468
- assign Var1, ( S32 -1 )
- loc_468:
- jump loc_882
- loc_46d:
- compare Var3, ( U8 5 ) == Var2
- jumpfalse Var3, loc_56b
- pushtype BOOLEAN ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var1
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "Servicing" )
- pushtype UnicodeString ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "Software\Microsoft\NET Framework Setup\NDP\v4\Client" )
- calculate Var8 + Arg2
- assign Var7, Var8
- pop ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483646 )
- pushvar Var4 ; StackCount = 9
- call REGQUERYDWORDVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- logicalnot Var4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_566
- assign Var1, ( S32 -1 )
- loc_566:
- jump loc_882
- loc_56b:
- compare Var3, ( U8 6 ) == Var2
- jumpfalse Var3, loc_667
- pushtype BOOLEAN ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var1
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "Servicing" )
- pushtype UnicodeString ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "Software\Microsoft\NET Framework Setup\NDP\v4\Full" )
- calculate Var8 + Arg2
- assign Var7, Var8
- pop ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483646 )
- pushvar Var4 ; StackCount = 9
- call REGQUERYDWORDVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- logicalnot Var4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_662
- assign Var1, ( S32 -1 )
- loc_662:
- jump loc_882
- loc_667:
- compare Var3, ( U8 7 ) == Var2
- jumpfalse Var3, loc_882
- pushtype BOOLEAN ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var1
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "Release" )
- pushtype UnicodeString ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "Software\Microsoft\NET Framework Setup\NDP\v4\Full" )
- calculate Var8 + Arg2
- assign Var7, Var8
- pop ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483646 )
- pushvar Var4 ; StackCount = 9
- call REGQUERYDWORDVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_87d
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var1 >= ( S32 394254 )
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_782
- assign Var1, ( S32 61 )
- jump loc_87d
- loc_782:
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var1 >= ( S32 393295 )
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_7bd
- assign Var1, ( S32 60 )
- jump loc_87d
- loc_7bd:
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var1 >= ( S32 379893 )
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_7f8
- assign Var1, ( S32 52 )
- jump loc_87d
- loc_7f8:
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var1 >= ( S32 378675 )
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_833
- assign Var1, ( S32 51 )
- jump loc_87d
- loc_833:
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var1 >= ( S32 378389 )
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_86e
- assign Var1, ( S32 50 )
- jump loc_87d
- loc_86e:
- assign Var1, ( S32 -1 )
- loc_87d:
- jump loc_882
- loc_882:
- pop ; StackCount = 2
- pop ; StackCount = 1
- assign RetVal, Var1
- ret
- Functions[130] = external stdcall returnsval msi.dll!MsiQueryProductStateW(out Arg1)
- Functions[131] = exported BOOLEAN MSIPRODUCT(in UnicodeString Arg1)
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Arg1
- pushvar Var1 ; StackCount = 3
- call msi.dll!MsiQueryProductStateW
- pop ; StackCount = 2
- pop ; StackCount = 1
- compare RetVal, Var1 == ( S32 5 )
- pop ; StackCount = 0
- ret
- Functions[132] = exported void DOTNETFX461(in S32 Arg1)
- pushtype BOOLEAN ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "" )
- pushtype U8 ; StackCount = 3
- assign Var3, ( U8 7 )
- pushvar Var1 ; StackCount = 4
- call NETFXINSTALLED
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- logicalnot Var1
- jumptrue Var1, loc_a4
- pushtype BOOLEAN ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "" )
- pushtype U8 ; StackCount = 5
- assign Var5, ( U8 7 )
- pushvar Var3 ; StackCount = 6
- call NETFXSPVERSION
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- compare Var2, Var3 < Arg1
- pop ; StackCount = 2
- calculate Var1 | Var2
- pop ; StackCount = 1
- loc_a4:
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_269
- pushtype BOOLEAN ; StackCount = 1
- assign Var1, ( U8 0 )
- pushtype BOOLEAN ; StackCount = 2
- assign Var2, ( U8 0 )
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "http://download.microsoft.com/download/3/5/9/35980F81-60F4-4DE3-88FC-8F962B97253B/NDP461-KB3102438-Web.exe" )
- pushtype UnicodeString ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "dotnetfx461_size" )
- pushvar Var4 ; StackCount = 6
- call CUSTOMMESSAGE
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "dotnetfx461_title" )
- pushvar Var5 ; StackCount = 7
- call CUSTOMMESSAGE
- pop ; StackCount = 6
- pop ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "dotnetfx461_lcid" )
- pushvar Var8 ; StackCount = 10
- call CUSTOMMESSAGE
- pop ; StackCount = 9
- pop ; StackCount = 8
- assign Var7, Var8
- pop ; StackCount = 7
- calculate Var7 + ( String " /passive /norestart" )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "dotnetfx461.exe" )
- call ADDPRODUCT
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- loc_269:
- ret
- Functions[133] = exported void WMF40(in UnicodeString Arg1)
- pushtype UnicodeString ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Var1
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "PowerShellVersion" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "Software\Microsoft\PowerShell\3\PowerShellEngine" )
- pushtype S32 ; StackCount = 6
- assign Var6, ( S32 -2147483646 )
- pushvar Var2 ; StackCount = 7
- call REGQUERYSTRINGVALUE
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Arg1
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- pushvar Var3 ; StackCount = 6
- call COMPAREVERSION
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- compare Var2, Var3 < ( S32 0 )
- pop ; StackCount = 2
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_3f6
- pushtype BOOLEAN ; StackCount = 2
- pushvar Var2 ; StackCount = 3
- call ISX86
- pop ; StackCount = 2
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_28e
- pushtype BOOLEAN ; StackCount = 2
- assign Var2, ( U8 0 )
- pushtype BOOLEAN ; StackCount = 3
- assign Var3, ( U8 0 )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "http://download.microsoft.com/download/3/D/6/3D61D262-8549-4769-A660-230B67E15B25/Windows6.1-KB2819745-x86-MultiPkg.msu" )
- pushtype UnicodeString ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "wmf40win61_x86_size" )
- pushvar Var5 ; StackCount = 7
- call CUSTOMMESSAGE
- pop ; StackCount = 6
- pop ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "wmf40_title" )
- pushvar Var6 ; StackCount = 8
- call CUSTOMMESSAGE
- pop ; StackCount = 7
- pop ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "/quiet /norestart" )
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "wmf40_61.msu" )
- call ADDPRODUCT
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- jump loc_3f6
- loc_28e:
- pushtype BOOLEAN ; StackCount = 2
- assign Var2, ( U8 0 )
- pushtype BOOLEAN ; StackCount = 3
- assign Var3, ( U8 0 )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "http://download.microsoft.com/download/3/D/6/3D61D262-8549-4769-A660-230B67E15B25/Windows6.1-KB2819745-x64-MultiPkg.msu" )
- pushtype UnicodeString ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "wmf40win61_x64_size" )
- pushvar Var5 ; StackCount = 7
- call CUSTOMMESSAGE
- pop ; StackCount = 6
- pop ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "wmf40_title" )
- pushvar Var6 ; StackCount = 8
- call CUSTOMMESSAGE
- pop ; StackCount = 7
- pop ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "/quiet /norestart" )
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "wmf40_61.msu" )
- call ADDPRODUCT
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- loc_3f6:
- ret
- Functions[134] = external stdcall returnsval setup:files:ISGetObj.dll!ForEachStart(in Arg1)
- Functions[135] = external stdcall returnsval setup:files:ISGetObj.dll!ForEachGetNextItem(in Arg1)
- Functions[136] = external stdcall returnsval setup:files:ISGetObj.dll!VBGetObject(out Arg1,in Arg2)
- Functions[137] = external stdcall delayload returnsval setup:files:FSLFSXCFG.dll!OpenFSXCFG(out Arg1,out Arg2)
- Functions[138] = external stdcall delayload returnsval setup:files:FSLFSXCFG.dll!AddEntryToFSXCFG(out Arg1,out Arg2)
- Functions[139] = external stdcall returnsval setup:files:FSLInstallerLib.dll!1(out Arg1)
- Functions[140] = external stdcall void setup:files:FSLInstallerLib.dll!2(out Arg1)
- Functions[141] = external stdcall returnsval setup:files:FSLInstallerLib.dll!3(out Arg1)
- Functions[142] = external stdcall returnsval files:FSLInstallerLib.dll!4(out Arg1)
- Functions[143] = external stdcall returnsval setup:files:FSLInstallerLib.dll!5(out Arg1)
- Functions[144] = external stdcall delayload returnsval uninstall:{app}\FSLInstallerLib.dll!6(out Arg1)
- Functions[145] = external stdcall returnsval files:FSLInstallerLib.dll!7(out Arg1)
- Functions[146] = exported Variant WMICONNECT(in UnicodeString Arg1)
- pushtype S32 ; StackCount = 1
- pushtype Pointer ; StackCount = 2
- setptr Var2, RetVal
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "" )
- pushtype UnicodeString ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "winmgmts:{impersonationLevel=impersonate}!" )
- calculate Var5 + Arg1
- assign Var4, Var5
- pop ; StackCount = 4
- pushvar Var1 ; StackCount = 5
- call setup:files:ISGetObj.dll!VBGetObject
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Var1 != ( S32 0 )
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_162
- pushtype UnicodeString ; StackCount = 2
- pushtype !OPENARRAYOFCONST ; StackCount = 3
- pushtype !OPENARRAYOFCONST ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 2 )
- pushvar Var4 ; StackCount = 6
- call SETARRAYLENGTH
- pop ; StackCount = 5
- pop ; StackCount = 4
- setcopypointer Var4[0], Arg1
- setcopypointer Var4[1], Var1
- assign Var3, Var4
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "Error connecting to WMI %s: error %.8x" )
- pushvar Var2 ; StackCount = 5
- call FORMAT
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- call RAISEEXCEPTION
- pop ; StackCount = 1
- loc_162:
- ret
- Functions[147] = external void RAISEEXCEPTION(out Arg1)
- Functions[148] = external returnsval FORMAT(out Arg1)
- Functions[149] = exported Variant[] COMENUMERATE(in Variant Arg1)
- pushtype Variant ; StackCount = 1
- pushtype Variant ; StackCount = 2
- pushtype S32 ; StackCount = 3
- assign Var3, ( S32 0 )
- pushtype BOOLEAN ; StackCount = 4
- pushtype S32 ; StackCount = 5
- pushtype Pointer ; StackCount = 6
- setptr Var6, Var1
- pushtype Pointer ; StackCount = 7
- setptr Var7, Arg1
- pushvar Var5 ; StackCount = 8
- call setup:files:ISGetObj.dll!ForEachStart
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- compare Var4, Var5 == ( S32 0 )
- pop ; StackCount = 4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_12d
- pushtype BOOLEAN ; StackCount = 4
- loc_7e:
- pushtype S32 ; StackCount = 5
- pushtype Pointer ; StackCount = 6
- setptr Var6, Var2
- pushtype Pointer ; StackCount = 7
- setptr Var7, Var1
- pushvar Var5 ; StackCount = 8
- call setup:files:ISGetObj.dll!ForEachGetNextItem
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- compare Var4, Var5 == ( S32 0 )
- pop ; StackCount = 4
- jumpfalse Var4, loc_12c
- pushtype S32 ; StackCount = 5
- assign Var5, Var3
- calculate Var5 + ( S32 1 )
- pushtype Pointer ; StackCount = 6
- setptr Var6, RetVal
- call SETARRAYLENGTH
- pop ; StackCount = 5
- pop ; StackCount = 4
- assign RetVal[Var3], Var2
- calculate Var3 + ( S32 1 )
- jump loc_7e
- loc_12c:
- pop ; StackCount = 3
- loc_12d:
- ret
- Functions[150] = exported Variant[] WMIQUERY(in Variant Arg1,in UnicodeString Arg2)
- pushtype Variant ; StackCount = 1
- pushtype !OPENARRAYOFVARIANT ; StackCount = 2
- pushtype !OPENARRAYOFVARIANT ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 3 )
- pushvar Var3 ; StackCount = 5
- call SETARRAYLENGTH
- pop ; StackCount = 4
- pop ; StackCount = 3
- assign Var3[0], Arg2
- pushtype Variant ; StackCount = 4
- pushvar Var4 ; StackCount = 5
- call NULL
- pop ; StackCount = 4
- assign Var3[1], Var4
- pop ; StackCount = 3
- assign Var3[2], ( S32 48 )
- assign Var2, Var3
- pop ; StackCount = 2
- pushtype String ; StackCount = 3
- assign Var3, ( String "ExecQuery" )
- pushtype BOOLEAN ; StackCount = 4
- assign Var4, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 5
- assign Var5, Arg1
- pushvar Var1 ; StackCount = 6
- call IDISPATCHINVOKE
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushvar RetVal ; StackCount = 2
- call COMENUMERATE
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[151] = external returnsval NULL()
- Functions[152] = external returnsval IDISPATCHINVOKE(out Arg1,out Arg2)
- Functions[153] = exported BOOLEAN RUN_ESELLERATEINSTALLER()
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "FSL_eSellerate.exe" )
- call EXTRACTTEMPORARYFILE
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype Pointer ; StackCount = 3
- setptr Var3, Var1
- pushtype TEXECWAIT ; StackCount = 4
- assign Var4, ( U8 1 )
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 5 )
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "" )
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "/verysilent" )
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "{tmp}\FSL_eSellerate.exe" )
- pushvar Var8 ; StackCount = 10
- call EXPANDCONSTANT
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushvar Var2 ; StackCount = 9
- call EXEC
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, Var1 > ( S32 0 )
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_1d7
- pushtype S32 ; StackCount = 2
- pushtype S32 ; StackCount = 3
- assign Var3, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 4
- assign Var4, ( U8 2 )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "Could not install necessary eSellerate libraries.
- Please contact Flight Sim Labs, Ltd. Support..." )
- pushvar Var2 ; StackCount = 6
- call MSGBOX
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- assign RetVal, ( U8 0 )
- jump loc_1e3
- loc_1d7:
- assign RetVal, ( U8 1 )
- loc_1e3:
- ret
- Functions[154] = exported void SENDLOGDATA()
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype Variant ; StackCount = 3
- pushtype String ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- pushtype S32 ; StackCount = 7
- pushtype BOOLEAN ; StackCount = 8
- pushtype BOOLEAN ; StackCount = 9
- pusheh 0xffffffff, 0x631, 0xffffffff, 0x633
- pushtype UnicodeString ; StackCount = 10
- assign Var10, ( String "{tmp}\Test.exe" )
- pushvar Var5 ; StackCount = 11
- call EXPANDCONSTANT
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype UnicodeString ; StackCount = 10
- assign Var10, ( String "-o \"{tmp}\Log.txt\"" )
- pushvar Var6 ; StackCount = 11
- call EXPANDCONSTANT
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype UnicodeString ; StackCount = 10
- assign Var10, ( String "Test.exe" )
- call EXTRACTTEMPORARYFILE
- pop ; StackCount = 9
- pushtype Pointer ; StackCount = 10
- setptr Var10, Var7
- pushtype TEXECWAIT ; StackCount = 11
- assign Var11, ( U8 1 )
- pushtype S32 ; StackCount = 12
- assign Var12, ( S32 0 )
- pushtype UnicodeString ; StackCount = 13
- assign Var13, ( String "" )
- pushtype UnicodeString ; StackCount = 14
- assign Var14, Var6
- pushtype UnicodeString ; StackCount = 15
- assign Var15, Var5
- pushtype UnicodeString ; StackCount = 16
- assign Var16, ( String "" )
- pushvar Var8 ; StackCount = 17
- call SHELLEXEC
- pop ; StackCount = 16
- pop ; StackCount = 15
- pop ; StackCount = 14
- pop ; StackCount = 13
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype UnicodeString ; StackCount = 10
- assign Var10, ( String "{tmp}\base64.exe" )
- pushvar Var5 ; StackCount = 11
- call EXPANDCONSTANT
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype UnicodeString ; StackCount = 10
- assign Var10, ( String "-e \"{tmp}\Log.txt\" \"{tmp}\Log.b64\"" )
- pushvar Var6 ; StackCount = 11
- call EXPANDCONSTANT
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype UnicodeString ; StackCount = 10
- assign Var10, ( String "base64.exe" )
- call EXTRACTTEMPORARYFILE
- pop ; StackCount = 9
- pushtype Pointer ; StackCount = 10
- setptr Var10, Var7
- pushtype TEXECWAIT ; StackCount = 11
- assign Var11, ( U8 1 )
- pushtype S32 ; StackCount = 12
- assign Var12, ( S32 0 )
- pushtype UnicodeString ; StackCount = 13
- assign Var13, ( String "" )
- pushtype UnicodeString ; StackCount = 14
- assign Var14, Var6
- pushtype UnicodeString ; StackCount = 15
- assign Var15, Var5
- pushtype UnicodeString ; StackCount = 16
- assign Var16, ( String "" )
- pushvar Var8 ; StackCount = 17
- call SHELLEXEC
- pop ; StackCount = 16
- pop ; StackCount = 15
- pop ; StackCount = 14
- pop ; StackCount = 13
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype Pointer ; StackCount = 10
- setptr Var10, Var4
- pushtype UnicodeString ; StackCount = 11
- pushtype UnicodeString ; StackCount = 12
- assign Var12, ( String "{tmp}\Log.b64" )
- pushvar Var11 ; StackCount = 13
- call EXPANDCONSTANT
- pop ; StackCount = 12
- pop ; StackCount = 11
- pushvar Var9 ; StackCount = 12
- call LOADSTRINGFROMFILE
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype BOOLEAN ; StackCount = 10
- assign Var10, Var9
- setflag not Var10
- pop ; StackCount = 9
- jumpflag loc_327
- pushtype UnicodeString ; StackCount = 10
- assign Var10, Var1
- calculate Var10 + ( String "LogTxt=" )
- calculate Var10 + Var4
- assign Var1, Var10
- pop ; StackCount = 9
- loc_327:
- pushtype IDISPATCH ; StackCount = 10
- pushtype UnicodeString ; StackCount = 11
- assign Var11, ( String "WinHttp.WinHttpRequest.5.1" )
- pushvar Var10 ; StackCount = 12
- call CREATEOLEOBJECT
- pop ; StackCount = 11
- pop ; StackCount = 10
- assign Var3, Var10
- pop ; StackCount = 9
- pushtype Variant ; StackCount = 10
- pushtype !OPENARRAYOFVARIANT ; StackCount = 11
- pushtype !OPENARRAYOFVARIANT ; StackCount = 12
- pushtype S32 ; StackCount = 13
- assign Var13, ( S32 3 )
- pushvar Var12 ; StackCount = 14
- call SETARRAYLENGTH
- pop ; StackCount = 13
- pop ; StackCount = 12
- assign Var12[0], ( String "POST" )
- assign Var12[1], ( String "http://installLog.flightsimlabs.com/LogHandler3.ashx" )
- assign Var12[2], ( U8 0 )
- assign Var11, Var12
- pop ; StackCount = 11
- pushtype String ; StackCount = 12
- assign Var12, ( String "Open" )
- pushtype BOOLEAN ; StackCount = 13
- assign Var13, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 14
- assign Var14, Var3
- pushvar Var10 ; StackCount = 15
- call IDISPATCHINVOKE
- pop ; StackCount = 14
- pop ; StackCount = 13
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype Variant ; StackCount = 10
- pushtype !OPENARRAYOFVARIANT ; StackCount = 11
- pushtype !OPENARRAYOFVARIANT ; StackCount = 12
- pushtype S32 ; StackCount = 13
- assign Var13, ( S32 2 )
- pushvar Var12 ; StackCount = 14
- call SETARRAYLENGTH
- pop ; StackCount = 13
- pop ; StackCount = 12
- assign Var12[0], ( String "Content-Type" )
- assign Var12[1], ( String "application/x-www-form-urlencoded" )
- assign Var11, Var12
- pop ; StackCount = 11
- pushtype String ; StackCount = 12
- assign Var12, ( String "SetRequestHeader" )
- pushtype BOOLEAN ; StackCount = 13
- assign Var13, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 14
- assign Var14, Var3
- pushvar Var10 ; StackCount = 15
- call IDISPATCHINVOKE
- pop ; StackCount = 14
- pop ; StackCount = 13
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype Variant ; StackCount = 10
- pushtype !OPENARRAYOFVARIANT ; StackCount = 11
- pushtype !OPENARRAYOFVARIANT ; StackCount = 12
- pushtype S32 ; StackCount = 13
- assign Var13, ( S32 1 )
- pushvar Var12 ; StackCount = 14
- call SETARRAYLENGTH
- pop ; StackCount = 13
- pop ; StackCount = 12
- assign Var12[0], Var1
- assign Var11, Var12
- pop ; StackCount = 11
- pushtype String ; StackCount = 12
- assign Var12, ( String "Send" )
- pushtype BOOLEAN ; StackCount = 13
- assign Var13, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 14
- assign Var14, Var3
- pushvar Var10 ; StackCount = 15
- call IDISPATCHINVOKE
- pop ; StackCount = 14
- pop ; StackCount = 13
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype BOOLEAN ; StackCount = 10
- pushtype UnicodeString ; StackCount = 11
- pushtype UnicodeString ; StackCount = 12
- assign Var12, ( String "{tmp}\Log.b64" )
- pushvar Var11 ; StackCount = 13
- call EXPANDCONSTANT
- pop ; StackCount = 12
- pop ; StackCount = 11
- pushvar Var10 ; StackCount = 12
- call DELETEFILE
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushtype BOOLEAN ; StackCount = 10
- pushtype UnicodeString ; StackCount = 11
- pushtype UnicodeString ; StackCount = 12
- assign Var12, ( String "{tmp}\Log.txt" )
- pushvar Var11 ; StackCount = 13
- call EXPANDCONSTANT
- pop ; StackCount = 12
- pop ; StackCount = 11
- pushvar Var10 ; StackCount = 12
- call DELETEFILE
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- popeh 0x0
- popeh 0x2
- ret
- Functions[155] = external returnsval LOADSTRINGFROMFILE(out Arg1)
- Functions[156] = external returnsval CREATEOLEOBJECT(out Arg1)
- Functions[157] = external returnsval DELETEFILE(out Arg1)
- Functions[158] = exported void ADDADDONINSTALLPATHTOREGISTRY()
- pushtype UnicodeString ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- pushtype S32 ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "" )
- call LOG
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "Adding FSLabs A32X Aircraft Family Addons path to registry..." )
- call LOG
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Global7
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "Path" )
- pushtype UnicodeString ; StackCount = 7
- assign Var7, Global41
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483647 )
- pushvar Var2 ; StackCount = 9
- call REGWRITESTRINGVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- assign Var5, Var2
- logicalnot Var5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_139
- assign Var3, ( String " Failed..." )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var3
- call LOG
- pop ; StackCount = 4
- jump loc_16c
- loc_139:
- assign Var3, ( String " Succeeded..." )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var3
- call LOG
- pop ; StackCount = 4
- loc_16c:
- ret
- Functions[159] = exported void REMOVEADDONINSTALLPATHFROMREGISTRY()
- pushtype UnicodeString ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- pushtype S32 ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "" )
- call LOG
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "Removing FSLabs A32X Aircraft Family Addons path from registry..." )
- call LOG
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "Path" )
- pushtype UnicodeString ; StackCount = 6
- assign Var6, Global41
- pushtype S32 ; StackCount = 7
- assign Var7, ( S32 -2147483647 )
- pushvar Var2 ; StackCount = 8
- call REGDELETEVALUE
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- assign Var5, Var2
- logicalnot Var5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_12c
- assign Var3, ( String " Failed..." )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var3
- call LOG
- pop ; StackCount = 4
- jump loc_15f
- loc_12c:
- assign Var3, ( String " Succeeded..." )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var3
- call LOG
- pop ; StackCount = 4
- loc_15f:
- ret
- Functions[160] = external returnsval REGDELETEVALUE(out Arg1,out Arg2)
- Functions[161] = exported void ADDONFOLDER_ACTIVATE(in TWIZARDPAGE Arg1)
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 1
- pushtype U32 ; StackCount = 2
- assign Var2, ( U32 53 )
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Arg1
- pushvar Var1 ; StackCount = 4
- call Class->CastToType
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- ret
- Functions[162] = external pascal returnsval Class->CastToType(out Arg1,out Arg2)
- Functions[163] = exported BOOLEAN ADDONFOLDER_SHOULDSKIPPAGE(in TWIZARDPAGE Arg1)
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 1
- pushtype U32 ; StackCount = 2
- assign Var2, ( U32 53 )
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Arg1
- pushvar Var1 ; StackCount = 4
- call Class->CastToType
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- assign RetVal, ( U8 0 )
- ret
- Functions[164] = exported BOOLEAN ADDONFOLDER_NEXTBUTTONCLICK(in TWIZARDPAGE Arg1)
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype U32 ; StackCount = 3
- assign Var3, ( U32 53 )
- pushtype TWIZARDPAGE ; StackCount = 4
- assign Var4, Arg1
- pushvar Var1 ; StackCount = 5
- call Class->CastToType
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 0 )
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 5
- assign Var5, Var1
- pushvar Var3 ; StackCount = 6
- call TINPUTDIRWIZARDPAGE->VALUES
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var2 ; StackCount = 4
- call TRIM
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Var2 == ( String "" )
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_138
- pushtype S32 ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 5
- assign Var5, ( U8 2 )
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "The installation path cannot be blank. Please reenter." )
- pushvar Var3 ; StackCount = 7
- call MSGBOX
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- assign RetVal, ( U8 0 )
- ret
- loc_138:
- assign Global7, Var2
- assign RetVal, ( U8 1 )
- ret
- Functions[165] = external returnsval TRIM(out Arg1)
- Functions[166] = external cdecl void TINPUTDIRWIZARDPAGE->VALUES(out Arg1)
- Functions[167] = exported void ADDONFOLDER_CANCELBUTTONCLICK(in TWIZARDPAGE Arg1,out BOOLEAN Arg2,out BOOLEAN Arg3)
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 1
- pushtype U32 ; StackCount = 2
- assign Var2, ( U32 53 )
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Arg1
- pushvar Var1 ; StackCount = 4
- call Class->CastToType
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- ret
- Functions[168] = exported S32 CREATEPAGE_ADDONFOLDER(in S32 Arg1)
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "New Folder" )
- pushtype BOOLEAN ; StackCount = 4
- assign Var4, ( U8 0 )
- pushtype UnicodeString ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "{cm:AddonFolderInputQuerySubcaption}" )
- pushvar Var5 ; StackCount = 7
- call EXPANDCONSTANT
- pop ; StackCount = 6
- pop ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "{cm:AddonFolderDescription}" )
- pushvar Var6 ; StackCount = 8
- call EXPANDCONSTANT
- pop ; StackCount = 7
- pop ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "{cm:AddonFolderCaption}" )
- pushvar Var7 ; StackCount = 9
- call EXPANDCONSTANT
- pop ; StackCount = 8
- pop ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, Arg1
- pushvar Var1 ; StackCount = 9
- call CREATEINPUTDIRPAGE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- assign Var2, ( String "Please select the folder to install the add-on:" )
- pushtype BOOLEAN ; StackCount = 3
- assign Var3, Global40
- logicalnot Var3
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_1b3
- assign Var2, ( String "The add-on will be installed in:" )
- loc_1b3:
- pushtype S32 ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Var2
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 5
- assign Var5, Var1
- pushvar Var3 ; StackCount = 6
- call TINPUTDIRWIZARDPAGE->ADD
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype TWIZARDPAGENOTIFYEVENT ; StackCount = 3
- assign Var3, ( ProcPtr ADDONFOLDER_ACTIVATE )
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 4
- assign Var4, Var1
- call TWIZARDPAGE->ONACTIVATE
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype TWIZARDPAGESHOULDSKIPEVENT ; StackCount = 3
- assign Var3, ( ProcPtr ADDONFOLDER_SHOULDSKIPPAGE )
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 4
- assign Var4, Var1
- call TWIZARDPAGE->ONSHOULDSKIPPAGE
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype TWIZARDPAGEBUTTONEVENT ; StackCount = 3
- assign Var3, ( ProcPtr ADDONFOLDER_NEXTBUTTONCLICK )
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 4
- assign Var4, Var1
- call TWIZARDPAGE->ONNEXTBUTTONCLICK
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype TWIZARDPAGECANCELEVENT ; StackCount = 3
- assign Var3, ( ProcPtr ADDONFOLDER_CANCELBUTTONCLICK )
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 4
- assign Var4, Var1
- call TWIZARDPAGE->ONCANCELBUTTONCLICK
- pop ; StackCount = 3
- pop ; StackCount = 2
- assign Global38, Var1
- pushtype UnicodeString ; StackCount = 3
- assign Var3, Global7
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 0 )
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 5
- assign Var5, Global38
- call TINPUTDIRWIZARDPAGE->VALUES
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- assign Var3, Global40
- pushtype TEDIT ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 0 )
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 6
- assign Var6, Global38
- pushvar Var4 ; StackCount = 7
- call TINPUTDIRWIZARDPAGE->EDITS
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- call TCONTROL->ENABLED
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- assign Var3, Global40
- pushtype TNEWBUTTON ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 0 )
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 6
- assign Var6, Global38
- pushvar Var4 ; StackCount = 7
- call TINPUTDIRWIZARDPAGE->BUTTONS
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- call TCONTROL->VISIBLE
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype TCOMPONENT ; StackCount = 3
- pushtype TWIZARDFORM ; StackCount = 4
- pushvar Var4 ; StackCount = 5
- call WIZARDFORM
- pop ; StackCount = 4
- assign Var3, Var4
- pop ; StackCount = 3
- pushtype U32 ; StackCount = 4
- assign Var4, ( U32 52 )
- pushvar Global39 ; StackCount = 5
- call TCONTROL->CREATE
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype TWINCONTROL ; StackCount = 3
- pushtype TNEWNOTEBOOKPAGE ; StackCount = 4
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 5
- assign Var5, Global38
- pushvar Var4 ; StackCount = 6
- call TWIZARDPAGE->SURFACE
- pop ; StackCount = 5
- pop ; StackCount = 4
- assign Var3, Var4
- pop ; StackCount = 3
- pushtype TNEWSTATICTEXT ; StackCount = 4
- assign Var4, Global39
- call TCONTROL->PARENT
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype TEDIT ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 0 )
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 6
- assign Var6, Global38
- pushvar Var4 ; StackCount = 7
- call TINPUTDIRWIZARDPAGE->EDITS
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCONTROL->TOP
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 2 )
- pushtype S32 ; StackCount = 5
- pushtype TEDIT ; StackCount = 6
- pushtype S32 ; StackCount = 7
- assign Var7, ( S32 0 )
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 8
- assign Var8, Global38
- pushvar Var6 ; StackCount = 9
- call TINPUTDIRWIZARDPAGE->EDITS
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pushvar Var5 ; StackCount = 7
- call TCONTROL->HEIGHT
- pop ; StackCount = 6
- pop ; StackCount = 5
- calculate Var4 * Var5
- pop ; StackCount = 4
- calculate Var3 + Var4
- pop ; StackCount = 3
- pushtype TNEWSTATICTEXT ; StackCount = 4
- assign Var4, Global39
- call TCONTROL->TOP
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "Path is not editable as there was a previous FSLabs aircraft installation detected.
- If you wish to change the add-on installation path, you will need to remove all previous
- FSLabs aircraft installations first." )
- pushtype TNEWSTATICTEXT ; StackCount = 4
- assign Var4, Global39
- call TNEWSTATICTEXT->CAPTION
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- assign Var3, Global40
- logicalnot Var3
- pushtype TNEWSTATICTEXT ; StackCount = 4
- assign Var4, Global39
- call TCONTROL->VISIBLE
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype TINPUTDIRWIZARDPAGE ; StackCount = 3
- assign Var3, Var1
- pushvar RetVal ; StackCount = 4
- call TWIZARDPAGE->ID
- pop ; StackCount = 3
- pop ; StackCount = 2
- ret
- Functions[169] = external returnsval CREATEINPUTDIRPAGE(out Arg1,out Arg2,out Arg3)
- Functions[170] = external register returnsval TINPUTDIRWIZARDPAGE->ADD(out Arg1)
- Functions[171] = external pascal void TWIZARDPAGE->ONCANCELBUTTONCLICK(out Arg1)
- Functions[172] = external cdecl void TINPUTDIRWIZARDPAGE->VALUES(out Arg1)
- Functions[173] = external cdecl void TINPUTDIRWIZARDPAGE->EDITS(out Arg1)
- Functions[174] = external cdecl void TINPUTDIRWIZARDPAGE->BUTTONS(out Arg1)
- Functions[175] = external pascal void TCONTROL->VISIBLE(out Arg1)
- Functions[176] = external register returnsval TCONTROL->CREATE(out Arg1)
- Functions[177] = external pascal void TCONTROL->PARENT(out Arg1)
- Functions[178] = external pascal void TCONTROL->TOP(out Arg1)
- Functions[179] = external pascal void TCONTROL->HEIGHT(out Arg1)
- Functions[180] = external pascal void TCONTROL->TOP(out Arg1)
- Functions[181] = external pascal void TNEWSTATICTEXT->CAPTION(out Arg1)
- Functions[182] = external pascal void TWIZARDPAGE->ID(out Arg1)
- Functions[183] = exported void CHECKFORAMARTPB()
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Global32
- pushvar Var1 ; StackCount = 3
- call UPPERCASE
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "AMAR TPB" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- pushvar Var3 ; StackCount = 6
- call COMPARESTR
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- compare Var2, Var3 == ( S32 0 )
- pop ; StackCount = 2
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_8e
- call SENDLOGDATA
- loc_8e:
- ret
- Functions[184] = external returnsval UPPERCASE(out Arg1)
- Functions[185] = external returnsval COMPARESTR(out Arg1)
- Functions[186] = exported void SERIALS_ACTIVATE(in TWIZARDPAGE Arg1)
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 1
- pushtype U32 ; StackCount = 2
- assign Var2, ( U32 51 )
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Arg1
- pushvar Var1 ; StackCount = 4
- call Class->CastToType
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "" )
- pushtype TNEWSTATICTEXT ; StackCount = 3
- assign Var3, Global37
- call TNEWSTATICTEXT->CAPTION
- pop ; StackCount = 2
- pop ; StackCount = 1
- assign Global35, ( String "" )
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "" )
- pushtype S32 ; StackCount = 3
- assign Var3, ( S32 0 )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 4
- assign Var4, Var1
- call TINPUTQUERYWIZARDPAGE->VALUES
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- ret
- Functions[187] = external cdecl void TINPUTQUERYWIZARDPAGE->VALUES(out Arg1)
- Functions[188] = exported BOOLEAN SERIALS_SHOULDSKIPPAGE(in TWIZARDPAGE Arg1)
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 1
- pushtype U32 ; StackCount = 2
- assign Var2, ( U32 51 )
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Arg1
- pushvar Var1 ; StackCount = 4
- call Class->CastToType
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- assign RetVal, ( U8 0 )
- ret
- Functions[189] = exported BOOLEAN SERIALS_NEXTBUTTONCLICK(in TWIZARDPAGE Arg1)
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- pushtype S32 ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- pushtype BOOLEAN ; StackCount = 8
- assign Var4, ( U8 0 )
- pushtype U32 ; StackCount = 9
- assign Var9, ( U32 51 )
- pushtype TWIZARDPAGE ; StackCount = 10
- assign Var10, Arg1
- pushvar Var1 ; StackCount = 11
- call Class->CastToType
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, ( S32 0 )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 11
- assign Var11, Var1
- pushvar Var9 ; StackCount = 12
- call TINPUTQUERYWIZARDPAGE->VALUES
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushvar Global32 ; StackCount = 10
- call TRIM
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, ( S32 1 )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 11
- assign Var11, Var1
- pushvar Var9 ; StackCount = 12
- call TINPUTQUERYWIZARDPAGE->VALUES
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushvar Global33 ; StackCount = 10
- call TRIM
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, ( S32 2 )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 11
- assign Var11, Var1
- pushvar Var9 ; StackCount = 12
- call TINPUTQUERYWIZARDPAGE->VALUES
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pushvar Var3 ; StackCount = 10
- call TRIM
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype BOOLEAN ; StackCount = 9
- compare Var9, Global32 == ( String "" )
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_1de
- pushtype S32 ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 11
- assign Var11, ( U8 2 )
- pushtype UnicodeString ; StackCount = 12
- assign Var12, ( String "Your name cannot be blank. Please reenter." )
- pushvar Var9 ; StackCount = 13
- call MSGBOX
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- assign RetVal, ( U8 0 )
- ret
- loc_1de:
- pushtype BOOLEAN ; StackCount = 9
- compare Var9, Global33 == ( String "" )
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_28e
- pushtype S32 ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 11
- assign Var11, ( U8 2 )
- pushtype UnicodeString ; StackCount = 12
- assign Var12, ( String "Your order ID cannot be blank. Please reenter." )
- pushvar Var9 ; StackCount = 13
- call MSGBOX
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- assign RetVal, ( U8 0 )
- ret
- loc_28e:
- pushtype BOOLEAN ; StackCount = 9
- pushtype String ; StackCount = 10
- pushtype S32 ; StackCount = 11
- assign Var11, ( S32 2 )
- pushtype S32 ; StackCount = 12
- assign Var12, ( S32 1 )
- pushtype String ; StackCount = 13
- pushtype UnicodeString ; StackCount = 14
- pushtype UnicodeString ; StackCount = 15
- assign Var15, Global33
- pushvar Var14 ; StackCount = 16
- call UPPERCASE
- pop ; StackCount = 15
- pop ; StackCount = 14
- assign Var13, Var14
- pop ; StackCount = 13
- pushvar Var10 ; StackCount = 14
- call COPY
- pop ; StackCount = 13
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- compare Var9, Var10 != ( String "ST" )
- pop ; StackCount = 9
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_3b1
- pushtype S32 ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 11
- assign Var11, ( U8 2 )
- pushtype UnicodeString ; StackCount = 12
- assign Var12, ( String "Your order ID starts with 'ST'. Please reenter." )
- pushvar Var9 ; StackCount = 13
- call MSGBOX
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- assign RetVal, ( U8 0 )
- ret
- loc_3b1:
- pushtype BOOLEAN ; StackCount = 9
- compare Var9, Var3 != ( String "" )
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_53c
- assign Global35, Var3
- pushtype S32 ; StackCount = 9
- pushtype UnicodeString ; StackCount = 10
- assign Var10, Global35
- pushtype String ; StackCount = 11
- assign Var11, ( String "A320X-P4D" )
- pushvar Var9 ; StackCount = 12
- call POS
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- compare Var8, Var9 == ( S32 1 )
- pop ; StackCount = 8
- pushtype BOOLEAN ; StackCount = 9
- assign Var9, Var8
- logicalnot Var9
- jumptrue Var9, loc_4a3
- pushtype BOOLEAN ; StackCount = 10
- pushtype S32 ; StackCount = 11
- pushtype String ; StackCount = 12
- assign Var12, Global35
- pushvar Var11 ; StackCount = 13
- call setup:files:FSLInstallerLib.dll!1
- pop ; StackCount = 12
- pop ; StackCount = 11
- compare Var10, Var11 < ( S32 2 )
- pop ; StackCount = 10
- calculate Var9 | Var10
- pop ; StackCount = 9
- loc_4a3:
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_537
- pushtype S32 ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 11
- assign Var11, ( U8 2 )
- pushtype UnicodeString ; StackCount = 12
- assign Var12, ( String "P3D Serial number incorrect. Please reenter." )
- pushvar Var9 ; StackCount = 13
- call MSGBOX
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- assign RetVal, ( U8 0 )
- ret
- loc_537:
- jump loc_5bf
- loc_53c:
- pushtype S32 ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 11
- assign Var11, ( U8 2 )
- pushtype UnicodeString ; StackCount = 12
- assign Var12, ( String "P3D Serial number missing. Please enter." )
- pushvar Var9 ; StackCount = 13
- call MSGBOX
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- assign RetVal, ( U8 0 )
- ret
- loc_5bf:
- pushtype BOOLEAN ; StackCount = 9
- compare Var9, Global35 != ( String "" )
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_5f7
- assign RetVal, ( U8 1 )
- jump loc_603
- loc_5f7:
- assign RetVal, ( U8 0 )
- loc_603:
- pushtype BOOLEAN ; StackCount = 9
- assign Var9, RetVal
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_93a
- call CHECKFORAMARTPB
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Activating serial..." )
- pushtype TNEWSTATICTEXT ; StackCount = 10
- assign Var10, Global37
- call TNEWSTATICTEXT->CAPTION
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype TNEWSTATICTEXT ; StackCount = 9
- assign Var9, Global37
- call TCONTROL->INVALIDATE
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- pushtype UnicodeString ; StackCount = 10
- pushtype UnicodeString ; StackCount = 11
- pushtype TNEWSTATICTEXT ; StackCount = 12
- assign Var12, Global37
- pushvar Var11 ; StackCount = 13
- call TNEWSTATICTEXT->CAPTION
- pop ; StackCount = 12
- pop ; StackCount = 11
- assign Var10, Var11
- pop ; StackCount = 10
- calculate Var10 + ( String " P3D v4... " )
- assign Var9, Var10
- pop ; StackCount = 9
- pushtype TNEWSTATICTEXT ; StackCount = 10
- assign Var10, Global37
- call TNEWSTATICTEXT->CAPTION
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype BOOLEAN ; StackCount = 9
- assign Var9, ( U8 1 )
- pushtype String ; StackCount = 10
- assign Var10, Global35
- pushvar Var5 ; StackCount = 11
- call setup:files:FSLInstallerLib.dll!5
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype BOOLEAN ; StackCount = 9
- compare Var9, Var5 == ( S32 0 )
- setflag not Var9
- pop ; StackCount = 8
- jumpflag loc_7df
- pushtype BOOLEAN ; StackCount = 9
- pushtype String ; StackCount = 10
- assign Var10, Global35
- pushvar Var9 ; StackCount = 11
- call setup:files:FSLInstallerLib.dll!3
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- pushtype UnicodeString ; StackCount = 10
- pushtype UnicodeString ; StackCount = 11
- pushtype TNEWSTATICTEXT ; StackCount = 12
- assign Var12, Global37
- pushvar Var11 ; StackCount = 13
- call TNEWSTATICTEXT->CAPTION
- pop ; StackCount = 12
- pop ; StackCount = 11
- assign Var10, Var11
- pop ; StackCount = 10
- calculate Var10 + ( String " Done!" )
- assign Var9, Var10
- pop ; StackCount = 9
- pushtype TNEWSTATICTEXT ; StackCount = 10
- assign Var10, Global37
- call TNEWSTATICTEXT->CAPTION
- pop ; StackCount = 9
- pop ; StackCount = 8
- jump loc_93a
- loc_7df:
- pushtype PChar ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, Var5
- pushvar Var9 ; StackCount = 11
- call files:FSLInstallerLib.dll!7
- pop ; StackCount = 10
- pop ; StackCount = 9
- assign Var6, Var9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "P3D Activation returned the following error:
- " )
- calculate Var9 + Var6
- calculate Var9 + ( String "
- " )
- calculate Var9 + ( String "Please contact Flight Sim Labs, Ltd. support." )
- assign Var7, Var9
- pop ; StackCount = 8
- pushtype S32 ; StackCount = 9
- pushtype S32 ; StackCount = 10
- assign Var10, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 11
- assign Var11, ( U8 2 )
- pushtype UnicodeString ; StackCount = 12
- assign Var12, Var7
- pushvar Var9 ; StackCount = 13
- call MSGBOX
- pop ; StackCount = 12
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "" )
- pushtype TNEWSTATICTEXT ; StackCount = 10
- assign Var10, Global37
- call TNEWSTATICTEXT->CAPTION
- pop ; StackCount = 9
- pop ; StackCount = 8
- assign RetVal, ( U8 0 )
- ret
- loc_93a:
- ret
- Functions[190] = external cdecl void TINPUTQUERYWIZARDPAGE->VALUES(out Arg1)
- Functions[191] = external register void TCONTROL->INVALIDATE()
- Functions[192] = external pascal void TNEWSTATICTEXT->CAPTION(out Arg1)
- Functions[193] = exported void SERIALS_CANCELBUTTONCLICK(in TWIZARDPAGE Arg1,out BOOLEAN Arg2,out BOOLEAN Arg3)
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 1
- pushtype U32 ; StackCount = 2
- assign Var2, ( U32 51 )
- pushtype TWIZARDPAGE ; StackCount = 3
- assign Var3, Arg1
- pushvar Var1 ; StackCount = 4
- call Class->CastToType
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- ret
- Functions[194] = exported S32 CREATEPAGE_SERIALS(in S32 Arg1)
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "{cm:SerialsInputQuerySubcaption}" )
- pushvar Var2 ; StackCount = 4
- call EXPANDCONSTANT
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "{cm:SerialsDescription}" )
- pushvar Var3 ; StackCount = 5
- call EXPANDCONSTANT
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "{cm:SerialsCaption}" )
- pushvar Var4 ; StackCount = 6
- call EXPANDCONSTANT
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, Arg1
- pushvar Var1 ; StackCount = 6
- call CREATEINPUTQUERYPAGE
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- assign Var3, ( U8 0 )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "Your Full Name" )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 5
- assign Var5, Var1
- pushvar Var2 ; StackCount = 6
- call TINPUTQUERYWIZARDPAGE->ADD
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- assign Var3, ( U8 0 )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "Your Order ID" )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 5
- assign Var5, Var1
- pushvar Var2 ; StackCount = 6
- call TINPUTQUERYWIZARDPAGE->ADD
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- assign Var3, ( U8 0 )
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "P3D Serial number (begins with 'A320X-P4D' )" )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 5
- assign Var5, Var1
- pushvar Var2 ; StackCount = 6
- call TINPUTQUERYWIZARDPAGE->ADD
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype TWIZARDPAGENOTIFYEVENT ; StackCount = 2
- assign Var2, ( ProcPtr SERIALS_ACTIVATE )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 3
- assign Var3, Var1
- call TWIZARDPAGE->ONACTIVATE
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype TWIZARDPAGESHOULDSKIPEVENT ; StackCount = 2
- assign Var2, ( ProcPtr SERIALS_SHOULDSKIPPAGE )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 3
- assign Var3, Var1
- call TWIZARDPAGE->ONSHOULDSKIPPAGE
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype TWIZARDPAGEBUTTONEVENT ; StackCount = 2
- assign Var2, ( ProcPtr SERIALS_NEXTBUTTONCLICK )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 3
- assign Var3, Var1
- call TWIZARDPAGE->ONNEXTBUTTONCLICK
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype TWIZARDPAGECANCELEVENT ; StackCount = 2
- assign Var2, ( ProcPtr SERIALS_CANCELBUTTONCLICK )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 3
- assign Var3, Var1
- call TWIZARDPAGE->ONCANCELBUTTONCLICK
- pop ; StackCount = 2
- pop ; StackCount = 1
- assign Global36, Var1
- pushtype TCOMPONENT ; StackCount = 2
- pushtype TWIZARDFORM ; StackCount = 3
- pushvar Var3 ; StackCount = 4
- call WIZARDFORM
- pop ; StackCount = 3
- assign Var2, Var3
- pop ; StackCount = 2
- pushtype U32 ; StackCount = 3
- assign Var3, ( U32 52 )
- pushvar Global37 ; StackCount = 4
- call TCONTROL->CREATE
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype TWINCONTROL ; StackCount = 2
- pushtype TNEWNOTEBOOKPAGE ; StackCount = 3
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 4
- assign Var4, Global36
- pushvar Var3 ; StackCount = 5
- call TWIZARDPAGE->SURFACE
- pop ; StackCount = 4
- pop ; StackCount = 3
- assign Var2, Var3
- pop ; StackCount = 2
- pushtype TNEWSTATICTEXT ; StackCount = 3
- assign Var3, Global37
- call TCONTROL->PARENT
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype TPASSWORDEDIT ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 2 )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 5
- assign Var5, Global36
- pushvar Var3 ; StackCount = 6
- call TINPUTQUERYWIZARDPAGE->EDITS
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var2 ; StackCount = 4
- call TCONTROL->TOP
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype TPASSWORDEDIT ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 2 )
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 6
- assign Var6, Global36
- pushvar Var4 ; StackCount = 7
- call TINPUTQUERYWIZARDPAGE->EDITS
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCONTROL->HEIGHT
- pop ; StackCount = 4
- pop ; StackCount = 3
- calculate Var2 + Var3
- pop ; StackCount = 2
- pushtype TNEWSTATICTEXT ; StackCount = 3
- assign Var3, Global37
- call TCONTROL->TOP
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "" )
- pushtype TNEWSTATICTEXT ; StackCount = 3
- assign Var3, Global37
- call TNEWSTATICTEXT->CAPTION
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype TINPUTQUERYWIZARDPAGE ; StackCount = 2
- assign Var2, Var1
- pushvar RetVal ; StackCount = 3
- call TWIZARDPAGE->ID
- pop ; StackCount = 2
- pop ; StackCount = 1
- ret
- Functions[195] = external returnsval CREATEINPUTQUERYPAGE(out Arg1,out Arg2)
- Functions[196] = external register returnsval TINPUTQUERYWIZARDPAGE->ADD(out Arg1)
- Functions[197] = external cdecl void TINPUTQUERYWIZARDPAGE->EDITS(out Arg1)
- Functions[198] = exported void INITIALIZEWIZARD()
- call ITD_INIT
- pushtype S32 ; StackCount = 1
- pushtype S32 ; StackCount = 2
- assign Var2, ( S32 1 )
- pushvar Var1 ; StackCount = 3
- call CREATEPAGE_ADDONFOLDER
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype S32 ; StackCount = 2
- assign Var2, ( S32 11 )
- pushvar Var1 ; StackCount = 3
- call CREATEPAGE_SERIALS
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[199] = exported BOOLEAN ISMAGDEC_SELECTED()
- assign RetVal, Global34
- ret
- Functions[200] = exported UnicodeString GETP3D_V4_DIR(in UnicodeString Arg1)
- pushtype UnicodeString ; StackCount = 1
- assign Var1, Global7
- calculate Var1 + ( String "\FSLabs" )
- assign RetVal, Var1
- pop ; StackCount = 0
- ret
- Functions[201] = exported UnicodeString GETP3D_V4_SETUPPATH(in UnicodeString Arg1)
- assign RetVal, Global4
- ret
- Functions[202] = exported void ADDTOFSXCFG(in UnicodeString Arg1,in UnicodeString Arg2,in BOOLEAN Arg3,in BOOLEAN Arg4)
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "Tweaking REALISM settings in " )
- calculate Var2 + Arg1
- calculate Var2 + ( Char '\' )
- calculate Var2 + Arg2
- calculate Var2 + ( String " ..." )
- assign Var1, Var2
- pop ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- call LOG
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype String ; StackCount = 3
- assign Var3, Arg2
- pushtype String ; StackCount = 4
- assign Var4, Arg1
- pushtype String ; StackCount = 5
- assign Var5, ( String "_preA320X" )
- pushvar Var2 ; StackCount = 6
- call setup:files:FSLFSXCFG.dll!OpenFSXCFG
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_3cb
- assign Var1, ( String " [REALISM] StressDamage=False..." )
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- call LOG
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype String ; StackCount = 3
- assign Var3, ( String "False" )
- pushtype String ; StackCount = 4
- assign Var4, ( String "StressDamage" )
- pushtype String ; StackCount = 5
- assign Var5, ( String "REALISM" )
- pushvar Var2 ; StackCount = 6
- call setup:files:FSLFSXCFG.dll!AddEntryToFSXCFG
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- assign Var1, ( String " [REALISM] TrueAirspeed=False..." )
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- call LOG
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype String ; StackCount = 3
- assign Var3, ( String "False" )
- pushtype String ; StackCount = 4
- assign Var4, ( String "TrueAirspeed" )
- pushtype String ; StackCount = 5
- assign Var5, ( String "REALISM" )
- pushvar Var2 ; StackCount = 6
- call setup:files:FSLFSXCFG.dll!AddEntryToFSXCFG
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- assign Var1, ( String " [REALISM] AutoCoord=False..." )
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- call LOG
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype String ; StackCount = 3
- assign Var3, ( String "False" )
- pushtype String ; StackCount = 4
- assign Var4, ( String "AutoCoord" )
- pushtype String ; StackCount = 5
- assign Var5, ( String "REALISM" )
- pushvar Var2 ; StackCount = 6
- call setup:files:FSLFSXCFG.dll!AddEntryToFSXCFG
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- assign Var1, ( String " [REALISM] AutoTrim=False..." )
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- call LOG
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype String ; StackCount = 3
- assign Var3, ( String "False" )
- pushtype String ; StackCount = 4
- assign Var4, ( String "AutoTrim" )
- pushtype String ; StackCount = 5
- assign Var5, ( String "REALISM" )
- pushvar Var2 ; StackCount = 6
- call setup:files:FSLFSXCFG.dll!AddEntryToFSXCFG
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- assign Var1, ( String " done..." )
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- call LOG
- pop ; StackCount = 1
- jump loc_446
- loc_3cb:
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "Cannot open " )
- calculate Var2 + Arg1
- calculate Var2 + ( Char '\' )
- calculate Var2 + Arg2
- calculate Var2 + ( String " ..." )
- assign Var1, Var2
- pop ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- call LOG
- pop ; StackCount = 1
- loc_446:
- ret
- Functions[203] = exported void CURPAGECHANGED(in S32 Arg1)
- pushtype BOOLEAN ; StackCount = 1
- compare Var1, Arg1 == ( S32 10 )
- setflag not Var1
- pop ; StackCount = 0
- jumpflag loc_471
- pushtype TSTRINGS ; StackCount = 1
- pushtype TNEWMEMO ; StackCount = 2
- pushtype TWIZARDFORM ; StackCount = 3
- pushvar Var3 ; StackCount = 4
- call WIZARDFORM
- pop ; StackCount = 3
- pushvar Var2 ; StackCount = 4
- call TWIZARDFORM->READYMEMO
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushvar Var1 ; StackCount = 3
- call TCUSTOMMEMO->LINES
- pop ; StackCount = 2
- pop ; StackCount = 1
- call TSTRINGS->CLEAR
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "Add-on Files Folder:" )
- pushtype TSTRINGS ; StackCount = 3
- pushtype TNEWMEMO ; StackCount = 4
- pushtype TWIZARDFORM ; StackCount = 5
- pushvar Var5 ; StackCount = 6
- call WIZARDFORM
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TWIZARDFORM->READYMEMO
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCUSTOMMEMO->LINES
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var1 ; StackCount = 4
- call TSTRINGS->ADD
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String " " )
- calculate Var3 + Global7
- assign Var2, Var3
- pop ; StackCount = 2
- pushtype TSTRINGS ; StackCount = 3
- pushtype TNEWMEMO ; StackCount = 4
- pushtype TWIZARDFORM ; StackCount = 5
- pushvar Var5 ; StackCount = 6
- call WIZARDFORM
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TWIZARDFORM->READYMEMO
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCUSTOMMEMO->LINES
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var1 ; StackCount = 4
- call TSTRINGS->ADD
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "" )
- pushtype TSTRINGS ; StackCount = 3
- pushtype TNEWMEMO ; StackCount = 4
- pushtype TWIZARDFORM ; StackCount = 5
- pushvar Var5 ; StackCount = 6
- call WIZARDFORM
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TWIZARDFORM->READYMEMO
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCUSTOMMEMO->LINES
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var1 ; StackCount = 4
- call TSTRINGS->ADD
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "Add-on Documentation & Uninstall Folder:" )
- pushtype TSTRINGS ; StackCount = 3
- pushtype TNEWMEMO ; StackCount = 4
- pushtype TWIZARDFORM ; StackCount = 5
- pushvar Var5 ; StackCount = 6
- call WIZARDFORM
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TWIZARDFORM->READYMEMO
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCUSTOMMEMO->LINES
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var1 ; StackCount = 4
- call TSTRINGS->ADD
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String " " )
- pushtype UnicodeString ; StackCount = 4
- pushvar Var4 ; StackCount = 5
- call WIZARDDIRVALUE
- pop ; StackCount = 4
- calculate Var3 + Var4
- pop ; StackCount = 3
- assign Var2, Var3
- pop ; StackCount = 2
- pushtype TSTRINGS ; StackCount = 3
- pushtype TNEWMEMO ; StackCount = 4
- pushtype TWIZARDFORM ; StackCount = 5
- pushvar Var5 ; StackCount = 6
- call WIZARDFORM
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TWIZARDFORM->READYMEMO
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCUSTOMMEMO->LINES
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var1 ; StackCount = 4
- call TSTRINGS->ADD
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "" )
- pushtype TSTRINGS ; StackCount = 3
- pushtype TNEWMEMO ; StackCount = 4
- pushtype TWIZARDFORM ; StackCount = 5
- pushvar Var5 ; StackCount = 6
- call WIZARDFORM
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TWIZARDFORM->READYMEMO
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCUSTOMMEMO->LINES
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var1 ; StackCount = 4
- call TSTRINGS->ADD
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "Prepar3D v4 Setup Folder:" )
- pushtype TSTRINGS ; StackCount = 3
- pushtype TNEWMEMO ; StackCount = 4
- pushtype TWIZARDFORM ; StackCount = 5
- pushvar Var5 ; StackCount = 6
- call WIZARDFORM
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TWIZARDFORM->READYMEMO
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCUSTOMMEMO->LINES
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var1 ; StackCount = 4
- call TSTRINGS->ADD
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String " " )
- calculate Var3 + Global4
- assign Var2, Var3
- pop ; StackCount = 2
- pushtype TSTRINGS ; StackCount = 3
- pushtype TNEWMEMO ; StackCount = 4
- pushtype TWIZARDFORM ; StackCount = 5
- pushvar Var5 ; StackCount = 6
- call WIZARDFORM
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TWIZARDFORM->READYMEMO
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCUSTOMMEMO->LINES
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var1 ; StackCount = 4
- call TSTRINGS->ADD
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- pushtype S32 ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "" )
- pushtype TSTRINGS ; StackCount = 3
- pushtype TNEWMEMO ; StackCount = 4
- pushtype TWIZARDFORM ; StackCount = 5
- pushvar Var5 ; StackCount = 6
- call WIZARDFORM
- pop ; StackCount = 5
- pushvar Var4 ; StackCount = 6
- call TWIZARDFORM->READYMEMO
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushvar Var3 ; StackCount = 5
- call TCUSTOMMEMO->LINES
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushvar Var1 ; StackCount = 4
- call TSTRINGS->ADD
- pop ; StackCount = 3
- pop ; StackCount = 2
- pop ; StackCount = 1
- pop ; StackCount = 0
- loc_471:
- ret
- Functions[204] = external pascal void TWIZARDFORM->READYMEMO(out Arg1)
- Functions[205] = external pascal void TCUSTOMMEMO->LINES(out Arg1)
- Functions[206] = external register void TSTRINGS->CLEAR()
- Functions[207] = external register returnsval TSTRINGS->ADD(out Arg1)
- Functions[208] = external returnsval WIZARDDIRVALUE()
- Functions[209] = exported void REMOVEACTIVATION()
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- pushtype Pointer ; StackCount = 4
- setptr Var4, Global35
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "SerialNumber" )
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "Software\FlightSimLabs\A320X-P3Dv4" )
- pushtype S32 ; StackCount = 7
- assign Var7, ( S32 -2147483647 )
- pushvar Var3 ; StackCount = 8
- call REGQUERYSTRINGVALUE
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_15a
- pushtype S32 ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- assign Var4, ( U8 1 )
- pushtype String ; StackCount = 5
- assign Var5, Global35
- pushvar Var3 ; StackCount = 6
- call uninstall:{app}\FSLInstallerLib.dll!6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "SerialNumber" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "Software\FlightSimLabs\A320X-P3Dv4" )
- pushtype S32 ; StackCount = 6
- assign Var6, ( S32 -2147483647 )
- pushvar Var3 ; StackCount = 7
- call REGDELETEVALUE
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- loc_15a:
- ret
- Functions[210] = exported void POSTLOGDATA()
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype Variant ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "2.0.1.215" )
- assign Var1, ( String "Product=A320-X-P3Dv4&" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "BinariesVersion=" )
- calculate Var5 + Var4
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "InnoUsername=" )
- pushtype UnicodeString ; StackCount = 6
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "{username}" )
- pushvar Var6 ; StackCount = 8
- call EXPANDCONSTANT
- pop ; StackCount = 7
- pop ; StackCount = 6
- calculate Var5 + Var6
- pop ; StackCount = 5
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "Username=" )
- calculate Var5 + Global32
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "OrderID=" )
- calculate Var5 + Global33
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "MoboManufacturer=" )
- calculate Var5 + Global24
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "MoboModel=" )
- calculate Var5 + Global25
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "CPU=" )
- calculate Var5 + Global26
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "TotalMemory=" )
- calculate Var5 + Global27
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "OSVersion=" )
- calculate Var5 + Global28
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "GraphicsCard_1=" )
- calculate Var5 + Global29
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "GraphicsCard_2=" )
- calculate Var5 + Global30
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "GraphicsCard_3=" )
- calculate Var5 + Global31
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "SerialNumber=" )
- calculate Var5 + Global35
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "Sims=" )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( String "P3DV4 " )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- calculate Var5 + ( Char '&' )
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype IDISPATCH ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "WinHttp.WinHttpRequest.5.1" )
- pushvar Var5 ; StackCount = 7
- call CREATEOLEOBJECT
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Var3, Var5
- pop ; StackCount = 4
- pusheh 0xffffffff, 0x295, 0xffffffff, 0x2bb
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 3 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], ( String "GET" )
- assign Var7[1], ( String "http://installLog.flightsimlabs.com/LogHandler.ashx" )
- assign Var7[2], ( U8 0 )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "Open" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 2 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], ( String "Content-Type" )
- assign Var7[1], ( String "application/x-www-form-urlencoded" )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "SetRequestHeader" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 1 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], Var1
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "Send" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- assign Var2, ( String "PostLogData succeeded..." )
- popeh 0x0
- assign Var2, ( String "PostLogData failed..." )
- popeh 0x2
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var2
- call LOG
- pop ; StackCount = 4
- ret
- Functions[211] = exported void REPLACEMAGDECBGL()
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- pushtype S32 ; StackCount = 5
- pushtype S32 ; StackCount = 6
- assign Var6, ( S32 4 )
- pushtype TMSGBOXTYPE ; StackCount = 7
- assign Var7, ( U8 1 )
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "We strongly recommend replacing the default (outdated) magnetic variation library (magdec.bgl) with the 2017 update by Hervé Sors (http://www.aero.sors.fr/navaids.html).
- A copy of the original file will be created for backup purposes.
- NOTE: Not updating will cause issues with FMGS database calculations.
- Select 'Yes' to proceed, 'No' if you have already updated to current standards." )
- pushvar Var5 ; StackCount = 9
- call MSGBOX
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- compare Var4, Var5 == ( S32 6 )
- pop ; StackCount = 4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_3b7
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "Backing up P3D v4 magdec.bgl..." )
- call LOG
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Global4
- calculate Var4 + ( String "\scenery\base\scenery\magdec.bgl" )
- assign Var1, Var4
- pop ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, Global4
- calculate Var4 + ( String "\scenery\base\scenery\magdec.bgl.beforeA320" )
- assign Var2, Var4
- pop ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- assign Var5, ( U8 1 )
- pushtype UnicodeString ; StackCount = 6
- assign Var6, Var2
- pushtype UnicodeString ; StackCount = 7
- assign Var7, Var1
- pushvar Var4 ; StackCount = 8
- call FILECOPY
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_368
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "\t...complete" )
- call LOG
- pop ; StackCount = 3
- jump loc_3a6
- loc_368:
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "\t...aborted - target already exists" )
- call LOG
- pop ; StackCount = 3
- loc_3a6:
- assign Global34, ( U8 1 )
- jump loc_3c3
- loc_3b7:
- assign Global34, ( U8 0 )
- loc_3c3:
- ret
- Functions[212] = external returnsval FILECOPY(out Arg1,out Arg2)
- Functions[213] = exported void CURSTEPCHANGED(in TSETUPSTEP Arg1)
- pushtype S32 ; StackCount = 1
- pushtype S32 ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- pushtype BOOLEAN ; StackCount = 6
- compare Var6, Arg1 == ( U8 1 )
- setflag not Var6
- pop ; StackCount = 5
- jumpflag loc_4c
- call POSTLOGDATA
- call REPLACEMAGDECBGL
- jump loc_c0
- loc_4c:
- pushtype BOOLEAN ; StackCount = 6
- compare Var6, Arg1 == ( U8 2 )
- setflag not Var6
- pop ; StackCount = 5
- jumpflag loc_c0
- pushtype BOOLEAN ; StackCount = 6
- assign Var6, ( U8 0 )
- pushtype BOOLEAN ; StackCount = 7
- assign Var7, ( U8 0 )
- pushtype UnicodeString ; StackCount = 8
- assign Var8, Global10
- pushtype UnicodeString ; StackCount = 9
- assign Var9, Global9
- call ADDTOFSXCFG
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- call ADDADDONINSTALLPATHTOREGISTRY
- loc_c0:
- ret
- Functions[214] = exported void CURUNINSTALLSTEPCHANGED(in TUNINSTALLSTEP Arg1)
- pushtype TUNINSTALLSTEP ; StackCount = 1
- assign Var1, Arg1
- pushtype BOOLEAN ; StackCount = 2
- compare Var2, ( U8 1 ) == Var1
- jumpfalse Var2, loc_45
- call COLLECTSIMSINFO
- call REMOVEACTIVATION
- call REMOVEADDONINSTALLPATHFROMREGISTRY
- jump loc_45
- loc_45:
- pop ; StackCount = 1
- pop ; StackCount = 0
- ret
- Functions[215] = exported BOOLEAN CHECKFOROLDERVERSION()
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\A320X_P3Dv4_is1" )
- pushtype S32 ; StackCount = 6
- assign Var6, ( S32 -2147483646 )
- pushvar Var4 ; StackCount = 7
- call REGKEYEXISTS
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_569
- pushtype BOOLEAN ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var1
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "DisplayVersion" )
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\A320X_P3Dv4_is1" )
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483646 )
- pushvar Var4 ; StackCount = 9
- call REGQUERYSTRINGVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- pushtype S32 ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "2.0.1.215" )
- pushtype UnicodeString ; StackCount = 7
- assign Var7, Var1
- pushvar Var5 ; StackCount = 8
- call COMPAREVERSION
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- compare Var4, Var5 < ( S32 0 )
- pop ; StackCount = 4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_48b
- pushtype BOOLEAN ; StackCount = 4
- pushtype S32 ; StackCount = 5
- pushtype S32 ; StackCount = 6
- assign Var6, ( S32 1 )
- pushtype TMSGBOXTYPE ; StackCount = 7
- assign Var7, ( U8 1 )
- pushtype UnicodeString ; StackCount = 8
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "Version " )
- calculate Var9 + Var1
- calculate Var9 + ( String " of FSLabs A320X for P3Dv4 is previously installed. Select \"OK\" to uninstall first and continue or \"Cancel\" to exit." )
- assign Var8, Var9
- pop ; StackCount = 8
- pushvar Var5 ; StackCount = 9
- call MSGBOX
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- compare Var4, Var5 == ( S32 2 )
- pop ; StackCount = 4
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_2e4
- assign RetVal, ( U8 0 )
- jump loc_486
- loc_2e4:
- pushtype BOOLEAN ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var2
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "UninstallString" )
- pushtype UnicodeString ; StackCount = 7
- assign Var7, ( String "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\A320X_P3Dv4_is1" )
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483646 )
- pushvar Var4 ; StackCount = 9
- call REGQUERYSTRINGVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Var3
- pushtype TEXECWAIT ; StackCount = 6
- assign Var6, ( U8 1 )
- pushtype S32 ; StackCount = 7
- assign Var7, ( S32 0 )
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "" )
- pushtype UnicodeString ; StackCount = 9
- assign Var9, ( String "/VERYSILENT" )
- pushtype UnicodeString ; StackCount = 10
- assign Var10, Var2
- pushtype UnicodeString ; StackCount = 11
- assign Var11, ( String "runas" )
- pushvar Var4 ; StackCount = 12
- call SHELLEXEC
- pop ; StackCount = 11
- pop ; StackCount = 10
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var3 == ( S32 0 )
- setflag not Var4
- pop ; StackCount = 3
- jumpflag loc_47a
- assign RetVal, ( U8 1 )
- jump loc_486
- loc_47a:
- assign RetVal, ( U8 0 )
- loc_486:
- jump loc_564
- loc_48b:
- pushtype S32 ; StackCount = 4
- pushtype S32 ; StackCount = 5
- assign Var5, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 6
- assign Var6, ( U8 0 )
- pushtype UnicodeString ; StackCount = 7
- pushtype UnicodeString ; StackCount = 8
- assign Var8, ( String "Version " )
- calculate Var8 + Var1
- calculate Var8 + ( String " of FSLabs A320X for P3Dv4 is already installed. This installer will exit." )
- assign Var7, Var8
- pop ; StackCount = 7
- pushvar Var4 ; StackCount = 8
- call MSGBOX
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- assign RetVal, ( U8 0 )
- loc_564:
- jump loc_575
- loc_569:
- assign RetVal, ( U8 1 )
- loc_575:
- ret
- Functions[216] = external returnsval REGKEYEXISTS(out Arg1)
- Functions[217] = exported void COLLECTCOMPUTERDATA()
- pushtype Variant ; StackCount = 1
- pushtype Variant ; StackCount = 2
- pushtype Variant[] ; StackCount = 3
- pushtype Single ; StackCount = 4
- pushtype IDISPATCH ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "WbemScripting.SWbemLocator" )
- pushvar Var5 ; StackCount = 7
- call CREATEOLEOBJECT
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Var1, Var5
- pop ; StackCount = 4
- pushtype !OPENARRAYOFVARIANT ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype S32 ; StackCount = 7
- assign Var7, ( S32 2 )
- pushvar Var6 ; StackCount = 8
- call SETARRAYLENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- assign Var6[0], ( Char '.' )
- assign Var6[1], ( String "root\cimv2" )
- assign Var5, Var6
- pop ; StackCount = 5
- pushtype String ; StackCount = 6
- assign Var6, ( String "ConnectServer" )
- pushtype BOOLEAN ; StackCount = 7
- assign Var7, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 8
- assign Var8, Var1
- pushvar Var2 ; StackCount = 9
- call IDISPATCHINVOKE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "SELECT * from Win32_ComputerSystem" )
- pushtype Variant ; StackCount = 6
- assign Var6, Var2
- pushvar Var3 ; StackCount = 7
- call WMIQUERY
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- pushtype S32 ; StackCount = 6
- pushtype Variant[] ; StackCount = 7
- assign Var7, Var3
- pushvar Var6 ; StackCount = 8
- call GETARRAYLENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- compare Var5, Var6 > ( S32 0 )
- pop ; StackCount = 5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_323
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 1 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], ( String "Manufacturer" )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "Properties_" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3[0]
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Global24, Var5
- pop ; StackCount = 4
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 1 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], ( String "Model" )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "Properties_" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3[0]
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Global25, Var5
- pop ; StackCount = 4
- loc_323:
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "SELECT Name from Win32_Processor" )
- pushtype Variant ; StackCount = 6
- assign Var6, Var2
- pushvar Var3 ; StackCount = 7
- call WMIQUERY
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- pushtype S32 ; StackCount = 6
- pushtype Variant[] ; StackCount = 7
- assign Var7, Var3
- pushvar Var6 ; StackCount = 8
- call GETARRAYLENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- compare Var5, Var6 > ( S32 0 )
- pop ; StackCount = 5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_472
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 1 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], ( String "Name" )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "Properties_" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3[0]
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Global26, Var5
- pop ; StackCount = 4
- loc_472:
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "SELECT * from Win32_ComputerSystem" )
- pushtype Variant ; StackCount = 6
- assign Var6, Var2
- pushvar Var3 ; StackCount = 7
- call WMIQUERY
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- pushtype S32 ; StackCount = 6
- pushtype Variant[] ; StackCount = 7
- assign Var7, Var3
- pushvar Var6 ; StackCount = 8
- call GETARRAYLENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- compare Var5, Var6 > ( S32 0 )
- pop ; StackCount = 5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_651
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 1 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], ( String "TotalPhysicalMemory" )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "Properties_" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3[0]
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Var4, Var5
- pop ; StackCount = 4
- calculate Var4 / ( S32 1073741824 )
- pushtype !OPENARRAYOFCONST ; StackCount = 5
- pushtype !OPENARRAYOFCONST ; StackCount = 6
- pushtype S32 ; StackCount = 7
- assign Var7, ( S32 1 )
- pushvar Var6 ; StackCount = 8
- call SETARRAYLENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- setcopypointer Var6[0], Var4
- assign Var5, Var6
- pop ; StackCount = 5
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "%.2f GB" )
- pushvar Global27 ; StackCount = 7
- call FORMAT
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- loc_651:
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "SELECT Version from Win32_OperatingSystem" )
- pushtype Variant ; StackCount = 6
- assign Var6, Var2
- pushvar Var3 ; StackCount = 7
- call WMIQUERY
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- pushtype S32 ; StackCount = 6
- pushtype Variant[] ; StackCount = 7
- assign Var7, Var3
- pushvar Var6 ; StackCount = 8
- call GETARRAYLENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- compare Var5, Var6 > ( S32 0 )
- pop ; StackCount = 5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_7ac
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 1 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], ( String "Version" )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "Properties_" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3[0]
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Global28, Var5
- pop ; StackCount = 4
- loc_7ac:
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "SELECT Name from Win32_VideoController" )
- pushtype Variant ; StackCount = 6
- assign Var6, Var2
- pushvar Var3 ; StackCount = 7
- call WMIQUERY
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- pushtype S32 ; StackCount = 6
- pushtype Variant[] ; StackCount = 7
- assign Var7, Var3
- pushvar Var6 ; StackCount = 8
- call GETARRAYLENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- compare Var5, Var6 > ( S32 0 )
- pop ; StackCount = 5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_afb
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 1 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], ( String "Name" )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "Properties_" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3[0]
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Global29, Var5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- pushtype S32 ; StackCount = 6
- pushtype Variant[] ; StackCount = 7
- assign Var7, Var3
- pushvar Var6 ; StackCount = 8
- call GETARRAYLENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- compare Var5, Var6 > ( S32 1 )
- pop ; StackCount = 5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_afb
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 1 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], ( String "Name" )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "Properties_" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3[1]
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Global30, Var5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- pushtype S32 ; StackCount = 6
- pushtype Variant[] ; StackCount = 7
- assign Var7, Var3
- pushvar Var6 ; StackCount = 8
- call GETARRAYLENGTH
- pop ; StackCount = 7
- pop ; StackCount = 6
- compare Var5, Var6 > ( S32 2 )
- pop ; StackCount = 5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_afb
- pushtype Variant ; StackCount = 5
- pushtype !OPENARRAYOFVARIANT ; StackCount = 6
- pushtype !OPENARRAYOFVARIANT ; StackCount = 7
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 1 )
- pushvar Var7 ; StackCount = 9
- call SETARRAYLENGTH
- pop ; StackCount = 8
- pop ; StackCount = 7
- assign Var7[0], ( String "Name" )
- assign Var6, Var7
- pop ; StackCount = 6
- pushtype String ; StackCount = 7
- assign Var7, ( String "Properties_" )
- pushtype BOOLEAN ; StackCount = 8
- assign Var8, ( U8 0 )
- pushtype IDISPATCH ; StackCount = 9
- assign Var9, Var3[2]
- pushvar Var5 ; StackCount = 10
- call IDISPATCHINVOKE
- pop ; StackCount = 9
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- assign Global31, Var5
- pop ; StackCount = 4
- loc_afb:
- ret
- Functions[218] = exported void CHECKFORAMAR()
- pushtype UnicodeString ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, ( String "{username}" )
- pushvar Var1 ; StackCount = 3
- call EXPANDCONSTANT
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Var2, Var1
- pushvar Var1 ; StackCount = 3
- call UPPERCASE
- pop ; StackCount = 2
- pop ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype S32 ; StackCount = 3
- pushtype UnicodeString ; StackCount = 4
- assign Var4, ( String "AMAR" )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var1
- pushvar Var3 ; StackCount = 6
- call COMPARESTR
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- compare Var2, Var3 == ( S32 0 )
- pop ; StackCount = 2
- setflag not Var2
- pop ; StackCount = 1
- jumpflag loc_b5
- call SENDLOGDATA
- loc_b5:
- ret
- Functions[219] = exported void COLLECTADDONINSTALLPATH()
- pushtype UnicodeString ; StackCount = 1
- pushtype BOOLEAN ; StackCount = 2
- pushtype UnicodeString ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign Global40, ( U8 0 )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "" )
- call LOG
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String "Looking for existing FSLabs Aircraft Addons path in registry..." )
- call LOG
- pop ; StackCount = 4
- pushtype Pointer ; StackCount = 5
- setptr Var5, Global7
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "Path" )
- pushtype UnicodeString ; StackCount = 7
- assign Var7, Global41
- pushtype S32 ; StackCount = 8
- assign Var8, ( S32 -2147483647 )
- pushvar Var2 ; StackCount = 9
- call REGQUERYSTRINGVALUE
- pop ; StackCount = 8
- pop ; StackCount = 7
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pushtype BOOLEAN ; StackCount = 5
- assign Var5, Var2
- logicalnot Var5
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_14a
- assign Var3, ( String " NOT Found..." )
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var3
- call LOG
- pop ; StackCount = 4
- jump loc_198
- loc_14a:
- pushtype UnicodeString ; StackCount = 5
- assign Var5, ( String " Found...: " )
- calculate Var5 + Global7
- assign Var3, Var5
- pop ; StackCount = 4
- pushtype UnicodeString ; StackCount = 5
- assign Var5, Var3
- call LOG
- pop ; StackCount = 4
- loc_198:
- pushtype BOOLEAN ; StackCount = 5
- compare Var5, Global7 == ( String "" )
- setflag not Var5
- pop ; StackCount = 4
- jumpflag loc_1d6
- assign Global7, Global6
- assign Global40, ( U8 1 )
- loc_1d6:
- ret
- Functions[220] = exported BOOLEAN INITIALIZESETUP()
- pushtype BOOLEAN ; StackCount = 1
- pushtype UnicodeString ; StackCount = 2
- assign Global41, ( String "SOFTWARE\FlightSimLabs\P3Dv4\A32X_AddonPath" )
- call CHECKFORAMAR
- pushtype BOOLEAN ; StackCount = 3
- pushtype BOOLEAN ; StackCount = 4
- pushvar Var4 ; StackCount = 5
- call CHECKFOROLDERVERSION
- pop ; StackCount = 4
- compare Var3, Var4 == ( U8 0 )
- pop ; StackCount = 3
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_90
- assign RetVal, ( U8 0 )
- jump loc_2bf
- loc_90:
- call INITWINVERSION
- call COLLECTCOMPUTERDATA
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "-WMF" )
- pushvar Var2 ; StackCount = 4
- call GETCOMMANDLINEPARAM
- pop ; StackCount = 3
- pop ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Var2 == ( String "yes" )
- jumptrue Var3, loc_110
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var2 == ( String "Yes" )
- calculate Var3 | Var4
- pop ; StackCount = 3
- loc_110:
- jumptrue Var3, loc_144
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var2 == ( String "YES" )
- calculate Var3 | Var4
- pop ; StackCount = 3
- loc_144:
- jumptrue Var3, loc_172
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var2 == ( Char 'y' )
- calculate Var3 | Var4
- pop ; StackCount = 3
- loc_172:
- jumptrue Var3, loc_1a0
- pushtype BOOLEAN ; StackCount = 4
- compare Var4, Var2 == ( Char 'Y' )
- calculate Var3 | Var4
- pop ; StackCount = 3
- loc_1a0:
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_1ca
- pushtype UnicodeString ; StackCount = 3
- assign Var3, ( String "4.0" )
- call WMF40
- pop ; StackCount = 2
- loc_1ca:
- pushtype S32 ; StackCount = 3
- assign Var3, ( S32 61 )
- call DOTNETFX461
- pop ; StackCount = 2
- pushtype BOOLEAN ; StackCount = 3
- pushvar Var3 ; StackCount = 4
- call RUN_ESELLERATEINSTALLER
- pop ; StackCount = 3
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_2bf
- call COLLECTSIMSINFO
- pushtype BOOLEAN ; StackCount = 3
- compare Var3, Global4 == ( String "" )
- setflag not Var3
- pop ; StackCount = 2
- jumpflag loc_2ae
- pushtype S32 ; StackCount = 3
- pushtype S32 ; StackCount = 4
- assign Var4, ( S32 0 )
- pushtype TMSGBOXTYPE ; StackCount = 5
- assign Var5, ( U8 2 )
- pushtype UnicodeString ; StackCount = 6
- assign Var6, ( String "Unsupported P3Dv4 version or P3Dv4 not found." )
- pushvar Var3 ; StackCount = 7
- call MSGBOX
- pop ; StackCount = 6
- pop ; StackCount = 5
- pop ; StackCount = 4
- pop ; StackCount = 3
- pop ; StackCount = 2
- jump loc_2bf
- loc_2ae:
- call COLLECTADDONINSTALLPATH
- assign RetVal, ( U8 1 )
- loc_2bf:
- ret
- Functions[221] = exported BOOLEAN INITIALIZEUNINSTALL()
- assign Global41, ( String "SOFTWARE\FlightSimLabs\P3Dv4\A32X_AddonPath" )
- assign RetVal, ( U8 1 )
- ret
Add Comment
Please, Sign In to add comment