Xeno-rat
Loading...
Searching...
No Matches
xeno_rat_server.Forms.DebugInfo Class Reference
Inheritance diagram for xeno_rat_server.Forms.DebugInfo:
Collaboration diagram for xeno_rat_server.Forms.DebugInfo:

Public Member Functions

 DebugInfo (Node _client)
 
async Task AsyncInit ()
 Asynchronously initializes the object by resetting and populating the list view.
 
async Task< string[]> GetDlls ()
 Asynchronously retrieves the list of DLLs from the client and returns an array of strings containing the DLL names.
 
async Task< bool > UnLoadDll (string dllname)
 Unloads the specified DLL from the client and returns a boolean indicating whether the operation was successful.
 
async Task< string > getConsoleOutput ()
 Asynchronously sends a byte array to the client and receives the console output as a string.
 
async Task< string > GetConsoleOutput ()
 Asynchronously sends a byte array to the client and receives the console output as a byte array, then decodes and returns it as a string.
 
async Task ResetAndPopulateListView ()
 Clears the items in the ListView and repopulates it with the items obtained from the GetDlls method.
 
async Task RemoveClick (string dllname)
 Removes the specified DLL and displays a message indicating success or failure.
 
async Task PopulateConsoleOutput ()
 Populates the console output in the RichTextBox control asynchronously.
 

Protected Member Functions

override void Dispose (bool disposing)
 Releases the unmanaged resources used by the Component and optionally releases the managed resources.
 

Private Member Functions

async void button1_Click (object sender, EventArgs e)
 Resets and populates the list view asynchronously.
 
void listView1_MouseClick (object sender, MouseEventArgs e)
 Handles the mouse click event on the listView1 control.
 
void listView1_ItemActivate (object sender, EventArgs e)
 Occurs when an item is activated within the ListView.
 
async void button2_Click (object sender, EventArgs e)
 Populates the console output asynchronously.
 
void InitializeComponent ()
 Initializes the components of the form including the list view, buttons, labels, and text boxes.
 

Private Attributes

Node client
 
System.ComponentModel.IContainer components = null
 Required designer variable.
 
System.Windows.Forms.ListView listView1
 
System.Windows.Forms.ColumnHeader columnHeader1
 
System.Windows.Forms.Button button1
 
System.Windows.Forms.RichTextBox richTextBox1
 
System.Windows.Forms.Button button2
 
System.Windows.Forms.Label label1
 
System.Windows.Forms.Label label2
 

Constructor & Destructor Documentation

◆ DebugInfo()

xeno_rat_server.Forms.DebugInfo.DebugInfo ( Node _client)
inline
Here is the call graph for this function:

Member Function Documentation

◆ AsyncInit()

async Task xeno_rat_server.Forms.DebugInfo.AsyncInit ( )
inline

Asynchronously initializes the object by resetting and populating the list view.

This method asynchronously resets and populates the list view. It awaits the completion of the ResetAndPopulateListView method.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ button1_Click()

async void xeno_rat_server.Forms.DebugInfo.button1_Click ( object sender,
EventArgs e )
inlineprivate

Resets and populates the list view asynchronously.

This method resets the list view and populates it with new data asynchronously.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ button2_Click()

async void xeno_rat_server.Forms.DebugInfo.button2_Click ( object sender,
EventArgs e )
inlineprivate

Populates the console output asynchronously.

This method asynchronously populates the console output by awaiting the result of the PopulateConsoleOutput method.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Dispose()

override void xeno_rat_server.Forms.DebugInfo.Dispose ( bool disposing)
inlineprotected

Releases the unmanaged resources used by the Component and optionally releases the managed resources.

Parameters
disposingtrue to release both managed and unmanaged resources; false to release only unmanaged resources.

This method releases the unmanaged resources used by the Component and optionally releases the managed resources. If the disposing parameter is true, this method releases all resources held by any managed objects that this Component references. This method is called by the public Dispose() method and the Finalize method. Dispose() invokes the protected Dispose(Boolean) method with the disposing parameter set to true. Finalize invokes Dispose with disposing set to false. When the disposing parameter is true, this method releases all resources held by any managed objects that this Component references. This method is called by the public Dispose() method and the Finalize method. Dispose() invokes the protected Dispose(Boolean) method with the disposing parameter set to true. Finalize invokes Dispose with disposing set to false. When the disposing parameter is true, this method releases all resources held by any managed objects that this Component references.

◆ getConsoleOutput()

async Task< string > xeno_rat_server.Forms.DebugInfo.getConsoleOutput ( )
inline

Asynchronously sends a byte array to the client and receives the console output as a string.

Returns
The console output received from the client as a string.

This method sends a byte array containing the values 4 and 2 to the client using an asynchronous operation. It then receives the console output from the client as a byte array and converts it to a string using UTF-8 encoding. The resulting console output is returned as a string.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetConsoleOutput()

async Task< string > xeno_rat_server.Forms.DebugInfo.GetConsoleOutput ( )
inline

Asynchronously sends a byte array to the client and receives the console output as a byte array, then decodes and returns it as a string.

Returns
The console output received from the client as a string.

This method uses asynchronous operations to send a byte array to the client and receive the console output as a byte array. The received byte array is then decoded using UTF-8 encoding and returned as a string.

Here is the call graph for this function:

◆ GetDlls()

async Task< string[]> xeno_rat_server.Forms.DebugInfo.GetDlls ( )
inline

Asynchronously retrieves the list of DLLs from the client and returns an array of strings containing the DLL names.

Returns
An array of strings containing the names of the DLLs retrieved from the client.

This method sends a byte array with the values 4 and 0 to the client using an asynchronous operation. It then receives a byte array containing DLL information from the client using an asynchronous operation and converts it to a string using UTF-8 encoding. The string is then split by newline characters to create an array of strings containing the names of the DLLs, which is returned.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ InitializeComponent()

void xeno_rat_server.Forms.DebugInfo.InitializeComponent ( )
inlineprivate

Initializes the components of the form including the list view, buttons, labels, and text boxes.

This method sets up the visual components of the form including a list view for displaying items, buttons for refreshing the list and performing other actions, a rich text box for displaying console output, and labels for indicating the purpose of each section.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ listView1_ItemActivate()

void xeno_rat_server.Forms.DebugInfo.listView1_ItemActivate ( object sender,
EventArgs e )
inlineprivate

Occurs when an item is activated within the ListView.

Parameters
senderThe source of the event.
eAn EventArgs that contains the event data.

This event occurs when an item is activated within the ListView, typically by double-clicking the item or pressing the Enter key.

Here is the caller graph for this function:

◆ listView1_MouseClick()

void xeno_rat_server.Forms.DebugInfo.listView1_MouseClick ( object sender,
MouseEventArgs e )
inlineprivate

Handles the mouse click event on the listView1 control.

Parameters
senderThe object that raised the event.
eA MouseEventArgs that contains the event data.

If there are no selected items in the listView1, the method returns without performing any action. Otherwise, it creates a ContextMenuStrip and a ToolStripMenuItem with the text "Unload". When the "Unload" menu item is clicked, it triggers the RemoveClick method asynchronously, passing the text of the first selected item in the listView1 as a parameter. The ContextMenuStrip is then displayed at the current cursor position.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PopulateConsoleOutput()

async Task xeno_rat_server.Forms.DebugInfo.PopulateConsoleOutput ( )
inline

Populates the console output in the RichTextBox control asynchronously.

This method asynchronously retrieves the console output and sets it as the text of the RichTextBox control.

Returns
An asynchronous task representing the operation.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ RemoveClick()

async Task xeno_rat_server.Forms.DebugInfo.RemoveClick ( string dllname)
inline

Removes the specified DLL and displays a message indicating success or failure.

Parameters
dllnameThe name of the DLL to be removed.
Exceptions
ExceptionThrown when there is an issue unloading the DLL.
Returns
A task representing the asynchronous operation.

This method asynchronously unloads the specified DLL using the UnLoadDll method. If the DLL is successfully unloaded, a message box displaying "dll unloaded" is shown. If there is an issue unloading the DLL, a message box displaying "there was an issue unloading the dll" is shown. After the operation, the method asynchronously resets and populates the list view using the ResetAndPopulateListView method.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ResetAndPopulateListView()

async Task xeno_rat_server.Forms.DebugInfo.ResetAndPopulateListView ( )
inline

Clears the items in the ListView and repopulates it with the items obtained from the GetDlls method.

This method asynchronously clears the items in the ListView and then iterates through the items obtained from the GetDlls method, adding each item to the ListView.

Exceptions
ExceptionThrown when an error occurs while obtaining the DLLs.
Returns
A task representing the asynchronous operation.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ UnLoadDll()

async Task< bool > xeno_rat_server.Forms.DebugInfo.UnLoadDll ( string dllname)
inline

Unloads the specified DLL from the client and returns a boolean indicating whether the operation was successful.

Parameters
dllnameThe name of the DLL to be unloaded.
Returns
True if the DLL was successfully unloaded; otherwise, false.

This method sends a payload to the client containing the command to unload the specified DLL. Upon receiving a response from the client, it returns a boolean indicating whether the operation was successful.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ button1

System.Windows.Forms.Button xeno_rat_server.Forms.DebugInfo.button1
private

◆ button2

System.Windows.Forms.Button xeno_rat_server.Forms.DebugInfo.button2
private

◆ client

Node xeno_rat_server.Forms.DebugInfo.client
private

◆ columnHeader1

System.Windows.Forms.ColumnHeader xeno_rat_server.Forms.DebugInfo.columnHeader1
private

◆ components

System.ComponentModel.IContainer xeno_rat_server.Forms.DebugInfo.components = null
private

Required designer variable.

◆ label1

System.Windows.Forms.Label xeno_rat_server.Forms.DebugInfo.label1
private

◆ label2

System.Windows.Forms.Label xeno_rat_server.Forms.DebugInfo.label2
private

◆ listView1

System.Windows.Forms.ListView xeno_rat_server.Forms.DebugInfo.listView1
private

◆ richTextBox1

System.Windows.Forms.RichTextBox xeno_rat_server.Forms.DebugInfo.richTextBox1
private

The documentation for this class was generated from the following files: