mirror of https://github.com/ConsenSys/mythril
blockchainethereumsmart-contractssoliditysecurityprogram-analysissecurity-analysissymbolic-execution
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
32 KiB
62 lines
32 KiB
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>Call Graph</title>
|
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/vis/4.21.0/vis.min.css" integrity="sha256-iq5ygGJ7021Pi7H5S+QAUXCPUfaBzfqeplbg/KlEssg=" crossorigin="anonymous" />
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/vis/4.21.0/vis.min.js" integrity="sha256-JuQeAGbk9rG/EoRMixuy5X8syzICcvB0dj3KindZkY0=" crossorigin="anonymous"></script>
|
|
|
|
|
|
<style type="text/css">
|
|
#mynetwork {
|
|
height: 100%;
|
|
background-color: #232625;
|
|
}
|
|
body {
|
|
background-color: #232625;
|
|
color: #ffffff;
|
|
font-size: 10px;
|
|
}
|
|
html, body {
|
|
height: 95%;
|
|
}
|
|
</style>
|
|
|
|
|
|
<script>
|
|
var options = {"autoResize": true, "edges": {"font": {"align": "horizontal", "background": "none", "color": "#FFFFFF", "face": "arial", "multi": false, "strokeColor": "#ffffff", "strokeWidth": 0, "vadjust": 0}}, "height": "100%", "layout": {"hierarchical": {"blockShifting": true, "direction": "LR", "edgeMinimization": true, "enabled": true, "levelSeparation": 450, "nodeSpacing": 200, "parentCentralization": false, "sortMethod": "directed", "treeSpacing": 100}, "improvedLayout": true}, "manipulation": false, "nodes": {"borderWidth": 1, "borderWidthSelected": 2, "chosen": true, "color": "#000000", "font": {"align": "left", "color": "#FFFFFF"}, "shape": "box"}, "physics": {"enabled": false}, "width": "100%"};
|
|
var nodes = [{"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "0 PUSH1 0x80\n2 PUSH1 0x40\n4 MSTORE\n5 PUSH1 0x04\n7 CALLDATASIZE\n8 LT\n9 PUSH2 0x0078\n12 JUMPI", "id": "77", "isExpanded": false, "label": "0 PUSH1 0x80\n2 PUSH1 0x40\n4 MSTORE\n5 PUSH1 0x04\n7 CALLDATASIZE\n8 LT\n(click to expand +)", "size": 150, "truncLabel": "0 PUSH1 0x80\n2 PUSH1 0x40\n4 MSTORE\n5 PUSH1 0x04\n7 CALLDATASIZE\n8 LT\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "13 PUSH1 0x00\n15 CALLDATALOAD\n16 PUSH29 0x01000000(...)\n46 SWAP1\n47 DIV\n48 PUSH4 0xffffffff\n53 AND\n54 DUP1\n55 PUSH4 0x12065fe0\n60 EQ\n61 PUSH2 0x007d\n64 JUMPI", "id": "78", "isExpanded": false, "label": "13 PUSH1 0x00\n15 CALLDATALOAD\n16 PUSH29 0x01000000(...)\n46 SWAP1\n47 DIV\n48 PUSH4 0xffffffff\n(click to expand +)", "size": 150, "truncLabel": "13 PUSH1 0x00\n15 CALLDATALOAD\n16 PUSH29 0x01000000(...)\n46 SWAP1\n47 DIV\n48 PUSH4 0xffffffff\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "120 JUMPDEST\n121 PUSH1 0x00\n123 DUP1\n124 REVERT", "id": "79", "isExpanded": false, "label": "120 JUMPDEST\n121 PUSH1 0x00\n123 DUP1\n124 REVERT", "size": 150, "truncLabel": "120 JUMPDEST\n121 PUSH1 0x00\n123 DUP1\n124 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "65 DUP1\n66 PUSH4 0x27e235e3\n71 EQ\n72 PUSH2 0x00a8\n75 JUMPI", "id": "80", "isExpanded": false, "label": "65 DUP1\n66 PUSH4 0x27e235e3\n71 EQ\n72 PUSH2 0x00a8\n75 JUMPI", "size": 150, "truncLabel": "65 DUP1\n66 PUSH4 0x27e235e3\n71 EQ\n72 PUSH2 0x00a8\n75 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "125 JUMPDEST\n126 CALLVALUE\n127 DUP1\n128 ISZERO\n129 PUSH2 0x0089\n132 JUMPI", "id": "81", "isExpanded": false, "label": "125 JUMPDEST\n126 CALLVALUE\n127 DUP1\n128 ISZERO\n129 PUSH2 0x0089\n132 JUMPI", "size": 150, "truncLabel": "125 JUMPDEST\n126 CALLVALUE\n127 DUP1\n128 ISZERO\n129 PUSH2 0x0089\n132 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "133 PUSH1 0x00\n135 DUP1\n136 REVERT", "id": "82", "isExpanded": false, "label": "133 PUSH1 0x00\n135 DUP1\n136 REVERT", "size": 150, "truncLabel": "133 PUSH1 0x00\n135 DUP1\n136 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "137 JUMPDEST\n138 POP\n139 PUSH2 0x0092\n142 PUSH2 0x018e\n145 JUMP", "id": "83", "isExpanded": false, "label": "137 JUMPDEST\n138 POP\n139 PUSH2 0x0092\n142 PUSH2 0x018e\n145 JUMP", "size": 150, "truncLabel": "137 JUMPDEST\n138 POP\n139 PUSH2 0x0092\n142 PUSH2 0x018e\n145 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "398 JUMPDEST\n399 PUSH1 0x00\n401 DUP1\n402 PUSH1 0x00\n404 CALLER\n405 PUSH20 0xffffffff(...)\n426 AND\n427 PUSH20 0xffffffff(...)\n448 AND\n449 DUP2\n450 MSTORE\n451 PUSH1 0x20\n453 ADD\n454 SWAP1\n455 DUP2\n456 MSTORE\n457 PUSH1 0x20\n459 ADD\n460 PUSH1 0x00\n462 SHA3\n463 SLOAD\n464 SWAP1\n465 POP\n466 SWAP1\n467 JUMP", "id": "84", "isExpanded": false, "label": "398 JUMPDEST\n399 PUSH1 0x00\n401 DUP1\n402 PUSH1 0x00\n404 CALLER\n405 PUSH20 0xffffffff(...)\n(click to expand +)", "size": 150, "truncLabel": "398 JUMPDEST\n399 PUSH1 0x00\n401 DUP1\n402 PUSH1 0x00\n404 CALLER\n405 PUSH20 0xffffffff(...)\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "146 JUMPDEST\n147 PUSH1 0x40\n149 MLOAD\n150 DUP1\n151 DUP3\n152 DUP2\n153 MSTORE\n154 PUSH1 0x20\n156 ADD\n157 SWAP2\n158 POP\n159 POP\n160 PUSH1 0x40\n162 MLOAD\n163 DUP1\n164 SWAP2\n165 SUB\n166 SWAP1\n167 RETURN", "id": "85", "isExpanded": false, "label": "146 JUMPDEST\n147 PUSH1 0x40\n149 MLOAD\n150 DUP1\n151 DUP3\n152 DUP2\n(click to expand +)", "size": 150, "truncLabel": "146 JUMPDEST\n147 PUSH1 0x40\n149 MLOAD\n150 DUP1\n151 DUP3\n152 DUP2\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "76 DUP1\n77 PUSH4 0x56885cd8\n82 EQ\n83 PUSH2 0x00ff\n86 JUMPI", "id": "86", "isExpanded": false, "label": "76 DUP1\n77 PUSH4 0x56885cd8\n82 EQ\n83 PUSH2 0x00ff\n86 JUMPI", "size": 150, "truncLabel": "76 DUP1\n77 PUSH4 0x56885cd8\n82 EQ\n83 PUSH2 0x00ff\n86 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "168 JUMPDEST\n169 CALLVALUE\n170 DUP1\n171 ISZERO\n172 PUSH2 0x00b4\n175 JUMPI", "id": "87", "isExpanded": false, "label": "168 JUMPDEST\n169 CALLVALUE\n170 DUP1\n171 ISZERO\n172 PUSH2 0x00b4\n175 JUMPI", "size": 150, "truncLabel": "168 JUMPDEST\n169 CALLVALUE\n170 DUP1\n171 ISZERO\n172 PUSH2 0x00b4\n175 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "176 PUSH1 0x00\n178 DUP1\n179 REVERT", "id": "88", "isExpanded": false, "label": "176 PUSH1 0x00\n178 DUP1\n179 REVERT", "size": 150, "truncLabel": "176 PUSH1 0x00\n178 DUP1\n179 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "180 JUMPDEST\n181 POP\n182 PUSH2 0x00e9\n185 PUSH1 0x04\n187 DUP1\n188 CALLDATASIZE\n189 SUB\n190 DUP2\n191 ADD\n192 SWAP1\n193 DUP1\n194 DUP1\n195 CALLDATALOAD\n196 PUSH20 0xffffffff(...)\n217 AND\n218 SWAP1\n219 PUSH1 0x20\n221 ADD\n222 SWAP1\n223 SWAP3\n224 SWAP2\n225 SWAP1\n226 POP\n227 POP\n228 POP\n229 PUSH2 0x01d4\n232 JUMP", "id": "89", "isExpanded": false, "label": "180 JUMPDEST\n181 POP\n182 PUSH2 0x00e9\n185 PUSH1 0x04\n187 DUP1\n188 CALLDATASIZE\n(click to expand +)", "size": 150, "truncLabel": "180 JUMPDEST\n181 POP\n182 PUSH2 0x00e9\n185 PUSH1 0x04\n187 DUP1\n188 CALLDATASIZE\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "468 JUMPDEST\n469 PUSH1 0x00\n471 PUSH1 0x20\n473 MSTORE\n474 DUP1\n475 PUSH1 0x00\n477 MSTORE\n478 PUSH1 0x40\n480 PUSH1 0x00\n482 SHA3\n483 PUSH1 0x00\n485 SWAP2\n486 POP\n487 SWAP1\n488 POP\n489 SLOAD\n490 DUP2\n491 JUMP", "id": "90", "isExpanded": false, "label": "468 JUMPDEST\n469 PUSH1 0x00\n471 PUSH1 0x20\n473 MSTORE\n474 DUP1\n475 PUSH1 0x00\n(click to expand +)", "size": 150, "truncLabel": "468 JUMPDEST\n469 PUSH1 0x00\n471 PUSH1 0x20\n473 MSTORE\n474 DUP1\n475 PUSH1 0x00\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "233 JUMPDEST\n234 PUSH1 0x40\n236 MLOAD\n237 DUP1\n238 DUP3\n239 DUP2\n240 MSTORE\n241 PUSH1 0x20\n243 ADD\n244 SWAP2\n245 POP\n246 POP\n247 PUSH1 0x40\n249 MLOAD\n250 DUP1\n251 SWAP2\n252 SUB\n253 SWAP1\n254 RETURN", "id": "91", "isExpanded": false, "label": "233 JUMPDEST\n234 PUSH1 0x40\n236 MLOAD\n237 DUP1\n238 DUP3\n239 DUP2\n(click to expand +)", "size": 150, "truncLabel": "233 JUMPDEST\n234 PUSH1 0x40\n236 MLOAD\n237 DUP1\n238 DUP3\n239 DUP2\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "87 DUP1\n88 PUSH4 0x6c343ffe\n93 EQ\n94 PUSH2 0x0116\n97 JUMPI", "id": "92", "isExpanded": false, "label": "87 DUP1\n88 PUSH4 0x6c343ffe\n93 EQ\n94 PUSH2 0x0116\n97 JUMPI", "size": 150, "truncLabel": "87 DUP1\n88 PUSH4 0x6c343ffe\n93 EQ\n94 PUSH2 0x0116\n97 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "255 JUMPDEST\n256 CALLVALUE\n257 DUP1\n258 ISZERO\n259 PUSH2 0x010b\n262 JUMPI", "id": "93", "isExpanded": false, "label": "255 JUMPDEST\n256 CALLVALUE\n257 DUP1\n258 ISZERO\n259 PUSH2 0x010b\n262 JUMPI", "size": 150, "truncLabel": "255 JUMPDEST\n256 CALLVALUE\n257 DUP1\n258 ISZERO\n259 PUSH2 0x010b\n262 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "263 PUSH1 0x00\n265 DUP1\n266 REVERT", "id": "94", "isExpanded": false, "label": "263 PUSH1 0x00\n265 DUP1\n266 REVERT", "size": 150, "truncLabel": "263 PUSH1 0x00\n265 DUP1\n266 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "267 JUMPDEST\n268 POP\n269 PUSH2 0x0114\n272 PUSH2 0x01ec\n275 JUMP", "id": "95", "isExpanded": false, "label": "267 JUMPDEST\n268 POP\n269 PUSH2 0x0114\n272 PUSH2 0x01ec\n275 JUMP", "size": 150, "truncLabel": "267 JUMPDEST\n268 POP\n269 PUSH2 0x0114\n272 PUSH2 0x01ec\n275 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "492 JUMPDEST\n493 CALLER\n494 PUSH1 0x01\n496 PUSH1 0x00\n498 PUSH2 0x0100\n501 EXP\n502 DUP2\n503 SLOAD\n504 DUP2\n505 PUSH20 0xffffffff(...)\n526 MUL\n527 NOT\n528 AND\n529 SWAP1\n530 DUP4\n531 PUSH20 0xffffffff(...)\n552 AND\n553 MUL\n554 OR\n555 SWAP1\n556 SSTORE\n557 POP\n558 JUMP", "id": "96", "isExpanded": false, "label": "492 JUMPDEST\n493 CALLER\n494 PUSH1 0x01\n496 PUSH1 0x00\n498 PUSH2 0x0100\n501 EXP\n(click to expand +)", "size": 150, "truncLabel": "492 JUMPDEST\n493 CALLER\n494 PUSH1 0x01\n496 PUSH1 0x00\n498 PUSH2 0x0100\n501 EXP\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "276 JUMPDEST\n277 STOP", "id": "97", "isExpanded": false, "label": "276 JUMPDEST\n277 STOP", "size": 150, "truncLabel": "276 JUMPDEST\n277 STOP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "98 DUP1\n99 PUSH4 0x8da5cb5b\n104 EQ\n105 PUSH2 0x012d\n108 JUMPI", "id": "98", "isExpanded": false, "label": "98 DUP1\n99 PUSH4 0x8da5cb5b\n104 EQ\n105 PUSH2 0x012d\n108 JUMPI", "size": 150, "truncLabel": "98 DUP1\n99 PUSH4 0x8da5cb5b\n104 EQ\n105 PUSH2 0x012d\n108 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "278 JUMPDEST\n279 CALLVALUE\n280 DUP1\n281 ISZERO\n282 PUSH2 0x0122\n285 JUMPI", "id": "99", "isExpanded": false, "label": "278 JUMPDEST\n279 CALLVALUE\n280 DUP1\n281 ISZERO\n282 PUSH2 0x0122\n285 JUMPI", "size": 150, "truncLabel": "278 JUMPDEST\n279 CALLVALUE\n280 DUP1\n281 ISZERO\n282 PUSH2 0x0122\n285 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "286 PUSH1 0x00\n288 DUP1\n289 REVERT", "id": "100", "isExpanded": false, "label": "286 PUSH1 0x00\n288 DUP1\n289 REVERT", "size": 150, "truncLabel": "286 PUSH1 0x00\n288 DUP1\n289 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "290 JUMPDEST\n291 POP\n292 PUSH2 0x012b\n295 PUSH2 0x022f\n298 JUMP", "id": "101", "isExpanded": false, "label": "290 JUMPDEST\n291 POP\n292 PUSH2 0x012b\n295 PUSH2 0x022f\n298 JUMP", "size": 150, "truncLabel": "290 JUMPDEST\n291 POP\n292 PUSH2 0x012b\n295 PUSH2 0x022f\n298 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "559 JUMPDEST\n560 PUSH1 0x01\n562 PUSH1 0x00\n564 SWAP1\n565 SLOAD\n566 SWAP1\n567 PUSH2 0x0100\n570 EXP\n571 SWAP1\n572 DIV\n573 PUSH20 0xffffffff(...)\n594 AND\n595 PUSH20 0xffffffff(...)\n616 AND\n617 CALLER\n618 PUSH20 0xffffffff(...)\n639 AND\n640 EQ\n641 ISZERO\n642 ISZERO\n643 PUSH2 0x028b\n646 JUMPI", "id": "102", "isExpanded": false, "label": "559 JUMPDEST\n560 PUSH1 0x01\n562 PUSH1 0x00\n564 SWAP1\n565 SLOAD\n566 SWAP1\n(click to expand +)", "size": 150, "truncLabel": "559 JUMPDEST\n560 PUSH1 0x01\n562 PUSH1 0x00\n564 SWAP1\n565 SLOAD\n566 SWAP1\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "647 PUSH1 0x00\n649 DUP1\n650 REVERT", "id": "103", "isExpanded": false, "label": "647 PUSH1 0x00\n649 DUP1\n650 REVERT", "size": 150, "truncLabel": "647 PUSH1 0x00\n649 DUP1\n650 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "651 JUMPDEST\n652 CALLER\n653 PUSH20 0xffffffff(...)\n674 AND\n675 PUSH2 0x08fc\n678 ADDRESS\n679 PUSH20 0xffffffff(...)\n700 AND\n701 BALANCE\n702 SWAP1\n703 DUP2\n704 ISZERO\n705 MUL\n706 SWAP1\n707 PUSH1 0x40\n709 MLOAD\n710 PUSH1 0x00\n712 PUSH1 0x40\n714 MLOAD\n715 DUP1\n716 DUP4\n717 SUB\n718 DUP2\n719 DUP6\n720 DUP9\n721 DUP9\n722 CALL\n723 SWAP4\n724 POP\n725 POP\n726 POP\n727 POP\n728 ISZERO\n729 DUP1\n730 ISZERO\n731 PUSH2 0x02e8\n734 JUMPI", "id": "104", "isExpanded": false, "label": "651 JUMPDEST\n652 CALLER\n653 PUSH20 0xffffffff(...)\n674 AND\n675 PUSH2 0x08fc\n678 ADDRESS\n(click to expand +)", "size": 150, "truncLabel": "651 JUMPDEST\n652 CALLER\n653 PUSH20 0xffffffff(...)\n674 AND\n675 PUSH2 0x08fc\n678 ADDRESS\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "735 RETURNDATASIZE\n736 PUSH1 0x00\n738 DUP1\n739 RETURNDATACOPY\n740 RETURNDATASIZE\n741 PUSH1 0x00\n743 REVERT", "id": "105", "isExpanded": false, "label": "735 RETURNDATASIZE\n736 PUSH1 0x00\n738 DUP1\n739 RETURNDATACOPY\n740 RETURNDATASIZE\n741 PUSH1 0x00\n(click to expand +)", "size": 150, "truncLabel": "735 RETURNDATASIZE\n736 PUSH1 0x00\n738 DUP1\n739 RETURNDATACOPY\n740 RETURNDATASIZE\n741 PUSH1 0x00\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "744 JUMPDEST\n745 POP\n746 JUMP", "id": "106", "isExpanded": false, "label": "744 JUMPDEST\n745 POP\n746 JUMP", "size": 150, "truncLabel": "744 JUMPDEST\n745 POP\n746 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "299 JUMPDEST\n300 STOP", "id": "107", "isExpanded": false, "label": "299 JUMPDEST\n300 STOP", "size": 150, "truncLabel": "299 JUMPDEST\n300 STOP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "109 DUP1\n110 PUSH4 0xe8b5e51f\n115 EQ\n116 PUSH2 0x0184\n119 JUMPI", "id": "108", "isExpanded": false, "label": "109 DUP1\n110 PUSH4 0xe8b5e51f\n115 EQ\n116 PUSH2 0x0184\n119 JUMPI", "size": 150, "truncLabel": "109 DUP1\n110 PUSH4 0xe8b5e51f\n115 EQ\n116 PUSH2 0x0184\n119 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "301 JUMPDEST\n302 CALLVALUE\n303 DUP1\n304 ISZERO\n305 PUSH2 0x0139\n308 JUMPI", "id": "109", "isExpanded": false, "label": "301 JUMPDEST\n302 CALLVALUE\n303 DUP1\n304 ISZERO\n305 PUSH2 0x0139\n308 JUMPI", "size": 150, "truncLabel": "301 JUMPDEST\n302 CALLVALUE\n303 DUP1\n304 ISZERO\n305 PUSH2 0x0139\n308 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "309 PUSH1 0x00\n311 DUP1\n312 REVERT", "id": "110", "isExpanded": false, "label": "309 PUSH1 0x00\n311 DUP1\n312 REVERT", "size": 150, "truncLabel": "309 PUSH1 0x00\n311 DUP1\n312 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "313 JUMPDEST\n314 POP\n315 PUSH2 0x0142\n318 PUSH2 0x02eb\n321 JUMP", "id": "111", "isExpanded": false, "label": "313 JUMPDEST\n314 POP\n315 PUSH2 0x0142\n318 PUSH2 0x02eb\n321 JUMP", "size": 150, "truncLabel": "313 JUMPDEST\n314 POP\n315 PUSH2 0x0142\n318 PUSH2 0x02eb\n321 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "747 JUMPDEST\n748 PUSH1 0x01\n750 PUSH1 0x00\n752 SWAP1\n753 SLOAD\n754 SWAP1\n755 PUSH2 0x0100\n758 EXP\n759 SWAP1\n760 DIV\n761 PUSH20 0xffffffff(...)\n782 AND\n783 DUP2\n784 JUMP", "id": "112", "isExpanded": false, "label": "747 JUMPDEST\n748 PUSH1 0x01\n750 PUSH1 0x00\n752 SWAP1\n753 SLOAD\n754 SWAP1\n(click to expand +)", "size": 150, "truncLabel": "747 JUMPDEST\n748 PUSH1 0x01\n750 PUSH1 0x00\n752 SWAP1\n753 SLOAD\n754 SWAP1\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "322 JUMPDEST\n323 PUSH1 0x40\n325 MLOAD\n326 DUP1\n327 DUP3\n328 PUSH20 0xffffffff(...)\n349 AND\n350 PUSH20 0xffffffff(...)\n371 AND\n372 DUP2\n373 MSTORE\n374 PUSH1 0x20\n376 ADD\n377 SWAP2\n378 POP\n379 POP\n380 PUSH1 0x40\n382 MLOAD\n383 DUP1\n384 SWAP2\n385 SUB\n386 SWAP1\n387 RETURN", "id": "113", "isExpanded": false, "label": "322 JUMPDEST\n323 PUSH1 0x40\n325 MLOAD\n326 DUP1\n327 DUP3\n328 PUSH20 0xffffffff(...)\n(click to expand +)", "size": 150, "truncLabel": "322 JUMPDEST\n323 PUSH1 0x40\n325 MLOAD\n326 DUP1\n327 DUP3\n328 PUSH20 0xffffffff(...)\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "120 JUMPDEST\n121 PUSH1 0x00\n123 DUP1\n124 REVERT", "id": "114", "isExpanded": false, "label": "120 JUMPDEST\n121 PUSH1 0x00\n123 DUP1\n124 REVERT", "size": 150, "truncLabel": "120 JUMPDEST\n121 PUSH1 0x00\n123 DUP1\n124 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "388 JUMPDEST\n389 PUSH2 0x018c\n392 PUSH2 0x0311\n395 JUMP", "id": "115", "isExpanded": false, "label": "388 JUMPDEST\n389 PUSH2 0x018c\n392 PUSH2 0x0311\n395 JUMP", "size": 150, "truncLabel": "388 JUMPDEST\n389 PUSH2 0x018c\n392 PUSH2 0x0311\n395 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "785 JUMPDEST\n786 PUSH1 0x02\n788 SLOAD\n789 CALLVALUE\n790 GT\n791 DUP1\n792 ISZERO\n793 PUSH2 0x0323\n796 JUMPI", "id": "116", "isExpanded": false, "label": "785 JUMPDEST\n786 PUSH1 0x02\n788 SLOAD\n789 CALLVALUE\n790 GT\n791 DUP1\n(click to expand +)", "size": 150, "truncLabel": "785 JUMPDEST\n786 PUSH1 0x02\n788 SLOAD\n789 CALLVALUE\n790 GT\n791 DUP1\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "797 POP\n798 PUSH1 0x03\n800 SLOAD\n801 CALLVALUE\n802 LT\n803 JUMPDEST\n804 ISZERO\n805 ISZERO\n806 PUSH2 0x032e\n809 JUMPI", "id": "117", "isExpanded": false, "label": "797 POP\n798 PUSH1 0x03\n800 SLOAD\n801 CALLVALUE\n802 LT\n803 JUMPDEST\n(click to expand +)", "size": 150, "truncLabel": "797 POP\n798 PUSH1 0x03\n800 SLOAD\n801 CALLVALUE\n802 LT\n803 JUMPDEST\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "803 JUMPDEST\n804 ISZERO\n805 ISZERO\n806 PUSH2 0x032e\n809 JUMPI", "id": "118", "isExpanded": false, "label": "803 JUMPDEST\n804 ISZERO\n805 ISZERO\n806 PUSH2 0x032e\n809 JUMPI", "size": 150, "truncLabel": "803 JUMPDEST\n804 ISZERO\n805 ISZERO\n806 PUSH2 0x032e\n809 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "810 PUSH1 0x00\n812 DUP1\n813 REVERT", "id": "119", "isExpanded": false, "label": "810 PUSH1 0x00\n812 DUP1\n813 REVERT", "size": 150, "truncLabel": "810 PUSH1 0x00\n812 DUP1\n813 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "810 PUSH1 0x00\n812 DUP1\n813 REVERT", "id": "120", "isExpanded": false, "label": "810 PUSH1 0x00\n812 DUP1\n813 REVERT", "size": 150, "truncLabel": "810 PUSH1 0x00\n812 DUP1\n813 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "814 JUMPDEST\n815 CALLVALUE\n816 PUSH1 0x00\n818 DUP1\n819 CALLER\n820 PUSH20 0xffffffff(...)\n841 AND\n842 PUSH20 0xffffffff(...)\n863 AND\n864 DUP2\n865 MSTORE\n866 PUSH1 0x20\n868 ADD\n869 SWAP1\n870 DUP2\n871 MSTORE\n872 PUSH1 0x20\n874 ADD\n875 PUSH1 0x00\n877 SHA3\n878 PUSH1 0x00\n880 DUP3\n881 DUP3\n882 SLOAD\n883 ADD\n884 SWAP3\n885 POP\n886 POP\n887 DUP2\n888 SWAP1\n889 SSTORE\n890 POP\n891 JUMP", "id": "121", "isExpanded": false, "label": "814 JUMPDEST\n815 CALLVALUE\n816 PUSH1 0x00\n818 DUP1\n819 CALLER\n820 PUSH20 0xffffffff(...)\n(click to expand +)", "size": 150, "truncLabel": "814 JUMPDEST\n815 CALLVALUE\n816 PUSH1 0x00\n818 DUP1\n819 CALLER\n820 PUSH20 0xffffffff(...)\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "396 JUMPDEST\n397 STOP", "id": "122", "isExpanded": false, "label": "396 JUMPDEST\n397 STOP", "size": 150, "truncLabel": "396 JUMPDEST\n397 STOP"}];
|
|
var edges = [{"arrows": "to", "from": "77", "label": "ULE(4, 6_calldatasize)", "smooth": {"type": "cubicBezier"}, "to": "78"}, {"arrows": "to", "from": "77", "label": "Not(ULE(4, 6_calldatasize))", "smooth": {"type": "cubicBezier"}, "to": "79"}, {"arrows": "to", "from": "78", "label": "Not(And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 0xe0, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 95, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 6, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 18))", "smooth": {"type": "cubicBezier"}, "to": "80"}, {"arrows": "to", "from": "78", "label": "And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 0xe0, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 95, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 6, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 18)", "smooth": {"type": "cubicBezier"}, "to": "81"}, {"arrows": "to", "from": "81", "label": "If(call_value6 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "82"}, {"arrows": "to", "from": "81", "label": "Not(If(call_value6 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "83"}, {"arrows": "to", "from": "83", "label": "", "smooth": {"type": "cubicBezier"}, "to": "84"}, {"arrows": "to", "from": "84", "label": "", "smooth": {"type": "cubicBezier"}, "to": "85"}, {"arrows": "to", "from": "80", "label": "Not(And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 0xe3, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 53, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 0xe2, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 39))", "smooth": {"type": "cubicBezier"}, "to": "86"}, {"arrows": "to", "from": "80", "label": "And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 0xe3, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 53, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 0xe2, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 39)", "smooth": {"type": "cubicBezier"}, "to": "87"}, {"arrows": "to", "from": "87", "label": "If(call_value6 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "88"}, {"arrows": "to", "from": "87", "label": "Not(If(call_value6 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "89"}, {"arrows": "to", "from": "89", "label": "", "smooth": {"type": "cubicBezier"}, "to": "90"}, {"arrows": "to", "from": "90", "label": "", "smooth": {"type": "cubicBezier"}, "to": "91"}, {"arrows": "to", "from": "86", "label": "Not(And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 0xd8, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 92, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 0x88, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 86))", "smooth": {"type": "cubicBezier"}, "to": "92"}, {"arrows": "to", "from": "86", "label": "And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 0xd8, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 92, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 0x88, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 86)", "smooth": {"type": "cubicBezier"}, "to": "93"}, {"arrows": "to", "from": "93", "label": "If(call_value6 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "94"}, {"arrows": "to", "from": "93", "label": "Not(If(call_value6 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "95"}, {"arrows": "to", "from": "95", "label": "", "smooth": {"type": "cubicBezier"}, "to": "96"}, {"arrows": "to", "from": "96", "label": "", "smooth": {"type": "cubicBezier"}, "to": "97"}, {"arrows": "to", "from": "92", "label": "Not(And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 0xfe, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 63, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 52, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 0x6c))", "smooth": {"type": "cubicBezier"}, "to": "98"}, {"arrows": "to", "from": "92", "label": "And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 0xfe, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 63, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 52, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 0x6c)", "smooth": {"type": "cubicBezier"}, "to": "99"}, {"arrows": "to", "from": "99", "label": "If(call_value6 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "100"}, {"arrows": "to", "from": "99", "label": "Not(If(call_value6 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "101"}, {"arrows": "to", "from": "101", "label": "", "smooth": {"type": "cubicBezier"}, "to": "102"}, {"arrows": "to", "from": "102", "label": "If(If(Extract(0x9f, 0, sender_6) == Extract(0x9f, 0, storage_1_0), 0, 1) == 0, 1, 0) ==0", "smooth": {"type": "cubicBezier"}, "to": "103"}, {"arrows": "to", "from": "102", "label": "Not(If(If(Extract(0x9f, 0, sender_6) == Extract(0x9f, 0, storage_1_0), 0, 1) == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "104"}, {"arrows": "to", "from": "104", "label": "If(If(6_retval_722 == 0, 1, 0) == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "105"}, {"arrows": "to", "from": "104", "label": "Not(If(If(6_retval_722 == 0, 1, 0) == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "106"}, {"arrows": "to", "from": "106", "label": "", "smooth": {"type": "cubicBezier"}, "to": "107"}, {"arrows": "to", "from": "98", "label": "Not(And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 91, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 0xcb, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 0xa5, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 0x8d))", "smooth": {"type": "cubicBezier"}, "to": "108"}, {"arrows": "to", "from": "98", "label": "And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 91, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 0xcb, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 0xa5, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 0x8d)", "smooth": {"type": "cubicBezier"}, "to": "109"}, {"arrows": "to", "from": "109", "label": "If(call_value6 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "110"}, {"arrows": "to", "from": "109", "label": "Not(If(call_value6 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "111"}, {"arrows": "to", "from": "111", "label": "", "smooth": {"type": "cubicBezier"}, "to": "112"}, {"arrows": "to", "from": "112", "label": "", "smooth": {"type": "cubicBezier"}, "to": "113"}, {"arrows": "to", "from": "108", "label": "Not(And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 31, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 0xe5, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 0xb5, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 0xe8))", "smooth": {"type": "cubicBezier"}, "to": "114"}, {"arrows": "to", "from": "108", "label": "And(If(6_calldatasize \u003c= 3, 0, 6_calldata[3]) == 31, If(6_calldatasize \u003c= 2, 0, 6_calldata[2]) == 0xe5, If(6_calldatasize \u003c= 1, 0, 6_calldata[1]) == 0xb5, If(6_calldatasize \u003c= 0, 0, 6_calldata[0]) == 0xe8)", "smooth": {"type": "cubicBezier"}, "to": "115"}, {"arrows": "to", "from": "115", "label": "", "smooth": {"type": "cubicBezier"}, "to": "116"}, {"arrows": "to", "from": "116", "label": "If(ULE(call_value6, storage_2_0), 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "117"}, {"arrows": "to", "from": "116", "label": "Not(If(ULE(call_value6, storage_2_0), 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "118"}, {"arrows": "to", "from": "118", "label": "If(If(ULE(call_value6, storage_2_0), 1, 0) == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "119"}, {"arrows": "to", "from": "117", "label": "If(If(ULE(storage_3_0, call_value6), 1, 0) == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "120"}, {"arrows": "to", "from": "117", "label": "Not(If(If(ULE(storage_3_0, call_value6), 1, 0) == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "121"}, {"arrows": "to", "from": "121", "label": "", "smooth": {"type": "cubicBezier"}, "to": "122"}];
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<p>Mythril / Ethereum LASER Symbolic VM</p>
|
|
<div id="mynetwork"></div>
|
|
<script type="text/javascript">
|
|
var container = document.getElementById('mynetwork');
|
|
|
|
var nodesSet = new vis.DataSet(nodes);
|
|
var edgesSet = new vis.DataSet(edges);
|
|
var data = {'nodes': nodesSet, 'edges': edgesSet}
|
|
|
|
var gph = new vis.Network(container, data, options);
|
|
gph.on("click", function (params) {
|
|
// parse node id
|
|
var nodeID = params['nodes']['0'];
|
|
if (nodeID) {
|
|
var clickedNode = nodesSet.get(nodeID);
|
|
|
|
if(clickedNode.isExpanded) {
|
|
clickedNode.label = clickedNode.truncLabel;
|
|
}
|
|
else {
|
|
clickedNode.label = clickedNode.fullLabel;
|
|
}
|
|
|
|
clickedNode.isExpanded = !clickedNode.isExpanded;
|
|
|
|
nodesSet.update(clickedNode);
|
|
}
|
|
});
|
|
</script>
|
|
</body>
|
|
</html> |