[*] starting build [*] indirect syscalls has been enabled [*] set service name to DemonSvc [*] no sleep obfuscation has been specified [*] sleep jump gadget option ignored [*] stack duplication option ignored [*] no proxy loading technique specified (using LdrLoadDll) [*] amsi/etw patching disabled [*] config size [496 bytes] [*] compiling source [-] couldn't compile implant: exit status 1 [-] compile output: src/core/CoffeeLdr.c: In function ‘CoffeeCleanup’: src/core/CoffeeLdr.c:416:23: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 416 | MemSet( Coffee->SecMap, 0, Coffee->Header->NumberOfSections * sizeof( SECTION_MAP ) ); | ~~~~~~^~~~~~~~ | | | PSECTION_MAP {aka struct _SECTION_MAP *} In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/CoffeeLdr.c:1: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PSECTION_MAP’ {aka ‘struct _SECTION_MAP *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:28: include/core/CoffeeLdr.h:86:17: note: ‘PSECTION_MAP’ declared here 86 | } SECTION_MAP, *PSECTION_MAP; | ^~~~~~~~~~~~ src/core/CoffeeLdr.c: In function ‘CoffeeLdr’: src/core/CoffeeLdr.c:793:17: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 793 | MemSet( Coffee, 0, sizeof( Coffee ) ); | ^~~~~~ | | | PCOFFEE {aka struct _COFFEE *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PCOFFEE’ {aka ‘struct _COFFEE *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/CoffeeLdr.h:104:12: note: ‘PCOFFEE’ declared here 104 | } COFFEE, *PCOFFEE; | ^~~~~~~ In file included from include/Demon.h:11: src/core/CoffeeLdr.c: In function ‘CoffeeRunnerThread’: src/core/CoffeeLdr.c:812:20: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 812 | DATA_FREE( Param, sizeof( COFFEE_PARAMS ) ); | ^~~~~ | | | PCOFFEE_PARAMS {aka struct _COFFEE_PARAMS *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PCOFFEE_PARAMS’ {aka ‘struct _COFFEE_PARAMS *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/CoffeeLdr.h:28:19: note: ‘PCOFFEE_PARAMS’ declared here 28 | } COFFEE_PARAMS, *PCOFFEE_PARAMS; | ^~~~~~~~~~~~~~ src/core/Command.c: In function ‘CommandProc’: src/core/Command.c:320:41: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 320 | MemSet( ModuleNameW, 0, MAX_PATH ); | ^~~~~~~~~~~ | | | WCHAR * {aka short unsigned int *} In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/Command.c:1: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘WCHAR *’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Command.c:408:29: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 408 | MemSet( PtrProcessInfo, 0, ProcessInfoSize ); | ^~~~~~~~~~~~~~ | | | PSYSTEM_PROCESS_INFORMATION {aka struct _SYSTEM_PROCESS_INFORMATION *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PSYSTEM_PROCESS_INFORMATION’ {aka ‘struct _SYSTEM_PROCESS_INFORMATION *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:10: include/common/Native.h:4953:32: note: ‘PSYSTEM_PROCESS_INFORMATION’ declared here 4953 | } SYSTEM_PROCESS_INFORMATION, *PSYSTEM_PROCESS_INFORMATION; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/Command.c: In function ‘CommandProcList’: src/core/Command.c:618:64: error: passing argument 2 of ‘PackageAddBytes’ from incompatible pointer type [-Wincompatible-pointer-types] 618 | PackageAddBytes( Package, SysProcessInfo->ImageName.Buffer, SysProcessInfo->ImageName.Length ); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ | | | PWSTR {aka short unsigned int *} In file included from include/Demon.h:20: include/core/Package.h:53:11: note: expected ‘PBYTE’ {aka ‘unsigned char *’} but argument is of type ‘PWSTR’ {aka ‘short unsigned int *’} 53 | PBYTE data, | ~~~~~~^~~~ /usr/share/mingw-w64/include/minwindef.h:144:17: note: ‘PBYTE’ declared here 144 | typedef BYTE *PBYTE; | ^~~~~ /usr/share/mingw-w64/include/winnt.h:316:34: note: ‘PWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~ In file included from src/core/Command.c:8: src/core/Command.c:665:22: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 665 | MemZero( SysProcessPtr, ProcessInfoSize ); | ^~~~~~~~~~~~~ | | | PSYS_PROC_INFO {aka struct _SYSTEM_PROCESS_INFORMATION *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PSYS_PROC_INFO’ {aka ‘struct _SYSTEM_PROCESS_INFORMATION *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/common/Clr.h:6, from include/Demon.h:12: include/core/Win32.h:113:38: note: ‘PSYS_PROC_INFO’ declared here 113 | typedef PSYSTEM_PROCESS_INFORMATION PSYS_PROC_INFO; | ^~~~~~~~~~~~~~ src/core/Command.c: In function ‘CommandFS’: src/core/Command.c:700:45: error: initialization of ‘UINT32’ {aka ‘unsigned int’} from ‘void *’ makes integer from pointer without a cast [-Wint-conversion] 700 | UINT32 PathSize = NULL; | ^~~~ In file included from include/Demon.h:11: src/core/Command.c:723:32: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 723 | DATA_FREE( Path, MAX_PATH * sizeof( WCHAR ) ); | ^~~~ | | | LPWSTR {aka short unsigned int *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Command.c:779:36: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 779 | DATA_FREE( DirOrFile, sizeof( DIR_OR_FILE ) ); | ^~~~~~~~~ | | | PDIR_OR_FILE {aka struct _DIR_OR_FILE *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PDIR_OR_FILE’ {aka ‘struct _DIR_OR_FILE *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Win32.h:37:17: note: ‘PDIR_OR_FILE’ declared here 37 | } DIR_OR_FILE, *PDIR_OR_FILE; | ^~~~~~~~~~~~ src/core/Command.c:785:28: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 785 | DATA_FREE( RootDir, sizeof( ROOT_DIR ) ); | ^~~~~~~ | | | PROOT_DIR {aka struct _ROOT_DIR *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PROOT_DIR’ {aka ‘struct _ROOT_DIR *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Win32.h:55:14: note: ‘PROOT_DIR’ declared here 55 | } ROOT_DIR, *PROOT_DIR; | ^~~~~~~~~ src/core/Command.c:789:24: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 789 | DATA_FREE( Path, MAX_PATH * sizeof( WCHAR ) ); | ^~~~ | | | LPWSTR {aka short unsigned int *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Command.c: In function ‘CommandInjectShellcode’: src/core/Command.c:1289:39: error: passing argument 2 of ‘ParserGetBytes’ from incompatible pointer type [-Wincompatible-pointer-types] 1289 | Payload = ParserGetBytes( Parser, &Size ); | ^~~~~ | | | DWORD * {aka long unsigned int *} In file included from include/core/Command.h:4, from include/core/Package.h:4: include/core/Parser.h:23:48: note: expected ‘PUINT32’ {aka ‘unsigned int *’} but argument is of type ‘DWORD *’ {aka ‘long unsigned int *’} 23 | PBYTE ParserGetBytes( PPARSER parser, PUINT32 size ); | ~~~~~~~~^~~~ In file included from /usr/share/mingw-w64/include/winnt.h:157: /usr/share/mingw-w64/include/basetsd.h:35:32: note: ‘PUINT32’ declared here 35 | typedef unsigned int UINT32,*PUINT32; | ^~~~~~~ src/core/Command.c:1290:39: error: passing argument 2 of ‘ParserGetBytes’ from incompatible pointer type [-Wincompatible-pointer-types] 1290 | Argv = ParserGetBytes( Parser, &Argc ); | ^~~~~ | | | DWORD * {aka long unsigned int *} include/core/Parser.h:23:48: note: expected ‘PUINT32’ {aka ‘unsigned int *’} but argument is of type ‘DWORD *’ {aka ‘long unsigned int *’} 23 | PBYTE ParserGetBytes( PPARSER parser, PUINT32 size ); | ~~~~~~~~^~~~ /usr/share/mingw-w64/include/basetsd.h:35:32: note: ‘PUINT32’ declared here 35 | typedef unsigned int UINT32,*PUINT32; | ^~~~~~~ src/core/Command.c: In function ‘CommandToken’: src/core/Command.c:1393:53: error: passing argument 2 of ‘PackageAddString’ from incompatible pointer type [-Wincompatible-pointer-types] 1393 | PackageAddString( Package, TokenData->DomainUser ); | ~~~~~~~~~^~~~~~~~~~~~ | | | LPWSTR {aka short unsigned int *} include/core/Package.h:59:11: note: expected ‘PCHAR’ {aka ‘char *’} but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 59 | PCHAR data | ~~~~~~^~~~ /usr/share/mingw-w64/include/winnt.h:351:17: note: ‘PCHAR’ declared here 351 | typedef CHAR *PCHAR,*LPCH,*PCH; | ^~~~~ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Command.c:1524:25: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1524 | MemSet( TokenPrivs, 0, sizeof( TOKEN_PRIVILEGES ) ); | ^~~~~~~~~~ | | | PTOKEN_PRIVILEGES {aka struct _TOKEN_PRIVILEGES *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PTOKEN_PRIVILEGES’ {aka ‘struct _TOKEN_PRIVILEGES *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:4209:25: note: ‘PTOKEN_PRIVILEGES’ declared here 4209 | } TOKEN_PRIVILEGES,*PTOKEN_PRIVILEGES; | ^~~~~~~~~~~~~~~~~ src/core/Command.c:1559:29: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1559 | MemSet( UserDomain, 0, UserDomainSize ); | ^~~~~~~~~~ | | | PWCHAR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PWCHAR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:314:18: note: ‘PWCHAR’ declared here 314 | typedef WCHAR *PWCHAR,*LPWCH,*PWCH; | ^~~~~~ src/core/Command.c:1562:48: error: passing argument 2 of ‘StringConcatW’ from incompatible pointer type [-Wincompatible-pointer-types] 1562 | StringConcatW( UserDomain, Deli ); | ^~~~ | | | CHAR * {aka char *} include/core/MiniStd.h:20:45: note: expected ‘PWCHAR’ {aka ‘short unsigned int *’} but argument is of type ‘CHAR *’ {aka ‘char *’} 20 | PWCHAR StringConcatW(PWCHAR String, PWCHAR String2); | ~~~~~~~^~~~~~~ /usr/share/mingw-w64/include/winnt.h:314:18: note: ‘PWCHAR’ declared here 314 | typedef WCHAR *PWCHAR,*LPWCH,*PWCH; | ^~~~~~ src/core/Command.c:1698:28: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1698 | DATA_FREE( TokenList, NumTokens * sizeof( USER_TOKEN_DATA ) ); | ^~~~~~~~~ | | | PUSER_TOKEN_DATA {aka struct _USER_TOKEN_DATA *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PUSER_TOKEN_DATA’ {aka ‘struct _USER_TOKEN_DATA *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:16: include/core/Token.h:51:21: note: ‘PUSER_TOKEN_DATA’ declared here 51 | } USER_TOKEN_DATA, *PUSER_TOKEN_DATA; | ^~~~~~~~~~~~~~~~ src/core/Command.c: In function ‘CommandAssemblyListVersion’: src/core/Command.c:1799:10: error: implicit declaration of function ‘RtMscoree’ [-Wimplicit-function-declaration] 1799 | if ( RtMscoree() ) | ^~~~~~~~~ src/core/Command.c: In function ‘CommandConfig’: src/core/Command.c:2019:49: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 2019 | MemSet( Instance->Config.Process.Spawn64, 0, StringLengthW( Instance->Config.Process.Spawn64 ) * sizeof( WCHAR ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ | | | PWCHAR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PWCHAR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:314:18: note: ‘PWCHAR’ declared here 314 | typedef WCHAR *PWCHAR,*LPWCH,*PWCH; | ^~~~~~ src/core/Command.c:2041:49: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 2041 | MemSet( Instance->Config.Process.Spawn86, 0, StringLengthW( Instance->Config.Process.Spawn86 ) * sizeof( WCHAR ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ | | | PWCHAR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PWCHAR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:314:18: note: ‘PWCHAR’ declared here 314 | typedef WCHAR *PWCHAR,*LPWCH,*PWCH; | ^~~~~~ src/core/Command.c: In function ‘CommandKerberos’: src/core/Command.c:3109:25: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 3109 | MemSet( luid, 0, sizeof( LUID ) ); | ^~~~ | | | LUID * /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LUID *’ 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Command.c:3188:40: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 3188 | DATA_FREE( Sessions->Tickets, sizeof( TICKET_INFORMATION ) ); | ~~~~~~~~^~~~~~~~~ | | | PTICKET_INFORMATION {aka struct _TICKET_INFORMATION *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PTICKET_INFORMATION’ {aka ‘struct _TICKET_INFORMATION *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:24: include/core/Kerberos.h:38:23: note: ‘PTICKET_INFORMATION’ declared here 38 | } TICKET_INFORMATION,*PTICKET_INFORMATION; | ^~~~~~~~~~~~~~~~~~~ src/core/Command.c:3192:28: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 3192 | DATA_FREE( Sessions, sizeof( SESSION_INFORMATION ) ); | ^~~~~~~~ | | | PSESSION_INFORMATION {aka struct _SESSION_INFORMATION *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PSESSION_INFORMATION’ {aka ‘struct _SESSION_INFORMATION *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Kerberos.h:54:24: note: ‘PSESSION_INFORMATION’ declared here 54 | } SESSION_INFORMATION,*PSESSION_INFORMATION; | ^~~~~~~~~~~~~~~~~~~~ src/core/Command.c: In function ‘CommandExit’: src/core/Command.c:3378:17: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 3378 | MemSet( SocketEntry, 0, sizeof( SOCKET_DATA ) ); | ^~~~~~~~~~~ | | | PSOCKET_DATA {aka struct _SOCKET_DATA *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PSOCKET_DATA’ {aka ‘struct _SOCKET_DATA *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:23: include/core/Socket.h:62:17: note: ‘PSOCKET_DATA’ declared here 62 | } SOCKET_DATA, *PSOCKET_DATA; | ^~~~~~~~~~~~ src/core/Command.c:3442:20: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 3442 | DATA_FREE( KeyValueEntry, sizeof( COFFEE_KEY_VALUE ) ); | ^~~~~~~~~~~~~ | | | PCOFFEE_KEY_VALUE {aka struct _COFFEE_KEY_VALUE *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PCOFFEE_KEY_VALUE’ {aka ‘struct _COFFEE_KEY_VALUE *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:28: include/core/CoffeeLdr.h:114:22: note: ‘PCOFFEE_KEY_VALUE’ declared here 114 | } COFFEE_KEY_VALUE, *PCOFFEE_KEY_VALUE; | ^~~~~~~~~~~~~~~~~ src/core/Command.c:3472:15: error: assignment to ‘SIZE_T’ {aka ‘long long unsigned int’} from ‘void *’ makes integer from pointer without a cast [-Wint-conversion] 3472 | ImageSize = NULL; | ^ src/core/Dotnet.c: In function ‘DotnetClose’: src/core/Dotnet.c:402:33: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 402 | MemSet( Instance->Dotnet->RopInit, 0, sizeof( CONTEXT ) ); | ~~~~~~~~~~~~~~~~^~~~~~~~~ | | | PCONTEXT {aka struct _CONTEXT *} In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/Dotnet.c:1: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PCONTEXT’ {aka ‘struct _CONTEXT *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:1916:14: note: ‘PCONTEXT’ declared here 1916 | } CONTEXT,*PCONTEXT; | ^~~~~~~~ src/core/Dotnet.c:409:33: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 409 | MemSet( Instance->Dotnet->RopInvk, 0, sizeof( CONTEXT ) ); | ~~~~~~~~~~~~~~~~^~~~~~~~~ | | | PCONTEXT {aka struct _CONTEXT *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PCONTEXT’ {aka ‘struct _CONTEXT *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:1916:14: note: ‘PCONTEXT’ declared here 1916 | } CONTEXT,*PCONTEXT; | ^~~~~~~~ src/core/Dotnet.c:416:33: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 416 | MemSet( Instance->Dotnet->RopEvnt, 0, sizeof( CONTEXT ) ); | ~~~~~~~~~~~~~~~~^~~~~~~~~ | | | PCONTEXT {aka struct _CONTEXT *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PCONTEXT’ {aka ‘struct _CONTEXT *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:1916:14: note: ‘PCONTEXT’ declared here 1916 | } CONTEXT,*PCONTEXT; | ^~~~~~~~ src/core/Dotnet.c:423:33: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 423 | MemSet( Instance->Dotnet->RopExit, 0, sizeof( CONTEXT ) ); | ~~~~~~~~~~~~~~~~^~~~~~~~~ | | | PCONTEXT {aka struct _CONTEXT *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PCONTEXT’ {aka ‘struct _CONTEXT *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:1916:14: note: ‘PCONTEXT’ declared here 1916 | } CONTEXT,*PCONTEXT; | ^~~~~~~~ src/core/Dotnet.c:495:25: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 495 | MemSet( Instance->Dotnet, 0, sizeof( DOTNET_ARGS ) ); | ~~~~~~~~^~~~~~~~ | | | PDOTNET_ARGS {aka struct _DOTNET_ARGS *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PDOTNET_ARGS’ {aka ‘struct _DOTNET_ARGS *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:12: include/common/Clr.h:707:17: note: ‘PDOTNET_ARGS’ declared here 707 | } DOTNET_ARGS, *PDOTNET_ARGS; | ^~~~~~~~~~~~ src/core/Download.c: In function ‘DownloadFree’: src/core/Download.c:51:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 51 | MemSet( Download, 0, sizeof( DOWNLOAD_DATA ) ); | ^~~~~~~~ | | | PDOWNLOAD_DATA {aka struct _DOWNLOAD_DATA *} In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/Download.c:1: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PDOWNLOAD_DATA’ {aka ‘struct _DOWNLOAD_DATA *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:21: include/core/Download.h:45:19: note: ‘PDOWNLOAD_DATA’ declared here 45 | } DOWNLOAD_DATA, *PDOWNLOAD_DATA; | ^~~~~~~~~~~~~~ src/core/Download.c: In function ‘MemFileFree’: src/core/Download.c:350:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 350 | MemSet( MemFile, 0, sizeof( MEM_FILE ) ); | ^~~~~~~ | | | PMEM_FILE {aka struct _MEM_FILE *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PMEM_FILE’ {aka ‘struct _MEM_FILE *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Download.h:67:14: note: ‘PMEM_FILE’ declared here 67 | } MEM_FILE, *PMEM_FILE; | ^~~~~~~~~ In file included from src/core/HwBpEngine.c:5: src/core/HwBpEngine.c: In function ‘HwBpEngineRemove’: src/core/HwBpEngine.c:246:22: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 246 | MemZero( BpEntry, sizeof( BP_LIST ) ); | ^~~~~~~ | | | PBP_LIST {aka struct _BP_LIST *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/HwBpEngine.c:1: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PBP_LIST’ {aka ‘struct _BP_LIST *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:27: include/core/HwBpEngine.h:16:13: note: ‘PBP_LIST’ declared here 16 | } BP_LIST, *PBP_LIST; | ^~~~~~~~ src/core/HwBpEngine.c: In function ‘HwBpEngineDestroy’: src/core/HwBpEngine.c:295:18: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 295 | MemZero( BpEntry, sizeof( BP_LIST ) ); | ^~~~~~~ | | | PBP_LIST {aka struct _BP_LIST *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PBP_LIST’ {aka ‘struct _BP_LIST *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/HwBpEngine.h:16:13: note: ‘PBP_LIST’ declared here 16 | } BP_LIST, *PBP_LIST; | ^~~~~~~~ src/core/Jobs.c: In function ‘JobRemove’: src/core/Jobs.c:428:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 428 | MemSet( JobToRemove, 0, sizeof( JOB_DATA ) ); | ^~~~~~~~~~~ | | | PJOB_DATA {aka struct _JOB_DATA *} In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/Jobs.c:1: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PJOB_DATA’ {aka ‘struct _JOB_DATA *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:19: include/core/Jobs.h:23:14: note: ‘PJOB_DATA’ declared here 23 | } JOB_DATA, *PJOB_DATA; | ^~~~~~~~~ In file included from src/core/Kerberos.c:5: src/core/Kerberos.c: In function ‘ElevateToSystem’: src/core/Kerberos.c:86:14: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 86 | MemZero( winlogon, sizeof( winlogon ) ); | ^~~~~~~~ | | | WCHAR * {aka short unsigned int *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/Kerberos.c:2: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘WCHAR *’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Obf.c: In function ‘FoliageObf’: src/core/Obf.c:315:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 315 | MemSet( &Rc4, 0, sizeof( USTRING ) ); | ^~~~ | | | USTRING * In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/Obf.c:1: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘USTRING *’ 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Obf.c:316:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 316 | MemSet( &Key, 0, sizeof( USTRING ) ); | ^~~~ | | | USTRING * /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘USTRING *’ 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Obf.c:317:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 317 | MemSet( &Random, 0, 0x10 ); | ^~~~~~~ | | | UCHAR (*)[16] {aka unsigned char (*)[16]} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘UCHAR (*)[16]’ {aka ‘unsigned char (*)[16]’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/ObjectApi.c: In function ‘BeaconSpawnTemporaryProcess’: src/core/ObjectApi.c:477:111: error: passing argument 9 of ‘Instance->Win32.CreateProcessW’ from incompatible pointer type [-Wincompatible-pointer-types] 477 | bSuccess = Instance->Win32.CreateProcessW(NULL, Path, NULL, NULL, TRUE, CREATE_NO_WINDOW, NULL, NULL, sInfo, pInfo); | ^~~~~ | | | STARTUPINFO * {aka STARTUPINFOA *} src/core/ObjectApi.c:477:111: note: expected ‘LPSTARTUPINFOW’ {aka ‘struct _STARTUPINFOW *’} but argument is of type ‘STARTUPINFO *’ {aka ‘STARTUPINFOA *’} In file included from /usr/share/mingw-w64/include/winbase.h:29, from /usr/share/mingw-w64/include/windows.h:70, from include/Demon.h:4, from src/core/ObjectApi.c:5: /usr/share/mingw-w64/include/processthreadsapi.h:91:20: note: ‘LPSTARTUPINFOW’ declared here 91 | } STARTUPINFOW, *LPSTARTUPINFOW; | ^~~~~~~~~~~~~~ src/core/ObjectApi.c:481:140: error: passing argument 8 of ‘Instance->Win32.CreateProcessWithTokenW’ from incompatible pointer type [-Wincompatible-pointer-types] 481 | bSuccess = Instance->Win32.CreateProcessWithTokenW(hToken, LOGON_WITH_PROFILE, NULL, Path, CREATE_UNICODE_ENVIRONMENT, NULL, NULL, sInfo, pInfo); | ^~~~~ | | | STARTUPINFO * {aka STARTUPINFOA *} src/core/ObjectApi.c:481:140: note: expected ‘LPSTARTUPINFOW’ {aka ‘struct _STARTUPINFOW *’} but argument is of type ‘STARTUPINFO *’ {aka ‘STARTUPINFOA *’} /usr/share/mingw-w64/include/processthreadsapi.h:91:20: note: ‘LPSTARTUPINFOW’ declared here 91 | } STARTUPINFOW, *LPSTARTUPINFOW; | ^~~~~~~~~~~~~~ In file included from include/Demon.h:11: src/core/ObjectApi.c: In function ‘BeaconRemoveValue’: src/core/ObjectApi.c:678:24: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 678 | DATA_FREE( Current, sizeof( COFFEE_KEY_VALUE ) ); | ^~~~~~~ | | | PCOFFEE_KEY_VALUE {aka struct _COFFEE_KEY_VALUE *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PCOFFEE_KEY_VALUE’ {aka ‘struct _COFFEE_KEY_VALUE *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:28: include/core/CoffeeLdr.h:114:22: note: ‘PCOFFEE_KEY_VALUE’ declared here 114 | } COFFEE_KEY_VALUE, *PCOFFEE_KEY_VALUE; | ^~~~~~~~~~~~~~~~~ src/core/Package.c: In function ‘PackageDestroy’: src/core/Package.c:222:17: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 222 | MemSet( Package, 0, sizeof( PACKAGE ) ); | ^~~~~~~ | | | PPACKAGE {aka struct _PACKAGE *} In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/core/Parser.h:4, from include/core/Command.h:4, from include/core/Package.h:4, from src/core/Package.c:2: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PPACKAGE’ {aka ‘struct _PACKAGE *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Package.h:18:13: note: ‘PPACKAGE’ declared here 18 | } PACKAGE, *PPACKAGE; | ^~~~~~~~ src/core/Pivot.c: In function ‘PivotRemove’: src/core/Pivot.c:171:25: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 171 | MemSet( Instance->SmbPivots, 0, sizeof( PIVOT_DATA ) ); | ~~~~~~~~^~~~~~~~~~~ | | | PPIVOT_DATA {aka struct _PIVOT_DATA *} In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/Pivot.c:1: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PPIVOT_DATA’ {aka ‘struct _PIVOT_DATA *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:17: include/core/Pivot.h:15:16: note: ‘PPIVOT_DATA’ declared here 15 | } PIVOT_DATA, *PPIVOT_DATA; | ^~~~~~~~~~~ src/core/Pivot.c:203:25: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 203 | MemSet( PivotData, 0, sizeof( PIVOT_DATA ) ); | ^~~~~~~~~ | | | PPIVOT_DATA {aka struct _PIVOT_DATA *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PPIVOT_DATA’ {aka ‘struct _PIVOT_DATA *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Pivot.h:15:16: note: ‘PPIVOT_DATA’ declared here 15 | } PIVOT_DATA, *PPIVOT_DATA; | ^~~~~~~~~~~ src/core/Socket.c: In function ‘SocketNew’: src/core/Socket.c:78:95: error: passing argument 6 of ‘Instance->Win32.WSASocketA’ makes integer from pointer without a cast [-Wint-conversion] 78 | WinSock = Instance->Win32.WSASocketA( AF_INET, SOCK_STREAM, IPPROTO_TCP, NULL, 0, NULL ); | ^~~~ | | | void * src/core/Socket.c:78:95: note: expected ‘DWORD’ {aka ‘long unsigned int’} but argument is of type ‘void *’ src/core/Socket.c: In function ‘SocketRead’: src/core/Socket.c:323:77: error: passing argument 3 of ‘Instance->Win32.ioctlsocket’ from incompatible pointer type [-Wincompatible-pointer-types] 323 | if ( Instance->Win32.ioctlsocket( Socket->Socket, FIONREAD, &PartialData.Length ) == SOCKET_ERROR ) | ^~~~~~~~~~~~~~~~~~~ | | | UINT32 * {aka unsigned int *} src/core/Socket.c:323:77: note: expected ‘u_long *’ {aka ‘long unsigned int *’} but argument is of type ‘UINT32 *’ {aka ‘unsigned int *’} src/core/Socket.c:338:93: error: passing argument 4 of ‘RecvAll’ from incompatible pointer type [-Wincompatible-pointer-types] 338 | if ( ! RecvAll( Socket->Socket, PartialData.Buffer, PartialData.Length, &PartialData.Length ) ) { | ^~~~~~~~~~~~~~~~~~~ | | | UINT32 * {aka unsigned int *} src/core/Socket.c:7:65: note: expected ‘PDWORD’ {aka ‘long unsigned int *’} but argument is of type ‘UINT32 *’ {aka ‘unsigned int *’} 7 | BOOL RecvAll( SOCKET Socket, PVOID Buffer, DWORD Length, PDWORD BytesRead ) | ~~~~~~~^~~~~~~~~ In file included from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/Socket.c:1: /usr/share/mingw-w64/include/minwindef.h:151:18: note: ‘PDWORD’ declared here 151 | typedef DWORD *PDWORD; | ^~~~~~ src/core/Socket.c: In function ‘SocketFree’: src/core/Socket.c:477:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 477 | MemSet( Socket, 0, sizeof( SOCKET_DATA ) ); | ^~~~~~ | | | PSOCKET_DATA {aka struct _SOCKET_DATA *} In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PSOCKET_DATA’ {aka ‘struct _SOCKET_DATA *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:23: include/core/Socket.h:62:17: note: ‘PSOCKET_DATA’ declared here 62 | } SOCKET_DATA, *PSOCKET_DATA; | ^~~~~~~~~~~~ In file included from include/Demon.h:26, from src/core/SysNative.c:1: src/core/SysNative.c: In function ‘SysNtOpenThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 4 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:15:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 15 | SYSCALL_INVOKE( NtOpenThread, ThreadHandle, DesiredAccess, ObjectAttributes, ClientId ) | ^~~~~~~~~~~~~~ In file included from include/core/Win32.h:13, from include/common/Clr.h:6, from include/Demon.h:12: include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtOpenProcess’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 4 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:29:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 29 | SYSCALL_INVOKE( NtOpenProcess, ProcessHandle, DesiredAccess, ObjectAttributes, ClientId ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtTerminateProcess’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 2 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:41:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 41 | SYSCALL_INVOKE( NtTerminateProcess, ProcessHandle, ExitStatus ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtOpenThreadToken’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 4 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:55:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 55 | SYSCALL_INVOKE( NtOpenThreadToken, ThreadHandle, DesiredAccess, OpenAsSelf, TokenHandle ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtOpenProcessToken’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 3 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:68:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 68 | SYSCALL_INVOKE( NtOpenProcessToken, ProcessHandle, DesiredAccess, TokenHandle ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtDuplicateToken’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 6 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:84:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 84 | SYSCALL_INVOKE( NtDuplicateToken, ExistingTokenHandle, DesiredAccess, ObjectAttributes, EffectiveOnly, TokenType, NewTokenHandle ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtQueueApcThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 5 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:99:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 99 | SYSCALL_INVOKE( NtQueueApcThread, ThreadHandle, ApcRoutine, ApcArgument1, ApcArgument2, ApcArgument3 ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtSuspendThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 2 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:111:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 111 | SYSCALL_INVOKE( NtSuspendThread, ThreadHandle, PreviousSuspendCount ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtResumeThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 2 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:123:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 123 | SYSCALL_INVOKE( NtResumeThread, ThreadHandle, PreviousSuspendCount ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtCreateEvent’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 5 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:138:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 138 | SYSCALL_INVOKE( NtCreateEvent, EventHandle, DesiredAccess, ObjectAttributes, EventType, InitialState ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtCreateThreadEx’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 11 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:159:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 159 | SYSCALL_INVOKE( NtCreateThreadEx, | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtDuplicateObject’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 7 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:188:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 188 | SYSCALL_INVOKE( NtDuplicateObject, SourceProcessHandle, SourceHandle, TargetProcessHandle, TargetHandle, DesiredAccess, HandleAttributes, Options ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtGetContextThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 2 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:200:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 200 | SYSCALL_INVOKE( NtGetContextThread, ThreadHandle, ThreadContext ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtSetContextThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 2 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:212:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 212 | SYSCALL_INVOKE( NtSetContextThread, ThreadHandle, ThreadContext ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtQueryInformationProcess’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 5 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:227:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 227 | SYSCALL_INVOKE( NtQueryInformationProcess, ProcessHandle, ProcessInformationClass, ProcessInformation, ProcessInformationLength, ReturnLength ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtQuerySystemInformation’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 4 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:241:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 241 | SYSCALL_INVOKE( NtQuerySystemInformation, SystemInformationClass, SystemInformation, SystemInformationLength, ReturnLength ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtWaitForSingleObject’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 3 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:254:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 254 | SYSCALL_INVOKE( NtWaitForSingleObject, Handle, Alertable, Timeout ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtAllocateVirtualMemory’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 6 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:270:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 270 | SYSCALL_INVOKE( NtAllocateVirtualMemory, ProcessHandle, BaseAddress, ZeroBits, RegionSize, AllocationType, Protect ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtWriteVirtualMemory’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 5 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:285:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 285 | SYSCALL_INVOKE( NtWriteVirtualMemory, ProcessHandle, BaseAddress, Buffer, BufferSize, NumberOfBytesWritten ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtFreeVirtualMemory’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 4 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:299:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 299 | SYSCALL_INVOKE( NtFreeVirtualMemory, ProcessHandle, BaseAddress, RegionSize, FreeType ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtUnmapViewOfSection’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 2 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:311:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 311 | SYSCALL_INVOKE( NtUnmapViewOfSection, ProcessHandle, BaseAddress ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtProtectVirtualMemory’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 5 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:326:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 326 | SYSCALL_INVOKE( NtProtectVirtualMemory, ProcessHandle, BaseAddress, RegionSize, NewProtect, OldProtect ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtReadVirtualMemory’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 5 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:341:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 341 | SYSCALL_INVOKE( NtReadVirtualMemory, ProcessHandle, BaseAddress, Buffer, BufferSize, NumberOfBytesRead ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtTerminateThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 2 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:353:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 353 | SYSCALL_INVOKE( NtTerminateThread, ThreadHandle, ExitStatus ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtAlertResumeThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 2 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:365:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 365 | SYSCALL_INVOKE( NtAlertResumeThread, ThreadHandle, PreviousSuspendCount ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtSignalAndWaitForSingleObject’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 4 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:379:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 379 | SYSCALL_INVOKE( NtSignalAndWaitForSingleObject, SignalHandle, WaitHandle, Alertable, Timeout ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtQueryVirtualMemory’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 6 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:395:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 395 | SYSCALL_INVOKE( NtQueryVirtualMemory, ProcessHandle, BaseAddress, MemoryInformationClass, MemoryInformation, MemoryInformationLength, ReturnLength ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtQueryInformationToken’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 5 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:410:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 410 | SYSCALL_INVOKE( NtQueryInformationToken, TokenHandle, TokenInformationClass, TokenInformation, TokenInformationLength, ReturnLength ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtQueryInformationThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 5 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:425:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 425 | SYSCALL_INVOKE( NtQueryInformationThread, ThreadHandle, ThreadInformationClass, ThreadInformation, ThreadInformationLength, ReturnLength ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtQueryObject’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 5 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:440:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 440 | SYSCALL_INVOKE( NtQueryObject, Handle, ObjectInformationClass, ObjectInformation, ObjectInformationLength, ReturnLength ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtClose’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 1 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:451:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 451 | SYSCALL_INVOKE( NtClose, Handle ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtSetInformationThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 4 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:465:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 465 | SYSCALL_INVOKE( NtSetInformationThread, ThreadHandle, ThreadInformationClass, ThreadInformation, ThreadInformationLength ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtSetInformationVirtualMemory’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 6 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:481:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 481 | SYSCALL_INVOKE( NtSetInformationVirtualMemory, ProcessHandle, VmInformationClass, NumberOfEntries, VirtualAddresses, VmInformation, VmInformationLength ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/SysNative.c: In function ‘SysNtGetNextThread’: include/core/SysNative.h:17:20: error: too many arguments to function ‘SysInvoke’; expected 0, have 6 17 | NtStatus = SysInvoke( __VA_ARGS__ ); \ | ^~~~~~~~~ src/core/SysNative.c:497:5: note: in expansion of macro ‘SYSCALL_INVOKE’ 497 | SYSCALL_INVOKE( NtGetNextThread, ProcessHandle, ThreadHandle, DesiredAccess, HandleAttributes, Flags, NewThreadHandle ); | ^~~~~~~~~~~~~~ include/core/Syscalls.h:57:10: note: declared here 57 | NTSTATUS SysInvoke( | ^~~~~~~~~ src/core/Syscalls.c: In function ‘FindSsnOfHookedSyscall’: src/core/Syscalls.c:207:31: error: initialization of ‘WORD’ {aka ‘short unsigned int’} from ‘void *’ makes integer from pointer without a cast [-Wint-conversion] 207 | WORD NeighbourSsn = NULL; | ^~~~ In file included from include/Demon.h:11, from src/core/Token.c:1: src/core/Token.c: In function ‘TokenQueryOwner’: src/core/Token.c:182:20: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 182 | DATA_FREE( UserInfo, UserSize ) | ^~~~~~~~ | | | PTOKEN_USER {aka struct _TOKEN_USER *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PTOKEN_USER’ {aka ‘struct _TOKEN_USER *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:4178:19: note: ‘PTOKEN_USER’ declared here 4178 | } TOKEN_USER,*PTOKEN_USER; | ^~~~~~~~~~~ src/core/Token.c: In function ‘TokenRemove’: src/core/Token.c:503:43: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 503 | MemSet( Instance->Tokens.Vault->DomainUser, 0, StringLengthW( Instance->Tokens.Vault->DomainUser ) * sizeof( WCHAR ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ | | | LPWSTR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Token.c:510:43: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 510 | MemSet( Instance->Tokens.Vault->lpUser, 0, StringLengthW( Instance->Tokens.Vault->lpUser ) * sizeof( WCHAR ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ | | | LPWSTR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Token.c:517:43: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 517 | MemSet( Instance->Tokens.Vault->lpDomain, 0, StringLengthW( Instance->Tokens.Vault->lpDomain ) * sizeof( WCHAR ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ | | | LPWSTR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Token.c:524:43: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 524 | MemSet( Instance->Tokens.Vault->lpPassword, 0, StringLengthW( Instance->Tokens.Vault->lpPassword ) * sizeof( WCHAR ) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ | | | LPWSTR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Token.c:529:33: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 529 | MemSet( Instance->Tokens.Vault, 0, sizeof( TOKEN_LIST_DATA ) ); | ~~~~~~~~~~~~~~~~^~~~~~ | | | PTOKEN_LIST_DATA {aka struct _TOKEN_LIST_DATA *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PTOKEN_LIST_DATA’ {aka ‘struct _TOKEN_LIST_DATA *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:16: include/core/Token.h:93:21: note: ‘PTOKEN_LIST_DATA’ declared here 93 | } TOKEN_LIST_DATA, *PTOKEN_LIST_DATA ; | ^~~~~~~~~~~~~~~~ src/core/Token.c:558:38: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 558 | MemSet( TokenItem->DomainUser, 0, StringLengthW( TokenItem->DomainUser ) * sizeof( WCHAR ) ); | ~~~~~~~~~^~~~~~~~~~~~ | | | LPWSTR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Token.c:565:38: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 565 | MemSet( TokenItem->lpUser, 0, StringLengthW( TokenItem->lpUser ) * sizeof( WCHAR ) ); | ~~~~~~~~~^~~~~~~~ | | | LPWSTR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Token.c:572:38: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 572 | MemSet( TokenItem->lpDomain, 0, StringLengthW( TokenItem->lpDomain ) * sizeof( WCHAR ) ); | ~~~~~~~~~^~~~~~~~~~ | | | LPWSTR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Token.c:579:38: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 579 | MemSet( TokenItem->lpPassword, 0, StringLengthW( TokenItem->lpPassword ) * sizeof( WCHAR ) ); | ~~~~~~~~~^~~~~~~~~~~~ | | | LPWSTR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Token.c:584:25: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 584 | MemSet( TokenItem, 0, sizeof( TOKEN_LIST_DATA ) ); | ^~~~~~~~~ | | | PTOKEN_LIST_DATA {aka struct _TOKEN_LIST_DATA *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PTOKEN_LIST_DATA’ {aka ‘struct _TOKEN_LIST_DATA *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Token.h:93:21: note: ‘PTOKEN_LIST_DATA’ declared here 93 | } TOKEN_LIST_DATA, *PTOKEN_LIST_DATA ; | ^~~~~~~~~~~~~~~~ src/core/Token.c: In function ‘ProcessUserToken’: src/core/Token.c:846:10: error: implicit declaration of function ‘GetTokenInfo’; did you mean ‘GetIconInfo’? [-Wimplicit-function-declaration] 846 | if ( GetTokenInfo( hToken, &TokenType, &Integrity, &ImpersonationLevel, &UserDomain ) ) | ^~~~~~~~~~~~ | GetIconInfo src/core/Token.c:854:18: error: implicit declaration of function ‘IsNotCurrentUser’; did you mean ‘NtCurrentPeb’? [-Wimplicit-function-declaration] 854 | if ( IsNotCurrentUser( CheckUsername, CurrentUser, &UserDomain ) ) | ^~~~~~~~~~~~~~~~ | NtCurrentPeb src/core/Token.c: In function ‘QueryObjectTypesInfo’: src/core/Token.c:903:20: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 903 | DATA_FREE( ObjTypeInformation, PrevBufferLength ); | ^~~~~~~~~~~~~~~~~~ | | | POBJECT_TYPES_INFORMATION {aka struct _OBJECT_TYPES_INFORMATION *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘POBJECT_TYPES_INFORMATION’ {aka ‘struct _OBJECT_TYPES_INFORMATION *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/Demon.h:10: include/common/Native.h:3520:30: note: ‘POBJECT_TYPES_INFORMATION’ declared here 3520 | } OBJECT_TYPES_INFORMATION, *POBJECT_TYPES_INFORMATION; | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/Token.c: In function ‘GetTypeIndexToken’: src/core/Token.c:944:16: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 944 | DATA_FREE( ObjectTypes, ObjectTypesSize ); | ^~~~~~~~~~~ | | | POBJECT_TYPES_INFORMATION {aka struct _OBJECT_TYPES_INFORMATION *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘POBJECT_TYPES_INFORMATION’ {aka ‘struct _OBJECT_TYPES_INFORMATION *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/common/Native.h:3520:30: note: ‘POBJECT_TYPES_INFORMATION’ declared here 3520 | } OBJECT_TYPES_INFORMATION, *POBJECT_TYPES_INFORMATION; | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/Token.c: In function ‘GetTokenInfo’: src/core/Token.c:1017:16: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1017 | DATA_FREE( TokenStatisticsInformation,returned_tokinfo_length ); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | | | PTOKEN_STATISTICS {aka struct _TOKEN_STATISTICS *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PTOKEN_STATISTICS’ {aka ‘struct _TOKEN_STATISTICS *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:4314:25: note: ‘PTOKEN_STATISTICS’ declared here 4314 | } TOKEN_STATISTICS,*PTOKEN_STATISTICS; | ^~~~~~~~~~~~~~~~~ src/core/Token.c:1018:16: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1018 | DATA_FREE( TokenIntegrityInformation,cbSize ); | ^~~~~~~~~~~~~~~~~~~~~~~~~ | | | PTOKEN_MANDATORY_LABEL {aka struct _TOKEN_MANDATORY_LABEL *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PTOKEN_MANDATORY_LABEL’ {aka ‘struct _TOKEN_MANDATORY_LABEL *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:4258:30: note: ‘PTOKEN_MANDATORY_LABEL’ declared here 4258 | } TOKEN_MANDATORY_LABEL,*PTOKEN_MANDATORY_LABEL; | ^~~~~~~~~~~~~~~~~~~~~~ src/core/Token.c:1019:16: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1019 | DATA_FREE( TokenImpersonationInformation,returned_tokimp_length ); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | PSECURITY_IMPERSONATION_LEVEL {aka enum _SECURITY_IMPERSONATION_LEVEL *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PSECURITY_IMPERSONATION_LEVEL’ {aka ‘enum _SECURITY_IMPERSONATION_LEVEL *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:4082:37: note: ‘PSECURITY_IMPERSONATION_LEVEL’ declared here 4082 | } SECURITY_IMPERSONATION_LEVEL,*PSECURITY_IMPERSONATION_LEVEL; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/Token.c: In function ‘GetProcessesFromHandleTable’: src/core/Token.c:1069:19: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1069 | DATA_FREE(process_list, sizeof(PROCESS_LIST)); | ^~~~~~~~~~~~ | | | PPROCESS_LIST {aka struct _PROCESS_LIST *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PPROCESS_LIST’ {aka ‘struct _PROCESS_LIST *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Token.h:41:18: note: ‘PPROCESS_LIST’ declared here 41 | } PROCESS_LIST, *PPROCESS_LIST; | ^~~~~~~~~~~~~ src/core/Token.c: In function ‘ListTokens’: src/core/Token.c:1245:20: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1245 | DATA_FREE( Tokens, NumTokens * sizeof( USER_TOKEN_DATA ) ); | ^~~~~~ | | | PUSER_TOKEN_DATA {aka struct _USER_TOKEN_DATA *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PUSER_TOKEN_DATA’ {aka ‘struct _USER_TOKEN_DATA *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Token.h:51:21: note: ‘PUSER_TOKEN_DATA’ declared here 51 | } USER_TOKEN_DATA, *PUSER_TOKEN_DATA; | ^~~~~~~~~~~~~~~~ src/core/Token.c:1248:16: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1248 | DATA_FREE( handleTableInformation, handleTableInformationSize ); | ^~~~~~~~~~~~~~~~~~~~~~ | | | PSYSTEM_HANDLE_INFORMATION {aka struct _SYSTEM_HANDLE_INFORMATION *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PSYSTEM_HANDLE_INFORMATION’ {aka ‘struct _SYSTEM_HANDLE_INFORMATION *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/common/Native.h:4474:31: note: ‘PSYSTEM_HANDLE_INFORMATION’ declared here 4474 | } SYSTEM_HANDLE_INFORMATION, *PSYSTEM_HANDLE_INFORMATION; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/Token.c:1250:16: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1250 | DATA_FREE( ProcessList, sizeof( PROCESS_LIST ) ) | ^~~~~~~~~~~ | | | PPROCESS_LIST {aka struct _PROCESS_LIST *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PPROCESS_LIST’ {aka ‘struct _PROCESS_LIST *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Token.h:41:18: note: ‘PPROCESS_LIST’ declared here 41 | } PROCESS_LIST, *PPROCESS_LIST; | ^~~~~~~~~~~~~ In file included from src/core/Win32.c:4: src/core/Win32.c: In function ‘LdrModulePebByString’: src/core/Win32.c:146:22: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 146 | MemZero( Name, MAX_PATH ); | ^~~~ | | | LPWSTR {aka short unsigned int *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4, from src/core/Win32.c:1: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Win32.c:151:18: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 151 | MemZero( Name, MAX_PATH ); | ^~~~ | | | LPWSTR {aka short unsigned int *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Win32.c: In function ‘LdrModuleSearch’: src/core/Win32.c:179:16: error: assignment to ‘PLDR_DATA_TABLE_ENTRY’ {aka ‘struct _LDR_DATA_TABLE_ENTRY *’} from incompatible pointer type ‘struct _LIST_ENTRY *’ [-Wincompatible-pointer-types] 179 | Entry = Instance->Teb->ProcessEnvironmentBlock->Ldr->InLoadOrderModuleList.Flink; | ^ In file included from include/Demon.h:10: include/common/Native.h:6706:26: note: ‘PLDR_DATA_TABLE_ENTRY’ declared here 6706 | } LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY; | ^~~~~~~~~~~~~~~~~~~~~ src/core/Win32.c:184:12: error: implicit declaration of function ‘EndsWithIW’ [-Wimplicit-function-declaration] 184 | if ( ! EndsWithIW( ModuleName, Dll ) ) | ^~~~~~~~~~ src/core/Win32.c:189:14: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 189 | MemZero( Dll, sizeof( Dll ) ); | ^~~ | | | WCHAR * {aka short unsigned int *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘WCHAR *’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Win32.c:193:16: error: implicit declaration of function ‘StringCompareIW’; did you mean ‘StringNCompareIW’? [-Wimplicit-function-declaration] 193 | if ( ! StringCompareIW( Name, Entry->BaseDllName.Buffer ) ) { | ^~~~~~~~~~~~~~~ | StringNCompareIW src/core/Win32.c:194:22: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 194 | MemZero( Name, sizeof( Name ) ); | ^~~~ | | | WCHAR * {aka short unsigned int *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘WCHAR *’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Win32.c:197:15: error: assignment to ‘PLDR_DATA_TABLE_ENTRY’ {aka ‘struct _LDR_DATA_TABLE_ENTRY *’} from incompatible pointer type ‘struct _LIST_ENTRY *’ [-Wincompatible-pointer-types] 197 | Entry = Entry->InLoadOrderLinks.Flink; | ^ include/common/Native.h:6706:26: note: ‘PLDR_DATA_TABLE_ENTRY’ declared here 6706 | } LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY; | ^~~~~~~~~~~~~~~~~~~~~ src/core/Win32.c:200:14: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 200 | MemZero( Name, sizeof( Name ) ); | ^~~~ | | | WCHAR * {aka short unsigned int *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘WCHAR *’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Win32.c: In function ‘LdrModuleLoad’: src/core/Win32.c:351:14: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 351 | MemZero( NameW, sizeof( NameW ) ); | ^~~~~ | | | WCHAR * {aka short unsigned int *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘WCHAR *’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Win32.c:352:14: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 352 | MemZero( &UnicodeString, sizeof( UnicodeString ) ); | ^~~~~~~~~~~~~~ | | | UNICODE_STRING * {aka struct _UNICODE_STRING *} include/core/MiniStd.h:8:34: note: in definition of macro ‘MemZero’ 8 | #define MemZero( p, l ) __stosb( p, 0, l ) | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘UNICODE_STRING *’ {aka ‘struct _UNICODE_STRING *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Win32.c: In function ‘ProcessCreate’: src/core/Win32.c:608:17: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 608 | MemSet( AnonPipe, 0, sizeof( ANONPIPE ) ); | ^~~~~~~~ | | | PANONPIPE {aka struct _ANONPIPE *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PANONPIPE’ {aka ‘struct _ANONPIPE *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from include/common/Clr.h:6, from include/Demon.h:12: include/core/Win32.h:74:14: note: ‘PANONPIPE’ declared here 74 | } ANONPIPE, *PANONPIPE; | ^~~~~~~~~ In file included from include/Demon.h:11: src/core/Win32.c:766:24: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 766 | DATA_FREE( s, x ); | ^ | | | PWCHAR {aka short unsigned int *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PWCHAR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:314:18: note: ‘PWCHAR’ declared here 314 | typedef WCHAR *PWCHAR,*LPWCH,*PWCH; | ^~~~~~ src/core/Win32.c:792:20: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 792 | DATA_FREE( AnonPipe, sizeof( ANONPIPE ) ); | ^~~~~~~~ | | | PANONPIPE {aka struct _ANONPIPE *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PANONPIPE’ {aka ‘struct _ANONPIPE *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Win32.h:74:14: note: ‘PANONPIPE’ declared here 74 | } ANONPIPE, *PANONPIPE; | ^~~~~~~~~ src/core/Win32.c: In function ‘WinScreenshot’: src/core/Win32.c:1075:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1075 | MemSet( &BitFileHdr, 0, sizeof( BITMAPFILEHEADER ) ); | ^~~~~~~~~~~ | | | BITMAPFILEHEADER * {aka struct tagBITMAPFILEHEADER *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘BITMAPFILEHEADER *’ {aka ‘struct tagBITMAPFILEHEADER *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Win32.c:1076:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1076 | MemSet( &BitInfoHdr, 0, sizeof( BITMAPINFOHEADER ) ); | ^~~~~~~~~~~ | | | BITMAPINFOHEADER * {aka struct tagBITMAPINFOHEADER *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘BITMAPINFOHEADER *’ {aka ‘struct tagBITMAPINFOHEADER *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Win32.c:1077:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1077 | MemSet( &BitMapInfo, 0, sizeof( BITMAPINFO ) ); | ^~~~~~~~~~~ | | | BITMAPINFO * {aka struct tagBITMAPINFO *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘BITMAPINFO *’ {aka ‘struct tagBITMAPINFO *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Win32.c:1078:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1078 | MemSet( &AllDesktops,0, sizeof( BITMAP ) ); | ^~~~~~~~~~~~ | | | BITMAP * {aka struct tagBITMAP *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘BITMAP *’ {aka ‘struct tagBITMAP *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/core/Win32.c: In function ‘listDir’: src/core/Win32.c:1503:38: error: initialization of ‘UINT32’ {aka ‘unsigned int’} from ‘void *’ makes integer from pointer without a cast [-Wint-conversion] 1503 | UINT32 PathSize = NULL; | ^~~~ src/core/Win32.c:1703:16: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1703 | DATA_FREE( Path, ( MAX_PATH + 2 + 1 ) * sizeof( WCHAR ) ); | ^~~~ | | | LPWSTR {aka short unsigned int *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/core/Win32.c:1709:20: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1709 | DATA_FREE( SubDir, sizeof( SUB_DIR ) ); | ^~~~~~ | | | PSUB_DIR {aka struct _SUB_DIR *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PSUB_DIR’ {aka ‘struct _SUB_DIR *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Win32.h:44:13: note: ‘PSUB_DIR’ declared here 44 | } SUB_DIR, *PSUB_DIR; | ^~~~~~~~ src/core/Win32.c:1721:28: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1721 | DATA_FREE( DirOrFile, sizeof( DIR_OR_FILE ) ); | ^~~~~~~~~ | | | PDIR_OR_FILE {aka struct _DIR_OR_FILE *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PDIR_OR_FILE’ {aka ‘struct _DIR_OR_FILE *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Win32.h:37:17: note: ‘PDIR_OR_FILE’ declared here 37 | } DIR_OR_FILE, *PDIR_OR_FILE; | ^~~~~~~~~~~~ src/core/Win32.c:1726:24: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 1726 | DATA_FREE( RootDir, sizeof( ROOT_DIR ) ); | ^~~~~~~ | | | PROOT_DIR {aka struct _ROOT_DIR *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PROOT_DIR’ {aka ‘struct _ROOT_DIR *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ include/core/Win32.h:55:14: note: ‘PROOT_DIR’ declared here 55 | } ROOT_DIR, *PROOT_DIR; | ^~~~~~~~~ src/inject/InjectUtil.c: In function ‘GetReflectiveLoaderOffset’: src/inject/InjectUtil.c:47:147: error: passing argument 2 of ‘Rva2Offset’ makes integer from pointer without a cast [-Wint-conversion] 47 | ExportDir = ReflectiveLdrAddr + Rva2Offset( NtHeaders->OptionalHeader.DataDirectory[ IMAGE_DIRECTORY_ENTRY_EXPORT ].VirtualAddress, ReflectiveLdrAddr ); | ^~~~~~~~~~~~~~~~~ | | | PVOID {aka void *} src/inject/InjectUtil.c:12:41: note: expected ‘UINT_PTR’ {aka ‘long long unsigned int’} but argument is of type ‘PVOID’ {aka ‘void *’} 12 | DWORD Rva2Offset( DWORD dwRva, UINT_PTR uiBaseAddress ) | ~~~~~~~~~^~~~~~~~~~~~~ src/inject/InjectUtil.c:48:86: error: passing argument 2 of ‘Rva2Offset’ makes integer from pointer without a cast [-Wint-conversion] 48 | AddrOfNames = ReflectiveLdrAddr + Rva2Offset( ExportDir->AddressOfNames, ReflectiveLdrAddr ); | ^~~~~~~~~~~~~~~~~ | | | PVOID {aka void *} src/inject/InjectUtil.c:12:41: note: expected ‘UINT_PTR’ {aka ‘long long unsigned int’} but argument is of type ‘PVOID’ {aka ‘void *’} 12 | DWORD Rva2Offset( DWORD dwRva, UINT_PTR uiBaseAddress ) | ~~~~~~~~~^~~~~~~~~~~~~ src/inject/InjectUtil.c:48:25: error: assignment to ‘UINT_PTR’ {aka ‘long long unsigned int’} from ‘PVOID’ {aka ‘void *’} makes integer from pointer without a cast [-Wint-conversion] 48 | AddrOfNames = ReflectiveLdrAddr + Rva2Offset( ExportDir->AddressOfNames, ReflectiveLdrAddr ); | ^ src/inject/InjectUtil.c:49:93: error: passing argument 2 of ‘Rva2Offset’ makes integer from pointer without a cast [-Wint-conversion] 49 | AddrOfNameOrdinals = ReflectiveLdrAddr + Rva2Offset( ExportDir->AddressOfNameOrdinals, ReflectiveLdrAddr ); | ^~~~~~~~~~~~~~~~~ | | | PVOID {aka void *} src/inject/InjectUtil.c:12:41: note: expected ‘UINT_PTR’ {aka ‘long long unsigned int’} but argument is of type ‘PVOID’ {aka ‘void *’} 12 | DWORD Rva2Offset( DWORD dwRva, UINT_PTR uiBaseAddress ) | ~~~~~~~~~^~~~~~~~~~~~~ src/inject/InjectUtil.c:49:25: error: assignment to ‘UINT_PTR’ {aka ‘long long unsigned int’} from ‘PVOID’ {aka ‘void *’} makes integer from pointer without a cast [-Wint-conversion] 49 | AddrOfNameOrdinals = ReflectiveLdrAddr + Rva2Offset( ExportDir->AddressOfNameOrdinals, ReflectiveLdrAddr ); | ^ src/inject/InjectUtil.c:54:92: error: passing argument 2 of ‘Rva2Offset’ makes integer from pointer without a cast [-Wint-conversion] 54 | FunctionName = ( PCHAR )( ReflectiveLdrAddr + Rva2Offset( DEREF_32( AddrOfNames ), ReflectiveLdrAddr ) ); | ^~~~~~~~~~~~~~~~~ | | | PVOID {aka void *} src/inject/InjectUtil.c:12:41: note: expected ‘UINT_PTR’ {aka ‘long long unsigned int’} but argument is of type ‘PVOID’ {aka ‘void *’} 12 | DWORD Rva2Offset( DWORD dwRva, UINT_PTR uiBaseAddress ) | ~~~~~~~~~^~~~~~~~~~~~~ src/inject/InjectUtil.c:59:96: error: passing argument 2 of ‘Rva2Offset’ makes integer from pointer without a cast [-Wint-conversion] 59 | AddrOfFunctions = ReflectiveLdrAddr + Rva2Offset( ExportDir->AddressOfFunctions, ReflectiveLdrAddr ); | ^~~~~~~~~~~~~~~~~ | | | PVOID {aka void *} src/inject/InjectUtil.c:12:41: note: expected ‘UINT_PTR’ {aka ‘long long unsigned int’} but argument is of type ‘PVOID’ {aka ‘void *’} 12 | DWORD Rva2Offset( DWORD dwRva, UINT_PTR uiBaseAddress ) | ~~~~~~~~~^~~~~~~~~~~~~ src/inject/InjectUtil.c:59:29: error: assignment to ‘UINT_PTR’ {aka ‘long long unsigned int’} from ‘PVOID’ {aka ‘void *’} makes integer from pointer without a cast [-Wint-conversion] 59 | AddrOfFunctions = ReflectiveLdrAddr + Rva2Offset( ExportDir->AddressOfFunctions, ReflectiveLdrAddr ); | ^ src/inject/InjectUtil.c:62:61: error: passing argument 2 of ‘Rva2Offset’ makes integer from pointer without a cast [-Wint-conversion] 62 | return Rva2Offset( DEREF_32( AddrOfFunctions ), ReflectiveLdrAddr ); | ^~~~~~~~~~~~~~~~~ | | | PVOID {aka void *} src/inject/InjectUtil.c:12:41: note: expected ‘UINT_PTR’ {aka ‘long long unsigned int’} but argument is of type ‘PVOID’ {aka ‘void *’} 12 | DWORD Rva2Offset( DWORD dwRva, UINT_PTR uiBaseAddress ) | ~~~~~~~~~^~~~~~~~~~~~~ In file included from include/Demon.h:11, from src/Demon.c:1: src/Demon.c: In function ‘DemonMetaData’: src/Demon.c:233:24: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 233 | DATA_FREE( Adapter, dwLength ); | ^~~~~~~ | | | PIP_ADAPTER_INFO {aka struct _IP_ADAPTER_INFO *} include/common/Macros.h:25:17: note: in definition of macro ‘DATA_FREE’ 25 | MemSet( d, 0, l ); \ | ^ In file included from /usr/share/mingw-w64/include/winnt.h:27, from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from include/Demon.h:4: /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘PIP_ADAPTER_INFO’ {aka ‘struct _IP_ADAPTER_INFO *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ In file included from /usr/share/mingw-w64/include/iphlpapi.h:17, from include/core/Win32.h:15, from include/common/Clr.h:6, from include/Demon.h:12: /usr/share/mingw-w64/include/iptypes.h:70:22: note: ‘PIP_ADAPTER_INFO’ declared here 70 | } IP_ADAPTER_INFO,*PIP_ADAPTER_INFO; | ^~~~~~~~~~~~~~~~ src/Demon.c:251:13: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 251 | MemSet( &OsVersions, 0, sizeof( OsVersions ) ); | ^~~~~~~~~~~ | | | OSVERSIONINFOEXW * /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘OSVERSIONINFOEXW *’ 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ src/Demon.c:253:36: error: passing argument 1 of ‘Instance->Win32.RtlGetVersion’ from incompatible pointer type [-Wincompatible-pointer-types] 253 | Instance->Win32.RtlGetVersion( &OsVersions ); | ^~~~~~~~~~~ | | | OSVERSIONINFOEXW * src/Demon.c:253:36: note: expected ‘PRTL_OSVERSIONINFOW’ {aka ‘struct _OSVERSIONINFOW *’} but argument is of type ‘OSVERSIONINFOEXW *’ /usr/share/mingw-w64/include/winnt.h:9394:77: note: ‘PRTL_OSVERSIONINFOW’ declared here 9394 | } OSVERSIONINFOW,*POSVERSIONINFOW,*LPOSVERSIONINFOW,RTL_OSVERSIONINFOW,*PRTL_OSVERSIONINFOW; | ^~~~~~~~~~~~~~~~~~~ src/Demon.c: In function ‘DemonInit’: src/Demon.c:371:53: error: passing argument 1 of ‘Instance->Win32.RtlGetVersion’ from incompatible pointer type [-Wincompatible-pointer-types] 371 | if ( NT_SUCCESS( Instance->Win32.RtlGetVersion( &OSVersionExW ) ) ) { | ^~~~~~~~~~~~~ | | | OSVERSIONINFOEXW * include/common/Macros.h:12:60: note: in definition of macro ‘NT_SUCCESS’ 12 | #define NT_SUCCESS(Status) ( ( ( NTSTATUS ) ( Status ) ) >= 0 ) | ^~~~~~ src/Demon.c:371:53: note: expected ‘PRTL_OSVERSIONINFOW’ {aka ‘struct _OSVERSIONINFOW *’} but argument is of type ‘OSVERSIONINFOEXW *’ 371 | if ( NT_SUCCESS( Instance->Win32.RtlGetVersion( &OSVersionExW ) ) ) { | ^~~~~~~~~~~~~ include/common/Macros.h:12:60: note: in definition of macro ‘NT_SUCCESS’ 12 | #define NT_SUCCESS(Status) ( ( ( NTSTATUS ) ( Status ) ) >= 0 ) | ^~~~~~ /usr/share/mingw-w64/include/winnt.h:9394:77: note: ‘PRTL_OSVERSIONINFOW’ declared here 9394 | } OSVERSIONINFOW,*POSVERSIONINFOW,*LPOSVERSIONINFOW,RTL_OSVERSIONINFOW,*PRTL_OSVERSIONINFOW; | ^~~~~~~~~~~~~~~~~~~ src/Demon.c: In function ‘DemonConfig’: src/Demon.c:706:51: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 706 | MemSet( Instance->Config.Transport.Headers[ i ], 0, Length ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ | | | LPWSTR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~ src/Demon.c:722:48: error: passing argument 1 of ‘__stosb’ from incompatible pointer type [-Wincompatible-pointer-types] 722 | MemSet( Instance->Config.Transport.Uris[ i ], 0, Length + sizeof( WCHAR ) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ | | | LPWSTR {aka short unsigned int *} /usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:1796:1: note: expected ‘unsigned char *’ but argument is of type ‘LPWSTR’ {aka ‘short unsigned int *’} 1796 | __buildstos(__stosb, unsigned char, "b|b") | ^ /usr/share/mingw-w64/include/winnt.h:316:26: note: ‘LPWSTR’ declared here 316 | typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR; | ^~~~~~