Turning Regular Code Into Atrocities With LLVM: The Return
Where a simple xor gets transformed beyond what it ever thought
more ...Where a simple xor gets transformed beyond what it ever thought
more ...A "hands-on" introduction to LLVM passes through obfuscation.
more ...Why does some memset calls get optimized away by the compiler? Let's investigate!
more ...Where building a custom obfuscated Python interpreter for a Python packer turned into an optimized Python interpreter.
more ...Back in the days when I was playing with SSE instructions, I was trying to optimize every workload that I could think of. One of these was to convert thousands of IPv4 strings to 32-bit numbers for further processing. This article shows one way to optimize such a thing, and how the SSE instructions set can be used to get the better of your $1000 Intel CPU :)
more ...Angular is a client side framework aimed at creating rich web applications. It adds logic declaration to the normally static HTML in order to provide a dynamic user experience. Built at Google, it is a perfect tool for building one page applications, and is made to be really accessible for the standard web developper. But some of the magic going on underneath can be tricky, doing things outside the box can be much more difficult. This article has no tutorial or introduction vocation, it just tries to shed some light on some unexpected behaviours of angular.
more ...Writing a disassembler is a tedious task. You have to decode the opcode, interpret the meaning of the operands and, finally, print the instruction correctly. Fortunately, you can count on IDA to provide modules with mapping executable, a colorful GUI, control flow graphs and so on. In this article, I'll share my feedbacks on developing an IDP module for IDA.
more ...