Articles, Docs, Info

Facebook Twitter

Program-Transformation.Org. The Program Transformation Wiki Program transformation techniques are used in a many areas of software engineering ranging from program synthesis, via program optimization and program refactoring, to reverse engineering and documentation generation.

Program-Transformation.Org

Many theories, tools and applications have been developed over the last 30 years. Often the results of these efforts are used only in the community that developed them. Program-transformation.org is dedicated to collecting, organizing and disseminating information about all aspects of program transformation in order to share results across communities. Such an effort cannot possibly be achieved by a static web site. Entry Points There are a number of EntryPoints that focus on specific aspects of program transformation. Categories Another way to browse the pages is by considering the various categories. Www.agner.org/optimize/objconv-instructions.pdf.

The H - Oline, Internet Security

KPNC. Simple, but effective system independent anti-debug trick based on well-documented APIs and does not involve assembly inline (means: it could be implemented in pure C). also it works as anti-dump sensor. caution: I would recommend do _not_ use this thick in production code, because it’s based on the bug (two bugs actually: one in Windows, another in OllyDbg), which could be fixed at any moment. however, noting terrible happens if the bug would be fixed - the application just could not detect debugger/dumper. in passing: I found this bug working on the project for a spectrography cherry group, well, not a cherry actually, but I prefer to keep the real name if it under the mat, anyway it’s all about Ciscar Fon - my first love, a gothic type, very kinky and yet creative. in a nutshell: the whole idea based on PAGE_GUARD attribute.

KPNC

ReadProcessMemory: normally, /* I mean _normally_ */ ReadProcessMemory() returns error if it meet a page with PAGE_GUARD attribute. does it make sense? Of course!

Hex Blog

EM_386. Hardware Download. August 26 2011 License: Non-Profit Open WxPic allows, with a PC and an adapter (programmer), to program a PIC micro-controller, by loading a HEX file, reviewing and/or editing the configuration or memory and writing and/or verifyin... eVAX is a software emulation of a VAX computer, written entirely in portable C. The emulator includes a "high function" console that supports assembly, disassembly, and debugging of ... VLSI Vision CPiA kernel driver & mediakit addon (for BeOS 4.5). setserial is a program designed to set and/or report theconfiguration information associated with a serial port. License: GNU General Publ Heavy duty harddisk check. Very simple Java application for the TINI platform ( for turning the CPU LED on and off to provide a visual heartbeat. Software to support TASS, The Amateur Sky Survey. MaX10 is replacement software for the X10 MouseREMOTE A collection of small BeOS programs and plugins.

Open source utility to (re)program flash BIOS chips. How main() is executed on Linux LG #84. Starting The question is simple: how does linux execute my main()?

How main() is executed on Linux LG #84

Through this document, I'll use the following simple C program to illustrate how it works. It's called "simple.c" main(){ return(0);} Build gcc -o simple simple.c What's in the executable? To see what's in the executable, let's use a tool "objdump" PLT and GOT - the key to code sharing and dynamic libraries : technovelty. (this post was going to be about something else, but after getting this far, I think it stands on its own as an introduction to dynamic linking) The shared library is an integral part of a modern system, but often the mechanisms behind the implementation are less well understood.

PLT and GOT - the key to code sharing and dynamic libraries : technovelty

There are, of course, many guides to this sort of thing. Hopefully this adds another perspective that resonates with someone. Let's start at the beginning — - relocations are entries in binaries that are left to be filled in later -- at link time by the toolchain linker or at runtime by the dynamic linker. A relocation in a binary is a descriptor which essentially says "determine the value of X, and put that value into the binary at offset Y" — each relocation has a specific type, defined in the ABI documentation, which describes exactly how "determine the value of" is actually determined. Here's the simplest example: $ cat a.c extern int foo; int function(void) { return foo; } $ gcc -c a.c $ readelf --relocs . Dynamic Linking in Linux and Windows, part one. By Reji Thomas and Bhasker Reddy This article discusses the shared libraries concept in both Windows and Linux, and offers a walk-through through various data structures to explain how dynamic linking is done in these operating systems.

Dynamic Linking in Linux and Windows, part one

The paper will be useful for developers interested in the security implications and the relative speed of dynamic linking, and assumes some prior cursory knowledge with dynamic linking. Part one introduces the concepts for both Linux and Windows, but will focus primarily on Linux. Next time in part two, we'll discuss how it works in Windows and then continue to compare the two environments. Static Libraries vs. Dynamic Linking in Linux and Windows, part two. By Reji Thomas and Bhasker Reddy This article discusses the shared libraries concept in both Windows and Linux, and offers a walk through various data structures to explain how dynamic linking is done in these operating systems.

Dynamic Linking in Linux and Windows, part two

The paper will be useful for developers interested in the security implications and the relative speed of dynamic linking, and assumes some prior cursory knowledge with dynamic linking. ARTeam ezine 4th. How to Disassemble DLL on Linux.