ETH Price: $2,165.48 (+0.22%)

Contract

0x9CD4e48a5bc2573aC63AfF1bB5b2936F73d858a7
 

Overview

ETH Balance

0.005110481114412474 ETH

Eth Value

$11.07 (@ $2,165.48/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer157311132022-10-12 9:23:471260 days ago1665566627IN
0x9CD4e48a...F73d858a7
0.00511047 ETH0.0003026114.37530004
Sweep80802102019-07-03 19:06:292457 days ago1562180789IN
0x9CD4e48a...F73d858a7
0 ETH0.0010998422
Transfer80801912019-07-03 19:01:172457 days ago1562180477IN
0x9CD4e48a...F73d858a7
0.05002365 ETH0.000021051
Sweep80639812019-07-01 6:15:372459 days ago1561961737IN
0x9CD4e48a...F73d858a7
0 ETH0.0014997930
Transfer80639662019-07-01 6:12:452459 days ago1561961565IN
0x9CD4e48a...F73d858a7
0.0501428 ETH0.000021051
Sweep80547682019-06-29 19:52:552461 days ago1561837975IN
0x9CD4e48a...F73d858a7
0 ETH0.0010998422
Transfer80547502019-06-29 19:48:422461 days ago1561837722IN
0x9CD4e48a...F73d858a7
0.0531882 ETH0.000021051
Sweep80483442019-06-28 19:52:182462 days ago1561751538IN
0x9CD4e48a...F73d858a7
0 ETH0.0014997930
Transfer80483172019-06-28 19:46:512462 days ago1561751211IN
0x9CD4e48a...F73d858a7
0.0552089 ETH0.000021051
Sweep80418852019-06-27 19:47:432463 days ago1561664863IN
0x9CD4e48a...F73d858a7
0 ETH0.0010998422
Transfer80418672019-06-27 19:42:272463 days ago1561664547IN
0x9CD4e48a...F73d858a7
0.05011956 ETH0.000021051
Sweep80240412019-06-25 0:50:322465 days ago1561423832IN
0x9CD4e48a...F73d858a7
0 ETH0.0010998422
Transfer80240172019-06-25 0:44:282465 days ago1561423468IN
0x9CD4e48a...F73d858a7
0.05490538 ETH0.000021051
Sweep80175882019-06-24 0:46:062466 days ago1561337166IN
0x9CD4e48a...F73d858a7
0 ETH0.0014997930
Transfer80175712019-06-24 0:41:192466 days ago1561336879IN
0x9CD4e48a...F73d858a7
0.05270041 ETH0.000021051
Sweep80111852019-06-23 0:39:382467 days ago1561250378IN
0x9CD4e48a...F73d858a7
0 ETH0.0014997930
Transfer80111672019-06-23 0:36:122467 days ago1561250172IN
0x9CD4e48a...F73d858a7
0.05018682 ETH0.000021051
Sweep80032622019-06-21 19:14:532469 days ago1561144493IN
0x9CD4e48a...F73d858a7
0 ETH0.0014997930
Transfer80032422019-06-21 19:10:082469 days ago1561144208IN
0x9CD4e48a...F73d858a7
0.05773774 ETH0.000021051
Sweep79968822019-06-20 19:13:032470 days ago1561057983IN
0x9CD4e48a...F73d858a7
0 ETH0.0014997930
Transfer79968592019-06-20 19:08:392470 days ago1561057719IN
0x9CD4e48a...F73d858a7
0.05842152 ETH0.000021051
Sweep79905192019-06-19 19:10:372471 days ago1560971437IN
0x9CD4e48a...F73d858a7
0 ETH0.0024996550
Transfer79904962019-06-19 19:06:092471 days ago1560971169IN
0x9CD4e48a...F73d858a7
0.05944625 ETH0.000021051
Sweep79840822019-06-18 19:03:182472 days ago1560884598IN
0x9CD4e48a...F73d858a7
0 ETH0.0024996550
Transfer79840692019-06-18 19:00:552472 days ago1560884455IN
0x9CD4e48a...F73d858a7
0.06358371 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-80802102019-07-03 19:06:292457 days ago1562180789
0x9CD4e48a...F73d858a7
0.05002366 ETH
-80639812019-07-01 6:15:372459 days ago1561961737
0x9CD4e48a...F73d858a7
0.0501428 ETH
-80547682019-06-29 19:52:552461 days ago1561837975
0x9CD4e48a...F73d858a7
0.05318821 ETH
-80483442019-06-28 19:52:182462 days ago1561751538
0x9CD4e48a...F73d858a7
0.0552089 ETH
-80418852019-06-27 19:47:432463 days ago1561664863
0x9CD4e48a...F73d858a7
0.05011956 ETH
-80240412019-06-25 0:50:322465 days ago1561423832
0x9CD4e48a...F73d858a7
0.05490539 ETH
-80175882019-06-24 0:46:062466 days ago1561337166
0x9CD4e48a...F73d858a7
0.05270042 ETH
-80111852019-06-23 0:39:382467 days ago1561250378
0x9CD4e48a...F73d858a7
0.05018682 ETH
-80032622019-06-21 19:14:532469 days ago1561144493
0x9CD4e48a...F73d858a7
0.05773775 ETH
-79968822019-06-20 19:13:032470 days ago1561057983
0x9CD4e48a...F73d858a7
0.05842153 ETH
-79905192019-06-19 19:10:372471 days ago1560971437
0x9CD4e48a...F73d858a7
0.05944625 ETH
-79840822019-06-18 19:03:182472 days ago1560884598
0x9CD4e48a...F73d858a7
0.06358371 ETH
-79776962019-06-17 19:09:372473 days ago1560798577
0x9CD4e48a...F73d858a7
0.071271 ETH
-79712762019-06-16 18:58:112474 days ago1560711491
0x9CD4e48a...F73d858a7
0.05003785 ETH
-79647422019-06-15 18:30:222475 days ago1560623422
0x9CD4e48a...F73d858a7
0.05006681 ETH
-79575732019-06-14 15:28:272476 days ago1560526107
0x9CD4e48a...F73d858a7
0.05008376 ETH
-79505832019-06-13 13:20:532477 days ago1560432053
0x9CD4e48a...F73d858a7
0.05961626 ETH
-79441842019-06-12 13:21:192478 days ago1560345679
0x9CD4e48a...F73d858a7
0.068545 ETH
-79377502019-06-11 13:16:242479 days ago1560258984
0x9CD4e48a...F73d858a7
0.06744465 ETH
-79314272019-06-10 13:13:532480 days ago1560172433
0x9CD4e48a...F73d858a7
0.06968491 ETH
-79249412019-06-09 13:14:212481 days ago1560086061
0x9CD4e48a...F73d858a7
0.05781596 ETH
-79185552019-06-08 13:11:232482 days ago1559999483
0x9CD4e48a...F73d858a7
0.06741522 ETH
-79121982019-06-07 13:08:222483 days ago1559912902
0x9CD4e48a...F73d858a7
0.0540778 ETH
-79058302019-06-06 13:04:252484 days ago1559826265
0x9CD4e48a...F73d858a7
0.05663922 ETH
-78993752019-06-05 13:01:112485 days ago1559739671
0x9CD4e48a...F73d858a7
0.05509813 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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

Contract Source Code (Solidity)

/**
 *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

API
[{"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"}]

0x6060604052341561000c57fe5b60405160208061026c83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6102218061004b6000396000f300606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029000000000000000000000000a3c1e324ca1ce40db73ed6026c4a177f099b5770

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.