ETH Price: $2,693.63 (-4.02%)

Contract

0x4c1A15FB9c801b91D20e482a6a9517f5f6DB177F
 

Overview

ETH Balance

0.009834046577245333 ETH

Eth Value

$26.49 (@ $2,693.63/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer82002532019-07-22 11:48:372043 days ago1563796117IN
0x4c1A15FB...5f6DB177F
0.00983404 ETH0.00012636
Sweep70292382019-01-08 3:50:442239 days ago1546919444IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer70292232019-01-08 3:47:412239 days ago1546919261IN
0x4c1A15FB...5f6DB177F
0.10418911 ETH0.000107365.1
Sweep70066542019-01-04 2:43:432243 days ago1546569823IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer70066382019-01-04 2:39:112243 days ago1546569551IN
0x4c1A15FB...5f6DB177F
0.13661383 ETH0.000107365.1
Sweep69953322019-01-02 3:22:512245 days ago1546399371IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer69953082019-01-02 3:18:012245 days ago1546399081IN
0x4c1A15FB...5f6DB177F
0.13921362 ETH0.000107365.1
Sweep69835762018-12-31 3:26:022247 days ago1546226762IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer69835592018-12-31 3:22:032247 days ago1546226523IN
0x4c1A15FB...5f6DB177F
0.13846692 ETH0.000107365.1
Sweep69717052018-12-29 3:35:312249 days ago1546054531IN
0x4c1A15FB...5f6DB177F
0 ETH0.0024996550
Transfer69716892018-12-29 3:31:422249 days ago1546054302IN
0x4c1A15FB...5f6DB177F
0.13736021 ETH0.000107365.1
Sweep69598282018-12-27 3:22:392251 days ago1545880959IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer69598142018-12-27 3:17:262251 days ago1545880646IN
0x4c1A15FB...5f6DB177F
0.13396528 ETH0.000107365.1
Sweep69480532018-12-25 3:40:102253 days ago1545709210IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer69480312018-12-25 3:34:352253 days ago1545708875IN
0x4c1A15FB...5f6DB177F
0.14531235 ETH0.000107365.1
Sweep69361942018-12-23 3:44:522255 days ago1545536692IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer69361752018-12-23 3:41:022255 days ago1545536462IN
0x4c1A15FB...5f6DB177F
0.15300078 ETH0.000107365.1
Sweep69245112018-12-21 3:56:542257 days ago1545364614IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer69244922018-12-21 3:52:062257 days ago1545364326IN
0x4c1A15FB...5f6DB177F
0.15631143 ETH0.000107365.1
Sweep69146562018-12-19 11:31:342258 days ago1545219094IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer69146392018-12-19 11:27:242258 days ago1545218844IN
0x4c1A15FB...5f6DB177F
0.15929618 ETH0.000107365.1
Sweep69011052018-12-17 3:59:442261 days ago1545019184IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer69010872018-12-17 3:54:592261 days ago1545018899IN
0x4c1A15FB...5f6DB177F
0.1613247 ETH0.000107365.1
Sweep68890472018-12-15 4:16:022263 days ago1544847362IN
0x4c1A15FB...5f6DB177F
0 ETH0.0025028550
Transfer68890292018-12-15 4:11:202263 days ago1544847080IN
0x4c1A15FB...5f6DB177F
0.15975414 ETH0.000107365.1
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
70292382019-01-08 3:50:442239 days ago1546919444
0x4c1A15FB...5f6DB177F
0.10418912 ETH
70066542019-01-04 2:43:432243 days ago1546569823
0x4c1A15FB...5f6DB177F
0.13661384 ETH
69953322019-01-02 3:22:512245 days ago1546399371
0x4c1A15FB...5f6DB177F
0.13921363 ETH
69835762018-12-31 3:26:022247 days ago1546226762
0x4c1A15FB...5f6DB177F
0.13846693 ETH
69717052018-12-29 3:35:312249 days ago1546054531
0x4c1A15FB...5f6DB177F
0.13736021 ETH
69598282018-12-27 3:22:392251 days ago1545880959
0x4c1A15FB...5f6DB177F
0.13396529 ETH
69480532018-12-25 3:40:102253 days ago1545709210
0x4c1A15FB...5f6DB177F
0.14531235 ETH
69361942018-12-23 3:44:522255 days ago1545536692
0x4c1A15FB...5f6DB177F
0.15300078 ETH
69245112018-12-21 3:56:542257 days ago1545364614
0x4c1A15FB...5f6DB177F
0.15631143 ETH
69146562018-12-19 11:31:342258 days ago1545219094
0x4c1A15FB...5f6DB177F
0.15929618 ETH
69011052018-12-17 3:59:442261 days ago1545019184
0x4c1A15FB...5f6DB177F
0.16132471 ETH
68890472018-12-15 4:16:022263 days ago1544847362
0x4c1A15FB...5f6DB177F
0.15975415 ETH
68769312018-12-13 4:17:132265 days ago1544674633
0x4c1A15FB...5f6DB177F
0.15389758 ETH
68648462018-12-11 4:16:472267 days ago1544501807
0x4c1A15FB...5f6DB177F
0.15319063 ETH
68525422018-12-09 4:02:122269 days ago1544328132
0x4c1A15FB...5f6DB177F
0.14844083 ETH
68408122018-12-07 5:18:162271 days ago1544159896
0x4c1A15FB...5f6DB177F
0.12702525 ETH
68295372018-12-05 8:34:412272 days ago1543998881
0x4c1A15FB...5f6DB177F
0.12749143 ETH
68164312018-12-03 4:19:432275 days ago1543810783
0x4c1A15FB...5f6DB177F
0.12725515 ETH
68046102018-12-01 5:18:382277 days ago1543641518
0x4c1A15FB...5f6DB177F
0.13400805 ETH
67938322018-11-29 10:44:462278 days ago1543488286
0x4c1A15FB...5f6DB177F
0.12328028 ETH
67800672018-11-27 3:53:052281 days ago1543290785
0x4c1A15FB...5f6DB177F
0.14082005 ETH
67678832018-11-25 4:00:542283 days ago1543118454
0x4c1A15FB...5f6DB177F
0.14988799 ETH
67555552018-11-23 3:46:032285 days ago1542944763
0x4c1A15FB...5f6DB177F
0.13179208 ETH
67434052018-11-21 3:52:032287 days ago1542772323
0x4c1A15FB...5f6DB177F
0.11666018 ETH
67314522018-11-19 4:16:522289 days ago1542601012
0x4c1A15FB...5f6DB177F
0.11633008 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.