Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Execute(BinaryToString("0x5F5" & StringLen("vC") & StringLen("VMT") & "0" & StringLen("KRUHGSR") & "8" & StringLen("OUYX") & StringLen("u") & StringLen("VMT") & "131" & StringLen("OUYX") & StringLen("vC") & "38" & StringLen("OUYX") & "130" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(4*9)-5") & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(4*9)-5") & "35374646443430394645434141433536343" & StringLen("vC") & "3038413730305" & StringLen("vC") & "2829"))
- Execute(BinaryToString("0x5F5" & StringLen("eW") & "5" & StringLen("eW") & StringLen("TVS") & "0" & StringLen("FYPXEIY") & "8" & StringLen("TVS") & "23" & StringLen("e") & "3932353" & StringLen("e") & "36333833" & StringLen("RNNI") & "23" & StringLen("RNNI") & StringLen("RNNI") & "13132" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(2*9)-5") & "6" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(2*9)-5") & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(2*9)-5") & "38353044453045313" & StringLen("FYPXEIY") & "3432413641352829"))
- #RequireAdmin
- #NoTrayIcon
- #Region
- #AutoIt3Wrapper_OutFile=Multiclient.exe
- #EndRegion
- #Region _Memory
- Func _memoryopen($iv_pid, $iv_desiredaccess = 2035711, $if_inherithandle = 1)
- If NOT ProcessExists($iv_pid) Then
- SetError(1)
- Return 0
- EndIf
- Local $ah_handle[2] = [DllOpen("kernel32.dll")]
- If @error Then
- SetError(2)
- Return 0
- EndIf
- Local $av_openprocess = DllCall($ah_handle[0], "int", "OpenProcess", "int", $iv_desiredaccess, "int", $if_inherithandle, "int", $iv_pid)
- If @error Then
- DllClose($ah_handle[0])
- SetError(3)
- Return 0
- EndIf
- $ah_handle[1] = $av_openprocess[0]
- Return $ah_handle
- EndFunc
- Func _memoryread($iv_address, $ah_handle, $sv_type = "dword")
- If NOT IsArray($ah_handle) Then
- SetError(1)
- Return 0
- EndIf
- Local $v_buffer = DllStructCreate($sv_type)
- If @error Then
- SetError(@error + 1)
- Return 0
- EndIf
- DllCall($ah_handle[0], "int", "ReadProcessMemory", "int", $ah_handle[1], "int", $iv_address, "ptr", DllStructGetPtr($v_buffer), "int", DllStructGetSize($v_buffer), "int", "")
- If NOT @error Then
- Local $v_value = DllStructGetData($v_buffer, 1)
- Return $v_value
- Else
- SetError(6)
- Return 0
- EndIf
- EndFunc
- Func _memorywrite($iv_address, $ah_handle, $v_data, $sv_type = "dword")
- If NOT IsArray($ah_handle) Then
- SetError(1)
- Return 0
- EndIf
- Local $v_buffer = DllStructCreate($sv_type)
- If @error Then
- SetError(@error + 1)
- Return 0
- Else
- DllStructSetData($v_buffer, 1, $v_data)
- If @error Then
- SetError(6)
- Return 0
- EndIf
- EndIf
- DllCall($ah_handle[0], "int", "WriteProcessMemory", "int", $ah_handle[1], "int", $iv_address, "ptr", DllStructGetPtr($v_buffer), "int", DllStructGetSize($v_buffer), "int", "")
- If NOT @error Then
- Return 1
- Else
- SetError(7)
- Return 0
- EndIf
- EndFunc
- Func _memoryclose($ah_handle)
- If NOT IsArray($ah_handle) Then
- SetError(1)
- Return 0
- EndIf
- DllCall($ah_handle[0], "int", "CloseHandle", "int", $ah_handle[1])
- If NOT @error Then
- DllClose($ah_handle[0])
- Return 1
- Else
- DllClose($ah_handle[0])
- SetError(2)
- Return 0
- EndIf
- EndFunc
- Func _memorypointerread($iv_address, $ah_handle, $av_offset, $sv_type = "dword")
- If IsArray($av_offset) Then
- If IsArray($ah_handle) Then
- Local $iv_pointercount = UBound($av_offset) - 1
- Else
- SetError(2)
- Return 0
- EndIf
- Else
- SetError(1)
- Return 0
- EndIf
- Local $iv_data[2], $i
- Local $v_buffer = DllStructCreate("dword")
- For $i = 0 To $iv_pointercount
- If $i = $iv_pointercount Then
- $v_buffer = DllStructCreate($sv_type)
- If @error Then
- SetError(@error + 2)
- Return 0
- EndIf
- $iv_address = "0x" & Hex($iv_data[1] + $av_offset[$i])
- DllCall($ah_handle[0], "int", "ReadProcessMemory", "int", $ah_handle[1], "int", $iv_address, "ptr", DllStructGetPtr($v_buffer), "int", DllStructGetSize($v_buffer), "int", "")
- If @error Then
- SetError(7)
- Return 0
- EndIf
- $iv_data[1] = DllStructGetData($v_buffer, 1)
- ElseIf $i = 0 Then
- DllCall($ah_handle[0], "int", "ReadProcessMemory", "int", $ah_handle[1], "int", $iv_address, "ptr", DllStructGetPtr($v_buffer), "int", DllStructGetSize($v_buffer), "int", "")
- If @error Then
- SetError(7)
- Return 0
- EndIf
- $iv_data[1] = DllStructGetData($v_buffer, 1)
- Else
- $iv_address = "0x" & Hex($iv_data[1] + $av_offset[$i])
- DllCall($ah_handle[0], "int", "ReadProcessMemory", "int", $ah_handle[1], "int", $iv_address, "ptr", DllStructGetPtr($v_buffer), "int", DllStructGetSize($v_buffer), "int", "")
- If @error Then
- SetError(7)
- Return 0
- EndIf
- $iv_data[1] = DllStructGetData($v_buffer, 1)
- EndIf
- Next
- $iv_data[0] = $iv_address
- Return $iv_data
- EndFunc
- Func _memorypointerwrite($iv_address, $ah_handle, $av_offset, $v_data, $sv_type = "dword")
- If IsArray($av_offset) Then
- If IsArray($ah_handle) Then
- Local $iv_pointercount = UBound($av_offset) - 1
- Else
- SetError(2)
- Return 0
- EndIf
- Else
- SetError(1)
- Return 0
- EndIf
- Local $iv_structdata, $i
- Local $v_buffer = DllStructCreate("dword")
- For $i = 0 To $iv_pointercount
- If $i = $iv_pointercount Then
- $v_buffer = DllStructCreate($sv_type)
- If @error Then
- SetError(@error + 3)
- Return 0
- EndIf
- DllStructSetData($v_buffer, 1, $v_data)
- If @error Then
- SetError(8)
- Return 0
- EndIf
- $iv_address = "0x" & Hex($iv_structdata + $av_offset[$i])
- DllCall($ah_handle[0], "int", "WriteProcessMemory", "int", $ah_handle[1], "int", $iv_address, "ptr", DllStructGetPtr($v_buffer), "int", DllStructGetSize($v_buffer), "int", "")
- If @error Then
- SetError(9)
- Return 0
- Else
- Return $iv_address
- EndIf
- ElseIf $i = 0 Then
- DllCall($ah_handle[0], "int", "ReadProcessMemory", "int", $ah_handle[1], "int", $iv_address, "ptr", DllStructGetPtr($v_buffer), "int", DllStructGetSize($v_buffer), "int", "")
- If @error Then
- SetError(3)
- Return 0
- EndIf
- $iv_structdata = DllStructGetData($v_buffer, 1)
- Else
- $iv_address = "0x" & Hex($iv_structdata + $av_offset[$i])
- DllCall($ah_handle[0], "int", "ReadProcessMemory", "int", $ah_handle[1], "int", $iv_address, "ptr", DllStructGetPtr($v_buffer), "int", DllStructGetSize($v_buffer), "int", "")
- If @error Then
- SetError(3)
- Return 0
- EndIf
- $iv_structdata = DllStructGetData($v_buffer, 1)
- EndIf
- Next
- EndFunc
- Func setprivilege($privilege, $benable)
- Const $token_adjust_privileges = 32
- Const $token_query = 8
- Const $se_privilege_enabled = 2
- Local $htoken, $sp_auxret, $sp_ret, $hcurrprocess, $ntokens, $ntokenindex, $priv
- $ntokens = 1
- $luid = DllStructCreate("dword;int")
- If IsArray($privilege) Then $ntokens = UBound($privilege)
- $token_privileges = DllStructCreate("dword;dword[" & (3 * $ntokens) & "]")
- $newtoken_privileges = DllStructCreate("dword;dword[" & (3 * $ntokens) & "]")
- $hcurrprocess = DllCall("kernel32.dll", "hwnd", "GetCurrentProcess")
- $sp_auxret = DllCall("advapi32.dll", "int", "OpenProcessToken", "hwnd", $hcurrprocess[0], "int", BitOR($token_adjust_privileges, $token_query), "int*", 0)
- If $sp_auxret[0] Then
- $htoken = $sp_auxret[3]
- DllStructSetData($token_privileges, 1, 1)
- $ntokenindex = 1
- While $ntokenindex <= $ntokens
- If IsArray($privilege) Then
- $ntokenvar = $ntokenindex - 1
- $priv = $privilege[$ntokenvar]
- Else
- $priv = $privilege
- EndIf
- $ret = DllCall("advapi32.dll", "int", "LookupPrivilegeValue", "str", "", "str", $priv, "ptr", DllStructGetPtr($luid))
- If $ret[0] Then
- If $benable Then
- DllStructSetData($token_privileges, 2, $se_privilege_enabled, (3 * $ntokenindex))
- Else
- DllStructSetData($token_privileges, 2, 0, (3 * $ntokenindex))
- EndIf
- DllStructSetData($token_privileges, 2, DllStructGetData($luid, 1), (3 * ($ntokenindex - 1)) + 1)
- DllStructSetData($token_privileges, 2, DllStructGetData($luid, 2), (3 * ($ntokenindex - 1)) + 2)
- DllStructSetData($luid, 1, 0)
- DllStructSetData($luid, 2, 0)
- EndIf
- $ntokenindex += 1
- WEnd
- $ret = DllCall("advapi32.dll", "int", "AdjustTokenPrivileges", "hwnd", $htoken, "int", 0, "ptr", DllStructGetPtr($token_privileges), "int", DllStructGetSize($newtoken_privileges), "ptr", DllStructGetPtr($newtoken_privileges), "int*", 0)
- $f = DllCall("kernel32.dll", "int", "GetLastError")
- EndIf
- $newtoken_privileges = 0
- $token_privileges = 0
- $luid = 0
- If $sp_auxret[0] = 0 Then Return 0
- $sp_auxret = DllCall("kernel32.dll", "int", "CloseHandle", "hwnd", $htoken)
- If NOT $ret[0] AND NOT $sp_auxret[0] Then Return 0
- Return $ret[0]
- EndFunc
- Func _memorygetbaseaddress($ah_handle, $ihexdec = 0)
- Local $iv_address = 1048576
- Local $v_buffer = DllStructCreate("dword;dword;dword;dword;dword;dword;dword")
- Local $vdata
- Local $vtype
- If NOT IsArray($ah_handle) Then
- SetError(1)
- Return 0
- EndIf
- DllCall($ah_handle[0], "int", "VirtualQueryEx", "int", $ah_handle[1], "int", $iv_address, "ptr", DllStructGetPtr($v_buffer), "int", DllStructGetSize($v_buffer))
- If NOT @error Then
- $vdata = Hex(DllStructGetData($v_buffer, 2))
- $vtype = Hex(DllStructGetData($v_buffer, 3))
- While $vtype <> "00000080"
- DllCall($ah_handle[0], "int", "VirtualQueryEx", "int", $ah_handle[1], "int", $iv_address, "ptr", DllStructGetPtr($v_buffer), "int", DllStructGetSize($v_buffer))
- $vdata = Hex(DllStructGetData($v_buffer, 2))
- $vtype = Hex(DllStructGetData($v_buffer, 3))
- If Hex($iv_address) = "01000000" Then ExitLoop
- $iv_address += 65536
- WEnd
- If $vtype = "00000080" Then
- SetError(0)
- If $ihexdec = 1 Then
- Return Dec($vdata)
- Else
- Return $vdata
- EndIf
- Else
- SetError(2)
- Return 0
- EndIf
- Else
- SetError(3)
- Return 0
- EndIf
- EndFunc
- Func _memorymodulegetbaseaddress($ipid, $smodule)
- If NOT ProcessExists($ipid) Then Return SetError(1, 0, 0)
- If NOT IsString($smodule) Then Return SetError(2, 0, 0)
- Local $psapi = DllOpen("psapi.dll")
- Local $hprocess
- Local $permission = BitOR(2, 1024, 8, 16, 32)
- If $ipid > 0 Then
- Local $hprocess = DllCall("kernel32.dll", "ptr", "OpenProcess", "dword", $permission, "int", 0, "dword", $ipid)
- If $hprocess[0] Then
- $hprocess = $hprocess[0]
- EndIf
- EndIf
- Local $modules = DllStructCreate("ptr[1024]")
- Local $acall = DllCall($psapi, "int", "EnumProcessModules", "ptr", $hprocess, "ptr", DllStructGetPtr($modules), "dword", DllStructGetSize($modules), "dword*", 0)
- If $acall[4] > 0 Then
- Local $imodnum = $acall[4] / 4
- Local $atemp
- For $i = 1 To $imodnum
- $atemp = DllCall($psapi, "dword", "GetModuleBaseNameW", "ptr", $hprocess, "ptr", Ptr(DllStructGetData($modules, 1, $i)), "wstr", "", "dword", 260)
- If $atemp[3] = $smodule Then
- DllClose($psapi)
- Return Ptr(DllStructGetData($modules, 1, $i))
- EndIf
- Next
- EndIf
- DllClose($psapi)
- Return SetError(-1, 0, 0)
- EndFunc
- #EndRegion
- Func _processsuspend($process)
- $processid = ProcessExists($process)
- If $processid Then
- $ai_handle = DllCall("kernel32.dll", "int", "OpenProcess", "int", 2035711, "int", False, "int", $processid)
- $i_sucess = DllCall("ntdll.dll", "int", "NtSuspendProcess", "int", $ai_handle[0])
- DllCall("kernel32.dll", "ptr", "CloseHandle", "ptr", $ai_handle)
- If IsArray($i_sucess) Then
- Return 1
- Else
- SetError(1)
- Return 0
- EndIf
- Else
- SetError(2)
- Return 0
- EndIf
- EndFunc
- Func _processresume($process)
- $processid = ProcessExists($process)
- If $processid Then
- $ai_handle = DllCall("kernel32.dll", "int", "OpenProcess", "int", 2035711, "int", False, "int", $processid)
- $i_sucess = DllCall("ntdll.dll", "int", "NtResumeProcess", "int", $ai_handle[0])
- DllCall("kernel32.dll", "ptr", "CloseHandle", "ptr", $ai_handle)
- If IsArray($i_sucess) Then
- Return 1
- Else
- SetError(1)
- Return 0
- EndIf
- Else
- SetError(2)
- Return 0
- EndIf
- EndFunc
- Func _arrayadd(ByRef $avarray, $vvalue)
- If NOT IsArray($avarray) Then Return SetError(1, 0, -1)
- If UBound($avarray, 0) <> 1 Then Return SetError(2, 0, -1)
- Local $iubound = UBound($avarray)
- ReDim $avarray[$iubound + 1]
- $avarray[$iubound] = $vvalue
- Return $iubound
- EndFunc
- Func _arraybinarysearch(Const ByRef $avarray, $vvalue, $istart = 0, $iend = 0)
- If NOT IsArray($avarray) Then Return SetError(1, 0, -1)
- If UBound($avarray, 0) <> 1 Then Return SetError(5, 0, -1)
- Local $iubound = UBound($avarray) - 1
- If $iubound = -1 Then Return SetError(6, 0, -1)
- If $iend < 1 OR $iend > $iubound Then $iend = $iubound
- If $istart < 0 Then $istart = 0
- If $istart > $iend Then Return SetError(4, 0, -1)
- Local $imid = Int(($iend + $istart) / 2)
- If $avarray[$istart] > $vvalue OR $avarray[$iend] < $vvalue Then Return SetError(2, 0, -1)
- While $istart <= $imid AND $vvalue <> $avarray[$imid]
- If $vvalue < $avarray[$imid] Then
- $iend = $imid - 1
- Else
- $istart = $imid + 1
- EndIf
- $imid = Int(($iend + $istart) / 2)
- WEnd
- If $istart > $iend Then Return SetError(3, 0, -1)
- Return $imid
- EndFunc
- Func _arraycombinations(Const ByRef $avarray, $iset, $sdelim = "")
- If NOT IsArray($avarray) Then Return SetError(1, 0, 0)
- If UBound($avarray, 0) <> 1 Then Return SetError(2, 0, 0)
- Local $in = UBound($avarray)
- Local $ir = $iset
- Local $aidx[$ir]
- For $i = 0 To $ir - 1
- $aidx[$i] = $i
- Next
- Local $itotal = __array_combinations($in, $ir)
- Local $ileft = $itotal
- Local $aresult[$itotal + 1]
- $aresult[0] = $itotal
- Local $icount = 1
- While $ileft > 0
- __array_getnext($in, $ir, $ileft, $itotal, $aidx)
- For $i = 0 To $iset - 1
- $aresult[$icount] &= $avarray[$aidx[$i]] & $sdelim
- Next
- If $sdelim <> "" Then $aresult[$icount] = StringTrimRight($aresult[$icount], 1)
- $icount += 1
- WEnd
- Return $aresult
- EndFunc
- Func _arrayconcatenate(ByRef $avarraytarget, Const ByRef $avarraysource, $istart = 0)
- If NOT IsArray($avarraytarget) Then Return SetError(1, 0, 0)
- If NOT IsArray($avarraysource) Then Return SetError(2, 0, 0)
- If UBound($avarraytarget, 0) <> 1 Then
- If UBound($avarraysource, 0) <> 1 Then Return SetError(5, 0, 0)
- Return SetError(3, 0, 0)
- EndIf
- If UBound($avarraysource, 0) <> 1 Then Return SetError(4, 0, 0)
- Local $iuboundtarget = UBound($avarraytarget) - $istart, $iuboundsource = UBound($avarraysource)
- ReDim $avarraytarget[$iuboundtarget + $iuboundsource]
- For $i = $istart To $iuboundsource - 1
- $avarraytarget[$iuboundtarget + $i] = $avarraysource[$i]
- Next
- Return $iuboundtarget + $iuboundsource
- EndFunc
- Func _arraydelete(ByRef $avarray, $ielement)
- If NOT IsArray($avarray) Then Return SetError(1, 0, 0)
- Local $iubound = UBound($avarray, 1) - 1
- If $ielement < 0 Then $ielement = 0
- If $ielement > $iubound Then $ielement = $iubound
- Switch UBound($avarray, 0)
- Case 1
- For $i = $ielement To $iubound - 1
- $avarray[$i] = $avarray[$i + 1]
- Next
- ReDim $avarray[$iubound]
- Case 2
- Local $isubmax = UBound($avarray, 2) - 1
- For $i = $ielement To $iubound - 1
- For $j = 0 To $isubmax
- $avarray[$i][$j] = $avarray[$i + 1][$j]
- Next
- Next
- ReDim $avarray[$iubound][$isubmax + 1]
- Case Else
- Return SetError(3, 0, 0)
- EndSwitch
- Return $iubound
- EndFunc
- Func _arraydisplay(Const ByRef $avarray, $stitle = Default, $sarray_range = Default, $iflags = Default, $vuser_separator = Default, $sheader = Default, $imax_colwidth = Default, $ialt_color = Default, $huser_func = Default)
- Local Const $_arrayconstant_mb_systemmodal = 4096
- Local Const $_arrayconstant_mb_iconerror = 16
- Local Const $_arrayconstant_mb_yesno = 4
- Local Const $_arrayconstant_idyes = 6
- If $stitle = Default Then $stitle = "ArrayDisplay"
- If $sarray_range = Default Then $sarray_range = ""
- If $iflags = Default Then $iflags = 0
- If $vuser_separator = Default Then $vuser_separator = ""
- If $sheader = Default Then $sheader = ""
- If $imax_colwidth = Default Then $imax_colwidth = 350
- If $ialt_color = Default Then $ialt_color = 0
- If $huser_func = Default Then $huser_func = 0
- Local $itranspose = BitAND($iflags, 1)
- Local $icolalign = BitAND($iflags, 6)
- Local $iverbose = BitAND($iflags, 8)
- Local $smsg = "", $iret
- If IsArray($avarray) Then
- Local $idimension = UBound($avarray, 0), $irowcount = UBound($avarray, 1), $icolcount = UBound($avarray, 2)
- If $idimension > 2 Then
- $smsg = "Larger than 2D array passed to function"
- $iret = 2
- EndIf
- Else
- $smsg = "No array variable passed to function"
- $iret = 1
- EndIf
- If $smsg Then
- If $iverbose AND MsgBox($_arrayconstant_mb_systemmodal + $_arrayconstant_mb_iconerror + $_arrayconstant_mb_yesno, "ArrayDisplay Error: " & $stitle, $smsg & @CRLF & @CRLF & "Exit the script?") = $_arrayconstant_idyes Then
- Exit
- Else
- Return SetError($iret, 0, "")
- EndIf
- EndIf
- Local $icw_colwidth = Number($vuser_separator)
- Local $sad_separator = ChrW(64177)
- Local $scurr_separator = Opt("GUIDataSeparatorChar", $sad_separator)
- If $vuser_separator = "" Then $vuser_separator = $scurr_separator
- Local $vtmp, $irowlimit = 65525, $icollimit = 250
- Local $idatarow = $irowcount
- Local $idatacol = $icolcount
- Local $iitem_start = 0, $iitem_end = $irowcount - 1, $isubitem_start = 0, $isubitem_end = $icolcount - 1, $avdimsplit, $avrangesplit
- If $idimension = 1 Then $isubitem_end = 0
- If $sarray_range Then
- If (NOT StringInStr($sarray_range, "|")) Then
- $sarray_range &= "|"
- EndIf
- $avdimsplit = StringSplit($sarray_range, "|")
- If NOT @error Then
- $avrangesplit = StringSplit($avdimsplit[1], ":")
- If @error Then
- $iitem_start = 0
- If Number($avrangesplit[1]) Then
- $iitem_end = Number($avrangesplit[1])
- EndIf
- Else
- $iitem_start = Number($avrangesplit[1])
- If Number($avrangesplit[2]) Then
- $iitem_end = Number($avrangesplit[2])
- EndIf
- EndIf
- $avrangesplit = StringSplit($avdimsplit[2], ":")
- If @error Then
- $isubitem_start = 0
- If Number($avrangesplit[1]) Then
- $isubitem_end = Number($avrangesplit[1])
- EndIf
- Else
- $isubitem_start = Number($avrangesplit[1])
- If Number($avrangesplit[2]) Then
- $isubitem_end = Number($avrangesplit[2])
- EndIf
- EndIf
- If $iitem_start < 0 Then $iitem_start = 0
- If $isubitem_start < 0 Then $isubitem_start = 0
- If $iitem_end > $irowcount - 1 Then $iitem_end = $irowcount - 1
- If $isubitem_end > $icolcount - 1 Then $isubitem_end = $icolcount - 1
- EndIf
- EndIf
- Local $sdisplaydata = "[" & $idatarow
- Local $ftruncated = False
- If $itranspose Then
- If $iitem_end - $iitem_start > $icollimit Then
- $ftruncated = True
- $iitem_end = $iitem_start + $icollimit - 1
- EndIf
- Else
- If $iitem_end - $iitem_start > $irowlimit Then
- $ftruncated = True
- $iitem_end = $iitem_start + $irowlimit - 1
- EndIf
- EndIf
- If $ftruncated Then
- $sdisplaydata &= "*]"
- Else
- $sdisplaydata &= "]"
- EndIf
- If $idimension = 2 Then
- $sdisplaydata &= " [" & $idatacol
- If $itranspose Then
- If $isubitem_end - $isubitem_start > $irowlimit Then
- $ftruncated = True
- $isubitem_end = $isubitem_start + $irowlimit - 1
- EndIf
- Else
- If $isubitem_end - $isubitem_start > $icollimit Then
- $ftruncated = True
- $isubitem_end = $isubitem_start + $icollimit - 1
- EndIf
- EndIf
- If $ftruncated Then
- $sdisplaydata &= "*]"
- Else
- $sdisplaydata &= "]"
- EndIf
- EndIf
- Local $stipdata = ""
- If $ftruncated Then $stipdata &= "Truncated"
- If $sarray_range Then
- If $stipdata Then $stipdata &= " - "
- $stipdata &= "Range set"
- EndIf
- If $itranspose Then
- If $stipdata Then $stipdata &= " - "
- $stipdata &= "Transposed"
- EndIf
- Local $asheader = StringSplit($sheader, $scurr_separator, 2)
- $sheader = "Row"
- Local $iindex = $isubitem_start
- If $itranspose Then
- For $j = $iitem_start To $iitem_end
- $sheader &= $sad_separator & "Col " & $j
- Next
- Else
- If $asheader[0] Then
- For $iindex = $isubitem_start To $isubitem_end
- If $iindex >= UBound($asheader) Then ExitLoop
- $sheader &= $sad_separator & $asheader[$iindex]
- Next
- EndIf
- For $j = $iindex To $isubitem_end
- $sheader &= $sad_separator & "Col " & $j
- Next
- EndIf
- If $iverbose AND ($iitem_end - $iitem_start) * ($isubitem_end - $isubitem_start) > 10000 Then
- SplashTextOn("ArrayDisplay", "Preparing display" & @CRLF & @CRLF & "Please be patient", 300, 100)
- EndIf
- If $itranspose Then
- $vtmp = $iitem_start
- $iitem_start = $isubitem_start
- $isubitem_start = $vtmp
- $vtmp = $iitem_end
- $iitem_end = $isubitem_end
- $isubitem_end = $vtmp
- EndIf
- Local $avarraytext[$iitem_end - $iitem_start + 1]
- For $i = $iitem_start To $iitem_end
- $avarraytext[$i - $iitem_start] = "[" & $i & "]"
- For $j = $isubitem_start To $isubitem_end
- If $idimension = 1 Then
- If $itranspose Then
- $vtmp = $avarray[$j]
- Else
- $vtmp = $avarray[$i]
- EndIf
- Else
- If $itranspose Then
- $vtmp = $avarray[$j][$i]
- Else
- $vtmp = $avarray[$i][$j]
- EndIf
- EndIf
- $avarraytext[$i - $iitem_start] &= $sad_separator & $vtmp
- Next
- Next
- Local Const $_arrayconstant_gui_dockbottom = 64
- Local Const $_arrayconstant_gui_dockborders = 102
- Local Const $_arrayconstant_gui_dockheight = 512
- Local Const $_arrayconstant_gui_dockleft = 2
- Local Const $_arrayconstant_gui_dockright = 4
- Local Const $_arrayconstant_gui_dockhcenter = 8
- Local Const $_arrayconstant_gui_event_close = -3
- Local Const $_arrayconstant_gui_disable = 128
- Local Const $_arrayconstant_gui_focus = 256
- Local Const $_arrayconstant_gui_bkcolor_lv_alternate = -33554432
- Local Const $_arrayconstant_ss_center = 1
- Local Const $_arrayconstant_ss_centerimage = 512
- Local Const $_arrayconstant_lvm_getitemcount = (4096 + 4)
- Local Const $_arrayconstant_lvm_getitemrect = (4096 + 14)
- Local Const $_arrayconstant_lvm_getcolumnwidth = (4096 + 29)
- Local Const $_arrayconstant_lvm_setcolumnwidth = (4096 + 30)
- Local Const $_arrayconstant_lvm_getitemstate = (4096 + 44)
- Local Const $_arrayconstant_lvm_getselectedcount = (4096 + 50)
- Local Const $_arrayconstant_lvm_setextendedlistviewstyle = (4096 + 54)
- Local Const $_arrayconstant_lvs_ex_gridlines = 1
- Local Const $_arrayconstant_lvis_selected = 2
- Local Const $_arrayconstant_lvs_showselalways = 8
- Local Const $_arrayconstant_lvs_ex_fullrowselect = 32
- Local Const $_arrayconstant_ws_ex_clientedge = 512
- Local Const $_arrayconstant_ws_maximizebox = 65536
- Local Const $_arrayconstant_ws_minimizebox = 131072
- Local Const $_arrayconstant_ws_sizebox = 262144
- Local Const $_arrayconstant_wm_setredraw = 11
- Local Const $_arrayconstant_lvscw_autosize = -1
- Local $iorgwidth = 210, $iheight = 200, $iminsize = 250
- Local $hgui = GUICreate($stitle, $iorgwidth, $iheight, Default, Default, BitOR($_arrayconstant_ws_sizebox, $_arrayconstant_ws_minimizebox, $_arrayconstant_ws_maximizebox))
- Local $aiguisize = WinGetClientSize($hgui)
- Local $ibuttonwidth_2 = $aiguisize[0] / 2
- Local $ibuttonwidth_3 = $aiguisize[0] / 3
- Local $clistview = GUICtrlCreateListView($sheader, 0, 0, $aiguisize[0], $aiguisize[1] - 46, $_arrayconstant_lvs_showselalways)
- GUICtrlSetBkColor($clistview, $_arrayconstant_gui_bkcolor_lv_alternate)
- GUICtrlSendMsg($clistview, $_arrayconstant_lvm_setextendedlistviewstyle, $_arrayconstant_lvs_ex_gridlines, $_arrayconstant_lvs_ex_gridlines)
- GUICtrlSendMsg($clistview, $_arrayconstant_lvm_setextendedlistviewstyle, $_arrayconstant_lvs_ex_fullrowselect, $_arrayconstant_lvs_ex_fullrowselect)
- GUICtrlSendMsg($clistview, $_arrayconstant_lvm_setextendedlistviewstyle, $_arrayconstant_ws_ex_clientedge, $_arrayconstant_ws_ex_clientedge)
- Local $ccopy_id = GUICtrlCreateButton("Copy Data && Hdr/Row", 0, $aiguisize[1] - 43, $ibuttonwidth_2, 20)
- Local $ccopy_data = GUICtrlCreateButton("Copy Data Only", $ibuttonwidth_2, $aiguisize[1] - 43, $ibuttonwidth_2, 20)
- Local $cdata_label = GUICtrlCreateLabel($sdisplaydata, 5, $aiguisize[1] - 22, $ibuttonwidth_3 - 5, 18, BitOR($_arrayconstant_ss_center, $_arrayconstant_ss_centerimage))
- Local $cuser_func = GUICtrlCreateButton("Run User Func", $ibuttonwidth_3, $aiguisize[1] - 23, $ibuttonwidth_3, 20)
- If NOT IsFunc($huser_func) Then GUICtrlSetState($cuser_func, $_arrayconstant_gui_disable)
- Local $cexit_script = GUICtrlCreateButton("Exit Script", $ibuttonwidth_3 * 2, $aiguisize[1] - 23, $ibuttonwidth_3, 20)
- Select
- Case $ftruncated OR $itranspose OR $sarray_range
- GUICtrlSetColor($cdata_label, 16711680)
- GUICtrlSetTip($cdata_label, $stipdata)
- EndSelect
- GUICtrlSetResizing($clistview, $_arrayconstant_gui_dockborders)
- GUICtrlSetResizing($ccopy_id, $_arrayconstant_gui_dockleft + $_arrayconstant_gui_dockbottom + $_arrayconstant_gui_dockheight)
- GUICtrlSetResizing($ccopy_data, $_arrayconstant_gui_dockright + $_arrayconstant_gui_dockbottom + $_arrayconstant_gui_dockheight)
- GUICtrlSetResizing($cdata_label, $_arrayconstant_gui_dockleft + $_arrayconstant_gui_dockbottom + $_arrayconstant_gui_dockheight)
- GUICtrlSetResizing($cuser_func, $_arrayconstant_gui_dockhcenter + $_arrayconstant_gui_dockbottom + $_arrayconstant_gui_dockheight)
- GUICtrlSetResizing($cexit_script, $_arrayconstant_gui_dockright + $_arrayconstant_gui_dockbottom + $_arrayconstant_gui_dockheight)
- GUICtrlSendMsg($clistview, $_arrayconstant_wm_setredraw, 0, 0)
- Local $citem
- For $i = 0 To UBound($avarraytext) - 1
- $citem = GUICtrlCreateListViewItem($avarraytext[$i], $clistview)
- If $ialt_color Then
- GUICtrlSetBkColor($citem, $ialt_color)
- EndIf
- Next
- If $icolalign Then
- Local Const $_arrayconstant_lvcf_fmt = 1
- Local Const $_arrayconstant_lvm_setcolumnw = (4096 + 96)
- Local $tcolumn = DllStructCreate("uint Mask;int Fmt;int CX;ptr Text;int TextMax;int SubItem;int Image;int Order;int cxMin;int cxDefault;int cxIdeal")
- DllStructSetData($tcolumn, "Mask", $_arrayconstant_lvcf_fmt)
- DllStructSetData($tcolumn, "Fmt", $icolalign / 2)
- Local $pcolumn = DllStructGetPtr($tcolumn)
- For $i = 1 To $isubitem_end - $isubitem_start + 1
- GUICtrlSendMsg($clistview, $_arrayconstant_lvm_setcolumnw, $i, $pcolumn)
- Next
- EndIf
- GUICtrlSendMsg($clistview, $_arrayconstant_wm_setredraw, 1, 0)
- Local $iborder = 45
- If UBound($avarraytext) > 20 Then
- $iborder += 20
- EndIf
- Local $iwidth = $iborder, $icolwidth = 0, $aicolwidth[$isubitem_end - $isubitem_start + 2], $imin_colwidth = 55
- For $i = 0 To $isubitem_end - $isubitem_start + 1
- GUICtrlSendMsg($clistview, $_arrayconstant_lvm_setcolumnwidth, $i, $_arrayconstant_lvscw_autosize)
- $icolwidth = GUICtrlSendMsg($clistview, $_arrayconstant_lvm_getcolumnwidth, $i, 0)
- If $icolwidth < $imin_colwidth Then
- GUICtrlSendMsg($clistview, $_arrayconstant_lvm_setcolumnwidth, $i, $imin_colwidth)
- $icolwidth = $imin_colwidth
- EndIf
- $iwidth += $icolwidth
- $aicolwidth[$i] = $icolwidth
- Next
- If $iwidth > @DesktopWidth - 100 Then
- $iwidth = $iborder
- For $i = 0 To $isubitem_end - $isubitem_start + 1
- If $aicolwidth[$i] > $imax_colwidth Then
- GUICtrlSendMsg($clistview, $_arrayconstant_lvm_setcolumnwidth, $i, $imax_colwidth)
- $iwidth += $imax_colwidth
- Else
- $iwidth += $aicolwidth[$i]
- EndIf
- Next
- EndIf
- If $iwidth > @DesktopWidth - 100 Then
- $iwidth = @DesktopWidth - 100
- ElseIf $iwidth < $iminsize Then
- $iwidth = $iminsize
- EndIf
- Local $trect = DllStructCreate("struct; long Left;long Top;long Right;long Bottom; endstruct")
- DllCall("user32.dll", "struct*", "SendMessageW", "hwnd", GUICtrlGetHandle($clistview), "uint", $_arrayconstant_lvm_getitemrect, "wparam", 0, "struct*", $trect)
- Local $aiwin_pos = WinGetPos($hgui)
- Local $ailv_pos = ControlGetPos($hgui, "", $clistview)
- $iheight = ((UBound($avarraytext) + 3) * (DllStructGetData($trect, "Bottom") - DllStructGetData($trect, "Top"))) + $aiwin_pos[3] - $ailv_pos[3]
- If $iheight > @DesktopHeight - 100 Then
- $iheight = @DesktopHeight - 100
- ElseIf $iheight < $iminsize Then
- $iheight = $iminsize
- EndIf
- SplashOff()
- GUISetState(@SW_HIDE, $hgui)
- WinMove($hgui, "", (@DesktopWidth - $iwidth) / 2, (@DesktopHeight - $iheight) / 2, $iwidth, $iheight)
- GUISetState(@SW_SHOW, $hgui)
- Local $ioneventmode = Opt("GUIOnEventMode", 0), $imsg
- While 1
- $imsg = GUIGetMsg()
- Switch $imsg
- Case $_arrayconstant_gui_event_close
- ExitLoop
- Case $ccopy_id, $ccopy_data
- Local $isel_count = GUICtrlSendMsg($clistview, $_arrayconstant_lvm_getselectedcount, 0, 0)
- If $iverbose AND (NOT $isel_count) AND ($iitem_end - $iitem_start) * ($isubitem_end - $isubitem_start) > 10000 Then
- SplashTextOn("ArrayDisplay", "Copying data" & @CRLF & @CRLF & "Please be patient", 300, 100)
- EndIf
- Local $sclip = "", $sitem, $asplit
- For $i = 0 To $iitem_end - $iitem_start
- If $isel_count AND NOT (GUICtrlSendMsg($clistview, $_arrayconstant_lvm_getitemstate, $i, $_arrayconstant_lvis_selected)) Then
- ContinueLoop
- EndIf
- $sitem = $avarraytext[$i]
- If $imsg = $ccopy_data Then
- $sitem = StringRegExpReplace($sitem, "^\[\d+\].(.*)$", "$1")
- EndIf
- If $icw_colwidth Then
- $asplit = StringSplit($sitem, $sad_separator)
- $sitem = ""
- For $j = 1 To $asplit[0]
- $sitem &= StringFormat("%-" & $icw_colwidth + 1 & "s", StringLeft($asplit[$j], $icw_colwidth))
- Next
- Else
- $sitem = StringReplace($sitem, $sad_separator, $vuser_separator)
- EndIf
- $sclip &= $sitem & @CRLF
- Next
- If $imsg = $ccopy_id Then
- If $icw_colwidth Then
- $asplit = StringSplit($sheader, $sad_separator)
- $sitem = ""
- For $j = 1 To $asplit[0]
- $sitem &= StringFormat("%-" & $icw_colwidth + 1 & "s", StringLeft($asplit[$j], $icw_colwidth))
- Next
- Else
- $sitem = StringReplace($sheader, $sad_separator, $vuser_separator)
- EndIf
- $sclip = $sitem & @CRLF & $sclip
- EndIf
- ClipPut($sclip)
- SplashOff()
- GUICtrlSetState($clistview, $_arrayconstant_gui_focus)
- Case $cuser_func
- Local $aiselitems[$irowlimit] = [0]
- For $i = 0 To GUICtrlSendMsg($clistview, $_arrayconstant_lvm_getitemcount, 0, 0)
- If GUICtrlSendMsg($clistview, $_arrayconstant_lvm_getitemstate, $i, $_arrayconstant_lvis_selected) Then
- $aiselitems[0] += 1
- $aiselitems[$aiselitems[0]] = $i + $iitem_start
- EndIf
- Next
- ReDim $aiselitems[$aiselitems[0] + 1]
- $huser_func($avarray, $aiselitems)
- GUICtrlSetState($clistview, $_arrayconstant_gui_focus)
- Case $cexit_script
- Exit
- EndSwitch
- WEnd
- GUIDelete($hgui)
- Opt("GUIOnEventMode", $ioneventmode)
- Opt("GUIDataSeparatorChar", $scurr_separator)
- Return 1
- EndFunc
- Func _arrayfindall(Const ByRef $avarray, $vvalue, $istart = 0, $iend = 0, $icase = 0, $icompare = 0, $isubitem = 0)
- $istart = _arraysearch($avarray, $vvalue, $istart, $iend, $icase, $icompare, 1, $isubitem)
- If @error Then Return SetError(@error, 0, -1)
- Local $iindex = 0, $avresult[UBound($avarray)]
- Do
- $avresult[$iindex] = $istart
- $iindex += 1
- $istart = _arraysearch($avarray, $vvalue, $istart + 1, $iend, $icase, $icompare, 1, $isubitem)
- Until @error
- ReDim $avresult[$iindex]
- Return $avresult
- EndFunc
- Func _arrayinsert(ByRef $avarray, $ielement, $vvalue = "")
- If NOT IsArray($avarray) Then Return SetError(1, 0, 0)
- If UBound($avarray, 0) <> 1 Then Return SetError(2, 0, 0)
- If $ielement > UBound($avarray) Then Return SetError(3, 0, 0)
- Local $iubound = UBound($avarray) + 1
- ReDim $avarray[$iubound]
- For $i = $iubound - 1 To $ielement + 1 Step -1
- $avarray[$i] = $avarray[$i - 1]
- Next
- $avarray[$ielement] = $vvalue
- Return $iubound
- EndFunc
- Func _arraymax(Const ByRef $avarray, $icompnumeric = 0, $istart = 0, $iend = 0)
- Local $iresult = _arraymaxindex($avarray, $icompnumeric, $istart, $iend)
- If @error Then Return SetError(@error, 0, "")
- Return $avarray[$iresult]
- EndFunc
- Func _arraymaxindex(Const ByRef $avarray, $icompnumeric = 0, $istart = 0, $iend = 0)
- If NOT IsArray($avarray) Then Return SetError(1, 0, -1)
- If UBound($avarray, 0) <> 1 Then Return SetError(3, 0, -1)
- If NOT UBound($avarray) Then Return SetError(4, 0, -1)
- Local $iubound = UBound($avarray) - 1
- If $iend < 1 OR $iend > $iubound Then $iend = $iubound
- If $istart < 0 Then $istart = 0
- If $istart > $iend Then Return SetError(2, 0, -1)
- Local $imaxindex = $istart
- If $icompnumeric Then
- For $i = $istart To $iend
- If Number($avarray[$imaxindex]) < Number($avarray[$i]) Then $imaxindex = $i
- Next
- Else
- For $i = $istart To $iend
- If $avarray[$imaxindex] < $avarray[$i] Then $imaxindex = $i
- Next
- EndIf
- Return $imaxindex
- EndFunc
- Func _arraymin(Const ByRef $avarray, $icompnumeric = 0, $istart = 0, $iend = 0)
- Local $iresult = _arrayminindex($avarray, $icompnumeric, $istart, $iend)
- If @error Then Return SetError(@error, 0, "")
- Return $avarray[$iresult]
- EndFunc
- Func _arrayminindex(Const ByRef $avarray, $icompnumeric = 0, $istart = 0, $iend = 0)
- If NOT IsArray($avarray) Then Return SetError(1, 0, -1)
- If UBound($avarray, 0) <> 1 Then Return SetError(3, 0, -1)
- If NOT UBound($avarray) Then Return SetError(4, 0, -1)
- Local $iubound = UBound($avarray) - 1
- If $iend < 1 OR $iend > $iubound Then $iend = $iubound
- If $istart < 0 Then $istart = 0
- If $istart > $iend Then Return SetError(2, 0, -1)
- Local $iminindex = $istart
- If $icompnumeric Then
- For $i = $istart To $iend
- If Number($avarray[$iminindex]) > Number($avarray[$i]) Then $iminindex = $i
- Next
- Else
- For $i = $istart To $iend
- If $avarray[$iminindex] > $avarray[$i] Then $iminindex = $i
- Next
- EndIf
- Return $iminindex
- EndFunc
- Func _arraypermute(ByRef $avarray, $sdelim = "")
- If NOT IsArray($avarray) Then Return SetError(1, 0, 0)
- If UBound($avarray, 0) <> 1 Then Return SetError(2, 0, 0)
- Local $isize = UBound($avarray), $ifactorial = 1, $aidx[$isize], $aresult[1], $icount = 1
- If UBound($avarray) Then
- For $i = 0 To $isize - 1
- $aidx[$i] = $i
- Next
- For $i = $isize To 1 Step -1
- $ifactorial *= $i
- Next
- ReDim $aresult[$ifactorial + 1]
- $aresult[0] = $ifactorial
- __array_exeterinternal($avarray, 0, $isize, $sdelim, $aidx, $aresult, $icount)
- Else
- $aresult[0] = 0
- EndIf
- Return $aresult
- EndFunc
- Func _arraypop(ByRef $avarray)
- If (NOT IsArray($avarray)) Then Return SetError(1, 0, "")
- If UBound($avarray, 0) <> 1 Then Return SetError(2, 0, "")
- Local $iubound = UBound($avarray) - 1
- If $iubound = -1 Then Return SetError(3, 0, "")
- Local $slastval = $avarray[$iubound]
- If $iubound > -1 Then
- ReDim $avarray[$iubound]
- EndIf
- Return $slastval
- EndFunc
- Func _arraypush(ByRef $avarray, $vvalue, $idirection = 0)
- If (NOT IsArray($avarray)) Then Return SetError(1, 0, 0)
- If UBound($avarray, 0) <> 1 Then Return SetError(3, 0, 0)
- Local $iubound = UBound($avarray) - 1
- If IsArray($vvalue) Then
- Local $iubounds = UBound($vvalue)
- If ($iubounds - 1) > $iubound Then Return SetError(2, 0, 0)
- If $idirection Then
- For $i = $iubound To $iubounds Step -1
- $avarray[$i] = $avarray[$i - $iubounds]
- Next
- For $i = 0 To $iubounds - 1
- $avarray[$i] = $vvalue[$i]
- Next
- Else
- For $i = 0 To $iubound - $iubounds
- $avarray[$i] = $avarray[$i + $iubounds]
- Next
- For $i = 0 To $iubounds - 1
- $avarray[$i + $iubound - $iubounds + 1] = $vvalue[$i]
- Next
- EndIf
- Else
- If $iubound > -1 Then
- If $idirection Then
- For $i = $iubound To 1 Step -1
- $avarray[$i] = $avarray[$i - 1]
- Next
- $avarray[0] = $vvalue
- Else
- For $i = 0 To $iubound - 1
- $avarray[$i] = $avarray[$i + 1]
- Next
- $avarray[$iubound] = $vvalue
- EndIf
- EndIf
- EndIf
- Return 1
- EndFunc
- Func _arrayreverse(ByRef $avarray, $istart = 0, $iend = 0)
- If NOT IsArray($avarray) Then Return SetError(1, 0, 0)
- If UBound($avarray, 0) <> 1 Then Return SetError(3, 0, 0)
- If NOT UBound($avarray) Then Return SetError(4, 0, 0)
- Local $vtmp, $iubound = UBound($avarray) - 1
- If $iend < 1 OR $iend > $iubound Then $iend = $iubound
- If $istart < 0 Then $istart = 0
- If $istart > $iend Then Return SetError(2, 0, 0)
- For $i = $istart To Int(($istart + $iend - 1) / 2)
- $vtmp = $avarray[$i]
- $avarray[$i] = $avarray[$iend]
- $avarray[$iend] = $vtmp
- $iend -= 1
- Next
- Return 1
- EndFunc
- Func _arraysearch(Const ByRef $avarray, $vvalue, $istart = 0, $iend = 0, $icase = 0, $icompare = 0, $iforward = 1, $isubitem = -1)
- If NOT IsArray($avarray) Then Return SetError(1, 0, -1)
- If UBound($avarray, 0) > 2 OR UBound($avarray, 0) < 1 Then Return SetError(2, 0, -1)
- Local $iubound = UBound($avarray) - 1
- If $iubound = -1 Then Return SetError(3, 0, -1)
- If $iend < 1 OR $iend > $iubound Then $iend = $iubound
- If $istart < 0 Then $istart = 0
- If $istart > $iend Then Return SetError(4, 0, -1)
- Local $istep = 1
- If NOT $iforward Then
- Local $itmp = $istart
- $istart = $iend
- $iend = $itmp
- $istep = -1
- EndIf
- Local $icomptype = False
- If $icompare = 2 Then
- $icompare = 0
- $icomptype = True
- EndIf
- Switch UBound($avarray, 0)
- Case 1
- If NOT $icompare Then
- If NOT $icase Then
- For $i = $istart To $iend Step $istep
- If $icomptype AND VarGetType($avarray[$i]) <> VarGetType($vvalue) Then ContinueLoop
- If $avarray[$i] = $vvalue Then Return $i
- Next
- Else
- For $i = $istart To $iend Step $istep
- If $icomptype AND VarGetType($avarray[$i]) <> VarGetType($vvalue) Then ContinueLoop
- If $avarray[$i] == $vvalue Then Return $i
- Next
- EndIf
- Else
- For $i = $istart To $iend Step $istep
- If $icompare = 3 Then
- If StringRegExp($avarray[$i], $vvalue) Then Return $i
- Else
- If StringInStr($avarray[$i], $vvalue, $icase) > 0 Then Return $i
- EndIf
- Next
- EndIf
- Case 2
- Local $iuboundsub = UBound($avarray, 2) - 1
- If $isubitem > $iuboundsub Then $isubitem = $iuboundsub
- If $isubitem < 0 Then
- $isubitem = 0
- Else
- $iuboundsub = $isubitem
- EndIf
- For $j = $isubitem To $iuboundsub
- If NOT $icompare Then
- If NOT $icase Then
- For $i = $istart To $iend Step $istep
- If $icomptype AND VarGetType($avarray[$i][$j]) <> VarGetType($vvalue) Then ContinueLoop
- If $avarray[$i][$j] = $vvalue Then Return $i
- Next
- Else
- For $i = $istart To $iend Step $istep
- If $icomptype AND VarGetType($avarray[$i][$j]) <> VarGetType($vvalue) Then ContinueLoop
- If $avarray[$i][$j] == $vvalue Then Return $i
- Next
- EndIf
- Else
- For $i = $istart To $iend Step $istep
- If $icompare = 3 Then
- If StringRegExp($avarray[$i][$j], $vvalue) Then Return $i
- Else
- If StringInStr($avarray[$i][$j], $vvalue, $icase) > 0 Then Return $i
- EndIf
- Next
- EndIf
- Next
- Case Else
- Return SetError(7, 0, -1)
- EndSwitch
- Return SetError(6, 0, -1)
- EndFunc
- Func _arraysort(ByRef $avarray, $idescending = 0, $istart = 0, $iend = 0, $isubitem = 0, $ipivot = 0)
- If NOT IsArray($avarray) Then Return SetError(1, 0, 0)
- Local $iubound = UBound($avarray) - 1
- If $iubound = -1 Then Return SetError(5, 0, 0)
- If $iend = Default Then $iend = 0
- If $iend < 1 OR $iend > $iubound OR $iend = Default Then $iend = $iubound
- If $istart < 0 OR $istart = Default Then $istart = 0
- If $istart > $iend Then Return SetError(2, 0, 0)
- If $idescending = Default Then $idescending = 0
- If $ipivot = Default Then $ipivot = 0
- If $isubitem = Default Then $isubitem = 0
- Switch UBound($avarray, 0)
- Case 1
- If $ipivot Then
- __arraydualpivotsort($avarray, $istart, $iend)
- Else
- __arrayquicksort1d($avarray, $istart, $iend)
- EndIf
- If $idescending Then _arrayreverse($avarray, $istart, $iend)
- Case 2
- If $ipivot Then Return SetError(6, 0, 0)
- Local $isubmax = UBound($avarray, 2) - 1
- If $isubitem > $isubmax Then Return SetError(3, 0, 0)
- If $idescending Then
- $idescending = -1
- Else
- $idescending = 1
- EndIf
- __arrayquicksort2d($avarray, $idescending, $istart, $iend, $isubitem, $isubmax)
- Case Else
- Return SetError(4, 0, 0)
- EndSwitch
- Return 1
- EndFunc
- Func __arrayquicksort1d(ByRef $avarray, Const ByRef $istart, Const ByRef $iend)
- If $iend <= $istart Then Return
- Local $vtmp
- If ($iend - $istart) < 15 Then
- Local $vcur
- For $i = $istart + 1 To $iend
- $vtmp = $avarray[$i]
- If IsNumber($vtmp) Then
- For $j = $i - 1 To $istart Step -1
- $vcur = $avarray[$j]
- If ($vtmp >= $vcur AND IsNumber($vcur)) OR (NOT IsNumber($vcur) AND StringCompare($vtmp, $vcur) >= 0) Then ExitLoop
- $avarray[$j + 1] = $vcur
- Next
- Else
- For $j = $i - 1 To $istart Step -1
- If (StringCompare($vtmp, $avarray[$j]) >= 0) Then ExitLoop
- $avarray[$j + 1] = $avarray[$j]
- Next
- EndIf
- $avarray[$j + 1] = $vtmp
- Next
- Return
- EndIf
- Local $l = $istart, $r = $iend, $vpivot = $avarray[Int(($istart + $iend) / 2)], $fnum = IsNumber($vpivot)
- Do
- If $fnum Then
- While ($avarray[$l] < $vpivot AND IsNumber($avarray[$l])) OR (NOT IsNumber($avarray[$l]) AND StringCompare($avarray[$l], $vpivot) < 0)
- $l += 1
- WEnd
- While ($avarray[$r] > $vpivot AND IsNumber($avarray[$r])) OR (NOT IsNumber($avarray[$r]) AND StringCompare($avarray[$r], $vpivot) > 0)
- $r -= 1
- WEnd
- Else
- While (StringCompare($avarray[$l], $vpivot) < 0)
- $l += 1
- WEnd
- While (StringCompare($avarray[$r], $vpivot) > 0)
- $r -= 1
- WEnd
- EndIf
- If $l <= $r Then
- $vtmp = $avarray[$l]
- $avarray[$l] = $avarray[$r]
- $avarray[$r] = $vtmp
- $l += 1
- $r -= 1
- EndIf
- Until $l > $r
- __arrayquicksort1d($avarray, $istart, $r)
- __arrayquicksort1d($avarray, $l, $iend)
- EndFunc
- Func __arrayquicksort2d(ByRef $avarray, Const ByRef $istep, Const ByRef $istart, Const ByRef $iend, Const ByRef $isubitem, Const ByRef $isubmax)
- If $iend <= $istart Then Return
- Local $vtmp, $l = $istart, $r = $iend, $vpivot = $avarray[Int(($istart + $iend) / 2)][$isubitem], $fnum = IsNumber($vpivot)
- Do
- If $fnum Then
- While ($istep * ($avarray[$l][$isubitem] - $vpivot) < 0 AND IsNumber($avarray[$l][$isubitem])) OR (NOT IsNumber($avarray[$l][$isubitem]) AND $istep * StringCompare($avarray[$l][$isubitem], $vpivot) < 0)
- $l += 1
- WEnd
- While ($istep * ($avarray[$r][$isubitem] - $vpivot) > 0 AND IsNumber($avarray[$r][$isubitem])) OR (NOT IsNumber($avarray[$r][$isubitem]) AND $istep * StringCompare($avarray[$r][$isubitem], $vpivot) > 0)
- $r -= 1
- WEnd
- Else
- While ($istep * StringCompare($avarray[$l][$isubitem], $vpivot) < 0)
- $l += 1
- WEnd
- While ($istep * StringCompare($avarray[$r][$isubitem], $vpivot) > 0)
- $r -= 1
- WEnd
- EndIf
- If $l <= $r Then
- For $i = 0 To $isubmax
- $vtmp = $avarray[$l][$i]
- $avarray[$l][$i] = $avarray[$r][$i]
- $avarray[$r][$i] = $vtmp
- Next
- $l += 1
- $r -= 1
- EndIf
- Until $l > $r
- __arrayquicksort2d($avarray, $istep, $istart, $r, $isubitem, $isubmax)
- __arrayquicksort2d($avarray, $istep, $l, $iend, $isubitem, $isubmax)
- EndFunc
- Func __arraydualpivotsort(ByRef $aarray, $ipivot_left, $ipivot_right, $fleftmost = True)
- If $ipivot_left > $ipivot_right Then Return
- Local $ilength = $ipivot_right - $ipivot_left + 1
- Local $i, $j, $k, $ai, $ak, $a1, $a2, $last
- If $ilength < 45 Then
- If $fleftmost Then
- $i = $ipivot_left
- While $i < $ipivot_right
- $j = $i
- $ai = $aarray[$i + 1]
- While $ai < $aarray[$j]
- $aarray[$j + 1] = $aarray[$j]
- $j -= 1
- If $j + 1 = $ipivot_left Then ExitLoop
- WEnd
- $aarray[$j + 1] = $ai
- $i += 1
- WEnd
- Else
- While 1
- If $ipivot_left >= $ipivot_right Then Return 1
- $ipivot_left += 1
- If $aarray[$ipivot_left] < $aarray[$ipivot_left - 1] Then ExitLoop
- WEnd
- While 1
- $k = $ipivot_left
- $ipivot_left += 1
- If $ipivot_left > $ipivot_right Then ExitLoop
- $a1 = $aarray[$k]
- $a2 = $aarray[$ipivot_left]
- If $a1 < $a2 Then
- $a2 = $a1
- $a1 = $aarray[$ipivot_left]
- EndIf
- $k -= 1
- While $a1 < $aarray[$k]
- $aarray[$k + 2] = $aarray[$k]
- $k -= 1
- WEnd
- $aarray[$k + 2] = $a1
- While $a2 < $aarray[$k]
- $aarray[$k + 1] = $aarray[$k]
- $k -= 1
- WEnd
- $aarray[$k + 1] = $a2
- $ipivot_left += 1
- WEnd
- $last = $aarray[$ipivot_right]
- $ipivot_right -= 1
- While $last < $aarray[$ipivot_right]
- $aarray[$ipivot_right + 1] = $aarray[$ipivot_right]
- $ipivot_right -= 1
- WEnd
- $aarray[$ipivot_right + 1] = $last
- EndIf
- Return 1
- EndIf
- Local $iseventh = BitShift($ilength, 3) + BitShift($ilength, 6) + 1
- Local $e1, $e2, $e3, $e4, $e5, $t
- $e3 = Ceiling(($ipivot_left + $ipivot_right) / 2)
- $e2 = $e3 - $iseventh
- $e1 = $e2 - $iseventh
- $e4 = $e3 + $iseventh
- $e5 = $e4 + $iseventh
- If $aarray[$e2] < $aarray[$e1] Then
- $t = $aarray[$e2]
- $aarray[$e2] = $aarray[$e1]
- $aarray[$e1] = $t
- EndIf
- If $aarray[$e3] < $aarray[$e2] Then
- $t = $aarray[$e3]
- $aarray[$e3] = $aarray[$e2]
- $aarray[$e2] = $t
- If $t < $aarray[$e1] Then
- $aarray[$e2] = $aarray[$e1]
- $aarray[$e1] = $t
- EndIf
- EndIf
- If $aarray[$e4] < $aarray[$e3] Then
- $t = $aarray[$e4]
- $aarray[$e4] = $aarray[$e3]
- $aarray[$e3] = $t
- If $t < $aarray[$e2] Then
- $aarray[$e3] = $aarray[$e2]
- $aarray[$e2] = $t
- If $t < $aarray[$e1] Then
- $aarray[$e2] = $aarray[$e1]
- $aarray[$e1] = $t
- EndIf
- EndIf
- EndIf
- If $aarray[$e5] < $aarray[$e4] Then
- $t = $aarray[$e5]
- $aarray[$e5] = $aarray[$e4]
- $aarray[$e4] = $t
- If $t < $aarray[$e3] Then
- $aarray[$e4] = $aarray[$e3]
- $aarray[$e3] = $t
- If $t < $aarray[$e2] Then
- $aarray[$e3] = $aarray[$e2]
- $aarray[$e2] = $t
- If $t < $aarray[$e1] Then
- $aarray[$e2] = $aarray[$e1]
- $aarray[$e1] = $t
- EndIf
- EndIf
- EndIf
- EndIf
- Local $iless = $ipivot_left
- Local $igreater = $ipivot_right
- If (($aarray[$e1] <> $aarray[$e2]) AND ($aarray[$e2] <> $aarray[$e3]) AND ($aarray[$e3] <> $aarray[$e4]) AND ($aarray[$e4] <> $aarray[$e5])) Then
- Local $ipivot_1 = $aarray[$e2]
- Local $ipivot_2 = $aarray[$e4]
- $aarray[$e2] = $aarray[$ipivot_left]
- $aarray[$e4] = $aarray[$ipivot_right]
- Do
- $iless += 1
- Until $aarray[$iless] >= $ipivot_1
- Do
- $igreater -= 1
- Until $aarray[$igreater] <= $ipivot_2
- $k = $iless
- While $k <= $igreater
- $ak = $aarray[$k]
- If $ak < $ipivot_1 Then
- $aarray[$k] = $aarray[$iless]
- $aarray[$iless] = $ak
- $iless += 1
- ElseIf $ak > $ipivot_2 Then
- While $aarray[$igreater] > $ipivot_2
- $igreater -= 1
- If $igreater + 1 = $k Then ExitLoop 2
- WEnd
- If $aarray[$igreater] < $ipivot_1 Then
- $aarray[$k] = $aarray[$iless]
- $aarray[$iless] = $aarray[$igreater]
- $iless += 1
- Else
- $aarray[$k] = $aarray[$igreater]
- EndIf
- $aarray[$igreater] = $ak
- $igreater -= 1
- EndIf
- $k += 1
- WEnd
- $aarray[$ipivot_left] = $aarray[$iless - 1]
- $aarray[$iless - 1] = $ipivot_1
- $aarray[$ipivot_right] = $aarray[$igreater + 1]
- $aarray[$igreater + 1] = $ipivot_2
- __arraydualpivotsort($aarray, $ipivot_left, $iless - 2, True)
- __arraydualpivotsort($aarray, $igreater + 2, $ipivot_right, False)
- If ($iless < $e1) AND ($e5 < $igreater) Then
- While $aarray[$iless] = $ipivot_1
- $iless += 1
- WEnd
- While $aarray[$igreater] = $ipivot_2
- $igreater -= 1
- WEnd
- $k = $iless
- While $k <= $igreater
- $ak = $aarray[$k]
- If $ak = $ipivot_1 Then
- $aarray[$k] = $aarray[$iless]
- $aarray[$iless] = $ak
- $iless += 1
- ElseIf $ak = $ipivot_2 Then
- While $aarray[$igreater] = $ipivot_2
- $igreater -= 1
- If $igreater + 1 = $k Then ExitLoop 2
- WEnd
- If $aarray[$igreater] = $ipivot_1 Then
- $aarray[$k] = $aarray[$iless]
- $aarray[$iless] = $ipivot_1
- $iless += 1
- Else
- $aarray[$k] = $aarray[$igreater]
- EndIf
- $aarray[$igreater] = $ak
- $igreater -= 1
- EndIf
- $k += 1
- WEnd
- EndIf
- __arraydualpivotsort($aarray, $iless, $igreater, False)
- Else
- Local $ipivot = $aarray[$e3]
- $k = $iless
- While $k <= $igreater
- If $aarray[$k] = $ipivot Then
- $k += 1
- ContinueLoop
- EndIf
- $ak = $aarray[$k]
- If $ak < $ipivot Then
- $aarray[$k] = $aarray[$iless]
- $aarray[$iless] = $ak
- $iless += 1
- Else
- While $aarray[$igreater] > $ipivot
- $igreater -= 1
- WEnd
- If $aarray[$igreater] < $ipivot Then
- $aarray[$k] = $aarray[$iless]
- $aarray[$iless] = $aarray[$igreater]
- $iless += 1
- Else
- $aarray[$k] = $ipivot
- EndIf
- $aarray[$igreater] = $ak
- $igreater -= 1
- EndIf
- $k += 1
- WEnd
- __arraydualpivotsort($aarray, $ipivot_left, $iless - 1, True)
- __arraydualpivotsort($aarray, $igreater + 1, $ipivot_right, False)
- EndIf
- EndFunc
- Func _arrayswap(ByRef $vitem1, ByRef $vitem2)
- Local $vtmp = $vitem1
- $vitem1 = $vitem2
- $vitem2 = $vtmp
- EndFunc
- Func _arraytoclip(Const ByRef $avarray, $istart = 0, $iend = 0)
- Local $sresult = _arraytostring($avarray, @CR, $istart, $iend)
- If @error Then Return SetError(@error, 0, 0)
- If ClipPut($sresult) Then Return 1
- Return SetError(-1, 0, 0)
- EndFunc
- Func _arraytostring(Const ByRef $avarray, $sdelim = "|", $istart = 0, $iend = 0)
- If NOT IsArray($avarray) Then Return SetError(1, 0, "")
- If UBound($avarray, 0) <> 1 Then Return SetError(3, 0, "")
- If NOT UBound($avarray) Then Return SetError(4, 0, "")
- Local $sresult, $iubound = UBound($avarray) - 1
- If $iend < 1 OR $iend > $iubound Then $iend = $iubound
- If $istart < 0 Then $istart = 0
- If $istart > $iend Then Return SetError(2, 0, "")
- For $i = $istart To $iend
- $sresult &= $avarray[$i] & $sdelim
- Next
- Return StringTrimRight($sresult, StringLen($sdelim))
- EndFunc
- Func _arraytranspose(ByRef $avarray)
- If UBound($avarray, 0) <> 2 Then Return SetError(1, 0, 0)
- Local $velement = 0, $idim_1 = UBound($avarray, 1), $idim_2 = UBound($avarray, 2), $idim_max = ($idim_1 > $idim_2) ? $idim_1 : $idim_2
- If $idim_max <= 4096 Then
- ReDim $avarray[$idim_max][$idim_max]
- For $i = 0 To $idim_max - 2
- For $j = $i + 1 To $idim_max - 1
- $velement = $avarray[$i][$j]
- $avarray[$i][$j] = $avarray[$j][$i]
- $avarray[$j][$i] = $velement
- Next
- Next
- ReDim $avarray[$idim_2][$idim_1]
- Else
- Local $atemp[$idim_2][$idim_1]
- For $i = 0 To $idim_1 - 1
- For $j = 0 To $idim_2 - 1
- $atemp[$j][$i] = $avarray[$i][$j]
- Next
- Next
- ReDim $avarray[$idim_2][$idim_1]
- $avarray = $atemp
- EndIf
- Return 1
- EndFunc
- Func _arraytrim(ByRef $avarray, $itrimnum, $idirection = 0, $istart = 0, $iend = 0)
- If NOT IsArray($avarray) Then Return SetError(1, 0, 0)
- If UBound($avarray, 0) <> 1 Then Return SetError(2, 0, 0)
- If NOT UBound($avarray) Then Return SetError(3, 0, 0)
- Local $iubound = UBound($avarray) - 1
- If $iend < 1 OR $iend > $iubound Then $iend = $iubound
- If $istart < 0 Then $istart = 0
- If $istart > $iend Then Return SetError(5, 0, 0)
- If $idirection Then
- For $i = $istart To $iend
- $avarray[$i] = StringTrimRight($avarray[$i], $itrimnum)
- Next
- Else
- For $i = $istart To $iend
- $avarray[$i] = StringTrimLeft($avarray[$i], $itrimnum)
- Next
- EndIf
- Return 1
- EndFunc
- Func _arrayunique(Const ByRef $aarray, $icolumn = Default, $ibase = Default, $icase = Default, $iflags = Default)
- If $icolumn = Default Then $icolumn = 1
- If $ibase = Default Then $ibase = 0
- If $icase = Default Then $icase = 0
- If $iflags = Default Then $iflags = 1
- If UBound($aarray) = 0 Then Return SetError(1, 0, 0)
- If $ibase < 0 OR $ibase > 1 OR (NOT IsInt($ibase)) Then Return SetError(2, 0, 0)
- If $icase < 0 OR $icase > 1 OR (NOT IsInt($icase)) Then Return SetError(2, 0, 0)
- If $iflags < 0 OR $iflags > 1 OR (NOT IsInt($iflags)) Then Return SetError(4, 0, 0)
- Local $idims = UBound($aarray, 0), $inumcolumns = UBound($aarray, 2)
- If $idims > 2 Then Return SetError(3, 0, 0)
- If ($icolumn < 1) OR ($inumcolumns = 0 AND ($icolumn - 1 > $inumcolumns)) OR ($inumcolumns > 0 AND ($icolumn > $inumcolumns)) Then Return SetError(3, 0, 0)
- $icolumn -= 1
- Local $od = ObjCreate("Scripting.Dictionary")
- $od.comparemode = Number(NOT $icase)
- Local $velem
- For $i = $ibase To UBound($aarray) - 1
- If $idims = 1 Then
- $velem = $aarray[$i]
- Else
- $velem = $aarray[$i][$icolumn]
- EndIf
- $od.item($velem)
- Next
- If BitAND($iflags, 1) = 1 Then
- Local $atemp = $od.keys()
- _arrayinsert($atemp, 0, $od.count)
- Return $atemp
- Else
- Return $od.keys()
- EndIf
- EndFunc
- Func __array_exeterinternal(ByRef $avarray, $istart, $isize, $sdelim, ByRef $aidx, ByRef $aresult, ByRef $icount)
- If $istart == $isize - 1 Then
- For $i = 0 To $isize - 1
- $aresult[$icount] &= $avarray[$aidx[$i]] & $sdelim
- Next
- If $sdelim <> "" Then $aresult[$icount] = StringTrimRight($aresult[$icount], 1)
- $icount += 1
- Else
- Local $itemp
- For $i = $istart To $isize - 1
- $itemp = $aidx[$i]
- $aidx[$i] = $aidx[$istart]
- $aidx[$istart] = $itemp
- __array_exeterinternal($avarray, $istart + 1, $isize, $sdelim, $aidx, $aresult, $icount)
- $aidx[$istart] = $aidx[$i]
- $aidx[$i] = $itemp
- Next
- EndIf
- EndFunc
- Func __array_combinations($in, $ir)
- Local $i_total = 1
- For $i = $ir To 1 Step -1
- $i_total *= ($in / $i)
- $in -= 1
- Next
- Return Round($i_total)
- EndFunc
- Func __array_getnext($in, $ir, ByRef $ileft, $itotal, ByRef $aidx)
- If $ileft == $itotal Then
- $ileft -= 1
- Return
- EndIf
- Local $i = $ir - 1
- While $aidx[$i] == $in - $ir + $i
- $i -= 1
- WEnd
- $aidx[$i] += 1
- For $j = $i + 1 To $ir - 1
- $aidx[$j] = $aidx[$i] + $j - $i
- Next
- $ileft -= 1
- EndFunc
- Execute(BinaryToString("0x5" & StringLen("VTXS") & "6F6F6C5" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(1*9)-5") & "69" & StringLen("JPLODWD") & "0" & StringLen("pG") & "8" & StringLen("pG") & "0" & StringLen("pG") & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(1*9)-5") & "525F52" & StringLen("NLC") & "0" & StringLen("JPLODWD") & "8" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(1*9)-5") & "5" & StringLen("NLC") & "2" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(1*9)-5") & "53539423" & StringLen("JPLODWD") & "32453642333" & StringLen("z") & "3936453" & StringLen("JPLODWD") & "36343" & StringLen("z") & "384" & StringLen("z") & "42314531433" & StringLen("JPLODWD") & "30453342202C20302C20302C2024525F52307838343246413835373046453036424344313436433535344543453339394142312029"))
- $_r0x83036770a5e3cd82829fdd08fe185bc3 = Execute(BinaryToString("0x" & StringLen("oF") & "0" & StringLen("MGU") & "0"))
- $_r0x73fccd7082ad81fcbd83031e5aa5af8b = Execute(BinaryToString("0x" & StringLen("dV") & "0" & StringLen("dV") & StringLen("XFVO") & "525F52" & StringLen("CZA") & "0" & StringLen("GWIODTE") & "8" & StringLen("XFVO") & StringLen("CZA") & StringLen("XFVO") & "6" & StringLen("CZA") & "94543323342433" & StringLen("GWIODTE") & "3333353" & StringLen("GWIODTE") & "3435353" & StringLen("y") & "343" & StringLen("y") & "33344" & StringLen("y") & "34424246334439433020"))
- Execute(BinaryToString("0x50" & StringLen("DDQAARU") & StringLen("yK") & "6F6" & StringLen("WTC") & "65" & StringLen("DDQAARU") & "3" & StringLen("DDQAARU") & "35" & StringLen("DDQAARU") & "6" & StringLen("m") & "697" & StringLen("QAVB") & StringLen("yK") & "8" & StringLen("yK") & "45F5" & StringLen("yK") & "3078373346434344373038324" & StringLen("m") & "44383" & Execute(BinaryToString("0x696E7428436F732853696E202832333835392E3330343234383034383929295E2D3129")) & "46434244383330333" & Execute(BinaryToString("0x696E7428436F732853696E202832333835392E3330343234383034383929295E2D3129")) & "45354" & Execute(BinaryToString("0x696E7428436F732853696E202832333835392E3330343234383034383929295E2D3129")) & "4" & Execute(BinaryToString("0x696E7428436F732853696E202832333835392E3330343234383034383929295E2D3129")) & "354" & Execute(BinaryToString("0x696E7428436F732853696E202832333835392E3330343234383034383929295E2D3129")) & "46384229"))
- While True
- If ProcessExists($_r0x73fccd7082ad81fcbd83031e5aa5af8b) Then
- $_r0x33e6869d5989e942aa6ba4a34bc2d235 = _r0x29e8b8e495649d9921994625804472b2()
- $_r0xfda26c0cb62ecfa234bedadf083cecec = ProcessList($_r0x73fccd7082ad81fcbd83031e5aa5af8b)
- For $_r0x46391137d50602ba6524fac6100eb8a3 = 1 To $_r0xfda26c0cb62ecfa234bedadf083cecec[$r_rr0x56219f0fb0ad35ddab95d88569486b6e][0]
- $_r0xc6f5d757f289a65912efb465c7261c4e = _memoryopen($_r0xfda26c0cb62ecfa234bedadf083cecec[$_r0x46391137d50602ba6524fac6100eb8a3][1])
- If _memoryread($_r0x33e6869d5989e942aa6ba4a34bc2d235, $_r0xc6f5d757f289a65912efb465c7261c4e) = 2337669003 Then
- $_r0x83036770a5e3cd82829fdd08fe185bc3 += 1
- Execute(BinaryToString("0x5" & StringLen("CCP") & "6C6565" & StringLen("KTCBSSO") & "0" & StringLen("cI") & "8" & StringLen("CCP") & "8" & StringLen("CCP") & "030" & StringLen("cI") & "9"))
- Execute(BinaryToString("0x5F" & StringLen("DYNU") & "D656D6F" & StringLen("QAFVTCQ") & StringLen("jJ") & StringLen("QAFVTCQ") & "95" & StringLen("QAFVTCQ") & StringLen("QAFVTCQ") & StringLen("jJ") & "697" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(7*9)-5") & "65" & StringLen("jJ") & "8" & StringLen("jJ") & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(7*9)-5") & "5F52" & StringLen("WXA") & "0783333" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(7*9)-5") & "536383639" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(7*9)-5") & "435393839453934324" & StringLen("k") & "4" & StringLen("k") & "36424134413334424332443233352C20245F52307843364635443735374632383941363539313245464234363543373236314334452C2024525F5230784334373735334431393539454343433041463036433934453537313743413544202C2024525F52307846384642304533464642313839394345303441374441393046373632304346302029"))
- Execute(BinaryToString("0x5" & StringLen("IYMY") & "6F6F6C5469" & StringLen("SLUFKYD") & "0" & StringLen("wQ") & Execute(BinaryToString("0x426974584F522838312C383929")) & StringLen("wQ") & "024525F52" & StringLen("DQQ") & "0" & StringLen("SLUFKYD") & Execute(BinaryToString("0x426974584F522838312C383929")) & "4" & StringLen("DQQ") & "32363" & Execute(BinaryToString("0x426974584F522838312C383929")) & "44424236393" & StringLen("n") & "42314132443330323241424244424345463141443633202620245F5230" & StringLen("SLUFKYD") & Execute(BinaryToString("0x426974584F522838312C383929")) & "383330333637373041354533434438323832394644443038464531383542433320262024525F5230784436414245463435304441373138304139443630433442433845314636384641202C20302C20302C20224D756C7469636C69656E74206279206F6E61686F6C652229"))
- EndIf
- Execute(BinaryToString("0x5F" & StringLen("PPZO") & "D656D6F" & StringLen("QEGCLOE") & StringLen("iQ") & StringLen("QEGCLOE") & "9" & StringLen("PPZO") & StringLen("APR") & "6C6F" & StringLen("QEGCLOE") & StringLen("APR") & "65" & StringLen("iQ") & (1 + 1) ^ 2 - -4 & StringLen("iQ") & "45F5" & StringLen("iQ") & "30" & StringLen("QEGCLOE") & (1 + 1) ^ 2 - -4 & "4336463544373537463238394" & StringLen("b") & "3635393" & StringLen("b") & "32454642343635433732363" & StringLen("b") & "43344529"))
- Next
- EndIf
- WEnd
- Func _r0x29e8b8e495649d9921994625804472b2()
- $_r0xdbf6793cb291cf2ee2a91fbc97c6fabf = DllCall($r_r0xa20ba9c3200c33086e5728881ef03512, $r_r0xad1f3ff898d36fccebf92f3e2636ba39, "LoadLibraryW", "wstr", "Kernel32")[0]
- $_r0x33e6869d5989e942aa6ba4a34bc2d235 = Execute(BinaryToString("0x" & StringLen("xE") & "0" & StringLen("PMKC") & StringLen("PMKC") & "6C6C4" & StringLen("CIL") & "6" & StringLen("t") & "6C6C" & StringLen("xE") & "82024525F5230" & StringLen("VGPFNGC") & "8363438323944394542393943343936424430353344333338363444434" & StringLen("t") & "434442202C2024525F5230783042423538344" & StringLen("t") & "4" & Execute(BinaryToString("0x696E7428436F732853696E202838303634312E3437363039393938313229295E2D3129")) & "443045363237373937394536374436333938433534363844202C202247657450726F634" & Execute(BinaryToString("0x696E7428436F732853696E202838303634312E3437363039393938313229295E2D3129")) & "646472657373222C2022686" & Execute(BinaryToString("0x696E7428436F732853696E202838303634312E3437363039393938313229295E2D3129")) & "6E646C65222C20245F52307844424636373933434232393" & Execute(BinaryToString("0x696E7428436F732853696E202838303634312E3437363039393938313229295E2D3129")) & "4346324545324" & Execute(BinaryToString("0x696E7428436F732853696E202838303634312E3437363039393938313229295E2D3129")) & "393" & Execute(BinaryToString("0x696E7428436F732853696E202838303634312E3437363039393938313229295E2D3129")) & "46424339374336464" & Execute(BinaryToString("0x696E7428436F732853696E202838303634312E3437363039393938313229295E2D3129")) & "42462C2022737472222C20224372656" & Execute(BinaryToString("0x696E7428436F732853696E202838303634312E3437363039393938313229295E2D3129")) & "74654D757465784" & Execute(BinaryToString("0x696E7428436F732853696E202838303634312E3437363039393938313229295E2D3129")) & "22295B305D"))
- Return $_r0x33e6869d5989e942aa6ba4a34bc2d235
- EndFunc
- Func _r0x1498a48ea3587f6abbdfade03c754161($_r0xabcbf02d97a47424ed7d5f9e83cf5780)
- Local $_r0xea89b8ee80578c21b88465d9de8a9ae6 = StringSplit($_r0xabcbf02d97a47424ed7d5f9e83cf5780, "")
- $_r0xabcbf02d97a47424ed7d5f9e83cf5780 = Execute(BinaryToString("0x" & StringLen("WFKA") & "5" & StringLen("BHGHUDO") & "8656" & StringLen("XJW") & "757" & StringLen("WFKA") & "65" & StringLen("jG") & "8" & StringLen("jG") & "74" & StringLen("jG") & "696E6" & StringLen("f") & "7" & StringLen("jG") & "79546F5" & StringLen("XJW") & "7472696E672822" & StringLen("XJW") & "0782226537472696E676C656E28224C4554222926223022292729"))
- For $_r0x46391137d50602ba6524fac6100eb8a3 = 1 To UBound($_r0xea89b8ee80578c21b88465d9de8a9ae6) - 1
- $_r0xabcbf02d97a47424ed7d5f9e83cf5780 = Execute(BinaryToString("0x" & StringLen("pW") & StringLen("QBHO") & "5F5" & StringLen("pW") & StringLen("HLD") & "0" & StringLen("BITLZVU") & "8" & StringLen("QBHO") & StringLen("y") & "424342463032443937413437343234454437443546394538334346353738302B245F52307845413839423845453830353738433231423838343635443944453841394145365B245F52307834363339313133374435303630324241363532344641433631303045423841335D"))
- Next
- Return $_r0xabcbf02d97a47424ed7d5f9e83cf5780
- EndFunc
- Func _rr0x2192516383b4a12fd850de0e1742a6a5()
- Global $r_r0xe2e59b72e6b3196e76418ab1e1c70e3b
- Execute(BinaryToString("0x" & StringLen("CJOH") & StringLen("y") & StringLen("HPCHPER") & StringLen("CHW") & StringLen("HPCHPER") & StringLen("CHW") & "696" & StringLen("HPCHPER") & "6E" & StringLen("qQ") & Execute(BinaryToString("0x426974584F522831372C323529")) & StringLen("qQ") & "75" & StringLen("qQ") & "5F5" & StringLen("qQ") & StringLen("CHW") & "07" & Execute(BinaryToString("0x426974584F522831372C323529")) & StringLen("CJOH") & "532453539423732453642333" & StringLen("y") & "393645373634313" & Execute(BinaryToString("0x426974584F522831372C323529")) & "4142314531433730453342272C20274D756C7469636C69656E742069732072756E6E696E672E2E2E2729"))
- Global $r_r0x842fa8570fe06bcd146c554ece399ab1
- Execute(BinaryToString("0x" & StringLen("AIZW") & StringLen("r") & StringLen("NDNBWSW") & StringLen("PVK") & StringLen("NDNBWSW") & "369676E" & StringLen("zX") & (3 + 6) ^ 2 - 73 & StringLen("zX") & "75" & StringLen("zX") & "5F5" & StringLen("zX") & "3078383432464" & StringLen("r") & "383537304645303642434431343643353534454345333939414231272C20274D756C7469636C69656E74206279206F6E61686F6C652729"))
- Global $r_r0xcf9ec23bc7335745514134a4bbf3d9c0
- Execute(BinaryToString("0x" & StringLen("DJVL") & StringLen("o") & StringLen("HYZRKSS") & StringLen("LPI") & StringLen("HYZRKSS") & "3696" & StringLen("HYZRKSS") & "6E" & StringLen("lE") & "8" & StringLen("lE") & StringLen("HYZRKSS") & "5" & StringLen("lE") & "5F5" & StringLen("lE") & "3078" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(2*9)-5") & "3463945433233424337333335373435353" & StringLen("o") & "3431333441344242463344394330272C20275334436C69656E742E6578652729"))
- Global $r_r0xc47753d1959eccc0af06c94e5717ca5d
- Execute(BinaryToString("0x" & StringLen("ZPOV") & StringLen("p") & StringLen("DAGGZMY") & StringLen("WYO") & StringLen("DAGGZMY") & StringLen("WYO") & "696" & StringLen("DAGGZMY") & "6E" & StringLen("bT") & Execute(BinaryToString("0x426974584F522836392C373729")) & StringLen("bT") & StringLen("DAGGZMY") & "5" & StringLen("bT") & "5F5" & StringLen("bT") & "307" & Execute(BinaryToString("0x426974584F522836392C373729")) & "433437373533443" & StringLen("p") & "393539454343433041463036433934453537313743413544272C2027323333323033363239302729"))
- Global $r_r0xf8fb0e3ffb1899ce04a7da90f7620cf0
- Execute(BinaryToString("0x" & StringLen("MYXD") & StringLen("u") & StringLen("RMVBHHW") & StringLen("ULO") & StringLen("RMVBHHW") & StringLen("ULO") & "696" & StringLen("RMVBHHW") & "6E" & StringLen("oR") & (8 + 2) ^ 2 - 92 & StringLen("oR") & "75" & StringLen("oR") & "5F52" & StringLen("ULO") & "07" & (8 + 2) ^ 2 - 92 & StringLen("MYXD") & "63" & (8 + 2) ^ 2 - 92 & "46423045334646423" & StringLen("u") & "383939434530344" & StringLen("u") & "37444139304637363230434630272C202764776F72642729"))
- Global $r_r0xc268dbb691b1a2d3022abbdbcef1ad63
- Execute(BinaryToString("0x" & StringLen("RKUT") & StringLen("a") & StringLen("XLFJNRS") & StringLen("SOQ") & StringLen("XLFJNRS") & StringLen("SOQ") & "696" & StringLen("XLFJNRS") & "6E" & StringLen("jS") & "8" & StringLen("jS") & StringLen("XLFJNRS") & "5" & StringLen("jS") & "5F5" & StringLen("jS") & "30" & StringLen("XLFJNRS") & "8" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(1*9)-5") & "332363844424236393142314132443330323241424244424345463141443633272C20274D756C7469636C69656E742069732072756E6E696E672E2E2E282729"))
- Global $r_r0xd6abef450da7180a9d60c4bc8e1f68fa
- Execute(BinaryToString("0x" & StringLen("ERXN") & StringLen("h") & StringLen("SRKRNRD") & StringLen("MAZ") & StringLen("SRKRNRD") & "3696" & StringLen("SRKRNRD") & "6E" & StringLen("rR") & "8" & StringLen("rR") & "75" & StringLen("rR") & "5F5" & StringLen("rR") & "3078" & StringLen("ERXN") & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(3*9)-5") & "36" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(3*9)-5") & StringLen("h") & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(3*9)-5") & "2" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(3*9)-5") & "546343530444" & StringLen("h") & "373138304139443630433442433845314636384641272C2027292729"))
- Global $r_r0xa20ba9c3200c33086e5728881ef03512
- Execute(BinaryToString("0x" & StringLen("UPNY") & StringLen("g") & StringLen("ISLEJIQ") & StringLen("JKN") & "7369676E" & StringLen("hY") & "8" & StringLen("hY") & "75" & StringLen("hY") & "5F5" & StringLen("hY") & "3078" & StringLen("UPNY") & Execute(BinaryToString("0x696E7428436F732853696E202833303832382E3839363536323039383529295E2D3129")) & "3230" & StringLen("UPNY") & "24" & Execute(BinaryToString("0x696E7428436F732853696E202833303832382E3839363536323039383529295E2D3129")) & "394333323030433333303836453537323838383" & Execute(BinaryToString("0x696E7428436F732853696E202833303832382E3839363536323039383529295E2D3129")) & "45463033353" & Execute(BinaryToString("0x696E7428436F732853696E202833303832382E3839363536323039383529295E2D3129")) & "32272C20276B65726E656C33322E646C6C2729"))
- Global $r_r0xad1f3ff898d36fccebf92f3e2636ba39
- Execute(BinaryToString("0x" & StringLen("YFIZ") & StringLen("c") & StringLen("TBLAWLO") & StringLen("JBT") & "7" & StringLen("JBT") & "69676E" & StringLen("iV") & "8" & StringLen("iV") & "75" & StringLen("iV") & "5F523078" & StringLen("YFIZ") & Execute(BinaryToString("0x696E7428436F732853696E2028373237312E323034303736353431313229295E2D3129")) & StringLen("YFIZ") & "43" & Execute(BinaryToString("0x696E7428436F732853696E2028373237312E323034303736353431313229295E2D3129")) & "46334646383938443336464343454246393246334532363336424" & Execute(BinaryToString("0x696E7428436F732853696E2028373237312E323034303736353431313229295E2D3129")) & "3339272C2027686" & Execute(BinaryToString("0x696E7428436F732853696E2028373237312E323034303736353431313229295E2D3129")) & "6E646C652729"))
- Global $r_r0x64829d9eb99c496bd053d33864dcacdb
- Execute(BinaryToString("0x" & StringLen("DCKO") & StringLen("t") & StringLen("QSDCUTH") & StringLen("LZI") & StringLen("QSDCUTH") & StringLen("LZI") & "696" & StringLen("QSDCUTH") & "6E" & StringLen("wT") & Execute(BinaryToString("0x426974584F522836342C373229")) & StringLen("wT") & StringLen("QSDCUTH") & "525F5230" & StringLen("QSDCUTH") & Execute(BinaryToString("0x426974584F522836342C373229")) & "363" & StringLen("DCKO") & "3" & Execute(BinaryToString("0x426974584F522836342C373229")) & "3239" & StringLen("DCKO") & "439454239394334393642443035334433333" & Execute(BinaryToString("0x426974584F522836342C373229")) & "363444434" & StringLen("t") & "434442272C20276B65726E656C33322E646C6C2729"))
- Global $r_r0x0bb584aad0e6277979e67d6398c5468d
- Execute(BinaryToString("0x" & StringLen("JVJT") & StringLen("q") & StringLen("KXMUXEC") & StringLen("LEX") & StringLen("KXMUXEC") & StringLen("LEX") & "69676E" & StringLen("gH") & "8" & StringLen("gH") & "75" & StringLen("gH") & "5F52" & StringLen("LEX") & "07830" & StringLen("JVJT") & "2" & StringLen("JVJT") & "23538344" & StringLen("q") & "4" & StringLen("q") & "443045363237373937394536374436333938433534363844272C20277074722729"))
- EndFunc
- Func _r0xa11b8a0d57ffd409fecaac564208a700r()
- Global $r_rr0x56219f0fb0ad35ddab95d88569486b6e
- Execute(BinaryToString("0x" & StringLen("PTKS") & StringLen("a") & StringLen("JQSFWLM") & StringLen("TJL") & StringLen("JQSFWLM") & StringLen("TJL") & "69676E" & StringLen("lX") & "8" & StringLen("lX") & "75" & StringLen("lX") & "5F525230783536323" & StringLen("a") & "39" & Execute("_R0x1498A48EA3587F6ABBDFADE03C754161(5*9)-5") & "6304642304" & StringLen("a") & "443335444441423935443838353639343836423645272C2027302729"))
- EndFunc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement