Contract: Vault
Etherscan label: reserve-protocol
Tag: Reserve: Vault
Malicious: no
Decompiled opcodes:
PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x0010 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH1 0x00 PUSH2 0x0021 PUSH2 0x00ca PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x00 DUP1 SLOAD PUSH1 0x01 PUSH1 0x01 PUSH1 0xa0 SHL SUB NOT AND PUSH1 0x01 PUSH1 0x01 PUSH1 0xa0 SHL SUB DUP4 AND SWAP1 DUP2 OR DUP3 SSTORE PUSH1 0x40 MLOAD SWAP3 SWAP4 POP SWAP2 PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 SWAP1 DUP3 SWAP1 LOG3 POP PUSH2 0x0079 PUSH2 0x00ca PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x02 DUP1 SLOAD PUSH1 0x01 PUSH1 0x01 PUSH1 0xa0 SHL SUB NOT AND PUSH1 0x01 PUSH1 0x01 PUSH1 0xa0 SHL SUB SWAP3 DUP4 AND OR SWAP1 DUP2 SWAP1 SSTORE PUSH1 0x40 MLOAD SWAP2 AND SWAP1 PUSH1 0x00 SWAP1 PUSH32 0x9cb45c728de594dab506a1f1a8554e24c8eeaf983618d5ec5dd7bc6f3c49feee SWAP1 DUP3 SWAP1 LOG3 PUSH2 0x00ce JUMP JUMPDEST CALLER SWAP1 JUMP JUMPDEST PUSH2 0x0cc6 DUP1 PUSH2 0x00dd PUSH1 0x00 CODECOPY PUSH1 0x00 RETURN UNKNOWN_0xfe PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x0010 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH1 0x04 CALLDATASIZE LT PUSH2 0x0088 JUMPI PUSH1 0x00 CALLDATALOAD PUSH1 0xe0 SHR DUP1 PUSH4 0x79ba5097 GT PUSH2 0x005b JUMPI DUP1 PUSH4 0x79ba5097 EQ PUSH2 0x016b JUMPI DUP1 PUSH4 0x8da5cb5b EQ PUSH2 0x0173 JUMPI DUP1 PUSH4 0xa3fbbaae EQ PUSH2 0x017b JUMPI DUP1 PUSH4 0xc4e2c1e6 EQ PUSH2 0x01ae JUMPI PUSH2 0x0088 JUMP JUMPDEST DUP1 PUSH4 0x1627540c EQ PUSH2 0x008d JUMPI DUP1 PUSH4 0x481c6a75 EQ PUSH2 0x00c2 JUMPI DUP1 PUSH4 0x4fdb7f44 EQ PUSH2 0x00f3 JUMPI DUP1 PUSH4 0x53a47bb7 EQ PUSH2 0x0163 JUMPI JUMPDEST PUSH1 0x00 DUP1 REVERT JUMPDEST PUSH2 0x00c0 PUSH1 0x04 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x00a3 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND PUSH2 0x01f1 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x00ca PUSH2 0x0308 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff SWAP1 SWAP3 AND DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST PUSH2 0x00c0 PUSH1 0x04 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x0109 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST DUP2 ADD SWAP1 PUSH1 0x20 DUP2 ADD DUP2 CALLDATALOAD PUSH5 0x0100000000 DUP2 GT ISZERO PUSH2 0x0124 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST DUP3 ADD DUP4 PUSH1 0x20 DUP3 ADD GT ISZERO PUSH2 0x0136 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST DUP1 CALLDATALOAD SWAP1 PUSH1 0x20 ADD SWAP2 DUP5 PUSH1 0x01 DUP4 MUL DUP5 ADD GT PUSH5 0x0100000000 DUP4 GT OR ISZERO PUSH2 0x0158 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP SWAP1 SWAP3 POP SWAP1 POP PUSH2 0x0324 JUMP JUMPDEST PUSH2 0x00ca PUSH2 0x04e3 JUMP JUMPDEST PUSH2 0x00c0 PUSH2 0x04ff JUMP JUMPDEST PUSH2 0x00ca PUSH2 0x0623 JUMP JUMPDEST PUSH2 0x00c0 PUSH1 0x04 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x0191 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND PUSH2 0x063f JUMP JUMPDEST PUSH2 0x00c0 PUSH1 0x04 DUP1 CALLDATASIZE SUB PUSH1 0x60 DUP2 LT ISZERO PUSH2 0x01c4 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP2 CALLDATALOAD DUP2 AND SWAP2 PUSH1 0x20 DUP2 ADD CALLDATALOAD SWAP2 PUSH1 0x40 SWAP1 SWAP2 ADD CALLDATALOAD AND PUSH2 0x0757 JUMP JUMPDEST PUSH2 0x01f9 PUSH2 0x0880 JUMP JUMPDEST PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP2 AND PUSH2 0x027b JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x04 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x6e6577206f776e65722069732030206164647265737300000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x00 DUP1 SLOAD PUSH1 0x40 MLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP1 DUP6 AND SWAP4 SWAP3 AND SWAP2 PUSH32 0xb59bab42c554cfd49f4f001c983b6ed93ede25748b10114b7d1cb1b3c97df7af SWAP2 LOG3 PUSH1 0x01 DUP1 SLOAD PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 AND PUSH20 0xffffffffffffffffffffffffffffffffffffffff SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x02 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND DUP2 JUMP JUMPDEST PUSH2 0x032c PUSH2 0x0880 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x35 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x0c3c PUSH1 0x35 SWAP2 CODECOPY SWAP1 POP DUP1 PUSH1 0x40 MLOAD PUSH1 0x20 ADD DUP1 DUP3 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 JUMPDEST PUSH1 0x20 DUP4 LT PUSH2 0x039a JUMPI DUP1 MLOAD DUP3 MSTORE PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 SWAP1 SWAP3 ADD SWAP2 PUSH1 0x20 SWAP2 DUP3 ADD SWAP2 ADD PUSH2 0x035d JUMP JUMPDEST PUSH1 0x01 DUP4 PUSH1 0x20 SUB PUSH2 0x0100 EXP SUB DUP1 NOT DUP3 MLOAD AND DUP2 DUP5 MLOAD AND DUP1 DUP3 OR DUP6 MSTORE POP POP POP POP POP POP SWAP1 POP ADD SWAP2 POP POP PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SHA3 DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD DUP1 DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY DUP1 DUP4 ADD SWAP3 POP POP POP SWAP3 POP POP POP PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SHA3 EQ PUSH2 0x0471 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x04 DUP3 ADD MSTORE PUSH1 0x15 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x6465636c61726174696f6e20696e636f72726563740000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x00 DUP1 SLOAD PUSH1 0x40 MLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff SWAP1 SWAP2 AND SWAP1 PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 SWAP1 DUP4 SWAP1 LOG3 POP POP PUSH1 0x00 DUP1 SLOAD PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 AND SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x01 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND SWAP1 JUMP JUMPDEST PUSH2 0x0507 PUSH2 0x0925 JUMP JUMPDEST PUSH1 0x01 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x0590 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x04 DUP3 ADD MSTORE PUSH1 0x0c PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x756e617574686f72697a65640000000000000000000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x01 SLOAD PUSH1 0x00 DUP1 SLOAD PUSH1 0x40 MLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff SWAP4 DUP5 AND SWAP4 SWAP1 SWAP2 AND SWAP2 PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 SWAP2 LOG3 PUSH1 0x01 SLOAD PUSH1 0x00 DUP1 SLOAD PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 AND PUSH20 0xffffffffffffffffffffffffffffffffffffffff SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x00 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND SWAP1 JUMP JUMPDEST PUSH2 0x0647 PUSH2 0x0880 JUMP JUMPDEST PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP2 AND PUSH2 0x06c9 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x04 DUP3 ADD MSTORE PUSH1 0x13 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x63616e6e6f742062652030206164647265737300000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x02 SLOAD PUSH1 0x40 MLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP1 DUP5 AND SWAP3 AND SWAP1 PUSH32 0x9cb45c728de594dab506a1f1a8554e24c8eeaf983618d5ec5dd7bc6f3c49feee SWAP1 PUSH1 0x00 SWAP1 LOG3 PUSH1 0x02 DUP1 SLOAD PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 AND PUSH20 0xffffffffffffffffffffffffffffffffffffffff SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x02 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND PUSH2 0x0778 PUSH2 0x0925 JUMP JUMPDEST PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND EQ PUSH2 0x07fa JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x04 DUP3 ADD MSTORE PUSH1 0x0f PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x6d757374206265206d616e616765720000000000000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH2 0x0821 PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP5 AND DUP3 DUP5 PUSH4 0xffffffff PUSH2 0x0929 AND JUMP JUMPDEST DUP1 PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND DUP3 DUP5 PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND PUSH31 0x1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP POP JUMP JUMPDEST PUSH1 0x00 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND PUSH2 0x08a1 PUSH2 0x0925 JUMP JUMPDEST PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND EQ PUSH2 0x0923 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x04 DUP3 ADD MSTORE PUSH1 0x13 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x63616c6c6572206973206e6f74206f776e657200000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST JUMP JUMPDEST CALLER SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP5 AND PUSH1 0x24 DUP3 ADD MSTORE PUSH1 0x44 DUP1 DUP3 ADD DUP5 SWAP1 MSTORE DUP3 MLOAD DUP1 DUP4 SUB SWAP1 SWAP2 ADD DUP2 MSTORE PUSH1 0x64 SWAP1 SWAP2 ADD SWAP1 SWAP2 MSTORE PUSH1 0x20 DUP2 ADD DUP1 MLOAD PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff AND PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 OR SWAP1 MSTORE PUSH2 0x09b6 SWAP1 DUP5 SWAP1 PUSH2 0x09bb JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x09da DUP3 PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND PUSH2 0x0bff JUMP JUMPDEST PUSH2 0x0a45 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x04 DUP3 ADD MSTORE PUSH1 0x1f PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x00 PUSH1 0x60 DUP4 PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND DUP4 PUSH1 0x40 MLOAD DUP1 DUP3 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 JUMPDEST PUSH1 0x20 DUP4 LT PUSH2 0x0aae JUMPI DUP1 MLOAD DUP3 MSTORE PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 SWAP1 SWAP3 ADD SWAP2 PUSH1 0x20 SWAP2 DUP3 ADD SWAP2 ADD PUSH2 0x0a71 JUMP JUMPDEST PUSH1 0x01 DUP4 PUSH1 0x20 SUB PUSH2 0x0100 EXP SUB DUP1 NOT DUP3 MLOAD AND DUP2 DUP5 MLOAD AND DUP1 DUP3 OR DUP6 MSTORE POP POP POP POP POP POP SWAP1 POP ADD SWAP2 POP POP PUSH1 0x00 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x00 DUP7 GAS CALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x00 DUP2 EQ PUSH2 0x0b10 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1f NOT PUSH1 0x3f RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x00 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x0b15 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x0b86 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x04 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST DUP1 MLOAD ISZERO PUSH2 0x0bf9 JUMPI DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x0ba2 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP MLOAD PUSH2 0x0bf9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x04 ADD DUP1 DUP1 PUSH1 0x20 ADD DUP3 DUP2 SUB DUP3 MSTORE PUSH1 0x2a DUP2 MSTORE PUSH1 0x20 ADD DUP1 PUSH2 0x0c71 PUSH1 0x2a SWAP2 CODECOPY PUSH1 0x40 ADD SWAP2 POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x00 DUP2 EXTCODEHASH PUSH32 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 DUP2 ISZERO DUP1 ISZERO SWAP1 PUSH2 0x0c33 JUMPI POP DUP1 DUP3 EQ ISZERO JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP UNKNOWN_0xfe UNKNOWN_0x49 SHA3 PUSH9 0x65726562792072656e PUSH16 0x756e6365206f776e657273686970206f PUSH7 0x20746869732063 PUSH16 0x6e747261637420666f72657665722e53 PUSH2 0x6665 GASLIMIT MSTORE NUMBER ORIGIN ADDRESS GASPRICE SHA3 GASLIMIT MSTORE NUMBER ORIGIN ADDRESS SHA3 PUSH16 0x7065726174696f6e20646964206e6f74 SHA3 PUSH20 0x756363656564a165627a7a7230582005594c5e21 CREATE2 SWAP16 UNKNOWN_0x29 UNKNOWN_0x1e UNOFFICIAL_PUSH INVALID_0x7f 0x8cfc169365b6674d6d04038a341747e573a064ac1d0029