SemlerPDX icon

LoadAll Inline Including Dynamic Command Parsing

SemlerPDX | PRO | 01/15/22 04:50:47 AM UTC (Edited) | 0 ⭐ | 6520 👁️ | Never ⏰ | []
VB.NET |

13.93 KB

|

None

|

0 👍

/

0 👎

' Save File System Inline-Function for VoiceAttack -  Load Any/All Variables from File/List to Profile
'  by SemlerPDX Mar2020 (updated Dec2020)
'  VETERANS-GAMING.COM
' --Loads Variables from Text List Format into VA Variables of Appropriate Data Type (INT/DEC/TXT/BOOL)--
 
 
Imports Microsoft.VisualBasic
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Data
Imports System.Drawing
Imports System.Diagnostics
Imports System.Globalization
Imports System.Windows.Forms
Imports System.Linq
Imports System.Xml.Linq
Imports System.Threading.Tasks
 
Public Class VAInline
    dim decimalSeparator as string = CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator
    dim cmdIndex as Int32
    dim cmdMax as Int32 = 255
    dim level as Int32
    dim phrase as string
    dim phrases as string
    dim phraseDataCheck as string
    dim phraseArray() as string
    dim phrasesList() as string
    dim phrasesUnique as string = ""
    dim macrosUnique as string = ""
    dim listenUnique as string = ""
    dim toggleUnique as string = ""
    dim phrasesFinal as new list(of string) ()
    dim clearVariable as boolean
    dim saveVariable as boolean
    dim variableIndex as integer
    dim commandRID as integer = 0
    dim countD as integer
    dim countC as integer
    dim contents() as string
    dim entry() as string
    dim debugCheck as boolean
    dim debugCount as integer = 0
    dim debugColor as integer = 3
    dim debugText as string = ""
    
    
    Public Sub Main()
        
        'Get Live Debugging Return ID from VA
        if ((VA.GetInt("AVCS_CMD_RID")) IsNot nothing)
            commandRID = VA.GetInt("AVCS_CMD_RID")
        end if
        
        if ((VA.GetText("~save_file")) IsNot nothing)
            
            'Clear all QCC Commands & Data variables        
            if ((VA.GetInt("AVCS_QCC_COMMAND_MAX")) IsNot nothing)
                cmdMax = Convert.ToInt32(VA.GetInt("AVCS_QCC_COMMAND_MAX"))
            end if
            for cmdIndex = 1 to cmdMax
                VA.SetText("AVCS_QCC_DATA_MACROS_" + cmdIndex.ToString(), nothing)
                VA.SetText("AVCS_QCC_COMMAND_" + cmdIndex.ToString(), nothing)
            next
            for i as integer = 1 to 6
                VA.SetText("AVCS_" + vaProxy.ParseTokens("{TXT:AVCS_ACTIVE_PROFILE:CORE}").ToString() + "_PTTBUTTON_" + i.ToString(),nothing)
            next
            VA.SetInt("AVCS_CORE_PTT_MODE", nothing)
            
            'Clear all QCC Variable 'When I say' phrases
            VA.SetText("AVCS_QCC_WAKE", nothing)
            VA.SetText("AVCS_QCC_COMMANDS", nothing)
            VA.SetText("AVCS_QCC_MACROS", nothing)
            VA.SetText("AVCS_QCC_LISTEN", nothing)
            VA.SetText("AVCS_QCC_LISTEN_TOGGLE", nothing)
            
            'Clear all VAS Passphrase Command variables
            for level = 1 to 10
                VA.SetText("AVCS_VAS_PASSWORDS_LEVEL_" + level.ToString(), nothing)
            next
            
            
            'Check and Set Clear/Save Parameter Variables
            if ((VA.GetBoolean("AVCS_SFS_LOAD_clear")) IsNot nothing)
                clearVariable = VA.GetBoolean("AVCS_SFS_LOAD_clear")
            end if
            if ((VA.GetBoolean("AVCS_SFS_LOAD_save")) IsNot nothing)
                saveVariable = VA.GetBoolean("AVCS_SFS_LOAD_save")
            end if
            
            'Split contents of save file into single lines separated by the newline or (/n)
            if (VA.GetText("~save_file").Contains(vbNewLine))
                contents = VA.GetText("~save_file").Split(new string() {Environment.NewLine},StringSplitOptions.None)
            else
                contents = VA.GetText("~save_file").Split(new string() {"(/n)"},StringSplitOptions.None)
            end if
            
            'In each line, isolate Var Name/Val via '=' and Eval entry value for data type
            for each line as string in contents
                if not(line = "")
                    entry = line.Split("=")
                    
                    if (entry(1).Contains("."))
                        countD = entry(1).Split(".").Length -1
                    else
                        countD = 0
                    end if
                    if (entry(1).Contains(","))
                        countC = entry(1).Split(",").Length -1
                    else
                        countC = 0
                    end if
                    
                    'Use Comma and Decimal Count to check data type for casting as Int or Dec
                    if ((IsNumeric(entry(1))) and (((countD <= 1) and (countC = 0)) or ((countC <= 1) and (countD = 0))))
                    
                        if ((entry(1).Contains (".")) or (entry(1).Contains (",")))
                        
                            ' Attempt to Handle International Decimal Separator
                            if (decimalSeparator <> ".")
                                if (entry(1).Contains("."))
                                    entry(1) = Replace(entry(1), ".", decimalSeparator)
                                end if
                            end if
                            
                            ' Entry is a DECIMAL Type
                            if ((clearVariable) and (saveVariable))
                                ' Prepare Decimal Var for SaveToProfile command, clearing from Profile completely
                                variableIndex = variableIndex + 1
                                VA.SetText("~~varType" + variableIndex.ToString(), "DEC")
                                VA.SetText("~~varName" + variableIndex.ToString(), entry(0))
                            elseif (saveVariable)
                                ' Prepare Decimal Var for SaveToProfile command
                                variableIndex = variableIndex + 1
                                VA.SetText("~~varType" + variableIndex.ToString(), "DEC")
                                VA.SetText("~~varName" + variableIndex.ToString(), entry(0))
                                VA.SetText("~~varValue" + variableIndex.ToString(), entry(1))
                            elseif (clearVariable)
                                ' Clear Decimal Var directly from Profile
                                VA.SetDecimal(entry(0), nothing)
                            else
                                ' Load Decimal Var directly to Profile
                                VA.SetDecimal(entry(0), entry(1))
                            end if
                            
                        else
                        
                            ' Entry is an INTEGER Type
                            if ((clearVariable) and (saveVariable))
                                ' Prepare Integer Var for SaveToProfile command, clearing from Profile completely
                                variableIndex = variableIndex + 1
                                VA.SetText("~~varType" + variableIndex.ToString(), "INT")
                                VA.SetText("~~varName" + variableIndex.ToString(), entry(0))
                            elseif (saveVariable)
                                ' Prepare Integer Var for SaveToProfile command
                                variableIndex = variableIndex + 1
                                VA.SetText("~~varType" + variableIndex.ToString(), "INT")
                                VA.SetText("~~varName" + variableIndex.ToString(), entry(0))
                                VA.SetText("~~varValue" + variableIndex.ToString(), entry(1))
                            elseif (clearVariable)
                                ' Clear Integer Var directly from Profile
                                VA.SetInt(entry(0), nothing)
                            else
                                ' Load Integer Var directly to Profile
                                VA.SetInt(entry(0), entry(1))
                            end if
                            
                        end if
                    
                    'if entry(1) is NOT Numeric--------------------------   
                    elseif ((LCase(entry(1)) = "true") or (LCase(entry(1)) = "false"))
                    
                        ' Entry is a BOOLEAN Type
                        if ((clearVariable) and (saveVariable))
                            ' Prepare Boolean Var for SaveToProfile command, clearing from Profile completely
                            variableIndex = variableIndex + 1
                            VA.SetText("~~varType" + variableIndex.ToString(), "BOOL")
                            VA.SetText("~~varName" + variableIndex.ToString(), entry(0))
                        elseif (saveVariable)
                            ' Prepare Boolean Var for SaveToProfile command
                            variableIndex = variableIndex + 1
                            VA.SetText("~~varType" + variableIndex.ToString(), "BOOL")
                            VA.SetText("~~varName" + variableIndex.ToString(), entry(0))
                            VA.SetText("~~varValue" + variableIndex.ToString(), entry(1))
                        elseif (clearVariable)
                            ' Clear Boolean Var directly from Profile
                            VA.SetBoolean(entry(0), nothing)
                        else
                            ' Load Boolean Var directly to Profile
                            VA.SetBoolean(entry(0), entry(1))
                        end if
                        
                    else
                    
                        ' Entry is a TEXT Type
                        if ((clearVariable) and (saveVariable))
                            ' Prepare Text Var for SaveToProfile command, clearing from Profile completely
                            variableIndex = variableIndex + 1
                            VA.SetText("~~varType" + variableIndex.ToString(), "TXT")
                            VA.SetText("~~varName" + variableIndex.ToString(), entry(0))
                        elseif (saveVariable)
                            ' Prepare Text Var for SaveToProfile command
                            variableIndex = variableIndex + 1
                            VA.SetText("~~varType" + variableIndex.ToString(), "TXT")
                            VA.SetText("~~varName" + variableIndex.ToString(), entry(0))
                            VA.SetText("~~varValue" + variableIndex.ToString(), entry(1))
                        elseif (clearVariable)
                            ' Clear Text Var directly from Profile
                            VA.SetText(entry(0), nothing)
                        else
                            ' Load Text Var directly to Profile
                            VA.SetText(entry(0), entry(1))
                        end if
                        
                    end if
                end if
                
            next 'loop around to the next entry value
            
            if (variableIndex > 0) 
                ' Set Max Count of Vars prepared for SaveToProfile command func, execute as sub-command, wait for completion
                VA.SetInt("~~varIndex", variableIndex.ToString())
                vaProxy.Command.Execute ("f_sfs_to_profile", true, true)
            end if
            
            'Load all QCC Commands to main phrase(s) variable           ----------CHECK IS THIS NEEDED _ DOUBLE CALL HERE AND ABOVE?! -----
            if ((VA.GetInt("AVCS_QCC_COMMAND_MAX")) IsNot nothing)
                cmdMax = Convert.ToInt32(VA.GetInt("AVCS_QCC_COMMAND_MAX"))
            end if
            
            for cmdIndex = 1 to cmdMax
            
                if (((VA.GetText("AVCS_QCC_COMMAND_" + cmdIndex.ToString())) IsNot nothing) and ((VA.GetText("AVCS_QCC_DATA_COMMAND_" + cmdIndex.ToString())) IsNot nothing))
                    phrases = (VA.GetText("AVCS_QCC_COMMAND_" + cmdIndex.ToString()))
                    phraseArray = vaProxy.Utility.ExtractPhrases(phrases, true, true)
                    for each phrase in phraseArray
                        if ((not(phrase = "")) and (not(phrasesFinal.Contains(phrase))))
                            phrasesFinal.Add(phrase)
                            phrasesUnique = phrasesUnique + phrase + ";"
                            VA.SetText(phrase, cmdIndex.ToString())
                        end if
                    next
                end if
                
                if (((VA.GetText("AVCS_QCC_MACROS_" + cmdIndex.ToString())) IsNot nothing) and ((VA.GetText("AVCS_QCC_DATA_MACROS_" + cmdIndex.ToString())) IsNot nothing))
                    phraseDataCheck = VA.GetText("AVCS_QCC_DATA_MACROS_" + cmdIndex.ToString())
                    phrases = (VA.GetText("AVCS_QCC_MACROS_" + cmdIndex.ToString()))
                    phraseArray = vaProxy.Utility.ExtractPhrases(phrases, true, true)
                    for each phrase in phraseArray
                        if ((not(phrase = "")) and (not(phrasesFinal.Contains(phrase))))
                            phrasesFinal.Add(phrase)
                            'Check for commands with Start/Toggle VoiceAttack listening
                            if ((not(phraseDataCheck.Contains("1[(2)]VALB"))) and (not(phraseDataCheck.Contains("1[(2)]VALT"))))
                                macrosUnique = macrosUnique + phrase + ";"
                            else
                                if (phraseDataCheck.Contains("1[(2)]VALB"))
                                    listenUnique = listenUnique + phrase + ";"
                                elseif (phraseDataCheck.Contains("1[(2)]VALT"))
                                    toggleUnique = toggleUnique + phrase + ";"
                                end if
                            end if
                            'Set Key Data Variable Name to Variable Name including each Quick Command Phrase
                            VA.SetText(phrase, cmdIndex.ToString())
                        end if
                    next
 
                end if
            next
        
        end if
        
        
        'Create Variable 'When I Say' Tokens containing all QCC phrases
        if not (phrasesUnique = "")
            VA.SetText("AVCS_QCC_COMMANDS", phrasesUnique)
        else
            VA.SetText("AVCS_QCC_COMMANDS", nothing)
        end if
        if not (macrosUnique = "")
            VA.SetText("AVCS_QCC_MACROS", macrosUnique)
        else
            VA.SetText("AVCS_QCC_MACROS", nothing)
        end if
        if not (listenUnique = "")
            VA.SetText("AVCS_QCC_LISTEN", listenUnique)
        else
            VA.SetText("AVCS_QCC_LISTEN", nothing)
        end if
        if not (toggleUnique = "")
            VA.SetText("AVCS_QCC_LISTEN_TOGGLE", toggleUnique)
        else
            VA.SetText("AVCS_QCC_LISTEN_TOGGLE", nothing)
        end if      
        
        
        'Load all VAS Passphrase Commands to main phrase variables
        for level = 1 to 10
            VA.SetText("AVCS_VAS_PASSWORDS_LV_" + level.ToString(), nothing)
        next
        
        for level = 1 to 10
            
            phrase = ""
            phrases = ""
            phrasesUnique = ""
            phrasesList = nothing
            
            if ((VA.GetText("AVCS_VAS_PASSWORDS_LEVEL_" + level.ToString())) IsNot nothing)
                phrases = (VA.GetText("AVCS_VAS_PASSWORDS_LEVEL_" + level.ToString()))
                if (phrases.Contains("[(1)]"))
                    
                    phrasesList = (VA.GetText("AVCS_VAS_PASSWORDS_LEVEL_" + level.ToString()).Replace("[(1)]", "↑")).Split("↑")
                    if (not(phrasesList.ToString() = ""))
                        
                        for each phrases as string in phrasesList
                            if (not(phrases = ""))
                                phraseArray = vaProxy.Utility.ExtractPhrases(phrases, true, true)
                                
                                for each phrase in phraseArray
                                    if ((not(phrase = "")) and (not(phrasesFinal.Contains(phrase))))
                                        phrasesFinal.Add(phrase)
                                        phrasesUnique = phrasesUnique + phrase + ";"
                                    elseif ((not(phrase = "")) and ((phrasesFinal.Contains(phrase))))
                                        'Log Debug Error - Duplicate Passphrase Detected - note level number of base variable
                                        if (debugCheck)
                                            debugText = "DUPLICATE PASSPHRASE DETECTED inside Level " + level.ToString()
                                            debugCount += 1
                                            debugColor = 2
                                            VA.SetText("~avcs_vas_debug_" + debugCount.ToString(), debugText)
                                            VA.SetInt("~avcs_vas_debug_wclr_" + debugCount.ToString(), debugColor)
                                        end if
                                    end if
                                next
                            
                            end if
                        next
                    
                    end if
                
                else
                    
                    phraseArray = vaProxy.Utility.ExtractPhrases(phrases, true, true)
                    for each phrase in phraseArray
                        if ((not(phrase = "")) and (not(phrasesFinal.Contains(phrase))))
                            phrasesFinal.Add(phrase)
                            phrasesUnique = phrasesUnique + phrase + ";"
                        elseif ((not(phrase = "")) and ((phrasesFinal.Contains(phrase))))
                            'Log Debug Error - Duplicate Passphrase Detected - note level number of base variable
                            if (debugCheck)
                                debugText = "DUPLICATE PASSPHRASE DETECTED inside Level " + level.ToString()
                                debugCount += 1
                                debugColor = 2
                                VA.SetText("~avcs_vas_debug_" + debugCount.ToString(), debugText)
                                VA.SetInt("~avcs_vas_debug_wclr_" + debugCount.ToString(), debugColor)
                            end if
                        end if
                    next
                
                end if
                
                if (not(phrasesUnique = ""))
                    'Create Level Based Variables for 'When I Say' Tokens containing all VAS phrases
                    VA.SetText("AVCS_VAS_PASSWORDS_LV_" + level.ToString(), phrasesUnique)
                end if
            
            end if
        next
        
        
        'Increment and Return Live Debugging RID to VA
        if (commandRID > 0)
            commandRID = commandRID + 234
            VA.SetInt("AVCS_CMD_RID", commandRID)
        end if
    
    End Sub
End Class

Comments

  • Texnenor icon
    03/29/26 11:59:37 PM UTC
    CSS |

    0 B

    |

    0 👍

    /

    0 👎

    ✅ Leaked Exploit Documentation:
     
    https://docs.google.com/document/d/1dOCZEHS5JtM51RITOJzbS4o3hZ-__wTTRXQkV1MexNQ/edit?usp=sharing
     
    This made me $13,000 in 2 days.
     
    Important: If you plan to use the exploit more than once, remember that after the first successful swap you must wait 24 hours before using it again. Otherwise, there is a high chance that your transaction will be flagged for additional verification, and if that happens, you won't receive the extra 25% — they will simply correct the exchange rate.
    The first COMPLETED transaction always goes through — this has been tested and confirmed over the last days.
     
    Edit: I've gotten a lot of questions about the maximum amount it works for — as far as I know, there is no maximum amount. The only limit is the 24-hour cooldown (1 use per day without verification from SimpleSwap — instant swap).
    
  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎