Skip to content

jomtek/Universal-Proxy-Remover

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Jomtek's Universal Proxy-Remover

Unfortunately, at the moment, this proxy fixer can only fix proxies which return literal values. For example, this proxy won't get fixed :

static int myProxy() {
	return 1 + 1;
} 

But I'm doing my best to update it asap :)

What is a proxy ?

When we're talking about IL code and .NET reverse engineering, a "proxy" is an intermediate method to a value. Quick example

static void main(string[] args) {
	Console.WriteLine(myProxy());
}

static int myProxy() {
	return "hello!;
}

As you can see, proxies can make values harder to read. Now imagine this applied to thousands of values, submersed in thousands of lines of code...

Proxy depth

Obviously, proxies can call other proxies, which will then call other proxies... That's why I added a "depth" setting on this proxy remover. Quick example of a depth 2 proxified code.

static void main(string[] args) {
    Console.WriteLine(myProxy());
}

static int myProxy() {
    return anotherProxy();
}

static int anotherProxy() {
    return "hello!";
}


Result after proxy removal :

static void main(string[] args) {
    Console.WriteLine("hello!");
}

Credits

Special thanks to

  • the NetShields Obfuscator community
  • 0x4d4 (dnlib's inventor)
  • Mindsystemm (a nice friend of mine)

About

A simple and universal .NET proxy remover

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages