ETH Price: $3,322.81 (-4.90%)
Gas: 4.12 Gwei

Contract

0x044d1965f1D77F4BBa01Da4Bb32b5c0ae8b8f18b
 

Overview

ETH Balance

0.013027570079199186 ETH

Eth Value

$43.29 (@ $3,322.81/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer99284132020-04-23 11:10:201708 days ago1587640220IN
0x044d1965...ae8b8f18b
0.01302756 ETH0.000021051
Sweep98831512020-04-16 11:10:321715 days ago1587035432IN
0x044d1965...ae8b8f18b
0 ETH0.0012536722
Transfer98831292020-04-16 11:04:431715 days ago1587035083IN
0x044d1965...ae8b8f18b
0.03642471 ETH0.000021051
Transfer98376312020-04-09 11:03:031722 days ago1586430183IN
0x044d1965...ae8b8f18b
0.03677669 ETH0.000021051
Sweep97922122020-04-02 11:03:431729 days ago1585825423IN
0x044d1965...ae8b8f18b
0 ETH0.0012536722
Transfer97921892020-04-02 10:58:351729 days ago1585825115IN
0x044d1965...ae8b8f18b
0.03742391 ETH0.000021051
Transfer97465552020-03-26 10:57:021736 days ago1585220222IN
0x044d1965...ae8b8f18b
0.0375588 ETH0.000021051
Sweep97017022020-03-19 10:58:521743 days ago1584615532IN
0x044d1965...ae8b8f18b
0 ETH0.0012536722
Transfer97016792020-03-19 10:54:261743 days ago1584615266IN
0x044d1965...ae8b8f18b
0.0405526 ETH0.000021051
Transfer96562772020-03-12 10:50:571750 days ago1584010257IN
0x044d1965...ae8b8f18b
0.03570947 ETH0.000021051
Sweep96107672020-03-05 10:47:401757 days ago1583405260IN
0x044d1965...ae8b8f18b
0 ETH0.0012536722
Transfer96107442020-03-05 10:42:521757 days ago1583404972IN
0x044d1965...ae8b8f18b
0.03622751 ETH0.000021051
Transfer95652112020-02-27 10:37:031764 days ago1582799823IN
0x044d1965...ae8b8f18b
0.03667189 ETH0.000021051
Sweep95196422020-02-20 10:40:001771 days ago1582195200IN
0x044d1965...ae8b8f18b
0 ETH0.0012536722
Transfer95196192020-02-20 10:36:261771 days ago1582194986IN
0x044d1965...ae8b8f18b
0.0369575 ETH0.000021051
Transfer94741732020-02-13 10:38:041778 days ago1581590284IN
0x044d1965...ae8b8f18b
0.03919298 ETH0.000021051
Sweep94285742020-02-06 10:37:001785 days ago1580985420IN
0x044d1965...ae8b8f18b
0 ETH0.0012536722
Transfer94285602020-02-06 10:33:561785 days ago1580985236IN
0x044d1965...ae8b8f18b
0.03980992 ETH0.000021051
Transfer93830002020-01-30 10:27:311792 days ago1580380051IN
0x044d1965...ae8b8f18b
0.03942283 ETH0.000021051
Sweep93373542020-01-23 10:22:291799 days ago1579774949IN
0x044d1965...ae8b8f18b
0 ETH0.0012536722
Transfer93373352020-01-23 10:17:551799 days ago1579774675IN
0x044d1965...ae8b8f18b
0.03943592 ETH0.000021051
Transfer92916082020-01-16 10:17:151806 days ago1579169835IN
0x044d1965...ae8b8f18b
0.04047299 ETH0.000021051
Sweep92458792020-01-09 10:18:331813 days ago1578565113IN
0x044d1965...ae8b8f18b
0 ETH0.0012536722
Transfer92458512020-01-09 10:13:411813 days ago1578564821IN
0x044d1965...ae8b8f18b
0.04128342 ETH0.000021051
Transfer92003642020-01-02 10:10:021820 days ago1577959802IN
0x044d1965...ae8b8f18b
0.03433629 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
98831512020-04-16 11:10:321715 days ago1587035432
0x044d1965...ae8b8f18b
0.07320141 ETH
97922122020-04-02 11:03:431729 days ago1585825423
0x044d1965...ae8b8f18b
0.07498272 ETH
97017022020-03-19 10:58:521743 days ago1584615532
0x044d1965...ae8b8f18b
0.07626208 ETH
96107672020-03-05 10:47:401757 days ago1583405260
0x044d1965...ae8b8f18b
0.0728994 ETH
95196422020-02-20 10:40:001771 days ago1582195200
0x044d1965...ae8b8f18b
0.0761505 ETH
94285742020-02-06 10:37:001785 days ago1580985420
0x044d1965...ae8b8f18b
0.07923275 ETH
93373542020-01-23 10:22:291799 days ago1579774949
0x044d1965...ae8b8f18b
0.07990892 ETH
92458792020-01-09 10:18:331813 days ago1578565113
0x044d1965...ae8b8f18b
0.07561972 ETH
91652602019-12-26 10:14:011827 days ago1577355241
0x044d1965...ae8b8f18b
0.06710148 ETH
90937952019-12-12 10:00:311841 days ago1576144831
0x044d1965...ae8b8f18b
0.07857464 ETH
90148472019-11-28 9:54:191855 days ago1574934859
0x044d1965...ae8b8f18b
0.05002536 ETH
89757842019-11-21 18:06:181862 days ago1574359578
0x044d1965...ae8b8f18b
0.05000261 ETH
89354972019-11-15 0:36:521868 days ago1573778212
0x044d1965...ae8b8f18b
0.05001653 ETH
88935442019-11-08 2:07:081875 days ago1573178828
0x044d1965...ae8b8f18b
0.0500334 ETH
88517222019-11-01 8:50:561882 days ago1572598256
0x044d1965...ae8b8f18b
0.05002722 ETH
88095422019-10-25 13:54:231889 days ago1572011663
0x044d1965...ae8b8f18b
0.0500204 ETH
87667302019-10-18 19:30:171896 days ago1571427017
0x044d1965...ae8b8f18b
0.07945465 ETH
86775242019-10-04 19:25:321910 days ago1570217132
0x044d1965...ae8b8f18b
0.08133478 ETH
85907962019-09-21 5:47:221923 days ago1569044842
0x044d1965...ae8b8f18b
0.05002606 ETH
85509292019-09-15 0:36:131929 days ago1568507773
0x044d1965...ae8b8f18b
0.05000087 ETH
85119062019-09-08 22:22:121936 days ago1567981332
0x044d1965...ae8b8f18b
0.09122127 ETH
84269992019-08-26 16:45:241949 days ago1566837924
0x044d1965...ae8b8f18b
0.05002388 ETH
83878892019-08-20 15:01:041955 days ago1566313264
0x044d1965...ae8b8f18b
0.09270737 ETH
82977332019-08-06 14:53:291969 days ago1565103209
0x044d1965...ae8b8f18b
0.0500256 ETH
82584202019-07-31 12:33:091975 days ago1564576389
0x044d1965...ae8b8f18b
0.07907321 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.