Cita de: Redesoft en 29 Mayo 2017, 19:42 PM
veo poco control.
Con .NET Reflector (+ el plugin Reflexil) incluso puedes seleccionar una parte específica del byte-code, una clase entera por poner un ejemplo y representarlo en instrucciones/lineas de código de VB.net o C# (lenguaje a elección del usuario) y puedes modificar directamente dichas lineas de código de C#/VB.NET como si se tratase de una IDE de .NET (literalmente hablando), y luego compilar los cambios. ¡Si eso no es control, entonces no sé yo que será!.
Sinceramente no sé a que te refieres por el acónimo "bps", pero .NET Reflector / la tecnología reflection de Microsoft 'is the way to go' a la hora de trastear con ensamblados .NET.
Una alternativa a .NET Reflector es SAE (Simple Assembly Explorer) pero se le queda muy limitado en comparación, y es un proyecto descontinuado. Otras pseudo-alternativas serían ILSpy, o Telerik JustDecompile...aunque esté último está enfocado a otros propósitos, pero te puede servir para representaciones puntuales del código.
Otras herramientas útiles:
AsmSpy
Para determinar las dependencias administradas de un ensamblado .NET (está enfocado a .NET y eso lo hace bastante más "directo" o sencillo, amistoso e intuitivo que el archiconocido Dependency Walker)
Blade API Monitor
Puedes monitorizar las llamadas a la API de Windows que haga un ensamblado .NET o de las funciones exportadas en cualquier dependencia dll de la aplicación en cuestión.
de4dot
Un desofuscador y desempacador para ensamblados .NET, el cual soporta muchas protecciones comerciales conocidas (ej. SmartAssembly, Crypto Obfuscator for .NET , .NET Reactor, etc).
Microsoft UI Tools (UI Accessibility Checker, UI Automation Event Watcher, UI Automation Scope, UI Automation Verify y UI Inspect)
Para analizar la jerarquia de ventanas de un ensamblado .NET, analizar la accesibilidad de algunos miembros y controles, y otros análisis relacionados con el framework de Windows UI Automation.
Esto kit de herramientas lo puedes encontrar en la SDK de Microsoft Windows correspondiente a la versión de Windows que tengas instalada.
Nektra's SpyStudio
Cita de: NektraSpyStudio shows and interprets calls, displaying the results in a structured way. SpyStudio can show registry keys and files that an application uses, COM objects and Windows the application has created, and errors and exceptions.SpyStudio can troubleshoot .NET applications: it logs exceptions, assembly loads, object creation and much more.Esta aplicación la he usado para virtualizar ensamblados .NET, pero como la descripción indica, puede servir para otro tipo de tareas relacionadas con la ing. inversa, con la monitorización de una app en general (y para análisis de profilling también)
Resource .NET
Para modificar recursos embedidos en un ensamblado .NET
Rohitab's API Monitor
Puedes monitorizar las llamadas a la API de Windows que haga un ensamblado .NET o de las funciones exportadas en cualquier dependencia dll de la aplicación en cuestión,
y lo mejor de todo es que con esta herramienta también puedes efectuar API hooking sobre cualquier API, y generar fake dlls.
StrongName Remover
Como su propio nombre indica, sirve para eliminar las firmas de nombres seguros en enamblados .NET (y así permitir la posterior edición del ensamblado).
XAML Spy
Un inspector de la jerarquía de ventanas para aplicaciones .NET con la que podemos representar y explorar el árbol de ventanas / controles con multitud de información (lo de "XAML" es simplemente por que esta app ha sido desarrollada en WPF, eso no tiene nada que ver con su funcionalidad, funciona con todo tipo de executables .NET)
WinSpy++
Lo mismo que XAML Spy y Microsoft UI Inspect, simplemente como alternativa liviana. Es un proyecto descontinuado pero va bien para la mayoría de cosas puntuales.
Zeta Resource Editor
Para editar los recursos de texto/string en un ensamblado .NET
Saludos.