diff --git a/G-WinMem/.vs/G-WinMem/v15/.suo b/G-WinMem/.vs/G-WinMem/v15/.suo
new file mode 100644
index 0000000..c9a09fe
Binary files /dev/null and b/G-WinMem/.vs/G-WinMem/v15/.suo differ
diff --git a/G-WinMem/.vs/G-WinMem/v15/Browse.VC.db b/G-WinMem/.vs/G-WinMem/v15/Browse.VC.db
new file mode 100644
index 0000000..47e31c3
Binary files /dev/null and b/G-WinMem/.vs/G-WinMem/v15/Browse.VC.db differ
diff --git a/G-WinMem/.vs/G-WinMem/v15/Browse.VC.opendb b/G-WinMem/.vs/G-WinMem/v15/Browse.VC.opendb
new file mode 100644
index 0000000..d760d0a
Binary files /dev/null and b/G-WinMem/.vs/G-WinMem/v15/Browse.VC.opendb differ
diff --git a/G-WinMem/.vs/G-WinMem/v15/ipch/960673476d9ee23e.ipch b/G-WinMem/.vs/G-WinMem/v15/ipch/960673476d9ee23e.ipch
new file mode 100644
index 0000000..aba0923
Binary files /dev/null and b/G-WinMem/.vs/G-WinMem/v15/ipch/960673476d9ee23e.ipch differ
diff --git a/G-WinMem/.vs/G-WinMem/v15/ipch/da78a184f7c6129b.ipch b/G-WinMem/.vs/G-WinMem/v15/ipch/da78a184f7c6129b.ipch
new file mode 100644
index 0000000..7f51fc9
Binary files /dev/null and b/G-WinMem/.vs/G-WinMem/v15/ipch/da78a184f7c6129b.ipch differ
diff --git a/G-WinMem/G-WinMem.sln b/G-WinMem/G-WinMem.sln
new file mode 100644
index 0000000..65152d4
--- /dev/null
+++ b/G-WinMem/G-WinMem.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.27703.2018
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "G-WinMem", "G-WinMem\G-WinMem.vcxproj", "{D445BBD6-23E4-40AD-BB05-39E0401D7421}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {D445BBD6-23E4-40AD-BB05-39E0401D7421}.Debug|x64.ActiveCfg = Debug|x64
+ {D445BBD6-23E4-40AD-BB05-39E0401D7421}.Debug|x64.Build.0 = Debug|x64
+ {D445BBD6-23E4-40AD-BB05-39E0401D7421}.Debug|x86.ActiveCfg = Debug|Win32
+ {D445BBD6-23E4-40AD-BB05-39E0401D7421}.Debug|x86.Build.0 = Debug|Win32
+ {D445BBD6-23E4-40AD-BB05-39E0401D7421}.Release|x64.ActiveCfg = Release|x64
+ {D445BBD6-23E4-40AD-BB05-39E0401D7421}.Release|x64.Build.0 = Release|x64
+ {D445BBD6-23E4-40AD-BB05-39E0401D7421}.Release|x86.ActiveCfg = Release|Win32
+ {D445BBD6-23E4-40AD-BB05-39E0401D7421}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {CDDBAEFF-CFB7-4167-88D9-015827207E0C}
+ EndGlobalSection
+EndGlobal
diff --git a/G-WinMem/G-WinMem/G-WinMem.cpp b/G-WinMem/G-WinMem/G-WinMem.cpp
new file mode 100644
index 0000000..a7ea953
Binary files /dev/null and b/G-WinMem/G-WinMem/G-WinMem.cpp differ
diff --git a/G-WinMem/G-WinMem/G-WinMem.vcxproj b/G-WinMem/G-WinMem/G-WinMem.vcxproj
new file mode 100644
index 0000000..5813a25
--- /dev/null
+++ b/G-WinMem/G-WinMem/G-WinMem.vcxproj
@@ -0,0 +1,165 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 15.0
+ {D445BBD6-23E4-40AD-BB05-39E0401D7421}
+ Win32Proj
+ GWinMem
+ 10.0.17134.0
+
+
+
+ Application
+ true
+ v141
+ Unicode
+
+
+ Application
+ false
+ v141
+ true
+ Unicode
+
+
+ Application
+ true
+ v141
+ Unicode
+
+
+ Application
+ false
+ v141
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+
+
+ true
+
+
+ false
+
+
+ false
+
+
+
+ Use
+ Level3
+ Disabled
+ true
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+
+
+
+
+ Use
+ Level3
+ Disabled
+ true
+ _DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+
+
+
+
+ Use
+ Level3
+ MaxSpeed
+ true
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+ Use
+ Level3
+ MaxSpeed
+ true
+ true
+ true
+ NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+ Create
+ Create
+ Create
+ Create
+
+
+
+
+
+
\ No newline at end of file
diff --git a/G-WinMem/G-WinMem/G-WinMem.vcxproj.filters b/G-WinMem/G-WinMem/G-WinMem.vcxproj.filters
new file mode 100644
index 0000000..65bd3c3
--- /dev/null
+++ b/G-WinMem/G-WinMem/G-WinMem.vcxproj.filters
@@ -0,0 +1,33 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Header Files
+
+
+ Header Files
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+
\ No newline at end of file
diff --git a/G-WinMem/G-WinMem/G-WinMem.vcxproj.user b/G-WinMem/G-WinMem/G-WinMem.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/G-WinMem/G-WinMem/G-WinMem.vcxproj.user
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/G-WinMem/G-WinMem/stdafx.cpp b/G-WinMem/G-WinMem/stdafx.cpp
new file mode 100644
index 0000000..56288a9
Binary files /dev/null and b/G-WinMem/G-WinMem/stdafx.cpp differ
diff --git a/G-WinMem/G-WinMem/stdafx.h b/G-WinMem/G-WinMem/stdafx.h
new file mode 100644
index 0000000..94d4ed8
Binary files /dev/null and b/G-WinMem/G-WinMem/stdafx.h differ
diff --git a/G-WinMem/G-WinMem/targetver.h b/G-WinMem/G-WinMem/targetver.h
new file mode 100644
index 0000000..567cd34
Binary files /dev/null and b/G-WinMem/G-WinMem/targetver.h differ
diff --git a/src/main/protocol/memory/habboclient/windows/WindowsHabboClient.java b/src/main/protocol/memory/habboclient/windows/WindowsHabboClient.java
index c9c2216..6550663 100644
--- a/src/main/protocol/memory/habboclient/windows/WindowsHabboClient.java
+++ b/src/main/protocol/memory/habboclient/windows/WindowsHabboClient.java
@@ -17,11 +17,15 @@ import com.sun.jna.win32.StdCallLibrary;
import main.protocol.HConnection;
import main.protocol.memory.habboclient.HabboClient;
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStreamReader;
+import javax.xml.bind.DatatypeConverter;
+import java.io.*;
import java.lang.reflect.Array;
-import java.util.*;
+import java.net.URISyntaxException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+
/**
* Created by Jeunez on 27/06/2018.
@@ -197,8 +201,40 @@ public class WindowsHabboClient extends HabboClient {
}
}
+ private ArrayList readPossibleBytes() throws IOException, URISyntaxException {
+ ProcessBuilder pb = new ProcessBuilder(new File(this.getClass().getProtectionDomain().getCodeSource().getLocation().toURI()).getParent() + "\\G-WinMem.exe");
+ Process p = pb.start();
+ BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
+
+ String line;
+ ArrayList possibleData = new ArrayList<>();
+
+ while((line = reader.readLine()) != null) {
+ if (line.length() > 1) {
+ possibleData.add(line);
+ System.out.println(line);
+ }
+ }
+ p.destroy();
+ return possibleData;
+ }
+
@Override
public List getRC4possibilities() {
+ System.out.println("Getting Win Possibilities");
+ List result = new ArrayList<>();
+ try {
+ ArrayList possibleData = readPossibleBytes();
+
+ for (String possibleHexStr : possibleData) {
+ result.add(DatatypeConverter.parseHexBinary(possibleHexStr));
+ }
+ } catch (IOException | URISyntaxException e) {
+ e.printStackTrace();
+ }
+ return result;
+
+ /*
enableDebugPrivilege();
obtain_PIDs();
@@ -230,6 +266,7 @@ public class WindowsHabboClient extends HabboClient {
}
return possibilities;
+ */
}
public List getRC4possibilities(int processID, int processMemorySize) {