ERC-20 token sweeper for exchange deposit addresses. Owner-only sweep of any token balance. Compiled with Solidity 0.4.9.
Key Facts
Description
An upgraded exchange deposit forwarding contract (v2) that adds pragma solidity ^0.4.8 and the LOCK8605463013() constant as an anti-proxy identifier. Otherwise identical to v1: sweep() forwards tokens to the owner address.
5,310 identical copies were deployed, making it the single most widely deployed unverified bytecode on early Ethereum.
Functions: transfer(address,uint256), balanceOf(address), sweep(address), LOCK8605463013(). The LOCK function returns a constant value used to identify legitimate contract instances vs proxies.
Source Verified
Exact bytecode match (stripped bzzr metadata). Compiler: solc 0.4.9+commit.364da425, no optimizer. Token sweeper: calls token.transfer(owner, token.balanceOf(this)).
Heuristic Analysis
The following characteristics were detected through bytecode analysis and may not be accurate.
Spurious Dragon Era
Continued DoS protection. State trie clearing.
Bytecode Overview
Verified Source Available
Source verified through compiler archaeology and exact bytecode matching.
View Verification ProofShow source code (Solidity)
pragma solidity ^0.4.8;
contract Token {
function transfer(address to, uint256 value) returns (bool ok);
function balanceOf(address who) constant returns (uint256 value);
}
contract Forwarder {
address owner;
address defaultSweep;
function Forwarder() {
owner = 0x0536806df512d6cdde913cf95c9886f65b1d3462;
defaultSweep = 0xa74476443119A942dE498590Fe1f2454d7D4aC0d;
}
function() {
sweep(defaultSweep);
}
function sweep(address _token) {
address token = _token;
if (!(msg.sender == owner && Token(token).transfer(owner, Token(token).balanceOf(this)))) throw;
}
}