contract Contract {
function main() {
memory[0x40:0x60] = 0x80;
if (msg.data.length) {
var var0 = 0x0011;
var var1 = 0x001f;
func_002F();
label_001F:
var1 = 0x002f;
var var2 = 0x002a;
var2 =
func_013B();
var temp0 = msg.data.length;
memory[0x00:0x00 + temp0] = msg.data[0x00:0x00 + temp0];
var temp1;
temp1, memory[0x00:0x00] = address(var2).delegatecall.gas(msg.gas)(memory[0x00:0x00 + msg.data.length]);
var temp2 = returndata.length;
memory[0x00:0x00 + temp2] = returndata[0x00:0x00 + temp2];
if (!temp1) { revert(memory[0x00:0x00 + returndata.length]); }
else { return memory[0x00:0x00 + returndata.length]; }
} else {
var0 = 0x0011;
var1 = 0x001f;
func_002F();
goto label_001F;
}
}
function func_002F() {}
function func_013B() returns (var r0) {
var var0 = 0x00;
var var1 = 0x0145;
var1 =
func_0276();
var temp0 = var1 & (0x01 << 0xa0) - 0x01;
var1 = temp0;
var var2 = 0x5c60da1b;
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = (var2 & 0xffffffff) << 0xe0;
var var3 = temp1 + 0x04;
var var4 = 0x20;
var var5 = memory[0x40:0x60];
var var6 = var3 - var5;
var var7 = var5;
var var8 = var1;
var var9 = !address(var8).code.length;
if (var9) { revert(memory[0x00:0x00]); }
var temp2;
temp2, memory[var5:var5 + var4] = address(var8).staticcall.gas(msg.gas)(memory[var7:var7 + var6]);
var4 = !temp2;
if (!var4) {
var1 = memory[0x40:0x60];
var2 = returndata.length;
if (var2 >= 0x20) { return memory[var1:var1 + 0x20]; }
else { revert(memory[0x00:0x00]); }
} else {
var temp3 = returndata.length;
memory[0x00:0x00 + temp3] = returndata[0x00:0x00 + temp3];
revert(memory[0x00:0x00 + returndata.length]);
}
}
function func_0276() returns (var r0) { return storage[0xa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50]; }
}
label_0000:
0000 60 PUSH1 0x80
0002 60 PUSH1 0x40
0004 52 MSTORE
0005 36 CALLDATASIZE
0006 61 PUSH2 0x0013
0009 57 *JUMPI
label_000A:
000A 61 PUSH2 0x0011
000D 61 PUSH2 0x0017
0010 56 *JUMP
0011 5B JUMPDEST
0012 00 *STOP
label_0013:
0013 5B JUMPDEST
0014 61 PUSH2 0x0011
0017 5B JUMPDEST
0018 61 PUSH2 0x001f
001B 61 PUSH2 0x002f
001E 56 *JUMP
label_001F:
001F 5B JUMPDEST
0020 61 PUSH2 0x002f
0023 61 PUSH2 0x002a
0026 61 PUSH2 0x013b
0029 56 *JUMP
label_002A:
002A 5B JUMPDEST
002B 61 PUSH2 0x01ae
002E 56 *JUMP
label_002F:
002F 5B JUMPDEST
0030 56 *JUMP
0031 5B JUMPDEST
0032 3B EXTCODESIZE
0033 15 ISZERO
0034 15 ISZERO
0035 90 SWAP1
0036 56 *JUMP
0037 5B JUMPDEST
0038 60 PUSH1 0x60
003A 61 PUSH2 0x0042
003D 84 DUP5
003E 61 PUSH2 0x0031
0041 56 *JUMP
0042 5B JUMPDEST
0043 61 PUSH2 0x007d
0046 57 *JUMPI
0047 60 PUSH1 0x40
0049 51 MLOAD
004A 62 PUSH3 0x461bcd
004E 60 PUSH1 0xe5
0050 1B SHL
0051 81 DUP2
0052 52 MSTORE
0053 60 PUSH1 0x04
0055 01 ADD
0056 80 DUP1
0057 80 DUP1
0058 60 PUSH1 0x20
005A 01 ADD
005B 82 DUP3
005C 81 DUP2
005D 03 SUB
005E 82 DUP3
005F 52 MSTORE
0060 60 PUSH1 0x26
0062 81 DUP2
0063 52 MSTORE
0064 60 PUSH1 0x20
0066 01 ADD
0067 80 DUP1
0068 61 PUSH2 0x029c
006B 60 PUSH1 0x26
006D 91 SWAP2
006E 39 CODECOPY
006F 60 PUSH1 0x40
0071 01 ADD
0072 91 SWAP2
0073 50 POP
0074 50 POP
0075 60 PUSH1 0x40
0077 51 MLOAD
0078 80 DUP1
0079 91 SWAP2
007A 03 SUB
007B 90 SWAP1
007C FD *REVERT
007D 5B JUMPDEST
007E 60 PUSH1 0x00
0080 80 DUP1
0081 85 DUP6
0082 60 PUSH1 0x01
0084 60 PUSH1 0x01
0086 60 PUSH1 0xa0
0088 1B SHL
0089 03 SUB
008A 16 AND
008B 85 DUP6
008C 60 PUSH1 0x40
008E 51 MLOAD
008F 80 DUP1
0090 82 DUP3
0091 80 DUP1
0092 51 MLOAD
0093 90 SWAP1
0094 60 PUSH1 0x20
0096 01 ADD
0097 90 SWAP1
0098 80 DUP1
0099 83 DUP4
009A 83 DUP4
009B 5B JUMPDEST
009C 60 PUSH1 0x20
009E 83 DUP4
009F 10 LT
00A0 61 PUSH2 0x00ba
00A3 57 *JUMPI
00A4 80 DUP1
00A5 51 MLOAD
00A6 82 DUP3
00A7 52 MSTORE
00A8 60 PUSH1 0x1f
00AA 19 NOT
00AB 90 SWAP1
00AC 92 SWAP3
00AD 01 ADD
00AE 91 SWAP2
00AF 60 PUSH1 0x20
00B1 91 SWAP2
00B2 82 DUP3
00B3 01 ADD
00B4 91 SWAP2
00B5 01 ADD
00B6 61 PUSH2 0x009b
00B9 56 *JUMP
00BA 5B JUMPDEST
00BB 60 PUSH1 0x01
00BD 83 DUP4
00BE 60 PUSH1 0x20
00C0 03 SUB
00C1 61 PUSH2 0x0100
00C4 0A EXP
00C5 03 SUB
00C6 80 DUP1
00C7 19 NOT
00C8 82 DUP3
00C9 51 MLOAD
00CA 16 AND
00CB 81 DUP2
00CC 84 DUP5
00CD 51 MLOAD
00CE 16 AND
00CF 80 DUP1
00D0 82 DUP3
00D1 17 OR
00D2 85 DUP6
00D3 52 MSTORE
00D4 50 POP
00D5 50 POP
00D6 50 POP
00D7 50 POP
00D8 50 POP
00D9 50 POP
00DA 90 SWAP1
00DB 50 POP
00DC 01 ADD
00DD 91 SWAP2
00DE 50 POP
00DF 50 POP
00E0 60 PUSH1 0x00
00E2 60 PUSH1 0x40
00E4 51 MLOAD
00E5 80 DUP1
00E6 83 DUP4
00E7 03 SUB
00E8 81 DUP2
00E9 85 DUP6
00EA 5A GAS
00EB F4 DELEGATECALL
00EC 91 SWAP2
00ED 50 POP
00EE 50 POP
00EF 3D RETURNDATASIZE
00F0 80 DUP1
00F1 60 PUSH1 0x00
00F3 81 DUP2
00F4 14 EQ
00F5 61 PUSH2 0x011a
00F8 57 *JUMPI
00F9 60 PUSH1 0x40
00FB 51 MLOAD
00FC 91 SWAP2
00FD 50 POP
00FE 60 PUSH1 0x1f
0100 19 NOT
0101 60 PUSH1 0x3f
0103 3D RETURNDATASIZE
0104 01 ADD
0105 16 AND
0106 82 DUP3
0107 01 ADD
0108 60 PUSH1 0x40
010A 52 MSTORE
010B 3D RETURNDATASIZE
010C 82 DUP3
010D 52 MSTORE
010E 3D RETURNDATASIZE
010F 60 PUSH1 0x00
0111 60 PUSH1 0x20
0113 84 DUP5
0114 01 ADD
0115 3E RETURNDATACOPY
0116 61 PUSH2 0x011f
0119 56 *JUMP
011A 5B JUMPDEST
011B 60 PUSH1 0x60
011D 91 SWAP2
011E 50 POP
011F 5B JUMPDEST
0120 50 POP
0121 91 SWAP2
0122 50 POP
0123 91 SWAP2
0124 50 POP
0125 61 PUSH2 0x012f
0128 82 DUP3
0129 82 DUP3
012A 86 DUP7
012B 61 PUSH2 0x01d2
012E 56 *JUMP
012F 5B JUMPDEST
0130 92 SWAP3
0131 50 POP
0132 50 POP
0133 50 POP
0134 5B JUMPDEST
0135 93 SWAP4
0136 92 SWAP3
0137 50 POP
0138 50 POP
0139 50 POP
013A 56 *JUMP
label_013B:
013B 5B JUMPDEST
013C 60 PUSH1 0x00
013E 61 PUSH2 0x0145
0141 61 PUSH2 0x0276
0144 56 *JUMP
label_0145:
0145 5B JUMPDEST
0146 60 PUSH1 0x01
0148 60 PUSH1 0x01
014A 60 PUSH1 0xa0
014C 1B SHL
014D 03 SUB
014E 16 AND
014F 63 PUSH4 0x5c60da1b
0154 60 PUSH1 0x40
0156 51 MLOAD
0157 81 DUP2
0158 63 PUSH4 0xffffffff
015D 16 AND
015E 60 PUSH1 0xe0
0160 1B SHL
0161 81 DUP2
0162 52 MSTORE
0163 60 PUSH1 0x04
0165 01 ADD
0166 60 PUSH1 0x20
0168 60 PUSH1 0x40
016A 51 MLOAD
016B 80 DUP1
016C 83 DUP4
016D 03 SUB
016E 81 DUP2
016F 86 DUP7
0170 80 DUP1
0171 3B EXTCODESIZE
0172 15 ISZERO
0173 80 DUP1
0174 15 ISZERO
0175 61 PUSH2 0x017d
0178 57 *JUMPI
label_0179:
0179 60 PUSH1 0x00
017B 80 DUP1
017C FD *REVERT
label_017D:
017D 5B JUMPDEST
017E 50 POP
017F 5A GAS
0180 FA STATICCALL
0181 15 ISZERO
0182 80 DUP1
0183 15 ISZERO
0184 61 PUSH2 0x0191
0187 57 *JUMPI
label_0188:
0188 3D RETURNDATASIZE
0189 60 PUSH1 0x00
018B 80 DUP1
018C 3E RETURNDATACOPY
018D 3D RETURNDATASIZE
018E 60 PUSH1 0x00
0190 FD *REVERT
label_0191:
0191 5B JUMPDEST
0192 50 POP
0193 50 POP
0194 50 POP
0195 50 POP
0196 60 PUSH1 0x40
0198 51 MLOAD
0199 3D RETURNDATASIZE
019A 60 PUSH1 0x20
019C 81 DUP2
019D 10 LT
019E 15 ISZERO
019F 61 PUSH2 0x01a7
01A2 57 *JUMPI
label_01A3:
01A3 60 PUSH1 0x00
01A5 80 DUP1
01A6 FD *REVERT
label_01A7:
01A7 5B JUMPDEST
01A8 50 POP
01A9 51 MLOAD
01AA 90 SWAP1
01AB 50 POP
01AC 90 SWAP1
01AD 56 *JUMP
label_01AE:
01AE 5B JUMPDEST
01AF 36 CALLDATASIZE
01B0 60 PUSH1 0x00
01B2 80 DUP1
01B3 37 CALLDATACOPY
01B4 60 PUSH1 0x00
01B6 80 DUP1
01B7 36 CALLDATASIZE
01B8 60 PUSH1 0x00
01BA 84 DUP5
01BB 5A GAS
01BC F4 DELEGATECALL
01BD 3D RETURNDATASIZE
01BE 60 PUSH1 0x00
01C0 80 DUP1
01C1 3E RETURNDATACOPY
01C2 80 DUP1
01C3 80 DUP1
01C4 15 ISZERO
01C5 61 PUSH2 0x01cd
01C8 57 *JUMPI
label_01C9:
01C9 3D RETURNDATASIZE
01CA 60 PUSH1 0x00
01CC F3 *RETURN
label_01CD:
01CD 5B JUMPDEST
01CE 3D RETURNDATASIZE
01CF 60 PUSH1 0x00
01D1 FD *REVERT
01D2 5B JUMPDEST
01D3 60 PUSH1 0x60
01D5 83 DUP4
01D6 15 ISZERO
01D7 61 PUSH2 0x01e1
01DA 57 *JUMPI
01DB 50 POP
01DC 81 DUP2
01DD 61 PUSH2 0x0134
01E0 56 *JUMP
01E1 5B JUMPDEST
01E2 82 DUP3
01E3 51 MLOAD
01E4 15 ISZERO
01E5 61 PUSH2 0x01f1
01E8 57 *JUMPI
01E9 82 DUP3
01EA 51 MLOAD
01EB 80 DUP1
01EC 84 DUP5
01ED 60 PUSH1 0x20
01EF 01 ADD
01F0 FD *REVERT
01F1 5B JUMPDEST
01F2 81 DUP2
01F3 60 PUSH1 0x40
01F5 51 MLOAD
01F6 62 PUSH3 0x461bcd
01FA 60 PUSH1 0xe5
01FC 1B SHL
01FD 81 DUP2
01FE 52 MSTORE
01FF 60 PUSH1 0x04
0201 01 ADD
0202 80 DUP1
0203 80 DUP1
0204 60 PUSH1 0x20
0206 01 ADD
0207 82 DUP3
0208 81 DUP2
0209 03 SUB
020A 82 DUP3
020B 52 MSTORE
020C 83 DUP4
020D 81 DUP2
020E 81 DUP2
020F 51 MLOAD
0210 81 DUP2
0211 52 MSTORE
0212 60 PUSH1 0x20
0214 01 ADD
0215 91 SWAP2
0216 50 POP
0217 80 DUP1
0218 51 MLOAD
0219 90 SWAP1
021A 60 PUSH1 0x20
021C 01 ADD
021D 90 SWAP1
021E 80 DUP1
021F 83 DUP4
0220 83 DUP4
0221 60 PUSH1 0x00
0223 5B JUMPDEST
0224 83 DUP4
0225 81 DUP2
0226 10 LT
0227 15 ISZERO
0228 61 PUSH2 0x023b
022B 57 *JUMPI
022C 81 DUP2
022D 81 DUP2
022E 01 ADD
022F 51 MLOAD
0230 83 DUP4
0231 82 DUP3
0232 01 ADD
0233 52 MSTORE
0234 60 PUSH1 0x20
0236 01 ADD
0237 61 PUSH2 0x0223
023A 56 *JUMP
023B 5B JUMPDEST
023C 50 POP
023D 50 POP
023E 50 POP
023F 50 POP
0240 90 SWAP1
0241 50 POP
0242 90 SWAP1
0243 81 DUP2
0244 01 ADD
0245 90 SWAP1
0246 60 PUSH1 0x1f
0248 16 AND
0249 80 DUP1
024A 15 ISZERO
024B 61 PUSH2 0x0268
024E 57 *JUMPI
024F 80 DUP1
0250 82 DUP3
0251 03 SUB
0252 80 DUP1
0253 51 MLOAD
0254 60 PUSH1 0x01
0256 83 DUP4
0257 60 PUSH1 0x20
0259 03 SUB
025A 61 PUSH2 0x0100
025D 0A EXP
025E 03 SUB
025F 19 NOT
0260 16 AND
0261 81 DUP2
0262 52 MSTORE
0263 60 PUSH1 0x20
0265 01 ADD
0266 91 SWAP2
0267 50 POP
0268 5B JUMPDEST
0269 50 POP
026A 92 SWAP3
026B 50 POP
026C 50 POP
026D 50 POP
026E 60 PUSH1 0x40
0270 51 MLOAD
0271 80 DUP1
0272 91 SWAP2
0273 03 SUB
0274 90 SWAP1
0275 FD *REVERT
label_0276:
0276 5B JUMPDEST
0277 7F PUSH32 0xa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50
0298 54 SLOAD
0299 90 SWAP1
029A 56 *JUMP
029B FE *ASSERT
029C 41 COINBASE
029D 64 PUSH5 0x6472657373
02A3 3A GASPRICE
02A4 20 SHA3
02A5 64 PUSH5 0x656c656761
02AB 74 PUSH21 0x652063616c6c20746f206e6f6e2d636f6e74726163
02C1 74 PUSH21 0xa26469706673582212208d876f4df9e95fb28cbac2
02D7 F3 *RETURN
02D8 2A 2A
02D9 1B SHL
02DA BB BB
02DB B4 B4
02DC E7 E7
02DD F3 *RETURN
02DE 9F SWAP16
02DF 9D SWAP14
02E0 7B PUSH28 0xb110fc7b5628d98879c2ba64736f6c63430007060033