urt-rs / docs /research /qvm-client-move-scratch.json
nmarshall's picture
qvm: recover movement scratch and mode dispatch
eae7f32
Raw History Blame Contribute Delete
16.5 kB
{
"limits": "154544..154579: native memset modeled exactly; mode callbacks captured without feedback. No movement simulation.",
"probes": [
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
}
],
"execution": {
"stop": 154579,
"trace_length": 17,
"trace_sha256": "3ce2e9d2e50d38c84f3d006b95945877beb9cd1056c3a5f0de554412e58045ad"
},
"guards": [
"00000000",
"00000000"
],
"input": {
"dirty": 0,
"mode": 0
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
}
],
"execution": {
"stop": 154579,
"trace_length": 17,
"trace_sha256": "3ce2e9d2e50d38c84f3d006b95945877beb9cd1056c3a5f0de554412e58045ad"
},
"guards": [
"a5a5a5a5",
"a5a5a5a5"
],
"input": {
"dirty": 165,
"mode": 0
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
}
],
"execution": {
"stop": 154579,
"trace_length": 17,
"trace_sha256": "3ce2e9d2e50d38c84f3d006b95945877beb9cd1056c3a5f0de554412e58045ad"
},
"guards": [
"ffffffff",
"ffffffff"
],
"input": {
"dirty": 255,
"mode": 0
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
},
{
"op": "callback",
"slot": 2,
"target": 153419
}
],
"execution": {
"stop": 154579,
"trace_length": 23,
"trace_sha256": "ac64b60842e8be6cbd5c366eba3ab6ea75835766e0c7db630f727f945c928ae2"
},
"guards": [
"00000000",
"00000000"
],
"input": {
"dirty": 0,
"mode": 8
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
},
{
"op": "callback",
"slot": 2,
"target": 153419
}
],
"execution": {
"stop": 154579,
"trace_length": 23,
"trace_sha256": "ac64b60842e8be6cbd5c366eba3ab6ea75835766e0c7db630f727f945c928ae2"
},
"guards": [
"a5a5a5a5",
"a5a5a5a5"
],
"input": {
"dirty": 165,
"mode": 8
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
},
{
"op": "callback",
"slot": 2,
"target": 153419
}
],
"execution": {
"stop": 154579,
"trace_length": 23,
"trace_sha256": "ac64b60842e8be6cbd5c366eba3ab6ea75835766e0c7db630f727f945c928ae2"
},
"guards": [
"ffffffff",
"ffffffff"
],
"input": {
"dirty": 255,
"mode": 8
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
},
{
"op": "callback",
"slot": 2,
"target": 152792
},
{
"op": "callback",
"slot": 2,
"target": 152673
}
],
"execution": {
"stop": 154579,
"trace_length": 29,
"trace_sha256": "a7e35d82111427365fc7c826af34dcb38ab1ea1738e18955fe9f0b51859810d4"
},
"guards": [
"00000000",
"00000000"
],
"input": {
"dirty": 0,
"mode": 10
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
},
{
"op": "callback",
"slot": 2,
"target": 152792
},
{
"op": "callback",
"slot": 2,
"target": 152673
}
],
"execution": {
"stop": 154579,
"trace_length": 29,
"trace_sha256": "a7e35d82111427365fc7c826af34dcb38ab1ea1738e18955fe9f0b51859810d4"
},
"guards": [
"a5a5a5a5",
"a5a5a5a5"
],
"input": {
"dirty": 165,
"mode": 10
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
},
{
"op": "callback",
"slot": 2,
"target": 152792
},
{
"op": "callback",
"slot": 2,
"target": 152673
}
],
"execution": {
"stop": 154579,
"trace_length": 29,
"trace_sha256": "a7e35d82111427365fc7c826af34dcb38ab1ea1738e18955fe9f0b51859810d4"
},
"guards": [
"ffffffff",
"ffffffff"
],
"input": {
"dirty": 255,
"mode": 10
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
}
],
"execution": {
"stop": 154579,
"trace_length": 17,
"trace_sha256": "3ce2e9d2e50d38c84f3d006b95945877beb9cd1056c3a5f0de554412e58045ad"
},
"guards": [
"00000000",
"00000000"
],
"input": {
"dirty": 0,
"mode": 4294967295
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
}
],
"execution": {
"stop": 154579,
"trace_length": 17,
"trace_sha256": "3ce2e9d2e50d38c84f3d006b95945877beb9cd1056c3a5f0de554412e58045ad"
},
"guards": [
"a5a5a5a5",
"a5a5a5a5"
],
"input": {
"dirty": 165,
"mode": 4294967295
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"events": [
{
"count": 268,
"offset": 56,
"op": "zero"
}
],
"execution": {
"stop": 154579,
"trace_length": 17,
"trace_sha256": "3ce2e9d2e50d38c84f3d006b95945877beb9cd1056c3a5f0de554412e58045ad"
},
"guards": [
"ffffffff",
"ffffffff"
],
"input": {
"dirty": 255,
"mode": 4294967295
},
"words": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
}
],
"sha256": "a589351dfe517470a1b121dd2164714987d9e4577bf00c6486e1540035d7a79d",
"source": {
"archive": "zUrT43_qvm.pk3",
"archive_sha256": "b59bf0c5bedf11d50e0edd220da7eade96de40601e98ae14c54c819047df0796",
"member": {
"bytes": 983300,
"comment_hex": "",
"compressed_bytes": 246560,
"compression": 8,
"crc32": "98ea1768",
"create_system": 0,
"create_version": 63,
"date_time": [
2018,
6,
18,
22,
11,
50
],
"directory": false,
"entry_index": 2,
"external_attr": 32,
"extra_hex": "0a0020000000000001001800d1e24e974007d40116dcbf962f1fd20116dcbf962f1fd201",
"extract_version": 20,
"flags": 0,
"header_offset": 221309,
"internal_attr": 0,
"occurrence": 0,
"output": "assets/extracted/zUrT43_qvm.pk3/members/000002/vm/qagame.qvm",
"path": "vm/qagame.qvm",
"sha256": "a589351dfe517470a1b121dd2164714987d9e4577bf00c6486e1540035d7a79d",
"type": "member",
"volume": 0
}
}
}