ETH Price: $2,542.08 (-0.08%)

Contract

0xAd15c080a89791d21dE5e636b23Bfa6c56126268
 

Overview

ETH Balance

0.000000000160364844 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep120481262021-03-16 6:48:501284 days ago1615877330IN
0xAd15c080...c56126268
0 ETH0.00842915147.95
Transfer120481052021-03-16 6:43:101284 days ago1615876990IN
0xAd15c080...c56126268
0.06485243 ETH0.000021051
Sweep120475722021-03-16 4:41:501285 days ago1615869710IN
0xAd15c080...c56126268
0 ETH0.00880703154.55
Transfer120475542021-03-16 4:36:591285 days ago1615869419IN
0xAd15c080...c56126268
0.08557879 ETH0.000021051
Sweep120468722021-03-16 2:03:521285 days ago1615860232IN
0xAd15c080...c56126268
0 ETH0.00858074150.579
Transfer120468522021-03-16 2:00:001285 days ago1615860000IN
0xAd15c080...c56126268
0.13786284 ETH0.000021051
Sweep120463702021-03-16 0:16:231285 days ago1615853783IN
0xAd15c080...c56126268
0 ETH0.01046814183.7
Transfer120463542021-03-16 0:11:211285 days ago1615853481IN
0xAd15c080...c56126268
0.12830284 ETH0.000021051
Sweep120459072021-03-15 22:32:261285 days ago1615847546IN
0xAd15c080...c56126268
0 ETH0.01002936176
Transfer120458902021-03-15 22:29:021285 days ago1615847342IN
0xAd15c080...c56126268
0.08138372 ETH0.000021051
Sweep120454572021-03-15 20:55:471285 days ago1615841747IN
0xAd15c080...c56126268
0 ETH0.01197254210.1
Transfer120454362021-03-15 20:51:231285 days ago1615841483IN
0xAd15c080...c56126268
0.13054881 ETH0.000021051
Sweep120449432021-03-15 19:01:121285 days ago1615834872IN
0xAd15c080...c56126268
0 ETH0.01034059181.5
Transfer120449302021-03-15 18:58:551285 days ago1615834735IN
0xAd15c080...c56126268
0.06490577 ETH0.000021051
Sweep120444962021-03-15 17:23:561285 days ago1615829036IN
0xAd15c080...c56126268
0 ETH0.01128303198
Transfer120444702021-03-15 17:18:471285 days ago1615828727IN
0xAd15c080...c56126268
0.08987632 ETH0.000021051
Sweep120439572021-03-15 15:23:101285 days ago1615821790IN
0xAd15c080...c56126268
0 ETH0.01090692191.4
Transfer120439352021-03-15 15:18:001285 days ago1615821480IN
0xAd15c080...c56126268
0.08106681 ETH0.000021051
Sweep120434262021-03-15 13:25:281285 days ago1615814728IN
0xAd15c080...c56126268
0 ETH0.01216059213.4
Transfer120434002021-03-15 13:18:221285 days ago1615814302IN
0xAd15c080...c56126268
0.1487512 ETH0.000021051
Sweep120429422021-03-15 11:36:041285 days ago1615808164IN
0xAd15c080...c56126268
0 ETH0.00902452158.4
Transfer120429232021-03-15 11:31:431285 days ago1615807903IN
0xAd15c080...c56126268
0.0689765 ETH0.000021051
Sweep120424492021-03-15 9:45:521285 days ago1615801552IN
0xAd15c080...c56126268
0 ETH0.00940252165
Transfer120424282021-03-15 9:42:411285 days ago1615801361IN
0xAd15c080...c56126268
0.07594971 ETH0.000021051
Sweep120419962021-03-15 8:12:421285 days ago1615795962IN
0xAd15c080...c56126268
0 ETH0.01172181205.7000016
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
120481262021-03-16 6:48:501284 days ago1615877330
0xAd15c080...c56126268
0.06485243 ETH
120475722021-03-16 4:41:501285 days ago1615869710
0xAd15c080...c56126268
0.0855788 ETH
120468722021-03-16 2:03:521285 days ago1615860232
0xAd15c080...c56126268
0.13786285 ETH
120463702021-03-16 0:16:231285 days ago1615853783
0xAd15c080...c56126268
0.12830284 ETH
120459072021-03-15 22:32:261285 days ago1615847546
0xAd15c080...c56126268
0.08138373 ETH
120454572021-03-15 20:55:471285 days ago1615841747
0xAd15c080...c56126268
0.13054882 ETH
120449432021-03-15 19:01:121285 days ago1615834872
0xAd15c080...c56126268
0.06490577 ETH
120444962021-03-15 17:23:561285 days ago1615829036
0xAd15c080...c56126268
0.08987633 ETH
120439572021-03-15 15:23:101285 days ago1615821790
0xAd15c080...c56126268
0.08106681 ETH
120434262021-03-15 13:25:281285 days ago1615814728
0xAd15c080...c56126268
0.14875121 ETH
120429422021-03-15 11:36:041285 days ago1615808164
0xAd15c080...c56126268
0.06897651 ETH
120424492021-03-15 9:45:521285 days ago1615801552
0xAd15c080...c56126268
0.07594971 ETH
120419962021-03-15 8:12:421285 days ago1615795962
0xAd15c080...c56126268
0.07590517 ETH
120411442021-03-15 4:59:181286 days ago1615784358
0xAd15c080...c56126268
0.08652869 ETH
120406072021-03-15 2:55:221286 days ago1615776922
0xAd15c080...c56126268
0.08241467 ETH
120400942021-03-15 0:57:181286 days ago1615769838
0xAd15c080...c56126268
0.12902954 ETH
120393962021-03-14 22:20:481286 days ago1615760448
0xAd15c080...c56126268
0.11088093 ETH
120388432021-03-14 20:27:021286 days ago1615753622
0xAd15c080...c56126268
0.10262616 ETH
120383842021-03-14 18:41:451286 days ago1615747305
0xAd15c080...c56126268
0.0681889 ETH
120378592021-03-14 16:51:441286 days ago1615740704
0xAd15c080...c56126268
0.0706229 ETH
120374682021-03-14 15:20:091286 days ago1615735209
0xAd15c080...c56126268
0.11637455 ETH
120369242021-03-14 13:24:241286 days ago1615728264
0xAd15c080...c56126268
0.08987713 ETH
120362502021-03-14 10:52:191286 days ago1615719139
0xAd15c080...c56126268
0.08591328 ETH
120357772021-03-14 9:03:111286 days ago1615712591
0xAd15c080...c56126268
0.08586758 ETH
120352812021-03-14 7:18:151286 days ago1615706295
0xAd15c080...c56126268
0.06341643 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.