Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Radeco Pseudo C Code Generation
Search
kriw
September 08, 2018
Technology
1
120
Radeco Pseudo C Code Generation
The slide of r2con2018
kriw
September 08, 2018
Tweet
Share
More Decks by kriw
See All by kriw
セキュリティキャンプ2017全国大会 集中コースZ5
kriw
1
510
Other Decks in Technology
See All in Technology
Qiita Bash アドカレ LT #1
okaru
0
180
形式手法特論:コンパイラの「正しさ」は証明できるか? #burikaigi / BuriKaigi 2026
ytaka23
16
4.9k
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
340
First-Principles-of-Scrum
hiranabe
4
1.8k
Scrum Guide Expansion Pack が示す現代プロダクト開発への補完的視点
sonjin
0
580
AWSと生成AIで学ぶ!実行計画の読み解き方とSQLチューニングの実践
yakumo
2
410
歴史から学ぶ、Goのメモリ管理基礎
logica0419
14
2.7k
戰略轉變:從建構 AI 代理人到發展可擴展的技能生態系統
appleboy
0
190
「アウトプット脳からユーザー価値脳へ」がそんなに簡単にできたら苦労しない #RSGT2026
aki_iinuma
11
4.9k
製造業から学んだ「本質を守り現場に合わせるアジャイル実践」
kamitokusari
0
570
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
自己管理型チームと個人のセルフマネジメント 〜モチベーション編〜
kakehashi
PRO
5
2.6k
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
120
The Curse of the Amulet
leimatthew05
0
7.1k
A Soul's Torment
seathinner
4
2.1k
Darren the Foodie - Storyboard
khoart
PRO
2
2.1k
Building an army of robots
kneath
306
46k
Getting science done with accelerated Python computing platforms
jacobtomlinson
1
93
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
0
280
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
63
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
110
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
74
Balancing Empowerment & Direction
lara
5
840
Transcript
Radeco Pseudo C Code Generation GSoC’2018
Radeco Pseudo C Code Generation I have done - writing
pseudo C Code generator - writing r2 integration
Demo
Decompilers
Projects - radeco-lib - https://github.com/radareorg/radeco-lib - Core library for binary
analysis, decompilation - radeco - https://github.com/radareorg/radeco - User interface
Design (radare2 to radeco) Input (ESIL)
Design (radeco-lib) radeco has 3 stages - Loading Binary (ESIL)
- Analyses - deadcode elimination, ... - Decompilation - heuristics - control flow structuring
Works Before GSoC After GSoC
Works Before GSoC After GSoC
IR Assembly-like intermidiate representation - Generated from ESIL - SSA
form Example IR
C-like CFG - CFG with C expressions
IR to C-like CFG - CFG is copied from the
one of IR No for/if/while - Expressions are recovered by expr tree %34 = (%30 | %31) & 0xffffffff %33 = %30 | %31 %34 = %33 & 0xffffffff
C-like CFG to Pseudo C code - Recover C code
from CFG (with GOTOs) - Only recover assignments with memory reference - Recovered: mov [ebp - 0x1c], 0x10 - Ignored: mov eax, 0x10
Challenges - Required knowledge of program/binary analysis - Sharing tasks
with HMPerson1 - Few information about decompiler
TODOs Milestone for Radeco-0.1 - Bug fixes - API stabilization
(radeco-lib) - Documentation - etc
Commits
Thank you