ETH Price: $2,287.93 (+1.01%)

Contract

0xcaDd813875FE6774cD3A1A8412f6C3da86019d50
 

Overview

ETH Balance

0.019555746137388472 ETH

Eth Value

$44.74 (@ $2,287.93/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer155391982022-09-15 12:48:59723 days ago1663246139IN
0xcaDd8138...a86019d50
0.01955574 ETH0.0002160610.26375393
Sweep155199702022-09-12 8:43:55726 days ago1662972235IN
0xcaDd8138...a86019d50
0 ETH0.0016971930
Transfer155199562022-09-12 8:39:47726 days ago1662971987IN
0xcaDd8138...a86019d50
0.05174211 ETH0.0003002514.26329573
Sweep154692842022-09-04 3:23:11734 days ago1662261791IN
0xcaDd8138...a86019d50
0 ETH0.0016971930
Transfer154692642022-09-04 3:17:12734 days ago1662261432IN
0xcaDd8138...a86019d50
0.05189477 ETH0.000116835.55010684
Sweep154012202022-08-24 6:07:01745 days ago1661321221IN
0xcaDd8138...a86019d50
0 ETH0.0016971930
Transfer154012032022-08-24 6:01:29745 days ago1661320889IN
0xcaDd8138...a86019d50
0.05187927 ETH0.00014416.84552252
Sweep153513672022-08-16 8:42:49753 days ago1660639369IN
0xcaDd8138...a86019d50
0 ETH0.0016971930
Transfer153513472022-08-16 8:38:26753 days ago1660639106IN
0xcaDd8138...a86019d50
0.05187054 ETH0.000190419.04563098
Sweep152999032022-08-08 6:09:40761 days ago1659938980IN
0xcaDd8138...a86019d50
0 ETH0.0016971930
Transfer152998872022-08-08 6:06:53761 days ago1659938813IN
0xcaDd8138...a86019d50
0.05178233 ETH0.0002271110.78869932
Sweep152388582022-07-29 17:58:15770 days ago1659117495IN
0xcaDd8138...a86019d50
0 ETH0.0016971930
Transfer152388332022-07-29 17:52:58770 days ago1659117178IN
0xcaDd8138...a86019d50
0.0516073 ETH0.0005018123.83792695
Sweep151877622022-07-21 19:12:07778 days ago1658430727IN
0xcaDd8138...a86019d50
0 ETH0.0016971930
Transfer151877402022-07-21 19:08:30778 days ago1658430510IN
0xcaDd8138...a86019d50
0.0516681 ETH0.0003471316.49027622
Sweep151383402022-07-14 3:40:47786 days ago1657770047IN
0xcaDd8138...a86019d50
0 ETH0.0016971930
Transfer151383212022-07-14 3:36:37786 days ago1657769797IN
0xcaDd8138...a86019d50
0.0515555 ETH0.0003969618.85732565
Sweep150870302022-07-06 5:21:27794 days ago1657084887IN
0xcaDd8138...a86019d50
0 ETH0.0016971930
Transfer150870122022-07-06 5:15:25794 days ago1657084525IN
0xcaDd8138...a86019d50
0.05159717 ETH0.000414219.67634832
Sweep150265602022-06-26 1:33:39804 days ago1656207219IN
0xcaDd8138...a86019d50
0 ETH0.0016971930
Transfer150265402022-06-26 1:29:01804 days ago1656206941IN
0xcaDd8138...a86019d50
0.05148139 ETH0.0005929128.16570589
Sweep149762032022-06-17 0:18:55813 days ago1655425135IN
0xcaDd8138...a86019d50
0 ETH0.0029436652.03309627
Transfer149761902022-06-17 0:16:02813 days ago1655424962IN
0xcaDd8138...a86019d50
0.05129708 ETH0.0008183338.87386475
Sweep149310492022-06-09 6:09:43821 days ago1654754983IN
0xcaDd8138...a86019d50
0 ETH0.0040153270.97595213
Transfer149310272022-06-09 6:03:13821 days ago1654754593IN
0xcaDd8138...a86019d50
0.0511114 ETH0.0009038242.93512285
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
155199702022-09-12 8:43:55726 days ago1662972235
0xcaDd8138...a86019d50
0.05174211 ETH
154692842022-09-04 3:23:11734 days ago1662261791
0xcaDd8138...a86019d50
0.05189478 ETH
154012202022-08-24 6:07:01745 days ago1661321221
0xcaDd8138...a86019d50
0.05187927 ETH
153513672022-08-16 8:42:49753 days ago1660639369
0xcaDd8138...a86019d50
0.05187055 ETH
152999032022-08-08 6:09:40761 days ago1659938980
0xcaDd8138...a86019d50
0.05178234 ETH
152388582022-07-29 17:58:15770 days ago1659117495
0xcaDd8138...a86019d50
0.0516073 ETH
151877622022-07-21 19:12:07778 days ago1658430727
0xcaDd8138...a86019d50
0.0516681 ETH
151383402022-07-14 3:40:47786 days ago1657770047
0xcaDd8138...a86019d50
0.0515555 ETH
150870302022-07-06 5:21:27794 days ago1657084887
0xcaDd8138...a86019d50
0.05159718 ETH
150265602022-06-26 1:33:39804 days ago1656207219
0xcaDd8138...a86019d50
0.05148139 ETH
149762032022-06-17 0:18:55813 days ago1655425135
0xcaDd8138...a86019d50
0.05129708 ETH
149310492022-06-09 6:09:43821 days ago1654754983
0xcaDd8138...a86019d50
0.05111141 ETH
148721312022-05-30 10:49:15831 days ago1653907755
0xcaDd8138...a86019d50
0.05134835 ETH
148122962022-05-20 17:04:11841 days ago1653066251
0xcaDd8138...a86019d50
0.05038918 ETH
147586672022-05-12 3:02:59849 days ago1652324579
0xcaDd8138...a86019d50
0.0538302 ETH
147033392022-05-03 7:33:55858 days ago1651563235
0xcaDd8138...a86019d50
0.0509727 ETH
146517062022-04-25 4:30:27866 days ago1650861027
0xcaDd8138...a86019d50
0.05241241 ETH
145934642022-04-16 1:36:11875 days ago1650072971
0xcaDd8138...a86019d50
0.05246508 ETH
145358942022-04-07 1:42:27884 days ago1649295747
0xcaDd8138...a86019d50
0.05329877 ETH
144784552022-03-29 2:34:58893 days ago1648521298
0xcaDd8138...a86019d50
0.05625762 ETH
144210422022-03-20 4:12:53902 days ago1647749573
0xcaDd8138...a86019d50
0.09964197 ETH
142896712022-02-27 17:52:00922 days ago1645984320
0xcaDd8138...a86019d50
0.09914335 ETH
141927272022-02-12 17:48:03937 days ago1644688083
0xcaDd8138...a86019d50
0.09921776 ETH
140972282022-01-28 23:46:27952 days ago1643413587
0xcaDd8138...a86019d50
0.09768377 ETH
140011972022-01-14 3:27:24967 days ago1642130844
0xcaDd8138...a86019d50
0.09785249 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.