Skip to content

gibbed/ppc2c

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PPC 2 C Plugin

Modified version of Zak Stanborough's PPC2C plugin released as part of Hex-Rays Plug-In Contest 2009.

Overview

This converts tricky PPC assembly instructions into C code by placing a comment after the instruction. This makes it easy to understand what these instructions are doing at a glance. At this stage only the instructions which are hard to understand are converted into C code, but this plugin could be extended to convert all instructions into C code.

Install

Build and copy the PPC2C.plw and PPC2C.p64 files to your IDA\plugins directory.

You then need to either copy plugins.cfg into your IDA\plugins directory or add the following line to your IDA\plugins\plugns.cfg file:

PPC_To_C:_Entire_Function PPC2C Ctrl-F10 1 ; convert the current function to C

Usage

Once installed the plugin can be used by opening an IDB file for the PPC processor and then pressing F10 to convert the current line or currently selected lines into C, or pressing Ctrl-F10 to convert all lines in the current function into C code.

Example

Examples of the C comments that are generated by this plugin are:

bc  14, 4*cr7+eq, loc_800037A8 # if(cr7 is equal) goto loc_800037A8

bc  7, eq, loc_80010B58   # if(cr0 is not equal) goto loc_80010B58

clrlwi %r0, %r0, 31       # %r0 = %r0 & 1

rldicr %r10, %r10, 24,39  # %r10 = ((%r10 << 24) | (%r10 >> 40)) & 0xFFFFFFFFFF000000

rldicl %r4, %r4, 0,48     # %r4 = %r4 & 0xFFFF

rldicl %r0, %r0, 0,59     # %r0 = %r0 & 0x1F

rldicl %r9, %r9, 61,3     # %r9 = (%r9 >> 3) & 0x1FFFFFFFFFFFFFFF

slwi %r9, %r9, 8          # %r9 = %r9 << 8

About

PowerPC to C plugin for IDA

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages