ETH Price: $3,276.48 (+0.78%)
Gas: 1 Gwei

Contract

0x438D8DD01569DBc121fA82558BBafF98911578fd
 

Overview

ETH Balance

0.000000002889155523 ETH

Eth Value

Less Than $0.01 (@ $3,276.48/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep117171652021-01-24 8:10:351280 days ago1611475835IN
0x438D8DD0...8911578fd
0 ETH0.0035558662.40000175
Transfer117171472021-01-24 8:06:271280 days ago1611475587IN
0x438D8DD0...8911578fd
0.10337703 ETH0.000063153
Sweep116911142021-01-20 8:12:361284 days ago1611130356IN
0x438D8DD0...8911578fd
0 ETH0.0032139556.4
Transfer116910912021-01-20 8:06:301284 days ago1611129990IN
0x438D8DD0...8911578fd
0.10851271 ETH0.000063153
Sweep116653512021-01-16 8:58:531288 days ago1610787533IN
0x438D8DD0...8911578fd
0 ETH0.003008852.8
Transfer116653192021-01-16 8:54:321288 days ago1610787272IN
0x438D8DD0...8911578fd
0.11167693 ETH0.000063153
Sweep116390792021-01-12 8:33:201292 days ago1610440400IN
0x438D8DD0...8911578fd
0 ETH0.0044448378
Transfer116390642021-01-12 8:28:201292 days ago1610440100IN
0x438D8DD0...8911578fd
0.13201978 ETH0.000063153
Sweep116133762021-01-08 9:56:161295 days ago1610099776IN
0x438D8DD0...8911578fd
0 ETH0.0037610166
Transfer116133452021-01-08 9:50:281295 days ago1610099428IN
0x438D8DD0...8911578fd
0.10383183 ETH0.000063153
Sweep115935512021-01-05 8:53:481299 days ago1609836828IN
0x438D8DD0...8911578fd
0 ETH0.00699547122.76
Transfer115935332021-01-05 8:48:481299 days ago1609836528IN
0x438D8DD0...8911578fd
0.12170464 ETH0.000063153
Sweep115737662021-01-02 8:00:141302 days ago1609574414IN
0x438D8DD0...8911578fd
0 ETH0.0026668946.8
Transfer115737492021-01-02 7:56:131302 days ago1609574173IN
0x438D8DD0...8911578fd
0.12274707 ETH0.000063153
Sweep115477172020-12-29 8:03:411306 days ago1609229021IN
0x438D8DD0...8911578fd
0 ETH0.0049638487.108
Transfer115476952020-12-29 7:58:261306 days ago1609228706IN
0x438D8DD0...8911578fd
0.12724923 ETH0.000063153
Sweep115217912020-12-25 8:52:511310 days ago1608886371IN
0x438D8DD0...8911578fd
0 ETH0.00601761105.6
Transfer115216252020-12-25 8:16:151310 days ago1608884175IN
0x438D8DD0...8911578fd
0.1263652 ETH0.000063153
Sweep114954652020-12-21 7:50:471314 days ago1608537047IN
0x438D8DD0...8911578fd
0 ETH0.0017095530
Transfer114954392020-12-21 7:45:101314 days ago1608536710IN
0x438D8DD0...8911578fd
0.12594407 ETH0.000063153
Sweep114694072020-12-17 8:00:091318 days ago1608192009IN
0x438D8DD0...8911578fd
0 ETH0.00820584144
Transfer114693872020-12-17 7:55:441318 days ago1608191744IN
0x438D8DD0...8911578fd
0.1220825 ETH0.000063153
Sweep114435242020-12-13 8:23:071322 days ago1607847787IN
0x438D8DD0...8911578fd
0 ETH0.0020514636
Transfer114435062020-12-13 8:18:471322 days ago1607847527IN
0x438D8DD0...8911578fd
0.10769267 ETH0.000063153
Sweep114178362020-12-09 9:27:101326 days ago1607506030IN
0x438D8DD0...8911578fd
0 ETH0.0035449262.208
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
117171652021-01-24 8:10:351280 days ago1611475835
0x438D8DD0...8911578fd
0.10337703 ETH
116911142021-01-20 8:12:361284 days ago1611130356
0x438D8DD0...8911578fd
0.10851272 ETH
116653512021-01-16 8:58:531288 days ago1610787533
0x438D8DD0...8911578fd
0.11167693 ETH
116390792021-01-12 8:33:201292 days ago1610440400
0x438D8DD0...8911578fd
0.13201979 ETH
116133762021-01-08 9:56:161295 days ago1610099776
0x438D8DD0...8911578fd
0.10383183 ETH
115935512021-01-05 8:53:481299 days ago1609836828
0x438D8DD0...8911578fd
0.12170464 ETH
115737662021-01-02 8:00:141302 days ago1609574414
0x438D8DD0...8911578fd
0.12274708 ETH
115477172020-12-29 8:03:411306 days ago1609229021
0x438D8DD0...8911578fd
0.12724923 ETH
115217912020-12-25 8:52:511310 days ago1608886371
0x438D8DD0...8911578fd
0.12636521 ETH
114954652020-12-21 7:50:471314 days ago1608537047
0x438D8DD0...8911578fd
0.12594407 ETH
114694072020-12-17 8:00:091318 days ago1608192009
0x438D8DD0...8911578fd
0.12208251 ETH
114435242020-12-13 8:23:071322 days ago1607847787
0x438D8DD0...8911578fd
0.10769267 ETH
114178362020-12-09 9:27:101326 days ago1607506030
0x438D8DD0...8911578fd
0.11021523 ETH
113913532020-12-05 7:44:141330 days ago1607154254
0x438D8DD0...8911578fd
0.11044019 ETH
113654182020-12-01 8:00:221334 days ago1606809622
0x438D8DD0...8911578fd
0.11144791 ETH
113393052020-11-27 7:50:291338 days ago1606463429
0x438D8DD0...8911578fd
0.13155336 ETH
113132672020-11-23 7:58:331342 days ago1606118313
0x438D8DD0...8911578fd
0.12878605 ETH
112890532020-11-19 14:42:211345 days ago1605796941
0x438D8DD0...8911578fd
0.09637924 ETH
112679522020-11-16 8:55:481349 days ago1605516948
0x438D8DD0...8911578fd
0.11522879 ETH
112418622020-11-12 8:54:381353 days ago1605171278
0x438D8DD0...8911578fd
0.12025593 ETH
112157542020-11-08 8:44:331357 days ago1604825073
0x438D8DD0...8911578fd
0.11888431 ETH
111898602020-11-04 9:25:011361 days ago1604481901
0x438D8DD0...8911578fd
0.10995682 ETH
111636042020-10-31 8:44:271365 days ago1604133867
0x438D8DD0...8911578fd
0.1235122 ETH
111376352020-10-27 8:58:391369 days ago1603789119
0x438D8DD0...8911578fd
0.11578069 ETH
111114962020-10-23 8:39:011373 days ago1603442341
0x438D8DD0...8911578fd
0.12667477 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.