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
DX Improvement at Scale
ntk1000
3
450
20260311 ビジネスSWG活動報告(デジタルアイデンティティ人材育成推進WG Ph2 活動報告会)
oidfj
0
220
白金鉱業Meetup_Vol.22_Orbital Senseを支える衛星画像のマルチモーダルエンベディングと地理空間のあいまい検索技術
brainpadpr
2
290
情シスのための生成AI実践ガイド2026 / Generative AI Practical Guide for Business Technology 2026
glidenote
0
180
製造業ドメインにおける LLMプロダクト構築: 複雑な文脈へのアプローチ
caddi_eng
1
550
[JAWSDAYS2026][D8]その起票、愛が足りてますか?AWSサポートを味方につける、技術的「ラブレター」の書き方
hirosys_
3
110
OpenClawで回す組織運営
jacopen
3
670
8万デプロイ
iwamot
PRO
2
210
Yahoo!ショッピングのレコメンデーション・システムにおけるML実践の一例
lycorptech_jp
PRO
1
180
Kaggleの経験が実務にどう活きているか / kaggle_findy
sansan_randd
7
1.3k
JAWS FESTA 2025でリリースしたほぼリアルタイム文字起こし/翻訳機能の構成について
naoki8408
1
240
トップマネジメントとコンピテンシーから考えるエンジニアリングマネジメント
zigorou
4
820
Featured
See All Featured
How GitHub (no longer) Works
holman
316
140k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
140
Navigating Weather and Climate Data
rabernat
0
130
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Bash Introduction
62gerente
615
210k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
850
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Test your architecture with Archunit
thirion
1
2.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
4 Signs Your Business is Dying
shpigford
187
22k
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