ETH Price: $2,795.91 (+2.00%)

Contract

0x612EdaF4107D5A3d00dA8d0ad7F50F609306C6A1
 

Overview

ETH Balance

0.000000008098138985 ETH

Eth Value

Less Than $0.01 (@ $2,795.91/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep105906642020-08-04 2:37:451662 days ago1596508665IN
0x612EdaF4...09306C6A1
0 ETH0.0040174470.5
Transfer105906442020-08-04 2:34:091662 days ago1596508449IN
0x612EdaF4...09306C6A1
0.11523074 ETH0.000189459
Sweep105457622020-07-28 4:12:341669 days ago1595909554IN
0x612EdaF4...09306C6A1
0 ETH0.0055389497.2
Transfer105457432020-07-28 4:08:291669 days ago1595909309IN
0x612EdaF4...09306C6A1
0.1108463 ETH0.000189459
Sweep105075502020-07-22 6:25:251675 days ago1595399125IN
0x612EdaF4...09306C6A1
0 ETH0.00589794103.50000218
Transfer105075252020-07-22 6:18:171675 days ago1595398697IN
0x612EdaF4...09306C6A1
0.10838241 ETH0.000189459
Sweep104807862020-07-18 2:39:401679 days ago1595039980IN
0x612EdaF4...09306C6A1
0 ETH0.0027352848
Transfer104807572020-07-18 2:34:241679 days ago1595039664IN
0x612EdaF4...09306C6A1
0.10952436 ETH0.000189459
Sweep104613852020-07-15 2:19:111682 days ago1594779551IN
0x612EdaF4...09306C6A1
0 ETH0.0020514636
Transfer104613702020-07-15 2:15:531682 days ago1594779353IN
0x612EdaF4...09306C6A1
0.13165945 ETH0.000189459
Sweep104354832020-07-11 2:25:111686 days ago1594434311IN
0x612EdaF4...09306C6A1
0 ETH0.0022224139
Transfer104354622020-07-11 2:20:421686 days ago1594434042IN
0x612EdaF4...09306C6A1
0.14141764 ETH0.000189459
Sweep104167702020-07-08 4:44:511689 days ago1594183491IN
0x612EdaF4...09306C6A1
0 ETH0.0032481457
Transfer104167502020-07-08 4:39:231689 days ago1594183163IN
0x612EdaF4...09306C6A1
0.13039977 ETH0.000189459
Sweep103904582020-07-04 3:14:271693 days ago1593832467IN
0x612EdaF4...09306C6A1
0 ETH0.002307440.50000185
Transfer103904342020-07-04 3:09:031693 days ago1593832143IN
0x612EdaF4...09306C6A1
0.10004991 ETH0.000189459
Sweep103646482020-06-30 3:14:301697 days ago1593486870IN
0x612EdaF4...09306C6A1
0 ETH0.003419160
Transfer103646242020-06-30 3:09:251697 days ago1593486565IN
0x612EdaF4...09306C6A1
0.12334664 ETH0.000189459
Sweep103324762020-06-25 3:21:061702 days ago1593055266IN
0x612EdaF4...09306C6A1
0 ETH0.0032481457
Transfer103324542020-06-25 3:15:311702 days ago1593054931IN
0x612EdaF4...09306C6A1
0.10418241 ETH0.000189459
Sweep103130742020-06-22 3:03:571705 days ago1592795037IN
0x612EdaF4...09306C6A1
0 ETH0.0021369337.5
Transfer103130592020-06-22 3:00:541705 days ago1592794854IN
0x612EdaF4...09306C6A1
0.10668733 ETH0.000189459
Sweep102935972020-06-19 3:02:591708 days ago1592535779IN
0x612EdaF4...09306C6A1
0 ETH0.0028207549.5
Transfer102935802020-06-19 2:57:431708 days ago1592535463IN
0x612EdaF4...09306C6A1
0.13842985 ETH0.000189459
Sweep102678522020-06-15 3:22:091712 days ago1592191329IN
0x612EdaF4...09306C6A1
0 ETH0.0023788341.74500224
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
105906642020-08-04 2:37:451662 days ago1596508665
0x612EdaF4...09306C6A1
0.11523074 ETH
105457622020-07-28 4:12:341669 days ago1595909554
0x612EdaF4...09306C6A1
0.11084631 ETH
105075502020-07-22 6:25:251675 days ago1595399125
0x612EdaF4...09306C6A1
0.10838241 ETH
104807862020-07-18 2:39:401679 days ago1595039980
0x612EdaF4...09306C6A1
0.10952436 ETH
104613852020-07-15 2:19:111682 days ago1594779551
0x612EdaF4...09306C6A1
0.13165946 ETH
104354832020-07-11 2:25:111686 days ago1594434311
0x612EdaF4...09306C6A1
0.14141765 ETH
104167702020-07-08 4:44:511689 days ago1594183491
0x612EdaF4...09306C6A1
0.13039977 ETH
103904582020-07-04 3:14:271693 days ago1593832467
0x612EdaF4...09306C6A1
0.10004992 ETH
103646482020-06-30 3:14:301697 days ago1593486870
0x612EdaF4...09306C6A1
0.12334664 ETH
103324762020-06-25 3:21:061702 days ago1593055266
0x612EdaF4...09306C6A1
0.10418241 ETH
103130742020-06-22 3:03:571705 days ago1592795037
0x612EdaF4...09306C6A1
0.10668734 ETH
102935972020-06-19 3:02:591708 days ago1592535779
0x612EdaF4...09306C6A1
0.13842986 ETH
102678522020-06-15 3:22:091712 days ago1592191329
0x612EdaF4...09306C6A1
0.14157101 ETH
102494992020-06-12 7:25:181715 days ago1591946718
0x612EdaF4...09306C6A1
0.1146032 ETH
102355302020-06-10 3:26:301717 days ago1591759590
0x612EdaF4...09306C6A1
0.10828879 ETH
102225352020-06-08 2:52:331719 days ago1591584753
0x612EdaF4...09306C6A1
0.1157609 ETH
102099212020-06-06 3:59:331721 days ago1591415973
0x612EdaF4...09306C6A1
0.15030891 ETH
101904332020-06-03 3:26:031724 days ago1591154763
0x612EdaF4...09306C6A1
0.10764273 ETH
101783462020-06-01 6:24:331726 days ago1590992673
0x612EdaF4...09306C6A1
0.1130779 ETH
101661082020-05-30 8:40:381728 days ago1590828038
0x612EdaF4...09306C6A1
0.12647229 ETH
101517162020-05-28 3:00:021730 days ago1590634802
0x612EdaF4...09306C6A1
0.14784526 ETH
101388542020-05-26 3:08:511732 days ago1590462531
0x612EdaF4...09306C6A1
0.16147604 ETH
101259812020-05-24 2:53:401734 days ago1590288820
0x612EdaF4...09306C6A1
0.11130662 ETH
101140392020-05-22 6:19:291736 days ago1590128369
0x612EdaF4...09306C6A1
0.14365454 ETH
100951062020-05-19 7:44:591739 days ago1589874299
0x612EdaF4...09306C6A1
0.10776056 ETH
View All Internal Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xd1DD82d1...18D918504
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
UserWallet

Compiler Version
v0.4.11+commit.68ef5810

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-08-15
*/

pragma solidity ^0.4.10;

// Copyright 2017 Bittrex

contract AbstractSweeper {
    function sweep(address token, uint amount) returns (bool);

    function () { throw; }

    Controller controller;

    function AbstractSweeper(address _controller) {
        controller = Controller(_controller);
    }

    modifier canSweep() {
        if (msg.sender != controller.authorizedCaller() && msg.sender != controller.owner()) throw;
        if (controller.halted()) throw;
        _;
    }
}

contract Token {
    function balanceOf(address a) returns (uint) {
        (a);
        return 0;
    }

    function transfer(address a, uint val) returns (bool) {
        (a);
        (val);
        return false;
    }
}

contract DefaultSweeper is AbstractSweeper {
    function DefaultSweeper(address controller)
             AbstractSweeper(controller) {}

    function sweep(address _token, uint _amount)
    canSweep
    returns (bool) {
        bool success = false;
        address destination = controller.destination();

        if (_token != address(0)) {
            Token token = Token(_token);
            uint amount = _amount;
            if (amount > token.balanceOf(this)) {
                return false;
            }

            success = token.transfer(destination, amount);
        }
        else {
            uint amountInWei = _amount;
            if (amountInWei > this.balance) {
                return false;
            }

            success = destination.send(amountInWei);
        }

        if (success) {
            controller.logSweep(this, destination, _token, _amount);
        }
        return success;
    }
}

contract UserWallet {
    AbstractSweeperList sweeperList;
    function UserWallet(address _sweeperlist) {
        sweeperList = AbstractSweeperList(_sweeperlist);
    }

    function () public payable { }

    function tokenFallback(address _from, uint _value, bytes _data) {
        (_from);
        (_value);
        (_data);
     }

    function sweep(address _token, uint _amount)
    returns (bool) {
        (_amount);
        return sweeperList.sweeperOf(_token).delegatecall(msg.data);
    }
}

contract AbstractSweeperList {
    function sweeperOf(address _token) returns (address);
}

contract Controller is AbstractSweeperList {
    address public owner;
    address public authorizedCaller;

    address public destination;

    bool public halted;

    event LogNewWallet(address receiver);
    event LogSweep(address indexed from, address indexed to, address indexed token, uint amount);
    
    modifier onlyOwner() {
        if (msg.sender != owner) throw; 
        _;
    }

    modifier onlyAuthorizedCaller() {
        if (msg.sender != authorizedCaller) throw; 
        _;
    }

    modifier onlyAdmins() {
        if (msg.sender != authorizedCaller && msg.sender != owner) throw; 
        _;
    }

    function Controller() 
    {
        owner = msg.sender;
        destination = msg.sender;
        authorizedCaller = msg.sender;
    }

    function changeAuthorizedCaller(address _newCaller) onlyOwner {
        authorizedCaller = _newCaller;
    }

    function changeDestination(address _dest) onlyOwner {
        destination = _dest;
    }

    function changeOwner(address _owner) onlyOwner {
        owner = _owner;
    }

    function makeWallet() onlyAdmins returns (address wallet)  {
        wallet = address(new UserWallet(this));
        LogNewWallet(wallet);
    }

    function halt() onlyAdmins {
        halted = true;
    }

    function start() onlyOwner {
        halted = false;
    }

    address public defaultSweeper = address(new DefaultSweeper(this));
    mapping (address => address) sweepers;

    function addSweeper(address _token, address _sweeper) onlyOwner {
        sweepers[_token] = _sweeper;
    }

    function sweeperOf(address _token) returns (address) {
        address sweeper = sweepers[_token];
        if (sweeper == 0) sweeper = defaultSweeper;
        return sweeper;
    }

    function logSweep(address from, address to, address token, uint amount) {
        LogSweep(from, to, token, amount);
    }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_amount","type":"uint256"}],"name":"sweep","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"tokenFallback","outputs":[],"payable":false,"type":"function"},{"inputs":[{"name":"_sweeperlist","type":"address"}],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"}]

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.