mirror of https://github.com/ConsenSys/mythril
commit
b04fd901f6
@ -0,0 +1,107 @@ |
|||||||
|
import re |
||||||
|
from collections import Generator |
||||||
|
|
||||||
|
from ethereum.opcodes import opcodes |
||||||
|
|
||||||
|
regex_PUSH = re.compile("^PUSH(\d*)$") |
||||||
|
|
||||||
|
# Additional mnemonic to catch failed assertions |
||||||
|
opcodes[254] = ["ASSERT_FAIL", 0, 0, 0] |
||||||
|
|
||||||
|
|
||||||
|
class EvmInstruction: |
||||||
|
""" Model to hold the information of the disassembly """ |
||||||
|
|
||||||
|
def __init__(self, address, op_code, argument=None): |
||||||
|
self.address = address |
||||||
|
self.op_code = op_code |
||||||
|
self.argument = argument |
||||||
|
|
||||||
|
def to_dict(self) -> dict: |
||||||
|
result = {"address": self.address, "opcode": self.op_code} |
||||||
|
if self.argument: |
||||||
|
result["argument"] = self.argument |
||||||
|
return result |
||||||
|
|
||||||
|
|
||||||
|
def instruction_list_to_easm(instruction_list: list) -> str: |
||||||
|
result = "" |
||||||
|
|
||||||
|
for instruction in instruction_list: |
||||||
|
result += "{} {}".format(instruction["address"], instruction["opcode"]) |
||||||
|
if "argument" in instruction: |
||||||
|
result += " " + instruction["argument"] |
||||||
|
result += "\n" |
||||||
|
|
||||||
|
return result |
||||||
|
|
||||||
|
|
||||||
|
def get_opcode_from_name(operation_name: str) -> int: |
||||||
|
for op_code, value in opcodes.items(): |
||||||
|
if operation_name == value[0]: |
||||||
|
return op_code |
||||||
|
raise RuntimeError("Unknown opcode") |
||||||
|
|
||||||
|
|
||||||
|
def find_op_code_sequence(pattern: list, instruction_list: list) -> Generator: |
||||||
|
""" |
||||||
|
Returns all indices in instruction_list that point to instruction sequences following a pattern |
||||||
|
:param pattern: The pattern to look for. |
||||||
|
Example: [["PUSH1", "PUSH2"], ["EQ"]] where ["PUSH1", "EQ"] satisfies the pattern |
||||||
|
:param instruction_list: List of instructions to look in |
||||||
|
:return: Indices to the instruction sequences |
||||||
|
""" |
||||||
|
for i in range(0, len(instruction_list) - len(pattern) + 1): |
||||||
|
if is_sequence_match(pattern, instruction_list, i): |
||||||
|
yield i |
||||||
|
|
||||||
|
|
||||||
|
def is_sequence_match(pattern: list, instruction_list: list, index: int) -> bool: |
||||||
|
""" |
||||||
|
Checks if the instructions starting at index follow a pattern |
||||||
|
:param pattern: List of lists describing a pattern. |
||||||
|
Example: [["PUSH1", "PUSH2"], ["EQ"]] where ["PUSH1", "EQ"] satisfies the pattern |
||||||
|
:param instruction_list: List of instructions |
||||||
|
:param index: Index to check for |
||||||
|
:return: Pattern matched |
||||||
|
""" |
||||||
|
for index, pattern_slot in enumerate(pattern, start=index): |
||||||
|
try: |
||||||
|
if not instruction_list[index]["opcode"] in pattern_slot: |
||||||
|
return False |
||||||
|
except IndexError: |
||||||
|
return False |
||||||
|
return True |
||||||
|
|
||||||
|
|
||||||
|
def disassemble(bytecode: str) -> list: |
||||||
|
"""Disassembles evm bytecode and returns a list of instructions""" |
||||||
|
instruction_list = [] |
||||||
|
address = 0 |
||||||
|
length = len(bytecode) |
||||||
|
if "bzzr" in str(bytecode[-43:]): |
||||||
|
# ignore swarm hash |
||||||
|
length -= 43 |
||||||
|
|
||||||
|
while address < length: |
||||||
|
try: |
||||||
|
op_code = opcodes[bytecode[address]] |
||||||
|
except KeyError: |
||||||
|
instruction_list.append(EvmInstruction(address, "INVALID")) |
||||||
|
address += 1 |
||||||
|
continue |
||||||
|
|
||||||
|
op_code_name = op_code[0] |
||||||
|
current_instruction = EvmInstruction(address, op_code_name) |
||||||
|
|
||||||
|
match = re.search(regex_PUSH, op_code_name) |
||||||
|
if match: |
||||||
|
argument_bytes = bytecode[address + 1 : address + 1 + int(match.group(1))] |
||||||
|
current_instruction.argument = "0x" + argument_bytes.hex() |
||||||
|
address += int(match.group(1)) |
||||||
|
|
||||||
|
instruction_list.append(current_instruction) |
||||||
|
address += 1 |
||||||
|
|
||||||
|
# We use a to_dict() here for compatibility reasons |
||||||
|
return [element.to_dict() for element in instruction_list] |
@ -1,151 +0,0 @@ |
|||||||
import sys |
|
||||||
import re |
|
||||||
from ethereum.opcodes import opcodes |
|
||||||
from mythril.ether import util |
|
||||||
|
|
||||||
|
|
||||||
regex_PUSH = re.compile("^PUSH(\d*)$") |
|
||||||
|
|
||||||
# Additional mnemonic to catch failed assertions |
|
||||||
|
|
||||||
opcodes[254] = ["ASSERT_FAIL", 0, 0, 0] |
|
||||||
|
|
||||||
|
|
||||||
def instruction_list_to_easm(instruction_list): |
|
||||||
easm = "" |
|
||||||
|
|
||||||
for instruction in instruction_list: |
|
||||||
|
|
||||||
easm += str(instruction["address"]) + " " + instruction["opcode"] |
|
||||||
|
|
||||||
if "argument" in instruction: |
|
||||||
easm += " " + instruction["argument"] |
|
||||||
|
|
||||||
easm += "\n" |
|
||||||
|
|
||||||
return easm |
|
||||||
|
|
||||||
|
|
||||||
def easm_to_instruction_list(easm): |
|
||||||
|
|
||||||
regex_CODELINE = re.compile("^([A-Z0-9]+)(?:\s+([0-9a-fA-Fx]+))?$") |
|
||||||
|
|
||||||
instruction_list = [] |
|
||||||
|
|
||||||
codelines = easm.split("\n") |
|
||||||
|
|
||||||
for line in codelines: |
|
||||||
|
|
||||||
m = re.search(regex_CODELINE, line) |
|
||||||
|
|
||||||
if not m: |
|
||||||
# Invalid code line |
|
||||||
continue |
|
||||||
|
|
||||||
instruction = {"opcode": m.group(1)} |
|
||||||
|
|
||||||
if m.group(2): |
|
||||||
instruction["argument"] = m.group(2)[2:] |
|
||||||
|
|
||||||
instruction_list.append(instruction) |
|
||||||
|
|
||||||
return instruction_list |
|
||||||
|
|
||||||
|
|
||||||
def get_opcode_from_name(name): |
|
||||||
|
|
||||||
for opcode, value in opcodes.items(): |
|
||||||
|
|
||||||
if name == value[0]: |
|
||||||
|
|
||||||
return opcode |
|
||||||
|
|
||||||
raise RuntimeError("Unknown opcode") |
|
||||||
|
|
||||||
|
|
||||||
def find_opcode_sequence(pattern, instruction_list): |
|
||||||
match_indexes = [] |
|
||||||
|
|
||||||
pattern_length = len(pattern) |
|
||||||
|
|
||||||
for i in range(0, len(instruction_list) - pattern_length + 1): |
|
||||||
|
|
||||||
if instruction_list[i]["opcode"] in pattern[0]: |
|
||||||
|
|
||||||
matched = True |
|
||||||
|
|
||||||
for j in range(1, len(pattern)): |
|
||||||
|
|
||||||
if not (instruction_list[i + j]["opcode"] in pattern[j]): |
|
||||||
matched = False |
|
||||||
break |
|
||||||
|
|
||||||
if matched: |
|
||||||
match_indexes.append(i) |
|
||||||
|
|
||||||
return match_indexes |
|
||||||
|
|
||||||
|
|
||||||
def disassemble(bytecode): |
|
||||||
|
|
||||||
instruction_list = [] |
|
||||||
addr = 0 |
|
||||||
|
|
||||||
length = len(bytecode) |
|
||||||
|
|
||||||
if "bzzr" in str(bytecode[-43:]): |
|
||||||
# ignore swarm hash |
|
||||||
length -= 43 |
|
||||||
|
|
||||||
while addr < length: |
|
||||||
|
|
||||||
instruction = {"address": addr} |
|
||||||
|
|
||||||
try: |
|
||||||
if sys.version_info > (3, 0): |
|
||||||
opcode = opcodes[bytecode[addr]] |
|
||||||
else: |
|
||||||
opcode = opcodes[ord(bytecode[addr])] |
|
||||||
|
|
||||||
except KeyError: |
|
||||||
|
|
||||||
# invalid opcode |
|
||||||
instruction_list.append({"address": addr, "opcode": "INVALID"}) |
|
||||||
addr += 1 |
|
||||||
continue |
|
||||||
|
|
||||||
instruction["opcode"] = opcode[0] |
|
||||||
|
|
||||||
m = re.search(regex_PUSH, opcode[0]) |
|
||||||
|
|
||||||
if m: |
|
||||||
argument = bytecode[addr + 1 : addr + 1 + int(m.group(1))] |
|
||||||
instruction["argument"] = "0x" + argument.hex() |
|
||||||
|
|
||||||
addr += int(m.group(1)) |
|
||||||
|
|
||||||
instruction_list.append(instruction) |
|
||||||
|
|
||||||
addr += 1 |
|
||||||
|
|
||||||
return instruction_list |
|
||||||
|
|
||||||
|
|
||||||
def assemble(instruction_list): |
|
||||||
|
|
||||||
bytecode = b"" |
|
||||||
|
|
||||||
for instruction in instruction_list: |
|
||||||
|
|
||||||
try: |
|
||||||
opcode = get_opcode_from_name(instruction["opcode"]) |
|
||||||
except RuntimeError: |
|
||||||
opcode = 0xBB |
|
||||||
|
|
||||||
bytecode += opcode.to_bytes(1, byteorder="big") |
|
||||||
|
|
||||||
if "argument" in instruction: |
|
||||||
|
|
||||||
bytecode += util.safe_decode(instruction["argument"]) |
|
||||||
|
|
||||||
return bytecode |
|
@ -1,3 +1,3 @@ |
|||||||
# This file is suitable for sourcing inside POSIX shell, e.g. bash as |
# This file is suitable for sourcing inside POSIX shell, e.g. bash as |
||||||
# well as for importing into Python |
# well as for importing into Python |
||||||
VERSION = "v0.18.12" # NOQA |
VERSION = "v0.19.3" # NOQA |
||||||
|
@ -0,0 +1,124 @@ |
|||||||
|
from mythril.disassembler.asm import * |
||||||
|
import pytest |
||||||
|
|
||||||
|
valid_names = [("PUSH1", 0x60), ("STOP", 0x0), ("RETURN", 0xF3)] |
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.parametrize("operation_name, hex_value", valid_names) |
||||||
|
def test_get_opcode(operation_name: str, hex_value: int): |
||||||
|
# Act |
||||||
|
return_value = get_opcode_from_name(operation_name) |
||||||
|
# Assert |
||||||
|
assert return_value == hex_value |
||||||
|
|
||||||
|
|
||||||
|
def test_get_unknown_opcode(): |
||||||
|
operation_name = "definitely unknown" |
||||||
|
|
||||||
|
# Act |
||||||
|
with pytest.raises(RuntimeError): |
||||||
|
get_opcode_from_name(operation_name) |
||||||
|
|
||||||
|
|
||||||
|
sequence_match_test_data = [ |
||||||
|
# Normal no match |
||||||
|
( |
||||||
|
(["PUSH1"], ["EQ"]), |
||||||
|
[{"opcode": "PUSH1"}, {"opcode": "PUSH3"}, {"opcode": "EQ"}], |
||||||
|
1, |
||||||
|
False, |
||||||
|
), |
||||||
|
# Normal match |
||||||
|
( |
||||||
|
(["PUSH1"], ["EQ"]), |
||||||
|
[{"opcode": "PUSH1"}, {"opcode": "PUSH1"}, {"opcode": "EQ"}], |
||||||
|
1, |
||||||
|
True, |
||||||
|
), |
||||||
|
# Out of bounds pattern |
||||||
|
( |
||||||
|
(["PUSH1"], ["EQ"]), |
||||||
|
[{"opcode": "PUSH1"}, {"opcode": "PUSH3"}, {"opcode": "EQ"}], |
||||||
|
3, |
||||||
|
False, |
||||||
|
), |
||||||
|
( |
||||||
|
(["PUSH1"], ["EQ"]), |
||||||
|
[{"opcode": "PUSH1"}, {"opcode": "PUSH3"}, {"opcode": "EQ"}], |
||||||
|
2, |
||||||
|
False, |
||||||
|
), |
||||||
|
# Double option match |
||||||
|
( |
||||||
|
(["PUSH1", "PUSH3"], ["EQ"]), |
||||||
|
[{"opcode": "PUSH1"}, {"opcode": "PUSH1"}, {"opcode": "EQ"}], |
||||||
|
1, |
||||||
|
True, |
||||||
|
), |
||||||
|
( |
||||||
|
(["PUSH1", "PUSH3"], ["EQ"]), |
||||||
|
[{"opcode": "PUSH1"}, {"opcode": "PUSH3"}, {"opcode": "EQ"}], |
||||||
|
1, |
||||||
|
True, |
||||||
|
), |
||||||
|
# Double option no match |
||||||
|
( |
||||||
|
(["PUSH1", "PUSH3"], ["EQ"]), |
||||||
|
[{"opcode": "PUSH1"}, {"opcode": "PUSH3"}, {"opcode": "EQ"}], |
||||||
|
0, |
||||||
|
False, |
||||||
|
), |
||||||
|
] |
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.parametrize( |
||||||
|
"pattern, instruction_list, index, expected_result", sequence_match_test_data |
||||||
|
) |
||||||
|
def test_is_sequence_match(pattern, instruction_list, index, expected_result): |
||||||
|
# Act |
||||||
|
return_value = is_sequence_match(pattern, instruction_list, index) |
||||||
|
# Assert |
||||||
|
assert return_value == expected_result |
||||||
|
|
||||||
|
|
||||||
|
find_sequence_match_test_data = [ |
||||||
|
# Normal no match |
||||||
|
( |
||||||
|
(["PUSH1"], ["EQ"]), |
||||||
|
[{"opcode": "PUSH1"}, {"opcode": "PUSH3"}, {"opcode": "EQ"}], |
||||||
|
[], |
||||||
|
), |
||||||
|
# Normal match |
||||||
|
( |
||||||
|
(["PUSH1"], ["EQ"]), |
||||||
|
[ |
||||||
|
{"opcode": "PUSH1"}, |
||||||
|
{"opcode": "PUSH1"}, |
||||||
|
{"opcode": "EQ"}, |
||||||
|
{"opcode": "PUSH1"}, |
||||||
|
{"opcode": "EQ"}, |
||||||
|
], |
||||||
|
[1, 3], |
||||||
|
), |
||||||
|
] |
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.parametrize( |
||||||
|
"pattern, instruction_list, expected_result", find_sequence_match_test_data |
||||||
|
) |
||||||
|
def test_find_op_code_sequence(pattern, instruction_list, expected_result): |
||||||
|
# Act |
||||||
|
return_value = list(find_op_code_sequence(pattern, instruction_list)) |
||||||
|
|
||||||
|
# Assert |
||||||
|
assert return_value == expected_result |
||||||
|
|
||||||
|
|
||||||
|
def test_disassemble(): |
||||||
|
# Act |
||||||
|
instruction_list = disassemble(b"\x00\x16\x06") |
||||||
|
|
||||||
|
# Assert |
||||||
|
assert instruction_list[0]["opcode"] == "STOP" |
||||||
|
assert instruction_list[1]["opcode"] == "AND" |
||||||
|
assert instruction_list[2]["opcode"] == "MOD" |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_0" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_0Filler.json", |
||||||
|
"sourceHash" : "843009e4e97d7dd905578ea884db6d80c07f57d58679ec181dc761e1e51ae035" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x6000600020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x174876e800", |
||||||
|
"gasPrice" : "0x3b9aca00", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0x0de0b6b3a7640000" |
||||||
|
}, |
||||||
|
"gas" : "0x17487699b9", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0x152d02c7e14af6800000", |
||||||
|
"code" : "0x6000600020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0x152d02c7e14af6800000", |
||||||
|
"code" : "0x6000600020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_1" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_1Filler.json", |
||||||
|
"sourceHash" : "5f786aded76570c96466f5a4c4632a5a0b362ffc1e4124667cdb1e9328d1d81d" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x6005600420600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0186a0", |
||||||
|
"gasPrice" : "0x5af3107a4000", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0x0de0b6b3a7640000" |
||||||
|
}, |
||||||
|
"gas" : "0x013850", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0x152d02c7e14af6800000", |
||||||
|
"code" : "0x6005600420600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0xc41589e7559804ea4a2080dad19d876a024ccb05117835447d72ce08c1d020ec" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0x152d02c7e14af6800000", |
||||||
|
"code" : "0x6005600420600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_2" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_2Filler.json", |
||||||
|
"sourceHash" : "bb3f59dc995c834eaf315b4819900c30ba4e97ef60163aed05946c70e841691f" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x600a600a20600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0186a0", |
||||||
|
"gasPrice" : "0x5af3107a4000", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0x0de0b6b3a7640000" |
||||||
|
}, |
||||||
|
"gas" : "0x013850", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0x152d02c7e14af6800000", |
||||||
|
"code" : "0x600a600a20600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0x6bd2dd6bd408cbee33429358bf24fdc64612fbf8b1b4db604518f40ffd34b607" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0x152d02c7e14af6800000", |
||||||
|
"code" : "0x600a600a20600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,37 @@ |
|||||||
|
{ |
||||||
|
"sha3_3" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_3Filler.json", |
||||||
|
"sourceHash" : "1f474f7dac8971615e641354d809db332975d1ea5ca589d855fb02a1da559033" |
||||||
|
}, |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x620fffff6103e820600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0186a0", |
||||||
|
"gasPrice" : "0x5af3107a4000", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0x0de0b6b3a7640000" |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0x152d02c7e14af6800000", |
||||||
|
"code" : "0x620fffff6103e820600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,37 @@ |
|||||||
|
{ |
||||||
|
"sha3_4" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_4Filler.json", |
||||||
|
"sourceHash" : "100da75ff0b63159ca86aa4ef7457a956027af5c6c1ed1f0fa894aaa63849887" |
||||||
|
}, |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x6064640fffffffff20600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0186a0", |
||||||
|
"gasPrice" : "0x5af3107a4000", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0x0de0b6b3a7640000" |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0x152d02c7e14af6800000", |
||||||
|
"code" : "0x6064640fffffffff20600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,37 @@ |
|||||||
|
{ |
||||||
|
"sha3_5" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_5Filler.json", |
||||||
|
"sourceHash" : "066bcf3a8e9e7b4c15ec2240c8e1bb0d53de0230c76989e21e4b6aaac83f577d" |
||||||
|
}, |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x640fffffffff61271020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0186a0", |
||||||
|
"gasPrice" : "0x5af3107a4000", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0x0de0b6b3a7640000" |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0x152d02c7e14af6800000", |
||||||
|
"code" : "0x640fffffffff61271020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,37 @@ |
|||||||
|
{ |
||||||
|
"sha3_6" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_6Filler.json", |
||||||
|
"sourceHash" : "c360c6583bf965674d153f11c243c1e0807e95e99bc9bcb684a7ad2c7155dd40" |
||||||
|
}, |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff20600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0186a0", |
||||||
|
"gasPrice" : "0x5af3107a4000", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0x0de0b6b3a7640000" |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0x152d02c7e14af6800000", |
||||||
|
"code" : "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff20600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,37 @@ |
|||||||
|
{ |
||||||
|
"sha3_bigOffset" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_bigOffsetFiller.json", |
||||||
|
"sourceHash" : "1ae2cdfa2e3ab1cac89d8b3d535c3ee50601ebc6098fdbddadca74980eec6382" |
||||||
|
}, |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x60027e0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff20600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x010000000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60027e0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff20600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_bigOffset2" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_bigOffset2Filler.json", |
||||||
|
"sourceHash" : "2bf8d14886b1001b266c29bd9f9e764f7e6965e851bfe1440e536735fca993dc" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x6002630100000020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0100000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"gas" : "0xdfe7a9b0", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x6002630100000020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0x54a8c0ab653c15bfb48b47fd011ba2b9617af01cb45cab344acd57c924d56798" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x6002630100000020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,37 @@ |
|||||||
|
{ |
||||||
|
"sha3_bigSize" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_bigSizeFiller.json", |
||||||
|
"sourceHash" : "571bfd9a15c6b0e317f96a92f745aee1d800aa4486c1a101b3e016120ffb5415" |
||||||
|
}, |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff20600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x010000000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff20600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_memSizeNoQuadraticCost31" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_memSizeNoQuadraticCost31Filler.json", |
||||||
|
"sourceHash" : "04553284981ef7338bdeac0e029652313a2643169833e386ca34bfa3d5e5942a" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x60016103c020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0100000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"gas" : "0xffffb155", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60016103c020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60016103c020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_memSizeQuadraticCost32" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_memSizeQuadraticCost32Filler.json", |
||||||
|
"sourceHash" : "70f68e0328222cc2c995bf932f2f8f65f5d4c7e9f040a51bbf4dae3cad9110cf" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x60016103e020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0100000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"gas" : "0xffffb151", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60016103e020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60016103e020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_memSizeQuadraticCost32_zeroSize" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_memSizeQuadraticCost32_zeroSizeFiller.json", |
||||||
|
"sourceHash" : "96094eee3e3fcd478fe3780ff053e64bf5391616bfdc6c2017bf12dcc5d30366" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x600061040020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0100000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"gas" : "0xffffb1b9", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x600061040020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x600061040020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_memSizeQuadraticCost33" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_memSizeQuadraticCost33Filler.json", |
||||||
|
"sourceHash" : "2fc9e00a7759c4271b6897b285ae437f6484281e9113e82a8252afbe16e85841" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x600161040020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0100000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"gas" : "0xffffb14e", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x600161040020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x600161040020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_memSizeQuadraticCost63" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_memSizeQuadraticCost63Filler.json", |
||||||
|
"sourceHash" : "b81dd9fc94929d24f6a06dac81abb0099b969086ecf83326ecb4d6c98fc36f39" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x60016107c020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0100000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"gas" : "0xffffb0ef", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60016107c020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60016107c020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_memSizeQuadraticCost64" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_memSizeQuadraticCost64Filler.json", |
||||||
|
"sourceHash" : "9f1ae20cc7b481e84732b835af1d284c815d79a470ceb1094f0cf9e765a64b8d" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x60016107e020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0100000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"gas" : "0xffffb0eb", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60016107e020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60016107e020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_memSizeQuadraticCost64_2" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_memSizeQuadraticCost64_2Filler.json", |
||||||
|
"sourceHash" : "4d313aaddd74f092eae5089cce1aef3aadc74b019f617fdf24acedd8fb26300b" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x60206107e020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0100000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"gas" : "0xffffb0eb", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60206107e020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x60206107e020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
{ |
||||||
|
"sha3_memSizeQuadraticCost65" : { |
||||||
|
"_info" : { |
||||||
|
"comment" : "", |
||||||
|
"filledwith" : "cpp-1.3.0+commit.6e0ce939.Linux.g++", |
||||||
|
"lllcversion" : "Version: 0.4.18-develop.2017.9.25+commit.a72237f2.Linux.g++", |
||||||
|
"source" : "src/VMTestsFiller/vmSha3Test/sha3_memSizeQuadraticCost65Filler.json", |
||||||
|
"sourceHash" : "28d6ebfb32dd2c00c629fe373fe58fd83466484d6022cd476ca63981ffaa950a" |
||||||
|
}, |
||||||
|
"callcreates" : [ |
||||||
|
], |
||||||
|
"env" : { |
||||||
|
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba", |
||||||
|
"currentDifficulty" : "0x0100", |
||||||
|
"currentGasLimit" : "0x0f4240", |
||||||
|
"currentNumber" : "0x00", |
||||||
|
"currentTimestamp" : "0x01" |
||||||
|
}, |
||||||
|
"exec" : { |
||||||
|
"address" : "0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", |
||||||
|
"caller" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"code" : "0x600161080020600055", |
||||||
|
"data" : "0x", |
||||||
|
"gas" : "0x0100000000", |
||||||
|
"gasPrice" : "0x01", |
||||||
|
"origin" : "0xcd1722f3947def4cf144679da39c4c32bdc35681", |
||||||
|
"value" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" |
||||||
|
}, |
||||||
|
"gas" : "0xffffb0e8", |
||||||
|
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", |
||||||
|
"out" : "0x", |
||||||
|
"post" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x600161080020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
"0x00" : "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"pre" : { |
||||||
|
"0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6" : { |
||||||
|
"balance" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", |
||||||
|
"code" : "0x600161080020600055", |
||||||
|
"nonce" : "0x00", |
||||||
|
"storage" : { |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -1 +1 @@ |
|||||||
{"error": null, "issues": [{"address": 158, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A possible integer overflow exists in the function `_function_0x83f12fec`.\nThe addition or multiplication may result in a value higher than the maximum representable integer.", "function": "_function_0x83f12fec", "swc_id": "101", "title": "Integer Overflow", "type": "Warning"}, {"address": 278, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A possible integer overflow exists in the function `_function_0x83f12fec`.\nThe addition or multiplication may result in a value higher than the maximum representable integer.", "function": "_function_0x83f12fec", "swc_id": "101", "title": "Integer Overflow", "type": "Warning"}, {"address": 378, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A possible integer underflow exists in the function `_function_0x83f12fec`.\nThe subtraction may result in a value < 0.", "function": "_function_0x83f12fec", "swc_id": "101", "title": "Integer Underflow", "type": "Warning"}], "success": true} |
{"error": null, "issues": [{"address": 158, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The arithmetic operation can result in integer overflow.\n", "function": "_function_0x83f12fec", "swc_id": "101", "title": "Integer Overflow", "type": "Warning"}, {"address": 278, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The arithmetic operation can result in integer overflow.\n", "function": "_function_0x83f12fec", "swc_id": "101", "title": "Integer Overflow", "type": "Warning"}, {"address": 378, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The substraction can result in an integer underflow.\n", "function": "_function_0x83f12fec", "swc_id": "101", "title": "Integer Underflow", "type": "Warning"}], "success": true} |
@ -1,400 +0,0 @@ |
|||||||
0 PUSH1 0x60 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH2 0x0083 |
|
||||||
12 JUMPI |
|
||||||
13 PUSH1 0x00 |
|
||||||
15 CALLDATALOAD |
|
||||||
16 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
46 SWAP1 |
|
||||||
47 DIV |
|
||||||
48 PUSH4 0xffffffff |
|
||||||
53 AND |
|
||||||
54 DUP1 |
|
||||||
55 PUSH4 0x2776b163 |
|
||||||
60 EQ |
|
||||||
61 PUSH2 0x0088 |
|
||||||
64 JUMPI |
|
||||||
65 DUP1 |
|
||||||
66 PUSH4 0x379bf63c |
|
||||||
71 EQ |
|
||||||
72 PUSH2 0x00c1 |
|
||||||
75 JUMPI |
|
||||||
76 DUP1 |
|
||||||
77 PUSH4 0x5a6814ec |
|
||||||
82 EQ |
|
||||||
83 PUSH2 0x0116 |
|
||||||
86 JUMPI |
|
||||||
87 DUP1 |
|
||||||
88 PUSH4 0xb5d02c8a |
|
||||||
93 EQ |
|
||||||
94 PUSH2 0x012b |
|
||||||
97 JUMPI |
|
||||||
98 DUP1 |
|
||||||
99 PUSH4 0xd24b08cc |
|
||||||
104 EQ |
|
||||||
105 PUSH2 0x0180 |
|
||||||
108 JUMPI |
|
||||||
109 DUP1 |
|
||||||
110 PUSH4 0xe11f493e |
|
||||||
115 EQ |
|
||||||
116 PUSH2 0x0195 |
|
||||||
119 JUMPI |
|
||||||
120 DUP1 |
|
||||||
121 PUSH4 0xe1d10f79 |
|
||||||
126 EQ |
|
||||||
127 PUSH2 0x01aa |
|
||||||
130 JUMPI |
|
||||||
131 JUMPDEST |
|
||||||
132 PUSH1 0x00 |
|
||||||
134 DUP1 |
|
||||||
135 REVERT |
|
||||||
136 JUMPDEST |
|
||||||
137 CALLVALUE |
|
||||||
138 ISZERO |
|
||||||
139 PUSH2 0x0093 |
|
||||||
142 JUMPI |
|
||||||
143 PUSH1 0x00 |
|
||||||
145 DUP1 |
|
||||||
146 REVERT |
|
||||||
147 JUMPDEST |
|
||||||
148 PUSH2 0x00bf |
|
||||||
151 PUSH1 0x04 |
|
||||||
153 DUP1 |
|
||||||
154 DUP1 |
|
||||||
155 CALLDATALOAD |
|
||||||
156 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
177 AND |
|
||||||
178 SWAP1 |
|
||||||
179 PUSH1 0x20 |
|
||||||
181 ADD |
|
||||||
182 SWAP1 |
|
||||||
183 SWAP2 |
|
||||||
184 SWAP1 |
|
||||||
185 POP |
|
||||||
186 POP |
|
||||||
187 PUSH2 0x01e3 |
|
||||||
190 JUMP |
|
||||||
191 JUMPDEST |
|
||||||
192 STOP |
|
||||||
193 JUMPDEST |
|
||||||
194 CALLVALUE |
|
||||||
195 ISZERO |
|
||||||
196 PUSH2 0x00cc |
|
||||||
199 JUMPI |
|
||||||
200 PUSH1 0x00 |
|
||||||
202 DUP1 |
|
||||||
203 REVERT |
|
||||||
204 JUMPDEST |
|
||||||
205 PUSH2 0x00d4 |
|
||||||
208 PUSH2 0x0227 |
|
||||||
211 JUMP |
|
||||||
212 JUMPDEST |
|
||||||
213 PUSH1 0x40 |
|
||||||
215 MLOAD |
|
||||||
216 DUP1 |
|
||||||
217 DUP3 |
|
||||||
218 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
239 AND |
|
||||||
240 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
261 AND |
|
||||||
262 DUP2 |
|
||||||
263 MSTORE |
|
||||||
264 PUSH1 0x20 |
|
||||||
266 ADD |
|
||||||
267 SWAP2 |
|
||||||
268 POP |
|
||||||
269 POP |
|
||||||
270 PUSH1 0x40 |
|
||||||
272 MLOAD |
|
||||||
273 DUP1 |
|
||||||
274 SWAP2 |
|
||||||
275 SUB |
|
||||||
276 SWAP1 |
|
||||||
277 RETURN |
|
||||||
278 JUMPDEST |
|
||||||
279 CALLVALUE |
|
||||||
280 ISZERO |
|
||||||
281 PUSH2 0x0121 |
|
||||||
284 JUMPI |
|
||||||
285 PUSH1 0x00 |
|
||||||
287 DUP1 |
|
||||||
288 REVERT |
|
||||||
289 JUMPDEST |
|
||||||
290 PUSH2 0x0129 |
|
||||||
293 PUSH2 0x024c |
|
||||||
296 JUMP |
|
||||||
297 JUMPDEST |
|
||||||
298 STOP |
|
||||||
299 JUMPDEST |
|
||||||
300 CALLVALUE |
|
||||||
301 ISZERO |
|
||||||
302 PUSH2 0x0136 |
|
||||||
305 JUMPI |
|
||||||
306 PUSH1 0x00 |
|
||||||
308 DUP1 |
|
||||||
309 REVERT |
|
||||||
310 JUMPDEST |
|
||||||
311 PUSH2 0x013e |
|
||||||
314 PUSH2 0x029b |
|
||||||
317 JUMP |
|
||||||
318 JUMPDEST |
|
||||||
319 PUSH1 0x40 |
|
||||||
321 MLOAD |
|
||||||
322 DUP1 |
|
||||||
323 DUP3 |
|
||||||
324 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
345 AND |
|
||||||
346 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
367 AND |
|
||||||
368 DUP2 |
|
||||||
369 MSTORE |
|
||||||
370 PUSH1 0x20 |
|
||||||
372 ADD |
|
||||||
373 SWAP2 |
|
||||||
374 POP |
|
||||||
375 POP |
|
||||||
376 PUSH1 0x40 |
|
||||||
378 MLOAD |
|
||||||
379 DUP1 |
|
||||||
380 SWAP2 |
|
||||||
381 SUB |
|
||||||
382 SWAP1 |
|
||||||
383 RETURN |
|
||||||
384 JUMPDEST |
|
||||||
385 CALLVALUE |
|
||||||
386 ISZERO |
|
||||||
387 PUSH2 0x018b |
|
||||||
390 JUMPI |
|
||||||
391 PUSH1 0x00 |
|
||||||
393 DUP1 |
|
||||||
394 REVERT |
|
||||||
395 JUMPDEST |
|
||||||
396 PUSH2 0x0193 |
|
||||||
399 PUSH2 0x02c1 |
|
||||||
402 JUMP |
|
||||||
403 JUMPDEST |
|
||||||
404 STOP |
|
||||||
405 JUMPDEST |
|
||||||
406 CALLVALUE |
|
||||||
407 ISZERO |
|
||||||
408 PUSH2 0x01a0 |
|
||||||
411 JUMPI |
|
||||||
412 PUSH1 0x00 |
|
||||||
414 DUP1 |
|
||||||
415 REVERT |
|
||||||
416 JUMPDEST |
|
||||||
417 PUSH2 0x01a8 |
|
||||||
420 PUSH2 0x0311 |
|
||||||
423 JUMP |
|
||||||
424 JUMPDEST |
|
||||||
425 STOP |
|
||||||
426 JUMPDEST |
|
||||||
427 CALLVALUE |
|
||||||
428 ISZERO |
|
||||||
429 PUSH2 0x01b5 |
|
||||||
432 JUMPI |
|
||||||
433 PUSH1 0x00 |
|
||||||
435 DUP1 |
|
||||||
436 REVERT |
|
||||||
437 JUMPDEST |
|
||||||
438 PUSH2 0x01e1 |
|
||||||
441 PUSH1 0x04 |
|
||||||
443 DUP1 |
|
||||||
444 DUP1 |
|
||||||
445 CALLDATALOAD |
|
||||||
446 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
467 AND |
|
||||||
468 SWAP1 |
|
||||||
469 PUSH1 0x20 |
|
||||||
471 ADD |
|
||||||
472 SWAP1 |
|
||||||
473 SWAP2 |
|
||||||
474 SWAP1 |
|
||||||
475 POP |
|
||||||
476 POP |
|
||||||
477 PUSH2 0x0368 |
|
||||||
480 JUMP |
|
||||||
481 JUMPDEST |
|
||||||
482 STOP |
|
||||||
483 JUMPDEST |
|
||||||
484 DUP1 |
|
||||||
485 PUSH1 0x01 |
|
||||||
487 PUSH1 0x00 |
|
||||||
489 PUSH2 0x0100 |
|
||||||
492 EXP |
|
||||||
493 DUP2 |
|
||||||
494 SLOAD |
|
||||||
495 DUP2 |
|
||||||
496 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
517 MUL |
|
||||||
518 NOT |
|
||||||
519 AND |
|
||||||
520 SWAP1 |
|
||||||
521 DUP4 |
|
||||||
522 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
543 AND |
|
||||||
544 MUL |
|
||||||
545 OR |
|
||||||
546 SWAP1 |
|
||||||
547 SSTORE |
|
||||||
548 POP |
|
||||||
549 POP |
|
||||||
550 JUMP |
|
||||||
551 JUMPDEST |
|
||||||
552 PUSH1 0x00 |
|
||||||
554 DUP1 |
|
||||||
555 SWAP1 |
|
||||||
556 SLOAD |
|
||||||
557 SWAP1 |
|
||||||
558 PUSH2 0x0100 |
|
||||||
561 EXP |
|
||||||
562 SWAP1 |
|
||||||
563 DIV |
|
||||||
564 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
585 AND |
|
||||||
586 DUP2 |
|
||||||
587 JUMP |
|
||||||
588 JUMPDEST |
|
||||||
589 PUSH1 0x00 |
|
||||||
591 DUP1 |
|
||||||
592 SWAP1 |
|
||||||
593 SLOAD |
|
||||||
594 SWAP1 |
|
||||||
595 PUSH2 0x0100 |
|
||||||
598 EXP |
|
||||||
599 SWAP1 |
|
||||||
600 DIV |
|
||||||
601 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
622 AND |
|
||||||
623 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
644 AND |
|
||||||
645 PUSH1 0x40 |
|
||||||
647 MLOAD |
|
||||||
648 PUSH1 0x00 |
|
||||||
650 PUSH1 0x40 |
|
||||||
652 MLOAD |
|
||||||
653 DUP1 |
|
||||||
654 DUP4 |
|
||||||
655 SUB |
|
||||||
656 DUP2 |
|
||||||
657 PUSH1 0x00 |
|
||||||
659 DUP7 |
|
||||||
660 GAS |
|
||||||
661 CALL |
|
||||||
662 SWAP2 |
|
||||||
663 POP |
|
||||||
664 POP |
|
||||||
665 POP |
|
||||||
666 JUMP |
|
||||||
667 JUMPDEST |
|
||||||
668 PUSH1 0x01 |
|
||||||
670 PUSH1 0x00 |
|
||||||
672 SWAP1 |
|
||||||
673 SLOAD |
|
||||||
674 SWAP1 |
|
||||||
675 PUSH2 0x0100 |
|
||||||
678 EXP |
|
||||||
679 SWAP1 |
|
||||||
680 DIV |
|
||||||
681 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
702 AND |
|
||||||
703 DUP2 |
|
||||||
704 JUMP |
|
||||||
705 JUMPDEST |
|
||||||
706 PUSH1 0x01 |
|
||||||
708 PUSH1 0x00 |
|
||||||
710 SWAP1 |
|
||||||
711 SLOAD |
|
||||||
712 SWAP1 |
|
||||||
713 PUSH2 0x0100 |
|
||||||
716 EXP |
|
||||||
717 SWAP1 |
|
||||||
718 DIV |
|
||||||
719 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
740 AND |
|
||||||
741 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
762 AND |
|
||||||
763 PUSH1 0x40 |
|
||||||
765 MLOAD |
|
||||||
766 PUSH1 0x00 |
|
||||||
768 PUSH1 0x40 |
|
||||||
770 MLOAD |
|
||||||
771 DUP1 |
|
||||||
772 DUP4 |
|
||||||
773 SUB |
|
||||||
774 DUP2 |
|
||||||
775 PUSH1 0x00 |
|
||||||
777 DUP7 |
|
||||||
778 GAS |
|
||||||
779 CALL |
|
||||||
780 SWAP2 |
|
||||||
781 POP |
|
||||||
782 POP |
|
||||||
783 POP |
|
||||||
784 JUMP |
|
||||||
785 JUMPDEST |
|
||||||
786 PUSH1 0x00 |
|
||||||
788 DUP1 |
|
||||||
789 SWAP1 |
|
||||||
790 SLOAD |
|
||||||
791 SWAP1 |
|
||||||
792 PUSH2 0x0100 |
|
||||||
795 EXP |
|
||||||
796 SWAP1 |
|
||||||
797 DIV |
|
||||||
798 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
819 AND |
|
||||||
820 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
841 AND |
|
||||||
842 PUSH1 0x40 |
|
||||||
844 MLOAD |
|
||||||
845 PUSH1 0x00 |
|
||||||
847 PUSH1 0x40 |
|
||||||
849 MLOAD |
|
||||||
850 DUP1 |
|
||||||
851 DUP4 |
|
||||||
852 SUB |
|
||||||
853 DUP2 |
|
||||||
854 PUSH1 0x00 |
|
||||||
856 DUP7 |
|
||||||
857 GAS |
|
||||||
858 CALL |
|
||||||
859 SWAP2 |
|
||||||
860 POP |
|
||||||
861 POP |
|
||||||
862 POP |
|
||||||
863 PUSH1 0x00 |
|
||||||
865 PUSH1 0x02 |
|
||||||
867 DUP2 |
|
||||||
868 SWAP1 |
|
||||||
869 SSTORE |
|
||||||
870 POP |
|
||||||
871 JUMP |
|
||||||
872 JUMPDEST |
|
||||||
873 DUP1 |
|
||||||
874 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
895 AND |
|
||||||
896 PUSH1 0x40 |
|
||||||
898 MLOAD |
|
||||||
899 PUSH1 0x00 |
|
||||||
901 PUSH1 0x40 |
|
||||||
903 MLOAD |
|
||||||
904 DUP1 |
|
||||||
905 DUP4 |
|
||||||
906 SUB |
|
||||||
907 DUP2 |
|
||||||
908 PUSH1 0x00 |
|
||||||
910 DUP7 |
|
||||||
911 GAS |
|
||||||
912 CALL |
|
||||||
913 SWAP2 |
|
||||||
914 POP |
|
||||||
915 POP |
|
||||||
916 POP |
|
||||||
917 POP |
|
||||||
918 JUMP |
|
||||||
919 STOP |
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@ |
|||||||
{"error": null, "issues": [{"address": 661, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "This contract executes a message call to to another contract. Make sure that the called contract is trusted and does not execute user-supplied code.", "function": "_function_0x5a6814ec", "swc_id": "107", "title": "Message call to external contract", "type": "Informational"}, {"address": 666, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.", "function": "_function_0x5a6814ec", "swc_id": "104", "title": "Unchecked CALL return value", "type": "Informational"}, {"address": 779, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "This contract executes a message call to an address found at storage slot 1. This storage slot can be written to by calling the function `_function_0x2776b163`. Generally, it is not recommended to call user-supplied addresses using Solidity's call() construct. Note that attackers might leverage reentrancy attacks to exploit race conditions or manipulate this contract's state.", "function": "_function_0xd24b08cc", "swc_id": "107", "title": "Message call to external contract", "type": "Warning"}, {"address": 779, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "Possible transaction order dependence vulnerability: The value or direction of the call statement is determined from a tainted storage location", "function": "_function_0xd24b08cc", "swc_id": "114", "title": "Transaction order dependence", "type": "Warning"}, {"address": 784, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.", "function": "_function_0xd24b08cc", "swc_id": "104", "title": "Unchecked CALL return value", "type": "Informational"}, {"address": 858, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "This contract executes a message call to to another contract. Make sure that the called contract is trusted and does not execute user-supplied code.", "function": "_function_0xe11f493e", "swc_id": "107", "title": "Message call to external contract", "type": "Informational"}, {"address": 869, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The contract account state is changed after an external call. Consider that the called contract could re-enter the function before this state change takes place. This can lead to business logic vulnerabilities.", "function": "_function_0xe11f493e", "swc_id": "107", "title": "State change after external call", "type": "Warning"}, {"address": 871, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.", "function": "_function_0xe11f493e", "swc_id": "104", "title": "Unchecked CALL return value", "type": "Informational"}, {"address": 912, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "This contract executes a message call to an address provided as a function argument. Generally, it is not recommended to call user-supplied addresses using Solidity's call() construct. Note that attackers might leverage reentrancy attacks to exploit race conditions or manipulate this contract's state.", "function": "_function_0xe1d10f79", "swc_id": "107", "title": "Message call to external contract", "type": "Warning"}, {"address": 918, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.", "function": "_function_0xe1d10f79", "swc_id": "104", "title": "Unchecked CALL return value", "type": "Informational"}], "success": true} |
|
@ -1,111 +0,0 @@ |
|||||||
# Analysis results for test-filename.sol |
|
||||||
|
|
||||||
## Message call to external contract |
|
||||||
- SWC ID: 107 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0x5a6814ec` |
|
||||||
- PC address: 661 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
This contract executes a message call to to another contract. Make sure that the called contract is trusted and does not execute user-supplied code. |
|
||||||
|
|
||||||
## Unchecked CALL return value |
|
||||||
- SWC ID: 104 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0x5a6814ec` |
|
||||||
- PC address: 666 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
|
|
||||||
## Message call to external contract |
|
||||||
- SWC ID: 107 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xd24b08cc` |
|
||||||
- PC address: 779 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
This contract executes a message call to an address found at storage slot 1. This storage slot can be written to by calling the function `_function_0x2776b163`. Generally, it is not recommended to call user-supplied addresses using Solidity's call() construct. Note that attackers might leverage reentrancy attacks to exploit race conditions or manipulate this contract's state. |
|
||||||
|
|
||||||
## Transaction order dependence |
|
||||||
- SWC ID: 114 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xd24b08cc` |
|
||||||
- PC address: 779 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
Possible transaction order dependence vulnerability: The value or direction of the call statement is determined from a tainted storage location |
|
||||||
|
|
||||||
## Unchecked CALL return value |
|
||||||
- SWC ID: 104 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xd24b08cc` |
|
||||||
- PC address: 784 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
|
|
||||||
## Message call to external contract |
|
||||||
- SWC ID: 107 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xe11f493e` |
|
||||||
- PC address: 858 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
This contract executes a message call to to another contract. Make sure that the called contract is trusted and does not execute user-supplied code. |
|
||||||
|
|
||||||
## State change after external call |
|
||||||
- SWC ID: 107 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xe11f493e` |
|
||||||
- PC address: 869 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The contract account state is changed after an external call. Consider that the called contract could re-enter the function before this state change takes place. This can lead to business logic vulnerabilities. |
|
||||||
|
|
||||||
## Unchecked CALL return value |
|
||||||
- SWC ID: 104 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xe11f493e` |
|
||||||
- PC address: 871 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
|
|
||||||
## Message call to external contract |
|
||||||
- SWC ID: 107 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xe1d10f79` |
|
||||||
- PC address: 912 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
This contract executes a message call to an address provided as a function argument. Generally, it is not recommended to call user-supplied addresses using Solidity's call() construct. Note that attackers might leverage reentrancy attacks to exploit race conditions or manipulate this contract's state. |
|
||||||
|
|
||||||
## Unchecked CALL return value |
|
||||||
- SWC ID: 104 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xe1d10f79` |
|
||||||
- PC address: 918 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
@ -1,90 +0,0 @@ |
|||||||
==== Message call to external contract ==== |
|
||||||
SWC ID: 107 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0x5a6814ec |
|
||||||
PC address: 661 |
|
||||||
This contract executes a message call to to another contract. Make sure that the called contract is trusted and does not execute user-supplied code. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Unchecked CALL return value ==== |
|
||||||
SWC ID: 104 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0x5a6814ec |
|
||||||
PC address: 666 |
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Message call to external contract ==== |
|
||||||
SWC ID: 107 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xd24b08cc |
|
||||||
PC address: 779 |
|
||||||
This contract executes a message call to an address found at storage slot 1. This storage slot can be written to by calling the function `_function_0x2776b163`. Generally, it is not recommended to call user-supplied addresses using Solidity's call() construct. Note that attackers might leverage reentrancy attacks to exploit race conditions or manipulate this contract's state. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Transaction order dependence ==== |
|
||||||
SWC ID: 114 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xd24b08cc |
|
||||||
PC address: 779 |
|
||||||
Possible transaction order dependence vulnerability: The value or direction of the call statement is determined from a tainted storage location |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Unchecked CALL return value ==== |
|
||||||
SWC ID: 104 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xd24b08cc |
|
||||||
PC address: 784 |
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Message call to external contract ==== |
|
||||||
SWC ID: 107 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xe11f493e |
|
||||||
PC address: 858 |
|
||||||
This contract executes a message call to to another contract. Make sure that the called contract is trusted and does not execute user-supplied code. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== State change after external call ==== |
|
||||||
SWC ID: 107 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xe11f493e |
|
||||||
PC address: 869 |
|
||||||
The contract account state is changed after an external call. Consider that the called contract could re-enter the function before this state change takes place. This can lead to business logic vulnerabilities. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Unchecked CALL return value ==== |
|
||||||
SWC ID: 104 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xe11f493e |
|
||||||
PC address: 871 |
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Message call to external contract ==== |
|
||||||
SWC ID: 107 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xe1d10f79 |
|
||||||
PC address: 912 |
|
||||||
This contract executes a message call to an address provided as a function argument. Generally, it is not recommended to call user-supplied addresses using Solidity's call() construct. Note that attackers might leverage reentrancy attacks to exploit race conditions or manipulate this contract's state. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Unchecked CALL return value ==== |
|
||||||
SWC ID: 104 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xe1d10f79 |
|
||||||
PC address: 918 |
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
-------------------- |
|
||||||
|
|
@ -1,259 +0,0 @@ |
|||||||
0 PUSH1 0x80 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH2 0x004c |
|
||||||
12 JUMPI |
|
||||||
13 PUSH1 0x00 |
|
||||||
15 CALLDATALOAD |
|
||||||
16 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
46 SWAP1 |
|
||||||
47 DIV |
|
||||||
48 PUSH4 0xffffffff |
|
||||||
53 AND |
|
||||||
54 DUP1 |
|
||||||
55 PUSH4 0x06661abd |
|
||||||
60 EQ |
|
||||||
61 PUSH2 0x0051 |
|
||||||
64 JUMPI |
|
||||||
65 DUP1 |
|
||||||
66 PUSH4 0x83f12fec |
|
||||||
71 EQ |
|
||||||
72 PUSH2 0x007c |
|
||||||
75 JUMPI |
|
||||||
76 JUMPDEST |
|
||||||
77 PUSH1 0x00 |
|
||||||
79 DUP1 |
|
||||||
80 REVERT |
|
||||||
81 JUMPDEST |
|
||||||
82 CALLVALUE |
|
||||||
83 DUP1 |
|
||||||
84 ISZERO |
|
||||||
85 PUSH2 0x005d |
|
||||||
88 JUMPI |
|
||||||
89 PUSH1 0x00 |
|
||||||
91 DUP1 |
|
||||||
92 REVERT |
|
||||||
93 JUMPDEST |
|
||||||
94 POP |
|
||||||
95 PUSH2 0x0066 |
|
||||||
98 PUSH2 0x0104 |
|
||||||
101 JUMP |
|
||||||
102 JUMPDEST |
|
||||||
103 PUSH1 0x40 |
|
||||||
105 MLOAD |
|
||||||
106 DUP1 |
|
||||||
107 DUP3 |
|
||||||
108 DUP2 |
|
||||||
109 MSTORE |
|
||||||
110 PUSH1 0x20 |
|
||||||
112 ADD |
|
||||||
113 SWAP2 |
|
||||||
114 POP |
|
||||||
115 POP |
|
||||||
116 PUSH1 0x40 |
|
||||||
118 MLOAD |
|
||||||
119 DUP1 |
|
||||||
120 SWAP2 |
|
||||||
121 SUB |
|
||||||
122 SWAP1 |
|
||||||
123 RETURN |
|
||||||
124 JUMPDEST |
|
||||||
125 CALLVALUE |
|
||||||
126 DUP1 |
|
||||||
127 ISZERO |
|
||||||
128 PUSH2 0x0088 |
|
||||||
131 JUMPI |
|
||||||
132 PUSH1 0x00 |
|
||||||
134 DUP1 |
|
||||||
135 REVERT |
|
||||||
136 JUMPDEST |
|
||||||
137 POP |
|
||||||
138 PUSH2 0x00ea |
|
||||||
141 PUSH1 0x04 |
|
||||||
143 DUP1 |
|
||||||
144 CALLDATASIZE |
|
||||||
145 SUB |
|
||||||
146 DUP2 |
|
||||||
147 ADD |
|
||||||
148 SWAP1 |
|
||||||
149 DUP1 |
|
||||||
150 DUP1 |
|
||||||
151 CALLDATALOAD |
|
||||||
152 SWAP1 |
|
||||||
153 PUSH1 0x20 |
|
||||||
155 ADD |
|
||||||
156 SWAP1 |
|
||||||
157 DUP3 |
|
||||||
158 ADD |
|
||||||
159 DUP1 |
|
||||||
160 CALLDATALOAD |
|
||||||
161 SWAP1 |
|
||||||
162 PUSH1 0x20 |
|
||||||
164 ADD |
|
||||||
165 SWAP1 |
|
||||||
166 DUP1 |
|
||||||
167 DUP1 |
|
||||||
168 PUSH1 0x20 |
|
||||||
170 MUL |
|
||||||
171 PUSH1 0x20 |
|
||||||
173 ADD |
|
||||||
174 PUSH1 0x40 |
|
||||||
176 MLOAD |
|
||||||
177 SWAP1 |
|
||||||
178 DUP2 |
|
||||||
179 ADD |
|
||||||
180 PUSH1 0x40 |
|
||||||
182 MSTORE |
|
||||||
183 DUP1 |
|
||||||
184 SWAP4 |
|
||||||
185 SWAP3 |
|
||||||
186 SWAP2 |
|
||||||
187 SWAP1 |
|
||||||
188 DUP2 |
|
||||||
189 DUP2 |
|
||||||
190 MSTORE |
|
||||||
191 PUSH1 0x20 |
|
||||||
193 ADD |
|
||||||
194 DUP4 |
|
||||||
195 DUP4 |
|
||||||
196 PUSH1 0x20 |
|
||||||
198 MUL |
|
||||||
199 DUP1 |
|
||||||
200 DUP3 |
|
||||||
201 DUP5 |
|
||||||
202 CALLDATACOPY |
|
||||||
203 DUP3 |
|
||||||
204 ADD |
|
||||||
205 SWAP2 |
|
||||||
206 POP |
|
||||||
207 POP |
|
||||||
208 POP |
|
||||||
209 POP |
|
||||||
210 POP |
|
||||||
211 POP |
|
||||||
212 SWAP2 |
|
||||||
213 SWAP3 |
|
||||||
214 SWAP2 |
|
||||||
215 SWAP3 |
|
||||||
216 SWAP1 |
|
||||||
217 DUP1 |
|
||||||
218 CALLDATALOAD |
|
||||||
219 SWAP1 |
|
||||||
220 PUSH1 0x20 |
|
||||||
222 ADD |
|
||||||
223 SWAP1 |
|
||||||
224 SWAP3 |
|
||||||
225 SWAP2 |
|
||||||
226 SWAP1 |
|
||||||
227 POP |
|
||||||
228 POP |
|
||||||
229 POP |
|
||||||
230 PUSH2 0x010a |
|
||||||
233 JUMP |
|
||||||
234 JUMPDEST |
|
||||||
235 PUSH1 0x40 |
|
||||||
237 MLOAD |
|
||||||
238 DUP1 |
|
||||||
239 DUP3 |
|
||||||
240 ISZERO |
|
||||||
241 ISZERO |
|
||||||
242 ISZERO |
|
||||||
243 ISZERO |
|
||||||
244 DUP2 |
|
||||||
245 MSTORE |
|
||||||
246 PUSH1 0x20 |
|
||||||
248 ADD |
|
||||||
249 SWAP2 |
|
||||||
250 POP |
|
||||||
251 POP |
|
||||||
252 PUSH1 0x40 |
|
||||||
254 MLOAD |
|
||||||
255 DUP1 |
|
||||||
256 SWAP2 |
|
||||||
257 SUB |
|
||||||
258 SWAP1 |
|
||||||
259 RETURN |
|
||||||
260 JUMPDEST |
|
||||||
261 PUSH1 0x00 |
|
||||||
263 SLOAD |
|
||||||
264 DUP2 |
|
||||||
265 JUMP |
|
||||||
266 JUMPDEST |
|
||||||
267 PUSH1 0x00 |
|
||||||
269 DUP1 |
|
||||||
270 PUSH1 0x00 |
|
||||||
272 DUP5 |
|
||||||
273 MLOAD |
|
||||||
274 SWAP2 |
|
||||||
275 POP |
|
||||||
276 DUP4 |
|
||||||
277 DUP3 |
|
||||||
278 MUL |
|
||||||
279 SWAP1 |
|
||||||
280 POP |
|
||||||
281 PUSH1 0x00 |
|
||||||
283 DUP3 |
|
||||||
284 GT |
|
||||||
285 DUP1 |
|
||||||
286 ISZERO |
|
||||||
287 PUSH2 0x0129 |
|
||||||
290 JUMPI |
|
||||||
291 POP |
|
||||||
292 PUSH1 0x14 |
|
||||||
294 DUP3 |
|
||||||
295 GT |
|
||||||
296 ISZERO |
|
||||||
297 JUMPDEST |
|
||||||
298 ISZERO |
|
||||||
299 ISZERO |
|
||||||
300 PUSH2 0x0134 |
|
||||||
303 JUMPI |
|
||||||
304 PUSH1 0x00 |
|
||||||
306 DUP1 |
|
||||||
307 REVERT |
|
||||||
308 JUMPDEST |
|
||||||
309 DUP1 |
|
||||||
310 PUSH1 0x01 |
|
||||||
312 PUSH1 0x00 |
|
||||||
314 CALLER |
|
||||||
315 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
336 AND |
|
||||||
337 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
358 AND |
|
||||||
359 DUP2 |
|
||||||
360 MSTORE |
|
||||||
361 PUSH1 0x20 |
|
||||||
363 ADD |
|
||||||
364 SWAP1 |
|
||||||
365 DUP2 |
|
||||||
366 MSTORE |
|
||||||
367 PUSH1 0x20 |
|
||||||
369 ADD |
|
||||||
370 PUSH1 0x00 |
|
||||||
372 SHA3 |
|
||||||
373 PUSH1 0x00 |
|
||||||
375 DUP3 |
|
||||||
376 DUP3 |
|
||||||
377 SLOAD |
|
||||||
378 SUB |
|
||||||
379 SWAP3 |
|
||||||
380 POP |
|
||||||
381 POP |
|
||||||
382 DUP2 |
|
||||||
383 SWAP1 |
|
||||||
384 SSTORE |
|
||||||
385 POP |
|
||||||
386 PUSH1 0x01 |
|
||||||
388 SWAP3 |
|
||||||
389 POP |
|
||||||
390 POP |
|
||||||
391 POP |
|
||||||
392 SWAP3 |
|
||||||
393 SWAP2 |
|
||||||
394 POP |
|
||||||
395 POP |
|
||||||
396 JUMP |
|
||||||
397 STOP |
|
File diff suppressed because one or more lines are too long
@ -1,420 +0,0 @@ |
|||||||
0 PUSH1 0x80 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH2 0x0078 |
|
||||||
12 JUMPI |
|
||||||
13 PUSH1 0x00 |
|
||||||
15 CALLDATALOAD |
|
||||||
16 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
46 SWAP1 |
|
||||||
47 DIV |
|
||||||
48 PUSH4 0xffffffff |
|
||||||
53 AND |
|
||||||
54 DUP1 |
|
||||||
55 PUSH4 0x12065fe0 |
|
||||||
60 EQ |
|
||||||
61 PUSH2 0x007d |
|
||||||
64 JUMPI |
|
||||||
65 DUP1 |
|
||||||
66 PUSH4 0x27e235e3 |
|
||||||
71 EQ |
|
||||||
72 PUSH2 0x00a8 |
|
||||||
75 JUMPI |
|
||||||
76 DUP1 |
|
||||||
77 PUSH4 0x56885cd8 |
|
||||||
82 EQ |
|
||||||
83 PUSH2 0x00ff |
|
||||||
86 JUMPI |
|
||||||
87 DUP1 |
|
||||||
88 PUSH4 0x6c343ffe |
|
||||||
93 EQ |
|
||||||
94 PUSH2 0x0116 |
|
||||||
97 JUMPI |
|
||||||
98 DUP1 |
|
||||||
99 PUSH4 0x8da5cb5b |
|
||||||
104 EQ |
|
||||||
105 PUSH2 0x012d |
|
||||||
108 JUMPI |
|
||||||
109 DUP1 |
|
||||||
110 PUSH4 0xe8b5e51f |
|
||||||
115 EQ |
|
||||||
116 PUSH2 0x0184 |
|
||||||
119 JUMPI |
|
||||||
120 JUMPDEST |
|
||||||
121 PUSH1 0x00 |
|
||||||
123 DUP1 |
|
||||||
124 REVERT |
|
||||||
125 JUMPDEST |
|
||||||
126 CALLVALUE |
|
||||||
127 DUP1 |
|
||||||
128 ISZERO |
|
||||||
129 PUSH2 0x0089 |
|
||||||
132 JUMPI |
|
||||||
133 PUSH1 0x00 |
|
||||||
135 DUP1 |
|
||||||
136 REVERT |
|
||||||
137 JUMPDEST |
|
||||||
138 POP |
|
||||||
139 PUSH2 0x0092 |
|
||||||
142 PUSH2 0x018e |
|
||||||
145 JUMP |
|
||||||
146 JUMPDEST |
|
||||||
147 PUSH1 0x40 |
|
||||||
149 MLOAD |
|
||||||
150 DUP1 |
|
||||||
151 DUP3 |
|
||||||
152 DUP2 |
|
||||||
153 MSTORE |
|
||||||
154 PUSH1 0x20 |
|
||||||
156 ADD |
|
||||||
157 SWAP2 |
|
||||||
158 POP |
|
||||||
159 POP |
|
||||||
160 PUSH1 0x40 |
|
||||||
162 MLOAD |
|
||||||
163 DUP1 |
|
||||||
164 SWAP2 |
|
||||||
165 SUB |
|
||||||
166 SWAP1 |
|
||||||
167 RETURN |
|
||||||
168 JUMPDEST |
|
||||||
169 CALLVALUE |
|
||||||
170 DUP1 |
|
||||||
171 ISZERO |
|
||||||
172 PUSH2 0x00b4 |
|
||||||
175 JUMPI |
|
||||||
176 PUSH1 0x00 |
|
||||||
178 DUP1 |
|
||||||
179 REVERT |
|
||||||
180 JUMPDEST |
|
||||||
181 POP |
|
||||||
182 PUSH2 0x00e9 |
|
||||||
185 PUSH1 0x04 |
|
||||||
187 DUP1 |
|
||||||
188 CALLDATASIZE |
|
||||||
189 SUB |
|
||||||
190 DUP2 |
|
||||||
191 ADD |
|
||||||
192 SWAP1 |
|
||||||
193 DUP1 |
|
||||||
194 DUP1 |
|
||||||
195 CALLDATALOAD |
|
||||||
196 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
217 AND |
|
||||||
218 SWAP1 |
|
||||||
219 PUSH1 0x20 |
|
||||||
221 ADD |
|
||||||
222 SWAP1 |
|
||||||
223 SWAP3 |
|
||||||
224 SWAP2 |
|
||||||
225 SWAP1 |
|
||||||
226 POP |
|
||||||
227 POP |
|
||||||
228 POP |
|
||||||
229 PUSH2 0x01d4 |
|
||||||
232 JUMP |
|
||||||
233 JUMPDEST |
|
||||||
234 PUSH1 0x40 |
|
||||||
236 MLOAD |
|
||||||
237 DUP1 |
|
||||||
238 DUP3 |
|
||||||
239 DUP2 |
|
||||||
240 MSTORE |
|
||||||
241 PUSH1 0x20 |
|
||||||
243 ADD |
|
||||||
244 SWAP2 |
|
||||||
245 POP |
|
||||||
246 POP |
|
||||||
247 PUSH1 0x40 |
|
||||||
249 MLOAD |
|
||||||
250 DUP1 |
|
||||||
251 SWAP2 |
|
||||||
252 SUB |
|
||||||
253 SWAP1 |
|
||||||
254 RETURN |
|
||||||
255 JUMPDEST |
|
||||||
256 CALLVALUE |
|
||||||
257 DUP1 |
|
||||||
258 ISZERO |
|
||||||
259 PUSH2 0x010b |
|
||||||
262 JUMPI |
|
||||||
263 PUSH1 0x00 |
|
||||||
265 DUP1 |
|
||||||
266 REVERT |
|
||||||
267 JUMPDEST |
|
||||||
268 POP |
|
||||||
269 PUSH2 0x0114 |
|
||||||
272 PUSH2 0x01ec |
|
||||||
275 JUMP |
|
||||||
276 JUMPDEST |
|
||||||
277 STOP |
|
||||||
278 JUMPDEST |
|
||||||
279 CALLVALUE |
|
||||||
280 DUP1 |
|
||||||
281 ISZERO |
|
||||||
282 PUSH2 0x0122 |
|
||||||
285 JUMPI |
|
||||||
286 PUSH1 0x00 |
|
||||||
288 DUP1 |
|
||||||
289 REVERT |
|
||||||
290 JUMPDEST |
|
||||||
291 POP |
|
||||||
292 PUSH2 0x012b |
|
||||||
295 PUSH2 0x022f |
|
||||||
298 JUMP |
|
||||||
299 JUMPDEST |
|
||||||
300 STOP |
|
||||||
301 JUMPDEST |
|
||||||
302 CALLVALUE |
|
||||||
303 DUP1 |
|
||||||
304 ISZERO |
|
||||||
305 PUSH2 0x0139 |
|
||||||
308 JUMPI |
|
||||||
309 PUSH1 0x00 |
|
||||||
311 DUP1 |
|
||||||
312 REVERT |
|
||||||
313 JUMPDEST |
|
||||||
314 POP |
|
||||||
315 PUSH2 0x0142 |
|
||||||
318 PUSH2 0x02eb |
|
||||||
321 JUMP |
|
||||||
322 JUMPDEST |
|
||||||
323 PUSH1 0x40 |
|
||||||
325 MLOAD |
|
||||||
326 DUP1 |
|
||||||
327 DUP3 |
|
||||||
328 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
349 AND |
|
||||||
350 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
371 AND |
|
||||||
372 DUP2 |
|
||||||
373 MSTORE |
|
||||||
374 PUSH1 0x20 |
|
||||||
376 ADD |
|
||||||
377 SWAP2 |
|
||||||
378 POP |
|
||||||
379 POP |
|
||||||
380 PUSH1 0x40 |
|
||||||
382 MLOAD |
|
||||||
383 DUP1 |
|
||||||
384 SWAP2 |
|
||||||
385 SUB |
|
||||||
386 SWAP1 |
|
||||||
387 RETURN |
|
||||||
388 JUMPDEST |
|
||||||
389 PUSH2 0x018c |
|
||||||
392 PUSH2 0x0311 |
|
||||||
395 JUMP |
|
||||||
396 JUMPDEST |
|
||||||
397 STOP |
|
||||||
398 JUMPDEST |
|
||||||
399 PUSH1 0x00 |
|
||||||
401 DUP1 |
|
||||||
402 PUSH1 0x00 |
|
||||||
404 CALLER |
|
||||||
405 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
426 AND |
|
||||||
427 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
448 AND |
|
||||||
449 DUP2 |
|
||||||
450 MSTORE |
|
||||||
451 PUSH1 0x20 |
|
||||||
453 ADD |
|
||||||
454 SWAP1 |
|
||||||
455 DUP2 |
|
||||||
456 MSTORE |
|
||||||
457 PUSH1 0x20 |
|
||||||
459 ADD |
|
||||||
460 PUSH1 0x00 |
|
||||||
462 SHA3 |
|
||||||
463 SLOAD |
|
||||||
464 SWAP1 |
|
||||||
465 POP |
|
||||||
466 SWAP1 |
|
||||||
467 JUMP |
|
||||||
468 JUMPDEST |
|
||||||
469 PUSH1 0x00 |
|
||||||
471 PUSH1 0x20 |
|
||||||
473 MSTORE |
|
||||||
474 DUP1 |
|
||||||
475 PUSH1 0x00 |
|
||||||
477 MSTORE |
|
||||||
478 PUSH1 0x40 |
|
||||||
480 PUSH1 0x00 |
|
||||||
482 SHA3 |
|
||||||
483 PUSH1 0x00 |
|
||||||
485 SWAP2 |
|
||||||
486 POP |
|
||||||
487 SWAP1 |
|
||||||
488 POP |
|
||||||
489 SLOAD |
|
||||||
490 DUP2 |
|
||||||
491 JUMP |
|
||||||
492 JUMPDEST |
|
||||||
493 CALLER |
|
||||||
494 PUSH1 0x01 |
|
||||||
496 PUSH1 0x00 |
|
||||||
498 PUSH2 0x0100 |
|
||||||
501 EXP |
|
||||||
502 DUP2 |
|
||||||
503 SLOAD |
|
||||||
504 DUP2 |
|
||||||
505 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
526 MUL |
|
||||||
527 NOT |
|
||||||
528 AND |
|
||||||
529 SWAP1 |
|
||||||
530 DUP4 |
|
||||||
531 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
552 AND |
|
||||||
553 MUL |
|
||||||
554 OR |
|
||||||
555 SWAP1 |
|
||||||
556 SSTORE |
|
||||||
557 POP |
|
||||||
558 JUMP |
|
||||||
559 JUMPDEST |
|
||||||
560 PUSH1 0x01 |
|
||||||
562 PUSH1 0x00 |
|
||||||
564 SWAP1 |
|
||||||
565 SLOAD |
|
||||||
566 SWAP1 |
|
||||||
567 PUSH2 0x0100 |
|
||||||
570 EXP |
|
||||||
571 SWAP1 |
|
||||||
572 DIV |
|
||||||
573 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
594 AND |
|
||||||
595 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
616 AND |
|
||||||
617 CALLER |
|
||||||
618 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
639 AND |
|
||||||
640 EQ |
|
||||||
641 ISZERO |
|
||||||
642 ISZERO |
|
||||||
643 PUSH2 0x028b |
|
||||||
646 JUMPI |
|
||||||
647 PUSH1 0x00 |
|
||||||
649 DUP1 |
|
||||||
650 REVERT |
|
||||||
651 JUMPDEST |
|
||||||
652 CALLER |
|
||||||
653 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
674 AND |
|
||||||
675 PUSH2 0x08fc |
|
||||||
678 ADDRESS |
|
||||||
679 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
700 AND |
|
||||||
701 BALANCE |
|
||||||
702 SWAP1 |
|
||||||
703 DUP2 |
|
||||||
704 ISZERO |
|
||||||
705 MUL |
|
||||||
706 SWAP1 |
|
||||||
707 PUSH1 0x40 |
|
||||||
709 MLOAD |
|
||||||
710 PUSH1 0x00 |
|
||||||
712 PUSH1 0x40 |
|
||||||
714 MLOAD |
|
||||||
715 DUP1 |
|
||||||
716 DUP4 |
|
||||||
717 SUB |
|
||||||
718 DUP2 |
|
||||||
719 DUP6 |
|
||||||
720 DUP9 |
|
||||||
721 DUP9 |
|
||||||
722 CALL |
|
||||||
723 SWAP4 |
|
||||||
724 POP |
|
||||||
725 POP |
|
||||||
726 POP |
|
||||||
727 POP |
|
||||||
728 ISZERO |
|
||||||
729 DUP1 |
|
||||||
730 ISZERO |
|
||||||
731 PUSH2 0x02e8 |
|
||||||
734 JUMPI |
|
||||||
735 RETURNDATASIZE |
|
||||||
736 PUSH1 0x00 |
|
||||||
738 DUP1 |
|
||||||
739 RETURNDATACOPY |
|
||||||
740 RETURNDATASIZE |
|
||||||
741 PUSH1 0x00 |
|
||||||
743 REVERT |
|
||||||
744 JUMPDEST |
|
||||||
745 POP |
|
||||||
746 JUMP |
|
||||||
747 JUMPDEST |
|
||||||
748 PUSH1 0x01 |
|
||||||
750 PUSH1 0x00 |
|
||||||
752 SWAP1 |
|
||||||
753 SLOAD |
|
||||||
754 SWAP1 |
|
||||||
755 PUSH2 0x0100 |
|
||||||
758 EXP |
|
||||||
759 SWAP1 |
|
||||||
760 DIV |
|
||||||
761 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
782 AND |
|
||||||
783 DUP2 |
|
||||||
784 JUMP |
|
||||||
785 JUMPDEST |
|
||||||
786 PUSH1 0x02 |
|
||||||
788 SLOAD |
|
||||||
789 CALLVALUE |
|
||||||
790 GT |
|
||||||
791 DUP1 |
|
||||||
792 ISZERO |
|
||||||
793 PUSH2 0x0323 |
|
||||||
796 JUMPI |
|
||||||
797 POP |
|
||||||
798 PUSH1 0x03 |
|
||||||
800 SLOAD |
|
||||||
801 CALLVALUE |
|
||||||
802 LT |
|
||||||
803 JUMPDEST |
|
||||||
804 ISZERO |
|
||||||
805 ISZERO |
|
||||||
806 PUSH2 0x032e |
|
||||||
809 JUMPI |
|
||||||
810 PUSH1 0x00 |
|
||||||
812 DUP1 |
|
||||||
813 REVERT |
|
||||||
814 JUMPDEST |
|
||||||
815 CALLVALUE |
|
||||||
816 PUSH1 0x00 |
|
||||||
818 DUP1 |
|
||||||
819 CALLER |
|
||||||
820 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
841 AND |
|
||||||
842 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
863 AND |
|
||||||
864 DUP2 |
|
||||||
865 MSTORE |
|
||||||
866 PUSH1 0x20 |
|
||||||
868 ADD |
|
||||||
869 SWAP1 |
|
||||||
870 DUP2 |
|
||||||
871 MSTORE |
|
||||||
872 PUSH1 0x20 |
|
||||||
874 ADD |
|
||||||
875 PUSH1 0x00 |
|
||||||
877 SHA3 |
|
||||||
878 PUSH1 0x00 |
|
||||||
880 DUP3 |
|
||||||
881 DUP3 |
|
||||||
882 SLOAD |
|
||||||
883 ADD |
|
||||||
884 SWAP3 |
|
||||||
885 POP |
|
||||||
886 POP |
|
||||||
887 DUP2 |
|
||||||
888 SWAP1 |
|
||||||
889 SSTORE |
|
||||||
890 POP |
|
||||||
891 JUMP |
|
||||||
892 STOP |
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@ |
|||||||
{"error": null, "issues": [{"address": 722, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "It seems that an attacker is able to execute an call instruction, this can mean that the attacker is able to extract funds out of the contract.", "function": "withdrawfunds()", "swc_id": "105", "title": "Ether send", "type": "Warning"}, {"address": 883, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The arithmetic operation can result in integer overflow.\n", "function": "invest()", "swc_id": "101", "title": "Integer Overflow", "type": "Warning"}], "success": true} |
|
@ -1,23 +0,0 @@ |
|||||||
# Analysis results for test-filename.sol |
|
||||||
|
|
||||||
## Ether send |
|
||||||
- SWC ID: 105 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `withdrawfunds()` |
|
||||||
- PC address: 722 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
It seems that an attacker is able to execute an call instruction, this can mean that the attacker is able to extract funds out of the contract. |
|
||||||
|
|
||||||
## Integer Overflow |
|
||||||
- SWC ID: 101 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `invest()` |
|
||||||
- PC address: 883 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The arithmetic operation can result in integer overflow. |
|
@ -1,19 +0,0 @@ |
|||||||
==== Ether send ==== |
|
||||||
SWC ID: 105 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: withdrawfunds() |
|
||||||
PC address: 722 |
|
||||||
It seems that an attacker is able to execute an call instruction, this can mean that the attacker is able to extract funds out of the contract. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Integer Overflow ==== |
|
||||||
SWC ID: 101 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: invest() |
|
||||||
PC address: 883 |
|
||||||
The arithmetic operation can result in integer overflow. |
|
||||||
|
|
||||||
-------------------- |
|
||||||
|
|
@ -1,392 +0,0 @@ |
|||||||
0 PUSH1 0x60 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH2 0x008e |
|
||||||
12 JUMPI |
|
||||||
13 PUSH1 0x00 |
|
||||||
15 CALLDATALOAD |
|
||||||
16 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
46 SWAP1 |
|
||||||
47 DIV |
|
||||||
48 PUSH4 0xffffffff |
|
||||||
53 AND |
|
||||||
54 DUP1 |
|
||||||
55 PUSH4 0x01d4277c |
|
||||||
60 EQ |
|
||||||
61 PUSH2 0x0093 |
|
||||||
64 JUMPI |
|
||||||
65 DUP1 |
|
||||||
66 PUSH4 0x546455b5 |
|
||||||
71 EQ |
|
||||||
72 PUSH2 0x00b6 |
|
||||||
75 JUMPI |
|
||||||
76 DUP1 |
|
||||||
77 PUSH4 0x78375f14 |
|
||||||
82 EQ |
|
||||||
83 PUSH2 0x00d9 |
|
||||||
86 JUMPI |
|
||||||
87 DUP1 |
|
||||||
88 PUSH4 0x92dd38ea |
|
||||||
93 EQ |
|
||||||
94 PUSH2 0x00fc |
|
||||||
97 JUMPI |
|
||||||
98 DUP1 |
|
||||||
99 PUSH4 0xa08299f1 |
|
||||||
104 EQ |
|
||||||
105 PUSH2 0x011f |
|
||||||
108 JUMPI |
|
||||||
109 DUP1 |
|
||||||
110 PUSH4 0xb34c3610 |
|
||||||
115 EQ |
|
||||||
116 PUSH2 0x0142 |
|
||||||
119 JUMPI |
|
||||||
120 DUP1 |
|
||||||
121 PUSH4 0xb630d706 |
|
||||||
126 EQ |
|
||||||
127 PUSH2 0x0157 |
|
||||||
130 JUMPI |
|
||||||
131 DUP1 |
|
||||||
132 PUSH4 0xf44f13d8 |
|
||||||
137 EQ |
|
||||||
138 PUSH2 0x017a |
|
||||||
141 JUMPI |
|
||||||
142 JUMPDEST |
|
||||||
143 PUSH1 0x00 |
|
||||||
145 DUP1 |
|
||||||
146 REVERT |
|
||||||
147 JUMPDEST |
|
||||||
148 CALLVALUE |
|
||||||
149 ISZERO |
|
||||||
150 PUSH2 0x009e |
|
||||||
153 JUMPI |
|
||||||
154 PUSH1 0x00 |
|
||||||
156 DUP1 |
|
||||||
157 REVERT |
|
||||||
158 JUMPDEST |
|
||||||
159 PUSH2 0x00b4 |
|
||||||
162 PUSH1 0x04 |
|
||||||
164 DUP1 |
|
||||||
165 DUP1 |
|
||||||
166 CALLDATALOAD |
|
||||||
167 SWAP1 |
|
||||||
168 PUSH1 0x20 |
|
||||||
170 ADD |
|
||||||
171 SWAP1 |
|
||||||
172 SWAP2 |
|
||||||
173 SWAP1 |
|
||||||
174 POP |
|
||||||
175 POP |
|
||||||
176 PUSH2 0x018f |
|
||||||
179 JUMP |
|
||||||
180 JUMPDEST |
|
||||||
181 STOP |
|
||||||
182 JUMPDEST |
|
||||||
183 CALLVALUE |
|
||||||
184 ISZERO |
|
||||||
185 PUSH2 0x00c1 |
|
||||||
188 JUMPI |
|
||||||
189 PUSH1 0x00 |
|
||||||
191 DUP1 |
|
||||||
192 REVERT |
|
||||||
193 JUMPDEST |
|
||||||
194 PUSH2 0x00d7 |
|
||||||
197 PUSH1 0x04 |
|
||||||
199 DUP1 |
|
||||||
200 DUP1 |
|
||||||
201 CALLDATALOAD |
|
||||||
202 SWAP1 |
|
||||||
203 PUSH1 0x20 |
|
||||||
205 ADD |
|
||||||
206 SWAP1 |
|
||||||
207 SWAP2 |
|
||||||
208 SWAP1 |
|
||||||
209 POP |
|
||||||
210 POP |
|
||||||
211 PUSH2 0x01b2 |
|
||||||
214 JUMP |
|
||||||
215 JUMPDEST |
|
||||||
216 STOP |
|
||||||
217 JUMPDEST |
|
||||||
218 CALLVALUE |
|
||||||
219 ISZERO |
|
||||||
220 PUSH2 0x00e4 |
|
||||||
223 JUMPI |
|
||||||
224 PUSH1 0x00 |
|
||||||
226 DUP1 |
|
||||||
227 REVERT |
|
||||||
228 JUMPDEST |
|
||||||
229 PUSH2 0x00fa |
|
||||||
232 PUSH1 0x04 |
|
||||||
234 DUP1 |
|
||||||
235 DUP1 |
|
||||||
236 CALLDATALOAD |
|
||||||
237 SWAP1 |
|
||||||
238 PUSH1 0x20 |
|
||||||
240 ADD |
|
||||||
241 SWAP1 |
|
||||||
242 SWAP2 |
|
||||||
243 SWAP1 |
|
||||||
244 POP |
|
||||||
245 POP |
|
||||||
246 PUSH2 0x01c2 |
|
||||||
249 JUMP |
|
||||||
250 JUMPDEST |
|
||||||
251 STOP |
|
||||||
252 JUMPDEST |
|
||||||
253 CALLVALUE |
|
||||||
254 ISZERO |
|
||||||
255 PUSH2 0x0107 |
|
||||||
258 JUMPI |
|
||||||
259 PUSH1 0x00 |
|
||||||
261 DUP1 |
|
||||||
262 REVERT |
|
||||||
263 JUMPDEST |
|
||||||
264 PUSH2 0x011d |
|
||||||
267 PUSH1 0x04 |
|
||||||
269 DUP1 |
|
||||||
270 DUP1 |
|
||||||
271 CALLDATALOAD |
|
||||||
272 SWAP1 |
|
||||||
273 PUSH1 0x20 |
|
||||||
275 ADD |
|
||||||
276 SWAP1 |
|
||||||
277 SWAP2 |
|
||||||
278 SWAP1 |
|
||||||
279 POP |
|
||||||
280 POP |
|
||||||
281 PUSH2 0x01d5 |
|
||||||
284 JUMP |
|
||||||
285 JUMPDEST |
|
||||||
286 STOP |
|
||||||
287 JUMPDEST |
|
||||||
288 CALLVALUE |
|
||||||
289 ISZERO |
|
||||||
290 PUSH2 0x012a |
|
||||||
293 JUMPI |
|
||||||
294 PUSH1 0x00 |
|
||||||
296 DUP1 |
|
||||||
297 REVERT |
|
||||||
298 JUMPDEST |
|
||||||
299 PUSH2 0x0140 |
|
||||||
302 PUSH1 0x04 |
|
||||||
304 DUP1 |
|
||||||
305 DUP1 |
|
||||||
306 CALLDATALOAD |
|
||||||
307 SWAP1 |
|
||||||
308 PUSH1 0x20 |
|
||||||
310 ADD |
|
||||||
311 SWAP1 |
|
||||||
312 SWAP2 |
|
||||||
313 SWAP1 |
|
||||||
314 POP |
|
||||||
315 POP |
|
||||||
316 PUSH2 0x01ed |
|
||||||
319 JUMP |
|
||||||
320 JUMPDEST |
|
||||||
321 STOP |
|
||||||
322 JUMPDEST |
|
||||||
323 CALLVALUE |
|
||||||
324 ISZERO |
|
||||||
325 PUSH2 0x014d |
|
||||||
328 JUMPI |
|
||||||
329 PUSH1 0x00 |
|
||||||
331 DUP1 |
|
||||||
332 REVERT |
|
||||||
333 JUMPDEST |
|
||||||
334 PUSH2 0x0155 |
|
||||||
337 PUSH2 0x0202 |
|
||||||
340 JUMP |
|
||||||
341 JUMPDEST |
|
||||||
342 STOP |
|
||||||
343 JUMPDEST |
|
||||||
344 CALLVALUE |
|
||||||
345 ISZERO |
|
||||||
346 PUSH2 0x0162 |
|
||||||
349 JUMPI |
|
||||||
350 PUSH1 0x00 |
|
||||||
352 DUP1 |
|
||||||
353 REVERT |
|
||||||
354 JUMPDEST |
|
||||||
355 PUSH2 0x0178 |
|
||||||
358 PUSH1 0x04 |
|
||||||
360 DUP1 |
|
||||||
361 DUP1 |
|
||||||
362 CALLDATALOAD |
|
||||||
363 SWAP1 |
|
||||||
364 PUSH1 0x20 |
|
||||||
366 ADD |
|
||||||
367 SWAP1 |
|
||||||
368 SWAP2 |
|
||||||
369 SWAP1 |
|
||||||
370 POP |
|
||||||
371 POP |
|
||||||
372 PUSH2 0x0217 |
|
||||||
375 JUMP |
|
||||||
376 JUMPDEST |
|
||||||
377 STOP |
|
||||||
378 JUMPDEST |
|
||||||
379 CALLVALUE |
|
||||||
380 ISZERO |
|
||||||
381 PUSH2 0x0185 |
|
||||||
384 JUMPI |
|
||||||
385 PUSH1 0x00 |
|
||||||
387 DUP1 |
|
||||||
388 REVERT |
|
||||||
389 JUMPDEST |
|
||||||
390 PUSH2 0x018d |
|
||||||
393 PUSH2 0x0235 |
|
||||||
396 JUMP |
|
||||||
397 JUMPDEST |
|
||||||
398 STOP |
|
||||||
399 JUMPDEST |
|
||||||
400 PUSH1 0x00 |
|
||||||
402 PUSH1 0x08 |
|
||||||
404 DUP3 |
|
||||||
405 LT |
|
||||||
406 ISZERO |
|
||||||
407 PUSH2 0x01ae |
|
||||||
410 JUMPI |
|
||||||
411 PUSH1 0x00 |
|
||||||
413 DUP3 |
|
||||||
414 PUSH1 0x08 |
|
||||||
416 DUP2 |
|
||||||
417 LT |
|
||||||
418 ISZERO |
|
||||||
419 ISZERO |
|
||||||
420 PUSH2 0x01a9 |
|
||||||
423 JUMPI |
|
||||||
424 ASSERT_FAIL |
|
||||||
425 JUMPDEST |
|
||||||
426 ADD |
|
||||||
427 SLOAD |
|
||||||
428 SWAP1 |
|
||||||
429 POP |
|
||||||
430 JUMPDEST |
|
||||||
431 POP |
|
||||||
432 POP |
|
||||||
433 JUMP |
|
||||||
434 JUMPDEST |
|
||||||
435 PUSH1 0x17 |
|
||||||
437 DUP2 |
|
||||||
438 EQ |
|
||||||
439 ISZERO |
|
||||||
440 ISZERO |
|
||||||
441 ISZERO |
|
||||||
442 PUSH2 0x01bf |
|
||||||
445 JUMPI |
|
||||||
446 ASSERT_FAIL |
|
||||||
447 JUMPDEST |
|
||||||
448 POP |
|
||||||
449 JUMP |
|
||||||
450 JUMPDEST |
|
||||||
451 PUSH1 0x17 |
|
||||||
453 DUP2 |
|
||||||
454 EQ |
|
||||||
455 ISZERO |
|
||||||
456 ISZERO |
|
||||||
457 ISZERO |
|
||||||
458 PUSH2 0x01d2 |
|
||||||
461 JUMPI |
|
||||||
462 PUSH1 0x00 |
|
||||||
464 DUP1 |
|
||||||
465 REVERT |
|
||||||
466 JUMPDEST |
|
||||||
467 POP |
|
||||||
468 JUMP |
|
||||||
469 JUMPDEST |
|
||||||
470 PUSH1 0x00 |
|
||||||
472 DUP1 |
|
||||||
473 DUP3 |
|
||||||
474 PUSH1 0x08 |
|
||||||
476 DUP2 |
|
||||||
477 LT |
|
||||||
478 ISZERO |
|
||||||
479 ISZERO |
|
||||||
480 PUSH2 0x01e5 |
|
||||||
483 JUMPI |
|
||||||
484 ASSERT_FAIL |
|
||||||
485 JUMPDEST |
|
||||||
486 ADD |
|
||||||
487 SLOAD |
|
||||||
488 SWAP1 |
|
||||||
489 POP |
|
||||||
490 POP |
|
||||||
491 POP |
|
||||||
492 JUMP |
|
||||||
493 JUMPDEST |
|
||||||
494 PUSH1 0x00 |
|
||||||
496 DUP2 |
|
||||||
497 PUSH1 0x01 |
|
||||||
499 DUP2 |
|
||||||
500 ISZERO |
|
||||||
501 ISZERO |
|
||||||
502 PUSH2 0x01fb |
|
||||||
505 JUMPI |
|
||||||
506 ASSERT_FAIL |
|
||||||
507 JUMPDEST |
|
||||||
508 DIV |
|
||||||
509 SWAP1 |
|
||||||
510 POP |
|
||||||
511 POP |
|
||||||
512 POP |
|
||||||
513 JUMP |
|
||||||
514 JUMPDEST |
|
||||||
515 PUSH1 0x00 |
|
||||||
517 PUSH1 0x01 |
|
||||||
519 SWAP1 |
|
||||||
520 POP |
|
||||||
521 PUSH1 0x00 |
|
||||||
523 DUP2 |
|
||||||
524 EQ |
|
||||||
525 ISZERO |
|
||||||
526 ISZERO |
|
||||||
527 PUSH2 0x0214 |
|
||||||
530 JUMPI |
|
||||||
531 ASSERT_FAIL |
|
||||||
532 JUMPDEST |
|
||||||
533 POP |
|
||||||
534 JUMP |
|
||||||
535 JUMPDEST |
|
||||||
536 PUSH1 0x00 |
|
||||||
538 DUP1 |
|
||||||
539 DUP3 |
|
||||||
540 GT |
|
||||||
541 ISZERO |
|
||||||
542 PUSH2 0x0231 |
|
||||||
545 JUMPI |
|
||||||
546 DUP2 |
|
||||||
547 PUSH1 0x01 |
|
||||||
549 DUP2 |
|
||||||
550 ISZERO |
|
||||||
551 ISZERO |
|
||||||
552 PUSH2 0x022d |
|
||||||
555 JUMPI |
|
||||||
556 ASSERT_FAIL |
|
||||||
557 JUMPDEST |
|
||||||
558 DIV |
|
||||||
559 SWAP1 |
|
||||||
560 POP |
|
||||||
561 JUMPDEST |
|
||||||
562 POP |
|
||||||
563 POP |
|
||||||
564 JUMP |
|
||||||
565 JUMPDEST |
|
||||||
566 PUSH1 0x00 |
|
||||||
568 PUSH1 0x01 |
|
||||||
570 SWAP1 |
|
||||||
571 POP |
|
||||||
572 PUSH1 0x00 |
|
||||||
574 DUP2 |
|
||||||
575 GT |
|
||||||
576 ISZERO |
|
||||||
577 ISZERO |
|
||||||
578 PUSH2 0x0247 |
|
||||||
581 JUMPI |
|
||||||
582 ASSERT_FAIL |
|
||||||
583 JUMPDEST |
|
||||||
584 POP |
|
||||||
585 JUMP |
|
||||||
586 STOP |
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@ |
|||||||
{"error": null, "issues": [{"address": 446, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. ", "function": "_function_0x546455b5", "swc_id": "110", "title": "Exception state", "type": "Informational"}, {"address": 484, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. ", "function": "_function_0x92dd38ea", "swc_id": "110", "title": "Exception state", "type": "Informational"}, {"address": 506, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. ", "function": "_function_0xa08299f1", "swc_id": "110", "title": "Exception state", "type": "Informational"}, {"address": 531, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. ", "function": "_function_0xb34c3610", "swc_id": "110", "title": "Exception state", "type": "Informational"}], "success": true} |
|
@ -1,45 +0,0 @@ |
|||||||
# Analysis results for test-filename.sol |
|
||||||
|
|
||||||
## Exception state |
|
||||||
- SWC ID: 110 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0x546455b5` |
|
||||||
- PC address: 446 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. |
|
||||||
|
|
||||||
## Exception state |
|
||||||
- SWC ID: 110 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0x92dd38ea` |
|
||||||
- PC address: 484 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. |
|
||||||
|
|
||||||
## Exception state |
|
||||||
- SWC ID: 110 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xa08299f1` |
|
||||||
- PC address: 506 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. |
|
||||||
|
|
||||||
## Exception state |
|
||||||
- SWC ID: 110 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xb34c3610` |
|
||||||
- PC address: 531 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. |
|
@ -1,36 +0,0 @@ |
|||||||
==== Exception state ==== |
|
||||||
SWC ID: 110 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0x546455b5 |
|
||||||
PC address: 446 |
|
||||||
A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Exception state ==== |
|
||||||
SWC ID: 110 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0x92dd38ea |
|
||||||
PC address: 484 |
|
||||||
A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Exception state ==== |
|
||||||
SWC ID: 110 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xa08299f1 |
|
||||||
PC address: 506 |
|
||||||
A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Exception state ==== |
|
||||||
SWC ID: 110 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xb34c3610 |
|
||||||
PC address: 531 |
|
||||||
A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking. |
|
||||||
-------------------- |
|
||||||
|
|
@ -1,435 +0,0 @@ |
|||||||
0 PUSH1 0x60 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH2 0x006d |
|
||||||
12 JUMPI |
|
||||||
13 PUSH1 0x00 |
|
||||||
15 CALLDATALOAD |
|
||||||
16 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
46 SWAP1 |
|
||||||
47 DIV |
|
||||||
48 PUSH4 0xffffffff |
|
||||||
53 AND |
|
||||||
54 DUP1 |
|
||||||
55 PUSH4 0x141f32ff |
|
||||||
60 EQ |
|
||||||
61 PUSH2 0x0072 |
|
||||||
64 JUMPI |
|
||||||
65 DUP1 |
|
||||||
66 PUSH4 0x2e52d606 |
|
||||||
71 EQ |
|
||||||
72 PUSH2 0x00b4 |
|
||||||
75 JUMPI |
|
||||||
76 DUP1 |
|
||||||
77 PUSH4 0x67e404ce |
|
||||||
82 EQ |
|
||||||
83 PUSH2 0x00dd |
|
||||||
86 JUMPI |
|
||||||
87 DUP1 |
|
||||||
88 PUSH4 0x9b58bc26 |
|
||||||
93 EQ |
|
||||||
94 PUSH2 0x0132 |
|
||||||
97 JUMPI |
|
||||||
98 DUP1 |
|
||||||
99 PUSH4 0xeea4c864 |
|
||||||
104 EQ |
|
||||||
105 PUSH2 0x0174 |
|
||||||
108 JUMPI |
|
||||||
109 JUMPDEST |
|
||||||
110 PUSH1 0x00 |
|
||||||
112 DUP1 |
|
||||||
113 REVERT |
|
||||||
114 JUMPDEST |
|
||||||
115 CALLVALUE |
|
||||||
116 ISZERO |
|
||||||
117 PUSH2 0x007d |
|
||||||
120 JUMPI |
|
||||||
121 PUSH1 0x00 |
|
||||||
123 DUP1 |
|
||||||
124 REVERT |
|
||||||
125 JUMPDEST |
|
||||||
126 PUSH2 0x00b2 |
|
||||||
129 PUSH1 0x04 |
|
||||||
131 DUP1 |
|
||||||
132 DUP1 |
|
||||||
133 CALLDATALOAD |
|
||||||
134 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
155 AND |
|
||||||
156 SWAP1 |
|
||||||
157 PUSH1 0x20 |
|
||||||
159 ADD |
|
||||||
160 SWAP1 |
|
||||||
161 SWAP2 |
|
||||||
162 SWAP1 |
|
||||||
163 DUP1 |
|
||||||
164 CALLDATALOAD |
|
||||||
165 SWAP1 |
|
||||||
166 PUSH1 0x20 |
|
||||||
168 ADD |
|
||||||
169 SWAP1 |
|
||||||
170 SWAP2 |
|
||||||
171 SWAP1 |
|
||||||
172 POP |
|
||||||
173 POP |
|
||||||
174 PUSH2 0x01b6 |
|
||||||
177 JUMP |
|
||||||
178 JUMPDEST |
|
||||||
179 STOP |
|
||||||
180 JUMPDEST |
|
||||||
181 CALLVALUE |
|
||||||
182 ISZERO |
|
||||||
183 PUSH2 0x00bf |
|
||||||
186 JUMPI |
|
||||||
187 PUSH1 0x00 |
|
||||||
189 DUP1 |
|
||||||
190 REVERT |
|
||||||
191 JUMPDEST |
|
||||||
192 PUSH2 0x00c7 |
|
||||||
195 PUSH2 0x0273 |
|
||||||
198 JUMP |
|
||||||
199 JUMPDEST |
|
||||||
200 PUSH1 0x40 |
|
||||||
202 MLOAD |
|
||||||
203 DUP1 |
|
||||||
204 DUP3 |
|
||||||
205 DUP2 |
|
||||||
206 MSTORE |
|
||||||
207 PUSH1 0x20 |
|
||||||
209 ADD |
|
||||||
210 SWAP2 |
|
||||||
211 POP |
|
||||||
212 POP |
|
||||||
213 PUSH1 0x40 |
|
||||||
215 MLOAD |
|
||||||
216 DUP1 |
|
||||||
217 SWAP2 |
|
||||||
218 SUB |
|
||||||
219 SWAP1 |
|
||||||
220 RETURN |
|
||||||
221 JUMPDEST |
|
||||||
222 CALLVALUE |
|
||||||
223 ISZERO |
|
||||||
224 PUSH2 0x00e8 |
|
||||||
227 JUMPI |
|
||||||
228 PUSH1 0x00 |
|
||||||
230 DUP1 |
|
||||||
231 REVERT |
|
||||||
232 JUMPDEST |
|
||||||
233 PUSH2 0x00f0 |
|
||||||
236 PUSH2 0x0279 |
|
||||||
239 JUMP |
|
||||||
240 JUMPDEST |
|
||||||
241 PUSH1 0x40 |
|
||||||
243 MLOAD |
|
||||||
244 DUP1 |
|
||||||
245 DUP3 |
|
||||||
246 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
267 AND |
|
||||||
268 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
289 AND |
|
||||||
290 DUP2 |
|
||||||
291 MSTORE |
|
||||||
292 PUSH1 0x20 |
|
||||||
294 ADD |
|
||||||
295 SWAP2 |
|
||||||
296 POP |
|
||||||
297 POP |
|
||||||
298 PUSH1 0x40 |
|
||||||
300 MLOAD |
|
||||||
301 DUP1 |
|
||||||
302 SWAP2 |
|
||||||
303 SUB |
|
||||||
304 SWAP1 |
|
||||||
305 RETURN |
|
||||||
306 JUMPDEST |
|
||||||
307 CALLVALUE |
|
||||||
308 ISZERO |
|
||||||
309 PUSH2 0x013d |
|
||||||
312 JUMPI |
|
||||||
313 PUSH1 0x00 |
|
||||||
315 DUP1 |
|
||||||
316 REVERT |
|
||||||
317 JUMPDEST |
|
||||||
318 PUSH2 0x0172 |
|
||||||
321 PUSH1 0x04 |
|
||||||
323 DUP1 |
|
||||||
324 DUP1 |
|
||||||
325 CALLDATALOAD |
|
||||||
326 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
347 AND |
|
||||||
348 SWAP1 |
|
||||||
349 PUSH1 0x20 |
|
||||||
351 ADD |
|
||||||
352 SWAP1 |
|
||||||
353 SWAP2 |
|
||||||
354 SWAP1 |
|
||||||
355 DUP1 |
|
||||||
356 CALLDATALOAD |
|
||||||
357 SWAP1 |
|
||||||
358 PUSH1 0x20 |
|
||||||
360 ADD |
|
||||||
361 SWAP1 |
|
||||||
362 SWAP2 |
|
||||||
363 SWAP1 |
|
||||||
364 POP |
|
||||||
365 POP |
|
||||||
366 PUSH2 0x029f |
|
||||||
369 JUMP |
|
||||||
370 JUMPDEST |
|
||||||
371 STOP |
|
||||||
372 JUMPDEST |
|
||||||
373 CALLVALUE |
|
||||||
374 ISZERO |
|
||||||
375 PUSH2 0x017f |
|
||||||
378 JUMPI |
|
||||||
379 PUSH1 0x00 |
|
||||||
381 DUP1 |
|
||||||
382 REVERT |
|
||||||
383 JUMPDEST |
|
||||||
384 PUSH2 0x01b4 |
|
||||||
387 PUSH1 0x04 |
|
||||||
389 DUP1 |
|
||||||
390 DUP1 |
|
||||||
391 CALLDATALOAD |
|
||||||
392 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
413 AND |
|
||||||
414 SWAP1 |
|
||||||
415 PUSH1 0x20 |
|
||||||
417 ADD |
|
||||||
418 SWAP1 |
|
||||||
419 SWAP2 |
|
||||||
420 SWAP1 |
|
||||||
421 DUP1 |
|
||||||
422 CALLDATALOAD |
|
||||||
423 SWAP1 |
|
||||||
424 PUSH1 0x20 |
|
||||||
426 ADD |
|
||||||
427 SWAP1 |
|
||||||
428 SWAP2 |
|
||||||
429 SWAP1 |
|
||||||
430 POP |
|
||||||
431 POP |
|
||||||
432 PUSH2 0x035a |
|
||||||
435 JUMP |
|
||||||
436 JUMPDEST |
|
||||||
437 STOP |
|
||||||
438 JUMPDEST |
|
||||||
439 DUP2 |
|
||||||
440 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
461 AND |
|
||||||
462 PUSH1 0x40 |
|
||||||
464 MLOAD |
|
||||||
465 DUP1 |
|
||||||
466 DUP1 |
|
||||||
467 PUSH32 0x7365744e2875696e743235362900000000000000000000000000000000000000 |
|
||||||
500 DUP2 |
|
||||||
501 MSTORE |
|
||||||
502 POP |
|
||||||
503 PUSH1 0x0d |
|
||||||
505 ADD |
|
||||||
506 SWAP1 |
|
||||||
507 POP |
|
||||||
508 PUSH1 0x40 |
|
||||||
510 MLOAD |
|
||||||
511 DUP1 |
|
||||||
512 SWAP2 |
|
||||||
513 SUB |
|
||||||
514 SWAP1 |
|
||||||
515 SHA3 |
|
||||||
516 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
546 SWAP1 |
|
||||||
547 DIV |
|
||||||
548 DUP3 |
|
||||||
549 PUSH1 0x40 |
|
||||||
551 MLOAD |
|
||||||
552 DUP3 |
|
||||||
553 PUSH4 0xffffffff |
|
||||||
558 AND |
|
||||||
559 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
589 MUL |
|
||||||
590 DUP2 |
|
||||||
591 MSTORE |
|
||||||
592 PUSH1 0x04 |
|
||||||
594 ADD |
|
||||||
595 DUP1 |
|
||||||
596 DUP3 |
|
||||||
597 DUP2 |
|
||||||
598 MSTORE |
|
||||||
599 PUSH1 0x20 |
|
||||||
601 ADD |
|
||||||
602 SWAP2 |
|
||||||
603 POP |
|
||||||
604 POP |
|
||||||
605 PUSH1 0x00 |
|
||||||
607 PUSH1 0x40 |
|
||||||
609 MLOAD |
|
||||||
610 DUP1 |
|
||||||
611 DUP4 |
|
||||||
612 SUB |
|
||||||
613 DUP2 |
|
||||||
614 PUSH1 0x00 |
|
||||||
616 DUP8 |
|
||||||
617 GAS |
|
||||||
618 CALLCODE |
|
||||||
619 SWAP3 |
|
||||||
620 POP |
|
||||||
621 POP |
|
||||||
622 POP |
|
||||||
623 POP |
|
||||||
624 POP |
|
||||||
625 POP |
|
||||||
626 JUMP |
|
||||||
627 JUMPDEST |
|
||||||
628 PUSH1 0x00 |
|
||||||
630 SLOAD |
|
||||||
631 DUP2 |
|
||||||
632 JUMP |
|
||||||
633 JUMPDEST |
|
||||||
634 PUSH1 0x01 |
|
||||||
636 PUSH1 0x00 |
|
||||||
638 SWAP1 |
|
||||||
639 SLOAD |
|
||||||
640 SWAP1 |
|
||||||
641 PUSH2 0x0100 |
|
||||||
644 EXP |
|
||||||
645 SWAP1 |
|
||||||
646 DIV |
|
||||||
647 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
668 AND |
|
||||||
669 DUP2 |
|
||||||
670 JUMP |
|
||||||
671 JUMPDEST |
|
||||||
672 DUP2 |
|
||||||
673 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
694 AND |
|
||||||
695 PUSH1 0x40 |
|
||||||
697 MLOAD |
|
||||||
698 DUP1 |
|
||||||
699 DUP1 |
|
||||||
700 PUSH32 0x7365744e2875696e743235362900000000000000000000000000000000000000 |
|
||||||
733 DUP2 |
|
||||||
734 MSTORE |
|
||||||
735 POP |
|
||||||
736 PUSH1 0x0d |
|
||||||
738 ADD |
|
||||||
739 SWAP1 |
|
||||||
740 POP |
|
||||||
741 PUSH1 0x40 |
|
||||||
743 MLOAD |
|
||||||
744 DUP1 |
|
||||||
745 SWAP2 |
|
||||||
746 SUB |
|
||||||
747 SWAP1 |
|
||||||
748 SHA3 |
|
||||||
749 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
779 SWAP1 |
|
||||||
780 DIV |
|
||||||
781 DUP3 |
|
||||||
782 PUSH1 0x40 |
|
||||||
784 MLOAD |
|
||||||
785 DUP3 |
|
||||||
786 PUSH4 0xffffffff |
|
||||||
791 AND |
|
||||||
792 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
822 MUL |
|
||||||
823 DUP2 |
|
||||||
824 MSTORE |
|
||||||
825 PUSH1 0x04 |
|
||||||
827 ADD |
|
||||||
828 DUP1 |
|
||||||
829 DUP3 |
|
||||||
830 DUP2 |
|
||||||
831 MSTORE |
|
||||||
832 PUSH1 0x20 |
|
||||||
834 ADD |
|
||||||
835 SWAP2 |
|
||||||
836 POP |
|
||||||
837 POP |
|
||||||
838 PUSH1 0x00 |
|
||||||
840 PUSH1 0x40 |
|
||||||
842 MLOAD |
|
||||||
843 DUP1 |
|
||||||
844 DUP4 |
|
||||||
845 SUB |
|
||||||
846 DUP2 |
|
||||||
847 DUP7 |
|
||||||
848 GAS |
|
||||||
849 DELEGATECALL |
|
||||||
850 SWAP3 |
|
||||||
851 POP |
|
||||||
852 POP |
|
||||||
853 POP |
|
||||||
854 POP |
|
||||||
855 POP |
|
||||||
856 POP |
|
||||||
857 JUMP |
|
||||||
858 JUMPDEST |
|
||||||
859 DUP2 |
|
||||||
860 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
881 AND |
|
||||||
882 PUSH1 0x40 |
|
||||||
884 MLOAD |
|
||||||
885 DUP1 |
|
||||||
886 DUP1 |
|
||||||
887 PUSH32 0x7365744e2875696e743235362900000000000000000000000000000000000000 |
|
||||||
920 DUP2 |
|
||||||
921 MSTORE |
|
||||||
922 POP |
|
||||||
923 PUSH1 0x0d |
|
||||||
925 ADD |
|
||||||
926 SWAP1 |
|
||||||
927 POP |
|
||||||
928 PUSH1 0x40 |
|
||||||
930 MLOAD |
|
||||||
931 DUP1 |
|
||||||
932 SWAP2 |
|
||||||
933 SUB |
|
||||||
934 SWAP1 |
|
||||||
935 SHA3 |
|
||||||
936 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
966 SWAP1 |
|
||||||
967 DIV |
|
||||||
968 DUP3 |
|
||||||
969 PUSH1 0x40 |
|
||||||
971 MLOAD |
|
||||||
972 DUP3 |
|
||||||
973 PUSH4 0xffffffff |
|
||||||
978 AND |
|
||||||
979 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
1009 MUL |
|
||||||
1010 DUP2 |
|
||||||
1011 MSTORE |
|
||||||
1012 PUSH1 0x04 |
|
||||||
1014 ADD |
|
||||||
1015 DUP1 |
|
||||||
1016 DUP3 |
|
||||||
1017 DUP2 |
|
||||||
1018 MSTORE |
|
||||||
1019 PUSH1 0x20 |
|
||||||
1021 ADD |
|
||||||
1022 SWAP2 |
|
||||||
1023 POP |
|
||||||
1024 POP |
|
||||||
1025 PUSH1 0x00 |
|
||||||
1027 PUSH1 0x40 |
|
||||||
1029 MLOAD |
|
||||||
1030 DUP1 |
|
||||||
1031 DUP4 |
|
||||||
1032 SUB |
|
||||||
1033 DUP2 |
|
||||||
1034 PUSH1 0x00 |
|
||||||
1036 DUP8 |
|
||||||
1037 GAS |
|
||||||
1038 CALL |
|
||||||
1039 SWAP3 |
|
||||||
1040 POP |
|
||||||
1041 POP |
|
||||||
1042 POP |
|
||||||
1043 POP |
|
||||||
1044 POP |
|
||||||
1045 POP |
|
||||||
1046 JUMP |
|
||||||
1047 STOP |
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@ |
|||||||
{"error": null, "issues": [{"address": 626, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.", "function": "_function_0x141f32ff", "swc_id": "104", "title": "Unchecked CALL return value", "type": "Informational"}, {"address": 857, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.", "function": "_function_0x9b58bc26", "swc_id": "104", "title": "Unchecked CALL return value", "type": "Informational"}, {"address": 1038, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "This contract executes a message call to an address provided as a function argument. Generally, it is not recommended to call user-supplied addresses using Solidity's call() construct. Note that attackers might leverage reentrancy attacks to exploit race conditions or manipulate this contract's state.", "function": "_function_0xeea4c864", "swc_id": "107", "title": "Message call to external contract", "type": "Warning"}, {"address": 1046, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.", "function": "_function_0xeea4c864", "swc_id": "104", "title": "Unchecked CALL return value", "type": "Informational"}], "success": true} |
|
@ -1,45 +0,0 @@ |
|||||||
# Analysis results for test-filename.sol |
|
||||||
|
|
||||||
## Unchecked CALL return value |
|
||||||
- SWC ID: 104 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0x141f32ff` |
|
||||||
- PC address: 626 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
|
|
||||||
## Unchecked CALL return value |
|
||||||
- SWC ID: 104 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0x9b58bc26` |
|
||||||
- PC address: 857 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
|
|
||||||
## Message call to external contract |
|
||||||
- SWC ID: 107 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xeea4c864` |
|
||||||
- PC address: 1038 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
This contract executes a message call to an address provided as a function argument. Generally, it is not recommended to call user-supplied addresses using Solidity's call() construct. Note that attackers might leverage reentrancy attacks to exploit race conditions or manipulate this contract's state. |
|
||||||
|
|
||||||
## Unchecked CALL return value |
|
||||||
- SWC ID: 104 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xeea4c864` |
|
||||||
- PC address: 1046 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
@ -1,36 +0,0 @@ |
|||||||
==== Unchecked CALL return value ==== |
|
||||||
SWC ID: 104 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0x141f32ff |
|
||||||
PC address: 626 |
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Unchecked CALL return value ==== |
|
||||||
SWC ID: 104 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0x9b58bc26 |
|
||||||
PC address: 857 |
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Message call to external contract ==== |
|
||||||
SWC ID: 107 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xeea4c864 |
|
||||||
PC address: 1038 |
|
||||||
This contract executes a message call to an address provided as a function argument. Generally, it is not recommended to call user-supplied addresses using Solidity's call() construct. Note that attackers might leverage reentrancy attacks to exploit race conditions or manipulate this contract's state. |
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Unchecked CALL return value ==== |
|
||||||
SWC ID: 104 |
|
||||||
Type: Informational |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0xeea4c864 |
|
||||||
PC address: 1046 |
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
||||||
-------------------- |
|
||||||
|
|
@ -1,253 +0,0 @@ |
|||||||
0 PUSH1 0x60 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH2 0x004c |
|
||||||
12 JUMPI |
|
||||||
13 PUSH1 0x00 |
|
||||||
15 CALLDATALOAD |
|
||||||
16 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
46 SWAP1 |
|
||||||
47 DIV |
|
||||||
48 PUSH4 0xffffffff |
|
||||||
53 AND |
|
||||||
54 DUP1 |
|
||||||
55 PUSH4 0x27e235e3 |
|
||||||
60 EQ |
|
||||||
61 PUSH2 0x0051 |
|
||||||
64 JUMPI |
|
||||||
65 DUP1 |
|
||||||
66 PUSH4 0x412664ae |
|
||||||
71 EQ |
|
||||||
72 PUSH2 0x009e |
|
||||||
75 JUMPI |
|
||||||
76 JUMPDEST |
|
||||||
77 PUSH1 0x00 |
|
||||||
79 DUP1 |
|
||||||
80 REVERT |
|
||||||
81 JUMPDEST |
|
||||||
82 CALLVALUE |
|
||||||
83 ISZERO |
|
||||||
84 PUSH2 0x005c |
|
||||||
87 JUMPI |
|
||||||
88 PUSH1 0x00 |
|
||||||
90 DUP1 |
|
||||||
91 REVERT |
|
||||||
92 JUMPDEST |
|
||||||
93 PUSH2 0x0088 |
|
||||||
96 PUSH1 0x04 |
|
||||||
98 DUP1 |
|
||||||
99 DUP1 |
|
||||||
100 CALLDATALOAD |
|
||||||
101 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
122 AND |
|
||||||
123 SWAP1 |
|
||||||
124 PUSH1 0x20 |
|
||||||
126 ADD |
|
||||||
127 SWAP1 |
|
||||||
128 SWAP2 |
|
||||||
129 SWAP1 |
|
||||||
130 POP |
|
||||||
131 POP |
|
||||||
132 PUSH2 0x00f8 |
|
||||||
135 JUMP |
|
||||||
136 JUMPDEST |
|
||||||
137 PUSH1 0x40 |
|
||||||
139 MLOAD |
|
||||||
140 DUP1 |
|
||||||
141 DUP3 |
|
||||||
142 DUP2 |
|
||||||
143 MSTORE |
|
||||||
144 PUSH1 0x20 |
|
||||||
146 ADD |
|
||||||
147 SWAP2 |
|
||||||
148 POP |
|
||||||
149 POP |
|
||||||
150 PUSH1 0x40 |
|
||||||
152 MLOAD |
|
||||||
153 DUP1 |
|
||||||
154 SWAP2 |
|
||||||
155 SUB |
|
||||||
156 SWAP1 |
|
||||||
157 RETURN |
|
||||||
158 JUMPDEST |
|
||||||
159 CALLVALUE |
|
||||||
160 ISZERO |
|
||||||
161 PUSH2 0x00a9 |
|
||||||
164 JUMPI |
|
||||||
165 PUSH1 0x00 |
|
||||||
167 DUP1 |
|
||||||
168 REVERT |
|
||||||
169 JUMPDEST |
|
||||||
170 PUSH2 0x00de |
|
||||||
173 PUSH1 0x04 |
|
||||||
175 DUP1 |
|
||||||
176 DUP1 |
|
||||||
177 CALLDATALOAD |
|
||||||
178 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
199 AND |
|
||||||
200 SWAP1 |
|
||||||
201 PUSH1 0x20 |
|
||||||
203 ADD |
|
||||||
204 SWAP1 |
|
||||||
205 SWAP2 |
|
||||||
206 SWAP1 |
|
||||||
207 DUP1 |
|
||||||
208 CALLDATALOAD |
|
||||||
209 SWAP1 |
|
||||||
210 PUSH1 0x20 |
|
||||||
212 ADD |
|
||||||
213 SWAP1 |
|
||||||
214 SWAP2 |
|
||||||
215 SWAP1 |
|
||||||
216 POP |
|
||||||
217 POP |
|
||||||
218 PUSH2 0x0110 |
|
||||||
221 JUMP |
|
||||||
222 JUMPDEST |
|
||||||
223 PUSH1 0x40 |
|
||||||
225 MLOAD |
|
||||||
226 DUP1 |
|
||||||
227 DUP3 |
|
||||||
228 ISZERO |
|
||||||
229 ISZERO |
|
||||||
230 ISZERO |
|
||||||
231 ISZERO |
|
||||||
232 DUP2 |
|
||||||
233 MSTORE |
|
||||||
234 PUSH1 0x20 |
|
||||||
236 ADD |
|
||||||
237 SWAP2 |
|
||||||
238 POP |
|
||||||
239 POP |
|
||||||
240 PUSH1 0x40 |
|
||||||
242 MLOAD |
|
||||||
243 DUP1 |
|
||||||
244 SWAP2 |
|
||||||
245 SUB |
|
||||||
246 SWAP1 |
|
||||||
247 RETURN |
|
||||||
248 JUMPDEST |
|
||||||
249 PUSH1 0x00 |
|
||||||
251 PUSH1 0x20 |
|
||||||
253 MSTORE |
|
||||||
254 DUP1 |
|
||||||
255 PUSH1 0x00 |
|
||||||
257 MSTORE |
|
||||||
258 PUSH1 0x40 |
|
||||||
260 PUSH1 0x00 |
|
||||||
262 SHA3 |
|
||||||
263 PUSH1 0x00 |
|
||||||
265 SWAP2 |
|
||||||
266 POP |
|
||||||
267 SWAP1 |
|
||||||
268 POP |
|
||||||
269 SLOAD |
|
||||||
270 DUP2 |
|
||||||
271 JUMP |
|
||||||
272 JUMPDEST |
|
||||||
273 PUSH1 0x00 |
|
||||||
275 DUP2 |
|
||||||
276 PUSH1 0x00 |
|
||||||
278 DUP1 |
|
||||||
279 CALLER |
|
||||||
280 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
301 AND |
|
||||||
302 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
323 AND |
|
||||||
324 DUP2 |
|
||||||
325 MSTORE |
|
||||||
326 PUSH1 0x20 |
|
||||||
328 ADD |
|
||||||
329 SWAP1 |
|
||||||
330 DUP2 |
|
||||||
331 MSTORE |
|
||||||
332 PUSH1 0x20 |
|
||||||
334 ADD |
|
||||||
335 PUSH1 0x00 |
|
||||||
337 SHA3 |
|
||||||
338 SLOAD |
|
||||||
339 LT |
|
||||||
340 ISZERO |
|
||||||
341 PUSH2 0x0161 |
|
||||||
344 JUMPI |
|
||||||
345 PUSH1 0x00 |
|
||||||
347 SWAP1 |
|
||||||
348 POP |
|
||||||
349 PUSH2 0x01fe |
|
||||||
352 JUMP |
|
||||||
353 JUMPDEST |
|
||||||
354 DUP2 |
|
||||||
355 PUSH1 0x00 |
|
||||||
357 DUP1 |
|
||||||
358 CALLER |
|
||||||
359 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
380 AND |
|
||||||
381 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
402 AND |
|
||||||
403 DUP2 |
|
||||||
404 MSTORE |
|
||||||
405 PUSH1 0x20 |
|
||||||
407 ADD |
|
||||||
408 SWAP1 |
|
||||||
409 DUP2 |
|
||||||
410 MSTORE |
|
||||||
411 PUSH1 0x20 |
|
||||||
413 ADD |
|
||||||
414 PUSH1 0x00 |
|
||||||
416 SHA3 |
|
||||||
417 PUSH1 0x00 |
|
||||||
419 DUP3 |
|
||||||
420 DUP3 |
|
||||||
421 SLOAD |
|
||||||
422 SUB |
|
||||||
423 SWAP3 |
|
||||||
424 POP |
|
||||||
425 POP |
|
||||||
426 DUP2 |
|
||||||
427 SWAP1 |
|
||||||
428 SSTORE |
|
||||||
429 POP |
|
||||||
430 DUP2 |
|
||||||
431 PUSH1 0x00 |
|
||||||
433 DUP1 |
|
||||||
434 DUP6 |
|
||||||
435 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
456 AND |
|
||||||
457 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
478 AND |
|
||||||
479 DUP2 |
|
||||||
480 MSTORE |
|
||||||
481 PUSH1 0x20 |
|
||||||
483 ADD |
|
||||||
484 SWAP1 |
|
||||||
485 DUP2 |
|
||||||
486 MSTORE |
|
||||||
487 PUSH1 0x20 |
|
||||||
489 ADD |
|
||||||
490 PUSH1 0x00 |
|
||||||
492 SHA3 |
|
||||||
493 PUSH1 0x00 |
|
||||||
495 DUP3 |
|
||||||
496 DUP3 |
|
||||||
497 SLOAD |
|
||||||
498 ADD |
|
||||||
499 SWAP3 |
|
||||||
500 POP |
|
||||||
501 POP |
|
||||||
502 DUP2 |
|
||||||
503 SWAP1 |
|
||||||
504 SSTORE |
|
||||||
505 POP |
|
||||||
506 PUSH1 0x00 |
|
||||||
508 SWAP1 |
|
||||||
509 POP |
|
||||||
510 JUMPDEST |
|
||||||
511 SWAP3 |
|
||||||
512 SWAP2 |
|
||||||
513 POP |
|
||||||
514 POP |
|
||||||
515 JUMP |
|
||||||
516 STOP |
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@ |
|||||||
{"error": null, "issues": [], "success": true} |
|
@ -1,3 +0,0 @@ |
|||||||
# Analysis results for None |
|
||||||
|
|
||||||
The analysis was completed successfully. No issues were detected. |
|
@ -1 +0,0 @@ |
|||||||
The analysis was completed successfully. No issues were detected. |
|
@ -1,77 +0,0 @@ |
|||||||
0 PUSH1 0x60 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH1 0x3f |
|
||||||
11 JUMPI |
|
||||||
12 PUSH1 0x00 |
|
||||||
14 CALLDATALOAD |
|
||||||
15 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
45 SWAP1 |
|
||||||
46 DIV |
|
||||||
47 PUSH4 0xffffffff |
|
||||||
52 AND |
|
||||||
53 DUP1 |
|
||||||
54 PUSH4 0x8a4068dd |
|
||||||
59 EQ |
|
||||||
60 PUSH1 0x44 |
|
||||||
62 JUMPI |
|
||||||
63 JUMPDEST |
|
||||||
64 PUSH1 0x00 |
|
||||||
66 DUP1 |
|
||||||
67 REVERT |
|
||||||
68 JUMPDEST |
|
||||||
69 CALLVALUE |
|
||||||
70 ISZERO |
|
||||||
71 PUSH1 0x4e |
|
||||||
73 JUMPI |
|
||||||
74 PUSH1 0x00 |
|
||||||
76 DUP1 |
|
||||||
77 REVERT |
|
||||||
78 JUMPDEST |
|
||||||
79 PUSH1 0x54 |
|
||||||
81 PUSH1 0x56 |
|
||||||
83 JUMP |
|
||||||
84 JUMPDEST |
|
||||||
85 STOP |
|
||||||
86 JUMPDEST |
|
||||||
87 CALLER |
|
||||||
88 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
109 AND |
|
||||||
110 PUSH2 0x08fc |
|
||||||
113 PUSH8 0x1bc16d674ec80000 |
|
||||||
122 SWAP1 |
|
||||||
123 DUP2 |
|
||||||
124 ISZERO |
|
||||||
125 MUL |
|
||||||
126 SWAP1 |
|
||||||
127 PUSH1 0x40 |
|
||||||
129 MLOAD |
|
||||||
130 PUSH1 0x00 |
|
||||||
132 PUSH1 0x40 |
|
||||||
134 MLOAD |
|
||||||
135 DUP1 |
|
||||||
136 DUP4 |
|
||||||
137 SUB |
|
||||||
138 DUP2 |
|
||||||
139 DUP6 |
|
||||||
140 DUP9 |
|
||||||
141 DUP9 |
|
||||||
142 CALL |
|
||||||
143 SWAP4 |
|
||||||
144 POP |
|
||||||
145 POP |
|
||||||
146 POP |
|
||||||
147 POP |
|
||||||
148 ISZERO |
|
||||||
149 ISZERO |
|
||||||
150 PUSH1 0x9d |
|
||||||
152 JUMPI |
|
||||||
153 PUSH1 0x00 |
|
||||||
155 DUP1 |
|
||||||
156 REVERT |
|
||||||
157 JUMPDEST |
|
||||||
158 JUMP |
|
||||||
159 STOP |
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@ |
|||||||
{"error": null, "issues": [{"address": 142, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "It seems that an attacker is able to execute an call instruction, this can mean that the attacker is able to extract funds out of the contract.", "function": "_function_0x8a4068dd", "swc_id": "105", "title": "Ether send", "type": "Warning"}], "success": true} |
|
@ -1,12 +0,0 @@ |
|||||||
# Analysis results for test-filename.sol |
|
||||||
|
|
||||||
## Ether send |
|
||||||
- SWC ID: 105 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0x8a4068dd` |
|
||||||
- PC address: 142 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
It seems that an attacker is able to execute an call instruction, this can mean that the attacker is able to extract funds out of the contract. |
|
@ -1,9 +0,0 @@ |
|||||||
==== Ether send ==== |
|
||||||
SWC ID: 105 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: _function_0x8a4068dd |
|
||||||
PC address: 142 |
|
||||||
It seems that an attacker is able to execute an call instruction, this can mean that the attacker is able to extract funds out of the contract. |
|
||||||
-------------------- |
|
||||||
|
|
@ -1,167 +0,0 @@ |
|||||||
0 PUSH1 0x80 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH2 0x0041 |
|
||||||
12 JUMPI |
|
||||||
13 PUSH1 0x00 |
|
||||||
15 CALLDATALOAD |
|
||||||
16 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
46 SWAP1 |
|
||||||
47 DIV |
|
||||||
48 PUSH4 0xffffffff |
|
||||||
53 AND |
|
||||||
54 DUP1 |
|
||||||
55 PUSH4 0x24ff38a2 |
|
||||||
60 EQ |
|
||||||
61 PUSH2 0x0046 |
|
||||||
64 JUMPI |
|
||||||
65 JUMPDEST |
|
||||||
66 PUSH1 0x00 |
|
||||||
68 DUP1 |
|
||||||
69 REVERT |
|
||||||
70 JUMPDEST |
|
||||||
71 CALLVALUE |
|
||||||
72 DUP1 |
|
||||||
73 ISZERO |
|
||||||
74 PUSH2 0x0052 |
|
||||||
77 JUMPI |
|
||||||
78 PUSH1 0x00 |
|
||||||
80 DUP1 |
|
||||||
81 REVERT |
|
||||||
82 JUMPDEST |
|
||||||
83 POP |
|
||||||
84 PUSH2 0x005b |
|
||||||
87 PUSH2 0x00d6 |
|
||||||
90 JUMP |
|
||||||
91 JUMPDEST |
|
||||||
92 PUSH1 0x40 |
|
||||||
94 MLOAD |
|
||||||
95 DUP1 |
|
||||||
96 DUP1 |
|
||||||
97 PUSH1 0x20 |
|
||||||
99 ADD |
|
||||||
100 DUP3 |
|
||||||
101 DUP2 |
|
||||||
102 SUB |
|
||||||
103 DUP3 |
|
||||||
104 MSTORE |
|
||||||
105 DUP4 |
|
||||||
106 DUP2 |
|
||||||
107 DUP2 |
|
||||||
108 MLOAD |
|
||||||
109 DUP2 |
|
||||||
110 MSTORE |
|
||||||
111 PUSH1 0x20 |
|
||||||
113 ADD |
|
||||||
114 SWAP2 |
|
||||||
115 POP |
|
||||||
116 DUP1 |
|
||||||
117 MLOAD |
|
||||||
118 SWAP1 |
|
||||||
119 PUSH1 0x20 |
|
||||||
121 ADD |
|
||||||
122 SWAP1 |
|
||||||
123 DUP1 |
|
||||||
124 DUP4 |
|
||||||
125 DUP4 |
|
||||||
126 PUSH1 0x00 |
|
||||||
128 JUMPDEST |
|
||||||
129 DUP4 |
|
||||||
130 DUP2 |
|
||||||
131 LT |
|
||||||
132 ISZERO |
|
||||||
133 PUSH2 0x009b |
|
||||||
136 JUMPI |
|
||||||
137 DUP1 |
|
||||||
138 DUP3 |
|
||||||
139 ADD |
|
||||||
140 MLOAD |
|
||||||
141 DUP2 |
|
||||||
142 DUP5 |
|
||||||
143 ADD |
|
||||||
144 MSTORE |
|
||||||
145 PUSH1 0x20 |
|
||||||
147 DUP2 |
|
||||||
148 ADD |
|
||||||
149 SWAP1 |
|
||||||
150 POP |
|
||||||
151 PUSH2 0x0080 |
|
||||||
154 JUMP |
|
||||||
155 JUMPDEST |
|
||||||
156 POP |
|
||||||
157 POP |
|
||||||
158 POP |
|
||||||
159 POP |
|
||||||
160 SWAP1 |
|
||||||
161 POP |
|
||||||
162 SWAP1 |
|
||||||
163 DUP2 |
|
||||||
164 ADD |
|
||||||
165 SWAP1 |
|
||||||
166 PUSH1 0x1f |
|
||||||
168 AND |
|
||||||
169 DUP1 |
|
||||||
170 ISZERO |
|
||||||
171 PUSH2 0x00c8 |
|
||||||
174 JUMPI |
|
||||||
175 DUP1 |
|
||||||
176 DUP3 |
|
||||||
177 SUB |
|
||||||
178 DUP1 |
|
||||||
179 MLOAD |
|
||||||
180 PUSH1 0x01 |
|
||||||
182 DUP4 |
|
||||||
183 PUSH1 0x20 |
|
||||||
185 SUB |
|
||||||
186 PUSH2 0x0100 |
|
||||||
189 EXP |
|
||||||
190 SUB |
|
||||||
191 NOT |
|
||||||
192 AND |
|
||||||
193 DUP2 |
|
||||||
194 MSTORE |
|
||||||
195 PUSH1 0x20 |
|
||||||
197 ADD |
|
||||||
198 SWAP2 |
|
||||||
199 POP |
|
||||||
200 JUMPDEST |
|
||||||
201 POP |
|
||||||
202 SWAP3 |
|
||||||
203 POP |
|
||||||
204 POP |
|
||||||
205 POP |
|
||||||
206 PUSH1 0x40 |
|
||||||
208 MLOAD |
|
||||||
209 DUP1 |
|
||||||
210 SWAP2 |
|
||||||
211 SUB |
|
||||||
212 SWAP1 |
|
||||||
213 RETURN |
|
||||||
214 JUMPDEST |
|
||||||
215 PUSH1 0x60 |
|
||||||
217 PUSH1 0x40 |
|
||||||
219 DUP1 |
|
||||||
220 MLOAD |
|
||||||
221 SWAP1 |
|
||||||
222 DUP2 |
|
||||||
223 ADD |
|
||||||
224 PUSH1 0x40 |
|
||||||
226 MSTORE |
|
||||||
227 DUP1 |
|
||||||
228 PUSH1 0x17 |
|
||||||
230 DUP2 |
|
||||||
231 MSTORE |
|
||||||
232 PUSH1 0x20 |
|
||||||
234 ADD |
|
||||||
235 PUSH32 0xd0a5d18dd0bbd0bbd0bed18320d092d0bed180d0bbd0b4000000000000000000 |
|
||||||
268 DUP2 |
|
||||||
269 MSTORE |
|
||||||
270 POP |
|
||||||
271 SWAP1 |
|
||||||
272 POP |
|
||||||
273 SWAP1 |
|
||||||
274 JUMP |
|
||||||
275 STOP |
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@ |
|||||||
{"error": null, "issues": [], "success": true} |
|
@ -1,3 +0,0 @@ |
|||||||
# Analysis results for None |
|
||||||
|
|
||||||
The analysis was completed successfully. No issues were detected. |
|
@ -1 +0,0 @@ |
|||||||
The analysis was completed successfully. No issues were detected. |
|
@ -1,168 +0,0 @@ |
|||||||
0 PUSH1 0x60 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH2 0x004c |
|
||||||
12 JUMPI |
|
||||||
13 PUSH1 0x00 |
|
||||||
15 CALLDATALOAD |
|
||||||
16 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
46 SWAP1 |
|
||||||
47 DIV |
|
||||||
48 PUSH4 0xffffffff |
|
||||||
53 AND |
|
||||||
54 DUP1 |
|
||||||
55 PUSH4 0x8da5cb5b |
|
||||||
60 EQ |
|
||||||
61 PUSH2 0x0051 |
|
||||||
64 JUMPI |
|
||||||
65 DUP1 |
|
||||||
66 PUSH4 0xf2fde38b |
|
||||||
71 EQ |
|
||||||
72 PUSH2 0x00a6 |
|
||||||
75 JUMPI |
|
||||||
76 JUMPDEST |
|
||||||
77 PUSH1 0x00 |
|
||||||
79 DUP1 |
|
||||||
80 REVERT |
|
||||||
81 JUMPDEST |
|
||||||
82 CALLVALUE |
|
||||||
83 ISZERO |
|
||||||
84 PUSH2 0x005c |
|
||||||
87 JUMPI |
|
||||||
88 PUSH1 0x00 |
|
||||||
90 DUP1 |
|
||||||
91 REVERT |
|
||||||
92 JUMPDEST |
|
||||||
93 PUSH2 0x0064 |
|
||||||
96 PUSH2 0x00df |
|
||||||
99 JUMP |
|
||||||
100 JUMPDEST |
|
||||||
101 PUSH1 0x40 |
|
||||||
103 MLOAD |
|
||||||
104 DUP1 |
|
||||||
105 DUP3 |
|
||||||
106 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
127 AND |
|
||||||
128 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
149 AND |
|
||||||
150 DUP2 |
|
||||||
151 MSTORE |
|
||||||
152 PUSH1 0x20 |
|
||||||
154 ADD |
|
||||||
155 SWAP2 |
|
||||||
156 POP |
|
||||||
157 POP |
|
||||||
158 PUSH1 0x40 |
|
||||||
160 MLOAD |
|
||||||
161 DUP1 |
|
||||||
162 SWAP2 |
|
||||||
163 SUB |
|
||||||
164 SWAP1 |
|
||||||
165 RETURN |
|
||||||
166 JUMPDEST |
|
||||||
167 CALLVALUE |
|
||||||
168 ISZERO |
|
||||||
169 PUSH2 0x00b1 |
|
||||||
172 JUMPI |
|
||||||
173 PUSH1 0x00 |
|
||||||
175 DUP1 |
|
||||||
176 REVERT |
|
||||||
177 JUMPDEST |
|
||||||
178 PUSH2 0x00dd |
|
||||||
181 PUSH1 0x04 |
|
||||||
183 DUP1 |
|
||||||
184 DUP1 |
|
||||||
185 CALLDATALOAD |
|
||||||
186 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
207 AND |
|
||||||
208 SWAP1 |
|
||||||
209 PUSH1 0x20 |
|
||||||
211 ADD |
|
||||||
212 SWAP1 |
|
||||||
213 SWAP2 |
|
||||||
214 SWAP1 |
|
||||||
215 POP |
|
||||||
216 POP |
|
||||||
217 PUSH2 0x0104 |
|
||||||
220 JUMP |
|
||||||
221 JUMPDEST |
|
||||||
222 STOP |
|
||||||
223 JUMPDEST |
|
||||||
224 PUSH1 0x00 |
|
||||||
226 DUP1 |
|
||||||
227 SWAP1 |
|
||||||
228 SLOAD |
|
||||||
229 SWAP1 |
|
||||||
230 PUSH2 0x0100 |
|
||||||
233 EXP |
|
||||||
234 SWAP1 |
|
||||||
235 DIV |
|
||||||
236 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
257 AND |
|
||||||
258 DUP2 |
|
||||||
259 JUMP |
|
||||||
260 JUMPDEST |
|
||||||
261 PUSH1 0x00 |
|
||||||
263 DUP1 |
|
||||||
264 SWAP1 |
|
||||||
265 SLOAD |
|
||||||
266 SWAP1 |
|
||||||
267 PUSH2 0x0100 |
|
||||||
270 EXP |
|
||||||
271 SWAP1 |
|
||||||
272 DIV |
|
||||||
273 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
294 AND |
|
||||||
295 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
316 AND |
|
||||||
317 ORIGIN |
|
||||||
318 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
339 AND |
|
||||||
340 EQ |
|
||||||
341 ISZERO |
|
||||||
342 ISZERO |
|
||||||
343 PUSH2 0x015f |
|
||||||
346 JUMPI |
|
||||||
347 PUSH1 0x00 |
|
||||||
349 DUP1 |
|
||||||
350 REVERT |
|
||||||
351 JUMPDEST |
|
||||||
352 PUSH1 0x00 |
|
||||||
354 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
375 AND |
|
||||||
376 DUP2 |
|
||||||
377 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
398 AND |
|
||||||
399 EQ |
|
||||||
400 ISZERO |
|
||||||
401 ISZERO |
|
||||||
402 PUSH2 0x01d6 |
|
||||||
405 JUMPI |
|
||||||
406 DUP1 |
|
||||||
407 PUSH1 0x00 |
|
||||||
409 DUP1 |
|
||||||
410 PUSH2 0x0100 |
|
||||||
413 EXP |
|
||||||
414 DUP2 |
|
||||||
415 SLOAD |
|
||||||
416 DUP2 |
|
||||||
417 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
438 MUL |
|
||||||
439 NOT |
|
||||||
440 AND |
|
||||||
441 SWAP1 |
|
||||||
442 DUP4 |
|
||||||
443 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
464 AND |
|
||||||
465 MUL |
|
||||||
466 OR |
|
||||||
467 SWAP1 |
|
||||||
468 SSTORE |
|
||||||
469 POP |
|
||||||
470 JUMPDEST |
|
||||||
471 POP |
|
||||||
472 JUMP |
|
||||||
473 STOP |
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@ |
|||||||
{"error": null, "issues": [{"address": 317, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The function `transferOwnership(address)` retrieves the transaction origin (tx.origin) using the ORIGIN opcode. Use msg.sender instead.\nSee also: https://solidity.readthedocs.io/en/develop/security-considerations.html#tx-origin", "function": "transferOwnership(address)", "swc_id": "115", "title": "Use of tx.origin", "type": "Warning"}], "success": true} |
|
@ -1,13 +0,0 @@ |
|||||||
# Analysis results for test-filename.sol |
|
||||||
|
|
||||||
## Use of tx.origin |
|
||||||
- SWC ID: 115 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `transferOwnership(address)` |
|
||||||
- PC address: 317 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The function `transferOwnership(address)` retrieves the transaction origin (tx.origin) using the ORIGIN opcode. Use msg.sender instead. |
|
||||||
See also: https://solidity.readthedocs.io/en/develop/security-considerations.html#tx-origin |
|
@ -1,10 +0,0 @@ |
|||||||
==== Use of tx.origin ==== |
|
||||||
SWC ID: 115 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: transferOwnership(address) |
|
||||||
PC address: 317 |
|
||||||
The function `transferOwnership(address)` retrieves the transaction origin (tx.origin) using the ORIGIN opcode. Use msg.sender instead. |
|
||||||
See also: https://solidity.readthedocs.io/en/develop/security-considerations.html#tx-origin |
|
||||||
-------------------- |
|
||||||
|
|
@ -1,388 +0,0 @@ |
|||||||
0 PUSH1 0x60 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH2 0x0062 |
|
||||||
12 JUMPI |
|
||||||
13 PUSH1 0x00 |
|
||||||
15 CALLDATALOAD |
|
||||||
16 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
46 SWAP1 |
|
||||||
47 DIV |
|
||||||
48 PUSH4 0xffffffff |
|
||||||
53 AND |
|
||||||
54 DUP1 |
|
||||||
55 PUSH4 0x18160ddd |
|
||||||
60 EQ |
|
||||||
61 PUSH2 0x0067 |
|
||||||
64 JUMPI |
|
||||||
65 DUP1 |
|
||||||
66 PUSH4 0x6241bfd1 |
|
||||||
71 EQ |
|
||||||
72 PUSH2 0x0090 |
|
||||||
75 JUMPI |
|
||||||
76 DUP1 |
|
||||||
77 PUSH4 0x70a08231 |
|
||||||
82 EQ |
|
||||||
83 PUSH2 0x00b3 |
|
||||||
86 JUMPI |
|
||||||
87 DUP1 |
|
||||||
88 PUSH4 0xa3210e87 |
|
||||||
93 EQ |
|
||||||
94 PUSH2 0x0100 |
|
||||||
97 JUMPI |
|
||||||
98 JUMPDEST |
|
||||||
99 PUSH1 0x00 |
|
||||||
101 DUP1 |
|
||||||
102 REVERT |
|
||||||
103 JUMPDEST |
|
||||||
104 CALLVALUE |
|
||||||
105 ISZERO |
|
||||||
106 PUSH2 0x0072 |
|
||||||
109 JUMPI |
|
||||||
110 PUSH1 0x00 |
|
||||||
112 DUP1 |
|
||||||
113 REVERT |
|
||||||
114 JUMPDEST |
|
||||||
115 PUSH2 0x007a |
|
||||||
118 PUSH2 0x015a |
|
||||||
121 JUMP |
|
||||||
122 JUMPDEST |
|
||||||
123 PUSH1 0x40 |
|
||||||
125 MLOAD |
|
||||||
126 DUP1 |
|
||||||
127 DUP3 |
|
||||||
128 DUP2 |
|
||||||
129 MSTORE |
|
||||||
130 PUSH1 0x20 |
|
||||||
132 ADD |
|
||||||
133 SWAP2 |
|
||||||
134 POP |
|
||||||
135 POP |
|
||||||
136 PUSH1 0x40 |
|
||||||
138 MLOAD |
|
||||||
139 DUP1 |
|
||||||
140 SWAP2 |
|
||||||
141 SUB |
|
||||||
142 SWAP1 |
|
||||||
143 RETURN |
|
||||||
144 JUMPDEST |
|
||||||
145 CALLVALUE |
|
||||||
146 ISZERO |
|
||||||
147 PUSH2 0x009b |
|
||||||
150 JUMPI |
|
||||||
151 PUSH1 0x00 |
|
||||||
153 DUP1 |
|
||||||
154 REVERT |
|
||||||
155 JUMPDEST |
|
||||||
156 PUSH2 0x00b1 |
|
||||||
159 PUSH1 0x04 |
|
||||||
161 DUP1 |
|
||||||
162 DUP1 |
|
||||||
163 CALLDATALOAD |
|
||||||
164 SWAP1 |
|
||||||
165 PUSH1 0x20 |
|
||||||
167 ADD |
|
||||||
168 SWAP1 |
|
||||||
169 SWAP2 |
|
||||||
170 SWAP1 |
|
||||||
171 POP |
|
||||||
172 POP |
|
||||||
173 PUSH2 0x0160 |
|
||||||
176 JUMP |
|
||||||
177 JUMPDEST |
|
||||||
178 STOP |
|
||||||
179 JUMPDEST |
|
||||||
180 CALLVALUE |
|
||||||
181 ISZERO |
|
||||||
182 PUSH2 0x00be |
|
||||||
185 JUMPI |
|
||||||
186 PUSH1 0x00 |
|
||||||
188 DUP1 |
|
||||||
189 REVERT |
|
||||||
190 JUMPDEST |
|
||||||
191 PUSH2 0x00ea |
|
||||||
194 PUSH1 0x04 |
|
||||||
196 DUP1 |
|
||||||
197 DUP1 |
|
||||||
198 CALLDATALOAD |
|
||||||
199 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
220 AND |
|
||||||
221 SWAP1 |
|
||||||
222 PUSH1 0x20 |
|
||||||
224 ADD |
|
||||||
225 SWAP1 |
|
||||||
226 SWAP2 |
|
||||||
227 SWAP1 |
|
||||||
228 POP |
|
||||||
229 POP |
|
||||||
230 PUSH2 0x01ab |
|
||||||
233 JUMP |
|
||||||
234 JUMPDEST |
|
||||||
235 PUSH1 0x40 |
|
||||||
237 MLOAD |
|
||||||
238 DUP1 |
|
||||||
239 DUP3 |
|
||||||
240 DUP2 |
|
||||||
241 MSTORE |
|
||||||
242 PUSH1 0x20 |
|
||||||
244 ADD |
|
||||||
245 SWAP2 |
|
||||||
246 POP |
|
||||||
247 POP |
|
||||||
248 PUSH1 0x40 |
|
||||||
250 MLOAD |
|
||||||
251 DUP1 |
|
||||||
252 SWAP2 |
|
||||||
253 SUB |
|
||||||
254 SWAP1 |
|
||||||
255 RETURN |
|
||||||
256 JUMPDEST |
|
||||||
257 CALLVALUE |
|
||||||
258 ISZERO |
|
||||||
259 PUSH2 0x010b |
|
||||||
262 JUMPI |
|
||||||
263 PUSH1 0x00 |
|
||||||
265 DUP1 |
|
||||||
266 REVERT |
|
||||||
267 JUMPDEST |
|
||||||
268 PUSH2 0x0140 |
|
||||||
271 PUSH1 0x04 |
|
||||||
273 DUP1 |
|
||||||
274 DUP1 |
|
||||||
275 CALLDATALOAD |
|
||||||
276 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
297 AND |
|
||||||
298 SWAP1 |
|
||||||
299 PUSH1 0x20 |
|
||||||
301 ADD |
|
||||||
302 SWAP1 |
|
||||||
303 SWAP2 |
|
||||||
304 SWAP1 |
|
||||||
305 DUP1 |
|
||||||
306 CALLDATALOAD |
|
||||||
307 SWAP1 |
|
||||||
308 PUSH1 0x20 |
|
||||||
310 ADD |
|
||||||
311 SWAP1 |
|
||||||
312 SWAP2 |
|
||||||
313 SWAP1 |
|
||||||
314 POP |
|
||||||
315 POP |
|
||||||
316 PUSH2 0x01f3 |
|
||||||
319 JUMP |
|
||||||
320 JUMPDEST |
|
||||||
321 PUSH1 0x40 |
|
||||||
323 MLOAD |
|
||||||
324 DUP1 |
|
||||||
325 DUP3 |
|
||||||
326 ISZERO |
|
||||||
327 ISZERO |
|
||||||
328 ISZERO |
|
||||||
329 ISZERO |
|
||||||
330 DUP2 |
|
||||||
331 MSTORE |
|
||||||
332 PUSH1 0x20 |
|
||||||
334 ADD |
|
||||||
335 SWAP2 |
|
||||||
336 POP |
|
||||||
337 POP |
|
||||||
338 PUSH1 0x40 |
|
||||||
340 MLOAD |
|
||||||
341 DUP1 |
|
||||||
342 SWAP2 |
|
||||||
343 SUB |
|
||||||
344 SWAP1 |
|
||||||
345 RETURN |
|
||||||
346 JUMPDEST |
|
||||||
347 PUSH1 0x01 |
|
||||||
349 SLOAD |
|
||||||
350 DUP2 |
|
||||||
351 JUMP |
|
||||||
352 JUMPDEST |
|
||||||
353 DUP1 |
|
||||||
354 PUSH1 0x01 |
|
||||||
356 DUP2 |
|
||||||
357 SWAP1 |
|
||||||
358 SSTORE |
|
||||||
359 PUSH1 0x00 |
|
||||||
361 DUP1 |
|
||||||
362 CALLER |
|
||||||
363 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
384 AND |
|
||||||
385 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
406 AND |
|
||||||
407 DUP2 |
|
||||||
408 MSTORE |
|
||||||
409 PUSH1 0x20 |
|
||||||
411 ADD |
|
||||||
412 SWAP1 |
|
||||||
413 DUP2 |
|
||||||
414 MSTORE |
|
||||||
415 PUSH1 0x20 |
|
||||||
417 ADD |
|
||||||
418 PUSH1 0x00 |
|
||||||
420 SHA3 |
|
||||||
421 DUP2 |
|
||||||
422 SWAP1 |
|
||||||
423 SSTORE |
|
||||||
424 POP |
|
||||||
425 POP |
|
||||||
426 JUMP |
|
||||||
427 JUMPDEST |
|
||||||
428 PUSH1 0x00 |
|
||||||
430 DUP1 |
|
||||||
431 PUSH1 0x00 |
|
||||||
433 DUP4 |
|
||||||
434 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
455 AND |
|
||||||
456 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
477 AND |
|
||||||
478 DUP2 |
|
||||||
479 MSTORE |
|
||||||
480 PUSH1 0x20 |
|
||||||
482 ADD |
|
||||||
483 SWAP1 |
|
||||||
484 DUP2 |
|
||||||
485 MSTORE |
|
||||||
486 PUSH1 0x20 |
|
||||||
488 ADD |
|
||||||
489 PUSH1 0x00 |
|
||||||
491 SHA3 |
|
||||||
492 SLOAD |
|
||||||
493 SWAP1 |
|
||||||
494 POP |
|
||||||
495 SWAP2 |
|
||||||
496 SWAP1 |
|
||||||
497 POP |
|
||||||
498 JUMP |
|
||||||
499 JUMPDEST |
|
||||||
500 PUSH1 0x00 |
|
||||||
502 DUP1 |
|
||||||
503 DUP3 |
|
||||||
504 PUSH1 0x00 |
|
||||||
506 DUP1 |
|
||||||
507 CALLER |
|
||||||
508 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
529 AND |
|
||||||
530 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
551 AND |
|
||||||
552 DUP2 |
|
||||||
553 MSTORE |
|
||||||
554 PUSH1 0x20 |
|
||||||
556 ADD |
|
||||||
557 SWAP1 |
|
||||||
558 DUP2 |
|
||||||
559 MSTORE |
|
||||||
560 PUSH1 0x20 |
|
||||||
562 ADD |
|
||||||
563 PUSH1 0x00 |
|
||||||
565 SHA3 |
|
||||||
566 SLOAD |
|
||||||
567 SUB |
|
||||||
568 LT |
|
||||||
569 ISZERO |
|
||||||
570 ISZERO |
|
||||||
571 ISZERO |
|
||||||
572 PUSH2 0x0244 |
|
||||||
575 JUMPI |
|
||||||
576 PUSH1 0x00 |
|
||||||
578 DUP1 |
|
||||||
579 REVERT |
|
||||||
580 JUMPDEST |
|
||||||
581 DUP2 |
|
||||||
582 PUSH1 0x00 |
|
||||||
584 DUP1 |
|
||||||
585 CALLER |
|
||||||
586 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
607 AND |
|
||||||
608 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
629 AND |
|
||||||
630 DUP2 |
|
||||||
631 MSTORE |
|
||||||
632 PUSH1 0x20 |
|
||||||
634 ADD |
|
||||||
635 SWAP1 |
|
||||||
636 DUP2 |
|
||||||
637 MSTORE |
|
||||||
638 PUSH1 0x20 |
|
||||||
640 ADD |
|
||||||
641 PUSH1 0x00 |
|
||||||
643 SHA3 |
|
||||||
644 PUSH1 0x00 |
|
||||||
646 DUP3 |
|
||||||
647 DUP3 |
|
||||||
648 SLOAD |
|
||||||
649 SUB |
|
||||||
650 SWAP3 |
|
||||||
651 POP |
|
||||||
652 POP |
|
||||||
653 DUP2 |
|
||||||
654 SWAP1 |
|
||||||
655 SSTORE |
|
||||||
656 POP |
|
||||||
657 DUP2 |
|
||||||
658 PUSH1 0x00 |
|
||||||
660 DUP1 |
|
||||||
661 DUP6 |
|
||||||
662 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
683 AND |
|
||||||
684 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
705 AND |
|
||||||
706 DUP2 |
|
||||||
707 MSTORE |
|
||||||
708 PUSH1 0x20 |
|
||||||
710 ADD |
|
||||||
711 SWAP1 |
|
||||||
712 DUP2 |
|
||||||
713 MSTORE |
|
||||||
714 PUSH1 0x20 |
|
||||||
716 ADD |
|
||||||
717 PUSH1 0x00 |
|
||||||
719 SHA3 |
|
||||||
720 PUSH1 0x00 |
|
||||||
722 DUP3 |
|
||||||
723 DUP3 |
|
||||||
724 SLOAD |
|
||||||
725 ADD |
|
||||||
726 SWAP3 |
|
||||||
727 POP |
|
||||||
728 POP |
|
||||||
729 DUP2 |
|
||||||
730 SWAP1 |
|
||||||
731 SSTORE |
|
||||||
732 POP |
|
||||||
733 PUSH1 0x02 |
|
||||||
735 PUSH1 0x00 |
|
||||||
737 DUP1 |
|
||||||
738 DUP6 |
|
||||||
739 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
760 AND |
|
||||||
761 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
782 AND |
|
||||||
783 DUP2 |
|
||||||
784 MSTORE |
|
||||||
785 PUSH1 0x20 |
|
||||||
787 ADD |
|
||||||
788 SWAP1 |
|
||||||
789 DUP2 |
|
||||||
790 MSTORE |
|
||||||
791 PUSH1 0x20 |
|
||||||
793 ADD |
|
||||||
794 PUSH1 0x00 |
|
||||||
796 SHA3 |
|
||||||
797 DUP2 |
|
||||||
798 SWAP1 |
|
||||||
799 SSTORE |
|
||||||
800 POP |
|
||||||
801 PUSH1 0x01 |
|
||||||
803 SWAP1 |
|
||||||
804 POP |
|
||||||
805 SWAP3 |
|
||||||
806 SWAP2 |
|
||||||
807 POP |
|
||||||
808 POP |
|
||||||
809 JUMP |
|
||||||
810 STOP |
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@ |
|||||||
{"error": null, "issues": [{"address": 567, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The subtraction can result in an integer underflow.\n", "function": "sendeth(address,uint256)", "swc_id": "101", "title": "Integer Underflow", "type": "Warning"}, {"address": 649, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The subtraction can result in an integer underflow.\n", "function": "sendeth(address,uint256)", "swc_id": "101", "title": "Integer Underflow", "type": "Warning"}, {"address": 725, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The arithmetic operation can result in integer overflow.\n", "function": "sendeth(address,uint256)", "swc_id": "101", "title": "Integer Overflow", "type": "Warning"}], "success": true} |
|
@ -1,34 +0,0 @@ |
|||||||
# Analysis results for test-filename.sol |
|
||||||
|
|
||||||
## Integer Underflow |
|
||||||
- SWC ID: 101 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `sendeth(address,uint256)` |
|
||||||
- PC address: 567 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The subtraction can result in an integer underflow. |
|
||||||
|
|
||||||
## Integer Underflow |
|
||||||
- SWC ID: 101 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `sendeth(address,uint256)` |
|
||||||
- PC address: 649 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The subtraction can result in an integer underflow. |
|
||||||
|
|
||||||
## Integer Overflow |
|
||||||
- SWC ID: 101 |
|
||||||
- Type: Warning |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `sendeth(address,uint256)` |
|
||||||
- PC address: 725 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The arithmetic operation can result in integer overflow. |
|
@ -1,30 +0,0 @@ |
|||||||
==== Integer Underflow ==== |
|
||||||
SWC ID: 101 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: sendeth(address,uint256) |
|
||||||
PC address: 567 |
|
||||||
The subtraction can result in an integer underflow. |
|
||||||
|
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Integer Underflow ==== |
|
||||||
SWC ID: 101 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: sendeth(address,uint256) |
|
||||||
PC address: 649 |
|
||||||
The subtraction can result in an integer underflow. |
|
||||||
|
|
||||||
-------------------- |
|
||||||
|
|
||||||
==== Integer Overflow ==== |
|
||||||
SWC ID: 101 |
|
||||||
Type: Warning |
|
||||||
Contract: Unknown |
|
||||||
Function name: sendeth(address,uint256) |
|
||||||
PC address: 725 |
|
||||||
The arithmetic operation can result in integer overflow. |
|
||||||
|
|
||||||
-------------------- |
|
||||||
|
|
@ -1,129 +0,0 @@ |
|||||||
0 PUSH1 0x60 |
|
||||||
2 PUSH1 0x40 |
|
||||||
4 MSTORE |
|
||||||
5 PUSH1 0x04 |
|
||||||
7 CALLDATASIZE |
|
||||||
8 LT |
|
||||||
9 PUSH2 0x004c |
|
||||||
12 JUMPI |
|
||||||
13 PUSH1 0x00 |
|
||||||
15 CALLDATALOAD |
|
||||||
16 PUSH29 0x0100000000000000000000000000000000000000000000000000000000 |
|
||||||
46 SWAP1 |
|
||||||
47 DIV |
|
||||||
48 PUSH4 0xffffffff |
|
||||||
53 AND |
|
||||||
54 DUP1 |
|
||||||
55 PUSH4 0x633ab5e0 |
|
||||||
60 EQ |
|
||||||
61 PUSH2 0x0051 |
|
||||||
64 JUMPI |
|
||||||
65 DUP1 |
|
||||||
66 PUSH4 0xe3bea282 |
|
||||||
71 EQ |
|
||||||
72 PUSH2 0x0066 |
|
||||||
75 JUMPI |
|
||||||
76 JUMPDEST |
|
||||||
77 PUSH1 0x00 |
|
||||||
79 DUP1 |
|
||||||
80 REVERT |
|
||||||
81 JUMPDEST |
|
||||||
82 CALLVALUE |
|
||||||
83 ISZERO |
|
||||||
84 PUSH2 0x005c |
|
||||||
87 JUMPI |
|
||||||
88 PUSH1 0x00 |
|
||||||
90 DUP1 |
|
||||||
91 REVERT |
|
||||||
92 JUMPDEST |
|
||||||
93 PUSH2 0x0064 |
|
||||||
96 PUSH2 0x007b |
|
||||||
99 JUMP |
|
||||||
100 JUMPDEST |
|
||||||
101 STOP |
|
||||||
102 JUMPDEST |
|
||||||
103 CALLVALUE |
|
||||||
104 ISZERO |
|
||||||
105 PUSH2 0x0071 |
|
||||||
108 JUMPI |
|
||||||
109 PUSH1 0x00 |
|
||||||
111 DUP1 |
|
||||||
112 REVERT |
|
||||||
113 JUMPDEST |
|
||||||
114 PUSH2 0x0079 |
|
||||||
117 PUSH2 0x00d4 |
|
||||||
120 JUMP |
|
||||||
121 JUMPDEST |
|
||||||
122 STOP |
|
||||||
123 JUMPDEST |
|
||||||
124 PUSH1 0x00 |
|
||||||
126 DUP1 |
|
||||||
127 SWAP1 |
|
||||||
128 SLOAD |
|
||||||
129 SWAP1 |
|
||||||
130 PUSH2 0x0100 |
|
||||||
133 EXP |
|
||||||
134 SWAP1 |
|
||||||
135 DIV |
|
||||||
136 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
157 AND |
|
||||||
158 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
179 AND |
|
||||||
180 PUSH1 0x40 |
|
||||||
182 MLOAD |
|
||||||
183 PUSH1 0x00 |
|
||||||
185 PUSH1 0x40 |
|
||||||
187 MLOAD |
|
||||||
188 DUP1 |
|
||||||
189 DUP4 |
|
||||||
190 SUB |
|
||||||
191 DUP2 |
|
||||||
192 PUSH1 0x00 |
|
||||||
194 DUP7 |
|
||||||
195 GAS |
|
||||||
196 CALL |
|
||||||
197 SWAP2 |
|
||||||
198 POP |
|
||||||
199 POP |
|
||||||
200 ISZERO |
|
||||||
201 ISZERO |
|
||||||
202 PUSH2 0x00d2 |
|
||||||
205 JUMPI |
|
||||||
206 PUSH1 0x00 |
|
||||||
208 DUP1 |
|
||||||
209 REVERT |
|
||||||
210 JUMPDEST |
|
||||||
211 JUMP |
|
||||||
212 JUMPDEST |
|
||||||
213 PUSH1 0x00 |
|
||||||
215 DUP1 |
|
||||||
216 SWAP1 |
|
||||||
217 SLOAD |
|
||||||
218 SWAP1 |
|
||||||
219 PUSH2 0x0100 |
|
||||||
222 EXP |
|
||||||
223 SWAP1 |
|
||||||
224 DIV |
|
||||||
225 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
246 AND |
|
||||||
247 PUSH20 0xffffffffffffffffffffffffffffffffffffffff |
|
||||||
268 AND |
|
||||||
269 PUSH1 0x40 |
|
||||||
271 MLOAD |
|
||||||
272 PUSH1 0x00 |
|
||||||
274 PUSH1 0x40 |
|
||||||
276 MLOAD |
|
||||||
277 DUP1 |
|
||||||
278 DUP4 |
|
||||||
279 SUB |
|
||||||
280 DUP2 |
|
||||||
281 PUSH1 0x00 |
|
||||||
283 DUP7 |
|
||||||
284 GAS |
|
||||||
285 CALL |
|
||||||
286 SWAP2 |
|
||||||
287 POP |
|
||||||
288 POP |
|
||||||
289 POP |
|
||||||
290 JUMP |
|
||||||
291 STOP |
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@ |
|||||||
{"error": null, "issues": [{"address": 196, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "This contract executes a message call to to another contract. Make sure that the called contract is trusted and does not execute user-supplied code.", "function": "_function_0x633ab5e0", "swc_id": "107", "title": "Message call to external contract", "type": "Informational"}, {"address": 285, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "This contract executes a message call to to another contract. Make sure that the called contract is trusted and does not execute user-supplied code.", "function": "_function_0xe3bea282", "swc_id": "107", "title": "Message call to external contract", "type": "Informational"}, {"address": 290, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.", "function": "_function_0xe3bea282", "swc_id": "104", "title": "Unchecked CALL return value", "type": "Informational"}], "success": true} |
|
@ -1,34 +0,0 @@ |
|||||||
# Analysis results for test-filename.sol |
|
||||||
|
|
||||||
## Message call to external contract |
|
||||||
- SWC ID: 107 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0x633ab5e0` |
|
||||||
- PC address: 196 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
This contract executes a message call to to another contract. Make sure that the called contract is trusted and does not execute user-supplied code. |
|
||||||
|
|
||||||
## Message call to external contract |
|
||||||
- SWC ID: 107 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xe3bea282` |
|
||||||
- PC address: 285 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
This contract executes a message call to to another contract. Make sure that the called contract is trusted and does not execute user-supplied code. |
|
||||||
|
|
||||||
## Unchecked CALL return value |
|
||||||
- SWC ID: 104 |
|
||||||
- Type: Informational |
|
||||||
- Contract: Unknown |
|
||||||
- Function name: `_function_0xe3bea282` |
|
||||||
- PC address: 290 |
|
||||||
|
|
||||||
### Description |
|
||||||
|
|
||||||
The return value of an external call is not checked. Note that execution continue even if the called contract throws. |
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue