Star on GitHubStar2.4k stars

Case study

uniswap-v2-reborn: reconstructing Uniswap v2 from deployed bytecode

uniswap-v2-reborn reconstructs Uniswap v2 factory, pair and Router02 behavior from deployed EVM runtime bytecode using REA interface inspection, storage probing and written specifications. It provides a TypeScript model, Solidity 0.8 contracts and a differential harness that compares both with the original bytecode; the author reports 4,800 fuzzed operations without mismatches and exact replay of 426 historical swaps.

Targets
Binary
Category
Community REA investigations
Relationship
Author-reported mixed workflow
Sources reviewed
Stars
0
Last commit
2026-10-21
Language
TypeScript
License (GitHub)
MIT

GitHub data as of 2026-11-09

Copy as MarkdownView JSONCite

Requirements & limits

  • Local builds and tests require Node 22.19 or later, pnpm 9 and Foundry.
  • The author reports 4,800 differential operations with zero mismatches and 426 exact historical-swap replays.
  • MIT license.

Cite

BibTeX

@misc{uniswap-v2-reborn-case,
  title = {{uniswap-v2-reborn: reconstructing Uniswap v2 from deployed bytecode}},
  howpublished = {\url{https://github.com/devtechedge/uniswap-v2-reborn}},
  url = {https://github.com/devtechedge/uniswap-v2-reborn},
  urldate = {2026-11-07},
  note = {Awesome REA entry: \url{https://awesomerea.org/resources/uniswap-v2-reborn-case/}}
}

Plain text

uniswap-v2-reborn: reconstructing Uniswap v2 from deployed bytecode. https://github.com/devtechedge/uniswap-v2-reborn (accessed 2026-11-07). Awesome REA entry: https://awesomerea.org/resources/uniswap-v2-reborn-case/

Useful? Star Awesome REA on GitHub2.4k

About this entry

The description was reviewed against primary sources.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · devtechedge/uniswap-v2-reborn · Revision 0cdad3f
  2. docs/ARCHITECTURE.md GitHub · devtechedge/uniswap-v2-reborn · Revision 0cdad3f

More in Native binaries

All 502 entries in Native binariesNative binaries case studies (64)

↑↓ move↵ open⌘↵ new tab