ETH Price: $2,666.15 (+9.99%)
Gas: 1 Gwei

Contract

0x7C0C36681b260E129E798e5381761faf5B3161ad
 

Overview

ETH Balance

0.000000004989099253 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep88071772019-10-25 4:43:561750 days ago1571978636IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
Transfer88071492019-10-25 4:38:281750 days ago1571978308IN
0x7C0C3668...f5B3161ad
0.13628654 ETH0.000021051
Sweep87627872019-10-18 4:36:581757 days ago1571373418IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
Transfer87627742019-10-18 4:33:481757 days ago1571373228IN
0x7C0C3668...f5B3161ad
0.44110681 ETH0.000021051
Sweep87183042019-10-11 4:36:431764 days ago1570768603IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
Transfer87182782019-10-11 4:31:581764 days ago1570768318IN
0x7C0C3668...f5B3161ad
0.44740457 ETH0.000021051
Sweep86735412019-10-04 4:30:331771 days ago1570163433IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
Transfer86735222019-10-04 4:27:271771 days ago1570163247IN
0x7C0C3668...f5B3161ad
0.44382167 ETH0.000021051
Sweep86287682019-09-27 4:31:351778 days ago1569558695IN
0x7C0C3668...f5B3161ad
0 ETH0.0015007329.9805
Transfer86287452019-09-27 4:27:001778 days ago1569558420IN
0x7C0C3668...f5B3161ad
0.47348595 ETH0.000021051
Sweep85840372019-09-20 4:29:451785 days ago1568953785IN
0x7C0C3668...f5B3161ad
0 ETH0.0018676337.31015884
Transfer85840142019-09-20 4:23:591785 days ago1568953439IN
0x7C0C3668...f5B3161ad
0.50171021 ETH0.000021051
Sweep85391742019-09-13 4:27:041792 days ago1568348824IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
Transfer85391522019-09-13 4:22:571792 days ago1568348577IN
0x7C0C3668...f5B3161ad
0.56394602 ETH0.000021051
Sweep84943092019-09-06 4:24:161799 days ago1567743856IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
Transfer84942942019-09-06 4:20:071799 days ago1567743607IN
0x7C0C3668...f5B3161ad
0.55150933 ETH0.000021051
Sweep84493792019-08-30 4:22:571806 days ago1567138977IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
Transfer84493622019-08-30 4:19:091806 days ago1567138749IN
0x7C0C3668...f5B3161ad
0.5480073 ETH0.000021051
Sweep84043472019-08-23 4:21:121813 days ago1566534072IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
Transfer84043302019-08-23 4:15:031813 days ago1566533703IN
0x7C0C3668...f5B3161ad
0.54822389 ETH0.000021051
Sweep83592842019-08-16 4:18:241820 days ago1565929104IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
Transfer83592632019-08-16 4:12:021820 days ago1565928722IN
0x7C0C3668...f5B3161ad
0.53753301 ETH0.000021051
Sweep83142272019-08-09 4:15:201827 days ago1565324120IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
Transfer83142002019-08-09 4:09:431827 days ago1565323783IN
0x7C0C3668...f5B3161ad
0.53268179 ETH0.000021051
Sweep82689982019-08-02 4:07:241834 days ago1564718844IN
0x7C0C3668...f5B3161ad
0 ETH0.0011012522
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
88071772019-10-25 4:43:561750 days ago1571978636
0x7C0C3668...f5B3161ad
0.13628655 ETH
87627872019-10-18 4:36:581757 days ago1571373418
0x7C0C3668...f5B3161ad
0.44110681 ETH
87183042019-10-11 4:36:431764 days ago1570768603
0x7C0C3668...f5B3161ad
0.44740457 ETH
86735412019-10-04 4:30:331771 days ago1570163433
0x7C0C3668...f5B3161ad
0.44382168 ETH
86287682019-09-27 4:31:351778 days ago1569558695
0x7C0C3668...f5B3161ad
0.47348595 ETH
85840372019-09-20 4:29:451785 days ago1568953785
0x7C0C3668...f5B3161ad
0.50171022 ETH
85391742019-09-13 4:27:041792 days ago1568348824
0x7C0C3668...f5B3161ad
0.56394603 ETH
84943092019-09-06 4:24:161799 days ago1567743856
0x7C0C3668...f5B3161ad
0.55150933 ETH
84493792019-08-30 4:22:571806 days ago1567138977
0x7C0C3668...f5B3161ad
0.54800731 ETH
84043472019-08-23 4:21:121813 days ago1566534072
0x7C0C3668...f5B3161ad
0.54822389 ETH
83592842019-08-16 4:18:241820 days ago1565929104
0x7C0C3668...f5B3161ad
0.53753302 ETH
83142272019-08-09 4:15:201827 days ago1565324120
0x7C0C3668...f5B3161ad
0.53268179 ETH
82689982019-08-02 4:07:241834 days ago1564718844
0x7C0C3668...f5B3161ad
0.55118106 ETH
82239122019-07-26 4:04:071841 days ago1564113847
0x7C0C3668...f5B3161ad
0.5540977 ETH
81788482019-07-19 4:01:131848 days ago1563508873
0x7C0C3668...f5B3161ad
0.55871254 ETH
81340702019-07-12 4:00:031855 days ago1562904003
0x7C0C3668...f5B3161ad
0.56397792 ETH
80889932019-07-05 3:55:491862 days ago1562298949
0x7C0C3668...f5B3161ad
0.56108826 ETH
80440652019-06-28 3:53:211869 days ago1561694001
0x7C0C3668...f5B3161ad
0.60220341 ETH
79991422019-06-21 3:50:571876 days ago1561089057
0x7C0C3668...f5B3161ad
0.60698469 ETH
79544542019-06-14 3:49:231883 days ago1560484163
0x7C0C3668...f5B3161ad
0.6147447 ETH
79097462019-06-07 3:46:301890 days ago1559879190
0x7C0C3668...f5B3161ad
0.60794728 ETH
78649502019-05-31 3:46:031897 days ago1559274363
0x7C0C3668...f5B3161ad
0.60216169 ETH
78200152019-05-24 3:42:541904 days ago1558669374
0x7C0C3668...f5B3161ad
0.58192759 ETH
77753812019-05-17 3:39:221911 days ago1558064362
0x7C0C3668...f5B3161ad
0.61405091 ETH
77304222019-05-10 3:36:081918 days ago1557459368
0x7C0C3668...f5B3161ad
0.6345559 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.