isle/out.html
2024-03-26 07:11:43 -04:00

1233 lines
3.5 MiB

<!DOCTYPE html>
<html>
<head>
<title>Decompilation Status</title>
<style>
body {
background: #202020;
color: #f0f0f0;
font-family: sans-serif;
}
h1 {
text-align: center;
}
.main {
width: 800px;
max-width: 100%;
margin: auto;
}
#search {
width: 100%;
box-sizing: border-box;
background: #303030;
color: #f0f0f0;
border: 1px #f0f0f0 solid;
padding: 0.5em;
border-radius: 0.5em;
}
#search::placeholder {
color: #b0b0b0;
}
#listing {
width: 100%;
border-collapse: collapse;
font-family: monospace;
}
func-row:hover {
background: #404040 !important;
}
func-row:nth-child(odd of :not([hidden])), #listing > thead th {
background: #282828;
}
func-row:nth-child(even of :not([hidden])) {
background: #383838;
}
table#listing {
border: 1px #f0f0f0 solid;
}
#listing > thead th {
padding: 0.5em;
user-select: none;
width: 10%;
text-align: left;
}
#listing:not([show-recomp]) > thead th[data-col="recomp"] {
display: none;
}
#listing > thead th > div {
display: flex;
column-gap: 0.5em;
}
#listing > thead th > div > span {
cursor: pointer;
}
#listing > thead th > div > span:hover {
text-decoration: underline;
text-decoration-style: dotted;
}
#listing > thead th:last-child > div {
justify-content: right;
}
#listing > thead th[data-col="name"] {
width: 60%;
}
.diffneg {
color: #FF8080;
}
.diffpos {
color: #80FF80;
}
.diffslug {
color: #8080FF;
}
.identical {
font-style: italic;
text-align: center;
}
sort-indicator {
user-select: none;
}
.filters {
align-items: top;
display: flex;
font-size: 10pt;
justify-content: space-between;
margin: 0.5em 0 1em 0;
}
.filters > fieldset {
/* checkbox and radio buttons v-aligned with text */
align-items: center;
display: flex;
}
.filters > fieldset > input, .filters > fieldset > label {
cursor: pointer;
}
.filters > fieldset > label {
margin-right: 10px;
}
table.diffTable {
border-collapse: collapse;
}
table.diffTable:not(:last-child) {
/* visual gap *between* diff context groups */
margin-bottom: 40px;
}
table.diffTable td, table.diffTable th {
border: 0 none;
padding: 0 10px 0 0;
}
table.diffTable th {
/* don't break address if asm line is long */
word-break: keep-all;
}
diff-display[data-option="0"] th:nth-child(1) {
display: none;
}
diff-display[data-option="0"] th:nth-child(2),
diff-display[data-option="1"] th:nth-child(2) {
display: none;
}
label {
user-select: none;
}
#pageDisplay > button {
cursor: pointer;
padding: 0.25em 0.5em;
}
#pageDisplay select {
cursor: pointer;
padding: 0.25em;
margin: 0 0.5em;
}
p.rowcount {
align-self: flex-end;
font-size: 1.2em;
margin-bottom: 0;
}
</style>
<script>var data = [{"address": "0x10001000", "recomp": "0x10048400", "name": "Score::Score", "matching": 1.0, "diff": []}, {"address": "0x10001070", "recomp": "0x100035d0", "name": "MxEntity::Create", "matching": 1.0, "diff": []}, {"address": "0x10001090", "recomp": "0x100035f0", "name": "LegoEntity::SetWorldSpeed", "matching": 1.0, "diff": []}, {"address": "0x100010a0", "recomp": "0x1000d2e0", "name": "LegoWorld::VTable0x60", "matching": 1.0, "diff": []}, {"address": "0x100010b0", "recomp": "0x100485b0", "name": "Score::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x100010c0", "recomp": "0x10048470", "name": "Score::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100010d0", "recomp": "0x10048480", "name": "Score::IsA", "matching": 1.0, "diff": []}, {"address": "0x100011e0", "recomp": "0x10048590", "name": "Score::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10001200", "recomp": "0x100485c0", "name": "Score::~Score", "matching": 1.0, "diff": []}, {"address": "0x100012a0", "recomp": "0x10048660", "name": "Score::Create", "matching": 1.0, "diff": []}, {"address": "0x10001340", "recomp": "0x10048700", "name": "Score::DeleteScript", "matching": 1.0, "diff": []}, {"address": "0x10001410", "recomp": "0x100487d0", "name": "Score::Notify", "matching": 0.8654970760233918, "diff": [["@@ -0x10001417,24 +0x100487d7,24 @@", [{"both": [["0x10001417", "mov esi, dword ptr [esp + 0x10]", "0x100487d7"], ["0x1000141b", "push esi", "0x100487db"], ["0x1000141c", "call LegoWorld::Notify (FUNCTION)", "0x100487dc"], ["0x10001421", "cmp byte ptr [ebx + 0xf6], 0", "0x100487e1"], ["0x10001428", "je 0x9c", "0x100487e8"], ["0x1000142e", "mov ecx, dword ptr [esi + 4]", "0x100487ee"], ["0x10001431", "dec ecx", "0x100487f1"], ["0x10001432", "cmp ecx, 0x17", "0x100487f2"], ["0x10001435", "ja 0x8f", "0x100487f5"], ["0x1000143b", "xor eax, eax", "0x100487fb"]]}, {"orig": [["0x1000143d", "mov al, byte ptr [ecx + 0x100014ec]"], ["0x10001443", "jmp dword ptr [eax*4 + 0x100014d4]"]], "recomp": [["0x100487fd", "mov al, byte ptr [ecx + 0x100488ac]"], ["0x10048803", "jmp dword ptr [eax*4 + 0x10048894]"], ["0x1004880a", "mov edi, 1"]]}, {"both": [["0x1000144a", "mov ecx, ebx", "0x1004880f"]]}, {"orig": [["0x1000144c", "mov edi, 1"]], "recomp": []}, {"both": [["0x10001451", "call Score::Paint (FUNCTION)", "0x10048811"], ["0x10001456", "mov eax, edi", "0x10048816"], ["0x10001458", "pop edi", "0x10048818"], ["0x10001459", "pop esi", "0x10048819"], ["0x1000145a", "pop ebx", "0x1004881a"], ["0x1000145b", "ret 4", "0x1004881b"], ["0x1000145e", "push esi", "0x1004881e"], ["0x1000145f", "mov ecx, ebx", "0x1004881f"], ["0x10001461", "call Score::FUN_10001510 (FUNCTION)", "0x10048821"], ["0x10001466", "mov edi, eax", "0x10048826"]]}]], ["@@ -0x100014b9,24 +0x10048879,21 @@", [{"both": [["0x100014b9", "call GameState (FUNCTION)", "0x10048879"], ["0x100014be", "mov ecx, eax", "0x1004887e"], ["0x100014c0", "call LegoGameState::SwitchArea (FUNCTION)", "0x10048880"], ["0x100014c5", "mov edi, 1", "0x10048885"], ["0x100014ca", "mov eax, edi", "0x1004888a"], ["0x100014cc", "pop edi", "0x1004888c"], ["0x100014cd", "pop esi", "0x1004888d"], ["0x100014ce", "pop ebx", "0x1004888e"], ["0x100014cf", "ret 4", "0x1004888f"], ["0x100014d2", "mov edi, edi", "0x10048892"]]}, {"orig": [["0x100014d4", "dec edx"], ["0x100014d5", "adc al, 0"], ["0x100014d7", "adc byte ptr [esi + 0x14], bl"], ["0x100014da", "add byte ptr [eax], dl"], ["0x100014dc", "jo 0x14"], ["0x100014de", "add byte ptr [eax], dl"], ["0x100014e0", "mov dl, byte ptr [eax + eax]"], ["0x100014e3", "adc byte ptr [esp + edx + 0x14ca1000], bl"], ["0x100014ea", "add byte ptr [eax], dl"], ["0x100014ec", "add byte ptr [ecx], al"]], "recomp": [["0x10048894", "or cl, byte ptr [eax - 0x77e1effc]"], ["0x1004889a", "add al, 0x10"], ["0x1004889c", "xor byte ptr [eax - 0x77b5effc], cl"], ["0x100488a2", "add al, 0x10"], ["0x100488a4", "pop esp"], ["0x100488a5", "mov byte ptr [eax + edx], al"], ["0x100488a8", "mov cl, byte ptr [eax + 0x1001004]"]]}, {"both": [["0x100014ee", "add eax, 0x2050505", "0x100488ae"], ["0x100014f3", "add eax, 0x5050505", "0x100488b3"], ["0x100014f8", "add eax, 0x3050505", "0x100488b8"], ["0x100014fd", "add eax, 0x5050505", "0x100488bd"]]}]]]}, {"address": "0x10001510", "recomp": "0x100488d0", "name": "Score::FUN_10001510", "matching": 0.9411764705882353, "diff": [["@@ -0x10001510,16 +0x100488d0,16 @@", [{"both": [["0x10001510", "mov eax, dword ptr [esp + 4]", "0x100488d0"], ["0x10001514", "push esi", "0x100488d4"], ["0x10001515", "mov esi, ecx", "0x100488d5"], ["0x10001517", "mov eax, dword ptr [eax + 0xc]", "0x100488d7"]]}, {"orig": [["0x1000151a", "mov ecx, dword ptr [eax + 0x20]"], ["0x1000151d", "cmp dword ptr [esi + 0xc], ecx"]], "recomp": [["0x100488da", "mov ecx, dword ptr [esi + 0xc]"], ["0x100488dd", "cmp dword ptr [eax + 0x20], ecx"]]}, {"both": [["0x10001520", "jne 0x53", "0x100488e0"], ["0x10001522", "mov eax, dword ptr [eax + 0x1c]", "0x100488e2"], ["0x10001525", "cmp eax, 0xa", "0x100488e5"], ["0x10001528", "je 0x10", "0x100488e8"], ["0x1000152a", "cmp eax, 0x1f5", "0x100488ea"], ["0x1000152f", "je 0x30", "0x100488ef"], ["0x10001531", "mov eax, 1", "0x100488f1"], ["0x10001536", "pop esi", "0x100488f6"], ["0x10001537", "ret 4", "0x100488f7"], ["0x1000153a", "mov dword ptr [esi + 0xf8], 0x38", "0x100488fa"]]}]]]}, {"address": "0x10001580", "recomp": "0x10048940", "name": "Score::ReadyWorld", "matching": 0.8292682926829268, "diff": [["@@ -0x10001580,45 +0x10048940,45 @@", [{"both": [["0x10001580", "mov eax, dword ptr fs:[0]", "0x10048940"], ["0x10001586", "push ebp", "0x10048946"], ["0x10001587", "mov ebp, esp", "0x10048947"], ["0x10001589", "push -1", "0x10048949"], ["0x1000158b", "push <OFFSET1>", "0x1004894b"], ["0x10001590", "push eax", "0x10048950"], ["0x10001591", "mov dword ptr fs:[0], esp", "0x10048951"], ["0x10001598", "sub esp, 0x12c", "0x10048958"], ["0x1000159e", "mov dword ptr [ebp - 0x10], ecx", "0x1004895e"], ["0x100015a1", "call LegoWorld::ReadyWorld (FUNCTION)", "0x10048961"]]}, {"orig": [["0x100015a6", "lea ecx, [ebp - 0x138]"]], "recomp": [["0x10048966", "lea ecx, [ebp - 0xa4]"]]}, {"both": [["0x100015ac", "call MxDSAction::MxDSAction (FUNCTION)", "0x1004896c"], ["0x100015b1", "mov dword ptr [ebp - 4], 0", "0x10048971"]]}, {"orig": [["0x100015b8", "mov dword ptr [ebp - 0x11c], 0x1f4"]], "recomp": [["0x10048978", "mov dword ptr [ebp - 0x88], 0x1f4"]]}, {"both": [["0x100015c2", "mov eax, dword ptr [ebp - 0x10]", "0x10048982"], ["0x100015c5", "mov byte ptr [ebp - 4], 1", "0x10048985"], ["0x100015c9", "mov ecx, dword ptr [eax + 0xc]", "0x10048989"]]}, {"orig": [["0x100015cc", "mov dword ptr [ebp - 0x14], ecx"], ["0x100015cf", "lea ecx, [ebp - 0x14]"]], "recomp": [["0x1004898c", "mov dword ptr [ebp - 0xa8], ecx"], ["0x10048992", "lea ecx, [ebp - 0xa8]"]]}, {"both": [["0x100015d2", "push ecx", "0x10048998"]]}, {"orig": [["0x100015d3", "lea ecx, [ebp - 0x118]"]], "recomp": [["0x10048999", "lea ecx, [ebp - 0x84]"]]}, {"both": [["0x100015d9", "call MxAtomId::operator= (FUNCTION)", "0x1004899f"], ["0x100015de", "mov byte ptr [ebp - 4], 0", "0x100489a4"], ["0x100015e2", "call <OFFSET5>", "0x100489a8"], ["0x100015e7", "mov eax, dword ptr [ebp - 0x10]", "0x100489ad"]]}, {"orig": [["0x100015ea", "lea ecx, [ebp - 0x138]"]], "recomp": [["0x100489b0", "lea ecx, [ebp - 0xa4]"]]}, {"both": [["0x100015f0", "push ecx", "0x100489b6"]]}, {"orig": [["0x100015f1", "mov dword ptr [ebp - 0xb4], eax"]], "recomp": [["0x100489b7", "mov dword ptr [ebp - 0x20], eax"]]}, {"both": [["0x100015f7", "call Start (FUNCTION)", "0x100489ba"], ["0x100015fc", "add esp, 4", "0x100489bf"], ["0x100015ff", "mov ecx, dword ptr [ebp - 0x10]", "0x100489c2"], ["0x10001602", "mov edx, dword ptr [ecx + 0xfc]", "0x100489c5"], ["0x10001608", "cmp byte ptr [edx + 8], 0", "0x100489cb"], ["0x1000160c", "je 0x6c", "0x100489cf"]]}, {"orig": [["0x1000160e", "lea ecx, [ebp - 0xa4]"]], "recomp": [["0x100489d1", "lea ecx, [ebp - 0x138]"]]}, {"both": [["0x10001614", "call MxDSAction::MxDSAction (FUNCTION)", "0x100489d7"], ["0x10001619", "mov byte ptr [ebp - 4], 2", "0x100489dc"], ["0x1000161d", "mov dword ptr [ebp - 0x88], 0x1f5", "0x100489e0"], ["0x10001627", "mov eax, dword ptr [g_infoscorScript (DATA)]", "0x100489ea"], ["0x1000162c", "mov byte ptr [ebp - 4], 3", "0x100489ef"], ["0x10001630", "mov ecx, dword ptr [eax]", "0x100489f3"], ["0x10001632", "mov dword ptr [ebp - 0x10], ecx", "0x100489f5"], ["0x10001635", "lea ecx, [ebp - 0x10]", "0x100489f8"], ["0x10001638", "push ecx", "0x100489fb"], ["0x10001639", "lea ecx, [ebp - 0x84]", "0x100489fc"]]}]], ["@@ -0x10001648,38 +0x10048a0b,32 @@", [{"both": [["0x10001648", "call <OFFSET8>", "0x10048a0b"], ["0x1000164d", "lea eax, [ebp - 0xa4]", "0x10048a10"], ["0x10001653", "push eax", "0x10048a16"], ["0x10001654", "call Start (FUNCTION)", "0x10048a17"], ["0x10001659", "mov byte ptr [ebp - 4], 0", "0x10048a1c"], ["0x1000165d", "add esp, 4", "0x10048a20"], ["0x10001660", "call <OFFSET9>", "0x10048a23"], ["0x10001665", "jmp 0x1d", "0x10048a28"], ["0x10001667", "lea ecx, [ebp - 0x10]", "0x10048a2a"], ["0x1000166a", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10048a2d"]]}, {"orig": [["0x1000166f", "lea ecx, [ebp - 0xa4]"]], "recomp": [["0x10048a32", "lea ecx, [ebp - 0x138]"]]}, {"both": [["0x10001675", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x10048a38"], ["0x1000167a", "push 0xb", "0x10048a3d"], ["0x1000167c", "call PlayMusic (FUNCTION)", "0x10048a3f"], ["0x10001681", "add esp, 4", "0x10048a44"], ["0x10001684", "push 7", "0x10048a47"], ["0x10001686", "push 0", "0x10048a49"], ["0x10001688", "call FUN_10015820 (FUNCTION)", "0x10048a4b"], ["0x1000168d", "mov dword ptr [ebp - 4], 0xffffffff", "0x10048a50"], ["0x10001694", "add esp, 8", "0x10048a57"], ["0x10001697", "call <OFFSET14>", "0x10048a5a"], ["0x1000169c", "mov eax, dword ptr [ebp - 0xc]", "0x10048a5f"], ["0x1000169f", "mov esp, ebp", "0x10048a62"], ["0x100016a1", "mov dword ptr fs:[0], eax", "0x10048a64"], ["0x100016a7", "pop ebp", "0x10048a6a"], ["0x100016a8", "ret ", "0x10048a6b"]]}, {"orig": [["0x100016a9", "lea ecx, [ebp - 0x14]"]], "recomp": [["0x10048a6c", "lea ecx, [ebp - 0xa8]"]]}, {"both": [["0x100016ac", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10048a72"], ["0x100016b1", "mov eax, <OFFSET15>", "0x10048a77"], ["0x100016b6", "jmp ___CxxFrameHandler (FUNCTION)", "0x10048a7c"]]}, {"orig": [["0x100016bb", "lea ecx, [ebp - 0x138]"]], "recomp": [["0x10048a81", "lea ecx, [ebp - 0xa4]"]]}, {"both": [["0x100016c1", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x10048a87"]]}, {"orig": [["0x100016c6", "int3 "], ["0x100016c7", "int3 "], ["0x100016c8", "int3 "], ["0x100016c9", "int3 "], ["0x100016ca", "int3 "], ["0x100016cb", "int3 "]], "recomp": []}]]]}, {"address": "0x100016d0", "recomp": "0x10048a90", "name": "Score::FUN_100016d0", "matching": 0.9580838323353293, "diff": [["@@ -0x100016f3,21 +0x10048ab3,21 @@", [{"both": [["0x100016f3", "mov esi, ecx", "0x10048ab3"], ["0x100016f5", "mov cx, word ptr [eax + 0x28]", "0x10048ab5"], ["0x100016f9", "cmp cx, 1", "0x10048ab9"], ["0x100016fd", "je 0x6", "0x10048abd"], ["0x100016ff", "cmp dword ptr [eax + 0x20], 4", "0x10048abf"], ["0x10001703", "jne 0x35", "0x10048ac3"], ["0x10001705", "mov eax, dword ptr [eax + 0x20]", "0x10048ac5"], ["0x10001708", "dec eax", "0x10048ac8"], ["0x10001709", "cmp eax, 3", "0x10048ac9"], ["0x1000170c", "ja 0x2c", "0x10048acc"]]}, {"orig": [["0x1000170e", "jmp dword ptr [eax*4 + 0x10001970]"]], "recomp": [["0x10048ace", "jmp dword ptr [eax*4 + 0x10048d30]"]]}, {"both": [["0x10001715", "mov dword ptr [esi + 0xf8], 2", "0x10048ad5"], ["0x1000171f", "mov ecx, esi", "0x10048adf"], ["0x10001721", "call Score::DeleteScript (FUNCTION)", "0x10048ae1"], ["0x10001726", "push 0", "0x10048ae6"], ["0x10001728", "push 0", "0x10048ae8"], ["0x1000172a", "push 0x32", "0x10048aea"], ["0x1000172c", "push 3", "0x10048aec"], ["0x1000172e", "call TransitionManager (FUNCTION)", "0x10048aee"], ["0x10001733", "mov ecx, eax", "0x10048af3"], ["0x10001735", "call MxTransitionManager::StartTransition (FUNCTION)", "0x10048af5"]]}]], ["@@ -0x1000193f,16 +0x10048cff,16 @@", [{"both": [["0x1000193f", "mov dword ptr [ebp - 4], 0xffffffff", "0x10048cff"], ["0x10001946", "add esp, 4", "0x10048d06"], ["0x10001949", "call <OFFSET19>", "0x10048d09"], ["0x1000194e", "jmp -0x219", "0x10048d0e"], ["0x10001953", "lea ecx, [ebp - 0x10]", "0x10048d13"], ["0x10001956", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10048d16"], ["0x1000195b", "mov eax, <OFFSET20>", "0x10048d1b"], ["0x10001960", "jmp ___CxxFrameHandler (FUNCTION)", "0x10048d20"], ["0x10001965", "lea ecx, [ebp - 0xa4]", "0x10048d25"], ["0x1000196b", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x10048d2b"]]}, {"orig": [["0x10001970", "adc eax, 0x51100017"], ["0x10001975", "pop ss"], ["0x10001976", "add byte ptr [eax], dl"], ["0x10001978", "pop ebp"], ["0x10001979", "pop ss"], ["0x1000197a", "add byte ptr [eax], dl"]], "recomp": [["0x10048d30", "aad 0x8a"], ["0x10048d32", "add al, 0x10"], ["0x10048d34", "adc dword ptr [ebx - 0x74e2effc], ecx"], ["0x10048d3a", "add al, 0x10"], ["0x10048d3c", "test al, 0x8b"], ["0x10048d3e", "add al, 0x10"]]}]]]}, {"address": "0x10001980", "recomp": "0x10048d40", "name": "Score::Enable", "matching": 1.0, "diff": []}, {"address": "0x100019d0", "recomp": "0x10048d90", "name": "Score::Paint", "matching": 0.6072106261859582, "diff": [["@@ -0x100019d0,78 +0x10048d90,102 @@", [{"both": [["0x100019d0", "sub esp, 0x84", "0x10048d90"], ["0x100019d6", "mov dword ptr [esp + 4], ecx", "0x10048d96"], ["0x100019da", "push ebx", "0x10048d9a"]]}, {"orig": [["0x100019db", "mov dword ptr [esp + 0x10], 'bigcube.gif' (STRING)"]], "recomp": []}, {"both": [["0x100019e3", "push esi", "0x10048d9b"], ["0x100019e4", "push edi", "0x10048d9c"], ["0x100019e5", "push ebp", "0x10048d9d"], ["0x100019e6", "call TextureContainer (FUNCTION)", "0x10048d9e"]]}, {"orig": [["0x100019eb", "lea ecx, [eax + 8]"], ["0x100019ee", "mov esi, eax"]], "recomp": [["0x10048da3", "mov edx, dword ptr [eax + 0xc]"]]}, {"both": [["0x100019f0", "mov dword ptr [esp + 0x18], 0", "0x10048da6"]]}, {"orig": [["0x100019f8", "lea eax, [esp + 0x1c]"], ["0x100019fc", "push eax"], ["0x100019fd", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Lbound (FUNCTION)"], ["0x10001a02", "mov dword ptr [esp + 0x28], eax"], ["0x10001a06", "cmp dword ptr [esi + 0xc], eax"], ["0x10001a09", "je 0x34"], ["0x10001a0b", "mov ecx, dword ptr [esp + 0x1c]"], ["0x10001a0f", "mov eax, dword ptr [eax + 0xc]"], ["0x10001a12", "mov dl, byte ptr [ecx]"], ["0x10001a14", "cmp dl, byte ptr [eax]"]], "recomp": [["0x10048dae", "mov esi, dword ptr [edx + 4]"], ["0x10048db1", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"], ["0x10048db7", "je 0x42"], ["0x10048db9", "mov ecx, dword ptr [esi + 0xc]"], ["0x10048dbc", "mov edi, 'bigcube.gif' (STRING)"], ["0x10048dc1", "mov bl, byte ptr [ecx]"], ["0x10048dc3", "cmp bl, byte ptr [edi]"]]}, {"both": [["0x10001a16", "jne 0x1a", "0x10048dc5"]]}, {"orig": [["0x10001a18", "or dl, dl"], ["0x10001a1a", "je 0x12"], ["0x10001a1c", "mov dl, byte ptr [ecx + 1]"], ["0x10001a1f", "cmp dl, byte ptr [eax + 1]"]], "recomp": [["0x10048dc7", "or bl, bl"], ["0x10048dc9", "je 0x12"], ["0x10048dcb", "mov bl, byte ptr [ecx + 1]"], ["0x10048dce", "cmp bl, byte ptr [edi + 1]"]]}, {"both": [["0x10001a22", "jne 0xe", "0x10048dd1"], ["0x10001a24", "add ecx, 2", "0x10048dd3"]]}, {"orig": [["0x10001a27", "add eax, 2"], ["0x10001a2a", "or dl, dl"]], "recomp": [["0x10048dd6", "add edi, 2"], ["0x10048dd9", "or bl, bl"]]}, {"both": [["0x10001a2c", "jne -0x1c", "0x10048ddb"]]}, {"orig": [["0x10001a2e", "xor eax, eax"]], "recomp": [["0x10048ddd", "xor ecx, ecx"]]}, {"both": [["0x10001a30", "jmp 0x5", "0x10048ddf"]]}, {"orig": [["0x10001a32", "sbb eax, eax"], ["0x10001a34", "sbb eax, -1"], ["0x10001a37", "test eax, eax"], ["0x10001a39", "lea eax, [esp + 0x28]"]], "recomp": [["0x10048de1", "sbb ecx, ecx"], ["0x10048de3", "sbb ecx, -1"], ["0x10048de6", "test ecx, ecx"], ["0x10048de8", "jg 0x6"], ["0x10048dea", "mov edx, esi"], ["0x10048dec", "mov esi, dword ptr [esi]"], ["0x10048dee", "jmp 0x3"], ["0x10048df0", "mov esi, dword ptr [esi + 8]"], ["0x10048df3", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"], ["0x10048df9", "jne -0x42"], ["0x10048dfb", "mov dword ptr [esp + 0x28], edx"], ["0x10048dff", "cmp dword ptr [eax + 0xc], edx"], ["0x10048e02", "je 0x35"], ["0x10048e04", "mov ecx, 'bigcube.gif' (STRING)"], ["0x10048e09", "mov edx, dword ptr [edx + 0xc]"], ["0x10048e0c", "mov bl, byte ptr [ecx]"], ["0x10048e0e", "cmp bl, byte ptr [edx]"], ["0x10048e10", "jne 0x1a"], ["0x10048e12", "or bl, bl"], ["0x10048e14", "je 0x12"], ["0x10048e16", "mov bl, byte ptr [ecx + 1]"], ["0x10048e19", "cmp bl, byte ptr [edx + 1]"], ["0x10048e1c", "jne 0xe"], ["0x10048e1e", "add ecx, 2"], ["0x10048e21", "add edx, 2"], ["0x10048e24", "or bl, bl"], ["0x10048e26", "jne -0x1c"], ["0x10048e28", "xor ecx, ecx"], ["0x10048e2a", "jmp 0x5"], ["0x10048e2c", "sbb ecx, ecx"], ["0x10048e2e", "sbb ecx, -1"], ["0x10048e31", "test ecx, ecx"], ["0x10048e33", "lea ecx, [esp + 0x28]"]]}, {"both": [["0x10001a3d", "jle 0xb", "0x10048e37"]]}, {"orig": [["0x10001a3f", "mov eax, dword ptr [esi + 0xc]"], ["0x10001a42", "mov dword ptr [esp + 0x24], eax"], ["0x10001a46", "lea eax, [esp + 0x24]"], ["0x10001a4a", "mov eax, dword ptr [eax]"], ["0x10001a4c", "cmp dword ptr [esi + 0xc], eax"]], "recomp": [["0x10048e39", "mov ecx, dword ptr [eax + 0xc]"], ["0x10048e3c", "mov dword ptr [esp + 0x20], ecx"], ["0x10048e40", "lea ecx, [esp + 0x20]"], ["0x10048e44", "mov ecx, dword ptr [ecx]"], ["0x10048e46", "cmp dword ptr [eax + 0xc], ecx"]]}, {"both": [["0x10001a4f", "je 0x7", "0x10048e49"]]}, {"orig": [["0x10001a51", "mov ecx, dword ptr [eax + 0x10]"]], "recomp": [["0x10048e4b", "mov ecx, dword ptr [ecx + 0x10]"]]}, {"both": [["0x10001a54", "mov dword ptr [esp + 0x18], ecx", "0x10048e4e"], ["0x10001a58", "cmp dword ptr [esp + 0x18], 0", "0x10048e52"]]}, {"orig": [["0x10001a5d", "je 0x221"]], "recomp": [["0x10048e57", "je 0x224"]]}, {"both": [["0x10001a63", "push 'JetskiRaceState' (STRING)", "0x10048e5d"], ["0x10001a68", "call GameState (FUNCTION)", "0x10048e62"], ["0x10001a6d", "mov ecx, eax", "0x10048e67"], ["0x10001a6f", "call LegoGameState::GetState (FUNCTION)", "0x10048e69"], ["0x10001a74", "mov dword ptr [esp + 0x1c], eax", "0x10048e6e"], ["0x10001a78", "push 'CarRaceState' (STRING)", "0x10048e72"], ["0x10001a7d", "call GameState (FUNCTION)", "0x10048e77"], ["0x10001a82", "mov ecx, eax", "0x10048e7c"], ["0x10001a84", "call LegoGameState::GetState (FUNCTION)", "0x10048e7e"]]}, {"orig": [["0x10001a89", "mov dword ptr [esp + 0x24], eax"]], "recomp": [["0x10048e83", "mov dword ptr [esp + 0x20], eax"]]}, {"both": [["0x10001a8d", "push 'TowTrackMissionState' (STRING)", "0x10048e87"], ["0x10001a92", "call GameState (FUNCTION)", "0x10048e8c"], ["0x10001a97", "mov ecx, eax", "0x10048e91"], ["0x10001a99", "call LegoGameState::GetState (FUNCTION)", "0x10048e93"], ["0x10001a9e", "mov esi, eax", "0x10048e98"], ["0x10001aa0", "push 'PizzaMissionState' (STRING)", "0x10048e9a"], ["0x10001aa5", "call GameState (FUNCTION)", "0x10048e9f"], ["0x10001aaa", "mov ecx, eax", "0x10048ea4"], ["0x10001aac", "call LegoGameState::GetState (FUNCTION)", "0x10048ea6"]]}, {"orig": [["0x10001ab1", "mov dword ptr [esp + 0x20], eax"]], "recomp": [["0x10048eab", "mov dword ptr [esp + 0x24], eax"]]}, {"both": [["0x10001ab5", "push 'AmbulanceMissionState' (STRING)", "0x10048eaf"], ["0x10001aba", "call GameState (FUNCTION)", "0x10048eb4"], ["0x10001abf", "mov ecx, eax", "0x10048eb9"], ["0x10001ac1", "call LegoGameState::GetState (FUNCTION)", "0x10048ebb"], ["0x10001ac6", "mov ebp, eax", "0x10048ec0"], ["0x10001ac8", "lea edi, [esp + 0x28]", "0x10048ec2"], ["0x10001acc", "xor eax, eax", "0x10048ec6"], ["0x10001ace", "mov ecx, 0x1b", "0x10048ec8"], ["0x10001ad3", "rep stosd dword ptr es:[edi], eax", "0x10048ecd"], ["0x10001ad5", "mov eax, dword ptr [esp + 0x18]", "0x10048ecf"]]}]], ["@@ -0x10001adb,130 +0x10048ed5,132 @@", [{"both": [["0x10001adb", "lea ecx, [esp + 0x2c]", "0x10048ed5"], ["0x10001adf", "push 0", "0x10048ed9"], ["0x10001ae1", "mov dword ptr [esp + 0x30], 0x6c", "0x10048edb"], ["0x10001ae9", "mov eax, dword ptr [eax + 4]", "0x10048ee3"], ["0x10001aec", "push ecx", "0x10048ee6"], ["0x10001aed", "mov ebx, dword ptr [eax]", "0x10048ee7"], ["0x10001aef", "push 0", "0x10048ee9"], ["0x10001af1", "push eax", "0x10048eeb"], ["0x10001af2", "call dword ptr [ebx + 0x64]", "0x10048eec"], ["0x10001af5", "test eax, eax", "0x10048eef"]]}, {"orig": [["0x10001af7", "jne 0x187"]], "recomp": [["0x10048ef1", "jne 0x18a"]]}, {"both": [["0x10001afd", "mov eax, dword ptr [esp + 0x38]", "0x10048ef7"], ["0x10001b01", "cmp dword ptr [esp + 0x34], eax", "0x10048efb"], ["0x10001b05", "je 0x20", "0x10048eff"], ["0x10001b07", "mov eax, dword ptr [esp + 0x18]", "0x10048f01"], ["0x10001b0b", "mov ecx, dword ptr [esp + 0x4c]", "0x10048f05"], ["0x10001b0f", "push ecx", "0x10048f09"], ["0x10001b10", "mov eax, dword ptr [eax + 4]", "0x10048f0a"], ["0x10001b13", "push eax", "0x10048f0d"], ["0x10001b14", "mov ebx, dword ptr [eax]", "0x10048f0e"], ["0x10001b16", "call dword ptr [ebx + 0x80]", "0x10048f10"], ["0x10001b1c", "pop ebp", "0x10048f16"], ["0x10001b1d", "pop edi", "0x10048f17"], ["0x10001b1e", "pop esi", "0x10048f18"], ["0x10001b1f", "pop ebx", "0x10048f19"], ["0x10001b20", "add esp, 0x84", "0x10048f1a"], ["0x10001b26", "ret ", "0x10048f20"]]}, {"orig": [], "recomp": [["0x10048f21", "mov byte ptr [esp + 0x13], 1"]]}, {"both": [["0x10001b27", "mov ecx, dword ptr [esp + 0x4c]", "0x10048f26"], ["0x10001b2b", "mov eax, dword ptr [esp + 0x14]", "0x10048f2a"]]}, {"orig": [["0x10001b2f", "mov byte ptr [esp + 0x13], 1"]], "recomp": []}, {"both": [["0x10001b34", "mov dword ptr [eax + 0x100], ecx", "0x10048f2e"]]}, {"orig": [["0x10001b3a", "cmp dword ptr [esp + 0x24], 0"], ["0x10001b3f", "mov ax, 0"]], "recomp": [["0x10048f34", "xor ax, ax"], ["0x10048f37", "cmp dword ptr [esp + 0x20], 0"]]}, {"both": [["0x10001b43", "je 0x12", "0x10048f3c"], ["0x10001b45", "mov eax, dword ptr [esp + 0x13]", "0x10048f3e"]]}, {"orig": [["0x10001b49", "mov ecx, dword ptr [esp + 0x24]"]], "recomp": [["0x10048f42", "mov ecx, dword ptr [esp + 0x20]"]]}, {"both": [["0x10001b4d", "push eax", "0x10048f46"], ["0x10001b4e", "call RaceState::GetState (FUNCTION)", "0x10048f47"], ["0x10001b53", "mov ax, word ptr [eax + 4]", "0x10048f4c"], ["0x10001b57", "xor ebx, ebx", "0x10048f50"], ["0x10001b59", "push eax", "0x10048f52"], ["0x10001b5a", "mov bl, byte ptr [esp + 0x17]", "0x10048f53"], ["0x10001b5e", "mov ecx, dword ptr [esp + 0x18]", "0x10048f57"], ["0x10001b62", "lea edi, [ebx - 1]", "0x10048f5b"], ["0x10001b65", "push edi", "0x10048f5e"], ["0x10001b66", "push 0", "0x10048f5f"], ["0x10001b68", "call Score::FillArea (FUNCTION)", "0x10048f61"]]}, {"orig": [], "recomp": [["0x10048f66", "xor ax, ax"]]}, {"both": [["0x10001b6d", "cmp dword ptr [esp + 0x1c], 0", "0x10048f69"]]}, {"orig": [["0x10001b72", "mov ax, 0"]], "recomp": []}, {"both": [["0x10001b76", "je 0x12", "0x10048f6e"], ["0x10001b78", "mov eax, dword ptr [esp + 0x13]", "0x10048f70"], ["0x10001b7c", "mov ecx, dword ptr [esp + 0x1c]", "0x10048f74"], ["0x10001b80", "push eax", "0x10048f78"], ["0x10001b81", "call RaceState::GetState (FUNCTION)", "0x10048f79"], ["0x10001b86", "mov ax, word ptr [eax + 4]", "0x10048f7e"], ["0x10001b8a", "mov ecx, dword ptr [esp + 0x14]", "0x10048f82"], ["0x10001b8e", "push eax", "0x10048f86"], ["0x10001b8f", "push edi", "0x10048f87"], ["0x10001b90", "push 1", "0x10048f88"], ["0x10001b92", "call Score::FillArea (FUNCTION)", "0x10048f8a"]]}, {"orig": [["0x10001b97", "cmp dword ptr [esp + 0x20], 0"], ["0x10001b9c", "mov ax, 0"]], "recomp": [["0x10048f8f", "xor ax, ax"], ["0x10048f92", "cmp dword ptr [esp + 0x24], 0"]]}, {"both": [["0x10001ba0", "je 0x12", "0x10048f97"], ["0x10001ba2", "mov eax, dword ptr [esp + 0x13]", "0x10048f99"]]}, {"orig": [["0x10001ba6", "mov ecx, dword ptr [esp + 0x20]"]], "recomp": [["0x10048f9d", "mov ecx, dword ptr [esp + 0x24]"]]}, {"both": [["0x10001baa", "push eax", "0x10048fa1"], ["0x10001bab", "call PizzaMissionState::GetState (FUNCTION)", "0x10048fa2"], ["0x10001bb0", "mov ax, word ptr [eax + 0x18]", "0x10048fa7"], ["0x10001bb4", "mov ecx, dword ptr [esp + 0x14]", "0x10048fab"], ["0x10001bb8", "push eax", "0x10048faf"], ["0x10001bb9", "push edi", "0x10048fb0"], ["0x10001bba", "push 2", "0x10048fb1"], ["0x10001bbc", "call Score::FillArea (FUNCTION)", "0x10048fb3"]]}, {"orig": [], "recomp": [["0x10048fb8", "xor ax, ax"]]}, {"both": [["0x10001bc1", "test esi, esi", "0x10048fbb"]]}, {"orig": [["0x10001bc3", "je 0x2d"]], "recomp": [["0x10048fbd", "je 0x30"]]}, {"both": [["0x10001bc5", "lea eax, [ebx - 1]", "0x10048fbf"], ["0x10001bc8", "cmp eax, 4", "0x10048fc2"]]}, {"orig": [["0x10001bcb", "ja 0x25"], ["0x10001bcd", "jmp dword ptr [eax*4 + 0x10001c90]"], ["0x10001bd4", "mov ax, word ptr [esi + 0x1c]"], ["0x10001bd8", "jmp 0x1b"]], "recomp": [["0x10048fc5", "ja 0x7"], ["0x10048fc7", "jmp dword ptr [eax*4 + 0x1004908c]"], ["0x10048fce", "xor ax, ax"], ["0x10048fd1", "jmp 0x1c"]]}, {"both": [["0x10001bda", "mov ax, word ptr [esi + 0x1e]", "0x10048fd3"]]}, {"orig": [["0x10001bde", "jmp 0x15"]], "recomp": [["0x10048fd7", "jmp 0x16"]]}, {"both": [["0x10001be0", "mov ax, word ptr [esi + 0x20]", "0x10048fd9"]]}, {"orig": [["0x10001be4", "jmp 0xf"]], "recomp": [["0x10048fdd", "jmp 0x10"]]}, {"both": [["0x10001be6", "mov ax, word ptr [esi + 0x22]", "0x10048fdf"]]}, {"orig": [["0x10001bea", "jmp 0x9"]], "recomp": [["0x10048fe3", "jmp 0xa"]]}, {"both": [["0x10001bec", "mov ax, word ptr [esi + 0x24]", "0x10048fe5"]]}, {"orig": [["0x10001bf0", "jmp 0x3"], ["0x10001bf2", "xor ax, ax"]], "recomp": [["0x10048fe9", "jmp 0x4"], ["0x10048feb", "mov ax, word ptr [esi + 0x26]"]]}, {"both": [["0x10001bf5", "mov ecx, dword ptr [esp + 0x14]", "0x10048fef"], ["0x10001bf9", "push eax", "0x10048ff3"], ["0x10001bfa", "push edi", "0x10048ff4"], ["0x10001bfb", "push 3", "0x10048ff5"], ["0x10001bfd", "call Score::FillArea (FUNCTION)", "0x10048ff7"]]}, {"orig": [], "recomp": [["0x10048ffc", "xor ax, ax"]]}, {"both": [["0x10001c02", "test ebp, ebp", "0x10048fff"]]}, {"orig": [["0x10001c04", "je 0x2b"]], "recomp": [["0x10049001", "je 0x2e"]]}, {"both": [["0x10001c06", "dec ebx", "0x10049003"], ["0x10001c07", "cmp ebx, 4", "0x10049004"]]}, {"orig": [["0x10001c0a", "ja 0x25"], ["0x10001c0c", "jmp dword ptr [ebx*4 + 0x10001ca4]"]], "recomp": [["0x10049007", "ja 0x7"], ["0x10049009", "jmp dword ptr [ebx*4 + 0x100490a0]"], ["0x10049010", "xor ax, ax"], ["0x10049013", "jmp 0x1c"]]}, {"both": [["0x10001c13", "mov ax, word ptr [ebp + 0x1a]", "0x10049015"]]}, {"orig": [["0x10001c17", "jmp 0x1b"]], "recomp": [["0x10049019", "jmp 0x16"]]}, {"both": [["0x10001c19", "mov ax, word ptr [ebp + 0x1c]", "0x1004901b"]]}, {"orig": [["0x10001c1d", "jmp 0x15"]], "recomp": [["0x1004901f", "jmp 0x10"]]}, {"both": [["0x10001c1f", "mov ax, word ptr [ebp + 0x1e]", "0x10049021"]]}, {"orig": [["0x10001c23", "jmp 0xf"]], "recomp": [["0x10049025", "jmp 0xa"]]}, {"both": [["0x10001c25", "mov ax, word ptr [ebp + 0x20]", "0x10049027"]]}, {"orig": [["0x10001c29", "jmp 0x9"]], "recomp": [["0x1004902b", "jmp 0x4"]]}, {"both": [["0x10001c2b", "mov ax, word ptr [ebp + 0x22]", "0x1004902d"]]}, {"orig": [["0x10001c2f", "jmp 0x3"], ["0x10001c31", "xor ax, ax"]], "recomp": []}, {"both": [["0x10001c34", "mov ecx, dword ptr [esp + 0x14]", "0x10049031"], ["0x10001c38", "push eax", "0x10049035"], ["0x10001c39", "push edi", "0x10049036"], ["0x10001c3a", "push 4", "0x10049037"], ["0x10001c3c", "call Score::FillArea (FUNCTION)", "0x10049039"], ["0x10001c41", "inc byte ptr [esp + 0x13]", "0x1004903e"], ["0x10001c45", "cmp byte ptr [esp + 0x13], 5", "0x10049042"]]}, {"orig": [["0x10001c4a", "jbe -0x116"]], "recomp": [["0x10049047", "jbe -0x127"]]}, {"both": [["0x10001c50", "mov eax, dword ptr [esp + 0x18]", "0x1004904d"], ["0x10001c54", "mov ecx, dword ptr [esp + 0x4c]", "0x10049051"], ["0x10001c58", "push ecx", "0x10049055"], ["0x10001c59", "mov eax, dword ptr [eax + 4]", "0x10049056"], ["0x10001c5c", "push eax", "0x10049059"], ["0x10001c5d", "mov ebx, dword ptr [eax]", "0x1004905a"], ["0x10001c5f", "call dword ptr [ebx + 0x80]", "0x1004905c"], ["0x10001c65", "mov ecx, dword ptr [esp + 0x18]", "0x10049062"], ["0x10001c69", "push 0", "0x10049066"], ["0x10001c6b", "push 1", "0x10049068"]]}]], ["@@ -0x10001c71,58 +0x1004906e,21 @@", [{"both": [["0x10001c71", "mov ebx, dword ptr [eax]", "0x1004906e"], ["0x10001c73", "call dword ptr [ebx + 0x38]", "0x10049070"], ["0x10001c76", "mov ecx, dword ptr [esp + 0x14]", "0x10049073"], ["0x10001c7a", "mov dword ptr [ecx + 0x100], 0", "0x10049077"], ["0x10001c84", "pop ebp", "0x10049081"], ["0x10001c85", "pop edi", "0x10049082"], ["0x10001c86", "pop esi", "0x10049083"], ["0x10001c87", "pop ebx", "0x10049084"], ["0x10001c88", "add esp, 0x84", "0x10049085"], ["0x10001c8e", "ret ", "0x1004908b"]]}, {"orig": [], "recomp": [["0x1004908c", "ror dword ptr [edi - 0x7026effc], cl"], ["0x10049092", "add al, 0x10"], ["0x10049094", "fisttp word ptr [edi - 0x701aeffc]"], ["0x1004909a", "add al, 0x10"], ["0x1004909c", "jmp -0x71"], ["0x1004909e", "add al, 0x10"], ["0x100490a0", "adc eax, 0x1b100490"]]}, {"both": [["0x10001c8f", "nop ", "0x100490a5"]]}, {"orig": [["0x10001c90", "aam 0x1b"], ["0x10001c92", "add byte ptr [eax], dl"], ["0x10001c94", "ficomp dword ptr [ebx]"], ["0x10001c96", "add byte ptr [eax], dl"], ["0x10001c98", "loopne 0x10001cb5"], ["0x10001c9a", "add byte ptr [eax], dl"], ["0x10001c9c", "out 0x1b, al"], ["0x10001c9e", "add byte ptr [eax], dl"], ["0x10001ca0", "in al, dx"], ["0x10001ca1", "sbb eax, dword ptr [eax]"], ["0x10001ca3", "adc byte ptr [ebx], dl"], ["0x10001ca5", "sbb al, 0"], ["0x10001ca7", "adc byte ptr [ecx], bl"], ["0x10001ca9", "sbb al, 0"], ["0x10001cab", "adc byte ptr [edi], bl"], ["0x10001cad", "sbb al, 0"], ["0x10001caf", "adc byte ptr [<OFFSET14>], ah"], ["0x10001cb5", "sbb al, 0"], ["0x10001cb7", "adc ah, cl"], ["0x10001cb9", "int3 "], ["0x10001cba", "int3 "], ["0x10001cbb", "int3 "], ["0x10001cbc", "int3 "], ["0x10001cbd", "int3 "], ["0x10001cbe", "int3 "], ["0x10001cbf", "int3 "], ["0x10001cc0", "push ebx"], ["0x10001cc1", "mov eax, dword ptr [ecx + 4]"], ["0x10001cc4", "push esi"], ["0x10001cc5", "push edi"], ["0x10001cc6", "mov esi, dword ptr [eax + 4]"], ["0x10001cc9", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"], ["0x10001ccf", "je 0x43"], ["0x10001cd1", "mov edx, dword ptr [esp + 0x10]"], ["0x10001cd5", "mov ecx, dword ptr [esi + 0xc]"], ["0x10001cd8", "mov edi, dword ptr [edx]"], ["0x10001cda", "mov bl, byte ptr [ecx]"], ["0x10001cdc", "cmp bl, byte ptr [edi]"], ["0x10001cde", "jne 0x1a"], ["0x10001ce0", "or bl, bl"], ["0x10001ce2", "je 0x12"], ["0x10001ce4", "mov bl, byte ptr [ecx + 1]"], ["0x10001ce7", "cmp bl, byte ptr [edi + 1]"], ["0x10001cea", "jne 0xe"], ["0x10001cec", "add ecx, 2"], ["0x10001cef", "add edi, 2"], ["0x10001cf2", "or bl, bl"]], "recomp": [["0x100490a6", "add al, 0x10"], ["0x100490a8", "and dword ptr [eax - 0x6fd8effc], edx"], ["0x100490ae", "add al, 0x10"]]}]]]}, {"address": "0x10001cc0", "recomp": "0x1003c330", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Lbound", "matching": 1.0, "diff": []}, {"address": "0x10001d20", "recomp": "0x100490c0", "name": "Score::FillArea", "matching": 0.6716417910447762, "diff": [["@@ -0x10001d20,67 +0x100490c0,67 @@", [{"both": [["0x10001d20", "sub esp, 0x60", "0x100490c0"], ["0x10001d23", "mov dword ptr [esp + 0x24], 0x2b00", "0x100490c3"]]}, {"orig": [["0x10001d2b", "mov dword ptr [esp + 0x28], 0x5700"], ["0x10001d33", "mov dword ptr [esp + 0x2c], 0x8000"]], "recomp": []}, {"both": [["0x10001d3b", "push ebx", "0x100490cb"], ["0x10001d3c", "mov eax, 0x2a", "0x100490cc"]]}, {"orig": [], "recomp": [["0x100490d1", "mov dword ptr [esp + 0x50], eax"]]}, {"both": [["0x10001d41", "push esi", "0x100490d5"]]}, {"orig": [], "recomp": [["0x100490d6", "mov dword ptr [esp + 0x30], 0x5700"], ["0x100490de", "push edi"]]}, {"both": [["0x10001d42", "mov edx, 0x27", "0x100490df"]]}, {"orig": [["0x10001d47", "mov dword ptr [esp + 0x54], eax"], ["0x10001d4b", "push edi"]], "recomp": [["0x100490e4", "mov dword ptr [esp + 0x38], 0x8000"]]}, {"both": [["0x10001d4c", "mov dword ptr [esp + 0x3c], 0xab00", "0x100490ec"], ["0x10001d54", "mov dword ptr [esp + 0x40], 0xd600", "0x100490f4"], ["0x10001d5c", "push ebp", "0x100490fc"], ["0x10001d5d", "mov esi, 0x29", "0x100490fd"], ["0x10001d62", "mov dword ptr [esp + 0x60], edx", "0x10049102"], ["0x10001d66", "mov dword ptr [esp + 0x64], esi", "0x10049106"], ["0x10001d6a", "mov dword ptr [esp + 0x68], esi", "0x1004910a"], ["0x10001d6e", "mov dword ptr [esp + 0x6c], eax", "0x1004910e"]]}, {"orig": [], "recomp": [["0x10049112", "mov dword ptr [esp + 0x4c], esi"], ["0x10049116", "mov dword ptr [esp + 0x50], edx"]]}, {"both": [["0x10001d72", "mov dword ptr [esp + 0x20], 0x2f", "0x1004911a"], ["0x10001d7a", "mov dword ptr [esp + 0x24], 0x56", "0x10049122"], ["0x10001d82", "mov dword ptr [esp + 0x28], 0x81", "0x1004912a"]]}, {"orig": [["0x10001d8a", "mov dword ptr [esp + 0x4c], esi"], ["0x10001d8e", "mov dword ptr [esp + 0x50], edx"]], "recomp": []}, {"both": [["0x10001d92", "mov dword ptr [esp + 0x2c], 0xaa", "0x10049132"], ["0x10001d9a", "mov dword ptr [esp + 0x30], 0xd4", "0x1004913a"], ["0x10001da2", "mov dword ptr [esp + 0x48], 0x25", "0x10049142"], ["0x10001daa", "mov dword ptr [esp + 0x10], 0x11", "0x1004914a"], ["0x10001db2", "mov eax, 0x28", "0x10049152"]]}, {"orig": [["0x10001db7", "mov esi, dword ptr [esp + 0x74]"]], "recomp": [["0x10049157", "mov edi, dword ptr [esp + 0x78]"]]}, {"both": [["0x10001dbb", "mov dword ptr [esp + 0x54], eax", "0x1004915b"], ["0x10001dbf", "mov dword ptr [esp + 0x58], eax", "0x1004915f"]]}, {"orig": [["0x10001dc3", "mov edi, dword ptr [esp + 0x78]"], ["0x10001dc7", "mov edx, dword ptr [esp + esi*4 + 0x20]"]], "recomp": []}, {"both": [["0x10001dcb", "mov dword ptr [esp + 0x14], 0xf", "0x10049163"]]}, {"orig": [["0x10001dd3", "add edx, dword ptr [esp + edi*4 + 0x34]"], ["0x10001dd7", "mov ebp, dword ptr [esp + esi*4 + 0x48]"]], "recomp": [["0x1004916b", "mov eax, dword ptr [esp + 0x74]"], ["0x1004916f", "mov ebp, dword ptr [esp + edi*4 + 0x5c]"], ["0x10049173", "mov edx, dword ptr [esp + eax*4 + 0x48]"], ["0x10049177", "mov esi, dword ptr [esp + eax*4 + 0x20]"]]}, {"both": [["0x10001ddb", "movsx eax, word ptr [esp + 0x7c]", "0x1004917b"]]}, {"orig": [["0x10001de0", "add edx, dword ptr [ecx + 0x100]"], ["0x10001de6", "mov esi, dword ptr [esp + edi*4 + 0x5c]"]], "recomp": [["0x10049180", "add esi, dword ptr [esp + edi*4 + 0x34]"]]}, {"both": [["0x10001dea", "mov dword ptr [esp + 0x18], 8", "0x10049184"], ["0x10001df2", "mov dword ptr [esp + 0x1c], 5", "0x1004918c"]]}, {"orig": [], "recomp": [["0x10049194", "add esi, dword ptr [ecx + 0x100]"]]}, {"both": [["0x10001dfa", "mov ebx, dword ptr [esp + eax*4 + 0x10]", "0x1004919a"]]}, {"orig": [["0x10001dfe", "test esi, esi"], ["0x10001e00", "jle 0x27"]], "recomp": [["0x1004919e", "test ebp, ebp"], ["0x100491a0", "jle 0x28"]]}, {"both": [["0x10001e02", "mov cl, bl", "0x100491a2"]]}, {"orig": [["0x10001e04", "mov edi, edx"]], "recomp": [["0x100491a4", "mov edi, esi"]]}, {"both": [["0x10001e06", "mov ch, cl", "0x100491a6"]]}, {"orig": [["0x10001e08", "add edx, 0x100"]], "recomp": []}, {"both": [["0x10001e0e", "mov cl, bl", "0x100491a8"], ["0x10001e10", "mov eax, ecx", "0x100491aa"], ["0x10001e12", "shl eax, 0x10", "0x100491ac"], ["0x10001e15", "mov ax, cx", "0x100491af"]]}, {"orig": [["0x10001e18", "mov ecx, ebp"]], "recomp": [["0x100491b2", "mov ecx, edx"]]}, {"both": [["0x10001e1a", "shr ecx, 2", "0x100491b4"], ["0x10001e1d", "rep stosd dword ptr es:[edi], eax", "0x100491b7"]]}, {"orig": [["0x10001e1f", "mov ecx, ebp"]], "recomp": [["0x100491b9", "mov ecx, edx"]]}, {"both": [["0x10001e21", "and ecx, 3", "0x100491bb"], ["0x10001e24", "rep stosb byte ptr es:[edi], al", "0x100491be"]]}, {"orig": [["0x10001e26", "dec esi"], ["0x10001e27", "jne -0x27"]], "recomp": [["0x100491c0", "inc esi"], ["0x100491c1", "add esi, 0x100"], ["0x100491c7", "dec ebp"], ["0x100491c8", "jne -0x28"]]}, {"both": [["0x10001e29", "pop ebp", "0x100491ca"], ["0x10001e2a", "pop edi", "0x100491cb"], ["0x10001e2b", "pop esi", "0x100491cc"], ["0x10001e2c", "pop ebx", "0x100491cd"], ["0x10001e2d", "add esp, 0x60", "0x100491ce"], ["0x10001e30", "ret 0xc", "0x100491d1"]]}, {"orig": [["0x10001e33", "int3 "]], "recomp": []}]]]}, {"address": "0x10001e40", "recomp": "0x100491e0", "name": "Score::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x10001e60", "recomp": "0x10005360", "name": "Helicopter::Helicopter", "matching": 1.0, "diff": []}, {"address": "0x10001f70", "recomp": "0x10001380", "name": "MxCore::Tickle", "matching": 1.0, "diff": []}, {"address": "0x10001f80", "recomp": "0x10001570", "name": "Vector2::AddImpl", "matching": 1.0, "effective": true, "diff": [["@@ -0x10001f80,11 +0x10001570,11 @@", [{"both": [["0x10001f80", "mov eax, dword ptr [ecx + 4]", "0x10001570"], ["0x10001f83", "mov edx, dword ptr [esp + 4]", "0x10001573"]]}, {"orig": [["0x10001f87", "fld dword ptr [edx]"], ["0x10001f89", "fadd dword ptr [eax]"]], "recomp": [["0x10001577", "fld dword ptr [eax]"], ["0x10001579", "fadd dword ptr [edx]"]]}, {"both": [["0x10001f8b", "fstp dword ptr [eax]", "0x1000157b"], ["0x10001f8d", "fld dword ptr [edx + 4]", "0x1000157d"], ["0x10001f90", "mov eax, dword ptr [ecx + 4]", "0x10001580"], ["0x10001f93", "add eax, 4", "0x10001583"], ["0x10001f96", "fadd dword ptr [eax]", "0x10001586"], ["0x10001f98", "fstp dword ptr [eax]", "0x10001588"], ["0x10001f9a", "ret 4", "0x1000158a"]]}]]]}, {"address": "0x10001fa0", "recomp": "0x10001590", "name": "Vector2::AddImpl", "matching": 1.0, "diff": []}, {"address": "0x10001fc0", "recomp": "0x100015b0", "name": "Vector2::SubImpl", "matching": 1.0, "diff": []}, {"address": "0x10001fe0", "recomp": "0x100015f0", "name": "Vector2::MulVectorImpl", "matching": 1.0, "effective": true, "diff": [["@@ -0x10001fe0,11 +0x100015f0,11 @@", [{"both": [["0x10001fe0", "mov eax, dword ptr [ecx + 4]", "0x100015f0"], ["0x10001fe3", "mov edx, dword ptr [esp + 4]", "0x100015f3"]]}, {"orig": [["0x10001fe7", "fld dword ptr [eax]"], ["0x10001fe9", "fmul dword ptr [edx]"]], "recomp": [["0x100015f7", "fld dword ptr [edx]"], ["0x100015f9", "fmul dword ptr [eax]"]]}, {"both": [["0x10001feb", "fstp dword ptr [eax]", "0x100015fb"], ["0x10001fed", "fld dword ptr [edx + 4]", "0x100015fd"], ["0x10001ff0", "mov eax, dword ptr [ecx + 4]", "0x10001600"], ["0x10001ff3", "add eax, 4", "0x10001603"], ["0x10001ff6", "fmul dword ptr [eax]", "0x10001606"], ["0x10001ff8", "fstp dword ptr [eax]", "0x10001608"], ["0x10001ffa", "ret 4", "0x1000160a"]]}]]]}, {"address": "0x10002000", "recomp": "0x100015d0", "name": "Vector2::MulScalarImpl", "matching": 0.6363636363636364, "diff": [["@@ -0x10002000,11 +0x100015d0,11 @@", [{"both": [["0x10002000", "mov eax, dword ptr [ecx + 4]", "0x100015d0"], ["0x10002003", "mov edx, dword ptr [esp + 4]", "0x100015d3"]]}, {"orig": [["0x10002007", "fld dword ptr [eax]"], ["0x10002009", "fmul dword ptr [edx]"]], "recomp": [["0x100015d7", "fld dword ptr [edx]"], ["0x100015d9", "fmul dword ptr [eax]"]]}, {"both": [["0x1000200b", "fstp dword ptr [eax]", "0x100015db"]]}, {"orig": [], "recomp": [["0x100015dd", "fld dword ptr [edx]"]]}, {"both": [["0x1000200d", "mov eax, dword ptr [ecx + 4]", "0x100015df"], ["0x10002010", "add eax, 4", "0x100015e2"]]}, {"orig": [["0x10002013", "fld dword ptr [eax]"], ["0x10002015", "fmul dword ptr [edx]"]], "recomp": [["0x100015e5", "fmul dword ptr [eax]"]]}, {"both": [["0x10002017", "fstp dword ptr [eax]", "0x100015e7"], ["0x10002019", "ret 4", "0x100015e9"]]}]]]}, {"address": "0x10002020", "recomp": "0x10001610", "name": "Vector2::DivScalarImpl", "matching": 1.0, "diff": []}, {"address": "0x10002040", "recomp": "0x10001630", "name": "Vector2::DotImpl", "matching": 1.0, "diff": []}, {"address": "0x10002060", "recomp": "0x10001390", "name": "Vector2::SetData", "matching": 1.0, "diff": []}, {"address": "0x10002070", "recomp": "0x10001650", "name": "Vector2::EqualsImpl", "matching": 1.0, "diff": []}, {"address": "0x10002090", "recomp": "0x100013a0", "name": "Vector2::GetData", "matching": 1.0, "diff": []}, {"address": "0x100020a0", "recomp": "0x100013b0", "name": "Vector2::GetData", "matching": 1.0, "diff": []}, {"address": "0x100020b0", "recomp": "0x10001670", "name": "Vector2::Clear", "matching": 1.0, "diff": []}, {"address": "0x100020d0", "recomp": "0x100013c0", "name": "Vector2::Dot", "matching": 1.0, "diff": []}, {"address": "0x100020f0", "recomp": "0x100013e0", "name": "Vector2::Dot", "matching": 1.0, "diff": []}, {"address": "0x10002110", "recomp": "0x10001400", "name": "Vector2::Dot", "matching": 1.0, "diff": []}, {"address": "0x10002130", "recomp": "0x10001420", "name": "Vector2::Dot", "matching": 1.0, "diff": []}, {"address": "0x10002150", "recomp": "0x10001690", "name": "Vector2::LenSquared", "matching": 1.0, "diff": []}, {"address": "0x10002160", "recomp": "0x10001440", "name": "Vector2::Unitize", "matching": 1.0, "diff": []}, {"address": "0x100021c0", "recomp": "0x100014a0", "name": "Vector2::Add", "matching": 1.0, "diff": []}, {"address": "0x100021d0", "recomp": "0x100014b0", "name": "Vector2::Add", "matching": 1.0, "diff": []}, {"address": "0x100021e0", "recomp": "0x100014c0", "name": "Vector2::Add", "matching": 1.0, "diff": []}, {"address": "0x100021f0", "recomp": "0x100014d0", "name": "Vector2::Sub", "matching": 1.0, "diff": []}, {"address": "0x10002200", "recomp": "0x100014e0", "name": "Vector2::Sub", "matching": 1.0, "diff": []}, {"address": "0x10002210", "recomp": "0x100014f0", "name": "Vector2::Mul", "matching": 1.0, "diff": []}, {"address": "0x10002220", "recomp": "0x10001500", "name": "Vector2::Mul", "matching": 1.0, "diff": []}, {"address": "0x10002230", "recomp": "0x10001510", "name": "Vector2::Mul", "matching": 1.0, "diff": []}, {"address": "0x10002240", "recomp": "0x10001520", "name": "Vector2::Div", "matching": 1.0, "diff": []}, {"address": "0x10002250", "recomp": "0x10001530", "name": "Vector2::SetVector", "matching": 1.0, "diff": []}, {"address": "0x10002260", "recomp": "0x10001540", "name": "Vector2::SetVector", "matching": 1.0, "diff": []}, {"address": "0x10002270", "recomp": "0x100016a0", "name": "Vector3::EqualsCrossImpl", "matching": 0.6153846153846154, "diff": [["@@ -0x10002270,26 +0x100016a0,26 @@", [{"both": [["0x10002270", "mov edx, dword ptr [esp + 4]", "0x100016a0"], ["0x10002274", "push esi", "0x100016a4"], ["0x10002275", "mov esi, dword ptr [esp + 0xc]", "0x100016a5"], ["0x10002279", "mov eax, dword ptr [ecx + 4]", "0x100016a9"], ["0x1000227c", "fld dword ptr [edx + 4]", "0x100016ac"], ["0x1000227f", "fmul dword ptr [esi + 8]", "0x100016af"]]}, {"orig": [["0x10002282", "fld dword ptr [edx + 8]"], ["0x10002285", "fmul dword ptr [esi + 4]"]], "recomp": [["0x100016b2", "fld dword ptr [esi + 4]"], ["0x100016b5", "fmul dword ptr [edx + 8]"]]}, {"both": [["0x10002288", "fsubp st(1)", "0x100016b8"], ["0x1000228a", "fstp dword ptr [eax]", "0x100016ba"]]}, {"orig": [["0x1000228c", "fld dword ptr [edx + 8]"], ["0x1000228f", "fmul dword ptr [esi]"], ["0x10002291", "fld dword ptr [esi + 8]"], ["0x10002294", "fmul dword ptr [edx]"]], "recomp": [["0x100016bc", "fld dword ptr [esi]"], ["0x100016be", "fmul dword ptr [edx + 8]"], ["0x100016c1", "fld dword ptr [edx]"], ["0x100016c3", "fmul dword ptr [esi + 8]"]]}, {"both": [["0x10002296", "mov eax, dword ptr [ecx + 4]", "0x100016c6"], ["0x10002299", "fsubp st(1)", "0x100016c9"], ["0x1000229b", "fstp dword ptr [eax + 4]", "0x100016cb"]]}, {"orig": [["0x1000229e", "fld dword ptr [esi + 4]"], ["0x100022a1", "fmul dword ptr [edx]"], ["0x100022a3", "fld dword ptr [edx + 4]"], ["0x100022a6", "fmul dword ptr [esi]"]], "recomp": [["0x100016ce", "fld dword ptr [edx]"], ["0x100016d0", "fmul dword ptr [esi + 4]"], ["0x100016d3", "fld dword ptr [esi]"], ["0x100016d5", "fmul dword ptr [edx + 4]"]]}, {"both": [["0x100022a8", "mov eax, dword ptr [ecx + 4]", "0x100016d8"], ["0x100022ab", "pop esi", "0x100016db"], ["0x100022ac", "fsubp st(1)", "0x100016dc"], ["0x100022ae", "fstp dword ptr [eax + 8]", "0x100016de"], ["0x100022b1", "ret 8", "0x100016e1"]]}]]]}, {"address": "0x100022c0", "recomp": "0x100016f0", "name": "Vector3::EqualsCross", "matching": 1.0, "diff": []}, {"address": "0x100022e0", "recomp": "0x10001710", "name": "Vector3::EqualsCross", "matching": 1.0, "diff": []}, {"address": "0x10002300", "recomp": "0x10001730", "name": "Vector3::EqualsCross", "matching": 1.0, "diff": []}, {"address": "0x10002320", "recomp": "0x100058b0", "name": "Matrix4::Equals", "matching": 1.0, "diff": []}, {"address": "0x10002340", "recomp": "0x100058d0", "name": "Matrix4::Equals", "matching": 1.0, "diff": []}, {"address": "0x10002360", "recomp": "0x100058f0", "name": "Matrix4::SetData", "matching": 1.0, "diff": []}, {"address": "0x10002370", "recomp": "0x10005900", "name": "Matrix4::SetData", "matching": 1.0, "diff": []}, {"address": "0x10002380", "recomp": "0x10005910", "name": "Matrix4::GetData", "matching": 1.0, "diff": []}, {"address": "0x10002390", "recomp": "0x10005920", "name": "Matrix4::GetData", "matching": 1.0, "diff": []}, {"address": "0x100023a0", "recomp": "0x10005930", "name": "Matrix4::Element", "matching": 1.0, "diff": []}, {"address": "0x100023c0", "recomp": "0x10005950", "name": "Matrix4::Element", "matching": 1.0, "diff": []}, {"address": "0x100023e0", "recomp": "0x10005970", "name": "Matrix4::Clear", "matching": 1.0, "diff": []}, {"address": "0x100023f0", "recomp": "0x10005980", "name": "Matrix4::SetIdentity", "matching": 1.0, "diff": []}, {"address": "0x10002420", "recomp": "0x100059b0", "name": "Matrix4::operator=", "matching": 1.0, "diff": []}, {"address": "0x10002430", "recomp": "0x100059c0", "name": "Matrix4::operator+=", "matching": 1.0, "diff": []}, {"address": "0x10002460", "recomp": "0x100059f0", "name": "Matrix4::TranslateBy", "matching": 0.5789473684210527, "diff": [["@@ -0x10002460,19 +0x100059f0,19 @@", [{"both": [["0x10002460", "mov edx, dword ptr [ecx + 4]", "0x100059f0"], ["0x10002463", "mov eax, dword ptr [esp + 4]", "0x100059f3"], ["0x10002467", "add edx, 0x30", "0x100059f7"]]}, {"orig": [["0x1000246a", "fld dword ptr [eax]"], ["0x1000246c", "fadd dword ptr [edx]"]], "recomp": [["0x100059fa", "fld dword ptr [edx]"], ["0x100059fc", "fadd dword ptr [eax]"]]}, {"both": [["0x1000246e", "mov eax, dword ptr [esp + 8]", "0x100059fe"], ["0x10002472", "fstp dword ptr [edx]", "0x10005a02"]]}, {"orig": [["0x10002474", "fld dword ptr [eax]"]], "recomp": []}, {"both": [["0x10002476", "mov edx, dword ptr [ecx + 4]", "0x10005a04"], ["0x10002479", "add edx, 0x34", "0x10005a07"]]}, {"orig": [["0x1000247c", "fadd dword ptr [edx]"]], "recomp": [["0x10005a0a", "fld dword ptr [edx]"], ["0x10005a0c", "fadd dword ptr [eax]"], ["0x10005a0e", "mov eax, dword ptr [esp + 0xc]"]]}, {"both": [["0x1000247e", "fstp dword ptr [edx]", "0x10005a12"]]}, {"orig": [["0x10002480", "mov eax, dword ptr [ecx + 4]"], ["0x10002483", "mov ecx, dword ptr [esp + 0xc]"], ["0x10002487", "add eax, 0x38"]], "recomp": [["0x10005a14", "mov ecx, dword ptr [ecx + 4]"], ["0x10005a17", "add ecx, 0x38"]]}, {"both": [["0x1000248a", "fld dword ptr [ecx]", "0x10005a1a"], ["0x1000248c", "fadd dword ptr [eax]", "0x10005a1c"]]}, {"orig": [["0x1000248e", "fstp dword ptr [eax]"]], "recomp": [["0x10005a1e", "fstp dword ptr [ecx]"]]}, {"both": [["0x10002490", "ret 0xc", "0x10005a20"]]}]]]}, {"address": "0x100024a0", "recomp": "0x10005a30", "name": "Matrix4::SetTranslation", "matching": 1.0, "diff": []}, {"address": "0x100024d0", "recomp": "0x10005a60", "name": "Matrix4::Product", "matching": 1.0, "diff": []}, {"address": "0x10002530", "recomp": "0x10005ac0", "name": "Matrix4::Product", "matching": 1.0, "diff": []}, {"address": "0x10002550", "recomp": "0x10005ae0", "name": "Matrix4::ToQuaternion", "matching": 0.0, "stub": true}, {"address": "0x10002710", "recomp": "0x10005af0", "name": "Matrix4::FromQuaternion", "matching": 0.0, "stub": true}, {"address": "0x10002850", "recomp": "0x10005b10", "name": "MxMatrix::operator=", "matching": 1.0, "diff": []}, {"address": "0x10002860", "recomp": "0x10005b20", "name": "MxMatrix::operator=", "matching": 1.0, "diff": []}, {"address": "0x10002870", "recomp": "0x10005530", "name": "Vector4::AddImpl", "matching": 1.0, "diff": []}, {"address": "0x100028b0", "recomp": "0x10005570", "name": "Vector4::AddImpl", "matching": 1.0, "diff": []}, {"address": "0x100028f0", "recomp": "0x100055b0", "name": "Vector4::SubImpl", "matching": 1.0, "diff": []}, {"address": "0x10002930", "recomp": "0x10005630", "name": "Vector4::MulVectorImpl", "matching": 1.0, "diff": []}, {"address": "0x10002970", "recomp": "0x100055f0", "name": "Vector4::MulScalarImpl", "matching": 1.0, "diff": []}, {"address": "0x100029b0", "recomp": "0x10005670", "name": "Vector4::DivScalarImpl", "matching": 1.0, "diff": []}, {"address": "0x100029f0", "recomp": "0x100056b0", "name": "Vector4::DotImpl", "matching": 1.0, "diff": []}, {"address": "0x10002a20", "recomp": "0x100056e0", "name": "Vector4::EqualsImpl", "matching": 1.0, "diff": []}, {"address": "0x10002a40", "recomp": "0x10005470", "name": "Vector4::SetMatrixProduct", "matching": 0.5964912280701754, "diff": [["@@ -0x10002a40,57 +0x10005470,57 @@", [{"both": [["0x10002a40", "mov edx, dword ptr [esp + 4]", "0x10005470"], ["0x10002a44", "push esi", "0x10005474"], ["0x10002a45", "mov esi, dword ptr [esp + 0xc]", "0x10005475"]]}, {"orig": [["0x10002a49", "fld dword ptr [esi + 0x30]"], ["0x10002a4c", "fmul dword ptr [edx + 0xc]"]], "recomp": [["0x10005479", "fld dword ptr [edx + 0xc]"], ["0x1000547c", "fmul dword ptr [esi + 0x30]"]]}, {"both": [["0x10002a4f", "fld dword ptr [esi + 0x20]", "0x1000547f"], ["0x10002a52", "fmul dword ptr [edx + 8]", "0x10005482"], ["0x10002a55", "faddp st(1)", "0x10005485"], ["0x10002a57", "fld dword ptr [esi + 0x10]", "0x10005487"], ["0x10002a5a", "fmul dword ptr [edx + 4]", "0x1000548a"], ["0x10002a5d", "mov eax, dword ptr [ecx + 4]", "0x1000548d"], ["0x10002a60", "faddp st(1)", "0x10005490"]]}, {"orig": [["0x10002a62", "fld dword ptr [edx]"], ["0x10002a64", "fmul dword ptr [esi]"]], "recomp": [["0x10005492", "fld dword ptr [esi]"], ["0x10005494", "fmul dword ptr [edx]"]]}, {"both": [["0x10002a66", "faddp st(1)", "0x10005496"], ["0x10002a68", "fstp dword ptr [eax]", "0x10005498"]]}, {"orig": [], "recomp": [["0x1000549a", "fld dword ptr [esi + 4]"], ["0x1000549d", "fmul dword ptr [edx]"], ["0x1000549f", "fld dword ptr [esi + 0x34]"], ["0x100054a2", "fmul dword ptr [edx + 0x10]"], ["0x100054a5", "faddp st(1)"]]}, {"both": [["0x10002a6a", "fld dword ptr [esi + 0x24]", "0x100054a7"], ["0x10002a6d", "fmul dword ptr [edx + 8]", "0x100054aa"]]}, {"orig": [], "recomp": [["0x100054ad", "mov eax, dword ptr [ecx + 4]"], ["0x100054b0", "faddp st(1)"]]}, {"both": [["0x10002a70", "fld dword ptr [esi + 0x14]", "0x100054b2"], ["0x10002a73", "fmul dword ptr [edx + 4]", "0x100054b5"], ["0x10002a76", "faddp st(1)", "0x100054b8"]]}, {"orig": [["0x10002a78", "fld dword ptr [esi + 4]"]], "recomp": [["0x100054ba", "fstp dword ptr [eax + 4]"], ["0x100054bd", "fld dword ptr [esi + 8]"]]}, {"both": [["0x10002a7b", "fmul dword ptr [edx]", "0x100054c0"]]}, {"orig": [], "recomp": [["0x100054c2", "fld dword ptr [esi + 0x38]"], ["0x100054c5", "fmul dword ptr [edx + 0x10]"], ["0x100054c8", "faddp st(1)"], ["0x100054ca", "fld dword ptr [esi + 0x28]"], ["0x100054cd", "fmul dword ptr [edx + 8]"]]}, {"both": [["0x10002a7d", "mov eax, dword ptr [ecx + 4]", "0x100054d0"], ["0x10002a80", "faddp st(1)", "0x100054d3"]]}, {"orig": [["0x10002a82", "fld dword ptr [esi + 0x34]"], ["0x10002a85", "fmul dword ptr [edx + 0xc]"], ["0x10002a88", "faddp st(1)"], ["0x10002a8a", "fstp dword ptr [eax + 4]"], ["0x10002a8d", "fld dword ptr [esi + 0x38]"], ["0x10002a90", "fmul dword ptr [edx + 0xc]"]], "recomp": []}, {"both": [["0x10002a93", "fld dword ptr [esi + 0x18]", "0x100054d5"], ["0x10002a96", "fmul dword ptr [edx + 4]", "0x100054d8"], ["0x10002a99", "faddp st(1)", "0x100054db"]]}, {"orig": [["0x10002a9b", "fld dword ptr [esi + 8]"]], "recomp": [["0x100054dd", "fstp dword ptr [eax + 8]"], ["0x100054e0", "fld dword ptr [esi + 0xc]"]]}, {"both": [["0x10002a9e", "fmul dword ptr [edx]", "0x100054e3"]]}, {"orig": [["0x10002aa0", "mov eax, dword ptr [ecx + 4]"]], "recomp": [["0x100054e5", "fld dword ptr [esi + 0x3c]"], ["0x100054e8", "fmul dword ptr [edx + 0x10]"]]}, {"both": [["0x10002aa3", "faddp st(1)", "0x100054eb"]]}, {"orig": [["0x10002aa5", "fld dword ptr [esi + 0x28]"], ["0x10002aa8", "fmul dword ptr [edx + 8]"], ["0x10002aab", "faddp st(1)"], ["0x10002aad", "fstp dword ptr [eax + 8]"], ["0x10002ab0", "fld dword ptr [esi + 0x3c]"], ["0x10002ab3", "fmul dword ptr [edx + 0xc]"]], "recomp": []}, {"both": [["0x10002ab6", "fld dword ptr [esi + 0x2c]", "0x100054ed"], ["0x10002ab9", "fmul dword ptr [edx + 8]", "0x100054f0"]]}, {"orig": [], "recomp": [["0x100054f3", "mov eax, dword ptr [ecx + 4]"]]}, {"both": [["0x10002abc", "faddp st(1)", "0x100054f6"], ["0x10002abe", "fld dword ptr [esi + 0x1c]", "0x100054f8"], ["0x10002ac1", "fmul dword ptr [edx + 4]", "0x100054fb"]]}, {"orig": [["0x10002ac4", "mov eax, dword ptr [ecx + 4]"], ["0x10002ac7", "faddp st(1)"], ["0x10002ac9", "fld dword ptr [esi + 0xc]"], ["0x10002acc", "fmul dword ptr [edx]"]], "recomp": []}, {"both": [["0x10002ace", "pop esi", "0x100054fe"], ["0x10002acf", "faddp st(1)", "0x100054ff"], ["0x10002ad1", "fstp dword ptr [eax + 0xc]", "0x10005501"], ["0x10002ad4", "ret 8", "0x10005504"]]}]]]}, {"address": "0x10002ae0", "recomp": "0x10005510", "name": "Vector4::SetMatrixProduct", "matching": 1.0, "diff": []}, {"address": "0x10002b00", "recomp": "0x10005700", "name": "Vector4::Clear", "matching": 1.0, "diff": []}, {"address": "0x10002b20", "recomp": "0x10005720", "name": "Vector4::LenSquared", "matching": 0.6923076923076923, "diff": [["@@ -0x10002b20,13 +0x10005720,13 @@", [{"both": [["0x10002b20", "mov eax, dword ptr [ecx + 4]", "0x10005720"]]}, {"orig": [["0x10002b23", "fld dword ptr [eax + 4]"], ["0x10002b26", "fmul dword ptr [eax + 4]"]], "recomp": [["0x10005723", "fld dword ptr [eax + 0xc]"], ["0x10005726", "fmul dword ptr [eax + 0xc]"]]}, {"both": [["0x10002b29", "fld dword ptr [eax + 8]", "0x10005729"], ["0x10002b2c", "fmul dword ptr [eax + 8]", "0x1000572c"], ["0x10002b2f", "faddp st(1)", "0x1000572f"]]}, {"orig": [["0x10002b31", "fld dword ptr [eax + 0xc]"], ["0x10002b34", "fmul dword ptr [eax + 0xc]"]], "recomp": [["0x10005731", "fld dword ptr [eax + 4]"], ["0x10005734", "fmul dword ptr [eax + 4]"]]}, {"both": [["0x10002b37", "faddp st(1)", "0x10005737"], ["0x10002b39", "fld dword ptr [eax]", "0x10005739"], ["0x10002b3b", "fmul dword ptr [eax]", "0x1000573b"], ["0x10002b3d", "faddp st(1)", "0x1000573d"], ["0x10002b3f", "ret ", "0x1000573f"]]}]]]}, {"address": "0x10002b40", "recomp": "0x10005740", "name": "Vector4::EqualsScalar", "matching": 1.0, "diff": []}, {"address": "0x10002b70", "recomp": "0x10005770", "name": "Vector4::NormalizeQuaternion", "matching": 0.0, "stub": true}, {"address": "0x10002bf0", "recomp": "0x100057e0", "name": "Vector4::UnknownQuaternionOp", "matching": 0.618421052631579, "diff": [["@@ -0x10002bf0,37 +0x100057e0,35 @@", [{"orig": [["0x10002bf0", "mov edx, dword ptr [esp + 8]"]], "recomp": [["0x100057e0", "mov edx, dword ptr [esp + 4]"]]}, {"both": [["0x10002bf4", "push ebx", "0x100057e4"], ["0x10002bf5", "push esi", "0x100057e5"], ["0x10002bf6", "push edi", "0x100057e6"]]}, {"orig": [["0x10002bf7", "mov esi, dword ptr [esp + 0x10]"], ["0x10002bfb", "mov eax, dword ptr [edx + 4]"]], "recomp": [["0x100057e7", "mov esi, dword ptr [esp + 0x14]"], ["0x100057eb", "mov ebx, dword ptr [edx + 4]"], ["0x100057ee", "fld dword ptr [ebx + 4]"], ["0x100057f1", "fmul dword ptr [ebx + 4]"], ["0x100057f4", "fld dword ptr [ebx + 8]"]]}, {"both": [["0x10002bfe", "mov edi, dword ptr [esi + 4]", "0x100057f7"]]}, {"orig": [["0x10002c01", "fld dword ptr [edi + 4]"], ["0x10002c04", "fmul dword ptr [eax + 4]"], ["0x10002c07", "fld dword ptr [edi + 8]"], ["0x10002c0a", "fmul dword ptr [eax + 8]"]], "recomp": [["0x100057fa", "fmul dword ptr [edi + 8]"]]}, {"both": [["0x10002c0d", "faddp st(1)", "0x100057fd"]]}, {"orig": [["0x10002c0f", "fld dword ptr [eax]"]], "recomp": [["0x100057ff", "fld dword ptr [ebx]"]]}, {"both": [["0x10002c11", "fmul dword ptr [edi]", "0x10005801"]]}, {"orig": [["0x10002c13", "mov ebx, dword ptr [ecx + 4]"]], "recomp": [["0x10005803", "mov eax, dword ptr [ecx + 4]"]]}, {"both": [["0x10002c16", "faddp st(1)", "0x10005806"]]}, {"orig": [["0x10002c18", "fld dword ptr [edi + 0xc]"], ["0x10002c1b", "fmul dword ptr [eax + 0xc]"]], "recomp": [["0x10005808", "fld dword ptr [ebx + 0xc]"], ["0x1000580b", "fmul dword ptr [edi + 0xc]"]]}, {"both": [["0x10002c1e", "fsubrp st(1)", "0x1000580e"]]}, {"orig": [["0x10002c20", "fstp dword ptr [ebx + 0xc]"], ["0x10002c23", "mov edi, dword ptr [edx + 4]"], ["0x10002c26", "mov ebx, dword ptr [esi + 4]"]], "recomp": [["0x10005810", "fstp dword ptr [eax + 0xc]"], ["0x10005813", "fld dword ptr [ebx + 4]"], ["0x10005816", "fmul dword ptr [edi + 8]"], ["0x10005819", "fld dword ptr [ebx + 8]"], ["0x1000581c", "fmul dword ptr [edi + 4]"]]}, {"both": [["0x10002c29", "mov eax, dword ptr [ecx + 4]", "0x1000581f"]]}, {"orig": [["0x10002c2c", "fld dword ptr [edi + 8]"], ["0x10002c2f", "fmul dword ptr [ebx + 4]"], ["0x10002c32", "fld dword ptr [edi + 4]"], ["0x10002c35", "fmul dword ptr [ebx + 8]"]], "recomp": []}, {"both": [["0x10002c38", "fsubp st(1)", "0x10005822"], ["0x10002c3a", "fstp dword ptr [eax]", "0x10005824"], ["0x10002c3c", "fld dword ptr [ebx + 8]", "0x10005826"], ["0x10002c3f", "fmul dword ptr [edi]", "0x10005829"], ["0x10002c41", "fld dword ptr [edi + 8]", "0x1000582b"], ["0x10002c44", "fmul dword ptr [ebx]", "0x1000582e"], ["0x10002c46", "mov eax, dword ptr [ecx + 4]", "0x10005830"], ["0x10002c49", "fsubp st(1)", "0x10005833"], ["0x10002c4b", "fstp dword ptr [eax + 4]", "0x10005835"], ["0x10002c4e", "fld dword ptr [edi + 4]", "0x10005838"]]}]], ["@@ -0x10002c60,32 +0x1000584a,36 @@", [{"both": [["0x10002c60", "mov ebx, dword ptr [ecx + 4]", "0x1000584a"], ["0x10002c63", "mov edi, dword ptr [esi + 4]", "0x1000584d"], ["0x10002c66", "mov eax, dword ptr [edx + 4]", "0x10005850"], ["0x10002c69", "fld dword ptr [edi + 0xc]", "0x10005853"], ["0x10002c6c", "fmul dword ptr [eax]", "0x10005856"], ["0x10002c6e", "fld dword ptr [eax + 0xc]", "0x10005858"], ["0x10002c71", "fmul dword ptr [edi]", "0x1000585b"], ["0x10002c73", "faddp st(1)", "0x1000585d"], ["0x10002c75", "fadd dword ptr [ebx]", "0x1000585f"], ["0x10002c77", "fstp dword ptr [ebx]", "0x10005861"]]}, {"orig": [["0x10002c79", "mov edi, dword ptr [ecx + 4]"], ["0x10002c7c", "mov eax, dword ptr [esi + 4]"], ["0x10002c7f", "add edi, 4"], ["0x10002c82", "mov ebx, dword ptr [edx + 4]"]], "recomp": [["0x10005863", "mov ebx, dword ptr [ecx + 4]"], ["0x10005866", "mov edi, dword ptr [esi + 4]"], ["0x10005869", "add ebx, 4"], ["0x1000586c", "mov eax, dword ptr [edx + 4]"], ["0x1000586f", "fld dword ptr [edi + 4]"], ["0x10005872", "fmul dword ptr [eax + 0xc]"]]}, {"both": [["0x10002c85", "fld dword ptr [eax + 4]", "0x10005875"]]}, {"orig": [["0x10002c88", "fmul dword ptr [ebx + 0xc]"], ["0x10002c8b", "fld dword ptr [ebx + 4]"], ["0x10002c8e", "fmul dword ptr [eax + 0xc]"]], "recomp": [["0x10005878", "fmul dword ptr [edi + 0xc]"]]}, {"both": [["0x10002c91", "faddp st(1)", "0x1000587b"]]}, {"orig": [["0x10002c93", "fadd dword ptr [edi]"], ["0x10002c95", "fstp dword ptr [edi]"]], "recomp": [["0x1000587d", "fadd dword ptr [ebx]"], ["0x1000587f", "fstp dword ptr [ebx]"]]}, {"both": [["0x10002c97", "mov edi, dword ptr [ecx + 4]", "0x10005881"], ["0x10002c9a", "add edi, 8", "0x10005884"], ["0x10002c9d", "mov ecx, dword ptr [esi + 4]", "0x10005887"], ["0x10002ca0", "mov eax, dword ptr [edx + 4]", "0x1000588a"], ["0x10002ca3", "fld dword ptr [ecx + 8]", "0x1000588d"], ["0x10002ca6", "fmul dword ptr [eax + 0xc]", "0x10005890"], ["0x10002ca9", "fld dword ptr [eax + 8]", "0x10005893"], ["0x10002cac", "fmul dword ptr [ecx + 0xc]", "0x10005896"]]}, {"orig": [["0x10002caf", "xor eax, eax"]], "recomp": []}, {"both": [["0x10002cb1", "faddp st(1)", "0x10005899"], ["0x10002cb3", "fadd dword ptr [edi]", "0x1000589b"]]}, {"orig": [], "recomp": [["0x1000589d", "fstp dword ptr [edi]"], ["0x1000589f", "pop edi"], ["0x100058a0", "pop esi"], ["0x100058a1", "pop ebx"], ["0x100058a2", "ret 8"]]}]]]}, {"address": "0x10002cc0", "recomp": "0x10003600", "name": "LegoActor::VTable0x50", "matching": 1.0, "diff": []}, {"address": "0x10002cd0", "recomp": "0x10003610", "name": "LegoActor::VTable0x54", "matching": 1.0, "diff": []}, {"address": "0x10002ce0", "recomp": "0x10003620", "name": "LegoActor::VTable0x58", "matching": 1.0, "diff": []}, {"address": "0x10002cf0", "recomp": "0x10003630", "name": "LegoActor::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x10002d00", "recomp": "0x10003640", "name": "LegoActor::GetActorId", "matching": 1.0, "diff": []}, {"address": "0x10002d10", "recomp": "0x10003650", "name": "LegoActor::SetActorId", "matching": 1.0, "diff": []}, {"address": "0x10002d20", "recomp": "0x10003660", "name": "LegoPathActor::VTable0x78", "matching": 1.0, "diff": []}, {"address": "0x10002d30", "recomp": "0x10003670", "name": "LegoPathActor::VTable0x7c", "matching": 1.0, "diff": []}, {"address": "0x10002d40", "recomp": "0x10003680", "name": "LegoPathActor::VTable0x90", "matching": 0.6666666666666666, "diff": [["@@ -0x10002d40,1 +0x10003680,2 @@", [{"both": [["0x10002d40", "xor eax, eax", "0x10003680"]]}, {"orig": [], "recomp": [["0x10003682", "ret "]]}]]]}, {"address": "0x10002d50", "recomp": "0x10003690", "name": "LegoPathActor::VTable0x94", "matching": 0.6666666666666666, "diff": [["@@ -0x10002d50,1 +0x10003690,2 @@", [{"both": [["0x10002d50", "xor eax, eax", "0x10003690"]]}, {"orig": [], "recomp": [["0x10003692", "ret "]]}]]]}, {"address": "0x10002d60", "recomp": "0x100036a0", "name": "LegoPathActor::VTable0xa0", "matching": 1.0, "diff": []}, {"address": "0x10002d70", "recomp": "0x100036b0", "name": "LegoPathActor::VTable0xac", "matching": 1.0, "diff": []}, {"address": "0x10002d80", "recomp": "0x100036c0", "name": "LegoPathActor::VTable0xb0", "matching": 1.0, "diff": []}, {"address": "0x10002d90", "recomp": "0x100036d0", "name": "LegoPathActor::VTable0xb4", "matching": 1.0, "diff": []}, {"address": "0x10002da0", "recomp": "0x100036e0", "name": "LegoPathActor::VTable0xb8", "matching": 1.0, "diff": []}, {"address": "0x10002db0", "recomp": "0x100036f0", "name": "LegoPathActor::VTable0xbc", "matching": 1.0, "diff": []}, {"address": "0x10002dc0", "recomp": "0x10003700", "name": "LegoPathActor::VTable0xc0", "matching": 1.0, "diff": []}, {"address": "0x10002dd0", "recomp": "0x10003710", "name": "LegoPathActor::VTable0xc4", "matching": 1.0, "diff": []}, {"address": "0x10002de0", "recomp": "0x10003720", "name": "LegoPathActor::VTable0xc8", "matching": 1.0, "diff": []}, {"address": "0x10002df0", "recomp": "0x10004430", "name": "IslePathActor::VTable0xd0", "matching": 1.0, "diff": []}, {"address": "0x10002e00", "recomp": "0x10004460", "name": "IslePathActor::VTable0xdc", "matching": 1.0, "diff": []}, {"address": "0x10002e10", "recomp": "0x10004270", "name": "IslePathActor::~IslePathActor", "matching": 1.0, "diff": []}, {"address": "0x10002e70", "recomp": "0x10004420", "name": "IslePathActor::VTable0xcc", "matching": 1.0, "diff": []}, {"address": "0x10002e80", "recomp": "0x10004440", "name": "IslePathActor::VTable0xd4", "matching": 1.0, "diff": []}, {"address": "0x10002e90", "recomp": "0x10004450", "name": "IslePathActor::VTable0xd8", "matching": 1.0, "diff": []}, {"address": "0x10002ea0", "recomp": "0x100042d0", "name": "IslePathActor::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10002eb0", "recomp": "0x100042e0", "name": "IslePathActor::IsA", "matching": 1.0, "diff": []}, {"address": "0x10002ff0", "recomp": "0x10004470", "name": "IslePathActor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10003070", "recomp": "0x10005b30", "name": "Helicopter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10003080", "recomp": "0x10005b40", "name": "Helicopter::IsA", "matching": 1.0, "diff": []}, {"address": "0x10003200", "recomp": "0x10005b00", "name": "Mx4DPointFloat::operator=", "matching": 1.0, "diff": []}, {"address": "0x10003210", "recomp": "0x10005cc0", "name": "Helicopter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10003230", "recomp": "0x10005ce0", "name": "Helicopter::~Helicopter", "matching": 1.0, "diff": []}, {"address": "0x100032c0", "recomp": "0x10005d70", "name": "Helicopter::Create", "matching": 0.8620689655172413, "diff": [["@@ -0x100032c0,23 +0x10005d70,23 @@", [{"both": [["0x100032c0", "mov eax, dword ptr [esp + 4]", "0x10005d70"], ["0x100032c4", "push esi", "0x10005d74"], ["0x100032c5", "push edi", "0x10005d75"], ["0x100032c6", "mov esi, ecx", "0x10005d76"], ["0x100032c8", "push eax", "0x10005d78"], ["0x100032c9", "call IslePathActor::Create (FUNCTION)", "0x10005d79"], ["0x100032ce", "mov edi, eax", "0x10005d7e"], ["0x100032d0", "call CurrentWorld (FUNCTION)", "0x10005d80"]]}, {"orig": [], "recomp": [["0x10005d85", "mov dword ptr [esi + 0x154], eax"], ["0x10005d8b", "mov edx, dword ptr [eax]"], ["0x10005d8d", "push 'Act3' (STRING)"]]}, {"both": [["0x100032d5", "mov ecx, eax", "0x10005d92"]]}, {"orig": [["0x100032d7", "push 'Act3' (STRING)"], ["0x100032dc", "mov dword ptr [esi + 0x154], eax"], ["0x100032e2", "mov eax, dword ptr [ecx]"], ["0x100032e4", "call dword ptr [eax + 0x10]"]], "recomp": [["0x10005d94", "call dword ptr [edx + 0x10]"]]}, {"both": [["0x100032e7", "test al, al", "0x10005d97"], ["0x100032e9", "je 0xc", "0x10005d99"], ["0x100032eb", "mov eax, dword ptr [esi + 0x154]", "0x10005d9b"], ["0x100032f1", "mov dword ptr [eax + 0x420c], esi", "0x10005da1"], ["0x100032f7", "mov ecx, dword ptr [esi + 0x154]", "0x10005da7"], ["0x100032fd", "test ecx, ecx", "0x10005dad"], ["0x100032ff", "je 0x6", "0x10005daf"], ["0x10003301", "push esi", "0x10005db1"], ["0x10003302", "mov eax, dword ptr [ecx]", "0x10005db2"], ["0x10003304", "call dword ptr [eax + 0x58]", "0x10005db4"]]}]]]}, {"address": "0x10003320", "recomp": "0x10005dd0", "name": "Helicopter::GetState", "matching": 1.0, "diff": []}, {"address": "0x10003360", "recomp": "0x10005e10", "name": "Helicopter::VTable0xe4", "matching": 1.0, "diff": []}, {"address": "0x10003480", "recomp": "0x10005f30", "name": "Helicopter::VTable0xcc", "matching": 1.0, "diff": []}, {"address": "0x100035e0", "recomp": "0x10006090", "name": "Helicopter::VTable0xd4", "matching": 0.5791139240506329, "diff": [["@@ -0x100035e0,19 +0x10006090,18 @@", [{"both": [["0x100035e0", "mov eax, dword ptr fs:[0]", "0x10006090"], ["0x100035e6", "push ebp", "0x10006096"], ["0x100035e7", "mov ebp, esp", "0x10006097"], ["0x100035e9", "push -1", "0x10006099"], ["0x100035eb", "push <OFFSET1>", "0x1000609b"], ["0x100035f0", "push eax", "0x100060a0"], ["0x100035f1", "mov dword ptr fs:[0], esp", "0x100060a1"]]}, {"orig": [["0x100035f8", "sub esp, 0xa8"], ["0x100035fe", "push ebx"]], "recomp": [["0x100060a8", "sub esp, 0xac"]]}, {"both": [["0x100035ff", "push esi", "0x100060ae"], ["0x10003600", "push edi", "0x100060af"], ["0x10003601", "mov esi, ecx", "0x100060b0"], ["0x10003603", "xor edi, edi", "0x100060b2"], ["0x10003605", "mov dword ptr [ebp - 0x14], edi", "0x100060b4"], ["0x10003608", "mov dword ptr [ebp - 0x10], edi", "0x100060b7"], ["0x1000360b", "mov dword ptr [ebp - 4], edi", "0x100060ba"], ["0x1000360e", "call GameState (FUNCTION)", "0x100060bd"], ["0x10003613", "mov eax, dword ptr [eax + 0x10]", "0x100060c2"], ["0x10003616", "cmp eax, edi", "0x100060c5"]]}]], ["@@ -0x10003626,290 +0x100060d5,293 @@", [{"both": [["0x10003626", "mov eax, dword ptr [g_isleScript (DATA)]", "0x100060d5"], ["0x1000362b", "jmp 0xc", "0x100060da"], ["0x1000362d", "mov eax, dword ptr [g_act2mainScript (DATA)]", "0x100060dc"], ["0x10003632", "jmp 0x5", "0x100060e1"], ["0x10003634", "mov eax, dword ptr [g_act3Script (DATA)]", "0x100060e3"], ["0x10003639", "push eax", "0x100060e8"], ["0x1000363a", "lea ecx, [ebp - 0x10]", "0x100060e9"], ["0x1000363d", "call MxAtomId::operator= (FUNCTION)", "0x100060ec"], ["0x10003642", "mov eax, dword ptr [ebp + 8]", "0x100060f1"], ["0x10003645", "cmp word ptr [eax + 0x28], 1", "0x100060f4"]]}, {"orig": [["0x1000364a", "jne 0x3ba"], ["0x10003650", "xor edi, edi"]], "recomp": [["0x100060f9", "jne 0x366"]]}, {"both": [["0x10003652", "mov eax, dword ptr [eax + 0x20]", "0x100060ff"], ["0x10003655", "sub eax, 0x17", "0x10006102"], ["0x10003658", "cmp eax, 6", "0x10006105"]]}, {"orig": [["0x1000365b", "ja 0x3a9"], ["0x10003661", "jmp dword ptr [eax*4 + 0x10003a40]"]], "recomp": [["0x10006108", "ja 0x357"], ["0x1000610e", "jmp dword ptr [eax*4 + 0x100064d4]"]]}, {"both": [["0x10003668", "mov eax, dword ptr [g_act3Script (DATA)]", "0x10006115"], ["0x1000366d", "mov ecx, dword ptr [ebp - 0x10]", "0x1000611a"], ["0x10003670", "cmp dword ptr [eax], ecx", "0x1000611d"], ["0x10003672", "jne 0x25", "0x1000611f"], ["0x10003674", "call CurrentWorld (FUNCTION)", "0x10006121"], ["0x10003679", "mov dword ptr [eax + 0x4270], 2", "0x10006126"], ["0x10003683", "push 0", "0x10006130"], ["0x10003685", "push 0", "0x10006132"], ["0x10003687", "push 0x32", "0x10006134"], ["0x10003689", "push 3", "0x10006136"], ["0x1000368b", "call TransitionManager (FUNCTION)", "0x10006138"], ["0x10003690", "mov ecx, eax", "0x1000613d"], ["0x10003692", "call MxTransitionManager::StartTransition (FUNCTION)", "0x1000613f"], ["0x10003697", "jmp 0x10", "0x10006144"], ["0x10003699", "mov eax, dword ptr [esi + 0x228]", "0x10006146"], ["0x1000369f", "cmp dword ptr [eax + 8], 0", "0x1000614c"]]}, {"orig": [["0x100036a3", "jne 0x361"]], "recomp": [["0x10006150", "jne 0x30f"]]}, {"both": [["0x100036a9", "mov eax, dword ptr [esi]", "0x10006156"], ["0x100036ab", "mov ecx, esi", "0x10006158"], ["0x100036ad", "call dword ptr [eax + 0xe4]", "0x1000615a"], ["0x100036b3", "call GameState (FUNCTION)", "0x10006160"], ["0x100036b8", "mov dword ptr [eax + 0x424], 0x42", "0x10006165"]]}, {"orig": [["0x100036c2", "jmp 0x33c"], ["0x100036c7", "mov eax, dword ptr [g_act3Script (DATA)]"], ["0x100036cc", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100036cf", "cmp dword ptr [eax], ecx"], ["0x100036d1", "je 0x333"]], "recomp": [["0x1000616f", "jmp 0x2ea"], ["0x10006174", "mov ecx, dword ptr [g_act3Script (DATA)]"], ["0x1000617a", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000617d", "cmp dword ptr [ecx], eax"], ["0x1000617f", "je 0x2e0"]]}, {"both": [["0x100036d7", "push 'Act1State' (STRING)", "0x10006185"], ["0x100036dc", "call GameState (FUNCTION)", "0x1000618a"], ["0x100036e1", "mov ecx, eax", "0x1000618f"], ["0x100036e3", "call LegoGameState::GetState (FUNCTION)", "0x10006191"], ["0x100036e8", "mov ecx, dword ptr [esi + 0x228]", "0x10006196"], ["0x100036ee", "cmp dword ptr [ecx + 8], 0", "0x1000619c"]]}, {"orig": [["0x100036f2", "jne 0x30b"]], "recomp": [["0x100061a0", "jne 0x2b8"]]}, {"both": [["0x100036f8", "mov dword ptr [eax + 0x18], 4", "0x100061a6"], ["0x100036ff", "mov eax, dword ptr [esi + 0x228]", "0x100061ad"], ["0x10003705", "push esi", "0x100061b3"], ["0x10003706", "mov dword ptr [eax + 8], 1", "0x100061b4"], ["0x1000370d", "mov ecx, dword ptr [esi + 0x154]", "0x100061bb"], ["0x10003713", "call LegoWorld::FUN_1001fc80 (FUNCTION)", "0x100061c1"], ["0x10003718", "push 0", "0x100061c6"], ["0x1000371a", "lea eax, [ebp - 0x10]", "0x100061c8"], ["0x1000371d", "push 0x20", "0x100061cb"], ["0x1000371f", "push eax", "0x100061cd"], ["0x10003720", "push 4", "0x100061ce"], ["0x10003722", "call InvokeAction (FUNCTION)", "0x100061d0"], ["0x10003727", "mov dword ptr [esi + 0xdc], 0", "0x100061d5"], ["0x10003731", "add esp, 0x10", "0x100061df"]]}, {"orig": [["0x10003734", "jmp 0x2ca"]], "recomp": [["0x100061e2", "jmp 0x277"]]}, {"both": [["0x10003739", "mov eax, dword ptr [g_act3Script (DATA)]", "0x100061e7"], ["0x1000373e", "mov ecx, dword ptr [ebp - 0x10]", "0x100061ec"], ["0x10003741", "cmp dword ptr [eax], ecx", "0x100061ef"]]}, {"orig": [["0x10003743", "je 0x2c1"]], "recomp": [["0x100061f1", "je 0x26e"]]}, {"both": [["0x10003749", "mov eax, dword ptr [esi + 0x228]", "0x100061f7"], ["0x1000374f", "add eax, 8", "0x100061fd"], ["0x10003752", "cmp dword ptr [eax], 2", "0x10006200"]]}, {"orig": [["0x10003755", "jne 0x2a8"]], "recomp": [["0x10006203", "jne 0x255"]]}, {"both": [["0x1000375b", "push esi", "0x10006209"], ["0x1000375c", "mov dword ptr [eax], 3", "0x1000620a"], ["0x10003762", "mov ecx, dword ptr [esi + 0x154]", "0x10006210"], ["0x10003768", "call LegoWorld::FUN_1001fc80 (FUNCTION)", "0x10006216"], ["0x1000376d", "push 0", "0x1000621b"], ["0x1000376f", "lea eax, [ebp - 0x10]", "0x1000621d"], ["0x10003772", "push 0x21", "0x10006220"], ["0x10003774", "push eax", "0x10006222"], ["0x10003775", "push 4", "0x10006223"], ["0x10003777", "call InvokeAction (FUNCTION)", "0x10006225"], ["0x1000377c", "mov dword ptr [esi + 0xdc], 4", "0x1000622a"], ["0x10003786", "add esp, 0x10", "0x10006234"]]}, {"orig": [["0x10003789", "jmp 0x275"]], "recomp": [["0x10006237", "jmp 0x222"]]}, {"both": [["0x1000378e", "mov eax, dword ptr [g_act3Script (DATA)]", "0x1000623c"], ["0x10003793", "mov ecx, dword ptr [ebp - 0x10]", "0x10006241"], ["0x10003796", "cmp dword ptr [eax], ecx", "0x10006244"]]}, {"orig": [["0x10003798", "jne 0x26c"], ["0x1000379e", "mov edi, 1"]], "recomp": [["0x10006246", "jne 0x219"], ["0x1000624c", "mov dword ptr [ebp - 0x14], 1"]]}, {"both": [["0x100037a3", "mov eax, dword ptr [g_act3Script (DATA)]", "0x10006253"], ["0x100037a8", "mov ecx, dword ptr [ebp - 0x10]", "0x10006258"], ["0x100037ab", "cmp dword ptr [eax], ecx", "0x1000625b"]]}, {"orig": [["0x100037ad", "jne 0x257"]], "recomp": [["0x1000625d", "jne 0x202"]]}, {"both": [["0x100037b3", "mov ecx, dword ptr [esi + 0x154]", "0x10006263"], ["0x100037b9", "test ecx, ecx", "0x10006269"]]}, {"orig": [["0x100037bb", "je 0x242"]], "recomp": [["0x1000626b", "je 0x1ed"]]}, {"both": [["0x100037c1", "cmp dword ptr [ecx + 0x98], 0", "0x10006271"]]}, {"orig": [["0x100037c8", "je 0x235"]], "recomp": [["0x10006278", "je 0x1e0"]]}, {"both": [["0x100037ce", "lea eax, [ebp - 0x34]", "0x1000627e"], ["0x100037d1", "mov edx, Mx3DPointFloat::`vftable' (VTABLE)", "0x10006281"]]}, {"orig": [["0x100037d6", "lea ebx, [ebp - 0x20]"]], "recomp": [["0x10006286", "lea edi, [ebp - 0x20]"]]}, {"both": [["0x100037d9", "mov dword ptr [ebp - 0x38], eax", "0x10006289"], ["0x100037dc", "lea eax, [ebp - 0x48]", "0x1000628c"], ["0x100037df", "mov dword ptr [ebp - 0x3c], edx", "0x1000628f"]]}, {"orig": [["0x100037e2", "mov dword ptr [ebp - 0x24], ebx"]], "recomp": [["0x10006292", "mov dword ptr [ebp - 0x24], edi"]]}, {"both": [["0x100037e5", "mov dword ptr [ebp - 0x28], edx", "0x10006295"], ["0x100037e8", "mov dword ptr [ebp - 0x4c], eax", "0x10006298"], ["0x100037eb", "mov dword ptr [ebp - 0x50], edx", "0x1000629b"]]}, {"orig": [["0x100037ee", "lea edx, [ebp - 0xb4]"]], "recomp": [["0x1000629e", "lea edx, [ebp - 0xb8]"]]}, {"both": [["0x100037f4", "mov ecx, dword ptr [ecx + 0x98]", "0x100062a4"], ["0x100037fa", "push edx", "0x100062aa"], ["0x100037fb", "call LegoCameraController::GetWorldLocation (FUNCTION)", "0x100062ab"], ["0x10003800", "mov ecx, dword ptr [eax + 4]", "0x100062b0"]]}, {"orig": [["0x10003803", "mov ebx, eax"]], "recomp": [["0x100062b3", "mov edi, eax"]]}, {"both": [["0x10003805", "push ecx", "0x100062b5"], ["0x10003806", "mov eax, dword ptr [ebp - 0x3c]", "0x100062b6"], ["0x10003809", "lea ecx, [ebp - 0x3c]", "0x100062b9"]]}, {"orig": [["0x1000380c", "add ebx, 8"]], "recomp": [["0x100062bc", "add edi, 8"]]}, {"both": [["0x1000380f", "call dword ptr [eax + 0x20]", "0x100062bf"], ["0x10003812", "lea ecx, [ebp - 0x34]", "0x100062c2"]]}, {"orig": [["0x10003815", "mov eax, dword ptr [ebx]"], ["0x10003817", "add ebx, 4"]], "recomp": [["0x100062c5", "mov eax, dword ptr [edi]"], ["0x100062c7", "add edi, 4"]]}, {"both": [["0x1000381a", "mov dword ptr [ecx], eax", "0x100062ca"], ["0x1000381c", "add ecx, 4", "0x100062cc"], ["0x1000381f", "lea eax, [ebp - 0x28]", "0x100062cf"], ["0x10003822", "cmp ecx, eax", "0x100062d2"], ["0x10003824", "jb -0x11", "0x100062d4"]]}, {"orig": [["0x10003826", "lea eax, [ebp - 0xb4]"]], "recomp": [["0x100062d6", "lea eax, [ebp - 0xb8]"]]}, {"both": [["0x1000382c", "mov edx, dword ptr [esi + 0x154]", "0x100062dc"], ["0x10003832", "push eax", "0x100062e2"], ["0x10003833", "mov ecx, dword ptr [edx + 0x98]", "0x100062e3"], ["0x10003839", "call LegoCameraController::GetWorldDirection (FUNCTION)", "0x100062e9"], ["0x1000383e", "mov ecx, dword ptr [eax + 4]", "0x100062ee"]]}, {"orig": [["0x10003841", "mov ebx, eax"]], "recomp": [["0x100062f1", "mov edi, eax"]]}, {"both": [["0x10003843", "push ecx", "0x100062f3"], ["0x10003844", "mov eax, dword ptr [ebp - 0x28]", "0x100062f4"], ["0x10003847", "lea ecx, [ebp - 0x28]", "0x100062f7"]]}, {"orig": [["0x1000384a", "add ebx, 8"]], "recomp": [["0x100062fa", "add edi, 8"]]}, {"both": [["0x1000384d", "call dword ptr [eax + 0x20]", "0x100062fd"], ["0x10003850", "lea ecx, [ebp - 0x20]", "0x10006300"]]}, {"orig": [["0x10003853", "mov eax, dword ptr [ebx]"], ["0x10003855", "add ebx, 4"]], "recomp": [["0x10006303", "mov eax, dword ptr [edi]"], ["0x10006305", "add edi, 4"]]}, {"both": [["0x10003858", "mov dword ptr [ecx], eax", "0x10006308"], ["0x1000385a", "add ecx, 4", "0x1000630a"], ["0x1000385d", "lea eax, [ebp - 0x14]", "0x1000630d"], ["0x10003860", "cmp ecx, eax", "0x10006310"], ["0x10003862", "jb -0x11", "0x10006312"], ["0x10003864", "mov eax, dword ptr [ebp - 0x24]", "0x10006314"], ["0x10003867", "lea ecx, [ebp - 0x50]", "0x10006317"], ["0x1000386a", "push eax", "0x1000631a"]]}, {"orig": [["0x1000386b", "mov ebx, dword ptr [ebp - 0x50]"], ["0x1000386e", "call dword ptr [ebx + 0x20]"], ["0x10003871", "mov ebx, dword ptr [ebp - 0x1c]"], ["0x10003874", "lea edx, [ebp - 0x20]"], ["0x10003877", "lea ecx, [ebp - 0x48]"], ["0x1000387a", "mov eax, dword ptr [edx]"], ["0x1000387c", "mov edx, dword ptr [edx + 8]"], ["0x1000387f", "mov dword ptr [ecx], eax"], ["0x10003881", "lea eax, [ebp - 0xa4]"], ["0x10003887", "mov dword ptr [ecx + 4], ebx"], ["0x1000388a", "push eax"], ["0x1000388b", "mov dword ptr [ecx + 8], edx"]], "recomp": [["0x1000631b", "mov edi, dword ptr [ebp - 0x50]"], ["0x1000631e", "call dword ptr [edi + 0x20]"], ["0x10006321", "mov edi, dword ptr [ebp - 0x1c]"], ["0x10006324", "lea ecx, [ebp - 0x20]"], ["0x10006327", "mov dword ptr [ebp - 0x54], 0x40400000"], ["0x1000632e", "lea edx, [ebp - 0x48]"], ["0x10006331", "mov eax, dword ptr [ecx]"], ["0x10006333", "mov ecx, dword ptr [ecx + 8]"], ["0x10006336", "mov dword ptr [edx], eax"], ["0x10006338", "lea eax, [ebp - 0x54]"], ["0x1000633b", "mov dword ptr [edx + 4], edi"], ["0x1000633e", "push eax"], ["0x1000633f", "mov dword ptr [edx + 8], ecx"]]}, {"both": [["0x1000388e", "lea ecx, [ebp - 0x50]", "0x10006342"]]}, {"orig": [["0x10003891", "mov ebx, dword ptr [ebp - 0x50]"], ["0x10003894", "mov dword ptr [ebp - 0xa4], 0x40400000"], ["0x1000389e", "call dword ptr [ebx + 0x5c]"]], "recomp": [["0x10006345", "mov edi, dword ptr [ebp - 0x50]"], ["0x10006348", "call dword ptr [edi + 0xc]"], ["0x1000634b", "mov ecx, dword ptr [ebp - 0x38]"], ["0x1000634e", "mov edi, dword ptr [ebp - 0x50]"], ["0x10006351", "push ecx"]]}, {"both": [["0x100038a1", "lea ecx, [ebp - 0x50]", "0x10006352"]]}, {"orig": [["0x100038a4", "mov eax, dword ptr [ebp - 0x3c]"], ["0x100038a7", "push ecx"], ["0x100038a8", "lea ecx, [ebp - 0x3c]"], ["0x100038ab", "call dword ptr [eax + 0x48]"], ["0x100038ae", "lea ecx, [ebp - 0x5c]"], ["0x100038b1", "lea eax, [ebp - 0x98]"], ["0x100038b7", "lea edx, [ebp - 0x70]"], ["0x100038ba", "mov dword ptr [ebp - 0x60], ecx"]], "recomp": [["0x10006355", "call dword ptr [edi + 4]"], ["0x10006358", "lea ecx, [ebp - 0x60]"], ["0x1000635b", "lea eax, [ebp - 0x74]"], ["0x1000635e", "lea edx, [ebp - 0x88]"], ["0x10006364", "mov dword ptr [ebp - 0x64], ecx"]]}, {"both": [["0x100038bd", "mov ecx, Mx3DPointFloat::`vftable' (VTABLE)", "0x10006367"]]}, {"orig": [["0x100038c2", "lea ebx, [ebp - 0x84]"], ["0x100038c8", "mov dword ptr [ebp - 0x64], ecx"], ["0x100038cb", "mov dword ptr [ebp - 0x74], edx"], ["0x100038ce", "mov dword ptr [ebp - 0x9c], eax"], ["0x100038d4", "mov dword ptr [ebp - 0x78], ecx"]], "recomp": [["0x1000636c", "mov dword ptr [ebp - 0x78], eax"]]}, {"both": [["0x100038d7", "xor eax, eax", "0x1000636f"]]}, {"orig": [["0x100038d9", "mov dword ptr [ebp - 0xa0], ecx"], ["0x100038df", "mov dword ptr [ebp - 0x88], ebx"], ["0x100038e5", "mov dword ptr [ebp - 0x8c], ecx"], ["0x100038eb", "lea ecx, [ebp - 0xb4]"], ["0x100038f1", "mov edx, dword ptr [esi + 0x154]"], ["0x100038f7", "push ecx"], ["0x100038f8", "mov dword ptr [ebp - 0x84], eax"], ["0x100038fe", "mov dword ptr [ebp - 0x80], 0x3f800000"], ["0x10003905", "mov dword ptr [ebp - 0x7c], eax"], ["0x10003908", "mov ecx, dword ptr [edx + 0x98]"]], "recomp": [["0x10006371", "mov dword ptr [ebp - 0x68], ecx"], ["0x10006374", "mov dword ptr [ebp - 0x7c], ecx"], ["0x10006377", "mov dword ptr [ebp - 0x8c], edx"], ["0x1000637d", "lea edi, [ebp - 0x9c]"], ["0x10006383", "mov dword ptr [ebp - 0x90], ecx"], ["0x10006389", "mov dword ptr [ebp - 0x88], eax"], ["0x1000638f", "mov dword ptr [ebp - 0x80], eax"], ["0x10006392", "mov eax, dword ptr [esi + 0x154]"], ["0x10006398", "mov dword ptr [ebp - 0xa0], edi"], ["0x1000639e", "mov dword ptr [ebp - 0x84], 0x3f800000"], ["0x100063a8", "mov dword ptr [ebp - 0xa4], ecx"], ["0x100063ae", "lea ecx, [ebp - 0xb8]"], ["0x100063b4", "push ecx"], ["0x100063b5", "mov ecx, dword ptr [eax + 0x98]"]]}, {"both": [["0x1000390e", "call LegoCameraController::GetWorldUp (FUNCTION)", "0x100063bb"], ["0x10003913", "mov ecx, dword ptr [eax + 4]", "0x100063c0"]]}, {"orig": [["0x10003916", "mov ebx, eax"], ["0x10003918", "push ecx"], ["0x10003919", "mov eax, dword ptr [ebp - 0x64]"], ["0x1000391c", "lea ecx, [ebp - 0x64]"], ["0x1000391f", "add ebx, 8"]], "recomp": [["0x100063c3", "mov edi, eax"], ["0x100063c5", "push ecx"], ["0x100063c6", "mov eax, dword ptr [ebp - 0x68]"], ["0x100063c9", "lea ecx, [ebp - 0x68]"], ["0x100063cc", "add edi, 8"]]}, {"both": [["0x10003922", "call dword ptr [eax + 0x20]", "0x100063cf"]]}, {"orig": [["0x10003925", "lea ecx, [ebp - 0x5c]"], ["0x10003928", "mov eax, dword ptr [ebx]"], ["0x1000392a", "add ebx, 4"]], "recomp": [["0x100063d2", "lea ecx, [ebp - 0x60]"], ["0x100063d5", "mov eax, dword ptr [edi]"], ["0x100063d7", "add edi, 4"]]}, {"both": [["0x1000392d", "mov dword ptr [ecx], eax", "0x100063da"], ["0x1000392f", "add ecx, 4", "0x100063dc"]]}, {"orig": [["0x10003932", "lea eax, [ebp - 0x50]"]], "recomp": [["0x100063df", "lea eax, [ebp - 0x54]"]]}, {"both": [["0x10003935", "cmp ecx, eax", "0x100063e2"], ["0x10003937", "jb -0x11", "0x100063e4"], ["0x10003939", "mov eax, dword ptr [ebp - 0x24]", "0x100063e6"]]}, {"orig": [["0x1000393c", "mov ecx, dword ptr [ebp - 0x60]"], ["0x1000393f", "push eax"], ["0x10003940", "mov ebx, dword ptr [ebp - 0xa0]"], ["0x10003946", "push ecx"], ["0x10003947", "lea ecx, [ebp - 0xa0]"], ["0x1000394d", "call dword ptr [ebx + 0x74]"], ["0x10003950", "mov ecx, dword ptr [ebp - 0x88]"], ["0x10003956", "mov eax, dword ptr [ebp - 0x9c]"], ["0x1000395c", "push ecx"], ["0x1000395d", "mov ebx, dword ptr [ebp - 0x78]"], ["0x10003960", "push eax"], ["0x10003961", "lea ecx, [ebp - 0x78]"], ["0x10003964", "call dword ptr [ebx + 0x74]"], ["0x10003967", "lea eax, [ebp - 0x78]"]], "recomp": [["0x100063e9", "mov ecx, dword ptr [ebp - 0x64]"], ["0x100063ec", "push eax"], ["0x100063ed", "mov edi, dword ptr [ebp - 0xa4]"], ["0x100063f3", "push ecx"], ["0x100063f4", "lea ecx, [ebp - 0xa4]"], ["0x100063fa", "call dword ptr [edi + 0x74]"], ["0x100063fd", "mov ecx, dword ptr [ebp - 0x8c]"], ["0x10006403", "mov eax, dword ptr [ebp - 0xa0]"], ["0x10006409", "push ecx"], ["0x1000640a", "mov edi, dword ptr [ebp - 0x7c]"], ["0x1000640d", "push eax"], ["0x1000640e", "lea ecx, [ebp - 0x7c]"], ["0x10006411", "call dword ptr [edi + 0x74]"], ["0x10006414", "cmp dword ptr [ebp - 0x14], 0"], ["0x10006418", "je 0x44"], ["0x1000641a", "lea eax, [ebp - 0x7c]"]]}, {"both": [["0x1000396a", "lea ecx, [ebp - 0x28]", "0x1000641d"], ["0x1000396d", "push eax", "0x10006420"], ["0x1000396e", "lea edx, [ebp - 0x3c]", "0x10006421"], ["0x10003971", "push ecx", "0x10006424"], ["0x10003972", "mov eax, dword ptr [esi + 0x138]", "0x10006425"], ["0x10003978", "push edx", "0x1000642b"], ["0x10003979", "mov ecx, dword ptr [esi + 0x154]", "0x1000642c"], ["0x1000397f", "push eax", "0x10006432"]]}, {"orig": [["0x10003980", "test edi, edi"], ["0x10003982", "je 0x76"]], "recomp": []}, {"both": [["0x10003984", "call Act3::FUN_100727e0 (FUNCTION)", "0x10006433"]]}, {"orig": [["0x10003989", "test eax, eax"], ["0x1000398b", "je 0x76"], ["0x1000398d", "jmp 0x7b"], ["0x1000398f", "call GameState (FUNCTION)"], ["0x10003994", "cmp dword ptr [eax + 0x10], 0"], ["0x10003998", "jne 0x2f"], ["0x1000399a", "call CurrentWorld (FUNCTION)"], ["0x1000399f", "mov dword ptr [eax + 0x13c], 2"], ["0x100039a9", "push 0"], ["0x100039ab", "push 0"], ["0x100039ad", "push 0x32"], ["0x100039af", "push 3"], ["0x100039b1", "call TransitionManager (FUNCTION)"], ["0x100039b6", "mov ecx, eax"], ["0x100039b8", "call MxTransitionManager::StartTransition (FUNCTION)"], ["0x100039bd", "mov eax, dword ptr [esi]"], ["0x100039bf", "mov ecx, esi"], ["0x100039c1", "call dword ptr [eax + 0xe4]"], ["0x100039c7", "jmp 0x3a"], ["0x100039c9", "mov eax, dword ptr [g_act3Script (DATA)]"], ["0x100039ce", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100039d1", "cmp dword ptr [eax], ecx"], ["0x100039d3", "jne 0x2e"], ["0x100039d5", "call CurrentWorld (FUNCTION)"], ["0x100039da", "mov dword ptr [eax + 0x4270], 2"], ["0x100039e4", "push 0"], ["0x100039e6", "push 0"], ["0x100039e8", "push 0x32"], ["0x100039ea", "push 3"], ["0x100039ec", "call TransitionManager (FUNCTION)"], ["0x100039f1", "mov ecx, eax"], ["0x100039f3", "call MxTransitionManager::StartTransition (FUNCTION)"], ["0x100039f8", "jmp 0x9"]], "recomp": [["0x10006438", "test al, al"], ["0x1000643a", "jne 0x29"], ["0x1000643c", "lea eax, [ebp - 0x7c]"], ["0x1000643f", "lea ecx, [ebp - 0x28]"], ["0x10006442", "push eax"], ["0x10006443", "lea edx, [ebp - 0x3c]"], ["0x10006446", "push ecx"], ["0x10006447", "mov eax, dword ptr [esi + 0x138]"], ["0x1000644d", "push edx"], ["0x1000644e", "mov ecx, dword ptr [esi + 0x154]"], ["0x10006454", "push eax"]]}, {"both": [["0x100039fa", "call Act3::FUN_10072980 (FUNCTION)", "0x10006455"]]}, {"orig": [["0x100039ff", "test eax, eax"]], "recomp": [["0x1000645a", "test al, al"]]}, {"both": [["0x10003a01", "jne 0x7", "0x1000645c"], ["0x10003a03", "mov dword ptr [ebp - 0x14], 1", "0x1000645e"], ["0x10003a0a", "mov dword ptr [ebp - 4], 0xffffffff", "0x10006465"], ["0x10003a11", "call <OFFSET20>", "0x1000646c"], ["0x10003a16", "mov eax, dword ptr [ebp - 0x14]", "0x10006471"], ["0x10003a19", "mov ecx, dword ptr [ebp - 0xc]", "0x10006474"], ["0x10003a1c", "mov dword ptr fs:[0], ecx", "0x10006477"], ["0x10003a23", "pop edi", "0x1000647e"], ["0x10003a24", "pop esi", "0x1000647f"]]}, {"orig": [["0x10003a25", "pop ebx"]], "recomp": []}, {"both": [["0x10003a26", "mov esp, ebp", "0x10006480"], ["0x10003a28", "pop ebp", "0x10006482"], ["0x10003a29", "ret 4", "0x10006483"]]}, {"orig": [], "recomp": [["0x10006486", "call GameState (FUNCTION)"], ["0x1000648b", "cmp dword ptr [eax + 0x10], 0"], ["0x1000648f", "jne -0x33"], ["0x10006491", "call CurrentWorld (FUNCTION)"], ["0x10006496", "mov dword ptr [eax + 0x13c], 2"], ["0x100064a0", "push 0"], ["0x100064a2", "push 0"], ["0x100064a4", "push 0x32"], ["0x100064a6", "push 3"], ["0x100064a8", "call TransitionManager (FUNCTION)"], ["0x100064ad", "mov ecx, eax"], ["0x100064af", "call MxTransitionManager::StartTransition (FUNCTION)"], ["0x100064b4", "mov eax, dword ptr [esi]"], ["0x100064b6", "mov ecx, esi"], ["0x100064b8", "call dword ptr [eax + 0xe4]"], ["0x100064be", "jmp -0x62"]]}, {"both": [["0x10003a2c", "mov eax, <OFFSET21>", "0x100064c0"], ["0x10003a31", "jmp ___CxxFrameHandler (FUNCTION)", "0x100064c5"], ["0x10003a36", "lea ecx, [ebp - 0x10]", "0x100064ca"], ["0x10003a39", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x100064cd"], ["0x10003a3e", "mov edi, edi", "0x100064d2"]]}, {"orig": [], "recomp": [["0x100064d4", "adc eax, 0x74100061"], ["0x100064d9", "popal "], ["0x100064da", "add byte ptr [eax], dl"], ["0x100064dc", "out 0x61, eax"], ["0x100064de", "add byte ptr [eax], dl"], ["0x100064e0", "cmp al, 0x62"], ["0x100064e2", "add byte ptr [eax], dl"], ["0x100064e4", "push ebx"], ["0x100064e5", "bound eax, qword ptr [eax]"], ["0x100064e7", "adc byte ptr [esi + 0x5e100064], al"], ["0x100064ed", "add byte ptr fs:[eax], dl"]]}]]]}, {"address": "0x10003a60", "recomp": "0x10001770", "name": "Vector3::AddImpl", "matching": 1.0, "effective": true, "diff": [["@@ -0x10003a60,14 +0x10001770,14 @@", [{"both": [["0x10003a60", "mov eax, dword ptr [ecx + 4]", "0x10001770"], ["0x10003a63", "mov edx, dword ptr [esp + 4]", "0x10001773"]]}, {"orig": [["0x10003a67", "fld dword ptr [eax]"], ["0x10003a69", "fadd dword ptr [edx]"]], "recomp": [["0x10001777", "fld dword ptr [edx]"], ["0x10001779", "fadd dword ptr [eax]"]]}, {"both": [["0x10003a6b", "fstp dword ptr [eax]", "0x1000177b"], ["0x10003a6d", "fld dword ptr [edx + 4]", "0x1000177d"], ["0x10003a70", "mov eax, dword ptr [ecx + 4]", "0x10001780"], ["0x10003a73", "add eax, 4", "0x10001783"], ["0x10003a76", "fadd dword ptr [eax]", "0x10001786"], ["0x10003a78", "fstp dword ptr [eax]", "0x10001788"], ["0x10003a7a", "fld dword ptr [edx + 8]", "0x1000178a"], ["0x10003a7d", "mov eax, dword ptr [ecx + 4]", "0x1000178d"], ["0x10003a80", "add eax, 8", "0x10001790"], ["0x10003a83", "fadd dword ptr [eax]", "0x10001793"]]}]]]}, {"address": "0x10003a90", "recomp": "0x100017a0", "name": "Vector3::AddImpl", "matching": 1.0, "diff": []}, {"address": "0x10003ac0", "recomp": "0x100017d0", "name": "Vector3::SubImpl", "matching": 1.0, "diff": []}, {"address": "0x10003af0", "recomp": "0x10001830", "name": "Vector3::MulVectorImpl", "matching": 1.0, "diff": []}, {"address": "0x10003b20", "recomp": "0x10001800", "name": "Vector3::MulScalarImpl", "matching": 1.0, "diff": []}, {"address": "0x10003b50", "recomp": "0x10001860", "name": "Vector3::DivScalarImpl", "matching": 1.0, "diff": []}, {"address": "0x10003b80", "recomp": "0x10001890", "name": "Vector3::DotImpl", "matching": 1.0, "effective": true, "diff": [["@@ -0x10003b80,11 +0x10001890,11 @@", [{"both": [["0x10003b80", "mov ecx, dword ptr [esp + 8]", "0x10001890"], ["0x10003b84", "mov eax, dword ptr [esp + 4]", "0x10001894"], ["0x10003b88", "fld dword ptr [ecx + 4]", "0x10001898"], ["0x10003b8b", "fmul dword ptr [eax + 4]", "0x1000189b"], ["0x10003b8e", "fld dword ptr [ecx + 8]", "0x1000189e"], ["0x10003b91", "fmul dword ptr [eax + 8]", "0x100018a1"], ["0x10003b94", "faddp st(1)", "0x100018a4"]]}, {"orig": [["0x10003b96", "fld dword ptr [eax]"], ["0x10003b98", "fmul dword ptr [ecx]"]], "recomp": [["0x100018a6", "fld dword ptr [ecx]"], ["0x100018a8", "fmul dword ptr [eax]"]]}, {"both": [["0x10003b9a", "faddp st(1)", "0x100018aa"], ["0x10003b9c", "ret 8", "0x100018ac"]]}]]]}, {"address": "0x10003ba0", "recomp": "0x100018b0", "name": "Vector3::EqualsImpl", "matching": 1.0, "diff": []}, {"address": "0x10003bc0", "recomp": "0x100018d0", "name": "Vector3::Clear", "matching": 1.0, "diff": []}, {"address": "0x10003bd0", "recomp": "0x100018e0", "name": "Vector3::LenSquared", "matching": 0.8, "diff": [["@@ -0x10003bd0,10 +0x100018e0,10 @@", [{"both": [["0x10003bd0", "mov eax, dword ptr [ecx + 4]", "0x100018e0"]]}, {"orig": [], "recomp": [["0x100018e3", "fld dword ptr [eax + 4]"], ["0x100018e6", "fmul dword ptr [eax + 4]"]]}, {"both": [["0x10003bd3", "fld dword ptr [eax + 8]", "0x100018e9"], ["0x10003bd6", "fmul dword ptr [eax + 8]", "0x100018ec"]]}, {"orig": [["0x10003bd9", "fld dword ptr [eax + 4]"], ["0x10003bdc", "fmul dword ptr [eax + 4]"]], "recomp": []}, {"both": [["0x10003bdf", "faddp st(1)", "0x100018ef"], ["0x10003be1", "fld dword ptr [eax]", "0x100018f1"], ["0x10003be3", "fmul dword ptr [eax]", "0x100018f3"], ["0x10003be5", "faddp st(1)", "0x100018f5"], ["0x10003be7", "ret ", "0x100018f7"]]}]]]}, {"address": "0x10003bf0", "recomp": "0x10001750", "name": "Vector3::EqualsScalar", "matching": 1.0, "diff": []}, {"address": "0x10003c10", "recomp": "0x10001920", "name": "Mx3DPointFloat::operator=", "matching": 1.0, "diff": []}, {"address": "0x10003c20", "recomp": "0x100064f0", "name": "Helicopter::VTable0xd8", "matching": 0.9281437125748503, "diff": [["@@ -0x10003c20,23 +0x100064f0,23 @@", [{"orig": [["0x10003c20", "sub esp, 0xac"]], "recomp": [["0x100064f0", "sub esp, 0xa8"]]}, {"both": [["0x10003c26", "xor eax, eax", "0x100064f6"], ["0x10003c28", "push ebx", "0x100064f8"], ["0x10003c29", "push esi", "0x100064f9"], ["0x10003c2a", "push edi", "0x100064fa"], ["0x10003c2b", "mov ebx, ecx", "0x100064fb"], ["0x10003c2d", "mov ecx, dword ptr [ecx + 0x228]", "0x100064fd"], ["0x10003c33", "mov ecx, dword ptr [ecx + 8]", "0x10006503"], ["0x10003c36", "cmp ecx, 1", "0x10006506"], ["0x10003c39", "je 0xe", "0x10006509"], ["0x10003c3b", "cmp ecx, 3", "0x1000650b"]]}, {"orig": [["0x10003c3e", "je 0x153"], ["0x10003c44", "jmp 0x235"]], "recomp": [["0x1000650e", "je 0x150"], ["0x10006514", "jmp 0x22f"]]}, {"both": [["0x10003c49", "call GameState (FUNCTION)", "0x10006519"], ["0x10003c4e", "cmp dword ptr [eax + 0x10], 0", "0x1000651e"], ["0x10003c52", "jne 0x20", "0x10006522"], ["0x10003c54", "push 'Act1State' (STRING)", "0x10006524"], ["0x10003c59", "call GameState (FUNCTION)", "0x10006529"], ["0x10003c5e", "mov ecx, eax", "0x1000652e"], ["0x10003c60", "call LegoGameState::GetState (FUNCTION)", "0x10006530"], ["0x10003c65", "mov dword ptr [eax + 0x18], 4", "0x10006535"], ["0x10003c6c", "push 7", "0x1000653c"], ["0x10003c6e", "push 1", "0x1000653e"]]}]], ["@@ -0x10003cab,50 +0x1000657b,50 @@", [{"both": [["0x10003cab", "mov edx, dword ptr [esp + 0x30]", "0x1000657b"], ["0x10003caf", "mov ecx, 0x3f800000", "0x1000657f"], ["0x10003cb4", "mov dword ptr [edx], ecx", "0x10006584"], ["0x10003cb6", "mov edx, dword ptr [esp + 0x30]", "0x10006586"], ["0x10003cba", "fld qword ptr [0.5235987901687622 (FLOAT)]", "0x1000658a"], ["0x10003cc0", "fsin ", "0x10006590"], ["0x10003cc2", "mov dword ptr [edx + 0x14], ecx", "0x10006592"], ["0x10003cc5", "mov edx, dword ptr [esp + 0x30]", "0x10006595"], ["0x10003cc9", "mov dword ptr [edx + 0x28], ecx", "0x10006599"], ["0x10003ccc", "mov edx, dword ptr [esp + 0x30]", "0x1000659c"]]}, {"orig": [["0x10003cd0", "lea edi, [esp + 0x78]"]], "recomp": [["0x100065a0", "lea edi, [esp + 0x74]"]]}, {"both": [["0x10003cd4", "mov dword ptr [edx + 0x3c], ecx", "0x100065a4"], ["0x10003cd7", "mov esi, dword ptr [esp + 0x30]", "0x100065a7"], ["0x10003cdb", "mov ecx, 0x10", "0x100065ab"], ["0x10003ce0", "fstp dword ptr [esp + 0x20]", "0x100065b0"], ["0x10003ce4", "fld qword ptr [0.5235987901687622 (FLOAT)]", "0x100065b4"], ["0x10003cea", "fcos ", "0x100065ba"], ["0x10003cec", "fstp dword ptr [esp + 0x1c]", "0x100065bc"], ["0x10003cf0", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x100065c0"], ["0x10003cf2", "xor esi, esi", "0x100065c2"], ["0x10003cf4", "jmp 0x4", "0x100065c4"], ["0x10003cf6", "fstp dword ptr [edx + esi - 8]", "0x100065c6"]]}, {"orig": [["0x10003cfa", "lea ecx, [esp + esi + 0x7c]"], ["0x10003cfe", "lea eax, [esp + esi + 0x80]"]], "recomp": [["0x100065ca", "lea ecx, [esp + esi + 0x78]"], ["0x100065ce", "lea eax, [esp + esi + 0x7c]"]]}, {"both": [["0x10003d05", "mov edx, dword ptr [esp + 0x30]", "0x100065d2"], ["0x10003d09", "add esi, 0x10", "0x100065d6"], ["0x10003d0c", "fld dword ptr [ecx]", "0x100065d9"], ["0x10003d0e", "fmul dword ptr [esp + 0x1c]", "0x100065db"], ["0x10003d12", "fld dword ptr [eax]", "0x100065df"], ["0x10003d14", "fmul dword ptr [esp + 0x20]", "0x100065e1"], ["0x10003d18", "cmp esi, 0x40", "0x100065e5"], ["0x10003d1b", "fsubp st(1)", "0x100065e8"], ["0x10003d1d", "fstp dword ptr [edx + esi - 0xc]", "0x100065ea"], ["0x10003d21", "fld dword ptr [eax]", "0x100065ee"], ["0x10003d23", "fmul dword ptr [esp + 0x1c]", "0x100065f0"], ["0x10003d27", "fld dword ptr [ecx]", "0x100065f4"], ["0x10003d29", "fmul dword ptr [esp + 0x20]", "0x100065f6"], ["0x10003d2d", "mov edx, dword ptr [esp + 0x30]", "0x100065fa"], ["0x10003d31", "faddp st(1)", "0x100065fe"]]}, {"orig": [["0x10003d33", "jl -0x3f"]], "recomp": [["0x10006600", "jl -0x3c"]]}, {"both": [["0x10003d35", "fstp dword ptr [edx + esi - 8]", "0x10006602"], ["0x10003d39", "mov eax, dword ptr [esp + 0x30]", "0x10006606"], ["0x10003d3d", "mov ecx, Vector3::`vftable' (VTABLE)", "0x1000660a"], ["0x10003d42", "add eax, 0x30", "0x1000660f"], ["0x10003d45", "mov dword ptr [esp + 0x24], ecx", "0x10006612"], ["0x10003d49", "mov dword ptr [esp + 0x28], eax", "0x10006616"], ["0x10003d4d", "mov eax, dword ptr [esp + 0x30]", "0x1000661a"], ["0x10003d51", "add eax, 0x20", "0x1000661e"], ["0x10003d54", "mov dword ptr [esp + 0x10], eax", "0x10006621"], ["0x10003d58", "mov dword ptr [esp + 0xc], ecx", "0x10006625"]]}]], ["@@ -0x10003d6f,21 +0x1000663c,21 @@", [{"both": [["0x10003d6f", "mov dword ptr [esp + 0x14], ecx", "0x1000663c"], ["0x10003d73", "mov esi, dword ptr [ebx + 0x154]", "0x10006640"], ["0x10003d79", "lea ecx, [esp + 0x14]", "0x10006646"], ["0x10003d7d", "push ecx", "0x1000664a"], ["0x10003d7e", "push edx", "0x1000664b"], ["0x10003d7f", "push eax", "0x1000664c"], ["0x10003d80", "mov ecx, dword ptr [esi + 0x98]", "0x1000664d"], ["0x10003d86", "call LegoCameraController::SetWorldTransform (FUNCTION)", "0x10006653"], ["0x10003d8b", "mov ecx, ebx", "0x10006658"], ["0x10003d8d", "call LegoEntity::FUN_10010c30 (FUNCTION)", "0x1000665a"]]}, {"orig": [["0x10003d92", "jmp 0xe2"]], "recomp": [["0x1000665f", "jmp 0xdf"]]}, {"both": [["0x10003d97", "lea eax, [esp + 0x34]", "0x10006664"], ["0x10003d9b", "lea ecx, [esp + 0x2c]", "0x10006668"], ["0x10003d9f", "mov dword ptr [esp + 0x30], eax", "0x1000666c"], ["0x10003da3", "mov dword ptr [esp + 0x2c], MxMatrix::`vftable' (VTABLE)", "0x10006670"], ["0x10003dab", "call dword ptr [<OFFSET5>]", "0x10006678"], ["0x10003db1", "mov eax, dword ptr [esp + 0x30]", "0x1000667e"], ["0x10003db5", "mov ecx, 0x3f800000", "0x10006682"], ["0x10003dba", "mov dword ptr [eax], ecx", "0x10006687"], ["0x10003dbc", "mov eax, dword ptr [esp + 0x30]", "0x10006689"], ["0x10003dc0", "mov dword ptr [eax + 0x14], ecx", "0x1000668d"]]}]], ["@@ -0x10003dce,27 +0x1000669b,27 @@", [{"both": [["0x10003dce", "mov dword ptr [eax + 0x3c], ecx", "0x1000669b"], ["0x10003dd1", "mov eax, dword ptr [esp + 0x30]", "0x1000669e"], ["0x10003dd5", "add eax, 0x30", "0x100066a2"], ["0x10003dd8", "mov ecx, Vector3::`vftable' (VTABLE)", "0x100066a5"], ["0x10003ddd", "mov dword ptr [esp + 0x10], eax", "0x100066aa"], ["0x10003de1", "mov dword ptr [esp + 0xc], ecx", "0x100066ae"], ["0x10003de5", "mov eax, dword ptr [esp + 0x30]", "0x100066b2"], ["0x10003de9", "add eax, 0x20", "0x100066b6"], ["0x10003dec", "mov dword ptr [esp + 0x18], eax", "0x100066b9"], ["0x10003df0", "mov dword ptr [esp + 0x14], ecx", "0x100066bd"]]}, {"orig": [["0x10003df4", "lea edx, [esp + 0x78]"]], "recomp": [["0x100066c1", "lea edx, [esp + 0x74]"]]}, {"both": [["0x10003df8", "mov eax, dword ptr [esp + 0x30]", "0x100066c5"], ["0x10003dfc", "push edx", "0x100066c9"], ["0x10003dfd", "add eax, 0x10", "0x100066ca"]]}, {"orig": [["0x10003e00", "mov dword ptr [esp + 0x80], eax"]], "recomp": [["0x100066cd", "mov dword ptr [esp + 0x7c], eax"]]}, {"both": [["0x10003e07", "lea eax, [esp + 0x18]", "0x100066d1"]]}, {"orig": [["0x10003e0b", "mov dword ptr [esp + 0x7c], ecx"]], "recomp": [["0x100066d5", "mov dword ptr [esp + 0x78], ecx"]]}, {"both": [["0x10003e0f", "push eax", "0x100066d9"], ["0x10003e10", "mov ecx, dword ptr [esp + 0x18]", "0x100066da"], ["0x10003e14", "mov dword ptr [ecx + 4], 0x3fa00000", "0x100066de"], ["0x10003e1b", "lea ecx, [esp + 0x14]", "0x100066e5"], ["0x10003e1f", "mov edx, dword ptr [ebx + 0x154]", "0x100066e9"], ["0x10003e25", "push ecx", "0x100066ef"], ["0x10003e26", "mov ecx, dword ptr [edx + 0x98]", "0x100066f0"], ["0x10003e2c", "call LegoCameraController::SetWorldTransform (FUNCTION)", "0x100066f6"], ["0x10003e31", "call GameState (FUNCTION)", "0x100066fb"], ["0x10003e36", "cmp dword ptr [eax + 0x10], 0", "0x10006700"]]}]], ["@@ -0x10003e60,10 +0x1000672a,12 @@", [{"both": [["0x10003e60", "push 0x30", "0x1000672a"], ["0x10003e62", "mov eax, dword ptr [ebx]", "0x1000672c"], ["0x10003e64", "mov ecx, ebx", "0x1000672e"], ["0x10003e66", "call dword ptr [eax + 0xe8]", "0x10006730"], ["0x10003e6c", "mov eax, dword ptr [ebx + 0x228]", "0x10006736"], ["0x10003e72", "mov dword ptr [eax + 8], 0", "0x1000673c"], ["0x10003e79", "mov eax, 1", "0x10006743"], ["0x10003e7e", "pop edi", "0x10006748"], ["0x10003e7f", "pop esi", "0x10006749"], ["0x10003e80", "pop ebx", "0x1000674a"]]}, {"orig": [], "recomp": [["0x1000674b", "add esp, 0xa8"], ["0x10006751", "ret 4"]]}]]]}, {"address": "0x10003e90", "recomp": "0x10006760", "name": "Helicopter::VTable0x74", "matching": 1.0, "diff": []}, {"address": "0x10003ee0", "recomp": "0x100067b0", "name": "Helicopter::VTable0x70", "matching": 0.3317972350230415, "diff": [["@@ -0x10003ee0,108 +0x100067b0,109 @@", [{"orig": [["0x10003ee0", "sub esp, 0x7c"]], "recomp": [["0x100067b0", "sub esp, 0x74"]]}, {"both": [["0x10003ee3", "push esi", "0x100067b3"]]}, {"orig": [], "recomp": [["0x100067b4", "push edi"]]}, {"both": [["0x10003ee4", "mov eax, dword ptr [ecx + 0x228]", "0x100067b5"], ["0x10003eea", "mov esi, ecx", "0x100067bb"], ["0x10003eec", "mov ecx, dword ptr [eax + 8]", "0x100067bd"], ["0x10003eef", "cmp ecx, 4", "0x100067c0"]]}, {"orig": [["0x10003ef2", "je 0x1b"]], "recomp": [["0x100067c3", "jb 0x5"]]}, {"both": [["0x10003ef4", "cmp ecx, 5", "0x100067c5"]]}, {"orig": [["0x10003ef7", "je 0x16"], ["0x10003ef9", "mov eax, dword ptr [esp + 0x84]"]], "recomp": [["0x100067c8", "jbe 0x17"], ["0x100067ca", "mov eax, dword ptr [esp + 0x80]"]]}, {"both": [["0x10003f00", "mov ecx, esi", "0x100067d1"], ["0x10003f02", "push eax", "0x100067d3"], ["0x10003f03", "call LegoPathActor::VTable0x70 (FUNCTION)", "0x100067d4"]]}, {"orig": [], "recomp": [["0x100067d9", "pop edi"]]}, {"both": [["0x10003f08", "pop esi", "0x100067da"]]}, {"orig": [["0x10003f09", "add esp, 0x7c"]], "recomp": [["0x100067db", "add esp, 0x74"]]}, {"both": [["0x10003f0c", "ret 4", "0x100067de"], ["0x10003f0f", "fld dword ptr [esi + 0x1f0]", "0x100067e1"]]}, {"orig": [["0x10003f15", "fsub dword ptr [esp + 0x84]"]], "recomp": [["0x100067e7", "fsub dword ptr [esp + 0x80]"]]}, {"both": [["0x10003f1c", "fadd dword ptr [3000.0 (FLOAT)]", "0x100067ee"], ["0x10003f22", "fcom dword ptr [0.0 (FLOAT)]", "0x100067f4"]]}, {"orig": [["0x10003f28", "fstp dword ptr [esp + 0x28]"]], "recomp": [["0x100067fa", "fstp dword ptr [esp + 0x24]"]]}, {"both": [["0x10003f2c", "fnstsw ax", "0x100067fe"], ["0x10003f2e", "test ah, 1", "0x10006800"]]}, {"orig": [["0x10003f31", "jne 0x139"], ["0x10003f37", "fld dword ptr [esp + 0x28]"], ["0x10003f3b", "fmul dword ptr [-0.00033333332976326346 (FLOAT)]"]], "recomp": [["0x10006803", "jne 0x115"], ["0x10006809", "fld dword ptr [esp + 0x24]"], ["0x1000680d", "fmul dword ptr [0.00033333332976326346 (FLOAT)]"]]}, {"both": [["0x10003f41", "fadd dword ptr [1.0 (FLOAT)]", "0x10006813"], ["0x10003f47", "fcom dword ptr [0.0 (FLOAT)]", "0x10006819"]]}, {"orig": [["0x10003f4d", "fstp dword ptr [esp + 4]"]], "recomp": [["0x1000681f", "fstp dword ptr [esp + 8]"]]}, {"both": [["0x10003f51", "fnstsw ax", "0x10006823"], ["0x10003f53", "test ah, 1", "0x10006825"], ["0x10003f56", "je 0x8", "0x10006828"]]}, {"orig": [["0x10003f58", "mov dword ptr [esp + 4], 0"]], "recomp": [["0x1000682a", "mov dword ptr [esp + 8], 0"]]}, {"both": [["0x10003f60", "mov eax, 0x3f800000", "0x10006832"]]}, {"orig": [["0x10003f65", "cmp dword ptr [esp + 4], eax"]], "recomp": [["0x10006837", "cmp dword ptr [esp + 8], eax"]]}, {"both": [["0x10003f69", "jle 0x4", "0x1000683b"]]}, {"orig": [["0x10003f6b", "mov dword ptr [esp + 4], eax"], ["0x10003f6f", "lea eax, [esp + 0x30]"], ["0x10003f73", "mov ecx, Vector3::`vftable' (VTABLE)"], ["0x10003f78", "mov dword ptr [esp + 0x2c], eax"]], "recomp": [["0x1000683d", "mov dword ptr [esp + 8], eax"], ["0x10006841", "mov eax, dword ptr [esi + 0x164]"], ["0x10006847", "lea ecx, [esp + 0x2c]"], ["0x1000684b", "add eax, 0x30"], ["0x1000684e", "mov edi, dword ptr [esi + 0x1ac]"], ["0x10006854", "add edi, 0x30"], ["0x10006857", "mov dword ptr [esp + 0x20], eax"], ["0x1000685b", "mov dword ptr [esp + 0x28], ecx"], ["0x1000685f", "mov dword ptr [esp + 0x10], edi"], ["0x10006863", "mov dword ptr [esp + 0x24], MxMatrix::`vftable' (VTABLE)"], ["0x1000686b", "mov dword ptr [esp + 0xc], Vector3::`vftable' (VTABLE)"], ["0x10006873", "lea ecx, [esp + 0x24]"], ["0x10006877", "call dword ptr [<OFFSET4>]"], ["0x1000687d", "mov eax, dword ptr [esp + 0x28]"], ["0x10006881", "mov ecx, 0x3f800000"], ["0x10006886", "mov dword ptr [eax], ecx"], ["0x10006888", "mov eax, dword ptr [esp + 0x28]"], ["0x1000688c", "mov dword ptr [eax + 0x14], ecx"], ["0x1000688f", "mov eax, dword ptr [esp + 0x28]"], ["0x10006893", "mov dword ptr [eax + 0x28], ecx"], ["0x10006896", "mov eax, dword ptr [esp + 0x28]"], ["0x1000689a", "mov dword ptr [eax + 0x3c], ecx"], ["0x1000689d", "lea ecx, [esp + 0x6c]"], ["0x100068a1", "mov edx, dword ptr [esp + 8]"], ["0x100068a5", "lea eax, [esp + 0x14]"]]}, {"both": [["0x10003f7c", "mov dword ptr [esp + 0x18], ecx", "0x100068a9"]]}, {"orig": [["0x10003f80", "mov dword ptr [esp + 0x28], MxMatrix::`vftable' (VTABLE)"], ["0x10003f88", "mov eax, dword ptr [esi + 0x164]"], ["0x10003f8e", "lea edx, [esp + 0x60]"], ["0x10003f92", "add eax, 0x30"], ["0x10003f95", "mov dword ptr [esp + 0xc], edx"], ["0x10003f99", "mov dword ptr [esp + 0x1c], eax"], ["0x10003f9d", "mov dword ptr [esp + 8], ecx"], ["0x10003fa1", "mov eax, dword ptr [esi + 0x1ac]"], ["0x10003fa7", "lea ecx, [esp + 0x28]"], ["0x10003fab", "add eax, 0x30"], ["0x10003fae", "mov dword ptr [esp + 0x24], eax"], ["0x10003fb2", "call dword ptr [<OFFSET4>]"], ["0x10003fb8", "mov edx, dword ptr [esp + 0x2c]"], ["0x10003fbc", "mov ecx, 0x3f800000"], ["0x10003fc1", "mov dword ptr [edx], ecx"], ["0x10003fc3", "mov edx, dword ptr [esp + 0x2c]"], ["0x10003fc7", "mov dword ptr [edx + 0x14], ecx"], ["0x10003fca", "mov edx, dword ptr [esp + 0x2c]"], ["0x10003fce", "mov dword ptr [edx + 0x28], ecx"], ["0x10003fd1", "mov edx, dword ptr [esp + 0x2c]"], ["0x10003fd5", "mov dword ptr [esp + 0x10], Vector4::`vftable' (VTABLE)"], ["0x10003fdd", "mov dword ptr [edx + 0x3c], ecx"], ["0x10003fe0", "lea ecx, [esp + 0x70]"], ["0x10003fe4", "mov eax, dword ptr [esp + 4]"], ["0x10003fe8", "lea edx, [esp + 0x10]"], ["0x10003fec", "mov dword ptr [esp + 0x14], ecx"]], "recomp": [["0x100068ad", "push edx"]]}, {"both": [["0x10003ff0", "push eax", "0x100068ae"]]}, {"orig": [["0x10003ff1", "push edx"]], "recomp": []}, {"both": [["0x10003ff2", "lea ecx, [esi + 0x1f4]", "0x100068af"]]}, {"orig": [], "recomp": [["0x100068b5", "mov dword ptr [esp + 0x1c], Vector4::`vftable' (VTABLE)"]]}, {"both": [["0x10003ff8", "call UnknownMx4DPointFloat::FUN_100040a0 (FUNCTION)", "0x100068bd"]]}, {"orig": [["0x10003ffd", "test eax, eax"], ["0x10003fff", "jne 0x10"], ["0x10004001", "lea eax, [esp + 0x10]"], ["0x10004005", "lea ecx, [esp + 0x28]"], ["0x10004009", "push eax"], ["0x1000400a", "mov eax, dword ptr [esp + 0x2c]"], ["0x1000400e", "call dword ptr [eax + 0x44]"], ["0x10004011", "mov eax, dword ptr [esp + 0x24]"]], "recomp": [["0x100068c2", "lea ecx, [esp + 0xc]"], ["0x100068c6", "push edi"], ["0x100068c7", "mov edi, dword ptr [esp + 0x10]"], ["0x100068cb", "call dword ptr [edi + 0x20]"], ["0x100068ce", "mov ecx, dword ptr [esp + 0x20]"], ["0x100068d2", "mov edi, dword ptr [esp + 0xc]"], ["0x100068d6", "push ecx"], ["0x100068d7", "lea ecx, [esp + 0x10]"], ["0x100068db", "call dword ptr [edi + 8]"]]}, {"both": [["0x10004015", "lea ecx, [esp + 8]", "0x100068de"]]}, {"orig": [["0x10004019", "push eax"], ["0x1000401a", "mov eax, dword ptr [esp + 0xc]"], ["0x1000401e", "call dword ptr [eax + 0x20]"], ["0x10004021", "lea ecx, [esp + 0x18]"], ["0x10004025", "mov eax, dword ptr [esp + 8]"]], "recomp": [["0x100068e2", "mov edi, dword ptr [esp + 0xc]"]]}, {"both": [["0x10004029", "push ecx", "0x100068e6"]]}, {"orig": [["0x1000402a", "lea ecx, [esp + 0xc]"], ["0x1000402e", "call dword ptr [eax + 0x54]"], ["0x10004031", "lea ecx, [esp + 4]"], ["0x10004035", "mov eax, dword ptr [esp + 8]"]], "recomp": [["0x100068e7", "lea ecx, [esp + 0x10]"], ["0x100068eb", "call dword ptr [edi + 0xc]"], ["0x100068ee", "mov ecx, dword ptr [esp + 0x20]"], ["0x100068f2", "mov edi, dword ptr [esp + 0xc]"]]}, {"both": [["0x10004039", "push ecx", "0x100068f6"]]}, {"orig": [["0x1000403a", "lea ecx, [esp + 0xc]"], ["0x1000403e", "call dword ptr [eax + 0x5c]"], ["0x10004041", "lea ecx, [esp + 0x18]"], ["0x10004045", "mov eax, dword ptr [esp + 8]"], ["0x10004049", "push ecx"], ["0x1000404a", "lea ecx, [esp + 0xc]"], ["0x1000404e", "call dword ptr [eax + 0x48]"], ["0x10004051", "lea ecx, [esp + 0x28]"]], "recomp": [["0x100068f7", "lea ecx, [esp + 0x10]"], ["0x100068fb", "call dword ptr [edi + 4]"], ["0x100068fe", "lea ecx, [esp + 0x24]"]]}, {"both": [["0x10004055", "push 0", "0x10006902"], ["0x10004057", "push ecx", "0x10006904"]]}, {"orig": [["0x10004058", "mov edx, dword ptr [esi + 0x154]"], ["0x1000405e", "mov ecx, dword ptr [edx + 0x98]"]], "recomp": [["0x10006905", "mov eax, dword ptr [esi + 0x154]"], ["0x1000690b", "mov ecx, dword ptr [eax + 0x98]"]]}, {"both": [["0x10004064", "call LegoCameraController::FUN_100123e0 (FUNCTION)", "0x10006911"]]}, {"orig": [], "recomp": [["0x10006916", "pop edi"]]}, {"both": [["0x10004069", "pop esi", "0x10006917"]]}, {"orig": [["0x1000406a", "add esp, 0x7c"]], "recomp": [["0x10006918", "add esp, 0x74"]]}, {"both": [["0x1000406d", "ret 4", "0x1000691b"], ["0x10004070", "cmp ecx, 4", "0x1000691e"]]}, {"orig": [], "recomp": [["0x10006921", "mov ecx, dword ptr [esi + 0x154]"], ["0x10006927", "jne 0x7"], ["0x10006929", "call Act3::FUN_10073400 (FUNCTION)"], ["0x1000692e", "jmp 0x5"], ["0x10006930", "call Act3::FUN_10073430 (FUNCTION)"], ["0x10006935", "mov dword ptr [esi + 0xdc], 4"], ["0x1000693f", "pop edi"], ["0x10006940", "pop esi"], ["0x10006941", "add esp, 0x74"], ["0x10006944", "ret 4"]]}]]]}, {"address": "0x100040a0", "recomp": "0x10006950", "name": "UnknownMx4DPointFloat::FUN_100040a0", "matching": 0.625, "diff": [["@@ -0x100040a0,168 +0x10006950,168 @@", [{"both": [["0x100040a0", "sub esp, 0x10", "0x10006950"], ["0x100040a3", "push ebx", "0x10006953"], ["0x100040a4", "push esi", "0x10006954"]]}, {"orig": [], "recomp": [["0x10006955", "push edi"]]}, {"both": [["0x100040a5", "mov eax, dword ptr [ecx + 0x30]", "0x10006956"]]}, {"orig": [["0x100040a8", "push edi"], ["0x100040a9", "mov esi, ecx"]], "recomp": [["0x10006959", "mov edi, ecx"]]}, {"both": [["0x100040ab", "cmp eax, 1", "0x1000695b"], ["0x100040ae", "jne 0x41", "0x1000695e"]]}, {"orig": [["0x100040b0", "mov edi, dword ptr [esp + 0x20]"], ["0x100040b4", "mov eax, dword ptr [esi + 4]"], ["0x100040b7", "mov ebx, dword ptr [edi]"]], "recomp": [["0x10006960", "mov esi, dword ptr [esp + 0x20]"], ["0x10006964", "mov eax, dword ptr [edi + 4]"], ["0x10006967", "mov ebx, dword ptr [esi]"]]}, {"both": [["0x100040b9", "push eax", "0x10006969"]]}, {"orig": [["0x100040ba", "mov ecx, edi"]], "recomp": [["0x1000696a", "mov ecx, esi"]]}, {"both": [["0x100040bc", "call dword ptr [ebx + 0x20]", "0x1000696c"]]}, {"orig": [["0x100040bf", "mov esi, dword ptr [edi + 4]"], ["0x100040c2", "add esi, 0xc"], ["0x100040c5", "fld dword ptr [esi]"]], "recomp": [["0x1000696f", "mov edi, dword ptr [esi + 4]"], ["0x10006972", "add edi, 0xc"], ["0x10006975", "fld dword ptr [edi]"]]}, {"both": [["0x100040c7", "call __CIacos (FUNCTION)", "0x10006977"], ["0x100040cc", "fld qword ptr [1.0 (FLOAT)]", "0x1000697c"], ["0x100040d2", "fsub dword ptr [esp + 0x24]", "0x10006982"]]}, {"orig": [["0x100040d6", "mov ecx, edi"]], "recomp": [["0x10006986", "mov ecx, esi"]]}, {"both": [["0x100040d8", "fmulp st(1)", "0x10006988"], ["0x100040da", "fmul qword ptr [2.0 (FLOAT)]", "0x1000698a"]]}, {"orig": [["0x100040e0", "fstp dword ptr [esi]"]], "recomp": [["0x10006990", "fstp dword ptr [edi]"]]}, {"both": [["0x100040e2", "call dword ptr [ebx + 0x90]", "0x10006992"], ["0x100040e8", "pop edi", "0x10006998"], ["0x100040e9", "pop esi", "0x10006999"], ["0x100040ea", "pop ebx", "0x1000699a"], ["0x100040eb", "add esp, 0x10", "0x1000699b"], ["0x100040ee", "ret 8", "0x1000699e"], ["0x100040f1", "cmp eax, 2", "0x100069a1"], ["0x100040f4", "jne 0x39", "0x100069a4"]]}, {"orig": [["0x100040f6", "mov edi, dword ptr [esp + 0x20]"], ["0x100040fa", "mov eax, dword ptr [esi + 0x1c]"], ["0x100040fd", "mov ebx, dword ptr [edi]"]], "recomp": [["0x100069a6", "mov esi, dword ptr [esp + 0x20]"], ["0x100069aa", "mov eax, dword ptr [edi + 0x1c]"], ["0x100069ad", "mov ebx, dword ptr [esi]"]]}, {"both": [["0x100040ff", "push eax", "0x100069af"]]}, {"orig": [["0x10004100", "mov ecx, edi"]], "recomp": [["0x100069b0", "mov ecx, esi"]]}, {"both": [["0x10004102", "call dword ptr [ebx + 0x20]", "0x100069b2"]]}, {"orig": [["0x10004105", "mov esi, dword ptr [edi + 4]"], ["0x10004108", "add esi, 0xc"], ["0x1000410b", "fld dword ptr [esi]"]], "recomp": [["0x100069b5", "mov edi, dword ptr [esi + 4]"], ["0x100069b8", "add edi, 0xc"], ["0x100069bb", "fld dword ptr [edi]"]]}, {"both": [["0x1000410d", "call __CIacos (FUNCTION)", "0x100069bd"], ["0x10004112", "fmul dword ptr [esp + 0x24]", "0x100069c2"]]}, {"orig": [["0x10004116", "mov ecx, edi"]], "recomp": [["0x100069c6", "mov ecx, esi"]]}, {"both": [["0x10004118", "fmul qword ptr [2.0 (FLOAT)]", "0x100069c8"]]}, {"orig": [["0x1000411e", "fstp dword ptr [esi]"]], "recomp": [["0x100069ce", "fstp dword ptr [edi]"]]}, {"both": [["0x10004120", "call dword ptr [ebx + 0x90]", "0x100069d0"], ["0x10004126", "pop edi", "0x100069d6"], ["0x10004127", "pop esi", "0x100069d7"], ["0x10004128", "pop ebx", "0x100069d8"], ["0x10004129", "add esp, 0x10", "0x100069d9"], ["0x1000412c", "ret 8", "0x100069dc"], ["0x1000412f", "cmp eax, 3", "0x100069df"]]}, {"orig": [["0x10004132", "jne 0x14c"], ["0x10004138", "lea eax, [esi + 0x18]"], ["0x1000413b", "mov edi, dword ptr [esp + 0x20]"]], "recomp": [["0x100069e2", "jne 0x145"], ["0x100069e8", "lea eax, [edi + 0x18]"], ["0x100069eb", "mov esi, dword ptr [esp + 0x20]"]]}, {"both": [["0x1000413f", "push eax", "0x100069ef"]]}, {"orig": [["0x10004140", "mov ecx, edi"], ["0x10004142", "push esi"], ["0x10004143", "mov ebx, dword ptr [edi]"]], "recomp": [["0x100069f0", "mov ecx, esi"], ["0x100069f2", "push edi"], ["0x100069f3", "mov ebx, dword ptr [esi]"]]}, {"both": [["0x10004145", "call dword ptr [ebx + 0x38]", "0x100069f5"], ["0x10004148", "fst qword ptr [esp + 0xc]", "0x100069f8"], ["0x1000414c", "fadd qword ptr [1.0 (FLOAT)]", "0x100069fc"], ["0x10004152", "fcomp qword ptr [1e-05 (FLOAT)]", "0x10006a02"], ["0x10004158", "fnstsw ax", "0x10006a08"], ["0x1000415a", "test ah, 0x41", "0x10006a0a"]]}, {"orig": [["0x1000415d", "jne 0x98"]], "recomp": [["0x10006a0d", "jne 0x90"]]}, {"both": [["0x10004163", "fld qword ptr [1.0 (FLOAT)]", "0x10006a13"], ["0x10004169", "fsub qword ptr [esp + 0xc]", "0x10006a19"], ["0x1000416d", "fcomp qword ptr [1e-05 (FLOAT)]", "0x10006a1d"], ["0x10004173", "fnstsw ax", "0x10006a23"], ["0x10004175", "test ah, 0x41", "0x10006a25"]]}, {"orig": [["0x10004178", "jne 0x33"]], "recomp": [["0x10006a28", "jne 0x2d"]]}, {"both": [["0x1000417a", "fld qword ptr [esp + 0xc]", "0x10006a2a"], ["0x1000417e", "call __CIacos (FUNCTION)", "0x10006a2e"], ["0x10004183", "fld st(0)", "0x10006a33"], ["0x10004185", "fsin ", "0x10006a35"]]}, {"orig": [["0x10004187", "fld dword ptr [esp + 0x24]"], ["0x1000418b", "fld qword ptr [1.0 (FLOAT)]"], ["0x10004191", "fsub st(1)"], ["0x10004193", "fmul st(3)"]], "recomp": [["0x10006a37", "fld dword ptr [1.0 (FLOAT)]"], ["0x10006a3d", "fsub dword ptr [esp + 0x24]"], ["0x10006a41", "fmul st(2)"]]}, {"both": [["0x10004195", "fsin ", "0x10006a43"]]}, {"orig": [["0x10004197", "fdiv st(2)"]], "recomp": [["0x10006a45", "fdiv st(1)"]]}, {"both": [["0x10004199", "fstp qword ptr [esp + 0xc]", "0x10006a47"]]}, {"orig": [["0x1000419d", "fmul st(2), st(0)"], ["0x1000419f", "fxch st(2)"]], "recomp": [["0x10006a4b", "fxch st(1)"], ["0x10006a4d", "fmul dword ptr [esp + 0x24]"]]}, {"both": [["0x100041a1", "fsin ", "0x10006a51"], ["0x100041a3", "fdivrp st(1)", "0x10006a53"]]}, {"orig": [["0x100041a5", "fstp qword ptr [esp + 0x14]"], ["0x100041a9", "fstp st(0)"], ["0x100041ab", "jmp 0x14"]], "recomp": [["0x10006a55", "jmp 0x10"]]}, {"both": [["0x100041ad", "fld dword ptr [esp + 0x24]", "0x10006a57"], ["0x100041b1", "fld qword ptr [1.0 (FLOAT)]", "0x10006a5b"], ["0x100041b7", "fsub st(1)", "0x10006a61"], ["0x100041b9", "fstp qword ptr [esp + 0xc]", "0x10006a63"], ["0x100041bd", "fstp qword ptr [esp + 0x14]", "0x10006a67"], ["0x100041c1", "xor ecx, ecx", "0x10006a6b"], ["0x100041c3", "jmp 0x4", "0x10006a6d"]]}, {"orig": [["0x100041c5", "fstp dword ptr [ebx + ecx - 4]"], ["0x100041c9", "mov eax, dword ptr [esi + 0x1c]"], ["0x100041cc", "mov edx, dword ptr [esi + 4]"], ["0x100041cf", "mov ebx, dword ptr [edi + 4]"], ["0x100041d2", "add ecx, 4"], ["0x100041d5", "cmp ecx, 0x10"], ["0x100041d8", "fld dword ptr [eax + ecx - 4]"]], "recomp": [["0x10006a6f", "fstp dword ptr [ebx + ecx*4 - 4]"], ["0x10006a73", "mov eax, dword ptr [edi + 0x1c]"], ["0x10006a76", "mov edx, dword ptr [edi + 4]"], ["0x10006a79", "mov ebx, dword ptr [esi + 4]"], ["0x10006a7c", "inc ecx"], ["0x10006a7d", "cmp ecx, 4"], ["0x10006a80", "fld dword ptr [eax + ecx*4 - 4]"]]}, {"both": [["0x100041dc", "fmul qword ptr [esp + 0x14]", "0x10006a84"]]}, {"orig": [["0x100041e0", "fld dword ptr [edx + ecx - 4]"]], "recomp": [["0x10006a88", "fld dword ptr [edx + ecx*4 - 4]"]]}, {"both": [["0x100041e4", "fmul qword ptr [esp + 0xc]", "0x10006a8c"], ["0x100041e8", "faddp st(1)", "0x10006a90"]]}, {"orig": [["0x100041ea", "jl -0x27"], ["0x100041ec", "fstp dword ptr [ebx + ecx - 4]"]], "recomp": [["0x10006a92", "jl -0x25"], ["0x10006a94", "fstp dword ptr [ebx + ecx*4 - 4]"]]}, {"both": [["0x100041f0", "xor eax, eax", "0x10006a98"], ["0x100041f2", "pop edi", "0x10006a9a"], ["0x100041f3", "pop esi", "0x10006a9b"], ["0x100041f4", "pop ebx", "0x10006a9c"], ["0x100041f5", "add esp, 0x10", "0x10006a9d"], ["0x100041f8", "ret 8", "0x10006aa0"]]}, {"orig": [["0x100041fb", "mov eax, dword ptr [esi + 4]"], ["0x100041fe", "mov ecx, dword ptr [edi + 4]"]], "recomp": [["0x10006aa3", "mov eax, dword ptr [edi + 4]"], ["0x10006aa6", "mov ecx, dword ptr [esi + 4]"]]}, {"both": [["0x10004201", "fld dword ptr [eax + 4]", "0x10006aa9"], ["0x10004204", "fchs ", "0x10006aac"], ["0x10004206", "fstp dword ptr [ecx]", "0x10006aae"]]}, {"orig": [["0x10004208", "mov eax, dword ptr [esi + 4]"], ["0x1000420b", "mov ecx, dword ptr [edi + 4]"], ["0x1000420e", "mov edx, dword ptr [eax]"]], "recomp": [["0x10006ab0", "mov eax, dword ptr [edi + 4]"], ["0x10006ab3", "mov ecx, dword ptr [esi + 4]"], ["0x10006ab6", "mov edx, dword ptr [eax + 4]"]]}, {"both": [["0x10004210", "mov dword ptr [ecx + 4], edx", "0x10006ab9"]]}, {"orig": [["0x10004213", "mov ecx, dword ptr [edi + 4]"], ["0x10004216", "mov eax, dword ptr [esi + 4]"]], "recomp": [["0x10006abc", "mov ecx, dword ptr [esi + 4]"], ["0x10006abf", "mov eax, dword ptr [edi + 4]"]]}, {"both": [["0x10004219", "fld dword ptr [eax + 0xc]", "0x10006ac2"], ["0x1000421c", "fchs ", "0x10006ac5"], ["0x1000421e", "fstp dword ptr [ecx + 8]", "0x10006ac7"], ["0x10004221", "fld dword ptr [esp + 0x24]", "0x10006aca"], ["0x10004225", "fld qword ptr [1.0 (FLOAT)]", "0x10006ace"], ["0x1000422b", "fsub st(1)", "0x10006ad4"]]}, {"orig": [["0x1000422d", "mov eax, dword ptr [esi + 4]"], ["0x10004230", "mov ecx, dword ptr [edi + 4]"]], "recomp": [["0x10006ad6", "mov eax, dword ptr [edi + 4]"], ["0x10006ad9", "mov ecx, dword ptr [esi + 4]"]]}, {"both": [["0x10004233", "fmul qword ptr [1.570796326794895 (FLOAT)]", "0x10006adc"], ["0x10004239", "mov edx, dword ptr [eax + 8]", "0x10006ae2"], ["0x1000423c", "mov dword ptr [ecx + 0xc], edx", "0x10006ae5"], ["0x1000423f", "xor edx, edx", "0x10006ae8"], ["0x10004241", "fsin ", "0x10006aea"], ["0x10004243", "fstp qword ptr [esp + 0xc]", "0x10006aec"], ["0x10004247", "fmul qword ptr [1.570796326794895 (FLOAT)]", "0x10006af0"], ["0x1000424d", "fsin ", "0x10006af6"], ["0x1000424f", "fstp qword ptr [esp + 0x14]", "0x10006af8"], ["0x10004253", "jmp 0x2", "0x10006afc"], ["0x10004255", "fstp dword ptr [eax]", "0x10006afe"]]}, {"orig": [["0x10004257", "mov eax, dword ptr [edi + 4]"], ["0x1000425a", "mov ecx, dword ptr [esi + 4]"], ["0x1000425d", "add eax, edx"], ["0x1000425f", "add edx, 4"], ["0x10004262", "cmp edx, 0xc"], ["0x10004265", "fld dword ptr [ecx + edx - 4]"]], "recomp": [["0x10006b00", "mov eax, dword ptr [esi + 4]"], ["0x10006b03", "mov ecx, dword ptr [edi + 4]"], ["0x10006b06", "inc edx"], ["0x10006b07", "cmp edx, 3"], ["0x10006b0a", "lea eax, [eax + edx*4 - 4]"], ["0x10006b0e", "fld dword ptr [ecx + edx*4 - 4]"]]}, {"both": [["0x10004269", "fmul qword ptr [esp + 0xc]", "0x10006b12"], ["0x1000426d", "fld dword ptr [eax]", "0x10006b16"], ["0x1000426f", "fmul qword ptr [esp + 0x14]", "0x10006b18"], ["0x10004273", "faddp st(1)", "0x10006b1c"], ["0x10004275", "jl -0x22", "0x10006b1e"], ["0x10004277", "fstp dword ptr [eax]", "0x10006b20"], ["0x10004279", "xor eax, eax", "0x10006b22"], ["0x1000427b", "pop edi", "0x10006b24"], ["0x1000427c", "pop esi", "0x10006b25"], ["0x1000427d", "pop ebx", "0x10006b26"], ["0x1000427e", "add esp, 0x10", "0x10006b27"], ["0x10004281", "ret 8", "0x10006b2a"], ["0x10004284", "mov eax, 0xffffffff", "0x10006b2d"], ["0x10004289", "pop edi", "0x10006b32"], ["0x1000428a", "pop esi", "0x10006b33"]]}, {"orig": [], "recomp": [["0x10006b34", "pop ebx"], ["0x10006b35", "add esp, 0x10"], ["0x10006b38", "ret 8"]]}]]]}, {"address": "0x100046a0", "recomp": "0x1003e210", "name": "GasStation::GasStation", "matching": 1.0, "diff": []}, {"address": "0x10004770", "recomp": "0x1003e420", "name": "GasStation::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x10004780", "recomp": "0x1003e2e0", "name": "GasStation::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10004790", "recomp": "0x1003e2f0", "name": "GasStation::IsA", "matching": 1.0, "diff": []}, {"address": "0x100048a0", "recomp": "0x1003e400", "name": "GasStation::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100048c0", "recomp": "0x1003e430", "name": "GasStation::~GasStation", "matching": 1.0, "diff": []}, {"address": "0x10004990", "recomp": "0x1003e500", "name": "GasStation::Create", "matching": 1.0, "diff": []}, {"address": "0x10004a60", "recomp": "0x1003e5d0", "name": "GasStation::Notify", "matching": 0.8343558282208589, "diff": [["@@ -0x10004a67,22 +0x1003e5d7,22 @@", [{"both": [["0x10004a67", "mov esi, dword ptr [esp + 0x10]", "0x1003e5d7"], ["0x10004a6b", "push esi", "0x1003e5db"], ["0x10004a6c", "call LegoWorld::Notify (FUNCTION)", "0x1003e5dc"], ["0x10004a71", "cmp byte ptr [edi + 0xf6], bl", "0x1003e5e1"], ["0x10004a77", "je 0x78", "0x1003e5e7"], ["0x10004a79", "mov ecx, dword ptr [esi + 4]", "0x1003e5e9"], ["0x10004a7c", "sub ecx, 2", "0x1003e5ec"], ["0x10004a7f", "cmp ecx, 0x16", "0x1003e5ef"], ["0x10004a82", "ja 0x6d", "0x1003e5f2"], ["0x10004a84", "xor eax, eax", "0x1003e5f4"]]}, {"orig": [["0x10004a86", "mov al, byte ptr [ecx + 0x10004b14]"], ["0x10004a8c", "jmp dword ptr [eax*4 + 0x10004afc]"]], "recomp": [["0x1003e5f6", "mov al, byte ptr [ecx + 0x1003e684]"], ["0x1003e5fc", "jmp dword ptr [eax*4 + 0x1003e66c]"]]}, {"both": [["0x10004a93", "push esi", "0x1003e603"], ["0x10004a94", "mov ecx, edi", "0x1003e604"], ["0x10004a96", "call GasStation::HandleEndAction (FUNCTION)", "0x1003e606"], ["0x10004a9b", "mov ebx, eax", "0x1003e60b"], ["0x10004a9d", "pop edi", "0x1003e60d"], ["0x10004a9e", "mov eax, ebx", "0x1003e60e"], ["0x10004aa0", "pop esi", "0x1003e610"], ["0x10004aa1", "pop ebx", "0x1003e611"], ["0x10004aa2", "ret 4", "0x1003e612"], ["0x10004aa5", "mov al, byte ptr [esi + 0x18]", "0x1003e615"]]}]], ["@@ -0x10004ae4,27 +0x1003e654,24 @@", [{"both": [["0x10004ae4", "push eax", "0x1003e654"], ["0x10004ae5", "call GameState (FUNCTION)", "0x1003e655"], ["0x10004aea", "mov ecx, eax", "0x1003e65a"], ["0x10004aec", "call LegoGameState::SwitchArea (FUNCTION)", "0x1003e65c"], ["0x10004af1", "mov eax, ebx", "0x1003e661"], ["0x10004af3", "pop edi", "0x1003e663"], ["0x10004af4", "pop esi", "0x1003e664"], ["0x10004af5", "pop ebx", "0x1003e665"], ["0x10004af6", "ret 4", "0x1003e666"], ["0x10004af9", "lea ecx, [ecx]", "0x1003e669"]]}, {"orig": [["0x10004afc", "xchg ebx, eax"], ["0x10004afd", "dec edx"], ["0x10004afe", "add byte ptr [eax], dl"], ["0x10004b00", "movsd dword ptr es:[edi], dword ptr [esi]"], ["0x10004b01", "dec edx"], ["0x10004b02", "add byte ptr [eax], dl"], ["0x10004b04", "mov edx, 0xcc10004a"], ["0x10004b09", "dec edx"], ["0x10004b0a", "add byte ptr [eax], dl"], ["0x10004b0c", "fimul word ptr [edx]"], ["0x10004b0f", "adc cl, dh"], ["0x10004b11", "dec edx"], ["0x10004b12", "add byte ptr [eax], dl"]], "recomp": [["0x1003e66c", "add esp, esi"], ["0x1003e66e", "add edx, dword ptr [eax]"], ["0x1003e670", "adc eax, 0x2a1003e6"], ["0x1003e675", "out 3, al"], ["0x1003e677", "adc byte ptr [esi], bh"], ["0x1003e67a", "add edx, dword ptr [eax]"], ["0x1003e67c", "dec esi"], ["0x1003e67d", "out 3, al"], ["0x1003e67f", "adc byte ptr [ecx - 0x1a], ah"], ["0x1003e682", "add edx, dword ptr [eax]"]]}, {"both": [["0x10004b14", "add byte ptr [<OFFSET7>], al", "0x1003e684"], ["0x10004b1a", "add eax, 0x5050502", "0x1003e68a"], ["0x10004b1f", "add eax, 0x3050505", "0x1003e68f"], ["0x10004b24", "add eax, 0x5050505", "0x1003e694"]]}]]]}, {"address": "0x10004b30", "recomp": "0x1003e6a0", "name": "GasStation::ReadyWorld", "matching": 0.0, "stub": true}, {"address": "0x10005530", "recomp": "0x1005d7d0", "name": "MxDSObject::SetAtomId", "matching": 1.0, "diff": []}, {"address": "0x10005660", "recomp": "0x1003e6b0", "name": "GasStation::HandleEndAction", "matching": 0.0, "stub": true}, {"address": "0x10005920", "recomp": "0x1003e6c0", "name": "GasStation::HandleKeyPress", "matching": 0.0, "stub": true}, {"address": "0x10005960", "recomp": "0x1003e6d0", "name": "GasStation::HandleButtonDown", "matching": 0.0, "stub": true}, {"address": "0x10005b20", "recomp": "0x1003e6e0", "name": "GasStation::HandleClick", "matching": 0.0, "stub": true}, {"address": "0x10005c40", "recomp": "0x1003e6f0", "name": "GasStation::Enable", "matching": 1.0, "diff": []}, {"address": "0x10005c90", "recomp": "0x1003e740", "name": "GasStation::Tickle", "matching": 0.0, "stub": true}, {"address": "0x10005e70", "recomp": "0x1003e750", "name": "GasStation::VTable0x64", "matching": 0.0, "stub": true}, {"address": "0x10005eb0", "recomp": "0x1002cbd0", "name": "GasStationState::GasStationState", "matching": 1.0, "diff": []}, {"address": "0x10005f40", "recomp": "0x10001930", "name": "LegoState::~LegoState", "matching": 1.0, "diff": []}, {"address": "0x10005f90", "recomp": "0x10001a10", "name": "LegoState::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x10005fa0", "recomp": "0x10001a20", "name": "LegoState::SetFlag", "matching": 1.0, "diff": []}, {"address": "0x10005fb0", "recomp": "0x10001a30", "name": "LegoState::VTable0x1c", "matching": 1.0, "effective": true, "diff": [["@@ -0x10005fb0,38 +0x10001a30,38 @@", [{"both": [["0x10005fb0", "mov eax, dword ptr fs:[0]", "0x10001a30"], ["0x10005fb6", "push ebp", "0x10001a36"], ["0x10005fb7", "mov ebp, esp", "0x10001a37"], ["0x10005fb9", "push -1", "0x10001a39"], ["0x10005fbb", "push <OFFSET1>", "0x10001a3b"], ["0x10005fc0", "push eax", "0x10001a40"], ["0x10005fc1", "mov dword ptr fs:[0], esp", "0x10001a41"], ["0x10005fc8", "sub esp, 4", "0x10001a48"], ["0x10005fcb", "push esi", "0x10001a4b"], ["0x10005fcc", "push edi", "0x10001a4c"]]}, {"orig": [["0x10005fcd", "mov edi, ecx"], ["0x10005fcf", "mov esi, dword ptr [ebp + 8]"], ["0x10005fd2", "mov ecx, esi"], ["0x10005fd4", "mov eax, dword ptr [esi]"]], "recomp": [["0x10001a4d", "mov esi, ecx"], ["0x10001a4f", "mov edi, dword ptr [ebp + 8]"], ["0x10001a52", "mov ecx, edi"], ["0x10001a54", "mov eax, dword ptr [edi]"]]}, {"both": [["0x10005fd6", "call dword ptr [eax + 0x14]", "0x10001a56"], ["0x10005fd9", "test al, al", "0x10001a59"], ["0x10005fdb", "je 0x2b", "0x10001a5b"], ["0x10005fdd", "sub esp, 0x10", "0x10001a5d"]]}, {"orig": [["0x10005fe0", "mov ecx, edi"]], "recomp": [["0x10001a60", "mov ecx, esi"]]}, {"both": [["0x10005fe2", "mov dword ptr [ebp - 0x10], esp", "0x10001a62"]]}, {"orig": [["0x10005fe5", "mov eax, dword ptr [edi]"]], "recomp": [["0x10001a65", "mov eax, dword ptr [esi]"]]}, {"both": [["0x10005fe7", "call dword ptr [eax + 0xc]", "0x10001a67"], ["0x10005fea", "push eax", "0x10001a6a"], ["0x10005feb", "mov ecx, dword ptr [ebp - 0x10]", "0x10001a6b"], ["0x10005fee", "call MxString::MxString (FUNCTION)", "0x10001a6e"], ["0x10005ff3", "mov dword ptr [ebp - 4], 0", "0x10001a73"], ["0x10005ffa", "mov dword ptr [ebp - 4], 0xffffffff", "0x10001a7a"]]}, {"orig": [["0x10006001", "mov ecx, esi"]], "recomp": [["0x10001a81", "mov ecx, edi"]]}, {"both": [["0x10006003", "call LegoFile::FUN_10006030 (FUNCTION)", "0x10001a83"], ["0x10006008", "xor eax, eax", "0x10001a88"], ["0x1000600a", "mov ecx, dword ptr [ebp - 0xc]", "0x10001a8a"], ["0x1000600d", "mov dword ptr fs:[0], ecx", "0x10001a8d"], ["0x10006014", "pop edi", "0x10001a94"], ["0x10006015", "pop esi", "0x10001a95"], ["0x10006016", "mov esp, ebp", "0x10001a96"], ["0x10006018", "pop ebp", "0x10001a98"], ["0x10006019", "ret 4", "0x10001a99"], ["0x1000601c", "mov eax, <OFFSET4>", "0x10001a9c"]]}]]]}, {"address": "0x10006030", "recomp": "0x10001ab0", "name": "LegoFile::FUN_10006030", "matching": 1.0, "diff": []}, {"address": "0x100060d0", "recomp": "0x10001980", "name": "LegoState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100060e0", "recomp": "0x10001990", "name": "LegoState::IsA", "matching": 1.0, "diff": []}, {"address": "0x10006160", "recomp": "0x10001b50", "name": "LegoState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100061d0", "recomp": "0x1002cc60", "name": "GasStationState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100061e0", "recomp": "0x1002cc70", "name": "GasStationState::IsA", "matching": 1.0, "diff": []}, {"address": "0x10006290", "recomp": "0x1002cd20", "name": "GasStationState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10006300", "recomp": "0x1002cd90", "name": "GasStationState::VTable0x1c", "matching": 0.0, "stub": true}, {"address": "0x100064d0", "recomp": "0x10009140", "name": "LegoCacheSound::LegoCacheSound", "matching": 1.0, "diff": []}, {"address": "0x10006580", "recomp": "0x100091f0", "name": "LegoCacheSound::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10006590", "recomp": "0x10009200", "name": "LegoCacheSound::IsA", "matching": 1.0, "diff": []}, {"address": "0x10006610", "recomp": "0x10009280", "name": "LegoCacheSound::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10006630", "recomp": "0x100092a0", "name": "LegoCacheSound::~LegoCacheSound", "matching": 0.0, "stub": true}, {"address": "0x100066d0", "recomp": "0x10009340", "name": "LegoCacheSound::Init", "matching": 1.0, "diff": []}, {"address": "0x10006710", "recomp": "0x10009380", "name": "LegoCacheSound::FUN_10006710", "matching": 0.0, "stub": true}, {"address": "0x10006920", "recomp": "0x100093f0", "name": "LegoCacheSound::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10006960", "recomp": "0x10009430", "name": "LegoCacheSound::FUN_10006960", "matching": 0.0, "stub": true}, {"address": "0x10006a30", "recomp": "0x10009440", "name": "LegoCacheSound::FUN_10006a30", "matching": 0.0, "stub": true}, {"address": "0x10006b80", "recomp": "0x10009460", "name": "LegoCacheSound::FUN_10006b80", "matching": 1.0, "diff": []}, {"address": "0x10006be0", "recomp": "0x100094c0", "name": "LegoCacheSound::FUN_10006be0", "matching": 1.0, "diff": []}, {"address": "0x10006cd0", "recomp": "0x10009590", "name": "LegoCacheSound::FUN_10006cd0", "matching": 1.0, "diff": []}, {"address": "0x10006e40", "recomp": "0x10013f80", "name": "LegoObjectFactory::LegoObjectFactory", "matching": 0.3404255319148936, "diff": [["@@ -0x10006e40,1763 +0x10013f80,1611 @@", [{"both": [["0x10006e40", "mov eax, dword ptr fs:[0]", "0x10013f80"], ["0x10006e46", "push ebp", "0x10013f86"], ["0x10006e47", "mov ebp, esp", "0x10013f87"], ["0x10006e49", "push -1", "0x10013f89"], ["0x10006e4b", "push <OFFSET1>", "0x10013f8b"], ["0x10006e50", "push eax", "0x10013f90"], ["0x10006e51", "mov dword ptr fs:[0], esp", "0x10013f91"]]}, {"orig": [["0x10006e58", "sub esp, 0x194"]], "recomp": [["0x10013f98", "sub esp, 0x178"]]}, {"both": [["0x10006e5e", "mov dword ptr [ebp - 0x10], ecx", "0x10013f9e"], ["0x10006e61", "push esi", "0x10013fa1"], ["0x10006e62", "call MxObjectFactory::MxObjectFactory (FUNCTION)", "0x10013fa2"], ["0x10006e67", "mov dword ptr [ebp - 4], 0", "0x10013fa7"], ["0x10006e6e", "mov byte ptr [ebp - 4], 1", "0x10013fae"], ["0x10006e72", "mov esi, dword ptr [ebp - 0x10]", "0x10013fb2"], ["0x10006e75", "mov byte ptr [ebp - 4], 2", "0x10013fb5"], ["0x10006e79", "mov dword ptr [esi + 0x38], 0", "0x10013fb9"], ["0x10006e80", "add esi, 0x38", "0x10013fc0"], ["0x10006e83", "mov eax, dword ptr [ebp - 0x10]", "0x10013fc3"], ["0x10006e86", "add eax, 0x3c", "0x10013fc6"], ["0x10006e89", "mov byte ptr [ebp - 4], 3", "0x10013fc9"]]}, {"orig": [["0x10006e8d", "mov dword ptr [ebp - 0x38], eax"]], "recomp": [["0x10013fcd", "mov dword ptr [ebp - 0x17c], eax"]]}, {"both": [["0x10006e90", "mov dword ptr [eax], 0", "0x10013fd3"], ["0x10006e96", "mov eax, dword ptr [ebp - 0x10]", "0x10013fd9"], ["0x10006e99", "add eax, 0x40", "0x10013fdc"], ["0x10006e9c", "mov byte ptr [ebp - 4], 4", "0x10013fdf"]]}, {"orig": [["0x10006ea0", "mov dword ptr [ebp - 0x34], eax"]], "recomp": [["0x10013fe3", "mov dword ptr [ebp - 0x178], eax"]]}, {"both": [["0x10006ea3", "mov dword ptr [eax], 0", "0x10013fe9"], ["0x10006ea9", "mov eax, dword ptr [ebp - 0x10]", "0x10013fef"], ["0x10006eac", "add eax, 0x44", "0x10013ff2"], ["0x10006eaf", "mov byte ptr [ebp - 4], 5", "0x10013ff5"]]}, {"orig": [["0x10006eb3", "mov dword ptr [ebp - 0x18], eax"]], "recomp": [["0x10013ff9", "mov dword ptr [ebp - 0x174], eax"]]}, {"both": [["0x10006eb6", "mov dword ptr [eax], 0", "0x10013fff"], ["0x10006ebc", "mov eax, dword ptr [ebp - 0x10]", "0x10014005"], ["0x10006ebf", "add eax, 0x48", "0x10014008"], ["0x10006ec2", "mov byte ptr [ebp - 4], 6", "0x1001400b"]]}, {"orig": [["0x10006ec6", "mov dword ptr [ebp - 0x30], eax"]], "recomp": [["0x1001400f", "mov dword ptr [ebp - 0x170], eax"]]}, {"both": [["0x10006ec9", "mov dword ptr [eax], 0", "0x10014015"], ["0x10006ecf", "mov eax, dword ptr [ebp - 0x10]", "0x1001401b"], ["0x10006ed2", "add eax, 0x4c", "0x1001401e"], ["0x10006ed5", "mov byte ptr [ebp - 4], 7", "0x10014021"]]}, {"orig": [["0x10006ed9", "mov dword ptr [ebp - 0x2c], eax"]], "recomp": [["0x10014025", "mov dword ptr [ebp - 0x16c], eax"]]}, {"both": [["0x10006edc", "mov dword ptr [eax], 0", "0x1001402b"], ["0x10006ee2", "mov eax, dword ptr [ebp - 0x10]", "0x10014031"], ["0x10006ee5", "add eax, 0x50", "0x10014034"], ["0x10006ee8", "mov byte ptr [ebp - 4], 8", "0x10014037"]]}, {"orig": [["0x10006eec", "mov dword ptr [ebp - 0x28], eax"]], "recomp": [["0x1001403b", "mov dword ptr [ebp - 0x168], eax"]]}, {"both": [["0x10006eef", "mov dword ptr [eax], 0", "0x10014041"], ["0x10006ef5", "mov eax, dword ptr [ebp - 0x10]", "0x10014047"], ["0x10006ef8", "add eax, 0x54", "0x1001404a"], ["0x10006efb", "mov byte ptr [ebp - 4], 9", "0x1001404d"]]}, {"orig": [["0x10006eff", "mov dword ptr [ebp - 0x24], eax"]], "recomp": [["0x10014051", "mov dword ptr [ebp - 0x164], eax"]]}, {"both": [["0x10006f02", "mov dword ptr [eax], 0", "0x10014057"], ["0x10006f08", "mov eax, dword ptr [ebp - 0x10]", "0x1001405d"], ["0x10006f0b", "add eax, 0x58", "0x10014060"]]}, {"orig": [["0x10006f0e", "mov dword ptr [ebp - 0x20], eax"]], "recomp": [["0x10014063", "mov dword ptr [ebp - 0x160], eax"]]}, {"both": [["0x10006f11", "mov dword ptr [eax], 0", "0x10014069"], ["0x10006f17", "mov eax, dword ptr [ebp - 0x10]", "0x1001406f"], ["0x10006f1a", "add eax, 0x5c", "0x10014072"]]}, {"orig": [["0x10006f1d", "mov dword ptr [ebp - 0x1c], eax"]], "recomp": [["0x10014075", "mov dword ptr [ebp - 0x15c], eax"]]}, {"both": [["0x10006f20", "mov dword ptr [eax], 0", "0x1001407b"], ["0x10006f26", "mov byte ptr [ebp - 4], 0xa", "0x10014081"], ["0x10006f2a", "mov byte ptr [ebp - 4], 0xb", "0x10014085"], ["0x10006f2e", "mov eax, dword ptr [ebp - 0x10]", "0x10014089"], ["0x10006f31", "add eax, 0x60", "0x1001408c"], ["0x10006f34", "mov byte ptr [ebp - 4], 0xc", "0x1001408f"]]}, {"orig": [["0x10006f38", "mov dword ptr [ebp - 0x14], eax"]], "recomp": [["0x10014093", "mov dword ptr [ebp - 0x158], eax"]]}, {"both": [["0x10006f3b", "mov dword ptr [eax], 0", "0x10014099"], ["0x10006f41", "mov eax, dword ptr [ebp - 0x10]", "0x1001409f"], ["0x10006f44", "add eax, 0x64", "0x100140a2"], ["0x10006f47", "mov byte ptr [ebp - 4], 0xd", "0x100140a5"]]}, {"orig": [["0x10006f4b", "mov dword ptr [ebp - 0x1a0], eax"]], "recomp": [["0x100140a9", "mov dword ptr [ebp - 0x154], eax"]]}, {"both": [["0x10006f51", "mov dword ptr [eax], 0", "0x100140af"], ["0x10006f57", "mov eax, dword ptr [ebp - 0x10]", "0x100140b5"], ["0x10006f5a", "add eax, 0x68", "0x100140b8"], ["0x10006f5d", "mov byte ptr [ebp - 4], 0xe", "0x100140bb"]]}, {"orig": [["0x10006f61", "mov dword ptr [ebp - 0x19c], eax"]], "recomp": [["0x100140bf", "mov dword ptr [ebp - 0x150], eax"]]}, {"both": [["0x10006f67", "mov dword ptr [eax], 0", "0x100140c5"], ["0x10006f6d", "mov eax, dword ptr [ebp - 0x10]", "0x100140cb"], ["0x10006f70", "add eax, 0x6c", "0x100140ce"], ["0x10006f73", "mov byte ptr [ebp - 4], 0xf", "0x100140d1"]]}, {"orig": [["0x10006f77", "mov dword ptr [ebp - 0x198], eax"]], "recomp": [["0x100140d5", "mov dword ptr [ebp - 0x14c], eax"]]}, {"both": [["0x10006f7d", "mov dword ptr [eax], 0", "0x100140db"], ["0x10006f83", "mov eax, dword ptr [ebp - 0x10]", "0x100140e1"], ["0x10006f86", "add eax, 0x70", "0x100140e4"], ["0x10006f89", "mov byte ptr [ebp - 4], 0x10", "0x100140e7"]]}, {"orig": [["0x10006f8d", "mov dword ptr [ebp - 0x194], eax"]], "recomp": [["0x100140eb", "mov dword ptr [ebp - 0x148], eax"]]}, {"both": [["0x10006f93", "mov dword ptr [eax], 0", "0x100140f1"], ["0x10006f99", "mov eax, dword ptr [ebp - 0x10]", "0x100140f7"], ["0x10006f9c", "add eax, 0x74", "0x100140fa"], ["0x10006f9f", "mov byte ptr [ebp - 4], 0x11", "0x100140fd"]]}, {"orig": [["0x10006fa3", "mov dword ptr [ebp - 0x190], eax"]], "recomp": [["0x10014101", "mov dword ptr [ebp - 0x144], eax"]]}, {"both": [["0x10006fa9", "mov dword ptr [eax], 0", "0x10014107"], ["0x10006faf", "mov eax, dword ptr [ebp - 0x10]", "0x1001410d"], ["0x10006fb2", "add eax, 0x78", "0x10014110"], ["0x10006fb5", "mov byte ptr [ebp - 4], 0x12", "0x10014113"]]}, {"orig": [["0x10006fb9", "mov dword ptr [ebp - 0x18c], eax"]], "recomp": [["0x10014117", "mov dword ptr [ebp - 0x140], eax"]]}, {"both": [["0x10006fbf", "mov dword ptr [eax], 0", "0x1001411d"], ["0x10006fc5", "mov eax, dword ptr [ebp - 0x10]", "0x10014123"], ["0x10006fc8", "add eax, 0x7c", "0x10014126"], ["0x10006fcb", "mov byte ptr [ebp - 4], 0x13", "0x10014129"]]}, {"orig": [["0x10006fcf", "mov dword ptr [ebp - 0x188], eax"]], "recomp": [["0x1001412d", "mov dword ptr [ebp - 0x13c], eax"]]}, {"both": [["0x10006fd5", "mov dword ptr [eax], 0", "0x10014133"], ["0x10006fdb", "mov eax, dword ptr [ebp - 0x10]", "0x10014139"], ["0x10006fde", "add eax, 0x80", "0x1001413c"], ["0x10006fe3", "mov byte ptr [ebp - 4], 0x14", "0x10014141"]]}, {"orig": [["0x10006fe7", "mov dword ptr [ebp - 0x184], eax"]], "recomp": [["0x10014145", "mov dword ptr [ebp - 0x138], eax"]]}, {"both": [["0x10006fed", "mov dword ptr [eax], 0", "0x1001414b"], ["0x10006ff3", "mov eax, dword ptr [ebp - 0x10]", "0x10014151"], ["0x10006ff6", "add eax, 0x84", "0x10014154"], ["0x10006ffb", "mov byte ptr [ebp - 4], 0x15", "0x10014159"]]}, {"orig": [["0x10006fff", "mov dword ptr [ebp - 0x180], eax"]], "recomp": [["0x1001415d", "mov dword ptr [ebp - 0x134], eax"]]}, {"both": [["0x10007005", "mov dword ptr [eax], 0", "0x10014163"], ["0x1000700b", "mov eax, dword ptr [ebp - 0x10]", "0x10014169"], ["0x1000700e", "add eax, 0x88", "0x1001416c"], ["0x10007013", "mov byte ptr [ebp - 4], 0x16", "0x10014171"]]}, {"orig": [["0x10007017", "mov dword ptr [ebp - 0x17c], eax"]], "recomp": [["0x10014175", "mov dword ptr [ebp - 0x130], eax"]]}, {"both": [["0x1000701d", "mov dword ptr [eax], 0", "0x1001417b"], ["0x10007023", "mov eax, dword ptr [ebp - 0x10]", "0x10014181"], ["0x10007026", "add eax, 0x8c", "0x10014184"]]}, {"orig": [["0x1000702b", "mov dword ptr [ebp - 0x178], eax"]], "recomp": [["0x10014189", "mov dword ptr [ebp - 0x12c], eax"]]}, {"both": [["0x10007031", "mov dword ptr [eax], 0", "0x1001418f"], ["0x10007037", "mov eax, dword ptr [ebp - 0x10]", "0x10014195"], ["0x1000703a", "mov byte ptr [ebp - 4], 0x17", "0x10014198"], ["0x1000703e", "add eax, 0x90", "0x1001419c"], ["0x10007043", "mov byte ptr [ebp - 4], 0x18", "0x100141a1"]]}, {"orig": [["0x10007047", "mov dword ptr [ebp - 0x174], eax"]], "recomp": [["0x100141a5", "mov dword ptr [ebp - 0x128], eax"]]}, {"both": [["0x1000704d", "mov dword ptr [eax], 0", "0x100141ab"], ["0x10007053", "mov eax, dword ptr [ebp - 0x10]", "0x100141b1"], ["0x10007056", "add eax, 0x94", "0x100141b4"], ["0x1000705b", "mov byte ptr [ebp - 4], 0x19", "0x100141b9"]]}, {"orig": [["0x1000705f", "mov dword ptr [ebp - 0x170], eax"]], "recomp": [["0x100141bd", "mov dword ptr [ebp - 0x124], eax"]]}, {"both": [["0x10007065", "mov dword ptr [eax], 0", "0x100141c3"], ["0x1000706b", "mov eax, dword ptr [ebp - 0x10]", "0x100141c9"], ["0x1000706e", "add eax, 0x98", "0x100141cc"], ["0x10007073", "mov byte ptr [ebp - 4], 0x1a", "0x100141d1"]]}, {"orig": [["0x10007077", "mov dword ptr [ebp - 0x16c], eax"]], "recomp": [["0x100141d5", "mov dword ptr [ebp - 0x120], eax"]]}, {"both": [["0x1000707d", "mov dword ptr [eax], 0", "0x100141db"], ["0x10007083", "mov eax, dword ptr [ebp - 0x10]", "0x100141e1"], ["0x10007086", "add eax, 0x9c", "0x100141e4"], ["0x1000708b", "mov byte ptr [ebp - 4], 0x1b", "0x100141e9"]]}, {"orig": [["0x1000708f", "mov dword ptr [ebp - 0x168], eax"]], "recomp": [["0x100141ed", "mov dword ptr [ebp - 0x11c], eax"]]}, {"both": [["0x10007095", "mov dword ptr [eax], 0", "0x100141f3"], ["0x1000709b", "mov eax, dword ptr [ebp - 0x10]", "0x100141f9"], ["0x1000709e", "add eax, 0xa0", "0x100141fc"], ["0x100070a3", "mov byte ptr [ebp - 4], 0x1c", "0x10014201"]]}, {"orig": [["0x100070a7", "mov dword ptr [ebp - 0x164], eax"]], "recomp": [["0x10014205", "mov dword ptr [ebp - 0x118], eax"]]}, {"both": [["0x100070ad", "mov dword ptr [eax], 0", "0x1001420b"], ["0x100070b3", "mov eax, dword ptr [ebp - 0x10]", "0x10014211"], ["0x100070b6", "add eax, 0xa4", "0x10014214"], ["0x100070bb", "mov byte ptr [ebp - 4], 0x1d", "0x10014219"]]}, {"orig": [["0x100070bf", "mov dword ptr [ebp - 0x160], eax"]], "recomp": [["0x1001421d", "mov dword ptr [ebp - 0x114], eax"]]}, {"both": [["0x100070c5", "mov dword ptr [eax], 0", "0x10014223"], ["0x100070cb", "mov eax, dword ptr [ebp - 0x10]", "0x10014229"], ["0x100070ce", "add eax, 0xa8", "0x1001422c"], ["0x100070d3", "mov byte ptr [ebp - 4], 0x1e", "0x10014231"]]}, {"orig": [["0x100070d7", "mov dword ptr [ebp - 0x15c], eax"]], "recomp": [["0x10014235", "mov dword ptr [ebp - 0x110], eax"]]}, {"both": [["0x100070dd", "mov dword ptr [eax], 0", "0x1001423b"], ["0x100070e3", "mov eax, dword ptr [ebp - 0x10]", "0x10014241"], ["0x100070e6", "add eax, 0xac", "0x10014244"], ["0x100070eb", "mov byte ptr [ebp - 4], 0x1f", "0x10014249"]]}, {"orig": [["0x100070ef", "mov dword ptr [ebp - 0x158], eax"]], "recomp": [["0x1001424d", "mov dword ptr [ebp - 0x10c], eax"]]}, {"both": [["0x100070f5", "mov dword ptr [eax], 0", "0x10014253"], ["0x100070fb", "mov eax, dword ptr [ebp - 0x10]", "0x10014259"], ["0x100070fe", "add eax, 0xb0", "0x1001425c"], ["0x10007103", "mov byte ptr [ebp - 4], 0x20", "0x10014261"]]}, {"orig": [["0x10007107", "mov dword ptr [ebp - 0x154], eax"]], "recomp": [["0x10014265", "mov dword ptr [ebp - 0x108], eax"]]}, {"both": [["0x1000710d", "mov dword ptr [eax], 0", "0x1001426b"], ["0x10007113", "mov eax, dword ptr [ebp - 0x10]", "0x10014271"], ["0x10007116", "add eax, 0xb4", "0x10014274"], ["0x1000711b", "mov byte ptr [ebp - 4], 0x21", "0x10014279"]]}, {"orig": [["0x1000711f", "mov dword ptr [ebp - 0x150], eax"]], "recomp": [["0x1001427d", "mov dword ptr [ebp - 0x104], eax"]]}, {"both": [["0x10007125", "mov dword ptr [eax], 0", "0x10014283"], ["0x1000712b", "mov eax, dword ptr [ebp - 0x10]", "0x10014289"], ["0x1000712e", "add eax, 0xb8", "0x1001428c"], ["0x10007133", "mov byte ptr [ebp - 4], 0x22", "0x10014291"]]}, {"orig": [["0x10007137", "mov dword ptr [ebp - 0x14c], eax"]], "recomp": [["0x10014295", "mov dword ptr [ebp - 0x100], eax"]]}, {"both": [["0x1000713d", "mov dword ptr [eax], 0", "0x1001429b"], ["0x10007143", "mov eax, dword ptr [ebp - 0x10]", "0x100142a1"], ["0x10007146", "add eax, 0xbc", "0x100142a4"]]}, {"orig": [["0x1000714b", "mov dword ptr [ebp - 0x148], eax"]], "recomp": [["0x100142a9", "mov dword ptr [ebp - 0xfc], eax"]]}, {"both": [["0x10007151", "mov dword ptr [eax], 0", "0x100142af"], ["0x10007157", "mov eax, dword ptr [ebp - 0x10]", "0x100142b5"], ["0x1000715a", "add eax, 0xc0", "0x100142b8"], ["0x1000715f", "mov byte ptr [ebp - 4], 0x23", "0x100142bd"], ["0x10007163", "mov byte ptr [ebp - 4], 0x24", "0x100142c1"]]}, {"orig": [["0x10007167", "mov dword ptr [ebp - 0x144], eax"]], "recomp": [["0x100142c5", "mov dword ptr [ebp - 0xf8], eax"]]}, {"both": [["0x1000716d", "mov dword ptr [eax], 0", "0x100142cb"], ["0x10007173", "mov eax, dword ptr [ebp - 0x10]", "0x100142d1"], ["0x10007176", "add eax, 0xc4", "0x100142d4"], ["0x1000717b", "mov byte ptr [ebp - 4], 0x25", "0x100142d9"]]}, {"orig": [["0x1000717f", "mov dword ptr [ebp - 0x140], eax"]], "recomp": [["0x100142dd", "mov dword ptr [ebp - 0xf4], eax"]]}, {"both": [["0x10007185", "mov dword ptr [eax], 0", "0x100142e3"], ["0x1000718b", "mov eax, dword ptr [ebp - 0x10]", "0x100142e9"], ["0x1000718e", "add eax, 0xc8", "0x100142ec"], ["0x10007193", "mov byte ptr [ebp - 4], 0x26", "0x100142f1"]]}, {"orig": [["0x10007197", "mov dword ptr [ebp - 0x13c], eax"]], "recomp": [["0x100142f5", "mov dword ptr [ebp - 0xf0], eax"]]}, {"both": [["0x1000719d", "mov dword ptr [eax], 0", "0x100142fb"], ["0x100071a3", "mov eax, dword ptr [ebp - 0x10]", "0x10014301"], ["0x100071a6", "add eax, 0xcc", "0x10014304"], ["0x100071ab", "mov byte ptr [ebp - 4], 0x27", "0x10014309"]]}, {"orig": [["0x100071af", "mov dword ptr [ebp - 0x138], eax"]], "recomp": [["0x1001430d", "mov dword ptr [ebp - 0xec], eax"]]}, {"both": [["0x100071b5", "mov dword ptr [eax], 0", "0x10014313"], ["0x100071bb", "mov eax, dword ptr [ebp - 0x10]", "0x10014319"], ["0x100071be", "add eax, 0xd0", "0x1001431c"], ["0x100071c3", "mov byte ptr [ebp - 4], 0x28", "0x10014321"]]}, {"orig": [["0x100071c7", "mov dword ptr [ebp - 0x134], eax"]], "recomp": [["0x10014325", "mov dword ptr [ebp - 0xe8], eax"]]}, {"both": [["0x100071cd", "mov dword ptr [eax], 0", "0x1001432b"], ["0x100071d3", "mov eax, dword ptr [ebp - 0x10]", "0x10014331"], ["0x100071d6", "add eax, 0xd4", "0x10014334"], ["0x100071db", "mov byte ptr [ebp - 4], 0x29", "0x10014339"]]}, {"orig": [["0x100071df", "mov dword ptr [ebp - 0x130], eax"]], "recomp": [["0x1001433d", "mov dword ptr [ebp - 0xe4], eax"]]}, {"both": [["0x100071e5", "mov dword ptr [eax], 0", "0x10014343"], ["0x100071eb", "mov eax, dword ptr [ebp - 0x10]", "0x10014349"], ["0x100071ee", "add eax, 0xd8", "0x1001434c"], ["0x100071f3", "mov byte ptr [ebp - 4], 0x2a", "0x10014351"]]}, {"orig": [["0x100071f7", "mov dword ptr [ebp - 0x12c], eax"]], "recomp": [["0x10014355", "mov dword ptr [ebp - 0xe0], eax"]]}, {"both": [["0x100071fd", "mov dword ptr [eax], 0", "0x1001435b"], ["0x10007203", "mov eax, dword ptr [ebp - 0x10]", "0x10014361"], ["0x10007206", "add eax, 0xdc", "0x10014364"], ["0x1000720b", "mov byte ptr [ebp - 4], 0x2b", "0x10014369"]]}, {"orig": [["0x1000720f", "mov dword ptr [ebp - 0x128], eax"]], "recomp": [["0x1001436d", "mov dword ptr [ebp - 0xdc], eax"]]}, {"both": [["0x10007215", "mov dword ptr [eax], 0", "0x10014373"], ["0x1000721b", "mov eax, dword ptr [ebp - 0x10]", "0x10014379"], ["0x1000721e", "add eax, 0xe0", "0x1001437c"], ["0x10007223", "mov byte ptr [ebp - 4], 0x2c", "0x10014381"]]}, {"orig": [["0x10007227", "mov dword ptr [ebp - 0x124], eax"]], "recomp": [["0x10014385", "mov dword ptr [ebp - 0xd8], eax"]]}, {"both": [["0x1000722d", "mov dword ptr [eax], 0", "0x1001438b"], ["0x10007233", "mov eax, dword ptr [ebp - 0x10]", "0x10014391"], ["0x10007236", "add eax, 0xe4", "0x10014394"], ["0x1000723b", "mov byte ptr [ebp - 4], 0x2d", "0x10014399"]]}, {"orig": [["0x1000723f", "mov dword ptr [ebp - 0x120], eax"]], "recomp": [["0x1001439d", "mov dword ptr [ebp - 0xd4], eax"]]}, {"both": [["0x10007245", "mov dword ptr [eax], 0", "0x100143a3"], ["0x1000724b", "mov eax, dword ptr [ebp - 0x10]", "0x100143a9"], ["0x1000724e", "add eax, 0xe8", "0x100143ac"], ["0x10007253", "mov byte ptr [ebp - 4], 0x2e", "0x100143b1"]]}, {"orig": [["0x10007257", "mov dword ptr [ebp - 0x11c], eax"]], "recomp": [["0x100143b5", "mov dword ptr [ebp - 0xd0], eax"]]}, {"both": [["0x1000725d", "mov dword ptr [eax], 0", "0x100143bb"], ["0x10007263", "mov eax, dword ptr [ebp - 0x10]", "0x100143c1"], ["0x10007266", "add eax, 0xec", "0x100143c4"]]}, {"orig": [["0x1000726b", "mov dword ptr [ebp - 0x118], eax"]], "recomp": [["0x100143c9", "mov dword ptr [ebp - 0xcc], eax"]]}, {"both": [["0x10007271", "mov dword ptr [eax], 0", "0x100143cf"], ["0x10007277", "mov eax, dword ptr [ebp - 0x10]", "0x100143d5"], ["0x1000727a", "add eax, 0xf0", "0x100143d8"]]}, {"orig": [["0x1000727f", "mov dword ptr [ebp - 0x114], eax"]], "recomp": [["0x100143dd", "mov dword ptr [ebp - 0xc8], eax"]]}, {"both": [["0x10007285", "mov byte ptr [ebp - 4], 0x2f", "0x100143e3"], ["0x10007289", "mov byte ptr [ebp - 4], 0x30", "0x100143e7"], ["0x1000728d", "mov dword ptr [eax], 0", "0x100143eb"], ["0x10007293", "mov eax, dword ptr [ebp - 0x10]", "0x100143f1"], ["0x10007296", "add eax, 0xf4", "0x100143f4"], ["0x1000729b", "mov byte ptr [ebp - 4], 0x31", "0x100143f9"]]}, {"orig": [["0x1000729f", "mov dword ptr [ebp - 0x110], eax"]], "recomp": [["0x100143fd", "mov dword ptr [ebp - 0xc4], eax"]]}, {"both": [["0x100072a5", "mov dword ptr [eax], 0", "0x10014403"], ["0x100072ab", "mov eax, dword ptr [ebp - 0x10]", "0x10014409"], ["0x100072ae", "add eax, 0xf8", "0x1001440c"], ["0x100072b3", "mov byte ptr [ebp - 4], 0x32", "0x10014411"]]}, {"orig": [["0x100072b7", "mov dword ptr [ebp - 0x10c], eax"]], "recomp": [["0x10014415", "mov dword ptr [ebp - 0xc0], eax"]]}, {"both": [["0x100072bd", "mov dword ptr [eax], 0", "0x1001441b"], ["0x100072c3", "mov eax, dword ptr [ebp - 0x10]", "0x10014421"], ["0x100072c6", "add eax, 0xfc", "0x10014424"], ["0x100072cb", "mov byte ptr [ebp - 4], 0x33", "0x10014429"]]}, {"orig": [["0x100072cf", "mov dword ptr [ebp - 0x108], eax"]], "recomp": [["0x1001442d", "mov dword ptr [ebp - 0xbc], eax"]]}, {"both": [["0x100072d5", "mov dword ptr [eax], 0", "0x10014433"], ["0x100072db", "mov eax, dword ptr [ebp - 0x10]", "0x10014439"], ["0x100072de", "add eax, 0x100", "0x1001443c"], ["0x100072e3", "mov byte ptr [ebp - 4], 0x34", "0x10014441"]]}, {"orig": [["0x100072e7", "mov dword ptr [ebp - 0x104], eax"]], "recomp": [["0x10014445", "mov dword ptr [ebp - 0xb8], eax"]]}, {"both": [["0x100072ed", "mov dword ptr [eax], 0", "0x1001444b"], ["0x100072f3", "mov eax, dword ptr [ebp - 0x10]", "0x10014451"], ["0x100072f6", "add eax, 0x104", "0x10014454"], ["0x100072fb", "mov byte ptr [ebp - 4], 0x35", "0x10014459"]]}, {"orig": [["0x100072ff", "mov dword ptr [ebp - 0x100], eax"]], "recomp": [["0x1001445d", "mov dword ptr [ebp - 0xb4], eax"]]}, {"both": [["0x10007305", "mov dword ptr [eax], 0", "0x10014463"], ["0x1000730b", "mov eax, dword ptr [ebp - 0x10]", "0x10014469"], ["0x1000730e", "add eax, 0x108", "0x1001446c"], ["0x10007313", "mov byte ptr [ebp - 4], 0x36", "0x10014471"]]}, {"orig": [["0x10007317", "mov dword ptr [ebp - 0xfc], eax"]], "recomp": [["0x10014475", "mov dword ptr [ebp - 0xb0], eax"]]}, {"both": [["0x1000731d", "mov dword ptr [eax], 0", "0x1001447b"], ["0x10007323", "mov eax, dword ptr [ebp - 0x10]", "0x10014481"], ["0x10007326", "add eax, 0x10c", "0x10014484"], ["0x1000732b", "mov byte ptr [ebp - 4], 0x37", "0x10014489"]]}, {"orig": [["0x1000732f", "mov dword ptr [ebp - 0xf8], eax"]], "recomp": [["0x1001448d", "mov dword ptr [ebp - 0xac], eax"]]}, {"both": [["0x10007335", "mov dword ptr [eax], 0", "0x10014493"], ["0x1000733b", "mov eax, dword ptr [ebp - 0x10]", "0x10014499"], ["0x1000733e", "add eax, 0x110", "0x1001449c"], ["0x10007343", "mov byte ptr [ebp - 4], 0x38", "0x100144a1"]]}, {"orig": [["0x10007347", "mov dword ptr [ebp - 0xf4], eax"]], "recomp": [["0x100144a5", "mov dword ptr [ebp - 0xa8], eax"]]}, {"both": [["0x1000734d", "mov dword ptr [eax], 0", "0x100144ab"], ["0x10007353", "mov eax, dword ptr [ebp - 0x10]", "0x100144b1"], ["0x10007356", "add eax, 0x114", "0x100144b4"], ["0x1000735b", "mov byte ptr [ebp - 4], 0x39", "0x100144b9"]]}, {"orig": [["0x1000735f", "mov dword ptr [ebp - 0xf0], eax"]], "recomp": [["0x100144bd", "mov dword ptr [ebp - 0xa4], eax"]]}, {"both": [["0x10007365", "mov dword ptr [eax], 0", "0x100144c3"], ["0x1000736b", "mov eax, dword ptr [ebp - 0x10]", "0x100144c9"], ["0x1000736e", "add eax, 0x118", "0x100144cc"], ["0x10007373", "mov byte ptr [ebp - 4], 0x3a", "0x100144d1"]]}, {"orig": [["0x10007377", "mov dword ptr [ebp - 0xec], eax"]], "recomp": [["0x100144d5", "mov dword ptr [ebp - 0xa0], eax"]]}, {"both": [["0x1000737d", "mov dword ptr [eax], 0", "0x100144db"], ["0x10007383", "mov eax, dword ptr [ebp - 0x10]", "0x100144e1"], ["0x10007386", "add eax, 0x11c", "0x100144e4"]]}, {"orig": [["0x1000738b", "mov dword ptr [ebp - 0xe8], eax"]], "recomp": [["0x100144e9", "mov dword ptr [ebp - 0x9c], eax"]]}, {"both": [["0x10007391", "mov dword ptr [eax], 0", "0x100144ef"], ["0x10007397", "mov eax, dword ptr [ebp - 0x10]", "0x100144f5"], ["0x1000739a", "add eax, 0x120", "0x100144f8"]]}, {"orig": [["0x1000739f", "mov dword ptr [ebp - 0xe4], eax"]], "recomp": [["0x100144fd", "mov dword ptr [ebp - 0x98], eax"]]}, {"both": [["0x100073a5", "mov dword ptr [eax], 0", "0x10014503"], ["0x100073ab", "mov byte ptr [ebp - 4], 0x3b", "0x10014509"], ["0x100073af", "mov byte ptr [ebp - 4], 0x3c", "0x1001450d"], ["0x100073b3", "mov eax, dword ptr [ebp - 0x10]", "0x10014511"], ["0x100073b6", "add eax, 0x124", "0x10014514"], ["0x100073bb", "mov byte ptr [ebp - 4], 0x3d", "0x10014519"]]}, {"orig": [["0x100073bf", "mov dword ptr [ebp - 0xe0], eax"]], "recomp": [["0x1001451d", "mov dword ptr [ebp - 0x94], eax"]]}, {"both": [["0x100073c5", "mov dword ptr [eax], 0", "0x10014523"], ["0x100073cb", "mov eax, dword ptr [ebp - 0x10]", "0x10014529"], ["0x100073ce", "add eax, 0x128", "0x1001452c"], ["0x100073d3", "mov byte ptr [ebp - 4], 0x3e", "0x10014531"]]}, {"orig": [["0x100073d7", "mov dword ptr [ebp - 0xdc], eax"]], "recomp": [["0x10014535", "mov dword ptr [ebp - 0x90], eax"]]}, {"both": [["0x100073dd", "mov dword ptr [eax], 0", "0x1001453b"], ["0x100073e3", "mov eax, dword ptr [ebp - 0x10]", "0x10014541"], ["0x100073e6", "add eax, 0x12c", "0x10014544"], ["0x100073eb", "mov byte ptr [ebp - 4], 0x3f", "0x10014549"]]}, {"orig": [["0x100073ef", "mov dword ptr [ebp - 0xd8], eax"]], "recomp": [["0x1001454d", "mov dword ptr [ebp - 0x8c], eax"]]}, {"both": [["0x100073f5", "mov dword ptr [eax], 0", "0x10014553"], ["0x100073fb", "mov eax, dword ptr [ebp - 0x10]", "0x10014559"], ["0x100073fe", "add eax, 0x130", "0x1001455c"], ["0x10007403", "mov byte ptr [ebp - 4], 0x40", "0x10014561"]]}, {"orig": [["0x10007407", "mov dword ptr [ebp - 0xd4], eax"]], "recomp": [["0x10014565", "mov dword ptr [ebp - 0x88], eax"]]}, {"both": [["0x1000740d", "mov dword ptr [eax], 0", "0x1001456b"], ["0x10007413", "mov eax, dword ptr [ebp - 0x10]", "0x10014571"], ["0x10007416", "add eax, 0x134", "0x10014574"], ["0x1000741b", "mov byte ptr [ebp - 4], 0x41", "0x10014579"]]}, {"orig": [["0x1000741f", "mov dword ptr [ebp - 0xd0], eax"]], "recomp": [["0x1001457d", "mov dword ptr [ebp - 0x84], eax"]]}, {"both": [["0x10007425", "mov dword ptr [eax], 0", "0x10014583"], ["0x1000742b", "mov eax, dword ptr [ebp - 0x10]", "0x10014589"], ["0x1000742e", "add eax, 0x138", "0x1001458c"], ["0x10007433", "mov byte ptr [ebp - 4], 0x42", "0x10014591"]]}, {"orig": [["0x10007437", "mov dword ptr [ebp - 0xcc], eax"]], "recomp": [["0x10014595", "mov dword ptr [ebp - 0x80], eax"]]}, {"both": [["0x1000743d", "mov dword ptr [eax], 0", "0x10014598"], ["0x10007443", "mov eax, dword ptr [ebp - 0x10]", "0x1001459e"], ["0x10007446", "add eax, 0x13c", "0x100145a1"], ["0x1000744b", "mov byte ptr [ebp - 4], 0x43", "0x100145a6"]]}, {"orig": [["0x1000744f", "mov dword ptr [ebp - 0xc8], eax"]], "recomp": [["0x100145aa", "mov dword ptr [ebp - 0x7c], eax"]]}, {"both": [["0x10007455", "mov dword ptr [eax], 0", "0x100145ad"], ["0x1000745b", "mov eax, dword ptr [ebp - 0x10]", "0x100145b3"], ["0x1000745e", "add eax, 0x140", "0x100145b6"], ["0x10007463", "mov byte ptr [ebp - 4], 0x44", "0x100145bb"]]}, {"orig": [["0x10007467", "mov dword ptr [ebp - 0xc4], eax"]], "recomp": [["0x100145bf", "mov dword ptr [ebp - 0x78], eax"]]}, {"both": [["0x1000746d", "mov dword ptr [eax], 0", "0x100145c2"], ["0x10007473", "mov eax, dword ptr [ebp - 0x10]", "0x100145c8"], ["0x10007476", "add eax, 0x144", "0x100145cb"], ["0x1000747b", "mov byte ptr [ebp - 4], 0x45", "0x100145d0"]]}, {"orig": [["0x1000747f", "mov dword ptr [ebp - 0xc0], eax"]], "recomp": [["0x100145d4", "mov dword ptr [ebp - 0x74], eax"]]}, {"both": [["0x10007485", "mov dword ptr [eax], 0", "0x100145d7"], ["0x1000748b", "mov eax, dword ptr [ebp - 0x10]", "0x100145dd"], ["0x1000748e", "add eax, 0x148", "0x100145e0"], ["0x10007493", "mov byte ptr [ebp - 4], 0x46", "0x100145e5"]]}, {"orig": [["0x10007497", "mov dword ptr [ebp - 0xbc], eax"]], "recomp": [["0x100145e9", "mov dword ptr [ebp - 0x70], eax"]]}, {"both": [["0x1000749d", "mov dword ptr [eax], 0", "0x100145ec"], ["0x100074a3", "mov eax, dword ptr [ebp - 0x10]", "0x100145f2"], ["0x100074a6", "add eax, 0x14c", "0x100145f5"]]}, {"orig": [["0x100074ab", "mov dword ptr [ebp - 0xb8], eax"]], "recomp": [["0x100145fa", "mov dword ptr [ebp - 0x6c], eax"]]}, {"both": [["0x100074b1", "mov dword ptr [eax], 0", "0x100145fd"], ["0x100074b7", "mov eax, dword ptr [ebp - 0x10]", "0x10014603"], ["0x100074ba", "add eax, 0x150", "0x10014606"]]}, {"orig": [["0x100074bf", "mov dword ptr [ebp - 0xb4], eax"]], "recomp": [["0x1001460b", "mov dword ptr [ebp - 0x68], eax"]]}, {"both": [["0x100074c5", "mov dword ptr [eax], 0", "0x1001460e"], ["0x100074cb", "mov byte ptr [ebp - 4], 0x47", "0x10014614"], ["0x100074cf", "mov byte ptr [ebp - 4], 0x48", "0x10014618"], ["0x100074d3", "mov eax, dword ptr [ebp - 0x10]", "0x1001461c"], ["0x100074d6", "add eax, 0x154", "0x1001461f"], ["0x100074db", "mov byte ptr [ebp - 4], 0x49", "0x10014624"]]}, {"orig": [["0x100074df", "mov dword ptr [ebp - 0xb0], eax"]], "recomp": [["0x10014628", "mov dword ptr [ebp - 0x64], eax"]]}, {"both": [["0x100074e5", "mov dword ptr [eax], 0", "0x1001462b"], ["0x100074eb", "mov eax, dword ptr [ebp - 0x10]", "0x10014631"], ["0x100074ee", "add eax, 0x158", "0x10014634"], ["0x100074f3", "mov byte ptr [ebp - 4], 0x4a", "0x10014639"]]}, {"orig": [["0x100074f7", "mov dword ptr [ebp - 0xac], eax"]], "recomp": [["0x1001463d", "mov dword ptr [ebp - 0x60], eax"]]}, {"both": [["0x100074fd", "mov dword ptr [eax], 0", "0x10014640"], ["0x10007503", "mov eax, dword ptr [ebp - 0x10]", "0x10014646"], ["0x10007506", "add eax, 0x15c", "0x10014649"], ["0x1000750b", "mov byte ptr [ebp - 4], 0x4b", "0x1001464e"]]}, {"orig": [["0x1000750f", "mov dword ptr [ebp - 0xa8], eax"]], "recomp": [["0x10014652", "mov dword ptr [ebp - 0x5c], eax"]]}, {"both": [["0x10007515", "mov dword ptr [eax], 0", "0x10014655"], ["0x1000751b", "mov eax, dword ptr [ebp - 0x10]", "0x1001465b"], ["0x1000751e", "add eax, 0x160", "0x1001465e"], ["0x10007523", "mov byte ptr [ebp - 4], 0x4c", "0x10014663"]]}, {"orig": [["0x10007527", "mov dword ptr [ebp - 0xa4], eax"]], "recomp": [["0x10014667", "mov dword ptr [ebp - 0x58], eax"]]}, {"both": [["0x1000752d", "mov dword ptr [eax], 0", "0x1001466a"], ["0x10007533", "mov eax, dword ptr [ebp - 0x10]", "0x10014670"], ["0x10007536", "add eax, 0x164", "0x10014673"], ["0x1000753b", "mov byte ptr [ebp - 4], 0x4d", "0x10014678"]]}, {"orig": [["0x1000753f", "mov dword ptr [ebp - 0xa0], eax"]], "recomp": [["0x1001467c", "mov dword ptr [ebp - 0x54], eax"]]}, {"both": [["0x10007545", "mov dword ptr [eax], 0", "0x1001467f"], ["0x1000754b", "mov eax, dword ptr [ebp - 0x10]", "0x10014685"], ["0x1000754e", "add eax, 0x168", "0x10014688"], ["0x10007553", "mov byte ptr [ebp - 4], 0x4e", "0x1001468d"]]}, {"orig": [["0x10007557", "mov dword ptr [ebp - 0x9c], eax"]], "recomp": [["0x10014691", "mov dword ptr [ebp - 0x50], eax"]]}, {"both": [["0x1000755d", "mov dword ptr [eax], 0", "0x10014694"], ["0x10007563", "mov eax, dword ptr [ebp - 0x10]", "0x1001469a"], ["0x10007566", "add eax, 0x16c", "0x1001469d"], ["0x1000756b", "mov byte ptr [ebp - 4], 0x4f", "0x100146a2"]]}, {"orig": [["0x1000756f", "mov dword ptr [ebp - 0x98], eax"]], "recomp": [["0x100146a6", "mov dword ptr [ebp - 0x4c], eax"]]}, {"both": [["0x10007575", "mov dword ptr [eax], 0", "0x100146a9"], ["0x1000757b", "mov eax, dword ptr [ebp - 0x10]", "0x100146af"], ["0x1000757e", "add eax, 0x170", "0x100146b2"], ["0x10007583", "mov byte ptr [ebp - 4], 0x50", "0x100146b7"]]}, {"orig": [["0x10007587", "mov dword ptr [ebp - 0x94], eax"]], "recomp": [["0x100146bb", "mov dword ptr [ebp - 0x48], eax"]]}, {"both": [["0x1000758d", "mov dword ptr [eax], 0", "0x100146be"], ["0x10007593", "mov eax, dword ptr [ebp - 0x10]", "0x100146c4"], ["0x10007596", "add eax, 0x174", "0x100146c7"], ["0x1000759b", "mov byte ptr [ebp - 4], 0x51", "0x100146cc"]]}, {"orig": [["0x1000759f", "mov dword ptr [ebp - 0x90], eax"]], "recomp": [["0x100146d0", "mov dword ptr [ebp - 0x44], eax"]]}, {"both": [["0x100075a5", "mov dword ptr [eax], 0", "0x100146d3"], ["0x100075ab", "mov eax, dword ptr [ebp - 0x10]", "0x100146d9"], ["0x100075ae", "add eax, 0x178", "0x100146dc"], ["0x100075b3", "mov byte ptr [ebp - 4], 0x52", "0x100146e1"]]}, {"orig": [["0x100075b7", "mov dword ptr [ebp - 0x8c], eax"]], "recomp": [["0x100146e5", "mov dword ptr [ebp - 0x40], eax"]]}, {"both": [["0x100075bd", "mov dword ptr [eax], 0", "0x100146e8"], ["0x100075c3", "mov eax, dword ptr [ebp - 0x10]", "0x100146ee"], ["0x100075c6", "add eax, 0x17c", "0x100146f1"], ["0x100075cb", "mov byte ptr [ebp - 4], 0x53", "0x100146f6"]]}, {"orig": [["0x100075cf", "mov dword ptr [ebp - 0x88], eax"]], "recomp": [["0x100146fa", "mov dword ptr [ebp - 0x3c], eax"]]}, {"both": [["0x100075d5", "mov dword ptr [eax], 0", "0x100146fd"], ["0x100075db", "mov eax, dword ptr [ebp - 0x10]", "0x10014703"], ["0x100075de", "add eax, 0x180", "0x10014706"]]}, {"orig": [["0x100075e3", "mov dword ptr [ebp - 0x84], eax"]], "recomp": [["0x1001470b", "mov dword ptr [ebp - 0x38], eax"]]}, {"both": [["0x100075e9", "mov dword ptr [eax], 0", "0x1001470e"], ["0x100075ef", "mov eax, dword ptr [ebp - 0x10]", "0x10014714"], ["0x100075f2", "mov byte ptr [ebp - 4], 0x54", "0x10014717"], ["0x100075f6", "add eax, 0x184", "0x1001471b"], ["0x100075fb", "mov byte ptr [ebp - 4], 0x55", "0x10014720"]]}, {"orig": [["0x100075ff", "mov dword ptr [ebp - 0x80], eax"]], "recomp": [["0x10014724", "mov dword ptr [ebp - 0x34], eax"]]}, {"both": [["0x10007602", "mov dword ptr [eax], 0", "0x10014727"], ["0x10007608", "mov eax, dword ptr [ebp - 0x10]", "0x1001472d"], ["0x1000760b", "add eax, 0x188", "0x10014730"], ["0x10007610", "mov byte ptr [ebp - 4], 0x56", "0x10014735"]]}, {"orig": [["0x10007614", "mov dword ptr [ebp - 0x7c], eax"]], "recomp": [["0x10014739", "mov dword ptr [ebp - 0x30], eax"]]}, {"both": [["0x10007617", "mov dword ptr [eax], 0", "0x1001473c"], ["0x1000761d", "mov eax, dword ptr [ebp - 0x10]", "0x10014742"], ["0x10007620", "add eax, 0x18c", "0x10014745"], ["0x10007625", "mov byte ptr [ebp - 4], 0x57", "0x1001474a"]]}, {"orig": [["0x10007629", "mov dword ptr [ebp - 0x78], eax"]], "recomp": [["0x1001474e", "mov dword ptr [ebp - 0x2c], eax"]]}, {"both": [["0x1000762c", "mov dword ptr [eax], 0", "0x10014751"], ["0x10007632", "mov eax, dword ptr [ebp - 0x10]", "0x10014757"], ["0x10007635", "add eax, 0x190", "0x1001475a"], ["0x1000763a", "mov byte ptr [ebp - 4], 0x58", "0x1001475f"]]}, {"orig": [["0x1000763e", "mov dword ptr [ebp - 0x74], eax"]], "recomp": [["0x10014763", "mov dword ptr [ebp - 0x28], eax"]]}, {"both": [["0x10007641", "mov dword ptr [eax], 0", "0x10014766"], ["0x10007647", "mov eax, dword ptr [ebp - 0x10]", "0x1001476c"], ["0x1000764a", "add eax, 0x194", "0x1001476f"], ["0x1000764f", "mov byte ptr [ebp - 4], 0x59", "0x10014774"]]}, {"orig": [["0x10007653", "mov dword ptr [ebp - 0x70], eax"]], "recomp": [["0x10014778", "mov dword ptr [ebp - 0x24], eax"]]}, {"both": [["0x10007656", "mov dword ptr [eax], 0", "0x1001477b"], ["0x1000765c", "mov eax, dword ptr [ebp - 0x10]", "0x10014781"], ["0x1000765f", "add eax, 0x198", "0x10014784"], ["0x10007664", "mov byte ptr [ebp - 4], 0x5a", "0x10014789"]]}, {"orig": [["0x10007668", "mov dword ptr [ebp - 0x6c], eax"]], "recomp": [["0x1001478d", "mov dword ptr [ebp - 0x20], eax"]]}, {"both": [["0x1000766b", "mov dword ptr [eax], 0", "0x10014790"], ["0x10007671", "mov eax, dword ptr [ebp - 0x10]", "0x10014796"], ["0x10007674", "add eax, 0x19c", "0x10014799"], ["0x10007679", "mov byte ptr [ebp - 4], 0x5b", "0x1001479e"]]}, {"orig": [["0x1000767d", "mov dword ptr [ebp - 0x68], eax"]], "recomp": [["0x100147a2", "mov dword ptr [ebp - 0x1c], eax"]]}, {"both": [["0x10007680", "mov dword ptr [eax], 0", "0x100147a5"], ["0x10007686", "mov eax, dword ptr [ebp - 0x10]", "0x100147ab"], ["0x10007689", "add eax, 0x1a0", "0x100147ae"], ["0x1000768e", "mov byte ptr [ebp - 4], 0x5c", "0x100147b3"]]}, {"orig": [["0x10007692", "mov dword ptr [ebp - 0x64], eax"]], "recomp": [["0x100147b7", "mov dword ptr [ebp - 0x18], eax"]]}, {"both": [["0x10007695", "mov dword ptr [eax], 0", "0x100147ba"], ["0x1000769b", "mov eax, dword ptr [ebp - 0x10]", "0x100147c0"], ["0x1000769e", "add eax, 0x1a4", "0x100147c3"], ["0x100076a3", "mov byte ptr [ebp - 4], 0x5d", "0x100147c8"]]}, {"orig": [["0x100076a7", "mov dword ptr [ebp - 0x60], eax"]], "recomp": [["0x100147cc", "mov dword ptr [ebp - 0x14], eax"]]}, {"both": [["0x100076aa", "mov dword ptr [eax], 0", "0x100147cf"], ["0x100076b0", "mov eax, dword ptr [ebp - 0x10]", "0x100147d5"], ["0x100076b3", "add eax, 0x1a8", "0x100147d8"]]}, {"orig": [], "recomp": [["0x100147dd", "push 0"], ["0x100147df", "mov dword ptr [ebp - 0x184], eax"], ["0x100147e5", "mov dword ptr [eax], 0"], ["0x100147eb", "mov eax, dword ptr [ebp - 0x10]"], ["0x100147ee", "push 'LegoEntityPresenter' (STRING)"], ["0x100147f3", "lea ecx, [ebp - 0x180]"], ["0x100147f9", "mov dword ptr [eax], LegoObjectFactory::`vftable' (VTABLE)"], ["0x100147ff", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014804", "push eax"], ["0x10014805", "mov ecx, esi"]]}, {"both": [["0x100076b8", "mov byte ptr [ebp - 4], 0x5e", "0x10014807"]]}, {"orig": [["0x100076bc", "mov dword ptr [ebp - 0x5c], eax"], ["0x100076bf", "mov dword ptr [eax], 0"], ["0x100076c5", "mov eax, dword ptr [ebp - 0x10]"], ["0x100076c8", "add eax, 0x1ac"]], "recomp": [["0x1001480b", "call MxAtomId::operator= (FUNCTION)"], ["0x10014810", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014814", "call <OFFSET7>"], ["0x10014819", "push 0"], ["0x1001481b", "lea ecx, [ebp - 0x180]"], ["0x10014821", "push 'LegoActorPresenter' (STRING)"], ["0x10014826", "call MxAtomId::MxAtomId (FUNCTION)"]]}, {"both": [["0x100076cd", "mov byte ptr [ebp - 4], 0x5f", "0x1001482b"]]}, {"orig": [["0x100076d1", "mov dword ptr [ebp - 0x58], eax"], ["0x100076d4", "mov dword ptr [eax], 0"], ["0x100076da", "mov eax, dword ptr [ebp - 0x10]"], ["0x100076dd", "add eax, 0x1b0"], ["0x100076e2", "mov dword ptr [ebp - 0x54], eax"], ["0x100076e5", "mov dword ptr [eax], 0"], ["0x100076eb", "mov eax, dword ptr [ebp - 0x10]"], ["0x100076ee", "add eax, 0x1b4"]], "recomp": [["0x1001482f", "push eax"], ["0x10014830", "mov ecx, dword ptr [ebp - 0x17c]"], ["0x10014836", "call MxAtomId::operator= (FUNCTION)"], ["0x1001483b", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001483f", "call <OFFSET9>"], ["0x10014844", "push 0"], ["0x10014846", "lea ecx, [ebp - 0x17c]"], ["0x1001484c", "push 'LegoWorldPresenter' (STRING)"], ["0x10014851", "call MxAtomId::MxAtomId (FUNCTION)"]]}, {"both": [["0x100076f3", "mov byte ptr [ebp - 4], 0x60", "0x10014856"]]}, {"orig": [], "recomp": [["0x1001485a", "push eax"], ["0x1001485b", "mov ecx, dword ptr [ebp - 0x178]"], ["0x10014861", "call MxAtomId::operator= (FUNCTION)"], ["0x10014866", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001486a", "call <OFFSET11>"], ["0x1001486f", "push 0"], ["0x10014871", "lea ecx, [ebp - 0x178]"], ["0x10014877", "push 'LegoWorld' (STRING)"], ["0x1001487c", "call MxAtomId::MxAtomId (FUNCTION)"]]}, {"both": [["0x100076f7", "mov byte ptr [ebp - 4], 0x61", "0x10014881"]]}, {"orig": [["0x100076fb", "mov dword ptr [ebp - 0x50], eax"], ["0x100076fe", "mov dword ptr [eax], 0"], ["0x10007704", "mov eax, dword ptr [ebp - 0x10]"], ["0x10007707", "add eax, 0x1b8"]], "recomp": [["0x10014885", "push eax"], ["0x10014886", "mov ecx, dword ptr [ebp - 0x174]"], ["0x1001488c", "call MxAtomId::operator= (FUNCTION)"], ["0x10014891", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014895", "call <OFFSET13>"], ["0x1001489a", "push 0"], ["0x1001489c", "lea ecx, [ebp - 0x174]"], ["0x100148a2", "push 'LegoAnimPresenter' (STRING)"], ["0x100148a7", "call MxAtomId::MxAtomId (FUNCTION)"]]}, {"both": [["0x1000770c", "mov byte ptr [ebp - 4], 0x62", "0x100148ac"]]}, {"orig": [["0x10007710", "mov dword ptr [ebp - 0x4c], eax"], ["0x10007713", "mov dword ptr [eax], 0"], ["0x10007719", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000771c", "add eax, 0x1bc"]], "recomp": [["0x100148b0", "push eax"], ["0x100148b1", "mov ecx, dword ptr [ebp - 0x170]"], ["0x100148b7", "call MxAtomId::operator= (FUNCTION)"], ["0x100148bc", "mov byte ptr [ebp - 4], 0x5d"], ["0x100148c0", "call <OFFSET15>"], ["0x100148c5", "push 0"], ["0x100148c7", "lea ecx, [ebp - 0x170]"], ["0x100148cd", "push 'LegoModelPresenter' (STRING)"], ["0x100148d2", "call MxAtomId::MxAtomId (FUNCTION)"]]}, {"both": [["0x10007721", "mov byte ptr [ebp - 4], 0x63", "0x100148d7"]]}, {"orig": [["0x10007725", "mov dword ptr [ebp - 0x48], eax"], ["0x10007728", "mov dword ptr [eax], 0"], ["0x1000772e", "mov eax, dword ptr [ebp - 0x10]"], ["0x10007731", "add eax, 0x1c0"]], "recomp": [["0x100148db", "push eax"], ["0x100148dc", "mov ecx, dword ptr [ebp - 0x16c]"], ["0x100148e2", "call MxAtomId::operator= (FUNCTION)"], ["0x100148e7", "mov byte ptr [ebp - 4], 0x5d"], ["0x100148eb", "call <OFFSET17>"], ["0x100148f0", "push 0"], ["0x100148f2", "lea ecx, [ebp - 0x16c]"], ["0x100148f8", "push 'LegoTexturePresenter' (STRING)"], ["0x100148fd", "call MxAtomId::MxAtomId (FUNCTION)"]]}, {"both": [["0x10007736", "mov byte ptr [ebp - 4], 0x64", "0x10014902"]]}, {"orig": [["0x1000773a", "mov dword ptr [ebp - 0x44], eax"], ["0x1000773d", "mov dword ptr [eax], 0"], ["0x10007743", "mov eax, dword ptr [ebp - 0x10]"], ["0x10007746", "add eax, 0x1c4"], ["0x1000774b", "push 0"], ["0x1000774d", "mov dword ptr [ebp - 0x40], eax"], ["0x10007750", "mov dword ptr [eax], 0"], ["0x10007756", "mov eax, dword ptr [ebp - 0x10]"], ["0x10007759", "push 'LegoEntityPresenter' (STRING)"]], "recomp": [["0x10014906", "push eax"], ["0x10014907", "mov ecx, dword ptr [ebp - 0x168]"], ["0x1001490d", "call MxAtomId::operator= (FUNCTION)"], ["0x10014912", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014916", "call <OFFSET19>"], ["0x1001491b", "push 0"], ["0x1001491d", "push 'LegoPhonemePresenter' (STRING)"], ["0x10014922", "lea ecx, [ebp - 0x168]"], ["0x10014928", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001492d", "mov byte ptr [ebp - 4], 0x65"], ["0x10014931", "push eax"], ["0x10014932", "mov ecx, dword ptr [ebp - 0x164]"], ["0x10014938", "call MxAtomId::operator= (FUNCTION)"], ["0x1001493d", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014941", "call <OFFSET21>"], ["0x10014946", "push 0"], ["0x10014948", "lea ecx, [ebp - 0x164]"], ["0x1001494e", "push 'LegoFlcTexturePresenter' (STRING)"], ["0x10014953", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014958", "mov byte ptr [ebp - 4], 0x66"], ["0x1001495c", "push eax"], ["0x1001495d", "mov ecx, dword ptr [ebp - 0x160]"], ["0x10014963", "call MxAtomId::operator= (FUNCTION)"], ["0x10014968", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001496c", "call <OFFSET23>"], ["0x10014971", "push 0"], ["0x10014973", "lea ecx, [ebp - 0x160]"], ["0x10014979", "push 'LegoPalettePresenter' (STRING)"], ["0x1001497e", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014983", "mov byte ptr [ebp - 4], 0x67"], ["0x10014987", "push eax"], ["0x10014988", "mov ecx, dword ptr [ebp - 0x15c]"], ["0x1001498e", "call MxAtomId::operator= (FUNCTION)"], ["0x10014993", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014997", "call <OFFSET25>"], ["0x1001499c", "push 0"], ["0x1001499e", "lea ecx, [ebp - 0x15c]"], ["0x100149a4", "push 'LegoPathPresenter' (STRING)"], ["0x100149a9", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100149ae", "mov byte ptr [ebp - 4], 0x68"], ["0x100149b2", "push eax"], ["0x100149b3", "mov ecx, dword ptr [ebp - 0x158]"], ["0x100149b9", "call MxAtomId::operator= (FUNCTION)"], ["0x100149be", "mov byte ptr [ebp - 4], 0x5d"], ["0x100149c2", "call <OFFSET27>"], ["0x100149c7", "push 0"], ["0x100149c9", "lea ecx, [ebp - 0x158]"], ["0x100149cf", "push 'LegoLoopingAnimPresenter' (STRING)"], ["0x100149d4", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100149d9", "mov byte ptr [ebp - 4], 0x69"], ["0x100149dd", "push eax"], ["0x100149de", "mov ecx, dword ptr [ebp - 0x154]"], ["0x100149e4", "call MxAtomId::operator= (FUNCTION)"], ["0x100149e9", "mov byte ptr [ebp - 4], 0x5d"], ["0x100149ed", "call <OFFSET29>"], ["0x100149f2", "push 0"], ["0x100149f4", "lea ecx, [ebp - 0x154]"], ["0x100149fa", "push 'LegoLocomotionAnimPresenter' (STRING)"], ["0x100149ff", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014a04", "mov byte ptr [ebp - 4], 0x6a"], ["0x10014a08", "push eax"], ["0x10014a09", "mov ecx, dword ptr [ebp - 0x150]"], ["0x10014a0f", "call MxAtomId::operator= (FUNCTION)"], ["0x10014a14", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014a18", "call <OFFSET31>"], ["0x10014a1d", "push 0"], ["0x10014a1f", "push 'LegoHideAnimPresenter' (STRING)"], ["0x10014a24", "lea ecx, [ebp - 0x150]"], ["0x10014a2a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014a2f", "mov byte ptr [ebp - 4], 0x6b"], ["0x10014a33", "push eax"], ["0x10014a34", "mov ecx, dword ptr [ebp - 0x14c]"], ["0x10014a3a", "call MxAtomId::operator= (FUNCTION)"], ["0x10014a3f", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014a43", "call <OFFSET33>"], ["0x10014a48", "push 0"], ["0x10014a4a", "lea ecx, [ebp - 0x14c]"], ["0x10014a50", "push 'LegoPartPresenter' (STRING)"], ["0x10014a55", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014a5a", "mov byte ptr [ebp - 4], 0x6c"], ["0x10014a5e", "push eax"], ["0x10014a5f", "mov ecx, dword ptr [ebp - 0x148]"], ["0x10014a65", "call MxAtomId::operator= (FUNCTION)"], ["0x10014a6a", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014a6e", "call <OFFSET35>"], ["0x10014a73", "push 0"], ["0x10014a75", "lea ecx, [ebp - 0x148]"], ["0x10014a7b", "push 'LegoCarBuildAnimPresenter' (STRING)"], ["0x10014a80", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014a85", "mov byte ptr [ebp - 4], 0x6d"], ["0x10014a89", "push eax"], ["0x10014a8a", "mov ecx, dword ptr [ebp - 0x144]"], ["0x10014a90", "call MxAtomId::operator= (FUNCTION)"], ["0x10014a95", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014a99", "call <OFFSET37>"], ["0x10014a9e", "push 0"], ["0x10014aa0", "lea ecx, [ebp - 0x144]"], ["0x10014aa6", "push 'LegoActionControlPresenter' (STRING)"], ["0x10014aab", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014ab0", "mov byte ptr [ebp - 4], 0x6e"], ["0x10014ab4", "push eax"], ["0x10014ab5", "mov ecx, dword ptr [ebp - 0x140]"], ["0x10014abb", "call MxAtomId::operator= (FUNCTION)"], ["0x10014ac0", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014ac4", "call <OFFSET39>"], ["0x10014ac9", "push 0"], ["0x10014acb", "lea ecx, [ebp - 0x140]"], ["0x10014ad1", "push 'MxVideoPresenter' (STRING)"], ["0x10014ad6", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014adb", "mov byte ptr [ebp - 4], 0x6f"], ["0x10014adf", "push eax"], ["0x10014ae0", "mov ecx, dword ptr [ebp - 0x13c]"], ["0x10014ae6", "call MxAtomId::operator= (FUNCTION)"], ["0x10014aeb", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014aef", "call <OFFSET41>"], ["0x10014af4", "push 0"], ["0x10014af6", "lea ecx, [ebp - 0x13c]"], ["0x10014afc", "push 'LegoLoadCacheSoundPresenter' (STRING)"], ["0x10014b01", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014b06", "mov byte ptr [ebp - 4], 0x70"], ["0x10014b0a", "push eax"], ["0x10014b0b", "mov ecx, dword ptr [ebp - 0x138]"], ["0x10014b11", "call MxAtomId::operator= (FUNCTION)"], ["0x10014b16", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014b1a", "call <OFFSET43>"], ["0x10014b1f", "push 0"], ["0x10014b21", "push 'Lego3DWavePresenter' (STRING)"], ["0x10014b26", "lea ecx, [ebp - 0x138]"], ["0x10014b2c", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014b31", "mov byte ptr [ebp - 4], 0x71"], ["0x10014b35", "push eax"], ["0x10014b36", "mov ecx, dword ptr [ebp - 0x134]"], ["0x10014b3c", "call MxAtomId::operator= (FUNCTION)"], ["0x10014b41", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014b45", "call <OFFSET45>"], ["0x10014b4a", "push 0"], ["0x10014b4c", "lea ecx, [ebp - 0x134]"], ["0x10014b52", "push 'LegoActor' (STRING)"], ["0x10014b57", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014b5c", "mov byte ptr [ebp - 4], 0x72"], ["0x10014b60", "push eax"], ["0x10014b61", "mov ecx, dword ptr [ebp - 0x130]"], ["0x10014b67", "call MxAtomId::operator= (FUNCTION)"], ["0x10014b6c", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014b70", "call <OFFSET47>"], ["0x10014b75", "push 0"], ["0x10014b77", "lea ecx, [ebp - 0x130]"], ["0x10014b7d", "push 'LegoPathActor' (STRING)"], ["0x10014b82", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014b87", "mov byte ptr [ebp - 4], 0x73"], ["0x10014b8b", "push eax"], ["0x10014b8c", "mov ecx, dword ptr [ebp - 0x12c]"], ["0x10014b92", "call MxAtomId::operator= (FUNCTION)"], ["0x10014b97", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014b9b", "call <OFFSET49>"], ["0x10014ba0", "push 0"], ["0x10014ba2", "lea ecx, [ebp - 0x12c]"], ["0x10014ba8", "push 'LegoRaceCar' (STRING)"], ["0x10014bad", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014bb2", "mov byte ptr [ebp - 4], 0x74"], ["0x10014bb6", "push eax"], ["0x10014bb7", "mov ecx, dword ptr [ebp - 0x128]"], ["0x10014bbd", "call MxAtomId::operator= (FUNCTION)"], ["0x10014bc2", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014bc6", "call <OFFSET51>"], ["0x10014bcb", "push 0"], ["0x10014bcd", "lea ecx, [ebp - 0x128]"], ["0x10014bd3", "push 'LegoJetski' (STRING)"], ["0x10014bd8", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014bdd", "mov byte ptr [ebp - 4], 0x75"], ["0x10014be1", "push eax"], ["0x10014be2", "mov ecx, dword ptr [ebp - 0x124]"], ["0x10014be8", "call MxAtomId::operator= (FUNCTION)"], ["0x10014bed", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014bf1", "call <OFFSET53>"], ["0x10014bf6", "push 0"], ["0x10014bf8", "lea ecx, [ebp - 0x124]"], ["0x10014bfe", "push 'JetskiRace' (STRING)"], ["0x10014c03", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014c08", "mov byte ptr [ebp - 4], 0x76"], ["0x10014c0c", "push eax"], ["0x10014c0d", "mov ecx, dword ptr [ebp - 0x120]"], ["0x10014c13", "call MxAtomId::operator= (FUNCTION)"], ["0x10014c18", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014c1c", "call <OFFSET55>"], ["0x10014c21", "push 0"], ["0x10014c23", "lea ecx, [ebp - 0x120]"], ["0x10014c29", "push 'LegoEntity' (STRING)"], ["0x10014c2e", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014c33", "mov byte ptr [ebp - 4], 0x77"], ["0x10014c37", "push eax"], ["0x10014c38", "mov ecx, dword ptr [ebp - 0x11c]"], ["0x10014c3e", "call MxAtomId::operator= (FUNCTION)"], ["0x10014c43", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014c47", "call <OFFSET57>"], ["0x10014c4c", "push 0"], ["0x10014c4e", "lea ecx, [ebp - 0x11c]"], ["0x10014c54", "push 'LegoCarRaceActor' (STRING)"], ["0x10014c59", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014c5e", "mov byte ptr [ebp - 4], 0x78"], ["0x10014c62", "push eax"], ["0x10014c63", "mov ecx, dword ptr [ebp - 0x118]"], ["0x10014c69", "call MxAtomId::operator= (FUNCTION)"], ["0x10014c6e", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014c72", "call <OFFSET59>"], ["0x10014c77", "push 0"], ["0x10014c79", "lea ecx, [ebp - 0x118]"], ["0x10014c7f", "push 'LegoJetskiRaceActor' (STRING)"], ["0x10014c84", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014c89", "mov byte ptr [ebp - 4], 0x79"], ["0x10014c8d", "push eax"], ["0x10014c8e", "mov ecx, dword ptr [ebp - 0x114]"], ["0x10014c94", "call MxAtomId::operator= (FUNCTION)"], ["0x10014c99", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014c9d", "call <OFFSET61>"], ["0x10014ca2", "push 0"], ["0x10014ca4", "lea ecx, [ebp - 0x114]"], ["0x10014caa", "push 'LegoCarBuild' (STRING)"], ["0x10014caf", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014cb4", "mov byte ptr [ebp - 4], 0x7a"], ["0x10014cb8", "push eax"], ["0x10014cb9", "mov ecx, dword ptr [ebp - 0x110]"], ["0x10014cbf", "call MxAtomId::operator= (FUNCTION)"], ["0x10014cc4", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014cc8", "call <OFFSET63>"], ["0x10014ccd", "push 0"], ["0x10014ccf", "lea ecx, [ebp - 0x110]"], ["0x10014cd5", "push 'Infocenter' (STRING)"], ["0x10014cda", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014cdf", "mov byte ptr [ebp - 4], 0x7b"], ["0x10014ce3", "push eax"], ["0x10014ce4", "mov ecx, dword ptr [ebp - 0x10c]"], ["0x10014cea", "call MxAtomId::operator= (FUNCTION)"], ["0x10014cef", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014cf3", "call <OFFSET65>"], ["0x10014cf8", "push 0"], ["0x10014cfa", "lea ecx, [ebp - 0x10c]"], ["0x10014d00", "push 'LegoAnimActor' (STRING)"], ["0x10014d05", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014d0a", "mov byte ptr [ebp - 4], 0x7c"], ["0x10014d0e", "push eax"], ["0x10014d0f", "mov ecx, dword ptr [ebp - 0x108]"], ["0x10014d15", "call MxAtomId::operator= (FUNCTION)"], ["0x10014d1a", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014d1e", "call <OFFSET67>"], ["0x10014d23", "push 0"], ["0x10014d25", "lea ecx, [ebp - 0x108]"], ["0x10014d2b", "push 'MxControlPresenter' (STRING)"], ["0x10014d30", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014d35", "mov byte ptr [ebp - 4], 0x7d"], ["0x10014d39", "push eax"], ["0x10014d3a", "mov ecx, dword ptr [ebp - 0x104]"], ["0x10014d40", "call MxAtomId::operator= (FUNCTION)"], ["0x10014d45", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014d49", "call <OFFSET69>"], ["0x10014d4e", "push 0"], ["0x10014d50", "lea ecx, [ebp - 0x104]"], ["0x10014d56", "push 'RegistrationBook' (STRING)"], ["0x10014d5b", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014d60", "mov byte ptr [ebp - 4], 0x7e"], ["0x10014d64", "push eax"], ["0x10014d65", "mov ecx, dword ptr [ebp - 0x100]"], ["0x10014d6b", "call MxAtomId::operator= (FUNCTION)"], ["0x10014d70", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014d74", "call <OFFSET71>"], ["0x10014d79", "push 0"], ["0x10014d7b", "lea ecx, [ebp - 0x100]"], ["0x10014d81", "push 'HistoryBook' (STRING)"], ["0x10014d86", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014d8b", "mov byte ptr [ebp - 4], 0x7f"], ["0x10014d8f", "push eax"], ["0x10014d90", "mov ecx, dword ptr [ebp - 0xfc]"], ["0x10014d96", "call MxAtomId::operator= (FUNCTION)"], ["0x10014d9b", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014d9f", "call <OFFSET73>"], ["0x10014da4", "push 0"], ["0x10014da6", "lea ecx, [ebp - 0xfc]"], ["0x10014dac", "push 'ElevatorBottom' (STRING)"], ["0x10014db1", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014db6", "mov byte ptr [ebp - 4], 0x80"], ["0x10014dba", "push eax"], ["0x10014dbb", "mov ecx, dword ptr [ebp - 0xf8]"], ["0x10014dc1", "call MxAtomId::operator= (FUNCTION)"], ["0x10014dc6", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014dca", "call <OFFSET75>"], ["0x10014dcf", "push 0"], ["0x10014dd1", "lea ecx, [ebp - 0xf8]"], ["0x10014dd7", "push 'InfocenterDoor' (STRING)"], ["0x10014ddc", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014de1", "mov byte ptr [ebp - 4], 0x81"], ["0x10014de5", "push eax"], ["0x10014de6", "mov ecx, dword ptr [ebp - 0xf4]"], ["0x10014dec", "call MxAtomId::operator= (FUNCTION)"], ["0x10014df1", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014df5", "call <OFFSET77>"], ["0x10014dfa", "push 0"], ["0x10014dfc", "lea ecx, [ebp - 0xf4]"], ["0x10014e02", "push 'Score' (STRING)"], ["0x10014e07", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014e0c", "mov byte ptr [ebp - 4], 0x82"], ["0x10014e10", "push eax"], ["0x10014e11", "mov ecx, dword ptr [ebp - 0xf0]"], ["0x10014e17", "call MxAtomId::operator= (FUNCTION)"], ["0x10014e1c", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014e20", "call <OFFSET79>"], ["0x10014e25", "push 0"], ["0x10014e27", "lea ecx, [ebp - 0xf0]"], ["0x10014e2d", "push 'ScoreState' (STRING)"], ["0x10014e32", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014e37", "mov byte ptr [ebp - 4], 0x83"], ["0x10014e3b", "push eax"], ["0x10014e3c", "mov ecx, dword ptr [ebp - 0xec]"], ["0x10014e42", "call MxAtomId::operator= (FUNCTION)"], ["0x10014e47", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014e4b", "call <OFFSET81>"], ["0x10014e50", "push 0"], ["0x10014e52", "lea ecx, [ebp - 0xec]"], ["0x10014e58", "push 'Hospital' (STRING)"], ["0x10014e5d", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014e62", "mov byte ptr [ebp - 4], 0x84"], ["0x10014e66", "push eax"], ["0x10014e67", "mov ecx, dword ptr [ebp - 0xe8]"], ["0x10014e6d", "call MxAtomId::operator= (FUNCTION)"], ["0x10014e72", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014e76", "call <OFFSET83>"], ["0x10014e7b", "push 0"], ["0x10014e7d", "lea ecx, [ebp - 0xe8]"], ["0x10014e83", "push 'Isle' (STRING)"], ["0x10014e88", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014e8d", "mov byte ptr [ebp - 4], 0x85"], ["0x10014e91", "push eax"], ["0x10014e92", "mov ecx, dword ptr [ebp - 0xe4]"], ["0x10014e98", "call MxAtomId::operator= (FUNCTION)"], ["0x10014e9d", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014ea1", "call <OFFSET85>"], ["0x10014ea6", "push 0"], ["0x10014ea8", "lea ecx, [ebp - 0xe4]"], ["0x10014eae", "push 'Police' (STRING)"], ["0x10014eb3", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014eb8", "mov byte ptr [ebp - 4], 0x86"], ["0x10014ebc", "push eax"], ["0x10014ebd", "mov ecx, dword ptr [ebp - 0xe0]"], ["0x10014ec3", "call MxAtomId::operator= (FUNCTION)"], ["0x10014ec8", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014ecc", "call <OFFSET87>"], ["0x10014ed1", "push 0"], ["0x10014ed3", "lea ecx, [ebp - 0xe0]"], ["0x10014ed9", "push 'GasStation' (STRING)"], ["0x10014ede", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014ee3", "mov byte ptr [ebp - 4], 0x87"], ["0x10014ee7", "push eax"], ["0x10014ee8", "mov ecx, dword ptr [ebp - 0xdc]"], ["0x10014eee", "call MxAtomId::operator= (FUNCTION)"], ["0x10014ef3", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014ef7", "call <OFFSET89>"], ["0x10014efc", "push 0"], ["0x10014efe", "lea ecx, [ebp - 0xdc]"], ["0x10014f04", "push 'LegoAct2' (STRING)"], ["0x10014f09", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014f0e", "mov byte ptr [ebp - 4], 0x88"], ["0x10014f12", "push eax"], ["0x10014f13", "mov ecx, dword ptr [ebp - 0xd8]"], ["0x10014f19", "call MxAtomId::operator= (FUNCTION)"], ["0x10014f1e", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014f22", "call <OFFSET91>"], ["0x10014f27", "push 0"], ["0x10014f29", "lea ecx, [ebp - 0xd8]"], ["0x10014f2f", "push 'LegoAct2State' (STRING)"], ["0x10014f34", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014f39", "mov byte ptr [ebp - 4], 0x89"], ["0x10014f3d", "push eax"], ["0x10014f3e", "mov ecx, dword ptr [ebp - 0xd4]"], ["0x10014f44", "call MxAtomId::operator= (FUNCTION)"], ["0x10014f49", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014f4d", "call <OFFSET93>"], ["0x10014f52", "push 0"], ["0x10014f54", "lea ecx, [ebp - 0xd4]"], ["0x10014f5a", "push 'CarRace' (STRING)"], ["0x10014f5f", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014f64", "mov byte ptr [ebp - 4], 0x8a"], ["0x10014f68", "push eax"], ["0x10014f69", "mov ecx, dword ptr [ebp - 0xd0]"], ["0x10014f6f", "call MxAtomId::operator= (FUNCTION)"], ["0x10014f74", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014f78", "call <OFFSET95>"], ["0x10014f7d", "push 0"], ["0x10014f7f", "lea ecx, [ebp - 0xd0]"], ["0x10014f85", "push 'HospitalState' (STRING)"], ["0x10014f8a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014f8f", "mov byte ptr [ebp - 4], 0x8b"], ["0x10014f93", "push eax"], ["0x10014f94", "mov ecx, dword ptr [ebp - 0xcc]"], ["0x10014f9a", "call MxAtomId::operator= (FUNCTION)"], ["0x10014f9f", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014fa3", "call <OFFSET97>"], ["0x10014fa8", "push 0"], ["0x10014faa", "lea ecx, [ebp - 0xcc]"], ["0x10014fb0", "push 'InfocenterState' (STRING)"], ["0x10014fb5", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014fba", "mov byte ptr [ebp - 4], 0x8c"], ["0x10014fbe", "push eax"], ["0x10014fbf", "mov ecx, dword ptr [ebp - 0xc8]"], ["0x10014fc5", "call MxAtomId::operator= (FUNCTION)"], ["0x10014fca", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014fce", "call <OFFSET99>"], ["0x10014fd3", "push 0"], ["0x10014fd5", "lea ecx, [ebp - 0xc8]"], ["0x10014fdb", "push 'PoliceState' (STRING)"], ["0x10014fe0", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10014fe5", "mov byte ptr [ebp - 4], 0x8d"], ["0x10014fe9", "push eax"], ["0x10014fea", "mov ecx, dword ptr [ebp - 0xc4]"], ["0x10014ff0", "call MxAtomId::operator= (FUNCTION)"], ["0x10014ff5", "mov byte ptr [ebp - 4], 0x5d"], ["0x10014ff9", "call <OFFSET101>"], ["0x10014ffe", "push 0"], ["0x10015000", "lea ecx, [ebp - 0xc4]"], ["0x10015006", "push 'GasStationState' (STRING)"], ["0x1001500b", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015010", "mov byte ptr [ebp - 4], 0x8e"], ["0x10015014", "push eax"], ["0x10015015", "mov ecx, dword ptr [ebp - 0xc0]"], ["0x1001501b", "call MxAtomId::operator= (FUNCTION)"], ["0x10015020", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015024", "call <OFFSET103>"], ["0x10015029", "push 0"], ["0x1001502b", "lea ecx, [ebp - 0xc0]"], ["0x10015031", "push 'SkateBoard' (STRING)"], ["0x10015036", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001503b", "mov byte ptr [ebp - 4], 0x8f"], ["0x1001503f", "push eax"], ["0x10015040", "mov ecx, dword ptr [ebp - 0xbc]"], ["0x10015046", "call MxAtomId::operator= (FUNCTION)"], ["0x1001504b", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001504f", "call <OFFSET105>"], ["0x10015054", "push 0"], ["0x10015056", "lea ecx, [ebp - 0xbc]"], ["0x1001505c", "push 'Helicopter' (STRING)"], ["0x10015061", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015066", "mov byte ptr [ebp - 4], 0x90"], ["0x1001506a", "push eax"], ["0x1001506b", "mov ecx, dword ptr [ebp - 0xb8]"], ["0x10015071", "call MxAtomId::operator= (FUNCTION)"], ["0x10015076", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001507a", "call <OFFSET107>"], ["0x1001507f", "push 0"], ["0x10015081", "lea ecx, [ebp - 0xb8]"], ["0x10015087", "push 'HelicopterState' (STRING)"], ["0x1001508c", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015091", "mov byte ptr [ebp - 4], 0x91"], ["0x10015095", "push eax"], ["0x10015096", "mov ecx, dword ptr [ebp - 0xb4]"], ["0x1001509c", "call MxAtomId::operator= (FUNCTION)"], ["0x100150a1", "mov byte ptr [ebp - 4], 0x5d"], ["0x100150a5", "call <OFFSET109>"], ["0x100150aa", "push 0"], ["0x100150ac", "lea ecx, [ebp - 0xb4]"], ["0x100150b2", "push 'DuneBuggy' (STRING)"], ["0x100150b7", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100150bc", "mov byte ptr [ebp - 4], 0x92"], ["0x100150c0", "push eax"], ["0x100150c1", "mov ecx, dword ptr [ebp - 0xb0]"], ["0x100150c7", "call MxAtomId::operator= (FUNCTION)"], ["0x100150cc", "mov byte ptr [ebp - 4], 0x5d"], ["0x100150d0", "call <OFFSET111>"], ["0x100150d5", "push 0"], ["0x100150d7", "lea ecx, [ebp - 0xb0]"], ["0x100150dd", "push 'Pizza' (STRING)"], ["0x100150e2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100150e7", "mov byte ptr [ebp - 4], 0x93"], ["0x100150eb", "push eax"], ["0x100150ec", "mov ecx, dword ptr [ebp - 0xac]"], ["0x100150f2", "call MxAtomId::operator= (FUNCTION)"], ["0x100150f7", "mov byte ptr [ebp - 4], 0x5d"], ["0x100150fb", "call <OFFSET113>"], ["0x10015100", "push 0"], ["0x10015102", "lea ecx, [ebp - 0xac]"], ["0x10015108", "push 'PizzaMissionState' (STRING)"], ["0x1001510d", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015112", "mov byte ptr [ebp - 4], 0x94"], ["0x10015116", "push eax"], ["0x10015117", "mov ecx, dword ptr [ebp - 0xa8]"], ["0x1001511d", "call MxAtomId::operator= (FUNCTION)"], ["0x10015122", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015126", "call <OFFSET115>"], ["0x1001512b", "push 0"], ["0x1001512d", "lea ecx, [ebp - 0xa8]"], ["0x10015133", "push 'Act2Actor' (STRING)"], ["0x10015138", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001513d", "mov byte ptr [ebp - 4], 0x95"], ["0x10015141", "push eax"], ["0x10015142", "mov ecx, dword ptr [ebp - 0xa4]"], ["0x10015148", "call MxAtomId::operator= (FUNCTION)"], ["0x1001514d", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015151", "call <OFFSET117>"], ["0x10015156", "push 0"], ["0x10015158", "lea ecx, [ebp - 0xa4]"], ["0x1001515e", "push 'Act2Brick' (STRING)"], ["0x10015163", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015168", "mov byte ptr [ebp - 4], 0x96"], ["0x1001516c", "push eax"], ["0x1001516d", "mov ecx, dword ptr [ebp - 0xa0]"], ["0x10015173", "call MxAtomId::operator= (FUNCTION)"], ["0x10015178", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001517c", "call <OFFSET119>"], ["0x10015181", "push 0"], ["0x10015183", "lea ecx, [ebp - 0xa0]"], ["0x10015189", "push 'Act2PoliceStation' (STRING)"], ["0x1001518e", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015193", "mov byte ptr [ebp - 4], 0x97"], ["0x10015197", "push eax"], ["0x10015198", "mov ecx, dword ptr [ebp - 0x9c]"], ["0x1001519e", "call MxAtomId::operator= (FUNCTION)"], ["0x100151a3", "mov byte ptr [ebp - 4], 0x5d"], ["0x100151a7", "call <OFFSET121>"], ["0x100151ac", "push 0"], ["0x100151ae", "lea ecx, [ebp - 0x9c]"], ["0x100151b4", "push 'Act3' (STRING)"], ["0x100151b9", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100151be", "mov byte ptr [ebp - 4], 0x98"], ["0x100151c2", "push eax"], ["0x100151c3", "mov ecx, dword ptr [ebp - 0x98]"], ["0x100151c9", "call MxAtomId::operator= (FUNCTION)"], ["0x100151ce", "mov byte ptr [ebp - 4], 0x5d"], ["0x100151d2", "call <OFFSET123>"], ["0x100151d7", "push 0"], ["0x100151d9", "lea ecx, [ebp - 0x98]"], ["0x100151df", "push 'Act3State' (STRING)"], ["0x100151e4", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100151e9", "mov byte ptr [ebp - 4], 0x99"], ["0x100151ed", "push eax"], ["0x100151ee", "mov ecx, dword ptr [ebp - 0x94]"], ["0x100151f4", "call MxAtomId::operator= (FUNCTION)"], ["0x100151f9", "mov byte ptr [ebp - 4], 0x5d"], ["0x100151fd", "call <OFFSET125>"], ["0x10015202", "push 0"], ["0x10015204", "lea ecx, [ebp - 0x94]"], ["0x1001520a", "push 'Doors' (STRING)"], ["0x1001520f", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015214", "mov byte ptr [ebp - 4], 0x9a"], ["0x10015218", "push eax"], ["0x10015219", "mov ecx, dword ptr [ebp - 0x90]"], ["0x1001521f", "call MxAtomId::operator= (FUNCTION)"], ["0x10015224", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015228", "call <OFFSET127>"], ["0x1001522d", "push 0"], ["0x1001522f", "lea ecx, [ebp - 0x90]"], ["0x10015235", "push 'LegoAnimMMPresenter' (STRING)"], ["0x1001523a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001523f", "mov byte ptr [ebp - 4], 0x9b"], ["0x10015243", "push eax"], ["0x10015244", "mov ecx, dword ptr [ebp - 0x8c]"], ["0x1001524a", "call MxAtomId::operator= (FUNCTION)"], ["0x1001524f", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015253", "call <OFFSET129>"], ["0x10015258", "push 0"], ["0x1001525a", "lea ecx, [ebp - 0x8c]"], ["0x10015260", "push 'RaceCar' (STRING)"], ["0x10015265", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001526a", "mov byte ptr [ebp - 4], 0x9c"], ["0x1001526e", "push eax"], ["0x1001526f", "mov ecx, dword ptr [ebp - 0x88]"], ["0x10015275", "call MxAtomId::operator= (FUNCTION)"], ["0x1001527a", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001527e", "call <OFFSET131>"], ["0x10015283", "push 0"], ["0x10015285", "lea ecx, [ebp - 0x88]"], ["0x1001528b", "push 'Jetski' (STRING)"], ["0x10015290", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015295", "mov byte ptr [ebp - 4], 0x9d"], ["0x10015299", "push eax"], ["0x1001529a", "mov ecx, dword ptr [ebp - 0x84]"], ["0x100152a0", "call MxAtomId::operator= (FUNCTION)"], ["0x100152a5", "mov byte ptr [ebp - 4], 0x5d"], ["0x100152a9", "call <OFFSET133>"], ["0x100152ae", "push 0"], ["0x100152b0", "lea ecx, [ebp - 0x84]"], ["0x100152b6", "push 'Bike' (STRING)"], ["0x100152bb", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100152c0", "mov byte ptr [ebp - 4], 0x9e"], ["0x100152c4", "push eax"], ["0x100152c5", "mov ecx, dword ptr [ebp - 0x80]"], ["0x100152c8", "call MxAtomId::operator= (FUNCTION)"], ["0x100152cd", "mov byte ptr [ebp - 4], 0x5d"], ["0x100152d1", "call <OFFSET135>"], ["0x100152d6", "push 0"], ["0x100152d8", "lea ecx, [ebp - 0x80]"], ["0x100152db", "push 'Motocycle' (STRING)"], ["0x100152e0", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100152e5", "mov byte ptr [ebp - 4], 0x9f"], ["0x100152e9", "push eax"], ["0x100152ea", "mov ecx, dword ptr [ebp - 0x7c]"], ["0x100152ed", "call MxAtomId::operator= (FUNCTION)"], ["0x100152f2", "mov byte ptr [ebp - 4], 0x5d"], ["0x100152f6", "call <OFFSET137>"], ["0x100152fb", "push 0"], ["0x100152fd", "lea ecx, [ebp - 0x7c]"], ["0x10015300", "push 'Ambulance' (STRING)"], ["0x10015305", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001530a", "mov byte ptr [ebp - 4], 0xa0"], ["0x1001530e", "push eax"], ["0x1001530f", "mov ecx, dword ptr [ebp - 0x78]"], ["0x10015312", "call MxAtomId::operator= (FUNCTION)"], ["0x10015317", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001531b", "call <OFFSET139>"], ["0x10015320", "push 0"], ["0x10015322", "lea ecx, [ebp - 0x78]"], ["0x10015325", "push 'AmbulanceMissionState' (STRING)"], ["0x1001532a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001532f", "mov byte ptr [ebp - 4], 0xa1"], ["0x10015333", "push eax"], ["0x10015334", "mov ecx, dword ptr [ebp - 0x74]"], ["0x10015337", "call MxAtomId::operator= (FUNCTION)"], ["0x1001533c", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015340", "call <OFFSET141>"], ["0x10015345", "push 0"], ["0x10015347", "push 'TowTrack' (STRING)"], ["0x1001534c", "lea ecx, [ebp - 0x74]"], ["0x1001534f", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015354", "mov byte ptr [ebp - 4], 0xa2"], ["0x10015358", "push eax"], ["0x10015359", "mov ecx, dword ptr [ebp - 0x70]"], ["0x1001535c", "call MxAtomId::operator= (FUNCTION)"], ["0x10015361", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015365", "call <OFFSET143>"], ["0x1001536a", "push 0"], ["0x1001536c", "lea ecx, [ebp - 0x70]"], ["0x1001536f", "push 'TowTrackMissionState' (STRING)"], ["0x10015374", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015379", "mov byte ptr [ebp - 4], 0xa3"], ["0x1001537d", "push eax"], ["0x1001537e", "mov ecx, dword ptr [ebp - 0x6c]"], ["0x10015381", "call MxAtomId::operator= (FUNCTION)"], ["0x10015386", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001538a", "call <OFFSET145>"], ["0x1001538f", "push 0"], ["0x10015391", "lea ecx, [ebp - 0x6c]"], ["0x10015394", "push 'Act3Shark' (STRING)"], ["0x10015399", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001539e", "mov byte ptr [ebp - 4], 0xa4"], ["0x100153a2", "push eax"], ["0x100153a3", "mov ecx, dword ptr [ebp - 0x68]"], ["0x100153a6", "call MxAtomId::operator= (FUNCTION)"], ["0x100153ab", "mov byte ptr [ebp - 4], 0x5d"], ["0x100153af", "call <OFFSET147>"], ["0x100153b4", "push 0"], ["0x100153b6", "lea ecx, [ebp - 0x68]"], ["0x100153b9", "push 'BumpBouy' (STRING)"], ["0x100153be", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100153c3", "mov byte ptr [ebp - 4], 0xa5"], ["0x100153c7", "push eax"], ["0x100153c8", "mov ecx, dword ptr [ebp - 0x64]"], ["0x100153cb", "call MxAtomId::operator= (FUNCTION)"], ["0x100153d0", "mov byte ptr [ebp - 4], 0x5d"], ["0x100153d4", "call <OFFSET149>"], ["0x100153d9", "push 0"], ["0x100153db", "lea ecx, [ebp - 0x64]"], ["0x100153de", "push 'Act3Actor' (STRING)"], ["0x100153e3", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100153e8", "mov byte ptr [ebp - 4], 0xa6"], ["0x100153ec", "push eax"], ["0x100153ed", "mov ecx, dword ptr [ebp - 0x60]"], ["0x100153f0", "call MxAtomId::operator= (FUNCTION)"], ["0x100153f5", "mov byte ptr [ebp - 4], 0x5d"], ["0x100153f9", "call <OFFSET151>"], ["0x100153fe", "push 0"], ["0x10015400", "lea ecx, [ebp - 0x60]"], ["0x10015403", "push 'JetskiRaceState' (STRING)"], ["0x10015408", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001540d", "mov byte ptr [ebp - 4], 0xa7"], ["0x10015411", "push eax"], ["0x10015412", "mov ecx, dword ptr [ebp - 0x5c]"], ["0x10015415", "call MxAtomId::operator= (FUNCTION)"], ["0x1001541a", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001541e", "call <OFFSET153>"], ["0x10015423", "push 0"], ["0x10015425", "push 'CarRaceState' (STRING)"], ["0x1001542a", "lea ecx, [ebp - 0x5c]"], ["0x1001542d", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015432", "mov byte ptr [ebp - 4], 0xa8"], ["0x10015436", "push eax"], ["0x10015437", "mov ecx, dword ptr [ebp - 0x58]"], ["0x1001543a", "call MxAtomId::operator= (FUNCTION)"], ["0x1001543f", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015443", "call <OFFSET155>"], ["0x10015448", "push 0"], ["0x1001544a", "lea ecx, [ebp - 0x58]"], ["0x1001544d", "push 'Act1State' (STRING)"], ["0x10015452", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015457", "mov byte ptr [ebp - 4], 0xa9"], ["0x1001545b", "push eax"], ["0x1001545c", "mov ecx, dword ptr [ebp - 0x54]"], ["0x1001545f", "call MxAtomId::operator= (FUNCTION)"], ["0x10015464", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015468", "call <OFFSET157>"], ["0x1001546d", "push 0"], ["0x1001546f", "lea ecx, [ebp - 0x54]"], ["0x10015472", "push 'Pizzeria' (STRING)"], ["0x10015477", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001547c", "mov byte ptr [ebp - 4], 0xaa"], ["0x10015480", "push eax"], ["0x10015481", "mov ecx, dword ptr [ebp - 0x50]"], ["0x10015484", "call MxAtomId::operator= (FUNCTION)"], ["0x10015489", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001548d", "call <OFFSET159>"], ["0x10015492", "push 0"], ["0x10015494", "lea ecx, [ebp - 0x50]"], ["0x10015497", "push 'PizzeriaState' (STRING)"], ["0x1001549c", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100154a1", "mov byte ptr [ebp - 4], 0xab"], ["0x100154a5", "push eax"], ["0x100154a6", "mov ecx, dword ptr [ebp - 0x4c]"], ["0x100154a9", "call MxAtomId::operator= (FUNCTION)"], ["0x100154ae", "mov byte ptr [ebp - 4], 0x5d"], ["0x100154b2", "call <OFFSET161>"], ["0x100154b7", "push 0"], ["0x100154b9", "lea ecx, [ebp - 0x4c]"], ["0x100154bc", "push 'InfoCenterEntity' (STRING)"], ["0x100154c1", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100154c6", "mov byte ptr [ebp - 4], 0xac"], ["0x100154ca", "push eax"], ["0x100154cb", "mov ecx, dword ptr [ebp - 0x48]"], ["0x100154ce", "call MxAtomId::operator= (FUNCTION)"], ["0x100154d3", "mov byte ptr [ebp - 4], 0x5d"], ["0x100154d7", "call <OFFSET163>"], ["0x100154dc", "push 0"], ["0x100154de", "lea ecx, [ebp - 0x48]"], ["0x100154e1", "push 'HospitalEntity' (STRING)"], ["0x100154e6", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100154eb", "mov byte ptr [ebp - 4], 0xad"], ["0x100154ef", "push eax"], ["0x100154f0", "mov ecx, dword ptr [ebp - 0x44]"], ["0x100154f3", "call MxAtomId::operator= (FUNCTION)"], ["0x100154f8", "mov byte ptr [ebp - 4], 0x5d"], ["0x100154fc", "call <OFFSET165>"], ["0x10015501", "push 0"], ["0x10015503", "push 'GasStationEntity' (STRING)"], ["0x10015508", "lea ecx, [ebp - 0x44]"], ["0x1001550b", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015510", "mov byte ptr [ebp - 4], 0xae"], ["0x10015514", "push eax"], ["0x10015515", "mov ecx, dword ptr [ebp - 0x40]"], ["0x10015518", "call MxAtomId::operator= (FUNCTION)"], ["0x1001551d", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015521", "call <OFFSET167>"], ["0x10015526", "push 0"], ["0x10015528", "lea ecx, [ebp - 0x40]"], ["0x1001552b", "push 'PoliceEntity' (STRING)"], ["0x10015530", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015535", "mov byte ptr [ebp - 4], 0xaf"], ["0x10015539", "push eax"], ["0x1001553a", "mov ecx, dword ptr [ebp - 0x3c]"], ["0x1001553d", "call MxAtomId::operator= (FUNCTION)"], ["0x10015542", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015546", "call <OFFSET169>"], ["0x1001554b", "push 0"]]}, {"both": [["0x1000775e", "lea ecx, [ebp - 0x3c]", "0x1001554d"]]}, {"orig": [["0x10007761", "mov dword ptr [eax], LegoObjectFactory::`vftable' (VTABLE)"], ["0x10007767", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000776c", "push eax"], ["0x1000776d", "mov ecx, esi"], ["0x1000776f", "mov byte ptr [ebp - 4], 0x65"], ["0x10007773", "call MxAtomId::operator= (FUNCTION)"], ["0x10007778", "mov byte ptr [ebp - 4], 0x64"], ["0x1000777c", "call <OFFSET7>"], ["0x10007781", "push 0"], ["0x10007783", "lea ecx, [ebp - 0x3c]"], ["0x10007786", "push 'LegoActorPresenter' (STRING)"], ["0x1000778b", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007790", "mov byte ptr [ebp - 4], 0x66"]], "recomp": [["0x10015550", "push 'BeachHouseEntity' (STRING)"], ["0x10015555", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001555a", "mov byte ptr [ebp - 4], 0xb0"]]}, {"both": [["0x10007794", "push eax", "0x1001555e"], ["0x10007795", "mov ecx, dword ptr [ebp - 0x38]", "0x1001555f"], ["0x10007798", "call MxAtomId::operator= (FUNCTION)", "0x10015562"]]}, {"orig": [["0x1000779d", "mov byte ptr [ebp - 4], 0x64"], ["0x100077a1", "call <OFFSET9>"]], "recomp": [["0x10015567", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001556b", "call <OFFSET171>"]]}, {"both": [["0x100077a6", "push 0", "0x10015570"], ["0x100077a8", "lea ecx, [ebp - 0x38]", "0x10015572"]]}, {"orig": [["0x100077ab", "push 'LegoWorldPresenter' (STRING)"], ["0x100077b0", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100077b5", "mov byte ptr [ebp - 4], 0x67"]], "recomp": [["0x10015575", "push 'RaceStandsEntity' (STRING)"], ["0x1001557a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001557f", "mov byte ptr [ebp - 4], 0xb1"]]}, {"both": [["0x100077b9", "push eax", "0x10015583"], ["0x100077ba", "mov ecx, dword ptr [ebp - 0x34]", "0x10015584"], ["0x100077bd", "call MxAtomId::operator= (FUNCTION)", "0x10015587"]]}, {"orig": [["0x100077c2", "mov byte ptr [ebp - 4], 0x64"], ["0x100077c6", "call <OFFSET11>"]], "recomp": [["0x1001558c", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015590", "call <OFFSET173>"]]}, {"both": [["0x100077cb", "push 0", "0x10015595"], ["0x100077cd", "lea ecx, [ebp - 0x34]", "0x10015597"]]}, {"orig": [["0x100077d0", "push 'LegoWorld' (STRING)"], ["0x100077d5", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100077da", "mov byte ptr [ebp - 4], 0x68"]], "recomp": [["0x1001559a", "push 'JukeBoxEntity' (STRING)"], ["0x1001559f", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100155a4", "mov byte ptr [ebp - 4], 0xb2"], ["0x100155a8", "push eax"], ["0x100155a9", "mov ecx, dword ptr [ebp - 0x30]"], ["0x100155ac", "call MxAtomId::operator= (FUNCTION)"], ["0x100155b1", "mov byte ptr [ebp - 4], 0x5d"], ["0x100155b5", "call <OFFSET175>"], ["0x100155ba", "push 0"], ["0x100155bc", "lea ecx, [ebp - 0x30]"], ["0x100155bf", "push 'RadioState' (STRING)"], ["0x100155c4", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100155c9", "mov byte ptr [ebp - 4], 0xb3"], ["0x100155cd", "push eax"], ["0x100155ce", "mov ecx, dword ptr [ebp - 0x2c]"], ["0x100155d1", "call MxAtomId::operator= (FUNCTION)"], ["0x100155d6", "mov byte ptr [ebp - 4], 0x5d"], ["0x100155da", "call <OFFSET177>"], ["0x100155df", "push 0"], ["0x100155e1", "lea ecx, [ebp - 0x2c]"], ["0x100155e4", "push 'CaveEntity' (STRING)"], ["0x100155e9", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100155ee", "mov byte ptr [ebp - 4], 0xb4"], ["0x100155f2", "push eax"], ["0x100155f3", "mov ecx, dword ptr [ebp - 0x28]"], ["0x100155f6", "call MxAtomId::operator= (FUNCTION)"], ["0x100155fb", "mov byte ptr [ebp - 4], 0x5d"], ["0x100155ff", "call <OFFSET179>"], ["0x10015604", "push 0"], ["0x10015606", "lea ecx, [ebp - 0x28]"], ["0x10015609", "push 'JailEntity' (STRING)"], ["0x1001560e", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015613", "mov byte ptr [ebp - 4], 0xb5"], ["0x10015617", "push eax"], ["0x10015618", "mov ecx, dword ptr [ebp - 0x24]"], ["0x1001561b", "call MxAtomId::operator= (FUNCTION)"], ["0x10015620", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015624", "call <OFFSET181>"], ["0x10015629", "push 0"], ["0x1001562b", "lea ecx, [ebp - 0x24]"], ["0x1001562e", "push 'MxCompositeMediaPresenter' (STRING)"], ["0x10015633", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015638", "mov byte ptr [ebp - 4], 0xb6"], ["0x1001563c", "push eax"], ["0x1001563d", "mov ecx, dword ptr [ebp - 0x20]"], ["0x10015640", "call MxAtomId::operator= (FUNCTION)"], ["0x10015645", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015649", "call <OFFSET183>"], ["0x1001564e", "push 0"], ["0x10015650", "lea ecx, [ebp - 0x20]"], ["0x10015653", "push 'JukeBox' (STRING)"], ["0x10015658", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1001565d", "mov byte ptr [ebp - 4], 0xb7"], ["0x10015661", "push eax"], ["0x10015662", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x10015665", "call MxAtomId::operator= (FUNCTION)"], ["0x1001566a", "mov byte ptr [ebp - 4], 0x5d"], ["0x1001566e", "call <OFFSET185>"], ["0x10015673", "push 0"], ["0x10015675", "lea ecx, [ebp - 0x1c]"], ["0x10015678", "push 'JukeBoxState' (STRING)"], ["0x1001567d", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10015682", "mov byte ptr [ebp - 4], 0xb8"]]}, {"both": [["0x100077de", "push eax", "0x10015686"], ["0x100077df", "mov ecx, dword ptr [ebp - 0x18]", "0x10015687"], ["0x100077e2", "call MxAtomId::operator= (FUNCTION)", "0x1001568a"]]}, {"orig": [["0x100077e7", "mov byte ptr [ebp - 4], 0x64"], ["0x100077eb", "call <OFFSET13>"]], "recomp": [["0x1001568f", "mov byte ptr [ebp - 4], 0x5d"], ["0x10015693", "call <OFFSET187>"]]}, {"both": [["0x100077f0", "push 0", "0x10015698"], ["0x100077f2", "lea ecx, [ebp - 0x18]", "0x1001569a"]]}, {"orig": [["0x100077f5", "push 'LegoAnimPresenter' (STRING)"], ["0x100077fa", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100077ff", "mov byte ptr [ebp - 4], 0x69"]], "recomp": [["0x1001569d", "push 'RaceSkel' (STRING)"], ["0x100156a2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100156a7", "mov byte ptr [ebp - 4], 0xb9"]]}, {"both": [["0x10007803", "push eax", "0x100156ab"], ["0x10007804", "mov ecx, dword ptr [ebp - 0x14]", "0x100156ac"], ["0x10007807", "call MxAtomId::operator= (FUNCTION)", "0x100156af"]]}, {"orig": [["0x1000780c", "mov byte ptr [ebp - 4], 0x64"], ["0x10007810", "call <OFFSET15>"], ["0x10007815", "push 0"], ["0x10007817", "lea ecx, [ebp - 0x18]"], ["0x1000781a", "push 'LegoModelPresenter' (STRING)"], ["0x1000781f", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007824", "mov byte ptr [ebp - 4], 0x6a"], ["0x10007828", "push eax"], ["0x10007829", "mov ecx, dword ptr [ebp - 0x30]"], ["0x1000782c", "call MxAtomId::operator= (FUNCTION)"], ["0x10007831", "mov byte ptr [ebp - 4], 0x64"], ["0x10007835", "call <OFFSET17>"], ["0x1000783a", "push 0"], ["0x1000783c", "lea ecx, [ebp - 0x30]"], ["0x1000783f", "push 'LegoTexturePresenter' (STRING)"], ["0x10007844", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007849", "mov byte ptr [ebp - 4], 0x6b"], ["0x1000784d", "push eax"], ["0x1000784e", "mov ecx, dword ptr [ebp - 0x2c]"], ["0x10007851", "call MxAtomId::operator= (FUNCTION)"], ["0x10007856", "mov byte ptr [ebp - 4], 0x64"], ["0x1000785a", "call <OFFSET19>"], ["0x1000785f", "push 0"], ["0x10007861", "lea ecx, [ebp - 0x2c]"], ["0x10007864", "push 'LegoPhonemePresenter' (STRING)"], ["0x10007869", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000786e", "mov byte ptr [ebp - 4], 0x6c"], ["0x10007872", "push eax"], ["0x10007873", "mov ecx, dword ptr [ebp - 0x28]"], ["0x10007876", "call MxAtomId::operator= (FUNCTION)"], ["0x1000787b", "mov byte ptr [ebp - 4], 0x64"], ["0x1000787f", "call <OFFSET21>"], ["0x10007884", "push 0"], ["0x10007886", "lea ecx, [ebp - 0x28]"], ["0x10007889", "push 'LegoFlcTexturePresenter' (STRING)"], ["0x1000788e", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007893", "mov byte ptr [ebp - 4], 0x6d"], ["0x10007897", "push eax"], ["0x10007898", "mov ecx, dword ptr [ebp - 0x24]"], ["0x1000789b", "call MxAtomId::operator= (FUNCTION)"], ["0x100078a0", "mov byte ptr [ebp - 4], 0x64"], ["0x100078a4", "call <OFFSET23>"], ["0x100078a9", "push 0"], ["0x100078ab", "lea ecx, [ebp - 0x24]"], ["0x100078ae", "push 'LegoPalettePresenter' (STRING)"], ["0x100078b3", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100078b8", "mov byte ptr [ebp - 4], 0x6e"], ["0x100078bc", "push eax"], ["0x100078bd", "mov ecx, dword ptr [ebp - 0x20]"], ["0x100078c0", "call MxAtomId::operator= (FUNCTION)"], ["0x100078c5", "mov byte ptr [ebp - 4], 0x64"], ["0x100078c9", "call <OFFSET25>"], ["0x100078ce", "push 0"], ["0x100078d0", "lea ecx, [ebp - 0x20]"], ["0x100078d3", "push 'LegoPathPresenter' (STRING)"], ["0x100078d8", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100078dd", "mov byte ptr [ebp - 4], 0x6f"], ["0x100078e1", "push eax"], ["0x100078e2", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x100078e5", "call MxAtomId::operator= (FUNCTION)"], ["0x100078ea", "mov byte ptr [ebp - 4], 0x64"], ["0x100078ee", "call <OFFSET27>"], ["0x100078f3", "push 0"], ["0x100078f5", "lea ecx, [ebp - 0x1c]"], ["0x100078f8", "push 'LegoAnimPresenter' (STRING)"], ["0x100078fd", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007902", "mov byte ptr [ebp - 4], 0x70"], ["0x10007906", "push eax"], ["0x10007907", "mov ecx, dword ptr [ebp - 0x14]"], ["0x1000790a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000790f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007913", "call <OFFSET28>"], ["0x10007918", "push 0"], ["0x1000791a", "lea ecx, [ebp - 0x14]"], ["0x1000791d", "push 'LegoLoopingAnimPresenter' (STRING)"], ["0x10007922", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007927", "mov byte ptr [ebp - 4], 0x71"], ["0x1000792b", "push eax"], ["0x1000792c", "mov ecx, dword ptr [ebp - 0x1a0]"], ["0x10007932", "call MxAtomId::operator= (FUNCTION)"], ["0x10007937", "mov byte ptr [ebp - 4], 0x64"], ["0x1000793b", "call <OFFSET30>"], ["0x10007940", "push 0"], ["0x10007942", "lea ecx, [ebp - 0x14]"], ["0x10007945", "push 'LegoLocomotionAnimPresenter' (STRING)"], ["0x1000794a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000794f", "mov byte ptr [ebp - 4], 0x72"], ["0x10007953", "push eax"], ["0x10007954", "mov ecx, dword ptr [ebp - 0x19c]"], ["0x1000795a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000795f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007963", "call <OFFSET32>"], ["0x10007968", "push 0"], ["0x1000796a", "lea ecx, [ebp - 0x14]"], ["0x1000796d", "push 'LegoHideAnimPresenter' (STRING)"], ["0x10007972", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007977", "mov byte ptr [ebp - 4], 0x73"], ["0x1000797b", "push eax"], ["0x1000797c", "mov ecx, dword ptr [ebp - 0x198]"], ["0x10007982", "call MxAtomId::operator= (FUNCTION)"], ["0x10007987", "mov byte ptr [ebp - 4], 0x64"], ["0x1000798b", "call <OFFSET34>"], ["0x10007990", "push 0"], ["0x10007992", "lea ecx, [ebp - 0x14]"], ["0x10007995", "push 'LegoPartPresenter' (STRING)"], ["0x1000799a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000799f", "mov byte ptr [ebp - 4], 0x74"], ["0x100079a3", "push eax"], ["0x100079a4", "mov ecx, dword ptr [ebp - 0x194]"], ["0x100079aa", "call MxAtomId::operator= (FUNCTION)"], ["0x100079af", "mov byte ptr [ebp - 4], 0x64"], ["0x100079b3", "call <OFFSET36>"], ["0x100079b8", "push 0"], ["0x100079ba", "lea ecx, [ebp - 0x14]"], ["0x100079bd", "push 'LegoCarBuildAnimPresenter' (STRING)"], ["0x100079c2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100079c7", "mov byte ptr [ebp - 4], 0x75"], ["0x100079cb", "push eax"], ["0x100079cc", "mov ecx, dword ptr [ebp - 0x190]"], ["0x100079d2", "call MxAtomId::operator= (FUNCTION)"], ["0x100079d7", "mov byte ptr [ebp - 4], 0x64"], ["0x100079db", "call <OFFSET38>"], ["0x100079e0", "push 0"], ["0x100079e2", "lea ecx, [ebp - 0x14]"], ["0x100079e5", "push 'LegoActionControlPresenter' (STRING)"], ["0x100079ea", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100079ef", "mov byte ptr [ebp - 4], 0x76"], ["0x100079f3", "push eax"], ["0x100079f4", "mov ecx, dword ptr [ebp - 0x18c]"], ["0x100079fa", "call MxAtomId::operator= (FUNCTION)"], ["0x100079ff", "mov byte ptr [ebp - 4], 0x64"], ["0x10007a03", "call <OFFSET40>"], ["0x10007a08", "push 0"], ["0x10007a0a", "lea ecx, [ebp - 0x14]"], ["0x10007a0d", "push <OFFSET41>"], ["0x10007a12", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007a17", "mov byte ptr [ebp - 4], 0x77"], ["0x10007a1b", "push eax"], ["0x10007a1c", "mov ecx, dword ptr [ebp - 0x188]"], ["0x10007a22", "call MxAtomId::operator= (FUNCTION)"], ["0x10007a27", "mov byte ptr [ebp - 4], 0x64"], ["0x10007a2b", "call <OFFSET42>"], ["0x10007a30", "push 0"], ["0x10007a32", "lea ecx, [ebp - 0x14]"], ["0x10007a35", "push 'LegoLoadCacheSoundPresenter' (STRING)"], ["0x10007a3a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007a3f", "mov byte ptr [ebp - 4], 0x78"], ["0x10007a43", "push eax"], ["0x10007a44", "mov ecx, dword ptr [ebp - 0x184]"], ["0x10007a4a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007a4f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007a53", "call <OFFSET44>"], ["0x10007a58", "push 0"], ["0x10007a5a", "lea ecx, [ebp - 0x14]"], ["0x10007a5d", "push 'Lego3DWavePresenter' (STRING)"], ["0x10007a62", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007a67", "mov byte ptr [ebp - 4], 0x79"], ["0x10007a6b", "push eax"], ["0x10007a6c", "mov ecx, dword ptr [ebp - 0x180]"], ["0x10007a72", "call MxAtomId::operator= (FUNCTION)"], ["0x10007a77", "mov byte ptr [ebp - 4], 0x64"], ["0x10007a7b", "call <OFFSET46>"], ["0x10007a80", "push 0"], ["0x10007a82", "lea ecx, [ebp - 0x14]"], ["0x10007a85", "push 'LegoActor' (STRING)"], ["0x10007a8a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007a8f", "mov byte ptr [ebp - 4], 0x7a"], ["0x10007a93", "push eax"], ["0x10007a94", "mov ecx, dword ptr [ebp - 0x17c]"], ["0x10007a9a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007a9f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007aa3", "call <OFFSET48>"], ["0x10007aa8", "push 0"], ["0x10007aaa", "lea ecx, [ebp - 0x14]"], ["0x10007aad", "push 'LegoPathActor' (STRING)"], ["0x10007ab2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007ab7", "mov byte ptr [ebp - 4], 0x7b"], ["0x10007abb", "push eax"], ["0x10007abc", "mov ecx, dword ptr [ebp - 0x178]"], ["0x10007ac2", "call MxAtomId::operator= (FUNCTION)"], ["0x10007ac7", "mov byte ptr [ebp - 4], 0x64"], ["0x10007acb", "call <OFFSET50>"], ["0x10007ad0", "push 0"], ["0x10007ad2", "lea ecx, [ebp - 0x14]"], ["0x10007ad5", "push 'LegoRaceCar' (STRING)"], ["0x10007ada", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007adf", "mov byte ptr [ebp - 4], 0x7c"], ["0x10007ae3", "push eax"], ["0x10007ae4", "mov ecx, dword ptr [ebp - 0x174]"], ["0x10007aea", "call MxAtomId::operator= (FUNCTION)"], ["0x10007aef", "mov byte ptr [ebp - 4], 0x64"], ["0x10007af3", "call <OFFSET52>"], ["0x10007af8", "push 0"], ["0x10007afa", "lea ecx, [ebp - 0x14]"], ["0x10007afd", "push 'LegoJetski' (STRING)"], ["0x10007b02", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007b07", "mov byte ptr [ebp - 4], 0x7d"], ["0x10007b0b", "push eax"], ["0x10007b0c", "mov ecx, dword ptr [ebp - 0x170]"], ["0x10007b12", "call MxAtomId::operator= (FUNCTION)"], ["0x10007b17", "mov byte ptr [ebp - 4], 0x64"], ["0x10007b1b", "call <OFFSET54>"], ["0x10007b20", "push 0"], ["0x10007b22", "lea ecx, [ebp - 0x14]"], ["0x10007b25", "push 'JetskiRace' (STRING)"], ["0x10007b2a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007b2f", "mov byte ptr [ebp - 4], 0x7e"], ["0x10007b33", "push eax"], ["0x10007b34", "mov ecx, dword ptr [ebp - 0x16c]"], ["0x10007b3a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007b3f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007b43", "call <OFFSET56>"], ["0x10007b48", "push 0"], ["0x10007b4a", "lea ecx, [ebp - 0x14]"], ["0x10007b4d", "push 'LegoEntity' (STRING)"], ["0x10007b52", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007b57", "mov byte ptr [ebp - 4], 0x7f"], ["0x10007b5b", "push eax"], ["0x10007b5c", "mov ecx, dword ptr [ebp - 0x168]"], ["0x10007b62", "call MxAtomId::operator= (FUNCTION)"], ["0x10007b67", "mov byte ptr [ebp - 4], 0x64"], ["0x10007b6b", "call <OFFSET58>"], ["0x10007b70", "push 0"], ["0x10007b72", "lea ecx, [ebp - 0x14]"], ["0x10007b75", "push 'LegoCarRaceActor' (STRING)"], ["0x10007b7a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007b7f", "mov byte ptr [ebp - 4], 0x80"], ["0x10007b83", "push eax"], ["0x10007b84", "mov ecx, dword ptr [ebp - 0x164]"], ["0x10007b8a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007b8f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007b93", "call <OFFSET60>"], ["0x10007b98", "push 0"], ["0x10007b9a", "lea ecx, [ebp - 0x14]"], ["0x10007b9d", "push 'LegoJetskiRaceActor' (STRING)"], ["0x10007ba2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007ba7", "mov byte ptr [ebp - 4], 0x81"], ["0x10007bab", "push eax"], ["0x10007bac", "mov ecx, dword ptr [ebp - 0x160]"], ["0x10007bb2", "call MxAtomId::operator= (FUNCTION)"], ["0x10007bb7", "mov byte ptr [ebp - 4], 0x64"], ["0x10007bbb", "call <OFFSET62>"], ["0x10007bc0", "push 0"], ["0x10007bc2", "lea ecx, [ebp - 0x14]"], ["0x10007bc5", "push 'LegoCarBuild' (STRING)"], ["0x10007bca", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007bcf", "mov byte ptr [ebp - 4], 0x82"], ["0x10007bd3", "push eax"], ["0x10007bd4", "mov ecx, dword ptr [ebp - 0x15c]"], ["0x10007bda", "call MxAtomId::operator= (FUNCTION)"], ["0x10007bdf", "mov byte ptr [ebp - 4], 0x64"], ["0x10007be3", "call <OFFSET64>"], ["0x10007be8", "push 0"], ["0x10007bea", "lea ecx, [ebp - 0x14]"], ["0x10007bed", "push 'Infocenter' (STRING)"], ["0x10007bf2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007bf7", "mov byte ptr [ebp - 4], 0x83"], ["0x10007bfb", "push eax"], ["0x10007bfc", "mov ecx, dword ptr [ebp - 0x158]"], ["0x10007c02", "call MxAtomId::operator= (FUNCTION)"], ["0x10007c07", "mov byte ptr [ebp - 4], 0x64"], ["0x10007c0b", "call <OFFSET66>"], ["0x10007c10", "push 0"], ["0x10007c12", "lea ecx, [ebp - 0x14]"], ["0x10007c15", "push 'LegoAnimActor' (STRING)"], ["0x10007c1a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007c1f", "mov byte ptr [ebp - 4], 0x84"], ["0x10007c23", "push eax"], ["0x10007c24", "mov ecx, dword ptr [ebp - 0x154]"], ["0x10007c2a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007c2f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007c33", "call <OFFSET68>"], ["0x10007c38", "push 0"], ["0x10007c3a", "lea ecx, [ebp - 0x14]"], ["0x10007c3d", "push 'MxControlPresenter' (STRING)"], ["0x10007c42", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007c47", "mov byte ptr [ebp - 4], 0x85"], ["0x10007c4b", "push eax"], ["0x10007c4c", "mov ecx, dword ptr [ebp - 0x150]"], ["0x10007c52", "call MxAtomId::operator= (FUNCTION)"], ["0x10007c57", "mov byte ptr [ebp - 4], 0x64"], ["0x10007c5b", "call <OFFSET70>"], ["0x10007c60", "push 0"], ["0x10007c62", "lea ecx, [ebp - 0x14]"], ["0x10007c65", "push 'RegistrationBook' (STRING)"], ["0x10007c6a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007c6f", "mov byte ptr [ebp - 4], 0x86"], ["0x10007c73", "push eax"], ["0x10007c74", "mov ecx, dword ptr [ebp - 0x14c]"], ["0x10007c7a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007c7f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007c83", "call <OFFSET72>"], ["0x10007c88", "push 0"], ["0x10007c8a", "push 'HistoryBook' (STRING)"], ["0x10007c8f", "lea ecx, [ebp - 0x14]"], ["0x10007c92", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007c97", "mov byte ptr [ebp - 4], 0x87"], ["0x10007c9b", "push eax"], ["0x10007c9c", "mov ecx, dword ptr [ebp - 0x148]"], ["0x10007ca2", "call MxAtomId::operator= (FUNCTION)"], ["0x10007ca7", "mov byte ptr [ebp - 4], 0x64"], ["0x10007cab", "call <OFFSET74>"], ["0x10007cb0", "push 0"], ["0x10007cb2", "lea ecx, [ebp - 0x14]"], ["0x10007cb5", "push 'ElevatorBottom' (STRING)"], ["0x10007cba", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007cbf", "mov byte ptr [ebp - 4], 0x88"], ["0x10007cc3", "push eax"], ["0x10007cc4", "mov ecx, dword ptr [ebp - 0x144]"], ["0x10007cca", "call MxAtomId::operator= (FUNCTION)"], ["0x10007ccf", "mov byte ptr [ebp - 4], 0x64"], ["0x10007cd3", "call <OFFSET76>"], ["0x10007cd8", "push 0"], ["0x10007cda", "lea ecx, [ebp - 0x14]"], ["0x10007cdd", "push 'InfocenterDoor' (STRING)"], ["0x10007ce2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007ce7", "mov byte ptr [ebp - 4], 0x89"], ["0x10007ceb", "push eax"], ["0x10007cec", "mov ecx, dword ptr [ebp - 0x140]"], ["0x10007cf2", "call MxAtomId::operator= (FUNCTION)"], ["0x10007cf7", "mov byte ptr [ebp - 4], 0x64"], ["0x10007cfb", "call <OFFSET78>"], ["0x10007d00", "push 0"], ["0x10007d02", "lea ecx, [ebp - 0x14]"], ["0x10007d05", "push 'Score' (STRING)"], ["0x10007d0a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007d0f", "mov byte ptr [ebp - 4], 0x8a"], ["0x10007d13", "push eax"], ["0x10007d14", "mov ecx, dword ptr [ebp - 0x13c]"], ["0x10007d1a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007d1f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007d23", "call <OFFSET80>"], ["0x10007d28", "push 0"], ["0x10007d2a", "lea ecx, [ebp - 0x14]"], ["0x10007d2d", "push 'ScoreState' (STRING)"], ["0x10007d32", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007d37", "mov byte ptr [ebp - 4], 0x8b"], ["0x10007d3b", "push eax"], ["0x10007d3c", "mov ecx, dword ptr [ebp - 0x138]"], ["0x10007d42", "call MxAtomId::operator= (FUNCTION)"], ["0x10007d47", "mov byte ptr [ebp - 4], 0x64"], ["0x10007d4b", "call <OFFSET82>"], ["0x10007d50", "push 0"], ["0x10007d52", "lea ecx, [ebp - 0x14]"], ["0x10007d55", "push 'Hospital' (STRING)"], ["0x10007d5a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007d5f", "mov byte ptr [ebp - 4], 0x8c"], ["0x10007d63", "push eax"], ["0x10007d64", "mov ecx, dword ptr [ebp - 0x134]"], ["0x10007d6a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007d6f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007d73", "call <OFFSET84>"], ["0x10007d78", "push 0"], ["0x10007d7a", "push 'Isle' (STRING)"], ["0x10007d7f", "lea ecx, [ebp - 0x14]"], ["0x10007d82", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007d87", "mov byte ptr [ebp - 4], 0x8d"], ["0x10007d8b", "push eax"], ["0x10007d8c", "mov ecx, dword ptr [ebp - 0x130]"], ["0x10007d92", "call MxAtomId::operator= (FUNCTION)"], ["0x10007d97", "mov byte ptr [ebp - 4], 0x64"], ["0x10007d9b", "call <OFFSET86>"], ["0x10007da0", "push 0"], ["0x10007da2", "lea ecx, [ebp - 0x14]"], ["0x10007da5", "push 'Police' (STRING)"], ["0x10007daa", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007daf", "mov byte ptr [ebp - 4], 0x8e"], ["0x10007db3", "push eax"], ["0x10007db4", "mov ecx, dword ptr [ebp - 0x12c]"], ["0x10007dba", "call MxAtomId::operator= (FUNCTION)"], ["0x10007dbf", "mov byte ptr [ebp - 4], 0x64"], ["0x10007dc3", "call <OFFSET88>"], ["0x10007dc8", "push 0"], ["0x10007dca", "lea ecx, [ebp - 0x14]"], ["0x10007dcd", "push 'GasStation' (STRING)"], ["0x10007dd2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007dd7", "mov byte ptr [ebp - 4], 0x8f"], ["0x10007ddb", "push eax"], ["0x10007ddc", "mov ecx, dword ptr [ebp - 0x128]"], ["0x10007de2", "call MxAtomId::operator= (FUNCTION)"], ["0x10007de7", "mov byte ptr [ebp - 4], 0x64"], ["0x10007deb", "call <OFFSET90>"], ["0x10007df0", "push 0"], ["0x10007df2", "lea ecx, [ebp - 0x14]"], ["0x10007df5", "push 'LegoAct2' (STRING)"], ["0x10007dfa", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007dff", "mov byte ptr [ebp - 4], 0x90"], ["0x10007e03", "push eax"], ["0x10007e04", "mov ecx, dword ptr [ebp - 0x124]"], ["0x10007e0a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007e0f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007e13", "call <OFFSET92>"], ["0x10007e18", "push 0"], ["0x10007e1a", "lea ecx, [ebp - 0x14]"], ["0x10007e1d", "push 'LegoAct2State' (STRING)"], ["0x10007e22", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007e27", "mov byte ptr [ebp - 4], 0x91"], ["0x10007e2b", "push eax"], ["0x10007e2c", "mov ecx, dword ptr [ebp - 0x120]"], ["0x10007e32", "call MxAtomId::operator= (FUNCTION)"], ["0x10007e37", "mov byte ptr [ebp - 4], 0x64"], ["0x10007e3b", "call <OFFSET94>"], ["0x10007e40", "push 0"], ["0x10007e42", "lea ecx, [ebp - 0x14]"], ["0x10007e45", "push 'CarRace' (STRING)"], ["0x10007e4a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007e4f", "mov byte ptr [ebp - 4], 0x92"], ["0x10007e53", "push eax"], ["0x10007e54", "mov ecx, dword ptr [ebp - 0x11c]"], ["0x10007e5a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007e5f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007e63", "call <OFFSET96>"], ["0x10007e68", "push 0"], ["0x10007e6a", "push <OFFSET97>"], ["0x10007e6f", "lea ecx, [ebp - 0x14]"], ["0x10007e72", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007e77", "mov byte ptr [ebp - 4], 0x93"], ["0x10007e7b", "push eax"], ["0x10007e7c", "mov ecx, dword ptr [ebp - 0x118]"], ["0x10007e82", "call MxAtomId::operator= (FUNCTION)"], ["0x10007e87", "mov byte ptr [ebp - 4], 0x64"], ["0x10007e8b", "call <OFFSET98>"], ["0x10007e90", "push 0"], ["0x10007e92", "lea ecx, [ebp - 0x14]"], ["0x10007e95", "push <OFFSET99>"], ["0x10007e9a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007e9f", "mov byte ptr [ebp - 4], 0x94"], ["0x10007ea3", "push eax"], ["0x10007ea4", "mov ecx, dword ptr [ebp - 0x114]"], ["0x10007eaa", "call MxAtomId::operator= (FUNCTION)"], ["0x10007eaf", "mov byte ptr [ebp - 4], 0x64"], ["0x10007eb3", "call <OFFSET100>"], ["0x10007eb8", "push 0"], ["0x10007eba", "lea ecx, [ebp - 0x14]"], ["0x10007ebd", "push <OFFSET101>"], ["0x10007ec2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007ec7", "mov byte ptr [ebp - 4], 0x95"], ["0x10007ecb", "push eax"], ["0x10007ecc", "mov ecx, dword ptr [ebp - 0x110]"], ["0x10007ed2", "call MxAtomId::operator= (FUNCTION)"], ["0x10007ed7", "mov byte ptr [ebp - 4], 0x64"], ["0x10007edb", "call <OFFSET102>"], ["0x10007ee0", "push 0"], ["0x10007ee2", "lea ecx, [ebp - 0x14]"], ["0x10007ee5", "push <OFFSET103>"], ["0x10007eea", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007eef", "mov byte ptr [ebp - 4], 0x96"], ["0x10007ef3", "push eax"], ["0x10007ef4", "mov ecx, dword ptr [ebp - 0x10c]"], ["0x10007efa", "call MxAtomId::operator= (FUNCTION)"], ["0x10007eff", "mov byte ptr [ebp - 4], 0x64"], ["0x10007f03", "call <OFFSET104>"], ["0x10007f08", "push 0"], ["0x10007f0a", "lea ecx, [ebp - 0x14]"], ["0x10007f0d", "push 'HospitalState' (STRING)"], ["0x10007f12", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007f17", "mov byte ptr [ebp - 4], 0x97"], ["0x10007f1b", "push eax"], ["0x10007f1c", "mov ecx, dword ptr [ebp - 0x108]"], ["0x10007f22", "call MxAtomId::operator= (FUNCTION)"], ["0x10007f27", "mov byte ptr [ebp - 4], 0x64"], ["0x10007f2b", "call <OFFSET106>"], ["0x10007f30", "push 0"], ["0x10007f32", "lea ecx, [ebp - 0x14]"], ["0x10007f35", "push 'InfocenterState' (STRING)"], ["0x10007f3a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007f3f", "mov byte ptr [ebp - 4], 0x98"], ["0x10007f43", "push eax"], ["0x10007f44", "mov ecx, dword ptr [ebp - 0x104]"], ["0x10007f4a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007f4f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007f53", "call <OFFSET108>"], ["0x10007f58", "push 0"], ["0x10007f5a", "lea ecx, [ebp - 0x14]"], ["0x10007f5d", "push 'PoliceState' (STRING)"], ["0x10007f62", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007f67", "mov byte ptr [ebp - 4], 0x99"], ["0x10007f6b", "push eax"], ["0x10007f6c", "mov ecx, dword ptr [ebp - 0x100]"], ["0x10007f72", "call MxAtomId::operator= (FUNCTION)"], ["0x10007f77", "mov byte ptr [ebp - 4], 0x64"], ["0x10007f7b", "call <OFFSET110>"], ["0x10007f80", "push 0"], ["0x10007f82", "lea ecx, [ebp - 0x14]"], ["0x10007f85", "push 'GasStationState' (STRING)"], ["0x10007f8a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007f8f", "mov byte ptr [ebp - 4], 0x9a"], ["0x10007f93", "push eax"], ["0x10007f94", "mov ecx, dword ptr [ebp - 0xfc]"], ["0x10007f9a", "call MxAtomId::operator= (FUNCTION)"], ["0x10007f9f", "mov byte ptr [ebp - 4], 0x64"], ["0x10007fa3", "call <OFFSET112>"], ["0x10007fa8", "push 0"], ["0x10007faa", "lea ecx, [ebp - 0x14]"], ["0x10007fad", "push 'SkateBoard' (STRING)"], ["0x10007fb2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007fb7", "mov byte ptr [ebp - 4], 0x9b"], ["0x10007fbb", "push eax"], ["0x10007fbc", "mov ecx, dword ptr [ebp - 0xf8]"], ["0x10007fc2", "call MxAtomId::operator= (FUNCTION)"], ["0x10007fc7", "mov byte ptr [ebp - 4], 0x64"], ["0x10007fcb", "call <OFFSET114>"], ["0x10007fd0", "push 0"], ["0x10007fd2", "lea ecx, [ebp - 0x14]"], ["0x10007fd5", "push 'Helicopter' (STRING)"], ["0x10007fda", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10007fdf", "mov byte ptr [ebp - 4], 0x9c"], ["0x10007fe3", "push eax"], ["0x10007fe4", "mov ecx, dword ptr [ebp - 0xf4]"], ["0x10007fea", "call MxAtomId::operator= (FUNCTION)"], ["0x10007fef", "mov byte ptr [ebp - 4], 0x64"], ["0x10007ff3", "call <OFFSET116>"], ["0x10007ff8", "push 0"], ["0x10007ffa", "lea ecx, [ebp - 0x14]"], ["0x10007ffd", "push 'HelicopterState' (STRING)"], ["0x10008002", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008007", "mov byte ptr [ebp - 4], 0x9d"], ["0x1000800b", "push eax"], ["0x1000800c", "mov ecx, dword ptr [ebp - 0xf0]"], ["0x10008012", "call MxAtomId::operator= (FUNCTION)"], ["0x10008017", "mov byte ptr [ebp - 4], 0x64"], ["0x1000801b", "call <OFFSET118>"], ["0x10008020", "push 0"], ["0x10008022", "lea ecx, [ebp - 0x14]"], ["0x10008025", "push 'DuneBuggy' (STRING)"], ["0x1000802a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000802f", "mov byte ptr [ebp - 4], 0x9e"], ["0x10008033", "push eax"], ["0x10008034", "mov ecx, dword ptr [ebp - 0xec]"], ["0x1000803a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000803f", "mov byte ptr [ebp - 4], 0x64"], ["0x10008043", "call <OFFSET120>"], ["0x10008048", "push 0"], ["0x1000804a", "lea ecx, [ebp - 0x14]"], ["0x1000804d", "push 'Pizza' (STRING)"], ["0x10008052", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008057", "mov byte ptr [ebp - 4], 0x9f"], ["0x1000805b", "push eax"], ["0x1000805c", "mov ecx, dword ptr [ebp - 0xe8]"], ["0x10008062", "call MxAtomId::operator= (FUNCTION)"], ["0x10008067", "mov byte ptr [ebp - 4], 0x64"], ["0x1000806b", "call <OFFSET122>"], ["0x10008070", "push 0"], ["0x10008072", "lea ecx, [ebp - 0x14]"], ["0x10008075", "push 'PizzaMissionState' (STRING)"], ["0x1000807a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000807f", "mov byte ptr [ebp - 4], 0xa0"], ["0x10008083", "push eax"], ["0x10008084", "mov ecx, dword ptr [ebp - 0xe4]"], ["0x1000808a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000808f", "mov byte ptr [ebp - 4], 0x64"], ["0x10008093", "call <OFFSET124>"], ["0x10008098", "push 0"], ["0x1000809a", "lea ecx, [ebp - 0x14]"], ["0x1000809d", "push 'Act2Actor' (STRING)"], ["0x100080a2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100080a7", "mov byte ptr [ebp - 4], 0xa1"], ["0x100080ab", "push eax"], ["0x100080ac", "mov ecx, dword ptr [ebp - 0xe0]"], ["0x100080b2", "call MxAtomId::operator= (FUNCTION)"], ["0x100080b7", "mov byte ptr [ebp - 4], 0x64"], ["0x100080bb", "call <OFFSET126>"], ["0x100080c0", "push 0"], ["0x100080c2", "lea ecx, [ebp - 0x14]"], ["0x100080c5", "push 'Act2Brick' (STRING)"], ["0x100080ca", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100080cf", "mov byte ptr [ebp - 4], 0xa2"], ["0x100080d3", "push eax"], ["0x100080d4", "mov ecx, dword ptr [ebp - 0xdc]"], ["0x100080da", "call MxAtomId::operator= (FUNCTION)"], ["0x100080df", "mov byte ptr [ebp - 4], 0x64"], ["0x100080e3", "call <OFFSET128>"], ["0x100080e8", "push 0"], ["0x100080ea", "lea ecx, [ebp - 0x14]"], ["0x100080ed", "push <OFFSET129>"], ["0x100080f2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100080f7", "mov byte ptr [ebp - 4], 0xa3"], ["0x100080fb", "push eax"], ["0x100080fc", "mov ecx, dword ptr [ebp - 0xd8]"], ["0x10008102", "call MxAtomId::operator= (FUNCTION)"], ["0x10008107", "mov byte ptr [ebp - 4], 0x64"], ["0x1000810b", "call <OFFSET130>"], ["0x10008110", "push 0"], ["0x10008112", "lea ecx, [ebp - 0x14]"], ["0x10008115", "push 'Act2PoliceStation' (STRING)"], ["0x1000811a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000811f", "mov byte ptr [ebp - 4], 0xa4"], ["0x10008123", "push eax"], ["0x10008124", "mov ecx, dword ptr [ebp - 0xd4]"], ["0x1000812a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000812f", "mov byte ptr [ebp - 4], 0x64"], ["0x10008133", "call <OFFSET132>"], ["0x10008138", "push 0"], ["0x1000813a", "lea ecx, [ebp - 0x14]"], ["0x1000813d", "push 'Act3' (STRING)"], ["0x10008142", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008147", "mov byte ptr [ebp - 4], 0xa5"], ["0x1000814b", "push eax"], ["0x1000814c", "mov ecx, dword ptr [ebp - 0xd0]"], ["0x10008152", "call MxAtomId::operator= (FUNCTION)"], ["0x10008157", "mov byte ptr [ebp - 4], 0x64"], ["0x1000815b", "call <OFFSET134>"], ["0x10008160", "push 0"], ["0x10008162", "lea ecx, [ebp - 0x14]"], ["0x10008165", "push 'Act3State' (STRING)"], ["0x1000816a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000816f", "mov byte ptr [ebp - 4], 0xa6"], ["0x10008173", "push eax"], ["0x10008174", "mov ecx, dword ptr [ebp - 0xcc]"], ["0x1000817a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000817f", "mov byte ptr [ebp - 4], 0x64"], ["0x10008183", "call <OFFSET136>"], ["0x10008188", "push 0"], ["0x1000818a", "lea ecx, [ebp - 0x14]"], ["0x1000818d", "push 'Doors' (STRING)"], ["0x10008192", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008197", "mov byte ptr [ebp - 4], 0xa7"], ["0x1000819b", "push eax"], ["0x1000819c", "mov ecx, dword ptr [ebp - 0xc8]"], ["0x100081a2", "call MxAtomId::operator= (FUNCTION)"], ["0x100081a7", "mov byte ptr [ebp - 4], 0x64"], ["0x100081ab", "call <OFFSET138>"], ["0x100081b0", "push 0"], ["0x100081b2", "lea ecx, [ebp - 0x14]"], ["0x100081b5", "push 'LegoAnimMMPresenter' (STRING)"], ["0x100081ba", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100081bf", "mov byte ptr [ebp - 4], 0xa8"], ["0x100081c3", "push eax"], ["0x100081c4", "mov ecx, dword ptr [ebp - 0xc4]"], ["0x100081ca", "call MxAtomId::operator= (FUNCTION)"], ["0x100081cf", "mov byte ptr [ebp - 4], 0x64"], ["0x100081d3", "call <OFFSET140>"], ["0x100081d8", "push 0"], ["0x100081da", "lea ecx, [ebp - 0x14]"], ["0x100081dd", "push 'RaceCar' (STRING)"], ["0x100081e2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100081e7", "mov byte ptr [ebp - 4], 0xa9"], ["0x100081eb", "push eax"], ["0x100081ec", "mov ecx, dword ptr [ebp - 0xc0]"], ["0x100081f2", "call MxAtomId::operator= (FUNCTION)"], ["0x100081f7", "mov byte ptr [ebp - 4], 0x64"], ["0x100081fb", "call <OFFSET142>"], ["0x10008200", "push 0"], ["0x10008202", "lea ecx, [ebp - 0x14]"], ["0x10008205", "push 'Jetski' (STRING)"], ["0x1000820a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000820f", "mov byte ptr [ebp - 4], 0xaa"], ["0x10008213", "push eax"], ["0x10008214", "mov ecx, dword ptr [ebp - 0xbc]"], ["0x1000821a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000821f", "mov byte ptr [ebp - 4], 0x64"], ["0x10008223", "call <OFFSET144>"], ["0x10008228", "push 0"], ["0x1000822a", "lea ecx, [ebp - 0x14]"], ["0x1000822d", "push 'Bike' (STRING)"], ["0x10008232", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008237", "mov byte ptr [ebp - 4], 0xab"], ["0x1000823b", "push eax"], ["0x1000823c", "mov ecx, dword ptr [ebp - 0xb8]"], ["0x10008242", "call MxAtomId::operator= (FUNCTION)"], ["0x10008247", "mov byte ptr [ebp - 4], 0x64"], ["0x1000824b", "call <OFFSET146>"], ["0x10008250", "push 0"], ["0x10008252", "lea ecx, [ebp - 0x14]"], ["0x10008255", "push 'Motocycle' (STRING)"], ["0x1000825a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000825f", "mov byte ptr [ebp - 4], 0xac"], ["0x10008263", "push eax"], ["0x10008264", "mov ecx, dword ptr [ebp - 0xb4]"], ["0x1000826a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000826f", "mov byte ptr [ebp - 4], 0x64"], ["0x10008273", "call <OFFSET148>"], ["0x10008278", "push 0"], ["0x1000827a", "lea ecx, [ebp - 0x14]"], ["0x1000827d", "push 'Ambulance' (STRING)"], ["0x10008282", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008287", "mov byte ptr [ebp - 4], 0xad"], ["0x1000828b", "push eax"], ["0x1000828c", "mov ecx, dword ptr [ebp - 0xb0]"], ["0x10008292", "call MxAtomId::operator= (FUNCTION)"], ["0x10008297", "mov byte ptr [ebp - 4], 0x64"], ["0x1000829b", "call <OFFSET150>"], ["0x100082a0", "push 0"], ["0x100082a2", "lea ecx, [ebp - 0x14]"], ["0x100082a5", "push 'AmbulanceMissionState' (STRING)"], ["0x100082aa", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100082af", "mov byte ptr [ebp - 4], 0xae"], ["0x100082b3", "push eax"], ["0x100082b4", "mov ecx, dword ptr [ebp - 0xac]"], ["0x100082ba", "call MxAtomId::operator= (FUNCTION)"], ["0x100082bf", "mov byte ptr [ebp - 4], 0x64"], ["0x100082c3", "call <OFFSET152>"], ["0x100082c8", "push 0"], ["0x100082ca", "lea ecx, [ebp - 0x14]"], ["0x100082cd", "push 'TowTrack' (STRING)"], ["0x100082d2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100082d7", "mov byte ptr [ebp - 4], 0xaf"], ["0x100082db", "push eax"], ["0x100082dc", "mov ecx, dword ptr [ebp - 0xa8]"], ["0x100082e2", "call MxAtomId::operator= (FUNCTION)"], ["0x100082e7", "mov byte ptr [ebp - 4], 0x64"], ["0x100082eb", "call <OFFSET154>"], ["0x100082f0", "push 0"], ["0x100082f2", "lea ecx, [ebp - 0x14]"], ["0x100082f5", "push 'TowTrackMissionState' (STRING)"], ["0x100082fa", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100082ff", "mov byte ptr [ebp - 4], 0xb0"], ["0x10008303", "push eax"], ["0x10008304", "mov ecx, dword ptr [ebp - 0xa4]"], ["0x1000830a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000830f", "mov byte ptr [ebp - 4], 0x64"], ["0x10008313", "call <OFFSET156>"], ["0x10008318", "push 0"], ["0x1000831a", "lea ecx, [ebp - 0x14]"], ["0x1000831d", "push <OFFSET157>"], ["0x10008322", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008327", "mov byte ptr [ebp - 4], 0xb1"], ["0x1000832b", "push eax"], ["0x1000832c", "mov ecx, dword ptr [ebp - 0xa0]"], ["0x10008332", "call MxAtomId::operator= (FUNCTION)"], ["0x10008337", "mov byte ptr [ebp - 4], 0x64"], ["0x1000833b", "call <OFFSET158>"], ["0x10008340", "push 0"], ["0x10008342", "lea ecx, [ebp - 0x14]"], ["0x10008345", "push <OFFSET159>"], ["0x1000834a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000834f", "mov byte ptr [ebp - 4], 0xb2"], ["0x10008353", "push eax"], ["0x10008354", "mov ecx, dword ptr [ebp - 0x9c]"], ["0x1000835a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000835f", "mov byte ptr [ebp - 4], 0x64"], ["0x10008363", "call <OFFSET160>"], ["0x10008368", "push 0"], ["0x1000836a", "lea ecx, [ebp - 0x14]"], ["0x1000836d", "push 'Act3Shark' (STRING)"], ["0x10008372", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008377", "mov byte ptr [ebp - 4], 0xb3"], ["0x1000837b", "push eax"], ["0x1000837c", "mov ecx, dword ptr [ebp - 0x98]"], ["0x10008382", "call MxAtomId::operator= (FUNCTION)"], ["0x10008387", "mov byte ptr [ebp - 4], 0x64"], ["0x1000838b", "call <OFFSET162>"], ["0x10008390", "push 0"], ["0x10008392", "lea ecx, [ebp - 0x14]"], ["0x10008395", "push 'BumpBouy' (STRING)"], ["0x1000839a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000839f", "mov byte ptr [ebp - 4], 0xb4"], ["0x100083a3", "push eax"], ["0x100083a4", "mov ecx, dword ptr [ebp - 0x94]"], ["0x100083aa", "call MxAtomId::operator= (FUNCTION)"], ["0x100083af", "mov byte ptr [ebp - 4], 0x64"], ["0x100083b3", "call <OFFSET164>"], ["0x100083b8", "push 0"], ["0x100083ba", "lea ecx, [ebp - 0x14]"], ["0x100083bd", "push 'Act3Actor' (STRING)"], ["0x100083c2", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100083c7", "mov byte ptr [ebp - 4], 0xb5"], ["0x100083cb", "push eax"], ["0x100083cc", "mov ecx, dword ptr [ebp - 0x90]"], ["0x100083d2", "call MxAtomId::operator= (FUNCTION)"], ["0x100083d7", "mov byte ptr [ebp - 4], 0x64"], ["0x100083db", "call <OFFSET166>"], ["0x100083e0", "push 0"], ["0x100083e2", "lea ecx, [ebp - 0x14]"], ["0x100083e5", "push 'JetskiRaceState' (STRING)"], ["0x100083ea", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100083ef", "mov byte ptr [ebp - 4], 0xb6"], ["0x100083f3", "push eax"], ["0x100083f4", "mov ecx, dword ptr [ebp - 0x8c]"], ["0x100083fa", "call MxAtomId::operator= (FUNCTION)"], ["0x100083ff", "mov byte ptr [ebp - 4], 0x64"], ["0x10008403", "call <OFFSET168>"], ["0x10008408", "push 0"], ["0x1000840a", "lea ecx, [ebp - 0x14]"], ["0x1000840d", "push 'CarRaceState' (STRING)"], ["0x10008412", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008417", "mov byte ptr [ebp - 4], 0xb7"], ["0x1000841b", "push eax"], ["0x1000841c", "mov ecx, dword ptr [ebp - 0x88]"], ["0x10008422", "call MxAtomId::operator= (FUNCTION)"], ["0x10008427", "mov byte ptr [ebp - 4], 0x64"], ["0x1000842b", "call <OFFSET170>"], ["0x10008430", "push 0"], ["0x10008432", "lea ecx, [ebp - 0x14]"], ["0x10008435", "push 'Act1State' (STRING)"], ["0x1000843a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000843f", "mov byte ptr [ebp - 4], 0xb8"], ["0x10008443", "push eax"], ["0x10008444", "mov ecx, dword ptr [ebp - 0x84]"], ["0x1000844a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000844f", "mov byte ptr [ebp - 4], 0x64"], ["0x10008453", "call <OFFSET172>"], ["0x10008458", "push 0"], ["0x1000845a", "lea ecx, [ebp - 0x14]"], ["0x1000845d", "push 'Pizzeria' (STRING)"], ["0x10008462", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008467", "mov byte ptr [ebp - 4], 0xb9"], ["0x1000846b", "push eax"], ["0x1000846c", "mov ecx, dword ptr [ebp - 0x80]"], ["0x1000846f", "call MxAtomId::operator= (FUNCTION)"], ["0x10008474", "mov byte ptr [ebp - 4], 0x64"], ["0x10008478", "call <OFFSET174>"], ["0x1000847d", "push 0"], ["0x1000847f", "lea ecx, [ebp - 0x14]"], ["0x10008482", "push 'PizzeriaState' (STRING)"], ["0x10008487", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000848c", "mov byte ptr [ebp - 4], 0xba"], ["0x10008490", "push eax"], ["0x10008491", "mov ecx, dword ptr [ebp - 0x7c]"], ["0x10008494", "call MxAtomId::operator= (FUNCTION)"], ["0x10008499", "mov byte ptr [ebp - 4], 0x64"], ["0x1000849d", "call <OFFSET176>"], ["0x100084a2", "push 0"], ["0x100084a4", "lea ecx, [ebp - 0x14]"], ["0x100084a7", "push 'InfoCenterEntity' (STRING)"], ["0x100084ac", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100084b1", "mov byte ptr [ebp - 4], 0xbb"], ["0x100084b5", "push eax"], ["0x100084b6", "mov ecx, dword ptr [ebp - 0x78]"], ["0x100084b9", "call MxAtomId::operator= (FUNCTION)"], ["0x100084be", "mov byte ptr [ebp - 4], 0x64"], ["0x100084c2", "call <OFFSET178>"], ["0x100084c7", "push 0"], ["0x100084c9", "lea ecx, [ebp - 0x14]"], ["0x100084cc", "push 'HospitalEntity' (STRING)"], ["0x100084d1", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100084d6", "mov byte ptr [ebp - 4], 0xbc"], ["0x100084da", "push eax"], ["0x100084db", "mov ecx, dword ptr [ebp - 0x74]"], ["0x100084de", "call MxAtomId::operator= (FUNCTION)"], ["0x100084e3", "mov byte ptr [ebp - 4], 0x64"], ["0x100084e7", "call <OFFSET180>"], ["0x100084ec", "push 0"], ["0x100084ee", "lea ecx, [ebp - 0x14]"], ["0x100084f1", "push 'GasStationEntity' (STRING)"], ["0x100084f6", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100084fb", "mov byte ptr [ebp - 4], 0xbd"], ["0x100084ff", "push eax"], ["0x10008500", "mov ecx, dword ptr [ebp - 0x70]"], ["0x10008503", "call MxAtomId::operator= (FUNCTION)"], ["0x10008508", "mov byte ptr [ebp - 4], 0x64"], ["0x1000850c", "call <OFFSET182>"], ["0x10008511", "push 0"], ["0x10008513", "lea ecx, [ebp - 0x14]"], ["0x10008516", "push 'PoliceEntity' (STRING)"], ["0x1000851b", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008520", "mov byte ptr [ebp - 4], 0xbe"], ["0x10008524", "push eax"], ["0x10008525", "mov ecx, dword ptr [ebp - 0x6c]"], ["0x10008528", "call MxAtomId::operator= (FUNCTION)"], ["0x1000852d", "mov byte ptr [ebp - 4], 0x64"], ["0x10008531", "call <OFFSET184>"], ["0x10008536", "push 0"], ["0x10008538", "lea ecx, [ebp - 0x14]"], ["0x1000853b", "push 'BeachHouseEntity' (STRING)"], ["0x10008540", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008545", "mov byte ptr [ebp - 4], 0xbf"], ["0x10008549", "push eax"], ["0x1000854a", "mov ecx, dword ptr [ebp - 0x68]"], ["0x1000854d", "call MxAtomId::operator= (FUNCTION)"], ["0x10008552", "mov byte ptr [ebp - 4], 0x64"], ["0x10008556", "call <OFFSET186>"], ["0x1000855b", "push 0"], ["0x1000855d", "lea ecx, [ebp - 0x14]"], ["0x10008560", "push 'RaceStandsEntity' (STRING)"], ["0x10008565", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000856a", "mov byte ptr [ebp - 4], 0xc0"], ["0x1000856e", "push eax"], ["0x1000856f", "mov ecx, dword ptr [ebp - 0x64]"], ["0x10008572", "call MxAtomId::operator= (FUNCTION)"], ["0x10008577", "mov byte ptr [ebp - 4], 0x64"], ["0x1000857b", "call <OFFSET188>"], ["0x10008580", "push 0"], ["0x10008582", "lea ecx, [ebp - 0x14]"], ["0x10008585", "push 'JukeBoxEntity' (STRING)"], ["0x1000858a", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000858f", "mov byte ptr [ebp - 4], 0xc1"], ["0x10008593", "push eax"], ["0x10008594", "mov ecx, dword ptr [ebp - 0x60]"], ["0x10008597", "call MxAtomId::operator= (FUNCTION)"], ["0x1000859c", "mov byte ptr [ebp - 4], 0x64"], ["0x100085a0", "call <OFFSET190>"], ["0x100085a5", "push 0"], ["0x100085a7", "lea ecx, [ebp - 0x14]"], ["0x100085aa", "push 'RadioState' (STRING)"], ["0x100085af", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100085b4", "mov byte ptr [ebp - 4], 0xc2"], ["0x100085b8", "push eax"], ["0x100085b9", "mov ecx, dword ptr [ebp - 0x5c]"], ["0x100085bc", "call MxAtomId::operator= (FUNCTION)"], ["0x100085c1", "mov byte ptr [ebp - 4], 0x64"], ["0x100085c5", "call <OFFSET192>"], ["0x100085ca", "push 0"], ["0x100085cc", "lea ecx, [ebp - 0x14]"], ["0x100085cf", "push 'CaveEntity' (STRING)"], ["0x100085d4", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100085d9", "mov byte ptr [ebp - 4], 0xc3"], ["0x100085dd", "push eax"], ["0x100085de", "mov ecx, dword ptr [ebp - 0x58]"], ["0x100085e1", "call MxAtomId::operator= (FUNCTION)"], ["0x100085e6", "mov byte ptr [ebp - 4], 0x64"], ["0x100085ea", "call <OFFSET194>"], ["0x100085ef", "push 0"], ["0x100085f1", "push 'JailEntity' (STRING)"], ["0x100085f6", "lea ecx, [ebp - 0x14]"], ["0x100085f9", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x100085fe", "mov byte ptr [ebp - 4], 0xc4"], ["0x10008602", "push eax"], ["0x10008603", "mov ecx, dword ptr [ebp - 0x54]"], ["0x10008606", "call MxAtomId::operator= (FUNCTION)"], ["0x1000860b", "mov byte ptr [ebp - 4], 0x64"], ["0x1000860f", "call <OFFSET196>"], ["0x10008614", "push 0"], ["0x10008616", "lea ecx, [ebp - 0x14]"], ["0x10008619", "push 'MxCompositeMediaPresenter' (STRING)"], ["0x1000861e", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008623", "mov byte ptr [ebp - 4], 0xc5"], ["0x10008627", "push eax"], ["0x10008628", "mov ecx, dword ptr [ebp - 0x50]"], ["0x1000862b", "call MxAtomId::operator= (FUNCTION)"], ["0x10008630", "mov byte ptr [ebp - 4], 0x64"], ["0x10008634", "call <OFFSET198>"], ["0x10008639", "push 0"], ["0x1000863b", "lea ecx, [ebp - 0x14]"], ["0x1000863e", "push 'JukeBox' (STRING)"], ["0x10008643", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008648", "mov byte ptr [ebp - 4], 0xc6"], ["0x1000864c", "push eax"], ["0x1000864d", "mov ecx, dword ptr [ebp - 0x4c]"], ["0x10008650", "call MxAtomId::operator= (FUNCTION)"], ["0x10008655", "mov byte ptr [ebp - 4], 0x64"], ["0x10008659", "call <OFFSET200>"], ["0x1000865e", "push 0"], ["0x10008660", "lea ecx, [ebp - 0x14]"], ["0x10008663", "push 'JukeBoxState' (STRING)"], ["0x10008668", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x1000866d", "mov byte ptr [ebp - 4], 0xc7"], ["0x10008671", "push eax"], ["0x10008672", "mov ecx, dword ptr [ebp - 0x48]"], ["0x10008675", "call MxAtomId::operator= (FUNCTION)"], ["0x1000867a", "mov byte ptr [ebp - 4], 0x64"], ["0x1000867e", "call <OFFSET202>"], ["0x10008683", "push 0"], ["0x10008685", "lea ecx, [ebp - 0x14]"], ["0x10008688", "push 'RaceSkel' (STRING)"], ["0x1000868d", "call MxAtomId::MxAtomId (FUNCTION)"], ["0x10008692", "mov byte ptr [ebp - 4], 0xc8"], ["0x10008696", "push eax"], ["0x10008697", "mov ecx, dword ptr [ebp - 0x44]"], ["0x1000869a", "call MxAtomId::operator= (FUNCTION)"], ["0x1000869f", "mov byte ptr [ebp - 4], 0x64"], ["0x100086a3", "call <OFFSET204>"]], "recomp": [["0x100156b4", "mov byte ptr [ebp - 4], 0x5d"], ["0x100156b8", "call <OFFSET189>"]]}, {"both": [["0x100086a8", "push 0", "0x100156bd"], ["0x100086aa", "lea ecx, [ebp - 0x14]", "0x100156bf"], ["0x100086ad", "push 'AnimState' (STRING)", "0x100156c2"], ["0x100086b2", "call MxAtomId::MxAtomId (FUNCTION)", "0x100156c7"]]}, {"orig": [["0x100086b7", "mov byte ptr [ebp - 4], 0xc9"], ["0x100086bb", "push eax"], ["0x100086bc", "mov ecx, dword ptr [ebp - 0x40]"], ["0x100086bf", "call MxAtomId::operator= (FUNCTION)"], ["0x100086c4", "mov byte ptr [ebp - 4], 0x64"], ["0x100086c8", "call <OFFSET206>"]], "recomp": [["0x100156cc", "mov byte ptr [ebp - 4], 0xba"], ["0x100156d0", "push eax"], ["0x100156d1", "mov ecx, dword ptr [ebp - 0x184]"], ["0x100156d7", "call MxAtomId::operator= (FUNCTION)"], ["0x100156dc", "mov byte ptr [ebp - 4], 0x5d"], ["0x100156e0", "call <OFFSET191>"]]}, {"both": [["0x100086cd", "mov dword ptr [ebp - 4], 0xffffffff", "0x100156e5"], ["0x100086d4", "mov eax, dword ptr [ebp - 0x10]", "0x100156ec"], ["0x100086d7", "mov ecx, dword ptr [ebp - 0xc]", "0x100156ef"]]}, {"orig": [], "recomp": [["0x100156f2", "mov dword ptr fs:[0], ecx"]]}, {"both": [["0x100086da", "pop esi", "0x100156f9"]]}, {"orig": [["0x100086db", "mov dword ptr fs:[0], ecx"]], "recomp": []}, {"both": [["0x100086e2", "mov esp, ebp", "0x100156fa"], ["0x100086e4", "pop ebp", "0x100156fc"], ["0x100086e5", "ret ", "0x100156fd"], ["0x100086e6", "lea ecx, [ebp - 0x14]", "0x100156fe"], ["0x100086e9", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015701"]]}, {"orig": [["0x100086ee", "lea ecx, [ebp - 0x14]"], ["0x100086f1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100086f6", "lea ecx, [ebp - 0x14]"], ["0x100086f9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100086fe", "lea ecx, [ebp - 0x14]"], ["0x10008701", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008706", "lea ecx, [ebp - 0x14]"], ["0x10008709", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000870e", "lea ecx, [ebp - 0x14]"], ["0x10008711", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008716", "lea ecx, [ebp - 0x14]"], ["0x10008719", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000871e", "lea ecx, [ebp - 0x14]"], ["0x10008721", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008726", "lea ecx, [ebp - 0x14]"], ["0x10008729", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000872e", "lea ecx, [ebp - 0x14]"], ["0x10008731", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008736", "lea ecx, [ebp - 0x14]"], ["0x10008739", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000873e", "lea ecx, [ebp - 0x14]"], ["0x10008741", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008746", "lea ecx, [ebp - 0x14]"], ["0x10008749", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000874e", "lea ecx, [ebp - 0x14]"], ["0x10008751", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008756", "lea ecx, [ebp - 0x14]"], ["0x10008759", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000875e", "lea ecx, [ebp - 0x14]"], ["0x10008761", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008766", "lea ecx, [ebp - 0x14]"], ["0x10008769", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000876e", "lea ecx, [ebp - 0x14]"], ["0x10008771", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008776", "lea ecx, [ebp - 0x14]"], ["0x10008779", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000877e", "lea ecx, [ebp - 0x14]"], ["0x10008781", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008786", "lea ecx, [ebp - 0x14]"], ["0x10008789", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000878e", "lea ecx, [ebp - 0x14]"], ["0x10008791", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008796", "lea ecx, [ebp - 0x14]"], ["0x10008799", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000879e", "lea ecx, [ebp - 0x14]"], ["0x100087a1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087a6", "lea ecx, [ebp - 0x14]"], ["0x100087a9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087ae", "lea ecx, [ebp - 0x14]"], ["0x100087b1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087b6", "lea ecx, [ebp - 0x14]"], ["0x100087b9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087be", "lea ecx, [ebp - 0x14]"], ["0x100087c1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087c6", "lea ecx, [ebp - 0x14]"], ["0x100087c9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087ce", "lea ecx, [ebp - 0x14]"], ["0x100087d1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087d6", "lea ecx, [ebp - 0x14]"], ["0x100087d9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087de", "lea ecx, [ebp - 0x14]"], ["0x100087e1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087e6", "lea ecx, [ebp - 0x14]"], ["0x100087e9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087ee", "lea ecx, [ebp - 0x14]"], ["0x100087f1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087f6", "lea ecx, [ebp - 0x14]"], ["0x100087f9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100087fe", "lea ecx, [ebp - 0x14]"], ["0x10008801", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008806", "lea ecx, [ebp - 0x14]"], ["0x10008809", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000880e", "lea ecx, [ebp - 0x14]"], ["0x10008811", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008816", "lea ecx, [ebp - 0x14]"], ["0x10008819", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000881e", "lea ecx, [ebp - 0x14]"], ["0x10008821", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008826", "lea ecx, [ebp - 0x14]"], ["0x10008829", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000882e", "lea ecx, [ebp - 0x14]"], ["0x10008831", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008836", "lea ecx, [ebp - 0x14]"], ["0x10008839", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000883e", "lea ecx, [ebp - 0x14]"], ["0x10008841", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008846", "lea ecx, [ebp - 0x14]"], ["0x10008849", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000884e", "lea ecx, [ebp - 0x14]"], ["0x10008851", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008856", "lea ecx, [ebp - 0x14]"], ["0x10008859", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000885e", "lea ecx, [ebp - 0x14]"], ["0x10008861", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008866", "lea ecx, [ebp - 0x14]"], ["0x10008869", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000886e", "lea ecx, [ebp - 0x14]"], ["0x10008871", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008876", "lea ecx, [ebp - 0x14]"], ["0x10008879", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000887e", "lea ecx, [ebp - 0x14]"], ["0x10008881", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008886", "lea ecx, [ebp - 0x14]"], ["0x10008889", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000888e", "lea ecx, [ebp - 0x14]"], ["0x10008891", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008896", "lea ecx, [ebp - 0x14]"], ["0x10008899", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000889e", "lea ecx, [ebp - 0x14]"], ["0x100088a1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088a6", "lea ecx, [ebp - 0x14]"], ["0x100088a9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088ae", "lea ecx, [ebp - 0x14]"], ["0x100088b1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088b6", "lea ecx, [ebp - 0x14]"], ["0x100088b9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088be", "lea ecx, [ebp - 0x14]"], ["0x100088c1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088c6", "lea ecx, [ebp - 0x14]"], ["0x100088c9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088ce", "lea ecx, [ebp - 0x14]"], ["0x100088d1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088d6", "lea ecx, [ebp - 0x14]"], ["0x100088d9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088de", "lea ecx, [ebp - 0x14]"], ["0x100088e1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088e6", "lea ecx, [ebp - 0x14]"], ["0x100088e9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088ee", "lea ecx, [ebp - 0x14]"], ["0x100088f1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088f6", "lea ecx, [ebp - 0x14]"], ["0x100088f9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100088fe", "lea ecx, [ebp - 0x14]"], ["0x10008901", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008906", "lea ecx, [ebp - 0x14]"], ["0x10008909", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000890e", "lea ecx, [ebp - 0x14]"], ["0x10008911", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008916", "lea ecx, [ebp - 0x14]"], ["0x10008919", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000891e", "lea ecx, [ebp - 0x14]"], ["0x10008921", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008926", "lea ecx, [ebp - 0x14]"], ["0x10008929", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000892e", "lea ecx, [ebp - 0x14]"], ["0x10008931", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008936", "lea ecx, [ebp - 0x14]"], ["0x10008939", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000893e", "lea ecx, [ebp - 0x14]"], ["0x10008941", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008946", "lea ecx, [ebp - 0x14]"], ["0x10008949", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000894e", "lea ecx, [ebp - 0x14]"], ["0x10008951", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008956", "lea ecx, [ebp - 0x14]"], ["0x10008959", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000895e", "lea ecx, [ebp - 0x14]"], ["0x10008961", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008966", "lea ecx, [ebp - 0x14]"], ["0x10008969", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000896e", "lea ecx, [ebp - 0x14]"], ["0x10008971", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008976", "lea ecx, [ebp - 0x14]"], ["0x10008979", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000897e", "lea ecx, [ebp - 0x14]"], ["0x10008981", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008986", "lea ecx, [ebp - 0x14]"], ["0x10008989", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000898e", "lea ecx, [ebp - 0x14]"], ["0x10008991", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008996", "lea ecx, [ebp - 0x14]"], ["0x10008999", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000899e", "lea ecx, [ebp - 0x14]"], ["0x100089a1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100089a6", "lea ecx, [ebp - 0x14]"]], "recomp": [["0x10015706", "lea ecx, [ebp - 0x18]"]]}, {"both": [["0x100089a9", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015709"], ["0x100089ae", "lea ecx, [ebp - 0x1c]", "0x1001570e"], ["0x100089b1", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015711"], ["0x100089b6", "lea ecx, [ebp - 0x20]", "0x10015716"], ["0x100089b9", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015719"], ["0x100089be", "lea ecx, [ebp - 0x24]", "0x1001571e"], ["0x100089c1", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015721"], ["0x100089c6", "lea ecx, [ebp - 0x28]", "0x10015726"], ["0x100089c9", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015729"], ["0x100089ce", "lea ecx, [ebp - 0x2c]", "0x1001572e"], ["0x100089d1", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015731"], ["0x100089d6", "lea ecx, [ebp - 0x30]", "0x10015736"], ["0x100089d9", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015739"]]}, {"orig": [["0x100089de", "lea ecx, [ebp - 0x18]"], ["0x100089e1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100089e6", "lea ecx, [ebp - 0x18]"], ["0x100089e9", "jmp MxAtomId::~MxAtomId (FUNCTION)"]], "recomp": []}, {"both": [["0x100089ee", "lea ecx, [ebp - 0x34]", "0x1001573e"], ["0x100089f1", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015741"], ["0x100089f6", "lea ecx, [ebp - 0x38]", "0x10015746"], ["0x100089f9", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015749"], ["0x100089fe", "lea ecx, [ebp - 0x3c]", "0x1001574e"], ["0x10008a01", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015751"]]}, {"orig": [["0x10008a06", "lea ecx, [ebp - 0x3c]"], ["0x10008a09", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008a0e", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10008a11", "add ecx, 0x1c4"], ["0x10008a17", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008a1c", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10008a1f", "add ecx, 0x1c0"], ["0x10008a25", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008a2a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10008a2d", "add ecx, 0x1bc"], ["0x10008a33", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008a38", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10008a3b", "add ecx, 0x1b8"], ["0x10008a41", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008a46", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10008a49", "add ecx, 0x1b4"], ["0x10008a4f", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008a54", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10008a57", "add ecx, 0x1b0"], ["0x10008a5d", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10008a62", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10008a65", "add ecx, 0x1ac"]], "recomp": [["0x10015756", "lea ecx, [ebp - 0x40]"], ["0x10015759", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001575e", "lea ecx, [ebp - 0x44]"], ["0x10015761", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015766", "lea ecx, [ebp - 0x48]"], ["0x10015769", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001576e", "lea ecx, [ebp - 0x4c]"], ["0x10015771", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015776", "lea ecx, [ebp - 0x50]"], ["0x10015779", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001577e", "lea ecx, [ebp - 0x54]"], ["0x10015781", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015786", "lea ecx, [ebp - 0x58]"], ["0x10015789", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001578e", "lea ecx, [ebp - 0x5c]"], ["0x10015791", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015796", "lea ecx, [ebp - 0x60]"], ["0x10015799", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001579e", "lea ecx, [ebp - 0x64]"], ["0x100157a1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157a6", "lea ecx, [ebp - 0x68]"], ["0x100157a9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157ae", "lea ecx, [ebp - 0x6c]"], ["0x100157b1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157b6", "lea ecx, [ebp - 0x70]"], ["0x100157b9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157be", "lea ecx, [ebp - 0x74]"], ["0x100157c1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157c6", "lea ecx, [ebp - 0x78]"], ["0x100157c9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157ce", "lea ecx, [ebp - 0x7c]"], ["0x100157d1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157d6", "lea ecx, [ebp - 0x80]"], ["0x100157d9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157de", "lea ecx, [ebp - 0x84]"], ["0x100157e4", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157e9", "lea ecx, [ebp - 0x88]"], ["0x100157ef", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157f4", "lea ecx, [ebp - 0x8c]"], ["0x100157fa", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100157ff", "lea ecx, [ebp - 0x90]"], ["0x10015805", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001580a", "lea ecx, [ebp - 0x94]"], ["0x10015810", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015815", "lea ecx, [ebp - 0x98]"], ["0x1001581b", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015820", "lea ecx, [ebp - 0x9c]"], ["0x10015826", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001582b", "lea ecx, [ebp - 0xa0]"], ["0x10015831", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015836", "lea ecx, [ebp - 0xa4]"], ["0x1001583c", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015841", "lea ecx, [ebp - 0xa8]"], ["0x10015847", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001584c", "lea ecx, [ebp - 0xac]"], ["0x10015852", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015857", "lea ecx, [ebp - 0xb0]"], ["0x1001585d", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015862", "lea ecx, [ebp - 0xb4]"], ["0x10015868", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001586d", "lea ecx, [ebp - 0xb8]"], ["0x10015873", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015878", "lea ecx, [ebp - 0xbc]"], ["0x1001587e", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015883", "lea ecx, [ebp - 0xc0]"], ["0x10015889", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001588e", "lea ecx, [ebp - 0xc4]"], ["0x10015894", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015899", "lea ecx, [ebp - 0xc8]"], ["0x1001589f", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100158a4", "lea ecx, [ebp - 0xcc]"], ["0x100158aa", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100158af", "lea ecx, [ebp - 0xd0]"], ["0x100158b5", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100158ba", "lea ecx, [ebp - 0xd4]"], ["0x100158c0", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100158c5", "lea ecx, [ebp - 0xd8]"], ["0x100158cb", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100158d0", "lea ecx, [ebp - 0xdc]"], ["0x100158d6", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100158db", "lea ecx, [ebp - 0xe0]"], ["0x100158e1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100158e6", "lea ecx, [ebp - 0xe4]"], ["0x100158ec", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100158f1", "lea ecx, [ebp - 0xe8]"], ["0x100158f7", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100158fc", "lea ecx, [ebp - 0xec]"], ["0x10015902", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015907", "lea ecx, [ebp - 0xf0]"], ["0x1001590d", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015912", "lea ecx, [ebp - 0xf4]"], ["0x10015918", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001591d", "lea ecx, [ebp - 0xf8]"], ["0x10015923", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015928", "lea ecx, [ebp - 0xfc]"], ["0x1001592e", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015933", "lea ecx, [ebp - 0x100]"], ["0x10015939", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001593e", "lea ecx, [ebp - 0x104]"], ["0x10015944", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015949", "lea ecx, [ebp - 0x108]"], ["0x1001594f", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015954", "lea ecx, [ebp - 0x10c]"], ["0x1001595a", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001595f", "lea ecx, [ebp - 0x110]"], ["0x10015965", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001596a", "lea ecx, [ebp - 0x114]"], ["0x10015970", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015975", "lea ecx, [ebp - 0x118]"], ["0x1001597b", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015980", "lea ecx, [ebp - 0x11c]"], ["0x10015986", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001598b", "lea ecx, [ebp - 0x120]"], ["0x10015991", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015996", "lea ecx, [ebp - 0x124]"], ["0x1001599c", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100159a1", "lea ecx, [ebp - 0x128]"], ["0x100159a7", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100159ac", "lea ecx, [ebp - 0x12c]"], ["0x100159b2", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100159b7", "lea ecx, [ebp - 0x130]"], ["0x100159bd", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100159c2", "lea ecx, [ebp - 0x134]"], ["0x100159c8", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100159cd", "lea ecx, [ebp - 0x138]"], ["0x100159d3", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100159d8", "lea ecx, [ebp - 0x13c]"], ["0x100159de", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100159e3", "lea ecx, [ebp - 0x140]"], ["0x100159e9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100159ee", "lea ecx, [ebp - 0x144]"], ["0x100159f4", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100159f9", "lea ecx, [ebp - 0x148]"], ["0x100159ff", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a04", "lea ecx, [ebp - 0x14c]"], ["0x10015a0a", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a0f", "lea ecx, [ebp - 0x150]"], ["0x10015a15", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a1a", "lea ecx, [ebp - 0x154]"], ["0x10015a20", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a25", "lea ecx, [ebp - 0x158]"], ["0x10015a2b", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a30", "lea ecx, [ebp - 0x15c]"], ["0x10015a36", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a3b", "lea ecx, [ebp - 0x160]"], ["0x10015a41", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a46", "lea ecx, [ebp - 0x164]"], ["0x10015a4c", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a51", "lea ecx, [ebp - 0x168]"], ["0x10015a57", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a5c", "lea ecx, [ebp - 0x16c]"], ["0x10015a62", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a67", "lea ecx, [ebp - 0x170]"], ["0x10015a6d", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a72", "lea ecx, [ebp - 0x174]"], ["0x10015a78", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a7d", "lea ecx, [ebp - 0x178]"], ["0x10015a83", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a88", "lea ecx, [ebp - 0x17c]"], ["0x10015a8e", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a93", "lea ecx, [ebp - 0x180]"], ["0x10015a99", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015a9e", "lea ecx, [ebp - 0x180]"]]}, {"both": [["0x10008a6b", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015aa4"], ["0x10008a70", "mov ecx, dword ptr [ebp - 0x10]", "0x10015aa9"], ["0x10008a73", "add ecx, 0x1a8", "0x10015aac"], ["0x10008a79", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015ab2"], ["0x10008a7e", "mov ecx, dword ptr [ebp - 0x10]", "0x10015ab7"], ["0x10008a81", "add ecx, 0x1a4", "0x10015aba"], ["0x10008a87", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015ac0"], ["0x10008a8c", "mov ecx, dword ptr [ebp - 0x10]", "0x10015ac5"], ["0x10008a8f", "add ecx, 0x1a0", "0x10015ac8"], ["0x10008a95", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015ace"]]}]], ["@@ -0x10008e2b,10 +0x10015e64,78 @@", [{"both": [["0x10008e2b", "add ecx, 0x98", "0x10015e64"], ["0x10008e31", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015e6a"], ["0x10008e36", "mov ecx, dword ptr [ebp - 0x10]", "0x10015e6f"], ["0x10008e39", "add ecx, 0x94", "0x10015e72"], ["0x10008e3f", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015e78"], ["0x10008e44", "mov ecx, dword ptr [ebp - 0x10]", "0x10015e7d"], ["0x10008e47", "add ecx, 0x90", "0x10015e80"], ["0x10008e4d", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10015e86"], ["0x10008e52", "mov ecx, dword ptr [ebp - 0x10]", "0x10015e8b"], ["0x10008e55", "add ecx, 0x8c", "0x10015e8e"]]}, {"orig": [], "recomp": [["0x10015e94", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015e99", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015e9c", "add ecx, 0x88"], ["0x10015ea2", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015ea7", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015eaa", "add ecx, 0x84"], ["0x10015eb0", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015eb5", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015eb8", "add ecx, 0x80"], ["0x10015ebe", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015ec3", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015ec6", "add ecx, 0x7c"], ["0x10015ec9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015ece", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015ed1", "add ecx, 0x78"], ["0x10015ed4", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015ed9", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015edc", "add ecx, 0x74"], ["0x10015edf", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015ee4", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015ee7", "add ecx, 0x70"], ["0x10015eea", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015eef", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015ef2", "add ecx, 0x6c"], ["0x10015ef5", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015efa", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015efd", "add ecx, 0x68"], ["0x10015f00", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f05", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f08", "add ecx, 0x64"], ["0x10015f0b", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f10", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f13", "add ecx, 0x60"], ["0x10015f16", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f1b", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f1e", "add ecx, 0x5c"], ["0x10015f21", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f26", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f29", "add ecx, 0x58"], ["0x10015f2c", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f31", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f34", "add ecx, 0x54"], ["0x10015f37", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f3c", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f3f", "add ecx, 0x50"], ["0x10015f42", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f47", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f4a", "add ecx, 0x4c"], ["0x10015f4d", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f52", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f55", "add ecx, 0x48"], ["0x10015f58", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f5d", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f60", "add ecx, 0x44"], ["0x10015f63", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f68", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f6b", "add ecx, 0x40"], ["0x10015f6e", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f73", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f76", "add ecx, 0x3c"], ["0x10015f79", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f7e", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f81", "add ecx, 0x38"], ["0x10015f84", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10015f89", "mov eax, <OFFSET193>"], ["0x10015f8e", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10015f93", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10015f96", "jmp MxObjectFactory::~MxObjectFactory (FUNCTION)"]]}]]]}, {"address": "0x10008f70", "recomp": "0x10015fa0", "name": "MxObjectFactory::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10008f80", "recomp": "0x10015fb0", "name": "MxObjectFactory::IsA", "matching": 1.0, "diff": []}, {"address": "0x10009000", "recomp": "0x10016030", "name": "LegoObjectFactory::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10009170", "recomp": "0x100161a0", "name": "LegoObjectFactory::~LegoObjectFactory", "matching": 0.722567287784679, "diff": [["@@ -0x10009170,250 +0x100161a0,215 @@", [{"both": [["0x10009170", "mov eax, dword ptr fs:[0]", "0x100161a0"], ["0x10009176", "push ebp", "0x100161a6"], ["0x10009177", "mov ebp, esp", "0x100161a7"], ["0x10009179", "push -1", "0x100161a9"], ["0x1000917b", "push <OFFSET1>", "0x100161ab"], ["0x10009180", "push eax", "0x100161b0"], ["0x10009181", "mov dword ptr fs:[0], esp", "0x100161b1"]]}, {"orig": [["0x10009188", "mov eax, 0x63"]], "recomp": [["0x100161b8", "mov eax, 0x5c"]]}, {"both": [["0x1000918d", "sub esp, 4", "0x100161bd"], ["0x10009190", "mov dword ptr [ebp - 0x10], ecx", "0x100161c0"]]}, {"orig": [["0x10009193", "mov dword ptr [ebp - 4], 0x62"]], "recomp": [["0x100161c3", "mov dword ptr [ebp - 4], 0x5b"]]}, {"both": [["0x1000919a", "mov byte ptr [ebp - 4], al", "0x100161ca"], ["0x1000919d", "call <OFFSET2>", "0x100161cd"]]}, {"orig": [["0x100091a2", "mov byte ptr [ebp - 4], 0x62"]], "recomp": [["0x100161d2", "mov byte ptr [ebp - 4], 0x5b"]]}, {"both": [["0x100091a6", "call <OFFSET3>", "0x100161d6"]]}, {"orig": [["0x100091ab", "mov byte ptr [ebp - 4], 0x61"]], "recomp": [["0x100161db", "mov byte ptr [ebp - 4], 0x5a"]]}, {"both": [["0x100091af", "call <OFFSET4>", "0x100161df"]]}, {"orig": [["0x100091b4", "mov byte ptr [ebp - 4], 0x60"]], "recomp": [["0x100161e4", "mov byte ptr [ebp - 4], 0x59"]]}, {"both": [["0x100091b8", "call <OFFSET5>", "0x100161e8"]]}, {"orig": [["0x100091bd", "mov byte ptr [ebp - 4], 0x5f"]], "recomp": [["0x100161ed", "mov byte ptr [ebp - 4], 0x58"]]}, {"both": [["0x100091c1", "call <OFFSET6>", "0x100161f1"]]}, {"orig": [["0x100091c6", "mov byte ptr [ebp - 4], 0x5e"]], "recomp": [["0x100161f6", "mov byte ptr [ebp - 4], 0x57"]]}, {"both": [["0x100091ca", "call <OFFSET7>", "0x100161fa"]]}, {"orig": [["0x100091cf", "mov byte ptr [ebp - 4], 0x5d"]], "recomp": [["0x100161ff", "mov byte ptr [ebp - 4], 0x56"]]}, {"both": [["0x100091d3", "call <OFFSET8>", "0x10016203"]]}, {"orig": [["0x100091d8", "mov byte ptr [ebp - 4], 0x5c"]], "recomp": [["0x10016208", "mov byte ptr [ebp - 4], 0x55"]]}, {"both": [["0x100091dc", "call <OFFSET9>", "0x1001620c"]]}, {"orig": [["0x100091e1", "mov byte ptr [ebp - 4], 0x5b"]], "recomp": [["0x10016211", "mov byte ptr [ebp - 4], 0x54"]]}, {"both": [["0x100091e5", "call <OFFSET10>", "0x10016215"]]}, {"orig": [["0x100091ea", "mov byte ptr [ebp - 4], 0x5a"]], "recomp": [["0x1001621a", "mov byte ptr [ebp - 4], 0x53"]]}, {"both": [["0x100091ee", "call <OFFSET11>", "0x1001621e"]]}, {"orig": [["0x100091f3", "mov byte ptr [ebp - 4], 0x59"]], "recomp": [["0x10016223", "mov byte ptr [ebp - 4], 0x52"]]}, {"both": [["0x100091f7", "call <OFFSET12>", "0x10016227"]]}, {"orig": [["0x100091fc", "mov byte ptr [ebp - 4], 0x58"]], "recomp": [["0x1001622c", "mov byte ptr [ebp - 4], 0x51"]]}, {"both": [["0x10009200", "call <OFFSET13>", "0x10016230"]]}, {"orig": [["0x10009205", "mov byte ptr [ebp - 4], 0x57"]], "recomp": [["0x10016235", "mov byte ptr [ebp - 4], 0x50"]]}, {"both": [["0x10009209", "call <OFFSET14>", "0x10016239"]]}, {"orig": [["0x1000920e", "mov byte ptr [ebp - 4], 0x56"]], "recomp": [["0x1001623e", "mov byte ptr [ebp - 4], 0x4f"]]}, {"both": [["0x10009212", "call <OFFSET15>", "0x10016242"]]}, {"orig": [["0x10009217", "mov byte ptr [ebp - 4], 0x55"]], "recomp": [["0x10016247", "mov byte ptr [ebp - 4], 0x4e"]]}, {"both": [["0x1000921b", "call <OFFSET16>", "0x1001624b"]]}, {"orig": [["0x10009220", "mov byte ptr [ebp - 4], 0x54"]], "recomp": [["0x10016250", "mov byte ptr [ebp - 4], 0x4d"]]}, {"both": [["0x10009224", "call <OFFSET17>", "0x10016254"]]}, {"orig": [["0x10009229", "mov byte ptr [ebp - 4], 0x53"]], "recomp": [["0x10016259", "mov byte ptr [ebp - 4], 0x4c"]]}, {"both": [["0x1000922d", "call <OFFSET18>", "0x1001625d"]]}, {"orig": [["0x10009232", "mov byte ptr [ebp - 4], 0x52"]], "recomp": [["0x10016262", "mov byte ptr [ebp - 4], 0x4b"]]}, {"both": [["0x10009236", "call <OFFSET19>", "0x10016266"]]}, {"orig": [["0x1000923b", "mov byte ptr [ebp - 4], 0x51"]], "recomp": [["0x1001626b", "mov byte ptr [ebp - 4], 0x4a"]]}, {"both": [["0x1000923f", "call <OFFSET20>", "0x1001626f"]]}, {"orig": [["0x10009244", "mov byte ptr [ebp - 4], 0x50"]], "recomp": [["0x10016274", "mov byte ptr [ebp - 4], 0x49"]]}, {"both": [["0x10009248", "call <OFFSET21>", "0x10016278"]]}, {"orig": [["0x1000924d", "mov byte ptr [ebp - 4], 0x4f"]], "recomp": [["0x1001627d", "mov byte ptr [ebp - 4], 0x48"]]}, {"both": [["0x10009251", "call <OFFSET22>", "0x10016281"]]}, {"orig": [["0x10009256", "mov byte ptr [ebp - 4], 0x4e"]], "recomp": [["0x10016286", "mov byte ptr [ebp - 4], 0x47"]]}, {"both": [["0x1000925a", "call <OFFSET23>", "0x1001628a"]]}, {"orig": [["0x1000925f", "mov byte ptr [ebp - 4], 0x4d"]], "recomp": [["0x1001628f", "mov byte ptr [ebp - 4], 0x46"]]}, {"both": [["0x10009263", "call <OFFSET24>", "0x10016293"]]}, {"orig": [["0x10009268", "mov byte ptr [ebp - 4], 0x4c"]], "recomp": [["0x10016298", "mov byte ptr [ebp - 4], 0x45"]]}, {"both": [["0x1000926c", "call <OFFSET25>", "0x1001629c"]]}, {"orig": [["0x10009271", "mov byte ptr [ebp - 4], 0x4b"]], "recomp": [["0x100162a1", "mov byte ptr [ebp - 4], 0x44"]]}, {"both": [["0x10009275", "call <OFFSET26>", "0x100162a5"]]}, {"orig": [["0x1000927a", "mov byte ptr [ebp - 4], 0x4a"]], "recomp": [["0x100162aa", "mov byte ptr [ebp - 4], 0x43"]]}, {"both": [["0x1000927e", "call <OFFSET27>", "0x100162ae"]]}, {"orig": [["0x10009283", "mov byte ptr [ebp - 4], 0x49"]], "recomp": [["0x100162b3", "mov byte ptr [ebp - 4], 0x42"]]}, {"both": [["0x10009287", "call <OFFSET28>", "0x100162b7"]]}, {"orig": [["0x1000928c", "mov byte ptr [ebp - 4], 0x48"]], "recomp": [["0x100162bc", "mov byte ptr [ebp - 4], 0x41"]]}, {"both": [["0x10009290", "call <OFFSET29>", "0x100162c0"]]}, {"orig": [["0x10009295", "mov byte ptr [ebp - 4], 0x47"]], "recomp": [["0x100162c5", "mov byte ptr [ebp - 4], 0x40"]]}, {"both": [["0x10009299", "call <OFFSET30>", "0x100162c9"]]}, {"orig": [["0x1000929e", "mov byte ptr [ebp - 4], 0x46"]], "recomp": [["0x100162ce", "mov byte ptr [ebp - 4], 0x3f"]]}, {"both": [["0x100092a2", "call <OFFSET31>", "0x100162d2"]]}, {"orig": [["0x100092a7", "mov byte ptr [ebp - 4], 0x45"]], "recomp": [["0x100162d7", "mov byte ptr [ebp - 4], 0x3e"]]}, {"both": [["0x100092ab", "call <OFFSET32>", "0x100162db"]]}, {"orig": [["0x100092b0", "mov byte ptr [ebp - 4], 0x44"]], "recomp": [["0x100162e0", "mov byte ptr [ebp - 4], 0x3d"]]}, {"both": [["0x100092b4", "call <OFFSET33>", "0x100162e4"]]}, {"orig": [["0x100092b9", "mov byte ptr [ebp - 4], 0x43"]], "recomp": [["0x100162e9", "mov byte ptr [ebp - 4], 0x3c"]]}, {"both": [["0x100092bd", "call <OFFSET34>", "0x100162ed"]]}, {"orig": [["0x100092c2", "mov byte ptr [ebp - 4], 0x42"]], "recomp": [["0x100162f2", "mov byte ptr [ebp - 4], 0x3b"]]}, {"both": [["0x100092c6", "call <OFFSET35>", "0x100162f6"]]}, {"orig": [["0x100092cb", "mov byte ptr [ebp - 4], 0x41"]], "recomp": [["0x100162fb", "mov byte ptr [ebp - 4], 0x3a"]]}, {"both": [["0x100092cf", "call <OFFSET36>", "0x100162ff"]]}, {"orig": [["0x100092d4", "mov byte ptr [ebp - 4], 0x40"]], "recomp": [["0x10016304", "mov byte ptr [ebp - 4], 0x39"]]}, {"both": [["0x100092d8", "call <OFFSET37>", "0x10016308"]]}, {"orig": [["0x100092dd", "mov byte ptr [ebp - 4], 0x3f"]], "recomp": [["0x1001630d", "mov byte ptr [ebp - 4], 0x38"]]}, {"both": [["0x100092e1", "call <OFFSET38>", "0x10016311"]]}, {"orig": [["0x100092e6", "mov byte ptr [ebp - 4], 0x3e"]], "recomp": [["0x10016316", "mov byte ptr [ebp - 4], 0x37"]]}, {"both": [["0x100092ea", "call <OFFSET39>", "0x1001631a"]]}, {"orig": [["0x100092ef", "mov byte ptr [ebp - 4], 0x3d"]], "recomp": [["0x1001631f", "mov byte ptr [ebp - 4], 0x36"]]}, {"both": [["0x100092f3", "call <OFFSET40>", "0x10016323"]]}, {"orig": [["0x100092f8", "mov byte ptr [ebp - 4], 0x3c"]], "recomp": [["0x10016328", "mov byte ptr [ebp - 4], 0x35"]]}, {"both": [["0x100092fc", "call <OFFSET41>", "0x1001632c"]]}, {"orig": [["0x10009301", "mov byte ptr [ebp - 4], 0x3b"]], "recomp": [["0x10016331", "mov byte ptr [ebp - 4], 0x34"]]}, {"both": [["0x10009305", "call <OFFSET42>", "0x10016335"]]}, {"orig": [["0x1000930a", "mov byte ptr [ebp - 4], 0x3a"]], "recomp": [["0x1001633a", "mov byte ptr [ebp - 4], 0x33"]]}, {"both": [["0x1000930e", "call <OFFSET43>", "0x1001633e"]]}, {"orig": [["0x10009313", "mov byte ptr [ebp - 4], 0x39"]], "recomp": [["0x10016343", "mov byte ptr [ebp - 4], 0x32"]]}, {"both": [["0x10009317", "call <OFFSET44>", "0x10016347"]]}, {"orig": [["0x1000931c", "mov byte ptr [ebp - 4], 0x38"]], "recomp": [["0x1001634c", "mov byte ptr [ebp - 4], 0x31"]]}, {"both": [["0x10009320", "call <OFFSET45>", "0x10016350"]]}, {"orig": [["0x10009325", "mov byte ptr [ebp - 4], 0x37"]], "recomp": [["0x10016355", "mov byte ptr [ebp - 4], 0x30"]]}, {"both": [["0x10009329", "call <OFFSET46>", "0x10016359"]]}, {"orig": [["0x1000932e", "mov byte ptr [ebp - 4], 0x36"]], "recomp": [["0x1001635e", "mov byte ptr [ebp - 4], 0x2f"]]}, {"both": [["0x10009332", "call <OFFSET47>", "0x10016362"]]}, {"orig": [["0x10009337", "mov byte ptr [ebp - 4], 0x35"]], "recomp": [["0x10016367", "mov byte ptr [ebp - 4], 0x2e"]]}, {"both": [["0x1000933b", "call <OFFSET48>", "0x1001636b"]]}, {"orig": [["0x10009340", "mov byte ptr [ebp - 4], 0x34"]], "recomp": [["0x10016370", "mov byte ptr [ebp - 4], 0x2d"]]}, {"both": [["0x10009344", "call <OFFSET49>", "0x10016374"]]}, {"orig": [["0x10009349", "mov byte ptr [ebp - 4], 0x33"]], "recomp": [["0x10016379", "mov byte ptr [ebp - 4], 0x2c"]]}, {"both": [["0x1000934d", "call <OFFSET50>", "0x1001637d"]]}, {"orig": [["0x10009352", "mov byte ptr [ebp - 4], 0x32"]], "recomp": [["0x10016382", "mov byte ptr [ebp - 4], 0x2b"]]}, {"both": [["0x10009356", "call <OFFSET51>", "0x10016386"]]}, {"orig": [["0x1000935b", "mov byte ptr [ebp - 4], 0x31"]], "recomp": [["0x1001638b", "mov byte ptr [ebp - 4], 0x2a"]]}, {"both": [["0x1000935f", "call <OFFSET52>", "0x1001638f"]]}, {"orig": [["0x10009364", "mov byte ptr [ebp - 4], 0x30"]], "recomp": [["0x10016394", "mov byte ptr [ebp - 4], 0x29"]]}, {"both": [["0x10009368", "call <OFFSET53>", "0x10016398"]]}, {"orig": [["0x1000936d", "mov byte ptr [ebp - 4], 0x2f"]], "recomp": [["0x1001639d", "mov byte ptr [ebp - 4], 0x28"]]}, {"both": [["0x10009371", "call <OFFSET54>", "0x100163a1"]]}, {"orig": [["0x10009376", "mov byte ptr [ebp - 4], 0x2e"]], "recomp": [["0x100163a6", "mov byte ptr [ebp - 4], 0x27"]]}, {"both": [["0x1000937a", "call <OFFSET55>", "0x100163aa"]]}, {"orig": [["0x1000937f", "mov byte ptr [ebp - 4], 0x2d"]], "recomp": [["0x100163af", "mov byte ptr [ebp - 4], 0x26"]]}, {"both": [["0x10009383", "call <OFFSET56>", "0x100163b3"]]}, {"orig": [["0x10009388", "mov byte ptr [ebp - 4], 0x2c"]], "recomp": [["0x100163b8", "mov byte ptr [ebp - 4], 0x25"]]}, {"both": [["0x1000938c", "call <OFFSET57>", "0x100163bc"]]}, {"orig": [["0x10009391", "mov byte ptr [ebp - 4], 0x2b"]], "recomp": [["0x100163c1", "mov byte ptr [ebp - 4], 0x24"]]}, {"both": [["0x10009395", "call <OFFSET58>", "0x100163c5"]]}, {"orig": [["0x1000939a", "mov byte ptr [ebp - 4], 0x2a"]], "recomp": [["0x100163ca", "mov byte ptr [ebp - 4], 0x23"]]}, {"both": [["0x1000939e", "call <OFFSET59>", "0x100163ce"]]}, {"orig": [["0x100093a3", "mov byte ptr [ebp - 4], 0x29"]], "recomp": [["0x100163d3", "mov byte ptr [ebp - 4], 0x22"]]}, {"both": [["0x100093a7", "call <OFFSET60>", "0x100163d7"]]}, {"orig": [["0x100093ac", "mov byte ptr [ebp - 4], 0x28"]], "recomp": [["0x100163dc", "mov byte ptr [ebp - 4], 0x21"]]}, {"both": [["0x100093b0", "call <OFFSET61>", "0x100163e0"]]}, {"orig": [["0x100093b5", "mov byte ptr [ebp - 4], 0x27"]], "recomp": [["0x100163e5", "mov byte ptr [ebp - 4], 0x20"]]}, {"both": [["0x100093b9", "call <OFFSET62>", "0x100163e9"]]}, {"orig": [["0x100093be", "mov byte ptr [ebp - 4], 0x26"]], "recomp": [["0x100163ee", "mov byte ptr [ebp - 4], 0x1f"]]}, {"both": [["0x100093c2", "call <OFFSET63>", "0x100163f2"]]}, {"orig": [["0x100093c7", "mov byte ptr [ebp - 4], 0x25"]], "recomp": [["0x100163f7", "mov byte ptr [ebp - 4], 0x1e"]]}, {"both": [["0x100093cb", "call <OFFSET64>", "0x100163fb"]]}, {"orig": [["0x100093d0", "mov byte ptr [ebp - 4], 0x24"]], "recomp": [["0x10016400", "mov byte ptr [ebp - 4], 0x1d"]]}, {"both": [["0x100093d4", "call <OFFSET65>", "0x10016404"]]}, {"orig": [["0x100093d9", "mov byte ptr [ebp - 4], 0x23"]], "recomp": [["0x10016409", "mov byte ptr [ebp - 4], 0x1c"]]}, {"both": [["0x100093dd", "call <OFFSET66>", "0x1001640d"]]}, {"orig": [["0x100093e2", "mov byte ptr [ebp - 4], 0x22"]], "recomp": [["0x10016412", "mov byte ptr [ebp - 4], 0x1b"]]}, {"both": [["0x100093e6", "call <OFFSET67>", "0x10016416"]]}, {"orig": [["0x100093eb", "mov byte ptr [ebp - 4], 0x21"]], "recomp": [["0x1001641b", "mov byte ptr [ebp - 4], 0x1a"]]}, {"both": [["0x100093ef", "call <OFFSET68>", "0x1001641f"]]}, {"orig": [["0x100093f4", "mov byte ptr [ebp - 4], 0x20"]], "recomp": [["0x10016424", "mov byte ptr [ebp - 4], 0x19"]]}, {"both": [["0x100093f8", "call <OFFSET69>", "0x10016428"]]}, {"orig": [["0x100093fd", "mov byte ptr [ebp - 4], 0x1f"]], "recomp": [["0x1001642d", "mov byte ptr [ebp - 4], 0x18"]]}, {"both": [["0x10009401", "call <OFFSET70>", "0x10016431"]]}, {"orig": [["0x10009406", "mov byte ptr [ebp - 4], 0x1e"]], "recomp": [["0x10016436", "mov byte ptr [ebp - 4], 0x17"]]}, {"both": [["0x1000940a", "call <OFFSET71>", "0x1001643a"]]}, {"orig": [["0x1000940f", "mov byte ptr [ebp - 4], 0x1d"]], "recomp": [["0x1001643f", "mov byte ptr [ebp - 4], 0x16"]]}, {"both": [["0x10009413", "call <OFFSET72>", "0x10016443"]]}, {"orig": [["0x10009418", "mov byte ptr [ebp - 4], 0x1c"]], "recomp": [["0x10016448", "mov byte ptr [ebp - 4], 0x15"]]}, {"both": [["0x1000941c", "call <OFFSET73>", "0x1001644c"]]}, {"orig": [["0x10009421", "mov byte ptr [ebp - 4], 0x1b"]], "recomp": [["0x10016451", "mov byte ptr [ebp - 4], 0x14"]]}, {"both": [["0x10009425", "call <OFFSET74>", "0x10016455"]]}, {"orig": [["0x1000942a", "mov byte ptr [ebp - 4], 0x1a"]], "recomp": [["0x1001645a", "mov byte ptr [ebp - 4], 0x13"]]}, {"both": [["0x1000942e", "call <OFFSET75>", "0x1001645e"]]}, {"orig": [["0x10009433", "mov byte ptr [ebp - 4], 0x19"]], "recomp": [["0x10016463", "mov byte ptr [ebp - 4], 0x12"]]}, {"both": [["0x10009437", "call <OFFSET76>", "0x10016467"]]}, {"orig": [["0x1000943c", "mov byte ptr [ebp - 4], 0x18"]], "recomp": [["0x1001646c", "mov byte ptr [ebp - 4], 0x11"]]}, {"both": [["0x10009440", "call <OFFSET77>", "0x10016470"]]}, {"orig": [["0x10009445", "mov byte ptr [ebp - 4], 0x17"]], "recomp": [["0x10016475", "mov byte ptr [ebp - 4], 0x10"]]}, {"both": [["0x10009449", "call <OFFSET78>", "0x10016479"]]}, {"orig": [["0x1000944e", "mov byte ptr [ebp - 4], 0x16"]], "recomp": [["0x1001647e", "mov byte ptr [ebp - 4], 0xf"]]}, {"both": [["0x10009452", "call <OFFSET79>", "0x10016482"]]}, {"orig": [["0x10009457", "mov byte ptr [ebp - 4], 0x15"]], "recomp": [["0x10016487", "mov byte ptr [ebp - 4], 0xe"]]}, {"both": [["0x1000945b", "call <OFFSET80>", "0x1001648b"]]}, {"orig": [["0x10009460", "mov byte ptr [ebp - 4], 0x14"]], "recomp": [["0x10016490", "mov byte ptr [ebp - 4], 0xd"]]}, {"both": [["0x10009464", "call <OFFSET81>", "0x10016494"]]}, {"orig": [["0x10009469", "mov byte ptr [ebp - 4], 0x13"]], "recomp": [["0x10016499", "mov byte ptr [ebp - 4], 0xc"]]}, {"both": [["0x1000946d", "call <OFFSET82>", "0x1001649d"]]}, {"orig": [["0x10009472", "mov byte ptr [ebp - 4], 0x12"]], "recomp": [["0x100164a2", "mov byte ptr [ebp - 4], 0xb"]]}, {"both": [["0x10009476", "call <OFFSET83>", "0x100164a6"]]}, {"orig": [["0x1000947b", "mov byte ptr [ebp - 4], 0x11"]], "recomp": [["0x100164ab", "mov byte ptr [ebp - 4], 0xa"]]}, {"both": [["0x1000947f", "call <OFFSET84>", "0x100164af"]]}, {"orig": [["0x10009484", "mov byte ptr [ebp - 4], 0x10"]], "recomp": [["0x100164b4", "mov byte ptr [ebp - 4], 9"]]}, {"both": [["0x10009488", "call <OFFSET85>", "0x100164b8"]]}, {"orig": [["0x1000948d", "mov byte ptr [ebp - 4], 0xf"]], "recomp": [["0x100164bd", "mov byte ptr [ebp - 4], 8"]]}, {"both": [["0x10009491", "call <OFFSET86>", "0x100164c1"]]}, {"orig": [["0x10009496", "mov byte ptr [ebp - 4], 0xe"]], "recomp": [["0x100164c6", "mov byte ptr [ebp - 4], 7"]]}, {"both": [["0x1000949a", "call <OFFSET87>", "0x100164ca"]]}, {"orig": [["0x1000949f", "mov byte ptr [ebp - 4], 0xd"]], "recomp": [["0x100164cf", "mov byte ptr [ebp - 4], 6"]]}, {"both": [["0x100094a3", "call <OFFSET88>", "0x100164d3"]]}, {"orig": [["0x100094a8", "mov byte ptr [ebp - 4], 0xc"]], "recomp": [["0x100164d8", "mov byte ptr [ebp - 4], 5"]]}, {"both": [["0x100094ac", "call <OFFSET89>", "0x100164dc"]]}, {"orig": [["0x100094b1", "mov byte ptr [ebp - 4], 0xb"]], "recomp": [["0x100164e1", "mov byte ptr [ebp - 4], 4"]]}, {"both": [["0x100094b5", "call <OFFSET90>", "0x100164e5"]]}, {"orig": [["0x100094ba", "mov byte ptr [ebp - 4], 0xa"]], "recomp": [["0x100164ea", "mov byte ptr [ebp - 4], 3"]]}, {"both": [["0x100094be", "call <OFFSET91>", "0x100164ee"]]}, {"orig": [["0x100094c3", "mov byte ptr [ebp - 4], 9"]], "recomp": [["0x100164f3", "mov byte ptr [ebp - 4], 2"]]}, {"both": [["0x100094c7", "call <OFFSET92>", "0x100164f7"]]}, {"orig": [["0x100094cc", "mov byte ptr [ebp - 4], 8"]], "recomp": [["0x100164fc", "mov byte ptr [ebp - 4], 1"]]}, {"both": [["0x100094d0", "call <OFFSET93>", "0x10016500"]]}, {"orig": [["0x100094d5", "mov byte ptr [ebp - 4], 7"]], "recomp": [["0x10016505", "mov byte ptr [ebp - 4], 0"]]}, {"both": [["0x100094d9", "call <OFFSET94>", "0x10016509"]]}, {"orig": [["0x100094de", "mov byte ptr [ebp - 4], 6"]], "recomp": [["0x1001650e", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x100094e2", "call <OFFSET95>", "0x10016515"]]}, {"orig": [["0x100094e7", "mov byte ptr [ebp - 4], 5"], ["0x100094eb", "call <OFFSET96>"], ["0x100094f0", "mov byte ptr [ebp - 4], 4"], ["0x100094f4", "call <OFFSET97>"], ["0x100094f9", "mov byte ptr [ebp - 4], 3"], ["0x100094fd", "call <OFFSET98>"], ["0x10009502", "mov byte ptr [ebp - 4], 2"], ["0x10009506", "call <OFFSET99>"], ["0x1000950b", "mov byte ptr [ebp - 4], 1"], ["0x1000950f", "call <OFFSET100>"], ["0x10009514", "mov byte ptr [ebp - 4], 0"], ["0x10009518", "call <OFFSET101>"], ["0x1000951d", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10009524", "call <OFFSET102>"]], "recomp": []}, {"both": [["0x10009529", "mov eax, dword ptr [ebp - 0xc]", "0x1001651a"], ["0x1000952c", "mov esp, ebp", "0x1001651d"], ["0x1000952e", "mov dword ptr fs:[0], eax", "0x1001651f"], ["0x10009534", "pop ebp", "0x10016525"], ["0x10009535", "ret ", "0x10016526"], ["0x10009536", "mov ecx, dword ptr [ebp - 0x10]", "0x10016527"]]}, {"orig": [["0x10009539", "add ecx, 0x1c4"], ["0x1000953f", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10009544", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10009547", "add ecx, 0x1c0"], ["0x1000954d", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10009552", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10009555", "add ecx, 0x1bc"], ["0x1000955b", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10009560", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10009563", "add ecx, 0x1b8"], ["0x10009569", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000956e", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10009571", "add ecx, 0x1b4"], ["0x10009577", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000957c", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000957f", "add ecx, 0x1b0"], ["0x10009585", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000958a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000958d", "add ecx, 0x1ac"], ["0x10009593", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10009598", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": []}, {"both": [["0x1000959b", "add ecx, 0x1a8", "0x1001652a"], ["0x100095a1", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10016530"], ["0x100095a6", "mov ecx, dword ptr [ebp - 0x10]", "0x10016535"], ["0x100095a9", "add ecx, 0x1a4", "0x10016538"], ["0x100095af", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x1001653e"], ["0x100095b4", "mov ecx, dword ptr [ebp - 0x10]", "0x10016543"], ["0x100095b7", "add ecx, 0x1a0", "0x10016546"], ["0x100095bd", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x1001654c"], ["0x100095c2", "mov ecx, dword ptr [ebp - 0x10]", "0x10016551"], ["0x100095c5", "add ecx, 0x19c", "0x10016554"]]}]], ["@@ -0x100099c3,10 +0x10016952,53 @@", [{"both": [["0x100099c3", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10016952"], ["0x100099c8", "mov ecx, dword ptr [ebp - 0x10]", "0x10016957"], ["0x100099cb", "add ecx, 0x74", "0x1001695a"], ["0x100099ce", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x1001695d"], ["0x100099d3", "mov ecx, dword ptr [ebp - 0x10]", "0x10016962"], ["0x100099d6", "add ecx, 0x70", "0x10016965"], ["0x100099d9", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10016968"], ["0x100099de", "mov ecx, dword ptr [ebp - 0x10]", "0x1001696d"], ["0x100099e1", "add ecx, 0x6c", "0x10016970"], ["0x100099e4", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10016973"]]}, {"orig": [], "recomp": [["0x10016978", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1001697b", "add ecx, 0x68"], ["0x1001697e", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10016983", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10016986", "add ecx, 0x64"], ["0x10016989", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1001698e", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10016991", "add ecx, 0x60"], ["0x10016994", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10016999", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1001699c", "add ecx, 0x5c"], ["0x1001699f", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100169a4", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100169a7", "add ecx, 0x58"], ["0x100169aa", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100169af", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100169b2", "add ecx, 0x54"], ["0x100169b5", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100169ba", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100169bd", "add ecx, 0x50"], ["0x100169c0", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100169c5", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100169c8", "add ecx, 0x4c"], ["0x100169cb", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100169d0", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100169d3", "add ecx, 0x48"], ["0x100169d6", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100169db", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100169de", "add ecx, 0x44"], ["0x100169e1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100169e6", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100169e9", "add ecx, 0x40"], ["0x100169ec", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100169f1", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100169f4", "add ecx, 0x3c"], ["0x100169f7", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100169fc", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100169ff", "add ecx, 0x38"], ["0x10016a02", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10016a07", "mov eax, <OFFSET97>"], ["0x10016a0c", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10016a11", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10016a14", "jmp MxObjectFactory::~MxObjectFactory (FUNCTION)"]]}]]]}, {"address": "0x10009a90", "recomp": "0x10016a20", "name": "LegoObjectFactory::Create", "matching": 0.14045307443365695, "diff": [["@@ -0x10009a90,3281 +0x10016a20,2899 @@", [{"both": [["0x10009a90", "mov eax, dword ptr fs:[0]", "0x10016a20"], ["0x10009a96", "push ebp", "0x10016a26"], ["0x10009a97", "mov ebp, esp", "0x10016a27"], ["0x10009a99", "push -1", "0x10016a29"], ["0x10009a9b", "push <OFFSET1>", "0x10016a2b"], ["0x10009aa0", "push eax", "0x10016a30"], ["0x10009aa1", "mov dword ptr fs:[0], esp", "0x10016a31"], ["0x10009aa8", "sub esp, 0x10", "0x10016a38"]]}, {"orig": [["0x10009aab", "mov dword ptr [ebp - 0x1c], 0"]], "recomp": []}, {"both": [["0x10009ab2", "push ebx", "0x10016a3b"]]}, {"orig": [["0x10009ab3", "mov eax, dword ptr [ebp + 8]"], ["0x10009ab6", "mov dword ptr [ebp - 0x14], 0"]], "recomp": []}, {"both": [["0x10009abd", "push esi", "0x10016a3c"], ["0x10009abe", "push edi", "0x10016a3d"]]}, {"orig": [["0x10009abf", "mov esi, ecx"], ["0x10009ac1", "push 0"], ["0x10009ac3", "push eax"]], "recomp": [["0x10016a3e", "xor ebx, ebx"], ["0x10016a40", "mov edi, ecx"], ["0x10016a42", "push ebx"], ["0x10016a43", "mov esi, dword ptr [ebp + 8]"]]}, {"both": [["0x10009ac4", "lea ecx, [ebp - 0x18]", "0x10016a46"]]}, {"orig": [], "recomp": [["0x10016a49", "push esi"], ["0x10016a4a", "mov dword ptr [ebp - 0x1c], ebx"]]}, {"both": [["0x10009ac7", "call MxAtomId::MxAtomId (FUNCTION)", "0x10016a4d"]]}, {"orig": [["0x10009acc", "mov dword ptr [ebp - 4], 0"], ["0x10009ad3", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009ad6", "cmp dword ptr [esi + 0x48], eax"], ["0x10009ad9", "jne 0xc3"]], "recomp": [["0x10016a52", "mov dword ptr [ebp - 4], ebx"], ["0x10016a55", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016a58", "cmp dword ptr [edi + 0x38], eax"], ["0x10016a5b", "jne 0x57"], ["0x10016a5d", "push 0x50"], ["0x10016a5f", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10016a64", "add esp, 4"], ["0x10016a67", "mov dword ptr [ebp - 0x10], eax"], ["0x10016a6a", "mov byte ptr [ebp - 4], 1"], ["0x10016a6e", "cmp eax, ebx"], ["0x10016a70", "je 0xc"], ["0x10016a72", "mov ecx, eax"], ["0x10016a74", "call LegoEntityPresenter::LegoEntityPresenter (FUNCTION)"], ["0x10016a79", "mov dword ptr [ebp - 0x14], eax"], ["0x10016a7c", "jmp 0x7"], ["0x10016a7e", "mov dword ptr [ebp - 0x14], 0"], ["0x10016a85", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016a8c", "call <OFFSET5>"], ["0x10016a91", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016a94", "mov ecx, dword ptr [ebp - 0xc]"], ["0x10016a97", "pop edi"], ["0x10016a98", "mov dword ptr fs:[0], ecx"], ["0x10016a9f", "pop esi"], ["0x10016aa0", "pop ebx"], ["0x10016aa1", "mov esp, ebp"], ["0x10016aa3", "pop ebp"], ["0x10016aa4", "ret 4"], ["0x10016aa7", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016aaa", "push eax"], ["0x10016aab", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016ab0", "add esp, 4"], ["0x10016ab3", "ret "], ["0x10016ab4", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016ab7", "cmp dword ptr [edi + 0x3c], eax"], ["0x10016aba", "jne 0x62"], ["0x10016abc", "push 0x50"], ["0x10016abe", "mov ebx, 2"], ["0x10016ac3", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10016ac8", "add esp, 4"], ["0x10016acb", "mov dword ptr [ebp - 0x10], eax"], ["0x10016ace", "mov byte ptr [ebp - 4], bl"], ["0x10016ad1", "test eax, eax"], ["0x10016ad3", "je 0x24"], ["0x10016ad5", "mov ecx, eax"], ["0x10016ad7", "call LegoEntityPresenter::LegoEntityPresenter (FUNCTION)"], ["0x10016adc", "mov byte ptr [ebp - 4], 3"], ["0x10016ae0", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016ae3", "mov byte ptr [ebp - 4], bl"], ["0x10016ae6", "mov dword ptr [ebp - 0x14], eax"], ["0x10016ae9", "mov dword ptr [eax], LegoActorPresenter::`vftable' (VTABLE)"], ["0x10016aef", "jmp 0xf"], ["0x10016af1", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10016af4", "jmp LegoEntityPresenter::~LegoEntityPresenter (FUNCTION)"], ["0x10016af9", "mov dword ptr [ebp - 0x14], 0"], ["0x10016b00", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016b07", "call <OFFSET5>"], ["0x10016b0c", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016b0f", "jmp -0x7d"], ["0x10016b11", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016b14", "push eax"], ["0x10016b15", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016b1a", "add esp, 4"], ["0x10016b1d", "ret "], ["0x10016b1e", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016b21", "cmp dword ptr [edi + 0x40], eax"], ["0x10016b24", "jne 0x49"], ["0x10016b26", "push 0x54"], ["0x10016b28", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10016b2d", "add esp, 4"], ["0x10016b30", "mov dword ptr [ebp - 0x10], eax"], ["0x10016b33", "mov byte ptr [ebp - 4], 4"], ["0x10016b37", "test eax, eax"], ["0x10016b39", "je 0xc"], ["0x10016b3b", "mov ecx, eax"], ["0x10016b3d", "call LegoWorldPresenter::LegoWorldPresenter (FUNCTION)"], ["0x10016b42", "mov dword ptr [ebp - 0x14], eax"], ["0x10016b45", "jmp 0x7"], ["0x10016b47", "mov dword ptr [ebp - 0x14], 0"], ["0x10016b4e", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016b55", "call <OFFSET5>"], ["0x10016b5a", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016b5d", "jmp -0xce"], ["0x10016b62", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016b65", "push eax"], ["0x10016b66", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016b6b", "add esp, 4"], ["0x10016b6e", "ret "], ["0x10016b6f", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016b72", "cmp dword ptr [edi + 0x44], eax"], ["0x10016b75", "jne 0x4c"], ["0x10016b77", "push 0xf8"], ["0x10016b7c", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10016b81", "add esp, 4"], ["0x10016b84", "mov dword ptr [ebp - 0x10], eax"], ["0x10016b87", "mov byte ptr [ebp - 4], 5"], ["0x10016b8b", "test eax, eax"], ["0x10016b8d", "je 0xc"], ["0x10016b8f", "mov ecx, eax"], ["0x10016b91", "call LegoWorld::LegoWorld (FUNCTION)"], ["0x10016b96", "mov dword ptr [ebp - 0x14], eax"], ["0x10016b99", "jmp 0x7"], ["0x10016b9b", "mov dword ptr [ebp - 0x14], 0"], ["0x10016ba2", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016ba9", "call <OFFSET5>"], ["0x10016bae", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016bb1", "jmp -0x122"], ["0x10016bb6", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016bb9", "push eax"], ["0x10016bba", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016bbf", "add esp, 4"], ["0x10016bc2", "ret "], ["0x10016bc3", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016bc6", "cmp dword ptr [edi + 0x48], eax"], ["0x10016bc9", "jne 0x4c"], ["0x10016bcb", "push 0xbc"], ["0x10016bd0", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10016bd5", "add esp, 4"], ["0x10016bd8", "mov dword ptr [ebp - 0x10], eax"], ["0x10016bdb", "mov byte ptr [ebp - 4], 6"], ["0x10016bdf", "test eax, eax"], ["0x10016be1", "je 0xc"], ["0x10016be3", "mov ecx, eax"], ["0x10016be5", "call LegoAnimPresenter::LegoAnimPresenter (FUNCTION)"], ["0x10016bea", "mov dword ptr [ebp - 0x14], eax"], ["0x10016bed", "jmp 0x7"], ["0x10016bef", "mov dword ptr [ebp - 0x14], 0"], ["0x10016bf6", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016bfd", "call <OFFSET5>"], ["0x10016c02", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016c05", "jmp -0x176"], ["0x10016c0a", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016c0d", "push eax"], ["0x10016c0e", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016c13", "add esp, 4"], ["0x10016c16", "ret "], ["0x10016c17", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016c1a", "cmp dword ptr [edi + 0x4c], eax"], ["0x10016c1d", "jne 0xe0"]]}, {"both": [["0x10009adf", "push 0x6c", "0x10016c23"]]}, {"orig": [["0x10009ae1", "mov ebx, 1"], ["0x10009ae6", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10009aeb", "mov dword ptr [ebp - 0x10], eax"], ["0x10009aee", "add esp, 4"], ["0x10009af1", "mov edi, eax"], ["0x10009af3", "mov byte ptr [ebp - 4], bl"], ["0x10009af6", "test edi, edi"], ["0x10009af8", "je 0x90"], ["0x10009afe", "mov ecx, edi"]], "recomp": [["0x10016c25", "mov ebx, 7"], ["0x10016c2a", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10016c2f", "add esp, 4"], ["0x10016c32", "mov dword ptr [ebp - 0x10], eax"], ["0x10016c35", "mov byte ptr [ebp - 4], bl"], ["0x10016c38", "test eax, eax"], ["0x10016c3a", "je 0x9b"], ["0x10016c40", "mov ecx, eax"]]}, {"both": [["0x10009b00", "call MxCore::MxCore (FUNCTION)", "0x10016c42"]]}, {"orig": [["0x10009b05", "mov byte ptr [ebp - 4], 2"], ["0x10009b09", "lea ecx, [edi + 0x20]"]], "recomp": [["0x10016c47", "mov byte ptr [ebp - 4], 8"], ["0x10016c4b", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10016c4e", "add ecx, 0x20"]]}, {"both": [["0x10009b0c", "call MxCriticalSection::MxCriticalSection (FUNCTION)", "0x10016c51"]]}, {"orig": [["0x10009b11", "mov byte ptr [ebp - 4], 3"], ["0x10009b15", "mov ecx, edi"], ["0x10009b17", "mov dword ptr [edi], MxPresenter::`vftable' (VTABLE)"]], "recomp": [["0x10016c56", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10016c59", "mov byte ptr [ebp - 4], 9"], ["0x10016c5d", "mov dword ptr [ecx], MxPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x10009b1d", "call MxPresenter::Init (FUNCTION)", "0x10016c63"]]}, {"orig": [["0x10009b22", "mov byte ptr [ebp - 4], 4"], ["0x10009b26", "mov ecx, edi"], ["0x10009b28", "mov dword ptr [edi], MxMediaPresenter::`vftable' (VTABLE)"]], "recomp": [["0x10016c68", "mov byte ptr [ebp - 4], 0xa"], ["0x10016c6c", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016c6f", "mov ecx, eax"], ["0x10016c71", "mov dword ptr [eax], MxMediaPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x10009b2e", "call MxMediaPresenter::Init (FUNCTION)", "0x10016c77"]]}, {"orig": [["0x10009b33", "mov byte ptr [ebp - 4], 5"], ["0x10009b37", "mov ecx, edi"], ["0x10009b39", "mov dword ptr [edi], MxVideoPresenter::`vftable' (VTABLE)"]], "recomp": [["0x10016c7c", "mov byte ptr [ebp - 4], 0xb"], ["0x10016c80", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016c83", "mov ecx, eax"], ["0x10016c85", "mov dword ptr [eax], MxVideoPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x10009b3f", "call MxVideoPresenter::Init (FUNCTION)", "0x10016c8b"]]}, {"orig": [["0x10009b44", "mov byte ptr [ebp - 4], 6"], ["0x10009b48", "mov eax, edi"], ["0x10009b4a", "mov dword ptr [edi], LegoModelPresenter::`vftable' (VTABLE)"], ["0x10009b50", "mov dword ptr [edi + 0x64], 0"], ["0x10009b57", "mov byte ptr [edi + 0x68], 0"], ["0x10009b5b", "mov byte ptr [ebp - 4], bl"], ["0x10009b5e", "jmp 0x119b"]], "recomp": [["0x10016c90", "mov byte ptr [ebp - 4], 0xc"], ["0x10016c94", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016c97", "mov byte ptr [ebp - 4], bl"], ["0x10016c9a", "mov dword ptr [ebp - 0x14], eax"], ["0x10016c9d", "mov dword ptr [eax], LegoModelPresenter::`vftable' (VTABLE)"], ["0x10016ca3", "mov dword ptr [eax + 0x64], 0"], ["0x10016caa", "mov byte ptr [eax + 0x68], 0"], ["0x10016cae", "jmp 0x32"]]}, {"both": [["0x10009b63", "mov ecx, dword ptr [ebp - 0x10]", "0x10016cb0"], ["0x10009b66", "add ecx, 0x20", "0x10016cb3"], ["0x10009b69", "jmp MxCriticalSection::~MxCriticalSection (FUNCTION)", "0x10016cb6"], ["0x10009b6e", "mov ecx, dword ptr [ebp - 0x10]", "0x10016cbb"], ["0x10009b71", "jmp MxCore::~MxCore (FUNCTION)", "0x10016cbe"], ["0x10009b76", "mov ecx, dword ptr [ebp - 0x10]", "0x10016cc3"], ["0x10009b79", "jmp MxPresenter::~MxPresenter (FUNCTION)", "0x10016cc6"], ["0x10009b7e", "mov ecx, dword ptr [ebp - 0x10]", "0x10016ccb"], ["0x10009b81", "jmp MxMediaPresenter::~MxMediaPresenter (FUNCTION)", "0x10016cce"], ["0x10009b86", "mov ecx, dword ptr [ebp - 0x10]", "0x10016cd3"], ["0x10009b89", "jmp MxVideoPresenter::~MxVideoPresenter (FUNCTION)", "0x10016cd6"]]}, {"orig": [["0x10009b8e", "xor eax, eax"], ["0x10009b90", "jmp 0x1169"], ["0x10009b95", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009b98", "push eax"], ["0x10009b99", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009b9e", "add esp, 4"], ["0x10009ba1", "ret "], ["0x10009ba2", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009ba5", "cmp dword ptr [esi + 0x4c], eax"], ["0x10009ba8", "jne 0xa2"]], "recomp": [["0x10016cdb", "mov dword ptr [ebp - 0x14], 0"], ["0x10016ce2", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016ce9", "call <OFFSET5>"], ["0x10016cee", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016cf1", "jmp -0x262"], ["0x10016cf6", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016cf9", "push eax"], ["0x10016cfa", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016cff", "add esp, 4"], ["0x10016d02", "ret "], ["0x10016d03", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016d06", "cmp dword ptr [edi + 0x50], eax"], ["0x10016d09", "jne 0xbc"]]}, {"both": [["0x10009bae", "push 0x54", "0x10016d0f"]]}, {"orig": [["0x10009bb0", "mov ebx, 7"], ["0x10009bb5", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10009bba", "mov dword ptr [ebp - 0x10], eax"], ["0x10009bbd", "add esp, 4"], ["0x10009bc0", "mov edi, eax"], ["0x10009bc2", "mov byte ptr [ebp - 4], bl"], ["0x10009bc5", "test edi, edi"], ["0x10009bc7", "je 0x73"], ["0x10009bc9", "mov ecx, edi"]], "recomp": [["0x10016d11", "mov ebx, 0xd"], ["0x10016d16", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10016d1b", "add esp, 4"], ["0x10016d1e", "mov dword ptr [ebp - 0x10], eax"], ["0x10016d21", "mov byte ptr [ebp - 4], bl"], ["0x10016d24", "test eax, eax"], ["0x10016d26", "je 0x7b"], ["0x10016d28", "mov ecx, eax"]]}, {"both": [["0x10009bcb", "call MxCore::MxCore (FUNCTION)", "0x10016d2a"]]}, {"orig": [["0x10009bd0", "mov byte ptr [ebp - 4], 8"], ["0x10009bd4", "lea ecx, [edi + 0x20]"]], "recomp": [["0x10016d2f", "mov byte ptr [ebp - 4], 0xe"], ["0x10016d33", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10016d36", "add ecx, 0x20"]]}, {"both": [["0x10009bd7", "call MxCriticalSection::MxCriticalSection (FUNCTION)", "0x10016d39"]]}, {"orig": [["0x10009bdc", "mov byte ptr [ebp - 4], 9"], ["0x10009be0", "mov ecx, edi"], ["0x10009be2", "mov dword ptr [edi], MxPresenter::`vftable' (VTABLE)"]], "recomp": [["0x10016d3e", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10016d41", "mov byte ptr [ebp - 4], 0xf"], ["0x10016d45", "mov dword ptr [ecx], MxPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x10009be8", "call MxPresenter::Init (FUNCTION)", "0x10016d4b"]]}, {"orig": [["0x10009bed", "mov byte ptr [ebp - 4], 0xa"], ["0x10009bf1", "mov ecx, edi"], ["0x10009bf3", "mov dword ptr [edi], MxMediaPresenter::`vftable' (VTABLE)"]], "recomp": [["0x10016d50", "mov byte ptr [ebp - 4], 0x10"], ["0x10016d54", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016d57", "mov ecx, eax"], ["0x10016d59", "mov dword ptr [eax], MxMediaPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x10009bf9", "call MxMediaPresenter::Init (FUNCTION)", "0x10016d5f"]]}, {"orig": [["0x10009bfe", "mov byte ptr [ebp - 4], 0xb"], ["0x10009c02", "mov eax, edi"], ["0x10009c04", "mov byte ptr [ebp - 4], bl"], ["0x10009c07", "mov dword ptr [edi + 0x50], 0"], ["0x10009c0e", "mov dword ptr [edi], LegoTexturePresenter::`vftable' (VTABLE)"], ["0x10009c14", "jmp 0x10e5"]], "recomp": [["0x10016d64", "mov byte ptr [ebp - 4], 0x11"], ["0x10016d68", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016d6b", "mov byte ptr [ebp - 4], bl"], ["0x10016d6e", "mov dword ptr [ebp - 0x14], eax"], ["0x10016d71", "mov dword ptr [eax + 0x50], 0"], ["0x10016d78", "mov dword ptr [eax], LegoTexturePresenter::`vftable' (VTABLE)"], ["0x10016d7e", "jmp 0x2a"]]}, {"both": [["0x10009c19", "mov ecx, dword ptr [ebp - 0x10]", "0x10016d80"], ["0x10009c1c", "add ecx, 0x20", "0x10016d83"], ["0x10009c1f", "jmp MxCriticalSection::~MxCriticalSection (FUNCTION)", "0x10016d86"], ["0x10009c24", "mov ecx, dword ptr [ebp - 0x10]", "0x10016d8b"], ["0x10009c27", "jmp MxCore::~MxCore (FUNCTION)", "0x10016d8e"], ["0x10009c2c", "mov ecx, dword ptr [ebp - 0x10]", "0x10016d93"], ["0x10009c2f", "jmp MxPresenter::~MxPresenter (FUNCTION)", "0x10016d96"], ["0x10009c34", "mov ecx, dword ptr [ebp - 0x10]", "0x10016d9b"], ["0x10009c37", "jmp MxMediaPresenter::~MxMediaPresenter (FUNCTION)", "0x10016d9e"]]}, {"orig": [["0x10009c3c", "xor eax, eax"], ["0x10009c3e", "jmp 0x10bb"], ["0x10009c43", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009c46", "push eax"], ["0x10009c47", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009c4c", "add esp, 4"], ["0x10009c4f", "ret "], ["0x10009c50", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009c53", "cmp dword ptr [esi + 0x50], eax"], ["0x10009c56", "jne 0x3c"]], "recomp": [["0x10016da3", "mov dword ptr [ebp - 0x14], 0"], ["0x10016daa", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016db1", "call <OFFSET5>"], ["0x10016db6", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016db9", "jmp -0x32a"], ["0x10016dbe", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016dc1", "push eax"], ["0x10016dc2", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016dc7", "add esp, 4"], ["0x10016dca", "ret "], ["0x10016dcb", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016dce", "cmp dword ptr [edi + 0x54], eax"], ["0x10016dd1", "jne 0x4c"]]}, {"both": [["0x10009c58", "push 0x88", "0x10016dd3"], ["0x10009c5d", "call ??2@YAPAXI@Z (FUNCTION)", "0x10016dd8"]]}, {"orig": [["0x10009c62", "mov dword ptr [ebp - 0x10], eax"], ["0x10009c65", "add esp, 4"], ["0x10009c68", "mov byte ptr [ebp - 4], 0xc"], ["0x10009c6c", "mov edi, eax"], ["0x10009c6e", "mov eax, 0"], ["0x10009c73", "test edi, edi"], ["0x10009c75", "je 0x1083"], ["0x10009c7b", "mov ecx, edi"]], "recomp": [["0x10016ddd", "add esp, 4"], ["0x10016de0", "mov dword ptr [ebp - 0x10], eax"], ["0x10016de3", "mov byte ptr [ebp - 4], 0x12"], ["0x10016de7", "test eax, eax"], ["0x10016de9", "je 0xc"], ["0x10016deb", "mov ecx, eax"]]}, {"both": [["0x10009c7d", "call LegoPhonemePresenter::LegoPhonemePresenter (FUNCTION)", "0x10016ded"]]}, {"orig": [["0x10009c82", "jmp 0x1077"], ["0x10009c87", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009c8a", "push eax"], ["0x10009c8b", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009c90", "add esp, 4"], ["0x10009c93", "ret "], ["0x10009c94", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009c97", "cmp dword ptr [esi + 0x54], eax"], ["0x10009c9a", "jne 0x39"]], "recomp": [["0x10016df2", "mov dword ptr [ebp - 0x14], eax"], ["0x10016df5", "jmp 0x7"], ["0x10016df7", "mov dword ptr [ebp - 0x14], 0"], ["0x10016dfe", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016e05", "call <OFFSET5>"], ["0x10016e0a", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016e0d", "jmp -0x37e"], ["0x10016e12", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016e15", "push eax"], ["0x10016e16", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016e1b", "add esp, 4"], ["0x10016e1e", "ret "], ["0x10016e1f", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016e22", "cmp dword ptr [edi + 0x58], eax"], ["0x10016e25", "jne 0x49"]]}, {"both": [["0x10009c9c", "push 0x70", "0x10016e27"], ["0x10009c9e", "call ??2@YAPAXI@Z (FUNCTION)", "0x10016e29"]]}, {"orig": [["0x10009ca3", "mov dword ptr [ebp - 0x10], eax"], ["0x10009ca6", "add esp, 4"], ["0x10009ca9", "mov byte ptr [ebp - 4], 0xd"], ["0x10009cad", "mov edi, eax"], ["0x10009caf", "mov eax, 0"], ["0x10009cb4", "test edi, edi"], ["0x10009cb6", "je 0x1042"], ["0x10009cbc", "mov ecx, edi"]], "recomp": [["0x10016e2e", "add esp, 4"], ["0x10016e31", "mov dword ptr [ebp - 0x10], eax"], ["0x10016e34", "mov byte ptr [ebp - 4], 0x13"], ["0x10016e38", "test eax, eax"], ["0x10016e3a", "je 0xc"], ["0x10016e3c", "mov ecx, eax"]]}, {"both": [["0x10009cbe", "call LegoFlcTexturePresenter::LegoFlcTexturePresenter (FUNCTION)", "0x10016e3e"]]}, {"orig": [["0x10009cc3", "jmp 0x1036"], ["0x10009cc8", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009ccb", "push eax"], ["0x10009ccc", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009cd1", "add esp, 4"], ["0x10009cd4", "ret "], ["0x10009cd5", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009cd8", "cmp dword ptr [esi + 0x38], eax"], ["0x10009cdb", "jne 0x39"], ["0x10009cdd", "push 0x50"], ["0x10009cdf", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10009ce4", "mov dword ptr [ebp - 0x10], eax"], ["0x10009ce7", "add esp, 4"], ["0x10009cea", "mov byte ptr [ebp - 4], 0xe"], ["0x10009cee", "mov edi, eax"], ["0x10009cf0", "mov eax, 0"], ["0x10009cf5", "test edi, edi"], ["0x10009cf7", "je 0x1001"], ["0x10009cfd", "mov ecx, edi"], ["0x10009cff", "call LegoEntityPresenter::LegoEntityPresenter (FUNCTION)"], ["0x10009d04", "jmp 0xff5"], ["0x10009d09", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009d0c", "push eax"], ["0x10009d0d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009d12", "add esp, 4"], ["0x10009d15", "ret "], ["0x10009d16", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009d19", "cmp dword ptr [esi + 0x3c], eax"], ["0x10009d1c", "jne 0x52"], ["0x10009d1e", "push 0x50"], ["0x10009d20", "mov ebx, 0xf"], ["0x10009d25", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10009d2a", "mov dword ptr [ebp - 0x10], eax"], ["0x10009d2d", "add esp, 4"], ["0x10009d30", "mov edi, eax"], ["0x10009d32", "mov byte ptr [ebp - 4], bl"], ["0x10009d35", "test edi, edi"], ["0x10009d37", "je 0x23"], ["0x10009d39", "mov ecx, edi"], ["0x10009d3b", "call LegoEntityPresenter::LegoEntityPresenter (FUNCTION)"], ["0x10009d40", "mov byte ptr [ebp - 4], 0x10"], ["0x10009d44", "mov eax, edi"], ["0x10009d46", "mov dword ptr [edi], LegoActorPresenter::`vftable' (VTABLE)"], ["0x10009d4c", "mov byte ptr [ebp - 4], bl"], ["0x10009d4f", "jmp 0xfaa"], ["0x10009d54", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10009d57", "jmp LegoEntityPresenter::~LegoEntityPresenter (FUNCTION)"], ["0x10009d5c", "xor eax, eax"], ["0x10009d5e", "jmp 0xf9b"], ["0x10009d63", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009d66", "push eax"], ["0x10009d67", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009d6c", "add esp, 4"], ["0x10009d6f", "ret "], ["0x10009d70", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009d73", "cmp dword ptr [esi + 0x40], eax"], ["0x10009d76", "jne 0x39"]], "recomp": [["0x10016e43", "mov dword ptr [ebp - 0x14], eax"], ["0x10016e46", "jmp 0x7"], ["0x10016e48", "mov dword ptr [ebp - 0x14], 0"], ["0x10016e4f", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016e56", "call <OFFSET5>"], ["0x10016e5b", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016e5e", "jmp -0x3cf"], ["0x10016e63", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016e66", "push eax"], ["0x10016e67", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016e6c", "add esp, 4"], ["0x10016e6f", "ret "], ["0x10016e70", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016e73", "cmp dword ptr [edi + 0x5c], eax"], ["0x10016e76", "jne 0x49"], ["0x10016e78", "push 0x68"], ["0x10016e7a", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10016e7f", "add esp, 4"], ["0x10016e82", "mov dword ptr [ebp - 0x10], eax"], ["0x10016e85", "mov byte ptr [ebp - 4], 0x14"], ["0x10016e89", "test eax, eax"], ["0x10016e8b", "je 0xc"], ["0x10016e8d", "mov ecx, eax"], ["0x10016e8f", "call LegoPalettePresenter::LegoPalettePresenter (FUNCTION)"], ["0x10016e94", "mov dword ptr [ebp - 0x14], eax"], ["0x10016e97", "jmp 0x7"], ["0x10016e99", "mov dword ptr [ebp - 0x14], 0"], ["0x10016ea0", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016ea7", "call <OFFSET5>"], ["0x10016eac", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016eaf", "jmp -0x420"], ["0x10016eb4", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016eb7", "push eax"], ["0x10016eb8", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016ebd", "add esp, 4"], ["0x10016ec0", "ret "], ["0x10016ec1", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016ec4", "cmp dword ptr [edi + 0x60], eax"], ["0x10016ec7", "jne 0x49"]]}, {"both": [["0x10009d78", "push 0x54", "0x10016ec9"], ["0x10009d7a", "call ??2@YAPAXI@Z (FUNCTION)", "0x10016ecb"]]}, {"orig": [["0x10009d7f", "mov dword ptr [ebp - 0x10], eax"], ["0x10009d82", "add esp, 4"], ["0x10009d85", "mov byte ptr [ebp - 4], 0x11"], ["0x10009d89", "mov edi, eax"], ["0x10009d8b", "mov eax, 0"], ["0x10009d90", "test edi, edi"], ["0x10009d92", "je 0xf66"], ["0x10009d98", "mov ecx, edi"], ["0x10009d9a", "call LegoWorldPresenter::LegoWorldPresenter (FUNCTION)"], ["0x10009d9f", "jmp 0xf5a"], ["0x10009da4", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009da7", "push eax"], ["0x10009da8", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009dad", "add esp, 4"], ["0x10009db0", "ret "], ["0x10009db1", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009db4", "cmp dword ptr [esi + 0x44], eax"], ["0x10009db7", "jne 0x3c"], ["0x10009db9", "push 0xf8"], ["0x10009dbe", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10009dc3", "mov dword ptr [ebp - 0x10], eax"], ["0x10009dc6", "add esp, 4"], ["0x10009dc9", "mov byte ptr [ebp - 4], 0x12"], ["0x10009dcd", "mov edi, eax"], ["0x10009dcf", "mov eax, 0"], ["0x10009dd4", "test edi, edi"], ["0x10009dd6", "je 0xf22"], ["0x10009ddc", "mov ecx, edi"], ["0x10009dde", "call LegoWorld::LegoWorld (FUNCTION)"], ["0x10009de3", "jmp 0xf16"], ["0x10009de8", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009deb", "push eax"], ["0x10009dec", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009df1", "add esp, 4"], ["0x10009df4", "ret "], ["0x10009df5", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009df8", "cmp dword ptr [esi + 0x58], eax"], ["0x10009dfb", "jne 0x39"], ["0x10009dfd", "push 0x68"], ["0x10009dff", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10009e04", "mov dword ptr [ebp - 0x10], eax"], ["0x10009e07", "add esp, 4"], ["0x10009e0a", "mov byte ptr [ebp - 4], 0x13"], ["0x10009e0e", "mov edi, eax"], ["0x10009e10", "mov eax, 0"], ["0x10009e15", "test edi, edi"], ["0x10009e17", "je 0xee1"], ["0x10009e1d", "mov ecx, edi"], ["0x10009e1f", "call LegoPalettePresenter::LegoPalettePresenter (FUNCTION)"], ["0x10009e24", "jmp 0xed5"], ["0x10009e29", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009e2c", "push eax"], ["0x10009e2d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009e32", "add esp, 4"], ["0x10009e35", "ret "], ["0x10009e36", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009e39", "cmp dword ptr [esi + 0x5c], eax"], ["0x10009e3c", "jne 0x39"], ["0x10009e3e", "push 0x54"], ["0x10009e40", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10009e45", "mov dword ptr [ebp - 0x10], eax"], ["0x10009e48", "add esp, 4"], ["0x10009e4b", "mov byte ptr [ebp - 4], 0x14"], ["0x10009e4f", "mov edi, eax"], ["0x10009e51", "mov eax, 0"], ["0x10009e56", "test edi, edi"], ["0x10009e58", "je 0xea0"], ["0x10009e5e", "mov ecx, edi"]], "recomp": [["0x10016ed0", "add esp, 4"], ["0x10016ed3", "mov dword ptr [ebp - 0x10], eax"], ["0x10016ed6", "mov byte ptr [ebp - 4], 0x15"], ["0x10016eda", "test eax, eax"], ["0x10016edc", "je 0xc"], ["0x10016ede", "mov ecx, eax"]]}, {"both": [["0x10009e60", "call LegoPathPresenter::LegoPathPresenter (FUNCTION)", "0x10016ee0"]]}, {"orig": [["0x10009e65", "jmp 0xe94"], ["0x10009e6a", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009e6d", "push eax"], ["0x10009e6e", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009e73", "add esp, 4"], ["0x10009e76", "ret "], ["0x10009e77", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009e7a", "cmp dword ptr [esi + 0x60], eax"], ["0x10009e7d", "jne 0x3c"], ["0x10009e7f", "push 0xbc"], ["0x10009e84", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10009e89", "mov dword ptr [ebp - 0x10], eax"], ["0x10009e8c", "add esp, 4"], ["0x10009e8f", "mov byte ptr [ebp - 4], 0x15"], ["0x10009e93", "mov edi, eax"], ["0x10009e95", "mov eax, 0"], ["0x10009e9a", "test edi, edi"], ["0x10009e9c", "je 0xe5c"], ["0x10009ea2", "mov ecx, edi"], ["0x10009ea4", "call LegoAnimPresenter::LegoAnimPresenter (FUNCTION)"], ["0x10009ea9", "jmp 0xe50"], ["0x10009eae", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009eb1", "push eax"], ["0x10009eb2", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009eb7", "add esp, 4"], ["0x10009eba", "ret "], ["0x10009ebb", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009ebe", "cmp dword ptr [esi + 0x64], eax"], ["0x10009ec1", "jne 0x55"]], "recomp": [["0x10016ee5", "mov dword ptr [ebp - 0x14], eax"], ["0x10016ee8", "jmp 0x7"], ["0x10016eea", "mov dword ptr [ebp - 0x14], 0"], ["0x10016ef1", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016ef8", "call <OFFSET5>"], ["0x10016efd", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016f00", "jmp -0x471"], ["0x10016f05", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016f08", "push eax"], ["0x10016f09", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016f0e", "add esp, 4"], ["0x10016f11", "ret "], ["0x10016f12", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016f15", "cmp dword ptr [edi + 0x64], eax"], ["0x10016f18", "jne 0x68"]]}, {"both": [["0x10009ec3", "push 0xc0", "0x10016f1a"], ["0x10009ec8", "mov ebx, 0x16", "0x10016f1f"], ["0x10009ecd", "call ??2@YAPAXI@Z (FUNCTION)", "0x10016f24"]]}, {"orig": [["0x10009ed2", "mov dword ptr [ebp - 0x10], eax"], ["0x10009ed5", "add esp, 4"], ["0x10009ed8", "mov edi, eax"], ["0x10009eda", "mov byte ptr [ebp - 4], bl"], ["0x10009edd", "test edi, edi"], ["0x10009edf", "je 0x23"], ["0x10009ee1", "mov ecx, edi"]], "recomp": [["0x10016f29", "add esp, 4"], ["0x10016f2c", "mov dword ptr [ebp - 0x10], eax"], ["0x10016f2f", "mov byte ptr [ebp - 4], bl"], ["0x10016f32", "test eax, eax"], ["0x10016f34", "je 0x24"], ["0x10016f36", "mov ecx, eax"]]}, {"both": [["0x10009ee3", "call LegoAnimPresenter::LegoAnimPresenter (FUNCTION)", "0x10016f38"], ["0x10009ee8", "mov byte ptr [ebp - 4], 0x17", "0x10016f3d"]]}, {"orig": [["0x10009eec", "mov eax, edi"], ["0x10009eee", "mov dword ptr [edi], LegoLoopingAnimPresenter::`vftable' (VTABLE)"], ["0x10009ef4", "mov byte ptr [ebp - 4], bl"], ["0x10009ef7", "jmp 0xe02"]], "recomp": [["0x10016f41", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016f44", "mov byte ptr [ebp - 4], bl"], ["0x10016f47", "mov dword ptr [ebp - 0x14], eax"], ["0x10016f4a", "mov dword ptr [eax], LegoLoopingAnimPresenter::`vftable' (VTABLE)"], ["0x10016f50", "jmp 0xf"]]}, {"both": [["0x10009efc", "mov ecx, dword ptr [ebp - 0x10]", "0x10016f52"], ["0x10009eff", "jmp LegoAnimPresenter::~LegoAnimPresenter (FUNCTION)", "0x10016f55"]]}, {"orig": [["0x10009f04", "xor eax, eax"], ["0x10009f06", "jmp 0xdf3"], ["0x10009f0b", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009f0e", "push eax"], ["0x10009f0f", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009f14", "add esp, 4"], ["0x10009f17", "ret "], ["0x10009f18", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009f1b", "cmp dword ptr [esi + 0x68], eax"], ["0x10009f1e", "jne 0x3c"]], "recomp": [["0x10016f5a", "mov dword ptr [ebp - 0x14], 0"], ["0x10016f61", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016f68", "call <OFFSET5>"], ["0x10016f6d", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016f70", "jmp -0x4e1"], ["0x10016f75", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016f78", "push eax"], ["0x10016f79", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016f7e", "add esp, 4"], ["0x10016f81", "ret "], ["0x10016f82", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016f85", "cmp dword ptr [edi + 0x68], eax"], ["0x10016f88", "jne 0x4c"]]}, {"both": [["0x10009f20", "push 0xd8", "0x10016f8a"], ["0x10009f25", "call ??2@YAPAXI@Z (FUNCTION)", "0x10016f8f"]]}, {"orig": [["0x10009f2a", "mov dword ptr [ebp - 0x10], eax"], ["0x10009f2d", "add esp, 4"]], "recomp": [["0x10016f94", "add esp, 4"], ["0x10016f97", "mov dword ptr [ebp - 0x10], eax"]]}, {"both": [["0x10009f30", "mov byte ptr [ebp - 4], 0x18", "0x10016f9a"]]}, {"orig": [["0x10009f34", "mov edi, eax"], ["0x10009f36", "mov eax, 0"], ["0x10009f3b", "test edi, edi"], ["0x10009f3d", "je 0xdbb"], ["0x10009f43", "mov ecx, edi"]], "recomp": [["0x10016f9e", "test eax, eax"], ["0x10016fa0", "je 0xc"], ["0x10016fa2", "mov ecx, eax"]]}, {"both": [["0x10009f45", "call LegoLocomotionAnimPresenter::LegoLocomotionAnimPresenter (FUNCTION)", "0x10016fa4"]]}, {"orig": [["0x10009f4a", "jmp 0xdaf"], ["0x10009f4f", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009f52", "push eax"], ["0x10009f53", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009f58", "add esp, 4"], ["0x10009f5b", "ret "], ["0x10009f5c", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009f5f", "cmp dword ptr [esi + 0x6c], eax"], ["0x10009f62", "jne 0x3c"]], "recomp": [["0x10016fa9", "mov dword ptr [ebp - 0x14], eax"], ["0x10016fac", "jmp 0x7"], ["0x10016fae", "mov dword ptr [ebp - 0x14], 0"], ["0x10016fb5", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10016fbc", "call <OFFSET5>"], ["0x10016fc1", "mov eax, dword ptr [ebp - 0x14]"], ["0x10016fc4", "jmp -0x535"], ["0x10016fc9", "mov eax, dword ptr [ebp - 0x10]"], ["0x10016fcc", "push eax"], ["0x10016fcd", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10016fd2", "add esp, 4"], ["0x10016fd5", "ret "], ["0x10016fd6", "mov eax, dword ptr [ebp - 0x18]"], ["0x10016fd9", "cmp dword ptr [edi + 0x6c], eax"], ["0x10016fdc", "jne 0x4c"]]}, {"both": [["0x10009f64", "push 0xc4", "0x10016fde"], ["0x10009f69", "call ??2@YAPAXI@Z (FUNCTION)", "0x10016fe3"]]}, {"orig": [["0x10009f6e", "mov dword ptr [ebp - 0x10], eax"], ["0x10009f71", "add esp, 4"]], "recomp": [["0x10016fe8", "add esp, 4"], ["0x10016feb", "mov dword ptr [ebp - 0x10], eax"]]}, {"both": [["0x10009f74", "mov byte ptr [ebp - 4], 0x19", "0x10016fee"]]}, {"orig": [["0x10009f78", "mov edi, eax"], ["0x10009f7a", "mov eax, 0"], ["0x10009f7f", "test edi, edi"], ["0x10009f81", "je 0xd77"], ["0x10009f87", "mov ecx, edi"]], "recomp": [["0x10016ff2", "test eax, eax"], ["0x10016ff4", "je 0xc"], ["0x10016ff6", "mov ecx, eax"]]}, {"both": [["0x10009f89", "call LegoHideAnimPresenter::LegoHideAnimPresenter (FUNCTION)", "0x10016ff8"]]}, {"orig": [["0x10009f8e", "jmp 0xd6b"], ["0x10009f93", "mov eax, dword ptr [ebp - 0x10]"], ["0x10009f96", "push eax"], ["0x10009f97", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10009f9c", "add esp, 4"], ["0x10009f9f", "ret "], ["0x10009fa0", "mov eax, dword ptr [ebp - 0x18]"], ["0x10009fa3", "cmp dword ptr [esi + 0x70], eax"], ["0x10009fa6", "jne 0xa2"]], "recomp": [["0x10016ffd", "mov dword ptr [ebp - 0x14], eax"], ["0x10017000", "jmp 0x7"], ["0x10017002", "mov dword ptr [ebp - 0x14], 0"], ["0x10017009", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017010", "call <OFFSET5>"], ["0x10017015", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017018", "jmp -0x589"], ["0x1001701d", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017020", "push eax"], ["0x10017021", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017026", "add esp, 4"], ["0x10017029", "ret "], ["0x1001702a", "mov eax, dword ptr [ebp - 0x18]"], ["0x1001702d", "cmp dword ptr [edi + 0x70], eax"], ["0x10017030", "jne 0xbc"]]}, {"both": [["0x10009fac", "push 0x54", "0x10017036"], ["0x10009fae", "mov ebx, 0x1a", "0x10017038"], ["0x10009fb3", "call ??2@YAPAXI@Z (FUNCTION)", "0x1001703d"]]}, {"orig": [["0x10009fb8", "mov dword ptr [ebp - 0x10], eax"], ["0x10009fbb", "add esp, 4"], ["0x10009fbe", "mov edi, eax"], ["0x10009fc0", "mov byte ptr [ebp - 4], bl"], ["0x10009fc3", "test edi, edi"], ["0x10009fc5", "je 0x73"], ["0x10009fc7", "mov ecx, edi"]], "recomp": [["0x10017042", "add esp, 4"], ["0x10017045", "mov dword ptr [ebp - 0x10], eax"], ["0x10017048", "mov byte ptr [ebp - 4], bl"], ["0x1001704b", "test eax, eax"], ["0x1001704d", "je 0x7b"], ["0x1001704f", "mov ecx, eax"]]}, {"both": [["0x10009fc9", "call MxCore::MxCore (FUNCTION)", "0x10017051"], ["0x10009fce", "mov byte ptr [ebp - 4], 0x1b", "0x10017056"]]}, {"orig": [["0x10009fd2", "lea ecx, [edi + 0x20]"]], "recomp": [["0x1001705a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1001705d", "add ecx, 0x20"]]}, {"both": [["0x10009fd5", "call MxCriticalSection::MxCriticalSection (FUNCTION)", "0x10017060"]]}, {"orig": [], "recomp": [["0x10017065", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10009fda", "mov byte ptr [ebp - 4], 0x1c", "0x10017068"]]}, {"orig": [["0x10009fde", "mov ecx, edi"], ["0x10009fe0", "mov dword ptr [edi], MxPresenter::`vftable' (VTABLE)"]], "recomp": [["0x1001706c", "mov dword ptr [ecx], MxPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x10009fe6", "call MxPresenter::Init (FUNCTION)", "0x10017072"], ["0x10009feb", "mov byte ptr [ebp - 4], 0x1d", "0x10017077"]]}, {"orig": [["0x10009fef", "mov ecx, edi"], ["0x10009ff1", "mov dword ptr [edi], MxMediaPresenter::`vftable' (VTABLE)"]], "recomp": [["0x1001707b", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001707e", "mov ecx, eax"], ["0x10017080", "mov dword ptr [eax], MxMediaPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x10009ff7", "call MxMediaPresenter::Init (FUNCTION)", "0x10017086"], ["0x10009ffc", "mov byte ptr [ebp - 4], 0x1e", "0x1001708b"]]}, {"orig": [["0x1000a000", "mov eax, edi"], ["0x1000a002", "mov dword ptr [edi], LegoPartPresenter::`vftable' (VTABLE)"], ["0x1000a008", "mov dword ptr [edi + 0x50], 0"], ["0x1000a00f", "mov byte ptr [ebp - 4], bl"], ["0x1000a012", "jmp 0xce7"]], "recomp": [["0x1001708f", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017092", "mov byte ptr [ebp - 4], bl"], ["0x10017095", "mov dword ptr [ebp - 0x14], eax"], ["0x10017098", "mov dword ptr [eax], LegoPartPresenter::`vftable' (VTABLE)"], ["0x1001709e", "mov dword ptr [eax + 0x50], 0"], ["0x100170a5", "jmp 0x2a"]]}, {"both": [["0x1000a017", "mov ecx, dword ptr [ebp - 0x10]", "0x100170a7"], ["0x1000a01a", "add ecx, 0x20", "0x100170aa"], ["0x1000a01d", "jmp MxCriticalSection::~MxCriticalSection (FUNCTION)", "0x100170ad"], ["0x1000a022", "mov ecx, dword ptr [ebp - 0x10]", "0x100170b2"], ["0x1000a025", "jmp MxCore::~MxCore (FUNCTION)", "0x100170b5"], ["0x1000a02a", "mov ecx, dword ptr [ebp - 0x10]", "0x100170ba"], ["0x1000a02d", "jmp MxPresenter::~MxPresenter (FUNCTION)", "0x100170bd"], ["0x1000a032", "mov ecx, dword ptr [ebp - 0x10]", "0x100170c2"], ["0x1000a035", "jmp MxMediaPresenter::~MxMediaPresenter (FUNCTION)", "0x100170c5"]]}, {"orig": [["0x1000a03a", "xor eax, eax"], ["0x1000a03c", "jmp 0xcbd"], ["0x1000a041", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a044", "push eax"], ["0x1000a045", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a04a", "add esp, 4"], ["0x1000a04d", "ret "], ["0x1000a04e", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a051", "cmp dword ptr [esi + 0x74], eax"], ["0x1000a054", "jne 0x3c"]], "recomp": [["0x100170ca", "mov dword ptr [ebp - 0x14], 0"], ["0x100170d1", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100170d8", "call <OFFSET5>"], ["0x100170dd", "mov eax, dword ptr [ebp - 0x14]"], ["0x100170e0", "jmp -0x651"], ["0x100170e5", "mov eax, dword ptr [ebp - 0x10]"], ["0x100170e8", "push eax"], ["0x100170e9", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100170ee", "add esp, 4"], ["0x100170f1", "ret "], ["0x100170f2", "mov eax, dword ptr [ebp - 0x18]"], ["0x100170f5", "cmp dword ptr [edi + 0x74], eax"], ["0x100170f8", "jne 0x4c"]]}, {"both": [["0x1000a056", "push 0x150", "0x100170fa"], ["0x1000a05b", "call ??2@YAPAXI@Z (FUNCTION)", "0x100170ff"]]}, {"orig": [["0x1000a060", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a063", "add esp, 4"]], "recomp": [["0x10017104", "add esp, 4"], ["0x10017107", "mov dword ptr [ebp - 0x10], eax"]]}, {"both": [["0x1000a066", "mov byte ptr [ebp - 4], 0x1f", "0x1001710a"]]}, {"orig": [["0x1000a06a", "mov edi, eax"], ["0x1000a06c", "mov eax, 0"], ["0x1000a071", "test edi, edi"], ["0x1000a073", "je 0xc85"], ["0x1000a079", "mov ecx, edi"]], "recomp": [["0x1001710e", "test eax, eax"], ["0x10017110", "je 0xc"], ["0x10017112", "mov ecx, eax"]]}, {"both": [["0x1000a07b", "call LegoCarBuildAnimPresenter::LegoCarBuildAnimPresenter (FUNCTION)", "0x10017114"]]}, {"orig": [["0x1000a080", "jmp 0xc79"], ["0x1000a085", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a088", "push eax"], ["0x1000a089", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a08e", "add esp, 4"], ["0x1000a091", "ret "], ["0x1000a092", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a095", "cmp dword ptr [esi + 0x78], eax"], ["0x1000a098", "jne 0xbd"]], "recomp": [["0x10017119", "mov dword ptr [ebp - 0x14], eax"], ["0x1001711c", "jmp 0x7"], ["0x1001711e", "mov dword ptr [ebp - 0x14], 0"], ["0x10017125", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001712c", "call <OFFSET5>"], ["0x10017131", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017134", "jmp -0x6a5"], ["0x10017139", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001713c", "push eax"], ["0x1001713d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017142", "add esp, 4"], ["0x10017145", "ret "], ["0x10017146", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017149", "cmp dword ptr [edi + 0x78], eax"], ["0x1001714c", "jne 0xd9"]]}, {"both": [["0x1000a09e", "push 0x68", "0x10017152"], ["0x1000a0a0", "mov ebx, 0x20", "0x10017154"], ["0x1000a0a5", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017159"]]}, {"orig": [["0x1000a0aa", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a0ad", "add esp, 4"], ["0x1000a0b0", "mov edi, eax"], ["0x1000a0b2", "mov byte ptr [ebp - 4], bl"], ["0x1000a0b5", "test edi, edi"], ["0x1000a0b7", "je 0x8a"], ["0x1000a0bd", "mov ecx, edi"]], "recomp": [["0x1001715e", "add esp, 4"], ["0x10017161", "mov dword ptr [ebp - 0x10], eax"], ["0x10017164", "mov byte ptr [ebp - 4], bl"], ["0x10017167", "test eax, eax"], ["0x10017169", "je 0x94"], ["0x1001716f", "mov ecx, eax"]]}, {"both": [["0x1000a0bf", "call MxCore::MxCore (FUNCTION)", "0x10017171"], ["0x1000a0c4", "mov byte ptr [ebp - 4], 0x21", "0x10017176"]]}, {"orig": [["0x1000a0c8", "lea ecx, [edi + 0x20]"]], "recomp": [["0x1001717a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1001717d", "add ecx, ebx"]]}, {"both": [["0x1000a0cb", "call MxCriticalSection::MxCriticalSection (FUNCTION)", "0x1001717f"]]}, {"orig": [], "recomp": [["0x10017184", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x1000a0d0", "mov byte ptr [ebp - 4], 0x22", "0x10017187"]]}, {"orig": [["0x1000a0d4", "mov ecx, edi"], ["0x1000a0d6", "mov dword ptr [edi], MxPresenter::`vftable' (VTABLE)"]], "recomp": [["0x1001718b", "mov dword ptr [ecx], MxPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x1000a0dc", "call MxPresenter::Init (FUNCTION)", "0x10017191"], ["0x1000a0e1", "mov byte ptr [ebp - 4], 0x23", "0x10017196"]]}, {"orig": [["0x1000a0e5", "mov ecx, edi"], ["0x1000a0e7", "mov dword ptr [edi], MxMediaPresenter::`vftable' (VTABLE)"]], "recomp": [["0x1001719a", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001719d", "mov ecx, eax"], ["0x1001719f", "mov dword ptr [eax], MxMediaPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x1000a0ed", "call MxMediaPresenter::Init (FUNCTION)", "0x100171a5"], ["0x1000a0f2", "mov byte ptr [ebp - 4], 0x24", "0x100171aa"]]}, {"orig": [["0x1000a0f6", "mov dword ptr [edi + 0x50], 0"], ["0x1000a0fd", "lea ecx, [edi + 0x54]"]], "recomp": [["0x100171ae", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100171b1", "add ecx, 0x54"]]}, {"both": [["0x1000a100", "call MxString::MxString (FUNCTION)", "0x100171b4"], ["0x1000a105", "mov byte ptr [ebp - 4], 0x25", "0x100171b9"]]}, {"orig": [["0x1000a109", "mov eax, edi"], ["0x1000a10b", "mov dword ptr [edi], LegoActionControlPresenter::`vftable' (VTABLE)"], ["0x1000a111", "mov byte ptr [ebp - 4], bl"], ["0x1000a114", "jmp 0xbe5"]], "recomp": [["0x100171bd", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100171c0", "mov byte ptr [ebp - 4], bl"], ["0x100171c3", "mov dword ptr [ebp - 0x14], ecx"], ["0x100171c6", "mov dword ptr [ecx], LegoActionControlPresenter::`vftable' (VTABLE)"], ["0x100171cc", "mov dword ptr [ecx + 0x50], 0"], ["0x100171d3", "jmp 0x35"]]}, {"both": [["0x1000a119", "mov ecx, dword ptr [ebp - 0x10]", "0x100171d5"], ["0x1000a11c", "add ecx, 0x54", "0x100171d8"], ["0x1000a11f", "jmp MxString::~MxString (FUNCTION)", "0x100171db"], ["0x1000a124", "mov ecx, dword ptr [ebp - 0x10]", "0x100171e0"], ["0x1000a127", "add ecx, 0x20", "0x100171e3"], ["0x1000a12a", "jmp MxCriticalSection::~MxCriticalSection (FUNCTION)", "0x100171e6"], ["0x1000a12f", "mov ecx, dword ptr [ebp - 0x10]", "0x100171eb"], ["0x1000a132", "jmp MxCore::~MxCore (FUNCTION)", "0x100171ee"], ["0x1000a137", "mov ecx, dword ptr [ebp - 0x10]", "0x100171f3"], ["0x1000a13a", "jmp MxPresenter::~MxPresenter (FUNCTION)", "0x100171f6"], ["0x1000a13f", "mov ecx, dword ptr [ebp - 0x10]", "0x100171fb"], ["0x1000a142", "jmp MxMediaPresenter::~MxMediaPresenter (FUNCTION)", "0x100171fe"]]}, {"orig": [["0x1000a147", "xor eax, eax"], ["0x1000a149", "jmp 0xbb0"], ["0x1000a14e", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a151", "push eax"], ["0x1000a152", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a157", "add esp, 4"], ["0x1000a15a", "ret "], ["0x1000a15b", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a15e", "cmp dword ptr [esi + 0x7c], eax"], ["0x1000a161", "jne 0x3c"], ["0x1000a163", "push 0x94"], ["0x1000a168", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000a16d", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a170", "add esp, 4"], ["0x1000a173", "mov byte ptr [ebp - 4], 0x26"], ["0x1000a177", "mov edi, eax"], ["0x1000a179", "mov eax, 0"], ["0x1000a17e", "test edi, edi"], ["0x1000a180", "je 0xb78"], ["0x1000a186", "mov ecx, edi"], ["0x1000a188", "call LegoMeterPresenter::LegoMeterPresenter (FUNCTION)"], ["0x1000a18d", "jmp 0xb6c"], ["0x1000a192", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a195", "push eax"], ["0x1000a196", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a19b", "add esp, 4"], ["0x1000a19e", "ret "], ["0x1000a19f", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a1a2", "cmp dword ptr [esi + 0x80], eax"], ["0x1000a1a8", "jne 0x3c"]], "recomp": [["0x10017203", "mov dword ptr [ebp - 0x14], 0"], ["0x1001720a", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017211", "call <OFFSET5>"], ["0x10017216", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017219", "jmp -0x78a"], ["0x1001721e", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017221", "push eax"], ["0x10017222", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017227", "add esp, 4"], ["0x1001722a", "ret "], ["0x1001722b", "mov eax, dword ptr [ebp - 0x18]"], ["0x1001722e", "cmp dword ptr [edi + 0x7c], eax"], ["0x10017231", "jne 0xbf"], ["0x10017237", "push 0x64"], ["0x10017239", "mov ebx, 0x26"], ["0x1001723e", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10017243", "add esp, 4"], ["0x10017246", "mov dword ptr [ebp - 0x10], eax"], ["0x10017249", "mov byte ptr [ebp - 4], bl"], ["0x1001724c", "test eax, eax"], ["0x1001724e", "je 0x7e"], ["0x10017250", "mov ecx, eax"], ["0x10017252", "call MxCore::MxCore (FUNCTION)"], ["0x10017257", "mov byte ptr [ebp - 4], 0x27"], ["0x1001725b", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1001725e", "add ecx, 0x20"], ["0x10017261", "call MxCriticalSection::MxCriticalSection (FUNCTION)"], ["0x10017266", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10017269", "mov byte ptr [ebp - 4], 0x28"], ["0x1001726d", "mov dword ptr [ecx], MxPresenter::`vftable' (VTABLE)"], ["0x10017273", "call MxPresenter::Init (FUNCTION)"], ["0x10017278", "mov byte ptr [ebp - 4], 0x29"], ["0x1001727c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001727f", "mov ecx, eax"], ["0x10017281", "mov dword ptr [eax], MxMediaPresenter::`vftable' (VTABLE)"], ["0x10017287", "call MxMediaPresenter::Init (FUNCTION)"], ["0x1001728c", "mov byte ptr [ebp - 4], 0x2a"], ["0x10017290", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017293", "mov ecx, eax"], ["0x10017295", "mov dword ptr [eax], MxVideoPresenter::`vftable' (VTABLE)"], ["0x1001729b", "call MxVideoPresenter::Init (FUNCTION)"], ["0x100172a0", "mov eax, dword ptr [ebp - 0x10]"], ["0x100172a3", "mov byte ptr [ebp - 4], bl"], ["0x100172a6", "mov dword ptr [ebp - 0x14], eax"], ["0x100172a9", "jmp 0x2a"], ["0x100172ab", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100172ae", "add ecx, 0x20"], ["0x100172b1", "jmp MxCriticalSection::~MxCriticalSection (FUNCTION)"], ["0x100172b6", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100172b9", "jmp MxCore::~MxCore (FUNCTION)"], ["0x100172be", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100172c1", "jmp MxPresenter::~MxPresenter (FUNCTION)"], ["0x100172c6", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100172c9", "jmp MxMediaPresenter::~MxMediaPresenter (FUNCTION)"], ["0x100172ce", "mov dword ptr [ebp - 0x14], 0"], ["0x100172d5", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100172dc", "call <OFFSET5>"], ["0x100172e1", "mov eax, dword ptr [ebp - 0x14]"], ["0x100172e4", "jmp -0x855"], ["0x100172e9", "mov eax, dword ptr [ebp - 0x10]"], ["0x100172ec", "push eax"], ["0x100172ed", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100172f2", "add esp, 4"], ["0x100172f5", "ret "], ["0x100172f6", "mov eax, dword ptr [ebp - 0x18]"], ["0x100172f9", "cmp dword ptr [edi + 0x80], eax"], ["0x100172ff", "jne 0x4c"]]}, {"both": [["0x1000a1aa", "push 0x90", "0x10017301"], ["0x1000a1af", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017306"]]}, {"orig": [["0x1000a1b4", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a1b7", "add esp, 4"], ["0x1000a1ba", "mov byte ptr [ebp - 4], 0x27"], ["0x1000a1be", "mov edi, eax"], ["0x1000a1c0", "mov eax, 0"], ["0x1000a1c5", "test edi, edi"], ["0x1000a1c7", "je 0xb31"], ["0x1000a1cd", "mov ecx, edi"]], "recomp": [["0x1001730b", "add esp, 4"], ["0x1001730e", "mov dword ptr [ebp - 0x10], eax"], ["0x10017311", "mov byte ptr [ebp - 4], 0x2b"], ["0x10017315", "test eax, eax"], ["0x10017317", "je 0xc"], ["0x10017319", "mov ecx, eax"]]}, {"both": [["0x1000a1cf", "call LegoLoadCacheSoundPresenter::LegoLoadCacheSoundPresenter (FUNCTION)", "0x1001731b"]]}, {"orig": [["0x1000a1d4", "jmp 0xb25"], ["0x1000a1d9", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a1dc", "push eax"], ["0x1000a1dd", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a1e2", "add esp, 4"], ["0x1000a1e5", "ret "], ["0x1000a1e6", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a1e9", "cmp dword ptr [esi + 0x84], eax"], ["0x1000a1ef", "jne 0xfd"]], "recomp": [["0x10017320", "mov dword ptr [ebp - 0x14], eax"], ["0x10017323", "jmp 0x7"], ["0x10017325", "mov dword ptr [ebp - 0x14], 0"], ["0x1001732c", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017333", "call <OFFSET5>"], ["0x10017338", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001733b", "jmp -0x8ac"], ["0x10017340", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017343", "push eax"], ["0x10017344", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017349", "add esp, 4"], ["0x1001734c", "ret "], ["0x1001734d", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017350", "cmp dword ptr [edi + 0x84], eax"], ["0x10017356", "jne 0x11d"]]}, {"both": [["0x1000a1f5", "push 0xa0", "0x1001735c"]]}, {"orig": [["0x1000a1fa", "mov ebx, 0x28"], ["0x1000a1ff", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000a204", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a207", "add esp, 4"], ["0x1000a20a", "mov edi, eax"], ["0x1000a20c", "mov byte ptr [ebp - 4], bl"], ["0x1000a20f", "test edi, edi"], ["0x1000a211", "je 0xc7"], ["0x1000a217", "mov ecx, edi"]], "recomp": [["0x10017361", "mov ebx, 0x2c"], ["0x10017366", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1001736b", "add esp, 4"], ["0x1001736e", "mov dword ptr [ebp - 0x10], eax"], ["0x10017371", "mov byte ptr [ebp - 4], bl"], ["0x10017374", "test eax, eax"], ["0x10017376", "je 0xd5"], ["0x1001737c", "mov ecx, eax"]]}, {"both": [["0x1000a219", "call MxCore::MxCore (FUNCTION)", "0x1001737e"]]}, {"orig": [["0x1000a21e", "mov byte ptr [ebp - 4], 0x29"], ["0x1000a222", "lea ecx, [edi + 0x20]"]], "recomp": [["0x10017383", "mov byte ptr [ebp - 4], 0x2d"], ["0x10017387", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1001738a", "add ecx, 0x20"]]}, {"both": [["0x1000a225", "call MxCriticalSection::MxCriticalSection (FUNCTION)", "0x1001738d"]]}, {"orig": [["0x1000a22a", "mov byte ptr [ebp - 4], 0x2a"], ["0x1000a22e", "mov ecx, edi"], ["0x1000a230", "mov dword ptr [edi], MxPresenter::`vftable' (VTABLE)"]], "recomp": [["0x10017392", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10017395", "mov byte ptr [ebp - 4], 0x2e"], ["0x10017399", "mov dword ptr [ecx], MxPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x1000a236", "call MxPresenter::Init (FUNCTION)", "0x1001739f"]]}, {"orig": [["0x1000a23b", "mov byte ptr [ebp - 4], 0x2b"], ["0x1000a23f", "mov ecx, edi"], ["0x1000a241", "mov dword ptr [edi], MxMediaPresenter::`vftable' (VTABLE)"]], "recomp": [["0x100173a4", "mov byte ptr [ebp - 4], 0x2f"], ["0x100173a8", "mov eax, dword ptr [ebp - 0x10]"], ["0x100173ab", "mov ecx, eax"], ["0x100173ad", "mov dword ptr [eax], MxMediaPresenter::`vftable' (VTABLE)"]]}, {"both": [["0x1000a247", "call MxMediaPresenter::Init (FUNCTION)", "0x100173b3"]]}, {"orig": [["0x1000a24c", "mov byte ptr [ebp - 4], 0x2c"], ["0x1000a250", "mov ecx, edi"], ["0x1000a252", "mov dword ptr [edi], MxAudioPresenter::`vftable' (VTABLE)"], ["0x1000a258", "mov dword ptr [edi + 0x50], 0x64"], ["0x1000a25f", "mov byte ptr [ebp - 4], 0x2d"], ["0x1000a263", "mov byte ptr [ebp - 4], 0x2e"], ["0x1000a267", "mov dword ptr [edi], MxSoundPresenter::`vftable' (VTABLE)"], ["0x1000a26d", "mov dword ptr [edi], MxWavePresenter::`vftable' (VTABLE)"]], "recomp": [["0x100173b8", "mov byte ptr [ebp - 4], 0x30"], ["0x100173bc", "mov byte ptr [ebp - 4], 0x31"], ["0x100173c0", "mov byte ptr [ebp - 4], 0x32"], ["0x100173c4", "mov eax, dword ptr [ebp - 0x10]"], ["0x100173c7", "mov ecx, eax"], ["0x100173c9", "mov dword ptr [eax], MxAudioPresenter::`vftable' (VTABLE)"], ["0x100173cf", "mov dword ptr [eax + 0x50], 0x64"], ["0x100173d6", "mov dword ptr [eax], MxSoundPresenter::`vftable' (VTABLE)"], ["0x100173dc", "mov dword ptr [eax], MxWavePresenter::`vftable' (VTABLE)"]]}, {"both": [["0x1000a273", "call MxWavePresenter::Init (FUNCTION)", "0x100173e2"]]}, {"orig": [["0x1000a278", "mov byte ptr [ebp - 4], 0x2f"], ["0x1000a27c", "lea ecx, [edi + 0x70]"]], "recomp": [["0x100173e7", "mov byte ptr [ebp - 4], 0x33"], ["0x100173eb", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100173ee", "add ecx, 0x70"]]}, {"both": [["0x1000a27f", "call LegoUnknown100d5778::LegoUnknown100d5778 (FUNCTION)", "0x100173f1"]]}, {"orig": [["0x1000a284", "mov byte ptr [ebp - 4], 0x30"], ["0x1000a288", "mov eax, edi"], ["0x1000a28a", "mov dword ptr [edi], Lego3DWavePresenter::`vftable' (VTABLE)"], ["0x1000a290", "mov byte ptr [ebp - 4], bl"], ["0x1000a293", "jmp 0xa66"]], "recomp": [["0x100173f6", "mov byte ptr [ebp - 4], 0x34"], ["0x100173fa", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100173fd", "mov byte ptr [ebp - 4], bl"], ["0x10017400", "mov dword ptr [ebp - 0x14], ecx"], ["0x10017403", "mov dword ptr [ecx], Lego3DWavePresenter::`vftable' (VTABLE)"], ["0x10017409", "jmp 0x4d"]]}, {"both": [["0x1000a298", "mov ecx, dword ptr [ebp - 0x10]", "0x1001740b"], ["0x1000a29b", "add ecx, 0x70", "0x1001740e"], ["0x1000a29e", "jmp LegoUnknown100d5778::~LegoUnknown100d5778 (FUNCTION)", "0x10017411"], ["0x1000a2a3", "mov ecx, dword ptr [ebp - 0x10]", "0x10017416"], ["0x1000a2a6", "add ecx, 0x20", "0x10017419"], ["0x1000a2a9", "jmp MxCriticalSection::~MxCriticalSection (FUNCTION)", "0x1001741c"], ["0x1000a2ae", "mov ecx, dword ptr [ebp - 0x10]", "0x10017421"], ["0x1000a2b1", "jmp MxCore::~MxCore (FUNCTION)", "0x10017424"], ["0x1000a2b6", "mov ecx, dword ptr [ebp - 0x10]", "0x10017429"], ["0x1000a2b9", "jmp MxPresenter::~MxPresenter (FUNCTION)", "0x1001742c"], ["0x1000a2be", "mov ecx, dword ptr [ebp - 0x10]", "0x10017431"], ["0x1000a2c1", "jmp MxMediaPresenter::~MxMediaPresenter (FUNCTION)", "0x10017434"], ["0x1000a2c6", "mov ecx, dword ptr [ebp - 0x10]", "0x10017439"], ["0x1000a2c9", "jmp MxAudioPresenter::~MxAudioPresenter (FUNCTION)", "0x1001743c"], ["0x1000a2ce", "mov ecx, dword ptr [ebp - 0x10]", "0x10017441"], ["0x1000a2d1", "jmp MxSoundPresenter::~MxSoundPresenter (FUNCTION)", "0x10017444"], ["0x1000a2d6", "mov ecx, dword ptr [ebp - 0x10]", "0x10017449"], ["0x1000a2d9", "jmp MxWavePresenter::~MxWavePresenter (FUNCTION)", "0x1001744c"]]}, {"orig": [["0x1000a2de", "xor eax, eax"], ["0x1000a2e0", "jmp 0xa19"], ["0x1000a2e5", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a2e8", "push eax"], ["0x1000a2e9", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a2ee", "add esp, 4"], ["0x1000a2f1", "ret "], ["0x1000a2f2", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a2f5", "cmp dword ptr [esi + 0x88], eax"], ["0x1000a2fb", "jne 0x39"]], "recomp": [["0x10017451", "mov dword ptr [ebp - 0x14], 0"], ["0x10017458", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001745f", "call <OFFSET5>"], ["0x10017464", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017467", "jmp -0x9d8"], ["0x1001746c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001746f", "push eax"], ["0x10017470", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017475", "add esp, 4"], ["0x10017478", "ret "], ["0x10017479", "mov eax, dword ptr [ebp - 0x18]"], ["0x1001747c", "cmp dword ptr [edi + 0x88], eax"], ["0x10017482", "jne 0x49"]]}, {"both": [["0x1000a2fd", "push 0x78", "0x10017484"], ["0x1000a2ff", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017486"]]}, {"orig": [["0x1000a304", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a307", "add esp, 4"], ["0x1000a30a", "mov byte ptr [ebp - 4], 0x31"], ["0x1000a30e", "mov edi, eax"]], "recomp": [["0x1001748b", "add esp, 4"], ["0x1001748e", "mov dword ptr [ebp - 0x10], eax"], ["0x10017491", "mov byte ptr [ebp - 4], 0x35"], ["0x10017495", "test eax, eax"], ["0x10017497", "je 0xc"], ["0x10017499", "mov ecx, eax"], ["0x1001749b", "call LegoActor::LegoActor (FUNCTION)"], ["0x100174a0", "mov dword ptr [ebp - 0x14], eax"], ["0x100174a3", "jmp 0x7"], ["0x100174a5", "mov dword ptr [ebp - 0x14], 0"], ["0x100174ac", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100174b3", "call <OFFSET5>"], ["0x100174b8", "mov eax, dword ptr [ebp - 0x14]"], ["0x100174bb", "jmp -0xa2c"], ["0x100174c0", "mov eax, dword ptr [ebp - 0x10]"], ["0x100174c3", "push eax"], ["0x100174c4", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100174c9", "add esp, 4"], ["0x100174cc", "ret "], ["0x100174cd", "mov eax, dword ptr [ebp - 0x18]"], ["0x100174d0", "cmp dword ptr [edi + 0x8c], eax"], ["0x100174d6", "jne 0x4c"], ["0x100174d8", "push 0x154"], ["0x100174dd", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100174e2", "add esp, 4"], ["0x100174e5", "mov dword ptr [ebp - 0x10], eax"], ["0x100174e8", "mov byte ptr [ebp - 4], 0x36"], ["0x100174ec", "test eax, eax"], ["0x100174ee", "je 0xc"], ["0x100174f0", "mov ecx, eax"], ["0x100174f2", "call LegoPathActor::LegoPathActor (FUNCTION)"], ["0x100174f7", "mov dword ptr [ebp - 0x14], eax"], ["0x100174fa", "jmp 0x7"], ["0x100174fc", "mov dword ptr [ebp - 0x14], 0"], ["0x10017503", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001750a", "call <OFFSET5>"], ["0x1001750f", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017512", "jmp -0xa83"], ["0x10017517", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001751a", "push eax"], ["0x1001751b", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017520", "add esp, 4"], ["0x10017523", "ret "], ["0x10017524", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017527", "cmp dword ptr [edi + 0x90], eax"], ["0x1001752d", "jne 0x64"], ["0x1001752f", "push 0x200"], ["0x10017534", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10017539", "mov dword ptr [ebp - 0x10], eax"], ["0x1001753c", "add esp, 4"], ["0x1001753f", "mov byte ptr [ebp - 4], 0x37"], ["0x10017543", "mov esi, eax"]]}, {"both": [["0x1000a310", "mov eax, 0", "0x10017545"]]}, {"orig": [["0x1000a315", "test edi, edi"], ["0x1000a317", "je 0x9e1"], ["0x1000a31d", "mov ecx, edi"], ["0x1000a31f", "call LegoActor::LegoActor (FUNCTION)"], ["0x1000a324", "jmp 0x9d5"], ["0x1000a329", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a32c", "push eax"], ["0x1000a32d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a332", "add esp, 4"], ["0x1000a335", "ret "], ["0x1000a336", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a339", "cmp dword ptr [esi + 0x8c], eax"], ["0x1000a33f", "jne 0x3c"], ["0x1000a341", "push 0x154"], ["0x1000a346", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000a34b", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a34e", "add esp, 4"], ["0x1000a351", "mov byte ptr [ebp - 4], 0x32"], ["0x1000a355", "mov edi, eax"], ["0x1000a357", "mov eax, 0"], ["0x1000a35c", "test edi, edi"], ["0x1000a35e", "je 0x99a"], ["0x1000a364", "mov ecx, edi"], ["0x1000a366", "call LegoPathActor::LegoPathActor (FUNCTION)"], ["0x1000a36b", "jmp 0x98e"], ["0x1000a370", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a373", "push eax"], ["0x1000a374", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a379", "add esp, 4"], ["0x1000a37c", "ret "], ["0x1000a37d", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a380", "cmp dword ptr [esi + 0x98], eax"], ["0x1000a386", "jne 0x55"], ["0x1000a388", "push 0x144"], ["0x1000a38d", "mov ebx, 0x33"], ["0x1000a392", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000a397", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a39a", "add esp, 4"], ["0x1000a39d", "mov edi, eax"], ["0x1000a39f", "mov byte ptr [ebp - 4], bl"], ["0x1000a3a2", "test edi, edi"], ["0x1000a3a4", "je 0x23"], ["0x1000a3a6", "mov ecx, edi"], ["0x1000a3a8", "call LegoRace::LegoRace (FUNCTION)"], ["0x1000a3ad", "mov byte ptr [ebp - 4], 0x34"], ["0x1000a3b1", "mov eax, edi"], ["0x1000a3b3", "mov dword ptr [edi], JetskiRace::`vftable' (VTABLE)"], ["0x1000a3b9", "mov byte ptr [ebp - 4], bl"], ["0x1000a3bc", "jmp 0x93d"], ["0x1000a3c1", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000a3c4", "jmp LegoRace::~LegoRace (FUNCTION)"], ["0x1000a3c9", "xor eax, eax"], ["0x1000a3cb", "jmp 0x92e"], ["0x1000a3d0", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a3d3", "push eax"], ["0x1000a3d4", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a3d9", "add esp, 4"], ["0x1000a3dc", "ret "], ["0x1000a3dd", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a3e0", "cmp dword ptr [esi + 0x9c], eax"], ["0x1000a3e6", "jne 0xc8"], ["0x1000a3ec", "push 0x68"], ["0x1000a3ee", "mov ebx, 0x35"], ["0x1000a3f3", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000a3f8", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a3fb", "add esp, 4"], ["0x1000a3fe", "mov edi, eax"], ["0x1000a400", "mov byte ptr [ebp - 4], bl"], ["0x1000a403", "test edi, edi"], ["0x1000a405", "je 0x95"], ["0x1000a40b", "mov ecx, edi"], ["0x1000a40d", "call MxCore::MxCore (FUNCTION)"], ["0x1000a412", "mov byte ptr [ebp - 4], 0x36"], ["0x1000a416", "mov dword ptr [edi + 0xc], 0"], ["0x1000a41d", "mov byte ptr [ebp - 4], 0x37"], ["0x1000a421", "lea eax, [edi + 0x1c]"], ["0x1000a424", "mov dword ptr [edi], MxEntity::`vftable' (VTABLE)"], ["0x1000a42a", "mov dword ptr [edi + 8], 0xffffffff"], ["0x1000a431", "mov byte ptr [ebp - 4], 0x38"], ["0x1000a435", "mov dword ptr [edi + 0x14], Vector2::`vftable' (VTABLE)"], ["0x1000a43c", "lea ecx, [edi + 0x30]"], ["0x1000a43f", "mov dword ptr [edi + 0x18], eax"], ["0x1000a442", "mov dword ptr [edi + 0x14], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x1000a449", "mov dword ptr [edi + 0x28], Vector2::`vftable' (VTABLE)"], ["0x1000a450", "lea edx, [edi + 0x44]"], ["0x1000a453", "mov dword ptr [edi + 0x2c], ecx"], ["0x1000a456", "mov dword ptr [edi + 0x28], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x1000a45d", "mov dword ptr [edi + 0x3c], Vector2::`vftable' (VTABLE)"], ["0x1000a464", "mov ecx, edi"], ["0x1000a466", "mov dword ptr [edi + 0x40], edx"], ["0x1000a469", "mov dword ptr [edi + 0x3c], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x1000a470", "mov dword ptr [edi], LegoEntity::`vftable' (VTABLE)"], ["0x1000a476", "call LegoEntity::Init (FUNCTION)"], ["0x1000a47b", "mov eax, edi"], ["0x1000a47d", "mov byte ptr [ebp - 4], bl"], ["0x1000a480", "jmp 0x879"], ["0x1000a485", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000a488", "add ecx, 0xc"], ["0x1000a48b", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000a490", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000a493", "jmp MxCore::~MxCore (FUNCTION)"], ["0x1000a498", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000a49b", "jmp MxEntity::~MxEntity (FUNCTION)"], ["0x1000a4a0", "xor eax, eax"], ["0x1000a4a2", "jmp 0x857"], ["0x1000a4a7", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a4aa", "push eax"], ["0x1000a4ab", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a4b0", "add esp, 4"], ["0x1000a4b3", "ret "], ["0x1000a4b4", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a4b7", "cmp dword ptr [esi + 0x90], eax"], ["0x1000a4bd", "jne 0x55"], ["0x1000a4bf", "push 0x200"], ["0x1000a4c4", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000a4c9", "mov dword ptr [ebp - 0x14], eax"], ["0x1000a4cc", "add esp, 4"], ["0x1000a4cf", "mov byte ptr [ebp - 4], 0x39"], ["0x1000a4d3", "mov edi, eax"], ["0x1000a4d5", "mov eax, 0"], ["0x1000a4da", "test edi, edi"]], "recomp": [["0x1001754a", "test esi, esi"]]}, {"both": [["0x1000a4dc", "je 0x9", "0x1001754c"], ["0x1000a4de", "push 1", "0x1001754e"]]}, {"orig": [["0x1000a4e0", "mov ecx, edi"]], "recomp": [["0x10017550", "mov ecx, esi"]]}, {"both": [["0x1000a4e2", "call LegoRaceCar::LegoRaceCar (FUNCTION)", "0x10017552"], ["0x1000a4e7", "xor ecx, ecx", "0x10017557"], ["0x1000a4e9", "test eax, eax", "0x10017559"], ["0x1000a4eb", "mov byte ptr [ebp - 4], cl", "0x1001755b"]]}, {"orig": [["0x1000a4ee", "jne 0x8"], ["0x1000a4f0", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000a4f3", "jmp 0x80d"]], "recomp": [["0x1001755e", "jne 0x5"], ["0x10017560", "mov dword ptr [ebp - 0x10], ecx"], ["0x10017563", "jmp 0xd"]]}, {"both": [["0x1000a4f8", "mov ecx, dword ptr [eax + 4]", "0x10017565"], ["0x1000a4fb", "mov edx, dword ptr [ecx + 4]", "0x10017568"], ["0x1000a4fe", "lea eax, [edx + eax + 4]", "0x1001756b"]]}, {"orig": [["0x1000a502", "jmp 0x7fb"], ["0x1000a507", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000a50a", "push eax"], ["0x1000a50b", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a510", "add esp, 4"], ["0x1000a513", "ret "], ["0x1000a514", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a517", "cmp dword ptr [esi + 0x94], eax"], ["0x1000a51d", "jne 0x55"]], "recomp": [["0x1001756f", "mov dword ptr [ebp - 0x10], eax"], ["0x10017572", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017579", "call <OFFSET5>"], ["0x1001757e", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017581", "jmp -0xaf2"], ["0x10017586", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017589", "push eax"], ["0x1001758a", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001758f", "add esp, 4"], ["0x10017592", "ret "], ["0x10017593", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017596", "cmp dword ptr [edi + 0x94], eax"], ["0x1001759c", "jne 0x64"]]}, {"both": [["0x1000a51f", "push 0x1dc", "0x1001759e"], ["0x1000a524", "call ??2@YAPAXI@Z (FUNCTION)", "0x100175a3"]]}, {"orig": [["0x1000a529", "mov dword ptr [ebp - 0x14], eax"], ["0x1000a52c", "add esp, 4"], ["0x1000a52f", "mov byte ptr [ebp - 4], 0x3a"], ["0x1000a533", "mov edi, eax"]], "recomp": [["0x100175a8", "mov dword ptr [ebp - 0x10], eax"], ["0x100175ab", "add esp, 4"], ["0x100175ae", "mov byte ptr [ebp - 4], 0x38"], ["0x100175b2", "mov esi, eax"]]}, {"both": [["0x1000a535", "mov eax, 0", "0x100175b4"]]}, {"orig": [["0x1000a53a", "test edi, edi"]], "recomp": [["0x100175b9", "test esi, esi"]]}, {"both": [["0x1000a53c", "je 0x9", "0x100175bb"], ["0x1000a53e", "push 1", "0x100175bd"]]}, {"orig": [["0x1000a540", "mov ecx, edi"]], "recomp": [["0x100175bf", "mov ecx, esi"]]}, {"both": [["0x1000a542", "call LegoJetski::LegoJetski (FUNCTION)", "0x100175c1"], ["0x1000a547", "xor ecx, ecx", "0x100175c6"], ["0x1000a549", "test eax, eax", "0x100175c8"], ["0x1000a54b", "mov byte ptr [ebp - 4], cl", "0x100175ca"]]}, {"orig": [["0x1000a54e", "jne 0x8"], ["0x1000a550", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000a553", "jmp 0x7ad"]], "recomp": [["0x100175cd", "jne 0x5"], ["0x100175cf", "mov dword ptr [ebp - 0x10], ecx"], ["0x100175d2", "jmp 0xd"]]}, {"both": [["0x1000a558", "mov ecx, dword ptr [eax + 0x34]", "0x100175d4"], ["0x1000a55b", "mov edx, dword ptr [ecx + 4]", "0x100175d7"], ["0x1000a55e", "lea eax, [edx + eax + 0x34]", "0x100175da"]]}, {"orig": [["0x1000a562", "jmp 0x79b"], ["0x1000a567", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000a56a", "push eax"], ["0x1000a56b", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a570", "add esp, 4"], ["0x1000a573", "ret "], ["0x1000a574", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a577", "cmp dword ptr [esi + 0xa0], eax"], ["0x1000a57d", "jne 0x55"]], "recomp": [["0x100175de", "mov dword ptr [ebp - 0x10], eax"], ["0x100175e1", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100175e8", "call <OFFSET5>"], ["0x100175ed", "mov eax, dword ptr [ebp - 0x10]"], ["0x100175f0", "jmp -0xb61"], ["0x100175f5", "mov eax, dword ptr [ebp - 0x10]"], ["0x100175f8", "push eax"], ["0x100175f9", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100175fe", "add esp, 4"], ["0x10017601", "ret "], ["0x10017602", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017605", "cmp dword ptr [edi + 0x98], eax"], ["0x1001760b", "jne 0x68"], ["0x1001760d", "push 0x144"], ["0x10017612", "mov ebx, 0x39"], ["0x10017617", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1001761c", "add esp, 4"], ["0x1001761f", "mov dword ptr [ebp - 0x10], eax"], ["0x10017622", "mov byte ptr [ebp - 4], bl"], ["0x10017625", "test eax, eax"], ["0x10017627", "je 0x24"], ["0x10017629", "mov ecx, eax"], ["0x1001762b", "call LegoRace::LegoRace (FUNCTION)"], ["0x10017630", "mov byte ptr [ebp - 4], 0x3a"], ["0x10017634", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017637", "mov byte ptr [ebp - 4], bl"], ["0x1001763a", "mov dword ptr [ebp - 0x14], eax"], ["0x1001763d", "mov dword ptr [eax], JetskiRace::`vftable' (VTABLE)"], ["0x10017643", "jmp 0xf"], ["0x10017645", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10017648", "jmp LegoRace::~LegoRace (FUNCTION)"], ["0x1001764d", "mov dword ptr [ebp - 0x14], 0"], ["0x10017654", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001765b", "call <OFFSET5>"], ["0x10017660", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017663", "jmp -0xbd4"], ["0x10017668", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001766b", "push eax"], ["0x1001766c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017671", "add esp, 4"], ["0x10017674", "ret "], ["0x10017675", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017678", "cmp dword ptr [edi + 0x9c], eax"], ["0x1001767e", "jne 0xdc"], ["0x10017684", "push 0x68"], ["0x10017686", "mov ebx, 0x3b"], ["0x1001768b", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10017690", "add esp, 4"], ["0x10017693", "mov dword ptr [ebp - 0x10], eax"], ["0x10017696", "mov byte ptr [ebp - 4], bl"], ["0x10017699", "test eax, eax"], ["0x1001769b", "je 0x97"], ["0x100176a1", "mov ecx, eax"], ["0x100176a3", "call MxCore::MxCore (FUNCTION)"], ["0x100176a8", "mov byte ptr [ebp - 4], 0x3c"], ["0x100176ac", "mov byte ptr [ebp - 4], 0x3d"], ["0x100176b0", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100176b3", "mov byte ptr [ebp - 4], 0x3e"], ["0x100176b7", "mov dword ptr [ecx + 0xc], 0"], ["0x100176be", "lea eax, [ecx + 0x1c]"], ["0x100176c1", "mov dword ptr [ecx], MxEntity::`vftable' (VTABLE)"], ["0x100176c7", "mov dword ptr [ecx + 8], 0xffffffff"], ["0x100176ce", "mov dword ptr [ecx + 0x14], Vector2::`vftable' (VTABLE)"], ["0x100176d5", "mov dword ptr [ecx + 0x18], eax"], ["0x100176d8", "lea eax, [ecx + 0x30]"], ["0x100176db", "mov dword ptr [ecx + 0x14], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x100176e2", "mov dword ptr [ecx + 0x28], Vector2::`vftable' (VTABLE)"], ["0x100176e9", "mov dword ptr [ecx + 0x2c], eax"], ["0x100176ec", "lea eax, [ecx + 0x44]"], ["0x100176ef", "mov dword ptr [ecx + 0x28], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x100176f6", "mov dword ptr [ecx + 0x3c], Vector2::`vftable' (VTABLE)"], ["0x100176fd", "mov dword ptr [ecx + 0x40], eax"], ["0x10017700", "mov dword ptr [ecx + 0x3c], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x10017707", "mov dword ptr [ecx], LegoEntity::`vftable' (VTABLE)"], ["0x1001770d", "call LegoEntity::Init (FUNCTION)"], ["0x10017712", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10017715", "mov byte ptr [ebp - 4], bl"], ["0x10017718", "mov dword ptr [ebp - 0x14], ecx"], ["0x1001771b", "jmp 0x22"], ["0x1001771d", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10017720", "add ecx, 0xc"], ["0x10017723", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10017728", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1001772b", "jmp MxCore::~MxCore (FUNCTION)"], ["0x10017730", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10017733", "jmp MxEntity::~MxEntity (FUNCTION)"], ["0x10017738", "mov dword ptr [ebp - 0x14], 0"], ["0x1001773f", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017746", "call <OFFSET5>"], ["0x1001774b", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001774e", "jmp -0xcbf"], ["0x10017753", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017756", "push eax"], ["0x10017757", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001775c", "add esp, 4"], ["0x1001775f", "ret "], ["0x10017760", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017763", "cmp dword ptr [edi + 0xa0], eax"], ["0x10017769", "jne 0x64"]]}, {"both": [["0x1000a57f", "push 0x1a0", "0x1001776b"], ["0x1000a584", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017770"]]}, {"orig": [["0x1000a589", "mov dword ptr [ebp - 0x14], eax"], ["0x1000a58c", "add esp, 4"], ["0x1000a58f", "mov byte ptr [ebp - 4], 0x3b"], ["0x1000a593", "mov edi, eax"]], "recomp": [["0x10017775", "mov dword ptr [ebp - 0x10], eax"], ["0x10017778", "add esp, 4"], ["0x1001777b", "mov byte ptr [ebp - 4], 0x3f"], ["0x1001777f", "mov esi, eax"]]}, {"both": [["0x1000a595", "mov eax, 0", "0x10017781"]]}, {"orig": [["0x1000a59a", "test edi, edi"]], "recomp": [["0x10017786", "test esi, esi"]]}, {"both": [["0x1000a59c", "je 0x9", "0x10017788"], ["0x1000a59e", "push 1", "0x1001778a"]]}, {"orig": [["0x1000a5a0", "mov ecx, edi"]], "recomp": [["0x1001778c", "mov ecx, esi"]]}, {"both": [["0x1000a5a2", "call LegoCarRaceActor::LegoCarRaceActor (FUNCTION)", "0x1001778e"], ["0x1000a5a7", "xor ecx, ecx", "0x10017793"], ["0x1000a5a9", "test eax, eax", "0x10017795"], ["0x1000a5ab", "mov byte ptr [ebp - 4], cl", "0x10017797"]]}, {"orig": [["0x1000a5ae", "jne 0x8"], ["0x1000a5b0", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000a5b3", "jmp 0x74d"]], "recomp": [["0x1001779a", "jne 0x5"], ["0x1001779c", "mov dword ptr [ebp - 0x10], ecx"], ["0x1001779f", "jmp 0xd"]]}, {"both": [["0x1000a5b8", "mov ecx, dword ptr [eax + 4]", "0x100177a1"], ["0x1000a5bb", "mov edx, dword ptr [ecx + 4]", "0x100177a4"], ["0x1000a5be", "lea eax, [edx + eax + 4]", "0x100177a7"]]}, {"orig": [["0x1000a5c2", "jmp 0x73b"], ["0x1000a5c7", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000a5ca", "push eax"], ["0x1000a5cb", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a5d0", "add esp, 4"], ["0x1000a5d3", "ret "], ["0x1000a5d4", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a5d7", "cmp dword ptr [esi + 0xa4], eax"], ["0x1000a5dd", "jne 0x50"]], "recomp": [["0x100177ab", "mov dword ptr [ebp - 0x10], eax"], ["0x100177ae", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100177b5", "call <OFFSET5>"], ["0x100177ba", "mov eax, dword ptr [ebp - 0x10]"], ["0x100177bd", "jmp -0xd2e"], ["0x100177c2", "mov eax, dword ptr [ebp - 0x10]"], ["0x100177c5", "push eax"], ["0x100177c6", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100177cb", "add esp, 4"], ["0x100177ce", "ret "], ["0x100177cf", "mov eax, dword ptr [ebp - 0x18]"], ["0x100177d2", "cmp dword ptr [edi + 0xa4], eax"], ["0x100177d8", "jne 0x5f"]]}, {"both": [["0x1000a5df", "push 0x1a8", "0x100177da"], ["0x1000a5e4", "call ??2@YAPAXI@Z (FUNCTION)", "0x100177df"]]}, {"orig": [["0x1000a5e9", "mov dword ptr [ebp - 0x14], eax"], ["0x1000a5ec", "add esp, 4"], ["0x1000a5ef", "mov byte ptr [ebp - 4], 0x3c"], ["0x1000a5f3", "mov edi, eax"]], "recomp": [["0x100177e4", "mov dword ptr [ebp - 0x10], eax"], ["0x100177e7", "add esp, 4"], ["0x100177ea", "mov byte ptr [ebp - 4], 0x40"], ["0x100177ee", "mov esi, eax"]]}, {"both": [["0x1000a5f5", "mov eax, 0", "0x100177f0"]]}, {"orig": [["0x1000a5fa", "test edi, edi"]], "recomp": [["0x100177f5", "test esi, esi"]]}, {"both": [["0x1000a5fc", "je 0x9", "0x100177f7"], ["0x1000a5fe", "push 1", "0x100177f9"]]}, {"orig": [["0x1000a600", "mov ecx, edi"]], "recomp": [["0x100177fb", "mov ecx, esi"]]}, {"both": [["0x1000a602", "call LegoJetskiRaceActor::LegoJetskiRaceActor (FUNCTION)", "0x100177fd"], ["0x1000a607", "xor ecx, ecx", "0x10017802"], ["0x1000a609", "test eax, eax", "0x10017804"], ["0x1000a60b", "mov byte ptr [ebp - 4], cl", "0x10017806"]]}, {"orig": [["0x1000a60e", "jne 0x8"], ["0x1000a610", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000a613", "jmp 0x6ed"]], "recomp": [["0x10017809", "jne 0x5"], ["0x1001780b", "mov dword ptr [ebp - 0x10], ecx"], ["0x1001780e", "jmp 0x8"]]}, {"both": [["0x1000a618", "mov ecx, dword ptr [eax]", "0x10017810"], ["0x1000a61a", "add eax, dword ptr [ecx + 4]", "0x10017812"]]}, {"orig": [["0x1000a61d", "jmp 0x6e0"], ["0x1000a622", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000a625", "push eax"], ["0x1000a626", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a62b", "add esp, 4"], ["0x1000a62e", "ret "], ["0x1000a62f", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a632", "cmp dword ptr [esi + 0xa8], eax"], ["0x1000a638", "jne 0x3c"]], "recomp": [["0x10017815", "mov dword ptr [ebp - 0x10], eax"], ["0x10017818", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001781f", "call <OFFSET5>"], ["0x10017824", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017827", "jmp -0xd98"], ["0x1001782c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001782f", "push eax"], ["0x10017830", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017835", "add esp, 4"], ["0x10017838", "ret "], ["0x10017839", "mov eax, dword ptr [ebp - 0x18]"], ["0x1001783c", "cmp dword ptr [edi + 0xa8], eax"], ["0x10017842", "jne 0x4c"]]}, {"both": [["0x1000a63a", "push 0x34c", "0x10017844"], ["0x1000a63f", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017849"]]}, {"orig": [["0x1000a644", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a647", "add esp, 4"], ["0x1000a64a", "mov byte ptr [ebp - 4], 0x3d"]], "recomp": [["0x1001784e", "add esp, 4"], ["0x10017851", "mov dword ptr [ebp - 0x10], eax"], ["0x10017854", "mov byte ptr [ebp - 4], 0x41"], ["0x10017858", "test eax, eax"], ["0x1001785a", "je 0xc"], ["0x1001785c", "mov ecx, eax"], ["0x1001785e", "call LegoCarBuild::LegoCarBuild (FUNCTION)"], ["0x10017863", "mov dword ptr [ebp - 0x14], eax"], ["0x10017866", "jmp 0x7"], ["0x10017868", "mov dword ptr [ebp - 0x14], 0"], ["0x1001786f", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017876", "call <OFFSET5>"], ["0x1001787b", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001787e", "jmp -0xdef"], ["0x10017883", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017886", "push eax"], ["0x10017887", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001788c", "add esp, 4"], ["0x1001788f", "ret "], ["0x10017890", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017893", "cmp dword ptr [edi + 0xac], eax"], ["0x10017899", "jne 0x4c"], ["0x1001789b", "push 0x1d8"], ["0x100178a0", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100178a5", "add esp, 4"], ["0x100178a8", "mov dword ptr [ebp - 0x10], eax"], ["0x100178ab", "mov byte ptr [ebp - 4], 0x42"], ["0x100178af", "test eax, eax"], ["0x100178b1", "je 0xc"], ["0x100178b3", "mov ecx, eax"], ["0x100178b5", "call Infocenter::Infocenter (FUNCTION)"], ["0x100178ba", "mov dword ptr [ebp - 0x14], eax"], ["0x100178bd", "jmp 0x7"], ["0x100178bf", "mov dword ptr [ebp - 0x14], 0"], ["0x100178c6", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100178cd", "call <OFFSET5>"], ["0x100178d2", "mov eax, dword ptr [ebp - 0x14]"], ["0x100178d5", "jmp -0xe46"], ["0x100178da", "mov eax, dword ptr [ebp - 0x10]"], ["0x100178dd", "push eax"], ["0x100178de", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100178e3", "add esp, 4"], ["0x100178e6", "ret "], ["0x100178e7", "mov eax, dword ptr [ebp - 0x18]"], ["0x100178ea", "cmp dword ptr [edi + 0xb0], eax"], ["0x100178f0", "jne 0xef"], ["0x100178f6", "push 0x174"], ["0x100178fb", "mov ebx, 0x43"], ["0x10017900", "xor esi, esi"], ["0x10017902", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10017907", "mov dword ptr [ebp - 0x14], eax"], ["0x1001790a", "add esp, 4"]]}, {"both": [["0x1000a64e", "mov edi, eax", "0x1001790d"]]}, {"orig": [["0x1000a650", "mov eax, 0"]], "recomp": [["0x1001790f", "mov byte ptr [ebp - 4], bl"]]}, {"both": [["0x1000a655", "test edi, edi", "0x10017912"]]}, {"orig": [["0x1000a657", "je 0x6a1"], ["0x1000a65d", "mov ecx, edi"], ["0x1000a65f", "call LegoCarBuild::LegoCarBuild (FUNCTION)"], ["0x1000a664", "jmp 0x695"], ["0x1000a669", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a66c", "push eax"], ["0x1000a66d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a672", "add esp, 4"], ["0x1000a675", "ret "], ["0x1000a676", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a679", "cmp dword ptr [esi + 0xac], eax"], ["0x1000a67f", "jne 0x3c"], ["0x1000a681", "push 0x1d8"], ["0x1000a686", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000a68b", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a68e", "add esp, 4"], ["0x1000a691", "mov byte ptr [ebp - 4], 0x3e"], ["0x1000a695", "mov edi, eax"], ["0x1000a697", "mov eax, 0"], ["0x1000a69c", "test edi, edi"], ["0x1000a69e", "je 0x65a"], ["0x1000a6a4", "mov ecx, edi"], ["0x1000a6a6", "call Infocenter::Infocenter (FUNCTION)"], ["0x1000a6ab", "jmp 0x64e"], ["0x1000a6b0", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a6b3", "push eax"], ["0x1000a6b4", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a6b9", "add esp, 4"], ["0x1000a6bc", "ret "], ["0x1000a6bd", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a6c0", "cmp dword ptr [esi + 0xb0], eax"], ["0x1000a6c6", "jne 0xdc"], ["0x1000a6cc", "push 0x174"], ["0x1000a6d1", "xor ebx, ebx"], ["0x1000a6d3", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000a6d8", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a6db", "add esp, 4"], ["0x1000a6de", "mov byte ptr [ebp - 4], 0x3f"], ["0x1000a6e2", "mov edi, eax"], ["0x1000a6e4", "test edi, edi"], ["0x1000a6e6", "je 0x8e"], ["0x1000a6ec", "mov dword ptr [edi + 4], <OFFSET69>"]], "recomp": [["0x10017914", "je 0x8d"], ["0x1001791a", "mov dword ptr [edi + 4], ??_8LegoAnimActor@@7B@ (UNK)"]]}, {"both": [["0x1000a6f3", "lea ecx, [edi + 0x20]", "0x10017921"], ["0x1000a6f6", "call LegoPathActor::LegoPathActor (FUNCTION)", "0x10017924"]]}, {"orig": [["0x1000a6fb", "mov ecx, 0x40"], ["0x1000a700", "mov al, byte ptr [ebp - 0x11]"], ["0x1000a703", "mov byte ptr [ebp - 4], cl"], ["0x1000a706", "mov dword ptr [ebp - 4], 0x41"], ["0x1000a70d", "mov byte ptr [edi + 8], al"], ["0x1000a710", "mov dword ptr [edi + 0xc], ebx"], ["0x1000a713", "mov dword ptr [edi + 0x10], ebx"], ["0x1000a716", "mov dword ptr [edi + 0x14], ebx"], ["0x1000a719", "mov dword ptr [edi], <OFFSET70>"]], "recomp": [["0x10017929", "mov eax, 0x44"], ["0x1001792e", "mov cl, byte ptr [ebp - 0xd]"], ["0x10017931", "mov byte ptr [ebp - 4], al"], ["0x10017934", "mov dword ptr [ebp - 4], 0x45"], ["0x1001793b", "mov byte ptr [edi + 8], cl"], ["0x1001793e", "mov dword ptr [edi + 0xc], esi"], ["0x10017941", "mov dword ptr [edi + 0x10], esi"], ["0x10017944", "mov dword ptr [edi + 0x14], esi"], ["0x10017947", "mov dword ptr [edi], LegoAnimActor::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x1000a71f", "mov eax, dword ptr [edi + 4]", "0x1001794d"]]}, {"orig": [["0x1000a722", "mov dword ptr [ebp - 4], 0x42"]], "recomp": [["0x10017950", "mov dword ptr [ebp - 4], 0x46"]]}, {"both": [["0x1000a729", "mov ecx, dword ptr [eax + 4]", "0x10017957"]]}, {"orig": [["0x1000a72c", "mov dword ptr [ecx + edi + 4], <OFFSET71>"]], "recomp": [["0x1001795a", "mov byte ptr [ebp - 4], bl"], ["0x1001795d", "mov dword ptr [ecx + edi + 4], LegoAnimActor::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x1000a734", "mov eax, dword ptr [edi + 4]", "0x10017965"]]}, {"orig": [["0x1000a737", "mov byte ptr [ebp - 4], 0x3f"]], "recomp": []}, {"both": [["0x1000a73b", "mov eax, dword ptr [eax + 4]", "0x10017968"], ["0x1000a73e", "lea ecx, [eax - 0x1c]", "0x1001796b"], ["0x1000a741", "mov dword ptr [eax + edi], ecx", "0x1001796e"], ["0x1000a744", "mov ecx, edi", "0x10017971"], ["0x1000a746", "or dword ptr [ebp - 0x1c], 1", "0x10017973"], ["0x1000a74a", "mov word ptr [edi + 0x18], 0xffff", "0x10017977"], ["0x1000a750", "jmp 0x2a", "0x1001797d"]]}, {"orig": [["0x1000a752", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1001797f", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x1000a755", "add ecx, 8", "0x10017982"]]}, {"orig": [["0x1000a758", "jmp 0x32c3"], ["0x1000a75d", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x10017985", "jmp vector<void *,allocator<void *> >::~vector<void *,allocator<void *> > (FUNCTION)"], ["0x1001798a", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x1000a760", "add ecx, 8", "0x1001798d"]]}, {"orig": [["0x1000a763", "jmp 0x32f8"]], "recomp": [["0x10017990", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"]]}, {"both": [["0x1000a768", "test byte ptr [ebp - 0x1c], 1", "0x10017995"], ["0x1000a76c", "je 0xb", "0x10017999"]]}, {"orig": [["0x1000a76e", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1001799b", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x1000a771", "add ecx, 0x20", "0x1001799e"], ["0x1000a774", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x100179a1"], ["0x1000a779", "ret ", "0x100179a6"], ["0x1000a77a", "xor ecx, ecx", "0x100179a7"], ["0x1000a77c", "xor eax, eax", "0x100179a9"], ["0x1000a77e", "test ecx, ecx", "0x100179ab"], ["0x1000a780", "mov byte ptr [ebp - 4], al", "0x100179ad"]]}, {"orig": [["0x1000a783", "je 0x579"]], "recomp": [["0x100179b0", "jne 0x5"], ["0x100179b2", "mov dword ptr [ebp - 0x10], eax"], ["0x100179b5", "jmp 0xd"]]}, {"both": [["0x1000a789", "mov eax, dword ptr [ecx + 4]", "0x100179b7"], ["0x1000a78c", "mov edx, dword ptr [eax + 4]", "0x100179ba"], ["0x1000a78f", "lea ecx, [edx + ecx + 4]", "0x100179bd"]]}, {"orig": [["0x1000a793", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000a796", "jmp 0x56a"], ["0x1000a79b", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a79e", "push eax"], ["0x1000a79f", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a7a4", "add esp, 4"], ["0x1000a7a7", "ret "], ["0x1000a7a8", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a7ab", "cmp dword ptr [esi + 0xb4], eax"], ["0x1000a7b1", "jne 0x39"]], "recomp": [["0x100179c1", "mov dword ptr [ebp - 0x10], ecx"], ["0x100179c4", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100179cb", "call <OFFSET5>"], ["0x100179d0", "mov eax, dword ptr [ebp - 0x10]"], ["0x100179d3", "jmp -0xf44"], ["0x100179d8", "mov eax, dword ptr [ebp - 0x14]"], ["0x100179db", "push eax"], ["0x100179dc", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100179e1", "add esp, 4"], ["0x100179e4", "ret "], ["0x100179e5", "mov eax, dword ptr [ebp - 0x18]"], ["0x100179e8", "cmp dword ptr [edi + 0xb4], eax"], ["0x100179ee", "jne 0x49"]]}, {"both": [["0x1000a7b3", "push 0x5c", "0x100179f0"], ["0x1000a7b5", "call ??2@YAPAXI@Z (FUNCTION)", "0x100179f2"]]}, {"orig": [["0x1000a7ba", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a7bd", "add esp, 4"], ["0x1000a7c0", "mov byte ptr [ebp - 4], 0x43"], ["0x1000a7c4", "mov edi, eax"], ["0x1000a7c6", "mov eax, 0"], ["0x1000a7cb", "test edi, edi"], ["0x1000a7cd", "je 0x52b"], ["0x1000a7d3", "mov ecx, edi"]], "recomp": [["0x100179f7", "add esp, 4"], ["0x100179fa", "mov dword ptr [ebp - 0x10], eax"], ["0x100179fd", "mov byte ptr [ebp - 4], 0x47"], ["0x10017a01", "test eax, eax"], ["0x10017a03", "je 0xc"], ["0x10017a05", "mov ecx, eax"]]}, {"both": [["0x1000a7d5", "call MxControlPresenter::MxControlPresenter (FUNCTION)", "0x10017a07"]]}, {"orig": [["0x1000a7da", "jmp 0x51f"], ["0x1000a7df", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a7e2", "push eax"], ["0x1000a7e3", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a7e8", "add esp, 4"], ["0x1000a7eb", "ret "], ["0x1000a7ec", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a7ef", "cmp dword ptr [esi + 0xb8], eax"], ["0x1000a7f5", "jne 0x3c"]], "recomp": [["0x10017a0c", "mov dword ptr [ebp - 0x14], eax"], ["0x10017a0f", "jmp 0x7"], ["0x10017a11", "mov dword ptr [ebp - 0x14], 0"], ["0x10017a18", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017a1f", "call <OFFSET5>"], ["0x10017a24", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017a27", "jmp -0xf98"], ["0x10017a2c", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017a2f", "push eax"], ["0x10017a30", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017a35", "add esp, 4"], ["0x10017a38", "ret "], ["0x10017a39", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017a3c", "cmp dword ptr [edi + 0xb8], eax"], ["0x10017a42", "jne 0x4c"]]}, {"both": [["0x1000a7f7", "push 0x2d0", "0x10017a44"], ["0x1000a7fc", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017a49"]]}, {"orig": [["0x1000a801", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a804", "add esp, 4"], ["0x1000a807", "mov byte ptr [ebp - 4], 0x44"], ["0x1000a80b", "mov edi, eax"], ["0x1000a80d", "mov eax, 0"], ["0x1000a812", "test edi, edi"], ["0x1000a814", "je 0x4e4"], ["0x1000a81a", "mov ecx, edi"]], "recomp": [["0x10017a4e", "add esp, 4"], ["0x10017a51", "mov dword ptr [ebp - 0x10], eax"], ["0x10017a54", "mov byte ptr [ebp - 4], 0x48"], ["0x10017a58", "test eax, eax"], ["0x10017a5a", "je 0xc"], ["0x10017a5c", "mov ecx, eax"]]}, {"both": [["0x1000a81c", "call RegistrationBook::RegistrationBook (FUNCTION)", "0x10017a5e"]]}, {"orig": [["0x1000a821", "jmp 0x4d8"], ["0x1000a826", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a829", "push eax"], ["0x1000a82a", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a82f", "add esp, 4"], ["0x1000a832", "ret "], ["0x1000a833", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a836", "cmp dword ptr [esi + 0xbc], eax"], ["0x1000a83c", "jne 0x3c"]], "recomp": [["0x10017a63", "mov dword ptr [ebp - 0x14], eax"], ["0x10017a66", "jmp 0x7"], ["0x10017a68", "mov dword ptr [ebp - 0x14], 0"], ["0x10017a6f", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017a76", "call <OFFSET5>"], ["0x10017a7b", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017a7e", "jmp -0xfef"], ["0x10017a83", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017a86", "push eax"], ["0x10017a87", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017a8c", "add esp, 4"], ["0x10017a8f", "ret "], ["0x10017a90", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017a93", "cmp dword ptr [edi + 0xbc], eax"], ["0x10017a99", "jne 0x4c"]]}, {"both": [["0x1000a83e", "push 0x3e4", "0x10017a9b"], ["0x1000a843", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017aa0"]]}, {"orig": [["0x1000a848", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a84b", "add esp, 4"], ["0x1000a84e", "mov byte ptr [ebp - 4], 0x45"], ["0x1000a852", "mov edi, eax"], ["0x1000a854", "mov eax, 0"], ["0x1000a859", "test edi, edi"], ["0x1000a85b", "je 0x49d"], ["0x1000a861", "mov ecx, edi"]], "recomp": [["0x10017aa5", "add esp, 4"], ["0x10017aa8", "mov dword ptr [ebp - 0x10], eax"], ["0x10017aab", "mov byte ptr [ebp - 4], 0x49"], ["0x10017aaf", "test eax, eax"], ["0x10017ab1", "je 0xc"], ["0x10017ab3", "mov ecx, eax"]]}, {"both": [["0x1000a863", "call HistoryBook::HistoryBook (FUNCTION)", "0x10017ab5"]]}, {"orig": [["0x1000a868", "jmp 0x491"], ["0x1000a86d", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a870", "push eax"], ["0x1000a871", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a876", "add esp, 4"], ["0x1000a879", "ret "], ["0x1000a87a", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a87d", "cmp dword ptr [esi + 0xc0], eax"], ["0x1000a883", "jne 0x3c"]], "recomp": [["0x10017aba", "mov dword ptr [ebp - 0x14], eax"], ["0x10017abd", "jmp 0x7"], ["0x10017abf", "mov dword ptr [ebp - 0x14], 0"], ["0x10017ac6", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017acd", "call <OFFSET5>"], ["0x10017ad2", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017ad5", "jmp -0x1046"], ["0x10017ada", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017add", "push eax"], ["0x10017ade", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017ae3", "add esp, 4"], ["0x10017ae6", "ret "], ["0x10017ae7", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017aea", "cmp dword ptr [edi + 0xc0], eax"], ["0x10017af0", "jne 0x4c"]]}, {"both": [["0x1000a885", "push 0xfc", "0x10017af2"], ["0x1000a88a", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017af7"]]}, {"orig": [["0x1000a88f", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a892", "add esp, 4"], ["0x1000a895", "mov byte ptr [ebp - 4], 0x46"], ["0x1000a899", "mov edi, eax"], ["0x1000a89b", "mov eax, 0"], ["0x1000a8a0", "test edi, edi"], ["0x1000a8a2", "je 0x456"], ["0x1000a8a8", "mov ecx, edi"]], "recomp": [["0x10017afc", "add esp, 4"], ["0x10017aff", "mov dword ptr [ebp - 0x10], eax"], ["0x10017b02", "mov byte ptr [ebp - 4], 0x4a"], ["0x10017b06", "test eax, eax"], ["0x10017b08", "je 0xc"], ["0x10017b0a", "mov ecx, eax"]]}, {"both": [["0x1000a8aa", "call ElevatorBottom::ElevatorBottom (FUNCTION)", "0x10017b0c"]]}, {"orig": [["0x1000a8af", "jmp 0x44a"], ["0x1000a8b4", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a8b7", "push eax"], ["0x1000a8b8", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a8bd", "add esp, 4"], ["0x1000a8c0", "ret "], ["0x1000a8c1", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a8c4", "cmp dword ptr [esi + 0xc4], eax"], ["0x1000a8ca", "jne 0x3c"]], "recomp": [["0x10017b11", "mov dword ptr [ebp - 0x14], eax"], ["0x10017b14", "jmp 0x7"], ["0x10017b16", "mov dword ptr [ebp - 0x14], 0"], ["0x10017b1d", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017b24", "call <OFFSET5>"], ["0x10017b29", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017b2c", "jmp -0x109d"], ["0x10017b31", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017b34", "push eax"], ["0x10017b35", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017b3a", "add esp, 4"], ["0x10017b3d", "ret "], ["0x10017b3e", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017b41", "cmp dword ptr [edi + 0xc4], eax"], ["0x10017b47", "jne 0x4c"]]}, {"both": [["0x1000a8cc", "push 0xfc", "0x10017b49"], ["0x1000a8d1", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017b4e"]]}, {"orig": [["0x1000a8d6", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a8d9", "add esp, 4"], ["0x1000a8dc", "mov byte ptr [ebp - 4], 0x47"], ["0x1000a8e0", "mov edi, eax"], ["0x1000a8e2", "mov eax, 0"], ["0x1000a8e7", "test edi, edi"], ["0x1000a8e9", "je 0x40f"], ["0x1000a8ef", "mov ecx, edi"]], "recomp": [["0x10017b53", "add esp, 4"], ["0x10017b56", "mov dword ptr [ebp - 0x10], eax"], ["0x10017b59", "mov byte ptr [ebp - 4], 0x4b"], ["0x10017b5d", "test eax, eax"], ["0x10017b5f", "je 0xc"], ["0x10017b61", "mov ecx, eax"]]}, {"both": [["0x1000a8f1", "call InfocenterDoor::InfocenterDoor (FUNCTION)", "0x10017b63"]]}, {"orig": [["0x1000a8f6", "jmp 0x403"], ["0x1000a8fb", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a8fe", "push eax"], ["0x1000a8ff", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a904", "add esp, 4"], ["0x1000a907", "ret "], ["0x1000a908", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a90b", "cmp dword ptr [esi + 0xc8], eax"], ["0x1000a911", "jne 0x3c"]], "recomp": [["0x10017b68", "mov dword ptr [ebp - 0x14], eax"], ["0x10017b6b", "jmp 0x7"], ["0x10017b6d", "mov dword ptr [ebp - 0x14], 0"], ["0x10017b74", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017b7b", "call <OFFSET5>"], ["0x10017b80", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017b83", "jmp -0x10f4"], ["0x10017b88", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017b8b", "push eax"], ["0x10017b8c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017b91", "add esp, 4"], ["0x10017b94", "ret "], ["0x10017b95", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017b98", "cmp dword ptr [edi + 0xc8], eax"], ["0x10017b9e", "jne 0x4c"]]}, {"both": [["0x1000a913", "push 0x104", "0x10017ba0"], ["0x1000a918", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017ba5"]]}, {"orig": [["0x1000a91d", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a920", "add esp, 4"], ["0x1000a923", "mov byte ptr [ebp - 4], 0x48"], ["0x1000a927", "mov edi, eax"], ["0x1000a929", "mov eax, 0"], ["0x1000a92e", "test edi, edi"], ["0x1000a930", "je 0x3c8"], ["0x1000a936", "mov ecx, edi"]], "recomp": [["0x10017baa", "add esp, 4"], ["0x10017bad", "mov dword ptr [ebp - 0x10], eax"], ["0x10017bb0", "mov byte ptr [ebp - 4], 0x4c"], ["0x10017bb4", "test eax, eax"], ["0x10017bb6", "je 0xc"], ["0x10017bb8", "mov ecx, eax"]]}, {"both": [["0x1000a938", "call Score::Score (FUNCTION)", "0x10017bba"]]}, {"orig": [["0x1000a93d", "jmp 0x3bc"], ["0x1000a942", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a945", "push eax"], ["0x1000a946", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a94b", "add esp, 4"], ["0x1000a94e", "ret "], ["0x1000a94f", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a952", "cmp dword ptr [esi + 0xcc], eax"], ["0x1000a958", "jne 0x68"]], "recomp": [["0x10017bbf", "mov dword ptr [ebp - 0x14], eax"], ["0x10017bc2", "jmp 0x7"], ["0x10017bc4", "mov dword ptr [ebp - 0x14], 0"], ["0x10017bcb", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017bd2", "call <OFFSET5>"], ["0x10017bd7", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017bda", "jmp -0x114b"], ["0x10017bdf", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017be2", "push eax"], ["0x10017be3", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017be8", "add esp, 4"], ["0x10017beb", "ret "], ["0x10017bec", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017bef", "cmp dword ptr [edi + 0xcc], eax"], ["0x10017bf5", "jne 0x77"]]}, {"both": [["0x1000a95a", "push 0xc", "0x10017bf7"]]}, {"orig": [["0x1000a95c", "mov ebx, 0x49"], ["0x1000a961", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000a966", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a969", "add esp, 4"], ["0x1000a96c", "mov edi, eax"], ["0x1000a96e", "mov byte ptr [ebp - 4], bl"], ["0x1000a971", "test edi, edi"], ["0x1000a973", "je 0x39"], ["0x1000a975", "mov ecx, edi"]], "recomp": [["0x10017bf9", "mov ebx, 0x4d"], ["0x10017bfe", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10017c03", "add esp, 4"], ["0x10017c06", "mov dword ptr [ebp - 0x10], eax"], ["0x10017c09", "mov byte ptr [ebp - 4], bl"], ["0x10017c0c", "test eax, eax"], ["0x10017c0e", "je 0x36"], ["0x10017c10", "mov ecx, eax"]]}, {"both": [["0x1000a977", "call MxCore::MxCore (FUNCTION)", "0x10017c12"]]}, {"orig": [["0x1000a97c", "mov byte ptr [ebp - 4], 0x4a"], ["0x1000a980", "mov eax, edi"], ["0x1000a982", "mov dword ptr [edi], LegoState::`vftable' (VTABLE)"], ["0x1000a988", "mov byte ptr [ebp - 4], 0x4b"], ["0x1000a98c", "mov byte ptr [edi + 8], 1"], ["0x1000a990", "mov dword ptr [edi], ScoreState::`vftable' (VTABLE)"], ["0x1000a996", "mov byte ptr [ebp - 4], bl"], ["0x1000a999", "jmp 0x360"]], "recomp": [["0x10017c17", "mov byte ptr [ebp - 4], 0x4e"], ["0x10017c1b", "mov byte ptr [ebp - 4], 0x4f"], ["0x10017c1f", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017c22", "mov byte ptr [ebp - 4], bl"], ["0x10017c25", "mov dword ptr [ebp - 0x14], eax"], ["0x10017c28", "mov dword ptr [eax], LegoState::`vftable' (VTABLE)"], ["0x10017c2e", "mov dword ptr [eax], ScoreState::`vftable' (VTABLE)"], ["0x10017c34", "jmp 0x17"]]}, {"both": [["0x1000a99e", "mov ecx, dword ptr [ebp - 0x10]", "0x10017c36"], ["0x1000a9a1", "jmp MxCore::~MxCore (FUNCTION)", "0x10017c39"], ["0x1000a9a6", "mov ecx, dword ptr [ebp - 0x10]", "0x10017c3e"], ["0x1000a9a9", "jmp LegoState::~LegoState (FUNCTION)", "0x10017c41"]]}, {"orig": [["0x1000a9ae", "xor eax, eax"], ["0x1000a9b0", "jmp 0x349"], ["0x1000a9b5", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a9b8", "push eax"], ["0x1000a9b9", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000a9be", "add esp, 4"], ["0x1000a9c1", "ret "], ["0x1000a9c2", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a9c5", "cmp dword ptr [esi + 0xd0], eax"], ["0x1000a9cb", "jne 0x3c"]], "recomp": [["0x10017c46", "mov dword ptr [ebp - 0x14], 0"], ["0x10017c4d", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017c54", "call <OFFSET5>"], ["0x10017c59", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017c5c", "jmp -0x11cd"], ["0x10017c61", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017c64", "push eax"], ["0x10017c65", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017c6a", "add esp, 4"], ["0x10017c6d", "ret "], ["0x10017c6e", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017c71", "cmp dword ptr [edi + 0xd0], eax"], ["0x10017c77", "jne 0x4c"]]}, {"both": [["0x1000a9cd", "push 0x12c", "0x10017c79"], ["0x1000a9d2", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017c7e"]]}, {"orig": [["0x1000a9d7", "mov dword ptr [ebp - 0x10], eax"], ["0x1000a9da", "add esp, 4"], ["0x1000a9dd", "mov byte ptr [ebp - 4], 0x4c"], ["0x1000a9e1", "mov edi, eax"], ["0x1000a9e3", "mov eax, 0"], ["0x1000a9e8", "test edi, edi"], ["0x1000a9ea", "je 0x30e"], ["0x1000a9f0", "mov ecx, edi"]], "recomp": [["0x10017c83", "add esp, 4"], ["0x10017c86", "mov dword ptr [ebp - 0x10], eax"], ["0x10017c89", "mov byte ptr [ebp - 4], 0x50"], ["0x10017c8d", "test eax, eax"], ["0x10017c8f", "je 0xc"], ["0x10017c91", "mov ecx, eax"]]}, {"both": [["0x1000a9f2", "call Hospital::Hospital (FUNCTION)", "0x10017c93"]]}, {"orig": [["0x1000a9f7", "jmp 0x302"], ["0x1000a9fc", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000a9ff", "push eax"], ["0x1000aa00", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000aa05", "add esp, 4"], ["0x1000aa08", "ret "], ["0x1000aa09", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000aa0c", "cmp dword ptr [esi + 0xd4], eax"], ["0x1000aa12", "jne 0x3c"]], "recomp": [["0x10017c98", "mov dword ptr [ebp - 0x14], eax"], ["0x10017c9b", "jmp 0x7"], ["0x10017c9d", "mov dword ptr [ebp - 0x14], 0"], ["0x10017ca4", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017cab", "call <OFFSET5>"], ["0x10017cb0", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017cb3", "jmp -0x1224"], ["0x10017cb8", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017cbb", "push eax"], ["0x10017cbc", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017cc1", "add esp, 4"], ["0x10017cc4", "ret "], ["0x10017cc5", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017cc8", "cmp dword ptr [edi + 0xd4], eax"], ["0x10017cce", "jne 0x4c"]]}, {"both": [["0x1000aa14", "push 0x140", "0x10017cd0"], ["0x1000aa19", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017cd5"]]}, {"orig": [["0x1000aa1e", "mov dword ptr [ebp - 0x10], eax"], ["0x1000aa21", "add esp, 4"], ["0x1000aa24", "mov byte ptr [ebp - 4], 0x4d"], ["0x1000aa28", "mov edi, eax"], ["0x1000aa2a", "mov eax, 0"], ["0x1000aa2f", "test edi, edi"], ["0x1000aa31", "je 0x2c7"], ["0x1000aa37", "mov ecx, edi"]], "recomp": [["0x10017cda", "add esp, 4"], ["0x10017cdd", "mov dword ptr [ebp - 0x10], eax"], ["0x10017ce0", "mov byte ptr [ebp - 4], 0x51"], ["0x10017ce4", "test eax, eax"], ["0x10017ce6", "je 0xc"], ["0x10017ce8", "mov ecx, eax"]]}, {"both": [["0x1000aa39", "call Isle::Isle (FUNCTION)", "0x10017cea"]]}, {"orig": [["0x1000aa3e", "jmp 0x2bb"], ["0x1000aa43", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000aa46", "push eax"], ["0x1000aa47", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000aa4c", "add esp, 4"], ["0x1000aa4f", "ret "], ["0x1000aa50", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000aa53", "cmp dword ptr [esi + 0xd8], eax"], ["0x1000aa59", "jne 0x3c"]], "recomp": [["0x10017cef", "mov dword ptr [ebp - 0x14], eax"], ["0x10017cf2", "jmp 0x7"], ["0x10017cf4", "mov dword ptr [ebp - 0x14], 0"], ["0x10017cfb", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017d02", "call <OFFSET5>"], ["0x10017d07", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017d0a", "jmp -0x127b"], ["0x10017d0f", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017d12", "push eax"], ["0x10017d13", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017d18", "add esp, 4"], ["0x10017d1b", "ret "], ["0x10017d1c", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017d1f", "cmp dword ptr [edi + 0xd8], eax"], ["0x10017d25", "jne 0x4c"]]}, {"both": [["0x1000aa5b", "push 0x110", "0x10017d27"], ["0x1000aa60", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017d2c"]]}, {"orig": [["0x1000aa65", "mov dword ptr [ebp - 0x10], eax"], ["0x1000aa68", "add esp, 4"], ["0x1000aa6b", "mov byte ptr [ebp - 4], 0x4e"], ["0x1000aa6f", "mov edi, eax"], ["0x1000aa71", "mov eax, 0"], ["0x1000aa76", "test edi, edi"], ["0x1000aa78", "je 0x280"], ["0x1000aa7e", "mov ecx, edi"]], "recomp": [["0x10017d31", "add esp, 4"], ["0x10017d34", "mov dword ptr [ebp - 0x10], eax"], ["0x10017d37", "mov byte ptr [ebp - 4], 0x52"], ["0x10017d3b", "test eax, eax"], ["0x10017d3d", "je 0xc"], ["0x10017d3f", "mov ecx, eax"]]}, {"both": [["0x1000aa80", "call Police::Police (FUNCTION)", "0x10017d41"]]}, {"orig": [["0x1000aa85", "jmp 0x274"], ["0x1000aa8a", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000aa8d", "push eax"], ["0x1000aa8e", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000aa93", "add esp, 4"], ["0x1000aa96", "ret "], ["0x1000aa97", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000aa9a", "cmp dword ptr [esi + 0xdc], eax"], ["0x1000aaa0", "jne 0x3c"]], "recomp": [["0x10017d46", "mov dword ptr [ebp - 0x14], eax"], ["0x10017d49", "jmp 0x7"], ["0x10017d4b", "mov dword ptr [ebp - 0x14], 0"], ["0x10017d52", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017d59", "call <OFFSET5>"], ["0x10017d5e", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017d61", "jmp -0x12d2"], ["0x10017d66", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017d69", "push eax"], ["0x10017d6a", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017d6f", "add esp, 4"], ["0x10017d72", "ret "], ["0x10017d73", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017d76", "cmp dword ptr [edi + 0xdc], eax"], ["0x10017d7c", "jne 0x4c"]]}, {"both": [["0x1000aaa2", "push 0x128", "0x10017d7e"], ["0x1000aaa7", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017d83"]]}, {"orig": [["0x1000aaac", "mov dword ptr [ebp - 0x10], eax"], ["0x1000aaaf", "add esp, 4"], ["0x1000aab2", "mov byte ptr [ebp - 4], 0x4f"], ["0x1000aab6", "mov edi, eax"], ["0x1000aab8", "mov eax, 0"], ["0x1000aabd", "test edi, edi"], ["0x1000aabf", "je 0x239"], ["0x1000aac5", "mov ecx, edi"]], "recomp": [["0x10017d88", "add esp, 4"], ["0x10017d8b", "mov dword ptr [ebp - 0x10], eax"], ["0x10017d8e", "mov byte ptr [ebp - 4], 0x53"], ["0x10017d92", "test eax, eax"], ["0x10017d94", "je 0xc"], ["0x10017d96", "mov ecx, eax"]]}, {"both": [["0x1000aac7", "call GasStation::GasStation (FUNCTION)", "0x10017d98"]]}, {"orig": [["0x1000aacc", "jmp 0x22d"], ["0x1000aad1", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000aad4", "push eax"], ["0x1000aad5", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000aada", "add esp, 4"], ["0x1000aadd", "ret "], ["0x1000aade", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000aae1", "cmp dword ptr [esi + 0xe0], eax"], ["0x1000aae7", "jne 0x3c"]], "recomp": [["0x10017d9d", "mov dword ptr [ebp - 0x14], eax"], ["0x10017da0", "jmp 0x7"], ["0x10017da2", "mov dword ptr [ebp - 0x14], 0"], ["0x10017da9", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017db0", "call <OFFSET5>"], ["0x10017db5", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017db8", "jmp -0x1329"], ["0x10017dbd", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017dc0", "push eax"], ["0x10017dc1", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017dc6", "add esp, 4"], ["0x10017dc9", "ret "], ["0x10017dca", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017dcd", "cmp dword ptr [edi + 0xe0], eax"], ["0x10017dd3", "jne 0xca"]]}, {"both": [["0x1000aae9", "push 0x1154", "0x10017dd9"]]}, {"orig": [["0x1000aaee", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000aaf3", "mov dword ptr [ebp - 0x10], eax"], ["0x1000aaf6", "add esp, 4"], ["0x1000aaf9", "mov byte ptr [ebp - 4], 0x50"], ["0x1000aafd", "mov edi, eax"], ["0x1000aaff", "mov eax, 0"], ["0x1000ab04", "test edi, edi"], ["0x1000ab06", "je 0x1f2"], ["0x1000ab0c", "mov ecx, edi"], ["0x1000ab0e", "call <OFFSET86>"], ["0x1000ab13", "jmp 0x1e6"], ["0x1000ab18", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000ab1b", "push eax"], ["0x1000ab1c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000ab21", "add esp, 4"], ["0x1000ab24", "ret "], ["0x1000ab25", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000ab28", "cmp dword ptr [esi + 0xe4], eax"], ["0x1000ab2e", "jne 0x6f"]], "recomp": [["0x10017dde", "mov ebx, 0x54"], ["0x10017de3", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10017de8", "add esp, 4"], ["0x10017deb", "mov dword ptr [ebp - 0x10], eax"], ["0x10017dee", "mov byte ptr [ebp - 4], bl"], ["0x10017df1", "test eax, eax"], ["0x10017df3", "je 0x82"], ["0x10017df9", "mov ecx, eax"], ["0x10017dfb", "call LegoWorld::LegoWorld (FUNCTION)"], ["0x10017e00", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017e03", "push Act2Brick::~Act2Brick (FUNCTION)"], ["0x10017e08", "add eax, 0xf8"], ["0x10017e0d", "push Act2Brick::Act2Brick (FUNCTION)"], ["0x10017e12", "mov byte ptr [ebp - 4], 0x55"], ["0x10017e16", "push 0xa"], ["0x10017e18", "push 0x194"], ["0x10017e1d", "push eax"], ["0x10017e1e", "call ??_L@YGXPAXIHP6EX0@Z1@Z (UNK)"], ["0x10017e23", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10017e26", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017e29", "mov byte ptr [ebp - 4], 0x56"], ["0x10017e2d", "add ecx, 0x10e4"], ["0x10017e33", "mov byte ptr [ebp - 4], bl"], ["0x10017e36", "mov dword ptr [ebp - 0x14], eax"], ["0x10017e39", "mov dword ptr [ecx - 8], Matrix4::`vftable' (VTABLE)"], ["0x10017e40", "mov dword ptr [eax + 0x10e0], ecx"], ["0x10017e46", "mov dword ptr [eax + 0x10dc], MxMatrix::`vftable' (VTABLE)"], ["0x10017e50", "mov dword ptr [eax], LegoAct2::`vftable' (VTABLE)"], ["0x10017e56", "jmp 0x2a"], ["0x10017e58", "push Act2Brick::~Act2Brick (FUNCTION)"], ["0x10017e5d", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017e60", "push 0xa"], ["0x10017e62", "add eax, 0xf8"], ["0x10017e67", "push 0x194"], ["0x10017e6c", "push eax"], ["0x10017e6d", "call ??_M@YGXPAXIHP6EX0@Z@Z (UNK)"], ["0x10017e72", "ret "], ["0x10017e73", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10017e76", "jmp LegoWorld::~LegoWorld (FUNCTION)"], ["0x10017e7b", "mov dword ptr [ebp - 0x14], 0"], ["0x10017e82", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017e89", "call <OFFSET5>"], ["0x10017e8e", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017e91", "jmp -0x1402"], ["0x10017e96", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017e99", "push eax"], ["0x10017e9a", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017e9f", "add esp, 4"], ["0x10017ea2", "ret "], ["0x10017ea3", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017ea6", "cmp dword ptr [edi + 0xe4], eax"], ["0x10017eac", "jne 0x77"]]}, {"both": [["0x1000ab30", "push 0x10", "0x10017eae"]]}, {"orig": [["0x1000ab32", "mov ebx, 0x51"], ["0x1000ab37", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000ab3c", "mov dword ptr [ebp - 0x10], eax"], ["0x1000ab3f", "add esp, 4"], ["0x1000ab42", "mov edi, eax"], ["0x1000ab44", "mov byte ptr [ebp - 4], bl"], ["0x1000ab47", "test edi, edi"], ["0x1000ab49", "je 0x40"], ["0x1000ab4b", "mov ecx, edi"]], "recomp": [["0x10017eb0", "mov ebx, 0x57"], ["0x10017eb5", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10017eba", "add esp, 4"], ["0x10017ebd", "mov dword ptr [ebp - 0x10], eax"], ["0x10017ec0", "mov byte ptr [ebp - 4], bl"], ["0x10017ec3", "test eax, eax"], ["0x10017ec5", "je 0x36"], ["0x10017ec7", "mov ecx, eax"]]}, {"both": [["0x1000ab4d", "call MxCore::MxCore (FUNCTION)", "0x10017ec9"]]}, {"orig": [["0x1000ab52", "mov byte ptr [ebp - 4], 0x52"], ["0x1000ab56", "mov eax, edi"], ["0x1000ab58", "mov dword ptr [edi], LegoState::`vftable' (VTABLE)"], ["0x1000ab5e", "mov byte ptr [ebp - 4], 0x53"], ["0x1000ab62", "mov dword ptr [edi], LegoAct2State::`vftable' (VTABLE)"], ["0x1000ab68", "mov byte ptr [ebp - 4], bl"], ["0x1000ab6b", "mov dword ptr [edi + 8], 0"], ["0x1000ab72", "mov byte ptr [edi + 0xc], 0"], ["0x1000ab76", "jmp 0x183"]], "recomp": [["0x10017ece", "mov byte ptr [ebp - 4], 0x58"], ["0x10017ed2", "mov byte ptr [ebp - 4], 0x59"], ["0x10017ed6", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017ed9", "mov byte ptr [ebp - 4], bl"], ["0x10017edc", "mov dword ptr [ebp - 0x14], eax"], ["0x10017edf", "mov dword ptr [eax], LegoState::`vftable' (VTABLE)"], ["0x10017ee5", "mov dword ptr [eax], LegoAct2State::`vftable' (VTABLE)"], ["0x10017eeb", "jmp 0x17"]]}, {"both": [["0x1000ab7b", "mov ecx, dword ptr [ebp - 0x10]", "0x10017eed"], ["0x1000ab7e", "jmp MxCore::~MxCore (FUNCTION)", "0x10017ef0"], ["0x1000ab83", "mov ecx, dword ptr [ebp - 0x10]", "0x10017ef5"], ["0x1000ab86", "jmp LegoState::~LegoState (FUNCTION)", "0x10017ef8"]]}, {"orig": [["0x1000ab8b", "xor eax, eax"], ["0x1000ab8d", "jmp 0x16c"], ["0x1000ab92", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000ab95", "push eax"], ["0x1000ab96", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000ab9b", "add esp, 4"], ["0x1000ab9e", "ret "], ["0x1000ab9f", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000aba2", "cmp dword ptr [esi + 0xe8], eax"], ["0x1000aba8", "jne 0x3c"]], "recomp": [["0x10017efd", "mov dword ptr [ebp - 0x14], 0"], ["0x10017f04", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017f0b", "call <OFFSET5>"], ["0x10017f10", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017f13", "jmp -0x1484"], ["0x10017f18", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017f1b", "push eax"], ["0x10017f1c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017f21", "add esp, 4"], ["0x10017f24", "ret "], ["0x10017f25", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017f28", "cmp dword ptr [edi + 0xe8], eax"], ["0x10017f2e", "jne 0x4c"]]}, {"both": [["0x1000abaa", "push 0x154", "0x10017f30"], ["0x1000abaf", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017f35"]]}, {"orig": [["0x1000abb4", "mov dword ptr [ebp - 0x10], eax"], ["0x1000abb7", "add esp, 4"], ["0x1000abba", "mov byte ptr [ebp - 4], 0x54"], ["0x1000abbe", "mov edi, eax"], ["0x1000abc0", "mov eax, 0"], ["0x1000abc5", "test edi, edi"], ["0x1000abc7", "je 0x131"], ["0x1000abcd", "mov ecx, edi"]], "recomp": [["0x10017f3a", "add esp, 4"], ["0x10017f3d", "mov dword ptr [ebp - 0x10], eax"], ["0x10017f40", "mov byte ptr [ebp - 4], 0x5a"], ["0x10017f44", "test eax, eax"], ["0x10017f46", "je 0xc"], ["0x10017f48", "mov ecx, eax"]]}, {"both": [["0x1000abcf", "call CarRace::CarRace (FUNCTION)", "0x10017f4a"]]}, {"orig": [["0x1000abd4", "jmp 0x125"], ["0x1000abd9", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000abdc", "push eax"], ["0x1000abdd", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000abe2", "add esp, 4"], ["0x1000abe5", "ret "], ["0x1000abe6", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000abe9", "cmp dword ptr [esi + 0xec], eax"], ["0x1000abef", "je 0xe2"], ["0x1000abf5", "cmp dword ptr [esi + 0xf0], eax"], ["0x1000abfb", "je 0xd6"], ["0x1000ac01", "cmp dword ptr [esi + 0xf4], eax"], ["0x1000ac07", "je 0xca"], ["0x1000ac0d", "cmp dword ptr [esi + 0xf8], eax"], ["0x1000ac13", "je 0xbe"], ["0x1000ac19", "cmp dword ptr [esi + 0xfc], eax"], ["0x1000ac1f", "jne 0x39"]], "recomp": [["0x10017f4f", "mov dword ptr [ebp - 0x14], eax"], ["0x10017f52", "jmp 0x7"], ["0x10017f54", "mov dword ptr [ebp - 0x14], 0"], ["0x10017f5b", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017f62", "call <OFFSET5>"], ["0x10017f67", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017f6a", "jmp -0x14db"], ["0x10017f6f", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017f72", "push eax"], ["0x10017f73", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017f78", "add esp, 4"], ["0x10017f7b", "ret "], ["0x10017f7c", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017f7f", "cmp dword ptr [edi + 0xec], eax"], ["0x10017f85", "jne 0x49"]]}, {"both": [["0x1000ac21", "push 0x18", "0x10017f87"], ["0x1000ac23", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017f89"]]}, {"orig": [["0x1000ac28", "mov dword ptr [ebp - 0x10], eax"], ["0x1000ac2b", "add esp, 4"], ["0x1000ac2e", "mov byte ptr [ebp - 4], 0x55"], ["0x1000ac32", "mov edi, eax"], ["0x1000ac34", "mov eax, 0"], ["0x1000ac39", "test edi, edi"], ["0x1000ac3b", "je 0xbd"], ["0x1000ac41", "mov ecx, edi"]], "recomp": [["0x10017f8e", "add esp, 4"], ["0x10017f91", "mov dword ptr [ebp - 0x10], eax"], ["0x10017f94", "mov byte ptr [ebp - 4], 0x5b"], ["0x10017f98", "test eax, eax"], ["0x10017f9a", "je 0xc"], ["0x10017f9c", "mov ecx, eax"]]}, {"both": [["0x1000ac43", "call HospitalState::HospitalState (FUNCTION)", "0x10017f9e"]]}, {"orig": [["0x1000ac48", "jmp 0xb1"], ["0x1000ac4d", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000ac50", "push eax"], ["0x1000ac51", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000ac56", "add esp, 4"], ["0x1000ac59", "ret "], ["0x1000ac5a", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000ac5d", "cmp dword ptr [esi + 0x100], eax"], ["0x1000ac63", "jne 0x35"]], "recomp": [["0x10017fa3", "mov dword ptr [ebp - 0x14], eax"], ["0x10017fa6", "jmp 0x7"], ["0x10017fa8", "mov dword ptr [ebp - 0x14], 0"], ["0x10017faf", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10017fb6", "call <OFFSET5>"], ["0x10017fbb", "mov eax, dword ptr [ebp - 0x14]"], ["0x10017fbe", "jmp -0x152f"], ["0x10017fc3", "mov eax, dword ptr [ebp - 0x10]"], ["0x10017fc6", "push eax"], ["0x10017fc7", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10017fcc", "add esp, 4"], ["0x10017fcf", "ret "], ["0x10017fd0", "mov eax, dword ptr [ebp - 0x18]"], ["0x10017fd3", "cmp dword ptr [edi + 0xf0], eax"], ["0x10017fd9", "jne 0x4c"]]}, {"both": [["0x1000ac65", "push 0x94", "0x10017fdb"], ["0x1000ac6a", "call ??2@YAPAXI@Z (FUNCTION)", "0x10017fe0"]]}, {"orig": [["0x1000ac6f", "mov dword ptr [ebp - 0x10], eax"], ["0x1000ac72", "add esp, 4"], ["0x1000ac75", "mov byte ptr [ebp - 4], 0x56"], ["0x1000ac79", "mov edi, eax"], ["0x1000ac7b", "mov eax, 0"], ["0x1000ac80", "test edi, edi"], ["0x1000ac82", "je 0x7a"], ["0x1000ac84", "mov ecx, edi"]], "recomp": [["0x10017fe5", "add esp, 4"], ["0x10017fe8", "mov dword ptr [ebp - 0x10], eax"], ["0x10017feb", "mov byte ptr [ebp - 4], 0x5c"], ["0x10017fef", "test eax, eax"], ["0x10017ff1", "je 0xc"], ["0x10017ff3", "mov ecx, eax"]]}, {"both": [["0x1000ac86", "call InfocenterState::InfocenterState (FUNCTION)", "0x10017ff5"]]}, {"orig": [["0x1000ac8b", "jmp 0x71"], ["0x1000ac8d", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000ac90", "push eax"], ["0x1000ac91", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000ac96", "add esp, 4"], ["0x1000ac99", "ret "], ["0x1000ac9a", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000ac9d", "cmp dword ptr [esi + 0x104], eax"], ["0x1000aca3", "jne 0x60"]], "recomp": [["0x10017ffa", "mov dword ptr [ebp - 0x14], eax"], ["0x10017ffd", "jmp 0x7"], ["0x10017fff", "mov dword ptr [ebp - 0x14], 0"], ["0x10018006", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001800d", "call <OFFSET5>"], ["0x10018012", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018015", "jmp -0x1586"], ["0x1001801a", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001801d", "push eax"], ["0x1001801e", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018023", "add esp, 4"], ["0x10018026", "ret "], ["0x10018027", "mov eax, dword ptr [ebp - 0x18]"], ["0x1001802a", "cmp dword ptr [edi + 0xf4], eax"], ["0x10018030", "jne 0x49"]]}, {"both": [["0x1000aca5", "push 0x10", "0x10018032"], ["0x1000aca7", "call ??2@YAPAXI@Z (FUNCTION)", "0x10018034"]]}, {"orig": [["0x1000acac", "mov dword ptr [ebp - 0x10], eax"], ["0x1000acaf", "add esp, 4"], ["0x1000acb2", "mov byte ptr [ebp - 4], 0x57"], ["0x1000acb6", "mov edi, eax"], ["0x1000acb8", "mov eax, 0"], ["0x1000acbd", "test edi, edi"], ["0x1000acbf", "je 0x3d"], ["0x1000acc1", "mov ecx, edi"]], "recomp": [["0x10018039", "add esp, 4"], ["0x1001803c", "mov dword ptr [ebp - 0x10], eax"], ["0x1001803f", "mov byte ptr [ebp - 4], 0x5d"], ["0x10018043", "test eax, eax"], ["0x10018045", "je 0xc"], ["0x10018047", "mov ecx, eax"]]}, {"both": [["0x1000acc3", "call PoliceState::PoliceState (FUNCTION)", "0x10018049"]]}, {"orig": [["0x1000acc8", "jmp 0x34"], ["0x1000acca", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000accd", "push eax"], ["0x1000acce", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000acd3", "add esp, 4"], ["0x1000acd6", "ret "], ["0x1000acd7", "push 0x50"], ["0x1000acd9", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000acde", "mov dword ptr [ebp - 0x10], eax"], ["0x1000ace1", "add esp, 4"], ["0x1000ace4", "mov byte ptr [ebp - 4], 0x58"], ["0x1000ace8", "mov edi, eax"], ["0x1000acea", "mov eax, 0"], ["0x1000acef", "test edi, edi"], ["0x1000acf1", "je 0xb"], ["0x1000acf3", "mov eax, dword ptr [ebp + 8]"], ["0x1000acf6", "mov ecx, edi"], ["0x1000acf8", "push eax"], ["0x1000acf9", "call LegoVehicleBuildState::LegoVehicleBuildState (FUNCTION)"], ["0x1000acfe", "mov byte ptr [ebp - 4], 0"], ["0x1000ad02", "mov dword ptr [ebp - 0x14], eax"], ["0x1000ad05", "cmp dword ptr [ebp - 0x14], 0"], ["0x1000ad09", "je 0x22"], ["0x1000ad0b", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1000ad12", "call <OFFSET93>"], ["0x1000ad17", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000ad1a", "mov ecx, dword ptr [ebp - 0xc]"], ["0x1000ad1d", "mov dword ptr fs:[0], ecx"], ["0x1000ad24", "pop edi"], ["0x1000ad25", "pop esi"], ["0x1000ad26", "pop ebx"], ["0x1000ad27", "mov esp, ebp"], ["0x1000ad29", "pop ebp"], ["0x1000ad2a", "ret 4"], ["0x1000ad2d", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000ad30", "cmp dword ptr [esi + 0x108], eax"], ["0x1000ad36", "jne 0x39"]], "recomp": [["0x1001804e", "mov dword ptr [ebp - 0x14], eax"], ["0x10018051", "jmp 0x7"], ["0x10018053", "mov dword ptr [ebp - 0x14], 0"], ["0x1001805a", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018061", "call <OFFSET5>"], ["0x10018066", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018069", "jmp -0x15da"], ["0x1001806e", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018071", "push eax"], ["0x10018072", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018077", "add esp, 4"], ["0x1001807a", "ret "], ["0x1001807b", "mov eax, dword ptr [ebp - 0x18]"], ["0x1001807e", "cmp dword ptr [edi + 0xf8], eax"], ["0x10018084", "jne 0x49"]]}, {"both": [["0x1000ad38", "push 0x24", "0x10018086"], ["0x1000ad3a", "call ??2@YAPAXI@Z (FUNCTION)", "0x10018088"]]}, {"orig": [["0x1000ad3f", "mov dword ptr [ebp - 0x10], eax"], ["0x1000ad42", "add esp, 4"], ["0x1000ad45", "mov byte ptr [ebp - 4], 0x59"], ["0x1000ad49", "mov esi, eax"], ["0x1000ad4b", "mov eax, 0"], ["0x1000ad50", "test esi, esi"], ["0x1000ad52", "je 0x7"], ["0x1000ad54", "mov ecx, esi"]], "recomp": [["0x1001808d", "add esp, 4"], ["0x10018090", "mov dword ptr [ebp - 0x10], eax"], ["0x10018093", "mov byte ptr [ebp - 4], 0x5e"], ["0x10018097", "test eax, eax"], ["0x10018099", "je 0xc"], ["0x1001809b", "mov ecx, eax"]]}, {"both": [["0x1000ad56", "call GasStationState::GasStationState (FUNCTION)", "0x1001809d"]]}, {"orig": [["0x1000ad5b", "mov byte ptr [ebp - 4], 0"], ["0x1000ad5f", "jmp 0x109d"], ["0x1000ad64", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000ad67", "push eax"], ["0x1000ad68", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000ad6d", "add esp, 4"], ["0x1000ad70", "ret "], ["0x1000ad71", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000ad74", "cmp dword ptr [esi + 0x10c], eax"], ["0x1000ad7a", "jne 0x3c"]], "recomp": [["0x100180a2", "mov dword ptr [ebp - 0x14], eax"], ["0x100180a5", "jmp 0x7"], ["0x100180a7", "mov dword ptr [ebp - 0x14], 0"], ["0x100180ae", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100180b5", "call <OFFSET5>"], ["0x100180ba", "mov eax, dword ptr [ebp - 0x14]"], ["0x100180bd", "jmp -0x162e"], ["0x100180c2", "mov eax, dword ptr [ebp - 0x10]"], ["0x100180c5", "push eax"], ["0x100180c6", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100180cb", "add esp, 4"], ["0x100180ce", "ret "], ["0x100180cf", "mov eax, dword ptr [ebp - 0x18]"], ["0x100180d2", "cmp dword ptr [edi + 0xfc], eax"], ["0x100180d8", "jne 0x4c"]]}, {"both": [["0x1000ad7c", "push 0x168", "0x100180da"], ["0x1000ad81", "call ??2@YAPAXI@Z (FUNCTION)", "0x100180df"]]}, {"orig": [["0x1000ad86", "mov dword ptr [ebp - 0x10], eax"], ["0x1000ad89", "add esp, 4"], ["0x1000ad8c", "mov byte ptr [ebp - 4], 0x5a"], ["0x1000ad90", "mov esi, eax"], ["0x1000ad92", "mov eax, 0"], ["0x1000ad97", "test esi, esi"], ["0x1000ad99", "je 0x7"], ["0x1000ad9b", "mov ecx, esi"]], "recomp": [["0x100180e4", "add esp, 4"], ["0x100180e7", "mov dword ptr [ebp - 0x10], eax"], ["0x100180ea", "mov byte ptr [ebp - 4], 0x5f"], ["0x100180ee", "test eax, eax"], ["0x100180f0", "je 0xc"], ["0x100180f2", "mov ecx, eax"]]}, {"both": [["0x1000ad9d", "call SkateBoard::SkateBoard (FUNCTION)", "0x100180f4"]]}, {"orig": [["0x1000ada2", "mov byte ptr [ebp - 4], 0"], ["0x1000ada6", "jmp 0x1056"], ["0x1000adab", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000adae", "push eax"], ["0x1000adaf", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000adb4", "add esp, 4"], ["0x1000adb7", "ret "], ["0x1000adb8", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000adbb", "cmp dword ptr [esi + 0x110], eax"], ["0x1000adc1", "jne 0x3c"]], "recomp": [["0x100180f9", "mov dword ptr [ebp - 0x14], eax"], ["0x100180fc", "jmp 0x7"], ["0x100180fe", "mov dword ptr [ebp - 0x14], 0"], ["0x10018105", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001810c", "call <OFFSET5>"], ["0x10018111", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018114", "jmp -0x1685"], ["0x10018119", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001811c", "push eax"], ["0x1001811d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018122", "add esp, 4"], ["0x10018125", "ret "], ["0x10018126", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018129", "cmp dword ptr [edi + 0x100], eax"], ["0x1001812f", "jne 0x4c"]]}, {"both": [["0x1000adc3", "push 0x230", "0x10018131"], ["0x1000adc8", "call ??2@YAPAXI@Z (FUNCTION)", "0x10018136"]]}, {"orig": [["0x1000adcd", "mov dword ptr [ebp - 0x10], eax"], ["0x1000add0", "add esp, 4"], ["0x1000add3", "mov byte ptr [ebp - 4], 0x5b"], ["0x1000add7", "mov esi, eax"], ["0x1000add9", "mov eax, 0"], ["0x1000adde", "test esi, esi"], ["0x1000ade0", "je 0x7"], ["0x1000ade2", "mov ecx, esi"]], "recomp": [["0x1001813b", "add esp, 4"], ["0x1001813e", "mov dword ptr [ebp - 0x10], eax"], ["0x10018141", "mov byte ptr [ebp - 4], 0x60"], ["0x10018145", "test eax, eax"], ["0x10018147", "je 0xc"], ["0x10018149", "mov ecx, eax"]]}, {"both": [["0x1000ade4", "call Helicopter::Helicopter (FUNCTION)", "0x1001814b"]]}, {"orig": [["0x1000ade9", "mov byte ptr [ebp - 4], 0"], ["0x1000aded", "jmp 0x100f"], ["0x1000adf2", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000adf5", "push eax"], ["0x1000adf6", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000adfb", "add esp, 4"], ["0x1000adfe", "ret "], ["0x1000adff", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000ae02", "cmp dword ptr [esi + 0x114], eax"], ["0x1000ae08", "jne 0x6c"]], "recomp": [["0x10018150", "mov dword ptr [ebp - 0x14], eax"], ["0x10018153", "jmp 0x7"], ["0x10018155", "mov dword ptr [ebp - 0x14], 0"], ["0x1001815c", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018163", "call <OFFSET5>"], ["0x10018168", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001816b", "jmp -0x16dc"], ["0x10018170", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018173", "push eax"], ["0x10018174", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018179", "add esp, 4"], ["0x1001817c", "ret "], ["0x1001817d", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018180", "cmp dword ptr [edi + 0x104], eax"], ["0x10018186", "jne 0x77"]]}, {"both": [["0x1000ae0a", "push 0xc", "0x10018188"]]}, {"orig": [["0x1000ae0c", "mov ebx, 0x5c"], ["0x1000ae11", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000ae16", "mov dword ptr [ebp - 0x10], eax"], ["0x1000ae19", "add esp, 4"], ["0x1000ae1c", "mov esi, eax"], ["0x1000ae1e", "mov byte ptr [ebp - 4], bl"], ["0x1000ae21", "test esi, esi"], ["0x1000ae23", "je 0x39"], ["0x1000ae25", "mov ecx, esi"]], "recomp": [["0x1001818a", "mov ebx, 0x61"], ["0x1001818f", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018194", "add esp, 4"], ["0x10018197", "mov dword ptr [ebp - 0x10], eax"], ["0x1001819a", "mov byte ptr [ebp - 4], bl"], ["0x1001819d", "test eax, eax"], ["0x1001819f", "je 0x36"], ["0x100181a1", "mov ecx, eax"]]}, {"both": [["0x1000ae27", "call MxCore::MxCore (FUNCTION)", "0x100181a3"]]}, {"orig": [["0x1000ae2c", "mov byte ptr [ebp - 4], 0x5d"], ["0x1000ae30", "mov eax, esi"], ["0x1000ae32", "mov dword ptr [esi], LegoState::`vftable' (VTABLE)"], ["0x1000ae38", "mov byte ptr [ebp - 4], 0x5e"], ["0x1000ae3c", "mov dword ptr [esi + 8], 0"], ["0x1000ae43", "mov dword ptr [esi], HelicopterState::`vftable' (VTABLE)"], ["0x1000ae49", "mov byte ptr [ebp - 4], bl"], ["0x1000ae4c", "jmp 0x12"]], "recomp": [["0x100181a8", "mov byte ptr [ebp - 4], 0x62"], ["0x100181ac", "mov byte ptr [ebp - 4], 0x63"], ["0x100181b0", "mov eax, dword ptr [ebp - 0x10]"], ["0x100181b3", "mov byte ptr [ebp - 4], bl"], ["0x100181b6", "mov dword ptr [ebp - 0x14], eax"], ["0x100181b9", "mov dword ptr [eax], LegoState::`vftable' (VTABLE)"], ["0x100181bf", "mov dword ptr [eax], HelicopterState::`vftable' (VTABLE)"], ["0x100181c5", "jmp 0x17"]]}, {"both": [["0x1000ae4e", "mov ecx, dword ptr [ebp - 0x10]", "0x100181c7"], ["0x1000ae51", "jmp MxCore::~MxCore (FUNCTION)", "0x100181ca"], ["0x1000ae56", "mov ecx, dword ptr [ebp - 0x10]", "0x100181cf"], ["0x1000ae59", "jmp LegoState::~LegoState (FUNCTION)", "0x100181d2"]]}, {"orig": [["0x1000ae5e", "xor eax, eax"], ["0x1000ae60", "mov byte ptr [ebp - 4], 0"], ["0x1000ae64", "jmp 0xf98"], ["0x1000ae69", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000ae6c", "push eax"], ["0x1000ae6d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000ae72", "add esp, 4"], ["0x1000ae75", "ret "], ["0x1000ae76", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000ae79", "cmp dword ptr [esi + 0x118], eax"], ["0x1000ae7f", "jne 0x3c"]], "recomp": [["0x100181d7", "mov dword ptr [ebp - 0x14], 0"], ["0x100181de", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100181e5", "call <OFFSET5>"], ["0x100181ea", "mov eax, dword ptr [ebp - 0x14]"], ["0x100181ed", "jmp -0x175e"], ["0x100181f2", "mov eax, dword ptr [ebp - 0x10]"], ["0x100181f5", "push eax"], ["0x100181f6", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100181fb", "add esp, 4"], ["0x100181fe", "ret "], ["0x100181ff", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018202", "cmp dword ptr [edi + 0x108], eax"], ["0x10018208", "jne 0x4c"]]}, {"both": [["0x1000ae81", "push 0x16c", "0x1001820a"], ["0x1000ae86", "call ??2@YAPAXI@Z (FUNCTION)", "0x1001820f"]]}, {"orig": [["0x1000ae8b", "mov dword ptr [ebp - 0x10], eax"], ["0x1000ae8e", "add esp, 4"], ["0x1000ae91", "mov byte ptr [ebp - 4], 0x5f"], ["0x1000ae95", "mov esi, eax"], ["0x1000ae97", "mov eax, 0"], ["0x1000ae9c", "test esi, esi"], ["0x1000ae9e", "je 0x7"], ["0x1000aea0", "mov ecx, esi"]], "recomp": [["0x10018214", "add esp, 4"], ["0x10018217", "mov dword ptr [ebp - 0x10], eax"], ["0x1001821a", "mov byte ptr [ebp - 4], 0x64"], ["0x1001821e", "test eax, eax"], ["0x10018220", "je 0xc"], ["0x10018222", "mov ecx, eax"]]}, {"both": [["0x1000aea2", "call DuneBuggy::DuneBuggy (FUNCTION)", "0x10018224"]]}, {"orig": [["0x1000aea7", "mov byte ptr [ebp - 4], 0"], ["0x1000aeab", "jmp 0xf51"], ["0x1000aeb0", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000aeb3", "push eax"], ["0x1000aeb4", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000aeb9", "add esp, 4"], ["0x1000aebc", "ret "], ["0x1000aebd", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000aec0", "cmp dword ptr [esi + 0x11c], eax"], ["0x1000aec6", "jne 0x3c"]], "recomp": [["0x10018229", "mov dword ptr [ebp - 0x14], eax"], ["0x1001822c", "jmp 0x7"], ["0x1001822e", "mov dword ptr [ebp - 0x14], 0"], ["0x10018235", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001823c", "call <OFFSET5>"], ["0x10018241", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018244", "jmp -0x17b5"], ["0x10018249", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001824c", "push eax"], ["0x1001824d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018252", "add esp, 4"], ["0x10018255", "ret "], ["0x10018256", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018259", "cmp dword ptr [edi + 0x10c], eax"], ["0x1001825f", "jne 0x4c"]]}, {"both": [["0x1000aec8", "push 0x9c", "0x10018261"], ["0x1000aecd", "call ??2@YAPAXI@Z (FUNCTION)", "0x10018266"]]}, {"orig": [["0x1000aed2", "mov dword ptr [ebp - 0x10], eax"], ["0x1000aed5", "add esp, 4"], ["0x1000aed8", "mov byte ptr [ebp - 4], 0x60"], ["0x1000aedc", "mov esi, eax"], ["0x1000aede", "mov eax, 0"], ["0x1000aee3", "test esi, esi"], ["0x1000aee5", "je 0x7"], ["0x1000aee7", "mov ecx, esi"]], "recomp": [["0x1001826b", "add esp, 4"], ["0x1001826e", "mov dword ptr [ebp - 0x10], eax"], ["0x10018271", "mov byte ptr [ebp - 4], 0x65"], ["0x10018275", "test eax, eax"], ["0x10018277", "je 0xc"], ["0x10018279", "mov ecx, eax"]]}, {"both": [["0x1000aee9", "call Pizza::Pizza (FUNCTION)", "0x1001827b"]]}, {"orig": [["0x1000aeee", "mov byte ptr [ebp - 4], 0"], ["0x1000aef2", "jmp 0xf0a"], ["0x1000aef7", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000aefa", "push eax"], ["0x1000aefb", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000af00", "add esp, 4"], ["0x1000af03", "ret "], ["0x1000af04", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000af07", "cmp dword ptr [esi + 0x120], eax"], ["0x1000af0d", "jne 0x3c"], ["0x1000af0f", "push 0xb4"], ["0x1000af14", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000af19", "mov dword ptr [ebp - 0x10], eax"], ["0x1000af1c", "add esp, 4"], ["0x1000af1f", "mov byte ptr [ebp - 4], 0x61"], ["0x1000af23", "mov esi, eax"], ["0x1000af25", "mov eax, 0"], ["0x1000af2a", "test esi, esi"], ["0x1000af2c", "je 0x7"], ["0x1000af2e", "mov ecx, esi"], ["0x1000af30", "call <OFFSET100>"], ["0x1000af35", "mov byte ptr [ebp - 4], 0"], ["0x1000af39", "jmp 0xec3"], ["0x1000af3e", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000af41", "push eax"], ["0x1000af42", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000af47", "add esp, 4"], ["0x1000af4a", "ret "], ["0x1000af4b", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000af4e", "cmp dword ptr [esi + 0x124], eax"], ["0x1000af54", "jne 0x65"], ["0x1000af56", "push 0x1a8"], ["0x1000af5b", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000af60", "mov dword ptr [ebp - 0x14], eax"], ["0x1000af63", "add esp, 4"], ["0x1000af66", "mov edi, eax"], ["0x1000af68", "mov esi, 0"], ["0x1000af6d", "mov byte ptr [ebp - 4], 0x62"], ["0x1000af71", "test edi, edi"], ["0x1000af73", "je 0xb"], ["0x1000af75", "push 1"], ["0x1000af77", "mov ecx, edi"], ["0x1000af79", "call Act2Actor::Act2Actor (FUNCTION)"], ["0x1000af7e", "mov esi, eax"], ["0x1000af80", "xor ebx, ebx"], ["0x1000af82", "mov byte ptr [ebp - 4], bl"], ["0x1000af85", "call CurrentWorld (FUNCTION)"], ["0x1000af8a", "mov dword ptr [eax + 0x1138], esi"], ["0x1000af90", "test esi, esi"], ["0x1000af92", "jne 0x8"], ["0x1000af94", "mov dword ptr [ebp - 0x14], ebx"], ["0x1000af97", "jmp -0x291"], ["0x1000af9c", "mov eax, dword ptr [esi + 4]"], ["0x1000af9f", "mov ecx, dword ptr [eax + 4]"], ["0x1000afa2", "lea edx, [ecx + esi + 4]"], ["0x1000afa6", "mov dword ptr [ebp - 0x14], edx"], ["0x1000afa9", "jmp -0x2a3"], ["0x1000afae", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000afb1", "push eax"], ["0x1000afb2", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000afb7", "add esp, 4"], ["0x1000afba", "ret "], ["0x1000afbb", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000afbe", "cmp dword ptr [esi + 0x128], eax"], ["0x1000afc4", "jne 0x3c"], ["0x1000afc6", "push 0x194"], ["0x1000afcb", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000afd0", "mov dword ptr [ebp - 0x10], eax"], ["0x1000afd3", "add esp, 4"], ["0x1000afd6", "mov byte ptr [ebp - 4], 0x63"], ["0x1000afda", "mov esi, eax"], ["0x1000afdc", "mov eax, 0"], ["0x1000afe1", "test esi, esi"], ["0x1000afe3", "je 0x7"], ["0x1000afe5", "mov ecx, esi"], ["0x1000afe7", "call Act2Brick::Act2Brick (FUNCTION)"], ["0x1000afec", "mov byte ptr [ebp - 4], 0"], ["0x1000aff0", "jmp 0xe0c"], ["0x1000aff5", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000aff8", "push eax"], ["0x1000aff9", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000affe", "add esp, 4"], ["0x1000b001", "ret "], ["0x1000b002", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b005", "cmp dword ptr [esi + 0x12c], eax"], ["0x1000b00b", "jne 0x56"], ["0x1000b00d", "push 0x154"], ["0x1000b012", "mov ebx, 0x64"], ["0x1000b017", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b01c", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b01f", "add esp, 4"], ["0x1000b022", "mov esi, eax"], ["0x1000b024", "mov byte ptr [ebp - 4], bl"], ["0x1000b027", "test esi, esi"], ["0x1000b029", "je 0x20"], ["0x1000b02b", "mov ecx, esi"], ["0x1000b02d", "call LegoPathActor::LegoPathActor (FUNCTION)"], ["0x1000b032", "mov byte ptr [ebp - 4], 0x65"], ["0x1000b036", "mov eax, esi"], ["0x1000b038", "mov dword ptr [esi], <OFFSET104>"], ["0x1000b03e", "mov byte ptr [ebp - 4], bl"], ["0x1000b041", "jmp 0xa"], ["0x1000b043", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000b046", "jmp LegoPathActor::~LegoPathActor (FUNCTION)"], ["0x1000b04b", "xor eax, eax"], ["0x1000b04d", "mov byte ptr [ebp - 4], 0"], ["0x1000b051", "jmp 0xdab"], ["0x1000b056", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b059", "push eax"], ["0x1000b05a", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b05f", "add esp, 4"], ["0x1000b062", "ret "], ["0x1000b063", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b066", "cmp dword ptr [esi + 0x130], eax"], ["0x1000b06c", "jne 0xdb"], ["0x1000b072", "push 0x68"]], "recomp": [["0x10018280", "mov dword ptr [ebp - 0x14], eax"], ["0x10018283", "jmp 0x7"], ["0x10018285", "mov dword ptr [ebp - 0x14], 0"], ["0x1001828c", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018293", "call <OFFSET5>"], ["0x10018298", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001829b", "jmp -0x180c"], ["0x100182a0", "mov eax, dword ptr [ebp - 0x10]"], ["0x100182a3", "push eax"], ["0x100182a4", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100182a9", "add esp, 4"], ["0x100182ac", "ret "], ["0x100182ad", "mov eax, dword ptr [ebp - 0x18]"], ["0x100182b0", "cmp dword ptr [edi + 0x110], eax"], ["0x100182b6", "jne 0x7a"], ["0x100182b8", "push 0xb0"]]}, {"both": [["0x1000b074", "mov ebx, 0x66", "0x100182bd"], ["0x1000b079", "call ??2@YAPAXI@Z (FUNCTION)", "0x100182c2"]]}, {"orig": [["0x1000b07e", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b081", "add esp, 4"], ["0x1000b084", "mov esi, eax"], ["0x1000b086", "mov byte ptr [ebp - 4], bl"], ["0x1000b089", "test esi, esi"], ["0x1000b08b", "je 0xa4"], ["0x1000b091", "mov ecx, esi"]], "recomp": [["0x100182c7", "add esp, 4"], ["0x100182ca", "mov dword ptr [ebp - 0x10], eax"], ["0x100182cd", "mov byte ptr [ebp - 4], bl"], ["0x100182d0", "test eax, eax"], ["0x100182d2", "je 0x36"], ["0x100182d4", "mov ecx, eax"]]}, {"both": [["0x1000b093", "call MxCore::MxCore (FUNCTION)", "0x100182d6"], ["0x1000b098", "mov byte ptr [ebp - 4], 0x67", "0x100182db"]]}, {"orig": [["0x1000b09c", "mov dword ptr [esi + 0xc], 0"]], "recomp": []}, {"both": [["0x1000b0a3", "mov byte ptr [ebp - 4], 0x68", "0x100182df"]]}, {"orig": [["0x1000b0a7", "lea eax, [esi + 0x1c]"], ["0x1000b0aa", "mov dword ptr [esi], MxEntity::`vftable' (VTABLE)"], ["0x1000b0b0", "lea edi, [esi + 0x28]"], ["0x1000b0b3", "lea ecx, [esi + 0x30]"], ["0x1000b0b6", "mov dword ptr [esi + 8], 0xffffffff"]], "recomp": [["0x100182e3", "mov eax, dword ptr [ebp - 0x10]"], ["0x100182e6", "mov byte ptr [ebp - 4], bl"], ["0x100182e9", "mov dword ptr [ebp - 0x14], eax"], ["0x100182ec", "mov dword ptr [eax], LegoState::`vftable' (VTABLE)"], ["0x100182f2", "mov dword ptr [eax], PizzaMissionState::`vftable' (VTABLE)"], ["0x100182f8", "jmp 0x17"], ["0x100182fa", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100182fd", "jmp MxCore::~MxCore (FUNCTION)"], ["0x10018302", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10018305", "jmp LegoState::~LegoState (FUNCTION)"], ["0x1001830a", "mov dword ptr [ebp - 0x14], 0"], ["0x10018311", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018318", "call <OFFSET5>"], ["0x1001831d", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018320", "jmp -0x1891"], ["0x10018325", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018328", "push eax"], ["0x10018329", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001832e", "add esp, 4"], ["0x10018331", "ret "], ["0x10018332", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018335", "cmp dword ptr [edi + 0x114], eax"], ["0x1001833b", "jne 0x64"], ["0x1001833d", "push 0x1a8"], ["0x10018342", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018347", "mov dword ptr [ebp - 0x10], eax"], ["0x1001834a", "add esp, 4"]]}, {"both": [["0x1000b0bd", "mov byte ptr [ebp - 4], 0x69", "0x1001834d"]]}, {"orig": [["0x1000b0c1", "mov dword ptr [esi + 0x14], Vector2::`vftable' (VTABLE)"], ["0x1000b0c8", "push ecx"], ["0x1000b0c9", "mov dword ptr [esi + 0x18], eax"], ["0x1000b0cc", "mov dword ptr [esi + 0x14], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x1000b0d3", "mov ecx, edi"], ["0x1000b0d5", "call Vector2::Vector2 (FUNCTION)"], ["0x1000b0da", "lea eax, [esi + 0x44]"], ["0x1000b0dd", "mov dword ptr [edi], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x1000b0e3", "lea edi, [esi + 0x3c]"], ["0x1000b0e6", "push eax"], ["0x1000b0e7", "mov ecx, edi"], ["0x1000b0e9", "call Vector2::Vector2 (FUNCTION)"], ["0x1000b0ee", "mov ecx, esi"], ["0x1000b0f0", "mov dword ptr [edi], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x1000b0f6", "mov dword ptr [esi], LegoEntity::`vftable' (VTABLE)"], ["0x1000b0fc", "call LegoEntity::Init (FUNCTION)"], ["0x1000b101", "mov byte ptr [ebp - 4], 0x6a"], ["0x1000b105", "mov eax, esi"], ["0x1000b107", "mov dword ptr [esi], Act2PoliceStation::`vftable' (VTABLE)"], ["0x1000b10d", "mov byte ptr [ebp - 4], bl"], ["0x1000b110", "jmp 0x25"], ["0x1000b112", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000b115", "add ecx, 0xc"], ["0x1000b118", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000b11d", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000b120", "jmp MxCore::~MxCore (FUNCTION)"], ["0x1000b125", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000b128", "jmp MxEntity::~MxEntity (FUNCTION)"], ["0x1000b12d", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000b130", "jmp LegoEntity::~LegoEntity (FUNCTION)"], ["0x1000b135", "xor eax, eax"], ["0x1000b137", "mov byte ptr [ebp - 4], 0"], ["0x1000b13b", "jmp 0xcc1"], ["0x1000b140", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b143", "push eax"], ["0x1000b144", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b149", "add esp, 4"], ["0x1000b14c", "ret "], ["0x1000b14d", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b150", "cmp dword ptr [esi + 0x134], eax"], ["0x1000b156", "jne 0x3c"], ["0x1000b158", "push 0x4274"], ["0x1000b15d", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b162", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b165", "add esp, 4"], ["0x1000b168", "mov byte ptr [ebp - 4], 0x6b"], ["0x1000b16c", "mov esi, eax"], ["0x1000b16e", "mov eax, 0"], ["0x1000b173", "test esi, esi"], ["0x1000b175", "je 0x7"], ["0x1000b177", "mov ecx, esi"], ["0x1000b179", "call Act3::Act3 (FUNCTION)"], ["0x1000b17e", "mov byte ptr [ebp - 4], 0"], ["0x1000b182", "jmp 0xc7a"], ["0x1000b187", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b18a", "push eax"], ["0x1000b18b", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b190", "add esp, 4"], ["0x1000b193", "ret "], ["0x1000b194", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b197", "cmp dword ptr [esi + 0x138], eax"], ["0x1000b19d", "jne 0x6c"], ["0x1000b19f", "push 0xc"], ["0x1000b1a1", "mov ebx, 0x6c"], ["0x1000b1a6", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b1ab", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b1ae", "add esp, 4"], ["0x1000b1b1", "mov esi, eax"], ["0x1000b1b3", "mov byte ptr [ebp - 4], bl"], ["0x1000b1b6", "test esi, esi"], ["0x1000b1b8", "je 0x39"], ["0x1000b1ba", "mov ecx, esi"], ["0x1000b1bc", "call MxCore::MxCore (FUNCTION)"], ["0x1000b1c1", "mov byte ptr [ebp - 4], 0x6d"], ["0x1000b1c5", "mov eax, esi"], ["0x1000b1c7", "mov dword ptr [esi], LegoState::`vftable' (VTABLE)"], ["0x1000b1cd", "mov byte ptr [ebp - 4], 0x6e"], ["0x1000b1d1", "mov dword ptr [esi], Act3State::`vftable' (VTABLE)"], ["0x1000b1d7", "mov byte ptr [ebp - 4], bl"], ["0x1000b1da", "mov dword ptr [esi + 8], 0"], ["0x1000b1e1", "jmp 0x12"], ["0x1000b1e3", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000b1e6", "jmp MxCore::~MxCore (FUNCTION)"], ["0x1000b1eb", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000b1ee", "jmp LegoState::~LegoState (FUNCTION)"], ["0x1000b1f3", "xor eax, eax"], ["0x1000b1f5", "mov byte ptr [ebp - 4], 0"], ["0x1000b1f9", "jmp 0xc03"], ["0x1000b1fe", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b201", "push eax"], ["0x1000b202", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b207", "add esp, 4"], ["0x1000b20a", "ret "], ["0x1000b20b", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b20e", "cmp dword ptr [esi + 0x13c], eax"], ["0x1000b214", "jne 0xb0"], ["0x1000b21a", "push 0x1f8"], ["0x1000b21f", "mov ebx, 0x6f"], ["0x1000b224", "xor edi, edi"], ["0x1000b226", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b22b", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b22e", "add esp, 4"], ["0x1000b231", "mov esi, eax"], ["0x1000b233", "mov byte ptr [ebp - 4], bl"], ["0x1000b236", "test esi, esi"], ["0x1000b238", "je 0x78"], ["0x1000b23a", "mov ecx, esi"], ["0x1000b23c", "call LegoPathActor::LegoPathActor (FUNCTION)"], ["0x1000b241", "mov byte ptr [ebp - 4], 0x70"], ["0x1000b245", "lea eax, [esi + 0x16c]"], ["0x1000b24b", "mov dword ptr [esi + 0x154], edi"], ["0x1000b251", "mov dword ptr [esi + 0x15c], edi"], ["0x1000b257", "mov dword ptr [esi + 0x160], edi"], ["0x1000b25d", "mov dword ptr [esi + 0x164], Matrix4::`vftable' (VTABLE)"], ["0x1000b267", "mov dword ptr [esi + 0x168], eax"], ["0x1000b26d", "lea eax, [esi + 0x1b4]"], ["0x1000b273", "mov dword ptr [esi + 0x164], MxMatrix::`vftable' (VTABLE)"], ["0x1000b27d", "mov dword ptr [esi + 0x1ac], Matrix4::`vftable' (VTABLE)"], ["0x1000b287", "mov dword ptr [esi + 0x1b0], eax"], ["0x1000b28d", "mov byte ptr [ebp - 4], bl"], ["0x1000b290", "mov dword ptr [esi + 0x1ac], MxMatrix::`vftable' (VTABLE)"], ["0x1000b29a", "mov eax, esi"], ["0x1000b29c", "mov dword ptr [esi + 0x1f4], edi"], ["0x1000b2a2", "mov dword ptr [esi], Doors::`vftable' (VTABLE)"], ["0x1000b2a8", "jmp 0xa"], ["0x1000b2aa", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000b2ad", "jmp LegoPathActor::~LegoPathActor (FUNCTION)"], ["0x1000b2b2", "xor eax, eax"], ["0x1000b2b4", "mov byte ptr [ebp - 4], 0"], ["0x1000b2b8", "jmp 0xb44"], ["0x1000b2bd", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b2c0", "push eax"], ["0x1000b2c1", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b2c6", "add esp, 4"], ["0x1000b2c9", "ret "], ["0x1000b2ca", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b2cd", "cmp dword ptr [esi + 0x140], eax"], ["0x1000b2d3", "jne 0x39"], ["0x1000b2d5", "push 0x74"], ["0x1000b2d7", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b2dc", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b2df", "add esp, 4"], ["0x1000b2e2", "mov byte ptr [ebp - 4], 0x71"], ["0x1000b2e6", "mov esi, eax"], ["0x1000b2e8", "mov eax, 0"], ["0x1000b2ed", "test esi, esi"], ["0x1000b2ef", "je 0x7"], ["0x1000b2f1", "mov ecx, esi"], ["0x1000b2f3", "call LegoAnimMMPresenter::LegoAnimMMPresenter (FUNCTION)"], ["0x1000b2f8", "mov byte ptr [ebp - 4], 0"], ["0x1000b2fc", "jmp 0xb00"], ["0x1000b301", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b304", "push eax"], ["0x1000b305", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b30a", "add esp, 4"], ["0x1000b30d", "ret "], ["0x1000b30e", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b311", "cmp dword ptr [esi + 0x144], eax"], ["0x1000b317", "jne 0x3c"], ["0x1000b319", "push 0x164"], ["0x1000b31e", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b323", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b326", "add esp, 4"], ["0x1000b329", "mov byte ptr [ebp - 4], 0x72"], ["0x1000b32d", "mov esi, eax"], ["0x1000b32f", "mov eax, 0"], ["0x1000b334", "test esi, esi"], ["0x1000b336", "je 0x7"], ["0x1000b338", "mov ecx, esi"], ["0x1000b33a", "call RaceCar::RaceCar (FUNCTION)"], ["0x1000b33f", "mov byte ptr [ebp - 4], 0"], ["0x1000b343", "jmp 0xab9"], ["0x1000b348", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b34b", "push eax"], ["0x1000b34c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b351", "add esp, 4"], ["0x1000b354", "ret "], ["0x1000b355", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b358", "cmp dword ptr [esi + 0x148], eax"], ["0x1000b35e", "jne 0x3c"], ["0x1000b360", "push 0x164"], ["0x1000b365", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b36a", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b36d", "add esp, 4"], ["0x1000b370", "mov byte ptr [ebp - 4], 0x73"], ["0x1000b374", "mov esi, eax"], ["0x1000b376", "mov eax, 0"], ["0x1000b37b", "test esi, esi"], ["0x1000b37d", "je 0x7"], ["0x1000b37f", "mov ecx, esi"], ["0x1000b381", "call Jetski::Jetski (FUNCTION)"], ["0x1000b386", "mov byte ptr [ebp - 4], 0"], ["0x1000b38a", "jmp 0xa72"], ["0x1000b38f", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b392", "push eax"], ["0x1000b393", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b398", "add esp, 4"], ["0x1000b39b", "ret "], ["0x1000b39c", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b39f", "cmp dword ptr [esi + 0x14c], eax"], ["0x1000b3a5", "jne 0x3c"], ["0x1000b3a7", "push 0x164"], ["0x1000b3ac", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b3b1", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b3b4", "add esp, 4"], ["0x1000b3b7", "mov byte ptr [ebp - 4], 0x74"], ["0x1000b3bb", "mov esi, eax"], ["0x1000b3bd", "mov eax, 0"], ["0x1000b3c2", "test esi, esi"], ["0x1000b3c4", "je 0x7"], ["0x1000b3c6", "mov ecx, esi"], ["0x1000b3c8", "call Bike::Bike (FUNCTION)"], ["0x1000b3cd", "mov byte ptr [ebp - 4], 0"], ["0x1000b3d1", "jmp 0xa2b"], ["0x1000b3d6", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b3d9", "push eax"], ["0x1000b3da", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b3df", "add esp, 4"], ["0x1000b3e2", "ret "], ["0x1000b3e3", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b3e6", "cmp dword ptr [esi + 0x150], eax"], ["0x1000b3ec", "jne 0x3c"], ["0x1000b3ee", "push 0x16c"], ["0x1000b3f3", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b3f8", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b3fb", "add esp, 4"], ["0x1000b3fe", "mov byte ptr [ebp - 4], 0x75"], ["0x1000b402", "mov esi, eax"], ["0x1000b404", "mov eax, 0"], ["0x1000b409", "test esi, esi"], ["0x1000b40b", "je 0x7"], ["0x1000b40d", "mov ecx, esi"], ["0x1000b40f", "call Motocycle::Motocycle (FUNCTION)"], ["0x1000b414", "mov byte ptr [ebp - 4], 0"], ["0x1000b418", "jmp 0x9e4"], ["0x1000b41d", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b420", "push eax"], ["0x1000b421", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b426", "add esp, 4"], ["0x1000b429", "ret "], ["0x1000b42a", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b42d", "cmp dword ptr [esi + 0x154], eax"], ["0x1000b433", "jne 0x3c"], ["0x1000b435", "push 0x184"], ["0x1000b43a", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b43f", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b442", "add esp, 4"], ["0x1000b445", "mov byte ptr [ebp - 4], 0x76"], ["0x1000b449", "mov esi, eax"], ["0x1000b44b", "mov eax, 0"], ["0x1000b450", "test esi, esi"], ["0x1000b452", "je 0x7"], ["0x1000b454", "mov ecx, esi"], ["0x1000b456", "call Ambulance::Ambulance (FUNCTION)"], ["0x1000b45b", "mov byte ptr [ebp - 4], 0"], ["0x1000b45f", "jmp 0x99d"], ["0x1000b464", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b467", "push eax"], ["0x1000b468", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b46d", "add esp, 4"], ["0x1000b470", "ret "], ["0x1000b471", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b474", "cmp dword ptr [esi + 0x158], eax"], ["0x1000b47a", "jne 0x39"], ["0x1000b47c", "push 0x24"], ["0x1000b47e", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b483", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b486", "add esp, 4"], ["0x1000b489", "mov byte ptr [ebp - 4], 0x77"], ["0x1000b48d", "mov esi, eax"], ["0x1000b48f", "mov eax, 0"], ["0x1000b494", "test esi, esi"], ["0x1000b496", "je 0x7"], ["0x1000b498", "mov ecx, esi"], ["0x1000b49a", "call AmbulanceMissionState::AmbulanceMissionState (FUNCTION)"], ["0x1000b49f", "mov byte ptr [ebp - 4], 0"], ["0x1000b4a3", "jmp 0x959"], ["0x1000b4a8", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b4ab", "push eax"], ["0x1000b4ac", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b4b1", "add esp, 4"], ["0x1000b4b4", "ret "], ["0x1000b4b5", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b4b8", "cmp dword ptr [esi + 0x15c], eax"], ["0x1000b4be", "jne 0x3c"], ["0x1000b4c0", "push 0x180"], ["0x1000b4c5", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b4ca", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b4cd", "add esp, 4"], ["0x1000b4d0", "mov byte ptr [ebp - 4], 0x78"], ["0x1000b4d4", "mov esi, eax"], ["0x1000b4d6", "mov eax, 0"], ["0x1000b4db", "test esi, esi"], ["0x1000b4dd", "je 0x7"], ["0x1000b4df", "mov ecx, esi"], ["0x1000b4e1", "call TowTrack::TowTrack (FUNCTION)"], ["0x1000b4e6", "mov byte ptr [ebp - 4], 0"], ["0x1000b4ea", "jmp 0x912"], ["0x1000b4ef", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b4f2", "push eax"], ["0x1000b4f3", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b4f8", "add esp, 4"], ["0x1000b4fb", "ret "], ["0x1000b4fc", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b4ff", "cmp dword ptr [esi + 0x160], eax"], ["0x1000b505", "jne 0x39"], ["0x1000b507", "push 0x28"], ["0x1000b509", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b50e", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b511", "add esp, 4"], ["0x1000b514", "mov byte ptr [ebp - 4], 0x79"], ["0x1000b518", "mov esi, eax"], ["0x1000b51a", "mov eax, 0"], ["0x1000b51f", "test esi, esi"], ["0x1000b521", "je 0x7"], ["0x1000b523", "mov ecx, esi"], ["0x1000b525", "call TowTrackMissionState::TowTrackMissionState (FUNCTION)"], ["0x1000b52a", "mov byte ptr [ebp - 4], 0"], ["0x1000b52e", "jmp 0x8ce"], ["0x1000b533", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b536", "push eax"], ["0x1000b537", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b53c", "add esp, 4"], ["0x1000b53f", "ret "], ["0x1000b540", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b543", "cmp dword ptr [esi + 0x164], eax"], ["0x1000b549", "jne 0x55"], ["0x1000b54b", "push 0x188"], ["0x1000b550", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b555", "mov dword ptr [ebp - 0x14], eax"], ["0x1000b558", "add esp, 4"], ["0x1000b55b", "mov byte ptr [ebp - 4], 0x7a"]], "recomp": []}, {"both": [["0x1000b55f", "mov esi, eax", "0x10018351"], ["0x1000b561", "mov eax, 0", "0x10018353"], ["0x1000b566", "test esi, esi", "0x10018358"], ["0x1000b568", "je 0x9", "0x1001835a"], ["0x1000b56a", "push 1", "0x1001835c"], ["0x1000b56c", "mov ecx, esi", "0x1001835e"]]}, {"orig": [["0x1000b56e", "call <OFFSET122>"]], "recomp": [["0x10018360", "call Act2Actor::Act2Actor (FUNCTION)"]]}, {"both": [["0x1000b573", "xor ecx, ecx", "0x10018365"], ["0x1000b575", "test eax, eax", "0x10018367"], ["0x1000b577", "mov byte ptr [ebp - 4], cl", "0x10018369"]]}, {"orig": [["0x1000b57a", "jne 0x8"], ["0x1000b57c", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000b57f", "jmp -0x879"]], "recomp": [["0x1001836c", "jne 0x5"], ["0x1001836e", "mov dword ptr [ebp - 0x10], ecx"], ["0x10018371", "jmp 0xd"]]}, {"both": [["0x1000b584", "mov ecx, dword ptr [eax + 4]", "0x10018373"], ["0x1000b587", "mov edx, dword ptr [ecx + 4]", "0x10018376"], ["0x1000b58a", "lea eax, [edx + eax + 4]", "0x10018379"]]}, {"orig": [["0x1000b58e", "jmp 0x86e"], ["0x1000b593", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000b596", "push eax"], ["0x1000b597", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b59c", "add esp, 4"], ["0x1000b59f", "ret "], ["0x1000b5a0", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b5a3", "cmp dword ptr [esi + 0x168], eax"], ["0x1000b5a9", "jne 0x55"], ["0x1000b5ab", "push 0x1b4"], ["0x1000b5b0", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b5b5", "mov dword ptr [ebp - 0x14], eax"], ["0x1000b5b8", "add esp, 4"]], "recomp": [["0x1001837d", "mov dword ptr [ebp - 0x10], eax"], ["0x10018380", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018387", "call <OFFSET5>"], ["0x1001838c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001838f", "jmp -0x1900"], ["0x10018394", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018397", "push eax"], ["0x10018398", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001839d", "add esp, 4"], ["0x100183a0", "ret "], ["0x100183a1", "mov eax, dword ptr [ebp - 0x18]"], ["0x100183a4", "cmp dword ptr [edi + 0x118], eax"], ["0x100183aa", "jne 0x4c"], ["0x100183ac", "push 0x194"], ["0x100183b1", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100183b6", "add esp, 4"], ["0x100183b9", "mov dword ptr [ebp - 0x10], eax"], ["0x100183bc", "mov byte ptr [ebp - 4], 0x6a"], ["0x100183c0", "test eax, eax"], ["0x100183c2", "je 0xc"], ["0x100183c4", "mov ecx, eax"], ["0x100183c6", "call Act2Brick::Act2Brick (FUNCTION)"], ["0x100183cb", "mov dword ptr [ebp - 0x14], eax"], ["0x100183ce", "jmp 0x7"], ["0x100183d0", "mov dword ptr [ebp - 0x14], 0"], ["0x100183d7", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100183de", "call <OFFSET5>"], ["0x100183e3", "mov eax, dword ptr [ebp - 0x14]"], ["0x100183e6", "jmp -0x1957"], ["0x100183eb", "mov eax, dword ptr [ebp - 0x10]"], ["0x100183ee", "push eax"], ["0x100183ef", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100183f4", "add esp, 4"], ["0x100183f7", "ret "], ["0x100183f8", "mov eax, dword ptr [ebp - 0x18]"], ["0x100183fb", "cmp dword ptr [edi + 0x11c], eax"], ["0x10018401", "jne 0xf1"], ["0x10018407", "push 0x68"], ["0x10018409", "mov ebx, 0x6b"], ["0x1001840e", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018413", "add esp, 4"], ["0x10018416", "mov dword ptr [ebp - 0x10], eax"], ["0x10018419", "mov byte ptr [ebp - 4], bl"], ["0x1001841c", "test eax, eax"], ["0x1001841e", "je 0xac"], ["0x10018424", "mov ecx, eax"], ["0x10018426", "call MxCore::MxCore (FUNCTION)"], ["0x1001842b", "mov byte ptr [ebp - 4], 0x6c"], ["0x1001842f", "mov byte ptr [ebp - 4], 0x6d"], ["0x10018433", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10018436", "mov byte ptr [ebp - 4], 0x6e"], ["0x1001843a", "mov dword ptr [ecx + 0xc], 0"], ["0x10018441", "lea eax, [ecx + 0x1c]"], ["0x10018444", "mov dword ptr [ecx], MxEntity::`vftable' (VTABLE)"], ["0x1001844a", "mov dword ptr [ecx + 8], 0xffffffff"], ["0x10018451", "mov dword ptr [ecx + 0x14], Vector2::`vftable' (VTABLE)"], ["0x10018458", "lea esi, [ecx + 0x3c]"], ["0x1001845b", "mov dword ptr [ecx + 0x18], eax"], ["0x1001845e", "mov dword ptr [ecx + 0x14], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x10018465", "mov dword ptr [ecx + 0x28], Vector2::`vftable' (VTABLE)"], ["0x1001846c", "lea eax, [ecx + 0x30]"], ["0x1001846f", "mov dword ptr [ecx + 0x2c], eax"], ["0x10018472", "lea eax, [ecx + 0x44]"], ["0x10018475", "mov dword ptr [ecx + 0x28], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x1001847c", "push eax"], ["0x1001847d", "mov ecx, esi"], ["0x1001847f", "call Vector2::Vector2 (FUNCTION)"], ["0x10018484", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10018487", "mov dword ptr [esi], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x1001848d", "mov dword ptr [ecx], LegoEntity::`vftable' (VTABLE)"], ["0x10018493", "call LegoEntity::Init (FUNCTION)"], ["0x10018498", "mov byte ptr [ebp - 4], 0x6f"], ["0x1001849c", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1001849f", "mov byte ptr [ebp - 4], bl"], ["0x100184a2", "mov dword ptr [ebp - 0x14], ecx"], ["0x100184a5", "mov dword ptr [ecx], Act2PoliceStation::`vftable' (VTABLE)"], ["0x100184ab", "jmp 0x2a"], ["0x100184ad", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100184b0", "add ecx, 0xc"], ["0x100184b3", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100184b8", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100184bb", "jmp MxCore::~MxCore (FUNCTION)"], ["0x100184c0", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100184c3", "jmp MxEntity::~MxEntity (FUNCTION)"], ["0x100184c8", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100184cb", "jmp LegoEntity::~LegoEntity (FUNCTION)"], ["0x100184d0", "mov dword ptr [ebp - 0x14], 0"], ["0x100184d7", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100184de", "call <OFFSET5>"], ["0x100184e3", "mov eax, dword ptr [ebp - 0x14]"], ["0x100184e6", "jmp -0x1a57"], ["0x100184eb", "mov eax, dword ptr [ebp - 0x10]"], ["0x100184ee", "push eax"], ["0x100184ef", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100184f4", "add esp, 4"], ["0x100184f7", "ret "], ["0x100184f8", "mov eax, dword ptr [ebp - 0x18]"], ["0x100184fb", "cmp dword ptr [edi + 0x120], eax"], ["0x10018501", "jne 0x4c"], ["0x10018503", "push 0x4274"], ["0x10018508", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1001850d", "add esp, 4"], ["0x10018510", "mov dword ptr [ebp - 0x10], eax"], ["0x10018513", "mov byte ptr [ebp - 4], 0x70"], ["0x10018517", "test eax, eax"], ["0x10018519", "je 0xc"], ["0x1001851b", "mov ecx, eax"], ["0x1001851d", "call Act3::Act3 (FUNCTION)"], ["0x10018522", "mov dword ptr [ebp - 0x14], eax"], ["0x10018525", "jmp 0x7"], ["0x10018527", "mov dword ptr [ebp - 0x14], 0"], ["0x1001852e", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018535", "call <OFFSET5>"], ["0x1001853a", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001853d", "jmp -0x1aae"], ["0x10018542", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018545", "push eax"], ["0x10018546", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001854b", "add esp, 4"], ["0x1001854e", "ret "], ["0x1001854f", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018552", "cmp dword ptr [edi + 0x124], eax"], ["0x10018558", "jne 0x7e"], ["0x1001855a", "push 0xc"], ["0x1001855c", "mov ebx, 0x71"], ["0x10018561", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018566", "add esp, 4"], ["0x10018569", "mov dword ptr [ebp - 0x10], eax"], ["0x1001856c", "mov byte ptr [ebp - 4], bl"], ["0x1001856f", "test eax, eax"], ["0x10018571", "je 0x3d"], ["0x10018573", "mov ecx, eax"], ["0x10018575", "call MxCore::MxCore (FUNCTION)"], ["0x1001857a", "mov byte ptr [ebp - 4], 0x72"], ["0x1001857e", "mov byte ptr [ebp - 4], 0x73"], ["0x10018582", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018585", "mov byte ptr [ebp - 4], bl"], ["0x10018588", "mov dword ptr [ebp - 0x14], eax"], ["0x1001858b", "mov dword ptr [eax], LegoState::`vftable' (VTABLE)"], ["0x10018591", "mov dword ptr [eax], Act3State::`vftable' (VTABLE)"], ["0x10018597", "mov dword ptr [eax + 8], 0"], ["0x1001859e", "jmp 0x17"], ["0x100185a0", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100185a3", "jmp MxCore::~MxCore (FUNCTION)"], ["0x100185a8", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100185ab", "jmp LegoState::~LegoState (FUNCTION)"], ["0x100185b0", "mov dword ptr [ebp - 0x14], 0"], ["0x100185b7", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100185be", "call <OFFSET5>"], ["0x100185c3", "mov eax, dword ptr [ebp - 0x14]"], ["0x100185c6", "jmp -0x1b37"], ["0x100185cb", "mov eax, dword ptr [ebp - 0x10]"], ["0x100185ce", "push eax"], ["0x100185cf", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100185d4", "add esp, 4"], ["0x100185d7", "ret "], ["0x100185d8", "mov eax, dword ptr [ebp - 0x18]"], ["0x100185db", "cmp dword ptr [edi + 0x128], eax"], ["0x100185e1", "jne 0xa8"], ["0x100185e7", "push 0x1f8"], ["0x100185ec", "mov ebx, 0x74"], ["0x100185f1", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100185f6", "add esp, 4"], ["0x100185f9", "mov dword ptr [ebp - 0x10], eax"], ["0x100185fc", "mov byte ptr [ebp - 4], bl"], ["0x100185ff", "test eax, eax"], ["0x10018601", "je 0x64"], ["0x10018603", "mov ecx, eax"], ["0x10018605", "call LegoPathActor::LegoPathActor (FUNCTION)"], ["0x1001860a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1001860d", "mov byte ptr [ebp - 4], 0x75"], ["0x10018611", "mov dword ptr [ecx + 0x164], Matrix4::`vftable' (VTABLE)"], ["0x1001861b", "lea eax, [ecx + 0x16c]"], ["0x10018621", "mov dword ptr [ecx + 0x168], eax"], ["0x10018627", "lea eax, [ecx + 0x1b4]"], ["0x1001862d", "mov byte ptr [ebp - 4], bl"], ["0x10018630", "mov dword ptr [ebp - 0x14], ecx"], ["0x10018633", "mov dword ptr [ecx + 0x164], MxMatrix::`vftable' (VTABLE)"], ["0x1001863d", "mov dword ptr [ecx + 0x1ac], Matrix4::`vftable' (VTABLE)"], ["0x10018647", "mov dword ptr [ecx + 0x1b0], eax"], ["0x1001864d", "mov dword ptr [ecx + 0x1ac], MxMatrix::`vftable' (VTABLE)"], ["0x10018657", "mov dword ptr [ecx], Doors::`vftable' (VTABLE)"], ["0x1001865d", "jmp 0xf"], ["0x1001865f", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10018662", "jmp LegoPathActor::~LegoPathActor (FUNCTION)"], ["0x10018667", "mov dword ptr [ebp - 0x14], 0"], ["0x1001866e", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018675", "call <OFFSET5>"], ["0x1001867a", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001867d", "jmp -0x1bee"], ["0x10018682", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018685", "push eax"], ["0x10018686", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001868b", "add esp, 4"], ["0x1001868e", "ret "], ["0x1001868f", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018692", "cmp dword ptr [edi + 0x12c], eax"], ["0x10018698", "jne 0x49"], ["0x1001869a", "push 0x74"], ["0x1001869c", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100186a1", "add esp, 4"], ["0x100186a4", "mov dword ptr [ebp - 0x10], eax"], ["0x100186a7", "mov byte ptr [ebp - 4], 0x76"], ["0x100186ab", "test eax, eax"], ["0x100186ad", "je 0xc"], ["0x100186af", "mov ecx, eax"], ["0x100186b1", "call LegoAnimMMPresenter::LegoAnimMMPresenter (FUNCTION)"], ["0x100186b6", "mov dword ptr [ebp - 0x14], eax"], ["0x100186b9", "jmp 0x7"], ["0x100186bb", "mov dword ptr [ebp - 0x14], 0"], ["0x100186c2", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100186c9", "call <OFFSET5>"], ["0x100186ce", "mov eax, dword ptr [ebp - 0x14]"], ["0x100186d1", "jmp -0x1c42"], ["0x100186d6", "mov eax, dword ptr [ebp - 0x10]"], ["0x100186d9", "push eax"], ["0x100186da", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100186df", "add esp, 4"], ["0x100186e2", "ret "], ["0x100186e3", "mov eax, dword ptr [ebp - 0x18]"], ["0x100186e6", "cmp dword ptr [edi + 0x130], eax"], ["0x100186ec", "jne 0x4c"], ["0x100186ee", "push 0x164"], ["0x100186f3", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100186f8", "add esp, 4"], ["0x100186fb", "mov dword ptr [ebp - 0x10], eax"], ["0x100186fe", "mov byte ptr [ebp - 4], 0x77"], ["0x10018702", "test eax, eax"], ["0x10018704", "je 0xc"], ["0x10018706", "mov ecx, eax"], ["0x10018708", "call RaceCar::RaceCar (FUNCTION)"], ["0x1001870d", "mov dword ptr [ebp - 0x14], eax"], ["0x10018710", "jmp 0x7"], ["0x10018712", "mov dword ptr [ebp - 0x14], 0"], ["0x10018719", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018720", "call <OFFSET5>"], ["0x10018725", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018728", "jmp -0x1c99"], ["0x1001872d", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018730", "push eax"], ["0x10018731", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018736", "add esp, 4"], ["0x10018739", "ret "], ["0x1001873a", "mov eax, dword ptr [ebp - 0x18]"], ["0x1001873d", "cmp dword ptr [edi + 0x134], eax"], ["0x10018743", "jne 0x4c"], ["0x10018745", "push 0x164"], ["0x1001874a", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1001874f", "add esp, 4"], ["0x10018752", "mov dword ptr [ebp - 0x10], eax"], ["0x10018755", "mov byte ptr [ebp - 4], 0x78"], ["0x10018759", "test eax, eax"], ["0x1001875b", "je 0xc"], ["0x1001875d", "mov ecx, eax"], ["0x1001875f", "call Jetski::Jetski (FUNCTION)"], ["0x10018764", "mov dword ptr [ebp - 0x14], eax"], ["0x10018767", "jmp 0x7"], ["0x10018769", "mov dword ptr [ebp - 0x14], 0"], ["0x10018770", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018777", "call <OFFSET5>"], ["0x1001877c", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001877f", "jmp -0x1cf0"], ["0x10018784", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018787", "push eax"], ["0x10018788", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001878d", "add esp, 4"], ["0x10018790", "ret "], ["0x10018791", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018794", "cmp dword ptr [edi + 0x138], eax"], ["0x1001879a", "jne 0x4c"], ["0x1001879c", "push 0x164"], ["0x100187a1", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100187a6", "add esp, 4"], ["0x100187a9", "mov dword ptr [ebp - 0x10], eax"], ["0x100187ac", "mov byte ptr [ebp - 4], 0x79"], ["0x100187b0", "test eax, eax"], ["0x100187b2", "je 0xc"], ["0x100187b4", "mov ecx, eax"], ["0x100187b6", "call Bike::Bike (FUNCTION)"], ["0x100187bb", "mov dword ptr [ebp - 0x14], eax"], ["0x100187be", "jmp 0x7"], ["0x100187c0", "mov dword ptr [ebp - 0x14], 0"], ["0x100187c7", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100187ce", "call <OFFSET5>"], ["0x100187d3", "mov eax, dword ptr [ebp - 0x14]"], ["0x100187d6", "jmp -0x1d47"], ["0x100187db", "mov eax, dword ptr [ebp - 0x10]"], ["0x100187de", "push eax"], ["0x100187df", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100187e4", "add esp, 4"], ["0x100187e7", "ret "], ["0x100187e8", "mov eax, dword ptr [ebp - 0x18]"], ["0x100187eb", "cmp dword ptr [edi + 0x13c], eax"], ["0x100187f1", "jne 0x4c"], ["0x100187f3", "push 0x16c"], ["0x100187f8", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100187fd", "add esp, 4"], ["0x10018800", "mov dword ptr [ebp - 0x10], eax"], ["0x10018803", "mov byte ptr [ebp - 4], 0x7a"], ["0x10018807", "test eax, eax"], ["0x10018809", "je 0xc"], ["0x1001880b", "mov ecx, eax"], ["0x1001880d", "call Motocycle::Motocycle (FUNCTION)"], ["0x10018812", "mov dword ptr [ebp - 0x14], eax"], ["0x10018815", "jmp 0x7"], ["0x10018817", "mov dword ptr [ebp - 0x14], 0"], ["0x1001881e", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018825", "call <OFFSET5>"], ["0x1001882a", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001882d", "jmp -0x1d9e"], ["0x10018832", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018835", "push eax"], ["0x10018836", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001883b", "add esp, 4"], ["0x1001883e", "ret "], ["0x1001883f", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018842", "cmp dword ptr [edi + 0x140], eax"], ["0x10018848", "jne 0x4c"], ["0x1001884a", "push 0x184"], ["0x1001884f", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018854", "add esp, 4"], ["0x10018857", "mov dword ptr [ebp - 0x10], eax"]]}, {"both": [["0x1000b5bb", "mov byte ptr [ebp - 4], 0x7b", "0x1001885a"]]}, {"orig": [["0x1000b5bf", "mov esi, eax"], ["0x1000b5c1", "mov eax, 0"], ["0x1000b5c6", "test esi, esi"], ["0x1000b5c8", "je 0x9"], ["0x1000b5ca", "push 1"], ["0x1000b5cc", "mov ecx, esi"], ["0x1000b5ce", "call <OFFSET123>"], ["0x1000b5d3", "xor ecx, ecx"], ["0x1000b5d5", "test eax, eax"], ["0x1000b5d7", "mov byte ptr [ebp - 4], cl"], ["0x1000b5da", "jne 0x8"], ["0x1000b5dc", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000b5df", "jmp -0x8d9"], ["0x1000b5e4", "mov ecx, dword ptr [eax + 4]"], ["0x1000b5e7", "mov edx, dword ptr [ecx + 4]"], ["0x1000b5ea", "lea eax, [edx + eax + 4]"], ["0x1000b5ee", "jmp 0x80e"], ["0x1000b5f3", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000b5f6", "push eax"], ["0x1000b5f7", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b5fc", "add esp, 4"], ["0x1000b5ff", "ret "], ["0x1000b600", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b603", "cmp dword ptr [esi + 0x16c], eax"], ["0x1000b609", "jne 0x55"]], "recomp": [["0x1001885e", "test eax, eax"], ["0x10018860", "je 0xc"], ["0x10018862", "mov ecx, eax"], ["0x10018864", "call Ambulance::Ambulance (FUNCTION)"], ["0x10018869", "mov dword ptr [ebp - 0x14], eax"], ["0x1001886c", "jmp 0x7"], ["0x1001886e", "mov dword ptr [ebp - 0x14], 0"], ["0x10018875", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001887c", "call <OFFSET5>"], ["0x10018881", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018884", "jmp -0x1df5"], ["0x10018889", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001888c", "push eax"], ["0x1001888d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018892", "add esp, 4"], ["0x10018895", "ret "], ["0x10018896", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018899", "cmp dword ptr [edi + 0x144], eax"], ["0x1001889f", "jne 0x49"], ["0x100188a1", "push 0x24"], ["0x100188a3", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100188a8", "add esp, 4"], ["0x100188ab", "mov dword ptr [ebp - 0x10], eax"], ["0x100188ae", "mov byte ptr [ebp - 4], 0x7c"], ["0x100188b2", "test eax, eax"], ["0x100188b4", "je 0xc"], ["0x100188b6", "mov ecx, eax"], ["0x100188b8", "call AmbulanceMissionState::AmbulanceMissionState (FUNCTION)"], ["0x100188bd", "mov dword ptr [ebp - 0x14], eax"], ["0x100188c0", "jmp 0x7"], ["0x100188c2", "mov dword ptr [ebp - 0x14], 0"], ["0x100188c9", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100188d0", "call <OFFSET5>"], ["0x100188d5", "mov eax, dword ptr [ebp - 0x14]"], ["0x100188d8", "jmp -0x1e49"], ["0x100188dd", "mov eax, dword ptr [ebp - 0x10]"], ["0x100188e0", "push eax"], ["0x100188e1", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100188e6", "add esp, 4"], ["0x100188e9", "ret "], ["0x100188ea", "mov eax, dword ptr [ebp - 0x18]"], ["0x100188ed", "cmp dword ptr [edi + 0x148], eax"], ["0x100188f3", "jne 0x4c"], ["0x100188f5", "push 0x180"], ["0x100188fa", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100188ff", "add esp, 4"], ["0x10018902", "mov dword ptr [ebp - 0x10], eax"], ["0x10018905", "mov byte ptr [ebp - 4], 0x7d"], ["0x10018909", "test eax, eax"], ["0x1001890b", "je 0xc"], ["0x1001890d", "mov ecx, eax"], ["0x1001890f", "call TowTrack::TowTrack (FUNCTION)"], ["0x10018914", "mov dword ptr [ebp - 0x14], eax"], ["0x10018917", "jmp 0x7"], ["0x10018919", "mov dword ptr [ebp - 0x14], 0"], ["0x10018920", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018927", "call <OFFSET5>"], ["0x1001892c", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001892f", "jmp -0x1ea0"], ["0x10018934", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018937", "push eax"], ["0x10018938", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001893d", "add esp, 4"], ["0x10018940", "ret "], ["0x10018941", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018944", "cmp dword ptr [edi + 0x14c], eax"], ["0x1001894a", "jne 0x49"], ["0x1001894c", "push 0x28"], ["0x1001894e", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018953", "add esp, 4"], ["0x10018956", "mov dword ptr [ebp - 0x10], eax"], ["0x10018959", "mov byte ptr [ebp - 4], 0x7e"], ["0x1001895d", "test eax, eax"], ["0x1001895f", "je 0xc"], ["0x10018961", "mov ecx, eax"], ["0x10018963", "call TowTrackMissionState::TowTrackMissionState (FUNCTION)"], ["0x10018968", "mov dword ptr [ebp - 0x14], eax"], ["0x1001896b", "jmp 0x7"], ["0x1001896d", "mov dword ptr [ebp - 0x14], 0"], ["0x10018974", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001897b", "call <OFFSET5>"], ["0x10018980", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018983", "jmp -0x1ef4"], ["0x10018988", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001898b", "push eax"], ["0x1001898c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018991", "add esp, 4"], ["0x10018994", "ret "], ["0x10018995", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018998", "cmp dword ptr [edi + 0x150], eax"], ["0x1001899e", "jne 0x64"]]}, {"both": [["0x1000b60b", "push 0x1a8", "0x100189a0"], ["0x1000b610", "call ??2@YAPAXI@Z (FUNCTION)", "0x100189a5"]]}, {"orig": [["0x1000b615", "mov dword ptr [ebp - 0x14], eax"], ["0x1000b618", "add esp, 4"], ["0x1000b61b", "mov byte ptr [ebp - 4], 0x7c"]], "recomp": [["0x100189aa", "mov dword ptr [ebp - 0x10], eax"], ["0x100189ad", "add esp, 4"], ["0x100189b0", "mov byte ptr [ebp - 4], 0x7f"]]}, {"both": [["0x1000b61f", "mov esi, eax", "0x100189b4"], ["0x1000b621", "mov eax, 0", "0x100189b6"], ["0x1000b626", "test esi, esi", "0x100189bb"], ["0x1000b628", "je 0x9", "0x100189bd"], ["0x1000b62a", "push 1", "0x100189bf"], ["0x1000b62c", "mov ecx, esi", "0x100189c1"], ["0x1000b62e", "call Act3Shark::Act3Shark (FUNCTION)", "0x100189c3"], ["0x1000b633", "xor ecx, ecx", "0x100189c8"], ["0x1000b635", "test eax, eax", "0x100189ca"], ["0x1000b637", "mov byte ptr [ebp - 4], cl", "0x100189cc"]]}, {"orig": [["0x1000b63a", "jne 0x8"], ["0x1000b63c", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000b63f", "jmp -0x939"]], "recomp": [["0x100189cf", "jne 0x5"], ["0x100189d1", "mov dword ptr [ebp - 0x10], ecx"], ["0x100189d4", "jmp 0xd"]]}, {"both": [["0x1000b644", "mov ecx, dword ptr [eax + 4]", "0x100189d6"], ["0x1000b647", "mov edx, dword ptr [ecx + 4]", "0x100189d9"], ["0x1000b64a", "lea eax, [edx + eax + 4]", "0x100189dc"]]}, {"orig": [["0x1000b64e", "jmp 0x7ae"], ["0x1000b653", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000b656", "push eax"], ["0x1000b657", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b65c", "add esp, 4"], ["0x1000b65f", "ret "], ["0x1000b660", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b663", "cmp dword ptr [esi + 0x174], eax"], ["0x1000b669", "jne 0x55"]], "recomp": [["0x100189e0", "mov dword ptr [ebp - 0x10], eax"], ["0x100189e3", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100189ea", "call <OFFSET5>"], ["0x100189ef", "mov eax, dword ptr [ebp - 0x10]"], ["0x100189f2", "jmp -0x1f63"], ["0x100189f7", "mov eax, dword ptr [ebp - 0x10]"], ["0x100189fa", "push eax"], ["0x100189fb", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018a00", "add esp, 4"], ["0x10018a03", "ret "], ["0x10018a04", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018a07", "cmp dword ptr [edi + 0x154], eax"], ["0x10018a0d", "jne 0x64"], ["0x10018a0f", "push 0x174"], ["0x10018a14", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018a19", "mov dword ptr [ebp - 0x10], eax"], ["0x10018a1c", "add esp, 4"], ["0x10018a1f", "mov byte ptr [ebp - 4], 0x80"], ["0x10018a23", "mov esi, eax"], ["0x10018a25", "mov eax, 0"], ["0x10018a2a", "test esi, esi"], ["0x10018a2c", "je 0x9"], ["0x10018a2e", "push 1"], ["0x10018a30", "mov ecx, esi"], ["0x10018a32", "call BumpBouy::BumpBouy (FUNCTION)"], ["0x10018a37", "xor ecx, ecx"], ["0x10018a39", "test eax, eax"], ["0x10018a3b", "mov byte ptr [ebp - 4], cl"], ["0x10018a3e", "jne 0x5"], ["0x10018a40", "mov dword ptr [ebp - 0x10], ecx"], ["0x10018a43", "jmp 0xd"], ["0x10018a45", "mov ecx, dword ptr [eax + 4]"], ["0x10018a48", "mov edx, dword ptr [ecx + 4]"], ["0x10018a4b", "lea eax, [edx + eax + 4]"], ["0x10018a4f", "mov dword ptr [ebp - 0x10], eax"], ["0x10018a52", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018a59", "call <OFFSET5>"], ["0x10018a5e", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018a61", "jmp -0x1fd2"], ["0x10018a66", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018a69", "push eax"], ["0x10018a6a", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018a6f", "add esp, 4"], ["0x10018a72", "ret "], ["0x10018a73", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018a76", "cmp dword ptr [edi + 0x158], eax"], ["0x10018a7c", "jne 0x64"]]}, {"both": [["0x1000b66b", "push 0x178", "0x10018a7e"], ["0x1000b670", "call ??2@YAPAXI@Z (FUNCTION)", "0x10018a83"]]}, {"orig": [["0x1000b675", "mov dword ptr [ebp - 0x14], eax"], ["0x1000b678", "add esp, 4"], ["0x1000b67b", "mov byte ptr [ebp - 4], 0x7d"]], "recomp": [["0x10018a88", "mov dword ptr [ebp - 0x10], eax"], ["0x10018a8b", "add esp, 4"], ["0x10018a8e", "mov byte ptr [ebp - 4], 0x81"]]}, {"both": [["0x1000b67f", "mov esi, eax", "0x10018a92"], ["0x1000b681", "mov eax, 0", "0x10018a94"], ["0x1000b686", "test esi, esi", "0x10018a99"], ["0x1000b688", "je 0x9", "0x10018a9b"], ["0x1000b68a", "push 1", "0x10018a9d"], ["0x1000b68c", "mov ecx, esi", "0x10018a9f"], ["0x1000b68e", "call Act3Actor::Act3Actor (FUNCTION)", "0x10018aa1"], ["0x1000b693", "xor ecx, ecx", "0x10018aa6"], ["0x1000b695", "test eax, eax", "0x10018aa8"], ["0x1000b697", "mov byte ptr [ebp - 4], cl", "0x10018aaa"]]}, {"orig": [["0x1000b69a", "jne 0x8"], ["0x1000b69c", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000b69f", "jmp -0x999"]], "recomp": [["0x10018aad", "jne 0x5"], ["0x10018aaf", "mov dword ptr [ebp - 0x10], ecx"], ["0x10018ab2", "jmp 0xd"]]}, {"both": [["0x1000b6a4", "mov ecx, dword ptr [eax + 4]", "0x10018ab4"], ["0x1000b6a7", "mov edx, dword ptr [ecx + 4]", "0x10018ab7"], ["0x1000b6aa", "lea eax, [edx + eax + 4]", "0x10018aba"]]}, {"orig": [["0x1000b6ae", "jmp 0x74e"], ["0x1000b6b3", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000b6b6", "push eax"], ["0x1000b6b7", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b6bc", "add esp, 4"], ["0x1000b6bf", "ret "], ["0x1000b6c0", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b6c3", "cmp dword ptr [esi + 0x170], eax"], ["0x1000b6c9", "jne 0x55"], ["0x1000b6cb", "push 0x174"], ["0x1000b6d0", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b6d5", "mov dword ptr [ebp - 0x14], eax"], ["0x1000b6d8", "add esp, 4"], ["0x1000b6db", "mov byte ptr [ebp - 4], 0x7e"], ["0x1000b6df", "mov esi, eax"], ["0x1000b6e1", "mov eax, 0"], ["0x1000b6e6", "test esi, esi"], ["0x1000b6e8", "je 0x9"], ["0x1000b6ea", "push 1"], ["0x1000b6ec", "mov ecx, esi"], ["0x1000b6ee", "call BumpBouy::BumpBouy (FUNCTION)"], ["0x1000b6f3", "xor ecx, ecx"], ["0x1000b6f5", "test eax, eax"], ["0x1000b6f7", "mov byte ptr [ebp - 4], cl"], ["0x1000b6fa", "jne 0x8"], ["0x1000b6fc", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000b6ff", "jmp -0x9f9"], ["0x1000b704", "mov ecx, dword ptr [eax + 4]"], ["0x1000b707", "mov edx, dword ptr [ecx + 4]"], ["0x1000b70a", "lea eax, [edx + eax + 4]"], ["0x1000b70e", "jmp 0x6ee"], ["0x1000b713", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000b716", "push eax"], ["0x1000b717", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b71c", "add esp, 4"], ["0x1000b71f", "ret "], ["0x1000b720", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b723", "cmp dword ptr [esi + 0x178], eax"], ["0x1000b729", "jne 0x53"]], "recomp": [["0x10018abe", "mov dword ptr [ebp - 0x10], eax"], ["0x10018ac1", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018ac8", "call <OFFSET5>"], ["0x10018acd", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018ad0", "jmp -0x2041"], ["0x10018ad5", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018ad8", "push eax"], ["0x10018ad9", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018ade", "add esp, 4"], ["0x10018ae1", "ret "], ["0x10018ae2", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018ae5", "cmp dword ptr [edi + 0x15c], eax"], ["0x10018aeb", "jne 0x62"]]}, {"both": [["0x1000b72b", "push 0x2c", "0x10018aed"]]}, {"orig": [["0x1000b72d", "mov ebx, 0x7f"], ["0x1000b732", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b737", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b73a", "add esp, 4"], ["0x1000b73d", "mov esi, eax"], ["0x1000b73f", "mov byte ptr [ebp - 4], bl"], ["0x1000b742", "test esi, esi"], ["0x1000b744", "je 0x20"], ["0x1000b746", "mov ecx, esi"]], "recomp": [["0x10018aef", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018af4", "add esp, 4"], ["0x10018af7", "mov dword ptr [ebp - 0x10], eax"], ["0x10018afa", "mov byte ptr [ebp - 4], 0x82"], ["0x10018afe", "test eax, eax"], ["0x10018b00", "je 0x25"], ["0x10018b02", "mov ecx, eax"]]}, {"both": [["0x1000b748", "call RaceState::RaceState (FUNCTION)", "0x10018b04"]]}, {"orig": [["0x1000b74d", "mov byte ptr [ebp - 4], 0x80"], ["0x1000b751", "mov eax, esi"], ["0x1000b753", "mov dword ptr [esi], JetskiRaceState::`vftable' (VTABLE)"], ["0x1000b759", "mov byte ptr [ebp - 4], bl"], ["0x1000b75c", "jmp 0xa"]], "recomp": [["0x10018b09", "mov byte ptr [ebp - 4], 0x83"], ["0x10018b0d", "mov byte ptr [ebp - 4], 0x82"], ["0x10018b11", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018b14", "mov dword ptr [ebp - 0x14], eax"], ["0x10018b17", "mov dword ptr [eax], JetskiRaceState::`vftable' (VTABLE)"], ["0x10018b1d", "jmp 0xf"]]}, {"both": [["0x1000b75e", "mov ecx, dword ptr [ebp - 0x10]", "0x10018b1f"], ["0x1000b761", "jmp RaceState::~RaceState (FUNCTION)", "0x10018b22"]]}, {"orig": [["0x1000b766", "xor eax, eax"], ["0x1000b768", "mov byte ptr [ebp - 4], 0"], ["0x1000b76c", "jmp 0x690"], ["0x1000b771", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b774", "push eax"], ["0x1000b775", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b77a", "add esp, 4"], ["0x1000b77d", "ret "], ["0x1000b77e", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b781", "cmp dword ptr [esi + 0x17c], eax"], ["0x1000b787", "jne 0x53"]], "recomp": [["0x10018b27", "mov dword ptr [ebp - 0x14], 0"], ["0x10018b2e", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018b35", "call <OFFSET5>"], ["0x10018b3a", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018b3d", "jmp -0x20ae"], ["0x10018b42", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018b45", "push eax"], ["0x10018b46", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018b4b", "add esp, 4"], ["0x10018b4e", "ret "], ["0x10018b4f", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018b52", "cmp dword ptr [edi + 0x160], eax"], ["0x10018b58", "jne 0x65"]]}, {"both": [["0x1000b789", "push 0x2c", "0x10018b5a"]]}, {"orig": [["0x1000b78b", "mov ebx, 0x81"], ["0x1000b790", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b795", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b798", "add esp, 4"], ["0x1000b79b", "mov esi, eax"], ["0x1000b79d", "mov byte ptr [ebp - 4], bl"], ["0x1000b7a0", "test esi, esi"], ["0x1000b7a2", "je 0x20"], ["0x1000b7a4", "mov ecx, esi"]], "recomp": [["0x10018b5c", "mov ebx, 0x84"], ["0x10018b61", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018b66", "add esp, 4"], ["0x10018b69", "mov dword ptr [ebp - 0x10], eax"], ["0x10018b6c", "mov byte ptr [ebp - 4], bl"], ["0x10018b6f", "test eax, eax"], ["0x10018b71", "je 0x24"], ["0x10018b73", "mov ecx, eax"]]}, {"both": [["0x1000b7a6", "call RaceState::RaceState (FUNCTION)", "0x10018b75"]]}, {"orig": [["0x1000b7ab", "mov byte ptr [ebp - 4], 0x82"], ["0x1000b7af", "mov eax, esi"], ["0x1000b7b1", "mov dword ptr [esi], CarRaceState::`vftable' (VTABLE)"], ["0x1000b7b7", "mov byte ptr [ebp - 4], bl"], ["0x1000b7ba", "jmp 0xa"]], "recomp": [["0x10018b7a", "mov byte ptr [ebp - 4], 0x85"], ["0x10018b7e", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018b81", "mov byte ptr [ebp - 4], bl"], ["0x10018b84", "mov dword ptr [ebp - 0x14], eax"], ["0x10018b87", "mov dword ptr [eax], CarRaceState::`vftable' (VTABLE)"], ["0x10018b8d", "jmp 0xf"]]}, {"both": [["0x1000b7bc", "mov ecx, dword ptr [ebp - 0x10]", "0x10018b8f"], ["0x1000b7bf", "jmp RaceState::~RaceState (FUNCTION)", "0x10018b92"]]}, {"orig": [["0x1000b7c4", "xor eax, eax"], ["0x1000b7c6", "mov byte ptr [ebp - 4], 0"], ["0x1000b7ca", "jmp 0x632"], ["0x1000b7cf", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b7d2", "push eax"], ["0x1000b7d3", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b7d8", "add esp, 4"], ["0x1000b7db", "ret "], ["0x1000b7dc", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b7df", "cmp dword ptr [esi + 0x180], eax"], ["0x1000b7e5", "jne 0x3c"]], "recomp": [["0x10018b97", "mov dword ptr [ebp - 0x14], 0"], ["0x10018b9e", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018ba5", "call <OFFSET5>"], ["0x10018baa", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018bad", "jmp -0x211e"], ["0x10018bb2", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018bb5", "push eax"], ["0x10018bb6", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018bbb", "add esp, 4"], ["0x10018bbe", "ret "], ["0x10018bbf", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018bc2", "cmp dword ptr [edi + 0x164], eax"], ["0x10018bc8", "jne 0x4c"]]}, {"both": [["0x1000b7e7", "push 0x26c", "0x10018bca"], ["0x1000b7ec", "call ??2@YAPAXI@Z (FUNCTION)", "0x10018bcf"]]}, {"orig": [["0x1000b7f1", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b7f4", "add esp, 4"], ["0x1000b7f7", "mov byte ptr [ebp - 4], 0x83"], ["0x1000b7fb", "mov esi, eax"], ["0x1000b7fd", "mov eax, 0"], ["0x1000b802", "test esi, esi"], ["0x1000b804", "je 0x7"], ["0x1000b806", "mov ecx, esi"]], "recomp": [["0x10018bd4", "add esp, 4"], ["0x10018bd7", "mov dword ptr [ebp - 0x10], eax"], ["0x10018bda", "mov byte ptr [ebp - 4], 0x86"], ["0x10018bde", "test eax, eax"], ["0x10018be0", "je 0xc"], ["0x10018be2", "mov ecx, eax"]]}, {"both": [["0x1000b808", "call Act1State::Act1State (FUNCTION)", "0x10018be4"]]}, {"orig": [["0x1000b80d", "mov byte ptr [ebp - 4], 0"], ["0x1000b811", "jmp 0x5eb"], ["0x1000b816", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b819", "push eax"], ["0x1000b81a", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b81f", "add esp, 4"], ["0x1000b822", "ret "], ["0x1000b823", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b826", "cmp dword ptr [esi + 0x184], eax"], ["0x1000b82c", "jne 0x6b"], ["0x1000b82e", "mov ebx, 0x84"], ["0x1000b833", "push ebx"], ["0x1000b834", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b839", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b83c", "add esp, 4"], ["0x1000b83f", "mov esi, eax"], ["0x1000b841", "mov byte ptr [ebp - 4], bl"], ["0x1000b844", "test esi, esi"], ["0x1000b846", "je 0x39"], ["0x1000b848", "mov ecx, esi"]], "recomp": [["0x10018be9", "mov dword ptr [ebp - 0x14], eax"], ["0x10018bec", "jmp 0x7"], ["0x10018bee", "mov dword ptr [ebp - 0x14], 0"], ["0x10018bf5", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018bfc", "call <OFFSET5>"], ["0x10018c01", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018c04", "jmp -0x2175"], ["0x10018c09", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018c0c", "push eax"], ["0x10018c0d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018c12", "add esp, 4"], ["0x10018c15", "ret "], ["0x10018c16", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018c19", "cmp dword ptr [edi + 0x168], eax"], ["0x10018c1f", "jne 0x81"], ["0x10018c25", "push 0x84"], ["0x10018c2a", "mov ebx, 0x87"], ["0x10018c2f", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018c34", "add esp, 4"], ["0x10018c37", "mov dword ptr [ebp - 0x10], eax"], ["0x10018c3a", "mov byte ptr [ebp - 4], bl"], ["0x10018c3d", "test eax, eax"], ["0x10018c3f", "je 0x3d"], ["0x10018c41", "mov ecx, eax"]]}, {"both": [["0x1000b84a", "call LegoActor::LegoActor (FUNCTION)", "0x10018c43"]]}, {"orig": [["0x1000b84f", "mov byte ptr [ebp - 4], 0x85"], ["0x1000b853", "mov eax, esi"], ["0x1000b855", "mov dword ptr [esi], IsleActor::`vftable' (VTABLE)"], ["0x1000b85b", "mov byte ptr [ebp - 4], 0x86"], ["0x1000b85f", "mov dword ptr [esi + 0x7c], 0"], ["0x1000b866", "mov dword ptr [esi], Pizzeria::`vftable' (VTABLE)"], ["0x1000b86c", "mov byte ptr [ebp - 4], bl"], ["0x1000b86f", "jmp 0x12"]], "recomp": [["0x10018c48", "mov byte ptr [ebp - 4], 0x88"], ["0x10018c4c", "mov byte ptr [ebp - 4], 0x89"], ["0x10018c50", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018c53", "mov byte ptr [ebp - 4], bl"], ["0x10018c56", "mov dword ptr [ebp - 0x14], eax"], ["0x10018c59", "mov dword ptr [eax], IsleActor::`vftable' (VTABLE)"], ["0x10018c5f", "mov dword ptr [eax + 0x7c], 0"], ["0x10018c66", "mov dword ptr [eax], Pizzeria::`vftable' (VTABLE)"], ["0x10018c6c", "jmp 0x17"]]}, {"both": [["0x1000b871", "mov ecx, dword ptr [ebp - 0x10]", "0x10018c6e"], ["0x1000b874", "jmp LegoActor::~LegoActor (FUNCTION)", "0x10018c71"], ["0x1000b879", "mov ecx, dword ptr [ebp - 0x10]", "0x10018c76"], ["0x1000b87c", "jmp IsleActor::~IsleActor (FUNCTION)", "0x10018c79"]]}, {"orig": [["0x1000b881", "xor eax, eax"], ["0x1000b883", "mov byte ptr [ebp - 4], 0"], ["0x1000b887", "jmp 0x575"], ["0x1000b88c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b88f", "push eax"], ["0x1000b890", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b895", "add esp, 4"], ["0x1000b898", "ret "], ["0x1000b899", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b89c", "cmp dword ptr [esi + 0x188], eax"], ["0x1000b8a2", "jne 0x39"]], "recomp": [["0x10018c7e", "mov dword ptr [ebp - 0x14], 0"], ["0x10018c85", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018c8c", "call <OFFSET5>"], ["0x10018c91", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018c94", "jmp -0x2205"], ["0x10018c99", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018c9c", "push eax"], ["0x10018c9d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018ca2", "add esp, 4"], ["0x10018ca5", "ret "], ["0x10018ca6", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018ca9", "cmp dword ptr [edi + 0x16c], eax"], ["0x10018caf", "jne 0x49"]]}, {"both": [["0x1000b8a4", "push 0x58", "0x10018cb1"], ["0x1000b8a6", "call ??2@YAPAXI@Z (FUNCTION)", "0x10018cb3"]]}, {"orig": [["0x1000b8ab", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b8ae", "add esp, 4"], ["0x1000b8b1", "mov byte ptr [ebp - 4], 0x87"], ["0x1000b8b5", "mov esi, eax"], ["0x1000b8b7", "mov eax, 0"], ["0x1000b8bc", "test esi, esi"], ["0x1000b8be", "je 0x7"], ["0x1000b8c0", "mov ecx, esi"]], "recomp": [["0x10018cb8", "add esp, 4"], ["0x10018cbb", "mov dword ptr [ebp - 0x10], eax"], ["0x10018cbe", "mov byte ptr [ebp - 4], 0x8a"], ["0x10018cc2", "test eax, eax"], ["0x10018cc4", "je 0xc"], ["0x10018cc6", "mov ecx, eax"]]}, {"both": [["0x1000b8c2", "call PizzeriaState::PizzeriaState (FUNCTION)", "0x10018cc8"]]}, {"orig": [["0x1000b8c7", "mov byte ptr [ebp - 4], 0"], ["0x1000b8cb", "jmp 0x531"], ["0x1000b8d0", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b8d3", "push eax"], ["0x1000b8d4", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b8d9", "add esp, 4"], ["0x1000b8dc", "ret "], ["0x1000b8dd", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b8e0", "cmp dword ptr [esi + 0x18c], eax"], ["0x1000b8e6", "jne 0x53"]], "recomp": [["0x10018ccd", "mov dword ptr [ebp - 0x14], eax"], ["0x10018cd0", "jmp 0x7"], ["0x10018cd2", "mov dword ptr [ebp - 0x14], 0"], ["0x10018cd9", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018ce0", "call <OFFSET5>"], ["0x10018ce5", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018ce8", "jmp -0x2259"], ["0x10018ced", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018cf0", "push eax"], ["0x10018cf1", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018cf6", "add esp, 4"], ["0x10018cf9", "ret "], ["0x10018cfa", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018cfd", "cmp dword ptr [edi + 0x170], eax"], ["0x10018d03", "jne 0x65"]]}, {"both": [["0x1000b8e8", "push 0x68", "0x10018d05"]]}, {"orig": [["0x1000b8ea", "mov ebx, 0x88"], ["0x1000b8ef", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b8f4", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b8f7", "add esp, 4"], ["0x1000b8fa", "mov esi, eax"], ["0x1000b8fc", "mov byte ptr [ebp - 4], bl"], ["0x1000b8ff", "test esi, esi"], ["0x1000b901", "je 0x20"], ["0x1000b903", "mov ecx, esi"]], "recomp": [["0x10018d07", "mov ebx, 0x8b"], ["0x10018d0c", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018d11", "add esp, 4"], ["0x10018d14", "mov dword ptr [ebp - 0x10], eax"], ["0x10018d17", "mov byte ptr [ebp - 4], bl"], ["0x10018d1a", "test eax, eax"], ["0x10018d1c", "je 0x24"], ["0x10018d1e", "mov ecx, eax"]]}, {"both": [["0x1000b905", "call BuildingEntity::BuildingEntity (FUNCTION)", "0x10018d20"]]}, {"orig": [["0x1000b90a", "mov byte ptr [ebp - 4], 0x89"], ["0x1000b90e", "mov eax, esi"], ["0x1000b910", "mov dword ptr [esi], InfoCenterEntity::`vftable' (VTABLE)"], ["0x1000b916", "mov byte ptr [ebp - 4], bl"], ["0x1000b919", "jmp 0xa"]], "recomp": [["0x10018d25", "mov byte ptr [ebp - 4], 0x8c"], ["0x10018d29", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018d2c", "mov byte ptr [ebp - 4], bl"], ["0x10018d2f", "mov dword ptr [ebp - 0x14], eax"], ["0x10018d32", "mov dword ptr [eax], InfoCenterEntity::`vftable' (VTABLE)"], ["0x10018d38", "jmp 0xf"]]}, {"both": [["0x1000b91b", "mov ecx, dword ptr [ebp - 0x10]", "0x10018d3a"], ["0x1000b91e", "jmp BuildingEntity::~BuildingEntity (FUNCTION)", "0x10018d3d"]]}, {"orig": [["0x1000b923", "xor eax, eax"], ["0x1000b925", "mov byte ptr [ebp - 4], 0"], ["0x1000b929", "jmp 0x4d3"], ["0x1000b92e", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b931", "push eax"], ["0x1000b932", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b937", "add esp, 4"], ["0x1000b93a", "ret "], ["0x1000b93b", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b93e", "cmp dword ptr [esi + 0x190], eax"], ["0x1000b944", "jne 0x53"]], "recomp": [["0x10018d42", "mov dword ptr [ebp - 0x14], 0"], ["0x10018d49", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018d50", "call <OFFSET5>"], ["0x10018d55", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018d58", "jmp -0x22c9"], ["0x10018d5d", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018d60", "push eax"], ["0x10018d61", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018d66", "add esp, 4"], ["0x10018d69", "ret "], ["0x10018d6a", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018d6d", "cmp dword ptr [edi + 0x174], eax"], ["0x10018d73", "jne 0x65"]]}, {"both": [["0x1000b946", "push 0x68", "0x10018d75"]]}, {"orig": [["0x1000b948", "mov ebx, 0x8a"], ["0x1000b94d", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b952", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b955", "add esp, 4"], ["0x1000b958", "mov esi, eax"], ["0x1000b95a", "mov byte ptr [ebp - 4], bl"], ["0x1000b95d", "test esi, esi"], ["0x1000b95f", "je 0x20"], ["0x1000b961", "mov ecx, esi"]], "recomp": [["0x10018d77", "mov ebx, 0x8d"], ["0x10018d7c", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018d81", "add esp, 4"], ["0x10018d84", "mov dword ptr [ebp - 0x10], eax"], ["0x10018d87", "mov byte ptr [ebp - 4], bl"], ["0x10018d8a", "test eax, eax"], ["0x10018d8c", "je 0x24"], ["0x10018d8e", "mov ecx, eax"]]}, {"both": [["0x1000b963", "call BuildingEntity::BuildingEntity (FUNCTION)", "0x10018d90"]]}, {"orig": [["0x1000b968", "mov byte ptr [ebp - 4], 0x8b"], ["0x1000b96c", "mov eax, esi"], ["0x1000b96e", "mov dword ptr [esi], HospitalEntity::`vftable' (VTABLE)"], ["0x1000b974", "mov byte ptr [ebp - 4], bl"], ["0x1000b977", "jmp 0xa"]], "recomp": [["0x10018d95", "mov byte ptr [ebp - 4], 0x8e"], ["0x10018d99", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018d9c", "mov byte ptr [ebp - 4], bl"], ["0x10018d9f", "mov dword ptr [ebp - 0x14], eax"], ["0x10018da2", "mov dword ptr [eax], HospitalEntity::`vftable' (VTABLE)"], ["0x10018da8", "jmp 0xf"]]}, {"both": [["0x1000b979", "mov ecx, dword ptr [ebp - 0x10]", "0x10018daa"], ["0x1000b97c", "jmp BuildingEntity::~BuildingEntity (FUNCTION)", "0x10018dad"]]}, {"orig": [["0x1000b981", "xor eax, eax"], ["0x1000b983", "mov byte ptr [ebp - 4], 0"], ["0x1000b987", "jmp 0x475"], ["0x1000b98c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b98f", "push eax"], ["0x1000b990", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b995", "add esp, 4"], ["0x1000b998", "ret "], ["0x1000b999", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b99c", "cmp dword ptr [esi + 0x194], eax"], ["0x1000b9a2", "jne 0x53"]], "recomp": [["0x10018db2", "mov dword ptr [ebp - 0x14], 0"], ["0x10018db9", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018dc0", "call <OFFSET5>"], ["0x10018dc5", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018dc8", "jmp -0x2339"], ["0x10018dcd", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018dd0", "push eax"], ["0x10018dd1", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018dd6", "add esp, 4"], ["0x10018dd9", "ret "], ["0x10018dda", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018ddd", "cmp dword ptr [edi + 0x178], eax"], ["0x10018de3", "jne 0x65"]]}, {"both": [["0x1000b9a4", "push 0x68", "0x10018de5"]]}, {"orig": [["0x1000b9a6", "mov ebx, 0x8c"], ["0x1000b9ab", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000b9b0", "mov dword ptr [ebp - 0x10], eax"], ["0x1000b9b3", "add esp, 4"], ["0x1000b9b6", "mov esi, eax"], ["0x1000b9b8", "mov byte ptr [ebp - 4], bl"], ["0x1000b9bb", "test esi, esi"], ["0x1000b9bd", "je 0x20"], ["0x1000b9bf", "mov ecx, esi"]], "recomp": [["0x10018de7", "mov ebx, 0x8f"], ["0x10018dec", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018df1", "add esp, 4"], ["0x10018df4", "mov dword ptr [ebp - 0x10], eax"], ["0x10018df7", "mov byte ptr [ebp - 4], bl"], ["0x10018dfa", "test eax, eax"], ["0x10018dfc", "je 0x24"], ["0x10018dfe", "mov ecx, eax"]]}, {"both": [["0x1000b9c1", "call BuildingEntity::BuildingEntity (FUNCTION)", "0x10018e00"]]}, {"orig": [["0x1000b9c6", "mov byte ptr [ebp - 4], 0x8d"], ["0x1000b9ca", "mov eax, esi"], ["0x1000b9cc", "mov dword ptr [esi], GasStationEntity::`vftable' (VTABLE)"], ["0x1000b9d2", "mov byte ptr [ebp - 4], bl"], ["0x1000b9d5", "jmp 0xa"]], "recomp": [["0x10018e05", "mov byte ptr [ebp - 4], 0x90"], ["0x10018e09", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018e0c", "mov byte ptr [ebp - 4], bl"], ["0x10018e0f", "mov dword ptr [ebp - 0x14], eax"], ["0x10018e12", "mov dword ptr [eax], GasStationEntity::`vftable' (VTABLE)"], ["0x10018e18", "jmp 0xf"]]}, {"both": [["0x1000b9d7", "mov ecx, dword ptr [ebp - 0x10]", "0x10018e1a"], ["0x1000b9da", "jmp BuildingEntity::~BuildingEntity (FUNCTION)", "0x10018e1d"]]}, {"orig": [["0x1000b9df", "xor eax, eax"], ["0x1000b9e1", "mov byte ptr [ebp - 4], 0"], ["0x1000b9e5", "jmp 0x417"], ["0x1000b9ea", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000b9ed", "push eax"], ["0x1000b9ee", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b9f3", "add esp, 4"], ["0x1000b9f6", "ret "], ["0x1000b9f7", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000b9fa", "cmp dword ptr [esi + 0x198], eax"], ["0x1000ba00", "jne 0x53"]], "recomp": [["0x10018e22", "mov dword ptr [ebp - 0x14], 0"], ["0x10018e29", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018e30", "call <OFFSET5>"], ["0x10018e35", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018e38", "jmp -0x23a9"], ["0x10018e3d", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018e40", "push eax"], ["0x10018e41", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018e46", "add esp, 4"], ["0x10018e49", "ret "], ["0x10018e4a", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018e4d", "cmp dword ptr [edi + 0x17c], eax"], ["0x10018e53", "jne 0x65"]]}, {"both": [["0x1000ba02", "push 0x68", "0x10018e55"]]}, {"orig": [["0x1000ba04", "mov ebx, 0x8e"], ["0x1000ba09", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000ba0e", "mov dword ptr [ebp - 0x10], eax"], ["0x1000ba11", "add esp, 4"], ["0x1000ba14", "mov esi, eax"], ["0x1000ba16", "mov byte ptr [ebp - 4], bl"], ["0x1000ba19", "test esi, esi"], ["0x1000ba1b", "je 0x20"], ["0x1000ba1d", "mov ecx, esi"]], "recomp": [["0x10018e57", "mov ebx, 0x91"], ["0x10018e5c", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018e61", "add esp, 4"], ["0x10018e64", "mov dword ptr [ebp - 0x10], eax"], ["0x10018e67", "mov byte ptr [ebp - 4], bl"], ["0x10018e6a", "test eax, eax"], ["0x10018e6c", "je 0x24"], ["0x10018e6e", "mov ecx, eax"]]}, {"both": [["0x1000ba1f", "call BuildingEntity::BuildingEntity (FUNCTION)", "0x10018e70"]]}, {"orig": [["0x1000ba24", "mov byte ptr [ebp - 4], 0x8f"], ["0x1000ba28", "mov eax, esi"], ["0x1000ba2a", "mov dword ptr [esi], PoliceEntity::`vftable' (VTABLE)"], ["0x1000ba30", "mov byte ptr [ebp - 4], bl"], ["0x1000ba33", "jmp 0xa"]], "recomp": [["0x10018e75", "mov byte ptr [ebp - 4], 0x92"], ["0x10018e79", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018e7c", "mov byte ptr [ebp - 4], bl"], ["0x10018e7f", "mov dword ptr [ebp - 0x14], eax"], ["0x10018e82", "mov dword ptr [eax], PoliceEntity::`vftable' (VTABLE)"], ["0x10018e88", "jmp 0xf"]]}, {"both": [["0x1000ba35", "mov ecx, dword ptr [ebp - 0x10]", "0x10018e8a"], ["0x1000ba38", "jmp BuildingEntity::~BuildingEntity (FUNCTION)", "0x10018e8d"]]}, {"orig": [["0x1000ba3d", "xor eax, eax"], ["0x1000ba3f", "mov byte ptr [ebp - 4], 0"], ["0x1000ba43", "jmp 0x3b9"], ["0x1000ba48", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000ba4b", "push eax"], ["0x1000ba4c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000ba51", "add esp, 4"], ["0x1000ba54", "ret "], ["0x1000ba55", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000ba58", "cmp dword ptr [esi + 0x19c], eax"], ["0x1000ba5e", "jne 0x53"], ["0x1000ba60", "push 0x68"], ["0x1000ba62", "mov ebx, 0x90"], ["0x1000ba67", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000ba6c", "mov dword ptr [ebp - 0x10], eax"], ["0x1000ba6f", "add esp, 4"], ["0x1000ba72", "mov esi, eax"], ["0x1000ba74", "mov byte ptr [ebp - 4], bl"], ["0x1000ba77", "test esi, esi"], ["0x1000ba79", "je 0x20"], ["0x1000ba7b", "mov ecx, esi"], ["0x1000ba7d", "call BuildingEntity::BuildingEntity (FUNCTION)"], ["0x1000ba82", "mov byte ptr [ebp - 4], 0x91"], ["0x1000ba86", "mov eax, esi"], ["0x1000ba88", "mov dword ptr [esi], BeachHouseEntity::`vftable' (VTABLE)"], ["0x1000ba8e", "mov byte ptr [ebp - 4], bl"], ["0x1000ba91", "jmp 0xa"], ["0x1000ba93", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000ba96", "jmp BuildingEntity::~BuildingEntity (FUNCTION)"], ["0x1000ba9b", "xor eax, eax"], ["0x1000ba9d", "mov byte ptr [ebp - 4], 0"], ["0x1000baa1", "jmp 0x35b"], ["0x1000baa6", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000baa9", "push eax"], ["0x1000baaa", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000baaf", "add esp, 4"], ["0x1000bab2", "ret "], ["0x1000bab3", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000bab6", "cmp dword ptr [esi + 0x1a4], eax"], ["0x1000babc", "jne 0x39"], ["0x1000babe", "push 0x6c"], ["0x1000bac0", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000bac5", "mov dword ptr [ebp - 0x10], eax"], ["0x1000bac8", "add esp, 4"], ["0x1000bacb", "mov byte ptr [ebp - 4], 0x92"], ["0x1000bacf", "mov esi, eax"], ["0x1000bad1", "mov eax, 0"], ["0x1000bad6", "test esi, esi"], ["0x1000bad8", "je 0x7"], ["0x1000bada", "mov ecx, esi"], ["0x1000badc", "call JukeBoxEntity::JukeBoxEntity (FUNCTION)"], ["0x1000bae1", "mov byte ptr [ebp - 4], 0"], ["0x1000bae5", "jmp 0x317"], ["0x1000baea", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000baed", "push eax"], ["0x1000baee", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000baf3", "add esp, 4"], ["0x1000baf6", "ret "], ["0x1000baf7", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000bafa", "cmp dword ptr [esi + 0x1a0], eax"], ["0x1000bb00", "jne 0x53"]], "recomp": [["0x10018e92", "mov dword ptr [ebp - 0x14], 0"], ["0x10018e99", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018ea0", "call <OFFSET5>"], ["0x10018ea5", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018ea8", "jmp -0x2419"], ["0x10018ead", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018eb0", "push eax"], ["0x10018eb1", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018eb6", "add esp, 4"], ["0x10018eb9", "ret "], ["0x10018eba", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018ebd", "cmp dword ptr [edi + 0x180], eax"], ["0x10018ec3", "jne 0x65"]]}, {"both": [["0x1000bb02", "push 0x68", "0x10018ec5"], ["0x1000bb04", "mov ebx, 0x93", "0x10018ec7"], ["0x1000bb09", "call ??2@YAPAXI@Z (FUNCTION)", "0x10018ecc"]]}, {"orig": [["0x1000bb0e", "mov dword ptr [ebp - 0x10], eax"], ["0x1000bb11", "add esp, 4"], ["0x1000bb14", "mov esi, eax"], ["0x1000bb16", "mov byte ptr [ebp - 4], bl"], ["0x1000bb19", "test esi, esi"], ["0x1000bb1b", "je 0x20"], ["0x1000bb1d", "mov ecx, esi"]], "recomp": [["0x10018ed1", "add esp, 4"], ["0x10018ed4", "mov dword ptr [ebp - 0x10], eax"], ["0x10018ed7", "mov byte ptr [ebp - 4], bl"], ["0x10018eda", "test eax, eax"], ["0x10018edc", "je 0x24"], ["0x10018ede", "mov ecx, eax"]]}, {"both": [["0x1000bb1f", "call BuildingEntity::BuildingEntity (FUNCTION)", "0x10018ee0"], ["0x1000bb24", "mov byte ptr [ebp - 4], 0x94", "0x10018ee5"]]}, {"orig": [["0x1000bb28", "mov eax, esi"], ["0x1000bb2a", "mov dword ptr [esi], RaceStandsEntity::`vftable' (VTABLE)"], ["0x1000bb30", "mov byte ptr [ebp - 4], bl"], ["0x1000bb33", "jmp 0xa"]], "recomp": [["0x10018ee9", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018eec", "mov byte ptr [ebp - 4], bl"], ["0x10018eef", "mov dword ptr [ebp - 0x14], eax"], ["0x10018ef2", "mov dword ptr [eax], BeachHouseEntity::`vftable' (VTABLE)"], ["0x10018ef8", "jmp 0xf"]]}, {"both": [["0x1000bb35", "mov ecx, dword ptr [ebp - 0x10]", "0x10018efa"], ["0x1000bb38", "jmp BuildingEntity::~BuildingEntity (FUNCTION)", "0x10018efd"]]}, {"orig": [["0x1000bb3d", "xor eax, eax"], ["0x1000bb3f", "mov byte ptr [ebp - 4], 0"], ["0x1000bb43", "jmp 0x2b9"], ["0x1000bb48", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000bb4b", "push eax"], ["0x1000bb4c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000bb51", "add esp, 4"], ["0x1000bb54", "ret "], ["0x1000bb55", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000bb58", "cmp dword ptr [esi + 0x1a8], eax"], ["0x1000bb5e", "jne 0x39"]], "recomp": [["0x10018f02", "mov dword ptr [ebp - 0x14], 0"], ["0x10018f09", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018f10", "call <OFFSET5>"], ["0x10018f15", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018f18", "jmp -0x2489"], ["0x10018f1d", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018f20", "push eax"], ["0x10018f21", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018f26", "add esp, 4"], ["0x10018f29", "ret "], ["0x10018f2a", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018f2d", "cmp dword ptr [edi + 0x184], eax"], ["0x10018f33", "jne 0x65"], ["0x10018f35", "push 0x68"], ["0x10018f37", "mov ebx, 0x95"], ["0x10018f3c", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018f41", "add esp, 4"], ["0x10018f44", "mov dword ptr [ebp - 0x10], eax"], ["0x10018f47", "mov byte ptr [ebp - 4], bl"], ["0x10018f4a", "test eax, eax"], ["0x10018f4c", "je 0x24"], ["0x10018f4e", "mov ecx, eax"], ["0x10018f50", "call BuildingEntity::BuildingEntity (FUNCTION)"], ["0x10018f55", "mov byte ptr [ebp - 4], 0x96"], ["0x10018f59", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018f5c", "mov byte ptr [ebp - 4], bl"], ["0x10018f5f", "mov dword ptr [ebp - 0x14], eax"], ["0x10018f62", "mov dword ptr [eax], RaceStandsEntity::`vftable' (VTABLE)"], ["0x10018f68", "jmp 0xf"], ["0x10018f6a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10018f6d", "jmp BuildingEntity::~BuildingEntity (FUNCTION)"], ["0x10018f72", "mov dword ptr [ebp - 0x14], 0"], ["0x10018f79", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018f80", "call <OFFSET5>"], ["0x10018f85", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018f88", "jmp -0x24f9"], ["0x10018f8d", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018f90", "push eax"], ["0x10018f91", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018f96", "add esp, 4"], ["0x10018f99", "ret "], ["0x10018f9a", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018f9d", "cmp dword ptr [edi + 0x188], eax"], ["0x10018fa3", "jne 0x49"], ["0x10018fa5", "push 0x6c"], ["0x10018fa7", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10018fac", "add esp, 4"], ["0x10018faf", "mov dword ptr [ebp - 0x10], eax"], ["0x10018fb2", "mov byte ptr [ebp - 4], 0x97"], ["0x10018fb6", "test eax, eax"], ["0x10018fb8", "je 0xc"], ["0x10018fba", "mov ecx, eax"], ["0x10018fbc", "call JukeBoxEntity::JukeBoxEntity (FUNCTION)"], ["0x10018fc1", "mov dword ptr [ebp - 0x14], eax"], ["0x10018fc4", "jmp 0x7"], ["0x10018fc6", "mov dword ptr [ebp - 0x14], 0"], ["0x10018fcd", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10018fd4", "call <OFFSET5>"], ["0x10018fd9", "mov eax, dword ptr [ebp - 0x14]"], ["0x10018fdc", "jmp -0x254d"], ["0x10018fe1", "mov eax, dword ptr [ebp - 0x10]"], ["0x10018fe4", "push eax"], ["0x10018fe5", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10018fea", "add esp, 4"], ["0x10018fed", "ret "], ["0x10018fee", "mov eax, dword ptr [ebp - 0x18]"], ["0x10018ff1", "cmp dword ptr [edi + 0x18c], eax"], ["0x10018ff7", "jne 0x49"]]}, {"both": [["0x1000bb60", "push 0x30", "0x10018ff9"], ["0x1000bb62", "call ??2@YAPAXI@Z (FUNCTION)", "0x10018ffb"]]}, {"orig": [["0x1000bb67", "mov dword ptr [ebp - 0x10], eax"], ["0x1000bb6a", "add esp, 4"], ["0x1000bb6d", "mov byte ptr [ebp - 4], 0x95"], ["0x1000bb71", "mov esi, eax"], ["0x1000bb73", "mov eax, 0"], ["0x1000bb78", "test esi, esi"], ["0x1000bb7a", "je 0x7"], ["0x1000bb7c", "mov ecx, esi"]], "recomp": [["0x10019000", "add esp, 4"], ["0x10019003", "mov dword ptr [ebp - 0x10], eax"], ["0x10019006", "mov byte ptr [ebp - 4], 0x98"], ["0x1001900a", "test eax, eax"], ["0x1001900c", "je 0xc"], ["0x1001900e", "mov ecx, eax"]]}, {"both": [["0x1000bb7e", "call RadioState::RadioState (FUNCTION)", "0x10019010"]]}, {"orig": [["0x1000bb83", "mov byte ptr [ebp - 4], 0"], ["0x1000bb87", "jmp 0x275"], ["0x1000bb8c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000bb8f", "push eax"], ["0x1000bb90", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000bb95", "add esp, 4"], ["0x1000bb98", "ret "], ["0x1000bb99", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000bb9c", "cmp dword ptr [esi + 0x1ac], eax"], ["0x1000bba2", "jne 0x53"]], "recomp": [["0x10019015", "mov dword ptr [ebp - 0x14], eax"], ["0x10019018", "jmp 0x7"], ["0x1001901a", "mov dword ptr [ebp - 0x14], 0"], ["0x10019021", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10019028", "call <OFFSET5>"], ["0x1001902d", "mov eax, dword ptr [ebp - 0x14]"], ["0x10019030", "jmp -0x25a1"], ["0x10019035", "mov eax, dword ptr [ebp - 0x10]"], ["0x10019038", "push eax"], ["0x10019039", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001903e", "add esp, 4"], ["0x10019041", "ret "], ["0x10019042", "mov eax, dword ptr [ebp - 0x18]"], ["0x10019045", "cmp dword ptr [edi + 0x190], eax"], ["0x1001904b", "jne 0x77"]]}, {"both": [["0x1000bba4", "push 0x68", "0x1001904d"]]}, {"orig": [["0x1000bba6", "mov ebx, 0x96"], ["0x1000bbab", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000bbb0", "mov dword ptr [ebp - 0x10], eax"], ["0x1000bbb3", "add esp, 4"], ["0x1000bbb6", "mov esi, eax"], ["0x1000bbb8", "mov byte ptr [ebp - 4], bl"], ["0x1000bbbb", "test esi, esi"], ["0x1000bbbd", "je 0x20"], ["0x1000bbbf", "mov ecx, esi"]], "recomp": [["0x1001904f", "mov ebx, 0x99"], ["0x10019054", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10019059", "add esp, 4"], ["0x1001905c", "mov dword ptr [ebp - 0x10], eax"], ["0x1001905f", "mov byte ptr [ebp - 4], bl"], ["0x10019062", "test eax, eax"], ["0x10019064", "je 0x36"], ["0x10019066", "mov ecx, eax"]]}, {"both": [["0x1000bbc1", "call BuildingEntity::BuildingEntity (FUNCTION)", "0x10019068"]]}, {"orig": [["0x1000bbc6", "mov byte ptr [ebp - 4], 0x97"], ["0x1000bbca", "mov eax, esi"], ["0x1000bbcc", "mov dword ptr [esi], <OFFSET147>"], ["0x1000bbd2", "mov byte ptr [ebp - 4], bl"], ["0x1000bbd5", "jmp 0xa"]], "recomp": [["0x1001906d", "mov byte ptr [ebp - 4], 0x9a"], ["0x10019071", "mov byte ptr [ebp - 4], 0x9b"], ["0x10019075", "mov eax, dword ptr [ebp - 0x10]"], ["0x10019078", "mov byte ptr [ebp - 4], bl"], ["0x1001907b", "mov dword ptr [ebp - 0x14], eax"], ["0x1001907e", "mov dword ptr [eax], RaceStandsEntity::`vftable' (VTABLE)"], ["0x10019084", "mov dword ptr [eax], CaveEntity::`vftable' (VTABLE)"], ["0x1001908a", "jmp 0x17"]]}, {"both": [["0x1000bbd7", "mov ecx, dword ptr [ebp - 0x10]", "0x1001908c"], ["0x1000bbda", "jmp BuildingEntity::~BuildingEntity (FUNCTION)", "0x1001908f"]]}, {"orig": [["0x1000bbdf", "xor eax, eax"], ["0x1000bbe1", "mov byte ptr [ebp - 4], 0"], ["0x1000bbe5", "jmp 0x217"], ["0x1000bbea", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000bbed", "push eax"], ["0x1000bbee", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000bbf3", "add esp, 4"], ["0x1000bbf6", "ret "], ["0x1000bbf7", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000bbfa", "cmp dword ptr [esi + 0x1b0], eax"], ["0x1000bc00", "jne 0x53"]], "recomp": [["0x10019094", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10019097", "jmp RaceStandsEntity::~RaceStandsEntity (FUNCTION)"], ["0x1001909c", "mov dword ptr [ebp - 0x14], 0"], ["0x100190a3", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100190aa", "call <OFFSET5>"], ["0x100190af", "mov eax, dword ptr [ebp - 0x14]"], ["0x100190b2", "jmp -0x2623"], ["0x100190b7", "mov eax, dword ptr [ebp - 0x10]"], ["0x100190ba", "push eax"], ["0x100190bb", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100190c0", "add esp, 4"], ["0x100190c3", "ret "], ["0x100190c4", "mov eax, dword ptr [ebp - 0x18]"], ["0x100190c7", "cmp dword ptr [edi + 0x194], eax"], ["0x100190cd", "jne 0x65"]]}, {"both": [["0x1000bc02", "push 0x68", "0x100190cf"]]}, {"orig": [["0x1000bc04", "mov ebx, 0x98"], ["0x1000bc09", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000bc0e", "mov dword ptr [ebp - 0x10], eax"], ["0x1000bc11", "add esp, 4"], ["0x1000bc14", "mov esi, eax"], ["0x1000bc16", "mov byte ptr [ebp - 4], bl"], ["0x1000bc19", "test esi, esi"], ["0x1000bc1b", "je 0x20"], ["0x1000bc1d", "mov ecx, esi"]], "recomp": [["0x100190d1", "mov ebx, 0x9c"], ["0x100190d6", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100190db", "add esp, 4"], ["0x100190de", "mov dword ptr [ebp - 0x10], eax"], ["0x100190e1", "mov byte ptr [ebp - 4], bl"], ["0x100190e4", "test eax, eax"], ["0x100190e6", "je 0x24"], ["0x100190e8", "mov ecx, eax"]]}, {"both": [["0x1000bc1f", "call BuildingEntity::BuildingEntity (FUNCTION)", "0x100190ea"]]}, {"orig": [["0x1000bc24", "mov byte ptr [ebp - 4], 0x99"], ["0x1000bc28", "mov eax, esi"], ["0x1000bc2a", "mov dword ptr [esi], JailEntity::`vftable' (VTABLE)"], ["0x1000bc30", "mov byte ptr [ebp - 4], bl"], ["0x1000bc33", "jmp 0xa"]], "recomp": [["0x100190ef", "mov byte ptr [ebp - 4], 0x9d"], ["0x100190f3", "mov eax, dword ptr [ebp - 0x10]"], ["0x100190f6", "mov byte ptr [ebp - 4], bl"], ["0x100190f9", "mov dword ptr [ebp - 0x14], eax"], ["0x100190fc", "mov dword ptr [eax], JailEntity::`vftable' (VTABLE)"], ["0x10019102", "jmp 0xf"]]}, {"both": [["0x1000bc35", "mov ecx, dword ptr [ebp - 0x10]", "0x10019104"], ["0x1000bc38", "jmp BuildingEntity::~BuildingEntity (FUNCTION)", "0x10019107"]]}, {"orig": [["0x1000bc3d", "xor eax, eax"], ["0x1000bc3f", "mov byte ptr [ebp - 4], 0"], ["0x1000bc43", "jmp 0x1b9"], ["0x1000bc48", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000bc4b", "push eax"], ["0x1000bc4c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000bc51", "add esp, 4"], ["0x1000bc54", "ret "], ["0x1000bc55", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000bc58", "cmp dword ptr [esi + 0x1b4], eax"], ["0x1000bc5e", "jne 0x39"]], "recomp": [["0x1001910c", "mov dword ptr [ebp - 0x14], 0"], ["0x10019113", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001911a", "call <OFFSET5>"], ["0x1001911f", "mov eax, dword ptr [ebp - 0x14]"], ["0x10019122", "jmp -0x2693"], ["0x10019127", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001912a", "push eax"], ["0x1001912b", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10019130", "add esp, 4"], ["0x10019133", "ret "], ["0x10019134", "mov eax, dword ptr [ebp - 0x18]"], ["0x10019137", "cmp dword ptr [edi + 0x198], eax"], ["0x1001913d", "jne 0x49"]]}, {"both": [["0x1000bc60", "push 0x50", "0x1001913f"], ["0x1000bc62", "call ??2@YAPAXI@Z (FUNCTION)", "0x10019141"]]}, {"orig": [["0x1000bc67", "mov dword ptr [ebp - 0x10], eax"], ["0x1000bc6a", "add esp, 4"], ["0x1000bc6d", "mov byte ptr [ebp - 4], 0x9a"], ["0x1000bc71", "mov esi, eax"], ["0x1000bc73", "mov eax, 0"], ["0x1000bc78", "test esi, esi"], ["0x1000bc7a", "je 0x7"], ["0x1000bc7c", "mov ecx, esi"]], "recomp": [["0x10019146", "add esp, 4"], ["0x10019149", "mov dword ptr [ebp - 0x10], eax"], ["0x1001914c", "mov byte ptr [ebp - 4], 0x9e"], ["0x10019150", "test eax, eax"], ["0x10019152", "je 0xc"], ["0x10019154", "mov ecx, eax"]]}, {"both": [["0x1000bc7e", "call MxCompositeMediaPresenter::MxCompositeMediaPresenter (FUNCTION)", "0x10019156"]]}, {"orig": [["0x1000bc83", "mov byte ptr [ebp - 4], 0"], ["0x1000bc87", "jmp 0x175"], ["0x1000bc8c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000bc8f", "push eax"], ["0x1000bc90", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000bc95", "add esp, 4"], ["0x1000bc98", "ret "], ["0x1000bc99", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000bc9c", "cmp dword ptr [esi + 0x1b8], eax"], ["0x1000bca2", "jne 0x3c"]], "recomp": [["0x1001915b", "mov dword ptr [ebp - 0x14], eax"], ["0x1001915e", "jmp 0x7"], ["0x10019160", "mov dword ptr [ebp - 0x14], 0"], ["0x10019167", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001916e", "call <OFFSET5>"], ["0x10019173", "mov eax, dword ptr [ebp - 0x14]"], ["0x10019176", "jmp -0x26e7"], ["0x1001917b", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001917e", "push eax"], ["0x1001917f", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10019184", "add esp, 4"], ["0x10019187", "ret "], ["0x10019188", "mov eax, dword ptr [ebp - 0x18]"], ["0x1001918b", "cmp dword ptr [edi + 0x19c], eax"], ["0x10019191", "jne 0x4c"]]}, {"both": [["0x1000bca4", "push 0x104", "0x10019193"], ["0x1000bca9", "call ??2@YAPAXI@Z (FUNCTION)", "0x10019198"]]}, {"orig": [["0x1000bcae", "mov dword ptr [ebp - 0x10], eax"], ["0x1000bcb1", "add esp, 4"], ["0x1000bcb4", "mov byte ptr [ebp - 4], 0x9b"], ["0x1000bcb8", "mov esi, eax"], ["0x1000bcba", "mov eax, 0"], ["0x1000bcbf", "test esi, esi"], ["0x1000bcc1", "je 0x7"], ["0x1000bcc3", "mov ecx, esi"]], "recomp": [["0x1001919d", "add esp, 4"], ["0x100191a0", "mov dword ptr [ebp - 0x10], eax"], ["0x100191a3", "mov byte ptr [ebp - 4], 0x9f"], ["0x100191a7", "test eax, eax"], ["0x100191a9", "je 0xc"], ["0x100191ab", "mov ecx, eax"]]}, {"both": [["0x1000bcc5", "call JukeBox::JukeBox (FUNCTION)", "0x100191ad"]]}, {"orig": [["0x1000bcca", "mov byte ptr [ebp - 4], 0"], ["0x1000bcce", "jmp 0x12e"], ["0x1000bcd3", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000bcd6", "push eax"], ["0x1000bcd7", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000bcdc", "add esp, 4"], ["0x1000bcdf", "ret "], ["0x1000bce0", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000bce3", "cmp dword ptr [esi + 0x1bc], eax"], ["0x1000bce9", "jne 0x6d"]], "recomp": [["0x100191b2", "mov dword ptr [ebp - 0x14], eax"], ["0x100191b5", "jmp 0x7"], ["0x100191b7", "mov dword ptr [ebp - 0x14], 0"], ["0x100191be", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100191c5", "call <OFFSET5>"], ["0x100191ca", "mov eax, dword ptr [ebp - 0x14]"], ["0x100191cd", "jmp -0x273e"], ["0x100191d2", "mov eax, dword ptr [ebp - 0x10]"], ["0x100191d5", "push eax"], ["0x100191d6", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100191db", "add esp, 4"], ["0x100191de", "ret "], ["0x100191df", "mov eax, dword ptr [ebp - 0x18]"], ["0x100191e2", "cmp dword ptr [edi + 0x1a0], eax"], ["0x100191e8", "jne 0x77"]]}, {"both": [["0x1000bceb", "push 0x10", "0x100191ea"]]}, {"orig": [["0x1000bced", "mov ebx, 0x9c"], ["0x1000bcf2", "xor edi, edi"], ["0x1000bcf4", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1000bcf9", "mov dword ptr [ebp - 0x10], eax"], ["0x1000bcfc", "add esp, 4"], ["0x1000bcff", "mov esi, eax"], ["0x1000bd01", "mov byte ptr [ebp - 4], bl"], ["0x1000bd04", "test esi, esi"], ["0x1000bd06", "je 0x38"], ["0x1000bd08", "mov ecx, esi"]], "recomp": [["0x100191ec", "mov ebx, 0xa0"], ["0x100191f1", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100191f6", "add esp, 4"], ["0x100191f9", "mov dword ptr [ebp - 0x10], eax"], ["0x100191fc", "mov byte ptr [ebp - 4], bl"], ["0x100191ff", "test eax, eax"], ["0x10019201", "je 0x36"], ["0x10019203", "mov ecx, eax"]]}, {"both": [["0x1000bd0a", "call MxCore::MxCore (FUNCTION)", "0x10019205"]]}, {"orig": [["0x1000bd0f", "mov byte ptr [ebp - 4], 0x9d"], ["0x1000bd13", "mov eax, esi"], ["0x1000bd15", "mov dword ptr [esi], LegoState::`vftable' (VTABLE)"], ["0x1000bd1b", "mov byte ptr [ebp - 4], 0x9e"], ["0x1000bd1f", "mov dword ptr [esi + 8], edi"], ["0x1000bd22", "mov byte ptr [ebp - 4], bl"], ["0x1000bd25", "mov dword ptr [esi + 0xc], edi"], ["0x1000bd28", "mov dword ptr [esi], JukeBoxState::`vftable' (VTABLE)"], ["0x1000bd2e", "jmp 0x12"]], "recomp": [["0x1001920a", "mov byte ptr [ebp - 4], 0xa1"], ["0x1001920e", "mov byte ptr [ebp - 4], 0xa2"], ["0x10019212", "mov eax, dword ptr [ebp - 0x10]"], ["0x10019215", "mov byte ptr [ebp - 4], bl"], ["0x10019218", "mov dword ptr [ebp - 0x14], eax"], ["0x1001921b", "mov dword ptr [eax], LegoState::`vftable' (VTABLE)"], ["0x10019221", "mov dword ptr [eax], JukeBoxState::`vftable' (VTABLE)"], ["0x10019227", "jmp 0x17"]]}, {"both": [["0x1000bd30", "mov ecx, dword ptr [ebp - 0x10]", "0x10019229"], ["0x1000bd33", "jmp MxCore::~MxCore (FUNCTION)", "0x1001922c"], ["0x1000bd38", "mov ecx, dword ptr [ebp - 0x10]", "0x10019231"], ["0x1000bd3b", "jmp LegoState::~LegoState (FUNCTION)", "0x10019234"]]}, {"orig": [["0x1000bd40", "xor eax, eax"], ["0x1000bd42", "mov byte ptr [ebp - 4], 0"], ["0x1000bd46", "jmp 0xb6"], ["0x1000bd4b", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000bd4e", "push eax"], ["0x1000bd4f", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000bd54", "add esp, 4"], ["0x1000bd57", "ret "], ["0x1000bd58", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000bd5b", "cmp dword ptr [esi + 0x1c0], eax"], ["0x1000bd61", "jne 0x52"]], "recomp": [["0x10019239", "mov dword ptr [ebp - 0x14], 0"], ["0x10019240", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10019247", "call <OFFSET5>"], ["0x1001924c", "mov eax, dword ptr [ebp - 0x14]"], ["0x1001924f", "jmp -0x27c0"], ["0x10019254", "mov eax, dword ptr [ebp - 0x10]"], ["0x10019257", "push eax"], ["0x10019258", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001925d", "add esp, 4"], ["0x10019260", "ret "], ["0x10019261", "mov eax, dword ptr [ebp - 0x18]"], ["0x10019264", "cmp dword ptr [edi + 0x1a4], eax"], ["0x1001926a", "jne 0x64"]]}, {"both": [["0x1000bd63", "push 0x178", "0x1001926c"], ["0x1000bd68", "call ??2@YAPAXI@Z (FUNCTION)", "0x10019271"]]}, {"orig": [["0x1000bd6d", "mov dword ptr [ebp - 0x14], eax"], ["0x1000bd70", "add esp, 4"], ["0x1000bd73", "mov byte ptr [ebp - 4], 0x9f"]], "recomp": [["0x10019276", "mov dword ptr [ebp - 0x10], eax"], ["0x10019279", "add esp, 4"], ["0x1001927c", "mov byte ptr [ebp - 4], 0xa3"]]}, {"both": [["0x1000bd77", "mov esi, eax", "0x10019280"], ["0x1000bd79", "mov eax, 0", "0x10019282"], ["0x1000bd7e", "test esi, esi", "0x10019287"], ["0x1000bd80", "je 0x9", "0x10019289"], ["0x1000bd82", "push 1", "0x1001928b"], ["0x1000bd84", "mov ecx, esi", "0x1001928d"], ["0x1000bd86", "call RaceSkel::RaceSkel (FUNCTION)", "0x1001928f"], ["0x1000bd8b", "xor ecx, ecx", "0x10019294"], ["0x1000bd8d", "test eax, eax", "0x10019296"], ["0x1000bd8f", "mov byte ptr [ebp - 4], cl", "0x10019298"]]}, {"orig": [["0x1000bd92", "jne 0x8"], ["0x1000bd94", "mov dword ptr [ebp - 0x14], ecx"], ["0x1000bd97", "jmp -0x1091"]], "recomp": [["0x1001929b", "jne 0x5"], ["0x1001929d", "mov dword ptr [ebp - 0x10], ecx"], ["0x100192a0", "jmp 0xd"]]}, {"both": [["0x1000bd9c", "mov ecx, dword ptr [eax + 4]", "0x100192a2"], ["0x1000bd9f", "mov edx, dword ptr [ecx + 4]", "0x100192a5"], ["0x1000bda2", "lea eax, [edx + eax + 4]", "0x100192a8"]]}, {"orig": [["0x1000bda6", "jmp 0x59"], ["0x1000bda8", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000bdab", "push eax"], ["0x1000bdac", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000bdb1", "add esp, 4"], ["0x1000bdb4", "ret "], ["0x1000bdb5", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000bdb8", "cmp dword ptr [esi + 0x1c4], eax"], ["0x1000bdbe", "jne 0x36"]], "recomp": [["0x100192ac", "mov dword ptr [ebp - 0x10], eax"], ["0x100192af", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100192b6", "call <OFFSET5>"], ["0x100192bb", "mov eax, dword ptr [ebp - 0x10]"], ["0x100192be", "jmp -0x282f"], ["0x100192c3", "mov eax, dword ptr [ebp - 0x10]"], ["0x100192c6", "push eax"], ["0x100192c7", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100192cc", "add esp, 4"], ["0x100192cf", "ret "], ["0x100192d0", "mov eax, dword ptr [ebp - 0x18]"], ["0x100192d3", "cmp dword ptr [edi + 0x1a8], eax"], ["0x100192d9", "jne 0x49"]]}, {"both": [["0x1000bdc0", "push 0x1c", "0x100192db"], ["0x1000bdc2", "call ??2@YAPAXI@Z (FUNCTION)", "0x100192dd"]]}, {"orig": [["0x1000bdc7", "mov dword ptr [ebp - 0x10], eax"], ["0x1000bdca", "add esp, 4"], ["0x1000bdcd", "mov byte ptr [ebp - 4], 0xa0"], ["0x1000bdd1", "mov esi, eax"], ["0x1000bdd3", "mov eax, 0"], ["0x1000bdd8", "test esi, esi"], ["0x1000bdda", "je 0x7"], ["0x1000bddc", "mov ecx, esi"]], "recomp": [["0x100192e2", "add esp, 4"], ["0x100192e5", "mov dword ptr [ebp - 0x10], eax"], ["0x100192e8", "mov byte ptr [ebp - 4], 0xa4"], ["0x100192ec", "test eax, eax"], ["0x100192ee", "je 0xc"], ["0x100192f0", "mov ecx, eax"]]}, {"both": [["0x1000bdde", "call AnimState::AnimState (FUNCTION)", "0x100192f2"]]}, {"orig": [["0x1000bde3", "mov byte ptr [ebp - 4], 0"], ["0x1000bde7", "jmp 0x18"], ["0x1000bde9", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000bdec", "push eax"], ["0x1000bded", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000bdf2", "add esp, 4"], ["0x1000bdf5", "ret "], ["0x1000bdf6", "mov eax, dword ptr [ebp + 8]"], ["0x1000bdf9", "mov ecx, esi"], ["0x1000bdfb", "push eax"]], "recomp": [["0x100192f7", "mov dword ptr [ebp - 0x14], eax"], ["0x100192fa", "jmp 0x7"], ["0x100192fc", "mov dword ptr [ebp - 0x14], 0"], ["0x10019303", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001930a", "call <OFFSET5>"], ["0x1001930f", "mov eax, dword ptr [ebp - 0x14]"], ["0x10019312", "jmp -0x2883"], ["0x10019317", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001931a", "push eax"], ["0x1001931b", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10019320", "add esp, 4"], ["0x10019323", "ret "], ["0x10019324", "push esi"], ["0x10019325", "mov ecx, edi"]]}, {"both": [["0x1000bdfc", "call MxObjectFactory::Create (FUNCTION)", "0x10019327"]]}, {"orig": [["0x1000be01", "mov dword ptr [ebp - 0x14], eax"], ["0x1000be04", "jmp -0x10fe"], ["0x1000be09", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000be0c", "push eax"], ["0x1000be0d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000be12", "add esp, 4"], ["0x1000be15", "ret "], ["0x1000be16", "mov eax, <OFFSET155>"]], "recomp": [["0x1001932c", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10019333", "mov dword ptr [ebp - 0x10], eax"], ["0x10019336", "call <OFFSET5>"], ["0x1001933b", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001933e", "jmp -0x28af"], ["0x10019343", "mov eax, <OFFSET156>"]]}, {"both": [["0x1000be1b", "jmp ___CxxFrameHandler (FUNCTION)", "0x10019348"], ["0x1000be20", "lea ecx, [ebp - 0x18]", "0x1001934d"], ["0x1000be23", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10019350"]]}, {"orig": [["0x1000be28", "int3 "], ["0x1000be29", "int3 "], ["0x1000be2a", "int3 "], ["0x1000be2b", "int3 "], ["0x1000be2c", "int3 "], ["0x1000be2d", "int3 "], ["0x1000be2e", "int3 "], ["0x1000be2f", "int3 "], ["0x1000be30", "ret "], ["0x1000be31", "int3 "], ["0x1000be32", "int3 "], ["0x1000be33", "int3 "], ["0x1000be34", "int3 "], ["0x1000be35", "int3 "], ["0x1000be36", "int3 "], ["0x1000be37", "int3 "], ["0x1000be38", "int3 "], ["0x1000be39", "int3 "], ["0x1000be3a", "int3 "], ["0x1000be3b", "int3 "], ["0x1000be3c", "int3 "], ["0x1000be3d", "int3 "], ["0x1000be3e", "int3 "], ["0x1000be3f", "int3 "], ["0x1000be40", "push esi"], ["0x1000be41", "mov eax, dword ptr [ecx]"], ["0x1000be43", "mov esi, ecx"], ["0x1000be45", "call dword ptr [eax + 0x30]"], ["0x1000be48", "mov eax, 1"], ["0x1000be4d", "mov cl, byte ptr [esi + 8]"], ["0x1000be50", "shl eax, cl"], ["0x1000be52", "mov dword ptr [esi + 8], 2"], ["0x1000be59", "or dword ptr [esi + 0xc], eax"], ["0x1000be5c", "pop esi"], ["0x1000be5d", "ret "], ["0x1000be5e", "int3 "], ["0x1000be5f", "int3 "], ["0x1000be60", "mov eax, ecx"], ["0x1000be62", "mov edx, 1"], ["0x1000be67", "mov cl, byte ptr [eax + 8]"], ["0x1000be6a", "shl edx, cl"], ["0x1000be6c", "mov dword ptr [eax + 8], 3"], ["0x1000be73", "or dword ptr [eax + 0xc], edx"], ["0x1000be76", "ret "], ["0x1000be77", "int3 "], ["0x1000be78", "int3 "], ["0x1000be79", "int3 "], ["0x1000be7a", "int3 "], ["0x1000be7b", "int3 "], ["0x1000be7c", "int3 "], ["0x1000be7d", "int3 "], ["0x1000be7e", "int3 "], ["0x1000be7f", "int3 "], ["0x1000be80", "mov eax, ecx"], ["0x1000be82", "mov edx, 1"], ["0x1000be87", "mov cl, byte ptr [eax + 8]"], ["0x1000be8a", "shl edx, cl"], ["0x1000be8c", "mov dword ptr [eax + 8], 4"], ["0x1000be93", "or dword ptr [eax + 0xc], edx"], ["0x1000be96", "ret "], ["0x1000be97", "int3 "], ["0x1000be98", "int3 "], ["0x1000be99", "int3 "], ["0x1000be9a", "int3 "], ["0x1000be9b", "int3 "], ["0x1000be9c", "int3 "], ["0x1000be9d", "int3 "], ["0x1000be9e", "int3 "], ["0x1000be9f", "int3 "], ["0x1000bea0", "mov eax, ecx"], ["0x1000bea2", "mov edx, 1"], ["0x1000bea7", "mov cl, byte ptr [eax + 8]"], ["0x1000beaa", "shl edx, cl"], ["0x1000beac", "mov dword ptr [eax + 8], 5"], ["0x1000beb3", "or dword ptr [eax + 0xc], edx"], ["0x1000beb6", "ret "], ["0x1000beb7", "int3 "], ["0x1000beb8", "int3 "], ["0x1000beb9", "int3 "], ["0x1000beba", "int3 "], ["0x1000bebb", "int3 "], ["0x1000bebc", "int3 "], ["0x1000bebd", "int3 "], ["0x1000bebe", "int3 "], ["0x1000bebf", "int3 "], ["0x1000bec0", "mov eax, ecx"], ["0x1000bec2", "mov edx, 1"], ["0x1000bec7", "mov cl, byte ptr [eax + 8]"], ["0x1000beca", "shl edx, cl"], ["0x1000becc", "mov dword ptr [eax + 8], 6"], ["0x1000bed3", "or dword ptr [eax + 0xc], edx"], ["0x1000bed6", "ret "], ["0x1000bed7", "int3 "], ["0x1000bed8", "int3 "], ["0x1000bed9", "int3 "], ["0x1000beda", "int3 "], ["0x1000bedb", "int3 "], ["0x1000bedc", "int3 "], ["0x1000bedd", "int3 "], ["0x1000bede", "int3 "], ["0x1000bedf", "int3 "], ["0x1000bee0", "mov eax, ecx"], ["0x1000bee2", "mov edx, 1"], ["0x1000bee7", "mov cl, byte ptr [eax + 8]"], ["0x1000beea", "shl edx, cl"], ["0x1000beec", "mov dword ptr [eax + 8], 0"], ["0x1000bef3", "or dword ptr [eax + 0xc], edx"], ["0x1000bef6", "ret "], ["0x1000bef7", "int3 "], ["0x1000bef8", "int3 "], ["0x1000bef9", "int3 "], ["0x1000befa", "int3 "], ["0x1000befb", "int3 "], ["0x1000befc", "int3 "], ["0x1000befd", "int3 "], ["0x1000befe", "int3 "], ["0x1000beff", "int3 "], ["0x1000bf00", "mov eax, dword ptr fs:[0]"], ["0x1000bf06", "push ebp"], ["0x1000bf07", "mov ebp, esp"], ["0x1000bf09", "push -1"], ["0x1000bf0b", "push <OFFSET157>"], ["0x1000bf10", "mov dword ptr [ecx], MxPresenter::`vftable' (VTABLE)"], ["0x1000bf16", "push eax"], ["0x1000bf17", "xor eax, eax"], ["0x1000bf19", "mov dword ptr fs:[0], esp"], ["0x1000bf20", "sub esp, 4"], ["0x1000bf23", "mov dword ptr [ebp - 0x10], ecx"], ["0x1000bf26", "mov dword ptr [ebp - 4], eax"], ["0x1000bf29", "mov byte ptr [ebp - 4], al"], ["0x1000bf2c", "call <OFFSET158>"], ["0x1000bf31", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1000bf38", "call <OFFSET159>"], ["0x1000bf3d", "mov eax, dword ptr [ebp - 0xc]"], ["0x1000bf40", "mov esp, ebp"], ["0x1000bf42", "mov dword ptr fs:[0], eax"], ["0x1000bf48", "pop ebp"], ["0x1000bf49", "ret "], ["0x1000bf4a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000bf4d", "add ecx, 0x20"], ["0x1000bf50", "jmp MxCriticalSection::~MxCriticalSection (FUNCTION)"], ["0x1000bf55", "mov eax, <OFFSET160>"], ["0x1000bf5a", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1000bf5f", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000bf62", "jmp MxCore::~MxCore (FUNCTION)"], ["0x1000bf67", "int3 "], ["0x1000bf68", "int3 "], ["0x1000bf69", "int3 "], ["0x1000bf6a", "int3 "], ["0x1000bf6b", "int3 "], ["0x1000bf6c", "int3 "], ["0x1000bf6d", "int3 "], ["0x1000bf6e", "int3 "], ["0x1000bf6f", "int3 "], ["0x1000bf70", "xor eax, eax"], ["0x1000bf72", "ret "], ["0x1000bf73", "int3 "], ["0x1000bf74", "int3 "], ["0x1000bf75", "int3 "], ["0x1000bf76", "int3 "], ["0x1000bf77", "int3 "], ["0x1000bf78", "int3 "], ["0x1000bf79", "int3 "], ["0x1000bf7a", "int3 "], ["0x1000bf7b", "int3 "], ["0x1000bf7c", "int3 "], ["0x1000bf7d", "int3 "], ["0x1000bf7e", "int3 "], ["0x1000bf7f", "int3 "], ["0x1000bf80", "jmp MxPresenter::Init (FUNCTION)"], ["0x1000bf85", "int3 "], ["0x1000bf86", "int3 "], ["0x1000bf87", "int3 "], ["0x1000bf88", "int3 "], ["0x1000bf89", "int3 "], ["0x1000bf8a", "int3 "], ["0x1000bf8b", "int3 "], ["0x1000bf8c", "int3 "], ["0x1000bf8d", "int3 "], ["0x1000bf8e", "int3 "], ["0x1000bf8f", "int3 "], ["0x1000bf90", "mov edx, ecx"], ["0x1000bf92", "mov eax, 1"], ["0x1000bf97", "mov cl, byte ptr [edx + 8]"], ["0x1000bf9a", "shl eax, cl"], ["0x1000bf9c", "mov ecx, dword ptr [esp + 4]"], ["0x1000bfa0", "or dword ptr [edx + 0xc], eax"], ["0x1000bfa3", "mov dword ptr [edx + 8], ecx"], ["0x1000bfa6", "ret 4"], ["0x1000bfa9", "int3 "], ["0x1000bfaa", "int3 "], ["0x1000bfab", "int3 "], ["0x1000bfac", "int3 "], ["0x1000bfad", "int3 "], ["0x1000bfae", "int3 "], ["0x1000bfaf", "int3 "], ["0x1000bfb0", "mov eax, dword ptr [ecx + 0xc]"], ["0x1000bfb3", "mov dl, 1"], ["0x1000bfb5", "mov cl, byte ptr [esp + 4]"], ["0x1000bfb9", "shl dl, cl"], ["0x1000bfbb", "and al, dl"], ["0x1000bfbd", "ret 4"], ["0x1000bfc0", "xor eax, eax"], ["0x1000bfc2", "ret "], ["0x1000bfc3", "int3 "], ["0x1000bfc4", "int3 "], ["0x1000bfc5", "int3 "], ["0x1000bfc6", "int3 "], ["0x1000bfc7", "int3 "], ["0x1000bfc8", "int3 "], ["0x1000bfc9", "int3 "], ["0x1000bfca", "int3 "], ["0x1000bfcb", "int3 "], ["0x1000bfcc", "int3 "], ["0x1000bfcd", "int3 "], ["0x1000bfce", "int3 "], ["0x1000bfcf", "int3 "], ["0x1000bfd0", "xor al, al"], ["0x1000bfd2", "ret 8"], ["0x1000bfd5", "int3 "], ["0x1000bfd6", "int3 "], ["0x1000bfd7", "int3 "], ["0x1000bfd8", "int3 "], ["0x1000bfd9", "int3 "], ["0x1000bfda", "int3 "], ["0x1000bfdb", "int3 "], ["0x1000bfdc", "int3 "], ["0x1000bfdd", "int3 "], ["0x1000bfde", "int3 "], ["0x1000bfdf", "int3 "], ["0x1000bfe0", "mov eax, 'MxPresenter' (STRING)"], ["0x1000bfe5", "ret "], ["0x1000bfe6", "int3 "], ["0x1000bfe7", "int3 "], ["0x1000bfe8", "int3 "], ["0x1000bfe9", "int3 "], ["0x1000bfea", "int3 "], ["0x1000bfeb", "int3 "], ["0x1000bfec", "int3 "], ["0x1000bfed", "int3 "], ["0x1000bfee", "int3 "], ["0x1000bfef", "int3 "], ["0x1000bff0", "mov edx, dword ptr [esp + 4]"], ["0x1000bff4", "push ebx"], ["0x1000bff5", "push esi"], ["0x1000bff6", "mov eax, edx"], ["0x1000bff8", "mov esi, 'MxPresenter' (STRING)"], ["0x1000bffd", "mov bl, byte ptr [eax]"], ["0x1000bfff", "cmp bl, byte ptr [esi]"], ["0x1000c001", "jne 0x1a"], ["0x1000c003", "or bl, bl"], ["0x1000c005", "je 0x12"], ["0x1000c007", "mov bl, byte ptr [eax + 1]"], ["0x1000c00a", "cmp bl, byte ptr [esi + 1]"], ["0x1000c00d", "jne 0xe"], ["0x1000c00f", "add eax, 2"], ["0x1000c012", "add esi, 2"], ["0x1000c015", "or bl, bl"], ["0x1000c017", "jne -0x1c"], ["0x1000c019", "xor eax, eax"], ["0x1000c01b", "jmp 0x5"], ["0x1000c01d", "sbb eax, eax"], ["0x1000c01f", "sbb eax, -1"], ["0x1000c022", "test eax, eax"], ["0x1000c024", "je 0x35"], ["0x1000c026", "mov eax, 'MxCore' (STRING)"], ["0x1000c02b", "mov cl, byte ptr [edx]"], ["0x1000c02d", "cmp cl, byte ptr [eax]"], ["0x1000c02f", "jne 0x1a"], ["0x1000c031", "or cl, cl"], ["0x1000c033", "je 0x12"], ["0x1000c035", "mov cl, byte ptr [edx + 1]"], ["0x1000c038", "cmp cl, byte ptr [eax + 1]"], ["0x1000c03b", "jne 0xe"], ["0x1000c03d", "add edx, 2"], ["0x1000c040", "add eax, 2"], ["0x1000c043", "or cl, cl"], ["0x1000c045", "jne -0x1c"], ["0x1000c047", "xor eax, eax"], ["0x1000c049", "jmp 0x5"], ["0x1000c04b", "sbb eax, eax"], ["0x1000c04d", "sbb eax, -1"], ["0x1000c050", "test eax, eax"], ["0x1000c052", "je 0x7"], ["0x1000c054", "xor al, al"], ["0x1000c056", "pop esi"], ["0x1000c057", "pop ebx"], ["0x1000c058", "ret 4"], ["0x1000c05b", "mov al, 1"], ["0x1000c05d", "pop esi"], ["0x1000c05e", "pop ebx"], ["0x1000c05f", "ret 4"], ["0x1000c062", "int3 "], ["0x1000c063", "int3 "], ["0x1000c064", "int3 "], ["0x1000c065", "int3 "], ["0x1000c066", "int3 "], ["0x1000c067", "int3 "], ["0x1000c068", "int3 "], ["0x1000c069", "int3 "], ["0x1000c06a", "int3 "], ["0x1000c06b", "int3 "], ["0x1000c06c", "int3 "], ["0x1000c06d", "int3 "], ["0x1000c06e", "int3 "], ["0x1000c06f", "int3 "], ["0x1000c070", "mov eax, dword ptr fs:[0]"], ["0x1000c076", "push ebp"], ["0x1000c077", "mov ebp, esp"], ["0x1000c079", "push -1"], ["0x1000c07b", "push <OFFSET163>"], ["0x1000c080", "mov dword ptr [ecx], MxPresenter::`vftable' (VTABLE)"], ["0x1000c086", "push eax"], ["0x1000c087", "xor eax, eax"], ["0x1000c089", "mov dword ptr fs:[0], esp"], ["0x1000c090", "sub esp, 4"], ["0x1000c093", "mov dword ptr [ebp - 0x10], ecx"], ["0x1000c096", "mov dword ptr [ebp - 4], eax"], ["0x1000c099", "mov byte ptr [ebp - 4], al"], ["0x1000c09c", "call <OFFSET164>"], ["0x1000c0a1", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1000c0a8", "call <OFFSET165>"], ["0x1000c0ad", "test byte ptr [ebp + 8], 1"], ["0x1000c0b1", "je 0xc"], ["0x1000c0b3", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000c0b6", "push eax"], ["0x1000c0b7", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000c0bc", "add esp, 4"], ["0x1000c0bf", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000c0c2", "mov ecx, dword ptr [ebp - 0xc]"], ["0x1000c0c5", "mov dword ptr fs:[0], ecx"], ["0x1000c0cc", "mov esp, ebp"], ["0x1000c0ce", "pop ebp"], ["0x1000c0cf", "ret 4"], ["0x1000c0d2", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000c0d5", "add ecx, 0x20"], ["0x1000c0d8", "jmp MxCriticalSection::~MxCriticalSection (FUNCTION)"], ["0x1000c0dd", "mov eax, <OFFSET166>"], ["0x1000c0e2", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1000c0e7", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000c0ea", "jmp MxCore::~MxCore (FUNCTION)"], ["0x1000c0ef", "int3 "], ["0x1000c0f0", "mov eax, dword ptr [esp + 4]"], ["0x1000c0f4", "mov dword ptr [ecx], Vector2::`vftable' (VTABLE)"], ["0x1000c0fa", "mov dword ptr [ecx + 4], eax"], ["0x1000c0fd", "mov eax, ecx"], ["0x1000c0ff", "ret 4"], ["0x1000c102", "int3 "], ["0x1000c103", "int3 "], ["0x1000c104", "int3 "], ["0x1000c105", "int3 "], ["0x1000c106", "int3 "], ["0x1000c107", "int3 "], ["0x1000c108", "int3 "], ["0x1000c109", "int3 "], ["0x1000c10a", "int3 "], ["0x1000c10b", "int3 "], ["0x1000c10c", "int3 "], ["0x1000c10d", "int3 "], ["0x1000c10e", "int3 "], ["0x1000c10f", "int3 "], ["0x1000c110", "mov eax, dword ptr fs:[0]"], ["0x1000c116", "push ebp"], ["0x1000c117", "mov ebp, esp"], ["0x1000c119", "push -1"], ["0x1000c11b", "push <OFFSET167>"], ["0x1000c120", "mov dword ptr [ecx], MxEntity::`vftable' (VTABLE)"], ["0x1000c126", "push eax"], ["0x1000c127", "xor eax, eax"], ["0x1000c129", "mov dword ptr fs:[0], esp"], ["0x1000c130", "sub esp, 4"], ["0x1000c133", "mov dword ptr [ebp - 0x10], ecx"], ["0x1000c136", "mov dword ptr [ebp - 4], eax"], ["0x1000c139", "mov byte ptr [ebp - 4], al"], ["0x1000c13c", "call <OFFSET168>"], ["0x1000c141", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1000c148", "call <OFFSET169>"], ["0x1000c14d", "mov eax, dword ptr [ebp - 0xc]"], ["0x1000c150", "mov esp, ebp"], ["0x1000c152", "mov dword ptr fs:[0], eax"], ["0x1000c158", "pop ebp"], ["0x1000c159", "ret "], ["0x1000c15a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000c15d", "add ecx, 0xc"], ["0x1000c160", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000c165", "mov eax, <OFFSET170>"], ["0x1000c16a", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1000c16f", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000c172", "jmp MxCore::~MxCore (FUNCTION)"], ["0x1000c177", "int3 "], ["0x1000c178", "int3 "], ["0x1000c179", "int3 "], ["0x1000c17a", "int3 "], ["0x1000c17b", "int3 "], ["0x1000c17c", "int3 "], ["0x1000c17d", "int3 "], ["0x1000c17e", "int3 "], ["0x1000c17f", "int3 "], ["0x1000c180", "mov eax, 'MxEntity' (STRING)"], ["0x1000c185", "ret "], ["0x1000c186", "int3 "], ["0x1000c187", "int3 "], ["0x1000c188", "int3 "], ["0x1000c189", "int3 "], ["0x1000c18a", "int3 "], ["0x1000c18b", "int3 "], ["0x1000c18c", "int3 "], ["0x1000c18d", "int3 "], ["0x1000c18e", "int3 "], ["0x1000c18f", "int3 "], ["0x1000c190", "mov edx, dword ptr [esp + 4]"], ["0x1000c194", "push ebx"], ["0x1000c195", "push esi"], ["0x1000c196", "mov eax, edx"], ["0x1000c198", "mov esi, 'MxEntity' (STRING)"], ["0x1000c19d", "mov bl, byte ptr [eax]"], ["0x1000c19f", "cmp bl, byte ptr [esi]"], ["0x1000c1a1", "jne 0x1a"], ["0x1000c1a3", "or bl, bl"], ["0x1000c1a5", "je 0x12"], ["0x1000c1a7", "mov bl, byte ptr [eax + 1]"], ["0x1000c1aa", "cmp bl, byte ptr [esi + 1]"], ["0x1000c1ad", "jne 0xe"], ["0x1000c1af", "add eax, 2"], ["0x1000c1b2", "add esi, 2"], ["0x1000c1b5", "or bl, bl"], ["0x1000c1b7", "jne -0x1c"], ["0x1000c1b9", "xor eax, eax"], ["0x1000c1bb", "jmp 0x5"], ["0x1000c1bd", "sbb eax, eax"], ["0x1000c1bf", "sbb eax, -1"], ["0x1000c1c2", "test eax, eax"], ["0x1000c1c4", "je 0x35"], ["0x1000c1c6", "mov eax, 'MxCore' (STRING)"], ["0x1000c1cb", "mov cl, byte ptr [edx]"], ["0x1000c1cd", "cmp cl, byte ptr [eax]"], ["0x1000c1cf", "jne 0x1a"], ["0x1000c1d1", "or cl, cl"], ["0x1000c1d3", "je 0x12"], ["0x1000c1d5", "mov cl, byte ptr [edx + 1]"], ["0x1000c1d8", "cmp cl, byte ptr [eax + 1]"], ["0x1000c1db", "jne 0xe"], ["0x1000c1dd", "add edx, 2"], ["0x1000c1e0", "add eax, 2"], ["0x1000c1e3", "or cl, cl"], ["0x1000c1e5", "jne -0x1c"], ["0x1000c1e7", "xor eax, eax"], ["0x1000c1e9", "jmp 0x5"], ["0x1000c1eb", "sbb eax, eax"], ["0x1000c1ed", "sbb eax, -1"], ["0x1000c1f0", "test eax, eax"], ["0x1000c1f2", "je 0x7"], ["0x1000c1f4", "xor al, al"], ["0x1000c1f6", "pop esi"], ["0x1000c1f7", "pop ebx"], ["0x1000c1f8", "ret 4"], ["0x1000c1fb", "mov al, 1"], ["0x1000c1fd", "pop esi"], ["0x1000c1fe", "pop ebx"], ["0x1000c1ff", "ret 4"], ["0x1000c202", "int3 "], ["0x1000c203", "int3 "], ["0x1000c204", "int3 "], ["0x1000c205", "int3 "], ["0x1000c206", "int3 "], ["0x1000c207", "int3 "], ["0x1000c208", "int3 "], ["0x1000c209", "int3 "], ["0x1000c20a", "int3 "], ["0x1000c20b", "int3 "], ["0x1000c20c", "int3 "], ["0x1000c20d", "int3 "], ["0x1000c20e", "int3 "], ["0x1000c20f", "int3 "], ["0x1000c210", "mov eax, dword ptr fs:[0]"], ["0x1000c216", "push ebp"], ["0x1000c217", "mov ebp, esp"], ["0x1000c219", "push -1"], ["0x1000c21b", "push <OFFSET172>"], ["0x1000c220", "mov dword ptr [ecx], MxEntity::`vftable' (VTABLE)"], ["0x1000c226", "push eax"], ["0x1000c227", "xor eax, eax"], ["0x1000c229", "mov dword ptr fs:[0], esp"], ["0x1000c230", "sub esp, 4"], ["0x1000c233", "mov dword ptr [ebp - 0x10], ecx"], ["0x1000c236", "mov dword ptr [ebp - 4], eax"], ["0x1000c239", "mov byte ptr [ebp - 4], al"], ["0x1000c23c", "call <OFFSET173>"], ["0x1000c241", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1000c248", "call <OFFSET174>"], ["0x1000c24d", "test byte ptr [ebp + 8], 1"], ["0x1000c251", "je 0xc"], ["0x1000c253", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000c256", "push eax"], ["0x1000c257", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000c25c", "add esp, 4"], ["0x1000c25f", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000c262", "mov ecx, dword ptr [ebp - 0xc]"], ["0x1000c265", "mov dword ptr fs:[0], ecx"], ["0x1000c26c", "mov esp, ebp"], ["0x1000c26e", "pop ebp"], ["0x1000c26f", "ret 4"], ["0x1000c272", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000c275", "add ecx, 0xc"], ["0x1000c278", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1000c27d", "mov eax, <OFFSET175>"], ["0x1000c282", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1000c287", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000c28a", "jmp MxCore::~MxCore (FUNCTION)"], ["0x1000c28f", "int3 "], ["0x1000c290", "mov eax, dword ptr fs:[0]"], ["0x1000c296", "push ebp"], ["0x1000c297", "mov ebp, esp"], ["0x1000c299", "push -1"], ["0x1000c29b", "push <OFFSET176>"], ["0x1000c2a0", "mov dword ptr [ecx], LegoEntity::`vftable' (VTABLE)"], ["0x1000c2a6", "push eax"], ["0x1000c2a7", "mov dword ptr fs:[0], esp"], ["0x1000c2ae", "sub esp, 4"], ["0x1000c2b1", "mov dword ptr [ebp - 4], 0"], ["0x1000c2b8", "push 1"], ["0x1000c2ba", "mov dword ptr [ebp - 0x10], ecx"], ["0x1000c2bd", "call LegoEntity::Destroy (FUNCTION)"], ["0x1000c2c2", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1000c2c9", "call <OFFSET178>"], ["0x1000c2ce", "mov eax, dword ptr [ebp - 0xc]"], ["0x1000c2d1", "mov esp, ebp"], ["0x1000c2d3", "mov dword ptr fs:[0], eax"], ["0x1000c2d9", "pop ebp"], ["0x1000c2da", "ret "], ["0x1000c2db", "mov eax, <OFFSET179>"], ["0x1000c2e0", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1000c2e5", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000c2e8", "jmp MxEntity::~MxEntity (FUNCTION)"], ["0x1000c2ed", "int3 "], ["0x1000c2ee", "int3 "], ["0x1000c2ef", "int3 "], ["0x1000c2f0", "mov eax, 'LegoEntity' (STRING)"], ["0x1000c2f5", "ret "], ["0x1000c2f6", "int3 "], ["0x1000c2f7", "int3 "], ["0x1000c2f8", "int3 "], ["0x1000c2f9", "int3 "], ["0x1000c2fa", "int3 "], ["0x1000c2fb", "int3 "], ["0x1000c2fc", "int3 "], ["0x1000c2fd", "int3 "], ["0x1000c2fe", "int3 "], ["0x1000c2ff", "int3 "], ["0x1000c300", "mov edx, dword ptr [esp + 4]"], ["0x1000c304", "push ebx"], ["0x1000c305", "push esi"], ["0x1000c306", "mov eax, edx"], ["0x1000c308", "mov esi, 'LegoEntity' (STRING)"], ["0x1000c30d", "mov bl, byte ptr [eax]"], ["0x1000c30f", "cmp bl, byte ptr [esi]"], ["0x1000c311", "jne 0x1a"], ["0x1000c313", "or bl, bl"], ["0x1000c315", "je 0x12"], ["0x1000c317", "mov bl, byte ptr [eax + 1]"], ["0x1000c31a", "cmp bl, byte ptr [esi + 1]"], ["0x1000c31d", "jne 0xe"], ["0x1000c31f", "add eax, 2"], ["0x1000c322", "add esi, 2"], ["0x1000c325", "or bl, bl"], ["0x1000c327", "jne -0x1c"], ["0x1000c329", "xor eax, eax"], ["0x1000c32b", "jmp 0x5"], ["0x1000c32d", "sbb eax, eax"], ["0x1000c32f", "sbb eax, -1"], ["0x1000c332", "test eax, eax"], ["0x1000c334", "je 0x65"], ["0x1000c336", "mov eax, edx"], ["0x1000c338", "mov ecx, 'MxEntity' (STRING)"], ["0x1000c33d", "mov bl, byte ptr [eax]"], ["0x1000c33f", "cmp bl, byte ptr [ecx]"], ["0x1000c341", "jne 0x1a"], ["0x1000c343", "or bl, bl"], ["0x1000c345", "je 0x12"], ["0x1000c347", "mov bl, byte ptr [eax + 1]"], ["0x1000c34a", "cmp bl, byte ptr [ecx + 1]"], ["0x1000c34d", "jne 0xe"], ["0x1000c34f", "add eax, 2"], ["0x1000c352", "add ecx, 2"], ["0x1000c355", "or bl, bl"], ["0x1000c357", "jne -0x1c"], ["0x1000c359", "xor eax, eax"], ["0x1000c35b", "jmp 0x5"], ["0x1000c35d", "sbb eax, eax"], ["0x1000c35f", "sbb eax, -1"], ["0x1000c362", "test eax, eax"], ["0x1000c364", "je 0x35"], ["0x1000c366", "mov eax, 'MxCore' (STRING)"], ["0x1000c36b", "mov cl, byte ptr [edx]"], ["0x1000c36d", "cmp cl, byte ptr [eax]"], ["0x1000c36f", "jne 0x1a"], ["0x1000c371", "or cl, cl"], ["0x1000c373", "je 0x12"], ["0x1000c375", "mov cl, byte ptr [edx + 1]"], ["0x1000c378", "cmp cl, byte ptr [eax + 1]"], ["0x1000c37b", "jne 0xe"], ["0x1000c37d", "add edx, 2"], ["0x1000c380", "add eax, 2"], ["0x1000c383", "or cl, cl"], ["0x1000c385", "jne -0x1c"], ["0x1000c387", "xor eax, eax"], ["0x1000c389", "jmp 0x5"], ["0x1000c38b", "sbb eax, eax"], ["0x1000c38d", "sbb eax, -1"], ["0x1000c390", "test eax, eax"], ["0x1000c392", "je 0x7"], ["0x1000c394", "xor al, al"], ["0x1000c396", "pop esi"], ["0x1000c397", "pop ebx"], ["0x1000c398", "ret 4"], ["0x1000c39b", "mov al, 1"], ["0x1000c39d", "pop esi"], ["0x1000c39e", "pop ebx"], ["0x1000c39f", "ret 4"], ["0x1000c3a2", "int3 "], ["0x1000c3a3", "int3 "], ["0x1000c3a4", "int3 "], ["0x1000c3a5", "int3 "], ["0x1000c3a6", "int3 "], ["0x1000c3a7", "int3 "], ["0x1000c3a8", "int3 "], ["0x1000c3a9", "int3 "], ["0x1000c3aa", "int3 "], ["0x1000c3ab", "int3 "], ["0x1000c3ac", "int3 "], ["0x1000c3ad", "int3 "], ["0x1000c3ae", "int3 "], ["0x1000c3af", "int3 "], ["0x1000c3b0", "mov eax, dword ptr fs:[0]"], ["0x1000c3b6", "push ebp"], ["0x1000c3b7", "mov ebp, esp"], ["0x1000c3b9", "push -1"], ["0x1000c3bb", "push <OFFSET181>"]], "recomp": []}]]]}, {"address": "0x1000be30", "recomp": "0x100097b0", "name": "MxPresenter::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x1000be40", "recomp": "0x100097c0", "name": "MxPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x1000be60", "recomp": "0x100097e0", "name": "MxPresenter::StartingTickle", "matching": 1.0, "diff": []}, {"address": "0x1000be80", "recomp": "0x10009800", "name": "MxPresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x1000bea0", "recomp": "0x10009820", "name": "MxPresenter::RepeatingTickle", "matching": 1.0, "diff": []}, {"address": "0x1000bec0", "recomp": "0x10009840", "name": "MxPresenter::Unk5Tickle", "matching": 1.0, "diff": []}, {"address": "0x1000bee0", "recomp": "0x10009860", "name": "MxPresenter::DoneTickle", "matching": 1.0, "diff": []}, {"address": "0x1000bf00", "recomp": "0x100096b0", "name": "MxPresenter::~MxPresenter", "matching": 1.0, "diff": []}, {"address": "0x1000bf70", "recomp": "0x10009880", "name": "MxPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x1000bf80", "recomp": "0x10009890", "name": "MxPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1000bf90", "recomp": "0x100098a0", "name": "MxPresenter::SetTickleState", "matching": 1.0, "diff": []}, {"address": "0x1000bfb0", "recomp": "0x100098c0", "name": "MxPresenter::HasTickleStatePassed", "matching": 1.0, "diff": []}, {"address": "0x1000bfc0", "recomp": "0x100098d0", "name": "MxPresenter::PutData", "matching": 1.0, "diff": []}, {"address": "0x1000bfd0", "recomp": "0x100098e0", "name": "MxPresenter::IsHit", "matching": 1.0, "diff": []}, {"address": "0x1000bfe0", "recomp": "0x10009720", "name": "MxPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000bff0", "recomp": "0x10009730", "name": "MxPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000c070", "recomp": "0x100098f0", "name": "MxPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000c0f0", "recomp": "0x1000d2c0", "name": "Vector2::Vector2", "matching": 1.0, "diff": []}, {"address": "0x1000c110", "recomp": "0x100070d0", "name": "MxEntity::~MxEntity", "matching": 1.0, "diff": []}, {"address": "0x1000c180", "recomp": "0x10007140", "name": "MxEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000c190", "recomp": "0x10007150", "name": "MxEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000c210", "recomp": "0x100071d0", "name": "MxEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000c290", "recomp": "0x10007250", "name": "LegoEntity::~LegoEntity", "matching": 1.0, "diff": []}, {"address": "0x1000c2f0", "recomp": "0x100072b0", "name": "LegoEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000c300", "recomp": "0x100072c0", "name": "LegoEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000c3b0", "recomp": "0x10007370", "name": "LegoEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000c430", "recomp": "0x10033890", "name": "LegoPathActor::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000c440", "recomp": "0x100338a0", "name": "LegoPathActor::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000c550", "recomp": "0x10009970", "name": "MxMediaPresenter::~MxMediaPresenter", "matching": 1.0, "diff": []}, {"address": "0x1000c5b0", "recomp": "0x10009a90", "name": "MxMediaPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1000c5c0", "recomp": "0x100099d0", "name": "MxMediaPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000c5d0", "recomp": "0x100099e0", "name": "MxMediaPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000c680", "recomp": "0x10009aa0", "name": "MxMediaPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000c700", "recomp": "0x10019690", "name": "MxVideoPresenter::LoadHeader", "matching": 1.0, "diff": []}, {"address": "0x1000c710", "recomp": "0x100196a0", "name": "MxVideoPresenter::CreateBitmap", "matching": 1.0, "diff": []}, {"address": "0x1000c720", "recomp": "0x100196b0", "name": "MxVideoPresenter::LoadFrame", "matching": 1.0, "diff": []}, {"address": "0x1000c730", "recomp": "0x100196c0", "name": "MxVideoPresenter::RealizePalette", "matching": 1.0, "diff": []}, {"address": "0x1000c740", "recomp": "0x10019530", "name": "MxVideoPresenter::~MxVideoPresenter", "matching": 1.0, "diff": []}, {"address": "0x1000c7a0", "recomp": "0x10019680", "name": "MxVideoPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1000c7b0", "recomp": "0x100196d0", "name": "MxVideoPresenter::VTable0x78", "matching": 1.0, "diff": []}, {"address": "0x1000c7c0", "recomp": "0x100196e0", "name": "MxVideoPresenter::VTable0x7c", "matching": 1.0, "diff": []}, {"address": "0x1000c7e0", "recomp": "0x10019700", "name": "MxVideoPresenter::GetWidth", "matching": 0.6, "diff": [["@@ -0x1000c7e0,10 +0x10019700,10 @@", [{"both": [["0x1000c7e0", "mov edx, dword ptr [ecx + 0x54]", "0x10019700"], ["0x1000c7e3", "test edx, edx", "0x10019703"]]}, {"orig": [["0x1000c7e5", "jne 0xa"]], "recomp": [["0x10019705", "je 0x7"], ["0x10019707", "xor eax, eax"], ["0x10019709", "mov ax, word ptr [edx + 8]"], ["0x1001970d", "ret "]]}, {"both": [["0x1000c7e7", "mov eax, dword ptr [ecx + 0x50]", "0x1001970e"], ["0x1000c7ea", "mov ecx, dword ptr [eax + 0xc]", "0x10019711"], ["0x1000c7ed", "mov eax, dword ptr [ecx + 4]", "0x10019714"], ["0x1000c7f0", "ret ", "0x10019717"]]}, {"orig": [["0x1000c7f1", "xor eax, eax"], ["0x1000c7f3", "mov ax, word ptr [edx + 8]"], ["0x1000c7f7", "ret "]], "recomp": []}]]]}, {"address": "0x1000c800", "recomp": "0x10019720", "name": "MxVideoPresenter::GetHeight", "matching": 0.6153846153846154, "diff": [["@@ -0x1000c800,13 +0x10019720,13 @@", [{"both": [["0x1000c800", "mov edx, dword ptr [ecx + 0x54]", "0x10019720"], ["0x1000c803", "test edx, edx", "0x10019723"]]}, {"orig": [["0x1000c805", "jne 0x10"]], "recomp": [["0x10019725", "je 0x7"], ["0x10019727", "xor eax, eax"], ["0x10019729", "mov ax, word ptr [edx + 0xa]"], ["0x1001972d", "ret "]]}, {"both": [["0x1000c807", "mov eax, dword ptr [ecx + 0x50]", "0x1001972e"], ["0x1000c80a", "mov ecx, dword ptr [eax + 0xc]", "0x10019731"], ["0x1000c80d", "mov eax, dword ptr [ecx + 8]", "0x10019734"], ["0x1000c810", "test eax, eax", "0x10019737"]]}, {"orig": [["0x1000c812", "jg 0x9"]], "recomp": [["0x10019739", "jg 0x2"]]}, {"both": [["0x1000c814", "neg eax", "0x1001973b"], ["0x1000c816", "ret ", "0x1001973d"]]}, {"orig": [["0x1000c817", "xor eax, eax"], ["0x1000c819", "mov ax, word ptr [edx + 0xa]"], ["0x1000c81d", "ret "]], "recomp": []}]]]}, {"address": "0x1000c820", "recomp": "0x10019590", "name": "MxVideoPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000c830", "recomp": "0x100195a0", "name": "MxVideoPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000c910", "recomp": "0x10019740", "name": "MxVideoPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000c990", "recomp": "0x10019ee0", "name": "LegoAnimPresenter::VTable0x9c", "matching": 0.0, "stub": true}, {"address": "0x1000c9a0", "recomp": "0x10019ef0", "name": "LegoLoopingAnimPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000c9b0", "recomp": "0x10019f00", "name": "LegoLoopingAnimPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000caf0", "recomp": "0x1000ebe0", "name": "MxCompositePresenter::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x1000cb10", "recomp": "0x10019d50", "name": "LegoActorPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000cb20", "recomp": "0x10019d60", "name": "LegoActorPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000cc30", "recomp": "0x10019e70", "name": "LegoActorPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000cca0", "recomp": "0x100387d0", "name": "LegoModelPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1000ccb0", "recomp": "0x1001a040", "name": "LegoModelPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000ccc0", "recomp": "0x1001a050", "name": "LegoModelPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000cdd0", "recomp": "0x1001a160", "name": "LegoModelPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000ce50", "recomp": "0x1001a350", "name": "LegoTexturePresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000ce60", "recomp": "0x1001a360", "name": "LegoTexturePresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000cf40", "recomp": "0x1001a440", "name": "LegoTexturePresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000cf60", "recomp": "0x10039c30", "name": "LegoPartPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1000cf70", "recomp": "0x1001a1e0", "name": "LegoPartPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000cf80", "recomp": "0x1001a1f0", "name": "LegoPartPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000d060", "recomp": "0x1001a2d0", "name": "LegoPartPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000d0e0", "recomp": "0x10019bd0", "name": "LegoActionControlPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000d0f0", "recomp": "0x10019be0", "name": "LegoActionControlPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000d1d0", "recomp": "0x10019cc0", "name": "LegoActionControlPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000d260", "recomp": "0x10009c10", "name": "MxAudioPresenter::GetVolume", "matching": 1.0, "diff": []}, {"address": "0x1000d270", "recomp": "0x10009c20", "name": "MxAudioPresenter::SetVolume", "matching": 1.0, "diff": []}, {"address": "0x1000d280", "recomp": "0x10009b20", "name": "MxAudioPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000d290", "recomp": "0x10009b30", "name": "MxAudioPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000d370", "recomp": "0x10009c30", "name": "MxAudioPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000d3e0", "recomp": "0x10009ca0", "name": "MxAudioPresenter::~MxAudioPresenter", "matching": 1.0, "diff": []}, {"address": "0x1000d430", "recomp": "0x10009cf0", "name": "MxSoundPresenter::~MxSoundPresenter", "matching": 1.0, "diff": []}, {"address": "0x1000d490", "recomp": "0x10009e70", "name": "MxSoundPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1000d4a0", "recomp": "0x10009d50", "name": "MxSoundPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000d4b0", "recomp": "0x10009d60", "name": "MxSoundPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000d5c0", "recomp": "0x10009e80", "name": "MxSoundPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000d640", "recomp": "0x10009f00", "name": "MxWavePresenter::~MxWavePresenter", "matching": 1.0, "diff": []}, {"address": "0x1000d6a0", "recomp": "0x1000a0b0", "name": "MxWavePresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1000d6b0", "recomp": "0x1000a0c0", "name": "MxWavePresenter::IsPaused", "matching": 1.0, "diff": []}, {"address": "0x1000d6c0", "recomp": "0x10009f60", "name": "MxWavePresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000d6d0", "recomp": "0x10009f70", "name": "MxWavePresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000d810", "recomp": "0x1000a0d0", "name": "MxWavePresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000d890", "recomp": "0x10019910", "name": "Lego3DWavePresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000d8a0", "recomp": "0x10019920", "name": "Lego3DWavePresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000dab0", "recomp": "0x10034bb0", "name": "LegoRace::VTable0x78", "matching": 1.0, "diff": []}, {"address": "0x1000dac0", "recomp": "0x10034bc0", "name": "LegoRace::VTable0x7c", "matching": 0.0, "stub": true}, {"address": "0x1000dae0", "recomp": "0x10034bd0", "name": "LegoRace::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x1000daf0", "recomp": "0x100197c0", "name": "JetskiRace::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000db00", "recomp": "0x100197d0", "name": "JetskiRace::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000dc40", "recomp": "0x1001b220", "name": "JetskiRaceState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000dc50", "recomp": "0x1001b230", "name": "JetskiRaceState::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000dd30", "recomp": "0x1001ab40", "name": "CarRaceState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000dd40", "recomp": "0x1001ab50", "name": "CarRaceState::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000de20", "recomp": "0x1002d500", "name": "ScoreState::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x1000de30", "recomp": "0x1002d510", "name": "ScoreState::SetFlag", "matching": 1.0, "diff": []}, {"address": "0x1000de40", "recomp": "0x1001a5e0", "name": "ScoreState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000de50", "recomp": "0x1001a5f0", "name": "ScoreState::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000df00", "recomp": "0x1001b750", "name": "ScoreState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000df70", "recomp": "0x10003440", "name": "LegoAct2State::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x1000df80", "recomp": "0x10019aa0", "name": "LegoAct2State::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000df90", "recomp": "0x10019ab0", "name": "LegoAct2State::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000e040", "recomp": "0x10019b60", "name": "LegoAct2State::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000e0b0", "recomp": "0x10019510", "name": "HelicopterState::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x1000e0c0", "recomp": "0x10019520", "name": "HelicopterState::SetFlag", "matching": 1.0, "diff": []}, {"address": "0x1000e0d0", "recomp": "0x10019450", "name": "HelicopterState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000e0e0", "recomp": "0x10019460", "name": "HelicopterState::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000e190", "recomp": "0x1001b850", "name": "HelicopterState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000e200", "recomp": "0x1001a6a0", "name": "Act2PoliceStation::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000e210", "recomp": "0x1001a6b0", "name": "Act2PoliceStation::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000e2f0", "recomp": "0x10003e00", "name": "Act3State::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x1000e300", "recomp": "0x1001a790", "name": "Act3State::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000e310", "recomp": "0x1001a7a0", "name": "Act3State::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000e3c0", "recomp": "0x1001a850", "name": "Act3State::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000e430", "recomp": "0x1001a8c0", "name": "Doors::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000e440", "recomp": "0x1001a8d0", "name": "Doors::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000e580", "recomp": "0x1001b9a0", "name": "Doors::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000e660", "recomp": "0x10007ca0", "name": "IsleActor::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000e670", "recomp": "0x10007cb0", "name": "IsleActor::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000e780", "recomp": "0x1001b310", "name": "Pizzeria::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000e790", "recomp": "0x1001b320", "name": "Pizzeria::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000e8d0", "recomp": "0x1001b460", "name": "Pizzeria::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000e940", "recomp": "0x10007f30", "name": "IsleActor::~IsleActor", "matching": 1.0, "diff": []}, {"address": "0x1000e990", "recomp": "0x10007f80", "name": "IsleActor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000ea00", "recomp": "0x1001afc0", "name": "InfoCenterEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000ea10", "recomp": "0x1001afd0", "name": "InfoCenterEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000eb20", "recomp": "0x1001ad60", "name": "GasStationEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000eb30", "recomp": "0x1001ad70", "name": "GasStationEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000ec40", "recomp": "0x1001ae90", "name": "HospitalEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000ec50", "recomp": "0x1001aea0", "name": "HospitalEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000ed60", "recomp": "0x1001b4d0", "name": "PoliceEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000ed70", "recomp": "0x1001b4e0", "name": "PoliceEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000ee80", "recomp": "0x1001aa10", "name": "BeachHouseEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000ee90", "recomp": "0x1001aa20", "name": "BeachHouseEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000efa0", "recomp": "0x1001ac30", "name": "RaceStandsEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000efb0", "recomp": "0x1001ac40", "name": "RaceStandsEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000f0c0", "recomp": "0x1001b0f0", "name": "JailEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000f0d0", "recomp": "0x1001b100", "name": "JailEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000f300", "recomp": "0x1002ecb0", "name": "JukeBoxState::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x1000f310", "recomp": "0x1001a520", "name": "JukeBoxState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000f320", "recomp": "0x1001a530", "name": "JukeBoxState::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000f3d0", "recomp": "0x1001bf10", "name": "JukeBoxState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f440", "recomp": "0x1001b5f0", "name": "LegoLoopingAnimPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f4b0", "recomp": "0x1001b660", "name": "Lego3DWavePresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f530", "recomp": "0x1001b6e0", "name": "JetskiRace::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f610", "recomp": "0x1001b930", "name": "Act2PoliceStation::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f680", "recomp": "0x1001ba10", "name": "JetskiRaceState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f6f0", "recomp": "0x1001ba80", "name": "RaceState::~RaceState", "matching": 1.0, "diff": []}, {"address": "0x1000f740", "recomp": "0x1001bad0", "name": "CarRaceState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f7b0", "recomp": "0x1001bb40", "name": "InfoCenterEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f820", "recomp": "0x1001bbb0", "name": "HospitalEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f890", "recomp": "0x1001bc20", "name": "GasStationEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f900", "recomp": "0x1001bc90", "name": "PoliceEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f970", "recomp": "0x1001bd00", "name": "BeachHouseEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000f9e0", "recomp": "0x1001bd70", "name": "RaceStandsEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000fac0", "recomp": "0x1001bea0", "name": "JailEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1000fb30", "recomp": "0x1001bf80", "name": "LegoObjectFactory::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1000fb50", "recomp": "0x10003930", "name": "LegoAnimActor::`scalar deleting destructor'", "matching": 0.10526315789473684, "diff": [["@@ -0x1000fb50,63 +0x10003930,32 @@", [{"orig": [["0x1000fb50", "sub ecx, dword ptr [ecx - 4]"], ["0x1000fb53", "jmp 0x8"], ["0x1000fb58", "int3 "], ["0x1000fb59", "int3 "], ["0x1000fb5a", "int3 "], ["0x1000fb5b", "int3 "], ["0x1000fb5c", "int3 "], ["0x1000fb5d", "int3 "], ["0x1000fb5e", "int3 "], ["0x1000fb5f", "int3 "], ["0x1000fb60", "push esi"], ["0x1000fb61", "mov esi, ecx"], ["0x1000fb63", "call <OFFSET1>"], ["0x1000fb68", "mov ecx, esi"]], "recomp": [["0x10003930", "mov eax, dword ptr fs:[0]"], ["0x10003936", "push ebp"], ["0x10003937", "mov ebp, esp"], ["0x10003939", "push -1"], ["0x1000393b", "push <OFFSET1>"], ["0x10003940", "push eax"], ["0x10003941", "mov dword ptr fs:[0], esp"], ["0x10003948", "sub esp, 4"], ["0x1000394b", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10003952", "mov dword ptr [ebp - 0x10], ecx"], ["0x10003955", "call <OFFSET2>"], ["0x1000395a", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x1000fb6a", "call LegoPathActor::~LegoPathActor (FUNCTION)", "0x1000395d"]]}, {"orig": [["0x1000fb6f", "test byte ptr [esp + 8], 1"], ["0x1000fb74", "je 0xc"], ["0x1000fb76", "lea eax, [esi - 0x20]"]], "recomp": [["0x10003962", "test byte ptr [ebp + 8], 1"], ["0x10003966", "je 0xf"], ["0x10003968", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000396b", "sub eax, 0x20"]]}, {"both": [["0x1000fb79", "push eax", "0x1000396e"], ["0x1000fb7a", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000396f"], ["0x1000fb7f", "add esp, 4", "0x10003974"]]}, {"orig": [["0x1000fb82", "lea eax, [esi - 0x20]"], ["0x1000fb85", "pop esi"]], "recomp": [["0x10003977", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000397a", "mov ecx, dword ptr [ebp - 0xc]"], ["0x1000397d", "mov esp, ebp"], ["0x1000397f", "mov dword ptr fs:[0], ecx"], ["0x10003986", "sub eax, 0x20"], ["0x10003989", "pop ebp"]]}, {"both": [["0x1000fb86", "ret 4", "0x1000398a"]]}, {"orig": [["0x1000fb89", "int3 "], ["0x1000fb8a", "int3 "], ["0x1000fb8b", "int3 "], ["0x1000fb8c", "int3 "], ["0x1000fb8d", "int3 "], ["0x1000fb8e", "int3 "], ["0x1000fb8f", "int3 "], ["0x1000fb90", "sub ecx, dword ptr [ecx - 4]"], ["0x1000fb93", "jmp 0x8"], ["0x1000fb98", "int3 "], ["0x1000fb99", "int3 "], ["0x1000fb9a", "int3 "], ["0x1000fb9b", "int3 "], ["0x1000fb9c", "int3 "], ["0x1000fb9d", "int3 "], ["0x1000fb9e", "int3 "], ["0x1000fb9f", "int3 "], ["0x1000fba0", "mov eax, 'LegoAnimActor' (STRING)"], ["0x1000fba5", "ret "], ["0x1000fba6", "int3 "], ["0x1000fba7", "int3 "], ["0x1000fba8", "int3 "], ["0x1000fba9", "int3 "], ["0x1000fbaa", "int3 "], ["0x1000fbab", "int3 "], ["0x1000fbac", "int3 "], ["0x1000fbad", "int3 "], ["0x1000fbae", "int3 "], ["0x1000fbaf", "int3 "], ["0x1000fbb0", "sub ecx, dword ptr [ecx - 4]"], ["0x1000fbb3", "jmp 0x8"], ["0x1000fbb8", "int3 "], ["0x1000fbb9", "int3 "], ["0x1000fbba", "int3 "], ["0x1000fbbb", "int3 "], ["0x1000fbbc", "int3 "], ["0x1000fbbd", "int3 "], ["0x1000fbbe", "int3 "], ["0x1000fbbf", "int3 "]], "recomp": [["0x1000398d", "mov eax, <OFFSET5>"], ["0x10003992", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10003997", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000399a", "sub ecx, 0x18"], ["0x1000399d", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"]]}]]]}, {"address": "0x1000fb90", "recomp": "0x100039c0", "name": "LegoAnimActor::ClassName", "matching": 0.0, "diff": [["@@ -0x1000fb90,1 +0x100039c0,2 @@", [{"orig": [["0x1000fb90", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x100039c0", "mov eax, 'LegoAnimActor' (STRING)"], ["0x100039c5", "ret "]]}]]]}, {"address": "0x1000fbb0", "recomp": "0x100039e0", "name": "LegoAnimActor::IsA", "matching": 0.9272030651340997, "diff": [["@@ -0x1000fbb0,20 +0x100039e0,10 @@", [{"orig": [["0x1000fbb0", "sub ecx, dword ptr [ecx - 4]"], ["0x1000fbb3", "jmp 0x8"], ["0x1000fbb8", "int3 "], ["0x1000fbb9", "int3 "], ["0x1000fbba", "int3 "], ["0x1000fbbb", "int3 "], ["0x1000fbbc", "int3 "], ["0x1000fbbd", "int3 "], ["0x1000fbbe", "int3 "], ["0x1000fbbf", "int3 "]], "recomp": []}, {"both": [["0x1000fbc0", "mov edx, dword ptr [esp + 4]", "0x100039e0"], ["0x1000fbc4", "push ebx", "0x100039e4"], ["0x1000fbc5", "push esi", "0x100039e5"], ["0x1000fbc6", "mov eax, edx", "0x100039e6"], ["0x1000fbc8", "mov esi, 'LegoAnimActor' (STRING)", "0x100039e8"], ["0x1000fbcd", "mov bl, byte ptr [eax]", "0x100039ed"], ["0x1000fbcf", "cmp bl, byte ptr [esi]", "0x100039ef"], ["0x1000fbd1", "jne 0x1a", "0x100039f1"], ["0x1000fbd3", "or bl, bl", "0x100039f3"], ["0x1000fbd5", "je 0x12", "0x100039f5"]]}]], ["@@ -0x1000fcd7,10 +0x10003af7,19 @@", [{"both": [["0x1000fcd7", "jne 0xe", "0x10003af7"], ["0x1000fcd9", "add edx, 2", "0x10003af9"], ["0x1000fcdc", "add eax, 2", "0x10003afc"], ["0x1000fcdf", "or cl, cl", "0x10003aff"], ["0x1000fce1", "jne -0x1c", "0x10003b01"], ["0x1000fce3", "xor eax, eax", "0x10003b03"], ["0x1000fce5", "jmp 0x5", "0x10003b05"], ["0x1000fce7", "sbb eax, eax", "0x10003b07"], ["0x1000fce9", "sbb eax, -1", "0x10003b09"], ["0x1000fcec", "test eax, eax", "0x10003b0c"]]}, {"orig": [], "recomp": [["0x10003b0e", "je 0x7"], ["0x10003b10", "xor al, al"], ["0x10003b12", "pop esi"], ["0x10003b13", "pop ebx"], ["0x10003b14", "ret 4"], ["0x10003b17", "mov al, 1"], ["0x10003b19", "pop esi"], ["0x10003b1a", "pop ebx"], ["0x10003b1b", "ret 4"]]}]]]}, {"address": "0x1000fd00", "recomp": "0x10004c50", "name": "BumpBouy::ParseAction", "matching": 0.0, "stub": true}, {"address": "0x1000fd10", "recomp": "0x10004c60", "name": "BumpBouy::SetWorldSpeed", "matching": 0.0, "stub": true}, {"address": "0x1000fd20", "recomp": "0x10004c70", "name": "BumpBouy::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x1000fd30", "recomp": "0x10004c80", "name": "BumpBouy::VTable0x74", "matching": 0.0, "stub": true}, {"address": "0x1000fd40", "recomp": "0x10008a90", "name": "SkateBoard::SkateBoard", "matching": 1.0, "diff": []}, {"address": "0x1000fdd0", "recomp": "0x10008b20", "name": "SkateBoard::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1000fde0", "recomp": "0x10008b30", "name": "SkateBoard::IsA", "matching": 1.0, "diff": []}, {"address": "0x1000ff60", "recomp": "0x10008cb0", "name": "SkateBoard::`scalar deleting destructor'", "matching": 0.3103448275862069, "diff": [["@@ -0x1000ff60,31 +0x10008cb0,27 @@", [{"orig": [["0x1000ff60", "push esi"], ["0x1000ff61", "mov esi, ecx"], ["0x1000ff63", "call <OFFSET1>"], ["0x1000ff68", "test byte ptr [esp + 8], 1"], ["0x1000ff6d", "je 0x9"], ["0x1000ff6f", "push esi"], ["0x1000ff70", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000ff75", "add esp, 4"], ["0x1000ff78", "mov eax, esi"], ["0x1000ff7a", "pop esi"], ["0x1000ff7b", "ret 4"], ["0x1000ff7e", "int3 "], ["0x1000ff7f", "int3 "]], "recomp": []}, {"both": [["0x1000ff80", "mov eax, dword ptr fs:[0]", "0x10008cb0"], ["0x1000ff86", "push ebp", "0x10008cb6"], ["0x1000ff87", "mov ebp, esp", "0x10008cb7"], ["0x1000ff89", "push -1", "0x10008cb9"]]}, {"orig": [["0x1000ff8b", "push <OFFSET3>"], ["0x1000ff90", "mov dword ptr [ecx], SkateBoard::`vftable' (VTABLE)"]], "recomp": [["0x10008cbb", "push <OFFSET1>"]]}, {"both": [["0x1000ff96", "push eax", "0x10008cc0"], ["0x1000ff97", "mov dword ptr fs:[0], esp", "0x10008cc1"], ["0x1000ff9e", "sub esp, 4", "0x10008cc8"]]}, {"orig": [["0x1000ffa1", "mov dword ptr [ebp - 4], 0"], ["0x1000ffa8", "push ecx"]], "recomp": [["0x10008ccb", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x1000ffa9", "mov dword ptr [ebp - 0x10], ecx", "0x10008cd2"]]}, {"orig": [["0x1000ffac", "call ControlManager (FUNCTION)"], ["0x1000ffb1", "mov ecx, eax"], ["0x1000ffb3", "call LegoControlManager::Unregister (FUNCTION)"]], "recomp": [["0x10008cd5", "call <OFFSET2>"], ["0x10008cda", "test byte ptr [ebp + 8], 1"], ["0x10008cde", "je 0xc"], ["0x10008ce0", "mov eax, dword ptr [ebp - 0x10]"], ["0x10008ce3", "push eax"], ["0x10008ce4", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10008ce9", "add esp, 4"], ["0x10008cec", "mov eax, dword ptr [ebp - 0x10]"], ["0x10008cef", "mov ecx, dword ptr [ebp - 0xc]"], ["0x10008cf2", "mov dword ptr fs:[0], ecx"], ["0x10008cf9", "mov esp, ebp"], ["0x10008cfb", "pop ebp"], ["0x10008cfc", "ret 4"], ["0x10008cff", "mov eax, <OFFSET4>"], ["0x10008d04", "jmp ___CxxFrameHandler (FUNCTION)"]]}, {"both": [["0x1000ffb8", "mov ecx, dword ptr [ebp - 0x10]", "0x10008d09"]]}, {"orig": [["0x1000ffbb", "push ecx"], ["0x1000ffbc", "call NotificationManager (FUNCTION)"]], "recomp": [["0x10008d0c", "jmp IslePathActor::~IslePathActor (FUNCTION)"]]}]]]}, {"address": "0x10010000", "recomp": "0x10008d20", "name": "SkateBoard::Create", "matching": 0.0, "stub": true}, {"address": "0x10010050", "recomp": "0x10008d30", "name": "SkateBoard::VTable0xe4", "matching": 0.0, "stub": true}, {"address": "0x100100e0", "recomp": "0x10008d40", "name": "SkateBoard::VTable0xcc", "matching": 0.0, "stub": true}, {"address": "0x10010230", "recomp": "0x10008d50", "name": "SkateBoard::VTable0xd4", "matching": 0.0, "stub": true}, {"address": "0x10010360", "recomp": "0x100087b0", "name": "MxParam::~MxParam", "matching": 1.0, "diff": []}, {"address": "0x10010370", "recomp": "0x100087c0", "name": "MxParam::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10010390", "recomp": "0x100087e0", "name": "MxNotificationParam::Clone", "matching": 1.0, "diff": []}, {"address": "0x10010430", "recomp": "0x10008880", "name": "MxNotificationParam::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100104a0", "recomp": "0x100088f0", "name": "MxNotificationParam::~MxNotificationParam", "matching": 1.0, "diff": []}, {"address": "0x100104f0", "recomp": "0x10008d60", "name": "SkateBoard::VTable0xd0", "matching": 0.0, "stub": true}, {"address": "0x10010510", "recomp": "0x10008d70", "name": "SkateBoard::FUN_10010510", "matching": 0.0, "stub": true}, {"address": "0x100105f0", "recomp": "0x10022a90", "name": "LegoEntity::Init", "matching": 1.0, "diff": []}, {"address": "0x10010650", "recomp": "0x10022af0", "name": "LegoEntity::ResetWorldTransform", "matching": 1.0, "diff": []}, {"address": "0x10010790", "recomp": "0x10022c30", "name": "LegoEntity::SetWorldTransform", "matching": 1.0, "diff": []}, {"address": "0x100107e0", "recomp": "0x10022c80", "name": "LegoEntity::Create", "matching": 1.0, "diff": []}, {"address": "0x10010810", "recomp": "0x10022cb0", "name": "LegoEntity::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10010880", "recomp": "0x10022d20", "name": "LegoEntity::SetWorld", "matching": 1.0, "diff": []}, {"address": "0x100108a0", "recomp": "0x10022d40", "name": "LegoEntity::SetROI", "matching": 1.0, "diff": []}, {"address": "0x100109b0", "recomp": "0x10022e50", "name": "LegoEntity::SetLocation", "matching": 1.0, "diff": []}, {"address": "0x10010be0", "recomp": "0x10011040", "name": "Vector3::operator=", "matching": 1.0, "diff": []}, {"address": "0x10010c00", "recomp": "0x10011010", "name": "Mx3DPointFloat::operator=", "matching": 1.0, "effective": true, "diff": [["@@ -0x10010c00,21 +0x10011010,21 @@", [{"both": [["0x10010c00", "push esi", "0x10011010"], ["0x10010c01", "push edi", "0x10011011"]]}, {"orig": [["0x10010c02", "mov edi, ecx"], ["0x10010c04", "mov esi, dword ptr [esp + 0xc]"], ["0x10010c08", "mov eax, dword ptr [esi + 4]"], ["0x10010c0b", "add esi, 8"]], "recomp": [["0x10011012", "mov esi, ecx"], ["0x10011014", "mov edi, dword ptr [esp + 0xc]"], ["0x10011018", "mov eax, dword ptr [edi + 4]"], ["0x1001101b", "add edi, 8"]]}, {"both": [["0x10010c0e", "push eax", "0x1001101e"]]}, {"orig": [["0x10010c0f", "mov eax, dword ptr [edi]"]], "recomp": [["0x1001101f", "mov eax, dword ptr [esi]"]]}, {"both": [["0x10010c11", "call dword ptr [eax + 0x20]", "0x10011021"]]}, {"orig": [["0x10010c14", "lea ecx, [edi + 8]"]], "recomp": [["0x10011024", "lea ecx, [esi + 8]"]]}, {"both": [["0x10010c17", "mov eax, 3", "0x10011027"]]}, {"orig": [["0x10010c1c", "mov edx, dword ptr [esi]"], ["0x10010c1e", "add esi, 4"]], "recomp": [["0x1001102c", "mov edx, dword ptr [edi]"], ["0x1001102e", "add edi, 4"]]}, {"both": [["0x10010c21", "mov dword ptr [ecx], edx", "0x10011031"], ["0x10010c23", "add ecx, 4", "0x10011033"], ["0x10010c26", "dec eax", "0x10011036"], ["0x10010c27", "jne -0xd", "0x10011037"]]}, {"orig": [["0x10010c29", "mov eax, edi"]], "recomp": [["0x10011039", "mov eax, esi"]]}, {"both": [["0x10010c2b", "pop edi", "0x1001103b"], ["0x10010c2c", "pop esi", "0x1001103c"], ["0x10010c2d", "ret 4", "0x1001103d"]]}]]]}, {"address": "0x10010c30", "recomp": "0x10023080", "name": "LegoEntity::FUN_10010c30", "matching": 1.0, "diff": []}, {"address": "0x10010c60", "recomp": "0x100230b0", "name": "LegoEntity::GetWorldDirection", "matching": 1.0, "diff": []}, {"address": "0x10010cf0", "recomp": "0x10023140", "name": "LegoEntity::GetWorldUp", "matching": 1.0, "diff": []}, {"address": "0x10010d80", "recomp": "0x100231d0", "name": "LegoEntity::GetWorldPosition", "matching": 1.0, "diff": []}, {"address": "0x10010e10", "recomp": "0x10023260", "name": "LegoEntity::ParseAction", "matching": 1.0, "diff": []}, {"address": "0x10010f10", "recomp": "0x10023360", "name": "LegoEntity::VTable0x34", "matching": 1.0, "effective": true, "diff": [["@@ -0x10010f5f,28 +0x100233af,28 @@", [{"both": [["0x10010f5f", "jmp 0x3a", "0x100233af"], ["0x10010f61", "mov eax, dword ptr [ebp + 8]", "0x100233b1"], ["0x10010f64", "push eax", "0x100233b4"], ["0x10010f65", "push edx", "0x100233b5"], ["0x10010f66", "call CharacterManager (FUNCTION)", "0x100233b6"], ["0x10010f6b", "mov ecx, eax", "0x100233bb"], ["0x10010f6d", "call LegoCharacterManager::FUN_10085140 (FUNCTION)", "0x100233bd"], ["0x10010f72", "jmp 0x24", "0x100233c2"], ["0x10010f74", "mov eax, dword ptr [ebp + 8]", "0x100233c4"], ["0x10010f77", "push eax", "0x100233c7"]]}, {"orig": [["0x10010f78", "push ecx"]], "recomp": [["0x100233c8", "push edx"]]}, {"both": [["0x10010f79", "call PlantManager (FUNCTION)", "0x100233c9"], ["0x10010f7e", "mov ecx, eax", "0x100233ce"], ["0x10010f80", "call LegoPlantManager::FUN_10026ba0 (FUNCTION)", "0x100233d0"], ["0x10010f85", "jmp 0x11", "0x100233d5"], ["0x10010f87", "mov eax, dword ptr [ebp + 8]", "0x100233d7"], ["0x10010f8a", "push eax", "0x100233da"]]}, {"orig": [["0x10010f8b", "push ecx"]], "recomp": [["0x100233db", "push edx"]]}, {"both": [["0x10010f8c", "call BuildingManager (FUNCTION)", "0x100233dc"], ["0x10010f91", "mov ecx, eax", "0x100233e1"], ["0x10010f93", "call LegoBuildingManager::FUN_1002ff40 (FUNCTION)", "0x100233e3"], ["0x10010f98", "mov dword ptr [ebp - 0x10], eax", "0x100233e8"], ["0x10010f9b", "cmp dword ptr [ebp - 0x10], 0", "0x100233eb"], ["0x10010f9f", "je 0x96", "0x100233ef"], ["0x10010fa5", "lea ecx, [ebp - 0xb0]", "0x100233f5"], ["0x10010fab", "call MxDSAction::MxDSAction (FUNCTION)", "0x100233fb"], ["0x10010fb0", "mov dword ptr [ebp - 4], 0", "0x10023400"], ["0x10010fb7", "call CharacterManager (FUNCTION)", "0x10023407"]]}]]]}, {"address": "0x10011070", "recomp": "0x100234c0", "name": "LegoEntity::VTable0x38", "matching": 0.0, "stub": true}, {"address": "0x10011300", "recomp": "0x100234d0", "name": "LegoEntity::VTable0x3c", "matching": 1.0, "diff": []}, {"address": "0x10011360", "recomp": "0x10023530", "name": "LegoEntity::VTable0x40", "matching": 0.0, "stub": true}, {"address": "0x100113c0", "recomp": "0x10023540", "name": "LegoEntity::VTable0x44", "matching": 0.0, "stub": true}, {"address": "0x10011420", "recomp": "0x10023550", "name": "LegoEntity::VTable0x48", "matching": 0.0, "stub": true}, {"address": "0x10011470", "recomp": "0x10023560", "name": "LegoEntity::VTable0x4c", "matching": 0.0, "stub": true}, {"address": "0x100114e0", "recomp": "0x10023570", "name": "LegoEntity::FUN_100114e0", "matching": 1.0, "diff": []}, {"address": "0x100114f0", "recomp": "0x10023580", "name": "LegoEntity::Notify", "matching": 0.0, "stub": true}, {"address": "0x10011630", "recomp": "0x1000af30", "name": "LegoUnknown100d5778::LegoUnknown100d5778", "matching": 1.0, "diff": []}, {"address": "0x10011650", "recomp": "0x1000af50", "name": "LegoUnknown100d5778::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10011670", "recomp": "0x1000af70", "name": "LegoUnknown100d5778::~LegoUnknown100d5778", "matching": 1.0, "diff": []}, {"address": "0x10011680", "recomp": "0x1000af80", "name": "LegoUnknown100d5778::Init", "matching": 1.0, "diff": []}, {"address": "0x100116a0", "recomp": "0x1000afa0", "name": "LegoUnknown100d5778::FUN_100116a0", "matching": 0.0, "stub": true}, {"address": "0x10011880", "recomp": "0x1000afe0", "name": "LegoUnknown100d5778::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100118e0", "recomp": "0x1000b040", "name": "LegoUnknown100d5778::FUN_100118e0", "matching": 0.0, "stub": true}, {"address": "0x10011ca0", "recomp": "0x1000b050", "name": "LegoUnknown100d5778::FUN_10011ca0", "matching": 0.0, "stub": true}, {"address": "0x10011d50", "recomp": "0x10021920", "name": "LegoCameraController::LegoCameraController", "matching": 1.0, "diff": []}, {"address": "0x10011e40", "recomp": "0x10021a10", "name": "LegoPointOfViewController::LeftUp", "matching": 1.0, "diff": []}, {"address": "0x10011e60", "recomp": "0x10021a30", "name": "LegoPointOfViewController::RightDown", "matching": 1.0, "diff": []}, {"address": "0x10011e80", "recomp": "0x10021a50", "name": "LegoPointOfViewController::RightDrag", "matching": 1.0, "diff": []}, {"address": "0x10011ea0", "recomp": "0x10021a70", "name": "LegoPointOfViewController::RightUp", "matching": 1.0, "diff": []}, {"address": "0x10011ec0", "recomp": "0x10021a90", "name": "LegoCameraController::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10011ed0", "recomp": "0x10021aa0", "name": "LegoCameraController::IsA", "matching": 1.0, "diff": []}, {"address": "0x10011f50", "recomp": "0x10021b20", "name": "LegoCameraController::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10011f70", "recomp": "0x10021b40", "name": "LegoCameraController::~LegoCameraController", "matching": 1.0, "diff": []}, {"address": "0x10011ff0", "recomp": "0x10021bc0", "name": "LegoCameraController::Create", "matching": 1.0, "diff": []}, {"address": "0x10012020", "recomp": "0x10021bf0", "name": "LegoCameraController::Notify", "matching": 1.0, "diff": []}, {"address": "0x10012170", "recomp": "0x10021d40", "name": "MxPoint32::MxPoint32", "matching": 1.0, "diff": []}, {"address": "0x10012190", "recomp": "0x10021d60", "name": "LegoEventNotificationParam::GetX", "matching": 1.0, "diff": []}, {"address": "0x100121a0", "recomp": "0x10021d70", "name": "LegoEventNotificationParam::GetY", "matching": 1.0, "diff": []}, {"address": "0x100121b0", "recomp": "0x10021d80", "name": "LegoCameraController::OnLButtonDown", "matching": 1.0, "diff": []}, {"address": "0x100121d0", "recomp": "0x10021da0", "name": "LegoCameraController::OnLButtonUp", "matching": 1.0, "diff": []}, {"address": "0x100121f0", "recomp": "0x10021dc0", "name": "LegoCameraController::OnRButtonDown", "matching": 1.0, "diff": []}, {"address": "0x10012210", "recomp": "0x10021de0", "name": "LegoCameraController::OnRButtonUp", "matching": 1.0, "diff": []}, {"address": "0x10012230", "recomp": "0x10021e00", "name": "LegoCameraController::OnMouseMove", "matching": 1.0, "diff": []}, {"address": "0x10012260", "recomp": "0x10021e30", "name": "LegoCameraController::SetWorldTransform", "matching": 1.0, "diff": []}, {"address": "0x10012320", "recomp": "0x10021e60", "name": "LegoCameraController::FUN_10012320", "matching": 0.0, "stub": true}, {"address": "0x100123e0", "recomp": "0x10021e70", "name": "LegoCameraController::FUN_100123e0", "matching": 0.5945945945945946, "diff": [["@@ -0x100124a8,185 +0x10021f38,185 @@", [{"both": [["0x100124a8", "fmul dword ptr [edx + 0x2c]", "0x10021f38"], ["0x100124ab", "faddp st(1)", "0x10021f3b"], ["0x100124ad", "fld dword ptr [edx + 0x3c]", "0x10021f3d"], ["0x100124b0", "fmul dword ptr [eax + 0xc]", "0x10021f40"], ["0x100124b3", "faddp st(1)", "0x10021f43"], ["0x100124b5", "fld dword ptr [edx + 0xc]", "0x10021f45"], ["0x100124b8", "fmul dword ptr [eax]", "0x10021f48"], ["0x100124ba", "mov edx, dword ptr [esp + 0xc]", "0x10021f4a"], ["0x100124be", "faddp st(1)", "0x10021f4e"], ["0x100124c0", "fstp dword ptr [edx + 0xc]", "0x10021f50"]]}, {"orig": [["0x100124c3", "mov edx, dword ptr [esi + 0x3c]"], ["0x100124c6", "mov eax, dword ptr [ecx + 4]"], ["0x100124c9", "fld dword ptr [edx + 0x1c]"], ["0x100124cc", "fmul dword ptr [eax + 0x30]"], ["0x100124cf", "fld dword ptr [edx + 0x14]"], ["0x100124d2", "fmul dword ptr [eax + 0x10]"], ["0x100124d5", "faddp st(1)"], ["0x100124d7", "fld dword ptr [edx + 0x18]"], ["0x100124da", "fmul dword ptr [eax + 0x20]"], ["0x100124dd", "faddp st(1)"], ["0x100124df", "fld dword ptr [edx + 0x10]"], ["0x100124e2", "fmul dword ptr [eax]"]], "recomp": [["0x10021f53", "mov edx, dword ptr [ecx + 4]"], ["0x10021f56", "mov eax, dword ptr [esi + 0x3c]"], ["0x10021f59", "fld dword ptr [eax + 0x1c]"], ["0x10021f5c", "fmul dword ptr [edx + 0x30]"], ["0x10021f5f", "fld dword ptr [eax + 0x14]"], ["0x10021f62", "fmul dword ptr [edx + 0x10]"], ["0x10021f65", "faddp st(1)"], ["0x10021f67", "fld dword ptr [eax + 0x18]"], ["0x10021f6a", "fmul dword ptr [edx + 0x20]"], ["0x10021f6d", "faddp st(1)"], ["0x10021f6f", "fld dword ptr [eax + 0x10]"], ["0x10021f72", "fmul dword ptr [edx]"]]}, {"both": [["0x100124e4", "mov edx, dword ptr [esp + 0xc]", "0x10021f74"], ["0x100124e8", "faddp st(1)", "0x10021f78"], ["0x100124ea", "fstp dword ptr [edx + 0x10]", "0x10021f7a"], ["0x100124ed", "mov edx, dword ptr [ecx + 4]", "0x10021f7d"], ["0x100124f0", "mov eax, dword ptr [esi + 0x3c]", "0x10021f80"], ["0x100124f3", "fld dword ptr [edx + 0x24]", "0x10021f83"], ["0x100124f6", "fmul dword ptr [eax + 0x18]", "0x10021f86"], ["0x100124f9", "fld dword ptr [edx + 0x14]", "0x10021f89"], ["0x100124fc", "fmul dword ptr [eax + 0x14]", "0x10021f8c"], ["0x100124ff", "faddp st(1)", "0x10021f8f"], ["0x10012501", "fld dword ptr [edx + 4]", "0x10021f91"], ["0x10012504", "fmul dword ptr [eax + 0x10]", "0x10021f94"], ["0x10012507", "faddp st(1)", "0x10021f97"], ["0x10012509", "fld dword ptr [eax + 0x1c]", "0x10021f99"], ["0x1001250c", "fmul dword ptr [edx + 0x34]", "0x10021f9c"], ["0x1001250f", "mov edx, dword ptr [esp + 0xc]", "0x10021f9f"], ["0x10012513", "faddp st(1)", "0x10021fa3"], ["0x10012515", "fstp dword ptr [edx + 0x14]", "0x10021fa5"]]}, {"orig": [["0x10012518", "mov eax, dword ptr [ecx + 4]"], ["0x1001251b", "mov edx, dword ptr [esi + 0x3c]"], ["0x1001251e", "fld dword ptr [edx + 0x14]"]], "recomp": [["0x10021fa8", "mov edx, dword ptr [ecx + 4]"], ["0x10021fab", "mov eax, dword ptr [esi + 0x3c]"], ["0x10021fae", "fld dword ptr [eax + 0x14]"], ["0x10021fb1", "fmul dword ptr [edx + 0x18]"], ["0x10021fb4", "fld dword ptr [edx + 8]"], ["0x10021fb7", "fmul dword ptr [eax + 0x10]"], ["0x10021fba", "faddp st(1)"], ["0x10021fbc", "fld dword ptr [edx + 0x28]"]]}, {"both": [["0x10012521", "fmul dword ptr [eax + 0x18]", "0x10021fbf"]]}, {"orig": [["0x10012524", "fld dword ptr [eax + 8]"]], "recomp": [["0x10021fc2", "faddp st(1)"], ["0x10021fc4", "fld dword ptr [eax + 0x1c]"], ["0x10021fc7", "fmul dword ptr [edx + 0x38]"], ["0x10021fca", "mov edx, dword ptr [esp + 0xc]"], ["0x10021fce", "faddp st(1)"], ["0x10021fd0", "fstp dword ptr [edx + 0x18]"], ["0x10021fd3", "mov edx, dword ptr [ecx + 4]"], ["0x10021fd6", "mov eax, dword ptr [esi + 0x3c]"], ["0x10021fd9", "fld dword ptr [eax + 0x14]"], ["0x10021fdc", "fmul dword ptr [edx + 0x1c]"], ["0x10021fdf", "fld dword ptr [eax + 0x18]"], ["0x10021fe2", "fmul dword ptr [edx + 0x2c]"], ["0x10021fe5", "faddp st(1)"], ["0x10021fe7", "fld dword ptr [edx + 0x3c]"], ["0x10021fea", "fmul dword ptr [eax + 0x1c]"], ["0x10021fed", "faddp st(1)"], ["0x10021fef", "fld dword ptr [edx + 0xc]"], ["0x10021ff2", "fmul dword ptr [eax + 0x10]"], ["0x10021ff5", "mov edx, dword ptr [esp + 0xc]"], ["0x10021ff9", "faddp st(1)"], ["0x10021ffb", "fstp dword ptr [edx + 0x1c]"], ["0x10021ffe", "mov edx, dword ptr [ecx + 4]"], ["0x10022001", "mov eax, dword ptr [esi + 0x3c]"], ["0x10022004", "fld dword ptr [eax + 0x2c]"], ["0x10022007", "fmul dword ptr [edx + 0x30]"], ["0x1002200a", "fld dword ptr [eax + 0x24]"]]}, {"both": [["0x10012527", "fmul dword ptr [edx + 0x10]", "0x1002200d"], ["0x1001252a", "faddp st(1)", "0x10022010"], ["0x1001252c", "fld dword ptr [eax + 0x28]", "0x10022012"]]}, {"orig": [], "recomp": [["0x10022015", "fmul dword ptr [edx + 0x20]"], ["0x10022018", "faddp st(1)"], ["0x1002201a", "fld dword ptr [eax + 0x20]"], ["0x1002201d", "fmul dword ptr [edx]"], ["0x1002201f", "mov edx, dword ptr [esp + 0xc]"], ["0x10022023", "faddp st(1)"], ["0x10022025", "fstp dword ptr [edx + 0x20]"], ["0x10022028", "mov edx, dword ptr [ecx + 4]"], ["0x1002202b", "fld dword ptr [edx + 0x24]"], ["0x1002202e", "mov eax, dword ptr [esi + 0x3c]"], ["0x10022031", "fmul dword ptr [eax + 0x28]"], ["0x10022034", "fld dword ptr [eax + 0x24]"], ["0x10022037", "fmul dword ptr [edx + 0x14]"], ["0x1002203a", "faddp st(1)"], ["0x1002203c", "fld dword ptr [edx + 4]"], ["0x1002203f", "fmul dword ptr [eax + 0x20]"], ["0x10022042", "faddp st(1)"], ["0x10022044", "fld dword ptr [eax + 0x2c]"], ["0x10022047", "fmul dword ptr [edx + 0x34]"], ["0x1002204a", "mov edx, dword ptr [esp + 0xc]"], ["0x1002204e", "faddp st(1)"], ["0x10022050", "fstp dword ptr [edx + 0x24]"], ["0x10022053", "mov edx, dword ptr [ecx + 4]"], ["0x10022056", "mov eax, dword ptr [esi + 0x3c]"], ["0x10022059", "fld dword ptr [eax + 0x24]"]]}, {"both": [["0x1001252f", "fmul dword ptr [edx + 0x18]", "0x1002205c"]]}, {"orig": [["0x10012532", "faddp st(1)"], ["0x10012534", "fld dword ptr [edx + 0x1c]"], ["0x10012537", "fmul dword ptr [eax + 0x38]"], ["0x1001253a", "mov eax, dword ptr [esp + 0xc]"], ["0x1001253e", "faddp st(1)"], ["0x10012540", "fstp dword ptr [eax + 0x18]"], ["0x10012543", "mov edx, dword ptr [esi + 0x3c]"], ["0x10012546", "mov eax, dword ptr [ecx + 4]"], ["0x10012549", "fld dword ptr [edx + 0x14]"], ["0x1001254c", "fmul dword ptr [eax + 0x1c]"], ["0x1001254f", "fld dword ptr [edx + 0x18]"], ["0x10012552", "fmul dword ptr [eax + 0x2c]"], ["0x10012555", "faddp st(1)"], ["0x10012557", "fld dword ptr [eax + 0x3c]"], ["0x1001255a", "fmul dword ptr [edx + 0x1c]"], ["0x1001255d", "faddp st(1)"], ["0x1001255f", "fld dword ptr [eax + 0xc]"], ["0x10012562", "fmul dword ptr [edx + 0x10]"], ["0x10012565", "mov edx, dword ptr [esp + 0xc]"], ["0x10012569", "faddp st(1)"], ["0x1001256b", "fstp dword ptr [edx + 0x1c]"], ["0x1001256e", "mov edx, dword ptr [esi + 0x3c]"], ["0x10012571", "mov eax, dword ptr [ecx + 4]"], ["0x10012574", "fld dword ptr [edx + 0x2c]"], ["0x10012577", "fmul dword ptr [eax + 0x30]"], ["0x1001257a", "fld dword ptr [edx + 0x24]"], ["0x1001257d", "fmul dword ptr [eax + 0x10]"], ["0x10012580", "faddp st(1)"], ["0x10012582", "fld dword ptr [edx + 0x28]"]], "recomp": [["0x1002205f", "fld dword ptr [edx + 8]"]]}, {"both": [["0x10012585", "fmul dword ptr [eax + 0x20]", "0x10022062"], ["0x10012588", "faddp st(1)", "0x10022065"]]}, {"orig": [["0x1001258a", "fld dword ptr [edx + 0x20]"], ["0x1001258d", "fmul dword ptr [eax]"], ["0x1001258f", "mov edx, dword ptr [esp + 0xc]"], ["0x10012593", "faddp st(1)"], ["0x10012595", "fstp dword ptr [edx + 0x20]"], ["0x10012598", "mov edx, dword ptr [ecx + 4]"], ["0x1001259b", "fld dword ptr [edx + 0x24]"], ["0x1001259e", "mov eax, dword ptr [esi + 0x3c]"]], "recomp": [["0x10022067", "fld dword ptr [edx + 0x28]"]]}, {"both": [["0x100125a1", "fmul dword ptr [eax + 0x28]", "0x1002206a"]]}, {"orig": [["0x100125a4", "fld dword ptr [eax + 0x24]"], ["0x100125a7", "fmul dword ptr [edx + 0x14]"], ["0x100125aa", "faddp st(1)"], ["0x100125ac", "fld dword ptr [edx + 4]"], ["0x100125af", "fmul dword ptr [eax + 0x20]"]], "recomp": []}, {"both": [["0x100125b2", "faddp st(1)", "0x1002206d"], ["0x100125b4", "fld dword ptr [eax + 0x2c]", "0x1002206f"]]}, {"orig": [["0x100125b7", "fmul dword ptr [edx + 0x34]"], ["0x100125ba", "mov edx, dword ptr [esp + 0xc]"], ["0x100125be", "faddp st(1)"], ["0x100125c0", "fstp dword ptr [edx + 0x24]"], ["0x100125c3", "mov eax, dword ptr [esi + 0x3c]"], ["0x100125c6", "mov edx, dword ptr [ecx + 4]"], ["0x100125c9", "fld dword ptr [eax + 0x24]"], ["0x100125cc", "fmul dword ptr [edx + 0x18]"], ["0x100125cf", "fld dword ptr [edx + 8]"], ["0x100125d2", "fmul dword ptr [eax + 0x20]"], ["0x100125d5", "faddp st(1)"], ["0x100125d7", "fld dword ptr [edx + 0x28]"], ["0x100125da", "fmul dword ptr [eax + 0x28]"], ["0x100125dd", "faddp st(1)"], ["0x100125df", "fld dword ptr [eax + 0x2c]"], ["0x100125e2", "fmul dword ptr [edx + 0x38]"], ["0x100125e5", "mov eax, dword ptr [esp + 0xc]"], ["0x100125e9", "faddp st(1)"], ["0x100125eb", "fstp dword ptr [eax + 0x28]"]], "recomp": [["0x10022072", "fmul dword ptr [edx + 0x38]"], ["0x10022075", "mov edx, dword ptr [esp + 0xc]"], ["0x10022079", "faddp st(1)"], ["0x1002207b", "fstp dword ptr [edx + 0x28]"]]}, {"both": [["0x100125ee", "mov edx, dword ptr [ecx + 4]", "0x1002207e"], ["0x100125f1", "mov eax, dword ptr [esi + 0x3c]", "0x10022081"], ["0x100125f4", "fld dword ptr [eax + 0x24]", "0x10022084"], ["0x100125f7", "fmul dword ptr [edx + 0x1c]", "0x10022087"], ["0x100125fa", "fld dword ptr [eax + 0x28]", "0x1002208a"], ["0x100125fd", "fmul dword ptr [edx + 0x2c]", "0x1002208d"], ["0x10012600", "faddp st(1)", "0x10022090"], ["0x10012602", "fld dword ptr [edx + 0x3c]", "0x10022092"], ["0x10012605", "fmul dword ptr [eax + 0x2c]", "0x10022095"], ["0x10012608", "faddp st(1)", "0x10022098"], ["0x1001260a", "fld dword ptr [edx + 0xc]", "0x1002209a"], ["0x1001260d", "fmul dword ptr [eax + 0x20]", "0x1002209d"], ["0x10012610", "mov edx, dword ptr [esp + 0xc]", "0x100220a0"], ["0x10012614", "faddp st(1)", "0x100220a4"], ["0x10012616", "fstp dword ptr [edx + 0x2c]", "0x100220a6"]]}, {"orig": [["0x10012619", "mov edx, dword ptr [esi + 0x3c]"], ["0x1001261c", "mov eax, dword ptr [ecx + 4]"], ["0x1001261f", "fld dword ptr [edx + 0x3c]"]], "recomp": [["0x100220a9", "mov edx, dword ptr [ecx + 4]"], ["0x100220ac", "mov eax, dword ptr [esi + 0x3c]"], ["0x100220af", "fld dword ptr [eax + 0x3c]"], ["0x100220b2", "fmul dword ptr [edx + 0x30]"], ["0x100220b5", "fld dword ptr [edx + 0x10]"], ["0x100220b8", "fmul dword ptr [eax + 0x34]"], ["0x100220bb", "faddp st(1)"], ["0x100220bd", "fld dword ptr [edx + 0x20]"], ["0x100220c0", "fmul dword ptr [eax + 0x38]"], ["0x100220c3", "faddp st(1)"], ["0x100220c5", "fld dword ptr [eax + 0x30]"], ["0x100220c8", "fmul dword ptr [edx]"], ["0x100220ca", "mov edx, dword ptr [esp + 0xc]"], ["0x100220ce", "faddp st(1)"], ["0x100220d0", "fstp dword ptr [edx + 0x30]"], ["0x100220d3", "mov edx, dword ptr [ecx + 4]"], ["0x100220d6", "mov eax, dword ptr [esi + 0x3c]"], ["0x100220d9", "fld dword ptr [edx + 0x24]"], ["0x100220dc", "fmul dword ptr [eax + 0x38]"], ["0x100220df", "fld dword ptr [eax + 0x3c]"], ["0x100220e2", "fmul dword ptr [edx + 0x34]"], ["0x100220e5", "faddp st(1)"], ["0x100220e7", "fld dword ptr [edx + 4]"]]}, {"both": [["0x10012622", "fmul dword ptr [eax + 0x30]", "0x100220ea"]]}, {"orig": [["0x10012625", "fld dword ptr [eax + 0x10]"], ["0x10012628", "fmul dword ptr [edx + 0x34]"], ["0x1001262b", "faddp st(1)"], ["0x1001262d", "fld dword ptr [eax + 0x20]"], ["0x10012630", "fmul dword ptr [edx + 0x38]"], ["0x10012633", "faddp st(1)"], ["0x10012635", "fld dword ptr [edx + 0x30]"], ["0x10012638", "fmul dword ptr [eax]"], ["0x1001263a", "mov edx, dword ptr [esp + 0xc]"], ["0x1001263e", "faddp st(1)"], ["0x10012640", "fstp dword ptr [edx + 0x30]"], ["0x10012643", "mov edx, dword ptr [ecx + 4]"], ["0x10012646", "mov eax, dword ptr [esi + 0x3c]"], ["0x10012649", "fld dword ptr [edx + 0x24]"], ["0x1001264c", "fmul dword ptr [eax + 0x38]"]], "recomp": [["0x100220ed", "faddp st(1)"], ["0x100220ef", "fld dword ptr [edx + 0x14]"], ["0x100220f2", "fmul dword ptr [eax + 0x34]"], ["0x100220f5", "mov edx, dword ptr [esp + 0xc]"], ["0x100220f9", "faddp st(1)"], ["0x100220fb", "fstp dword ptr [edx + 0x34]"], ["0x100220fe", "mov edx, dword ptr [ecx + 4]"], ["0x10022101", "mov eax, dword ptr [esi + 0x3c]"], ["0x10022104", "fld dword ptr [edx + 0x18]"], ["0x10022107", "fmul dword ptr [eax + 0x34]"], ["0x1002210a", "fld dword ptr [edx + 8]"], ["0x1002210d", "fmul dword ptr [eax + 0x30]"], ["0x10022110", "faddp st(1)"], ["0x10022112", "fld dword ptr [edx + 0x28]"], ["0x10022115", "fmul dword ptr [eax + 0x38]"], ["0x10022118", "faddp st(1)"]]}, {"both": [["0x1001264f", "fld dword ptr [eax + 0x3c]", "0x1002211a"]]}, {"orig": [["0x10012652", "fmul dword ptr [edx + 0x34]"], ["0x10012655", "faddp st(1)"], ["0x10012657", "fld dword ptr [edx + 4]"], ["0x1001265a", "fmul dword ptr [eax + 0x30]"], ["0x1001265d", "faddp st(1)"], ["0x1001265f", "fld dword ptr [edx + 0x14]"], ["0x10012662", "fmul dword ptr [eax + 0x34]"], ["0x10012665", "mov edx, dword ptr [esp + 0xc]"], ["0x10012669", "faddp st(1)"], ["0x1001266b", "fstp dword ptr [edx + 0x34]"], ["0x1001266e", "mov eax, dword ptr [ecx + 4]"], ["0x10012671", "mov edx, dword ptr [esi + 0x3c]"], ["0x10012674", "fld dword ptr [eax + 0x18]"], ["0x10012677", "fmul dword ptr [edx + 0x34]"], ["0x1001267a", "fld dword ptr [eax + 8]"], ["0x1001267d", "fmul dword ptr [edx + 0x30]"], ["0x10012680", "faddp st(1)"], ["0x10012682", "fld dword ptr [eax + 0x28]"], ["0x10012685", "fmul dword ptr [edx + 0x38]"], ["0x10012688", "faddp st(1)"], ["0x1001268a", "fld dword ptr [edx + 0x3c]"], ["0x1001268d", "fmul dword ptr [eax + 0x38]"], ["0x10012690", "mov eax, dword ptr [esp + 0xc]"], ["0x10012694", "faddp st(1)"], ["0x10012696", "fstp dword ptr [eax + 0x38]"]], "recomp": [["0x1002211d", "fmul dword ptr [edx + 0x38]"], ["0x10022120", "mov edx, dword ptr [esp + 0xc]"], ["0x10022124", "faddp st(1)"], ["0x10022126", "fstp dword ptr [edx + 0x38]"]]}, {"both": [["0x10012699", "mov ecx, dword ptr [ecx + 4]", "0x10022129"], ["0x1001269c", "mov eax, dword ptr [esi + 0x3c]", "0x1002212c"], ["0x1001269f", "fld dword ptr [ecx + 0xc]", "0x1002212f"], ["0x100126a2", "fmul dword ptr [eax + 0x30]", "0x10022132"], ["0x100126a5", "fld dword ptr [ecx + 0x3c]", "0x10022135"], ["0x100126a8", "fmul dword ptr [eax + 0x3c]", "0x10022138"], ["0x100126ab", "faddp st(1)", "0x1002213b"], ["0x100126ad", "fld dword ptr [ecx + 0x1c]", "0x1002213d"], ["0x100126b0", "fmul dword ptr [eax + 0x34]", "0x10022140"], ["0x100126b3", "mov edx, dword ptr [esp + 0xc]", "0x10022143"]]}]]]}, {"address": "0x10012740", "recomp": "0x100221d0", "name": "LegoCameraController::GetWorldUp", "matching": 1.0, "diff": []}, {"address": "0x100127f0", "recomp": "0x10022280", "name": "LegoCameraController::GetWorldLocation", "matching": 1.0, "diff": []}, {"address": "0x100128a0", "recomp": "0x10022330", "name": "LegoCameraController::GetWorldDirection", "matching": 1.0, "diff": []}, {"address": "0x10012950", "recomp": "0x10035340", "name": "LegoRaceCar::LegoRaceCar", "matching": 0.8741258741258742, "diff": [["@@ -0x10012968,40 +0x10035358,40 @@", [{"both": [["0x10012968", "sub esp, 0xc", "0x10035358"], ["0x1001296b", "push ebx", "0x1003535b"], ["0x1001296c", "push esi", "0x1003535c"], ["0x1001296d", "mov dword ptr [ebp - 0x14], ecx", "0x1003535d"], ["0x10012970", "push edi", "0x10035360"], ["0x10012971", "mov esi, ecx", "0x10035361"], ["0x10012973", "xor ebx, ebx", "0x10035363"], ["0x10012975", "mov dword ptr [ebp - 0x18], ebx", "0x10035365"], ["0x10012978", "cmp dword ptr [ebp + 8], ebx", "0x10035368"], ["0x1001297b", "je 0xbc", "0x1003536b"]]}, {"orig": [["0x10012981", "mov dword ptr [esi + 4], <OFFSET2>"], ["0x10012988", "mov dword ptr [esi + 0x24], <OFFSET3>"], ["0x1001298f", "mov dword ptr [esi + 0x1dc], <OFFSET4>"], ["0x10012999", "mov dword ptr [esi + 0x1f8], <OFFSET5>"]], "recomp": [["0x10035371", "mov dword ptr [esi + 4], ??_8LegoRaceCar@@7BLegoCarRaceActor@@@ (UNK)"], ["0x10035378", "mov dword ptr [esi + 0x24], ??_8LegoRaceCar@@7BLegoRaceMap@@@ (UNK)"], ["0x1003537f", "mov dword ptr [esi + 0x1dc], ??_8LegoRaceCar@@7BLegoAnimActor@@@ (UNK)"], ["0x10035389", "mov dword ptr [esi + 0x1f8], ??_8LegoRaceCar@@7BLegoRaceActor@@@ (UNK)"]]}, {"both": [["0x100129a3", "lea ecx, [esi + 0x84]", "0x10035393"], ["0x100129a9", "call LegoPathActor::LegoPathActor (FUNCTION)", "0x10035399"], ["0x100129ae", "mov al, byte ptr [ebp - 0xd]", "0x1003539e"], ["0x100129b1", "mov dword ptr [ebp - 4], ebx", "0x100353a1"], ["0x100129b4", "mov byte ptr [esi + 0x1e0], al", "0x100353a4"], ["0x100129ba", "mov dword ptr [esi + 0x1e4], ebx", "0x100353aa"], ["0x100129c0", "mov dword ptr [esi + 0x1e8], ebx", "0x100353b0"], ["0x100129c6", "mov dword ptr [esi + 0x1ec], ebx", "0x100353b6"], ["0x100129cc", "or dword ptr [ebp - 0x18], 1", "0x100353bc"], ["0x100129d0", "mov dword ptr [ebp - 4], 1", "0x100353c0"], ["0x100129d7", "mov dword ptr [ebp - 4], 2", "0x100353c7"], ["0x100129de", "mov eax, dword ptr [esi + 0x1dc]", "0x100353ce"]]}, {"orig": [["0x100129e4", "mov dword ptr [esi + 0x1d8], <OFFSET7>"]], "recomp": [["0x100353d4", "mov dword ptr [esi + 0x1d8], LegoAnimActor::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x100129ee", "mov ecx, dword ptr [eax + 4]", "0x100353de"], ["0x100129f1", "mov byte ptr [ebp - 4], bl", "0x100353e1"]]}, {"orig": [["0x100129f4", "mov dword ptr [ecx + esi + 0x1dc], <OFFSET8>"]], "recomp": [["0x100353e4", "mov dword ptr [ecx + esi + 0x1dc], LegoAnimActor::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x100129ff", "mov eax, dword ptr [esi + 0x1dc]", "0x100353ef"], ["0x10012a05", "push ebx", "0x100353f5"], ["0x10012a06", "mov eax, dword ptr [eax + 4]", "0x100353f6"], ["0x10012a09", "mov dword ptr [ebp - 4], 3", "0x100353f9"], ["0x10012a10", "lea ecx, [eax - 0x1c]", "0x10035400"], ["0x10012a13", "mov dword ptr [eax + esi + 0x1d8], ecx", "0x10035403"], ["0x10012a1a", "lea ecx, [esi + 0x1f4]", "0x1003540a"], ["0x10012a20", "or dword ptr [ebp - 0x18], 2", "0x10035410"], ["0x10012a24", "mov word ptr [esi + 0x1f0], 0xffff", "0x10035414"], ["0x10012a2d", "call LegoRaceActor::LegoRaceActor (FUNCTION)", "0x1003541d"]]}]], ["@@ -0x10012a4b,30 +0x1003543b,30 @@", [{"both": [["0x10012a4b", "mov ecx, edi", "0x1003543b"], ["0x10012a4d", "mov dword ptr [ebp - 4], 5", "0x1003543d"], ["0x10012a54", "call LegoRaceMap::LegoRaceMap (FUNCTION)", "0x10035444"], ["0x10012a59", "lea ecx, [esi + 0x5c]", "0x10035449"], ["0x10012a5c", "lea eax, [esi + 0x64]", "0x1003544c"], ["0x10012a5f", "mov byte ptr [ebp - 4], 6", "0x1003544f"], ["0x10012a63", "mov dword ptr [ecx], Vector2::`vftable' (VTABLE)", "0x10035453"], ["0x10012a69", "mov dword ptr [esi + 0x60], eax", "0x10035459"], ["0x10012a6c", "mov eax, dword ptr [esi + 4]", "0x1003545c"], ["0x10012a6f", "mov dword ptr [ecx], Mx3DPointFloat::`vftable' (VTABLE)", "0x1003545f"]]}, {"orig": [["0x10012a75", "mov dword ptr [esi], <OFFSET14>"], ["0x10012a7b", "mov dword ptr [edi], <OFFSET15>"]], "recomp": [["0x10035465", "mov dword ptr [esi], LegoRaceCar::`vftable'{for `LegoCarRaceActor'} (VTABLE)"], ["0x1003546b", "mov dword ptr [edi], LegoRaceCar::`vftable'{for `LegoRaceMap'} (VTABLE)"]]}, {"both": [["0x10012a81", "mov edx, dword ptr [eax + 4]", "0x10035471"]]}, {"orig": [["0x10012a84", "mov dword ptr [edx + esi + 4], <OFFSET16>"]], "recomp": [["0x10035474", "mov dword ptr [edx + esi + 4], LegoRaceCar::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x10012a8c", "mov eax, dword ptr [esi + 4]", "0x1003547c"], ["0x10012a8f", "mov edi, dword ptr [eax + 8]", "0x1003547f"]]}, {"orig": [["0x10012a92", "mov dword ptr [edi + esi + 4], <OFFSET17>"]], "recomp": [["0x10035482", "mov dword ptr [edi + esi + 4], LegoRaceCar::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x10012a9a", "mov eax, dword ptr [esi + 4]", "0x1003548a"], ["0x10012a9d", "mov edx, dword ptr [eax + 0xc]", "0x1003548d"]]}, {"orig": [["0x10012aa0", "mov dword ptr [edx + esi + 4], <OFFSET18>"]], "recomp": [["0x10035490", "mov dword ptr [edx + esi + 4], LegoRaceCar::`vftable'{for `LegoRaceActor'} (VTABLE)"]]}, {"both": [["0x10012aa8", "mov eax, dword ptr [esi + 4]", "0x10035498"], ["0x10012aab", "mov eax, dword ptr [eax + 4]", "0x1003549b"], ["0x10012aae", "lea edx, [eax - 0x80]", "0x1003549e"], ["0x10012ab1", "mov dword ptr [eax + esi], edx", "0x100354a1"], ["0x10012ab4", "mov edi, dword ptr [ecx]", "0x100354a4"], ["0x10012ab6", "mov byte ptr [esi + 0x54], bl", "0x100354a6"], ["0x10012ab9", "mov dword ptr [esi + 0x70], ebx", "0x100354a9"], ["0x10012abc", "mov dword ptr [esi + 0x74], ebx", "0x100354ac"], ["0x10012abf", "call dword ptr [edi + 0x2c]", "0x100354af"], ["0x10012ac2", "mov dword ptr [esi + 0x58], ebx", "0x100354b2"]]}]], ["@@ -0x10012afe,39 +0x100354ee,39 @@", [{"both": [["0x10012afe", "pop ebp", "0x100354ee"], ["0x10012aff", "ret 4", "0x100354ef"], ["0x10012b02", "test byte ptr [ebp - 0x18], 8", "0x100354f2"], ["0x10012b06", "je 0xe", "0x100354f6"], ["0x10012b08", "mov ecx, dword ptr [ebp - 0x14]", "0x100354f8"], ["0x10012b0b", "add ecx, 0x1f8", "0x100354fb"], ["0x10012b11", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x10035501"], ["0x10012b16", "ret ", "0x10035506"], ["0x10012b17", "mov ecx, dword ptr [ebp - 0x14]", "0x10035507"], ["0x10012b1a", "add ecx, 0x1e0", "0x1003550a"]]}, {"orig": [["0x10012b20", "jmp -0x5105"]], "recomp": [["0x10035510", "jmp vector<void *,allocator<void *> >::~vector<void *,allocator<void *> > (FUNCTION)"]]}, {"both": [["0x10012b25", "mov ecx, dword ptr [ebp - 0x14]", "0x10035515"], ["0x10012b28", "add ecx, 0x1e0", "0x10035518"]]}, {"orig": [["0x10012b2e", "jmp -0x50d3"]], "recomp": [["0x1003551e", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"]]}, {"both": [["0x10012b33", "test byte ptr [ebp - 0x18], 1", "0x10035523"], ["0x10012b37", "je 0xe", "0x10035527"], ["0x10012b39", "mov ecx, dword ptr [ebp - 0x14]", "0x10035529"], ["0x10012b3c", "add ecx, 0x84", "0x1003552c"], ["0x10012b42", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x10035532"], ["0x10012b47", "ret ", "0x10035537"], ["0x10012b48", "test byte ptr [ebp - 0x18], 2", "0x10035538"], ["0x10012b4c", "je 0xe", "0x1003553c"], ["0x10012b4e", "mov ecx, dword ptr [ebp - 0x14]", "0x1003553e"], ["0x10012b51", "add ecx, 0x1d8", "0x10035541"]]}, {"orig": [["0x10012b57", "jmp 0x34"]], "recomp": [["0x10035547", "jmp LegoAnimActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x10012b5c", "ret ", "0x1003554c"], ["0x10012b5d", "test byte ptr [ebp - 0x18], 4", "0x1003554d"], ["0x10012b61", "je 0xe", "0x10035551"], ["0x10012b63", "mov ecx, dword ptr [ebp - 0x14]", "0x10035553"], ["0x10012b66", "add ecx, 0x1f4", "0x10035556"]]}, {"orig": [["0x10012b6c", "jmp 0x9f"]], "recomp": [["0x1003555c", "jmp LegoRaceActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x10012b71", "ret ", "0x10035561"], ["0x10012b72", "mov ecx, dword ptr [ebp - 0x14]", "0x10035562"], ["0x10012b75", "add ecx, 0x20", "0x10035565"]]}, {"orig": [["0x10012b78", "jmp 0xd3"], ["0x10012b7d", "mov eax, <OFFSET22>"]], "recomp": [["0x10035568", "jmp LegoRaceMap::`vbase destructor' (FUNCTION)"], ["0x1003556d", "mov eax, <OFFSET27>"]]}, {"both": [["0x10012b82", "jmp ___CxxFrameHandler (FUNCTION)", "0x10035572"], ["0x10012b87", "mov ecx, dword ptr [ebp - 0x14]", "0x10035577"]]}, {"orig": [["0x10012b8a", "jmp 0xa1"]], "recomp": [["0x1003557a", "jmp LegoCarRaceActor::`vbase destructor' (FUNCTION)"]]}]]]}, {"address": "0x10012bb0", "recomp": "0x10022660", "name": "LegoCarRaceActor::FUN_10012bb0", "matching": 1.0, "diff": []}, {"address": "0x10012bc0", "recomp": "0x10022670", "name": "LegoCarRaceActor::FUN_10012bc0", "matching": 1.0, "diff": []}, {"address": "0x10012bd0", "recomp": "0x10022680", "name": "LegoCarRaceActor::FUN_10012bd0", "matching": 1.0, "diff": []}, {"address": "0x10012be0", "recomp": "0x10022690", "name": "LegoCarRaceActor::FUN_10012be0", "matching": 1.0, "diff": []}, {"address": "0x10012bf0", "recomp": "0x100226a0", "name": "LegoCarRaceActor::FUN_10012bf0", "matching": 1.0, "diff": []}, {"address": "0x10012c00", "recomp": "0x100226b0", "name": "LegoCarRaceActor::FUN_10012c00", "matching": 1.0, "diff": []}, {"address": "0x10012ea0", "recomp": "0x10035580", "name": "LegoRaceCar::FUN_10012ea0", "matching": 1.0, "diff": []}, {"address": "0x10012ff0", "recomp": "0x100355d0", "name": "LegoRaceCar::FUN_10012ff0", "matching": 0.0, "stub": true}, {"address": "0x10013130", "recomp": "0x100355e0", "name": "LegoRaceCar::FUN_10013130", "matching": 0.0, "stub": true}, {"address": "0x100136f0", "recomp": "0x10023900", "name": "LegoJetski::FUN_100136f0", "matching": 1.0, "diff": []}, {"address": "0x10013820", "recomp": "0x10023950", "name": "LegoJetski::LegoJetski", "matching": 0.8456375838926175, "diff": [["@@ -0x10013838,104 +0x10023968,104 @@", [{"both": [["0x10013838", "sub esp, 0xc", "0x10023968"], ["0x1001383b", "push ebx", "0x1002396b"], ["0x1001383c", "push esi", "0x1002396c"], ["0x1001383d", "mov dword ptr [ebp - 0x14], ecx", "0x1002396d"], ["0x10013840", "push edi", "0x10023970"], ["0x10013841", "mov esi, ecx", "0x10023971"], ["0x10013843", "xor ebx, ebx", "0x10023973"], ["0x10013845", "mov dword ptr [ebp - 0x18], ebx", "0x10023975"], ["0x10013848", "cmp dword ptr [ebp + 8], ebx", "0x10023978"], ["0x1001384b", "je 0xda", "0x1002397b"]]}, {"orig": [["0x10013851", "mov dword ptr [esi + 0x34], <OFFSET2>"], ["0x10013858", "mov dword ptr [esi + 4], <OFFSET3>"], ["0x1001385f", "mov dword ptr [esi + 0x194], <OFFSET4>"], ["0x10013869", "mov dword ptr [esi + 0x1b0], <OFFSET5>"], ["0x10013873", "mov dword ptr [esi + 0x1c0], <OFFSET6>"]], "recomp": [["0x10023981", "mov dword ptr [esi + 0x34], ??_8LegoJetski@@7BLegoJetskiRaceActor@@@ (UNK)"], ["0x10023988", "mov dword ptr [esi + 4], ??_8LegoJetski@@7B@ (UNK)"], ["0x1002398f", "mov dword ptr [esi + 0x194], ??_8LegoJetski@@7BLegoAnimActor@@@ (UNK)"], ["0x10023999", "mov dword ptr [esi + 0x1b0], ??_8LegoJetski@@7BLegoRaceActor@@@ (UNK)"], ["0x100239a3", "mov dword ptr [esi + 0x1c0], ??_8LegoJetski@@7BLegoCarRaceActor@@@ (UNK)"]]}, {"both": [["0x1001387d", "lea ecx, [esi + 0x3c]", "0x100239ad"], ["0x10013880", "call LegoPathActor::LegoPathActor (FUNCTION)", "0x100239b0"], ["0x10013885", "mov al, byte ptr [ebp - 0xd]", "0x100239b5"], ["0x10013888", "mov dword ptr [ebp - 4], ebx", "0x100239b8"], ["0x1001388b", "mov byte ptr [esi + 0x198], al", "0x100239bb"], ["0x10013891", "mov dword ptr [esi + 0x19c], ebx", "0x100239c1"], ["0x10013897", "mov dword ptr [esi + 0x1a0], ebx", "0x100239c7"], ["0x1001389d", "mov dword ptr [esi + 0x1a4], ebx", "0x100239cd"], ["0x100138a3", "or dword ptr [ebp - 0x18], 1", "0x100239d3"], ["0x100138a7", "mov dword ptr [ebp - 4], 1", "0x100239d7"], ["0x100138ae", "mov dword ptr [ebp - 4], 2", "0x100239de"], ["0x100138b5", "mov eax, dword ptr [esi + 0x194]", "0x100239e5"]]}, {"orig": [["0x100138bb", "mov dword ptr [esi + 0x190], <OFFSET8>"]], "recomp": [["0x100239eb", "mov dword ptr [esi + 0x190], LegoAnimActor::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x100138c5", "mov ecx, dword ptr [eax + 4]", "0x100239f5"], ["0x100138c8", "mov byte ptr [ebp - 4], bl", "0x100239f8"]]}, {"orig": [["0x100138cb", "mov dword ptr [ecx + esi + 0x194], <OFFSET9>"]], "recomp": [["0x100239fb", "mov dword ptr [ecx + esi + 0x194], LegoAnimActor::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x100138d6", "mov eax, dword ptr [esi + 0x194]", "0x10023a06"], ["0x100138dc", "push ebx", "0x10023a0c"], ["0x100138dd", "mov eax, dword ptr [eax + 4]", "0x10023a0d"], ["0x100138e0", "mov dword ptr [ebp - 4], 3", "0x10023a10"], ["0x100138e7", "lea ecx, [eax - 0x1c]", "0x10023a17"]]}, {"orig": [["0x100138ea", "mov dword ptr [eax + esi + 0x190], ecx"]], "recomp": [["0x10023a1a", "mov dword ptr [esi + eax + 0x190], ecx"]]}, {"both": [["0x100138f1", "lea ecx, [esi + 0x1ac]", "0x10023a21"], ["0x100138f7", "or dword ptr [ebp - 0x18], 2", "0x10023a27"], ["0x100138fb", "mov word ptr [esi + 0x1a8], 0xffff", "0x10023a2b"], ["0x10013904", "call LegoRaceActor::LegoRaceActor (FUNCTION)", "0x10023a34"], ["0x10013909", "push ebx", "0x10023a39"], ["0x1001390a", "lea ecx, [esi + 0x1bc]", "0x10023a3a"], ["0x10013910", "or dword ptr [ebp - 0x18], 4", "0x10023a40"], ["0x10013914", "mov dword ptr [ebp - 4], 4", "0x10023a44"], ["0x1001391b", "call LegoCarRaceActor::LegoCarRaceActor (FUNCTION)", "0x10023a4b"], ["0x10013920", "or dword ptr [ebp - 0x18], 8", "0x10023a50"], ["0x10013924", "mov dword ptr [ebp - 4], 5", "0x10023a54"], ["0x1001392b", "lea edi, [esi + 0x34]", "0x10023a5b"], ["0x1001392e", "push 0", "0x10023a5e"], ["0x10013930", "mov ecx, edi", "0x10023a60"], ["0x10013932", "call LegoJetskiRaceActor::LegoJetskiRaceActor (FUNCTION)", "0x10023a62"], ["0x10013937", "push 0", "0x10023a67"], ["0x10013939", "mov ecx, esi", "0x10023a69"], ["0x1001393b", "mov dword ptr [ebp - 4], 6", "0x10023a6b"], ["0x10013942", "call LegoRaceMap::LegoRaceMap (FUNCTION)", "0x10023a72"], ["0x10013947", "mov eax, dword ptr [edi]", "0x10023a77"]]}, {"orig": [["0x10013949", "mov dword ptr [esi], <OFFSET14>"]], "recomp": [["0x10023a79", "mov dword ptr [esi], LegoJetski::`vftable'{for `LegoRaceMap'} (VTABLE)"]]}, {"both": [["0x1001394f", "mov byte ptr [ebp - 4], 7", "0x10023a7f"], ["0x10013953", "mov ecx, dword ptr [eax + 4]", "0x10023a83"]]}, {"orig": [["0x10013956", "mov dword ptr [ecx + esi + 0x34], <OFFSET15>"]], "recomp": [["0x10023a86", "mov dword ptr [ecx + esi + 0x34], LegoJetski::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x1001395e", "mov eax, dword ptr [edi]", "0x10023a8e"], ["0x10013960", "mov edx, dword ptr [eax + 8]", "0x10023a90"]]}, {"orig": [["0x10013963", "mov dword ptr [edx + esi + 0x34], <OFFSET16>"]], "recomp": [["0x10023a93", "mov dword ptr [edx + esi + 0x34], LegoJetski::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x1001396b", "mov eax, dword ptr [edi]", "0x10023a9b"], ["0x1001396d", "mov ecx, dword ptr [eax + 0xc]", "0x10023a9d"]]}, {"orig": [["0x10013970", "mov dword ptr [ecx + esi + 0x34], <OFFSET17>"]], "recomp": [["0x10023aa0", "mov dword ptr [ecx + esi + 0x34], LegoJetski::`vftable'{for `LegoRaceActor'} (VTABLE)"]]}, {"both": [["0x10013978", "mov eax, dword ptr [edi]", "0x10023aa8"], ["0x1001397a", "mov edx, dword ptr [eax + 0x10]", "0x10023aaa"]]}, {"orig": [["0x1001397d", "mov dword ptr [edx + esi + 0x34], <OFFSET18>"]], "recomp": [["0x10023aad", "mov dword ptr [edx + esi + 0x34], LegoJetski::`vftable'{for `LegoCarRaceActor'} (VTABLE)"]]}, {"both": [["0x10013985", "mov eax, dword ptr [edi]", "0x10023ab5"], ["0x10013987", "mov eax, dword ptr [eax + 4]", "0x10023ab7"], ["0x1001398a", "test esi, esi", "0x10023aba"], ["0x1001398c", "lea ecx, [eax - 8]", "0x10023abc"]]}, {"orig": [["0x1001398f", "mov dword ptr [eax + esi + 0x30], ecx"]], "recomp": [["0x10023abf", "mov dword ptr [esi + eax + 0x30], ecx"]]}, {"both": [["0x10013993", "mov edx, dword ptr [edi]", "0x10023ac3"], ["0x10013995", "mov eax, dword ptr [edx + 0x10]", "0x10023ac5"], ["0x10013998", "lea ecx, [eax - 0x188]", "0x10023ac8"]]}, {"orig": [["0x1001399e", "mov dword ptr [eax + esi + 0x30], ecx"]], "recomp": [["0x10023ace", "mov dword ptr [esi + eax + 0x30], ecx"]]}, {"both": [["0x100139a2", "jne 0x35", "0x10023ad2"], ["0x100139a4", "xor eax, eax", "0x10023ad4"], ["0x100139a6", "jmp 0x3a", "0x10023ad6"], ["0x100139a8", "test byte ptr [ebp - 0x18], 0x10", "0x10023ad8"], ["0x100139ac", "je 0xe", "0x10023adc"], ["0x100139ae", "mov ecx, dword ptr [ebp - 0x14]", "0x10023ade"], ["0x100139b1", "add ecx, 0x1b0", "0x10023ae1"], ["0x100139b7", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x10023ae7"], ["0x100139bc", "ret ", "0x10023aec"], ["0x100139bd", "mov ecx, dword ptr [ebp - 0x14]", "0x10023aed"], ["0x100139c0", "add ecx, 0x198", "0x10023af0"]]}, {"orig": [["0x100139c6", "jmp -0x5fab"]], "recomp": [["0x10023af6", "jmp vector<void *,allocator<void *> >::~vector<void *,allocator<void *> > (FUNCTION)"]]}, {"both": [["0x100139cb", "mov ecx, dword ptr [ebp - 0x14]", "0x10023afb"], ["0x100139ce", "add ecx, 0x198", "0x10023afe"]]}, {"orig": [["0x100139d4", "jmp -0x5f79"]], "recomp": [["0x10023b04", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"]]}, {"both": [["0x100139d9", "mov eax, dword ptr [edi]", "0x10023b09"], ["0x100139db", "mov ecx, dword ptr [eax + 4]", "0x10023b0b"], ["0x100139de", "lea eax, [ecx + esi + 0x34]", "0x10023b0e"], ["0x100139e2", "push eax", "0x10023b12"], ["0x100139e3", "call NotificationManager (FUNCTION)", "0x10023b13"], ["0x100139e8", "mov ecx, eax", "0x10023b18"], ["0x100139ea", "call MxNotificationManager::Register (FUNCTION)", "0x10023b1a"], ["0x100139ef", "mov eax, esi", "0x10023b1f"], ["0x100139f1", "pop edi", "0x10023b21"], ["0x100139f2", "mov dword ptr [ebp - 4], 0xffffffff", "0x10023b22"]]}]], ["@@ -0x10013a0b,31 +0x10023b3b,31 @@", [{"both": [["0x10013a0b", "test byte ptr [ebp - 0x18], 1", "0x10023b3b"], ["0x10013a0f", "je 0xb", "0x10023b3f"], ["0x10013a11", "mov ecx, dword ptr [ebp - 0x14]", "0x10023b41"], ["0x10013a14", "add ecx, 0x3c", "0x10023b44"], ["0x10013a17", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x10023b47"], ["0x10013a1c", "ret ", "0x10023b4c"], ["0x10013a1d", "test byte ptr [ebp - 0x18], 2", "0x10023b4d"], ["0x10013a21", "je 0xe", "0x10023b51"], ["0x10013a23", "mov ecx, dword ptr [ebp - 0x14]", "0x10023b53"], ["0x10013a26", "add ecx, 0x190", "0x10023b56"]]}, {"orig": [["0x10013a2c", "jmp -0xea1"]], "recomp": [["0x10023b5c", "jmp LegoAnimActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x10013a31", "ret ", "0x10023b61"], ["0x10013a32", "test byte ptr [ebp - 0x18], 4", "0x10023b62"], ["0x10013a36", "je 0xe", "0x10023b66"], ["0x10013a38", "mov ecx, dword ptr [ebp - 0x14]", "0x10023b68"], ["0x10013a3b", "add ecx, 0x1ac", "0x10023b6b"]]}, {"orig": [["0x10013a41", "jmp -0xe36"]], "recomp": [["0x10023b71", "jmp LegoRaceActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x10013a46", "ret ", "0x10023b76"], ["0x10013a47", "test byte ptr [ebp - 0x18], 8", "0x10023b77"], ["0x10013a4b", "je 0xe", "0x10023b7b"], ["0x10013a4d", "mov ecx, dword ptr [ebp - 0x14]", "0x10023b7d"], ["0x10013a50", "add ecx, 0x1bc", "0x10023b80"]]}, {"orig": [["0x10013a56", "jmp -0xe2b"]], "recomp": [["0x10023b86", "jmp LegoCarRaceActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x10013a5b", "ret ", "0x10023b8b"], ["0x10013a5c", "mov ecx, dword ptr [ebp - 0x14]", "0x10023b8c"]]}, {"orig": [["0x10013a5f", "jmp -0xe14"], ["0x10013a64", "mov eax, <OFFSET22>"]], "recomp": [["0x10023b8f", "jmp LegoRaceMap::`vbase destructor' (FUNCTION)"], ["0x10023b94", "mov eax, <OFFSET28>"]]}, {"both": [["0x10013a69", "jmp ___CxxFrameHandler (FUNCTION)", "0x10023b99"], ["0x10013a6e", "mov ecx, dword ptr [ebp - 0x14]", "0x10023b9e"], ["0x10013a71", "add ecx, 0x34", "0x10023ba1"]]}, {"orig": [["0x10013a74", "jmp 0x7"]], "recomp": [["0x10023ba4", "jmp LegoJetskiRaceActor::`vbase destructor' (FUNCTION)"]]}]]]}, {"address": "0x10013e20", "recomp": "0x10023d60", "name": "LegoJetski::`scalar deleting destructor'", "matching": 0.08, "diff": [["@@ -0x10013e20,99 +0x10023d60,51 @@", [{"orig": [["0x10013e20", "sub ecx, dword ptr [ecx - 4]"], ["0x10013e23", "jmp 0x8"], ["0x10013e28", "int3 "], ["0x10013e29", "int3 "], ["0x10013e2a", "int3 "], ["0x10013e2b", "int3 "], ["0x10013e2c", "int3 "], ["0x10013e2d", "int3 "], ["0x10013e2e", "int3 "], ["0x10013e2f", "int3 "], ["0x10013e30", "push esi"], ["0x10013e31", "mov esi, ecx"], ["0x10013e33", "call <OFFSET1>"], ["0x10013e38", "lea ecx, [esi + 0x174]"]], "recomp": [["0x10023d60", "mov eax, dword ptr fs:[0]"], ["0x10023d66", "push ebp"], ["0x10023d67", "mov ebp, esp"], ["0x10023d69", "push -1"], ["0x10023d6b", "push <OFFSET1>"], ["0x10023d70", "push eax"], ["0x10023d71", "mov dword ptr fs:[0], esp"], ["0x10023d78", "xor eax, eax"], ["0x10023d7a", "sub esp, 8"], ["0x10023d7d", "mov dword ptr [ebp - 0x10], ecx"], ["0x10023d80", "mov dword ptr [ebp - 4], eax"], ["0x10023d83", "mov byte ptr [ebp - 4], al"]]}, {"both": [["0x10013e3e", "call <OFFSET2>", "0x10023d86"]]}, {"orig": [["0x10013e43", "mov ecx, esi"]], "recomp": [["0x10023d8b", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10023d92", "call <OFFSET3>"], ["0x10023d97", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10023d9e", "call <OFFSET4>"], ["0x10023da3", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10013e45", "call LegoPathActor::~LegoPathActor (FUNCTION)", "0x10023da6"]]}, {"orig": [["0x10013e4a", "test byte ptr [esp + 8], 1"], ["0x10013e4f", "je 0xc"], ["0x10013e51", "lea eax, [esi - 0x3c]"]], "recomp": [["0x10023dab", "test byte ptr [ebp + 8], 1"], ["0x10023daf", "je 0xf"], ["0x10023db1", "mov eax, dword ptr [ebp - 0x10]"], ["0x10023db4", "sub eax, 0x3c"]]}, {"both": [["0x10013e54", "push eax", "0x10023db7"], ["0x10013e55", "call ??3@YAXPAX@Z (FUNCTION)", "0x10023db8"], ["0x10013e5a", "add esp, 4", "0x10023dbd"]]}, {"orig": [["0x10013e5d", "lea eax, [esi - 0x3c]"], ["0x10013e60", "pop esi"]], "recomp": [["0x10023dc0", "mov eax, dword ptr [ebp - 0x10]"], ["0x10023dc3", "mov ecx, dword ptr [ebp - 0xc]"], ["0x10023dc6", "mov esp, ebp"], ["0x10023dc8", "mov dword ptr fs:[0], ecx"], ["0x10023dcf", "sub eax, 0x3c"], ["0x10023dd2", "pop ebp"]]}, {"both": [["0x10013e61", "ret 4", "0x10023dd3"]]}, {"orig": [["0x10013e64", "int3 "], ["0x10013e65", "int3 "], ["0x10013e66", "int3 "], ["0x10013e67", "int3 "], ["0x10013e68", "int3 "], ["0x10013e69", "int3 "], ["0x10013e6a", "int3 "], ["0x10013e6b", "int3 "], ["0x10013e6c", "int3 "], ["0x10013e6d", "int3 "], ["0x10013e6e", "int3 "], ["0x10013e6f", "int3 "], ["0x10013e70", "sub ecx, dword ptr [ecx - 4]"], ["0x10013e73", "jmp -0x248"], ["0x10013e78", "int3 "], ["0x10013e79", "int3 "], ["0x10013e7a", "int3 "], ["0x10013e7b", "int3 "], ["0x10013e7c", "int3 "], ["0x10013e7d", "int3 "], ["0x10013e7e", "int3 "], ["0x10013e7f", "int3 "], ["0x10013e80", "sub ecx, dword ptr [ecx - 4]"], ["0x10013e83", "jmp 0x8"], ["0x10013e88", "int3 "], ["0x10013e89", "int3 "], ["0x10013e8a", "int3 "], ["0x10013e8b", "int3 "], ["0x10013e8c", "int3 "], ["0x10013e8d", "int3 "], ["0x10013e8e", "int3 "], ["0x10013e8f", "int3 "], ["0x10013e90", "mov eax, 'LegoJetski' (STRING)"], ["0x10013e95", "ret "], ["0x10013e96", "int3 "], ["0x10013e97", "int3 "], ["0x10013e98", "int3 "], ["0x10013e99", "int3 "], ["0x10013e9a", "int3 "], ["0x10013e9b", "int3 "], ["0x10013e9c", "int3 "], ["0x10013e9d", "int3 "], ["0x10013e9e", "int3 "], ["0x10013e9f", "int3 "], ["0x10013ea0", "sub ecx, dword ptr [ecx - 4]"], ["0x10013ea3", "jmp 0x8"], ["0x10013ea8", "int3 "], ["0x10013ea9", "int3 "], ["0x10013eaa", "int3 "], ["0x10013eab", "int3 "], ["0x10013eac", "int3 "], ["0x10013ead", "int3 "], ["0x10013eae", "int3 "], ["0x10013eaf", "int3 "], ["0x10013eb0", "push ebx"], ["0x10013eb1", "push esi"], ["0x10013eb2", "mov ebx, dword ptr [esp + 0xc]"], ["0x10013eb6", "push edi"], ["0x10013eb7", "mov eax, ebx"], ["0x10013eb9", "mov esi, 'LegoJetski' (STRING)"], ["0x10013ebe", "mov dl, byte ptr [eax]"], ["0x10013ec0", "cmp dl, byte ptr [esi]"], ["0x10013ec2", "jne 0x1a"], ["0x10013ec4", "or dl, dl"], ["0x10013ec6", "je 0x12"], ["0x10013ec8", "mov dl, byte ptr [eax + 1]"], ["0x10013ecb", "cmp dl, byte ptr [esi + 1]"], ["0x10013ece", "jne 0xe"], ["0x10013ed0", "add eax, 2"], ["0x10013ed3", "add esi, 2"], ["0x10013ed6", "or dl, dl"], ["0x10013ed8", "jne -0x1c"], ["0x10013eda", "xor eax, eax"]], "recomp": [["0x10023dd6", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10023dd9", "add ecx, 0x15c"], ["0x10023ddf", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"], ["0x10023de4", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10023de7", "sub ecx, 4"], ["0x10023dea", "jmp LegoRaceMap::~LegoRaceMap (FUNCTION)"], ["0x10023def", "mov eax, <OFFSET9>"], ["0x10023df4", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10023df9", "cmp dword ptr [ebp - 0x10], 0x3c"], ["0x10023dfd", "je 0xb"], ["0x10023dff", "mov eax, dword ptr [ebp - 0x10]"], ["0x10023e02", "sub eax, 8"], ["0x10023e05", "mov dword ptr [ebp - 0x14], eax"], ["0x10023e08", "jmp 0x7"], ["0x10023e0a", "mov dword ptr [ebp - 0x14], 0"], ["0x10023e11", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10023e14", "add ecx, 8"], ["0x10023e17", "jmp LegoJetskiRaceActor::~LegoJetskiRaceActor (FUNCTION)"]]}]]]}, {"address": "0x10013e70", "recomp": "0x10023cd0", "name": "LegoJetski::Notify", "matching": 0.0, "stub": true}, {"address": "0x10013e80", "recomp": "0x10023e60", "name": "LegoJetski::ClassName", "matching": 0.0, "diff": [["@@ -0x10013e80,1 +0x10023e60,2 @@", [{"orig": [["0x10013e80", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x10023e60", "mov eax, 'LegoJetski' (STRING)"], ["0x10023e65", "ret "]]}]]]}, {"address": "0x10013ea0", "recomp": "0x10023e80", "name": "LegoJetski::IsA", "matching": 0.9528301886792453, "diff": [["@@ -0x10013ea0,20 +0x10023e80,10 @@", [{"orig": [["0x10013ea0", "sub ecx, dword ptr [ecx - 4]"], ["0x10013ea3", "jmp 0x8"], ["0x10013ea8", "int3 "], ["0x10013ea9", "int3 "], ["0x10013eaa", "int3 "], ["0x10013eab", "int3 "], ["0x10013eac", "int3 "], ["0x10013ead", "int3 "], ["0x10013eae", "int3 "], ["0x10013eaf", "int3 "]], "recomp": []}, {"both": [["0x10013eb0", "push ebx", "0x10023e80"], ["0x10013eb1", "push esi", "0x10023e81"], ["0x10013eb2", "mov ebx, dword ptr [esp + 0xc]", "0x10023e82"], ["0x10013eb6", "push edi", "0x10023e86"], ["0x10013eb7", "mov eax, ebx", "0x10023e87"], ["0x10013eb9", "mov esi, 'LegoJetski' (STRING)", "0x10023e89"], ["0x10013ebe", "mov dl, byte ptr [eax]", "0x10023e8e"], ["0x10013ec0", "cmp dl, byte ptr [esi]", "0x10023e90"], ["0x10013ec2", "jne 0x1a", "0x10023e92"], ["0x10013ec4", "or dl, dl", "0x10023e94"]]}]], ["@@ -0x1001409e,10 +0x1002406e,20 @@", [{"both": [["0x1001409e", "jmp 0x5", "0x1002406e"], ["0x100140a0", "sbb eax, eax", "0x10024070"], ["0x100140a2", "sbb eax, -1", "0x10024072"], ["0x100140a5", "test eax, eax", "0x10024075"], ["0x100140a7", "je 0x14", "0x10024077"], ["0x100140a9", "push ebx", "0x10024079"], ["0x100140aa", "mov ecx, esi", "0x1002407a"], ["0x100140ac", "call MxCore::IsA (FUNCTION)", "0x1002407c"], ["0x100140b1", "test al, al", "0x10024081"], ["0x100140b3", "jne 0x8", "0x10024083"]]}, {"orig": [], "recomp": [["0x10024085", "xor al, al"], ["0x10024087", "pop edi"], ["0x10024088", "pop esi"], ["0x10024089", "pop ebx"], ["0x1002408a", "ret 4"], ["0x1002408d", "mov al, 1"], ["0x1002408f", "pop edi"], ["0x10024090", "pop esi"], ["0x10024091", "pop ebx"], ["0x10024092", "ret 4"]]}]]]}, {"address": "0x100140d0", "recomp": "0x1000a3d0", "name": "MxCore::IsA", "matching": 1.0, "diff": []}, {"address": "0x10014110", "recomp": "0x10023ce0", "name": "LegoJetski::ParseAction", "matching": 0.0, "stub": true}, {"address": "0x10014120", "recomp": "0x10023cf0", "name": "LegoJetski::SetWorldSpeed", "matching": 0.0, "stub": true}, {"address": "0x10014130", "recomp": "0x100223e0", "name": "LegoCarRaceActor::VTable0x68", "matching": 0.0, "stub": true}, {"address": "0x10014140", "recomp": "0x10023d00", "name": "LegoJetski::VTable0x6c", "matching": 0.0, "stub": true}, {"address": "0x10014180", "recomp": "0x10023d10", "name": "LegoJetski::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x10014190", "recomp": "0x10034ea0", "name": "LegoRaceActor::VTable0x74", "matching": 0.0, "stub": true}, {"address": "0x100141a0", "recomp": "0x100223f0", "name": "LegoCarRaceActor::VTable0x90", "matching": 0.0, "stub": true}, {"address": "0x100141b0", "recomp": "0x10023d20", "name": "LegoJetski::VTable0x94", "matching": 0.0, "stub": true}, {"address": "0x100141c0", "recomp": "0x10023d30", "name": "LegoJetski::VTable0x98", "matching": 0.0, "stub": true}, {"address": "0x10014200", "recomp": "0x10023d40", "name": "LegoJetski::VTable0x9c", "matching": 0.0, "stub": true}, {"address": "0x10014220", "recomp": "0x10024140", "name": "LegoJetskiRaceActor::VTable0x1c", "matching": 0.0, "stub": true}, {"address": "0x10014230", "recomp": "0x10035680", "name": "LegoRaceCar::`scalar deleting destructor'", "matching": 0.0821917808219178, "diff": [["@@ -0x10014230,95 +0x10035680,51 @@", [{"orig": [["0x10014230", "sub ecx, dword ptr [ecx - 4]"], ["0x10014233", "jmp 0x8"], ["0x10014238", "int3 "], ["0x10014239", "int3 "], ["0x1001423a", "int3 "], ["0x1001423b", "int3 "], ["0x1001423c", "int3 "], ["0x1001423d", "int3 "], ["0x1001423e", "int3 "], ["0x1001423f", "int3 "], ["0x10014240", "push esi"], ["0x10014241", "mov esi, ecx"], ["0x10014243", "call <OFFSET1>"], ["0x10014248", "lea ecx, [esi + 0x174]"]], "recomp": [["0x10035680", "mov eax, dword ptr fs:[0]"], ["0x10035686", "push ebp"], ["0x10035687", "mov ebp, esp"], ["0x10035689", "push -1"], ["0x1003568b", "push <OFFSET1>"], ["0x10035690", "push eax"], ["0x10035691", "mov dword ptr fs:[0], esp"], ["0x10035698", "xor eax, eax"], ["0x1003569a", "sub esp, 8"], ["0x1003569d", "mov dword ptr [ebp - 0x10], ecx"], ["0x100356a0", "mov dword ptr [ebp - 4], eax"], ["0x100356a3", "mov byte ptr [ebp - 4], al"]]}, {"both": [["0x1001424e", "call <OFFSET2>", "0x100356a6"]]}, {"orig": [["0x10014253", "mov ecx, esi"]], "recomp": [["0x100356ab", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100356b2", "call <OFFSET3>"], ["0x100356b7", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100356be", "call <OFFSET4>"], ["0x100356c3", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10014255", "call LegoPathActor::~LegoPathActor (FUNCTION)", "0x100356c6"]]}, {"orig": [["0x1001425a", "test byte ptr [esp + 8], 1"], ["0x1001425f", "je 0xf"], ["0x10014261", "lea eax, [esi - 0x84]"]], "recomp": [["0x100356cb", "test byte ptr [ebp + 8], 1"], ["0x100356cf", "je 0x11"], ["0x100356d1", "mov eax, dword ptr [ebp - 0x10]"], ["0x100356d4", "sub eax, 0x84"]]}, {"both": [["0x10014267", "push eax", "0x100356d9"], ["0x10014268", "call ??3@YAXPAX@Z (FUNCTION)", "0x100356da"], ["0x1001426d", "add esp, 4", "0x100356df"]]}, {"orig": [["0x10014270", "lea eax, [esi - 0x84]"], ["0x10014276", "pop esi"]], "recomp": [["0x100356e2", "mov eax, dword ptr [ebp - 0x10]"], ["0x100356e5", "mov ecx, dword ptr [ebp - 0xc]"], ["0x100356e8", "mov esp, ebp"], ["0x100356ea", "mov dword ptr fs:[0], ecx"], ["0x100356f1", "sub eax, 0x84"], ["0x100356f6", "pop ebp"]]}, {"both": [["0x10014277", "ret 4", "0x100356f7"]]}, {"orig": [["0x1001427a", "int3 "], ["0x1001427b", "int3 "], ["0x1001427c", "int3 "], ["0x1001427d", "int3 "], ["0x1001427e", "int3 "], ["0x1001427f", "int3 "], ["0x10014280", "sub ecx, dword ptr [ecx - 4]"], ["0x10014283", "jmp -0x14f8"], ["0x10014288", "int3 "], ["0x10014289", "int3 "], ["0x1001428a", "int3 "], ["0x1001428b", "int3 "], ["0x1001428c", "int3 "], ["0x1001428d", "int3 "], ["0x1001428e", "int3 "], ["0x1001428f", "int3 "], ["0x10014290", "sub ecx, dword ptr [ecx - 4]"], ["0x10014293", "jmp 0x8"], ["0x10014298", "int3 "], ["0x10014299", "int3 "], ["0x1001429a", "int3 "], ["0x1001429b", "int3 "], ["0x1001429c", "int3 "], ["0x1001429d", "int3 "], ["0x1001429e", "int3 "], ["0x1001429f", "int3 "], ["0x100142a0", "mov eax, 'LegoRaceCar' (STRING)"], ["0x100142a5", "ret "], ["0x100142a6", "int3 "], ["0x100142a7", "int3 "], ["0x100142a8", "int3 "], ["0x100142a9", "int3 "], ["0x100142aa", "int3 "], ["0x100142ab", "int3 "], ["0x100142ac", "int3 "], ["0x100142ad", "int3 "], ["0x100142ae", "int3 "], ["0x100142af", "int3 "], ["0x100142b0", "sub ecx, dword ptr [ecx - 4]"], ["0x100142b3", "jmp 0x8"], ["0x100142b8", "int3 "], ["0x100142b9", "int3 "], ["0x100142ba", "int3 "], ["0x100142bb", "int3 "], ["0x100142bc", "int3 "], ["0x100142bd", "int3 "], ["0x100142be", "int3 "], ["0x100142bf", "int3 "], ["0x100142c0", "push esi"], ["0x100142c1", "push edi"], ["0x100142c2", "mov esi, dword ptr [esp + 0xc]"], ["0x100142c6", "mov edi, 'LegoRaceCar' (STRING)"], ["0x100142cb", "mov eax, esi"], ["0x100142cd", "mov dl, byte ptr [eax]"], ["0x100142cf", "cmp dl, byte ptr [edi]"], ["0x100142d1", "jne 0x1a"], ["0x100142d3", "or dl, dl"], ["0x100142d5", "je 0x12"], ["0x100142d7", "mov dl, byte ptr [eax + 1]"], ["0x100142da", "cmp dl, byte ptr [edi + 1]"], ["0x100142dd", "jne 0xe"], ["0x100142df", "add eax, 2"], ["0x100142e2", "add edi, 2"], ["0x100142e5", "or dl, dl"], ["0x100142e7", "jne -0x1c"], ["0x100142e9", "xor eax, eax"], ["0x100142eb", "jmp 0x5"], ["0x100142ed", "sbb eax, eax"], ["0x100142ef", "sbb eax, -1"]], "recomp": [["0x100356fa", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100356fd", "add ecx, 0x15c"], ["0x10035703", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"], ["0x10035708", "cmp dword ptr [ebp - 0x10], 0x84"], ["0x1003570f", "je 0xb"], ["0x10035711", "mov eax, dword ptr [ebp - 0x10]"], ["0x10035714", "sub eax, 0x64"], ["0x10035717", "mov dword ptr [ebp - 0x14], eax"], ["0x1003571a", "jmp 0x7"], ["0x1003571c", "mov dword ptr [ebp - 0x14], 0"], ["0x10035723", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10035726", "add ecx, 0x38"], ["0x10035729", "jmp LegoRaceMap::~LegoRaceMap (FUNCTION)"], ["0x1003572e", "mov eax, <OFFSET9>"], ["0x10035733", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10035738", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1003573b", "sub ecx, 0x60"], ["0x1003573e", "jmp LegoCarRaceActor::~LegoCarRaceActor (FUNCTION)"]]}]]]}, {"address": "0x10014280", "recomp": "0x100355f0", "name": "LegoRaceCar::Notify", "matching": 0.0, "stub": true}, {"address": "0x10014290", "recomp": "0x10035780", "name": "LegoRaceCar::ClassName", "matching": 0.0, "diff": [["@@ -0x10014290,1 +0x10035780,2 @@", [{"orig": [["0x10014290", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x10035780", "mov eax, 'LegoRaceCar' (STRING)"], ["0x10035785", "ret "]]}]]]}, {"address": "0x100142b0", "recomp": "0x100357a0", "name": "LegoRaceCar::IsA", "matching": 0.9473684210526315, "diff": [["@@ -0x100142b0,24 +0x100357a0,14 @@", [{"orig": [["0x100142b0", "sub ecx, dword ptr [ecx - 4]"], ["0x100142b3", "jmp 0x8"], ["0x100142b8", "int3 "], ["0x100142b9", "int3 "], ["0x100142ba", "int3 "], ["0x100142bb", "int3 "], ["0x100142bc", "int3 "], ["0x100142bd", "int3 "], ["0x100142be", "int3 "], ["0x100142bf", "int3 "]], "recomp": []}, {"both": [["0x100142c0", "push esi", "0x100357a0"], ["0x100142c1", "push edi", "0x100357a1"], ["0x100142c2", "mov esi, dword ptr [esp + 0xc]", "0x100357a2"]]}, {"orig": [["0x100142c6", "mov edi, 'LegoRaceCar' (STRING)"]], "recomp": [["0x100357a6", "mov edi, 'LegoCarRaceActor' (STRING)"]]}, {"both": [["0x100142cb", "mov eax, esi", "0x100357ab"], ["0x100142cd", "mov dl, byte ptr [eax]", "0x100357ad"], ["0x100142cf", "cmp dl, byte ptr [edi]", "0x100357af"], ["0x100142d1", "jne 0x1a", "0x100357b1"], ["0x100142d3", "or dl, dl", "0x100357b3"], ["0x100142d5", "je 0x12", "0x100357b5"], ["0x100142d7", "mov dl, byte ptr [eax + 1]", "0x100357b7"], ["0x100142da", "cmp dl, byte ptr [edi + 1]", "0x100357ba"], ["0x100142dd", "jne 0xe", "0x100357bd"], ["0x100142df", "add eax, 2", "0x100357bf"]]}]], ["@@ -0x10014491,10 +0x10035971,19 @@", [{"both": [["0x10014491", "jne 0xe", "0x10035971"], ["0x10014493", "add esi, 2", "0x10035973"], ["0x10014496", "add eax, 2", "0x10035976"], ["0x10014499", "or cl, cl", "0x10035979"], ["0x1001449b", "jne -0x1c", "0x1003597b"], ["0x1001449d", "xor eax, eax", "0x1003597d"], ["0x1001449f", "jmp 0x5", "0x1003597f"], ["0x100144a1", "sbb eax, eax", "0x10035981"], ["0x100144a3", "sbb eax, -1", "0x10035983"], ["0x100144a6", "test eax, eax", "0x10035986"]]}, {"orig": [], "recomp": [["0x10035988", "je 0x7"], ["0x1003598a", "xor al, al"], ["0x1003598c", "pop edi"], ["0x1003598d", "pop esi"], ["0x1003598e", "ret 4"], ["0x10035991", "mov al, 1"], ["0x10035993", "pop edi"], ["0x10035994", "pop esi"], ["0x10035995", "ret 4"]]}]]]}, {"address": "0x100144c0", "recomp": "0x1000a3c0", "name": "MxCore::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100144d0", "recomp": "0x10035600", "name": "LegoRaceCar::ParseAction", "matching": 0.0, "stub": true}, {"address": "0x100144e0", "recomp": "0x10035610", "name": "LegoRaceCar::SetWorldSpeed", "matching": 0.0, "stub": true}, {"address": "0x100144f0", "recomp": "0x10035620", "name": "LegoRaceCar::VTable0x6c", "matching": 0.0, "stub": true}, {"address": "0x10014530", "recomp": "0x10035630", "name": "LegoRaceCar::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x10014540", "recomp": "0x10035640", "name": "LegoRaceCar::VTable0x94", "matching": 0.0, "stub": true}, {"address": "0x10014550", "recomp": "0x10035650", "name": "LegoRaceCar::VTable0x98", "matching": 0.0, "stub": true}, {"address": "0x10014580", "recomp": "0x10035660", "name": "LegoRaceCar::VTable0x9c", "matching": 0.0, "stub": true}, {"address": "0x100145d0", "recomp": "0x10034eb0", "name": "LegoRaceActor::LegoRaceActor", "matching": 0.8804347826086957, "diff": [["@@ -0x100145e1,52 +0x10034ec1,52 @@", [{"both": [["0x100145e1", "mov dword ptr fs:[0], esp", "0x10034ec1"], ["0x100145e8", "sub esp, 0xc", "0x10034ec8"], ["0x100145eb", "push ebx", "0x10034ecb"], ["0x100145ec", "push esi", "0x10034ecc"], ["0x100145ed", "mov dword ptr [ebp - 0x14], ecx", "0x10034ecd"], ["0x100145f0", "mov esi, ecx", "0x10034ed0"], ["0x100145f2", "xor ebx, ebx", "0x10034ed2"], ["0x100145f4", "mov dword ptr [ebp - 0x18], ebx", "0x10034ed4"], ["0x100145f7", "cmp dword ptr [ebp + 8], ebx", "0x10034ed7"], ["0x100145fa", "je 0x91", "0x10034eda"]]}, {"orig": [["0x10014600", "mov dword ptr [esi + 4], <OFFSET2>"], ["0x10014607", "mov dword ptr [esi + 0x168], <OFFSET3>"]], "recomp": [["0x10034ee0", "mov dword ptr [esi + 4], ??_8LegoRaceActor@@7B0@@ (UNK)"], ["0x10034ee7", "mov dword ptr [esi + 0x168], ??_8LegoRaceActor@@7BLegoAnimActor@@@ (UNK)"]]}, {"both": [["0x10014611", "lea ecx, [esi + 0x10]", "0x10034ef1"], ["0x10014614", "call LegoPathActor::LegoPathActor (FUNCTION)", "0x10034ef4"], ["0x10014619", "mov al, byte ptr [ebp - 0xd]", "0x10034ef9"], ["0x1001461c", "mov dword ptr [ebp - 4], ebx", "0x10034efc"], ["0x1001461f", "mov byte ptr [esi + 0x16c], al", "0x10034eff"], ["0x10014625", "mov dword ptr [esi + 0x170], ebx", "0x10034f05"], ["0x1001462b", "mov dword ptr [esi + 0x174], ebx", "0x10034f0b"], ["0x10014631", "mov dword ptr [esi + 0x178], ebx", "0x10034f11"], ["0x10014637", "or dword ptr [ebp - 0x18], 1", "0x10034f17"], ["0x1001463b", "mov dword ptr [ebp - 4], 1", "0x10034f1b"], ["0x10014642", "mov dword ptr [ebp - 4], 2", "0x10034f22"], ["0x10014649", "mov eax, dword ptr [esi + 0x168]", "0x10034f29"]]}, {"orig": [["0x1001464f", "mov dword ptr [esi + 0x164], <OFFSET5>"]], "recomp": [["0x10034f2f", "mov dword ptr [esi + 0x164], LegoAnimActor::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x10014659", "mov ecx, dword ptr [eax + 4]", "0x10034f39"], ["0x1001465c", "mov byte ptr [ebp - 4], bl", "0x10034f3c"]]}, {"orig": [["0x1001465f", "mov dword ptr [ecx + esi + 0x168], <OFFSET6>"]], "recomp": [["0x10034f3f", "mov dword ptr [ecx + esi + 0x168], LegoAnimActor::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x1001466a", "mov eax, dword ptr [esi + 0x168]", "0x10034f4a"], ["0x10014670", "mov dword ptr [ebp - 4], 3", "0x10034f50"], ["0x10014677", "mov eax, dword ptr [eax + 4]", "0x10034f57"], ["0x1001467a", "or dword ptr [ebp - 0x18], 2", "0x10034f5a"], ["0x1001467e", "lea ecx, [eax - 0x1c]", "0x10034f5e"], ["0x10014681", "mov dword ptr [eax + esi + 0x164], ecx", "0x10034f61"], ["0x10014688", "mov word ptr [esi + 0x17c], 0xffff", "0x10034f68"], ["0x10014691", "mov eax, dword ptr [esi + 4]", "0x10034f71"]]}, {"orig": [["0x10014694", "mov dword ptr [esi], <OFFSET7>"]], "recomp": [["0x10034f74", "mov dword ptr [esi], LegoRaceActor::`vftable' (VTABLE)"]]}, {"both": [["0x1001469a", "mov ecx, dword ptr [eax + 4]", "0x10034f7a"]]}, {"orig": [["0x1001469d", "mov dword ptr [ecx + esi + 4], <OFFSET8>"]], "recomp": [["0x10034f7d", "mov dword ptr [ecx + esi + 4], LegoRaceActor::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x100146a5", "mov eax, dword ptr [esi + 4]", "0x10034f85"], ["0x100146a8", "mov edx, dword ptr [eax + 8]", "0x10034f88"]]}, {"orig": [["0x100146ab", "mov dword ptr [edx + esi + 4], <OFFSET9>"]], "recomp": [["0x10034f8b", "mov dword ptr [edx + esi + 4], LegoRaceActor::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x100146b3", "mov eax, dword ptr [esi + 4]", "0x10034f93"], ["0x100146b6", "mov eax, dword ptr [eax + 4]", "0x10034f96"], ["0x100146b9", "lea ecx, [eax - 0xc]", "0x10034f99"], ["0x100146bc", "mov dword ptr [ebp - 4], 0xffffffff", "0x10034f9c"], ["0x100146c3", "mov dword ptr [eax + esi], ecx", "0x10034fa3"], ["0x100146c6", "xor eax, eax", "0x10034fa6"], ["0x100146c8", "mov edx, dword ptr [esi + 4]", "0x10034fa8"], ["0x100146cb", "mov ecx, dword ptr [ebp - 0xc]", "0x10034fab"], ["0x100146ce", "mov dword ptr fs:[0], ecx", "0x10034fae"], ["0x100146d5", "mov ebx, dword ptr [edx + 4]", "0x10034fb5"]]}]], ["@@ -0x100146e5,28 +0x10034fc5,28 @@", [{"both": [["0x100146e5", "pop ebp", "0x10034fc5"], ["0x100146e6", "ret 4", "0x10034fc6"], ["0x100146e9", "test byte ptr [ebp - 0x18], 4", "0x10034fc9"], ["0x100146ed", "je 0xe", "0x10034fcd"], ["0x100146ef", "mov ecx, dword ptr [ebp - 0x14]", "0x10034fcf"], ["0x100146f2", "add ecx, 0x184", "0x10034fd2"], ["0x100146f8", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x10034fd8"], ["0x100146fd", "ret ", "0x10034fdd"], ["0x100146fe", "mov ecx, dword ptr [ebp - 0x14]", "0x10034fde"], ["0x10014701", "add ecx, 0x16c", "0x10034fe1"]]}, {"orig": [["0x10014707", "jmp -0x6cec"]], "recomp": [["0x10034fe7", "jmp vector<void *,allocator<void *> >::~vector<void *,allocator<void *> > (FUNCTION)"]]}, {"both": [["0x1001470c", "mov ecx, dword ptr [ebp - 0x14]", "0x10034fec"], ["0x1001470f", "add ecx, 0x16c", "0x10034fef"]]}, {"orig": [["0x10014715", "jmp -0x6cba"], ["0x1001471a", "mov eax, <OFFSET11>"]], "recomp": [["0x10034ff5", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"], ["0x10034ffa", "mov eax, <OFFSET13>"]]}, {"both": [["0x1001471f", "jmp ___CxxFrameHandler (FUNCTION)", "0x10034fff"], ["0x10014724", "test byte ptr [ebp - 0x18], 2", "0x10035004"], ["0x10014728", "je 0xe", "0x10035008"], ["0x1001472a", "mov ecx, dword ptr [ebp - 0x14]", "0x1003500a"], ["0x1001472d", "add ecx, 0x164", "0x1003500d"]]}, {"orig": [["0x10014733", "jmp -0x1ba8"]], "recomp": [["0x10035013", "jmp LegoAnimActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x10014738", "ret ", "0x10035018"], ["0x10014739", "test byte ptr [ebp - 0x18], 1", "0x10035019"], ["0x1001473d", "je 0xb", "0x1003501d"], ["0x1001473f", "mov ecx, dword ptr [ebp - 0x14]", "0x1003501f"], ["0x10014742", "add ecx, 0x10", "0x10035022"], ["0x10014745", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x10035025"], ["0x1001474a", "ret ", "0x1003502a"]]}]]]}, {"address": "0x10014aa0", "recomp": "0x10022650", "name": "LegoRaceActor::FUN_10014aa0", "matching": 1.0, "diff": []}, {"address": "0x10014ab0", "recomp": "0x100350a0", "name": "LegoRaceActor::`scalar deleting destructor'", "matching": 0.10869565217391304, "diff": [["@@ -0x10014ab0,60 +0x100350a0,32 @@", [{"orig": [["0x10014ab0", "sub ecx, dword ptr [ecx - 4]"], ["0x10014ab3", "jmp 0x8"], ["0x10014ab8", "int3 "], ["0x10014ab9", "int3 "], ["0x10014aba", "int3 "], ["0x10014abb", "int3 "], ["0x10014abc", "int3 "], ["0x10014abd", "int3 "], ["0x10014abe", "int3 "], ["0x10014abf", "int3 "], ["0x10014ac0", "push esi"], ["0x10014ac1", "mov esi, ecx"], ["0x10014ac3", "lea ecx, [ecx + 0x174]"], ["0x10014ac9", "call <OFFSET1>"], ["0x10014ace", "mov ecx, esi"]], "recomp": [["0x100350a0", "mov eax, dword ptr fs:[0]"], ["0x100350a6", "push ebp"], ["0x100350a7", "mov ebp, esp"], ["0x100350a9", "push -1"], ["0x100350ab", "push <OFFSET1>"], ["0x100350b0", "push eax"], ["0x100350b1", "mov dword ptr fs:[0], esp"], ["0x100350b8", "sub esp, 4"], ["0x100350bb", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100350c2", "mov dword ptr [ebp - 0x10], ecx"], ["0x100350c5", "call <OFFSET2>"], ["0x100350ca", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10014ad0", "call LegoPathActor::~LegoPathActor (FUNCTION)", "0x100350cd"]]}, {"orig": [["0x10014ad5", "test byte ptr [esp + 8], 1"], ["0x10014ada", "je 0xc"], ["0x10014adc", "lea eax, [esi - 0x10]"]], "recomp": [["0x100350d2", "test byte ptr [ebp + 8], 1"], ["0x100350d6", "je 0xf"], ["0x100350d8", "mov eax, dword ptr [ebp - 0x10]"], ["0x100350db", "sub eax, 0x10"]]}, {"both": [["0x10014adf", "push eax", "0x100350de"], ["0x10014ae0", "call ??3@YAXPAX@Z (FUNCTION)", "0x100350df"], ["0x10014ae5", "add esp, 4", "0x100350e4"]]}, {"orig": [["0x10014ae8", "lea eax, [esi - 0x10]"], ["0x10014aeb", "pop esi"]], "recomp": [["0x100350e7", "mov eax, dword ptr [ebp - 0x10]"], ["0x100350ea", "mov ecx, dword ptr [ebp - 0xc]"], ["0x100350ed", "mov esp, ebp"], ["0x100350ef", "mov dword ptr fs:[0], ecx"], ["0x100350f6", "sub eax, 0x10"], ["0x100350f9", "pop ebp"]]}, {"both": [["0x10014aec", "ret 4", "0x100350fa"]]}, {"orig": [["0x10014aef", "int3 "], ["0x10014af0", "sub ecx, dword ptr [ecx - 4]"], ["0x10014af3", "jmp 0x8"], ["0x10014af8", "int3 "], ["0x10014af9", "int3 "], ["0x10014afa", "int3 "], ["0x10014afb", "int3 "], ["0x10014afc", "int3 "], ["0x10014afd", "int3 "], ["0x10014afe", "int3 "], ["0x10014aff", "int3 "], ["0x10014b00", "mov eax, 'LegoRaceActor' (STRING)"], ["0x10014b05", "ret "], ["0x10014b06", "int3 "], ["0x10014b07", "int3 "], ["0x10014b08", "int3 "], ["0x10014b09", "int3 "], ["0x10014b0a", "int3 "], ["0x10014b0b", "int3 "], ["0x10014b0c", "int3 "], ["0x10014b0d", "int3 "], ["0x10014b0e", "int3 "], ["0x10014b0f", "int3 "], ["0x10014b10", "sub ecx, dword ptr [ecx - 4]"], ["0x10014b13", "jmp 0x8"], ["0x10014b18", "int3 "], ["0x10014b19", "int3 "], ["0x10014b1a", "int3 "], ["0x10014b1b", "int3 "], ["0x10014b1c", "int3 "], ["0x10014b1d", "int3 "], ["0x10014b1e", "int3 "], ["0x10014b1f", "int3 "], ["0x10014b20", "mov edx, dword ptr [esp + 4]"], ["0x10014b24", "push ebx"]], "recomp": [["0x100350fd", "mov eax, <OFFSET5>"], ["0x10035102", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10035107", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1003510a", "add ecx, 0x15c"], ["0x10035110", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"]]}]]]}, {"address": "0x10014af0", "recomp": "0x10035130", "name": "LegoRaceActor::ClassName", "matching": 0.0, "diff": [["@@ -0x10014af0,1 +0x10035130,2 @@", [{"orig": [["0x10014af0", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x10035130", "mov eax, 'LegoRaceActor' (STRING)"], ["0x10035135", "ret "]]}]]]}, {"address": "0x10014b10", "recomp": "0x10035150", "name": "LegoRaceActor::IsA", "matching": 0.9368770764119602, "diff": [["@@ -0x10014b10,20 +0x10035150,10 @@", [{"orig": [["0x10014b10", "sub ecx, dword ptr [ecx - 4]"], ["0x10014b13", "jmp 0x8"], ["0x10014b18", "int3 "], ["0x10014b19", "int3 "], ["0x10014b1a", "int3 "], ["0x10014b1b", "int3 "], ["0x10014b1c", "int3 "], ["0x10014b1d", "int3 "], ["0x10014b1e", "int3 "], ["0x10014b1f", "int3 "]], "recomp": []}, {"both": [["0x10014b20", "mov edx, dword ptr [esp + 4]", "0x10035150"], ["0x10014b24", "push ebx", "0x10035154"], ["0x10014b25", "push esi", "0x10035155"], ["0x10014b26", "mov eax, edx", "0x10035156"], ["0x10014b28", "mov esi, 'LegoRaceActor' (STRING)", "0x10035158"], ["0x10014b2d", "mov bl, byte ptr [eax]", "0x1003515d"], ["0x10014b2f", "cmp bl, byte ptr [esi]", "0x1003515f"], ["0x10014b31", "jne 0x1a", "0x10035161"], ["0x10014b33", "or bl, bl", "0x10035163"], ["0x10014b35", "je 0x12", "0x10035165"]]}]], ["@@ -0x10014c6b,10 +0x1003529b,19 @@", [{"both": [["0x10014c6b", "jne 0xe", "0x1003529b"], ["0x10014c6d", "add edx, 2", "0x1003529d"], ["0x10014c70", "add eax, 2", "0x100352a0"], ["0x10014c73", "or cl, cl", "0x100352a3"], ["0x10014c75", "jne -0x1c", "0x100352a5"], ["0x10014c77", "xor eax, eax", "0x100352a7"], ["0x10014c79", "jmp 0x5", "0x100352a9"], ["0x10014c7b", "sbb eax, eax", "0x100352ab"], ["0x10014c7d", "sbb eax, -1", "0x100352ad"], ["0x10014c80", "test eax, eax", "0x100352b0"]]}, {"orig": [], "recomp": [["0x100352b2", "je 0x7"], ["0x100352b4", "xor al, al"], ["0x100352b6", "pop esi"], ["0x100352b7", "pop ebx"], ["0x100352b8", "ret 4"], ["0x100352bb", "mov al, 1"], ["0x100352bd", "pop esi"], ["0x100352be", "pop ebx"], ["0x100352bf", "ret 4"]]}]]]}, {"address": "0x10014ca0", "recomp": "0x10035030", "name": "LegoRaceActor::ParseAction", "matching": 0.0, "stub": true}, {"address": "0x10014cb0", "recomp": "0x10035040", "name": "LegoRaceActor::SetWorldSpeed", "matching": 0.0, "stub": true}, {"address": "0x10014cc0", "recomp": "0x10035050", "name": "LegoRaceActor::VTable0x68", "matching": 0.0, "stub": true}, {"address": "0x10014cd0", "recomp": "0x10035060", "name": "LegoRaceActor::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x10014ce0", "recomp": "0x10035070", "name": "LegoRaceActor::VTable0x90", "matching": 0.0, "stub": true}, {"address": "0x10014cf0", "recomp": "0x10035080", "name": "LegoRaceActor::VTable0x94", "matching": 0.0, "stub": true}, {"address": "0x10014d00", "recomp": "0x1001c190", "name": "LegoState::Playlist::Next", "matching": 0.9230769230769231, "diff": [["@@ -0x10014d00,18 +0x1001c190,18 @@", [{"both": [["0x10014d00", "sub esp, 4", "0x1001c190"], ["0x10014d03", "push esi", "0x1001c193"], ["0x10014d04", "push edi", "0x1001c194"], ["0x10014d05", "movsx eax, word ptr [ecx + 6]", "0x1001c195"], ["0x10014d09", "mov esi, ecx", "0x1001c199"], ["0x10014d0b", "cmp eax, 3", "0x1001c19b"], ["0x10014d0e", "ja 0xa4", "0x1001c19e"]]}, {"orig": [["0x10014d14", "jmp dword ptr [eax*4 + 0x10014dc4]"]], "recomp": [["0x1001c1a4", "jmp dword ptr [eax*4 + 0x1001c254]"]]}, {"both": [["0x10014d1b", "mov di, word ptr [esi + 8]", "0x1001c1ab"], ["0x10014d1f", "mov eax, dword ptr [esi]", "0x1001c1af"], ["0x10014d21", "movsx edx, di", "0x1001c1b1"], ["0x10014d24", "movsx ecx, word ptr [esi + 4]", "0x1001c1b4"], ["0x10014d28", "mov eax, dword ptr [eax + edx*4]", "0x1001c1b8"], ["0x10014d2b", "sub edx, ecx", "0x1001c1bb"], ["0x10014d2d", "cmp edx, -1", "0x1001c1bd"], ["0x10014d30", "jne 0xc", "0x1001c1c0"], ["0x10014d32", "mov word ptr [esi + 8], 0", "0x1001c1c2"], ["0x10014d38", "pop edi", "0x1001c1c8"]]}]], ["@@ -0x10014db2,15 +0x1001c242,18 @@", [{"both": [["0x10014db2", "pop edi", "0x1001c242"], ["0x10014db3", "pop esi", "0x1001c243"], ["0x10014db4", "add esp, 4", "0x1001c244"], ["0x10014db7", "ret ", "0x1001c247"], ["0x10014db8", "mov eax, dword ptr [esp + 8]", "0x1001c248"], ["0x10014dbc", "pop edi", "0x1001c24c"], ["0x10014dbd", "pop esi", "0x1001c24d"], ["0x10014dbe", "add esp, 4", "0x1001c24e"], ["0x10014dc1", "ret ", "0x1001c251"], ["0x10014dc2", "mov edi, edi", "0x1001c252"]]}, {"orig": [["0x10014dc4", "sbb ecx, dword ptr [ebp + 1]"], ["0x10014dc7", "adc byte ptr [edx + 0x4d], cl"]], "recomp": [["0x1001c254", "stosd dword ptr es:[edi], eax"], ["0x1001c255", "rol dword ptr [ecx], 0x10"], ["0x1001c258", "fcmovb st(0), st(1)"]]}, {"both": [["0x10014dca", "add dword ptr [eax], edx", "0x1001c25a"]]}, {"orig": [["0x10014dcc", "imul ecx, dword ptr [ebp + 1], 0x10"], ["0x10014dd0", "mov dword ptr [ebp + 1], ecx"]], "recomp": [["0x1001c25c", "sti "], ["0x1001c25d", "rol dword ptr [ecx], 0x10"], ["0x1001c260", "sbb edx, eax"], ["0x1001c262", "add dword ptr [eax], edx"]]}]]]}, {"address": "0x10014de0", "recomp": "0x1001c270", "name": "LegoState::Playlist::Contains", "matching": 1.0, "effective": true, "diff": [["@@ -0x10014de0,20 +0x1001c270,20 @@", [{"both": [["0x10014de0", "push esi", "0x1001c270"], ["0x10014de1", "push edi", "0x1001c271"], ["0x10014de2", "xor si, si", "0x1001c272"], ["0x10014de5", "mov di, word ptr [ecx + 4]", "0x1001c275"], ["0x10014de9", "cmp di, si", "0x1001c279"], ["0x10014dec", "jle 0x15", "0x1001c27c"]]}, {"orig": [["0x10014dee", "mov eax, dword ptr [ecx]"], ["0x10014df0", "mov ecx, dword ptr [esp + 0xc]"]], "recomp": [["0x1001c27e", "mov ecx, dword ptr [ecx]"], ["0x1001c280", "mov eax, dword ptr [esp + 0xc]"]]}, {"both": [["0x10014df4", "movsx edx, si", "0x1001c284"]]}, {"orig": [["0x10014df7", "cmp dword ptr [eax + edx*4], ecx"]], "recomp": [["0x1001c287", "cmp dword ptr [ecx + edx*4], eax"]]}, {"both": [["0x10014dfa", "je 0xe", "0x1001c28a"], ["0x10014dfc", "inc si", "0x1001c28c"], ["0x10014dfe", "cmp si, di", "0x1001c28e"], ["0x10014e01", "jl -0xf", "0x1001c291"], ["0x10014e03", "xor al, al", "0x1001c293"], ["0x10014e05", "pop edi", "0x1001c295"], ["0x10014e06", "pop esi", "0x1001c296"], ["0x10014e07", "ret 4", "0x1001c297"], ["0x10014e0a", "mov al, 1", "0x1001c29a"], ["0x10014e0c", "pop edi", "0x1001c29c"]]}]]]}, {"address": "0x10014e20", "recomp": "0x1000ccb0", "name": "BuildingEntity::BuildingEntity", "matching": 1.0, "diff": []}, {"address": "0x10014f20", "recomp": "0x1000cdb0", "name": "BuildingEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10014f30", "recomp": "0x1000cdc0", "name": "BuildingEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x10015010", "recomp": "0x1000cea0", "name": "BuildingEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10015030", "recomp": "0x1000cec0", "name": "BuildingEntity::~BuildingEntity", "matching": 1.0, "diff": []}, {"address": "0x100150a0", "recomp": "0x1000cf30", "name": "BuildingEntity::Notify", "matching": 1.0, "diff": []}, {"address": "0x100150c0", "recomp": "0x1001b0e0", "name": "InfoCenterEntity::VTable0x50", "matching": 0.0, "stub": true}, {"address": "0x100151d0", "recomp": "0x1001ae80", "name": "GasStationEntity::VTable0x50", "matching": 0.0, "stub": true}, {"address": "0x10015270", "recomp": "0x1001afb0", "name": "HospitalEntity::VTable0x50", "matching": 0.0, "stub": true}, {"address": "0x10015310", "recomp": "0x10034460", "name": "PoliceEntity::VTable0x50", "matching": 1.0, "effective": true, "diff": [["@@ -0x10015318,27 +0x10034468,27 @@", [{"both": [["0x10015318", "test al, al", "0x10034468"], ["0x1001531a", "je 0x83", "0x1003446a"], ["0x10015320", "push 'Act1State' (STRING)", "0x10034470"], ["0x10015325", "call GameState (FUNCTION)", "0x10034475"], ["0x1001532a", "mov ecx, eax", "0x1003447a"], ["0x1001532c", "call LegoGameState::GetState (FUNCTION)", "0x1003447c"], ["0x10015331", "cmp dword ptr [eax + 0x18], 0xa", "0x10034481"], ["0x10015335", "je 0x6c", "0x10034485"], ["0x10015337", "mov dword ptr [eax + 0x18], 0", "0x10034487"], ["0x1001533e", "call CurrentActor (FUNCTION)", "0x1003448e"]]}, {"orig": [["0x10015343", "mov esi, dword ptr [eax]"]], "recomp": [["0x10034493", "mov edi, dword ptr [eax]"]]}, {"both": [["0x10015345", "mov ebx, eax", "0x10034495"], ["0x10015347", "call GameState (FUNCTION)", "0x10034497"]]}, {"orig": [["0x1001534c", "mov edi, eax"]], "recomp": [["0x1003449c", "mov esi, eax"]]}, {"both": [["0x1001534e", "mov ecx, ebx", "0x1003449e"]]}, {"orig": [["0x10015350", "call dword ptr [esi + 0x60]"], ["0x10015353", "cmp al, byte ptr [edi + 0xc]"]], "recomp": [["0x100344a0", "call dword ptr [edi + 0x60]"], ["0x100344a3", "cmp al, byte ptr [esi + 0xc]"]]}, {"both": [["0x10015356", "je 0xf", "0x100344a6"], ["0x10015358", "call CurrentActor (FUNCTION)", "0x100344a8"], ["0x1001535d", "mov ecx, eax", "0x100344ad"], ["0x1001535f", "mov eax, dword ptr [eax]", "0x100344af"], ["0x10015361", "call dword ptr [eax + 0xe4]", "0x100344b1"], ["0x10015367", "push 0", "0x100344b7"], ["0x10015369", "mov eax, dword ptr [g_isleScript (DATA)]", "0x100344b9"], ["0x1001536e", "push eax", "0x100344be"], ["0x1001536f", "call FindWorld (FUNCTION)", "0x100344bf"], ["0x10015374", "add esp, 8", "0x100344c4"]]}]]]}, {"address": "0x100153b0", "recomp": "0x1001ab30", "name": "BeachHouseEntity::VTable0x50", "matching": 0.0, "stub": true}, {"address": "0x10015450", "recomp": "0x1001ad50", "name": "RaceStandsEntity::VTable0x50", "matching": 0.0, "stub": true}, {"address": "0x100154f0", "recomp": "0x1001b210", "name": "JailEntity::VTable0x50", "matching": 0.0, "stub": true}, {"address": "0x10015700", "recomp": "0x1001d550", "name": "Lego", "matching": 1.0, "diff": []}, {"address": "0x10015710", "recomp": "0x1001d560", "name": "SoundManager", "matching": 1.0, "diff": []}, {"address": "0x10015720", "recomp": "0x1001d570", "name": "VideoManager", "matching": 1.0, "diff": []}, {"address": "0x10015730", "recomp": "0x1001d580", "name": "BackgroundAudioManager", "matching": 1.0, "diff": []}, {"address": "0x10015740", "recomp": "0x1001d590", "name": "InputManager", "matching": 1.0, "diff": []}, {"address": "0x10015750", "recomp": "0x1001d5a0", "name": "ControlManager", "matching": 1.0, "diff": []}, {"address": "0x10015760", "recomp": "0x1001d5b0", "name": "GameState", "matching": 1.0, "diff": []}, {"address": "0x10015770", "recomp": "0x1001d5c0", "name": "AnimationManager", "matching": 1.0, "diff": []}, {"address": "0x10015780", "recomp": "0x1001d5d0", "name": "NavController", "matching": 1.0, "diff": []}, {"address": "0x10015790", "recomp": "0x1001d5e0", "name": "CurrentActor", "matching": 1.0, "diff": []}, {"address": "0x100157a0", "recomp": "0x1001d5f0", "name": "CurrentWorld", "matching": 1.0, "diff": []}, {"address": "0x100157b0", "recomp": "0x1001d600", "name": "CharacterManager", "matching": 1.0, "diff": []}, {"address": "0x100157c0", "recomp": "0x1001d610", "name": "GetViewManager", "matching": 1.0, "diff": []}, {"address": "0x100157e0", "recomp": "0x1001d630", "name": "PlantManager", "matching": 1.0, "diff": []}, {"address": "0x100157f0", "recomp": "0x1001d640", "name": "BuildingManager", "matching": 1.0, "diff": []}, {"address": "0x10015800", "recomp": "0x1001d650", "name": "TextureContainer", "matching": 1.0, "diff": []}, {"address": "0x10015810", "recomp": "0x1001d660", "name": "GetViewLODListManager", "matching": 1.0, "diff": []}, {"address": "0x10015820", "recomp": "0x1001d670", "name": "FUN_10015820", "matching": 1.0, "diff": []}, {"address": "0x10015840", "recomp": "0x1001d690", "name": "FindROI", "matching": 1.0, "diff": []}, {"address": "0x10015860", "recomp": "0x1001d6b0", "name": "SetROIVisible", "matching": 1.0, "diff": []}, {"address": "0x10015880", "recomp": "0x1001d6d0", "name": "SetCurrentActor", "matching": 1.0, "diff": []}, {"address": "0x100158b0", "recomp": "0x1001d6e0", "name": "DeleteAction", "matching": 1.0, "diff": []}, {"address": "0x100158c0", "recomp": "0x1001d6f0", "name": "FindWorld", "matching": 1.0, "diff": []}, {"address": "0x100158e0", "recomp": "0x1001d710", "name": "GetCurrentAction", "matching": 1.0, "diff": []}, {"address": "0x100158f0", "recomp": "0x1001d720", "name": "SetCurrentWorld", "matching": 1.0, "diff": []}, {"address": "0x10015900", "recomp": "0x1001d730", "name": "TransitionManager", "matching": 1.0, "diff": []}, {"address": "0x10015910", "recomp": "0x1001d740", "name": "PlayMusic", "matching": 1.0, "diff": []}, {"address": "0x100159c0", "recomp": "0x1001d7f0", "name": "SetIsWorldActive", "matching": 1.0, "diff": []}, {"address": "0x100159e0", "recomp": "0x1001d810", "name": "DeleteObjects", "matching": 1.0, "diff": []}, {"address": "0x10015aa0", "recomp": "0x10034be0", "name": "LegoRace::LegoRace", "matching": 1.0, "diff": []}, {"address": "0x10015b70", "recomp": "0x10034df0", "name": "LegoRace::VTable0x70", "matching": 1.0, "diff": []}, {"address": "0x10015b80", "recomp": "0x10034e00", "name": "LegoRace::VTable0x74", "matching": 1.0, "diff": []}, {"address": "0x10015b90", "recomp": "0x10034e10", "name": "LegoRace::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x10015ba0", "recomp": "0x10034cb0", "name": "LegoRace::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10015bb0", "recomp": "0x10034cc0", "name": "LegoRace::IsA", "matching": 1.0, "diff": []}, {"address": "0x10015cc0", "recomp": "0x10034dd0", "name": "LegoRace::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10015ce0", "recomp": "0x10034e20", "name": "LegoRace::Create", "matching": 0.0, "stub": true}, {"address": "0x10015d40", "recomp": "0x10034e30", "name": "LegoRace::~LegoRace", "matching": 0.0, "stub": true}, {"address": "0x10015e00", "recomp": "0x10034e80", "name": "LegoRace::Notify", "matching": 0.0, "stub": true}, {"address": "0x10015ed0", "recomp": "0x10034e90", "name": "LegoRace::Enable", "matching": 0.0, "stub": true}, {"address": "0x10015f30", "recomp": "0x10035ed0", "name": "RaceState::RaceState", "matching": 0.0, "stub": true}, {"address": "0x10016010", "recomp": "0x10035f50", "name": "RaceState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10016020", "recomp": "0x10035f60", "name": "RaceState::IsA", "matching": 1.0, "diff": []}, {"address": "0x100160d0", "recomp": "0x10036010", "name": "RaceState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10016140", "recomp": "0x10036080", "name": "RaceState::VTable0x1c", "matching": 0.0, "stub": true}, {"address": "0x10016280", "recomp": "0x10036090", "name": "RaceState::GetState", "matching": 1.0, "diff": []}, {"address": "0x100162c0", "recomp": "0x10034b50", "name": "JetskiRace::Create", "matching": 0.0, "stub": true}, {"address": "0x100163b0", "recomp": "0x10034b60", "name": "JetskiRace::ReadyWorld", "matching": 0.0, "stub": true}, {"address": "0x10016520", "recomp": "0x10034b70", "name": "JetskiRace::VTable0x74", "matching": 0.0, "stub": true}, {"address": "0x100165a0", "recomp": "0x10034b80", "name": "JetskiRace::VTable0x6c", "matching": 0.0, "stub": true}, {"address": "0x100166a0", "recomp": "0x10034b90", "name": "JetskiRace::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x10016a10", "recomp": "0x10034ba0", "name": "JetskiRace::VTable0x64", "matching": 0.0, "stub": true}, {"address": "0x10016a90", "recomp": "0x10034890", "name": "CarRace::CarRace", "matching": 1.0, "diff": []}, {"address": "0x10016b20", "recomp": "0x10034920", "name": "CarRace::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10016b30", "recomp": "0x10034930", "name": "CarRace::IsA", "matching": 1.0, "diff": []}, {"address": "0x10016c70", "recomp": "0x10034a70", "name": "CarRace::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10016ce0", "recomp": "0x10034ae0", "name": "CarRace::Create", "matching": 0.0, "stub": true}, {"address": "0x10016dd0", "recomp": "0x10034af0", "name": "CarRace::ReadyWorld", "matching": 0.0, "stub": true}, {"address": "0x10016f60", "recomp": "0x10034b00", "name": "CarRace::VTable0x74", "matching": 0.0, "stub": true}, {"address": "0x100170e0", "recomp": "0x10034b10", "name": "CarRace::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x10017650", "recomp": "0x10034b20", "name": "CarRace::VTable0x6c", "matching": 0.0, "stub": true}, {"address": "0x100177e0", "recomp": "0x10034b30", "name": "CarRace::VTable0x78", "matching": 0.0, "stub": true}, {"address": "0x10017900", "recomp": "0x10034b40", "name": "CarRace::VTable0x64", "matching": 0.0, "stub": true}, {"address": "0x100179c0", "recomp": "0x10008080", "name": "Pizzeria::Create", "matching": 0.0, "stub": true}, {"address": "0x10017af0", "recomp": "0x10034290", "name": "PizzeriaState::PizzeriaState", "matching": 0.0, "stub": true}, {"address": "0x10017c00", "recomp": "0x1000d5b0", "name": "LegoState::Playlist::Playlist", "matching": 1.0, "diff": []}, {"address": "0x10017c20", "recomp": "0x10034320", "name": "PizzeriaState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10017c30", "recomp": "0x10034330", "name": "PizzeriaState::IsA", "matching": 1.0, "diff": []}, {"address": "0x10017ce0", "recomp": "0x100343e0", "name": "PizzeriaState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10017da0", "recomp": "0x10034450", "name": "PizzeriaState::VTable0x1c", "matching": 0.0, "stub": true}, {"address": "0x10017e90", "recomp": "0x1003dd60", "name": "ElevatorBottom::ElevatorBottom", "matching": 1.0, "diff": []}, {"address": "0x10017f10", "recomp": "0x1003df00", "name": "ElevatorBottom::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x10017f20", "recomp": "0x1003dde0", "name": "ElevatorBottom::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10017f30", "recomp": "0x1003ddf0", "name": "ElevatorBottom::IsA", "matching": 1.0, "diff": []}, {"address": "0x10018040", "recomp": "0x1003df10", "name": "ElevatorBottom::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10018060", "recomp": "0x1003df30", "name": "ElevatorBottom::~ElevatorBottom", "matching": 1.0, "diff": []}, {"address": "0x100180f0", "recomp": "0x1003dfc0", "name": "ElevatorBottom::Create", "matching": 1.0, "diff": []}, {"address": "0x10018150", "recomp": "0x1003e020", "name": "ElevatorBottom::Notify", "matching": 1.0, "diff": []}, {"address": "0x100181b0", "recomp": "0x1003e080", "name": "ElevatorBottom::ReadyWorld", "matching": 1.0, "diff": []}, {"address": "0x100181d0", "recomp": "0x1003e0a0", "name": "ElevatorBottom::HandleClick", "matching": 1.0, "diff": []}, {"address": "0x100182c0", "recomp": "0x1003e190", "name": "ElevatorBottom::Enable", "matching": 1.0, "diff": []}, {"address": "0x10018310", "recomp": "0x1003e1e0", "name": "ElevatorBottom::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x10018340", "recomp": "0x100095a0", "name": "LegoLoadCacheSoundPresenter::LegoLoadCacheSoundPresenter", "matching": 1.0, "diff": []}, {"address": "0x10018450", "recomp": "0x1000a150", "name": "LegoLoadCacheSoundPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10018460", "recomp": "0x1000a160", "name": "LegoLoadCacheSoundPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10018480", "recomp": "0x1000a180", "name": "LegoLoadCacheSoundPresenter::~LegoLoadCacheSoundPresenter", "matching": 1.0, "diff": []}, {"address": "0x100184e0", "recomp": "0x1000a1e0", "name": "LegoLoadCacheSoundPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100184f0", "recomp": "0x1000a1f0", "name": "LegoLoadCacheSoundPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10018510", "recomp": "0x1000a210", "name": "LegoLoadCacheSoundPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x100185f0", "recomp": "0x1000a2f0", "name": "LegoLoadCacheSoundPresenter::StreamingTickle", "matching": 0.0, "stub": true}, {"address": "0x100186f0", "recomp": "0x1000a300", "name": "LegoLoadCacheSoundPresenter::DoneTickle", "matching": 1.0, "diff": []}, {"address": "0x10018700", "recomp": "0x1000a310", "name": "LegoLoadCacheSoundPresenter::PutData", "matching": 1.0, "effective": true, "diff": [["@@ -0x10018700,21 +0x1000a310,21 @@", [{"both": [["0x10018700", "push esi", "0x1000a310"], ["0x10018701", "push edi", "0x1000a311"]]}, {"orig": [["0x10018702", "lea edi, [ecx + 0x20]"], ["0x10018705", "mov esi, ecx"], ["0x10018707", "mov ecx, edi"]], "recomp": [["0x1000a312", "lea esi, [ecx + 0x20]"], ["0x1000a315", "mov edi, ecx"], ["0x1000a317", "mov ecx, esi"]]}, {"both": [["0x10018709", "call MxCriticalSection::Enter (FUNCTION)", "0x1000a319"]]}, {"orig": [["0x1001870e", "cmp dword ptr [esi + 8], 6"]], "recomp": [["0x1000a31e", "cmp dword ptr [edi + 8], 6"]]}, {"both": [["0x10018712", "jne 0x18", "0x1000a322"], ["0x10018714", "call SoundManager (FUNCTION)", "0x1000a324"]]}, {"orig": [["0x10018719", "mov ecx, dword ptr [esi + 0x6c]"]], "recomp": [["0x1000a329", "mov ecx, dword ptr [edi + 0x6c]"]]}, {"both": [["0x1001871c", "push ecx", "0x1000a32c"], ["0x1001871d", "mov ecx, dword ptr [eax + 0x40]", "0x1000a32d"], ["0x10018720", "call LegoUnknown100d6b4c::FUN_1003d290 (FUNCTION)", "0x1000a330"]]}, {"orig": [["0x10018725", "mov byte ptr [esi + 0x7c], 1"], ["0x10018729", "mov dword ptr [esi + 0x6c], eax"], ["0x1001872c", "mov ecx, edi"]], "recomp": [["0x1000a335", "mov byte ptr [edi + 0x7c], 1"], ["0x1000a339", "mov dword ptr [edi + 0x6c], eax"], ["0x1000a33c", "mov ecx, esi"]]}, {"both": [["0x1001872e", "call MxCriticalSection::Leave (FUNCTION)", "0x1000a33e"], ["0x10018733", "xor eax, eax", "0x1000a343"], ["0x10018735", "pop edi", "0x1000a345"], ["0x10018736", "pop esi", "0x1000a346"], ["0x10018737", "ret ", "0x1000a347"]]}]]]}, {"address": "0x100187e0", "recomp": "0x10003e10", "name": "Act2Actor::Act2Actor", "matching": 0.0, "stub": true}, {"address": "0x1001a090", "recomp": "0x10003f40", "name": "Act2Actor::`scalar deleting destructor'", "matching": 0.8, "diff": [["@@ -0x1001a090,20 +0x10003f40,10 @@", [{"orig": [["0x1001a090", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a093", "jmp 0x8"], ["0x1001a098", "int3 "], ["0x1001a099", "int3 "], ["0x1001a09a", "int3 "], ["0x1001a09b", "int3 "], ["0x1001a09c", "int3 "], ["0x1001a09d", "int3 "], ["0x1001a09e", "int3 "], ["0x1001a09f", "int3 "]], "recomp": []}, {"both": [["0x1001a0a0", "mov eax, dword ptr fs:[0]", "0x10003f40"], ["0x1001a0a6", "push ebp", "0x10003f46"], ["0x1001a0a7", "mov ebp, esp", "0x10003f47"], ["0x1001a0a9", "push -1", "0x10003f49"], ["0x1001a0ab", "push <OFFSET1>", "0x10003f4b"], ["0x1001a0b0", "push eax", "0x10003f50"], ["0x1001a0b1", "mov dword ptr fs:[0], esp", "0x10003f51"], ["0x1001a0b8", "sub esp, 4", "0x10003f58"], ["0x1001a0bb", "mov dword ptr [ebp - 4], 0xffffffff", "0x10003f5b"], ["0x1001a0c2", "mov dword ptr [ebp - 0x10], ecx", "0x10003f62"]]}]], ["@@ -0x1001a0df,10 +0x10003f7f,14 @@", [{"both": [["0x1001a0df", "call ??3@YAXPAX@Z (FUNCTION)", "0x10003f7f"], ["0x1001a0e4", "add esp, 4", "0x10003f84"], ["0x1001a0e7", "mov eax, dword ptr [ebp - 0x10]", "0x10003f87"], ["0x1001a0ea", "mov ecx, dword ptr [ebp - 0xc]", "0x10003f8a"], ["0x1001a0ed", "mov esp, ebp", "0x10003f8d"], ["0x1001a0ef", "mov dword ptr fs:[0], ecx", "0x10003f8f"], ["0x1001a0f6", "sub eax, 0x54", "0x10003f96"], ["0x1001a0f9", "pop ebp", "0x10003f99"], ["0x1001a0fa", "ret 4", "0x10003f9a"], ["0x1001a0fd", "mov eax, <OFFSET5>", "0x10003f9d"]]}, {"orig": [], "recomp": [["0x10003fa2", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10003fa7", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10003faa", "sub ecx, 0x34"], ["0x10003fad", "jmp LegoAnimActor::~LegoAnimActor (FUNCTION)"]]}]]]}, {"address": "0x1001a130", "recomp": "0x10003c40", "name": "Act3Shark::IsA", "matching": 0.025559105431309903, "diff": [["@@ -0x1001a130,163 +0x10003c40,150 @@", [{"orig": [["0x1001a130", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a133", "sub ecx, 0x34"], ["0x1001a136", "jmp -0xa57b"], ["0x1001a13b", "int3 "], ["0x1001a13c", "int3 "], ["0x1001a13d", "int3 "], ["0x1001a13e", "int3 "], ["0x1001a13f", "int3 "], ["0x1001a140", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a143", "sub ecx, 0x34"], ["0x1001a146", "jmp 0x27d5"], ["0x1001a14b", "int3 "], ["0x1001a14c", "int3 "], ["0x1001a14d", "int3 "], ["0x1001a14e", "int3 "], ["0x1001a14f", "int3 "], ["0x1001a150", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a153", "jmp -0x1818"], ["0x1001a158", "int3 "], ["0x1001a159", "int3 "], ["0x1001a15a", "int3 "], ["0x1001a15b", "int3 "], ["0x1001a15c", "int3 "], ["0x1001a15d", "int3 "], ["0x1001a15e", "int3 "], ["0x1001a15f", "int3 "], ["0x1001a160", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a163", "jmp -0xee8"], ["0x1001a168", "int3 "], ["0x1001a169", "int3 "], ["0x1001a16a", "int3 "], ["0x1001a16b", "int3 "], ["0x1001a16c", "int3 "], ["0x1001a16d", "int3 "], ["0x1001a16e", "int3 "], ["0x1001a16f", "int3 "], ["0x1001a170", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a173", "jmp 0x8"], ["0x1001a178", "int3 "], ["0x1001a179", "int3 "], ["0x1001a17a", "int3 "], ["0x1001a17b", "int3 "], ["0x1001a17c", "int3 "], ["0x1001a17d", "int3 "], ["0x1001a17e", "int3 "], ["0x1001a17f", "int3 "], ["0x1001a180", "cmp byte ptr [ecx - 0x35], 0"], ["0x1001a184", "je 0x5"]], "recomp": [["0x10003c40", "mov edx, dword ptr [esp + 4]"], ["0x10003c44", "push ebx"], ["0x10003c45", "push esi"], ["0x10003c46", "mov eax, edx"], ["0x10003c48", "mov esi, 'Act3Shark' (STRING)"], ["0x10003c4d", "mov bl, byte ptr [eax]"], ["0x10003c4f", "cmp bl, byte ptr [esi]"], ["0x10003c51", "jne 0x1a"], ["0x10003c53", "or bl, bl"], ["0x10003c55", "je 0x12"], ["0x10003c57", "mov bl, byte ptr [eax + 1]"], ["0x10003c5a", "cmp bl, byte ptr [esi + 1]"], ["0x10003c5d", "jne 0xe"], ["0x10003c5f", "add eax, 2"], ["0x10003c62", "add esi, 2"], ["0x10003c65", "or bl, bl"], ["0x10003c67", "jne -0x1c"]]}, {"both": [["0x1001a186", "xor eax, eax", "0x10003c69"]]}, {"orig": [["0x1001a188", "ret 0xc"], ["0x1001a18b", "mov eax, dword ptr [esp + 0xc]"], ["0x1001a18f", "mov edx, dword ptr [esp + 8]"], ["0x1001a193", "push eax"], ["0x1001a194", "push edx"], ["0x1001a195", "mov eax, dword ptr [esp + 0xc]"], ["0x1001a199", "mov edx, dword ptr [ecx - 0x50]"], ["0x1001a19c", "push eax"], ["0x1001a19d", "mov eax, dword ptr [edx + 4]"], ["0x1001a1a0", "lea ecx, [eax + ecx - 0x50]"], ["0x1001a1a4", "call LegoPathActor::VTable0x68 (FUNCTION)"], ["0x1001a1a9", "ret 0xc"], ["0x1001a1ac", "int3 "], ["0x1001a1ad", "int3 "], ["0x1001a1ae", "int3 "], ["0x1001a1af", "int3 "], ["0x1001a1b0", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a1b3", "jmp -0x1588"], ["0x1001a1b8", "int3 "], ["0x1001a1b9", "int3 "], ["0x1001a1ba", "int3 "], ["0x1001a1bb", "int3 "], ["0x1001a1bc", "int3 "], ["0x1001a1bd", "int3 "], ["0x1001a1be", "int3 "], ["0x1001a1bf", "int3 "], ["0x1001a1c0", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a1c3", "sub ecx, 0x34"], ["0x1001a1c6", "jmp 0x2075"], ["0x1001a1cb", "int3 "], ["0x1001a1cc", "int3 "], ["0x1001a1cd", "int3 "], ["0x1001a1ce", "int3 "], ["0x1001a1cf", "int3 "], ["0x1001a1d0", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a1d3", "jmp -0x17e8"], ["0x1001a1d8", "int3 "], ["0x1001a1d9", "int3 "], ["0x1001a1da", "int3 "], ["0x1001a1db", "int3 "], ["0x1001a1dc", "int3 "], ["0x1001a1dd", "int3 "], ["0x1001a1de", "int3 "], ["0x1001a1df", "int3 "], ["0x1001a1e0", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a1e3", "jmp -0x17c8"], ["0x1001a1e8", "int3 "], ["0x1001a1e9", "int3 "], ["0x1001a1ea", "int3 "], ["0x1001a1eb", "int3 "], ["0x1001a1ec", "int3 "], ["0x1001a1ed", "int3 "], ["0x1001a1ee", "int3 "], ["0x1001a1ef", "int3 "], ["0x1001a1f0", "sub ecx, dword ptr [ecx - 4]"], ["0x1001a1f3", "jmp -0xc58"], ["0x1001a1f8", "int3 "], ["0x1001a1f9", "int3 "], ["0x1001a1fa", "int3 "], ["0x1001a1fb", "int3 "], ["0x1001a1fc", "int3 "], ["0x1001a1fd", "int3 "], ["0x1001a1fe", "int3 "], ["0x1001a1ff", "int3 "], ["0x1001a200", "mov eax, dword ptr fs:[0]"], ["0x1001a206", "push ebp"], ["0x1001a207", "mov ebp, esp"], ["0x1001a209", "push -1"], ["0x1001a20b", "push <OFFSET2>"], ["0x1001a210", "push eax"], ["0x1001a211", "mov dword ptr fs:[0], esp"], ["0x1001a218", "sub esp, 4"], ["0x1001a21b", "push esi"], ["0x1001a21c", "mov dword ptr [ebp - 0x10], ecx"], ["0x1001a21f", "mov esi, ecx"], ["0x1001a221", "call LegoPathActor::LegoPathActor (FUNCTION)"]], "recomp": [["0x10003c6b", "jmp 0x5"], ["0x10003c6d", "sbb eax, eax"], ["0x10003c6f", "sbb eax, -1"], ["0x10003c72", "test eax, eax"], ["0x10003c74", "je 0x131"], ["0x10003c7a", "mov eax, edx"], ["0x10003c7c", "mov ecx, 'LegoAnimActor' (STRING)"], ["0x10003c81", "mov bl, byte ptr [eax]"], ["0x10003c83", "cmp bl, byte ptr [ecx]"], ["0x10003c85", "jne 0x1a"], ["0x10003c87", "or bl, bl"], ["0x10003c89", "je 0x12"], ["0x10003c8b", "mov bl, byte ptr [eax + 1]"], ["0x10003c8e", "cmp bl, byte ptr [ecx + 1]"], ["0x10003c91", "jne 0xe"], ["0x10003c93", "add eax, 2"], ["0x10003c96", "add ecx, 2"], ["0x10003c99", "or bl, bl"], ["0x10003c9b", "jne -0x1c"]]}, {"both": [["0x1001a226", "xor eax, eax", "0x10003c9d"]]}, {"orig": [["0x1001a228", "mov dword ptr [ebp - 4], eax"], ["0x1001a22b", "mov dword ptr [esi], IslePathActor::`vftable' (VTABLE)"], ["0x1001a231", "mov dword ptr [esi + 0x154], eax"], ["0x1001a237", "mov dword ptr [esi + 0x13c], 0x40c00000"], ["0x1001a241", "mov dword ptr [esi + 0x15c], 0x3f800000"], ["0x1001a24b", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001a252", "mov ecx, dword ptr [ebp - 0xc]"], ["0x1001a255", "mov dword ptr [esi + 0x158], eax"], ["0x1001a25b", "mov dword ptr fs:[0], ecx"], ["0x1001a262", "mov eax, esi"]], "recomp": [["0x10003c9f", "jmp 0x5"], ["0x10003ca1", "sbb eax, eax"], ["0x10003ca3", "sbb eax, -1"], ["0x10003ca6", "test eax, eax"], ["0x10003ca8", "je 0xfd"], ["0x10003cae", "mov eax, edx"], ["0x10003cb0", "mov ecx, 'LegoPathActor' (STRING)"], ["0x10003cb5", "mov bl, byte ptr [eax]"], ["0x10003cb7", "cmp bl, byte ptr [ecx]"], ["0x10003cb9", "jne 0x1a"], ["0x10003cbb", "or bl, bl"], ["0x10003cbd", "je 0x12"], ["0x10003cbf", "mov bl, byte ptr [eax + 1]"], ["0x10003cc2", "cmp bl, byte ptr [ecx + 1]"], ["0x10003cc5", "jne 0xe"], ["0x10003cc7", "add eax, 2"], ["0x10003cca", "add ecx, 2"], ["0x10003ccd", "or bl, bl"], ["0x10003ccf", "jne -0x1c"], ["0x10003cd1", "xor eax, eax"], ["0x10003cd3", "jmp 0x5"], ["0x10003cd5", "sbb eax, eax"], ["0x10003cd7", "sbb eax, -1"], ["0x10003cda", "test eax, eax"], ["0x10003cdc", "je 0xc9"], ["0x10003ce2", "mov eax, edx"], ["0x10003ce4", "mov ecx, 'LegoActor' (STRING)"], ["0x10003ce9", "mov bl, byte ptr [eax]"], ["0x10003ceb", "cmp bl, byte ptr [ecx]"], ["0x10003ced", "jne 0x1a"], ["0x10003cef", "or bl, bl"], ["0x10003cf1", "je 0x12"], ["0x10003cf3", "mov bl, byte ptr [eax + 1]"], ["0x10003cf6", "cmp bl, byte ptr [ecx + 1]"], ["0x10003cf9", "jne 0xe"], ["0x10003cfb", "add eax, 2"], ["0x10003cfe", "add ecx, 2"], ["0x10003d01", "or bl, bl"], ["0x10003d03", "jne -0x1c"], ["0x10003d05", "xor eax, eax"], ["0x10003d07", "jmp 0x5"], ["0x10003d09", "sbb eax, eax"], ["0x10003d0b", "sbb eax, -1"], ["0x10003d0e", "test eax, eax"], ["0x10003d10", "je 0x95"], ["0x10003d16", "mov eax, edx"], ["0x10003d18", "mov ecx, 'LegoEntity' (STRING)"], ["0x10003d1d", "mov bl, byte ptr [eax]"], ["0x10003d1f", "cmp bl, byte ptr [ecx]"], ["0x10003d21", "jne 0x1a"], ["0x10003d23", "or bl, bl"], ["0x10003d25", "je 0x12"], ["0x10003d27", "mov bl, byte ptr [eax + 1]"], ["0x10003d2a", "cmp bl, byte ptr [ecx + 1]"], ["0x10003d2d", "jne 0xe"], ["0x10003d2f", "add eax, 2"], ["0x10003d32", "add ecx, 2"], ["0x10003d35", "or bl, bl"], ["0x10003d37", "jne -0x1c"], ["0x10003d39", "xor eax, eax"], ["0x10003d3b", "jmp 0x5"], ["0x10003d3d", "sbb eax, eax"], ["0x10003d3f", "sbb eax, -1"], ["0x10003d42", "test eax, eax"], ["0x10003d44", "je 0x65"], ["0x10003d46", "mov ecx, edx"], ["0x10003d48", "mov eax, 'MxEntity' (STRING)"], ["0x10003d4d", "mov bl, byte ptr [ecx]"], ["0x10003d4f", "cmp bl, byte ptr [eax]"], ["0x10003d51", "jne 0x1a"], ["0x10003d53", "or bl, bl"], ["0x10003d55", "je 0x12"], ["0x10003d57", "mov bl, byte ptr [ecx + 1]"], ["0x10003d5a", "cmp bl, byte ptr [eax + 1]"], ["0x10003d5d", "jne 0xe"], ["0x10003d5f", "add ecx, 2"], ["0x10003d62", "add eax, 2"], ["0x10003d65", "or bl, bl"], ["0x10003d67", "jne -0x1c"], ["0x10003d69", "xor eax, eax"], ["0x10003d6b", "jmp 0x5"], ["0x10003d6d", "sbb eax, eax"], ["0x10003d6f", "sbb eax, -1"], ["0x10003d72", "test eax, eax"], ["0x10003d74", "je 0x35"], ["0x10003d76", "mov eax, 'MxCore' (STRING)"], ["0x10003d7b", "mov cl, byte ptr [edx]"], ["0x10003d7d", "cmp cl, byte ptr [eax]"], ["0x10003d7f", "jne 0x1a"], ["0x10003d81", "or cl, cl"], ["0x10003d83", "je 0x12"], ["0x10003d85", "mov cl, byte ptr [edx + 1]"], ["0x10003d88", "cmp cl, byte ptr [eax + 1]"], ["0x10003d8b", "jne 0xe"], ["0x10003d8d", "add edx, 2"], ["0x10003d90", "add eax, 2"], ["0x10003d93", "or cl, cl"], ["0x10003d95", "jne -0x1c"], ["0x10003d97", "xor eax, eax"], ["0x10003d99", "jmp 0x5"], ["0x10003d9b", "sbb eax, eax"], ["0x10003d9d", "sbb eax, -1"], ["0x10003da0", "test eax, eax"], ["0x10003da2", "je 0x7"], ["0x10003da4", "xor al, al"]]}, {"both": [["0x1001a264", "pop esi", "0x10003da6"]]}, {"orig": [["0x1001a265", "mov esp, ebp"], ["0x1001a267", "pop ebp"], ["0x1001a268", "ret "], ["0x1001a269", "mov eax, <OFFSET5>"], ["0x1001a26e", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1001a273", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1001a276", "jmp LegoPathActor::~LegoPathActor (FUNCTION)"], ["0x1001a27b", "int3 "], ["0x1001a27c", "int3 "], ["0x1001a27d", "int3 "], ["0x1001a27e", "int3 "], ["0x1001a27f", "int3 "], ["0x1001a280", "mov eax, dword ptr [esp + 4]"], ["0x1001a284", "add ecx, 0xc"], ["0x1001a287", "add eax, 0x20"], ["0x1001a28a", "push eax"], ["0x1001a28b", "mov edx, dword ptr [eax - 4]"], ["0x1001a28e", "mov dword ptr [ecx - 4], edx"], ["0x1001a291", "call MxAtomId::operator= (FUNCTION)"], ["0x1001a296", "xor eax, eax"]], "recomp": [["0x10003da7", "pop ebx"]]}, {"both": [["0x1001a298", "ret 4", "0x10003da8"]]}, {"orig": [["0x1001a29b", "int3 "], ["0x1001a29c", "int3 "], ["0x1001a29d", "int3 "], ["0x1001a29e", "int3 "], ["0x1001a29f", "int3 "]], "recomp": [["0x10003dab", "mov al, 1"], ["0x10003dad", "pop esi"], ["0x10003dae", "pop ebx"], ["0x10003daf", "ret 4"]]}]]]}, {"address": "0x1001a1c0", "recomp": "0x10003450", "name": "Act3Shark::VTable0x74", "matching": 0.0, "stub": true}, {"address": "0x1001a200", "recomp": "0x10006b60", "name": "IslePathActor::IslePathActor", "matching": 1.0, "diff": []}, {"address": "0x1001a280", "recomp": "0x10006be0", "name": "IslePathActor::Create", "matching": 1.0, "diff": []}, {"address": "0x1001a2a0", "recomp": "0x10006c00", "name": "IslePathActor::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1001a2c0", "recomp": "0x10006c20", "name": "IslePathActor::Notify", "matching": 0.7222222222222222, "diff": [["@@ -0x1001a2c0,20 +0x10006c20,20 @@", [{"both": [["0x1001a2c0", "push ebx", "0x10006c20"], ["0x1001a2c1", "xor eax, eax", "0x10006c21"], ["0x1001a2c3", "mov edx, dword ptr [esp + 8]", "0x10006c23"], ["0x1001a2c7", "push esi", "0x10006c27"], ["0x1001a2c8", "mov esi, dword ptr [edx + 4]", "0x10006c28"], ["0x1001a2cb", "cmp esi, 0x13", "0x10006c2b"], ["0x1001a2ce", "ja 0x4e", "0x10006c2e"], ["0x1001a2d0", "xor ebx, ebx", "0x10006c30"]]}, {"orig": [["0x1001a2d2", "mov bl, byte ptr [esi + 0x1001a33c]"], ["0x1001a2d8", "jmp dword ptr [ebx*4 + 0x1001a324]"]], "recomp": [["0x10006c32", "mov bl, byte ptr [esi + 0x10006c9c]"], ["0x10006c38", "jmp dword ptr [ebx*4 + 0x10006c84]"]]}, {"both": [["0x1001a2df", "mov eax, dword ptr [ecx]", "0x10006c3f"], ["0x1001a2e1", "call dword ptr [eax + 0xd0]", "0x10006c41"], ["0x1001a2e7", "pop esi", "0x10006c47"], ["0x1001a2e8", "pop ebx", "0x10006c48"], ["0x1001a2e9", "ret 4", "0x10006c49"], ["0x1001a2ec", "mov eax, dword ptr [ecx]", "0x10006c4c"], ["0x1001a2ee", "call dword ptr [eax + 0xcc]", "0x10006c4e"], ["0x1001a2f4", "pop esi", "0x10006c54"], ["0x1001a2f5", "pop ebx", "0x10006c55"], ["0x1001a2f6", "ret 4", "0x10006c56"]]}]], ["@@ -0x1001a310,21 +0x10006c70,29 @@", [{"both": [["0x1001a310", "pop esi", "0x10006c70"], ["0x1001a311", "pop ebx", "0x10006c71"], ["0x1001a312", "ret 4", "0x10006c72"], ["0x1001a315", "push edx", "0x10006c75"], ["0x1001a316", "mov eax, dword ptr [ecx]", "0x10006c76"], ["0x1001a318", "call dword ptr [eax + 0xdc]", "0x10006c78"], ["0x1001a31e", "pop esi", "0x10006c7e"], ["0x1001a31f", "pop ebx", "0x10006c7f"], ["0x1001a320", "ret 4", "0x10006c80"], ["0x1001a323", "nop ", "0x10006c83"]]}, {"orig": [["0x1001a324", "fbld tbyte ptr [edx - 0x5d13efff]"], ["0x1001a32a", "add dword ptr [eax], edx"], ["0x1001a32c", "stc "], ["0x1001a32d", "mov byte ptr [<OFFSET1>], al"], ["0x1001a332", "add dword ptr [eax], edx"], ["0x1001a334", "adc eax, 0x1e1001a3"], ["0x1001a339", "mov dword ptr [<OFFSET2>], eax"]], "recomp": [["0x10006c84", "aas "], ["0x10006c85", "insb byte ptr es:[edi], dx"], ["0x10006c86", "add byte ptr [eax], dl"], ["0x10006c88", "dec esp"], ["0x10006c89", "insb byte ptr es:[edi], dx"], ["0x10006c8a", "add byte ptr [eax], dl"], ["0x10006c8c", "pop ecx"], ["0x10006c8d", "insb byte ptr es:[edi], dx"], ["0x10006c8e", "add byte ptr [eax], dl"], ["0x10006c90", "insb byte ptr es:[di], dx"], ["0x10006c92", "add byte ptr [eax], dl"], ["0x10006c94", "jne 0x6c"], ["0x10006c96", "add byte ptr [eax], dl"], ["0x10006c98", "jle 0x6c"], ["0x10006c9a", "add byte ptr [eax], dl"], ["0x10006c9c", "add byte ptr [<OFFSET1>], al"]]}, {"both": [["0x1001a33e", "add eax, 0x5050505", "0x10006ca2"]]}, {"orig": [["0x1001a343", "add eax, 0x1050505"], ["0x1001a348", "add eax, 0x5050505"]], "recomp": [["0x10006ca7", "add dword ptr [<OFFSET1>], eax"]]}, {"both": [["0x1001a34d", "add al, byte ptr [ebx]", "0x10006cad"]]}]]]}, {"address": "0x1001a350", "recomp": "0x10006cb0", "name": "IslePathActor::VTable0xe0", "matching": 0.0, "stub": true}, {"address": "0x1001a3f0", "recomp": "0x10006cc0", "name": "IslePathActor::VTable0xe4", "matching": 0.0, "stub": true}, {"address": "0x1001a690", "recomp": "0x100110d0", "name": "list<ROI *,allocator<ROI *> >::_Buynode", "matching": 1.0, "diff": []}, {"address": "0x1001a700", "recomp": "0x1002f000", "name": "RegisterExtraPaths", "matching": 0.9432624113475178, "diff": [["@@ -0x1001a700,22 +0x1002f000,22 @@", [{"both": [["0x1001a700", "sub esp, 0x38", "0x1002f000"]]}, {"orig": [["0x1001a703", "mov eax, dword ptr [g_isleScript (DATA)]"]], "recomp": []}, {"both": [["0x1001a708", "mov dword ptr [esp], 0x16", "0x1002f003"]]}, {"orig": [["0x1001a710", "mov dword ptr [esp + 4], eax"], ["0x1001a714", "push ebx"]], "recomp": [["0x1002f00b", "push ebx"], ["0x1002f00c", "mov eax, dword ptr [g_isleScript (DATA)]"]]}, {"both": [["0x1001a715", "push esi", "0x1002f011"], ["0x1001a716", "xor ebx, ebx", "0x1002f012"], ["0x1001a718", "push edi", "0x1002f014"], ["0x1001a719", "mov ecx, 0xffffffff", "0x1002f015"], ["0x1001a71e", "push ebp", "0x1002f01a"]]}, {"orig": [["0x1001a71f", "sub eax, eax"]], "recomp": []}, {"both": [["0x1001a721", "mov edi, 'int35' (STRING)", "0x1002f01b"]]}, {"orig": [], "recomp": [["0x1002f020", "mov dword ptr [esp + 0x14], eax"], ["0x1002f024", "sub eax, eax"]]}, {"both": [["0x1001a726", "mov dword ptr [esp + 0x18], ebx", "0x1002f026"], ["0x1001a72a", "repne scasb al, byte ptr es:[edi]", "0x1002f02a"], ["0x1001a72c", "not ecx", "0x1002f02c"], ["0x1001a72e", "sub edi, ecx", "0x1002f02e"], ["0x1001a730", "mov edx, ecx", "0x1002f030"], ["0x1001a732", "shr ecx, 2", "0x1002f032"], ["0x1001a735", "mov esi, edi", "0x1002f035"], ["0x1001a737", "lea edi, [esp + 0x1c]", "0x1002f037"], ["0x1001a73b", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1002f03b"], ["0x1001a73d", "mov ecx, edx", "0x1002f03d"]]}]], ["@@ -0x1001a74e,23 +0x1002f04e,23 @@", [{"both": [["0x1001a74e", "lea eax, [esp + 0x10]", "0x1002f04e"], ["0x1001a752", "push eax", "0x1002f052"], ["0x1001a753", "mov ecx, g_extraPaths (DATA)", "0x1002f053"], ["0x1001a758", "mov dword ptr [esp + 0x38], 0x3f19999a", "0x1002f058"], ["0x1001a760", "mov word ptr [esp + 0x3c], 4", "0x1002f060"], ["0x1001a767", "mov dword ptr [esp + 0x40], 0x3ecccccd", "0x1002f067"], ["0x1001a76f", "mov dword ptr [esp + 0x44], 0x2a", "0x1002f06f"], ["0x1001a777", "mov dword ptr [esp + 0x48], 0x12", "0x1002f077"], ["0x1001a77f", "mov edi, 'edg00_49' (STRING)", "0x1002f07f"], ["0x1001a784", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f084"]]}, {"orig": [["0x1001a789", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001a78e", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001a793", "mov dword ptr [esp + 0x10], 0x17", "0x1002f089"]]}, {"orig": [], "recomp": [["0x1002f091", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f096", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001a79b", "mov dword ptr [esp + 0x14], eax", "0x1002f09b"], ["0x1001a79f", "sub eax, eax", "0x1002f09f"], ["0x1001a7a1", "mov dword ptr [esp + 0x18], ebx", "0x1002f0a1"], ["0x1001a7a5", "repne scasb al, byte ptr es:[edi]", "0x1002f0a5"], ["0x1001a7a7", "not ecx", "0x1002f0a7"], ["0x1001a7a9", "sub edi, ecx", "0x1002f0a9"], ["0x1001a7ab", "mov edx, ecx", "0x1002f0ab"], ["0x1001a7ad", "shr ecx, 2", "0x1002f0ad"], ["0x1001a7b0", "mov esi, edi", "0x1002f0b0"], ["0x1001a7b2", "lea edi, [esp + 0x1c]", "0x1002f0b2"]]}]], ["@@ -0x1001a7c6,23 +0x1002f0c6,23 @@", [{"both": [["0x1001a7c6", "mov dword ptr [esp + 0x34], 0x3edc28f6", "0x1002f0c6"], ["0x1001a7ce", "mov word ptr [esp + 0x38], bp", "0x1002f0ce"], ["0x1001a7d3", "lea eax, [esp + 0x10]", "0x1002f0d3"], ["0x1001a7d7", "push eax", "0x1002f0d7"], ["0x1001a7d8", "mov ecx, <OFFSET6>", "0x1002f0d8"], ["0x1001a7dd", "mov dword ptr [esp + 0x40], 0x3f19999a", "0x1002f0dd"], ["0x1001a7e5", "mov dword ptr [esp + 0x44], 0x27", "0x1002f0e5"], ["0x1001a7ed", "mov dword ptr [esp + 0x48], 0x12", "0x1002f0ed"], ["0x1001a7f5", "mov edi, 'edg00_191' (STRING)", "0x1002f0f5"], ["0x1001a7fa", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f0fa"]]}, {"orig": [["0x1001a7ff", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001a804", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001a809", "mov dword ptr [esp + 0x10], 0x18", "0x1002f0ff"]]}, {"orig": [], "recomp": [["0x1002f107", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f10c", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001a811", "mov dword ptr [esp + 0x14], eax", "0x1002f111"], ["0x1001a815", "sub eax, eax", "0x1002f115"], ["0x1001a817", "mov dword ptr [esp + 0x18], ebx", "0x1002f117"], ["0x1001a81b", "repne scasb al, byte ptr es:[edi]", "0x1002f11b"], ["0x1001a81d", "not ecx", "0x1002f11d"], ["0x1001a81f", "sub edi, ecx", "0x1002f11f"], ["0x1001a821", "mov edx, ecx", "0x1002f121"], ["0x1001a823", "shr ecx, 2", "0x1002f123"], ["0x1001a826", "mov esi, edi", "0x1002f126"], ["0x1001a828", "lea edi, [esp + 0x1c]", "0x1002f128"]]}]], ["@@ -0x1001a83a,23 +0x1002f13a,23 @@", [{"both": [["0x1001a83a", "lea eax, [esp + 0x10]", "0x1002f13a"], ["0x1001a83e", "push eax", "0x1002f13e"], ["0x1001a83f", "mov ecx, <OFFSET8>", "0x1002f13f"], ["0x1001a844", "mov dword ptr [esp + 0x38], 0x3f000000", "0x1002f144"], ["0x1001a84c", "mov word ptr [esp + 0x3c], bx", "0x1002f14c"], ["0x1001a851", "mov dword ptr [esp + 0x40], 0x3f0ccccd", "0x1002f151"], ["0x1001a859", "mov dword ptr [esp + 0x44], 0x26", "0x1002f159"], ["0x1001a861", "mov dword ptr [esp + 0x48], 0x12", "0x1002f161"], ["0x1001a869", "mov edi, 'int46' (STRING)", "0x1002f169"], ["0x1001a86e", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f16e"]]}, {"orig": [["0x1001a873", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001a878", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001a87d", "mov dword ptr [esp + 0x10], 4", "0x1002f173"]]}, {"orig": [], "recomp": [["0x1002f17b", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f180", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001a885", "mov dword ptr [esp + 0x14], eax", "0x1002f185"], ["0x1001a889", "sub eax, eax", "0x1002f189"], ["0x1001a88b", "mov dword ptr [esp + 0x18], ebx", "0x1002f18b"], ["0x1001a88f", "repne scasb al, byte ptr es:[edi]", "0x1002f18f"], ["0x1001a891", "not ecx", "0x1002f191"], ["0x1001a893", "sub edi, ecx", "0x1002f193"], ["0x1001a895", "mov edx, ecx", "0x1002f195"], ["0x1001a897", "shr ecx, 2", "0x1002f197"], ["0x1001a89a", "mov esi, edi", "0x1002f19a"], ["0x1001a89c", "lea edi, [esp + 0x1c]", "0x1002f19c"]]}]], ["@@ -0x1001a8ae,23 +0x1002f1ae,23 @@", [{"both": [["0x1001a8ae", "mov dword ptr [esp + 0x34], 0x3f000000", "0x1002f1ae"], ["0x1001a8b6", "mov word ptr [esp + 0x38], bp", "0x1002f1b6"], ["0x1001a8bb", "lea eax, [esp + 0x10]", "0x1002f1bb"], ["0x1001a8bf", "push eax", "0x1002f1bf"], ["0x1001a8c0", "mov ecx, <OFFSET10>", "0x1002f1c0"], ["0x1001a8c5", "mov dword ptr [esp + 0x40], 0x3f000000", "0x1002f1c5"], ["0x1001a8cd", "mov dword ptr [esp + 0x44], 0x10", "0x1002f1cd"], ["0x1001a8d5", "mov dword ptr [esp + 0x48], 0xb", "0x1002f1d5"], ["0x1001a8dd", "mov edi, 'EDG00_46' (STRING)", "0x1002f1dd"], ["0x1001a8e2", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f1e2"]]}, {"orig": [["0x1001a8e7", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001a8ec", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001a8f1", "mov dword ptr [esp + 0x10], 0x10", "0x1002f1e7"]]}, {"orig": [], "recomp": [["0x1002f1ef", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f1f4", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001a8f9", "mov dword ptr [esp + 0x14], eax", "0x1002f1f9"], ["0x1001a8fd", "sub eax, eax", "0x1002f1fd"], ["0x1001a8ff", "mov dword ptr [esp + 0x18], ebx", "0x1002f1ff"], ["0x1001a903", "repne scasb al, byte ptr es:[edi]", "0x1002f203"], ["0x1001a905", "not ecx", "0x1002f205"], ["0x1001a907", "sub edi, ecx", "0x1002f207"], ["0x1001a909", "mov edx, ecx", "0x1002f209"], ["0x1001a90b", "shr ecx, 2", "0x1002f20b"], ["0x1001a90e", "mov esi, edi", "0x1002f20e"], ["0x1001a910", "lea edi, [esp + 0x1c]", "0x1002f210"]]}]], ["@@ -0x1001a922,23 +0x1002f222,23 @@", [{"both": [["0x1001a922", "lea eax, [esp + 0x10]", "0x1002f222"], ["0x1001a926", "push eax", "0x1002f226"], ["0x1001a927", "mov ecx, <OFFSET12>", "0x1002f227"], ["0x1001a92c", "mov dword ptr [esp + 0x38], 0x3f733333", "0x1002f22c"], ["0x1001a934", "mov word ptr [esp + 0x3c], bp", "0x1002f234"], ["0x1001a939", "mov dword ptr [esp + 0x40], 0x3e428f5c", "0x1002f239"], ["0x1001a941", "mov dword ptr [esp + 0x44], 0x17", "0x1002f241"], ["0x1001a949", "mov dword ptr [esp + 0x48], 0x11", "0x1002f249"], ["0x1001a951", "mov edi, 'EDG00_46' (STRING)", "0x1002f251"], ["0x1001a956", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f256"]]}, {"orig": [["0x1001a95b", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001a960", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001a965", "mov dword ptr [esp + 0x10], 0x11", "0x1002f25b"]]}, {"orig": [], "recomp": [["0x1002f263", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f268", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001a96d", "mov dword ptr [esp + 0x14], eax", "0x1002f26d"], ["0x1001a971", "sub eax, eax", "0x1002f271"], ["0x1001a973", "mov dword ptr [esp + 0x18], ebx", "0x1002f273"], ["0x1001a977", "repne scasb al, byte ptr es:[edi]", "0x1002f277"], ["0x1001a979", "not ecx", "0x1002f279"], ["0x1001a97b", "sub edi, ecx", "0x1002f27b"], ["0x1001a97d", "mov edx, ecx", "0x1002f27d"], ["0x1001a97f", "shr ecx, 2", "0x1002f27f"], ["0x1001a982", "mov esi, edi", "0x1002f282"], ["0x1001a984", "lea edi, [esp + 0x1c]", "0x1002f284"]]}]], ["@@ -0x1001a998,23 +0x1002f298,23 @@", [{"both": [["0x1001a998", "mov dword ptr [esp + 0x34], 0x3f200000", "0x1002f298"], ["0x1001a9a0", "mov word ptr [esp + 0x38], bp", "0x1002f2a0"], ["0x1001a9a5", "lea eax, [esp + 0x10]", "0x1002f2a5"], ["0x1001a9a9", "push eax", "0x1002f2a9"], ["0x1001a9aa", "mov ecx, <OFFSET13>", "0x1002f2aa"], ["0x1001a9af", "mov dword ptr [esp + 0x40], 0x3cf5c28f", "0x1002f2af"], ["0x1001a9b7", "mov dword ptr [esp + 0x44], 0x18", "0x1002f2b7"], ["0x1001a9bf", "mov dword ptr [esp + 0x48], 0x11", "0x1002f2bf"], ["0x1001a9c7", "mov edi, 'EDG10_63' (STRING)", "0x1002f2c7"], ["0x1001a9cc", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f2cc"]]}, {"orig": [["0x1001a9d1", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001a9d6", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001a9db", "mov dword ptr [esp + 0x10], 0xf", "0x1002f2d1"]]}, {"orig": [], "recomp": [["0x1002f2d9", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f2de", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001a9e3", "mov dword ptr [esp + 0x14], eax", "0x1002f2e3"], ["0x1001a9e7", "sub eax, eax", "0x1002f2e7"], ["0x1001a9e9", "mov dword ptr [esp + 0x18], ebx", "0x1002f2e9"], ["0x1001a9ed", "repne scasb al, byte ptr es:[edi]", "0x1002f2ed"], ["0x1001a9ef", "not ecx", "0x1002f2ef"], ["0x1001a9f1", "sub edi, ecx", "0x1002f2f1"], ["0x1001a9f3", "mov edx, ecx", "0x1002f2f3"], ["0x1001a9f5", "shr ecx, 2", "0x1002f2f5"], ["0x1001a9f8", "mov esi, edi", "0x1002f2f8"], ["0x1001a9fa", "lea edi, [esp + 0x1c]", "0x1002f2fa"]]}]], ["@@ -0x1001aa0c,23 +0x1002f30c,23 @@", [{"both": [["0x1001aa0c", "lea eax, [esp + 0x10]", "0x1002f30c"], ["0x1001aa10", "push eax", "0x1002f310"], ["0x1001aa11", "mov ecx, <OFFSET15>", "0x1002f311"], ["0x1001aa16", "mov dword ptr [esp + 0x38], 0x3e851eb8", "0x1002f316"], ["0x1001aa1e", "mov word ptr [esp + 0x3c], 1", "0x1002f31e"], ["0x1001aa25", "mov dword ptr [esp + 0x40], 0x3c23d70a", "0x1002f325"], ["0x1001aa2d", "mov dword ptr [esp + 0x44], ebx", "0x1002f32d"], ["0x1001aa31", "mov edi, 'INT15' (STRING)", "0x1002f331"], ["0x1001aa36", "mov dword ptr [esp + 0x48], 0xffffffff", "0x1002f336"], ["0x1001aa3e", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f33e"]]}, {"orig": [["0x1001aa43", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001aa48", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001aa4d", "mov dword ptr [esp + 0x10], 0x13", "0x1002f343"]]}, {"orig": [], "recomp": [["0x1002f34b", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f350", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001aa55", "mov dword ptr [esp + 0x14], eax", "0x1002f355"], ["0x1001aa59", "sub eax, eax", "0x1002f359"], ["0x1001aa5b", "mov dword ptr [esp + 0x18], ebx", "0x1002f35b"], ["0x1001aa5f", "repne scasb al, byte ptr es:[edi]", "0x1002f35f"], ["0x1001aa61", "not ecx", "0x1002f361"], ["0x1001aa63", "sub edi, ecx", "0x1002f363"], ["0x1001aa65", "mov edx, ecx", "0x1002f365"], ["0x1001aa67", "shr ecx, 2", "0x1002f367"], ["0x1001aa6a", "mov esi, edi", "0x1002f36a"], ["0x1001aa6c", "lea edi, [esp + 0x1c]", "0x1002f36c"]]}]], ["@@ -0x1001aa80,23 +0x1002f380,23 @@", [{"both": [["0x1001aa80", "mov dword ptr [esp + 0x34], 0x3f266666", "0x1002f380"], ["0x1001aa88", "lea eax, [esp + 0x10]", "0x1002f388"], ["0x1001aa8c", "mov ecx, <OFFSET17>", "0x1002f38c"], ["0x1001aa91", "mov word ptr [esp + 0x38], 1", "0x1002f391"], ["0x1001aa98", "mov dword ptr [esp + 0x3c], 0x3f2e147b", "0x1002f398"], ["0x1001aaa0", "mov dword ptr [esp + 0x40], 0x33", "0x1002f3a0"], ["0x1001aaa8", "mov dword ptr [esp + 0x44], 0xe", "0x1002f3a8"], ["0x1001aab0", "push eax", "0x1002f3b0"], ["0x1001aab1", "mov edi, 'INT16' (STRING)", "0x1002f3b1"], ["0x1001aab6", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f3b6"]]}, {"orig": [["0x1001aabb", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001aac0", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001aac5", "mov dword ptr [esp + 0x10], 0x14", "0x1002f3bb"]]}, {"orig": [], "recomp": [["0x1002f3c3", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f3c8", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001aacd", "mov dword ptr [esp + 0x14], eax", "0x1002f3cd"], ["0x1001aad1", "sub eax, eax", "0x1002f3d1"], ["0x1001aad3", "mov dword ptr [esp + 0x18], ebx", "0x1002f3d3"], ["0x1001aad7", "repne scasb al, byte ptr es:[edi]", "0x1002f3d7"], ["0x1001aad9", "not ecx", "0x1002f3d9"], ["0x1001aadb", "sub edi, ecx", "0x1002f3db"], ["0x1001aadd", "mov edx, ecx", "0x1002f3dd"], ["0x1001aadf", "shr ecx, 2", "0x1002f3df"], ["0x1001aae2", "mov esi, edi", "0x1002f3e2"], ["0x1001aae4", "lea edi, [esp + 0x1c]", "0x1002f3e4"]]}]], ["@@ -0x1001aaf8,23 +0x1002f3f8,23 @@", [{"both": [["0x1001aaf8", "mov dword ptr [esp + 0x34], 0x3dcccccd", "0x1002f3f8"], ["0x1001ab00", "mov word ptr [esp + 0x38], bp", "0x1002f400"], ["0x1001ab05", "lea eax, [esp + 0x10]", "0x1002f405"], ["0x1001ab09", "push eax", "0x1002f409"], ["0x1001ab0a", "mov ecx, <OFFSET19>", "0x1002f40a"], ["0x1001ab0f", "mov dword ptr [esp + 0x40], ebx", "0x1002f40f"], ["0x1001ab13", "mov dword ptr [esp + 0x44], 0x34", "0x1002f413"], ["0x1001ab1b", "mov dword ptr [esp + 0x48], 0xe", "0x1002f41b"], ["0x1001ab23", "mov edi, 'INT62' (STRING)", "0x1002f423"], ["0x1001ab28", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f428"]]}, {"orig": [["0x1001ab2d", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001ab32", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001ab37", "mov dword ptr [esp + 0x10], 0x15", "0x1002f42d"]]}, {"orig": [], "recomp": [["0x1002f435", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f43a", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001ab3f", "mov dword ptr [esp + 0x14], eax", "0x1002f43f"], ["0x1001ab43", "sub eax, eax", "0x1002f443"], ["0x1001ab45", "mov dword ptr [esp + 0x18], ebx", "0x1002f445"], ["0x1001ab49", "repne scasb al, byte ptr es:[edi]", "0x1002f449"], ["0x1001ab4b", "not ecx", "0x1002f44b"], ["0x1001ab4d", "sub edi, ecx", "0x1002f44d"], ["0x1001ab4f", "mov edx, ecx", "0x1002f44f"], ["0x1001ab51", "shr ecx, 2", "0x1002f451"], ["0x1001ab54", "mov esi, edi", "0x1002f454"], ["0x1001ab56", "lea edi, [esp + 0x1c]", "0x1002f456"]]}]], ["@@ -0x1001ab68,23 +0x1002f468,23 @@", [{"both": [["0x1001ab68", "lea eax, [esp + 0x10]", "0x1002f468"], ["0x1001ab6c", "push eax", "0x1002f46c"], ["0x1001ab6d", "mov ecx, <OFFSET21>", "0x1002f46d"], ["0x1001ab72", "mov dword ptr [esp + 0x38], 0x3dcccccd", "0x1002f472"], ["0x1001ab7a", "mov word ptr [esp + 0x3c], 3", "0x1002f47a"], ["0x1001ab81", "mov dword ptr [esp + 0x40], 0x3f333333", "0x1002f481"], ["0x1001ab89", "mov dword ptr [esp + 0x44], 0x36", "0x1002f489"], ["0x1001ab91", "mov dword ptr [esp + 0x48], 0xe", "0x1002f491"], ["0x1001ab99", "mov edi, 'INT24' (STRING)", "0x1002f499"], ["0x1001ab9e", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f49e"]]}, {"orig": [["0x1001aba3", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001aba8", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001abad", "mov dword ptr [esp + 0x10], 0x19", "0x1002f4a3"]]}, {"orig": [], "recomp": [["0x1002f4ab", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f4b0", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001abb5", "mov dword ptr [esp + 0x14], eax", "0x1002f4b5"], ["0x1001abb9", "sub eax, eax", "0x1002f4b9"], ["0x1001abbb", "mov dword ptr [esp + 0x18], ebx", "0x1002f4bb"], ["0x1001abbf", "repne scasb al, byte ptr es:[edi]", "0x1002f4bf"], ["0x1001abc1", "not ecx", "0x1002f4c1"], ["0x1001abc3", "sub edi, ecx", "0x1002f4c3"], ["0x1001abc5", "mov edx, ecx", "0x1002f4c5"], ["0x1001abc7", "shr ecx, 2", "0x1002f4c7"], ["0x1001abca", "mov esi, edi", "0x1002f4ca"], ["0x1001abcc", "lea edi, [esp + 0x1c]", "0x1002f4cc"]]}]], ["@@ -0x1001abde,23 +0x1002f4de,23 @@", [{"both": [["0x1001abde", "lea eax, [esp + 0x10]", "0x1002f4de"], ["0x1001abe2", "push eax", "0x1002f4e2"], ["0x1001abe3", "mov ecx, <OFFSET23>", "0x1002f4e3"], ["0x1001abe8", "mov dword ptr [esp + 0x38], 0x3f0ccccd", "0x1002f4e8"], ["0x1001abf0", "mov word ptr [esp + 0x3c], bp", "0x1002f4f0"], ["0x1001abf5", "mov dword ptr [esp + 0x40], 0x3f35c28f", "0x1002f4f5"], ["0x1001abfd", "mov dword ptr [esp + 0x44], 8", "0x1002f4fd"], ["0x1001ac05", "mov dword ptr [esp + 0x48], 0xf", "0x1002f505"], ["0x1001ac0d", "mov edi, 'INT24' (STRING)", "0x1002f50d"], ["0x1001ac12", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f512"]]}, {"orig": [["0x1001ac17", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001ac1c", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001ac21", "mov dword ptr [esp + 0x10], 0x1c", "0x1002f517"]]}, {"orig": [], "recomp": [["0x1002f51f", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f524", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001ac29", "mov dword ptr [esp + 0x14], eax", "0x1002f529"], ["0x1001ac2d", "sub eax, eax", "0x1002f52d"], ["0x1001ac2f", "mov dword ptr [esp + 0x18], ebx", "0x1002f52f"], ["0x1001ac33", "repne scasb al, byte ptr es:[edi]", "0x1002f533"], ["0x1001ac35", "not ecx", "0x1002f535"], ["0x1001ac37", "sub edi, ecx", "0x1002f537"], ["0x1001ac39", "mov edx, ecx", "0x1002f539"], ["0x1001ac3b", "shr ecx, 2", "0x1002f53b"], ["0x1001ac3e", "mov esi, edi", "0x1002f53e"], ["0x1001ac40", "lea edi, [esp + 0x1c]", "0x1002f540"]]}]], ["@@ -0x1001ac52,23 +0x1002f552,23 @@", [{"both": [["0x1001ac52", "lea eax, [esp + 0x10]", "0x1002f552"], ["0x1001ac56", "push eax", "0x1002f556"], ["0x1001ac57", "mov ecx, <OFFSET24>", "0x1002f557"], ["0x1001ac5c", "mov dword ptr [esp + 0x38], 0x3f3ae148", "0x1002f55c"], ["0x1001ac64", "mov word ptr [esp + 0x3c], 4", "0x1002f564"], ["0x1001ac6b", "mov dword ptr [esp + 0x40], 0x3f35c28f", "0x1002f56b"], ["0x1001ac73", "mov dword ptr [esp + 0x44], 0xa", "0x1002f573"], ["0x1001ac7b", "mov dword ptr [esp + 0x48], 0xf", "0x1002f57b"], ["0x1001ac83", "mov edi, 'INT19' (STRING)", "0x1002f583"], ["0x1001ac88", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f588"]]}, {"orig": [["0x1001ac8d", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001ac92", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001ac97", "mov dword ptr [esp + 0x10], 0x1d", "0x1002f58d"]]}, {"orig": [], "recomp": [["0x1002f595", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f59a", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001ac9f", "mov dword ptr [esp + 0x14], eax", "0x1002f59f"], ["0x1001aca3", "sub eax, eax", "0x1002f5a3"], ["0x1001aca5", "mov dword ptr [esp + 0x18], ebx", "0x1002f5a5"], ["0x1001aca9", "repne scasb al, byte ptr es:[edi]", "0x1002f5a9"], ["0x1001acab", "not ecx", "0x1002f5ab"], ["0x1001acad", "sub edi, ecx", "0x1002f5ad"], ["0x1001acaf", "mov edx, ecx", "0x1002f5af"], ["0x1001acb1", "shr ecx, 2", "0x1002f5b1"], ["0x1001acb4", "mov esi, edi", "0x1002f5b4"], ["0x1001acb6", "lea edi, [esp + 0x1c]", "0x1002f5b6"]]}]], ["@@ -0x1001acc8,23 +0x1002f5c8,23 @@", [{"both": [["0x1001acc8", "lea eax, [esp + 0x10]", "0x1002f5c8"], ["0x1001accc", "push eax", "0x1002f5cc"], ["0x1001accd", "mov ecx, <OFFSET26>", "0x1002f5cd"], ["0x1001acd2", "mov dword ptr [esp + 0x38], 0x3f59999a", "0x1002f5d2"], ["0x1001acda", "mov word ptr [esp + 0x3c], 1", "0x1002f5da"], ["0x1001ace1", "mov dword ptr [esp + 0x40], 0x3e8f5c29", "0x1002f5e1"], ["0x1001ace9", "mov dword ptr [esp + 0x44], ebx", "0x1002f5e9"], ["0x1001aced", "mov edi, 'EDG02_28' (STRING)", "0x1002f5ed"], ["0x1001acf2", "mov dword ptr [esp + 0x48], 0xa", "0x1002f5f2"], ["0x1001acfa", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f5fa"]]}, {"orig": [["0x1001acff", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001ad04", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001ad09", "mov dword ptr [esp + 0x10], 0x1f", "0x1002f5ff"]]}, {"orig": [], "recomp": [["0x1002f607", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f60c", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001ad11", "mov dword ptr [esp + 0x14], eax", "0x1002f611"], ["0x1001ad15", "sub eax, eax", "0x1002f615"], ["0x1001ad17", "mov dword ptr [esp + 0x18], ebx", "0x1002f617"], ["0x1001ad1b", "repne scasb al, byte ptr es:[edi]", "0x1002f61b"], ["0x1001ad1d", "not ecx", "0x1002f61d"], ["0x1001ad1f", "sub edi, ecx", "0x1002f61f"], ["0x1001ad21", "mov edx, ecx", "0x1002f621"], ["0x1001ad23", "shr ecx, 2", "0x1002f623"], ["0x1001ad26", "mov esi, edi", "0x1002f626"], ["0x1001ad28", "lea edi, [esp + 0x1c]", "0x1002f628"]]}]], ["@@ -0x1001ad3c,23 +0x1002f63c,23 @@", [{"both": [["0x1001ad3c", "mov dword ptr [esp + 0x34], 0x3ebd70a4", "0x1002f63c"], ["0x1001ad44", "lea eax, [esp + 0x10]", "0x1002f644"], ["0x1001ad48", "mov ecx, <OFFSET28>", "0x1002f648"], ["0x1001ad4d", "mov word ptr [esp + 0x38], 1", "0x1002f64d"], ["0x1001ad54", "mov dword ptr [esp + 0x3c], 0x3f051eb8", "0x1002f654"], ["0x1001ad5c", "mov dword ptr [esp + 0x40], 0xc", "0x1002f65c"], ["0x1001ad64", "mov dword ptr [esp + 0x44], 0xa", "0x1002f664"], ["0x1001ad6c", "push eax", "0x1002f66c"], ["0x1001ad6d", "mov edi, 'INT33' (STRING)", "0x1002f66d"], ["0x1001ad72", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f672"]]}, {"orig": [["0x1001ad77", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001ad7c", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001ad81", "mov dword ptr [esp + 0x10], 0x20", "0x1002f677"]]}, {"orig": [], "recomp": [["0x1002f67f", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f684", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001ad89", "mov dword ptr [esp + 0x14], eax", "0x1002f689"], ["0x1001ad8d", "sub eax, eax", "0x1002f68d"], ["0x1001ad8f", "mov dword ptr [esp + 0x18], ebx", "0x1002f68f"], ["0x1001ad93", "repne scasb al, byte ptr es:[edi]", "0x1002f693"], ["0x1001ad95", "not ecx", "0x1002f695"], ["0x1001ad97", "sub edi, ecx", "0x1002f697"], ["0x1001ad99", "mov edx, ecx", "0x1002f699"], ["0x1001ad9b", "shr ecx, 2", "0x1002f69b"], ["0x1001ad9e", "mov esi, edi", "0x1002f69e"], ["0x1001ada0", "lea edi, [esp + 0x1c]", "0x1002f6a0"]]}]], ["@@ -0x1001adb2,23 +0x1002f6b2,23 @@", [{"both": [["0x1001adb2", "lea eax, [esp + 0x10]", "0x1002f6b2"], ["0x1001adb6", "push eax", "0x1002f6b6"], ["0x1001adb7", "mov ecx, <OFFSET30>", "0x1002f6b7"], ["0x1001adbc", "mov dword ptr [esp + 0x38], 0x3f6147ae", "0x1002f6bc"], ["0x1001adc4", "mov word ptr [esp + 0x3c], bp", "0x1002f6c4"], ["0x1001adc9", "mov dword ptr [esp + 0x40], 0x3f3d70a4", "0x1002f6c9"], ["0x1001add1", "mov dword ptr [esp + 0x44], 0x22", "0x1002f6d1"], ["0x1001add9", "mov dword ptr [esp + 0x48], 0xc", "0x1002f6d9"], ["0x1001ade1", "mov edi, 'EDG02_64' (STRING)", "0x1002f6e1"], ["0x1001ade6", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f6e6"]]}, {"orig": [["0x1001adeb", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001adf0", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001adf5", "mov dword ptr [esp + 0x10], 0x21", "0x1002f6eb"]]}, {"orig": [], "recomp": [["0x1002f6f3", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f6f8", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001adfd", "mov dword ptr [esp + 0x14], eax", "0x1002f6fd"], ["0x1001ae01", "sub eax, eax", "0x1002f701"], ["0x1001ae03", "mov dword ptr [esp + 0x18], ebx", "0x1002f703"], ["0x1001ae07", "repne scasb al, byte ptr es:[edi]", "0x1002f707"], ["0x1001ae09", "not ecx", "0x1002f709"], ["0x1001ae0b", "sub edi, ecx", "0x1002f70b"], ["0x1001ae0d", "mov edx, ecx", "0x1002f70d"], ["0x1001ae0f", "shr ecx, 2", "0x1002f70f"], ["0x1001ae12", "mov esi, edi", "0x1002f712"], ["0x1001ae14", "lea edi, [esp + 0x1c]", "0x1002f714"]]}]], ["@@ -0x1001ae26,23 +0x1002f726,23 @@", [{"both": [["0x1001ae26", "lea eax, [esp + 0x10]", "0x1002f726"], ["0x1001ae2a", "push eax", "0x1002f72a"], ["0x1001ae2b", "mov ecx, <OFFSET32>", "0x1002f72b"], ["0x1001ae30", "mov dword ptr [esp + 0x38], 0x3e75c28f", "0x1002f730"], ["0x1001ae38", "mov word ptr [esp + 0x3c], bx", "0x1002f738"], ["0x1001ae3d", "mov dword ptr [esp + 0x40], 0x3f570a3d", "0x1002f73d"], ["0x1001ae45", "mov dword ptr [esp + 0x44], 0x23", "0x1002f745"], ["0x1001ae4d", "mov dword ptr [esp + 0x48], 0xc", "0x1002f74d"], ["0x1001ae55", "mov edi, 'edg02_51' (STRING)", "0x1002f755"], ["0x1001ae5a", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f75a"]]}, {"orig": [["0x1001ae5f", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001ae64", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001ae69", "mov dword ptr [esp + 0x10], 0x28", "0x1002f75f"]]}, {"orig": [], "recomp": [["0x1002f767", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f76c", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001ae71", "mov dword ptr [esp + 0x14], eax", "0x1002f771"], ["0x1001ae75", "sub eax, eax", "0x1002f775"], ["0x1001ae77", "mov dword ptr [esp + 0x18], ebx", "0x1002f777"], ["0x1001ae7b", "repne scasb al, byte ptr es:[edi]", "0x1002f77b"], ["0x1001ae7d", "not ecx", "0x1002f77d"], ["0x1001ae7f", "sub edi, ecx", "0x1002f77f"], ["0x1001ae81", "mov edx, ecx", "0x1002f781"], ["0x1001ae83", "shr ecx, 2", "0x1002f783"], ["0x1001ae86", "mov esi, edi", "0x1002f786"], ["0x1001ae88", "lea edi, [esp + 0x1c]", "0x1002f788"]]}]], ["@@ -0x1001ae9a,23 +0x1002f79a,23 @@", [{"both": [["0x1001ae9a", "lea eax, [esp + 0x10]", "0x1002f79a"], ["0x1001ae9e", "push eax", "0x1002f79e"], ["0x1001ae9f", "mov ecx, <OFFSET34>", "0x1002f79f"], ["0x1001aea4", "mov dword ptr [esp + 0x38], 0x3f2147ae", "0x1002f7a4"], ["0x1001aeac", "mov word ptr [esp + 0x3c], 3", "0x1002f7ac"], ["0x1001aeb3", "mov dword ptr [esp + 0x40], 0x3c23d70a", "0x1002f7b3"], ["0x1001aebb", "mov dword ptr [esp + 0x44], ebx", "0x1002f7bb"], ["0x1001aebf", "mov edi, 'edg02_51' (STRING)", "0x1002f7bf"], ["0x1001aec4", "mov dword ptr [esp + 0x48], 0xffffffff", "0x1002f7c4"], ["0x1001aecc", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f7cc"]]}, {"orig": [["0x1001aed1", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001aed6", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001aedb", "mov dword ptr [esp + 0x10], 0x29", "0x1002f7d1"]]}, {"orig": [], "recomp": [["0x1002f7d9", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f7de", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001aee3", "mov dword ptr [esp + 0x14], eax", "0x1002f7e3"], ["0x1001aee7", "sub eax, eax", "0x1002f7e7"], ["0x1001aee9", "mov dword ptr [esp + 0x18], ebx", "0x1002f7e9"], ["0x1001aeed", "repne scasb al, byte ptr es:[edi]", "0x1002f7ed"], ["0x1001aeef", "not ecx", "0x1002f7ef"], ["0x1001aef1", "sub edi, ecx", "0x1002f7f1"], ["0x1001aef3", "mov edx, ecx", "0x1002f7f3"], ["0x1001aef5", "shr ecx, 2", "0x1002f7f5"], ["0x1001aef8", "mov esi, edi", "0x1002f7f8"], ["0x1001aefa", "lea edi, [esp + 0x1c]", "0x1002f7fa"]]}]], ["@@ -0x1001af0c,23 +0x1002f80c,23 @@", [{"both": [["0x1001af0c", "lea eax, [esp + 0x10]", "0x1002f80c"], ["0x1001af10", "push eax", "0x1002f810"], ["0x1001af11", "mov ecx, <OFFSET35>", "0x1002f811"], ["0x1001af16", "mov dword ptr [esp + 0x38], 0x3f2147ae", "0x1002f816"], ["0x1001af1e", "mov word ptr [esp + 0x3c], bx", "0x1002f81e"], ["0x1001af23", "mov dword ptr [esp + 0x40], 0x3ecccccd", "0x1002f823"], ["0x1001af2b", "mov dword ptr [esp + 0x44], ebx", "0x1002f82b"], ["0x1001af2f", "mov edi, 'edg02_35' (STRING)", "0x1002f82f"], ["0x1001af34", "mov dword ptr [esp + 0x48], 0xffffffff", "0x1002f834"], ["0x1001af3c", "call LegoOmni::PathContainer::operator= (FUNCTION)", "0x1002f83c"]]}, {"orig": [["0x1001af41", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1001af46", "mov ecx, 0xffffffff"]], "recomp": []}, {"both": [["0x1001af4b", "mov dword ptr [esp + 0x10], 0x2b", "0x1002f841"]]}, {"orig": [], "recomp": [["0x1002f849", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1002f84e", "mov ecx, 0xffffffff"]]}, {"both": [["0x1001af53", "mov dword ptr [esp + 0x14], eax", "0x1002f853"], ["0x1001af57", "sub eax, eax", "0x1002f857"], ["0x1001af59", "mov dword ptr [esp + 0x18], ebx", "0x1002f859"], ["0x1001af5d", "repne scasb al, byte ptr es:[edi]", "0x1002f85d"], ["0x1001af5f", "not ecx", "0x1002f85f"], ["0x1001af61", "sub edi, ecx", "0x1002f861"], ["0x1001af63", "mov edx, ecx", "0x1002f863"], ["0x1001af65", "shr ecx, 2", "0x1002f865"], ["0x1001af68", "mov esi, edi", "0x1002f868"], ["0x1001af6a", "lea edi, [esp + 0x1c]", "0x1002f86a"]]}]]]}, {"address": "0x1001b1b0", "recomp": "0x1002fab0", "name": "LegoOmni::PathContainer::PathContainer", "matching": 1.0, "diff": []}, {"address": "0x1001b230", "recomp": "0x1002fb30", "name": "LegoOmni::PathContainer::operator=", "matching": 1.0, "diff": []}, {"address": "0x1001b2a0", "recomp": "0x10006cd0", "name": "IslePathActor::VTable0xe8", "matching": 0.0, "stub": true}, {"address": "0x1001b5b0", "recomp": "0x10006ce0", "name": "IslePathActor::VTable0xec", "matching": 0.0, "stub": true}, {"address": "0x1001c1f0", "recomp": "0x10033410", "name": "LegoAnimActor::FUN_1001c1f0", "matching": 0.0, "stub": true}, {"address": "0x1001c360", "recomp": "0x10033420", "name": "LegoAnimActor::FUN_1001c360", "matching": 0.0, "stub": true}, {"address": "0x1001c450", "recomp": "0x10033430", "name": "LegoAnimActor::FUN_1001c450", "matching": 0.0, "stub": true}, {"address": "0x1001c800", "recomp": "0x10033440", "name": "LegoAnimActor::FUN_1001c800", "matching": 0.0, "stub": true}, {"address": "0x1001ca40", "recomp": "0x100261e0", "name": "LegoWorld::LegoWorld", "matching": 1.0, "diff": []}, {"address": "0x1001cd00", "recomp": "0x100268f0", "name": "MxPresenterList::Compare", "matching": 1.0, "diff": []}, {"address": "0x1001cd20", "recomp": "0x10026920", "name": "MxCollection<MxPresenter *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1001cd30", "recomp": "0x10026910", "name": "MxCollection<MxPresenter *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1001cd40", "recomp": "0x10026930", "name": "MxList<MxPresenter *>::MxList<MxPresenter *>", "matching": 1.0, "diff": []}, {"address": "0x1001cdd0", "recomp": "0x100269c0", "name": "MxCollection<MxPresenter *>::~MxCollection<MxPresenter *>", "matching": 1.0, "diff": []}, {"address": "0x1001ce20", "recomp": "0x1002b220", "name": "MxList<MxPresenter *>::~MxList<MxPresenter *>", "matching": 1.0, "diff": []}, {"address": "0x1001ceb0", "recomp": "0x10026a10", "name": "MxPresenterList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001cf20", "recomp": "0x10026a80", "name": "MxPtrList<MxPresenter>::~MxPtrList<MxPresenter>", "matching": 1.0, "diff": []}, {"address": "0x1001cf70", "recomp": "0x10026ad0", "name": "MxCollection<MxPresenter *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001cfe0", "recomp": "0x10026b40", "name": "MxList<MxPresenter *>::`scalar deleting destructor'", "matching": 1.0, "effective": true, "diff": [["@@ -0x1001cfe9,33 +0x10026b49,33 @@", [{"both": [["0x1001cfe9", "push -1", "0x10026b49"], ["0x1001cfeb", "push <OFFSET1>", "0x10026b4b"], ["0x1001cff0", "push eax", "0x10026b50"], ["0x1001cff1", "mov dword ptr fs:[0], esp", "0x10026b51"], ["0x1001cff8", "mov dword ptr [ecx], MxList<MxPresenter *>::`vftable' (VTABLE)", "0x10026b58"], ["0x1001cffe", "sub esp, 4", "0x10026b5e"], ["0x1001d001", "mov dword ptr [ebp - 0x10], ecx", "0x10026b61"], ["0x1001d004", "mov dword ptr [ebp - 4], 0", "0x10026b64"], ["0x1001d00b", "push esi", "0x10026b6b"], ["0x1001d00c", "push edi", "0x10026b6c"]]}, {"orig": [["0x1001d00d", "mov esi, dword ptr [ecx + 0x10]"], ["0x1001d010", "test esi, esi"]], "recomp": [["0x10026b6d", "mov edi, dword ptr [ecx + 0x10]"], ["0x10026b70", "test edi, edi"]]}, {"both": [["0x1001d012", "je 0x1c", "0x10026b72"]]}, {"orig": [["0x1001d014", "mov edi, dword ptr [esi + 8]"], ["0x1001d017", "mov eax, dword ptr [esi]"]], "recomp": [["0x10026b74", "mov esi, dword ptr [edi + 8]"], ["0x10026b77", "mov eax, dword ptr [edi]"]]}, {"both": [["0x1001d019", "push eax", "0x10026b79"], ["0x1001d01a", "mov ecx, dword ptr [ebp - 0x10]", "0x10026b7a"], ["0x1001d01d", "call dword ptr [ecx + 0xc]", "0x10026b7d"], ["0x1001d020", "add esp, 4", "0x10026b80"]]}, {"orig": [["0x1001d023", "push esi"]], "recomp": [["0x10026b83", "push edi"]]}, {"both": [["0x1001d024", "call ??3@YAXPAX@Z (FUNCTION)", "0x10026b84"], ["0x1001d029", "add esp, 4", "0x10026b89"]]}, {"orig": [["0x1001d02c", "mov esi, edi"]], "recomp": [["0x10026b8c", "mov edi, esi"]]}, {"both": [["0x1001d02e", "jmp -0x20", "0x10026b8e"], ["0x1001d030", "xor eax, eax", "0x10026b90"], ["0x1001d032", "mov ecx, dword ptr [ebp - 0x10]", "0x10026b92"], ["0x1001d035", "mov dword ptr [ebp - 4], 0xffffffff", "0x10026b95"], ["0x1001d03c", "mov dword ptr [ecx + 8], eax", "0x10026b9c"], ["0x1001d03f", "mov dword ptr [ecx + 0x14], eax", "0x10026b9f"], ["0x1001d042", "mov dword ptr [ecx + 0x10], eax", "0x10026ba2"], ["0x1001d045", "call <OFFSET4>", "0x10026ba5"], ["0x1001d04a", "test byte ptr [ebp + 8], 1", "0x10026baa"], ["0x1001d04e", "je 0xc", "0x10026bae"]]}]]]}, {"address": "0x1001d090", "recomp": "0x10026bf0", "name": "MxPtrList<MxPresenter>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001d100", "recomp": "0x10026c60", "name": "MxPresenterList::~MxPresenterList", "matching": 1.0, "diff": []}, {"address": "0x1001d150", "recomp": "0x10001550", "name": "Vector3::Vector3", "matching": 1.0, "diff": []}, {"address": "0x1001d170", "recomp": "0x10001900", "name": "Mx3DPointFloat::Mx3DPointFloat", "matching": 1.0, "diff": []}, {"address": "0x1001d190", "recomp": "0x100264a0", "name": "MxEntity::MxEntity", "matching": 1.0, "diff": []}, {"address": "0x1001d210", "recomp": "0x10026520", "name": "LegoPathControllerList::Compare", "matching": 1.0, "diff": []}, {"address": "0x1001d230", "recomp": "0x10026540", "name": "MxCollection<LegoPathController *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1001d240", "recomp": "0x10026550", "name": "MxList<LegoPathController *>::MxList<LegoPathController *>", "matching": 1.0, "diff": []}, {"address": "0x1001d2d0", "recomp": "0x100265f0", "name": "MxCollection<LegoPathController *>::~MxCollection<LegoPathController *>", "matching": 1.0, "diff": []}, {"address": "0x1001d320", "recomp": "0x100265e0", "name": "MxCollection<LegoPathController *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1001d330", "recomp": "0x1002b190", "name": "MxList<LegoPathController *>::~MxList<LegoPathController *>", "matching": 1.0, "diff": []}, {"address": "0x1001d3c0", "recomp": "0x10026640", "name": "MxPtrList<LegoPathController>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1001d3d0", "recomp": "0x10026650", "name": "LegoPathControllerList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001d440", "recomp": "0x100266c0", "name": "MxPtrList<LegoPathController>::~MxPtrList<LegoPathController>", "matching": 1.0, "diff": []}, {"address": "0x1001d490", "recomp": "0x10026710", "name": "MxCollection<LegoPathController *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001d500", "recomp": "0x10026780", "name": "MxList<LegoPathController *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001d5b0", "recomp": "0x10026830", "name": "MxPtrList<LegoPathController>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001d620", "recomp": "0x100268a0", "name": "LegoPathControllerList::~LegoPathControllerList", "matching": 1.0, "diff": []}, {"address": "0x1001d670", "recomp": "0x100274b0", "name": "LegoWorld::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x1001d680", "recomp": "0x100274c0", "name": "LegoWorld::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x1001d690", "recomp": "0x10019360", "name": "LegoWorld::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1001d6a0", "recomp": "0x10019370", "name": "LegoWorld::IsA", "matching": 1.0, "diff": []}, {"address": "0x1001d780", "recomp": "0x10026cb0", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::~_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >", "matching": 1.0, "diff": []}, {"address": "0x1001d850", "recomp": "0x10026d80", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::iterator::_Inc", "matching": 0.9166666666666666, "diff": [["@@ -0x1001d850,16 +0x10026d80,16 @@", [{"both": [["0x1001d850", "mov eax, dword ptr [ecx]", "0x10026d80"], ["0x1001d852", "mov edx, dword ptr [eax + 8]", "0x10026d82"]]}, {"orig": [["0x1001d855", "cmp edx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x10026d85", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], edx"]]}, {"both": [["0x1001d85b", "je 0x11", "0x10026d8b"], ["0x1001d85d", "mov eax, dword ptr [edx]", "0x10026d8d"]]}, {"orig": [["0x1001d85f", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x10026d8f", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1001d865", "je 0x4", "0x10026d95"], ["0x1001d867", "mov edx, eax", "0x10026d97"], ["0x1001d869", "jmp -0xe", "0x10026d99"], ["0x1001d86b", "mov dword ptr [ecx], edx", "0x10026d9b"], ["0x1001d86d", "ret ", "0x10026d9d"], ["0x1001d86e", "mov edx, dword ptr [eax + 4]", "0x10026d9e"], ["0x1001d871", "cmp dword ptr [edx + 8], eax", "0x10026da1"], ["0x1001d874", "jne 0xc", "0x10026da4"], ["0x1001d876", "mov dword ptr [ecx], edx", "0x10026da6"], ["0x1001d878", "mov eax, edx", "0x10026da8"]]}]]]}, {"address": "0x1001d890", "recomp": "0x10026dc0", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::erase", "matching": 0.6205962059620597, "diff": [["@@ -0x1001d890,61 +0x10026dc0,63 @@", [{"both": [["0x1001d890", "mov eax, dword ptr [esp + 8]", "0x10026dc0"], ["0x1001d894", "sub esp, 4", "0x10026dc4"], ["0x1001d897", "mov dword ptr [esp], eax", "0x10026dc7"], ["0x1001d89b", "push ebx", "0x10026dcb"], ["0x1001d89c", "push esi", "0x10026dcc"]]}, {"orig": [["0x1001d89d", "mov eax, dword ptr [eax + 8]"]], "recomp": []}, {"both": [["0x1001d8a0", "push edi", "0x10026dcd"]]}, {"orig": [], "recomp": [["0x10026dce", "push ebp"]]}, {"both": [["0x1001d8a1", "mov esi, ecx", "0x10026dcf"]]}, {"orig": [["0x1001d8a3", "push ebp"], ["0x1001d8a4", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x1001d8aa", "je 0xe"], ["0x1001d8ac", "mov ecx, dword ptr [eax]"], ["0x1001d8ae", "cmp ecx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x1001d8b4", "je 0x29"], ["0x1001d8b6", "mov eax, ecx"]], "recomp": [["0x10026dd1", "mov ecx, dword ptr [eax + 8]"], ["0x10026dd4", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], ecx"], ["0x10026dda", "je 0x14"], ["0x10026ddc", "mov eax, dword ptr [ecx]"], ["0x10026dde", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"], ["0x10026de4", "je 0x4"], ["0x10026de6", "mov ecx, eax"]]}, {"both": [["0x1001d8b8", "jmp -0xe", "0x10026de8"]]}, {"orig": [], "recomp": [["0x10026dea", "mov dword ptr [esp + 0x1c], ecx"], ["0x10026dee", "jmp 0x29"]]}, {"both": [["0x1001d8ba", "mov ecx, dword ptr [esp + 0x1c]", "0x10026df0"], ["0x1001d8be", "mov eax, dword ptr [ecx + 4]", "0x10026df4"], ["0x1001d8c1", "cmp dword ptr [eax + 8], ecx", "0x10026df7"], ["0x1001d8c4", "jne 0x10", "0x10026dfa"], ["0x1001d8c6", "mov dword ptr [esp + 0x1c], eax", "0x10026dfc"], ["0x1001d8ca", "mov eax, dword ptr [eax + 4]", "0x10026e00"], ["0x1001d8cd", "mov ecx, dword ptr [esp + 0x1c]", "0x10026e03"], ["0x1001d8d1", "cmp dword ptr [eax + 8], ecx", "0x10026e07"], ["0x1001d8d4", "je -0x10", "0x10026e0a"], ["0x1001d8d6", "mov ecx, dword ptr [esp + 0x1c]", "0x10026e0c"], ["0x1001d8da", "cmp dword ptr [ecx + 8], eax", "0x10026e10"], ["0x1001d8dd", "je 0x4", "0x10026e13"], ["0x1001d8df", "mov dword ptr [esp + 0x1c], eax", "0x10026e15"], ["0x1001d8e3", "mov ecx, dword ptr [esp + 0x10]", "0x10026e19"], ["0x1001d8e7", "mov ebx, dword ptr [ecx]", "0x10026e1d"]]}, {"orig": [["0x1001d8e9", "cmp ebx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x10026e1f", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], ebx"]]}, {"both": [["0x1001d8ef", "je 0x26", "0x10026e25"], ["0x1001d8f1", "lea edi, [ecx + 8]", "0x10026e27"], ["0x1001d8f4", "mov edx, dword ptr [edi]", "0x10026e2a"]]}, {"orig": [["0x1001d8f6", "cmp edx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x10026e2c", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], edx"]]}, {"both": [["0x1001d8fc", "je 0x15", "0x10026e32"], ["0x1001d8fe", "mov eax, dword ptr [edx]", "0x10026e34"]]}, {"orig": [["0x1001d900", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x10026e36", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1001d906", "je 0x4", "0x10026e3c"], ["0x1001d908", "mov edx, eax", "0x10026e3e"], ["0x1001d90a", "jmp -0xe", "0x10026e40"], ["0x1001d90c", "mov ecx, edx", "0x10026e42"], ["0x1001d90e", "mov edx, dword ptr [edx + 8]", "0x10026e44"], ["0x1001d911", "jmp 0xe", "0x10026e47"], ["0x1001d913", "mov edx, ebx", "0x10026e49"], ["0x1001d915", "jmp 0xa", "0x10026e4b"], ["0x1001d917", "mov edi, dword ptr [esp + 0x10]", "0x10026e4d"], ["0x1001d91b", "mov edx, dword ptr [edi + 8]", "0x10026e51"], ["0x1001d91e", "add edi, 8", "0x10026e54"]]}, {"orig": [["0x1001d921", "cmp dword ptr [esp + 0x10], ecx"]], "recomp": [["0x10026e57", "cmp ecx, dword ptr [esp + 0x10]"]]}, {"both": [["0x1001d925", "jne 0x8f", "0x10026e5b"], ["0x1001d92b", "mov eax, dword ptr [ecx + 4]", "0x10026e61"], ["0x1001d92e", "mov ebx, dword ptr [esp + 0x10]", "0x10026e64"], ["0x1001d932", "mov dword ptr [edx + 4], eax", "0x10026e68"], ["0x1001d935", "mov eax, dword ptr [esi + 4]", "0x10026e6b"], ["0x1001d938", "add eax, 4", "0x10026e6e"], ["0x1001d93b", "cmp dword ptr [eax], ebx", "0x10026e71"], ["0x1001d93d", "je 0xc", "0x10026e73"], ["0x1001d93f", "mov eax, dword ptr [ebx + 4]", "0x10026e75"], ["0x1001d942", "cmp dword ptr [eax], ebx", "0x10026e78"]]}]], ["@@ -0x1001d946,46 +0x10026e7c,46 @@", [{"both": [["0x1001d946", "mov dword ptr [eax + 8], edx", "0x10026e7c"], ["0x1001d949", "jmp 0x2", "0x10026e7f"], ["0x1001d94b", "mov dword ptr [eax], edx", "0x10026e81"], ["0x1001d94d", "mov ebx, dword ptr [esi + 4]", "0x10026e83"], ["0x1001d950", "mov eax, dword ptr [esp + 0x10]", "0x10026e86"], ["0x1001d954", "cmp dword ptr [ebx], eax", "0x10026e8a"], ["0x1001d956", "jne 0x26", "0x10026e8c"], ["0x1001d958", "mov eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]", "0x10026e8e"], ["0x1001d95d", "cmp dword ptr [edi], eax", "0x10026e93"], ["0x1001d95f", "je 0x14", "0x10026e95"]]}, {"orig": [["0x1001d961", "mov eax, edx"], ["0x1001d963", "mov edi, dword ptr [eax]"], ["0x1001d965", "cmp edi, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x1001d96b", "je 0x4"], ["0x1001d96d", "mov eax, edi"]], "recomp": [["0x10026e97", "mov edi, edx"], ["0x10026e99", "mov eax, dword ptr [edi]"], ["0x10026e9b", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"], ["0x10026ea1", "je 0x4"], ["0x10026ea3", "mov edi, eax"]]}, {"both": [["0x1001d96f", "jmp -0xe", "0x10026ea5"]]}, {"orig": [["0x1001d971", "mov dword ptr [ebx], eax"]], "recomp": [["0x10026ea7", "mov dword ptr [ebx], edi"]]}, {"both": [["0x1001d973", "jmp 0x9", "0x10026ea9"], ["0x1001d975", "mov eax, dword ptr [esp + 0x10]", "0x10026eab"], ["0x1001d979", "mov ebp, dword ptr [eax + 4]", "0x10026eaf"], ["0x1001d97c", "mov dword ptr [ebx], ebp", "0x10026eb2"], ["0x1001d97e", "mov edi, dword ptr [esi + 4]", "0x10026eb4"], ["0x1001d981", "mov eax, dword ptr [esp + 0x10]", "0x10026eb7"], ["0x1001d985", "add edi, 8", "0x10026ebb"], ["0x1001d988", "cmp dword ptr [edi], eax", "0x10026ebe"], ["0x1001d98a", "jne 0x8a", "0x10026ec0"], ["0x1001d990", "mov ebx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]", "0x10026ec6"], ["0x1001d996", "cmp dword ptr [eax], ebx", "0x10026ecc"], ["0x1001d998", "je 0x15", "0x10026ece"]]}, {"orig": [["0x1001d99a", "mov eax, edx"], ["0x1001d99c", "mov ebx, dword ptr [eax + 8]"], ["0x1001d99f", "cmp ebx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x1001d9a5", "je 0x4"], ["0x1001d9a7", "mov eax, ebx"]], "recomp": [["0x10026ed0", "mov ebx, edx"], ["0x10026ed2", "mov eax, dword ptr [ebx + 8]"], ["0x10026ed5", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"], ["0x10026edb", "je 0x4"], ["0x10026edd", "mov ebx, eax"]]}, {"both": [["0x1001d9a9", "jmp -0xf", "0x10026edf"]]}, {"orig": [["0x1001d9ab", "mov dword ptr [edi], eax"]], "recomp": [["0x10026ee1", "mov dword ptr [edi], ebx"]]}, {"both": [["0x1001d9ad", "jmp 0x6b", "0x10026ee3"], ["0x1001d9af", "mov eax, dword ptr [esp + 0x10]", "0x10026ee5"], ["0x1001d9b3", "mov ebx, dword ptr [eax + 4]", "0x10026ee9"], ["0x1001d9b6", "mov dword ptr [edi], ebx", "0x10026eec"], ["0x1001d9b8", "jmp 0x60", "0x10026eee"], ["0x1001d9ba", "mov eax, dword ptr [esp + 0x10]", "0x10026ef0"], ["0x1001d9be", "mov dword ptr [ebx + 4], ecx", "0x10026ef4"], ["0x1001d9c1", "mov ebx, dword ptr [eax]", "0x10026ef7"], ["0x1001d9c3", "mov dword ptr [ecx], ebx", "0x10026ef9"], ["0x1001d9c5", "cmp dword ptr [edi], ecx", "0x10026efb"]]}]], ["@@ -0x1001d9ff,187 +0x10026f35,184 @@", [{"both": [["0x1001d9ff", "mov eax, dword ptr [esp + 0x10]", "0x10026f35"], ["0x1001da03", "mov ebx, dword ptr [eax + 4]", "0x10026f39"], ["0x1001da06", "add eax, 0x10", "0x10026f3c"], ["0x1001da09", "mov dword ptr [ecx + 4], ebx", "0x10026f3f"], ["0x1001da0c", "mov edi, dword ptr [ecx + 0x10]", "0x10026f42"], ["0x1001da0f", "mov ebx, dword ptr [eax]", "0x10026f45"], ["0x1001da11", "mov dword ptr [ecx + 0x10], ebx", "0x10026f47"], ["0x1001da14", "mov ecx, dword ptr [esp + 0x10]", "0x10026f4a"], ["0x1001da18", "mov dword ptr [eax], edi", "0x10026f4e"], ["0x1001da1a", "cmp dword ptr [ecx + 0x10], 1", "0x10026f50"]]}, {"orig": [["0x1001da1e", "jne 0x29e"]], "recomp": [["0x10026f54", "jne 0x295"]]}, {"both": [["0x1001da24", "mov eax, dword ptr [esi + 4]", "0x10026f5a"], ["0x1001da27", "cmp dword ptr [eax + 4], edx", "0x10026f5d"]]}, {"orig": [["0x1001da2a", "je 0x28b"]], "recomp": [["0x10026f60", "je 0x282"]]}, {"both": [["0x1001da30", "cmp dword ptr [edx + 0x10], 1", "0x10026f66"]]}, {"orig": [["0x1001da34", "jne 0x281"]], "recomp": [["0x10026f6a", "jne 0x278"]]}, {"both": [["0x1001da3a", "lea ebx, [edx + 4]", "0x10026f70"], ["0x1001da3d", "mov eax, dword ptr [ebx]", "0x10026f73"], ["0x1001da3f", "mov edi, dword ptr [eax]", "0x10026f75"]]}, {"orig": [["0x1001da41", "cmp edi, edx"], ["0x1001da43", "jne 0x76"]], "recomp": [["0x10026f77", "cmp edx, edi"], ["0x10026f79", "jne 0x73"]]}, {"both": [["0x1001da45", "mov edi, dword ptr [eax + 8]", "0x10026f7b"]]}, {"orig": [], "recomp": [["0x10026f7e", "cmp dword ptr [edi + 0x10], 0"], ["0x10026f82", "jne 0x4f"], ["0x10026f84", "mov dword ptr [edi + 0x10], 1"], ["0x10026f8b", "mov eax, dword ptr [ebx]"], ["0x10026f8d", "mov dword ptr [eax + 0x10], 0"], ["0x10026f94", "mov ebp, dword ptr [ebx]"], ["0x10026f96", "mov eax, dword ptr [ebp + 8]"], ["0x10026f99", "mov edi, dword ptr [eax]"], ["0x10026f9b", "mov dword ptr [ebp + 8], edi"], ["0x10026f9e", "mov edi, dword ptr [eax]"], ["0x10026fa0", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], edi"], ["0x10026fa6", "je 0x3"], ["0x10026fa8", "mov dword ptr [edi + 4], ebp"], ["0x10026fab", "mov edi, dword ptr [ebp + 4]"], ["0x10026fae", "mov dword ptr [eax + 4], edi"], ["0x10026fb1", "mov edi, dword ptr [esi + 4]"], ["0x10026fb4", "add edi, 4"], ["0x10026fb7", "cmp dword ptr [edi], ebp"], ["0x10026fb9", "je 0xc"], ["0x10026fbb", "mov edi, dword ptr [ebp + 4]"], ["0x10026fbe", "cmp dword ptr [edi], ebp"], ["0x10026fc0", "je 0x5"], ["0x10026fc2", "mov dword ptr [edi + 8], eax"], ["0x10026fc5", "jmp 0x2"], ["0x10026fc7", "mov dword ptr [edi], eax"], ["0x10026fc9", "mov dword ptr [eax], ebp"], ["0x10026fcb", "mov dword ptr [ebp + 4], eax"], ["0x10026fce", "mov eax, dword ptr [ebx]"], ["0x10026fd0", "mov edi, dword ptr [eax + 8]"], ["0x10026fd3", "mov eax, dword ptr [edi]"], ["0x10026fd5", "cmp dword ptr [eax + 0x10], 1"], ["0x10026fd9", "jne 0x9a"], ["0x10026fdf", "mov eax, dword ptr [edi + 8]"], ["0x10026fe2", "cmp dword ptr [eax + 0x10], 1"], ["0x10026fe6", "jne 0x8d"], ["0x10026fec", "jmp 0x71"]]}, {"both": [["0x1001da48", "cmp dword ptr [edi + 0x10], 0", "0x10026fee"], ["0x1001da4c", "jne 0x52", "0x10026ff2"], ["0x1001da4e", "mov dword ptr [edi + 0x10], 1", "0x10026ff4"], ["0x1001da55", "mov eax, dword ptr [ebx]", "0x10026ffb"], ["0x1001da57", "mov dword ptr [eax + 0x10], 0", "0x10026ffd"]]}, {"orig": [["0x1001da5e", "mov eax, dword ptr [ebx]"], ["0x1001da60", "mov ebp, dword ptr [eax + 8]"]], "recomp": [["0x10027004", "mov ebp, dword ptr [ebx]"]]}, {"both": [["0x1001da63", "mov edi, dword ptr [ebp]", "0x10027006"]]}, {"orig": [["0x1001da66", "mov dword ptr [eax + 8], edi"], ["0x1001da69", "mov edi, dword ptr [ebp]"], ["0x1001da6c", "cmp edi, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x1001da72", "je 0x3"]], "recomp": [["0x10027009", "mov eax, dword ptr [edi + 8]"], ["0x1002700c", "mov dword ptr [ebp], eax"], ["0x1002700f", "mov eax, dword ptr [edi + 8]"], ["0x10027012", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"], ["0x10027018", "je 0x3"], ["0x1002701a", "mov dword ptr [eax + 4], ebp"], ["0x1002701d", "mov eax, dword ptr [ebp + 4]"]]}, {"both": [["0x1001da74", "mov dword ptr [edi + 4], eax", "0x10027020"]]}, {"orig": [["0x1001da77", "mov edi, dword ptr [eax + 4]"]], "recomp": [["0x10027023", "mov eax, dword ptr [esi + 4]"], ["0x10027026", "add eax, 4"], ["0x10027029", "cmp dword ptr [eax], ebp"], ["0x1002702b", "je 0xd"], ["0x1002702d", "mov eax, dword ptr [ebp + 4]"], ["0x10027030", "add eax, 8"], ["0x10027033", "cmp dword ptr [eax], ebp"], ["0x10027035", "je 0x3"], ["0x10027037", "mov eax, dword ptr [ebp + 4]"], ["0x1002703a", "mov dword ptr [eax], edi"], ["0x1002703c", "mov dword ptr [edi + 8], ebp"]]}, {"both": [["0x1001da7a", "mov dword ptr [ebp + 4], edi", "0x1002703f"]]}, {"orig": [["0x1001da7d", "mov edi, dword ptr [esi + 4]"], ["0x1001da80", "add edi, 4"], ["0x1001da83", "cmp dword ptr [edi], eax"], ["0x1001da85", "je 0xc"], ["0x1001da87", "mov edi, dword ptr [eax + 4]"], ["0x1001da8a", "cmp dword ptr [edi], eax"], ["0x1001da8c", "je 0x5"], ["0x1001da8e", "mov dword ptr [edi + 8], ebp"], ["0x1001da91", "jmp 0x2"], ["0x1001da93", "mov dword ptr [edi], ebp"], ["0x1001da95", "mov dword ptr [ebp], eax"], ["0x1001da98", "mov dword ptr [eax + 4], ebp"], ["0x1001da9b", "mov eax, dword ptr [ebx]"], ["0x1001da9d", "mov edi, dword ptr [eax + 8]"], ["0x1001daa0", "mov eax, dword ptr [edi]"], ["0x1001daa2", "cmp dword ptr [eax + 0x10], 1"], ["0x1001daa6", "jne 0x98"], ["0x1001daac", "mov eax, dword ptr [edi + 8]"], ["0x1001daaf", "cmp dword ptr [eax + 0x10], 1"], ["0x1001dab3", "jne 0x8b"], ["0x1001dab9", "jmp 0x6f"], ["0x1001dabb", "cmp dword ptr [edi + 0x10], 0"], ["0x1001dabf", "jne 0x50"], ["0x1001dac1", "mov dword ptr [edi + 0x10], 1"], ["0x1001dac8", "mov eax, dword ptr [ebx]"], ["0x1001daca", "mov dword ptr [eax + 0x10], 0"], ["0x1001dad1", "mov eax, dword ptr [ebx]"], ["0x1001dad3", "mov ebp, dword ptr [eax]"], ["0x1001dad5", "mov edi, dword ptr [ebp + 8]"], ["0x1001dad8", "mov dword ptr [eax], edi"], ["0x1001dada", "mov edi, dword ptr [ebp + 8]"], ["0x1001dadd", "cmp edi, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x1001dae3", "je 0x3"], ["0x1001dae5", "mov dword ptr [edi + 4], eax"], ["0x1001dae8", "mov edi, dword ptr [eax + 4]"], ["0x1001daeb", "mov dword ptr [ebp + 4], edi"], ["0x1001daee", "mov edi, dword ptr [esi + 4]"], ["0x1001daf1", "add edi, 4"], ["0x1001daf4", "cmp dword ptr [edi], eax"], ["0x1001daf6", "je 0xd"], ["0x1001daf8", "mov edi, dword ptr [eax + 4]"], ["0x1001dafb", "add edi, 8"], ["0x1001dafe", "cmp dword ptr [edi], eax"], ["0x1001db00", "je 0x3"], ["0x1001db02", "mov edi, dword ptr [eax + 4]"], ["0x1001db05", "mov dword ptr [edi], ebp"], ["0x1001db07", "mov dword ptr [ebp + 8], eax"], ["0x1001db0a", "mov dword ptr [eax + 4], ebp"], ["0x1001db0d", "mov eax, dword ptr [ebx]"], ["0x1001db0f", "mov edi, dword ptr [eax]"], ["0x1001db11", "mov eax, dword ptr [edi + 8]"], ["0x1001db14", "cmp dword ptr [eax + 0x10], 1"], ["0x1001db18", "jne 0xef"], ["0x1001db1e", "mov eax, dword ptr [edi]"], ["0x1001db20", "cmp dword ptr [eax + 0x10], 1"], ["0x1001db24", "jne 0xe3"]], "recomp": [["0x10027042", "mov eax, dword ptr [ebx]"], ["0x10027044", "mov edi, dword ptr [eax]"], ["0x10027046", "mov eax, dword ptr [edi + 8]"], ["0x10027049", "cmp dword ptr [eax + 0x10], 1"], ["0x1002704d", "jne 0xe7"], ["0x10027053", "mov eax, dword ptr [edi]"], ["0x10027055", "cmp dword ptr [eax + 0x10], 1"], ["0x10027059", "jne 0xdb"]]}, {"both": [["0x1001db2a", "mov dword ptr [edi + 0x10], 0", "0x1002705f"], ["0x1001db31", "mov edx, dword ptr [ebx]", "0x10027066"], ["0x1001db33", "mov eax, dword ptr [esi + 4]", "0x10027068"], ["0x1001db36", "cmp dword ptr [eax + 4], edx", "0x1002706b"]]}, {"orig": [["0x1001db39", "jne -0x10f"], ["0x1001db3f", "jmp 0x177"], ["0x1001db44", "mov eax, dword ptr [edi + 8]"], ["0x1001db47", "cmp dword ptr [eax + 0x10], 1"], ["0x1001db4b", "jne 0x52"]], "recomp": [["0x1002706e", "jne -0x10e"], ["0x10027074", "jmp 0x16f"], ["0x10027079", "mov eax, dword ptr [edi + 8]"], ["0x1002707c", "cmp dword ptr [eax + 0x10], 1"], ["0x10027080", "jne 0x53"]]}, {"both": [["0x1001db4d", "mov eax, dword ptr [edi]", "0x10027082"], ["0x1001db4f", "mov dword ptr [eax + 0x10], 1", "0x10027084"], ["0x1001db56", "mov dword ptr [edi + 0x10], 0", "0x1002708b"], ["0x1001db5d", "mov ebx, dword ptr [edi]", "0x10027092"], ["0x1001db5f", "mov ebp, dword ptr [ebx + 8]", "0x10027094"], ["0x1001db62", "mov dword ptr [edi], ebp", "0x10027097"], ["0x1001db64", "mov eax, dword ptr [ebx + 8]", "0x10027099"]]}, {"orig": [["0x1001db67", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x1002709c", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1001db6d", "je 0x3", "0x100270a2"], ["0x1001db6f", "mov dword ptr [eax + 4], edi", "0x100270a4"], ["0x1001db72", "mov eax, dword ptr [edi + 4]", "0x100270a7"], ["0x1001db75", "mov dword ptr [ebx + 4], eax", "0x100270aa"], ["0x1001db78", "mov eax, dword ptr [esi + 4]", "0x100270ad"], ["0x1001db7b", "add eax, 4", "0x100270b0"], ["0x1001db7e", "cmp dword ptr [eax], edi", "0x100270b3"]]}, {"orig": [["0x1001db80", "je 0xf"], ["0x1001db82", "mov ebp, dword ptr [edi + 4]"], ["0x1001db85", "lea eax, [ebp + 8]"], ["0x1001db88", "cmp dword ptr [eax], edi"], ["0x1001db8a", "je 0x5"]], "recomp": [["0x100270b5", "je 0x10"], ["0x100270b7", "mov eax, dword ptr [edi + 4]"], ["0x100270ba", "lea ebp, [eax + 8]"], ["0x100270bd", "cmp dword ptr [ebp], edi"], ["0x100270c0", "jne 0x5"]]}, {"both": [["0x1001db8c", "mov dword ptr [ebp], ebx", "0x100270c2"], ["0x1001db8f", "jmp 0x2", "0x100270c5"], ["0x1001db91", "mov dword ptr [eax], ebx", "0x100270c7"], ["0x1001db93", "mov dword ptr [ebx + 8], edi", "0x100270c9"], ["0x1001db96", "mov dword ptr [edi + 4], ebx", "0x100270cc"], ["0x1001db99", "mov eax, dword ptr [edx + 4]", "0x100270cf"], ["0x1001db9c", "mov edi, dword ptr [eax + 8]", "0x100270d2"], ["0x1001db9f", "mov eax, dword ptr [edx + 4]", "0x100270d5"], ["0x1001dba2", "mov ebx, dword ptr [eax + 0x10]", "0x100270d8"], ["0x1001dba5", "mov dword ptr [edi + 0x10], ebx", "0x100270db"], ["0x1001dba8", "mov ebx, 1", "0x100270de"], ["0x1001dbad", "mov eax, dword ptr [edx + 4]", "0x100270e3"], ["0x1001dbb0", "mov dword ptr [eax + 0x10], ebx", "0x100270e6"], ["0x1001dbb3", "mov ebp, dword ptr [edi + 8]", "0x100270e9"], ["0x1001dbb6", "mov dword ptr [ebp + 0x10], ebx", "0x100270ec"], ["0x1001dbb9", "mov edi, dword ptr [edx + 4]", "0x100270ef"], ["0x1001dbbc", "mov ebx, dword ptr [edi + 8]", "0x100270f2"], ["0x1001dbbf", "mov eax, dword ptr [ebx]", "0x100270f5"], ["0x1001dbc1", "mov dword ptr [edi + 8], eax", "0x100270f7"], ["0x1001dbc4", "mov eax, dword ptr [ebx]", "0x100270fa"]]}, {"orig": [["0x1001dbc6", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x100270fc", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1001dbcc", "je 0x3", "0x10027102"], ["0x1001dbce", "mov dword ptr [eax + 4], edi", "0x10027104"], ["0x1001dbd1", "mov eax, dword ptr [edi + 4]", "0x10027107"], ["0x1001dbd4", "mov dword ptr [ebx + 4], eax", "0x1002710a"], ["0x1001dbd7", "mov eax, dword ptr [esi + 4]", "0x1002710d"], ["0x1001dbda", "add eax, 4", "0x10027110"], ["0x1001dbdd", "cmp dword ptr [eax], edi", "0x10027113"]]}, {"orig": [["0x1001dbdf", "je 0x20"], ["0x1001dbe1", "mov eax, dword ptr [edi + 4]"], ["0x1001dbe4", "cmp dword ptr [eax], edi"], ["0x1001dbe6", "je 0xd"]], "recomp": [["0x10027115", "je 0x1a"], ["0x10027117", "mov eax, dword ptr [edi + 4]"], ["0x1002711a", "cmp dword ptr [eax], edi"], ["0x1002711c", "je 0xa"]]}, {"both": [["0x1001dbe8", "mov dword ptr [eax + 8], ebx", "0x1002711e"], ["0x1001dbeb", "mov dword ptr [ebx], edi", "0x10027121"]]}, {"orig": [["0x1001dbed", "mov dword ptr [edi + 4], ebx"], ["0x1001dbf0", "jmp 0xc6"], ["0x1001dbf5", "mov dword ptr [eax], ebx"], ["0x1001dbf7", "mov dword ptr [ebx], edi"], ["0x1001dbf9", "mov dword ptr [edi + 4], ebx"], ["0x1001dbfc", "jmp 0xba"], ["0x1001dc01", "mov dword ptr [eax], ebx"], ["0x1001dc03", "mov dword ptr [ebx], edi"], ["0x1001dc05", "mov dword ptr [edi + 4], ebx"], ["0x1001dc08", "jmp 0xae"]], "recomp": [["0x10027123", "jmp 0xbd"], ["0x10027128", "mov dword ptr [eax], ebx"], ["0x1002712a", "mov dword ptr [ebx], edi"], ["0x1002712c", "jmp 0xb4"], ["0x10027131", "mov dword ptr [eax], ebx"], ["0x10027133", "mov dword ptr [ebx], edi"], ["0x10027135", "jmp 0xab"]]}, {"both": [["0x1001dc0d", "mov eax, dword ptr [edi]", "0x1002713a"], ["0x1001dc0f", "cmp dword ptr [eax + 0x10], 1", "0x1002713c"], ["0x1001dc13", "jne 0x4e", "0x10027140"], ["0x1001dc15", "mov eax, dword ptr [edi + 8]", "0x10027142"], ["0x1001dc18", "mov dword ptr [eax + 0x10], 1", "0x10027145"], ["0x1001dc1f", "mov dword ptr [edi + 0x10], 0", "0x1002714c"], ["0x1001dc26", "mov ebx, dword ptr [edi + 8]", "0x10027153"], ["0x1001dc29", "mov ebp, dword ptr [ebx]", "0x10027156"], ["0x1001dc2b", "mov dword ptr [edi + 8], ebp", "0x10027158"], ["0x1001dc2e", "mov eax, dword ptr [ebx]", "0x1002715b"]]}, {"orig": [["0x1001dc30", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x1002715d", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1001dc36", "je 0x3", "0x10027163"], ["0x1001dc38", "mov dword ptr [eax + 4], edi", "0x10027165"], ["0x1001dc3b", "mov eax, dword ptr [edi + 4]", "0x10027168"], ["0x1001dc3e", "mov dword ptr [ebx + 4], eax", "0x1002716b"], ["0x1001dc41", "mov eax, dword ptr [esi + 4]", "0x1002716e"], ["0x1001dc44", "add eax, 4", "0x10027171"], ["0x1001dc47", "cmp dword ptr [eax], edi", "0x10027174"], ["0x1001dc49", "je 0xc", "0x10027176"], ["0x1001dc4b", "mov eax, dword ptr [edi + 4]", "0x10027178"], ["0x1001dc4e", "cmp dword ptr [eax], edi", "0x1002717b"]]}]], ["@@ -0x1001dc5e,46 +0x1002718b,47 @@", [{"both": [["0x1001dc5e", "mov eax, dword ptr [edx + 4]", "0x1002718b"], ["0x1001dc61", "mov edi, dword ptr [eax]", "0x1002718e"], ["0x1001dc63", "mov eax, dword ptr [edx + 4]", "0x10027190"], ["0x1001dc66", "mov ebx, dword ptr [eax + 0x10]", "0x10027193"], ["0x1001dc69", "mov dword ptr [edi + 0x10], ebx", "0x10027196"], ["0x1001dc6c", "mov ebx, 1", "0x10027199"], ["0x1001dc71", "mov eax, dword ptr [edx + 4]", "0x1002719e"], ["0x1001dc74", "mov dword ptr [eax + 0x10], ebx", "0x100271a1"], ["0x1001dc77", "mov ebp, dword ptr [edi]", "0x100271a4"], ["0x1001dc79", "mov dword ptr [ebp + 0x10], ebx", "0x100271a6"]]}, {"orig": [["0x1001dc7c", "mov ebx, dword ptr [edx + 4]"], ["0x1001dc7f", "mov edi, dword ptr [ebx]"], ["0x1001dc81", "mov eax, dword ptr [edi + 8]"], ["0x1001dc84", "mov dword ptr [ebx], eax"], ["0x1001dc86", "mov eax, dword ptr [edi + 8]"], ["0x1001dc89", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x1001dc8f", "je 0x3"], ["0x1001dc91", "mov dword ptr [eax + 4], ebx"], ["0x1001dc94", "mov eax, dword ptr [ebx + 4]"], ["0x1001dc97", "mov dword ptr [edi + 4], eax"], ["0x1001dc9a", "mov eax, dword ptr [esi + 4]"], ["0x1001dc9d", "add eax, 4"], ["0x1001dca0", "cmp dword ptr [eax], ebx"]], "recomp": [["0x100271a9", "mov edi, dword ptr [edx + 4]"], ["0x100271ac", "mov ebx, dword ptr [edi]"], ["0x100271ae", "mov eax, dword ptr [ebx + 8]"], ["0x100271b1", "mov dword ptr [edi], eax"], ["0x100271b3", "mov eax, dword ptr [ebx + 8]"], ["0x100271b6", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"], ["0x100271bc", "je 0x3"], ["0x100271be", "mov dword ptr [eax + 4], edi"], ["0x100271c1", "mov eax, dword ptr [edi + 4]"], ["0x100271c4", "mov dword ptr [ebx + 4], eax"], ["0x100271c7", "mov eax, dword ptr [esi + 4]"], ["0x100271ca", "add eax, 4"], ["0x100271cd", "cmp dword ptr [eax], edi"]]}, {"both": [["0x1001dca2", "je 0xf", "0x100271cf"]]}, {"orig": [["0x1001dca4", "mov ebp, dword ptr [ebx + 4]"]], "recomp": [["0x100271d1", "mov ebp, dword ptr [edi + 4]"]]}, {"both": [["0x1001dca7", "lea eax, [ebp + 8]", "0x100271d4"]]}, {"orig": [["0x1001dcaa", "cmp dword ptr [eax], ebx"], ["0x1001dcac", "je 0x5"], ["0x1001dcae", "mov dword ptr [ebp], edi"], ["0x1001dcb1", "jmp 0x2"], ["0x1001dcb3", "mov dword ptr [eax], edi"], ["0x1001dcb5", "mov dword ptr [edi + 8], ebx"], ["0x1001dcb8", "mov dword ptr [ebx + 4], edi"]], "recomp": [["0x100271d7", "cmp dword ptr [eax], edi"], ["0x100271d9", "je 0x5"], ["0x100271db", "mov dword ptr [ebp], ebx"], ["0x100271de", "jmp 0x2"], ["0x100271e0", "mov dword ptr [eax], ebx"], ["0x100271e2", "mov dword ptr [ebx + 8], edi"], ["0x100271e5", "mov dword ptr [edi + 4], ebx"]]}, {"both": [["0x1001dcbb", "mov dword ptr [edx + 0x10], 1", "0x100271e8"], ["0x1001dcc2", "push ecx", "0x100271ef"], ["0x1001dcc3", "call ??3@YAXPAX@Z (FUNCTION)", "0x100271f0"], ["0x1001dcc8", "mov ecx, dword ptr [esp + 0x20]", "0x100271f5"], ["0x1001dccc", "mov eax, dword ptr [esp + 0x1c]", "0x100271f9"], ["0x1001dcd0", "add esp, 4", "0x100271fd"], ["0x1001dcd3", "dec dword ptr [esi + 0xc]", "0x10027200"], ["0x1001dcd6", "mov dword ptr [eax], ecx", "0x10027203"], ["0x1001dcd8", "pop ebp", "0x10027205"], ["0x1001dcd9", "pop edi", "0x10027206"], ["0x1001dcda", "pop esi", "0x10027207"], ["0x1001dcdb", "pop ebx", "0x10027208"], ["0x1001dcdc", "add esp, 4", "0x10027209"]]}, {"orig": [], "recomp": [["0x1002720c", "ret 8"]]}]]]}, {"address": "0x1001dcf0", "recomp": "0x10027210", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Erase", "matching": 0.5652173913043478, "diff": [["@@ -0x1001dcf0,23 +0x10027210,23 @@", [{"both": [["0x1001dcf0", "push ebx", "0x10027210"], ["0x1001dcf1", "push esi", "0x10027211"]]}, {"orig": [["0x1001dcf2", "mov esi, dword ptr [esp + 0xc]"]], "recomp": []}, {"both": [["0x1001dcf6", "push edi", "0x10027212"]]}, {"orig": [["0x1001dcf7", "mov edi, ecx"], ["0x1001dcf9", "mov ebx, esi"], ["0x1001dcfb", "cmp esi, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x10027213", "mov esi, ecx"], ["0x10027215", "mov ebx, dword ptr [esp + 0x10]"], ["0x10027219", "mov edi, ebx"], ["0x1002721b", "cmp ebx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]]}, {"both": [["0x1001dd01", "je 0x20", "0x10027221"]]}, {"orig": [["0x1001dd03", "mov eax, dword ptr [ebx + 8]"], ["0x1001dd06", "mov ecx, edi"]], "recomp": [["0x10027223", "mov eax, dword ptr [edi + 8]"], ["0x10027226", "mov ecx, esi"]]}, {"both": [["0x1001dd08", "push eax", "0x10027228"], ["0x1001dd09", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Erase (FUNCTION)", "0x10027229"]]}, {"orig": [["0x1001dd0e", "mov ebx, dword ptr [ebx]"], ["0x1001dd10", "push esi"], ["0x1001dd11", "mov esi, ebx"]], "recomp": [["0x1002722e", "mov edi, dword ptr [edi]"], ["0x10027230", "push ebx"], ["0x10027231", "mov ebx, edi"]]}, {"both": [["0x1001dd13", "call ??3@YAXPAX@Z (FUNCTION)", "0x10027233"], ["0x1001dd18", "add esp, 4", "0x10027238"]]}, {"orig": [["0x1001dd1b", "cmp ebx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x1002723b", "cmp edi, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]]}, {"both": [["0x1001dd21", "jne -0x20", "0x10027241"], ["0x1001dd23", "pop edi", "0x10027243"], ["0x1001dd24", "pop esi", "0x10027244"], ["0x1001dd25", "pop ebx", "0x10027245"], ["0x1001dd26", "ret 4", "0x10027246"]]}]]]}, {"address": "0x1001dd30", "recomp": "0x10027250", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Init", "matching": 1.0, "diff": []}, {"address": "0x1001dde0", "recomp": "0x1000a730", "name": "_Lockit::~_Lockit", "matching": 1.0, "diff": []}, {"address": "0x1001ddf0", "recomp": "0x10027300", "name": "list<LegoROI *,allocator<LegoROI *> >::~list<LegoROI *,allocator<LegoROI *> >", "matching": 0.972972972972973, "diff": [["@@ -0x1001de13,21 +0x10027323,21 @@", [{"both": [["0x1001de13", "mov eax, dword ptr [eax]", "0x10027323"], ["0x1001de15", "mov dword ptr [ecx], eax", "0x10027325"], ["0x1001de17", "mov ecx, dword ptr [edx]", "0x10027327"], ["0x1001de19", "mov eax, dword ptr [esp + 8]", "0x10027329"], ["0x1001de1d", "push eax", "0x1002732d"], ["0x1001de1e", "mov edx, dword ptr [eax]", "0x1002732e"], ["0x1001de20", "mov dword ptr [edx + 4], ecx", "0x10027330"], ["0x1001de23", "call ??3@YAXPAX@Z (FUNCTION)", "0x10027333"], ["0x1001de28", "add esp, 4", "0x10027338"], ["0x1001de2b", "dec dword ptr [esi + 8]", "0x1002733b"]]}, {"orig": [["0x1001de2e", "cmp dword ptr [esp + 0x10], edi"]], "recomp": [["0x1002733e", "cmp edi, dword ptr [esp + 0x10]"]]}, {"both": [["0x1001de32", "jne -0x2e", "0x10027342"], ["0x1001de34", "mov eax, dword ptr [esi + 4]", "0x10027344"], ["0x1001de37", "push eax", "0x10027347"], ["0x1001de38", "call ??3@YAXPAX@Z (FUNCTION)", "0x10027348"], ["0x1001de3d", "mov dword ptr [esi + 4], 0", "0x1002734d"], ["0x1001de44", "add esp, 4", "0x10027354"], ["0x1001de47", "mov dword ptr [esi + 8], 0", "0x10027357"], ["0x1001de4e", "pop edi", "0x1002735e"], ["0x1001de4f", "pop esi", "0x1002735f"], ["0x1001de50", "add esp, 0xc", "0x10027360"]]}]]]}, {"address": "0x1001de60", "recomp": "0x10027370", "name": "list<LegoROI *,allocator<LegoROI *> >::_Buynode", "matching": 1.0, "diff": []}, {"address": "0x1001de90", "recomp": "0x100273a0", "name": "set<MxCore *,CoreSetCompare,allocator<MxCore *> >::~set<MxCore *,CoreSetCompare,allocator<MxCore *> >", "matching": 1.0, "diff": []}, {"address": "0x1001dee0", "recomp": "0x100273f0", "name": "LegoWorld::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001df00", "recomp": "0x10027410", "name": "Set<MxCore *,CoreSetCompare>::~Set<MxCore *,CoreSetCompare>", "matching": 1.0, "diff": []}, {"address": "0x1001df50", "recomp": "0x10027460", "name": "List<LegoROI *>::~List<LegoROI *>", "matching": 1.0, "diff": []}, {"address": "0x1001dfa0", "recomp": "0x100274d0", "name": "LegoWorld::~LegoWorld", "matching": 1.0, "diff": []}, {"address": "0x1001e0b0", "recomp": "0x100275e0", "name": "LegoWorld::Create", "matching": 1.0, "diff": []}, {"address": "0x1001e2d0", "recomp": "0x10027af0", "name": "LegoEntityList::Compare", "matching": 1.0, "diff": []}, {"address": "0x1001e2f0", "recomp": "0x10027b70", "name": "MxCollection<LegoEntity *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1001e300", "recomp": "0x10027b20", "name": "MxCollection<LegoEntity *>::~MxCollection<LegoEntity *>", "matching": 1.0, "diff": []}, {"address": "0x1001e350", "recomp": "0x10027b10", "name": "MxCollection<LegoEntity *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1001e360", "recomp": "0x1002b050", "name": "MxList<LegoEntity *>::~MxList<LegoEntity *>", "matching": 1.0, "diff": []}, {"address": "0x1001e3f0", "recomp": "0x10027b80", "name": "MxPtrList<LegoEntity>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1001e400", "recomp": "0x10027b90", "name": "LegoEntityList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001e470", "recomp": "0x10027c00", "name": "MxPtrList<LegoEntity>::~MxPtrList<LegoEntity>", "matching": 1.0, "diff": []}, {"address": "0x1001e4c0", "recomp": "0x10027c50", "name": "MxCollection<LegoEntity *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001e530", "recomp": "0x10027cc0", "name": "MxList<LegoEntity *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001e5e0", "recomp": "0x10027d70", "name": "MxPtrList<LegoEntity>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001e650", "recomp": "0x10027800", "name": "LegoCacheSoundList::Compare", "matching": 0.7, "diff": [["@@ -0x1001e650,10 +0x10027800,10 @@", [{"orig": [], "recomp": [["0x10027800", "mov eax, dword ptr [esp + 4]"]]}, {"both": [["0x1001e650", "mov ecx, dword ptr [esp + 8]", "0x10027804"]]}, {"orig": [["0x1001e654", "mov eax, dword ptr [esp + 4]"], ["0x1001e658", "cmp ecx, eax"]], "recomp": [["0x10027808", "cmp eax, ecx"]]}, {"both": [["0x1001e65a", "jne 0x5", "0x1002780a"], ["0x1001e65c", "xor al, al", "0x1002780c"], ["0x1001e65e", "ret 8", "0x1002780e"], ["0x1001e661", "mov al, 1", "0x10027811"]]}, {"orig": [["0x1001e663", "jbe 0x2"]], "recomp": [["0x10027813", "jae 0x2"]]}, {"both": [["0x1001e665", "mov al, 0xff", "0x10027815"], ["0x1001e667", "ret 8", "0x10027817"]]}]]]}, {"address": "0x1001e670", "recomp": "0x10027880", "name": "MxCollection<LegoCacheSound *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1001e680", "recomp": "0x10027830", "name": "MxCollection<LegoCacheSound *>::~MxCollection<LegoCacheSound *>", "matching": 1.0, "diff": []}, {"address": "0x1001e6d0", "recomp": "0x10027820", "name": "MxCollection<LegoCacheSound *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1001e6e0", "recomp": "0x1002aec0", "name": "MxList<LegoCacheSound *>::~MxList<LegoCacheSound *>", "matching": 1.0, "diff": []}, {"address": "0x1001e770", "recomp": "0x10027890", "name": "MxPtrList<LegoCacheSound>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1001e780", "recomp": "0x100278a0", "name": "LegoCacheSoundList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001e7f0", "recomp": "0x10027910", "name": "MxPtrList<LegoCacheSound>::~MxPtrList<LegoCacheSound>", "matching": 1.0, "diff": []}, {"address": "0x1001e840", "recomp": "0x10027960", "name": "MxCollection<LegoCacheSound *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001e8b0", "recomp": "0x100279d0", "name": "MxList<LegoCacheSound *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001e960", "recomp": "0x10027a80", "name": "MxPtrList<LegoCacheSound>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001e9d0", "recomp": "0x10027de0", "name": "LegoWorld::Destroy", "matching": 0.9894736842105263, "diff": [["@@ -0x1001eb2b,57 +0x10027f3b,56 @@", [{"both": [["0x1001eb2b", "push ebx", "0x10027f3b"], ["0x1001eb2c", "push 0x80", "0x10027f3c"], ["0x1001eb31", "push esi", "0x10027f41"], ["0x1001eb32", "call FUN_100b7220 (FUNCTION)", "0x10027f42"], ["0x1001eb37", "add esp, 0xc", "0x10027f47"], ["0x1001eb3a", "mov ecx, dword ptr [ebp - 0x14]", "0x10027f4a"], ["0x1001eb3d", "call dword ptr [edi + 0x40]", "0x10027f4d"], ["0x1001eb40", "jmp -0x90", "0x10027f50"], ["0x1001eb45", "mov ecx, dword ptr [ebp - 0x10]", "0x10027f55"], ["0x1001eb48", "cmp dword ptr [ecx + 0xb4], 0", "0x10027f58"]]}, {"orig": [["0x1001eb4f", "je 0x67"]], "recomp": [["0x10027f5f", "je 0x64"]]}, {"both": [["0x1001eb51", "lea esi, [ecx + 0xa8]", "0x10027f61"], ["0x1001eb57", "mov ecx, dword ptr [ebp - 0x10]", "0x10027f67"], ["0x1001eb5a", "mov eax, dword ptr [ecx + 0xac]", "0x10027f6a"], ["0x1001eb60", "mov ecx, esi", "0x10027f70"], ["0x1001eb62", "mov edx, dword ptr [eax]", "0x10027f72"], ["0x1001eb64", "lea eax, [ebp - 0x48]", "0x10027f74"], ["0x1001eb67", "push edx", "0x10027f77"], ["0x1001eb68", "push eax", "0x10027f78"], ["0x1001eb69", "mov edi, dword ptr [edx + 0xc]", "0x10027f79"], ["0x1001eb6c", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::erase (FUNCTION)", "0x10027f7c"], ["0x1001eb71", "mov ebx, dword ptr [edi]", "0x10027f81"], ["0x1001eb73", "push 'MxPresenter' (STRING)", "0x10027f83"], ["0x1001eb78", "mov ecx, edi", "0x10027f88"], ["0x1001eb7a", "call dword ptr [ebx + 0x10]", "0x10027f8a"], ["0x1001eb7d", "test al, al", "0x10027f8d"]]}, {"orig": [["0x1001eb7f", "je 0x21"], ["0x1001eb81", "mov dword ptr [ebp - 0x14], edi"]], "recomp": [["0x10027f8f", "je 0x1e"]]}, {"both": [["0x1001eb84", "mov eax, dword ptr [edi + 0x1c]", "0x10027f91"], ["0x1001eb87", "test eax, eax", "0x10027f94"], ["0x1001eb89", "je 0x21", "0x10027f96"], ["0x1001eb8b", "push 0", "0x10027f98"], ["0x1001eb8d", "push 0x80", "0x10027f9a"], ["0x1001eb92", "push eax", "0x10027f9f"], ["0x1001eb93", "call FUN_100b7220 (FUNCTION)", "0x10027fa0"], ["0x1001eb98", "add esp, 0xc", "0x10027fa5"], ["0x1001eb9b", "mov ecx, edi", "0x10027fa8"], ["0x1001eb9d", "call dword ptr [ebx + 0x40]", "0x10027faa"], ["0x1001eba0", "jmp 0xa", "0x10027fad"], ["0x1001eba2", "test edi, edi", "0x10027faf"], ["0x1001eba4", "je 0x6", "0x10027fb1"], ["0x1001eba6", "push 1", "0x10027fb3"], ["0x1001eba8", "mov ecx, edi", "0x10027fb5"], ["0x1001ebaa", "call dword ptr [ebx]", "0x10027fb7"], ["0x1001ebac", "mov ecx, dword ptr [ebp - 0x10]", "0x10027fb9"], ["0x1001ebaf", "cmp dword ptr [ecx + 0xb4], 0", "0x10027fbc"]]}, {"orig": [["0x1001ebb6", "jne -0x61"]], "recomp": [["0x10027fc3", "jne -0x5e"]]}, {"both": [["0x1001ebb8", "lea ecx, [ebp - 0x44]", "0x10027fc5"], ["0x1001ebbb", "xor esi, esi", "0x10027fc8"], ["0x1001ebbd", "call MxCore::MxCore (FUNCTION)", "0x10027fca"], ["0x1001ebc2", "mov byte ptr [ebp - 4], 4", "0x10027fcf"], ["0x1001ebc6", "mov eax, dword ptr [ebp - 0x10]", "0x10027fd3"], ["0x1001ebc9", "mov dword ptr [ebp - 0x38], esi", "0x10027fd6"], ["0x1001ebcc", "mov dword ptr [ebp - 0x44], MxListCursor<MxPresenter *>::`vftable' (VTABLE)", "0x10027fd9"], ["0x1001ebd3", "mov byte ptr [ebp - 4], 5", "0x10027fe0"], ["0x1001ebd7", "mov dword ptr [ebp - 0x44], MxPtrListCursor<MxPresenter>::`vftable' (VTABLE)", "0x10027fe4"], ["0x1001ebde", "mov byte ptr [ebp - 4], 6", "0x10027feb"]]}]], ["@@ -0x1001eea1,10 +0x100282ae,11 @@", [{"both": [["0x1001eea1", "jmp MxPresenterListCursor::~MxPresenterListCursor (FUNCTION)", "0x100282ae"], ["0x1001eea6", "lea ecx, [ebp - 0x34]", "0x100282b3"], ["0x1001eea9", "jmp MxCore::~MxCore (FUNCTION)", "0x100282b6"], ["0x1001eeae", "lea ecx, [ebp - 0x34]", "0x100282bb"], ["0x1001eeb1", "jmp MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *> (FUNCTION)", "0x100282be"], ["0x1001eeb6", "lea ecx, [ebp - 0x34]", "0x100282c3"], ["0x1001eeb9", "jmp MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter> (FUNCTION)", "0x100282c6"], ["0x1001eebe", "mov eax, <OFFSET46>", "0x100282cb"], ["0x1001eec3", "jmp ___CxxFrameHandler (FUNCTION)", "0x100282d0"], ["0x1001eec8", "lea ecx, [ebp - 0x34]", "0x100282d5"]]}, {"orig": [], "recomp": [["0x100282d8", "jmp MxPresenterListCursor::~MxPresenterListCursor (FUNCTION)"]]}]]]}, {"address": "0x1001eed0", "recomp": "0x10020740", "name": "MxPresenterListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001ef40", "recomp": "0x100207b0", "name": "MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter>", "matching": 1.0, "diff": []}, {"address": "0x1001ef90", "recomp": "0x10020800", "name": "MxListCursor<MxPresenter *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f000", "recomp": "0x10020870", "name": "MxPtrListCursor<MxPresenter>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f070", "recomp": "0x100208e0", "name": "MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *>", "matching": 1.0, "diff": []}, {"address": "0x1001f0c0", "recomp": "0x10020930", "name": "MxPresenterListCursor::~MxPresenterListCursor", "matching": 1.0, "diff": []}, {"address": "0x1001f110", "recomp": "0x10028520", "name": "LegoEntityListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f180", "recomp": "0x10028590", "name": "MxPtrListCursor<LegoEntity>::~MxPtrListCursor<LegoEntity>", "matching": 1.0, "diff": []}, {"address": "0x1001f1d0", "recomp": "0x100285e0", "name": "MxListCursor<LegoEntity *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f240", "recomp": "0x10028650", "name": "MxPtrListCursor<LegoEntity>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f2b0", "recomp": "0x100286c0", "name": "MxListCursor<LegoEntity *>::~MxListCursor<LegoEntity *>", "matching": 1.0, "diff": []}, {"address": "0x1001f300", "recomp": "0x10028710", "name": "LegoEntityListCursor::~LegoEntityListCursor", "matching": 1.0, "diff": []}, {"address": "0x1001f350", "recomp": "0x100282e0", "name": "LegoCacheSoundListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f3c0", "recomp": "0x10028350", "name": "MxPtrListCursor<LegoCacheSound>::~MxPtrListCursor<LegoCacheSound>", "matching": 1.0, "diff": []}, {"address": "0x1001f410", "recomp": "0x100283a0", "name": "MxListCursor<LegoCacheSound *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f480", "recomp": "0x10028410", "name": "MxPtrListCursor<LegoCacheSound>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f4f0", "recomp": "0x10028480", "name": "MxListCursor<LegoCacheSound *>::~MxListCursor<LegoCacheSound *>", "matching": 1.0, "diff": []}, {"address": "0x1001f540", "recomp": "0x100284d0", "name": "LegoCacheSoundListCursor::~LegoCacheSoundListCursor", "matching": 1.0, "diff": []}, {"address": "0x1001f590", "recomp": "0x10028760", "name": "list<LegoROI *,allocator<LegoROI *> >::erase", "matching": 1.0, "diff": []}, {"address": "0x1001f5e0", "recomp": "0x100287b0", "name": "LegoWorld::Notify", "matching": 1.0, "diff": []}, {"address": "0x1001f630", "recomp": "0x10028800", "name": "LegoWorld::VTable0x54", "matching": 1.0, "diff": []}, {"address": "0x1001f830", "recomp": "0x100289f0", "name": "LegoPathControllerListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f8a0", "recomp": "0x10028a60", "name": "MxPtrListCursor<LegoPathController>::~MxPtrListCursor<LegoPathController>", "matching": 1.0, "diff": []}, {"address": "0x1001f8f0", "recomp": "0x10028ab0", "name": "MxListCursor<LegoPathController *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f960", "recomp": "0x10028b20", "name": "MxPtrListCursor<LegoPathController>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1001f9d0", "recomp": "0x10028b90", "name": "MxListCursor<LegoPathController *>::~MxListCursor<LegoPathController *>", "matching": 1.0, "diff": []}, {"address": "0x1001fa20", "recomp": "0x10028be0", "name": "LegoPathControllerListCursor::~LegoPathControllerListCursor", "matching": 1.0, "diff": []}, {"address": "0x1001fa70", "recomp": "0x100288f0", "name": "LegoWorld::FUN_1001fa70", "matching": 0.0, "stub": true}, {"address": "0x1001fc80", "recomp": "0x10028900", "name": "LegoWorld::FUN_1001fc80", "matching": 1.0, "diff": []}, {"address": "0x1001ff80", "recomp": "0x10028c30", "name": "LegoWorld::AddPath", "matching": 1.0, "diff": []}, {"address": "0x10020120", "recomp": "0x10028cd0", "name": "LegoWorld::GetCurrPathInfo", "matching": 1.0, "diff": []}, {"address": "0x10020220", "recomp": "0x10028dd0", "name": "LegoWorld::Add", "matching": 0.8795811518324608, "diff": [["@@ -0x10020220,65 +0x10028dd0,63 @@", [{"both": [["0x10020220", "mov eax, dword ptr fs:[0]", "0x10028dd0"], ["0x10020226", "push ebp", "0x10028dd6"], ["0x10020227", "mov ebp, esp", "0x10028dd7"], ["0x10020229", "push -1", "0x10028dd9"], ["0x1002022b", "push <OFFSET1>", "0x10028ddb"], ["0x10020230", "push eax", "0x10028de0"], ["0x10020231", "mov dword ptr fs:[0], esp", "0x10028de1"]]}, {"orig": [["0x10020238", "sub esp, 0x1c"]], "recomp": [["0x10028de8", "sub esp, 0x18"]]}, {"both": [["0x1002023b", "cmp dword ptr [ebp + 8], 0", "0x10028deb"], ["0x1002023f", "push ebx", "0x10028def"], ["0x10020240", "mov dword ptr [ebp - 0x20], ecx", "0x10028df0"], ["0x10020243", "push esi", "0x10028df3"], ["0x10020244", "push edi", "0x10028df4"]]}, {"orig": [["0x10020245", "je 0x10d"]], "recomp": [["0x10028df5", "je 0x107"]]}, {"both": [["0x1002024b", "push 'LegoWorld' (STRING)", "0x10028dfb"], ["0x10020250", "mov eax, dword ptr [ebp + 8]", "0x10028e00"], ["0x10020253", "mov ecx, eax", "0x10028e03"], ["0x10020255", "mov ebx, dword ptr [eax]", "0x10028e05"], ["0x10020257", "call dword ptr [ebx + 0x10]", "0x10028e07"], ["0x1002025a", "test al, al", "0x10028e0a"]]}, {"orig": [["0x1002025c", "jne 0xf6"]], "recomp": [["0x10028e0c", "jne 0xf0"]]}, {"both": [["0x10020262", "push 'LegoWorldPresenter' (STRING)", "0x10028e12"], ["0x10020267", "mov eax, dword ptr [ebp + 8]", "0x10028e17"], ["0x1002026a", "mov ecx, eax", "0x10028e1a"], ["0x1002026c", "mov ebx, dword ptr [eax]", "0x10028e1c"], ["0x1002026e", "call dword ptr [ebx + 0x10]", "0x10028e1e"], ["0x10020271", "test al, al", "0x10028e21"]]}, {"orig": [["0x10020273", "jne 0xdf"]], "recomp": [["0x10028e23", "jne 0xd9"]]}, {"both": [["0x10020279", "push 'LegoAnimPresenter' (STRING)", "0x10028e29"], ["0x1002027e", "mov eax, dword ptr [ebp + 8]", "0x10028e2e"], ["0x10020281", "mov ecx, eax", "0x10028e31"], ["0x10020283", "mov ebx, dword ptr [eax]", "0x10028e33"], ["0x10020285", "call dword ptr [ebx + 0x10]", "0x10028e35"], ["0x10020288", "test al, al", "0x10028e38"]]}, {"orig": [["0x1002028a", "je 0x39"]], "recomp": [["0x10028e3a", "je 0x33"], ["0x10028e3c", "mov esi, dword ptr [ebp + 8]"]]}, {"both": [["0x1002028c", "push 'ConfigAnimation' (STRING)", "0x10028e3f"]]}, {"orig": [["0x10020291", "mov eax, dword ptr [ebp + 8]"], ["0x10020294", "mov ecx, dword ptr [eax + 0x1c]"], ["0x10020297", "mov edx, dword ptr [ecx + 0x18]"], ["0x1002029a", "push edx"]], "recomp": [["0x10028e44", "mov eax, dword ptr [esi + 0x1c]"], ["0x10028e47", "mov ecx, dword ptr [eax + 0x18]"], ["0x10028e4a", "push ecx"]]}, {"both": [["0x1002029b", "call __strcmpi (FUNCTION)", "0x10028e4b"], ["0x100202a0", "add esp, 8", "0x10028e50"], ["0x100202a3", "test eax, eax", "0x10028e53"]]}, {"orig": [["0x100202a5", "jne 0x1e"], ["0x100202a7", "mov eax, dword ptr [ebp + 8]"], ["0x100202aa", "push eax"]], "recomp": [["0x10028e55", "jne 0x18"], ["0x10028e57", "push esi"]]}, {"both": [["0x100202ab", "call FUN_1003e050 (FUNCTION)", "0x10028e58"], ["0x100202b0", "add esp, 4", "0x10028e5d"]]}, {"orig": [["0x100202b3", "mov eax, dword ptr [ebp + 8]"], ["0x100202b6", "mov ecx, dword ptr [eax + 0x1c]"], ["0x100202b9", "mov edx, dword ptr [eax + 0x64]"], ["0x100202bc", "mov ebx, dword ptr [edx + 8]"], ["0x100202bf", "mov eax, dword ptr [ecx]"], ["0x100202c1", "push ebx"], ["0x100202c2", "call dword ptr [eax + 0x28]"]], "recomp": [["0x10028e60", "mov ecx, dword ptr [esi + 0x1c]"], ["0x10028e63", "mov eax, dword ptr [esi + 0x64]"], ["0x10028e66", "mov ebx, dword ptr [ecx]"], ["0x10028e68", "mov edx, dword ptr [eax + 8]"], ["0x10028e6b", "push edx"], ["0x10028e6c", "call dword ptr [ebx + 0x28]"]]}, {"both": [["0x100202c5", "push 'MxControlPresenter' (STRING)", "0x10028e6f"], ["0x100202ca", "mov eax, dword ptr [ebp + 8]", "0x10028e74"], ["0x100202cd", "mov ecx, eax", "0x10028e77"], ["0x100202cf", "mov ebx, dword ptr [eax]", "0x10028e79"], ["0x100202d1", "call dword ptr [ebx + 0x10]", "0x10028e7b"], ["0x100202d4", "test al, al", "0x10028e7e"], ["0x100202d6", "je 0xce", "0x10028e80"], ["0x100202dc", "mov esi, dword ptr [ebp - 0x20]", "0x10028e86"], ["0x100202df", "lea ecx, [ebp - 0x1c]", "0x10028e89"], ["0x100202e2", "add esi, 0xb8", "0x10028e8c"]]}]], ["@@ -0x1002036a,21 +0x10028f14,21 @@", [{"both": [["0x1002036a", "push 0", "0x10028f14"], ["0x1002036c", "mov ecx, dword ptr [ebp - 0x20]", "0x10028f16"], ["0x1002036f", "mov edx, dword ptr [ebp + 8]", "0x10028f19"], ["0x10020372", "mov eax, dword ptr [ecx + 0xcc]", "0x10028f1c"], ["0x10020378", "push eax", "0x10028f22"], ["0x10020379", "mov ecx, esi", "0x10028f23"], ["0x1002037b", "push edx", "0x10028f25"], ["0x1002037c", "call MxList<MxPresenter *>::InsertEntry (FUNCTION)", "0x10028f26"], ["0x10020381", "mov dword ptr [ebp - 4], 0xffffffff", "0x10028f2b"], ["0x10020388", "call <OFFSET12>", "0x10028f32"]]}, {"orig": [["0x1002038d", "jmp 0x340"]], "recomp": [["0x10028f37", "jmp 0x322"]]}, {"both": [["0x10020392", "lea ecx, [ebp - 0x1c]", "0x10028f3c"], ["0x10020395", "jmp MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *> (FUNCTION)", "0x10028f3f"], ["0x1002039a", "lea ecx, [ebp - 0x1c]", "0x10028f44"], ["0x1002039d", "jmp MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter> (FUNCTION)", "0x10028f47"], ["0x100203a2", "lea ecx, [ebp - 0x1c]", "0x10028f4c"], ["0x100203a5", "jmp MxPresenterListCursor::~MxPresenterListCursor (FUNCTION)", "0x10028f4f"], ["0x100203aa", "push 'MxEntity' (STRING)", "0x10028f54"], ["0x100203af", "mov eax, dword ptr [ebp + 8]", "0x10028f59"], ["0x100203b2", "mov ecx, eax", "0x10028f5c"], ["0x100203b4", "mov ebx, dword ptr [eax]", "0x10028f5e"]]}]], ["@@ -0x10020446,56 +0x10028ff0,56 @@", [{"both": [["0x10020446", "mov ecx, dword ptr [ebp - 0x20]", "0x10028ff0"], ["0x10020449", "push 0", "0x10028ff3"], ["0x1002044b", "mov edx, dword ptr [ebp + 8]", "0x10028ff5"], ["0x1002044e", "mov ecx, dword ptr [ecx + 0x9c]", "0x10028ff8"], ["0x10020454", "mov eax, dword ptr [ecx + 0x14]", "0x10028ffe"], ["0x10020457", "push eax", "0x10029001"], ["0x10020458", "push edx", "0x10029002"], ["0x10020459", "call MxList<LegoEntity *>::InsertEntry (FUNCTION)", "0x10029003"], ["0x1002045e", "mov dword ptr [ebp - 4], 0xffffffff", "0x10029008"], ["0x10020465", "call <OFFSET21>", "0x1002900f"]]}, {"orig": [["0x1002046a", "jmp 0x263"]], "recomp": [["0x10029014", "jmp 0x245"]]}, {"both": [["0x1002046f", "lea ecx, [ebp - 0x1c]", "0x10029019"], ["0x10020472", "jmp MxListCursor<LegoEntity *>::~MxListCursor<LegoEntity *> (FUNCTION)", "0x1002901c"], ["0x10020477", "lea ecx, [ebp - 0x1c]", "0x10029021"], ["0x1002047a", "jmp MxPtrListCursor<LegoEntity>::~MxPtrListCursor<LegoEntity> (FUNCTION)", "0x10029024"], ["0x1002047f", "lea ecx, [ebp - 0x1c]", "0x10029029"], ["0x10020482", "jmp LegoEntityListCursor::~LegoEntityListCursor (FUNCTION)", "0x1002902c"], ["0x10020487", "push 'LegoLocomotionAnimPresenter' (STRING)", "0x10029031"], ["0x1002048c", "mov eax, dword ptr [ebp + 8]", "0x10029036"], ["0x1002048f", "mov ecx, eax", "0x10029039"], ["0x10020491", "mov ebx, dword ptr [eax]", "0x1002903b"], ["0x10020493", "call dword ptr [ebx + 0x10]", "0x1002903d"], ["0x10020496", "test al, al", "0x10029040"]]}, {"orig": [["0x10020498", "jne 0x161"]], "recomp": [["0x10029042", "jne 0x143"]]}, {"both": [["0x1002049e", "push 'LegoHideAnimPresenter' (STRING)", "0x10029048"], ["0x100204a3", "mov eax, dword ptr [ebp + 8]", "0x1002904d"], ["0x100204a6", "mov ecx, eax", "0x10029050"], ["0x100204a8", "mov ebx, dword ptr [eax]", "0x10029052"], ["0x100204aa", "call dword ptr [ebx + 0x10]", "0x10029054"], ["0x100204ad", "test al, al", "0x10029057"]]}, {"orig": [["0x100204af", "jne 0x14a"]], "recomp": [["0x10029059", "jne 0x12c"]]}, {"both": [["0x100204b5", "push 'LegoLoopingAnimPresenter' (STRING)", "0x1002905f"], ["0x100204ba", "mov eax, dword ptr [ebp + 8]", "0x10029064"], ["0x100204bd", "mov ecx, eax", "0x10029067"], ["0x100204bf", "mov ebx, dword ptr [eax]", "0x10029069"], ["0x100204c1", "call dword ptr [ebx + 0x10]", "0x1002906b"], ["0x100204c4", "test al, al", "0x1002906e"]]}, {"orig": [["0x100204c6", "jne 0x133"]], "recomp": [["0x10029070", "jne 0x115"]]}, {"both": [["0x100204cc", "push 'LegoCacheSound' (STRING)", "0x10029076"], ["0x100204d1", "mov eax, dword ptr [ebp + 8]", "0x1002907b"], ["0x100204d4", "mov ecx, eax", "0x1002907e"], ["0x100204d6", "mov ebx, dword ptr [eax]", "0x10029080"], ["0x100204d8", "call dword ptr [ebx + 0x10]", "0x10029082"]]}, {"orig": [["0x100204db", "test al, al"], ["0x100204dd", "je 0xc6"], ["0x100204e3", "mov ecx, dword ptr [ebp - 0x20]"]], "recomp": [["0x10029085", "mov ecx, dword ptr [ebp - 0x20]"], ["0x10029088", "test al, al"], ["0x1002908a", "je 0xc3"]]}, {"both": [["0x100204e6", "mov eax, dword ptr [ecx + 0xa0]", "0x10029090"], ["0x100204ec", "lea ecx, [ebp - 0x1c]", "0x10029096"], ["0x100204ef", "push eax", "0x10029099"], ["0x100204f0", "call MxListCursor<LegoCacheSound *>::MxListCursor<LegoCacheSound *> (FUNCTION)", "0x1002909a"], ["0x100204f5", "mov dword ptr [ebp - 4], 6", "0x1002909f"], ["0x100204fc", "mov dword ptr [ebp - 0x1c], MxPtrListCursor<LegoCacheSound>::`vftable' (VTABLE)", "0x100290a6"], ["0x10020503", "mov dword ptr [ebp - 4], 7", "0x100290ad"], ["0x1002050a", "mov dword ptr [ebp - 0x1c], LegoCacheSoundListCursor::`vftable' (VTABLE)", "0x100290b4"], ["0x10020511", "mov eax, 0xffffffff", "0x100290bb"], ["0x10020516", "mov esi, dword ptr [ebp + 8]", "0x100290c0"]]}]], ["@@ -0x10020568,47 +0x10029112,36 @@", [{"both": [["0x10020568", "mov ecx, dword ptr [ebp - 0x20]", "0x10029112"], ["0x1002056b", "push 0", "0x10029115"], ["0x1002056d", "mov edx, dword ptr [ebp + 8]", "0x10029117"], ["0x10020570", "mov ecx, dword ptr [ecx + 0xa0]", "0x1002911a"], ["0x10020576", "mov eax, dword ptr [ecx + 0x14]", "0x10029120"], ["0x10020579", "push eax", "0x10029123"], ["0x1002057a", "push edx", "0x10029124"], ["0x1002057b", "call MxList<LegoCacheSound *>::InsertEntry (FUNCTION)", "0x10029125"], ["0x10020580", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002912a"], ["0x10020587", "call <OFFSET33>", "0x10029131"]]}, {"orig": [["0x1002058c", "jmp 0x141"]], "recomp": [["0x10029136", "jmp 0x123"]]}, {"both": [["0x10020591", "lea ecx, [ebp - 0x1c]", "0x1002913b"], ["0x10020594", "jmp MxListCursor<LegoCacheSound *>::~MxListCursor<LegoCacheSound *> (FUNCTION)", "0x1002913e"], ["0x10020599", "lea ecx, [ebp - 0x1c]", "0x10029143"], ["0x1002059c", "jmp MxPtrListCursor<LegoCacheSound>::~MxPtrListCursor<LegoCacheSound> (FUNCTION)", "0x10029146"], ["0x100205a1", "lea ecx, [ebp - 0x1c]", "0x1002914b"], ["0x100205a4", "jmp LegoCacheSoundListCursor::~LegoCacheSoundListCursor (FUNCTION)", "0x1002914e"]]}, {"orig": [["0x100205a9", "mov esi, dword ptr [ebp - 0x20]"]], "recomp": [["0x10029153", "mov edi, dword ptr [ecx + 0xac]"], ["0x10029159", "lea esi, [ecx + 0xa8]"]]}, {"both": [["0x100205ac", "lea eax, [ebp + 8]", "0x1002915f"]]}, {"orig": [["0x100205af", "add esi, 0xa8"], ["0x100205b5", "push eax"]], "recomp": []}, {"both": [["0x100205b6", "lea ecx, [ebp - 0x10]", "0x10029162"]]}, {"orig": [], "recomp": [["0x10029165", "push eax"]]}, {"both": [["0x100205b9", "push ecx", "0x10029166"], ["0x100205ba", "mov ecx, esi", "0x10029167"]]}, {"orig": [["0x100205bc", "call <OFFSET38>"], ["0x100205c1", "mov ecx, dword ptr [ebp - 0x20]"], ["0x100205c4", "mov edx, dword ptr [ecx + 0xac]"], ["0x100205ca", "cmp dword ptr [ebp - 0x10], edx"], ["0x100205cd", "je 0xe"], ["0x100205cf", "mov eax, dword ptr [ebp - 0x10]"], ["0x100205d2", "mov ecx, dword ptr [ebp + 8]"], ["0x100205d5", "cmp dword ptr [eax + 0xc], ecx"], ["0x100205d8", "lea eax, [ebp - 0x10]"], ["0x100205db", "jle 0x6"], ["0x100205dd", "lea eax, [ebp - 0x28]"], ["0x100205e0", "mov dword ptr [ebp - 0x28], edx"], ["0x100205e3", "cmp dword ptr [eax], edx"]], "recomp": [["0x10029169", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::find (FUNCTION)"], ["0x1002916e", "cmp edi, dword ptr [ebp - 0x10]"]]}, {"both": [["0x100205e5", "jne 0xe7", "0x10029171"], ["0x100205eb", "lea eax, [ebp + 8]", "0x10029177"], ["0x100205ee", "lea ecx, [ebp - 0x14]", "0x1002917a"], ["0x100205f1", "push eax", "0x1002917d"], ["0x100205f2", "push ecx", "0x1002917e"], ["0x100205f3", "mov ecx, esi", "0x1002917f"], ["0x100205f5", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::insert (FUNCTION)", "0x10029181"], ["0x100205fa", "jmp 0xd3", "0x10029186"], ["0x100205ff", "mov esi, dword ptr [ebp - 0x20]", "0x1002918b"], ["0x10020602", "lea ecx, [ebp - 0x1c]", "0x1002918e"]]}]], ["@@ -0x1002065e,21 +0x100291ea,21 @@", [{"both": [["0x1002065e", "je 0xd", "0x100291ea"], ["0x10020660", "mov eax, dword ptr [ebp - 0x10]", "0x100291ec"], ["0x10020663", "mov ecx, dword ptr [eax + 8]", "0x100291ef"], ["0x10020666", "mov dword ptr [ebp - 0x10], ecx", "0x100291f2"], ["0x10020669", "cmp ecx, ebx", "0x100291f5"], ["0x1002066b", "jne -0x22", "0x100291f7"], ["0x1002066d", "cmp dword ptr [ebp - 0x10], 0", "0x100291f9"], ["0x10020671", "je 0x11", "0x100291fd"], ["0x10020673", "mov dword ptr [ebp - 4], 0xffffffff", "0x100291ff"], ["0x1002067a", "call <OFFSET40>", "0x10029206"]]}, {"orig": [["0x1002067f", "jmp -0x32c"]], "recomp": [["0x1002920b", "jmp -0x30e"]]}, {"both": [["0x10020684", "call Lego (FUNCTION)", "0x10029210"], ["0x10020689", "push eax", "0x10029215"], ["0x1002068a", "mov ecx, dword ptr [ebp + 8]", "0x10029216"], ["0x1002068d", "call MxPresenter::SendToCompositePresenter (FUNCTION)", "0x10029219"], ["0x10020692", "push 0", "0x1002921e"], ["0x10020694", "mov ecx, dword ptr [ebp - 0x20]", "0x10029220"], ["0x10020697", "mov edx, dword ptr [ebp + 8]", "0x10029223"], ["0x1002069a", "mov eax, dword ptr [ecx + 0x94]", "0x10029226"], ["0x100206a0", "push eax", "0x1002922c"], ["0x100206a1", "mov ecx, esi", "0x1002922d"]]}]], ["@@ -0x100206b3,34 +0x1002923f,43 @@", [{"both": [["0x100206b3", "call dword ptr [ebx + 0x10]", "0x1002923f"], ["0x100206b6", "test al, al", "0x10029242"], ["0x100206b8", "je 0xc", "0x10029244"], ["0x100206ba", "mov eax, dword ptr [ebp + 8]", "0x10029246"], ["0x100206bd", "mov ecx, dword ptr [ebp - 0x20]", "0x10029249"], ["0x100206c0", "mov dword ptr [ecx + 0xf0], eax", "0x1002924c"], ["0x100206c6", "mov dword ptr [ebp - 4], 0xffffffff", "0x10029252"], ["0x100206cd", "call <OFFSET40>", "0x10029259"], ["0x100206d2", "mov ecx, dword ptr [ebp - 0x20]", "0x1002925e"], ["0x100206d5", "cmp dword ptr [ecx + 0xdc], 0", "0x10029261"]]}, {"orig": [["0x100206dc", "je -0x38a"]], "recomp": [["0x10029268", "je -0x36c"]]}, {"both": [["0x100206e2", "push 'MxPresenter' (STRING)", "0x1002926e"], ["0x100206e7", "mov eax, dword ptr [ebp + 8]", "0x10029273"], ["0x100206ea", "mov ecx, eax", "0x10029276"], ["0x100206ec", "mov ebx, dword ptr [eax]", "0x10029278"], ["0x100206ee", "call dword ptr [ebx + 0x10]", "0x1002927a"], ["0x100206f1", "test al, al", "0x1002927d"]]}, {"orig": [["0x100206f3", "je -0x3a1"]], "recomp": [["0x1002927f", "je -0x383"]]}, {"both": [["0x100206f9", "mov ecx, dword ptr [ebp + 8]", "0x10029285"], ["0x100206fc", "call MxPresenter::IsEnabled (FUNCTION)", "0x10029288"], ["0x10020701", "test al, al", "0x1002928d"]]}, {"orig": [["0x10020703", "je -0x3b1"]], "recomp": [["0x1002928f", "je -0x393"]]}, {"both": [["0x10020709", "push 0", "0x10029295"], ["0x1002070b", "mov eax, dword ptr [ebp + 8]", "0x10029297"], ["0x1002070e", "mov ecx, eax", "0x1002929a"], ["0x10020710", "mov ebx, dword ptr [eax]", "0x1002929c"], ["0x10020712", "call dword ptr [ebx + 0x54]", "0x1002929e"], ["0x10020715", "lea ecx, [ebp + 8]", "0x100292a1"], ["0x10020718", "lea eax, [ebp - 0x24]", "0x100292a4"], ["0x1002071b", "push ecx", "0x100292a7"], ["0x1002071c", "push eax", "0x100292a8"], ["0x1002071d", "mov ecx, dword ptr [ebp - 0x20]", "0x100292a9"], ["0x10020720", "add ecx, 0xd0", "0x100292ac"], ["0x10020726", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::insert (FUNCTION)", "0x100292b2"]]}, {"orig": [], "recomp": [["0x100292b7", "jmp -0x3ba"], ["0x100292bc", "lea ecx, [ebp - 0x1c]"], ["0x100292bf", "jmp MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *> (FUNCTION)"], ["0x100292c4", "lea ecx, [ebp - 0x1c]"], ["0x100292c7", "jmp MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter> (FUNCTION)"], ["0x100292cc", "mov eax, <OFFSET45>"], ["0x100292d1", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x100292d6", "lea ecx, [ebp - 0x1c]"], ["0x100292d9", "jmp MxPresenterListCursor::~MxPresenterListCursor (FUNCTION)"]]}]]]}, {"address": "0x10020760", "recomp": "0x100293c0", "name": "MxListCursor<MxPresenter *>::MxListCursor<MxPresenter *>", "matching": 1.0, "diff": []}, {"address": "0x100207d0", "recomp": "0x10029350", "name": "MxListCursor<LegoEntity *>::MxListCursor<LegoEntity *>", "matching": 1.0, "diff": []}, {"address": "0x10020840", "recomp": "0x100292e0", "name": "MxListCursor<LegoCacheSound *>::MxListCursor<LegoCacheSound *>", "matching": 1.0, "diff": []}, {"address": "0x100208b0", "recomp": "0x10029430", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::insert", "matching": 0.8181818181818182, "diff": [["@@ -0x100208b0,114 +0x10029430,114 @@", [{"both": [["0x100208b0", "sub esp, 0xc", "0x10029430"], ["0x100208b3", "push ebx", "0x10029433"], ["0x100208b4", "push esi", "0x10029434"]]}, {"orig": [["0x100208b5", "mov edx, dword ptr [ecx + 4]"]], "recomp": []}, {"both": [["0x100208b8", "push edi", "0x10029435"]]}, {"orig": [["0x100208b9", "push ebp"]], "recomp": []}, {"both": [["0x100208ba", "mov esi, ecx", "0x10029436"]]}, {"orig": [["0x100208bc", "mov ebx, dword ptr [edx + 4]"], ["0x100208bf", "mov ebp, edx"], ["0x100208c1", "mov ecx, 1"]], "recomp": [["0x10029438", "push ebp"], ["0x10029439", "mov edx, 1"], ["0x1002943e", "mov ecx, dword ptr [esi + 4]"], ["0x10029441", "mov ebp, ecx"], ["0x10029443", "mov ebx, dword ptr [ecx + 4]"]]}, {"both": [["0x100208c6", "cmp ebx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]", "0x10029446"], ["0x100208cc", "je 0x27", "0x1002944c"]]}, {"orig": [["0x100208ce", "mov eax, dword ptr [esp + 0x24]"], ["0x100208d2", "mov eax, dword ptr [eax]"]], "recomp": [["0x1002944e", "mov edx, dword ptr [esp + 0x24]"], ["0x10029452", "mov eax, dword ptr [edx]"]]}, {"both": [["0x100208d4", "mov ebp, ebx", "0x10029454"]]}, {"orig": [["0x100208d6", "mov ecx, 1"]], "recomp": [["0x10029456", "mov edx, 1"]]}, {"both": [["0x100208db", "cmp dword ptr [ebx + 0xc], eax", "0x1002945b"], ["0x100208de", "jg 0x2", "0x1002945e"]]}, {"orig": [["0x100208e0", "xor ecx, ecx"], ["0x100208e2", "test ecx, ecx"]], "recomp": [["0x10029460", "xor edx, edx"], ["0x10029462", "test edx, edx"]]}, {"both": [["0x100208e4", "jne 0x5", "0x10029464"], ["0x100208e6", "mov ebx, dword ptr [ebx + 8]", "0x10029466"], ["0x100208e9", "jmp 0x2", "0x10029469"], ["0x100208eb", "mov ebx, dword ptr [ebx]", "0x1002946b"], ["0x100208ed", "cmp ebx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]", "0x1002946d"], ["0x100208f3", "jne -0x21", "0x10029473"], ["0x100208f5", "cmp dword ptr [esi + 8], 0", "0x10029475"], ["0x100208f9", "je 0x34", "0x10029479"]]}, {"orig": [["0x100208fb", "mov eax, dword ptr [esp + 0x24]"], ["0x100208ff", "lea ecx, [esp + 0x14]"], ["0x10020903", "mov dword ptr [esp + 0x10], 1"]], "recomp": [["0x1002947b", "mov edx, dword ptr [esp + 0x24]"], ["0x1002947f", "lea eax, [esp + 0x14]"], ["0x10029483", "push edx"], ["0x10029484", "mov ecx, esi"], ["0x10029486", "mov dword ptr [esp + 0x14], 1"], ["0x1002948e", "push ebp"], ["0x1002948f", "push ebx"]]}, {"both": [["0x1002090b", "push eax", "0x10029490"]]}, {"orig": [["0x1002090c", "push ebp"], ["0x1002090d", "push ebx"], ["0x1002090e", "push ecx"], ["0x1002090f", "mov ecx, esi"]], "recomp": []}, {"both": [["0x10020911", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Insert (FUNCTION)", "0x10029491"], ["0x10020916", "mov ecx, dword ptr [eax]", "0x10029496"], ["0x10020918", "mov eax, dword ptr [esp + 0x20]", "0x10029498"], ["0x1002091c", "mov dword ptr [eax], ecx", "0x1002949c"], ["0x1002091e", "mov edx, dword ptr [esp + 0x10]", "0x1002949e"], ["0x10020922", "pop ebp", "0x100294a2"], ["0x10020923", "pop edi", "0x100294a3"], ["0x10020924", "mov dword ptr [eax + 4], edx", "0x100294a4"], ["0x10020927", "pop esi", "0x100294a7"], ["0x10020928", "pop ebx", "0x100294a8"], ["0x10020929", "add esp, 0xc", "0x100294a9"], ["0x1002092c", "ret 8", "0x100294ac"], ["0x1002092f", "mov dword ptr [esp + 0x18], ebp", "0x100294af"]]}, {"orig": [["0x10020933", "test ecx, ecx"]], "recomp": [["0x100294b3", "test edx, edx"]]}, {"both": [["0x10020935", "je 0x41", "0x100294b5"]]}, {"orig": [["0x10020937", "cmp dword ptr [edx], ebp"]], "recomp": [["0x100294b7", "cmp dword ptr [ecx], ebp"]]}, {"both": [["0x10020939", "jne 0x34", "0x100294b9"]]}, {"orig": [["0x1002093b", "mov eax, dword ptr [esp + 0x24]"], ["0x1002093f", "lea ecx, [esp + 0x14]"], ["0x10020943", "mov dword ptr [esp + 0x10], 1"]], "recomp": [["0x100294bb", "mov edx, dword ptr [esp + 0x24]"], ["0x100294bf", "lea eax, [esp + 0x14]"], ["0x100294c3", "push edx"], ["0x100294c4", "mov ecx, esi"], ["0x100294c6", "mov dword ptr [esp + 0x14], 1"], ["0x100294ce", "push ebp"], ["0x100294cf", "push ebx"]]}, {"both": [["0x1002094b", "push eax", "0x100294d0"]]}, {"orig": [["0x1002094c", "push ebp"], ["0x1002094d", "push ebx"], ["0x1002094e", "push ecx"], ["0x1002094f", "mov ecx, esi"]], "recomp": []}, {"both": [["0x10020951", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Insert (FUNCTION)", "0x100294d1"], ["0x10020956", "mov ecx, dword ptr [eax]", "0x100294d6"], ["0x10020958", "mov eax, dword ptr [esp + 0x20]", "0x100294d8"], ["0x1002095c", "mov dword ptr [eax], ecx", "0x100294dc"], ["0x1002095e", "mov edx, dword ptr [esp + 0x10]", "0x100294de"], ["0x10020962", "pop ebp", "0x100294e2"], ["0x10020963", "pop edi", "0x100294e3"], ["0x10020964", "mov dword ptr [eax + 4], edx", "0x100294e4"], ["0x10020967", "pop esi", "0x100294e7"], ["0x10020968", "pop ebx", "0x100294e8"], ["0x10020969", "add esp, 0xc", "0x100294e9"], ["0x1002096c", "ret 8", "0x100294ec"], ["0x1002096f", "lea ecx, [esp + 0x18]", "0x100294ef"], ["0x10020973", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::iterator::_Dec (FUNCTION)", "0x100294f3"]]}, {"orig": [["0x10020978", "mov ecx, dword ptr [esp + 0x18]"], ["0x1002097c", "mov eax, dword ptr [esp + 0x24]"], ["0x10020980", "mov edx, dword ptr [eax]"], ["0x10020982", "cmp dword ptr [ecx + 0xc], edx"]], "recomp": [["0x100294f8", "mov eax, dword ptr [esp + 0x18]"], ["0x100294fc", "mov edx, dword ptr [esp + 0x24]"], ["0x10029500", "mov ecx, dword ptr [edx]"], ["0x10029502", "cmp dword ptr [eax + 0xc], ecx"]]}, {"both": [["0x10020985", "jge 0x16f", "0x10029505"], ["0x1002098b", "push 0", "0x1002950b"], ["0x1002098d", "mov ecx, esi", "0x1002950d"], ["0x1002098f", "mov dword ptr [esp + 0x14], 1", "0x1002950f"], ["0x10020997", "push ebp", "0x10029517"], ["0x10020998", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Buynode (FUNCTION)", "0x10029518"], ["0x1002099d", "mov edi, eax", "0x1002951d"]]}, {"orig": [["0x1002099f", "mov ecx, dword ptr [esp + 0x24]"]], "recomp": [["0x1002951f", "mov edx, dword ptr [esp + 0x24]"], ["0x10029523", "mov eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x10029528", "push edx"], ["0x10029529", "lea ecx, [edi + 0xc]"], ["0x1002952c", "mov dword ptr [edi], eax"]]}, {"both": [["0x100209a3", "mov eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]", "0x1002952e"], ["0x100209a8", "push ecx", "0x10029533"]]}, {"orig": [["0x100209a9", "lea edx, [edi + 0xc]"], ["0x100209ac", "mov dword ptr [edi], eax"], ["0x100209ae", "mov eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x100209b3", "push edx"]], "recomp": []}, {"both": [["0x100209b4", "mov dword ptr [edi + 8], eax", "0x10029534"], ["0x100209b7", "call _Construct (FUNCTION)", "0x10029537"], ["0x100209bc", "add esp, 8", "0x1002953c"], ["0x100209bf", "inc dword ptr [esi + 0xc]", "0x1002953f"], ["0x100209c2", "cmp dword ptr [esi + 4], ebp", "0x10029542"], ["0x100209c5", "je 0x24", "0x10029545"], ["0x100209c7", "cmp ebx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]", "0x10029547"], ["0x100209cd", "jne 0x1c", "0x1002954d"]]}, {"orig": [["0x100209cf", "mov eax, dword ptr [esp + 0x24]"], ["0x100209d3", "mov ecx, dword ptr [eax]"], ["0x100209d5", "cmp dword ptr [ebp + 0xc], ecx"]], "recomp": [["0x1002954f", "mov edx, dword ptr [esp + 0x24]"], ["0x10029553", "mov eax, dword ptr [edx]"], ["0x10029555", "cmp dword ptr [ebp + 0xc], eax"]]}, {"both": [["0x100209d8", "jg 0x11", "0x10029558"], ["0x100209da", "mov dword ptr [ebp + 8], edi", "0x1002955a"], ["0x100209dd", "mov eax, dword ptr [esi + 4]", "0x1002955d"], ["0x100209e0", "add eax, 8", "0x10029560"], ["0x100209e3", "cmp dword ptr [eax], ebp", "0x10029563"], ["0x100209e5", "jne 0x1f", "0x10029565"], ["0x100209e7", "mov dword ptr [eax], edi", "0x10029567"], ["0x100209e9", "jmp 0x1b", "0x10029569"], ["0x100209eb", "mov dword ptr [ebp], edi", "0x1002956b"], ["0x100209ee", "mov eax, dword ptr [esi + 4]", "0x1002956e"]]}]]]}, {"address": "0x10020b20", "recomp": "0x100296a0", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::iterator::_Dec", "matching": 0.9393939393939394, "diff": [["@@ -0x10020b23,24 +0x100296a3,24 @@", [{"both": [["0x10020b23", "cmp dword ptr [esi + 0x10], 0", "0x100296a3"], ["0x10020b27", "jne 0xf", "0x100296a7"], ["0x10020b29", "mov eax, dword ptr [esi + 4]", "0x100296a9"], ["0x10020b2c", "cmp dword ptr [eax + 4], esi", "0x100296ac"], ["0x10020b2f", "jne 0x7", "0x100296af"], ["0x10020b31", "mov eax, dword ptr [esi + 8]", "0x100296b1"], ["0x10020b34", "pop esi", "0x100296b4"], ["0x10020b35", "mov dword ptr [ecx], eax", "0x100296b5"], ["0x10020b37", "ret ", "0x100296b7"], ["0x10020b38", "mov edx, dword ptr [esi]", "0x100296b8"]]}, {"orig": [["0x10020b3a", "cmp edx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x100296ba", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], edx"]]}, {"both": [["0x10020b40", "je 0x13", "0x100296c0"], ["0x10020b42", "mov eax, dword ptr [edx + 8]", "0x100296c2"]]}, {"orig": [["0x10020b45", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x100296c5", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10020b4b", "je 0x4", "0x100296cb"], ["0x10020b4d", "mov edx, eax", "0x100296cd"], ["0x10020b4f", "jmp -0xf", "0x100296cf"], ["0x10020b51", "pop esi", "0x100296d1"], ["0x10020b52", "mov dword ptr [ecx], edx", "0x100296d2"], ["0x10020b54", "ret ", "0x100296d4"], ["0x10020b55", "mov edx, dword ptr [esi + 4]", "0x100296d5"], ["0x10020b58", "cmp dword ptr [edx], esi", "0x100296d8"], ["0x10020b5a", "jne 0xb", "0x100296da"], ["0x10020b5c", "mov dword ptr [ecx], edx", "0x100296dc"]]}]]]}, {"address": "0x10020bb0", "recomp": "0x10029750", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Buynode", "matching": 1.0, "diff": []}, {"address": "0x10020bd0", "recomp": "0x10029770", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Insert", "matching": 0.7488372093023256, "diff": [["@@ -0x10020c02,37 +0x100297a2,37 @@", [{"both": [["0x10020c02", "mov dword ptr [eax - 0xc], ebx", "0x100297a2"], ["0x10020c05", "mov ebx, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]", "0x100297a5"], ["0x10020c0b", "mov dword ptr [eax - 4], ebx", "0x100297ab"], ["0x10020c0e", "je 0x4", "0x100297ae"], ["0x10020c10", "mov edx, dword ptr [edi]", "0x100297b0"], ["0x10020c12", "mov dword ptr [eax], edx", "0x100297b2"], ["0x10020c14", "inc dword ptr [esi + 0xc]", "0x100297b4"], ["0x10020c17", "cmp dword ptr [esi + 4], ecx", "0x100297b7"], ["0x10020c1a", "je 0x28", "0x100297ba"], ["0x10020c1c", "mov eax, dword ptr [esp + 0x1c]", "0x100297bc"]]}, {"orig": [["0x10020c20", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x100297c0", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10020c26", "jne 0x1c", "0x100297c6"], ["0x10020c28", "mov eax, dword ptr [edi]", "0x100297c8"], ["0x10020c2a", "cmp dword ptr [ecx + 0xc], eax", "0x100297ca"], ["0x10020c2d", "jg 0x15", "0x100297cd"], ["0x10020c2f", "mov edx, dword ptr [esp + 0x10]", "0x100297cf"], ["0x10020c33", "mov dword ptr [ecx + 8], edx", "0x100297d3"], ["0x10020c36", "mov eax, dword ptr [esi + 4]", "0x100297d6"], ["0x10020c39", "add eax, 8", "0x100297d9"], ["0x10020c3c", "cmp dword ptr [eax], ecx", "0x100297dc"], ["0x10020c3e", "jne 0x26", "0x100297de"], ["0x10020c40", "mov dword ptr [eax], edx", "0x100297e0"], ["0x10020c42", "jmp 0x22", "0x100297e2"], ["0x10020c44", "mov edx, dword ptr [esp + 0x10]", "0x100297e4"], ["0x10020c48", "mov dword ptr [ecx], edx", "0x100297e8"], ["0x10020c4a", "mov eax, dword ptr [esi + 4]", "0x100297ea"]]}, {"orig": [["0x10020c4d", "cmp ecx, eax"]], "recomp": [["0x100297ed", "cmp eax, ecx"]]}, {"both": [["0x10020c4f", "je 0x8", "0x100297ef"], ["0x10020c51", "cmp dword ptr [eax], ecx", "0x100297f1"], ["0x10020c53", "jne 0x11", "0x100297f3"], ["0x10020c55", "mov dword ptr [eax], edx", "0x100297f5"], ["0x10020c57", "jmp 0xd", "0x100297f7"], ["0x10020c59", "mov edx, dword ptr [esp + 0x10]", "0x100297f9"], ["0x10020c5d", "mov dword ptr [eax + 4], edx", "0x100297fd"], ["0x10020c60", "mov eax, dword ptr [esi + 4]", "0x10029800"], ["0x10020c63", "mov dword ptr [eax + 8], edx", "0x10029803"], ["0x10020c66", "mov ecx, dword ptr [esp + 0x10]", "0x10029806"]]}]], ["@@ -0x10020c8a,27 +0x1002982a,27 @@", [{"both": [["0x10020c8a", "mov ebp, dword ptr [edi]", "0x1002982a"], ["0x10020c8c", "mov ebp, dword ptr [ebp]", "0x1002982c"], ["0x10020c8f", "cmp ebp, eax", "0x1002982f"], ["0x10020c91", "jne 0xbe", "0x10029831"], ["0x10020c97", "mov ebp, dword ptr [edi]", "0x10029837"], ["0x10020c99", "mov ebp, dword ptr [ebp + 8]", "0x10029839"], ["0x10020c9c", "cmp dword ptr [ebp + 0x10], 0", "0x1002983c"], ["0x10020ca0", "je 0x15c", "0x10029840"], ["0x10020ca6", "lea ebx, [eax + 8]", "0x10029846"], ["0x10020ca9", "mov edx, dword ptr [ebx]", "0x10029849"]]}, {"orig": [["0x10020cab", "cmp ecx, edx"]], "recomp": [["0x1002984b", "cmp edx, ecx"]]}, {"both": [["0x10020cad", "jne 0x33", "0x1002984d"], ["0x10020caf", "mov ecx, eax", "0x1002984f"], ["0x10020cb1", "mov eax, dword ptr [edx]", "0x10029851"], ["0x10020cb3", "mov dword ptr [ebx], eax", "0x10029853"], ["0x10020cb5", "mov eax, dword ptr [edx]", "0x10029855"]]}, {"orig": [["0x10020cb7", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x10029857", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10020cbd", "je 0x3", "0x1002985d"], ["0x10020cbf", "mov dword ptr [eax + 4], ecx", "0x1002985f"], ["0x10020cc2", "mov eax, dword ptr [edi]", "0x10029862"], ["0x10020cc4", "mov dword ptr [edx + 4], eax", "0x10029864"], ["0x10020cc7", "mov eax, dword ptr [esi + 4]", "0x10029867"], ["0x10020cca", "add eax, 4", "0x1002986a"], ["0x10020ccd", "cmp dword ptr [eax], ecx", "0x1002986d"], ["0x10020ccf", "je 0xb", "0x1002986f"], ["0x10020cd1", "mov eax, dword ptr [edi]", "0x10029871"], ["0x10020cd3", "cmp dword ptr [eax], ecx", "0x10029873"]]}]], ["@@ -0x10020cda,60 +0x1002987a,60 @@", [{"both": [["0x10020cda", "jmp 0x2", "0x1002987a"], ["0x10020cdc", "mov dword ptr [eax], edx", "0x1002987c"], ["0x10020cde", "mov dword ptr [edx], ecx", "0x1002987e"], ["0x10020ce0", "mov dword ptr [edi], edx", "0x10029880"], ["0x10020ce2", "mov eax, dword ptr [ecx + 4]", "0x10029882"], ["0x10020ce5", "mov dword ptr [eax + 0x10], 1", "0x10029885"], ["0x10020cec", "mov eax, dword ptr [ecx + 4]", "0x1002988c"], ["0x10020cef", "mov edx, dword ptr [eax + 4]", "0x1002988f"], ["0x10020cf2", "mov dword ptr [edx + 0x10], 0", "0x10029892"], ["0x10020cf9", "mov eax, dword ptr [ecx + 4]", "0x10029899"]]}, {"orig": [["0x10020cfc", "mov edi, dword ptr [eax + 4]"], ["0x10020cff", "mov edx, dword ptr [edi]"], ["0x10020d01", "mov eax, dword ptr [edx + 8]"], ["0x10020d04", "mov dword ptr [edi], eax"], ["0x10020d06", "mov eax, dword ptr [edx + 8]"], ["0x10020d09", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x10020d0f", "je 0x3"], ["0x10020d11", "mov dword ptr [eax + 4], edi"], ["0x10020d14", "mov eax, dword ptr [edi + 4]"], ["0x10020d17", "mov dword ptr [edx + 4], eax"], ["0x10020d1a", "mov eax, dword ptr [esi + 4]"], ["0x10020d1d", "add eax, 4"], ["0x10020d20", "cmp dword ptr [eax], edi"]], "recomp": [["0x1002989c", "mov edx, dword ptr [eax + 4]"], ["0x1002989f", "mov edi, dword ptr [edx]"], ["0x100298a1", "mov eax, dword ptr [edi + 8]"], ["0x100298a4", "mov dword ptr [edx], eax"], ["0x100298a6", "mov eax, dword ptr [edi + 8]"], ["0x100298a9", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"], ["0x100298af", "je 0x3"], ["0x100298b1", "mov dword ptr [eax + 4], edx"], ["0x100298b4", "mov eax, dword ptr [edx + 4]"], ["0x100298b7", "mov dword ptr [edi + 4], eax"], ["0x100298ba", "mov eax, dword ptr [esi + 4]"], ["0x100298bd", "add eax, 4"], ["0x100298c0", "cmp dword ptr [eax], edx"]]}, {"both": [["0x10020d22", "je 0x24", "0x100298c2"]]}, {"orig": [["0x10020d24", "mov ebx, dword ptr [edi + 4]"]], "recomp": [["0x100298c4", "mov ebx, dword ptr [edx + 4]"]]}, {"both": [["0x10020d27", "lea eax, [ebx + 8]", "0x100298c7"]]}, {"orig": [["0x10020d2a", "cmp dword ptr [eax], edi"]], "recomp": [["0x100298ca", "cmp dword ptr [eax], edx"]]}, {"both": [["0x10020d2c", "je 0xd", "0x100298cc"]]}, {"orig": [["0x10020d2e", "mov dword ptr [ebx], edx"], ["0x10020d30", "mov dword ptr [edx + 8], edi"], ["0x10020d33", "mov dword ptr [edi + 4], edx"]], "recomp": [["0x100298ce", "mov dword ptr [ebx], edi"], ["0x100298d0", "mov dword ptr [edi + 8], edx"], ["0x100298d3", "mov dword ptr [edx + 4], edi"]]}, {"both": [["0x10020d36", "jmp 0xe5", "0x100298d6"]]}, {"orig": [["0x10020d3b", "mov dword ptr [eax], edx"], ["0x10020d3d", "mov dword ptr [edx + 8], edi"], ["0x10020d40", "mov dword ptr [edi + 4], edx"]], "recomp": [["0x100298db", "mov dword ptr [eax], edi"], ["0x100298dd", "mov dword ptr [edi + 8], edx"], ["0x100298e0", "mov dword ptr [edx + 4], edi"]]}, {"both": [["0x10020d43", "jmp 0xd8", "0x100298e3"]]}, {"orig": [["0x10020d48", "mov dword ptr [eax], edx"], ["0x10020d4a", "mov dword ptr [edx + 8], edi"], ["0x10020d4d", "mov dword ptr [edi + 4], edx"]], "recomp": [["0x100298e8", "mov dword ptr [eax], edi"], ["0x100298ea", "mov dword ptr [edi + 8], edx"], ["0x100298ed", "mov dword ptr [edx + 4], edi"]]}, {"both": [["0x10020d50", "jmp 0xcb", "0x100298f0"], ["0x10020d55", "cmp dword ptr [ebp + 0x10], 0", "0x100298f5"], ["0x10020d59", "je 0xa3", "0x100298f9"], ["0x10020d5f", "mov edx, dword ptr [eax]", "0x100298ff"]]}, {"orig": [["0x10020d61", "cmp ecx, edx"]], "recomp": [["0x10029901", "cmp edx, ecx"]]}, {"both": [["0x10020d63", "jne 0x38", "0x10029903"], ["0x10020d65", "mov ecx, eax", "0x10029905"], ["0x10020d67", "mov eax, dword ptr [edx + 8]", "0x10029907"], ["0x10020d6a", "mov dword ptr [ecx], eax", "0x1002990a"], ["0x10020d6c", "mov eax, dword ptr [edx + 8]", "0x1002990c"]]}, {"orig": [["0x10020d6f", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x1002990f", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10020d75", "je 0x3", "0x10029915"], ["0x10020d77", "mov dword ptr [eax + 4], ecx", "0x10029917"], ["0x10020d7a", "mov eax, dword ptr [edi]", "0x1002991a"], ["0x10020d7c", "mov dword ptr [edx + 4], eax", "0x1002991c"], ["0x10020d7f", "mov eax, dword ptr [esi + 4]", "0x1002991f"], ["0x10020d82", "add eax, 4", "0x10029922"], ["0x10020d85", "cmp dword ptr [eax], ecx", "0x10029925"], ["0x10020d87", "je 0xd", "0x10029927"], ["0x10020d89", "mov ebx, dword ptr [edi]", "0x10029929"], ["0x10020d8b", "lea eax, [ebx + 8]", "0x1002992b"]]}]], ["@@ -0x10020d94,48 +0x10029934,48 @@", [{"both": [["0x10020d94", "jmp 0x2", "0x10029934"], ["0x10020d96", "mov dword ptr [eax], edx", "0x10029936"], ["0x10020d98", "mov dword ptr [edx + 8], ecx", "0x10029938"], ["0x10020d9b", "mov dword ptr [edi], edx", "0x1002993b"], ["0x10020d9d", "mov eax, dword ptr [ecx + 4]", "0x1002993d"], ["0x10020da0", "mov dword ptr [eax + 0x10], 1", "0x10029940"], ["0x10020da7", "mov eax, dword ptr [ecx + 4]", "0x10029947"], ["0x10020daa", "mov edx, dword ptr [eax + 4]", "0x1002994a"], ["0x10020dad", "mov dword ptr [edx + 0x10], 0", "0x1002994d"], ["0x10020db4", "mov eax, dword ptr [ecx + 4]", "0x10029954"]]}, {"orig": [["0x10020db7", "mov edx, dword ptr [eax + 4]"], ["0x10020dba", "mov edi, dword ptr [edx + 8]"], ["0x10020dbd", "mov eax, dword ptr [edi]"], ["0x10020dbf", "mov dword ptr [edx + 8], eax"], ["0x10020dc2", "mov eax, dword ptr [edi]"], ["0x10020dc4", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"], ["0x10020dca", "je 0x3"], ["0x10020dcc", "mov dword ptr [eax + 4], edx"], ["0x10020dcf", "mov eax, dword ptr [edx + 4]"], ["0x10020dd2", "mov dword ptr [edi + 4], eax"], ["0x10020dd5", "mov eax, dword ptr [esi + 4]"], ["0x10020dd8", "add eax, 4"], ["0x10020ddb", "cmp dword ptr [eax], edx"]], "recomp": [["0x10029957", "mov edi, dword ptr [eax + 4]"], ["0x1002995a", "mov edx, dword ptr [edi + 8]"], ["0x1002995d", "mov eax, dword ptr [edx]"], ["0x1002995f", "mov dword ptr [edi + 8], eax"], ["0x10029962", "mov eax, dword ptr [edx]"], ["0x10029964", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"], ["0x1002996a", "je 0x3"], ["0x1002996c", "mov dword ptr [eax + 4], edi"], ["0x1002996f", "mov eax, dword ptr [edi + 4]"], ["0x10029972", "mov dword ptr [edx + 4], eax"], ["0x10029975", "mov eax, dword ptr [esi + 4]"], ["0x10029978", "add eax, 4"], ["0x1002997b", "cmp dword ptr [eax], edi"]]}, {"both": [["0x10020ddd", "je 0x1a", "0x1002997d"]]}, {"orig": [["0x10020ddf", "mov eax, dword ptr [edx + 4]"], ["0x10020de2", "cmp dword ptr [eax], edx"]], "recomp": [["0x1002997f", "mov eax, dword ptr [edi + 4]"], ["0x10029982", "cmp dword ptr [eax], edi"]]}, {"both": [["0x10020de4", "je 0xa", "0x10029984"]]}, {"orig": [["0x10020de6", "mov dword ptr [eax + 8], edi"], ["0x10020de9", "mov dword ptr [edi], edx"], ["0x10020deb", "mov dword ptr [edx + 4], edi"]], "recomp": [["0x10029986", "mov dword ptr [eax + 8], edx"], ["0x10029989", "mov dword ptr [edx], edi"], ["0x1002998b", "mov dword ptr [edi + 4], edx"]]}, {"both": [["0x10020dee", "jmp 0x30", "0x1002998e"]]}, {"orig": [["0x10020df0", "mov dword ptr [eax], edi"], ["0x10020df2", "mov dword ptr [edi], edx"], ["0x10020df4", "mov dword ptr [edx + 4], edi"]], "recomp": [["0x10029990", "mov dword ptr [eax], edx"], ["0x10029992", "mov dword ptr [edx], edi"], ["0x10029994", "mov dword ptr [edi + 4], edx"]]}, {"both": [["0x10020df7", "jmp 0x27", "0x10029997"]]}, {"orig": [["0x10020df9", "mov dword ptr [eax], edi"], ["0x10020dfb", "mov dword ptr [edi], edx"], ["0x10020dfd", "mov dword ptr [edx + 4], edi"]], "recomp": [["0x10029999", "mov dword ptr [eax], edx"], ["0x1002999b", "mov dword ptr [edx], edi"], ["0x1002999d", "mov dword ptr [edi + 4], edx"]]}, {"both": [["0x10020e00", "jmp 0x1e", "0x100299a0"], ["0x10020e02", "mov dword ptr [ebx], 1", "0x100299a2"], ["0x10020e08", "mov dword ptr [ebp + 0x10], 1", "0x100299a8"], ["0x10020e0f", "mov eax, dword ptr [edx]", "0x100299af"], ["0x10020e11", "mov ecx, dword ptr [eax + 4]", "0x100299b1"], ["0x10020e14", "mov dword ptr [ecx + 0x10], 0", "0x100299b4"], ["0x10020e1b", "mov eax, dword ptr [edx]", "0x100299bb"], ["0x10020e1d", "mov ecx, dword ptr [eax + 4]", "0x100299bd"], ["0x10020e20", "mov eax, dword ptr [esi + 4]", "0x100299c0"], ["0x10020e23", "cmp dword ptr [eax + 4], ecx", "0x100299c3"]]}]]]}, {"address": "0x10020e50", "recomp": "0x100299f0", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Lrotate", "matching": 0.9696969696969697, "diff": [["@@ -0x10020e50,17 +0x100299f0,17 @@", [{"both": [["0x10020e50", "push esi", "0x100299f0"], ["0x10020e51", "mov esi, dword ptr [esp + 8]", "0x100299f1"], ["0x10020e55", "mov edx, dword ptr [esi + 8]", "0x100299f5"], ["0x10020e58", "mov eax, dword ptr [edx]", "0x100299f8"], ["0x10020e5a", "mov dword ptr [esi + 8], eax", "0x100299fa"], ["0x10020e5d", "mov eax, dword ptr [edx]", "0x100299fd"]]}, {"orig": [["0x10020e5f", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x100299ff", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10020e65", "je 0x3", "0x10029a05"], ["0x10020e67", "mov dword ptr [eax + 4], esi", "0x10029a07"], ["0x10020e6a", "mov eax, dword ptr [esi + 4]", "0x10029a0a"], ["0x10020e6d", "mov dword ptr [edx + 4], eax", "0x10029a0d"], ["0x10020e70", "mov eax, dword ptr [ecx + 4]", "0x10029a10"], ["0x10020e73", "add eax, 4", "0x10029a13"], ["0x10020e76", "cmp dword ptr [eax], esi", "0x10029a16"], ["0x10020e78", "je 0x1e", "0x10029a18"], ["0x10020e7a", "mov eax, dword ptr [esi + 4]", "0x10029a1a"], ["0x10020e7d", "cmp dword ptr [eax], esi", "0x10029a1d"]]}]]]}, {"address": "0x10020eb0", "recomp": "0x10029a50", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Rrotate", "matching": 0.38235294117647056, "diff": [["@@ -0x10020eb0,34 +0x10029a50,34 @@", [{"orig": [], "recomp": [["0x10029a50", "mov edx, dword ptr [esp + 4]"]]}, {"both": [["0x10020eb0", "push esi", "0x10029a54"]]}, {"orig": [["0x10020eb1", "mov esi, dword ptr [esp + 8]"], ["0x10020eb5", "mov edx, dword ptr [esi]"], ["0x10020eb7", "mov eax, dword ptr [edx + 8]"], ["0x10020eba", "mov dword ptr [esi], eax"], ["0x10020ebc", "mov eax, dword ptr [edx + 8]"], ["0x10020ebf", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x10029a55", "mov esi, dword ptr [edx]"], ["0x10029a57", "mov eax, dword ptr [esi + 8]"], ["0x10029a5a", "mov dword ptr [edx], eax"], ["0x10029a5c", "mov eax, dword ptr [esi + 8]"], ["0x10029a5f", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10020ec5", "je 0x3", "0x10029a65"]]}, {"orig": [["0x10020ec7", "mov dword ptr [eax + 4], esi"], ["0x10020eca", "mov eax, dword ptr [esi + 4]"], ["0x10020ecd", "mov dword ptr [edx + 4], eax"]], "recomp": [["0x10029a67", "mov dword ptr [eax + 4], edx"], ["0x10029a6a", "mov eax, dword ptr [edx + 4]"], ["0x10029a6d", "mov dword ptr [esi + 4], eax"]]}, {"both": [["0x10020ed0", "mov eax, dword ptr [ecx + 4]", "0x10029a70"], ["0x10020ed3", "add eax, 4", "0x10029a73"]]}, {"orig": [["0x10020ed6", "cmp dword ptr [eax], esi"]], "recomp": [["0x10029a76", "cmp dword ptr [eax], edx"]]}, {"both": [["0x10020ed8", "je 0x22", "0x10029a78"]]}, {"orig": [["0x10020eda", "mov ecx, dword ptr [esi + 4]"]], "recomp": [["0x10029a7a", "mov ecx, dword ptr [edx + 4]"]]}, {"both": [["0x10020edd", "lea eax, [ecx + 8]", "0x10029a7d"]]}, {"orig": [["0x10020ee0", "cmp dword ptr [eax], esi"]], "recomp": [["0x10029a80", "cmp dword ptr [eax], edx"]]}, {"both": [["0x10020ee2", "je 0xc", "0x10029a82"]]}, {"orig": [["0x10020ee4", "mov dword ptr [ecx], edx"], ["0x10020ee6", "mov dword ptr [edx + 8], esi"], ["0x10020ee9", "mov dword ptr [esi + 4], edx"]], "recomp": [["0x10029a84", "mov dword ptr [ecx], esi"], ["0x10029a86", "mov dword ptr [esi + 8], edx"], ["0x10029a89", "mov dword ptr [edx + 4], esi"]]}, {"both": [["0x10020eec", "pop esi", "0x10029a8c"], ["0x10020eed", "ret 4", "0x10029a8d"]]}, {"orig": [["0x10020ef0", "mov dword ptr [eax], edx"], ["0x10020ef2", "mov dword ptr [edx + 8], esi"], ["0x10020ef5", "mov dword ptr [esi + 4], edx"]], "recomp": [["0x10029a90", "mov dword ptr [eax], esi"], ["0x10029a92", "mov dword ptr [esi + 8], edx"], ["0x10029a95", "mov dword ptr [edx + 4], esi"]]}, {"both": [["0x10020ef8", "pop esi", "0x10029a98"], ["0x10020ef9", "ret 4", "0x10029a99"]]}, {"orig": [["0x10020efc", "mov dword ptr [eax], edx"], ["0x10020efe", "mov dword ptr [edx + 8], esi"], ["0x10020f01", "mov dword ptr [esi + 4], edx"]], "recomp": [["0x10029a9c", "mov dword ptr [eax], esi"], ["0x10029a9e", "mov dword ptr [esi + 8], edx"], ["0x10029aa1", "mov dword ptr [edx + 4], esi"]]}, {"both": [["0x10020f04", "pop esi", "0x10029aa4"], ["0x10020f05", "ret 4", "0x10029aa5"]]}]]]}, {"address": "0x10020f10", "recomp": "0x10029ab0", "name": "LegoWorld::Remove", "matching": 1.0, "diff": []}, {"address": "0x10021340", "recomp": "0x100296f0", "name": "_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::find", "matching": 0.8235294117647058, "diff": [["@@ -0x10021340,32 +0x100296f0,32 @@", [{"both": [["0x10021340", "sub esp, 8", "0x100296f0"]]}, {"orig": [], "recomp": [["0x100296f3", "mov edx, dword ptr [esp + 0x10]"]]}, {"both": [["0x10021343", "push esi", "0x100296f7"], ["0x10021344", "push edi", "0x100296f8"], ["0x10021345", "mov edi, dword ptr [ecx + 4]", "0x100296f9"]]}, {"orig": [["0x10021348", "mov ecx, dword ptr [esp + 0x18]"]], "recomp": []}, {"both": [["0x1002134c", "mov esi, edi", "0x100296fc"], ["0x1002134e", "mov eax, dword ptr [edi + 4]", "0x100296fe"]]}, {"orig": [["0x10021351", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x10029701", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10021357", "je 0x18", "0x10029707"]]}, {"orig": [["0x10021359", "mov edx, dword ptr [ecx]"], ["0x1002135b", "cmp dword ptr [eax + 0xc], edx"]], "recomp": [["0x10029709", "mov ecx, dword ptr [edx]"], ["0x1002970b", "cmp dword ptr [eax + 0xc], ecx"]]}, {"both": [["0x1002135e", "jl 0x6", "0x1002970e"], ["0x10021360", "mov esi, eax", "0x10029710"], ["0x10021362", "mov eax, dword ptr [eax]", "0x10029712"], ["0x10021364", "jmp 0x3", "0x10029714"], ["0x10021366", "mov eax, dword ptr [eax + 8]", "0x10029716"]]}, {"orig": [["0x10021369", "cmp eax, dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)]"]], "recomp": [["0x10029719", "cmp dword ptr [_Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1002136f", "jne -0x16", "0x1002971f"], ["0x10021371", "mov dword ptr [esp + 8], esi", "0x10029721"], ["0x10021375", "cmp edi, esi", "0x10029725"], ["0x10021377", "je 0xb", "0x10029727"]]}, {"orig": [["0x10021379", "mov eax, dword ptr [ecx]"]], "recomp": [["0x10029729", "mov eax, dword ptr [edx]"]]}, {"both": [["0x1002137b", "cmp dword ptr [esi + 0xc], eax", "0x1002972b"], ["0x1002137e", "lea eax, [esp + 8]", "0x1002972e"], ["0x10021382", "jle 0x8", "0x10029732"], ["0x10021384", "lea eax, [esp + 0xc]", "0x10029734"], ["0x10021388", "mov dword ptr [esp + 0xc], edi", "0x10029738"], ["0x1002138c", "mov ecx, dword ptr [eax]", "0x1002973c"], ["0x1002138e", "mov eax, dword ptr [esp + 0x14]", "0x1002973e"], ["0x10021392", "pop edi", "0x10029742"], ["0x10021393", "pop esi", "0x10029743"], ["0x10021394", "mov dword ptr [eax], ecx", "0x10029744"]]}]]]}, {"address": "0x100213a0", "recomp": "0x10029ee0", "name": "LegoWorld::Find", "matching": 0.7264150943396226, "diff": [["@@ -0x100213a0,18 +0x10029ee0,18 @@", [{"both": [["0x100213a0", "mov eax, dword ptr fs:[0]", "0x10029ee0"], ["0x100213a6", "push ebp", "0x10029ee6"], ["0x100213a7", "mov ebp, esp", "0x10029ee7"], ["0x100213a9", "push -1", "0x10029ee9"], ["0x100213ab", "push <OFFSET1>", "0x10029eeb"], ["0x100213b0", "push eax", "0x10029ef0"], ["0x100213b1", "mov dword ptr fs:[0], esp", "0x10029ef1"]]}, {"orig": [["0x100213b8", "sub esp, 0x18"]], "recomp": [["0x10029ef8", "sub esp, 0x14"]]}, {"both": [["0x100213bb", "mov edx, 'MxControlPresenter' (STRING)", "0x10029efb"], ["0x100213c0", "push ebx", "0x10029f00"], ["0x100213c1", "push esi", "0x10029f01"], ["0x100213c2", "mov ebx, dword ptr [ebp + 8]", "0x10029f02"], ["0x100213c5", "push edi", "0x10029f05"], ["0x100213c6", "mov eax, ebx", "0x10029f06"], ["0x100213c8", "mov edi, ecx", "0x10029f08"], ["0x100213ca", "mov cl, byte ptr [eax]", "0x10029f0a"], ["0x100213cc", "cmp cl, byte ptr [edx]", "0x10029f0c"], ["0x100213ce", "jne 0x1a", "0x10029f0e"]]}]], ["@@ -0x100213dc,51 +0x10029f1c,51 @@", [{"both": [["0x100213dc", "add eax, 2", "0x10029f1c"], ["0x100213df", "add edx, 2", "0x10029f1f"], ["0x100213e2", "or cl, cl", "0x10029f22"], ["0x100213e4", "jne -0x1c", "0x10029f24"], ["0x100213e6", "xor eax, eax", "0x10029f26"], ["0x100213e8", "jmp 0x5", "0x10029f28"], ["0x100213ea", "sbb eax, eax", "0x10029f2a"], ["0x100213ec", "sbb eax, -1", "0x10029f2c"], ["0x100213ef", "test eax, eax", "0x10029f2f"], ["0x100213f1", "jne 0xef", "0x10029f31"]]}, {"orig": [["0x100213f7", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x10029f37", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100213fa", "add edi, 0xb8", "0x10029f3a"], ["0x10021400", "call MxCore::MxCore (FUNCTION)", "0x10029f40"], ["0x10021405", "xor eax, eax", "0x10029f45"], ["0x10021407", "mov dword ptr [ebp - 4], eax", "0x10029f47"]]}, {"orig": [["0x1002140a", "mov dword ptr [ebp - 0x1c], MxListCursor<MxPresenter *>::`vftable' (VTABLE)"]], "recomp": [["0x10029f4a", "mov dword ptr [ebp - 0x20], MxListCursor<MxPresenter *>::`vftable' (VTABLE)"]]}, {"both": [["0x10021411", "mov dword ptr [ebp - 4], 1", "0x10029f51"], ["0x10021418", "mov dword ptr [ebp - 4], 2", "0x10029f58"], ["0x1002141f", "mov esi, dword ptr [ebp + 0xc]", "0x10029f5f"]]}, {"orig": [["0x10021422", "mov dword ptr [ebp - 0x14], edi"]], "recomp": [["0x10029f62", "mov dword ptr [ebp - 0x18], edi"]]}, {"both": [["0x10021425", "mov dword ptr [ebp - 4], 3", "0x10029f65"]]}, {"orig": [["0x1002142c", "mov dword ptr [ebp - 0x10], eax"]], "recomp": [["0x10029f6c", "mov dword ptr [ebp - 0x14], eax"]]}, {"both": [["0x1002142f", "mov eax, 0xffffffff", "0x10029f6f"]]}, {"orig": [["0x10021434", "mov dword ptr [ebp - 0x1c], MxPtrListCursor<MxPresenter>::`vftable' (VTABLE)"], ["0x1002143b", "mov dword ptr [ebp - 0x1c], MxPresenterListCursor::`vftable' (VTABLE)"], ["0x10021442", "cmp dword ptr [ebp - 0x10], 0"]], "recomp": [["0x10029f74", "mov dword ptr [ebp - 0x20], MxPtrListCursor<MxPresenter>::`vftable' (VTABLE)"], ["0x10029f7b", "mov dword ptr [ebp - 0x20], MxPresenterListCursor::`vftable' (VTABLE)"], ["0x10029f82", "cmp dword ptr [ebp - 0x14], 0"]]}, {"both": [["0x10021446", "jne 0x8", "0x10029f86"]]}, {"orig": [["0x10021448", "mov eax, dword ptr [ebp - 0x14]"]], "recomp": [["0x10029f88", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x1002144b", "mov ecx, dword ptr [eax + 0x10]", "0x10029f8b"], ["0x1002144e", "jmp 0x6", "0x10029f8e"]]}, {"orig": [["0x10021450", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x10029f90", "mov eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x10021453", "mov ecx, dword ptr [eax + 8]", "0x10029f93"]]}, {"orig": [], "recomp": [["0x10029f96", "mov dword ptr [ebp - 0x14], ecx"], ["0x10029f99", "cmp dword ptr [ebp - 0x14], 0"], ["0x10029f9d", "je 0x56"], ["0x10029f9f", "mov eax, dword ptr [ebp - 0x14]"], ["0x10029fa2", "mov ecx, dword ptr [eax]"]]}, {"both": [["0x10021456", "mov dword ptr [ebp - 0x10], ecx", "0x10029fa4"]]}, {"orig": [["0x10021459", "cmp dword ptr [ebp - 0x10], 0"], ["0x1002145d", "je 0x56"], ["0x1002145f", "mov eax, dword ptr [ebp - 0x10]"], ["0x10021462", "cmp dword ptr [ebp - 0x10], 0"], ["0x10021466", "mov ecx, dword ptr [eax]"], ["0x10021468", "mov dword ptr [ebp - 0x20], ecx"]], "recomp": [["0x10029fa7", "cmp dword ptr [ebp - 0x14], 0"]]}, {"both": [["0x1002146b", "je 0x48", "0x10029fab"]]}, {"orig": [["0x1002146d", "mov eax, dword ptr [ebp - 0x20]"]], "recomp": [["0x10029fad", "mov eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10021470", "mov ecx, dword ptr [eax + 0x1c]", "0x10029fb0"], ["0x10021473", "mov eax, dword ptr [ecx + 0x18]", "0x10029fb3"], ["0x10021476", "mov ecx, esi", "0x10029fb6"], ["0x10021478", "mov dl, byte ptr [eax]", "0x10029fb8"], ["0x1002147a", "cmp dl, byte ptr [ecx]", "0x10029fba"], ["0x1002147c", "jne 0x1a", "0x10029fbc"], ["0x1002147e", "or dl, dl", "0x10029fbe"], ["0x10021480", "je 0x12", "0x10029fc0"], ["0x10021482", "mov dl, byte ptr [eax + 1]", "0x10029fc2"], ["0x10021485", "cmp dl, byte ptr [ecx + 1]", "0x10029fc5"]]}]], ["@@ -0x10021490,109 +0x10029fd0,114 @@", [{"both": [["0x10021490", "or dl, dl", "0x10029fd0"], ["0x10021492", "jne -0x1c", "0x10029fd2"], ["0x10021494", "xor eax, eax", "0x10029fd4"], ["0x10021496", "jmp 0x5", "0x10029fd6"], ["0x10021498", "sbb eax, eax", "0x10029fd8"], ["0x1002149a", "sbb eax, -1", "0x10029fda"], ["0x1002149d", "test eax, eax", "0x10029fdd"], ["0x1002149f", "jne -0x5f", "0x10029fdf"], ["0x100214a1", "mov dword ptr [ebp - 4], 0xffffffff", "0x10029fe1"], ["0x100214a8", "call <OFFSET7>", "0x10029fe8"]]}, {"orig": [["0x100214ad", "mov eax, dword ptr [ebp - 0x20]"], ["0x100214b0", "jmp 0x2b3"]], "recomp": [["0x10029fed", "mov eax, dword ptr [ebp - 0x10]"], ["0x10029ff0", "jmp 0x2ce"]]}, {"both": [["0x100214b5", "mov dword ptr [ebp - 4], 0xffffffff", "0x10029ff5"], ["0x100214bc", "call <OFFSET7>", "0x10029ffc"]]}, {"orig": [["0x100214c1", "jmp 0x2a0"], ["0x100214c6", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a001", "jmp 0x2bb"], ["0x1002a006", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100214c9", "jmp MxCore::~MxCore (FUNCTION)", "0x1002a009"]]}, {"orig": [["0x100214ce", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a00e", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100214d1", "jmp MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *> (FUNCTION)", "0x1002a011"]]}, {"orig": [["0x100214d6", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a016", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100214d9", "jmp MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter> (FUNCTION)", "0x1002a019"]]}, {"orig": [["0x100214de", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a01e", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100214e1", "jmp MxPresenterListCursor::~MxPresenterListCursor (FUNCTION)", "0x1002a021"], ["0x100214e6", "mov eax, ebx", "0x1002a026"], ["0x100214e8", "mov edx, 'MxEntity' (STRING)", "0x1002a028"], ["0x100214ed", "mov cl, byte ptr [eax]", "0x1002a02d"], ["0x100214ef", "cmp cl, byte ptr [edx]", "0x1002a02f"], ["0x100214f1", "jne 0x1a", "0x1002a031"], ["0x100214f3", "or cl, cl", "0x1002a033"], ["0x100214f5", "je 0x12", "0x1002a035"], ["0x100214f7", "mov cl, byte ptr [eax + 1]", "0x1002a037"], ["0x100214fa", "cmp cl, byte ptr [edx + 1]", "0x1002a03a"], ["0x100214fd", "jne 0xe", "0x1002a03d"], ["0x100214ff", "add eax, 2", "0x1002a03f"], ["0x10021502", "add edx, 2", "0x1002a042"], ["0x10021505", "or cl, cl", "0x1002a045"], ["0x10021507", "jne -0x1c", "0x1002a047"], ["0x10021509", "xor eax, eax", "0x1002a049"], ["0x1002150b", "jmp 0x5", "0x1002a04b"], ["0x1002150d", "sbb eax, eax", "0x1002a04d"], ["0x1002150f", "sbb eax, -1", "0x1002a04f"], ["0x10021512", "test eax, eax", "0x1002a052"]]}, {"orig": [["0x10021514", "jne 0xd7"], ["0x1002151a", "mov eax, dword ptr [edi + 0x9c]"], ["0x10021520", "lea ecx, [ebp - 0x1c]"], ["0x10021523", "push eax"], ["0x10021524", "call MxListCursor<LegoEntity *>::MxListCursor<LegoEntity *> (FUNCTION)"]], "recomp": [["0x1002a054", "jne 0xf2"], ["0x1002a05a", "mov esi, dword ptr [edi + 0x9c]"], ["0x1002a060", "lea ecx, [ebp - 0x20]"], ["0x1002a063", "xor edi, edi"], ["0x1002a065", "call MxCore::MxCore (FUNCTION)"], ["0x1002a06a", "mov dword ptr [ebp - 4], 4"], ["0x1002a071", "mov dword ptr [ebp - 0x20], MxListCursor<LegoEntity *>::`vftable' (VTABLE)"]]}, {"both": [["0x10021529", "mov eax, 0xffffffff", "0x1002a078"]]}, {"orig": [], "recomp": [["0x1002a07d", "mov dword ptr [ebp - 0x18], esi"]]}, {"both": [["0x1002152e", "mov esi, dword ptr [ebp + 0xc]", "0x1002a080"]]}, {"orig": [["0x10021531", "mov dword ptr [ebp - 4], 4"], ["0x10021538", "mov dword ptr [ebp - 0x1c], MxPtrListCursor<LegoEntity>::`vftable' (VTABLE)"]], "recomp": [["0x1002a083", "mov dword ptr [ebp - 0x14], edi"]]}, {"both": [["0x1002153f", "mov dword ptr [ebp - 4], 5", "0x1002a086"]]}, {"orig": [["0x10021546", "mov dword ptr [ebp - 0x1c], LegoEntityListCursor::`vftable' (VTABLE)"]], "recomp": [["0x1002a08d", "mov dword ptr [ebp - 0x20], MxPtrListCursor<LegoEntity>::`vftable' (VTABLE)"]]}, {"both": [["0x1002154d", "mov dword ptr [ebp - 4], 6", "0x1002a094"]]}, {"orig": [["0x10021554", "xor edi, edi"], ["0x10021556", "cmp dword ptr [ebp - 0x10], edi"]], "recomp": [["0x1002a09b", "mov dword ptr [ebp - 0x20], LegoEntityListCursor::`vftable' (VTABLE)"], ["0x1002a0a2", "mov dword ptr [ebp - 4], 7"], ["0x1002a0a9", "cmp dword ptr [ebp - 0x14], edi"]]}, {"both": [["0x10021559", "jne 0x8", "0x1002a0ac"]]}, {"orig": [["0x1002155b", "mov eax, dword ptr [ebp - 0x14]"]], "recomp": [["0x1002a0ae", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x1002155e", "mov ecx, dword ptr [eax + 0x10]", "0x1002a0b1"], ["0x10021561", "jmp 0x6", "0x1002a0b4"]]}, {"orig": [["0x10021563", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1002a0b6", "mov eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x10021566", "mov ecx, dword ptr [eax + 8]", "0x1002a0b9"]]}, {"orig": [], "recomp": [["0x1002a0bc", "mov dword ptr [ebp - 0x14], ecx"], ["0x1002a0bf", "cmp dword ptr [ebp - 0x14], edi"], ["0x1002a0c2", "je 0x57"], ["0x1002a0c4", "mov eax, dword ptr [ebp - 0x14]"], ["0x1002a0c7", "mov ecx, dword ptr [eax]"]]}, {"both": [["0x10021569", "mov dword ptr [ebp - 0x10], ecx", "0x1002a0c9"]]}, {"orig": [["0x1002156c", "cmp dword ptr [ebp - 0x10], edi"], ["0x1002156f", "je 0x57"], ["0x10021571", "mov eax, dword ptr [ebp - 0x10]"], ["0x10021574", "cmp dword ptr [ebp - 0x10], edi"], ["0x10021577", "mov ecx, dword ptr [eax]"], ["0x10021579", "mov dword ptr [ebp - 0x20], ecx"]], "recomp": [["0x1002a0cc", "cmp dword ptr [ebp - 0x14], edi"]]}, {"both": [["0x1002157c", "je 0x4a", "0x1002a0cf"], ["0x1002157e", "test esi, esi", "0x1002a0d1"], ["0x10021580", "je 0x32", "0x1002a0d3"]]}, {"orig": [["0x10021582", "mov eax, dword ptr [ebp - 0x20]"]], "recomp": [["0x1002a0d5", "mov eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10021585", "mov eax, dword ptr [eax + 0x54]", "0x1002a0d8"], ["0x10021588", "test eax, eax", "0x1002a0db"], ["0x1002158a", "je -0x36", "0x1002a0dd"], ["0x1002158c", "push esi", "0x1002a0df"], ["0x1002158d", "mov eax, dword ptr [eax + 0xe4]", "0x1002a0e0"], ["0x10021593", "push eax", "0x1002a0e6"], ["0x10021594", "call __strcmpi (FUNCTION)", "0x1002a0e7"], ["0x10021599", "add esp, 8", "0x1002a0ec"], ["0x1002159c", "test eax, eax", "0x1002a0ef"], ["0x1002159e", "jne -0x4a", "0x1002a0f1"], ["0x100215a0", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002a0f3"], ["0x100215a7", "call <OFFSET17>", "0x1002a0fa"]]}, {"orig": [["0x100215ac", "mov eax, dword ptr [ebp - 0x20]"], ["0x100215af", "jmp 0x1b4"]], "recomp": [["0x1002a0ff", "mov eax, dword ptr [ebp - 0x10]"], ["0x1002a102", "jmp 0x1bc"]]}, {"both": [["0x100215b4", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002a107"], ["0x100215bb", "call <OFFSET17>", "0x1002a10e"]]}, {"orig": [["0x100215c0", "mov eax, dword ptr [ebp - 0x20]"], ["0x100215c3", "jmp 0x1a0"]], "recomp": [["0x1002a113", "mov eax, dword ptr [ebp - 0x10]"], ["0x1002a116", "jmp 0x1a8"]]}, {"both": [["0x100215c8", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002a11b"], ["0x100215cf", "call <OFFSET17>", "0x1002a122"]]}, {"orig": [["0x100215d4", "jmp 0x18d"], ["0x100215d9", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a127", "jmp 0x195"], ["0x1002a12c", "lea ecx, [ebp - 0x20]"], ["0x1002a12f", "jmp MxCore::~MxCore (FUNCTION)"], ["0x1002a134", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100215dc", "jmp MxListCursor<LegoEntity *>::~MxListCursor<LegoEntity *> (FUNCTION)", "0x1002a137"]]}, {"orig": [["0x100215e1", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a13c", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100215e4", "jmp MxPtrListCursor<LegoEntity>::~MxPtrListCursor<LegoEntity> (FUNCTION)", "0x1002a13f"]]}, {"orig": [["0x100215e9", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a144", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100215ec", "jmp LegoEntityListCursor::~LegoEntityListCursor (FUNCTION)", "0x1002a147"], ["0x100215f1", "mov eax, ebx", "0x1002a14c"], ["0x100215f3", "mov edx, 'LegoAnimPresenter' (STRING)", "0x1002a14e"], ["0x100215f8", "mov cl, byte ptr [eax]", "0x1002a153"], ["0x100215fa", "cmp cl, byte ptr [edx]", "0x1002a155"], ["0x100215fc", "jne 0x1a", "0x1002a157"], ["0x100215fe", "or cl, cl", "0x1002a159"], ["0x10021600", "je 0x12", "0x1002a15b"], ["0x10021602", "mov cl, byte ptr [eax + 1]", "0x1002a15d"], ["0x10021605", "cmp cl, byte ptr [edx + 1]", "0x1002a160"]]}]], ["@@ -0x1002160d,90 +0x1002a168,90 @@", [{"both": [["0x1002160d", "add edx, 2", "0x1002a168"], ["0x10021610", "or cl, cl", "0x1002a16b"], ["0x10021612", "jne -0x1c", "0x1002a16d"], ["0x10021614", "xor eax, eax", "0x1002a16f"], ["0x10021616", "jmp 0x5", "0x1002a171"], ["0x10021618", "sbb eax, eax", "0x1002a173"], ["0x1002161a", "sbb eax, -1", "0x1002a175"], ["0x1002161d", "test eax, eax", "0x1002a178"], ["0x1002161f", "jne 0xc1", "0x1002a17a"], ["0x10021625", "add edi, 0x80", "0x1002a180"]]}, {"orig": [["0x1002162b", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a186", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x1002162e", "push edi", "0x1002a189"], ["0x1002162f", "call MxListCursor<MxPresenter *>::MxListCursor<MxPresenter *> (FUNCTION)", "0x1002a18a"], ["0x10021634", "mov eax, 0xffffffff", "0x1002a18f"], ["0x10021639", "mov esi, dword ptr [ebp + 0xc]", "0x1002a194"]]}, {"orig": [["0x1002163c", "mov dword ptr [ebp - 4], 7"], ["0x10021643", "mov dword ptr [ebp - 0x1c], MxPtrListCursor<MxPresenter>::`vftable' (VTABLE)"]], "recomp": []}, {"both": [["0x1002164a", "mov dword ptr [ebp - 4], 8", "0x1002a197"]]}, {"orig": [["0x10021651", "mov dword ptr [ebp - 0x1c], MxPresenterListCursor::`vftable' (VTABLE)"]], "recomp": [["0x1002a19e", "mov dword ptr [ebp - 0x20], MxPtrListCursor<MxPresenter>::`vftable' (VTABLE)"]]}, {"both": [["0x10021658", "mov dword ptr [ebp - 4], 9", "0x1002a1a5"]]}, {"orig": [], "recomp": [["0x1002a1ac", "mov dword ptr [ebp - 0x20], MxPresenterListCursor::`vftable' (VTABLE)"], ["0x1002a1b3", "mov dword ptr [ebp - 4], 0xa"]]}, {"both": [["0x1002165f", "xor edi, edi", "0x1002a1ba"]]}, {"orig": [["0x10021661", "cmp dword ptr [ebp - 0x10], edi"]], "recomp": [["0x1002a1bc", "cmp dword ptr [ebp - 0x14], edi"]]}, {"both": [["0x10021664", "jne 0x8", "0x1002a1bf"]]}, {"orig": [["0x10021666", "mov eax, dword ptr [ebp - 0x14]"]], "recomp": [["0x1002a1c1", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x10021669", "mov ecx, dword ptr [eax + 0x10]", "0x1002a1c4"], ["0x1002166c", "jmp 0x6", "0x1002a1c7"]]}, {"orig": [["0x1002166e", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1002a1c9", "mov eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x10021671", "mov ecx, dword ptr [eax + 8]", "0x1002a1cc"]]}, {"orig": [], "recomp": [["0x1002a1cf", "mov dword ptr [ebp - 0x14], ecx"], ["0x1002a1d2", "cmp dword ptr [ebp - 0x14], edi"], ["0x1002a1d5", "je 0x37"], ["0x1002a1d7", "mov eax, dword ptr [ebp - 0x14]"], ["0x1002a1da", "mov ecx, dword ptr [eax]"]]}, {"both": [["0x10021674", "mov dword ptr [ebp - 0x10], ecx", "0x1002a1dc"]]}, {"orig": [["0x10021677", "cmp dword ptr [ebp - 0x10], edi"], ["0x1002167a", "je 0x37"], ["0x1002167c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1002167f", "cmp dword ptr [ebp - 0x10], edi"], ["0x10021682", "mov ecx, dword ptr [eax]"], ["0x10021684", "mov dword ptr [ebp - 0x20], ecx"]], "recomp": [["0x1002a1df", "cmp dword ptr [ebp - 0x14], edi"]]}, {"both": [["0x10021687", "je 0x2a", "0x1002a1e2"], ["0x10021689", "push esi", "0x1002a1e4"]]}, {"orig": [["0x1002168a", "mov ecx, dword ptr [ebp - 0x20]"]], "recomp": [["0x1002a1e5", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x1002168d", "call LegoAnimPresenter::GetActionObjectName (FUNCTION)", "0x1002a1e8"], ["0x10021692", "push eax", "0x1002a1ed"], ["0x10021693", "call __strcmpi (FUNCTION)", "0x1002a1ee"], ["0x10021698", "add esp, 8", "0x1002a1f3"], ["0x1002169b", "test eax, eax", "0x1002a1f6"], ["0x1002169d", "jne -0x3e", "0x1002a1f8"], ["0x1002169f", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002a1fa"], ["0x100216a6", "call <OFFSET24>", "0x1002a201"]]}, {"orig": [["0x100216ab", "mov eax, dword ptr [ebp - 0x20]"]], "recomp": [["0x1002a206", "mov eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x100216ae", "jmp 0xb5", "0x1002a209"], ["0x100216b3", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002a20e"], ["0x100216ba", "call <OFFSET24>", "0x1002a215"], ["0x100216bf", "jmp 0xa2", "0x1002a21a"]]}, {"orig": [["0x100216c4", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a21f", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100216c7", "jmp MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *> (FUNCTION)", "0x1002a222"]]}, {"orig": [["0x100216cc", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a227", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100216cf", "jmp MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter> (FUNCTION)", "0x1002a22a"], ["0x100216d4", "mov eax, <OFFSET25>", "0x1002a22f"], ["0x100216d9", "jmp ___CxxFrameHandler (FUNCTION)", "0x1002a234"]]}, {"orig": [["0x100216de", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1002a239", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100216e1", "jmp MxPresenterListCursor::~MxPresenterListCursor (FUNCTION)", "0x1002a23c"], ["0x100216e6", "mov eax, dword ptr [edi + 0xac]", "0x1002a241"], ["0x100216ec", "mov ecx, dword ptr [eax]", "0x1002a247"]]}, {"orig": [["0x100216ee", "mov dword ptr [ebp - 0x24], ecx"]], "recomp": [["0x1002a249", "mov dword ptr [ebp - 0x10], ecx"]]}, {"both": [["0x100216f1", "cmp ecx, eax", "0x1002a24c"], ["0x100216f3", "je 0x71", "0x1002a24e"], ["0x100216f5", "mov esi, dword ptr [ebp + 0xc]", "0x1002a250"]]}, {"orig": [["0x100216f8", "mov eax, dword ptr [ebp - 0x24]"]], "recomp": [["0x1002a253", "mov eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x100216fb", "push ebx", "0x1002a256"], ["0x100216fc", "mov ecx, dword ptr [eax + 0xc]", "0x1002a257"], ["0x100216ff", "mov eax, dword ptr [ecx]", "0x1002a25a"], ["0x10021701", "call dword ptr [eax + 0x10]", "0x1002a25c"], ["0x10021704", "test al, al", "0x1002a25f"], ["0x10021706", "je 0x4b", "0x1002a261"]]}, {"orig": [["0x10021708", "mov eax, dword ptr [ebp - 0x24]"]], "recomp": [["0x1002a263", "mov eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x1002170b", "push 'MxPresenter' (STRING)", "0x1002a266"], ["0x10021710", "mov ecx, dword ptr [eax + 0xc]", "0x1002a26b"], ["0x10021713", "mov eax, dword ptr [ecx]", "0x1002a26e"], ["0x10021715", "call dword ptr [eax + 0x10]", "0x1002a270"], ["0x10021718", "test al, al", "0x1002a273"], ["0x1002171a", "je 0x37", "0x1002a275"]]}, {"orig": [["0x1002171c", "mov eax, dword ptr [ebp - 0x24]"]], "recomp": [["0x1002a277", "mov eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x1002171f", "mov ecx, dword ptr [eax + 0xc]", "0x1002a27a"], ["0x10021722", "mov edx, dword ptr [ecx + 0x1c]", "0x1002a27d"], ["0x10021725", "mov eax, dword ptr [edx + 0x18]", "0x1002a280"], ["0x10021728", "mov edx, esi", "0x1002a283"], ["0x1002172a", "mov cl, byte ptr [eax]", "0x1002a285"], ["0x1002172c", "cmp cl, byte ptr [edx]", "0x1002a287"], ["0x1002172e", "jne 0x1a", "0x1002a289"], ["0x10021730", "or cl, cl", "0x1002a28b"], ["0x10021732", "je 0x12", "0x1002a28d"], ["0x10021734", "mov cl, byte ptr [eax + 1]", "0x1002a28f"]]}]], ["@@ -0x1002173c,44 +0x1002a297,27 @@", [{"both": [["0x1002173c", "add eax, 2", "0x1002a297"], ["0x1002173f", "add edx, 2", "0x1002a29a"], ["0x10021742", "or cl, cl", "0x1002a29d"], ["0x10021744", "jne -0x1c", "0x1002a29f"], ["0x10021746", "xor eax, eax", "0x1002a2a1"], ["0x10021748", "jmp 0x5", "0x1002a2a3"], ["0x1002174a", "sbb eax, eax", "0x1002a2a5"], ["0x1002174c", "sbb eax, -1", "0x1002a2a7"], ["0x1002174f", "test eax, eax", "0x1002a2aa"], ["0x10021751", "je 0x28", "0x1002a2ac"]]}, {"orig": [["0x10021753", "lea ecx, [ebp - 0x24]"]], "recomp": [["0x1002a2ae", "lea ecx, [ebp - 0x10]"]]}, {"both": [["0x10021756", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::iterator::_Inc (FUNCTION)", "0x1002a2b1"]]}, {"orig": [["0x1002175b", "mov eax, dword ptr [ebp - 0x24]"]], "recomp": [["0x1002a2b6", "mov eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x1002175e", "cmp dword ptr [edi + 0xac], eax", "0x1002a2b9"], ["0x10021764", "jne -0x6e", "0x1002a2bf"], ["0x10021766", "xor eax, eax", "0x1002a2c1"], ["0x10021768", "mov ecx, dword ptr [ebp - 0xc]", "0x1002a2c3"], ["0x1002176b", "pop edi", "0x1002a2c6"], ["0x1002176c", "mov dword ptr fs:[0], ecx", "0x1002a2c7"], ["0x10021773", "pop esi", "0x1002a2ce"], ["0x10021774", "pop ebx", "0x1002a2cf"], ["0x10021775", "mov esp, ebp", "0x1002a2d0"], ["0x10021777", "pop ebp", "0x1002a2d2"], ["0x10021778", "ret 8", "0x1002a2d3"]]}, {"orig": [["0x1002177b", "mov eax, dword ptr [ebp - 0x24]"]], "recomp": [["0x1002a2d6", "mov eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x1002177e", "mov eax, dword ptr [eax + 0xc]", "0x1002a2d9"], ["0x10021781", "jmp -0x1b", "0x1002a2dc"]]}, {"orig": [["0x10021783", "int3 "], ["0x10021784", "int3 "], ["0x10021785", "int3 "], ["0x10021786", "int3 "], ["0x10021787", "int3 "], ["0x10021788", "int3 "], ["0x10021789", "int3 "], ["0x1002178a", "int3 "], ["0x1002178b", "int3 "], ["0x1002178c", "int3 "], ["0x1002178d", "int3 "], ["0x1002178e", "int3 "], ["0x1002178f", "int3 "], ["0x10021790", "mov eax, dword ptr fs:[0]"], ["0x10021796", "push ebp"], ["0x10021797", "mov ebp, esp"], ["0x10021799", "push -1"]], "recomp": []}]]]}, {"address": "0x10021790", "recomp": "0x1002a2e0", "name": "LegoWorld::Find", "matching": 1.0, "diff": []}, {"address": "0x10021a70", "recomp": "0x1002a5c0", "name": "LegoWorld::Enable", "matching": 0.8232502965599051, "diff": [["@@ -0x10021a80,26 +0x1002a5d0,26 @@", [{"both": [["0x10021a80", "push eax", "0x1002a5d0"], ["0x10021a81", "mov dword ptr fs:[0], esp", "0x1002a5d1"], ["0x10021a88", "mov al, byte ptr [ebp + 8]", "0x1002a5d8"], ["0x10021a8b", "sub esp, 0x40", "0x1002a5db"], ["0x10021a8e", "mov dword ptr [ebp - 0x10], ecx", "0x1002a5de"], ["0x10021a91", "push ebx", "0x1002a5e1"], ["0x10021a92", "push esi", "0x1002a5e2"], ["0x10021a93", "push edi", "0x1002a5e3"], ["0x10021a94", "xor ebx, ebx", "0x1002a5e4"], ["0x10021a96", "test al, al", "0x1002a5e6"]]}, {"orig": [["0x10021a98", "je 0x272"]], "recomp": [["0x1002a5e8", "je 0x268"]]}, {"both": [["0x10021a9e", "cmp dword ptr [ecx + 0xdc], ebx", "0x1002a5ee"]]}, {"orig": [["0x10021aa4", "je 0x262"]], "recomp": [["0x1002a5f4", "je 0x258"]]}, {"both": [["0x10021aaa", "call CurrentWorld (FUNCTION)", "0x1002a5fa"], ["0x10021aaf", "cmp eax, dword ptr [ebp - 0x10]", "0x1002a5ff"]]}, {"orig": [["0x10021ab2", "je 0x242"]], "recomp": [["0x1002a602", "je 0x238"]]}, {"both": [["0x10021ab8", "call CurrentWorld (FUNCTION)", "0x1002a608"], ["0x10021abd", "test eax, eax", "0x1002a60d"], ["0x10021abf", "je 0xcd", "0x1002a60f"], ["0x10021ac5", "push ebx", "0x1002a615"], ["0x10021ac6", "call AnimationManager (FUNCTION)", "0x1002a616"], ["0x10021acb", "mov ecx, eax", "0x1002a61b"], ["0x10021acd", "call LegoAnimationManager::FUN_10061010 (FUNCTION)", "0x1002a61d"], ["0x10021ad2", "call CurrentWorld (FUNCTION)", "0x1002a622"], ["0x10021ad7", "push ebx", "0x1002a627"], ["0x10021ad8", "mov edx, dword ptr [eax]", "0x1002a628"]]}]], ["@@ -0x10021b2d,90 +0x1002a67d,89 @@", [{"both": [["0x10021b2d", "mov eax, dword ptr [ebp - 0x1c]", "0x1002a67d"], ["0x10021b30", "mov ecx, dword ptr [eax + 0x10]", "0x1002a680"], ["0x10021b33", "jmp 0x6", "0x1002a683"], ["0x10021b35", "mov eax, dword ptr [ebp - 0x18]", "0x1002a685"], ["0x10021b38", "mov ecx, dword ptr [eax + 8]", "0x1002a688"], ["0x10021b3b", "mov dword ptr [ebp - 0x18], ecx", "0x1002a68b"], ["0x10021b3e", "cmp dword ptr [ebp - 0x18], ebx", "0x1002a68e"], ["0x10021b41", "je 0x43", "0x1002a691"], ["0x10021b43", "mov eax, dword ptr [ebp - 0x18]", "0x1002a693"], ["0x10021b46", "mov ecx, dword ptr [eax]", "0x1002a696"]]}, {"orig": [["0x10021b48", "mov dword ptr [ebp - 0x28], ecx"]], "recomp": [["0x1002a698", "mov dword ptr [ebp - 0x14], ecx"]]}, {"both": [["0x10021b4b", "cmp dword ptr [ebp - 0x18], ebx", "0x1002a69b"], ["0x10021b4e", "je 0x36", "0x1002a69e"]]}, {"orig": [["0x10021b50", "mov eax, dword ptr [ebp - 0x28]"], ["0x10021b53", "mov ecx, dword ptr [eax + 0x54]"], ["0x10021b56", "add eax, 0x54"], ["0x10021b59", "test ecx, ecx"]], "recomp": [["0x1002a6a0", "mov ecx, dword ptr [ebp - 0x14]"], ["0x1002a6a3", "mov eax, dword ptr [ecx + 0x54]"], ["0x1002a6a6", "add ecx, 0x54"], ["0x1002a6a9", "test eax, eax"]]}, {"both": [["0x10021b5b", "je -0x35", "0x1002a6ab"]]}, {"orig": [["0x10021b5d", "mov edx, dword ptr [ebp - 0x28]"], ["0x10021b60", "mov dword ptr [ecx + 0x104], edx"], ["0x10021b66", "mov esi, dword ptr [eax]"]], "recomp": [["0x1002a6ad", "mov edx, dword ptr [ebp - 0x14]"], ["0x1002a6b0", "mov dword ptr [eax + 0x104], edx"], ["0x1002a6b6", "mov esi, dword ptr [ecx]"]]}, {"both": [["0x10021b68", "call GetViewManager (FUNCTION)", "0x1002a6b8"]]}, {"orig": [["0x10021b6d", "lea edx, [ebp - 0x30]"], ["0x10021b70", "mov dword ptr [ebp - 0x48], esi"]], "recomp": [["0x1002a6bd", "lea edx, [ebp - 0x48]"], ["0x1002a6c0", "mov dword ptr [ebp - 0x40], esi"]]}, {"both": [["0x10021b73", "mov ecx, dword ptr [eax + 0xc]", "0x1002a6c3"]]}, {"orig": [["0x10021b76", "lea esi, [ebp - 0x48]"]], "recomp": [["0x1002a6c6", "lea esi, [ebp - 0x40]"]]}, {"both": [["0x10021b79", "push esi", "0x1002a6c9"], ["0x10021b7a", "push ecx", "0x1002a6ca"], ["0x10021b7b", "push edx", "0x1002a6cb"], ["0x10021b7c", "lea ecx, [eax + 8]", "0x1002a6cc"], ["0x10021b7f", "call list<ROI *,allocator<ROI *> >::insert (FUNCTION)", "0x1002a6cf"], ["0x10021b84", "jmp -0x5e", "0x1002a6d4"], ["0x10021b86", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002a6d6"], ["0x10021b8d", "call <OFFSET11>", "0x1002a6dd"], ["0x10021b92", "mov ecx, dword ptr [ebp - 0x10]", "0x1002a6e2"], ["0x10021b95", "cmp dword ptr [ecx + 0xdc], 0", "0x1002a6e5"]]}, {"orig": [["0x10021b9c", "je 0x8e"]], "recomp": [["0x1002a6ec", "je 0x84"]]}, {"both": [["0x10021ba2", "lea esi, [ecx + 0xd0]", "0x1002a6f2"], ["0x10021ba8", "mov ecx, dword ptr [ebp - 0x10]", "0x1002a6f8"], ["0x10021bab", "push 'MxPresenter' (STRING)", "0x1002a6fb"], ["0x10021bb0", "mov eax, dword ptr [ecx + 0xd4]", "0x1002a700"], ["0x10021bb6", "mov edx, dword ptr [eax]", "0x1002a706"], ["0x10021bb8", "mov dword ptr [ebp - 0x14], edx", "0x1002a708"]]}, {"orig": [["0x10021bbb", "mov ecx, dword ptr [edx + 0xc]"]], "recomp": [["0x1002a70b", "lea edi, [edx + 0xc]"], ["0x1002a70e", "mov ecx, dword ptr [edi]"]]}, {"both": [["0x10021bbe", "mov eax, dword ptr [ecx]", "0x1002a710"], ["0x10021bc0", "call dword ptr [eax + 0x10]", "0x1002a712"]]}, {"orig": [["0x10021bc3", "test al, al"], ["0x10021bc5", "mov eax, dword ptr [ebp - 0x14]"], ["0x10021bc8", "mov ecx, dword ptr [eax + 0xc]"]], "recomp": [["0x1002a715", "mov ecx, dword ptr [edi]"], ["0x1002a717", "test al, al"]]}, {"both": [["0x10021bcb", "je 0x29", "0x1002a719"], ["0x10021bcd", "push 1", "0x1002a71b"]]}, {"orig": [["0x10021bcf", "mov ebx, dword ptr [ecx]"], ["0x10021bd1", "call dword ptr [ebx + 0x54]"], ["0x10021bd4", "jmp 0x3b"]], "recomp": [["0x1002a71d", "mov eax, dword ptr [ecx]"], ["0x1002a71f", "call dword ptr [eax + 0x54]"], ["0x1002a722", "jmp 0x37"]]}, {"both": [["0x10021bd6", "lea ecx, [ebp - 0x24]", "0x1002a724"], ["0x10021bd9", "jmp MxCore::~MxCore (FUNCTION)", "0x1002a727"], ["0x10021bde", "lea ecx, [ebp - 0x24]", "0x1002a72c"], ["0x10021be1", "jmp MxListCursor<LegoEntity *>::~MxListCursor<LegoEntity *> (FUNCTION)", "0x1002a72f"], ["0x10021be6", "lea ecx, [ebp - 0x24]", "0x1002a734"], ["0x10021be9", "jmp MxPtrListCursor<LegoEntity>::~MxPtrListCursor<LegoEntity> (FUNCTION)", "0x1002a737"], ["0x10021bee", "lea ecx, [ebp - 0x24]", "0x1002a73c"], ["0x10021bf1", "jmp LegoEntityListCursor::~LegoEntityListCursor (FUNCTION)", "0x1002a73f"], ["0x10021bf6", "push 'LegoPathController' (STRING)", "0x1002a744"]]}, {"orig": [["0x10021bfb", "mov ebx, dword ptr [ecx]"], ["0x10021bfd", "call dword ptr [ebx + 0x10]"], ["0x10021c00", "test al, al"], ["0x10021c02", "je 0xd"]], "recomp": [["0x1002a749", "mov eax, dword ptr [ecx]"], ["0x1002a74b", "call dword ptr [eax + 0x10]"], ["0x1002a74e", "test al, al"], ["0x1002a750", "je 0x9"]]}, {"both": [["0x10021c04", "push 1", "0x1002a752"]]}, {"orig": [["0x10021c06", "mov eax, dword ptr [ebp - 0x14]"], ["0x10021c09", "mov ecx, dword ptr [eax + 0xc]"]], "recomp": [["0x1002a754", "mov ecx, dword ptr [edi]"]]}, {"both": [["0x10021c0c", "call LegoPathController::Enable (FUNCTION)", "0x1002a756"], ["0x10021c11", "mov eax, dword ptr [ebp - 0x14]", "0x1002a75b"]]}, {"orig": [["0x10021c14", "lea ecx, [ebp - 0x48]"]], "recomp": [["0x1002a75e", "lea ecx, [ebp - 0x28]"]]}, {"both": [["0x10021c17", "push eax", "0x1002a761"], ["0x10021c18", "push ecx", "0x1002a762"], ["0x10021c19", "mov ecx, esi", "0x1002a763"], ["0x10021c1b", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::erase (FUNCTION)", "0x1002a765"], ["0x10021c20", "mov ecx, dword ptr [ebp - 0x10]", "0x1002a76a"], ["0x10021c23", "cmp dword ptr [ecx + 0xdc], 0", "0x1002a76d"]]}, {"orig": [["0x10021c2a", "jne -0x88"]], "recomp": [["0x1002a774", "jne -0x7e"]]}, {"both": [["0x10021c30", "mov ecx, dword ptr [ebp - 0x10]", "0x1002a776"], ["0x10021c33", "push ecx", "0x1002a779"], ["0x10021c34", "call SetCurrentWorld (FUNCTION)", "0x1002a77a"], ["0x10021c39", "add esp, 4", "0x1002a77f"], ["0x10021c3c", "mov eax, dword ptr [ebp - 0x10]", "0x1002a782"], ["0x10021c3f", "add eax, 0xb8", "0x1002a785"], ["0x10021c44", "push eax", "0x1002a78a"], ["0x10021c45", "call ControlManager (FUNCTION)", "0x1002a78b"], ["0x10021c4a", "mov ecx, eax", "0x1002a790"], ["0x10021c4c", "call LegoControlManager::FUN_10028df0 (FUNCTION)", "0x1002a792"]]}]], ["@@ -0x10021d25,90 +0x1002a86b,89 @@", [{"both": [["0x10021d25", "push eax", "0x1002a86b"], ["0x10021d26", "mov ecx, dword ptr [ebp - 0x10]", "0x1002a86c"], ["0x10021d29", "call LegoWorld::FUN_1001fc80 (FUNCTION)", "0x1002a86f"], ["0x10021d2e", "push 0", "0x1002a874"], ["0x10021d30", "call AnimationManager (FUNCTION)", "0x1002a876"], ["0x10021d35", "mov ecx, eax", "0x1002a87b"], ["0x10021d37", "call LegoAnimationManager::FUN_1005ee80 (FUNCTION)", "0x1002a87d"], ["0x10021d3c", "mov ecx, dword ptr [ebp - 0x10]", "0x1002a882"], ["0x10021d3f", "lea eax, [ebp - 0x44]", "0x1002a885"], ["0x10021d42", "mov dword ptr [ebp - 0x28], ecx", "0x1002a888"]]}, {"orig": [], "recomp": [["0x1002a88b", "lea esi, [ecx + 0xd0]"]]}, {"both": [["0x10021d45", "lea ecx, [ebp - 0x28]", "0x1002a891"]]}, {"orig": [["0x10021d48", "mov esi, dword ptr [ebp - 0x10]"], ["0x10021d4b", "push ecx"], ["0x10021d4c", "add esi, 0xd0"]], "recomp": [["0x1002a894", "push ecx"]]}, {"both": [["0x10021d52", "push eax", "0x1002a895"], ["0x10021d53", "mov ecx, esi", "0x1002a896"], ["0x10021d55", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::insert (FUNCTION)", "0x1002a898"], ["0x10021d5a", "mov ecx, dword ptr [ebp - 0x10]", "0x1002a89d"], ["0x10021d5d", "mov eax, dword ptr [ecx + 0xec]", "0x1002a8a0"], ["0x10021d63", "cmp eax, -1", "0x1002a8a6"], ["0x10021d66", "je 0x19", "0x1002a8a9"], ["0x10021d68", "push eax", "0x1002a8ab"], ["0x10021d69", "call PlantManager (FUNCTION)", "0x1002a8ac"], ["0x10021d6e", "mov ecx, eax", "0x1002a8b1"], ["0x10021d70", "call LegoPlantManager::FUN_100263a0 (FUNCTION)", "0x1002a8b3"], ["0x10021d75", "call BuildingManager (FUNCTION)", "0x1002a8b8"], ["0x10021d7a", "mov ecx, eax", "0x1002a8bd"], ["0x10021d7c", "call LegoBuildingManager::FUN_1002fb30 (FUNCTION)", "0x1002a8bf"]]}, {"orig": [["0x10021d81", "lea ecx, [ebp - 0x3c]"]], "recomp": [["0x1002a8c4", "lea ecx, [ebp - 0x24]"]]}, {"both": [["0x10021d84", "xor ebx, ebx", "0x1002a8c7"], ["0x10021d86", "call MxCore::MxCore (FUNCTION)", "0x1002a8c9"], ["0x10021d8b", "mov dword ptr [ebp - 4], 4", "0x1002a8ce"]]}, {"orig": [["0x10021d92", "mov dword ptr [ebp - 0x3c], MxListCursor<MxPresenter *>::`vftable' (VTABLE)"]], "recomp": [["0x1002a8d5", "mov dword ptr [ebp - 0x24], MxListCursor<MxPresenter *>::`vftable' (VTABLE)"]]}, {"both": [["0x10021d99", "mov dword ptr [ebp - 4], 5", "0x1002a8dc"], ["0x10021da0", "mov dword ptr [ebp - 4], 6", "0x1002a8e3"], ["0x10021da7", "mov eax, dword ptr [ebp - 0x10]", "0x1002a8ea"], ["0x10021daa", "mov dword ptr [ebp - 4], 7", "0x1002a8ed"], ["0x10021db1", "add eax, 0xb8", "0x1002a8f4"]]}, {"orig": [["0x10021db6", "mov dword ptr [ebp - 0x34], eax"]], "recomp": [["0x1002a8f9", "mov dword ptr [ebp - 0x1c], eax"]]}, {"both": [["0x10021db9", "mov eax, 0xffffffff", "0x1002a8fc"]]}, {"orig": [["0x10021dbe", "mov dword ptr [ebp - 0x30], ebx"], ["0x10021dc1", "mov dword ptr [ebp - 0x3c], MxPtrListCursor<MxPresenter>::`vftable' (VTABLE)"], ["0x10021dc8", "mov dword ptr [ebp - 0x3c], MxPresenterListCursor::`vftable' (VTABLE)"], ["0x10021dcf", "cmp dword ptr [ebp - 0x30], ebx"]], "recomp": [["0x1002a901", "mov dword ptr [ebp - 0x18], ebx"], ["0x1002a904", "mov dword ptr [ebp - 0x24], MxPtrListCursor<MxPresenter>::`vftable' (VTABLE)"], ["0x1002a90b", "mov dword ptr [ebp - 0x24], MxPresenterListCursor::`vftable' (VTABLE)"], ["0x1002a912", "cmp dword ptr [ebp - 0x18], ebx"]]}, {"both": [["0x10021dd2", "jne 0x8", "0x1002a915"]]}, {"orig": [["0x10021dd4", "mov eax, dword ptr [ebp - 0x34]"]], "recomp": [["0x1002a917", "mov eax, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x10021dd7", "mov ecx, dword ptr [eax + 0x10]", "0x1002a91a"], ["0x10021dda", "jmp 0x6", "0x1002a91d"]]}, {"orig": [["0x10021ddc", "mov eax, dword ptr [ebp - 0x30]"]], "recomp": [["0x1002a91f", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x10021ddf", "mov ecx, dword ptr [eax + 8]", "0x1002a922"]]}, {"orig": [["0x10021de2", "mov dword ptr [ebp - 0x30], ecx"], ["0x10021de5", "cmp dword ptr [ebp - 0x30], ebx"]], "recomp": [["0x1002a925", "mov dword ptr [ebp - 0x18], ecx"], ["0x1002a928", "cmp dword ptr [ebp - 0x18], ebx"]]}, {"both": [["0x10021de8", "je 0x39", "0x1002a92b"]]}, {"orig": [["0x10021dea", "mov eax, dword ptr [ebp - 0x30]"]], "recomp": [["0x1002a92d", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x10021ded", "mov ecx, dword ptr [eax]", "0x1002a930"], ["0x10021def", "mov dword ptr [ebp - 0x28], ecx", "0x1002a932"]]}, {"orig": [["0x10021df2", "cmp dword ptr [ebp - 0x30], ebx"]], "recomp": [["0x1002a935", "cmp dword ptr [ebp - 0x18], ebx"]]}, {"both": [["0x10021df5", "je 0x2c", "0x1002a938"], ["0x10021df7", "mov ecx, dword ptr [ebp - 0x28]", "0x1002a93a"], ["0x10021dfa", "call MxPresenter::IsEnabled (FUNCTION)", "0x1002a93d"], ["0x10021dff", "test al, al", "0x1002a942"], ["0x10021e01", "je -0x34", "0x1002a944"], ["0x10021e03", "mov eax, dword ptr [ebp - 0x28]", "0x1002a946"], ["0x10021e06", "lea ecx, [ebp - 0x4c]", "0x1002a949"], ["0x10021e09", "mov dword ptr [ebp - 0x40], eax", "0x1002a94c"], ["0x10021e0c", "lea eax, [ebp - 0x40]", "0x1002a94f"], ["0x10021e0f", "push eax", "0x1002a952"], ["0x10021e10", "push ecx", "0x1002a953"], ["0x10021e11", "mov ecx, esi", "0x1002a954"], ["0x10021e13", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::insert (FUNCTION)", "0x1002a956"], ["0x10021e18", "push ebx", "0x1002a95b"], ["0x10021e19", "mov ecx, dword ptr [ebp - 0x28]", "0x1002a95c"], ["0x10021e1c", "mov edi, dword ptr [ecx]", "0x1002a95f"], ["0x10021e1e", "call dword ptr [edi + 0x54]", "0x1002a961"], ["0x10021e21", "jmp -0x54", "0x1002a964"], ["0x10021e23", "mov ecx, dword ptr [ebp - 0x10]", "0x1002a966"]]}, {"orig": [["0x10021e26", "mov ecx, dword ptr [ecx + 0xac]"], ["0x10021e2c", "mov eax, dword ptr [ecx]"], ["0x10021e2e", "mov dword ptr [ebp - 0x14], eax"], ["0x10021e31", "cmp eax, ecx"]], "recomp": [["0x1002a969", "mov eax, dword ptr [ecx + 0xac]"], ["0x1002a96f", "mov edx, dword ptr [eax]"], ["0x1002a971", "mov dword ptr [ebp - 0x14], edx"], ["0x1002a974", "cmp edx, eax"]]}, {"both": [["0x10021e33", "je 0x6c", "0x1002a976"], ["0x10021e35", "mov eax, dword ptr [ebp - 0x14]", "0x1002a978"], ["0x10021e38", "push 'LegoActionControlPresenter' (STRING)", "0x1002a97b"], ["0x10021e3d", "mov ecx, dword ptr [eax + 0xc]", "0x1002a980"], ["0x10021e40", "mov ebx, dword ptr [ecx]", "0x1002a983"], ["0x10021e42", "call dword ptr [ebx + 0x10]", "0x1002a985"], ["0x10021e45", "test al, al", "0x1002a988"], ["0x10021e47", "jne 0x23", "0x1002a98a"], ["0x10021e49", "mov eax, dword ptr [ebp - 0x14]", "0x1002a98c"], ["0x10021e4c", "push 'MxPresenter' (STRING)", "0x1002a98f"]]}]], ["@@ -0x10021efe,49 +0x1002aa41,49 @@", [{"both": [["0x10021efe", "call InputManager (FUNCTION)", "0x1002aa41"], ["0x10021f03", "mov ecx, eax", "0x1002aa46"], ["0x10021f05", "call LegoInputManager::UnRegister (FUNCTION)", "0x1002aa48"], ["0x10021f0a", "call NavController (FUNCTION)", "0x1002aa4d"], ["0x10021f0f", "mov ecx, dword ptr [ebp - 0x10]", "0x1002aa52"], ["0x10021f12", "mov edx, dword ptr [ecx + 0x98]", "0x1002aa55"], ["0x10021f18", "cmp eax, dword ptr [edx + 0x30]", "0x1002aa5b"], ["0x10021f1b", "jne 0xf", "0x1002aa5e"], ["0x10021f1d", "call Lego (FUNCTION)", "0x1002aa60"], ["0x10021f22", "mov dword ptr [eax + 0x84], 0", "0x1002aa65"]]}, {"orig": [["0x10021f2c", "lea ecx, [ebp - 0x24]"]], "recomp": [["0x1002aa6f", "lea ecx, [ebp - 0x3c]"]]}, {"both": [["0x10021f2f", "xor edi, edi", "0x1002aa72"], ["0x10021f31", "call MxCore::MxCore (FUNCTION)", "0x1002aa74"], ["0x10021f36", "mov byte ptr [ebp - 4], 8", "0x1002aa79"]]}, {"orig": [["0x10021f3a", "mov dword ptr [ebp - 0x24], MxListCursor<LegoPathController *>::`vftable' (VTABLE)"]], "recomp": [["0x1002aa7d", "mov eax, dword ptr [ebp - 0x10]"], ["0x1002aa80", "mov dword ptr [ebp - 0x30], edi"], ["0x1002aa83", "mov dword ptr [ebp - 0x3c], MxListCursor<LegoPathController *>::`vftable' (VTABLE)"]]}, {"both": [["0x10021f41", "mov byte ptr [ebp - 4], 9", "0x1002aa8a"]]}, {"orig": [], "recomp": [["0x1002aa8e", "mov dword ptr [ebp - 0x3c], MxPtrListCursor<LegoPathController>::`vftable' (VTABLE)"]]}, {"both": [["0x10021f45", "mov byte ptr [ebp - 4], 0xa", "0x1002aa95"]]}, {"orig": [["0x10021f49", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1002aa99", "mov dword ptr [ebp - 0x3c], LegoPathControllerListCursor::`vftable' (VTABLE)"]]}, {"both": [["0x10021f4c", "mov byte ptr [ebp - 4], 0xb", "0x1002aaa0"], ["0x10021f50", "add eax, 0x68", "0x1002aaa4"]]}, {"orig": [["0x10021f53", "mov dword ptr [ebp - 0x1c], eax"]], "recomp": [["0x1002aaa7", "mov dword ptr [ebp - 0x34], eax"]]}, {"both": [["0x10021f56", "mov eax, 7", "0x1002aaaa"]]}, {"orig": [["0x10021f5b", "mov dword ptr [ebp - 0x18], edi"], ["0x10021f5e", "mov dword ptr [ebp - 0x24], MxPtrListCursor<LegoPathController>::`vftable' (VTABLE)"], ["0x10021f65", "mov dword ptr [ebp - 0x24], LegoPathControllerListCursor::`vftable' (VTABLE)"], ["0x10021f6c", "cmp dword ptr [ebp - 0x18], edi"]], "recomp": [["0x1002aaaf", "cmp dword ptr [ebp - 0x30], edi"]]}, {"both": [["0x10021f6f", "jne 0x8", "0x1002aab2"]]}, {"orig": [["0x10021f71", "mov eax, dword ptr [ebp - 0x1c]"]], "recomp": [["0x1002aab4", "mov eax, dword ptr [ebp - 0x34]"]]}, {"both": [["0x10021f74", "mov ecx, dword ptr [eax + 0x10]", "0x1002aab7"], ["0x10021f77", "jmp 0x6", "0x1002aaba"]]}, {"orig": [["0x10021f79", "mov eax, dword ptr [ebp - 0x18]"]], "recomp": [["0x1002aabc", "mov eax, dword ptr [ebp - 0x30]"]]}, {"both": [["0x10021f7c", "mov ecx, dword ptr [eax + 8]", "0x1002aabf"]]}, {"orig": [["0x10021f7f", "mov dword ptr [ebp - 0x18], ecx"], ["0x10021f82", "cmp dword ptr [ebp - 0x18], edi"]], "recomp": [["0x1002aac2", "mov dword ptr [ebp - 0x30], ecx"], ["0x1002aac5", "cmp dword ptr [ebp - 0x30], edi"]]}, {"both": [["0x10021f85", "je 0x2d", "0x1002aac8"]]}, {"orig": [["0x10021f87", "mov eax, dword ptr [ebp - 0x18]"]], "recomp": [["0x1002aaca", "mov eax, dword ptr [ebp - 0x30]"], ["0x1002aacd", "cmp dword ptr [ebp - 0x30], edi"]]}, {"both": [["0x10021f8a", "mov ecx, dword ptr [eax]", "0x1002aad0"], ["0x10021f8c", "mov dword ptr [ebp - 0x10], ecx", "0x1002aad2"]]}, {"orig": [["0x10021f8f", "cmp dword ptr [ebp - 0x18], edi"]], "recomp": []}, {"both": [["0x10021f92", "je 0x20", "0x1002aad5"], ["0x10021f94", "push edi", "0x1002aad7"], ["0x10021f95", "mov ecx, dword ptr [ebp - 0x10]", "0x1002aad8"], ["0x10021f98", "call LegoPathController::Enable (FUNCTION)", "0x1002aadb"], ["0x10021f9d", "mov eax, dword ptr [ebp - 0x10]", "0x1002aae0"], ["0x10021fa0", "lea ecx, [ebp - 0x44]", "0x1002aae3"], ["0x10021fa3", "mov dword ptr [ebp - 0x28], eax", "0x1002aae6"], ["0x10021fa6", "lea eax, [ebp - 0x28]", "0x1002aae9"], ["0x10021fa9", "push eax", "0x1002aaec"], ["0x10021faa", "push ecx", "0x1002aaed"]]}]], ["@@ -0x10021fad,26 +0x1002aaf0,29 @@", [{"both": [["0x10021fad", "call _Tree<MxCore *,MxCore *,set<MxCore *,CoreSetCompare,allocator<MxCore *> >::_Kfn,CoreSetCompare,allocator<MxCore *> >::insert (FUNCTION)", "0x1002aaf0"], ["0x10021fb2", "jmp -0x48", "0x1002aaf5"], ["0x10021fb4", "push 0", "0x1002aaf7"], ["0x10021fb6", "call GetViewManager (FUNCTION)", "0x1002aaf9"], ["0x10021fbb", "mov ecx, eax", "0x1002aafe"], ["0x10021fbd", "call ViewManager::RemoveAll (FUNCTION)", "0x1002ab00"], ["0x10021fc2", "mov byte ptr [ebp - 4], 7", "0x1002ab05"], ["0x10021fc6", "call <OFFSET55>", "0x1002ab09"], ["0x10021fcb", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002ab0e"], ["0x10021fd2", "call <OFFSET56>", "0x1002ab15"]]}, {"orig": [["0x10021fd7", "jmp -0x2e2"], ["0x10021fdc", "lea ecx, [ebp - 0x24]"], ["0x10021fdf", "jmp MxCore::~MxCore (FUNCTION)"], ["0x10021fe4", "lea ecx, [ebp - 0x24]"], ["0x10021fe7", "jmp MxListCursor<LegoPathController *>::~MxListCursor<LegoPathController *> (FUNCTION)"], ["0x10021fec", "lea ecx, [ebp - 0x24]"], ["0x10021fef", "jmp MxPtrListCursor<LegoPathController>::~MxPtrListCursor<LegoPathController> (FUNCTION)"], ["0x10021ff4", "lea ecx, [ebp - 0x24]"], ["0x10021ff7", "jmp LegoPathControllerListCursor::~LegoPathControllerListCursor (FUNCTION)"]], "recomp": [["0x1002ab1a", "jmp -0x2df"]]}, {"both": [["0x10021ffc", "lea ecx, [ebp - 0x3c]", "0x1002ab1f"], ["0x10021fff", "jmp MxCore::~MxCore (FUNCTION)", "0x1002ab22"], ["0x10022004", "lea ecx, [ebp - 0x3c]", "0x1002ab27"]]}, {"orig": [], "recomp": [["0x1002ab2a", "jmp MxListCursor<LegoPathController *>::~MxListCursor<LegoPathController *> (FUNCTION)"], ["0x1002ab2f", "lea ecx, [ebp - 0x3c]"], ["0x1002ab32", "jmp MxPtrListCursor<LegoPathController>::~MxPtrListCursor<LegoPathController> (FUNCTION)"], ["0x1002ab37", "lea ecx, [ebp - 0x3c]"], ["0x1002ab3a", "jmp LegoPathControllerListCursor::~LegoPathControllerListCursor (FUNCTION)"], ["0x1002ab3f", "lea ecx, [ebp - 0x24]"], ["0x1002ab42", "jmp MxCore::~MxCore (FUNCTION)"], ["0x1002ab47", "lea ecx, [ebp - 0x24]"]]}, {"both": [["0x10022007", "jmp MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *> (FUNCTION)", "0x1002ab4a"]]}, {"orig": [["0x1002200c", "lea ecx, [ebp - 0x3c]"]], "recomp": [["0x1002ab4f", "lea ecx, [ebp - 0x24]"]]}, {"both": [["0x1002200f", "jmp MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter> (FUNCTION)", "0x1002ab52"], ["0x10022014", "mov eax, <OFFSET62>", "0x1002ab57"]]}, {"orig": [], "recomp": [["0x1002ab5c", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1002ab61", "lea ecx, [ebp - 0x24]"], ["0x1002ab64", "jmp MxPresenterListCursor::~MxPresenterListCursor (FUNCTION)"]]}]]]}, {"address": "0x10022030", "recomp": "0x1002ab70", "name": "list<ROI *,allocator<ROI *> >::insert", "matching": 1.0, "effective": true, "diff": [["@@ -0x10022030,28 +0x1002ab70,28 @@", [{"both": [["0x10022030", "push ebx", "0x1002ab70"], ["0x10022031", "push esi", "0x1002ab71"], ["0x10022032", "push edi", "0x1002ab72"], ["0x10022033", "mov esi, ecx", "0x1002ab73"]]}, {"orig": [["0x10022035", "mov ebx, dword ptr [esp + 0x14]"]], "recomp": [["0x1002ab75", "mov edi, dword ptr [esp + 0x14]"]]}, {"both": [["0x10022039", "push 0xc", "0x1002ab79"]]}, {"orig": [["0x1002203b", "mov edi, dword ptr [ebx + 4]"]], "recomp": [["0x1002ab7b", "mov ebx, dword ptr [edi + 4]"]]}, {"both": [["0x1002203e", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002ab7e"], ["0x10022043", "add esp, 4", "0x1002ab83"]]}, {"orig": [["0x10022046", "test edi, edi"]], "recomp": [["0x1002ab86", "test ebx, ebx"]]}, {"both": [["0x10022048", "je 0x7", "0x1002ab88"]]}, {"orig": [["0x1002204a", "mov dword ptr [eax], ebx"], ["0x1002204c", "mov dword ptr [eax + 4], edi"]], "recomp": [["0x1002ab8a", "mov dword ptr [eax], edi"], ["0x1002ab8c", "mov dword ptr [eax + 4], ebx"]]}, {"both": [["0x1002204f", "jmp 0x5", "0x1002ab8f"], ["0x10022051", "mov dword ptr [eax], eax", "0x1002ab91"], ["0x10022053", "mov dword ptr [eax + 4], eax", "0x1002ab93"], ["0x10022056", "lea edx, [eax + 8]", "0x1002ab96"]]}, {"orig": [["0x10022059", "mov dword ptr [ebx + 4], eax"]], "recomp": [["0x1002ab99", "mov dword ptr [edi + 4], eax"]]}, {"both": [["0x1002205c", "mov ecx, dword ptr [eax + 4]", "0x1002ab9c"], ["0x1002205f", "test edx, edx", "0x1002ab9f"], ["0x10022061", "mov dword ptr [ecx], eax", "0x1002aba1"], ["0x10022063", "je 0x8", "0x1002aba3"], ["0x10022065", "mov ecx, dword ptr [esp + 0x18]", "0x1002aba5"], ["0x10022069", "mov ebx, dword ptr [ecx]", "0x1002aba9"], ["0x1002206b", "mov dword ptr [edx], ebx", "0x1002abab"], ["0x1002206d", "mov ecx, dword ptr [esp + 0x10]", "0x1002abad"], ["0x10022071", "inc dword ptr [esi + 8]", "0x1002abb1"], ["0x10022074", "pop edi", "0x1002abb4"]]}]]]}, {"address": "0x10022080", "recomp": "0x1002abc0", "name": "LegoWorld::Tickle", "matching": 0.9285714285714286, "diff": [["@@ -0x100220a7,16 +0x1002abe7,16 @@", [{"both": [["0x100220a7", "call SetAppCursor (FUNCTION)", "0x1002abe7"], ["0x100220ac", "add esp, 4", "0x1002abec"], ["0x100220af", "mov eax, dword ptr [esi]", "0x1002abef"], ["0x100220b1", "mov ecx, esi", "0x1002abf1"], ["0x100220b3", "call dword ptr [eax + 0x50]", "0x1002abf3"], ["0x100220b6", "mov eax, 1", "0x1002abf6"], ["0x100220bb", "pop esi", "0x1002abfb"], ["0x100220bc", "ret ", "0x1002abfc"], ["0x100220bd", "mov ecx, esi", "0x1002abfd"], ["0x100220bf", "call LegoWorld::PresentersPending (FUNCTION)", "0x1002abff"]]}, {"orig": [["0x100220c4", "cmp al, 1"], ["0x100220c6", "je 0x7"]], "recomp": [["0x1002ac04", "test al, al"], ["0x1002ac06", "jne 0x7"]]}, {"both": [["0x100220c8", "dec word ptr [esi + 0xf4]", "0x1002ac08"], ["0x100220cf", "mov eax, 1", "0x1002ac0f"], ["0x100220d4", "pop esi", "0x1002ac14"], ["0x100220d5", "ret ", "0x1002ac15"]]}]]]}, {"address": "0x100220e0", "recomp": "0x1002ac20", "name": "LegoWorld::PresentersPending", "matching": 1.0, "diff": []}, {"address": "0x10022340", "recomp": "0x1002ae80", "name": "LegoWorld::ReadyWorld", "matching": 1.0, "diff": []}, {"address": "0x10022360", "recomp": "0x1002aea0", "name": "_Construct", "matching": 1.0, "diff": []}, {"address": "0x10022380", "recomp": "0x1002b2b0", "name": "MxList<MxPresenter *>::InsertEntry", "matching": 1.0, "diff": []}, {"address": "0x10022430", "recomp": "0x1002b0e0", "name": "MxList<LegoEntity *>::InsertEntry", "matching": 1.0, "diff": []}, {"address": "0x100224e0", "recomp": "0x1002af50", "name": "MxList<LegoCacheSound *>::InsertEntry", "matching": 1.0, "diff": []}, {"address": "0x10022590", "recomp": "0x1002b000", "name": "MxListCursor<LegoCacheSound *>::Find", "matching": 1.0, "diff": []}, {"address": "0x100225e0", "recomp": "0x1002b400", "name": "MxList<MxPresenter *>::DeleteEntry", "matching": 1.0, "diff": []}, {"address": "0x10022630", "recomp": "0x1002b3b0", "name": "MxList<LegoEntity *>::DeleteEntry", "matching": 1.0, "diff": []}, {"address": "0x10022680", "recomp": "0x1002b360", "name": "MxList<LegoCacheSound *>::DeleteEntry", "matching": 1.0, "diff": []}, {"address": "0x100226d0", "recomp": "0x1000d150", "name": "LegoCarBuild::LegoCarBuild", "matching": 0.0, "stub": true}, {"address": "0x10022930", "recomp": "0x1000d430", "name": "LegoCarBuild::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x10022940", "recomp": "0x1000d2f0", "name": "LegoCarBuild::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10022950", "recomp": "0x1000d300", "name": "LegoCarBuild::IsA", "matching": 1.0, "diff": []}, {"address": "0x10022a60", "recomp": "0x1000d410", "name": "LegoCarBuild::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10022a80", "recomp": "0x1000d440", "name": "LegoCarBuild::~LegoCarBuild", "matching": 0.0, "stub": true}, {"address": "0x10022b70", "recomp": "0x1000d490", "name": "LegoCarBuild::Create", "matching": 0.0, "stub": true}, {"address": "0x100238b0", "recomp": "0x1000d4a0", "name": "LegoCarBuild::Tickle", "matching": 0.0, "stub": true}, {"address": "0x10024050", "recomp": "0x1000d4b0", "name": "LegoCarBuild::Notify", "matching": 0.0, "stub": true}, {"address": "0x100242c0", "recomp": "0x1000d4c0", "name": "LegoCarBuild::ReadyWorld", "matching": 0.0, "stub": true}, {"address": "0x100256c0", "recomp": "0x1000d4d0", "name": "LegoCarBuild::Enable", "matching": 0.0, "stub": true}, {"address": "0x10025e70", "recomp": "0x1000d4e0", "name": "LegoCarBuild::VTable0x64", "matching": 0.0, "stub": true}, {"address": "0x10025f30", "recomp": "0x1000d4f0", "name": "LegoVehicleBuildState::LegoVehicleBuildState", "matching": 1.0, "diff": []}, {"address": "0x10025ff0", "recomp": "0x1000d5d0", "name": "LegoVehicleBuildState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10026000", "recomp": "0x1000d5e0", "name": "LegoVehicleBuildState::IsA", "matching": 1.0, "diff": []}, {"address": "0x100260a0", "recomp": "0x1000d680", "name": "LegoVehicleBuildState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10026120", "recomp": "0x1000d730", "name": "LegoVehicleBuildState::VTable0x1c", "matching": 0.0, "stub": true}, {"address": "0x10026220", "recomp": "0x1001bfa0", "name": "LegoPlantManager::LegoPlantManager", "matching": 1.0, "diff": []}, {"address": "0x10026290", "recomp": "0x1001c010", "name": "LegoPlantManager::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100262a0", "recomp": "0x1001c020", "name": "LegoPlantManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100262c0", "recomp": "0x1001c040", "name": "LegoPlantManager::~LegoPlantManager", "matching": 0.0, "stub": true}, {"address": "0x10026330", "recomp": "0x1001c090", "name": "LegoPlantManager::Init", "matching": 0.0, "stub": true}, {"address": "0x10026360", "recomp": "0x1001c0a0", "name": "LegoPlantManager::FUN_10026360", "matching": 0.0, "stub": true}, {"address": "0x100263a0", "recomp": "0x1001c0b0", "name": "LegoPlantManager::FUN_100263a0", "matching": 0.0, "stub": true}, {"address": "0x10026720", "recomp": "0x1001c0c0", "name": "LegoPlantManager::Save", "matching": 0.0, "stub": true}, {"address": "0x100267b0", "recomp": "0x1001c0d0", "name": "LegoPlantManager::Load", "matching": 0.0, "stub": true}, {"address": "0x100269e0", "recomp": "0x1001c0e0", "name": "LegoPlantManager::FUN_100269e0", "matching": 0.0, "stub": true}, {"address": "0x10026ba0", "recomp": "0x1001c0f0", "name": "LegoPlantManager::FUN_10026ba0", "matching": 0.0, "stub": true}, {"address": "0x10026be0", "recomp": "0x1001c100", "name": "LegoPlantManager::SetCustomizeAnimFile", "matching": 1.0, "diff": []}, {"address": "0x10026e00", "recomp": "0x1001c170", "name": "LegoPlantManager::Tickle", "matching": 0.0, "stub": true}, {"address": "0x10027120", "recomp": "0x1001c180", "name": "LegoPlantManager::FUN_10027120", "matching": 0.0, "stub": true}, {"address": "0x10027220", "recomp": "0x10004c90", "name": "BumpBouy::BumpBouy", "matching": 0.0, "stub": true}, {"address": "0x10027490", "recomp": "0x10004dd0", "name": "BumpBouy::`scalar deleting destructor'", "matching": 0.10752688172043011, "diff": [["@@ -0x10027490,62 +0x10004dd0,31 @@", [{"orig": [["0x10027490", "sub ecx, dword ptr [ecx - 4]"], ["0x10027493", "jmp 0x8"], ["0x10027498", "int3 "], ["0x10027499", "int3 "], ["0x1002749a", "int3 "], ["0x1002749b", "int3 "], ["0x1002749c", "int3 "], ["0x1002749d", "int3 "], ["0x1002749e", "int3 "], ["0x1002749f", "int3 "], ["0x100274a0", "push esi"], ["0x100274a1", "mov esi, ecx"], ["0x100274a3", "call <OFFSET1>"], ["0x100274a8", "mov ecx, esi"]], "recomp": [["0x10004dd0", "mov eax, dword ptr fs:[0]"], ["0x10004dd6", "push ebp"], ["0x10004dd7", "mov ebp, esp"], ["0x10004dd9", "push -1"], ["0x10004ddb", "push <OFFSET1>"], ["0x10004de0", "push eax"], ["0x10004de1", "mov dword ptr fs:[0], esp"], ["0x10004de8", "sub esp, 4"], ["0x10004deb", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10004df2", "mov dword ptr [ebp - 0x10], ecx"], ["0x10004df5", "call <OFFSET2>"], ["0x10004dfa", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x100274aa", "call LegoPathActor::~LegoPathActor (FUNCTION)", "0x10004dfd"]]}, {"orig": [["0x100274af", "test byte ptr [esp + 8], 1"], ["0x100274b4", "je 0xc"], ["0x100274b6", "lea eax, [esi - 0x20]"]], "recomp": [["0x10004e02", "test byte ptr [ebp + 8], 1"], ["0x10004e06", "je 0xf"], ["0x10004e08", "mov eax, dword ptr [ebp - 0x10]"], ["0x10004e0b", "sub eax, 0x20"]]}, {"both": [["0x100274b9", "push eax", "0x10004e0e"], ["0x100274ba", "call ??3@YAXPAX@Z (FUNCTION)", "0x10004e0f"], ["0x100274bf", "add esp, 4", "0x10004e14"]]}, {"orig": [["0x100274c2", "lea eax, [esi - 0x20]"], ["0x100274c5", "pop esi"]], "recomp": [["0x10004e17", "mov eax, dword ptr [ebp - 0x10]"], ["0x10004e1a", "mov ecx, dword ptr [ebp - 0xc]"], ["0x10004e1d", "mov esp, ebp"], ["0x10004e1f", "mov dword ptr fs:[0], ecx"], ["0x10004e26", "sub eax, 0x20"], ["0x10004e29", "pop ebp"]]}, {"both": [["0x100274c6", "ret 4", "0x10004e2a"]]}, {"orig": [["0x100274c9", "int3 "], ["0x100274ca", "int3 "], ["0x100274cb", "int3 "], ["0x100274cc", "int3 "], ["0x100274cd", "int3 "], ["0x100274ce", "int3 "], ["0x100274cf", "int3 "], ["0x100274d0", "sub ecx, dword ptr [ecx - 4]"], ["0x100274d3", "jmp -0xd8"], ["0x100274d8", "int3 "], ["0x100274d9", "int3 "], ["0x100274da", "int3 "], ["0x100274db", "int3 "], ["0x100274dc", "int3 "], ["0x100274dd", "int3 "], ["0x100274de", "int3 "], ["0x100274df", "int3 "], ["0x100274e0", "sub ecx, dword ptr [ecx - 4]"], ["0x100274e3", "jmp 0x8"], ["0x100274e8", "int3 "], ["0x100274e9", "int3 "], ["0x100274ea", "int3 "], ["0x100274eb", "int3 "], ["0x100274ec", "int3 "], ["0x100274ed", "int3 "], ["0x100274ee", "int3 "], ["0x100274ef", "int3 "], ["0x100274f0", "mov eax, 'BumpBouy' (STRING)"], ["0x100274f5", "ret "], ["0x100274f6", "int3 "], ["0x100274f7", "int3 "], ["0x100274f8", "int3 "], ["0x100274f9", "int3 "], ["0x100274fa", "int3 "], ["0x100274fb", "int3 "], ["0x100274fc", "int3 "], ["0x100274fd", "int3 "], ["0x100274fe", "int3 "]], "recomp": [["0x10004e2d", "mov eax, <OFFSET5>"], ["0x10004e32", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10004e37", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10004e3a", "jmp LegoAnimActor::~LegoAnimActor (FUNCTION)"]]}]]]}, {"address": "0x100274d0", "recomp": "0x10004db0", "name": "BumpBouy::Notify", "matching": 0.0, "stub": true}, {"address": "0x100274e0", "recomp": "0x10004e60", "name": "BumpBouy::ClassName", "matching": 0.0, "diff": [["@@ -0x100274e0,1 +0x10004e60,2 @@", [{"orig": [["0x100274e0", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x10004e60", "mov eax, 'BumpBouy' (STRING)"], ["0x10004e65", "ret "]]}]]]}, {"address": "0x10027500", "recomp": "0x10004e80", "name": "BumpBouy::IsA", "matching": 0.9368770764119602, "diff": [["@@ -0x10027500,20 +0x10004e80,10 @@", [{"orig": [["0x10027500", "sub ecx, dword ptr [ecx - 4]"], ["0x10027503", "jmp 0x8"], ["0x10027508", "int3 "], ["0x10027509", "int3 "], ["0x1002750a", "int3 "], ["0x1002750b", "int3 "], ["0x1002750c", "int3 "], ["0x1002750d", "int3 "], ["0x1002750e", "int3 "], ["0x1002750f", "int3 "]], "recomp": []}, {"both": [["0x10027510", "mov edx, dword ptr [esp + 4]", "0x10004e80"], ["0x10027514", "push ebx", "0x10004e84"], ["0x10027515", "push esi", "0x10004e85"], ["0x10027516", "mov eax, edx", "0x10004e86"], ["0x10027518", "mov esi, 'BumpBouy' (STRING)", "0x10004e88"], ["0x1002751d", "mov bl, byte ptr [eax]", "0x10004e8d"], ["0x1002751f", "cmp bl, byte ptr [esi]", "0x10004e8f"], ["0x10027521", "jne 0x1a", "0x10004e91"], ["0x10027523", "or bl, bl", "0x10004e93"], ["0x10027525", "je 0x12", "0x10004e95"]]}]], ["@@ -0x1002765b,10 +0x10004fcb,19 @@", [{"both": [["0x1002765b", "jne 0xe", "0x10004fcb"], ["0x1002765d", "add edx, 2", "0x10004fcd"], ["0x10027660", "add eax, 2", "0x10004fd0"], ["0x10027663", "or cl, cl", "0x10004fd3"], ["0x10027665", "jne -0x1c", "0x10004fd5"], ["0x10027667", "xor eax, eax", "0x10004fd7"], ["0x10027669", "jmp 0x5", "0x10004fd9"], ["0x1002766b", "sbb eax, eax", "0x10004fdb"], ["0x1002766d", "sbb eax, -1", "0x10004fdd"], ["0x10027670", "test eax, eax", "0x10004fe0"]]}, {"orig": [], "recomp": [["0x10004fe2", "je 0x7"], ["0x10004fe4", "xor al, al"], ["0x10004fe6", "pop esi"], ["0x10004fe7", "pop ebx"], ["0x10004fe8", "ret 4"], ["0x10004feb", "mov al, 1"], ["0x10004fed", "pop esi"], ["0x10004fee", "pop ebx"], ["0x10004fef", "ret 4"]]}]]]}, {"address": "0x100276b0", "recomp": "0x10049210", "name": "ModelDbModel::Read", "matching": 1.0, "diff": []}, {"address": "0x10027850", "recomp": "0x100493b0", "name": "ModelDbPart::Read", "matching": 1.0, "diff": []}, {"address": "0x10027910", "recomp": "0x10049470", "name": "ReadModelDbWorlds", "matching": 0.8852459016393442, "diff": [["@@ -0x10027910,31 +0x10049470,31 @@", [{"both": [["0x10027910", "mov eax, dword ptr fs:[0]", "0x10049470"], ["0x10027916", "push ebp", "0x10049476"], ["0x10027917", "mov ebp, esp", "0x10049477"], ["0x10027919", "push -1", "0x10049479"], ["0x1002791b", "push <OFFSET1>", "0x1004947b"], ["0x10027920", "push eax", "0x10049480"], ["0x10027921", "mov dword ptr fs:[0], esp", "0x10049481"]]}, {"orig": [["0x10027928", "mov eax, dword ptr [ebp + 0xc]"]], "recomp": [["0x10049488", "mov ecx, dword ptr [ebp + 0xc]"]]}, {"both": [["0x1002792b", "sub esp, 0x24", "0x1004948b"]]}, {"orig": [["0x1002792e", "mov ecx, dword ptr [ebp + 0x10]"]], "recomp": [["0x1004948e", "mov eax, dword ptr [ebp + 0x10]"]]}, {"both": [["0x10027931", "mov edx, dword ptr [ebp + 8]", "0x10049491"]]}, {"orig": [], "recomp": [["0x10049494", "mov dword ptr [ecx], 0"], ["0x1004949a", "push ebx"]]}, {"both": [["0x10027934", "mov dword ptr [eax], 0", "0x1004949b"]]}, {"orig": [["0x1002793a", "push ebx"], ["0x1002793b", "mov dword ptr [ecx], 0"]], "recomp": []}, {"both": [["0x10027941", "push esi", "0x100494a1"], ["0x10027942", "push edi", "0x100494a2"], ["0x10027943", "push edx", "0x100494a3"]]}, {"orig": [["0x10027944", "lea eax, [ebp - 0x18]"], ["0x10027947", "push 1"], ["0x10027949", "push 4"], ["0x1002794b", "push eax"]], "recomp": [["0x100494a4", "lea ecx, [ebp - 0x18]"], ["0x100494a7", "push 1"], ["0x100494a9", "push 4"], ["0x100494ab", "push ecx"]]}, {"both": [["0x1002794c", "call _fread (FUNCTION)", "0x100494ac"], ["0x10027951", "add esp, 0x10", "0x100494b1"], ["0x10027954", "cmp eax, 1", "0x100494b4"], ["0x10027957", "je 0xa", "0x100494b7"], ["0x10027959", "mov eax, 0xffffffff", "0x100494b9"], ["0x1002795e", "jmp 0x243", "0x100494be"], ["0x10027963", "mov eax, dword ptr [ebp - 0x18]", "0x100494c3"], ["0x10027966", "lea eax, [eax + eax*2]", "0x100494c6"], ["0x10027969", "shl eax, 3", "0x100494c9"], ["0x1002796c", "push eax", "0x100494cc"]]}]], ["@@ -0x10027aa4,93 +0x10049604,93 @@", [{"both": [["0x10027aa4", "mov dword ptr [ebp - 0x14], edi", "0x10049604"], ["0x10027aa7", "jmp 0x7", "0x10049607"], ["0x10027aa9", "mov dword ptr [ebp - 0x14], 0", "0x10049609"], ["0x10027ab0", "mov eax, dword ptr [ebp + 8]", "0x10049610"], ["0x10027ab3", "mov ecx, dword ptr [ebp - 0x14]", "0x10049613"], ["0x10027ab6", "mov dword ptr [ebp - 4], 0xffffffff", "0x10049616"], ["0x10027abd", "push eax", "0x1004961d"], ["0x10027abe", "call ModelDbPart::Read (FUNCTION)", "0x1004961e"], ["0x10027ac3", "test eax, eax", "0x10049623"], ["0x10027ac5", "jne 0x121", "0x10049625"]]}, {"orig": [["0x10027acb", "mov ebx, dword ptr [esi - 8]"]], "recomp": [["0x1004962b", "mov edi, dword ptr [esi - 8]"]]}, {"both": [["0x10027ace", "push 0xc", "0x1004962e"]]}, {"orig": [["0x10027ad0", "mov edi, dword ptr [ebx + 0x14]"]], "recomp": [["0x10049630", "mov ebx, dword ptr [edi + 0x14]"]]}, {"both": [["0x10027ad3", "call ??2@YAPAXI@Z (FUNCTION)", "0x10049633"], ["0x10027ad8", "add esp, 4", "0x10049638"], ["0x10027adb", "mov dword ptr [ebp - 0x10], eax", "0x1004963b"], ["0x10027ade", "mov dword ptr [ebp - 4], 6", "0x1004963e"], ["0x10027ae5", "test eax, eax", "0x10049645"], ["0x10027ae7", "mov eax, 0", "0x10049647"], ["0x10027aec", "je 0x14", "0x1004964c"], ["0x10027aee", "mov eax, dword ptr [ebp - 0x14]", "0x1004964e"], ["0x10027af1", "mov ecx, dword ptr [ebp - 0x10]", "0x10049651"], ["0x10027af4", "mov dword ptr [ecx], eax", "0x10049654"], ["0x10027af6", "mov eax, ecx", "0x10049656"]]}, {"orig": [["0x10027af8", "mov dword ptr [ecx + 4], edi"]], "recomp": [["0x10049658", "mov dword ptr [ecx + 4], ebx"]]}, {"both": [["0x10027afb", "mov dword ptr [ecx + 8], 0", "0x1004965b"], ["0x10027b02", "mov dword ptr [ebp - 4], 0xffffffff", "0x10049662"]]}, {"orig": [["0x10027b09", "test edi, edi"]], "recomp": [["0x10049669", "test ebx, ebx"]]}, {"both": [["0x10027b0b", "je 0x5", "0x1004966b"]]}, {"orig": [["0x10027b0d", "mov dword ptr [edi + 8], eax"]], "recomp": [["0x1004966d", "mov dword ptr [ebx + 8], eax"]]}, {"both": [["0x10027b10", "jmp 0x3", "0x10049670"]]}, {"orig": [["0x10027b12", "mov dword ptr [ebx + 0x10], eax"], ["0x10027b15", "mov dword ptr [ebx + 0x14], eax"]], "recomp": [["0x10049672", "mov dword ptr [edi + 0x10], eax"], ["0x10049675", "mov dword ptr [edi + 0x14], eax"]]}, {"both": [["0x10027b18", "inc dword ptr [ebp - 0x28]", "0x10049678"], ["0x10027b1b", "mov eax, dword ptr [ebp - 0x28]", "0x1004967b"]]}, {"orig": [["0x10027b1e", "inc dword ptr [ebx + 8]"]], "recomp": [["0x1004967e", "inc dword ptr [edi + 8]"]]}, {"both": [["0x10027b21", "cmp eax, dword ptr [ebp - 0x24]", "0x10049681"], ["0x10027b24", "jl -0xae", "0x10049684"], ["0x10027b2a", "mov eax, dword ptr [ebp + 8]", "0x1004968a"], ["0x10027b2d", "push eax", "0x1004968d"], ["0x10027b2e", "push 1", "0x1004968e"], ["0x10027b30", "push 4", "0x10049690"], ["0x10027b32", "push esi", "0x10049692"], ["0x10027b33", "call _fread (FUNCTION)", "0x10049693"], ["0x10027b38", "add esp, 0x10", "0x10049698"], ["0x10027b3b", "cmp eax, 1", "0x1004969b"], ["0x10027b3e", "jne 0xc9", "0x1004969e"], ["0x10027b44", "mov eax, dword ptr [esi]", "0x100496a4"], ["0x10027b46", "mov ecx, eax", "0x100496a6"], ["0x10027b48", "shl eax, 3", "0x100496a8"]]}, {"orig": [["0x10027b4b", "xor edi, edi"]], "recomp": [["0x100496ab", "xor ebx, ebx"]]}, {"both": [["0x10027b4d", "sub eax, ecx", "0x100496ad"], ["0x10027b4f", "shl eax, 3", "0x100496af"], ["0x10027b52", "push eax", "0x100496b2"], ["0x10027b53", "call ??2@YAPAXI@Z (FUNCTION)", "0x100496b3"], ["0x10027b58", "add esp, 4", "0x100496b8"], ["0x10027b5b", "mov dword ptr [esi - 4], eax", "0x100496bb"]]}, {"orig": [["0x10027b5e", "cmp dword ptr [esi], edi"]], "recomp": [["0x100496be", "cmp dword ptr [esi], ebx"]]}, {"both": [["0x10027b60", "jle 0x20", "0x100496c0"]]}, {"orig": [["0x10027b62", "xor ebx, ebx"]], "recomp": [["0x100496c2", "xor edi, edi"]]}, {"both": [["0x10027b64", "mov eax, dword ptr [ebp + 8]", "0x100496c4"], ["0x10027b67", "mov ecx, dword ptr [esi - 4]", "0x100496c7"], ["0x10027b6a", "push eax", "0x100496ca"]]}, {"orig": [["0x10027b6b", "add ecx, ebx"]], "recomp": [["0x100496cb", "add ecx, edi"]]}, {"both": [["0x10027b6d", "call ModelDbModel::Read (FUNCTION)", "0x100496cd"], ["0x10027b72", "test eax, eax", "0x100496d2"], ["0x10027b74", "jne 0x9a", "0x100496d4"]]}, {"orig": [["0x10027b7a", "add ebx, 0x38"], ["0x10027b7d", "inc edi"], ["0x10027b7e", "cmp dword ptr [esi], edi"]], "recomp": [["0x100496da", "add edi, 0x38"], ["0x100496dd", "inc ebx"], ["0x100496de", "cmp dword ptr [esi], ebx"]]}, {"both": [["0x10027b80", "jg -0x1e", "0x100496e0"], ["0x10027b82", "add esi, 0x18", "0x100496e2"], ["0x10027b85", "inc dword ptr [ebp - 0x20]", "0x100496e5"], ["0x10027b88", "mov eax, dword ptr [ebp - 0x20]", "0x100496e8"], ["0x10027b8b", "cmp eax, dword ptr [ebp - 0x18]", "0x100496eb"], ["0x10027b8e", "jl -0x208", "0x100496ee"]]}, {"orig": [["0x10027b94", "mov eax, dword ptr [ebp + 0xc]"], ["0x10027b97", "mov ecx, dword ptr [ebp - 0x1c]"]], "recomp": [["0x100496f4", "mov ecx, dword ptr [ebp + 0xc]"], ["0x100496f7", "mov eax, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x10027b9a", "mov edx, dword ptr [ebp - 0x18]", "0x100496fa"]]}, {"orig": [["0x10027b9d", "mov dword ptr [eax], ecx"], ["0x10027b9f", "mov eax, dword ptr [ebp + 0x10]"], ["0x10027ba2", "mov dword ptr [eax], edx"]], "recomp": [["0x100496fd", "mov dword ptr [ecx], eax"], ["0x100496ff", "mov ecx, dword ptr [ebp + 0x10]"]]}, {"both": [["0x10027ba4", "xor eax, eax", "0x10049702"]]}, {"orig": [], "recomp": [["0x10049704", "mov dword ptr [ecx], edx"]]}, {"both": [["0x10027ba6", "mov ecx, dword ptr [ebp - 0xc]", "0x10049706"], ["0x10027ba9", "pop edi", "0x10049709"], ["0x10027baa", "mov dword ptr fs:[0], ecx", "0x1004970a"], ["0x10027bb1", "pop esi", "0x10049711"], ["0x10027bb2", "pop ebx", "0x10049712"], ["0x10027bb3", "mov esp, ebp", "0x10049713"], ["0x10027bb5", "pop ebp", "0x10049715"], ["0x10027bb6", "ret ", "0x10049716"], ["0x10027bb7", "mov eax, 0xffffffff", "0x10049717"], ["0x10027bbc", "jmp -0x18", "0x1004971c"]]}]]]}, {"address": "0x10027c40", "recomp": "0x100497a0", "name": "ModelDbPartList::Compare", "matching": 1.0, "diff": []}, {"address": "0x10027c70", "recomp": "0x10049830", "name": "MxCollection<ModelDbPart *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x10027c80", "recomp": "0x100497e0", "name": "MxCollection<ModelDbPart *>::~MxCollection<ModelDbPart *>", "matching": 1.0, "diff": []}, {"address": "0x10027cd0", "recomp": "0x100497d0", "name": "MxCollection<ModelDbPart *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10027ce0", "recomp": "0x100499e0", "name": "MxList<ModelDbPart *>::~MxList<ModelDbPart *>", "matching": 1.0, "diff": []}, {"address": "0x10027d70", "recomp": "0x10049840", "name": "ModelDbPartList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10027de0", "recomp": "0x100498b0", "name": "MxCollection<ModelDbPart *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10027e50", "recomp": "0x10049920", "name": "MxList<ModelDbPart *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10027f00", "recomp": "0x1002c200", "name": "ModelDbPartListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10027f70", "recomp": "0x1002c270", "name": "MxListCursor<ModelDbPart *>::~MxListCursor<ModelDbPart *>", "matching": 1.0, "diff": []}, {"address": "0x10027fc0", "recomp": "0x1002c2c0", "name": "MxListCursor<ModelDbPart *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10028030", "recomp": "0x1002c330", "name": "ModelDbPartListCursor::~ModelDbPartListCursor", "matching": 1.0, "diff": []}, {"address": "0x10028080", "recomp": "0x100499d0", "name": "FreeModelDbWorlds", "matching": 0.0, "stub": true}, {"address": "0x10028200", "recomp": "0x10008090", "name": "RaceCar::RaceCar", "matching": 1.0, "diff": []}, {"address": "0x10028270", "recomp": "0x10008100", "name": "RaceCar::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10028280", "recomp": "0x10008110", "name": "RaceCar::IsA", "matching": 1.0, "diff": []}, {"address": "0x10028400", "recomp": "0x10008290", "name": "RaceCar::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10028420", "recomp": "0x100082b0", "name": "RaceCar::~RaceCar", "matching": 1.0, "diff": []}, {"address": "0x10028490", "recomp": "0x10008320", "name": "RaceCar::Create", "matching": 0.0, "stub": true}, {"address": "0x100284d0", "recomp": "0x10008330", "name": "RaceCar::VTable0xcc", "matching": 0.0, "stub": true}, {"address": "0x10028520", "recomp": "0x1001f800", "name": "LegoControlManager::LegoControlManager", "matching": 1.0, "diff": []}, {"address": "0x10028690", "recomp": "0x1001f970", "name": "LegoEventNotificationParam::Clone", "matching": 1.0, "diff": []}, {"address": "0x10028770", "recomp": "0x1001fa50", "name": "LegoEventNotificationParam::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100287e0", "recomp": "0x1001fac0", "name": "LegoEventNotificationParam::~LegoEventNotificationParam", "matching": 1.0, "diff": []}, {"address": "0x10028830", "recomp": "0x1001fb10", "name": "LegoNotifyList::Compare", "matching": 1.0, "diff": []}, {"address": "0x10028850", "recomp": "0x1001fb90", "name": "MxCollection<MxCore *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x10028860", "recomp": "0x1001fb40", "name": "MxCollection<MxCore *>::~MxCollection<MxCore *>", "matching": 1.0, "diff": []}, {"address": "0x100288b0", "recomp": "0x1001fb30", "name": "MxCollection<MxCore *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100288c0", "recomp": "0x10020c20", "name": "MxList<MxCore *>::~MxList<MxCore *>", "matching": 1.0, "effective": true, "diff": [["@@ -0x100288c9,33 +0x10020c29,33 @@", [{"both": [["0x100288c9", "push -1", "0x10020c29"], ["0x100288cb", "push <OFFSET1>", "0x10020c2b"], ["0x100288d0", "push eax", "0x10020c30"], ["0x100288d1", "mov dword ptr fs:[0], esp", "0x10020c31"], ["0x100288d8", "mov dword ptr [ecx], MxList<MxCore *>::`vftable' (VTABLE)", "0x10020c38"], ["0x100288de", "sub esp, 4", "0x10020c3e"], ["0x100288e1", "mov dword ptr [ebp - 0x10], ecx", "0x10020c41"], ["0x100288e4", "mov dword ptr [ebp - 4], 0", "0x10020c44"], ["0x100288eb", "push esi", "0x10020c4b"], ["0x100288ec", "push edi", "0x10020c4c"]]}, {"orig": [["0x100288ed", "mov esi, dword ptr [ecx + 0x10]"], ["0x100288f0", "test esi, esi"]], "recomp": [["0x10020c4d", "mov edi, dword ptr [ecx + 0x10]"], ["0x10020c50", "test edi, edi"]]}, {"both": [["0x100288f2", "je 0x1c", "0x10020c52"]]}, {"orig": [["0x100288f4", "mov edi, dword ptr [esi + 8]"], ["0x100288f7", "mov eax, dword ptr [esi]"]], "recomp": [["0x10020c54", "mov esi, dword ptr [edi + 8]"], ["0x10020c57", "mov eax, dword ptr [edi]"]]}, {"both": [["0x100288f9", "push eax", "0x10020c59"], ["0x100288fa", "mov ecx, dword ptr [ebp - 0x10]", "0x10020c5a"], ["0x100288fd", "call dword ptr [ecx + 0xc]", "0x10020c5d"], ["0x10028900", "add esp, 4", "0x10020c60"]]}, {"orig": [["0x10028903", "push esi"]], "recomp": [["0x10020c63", "push edi"]]}, {"both": [["0x10028904", "call ??3@YAXPAX@Z (FUNCTION)", "0x10020c64"], ["0x10028909", "add esp, 4", "0x10020c69"]]}, {"orig": [["0x1002890c", "mov esi, edi"]], "recomp": [["0x10020c6c", "mov edi, esi"]]}, {"both": [["0x1002890e", "jmp -0x20", "0x10020c6e"], ["0x10028910", "xor eax, eax", "0x10020c70"], ["0x10028912", "mov ecx, dword ptr [ebp - 0x10]", "0x10020c72"], ["0x10028915", "mov dword ptr [ebp - 4], 0xffffffff", "0x10020c75"], ["0x1002891c", "mov dword ptr [ecx + 8], eax", "0x10020c7c"], ["0x1002891f", "mov dword ptr [ecx + 0x14], eax", "0x10020c7f"], ["0x10028922", "mov dword ptr [ecx + 0x10], eax", "0x10020c82"], ["0x10028925", "call <OFFSET4>", "0x10020c85"], ["0x1002892a", "mov eax, dword ptr [ebp - 0xc]", "0x10020c8a"], ["0x1002892d", "pop edi", "0x10020c8d"]]}]]]}, {"address": "0x10028950", "recomp": "0x1001fba0", "name": "LegoNotifyList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100289c0", "recomp": "0x1001fc10", "name": "MxPtrList<MxCore>::~MxPtrList<MxCore>", "matching": 1.0, "diff": []}, {"address": "0x10028a10", "recomp": "0x1001fc60", "name": "MxCollection<MxCore *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10028a80", "recomp": "0x1001fcd0", "name": "MxList<MxCore *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10028b30", "recomp": "0x1001fd80", "name": "MxPtrList<MxCore>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10028ba0", "recomp": "0x1001fdf0", "name": "LegoNotifyList::~LegoNotifyList", "matching": 1.0, "diff": []}, {"address": "0x10028bf0", "recomp": "0x1001fe40", "name": "LegoControlManagerEvent::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10028c60", "recomp": "0x1001feb0", "name": "LegoControlManagerEvent::~LegoControlManagerEvent", "matching": 1.0, "diff": []}, {"address": "0x10028cb0", "recomp": "0x1001ff00", "name": "LegoControlManager::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10028cc0", "recomp": "0x1001ff10", "name": "LegoControlManager::IsA", "matching": 1.0, "diff": []}, {"address": "0x10028d40", "recomp": "0x1001ff90", "name": "LegoControlManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10028d60", "recomp": "0x1001ffb0", "name": "LegoControlManager::~LegoControlManager", "matching": 1.0, "diff": []}, {"address": "0x10028df0", "recomp": "0x10020040", "name": "LegoControlManager::FUN_10028df0", "matching": 1.0, "diff": []}, {"address": "0x10028e10", "recomp": "0x10020060", "name": "LegoControlManager::Register", "matching": 1.0, "diff": []}, {"address": "0x10028ea0", "recomp": "0x100200f0", "name": "LegoControlManager::Unregister", "matching": 1.0, "diff": []}, {"address": "0x10028fd0", "recomp": "0x10020220", "name": "LegoNotifyListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10029040", "recomp": "0x10020290", "name": "MxPtrListCursor<MxCore>::~MxPtrListCursor<MxCore>", "matching": 1.0, "diff": []}, {"address": "0x10029090", "recomp": "0x100202e0", "name": "MxListCursor<MxCore *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10029100", "recomp": "0x10020350", "name": "MxPtrListCursor<MxCore>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10029170", "recomp": "0x100203c0", "name": "MxListCursor<MxCore *>::~MxListCursor<MxCore *>", "matching": 1.0, "diff": []}, {"address": "0x100291c0", "recomp": "0x10020410", "name": "LegoNotifyListCursor::~LegoNotifyListCursor", "matching": 1.0, "diff": []}, {"address": "0x10029210", "recomp": "0x10020460", "name": "LegoControlManager::FUN_10029210", "matching": 1.0, "diff": []}, {"address": "0x100292e0", "recomp": "0x10020530", "name": "LegoControlManager::FUN_100292e0", "matching": 1.0, "diff": []}, {"address": "0x100293c0", "recomp": "0x10020610", "name": "LegoControlManager::FUN_100293c0", "matching": 0.0, "stub": true}, {"address": "0x100294e0", "recomp": "0x10020620", "name": "LegoControlManager::FUN_100294e0", "matching": 1.0, "effective": true, "diff": [["@@ -0x10029518,50 +0x10020658,50 @@", [{"both": [["0x10029518", "mov dword ptr [ebp - 4], ebx", "0x10020658"], ["0x1002951b", "mov dword ptr [ebp - 0x14], esi", "0x1002065b"], ["0x1002951e", "mov dword ptr [ebp - 0x10], ebx", "0x1002065e"], ["0x10029521", "mov dword ptr [ebp - 0x1c], MxListCursor<MxPresenter *>::`vftable' (VTABLE)", "0x10020661"], ["0x10029528", "mov dword ptr [ebp - 4], 1", "0x10020668"], ["0x1002952f", "mov dword ptr [ebp - 0x1c], MxPtrListCursor<MxPresenter>::`vftable' (VTABLE)", "0x1002066f"], ["0x10029536", "mov dword ptr [ebp - 4], 2", "0x10020676"], ["0x1002953d", "mov dword ptr [ebp - 0x1c], MxPresenterListCursor::`vftable' (VTABLE)", "0x1002067d"], ["0x10029544", "mov dword ptr [ebp - 4], 3", "0x10020684"], ["0x1002954b", "call VideoManager (FUNCTION)", "0x1002068b"]]}, {"orig": [["0x10029550", "mov esi, dword ptr [eax]"]], "recomp": [["0x10020690", "mov edi, dword ptr [eax]"]]}, {"both": [["0x10029552", "mov ecx, eax", "0x10020692"], ["0x10029554", "mov eax, dword ptr [ebp + 0xc]", "0x10020694"]]}, {"orig": [["0x10029557", "mov edi, dword ptr [ebp + 8]"]], "recomp": [["0x10020697", "mov esi, dword ptr [ebp + 8]"]]}, {"both": [["0x1002955a", "push eax", "0x1002069a"]]}, {"orig": [["0x1002955b", "push edi"], ["0x1002955c", "call dword ptr [esi + 0x38]"], ["0x1002955f", "mov esi, eax"], ["0x10029561", "test esi, esi"]], "recomp": [["0x1002069b", "push esi"], ["0x1002069c", "call dword ptr [edi + 0x38]"], ["0x1002069f", "mov edi, eax"], ["0x100206a1", "test edi, edi"]]}, {"both": [["0x10029563", "je 0x4b", "0x100206a3"], ["0x10029565", "cmp dword ptr [ebp - 0x10], ebx", "0x100206a5"], ["0x10029568", "jne 0x8", "0x100206a8"], ["0x1002956a", "mov eax, dword ptr [ebp - 0x14]", "0x100206aa"], ["0x1002956d", "mov ecx, dword ptr [eax + 0x10]", "0x100206ad"], ["0x10029570", "jmp 0x6", "0x100206b0"], ["0x10029572", "mov eax, dword ptr [ebp - 0x10]", "0x100206b2"], ["0x10029575", "mov ecx, dword ptr [eax + 8]", "0x100206b5"], ["0x10029578", "mov dword ptr [ebp - 0x10], ecx", "0x100206b8"], ["0x1002957b", "cmp dword ptr [ebp - 0x10], ebx", "0x100206bb"], ["0x1002957e", "je 0x30", "0x100206be"], ["0x10029580", "mov eax, dword ptr [ebp - 0x10]", "0x100206c0"], ["0x10029583", "cmp dword ptr [ebp - 0x10], ebx", "0x100206c3"], ["0x10029586", "mov ecx, dword ptr [eax]", "0x100206c6"], ["0x10029588", "mov dword ptr [ebp - 0x20], ecx", "0x100206c8"], ["0x1002958b", "je 0x23", "0x100206cb"]]}, {"orig": [["0x1002958d", "push esi"]], "recomp": [["0x100206cd", "push edi"]]}, {"both": [["0x1002958e", "mov eax, dword ptr [ebp + 0xc]", "0x100206ce"], ["0x10029591", "push eax", "0x100206d1"], ["0x10029592", "mov ecx, dword ptr [ebp - 0x20]", "0x100206d2"]]}, {"orig": [["0x10029595", "push edi"]], "recomp": [["0x100206d5", "push esi"]]}, {"both": [["0x10029596", "call MxControlPresenter::FUN_10044270 (FUNCTION)", "0x100206d6"], ["0x1002959b", "test al, al", "0x100206db"], ["0x1002959d", "je -0x3a", "0x100206dd"], ["0x1002959f", "mov dword ptr [ebp - 4], 0xffffffff", "0x100206df"], ["0x100295a6", "call <OFFSET8>", "0x100206e6"], ["0x100295ab", "mov eax, dword ptr [ebp - 0x20]", "0x100206eb"], ["0x100295ae", "jmp 0xe", "0x100206ee"], ["0x100295b0", "mov dword ptr [ebp - 4], 0xffffffff", "0x100206f0"], ["0x100295b7", "call <OFFSET8>", "0x100206f7"], ["0x100295bc", "xor eax, eax", "0x100206fc"]]}]]]}, {"address": "0x10029600", "recomp": "0x10020980", "name": "LegoControlManager::Tickle", "matching": 1.0, "diff": []}, {"address": "0x10029630", "recomp": "0x100209b0", "name": "LegoControlManager::FUN_10029630", "matching": 1.0, "diff": []}, {"address": "0x10029750", "recomp": "0x10020ad0", "name": "LegoControlManager::FUN_10029750", "matching": 1.0, "diff": []}, {"address": "0x100298a0", "recomp": "0x1000a350", "name": "LegoSoundManager::LegoSoundManager", "matching": 1.0, "diff": []}, {"address": "0x10029910", "recomp": "0x1000a410", "name": "MxAudioManager::GetVolume", "matching": 1.0, "diff": []}, {"address": "0x10029920", "recomp": "0x1000a420", "name": "LegoSoundManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10029940", "recomp": "0x1000a440", "name": "LegoSoundManager::~LegoSoundManager", "matching": 1.0, "diff": []}, {"address": "0x100299a0", "recomp": "0x1000a4a0", "name": "LegoSoundManager::Init", "matching": 1.0, "diff": []}, {"address": "0x100299b0", "recomp": "0x1000a4b0", "name": "LegoSoundManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100299f0", "recomp": "0x1000a4f0", "name": "LegoSoundManager::Create", "matching": 0.9034090909090909, "diff": [["@@ -0x10029a0b,38 +0x1000a50b,38 @@", [{"both": [["0x10029a0b", "mov byte ptr [ebp - 0xd], 0", "0x1000a50b"], ["0x10029a0f", "push ebx", "0x1000a50f"], ["0x10029a10", "mov dword ptr [ebp - 0x18], ecx", "0x1000a510"], ["0x10029a13", "push esi", "0x1000a513"], ["0x10029a14", "push edi", "0x1000a514"], ["0x10029a15", "mov edi, 0xffffffff", "0x1000a515"], ["0x10029a1a", "push 0", "0x1000a51a"], ["0x10029a1c", "push 0xa", "0x1000a51c"], ["0x10029a1e", "call MxSoundManager::Create (FUNCTION)", "0x1000a51e"], ["0x10029a23", "test eax, eax", "0x1000a523"]]}, {"orig": [["0x10029a25", "jne 0x1ae"]], "recomp": [["0x1000a525", "jne 0x1ac"]]}, {"both": [["0x10029a2b", "mov ecx, dword ptr [ebp - 0x18]", "0x1000a52b"], ["0x10029a2e", "add ecx, 0x10", "0x1000a52e"], ["0x10029a31", "call MxCriticalSection::Enter (FUNCTION)", "0x1000a531"], ["0x10029a36", "mov byte ptr [ebp - 0xd], 1", "0x1000a536"], ["0x10029a3a", "call MxOmni::IsSound3D (FUNCTION)", "0x1000a53a"], ["0x10029a3f", "test al, al", "0x1000a53f"], ["0x10029a41", "je 0x78", "0x1000a541"]]}, {"orig": [["0x10029a43", "mov ecx, dword ptr [ebp - 0x18]"], ["0x10029a46", "mov eax, dword ptr [ecx + 0x34]"], ["0x10029a49", "lea esi, [ecx + 0x3c]"]], "recomp": [["0x1000a543", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a546", "mov ecx, dword ptr [eax + 0x34]"], ["0x1000a549", "lea esi, [eax + 0x3c]"]]}, {"both": [["0x10029a4c", "push esi", "0x1000a54c"], ["0x10029a4d", "push IID_IDirectSound3DListener (DATA)", "0x1000a54d"]]}, {"orig": [["0x10029a52", "push eax"], ["0x10029a53", "mov eax, dword ptr [eax]"], ["0x10029a55", "call dword ptr [eax]"]], "recomp": [["0x1000a552", "push ecx"], ["0x1000a553", "mov ebx, dword ptr [ecx]"], ["0x1000a555", "call dword ptr [ebx]"]]}, {"both": [["0x10029a57", "test eax, eax", "0x1000a557"]]}, {"orig": [["0x10029a59", "jne 0x17a"]], "recomp": [["0x1000a559", "jne 0x178"]]}, {"both": [["0x10029a5f", "call MxOmni::GetInstance (FUNCTION)", "0x1000a55f"], ["0x10029a64", "test eax, eax", "0x1000a564"], ["0x10029a66", "je 0x53", "0x1000a566"], ["0x10029a68", "mov eax, dword ptr [eax + 0x30]", "0x1000a568"], ["0x10029a6b", "test eax, eax", "0x1000a56b"], ["0x10029a6d", "je 0x4c", "0x1000a56d"], ["0x10029a6f", "mov edx, dword ptr [eax + 0x30]", "0x1000a56f"], ["0x10029a72", "test edx, edx", "0x1000a572"], ["0x10029a74", "je 0x45", "0x1000a574"], ["0x10029a76", "lea edi, [ebp - 0x78]", "0x1000a576"]]}]], ["@@ -0x10029ab2,21 +0x1000a5b2,21 @@", [{"both": [["0x10029ab2", "push 0x41200000", "0x1000a5b2"], ["0x10029ab7", "push eax", "0x1000a5b7"], ["0x10029ab8", "call dword ptr [ebx + 0x3c]", "0x1000a5b8"], ["0x10029abb", "push 0x20", "0x1000a5bb"], ["0x10029abd", "xor esi, esi", "0x1000a5bd"], ["0x10029abf", "call ??2@YAPAXI@Z (FUNCTION)", "0x1000a5bf"], ["0x10029ac4", "add esp, 4", "0x1000a5c4"], ["0x10029ac7", "mov dword ptr [ebp - 0x14], eax", "0x1000a5c7"], ["0x10029aca", "mov dword ptr [ebp - 4], esi", "0x1000a5ca"], ["0x10029acd", "cmp eax, esi", "0x1000a5cd"]]}, {"orig": [["0x10029acf", "je 0xf3"]], "recomp": [["0x1000a5cf", "je 0xf1"]]}, {"both": [["0x10029ad5", "mov al, byte ptr [ebp - 0x19]", "0x1000a5d5"], ["0x10029ad8", "mov ecx, dword ptr [ebp - 0x14]", "0x1000a5d8"], ["0x10029adb", "mov byte ptr [ebp - 4], 1", "0x1000a5db"], ["0x10029adf", "mov byte ptr [ecx + 4], al", "0x1000a5df"], ["0x10029ae2", "mov dl, byte ptr [ebp - 0xe]", "0x1000a5e2"], ["0x10029ae5", "mov byte ptr [ecx + 5], dl", "0x1000a5e5"], ["0x10029ae8", "mov dword ptr [ecx + 0xc], esi", "0x1000a5e8"], ["0x10029aeb", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], esi", "0x1000a5eb"], ["0x10029af1", "jne 0x23", "0x1000a5f1"], ["0x10029af3", "push 0x18", "0x1000a5f3"]]}]], ["@@ -0x10029b57,51 +0x1000a657,51 @@", [{"both": [["0x10029b57", "mov al, byte ptr [ebp - 0x19]", "0x1000a657"], ["0x10029b5a", "mov byte ptr [ecx + 0x14], al", "0x1000a65a"], ["0x10029b5d", "call ??2@YAPAXI@Z (FUNCTION)", "0x1000a65d"], ["0x10029b62", "add esp, 4", "0x1000a662"], ["0x10029b65", "mov ecx, dword ptr [ebp - 0x14]", "0x1000a665"], ["0x10029b68", "mov byte ptr [ebp - 4], 6", "0x1000a668"], ["0x10029b6c", "mov byte ptr [ebp - 4], 0", "0x1000a66c"], ["0x10029b70", "mov dword ptr [eax], eax", "0x1000a670"], ["0x10029b72", "mov dword ptr [eax + 4], eax", "0x1000a672"], ["0x10029b75", "mov dword ptr [ecx + 0x18], eax", "0x1000a675"]]}, {"orig": [["0x10029b78", "mov eax, ecx"]], "recomp": []}, {"both": [["0x10029b7a", "mov dword ptr [ecx + 0x1c], 0", "0x1000a678"], ["0x10029b81", "mov dword ptr [ecx], LegoUnknown100d6b4c::`vftable' (VTABLE)", "0x1000a67f"], ["0x10029b87", "jmp 0x41", "0x1000a685"], ["0x10029b89", "mov ecx, dword ptr [ebp - 0x14]", "0x1000a687"], ["0x10029b8c", "add ecx, 0x14", "0x1000a68a"], ["0x10029b8f", "jmp list<Element100d6b4c,allocator<Element100d6b4c> >::~list<Element100d6b4c,allocator<Element100d6b4c> > (FUNCTION)", "0x1000a68d"], ["0x10029b94", "mov ecx, dword ptr [ebp - 0x14]", "0x1000a692"], ["0x10029b97", "add ecx, 0x14", "0x1000a695"], ["0x10029b9a", "jmp List<Element100d6b4c>::~List<Element100d6b4c> (FUNCTION)", "0x1000a698"], ["0x10029b9f", "lea ecx, [ebp - 0xf]", "0x1000a69d"], ["0x10029ba2", "jmp _Lockit::~_Lockit (FUNCTION)", "0x1000a6a0"], ["0x10029ba7", "mov ecx, dword ptr [ebp - 0x14]", "0x1000a6a5"], ["0x10029baa", "add ecx, 4", "0x1000a6a8"], ["0x10029bad", "jmp _Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::~_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocat (FUNCTION)", "0x1000a6ab"], ["0x10029bb2", "mov ecx, dword ptr [ebp - 0x14]", "0x1000a6b0"], ["0x10029bb5", "add ecx, 4", "0x1000a6b3"], ["0x10029bb8", "jmp set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::~set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> > (FUNCTION)", "0x1000a6b6"], ["0x10029bbd", "mov ecx, dword ptr [ebp - 0x14]", "0x1000a6bb"], ["0x10029bc0", "add ecx, 4", "0x1000a6be"], ["0x10029bc3", "jmp Set<Element100d6b4c,Set100d6b4cComparator>::~Set<Element100d6b4c,Set100d6b4cComparator> (FUNCTION)", "0x1000a6c1"]]}, {"orig": [["0x10029bc8", "xor eax, eax"], ["0x10029bca", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": [["0x1000a6c6", "xor ecx, ecx"], ["0x1000a6c8", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x10029bcd", "xor edi, edi", "0x1000a6cb"], ["0x10029bcf", "mov dword ptr [ebp - 4], 0xffffffff", "0x1000a6cd"]]}, {"orig": [["0x10029bd6", "mov dword ptr [ecx + 0x40], eax"]], "recomp": [["0x1000a6d4", "mov dword ptr [eax + 0x40], ecx"]]}, {"both": [["0x10029bd9", "test edi, edi", "0x1000a6d7"]]}, {"orig": [["0x10029bdb", "je 0x8"], ["0x10029bdd", "mov ecx, dword ptr [ebp - 0x18]"], ["0x10029be0", "mov eax, dword ptr [ecx]"], ["0x10029be2", "call dword ptr [eax + 0x18]"]], "recomp": [["0x1000a6d9", "je 0xa"], ["0x1000a6db", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000a6de", "mov ecx, eax"], ["0x1000a6e0", "mov ebx, dword ptr [eax]"], ["0x1000a6e2", "call dword ptr [ebx + 0x18]"]]}, {"both": [["0x10029be5", "cmp byte ptr [ebp - 0xd], 0", "0x1000a6e5"], ["0x10029be9", "je 0xb", "0x1000a6e9"], ["0x10029beb", "mov ecx, dword ptr [ebp - 0x18]", "0x1000a6eb"], ["0x10029bee", "add ecx, 0x10", "0x1000a6ee"], ["0x10029bf1", "call MxCriticalSection::Leave (FUNCTION)", "0x1000a6f1"], ["0x10029bf6", "mov eax, edi", "0x1000a6f6"], ["0x10029bf8", "mov ecx, dword ptr [ebp - 0xc]", "0x1000a6f8"], ["0x10029bfb", "mov dword ptr fs:[0], ecx", "0x1000a6fb"], ["0x10029c02", "pop edi", "0x1000a702"], ["0x10029c03", "pop esi", "0x1000a703"]]}]]]}, {"address": "0x10029c30", "recomp": "0x1000a740", "name": "_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::~_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocat", "matching": 1.0, "effective": true, "diff": [["@@ -0x10029c3c,42 +0x1000a74c,42 @@", [{"both": [["0x10029c3c", "cmp dword ptr [esi + 0xc], 0", "0x1000a74c"], ["0x10029c40", "mov eax, dword ptr [ecx]", "0x1000a750"], ["0x10029c42", "mov dword ptr [esp + 0x18], ecx", "0x1000a752"], ["0x10029c46", "mov dword ptr [esp + 0x10], eax", "0x1000a756"], ["0x10029c4a", "mov dword ptr [esp + 0x14], eax", "0x1000a75a"], ["0x10029c4e", "je 0x65", "0x1000a75e"], ["0x10029c50", "cmp dword ptr [ecx], eax", "0x1000a760"], ["0x10029c52", "jne 0x61", "0x1000a762"], ["0x10029c54", "cmp ecx, ecx", "0x1000a764"], ["0x10029c56", "jne 0x5d", "0x1000a766"]]}, {"orig": [["0x10029c58", "mov edi, dword ptr [ecx + 4]"]], "recomp": [["0x1000a768", "mov ebx, dword ptr [ecx + 4]"]]}, {"both": [["0x10029c5b", "xor ebp, ebp", "0x1000a76b"]]}, {"orig": [["0x10029c5d", "mov ebx, edi"], ["0x10029c5f", "cmp ebx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]], "recomp": [["0x1000a76d", "mov edi, ebx"], ["0x1000a76f", "cmp edi, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x10029c65", "je 0x2f", "0x1000a775"]]}, {"orig": [["0x10029c67", "mov eax, dword ptr [ebx + 8]"]], "recomp": [["0x1000a777", "mov eax, dword ptr [edi + 8]"]]}, {"both": [["0x10029c6a", "mov ecx, esi", "0x1000a77a"], ["0x10029c6c", "push eax", "0x1000a77c"], ["0x10029c6d", "call _Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Erase (FUNCTION)", "0x1000a77d"]]}, {"orig": [["0x10029c72", "mov ebx, dword ptr [ebx]"], ["0x10029c74", "cmp dword ptr [edi + 0xc], ebp"]], "recomp": [["0x1000a782", "mov edi, dword ptr [edi]"], ["0x1000a784", "cmp dword ptr [ebx + 0xc], ebp"]]}, {"both": [["0x10029c77", "jne 0x10", "0x1000a787"]]}, {"orig": [["0x10029c79", "mov eax, dword ptr [edi + 0x10]"]], "recomp": [["0x1000a789", "mov eax, dword ptr [ebx + 0x10]"]]}, {"both": [["0x10029c7c", "test eax, eax", "0x1000a78c"], ["0x10029c7e", "je 0x9", "0x1000a78e"], ["0x10029c80", "push eax", "0x1000a790"], ["0x10029c81", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000a791"], ["0x10029c86", "add esp, 4", "0x1000a796"]]}, {"orig": [["0x10029c89", "push edi"]], "recomp": [["0x1000a799", "push ebx"]]}, {"both": [["0x10029c8a", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000a79a"], ["0x10029c8f", "add esp, 4", "0x1000a79f"]]}, {"orig": [["0x10029c92", "mov edi, ebx"]], "recomp": [["0x1000a7a2", "mov ebx, edi"]]}, {"both": [["0x10029c94", "jmp -0x37", "0x1000a7a4"], ["0x10029c96", "mov eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]", "0x1000a7a6"], ["0x10029c9b", "mov ecx, dword ptr [esi + 4]", "0x1000a7ab"], ["0x10029c9e", "mov dword ptr [ecx + 4], eax", "0x1000a7ae"], ["0x10029ca1", "mov eax, dword ptr [esi + 4]", "0x1000a7b1"], ["0x10029ca4", "mov dword ptr [esi + 0xc], 0", "0x1000a7b4"], ["0x10029cab", "mov dword ptr [eax], eax", "0x1000a7bb"], ["0x10029cad", "mov eax, dword ptr [esi + 4]", "0x1000a7bd"], ["0x10029cb0", "mov dword ptr [eax + 8], eax", "0x1000a7c0"], ["0x10029cb3", "jmp 0x36", "0x1000a7c3"]]}]]]}, {"address": "0x10029d10", "recomp": "0x1000a820", "name": "_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::iterator::_Inc", "matching": 1.0, "diff": []}, {"address": "0x10029d50", "recomp": "0x1000a860", "name": "_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::erase", "matching": 0.7962466487935657, "diff": [["@@ -0x10029d50,39 +0x1000a860,39 @@", [{"both": [["0x10029d50", "mov eax, dword ptr [esp + 8]", "0x1000a860"], ["0x10029d54", "sub esp, 4", "0x1000a864"], ["0x10029d57", "mov dword ptr [esp], eax", "0x1000a867"], ["0x10029d5b", "push ebx", "0x1000a86b"], ["0x10029d5c", "push esi", "0x1000a86c"]]}, {"orig": [["0x10029d5d", "mov eax, dword ptr [eax + 8]"]], "recomp": []}, {"both": [["0x10029d60", "push edi", "0x1000a86d"]]}, {"orig": [], "recomp": [["0x1000a86e", "push ebp"]]}, {"both": [["0x10029d61", "mov esi, ecx", "0x1000a86f"]]}, {"orig": [["0x10029d63", "push ebp"], ["0x10029d64", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]], "recomp": [["0x1000a871", "mov ecx, dword ptr [eax + 8]"], ["0x1000a874", "cmp ecx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x10029d6a", "je 0xe", "0x1000a87a"]]}, {"orig": [["0x10029d6c", "mov ecx, dword ptr [eax]"], ["0x10029d6e", "cmp ecx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]], "recomp": [["0x1000a87c", "mov eax, dword ptr [ecx]"], ["0x1000a87e", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x10029d74", "je 0x29", "0x1000a884"]]}, {"orig": [["0x10029d76", "mov eax, ecx"]], "recomp": [["0x1000a886", "mov ecx, eax"]]}, {"both": [["0x10029d78", "jmp -0xe", "0x1000a888"]]}, {"orig": [["0x10029d7a", "mov ecx, dword ptr [esp + 0x1c]"], ["0x10029d7e", "mov eax, dword ptr [ecx + 4]"]], "recomp": [["0x1000a88a", "mov eax, dword ptr [esp + 0x1c]"], ["0x1000a88e", "mov ecx, dword ptr [eax + 4]"], ["0x1000a891", "cmp dword ptr [ecx + 8], eax"], ["0x1000a894", "jne 0x10"], ["0x1000a896", "mov dword ptr [esp + 0x1c], ecx"], ["0x1000a89a", "mov ecx, dword ptr [ecx + 4]"], ["0x1000a89d", "mov eax, dword ptr [esp + 0x1c]"], ["0x1000a8a1", "cmp dword ptr [ecx + 8], eax"], ["0x1000a8a4", "je -0x10"], ["0x1000a8a6", "mov eax, dword ptr [esp + 0x1c]"]]}, {"both": [["0x10029d81", "cmp dword ptr [eax + 8], ecx", "0x1000a8aa"]]}, {"orig": [["0x10029d84", "jne 0x10"], ["0x10029d86", "mov dword ptr [esp + 0x1c], eax"], ["0x10029d8a", "mov eax, dword ptr [eax + 4]"], ["0x10029d8d", "mov ecx, dword ptr [esp + 0x1c]"], ["0x10029d91", "cmp dword ptr [eax + 8], ecx"], ["0x10029d94", "je -0x10"], ["0x10029d96", "mov ecx, dword ptr [esp + 0x1c]"], ["0x10029d9a", "cmp dword ptr [ecx + 8], eax"]], "recomp": []}, {"both": [["0x10029d9d", "je 0x4", "0x1000a8ad"]]}, {"orig": [["0x10029d9f", "mov dword ptr [esp + 0x1c], eax"]], "recomp": [["0x1000a8af", "mov dword ptr [esp + 0x1c], ecx"]]}, {"both": [["0x10029da3", "mov edi, dword ptr [esp + 0x10]", "0x1000a8b3"], ["0x10029da7", "mov ebx, dword ptr [edi]", "0x1000a8b7"], ["0x10029da9", "cmp ebx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]", "0x1000a8b9"], ["0x10029daf", "je 0x26", "0x1000a8bf"], ["0x10029db1", "lea edx, [edi + 8]", "0x1000a8c1"], ["0x10029db4", "mov ecx, dword ptr [edx]", "0x1000a8c4"], ["0x10029db6", "cmp ecx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]", "0x1000a8c6"], ["0x10029dbc", "je 0x15", "0x1000a8cc"], ["0x10029dbe", "mov eax, dword ptr [ecx]", "0x1000a8ce"], ["0x10029dc0", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]", "0x1000a8d0"]]}]], ["@@ -0x10029dca,72 +0x1000a8da,70 @@", [{"both": [["0x10029dca", "jmp -0xe", "0x1000a8da"], ["0x10029dcc", "mov edi, ecx", "0x1000a8dc"], ["0x10029dce", "mov ecx, dword ptr [ecx + 8]", "0x1000a8de"], ["0x10029dd1", "jmp 0xe", "0x1000a8e1"], ["0x10029dd3", "mov ecx, ebx", "0x1000a8e3"], ["0x10029dd5", "jmp 0xa", "0x1000a8e5"], ["0x10029dd7", "mov edx, dword ptr [esp + 0x10]", "0x1000a8e7"], ["0x10029ddb", "mov ecx, dword ptr [edx + 8]", "0x1000a8eb"], ["0x10029dde", "add edx, 8", "0x1000a8ee"], ["0x10029de1", "cmp dword ptr [esp + 0x10], edi", "0x1000a8f1"]]}, {"orig": [["0x10029de5", "jne 0x8f"]], "recomp": [["0x1000a8f5", "jne 0x8b"]]}, {"both": [["0x10029deb", "mov eax, dword ptr [edi + 4]", "0x1000a8fb"], ["0x10029dee", "mov ebx, dword ptr [esp + 0x10]", "0x1000a8fe"], ["0x10029df2", "mov dword ptr [ecx + 4], eax", "0x1000a902"], ["0x10029df5", "mov eax, dword ptr [esi + 4]", "0x1000a905"], ["0x10029df8", "add eax, 4", "0x1000a908"], ["0x10029dfb", "cmp dword ptr [eax], ebx", "0x1000a90b"], ["0x10029dfd", "je 0xc", "0x1000a90d"], ["0x10029dff", "mov eax, dword ptr [ebx + 4]", "0x1000a90f"], ["0x10029e02", "cmp dword ptr [eax], ebx", "0x1000a912"], ["0x10029e04", "je 0x5", "0x1000a914"], ["0x10029e06", "mov dword ptr [eax + 8], ecx", "0x1000a916"], ["0x10029e09", "jmp 0x2", "0x1000a919"], ["0x10029e0b", "mov dword ptr [eax], ecx", "0x1000a91b"], ["0x10029e0d", "mov ebx, dword ptr [esi + 4]", "0x1000a91d"], ["0x10029e10", "mov eax, dword ptr [esp + 0x10]", "0x1000a920"], ["0x10029e14", "cmp dword ptr [ebx], eax", "0x1000a924"]]}, {"orig": [["0x10029e16", "jne 0x26"]], "recomp": [["0x1000a926", "jne 0x22"]]}, {"both": [["0x10029e18", "mov eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]", "0x1000a928"], ["0x10029e1d", "cmp dword ptr [edx], eax", "0x1000a92d"]]}, {"orig": [["0x10029e1f", "je 0x14"], ["0x10029e21", "mov eax, ecx"], ["0x10029e23", "mov edx, dword ptr [eax]"], ["0x10029e25", "cmp edx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"], ["0x10029e2b", "je 0x4"], ["0x10029e2d", "mov eax, edx"]], "recomp": [["0x1000a92f", "je 0x10"], ["0x1000a931", "mov edx, ecx"], ["0x1000a933", "mov eax, dword ptr [edx]"], ["0x1000a935", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"], ["0x1000a93b", "je 0xb"], ["0x1000a93d", "mov edx, eax"]]}, {"both": [["0x10029e2f", "jmp -0xe", "0x1000a93f"]]}, {"orig": [["0x10029e31", "mov dword ptr [ebx], eax"], ["0x10029e33", "jmp 0x9"]], "recomp": []}, {"both": [["0x10029e35", "mov eax, dword ptr [esp + 0x10]", "0x1000a941"], ["0x10029e39", "mov edx, dword ptr [eax + 4]", "0x1000a945"], ["0x10029e3c", "mov dword ptr [ebx], edx", "0x1000a948"], ["0x10029e3e", "mov edx, dword ptr [esi + 4]", "0x1000a94a"], ["0x10029e41", "mov eax, dword ptr [esp + 0x10]", "0x1000a94d"], ["0x10029e45", "add edx, 8", "0x1000a951"], ["0x10029e48", "cmp dword ptr [edx], eax", "0x1000a954"]]}, {"orig": [["0x10029e4a", "jne 0x8a"]], "recomp": [["0x1000a956", "jne 0x88"]]}, {"both": [["0x10029e50", "mov ebx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]", "0x1000a95c"], ["0x10029e56", "cmp dword ptr [eax], ebx", "0x1000a962"], ["0x10029e58", "je 0x15", "0x1000a964"], ["0x10029e5a", "mov eax, ecx", "0x1000a966"], ["0x10029e5c", "mov ebx, dword ptr [eax + 8]", "0x1000a968"], ["0x10029e5f", "cmp ebx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]", "0x1000a96b"], ["0x10029e65", "je 0x4", "0x1000a971"], ["0x10029e67", "mov eax, ebx", "0x1000a973"], ["0x10029e69", "jmp -0xf", "0x1000a975"], ["0x10029e6b", "mov dword ptr [edx], eax", "0x1000a977"]]}, {"orig": [["0x10029e6d", "jmp 0x6b"]], "recomp": [["0x1000a979", "jmp 0x69"]]}, {"both": [["0x10029e6f", "mov eax, dword ptr [esp + 0x10]", "0x1000a97b"], ["0x10029e73", "mov ebx, dword ptr [eax + 4]", "0x1000a97f"], ["0x10029e76", "mov dword ptr [edx], ebx", "0x1000a982"]]}, {"orig": [["0x10029e78", "jmp 0x60"]], "recomp": [["0x1000a984", "jmp 0x5e"]]}, {"both": [["0x10029e7a", "mov eax, dword ptr [esp + 0x10]", "0x1000a986"], ["0x10029e7e", "mov dword ptr [ebx + 4], edi", "0x1000a98a"], ["0x10029e81", "mov ebx, dword ptr [eax]", "0x1000a98d"], ["0x10029e83", "mov dword ptr [edi], ebx", "0x1000a98f"], ["0x10029e85", "cmp dword ptr [edx], edi", "0x1000a991"], ["0x10029e87", "jne 0x5", "0x1000a993"], ["0x10029e89", "mov dword ptr [ecx + 4], edi", "0x1000a995"], ["0x10029e8c", "jmp 0x15", "0x1000a998"], ["0x10029e8e", "mov eax, dword ptr [edi + 4]", "0x1000a99a"], ["0x10029e91", "mov dword ptr [ecx + 4], eax", "0x1000a99d"]]}]], ["@@ -0x10029ead,27 +0x1000a9b9,27 @@", [{"both": [["0x10029ead", "cmp dword ptr [eax], edx", "0x1000a9b9"], ["0x10029eaf", "je 0xc", "0x1000a9bb"], ["0x10029eb1", "mov eax, dword ptr [edx + 4]", "0x1000a9bd"], ["0x10029eb4", "cmp dword ptr [eax], edx", "0x1000a9c0"], ["0x10029eb6", "je 0x5", "0x1000a9c2"], ["0x10029eb8", "mov dword ptr [eax + 8], edi", "0x1000a9c4"], ["0x10029ebb", "jmp 0x2", "0x1000a9c7"], ["0x10029ebd", "mov dword ptr [eax], edi", "0x1000a9c9"], ["0x10029ebf", "mov eax, dword ptr [esp + 0x10]", "0x1000a9cb"], ["0x10029ec3", "mov edx, dword ptr [eax + 4]", "0x1000a9cf"]]}, {"orig": [["0x10029ec6", "add eax, 0x14"]], "recomp": []}, {"both": [["0x10029ec9", "mov dword ptr [edi + 4], edx", "0x1000a9d2"]]}, {"orig": [], "recomp": [["0x1000a9d5", "lea edx, [eax + 0x14]"]]}, {"both": [["0x10029ecc", "mov ebp, dword ptr [edi + 0x14]", "0x1000a9d8"]]}, {"orig": [["0x10029ecf", "mov ebx, dword ptr [eax]"]], "recomp": [["0x1000a9db", "mov ebx, dword ptr [edx]"]]}, {"both": [["0x10029ed1", "mov dword ptr [edi + 0x14], ebx", "0x1000a9dd"]]}, {"orig": [["0x10029ed4", "mov edi, dword ptr [esp + 0x10]"], ["0x10029ed8", "mov dword ptr [eax], ebp"]], "recomp": [["0x1000a9e0", "mov edi, eax"], ["0x1000a9e2", "mov dword ptr [edx], ebp"]]}, {"both": [["0x10029eda", "cmp dword ptr [edi + 0x14], 1", "0x1000a9e4"], ["0x10029ede", "jne 0x295", "0x1000a9e8"], ["0x10029ee4", "mov eax, dword ptr [esi + 4]", "0x1000a9ee"], ["0x10029ee7", "cmp dword ptr [eax + 4], ecx", "0x1000a9f1"], ["0x10029eea", "je 0x282", "0x1000a9f4"], ["0x10029ef0", "cmp dword ptr [ecx + 0x14], 1", "0x1000a9fa"], ["0x10029ef4", "jne 0x278", "0x1000a9fe"], ["0x10029efa", "lea ebx, [ecx + 4]", "0x1000aa04"], ["0x10029efd", "mov eax, dword ptr [ebx]", "0x1000aa07"], ["0x10029eff", "mov edx, dword ptr [eax]", "0x1000aa09"]]}]], ["@@ -0x1002a059,45 +0x1000ab63,45 @@", [{"both": [["0x1002a059", "mov eax, dword ptr [ecx + 4]", "0x1000ab63"], ["0x1002a05c", "mov edx, dword ptr [eax + 8]", "0x1000ab66"], ["0x1002a05f", "mov eax, dword ptr [ecx + 4]", "0x1000ab69"], ["0x1002a062", "mov ebx, dword ptr [eax + 0x14]", "0x1000ab6c"], ["0x1002a065", "mov dword ptr [edx + 0x14], ebx", "0x1000ab6f"], ["0x1002a068", "mov ebx, 1", "0x1000ab72"], ["0x1002a06d", "mov eax, dword ptr [ecx + 4]", "0x1000ab77"], ["0x1002a070", "mov dword ptr [eax + 0x14], ebx", "0x1000ab7a"], ["0x1002a073", "mov edx, dword ptr [edx + 8]", "0x1000ab7d"], ["0x1002a076", "mov dword ptr [edx + 0x14], ebx", "0x1000ab80"]]}, {"orig": [["0x1002a079", "mov edx, dword ptr [ecx + 4]"], ["0x1002a07c", "mov ebx, dword ptr [edx + 8]"], ["0x1002a07f", "mov eax, dword ptr [ebx]"], ["0x1002a081", "mov dword ptr [edx + 8], eax"], ["0x1002a084", "mov eax, dword ptr [ebx]"], ["0x1002a086", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"], ["0x1002a08c", "je 0x3"], ["0x1002a08e", "mov dword ptr [eax + 4], edx"], ["0x1002a091", "mov eax, dword ptr [edx + 4]"], ["0x1002a094", "mov dword ptr [ebx + 4], eax"], ["0x1002a097", "mov eax, dword ptr [esi + 4]"], ["0x1002a09a", "add eax, 4"], ["0x1002a09d", "cmp dword ptr [eax], edx"]], "recomp": [["0x1000ab83", "mov ebx, dword ptr [ecx + 4]"], ["0x1000ab86", "mov edx, dword ptr [ebx + 8]"], ["0x1000ab89", "mov eax, dword ptr [edx]"], ["0x1000ab8b", "mov dword ptr [ebx + 8], eax"], ["0x1000ab8e", "mov eax, dword ptr [edx]"], ["0x1000ab90", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"], ["0x1000ab96", "je 0x3"], ["0x1000ab98", "mov dword ptr [eax + 4], ebx"], ["0x1000ab9b", "mov eax, dword ptr [ebx + 4]"], ["0x1000ab9e", "mov dword ptr [edx + 4], eax"], ["0x1000aba1", "mov eax, dword ptr [esi + 4]"], ["0x1000aba4", "add eax, 4"], ["0x1000aba7", "cmp dword ptr [eax], ebx"]]}, {"both": [["0x1002a09f", "je 0x1a", "0x1000aba9"]]}, {"orig": [["0x1002a0a1", "mov eax, dword ptr [edx + 4]"], ["0x1002a0a4", "cmp dword ptr [eax], edx"]], "recomp": [["0x1000abab", "mov eax, dword ptr [ebx + 4]"], ["0x1000abae", "cmp dword ptr [eax], ebx"]]}, {"both": [["0x1002a0a6", "je 0xa", "0x1000abb0"]]}, {"orig": [["0x1002a0a8", "mov dword ptr [eax + 8], ebx"], ["0x1002a0ab", "mov dword ptr [ebx], edx"]], "recomp": [["0x1000abb2", "mov dword ptr [eax + 8], edx"], ["0x1000abb5", "mov dword ptr [edx], ebx"]]}, {"both": [["0x1002a0ad", "jmp 0xbd", "0x1000abb7"]]}, {"orig": [["0x1002a0b2", "mov dword ptr [eax], ebx"], ["0x1002a0b4", "mov dword ptr [ebx], edx"]], "recomp": [["0x1000abbc", "mov dword ptr [eax], edx"], ["0x1000abbe", "mov dword ptr [edx], ebx"]]}, {"both": [["0x1002a0b6", "jmp 0xb4", "0x1000abc0"]]}, {"orig": [["0x1002a0bb", "mov dword ptr [eax], ebx"], ["0x1002a0bd", "mov dword ptr [ebx], edx"]], "recomp": [["0x1000abc5", "mov dword ptr [eax], edx"], ["0x1000abc7", "mov dword ptr [edx], ebx"]]}, {"both": [["0x1002a0bf", "jmp 0xab", "0x1000abc9"], ["0x1002a0c4", "mov eax, dword ptr [edx]", "0x1000abce"], ["0x1002a0c6", "cmp dword ptr [eax + 0x14], 1", "0x1000abd0"], ["0x1002a0ca", "jne 0x4e", "0x1000abd4"], ["0x1002a0cc", "mov eax, dword ptr [edx + 8]", "0x1000abd6"], ["0x1002a0cf", "mov dword ptr [eax + 0x14], 1", "0x1000abd9"], ["0x1002a0d6", "mov dword ptr [edx + 0x14], 0", "0x1000abe0"], ["0x1002a0dd", "mov ebx, dword ptr [edx + 8]", "0x1000abe7"], ["0x1002a0e0", "mov ebp, dword ptr [ebx]", "0x1000abea"], ["0x1002a0e2", "mov dword ptr [edx + 8], ebp", "0x1000abec"]]}]], ["@@ -0x1002a115,53 +0x1000ac1f,55 @@", [{"both": [["0x1002a115", "mov eax, dword ptr [ecx + 4]", "0x1000ac1f"], ["0x1002a118", "mov edx, dword ptr [eax]", "0x1000ac22"], ["0x1002a11a", "mov eax, dword ptr [ecx + 4]", "0x1000ac24"], ["0x1002a11d", "mov ebx, dword ptr [eax + 0x14]", "0x1000ac27"], ["0x1002a120", "mov dword ptr [edx + 0x14], ebx", "0x1000ac2a"], ["0x1002a123", "mov ebx, 1", "0x1000ac2d"], ["0x1002a128", "mov eax, dword ptr [ecx + 4]", "0x1000ac32"], ["0x1002a12b", "mov dword ptr [eax + 0x14], ebx", "0x1000ac35"], ["0x1002a12e", "mov edx, dword ptr [edx]", "0x1000ac38"], ["0x1002a130", "mov dword ptr [edx + 0x14], ebx", "0x1000ac3a"]]}, {"orig": [["0x1002a133", "mov edx, dword ptr [ecx + 4]"], ["0x1002a136", "mov ebx, dword ptr [edx]"], ["0x1002a138", "mov eax, dword ptr [ebx + 8]"], ["0x1002a13b", "mov dword ptr [edx], eax"], ["0x1002a13d", "mov eax, dword ptr [ebx + 8]"], ["0x1002a140", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"], ["0x1002a146", "je 0x3"], ["0x1002a148", "mov dword ptr [eax + 4], edx"], ["0x1002a14b", "mov eax, dword ptr [edx + 4]"], ["0x1002a14e", "mov dword ptr [ebx + 4], eax"], ["0x1002a151", "mov eax, dword ptr [esi + 4]"], ["0x1002a154", "add eax, 4"], ["0x1002a157", "cmp dword ptr [eax], edx"]], "recomp": [["0x1000ac3d", "mov ebx, dword ptr [ecx + 4]"], ["0x1000ac40", "mov edx, dword ptr [ebx]"], ["0x1000ac42", "mov eax, dword ptr [edx + 8]"], ["0x1000ac45", "mov dword ptr [ebx], eax"], ["0x1000ac47", "mov eax, dword ptr [edx + 8]"], ["0x1000ac4a", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"], ["0x1000ac50", "je 0x3"], ["0x1000ac52", "mov dword ptr [eax + 4], ebx"], ["0x1000ac55", "mov eax, dword ptr [ebx + 4]"], ["0x1000ac58", "mov dword ptr [edx + 4], eax"], ["0x1000ac5b", "mov eax, dword ptr [esi + 4]"], ["0x1000ac5e", "add eax, 4"], ["0x1000ac61", "cmp dword ptr [eax], ebx"]]}, {"both": [["0x1002a159", "je 0xf", "0x1000ac63"]]}, {"orig": [["0x1002a15b", "mov ebp, dword ptr [edx + 4]"]], "recomp": [["0x1000ac65", "mov ebp, dword ptr [ebx + 4]"]]}, {"both": [["0x1002a15e", "lea eax, [ebp + 8]", "0x1000ac68"]]}, {"orig": [["0x1002a161", "cmp dword ptr [eax], edx"], ["0x1002a163", "je 0x5"], ["0x1002a165", "mov dword ptr [ebp], ebx"], ["0x1002a168", "jmp 0x2"], ["0x1002a16a", "mov dword ptr [eax], ebx"], ["0x1002a16c", "mov dword ptr [ebx + 8], edx"], ["0x1002a16f", "mov dword ptr [edx + 4], ebx"]], "recomp": [["0x1000ac6b", "cmp dword ptr [eax], ebx"], ["0x1000ac6d", "je 0x5"], ["0x1000ac6f", "mov dword ptr [ebp], edx"], ["0x1000ac72", "jmp 0x2"], ["0x1000ac74", "mov dword ptr [eax], edx"], ["0x1000ac76", "mov dword ptr [edx + 8], ebx"], ["0x1000ac79", "mov dword ptr [ebx + 4], edx"]]}, {"both": [["0x1002a172", "mov dword ptr [ecx + 0x14], 1", "0x1000ac7c"], ["0x1002a179", "cmp dword ptr [edi + 0xc], 0", "0x1000ac83"], ["0x1002a17d", "jne 0x10", "0x1000ac87"], ["0x1002a17f", "mov eax, dword ptr [edi + 0x10]", "0x1000ac89"], ["0x1002a182", "test eax, eax", "0x1000ac8c"], ["0x1002a184", "je 0x9", "0x1000ac8e"], ["0x1002a186", "push eax", "0x1000ac90"], ["0x1002a187", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000ac91"], ["0x1002a18c", "add esp, 4", "0x1000ac96"], ["0x1002a18f", "push edi", "0x1000ac99"], ["0x1002a190", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000ac9a"], ["0x1002a195", "mov ecx, dword ptr [esp + 0x20]", "0x1000ac9f"], ["0x1002a199", "mov eax, dword ptr [esp + 0x1c]", "0x1000aca3"], ["0x1002a19d", "add esp, 4", "0x1000aca7"], ["0x1002a1a0", "dec dword ptr [esi + 0xc]", "0x1000acaa"], ["0x1002a1a3", "mov dword ptr [eax], ecx", "0x1000acad"], ["0x1002a1a5", "pop ebp", "0x1000acaf"], ["0x1002a1a6", "pop edi", "0x1000acb0"], ["0x1002a1a7", "pop esi", "0x1000acb1"], ["0x1002a1a8", "pop ebx", "0x1000acb2"]]}, {"orig": [], "recomp": [["0x1000acb3", "add esp, 4"], ["0x1000acb6", "ret 8"]]}]]]}, {"address": "0x1002a1b0", "recomp": "0x1000acc0", "name": "_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Erase", "matching": 1.0, "effective": true, "diff": [["@@ -0x1002a1b0,34 +0x1000acc0,34 @@", [{"both": [["0x1002a1b0", "push ebx", "0x1000acc0"], ["0x1002a1b1", "push esi", "0x1000acc1"], ["0x1002a1b2", "push edi", "0x1000acc2"], ["0x1002a1b3", "mov esi, ecx", "0x1000acc3"]]}, {"orig": [["0x1002a1b5", "mov ebx, dword ptr [esp + 0x10]"]], "recomp": [["0x1000acc5", "mov edi, dword ptr [esp + 0x10]"]]}, {"both": [["0x1002a1b9", "push ebp", "0x1000acc9"]]}, {"orig": [["0x1002a1ba", "mov edi, ebx"], ["0x1002a1bc", "cmp ebx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]], "recomp": [["0x1000acca", "mov ebx, edi"], ["0x1000accc", "cmp edi, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1002a1c2", "je 0x37", "0x1000acd2"], ["0x1002a1c4", "xor ebp, ebp", "0x1000acd4"]]}, {"orig": [["0x1002a1c6", "mov eax, dword ptr [edi + 8]"]], "recomp": [["0x1000acd6", "mov eax, dword ptr [ebx + 8]"]]}, {"both": [["0x1002a1c9", "mov ecx, esi", "0x1000acd9"], ["0x1002a1cb", "push eax", "0x1000acdb"], ["0x1002a1cc", "call _Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Erase (FUNCTION)", "0x1000acdc"]]}, {"orig": [["0x1002a1d1", "mov edi, dword ptr [edi]"], ["0x1002a1d3", "cmp dword ptr [ebx + 0xc], ebp"]], "recomp": [["0x1000ace1", "mov ebx, dword ptr [ebx]"], ["0x1000ace3", "cmp dword ptr [edi + 0xc], ebp"]]}, {"both": [["0x1002a1d6", "jne 0x10", "0x1000ace6"]]}, {"orig": [["0x1002a1d8", "mov eax, dword ptr [ebx + 0x10]"]], "recomp": [["0x1000ace8", "mov eax, dword ptr [edi + 0x10]"]]}, {"both": [["0x1002a1db", "test eax, eax", "0x1000aceb"], ["0x1002a1dd", "je 0x9", "0x1000aced"], ["0x1002a1df", "push eax", "0x1000acef"], ["0x1002a1e0", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000acf0"], ["0x1002a1e5", "add esp, 4", "0x1000acf5"]]}, {"orig": [["0x1002a1e8", "push ebx"]], "recomp": [["0x1000acf8", "push edi"]]}, {"both": [["0x1002a1e9", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000acf9"], ["0x1002a1ee", "add esp, 4", "0x1000acfe"]]}, {"orig": [["0x1002a1f1", "mov ebx, edi"], ["0x1002a1f3", "cmp edi, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]], "recomp": [["0x1000ad01", "mov edi, ebx"], ["0x1000ad03", "cmp ebx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1002a1f9", "jne -0x35", "0x1000ad09"], ["0x1002a1fb", "pop ebp", "0x1000ad0b"], ["0x1002a1fc", "pop edi", "0x1000ad0c"], ["0x1002a1fd", "pop esi", "0x1000ad0d"], ["0x1002a1fe", "pop ebx", "0x1000ad0e"], ["0x1002a1ff", "ret 4", "0x1000ad0f"]]}]]]}, {"address": "0x1002a210", "recomp": "0x1000ad20", "name": "list<Element100d6b4c,allocator<Element100d6b4c> >::~list<Element100d6b4c,allocator<Element100d6b4c> >", "matching": 0.9795918367346939, "diff": [["@@ -0x1002a24d,21 +0x1000ad5d,21 @@", [{"both": [["0x1002a24d", "test eax, eax", "0x1000ad5d"], ["0x1002a24f", "je 0x9", "0x1000ad5f"], ["0x1002a251", "push eax", "0x1000ad61"], ["0x1002a252", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000ad62"], ["0x1002a257", "add esp, 4", "0x1000ad67"], ["0x1002a25a", "mov eax, dword ptr [esp + 0xc]", "0x1000ad6a"], ["0x1002a25e", "push eax", "0x1000ad6e"], ["0x1002a25f", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000ad6f"], ["0x1002a264", "add esp, 4", "0x1000ad74"], ["0x1002a267", "dec dword ptr [esi + 8]", "0x1000ad77"]]}, {"orig": [["0x1002a26a", "cmp dword ptr [esp + 0x14], edi"]], "recomp": [["0x1000ad7a", "cmp edi, dword ptr [esp + 0x14]"]]}, {"both": [["0x1002a26e", "jne -0x47", "0x1000ad7e"], ["0x1002a270", "mov eax, dword ptr [esi + 4]", "0x1000ad80"], ["0x1002a273", "push eax", "0x1000ad83"], ["0x1002a274", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000ad84"], ["0x1002a279", "mov dword ptr [esi + 4], 0", "0x1000ad89"], ["0x1002a280", "add esp, 4", "0x1000ad90"], ["0x1002a283", "mov dword ptr [esi + 8], 0", "0x1000ad93"], ["0x1002a28a", "pop edi", "0x1000ad9a"], ["0x1002a28b", "pop esi", "0x1000ad9b"], ["0x1002a28c", "pop ebx", "0x1000ad9c"]]}]]]}, {"address": "0x1002a2a0", "recomp": "0x1000ae50", "name": "set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::~set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >", "matching": 1.0, "diff": []}, {"address": "0x1002a2f0", "recomp": "0x1000adb0", "name": "Set<Element100d6b4c,Set100d6b4cComparator>::~Set<Element100d6b4c,Set100d6b4cComparator>", "matching": 1.0, "diff": []}, {"address": "0x1002a340", "recomp": "0x1000ae00", "name": "List<Element100d6b4c>::~List<Element100d6b4c>", "matching": 1.0, "diff": []}, {"address": "0x1002a390", "recomp": "0x1000aea0", "name": "LegoSoundManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1002a3a0", "recomp": "0x1000aeb0", "name": "LegoSoundManager::Tickle", "matching": 1.0, "diff": []}, {"address": "0x1002a410", "recomp": "0x1000af20", "name": "LegoSoundManager::FUN_1002a410", "matching": 0.0, "stub": true}, {"address": "0x1002a500", "recomp": "0x10033450", "name": "LegoExtraActor::LegoExtraActor", "matching": 0.0, "stub": true}, {"address": "0x1002aae0", "recomp": "0x100335d0", "name": "LegoExtraActor::FUN_1002aae0", "matching": 0.0, "stub": true}, {"address": "0x1002b7a0", "recomp": "0x10033690", "name": "LegoExtraActor::ClassName", "matching": 0.0, "diff": [["@@ -0x1002b7a0,1 +0x10033690,2 @@", [{"orig": [["0x1002b7a0", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x10033690", "mov eax, 'LegoExtraActor' (STRING)"], ["0x10033695", "ret "]]}]]]}, {"address": "0x1002b7c0", "recomp": "0x100336b0", "name": "LegoExtraActor::IsA", "matching": 0.9368770764119602, "diff": [["@@ -0x1002b7c0,20 +0x100336b0,10 @@", [{"orig": [["0x1002b7c0", "sub ecx, dword ptr [ecx - 4]"], ["0x1002b7c3", "jmp 0x8"], ["0x1002b7c8", "int3 "], ["0x1002b7c9", "int3 "], ["0x1002b7ca", "int3 "], ["0x1002b7cb", "int3 "], ["0x1002b7cc", "int3 "], ["0x1002b7cd", "int3 "], ["0x1002b7ce", "int3 "], ["0x1002b7cf", "int3 "]], "recomp": []}, {"both": [["0x1002b7d0", "mov edx, dword ptr [esp + 4]", "0x100336b0"], ["0x1002b7d4", "push ebx", "0x100336b4"], ["0x1002b7d5", "push esi", "0x100336b5"], ["0x1002b7d6", "mov eax, edx", "0x100336b6"], ["0x1002b7d8", "mov esi, 'LegoExtraActor' (STRING)", "0x100336b8"], ["0x1002b7dd", "mov bl, byte ptr [eax]", "0x100336bd"], ["0x1002b7df", "cmp bl, byte ptr [esi]", "0x100336bf"], ["0x1002b7e1", "jne 0x1a", "0x100336c1"], ["0x1002b7e3", "or bl, bl", "0x100336c3"], ["0x1002b7e5", "je 0x12", "0x100336c5"]]}]], ["@@ -0x1002b91b,10 +0x100337fb,19 @@", [{"both": [["0x1002b91b", "jne 0xe", "0x100337fb"], ["0x1002b91d", "add edx, 2", "0x100337fd"], ["0x1002b920", "add eax, 2", "0x10033800"], ["0x1002b923", "or cl, cl", "0x10033803"], ["0x1002b925", "jne -0x1c", "0x10033805"], ["0x1002b927", "xor eax, eax", "0x10033807"], ["0x1002b929", "jmp 0x5", "0x10033809"], ["0x1002b92b", "sbb eax, eax", "0x1003380b"], ["0x1002b92d", "sbb eax, -1", "0x1003380d"], ["0x1002b930", "test eax, eax", "0x10033810"]]}, {"orig": [], "recomp": [["0x10033812", "je 0x7"], ["0x10033814", "xor al, al"], ["0x10033816", "pop esi"], ["0x10033817", "pop ebx"], ["0x10033818", "ret 4"], ["0x1003381b", "mov al, 1"], ["0x1003381d", "pop esi"], ["0x1003381e", "pop ebx"], ["0x1003381f", "ret 4"]]}]]]}, {"address": "0x1002c780", "recomp": "0x10006b40", "name": "IsleActor::Create", "matching": 0.0, "stub": true}, {"address": "0x1002c7b0", "recomp": "0x10006b50", "name": "IsleActor::Notify", "matching": 0.0, "stub": true}, {"address": "0x1002c850", "recomp": "0x10008340", "name": "Radio::Radio", "matching": 1.0, "diff": []}, {"address": "0x1002c8e0", "recomp": "0x100083d0", "name": "Radio::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1002c8f0", "recomp": "0x100083e0", "name": "Radio::IsA", "matching": 1.0, "diff": []}, {"address": "0x1002c970", "recomp": "0x10008460", "name": "Radio::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1002c990", "recomp": "0x10008480", "name": "Radio::~Radio", "matching": 1.0, "diff": []}, {"address": "0x1002ca30", "recomp": "0x10008520", "name": "Radio::Notify", "matching": 1.0, "diff": []}, {"address": "0x1002ca70", "recomp": "0x10008560", "name": "Radio::Play", "matching": 1.0, "diff": []}, {"address": "0x1002cb70", "recomp": "0x10008660", "name": "Radio::Stop", "matching": 1.0, "diff": []}, {"address": "0x1002cbc0", "recomp": "0x100086b0", "name": "Radio::HandleClick", "matching": 1.0, "diff": []}, {"address": "0x1002ccc0", "recomp": "0x10008940", "name": "Radio::HandleEndAction", "matching": 1.0, "diff": []}, {"address": "0x1002cdc0", "recomp": "0x10008a40", "name": "Radio::Initialize", "matching": 1.0, "diff": []}, {"address": "0x1002cde0", "recomp": "0x10008a60", "name": "Radio::CreateRadioState", "matching": 0.7647058823529411, "diff": [["@@ -0x1002cde0,17 +0x10008a60,17 @@", [{"both": [["0x1002cde0", "push esi", "0x10008a60"], ["0x1002cde1", "push edi", "0x10008a61"]]}, {"orig": [["0x1002cde2", "mov edi, ecx"]], "recomp": [["0x10008a62", "mov esi, ecx"]]}, {"both": [["0x1002cde4", "call GameState (FUNCTION)", "0x10008a64"], ["0x1002cde9", "mov ecx, eax", "0x10008a69"]]}, {"orig": [["0x1002cdeb", "mov esi, eax"]], "recomp": [["0x10008a6b", "mov edi, eax"]]}, {"both": [["0x1002cded", "push 'RadioState' (STRING)", "0x10008a6d"], ["0x1002cdf2", "call LegoGameState::GetState (FUNCTION)", "0x10008a72"], ["0x1002cdf7", "test eax, eax", "0x10008a77"], ["0x1002cdf9", "jne 0xc", "0x10008a79"], ["0x1002cdfb", "push 'RadioState' (STRING)", "0x10008a7b"]]}, {"orig": [["0x1002ce00", "mov ecx, esi"]], "recomp": [["0x10008a80", "mov ecx, edi"]]}, {"both": [["0x1002ce02", "call LegoGameState::CreateState (FUNCTION)", "0x10008a82"]]}, {"orig": [["0x1002ce07", "mov dword ptr [edi + 8], eax"]], "recomp": []}, {"both": [["0x1002ce0a", "pop edi", "0x10008a87"]]}, {"orig": [], "recomp": [["0x10008a88", "mov dword ptr [esi + 8], eax"]]}, {"both": [["0x1002ce0b", "pop esi", "0x10008a8b"], ["0x1002ce0c", "ret ", "0x10008a8c"]]}]]]}, {"address": "0x1002ce10", "recomp": "0x1002ecc0", "name": "RadioState::RadioState", "matching": 1.0, "diff": []}, {"address": "0x1002cf50", "recomp": "0x1002ef30", "name": "RadioState::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x1002cf60", "recomp": "0x1002ee00", "name": "RadioState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1002cf70", "recomp": "0x1002ee10", "name": "RadioState::IsA", "matching": 1.0, "diff": []}, {"address": "0x1002d020", "recomp": "0x1002eec0", "name": "RadioState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1002d090", "recomp": "0x1002ef40", "name": "RadioState::FUN_1002d090", "matching": 1.0, "diff": []}, {"address": "0x1002d0c0", "recomp": "0x1002ef70", "name": "RadioState::FUN_1002d0c0", "matching": 1.0, "diff": []}, {"address": "0x1002d110", "recomp": "0x10021520", "name": "LegoActor::LegoActor", "matching": 1.0, "diff": []}, {"address": "0x1002d210", "recomp": "0x10021620", "name": "LegoActor::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1002d220", "recomp": "0x10021630", "name": "LegoActor::IsA", "matching": 1.0, "diff": []}, {"address": "0x1002d300", "recomp": "0x10021710", "name": "LegoActor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1002d320", "recomp": "0x10021730", "name": "LegoActor::~LegoActor", "matching": 1.0, "diff": []}, {"address": "0x1002d390", "recomp": "0x100217a0", "name": "LegoActor::ParseAction", "matching": 0.0, "stub": true}, {"address": "0x1002d660", "recomp": "0x100217b0", "name": "LegoActor::GetActorName", "matching": 0.75, "diff": [["@@ -0x1002d660,4 +0x100217b0,4 @@", [{"both": [["0x1002d660", "xor eax, eax", "0x100217b0"], ["0x1002d662", "mov al, byte ptr [esp + 4]", "0x100217b2"]]}, {"orig": [["0x1002d666", "mov eax, dword ptr [eax*4 + 0x100f32d0]"]], "recomp": [["0x100217b6", "mov eax, dword ptr [eax*4 + 0x100b8fb8]"]]}, {"both": [["0x1002d66d", "ret ", "0x100217bd"]]}]]]}, {"address": "0x1002d670", "recomp": "0x100217c0", "name": "LegoActor::SetROI", "matching": 1.0, "diff": []}, {"address": "0x1002d700", "recomp": "0x10033830", "name": "LegoPathActor::LegoPathActor", "matching": 0.0, "stub": true}, {"address": "0x1002d800", "recomp": "0x100339b0", "name": "LegoPathActor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1002d820", "recomp": "0x100339d0", "name": "LegoPathActor::~LegoPathActor", "matching": 0.0, "stub": true}, {"address": "0x1002d8d0", "recomp": "0x10033a20", "name": "LegoPathActor::VTable0x80", "matching": 0.0, "stub": true}, {"address": "0x1002d9c0", "recomp": "0x10033a30", "name": "LegoPathActor::VTable0x88", "matching": 0.0, "stub": true}, {"address": "0x1002de10", "recomp": "0x10033a40", "name": "LegoPathActor::VTable0x84", "matching": 0.0, "stub": true}, {"address": "0x1002e100", "recomp": "0x10033a50", "name": "LegoPathActor::VTable0x8c", "matching": 0.0, "stub": true}, {"address": "0x1002e740", "recomp": "0x10033a60", "name": "LegoPathActor::VTable0x74", "matching": 0.0, "stub": true}, {"address": "0x1002e790", "recomp": "0x10033a70", "name": "LegoPathActor::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x1002e8b0", "recomp": "0x10033a80", "name": "LegoPathActor::VTable0x98", "matching": 0.0, "stub": true}, {"address": "0x1002e8d0", "recomp": "0x10033a90", "name": "LegoPathActor::VTable0x6c", "matching": 0.0, "stub": true}, {"address": "0x1002ebe0", "recomp": "0x10033aa0", "name": "LegoPathActor::VTable0x68", "matching": 0.0, "stub": true}, {"address": "0x1002f020", "recomp": "0x10033ab0", "name": "LegoPathActor::ParseAction", "matching": 0.0, "stub": true}, {"address": "0x1002f1b0", "recomp": "0x10033ac0", "name": "LegoPathActor::VTable0x9c", "matching": 0.0, "stub": true}, {"address": "0x1002f650", "recomp": "0x10033ad0", "name": "LegoPathActor::VTable0xa4", "matching": 0.0, "stub": true}, {"address": "0x1002f700", "recomp": "0x10033ae0", "name": "LegoPathActor::VTable0xa8", "matching": 0.0, "stub": true}, {"address": "0x1002f8b0", "recomp": "0x1000cf50", "name": "LegoBuildingManager::configureLegoBuildingManager", "matching": 1.0, "diff": []}, {"address": "0x1002f8c0", "recomp": "0x1000cf60", "name": "LegoBuildingManager::LegoBuildingManager", "matching": 1.0, "diff": []}, {"address": "0x1002f930", "recomp": "0x1000cfd0", "name": "LegoBuildingManager::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1002f940", "recomp": "0x1000cfe0", "name": "LegoBuildingManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1002f960", "recomp": "0x1000d000", "name": "LegoBuildingManager::~LegoBuildingManager", "matching": 0.0, "stub": true}, {"address": "0x1002f9d0", "recomp": "0x1000d050", "name": "LegoBuildingManager::Init", "matching": 0.0, "stub": true}, {"address": "0x1002fa00", "recomp": "0x1000d060", "name": "LegoBuildingManager::FUN_1002fa00", "matching": 0.0, "stub": true}, {"address": "0x1002fb30", "recomp": "0x1000d070", "name": "LegoBuildingManager::FUN_1002fb30", "matching": 0.0, "stub": true}, {"address": "0x1002fb80", "recomp": "0x1000d080", "name": "LegoBuildingManager::Save", "matching": 0.0, "stub": true}, {"address": "0x1002fc10", "recomp": "0x1000d090", "name": "LegoBuildingManager::Load", "matching": 0.0, "stub": true}, {"address": "0x1002fdb0", "recomp": "0x1000d0a0", "name": "LegoBuildingManager::FUN_1002fdb0", "matching": 0.0, "stub": true}, {"address": "0x1002ff40", "recomp": "0x1000d0b0", "name": "LegoBuildingManager::FUN_1002ff40", "matching": 0.0, "stub": true}, {"address": "0x1002ff90", "recomp": "0x1000d0c0", "name": "LegoBuildingManager::SetCustomizeAnimFile", "matching": 1.0, "diff": []}, {"address": "0x10030220", "recomp": "0x1000d130", "name": "LegoBuildingManager::Tickle", "matching": 0.0, "stub": true}, {"address": "0x10030590", "recomp": "0x1000d140", "name": "LegoBuildingManager::FUN_10030590", "matching": 0.0, "stub": true}, {"address": "0x10030820", "recomp": "0x10043cd0", "name": "Isle::Isle", "matching": 1.0, "diff": []}, {"address": "0x10030900", "recomp": "0x10043ed0", "name": "Isle::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x10030910", "recomp": "0x10043db0", "name": "Isle::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10030920", "recomp": "0x10043dc0", "name": "Isle::IsA", "matching": 1.0, "diff": []}, {"address": "0x10030a30", "recomp": "0x10043ef0", "name": "Isle::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10030a50", "recomp": "0x10043f10", "name": "Isle::~Isle", "matching": 1.0, "diff": []}, {"address": "0x10030b20", "recomp": "0x10043fe0", "name": "Isle::Create", "matching": 1.0, "diff": []}, {"address": "0x10030c10", "recomp": "0x100440d0", "name": "Isle::Notify", "matching": 0.6122448979591837, "diff": [["@@ -0x10030c10,160 +0x100440d0,167 @@", [{"both": [["0x10030c10", "push ebx", "0x100440d0"], ["0x10030c11", "push esi", "0x100440d1"], ["0x10030c12", "push edi", "0x100440d2"]]}, {"orig": [["0x10030c13", "xor ebx, ebx"], ["0x10030c15", "mov edi, ecx"], ["0x10030c17", "mov esi, dword ptr [esp + 0x10]"], ["0x10030c1b", "push esi"]], "recomp": [["0x100440d3", "mov esi, ecx"], ["0x100440d5", "xor edi, edi"], ["0x100440d7", "mov ebx, dword ptr [esp + 0x10]"], ["0x100440db", "push ebx"]]}, {"both": [["0x10030c1c", "call LegoWorld::Notify (FUNCTION)", "0x100440dc"]]}, {"orig": [["0x10030c21", "cmp byte ptr [edi + 0xf6], bl"]], "recomp": [["0x100440e1", "cmp byte ptr [esi + 0xf6], 0"]]}, {"both": [["0x10030c27", "je 0x118", "0x100440e8"]]}, {"orig": [["0x10030c2d", "mov ecx, dword ptr [esi + 4]"]], "recomp": [["0x100440ee", "mov ecx, dword ptr [ebx + 4]"]]}, {"both": [["0x10030c30", "sub ecx, 2", "0x100440f1"], ["0x10030c33", "cmp ecx, 0x16", "0x100440f4"], ["0x10030c36", "ja 0x109", "0x100440f7"], ["0x10030c3c", "xor eax, eax", "0x100440fd"]]}, {"orig": [["0x10030c3e", "mov al, byte ptr [ecx + 0x10030d70]"], ["0x10030c44", "jmp dword ptr [eax*4 + 0x10030d50]"], ["0x10030c4b", "push esi"], ["0x10030c4c", "mov ecx, edi"]], "recomp": [["0x100440ff", "mov al, byte ptr [ecx + 0x10044230]"], ["0x10044105", "jmp dword ptr [eax*4 + 0x10044210]"], ["0x1004410c", "push ebx"], ["0x1004410d", "mov ecx, esi"]]}, {"both": [["0x10030c4e", "call Isle::HandleEndAction (FUNCTION)", "0x1004410f"]]}, {"orig": [["0x10030c53", "mov ebx, eax"]], "recomp": [["0x10044114", "mov edi, eax"], ["0x10044116", "mov eax, edi"]]}, {"both": [["0x10030c55", "pop edi", "0x10044118"]]}, {"orig": [["0x10030c56", "mov eax, ebx"]], "recomp": []}, {"both": [["0x10030c58", "pop esi", "0x10044119"], ["0x10030c59", "pop ebx", "0x1004411a"], ["0x10030c5a", "ret 4", "0x1004411b"]]}, {"orig": [["0x10030c5d", "mov eax, dword ptr [edi + 0xf8]"]], "recomp": [["0x1004411e", "mov eax, dword ptr [esi + 0xf8]"]]}, {"both": [["0x10030c63", "mov eax, dword ptr [eax + 0x18]", "0x10044124"], ["0x10030c66", "cmp eax, 3", "0x10044127"], ["0x10030c69", "je 0xd", "0x1004412a"], ["0x10030c6b", "cmp eax, 0xa", "0x1004412c"], ["0x10030c6e", "je 0x1e", "0x1004412f"]]}, {"orig": [["0x10030c70", "mov eax, ebx"]], "recomp": [["0x10044131", "mov eax, edi"]]}, {"both": [["0x10030c72", "pop edi", "0x10044133"], ["0x10030c73", "pop esi", "0x10044134"], ["0x10030c74", "pop ebx", "0x10044135"], ["0x10030c75", "ret 4", "0x10044136"]]}, {"orig": [["0x10030c78", "mov ecx, dword ptr [edi + 0xfc]"], ["0x10030c7e", "push esi"]], "recomp": [["0x10044139", "mov ecx, dword ptr [esi + 0xfc]"], ["0x1004413f", "push ebx"]]}, {"both": [["0x10030c7f", "mov eax, dword ptr [ecx]", "0x10044140"], ["0x10030c81", "call dword ptr [eax + 4]", "0x10044142"]]}, {"orig": [["0x10030c84", "mov ebx, eax"]], "recomp": [["0x10044145", "mov edi, eax"], ["0x10044147", "mov eax, edi"]]}, {"both": [["0x10030c86", "pop edi", "0x10044149"]]}, {"orig": [["0x10030c87", "mov eax, ebx"]], "recomp": []}, {"both": [["0x10030c89", "pop esi", "0x1004414a"], ["0x10030c8a", "pop ebx", "0x1004414b"], ["0x10030c8b", "ret 4", "0x1004414c"]]}, {"orig": [["0x10030c8e", "mov ecx, dword ptr [edi + 0x108]"], ["0x10030c94", "push esi"]], "recomp": [["0x1004414f", "mov ecx, dword ptr [esi + 0x108]"], ["0x10044155", "push ebx"]]}, {"both": [["0x10030c95", "mov eax, dword ptr [ecx]", "0x10044156"], ["0x10030c97", "call dword ptr [eax + 4]", "0x10044158"]]}, {"orig": [["0x10030c9a", "mov ebx, eax"]], "recomp": [["0x1004415b", "mov edi, eax"], ["0x1004415d", "mov eax, edi"]]}, {"both": [["0x10030c9c", "pop edi", "0x1004415f"]]}, {"orig": [["0x10030c9d", "mov eax, ebx"]], "recomp": []}, {"both": [["0x10030c9f", "pop esi", "0x10044160"], ["0x10030ca0", "pop ebx", "0x10044161"], ["0x10030ca1", "ret 4", "0x10044162"]]}, {"orig": [["0x10030ca4", "push esi"], ["0x10030ca5", "mov ecx, edi"]], "recomp": [["0x10044165", "push ebx"], ["0x10044166", "mov ecx, esi"]]}, {"both": [["0x10030ca7", "call Isle::HandleClick (FUNCTION)", "0x10044168"]]}, {"orig": [["0x10030cac", "mov ebx, eax"]], "recomp": [["0x1004416d", "mov edi, eax"], ["0x1004416f", "mov eax, edi"]]}, {"both": [["0x10030cae", "pop edi", "0x10044171"]]}, {"orig": [["0x10030caf", "mov eax, ebx"]], "recomp": []}, {"both": [["0x10030cb1", "pop esi", "0x10044172"], ["0x10030cb2", "pop ebx", "0x10044173"], ["0x10030cb3", "ret 4", "0x10044174"]]}, {"orig": [["0x10030cb6", "mov eax, dword ptr [edi + 0xf8]"]], "recomp": [["0x10044177", "mov eax, dword ptr [esi + 0xf8]"]]}, {"both": [["0x10030cbc", "mov eax, dword ptr [eax + 0x18]", "0x1004417d"], ["0x10030cbf", "cmp eax, 4", "0x10044180"], ["0x10030cc2", "je 0x12", "0x10044183"], ["0x10030cc4", "cmp eax, 8", "0x10044185"], ["0x10030cc7", "je 0x24", "0x10044188"], ["0x10030cc9", "cmp eax, 0xa", "0x1004418a"], ["0x10030ccc", "je 0x35", "0x1004418d"]]}, {"orig": [["0x10030cce", "mov eax, ebx"]], "recomp": [["0x1004418f", "mov eax, edi"]]}, {"both": [["0x10030cd0", "pop edi", "0x10044191"], ["0x10030cd1", "pop esi", "0x10044192"], ["0x10030cd2", "pop ebx", "0x10044193"], ["0x10030cd3", "ret 4", "0x10044194"], ["0x10030cd6", "call CurrentActor (FUNCTION)", "0x10044197"]]}, {"orig": [["0x10030cdb", "push esi"]], "recomp": [["0x1004419c", "push ebx"]]}, {"both": [["0x10030cdc", "mov edx, dword ptr [eax]", "0x1004419d"], ["0x10030cde", "mov ecx, eax", "0x1004419f"], ["0x10030ce0", "call dword ptr [edx + 4]", "0x100441a1"]]}, {"orig": [["0x10030ce3", "mov ebx, eax"]], "recomp": [["0x100441a4", "mov edi, eax"], ["0x100441a6", "mov eax, edi"]]}, {"both": [["0x10030ce5", "pop edi", "0x100441a8"]]}, {"orig": [["0x10030ce6", "mov eax, ebx"]], "recomp": []}, {"both": [["0x10030ce8", "pop esi", "0x100441a9"], ["0x10030ce9", "pop ebx", "0x100441aa"], ["0x10030cea", "ret 4", "0x100441ab"]]}, {"orig": [["0x10030ced", "mov ecx, dword ptr [edi + 0x104]"], ["0x10030cf3", "push esi"]], "recomp": [["0x100441ae", "mov ecx, dword ptr [esi + 0x104]"], ["0x100441b4", "push ebx"]]}, {"both": [["0x10030cf4", "mov eax, dword ptr [ecx]", "0x100441b5"], ["0x10030cf6", "call dword ptr [eax + 4]", "0x100441b7"]]}, {"orig": [["0x10030cf9", "mov ebx, eax"]], "recomp": [["0x100441ba", "mov edi, eax"], ["0x100441bc", "mov eax, edi"]]}, {"both": [["0x10030cfb", "pop edi", "0x100441be"]]}, {"orig": [["0x10030cfc", "mov eax, ebx"]], "recomp": []}, {"both": [["0x10030cfe", "pop esi", "0x100441bf"], ["0x10030cff", "pop ebx", "0x100441c0"], ["0x10030d00", "ret 4", "0x100441c1"]]}, {"orig": [["0x10030d03", "mov ecx, dword ptr [edi + 0x108]"], ["0x10030d09", "push esi"]], "recomp": [["0x100441c4", "mov ecx, dword ptr [esi + 0x108]"], ["0x100441ca", "push ebx"]]}, {"both": [["0x10030d0a", "mov eax, dword ptr [ecx]", "0x100441cb"], ["0x10030d0c", "call dword ptr [eax + 4]", "0x100441cd"]]}, {"orig": [["0x10030d0f", "mov ebx, eax"]], "recomp": [["0x100441d0", "mov edi, eax"], ["0x100441d2", "mov eax, edi"]]}, {"both": [["0x10030d11", "pop edi", "0x100441d4"]]}, {"orig": [["0x10030d12", "mov eax, ebx"]], "recomp": []}, {"both": [["0x10030d14", "pop esi", "0x100441d5"], ["0x10030d15", "pop ebx", "0x100441d6"], ["0x10030d16", "ret 4", "0x100441d7"]]}, {"orig": [["0x10030d19", "push esi"], ["0x10030d1a", "mov ecx, edi"]], "recomp": [["0x100441da", "push ebx"], ["0x100441db", "mov ecx, esi"]]}, {"both": [["0x10030d1c", "call Isle::HandleType19Notification (FUNCTION)", "0x100441dd"]]}, {"orig": [["0x10030d21", "mov ebx, eax"]], "recomp": [["0x100441e2", "mov edi, eax"], ["0x100441e4", "mov eax, edi"]]}, {"both": [["0x10030d23", "pop edi", "0x100441e6"]]}, {"orig": [["0x10030d24", "mov eax, ebx"]], "recomp": []}, {"both": [["0x10030d26", "pop esi", "0x100441e7"], ["0x10030d27", "pop ebx", "0x100441e8"], ["0x10030d28", "ret 4", "0x100441e9"], ["0x10030d2b", "push 1", "0x100441ec"]]}, {"orig": [["0x10030d2d", "mov eax, dword ptr [edi]"], ["0x10030d2f", "mov ecx, edi"]], "recomp": [["0x100441ee", "mov eax, dword ptr [esi]"], ["0x100441f0", "mov ecx, esi"]]}, {"both": [["0x10030d31", "call dword ptr [eax + 0x68]", "0x100441f2"]]}, {"orig": [["0x10030d34", "mov eax, ebx"]], "recomp": [["0x100441f5", "mov eax, edi"]]}, {"both": [["0x10030d36", "pop edi", "0x100441f7"], ["0x10030d37", "pop esi", "0x100441f8"], ["0x10030d38", "pop ebx", "0x100441f9"], ["0x10030d39", "ret 4", "0x100441fa"]]}, {"orig": [["0x10030d3c", "mov ecx, edi"]], "recomp": [["0x100441fd", "mov ecx, esi"]]}, {"both": [["0x10030d3e", "call Isle::HandleTransitionEnd (FUNCTION)", "0x100441ff"]]}, {"orig": [["0x10030d43", "mov ebx, eax"], ["0x10030d45", "mov eax, ebx"]], "recomp": [["0x10044204", "mov edi, eax"], ["0x10044206", "mov eax, edi"]]}, {"both": [["0x10030d47", "pop edi", "0x10044208"], ["0x10030d48", "pop esi", "0x10044209"], ["0x10030d49", "pop ebx", "0x1004420a"], ["0x10030d4a", "ret 4", "0x1004420b"]]}, {"orig": [["0x10030d4d", "lea ecx, [ecx]"], ["0x10030d50", "dec ebx"], ["0x10030d51", "or al, 3"], ["0x10030d53", "adc byte ptr [ebp + 0xc], bl"], ["0x10030d56", "add edx, dword ptr [eax]"], ["0x10030d58", "movsb byte ptr es:[edi], byte ptr [esi]"], ["0x10030d59", "or al, 3"], ["0x10030d5b", "adc byte ptr [esi + 0x1910030c], dh"], ["0x10030d61", "or eax, 0xd2b1003"], ["0x10030d66", "add edx, dword ptr [eax]"], ["0x10030d68", "cmp al, 0xd"], ["0x10030d6a", "add edx, dword ptr [eax]"], ["0x10030d6c", "inc ebp"], ["0x10030d6d", "or eax, 0x7001003"]], "recomp": [["0x1004420e", "mov edi, edi"], ["0x10044210", "or al, 0x41"], ["0x10044212", "add al, 0x10"], ["0x10044214", "push ds"], ["0x10044215", "inc ecx"], ["0x10044216", "add al, 0x10"], ["0x10044218", "inc ecx"], ["0x1004421a", "add al, 0x10"], ["0x1004421c", "ja 0x41"], ["0x1004421e", "add al, 0x10"], ["0x10044220", "fiadd dword ptr [ecx + 4]"], ["0x10044223", "adc ah, ch"], ["0x10044225", "inc ecx"], ["0x10044226", "add al, 0x10"], ["0x10044228", "std "], ["0x10044229", "inc ecx"], ["0x1004422a", "add al, 0x10"], ["0x1004422c", "push es"], ["0x1004422d", "inc edx"], ["0x1004422e", "add al, 0x10"], ["0x10044230", "add byte ptr [edi], al"]]}, {"both": [["0x10030d72", "pop es", "0x10044232"], ["0x10030d73", "pop es", "0x10044233"], ["0x10030d74", "pop es", "0x10044234"], ["0x10030d75", "pop es", "0x10044235"], ["0x10030d76", "add dword ptr [ecx], eax", "0x10044236"], ["0x10030d78", "pop es", "0x10044238"], ["0x10030d79", "pop es", "0x10044239"], ["0x10030d7a", "pop es", "0x1004423a"], ["0x10030d7b", "pop es", "0x1004423b"], ["0x10030d7c", "pop es", "0x1004423c"]]}]]]}, {"address": "0x10030d90", "recomp": "0x10044250", "name": "Isle::HandleEndAction", "matching": 0.852589641434263, "diff": [["@@ -0x10030d90,71 +0x10044250,71 @@", [{"both": [["0x10030d90", "push ebx", "0x10044250"], ["0x10030d91", "push esi", "0x10044251"], ["0x10030d92", "push edi", "0x10044252"], ["0x10030d93", "mov eax, dword ptr [ecx + 0xf8]", "0x10044253"], ["0x10030d99", "mov edi, ecx", "0x10044259"], ["0x10030d9b", "mov eax, dword ptr [eax + 0x18]", "0x1004425b"], ["0x10030d9e", "sub eax, 2", "0x1004425e"], ["0x10030da1", "cmp eax, 8", "0x10044261"], ["0x10030da4", "ja 0xf", "0x10044264"], ["0x10030da6", "xor ecx, ecx", "0x10044266"]]}, {"orig": [["0x10030da8", "mov cl, byte ptr [eax + 0x10030ee4]"], ["0x10030dae", "jmp dword ptr [ecx*4 + 0x10030ed0]"]], "recomp": [["0x10044268", "mov cl, byte ptr [eax + 0x100443a4]"], ["0x1004426e", "jmp dword ptr [ecx*4 + 0x10044390]"]]}, {"both": [["0x10030db5", "lea ecx, [edi + 0x12c]", "0x10044275"], ["0x10030dbb", "mov ebx, dword ptr [esp + 0x10]", "0x1004427b"], ["0x10030dbf", "push ebx", "0x1004427f"], ["0x10030dc0", "mov eax, dword ptr [ecx]", "0x10044280"], ["0x10030dc2", "call dword ptr [eax + 4]", "0x10044282"], ["0x10030dc5", "mov esi, eax", "0x10044285"], ["0x10030dc7", "test esi, esi", "0x10044287"], ["0x10030dc9", "jne 0xf7", "0x10044289"], ["0x10030dcf", "mov ecx, dword ptr [ebx + 0xc]", "0x1004428f"], ["0x10030dd2", "mov eax, dword ptr [g_jukeboxScript (DATA)]", "0x10044292"], ["0x10030dd7", "mov edx, dword ptr [eax]", "0x10044297"], ["0x10030dd9", "cmp dword ptr [ecx + 0x20], edx", "0x10044299"], ["0x10030ddc", "jne 0x2e", "0x1004429c"], ["0x10030dde", "mov eax, dword ptr [ecx + 0x1c]", "0x1004429e"], ["0x10030de1", "cmp eax, 0x37", "0x100442a1"]]}, {"orig": [["0x10030de4", "jl 0xdc"]], "recomp": [["0x100442a4", "jb 0xdc"]]}, {"both": [["0x10030dea", "cmp eax, 0x3c", "0x100442aa"]]}, {"orig": [["0x10030ded", "jg 0xd3"]], "recomp": [["0x100442ad", "ja 0xd3"]]}, {"both": [["0x10030df3", "push eax", "0x100442b3"], ["0x10030df4", "mov ecx, dword ptr [edi + 0x10c]", "0x100442b4"], ["0x10030dfa", "mov esi, 1", "0x100442ba"], ["0x10030dff", "call JukeBoxEntity::StopAction (FUNCTION)", "0x100442bf"], ["0x10030e04", "mov eax, esi", "0x100442c4"], ["0x10030e06", "pop edi", "0x100442c6"], ["0x10030e07", "pop esi", "0x100442c7"], ["0x10030e08", "pop ebx", "0x100442c8"], ["0x10030e09", "ret 4", "0x100442c9"], ["0x10030e0c", "mov eax, dword ptr [edi + 0xf8]", "0x100442cc"], ["0x10030e12", "add eax, 0x20", "0x100442d2"], ["0x10030e15", "cmp byte ptr [eax], 0", "0x100442d5"], ["0x10030e18", "je 0x26", "0x100442d8"], ["0x10030e1a", "mov ecx, dword ptr [ecx + 0x1c]", "0x100442da"], ["0x10030e1d", "cmp ecx, 0x2c5", "0x100442dd"]]}, {"orig": [["0x10030e23", "jl 0x9d"]], "recomp": [["0x100442e3", "jb 0x9d"]]}, {"both": [["0x10030e29", "cmp ecx, 0x2c7", "0x100442e9"]]}, {"orig": [["0x10030e2f", "jg 0x91"]], "recomp": [["0x100442ef", "ja 0x91"]]}, {"both": [["0x10030e35", "pop edi", "0x100442f5"], ["0x10030e36", "mov byte ptr [eax], 0", "0x100442f6"], ["0x10030e39", "mov eax, esi", "0x100442f9"], ["0x10030e3b", "pop esi", "0x100442fb"], ["0x10030e3c", "pop ebx", "0x100442fc"], ["0x10030e3d", "ret 4", "0x100442fd"], ["0x10030e40", "mov eax, dword ptr [ecx + 0x1c]", "0x10044300"], ["0x10030e43", "cmp eax, 0x3a7", "0x10044303"], ["0x10030e48", "je 0xe", "0x10044308"], ["0x10030e4a", "cmp eax, 0x3b4", "0x1004430a"]]}, {"orig": [["0x10030e4f", "jl 0x75"]], "recomp": [["0x1004430f", "jb 0x75"]]}, {"both": [["0x10030e51", "cmp eax, 0x3bb", "0x10044311"]]}, {"orig": [["0x10030e56", "jg 0x6e"]], "recomp": [["0x10044316", "ja 0x6e"]]}, {"both": [["0x10030e58", "call BackgroundAudioManager (FUNCTION)", "0x10044318"], ["0x10030e5d", "mov ecx, eax", "0x1004431d"], ["0x10030e5f", "call MxBackgroundAudioManager::RaiseVolume (FUNCTION)", "0x1004431f"], ["0x10030e64", "mov eax, esi", "0x10044324"], ["0x10030e66", "pop edi", "0x10044326"], ["0x10030e67", "pop esi", "0x10044327"], ["0x10030e68", "pop ebx", "0x10044328"], ["0x10030e69", "ret 4", "0x10044329"], ["0x10030e6c", "mov ecx, edi", "0x1004432c"], ["0x10030e6e", "mov esi, 1", "0x1004432e"]]}]], ["@@ -0x10030ebe,23 +0x1004437e,26 @@", [{"both": [["0x10030ebe", "push ebx", "0x1004437e"], ["0x10030ebf", "mov eax, dword ptr [ecx]", "0x1004437f"], ["0x10030ec1", "call dword ptr [eax + 4]", "0x10044381"], ["0x10030ec4", "mov esi, eax", "0x10044384"], ["0x10030ec6", "mov eax, esi", "0x10044386"], ["0x10030ec8", "pop edi", "0x10044388"], ["0x10030ec9", "pop esi", "0x10044389"], ["0x10030eca", "pop ebx", "0x1004438a"], ["0x10030ecb", "ret 4", "0x1004438b"], ["0x10030ece", "mov edi, edi", "0x1004438e"]]}, {"orig": [["0x10030ed0", "insb byte ptr es:[edi], dx"], ["0x10030ed1", "push cs"], ["0x10030ed2", "add edx, dword ptr [eax]"], ["0x10030ed4", "or byte ptr [esi], 3"], ["0x10030ed7", "adc byte ptr [edx - 0x4beffcf2], bl"], ["0x10030edd", "push cs"], ["0x10030ede", "add edx, dword ptr [eax]"], ["0x10030ee0", "mov ch, 0xd"], ["0x10030ee2", "add edx, dword ptr [eax]"]], "recomp": [["0x10044390", "sub al, 0x43"], ["0x10044392", "add al, 0x10"], ["0x10044394", "inc eax"], ["0x10044395", "inc ebx"], ["0x10044396", "add al, 0x10"], ["0x10044398", "pop edx"], ["0x10044399", "inc ebx"], ["0x1004439a", "add al, 0x10"], ["0x1004439c", "je 0x43"], ["0x1004439e", "add al, 0x10"], ["0x100443a0", "jne 0x42"], ["0x100443a2", "add al, 0x10"]]}, {"both": [["0x10030ee4", "add byte ptr [ecx], al", "0x100443a4"], ["0x10030ee6", "add al, 4", "0x100443a6"], ["0x10030ee8", "add al, 4", "0x100443a8"], ["0x10030eea", "add al, byte ptr [ebx + eax]", "0x100443aa"]]}]]]}, {"address": "0x10030ef0", "recomp": "0x100443b0", "name": "Isle::HandleElevatorEndAction", "matching": 1.0, "diff": []}, {"address": "0x10030fc0", "recomp": "0x10044480", "name": "Isle::ReadyWorld", "matching": 1.0, "diff": []}, {"address": "0x10031030", "recomp": "0x100444f0", "name": "Isle::HandleClick", "matching": 0.868766404199475, "diff": [["@@ -0x10031055,22 +0x10044515,22 @@", [{"both": [["0x10031055", "cmp word ptr [edi + 0x28], 1", "0x10044515"], ["0x1003105a", "jne 0x24f", "0x1004451a"], ["0x10031060", "lea ecx, [ebp - 0xa4]", "0x10044520"], ["0x10031066", "call MxDSAction::MxDSAction (FUNCTION)", "0x10044526"], ["0x1003106b", "mov dword ptr [ebp - 4], 0", "0x1004452b"], ["0x10031072", "mov eax, dword ptr [edi + 0x20]", "0x10044532"], ["0x10031075", "sub eax, 0x41c", "0x10044535"], ["0x1003107a", "cmp eax, 0x70", "0x1004453a"], ["0x1003107d", "ja 0x220", "0x1004453d"], ["0x10031083", "xor ecx, ecx", "0x10044543"]]}, {"orig": [["0x10031085", "mov cl, byte ptr [eax + 0x10031510]"], ["0x1003108b", "jmp dword ptr [ecx*4 + 0x100314a8]"]], "recomp": [["0x10044545", "mov cl, byte ptr [eax + 0x100449d0]"], ["0x1004454b", "jmp dword ptr [ecx*4 + 0x10044968]"]]}, {"both": [["0x10031092", "mov eax, dword ptr [esi + 0xf8]", "0x10044552"], ["0x10031098", "mov dword ptr [eax + 0x18], 2", "0x10044558"], ["0x1003109f", "mov eax, dword ptr [esi + 0xf8]", "0x1004455f"], ["0x100310a5", "movsx eax, word ptr [eax + 0x1c]", "0x10044565"], ["0x100310a9", "cmp eax, 1", "0x10044569"], ["0x100310ac", "je 0xc", "0x1004456c"], ["0x100310ae", "cmp eax, 2", "0x1004456e"], ["0x100310b1", "je 0x27", "0x10044571"], ["0x100310b3", "cmp eax, 3", "0x10044573"], ["0x100310b6", "je 0x2b", "0x10044576"]]}]], ["@@ -0x10031476,64 +0x10044936,74 @@", [{"both": [["0x10031476", "mov ecx, eax", "0x10044936"], ["0x10031478", "call MxVariableTable::SetVariable (FUNCTION)", "0x10044938"], ["0x1003147d", "jmp -0x1f3", "0x1004493d"], ["0x10031482", "mov dword ptr [esi + 0x13c], 0x1c", "0x10044942"], ["0x1003148c", "jmp -0x202", "0x1004494c"], ["0x10031491", "mov eax, <OFFSET27>", "0x10044951"], ["0x10031496", "jmp ___CxxFrameHandler (FUNCTION)", "0x10044956"], ["0x1003149b", "lea ecx, [ebp - 0xa4]", "0x1004495b"], ["0x100314a1", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x10044961"], ["0x100314a6", "mov edi, edi", "0x10044966"]]}, {"orig": [], "recomp": [["0x10044968", "push edx"], ["0x10044969", "inc ebp"], ["0x1004496a", "add al, 0x10"], ["0x1004496c", "fiadd word ptr [ebp + 4]"], ["0x1004496f", "adc byte ptr [edx + 0x46], ch"], ["0x10044972", "add al, 0x10"], ["0x10044974", "pop ss"], ["0x10044975", "inc edi"], ["0x10044976", "add al, 0x10"], ["0x10044978", "and eax, dword ptr [edi + 4]"], ["0x1004497b", "adc byte ptr [edi], ch"], ["0x1004497d", "inc edi"], ["0x1004497e", "add al, 0x10"], ["0x10044980", "add dword ptr [edi + 4], 0x10"], ["0x10044984", "movsd dword ptr es:[edi], dword ptr [esi]"], ["0x10044985", "inc edi"], ["0x10044986", "add al, 0x10"], ["0x10044988", "push es"], ["0x10044989", "dec eax"], ["0x1004498a", "add al, 0x10"], ["0x1004498c", "sbb cl, byte ptr [eax + 4]"], ["0x1004498f", "adc byte ptr [esi], ch"], ["0x10044991", "dec eax"], ["0x10044992", "add al, 0x10"], ["0x10044994", "inc eax"], ["0x10044995", "dec eax"], ["0x10044996", "add al, 0x10"]]}, {"both": [["0x100314a8", "xchg edx, eax", "0x10044998"]]}, {"orig": [["0x100314a9", "adc byte ptr [ebx], al"], ["0x100314ab", "adc byte ptr [esi], bl"], ["0x100314ad", "adc dword ptr [ebx], eax"], ["0x100314af", "adc byte ptr [edx + 0x57100311], ch"], ["0x100314b5", "adc al, byte ptr [ebx]"], ["0x100314b7", "adc byte ptr [ebx + 0x12], ah"], ["0x100314ba", "add edx, dword ptr [eax]"], ["0x100314bc", "outsd dx, dword ptr [esi]"], ["0x100314bd", "adc al, byte ptr [ebx]"], ["0x100314bf", "adc bl, al"], ["0x100314c1", "adc al, byte ptr [ebx]"], ["0x100314c3", "adc ch, ah"], ["0x100314c5", "adc al, byte ptr [ebx]"], ["0x100314c7", "adc byte ptr [esi + 0x13], al"], ["0x100314ca", "add edx, dword ptr [eax]"], ["0x100314cc", "pop edx"], ["0x100314cd", "adc eax, dword ptr [ebx]"], ["0x100314cf", "adc byte ptr [esi + 0x13], ch"], ["0x100314d2", "add edx, dword ptr [eax]"], ["0x100314d4", "adc byte ptr [ebx], 3"], ["0x100314d7", "adc dl, dl"], ["0x100314d9", "adc eax, dword ptr [ebx]"], ["0x100314db", "adc dh, bl"], ["0x100314dd", "adc eax, dword ptr [ebx]"], ["0x100314df", "adc ah, dh"], ["0x100314e1", "adc eax, dword ptr [ebx]"], ["0x100314e3", "adc byte ptr [edx], cl"], ["0x100314e5", "adc al, 3"], ["0x100314e7", "adc cl, bl"], ["0x100314e9", "adc al, byte ptr [ebx]"], ["0x100314eb", "adc byte ptr [ebp + 0x63100312], al"], ["0x100314f1", "adc al, byte ptr [ebx]"], ["0x100314f3", "adc byte ptr [edi + 0x12], dl"], ["0x100314f6", "add edx, dword ptr [eax]"], ["0x100314f8", "sbb dl, byte ptr [ebx + eax]"], ["0x100314fb", "adc byte ptr [ecx], ch"], ["0x100314fd", "adc al, 3"], ["0x100314ff", "adc byte ptr [esi + 0x14], cl"], ["0x10031502", "add edx, dword ptr [eax]"], ["0x10031504", "pop ebp"], ["0x10031505", "adc al, 3"], ["0x10031507", "adc byte ptr [edx - 0x5ceffcec], al"], ["0x1003150d", "adc al, byte ptr [ebx]"]], "recomp": [["0x10044999", "dec eax"], ["0x1004499a", "add al, 0x10"], ["0x1004499c", "sahf "], ["0x1004499d", "dec eax"], ["0x1004499e", "add al, 0x10"], ["0x100449a0", "mov ah, 0x48"], ["0x100449a2", "add al, 0x10"], ["0x100449a4", "retf 0x448"], ["0x100449a7", "adc byte ptr [ecx + 0x45100447], bl"], ["0x100449ad", "inc edi"], ["0x100449ae", "add al, 0x10"], ["0x100449b0", "and eax, dword ptr [edi + 4]"], ["0x100449b3", "adc byte ptr [edi], dl"], ["0x100449b5", "inc edi"], ["0x100449b6", "add al, 0x10"], ["0x100449b8", "fimul dword ptr [eax + 4]"], ["0x100449bb", "adc cl, ch"], ["0x100449bd", "dec eax"], ["0x100449be", "add al, 0x10"], ["0x100449c0", "push cs"], ["0x100449c1", "dec ecx"], ["0x100449c2", "add al, 0x10"], ["0x100449c4", "sbb eax, 0x42100449"], ["0x100449c9", "dec ecx"], ["0x100449ca", "add al, 0x10"], ["0x100449cc", "arpl word ptr [edi + 4], ax"]]}, {"both": [["0x1003150f", "adc byte ptr [eax], al", "0x100449cf"], ["0x10031511", "add dword ptr [edx], eax", "0x100449d1"], ["0x10031513", "sbb dword ptr [ecx], ebx", "0x100449d3"], ["0x10031515", "sbb dword ptr [ecx], ebx", "0x100449d5"], ["0x10031517", "sbb dword ptr [ecx], ebx", "0x100449d7"], ["0x10031519", "sbb dword ptr [ecx], ebx", "0x100449d9"], ["0x1003151b", "sbb dword ptr [ecx], ebx", "0x100449db"], ["0x1003151d", "sbb dword ptr [ecx], ebx", "0x100449dd"], ["0x1003151f", "sbb dword ptr [ecx], ebx", "0x100449df"], ["0x10031521", "sbb dword ptr [ecx], ebx", "0x100449e1"]]}]]]}, {"address": "0x10031590", "recomp": "0x10044a50", "name": "Isle::FUN_10031590", "matching": 0.0, "stub": true}, {"address": "0x100315f0", "recomp": "0x10044a60", "name": "Isle::HandleType19Notification", "matching": 0.0, "stub": true}, {"address": "0x10031820", "recomp": "0x10044a70", "name": "Isle::Enable", "matching": 0.9431995831162063, "diff": [["@@ -0x10031820,62 +0x10044a70,66 @@", [{"both": [["0x10031820", "mov eax, dword ptr fs:[0]", "0x10044a70"], ["0x10031826", "push ebp", "0x10044a76"], ["0x10031827", "mov ebp, esp", "0x10044a77"], ["0x10031829", "push -1", "0x10044a79"], ["0x1003182b", "push <OFFSET1>", "0x10044a7b"], ["0x10031830", "push eax", "0x10044a80"], ["0x10031831", "mov dword ptr fs:[0], esp", "0x10044a81"], ["0x10031838", "sub esp, 0x54", "0x10044a88"], ["0x1003183b", "cmp dword ptr [ecx + 0xdc], 1", "0x10044a8b"]]}, {"orig": [["0x10031842", "sbb al, al"]], "recomp": [["0x10044a92", "sbb eax, eax"]]}, {"both": [["0x10031844", "push ebx", "0x10044a94"], ["0x10031845", "push esi", "0x10044a95"], ["0x10031846", "mov bl, byte ptr [ebp + 8]", "0x10044a96"], ["0x10031849", "push edi", "0x10044a99"], ["0x1003184a", "mov dword ptr [ebp - 0x10], ecx", "0x10044a9a"]]}, {"orig": [["0x1003184d", "neg al"], ["0x1003184f", "cmp al, bl"], ["0x10031851", "je 0xd21"]], "recomp": [["0x10044a9d", "neg eax"], ["0x10044a9f", "xor ecx, ecx"], ["0x10044aa1", "mov cl, bl"], ["0x10044aa3", "cmp eax, ecx"], ["0x10044aa5", "je 0xd25"]]}, {"both": [["0x10031857", "push ebx", "0x10044aab"]]}, {"orig": [], "recomp": [["0x10044aac", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10031858", "call LegoWorld::Enable (FUNCTION)", "0x10044aaf"], ["0x1003185d", "push ebx", "0x10044ab4"], ["0x1003185e", "mov ecx, dword ptr [ebp - 0x10]", "0x10044ab5"], ["0x10031861", "add ecx, 0x12c", "0x10044ab8"], ["0x10031867", "call Radio::Initialize (FUNCTION)", "0x10044abe"], ["0x1003186c", "test bl, bl", "0x10044ac3"]]}, {"orig": [["0x1003186e", "je 0xcdd"]], "recomp": [["0x10044ac5", "je 0xcde"]]}, {"both": [["0x10031874", "mov ecx, dword ptr [ebp - 0x10]", "0x10044acb"], ["0x10031877", "call Isle::FUN_100330e0 (FUNCTION)", "0x10044ace"], ["0x1003187c", "push 0", "0x10044ad3"], ["0x1003187e", "call VideoManager (FUNCTION)", "0x10044ad5"], ["0x10031883", "mov ecx, eax", "0x10044ada"], ["0x10031885", "call LegoVideoManager::ResetPalette (FUNCTION)", "0x10044adc"], ["0x1003188a", "mov ecx, dword ptr [ebp - 0x10]", "0x10044ae1"], ["0x1003188d", "mov ecx, dword ptr [ecx + 0xf8]", "0x10044ae4"], ["0x10031893", "call Act1State::FUN_10034d00 (FUNCTION)", "0x10044aea"], ["0x10031898", "call CurrentActor (FUNCTION)", "0x10044aef"], ["0x1003189d", "test eax, eax", "0x10044af4"]]}, {"orig": [["0x1003189f", "je 0x40"]], "recomp": [["0x10044af6", "je 0x41"]]}, {"both": [["0x100318a1", "call CurrentActor (FUNCTION)", "0x10044af8"], ["0x100318a6", "mov edx, dword ptr [eax]", "0x10044afd"], ["0x100318a8", "mov ecx, eax", "0x10044aff"], ["0x100318aa", "call dword ptr [edx + 0x60]", "0x10044b01"], ["0x100318ad", "test al, al", "0x10044b04"]]}, {"orig": [["0x100318af", "je 0x30"]], "recomp": [["0x10044b06", "je 0x31"]]}, {"both": [["0x100318b1", "call CurrentActor (FUNCTION)", "0x10044b08"], ["0x100318b6", "mov edx, dword ptr [eax]", "0x10044b0d"], ["0x100318b8", "mov ecx, eax", "0x10044b0f"], ["0x100318ba", "call dword ptr [edx + 0x60]", "0x10044b11"], ["0x100318bd", "dec al", "0x10044b14"], ["0x100318bf", "cmp al, 1", "0x10044b16"]]}, {"orig": [["0x100318c1", "mov eax, 0xfb"], ["0x100318c6", "adc eax, -1"]], "recomp": [["0x10044b18", "sbb eax, eax"], ["0x10044b1a", "neg eax"], ["0x10044b1c", "add eax, 0xfa"]]}, {"both": [["0x100318c9", "cmp eax, -1", "0x10044b21"], ["0x100318cc", "je 0x13", "0x10044b24"], ["0x100318ce", "push 0", "0x10044b26"], ["0x100318d0", "push eax", "0x10044b28"], ["0x100318d1", "mov eax, dword ptr [g_isleScript (DATA)]", "0x10044b29"], ["0x100318d6", "push eax", "0x10044b2e"], ["0x100318d7", "push 4", "0x10044b2f"], ["0x100318d9", "call InvokeAction (FUNCTION)", "0x10044b31"], ["0x100318de", "add esp, 0x10", "0x10044b36"], ["0x100318e1", "mov ecx, dword ptr [ebp - 0x10]", "0x10044b39"]]}]], ["@@ -0x100319f9,22 +0x10044c51,22 @@", [{"both": [["0x100319f9", "mov dword ptr [esi + 0xdc], 0", "0x10044c51"], ["0x10031a03", "jmp 0x8", "0x10044c5b"], ["0x10031a05", "mov ecx, dword ptr [ebp - 0x10]", "0x10044c5d"], ["0x10031a08", "call Isle::FUN_10032620 (FUNCTION)", "0x10044c60"], ["0x10031a0d", "call GameState (FUNCTION)", "0x10044c65"], ["0x10031a12", "mov eax, dword ptr [eax + 0x424]", "0x10044c6a"], ["0x10031a18", "sub eax, 6", "0x10044c70"], ["0x10031a1b", "cmp eax, 0x3a", "0x10044c73"], ["0x10031a1e", "ja 0xf", "0x10044c76"], ["0x10031a20", "xor ecx, ecx", "0x10044c78"]]}, {"orig": [["0x10031a22", "mov cl, byte ptr [eax + 0x100325b8]"], ["0x10031a28", "jmp dword ptr [ecx*4 + 0x1003258c]"]], "recomp": [["0x10044c7a", "mov cl, byte ptr [eax + 0x10045810]"], ["0x10044c80", "jmp dword ptr [ecx*4 + 0x100457e4]"]]}, {"both": [["0x10031a2f", "mov ecx, dword ptr [ebp - 0x10]", "0x10044c87"], ["0x10031a32", "mov eax, dword ptr [ecx + 0x98]", "0x10044c8a"], ["0x10031a38", "push eax", "0x10044c90"], ["0x10031a39", "call InputManager (FUNCTION)", "0x10044c91"], ["0x10031a3e", "mov ecx, eax", "0x10044c96"], ["0x10031a40", "call LegoInputManager::SetCamera (FUNCTION)", "0x10044c98"], ["0x10031a45", "push 1", "0x10044c9d"], ["0x10031a47", "call SetIsWorldActive (FUNCTION)", "0x10044c9f"], ["0x10031a4c", "add esp, 4", "0x10044ca4"], ["0x10031a4f", "jmp 0x5b0", "0x10044ca7"]]}]], ["@@ -0x10031ff9,22 +0x10045251,22 @@", [{"both": [["0x10031ff9", "call dword ptr [ebx + 4]", "0x10045251"], ["0x10031ffc", "mov dword ptr [ebp - 4], esi", "0x10045254"], ["0x10031fff", "call <OFFSET43>", "0x10045257"], ["0x10032004", "mov ecx, dword ptr [ebp - 0x10]", "0x1004525c"], ["0x10032007", "mov eax, dword ptr [ecx + 0xf8]", "0x1004525f"], ["0x1003200d", "mov ecx, dword ptr [eax + 0x18]", "0x10045265"], ["0x10032010", "add eax, 0x18", "0x10045268"], ["0x10032013", "cmp ecx, 0xb", "0x1004526b"], ["0x10032016", "ja 0x36c", "0x1004526e"], ["0x1003201c", "xor edx, edx", "0x10045274"]]}, {"orig": [["0x1003201e", "mov dl, byte ptr [ecx + 0x10032610]"], ["0x10032024", "jmp dword ptr [edx*4 + 0x100325f4]"]], "recomp": [["0x10045276", "mov dl, byte ptr [ecx + 0x10045868]"], ["0x1004527c", "jmp dword ptr [edx*4 + 0x1004584c]"]]}, {"both": [["0x1003202b", "mov dword ptr [eax], 0", "0x10045283"], ["0x10032031", "call GameState (FUNCTION)", "0x10045289"], ["0x10032036", "cmp dword ptr [eax + 0x424], 0x16", "0x1004528e"], ["0x1003203d", "jne 0x13", "0x10045295"], ["0x1003203f", "push 0", "0x10045297"], ["0x10032041", "call AnimationManager (FUNCTION)", "0x10045299"], ["0x10032046", "mov ecx, eax", "0x1004529e"], ["0x10032048", "call LegoAnimationManager::FUN_10064740 (FUNCTION)", "0x100452a0"], ["0x1003204d", "jmp 0x336", "0x100452a5"], ["0x10032052", "call GameState (FUNCTION)", "0x100452aa"]]}]], ["@@ -0x1003207f,21 +0x100452d7,21 @@", [{"both": [["0x1003207f", "mov dword ptr [ebp - 0x60], edx", "0x100452d7"], ["0x10032082", "mov eax, dword ptr [ecx]", "0x100452da"], ["0x10032084", "mov dword ptr [esi], eax", "0x100452dc"], ["0x10032086", "lea eax, [ebp - 0x44]", "0x100452de"], ["0x10032089", "mov ebx, dword ptr [ecx + 4]", "0x100452e1"], ["0x1003208c", "mov dword ptr [esi + 4], ebx", "0x100452e4"], ["0x1003208f", "mov ecx, dword ptr [ecx + 8]", "0x100452e7"], ["0x10032092", "mov dword ptr [esi + 8], ecx", "0x100452ea"], ["0x10032095", "mov dword ptr [ebp - 0x48], eax", "0x100452ed"], ["0x10032098", "mov dword ptr [ebp - 0x4c], edx", "0x100452f0"]]}, {"orig": [["0x1003209b", "lea edx, [ebp - 0x60]"]], "recomp": [["0x100452f3", "mov edx, dword ptr [ebp - 0x5c]"]]}, {"both": [["0x1003209e", "lea ecx, [ebp - 0x4c]", "0x100452f6"], ["0x100320a1", "mov dword ptr [ebp - 0x44], 0xc1ab0000", "0x100452f9"], ["0x100320a8", "mov dword ptr [ebp - 0x40], 0", "0x10045300"], ["0x100320af", "mov dword ptr [ebp - 0x3c], 0xc2270000", "0x10045307"], ["0x100320b6", "push edx", "0x1004530e"], ["0x100320b7", "call dword ptr [<OFFSET46>]", "0x1004530f"], ["0x100320bd", "mov ecx, dword ptr [ebp - 0x48]", "0x10045315"], ["0x100320c0", "mov eax, dword ptr [ebp - 0x48]", "0x10045318"], ["0x100320c3", "add ecx, 8", "0x1004531b"], ["0x100320c6", "add eax, 4", "0x1004531e"]]}]], ["@@ -0x100320da,38 +0x10045332,38 @@", [{"both": [["0x100320da", "faddp st(1)", "0x10045332"], ["0x100320dc", "fcomp dword ptr [1024.0 (FLOAT)]", "0x10045334"], ["0x100320e2", "fnstsw ax", "0x1004533a"], ["0x100320e4", "test ah, 1", "0x1004533c"], ["0x100320e7", "je 0xe", "0x1004533f"], ["0x100320e9", "push 0", "0x10045341"], ["0x100320eb", "call AnimationManager (FUNCTION)", "0x10045343"], ["0x100320f0", "mov ecx, eax", "0x10045348"], ["0x100320f2", "call LegoAnimationManager::FUN_10064740 (FUNCTION)", "0x1004534a"], ["0x100320f7", "lea eax, [ebp - 0x1c]", "0x1004534f"]]}, {"orig": [["0x100320fa", "lea ecx, [ebp - 0x60]"]], "recomp": [["0x10045352", "mov ecx, dword ptr [ebp - 0x5c]"]]}, {"both": [["0x100320fd", "push ecx", "0x10045355"], ["0x100320fe", "mov dword ptr [ebp - 0x20], eax", "0x10045356"], ["0x10032101", "mov dword ptr [ebp - 0x24], Mx3DPointFloat::`vftable' (VTABLE)", "0x10045359"], ["0x10032108", "mov dword ptr [ebp - 0x1c], 0x42c5bfff", "0x10045360"], ["0x1003210f", "mov dword ptr [ebp - 0x18], 0", "0x10045367"], ["0x10032116", "mov dword ptr [ebp - 0x14], 0xc238a00b", "0x1004536e"], ["0x1003211d", "lea ecx, [ebp - 0x24]", "0x10045375"], ["0x10032120", "call dword ptr [<OFFSET46>]", "0x10045378"]]}, {"orig": [], "recomp": [["0x1004537e", "mov edx, dword ptr [ebp - 0x20]"]]}, {"both": [["0x10032126", "mov ecx, dword ptr [ebp - 0x20]", "0x10045381"]]}, {"orig": [], "recomp": [["0x10045384", "add edx, 4"], ["0x10045387", "add ecx, 8"]]}, {"both": [["0x10032129", "mov eax, dword ptr [ebp - 0x20]", "0x1004538a"]]}, {"orig": [["0x1003212c", "add ecx, 4"], ["0x1003212f", "add eax, 8"], ["0x10032132", "fld dword ptr [ecx]"], ["0x10032134", "fmul dword ptr [ecx]"]], "recomp": []}, {"both": [["0x10032136", "fld dword ptr [eax]", "0x1004538d"], ["0x10032138", "fmul dword ptr [eax]", "0x1004538f"]]}, {"orig": [["0x1003213a", "mov ecx, dword ptr [ebp - 0x20]"]], "recomp": [["0x10045391", "fld dword ptr [edx]"], ["0x10045393", "fmul dword ptr [edx]"]]}, {"both": [["0x1003213d", "faddp st(1)", "0x10045395"], ["0x1003213f", "fld dword ptr [ecx]", "0x10045397"], ["0x10032141", "fmul dword ptr [ecx]", "0x10045399"], ["0x10032143", "faddp st(1)", "0x1004539b"], ["0x10032145", "fcomp dword ptr [1024.0 (FLOAT)]", "0x1004539d"], ["0x1003214b", "fnstsw ax", "0x100453a3"], ["0x1003214d", "test ah, 1", "0x100453a5"], ["0x10032150", "je 0x232", "0x100453a8"], ["0x10032156", "push 0", "0x100453ae"], ["0x10032158", "call AnimationManager (FUNCTION)", "0x100453b0"]]}]], ["@@ -0x10032573,36 +0x100457cb,41 @@", [{"both": [["0x10032573", "call Act1State::FUN_10034b60 (FUNCTION)", "0x100457cb"], ["0x10032578", "mov eax, dword ptr [ebp - 0xc]", "0x100457d0"], ["0x1003257b", "pop edi", "0x100457d3"], ["0x1003257c", "mov dword ptr fs:[0], eax", "0x100457d4"], ["0x10032582", "pop esi", "0x100457da"], ["0x10032583", "pop ebx", "0x100457db"], ["0x10032584", "mov esp, ebp", "0x100457dc"], ["0x10032586", "pop ebp", "0x100457de"], ["0x10032587", "ret 4", "0x100457df"], ["0x1003258a", "mov edi, edi", "0x100457e2"]]}, {"orig": [["0x1003258c", "push esp"], ["0x1003258d", "sbb al, byte ptr [ebx]"], ["0x1003258f", "adc bl, cl"], ["0x10032591", "sbb al, byte ptr [ebx]"], ["0x10032593", "adc byte ptr [esi + 0x510031b], cl"], ["0x10032599", "sbb al, 3"], ["0x1003259b", "adc byte ptr [esp + ebx + 3], bh"], ["0x1003259f", "adc byte ptr [<OFFSET69>], dl"], ["0x100325a5", "sbb eax, 0x1e4d1003"], ["0x100325aa", "add edx, dword ptr [eax]"], ["0x100325ac", "jmp 0x8510031e"], ["0x100325b1", "pop ds"], ["0x100325b2", "add edx, dword ptr [eax]"], ["0x100325b4", "das "], ["0x100325b5", "sbb al, byte ptr [ebx]"], ["0x100325b7", "adc byte ptr [eax], al"]], "recomp": [["0x100457e4", "lodsb al, byte ptr [esi]"], ["0x100457e5", "dec esp"], ["0x100457e6", "add al, 0x10"], ["0x100457e8", "and ecx, dword ptr [ebp + 4]"], ["0x100457eb", "adc dh, ah"], ["0x100457ed", "dec ebp"], ["0x100457ee", "add al, 0x10"], ["0x100457f0", "pop ebp"], ["0x100457f1", "dec esi"], ["0x100457f2", "add al, 0x10"], ["0x100457f4", "aam 0x4e"], ["0x100457f6", "add al, 0x10"], ["0x100457f8", "insd dword ptr es:[edi], dx"], ["0x100457f9", "dec edi"], ["0x100457fa", "add al, 0x10"], ["0x100457fc", "or dword ptr [eax + 4], edx"], ["0x100457ff", "adc byte ptr [ebp + 0x41100450], ah"], ["0x10045805", "push ecx"], ["0x10045806", "add al, 0x10"], ["0x10045808", "fst qword ptr [ecx + 4]"], ["0x1004580b", "adc byte ptr [edi + 0x10044c], al"]]}, {"both": [["0x100325b9", "or cl, byte ptr [edx]", "0x10045811"], ["0x100325bb", "or cl, byte ptr [edx]", "0x10045813"], ["0x100325bd", "or cl, byte ptr [edx]", "0x10045815"], ["0x100325bf", "or cl, byte ptr [edx]", "0x10045817"], ["0x100325c1", "add dword ptr [edx], ecx", "0x10045819"], ["0x100325c3", "or cl, byte ptr [edx]", "0x1004581b"], ["0x100325c5", "or cl, byte ptr [edx]", "0x1004581d"], ["0x100325c7", "or cl, byte ptr [edx]", "0x1004581f"], ["0x100325c9", "or cl, byte ptr [edx]", "0x10045821"], ["0x100325cb", "or cl, byte ptr [edx]", "0x10045823"]]}]], ["@@ -0x100325e3,28 +0x1004583b,30 @@", [{"both": [["0x100325e3", "or cl, byte ptr [edx]", "0x1004583b"], ["0x100325e5", "or cl, byte ptr [edx]", "0x1004583d"], ["0x100325e7", "or cl, byte ptr [edx]", "0x1004583f"], ["0x100325e9", "or cl, byte ptr [edx]", "0x10045841"], ["0x100325eb", "add al, 5", "0x10045843"], ["0x100325ed", "push es", "0x10045845"], ["0x100325ee", "pop es", "0x10045846"], ["0x100325ef", "or byte ptr [edx], cl", "0x10045847"], ["0x100325f1", "or cl, byte ptr [ecx]", "0x10045849"], ["0x100325f3", "nop ", "0x1004584b"]]}, {"orig": [["0x100325f4", "sub esp, dword ptr [eax]"], ["0x100325f6", "add edx, dword ptr [eax]"], ["0x100325f8", "imul esp, dword ptr [ecx], 0x221e1003"], ["0x100325fe", "add edx, dword ptr [eax]"], ["0x10032600", "aam 0x22"], ["0x10032602", "add edx, dword ptr [eax]"], ["0x10032604", "or eax, 0x46100323"], ["0x10032609", "and eax, dword ptr [ebx]"], ["0x1003260b", "adc byte ptr [eax + 0x100323], cl"], ["0x10032611", "add byte ptr [esi], al"]], "recomp": [["0x1004584c", "adc dword ptr [edx + 4], 0x10"], ["0x10045850", "rcl dword ptr [ebx + 4], 0x10"], ["0x10045854", "jbe 0x54"], ["0x10045856", "add al, 0x10"], ["0x10045858", "sub al, 0x55"], ["0x1004585a", "add al, 0x10"], ["0x1004585c", "push ebp"], ["0x1004585e", "add al, 0x10"], ["0x10045860", "sahf "], ["0x10045861", "push ebp"], ["0x10045862", "add al, 0x10"], ["0x10045864", "loopne 0x100458bb"], ["0x10045866", "add al, 0x10"], ["0x10045868", "add byte ptr [eax], al"], ["0x1004586a", "push es"]]}, {"both": [["0x10032613", "push es", "0x1004586b"], ["0x10032614", "push es", "0x1004586c"], ["0x10032615", "add dword ptr [edx], eax", "0x1004586d"], ["0x10032617", "add eax, dword ptr [esi]", "0x1004586f"], ["0x10032619", "add al, 6", "0x10045871"]]}, {"orig": [["0x1003261b", "add eax, 0xcccccccc"], ["0x10032620", "sub esp, 0x4c"], ["0x10032623", "push ebx"]], "recomp": []}]]]}, {"address": "0x10032620", "recomp": "0x10045880", "name": "Isle::FUN_10032620", "matching": 0.8476190476190476, "diff": [["@@ -0x10032630,32 +0x10045890,32 @@", [{"both": [["0x10032630", "mov ecx, dword ptr [eax + 0x68]", "0x10045890"], ["0x10032633", "push 0x3dcccccd", "0x10045893"], ["0x10032638", "push 0x42b40000", "0x10045898"], ["0x1003263d", "call Lego3DManager::SetFrustrum (FUNCTION)", "0x1004589d"], ["0x10032642", "call GameState (FUNCTION)", "0x100458a2"], ["0x10032647", "mov eax, dword ptr [eax + 0x424]", "0x100458a7"], ["0x1003264d", "sub eax, 4", "0x100458ad"], ["0x10032650", "cmp eax, 0x3e", "0x100458b0"], ["0x10032653", "ja 0x9e", "0x100458b3"], ["0x10032659", "xor ecx, ecx", "0x100458b9"]]}, {"orig": [["0x1003265b", "mov cl, byte ptr [eax + 0x10032724]"], ["0x10032661", "jmp dword ptr [ecx*4 + 0x10032700]"]], "recomp": [["0x100458bb", "mov cl, byte ptr [eax + 0x10045984]"], ["0x100458c1", "jmp dword ptr [ecx*4 + 0x10045960]"]]}, {"both": [["0x10032668", "call CurrentActor (FUNCTION)", "0x100458c8"]]}, {"orig": [["0x1003266d", "mov esi, eax"]], "recomp": [["0x100458cd", "mov esi, dword ptr [eax]"], ["0x100458cf", "mov edi, eax"]]}, {"both": [["0x1003266f", "push 7", "0x100458d1"], ["0x10032671", "push 1", "0x100458d3"], ["0x10032673", "call GameState (FUNCTION)", "0x100458d5"], ["0x10032678", "mov eax, dword ptr [eax + 0x424]", "0x100458da"]]}, {"orig": [["0x1003267e", "mov ebx, dword ptr [esi]"]], "recomp": [["0x100458e0", "mov ecx, edi"]]}, {"both": [["0x10032680", "push eax", "0x100458e2"]]}, {"orig": [["0x10032681", "mov ecx, esi"], ["0x10032683", "call dword ptr [ebx + 0xe8]"]], "recomp": [["0x100458e3", "call dword ptr [esi + 0xe8]"]]}, {"both": [["0x10032689", "call GameState (FUNCTION)", "0x100458e9"], ["0x1003268e", "mov dword ptr [eax + 0x424], 0x42", "0x100458ee"], ["0x10032698", "pop edi", "0x100458f8"], ["0x10032699", "pop esi", "0x100458f9"], ["0x1003269a", "pop ebx", "0x100458fa"], ["0x1003269b", "add esp, 0x4c", "0x100458fb"], ["0x1003269e", "ret ", "0x100458fe"], ["0x1003269f", "call CurrentActor (FUNCTION)", "0x100458ff"], ["0x100326a4", "mov ecx, dword ptr [eax + 0x54]", "0x10045904"], ["0x100326a7", "lea eax, [esp + 0x18]", "0x10045907"]]}]], ["@@ -0x100326e6,30 +0x10045946,30 @@", [{"both": [["0x100326e6", "mov ecx, dword ptr [esp + 0x60]", "0x10045946"], ["0x100326ea", "call MxMatrix::MxMatrix (FUNCTION)", "0x1004594a"], ["0x100326ef", "mov ecx, ebx", "0x1004594f"], ["0x100326f1", "call dword ptr [edi + 0xec]", "0x10045951"], ["0x100326f7", "pop edi", "0x10045957"], ["0x100326f8", "pop esi", "0x10045958"], ["0x100326f9", "pop ebx", "0x10045959"], ["0x100326fa", "add esp, 0x4c", "0x1004595a"], ["0x100326fd", "ret ", "0x1004595d"], ["0x100326fe", "mov edi, edi", "0x1004595e"]]}, {"orig": [["0x10032700", "push 0x68100326"], ["0x10032705", "add edx, dword ptr es:[eax]"], ["0x10032708", "push 0x68100326"], ["0x1003270d", "add edx, dword ptr es:[eax]"], ["0x10032710", "push 0x68100326"], ["0x10032715", "add edx, dword ptr es:[eax]"], ["0x10032718", "push 0x9f100326"], ["0x1003271d", "add edx, dword ptr es:[eax]"], ["0x10032720", "mul dword ptr [esi]"], ["0x10032722", "add edx, dword ptr [eax]"]], "recomp": [["0x10045960", "enter 0x458, 0x10"], ["0x10045964", "enter 0x458, 0x10"], ["0x10045968", "enter 0x458, 0x10"], ["0x1004596c", "enter 0x458, 0x10"], ["0x10045970", "enter 0x458, 0x10"], ["0x10045974", "enter 0x458, 0x10"], ["0x10045978", "enter 0x458, 0x10"], ["0x1004597c", "call ptr [eax + 4]"], ["0x1004597f", "adc byte ptr [edi + 0x59], dl"], ["0x10045982", "add al, 0x10"]]}, {"both": [["0x10032724", "add byte ptr [eax], cl", "0x10045984"], ["0x10032726", "or byte ptr [eax], cl", "0x10045986"], ["0x10032728", "or byte ptr [eax], cl", "0x10045988"], ["0x1003272a", "or byte ptr [eax], cl", "0x1004598a"], ["0x1003272c", "or byte ptr [eax], cl", "0x1004598c"], ["0x1003272e", "or byte ptr [eax], cl", "0x1004598e"], ["0x10032730", "add dword ptr [ecx], eax", "0x10045990"], ["0x10032732", "or byte ptr [edx], al", "0x10045992"], ["0x10032734", "add cl, byte ptr [eax]", "0x10045994"], ["0x10032736", "add ecx, dword ptr [eax]", "0x10045996"]]}]]]}, {"address": "0x10032770", "recomp": "0x100459d0", "name": "MxMatrix::MxMatrix", "matching": 1.0, "diff": []}, {"address": "0x100327a0", "recomp": "0x10045a00", "name": "Isle::HandleTransitionEnd", "matching": 0.9174078780177891, "diff": [["@@ -0x100327ce,22 +0x10045a2e,22 @@", [{"both": [["0x100327ce", "add esp, 0xc", "0x10045a2e"], ["0x100327d1", "cmp dword ptr [esi + 0x13c], 0x3d", "0x10045a31"], ["0x100327d8", "je 0xd", "0x10045a38"], ["0x100327da", "mov eax, dword ptr [esi + 0xf8]", "0x10045a3a"], ["0x100327e0", "mov dword ptr [eax + 0x18], 0", "0x10045a40"], ["0x100327e7", "mov eax, dword ptr [esi + 0x13c]", "0x10045a47"], ["0x100327ed", "lea edx, [eax - 2]", "0x10045a4d"], ["0x100327f0", "cmp edx, 0x3e", "0x10045a50"], ["0x100327f3", "ja 0xf", "0x10045a53"], ["0x100327f5", "xor ecx, ecx", "0x10045a55"]]}, {"orig": [["0x100327f7", "mov cl, byte ptr [edx + 0x10032cec]"], ["0x100327fd", "jmp dword ptr [ecx*4 + 0x10032c9c]"]], "recomp": [["0x10045a57", "mov cl, byte ptr [edx + 0x10045f4c]"], ["0x10045a5d", "jmp dword ptr [ecx*4 + 0x10045efc]"]]}, {"both": [["0x10032804", "push eax", "0x10045a64"], ["0x10032805", "call GameState (FUNCTION)", "0x10045a65"], ["0x1003280a", "mov ecx, eax", "0x10045a6a"], ["0x1003280c", "call LegoGameState::SwitchArea (FUNCTION)", "0x10045a6c"], ["0x10032811", "mov eax, 1", "0x10045a71"], ["0x10032816", "pop edi", "0x10045a76"], ["0x10032817", "mov dword ptr [esi + 0x13c], 0", "0x10045a77"], ["0x10032821", "pop esi", "0x10045a81"], ["0x10032822", "ret ", "0x10045a82"], ["0x10032823", "push 0x49f", "0x10045a83"]]}]], ["@@ -0x10032c78,69 +0x10045ed8,12 @@", [{"both": [["0x10032c78", "call Isle::FUN_10032d30 (FUNCTION)", "0x10045ed8"], ["0x10032c7d", "mov ecx, dword ptr [esi + 0xf8]", "0x10045edd"], ["0x10032c83", "cmp byte ptr [ecx + 0x1f], 0", "0x10045ee3"], ["0x10032c87", "jne 0xb", "0x10045ee7"], ["0x10032c89", "mov ecx, dword ptr [esi + 0x128]", "0x10045ee9"], ["0x10032c8f", "call Jetski::FUN_1007e990 (FUNCTION)", "0x10045eef"], ["0x10032c94", "mov eax, 1", "0x10045ef4"], ["0x10032c99", "pop edi", "0x10045ef9"], ["0x10032c9a", "pop esi", "0x10045efa"], ["0x10032c9b", "ret ", "0x10045efb"]]}, {"orig": [["0x10032c9c", "and ebp, dword ptr [eax]"], ["0x10032c9e", "add edx, dword ptr [eax]"], ["0x10032ca0", "popal "], ["0x10032ca1", "sub byte ptr [ebx], al"], ["0x10032ca3", "adc byte ptr [esi - 0x21effcd8], bl"], ["0x10032ca9", "sub byte ptr [ebx], al"], ["0x10032cab", "adc bl, bh"], ["0x10032cad", "sub byte ptr [ebx], al"], ["0x10032caf", "adc byte ptr [eax], bl"], ["0x10032cb1", "sub dword ptr [ebx], eax"], ["0x10032cb3", "adc byte ptr [<OFFSET37>], dh"], ["0x10032cb9", "sub dword ptr [ebx], eax"], ["0x10032cbb", "adc byte ptr [edi - 0x1effcd7], cl"], ["0x10032cc1", "sub dword ptr [ebx], eax"], ["0x10032cc3", "adc byte ptr [ebp + 0x2a], ch"], ["0x10032cc6", "add edx, dword ptr [eax]"], ["0x10032cc8", "stosb byte ptr es:[edi], al"], ["0x10032cc9", "sub al, byte ptr [ebx]"], ["0x10032ccb", "adc dh, ah"], ["0x10032ccd", "sub al, byte ptr [ebx]"], ["0x10032ccf", "adc byte ptr [<OFFSET38>], ah"], ["0x10032cd5", "sub eax, dword ptr [ebx]"], ["0x10032cd7", "adc byte ptr [ebp - 0x3beffcd5], al"], ["0x10032cdd", "sub eax, dword ptr [ebx]"], ["0x10032cdf", "adc byte ptr [eax], dl"], ["0x10032ce1", "sub al, 3"], ["0x10032ce3", "adc byte ptr [eax + 0x2c], bl"], ["0x10032ce6", "add edx, dword ptr [eax]"], ["0x10032ce8", "add al, 0x28"], ["0x10032cea", "add edx, dword ptr [eax]"], ["0x10032cec", "add byte ptr [ebx], dl"], ["0x10032cee", "adc edx, dword ptr [ebx]"], ["0x10032cf0", "add dword ptr [edx], eax"], ["0x10032cf2", "add eax, dword ptr [eax + 0x13131306]"], ["0x10032cf9", "adc edx, dword ptr [ebx]"], ["0x10032cfb", "adc edx, dword ptr [ebx]"], ["0x10032cfd", "adc edx, dword ptr [ebx]"], ["0x10032cff", "adc edx, dword ptr [ebx]"], ["0x10032d01", "adc edx, dword ptr [ebx]"], ["0x10032d03", "adc edx, dword ptr [ebx]"], ["0x10032d05", "pop es"], ["0x10032d06", "or byte ptr [ebx], dl"], ["0x10032d08", "adc edx, dword ptr [ebx]"], ["0x10032d0a", "adc ecx, dword ptr [ecx]"], ["0x10032d0c", "adc ecx, dword ptr [edx]"], ["0x10032d0e", "adc edx, dword ptr [ebx]"], ["0x10032d10", "adc edx, dword ptr [ebx]"], ["0x10032d12", "adc edx, dword ptr [ebx]"], ["0x10032d14", "adc edx, dword ptr [ebx]"], ["0x10032d16", "adc edx, dword ptr [ebx]"], ["0x10032d18", "adc edx, dword ptr [ebx]"], ["0x10032d1a", "adc edx, dword ptr [ebx]"], ["0x10032d1c", "adc edx, dword ptr [ebx]"], ["0x10032d1e", "adc edx, dword ptr [ebx]"], ["0x10032d20", "adc edx, dword ptr [ebx]"], ["0x10032d22", "adc ecx, dword ptr [ebx]"], ["0x10032d24", "or al, 0xd"], ["0x10032d26", "push cs"], ["0x10032d27", "movups xmm2, xmmword ptr [ecx]"]], "recomp": [["0x10045efc", "sbb dword ptr [edx + 4], 0x10"], ["0x10045f00", "rcr dword ptr [edx + 4], 0x10"]]}]]]}, {"address": "0x10032d30", "recomp": "0x10045f90", "name": "Isle::FUN_10032d30", "matching": 1.0, "diff": []}, {"address": "0x10032f10", "recomp": "0x10046170", "name": "Isle::Add", "matching": 1.0, "diff": []}, {"address": "0x10033050", "recomp": "0x100462b0", "name": "Isle::VTable0x6c", "matching": 1.0, "diff": []}, {"address": "0x100330e0", "recomp": "0x10046340", "name": "Isle::FUN_100330e0", "matching": 0.0, "stub": true}, {"address": "0x10033170", "recomp": "0x10043ee0", "name": "Isle::VTable0x60", "matching": 1.0, "diff": []}, {"address": "0x10033180", "recomp": "0x10046350", "name": "Isle::VTable0x64", "matching": 0.0, "stub": true}, {"address": "0x100334b0", "recomp": "0x10001000", "name": "Act1State::Act1State", "matching": 0.0, "stub": true}, {"address": "0x10033800", "recomp": "0x10001bc0", "name": "Act1State::NamedPlane::NamedPlane", "matching": 1.0, "diff": []}, {"address": "0x100338a0", "recomp": "0x10001c60", "name": "Act1State::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100338b0", "recomp": "0x10001c70", "name": "Act1State::IsA", "matching": 1.0, "diff": []}, {"address": "0x10033960", "recomp": "0x10001d20", "name": "Act1State::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10033a70", "recomp": "0x10001e30", "name": "Act1State::NamedPlane::~NamedPlane", "matching": 1.0, "diff": []}, {"address": "0x10033ac0", "recomp": "0x10001e80", "name": "Act1State::VTable0x1c", "matching": 0.11457455770850884, "diff": [["@@ -0x10033ac0,1240 +0x10001e80,1134 @@", [{"both": [["0x10033ac0", "mov eax, dword ptr fs:[0]", "0x10001e80"], ["0x10033ac6", "push ebp", "0x10001e86"], ["0x10033ac7", "mov ebp, esp", "0x10001e87"], ["0x10033ac9", "push -1", "0x10001e89"], ["0x10033acb", "push <OFFSET1>", "0x10001e8b"], ["0x10033ad0", "push eax", "0x10001e90"], ["0x10033ad1", "mov dword ptr fs:[0], esp", "0x10001e91"]]}, {"orig": [["0x10033ad8", "sub esp, 0x14"], ["0x10033adb", "push ebx"]], "recomp": [["0x10001e98", "mov eax, dword ptr [ebp + 8]"], ["0x10001e9b", "sub esp, 0x24"], ["0x10001e9e", "mov dword ptr [ebp - 0x10], ecx"], ["0x10001ea1", "mov ecx, dword ptr [eax]"]]}, {"both": [["0x10033adc", "push esi", "0x10001ea3"], ["0x10033add", "push edi", "0x10001ea4"]]}, {"orig": [["0x10033ade", "mov esi, dword ptr [ebp + 8]"], ["0x10033ae1", "mov edi, ecx"], ["0x10033ae3", "mov eax, dword ptr [esi]"], ["0x10033ae5", "mov ecx, dword ptr [eax + 0x14]"], ["0x10033ae8", "mov dword ptr [ebp - 0x14], ecx"], ["0x10033aeb", "mov ecx, esi"], ["0x10033aed", "call dword ptr [ebp - 0x14]"], ["0x10033af0", "test al, al"], ["0x10033af2", "je 0x2b"]], "recomp": [["0x10001ea5", "mov dword ptr [ebp - 0x18], ecx"], ["0x10001ea8", "mov esi, dword ptr [ecx + 0x14]"], ["0x10001eab", "mov ecx, eax"], ["0x10001ead", "call esi"], ["0x10001eaf", "test al, al"], ["0x10001eb1", "je 0x2d"]]}, {"both": [["0x10033af4", "sub esp, 0x10", "0x10001eb3"]]}, {"orig": [["0x10033af7", "mov ecx, edi"], ["0x10033af9", "mov dword ptr [ebp - 0x10], esp"], ["0x10033afc", "mov eax, dword ptr [edi]"]], "recomp": [["0x10001eb6", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10001eb9", "mov dword ptr [ebp - 0x14], esp"], ["0x10001ebc", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x10033afe", "call dword ptr [eax + 0xc]", "0x10001ebe"], ["0x10033b01", "push eax", "0x10001ec1"]]}, {"orig": [["0x10033b02", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x10001ec2", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x10033b05", "call MxString::MxString (FUNCTION)", "0x10001ec5"], ["0x10033b0a", "mov dword ptr [ebp - 4], 0", "0x10001eca"], ["0x10033b11", "mov dword ptr [ebp - 4], 0xffffffff", "0x10001ed1"]]}, {"orig": [["0x10033b18", "mov ecx, esi"]], "recomp": [["0x10001ed8", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033b1a", "call LegoFile::FUN_10006030 (FUNCTION)", "0x10001edb"]]}, {"orig": [["0x10033b1f", "mov ecx, esi"], ["0x10033b21", "call dword ptr [ebp - 0x14]"], ["0x10033b24", "test al, al"], ["0x10033b26", "je 0x84"]], "recomp": [["0x10001ee0", "mov ecx, dword ptr [ebp + 8]"], ["0x10001ee3", "call esi"], ["0x10001ee5", "test al, al"], ["0x10001ee7", "je 0x97"]]}, {"both": [["0x10033b2c", "sub esp, 0x10", "0x10001eed"]]}, {"orig": [["0x10033b2f", "lea eax, [edi + 0x24]"], ["0x10033b32", "mov dword ptr [ebp - 0x10], esp"], ["0x10033b35", "push eax"], ["0x10033b36", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x10001ef0", "mov eax, dword ptr [ebp - 0x10]"], ["0x10001ef3", "add eax, 0x24"], ["0x10001ef6", "mov dword ptr [ebp - 0x14], esp"], ["0x10001ef9", "push eax"], ["0x10001efa", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x10033b39", "call MxString::MxString (FUNCTION)", "0x10001efd"], ["0x10033b3e", "mov dword ptr [ebp - 4], 1", "0x10001f02"], ["0x10033b45", "mov dword ptr [ebp - 4], 0xffffffff", "0x10001f09"]]}, {"orig": [["0x10033b4c", "mov ecx, esi"]], "recomp": [["0x10001f10", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033b4e", "call LegoFile::FUN_10006030 (FUNCTION)", "0x10001f13"], ["0x10033b53", "sub esp, 0x14", "0x10001f18"]]}, {"orig": [["0x10033b56", "lea eax, [edi + 0x34]"]], "recomp": [["0x10001f1b", "mov eax, dword ptr [ebp - 0x10]"], ["0x10001f1e", "add eax, 0x34"]]}, {"both": [["0x10033b59", "mov dword ptr [ebp - 0x20], esp", "0x10001f21"], ["0x10033b5c", "push eax", "0x10001f24"], ["0x10033b5d", "mov ecx, dword ptr [ebp - 0x20]", "0x10001f25"], ["0x10033b60", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)", "0x10001f28"]]}, {"orig": [["0x10033b65", "mov ecx, esi"], ["0x10033b67", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033b6c", "sub esp, 0x14"], ["0x10033b6f", "lea eax, [edi + 0x48]"]], "recomp": [["0x10001f2d", "mov ecx, dword ptr [ebp + 8]"], ["0x10001f30", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10001f35", "sub esp, 0x14"], ["0x10001f38", "mov eax, dword ptr [ebp - 0x10]"], ["0x10001f3b", "add eax, 0x48"]]}, {"both": [["0x10033b72", "mov dword ptr [ebp - 0x1c], esp", "0x10001f3e"], ["0x10033b75", "push eax", "0x10001f41"], ["0x10033b76", "mov ecx, dword ptr [ebp - 0x1c]", "0x10001f42"], ["0x10033b79", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)", "0x10001f45"]]}, {"orig": [["0x10033b7e", "mov ecx, esi"], ["0x10033b80", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033b85", "sub esp, 0x14"], ["0x10033b88", "lea eax, [edi + 0x5c]"], ["0x10033b8b", "mov dword ptr [ebp - 0x18], esp"], ["0x10033b8e", "push eax"]], "recomp": [["0x10001f4a", "mov ecx, dword ptr [ebp + 8]"], ["0x10001f4d", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10001f52", "sub esp, 0x14"], ["0x10001f55", "mov eax, dword ptr [ebp - 0x10]"], ["0x10001f58", "add eax, 0x5c"], ["0x10001f5b", "mov dword ptr [ebp - 0x24], esp"], ["0x10001f5e", "push eax"], ["0x10001f5f", "mov ecx, dword ptr [ebp - 0x24]"], ["0x10001f62", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10001f67", "mov ecx, dword ptr [ebp + 8]"], ["0x10001f6a", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10001f6f", "jmp 0xc6"], ["0x10001f74", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10001f77", "jmp MxString::~MxString (FUNCTION)"], ["0x10001f7c", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10001f7f", "jmp MxString::~MxString (FUNCTION)"], ["0x10001f84", "mov ecx, dword ptr [ebp + 8]"], ["0x10001f87", "mov eax, dword ptr [ebp - 0x18]"], ["0x10001f8a", "call dword ptr [eax + 0x18]"], ["0x10001f8d", "test al, al"], ["0x10001f8f", "je 0xa5"], ["0x10001f95", "mov eax, dword ptr [ebp - 0x10]"], ["0x10001f98", "mov ecx, dword ptr [ebp + 8]"], ["0x10001f9b", "add eax, 0x24"], ["0x10001f9e", "push eax"], ["0x10001f9f", "call LegoFile::ReadString (FUNCTION)"]]}, {"both": [["0x10033b8f", "mov ecx, dword ptr [ebp - 0x18]", "0x10001fa4"]]}, {"orig": [["0x10033b92", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10033b97", "mov ecx, esi"], ["0x10033b99", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033b9e", "jmp 0x7e"], ["0x10033ba0", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10033ba3", "jmp MxString::~MxString (FUNCTION)"], ["0x10033ba8", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10033bab", "jmp MxString::~MxString (FUNCTION)"], ["0x10033bb0", "mov ecx, esi"], ["0x10033bb2", "mov eax, dword ptr [esi]"]], "recomp": [["0x10001fa7", "push 4"], ["0x10001fa9", "mov edx, dword ptr [ebp - 0x10]"], ["0x10001fac", "mov edi, dword ptr [ecx + 4]"], ["0x10001faf", "mov ecx, dword ptr [ebp + 8]"], ["0x10001fb2", "mov eax, dword ptr [edx + 0x38]"], ["0x10001fb5", "push eax"], ["0x10001fb6", "call edi"], ["0x10001fb8", "push 4"], ["0x10001fba", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10001fbd", "mov eax, dword ptr [ecx + 0x38]"], ["0x10001fc0", "mov ecx, dword ptr [ebp + 8]"], ["0x10001fc3", "add eax, 4"], ["0x10001fc6", "push eax"], ["0x10001fc7", "call edi"], ["0x10001fc9", "push 4"], ["0x10001fcb", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10001fce", "mov eax, dword ptr [ecx + 0x38]"], ["0x10001fd1", "mov ecx, dword ptr [ebp + 8]"], ["0x10001fd4", "add eax, 8"], ["0x10001fd7", "push eax"], ["0x10001fd8", "call edi"], ["0x10001fda", "push 4"], ["0x10001fdc", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10001fdf", "mov edx, dword ptr [ecx + 0x4c]"], ["0x10001fe2", "mov ecx, dword ptr [ebp + 8]"], ["0x10001fe5", "push edx"], ["0x10001fe6", "call edi"], ["0x10001fe8", "push 4"], ["0x10001fea", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10001fed", "mov eax, dword ptr [ecx + 0x4c]"], ["0x10001ff0", "mov ecx, dword ptr [ebp + 8]"], ["0x10001ff3", "add eax, 4"], ["0x10001ff6", "push eax"], ["0x10001ff7", "call edi"], ["0x10001ff9", "push 4"], ["0x10001ffb", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10001ffe", "mov eax, dword ptr [ecx + 0x4c]"], ["0x10002001", "mov ecx, dword ptr [ebp + 8]"], ["0x10002004", "add eax, 8"], ["0x10002007", "push eax"], ["0x10002008", "call edi"], ["0x1000200a", "push 4"], ["0x1000200c", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000200f", "mov edx, dword ptr [ecx + 0x60]"], ["0x10002012", "mov ecx, dword ptr [ebp + 8]"], ["0x10002015", "push edx"], ["0x10002016", "call edi"], ["0x10002018", "push 4"], ["0x1000201a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000201d", "mov eax, dword ptr [ecx + 0x60]"], ["0x10002020", "mov ecx, dword ptr [ebp + 8]"], ["0x10002023", "add eax, 4"], ["0x10002026", "push eax"], ["0x10002027", "call edi"], ["0x10002029", "push 4"], ["0x1000202b", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000202e", "mov eax, dword ptr [ecx + 0x60]"], ["0x10002031", "mov ecx, dword ptr [ebp + 8]"], ["0x10002034", "add eax, 8"], ["0x10002037", "push eax"], ["0x10002038", "call edi"], ["0x1000203a", "mov ecx, dword ptr [ebp + 8]"], ["0x1000203d", "call esi"], ["0x1000203f", "test al, al"], ["0x10002041", "je 0x95"], ["0x10002047", "sub esp, 0x10"], ["0x1000204a", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000204d", "add eax, 0x70"], ["0x10002050", "mov dword ptr [ebp - 0x14], esp"], ["0x10002053", "push eax"], ["0x10002054", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10002057", "call MxString::MxString (FUNCTION)"], ["0x1000205c", "mov dword ptr [ebp - 4], 2"], ["0x10002063", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1000206a", "mov ecx, dword ptr [ebp + 8]"], ["0x1000206d", "call LegoFile::FUN_10006030 (FUNCTION)"], ["0x10002072", "sub esp, 0x14"], ["0x10002075", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002078", "add eax, 0x80"], ["0x1000207d", "mov dword ptr [ebp - 0x20], esp"], ["0x10002080", "push eax"], ["0x10002081", "mov ecx, dword ptr [ebp - 0x20]"], ["0x10002084", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10002089", "mov ecx, dword ptr [ebp + 8]"], ["0x1000208c", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10002091", "sub esp, 0x14"], ["0x10002094", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002097", "add eax, 0x94"], ["0x1000209c", "mov dword ptr [ebp - 0x1c], esp"], ["0x1000209f", "push eax"], ["0x100020a0", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x100020a3", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x100020a8", "mov ecx, dword ptr [ebp + 8]"], ["0x100020ab", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x100020b0", "sub esp, 0x14"], ["0x100020b3", "mov eax, dword ptr [ebp - 0x10]"], ["0x100020b6", "add eax, 0xa8"], ["0x100020bb", "mov dword ptr [ebp - 0x24], esp"], ["0x100020be", "push eax"], ["0x100020bf", "mov ecx, dword ptr [ebp - 0x24]"], ["0x100020c2", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x100020c7", "mov ecx, dword ptr [ebp + 8]"], ["0x100020ca", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x100020cf", "jmp 0xb1"], ["0x100020d4", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100020d7", "jmp MxString::~MxString (FUNCTION)"], ["0x100020dc", "mov ecx, dword ptr [ebp + 8]"], ["0x100020df", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x10033bb4", "call dword ptr [eax + 0x18]", "0x100020e2"], ["0x10033bb7", "test al, al", "0x100020e5"]]}, {"orig": [["0x10033bb9", "je 0x63"], ["0x10033bbb", "lea eax, [edi + 0x24]"], ["0x10033bbe", "mov ecx, esi"]], "recomp": [["0x100020e7", "je 0x98"], ["0x100020ed", "mov eax, dword ptr [ebp - 0x10]"], ["0x100020f0", "mov ecx, dword ptr [ebp + 8]"], ["0x100020f3", "add eax, 0x70"]]}, {"both": [["0x10033bc0", "push eax", "0x100020f6"], ["0x10033bc1", "call LegoFile::ReadString (FUNCTION)", "0x100020f7"]]}, {"orig": [["0x10033bc6", "mov eax, dword ptr [esi]"], ["0x10033bc8", "push 4"], ["0x10033bca", "mov ecx, dword ptr [edi + 0x38]"], ["0x10033bcd", "mov ebx, dword ptr [eax + 4]"], ["0x10033bd0", "push ecx"], ["0x10033bd1", "mov ecx, esi"], ["0x10033bd3", "call ebx"], ["0x10033bd5", "mov eax, dword ptr [edi + 0x38]"], ["0x10033bd8", "push 4"]], "recomp": [["0x100020fc", "mov ecx, dword ptr [ebp - 0x18]"], ["0x100020ff", "push 4"], ["0x10002101", "mov edx, dword ptr [ebp - 0x10]"], ["0x10002104", "mov edi, dword ptr [ecx + 4]"], ["0x10002107", "mov ecx, dword ptr [ebp + 8]"], ["0x1000210a", "mov eax, dword ptr [edx + 0x84]"], ["0x10002110", "push eax"], ["0x10002111", "call edi"], ["0x10002113", "push 4"], ["0x10002115", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002118", "mov eax, dword ptr [ecx + 0x84]"], ["0x1000211e", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033bda", "add eax, 4", "0x10002121"]]}, {"orig": [["0x10033bdd", "mov ecx, esi"], ["0x10033bdf", "push eax"], ["0x10033be0", "call ebx"], ["0x10033be2", "mov eax, dword ptr [edi + 0x38]"], ["0x10033be5", "push 4"]], "recomp": [["0x10002124", "push eax"], ["0x10002125", "call edi"], ["0x10002127", "push 4"], ["0x10002129", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000212c", "mov eax, dword ptr [ecx + 0x84]"], ["0x10002132", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033be7", "add eax, 8", "0x10002135"]]}, {"orig": [["0x10033bea", "mov ecx, esi"], ["0x10033bec", "push eax"], ["0x10033bed", "call ebx"], ["0x10033bef", "push 4"], ["0x10033bf1", "mov ecx, dword ptr [edi + 0x4c]"], ["0x10033bf4", "push ecx"], ["0x10033bf5", "mov ecx, esi"], ["0x10033bf7", "call ebx"], ["0x10033bf9", "mov eax, dword ptr [edi + 0x4c]"], ["0x10033bfc", "push 4"]], "recomp": [["0x10002138", "push eax"], ["0x10002139", "call edi"], ["0x1000213b", "push 4"], ["0x1000213d", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002140", "mov edx, dword ptr [ecx + 0x98]"], ["0x10002146", "mov ecx, dword ptr [ebp + 8]"], ["0x10002149", "push edx"], ["0x1000214a", "call edi"], ["0x1000214c", "push 4"], ["0x1000214e", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002151", "mov eax, dword ptr [ecx + 0x98]"], ["0x10002157", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033bfe", "add eax, 4", "0x1000215a"]]}, {"orig": [["0x10033c01", "mov ecx, esi"], ["0x10033c03", "push eax"], ["0x10033c04", "call ebx"], ["0x10033c06", "mov eax, dword ptr [edi + 0x4c]"], ["0x10033c09", "push 4"]], "recomp": [["0x1000215d", "push eax"], ["0x1000215e", "call edi"], ["0x10002160", "push 4"], ["0x10002162", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002165", "mov eax, dword ptr [ecx + 0x98]"], ["0x1000216b", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033c0b", "add eax, 8", "0x1000216e"]]}, {"orig": [["0x10033c0e", "mov ecx, esi"], ["0x10033c10", "push eax"], ["0x10033c11", "call ebx"], ["0x10033c13", "lea ecx, [edi + 0x5c]"], ["0x10033c16", "push ecx"], ["0x10033c17", "mov ecx, esi"]], "recomp": [["0x10002171", "push eax"], ["0x10002172", "call edi"], ["0x10002174", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002177", "mov ecx, dword ptr [ebp + 8]"], ["0x1000217a", "add eax, 0xa8"], ["0x1000217f", "push eax"]]}, {"both": [["0x10033c19", "call LegoFile::ReadVector3 (FUNCTION)", "0x10002180"]]}, {"orig": [["0x10033c1e", "mov ecx, esi"], ["0x10033c20", "call dword ptr [ebp - 0x14]"], ["0x10033c23", "test al, al"], ["0x10033c25", "je 0x88"]], "recomp": [["0x10002185", "mov ecx, dword ptr [ebp + 8]"], ["0x10002188", "call esi"], ["0x1000218a", "test al, al"], ["0x1000218c", "je 0x97"]]}, {"both": [["0x10033c2b", "sub esp, 0x10", "0x10002192"]]}, {"orig": [["0x10033c2e", "lea eax, [edi + 0x70]"], ["0x10033c31", "mov dword ptr [ebp - 0x10], esp"], ["0x10033c34", "push eax"], ["0x10033c35", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10033c38", "call MxString::MxString (FUNCTION)"], ["0x10033c3d", "mov dword ptr [ebp - 4], 2"], ["0x10033c44", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10033c4b", "mov ecx, esi"]], "recomp": [["0x10002195", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002198", "add eax, 0xbc"], ["0x1000219d", "mov dword ptr [ebp - 0x14], esp"], ["0x100021a0", "push eax"], ["0x100021a1", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100021a4", "call MxString::MxString (FUNCTION)"], ["0x100021a9", "mov dword ptr [ebp - 4], 3"], ["0x100021b0", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100021b7", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033c4d", "call LegoFile::FUN_10006030 (FUNCTION)", "0x100021ba"], ["0x10033c52", "sub esp, 0x14", "0x100021bf"]]}, {"orig": [["0x10033c55", "lea eax, [edi + 0x80]"]], "recomp": [["0x100021c2", "mov eax, dword ptr [ebp - 0x10]"], ["0x100021c5", "add eax, 0xcc"]]}, {"both": [["0x10033c5b", "mov dword ptr [ebp - 0x20], esp", "0x100021ca"], ["0x10033c5e", "push eax", "0x100021cd"], ["0x10033c5f", "mov ecx, dword ptr [ebp - 0x20]", "0x100021ce"], ["0x10033c62", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)", "0x100021d1"]]}, {"orig": [["0x10033c67", "mov ecx, esi"], ["0x10033c69", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033c6e", "sub esp, 0x14"], ["0x10033c71", "lea eax, [edi + 0x94]"]], "recomp": [["0x100021d6", "mov ecx, dword ptr [ebp + 8]"], ["0x100021d9", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x100021de", "sub esp, 0x14"], ["0x100021e1", "mov eax, dword ptr [ebp - 0x10]"], ["0x100021e4", "add eax, 0xe0"]]}, {"both": [["0x10033c77", "mov dword ptr [ebp - 0x1c], esp", "0x100021e9"], ["0x10033c7a", "push eax", "0x100021ec"], ["0x10033c7b", "mov ecx, dword ptr [ebp - 0x1c]", "0x100021ed"], ["0x10033c7e", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)", "0x100021f0"]]}, {"orig": [["0x10033c83", "mov ecx, esi"], ["0x10033c85", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033c8a", "sub esp, 0x14"], ["0x10033c8d", "lea eax, [edi + 0xa8]"], ["0x10033c93", "mov dword ptr [ebp - 0x18], esp"], ["0x10033c96", "push eax"]], "recomp": [["0x100021f5", "mov ecx, dword ptr [ebp + 8]"], ["0x100021f8", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x100021fd", "sub esp, 0x14"], ["0x10002200", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002203", "add eax, 0xf4"], ["0x10002208", "mov dword ptr [ebp - 0x24], esp"], ["0x1000220b", "push eax"], ["0x1000220c", "mov ecx, dword ptr [ebp - 0x24]"], ["0x1000220f", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10002214", "mov ecx, dword ptr [ebp + 8]"], ["0x10002217", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x1000221c", "jmp 0xb3"], ["0x10002221", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10002224", "jmp MxString::~MxString (FUNCTION)"], ["0x10002229", "mov ecx, dword ptr [ebp + 8]"], ["0x1000222c", "mov eax, dword ptr [ebp - 0x18]"], ["0x1000222f", "call dword ptr [eax + 0x18]"], ["0x10002232", "test al, al"], ["0x10002234", "je 0x9a"], ["0x1000223a", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000223d", "mov ecx, dword ptr [ebp + 8]"], ["0x10002240", "add eax, 0xbc"], ["0x10002245", "push eax"], ["0x10002246", "call LegoFile::ReadString (FUNCTION)"]]}, {"both": [["0x10033c97", "mov ecx, dword ptr [ebp - 0x18]", "0x1000224b"]]}, {"orig": [["0x10033c9a", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10033c9f", "mov ecx, esi"], ["0x10033ca1", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033ca6", "jmp 0x8b"], ["0x10033cab", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10033cae", "jmp MxString::~MxString (FUNCTION)"], ["0x10033cb3", "mov ecx, esi"], ["0x10033cb5", "mov eax, dword ptr [esi]"]], "recomp": [["0x1000224e", "push 4"], ["0x10002250", "mov edx, dword ptr [ebp - 0x10]"], ["0x10002253", "mov edi, dword ptr [ecx + 4]"], ["0x10002256", "mov ecx, dword ptr [ebp + 8]"], ["0x10002259", "mov eax, dword ptr [edx + 0xd0]"], ["0x1000225f", "push eax"], ["0x10002260", "call edi"], ["0x10002262", "push 4"], ["0x10002264", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002267", "mov eax, dword ptr [ecx + 0xd0]"], ["0x1000226d", "mov ecx, dword ptr [ebp + 8]"], ["0x10002270", "add eax, 4"], ["0x10002273", "push eax"], ["0x10002274", "call edi"], ["0x10002276", "push 4"], ["0x10002278", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000227b", "mov eax, dword ptr [ecx + 0xd0]"], ["0x10002281", "mov ecx, dword ptr [ebp + 8]"], ["0x10002284", "add eax, 8"], ["0x10002287", "push eax"], ["0x10002288", "call edi"], ["0x1000228a", "push 4"], ["0x1000228c", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000228f", "mov edx, dword ptr [ecx + 0xe4]"], ["0x10002295", "mov ecx, dword ptr [ebp + 8]"], ["0x10002298", "push edx"], ["0x10002299", "call edi"], ["0x1000229b", "push 4"], ["0x1000229d", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100022a0", "mov eax, dword ptr [ecx + 0xe4]"], ["0x100022a6", "mov ecx, dword ptr [ebp + 8]"], ["0x100022a9", "add eax, 4"], ["0x100022ac", "push eax"], ["0x100022ad", "call edi"], ["0x100022af", "push 4"], ["0x100022b1", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100022b4", "mov eax, dword ptr [ecx + 0xe4]"], ["0x100022ba", "mov ecx, dword ptr [ebp + 8]"], ["0x100022bd", "add eax, 8"], ["0x100022c0", "push eax"], ["0x100022c1", "call edi"], ["0x100022c3", "mov eax, dword ptr [ebp - 0x10]"], ["0x100022c6", "mov ecx, dword ptr [ebp + 8]"], ["0x100022c9", "add eax, 0xf4"], ["0x100022ce", "push eax"], ["0x100022cf", "call LegoFile::ReadVector3 (FUNCTION)"], ["0x100022d4", "mov ecx, dword ptr [ebp + 8]"], ["0x100022d7", "call esi"], ["0x100022d9", "test al, al"], ["0x100022db", "je 0x97"], ["0x100022e1", "sub esp, 0x10"], ["0x100022e4", "mov eax, dword ptr [ebp - 0x10]"], ["0x100022e7", "add eax, 0x108"], ["0x100022ec", "mov dword ptr [ebp - 0x14], esp"], ["0x100022ef", "push eax"], ["0x100022f0", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100022f3", "call MxString::MxString (FUNCTION)"], ["0x100022f8", "mov dword ptr [ebp - 4], 4"], ["0x100022ff", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10002306", "mov ecx, dword ptr [ebp + 8]"], ["0x10002309", "call LegoFile::FUN_10006030 (FUNCTION)"], ["0x1000230e", "sub esp, 0x14"], ["0x10002311", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002314", "add eax, 0x118"], ["0x10002319", "mov dword ptr [ebp - 0x20], esp"], ["0x1000231c", "push eax"], ["0x1000231d", "mov ecx, dword ptr [ebp - 0x20]"], ["0x10002320", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10002325", "mov ecx, dword ptr [ebp + 8]"], ["0x10002328", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x1000232d", "sub esp, 0x14"], ["0x10002330", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002333", "add eax, 0x12c"], ["0x10002338", "mov dword ptr [ebp - 0x1c], esp"], ["0x1000233b", "push eax"], ["0x1000233c", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x1000233f", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10002344", "mov ecx, dword ptr [ebp + 8]"], ["0x10002347", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x1000234c", "sub esp, 0x14"], ["0x1000234f", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002352", "add eax, 0x140"], ["0x10002357", "mov dword ptr [ebp - 0x24], esp"], ["0x1000235a", "push eax"], ["0x1000235b", "mov ecx, dword ptr [ebp - 0x24]"], ["0x1000235e", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10002363", "mov ecx, dword ptr [ebp + 8]"], ["0x10002366", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x1000236b", "jmp 0xb3"], ["0x10002370", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10002373", "jmp MxString::~MxString (FUNCTION)"], ["0x10002378", "mov ecx, dword ptr [ebp + 8]"], ["0x1000237b", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x10033cb7", "call dword ptr [eax + 0x18]", "0x1000237e"], ["0x10033cba", "test al, al", "0x10002381"]]}, {"orig": [["0x10033cbc", "je 0x78"], ["0x10033cbe", "lea eax, [edi + 0x70]"], ["0x10033cc1", "mov ecx, esi"]], "recomp": [["0x10002383", "je 0x9a"], ["0x10002389", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000238c", "mov ecx, dword ptr [ebp + 8]"], ["0x1000238f", "add eax, 0x108"]]}, {"both": [["0x10033cc3", "push eax", "0x10002394"], ["0x10033cc4", "call LegoFile::ReadString (FUNCTION)", "0x10002395"]]}, {"orig": [["0x10033cc9", "mov eax, dword ptr [esi]"], ["0x10033ccb", "push 4"], ["0x10033ccd", "mov ecx, dword ptr [edi + 0x84]"], ["0x10033cd3", "mov ebx, dword ptr [eax + 4]"], ["0x10033cd6", "push ecx"], ["0x10033cd7", "mov ecx, esi"], ["0x10033cd9", "call ebx"], ["0x10033cdb", "mov eax, dword ptr [edi + 0x84]"], ["0x10033ce1", "push 4"]], "recomp": [["0x1000239a", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1000239d", "push 4"], ["0x1000239f", "mov edx, dword ptr [ebp - 0x10]"], ["0x100023a2", "mov edi, dword ptr [ecx + 4]"], ["0x100023a5", "mov ecx, dword ptr [ebp + 8]"], ["0x100023a8", "mov eax, dword ptr [edx + 0x11c]"], ["0x100023ae", "push eax"], ["0x100023af", "call edi"], ["0x100023b1", "push 4"], ["0x100023b3", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100023b6", "mov eax, dword ptr [ecx + 0x11c]"], ["0x100023bc", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033ce3", "add eax, 4", "0x100023bf"]]}, {"orig": [["0x10033ce6", "mov ecx, esi"], ["0x10033ce8", "push eax"], ["0x10033ce9", "call ebx"], ["0x10033ceb", "mov eax, dword ptr [edi + 0x84]"], ["0x10033cf1", "push 4"]], "recomp": [["0x100023c2", "push eax"], ["0x100023c3", "call edi"], ["0x100023c5", "push 4"], ["0x100023c7", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100023ca", "mov eax, dword ptr [ecx + 0x11c]"], ["0x100023d0", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033cf3", "add eax, 8", "0x100023d3"]]}, {"orig": [["0x10033cf6", "mov ecx, esi"], ["0x10033cf8", "push eax"], ["0x10033cf9", "call ebx"], ["0x10033cfb", "push 4"], ["0x10033cfd", "mov ecx, dword ptr [edi + 0x98]"], ["0x10033d03", "push ecx"], ["0x10033d04", "mov ecx, esi"], ["0x10033d06", "call ebx"], ["0x10033d08", "mov eax, dword ptr [edi + 0x98]"], ["0x10033d0e", "push 4"]], "recomp": [["0x100023d6", "push eax"], ["0x100023d7", "call edi"], ["0x100023d9", "push 4"], ["0x100023db", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100023de", "mov edx, dword ptr [ecx + 0x130]"], ["0x100023e4", "mov ecx, dword ptr [ebp + 8]"], ["0x100023e7", "push edx"], ["0x100023e8", "call edi"], ["0x100023ea", "push 4"], ["0x100023ec", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100023ef", "mov eax, dword ptr [ecx + 0x130]"], ["0x100023f5", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033d10", "add eax, 4", "0x100023f8"]]}, {"orig": [["0x10033d13", "mov ecx, esi"], ["0x10033d15", "push eax"], ["0x10033d16", "call ebx"], ["0x10033d18", "mov eax, dword ptr [edi + 0x98]"], ["0x10033d1e", "push 4"]], "recomp": [["0x100023fb", "push eax"], ["0x100023fc", "call edi"], ["0x100023fe", "push 4"], ["0x10002400", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002403", "mov eax, dword ptr [ecx + 0x130]"], ["0x10002409", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033d20", "add eax, 8", "0x1000240c"]]}, {"orig": [["0x10033d23", "mov ecx, esi"], ["0x10033d25", "push eax"], ["0x10033d26", "call ebx"], ["0x10033d28", "lea ecx, [edi + 0xa8]"], ["0x10033d2e", "push ecx"], ["0x10033d2f", "mov ecx, esi"]], "recomp": [["0x1000240f", "push eax"], ["0x10002410", "call edi"], ["0x10002412", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002415", "mov ecx, dword ptr [ebp + 8]"], ["0x10002418", "add eax, 0x140"], ["0x1000241d", "push eax"]]}, {"both": [["0x10033d31", "call LegoFile::ReadVector3 (FUNCTION)", "0x1000241e"]]}, {"orig": [["0x10033d36", "mov ecx, esi"], ["0x10033d38", "call dword ptr [ebp - 0x14]"], ["0x10033d3b", "test al, al"], ["0x10033d3d", "je 0x88"]], "recomp": [["0x10002423", "mov ecx, dword ptr [ebp + 8]"], ["0x10002426", "call esi"], ["0x10002428", "test al, al"], ["0x1000242a", "je 0x97"]]}, {"both": [["0x10033d43", "sub esp, 0x10", "0x10002430"]]}, {"orig": [["0x10033d46", "lea eax, [edi + 0xbc]"], ["0x10033d4c", "mov dword ptr [ebp - 0x10], esp"], ["0x10033d4f", "push eax"], ["0x10033d50", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10033d53", "call MxString::MxString (FUNCTION)"], ["0x10033d58", "mov dword ptr [ebp - 4], 3"], ["0x10033d5f", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10033d66", "mov ecx, esi"]], "recomp": [["0x10002433", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002436", "add eax, 0x164"], ["0x1000243b", "mov dword ptr [ebp - 0x14], esp"], ["0x1000243e", "push eax"], ["0x1000243f", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10002442", "call MxString::MxString (FUNCTION)"], ["0x10002447", "mov dword ptr [ebp - 4], 5"], ["0x1000244e", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10002455", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x10033d68", "call LegoFile::FUN_10006030 (FUNCTION)", "0x10002458"], ["0x10033d6d", "sub esp, 0x14", "0x1000245d"]]}, {"orig": [["0x10033d70", "lea eax, [edi + 0xcc]"]], "recomp": [["0x10002460", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002463", "add eax, 0x174"]]}, {"both": [["0x10033d76", "mov dword ptr [ebp - 0x20], esp", "0x10002468"], ["0x10033d79", "push eax", "0x1000246b"], ["0x10033d7a", "mov ecx, dword ptr [ebp - 0x20]", "0x1000246c"], ["0x10033d7d", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)", "0x1000246f"]]}, {"orig": [["0x10033d82", "mov ecx, esi"], ["0x10033d84", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033d89", "sub esp, 0x14"], ["0x10033d8c", "lea eax, [edi + 0xe0]"]], "recomp": [["0x10002474", "mov ecx, dword ptr [ebp + 8]"], ["0x10002477", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x1000247c", "sub esp, 0x14"], ["0x1000247f", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002482", "add eax, 0x188"]]}, {"both": [["0x10033d92", "mov dword ptr [ebp - 0x1c], esp", "0x10002487"], ["0x10033d95", "push eax", "0x1000248a"], ["0x10033d96", "mov ecx, dword ptr [ebp - 0x1c]", "0x1000248b"], ["0x10033d99", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)", "0x1000248e"]]}, {"orig": [["0x10033d9e", "mov ecx, esi"], ["0x10033da0", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033da5", "sub esp, 0x14"], ["0x10033da8", "lea eax, [edi + 0xf4]"], ["0x10033dae", "mov dword ptr [ebp - 0x18], esp"], ["0x10033db1", "push eax"]], "recomp": [["0x10002493", "mov ecx, dword ptr [ebp + 8]"], ["0x10002496", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x1000249b", "sub esp, 0x14"], ["0x1000249e", "mov eax, dword ptr [ebp - 0x10]"], ["0x100024a1", "add eax, 0x19c"], ["0x100024a6", "mov dword ptr [ebp - 0x24], esp"], ["0x100024a9", "push eax"], ["0x100024aa", "mov ecx, dword ptr [ebp - 0x24]"], ["0x100024ad", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x100024b2", "mov ecx, dword ptr [ebp + 8]"], ["0x100024b5", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x100024ba", "jmp 0x87"], ["0x100024bf", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100024c2", "jmp MxString::~MxString (FUNCTION)"], ["0x100024c7", "mov ecx, dword ptr [ebp + 8]"], ["0x100024ca", "mov eax, dword ptr [ebp - 0x18]"], ["0x100024cd", "call dword ptr [eax + 0x18]"], ["0x100024d0", "test al, al"], ["0x100024d2", "je 0x72"], ["0x100024d4", "mov eax, dword ptr [ebp - 0x10]"], ["0x100024d7", "mov ecx, dword ptr [ebp + 8]"], ["0x100024da", "add eax, 0x164"], ["0x100024df", "push eax"], ["0x100024e0", "call LegoFile::ReadString (FUNCTION)"]]}, {"both": [["0x10033db2", "mov ecx, dword ptr [ebp - 0x18]", "0x100024e5"]]}, {"orig": [["0x10033db5", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10033dba", "mov ecx, esi"], ["0x10033dbc", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033dc1", "jmp 0x6f"], ["0x10033dc3", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10033dc6", "jmp MxString::~MxString (FUNCTION)"], ["0x10033dcb", "mov ecx, esi"], ["0x10033dcd", "mov eax, dword ptr [esi]"]], "recomp": [["0x100024e8", "push 4"], ["0x100024ea", "mov edx, dword ptr [ebp - 0x10]"], ["0x100024ed", "mov edi, dword ptr [ecx + 4]"], ["0x100024f0", "mov ecx, dword ptr [ebp + 8]"], ["0x100024f3", "mov eax, dword ptr [edx + 0x178]"], ["0x100024f9", "push eax"], ["0x100024fa", "call edi"], ["0x100024fc", "push 4"], ["0x100024fe", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002501", "mov eax, dword ptr [ecx + 0x178]"], ["0x10002507", "mov ecx, dword ptr [ebp + 8]"], ["0x1000250a", "add eax, 4"], ["0x1000250d", "push eax"], ["0x1000250e", "call edi"], ["0x10002510", "push 4"], ["0x10002512", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002515", "mov eax, dword ptr [ecx + 0x178]"], ["0x1000251b", "mov ecx, dword ptr [ebp + 8]"], ["0x1000251e", "add eax, 8"], ["0x10002521", "push eax"], ["0x10002522", "call edi"], ["0x10002524", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002527", "mov ecx, dword ptr [ebp + 8]"], ["0x1000252a", "add eax, 0x188"], ["0x1000252f", "push eax"], ["0x10002530", "call LegoFile::ReadVector3 (FUNCTION)"], ["0x10002535", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002538", "mov ecx, dword ptr [ebp + 8]"], ["0x1000253b", "add eax, 0x19c"], ["0x10002540", "push eax"], ["0x10002541", "call LegoFile::ReadVector3 (FUNCTION)"], ["0x10002546", "mov ecx, dword ptr [ebp + 8]"], ["0x10002549", "call esi"], ["0x1000254b", "test al, al"], ["0x1000254d", "je 0x94"], ["0x10002553", "sub esp, 0x10"], ["0x10002556", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002559", "add eax, 0x1bc"], ["0x1000255e", "mov dword ptr [ebp - 0x14], esp"], ["0x10002561", "push eax"], ["0x10002562", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10002565", "call MxString::MxString (FUNCTION)"], ["0x1000256a", "mov dword ptr [ebp - 4], 6"], ["0x10002571", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10002578", "mov ecx, dword ptr [ebp + 8]"], ["0x1000257b", "call LegoFile::FUN_10006030 (FUNCTION)"], ["0x10002580", "sub esp, 0x14"], ["0x10002583", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002586", "add eax, 0x1cc"], ["0x1000258b", "mov dword ptr [ebp - 0x20], esp"], ["0x1000258e", "push eax"], ["0x1000258f", "mov ecx, dword ptr [ebp - 0x20]"], ["0x10002592", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10002597", "mov ecx, dword ptr [ebp + 8]"], ["0x1000259a", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x1000259f", "sub esp, 0x14"], ["0x100025a2", "mov eax, dword ptr [ebp - 0x10]"], ["0x100025a5", "add eax, 0x1e0"], ["0x100025aa", "mov dword ptr [ebp - 0x1c], esp"], ["0x100025ad", "push eax"], ["0x100025ae", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x100025b1", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x100025b6", "mov ecx, dword ptr [ebp + 8]"], ["0x100025b9", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x100025be", "sub esp, 0x14"], ["0x100025c1", "mov eax, dword ptr [ebp - 0x10]"], ["0x100025c4", "add eax, 0x1f4"], ["0x100025c9", "mov dword ptr [ebp - 0x24], esp"], ["0x100025cc", "push eax"], ["0x100025cd", "mov ecx, dword ptr [ebp - 0x24]"], ["0x100025d0", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x100025d5", "mov ecx, dword ptr [ebp + 8]"], ["0x100025d8", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x100025dd", "jmp 0x59"], ["0x100025df", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100025e2", "jmp MxString::~MxString (FUNCTION)"], ["0x100025e7", "mov ecx, dword ptr [ebp + 8]"], ["0x100025ea", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x10033dcf", "call dword ptr [eax + 0x18]", "0x100025ed"], ["0x10033dd2", "test al, al", "0x100025f0"]]}, {"orig": [["0x10033dd4", "je 0x5c"], ["0x10033dd6", "lea eax, [edi + 0xbc]"], ["0x10033ddc", "mov ecx, esi"]], "recomp": [["0x100025f2", "je 0x44"], ["0x100025f4", "mov eax, dword ptr [ebp - 0x10]"], ["0x100025f7", "mov ecx, dword ptr [ebp + 8]"], ["0x100025fa", "add eax, 0x1bc"]]}, {"both": [["0x10033dde", "push eax", "0x100025ff"], ["0x10033ddf", "call LegoFile::ReadString (FUNCTION)", "0x10002600"]]}, {"orig": [["0x10033de4", "mov eax, dword ptr [esi]"], ["0x10033de6", "push 4"], ["0x10033de8", "mov ecx, dword ptr [edi + 0xd0]"], ["0x10033dee", "mov ebx, dword ptr [eax + 4]"], ["0x10033df1", "push ecx"], ["0x10033df2", "mov ecx, esi"], ["0x10033df4", "call ebx"], ["0x10033df6", "mov eax, dword ptr [edi + 0xd0]"], ["0x10033dfc", "push 4"], ["0x10033dfe", "add eax, 4"], ["0x10033e01", "mov ecx, esi"], ["0x10033e03", "push eax"], ["0x10033e04", "call ebx"], ["0x10033e06", "mov eax, dword ptr [edi + 0xd0]"], ["0x10033e0c", "push 4"], ["0x10033e0e", "add eax, 8"], ["0x10033e11", "mov ecx, esi"], ["0x10033e13", "push eax"], ["0x10033e14", "call ebx"], ["0x10033e16", "lea ecx, [edi + 0xe0]"], ["0x10033e1c", "push ecx"], ["0x10033e1d", "mov ecx, esi"]], "recomp": [["0x10002605", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002608", "mov ecx, dword ptr [ebp + 8]"], ["0x1000260b", "add eax, 0x1cc"], ["0x10002610", "push eax"]]}, {"both": [["0x10033e1f", "call LegoFile::ReadVector3 (FUNCTION)", "0x10002611"]]}, {"orig": [["0x10033e24", "lea ecx, [edi + 0xf4]"], ["0x10033e2a", "push ecx"], ["0x10033e2b", "mov ecx, esi"]], "recomp": [["0x10002616", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002619", "mov ecx, dword ptr [ebp + 8]"], ["0x1000261c", "add eax, 0x1e0"], ["0x10002621", "push eax"]]}, {"both": [["0x10033e2d", "call LegoFile::ReadVector3 (FUNCTION)", "0x10002622"]]}, {"orig": [["0x10033e32", "mov ecx, esi"], ["0x10033e34", "call dword ptr [ebp - 0x14]"], ["0x10033e37", "test al, al"], ["0x10033e39", "je 0x92"], ["0x10033e3f", "sub esp, 0x10"], ["0x10033e42", "lea eax, [edi + 0x108]"], ["0x10033e48", "mov dword ptr [ebp - 0x10], esp"], ["0x10033e4b", "push eax"], ["0x10033e4c", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10033e4f", "call MxString::MxString (FUNCTION)"], ["0x10033e54", "mov dword ptr [ebp - 4], 4"], ["0x10033e5b", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10033e62", "mov ecx, esi"], ["0x10033e64", "call LegoFile::FUN_10006030 (FUNCTION)"], ["0x10033e69", "sub esp, 0x14"], ["0x10033e6c", "lea eax, [edi + 0x118]"], ["0x10033e72", "mov dword ptr [ebp - 0x20], esp"], ["0x10033e75", "push eax"], ["0x10033e76", "mov ecx, dword ptr [ebp - 0x20]"], ["0x10033e79", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10033e7e", "mov ecx, esi"], ["0x10033e80", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033e85", "sub esp, 0x14"], ["0x10033e88", "lea eax, [edi + 0x12c]"], ["0x10033e8e", "mov dword ptr [ebp - 0x1c], esp"], ["0x10033e91", "push eax"], ["0x10033e92", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x10033e95", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10033e9a", "mov ecx, esi"], ["0x10033e9c", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033ea1", "sub esp, 0x14"], ["0x10033ea4", "lea eax, [edi + 0x140]"], ["0x10033eaa", "mov dword ptr [ebp - 0x18], esp"], ["0x10033ead", "push eax"], ["0x10033eae", "mov ecx, dword ptr [ebp - 0x18]"], ["0x10033eb1", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10033eb6", "mov ecx, esi"], ["0x10033eb8", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10033ebd", "jmp 0x79"], ["0x10033ebf", "mov eax, <OFFSET10>"], ["0x10033ec4", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10033ec9", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10033ecc", "jmp MxString::~MxString (FUNCTION)"], ["0x10033ed1", "mov ecx, esi"], ["0x10033ed3", "mov eax, dword ptr [esi]"], ["0x10033ed5", "call dword ptr [eax + 0x18]"], ["0x10033ed8", "test al, al"], ["0x10033eda", "je 0x5c"], ["0x10033edc", "lea eax, [edi + 0x108]"], ["0x10033ee2", "mov ecx, esi"], ["0x10033ee4", "push eax"], ["0x10033ee5", "call LegoFile::ReadString (FUNCTION)"], ["0x10033eea", "mov eax, dword ptr [esi]"], ["0x10033eec", "push 4"], ["0x10033eee", "mov ecx, dword ptr [edi + 0x11c]"], ["0x10033ef4", "mov ebx, dword ptr [eax + 4]"], ["0x10033ef7", "push ecx"], ["0x10033ef8", "mov ecx, esi"], ["0x10033efa", "call ebx"], ["0x10033efc", "mov eax, dword ptr [edi + 0x11c]"], ["0x10033f02", "push 4"], ["0x10033f04", "add eax, 4"], ["0x10033f07", "mov ecx, esi"], ["0x10033f09", "push eax"], ["0x10033f0a", "call ebx"], ["0x10033f0c", "mov eax, dword ptr [edi + 0x11c]"], ["0x10033f12", "push 4"], ["0x10033f14", "add eax, 8"], ["0x10033f17", "mov ecx, esi"], ["0x10033f19", "push eax"], ["0x10033f1a", "call ebx"], ["0x10033f1c", "lea ecx, [edi + 0x12c]"], ["0x10033f22", "push ecx"], ["0x10033f23", "mov ecx, esi"]], "recomp": [["0x10002627", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000262a", "mov ecx, dword ptr [ebp + 8]"], ["0x1000262d", "add eax, 0x1f4"], ["0x10002632", "push eax"]]}, {"both": [["0x10033f25", "call LegoFile::ReadVector3 (FUNCTION)", "0x10002633"]]}, {"orig": [["0x10033f2a", "lea ecx, [edi + 0x140]"], ["0x10033f30", "push ecx"], ["0x10033f31", "mov ecx, esi"], ["0x10033f33", "call LegoFile::ReadVector3 (FUNCTION)"], ["0x10033f38", "push esi"], ["0x10033f39", "lea ecx, [edi + 0x164]"]], "recomp": [["0x10002638", "mov eax, dword ptr [ebp + 8]"], ["0x1000263b", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000263e", "push eax"], ["0x1000263f", "add ecx, 0x210"]]}, {"both": [["0x10033f3f", "call Act1State::NamedPlane::Serialize (FUNCTION)", "0x10002645"]]}, {"orig": [["0x10033f44", "push esi"], ["0x10033f45", "lea ecx, [edi + 0x1bc]"], ["0x10033f4b", "call Act1State::NamedPlane::Serialize (FUNCTION)"], ["0x10033f50", "push esi"], ["0x10033f51", "lea ecx, [edi + 0x210]"], ["0x10033f57", "call Act1State::NamedPlane::Serialize (FUNCTION)"], ["0x10033f5c", "mov ecx, esi"], ["0x10033f5e", "call dword ptr [ebp - 0x14]"], ["0x10033f61", "test al, al"], ["0x10033f63", "jne 0x1fe"], ["0x10033f69", "mov ecx, esi"], ["0x10033f6b", "mov eax, dword ptr [esi]"], ["0x10033f6d", "call dword ptr [eax + 0x18]"], ["0x10033f70", "test al, al"], ["0x10033f72", "je 0x40f"], ["0x10033f78", "mov eax, dword ptr [edi + 0x110]"], ["0x10033f7e", "mov edx, '' (STRING)"], ["0x10033f83", "mov cl, byte ptr [eax]"], ["0x10033f85", "cmp cl, byte ptr [edx]"]], "recomp": [["0x1000264a", "mov ecx, dword ptr [ebp + 8]"], ["0x1000264d", "call esi"], ["0x1000264f", "test al, al"], ["0x10002651", "je 0x34c"], ["0x10002657", "push '' (STRING)"], ["0x1000265c", "lea ecx, [ebp - 0x30]"], ["0x1000265f", "call MxString::MxString (FUNCTION)"], ["0x10002664", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002667", "mov eax, dword ptr [eax + 8]"], ["0x1000266a", "mov dword ptr [ebp - 4], 7"], ["0x10002671", "mov edx, dword ptr [ecx + 0x110]"], ["0x10002677", "mov cl, byte ptr [edx]"], ["0x10002679", "cmp cl, byte ptr [eax]"]]}, {"both": [["0x10033f87", "jne 0x1a", "0x1000267b"], ["0x10033f89", "or cl, cl", "0x1000267d"], ["0x10033f8b", "je 0x12", "0x1000267f"]]}, {"orig": [["0x10033f8d", "mov cl, byte ptr [eax + 1]"], ["0x10033f90", "cmp cl, byte ptr [edx + 1]"]], "recomp": [["0x10002681", "mov cl, byte ptr [edx + 1]"], ["0x10002684", "cmp cl, byte ptr [eax + 1]"]]}, {"both": [["0x10033f93", "jne 0xe", "0x10002687"]]}, {"orig": [], "recomp": [["0x10002689", "add edx, 2"]]}, {"both": [["0x10033f95", "add eax, 2", "0x1000268c"]]}, {"orig": [["0x10033f98", "add edx, 2"]], "recomp": []}, {"both": [["0x10033f9b", "or cl, cl", "0x1000268f"], ["0x10033f9d", "jne -0x1c", "0x10002691"], ["0x10033f9f", "xor eax, eax", "0x10002693"], ["0x10033fa1", "jmp 0x5", "0x10002695"], ["0x10033fa3", "sbb eax, eax", "0x10002697"], ["0x10033fa5", "sbb eax, -1", "0x10002699"]]}, {"orig": [["0x10033fa8", "test eax, eax"], ["0x10033faa", "je 0x57"], ["0x10033fac", "push esi"], ["0x10033fad", "call ReadNamedTexture (FUNCTION)"], ["0x10033fb2", "add esp, 4"], ["0x10033fb5", "mov dword ptr [edi + 0x154], eax"], ["0x10033fbb", "test eax, eax"], ["0x10033fbd", "jne 0xa"], ["0x10033fbf", "mov eax, 0xffffffff"], ["0x10033fc4", "jmp 0x3c0"], ["0x10033fc9", "push esi"], ["0x10033fca", "call ReadNamedTexture (FUNCTION)"], ["0x10033fcf", "add esp, 4"], ["0x10033fd2", "mov dword ptr [edi + 0x158], eax"], ["0x10033fd8", "test eax, eax"], ["0x10033fda", "jne 0xa"], ["0x10033fdc", "mov eax, 0xffffffff"], ["0x10033fe1", "jmp 0x3a3"], ["0x10033fe6", "push esi"], ["0x10033fe7", "call ReadNamedTexture (FUNCTION)"], ["0x10033fec", "add esp, 4"], ["0x10033fef", "mov dword ptr [edi + 0x15c], eax"], ["0x10033ff5", "test eax, eax"], ["0x10033ff7", "jne 0xa"], ["0x10033ff9", "mov eax, 0xffffffff"], ["0x10033ffe", "jmp 0x386"], ["0x10034003", "mov eax, dword ptr [edi + 0x16c]"], ["0x10034009", "mov edx, '' (STRING)"], ["0x1003400e", "mov cl, byte ptr [eax]"], ["0x10034010", "cmp cl, byte ptr [edx]"]], "recomp": [["0x1000269c", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100026a3", "cmp al, 1"], ["0x100026a5", "sbb eax, eax"], ["0x100026a7", "inc eax"], ["0x100026a8", "mov dword ptr [ebp - 0x14], eax"], ["0x100026ab", "call <OFFSET12>"], ["0x100026b0", "cmp dword ptr [ebp - 0x14], 0"], ["0x100026b4", "je 0x7e"], ["0x100026b6", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100026b9", "mov eax, dword ptr [ecx + 0x154]"], ["0x100026bf", "test eax, eax"], ["0x100026c1", "je 0xc"], ["0x100026c3", "push eax"], ["0x100026c4", "mov eax, dword ptr [ebp + 8]"], ["0x100026c7", "push eax"], ["0x100026c8", "call WriteNamedTexture (FUNCTION)"], ["0x100026cd", "jmp 0xe"], ["0x100026cf", "push 'chwind.gif' (STRING)"], ["0x100026d4", "mov eax, dword ptr [ebp + 8]"], ["0x100026d7", "push eax"], ["0x100026d8", "call FUN_1003f540 (FUNCTION)"], ["0x100026dd", "add esp, 8"], ["0x100026e0", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100026e3", "mov eax, dword ptr [ecx + 0x158]"], ["0x100026e9", "test eax, eax"], ["0x100026eb", "je 0xc"], ["0x100026ed", "push eax"], ["0x100026ee", "mov eax, dword ptr [ebp + 8]"], ["0x100026f1", "push eax"], ["0x100026f2", "call WriteNamedTexture (FUNCTION)"], ["0x100026f7", "jmp 0xe"], ["0x100026f9", "push 'chjetl.gif' (STRING)"], ["0x100026fe", "mov eax, dword ptr [ebp + 8]"], ["0x10002701", "push eax"], ["0x10002702", "call FUN_1003f540 (FUNCTION)"], ["0x10002707", "add esp, 8"], ["0x1000270a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000270d", "mov eax, dword ptr [ecx + 0x15c]"], ["0x10002713", "test eax, eax"], ["0x10002715", "je 0xc"], ["0x10002717", "push eax"], ["0x10002718", "mov eax, dword ptr [ebp + 8]"], ["0x1000271b", "push eax"], ["0x1000271c", "call WriteNamedTexture (FUNCTION)"], ["0x10002721", "jmp 0xe"], ["0x10002723", "push 'chjetr.gif' (STRING)"], ["0x10002728", "mov eax, dword ptr [ebp + 8]"], ["0x1000272b", "push eax"], ["0x1000272c", "call FUN_1003f540 (FUNCTION)"], ["0x10002731", "add esp, 8"], ["0x10002734", "push '' (STRING)"], ["0x10002739", "lea ecx, [ebp - 0x30]"], ["0x1000273c", "call MxString::MxString (FUNCTION)"], ["0x10002741", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002744", "mov eax, dword ptr [eax + 8]"], ["0x10002747", "mov dword ptr [ebp - 4], 8"], ["0x1000274e", "mov ecx, dword ptr [ecx + 0x16c]"], ["0x10002754", "mov dl, byte ptr [ecx]"], ["0x10002756", "cmp dl, byte ptr [eax]"]]}, {"both": [["0x10034012", "jne 0x1a", "0x10002758"]]}, {"orig": [["0x10034014", "or cl, cl"]], "recomp": [["0x1000275a", "or dl, dl"]]}, {"both": [["0x10034016", "je 0x12", "0x1000275c"]]}, {"orig": [["0x10034018", "mov cl, byte ptr [eax + 1]"], ["0x1003401b", "cmp cl, byte ptr [edx + 1]"]], "recomp": [["0x1000275e", "mov dl, byte ptr [ecx + 1]"], ["0x10002761", "cmp dl, byte ptr [eax + 1]"]]}, {"both": [["0x1003401e", "jne 0xe", "0x10002764"]]}, {"orig": [], "recomp": [["0x10002766", "add ecx, 2"]]}, {"both": [["0x10034020", "add eax, 2", "0x10002769"]]}, {"orig": [["0x10034023", "add edx, 2"], ["0x10034026", "or cl, cl"]], "recomp": [["0x1000276c", "or dl, dl"]]}, {"both": [["0x10034028", "jne -0x1c", "0x1000276e"], ["0x1003402a", "xor eax, eax", "0x10002770"], ["0x1003402c", "jmp 0x5", "0x10002772"], ["0x1003402e", "sbb eax, eax", "0x10002774"], ["0x10034030", "sbb eax, -1", "0x10002776"]]}, {"orig": [["0x10034033", "test eax, eax"], ["0x10034035", "je 0x3a"], ["0x10034037", "push esi"], ["0x10034038", "call ReadNamedTexture (FUNCTION)"], ["0x1003403d", "add esp, 4"], ["0x10034040", "mov dword ptr [edi + 0x1b0], eax"], ["0x10034046", "test eax, eax"], ["0x10034048", "jne 0xa"], ["0x1003404a", "mov eax, 0xffffffff"], ["0x1003404f", "jmp 0x335"], ["0x10034054", "push esi"], ["0x10034055", "call ReadNamedTexture (FUNCTION)"], ["0x1003405a", "add esp, 4"], ["0x1003405d", "mov dword ptr [edi + 0x1b4], eax"], ["0x10034063", "test eax, eax"], ["0x10034065", "jne 0xa"], ["0x10034067", "mov eax, 0xffffffff"], ["0x1003406c", "jmp 0x318"], ["0x10034071", "mov eax, dword ptr [edi + 0x1c4]"], ["0x10034077", "mov edx, '' (STRING)"], ["0x1003407c", "mov cl, byte ptr [eax]"], ["0x1003407e", "cmp cl, byte ptr [edx]"]], "recomp": [["0x10002779", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10002780", "cmp al, 1"], ["0x10002782", "sbb eax, eax"], ["0x10002784", "inc eax"], ["0x10002785", "mov dword ptr [ebp - 0x14], eax"], ["0x10002788", "call <OFFSET18>"], ["0x1000278d", "cmp dword ptr [ebp - 0x14], 0"], ["0x10002791", "je 0x54"], ["0x10002793", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002796", "mov eax, dword ptr [ecx + 0x1b0]"], ["0x1000279c", "test eax, eax"], ["0x1000279e", "je 0xc"], ["0x100027a0", "push eax"], ["0x100027a1", "mov eax, dword ptr [ebp + 8]"], ["0x100027a4", "push eax"], ["0x100027a5", "call WriteNamedTexture (FUNCTION)"], ["0x100027aa", "jmp 0xe"], ["0x100027ac", "push 'jsfrnt.gif' (STRING)"], ["0x100027b1", "mov eax, dword ptr [ebp + 8]"], ["0x100027b4", "push eax"], ["0x100027b5", "call FUN_1003f540 (FUNCTION)"], ["0x100027ba", "add esp, 8"], ["0x100027bd", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100027c0", "mov eax, dword ptr [ecx + 0x1b4]"], ["0x100027c6", "test eax, eax"], ["0x100027c8", "je 0xc"], ["0x100027ca", "push eax"], ["0x100027cb", "mov eax, dword ptr [ebp + 8]"], ["0x100027ce", "push eax"], ["0x100027cf", "call WriteNamedTexture (FUNCTION)"], ["0x100027d4", "jmp 0xe"], ["0x100027d6", "push 'jswnsh.gif' (STRING)"], ["0x100027db", "mov eax, dword ptr [ebp + 8]"], ["0x100027de", "push eax"], ["0x100027df", "call FUN_1003f540 (FUNCTION)"], ["0x100027e4", "add esp, 8"], ["0x100027e7", "push '' (STRING)"], ["0x100027ec", "lea ecx, [ebp - 0x30]"], ["0x100027ef", "call MxString::MxString (FUNCTION)"], ["0x100027f4", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100027f7", "mov eax, dword ptr [eax + 8]"], ["0x100027fa", "mov dword ptr [ebp - 4], 9"], ["0x10002801", "mov ecx, dword ptr [ecx + 0x1c4]"], ["0x10002807", "mov dl, byte ptr [ecx]"], ["0x10002809", "cmp dl, byte ptr [eax]"]]}, {"both": [["0x10034080", "jne 0x1a", "0x1000280b"]]}, {"orig": [["0x10034082", "or cl, cl"]], "recomp": [["0x1000280d", "or dl, dl"]]}, {"both": [["0x10034084", "je 0x12", "0x1000280f"]]}, {"orig": [["0x10034086", "mov cl, byte ptr [eax + 1]"], ["0x10034089", "cmp cl, byte ptr [edx + 1]"]], "recomp": [["0x10002811", "mov dl, byte ptr [ecx + 1]"], ["0x10002814", "cmp dl, byte ptr [eax + 1]"]]}, {"both": [["0x1003408c", "jne 0xe", "0x10002817"]]}, {"orig": [], "recomp": [["0x10002819", "add ecx, 2"]]}, {"both": [["0x1003408e", "add eax, 2", "0x1000281c"]]}, {"orig": [["0x10034091", "add edx, 2"], ["0x10034094", "or cl, cl"]], "recomp": [["0x1000281f", "or dl, dl"]]}, {"both": [["0x10034096", "jne -0x1c", "0x10002821"], ["0x10034098", "xor eax, eax", "0x10002823"], ["0x1003409a", "jmp 0x5", "0x10002825"], ["0x1003409c", "sbb eax, eax", "0x10002827"], ["0x1003409e", "sbb eax, -1", "0x10002829"]]}, {"orig": [["0x100340a1", "test eax, eax"], ["0x100340a3", "je 0x1d"], ["0x100340a5", "push esi"], ["0x100340a6", "call ReadNamedTexture (FUNCTION)"], ["0x100340ab", "add esp, 4"], ["0x100340ae", "mov dword ptr [edi + 0x208], eax"], ["0x100340b4", "test eax, eax"], ["0x100340b6", "jne 0xa"], ["0x100340b8", "mov eax, 0xffffffff"], ["0x100340bd", "jmp 0x2c7"], ["0x100340c2", "mov eax, dword ptr [edi + 0x218]"], ["0x100340c8", "mov edx, '' (STRING)"], ["0x100340cd", "mov cl, byte ptr [eax]"], ["0x100340cf", "cmp cl, byte ptr [edx]"]], "recomp": [["0x1000282c", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10002833", "cmp al, 1"], ["0x10002835", "sbb eax, eax"], ["0x10002837", "inc eax"], ["0x10002838", "mov dword ptr [ebp - 0x14], eax"], ["0x1000283b", "call <OFFSET21>"], ["0x10002840", "cmp dword ptr [ebp - 0x14], 0"], ["0x10002844", "je 0x2a"], ["0x10002846", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002849", "mov eax, dword ptr [ecx + 0x208]"], ["0x1000284f", "test eax, eax"], ["0x10002851", "je 0xc"], ["0x10002853", "push eax"], ["0x10002854", "mov eax, dword ptr [ebp + 8]"], ["0x10002857", "push eax"], ["0x10002858", "call WriteNamedTexture (FUNCTION)"], ["0x1000285d", "jmp 0xe"], ["0x1000285f", "push 'dbfrfn.gif' (STRING)"], ["0x10002864", "mov eax, dword ptr [ebp + 8]"], ["0x10002867", "push eax"], ["0x10002868", "call FUN_1003f540 (FUNCTION)"], ["0x1000286d", "add esp, 8"], ["0x10002870", "push '' (STRING)"], ["0x10002875", "lea ecx, [ebp - 0x30]"], ["0x10002878", "call MxString::MxString (FUNCTION)"], ["0x1000287d", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002880", "mov eax, dword ptr [eax + 8]"], ["0x10002883", "mov dword ptr [ebp - 4], 0xa"], ["0x1000288a", "mov ecx, dword ptr [ecx + 0x218]"], ["0x10002890", "mov dl, byte ptr [ecx]"], ["0x10002892", "cmp dl, byte ptr [eax]"]]}, {"both": [["0x100340d1", "jne 0x1a", "0x10002894"]]}, {"orig": [["0x100340d3", "or cl, cl"]], "recomp": [["0x10002896", "or dl, dl"]]}, {"both": [["0x100340d5", "je 0x12", "0x10002898"]]}, {"orig": [["0x100340d7", "mov cl, byte ptr [eax + 1]"], ["0x100340da", "cmp cl, byte ptr [edx + 1]"]], "recomp": [["0x1000289a", "mov dl, byte ptr [ecx + 1]"], ["0x1000289d", "cmp dl, byte ptr [eax + 1]"]]}, {"both": [["0x100340dd", "jne 0xe", "0x100028a0"]]}, {"orig": [], "recomp": [["0x100028a2", "add ecx, 2"]]}, {"both": [["0x100340df", "add eax, 2", "0x100028a5"]]}, {"orig": [["0x100340e2", "add edx, 2"], ["0x100340e5", "or cl, cl"]], "recomp": [["0x100028a8", "or dl, dl"]]}, {"both": [["0x100340e7", "jne -0x1c", "0x100028aa"], ["0x100340e9", "xor eax, eax", "0x100028ac"], ["0x100340eb", "jmp 0x5", "0x100028ae"], ["0x100340ed", "sbb eax, eax", "0x100028b0"], ["0x100340ef", "sbb eax, -1", "0x100028b2"]]}, {"orig": [["0x100340f2", "test eax, eax"], ["0x100340f4", "je 0x57"], ["0x100340f6", "push esi"], ["0x100340f7", "call ReadNamedTexture (FUNCTION)"], ["0x100340fc", "add esp, 4"], ["0x100340ff", "mov dword ptr [edi + 0x25c], eax"], ["0x10034105", "test eax, eax"], ["0x10034107", "jne 0xa"], ["0x10034109", "mov eax, 0xffffffff"], ["0x1003410e", "jmp 0x276"], ["0x10034113", "push esi"], ["0x10034114", "call ReadNamedTexture (FUNCTION)"], ["0x10034119", "add esp, 4"], ["0x1003411c", "mov dword ptr [edi + 0x260], eax"], ["0x10034122", "test eax, eax"], ["0x10034124", "jne 0xa"], ["0x10034126", "mov eax, 0xffffffff"], ["0x1003412b", "jmp 0x259"], ["0x10034130", "push esi"], ["0x10034131", "call ReadNamedTexture (FUNCTION)"], ["0x10034136", "add esp, 4"], ["0x10034139", "mov dword ptr [edi + 0x264], eax"], ["0x1003413f", "test eax, eax"], ["0x10034141", "jne 0xa"], ["0x10034143", "mov eax, 0xffffffff"], ["0x10034148", "jmp 0x23c"], ["0x1003414d", "mov eax, dword ptr [esi]"]], "recomp": [["0x100028b5", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100028bc", "cmp al, 1"], ["0x100028be", "sbb eax, eax"], ["0x100028c0", "inc eax"], ["0x100028c1", "mov dword ptr [ebp - 0x14], eax"], ["0x100028c4", "call <OFFSET23>"], ["0x100028c9", "cmp dword ptr [ebp - 0x14], 0"], ["0x100028cd", "je 0x7e"], ["0x100028cf", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100028d2", "mov eax, dword ptr [ecx + 0x25c]"], ["0x100028d8", "test eax, eax"], ["0x100028da", "je 0xc"], ["0x100028dc", "push eax"], ["0x100028dd", "mov eax, dword ptr [ebp + 8]"], ["0x100028e0", "push eax"], ["0x100028e1", "call WriteNamedTexture (FUNCTION)"], ["0x100028e6", "jmp 0xe"], ["0x100028e8", "push 'rcfrnt.gif' (STRING)"], ["0x100028ed", "mov eax, dword ptr [ebp + 8]"], ["0x100028f0", "push eax"], ["0x100028f1", "call FUN_1003f540 (FUNCTION)"], ["0x100028f6", "add esp, 8"], ["0x100028f9", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100028fc", "mov eax, dword ptr [ecx + 0x260]"], ["0x10002902", "test eax, eax"], ["0x10002904", "je 0xc"], ["0x10002906", "push eax"], ["0x10002907", "mov eax, dword ptr [ebp + 8]"], ["0x1000290a", "push eax"], ["0x1000290b", "call WriteNamedTexture (FUNCTION)"], ["0x10002910", "jmp 0xe"], ["0x10002912", "push 'rcback.gif' (STRING)"], ["0x10002917", "mov eax, dword ptr [ebp + 8]"], ["0x1000291a", "push eax"], ["0x1000291b", "call FUN_1003f540 (FUNCTION)"], ["0x10002920", "add esp, 8"], ["0x10002923", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002926", "mov eax, dword ptr [ecx + 0x264]"], ["0x1000292c", "test eax, eax"], ["0x1000292e", "je 0xc"], ["0x10002930", "push eax"], ["0x10002931", "mov eax, dword ptr [ebp + 8]"], ["0x10002934", "push eax"], ["0x10002935", "call WriteNamedTexture (FUNCTION)"], ["0x1000293a", "jmp 0xe"], ["0x1000293c", "push 'rctail.gif' (STRING)"], ["0x10002941", "mov eax, dword ptr [ebp + 8]"], ["0x10002944", "push eax"], ["0x10002945", "call FUN_1003f540 (FUNCTION)"], ["0x1000294a", "add esp, 8"], ["0x1000294d", "mov eax, dword ptr [ebp - 0x18]"], ["0x10002950", "mov esi, dword ptr [eax + 8]"]]}, {"both": [["0x1003414f", "push 2", "0x10002953"]]}, {"orig": [["0x10034151", "lea ecx, [edi + 0x10]"], ["0x10034154", "add edi, 0x22"], ["0x10034157", "mov ebx, dword ptr [eax + 4]"], ["0x1003415a", "push ecx"], ["0x1003415b", "mov ecx, esi"], ["0x1003415d", "call ebx"]], "recomp": [["0x10002955", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002958", "add eax, 0x10"], ["0x1000295b", "mov ecx, dword ptr [ebp + 8]"], ["0x1000295e", "push eax"], ["0x1000295f", "call esi"]]}, {"both": [["0x1003415f", "push 1", "0x10002961"]]}, {"orig": [["0x10034161", "push edi"], ["0x10034162", "jmp 0x21c"], ["0x10034167", "mov eax, dword ptr [edi + 0x110]"], ["0x1003416d", "mov edx, '' (STRING)"], ["0x10034172", "mov cl, byte ptr [eax]"], ["0x10034174", "cmp cl, byte ptr [edx]"], ["0x10034176", "jne 0x1a"], ["0x10034178", "or cl, cl"], ["0x1003417a", "je 0x12"], ["0x1003417c", "mov cl, byte ptr [eax + 1]"], ["0x1003417f", "cmp cl, byte ptr [edx + 1]"], ["0x10034182", "jne 0xe"], ["0x10034184", "add eax, 2"], ["0x10034187", "add edx, 2"], ["0x1003418a", "or cl, cl"], ["0x1003418c", "jne -0x1c"], ["0x1003418e", "xor eax, eax"], ["0x10034190", "jmp 0x5"], ["0x10034192", "sbb eax, eax"], ["0x10034194", "sbb eax, -1"], ["0x10034197", "test eax, eax"], ["0x10034199", "je 0x63"], ["0x1003419b", "mov eax, dword ptr [edi + 0x154]"], ["0x100341a1", "test eax, eax"], ["0x100341a3", "jne 0xd"], ["0x100341a5", "push 'chwind.gif' (STRING)"], ["0x100341aa", "push esi"], ["0x100341ab", "call FUN_1003f540 (FUNCTION)"], ["0x100341b0", "jmp 0x7"], ["0x100341b2", "push eax"], ["0x100341b3", "push esi"], ["0x100341b4", "call WriteNamedTexture (FUNCTION)"], ["0x100341b9", "add esp, 8"], ["0x100341bc", "mov eax, dword ptr [edi + 0x158]"], ["0x100341c2", "test eax, eax"], ["0x100341c4", "jne 0xd"], ["0x100341c6", "push 'chjetl.gif' (STRING)"], ["0x100341cb", "push esi"], ["0x100341cc", "call FUN_1003f540 (FUNCTION)"], ["0x100341d1", "jmp 0x7"], ["0x100341d3", "push eax"], ["0x100341d4", "push esi"], ["0x100341d5", "call WriteNamedTexture (FUNCTION)"], ["0x100341da", "add esp, 8"], ["0x100341dd", "mov eax, dword ptr [edi + 0x15c]"], ["0x100341e3", "test eax, eax"], ["0x100341e5", "jne 0xd"], ["0x100341e7", "push 'chjetr.gif' (STRING)"], ["0x100341ec", "push esi"], ["0x100341ed", "call FUN_1003f540 (FUNCTION)"], ["0x100341f2", "jmp 0x7"], ["0x100341f4", "push eax"], ["0x100341f5", "push esi"], ["0x100341f6", "call WriteNamedTexture (FUNCTION)"], ["0x100341fb", "add esp, 8"], ["0x100341fe", "mov eax, dword ptr [edi + 0x16c]"], ["0x10034204", "mov edx, '' (STRING)"], ["0x10034209", "mov cl, byte ptr [eax]"], ["0x1003420b", "cmp cl, byte ptr [edx]"], ["0x1003420d", "jne 0x1a"], ["0x1003420f", "or cl, cl"], ["0x10034211", "je 0x12"], ["0x10034213", "mov cl, byte ptr [eax + 1]"], ["0x10034216", "cmp cl, byte ptr [edx + 1]"], ["0x10034219", "jne 0xe"], ["0x1003421b", "add eax, 2"], ["0x1003421e", "add edx, 2"], ["0x10034221", "or cl, cl"], ["0x10034223", "jne -0x1c"], ["0x10034225", "xor eax, eax"], ["0x10034227", "jmp 0x5"], ["0x10034229", "sbb eax, eax"], ["0x1003422b", "sbb eax, -1"], ["0x1003422e", "test eax, eax"], ["0x10034230", "je 0x42"], ["0x10034232", "mov eax, dword ptr [edi + 0x1b0]"], ["0x10034238", "test eax, eax"], ["0x1003423a", "jne 0xd"], ["0x1003423c", "push 'jsfrnt.gif' (STRING)"], ["0x10034241", "push esi"], ["0x10034242", "call FUN_1003f540 (FUNCTION)"], ["0x10034247", "jmp 0x7"], ["0x10034249", "push eax"], ["0x1003424a", "push esi"], ["0x1003424b", "call WriteNamedTexture (FUNCTION)"], ["0x10034250", "add esp, 8"], ["0x10034253", "mov eax, dword ptr [edi + 0x1b4]"], ["0x10034259", "test eax, eax"], ["0x1003425b", "jne 0xd"], ["0x1003425d", "push 'jswnsh.gif' (STRING)"], ["0x10034262", "push esi"], ["0x10034263", "call FUN_1003f540 (FUNCTION)"], ["0x10034268", "jmp 0x7"], ["0x1003426a", "push eax"], ["0x1003426b", "push esi"], ["0x1003426c", "call WriteNamedTexture (FUNCTION)"], ["0x10034271", "add esp, 8"], ["0x10034274", "mov eax, dword ptr [edi + 0x1c4]"], ["0x1003427a", "mov edx, '' (STRING)"], ["0x1003427f", "mov cl, byte ptr [eax]"], ["0x10034281", "cmp cl, byte ptr [edx]"], ["0x10034283", "jne 0x1a"], ["0x10034285", "or cl, cl"], ["0x10034287", "je 0x12"], ["0x10034289", "mov cl, byte ptr [eax + 1]"], ["0x1003428c", "cmp cl, byte ptr [edx + 1]"], ["0x1003428f", "jne 0xe"], ["0x10034291", "add eax, 2"], ["0x10034294", "add edx, 2"], ["0x10034297", "or cl, cl"], ["0x10034299", "jne -0x1c"], ["0x1003429b", "xor eax, eax"], ["0x1003429d", "jmp 0x5"], ["0x1003429f", "sbb eax, eax"], ["0x100342a1", "sbb eax, -1"], ["0x100342a4", "test eax, eax"], ["0x100342a6", "je 0x21"], ["0x100342a8", "mov eax, dword ptr [edi + 0x208]"], ["0x100342ae", "test eax, eax"], ["0x100342b0", "jne 0xd"], ["0x100342b2", "push 'dbfrfn.gif' (STRING)"], ["0x100342b7", "push esi"], ["0x100342b8", "call FUN_1003f540 (FUNCTION)"], ["0x100342bd", "jmp 0x7"], ["0x100342bf", "push eax"], ["0x100342c0", "push esi"], ["0x100342c1", "call WriteNamedTexture (FUNCTION)"], ["0x100342c6", "add esp, 8"], ["0x100342c9", "mov eax, dword ptr [edi + 0x218]"], ["0x100342cf", "mov edx, '' (STRING)"], ["0x100342d4", "mov cl, byte ptr [eax]"], ["0x100342d6", "cmp cl, byte ptr [edx]"], ["0x100342d8", "jne 0x1a"], ["0x100342da", "or cl, cl"], ["0x100342dc", "je 0x12"], ["0x100342de", "mov cl, byte ptr [eax + 1]"], ["0x100342e1", "cmp cl, byte ptr [edx + 1]"], ["0x100342e4", "jne 0xe"], ["0x100342e6", "add eax, 2"], ["0x100342e9", "add edx, 2"], ["0x100342ec", "or cl, cl"], ["0x100342ee", "jne -0x1c"], ["0x100342f0", "xor eax, eax"], ["0x100342f2", "jmp 0x5"], ["0x100342f4", "sbb eax, eax"], ["0x100342f6", "sbb eax, -1"], ["0x100342f9", "test eax, eax"], ["0x100342fb", "je 0x63"], ["0x100342fd", "mov eax, dword ptr [edi + 0x25c]"], ["0x10034303", "test eax, eax"], ["0x10034305", "jne 0xd"], ["0x10034307", "push 'rcfrnt.gif' (STRING)"], ["0x1003430c", "push esi"], ["0x1003430d", "call FUN_1003f540 (FUNCTION)"], ["0x10034312", "jmp 0x7"], ["0x10034314", "push eax"], ["0x10034315", "push esi"], ["0x10034316", "call WriteNamedTexture (FUNCTION)"], ["0x1003431b", "add esp, 8"], ["0x1003431e", "mov eax, dword ptr [edi + 0x260]"], ["0x10034324", "test eax, eax"], ["0x10034326", "jne 0xd"], ["0x10034328", "push 'rcback.gif' (STRING)"], ["0x1003432d", "push esi"], ["0x1003432e", "call FUN_1003f540 (FUNCTION)"], ["0x10034333", "jmp 0x7"], ["0x10034335", "push eax"], ["0x10034336", "push esi"], ["0x10034337", "call WriteNamedTexture (FUNCTION)"], ["0x1003433c", "add esp, 8"], ["0x1003433f", "mov eax, dword ptr [edi + 0x264]"], ["0x10034345", "test eax, eax"], ["0x10034347", "jne 0xd"], ["0x10034349", "push 'rctail.gif' (STRING)"], ["0x1003434e", "push esi"], ["0x1003434f", "call FUN_1003f540 (FUNCTION)"], ["0x10034354", "jmp 0x7"], ["0x10034356", "push eax"], ["0x10034357", "push esi"], ["0x10034358", "call WriteNamedTexture (FUNCTION)"], ["0x1003435d", "add esp, 8"], ["0x10034360", "mov ax, word ptr [edi + 0x10]"], ["0x10034364", "push 2"], ["0x10034366", "mov word ptr [ebp - 0x12], ax"], ["0x1003436a", "lea eax, [ebp - 0x12]"], ["0x1003436d", "mov ecx, dword ptr [esi]"], ["0x1003436f", "push eax"], ["0x10034370", "mov ebx, dword ptr [ecx + 8]"], ["0x10034373", "mov ecx, esi"], ["0x10034375", "call ebx"], ["0x10034377", "mov al, byte ptr [edi + 0x22]"], ["0x1003437a", "push 1"], ["0x1003437c", "mov byte ptr [ebp - 0x11], al"], ["0x1003437f", "lea eax, [ebp - 0x11]"], ["0x10034382", "push eax"], ["0x10034383", "mov ecx, esi"], ["0x10034385", "call ebx"]], "recomp": [["0x10002963", "mov eax, dword ptr [ebp - 0x10]"], ["0x10002966", "add eax, 0x22"], ["0x10002969", "mov ecx, dword ptr [ebp + 8]"], ["0x1000296c", "push eax"], ["0x1000296d", "call esi"]]}, {"both": [["0x10034387", "xor eax, eax", "0x1000296f"], ["0x10034389", "mov ecx, dword ptr [ebp - 0xc]", "0x10002971"], ["0x1003438c", "pop edi", "0x10002974"], ["0x1003438d", "mov dword ptr fs:[0], ecx", "0x10002975"], ["0x10034394", "pop esi", "0x1000297c"]]}, {"orig": [["0x10034395", "pop ebx"]], "recomp": []}, {"both": [["0x10034396", "mov esp, ebp", "0x1000297d"], ["0x10034398", "pop ebp", "0x1000297f"], ["0x10034399", "ret 4", "0x10002980"]]}, {"orig": [["0x1003439c", "int3 "], ["0x1003439d", "int3 "], ["0x1003439e", "int3 "], ["0x1003439f", "int3 "], ["0x100343a0", "mov eax, dword ptr [esp + 4]"], ["0x100343a4", "push esi"], ["0x100343a5", "lea esi, [ecx + 8]"], ["0x100343a8", "mov dword ptr [ecx], Vector2::`vftable' (VTABLE)"], ["0x100343ae", "mov dword ptr [ecx + 4], esi"], ["0x100343b1", "mov dword ptr [ecx], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x100343b7", "mov edx, dword ptr [eax + 4]"], ["0x100343ba", "mov eax, dword ptr [edx]"], ["0x100343bc", "mov dword ptr [esi], eax"], ["0x100343be", "mov eax, dword ptr [edx + 4]"], ["0x100343c1", "mov dword ptr [esi + 4], eax"], ["0x100343c4", "mov eax, ecx"], ["0x100343c6", "mov edx, dword ptr [edx + 8]"], ["0x100343c9", "mov dword ptr [esi + 8], edx"], ["0x100343cc", "pop esi"], ["0x100343cd", "ret 4"], ["0x100343d0", "sub esp, 4"], ["0x100343d3", "push ebx"], ["0x100343d4", "push esi"], ["0x100343d5", "push edi"], ["0x100343d6", "mov esi, ecx"], ["0x100343d8", "mov edi, dword ptr [esp + 0x18]"], ["0x100343dc", "push 4"], ["0x100343de", "mov eax, dword ptr [edi]"], ["0x100343e0", "mov dword ptr [esp + 0x10], eax"], ["0x100343e4", "lea eax, [esp + 0x10]"], ["0x100343e8", "mov ecx, dword ptr [esi]"], ["0x100343ea", "push eax"], ["0x100343eb", "mov ebx, dword ptr [ecx + 8]"], ["0x100343ee", "mov ecx, esi"], ["0x100343f0", "call ebx"], ["0x100343f2", "mov eax, dword ptr [edi + 4]"], ["0x100343f5", "push 4"], ["0x100343f7", "mov ecx, esi"], ["0x100343f9", "mov dword ptr [esp + 0x10], eax"], ["0x100343fd", "lea eax, [esp + 0x10]"], ["0x10034401", "push eax"], ["0x10034402", "call ebx"], ["0x10034404", "mov ecx, dword ptr [edi + 8]"], ["0x10034407", "push 4"], ["0x10034409", "mov dword ptr [esp + 0x10], ecx"], ["0x1003440d", "lea ecx, [esp + 0x10]"], ["0x10034411", "push ecx"], ["0x10034412", "mov ecx, esi"], ["0x10034414", "call ebx"], ["0x10034416", "mov eax, esi"], ["0x10034418", "pop edi"], ["0x10034419", "pop esi"], ["0x1003441a", "pop ebx"]], "recomp": [["0x10002983", "lea ecx, [ebp - 0x30]"], ["0x10002986", "jmp MxString::~MxString (FUNCTION)"], ["0x1000298b", "lea ecx, [ebp - 0x30]"], ["0x1000298e", "jmp MxString::~MxString (FUNCTION)"], ["0x10002993", "lea ecx, [ebp - 0x30]"], ["0x10002996", "jmp MxString::~MxString (FUNCTION)"], ["0x1000299b", "lea ecx, [ebp - 0x30]"], ["0x1000299e", "jmp MxString::~MxString (FUNCTION)"], ["0x100029a3", "mov ecx, dword ptr [ebp + 8]"], ["0x100029a6", "mov eax, dword ptr [ebp - 0x18]"], ["0x100029a9", "call dword ptr [eax + 0x18]"], ["0x100029ac", "test al, al"], ["0x100029ae", "je -0x41"], ["0x100029b0", "push '' (STRING)"], ["0x100029b5", "lea ecx, [ebp - 0x30]"], ["0x100029b8", "call MxString::MxString (FUNCTION)"], ["0x100029bd", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100029c0", "mov eax, dword ptr [eax + 8]"], ["0x100029c3", "mov dword ptr [ebp - 4], 0xb"], ["0x100029ca", "mov ecx, dword ptr [ecx + 0x110]"], ["0x100029d0", "mov dl, byte ptr [ecx]"], ["0x100029d2", "cmp dl, byte ptr [eax]"], ["0x100029d4", "jne 0x1a"], ["0x100029d6", "or dl, dl"], ["0x100029d8", "je 0x12"], ["0x100029da", "mov dl, byte ptr [ecx + 1]"], ["0x100029dd", "cmp dl, byte ptr [eax + 1]"], ["0x100029e0", "jne 0xe"], ["0x100029e2", "add ecx, 2"], ["0x100029e5", "add eax, 2"], ["0x100029e8", "or dl, dl"], ["0x100029ea", "jne -0x1c"], ["0x100029ec", "xor eax, eax"], ["0x100029ee", "jmp 0x5"], ["0x100029f0", "sbb eax, eax"], ["0x100029f2", "sbb eax, -1"], ["0x100029f5", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100029fc", "cmp al, 1"], ["0x100029fe", "sbb eax, eax"], ["0x10002a00", "inc eax"], ["0x10002a01", "mov dword ptr [ebp - 0x14], eax"], ["0x10002a04", "call <OFFSET27>"], ["0x10002a09", "cmp dword ptr [ebp - 0x14], 0"], ["0x10002a0d", "je 0x69"], ["0x10002a0f", "mov eax, dword ptr [ebp + 8]"], ["0x10002a12", "push eax"], ["0x10002a13", "call ReadNamedTexture (FUNCTION)"]]}, {"both": [["0x1003441b", "add esp, 4", "0x10002a18"]]}, {"orig": [["0x1003441e", "ret 0x14"], ["0x10034421", "int3 "], ["0x10034422", "int3 "], ["0x10034423", "int3 "], ["0x10034424", "int3 "], ["0x10034425", "int3 "], ["0x10034426", "int3 "], ["0x10034427", "int3 "], ["0x10034428", "int3 "], ["0x10034429", "int3 "], ["0x1003442a", "int3 "], ["0x1003442b", "int3 "], ["0x1003442c", "int3 "], ["0x1003442d", "int3 "], ["0x1003442e", "int3 "], ["0x1003442f", "int3 "], ["0x10034430", "push ebx"], ["0x10034431", "push esi"], ["0x10034432", "mov esi, dword ptr [esp + 0xc]"], ["0x10034436", "push edi"], ["0x10034437", "mov eax, dword ptr [ecx]"], ["0x10034439", "mov edi, ecx"], ["0x1003443b", "push 4"], ["0x1003443d", "mov ecx, dword ptr [esi + 4]"], ["0x10034440", "mov ebx, dword ptr [eax + 4]"], ["0x10034443", "push ecx"], ["0x10034444", "mov ecx, edi"], ["0x10034446", "call ebx"], ["0x10034448", "mov eax, dword ptr [esi + 4]"], ["0x1003444b", "push 4"], ["0x1003444d", "add eax, 4"], ["0x10034450", "mov ecx, edi"], ["0x10034452", "push eax"], ["0x10034453", "call ebx"], ["0x10034455", "mov eax, dword ptr [esi + 4]"], ["0x10034458", "push 4"], ["0x1003445a", "add eax, 8"], ["0x1003445d", "mov ecx, edi"], ["0x1003445f", "push eax"], ["0x10034460", "call ebx"], ["0x10034462", "mov eax, edi"], ["0x10034464", "pop edi"], ["0x10034465", "pop esi"], ["0x10034466", "pop ebx"], ["0x10034467", "ret 4"], ["0x1003446a", "int3 "], ["0x1003446b", "int3 "], ["0x1003446c", "int3 "], ["0x1003446d", "int3 "], ["0x1003446e", "int3 "], ["0x1003446f", "int3 "], ["0x10034470", "sub esp, 4"], ["0x10034473", "push ebx"], ["0x10034474", "push esi"], ["0x10034475", "mov eax, dword ptr [ecx]"], ["0x10034477", "push edi"], ["0x10034478", "mov esi, ecx"], ["0x1003447a", "push 2"], ["0x1003447c", "mov edi, dword ptr [eax + 4]"], ["0x1003447f", "lea ecx, [esp + 0x12]"], ["0x10034483", "push ecx"], ["0x10034484", "mov ecx, esi"], ["0x10034486", "call edi"], ["0x10034488", "movsx eax, word ptr [esp + 0xe]"]], "recomp": [["0x10002a1b", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002a1e", "test eax, eax"], ["0x10002a20", "mov dword ptr [ecx + 0x154], eax"], ["0x10002a26", "jne 0xa"], ["0x10002a28", "mov eax, 0xffffffff"], ["0x10002a2d", "jmp -0xc1"], ["0x10002a32", "mov eax, dword ptr [ebp + 8]"], ["0x10002a35", "push eax"], ["0x10002a36", "call ReadNamedTexture (FUNCTION)"], ["0x10002a3b", "add esp, 4"], ["0x10002a3e", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002a41", "test eax, eax"], ["0x10002a43", "mov dword ptr [ecx + 0x158], eax"], ["0x10002a49", "jne 0xa"], ["0x10002a4b", "mov eax, 0xffffffff"], ["0x10002a50", "jmp -0xe4"], ["0x10002a55", "mov eax, dword ptr [ebp + 8]"], ["0x10002a58", "push eax"], ["0x10002a59", "call ReadNamedTexture (FUNCTION)"], ["0x10002a5e", "add esp, 4"], ["0x10002a61", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002a64", "test eax, eax"], ["0x10002a66", "mov dword ptr [ecx + 0x15c], eax"], ["0x10002a6c", "jne 0xa"], ["0x10002a6e", "mov eax, 0xffffffff"], ["0x10002a73", "jmp -0x107"], ["0x10002a78", "push '' (STRING)"], ["0x10002a7d", "lea ecx, [ebp - 0x30]"], ["0x10002a80", "call MxString::MxString (FUNCTION)"], ["0x10002a85", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002a88", "mov eax, dword ptr [eax + 8]"], ["0x10002a8b", "mov dword ptr [ebp - 4], 0xc"], ["0x10002a92", "mov ecx, dword ptr [ecx + 0x16c]"], ["0x10002a98", "mov dl, byte ptr [ecx]"], ["0x10002a9a", "cmp dl, byte ptr [eax]"], ["0x10002a9c", "jne 0x1a"], ["0x10002a9e", "or dl, dl"], ["0x10002aa0", "je 0x12"], ["0x10002aa2", "mov dl, byte ptr [ecx + 1]"], ["0x10002aa5", "cmp dl, byte ptr [eax + 1]"], ["0x10002aa8", "jne 0xe"], ["0x10002aaa", "add ecx, 2"], ["0x10002aad", "add eax, 2"], ["0x10002ab0", "or dl, dl"], ["0x10002ab2", "jne -0x1c"], ["0x10002ab4", "xor eax, eax"], ["0x10002ab6", "jmp 0x5"], ["0x10002ab8", "sbb eax, eax"], ["0x10002aba", "sbb eax, -1"], ["0x10002abd", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10002ac4", "cmp al, 1"], ["0x10002ac6", "sbb eax, eax"]]}, {"both": [["0x1003448d", "inc eax", "0x10002ac8"]]}, {"orig": [["0x1003448e", "push eax"], ["0x1003448f", "call ??2@YAPAXI@Z (FUNCTION)"]], "recomp": [["0x10002ac9", "mov dword ptr [ebp - 0x14], eax"], ["0x10002acc", "call <OFFSET29>"], ["0x10002ad1", "cmp dword ptr [ebp - 0x14], 0"], ["0x10002ad5", "je 0x46"], ["0x10002ad7", "mov eax, dword ptr [ebp + 8]"], ["0x10002ada", "push eax"], ["0x10002adb", "call ReadNamedTexture (FUNCTION)"]]}, {"both": [["0x10034494", "add esp, 4", "0x10002ae0"]]}, {"orig": [["0x10034497", "mov ebx, eax"], ["0x10034499", "movsx ecx, word ptr [esp + 0xe]"], ["0x1003449e", "push ecx"], ["0x1003449f", "push ebx"], ["0x100344a0", "mov ecx, esi"], ["0x100344a2", "call edi"], ["0x100344a4", "movsx eax, word ptr [esp + 0xe]"], ["0x100344a9", "mov ecx, dword ptr [esp + 0x14]"], ["0x100344ad", "push ebx"], ["0x100344ae", "mov byte ptr [eax + ebx], 0"], ["0x100344b2", "call MxString::operator= (FUNCTION)"], ["0x100344b7", "push ebx"], ["0x100344b8", "call ??3@YAXPAX@Z (FUNCTION)"]], "recomp": [["0x10002ae3", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002ae6", "test eax, eax"], ["0x10002ae8", "mov dword ptr [ecx + 0x1b0], eax"], ["0x10002aee", "jne 0xa"], ["0x10002af0", "mov eax, 0xffffffff"], ["0x10002af5", "jmp -0x189"], ["0x10002afa", "mov eax, dword ptr [ebp + 8]"], ["0x10002afd", "push eax"], ["0x10002afe", "call ReadNamedTexture (FUNCTION)"]]}, {"both": [["0x100344bd", "add esp, 4", "0x10002b03"]]}, {"orig": [["0x100344c0", "mov eax, esi"], ["0x100344c2", "pop edi"], ["0x100344c3", "pop esi"], ["0x100344c4", "pop ebx"]], "recomp": [["0x10002b06", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002b09", "test eax, eax"], ["0x10002b0b", "mov dword ptr [ecx + 0x1b4], eax"], ["0x10002b11", "jne 0xa"], ["0x10002b13", "mov eax, 0xffffffff"], ["0x10002b18", "jmp -0x1ac"], ["0x10002b1d", "push '' (STRING)"], ["0x10002b22", "lea ecx, [ebp - 0x30]"], ["0x10002b25", "call MxString::MxString (FUNCTION)"], ["0x10002b2a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002b2d", "mov eax, dword ptr [eax + 8]"], ["0x10002b30", "mov dword ptr [ebp - 4], 0xd"], ["0x10002b37", "mov ecx, dword ptr [ecx + 0x1c4]"], ["0x10002b3d", "mov dl, byte ptr [ecx]"], ["0x10002b3f", "cmp dl, byte ptr [eax]"], ["0x10002b41", "jne 0x1a"], ["0x10002b43", "or dl, dl"], ["0x10002b45", "je 0x12"], ["0x10002b47", "mov dl, byte ptr [ecx + 1]"], ["0x10002b4a", "cmp dl, byte ptr [eax + 1]"], ["0x10002b4d", "jne 0xe"], ["0x10002b4f", "add ecx, 2"], ["0x10002b52", "add eax, 2"], ["0x10002b55", "or dl, dl"], ["0x10002b57", "jne -0x1c"], ["0x10002b59", "xor eax, eax"], ["0x10002b5b", "jmp 0x5"], ["0x10002b5d", "sbb eax, eax"], ["0x10002b5f", "sbb eax, -1"], ["0x10002b62", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10002b69", "cmp al, 1"], ["0x10002b6b", "sbb eax, eax"], ["0x10002b6d", "inc eax"], ["0x10002b6e", "mov dword ptr [ebp - 0x14], eax"], ["0x10002b71", "call <OFFSET30>"], ["0x10002b76", "cmp dword ptr [ebp - 0x14], 0"], ["0x10002b7a", "je 0x23"], ["0x10002b7c", "mov eax, dword ptr [ebp + 8]"], ["0x10002b7f", "push eax"], ["0x10002b80", "call ReadNamedTexture (FUNCTION)"]]}, {"both": [["0x100344c5", "add esp, 4", "0x10002b85"]]}, {"orig": [["0x100344c8", "ret 4"], ["0x100344cb", "int3 "], ["0x100344cc", "int3 "], ["0x100344cd", "int3 "], ["0x100344ce", "int3 "], ["0x100344cf", "int3 "], ["0x100344d0", "mov eax, dword ptr fs:[0]"], ["0x100344d6", "push ebp"], ["0x100344d7", "mov ebp, esp"], ["0x100344d9", "push -1"], ["0x100344db", "push <OFFSET31>"], ["0x100344e0", "push eax"], ["0x100344e1", "mov dword ptr fs:[0], esp"], ["0x100344e8", "sub esp, 0x10"], ["0x100344eb", "push ebx"], ["0x100344ec", "push esi"], ["0x100344ed", "push edi"], ["0x100344ee", "mov ebx, ecx"], ["0x100344f0", "mov esi, dword ptr [ebp + 8]"], ["0x100344f3", "mov ecx, esi"], ["0x100344f5", "mov edi, dword ptr [esi]"], ["0x100344f7", "call dword ptr [edi + 0x14]"], ["0x100344fa", "test al, al"], ["0x100344fc", "je 0x86"], ["0x10034502", "sub esp, 0x10"], ["0x10034505", "mov dword ptr [ebp - 0x10], esp"], ["0x10034508", "push ebx"], ["0x10034509", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1003450c", "call MxString::MxString (FUNCTION)"], ["0x10034511", "mov dword ptr [ebp - 4], 0"], ["0x10034518", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1003451f", "mov ecx, esi"], ["0x10034521", "call LegoFile::FUN_10006030 (FUNCTION)"], ["0x10034526", "sub esp, 0x14"], ["0x10034529", "lea eax, [ebx + 0x10]"], ["0x1003452c", "mov dword ptr [ebp - 0x1c], esp"], ["0x1003452f", "push eax"], ["0x10034530", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x10034533", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10034538", "mov ecx, esi"], ["0x1003453a", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x1003453f", "sub esp, 0x14"], ["0x10034542", "lea eax, [ebx + 0x24]"], ["0x10034545", "mov dword ptr [ebp - 0x18], esp"], ["0x10034548", "push eax"], ["0x10034549", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1003454c", "add ebx, 0x38"], ["0x1003454f", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x10034554", "mov ecx, esi"], ["0x10034556", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x1003455b", "sub esp, 0x14"], ["0x1003455e", "mov dword ptr [ebp - 0x14], esp"], ["0x10034561", "push ebx"], ["0x10034562", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10034565", "call Mx3DPointFloat::Mx3DPointFloat (FUNCTION)"], ["0x1003456a", "mov ecx, esi"], ["0x1003456c", "call LegoFile::WriteVector3 (FUNCTION)"], ["0x10034571", "jmp 0xd2"]], "recomp": [["0x10002b88", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002b8b", "test eax, eax"], ["0x10002b8d", "mov dword ptr [ecx + 0x208], eax"], ["0x10002b93", "jne 0xa"], ["0x10002b95", "mov eax, 0xffffffff"], ["0x10002b9a", "jmp -0x22e"], ["0x10002b9f", "push '' (STRING)"], ["0x10002ba4", "lea ecx, [ebp - 0x30]"], ["0x10002ba7", "call MxString::MxString (FUNCTION)"], ["0x10002bac", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002baf", "mov eax, dword ptr [eax + 8]"], ["0x10002bb2", "mov dword ptr [ebp - 4], 0xe"], ["0x10002bb9", "mov ecx, dword ptr [ecx + 0x218]"], ["0x10002bbf", "mov dl, byte ptr [ecx]"], ["0x10002bc1", "cmp dl, byte ptr [eax]"], ["0x10002bc3", "jne 0x1a"], ["0x10002bc5", "or dl, dl"], ["0x10002bc7", "je 0x12"], ["0x10002bc9", "mov dl, byte ptr [ecx + 1]"], ["0x10002bcc", "cmp dl, byte ptr [eax + 1]"], ["0x10002bcf", "jne 0xe"], ["0x10002bd1", "add ecx, 2"], ["0x10002bd4", "add eax, 2"], ["0x10002bd7", "or dl, dl"], ["0x10002bd9", "jne -0x1c"], ["0x10002bdb", "xor eax, eax"], ["0x10002bdd", "jmp 0x5"], ["0x10002bdf", "sbb eax, eax"], ["0x10002be1", "sbb eax, -1"], ["0x10002be4", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10002beb", "cmp al, 1"], ["0x10002bed", "sbb eax, eax"], ["0x10002bef", "inc eax"], ["0x10002bf0", "mov dword ptr [ebp - 0x14], eax"], ["0x10002bf3", "call <OFFSET31>"], ["0x10002bf8", "cmp dword ptr [ebp - 0x14], 0"], ["0x10002bfc", "je 0x69"], ["0x10002bfe", "mov eax, dword ptr [ebp + 8]"], ["0x10002c01", "push eax"], ["0x10002c02", "call ReadNamedTexture (FUNCTION)"], ["0x10002c07", "add esp, 4"], ["0x10002c0a", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002c0d", "test eax, eax"], ["0x10002c0f", "mov dword ptr [ecx + 0x25c], eax"], ["0x10002c15", "jne 0xa"], ["0x10002c17", "mov eax, 0xffffffff"], ["0x10002c1c", "jmp -0x2b0"], ["0x10002c21", "mov eax, dword ptr [ebp + 8]"], ["0x10002c24", "push eax"], ["0x10002c25", "call ReadNamedTexture (FUNCTION)"], ["0x10002c2a", "add esp, 4"], ["0x10002c2d", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002c30", "test eax, eax"], ["0x10002c32", "mov dword ptr [ecx + 0x260], eax"], ["0x10002c38", "jne 0xa"], ["0x10002c3a", "mov eax, 0xffffffff"], ["0x10002c3f", "jmp -0x2d3"], ["0x10002c44", "mov eax, dword ptr [ebp + 8]"], ["0x10002c47", "push eax"], ["0x10002c48", "call ReadNamedTexture (FUNCTION)"], ["0x10002c4d", "add esp, 4"], ["0x10002c50", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10002c53", "test eax, eax"], ["0x10002c55", "mov dword ptr [ecx + 0x264], eax"], ["0x10002c5b", "jne 0xa"], ["0x10002c5d", "mov eax, 0xffffffff"], ["0x10002c62", "jmp -0x2f6"], ["0x10002c67", "mov eax, dword ptr [ebp - 0x18]"], ["0x10002c6a", "mov esi, dword ptr [eax + 4]"], ["0x10002c6d", "jmp -0x31f"], ["0x10002c72", "lea ecx, [ebp - 0x30]"], ["0x10002c75", "jmp MxString::~MxString (FUNCTION)"], ["0x10002c7a", "lea ecx, [ebp - 0x30]"], ["0x10002c7d", "jmp MxString::~MxString (FUNCTION)"], ["0x10002c82", "lea ecx, [ebp - 0x30]"], ["0x10002c85", "jmp MxString::~MxString (FUNCTION)"]]}, {"both": [["0x10034576", "mov eax, <OFFSET32>", "0x10002c8a"], ["0x1003457b", "jmp ___CxxFrameHandler (FUNCTION)", "0x10002c8f"]]}, {"orig": [["0x10034580", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10034583", "jmp MxString::~MxString (FUNCTION)"], ["0x10034588", "mov ecx, esi"], ["0x1003458a", "call dword ptr [edi + 0x18]"], ["0x1003458d", "test al, al"], ["0x1003458f", "je 0xb3"], ["0x10034595", "mov edi, dword ptr [edi + 4]"], ["0x10034598", "push 2"], ["0x1003459a", "lea eax, [ebp - 0xe]"], ["0x1003459d", "mov ecx, esi"], ["0x1003459f", "push eax"], ["0x100345a0", "call edi"], ["0x100345a2", "movsx eax, word ptr [ebp - 0xe]"], ["0x100345a6", "inc eax"], ["0x100345a7", "push eax"], ["0x100345a8", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100345ad", "add esp, 4"], ["0x100345b0", "mov dword ptr [ebp - 0x14], eax"], ["0x100345b3", "movsx ecx, word ptr [ebp - 0xe]"], ["0x100345b7", "push ecx"], ["0x100345b8", "push eax"], ["0x100345b9", "mov ecx, esi"], ["0x100345bb", "call edi"], ["0x100345bd", "movsx ecx, word ptr [ebp - 0xe]"], ["0x100345c1", "mov edx, dword ptr [ebp - 0x14]"], ["0x100345c4", "push edx"], ["0x100345c5", "mov byte ptr [ecx + edx], 0"], ["0x100345c9", "mov ecx, ebx"], ["0x100345cb", "call MxString::operator= (FUNCTION)"], ["0x100345d0", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100345d3", "push ecx"], ["0x100345d4", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100345d9", "add esp, 4"], ["0x100345dc", "mov ecx, dword ptr [ebx + 0x14]"], ["0x100345df", "push 4"], ["0x100345e1", "push ecx"], ["0x100345e2", "mov ecx, esi"], ["0x100345e4", "call edi"], ["0x100345e6", "mov eax, dword ptr [ebx + 0x14]"], ["0x100345e9", "push 4"], ["0x100345eb", "add eax, 4"], ["0x100345ee", "mov ecx, esi"], ["0x100345f0", "push eax"], ["0x100345f1", "call edi"], ["0x100345f3", "mov eax, dword ptr [ebx + 0x14]"], ["0x100345f6", "push 4"], ["0x100345f8", "add eax, 8"], ["0x100345fb", "mov ecx, esi"], ["0x100345fd", "push eax"], ["0x100345fe", "call edi"], ["0x10034600", "push 4"], ["0x10034602", "mov ecx, dword ptr [ebx + 0x28]"], ["0x10034605", "push ecx"], ["0x10034606", "mov ecx, esi"], ["0x10034608", "call edi"], ["0x1003460a", "mov eax, dword ptr [ebx + 0x28]"], ["0x1003460d", "push 4"], ["0x1003460f", "add eax, 4"], ["0x10034612", "mov ecx, esi"], ["0x10034614", "push eax"], ["0x10034615", "call edi"], ["0x10034617", "mov eax, dword ptr [ebx + 0x28]"], ["0x1003461a", "push 4"], ["0x1003461c", "add eax, 8"], ["0x1003461f", "mov ecx, esi"], ["0x10034621", "push eax"], ["0x10034622", "call edi"], ["0x10034624", "push 4"], ["0x10034626", "mov ecx, dword ptr [ebx + 0x3c]"], ["0x10034629", "push ecx"], ["0x1003462a", "mov ecx, esi"], ["0x1003462c", "call edi"], ["0x1003462e", "mov eax, dword ptr [ebx + 0x3c]"], ["0x10034631", "push 4"], ["0x10034633", "add eax, 4"], ["0x10034636", "mov ecx, esi"], ["0x10034638", "push eax"], ["0x10034639", "call edi"], ["0x1003463b", "mov eax, dword ptr [ebx + 0x3c]"], ["0x1003463e", "push 4"], ["0x10034640", "add eax, 8"], ["0x10034643", "mov ecx, esi"], ["0x10034645", "push eax"], ["0x10034646", "call edi"], ["0x10034648", "xor eax, eax"], ["0x1003464a", "mov ecx, dword ptr [ebp - 0xc]"], ["0x1003464d", "mov dword ptr fs:[0], ecx"], ["0x10034654", "pop edi"], ["0x10034655", "pop esi"], ["0x10034656", "pop ebx"], ["0x10034657", "mov esp, ebp"], ["0x10034659", "pop ebp"], ["0x1003465a", "ret 4"], ["0x1003465d", "int3 "], ["0x1003465e", "int3 "], ["0x1003465f", "int3 "], ["0x10034660", "push esi"], ["0x10034661", "mov esi, ecx"], ["0x10034663", "call Act1State::FUN_100346a0 (FUNCTION)"], ["0x10034668", "lea ecx, [esi + 8]"], ["0x1003466b", "call LegoState::Playlist::Next (FUNCTION)"], ["0x10034670", "mov dword ptr [esi + 0x14], eax"], ["0x10034673", "call BackgroundAudioManager (FUNCTION)"], ["0x10034678", "mov ecx, eax"], ["0x1003467a", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x1003467f", "mov eax, dword ptr [esi + 0x14]"], ["0x10034682", "cmp eax, -1"], ["0x10034685", "je 0x13"], ["0x10034687", "push 0"], ["0x10034689", "push eax"], ["0x1003468a", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x1003468f", "push eax"], ["0x10034690", "push 4"], ["0x10034692", "call InvokeAction (FUNCTION)"], ["0x10034697", "add esp, 0x10"], ["0x1003469a", "pop esi"], ["0x1003469b", "ret "], ["0x1003469c", "int3 "], ["0x1003469d", "int3 "], ["0x1003469e", "int3 "], ["0x1003469f", "int3 "], ["0x100346a0", "push esi"], ["0x100346a1", "mov eax, dword ptr [ecx + 0x14]"], ["0x100346a4", "mov esi, ecx"], ["0x100346a6", "cmp eax, -1"], ["0x100346a9", "je 0x1a"], ["0x100346ab", "push 0"], ["0x100346ad", "push eax"], ["0x100346ae", "mov eax, dword ptr [g_isleScript (DATA)]"], ["0x100346b3", "push eax"], ["0x100346b4", "push 5"], ["0x100346b6", "call InvokeAction (FUNCTION)"], ["0x100346bb", "mov dword ptr [esi + 0x14], 0xffffffff"], ["0x100346c2", "add esp, 0x10"], ["0x100346c5", "pop esi"], ["0x100346c6", "ret "], ["0x100346c7", "int3 "], ["0x100346c8", "int3 "], ["0x100346c9", "int3 "], ["0x100346ca", "int3 "], ["0x100346cb", "int3 "], ["0x100346cc", "int3 "], ["0x100346cd", "int3 "], ["0x100346ce", "int3 "], ["0x100346cf", "int3 "], ["0x100346d0", "mov eax, dword ptr fs:[0]"], ["0x100346d6", "push ebp"], ["0x100346d7", "mov ebp, esp"], ["0x100346d9", "push -1"], ["0x100346db", "push <OFFSET39>"], ["0x100346e0", "push eax"], ["0x100346e1", "mov dword ptr fs:[0], esp"], ["0x100346e8", "sub esp, 8"], ["0x100346eb", "mov dword ptr [ebp - 0x14], ecx"], ["0x100346ee", "push esi"], ["0x100346ef", "push '' (STRING)"], ["0x100346f4", "add ecx, 0x24"], ["0x100346f7", "call MxString::operator= (FUNCTION)"], ["0x100346fc", "push '' (STRING)"], ["0x10034701", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10034704", "add ecx, 0x70"], ["0x10034707", "call MxString::operator= (FUNCTION)"], ["0x1003470c", "push '' (STRING)"], ["0x10034711", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10034714", "add ecx, 0xbc"], ["0x1003471a", "call MxString::operator= (FUNCTION)"], ["0x1003471f", "mov eax, dword ptr [ebp - 0x14]"], ["0x10034722", "push '' (STRING)"], ["0x10034727", "mov byte ptr [eax + 0x22], 0"], ["0x1003472b", "lea ecx, [eax + 0x108]"], ["0x10034731", "call MxString::operator= (FUNCTION)"], ["0x10034736", "mov eax, dword ptr [ebp - 0x14]"], ["0x10034739", "mov eax, dword ptr [eax + 0x154]"], ["0x1003473f", "test eax, eax"], ["0x10034741", "je 0x46"], ["0x10034743", "mov dword ptr [ebp - 4], 0"], ["0x1003474a", "mov esi, dword ptr [eax + 0x10]"], ["0x1003474d", "mov dword ptr [ebp - 0x10], eax"], ["0x10034750", "test esi, esi"], ["0x10034752", "je 0x10"], ["0x10034754", "mov ecx, esi"], ["0x10034756", "call LegoTexture::~LegoTexture (FUNCTION)"], ["0x1003475b", "push esi"], ["0x1003475c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10034761", "add esp, 4"], ["0x10034764", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1003476b", "call <OFFSET41>"], ["0x10034770", "mov eax, dword ptr [ebp - 0x10]"], ["0x10034773", "push eax"], ["0x10034774", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10034779", "add esp, 4"], ["0x1003477c", "mov eax, dword ptr [ebp - 0x14]"], ["0x1003477f", "mov dword ptr [eax + 0x154], 0"], ["0x10034789", "mov eax, dword ptr [ebp - 0x14]"], ["0x1003478c", "mov eax, dword ptr [eax + 0x158]"], ["0x10034792", "test eax, eax"], ["0x10034794", "je 0x46"], ["0x10034796", "mov dword ptr [ebp - 4], 1"], ["0x1003479d", "mov esi, dword ptr [eax + 0x10]"], ["0x100347a0", "mov dword ptr [ebp - 0x10], eax"], ["0x100347a3", "test esi, esi"], ["0x100347a5", "je 0x10"], ["0x100347a7", "mov ecx, esi"], ["0x100347a9", "call LegoTexture::~LegoTexture (FUNCTION)"], ["0x100347ae", "push esi"], ["0x100347af", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100347b4", "add esp, 4"], ["0x100347b7", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100347be", "call <OFFSET42>"], ["0x100347c3", "mov eax, dword ptr [ebp - 0x10]"], ["0x100347c6", "push eax"], ["0x100347c7", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100347cc", "add esp, 4"], ["0x100347cf", "mov eax, dword ptr [ebp - 0x14]"], ["0x100347d2", "mov dword ptr [eax + 0x158], 0"], ["0x100347dc", "mov eax, dword ptr [ebp - 0x14]"], ["0x100347df", "mov eax, dword ptr [eax + 0x15c]"], ["0x100347e5", "test eax, eax"], ["0x100347e7", "je 0x46"], ["0x100347e9", "mov dword ptr [ebp - 4], 2"], ["0x100347f0", "mov esi, dword ptr [eax + 0x10]"], ["0x100347f3", "mov dword ptr [ebp - 0x10], eax"], ["0x100347f6", "test esi, esi"], ["0x100347f8", "je 0x10"], ["0x100347fa", "mov ecx, esi"], ["0x100347fc", "call LegoTexture::~LegoTexture (FUNCTION)"], ["0x10034801", "push esi"], ["0x10034802", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10034807", "add esp, 4"], ["0x1003480a", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10034811", "call <OFFSET43>"], ["0x10034816", "mov eax, dword ptr [ebp - 0x10]"], ["0x10034819", "push eax"], ["0x1003481a", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1003481f", "add esp, 4"], ["0x10034822", "mov eax, dword ptr [ebp - 0x14]"], ["0x10034825", "mov dword ptr [eax + 0x15c], 0"], ["0x1003482f", "mov eax, dword ptr [ebp - 0x14]"], ["0x10034832", "mov ecx, dword ptr [eax + 0x160]"], ["0x10034838", "test ecx, ecx"], ["0x1003483a", "je 0x13"], ["0x1003483c", "push 1"], ["0x1003483e", "mov eax, dword ptr [ecx]"], ["0x10034840", "call dword ptr [eax]"], ["0x10034842", "mov eax, dword ptr [ebp - 0x14]"], ["0x10034845", "mov dword ptr [eax + 0x160], 0"], ["0x1003484f", "push '' (STRING)"], ["0x10034854", "mov ecx, dword ptr [ebp - 0x14]"], ["0x10034857", "add ecx, 0x164"], ["0x1003485d", "call MxString::operator= (FUNCTION)"], ["0x10034862", "mov eax, dword ptr [ebp - 0x14]"], ["0x10034865", "mov eax, dword ptr [eax + 0x1b0]"], ["0x1003486b", "test eax, eax"], ["0x1003486d", "je 0x46"], ["0x1003486f", "mov dword ptr [ebp - 4], 3"], ["0x10034876", "mov esi, dword ptr [eax + 0x10]"], ["0x10034879", "mov dword ptr [ebp - 0x10], eax"], ["0x1003487c", "test esi, esi"], ["0x1003487e", "je 0x10"], ["0x10034880", "mov ecx, esi"], ["0x10034882", "call LegoTexture::~LegoTexture (FUNCTION)"], ["0x10034887", "push esi"], ["0x10034888", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1003488d", "add esp, 4"], ["0x10034890", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10034897", "call <OFFSET44>"], ["0x1003489c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1003489f", "push eax"], ["0x100348a0", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100348a5", "add esp, 4"], ["0x100348a8", "mov eax, dword ptr [ebp - 0x14]"], ["0x100348ab", "mov dword ptr [eax + 0x1b0], 0"], ["0x100348b5", "mov eax, dword ptr [ebp - 0x14]"], ["0x100348b8", "mov eax, dword ptr [eax + 0x1b4]"], ["0x100348be", "test eax, eax"], ["0x100348c0", "je 0x46"], ["0x100348c2", "mov dword ptr [ebp - 4], 4"], ["0x100348c9", "mov esi, dword ptr [eax + 0x10]"], ["0x100348cc", "mov dword ptr [ebp - 0x10], eax"], ["0x100348cf", "test esi, esi"], ["0x100348d1", "je 0x10"], ["0x100348d3", "mov ecx, esi"], ["0x100348d5", "call LegoTexture::~LegoTexture (FUNCTION)"], ["0x100348da", "push esi"]], "recomp": [["0x10002c94", "lea ecx, [ebp - 0x30]"], ["0x10002c97", "jmp MxString::~MxString (FUNCTION)"]]}]]]}, {"address": "0x100343a0", "recomp": "0x10002ca0", "name": "Mx3DPointFloat::Mx3DPointFloat", "matching": 1.0, "diff": []}, {"address": "0x100343d0", "recomp": "0x10002cd0", "name": "LegoFile::WriteVector3", "matching": 1.0, "diff": []}, {"address": "0x10034430", "recomp": "0x10002d30", "name": "LegoFile::ReadVector3", "matching": 0.4642857142857143, "diff": [["@@ -0x10034430,28 +0x10002d30,28 @@", [{"both": [["0x10034430", "push ebx", "0x10002d30"], ["0x10034431", "push esi", "0x10002d31"]]}, {"orig": [["0x10034432", "mov esi, dword ptr [esp + 0xc]"]], "recomp": [["0x10002d32", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x10034436", "push edi", "0x10002d34"]]}, {"orig": [["0x10034437", "mov eax, dword ptr [ecx]"], ["0x10034439", "mov edi, ecx"]], "recomp": [["0x10002d35", "mov esi, ecx"], ["0x10002d37", "mov ebx, dword ptr [esp + 0x10]"], ["0x10002d3b", "mov edi, dword ptr [eax + 4]"]]}, {"both": [["0x1003443b", "push 4", "0x10002d3e"]]}, {"orig": [["0x1003443d", "mov ecx, dword ptr [esi + 4]"], ["0x10034440", "mov ebx, dword ptr [eax + 4]"], ["0x10034443", "push ecx"], ["0x10034444", "mov ecx, edi"], ["0x10034446", "call ebx"], ["0x10034448", "mov eax, dword ptr [esi + 4]"]], "recomp": [["0x10002d40", "mov eax, dword ptr [ebx + 4]"], ["0x10002d43", "push eax"], ["0x10002d44", "call edi"]]}, {"both": [["0x1003444b", "push 4", "0x10002d46"]]}, {"orig": [], "recomp": [["0x10002d48", "mov eax, dword ptr [ebx + 4]"]]}, {"both": [["0x1003444d", "add eax, 4", "0x10002d4b"]]}, {"orig": [["0x10034450", "mov ecx, edi"]], "recomp": [["0x10002d4e", "mov ecx, esi"]]}, {"both": [["0x10034452", "push eax", "0x10002d50"]]}, {"orig": [["0x10034453", "call ebx"], ["0x10034455", "mov eax, dword ptr [esi + 4]"]], "recomp": [["0x10002d51", "call edi"]]}, {"both": [["0x10034458", "push 4", "0x10002d53"]]}, {"orig": [], "recomp": [["0x10002d55", "mov eax, dword ptr [ebx + 4]"]]}, {"both": [["0x1003445a", "add eax, 8", "0x10002d58"]]}, {"orig": [["0x1003445d", "mov ecx, edi"]], "recomp": [["0x10002d5b", "mov ecx, esi"]]}, {"both": [["0x1003445f", "push eax", "0x10002d5d"]]}, {"orig": [["0x10034460", "call ebx"], ["0x10034462", "mov eax, edi"]], "recomp": [["0x10002d5e", "call edi"], ["0x10002d60", "mov eax, esi"]]}, {"both": [["0x10034464", "pop edi", "0x10002d62"], ["0x10034465", "pop esi", "0x10002d63"], ["0x10034466", "pop ebx", "0x10002d64"]]}, {"orig": [], "recomp": [["0x10002d65", "ret 4"]]}]]]}, {"address": "0x10034470", "recomp": "0x10002d70", "name": "LegoFile::ReadString", "matching": 1.0, "diff": []}, {"address": "0x100344d0", "recomp": "0x10002dd0", "name": "Act1State::NamedPlane::Serialize", "matching": 0.9591836734693877, "diff": [["@@ -0x100345cb,62 +0x10002ecb,62 @@", [{"both": [["0x100345cb", "call MxString::operator= (FUNCTION)", "0x10002ecb"], ["0x100345d0", "mov ecx, dword ptr [ebp - 0x14]", "0x10002ed0"], ["0x100345d3", "push ecx", "0x10002ed3"], ["0x100345d4", "call ??3@YAXPAX@Z (FUNCTION)", "0x10002ed4"], ["0x100345d9", "add esp, 4", "0x10002ed9"], ["0x100345dc", "mov ecx, dword ptr [ebx + 0x14]", "0x10002edc"], ["0x100345df", "push 4", "0x10002edf"], ["0x100345e1", "push ecx", "0x10002ee1"], ["0x100345e2", "mov ecx, esi", "0x10002ee2"], ["0x100345e4", "call edi", "0x10002ee4"]]}, {"orig": [], "recomp": [["0x10002ee6", "push 4"]]}, {"both": [["0x100345e6", "mov eax, dword ptr [ebx + 0x14]", "0x10002ee8"]]}, {"orig": [["0x100345e9", "push 4"]], "recomp": []}, {"both": [["0x100345eb", "add eax, 4", "0x10002eeb"], ["0x100345ee", "mov ecx, esi", "0x10002eee"], ["0x100345f0", "push eax", "0x10002ef0"], ["0x100345f1", "call edi", "0x10002ef1"]]}, {"orig": [], "recomp": [["0x10002ef3", "push 4"]]}, {"both": [["0x100345f3", "mov eax, dword ptr [ebx + 0x14]", "0x10002ef5"]]}, {"orig": [["0x100345f6", "push 4"]], "recomp": []}, {"both": [["0x100345f8", "add eax, 8", "0x10002ef8"], ["0x100345fb", "mov ecx, esi", "0x10002efb"], ["0x100345fd", "push eax", "0x10002efd"], ["0x100345fe", "call edi", "0x10002efe"], ["0x10034600", "push 4", "0x10002f00"], ["0x10034602", "mov ecx, dword ptr [ebx + 0x28]", "0x10002f02"], ["0x10034605", "push ecx", "0x10002f05"], ["0x10034606", "mov ecx, esi", "0x10002f06"], ["0x10034608", "call edi", "0x10002f08"]]}, {"orig": [], "recomp": [["0x10002f0a", "push 4"]]}, {"both": [["0x1003460a", "mov eax, dword ptr [ebx + 0x28]", "0x10002f0c"]]}, {"orig": [["0x1003460d", "push 4"]], "recomp": []}, {"both": [["0x1003460f", "add eax, 4", "0x10002f0f"], ["0x10034612", "mov ecx, esi", "0x10002f12"], ["0x10034614", "push eax", "0x10002f14"], ["0x10034615", "call edi", "0x10002f15"]]}, {"orig": [], "recomp": [["0x10002f17", "push 4"]]}, {"both": [["0x10034617", "mov eax, dword ptr [ebx + 0x28]", "0x10002f19"]]}, {"orig": [["0x1003461a", "push 4"]], "recomp": []}, {"both": [["0x1003461c", "add eax, 8", "0x10002f1c"], ["0x1003461f", "mov ecx, esi", "0x10002f1f"], ["0x10034621", "push eax", "0x10002f21"], ["0x10034622", "call edi", "0x10002f22"], ["0x10034624", "push 4", "0x10002f24"], ["0x10034626", "mov ecx, dword ptr [ebx + 0x3c]", "0x10002f26"], ["0x10034629", "push ecx", "0x10002f29"], ["0x1003462a", "mov ecx, esi", "0x10002f2a"], ["0x1003462c", "call edi", "0x10002f2c"]]}, {"orig": [], "recomp": [["0x10002f2e", "push 4"]]}, {"both": [["0x1003462e", "mov eax, dword ptr [ebx + 0x3c]", "0x10002f30"]]}, {"orig": [["0x10034631", "push 4"]], "recomp": []}, {"both": [["0x10034633", "add eax, 4", "0x10002f33"], ["0x10034636", "mov ecx, esi", "0x10002f36"], ["0x10034638", "push eax", "0x10002f38"], ["0x10034639", "call edi", "0x10002f39"]]}, {"orig": [], "recomp": [["0x10002f3b", "push 4"]]}, {"both": [["0x1003463b", "mov eax, dword ptr [ebx + 0x3c]", "0x10002f3d"]]}, {"orig": [["0x1003463e", "push 4"]], "recomp": []}, {"both": [["0x10034640", "add eax, 8", "0x10002f40"], ["0x10034643", "mov ecx, esi", "0x10002f43"], ["0x10034645", "push eax", "0x10002f45"], ["0x10034646", "call edi", "0x10002f46"], ["0x10034648", "xor eax, eax", "0x10002f48"], ["0x1003464a", "mov ecx, dword ptr [ebp - 0xc]", "0x10002f4a"], ["0x1003464d", "mov dword ptr fs:[0], ecx", "0x10002f4d"], ["0x10034654", "pop edi", "0x10002f54"], ["0x10034655", "pop esi", "0x10002f55"], ["0x10034656", "pop ebx", "0x10002f56"]]}]]]}, {"address": "0x10034660", "recomp": "0x10002f60", "name": "Act1State::FUN_10034660", "matching": 0.0, "stub": true}, {"address": "0x100346a0", "recomp": "0x10002f70", "name": "Act1State::FUN_100346a0", "matching": 1.0, "diff": []}, {"address": "0x100346d0", "recomp": "0x10002fa0", "name": "Act1State::SetFlag", "matching": 0.9590443686006825, "diff": [["@@ -0x100349f6,33 +0x100032c6,30 @@", [{"both": [["0x100349f6", "call <OFFSET12>", "0x100032c6"], ["0x100349fb", "mov eax, dword ptr [ebp - 0x10]", "0x100032cb"], ["0x100349fe", "push eax", "0x100032ce"], ["0x100349ff", "call ??3@YAXPAX@Z (FUNCTION)", "0x100032cf"], ["0x10034a04", "add esp, 4", "0x100032d4"], ["0x10034a07", "mov eax, dword ptr [ebp - 0x14]", "0x100032d7"], ["0x10034a0a", "mov dword ptr [eax + 0x25c], 0", "0x100032da"], ["0x10034a14", "mov eax, dword ptr [ebp - 0x14]", "0x100032e4"], ["0x10034a17", "mov eax, dword ptr [eax + 0x260]", "0x100032e7"], ["0x10034a1d", "test eax, eax", "0x100032ed"]]}, {"orig": [["0x10034a1f", "je 0x46"]], "recomp": [["0x100032ef", "je 0x3d"]]}, {"both": [["0x10034a21", "mov dword ptr [ebp - 4], 7", "0x100032f1"]]}, {"orig": [["0x10034a28", "mov esi, dword ptr [eax + 0x10]"], ["0x10034a2b", "mov dword ptr [ebp - 0x10], eax"], ["0x10034a2e", "test esi, esi"], ["0x10034a30", "je 0x10"], ["0x10034a32", "mov ecx, esi"], ["0x10034a34", "call LegoTexture::~LegoTexture (FUNCTION)"], ["0x10034a39", "push esi"], ["0x10034a3a", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10034a3f", "add esp, 4"], ["0x10034a42", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10034a49", "call <OFFSET13>"]], "recomp": [["0x100032f8", "mov ecx, dword ptr [eax + 0x10]"], ["0x100032fb", "mov dword ptr [ebp - 0x10], eax"], ["0x100032fe", "test ecx, ecx"], ["0x10003300", "je 0x7"], ["0x10003302", "push 1"], ["0x10003304", "call LegoTexture::`scalar deleting destructor' (FUNCTION)"], ["0x10003309", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10003310", "call <OFFSET14>"]]}, {"both": [["0x10034a4e", "mov eax, dword ptr [ebp - 0x10]", "0x10003315"], ["0x10034a51", "push eax", "0x10003318"], ["0x10034a52", "call ??3@YAXPAX@Z (FUNCTION)", "0x10003319"], ["0x10034a57", "add esp, 4", "0x1000331e"], ["0x10034a5a", "mov eax, dword ptr [ebp - 0x14]", "0x10003321"], ["0x10034a5d", "mov dword ptr [eax + 0x260], 0", "0x10003324"], ["0x10034a67", "mov eax, dword ptr [ebp - 0x14]", "0x1000332e"], ["0x10034a6a", "mov eax, dword ptr [eax + 0x264]", "0x10003331"], ["0x10034a70", "test eax, eax", "0x10003337"], ["0x10034a72", "je 0x3d", "0x10003339"]]}]], ["@@ -0x10034afd,10 +0x100033c4,13 @@", [{"both": [["0x10034afd", "jmp MxString::~MxString (FUNCTION)", "0x100033c4"], ["0x10034b02", "mov ecx, dword ptr [ebp - 0x10]", "0x100033c9"], ["0x10034b05", "jmp MxString::~MxString (FUNCTION)", "0x100033cc"], ["0x10034b0a", "mov ecx, dword ptr [ebp - 0x10]", "0x100033d1"], ["0x10034b0d", "jmp MxString::~MxString (FUNCTION)", "0x100033d4"], ["0x10034b12", "mov ecx, dword ptr [ebp - 0x10]", "0x100033d9"], ["0x10034b15", "jmp MxString::~MxString (FUNCTION)", "0x100033dc"], ["0x10034b1a", "mov ecx, dword ptr [ebp - 0x10]", "0x100033e1"], ["0x10034b1d", "jmp MxString::~MxString (FUNCTION)", "0x100033e4"], ["0x10034b22", "mov eax, <OFFSET17>", "0x100033e9"]]}, {"orig": [], "recomp": [["0x100033ee", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x100033f3", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100033f6", "jmp MxString::~MxString (FUNCTION)"]]}]]]}, {"address": "0x10034b40", "recomp": "0x10003400", "name": "LegoTexture::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10034b60", "recomp": "0x10003420", "name": "Act1State::FUN_10034b60", "matching": 0.0, "stub": true}, {"address": "0x10034d00", "recomp": "0x10003430", "name": "Act1State::FUN_10034d00", "matching": 0.0, "stub": true}, {"address": "0x10035790", "recomp": "0x10011230", "name": "_Construct", "matching": 1.0, "diff": []}, {"address": "0x100357b0", "recomp": "0x10007900", "name": "Motocycle::Motocycle", "matching": 1.0, "diff": []}, {"address": "0x10035840", "recomp": "0x10007990", "name": "Motocycle::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10035850", "recomp": "0x100079a0", "name": "Motocycle::IsA", "matching": 1.0, "diff": []}, {"address": "0x100359d0", "recomp": "0x10007b20", "name": "Motocycle::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10035a40", "recomp": "0x10007b90", "name": "Motocycle::Create", "matching": 0.0, "stub": true}, {"address": "0x10035ad0", "recomp": "0x10007ba0", "name": "Motocycle::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x10035bc0", "recomp": "0x10007bb0", "name": "Motocycle::VTable0xe4", "matching": 0.0, "stub": true}, {"address": "0x10035c50", "recomp": "0x10007bc0", "name": "Motocycle::VTable0xcc", "matching": 0.0, "stub": true}, {"address": "0x10035d70", "recomp": "0x10007bd0", "name": "Motocycle::VTable0xd4", "matching": 0.0, "stub": true}, {"address": "0x10035df0", "recomp": "0x10007be0", "name": "Motocycle::VTable0xdc", "matching": 0.0, "stub": true}, {"address": "0x10035e10", "recomp": "0x10007bf0", "name": "Motocycle::FUN_10035e10", "matching": 0.0, "stub": true}, {"address": "0x10035ee0", "recomp": "0x100041c0", "name": "Ambulance::Ambulance", "matching": 1.0, "diff": []}, {"address": "0x10035f90", "recomp": "0x100046a0", "name": "Ambulance::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10035fa0", "recomp": "0x100044f0", "name": "Ambulance::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10035fb0", "recomp": "0x10004500", "name": "Ambulance::IsA", "matching": 1.0, "diff": []}, {"address": "0x10036130", "recomp": "0x10004680", "name": "Ambulance::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10036150", "recomp": "0x100046b0", "name": "Ambulance::~Ambulance", "matching": 1.0, "diff": []}, {"address": "0x100361d0", "recomp": "0x10004730", "name": "Ambulance::Create", "matching": 1.0, "diff": []}, {"address": "0x10036300", "recomp": "0x10004860", "name": "Ambulance::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x10036420", "recomp": "0x10004870", "name": "Ambulance::Notify", "matching": 0.0, "stub": true}, {"address": "0x10036860", "recomp": "0x10004880", "name": "Ambulance::VTable0xdc", "matching": 0.0, "stub": true}, {"address": "0x10036ce0", "recomp": "0x10004890", "name": "Ambulance::VTable0xcc", "matching": 0.0, "stub": true}, {"address": "0x10036e60", "recomp": "0x100048a0", "name": "Ambulance::FUN_10036e60", "matching": 0.0, "stub": true}, {"address": "0x10036e90", "recomp": "0x100048b0", "name": "Ambulance::VTable0xe4", "matching": 0.0, "stub": true}, {"address": "0x10036f90", "recomp": "0x100048c0", "name": "Ambulance::VTable0xd4", "matching": 0.0, "stub": true}, {"address": "0x10037060", "recomp": "0x100048d0", "name": "Ambulance::FUN_10037060", "matching": 0.0, "stub": true}, {"address": "0x10037160", "recomp": "0x100048e0", "name": "Ambulance::Tickle", "matching": 0.0, "stub": true}, {"address": "0x100373a0", "recomp": "0x1002cda0", "name": "AmbulanceMissionState::AmbulanceMissionState", "matching": 1.0, "diff": []}, {"address": "0x10037440", "recomp": "0x1002cf70", "name": "AmbulanceMissionState::VTable0x1c", "matching": 0.0, "stub": true}, {"address": "0x10037600", "recomp": "0x1002ce40", "name": "AmbulanceMissionState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10037610", "recomp": "0x1002ce50", "name": "AmbulanceMissionState::IsA", "matching": 1.0, "diff": []}, {"address": "0x100376c0", "recomp": "0x1002cf00", "name": "AmbulanceMissionState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10037730", "recomp": "0x10043700", "name": "InfocenterDoor::InfocenterDoor", "matching": 1.0, "diff": []}, {"address": "0x100377a0", "recomp": "0x10043890", "name": "InfocenterDoor::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x100377b0", "recomp": "0x10043770", "name": "InfocenterDoor::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100377c0", "recomp": "0x10043780", "name": "InfocenterDoor::IsA", "matching": 1.0, "diff": []}, {"address": "0x100378d0", "recomp": "0x100438a0", "name": "InfocenterDoor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100378f0", "recomp": "0x100438c0", "name": "InfocenterDoor::~InfocenterDoor", "matching": 1.0, "diff": []}, {"address": "0x10037980", "recomp": "0x10043950", "name": "InfocenterDoor::Create", "matching": 1.0, "diff": []}, {"address": "0x100379e0", "recomp": "0x100439b0", "name": "InfocenterDoor::Notify", "matching": 1.0, "diff": []}, {"address": "0x10037a70", "recomp": "0x10043a40", "name": "InfocenterDoor::ReadyWorld", "matching": 1.0, "diff": []}, {"address": "0x10037a90", "recomp": "0x10043a60", "name": "InfocenterDoor::HandleClick", "matching": 0.952, "diff": [["@@ -0x10037abf,21 +0x10043a8f,21 @@", [{"both": [["0x10037abf", "push 0x1fe", "0x10043a8f"], ["0x10037ac4", "lea eax, [esi + 0xc]", "0x10043a94"], ["0x10037ac7", "push 0x1f4", "0x10043a97"], ["0x10037acc", "push eax", "0x10043a9c"], ["0x10037acd", "call DeleteObjects (FUNCTION)", "0x10043a9d"], ["0x10037ad2", "add esp, 0xc", "0x10043aa2"], ["0x10037ad5", "mov eax, dword ptr [ebx + 0x20]", "0x10043aa5"], ["0x10037ad8", "dec eax", "0x10043aa8"], ["0x10037ad9", "cmp eax, 3", "0x10043aa9"], ["0x10037adc", "ja 0x2a", "0x10043aac"]]}, {"orig": [["0x10037ade", "jmp dword ptr [eax*4 + 0x10037c70]"]], "recomp": [["0x10043aae", "jmp dword ptr [eax*4 + 0x10043c40]"]]}, {"both": [["0x10037ae5", "mov dword ptr [esi + 0xf8], 0xd", "0x10043ab5"], ["0x10037aef", "push 0", "0x10043abf"], ["0x10037af1", "push 0", "0x10043ac1"], ["0x10037af3", "push 0x32", "0x10043ac3"], ["0x10037af5", "push 3", "0x10043ac5"], ["0x10037af7", "call TransitionManager (FUNCTION)", "0x10043ac7"], ["0x10037afc", "mov ecx, eax", "0x10043acc"], ["0x10037afe", "call MxTransitionManager::StartTransition (FUNCTION)", "0x10043ace"], ["0x10037b03", "mov edi, 1", "0x10043ad3"], ["0x10037b08", "mov eax, edi", "0x10043ad8"]]}]], ["@@ -0x10037c3f,14 +0x10043c0f,16 @@", [{"both": [["0x10037c3f", "mov dword ptr [ebp - 4], 0xffffffff", "0x10043c0f"], ["0x10037c46", "add esp, 4", "0x10043c16"], ["0x10037c49", "call <OFFSET19>", "0x10043c19"], ["0x10037c4e", "jmp -0x150", "0x10043c1e"], ["0x10037c53", "lea ecx, [ebp - 0x10]", "0x10043c23"], ["0x10037c56", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10043c26"], ["0x10037c5b", "mov eax, <OFFSET20>", "0x10043c2b"], ["0x10037c60", "jmp ___CxxFrameHandler (FUNCTION)", "0x10043c30"], ["0x10037c65", "lea ecx, [ebp - 0xa4]", "0x10043c35"], ["0x10037c6b", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x10043c3b"]]}, {"orig": [["0x10037c70", "in eax, 0x7a"], ["0x10037c72", "add edx, dword ptr [eax]"], ["0x10037c74", "sbb eax, 0x2910037b"], ["0x10037c79", "jnp 0x3"]], "recomp": [["0x10043c40", "mov ch, 0x3a"], ["0x10043c42", "add al, 0x10"], ["0x10043c44", "in eax, dx"], ["0x10043c45", "cmp al, byte ptr [eax + edx]"], ["0x10043c48", "stc "], ["0x10043c49", "cmp al, byte ptr [eax + edx]"]]}]]]}, {"address": "0x10037c80", "recomp": "0x10043c50", "name": "InfocenterDoor::Enable", "matching": 1.0, "diff": []}, {"address": "0x10037cd0", "recomp": "0x10043ca0", "name": "InfocenterDoor::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x10037d00", "recomp": "0x1001d240", "name": "VisibilityVariable::SetValue", "matching": 1.0, "diff": []}, {"address": "0x10037d80", "recomp": "0x1001d2c0", "name": "CameraLocationVariable::SetValue", "matching": 1.0, "diff": []}, {"address": "0x10037e30", "recomp": "0x1001d370", "name": "CursorVariable::SetValue", "matching": 1.0, "diff": []}, {"address": "0x10037e40", "recomp": "0x1001d380", "name": "WhoAmIVariable::SetValue", "matching": 1.0, "diff": []}, {"address": "0x10037ef0", "recomp": "0x10007c00", "name": "Pizza::Pizza", "matching": 1.0, "diff": []}, {"address": "0x10037f90", "recomp": "0x10007dc0", "name": "Pizza::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10037fa0", "recomp": "0x10007dd0", "name": "Pizza::IsA", "matching": 1.0, "diff": []}, {"address": "0x100380e0", "recomp": "0x10007f10", "name": "Pizza::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10038100", "recomp": "0x10007ff0", "name": "Pizza::~Pizza", "matching": 1.0, "diff": []}, {"address": "0x10038170", "recomp": "0x10008060", "name": "Pizza::Create", "matching": 0.0, "stub": true}, {"address": "0x100388a0", "recomp": "0x10008070", "name": "Pizza::Tickle", "matching": 0.0, "stub": true}, {"address": "0x10039290", "recomp": "0x1001a460", "name": "PizzaMissionState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100392a0", "recomp": "0x1001a470", "name": "PizzaMissionState::IsA", "matching": 1.0, "diff": []}, {"address": "0x10039350", "recomp": "0x1001b8c0", "name": "PizzaMissionState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100393c0", "recomp": "0x10034250", "name": "PizzaMissionState::VTable0x1c", "matching": 0.0, "stub": true}, {"address": "0x10039510", "recomp": "0x10034260", "name": "PizzaMissionState::GetState", "matching": 1.0, "diff": []}, {"address": "0x10039550", "recomp": "0x100113c0", "name": "LegoGameState::LegoGameState", "matching": 0.7727272727272727, "diff": [["@@ -0x10039550,117 +0x100113c0,117 @@", [{"both": [["0x10039550", "mov eax, dword ptr fs:[0]", "0x100113c0"], ["0x10039556", "push ebp", "0x100113c6"], ["0x10039557", "mov ebp, esp", "0x100113c7"], ["0x10039559", "push -1", "0x100113c9"], ["0x1003955b", "push <OFFSET1>", "0x100113cb"], ["0x10039560", "push eax", "0x100113d0"], ["0x10039561", "mov dword ptr fs:[0], esp", "0x100113d1"], ["0x10039568", "sub esp, 8", "0x100113d8"], ["0x1003956b", "push ebx", "0x100113db"], ["0x1003956c", "push esi", "0x100113dc"]]}, {"orig": [], "recomp": [["0x100113dd", "push edi"], ["0x100113de", "mov esi, 8"]]}, {"both": [["0x1003956d", "lea ebx, [ecx + 0x28]", "0x100113e3"]]}, {"orig": [["0x10039570", "push edi"], ["0x10039571", "mov esi, ecx"], ["0x10039573", "mov edi, 8"]], "recomp": [["0x100113e6", "mov edi, ecx"]]}, {"both": [["0x10039578", "mov ecx, ebx", "0x100113e8"], ["0x1003957a", "add ebx, 0xe", "0x100113ea"], ["0x1003957d", "call LegoGameState::Username::Username (FUNCTION)", "0x100113ed"]]}, {"orig": [["0x10039582", "dec edi"]], "recomp": [["0x100113f2", "dec esi"]]}, {"both": [["0x10039583", "jns -0xd", "0x100113f3"]]}, {"orig": [["0x10039585", "lea ecx, [esi + 0xa6]"]], "recomp": [["0x100113f5", "lea ecx, [edi + 0xa6]"]]}, {"both": [["0x1003958b", "xor ebx, ebx", "0x100113fb"], ["0x1003958d", "call LegoGameState::History::History (FUNCTION)", "0x100113fd"]]}, {"orig": [["0x10039592", "mov ecx, esi"]], "recomp": [["0x10011402", "mov ecx, edi"]]}, {"both": [["0x10039594", "call LegoGameState::SetColors (FUNCTION)", "0x10011404"]]}, {"orig": [["0x10039599", "mov ecx, esi"]], "recomp": [["0x10011409", "mov ecx, edi"]]}, {"both": [["0x1003959b", "call LegoGameState::SetROIHandlerFunction (FUNCTION)", "0x1001140b"]]}, {"orig": [["0x100395a0", "mov word ptr [esi + 4], bx"]], "recomp": [["0x10011410", "mov word ptr [edi + 4], bx"]]}, {"both": [["0x100395a4", "mov eax, 0xffffffff", "0x10011414"]]}, {"orig": [["0x100395a9", "mov byte ptr [esi + 0xc], bl"], ["0x100395ac", "mov dword ptr [esi], ebx"], ["0x100395ae", "mov dword ptr [esi + 8], ebx"], ["0x100395b1", "mov dword ptr [esi + 0x41c], eax"], ["0x100395b7", "mov word ptr [esi + 0x26], bx"], ["0x100395bb", "mov dword ptr [esi + 0x424], ebx"]], "recomp": [["0x10011419", "mov byte ptr [edi + 0xc], bl"], ["0x1001141c", "mov dword ptr [edi], ebx"], ["0x1001141e", "mov dword ptr [edi + 8], ebx"], ["0x10011421", "mov dword ptr [edi + 0x41c], eax"], ["0x10011427", "mov word ptr [edi + 0x26], bx"], ["0x1001142b", "mov dword ptr [edi + 0x424], ebx"]]}, {"both": [["0x100395c1", "push ebx", "0x10011431"]]}, {"orig": [["0x100395c2", "mov dword ptr [esi + 0x428], ebx"], ["0x100395c8", "mov ecx, esi"], ["0x100395ca", "mov dword ptr [esi + 0x42c], ebx"], ["0x100395d0", "mov byte ptr [esi + 0x420], bl"], ["0x100395d6", "mov dword ptr [esi + 0x14], eax"]], "recomp": [["0x10011432", "mov dword ptr [edi + 0x428], ebx"], ["0x10011438", "mov ecx, edi"], ["0x1001143a", "mov dword ptr [edi + 0x42c], ebx"], ["0x10011440", "mov byte ptr [edi + 0x420], bl"], ["0x10011446", "mov dword ptr [edi + 0x14], eax"]]}, {"both": [["0x100395d9", "call LegoGameState::SetCurrentAct (FUNCTION)", "0x10011449"], ["0x100395de", "push 0x30", "0x1001144e"], ["0x100395e0", "call ??2@YAPAXI@Z (FUNCTION)", "0x10011450"], ["0x100395e5", "mov dword ptr [ebp - 0x10], eax", "0x10011455"], ["0x100395e8", "add esp, 4", "0x10011458"]]}, {"orig": [["0x100395eb", "mov edi, eax"]], "recomp": [["0x1001145b", "mov esi, eax"]]}, {"both": [["0x100395ed", "mov dword ptr [ebp - 4], ebx", "0x1001145d"], ["0x100395f0", "mov eax, 0", "0x10011460"]]}, {"orig": [["0x100395f5", "test edi, edi"]], "recomp": [["0x10011465", "test esi, esi"]]}, {"both": [["0x100395f7", "je 0x11", "0x10011467"], ["0x100395f9", "push 'set 56 54 68' (STRING)", "0x10011469"]]}, {"orig": [["0x100395fe", "mov ecx, edi"]], "recomp": [["0x1001146e", "mov ecx, esi"]]}, {"both": [["0x10039600", "push 'backgroundcolor' (STRING)", "0x10011470"], ["0x10039605", "call LegoBackgroundColor::LegoBackgroundColor (FUNCTION)", "0x10011475"], ["0x1003960a", "mov dword ptr [ebp - 4], 0xffffffff", "0x1001147a"], ["0x10039611", "push eax", "0x10011481"]]}, {"orig": [["0x10039612", "mov dword ptr [esi + 0x18], eax"]], "recomp": [["0x10011482", "mov dword ptr [edi + 0x18], eax"]]}, {"both": [["0x10039615", "call VariableTable (FUNCTION)", "0x10011485"], ["0x1003961a", "mov ecx, eax", "0x1001148a"], ["0x1003961c", "call MxVariableTable::SetVariable (FUNCTION)", "0x1001148c"], ["0x10039621", "push 0x30", "0x10011491"], ["0x10039623", "call ??2@YAPAXI@Z (FUNCTION)", "0x10011493"], ["0x10039628", "mov dword ptr [ebp - 0x14], eax", "0x10011498"], ["0x1003962b", "add esp, 4", "0x1001149b"], ["0x1003962e", "mov dword ptr [ebp - 4], 1", "0x1001149e"], ["0x10039635", "mov ebx, eax", "0x100114a5"], ["0x10039637", "mov eax, 0", "0x100114a7"], ["0x1003963c", "test ebx, ebx", "0x100114ac"], ["0x1003963e", "je 0x11", "0x100114ae"], ["0x10039640", "push 'set 56 54 68' (STRING)", "0x100114b0"], ["0x10039645", "mov ecx, ebx", "0x100114b5"], ["0x10039647", "push 'tempBackgroundColor' (STRING)", "0x100114b7"], ["0x1003964c", "call LegoBackgroundColor::LegoBackgroundColor (FUNCTION)", "0x100114bc"], ["0x10039651", "mov dword ptr [ebp - 4], 0xffffffff", "0x100114c1"], ["0x10039658", "push eax", "0x100114c8"]]}, {"orig": [["0x10039659", "mov dword ptr [esi + 0x1c], eax"]], "recomp": [["0x100114c9", "mov dword ptr [edi + 0x1c], eax"]]}, {"both": [["0x1003965c", "call VariableTable (FUNCTION)", "0x100114cc"], ["0x10039661", "mov ecx, eax", "0x100114d1"], ["0x10039663", "call MxVariableTable::SetVariable (FUNCTION)", "0x100114d3"], ["0x10039668", "push 0x24", "0x100114d8"], ["0x1003966a", "call ??2@YAPAXI@Z (FUNCTION)", "0x100114da"], ["0x1003966f", "mov dword ptr [ebp - 0x10], eax", "0x100114df"], ["0x10039672", "add esp, 4", "0x100114e2"], ["0x10039675", "mov dword ptr [ebp - 4], 2", "0x100114e5"]]}, {"orig": [["0x1003967c", "mov edi, eax"]], "recomp": [["0x100114ec", "mov esi, eax"]]}, {"both": [["0x1003967e", "mov eax, 0", "0x100114ee"]]}, {"orig": [["0x10039683", "test edi, edi"]], "recomp": [["0x100114f3", "test esi, esi"]]}, {"both": [["0x10039685", "je 0x11", "0x100114f5"], ["0x10039687", "push 'disable' (STRING)", "0x100114f7"]]}, {"orig": [["0x1003968c", "mov ecx, edi"]], "recomp": [["0x100114fc", "mov ecx, esi"]]}, {"both": [["0x1003968e", "push 'fsmovie' (STRING)", "0x100114fe"], ["0x10039693", "call LegoFullScreenMovie::LegoFullScreenMovie (FUNCTION)", "0x10011503"], ["0x10039698", "mov dword ptr [ebp - 4], 0xffffffff", "0x10011508"], ["0x1003969f", "push eax", "0x1001150f"]]}, {"orig": [["0x100396a0", "mov dword ptr [esi + 0x20], eax"]], "recomp": [["0x10011510", "mov dword ptr [edi + 0x20], eax"]]}, {"both": [["0x100396a3", "call VariableTable (FUNCTION)", "0x10011513"], ["0x100396a8", "mov ecx, eax", "0x10011518"], ["0x100396aa", "call MxVariableTable::SetVariable (FUNCTION)", "0x1001151a"], ["0x100396af", "push '2' (STRING)", "0x1001151f"], ["0x100396b4", "push 'lightposition' (STRING)", "0x10011524"], ["0x100396b9", "call VariableTable (FUNCTION)", "0x10011529"], ["0x100396be", "mov ecx, eax", "0x1001152e"], ["0x100396c0", "call MxVariableTable::SetVariable (FUNCTION)", "0x10011530"], ["0x100396c5", "push 1", "0x10011535"]]}, {"orig": [["0x100396c7", "mov ecx, esi"]], "recomp": [["0x10011537", "mov ecx, edi"]]}, {"both": [["0x100396c9", "call LegoGameState::SerializeScoreHistory (FUNCTION)", "0x10011539"]]}, {"orig": [["0x100396ce", "mov eax, esi"]], "recomp": [["0x1001153e", "mov eax, edi"]]}, {"both": [["0x100396d0", "mov ecx, dword ptr [ebp - 0xc]", "0x10011540"], ["0x100396d3", "mov dword ptr fs:[0], ecx", "0x10011543"], ["0x100396da", "pop edi", "0x1001154a"], ["0x100396db", "pop esi", "0x1001154b"], ["0x100396dc", "pop ebx", "0x1001154c"], ["0x100396dd", "mov esp, ebp", "0x1001154d"], ["0x100396df", "pop ebp", "0x1001154f"], ["0x100396e0", "ret ", "0x10011550"], ["0x100396e1", "mov eax, dword ptr [ebp - 0x10]", "0x10011551"], ["0x100396e4", "push eax", "0x10011554"]]}]]]}, {"address": "0x10039720", "recomp": "0x10011590", "name": "LegoGameState::~LegoGameState", "matching": 1.0, "diff": []}, {"address": "0x10039780", "recomp": "0x100115f0", "name": "LegoGameState::SetActor", "matching": 1.0, "diff": []}, {"address": "0x10039910", "recomp": "0x10011780", "name": "LegoGameState::RemoveActor", "matching": 1.0, "diff": []}, {"address": "0x10039940", "recomp": "0x100117b0", "name": "LegoGameState::ResetROI", "matching": 1.0, "diff": []}, {"address": "0x10039980", "recomp": "0x100117f0", "name": "LegoGameState::Save", "matching": 0.9504950495049505, "diff": [["@@ -0x10039a70,21 +0x100118e0,21 @@", [{"both": [["0x10039a70", "mov eax, dword ptr [ebx]", "0x100118e0"], ["0x10039a72", "lea ecx, [ebp - 0x20]", "0x100118e2"], ["0x10039a75", "push eax", "0x100118e5"], ["0x10039a76", "push edi", "0x100118e6"], ["0x10039a77", "push ecx", "0x100118e7"], ["0x10039a78", "mov ecx, esi", "0x100118e8"], ["0x10039a7a", "call LegoGameState::WriteVariable (FUNCTION)", "0x100118ea"], ["0x10039a7f", "cmp eax, -1", "0x100118ef"], ["0x10039a82", "je 0x11a", "0x100118f2"], ["0x10039a88", "add ebx, 8", "0x100118f8"]]}, {"orig": [["0x10039a8b", "cmp ebx, g_delimiter (DATA)"]], "recomp": [["0x100118fb", "cmp ebx, 'lightposition' (STRING)"]]}, {"both": [["0x10039a91", "jb -0x23", "0x10011901"], ["0x10039a93", "push 'backgroundcolor' (STRING)", "0x10011903"], ["0x10039a98", "lea eax, [ebp - 0x20]", "0x10011908"], ["0x10039a9b", "push edi", "0x1001190b"], ["0x10039a9c", "mov ecx, esi", "0x1001190c"], ["0x10039a9e", "push eax", "0x1001190e"], ["0x10039a9f", "call LegoGameState::WriteVariable (FUNCTION)", "0x1001190f"], ["0x10039aa4", "cmp eax, -1", "0x10011914"], ["0x10039aa7", "je 0xf5", "0x10011917"], ["0x10039aad", "push 'lightposition' (STRING)", "0x1001191d"]]}]], ["@@ -0x10039b2e,60 +0x1001199e,60 @@", [{"both": [["0x10039b2e", "mov ax, word ptr [ebp - 0xe]", "0x1001199e"], ["0x10039b32", "push 2", "0x100119a2"], ["0x10039b34", "mov word ptr [ebp - 0x12], ax", "0x100119a4"], ["0x10039b38", "lea ecx, [ebp - 0x20]", "0x100119a8"], ["0x10039b3b", "lea eax, [ebp - 0x12]", "0x100119ab"], ["0x10039b3e", "mov ebx, dword ptr [ebp - 0x20]", "0x100119ae"], ["0x10039b41", "push eax", "0x100119b1"], ["0x10039b42", "xor edi, edi", "0x100119b2"], ["0x10039b44", "call dword ptr [ebx + 8]", "0x100119b4"], ["0x10039b47", "xor ebx, ebx", "0x100119b7"]]}, {"orig": [["0x10039b49", "cmp word ptr [esi + 4], di"]], "recomp": [["0x100119b9", "cmp word ptr [esi + 4], bx"]]}, {"both": [["0x10039b4d", "jle 0x2a", "0x100119bd"], ["0x10039b4f", "mov eax, dword ptr [esi + 8]", "0x100119bf"]]}, {"orig": [["0x10039b52", "mov ecx, dword ptr [eax + edi]"]], "recomp": [["0x100119c2", "mov ecx, dword ptr [eax + ebx]"]]}, {"both": [["0x10039b55", "mov eax, dword ptr [ecx]", "0x100119c5"], ["0x10039b57", "call dword ptr [eax + 0x14]", "0x100119c7"], ["0x10039b5a", "test al, al", "0x100119ca"], ["0x10039b5c", "je 0xf", "0x100119cc"], ["0x10039b5e", "mov eax, dword ptr [esi + 8]", "0x100119ce"], ["0x10039b61", "lea edx, [ebp - 0x20]", "0x100119d1"], ["0x10039b64", "push edx", "0x100119d4"]]}, {"orig": [["0x10039b65", "mov ecx, dword ptr [eax + edi]"]], "recomp": [["0x100119d5", "mov ecx, dword ptr [eax + ebx]"]]}, {"both": [["0x10039b68", "mov eax, dword ptr [ecx]", "0x100119d8"], ["0x10039b6a", "call dword ptr [eax + 0x1c]", "0x100119da"]]}, {"orig": [["0x10039b6d", "add edi, 4"], ["0x10039b70", "inc ebx"]], "recomp": [["0x100119dd", "add ebx, 4"], ["0x100119e0", "inc edi"]]}, {"both": [["0x10039b71", "movsx eax, word ptr [esi + 4]", "0x100119e1"]]}, {"orig": [["0x10039b75", "cmp eax, ebx"]], "recomp": [["0x100119e5", "cmp eax, edi"]]}, {"both": [["0x10039b77", "jg -0x2a", "0x100119e7"], ["0x10039b79", "mov eax, dword ptr [esi + 0x42c]", "0x100119e9"], ["0x10039b7f", "push 2", "0x100119ef"], ["0x10039b81", "mov word ptr [ebp - 0x12], ax", "0x100119f1"], ["0x10039b85", "lea ecx, [ebp - 0x20]", "0x100119f5"], ["0x10039b88", "lea eax, [ebp - 0x12]", "0x100119f8"], ["0x10039b8b", "mov ebx, dword ptr [ebp - 0x20]", "0x100119fb"], ["0x10039b8e", "push eax", "0x100119fe"], ["0x10039b8f", "call dword ptr [ebx + 8]", "0x100119ff"], ["0x10039b92", "push 2", "0x10011a02"], ["0x10039b94", "mov ecx, esi", "0x10011a04"], ["0x10039b96", "call LegoGameState::SerializeScoreHistory (FUNCTION)", "0x10011a06"], ["0x10039b9b", "mov byte ptr [esi + 0x420], 0", "0x10011a0b"], ["0x10039ba2", "mov byte ptr [ebp - 4], 0", "0x10011a12"]]}, {"orig": [], "recomp": [["0x10011a16", "call <OFFSET22>"], ["0x10011a1b", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x10039ba6", "call <OFFSET23>", "0x10011a22"]]}, {"orig": [["0x10039bab", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10039bb2", "call <OFFSET24>"]], "recomp": []}, {"both": [["0x10039bb7", "mov eax, dword ptr [ebp - 0x24]", "0x10011a27"], ["0x10039bba", "jmp 0x1c", "0x10011a2a"], ["0x10039bbc", "lea ecx, [ebp - 0x34]", "0x10011a2c"], ["0x10039bbf", "jmp MxString::~MxString (FUNCTION)", "0x10011a2f"]]}, {"orig": [["0x10039bc4", "mov eax, <OFFSET26>"]], "recomp": [["0x10011a34", "mov eax, <OFFSET25>"]]}, {"both": [["0x10039bc9", "jmp ___CxxFrameHandler (FUNCTION)", "0x10011a39"], ["0x10039bce", "lea ecx, [ebp - 0x20]", "0x10011a3e"], ["0x10039bd1", "jmp LegoFile::~LegoFile (FUNCTION)", "0x10011a41"], ["0x10039bd6", "xor eax, eax", "0x10011a46"], ["0x10039bd8", "mov ecx, dword ptr [ebp - 0xc]", "0x10011a48"], ["0x10039bdb", "pop edi", "0x10011a4b"], ["0x10039bdc", "mov dword ptr fs:[0], ecx", "0x10011a4c"], ["0x10039be3", "pop esi", "0x10011a53"], ["0x10039be4", "pop ebx", "0x10011a54"], ["0x10039be5", "mov esp, ebp", "0x10011a55"]]}]]]}, {"address": "0x10039bf0", "recomp": "0x10011a60", "name": "LegoGameState::DeleteState", "matching": 0.8085106382978723, "diff": [["@@ -0x10039bf0,47 +0x10011a60,47 @@", [{"both": [["0x10039bf0", "push ebx", "0x10011a60"], ["0x10039bf1", "push esi", "0x10011a61"]]}, {"orig": [], "recomp": [["0x10011a62", "mov ax, word ptr [ecx + 4]"]]}, {"both": [["0x10039bf2", "push edi", "0x10011a66"]]}, {"orig": [], "recomp": [["0x10011a67", "test ax, ax"], ["0x10011a6a", "mov edi, dword ptr [ecx + 8]"]]}, {"both": [["0x10039bf3", "push ebp", "0x10011a6d"]]}, {"orig": [["0x10039bf4", "mov ax, word ptr [ecx + 4]"], ["0x10039bf8", "mov ebx, dword ptr [ecx + 8]"], ["0x10039bfb", "test ax, ax"], ["0x10039bfe", "mov edi, ecx"], ["0x10039c00", "mov word ptr [edi + 4], 0"], ["0x10039c06", "mov dword ptr [edi + 8], 0"]], "recomp": [["0x10011a6e", "mov ebx, ecx"], ["0x10011a70", "mov word ptr [ebx + 4], 0"], ["0x10011a76", "mov dword ptr [ebx + 8], 0"]]}, {"both": [["0x10039c0d", "jle 0x3f", "0x10011a7d"], ["0x10039c0f", "movsx ebp, ax", "0x10011a7f"]]}, {"orig": [["0x10039c12", "mov esi, ebx"]], "recomp": [["0x10011a82", "mov esi, edi"]]}, {"both": [["0x10039c14", "mov ecx, dword ptr [esi]", "0x10011a84"], ["0x10039c16", "mov eax, dword ptr [ecx]", "0x10011a86"], ["0x10039c18", "call dword ptr [eax + 0x18]", "0x10011a88"], ["0x10039c1b", "test al, al", "0x10011a8b"], ["0x10039c1d", "jne 0x19", "0x10011a8d"], ["0x10039c1f", "mov ecx, dword ptr [esi]", "0x10011a8f"], ["0x10039c21", "mov eax, dword ptr [ecx]", "0x10011a91"], ["0x10039c23", "call dword ptr [eax + 0x14]", "0x10011a93"], ["0x10039c26", "test al, al", "0x10011a96"], ["0x10039c28", "je 0xe", "0x10011a98"], ["0x10039c2a", "mov ecx, dword ptr [esi]", "0x10011a9a"], ["0x10039c2c", "test ecx, ecx", "0x10011a9c"], ["0x10039c2e", "je 0x18", "0x10011a9e"], ["0x10039c30", "push 1", "0x10011aa0"], ["0x10039c32", "mov eax, dword ptr [ecx]", "0x10011aa2"], ["0x10039c34", "call dword ptr [eax]", "0x10011aa4"], ["0x10039c36", "jmp 0x10", "0x10011aa6"], ["0x10039c38", "mov eax, dword ptr [esi]", "0x10011aa8"]]}, {"orig": [["0x10039c3a", "mov ecx, edi"]], "recomp": [["0x10011aaa", "mov ecx, ebx"]]}, {"both": [["0x10039c3c", "push eax", "0x10011aac"], ["0x10039c3d", "call LegoGameState::RegisterState (FUNCTION)", "0x10011aad"], ["0x10039c42", "mov dword ptr [esi], 0", "0x10011ab2"], ["0x10039c48", "add esi, 4", "0x10011ab8"], ["0x10039c4b", "dec ebp", "0x10011abb"], ["0x10039c4c", "jne -0x3a", "0x10011abc"]]}, {"orig": [["0x10039c4e", "push ebx"]], "recomp": [["0x10011abe", "push edi"]]}, {"both": [["0x10039c4f", "call ??3@YAXPAX@Z (FUNCTION)", "0x10011abf"], ["0x10039c54", "add esp, 4", "0x10011ac4"], ["0x10039c57", "xor eax, eax", "0x10011ac7"], ["0x10039c59", "pop ebp", "0x10011ac9"], ["0x10039c5a", "pop edi", "0x10011aca"], ["0x10039c5b", "pop esi", "0x10011acb"], ["0x10039c5c", "pop ebx", "0x10011acc"], ["0x10039c5d", "ret ", "0x10011acd"]]}]]]}, {"address": "0x10039c60", "recomp": "0x10011ad0", "name": "LegoGameState::Load", "matching": 0.9234449760765551, "diff": [["@@ -0x10039cee,26 +0x10011b5e,26 @@", [{"both": [["0x10039cee", "call OmniError (FUNCTION)", "0x10011b5e"], ["0x10039cf3", "add esp, 8", "0x10011b63"], ["0x10039cf6", "jmp 0x1a3", "0x10011b66"], ["0x10039cfb", "push 2", "0x10011b6b"], ["0x10039cfd", "lea eax, [esi + 0x24]", "0x10011b6d"], ["0x10039d00", "mov ebx, dword ptr [ebp - 0x20]", "0x10011b70"], ["0x10039d03", "push eax", "0x10011b73"], ["0x10039d04", "lea ecx, [ebp - 0x20]", "0x10011b74"], ["0x10039d07", "call dword ptr [ebx + 4]", "0x10011b77"], ["0x10039d0a", "push 2", "0x10011b7a"]]}, {"orig": [["0x10039d0c", "lea ecx, [ebp - 0xe]"], ["0x10039d0f", "push ecx"], ["0x10039d10", "mov ebx, dword ptr [ebp - 0x20]"], ["0x10039d13", "lea ecx, [ebp - 0x20]"], ["0x10039d16", "call dword ptr [ebx + 4]"], ["0x10039d19", "movsx ecx, word ptr [ebp - 0xe]"]], "recomp": [["0x10011b7c", "lea ecx, [ebp - 0x14]"], ["0x10011b7f", "push ecx"], ["0x10011b80", "mov ebx, dword ptr [ebp - 0x20]"], ["0x10011b83", "lea ecx, [ebp - 0x20]"], ["0x10011b86", "call dword ptr [ebx + 4]"], ["0x10011b89", "movsx ecx, word ptr [ebp - 0x14]"]]}, {"both": [["0x10039d1d", "push ecx", "0x10011b8d"], ["0x10039d1e", "lea ebx, [esi + 0xc]", "0x10011b8e"], ["0x10039d21", "mov ecx, esi", "0x10011b91"], ["0x10039d23", "call LegoGameState::SetCurrentAct (FUNCTION)", "0x10011b93"], ["0x10039d28", "push 1", "0x10011b98"], ["0x10039d2a", "lea ecx, [ebp - 0x20]", "0x10011b9a"], ["0x10039d2d", "push ebx", "0x10011b9d"], ["0x10039d2e", "mov eax, dword ptr [ebp - 0x20]", "0x10011b9e"], ["0x10039d31", "call dword ptr [eax + 4]", "0x10011ba1"], ["0x10039d34", "mov al, byte ptr [ebx]", "0x10011ba4"]]}]], ["@@ -0x10039dc1,76 +0x10011c31,76 @@", [{"both": [["0x10039dc1", "call BuildingManager (FUNCTION)", "0x10011c31"], ["0x10039dc6", "mov ecx, eax", "0x10011c36"], ["0x10039dc8", "call LegoBuildingManager::Load (FUNCTION)", "0x10011c38"], ["0x10039dcd", "cmp eax, -1", "0x10011c3d"], ["0x10039dd0", "je 0xc8", "0x10011c40"], ["0x10039dd6", "mov ecx, esi", "0x10011c46"], ["0x10039dd8", "call LegoGameState::DeleteState (FUNCTION)", "0x10011c48"], ["0x10039ddd", "test eax, eax", "0x10011c4d"], ["0x10039ddf", "jne 0xb9", "0x10011c4f"], ["0x10039de5", "push 2", "0x10011c55"]]}, {"orig": [["0x10039de7", "lea eax, [ebp - 0x10]"]], "recomp": [["0x10011c57", "lea eax, [ebp - 0xe]"]]}, {"both": [["0x10039dea", "mov ebx, dword ptr [ebp - 0x20]", "0x10011c5a"], ["0x10039ded", "push eax", "0x10011c5d"], ["0x10039dee", "lea ecx, [ebp - 0x20]", "0x10011c5e"], ["0x10039df1", "call dword ptr [ebx + 4]", "0x10011c61"], ["0x10039df4", "xor ebx, ebx", "0x10011c64"]]}, {"orig": [["0x10039df6", "cmp word ptr [ebp - 0x10], bx"]], "recomp": [["0x10011c66", "cmp word ptr [ebp - 0xe], bx"]]}, {"both": [["0x10039dfa", "je 0x6c", "0x10011c6a"], ["0x10039dfc", "mov di, 0", "0x10011c6c"], ["0x10039e00", "jle 0x66", "0x10011c70"], ["0x10039e02", "push 2", "0x10011c72"]]}, {"orig": [["0x10039e04", "lea eax, [ebp - 0x12]"]], "recomp": [["0x10011c74", "lea eax, [ebp - 0x10]"]]}, {"both": [["0x10039e07", "push eax", "0x10011c77"], ["0x10039e08", "lea ecx, [ebp - 0x20]", "0x10011c78"], ["0x10039e0b", "mov eax, dword ptr [ebp - 0x20]", "0x10011c7b"], ["0x10039e0e", "call dword ptr [eax + 4]", "0x10011c7e"]]}, {"orig": [["0x10039e11", "movsx ecx, word ptr [ebp - 0x12]"]], "recomp": [["0x10011c81", "movsx ecx, word ptr [ebp - 0x10]"]]}, {"both": [["0x10039e15", "push ecx", "0x10011c85"], ["0x10039e16", "lea edx, [ebp - 0x88]", "0x10011c86"], ["0x10039e1c", "mov eax, dword ptr [ebp - 0x20]", "0x10011c8c"], ["0x10039e1f", "push edx", "0x10011c8f"], ["0x10039e20", "lea ecx, [ebp - 0x20]", "0x10011c90"], ["0x10039e23", "call dword ptr [eax + 4]", "0x10011c93"]]}, {"orig": [["0x10039e26", "movsx ecx, word ptr [ebp - 0x12]"]], "recomp": [["0x10011c96", "movsx ecx, word ptr [ebp - 0x10]"]]}, {"both": [["0x10039e2a", "lea edx, [ebp - 0x88]", "0x10011c9a"], ["0x10039e30", "mov byte ptr [ebp + ecx - 0x88], bl", "0x10011ca0"], ["0x10039e37", "push edx", "0x10011ca7"], ["0x10039e38", "mov ecx, esi", "0x10011ca8"], ["0x10039e3a", "call LegoGameState::GetState (FUNCTION)", "0x10011caa"], ["0x10039e3f", "test eax, eax", "0x10011caf"], ["0x10039e41", "jne 0x12", "0x10011cb1"], ["0x10039e43", "lea eax, [ebp - 0x88]", "0x10011cb3"], ["0x10039e49", "mov ecx, esi", "0x10011cb9"], ["0x10039e4b", "push eax", "0x10011cbb"], ["0x10039e4c", "call LegoGameState::CreateState (FUNCTION)", "0x10011cbc"], ["0x10039e51", "test eax, eax", "0x10011cc1"], ["0x10039e53", "je 0x49", "0x10011cc3"], ["0x10039e55", "inc di", "0x10011cc5"], ["0x10039e57", "lea ecx, [ebp - 0x20]", "0x10011cc7"], ["0x10039e5a", "push ecx", "0x10011cca"], ["0x10039e5b", "mov edx, dword ptr [eax]", "0x10011ccb"], ["0x10039e5d", "mov ecx, eax", "0x10011ccd"], ["0x10039e5f", "call dword ptr [edx + 0x1c]", "0x10011ccf"]]}, {"orig": [["0x10039e62", "cmp word ptr [ebp - 0x10], di"], ["0x10039e66", "jg -0x66"], ["0x10039e68", "push 2"], ["0x10039e6a", "lea eax, [ebp - 0xe]"]], "recomp": [["0x10011cd2", "cmp di, word ptr [ebp - 0xe]"], ["0x10011cd6", "jl -0x66"], ["0x10011cd8", "push 2"], ["0x10011cda", "lea eax, [ebp - 0x12]"]]}, {"both": [["0x10039e6d", "mov ebx, dword ptr [ebp - 0x20]", "0x10011cdd"], ["0x10039e70", "push eax", "0x10011ce0"], ["0x10039e71", "lea ecx, [ebp - 0x20]", "0x10011ce1"], ["0x10039e74", "call dword ptr [ebx + 4]", "0x10011ce4"], ["0x10039e77", "cmp dword ptr [esi + 0x10], 0", "0x10011ce7"], ["0x10039e7b", "jne 0xc", "0x10011ceb"], ["0x10039e7d", "mov dword ptr [esi + 0x42c], 0", "0x10011ced"], ["0x10039e87", "jmp 0xa", "0x10011cf7"]]}, {"orig": [["0x10039e89", "movsx eax, word ptr [ebp - 0xe]"]], "recomp": [["0x10011cf9", "movsx eax, word ptr [ebp - 0x12]"]]}, {"both": [["0x10039e8d", "mov dword ptr [esi + 0x42c], eax", "0x10011cfd"], ["0x10039e93", "xor eax, eax", "0x10011d03"], ["0x10039e95", "mov dword ptr [ebp - 0x24], eax", "0x10011d05"], ["0x10039e98", "mov byte ptr [esi + 0x420], al", "0x10011d08"], ["0x10039e9e", "cmp dword ptr [ebp - 0x24], 0", "0x10011d0e"], ["0x10039ea2", "je 0xf", "0x10011d12"], ["0x10039ea4", "push 0", "0x10011d14"], ["0x10039ea6", "push 'Game state loading was not successful!' (STRING)", "0x10011d16"], ["0x10039eab", "call OmniError (FUNCTION)", "0x10011d1b"], ["0x10039eb0", "add esp, 8", "0x10011d20"]]}]]]}, {"address": "0x10039f00", "recomp": "0x10011d70", "name": "LegoGameState::SetSavePath", "matching": 1.0, "diff": []}, {"address": "0x10039f70", "recomp": "0x10011de0", "name": "LegoGameState::WriteVariable", "matching": 1.0, "diff": []}, {"address": "0x1003a020", "recomp": "0x10011e90", "name": "LegoGameState::WriteEndOfVariables", "matching": 1.0, "diff": []}, {"address": "0x1003a080", "recomp": "0x10011ef0", "name": "LegoGameState::ReadVariable", "matching": 1.0, "diff": []}, {"address": "0x1003a170", "recomp": "0x10011fe0", "name": "LegoGameState::GetFileSavePath", "matching": 1.0, "diff": []}, {"address": "0x1003a2e0", "recomp": "0x10012150", "name": "LegoGameState::SerializePlayersInfo", "matching": 1.0, "diff": []}, {"address": "0x1003a3f0", "recomp": "0x10012260", "name": "LegoGameState::AddPlayer", "matching": 0.8725490196078431, "diff": [["@@ -0x1003a434,49 +0x100122a4,50 @@", [{"both": [["0x1003a434", "lea eax, [ebp - 0x20]", "0x100122a4"], ["0x1003a437", "push eax", "0x100122a7"], ["0x1003a438", "mov ecx, esi", "0x100122a8"], ["0x1003a43a", "call LegoGameState::GetFileSavePath (FUNCTION)", "0x100122aa"], ["0x1003a43f", "mov eax, dword ptr [ebp - 0x18]", "0x100122af"], ["0x1003a442", "push eax", "0x100122b2"], ["0x1003a443", "call dword ptr [__imp__DeleteFileA@4 (POINTER)]", "0x100122b3"], ["0x1003a449", "dec word ptr [esi + 0x26]", "0x100122b9"], ["0x1003a44d", "mov bx, word ptr [esi + 0x26]", "0x100122bd"], ["0x1003a451", "test bx, bx", "0x100122c1"]]}, {"orig": [["0x1003a454", "jle 0x4b"]], "recomp": [["0x100122c4", "jle 0x4a"], ["0x100122c6", "mov edi, dword ptr [__imp__MoveFileA@8 (POINTER)]"]]}, {"both": [["0x1003a456", "movsx ecx, bx", "0x100122cc"], ["0x1003a459", "mov eax, ecx", "0x100122cf"]]}, {"orig": [["0x1003a45b", "lea edi, [ebx - 1]"]], "recomp": []}, {"both": [["0x1003a45e", "shl ecx, 3", "0x100122d1"], ["0x1003a461", "sub ecx, eax", "0x100122d4"], ["0x1003a463", "lea eax, [esi + ecx*2 + 0x1a]", "0x100122d6"], ["0x1003a467", "lea ecx, [esi + ecx*2]", "0x100122da"], ["0x1003a46a", "push eax", "0x100122dd"], ["0x1003a46b", "add ecx, 0x28", "0x100122de"], ["0x1003a46e", "call LegoGameState::Username::operator= (FUNCTION)", "0x100122e1"]]}, {"orig": [["0x1003a473", "push edi"]], "recomp": [["0x100122e6", "mov al, bl"]]}, {"both": [["0x1003a474", "lea ecx, [ebp - 0x20]", "0x100122e8"]]}, {"orig": [], "recomp": [["0x100122eb", "dec al"], ["0x100122ed", "push eax"]]}, {"both": [["0x1003a477", "push ecx", "0x100122ee"], ["0x1003a478", "mov ecx, esi", "0x100122ef"], ["0x1003a47a", "call LegoGameState::GetFileSavePath (FUNCTION)", "0x100122f1"], ["0x1003a47f", "push ebx", "0x100122f6"]]}, {"orig": [["0x1003a480", "lea eax, [ebp - 0x30]"], ["0x1003a483", "mov bx, di"], ["0x1003a486", "push eax"]], "recomp": [["0x100122f7", "lea ecx, [ebp - 0x30]"], ["0x100122fa", "push ecx"]]}, {"both": [["0x1003a487", "mov ecx, esi", "0x100122fb"], ["0x1003a489", "call LegoGameState::GetFileSavePath (FUNCTION)", "0x100122fd"]]}, {"orig": [["0x1003a48e", "mov eax, dword ptr [ebp - 0x28]"], ["0x1003a491", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1003a494", "push eax"]], "recomp": [["0x10012302", "mov ecx, dword ptr [ebp - 0x28]"], ["0x10012305", "mov edx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x1003a495", "push ecx", "0x10012308"]]}, {"orig": [["0x1003a496", "call dword ptr [__imp__MoveFileA@8 (POINTER)]"], ["0x1003a49c", "test di, di"], ["0x1003a49f", "jne -0x4b"]], "recomp": [["0x10012309", "push edx"], ["0x1001230a", "call edi"], ["0x1001230c", "dec bx"], ["0x1001230e", "jne -0x44"]]}, {"both": [["0x1003a4a1", "inc word ptr [esi + 0x26]", "0x10012310"], ["0x1003a4a5", "mov edx, dword ptr [ebp + 8]", "0x10012314"], ["0x1003a4a8", "lea ecx, [esi + 0x28]", "0x10012317"], ["0x1003a4ab", "mov eax, dword ptr [edx]", "0x1001231a"], ["0x1003a4ad", "mov dword ptr [ecx], eax", "0x1001231c"], ["0x1003a4af", "mov ebx, dword ptr [edx + 4]", "0x1001231e"], ["0x1003a4b2", "mov dword ptr [ecx + 4], ebx", "0x10012321"], ["0x1003a4b5", "mov edi, dword ptr [edx + 8]", "0x10012324"], ["0x1003a4b8", "mov dword ptr [ecx + 8], edi", "0x10012327"], ["0x1003a4bb", "mov ax, word ptr [edx + 0xc]", "0x1001232a"]]}]], ["@@ -0x1003a518,10 +0x10012387,11 @@", [{"both": [["0x1003a518", "pop esi", "0x10012387"], ["0x1003a519", "pop ebx", "0x10012388"], ["0x1003a51a", "mov esp, ebp", "0x10012389"], ["0x1003a51c", "pop ebp", "0x1001238b"], ["0x1003a51d", "ret 4", "0x1001238c"], ["0x1003a520", "lea ecx, [ebp - 0x30]", "0x1001238f"], ["0x1003a523", "jmp MxString::~MxString (FUNCTION)", "0x10012392"], ["0x1003a528", "mov eax, <OFFSET13>", "0x10012397"], ["0x1003a52d", "jmp ___CxxFrameHandler (FUNCTION)", "0x1001239c"], ["0x1003a532", "lea ecx, [ebp - 0x20]", "0x100123a1"]]}, {"orig": [], "recomp": [["0x100123a4", "jmp MxString::~MxString (FUNCTION)"]]}]]]}, {"address": "0x1003a540", "recomp": "0x100123b0", "name": "LegoGameState::SwitchPlayer", "matching": 0.7674418604651163, "diff": [["@@ -0x1003a540,97 +0x100123b0,96 @@", [{"both": [["0x1003a540", "mov eax, dword ptr fs:[0]", "0x100123b0"], ["0x1003a546", "push ebp", "0x100123b6"], ["0x1003a547", "mov ebp, esp", "0x100123b7"], ["0x1003a549", "push -1", "0x100123b9"], ["0x1003a54b", "push <OFFSET1>", "0x100123bb"], ["0x1003a550", "push eax", "0x100123c0"], ["0x1003a551", "mov dword ptr fs:[0], esp", "0x100123c1"], ["0x1003a558", "sub esp, 0x44", "0x100123c8"], ["0x1003a55b", "mov dword ptr [ebp - 0x10], ecx", "0x100123cb"], ["0x1003a55e", "push ebx", "0x100123ce"]]}, {"orig": [], "recomp": [["0x100123cf", "mov bx, word ptr [ebp + 8]"]]}, {"both": [["0x1003a55f", "push esi", "0x100123d3"]]}, {"orig": [["0x1003a560", "push edi"], ["0x1003a561", "mov di, word ptr [ebp + 8]"], ["0x1003a565", "test di, di"], ["0x1003a568", "jle 0x119"]], "recomp": [["0x100123d4", "test bx, bx"], ["0x100123d7", "jle 0x115"]]}, {"both": [["0x1003a56e", "lea ecx, [ebp - 0x20]", "0x100123dd"], ["0x1003a571", "call MxString::MxString (FUNCTION)", "0x100123e0"], ["0x1003a576", "mov dword ptr [ebp - 4], 0", "0x100123e5"], ["0x1003a57d", "lea ecx, [ebp - 0x30]", "0x100123ec"], ["0x1003a580", "call MxString::MxString (FUNCTION)", "0x100123ef"], ["0x1003a585", "mov byte ptr [ebp - 4], 1", "0x100123f4"], ["0x1003a589", "lea ecx, [ebp - 0x40]", "0x100123f8"], ["0x1003a58c", "call MxString::MxString (FUNCTION)", "0x100123fb"]]}, {"orig": [["0x1003a591", "push edi"]], "recomp": [["0x10012400", "push ebx"]]}, {"both": [["0x1003a592", "lea eax, [ebp - 0x20]", "0x10012401"], ["0x1003a595", "push eax", "0x10012404"], ["0x1003a596", "mov ecx, dword ptr [ebp - 0x10]", "0x10012405"], ["0x1003a599", "mov byte ptr [ebp - 4], 2", "0x10012408"], ["0x1003a59d", "call LegoGameState::GetFileSavePath (FUNCTION)", "0x1001240c"], ["0x1003a5a2", "push 0x24", "0x10012411"], ["0x1003a5a4", "lea eax, [ebp - 0x30]", "0x10012413"], ["0x1003a5a7", "push eax", "0x10012416"], ["0x1003a5a8", "mov ecx, dword ptr [ebp - 0x10]", "0x10012417"], ["0x1003a5ab", "call LegoGameState::GetFileSavePath (FUNCTION)", "0x1001241a"]]}, {"orig": [["0x1003a5b0", "movsx ecx, di"]], "recomp": [["0x1001241f", "movsx ecx, bx"]]}, {"both": [["0x1003a5b3", "mov eax, ecx", "0x10012422"], ["0x1003a5b5", "lea edx, [ebp - 0x50]", "0x10012424"], ["0x1003a5b8", "shl ecx, 3", "0x10012427"], ["0x1003a5bb", "sub ecx, eax", "0x1001242a"], ["0x1003a5bd", "mov eax, dword ptr [ebp - 0x10]", "0x1001242c"]]}, {"orig": [["0x1003a5c0", "mov ebx, dword ptr [eax + ecx*2 + 0x2c]"], ["0x1003a5c4", "mov esi, dword ptr [eax + ecx*2 + 0x30]"]], "recomp": [["0x1001242f", "mov esi, dword ptr [eax + ecx*2 + 0x2c]"]]}, {"both": [["0x1003a5c8", "lea ecx, [eax + ecx*2]", "0x10012433"], ["0x1003a5cb", "mov eax, dword ptr [ecx + 0x28]", "0x10012436"], ["0x1003a5ce", "add ecx, 0x28", "0x10012439"], ["0x1003a5d1", "mov dword ptr [edx], eax", "0x1001243c"]]}, {"orig": [["0x1003a5d3", "mov ax, word ptr [ecx + 0xc]"], ["0x1003a5d7", "mov dword ptr [edx + 4], ebx"], ["0x1003a5da", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1003a5dd", "mov dword ptr [edx + 8], esi"], ["0x1003a5e0", "mov word ptr [edx + 0xc], ax"], ["0x1003a5e4", "mov esi, dword ptr [__imp__MoveFileA@8 (POINTER)]"]], "recomp": [["0x1001243e", "mov dword ptr [edx + 4], esi"], ["0x10012441", "mov eax, dword ptr [ecx + 8]"], ["0x10012444", "mov cx, word ptr [ecx + 0xc]"], ["0x10012448", "mov dword ptr [edx + 8], eax"], ["0x1001244b", "mov word ptr [edx + 0xc], cx"]]}, {"both": [["0x1003a5ea", "mov eax, dword ptr [ebp - 0x28]", "0x1001244f"], ["0x1003a5ed", "push eax", "0x10012452"]]}, {"orig": [], "recomp": [["0x10012453", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x1003a5ee", "push ecx", "0x10012456"]]}, {"orig": [], "recomp": [["0x10012457", "mov esi, dword ptr [__imp__MoveFileA@8 (POINTER)]"]]}, {"both": [["0x1003a5ef", "call esi", "0x1001245d"]]}, {"orig": [["0x1003a5f1", "test di, di"], ["0x1003a5f4", "jle 0x4c"], ["0x1003a5f6", "movsx ecx, di"]], "recomp": [["0x1001245f", "test bx, bx"], ["0x10012462", "jle 0x49"], ["0x10012464", "movsx ecx, bx"]]}, {"both": [["0x1003a5f9", "mov eax, ecx", "0x10012467"]]}, {"orig": [["0x1003a5fb", "lea ebx, [edi - 1]"]], "recomp": []}, {"both": [["0x1003a5fe", "shl ecx, 3", "0x10012469"], ["0x1003a601", "sub ecx, eax", "0x1001246c"], ["0x1003a603", "mov eax, dword ptr [ebp - 0x10]", "0x1001246e"], ["0x1003a606", "lea edx, [eax + ecx*2 + 0x1a]", "0x10012471"], ["0x1003a60a", "lea ecx, [eax + ecx*2]", "0x10012475"], ["0x1003a60d", "push edx", "0x10012478"], ["0x1003a60e", "add ecx, 0x28", "0x10012479"], ["0x1003a611", "call LegoGameState::Username::operator= (FUNCTION)", "0x1001247c"]]}, {"orig": [["0x1003a616", "push ebx"]], "recomp": [["0x10012481", "mov al, bl"]]}, {"both": [["0x1003a617", "lea ecx, [ebp - 0x20]", "0x10012483"]]}, {"orig": [], "recomp": [["0x10012486", "dec al"], ["0x10012488", "push eax"]]}, {"both": [["0x1003a61a", "push ecx", "0x10012489"], ["0x1003a61b", "mov ecx, dword ptr [ebp - 0x10]", "0x1001248a"], ["0x1003a61e", "call LegoGameState::GetFileSavePath (FUNCTION)", "0x1001248d"]]}, {"orig": [["0x1003a623", "push edi"], ["0x1003a624", "lea eax, [ebp - 0x40]"], ["0x1003a627", "mov di, bx"], ["0x1003a62a", "push eax"]], "recomp": [["0x10012492", "push ebx"], ["0x10012493", "lea ecx, [ebp - 0x40]"], ["0x10012496", "push ecx"]]}, {"both": [["0x1003a62b", "mov ecx, dword ptr [ebp - 0x10]", "0x10012497"], ["0x1003a62e", "call LegoGameState::GetFileSavePath (FUNCTION)", "0x1001249a"]]}, {"orig": [["0x1003a633", "mov eax, dword ptr [ebp - 0x38]"], ["0x1003a636", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1003a639", "push eax"]], "recomp": [["0x1001249f", "mov ecx, dword ptr [ebp - 0x38]"], ["0x100124a2", "mov edx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x1003a63a", "push ecx", "0x100124a5"]]}, {"orig": [], "recomp": [["0x100124a6", "push edx"]]}, {"both": [["0x1003a63b", "call esi", "0x100124a7"]]}, {"orig": [["0x1003a63d", "test bx, bx"], ["0x1003a640", "jne -0x4c"]], "recomp": [["0x100124a9", "dec bx"], ["0x100124ab", "jne -0x49"]]}, {"both": [["0x1003a642", "lea eax, [ebp - 0x50]", "0x100124ad"], ["0x1003a645", "mov ecx, dword ptr [ebp - 0x10]", "0x100124b0"], ["0x1003a648", "push eax", "0x100124b3"], ["0x1003a649", "add ecx, 0x28", "0x100124b4"], ["0x1003a64c", "call LegoGameState::Username::operator= (FUNCTION)", "0x100124b7"], ["0x1003a651", "push 0", "0x100124bc"], ["0x1003a653", "lea eax, [ebp - 0x20]", "0x100124be"], ["0x1003a656", "push eax", "0x100124c1"], ["0x1003a657", "mov ecx, dword ptr [ebp - 0x10]", "0x100124c2"], ["0x1003a65a", "call LegoGameState::GetFileSavePath (FUNCTION)", "0x100124c5"]]}]], ["@@ -0x1003a67b,23 +0x100124e6,24 @@", [{"both": [["0x1003a67b", "mov dword ptr [ebp - 4], 0xffffffff", "0x100124e6"], ["0x1003a682", "call <OFFSET8>", "0x100124ed"], ["0x1003a687", "push 0", "0x100124f2"], ["0x1003a689", "mov ecx, dword ptr [ebp - 0x10]", "0x100124f4"], ["0x1003a68c", "call LegoGameState::Load (FUNCTION)", "0x100124f7"], ["0x1003a691", "test eax, eax", "0x100124fc"], ["0x1003a693", "je 0x8", "0x100124fe"], ["0x1003a695", "mov ecx, dword ptr [ebp - 0x10]", "0x10012500"], ["0x1003a698", "call LegoGameState::Init (FUNCTION)", "0x10012503"], ["0x1003a69d", "mov eax, dword ptr [ebp - 0xc]", "0x10012508"]]}, {"orig": [["0x1003a6a0", "pop edi"]], "recomp": [["0x1001250b", "pop esi"]]}, {"both": [["0x1003a6a1", "mov dword ptr fs:[0], eax", "0x1001250c"]]}, {"orig": [["0x1003a6a7", "pop esi"]], "recomp": []}, {"both": [["0x1003a6a8", "pop ebx", "0x10012512"], ["0x1003a6a9", "mov esp, ebp", "0x10012513"], ["0x1003a6ab", "pop ebp", "0x10012515"], ["0x1003a6ac", "ret 4", "0x10012516"], ["0x1003a6af", "lea ecx, [ebp - 0x40]", "0x10012519"], ["0x1003a6b2", "jmp MxString::~MxString (FUNCTION)", "0x1001251c"], ["0x1003a6b7", "lea ecx, [ebp - 0x30]", "0x10012521"], ["0x1003a6ba", "jmp MxString::~MxString (FUNCTION)", "0x10012524"], ["0x1003a6bf", "mov eax, <OFFSET12>", "0x10012529"], ["0x1003a6c4", "jmp ___CxxFrameHandler (FUNCTION)", "0x1001252e"]]}, {"orig": [], "recomp": [["0x10012533", "lea ecx, [ebp - 0x20]"], ["0x10012536", "jmp MxString::~MxString (FUNCTION)"]]}]]]}, {"address": "0x1003a6e0", "recomp": "0x10012540", "name": "LegoGameState::FindPlayer", "matching": 1.0, "diff": []}, {"address": "0x1003a720", "recomp": "0x10012580", "name": "LegoGameState::StopArea", "matching": 0.9426176660219213, "diff": [["@@ -0x1003a720,20 +0x10012580,20 @@", [{"both": [["0x1003a720", "mov eax, dword ptr [esp + 4]", "0x10012580"], ["0x1003a724", "test eax, eax", "0x10012584"], ["0x1003a726", "jne 0x6", "0x10012586"], ["0x1003a728", "mov eax, dword ptr [ecx + 0x428]", "0x10012588"], ["0x1003a72e", "dec eax", "0x1001258e"], ["0x1003a72f", "cmp eax, 0x37", "0x1001258f"], ["0x1003a732", "ja 0x87d", "0x10012592"], ["0x1003a738", "xor edx, edx", "0x10012598"]]}, {"orig": [["0x1003a73a", "mov dl, byte ptr [eax + 0x1003b024]"], ["0x1003a740", "jmp dword ptr [edx*4 + 0x1003afb8]"]], "recomp": [["0x1001259a", "mov dl, byte ptr [eax + 0x10012e84]"], ["0x100125a0", "jmp dword ptr [edx*4 + 0x10012e18]"]]}, {"both": [["0x1003a747", "push 0", "0x100125a7"], ["0x1003a749", "mov eax, dword ptr [g_isleScript (DATA)]", "0x100125a9"], ["0x1003a74e", "push 0", "0x100125ae"], ["0x1003a750", "push eax", "0x100125b0"], ["0x1003a751", "push 5", "0x100125b1"], ["0x1003a753", "call InvokeAction (FUNCTION)", "0x100125b3"], ["0x1003a758", "add esp, 0x10", "0x100125b8"], ["0x1003a75b", "mov eax, dword ptr [g_isleScript (DATA)]", "0x100125bb"], ["0x1003a760", "push 0", "0x100125c0"], ["0x1003a762", "push 0", "0x100125c2"]]}]], ["@@ -0x1003af99,64 +0x10012df9,67 @@", [{"both": [["0x1003af99", "call InvokeAction (FUNCTION)", "0x10012df9"], ["0x1003af9e", "add esp, 0x10", "0x10012dfe"], ["0x1003afa1", "mov eax, dword ptr [g_histbookScript (DATA)]", "0x10012e01"], ["0x1003afa6", "push 0", "0x10012e06"], ["0x1003afa8", "push 0", "0x10012e08"], ["0x1003afaa", "push eax", "0x10012e0a"], ["0x1003afab", "push 3", "0x10012e0b"], ["0x1003afad", "call InvokeAction (FUNCTION)", "0x10012e0d"], ["0x1003afb2", "add esp, 0x10", "0x10012e12"], ["0x1003afb5", "ret 4", "0x10012e15"]]}, {"orig": [["0x1003afb8", "inc edi"]], "recomp": []}, {"both": [["0x1003afb9", "cmpsd dword ptr [esi], dword ptr es:[edi]", "0x10012e18"]]}, {"orig": [["0x1003afba", "add edx, dword ptr [eax]"], ["0x1003afbc", "xchg byte ptr [edi - 0x584eeffd], ah"], ["0x1003afc2", "add edx, dword ptr [eax]"], ["0x1003afc4", "fsub qword ptr [edi - 0x57f8effd]"], ["0x1003afca", "add edx, dword ptr [eax]"], ["0x1003afcc", "push es"], ["0x1003afcd", "test eax, 0xa94d1003"], ["0x1003afd2", "add edx, dword ptr [eax]"], ["0x1003afd4", "xchg esp, eax"], ["0x1003afd5", "test eax, 0xab5f1003"], ["0x1003afda", "add edx, dword ptr [eax]"], ["0x1003afdc", "mov ebp, 0xe81003ab"], ["0x1003afe1", "stosd dword ptr es:[edi], eax"], ["0x1003afe2", "add edx, dword ptr [eax]"], ["0x1003afe4", "adc ebp, dword ptr [ebx + eax + 0x3ac5210]"], ["0x1003afeb", "adc byte ptr [ecx - 0x2feffc54], dl"], ["0x1003aff1", "lodsb al, byte ptr [esi]"], ["0x1003aff2", "add edx, dword ptr [eax]"], ["0x1003aff4", "lodsd eax, dword ptr cs:[esi]"], ["0x1003aff6", "add edx, dword ptr [eax]"], ["0x1003aff8", "pop ecx"]], "recomp": [["0x10012e19", "and eax, 0x25e61001"], ["0x10012e1e", "add dword ptr [eax], edx"], ["0x10012e20", "adc dword ptr [esi], esp"], ["0x10012e22", "add dword ptr [eax], edx"], ["0x10012e24", "cmp al, 0x26"], ["0x10012e26", "add dword ptr [eax], edx"], ["0x10012e28", "add dword ptr es:[bx + si], edx"], ["0x10012e2c", "daa "], ["0x10012e2e", "add dword ptr [eax], edx"]]}, {"both": [["0x1003aff9", "lodsd eax, dword ptr [esi]", "0x10012e30"]]}, {"orig": [["0x1003affa", "add edx, dword ptr [eax]"], ["0x1003affc", "test byte ptr [ebp - 0x521deffd], ch"], ["0x1003b002", "add edx, dword ptr [eax]"], ["0x1003b004", "and dword ptr [esi - 0x519feffd], ebp"], ["0x1003b00a", "add edx, dword ptr [eax]"], ["0x1003b00c", "lahf "]], "recomp": [["0x10012e31", "daa "], ["0x10012e32", "add dword ptr [eax], edx"], ["0x10012e34", "hlt "], ["0x10012e35", "daa "], ["0x10012e36", "add dword ptr [eax], edx"], ["0x10012e38", "mov edi, 0x1d100129"], ["0x10012e3d", "sub al, byte ptr [ecx]"], ["0x10012e3f", "adc byte ptr [eax + 0x2a], cl"], ["0x10012e42", "add dword ptr [eax], edx"], ["0x10012e44", "jae 0x2a"], ["0x10012e46", "add dword ptr [eax], edx"], ["0x10012e48", "mov dl, 0x2a"], ["0x10012e4a", "add dword ptr [eax], edx"], ["0x10012e4c", "int1 "], ["0x10012e4d", "sub al, byte ptr [ecx]"], ["0x10012e4f", "adc byte ptr [eax], dh"], ["0x10012e51", "sub eax, dword ptr [ecx]"], ["0x10012e53", "adc byte ptr [esi - 0x46effed5], cl"], ["0x10012e59", "sub eax, dword ptr [ecx]"], ["0x10012e5b", "adc ah, ah"], ["0x10012e5d", "sub eax, dword ptr [ecx]"], ["0x10012e5f", "adc byte ptr [edx + 0x2c], al"], ["0x10012e62", "add dword ptr [eax], edx"], ["0x10012e64", "sub dword ptr [ecx + eax], 0x12cc010"], ["0x10012e6b", "adc bh, bh"], ["0x10012e6d", "sub al, 1"], ["0x10012e6f", "adc byte ptr [esi], bh"], ["0x10012e71", "sub eax, 0x2d761001"], ["0x10012e76", "add dword ptr [eax], edx"]]}, {"both": [["0x1003b00d", "scasb al, byte ptr es:[edi]", "0x10012e78"]]}, {"orig": [["0x1003b00e", "add edx, dword ptr [eax]"], ["0x1003b010", "fisubr word ptr [esi - 0x50e9effd]"], ["0x1003b016", "add edx, dword ptr [eax]"], ["0x1003b018", "dec esi"], ["0x1003b019", "scasd eax, dword ptr es:[edi]"], ["0x1003b01a", "add edx, dword ptr [eax]"], ["0x1003b01c", "jns -0x51"], ["0x1003b01e", "add edx, dword ptr [eax]"], ["0x1003b020", "mov ch, 0xaf"], ["0x1003b022", "add edx, dword ptr [eax]"], ["0x1003b024", "add byte ptr [ecx], al"], ["0x1003b026", "add bl, byte ptr [edx]"], ["0x1003b028", "add eax, dword ptr [esp + eax]"]], "recomp": [["0x10012e79", "sub eax, 0x2dd91001"], ["0x10012e7e", "add dword ptr [eax], edx"], ["0x10012e80", "adc eax, 0x10012e"], ["0x10012e85", "add dword ptr [edx], eax"], ["0x10012e87", "sbb al, byte ptr [ebx]"], ["0x10012e89", "add al, 4"]]}, {"both": [["0x1003b02b", "add eax, 0x9080706", "0x10012e8b"], ["0x1003b030", "or cl, byte ptr [ebx]", "0x10012e90"], ["0x1003b032", "sbb bl, byte ptr [edx]", "0x10012e92"], ["0x1003b034", "sbb cl, byte ptr [edx + ebx]", "0x10012e94"], ["0x1003b037", "sbb bl, byte ptr [edx]", "0x10012e97"], ["0x1003b039", "sbb bl, byte ptr [edx]", "0x10012e99"], ["0x1003b03b", "sbb bl, byte ptr [edx]", "0x10012e9b"], ["0x1003b03d", "or eax, 0xf1a1a0e", "0x10012e9d"], ["0x1003b042", "sbb bl, byte ptr [edx]", "0x10012ea2"], ["0x1003b044", "sbb dl, byte ptr [eax]", "0x10012ea4"]]}]]]}, {"address": "0x1003b060", "recomp": "0x10012ec0", "name": "LegoGameState::SwitchArea", "matching": 0.9516380655226209, "diff": [["@@ -0x1003b067,41 +0x10012ec7,41 @@", [{"both": [["0x1003b067", "mov ebp, esp", "0x10012ec7"], ["0x1003b069", "push -1", "0x10012ec9"], ["0x1003b06b", "push <OFFSET1>", "0x10012ecb"], ["0x1003b070", "push eax", "0x10012ed0"], ["0x1003b071", "mov dword ptr fs:[0], esp", "0x10012ed1"], ["0x1003b078", "sub esp, 0x18", "0x10012ed8"], ["0x1003b07b", "push esi", "0x10012edb"], ["0x1003b07c", "push 3", "0x10012edc"], ["0x1003b07e", "mov eax, dword ptr [ecx + 0x424]", "0x10012ede"], ["0x1003b084", "mov esi, ecx", "0x10012ee4"]]}, {"orig": [], "recomp": [["0x10012ee6", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x1003b086", "push 1", "0x10012ee9"], ["0x1003b088", "mov dword ptr [esi + 0x428], eax", "0x10012eeb"]]}, {"orig": [["0x1003b08e", "mov ecx, dword ptr [ebp + 8]"]], "recomp": []}, {"both": [["0x1003b091", "mov dword ptr [esi + 0x424], ecx", "0x10012ef1"], ["0x1003b097", "call FUN_10015820 (FUNCTION)", "0x10012ef7"], ["0x1003b09c", "add esp, 8", "0x10012efc"], ["0x1003b09f", "call BackgroundAudioManager (FUNCTION)", "0x10012eff"], ["0x1003b0a4", "mov ecx, eax", "0x10012f04"], ["0x1003b0a6", "call MxBackgroundAudioManager::Stop (FUNCTION)", "0x10012f06"], ["0x1003b0ab", "call AnimationManager (FUNCTION)", "0x10012f0b"], ["0x1003b0b0", "mov ecx, eax", "0x10012f10"], ["0x1003b0b2", "call LegoAnimationManager::FUN_1005ef10 (FUNCTION)", "0x10012f12"], ["0x1003b0b7", "call VideoManager (FUNCTION)", "0x10012f17"], ["0x1003b0bc", "mov byte ptr [eax + 0x554], 0", "0x10012f1c"], ["0x1003b0c3", "mov eax, dword ptr [ebp + 8]", "0x10012f23"], ["0x1003b0c6", "dec eax", "0x10012f26"], ["0x1003b0c7", "cmp eax, 0x41", "0x10012f27"], ["0x1003b0ca", "ja 0x8c4", "0x10012f2a"], ["0x1003b0d0", "xor ecx, ecx", "0x10012f30"]]}, {"orig": [["0x1003b0d2", "mov cl, byte ptr [eax + 0x1003ba40]"], ["0x1003b0d8", "jmp dword ptr [ecx*4 + 0x1003b9a4]"]], "recomp": [["0x10012f32", "mov cl, byte ptr [eax + 0x100138a0]"], ["0x10012f38", "jmp dword ptr [ecx*4 + 0x10013804]"]]}, {"both": [["0x1003b0df", "push 0", "0x10012f3f"], ["0x1003b0e1", "mov eax, dword ptr [g_isleScript (DATA)]", "0x10012f41"], ["0x1003b0e6", "push 0", "0x10012f46"], ["0x1003b0e8", "jmp 0x89c", "0x10012f48"], ["0x1003b0ed", "call VideoManager (FUNCTION)", "0x10012f4d"], ["0x1003b0f2", "mov byte ptr [eax + 0x554], 1", "0x10012f52"], ["0x1003b0f9", "push 0", "0x10012f59"], ["0x1003b0fb", "mov eax, dword ptr [g_infomainScript (DATA)]", "0x10012f5b"], ["0x1003b100", "push 0", "0x10012f60"], ["0x1003b102", "jmp 0x882", "0x10012f62"]]}]], ["@@ -0x1003b989,22 +0x100137e9,54 @@", [{"both": [["0x1003b989", "push eax", "0x100137e9"], ["0x1003b98a", "push 1", "0x100137ea"], ["0x1003b98c", "call InvokeAction (FUNCTION)", "0x100137ec"], ["0x1003b991", "add esp, 0x10", "0x100137f1"], ["0x1003b994", "mov eax, dword ptr [ebp - 0xc]", "0x100137f4"], ["0x1003b997", "pop esi", "0x100137f7"], ["0x1003b998", "mov dword ptr fs:[0], eax", "0x100137f8"], ["0x1003b99e", "mov esp, ebp", "0x100137fe"], ["0x1003b9a0", "pop ebp", "0x10013800"], ["0x1003b9a1", "ret 4", "0x10013801"]]}, {"orig": [["0x1003b9a4", "fbstp tbyte ptr [eax - 0x4f12effd]"], ["0x1003b9aa", "add edx, dword ptr [eax]"], ["0x1003b9ac", "pop es"], ["0x1003b9ad", "mov cl, 3"], ["0x1003b9af", "adc byte ptr [ecx], ah"], ["0x1003b9b1", "mov cl, 3"], ["0x1003b9b3", "adc byte ptr [eax - 0x49effc4f], ch"], ["0x1003b9b9", "mov cl, 3"], ["0x1003b9bb", "adc byte ptr [eax - 0x4e], bl"], ["0x1003b9be", "add edx, dword ptr [eax]"], ["0x1003b9c0", "js -0x4e"], ["0x1003b9c2", "add edx, dword ptr [eax]"]], "recomp": [["0x10013804", "aas "], ["0x10013805", "das "], ["0x10013806", "add dword ptr [eax], edx"], ["0x10013808", "dec ebp"], ["0x10013809", "das "], ["0x1001380a", "add dword ptr [eax], edx"], ["0x1001380c", "das "], ["0x1001380e", "add dword ptr [eax], edx"], ["0x10013810", "sub dword ptr [edi], 0x30081001"], ["0x10013816", "add dword ptr [eax], edx"], ["0x10013818", "push ss"], ["0x10013819", "xor byte ptr [ecx], al"], ["0x1001381b", "adc byte ptr [eax - 0x27effed0], bh"], ["0x10013821", "xor byte ptr [ecx], al"], ["0x10013823", "adc ah, ch"], ["0x10013825", "xor byte ptr [ecx], al"], ["0x10013827", "adc byte ptr [eax], al"], ["0x10013829", "xor dword ptr [ecx], eax"], ["0x1001382b", "adc byte ptr [ecx + esi], dl"], ["0x1001382e", "add dword ptr [eax], edx"], ["0x10013830", "xor dword ptr cs:[ecx], eax"], ["0x10013833", "adc byte ptr [eax + 0x31], cl"], ["0x10013836", "add dword ptr [eax], edx"], ["0x10013838", "sub dword ptr [edi], 0x31fc1001"], ["0x1001383e", "add dword ptr [eax], edx"], ["0x10013840", "sub dword ptr [edi], 0x2f811001"], ["0x10013846", "add dword ptr [eax], edx"], ["0x10013848", "mov al, 0x32"], ["0x1001384a", "add dword ptr [eax], edx"], ["0x1001384c", "retf 0x132"], ["0x1001384f", "adc byte ptr [ebx + esi + 0x2f811001], bh"], ["0x10013856", "add dword ptr [eax], edx"], ["0x10013858", "sal byte ptr [ecx + eax], 0x10"], ["0x1001385c", "sub dword ptr [edi], 0x34da1001"], ["0x10013862", "add dword ptr [eax], edx"], ["0x10013864", "mov dword ptr [<OFFSET59>], eax"], ["0x10013869", "xor eax, 0x365f1001"], ["0x1001386e", "add dword ptr [eax], edx"], ["0x10013870", "jns 0x36"], ["0x10013872", "add dword ptr [eax], edx"], ["0x10013874", "xchg ebx, eax"], ["0x10013875", "add dword ptr ss:[eax], edx"], ["0x10013878", "lodsd eax, dword ptr [esi]"], ["0x10013879", "add dword ptr ss:[eax], edx"]]}]]]}, {"address": "0x1003ba90", "recomp": "0x100138f0", "name": "LegoGameState::SetColors", "matching": 0.9411764705882353, "diff": [["@@ -0x1003ba92,15 +0x100138f2,15 @@", [{"both": [["0x1003ba92", "mov esi, <OFFSET1>", "0x100138f2"], ["0x1003ba97", "call VariableTable (FUNCTION)", "0x100138f7"], ["0x1003ba9c", "mov edi, eax", "0x100138fc"], ["0x1003ba9e", "mov eax, dword ptr [esi]", "0x100138fe"], ["0x1003baa0", "mov ecx, dword ptr [esi - 4]", "0x10013900"], ["0x1003baa3", "push eax", "0x10013903"], ["0x1003baa4", "add esi, 8", "0x10013904"], ["0x1003baa7", "push ecx", "0x10013907"], ["0x1003baa8", "mov ecx, edi", "0x10013908"], ["0x1003baaa", "call MxVariableTable::SetVariable (FUNCTION)", "0x1001390a"]]}, {"orig": [["0x1003baaf", "cmp esi, g_set (DATA)"]], "recomp": [["0x1001390f", "cmp esi, <OFFSET4>"]]}, {"both": [["0x1003bab5", "jb -0x19", "0x10013915"], ["0x1003bab7", "pop edi", "0x10013917"], ["0x1003bab8", "pop esi", "0x10013918"], ["0x1003bab9", "ret ", "0x10013919"]]}]]]}, {"address": "0x1003bac0", "recomp": "0x10013920", "name": "LegoGameState::SetROIHandlerFunction", "matching": 1.0, "diff": []}, {"address": "0x1003bad0", "recomp": "0x10013930", "name": "ROIHandlerFunction", "matching": 1.0, "diff": []}, {"address": "0x1003bbb0", "recomp": "0x10013a10", "name": "LegoGameState::GetState", "matching": 1.0, "diff": []}, {"address": "0x1003bc00", "recomp": "0x10013a60", "name": "LegoGameState::CreateState", "matching": 1.0, "diff": []}, {"address": "0x1003bc30", "recomp": "0x10013a90", "name": "LegoGameState::RegisterState", "matching": 0.9506172839506173, "diff": [["@@ -0x1003bcc2,31 +0x10013b22,27 @@", [{"both": [["0x1003bcc2", "mov dword ptr [ebp + eax*4], ecx", "0x10013b22"], ["0x1003bcc6", "inc word ptr [ebx + 4]", "0x10013b26"], ["0x1003bcca", "mov dword ptr [ebx + 8], ebp", "0x10013b2a"], ["0x1003bccd", "pop ebp", "0x10013b2d"], ["0x1003bcce", "pop edi", "0x10013b2e"], ["0x1003bccf", "pop esi", "0x10013b2f"], ["0x1003bcd0", "pop ebx", "0x10013b30"], ["0x1003bcd1", "add esp, 4", "0x10013b31"], ["0x1003bcd4", "ret 4", "0x10013b34"], ["0x1003bcd7", "mov eax, dword ptr [ebx + 8]", "0x10013b37"]]}, {"orig": [], "recomp": [["0x10013b3a", "cmp dword ptr [eax + esi*4], 0"], ["0x10013b3e", "je 0xd"]]}, {"both": [["0x1003bcda", "mov ecx, dword ptr [eax + esi*4]", "0x10013b40"], ["0x1003bcdd", "test ecx, ecx", "0x10013b43"], ["0x1003bcdf", "je 0x6", "0x10013b45"], ["0x1003bce1", "push 1", "0x10013b47"], ["0x1003bce3", "mov eax, dword ptr [ecx]", "0x10013b49"], ["0x1003bce5", "call dword ptr [eax]", "0x10013b4b"], ["0x1003bce7", "mov eax, dword ptr [ebx + 8]", "0x10013b4d"], ["0x1003bcea", "mov ecx, dword ptr [esp + 0x18]", "0x10013b50"], ["0x1003bcee", "pop ebp", "0x10013b54"], ["0x1003bcef", "pop edi", "0x10013b55"], ["0x1003bcf0", "mov dword ptr [eax + esi*4], ecx", "0x10013b56"], ["0x1003bcf3", "pop esi", "0x10013b59"], ["0x1003bcf4", "pop ebx", "0x10013b5a"], ["0x1003bcf5", "add esp, 4", "0x10013b5b"], ["0x1003bcf8", "ret 4", "0x10013b5e"]]}, {"orig": [["0x1003bcfb", "int3 "], ["0x1003bcfc", "int3 "], ["0x1003bcfd", "int3 "], ["0x1003bcfe", "int3 "], ["0x1003bcff", "int3 "], ["0x1003bd00", "push ebx"]], "recomp": []}]]]}, {"address": "0x1003bd00", "recomp": "0x10013b70", "name": "LegoGameState::Init", "matching": 1.0, "diff": []}, {"address": "0x1003bea0", "recomp": "0x1000f2b0", "name": "MxVariable::GetValue", "matching": 1.0, "diff": []}, {"address": "0x1003beb0", "recomp": "0x1000f2c0", "name": "MxVariable::SetValue", "matching": 1.0, "diff": []}, {"address": "0x1003bec0", "recomp": "0x1000f2d0", "name": "MxVariable::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1003bf40", "recomp": "0x1000f350", "name": "MxVariable::~MxVariable", "matching": 1.0, "diff": []}, {"address": "0x1003bfb0", "recomp": "0x1000f1f0", "name": "LegoBackgroundColor::LegoBackgroundColor", "matching": 1.0, "diff": []}, {"address": "0x1003c070", "recomp": "0x1000f3c0", "name": "LegoBackgroundColor::SetValue", "matching": 1.0, "diff": []}, {"address": "0x1003c230", "recomp": "0x1000f580", "name": "LegoBackgroundColor::ToggleDayNight", "matching": 1.0, "diff": []}, {"address": "0x1003c330", "recomp": "0x1000f680", "name": "LegoBackgroundColor::ToggleSkyColor", "matching": 1.0, "diff": []}, {"address": "0x1003c400", "recomp": "0x1000f750", "name": "LegoBackgroundColor::SetLights", "matching": 0.0, "stub": true}, {"address": "0x1003c4b0", "recomp": "0x1000f760", "name": "LegoBackgroundColor::SetLights", "matching": 1.0, "diff": []}, {"address": "0x1003c500", "recomp": "0x10011250", "name": "LegoFullScreenMovie::LegoFullScreenMovie", "matching": 1.0, "diff": []}, {"address": "0x1003c5c0", "recomp": "0x10011310", "name": "LegoFullScreenMovie::SetValue", "matching": 1.0, "diff": []}, {"address": "0x1003c670", "recomp": "0x10013d10", "name": "LegoGameState::Username::Username", "matching": 1.0, "diff": []}, {"address": "0x1003c690", "recomp": "0x10013d30", "name": "LegoGameState::Username::ReadWrite", "matching": 0.4, "diff": [["@@ -0x1003c690,47 +0x10013d30,48 @@", [{"both": [["0x1003c690", "sub esp, 4", "0x10013d30"], ["0x1003c693", "push ebx", "0x10013d33"], ["0x1003c694", "push esi", "0x10013d34"]]}, {"orig": [["0x1003c695", "mov ebx, dword ptr [esp + 0x10]"]], "recomp": [["0x10013d35", "mov esi, dword ptr [esp + 0x10]"]]}, {"both": [["0x1003c699", "push edi", "0x10013d39"], ["0x1003c69a", "push ebp", "0x10013d3a"]]}, {"orig": [["0x1003c69b", "mov ebp, ecx"], ["0x1003c69d", "mov edi, dword ptr [ebx]"], ["0x1003c69f", "mov ecx, ebx"], ["0x1003c6a1", "call dword ptr [edi + 0x18]"]], "recomp": [["0x10013d3b", "mov edi, ecx"], ["0x10013d3d", "mov ebx, dword ptr [esi]"], ["0x10013d3f", "mov ecx, esi"], ["0x10013d41", "call dword ptr [ebx + 0x18]"]]}, {"both": [["0x1003c6a4", "test al, al", "0x10013d44"]]}, {"orig": [["0x1003c6a6", "je 0x1e"], ["0x1003c6a8", "xor si, si"], ["0x1003c6ab", "mov edi, dword ptr [edi + 4]"], ["0x1003c6ae", "movsx eax, si"], ["0x1003c6b1", "inc si"]], "recomp": [["0x10013d46", "je 0x1d"], ["0x10013d48", "xor bp, bp"], ["0x10013d4b", "mov ebx, dword ptr [ebx + 4]"], ["0x10013d4e", "movsx eax, bp"], ["0x10013d51", "inc bp"]]}, {"both": [["0x1003c6b3", "push 2", "0x10013d53"]]}, {"orig": [["0x1003c6b5", "lea ecx, [ebp + eax*2]"]], "recomp": [["0x10013d55", "lea ecx, [edi + eax*2]"]]}, {"both": [["0x1003c6b9", "push ecx", "0x10013d58"]]}, {"orig": [["0x1003c6ba", "mov ecx, ebx"], ["0x1003c6bc", "call edi"], ["0x1003c6be", "cmp si, 7"], ["0x1003c6c2", "jl -0x16"], ["0x1003c6c4", "jmp 0x2f"], ["0x1003c6c6", "mov ecx, ebx"], ["0x1003c6c8", "call dword ptr [edi + 0x14]"]], "recomp": [["0x10013d59", "mov ecx, esi"], ["0x10013d5b", "call ebx"], ["0x10013d5d", "cmp bp, 7"], ["0x10013d61", "jl -0x15"], ["0x10013d63", "jmp 0x2e"], ["0x10013d65", "mov ecx, esi"], ["0x10013d67", "call dword ptr [ebx + 0x14]"]]}, {"both": [["0x1003c6cb", "test al, al", "0x10013d6a"]]}, {"orig": [["0x1003c6cd", "je 0x26"], ["0x1003c6cf", "xor si, si"], ["0x1003c6d2", "mov edi, dword ptr [edi + 8]"]], "recomp": [["0x10013d6c", "je 0x25"], ["0x10013d6e", "xor bp, bp"], ["0x10013d71", "mov ebx, dword ptr [ebx + 8]"]]}, {"both": [["0x1003c6d5", "push 2", "0x10013d74"]]}, {"orig": [["0x1003c6d7", "mov ecx, ebx"], ["0x1003c6d9", "movsx eax, si"], ["0x1003c6dc", "inc si"], ["0x1003c6de", "mov ax, word ptr [ebp + eax*2]"]], "recomp": [["0x10013d76", "mov ecx, esi"], ["0x10013d78", "movsx eax, bp"], ["0x10013d7b", "inc bp"], ["0x10013d7d", "mov ax, word ptr [edi + eax*2]"]]}, {"both": [["0x1003c6e3", "mov word ptr [esp + 0x16], ax", "0x10013d81"], ["0x1003c6e8", "lea eax, [esp + 0x16]", "0x10013d86"], ["0x1003c6ec", "push eax", "0x10013d8a"]]}, {"orig": [["0x1003c6ed", "call edi"], ["0x1003c6ef", "cmp si, 7"], ["0x1003c6f3", "jl -0x20"]], "recomp": [["0x10013d8b", "call ebx"], ["0x10013d8d", "cmp bp, 7"], ["0x10013d91", "jl -0x1f"]]}, {"both": [["0x1003c6f5", "xor eax, eax", "0x10013d93"], ["0x1003c6f7", "pop ebp", "0x10013d95"], ["0x1003c6f8", "pop edi", "0x10013d96"], ["0x1003c6f9", "pop esi", "0x10013d97"], ["0x1003c6fa", "pop ebx", "0x10013d98"], ["0x1003c6fb", "add esp, 4", "0x10013d99"]]}, {"orig": [], "recomp": [["0x10013d9c", "ret 4"]]}]]]}, {"address": "0x1003c710", "recomp": "0x10013da0", "name": "LegoGameState::Username::operator=", "matching": 1.0, "diff": []}, {"address": "0x1003c830", "recomp": "0x10013dd0", "name": "LegoGameState::History::History", "matching": 1.0, "diff": []}, {"address": "0x1003c860", "recomp": "0x10013e00", "name": "LegoGameState::ScoreItem::ScoreItem", "matching": 1.0, "diff": []}, {"address": "0x1003c870", "recomp": "0x10013e10", "name": "LegoGameState::History::WriteScoreHistory", "matching": 0.0, "stub": true}, {"address": "0x1003ccf0", "recomp": "0x10013e20", "name": "LegoGameState::History::FUN_1003ccf0", "matching": 0.0, "stub": true}, {"address": "0x1003cdd0", "recomp": "0x10013e30", "name": "LegoGameState::SerializeScoreHistory", "matching": 1.0, "diff": []}, {"address": "0x1003cea0", "recomp": "0x10013f00", "name": "LegoGameState::SetCurrentAct", "matching": 1.0, "diff": []}, {"address": "0x1003ceb0", "recomp": "0x10013f10", "name": "LegoGameState::FindLoadedAct", "matching": 1.0, "diff": []}, {"address": "0x1003cf20", "recomp": "0x1000b060", "name": "LegoUnknown100d6b4c::~LegoUnknown100d6b4c", "matching": 0.7487179487179487, "diff": [["@@ -0x1003cf3e,93 +0x1000b07e,86 @@", [{"both": [["0x1003cf3e", "sub esp, 0xc", "0x1000b07e"], ["0x1003cf41", "mov dword ptr [ebp - 0x10], ecx", "0x1000b081"], ["0x1003cf44", "mov dword ptr [ebp - 4], 1", "0x1000b084"], ["0x1003cf4b", "cmp dword ptr [ecx + 0x10], 0", "0x1000b08b"], ["0x1003cf4f", "push esi", "0x1000b08f"], ["0x1003cf50", "push edi", "0x1000b090"], ["0x1003cf51", "je 0x36", "0x1000b091"], ["0x1003cf53", "lea esi, [ecx + 4]", "0x1000b093"], ["0x1003cf56", "mov eax, dword ptr [ebp - 0x10]", "0x1000b096"], ["0x1003cf59", "mov ecx, dword ptr [eax + 8]", "0x1000b099"]]}, {"orig": [["0x1003cf5c", "lea eax, [ebp - 0x18]"], ["0x1003cf5f", "mov edx, dword ptr [ecx]"]], "recomp": [["0x1000b09c", "mov eax, dword ptr [ecx]"], ["0x1000b09e", "lea ecx, [ebp - 0x18]"], ["0x1000b0a1", "push eax"], ["0x1000b0a2", "push ecx"], ["0x1000b0a3", "mov edi, dword ptr [eax + 0xc]"]]}, {"both": [["0x1003cf61", "mov ecx, esi", "0x1000b0a6"]]}, {"orig": [["0x1003cf63", "push edx"], ["0x1003cf64", "push eax"], ["0x1003cf65", "mov edi, dword ptr [edx + 0xc]"]], "recomp": []}, {"both": [["0x1003cf68", "call _Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::erase (FUNCTION)", "0x1000b0a8"], ["0x1003cf6d", "mov ecx, edi", "0x1000b0ad"], ["0x1003cf6f", "call LegoCacheSound::FUN_10006b80 (FUNCTION)", "0x1000b0af"], ["0x1003cf74", "test edi, edi", "0x1000b0b4"], ["0x1003cf76", "je 0x8", "0x1000b0b6"], ["0x1003cf78", "push 1", "0x1000b0b8"], ["0x1003cf7a", "mov eax, dword ptr [edi]", "0x1000b0ba"], ["0x1003cf7c", "mov ecx, edi", "0x1000b0bc"], ["0x1003cf7e", "call dword ptr [eax]", "0x1000b0be"], ["0x1003cf80", "mov eax, dword ptr [ebp - 0x10]", "0x1000b0c0"], ["0x1003cf83", "cmp dword ptr [eax + 0x10], 0", "0x1000b0c3"], ["0x1003cf87", "jne -0x33", "0x1000b0c7"], ["0x1003cf89", "mov eax, dword ptr [ebp - 0x10]", "0x1000b0c9"], ["0x1003cf8c", "cmp dword ptr [eax + 0x1c], 0", "0x1000b0cc"]]}, {"orig": [["0x1003cf90", "je 0x4c"]], "recomp": [["0x1000b0d0", "je 0x5c"]]}, {"both": [["0x1003cf92", "mov ecx, dword ptr [eax + 0x18]", "0x1000b0d2"], ["0x1003cf95", "mov eax, dword ptr [ecx]", "0x1000b0d5"], ["0x1003cf97", "mov dword ptr [ebp - 0x14], eax", "0x1000b0d7"], ["0x1003cf9a", "lea ecx, [eax + 8]", "0x1000b0da"], ["0x1003cf9d", "lea edi, [eax + 4]", "0x1000b0dd"], ["0x1003cfa0", "mov esi, dword ptr [ecx]", "0x1000b0e0"], ["0x1003cfa2", "mov eax, dword ptr [eax]", "0x1000b0e2"], ["0x1003cfa4", "mov edx, dword ptr [edi]", "0x1000b0e4"], ["0x1003cfa6", "mov dword ptr [edx], eax", "0x1000b0e6"], ["0x1003cfa8", "mov edx, dword ptr [edi]", "0x1000b0e8"], ["0x1003cfaa", "mov eax, dword ptr [ebp - 0x14]", "0x1000b0ea"], ["0x1003cfad", "mov edi, dword ptr [eax]", "0x1000b0ed"], ["0x1003cfaf", "mov dword ptr [edi + 4], edx", "0x1000b0ef"]]}, {"orig": [["0x1003cfb2", "call Element100d6b4c::~Element100d6b4c (FUNCTION)"], ["0x1003cfb7", "mov ecx, dword ptr [ebp - 0x14]"], ["0x1003cfba", "push ecx"]], "recomp": [["0x1000b0f2", "cmp dword ptr [ecx], 0"], ["0x1000b0f5", "jne 0x10"], ["0x1000b0f7", "mov eax, dword ptr [eax + 0xc]"], ["0x1000b0fa", "test eax, eax"], ["0x1000b0fc", "je 0x9"], ["0x1000b0fe", "push eax"], ["0x1000b0ff", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000b104", "add esp, 4"], ["0x1000b107", "mov eax, dword ptr [ebp - 0x14]"], ["0x1000b10a", "push eax"]]}, {"both": [["0x1003cfbb", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000b10b"], ["0x1003cfc0", "add esp, 4", "0x1000b110"], ["0x1003cfc3", "mov eax, dword ptr [ebp - 0x10]", "0x1000b113"], ["0x1003cfc6", "mov ecx, esi", "0x1000b116"], ["0x1003cfc8", "dec dword ptr [eax + 0x1c]", "0x1000b118"], ["0x1003cfcb", "call LegoCacheSound::FUN_10006b80 (FUNCTION)", "0x1000b11b"], ["0x1003cfd0", "test esi, esi", "0x1000b120"]]}, {"orig": [["0x1003cfd2", "je -0x4b"]], "recomp": [["0x1000b122", "je -0x5b"]]}, {"both": [["0x1003cfd4", "push 1", "0x1000b124"], ["0x1003cfd6", "mov eax, dword ptr [esi]", "0x1000b126"], ["0x1003cfd8", "mov ecx, esi", "0x1000b128"], ["0x1003cfda", "call dword ptr [eax]", "0x1000b12a"]]}, {"orig": [["0x1003cfdc", "jmp -0x55"]], "recomp": [["0x1000b12c", "jmp -0x65"]]}, {"both": [["0x1003cfde", "mov byte ptr [ebp - 4], 0", "0x1000b12e"]]}, {"orig": [], "recomp": [["0x1000b132", "call <OFFSET6>"], ["0x1000b137", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x1003cfe2", "call <OFFSET7>", "0x1000b13e"]]}, {"orig": [["0x1003cfe7", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1003cfee", "call <OFFSET8>"]], "recomp": []}, {"both": [["0x1003cff3", "mov eax, dword ptr [ebp - 0xc]", "0x1000b143"], ["0x1003cff6", "pop edi", "0x1000b146"], ["0x1003cff7", "mov dword ptr fs:[0], eax", "0x1000b147"], ["0x1003cffd", "pop esi", "0x1000b14d"], ["0x1003cffe", "mov esp, ebp", "0x1000b14e"], ["0x1003d000", "pop ebp", "0x1000b150"], ["0x1003d001", "ret ", "0x1000b151"], ["0x1003d002", "mov ecx, dword ptr [ebp - 0x10]", "0x1000b152"], ["0x1003d005", "add ecx, 0x14", "0x1000b155"], ["0x1003d008", "jmp List<Element100d6b4c>::~List<Element100d6b4c> (FUNCTION)", "0x1000b158"]]}, {"orig": [["0x1003d00d", "mov eax, <OFFSET10>"]], "recomp": [["0x1000b15d", "mov eax, <OFFSET9>"]]}, {"both": [["0x1003d012", "jmp ___CxxFrameHandler (FUNCTION)", "0x1000b162"], ["0x1003d017", "mov ecx, dword ptr [ebp - 0x10]", "0x1000b167"], ["0x1003d01a", "add ecx, 4", "0x1000b16a"], ["0x1003d01d", "jmp Set<Element100d6b4c,Set100d6b4cComparator>::~Set<Element100d6b4c,Set100d6b4cComparator> (FUNCTION)", "0x1000b16d"]]}, {"orig": [["0x1003d022", "int3 "], ["0x1003d023", "int3 "], ["0x1003d024", "int3 "], ["0x1003d025", "int3 "], ["0x1003d026", "int3 "], ["0x1003d027", "int3 "], ["0x1003d028", "int3 "], ["0x1003d029", "int3 "], ["0x1003d02a", "int3 "], ["0x1003d02b", "int3 "], ["0x1003d02c", "int3 "], ["0x1003d02d", "int3 "], ["0x1003d02e", "int3 "], ["0x1003d02f", "int3 "]], "recomp": []}]]]}, {"address": "0x1003d030", "recomp": "0x1000b530", "name": "Element100d6b4c::~Element100d6b4c", "matching": 1.0, "diff": []}, {"address": "0x1003d050", "recomp": "0x1000b180", "name": "LegoUnknown100d6b4c::Tickle", "matching": 0.9693877551020408, "diff": [["@@ -0x1003d050,32 +0x1000b180,32 @@", [{"both": [["0x1003d050", "sub esp, 8", "0x1000b180"], ["0x1003d053", "push ebx", "0x1000b183"], ["0x1003d054", "push esi", "0x1000b184"], ["0x1003d055", "mov eax, dword ptr [ecx + 8]", "0x1000b185"], ["0x1003d058", "push edi", "0x1000b188"], ["0x1003d059", "mov esi, ecx", "0x1000b189"], ["0x1003d05b", "mov ecx, dword ptr [eax]", "0x1000b18b"], ["0x1003d05d", "mov dword ptr [esp + 0xc], ecx", "0x1000b18d"]]}, {"orig": [["0x1003d061", "cmp eax, ecx"]], "recomp": [["0x1000b191", "cmp ecx, eax"]]}, {"both": [["0x1003d063", "je 0x62", "0x1000b193"], ["0x1003d065", "xor ebx, ebx", "0x1000b195"], ["0x1003d067", "mov eax, dword ptr [esp + 0xc]", "0x1000b197"], ["0x1003d06b", "mov ecx, dword ptr [eax + 0xc]", "0x1000b19b"], ["0x1003d06e", "cmp byte ptr [ecx + 0x58], bl", "0x1000b19e"], ["0x1003d071", "je 0x5", "0x1000b1a1"], ["0x1003d073", "call LegoCacheSound::FUN_10006be0 (FUNCTION)", "0x1000b1a3"], ["0x1003d078", "mov eax, dword ptr [esp + 0xc]", "0x1000b1a8"], ["0x1003d07c", "mov ecx, dword ptr [eax + 8]", "0x1000b1ac"]]}, {"orig": [["0x1003d07f", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], ecx"]], "recomp": [["0x1000b1af", "cmp ecx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d085", "je 0xe", "0x1000b1b5"], ["0x1003d087", "mov eax, dword ptr [ecx]", "0x1000b1b7"]]}, {"orig": [["0x1003d089", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], eax"]], "recomp": [["0x1000b1b9", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d08f", "je 0x29", "0x1000b1bf"], ["0x1003d091", "mov ecx, eax", "0x1000b1c1"], ["0x1003d093", "jmp -0xe", "0x1000b1c3"], ["0x1003d095", "mov eax, dword ptr [esp + 0xc]", "0x1000b1c5"], ["0x1003d099", "mov ecx, dword ptr [eax + 4]", "0x1000b1c9"], ["0x1003d09c", "cmp dword ptr [ecx + 8], eax", "0x1000b1cc"], ["0x1003d09f", "jne 0x10", "0x1000b1cf"], ["0x1003d0a1", "mov dword ptr [esp + 0xc], ecx", "0x1000b1d1"], ["0x1003d0a5", "mov ecx, dword ptr [ecx + 4]", "0x1000b1d5"], ["0x1003d0a8", "mov eax, dword ptr [esp + 0xc]", "0x1000b1d8"]]}]]]}, {"address": "0x1003d170", "recomp": "0x1000b2a0", "name": "LegoUnknown100d6b4c::FUN_1003d170", "matching": 0.0, "stub": true}, {"address": "0x1003d290", "recomp": "0x1000b370", "name": "LegoUnknown100d6b4c::FUN_1003d290", "matching": 0.9791666666666666, "diff": [["@@ -0x1003d2b4,35 +0x1000b394,35 @@", [{"both": [["0x1003d2b4", "mov dword ptr [ebp - 0x2c], eax", "0x1000b394"], ["0x1003d2b7", "push ebx", "0x1000b397"], ["0x1003d2b8", "mov dword ptr [ebp - 0x28], ecx", "0x1000b398"], ["0x1003d2bb", "mov dword ptr [ebp - 4], 0", "0x1000b39b"], ["0x1003d2c2", "push esi", "0x1000b3a2"], ["0x1003d2c3", "push edi", "0x1000b3a3"], ["0x1003d2c4", "lea esi, [ebp - 0x2c]", "0x1000b3a4"], ["0x1003d2c7", "mov eax, dword ptr [ebp - 0x18]", "0x1000b3a7"], ["0x1003d2ca", "mov edi, dword ptr [eax + 8]", "0x1000b3aa"], ["0x1003d2cd", "mov ebx, dword ptr [edi + 4]", "0x1000b3ad"]]}, {"orig": [["0x1003d2d0", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], ebx"]], "recomp": [["0x1000b3b0", "cmp ebx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d2d6", "je 0x25", "0x1000b3b6"], ["0x1003d2d8", "mov eax, dword ptr [esi + 4]", "0x1000b3b8"], ["0x1003d2db", "mov ecx, dword ptr [ebx + 0x10]", "0x1000b3bb"], ["0x1003d2de", "push eax", "0x1000b3be"], ["0x1003d2df", "push ecx", "0x1000b3bf"], ["0x1003d2e0", "call __strcmpi (FUNCTION)", "0x1000b3c0"], ["0x1003d2e5", "add esp, 8", "0x1000b3c5"], ["0x1003d2e8", "test eax, eax", "0x1000b3c8"], ["0x1003d2ea", "jg 0x6", "0x1000b3ca"], ["0x1003d2ec", "mov edi, ebx", "0x1000b3cc"], ["0x1003d2ee", "mov ebx, dword ptr [ebx]", "0x1000b3ce"], ["0x1003d2f0", "jmp 0x3", "0x1000b3d0"], ["0x1003d2f2", "mov ebx, dword ptr [ebx + 8]", "0x1000b3d2"]]}, {"orig": [["0x1003d2f5", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], ebx"]], "recomp": [["0x1000b3d5", "cmp ebx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d2fb", "jne -0x25", "0x1000b3db"], ["0x1003d2fd", "mov dword ptr [ebp - 0x20], edi", "0x1000b3dd"], ["0x1003d300", "mov eax, dword ptr [ebp - 0x18]", "0x1000b3e0"], ["0x1003d303", "cmp dword ptr [eax + 8], edi", "0x1000b3e3"], ["0x1003d306", "je 0x17", "0x1000b3e6"], ["0x1003d308", "mov eax, dword ptr [edi + 0x10]", "0x1000b3e8"], ["0x1003d30b", "mov ecx, dword ptr [esi + 4]", "0x1000b3eb"], ["0x1003d30e", "push eax", "0x1000b3ee"], ["0x1003d30f", "push ecx", "0x1000b3ef"], ["0x1003d310", "call __strcmpi (FUNCTION)", "0x1000b3f0"]]}]], ["@@ -0x1003d31f,21 +0x1000b3ff,21 @@", [{"both": [["0x1003d31f", "mov eax, dword ptr [ebp - 0x18]", "0x1000b3ff"], ["0x1003d322", "mov ecx, dword ptr [eax + 8]", "0x1000b402"], ["0x1003d325", "lea eax, [ebp - 0x10]", "0x1000b405"], ["0x1003d328", "mov dword ptr [ebp - 0x10], ecx", "0x1000b408"], ["0x1003d32b", "mov dword ptr [ebp - 4], 0xffffffff", "0x1000b40b"], ["0x1003d332", "mov eax, dword ptr [eax]", "0x1000b412"], ["0x1003d334", "mov dword ptr [ebp - 0x10], eax", "0x1000b414"], ["0x1003d337", "call <OFFSET4>", "0x1000b417"], ["0x1003d33c", "mov eax, dword ptr [ebp - 0x18]", "0x1000b41c"], ["0x1003d33f", "mov eax, dword ptr [eax + 8]", "0x1000b41f"]]}, {"orig": [["0x1003d342", "cmp dword ptr [ebp - 0x10], eax"]], "recomp": [["0x1000b422", "cmp eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x1003d345", "je 0x97", "0x1000b425"], ["0x1003d34b", "mov eax, dword ptr [ebp - 0x10]", "0x1000b42b"], ["0x1003d34e", "mov esi, dword ptr [eax + 0xc]", "0x1000b42e"], ["0x1003d351", "cmp byte ptr [esi + 0x58], 0", "0x1000b431"], ["0x1003d355", "je 0x76", "0x1000b435"], ["0x1003d357", "mov eax, dword ptr [ebp + 8]", "0x1000b437"], ["0x1003d35a", "lea esi, [ebp - 0x24]", "0x1000b43a"], ["0x1003d35d", "mov dword ptr [ebp - 0x24], eax", "0x1000b43d"], ["0x1003d360", "mov ecx, dword ptr [eax + 0x50]", "0x1000b440"], ["0x1003d363", "mov dword ptr [ebp - 0x20], ecx", "0x1000b443"]]}]]]}, {"address": "0x1003d450", "recomp": "0x1000b550", "name": "_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::insert", "matching": 0.8666666666666667, "diff": [["@@ -0x1003d450,140 +0x1000b550,140 @@", [{"both": [["0x1003d450", "sub esp, 0xc", "0x1000b550"], ["0x1003d453", "push ebx", "0x1000b553"], ["0x1003d454", "push esi", "0x1000b554"], ["0x1003d455", "mov ebx, dword ptr [ecx + 4]", "0x1000b555"], ["0x1003d458", "push edi", "0x1000b558"], ["0x1003d459", "push ebp", "0x1000b559"], ["0x1003d45a", "mov esi, ecx", "0x1000b55a"]]}, {"orig": [["0x1003d45c", "mov ebp, dword ptr [ebx + 4]"]], "recomp": [["0x1000b55c", "mov edi, dword ptr [ebx + 4]"]]}, {"both": [["0x1003d45f", "mov eax, 1", "0x1000b55f"]]}, {"orig": [["0x1003d464", "mov edi, dword ptr [esp + 0x24]"], ["0x1003d468", "cmp ebp, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"], ["0x1003d46e", "je 0x31"], ["0x1003d470", "mov ebx, ebp"], ["0x1003d472", "mov eax, dword ptr [ebp + 0x10]"], ["0x1003d475", "push eax"], ["0x1003d476", "mov ecx, dword ptr [edi + 4]"]], "recomp": [["0x1000b564", "mov ebp, dword ptr [esp + 0x24]"], ["0x1000b568", "cmp edi, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"], ["0x1000b56e", "je 0x30"], ["0x1000b570", "mov ebx, edi"], ["0x1000b572", "mov eax, dword ptr [edi + 0x10]"], ["0x1000b575", "push eax"], ["0x1000b576", "mov ecx, dword ptr [ebp + 4]"]]}, {"both": [["0x1003d479", "push ecx", "0x1000b579"], ["0x1003d47a", "call __strcmpi (FUNCTION)", "0x1000b57a"], ["0x1003d47f", "add esp, 8", "0x1000b57f"], ["0x1003d482", "test eax, eax", "0x1000b582"], ["0x1003d484", "mov eax, 1", "0x1000b584"], ["0x1003d489", "jg 0x2", "0x1000b589"], ["0x1003d48b", "xor eax, eax", "0x1000b58b"], ["0x1003d48d", "test eax, eax", "0x1000b58d"], ["0x1003d48f", "jne 0x5", "0x1000b58f"]]}, {"orig": [["0x1003d491", "mov ebp, dword ptr [ebp + 8]"], ["0x1003d494", "jmp 0x3"], ["0x1003d496", "mov ebp, dword ptr [ebp]"], ["0x1003d499", "cmp ebp, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"], ["0x1003d49f", "jne -0x31"]], "recomp": [["0x1000b591", "mov edi, dword ptr [edi + 8]"], ["0x1000b594", "jmp 0x2"], ["0x1000b596", "mov edi, dword ptr [edi]"], ["0x1000b598", "cmp edi, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"], ["0x1000b59e", "jne -0x30"]]}, {"both": [["0x1003d4a1", "cmp dword ptr [esi + 8], 0", "0x1000b5a0"], ["0x1003d4a5", "je 0x30", "0x1000b5a4"], ["0x1003d4a7", "lea eax, [esp + 0x10]", "0x1000b5a6"]]}, {"orig": [], "recomp": [["0x1000b5aa", "push ebp"], ["0x1000b5ab", "push ebx"], ["0x1000b5ac", "mov ecx, esi"], ["0x1000b5ae", "mov dword ptr [esp + 0x1c], 1"]]}, {"both": [["0x1003d4ab", "push edi", "0x1000b5b6"]]}, {"orig": [["0x1003d4ac", "push ebx"], ["0x1003d4ad", "mov ecx, esi"], ["0x1003d4af", "mov dword ptr [esp + 0x1c], 1"], ["0x1003d4b7", "push ebp"]], "recomp": []}, {"both": [["0x1003d4b8", "push eax", "0x1000b5b7"], ["0x1003d4b9", "call _Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Insert (FUNCTION)", "0x1000b5b8"], ["0x1003d4be", "mov ecx, dword ptr [eax]", "0x1000b5bd"], ["0x1003d4c0", "mov eax, dword ptr [esp + 0x20]", "0x1000b5bf"], ["0x1003d4c4", "mov dword ptr [eax], ecx", "0x1000b5c3"], ["0x1003d4c6", "mov edx, dword ptr [esp + 0x14]", "0x1000b5c5"], ["0x1003d4ca", "pop ebp", "0x1000b5c9"], ["0x1003d4cb", "pop edi", "0x1000b5ca"], ["0x1003d4cc", "mov dword ptr [eax + 4], edx", "0x1000b5cb"], ["0x1003d4cf", "pop esi", "0x1000b5ce"], ["0x1003d4d0", "pop ebx", "0x1000b5cf"], ["0x1003d4d1", "add esp, 0xc", "0x1000b5d0"], ["0x1003d4d4", "ret 8", "0x1000b5d3"], ["0x1003d4d7", "mov dword ptr [esp + 0x18], ebx", "0x1000b5d6"], ["0x1003d4db", "test eax, eax", "0x1000b5da"], ["0x1003d4dd", "je 0x40", "0x1000b5dc"], ["0x1003d4df", "mov eax, dword ptr [esi + 4]", "0x1000b5de"], ["0x1003d4e2", "cmp dword ptr [eax], ebx", "0x1000b5e1"], ["0x1003d4e4", "jne 0x30", "0x1000b5e3"], ["0x1003d4e6", "lea eax, [esp + 0x10]", "0x1000b5e5"]]}, {"orig": [], "recomp": [["0x1000b5e9", "push ebp"], ["0x1000b5ea", "push ebx"], ["0x1000b5eb", "mov ecx, esi"], ["0x1000b5ed", "mov dword ptr [esp + 0x1c], 1"]]}, {"both": [["0x1003d4ea", "push edi", "0x1000b5f5"]]}, {"orig": [["0x1003d4eb", "push ebx"], ["0x1003d4ec", "mov ecx, esi"], ["0x1003d4ee", "mov dword ptr [esp + 0x1c], 1"], ["0x1003d4f6", "push ebp"]], "recomp": []}, {"both": [["0x1003d4f7", "push eax", "0x1000b5f6"], ["0x1003d4f8", "call _Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Insert (FUNCTION)", "0x1000b5f7"], ["0x1003d4fd", "mov ecx, dword ptr [eax]", "0x1000b5fc"], ["0x1003d4ff", "mov eax, dword ptr [esp + 0x20]", "0x1000b5fe"], ["0x1003d503", "mov dword ptr [eax], ecx", "0x1000b602"], ["0x1003d505", "mov edx, dword ptr [esp + 0x14]", "0x1000b604"], ["0x1003d509", "pop ebp", "0x1000b608"], ["0x1003d50a", "pop edi", "0x1000b609"], ["0x1003d50b", "mov dword ptr [eax + 4], edx", "0x1000b60a"], ["0x1003d50e", "pop esi", "0x1000b60d"], ["0x1003d50f", "pop ebx", "0x1000b60e"], ["0x1003d510", "add esp, 0xc", "0x1000b60f"], ["0x1003d513", "ret 8", "0x1000b612"], ["0x1003d516", "lea ecx, [esp + 0x18]", "0x1000b615"], ["0x1003d51a", "call _Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::iterator::_Dec (FUNCTION)", "0x1000b619"], ["0x1003d51f", "mov eax, dword ptr [esp + 0x18]", "0x1000b61e"]]}, {"orig": [["0x1003d523", "mov ecx, dword ptr [edi + 4]"]], "recomp": [["0x1000b622", "mov ecx, dword ptr [ebp + 4]"]]}, {"both": [["0x1003d526", "push ecx", "0x1000b625"], ["0x1003d527", "mov edx, dword ptr [eax + 0x10]", "0x1000b626"], ["0x1003d52a", "push edx", "0x1000b629"], ["0x1003d52b", "call __strcmpi (FUNCTION)", "0x1000b62a"], ["0x1003d530", "add esp, 8", "0x1000b62f"], ["0x1003d533", "test eax, eax", "0x1000b632"]]}, {"orig": [["0x1003d535", "jle 0x18e"]], "recomp": [["0x1000b634", "jle 0x18f"]]}, {"both": [["0x1003d53b", "push 0", "0x1000b63a"], ["0x1003d53d", "mov ecx, esi", "0x1000b63c"], ["0x1003d53f", "mov dword ptr [esp + 0x18], 1", "0x1000b63e"], ["0x1003d547", "push ebx", "0x1000b646"]]}, {"orig": [["0x1003d548", "call <OFFSET5>"]], "recomp": [["0x1000b647", "call _Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Buynode (FUNCTION)"]]}, {"both": [["0x1003d54d", "mov dword ptr [esp + 0x10], eax", "0x1000b64c"], ["0x1003d551", "mov eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]", "0x1000b650"], ["0x1003d556", "mov ecx, dword ptr [esp + 0x10]", "0x1000b655"], ["0x1003d55a", "mov dword ptr [ecx], eax", "0x1000b659"], ["0x1003d55c", "mov eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]", "0x1000b65b"], ["0x1003d561", "mov dword ptr [ecx + 8], eax", "0x1000b660"], ["0x1003d564", "mov eax, dword ptr [esp + 0x10]", "0x1000b663"], ["0x1003d568", "add eax, 0xc", "0x1000b667"]]}, {"orig": [["0x1003d56b", "je 0xa"], ["0x1003d56d", "mov ecx, dword ptr [edi]"], ["0x1003d56f", "mov edx, dword ptr [edi + 4]"]], "recomp": [["0x1000b66a", "je 0xb"], ["0x1000b66c", "mov ecx, dword ptr [ebp]"], ["0x1000b66f", "mov edx, dword ptr [ebp + 4]"]]}, {"both": [["0x1003d572", "mov dword ptr [eax], ecx", "0x1000b672"], ["0x1003d574", "mov dword ptr [eax + 4], edx", "0x1000b674"], ["0x1003d577", "inc dword ptr [esi + 0xc]", "0x1000b677"], ["0x1003d57a", "cmp dword ptr [esi + 4], ebx", "0x1000b67a"], ["0x1003d57d", "je 0x31", "0x1000b67d"]]}, {"orig": [["0x1003d57f", "cmp ebp, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]], "recomp": [["0x1000b67f", "cmp edi, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d585", "jne 0x29", "0x1000b685"], ["0x1003d587", "mov eax, dword ptr [ebx + 0x10]", "0x1000b687"]]}, {"orig": [["0x1003d58a", "mov ecx, dword ptr [edi + 4]"]], "recomp": [["0x1000b68a", "mov ecx, dword ptr [ebp + 4]"]]}, {"both": [["0x1003d58d", "push eax", "0x1000b68d"], ["0x1003d58e", "push ecx", "0x1000b68e"], ["0x1003d58f", "call __strcmpi (FUNCTION)", "0x1000b68f"], ["0x1003d594", "add esp, 8", "0x1000b694"], ["0x1003d597", "test eax, eax", "0x1000b697"], ["0x1003d599", "jg 0x15", "0x1000b699"], ["0x1003d59b", "mov ecx, dword ptr [esp + 0x10]", "0x1000b69b"], ["0x1003d59f", "mov dword ptr [ebx + 8], ecx", "0x1000b69f"], ["0x1003d5a2", "mov eax, dword ptr [esi + 4]", "0x1000b6a2"], ["0x1003d5a5", "add eax, 8", "0x1000b6a5"], ["0x1003d5a8", "cmp dword ptr [eax], ebx", "0x1000b6a8"], ["0x1003d5aa", "jne 0x26", "0x1000b6aa"], ["0x1003d5ac", "mov dword ptr [eax], ecx", "0x1000b6ac"], ["0x1003d5ae", "jmp 0x22", "0x1000b6ae"], ["0x1003d5b0", "mov ecx, dword ptr [esp + 0x10]", "0x1000b6b0"], ["0x1003d5b4", "mov dword ptr [ebx], ecx", "0x1000b6b4"], ["0x1003d5b6", "mov eax, dword ptr [esi + 4]", "0x1000b6b6"]]}, {"orig": [["0x1003d5b9", "cmp eax, ebx"]], "recomp": [["0x1000b6b9", "cmp ebx, eax"]]}, {"both": [["0x1003d5bb", "je 0x8", "0x1000b6bb"], ["0x1003d5bd", "cmp dword ptr [eax], ebx", "0x1000b6bd"], ["0x1003d5bf", "jne 0x11", "0x1000b6bf"], ["0x1003d5c1", "mov dword ptr [eax], ecx", "0x1000b6c1"], ["0x1003d5c3", "jmp 0xd", "0x1000b6c3"], ["0x1003d5c5", "mov ecx, dword ptr [esp + 0x10]", "0x1000b6c5"], ["0x1003d5c9", "mov dword ptr [eax + 4], ecx", "0x1000b6c9"], ["0x1003d5cc", "mov eax, dword ptr [esi + 4]", "0x1000b6cc"], ["0x1003d5cf", "mov dword ptr [eax + 8], ecx", "0x1000b6cf"], ["0x1003d5d2", "mov edi, dword ptr [esp + 0x10]", "0x1000b6d2"]]}]]]}, {"address": "0x1003d6f0", "recomp": "0x1000b7f0", "name": "_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::iterator::_Dec", "matching": 0.8181818181818182, "diff": [["@@ -0x1003d6f1,30 +0x1000b7f1,30 @@", [{"both": [["0x1003d6f1", "mov esi, dword ptr [ecx]", "0x1000b7f1"], ["0x1003d6f3", "cmp dword ptr [esi + 0x14], 0", "0x1000b7f3"], ["0x1003d6f7", "jne 0xf", "0x1000b7f7"], ["0x1003d6f9", "mov eax, dword ptr [esi + 4]", "0x1000b7f9"], ["0x1003d6fc", "cmp dword ptr [eax + 4], esi", "0x1000b7fc"], ["0x1003d6ff", "jne 0x7", "0x1000b7ff"], ["0x1003d701", "mov eax, dword ptr [esi + 8]", "0x1000b801"], ["0x1003d704", "pop esi", "0x1000b804"], ["0x1003d705", "mov dword ptr [ecx], eax", "0x1000b805"], ["0x1003d707", "ret ", "0x1000b807"]]}, {"orig": [["0x1003d708", "mov edx, dword ptr [esi]"], ["0x1003d70a", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], edx"]], "recomp": [["0x1000b808", "mov eax, dword ptr [esi]"], ["0x1000b80a", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d710", "je 0x13", "0x1000b810"]]}, {"orig": [["0x1003d712", "mov eax, dword ptr [edx + 8]"], ["0x1003d715", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], eax"]], "recomp": [["0x1000b812", "mov edx, dword ptr [eax + 8]"], ["0x1000b815", "cmp edx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d71b", "je 0x4", "0x1000b81b"]]}, {"orig": [["0x1003d71d", "mov edx, eax"]], "recomp": [["0x1000b81d", "mov eax, edx"]]}, {"both": [["0x1003d71f", "jmp -0xf", "0x1000b81f"], ["0x1003d721", "pop esi", "0x1000b821"]]}, {"orig": [["0x1003d722", "mov dword ptr [ecx], edx"]], "recomp": [["0x1000b822", "mov dword ptr [ecx], eax"]]}, {"both": [["0x1003d724", "ret ", "0x1000b824"], ["0x1003d725", "mov edx, dword ptr [esi + 4]", "0x1000b825"], ["0x1003d728", "cmp dword ptr [edx], esi", "0x1000b828"], ["0x1003d72a", "jne 0xb", "0x1000b82a"], ["0x1003d72c", "mov dword ptr [ecx], edx", "0x1000b82c"], ["0x1003d72e", "mov eax, edx", "0x1000b82e"], ["0x1003d730", "mov edx, dword ptr [edx + 4]", "0x1000b830"], ["0x1003d733", "cmp dword ptr [edx], eax", "0x1000b833"], ["0x1003d735", "je -0xb", "0x1000b835"], ["0x1003d737", "pop esi", "0x1000b837"]]}]]]}, {"address": "0x1003d760", "recomp": "0x1000b860", "name": "_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Insert", "matching": 0.8487584650112867, "diff": [["@@ -0x1003d79b,78 +0x1000b89b,78 @@", [{"both": [["0x1003d79b", "mov dword ptr [eax - 4], ecx", "0x1000b89b"], ["0x1003d79e", "je 0xa", "0x1000b89e"], ["0x1003d7a0", "mov ecx, dword ptr [edx]", "0x1000b8a0"], ["0x1003d7a2", "mov ebx, dword ptr [edx + 4]", "0x1000b8a2"], ["0x1003d7a5", "mov dword ptr [eax], ecx", "0x1000b8a5"], ["0x1003d7a7", "mov dword ptr [eax + 4], ebx", "0x1000b8a7"], ["0x1003d7aa", "inc dword ptr [esi + 0xc]", "0x1000b8aa"], ["0x1003d7ad", "cmp dword ptr [esi + 4], edi", "0x1000b8ad"], ["0x1003d7b0", "je 0x35", "0x1000b8b0"], ["0x1003d7b2", "mov eax, dword ptr [esp + 0x1c]", "0x1000b8b2"]]}, {"orig": [["0x1003d7b6", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], eax"]], "recomp": [["0x1000b8b6", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d7bc", "jne 0x29", "0x1000b8bc"], ["0x1003d7be", "mov eax, dword ptr [edi + 0x10]", "0x1000b8be"], ["0x1003d7c1", "mov ecx, dword ptr [edx + 4]", "0x1000b8c1"], ["0x1003d7c4", "push eax", "0x1000b8c4"], ["0x1003d7c5", "push ecx", "0x1000b8c5"], ["0x1003d7c6", "call __strcmpi (FUNCTION)", "0x1000b8c6"], ["0x1003d7cb", "add esp, 8", "0x1000b8cb"], ["0x1003d7ce", "test eax, eax", "0x1000b8ce"], ["0x1003d7d0", "jg 0x15", "0x1000b8d0"], ["0x1003d7d2", "mov edx, dword ptr [esp + 0x10]", "0x1000b8d2"], ["0x1003d7d6", "mov dword ptr [edi + 8], edx", "0x1000b8d6"], ["0x1003d7d9", "mov eax, dword ptr [esi + 4]", "0x1000b8d9"], ["0x1003d7dc", "add eax, 8", "0x1000b8dc"], ["0x1003d7df", "cmp dword ptr [eax], edi", "0x1000b8df"], ["0x1003d7e1", "jne 0x26", "0x1000b8e1"], ["0x1003d7e3", "mov dword ptr [eax], edx", "0x1000b8e3"], ["0x1003d7e5", "jmp 0x22", "0x1000b8e5"], ["0x1003d7e7", "mov edx, dword ptr [esp + 0x10]", "0x1000b8e7"], ["0x1003d7eb", "mov dword ptr [edi], edx", "0x1000b8eb"], ["0x1003d7ed", "mov eax, dword ptr [esi + 4]", "0x1000b8ed"]]}, {"orig": [["0x1003d7f0", "cmp edi, eax"]], "recomp": [["0x1000b8f0", "cmp eax, edi"]]}, {"both": [["0x1003d7f2", "je 0x8", "0x1000b8f2"], ["0x1003d7f4", "cmp dword ptr [eax], edi", "0x1000b8f4"], ["0x1003d7f6", "jne 0x11", "0x1000b8f6"], ["0x1003d7f8", "mov dword ptr [eax], edx", "0x1000b8f8"], ["0x1003d7fa", "jmp 0xd", "0x1000b8fa"], ["0x1003d7fc", "mov edx, dword ptr [esp + 0x10]", "0x1000b8fc"], ["0x1003d800", "mov dword ptr [eax + 4], edx", "0x1000b900"], ["0x1003d803", "mov eax, dword ptr [esi + 4]", "0x1000b903"], ["0x1003d806", "mov dword ptr [eax + 8], edx", "0x1000b906"], ["0x1003d809", "mov ecx, dword ptr [esp + 0x10]", "0x1000b909"], ["0x1003d80d", "mov eax, dword ptr [esi + 4]", "0x1000b90d"], ["0x1003d810", "cmp dword ptr [eax + 4], ecx", "0x1000b910"]]}, {"orig": [["0x1003d813", "je 0x1b3"]], "recomp": [["0x1000b913", "je 0x1b4"]]}, {"both": [["0x1003d819", "lea edx, [ecx + 4]", "0x1000b919"], ["0x1003d81c", "mov eax, dword ptr [edx]", "0x1000b91c"]]}, {"orig": [["0x1003d81e", "lea ebx, [eax + 0x14]"], ["0x1003d821", "cmp dword ptr [ebx], 0"]], "recomp": [["0x1000b91e", "lea ebp, [eax + 0x14]"], ["0x1000b921", "cmp dword ptr [ebp], 0"]]}, {"both": [["0x1003d824", "jne 0x1a2", "0x1000b925"], ["0x1003d82a", "lea edi, [eax + 4]", "0x1000b92b"]]}, {"orig": [["0x1003d82d", "mov ebp, dword ptr [edi]"], ["0x1003d82f", "mov ebp, dword ptr [ebp]"], ["0x1003d832", "cmp ebp, eax"]], "recomp": [["0x1000b92e", "mov ebx, dword ptr [edi]"], ["0x1000b930", "mov ebx, dword ptr [ebx]"], ["0x1000b932", "cmp ebx, eax"]]}, {"both": [["0x1003d834", "jne 0xbb", "0x1000b934"]]}, {"orig": [["0x1003d83a", "mov ebp, dword ptr [edi]"], ["0x1003d83c", "mov ebp, dword ptr [ebp + 8]"], ["0x1003d83f", "cmp dword ptr [ebp + 0x14], 0"]], "recomp": [["0x1000b93a", "mov ebx, dword ptr [edi]"], ["0x1000b93c", "mov ebx, dword ptr [ebx + 8]"], ["0x1000b93f", "cmp dword ptr [ebx + 0x14], 0"]]}, {"both": [["0x1003d843", "je 0x159", "0x1000b943"], ["0x1003d849", "lea ebx, [eax + 8]", "0x1000b949"], ["0x1003d84c", "mov edx, dword ptr [ebx]", "0x1000b94c"], ["0x1003d84e", "cmp ecx, edx", "0x1000b94e"], ["0x1003d850", "jne 0x33", "0x1000b950"], ["0x1003d852", "mov ecx, eax", "0x1000b952"], ["0x1003d854", "mov eax, dword ptr [edx]", "0x1000b954"], ["0x1003d856", "mov dword ptr [ebx], eax", "0x1000b956"], ["0x1003d858", "mov eax, dword ptr [edx]", "0x1000b958"]]}, {"orig": [["0x1003d85a", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], eax"]], "recomp": [["0x1000b95a", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d860", "je 0x3", "0x1000b960"], ["0x1003d862", "mov dword ptr [eax + 4], ecx", "0x1000b962"], ["0x1003d865", "mov eax, dword ptr [edi]", "0x1000b965"], ["0x1003d867", "mov dword ptr [edx + 4], eax", "0x1000b967"], ["0x1003d86a", "mov eax, dword ptr [esi + 4]", "0x1000b96a"], ["0x1003d86d", "add eax, 4", "0x1000b96d"], ["0x1003d870", "cmp dword ptr [eax], ecx", "0x1000b970"], ["0x1003d872", "je 0xb", "0x1000b972"], ["0x1003d874", "mov eax, dword ptr [edi]", "0x1000b974"], ["0x1003d876", "cmp dword ptr [eax], ecx", "0x1000b976"]]}]], ["@@ -0x1003d888,54 +0x1000b988,54 @@", [{"both": [["0x1003d888", "mov dword ptr [eax + 0x14], 1", "0x1000b988"], ["0x1003d88f", "mov eax, dword ptr [ecx + 4]", "0x1000b98f"], ["0x1003d892", "mov edx, dword ptr [eax + 4]", "0x1000b992"], ["0x1003d895", "mov dword ptr [edx + 0x14], 0", "0x1000b995"], ["0x1003d89c", "mov eax, dword ptr [ecx + 4]", "0x1000b99c"], ["0x1003d89f", "mov edx, dword ptr [eax + 4]", "0x1000b99f"], ["0x1003d8a2", "mov edi, dword ptr [edx]", "0x1000b9a2"], ["0x1003d8a4", "mov eax, dword ptr [edi + 8]", "0x1000b9a4"], ["0x1003d8a7", "mov dword ptr [edx], eax", "0x1000b9a7"], ["0x1003d8a9", "mov eax, dword ptr [edi + 8]", "0x1000b9a9"]]}, {"orig": [["0x1003d8ac", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], eax"]], "recomp": [["0x1000b9ac", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d8b2", "je 0x3", "0x1000b9b2"], ["0x1003d8b4", "mov dword ptr [eax + 4], edx", "0x1000b9b4"], ["0x1003d8b7", "mov eax, dword ptr [edx + 4]", "0x1000b9b7"], ["0x1003d8ba", "mov dword ptr [edi + 4], eax", "0x1000b9ba"], ["0x1003d8bd", "mov eax, dword ptr [esi + 4]", "0x1000b9bd"], ["0x1003d8c0", "add eax, 4", "0x1000b9c0"], ["0x1003d8c3", "cmp dword ptr [eax], edx", "0x1000b9c3"], ["0x1003d8c5", "je 0x24", "0x1000b9c5"], ["0x1003d8c7", "mov ebx, dword ptr [edx + 4]", "0x1000b9c7"], ["0x1003d8ca", "lea eax, [ebx + 8]", "0x1000b9ca"], ["0x1003d8cd", "cmp dword ptr [eax], edx", "0x1000b9cd"], ["0x1003d8cf", "je 0xd", "0x1000b9cf"], ["0x1003d8d1", "mov dword ptr [ebx], edi", "0x1000b9d1"], ["0x1003d8d3", "mov dword ptr [edi + 8], edx", "0x1000b9d3"], ["0x1003d8d6", "mov dword ptr [edx + 4], edi", "0x1000b9d6"]]}, {"orig": [["0x1003d8d9", "jmp 0xe2"], ["0x1003d8de", "mov dword ptr [eax], edi"], ["0x1003d8e0", "mov dword ptr [edi + 8], edx"], ["0x1003d8e3", "mov dword ptr [edx + 4], edi"], ["0x1003d8e6", "jmp 0xd5"]], "recomp": [["0x1000b9d9", "jmp 0xe3"], ["0x1000b9de", "mov dword ptr [eax], edi"], ["0x1000b9e0", "mov dword ptr [edi + 8], edx"], ["0x1000b9e3", "mov dword ptr [edx + 4], edi"], ["0x1000b9e6", "jmp 0xd6"]]}, {"both": [["0x1003d8eb", "mov dword ptr [eax], edi", "0x1000b9eb"], ["0x1003d8ed", "mov dword ptr [edi + 8], edx", "0x1000b9ed"], ["0x1003d8f0", "jmp 0xa8", "0x1000b9f0"]]}, {"orig": [["0x1003d8f5", "cmp dword ptr [ebp + 0x14], 0"]], "recomp": [["0x1000b9f5", "cmp dword ptr [ebx + 0x14], 0"]]}, {"both": [["0x1003d8f9", "je 0xa3", "0x1000b9f9"], ["0x1003d8ff", "mov edx, dword ptr [eax]", "0x1000b9ff"], ["0x1003d901", "cmp ecx, edx", "0x1000ba01"], ["0x1003d903", "jne 0x38", "0x1000ba03"], ["0x1003d905", "mov ecx, eax", "0x1000ba05"], ["0x1003d907", "mov eax, dword ptr [edx + 8]", "0x1000ba07"], ["0x1003d90a", "mov dword ptr [ecx], eax", "0x1000ba0a"], ["0x1003d90c", "mov eax, dword ptr [edx + 8]", "0x1000ba0c"]]}, {"orig": [["0x1003d90f", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], eax"]], "recomp": [["0x1000ba0f", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d915", "je 0x3", "0x1000ba15"], ["0x1003d917", "mov dword ptr [eax + 4], ecx", "0x1000ba17"], ["0x1003d91a", "mov eax, dword ptr [edi]", "0x1000ba1a"], ["0x1003d91c", "mov dword ptr [edx + 4], eax", "0x1000ba1c"], ["0x1003d91f", "mov eax, dword ptr [esi + 4]", "0x1000ba1f"], ["0x1003d922", "add eax, 4", "0x1000ba22"], ["0x1003d925", "cmp dword ptr [eax], ecx", "0x1000ba25"], ["0x1003d927", "je 0xd", "0x1000ba27"], ["0x1003d929", "mov ebx, dword ptr [edi]", "0x1000ba29"], ["0x1003d92b", "lea eax, [ebx + 8]", "0x1000ba2b"]]}]], ["@@ -0x1003d940,57 +0x1000ba40,56 @@", [{"both": [["0x1003d940", "mov dword ptr [eax + 0x14], 1", "0x1000ba40"], ["0x1003d947", "mov eax, dword ptr [ecx + 4]", "0x1000ba47"], ["0x1003d94a", "mov edx, dword ptr [eax + 4]", "0x1000ba4a"], ["0x1003d94d", "mov dword ptr [edx + 0x14], 0", "0x1000ba4d"], ["0x1003d954", "mov eax, dword ptr [ecx + 4]", "0x1000ba54"], ["0x1003d957", "mov edx, dword ptr [eax + 4]", "0x1000ba57"], ["0x1003d95a", "mov edi, dword ptr [edx + 8]", "0x1000ba5a"], ["0x1003d95d", "mov eax, dword ptr [edi]", "0x1000ba5d"], ["0x1003d95f", "mov dword ptr [edx + 8], eax", "0x1000ba5f"], ["0x1003d962", "mov eax, dword ptr [edi]", "0x1000ba62"]]}, {"orig": [["0x1003d964", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], eax"]], "recomp": [["0x1000ba64", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003d96a", "je 0x3", "0x1000ba6a"], ["0x1003d96c", "mov dword ptr [eax + 4], edx", "0x1000ba6c"], ["0x1003d96f", "mov eax, dword ptr [edx + 4]", "0x1000ba6f"], ["0x1003d972", "mov dword ptr [edi + 4], eax", "0x1000ba72"], ["0x1003d975", "mov eax, dword ptr [esi + 4]", "0x1000ba75"], ["0x1003d978", "add eax, 4", "0x1000ba78"], ["0x1003d97b", "cmp dword ptr [eax], edx", "0x1000ba7b"], ["0x1003d97d", "je 0x1a", "0x1000ba7d"], ["0x1003d97f", "mov eax, dword ptr [edx + 4]", "0x1000ba7f"], ["0x1003d982", "cmp dword ptr [eax], edx", "0x1000ba82"], ["0x1003d984", "je 0xa", "0x1000ba84"], ["0x1003d986", "mov dword ptr [eax + 8], edi", "0x1000ba86"], ["0x1003d989", "mov dword ptr [edi], edx", "0x1000ba89"], ["0x1003d98b", "mov dword ptr [edx + 4], edi", "0x1000ba8b"]]}, {"orig": [["0x1003d98e", "jmp 0x30"], ["0x1003d990", "mov dword ptr [eax], edi"], ["0x1003d992", "mov dword ptr [edi], edx"], ["0x1003d994", "mov dword ptr [edx + 4], edi"], ["0x1003d997", "jmp 0x27"], ["0x1003d999", "mov dword ptr [eax], edi"], ["0x1003d99b", "mov dword ptr [edi], edx"], ["0x1003d99d", "mov dword ptr [edx + 4], edi"], ["0x1003d9a0", "jmp 0x1e"], ["0x1003d9a2", "mov dword ptr [ebx], 1"], ["0x1003d9a8", "mov dword ptr [ebp + 0x14], 1"]], "recomp": [["0x1000ba8e", "jmp 0x31"], ["0x1000ba90", "mov dword ptr [eax], edi"], ["0x1000ba92", "mov dword ptr [edi], edx"], ["0x1000ba94", "mov dword ptr [edx + 4], edi"], ["0x1000ba97", "jmp 0x28"], ["0x1000ba99", "mov dword ptr [eax], edi"], ["0x1000ba9b", "mov dword ptr [edi], edx"], ["0x1000ba9d", "mov dword ptr [edx + 4], edi"], ["0x1000baa0", "jmp 0x1f"], ["0x1000baa2", "mov dword ptr [ebp], 1"], ["0x1000baa9", "mov dword ptr [ebx + 0x14], 1"]]}, {"both": [["0x1003d9af", "mov eax, dword ptr [edx]", "0x1000bab0"], ["0x1003d9b1", "mov ecx, dword ptr [eax + 4]", "0x1000bab2"], ["0x1003d9b4", "mov dword ptr [ecx + 0x14], 0", "0x1000bab5"], ["0x1003d9bb", "mov eax, dword ptr [edx]", "0x1000babc"], ["0x1003d9bd", "mov ecx, dword ptr [eax + 4]", "0x1000babe"], ["0x1003d9c0", "mov eax, dword ptr [esi + 4]", "0x1000bac1"], ["0x1003d9c3", "cmp dword ptr [eax + 4], ecx", "0x1000bac4"]]}, {"orig": [["0x1003d9c6", "jne -0x1b3"]], "recomp": [["0x1000bac7", "jne -0x1b4"]]}, {"both": [["0x1003d9cc", "mov eax, dword ptr [esi + 4]", "0x1000bacd"], ["0x1003d9cf", "mov edx, dword ptr [esp + 0x10]", "0x1000bad0"], ["0x1003d9d3", "mov ecx, dword ptr [eax + 4]", "0x1000bad4"], ["0x1003d9d6", "mov eax, dword ptr [esp + 0x18]", "0x1000bad7"], ["0x1003d9da", "pop ebp", "0x1000badb"], ["0x1003d9db", "pop edi", "0x1000badc"], ["0x1003d9dc", "mov dword ptr [ecx + 0x14], 1", "0x1000badd"], ["0x1003d9e3", "pop esi", "0x1000bae4"], ["0x1003d9e4", "mov dword ptr [eax], edx", "0x1000bae5"], ["0x1003d9e6", "pop ebx", "0x1000bae7"], ["0x1003d9e7", "add esp, 4", "0x1000bae8"], ["0x1003d9ea", "ret 0x10", "0x1000baeb"]]}, {"orig": [["0x1003d9ed", "int3 "]], "recomp": []}]]]}, {"address": "0x1003d9f0", "recomp": "0x1000baf0", "name": "_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Lrotate", "matching": 0.36363636363636365, "diff": [["@@ -0x1003d9f0,33 +0x1000baf0,33 @@", [{"orig": [["0x1003d9f0", "mov edx, dword ptr [esp + 4]"]], "recomp": []}, {"both": [["0x1003d9f4", "push esi", "0x1000baf0"]]}, {"orig": [["0x1003d9f5", "mov esi, dword ptr [edx + 8]"], ["0x1003d9f8", "mov eax, dword ptr [esi]"], ["0x1003d9fa", "mov dword ptr [edx + 8], eax"], ["0x1003d9fd", "mov eax, dword ptr [esi]"], ["0x1003d9ff", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], eax"]], "recomp": [["0x1000baf1", "mov esi, dword ptr [esp + 8]"], ["0x1000baf5", "mov edx, dword ptr [esi + 8]"], ["0x1000baf8", "mov eax, dword ptr [edx]"], ["0x1000bafa", "mov dword ptr [esi + 8], eax"], ["0x1000bafd", "mov eax, dword ptr [edx]"], ["0x1000baff", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003da05", "je 0x3", "0x1000bb05"]]}, {"orig": [["0x1003da07", "mov dword ptr [eax + 4], edx"], ["0x1003da0a", "mov eax, dword ptr [edx + 4]"], ["0x1003da0d", "mov dword ptr [esi + 4], eax"]], "recomp": [["0x1000bb07", "mov dword ptr [eax + 4], esi"], ["0x1000bb0a", "mov eax, dword ptr [esi + 4]"], ["0x1000bb0d", "mov dword ptr [edx + 4], eax"]]}, {"both": [["0x1003da10", "mov eax, dword ptr [ecx + 4]", "0x1000bb10"], ["0x1003da13", "add eax, 4", "0x1000bb13"]]}, {"orig": [["0x1003da16", "cmp dword ptr [eax], edx"]], "recomp": [["0x1000bb16", "cmp dword ptr [eax], esi"]]}, {"both": [["0x1003da18", "je 0x1e", "0x1000bb18"]]}, {"orig": [["0x1003da1a", "mov eax, dword ptr [edx + 4]"], ["0x1003da1d", "cmp dword ptr [eax], edx"]], "recomp": [["0x1000bb1a", "mov eax, dword ptr [esi + 4]"], ["0x1000bb1d", "cmp dword ptr [eax], esi"]]}, {"both": [["0x1003da1f", "je 0xc", "0x1000bb1f"]]}, {"orig": [["0x1003da21", "mov dword ptr [eax + 8], esi"], ["0x1003da24", "mov dword ptr [esi], edx"], ["0x1003da26", "mov dword ptr [edx + 4], esi"]], "recomp": [["0x1000bb21", "mov dword ptr [eax + 8], edx"], ["0x1000bb24", "mov dword ptr [edx], esi"], ["0x1000bb26", "mov dword ptr [esi + 4], edx"]]}, {"both": [["0x1003da29", "pop esi", "0x1000bb29"], ["0x1003da2a", "ret 4", "0x1000bb2a"]]}, {"orig": [["0x1003da2d", "mov dword ptr [eax], esi"], ["0x1003da2f", "mov dword ptr [esi], edx"], ["0x1003da31", "mov dword ptr [edx + 4], esi"]], "recomp": [["0x1000bb2d", "mov dword ptr [eax], edx"], ["0x1000bb2f", "mov dword ptr [edx], esi"], ["0x1000bb31", "mov dword ptr [esi + 4], edx"]]}, {"both": [["0x1003da34", "pop esi", "0x1000bb34"], ["0x1003da35", "ret 4", "0x1000bb35"]]}, {"orig": [["0x1003da38", "mov dword ptr [eax], esi"], ["0x1003da3a", "mov dword ptr [esi], edx"], ["0x1003da3c", "mov dword ptr [edx + 4], esi"]], "recomp": [["0x1000bb38", "mov dword ptr [eax], edx"], ["0x1000bb3a", "mov dword ptr [edx], esi"], ["0x1000bb3c", "mov dword ptr [esi + 4], edx"]]}, {"both": [["0x1003da3f", "pop esi", "0x1000bb3f"], ["0x1003da40", "ret 4", "0x1000bb40"]]}]]]}, {"address": "0x1003da50", "recomp": "0x1000bb50", "name": "_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Rrotate", "matching": 0.38235294117647056, "diff": [["@@ -0x1003da50,34 +0x1000bb50,34 @@", [{"orig": [], "recomp": [["0x1000bb50", "mov edx, dword ptr [esp + 4]"]]}, {"both": [["0x1003da50", "push esi", "0x1000bb54"]]}, {"orig": [["0x1003da51", "mov esi, dword ptr [esp + 8]"], ["0x1003da55", "mov edx, dword ptr [esi]"], ["0x1003da57", "mov eax, dword ptr [edx + 8]"], ["0x1003da5a", "mov dword ptr [esi], eax"], ["0x1003da5c", "mov eax, dword ptr [edx + 8]"], ["0x1003da5f", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], eax"]], "recomp": [["0x1000bb55", "mov esi, dword ptr [edx]"], ["0x1000bb57", "mov eax, dword ptr [esi + 8]"], ["0x1000bb5a", "mov dword ptr [edx], eax"], ["0x1000bb5c", "mov eax, dword ptr [esi + 8]"], ["0x1000bb5f", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003da65", "je 0x3", "0x1000bb65"]]}, {"orig": [["0x1003da67", "mov dword ptr [eax + 4], esi"], ["0x1003da6a", "mov eax, dword ptr [esi + 4]"], ["0x1003da6d", "mov dword ptr [edx + 4], eax"]], "recomp": [["0x1000bb67", "mov dword ptr [eax + 4], edx"], ["0x1000bb6a", "mov eax, dword ptr [edx + 4]"], ["0x1000bb6d", "mov dword ptr [esi + 4], eax"]]}, {"both": [["0x1003da70", "mov eax, dword ptr [ecx + 4]", "0x1000bb70"], ["0x1003da73", "add eax, 4", "0x1000bb73"]]}, {"orig": [["0x1003da76", "cmp dword ptr [eax], esi"]], "recomp": [["0x1000bb76", "cmp dword ptr [eax], edx"]]}, {"both": [["0x1003da78", "je 0x22", "0x1000bb78"]]}, {"orig": [["0x1003da7a", "mov ecx, dword ptr [esi + 4]"]], "recomp": [["0x1000bb7a", "mov ecx, dword ptr [edx + 4]"]]}, {"both": [["0x1003da7d", "lea eax, [ecx + 8]", "0x1000bb7d"]]}, {"orig": [["0x1003da80", "cmp dword ptr [eax], esi"]], "recomp": [["0x1000bb80", "cmp dword ptr [eax], edx"]]}, {"both": [["0x1003da82", "je 0xc", "0x1000bb82"]]}, {"orig": [["0x1003da84", "mov dword ptr [ecx], edx"], ["0x1003da86", "mov dword ptr [edx + 8], esi"], ["0x1003da89", "mov dword ptr [esi + 4], edx"]], "recomp": [["0x1000bb84", "mov dword ptr [ecx], esi"], ["0x1000bb86", "mov dword ptr [esi + 8], edx"], ["0x1000bb89", "mov dword ptr [edx + 4], esi"]]}, {"both": [["0x1003da8c", "pop esi", "0x1000bb8c"], ["0x1003da8d", "ret 4", "0x1000bb8d"]]}, {"orig": [["0x1003da90", "mov dword ptr [eax], edx"], ["0x1003da92", "mov dword ptr [edx + 8], esi"], ["0x1003da95", "mov dword ptr [esi + 4], edx"]], "recomp": [["0x1000bb90", "mov dword ptr [eax], esi"], ["0x1000bb92", "mov dword ptr [esi + 8], edx"], ["0x1000bb95", "mov dword ptr [edx + 4], esi"]]}, {"both": [["0x1003da98", "pop esi", "0x1000bb98"], ["0x1003da99", "ret 4", "0x1000bb99"]]}, {"orig": [["0x1003da9c", "mov dword ptr [eax], edx"], ["0x1003da9e", "mov dword ptr [edx + 8], esi"], ["0x1003daa1", "mov dword ptr [esi + 4], edx"]], "recomp": [["0x1000bb9c", "mov dword ptr [eax], esi"], ["0x1000bb9e", "mov dword ptr [esi + 8], edx"], ["0x1000bba1", "mov dword ptr [edx + 4], esi"]]}, {"both": [["0x1003daa4", "pop esi", "0x1000bba4"], ["0x1003daa5", "ret 4", "0x1000bba5"]]}]]]}, {"address": "0x1003dab0", "recomp": "0x1000bbb0", "name": "list<Element100d6b4c,allocator<Element100d6b4c> >::_Buynode", "matching": 1.0, "diff": []}, {"address": "0x1003dae0", "recomp": "0x1000bbe0", "name": "LegoUnknown100d6b4c::FUN_1003dae0", "matching": 1.0, "diff": []}, {"address": "0x1003db10", "recomp": "0x1000bc10", "name": "LegoUnknown100d6b4c::FUN_1003db10", "matching": 1.0, "diff": []}, {"address": "0x1003dc40", "recomp": "0x1000bc80", "name": "LegoUnknown100d6b4c::FUN_1003dc40", "matching": 0.9818181818181818, "diff": [["@@ -0x1003dc4b,24 +0x1000bc8b,24 @@", [{"both": [["0x1003dc4b", "mov edi, dword ptr [esp + 0x14]", "0x1000bc8b"], ["0x1003dc4f", "mov eax, dword ptr [edx]", "0x1000bc8f"], ["0x1003dc51", "mov dword ptr [esp + 0xc], eax", "0x1000bc91"], ["0x1003dc55", "cmp eax, edx", "0x1000bc95"], ["0x1003dc57", "je 0x81", "0x1000bc97"], ["0x1003dc5d", "mov ecx, dword ptr [edi]", "0x1000bc9d"], ["0x1003dc5f", "mov eax, dword ptr [esp + 0xc]", "0x1000bc9f"], ["0x1003dc63", "cmp dword ptr [eax + 0xc], ecx", "0x1000bca3"], ["0x1003dc66", "je 0x4a", "0x1000bca6"], ["0x1003dc68", "mov ebx, dword ptr [eax + 8]", "0x1000bca8"]]}, {"orig": [["0x1003dc6b", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], ebx"]], "recomp": [["0x1000bcab", "cmp ebx, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003dc71", "je 0xe", "0x1000bcb1"], ["0x1003dc73", "mov eax, dword ptr [ebx]", "0x1000bcb3"]]}, {"orig": [["0x1003dc75", "cmp dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)], eax"]], "recomp": [["0x1000bcb5", "cmp eax, dword ptr [_Tree<Element100d6b4c,Element100d6b4c,set<Element100d6b4c,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Kfn,Set100d6b4cComparator,allocator<Element100d6b4c> >::_Nil (DATA)]"]]}, {"both": [["0x1003dc7b", "je 0x29", "0x1000bcbb"], ["0x1003dc7d", "mov ebx, eax", "0x1000bcbd"], ["0x1003dc7f", "jmp -0xe", "0x1000bcbf"], ["0x1003dc81", "mov eax, dword ptr [esp + 0xc]", "0x1000bcc1"], ["0x1003dc85", "mov ebx, dword ptr [eax + 4]", "0x1000bcc5"], ["0x1003dc88", "cmp dword ptr [ebx + 8], eax", "0x1000bcc8"], ["0x1003dc8b", "jne 0x10", "0x1000bccb"], ["0x1003dc8d", "mov dword ptr [esp + 0xc], ebx", "0x1000bccd"], ["0x1003dc91", "mov ebx, dword ptr [ebx + 4]", "0x1000bcd1"], ["0x1003dc94", "mov eax, dword ptr [esp + 0xc]", "0x1000bcd4"]]}]]]}, {"address": "0x1003dd70", "recomp": "0x1002fba0", "name": "PickROI", "matching": 0.5555555555555556, "diff": [["@@ -0x1003dd70,9 +0x1002fba0,9 @@", [{"both": [["0x1003dd70", "call VideoManager (FUNCTION)", "0x1002fba0"]]}, {"orig": [["0x1003dd75", "mov ecx, dword ptr [eax + 0x68]"]], "recomp": [["0x1002fba5", "mov ecx, dword ptr [esp + 8]"]]}, {"both": [["0x1003dd78", "mov edx, dword ptr [esp + 4]", "0x1002fba9"]]}, {"orig": [["0x1003dd7c", "mov eax, dword ptr [esp + 8]"], ["0x1003dd80", "mov ecx, dword ptr [ecx + 8]"], ["0x1003dd83", "push eax"]], "recomp": [["0x1002fbad", "push ecx"], ["0x1002fbae", "mov eax, dword ptr [eax + 0x68]"]]}, {"both": [["0x1003dd84", "push edx", "0x1002fbb1"]]}, {"orig": [], "recomp": [["0x1002fbb2", "mov ecx, dword ptr [eax + 8]"]]}, {"both": [["0x1003dd85", "call Lego3DView::Pick (FUNCTION)", "0x1002fbb5"], ["0x1003dd8a", "ret ", "0x1002fbba"]]}]]]}, {"address": "0x1003ddc0", "recomp": "0x1002fbc0", "name": "PickEntity", "matching": 0.0, "stub": true}, {"address": "0x1003e050", "recomp": "0x1001c660", "name": "FUN_1003e050", "matching": 0.0, "stub": true}, {"address": "0x1003e300", "recomp": "0x1001c670", "name": "MatchActionString", "matching": 1.0, "diff": []}, {"address": "0x1003e430", "recomp": "0x1001c7a0", "name": "InvokeAction", "matching": 0.8939828080229226, "diff": [["@@ -0x1003e470,21 +0x1001c7e0,21 @@", [{"both": [["0x1003e470", "lea ecx, [ebp - 0x84]", "0x1001c7e0"], ["0x1003e476", "call MxAtomId::operator= (FUNCTION)", "0x1001c7e6"], ["0x1003e47b", "mov byte ptr [ebp - 4], 0", "0x1001c7eb"], ["0x1003e47f", "call <OFFSET4>", "0x1001c7ef"], ["0x1003e484", "mov ecx, dword ptr [ebp + 0x10]", "0x1001c7f4"], ["0x1003e487", "mov eax, dword ptr [ebp + 8]", "0x1001c7f7"], ["0x1003e48a", "dec eax", "0x1001c7fa"], ["0x1003e48b", "mov dword ptr [ebp - 0x88], ecx", "0x1001c7fb"], ["0x1003e491", "cmp eax, 9", "0x1001c801"], ["0x1003e494", "ja 0x16c", "0x1001c804"]]}, {"orig": [["0x1003e49a", "jmp dword ptr [eax*4 + 0x1003e63c]"]], "recomp": [["0x1001c80a", "jmp dword ptr [eax*4 + 0x1001c9ac]"]]}, {"both": [["0x1003e4a1", "push ecx", "0x1001c811"], ["0x1003e4a2", "mov eax, dword ptr [ebp + 0xc]", "0x1001c812"], ["0x1003e4a5", "mov ecx, dword ptr [eax]", "0x1001c815"], ["0x1003e4a7", "push ecx", "0x1001c817"], ["0x1003e4a8", "push 1", "0x1001c818"], ["0x1003e4aa", "call CheckIfEntityExists (FUNCTION)", "0x1001c81a"], ["0x1003e4af", "add esp, 0xc", "0x1001c81f"], ["0x1003e4b2", "test al, al", "0x1001c822"], ["0x1003e4b4", "jne 0x14c", "0x1001c824"], ["0x1003e4ba", "push 0", "0x1001c82a"]]}]], ["@@ -0x1003e615,28 +0x1001c985,27 @@", [{"both": [["0x1003e615", "mov esp, ebp", "0x1001c985"], ["0x1003e617", "mov dword ptr fs:[0], eax", "0x1001c987"], ["0x1003e61d", "pop ebp", "0x1001c98d"], ["0x1003e61e", "ret ", "0x1001c98e"], ["0x1003e61f", "lea ecx, [ebp - 0x10]", "0x1001c98f"], ["0x1003e622", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x1001c992"], ["0x1003e627", "mov eax, <OFFSET19>", "0x1001c997"], ["0x1003e62c", "jmp ___CxxFrameHandler (FUNCTION)", "0x1001c99c"], ["0x1003e631", "lea ecx, [ebp - 0xa4]", "0x1001c9a1"], ["0x1003e637", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x1001c9a7"]]}, {"orig": [["0x1003e63c", "mov eax, dword ptr [<OFFSET22>]"], ["0x1003e641", "in al, 3"], ["0x1003e643", "adc byte ptr [ebx], ah"], ["0x1003e645", "in eax, 3"], ["0x1003e647", "adc byte ptr [edi - 0x1b], cl"], ["0x1003e64a", "add edx, dword ptr [eax]"], ["0x1003e64c", "jl -0x1b"], ["0x1003e64e", "add edx, dword ptr [eax]"], ["0x1003e650", "movsb byte ptr es:[edi], byte ptr [esi]"], ["0x1003e651", "in eax, 3"], ["0x1003e653", "adc ch, al"], ["0x1003e655", "in eax, 3"], ["0x1003e657", "adc bl, dl"], ["0x1003e659", "in eax, 3"], ["0x1003e65b", "adc bl, ah"], ["0x1003e65d", "in eax, 3"], ["0x1003e65f", "adc bl, dh"], ["0x1003e661", "in eax, 3"]], "recomp": [["0x1001c9ac", "adc eax, ecx"], ["0x1001c9ae", "add dword ptr [eax], edx"], ["0x1001c9b0", "push edx"], ["0x1001c9b1", "enter 0x1001, -0x6d"], ["0x1001c9b5", "enter 0x1001, -0x41"], ["0x1001c9b9", "enter 0x1001, -0x14"], ["0x1001c9bd", "enter 0x1001, 0x14"], ["0x1001c9c1", "leave "], ["0x1001c9c2", "add dword ptr [eax], edx"], ["0x1001c9c4", "xor eax, 0x431001c9"], ["0x1001c9c9", "leave "], ["0x1001c9ca", "add dword ptr [eax], edx"], ["0x1001c9cc", "push ebx"], ["0x1001c9cd", "leave "], ["0x1001c9ce", "add dword ptr [eax], edx"], ["0x1001c9d0", "arpl cx, cx"], ["0x1001c9d2", "add dword ptr [eax], edx"]]}]]]}, {"address": "0x1003e670", "recomp": "0x1001c9e0", "name": "CheckIfEntityExists", "matching": 1.0, "diff": []}, {"address": "0x1003e700", "recomp": "0x1001ca70", "name": "NotifyEntity", "matching": 1.0, "diff": []}, {"address": "0x1003e870", "recomp": "0x1001cbe0", "name": "LegoWorldListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1003e8e0", "recomp": "0x1001cc50", "name": "MxPtrListCursor<LegoWorld>::~MxPtrListCursor<LegoWorld>", "matching": 1.0, "diff": []}, {"address": "0x1003e930", "recomp": "0x1001cca0", "name": "MxListCursor<LegoWorld *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1003e9a0", "recomp": "0x1001cd10", "name": "MxPtrListCursor<LegoWorld>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1003ea10", "recomp": "0x1001cd80", "name": "MxListCursor<LegoWorld *>::~MxListCursor<LegoWorld *>", "matching": 1.0, "diff": []}, {"address": "0x1003ea60", "recomp": "0x1001cdd0", "name": "LegoWorldListCursor::~LegoWorldListCursor", "matching": 1.0, "diff": []}, {"address": "0x1003eab0", "recomp": "0x1001ce20", "name": "SetCameraControllerFromIsle", "matching": 1.0, "diff": []}, {"address": "0x1003eae0", "recomp": "0x1001ce50", "name": "ConvertHSVToRGB", "matching": 0.8858131487889274, "diff": [["@@ -0x1003eb7b,21 +0x1001ceeb,21 @@", [{"both": [["0x1003eb7b", "fisub dword ptr [esp + 0x10]", "0x1001ceeb"], ["0x1003eb7f", "fmulp st(1)", "0x1001ceef"], ["0x1003eb81", "cmp eax, 6", "0x1001cef1"], ["0x1003eb84", "fmul qword ptr [esp]", "0x1001cef4"], ["0x1003eb88", "fld qword ptr [esp + 8]", "0x1001cef8"], ["0x1003eb8c", "fadd st(1)", "0x1001cefc"], ["0x1003eb8e", "fstp qword ptr [esp + 0x10]", "0x1001cefe"], ["0x1003eb92", "fsubr qword ptr [esp]", "0x1001cf02"], ["0x1003eb96", "fstp qword ptr [esp + 0x18]", "0x1001cf06"], ["0x1003eb9a", "ja 0xf1", "0x1001cf0a"]]}, {"orig": [["0x1003eba0", "jmp dword ptr [eax*4 + 0x1003ec98]"]], "recomp": [["0x1001cf10", "jmp dword ptr [eax*4 + 0x1001d008]"]]}, {"both": [["0x1003eba7", "fld qword ptr [esp]", "0x1001cf17"], ["0x1003ebab", "mov eax, dword ptr [esp + 0x30]", "0x1001cf1b"], ["0x1003ebaf", "mov ecx, dword ptr [esp + 0x34]", "0x1001cf1f"], ["0x1003ebb3", "mov edx, dword ptr [esp + 0x38]", "0x1001cf23"], ["0x1003ebb7", "fstp dword ptr [eax]", "0x1001cf27"], ["0x1003ebb9", "fld qword ptr [esp + 0x10]", "0x1001cf29"], ["0x1003ebbd", "fstp dword ptr [ecx]", "0x1001cf2d"], ["0x1003ebbf", "fld qword ptr [esp + 8]", "0x1001cf2f"], ["0x1003ebc3", "fstp dword ptr [edx]", "0x1001cf33"], ["0x1003ebc5", "add esp, 0x20", "0x1001cf35"]]}]], ["@@ -0x1003ec7b,24 +0x1001cfeb,27 @@", [{"both": [["0x1003ec7b", "mov ecx, dword ptr [esp + 0x34]", "0x1001cfeb"], ["0x1003ec7f", "mov edx, dword ptr [esp + 0x38]", "0x1001cfef"], ["0x1003ec83", "fstp dword ptr [eax]", "0x1001cff3"], ["0x1003ec85", "fld qword ptr [esp + 8]", "0x1001cff5"], ["0x1003ec89", "fstp dword ptr [ecx]", "0x1001cff9"], ["0x1003ec8b", "fld qword ptr [esp + 0x18]", "0x1001cffb"], ["0x1003ec8f", "fstp dword ptr [edx]", "0x1001cfff"], ["0x1003ec91", "add esp, 0x20", "0x1001d001"], ["0x1003ec94", "ret ", "0x1001d004"], ["0x1003ec95", "lea ecx, [ecx]", "0x1001d005"]]}, {"orig": [["0x1003ec98", "cmpsd dword ptr [esi], dword ptr es:[edi]"], ["0x1003ec99", "jmp 0x3"], ["0x1003ec9b", "adc cl, cl"], ["0x1003ec9d", "jmp 0x3"], ["0x1003ec9f", "adc bl, ch"], ["0x1003eca1", "jmp 0x3"], ["0x1003eca3", "adc byte ptr [<OFFSET2>], cl"], ["0x1003eca9", "in al, dx"], ["0x1003ecaa", "add edx, dword ptr [eax]"], ["0x1003ecac", "push ecx"], ["0x1003ecad", "in al, dx"], ["0x1003ecae", "add edx, dword ptr [eax]"], ["0x1003ecb0", "jae -0x14"], ["0x1003ecb2", "add edx, dword ptr [eax]"]], "recomp": [["0x1001d008", "pop ss"], ["0x1001d009", "iretd "], ["0x1001d00a", "add dword ptr [eax], edx"], ["0x1001d00c", "cmp edi, ecx"], ["0x1001d00e", "add dword ptr [eax], edx"], ["0x1001d010", "pop ebx"], ["0x1001d011", "iretd "], ["0x1001d012", "add dword ptr [eax], edx"], ["0x1001d014", "jge -0x31"], ["0x1001d016", "add dword ptr [eax], edx"], ["0x1001d018", "lahf "], ["0x1001d019", "iretd "], ["0x1001d01a", "add dword ptr [eax], edx"], ["0x1001d01c", "ror edi, 1"], ["0x1001d01f", "adc bl, ah"], ["0x1001d021", "iretd "], ["0x1001d022", "add dword ptr [eax], edx"]]}]]]}, {"address": "0x1003ee00", "recomp": "0x1001d030", "name": "RemoveFromCurrentWorld", "matching": 1.0, "diff": []}, {"address": "0x1003ee80", "recomp": "0x1001d0b0", "name": "RemoveFromWorld", "matching": 1.0, "diff": []}, {"address": "0x1003ef00", "recomp": "0x1001d130", "name": "FUN_1003ef00", "matching": 0.0, "stub": true}, {"address": "0x1003ef40", "recomp": "0x1001d140", "name": "SetAppCursor", "matching": 1.0, "diff": []}, {"address": "0x1003ef60", "recomp": "0x1001d160", "name": "FUN_1003ef60", "matching": 0.0, "stub": true}, {"address": "0x1003f050", "recomp": "0x1001d170", "name": "FUN_1003f050", "matching": 0.0, "stub": true}, {"address": "0x1003f0d0", "recomp": "0x1001d180", "name": "SetLightPosition", "matching": 0.0, "stub": true}, {"address": "0x1003f3b0", "recomp": "0x1001d190", "name": "ReadNamedTexture", "matching": 0.0, "stub": true}, {"address": "0x1003f540", "recomp": "0x1001d1a0", "name": "FUN_1003f540", "matching": 0.0, "stub": true}, {"address": "0x1003f8a0", "recomp": "0x1001d1b0", "name": "WriteNamedTexture", "matching": 1.0, "diff": []}, {"address": "0x1003f920", "recomp": "0x1001d230", "name": "LegoNamedTexture::GetName", "matching": 1.0, "diff": []}, {"address": "0x1003fa50", "recomp": "0x10003fe0", "name": "Act3Actor::Act3Actor", "matching": 0.0, "stub": true}, {"address": "0x10042ab0", "recomp": "0x10003460", "name": "Act3Shark::Act3Shark", "matching": 0.0, "stub": true}, {"address": "0x10042ce0", "recomp": "0x100038e0", "name": "Act3Shark::FUN_10042ce0", "matching": 0.0, "stub": true}, {"address": "0x10043020", "recomp": "0x10003b30", "name": "Act3Shark::`scalar deleting destructor'", "matching": 0.7857142857142857, "diff": [["@@ -0x10043020,20 +0x10003b30,10 @@", [{"orig": [["0x10043020", "sub ecx, dword ptr [ecx - 4]"], ["0x10043023", "jmp 0x8"], ["0x10043028", "int3 "], ["0x10043029", "int3 "], ["0x1004302a", "int3 "], ["0x1004302b", "int3 "], ["0x1004302c", "int3 "], ["0x1004302d", "int3 "], ["0x1004302e", "int3 "], ["0x1004302f", "int3 "]], "recomp": []}, {"both": [["0x10043030", "mov eax, dword ptr fs:[0]", "0x10003b30"], ["0x10043036", "push ebp", "0x10003b36"], ["0x10043037", "mov ebp, esp", "0x10003b37"], ["0x10043039", "push -1", "0x10003b39"], ["0x1004303b", "push <OFFSET1>", "0x10003b3b"], ["0x10043040", "push eax", "0x10003b40"], ["0x10043041", "mov dword ptr fs:[0], esp", "0x10003b41"], ["0x10043048", "xor eax, eax", "0x10003b48"], ["0x1004304a", "sub esp, 4", "0x10003b4a"], ["0x1004304d", "mov dword ptr [ebp - 0x10], ecx", "0x10003b4d"]]}]], ["@@ -0x10043081,12 +0x10003b81,16 @@", [{"both": [["0x10043081", "add esp, 4", "0x10003b81"], ["0x10043084", "mov eax, dword ptr [ebp - 0x10]", "0x10003b84"], ["0x10043087", "mov ecx, dword ptr [ebp - 0xc]", "0x10003b87"], ["0x1004308a", "mov esp, ebp", "0x10003b8a"], ["0x1004308c", "mov dword ptr fs:[0], ecx", "0x10003b8c"], ["0x10043093", "sub eax, 0x54", "0x10003b93"], ["0x10043096", "pop ebp", "0x10003b96"], ["0x10043097", "ret 4", "0x10003b97"], ["0x1004309a", "mov ecx, dword ptr [ebp - 0x10]", "0x10003b9a"], ["0x1004309d", "sub ecx, 0x38", "0x10003b9d"]]}, {"orig": [["0x100430a0", "jmp -0x415"], ["0x100430a5", "mov eax, <OFFSET6>"]], "recomp": [["0x10003ba0", "jmp List<void *>::~List<void *> (FUNCTION)"], ["0x10003ba5", "mov eax, <OFFSET7>"], ["0x10003baa", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10003baf", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10003bb2", "sub ecx, 0x34"], ["0x10003bb5", "jmp LegoAnimActor::~LegoAnimActor (FUNCTION)"]]}]]]}, {"address": "0x100430c0", "recomp": "0x10003c20", "name": "Act3Shark::ClassName", "matching": 0.0, "diff": [["@@ -0x100430c0,1 +0x10003c20,2 @@", [{"orig": [["0x100430c0", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x10003c20", "mov eax, 'Act3Shark' (STRING)"], ["0x10003c25", "ret "]]}]]]}, {"address": "0x100430e0", "recomp": "0x100038f0", "name": "Act3Shark::ParseAction", "matching": 0.0, "stub": true}, {"address": "0x100430f0", "recomp": "0x10003900", "name": "Act3Shark::SetWorldSpeed", "matching": 0.0, "stub": true}, {"address": "0x10043100", "recomp": "0x10003910", "name": "Act3Shark::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x100433b0", "recomp": "0x100041a0", "name": "Act3Actor::ClassName", "matching": 0.0, "diff": [["@@ -0x100433b0,1 +0x100041a0,2 @@", [{"orig": [["0x100433b0", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x100041a0", "mov eax, 'Act3Actor' (STRING)"], ["0x100041a5", "ret "]]}]]]}, {"address": "0x10043430", "recomp": "0x10020cb0", "name": "LegoMeterPresenter::LegoMeterPresenter", "matching": 1.0, "diff": []}, {"address": "0x10043550", "recomp": "0x10020dd0", "name": "MxStillPresenter::~MxStillPresenter", "matching": 1.0, "diff": []}, {"address": "0x100435b0", "recomp": "0x10020f50", "name": "MxStillPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100435c0", "recomp": "0x10020e30", "name": "MxStillPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100435d0", "recomp": "0x10020e40", "name": "MxStillPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x100436e0", "recomp": "0x10020f60", "name": "MxStillPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10043760", "recomp": "0x10020fe0", "name": "LegoMeterPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10043780", "recomp": "0x10021000", "name": "LegoMeterPresenter::~LegoMeterPresenter", "matching": 1.0, "diff": []}, {"address": "0x10043800", "recomp": "0x10021080", "name": "LegoMeterPresenter::ParseExtra", "matching": 0.9508196721311475, "diff": [["@@ -0x1004382e,24 +0x100210ae,24 @@", [{"both": [["0x1004382e", "mov eax, dword ptr [esp + 0xc]", "0x100210ae"], ["0x10043832", "lea edi, [esp + 0x10c]", "0x100210b2"], ["0x10043839", "and eax, 0xffff", "0x100210b9"], ["0x1004383e", "mov esi, edx", "0x100210be"], ["0x10043840", "mov ecx, eax", "0x100210c0"], ["0x10043842", "shr ecx, 2", "0x100210c2"], ["0x10043845", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x100210c5"], ["0x10043847", "mov ecx, eax", "0x100210c7"], ["0x10043849", "and ecx, 3", "0x100210c9"], ["0x1004384c", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x100210cc"]]}, {"orig": [["0x1004384e", "lea ecx, [esp + 0x10c]"]], "recomp": [["0x100210ce", "lea ecx, [esp + 0xc]"]]}, {"both": [["0x10043855", "mov edx, dword ptr [g_type (DATA)]", "0x100210d2"], ["0x1004385b", "mov byte ptr [esp + eax + 0x10c], 0", "0x100210d8"]]}, {"orig": [["0x10043863", "lea eax, [esp + 0xc]"]], "recomp": [["0x100210e0", "lea eax, [esp + 0x10c]"]]}, {"both": [["0x10043867", "push ecx", "0x100210e7"], ["0x10043868", "push edx", "0x100210e8"], ["0x10043869", "push eax", "0x100210e9"], ["0x1004386a", "call KeyValueStringParse (FUNCTION)", "0x100210ea"], ["0x1004386f", "add esp, 0xc", "0x100210ef"], ["0x10043872", "test al, al", "0x100210f2"], ["0x10043874", "je 0x86", "0x100210f4"], ["0x1004387a", "mov eax, dword ptr [g_leftToRight (DATA)]", "0x100210fa"], ["0x1004387f", "lea ecx, [esp + 0xc]", "0x100210ff"], ["0x10043883", "push eax", "0x10021103"]]}]], ["@@ -0x100438de,38 +0x1002115e,38 @@", [{"both": [["0x100438de", "jmp 0x20", "0x1002115e"], ["0x100438e0", "mov eax, dword ptr [g_topToBottom (DATA)]", "0x10021160"], ["0x100438e5", "lea ecx, [esp + 0xc]", "0x10021165"], ["0x100438e9", "push eax", "0x10021169"], ["0x100438ea", "push ecx", "0x1002116a"], ["0x100438eb", "call __strcmpi (FUNCTION)", "0x1002116b"], ["0x100438f0", "add esp, 8", "0x10021170"], ["0x100438f3", "test eax, eax", "0x10021173"], ["0x100438f5", "jne 0x9", "0x10021175"], ["0x100438f7", "mov word ptr [ebx + 0x90], 3", "0x10021177"]]}, {"orig": [["0x10043900", "lea eax, [esp + 0x10c]"]], "recomp": [["0x10021180", "lea eax, [esp + 0xc]"]]}, {"both": [["0x10043907", "mov ecx, dword ptr [g_filterIndex (DATA)]", "0x10021184"]]}, {"orig": [["0x1004390d", "lea edx, [esp + 0xc]"]], "recomp": [["0x1002118a", "lea edx, [esp + 0x10c]"]]}, {"both": [["0x10043911", "push eax", "0x10021191"], ["0x10043912", "push ecx", "0x10021192"], ["0x10043913", "push edx", "0x10021193"], ["0x10043914", "call KeyValueStringParse (FUNCTION)", "0x10021194"], ["0x10043919", "add esp, 0xc", "0x10021199"], ["0x1004391c", "test al, al", "0x1002119c"], ["0x1004391e", "je 0x11", "0x1002119e"], ["0x10043920", "lea eax, [esp + 0xc]", "0x100211a0"], ["0x10043924", "push eax", "0x100211a4"], ["0x10043925", "call _atoi (FUNCTION)", "0x100211a5"], ["0x1004392a", "mov word ptr [ebx + 0x70], ax", "0x100211aa"], ["0x1004392e", "add esp, 4", "0x100211ae"]]}, {"orig": [["0x10043931", "lea eax, [esp + 0x10c]"]], "recomp": [["0x100211b1", "lea eax, [esp + 0xc]"]]}, {"both": [["0x10043938", "mov ecx, dword ptr [g_variable (DATA)]", "0x100211b5"]]}, {"orig": [["0x1004393e", "lea edx, [esp + 0xc]"]], "recomp": [["0x100211bb", "lea edx, [esp + 0x10c]"]]}, {"both": [["0x10043942", "push eax", "0x100211c2"], ["0x10043943", "push ecx", "0x100211c3"], ["0x10043944", "push edx", "0x100211c4"], ["0x10043945", "call KeyValueStringParse (FUNCTION)", "0x100211c5"], ["0x1004394a", "add esp, 0xc", "0x100211ca"], ["0x1004394d", "test al, al", "0x100211cd"], ["0x1004394f", "je 0x17", "0x100211cf"], ["0x10043951", "lea eax, [esp + 0xc]", "0x100211d1"], ["0x10043955", "lea ecx, [ebx + 0x74]", "0x100211d5"], ["0x10043958", "push eax", "0x100211d8"]]}]]]}, {"address": "0x10043990", "recomp": "0x10021210", "name": "LegoMeterPresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x10043a30", "recomp": "0x100212b0", "name": "LegoMeterPresenter::RepeatingTickle", "matching": 1.0, "diff": []}, {"address": "0x10043a50", "recomp": "0x100212d0", "name": "LegoMeterPresenter::FUN_10043a50", "matching": 0.0, "stub": true}, {"address": "0x10043ce0", "recomp": "0x1000d930", "name": "LegoActionControlPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x10043d40", "recomp": "0x1000d990", "name": "LegoActionControlPresenter::RepeatingTickle", "matching": 1.0, "diff": []}, {"address": "0x10043df0", "recomp": "0x1000da40", "name": "LegoActionControlPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x10043e20", "recomp": "0x1000da70", "name": "LegoActionControlPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10043e50", "recomp": "0x1000daa0", "name": "LegoActionControlPresenter::ParseExtra", "matching": 1.0, "diff": []}, {"address": "0x10043f50", "recomp": "0x1001e010", "name": "MxControlPresenter::MxControlPresenter", "matching": 1.0, "diff": []}, {"address": "0x10043fd0", "recomp": "0x1001e1a0", "name": "MxControlPresenter::RepeatingTickle", "matching": 1.0, "diff": []}, {"address": "0x10043fe0", "recomp": "0x1001e1b0", "name": "MxControlPresenter::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x10043ff0", "recomp": "0x1001e1c0", "name": "MxControlPresenter::VTable0x68", "matching": 1.0, "diff": []}, {"address": "0x10044000", "recomp": "0x1001e090", "name": "MxControlPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10044010", "recomp": "0x1001e0a0", "name": "MxControlPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x100440f0", "recomp": "0x1001e180", "name": "MxControlPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10044110", "recomp": "0x1001e1d0", "name": "MxControlPresenter::~MxControlPresenter", "matching": 1.0, "diff": []}, {"address": "0x10044180", "recomp": "0x1001e240", "name": "MxControlPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x10044190", "recomp": "0x1001e250", "name": "MxControlPresenter::StartAction", "matching": 1.0, "diff": []}, {"address": "0x10044260", "recomp": "0x1001e320", "name": "MxControlPresenter::EndAction", "matching": 1.0, "diff": []}, {"address": "0x10044270", "recomp": "0x1001e330", "name": "MxControlPresenter::FUN_10044270", "matching": 0.48346055979643765, "diff": [["@@ -0x10044270,198 +0x1001e330,195 @@", [{"both": [["0x10044270", "push ebx", "0x1001e330"], ["0x10044271", "push esi", "0x1001e331"], ["0x10044272", "push edi", "0x1001e332"], ["0x10044273", "mov esi, ecx", "0x1001e333"], ["0x10044275", "cmp word ptr [esi + 0x4c], 3", "0x1001e335"], ["0x1004427a", "push ebp", "0x1001e33a"]]}, {"orig": [["0x1004427b", "je 0xb8"]], "recomp": [["0x1001e33b", "je 0xba"]]}, {"both": [["0x10044281", "mov ebx, dword ptr [esp + 0x1c]", "0x1001e341"], ["0x10044285", "lea eax, [esi + 0x40]", "0x1001e345"], ["0x10044288", "push ebx", "0x1001e348"], ["0x10044289", "push eax", "0x1001e349"], ["0x1004428a", "call ContainsPresenter (FUNCTION)", "0x1001e34a"], ["0x1004428f", "add esp, 8", "0x1001e34f"], ["0x10044292", "test al, al", "0x1001e352"]]}, {"orig": [["0x10044294", "je 0x1d4"]], "recomp": [["0x1001e354", "je 0x1dd"]]}, {"both": [["0x1004429a", "cmp word ptr [esi + 0x4c], 2", "0x1001e35a"]]}, {"orig": [["0x1004429f", "jne 0x85"]], "recomp": [["0x1001e35f", "jne 0x87"]]}, {"both": [["0x100442a5", "mov edi, dword ptr [ebx]", "0x1001e365"], ["0x100442a7", "mov ecx, ebx", "0x1001e367"], ["0x100442a9", "call dword ptr [edi + 0x80]", "0x1001e369"], ["0x100442af", "mov ebp, eax", "0x1001e36f"], ["0x100442b1", "mov ecx, ebx", "0x1001e371"], ["0x100442b3", "call dword ptr [edi + 0x84]", "0x1001e373"], ["0x100442b9", "cmp word ptr [esi + 0x52], 2", "0x1001e379"], ["0x100442be", "mov edi, eax", "0x1001e37e"]]}, {"orig": [["0x100442c0", "jne 0x6e"]], "recomp": [["0x1001e380", "jne 0x70"]]}, {"both": [["0x100442c2", "cmp word ptr [esi + 0x54], 2", "0x1001e382"]]}, {"orig": [["0x100442c7", "jne 0x67"]], "recomp": [["0x1001e387", "jne 0x69"], ["0x1001e389", "mov eax, ebp"]]}, {"both": [["0x100442c9", "mov ecx, dword ptr [ebx + 0x10]", "0x1001e38b"]]}, {"orig": [["0x100442cc", "mov eax, ebp"]], "recomp": []}, {"both": [["0x100442ce", "cdq ", "0x1001e38e"], ["0x100442cf", "sub eax, edx", "0x1001e38f"], ["0x100442d1", "sar eax, 1", "0x1001e391"], ["0x100442d4", "add ecx, eax", "0x1001e394"]]}, {"orig": [], "recomp": [["0x1001e396", "cmp ecx, dword ptr [esp + 0x14]"], ["0x1001e39a", "jle 0x28"], ["0x1001e39c", "mov cx, 3"], ["0x1001e3a0", "mov ebx, dword ptr [ebx + 0x14]"]]}, {"both": [["0x100442d6", "mov eax, edi", "0x1001e3a3"], ["0x100442d8", "cdq ", "0x1001e3a5"]]}, {"orig": [["0x100442d9", "cmp ecx, dword ptr [esp + 0x14]"], ["0x100442dd", "mov ecx, dword ptr [ebx + 0x14]"], ["0x100442e0", "jle 0x24"]], "recomp": []}, {"both": [["0x100442e2", "sub eax, edx", "0x1001e3a6"], ["0x100442e4", "sar eax, 1", "0x1001e3a8"]]}, {"orig": [["0x100442e7", "add ecx, eax"], ["0x100442e9", "mov eax, dword ptr [esp + 0x18]"], ["0x100442ed", "cmp ecx, eax"], ["0x100442ef", "mov ax, 3"]], "recomp": [["0x1001e3ab", "add ebx, eax"], ["0x1001e3ad", "cmp ebx, dword ptr [esp + 0x18]"]]}, {"both": [["0x100442f3", "jle 0x4", "0x1001e3b1"]]}, {"orig": [["0x100442f5", "mov ax, 1"], ["0x100442f9", "mov word ptr [esi + 0x56], ax"]], "recomp": [["0x1001e3b3", "mov cx, 1"], ["0x1001e3b7", "mov word ptr [esi + 0x56], cx"], ["0x1001e3bb", "mov al, 1"]]}, {"both": [["0x100442fd", "pop ebp", "0x1001e3bd"]]}, {"orig": [["0x100442fe", "mov al, 1"]], "recomp": []}, {"both": [["0x10044300", "pop edi", "0x1001e3be"], ["0x10044301", "pop esi", "0x1001e3bf"], ["0x10044302", "pop ebx", "0x1001e3c0"], ["0x10044303", "ret 0xc", "0x1001e3c1"]]}, {"orig": [], "recomp": [["0x1001e3c4", "mov cx, 4"], ["0x1001e3c8", "mov ebx, dword ptr [ebx + 0x14]"], ["0x1001e3cb", "mov eax, edi"], ["0x1001e3cd", "cdq "]]}, {"both": [["0x10044306", "sub eax, edx", "0x1001e3ce"], ["0x10044308", "sar eax, 1", "0x1001e3d0"]]}, {"orig": [["0x1004430b", "add ecx, eax"], ["0x1004430d", "mov eax, dword ptr [esp + 0x18]"], ["0x10044311", "cmp ecx, eax"], ["0x10044313", "mov ax, 4"]], "recomp": [["0x1001e3d3", "add ebx, eax"], ["0x1001e3d5", "cmp ebx, dword ptr [esp + 0x18]"]]}, {"both": [["0x10044317", "jle 0x4", "0x1001e3d9"]]}, {"orig": [["0x10044319", "mov ax, 2"], ["0x1004431d", "mov word ptr [esi + 0x56], ax"]], "recomp": [["0x1001e3db", "mov cx, 2"], ["0x1001e3df", "mov word ptr [esi + 0x56], cx"], ["0x1001e3e3", "mov al, 1"]]}, {"both": [["0x10044321", "pop ebp", "0x1001e3e5"]]}, {"orig": [["0x10044322", "mov al, 1"]], "recomp": []}, {"both": [["0x10044324", "pop edi", "0x1001e3e6"], ["0x10044325", "pop esi", "0x1001e3e7"], ["0x10044326", "pop ebx", "0x1001e3e8"], ["0x10044327", "ret 0xc", "0x1001e3e9"], ["0x1004432a", "mov word ptr [esi + 0x56], 0xffff", "0x1001e3ec"], ["0x10044330", "mov al, 1", "0x1001e3f2"], ["0x10044332", "pop ebp", "0x1001e3f4"], ["0x10044333", "pop edi", "0x1001e3f5"], ["0x10044334", "pop esi", "0x1001e3f6"], ["0x10044335", "pop ebx", "0x1001e3f7"], ["0x10044336", "ret 0xc", "0x1001e3f8"], ["0x10044339", "mov eax, dword ptr [esi + 0x44]", "0x1001e3fb"], ["0x1004433c", "mov ebx, dword ptr [esp + 0x1c]", "0x1001e3fe"], ["0x10044340", "mov ecx, dword ptr [eax]", "0x1001e402"], ["0x10044342", "mov edi, dword ptr [ecx + 8]", "0x1001e404"], ["0x10044345", "cmp edi, ebx", "0x1001e407"], ["0x10044347", "je 0xc", "0x1001e409"], ["0x10044349", "mov eax, dword ptr [ebx + 0x18]", "0x1001e40b"], ["0x1004434c", "cmp dword ptr [edi + 0x18], eax", "0x1001e40e"]]}, {"orig": [["0x1004434f", "jge 0x119"]], "recomp": [["0x1001e411", "jge 0x120"], ["0x1001e417", "mov eax, dword ptr [ebx]"], ["0x1001e419", "mov ecx, ebx"], ["0x1001e41b", "call dword ptr [eax + 0x7c]"], ["0x1001e41e", "test al, al"], ["0x1001e420", "je 0x111"]]}, {"both": [["0x10044355", "mov ebp, dword ptr [edi]", "0x1001e426"], ["0x10044357", "mov ecx, edi", "0x1001e428"]]}, {"orig": [["0x10044359", "call dword ptr [ebp + 0x7c]"], ["0x1004435c", "test al, al"], ["0x1004435e", "je 0x10a"], ["0x10044364", "mov ecx, edi"]], "recomp": []}, {"both": [["0x10044366", "call dword ptr [ebp + 0x84]", "0x1001e42a"]]}, {"orig": [["0x1004436c", "lea ebx, [eax - 1]"]], "recomp": [["0x1001e430", "mov ebx, eax"]]}, {"both": [["0x1004436f", "mov ecx, edi", "0x1001e432"], ["0x10044371", "call dword ptr [ebp + 0x80]", "0x1001e434"], ["0x10044377", "mov ecx, dword ptr [edi + 0x10]", "0x1001e43a"]]}, {"orig": [["0x1004437a", "mov edx, dword ptr [edi + 0x14]"], ["0x1004437d", "add ebx, edx"], ["0x1004437f", "lea eax, [eax + ecx - 1]"], ["0x10044383", "cmp ecx, dword ptr [esp + 0x14]"], ["0x10044387", "jg 0xe1"], ["0x1004438d", "cmp dword ptr [esp + 0x14], eax"], ["0x10044391", "jge 0xd7"], ["0x10044397", "mov eax, dword ptr [esp + 0x18]"], ["0x1004439b", "cmp edx, eax"], ["0x1004439d", "jg 0xcb"], ["0x100443a3", "cmp eax, ebx"], ["0x100443a5", "jge 0xc3"]], "recomp": [["0x1001e43d", "cmp dword ptr [esp + 0x14], ecx"], ["0x1001e441", "jl 0xf0"], ["0x1001e447", "add eax, ecx"], ["0x1001e449", "dec eax"], ["0x1001e44a", "cmp eax, dword ptr [esp + 0x14]"], ["0x1001e44e", "jle 0xe3"], ["0x1001e454", "mov ebp, dword ptr [edi + 0x14]"], ["0x1001e457", "mov edx, dword ptr [esp + 0x18]"], ["0x1001e45b", "cmp edx, ebp"], ["0x1001e45d", "jl 0xd4"], ["0x1001e463", "lea eax, [ebp + ebx]"], ["0x1001e467", "dec eax"], ["0x1001e468", "cmp eax, edx"], ["0x1001e46a", "jle 0xc7"]]}, {"both": [["0x100443ab", "cmp dword ptr [edi + 0x54], 0", "0x1001e470"], ["0x100443af", "je 0x4", "0x1001e474"]]}, {"orig": [["0x100443b1", "xor eax, eax"]], "recomp": [["0x1001e476", "xor ebp, ebp"]]}, {"both": [["0x100443b3", "jmp 0x69", "0x1001e478"], ["0x100443b5", "mov edi, dword ptr [edi + 0x50]", "0x1001e47a"], ["0x100443b8", "mov ebx, dword ptr [edi + 0xc]", "0x1001e47d"]]}, {"orig": [["0x100443bb", "mov ebp, dword ptr [ebx + 0x10]"], ["0x100443be", "test ebp, ebp"]], "recomp": [["0x1001e480", "mov eax, dword ptr [ebx + 0x10]"], ["0x1001e483", "test eax, eax"]]}, {"both": [["0x100443c0", "jne 0x33", "0x1001e485"]]}, {"orig": [["0x100443c2", "cmp ebp, 0x10"], ["0x100443c5", "je 0x7"], ["0x100443c7", "mov ebp, dword ptr [ebx + 8]"], ["0x100443ca", "test ebp, ebp"], ["0x100443cc", "jge 0x4"], ["0x100443ce", "sub eax, edx"], ["0x100443d0", "jmp 0xa"]], "recomp": [["0x1001e487", "cmp eax, 0x10"], ["0x1001e48a", "je 0x13"], ["0x1001e48c", "mov eax, dword ptr [ebx + 8]"], ["0x1001e48f", "test eax, eax"], ["0x1001e491", "jl 0xc"]]}, {"both": [["0x100443d2", "jg 0x2", "0x1001e493"]]}, {"orig": [["0x100443d4", "neg ebp"], ["0x100443d6", "sub edx, eax"], ["0x100443d8", "lea eax, [edx + ebp - 1]"], ["0x100443dc", "mov edx, dword ptr [ebx + 4]"], ["0x100443df", "add edx, 3"], ["0x100443e2", "and edx, 0xfffffffc"], ["0x100443e5", "imul edx, eax"], ["0x100443e8", "add edx, dword ptr [edi + 0x14]"], ["0x100443eb", "mov eax, dword ptr [esp + 0x14]"], ["0x100443ef", "sub edx, ecx"], ["0x100443f1", "add eax, edx"]], "recomp": [["0x1001e495", "neg eax"], ["0x1001e497", "sub ebp, edx"], ["0x1001e499", "lea edx, [ebp + eax - 1]"], ["0x1001e49d", "jmp 0x2"], ["0x1001e49f", "sub edx, ebp"], ["0x1001e4a1", "mov ebx, dword ptr [ebx + 4]"], ["0x1001e4a4", "mov ebp, dword ptr [esp + 0x14]"], ["0x1001e4a8", "add ebx, 3"], ["0x1001e4ab", "and ebx, 0xfffffffc"], ["0x1001e4ae", "imul ebx, edx"], ["0x1001e4b1", "add ebx, dword ptr [edi + 0x14]"], ["0x1001e4b4", "sub ebx, ecx"], ["0x1001e4b6", "add ebp, ebx"]]}, {"both": [["0x100443f3", "jmp 0x29", "0x1001e4b8"]]}, {"orig": [["0x100443f5", "cmp ebp, 0x10"]], "recomp": [["0x1001e4ba", "cmp eax, 0x10"]]}, {"both": [["0x100443f8", "jne 0x5", "0x1001e4bd"]]}, {"orig": [["0x100443fa", "mov eax, dword ptr [edi + 0x14]"]], "recomp": [["0x1001e4bf", "mov ebp, dword ptr [edi + 0x14]"]]}, {"both": [["0x100443fd", "jmp 0x1f", "0x1001e4c2"]]}, {"orig": [["0x100443ff", "mov ecx, dword ptr [ebx + 8]"], ["0x10044402", "test ecx, ecx"], ["0x10044404", "jge 0x4"]], "recomp": [["0x1001e4c4", "mov eax, dword ptr [ebx + 8]"], ["0x1001e4c7", "test eax, eax"], ["0x1001e4c9", "jl 0x7"], ["0x1001e4cb", "jg 0x2"], ["0x1001e4cd", "neg eax"], ["0x1001e4cf", "dec eax"], ["0x1001e4d0", "jmp 0x2"], ["0x1001e4d2", "xor eax, eax"], ["0x1001e4d4", "mov ebp, dword ptr [ebx + 4]"], ["0x1001e4d7", "add ebp, 3"], ["0x1001e4da", "and ebp, 0xfffffffc"], ["0x1001e4dd", "imul ebp, eax"], ["0x1001e4e0", "add ebp, dword ptr [edi + 0x14]"], ["0x1001e4e3", "mov word ptr [esi + 0x56], 0"], ["0x1001e4e9", "mov edx, dword ptr [esi + 0x58]"], ["0x1001e4ec", "test edx, edx"], ["0x1001e4ee", "jne 0xe"], ["0x1001e4f0", "cmp byte ptr [ebp], 0"], ["0x1001e4f4", "je 0x31"], ["0x1001e4f6", "mov word ptr [esi + 0x56], 1"], ["0x1001e4fc", "jmp 0x29"], ["0x1001e4fe", "mov di, 1"], ["0x1001e502", "mov bx, word ptr [edx]"], ["0x1001e505", "cmp bx, di"], ["0x1001e508", "jl 0x1d"]]}, {"both": [["0x10044406", "xor ecx, ecx", "0x1001e50a"]]}, {"orig": [["0x10044408", "jmp 0x5"], ["0x1004440a", "jg 0x2"], ["0x1004440c", "neg ecx"], ["0x1004440e", "dec ecx"], ["0x1004440f", "mov eax, dword ptr [ebx + 4]"], ["0x10044412", "add eax, 3"], ["0x10044415", "and eax, 0xfffffffc"], ["0x10044418", "imul eax, ecx"], ["0x1004441b", "add eax, dword ptr [edi + 0x14]"], ["0x1004441e", "mov word ptr [esi + 0x56], 0"], ["0x10044424", "mov ebx, dword ptr [esi + 0x58]"], ["0x10044427", "test ebx, ebx"], ["0x10044429", "je 0x28"], ["0x1004442b", "mov di, 1"], ["0x1004442f", "mov dx, word ptr [ebx]"], ["0x10044432", "cmp dx, di"], ["0x10044435", "jl 0x27"], ["0x10044437", "movzx ax, byte ptr [eax]"], ["0x1004443b", "movsx ecx, di"], ["0x1004443e", "cmp word ptr [ebx + ecx*2], ax"]], "recomp": [["0x1001e50c", "mov cl, byte ptr [ebp]"], ["0x1001e50f", "movsx eax, di"], ["0x1001e512", "movsx ebp, word ptr [edx + eax*2]"], ["0x1001e516", "cmp ebp, ecx"]]}, {"both": [["0x10044442", "je 0x9", "0x1001e518"], ["0x10044444", "inc di", "0x1001e51a"]]}, {"orig": [["0x10044446", "cmp di, dx"], ["0x10044449", "jle -0x10"], ["0x1004444b", "jmp 0x11"]], "recomp": [["0x1001e51c", "cmp di, bx"], ["0x1001e51f", "jle -0x12"], ["0x1001e521", "jmp 0x4"]]}, {"both": [["0x1004444d", "mov word ptr [esi + 0x56], di", "0x1001e523"]]}, {"orig": [["0x10044451", "jmp 0xb"], ["0x10044453", "cmp byte ptr [eax], 0"], ["0x10044456", "je 0x6"], ["0x10044458", "mov word ptr [esi + 0x56], 1"]], "recomp": []}, {"both": [["0x1004445e", "cmp word ptr [esi + 0x56], 0", "0x1001e527"], ["0x10044463", "je 0x9", "0x1001e52c"], ["0x10044465", "mov al, 1", "0x1001e52e"], ["0x10044467", "pop ebp", "0x1001e530"], ["0x10044468", "pop edi", "0x1001e531"], ["0x10044469", "pop esi", "0x1001e532"], ["0x1004446a", "pop ebx", "0x1001e533"], ["0x1004446b", "ret 0xc", "0x1001e534"], ["0x1004446e", "xor al, al", "0x1001e537"], ["0x10044470", "pop ebp", "0x1001e539"], ["0x10044471", "pop edi", "0x1001e53a"], ["0x10044472", "pop esi", "0x1001e53b"], ["0x10044473", "pop ebx", "0x1001e53c"], ["0x10044474", "ret 0xc", "0x1001e53d"]]}, {"orig": [["0x10044477", "int3 "], ["0x10044478", "int3 "], ["0x10044479", "int3 "], ["0x1004447a", "int3 "], ["0x1004447b", "int3 "], ["0x1004447c", "int3 "], ["0x1004447d", "int3 "], ["0x1004447e", "int3 "], ["0x1004447f", "int3 "]], "recomp": []}]]]}, {"address": "0x10044480", "recomp": "0x1001e540", "name": "MxControlPresenter::FUN_10044480", "matching": 1.0, "diff": []}, {"address": "0x10044540", "recomp": "0x1001e600", "name": "MxControlPresenter::VTable0x6c", "matching": 1.0, "diff": []}, {"address": "0x10044610", "recomp": "0x1001e6d0", "name": "MxControlPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x10044640", "recomp": "0x1001e700", "name": "MxControlPresenter::ParseExtra", "matching": 0.9657534246575342, "diff": [["@@ -0x10044797,26 +0x1001e857,26 @@", [{"both": [["0x10044797", "cmp si, di", "0x1001e857"], ["0x1004479a", "jl 0x32", "0x1001e85a"], ["0x1004479c", "mov eax, dword ptr [g_parseExtraTokens (DATA)]", "0x1001e85c"], ["0x100447a1", "push eax", "0x1001e861"], ["0x100447a2", "push 0", "0x1001e862"], ["0x100447a4", "call _strtok (FUNCTION)", "0x1001e864"], ["0x100447a9", "add esp, 8", "0x1001e869"], ["0x100447ac", "push eax", "0x1001e86c"], ["0x100447ad", "call _atoi (FUNCTION)", "0x1001e86d"], ["0x100447b2", "add esp, 4", "0x1001e872"]]}, {"orig": [["0x100447b5", "mov ecx, dword ptr [ebx + 0x58]"], ["0x100447b8", "movsx edx, di"]], "recomp": [["0x1001e875", "mov edx, dword ptr [ebx + 0x58]"], ["0x1001e878", "movsx ecx, di"]]}, {"both": [["0x100447bb", "inc di", "0x1001e87b"]]}, {"orig": [["0x100447bd", "mov word ptr [ecx + edx*2], ax"], ["0x100447c1", "cmp di, si"], ["0x100447c4", "jle -0x2a"]], "recomp": [["0x1001e87d", "mov word ptr [edx + ecx*2], ax"], ["0x1001e881", "cmp si, di"], ["0x1001e884", "jge -0x2a"]]}, {"both": [["0x100447c6", "jmp 0x6", "0x1001e886"], ["0x100447c8", "mov word ptr [ebx + 0x4c], 0", "0x1001e888"], ["0x100447ce", "lea eax, [esp + 0x10c]", "0x1001e88e"], ["0x100447d5", "mov ecx, dword ptr [g_strVISIBILITY (DATA)]", "0x1001e895"], ["0x100447db", "lea edx, [esp + 0xc]", "0x1001e89b"], ["0x100447df", "push eax", "0x1001e89f"], ["0x100447e0", "push ecx", "0x1001e8a0"], ["0x100447e1", "push edx", "0x1001e8a1"], ["0x100447e2", "call KeyValueStringParse (FUNCTION)", "0x1001e8a2"], ["0x100447e7", "add esp, 0xc", "0x1001e8a7"]]}]]]}, {"address": "0x10044820", "recomp": "0x1001e8e0", "name": "MxControlPresenter::Enable", "matching": 1.0, "diff": []}, {"address": "0x100448a0", "recomp": "0x1001e960", "name": "MxControlPresenter::HasTickleStatePassed", "matching": 0.3181818181818182, "diff": [["@@ -0x100448a0,24 +0x1001e960,20 @@", [{"both": [["0x100448a0", "sub esp, 4", "0x1001e960"], ["0x100448a3", "mov eax, dword ptr [ecx + 0x44]", "0x1001e963"]]}, {"orig": [], "recomp": [["0x1001e966", "mov cx, word ptr [ecx + 0x4e]"]]}, {"both": [["0x100448a6", "mov edx, dword ptr [eax]", "0x1001e96a"]]}, {"orig": [["0x100448a8", "mov ax, word ptr [ecx + 0x4e]"], ["0x100448ac", "mov ecx, edx"], ["0x100448ae", "test ax, ax"], ["0x100448b1", "jle 0x6"], ["0x100448b3", "dec ax"], ["0x100448b5", "mov ecx, dword ptr [ecx]"], ["0x100448b7", "jne -0x6"], ["0x100448b9", "mov ecx, dword ptr [ecx + 8]"], ["0x100448bc", "mov eax, dword ptr [esp + 8]"], ["0x100448c0", "push eax"]], "recomp": [["0x1001e96c", "test cx, cx"], ["0x1001e96f", "mov dword ptr [esp], edx"], ["0x1001e973", "jle 0xe"], ["0x1001e975", "dec cx"], ["0x1001e977", "mov eax, dword ptr [esp]"], ["0x1001e97b", "mov edx, dword ptr [eax]"], ["0x1001e97d", "mov dword ptr [esp], edx"], ["0x1001e981", "jne -0xe"], ["0x1001e983", "mov eax, dword ptr [esp]"], ["0x1001e987", "mov edx, dword ptr [esp + 8]"], ["0x1001e98b", "push edx"], ["0x1001e98c", "mov ecx, dword ptr [eax + 8]"]]}, {"both": [["0x100448c1", "mov eax, dword ptr [ecx]", "0x1001e98f"], ["0x100448c3", "call dword ptr [eax + 0x48]", "0x1001e991"], ["0x100448c6", "add esp, 4", "0x1001e994"], ["0x100448c9", "ret 4", "0x1001e997"]]}, {"orig": [["0x100448cc", "int3 "], ["0x100448cd", "int3 "], ["0x100448ce", "int3 "], ["0x100448cf", "int3 "], ["0x100448d0", "mov eax, dword ptr fs:[0]"], ["0x100448d6", "push ebp"], ["0x100448d7", "mov ebp, esp"]], "recomp": []}]]]}, {"address": "0x100448d0", "recomp": "0x10033cd0", "name": "LegoPathPresenter::LegoPathPresenter", "matching": 1.0, "diff": []}, {"address": "0x100449a0", "recomp": "0x10033da0", "name": "LegoPathPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100449b0", "recomp": "0x10033db0", "name": "LegoPathPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x10044a90", "recomp": "0x10033e90", "name": "LegoPathPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10044ab0", "recomp": "0x10033eb0", "name": "LegoPathPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x10044ac0", "recomp": "0x10033ec0", "name": "LegoPathPresenter::~LegoPathPresenter", "matching": 1.0, "diff": []}, {"address": "0x10044b40", "recomp": "0x10033f40", "name": "LegoPathPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x10044b70", "recomp": "0x10033f70", "name": "LegoPathPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10044c10", "recomp": "0x10034010", "name": "LegoPathPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10044c20", "recomp": "0x10034020", "name": "LegoPathPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x10044d00", "recomp": "0x10034100", "name": "LegoPathPresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x10044d40", "recomp": "0x10034140", "name": "LegoPathPresenter::RepeatingTickle", "matching": 1.0, "diff": []}, {"address": "0x10044d60", "recomp": "0x10034160", "name": "LegoPathPresenter::ParseExtra", "matching": 1.0, "diff": []}, {"address": "0x10044e50", "recomp": "0x10036470", "name": "LegoUnknown100d7c88::~LegoUnknown100d7c88", "matching": 1.0, "diff": []}, {"address": "0x10044eb0", "recomp": "0x100364d0", "name": "LegoUnknown100d7c88::VTable0x00", "matching": 1.0, "diff": []}, {"address": "0x10044f40", "recomp": "0x10033af0", "name": "LegoPathController::LegoPathController", "matching": 0.0, "stub": true}, {"address": "0x10045110", "recomp": "0x10033b50", "name": "LegoPathController::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10045120", "recomp": "0x10033b60", "name": "LegoPathController::IsA", "matching": 1.0, "diff": []}, {"address": "0x10045740", "recomp": "0x10033be0", "name": "LegoPathController::`scalar deleting destructor'", "matching": 0.8, "diff": [["@@ -0x10045740,30 +0x10033be0,30 @@", [{"both": [["0x10045740", "mov eax, dword ptr fs:[0]", "0x10033be0"], ["0x10045746", "push ebp", "0x10033be6"], ["0x10045747", "mov ebp, esp", "0x10033be7"], ["0x10045749", "push -1", "0x10033be9"], ["0x1004574b", "push <OFFSET1>", "0x10033beb"], ["0x10045750", "mov dword ptr [ecx], LegoPathController::`vftable' (VTABLE)", "0x10033bf0"], ["0x10045756", "push eax", "0x10033bf6"], ["0x10045757", "mov dword ptr fs:[0], esp", "0x10033bf7"], ["0x1004575e", "sub esp, 4", "0x10033bfe"]]}, {"orig": [["0x10045761", "mov dword ptr [ebp - 4], 2"]], "recomp": [["0x10033c01", "mov dword ptr [ebp - 4], 0"]]}, {"both": [["0x10045768", "mov dword ptr [ebp - 0x10], ecx", "0x10033c08"], ["0x1004576b", "call LegoPathController::Destroy (FUNCTION)", "0x10033c0b"]]}, {"orig": [["0x10045770", "mov byte ptr [ebp - 4], 1"]], "recomp": [["0x10033c10", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x10045774", "call <OFFSET4>", "0x10033c17"]]}, {"orig": [["0x10045779", "mov byte ptr [ebp - 4], 0"], ["0x1004577d", "call <OFFSET5>"], ["0x10045782", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10045789", "call <OFFSET6>"]], "recomp": []}, {"both": [["0x1004578e", "test byte ptr [ebp + 8], 1", "0x10033c1c"], ["0x10045792", "je 0xc", "0x10033c20"], ["0x10045794", "mov eax, dword ptr [ebp - 0x10]", "0x10033c22"], ["0x10045797", "push eax", "0x10033c25"], ["0x10045798", "call ??3@YAXPAX@Z (FUNCTION)", "0x10033c26"], ["0x1004579d", "add esp, 4", "0x10033c2b"], ["0x100457a0", "mov eax, dword ptr [ebp - 0x10]", "0x10033c2e"], ["0x100457a3", "mov ecx, dword ptr [ebp - 0xc]", "0x10033c31"], ["0x100457a6", "mov dword ptr fs:[0], ecx", "0x10033c34"], ["0x100457ad", "mov esp, ebp", "0x10033c3b"], ["0x100457af", "pop ebp", "0x10033c3d"], ["0x100457b0", "ret 4", "0x10033c3e"]]}, {"orig": [], "recomp": [["0x10033c41", "mov eax, <OFFSET6>"], ["0x10033c46", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10033c4b", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10033c4e", "jmp MxCore::~MxCore (FUNCTION)"]]}]]]}, {"address": "0x10045880", "recomp": "0x10033c60", "name": "LegoPathController::VTable0x14", "matching": 0.0, "stub": true}, {"address": "0x10045a80", "recomp": "0x100369e0", "name": "LegoMemory::~LegoMemory", "matching": 1.0, "diff": []}, {"address": "0x10045ad0", "recomp": "0x10036a30", "name": "LegoStorage::~LegoStorage", "matching": 1.0, "diff": []}, {"address": "0x10045ae0", "recomp": "0x10036a40", "name": "LegoStorage::IsWriteMode", "matching": 1.0, "diff": []}, {"address": "0x10045af0", "recomp": "0x10036a50", "name": "LegoStorage::IsReadMode", "matching": 1.0, "diff": []}, {"address": "0x10045b00", "recomp": "0x10036a60", "name": "LegoStorage::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10045b20", "recomp": "0x10033c70", "name": "LegoPathController::Destroy", "matching": 0.0, "stub": true}, {"address": "0x10045c10", "recomp": "0x10033c80", "name": "LegoPathController::Tickle", "matching": 0.0, "stub": true}, {"address": "0x10046770", "recomp": "0x10033c90", "name": "LegoPathController::FUN_10046770", "matching": 0.0, "stub": true}, {"address": "0x10046b30", "recomp": "0x10033ca0", "name": "LegoPathController::FUN_10046b30", "matching": 0.0, "stub": true}, {"address": "0x10046bb0", "recomp": "0x10033cb0", "name": "LegoPathController::FUN_10046bb0", "matching": 0.0, "stub": true}, {"address": "0x10046be0", "recomp": "0x10033cc0", "name": "LegoPathController::Enable", "matching": 0.0, "stub": true}, {"address": "0x1004a7c0", "recomp": "0x100090c0", "name": "Lego3DWavePresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x1004a7f0", "recomp": "0x100090f0", "name": "Lego3DWavePresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1004a810", "recomp": "0x10009110", "name": "Lego3DWavePresenter::StartingTickle", "matching": 0.0, "stub": true}, {"address": "0x1004a8b0", "recomp": "0x10009130", "name": "Lego3DWavePresenter::StreamingTickle", "matching": 0.0, "stub": true}, {"address": "0x1004a8d0", "recomp": "0x1000eb60", "name": "LegoAnimMMPresenter::LegoAnimMMPresenter", "matching": 1.0, "diff": []}, {"address": "0x1004a950", "recomp": "0x1000ec00", "name": "LegoAnimMMPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1004a960", "recomp": "0x1000ec10", "name": "LegoAnimMMPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1004aa40", "recomp": "0x1000ecf0", "name": "LegoAnimMMPresenter::`scalar deleting destructor'", "matching": 0.3050847457627119, "diff": [["@@ -0x1004aa40,32 +0x1000ecf0,27 @@", [{"orig": [["0x1004aa40", "push esi"], ["0x1004aa41", "mov esi, ecx"], ["0x1004aa43", "call <OFFSET1>"], ["0x1004aa48", "test byte ptr [esp + 8], 1"], ["0x1004aa4d", "je 0x9"], ["0x1004aa4f", "push esi"], ["0x1004aa50", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1004aa55", "add esp, 4"], ["0x1004aa58", "mov eax, esi"], ["0x1004aa5a", "pop esi"], ["0x1004aa5b", "ret 4"], ["0x1004aa5e", "int3 "], ["0x1004aa5f", "int3 "]], "recomp": []}, {"both": [["0x1004aa60", "mov eax, dword ptr fs:[0]", "0x1000ecf0"], ["0x1004aa66", "push ebp", "0x1000ecf6"], ["0x1004aa67", "mov ebp, esp", "0x1000ecf7"], ["0x1004aa69", "push -1", "0x1000ecf9"]]}, {"orig": [["0x1004aa6b", "push <OFFSET3>"], ["0x1004aa70", "mov dword ptr [ecx], LegoAnimMMPresenter::`vftable' (VTABLE)"]], "recomp": [["0x1000ecfb", "push <OFFSET1>"]]}, {"both": [["0x1004aa76", "push eax", "0x1000ed00"], ["0x1004aa77", "mov dword ptr fs:[0], esp", "0x1000ed01"], ["0x1004aa7e", "sub esp, 4", "0x1000ed08"]]}, {"orig": [["0x1004aa81", "mov dword ptr [ebp - 4], 0"]], "recomp": [["0x1000ed0b", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x1004aa88", "mov dword ptr [ebp - 0x10], ecx", "0x1000ed12"]]}, {"orig": [["0x1004aa8b", "call VideoManager (FUNCTION)"], ["0x1004aa90", "test eax, eax"], ["0x1004aa92", "je 0x10"], ["0x1004aa94", "call VideoManager (FUNCTION)"]], "recomp": [["0x1000ed15", "call <OFFSET2>"], ["0x1000ed1a", "test byte ptr [ebp + 8], 1"], ["0x1000ed1e", "je 0xc"], ["0x1000ed20", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000ed23", "push eax"], ["0x1000ed24", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1000ed29", "add esp, 4"], ["0x1000ed2c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000ed2f", "mov ecx, dword ptr [ebp - 0xc]"], ["0x1000ed32", "mov dword ptr fs:[0], ecx"], ["0x1000ed39", "mov esp, ebp"], ["0x1000ed3b", "pop ebp"], ["0x1000ed3c", "ret 4"], ["0x1000ed3f", "mov eax, <OFFSET4>"], ["0x1000ed44", "jmp ___CxxFrameHandler (FUNCTION)"]]}, {"both": [["0x1004aa99", "mov ecx, dword ptr [ebp - 0x10]", "0x1000ed49"]]}, {"orig": [["0x1004aa9c", "mov edx, dword ptr [eax]"], ["0x1004aa9e", "push ecx"], ["0x1004aa9f", "mov ecx, eax"]], "recomp": [["0x1000ed4c", "jmp MxCompositePresenter::~MxCompositePresenter (FUNCTION)"]]}]]]}, {"address": "0x1004aaf0", "recomp": "0x1000ed60", "name": "LegoAnimMMPresenter::StartAction", "matching": 1.0, "diff": []}, {"address": "0x1004ad10", "recomp": "0x1000efb0", "name": "MxDSActionListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004ad80", "recomp": "0x1000f020", "name": "MxListCursor<MxDSAction *>::~MxListCursor<MxDSAction *>", "matching": 1.0, "diff": []}, {"address": "0x1004add0", "recomp": "0x1000f070", "name": "MxListCursor<MxDSAction *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004ae40", "recomp": "0x1000f0e0", "name": "MxDSActionListCursor::~MxDSActionListCursor", "matching": 1.0, "diff": []}, {"address": "0x1004ae90", "recomp": "0x1000ef80", "name": "list<MxPresenter *,allocator<MxPresenter *> >::_Buynode", "matching": 1.0, "diff": []}, {"address": "0x1004aec0", "recomp": "0x1000f130", "name": "LegoAnimMMPresenter::EndAction", "matching": 0.0, "stub": true}, {"address": "0x1004b140", "recomp": "0x1000f140", "name": "LegoAnimMMPresenter::ReadyTickle", "matching": 0.0, "stub": true}, {"address": "0x1004b1c0", "recomp": "0x1000f150", "name": "LegoAnimMMPresenter::StartingTickle", "matching": 0.0, "stub": true}, {"address": "0x1004b220", "recomp": "0x1000f160", "name": "LegoAnimMMPresenter::StreamingTickle", "matching": 0.0, "stub": true}, {"address": "0x1004b250", "recomp": "0x1000f170", "name": "LegoAnimMMPresenter::RepeatingTickle", "matching": 0.0, "stub": true}, {"address": "0x1004b2c0", "recomp": "0x1000f180", "name": "LegoAnimMMPresenter::DoneTickle", "matching": 1.0, "diff": []}, {"address": "0x1004b2d0", "recomp": "0x1000f190", "name": "LegoAnimMMPresenter::Notify", "matching": 0.0, "stub": true}, {"address": "0x1004b360", "recomp": "0x1000f1a0", "name": "LegoAnimMMPresenter::VTable0x60", "matching": 1.0, "diff": []}, {"address": "0x1004b390", "recomp": "0x1000f1d0", "name": "LegoAnimMMPresenter::ParseExtra", "matching": 0.0, "stub": true}, {"address": "0x1004b8b0", "recomp": "0x1000f1e0", "name": "LegoAnimMMPresenter::FUN_1004b8b0", "matching": 0.0, "stub": true}, {"address": "0x1004b8d0", "recomp": "0x1001e9a0", "name": "MxTransitionManager::MxTransitionManager", "matching": 1.0, "diff": []}, {"address": "0x1004b950", "recomp": "0x1001ea20", "name": "MxTransitionManager::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1004b960", "recomp": "0x1001ea30", "name": "MxTransitionManager::IsA", "matching": 1.0, "diff": []}, {"address": "0x1004b9e0", "recomp": "0x1001eab0", "name": "MxTransitionManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004ba00", "recomp": "0x1001ead0", "name": "MxTransitionManager::~MxTransitionManager", "matching": 1.0, "diff": []}, {"address": "0x1004baa0", "recomp": "0x1001eb70", "name": "MxTransitionManager::GetDDrawSurfaceFromVideoManager", "matching": 1.0, "diff": []}, {"address": "0x1004bac0", "recomp": "0x1001eb90", "name": "MxTransitionManager::Tickle", "matching": 0.8533333333333334, "diff": [["@@ -0x1004badf,21 +0x1001ebaf,21 @@", [{"both": [["0x1004badf", "pop edi", "0x1001ebaf"], ["0x1004bae0", "pop esi", "0x1001ebb0"], ["0x1004bae1", "pop ebx", "0x1001ebb1"], ["0x1004bae2", "ret ", "0x1001ebb2"], ["0x1004bae3", "call esi", "0x1001ebb3"], ["0x1004bae5", "mov dword ptr [ebx + 0x8f8], eax", "0x1001ebb5"], ["0x1004baeb", "mov eax, dword ptr [ebx + 0x2c]", "0x1001ebbb"], ["0x1004baee", "dec eax", "0x1001ebbe"], ["0x1004baef", "cmp eax, 5", "0x1001ebbf"], ["0x1004baf2", "ja 0x4f", "0x1001ebc2"]]}, {"orig": [["0x1004baf4", "jmp dword ptr [eax*4 + 0x1004bb4c]"]], "recomp": [["0x1001ebc4", "jmp dword ptr [eax*4 + 0x1001ec1c]"]]}, {"both": [["0x1004bafb", "mov ecx, ebx", "0x1001ebcb"], ["0x1004bafd", "call MxTransitionManager::NoTransition (FUNCTION)", "0x1001ebcd"], ["0x1004bb02", "xor eax, eax", "0x1001ebd2"], ["0x1004bb04", "pop edi", "0x1001ebd4"], ["0x1004bb05", "pop esi", "0x1001ebd5"], ["0x1004bb06", "pop ebx", "0x1001ebd6"], ["0x1004bb07", "ret ", "0x1001ebd7"], ["0x1004bb08", "mov ecx, ebx", "0x1001ebd8"], ["0x1004bb0a", "call MxTransitionManager::DissolveTransition (FUNCTION)", "0x1001ebda"], ["0x1004bb0f", "xor eax, eax", "0x1001ebdf"]]}]], ["@@ -0x1004bb3a,18 +0x1001ec0a,22 @@", [{"both": [["0x1004bb3a", "pop ebx", "0x1001ec0a"], ["0x1004bb3b", "ret ", "0x1001ec0b"], ["0x1004bb3c", "mov ecx, ebx", "0x1001ec0c"], ["0x1004bb3e", "call MxTransitionManager::BrokenTransition (FUNCTION)", "0x1001ec0e"], ["0x1004bb43", "xor eax, eax", "0x1001ec13"], ["0x1004bb45", "pop edi", "0x1001ec15"], ["0x1004bb46", "pop esi", "0x1001ec16"], ["0x1004bb47", "pop ebx", "0x1001ec17"], ["0x1004bb48", "ret ", "0x1001ec18"], ["0x1004bb49", "lea ecx, [ecx]", "0x1001ec19"]]}, {"orig": [["0x1004bb4c", "sti "], ["0x1004bb4d", "mov edx, 0xbb081004"], ["0x1004bb52", "add al, 0x10"], ["0x1004bb54", "adc eax, 0x221004bb"], ["0x1004bb59", "mov ebx, 0xbb2f1004"], ["0x1004bb5e", "add al, 0x10"], ["0x1004bb60", "cmp al, 0xbb"], ["0x1004bb62", "add al, 0x10"]], "recomp": [["0x1001ec1c", "retf "], ["0x1001ec1d", "jmp 0x1"], ["0x1001ec1f", "adc al, bl"], ["0x1001ec21", "jmp 0x1"], ["0x1001ec23", "adc ch, ah"], ["0x1001ec25", "jmp 0x1"], ["0x1001ec27", "adc dl, dh"], ["0x1001ec29", "jmp 0x1"], ["0x1001ec2b", "adc bh, bh"], ["0x1001ec2d", "jmp 0x1"], ["0x1001ec2f", "adc byte ptr [esp + ebp*8], cl"], ["0x1001ec32", "add dword ptr [eax], edx"]]}]]]}, {"address": "0x1004bb70", "recomp": "0x1001ec40", "name": "MxTransitionManager::StartTransition", "matching": 1.0, "diff": []}, {"address": "0x1004bc30", "recomp": "0x1001ed00", "name": "MxTransitionManager::EndTransition", "matching": 1.0, "diff": []}, {"address": "0x1004bcf0", "recomp": "0x1001edc0", "name": "MxTransitionManager::NoTransition", "matching": 1.0, "diff": []}, {"address": "0x1004bd10", "recomp": "0x1001ede0", "name": "MxTransitionManager::DissolveTransition", "matching": 0.8786885245901639, "diff": [["@@ -0x1004bd33,32 +0x1001ee03,32 @@", [{"both": [["0x1004bd33", "pop ebx", "0x1001ee03"], ["0x1004bd34", "add esp, 0x6c", "0x1001ee04"], ["0x1004bd37", "ret ", "0x1001ee07"], ["0x1004bd38", "test ax, ax", "0x1001ee08"], ["0x1004bd3b", "jne 0x5e", "0x1001ee0b"], ["0x1004bd3d", "xor eax, eax", "0x1001ee0d"], ["0x1004bd3f", "mov word ptr [esi + eax*2 + 0x36], ax", "0x1001ee0f"], ["0x1004bd44", "inc eax", "0x1001ee14"], ["0x1004bd45", "cmp eax, 0x280", "0x1001ee15"], ["0x1004bd4a", "jl -0xd", "0x1001ee1a"]]}, {"orig": [["0x1004bd4c", "lea ebx, [esi + 0x36]"], ["0x1004bd4f", "mov edi, 0x280"], ["0x1004bd54", "add ebx, 2"]], "recomp": [["0x1001ee1c", "lea edi, [esi + 0x36]"], ["0x1001ee1f", "mov ebx, 0x280"], ["0x1001ee24", "add edi, 2"]]}, {"both": [["0x1004bd57", "call _rand (FUNCTION)", "0x1001ee27"], ["0x1004bd5c", "cdq ", "0x1001ee2c"]]}, {"orig": [["0x1004bd5d", "mov bp, word ptr [ebx - 2]"]], "recomp": [["0x1001ee2d", "mov bp, word ptr [edi - 2]"]]}, {"both": [["0x1004bd61", "mov ecx, 0x280", "0x1001ee31"], ["0x1004bd66", "idiv ecx", "0x1001ee36"]]}, {"orig": [["0x1004bd68", "dec edi"]], "recomp": [["0x1001ee38", "dec ebx"]]}, {"both": [["0x1004bd69", "lea eax, [esi + edx*2 + 0x36]", "0x1001ee39"], ["0x1004bd6d", "mov cx, word ptr [eax]", "0x1001ee3d"]]}, {"orig": [["0x1004bd70", "mov word ptr [ebx - 2], cx"]], "recomp": [["0x1001ee40", "mov word ptr [edi - 2], cx"]]}, {"both": [["0x1004bd74", "mov word ptr [eax], bp", "0x1001ee44"], ["0x1004bd77", "jne -0x25", "0x1001ee47"], ["0x1004bd79", "lea ebx, [esi + 0x536]", "0x1001ee49"], ["0x1004bd7f", "mov edi, 0x1e0", "0x1001ee4f"], ["0x1004bd84", "add ebx, 2", "0x1001ee54"], ["0x1004bd87", "call _rand (FUNCTION)", "0x1001ee57"], ["0x1004bd8c", "cdq ", "0x1001ee5c"], ["0x1004bd8d", "mov ecx, 0x280", "0x1001ee5d"], ["0x1004bd92", "idiv ecx", "0x1001ee62"], ["0x1004bd94", "mov word ptr [ebx - 2], dx", "0x1001ee64"]]}]], ["@@ -0x1004bdd4,62 +0x1001eea4,62 @@", [{"both": [["0x1004bdd4", "mov eax, dword ptr [esi + 0x30]", "0x1001eea4"], ["0x1004bdd7", "push 0", "0x1001eea7"], ["0x1004bdd9", "lea ecx, [esp + 0x14]", "0x1001eea9"], ["0x1004bddd", "push 1", "0x1001eead"], ["0x1004bddf", "push ecx", "0x1001eeaf"], ["0x1004bde0", "mov ebx, dword ptr [eax]", "0x1001eeb0"], ["0x1004bde2", "push 0", "0x1001eeb2"], ["0x1004bde4", "push eax", "0x1001eeb4"], ["0x1004bde5", "call dword ptr [ebx + 0x64]", "0x1001eeb5"], ["0x1004bde8", "test eax, eax", "0x1001eeb8"]]}, {"orig": [["0x1004bdea", "jne 0xce"]], "recomp": [["0x1001eeba", "jne 0xcd"]]}, {"both": [["0x1004bdf0", "lea eax, [esp + 0x10]", "0x1001eec0"], ["0x1004bdf4", "mov ecx, esi", "0x1001eec4"], ["0x1004bdf6", "push eax", "0x1001eec6"], ["0x1004bdf7", "xor edi, edi", "0x1001eec7"], ["0x1004bdf9", "call MxTransitionManager::SubmitCopyRect (FUNCTION)", "0x1001eec9"], ["0x1004bdfe", "xor ecx, ecx", "0x1001eece"], ["0x1004be00", "xor eax, eax", "0x1001eed0"], ["0x1004be02", "mov cx, word ptr [esi + edi*2 + 0x36]", "0x1001eed2"], ["0x1004be07", "mov ax, word ptr [esi + 0x34]", "0x1001eed7"], ["0x1004be0b", "shl eax, 4", "0x1001eedb"], ["0x1004be0e", "cmp ecx, eax", "0x1001eede"]]}, {"orig": [["0x1004be10", "jl 0x57"]], "recomp": [["0x1001eee0", "jl 0x56"]]}, {"both": [["0x1004be12", "add eax, 0xf", "0x1001eee2"], ["0x1004be15", "cmp eax, ecx", "0x1001eee5"]]}, {"orig": [["0x1004be17", "jl 0x50"]], "recomp": [["0x1001eee7", "jl 0x4f"]]}, {"both": [["0x1004be19", "xor ecx, ecx", "0x1001eee9"], ["0x1004be1b", "mov ebx, 8", "0x1001eeeb"], ["0x1004be20", "xor eax, eax", "0x1001eef0"], ["0x1004be22", "mov ebp, 0x280", "0x1001eef2"], ["0x1004be27", "mov ax, word ptr [esi + ecx*2 + 0x536]", "0x1001eef7"], ["0x1004be2f", "add eax, edi", "0x1001eeff"], ["0x1004be31", "cdq ", "0x1001ef01"], ["0x1004be32", "idiv ebp", "0x1001ef02"]]}, {"orig": [], "recomp": [["0x1001ef04", "mov ebp, dword ptr [esp + 0x20]"]]}, {"both": [["0x1004be34", "cmp dword ptr [esp + 0x64], ebx", "0x1001ef08"]]}, {"orig": [["0x1004be38", "jne 0x11"], ["0x1004be3a", "mov eax, dword ptr [esp + 0x20]"], ["0x1004be3e", "imul eax, ecx"], ["0x1004be41", "add eax, dword ptr [esp + 0x34]"], ["0x1004be45", "mov byte ptr [eax + edx], 0"], ["0x1004be49", "jmp 0x15"], ["0x1004be4b", "mov ebp, dword ptr [esp + 0x20]"]], "recomp": [["0x1001ef0c", "jne 0x10"], ["0x1001ef0e", "imul ebp, ecx"], ["0x1001ef11", "add ebp, edx"]]}, {"both": [["0x1004be4f", "mov eax, dword ptr [esp + 0x34]", "0x1001ef13"]]}, {"orig": [], "recomp": [["0x1001ef17", "mov byte ptr [ebp + eax], 0"], ["0x1001ef1c", "jmp 0x11"]]}, {"both": [["0x1004be53", "imul ebp, ecx", "0x1001ef1e"]]}, {"orig": [], "recomp": [["0x1001ef21", "mov eax, dword ptr [esp + 0x34]"]]}, {"both": [["0x1004be56", "lea edx, [ebp + edx*2]", "0x1001ef25"], ["0x1004be5a", "mov word ptr [edx + eax], 0", "0x1001ef29"], ["0x1004be60", "inc ecx", "0x1001ef2f"], ["0x1004be61", "cmp ecx, 0x1e0", "0x1001ef30"]]}, {"orig": [["0x1004be67", "jl -0x49"]], "recomp": [["0x1001ef36", "jl -0x48"]]}, {"both": [["0x1004be69", "inc edi", "0x1001ef38"], ["0x1004be6a", "cmp edi, 0x280", "0x1001ef39"]]}, {"orig": [["0x1004be70", "jl -0x74"]], "recomp": [["0x1001ef3f", "jl -0x73"]]}, {"both": [["0x1004be72", "lea eax, [esp + 0x10]", "0x1001ef41"], ["0x1004be76", "mov ecx, esi", "0x1001ef45"], ["0x1004be78", "push eax", "0x1001ef47"], ["0x1004be79", "call MxTransitionManager::SetupCopyRect (FUNCTION)", "0x1001ef48"], ["0x1004be7e", "mov eax, dword ptr [esi + 0x30]", "0x1001ef4d"], ["0x1004be81", "mov ecx, dword ptr [esp + 0x34]", "0x1001ef50"], ["0x1004be85", "mov ebx, dword ptr [eax]", "0x1001ef54"], ["0x1004be87", "push ecx", "0x1001ef56"], ["0x1004be88", "push eax", "0x1001ef57"], ["0x1004be89", "call dword ptr [ebx + 0x80]", "0x1001ef58"]]}]], ["@@ -0x1004beb2,10 +0x1001ef81,11 @@", [{"both": [["0x1004beb2", "push 0", "0x1001ef81"], ["0x1004beb4", "push eax", "0x1001ef83"], ["0x1004beb5", "mov ebx, dword ptr [eax]", "0x1001ef84"], ["0x1004beb7", "call dword ptr [ebx + 0x1c]", "0x1001ef86"], ["0x1004beba", "inc word ptr [esi + 0x34]", "0x1001ef89"], ["0x1004bebe", "pop ebp", "0x1001ef8d"], ["0x1004bebf", "pop edi", "0x1001ef8e"], ["0x1004bec0", "pop esi", "0x1001ef8f"], ["0x1004bec1", "pop ebx", "0x1001ef90"], ["0x1004bec2", "add esp, 0x6c", "0x1001ef91"]]}, {"orig": [], "recomp": [["0x1001ef94", "ret "]]}]]]}, {"address": "0x1004bed0", "recomp": "0x1001efa0", "name": "MxTransitionManager::MosaicTransition", "matching": 0.9726027397260274, "diff": [["@@ -0x1004c020,31 +0x1001f0f0,31 @@", [{"both": [["0x1004c020", "mov dword ptr [esp + 0x18], edx", "0x1001f0f0"], ["0x1004c024", "xor edx, edx", "0x1001f0f4"], ["0x1004c026", "mov eax, dword ptr [esp + 0x18]", "0x1001f0f6"], ["0x1004c02a", "mov dx, word ptr [eax]", "0x1001f0fa"], ["0x1004c02d", "mov eax, dword ptr [esp + 0x14]", "0x1001f0fd"], ["0x1004c031", "add eax, edx", "0x1001f101"], ["0x1004c033", "cdq ", "0x1001f103"], ["0x1004c034", "xor eax, edx", "0x1001f104"], ["0x1004c036", "sub eax, edx", "0x1001f106"], ["0x1004c038", "and eax, 0x3f", "0x1001f108"]]}, {"orig": [["0x1004c03b", "mov edi, dword ptr [esp + 0x30]"], ["0x1004c03f", "xor eax, edx"], ["0x1004c041", "sub eax, edx"], ["0x1004c043", "imul edi, dword ptr [esp + 0x1c]"]], "recomp": [["0x1001f10b", "mov edi, dword ptr [esp + 0x1c]"], ["0x1001f10f", "xor eax, edx"], ["0x1001f111", "sub eax, edx"], ["0x1001f113", "imul edi, dword ptr [esp + 0x30]"]]}, {"both": [["0x1004c048", "lea ebx, [eax + eax*4]", "0x1001f118"], ["0x1004c04b", "mov eax, dword ptr [esp + 0x74]", "0x1001f11b"], ["0x1004c04f", "shr eax, 3", "0x1001f11f"], ["0x1004c052", "lea esi, [ebx*2]", "0x1001f122"], ["0x1004c059", "lea ebx, [edi + edi*4]", "0x1001f129"]]}, {"orig": [["0x1004c05c", "mov edx, esi"], ["0x1004c05e", "imul edx, eax"]], "recomp": [["0x1001f12c", "mov edx, eax"], ["0x1001f12e", "imul edx, esi"]]}, {"both": [["0x1004c061", "lea edi, [edx + ebx*2]", "0x1001f131"], ["0x1004c064", "add edi, dword ptr [esp + 0x44]", "0x1001f134"], ["0x1004c068", "cmp eax, 1", "0x1001f138"], ["0x1004c06b", "jne 0x6", "0x1001f13b"], ["0x1004c06d", "xor edx, edx", "0x1001f13d"], ["0x1004c06f", "mov dl, byte ptr [edi]", "0x1001f13f"], ["0x1004c071", "jmp 0x5", "0x1001f141"], ["0x1004c073", "xor edx, edx", "0x1001f143"], ["0x1004c075", "mov dx, word ptr [edi]", "0x1001f145"], ["0x1004c078", "lea edi, [ecx - 0xa]", "0x1001f148"]]}]]]}, {"address": "0x1004c170", "recomp": "0x1001f240", "name": "MxTransitionManager::WipeDownTransition", "matching": 1.0, "diff": []}, {"address": "0x1004c270", "recomp": "0x1001f340", "name": "MxTransitionManager::WindowsTransition", "matching": 1.0, "diff": []}, {"address": "0x1004c3e0", "recomp": "0x1001f4b0", "name": "MxTransitionManager::BrokenTransition", "matching": 1.0, "diff": []}, {"address": "0x1004c470", "recomp": "0x1001f540", "name": "MxTransitionManager::SetWaitIndicator", "matching": 1.0, "diff": []}, {"address": "0x1004c4d0", "recomp": "0x1001f5a0", "name": "MxTransitionManager::SubmitCopyRect", "matching": 0.6086956521739131, "diff": [["@@ -0x1004c4d0,75 +0x1001f5a0,63 @@", [{"both": [["0x1004c4d0", "sub esp, 4", "0x1001f5a0"], ["0x1004c4d3", "push ebx", "0x1001f5a3"], ["0x1004c4d4", "push esi", "0x1001f5a4"], ["0x1004c4d5", "push edi", "0x1001f5a5"], ["0x1004c4d6", "mov ebx, ecx", "0x1001f5a6"], ["0x1004c4d8", "push ebp", "0x1001f5a8"], ["0x1004c4d9", "test byte ptr [ebx + 0x20], 1", "0x1001f5a9"]]}, {"orig": [["0x1004c4dd", "je 0x84"]], "recomp": [["0x1001f5ad", "je 0x95"]]}, {"both": [["0x1004c4e3", "cmp dword ptr [ebx + 8], 0", "0x1001f5b3"]]}, {"orig": [["0x1004c4e7", "je 0x7e"]], "recomp": [["0x1001f5b7", "je 0x8b"]]}, {"both": [["0x1004c4e9", "mov edx, dword ptr [ebx + 0x1c]", "0x1001f5bd"], ["0x1004c4ec", "test edx, edx", "0x1001f5c0"]]}, {"orig": [["0x1004c4ee", "je 0x77"], ["0x1004c4f0", "mov esi, dword ptr [esp + 0x18]"], ["0x1004c4f4", "mov eax, dword ptr [ebx + 0xc]"]], "recomp": [["0x1001f5c2", "je 0x80"], ["0x1001f5c8", "mov ecx, dword ptr [esp + 0x18]"]]}, {"both": [["0x1004c4f7", "mov ebp, dword ptr [ebx + 0x14]", "0x1001f5cc"]]}, {"orig": [["0x1004c4fa", "mov ecx, dword ptr [esi + 0x54]"], ["0x1004c4fd", "shr ecx, 3"], ["0x1004c500", "sub ebp, eax"]], "recomp": [["0x1001f5cf", "mov esi, dword ptr [ebx + 0x10]"], ["0x1001f5d2", "mov eax, dword ptr [ecx + 0x54]"], ["0x1001f5d5", "shr eax, 3"], ["0x1001f5d8", "mov ecx, dword ptr [ebx + 0xc]"], ["0x1001f5db", "sub ebp, ecx"]]}, {"both": [["0x1004c502", "inc ebp", "0x1001f5dd"]]}, {"orig": [["0x1004c503", "mov edi, dword ptr [esi + 0x10]"]], "recomp": [["0x1001f5de", "imul ebp, eax"], ["0x1001f5e1", "imul eax, ecx"], ["0x1001f5e4", "mov ecx, dword ptr [esp + 0x18]"]]}, {"both": [["0x1004c506", "mov dword ptr [esp + 0x10], 0", "0x1001f5e8"]]}, {"orig": [["0x1004c50e", "imul ebp, ecx"], ["0x1004c511", "imul edi, dword ptr [ebx + 0x10]"], ["0x1004c515", "imul eax, ecx"], ["0x1004c518", "add edi, dword ptr [esi + 0x24]"]], "recomp": [["0x1001f5f0", "mov ecx, dword ptr [ecx + 0x10]"], ["0x1001f5f3", "imul ecx, esi"], ["0x1001f5f6", "add eax, ecx"], ["0x1001f5f8", "mov ecx, dword ptr [esp + 0x18]"], ["0x1001f5fc", "add eax, dword ptr [ecx + 0x24]"]]}, {"both": [["0x1004c51b", "mov ecx, dword ptr [ebx + 0x18]", "0x1001f5ff"]]}, {"orig": [["0x1004c51e", "add eax, edi"], ["0x1004c520", "sub ecx, dword ptr [ebx + 0x10]"]], "recomp": [["0x1001f602", "sub ecx, esi"]]}, {"both": [["0x1004c523", "inc ecx", "0x1001f604"], ["0x1004c524", "test ecx, ecx", "0x1001f605"], ["0x1004c526", "jle 0x2c", "0x1001f607"], ["0x1004c528", "mov edi, eax", "0x1001f609"], ["0x1004c52a", "mov esi, edx", "0x1001f60b"], ["0x1004c52c", "mov ecx, ebp", "0x1001f60d"], ["0x1004c52e", "add edx, ebp", "0x1001f60f"], ["0x1004c530", "shr ecx, 2", "0x1001f611"], ["0x1004c533", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1001f614"], ["0x1004c535", "mov ecx, ebp", "0x1001f616"], ["0x1004c537", "and ecx, 3", "0x1001f618"], ["0x1004c53a", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1001f61b"]]}, {"orig": [["0x1004c53c", "mov esi, dword ptr [esp + 0x18]"]], "recomp": [["0x1001f61d", "mov ecx, dword ptr [esp + 0x18]"], ["0x1001f621", "inc dword ptr [esp + 0x10]"], ["0x1001f625", "add eax, dword ptr [ecx + 0x10]"]]}, {"both": [["0x1004c540", "mov ecx, dword ptr [ebx + 0x18]", "0x1001f628"], ["0x1004c543", "sub ecx, dword ptr [ebx + 0x10]", "0x1001f62b"]]}, {"orig": [["0x1004c546", "inc dword ptr [esp + 0x10]"], ["0x1004c54a", "add eax, dword ptr [esi + 0x10]"]], "recomp": []}, {"both": [["0x1004c54d", "inc ecx", "0x1001f62e"], ["0x1004c54e", "cmp ecx, dword ptr [esp + 0x10]", "0x1001f62f"], ["0x1004c552", "jg -0x2c", "0x1001f633"], ["0x1004c554", "mov eax, dword ptr [ebx + 0x1c]", "0x1001f635"], ["0x1004c557", "push eax", "0x1001f638"], ["0x1004c558", "call ??3@YAXPAX@Z (FUNCTION)", "0x1001f639"], ["0x1004c55d", "mov dword ptr [ebx + 0x1c], 0", "0x1001f63e"], ["0x1004c564", "add esp, 4", "0x1001f645"], ["0x1004c567", "pop ebp", "0x1001f648"], ["0x1004c568", "pop edi", "0x1001f649"], ["0x1004c569", "pop esi", "0x1001f64a"], ["0x1004c56a", "pop ebx", "0x1001f64b"], ["0x1004c56b", "add esp, 4", "0x1001f64c"], ["0x1004c56e", "ret 4", "0x1001f64f"]]}, {"orig": [["0x1004c571", "int3 "], ["0x1004c572", "int3 "], ["0x1004c573", "int3 "], ["0x1004c574", "int3 "], ["0x1004c575", "int3 "], ["0x1004c576", "int3 "], ["0x1004c577", "int3 "], ["0x1004c578", "int3 "], ["0x1004c579", "int3 "], ["0x1004c57a", "int3 "], ["0x1004c57b", "int3 "], ["0x1004c57c", "int3 "], ["0x1004c57d", "int3 "], ["0x1004c57e", "int3 "], ["0x1004c57f", "int3 "]], "recomp": []}]]]}, {"address": "0x1004c580", "recomp": "0x1001f660", "name": "MxTransitionManager::SetupCopyRect", "matching": 0.4236111111111111, "diff": [["@@ -0x1004c580,143 +0x1001f660,145 @@", [{"orig": [["0x1004c580", "sub esp, 0x10"]], "recomp": [["0x1001f660", "sub esp, 8"]]}, {"both": [["0x1004c583", "push ebx", "0x1001f663"], ["0x1004c584", "push esi", "0x1001f664"], ["0x1004c585", "push edi", "0x1001f665"], ["0x1004c586", "mov ebx, ecx", "0x1001f666"], ["0x1004c588", "push ebp", "0x1001f668"], ["0x1004c589", "test byte ptr [ebx + 0x20], 1", "0x1001f669"]]}, {"orig": [["0x1004c58d", "je 0x17f"]], "recomp": [["0x1001f66d", "je 0x175"]]}, {"both": [["0x1004c593", "mov ecx, dword ptr [ebx + 8]", "0x1001f673"], ["0x1004c596", "test ecx, ecx", "0x1001f676"]]}, {"orig": [["0x1004c598", "je 0x174"]], "recomp": [["0x1001f678", "je 0x16a"]]}, {"both": [["0x1004c59e", "mov eax, dword ptr [ecx]", "0x1001f67e"], ["0x1004c5a0", "call dword ptr [eax + 8]", "0x1001f680"], ["0x1004c5a3", "mov ecx, dword ptr [ebx + 8]", "0x1001f683"], ["0x1004c5a6", "cmp dword ptr [ecx + 8], 3", "0x1001f686"]]}, {"orig": [["0x1004c5aa", "jl 0xd3"], ["0x1004c5b0", "mov esi, dword ptr [esp + 0x24]"], ["0x1004c5b4", "mov ebp, dword ptr [ebx + 0x14]"], ["0x1004c5b7", "sub ebp, dword ptr [ebx + 0xc]"], ["0x1004c5ba", "mov edi, dword ptr [ecx + 0x10]"], ["0x1004c5bd", "mov eax, dword ptr [esi + 0x54]"], ["0x1004c5c0", "inc ebp"], ["0x1004c5c1", "shr eax, 3"], ["0x1004c5c4", "mov edx, dword ptr [ecx + 0x14]"]], "recomp": [["0x1001f68a", "jl 0xc2"], ["0x1001f690", "mov esi, dword ptr [esp + 0x1c]"], ["0x1001f694", "mov eax, dword ptr [ebx + 0x14]"], ["0x1001f697", "sub eax, dword ptr [ebx + 0xc]"], ["0x1001f69a", "mov edx, dword ptr [ecx + 0x10]"], ["0x1001f69d", "mov edi, dword ptr [esi + 0x54]"], ["0x1001f6a0", "inc eax"], ["0x1001f6a1", "shr edi, 3"], ["0x1001f6a4", "mov dword ptr [ebx + 0xc], edx"], ["0x1001f6a7", "imul eax, edi"], ["0x1001f6aa", "mov ebp, dword ptr [ecx + 0x14]"]]}, {"both": [["0x1004c5c7", "mov dword ptr [esp + 0x14], eax", "0x1001f6ad"]]}, {"orig": [["0x1004c5cb", "mov dword ptr [esp + 0x1c], edx"], ["0x1004c5cf", "imul ebp, eax"]], "recomp": [["0x1001f6b1", "mov dword ptr [ebx + 0x10], ebp"]]}, {"both": [["0x1004c5d2", "mov eax, dword ptr [ecx]", "0x1001f6b4"], ["0x1004c5d4", "call dword ptr [eax + 0x84]", "0x1001f6b6"], ["0x1004c5da", "mov ecx, dword ptr [ebx + 8]", "0x1001f6bc"], ["0x1004c5dd", "mov dword ptr [esp + 0x10], eax", "0x1001f6bf"]]}, {"orig": [["0x1004c5e1", "mov esi, dword ptr [ecx]"], ["0x1004c5e3", "call dword ptr [esi + 0x80]"], ["0x1004c5e9", "mov edx, dword ptr [esp + 0x1c]"], ["0x1004c5ed", "lea ecx, [edi + eax - 1]"], ["0x1004c5f1", "mov esi, dword ptr [esp + 0x10]"], ["0x1004c5f5", "mov dword ptr [ebx + 0xc], edi"], ["0x1004c5f8", "mov dword ptr [ebx + 0x10], edx"]], "recomp": [["0x1001f6c3", "mov eax, dword ptr [ecx]"], ["0x1001f6c5", "call dword ptr [eax + 0x80]"], ["0x1001f6cb", "mov edx, dword ptr [ebx + 0xc]"], ["0x1001f6ce", "mov ebp, dword ptr [ebx + 0x10]"], ["0x1001f6d1", "lea ecx, [eax + edx]"], ["0x1001f6d4", "dec ecx"]]}, {"both": [["0x1004c5fb", "mov dword ptr [ebx + 0x14], ecx", "0x1001f6d5"]]}, {"orig": [["0x1004c5fe", "lea edx, [esi + edx - 1]"], ["0x1004c602", "mov esi, dword ptr [esp + 0x24]"], ["0x1004c606", "mov dword ptr [ebx + 0x18], edx"]], "recomp": [["0x1001f6d8", "mov ecx, dword ptr [esp + 0x10]"], ["0x1001f6dc", "add ecx, ebp"], ["0x1001f6de", "imul edx, edi"], ["0x1001f6e1", "imul edi, eax"], ["0x1001f6e4", "imul edi, dword ptr [esp + 0x10]"], ["0x1001f6e9", "dec ecx"], ["0x1001f6ea", "push edi"], ["0x1001f6eb", "mov dword ptr [ebx + 0x18], ecx"]]}, {"both": [["0x1004c609", "mov ecx, dword ptr [esi + 0x10]", "0x1001f6ee"]]}, {"orig": [["0x1004c60c", "sub edx, dword ptr [esp + 0x1c]"], ["0x1004c610", "imul ecx, dword ptr [esp + 0x1c]"]], "recomp": [["0x1001f6f1", "imul ecx, ebp"]]}, {"both": [["0x1004c615", "add ecx, dword ptr [esi + 0x24]", "0x1001f6f4"]]}, {"orig": [["0x1004c618", "inc edx"], ["0x1004c619", "mov esi, edi"], ["0x1004c61b", "lea eax, [edi + eax - 1]"], ["0x1004c61f", "imul esi, dword ptr [esp + 0x14]"], ["0x1004c624", "add ecx, esi"], ["0x1004c626", "sub eax, edi"], ["0x1004c628", "inc eax"], ["0x1004c629", "mov dword ptr [esp + 0x10], ecx"], ["0x1004c62d", "imul edx, eax"], ["0x1004c630", "imul edx, dword ptr [esp + 0x14]"], ["0x1004c635", "push edx"]], "recomp": [["0x1001f6f7", "lea ebp, [ecx + edx]"]]}, {"both": [["0x1004c636", "call ??2@YAPAXI@Z (FUNCTION)", "0x1001f6fa"], ["0x1004c63b", "add esp, 4", "0x1001f6ff"], ["0x1004c63e", "mov dword ptr [ebx + 0x1c], eax", "0x1001f702"], ["0x1004c641", "test eax, eax", "0x1001f705"]]}, {"orig": [["0x1004c643", "je 0xc9"], ["0x1004c649", "xor edx, edx"]], "recomp": [["0x1001f707", "je 0xdb"], ["0x1001f70d", "mov dword ptr [esp + 0x10], 0"]]}, {"both": [["0x1004c64b", "mov ecx, dword ptr [ebx + 0x18]", "0x1001f715"], ["0x1004c64e", "sub ecx, dword ptr [ebx + 0x10]", "0x1001f718"], ["0x1004c651", "inc ecx", "0x1001f71b"], ["0x1004c652", "test ecx, ecx", "0x1001f71c"]]}, {"orig": [["0x1004c654", "jle 0x2d"]], "recomp": [["0x1001f71e", "jle 0x32"], ["0x1001f720", "mov edx, dword ptr [esp + 0x14]"]]}, {"both": [["0x1004c656", "mov edi, eax", "0x1001f724"]]}, {"orig": [["0x1004c658", "mov esi, dword ptr [esp + 0x10]"], ["0x1004c65c", "mov ecx, ebp"], ["0x1004c65e", "inc edx"]], "recomp": [["0x1001f726", "mov esi, ebp"], ["0x1001f728", "mov ecx, edx"]]}, {"both": [["0x1004c65f", "shr ecx, 2", "0x1001f72a"], ["0x1004c662", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1001f72d"]]}, {"orig": [["0x1004c664", "mov ecx, ebp"]], "recomp": [["0x1001f72f", "mov ecx, edx"]]}, {"both": [["0x1004c666", "and ecx, 3", "0x1001f731"], ["0x1004c669", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1001f734"]]}, {"orig": [["0x1004c66b", "mov esi, dword ptr [esp + 0x24]"], ["0x1004c66f", "add eax, ebp"], ["0x1004c671", "mov ecx, dword ptr [esi + 0x10]"], ["0x1004c674", "add dword ptr [esp + 0x10], ecx"]], "recomp": [["0x1001f736", "mov esi, dword ptr [esp + 0x1c]"], ["0x1001f73a", "add eax, dword ptr [esp + 0x14]"]]}, {"both": [["0x1004c678", "mov ecx, dword ptr [ebx + 0x18]", "0x1001f73e"]]}, {"orig": [], "recomp": [["0x1001f741", "inc dword ptr [esp + 0x10]"], ["0x1001f745", "add ebp, dword ptr [esi + 0x10]"]]}, {"both": [["0x1004c67b", "sub ecx, dword ptr [ebx + 0x10]", "0x1001f748"], ["0x1004c67e", "inc ecx", "0x1001f74b"]]}, {"orig": [["0x1004c67f", "cmp ecx, edx"], ["0x1004c681", "jg -0x2d"]], "recomp": [["0x1001f74c", "cmp ecx, dword ptr [esp + 0x10]"], ["0x1001f750", "jg -0x2e"]]}, {"both": [["0x1004c683", "mov eax, dword ptr [ebx + 8]", "0x1001f752"], ["0x1004c686", "mov ecx, dword ptr [eax + 0x1c]", "0x1001f755"], ["0x1004c689", "test byte ptr [ecx + 0x30], 0x10", "0x1001f758"]]}, {"orig": [["0x1004c68d", "je 0x48"]], "recomp": [["0x1001f75c", "je 0x4b"]]}, {"both": [["0x1004c68f", "call VideoManager (FUNCTION)", "0x1001f75e"]]}, {"orig": [["0x1004c694", "mov ebp, dword ptr [eax + 0x58]"], ["0x1004c697", "mov esi, dword ptr [ebx + 8]"], ["0x1004c69a", "mov edi, dword ptr [ebp]"], ["0x1004c69d", "mov ebx, dword ptr [esi]"]], "recomp": [["0x1001f763", "mov edi, dword ptr [eax + 0x58]"], ["0x1001f766", "mov ebp, dword ptr [ebx + 8]"]]}, {"both": [["0x1004c69f", "push 0", "0x1001f769"]]}, {"orig": [["0x1004c6a1", "mov ecx, esi"], ["0x1004c6a3", "call dword ptr [ebx + 0x84]"]], "recomp": [["0x1001f76b", "mov ecx, ebp"], ["0x1001f76d", "mov eax, dword ptr [ebp]"], ["0x1001f770", "mov esi, dword ptr [ebp + 0x10]"], ["0x1001f773", "mov ebx, dword ptr [ebp + 0x14]"], ["0x1001f776", "call dword ptr [eax + 0x84]"]]}, {"both": [["0x1004c6a9", "push eax", "0x1001f77c"]]}, {"orig": [["0x1004c6aa", "mov ecx, esi"], ["0x1004c6ac", "call dword ptr [ebx + 0x80]"]], "recomp": [["0x1001f77d", "mov ecx, ebp"], ["0x1001f77f", "mov eax, dword ptr [ebp]"], ["0x1001f782", "call dword ptr [eax + 0x80]"]]}, {"both": [["0x1004c6b2", "push eax", "0x1001f788"]]}, {"orig": [["0x1004c6b3", "mov ecx, dword ptr [esi + 0x10]"], ["0x1004c6b6", "mov eax, dword ptr [esi + 0x14]"], ["0x1004c6b9", "mov edx, dword ptr [esi + 0x50]"]], "recomp": [["0x1001f789", "push ebx"], ["0x1001f78a", "push esi"], ["0x1001f78b", "mov eax, dword ptr [ebp + 0x50]"]]}, {"both": [["0x1004c6bc", "mov esi, dword ptr [esp + 0x30]", "0x1001f78e"]]}, {"orig": [["0x1004c6c0", "push eax"], ["0x1004c6c1", "push ecx"]], "recomp": []}, {"both": [["0x1004c6c2", "push 0", "0x1001f792"], ["0x1004c6c4", "push 0", "0x1001f794"]]}, {"orig": [["0x1004c6c6", "mov ecx, ebp"], ["0x1004c6c8", "push edx"]], "recomp": [["0x1001f796", "mov ebx, dword ptr [edi]"], ["0x1001f798", "push eax"], ["0x1001f799", "mov ecx, edi"]]}, {"both": [["0x1004c6c9", "push esi", "0x1001f79b"]]}, {"orig": [["0x1004c6ca", "call dword ptr [edi + 0x2c]"]], "recomp": [["0x1001f79c", "call dword ptr [ebx + 0x2c]"]]}, {"both": [["0x1004c6cd", "pop ebp", "0x1001f79f"], ["0x1004c6ce", "pop edi", "0x1001f7a0"], ["0x1004c6cf", "pop esi", "0x1001f7a1"], ["0x1004c6d0", "pop ebx", "0x1001f7a2"]]}, {"orig": [["0x1004c6d1", "add esp, 0x10"]], "recomp": [["0x1001f7a3", "add esp, 8"]]}, {"both": [["0x1004c6d4", "ret 4", "0x1001f7a6"], ["0x1004c6d7", "call VideoManager (FUNCTION)", "0x1001f7a9"], ["0x1004c6dc", "mov edi, dword ptr [eax + 0x58]", "0x1001f7ae"]]}, {"orig": [["0x1004c6df", "mov esi, dword ptr [ebx + 8]"], ["0x1004c6e2", "mov ebx, dword ptr [esi]"], ["0x1004c6e4", "mov ecx, esi"], ["0x1004c6e6", "mov ebp, dword ptr [edi]"], ["0x1004c6e8", "call dword ptr [ebx + 0x84]"]], "recomp": [["0x1001f7b1", "mov ebp, dword ptr [ebx + 8]"], ["0x1001f7b4", "mov ebx, dword ptr [ebp + 0x14]"], ["0x1001f7b7", "mov eax, dword ptr [ebp]"], ["0x1001f7ba", "mov ecx, ebp"], ["0x1001f7bc", "mov esi, dword ptr [ebp + 0x10]"], ["0x1001f7bf", "call dword ptr [eax + 0x84]"]]}, {"both": [["0x1004c6ee", "push eax", "0x1001f7c5"]]}, {"orig": [["0x1004c6ef", "mov ecx, esi"], ["0x1004c6f1", "call dword ptr [ebx + 0x80]"]], "recomp": [["0x1001f7c6", "mov ecx, ebp"], ["0x1001f7c8", "mov eax, dword ptr [ebp]"], ["0x1001f7cb", "call dword ptr [eax + 0x80]"]]}, {"both": [["0x1004c6f7", "push eax", "0x1001f7d1"]]}, {"orig": [["0x1004c6f8", "mov ecx, dword ptr [esi + 0x10]"], ["0x1004c6fb", "mov eax, dword ptr [esi + 0x14]"], ["0x1004c6fe", "mov edx, dword ptr [esi + 0x50]"]], "recomp": [["0x1001f7d2", "push ebx"], ["0x1001f7d3", "push esi"], ["0x1001f7d4", "mov eax, dword ptr [ebp + 0x50]"]]}, {"both": [["0x1004c701", "mov esi, dword ptr [esp + 0x2c]", "0x1001f7d7"]]}, {"orig": [["0x1004c705", "push eax"], ["0x1004c706", "push ecx"]], "recomp": []}, {"both": [["0x1004c707", "push 0", "0x1001f7db"], ["0x1004c709", "push 0", "0x1001f7dd"]]}, {"orig": [], "recomp": [["0x1001f7df", "mov ebx, dword ptr [edi]"], ["0x1001f7e1", "push eax"]]}, {"both": [["0x1004c70b", "mov ecx, edi", "0x1001f7e2"]]}, {"orig": [["0x1004c70d", "push edx"]], "recomp": []}, {"both": [["0x1004c70e", "push esi", "0x1001f7e4"]]}, {"orig": [["0x1004c70f", "call dword ptr [ebp + 0x24]"]], "recomp": [["0x1001f7e5", "call dword ptr [ebx + 0x24]"], ["0x1001f7e8", "pop ebp"], ["0x1001f7e9", "pop edi"], ["0x1001f7ea", "pop esi"], ["0x1001f7eb", "pop ebx"], ["0x1001f7ec", "add esp, 8"], ["0x1001f7ef", "ret 4"]]}]]]}, {"address": "0x1004c720", "recomp": "0x10008d80", "name": "TowTrack::TowTrack", "matching": 1.0, "diff": []}, {"address": "0x1004c7c0", "recomp": "0x10008e20", "name": "TowTrack::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1004c7d0", "recomp": "0x10008e30", "name": "TowTrack::IsA", "matching": 1.0, "diff": []}, {"address": "0x1004c950", "recomp": "0x10008fb0", "name": "TowTrack::`scalar deleting destructor'", "matching": 0.2857142857142857, "diff": [["@@ -0x1004c950,29 +0x10008fb0,27 @@", [{"orig": [["0x1004c950", "push esi"], ["0x1004c951", "mov esi, ecx"], ["0x1004c953", "call <OFFSET1>"], ["0x1004c958", "test byte ptr [esp + 8], 1"], ["0x1004c95d", "je 0x9"], ["0x1004c95f", "push esi"], ["0x1004c960", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1004c965", "add esp, 4"], ["0x1004c968", "mov eax, esi"], ["0x1004c96a", "pop esi"], ["0x1004c96b", "ret 4"], ["0x1004c96e", "int3 "], ["0x1004c96f", "int3 "]], "recomp": []}, {"both": [["0x1004c970", "mov eax, dword ptr fs:[0]", "0x10008fb0"], ["0x1004c976", "push ebp", "0x10008fb6"], ["0x1004c977", "mov ebp, esp", "0x10008fb7"], ["0x1004c979", "push -1", "0x10008fb9"]]}, {"orig": [["0x1004c97b", "push <OFFSET3>"], ["0x1004c980", "mov dword ptr [ecx], TowTrack::`vftable' (VTABLE)"]], "recomp": [["0x10008fbb", "push <OFFSET1>"]]}, {"both": [["0x1004c986", "push eax", "0x10008fc0"], ["0x1004c987", "mov dword ptr fs:[0], esp", "0x10008fc1"], ["0x1004c98e", "sub esp, 4", "0x10008fc8"]]}, {"orig": [["0x1004c991", "mov dword ptr [ebp - 4], 0"], ["0x1004c998", "push ecx"]], "recomp": [["0x10008fcb", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x1004c999", "mov dword ptr [ebp - 0x10], ecx", "0x10008fd2"]]}, {"orig": [["0x1004c99c", "call ControlManager (FUNCTION)"], ["0x1004c9a1", "mov ecx, eax"], ["0x1004c9a3", "call LegoControlManager::Unregister (FUNCTION)"], ["0x1004c9a8", "mov dword ptr [ebp - 4], 0xffffffff"]], "recomp": [["0x10008fd5", "call <OFFSET2>"], ["0x10008fda", "test byte ptr [ebp + 8], 1"], ["0x10008fde", "je 0xc"], ["0x10008fe0", "mov eax, dword ptr [ebp - 0x10]"], ["0x10008fe3", "push eax"], ["0x10008fe4", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10008fe9", "add esp, 4"], ["0x10008fec", "mov eax, dword ptr [ebp - 0x10]"], ["0x10008fef", "mov ecx, dword ptr [ebp - 0xc]"], ["0x10008ff2", "mov dword ptr fs:[0], ecx"], ["0x10008ff9", "mov esp, ebp"], ["0x10008ffb", "pop ebp"], ["0x10008ffc", "ret 4"], ["0x10008fff", "mov eax, <OFFSET4>"], ["0x10009004", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10009009", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1000900c", "jmp IslePathActor::~IslePathActor (FUNCTION)"]]}]]]}, {"address": "0x1004c9e0", "recomp": "0x10009020", "name": "TowTrack::Create", "matching": 0.0, "stub": true}, {"address": "0x1004cb10", "recomp": "0x10009030", "name": "TowTrack::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x1004cc80", "recomp": "0x10009040", "name": "TowTrack::Notify", "matching": 0.0, "stub": true}, {"address": "0x1004cd30", "recomp": "0x10009050", "name": "TowTrack::VTable0xd8", "matching": 0.0, "stub": true}, {"address": "0x1004d330", "recomp": "0x10009060", "name": "TowTrack::VTable0xdc", "matching": 0.0, "stub": true}, {"address": "0x1004d690", "recomp": "0x10009070", "name": "TowTrack::VTable0xcc", "matching": 0.0, "stub": true}, {"address": "0x1004d8f0", "recomp": "0x10009080", "name": "TowTrack::VTable0xe4", "matching": 0.0, "stub": true}, {"address": "0x1004d9e0", "recomp": "0x10009090", "name": "TowTrack::VTable0xd4", "matching": 0.0, "stub": true}, {"address": "0x1004dab0", "recomp": "0x100090a0", "name": "TowTrack::FUN_1004dab0", "matching": 0.0, "stub": true}, {"address": "0x1004dad0", "recomp": "0x100090b0", "name": "TowTrack::FUN_1004dad0", "matching": 0.0, "stub": true}, {"address": "0x1004dd30", "recomp": "0x100360d0", "name": "TowTrackMissionState::TowTrackMissionState", "matching": 1.0, "diff": []}, {"address": "0x1004dde0", "recomp": "0x100362b0", "name": "TowTrackMissionState::VTable0x1c", "matching": 0.9883720930232558, "diff": [["@@ -0x1004de93,24 +0x10036363,24 @@", [{"both": [["0x1004de93", "call esi", "0x10036363"], ["0x1004de95", "lea eax, [ebx + 0x22]", "0x10036365"], ["0x1004de98", "push 2", "0x10036368"], ["0x1004de9a", "push eax", "0x1003636a"], ["0x1004de9b", "mov ecx, edi", "0x1003636b"], ["0x1004de9d", "add ebx, 0x24", "0x1003636d"], ["0x1004dea0", "call esi", "0x10036370"], ["0x1004dea2", "push 2", "0x10036372"], ["0x1004dea4", "push ebx", "0x10036374"], ["0x1004dea5", "jmp 0xd2", "0x10036375"]]}, {"orig": [], "recomp": [["0x1003637a", "mov eax, <OFFSET4>"], ["0x1003637f", "jmp ___CxxFrameHandler (FUNCTION)"]]}, {"both": [["0x1004deaa", "mov ecx, dword ptr [ebp - 0x10]", "0x10036384"], ["0x1004dead", "jmp MxString::~MxString (FUNCTION)", "0x10036387"]]}, {"orig": [["0x1004deb2", "mov eax, <OFFSET5>"], ["0x1004deb7", "jmp ___CxxFrameHandler (FUNCTION)"]], "recomp": []}, {"both": [["0x1004debc", "mov ecx, edi", "0x1003638c"], ["0x1004debe", "call dword ptr [esi + 0x14]", "0x1003638e"], ["0x1004dec1", "test al, al", "0x10036391"], ["0x1004dec3", "je 0xb7", "0x10036393"], ["0x1004dec9", "mov ax, word ptr [ebx + 0x12]", "0x10036399"], ["0x1004decd", "push 2", "0x1003639d"], ["0x1004decf", "mov word ptr [ebp - 0xe], ax", "0x1003639f"], ["0x1004ded3", "mov ecx, edi", "0x100363a3"], ["0x1004ded5", "mov esi, dword ptr [esi + 8]", "0x100363a5"], ["0x1004ded8", "lea eax, [ebp - 0xe]", "0x100363a8"]]}]]]}, {"address": "0x1004dfa0", "recomp": "0x10036180", "name": "TowTrackMissionState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1004dfb0", "recomp": "0x10036190", "name": "TowTrackMissionState::IsA", "matching": 1.0, "diff": []}, {"address": "0x1004e060", "recomp": "0x10036240", "name": "TowTrackMissionState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004e0d0", "recomp": "0x100740e0", "name": "MxBitmap::VTable0x28", "matching": 1.0, "diff": []}, {"address": "0x1004e0e0", "recomp": "0x10021510", "name": "Act2PoliceStation::Notify", "matching": 0.0, "stub": true}, {"address": "0x1004e180", "recomp": "0x1003b580", "name": "LegoPhonemePresenter::LegoPhonemePresenter", "matching": 1.0, "diff": []}, {"address": "0x1004e200", "recomp": "0x10037e80", "name": "MxFlcPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1004e310", "recomp": "0x1003b600", "name": "LegoPhonemePresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1004e320", "recomp": "0x1003b610", "name": "LegoPhonemePresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004e340", "recomp": "0x1003b630", "name": "LegoPhonemePresenter::~LegoPhonemePresenter", "matching": 1.0, "diff": []}, {"address": "0x1004e3b0", "recomp": "0x1003b6a0", "name": "LegoPhonemePresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x1004e3d0", "recomp": "0x1003b6c0", "name": "LegoPhonemePresenter::StartingTickle", "matching": 0.0, "stub": true}, {"address": "0x1004e800", "recomp": "0x1003b6d0", "name": "LegoPhonemePresenter::LoadFrame", "matching": 0.0, "stub": true}, {"address": "0x1004e840", "recomp": "0x1003b6e0", "name": "LegoPhonemePresenter::PutFrame", "matching": 0.0, "stub": true}, {"address": "0x1004e870", "recomp": "0x1003b6f0", "name": "LegoPhonemePresenter::EndAction", "matching": 0.0, "stub": true}, {"address": "0x1004eb40", "recomp": "0x1003b700", "name": "LegoTexturePresenter::~LegoTexturePresenter", "matching": 1.0, "diff": []}, {"address": "0x1004ebb0", "recomp": "0x1003b770", "name": "LegoTexturePresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x1004ebd0", "recomp": "0x1003b790", "name": "LegoTexturePresenter::Read", "matching": 0.8522483940042827, "diff": [["@@ -0x1004ebff,89 +0x1003b7bf,90 @@", [{"both": [["0x1004ebff", "xor esi, esi", "0x1003b7bf"], ["0x1004ec01", "lea ecx, [ebp - 0x40]", "0x1003b7c1"], ["0x1004ec04", "call LegoMemory::LegoMemory (FUNCTION)", "0x1003b7c4"], ["0x1004ec09", "mov dword ptr [ebp - 4], esi", "0x1003b7c9"], ["0x1004ec0c", "call VideoManager (FUNCTION)", "0x1003b7cc"], ["0x1004ec11", "mov eax, dword ptr [eax + 0x74]", "0x1003b7d1"], ["0x1004ec14", "push 0x18", "0x1003b7d4"], ["0x1004ec16", "mov ecx, dword ptr [eax + 0x880]", "0x1003b7d6"], ["0x1004ec1c", "mov eax, dword ptr [ecx + 0x10]", "0x1003b7dc"], ["0x1004ec1f", "shl eax, 0x1f", "0x1003b7df"]]}, {"orig": [], "recomp": [["0x1003b7e2", "mov ebx, 1"]]}, {"both": [["0x1004ec22", "sar eax, 0x1f", "0x1003b7e7"], ["0x1004ec25", "mov dword ptr [ebp - 0x30], eax", "0x1003b7ea"], ["0x1004ec28", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003b7ed"], ["0x1004ec2d", "mov dword ptr [ebp - 0x10], eax", "0x1003b7f2"], ["0x1004ec30", "add esp, 4", "0x1003b7f5"]]}, {"orig": [["0x1004ec33", "mov byte ptr [ebp - 4], 1"]], "recomp": []}, {"both": [["0x1004ec37", "mov edi, eax", "0x1003b7f8"]]}, {"orig": [], "recomp": [["0x1003b7fa", "mov byte ptr [ebp - 4], bl"]]}, {"both": [["0x1004ec39", "test edi, edi", "0x1003b7fd"]]}, {"orig": [["0x1004ec3b", "je 0x6e"]], "recomp": [["0x1003b7ff", "je 0x6d"]]}, {"both": [["0x1004ec3d", "mov ecx, edi", "0x1003b801"], ["0x1004ec3f", "call MxCore::MxCore (FUNCTION)", "0x1003b803"], ["0x1004ec44", "mov byte ptr [ebp - 4], 2", "0x1003b808"], ["0x1004ec48", "mov byte ptr [ebp - 4], 3", "0x1003b80c"], ["0x1004ec4c", "mov byte ptr [ebp - 4], 4", "0x1003b810"], ["0x1004ec50", "mov dword ptr [edi], MxCollection<LegoNamedTexture *>::`vftable' (VTABLE)", "0x1003b814"], ["0x1004ec56", "mov dword ptr [edi + 8], esi", "0x1003b81a"], ["0x1004ec59", "mov dword ptr [edi + 0xc], MxCollection<LegoNamedTexture *>::Destroy (FUNCTION)", "0x1003b81d"], ["0x1004ec60", "mov byte ptr [ebp - 4], 5", "0x1003b824"]]}, {"orig": [["0x1004ec64", "mov byte ptr [ebp - 4], 1"], ["0x1004ec68", "mov ecx, edi"]], "recomp": []}, {"both": [["0x1004ec6a", "mov dword ptr [edi], MxList<LegoNamedTexture *>::`vftable' (VTABLE)", "0x1003b828"]]}, {"orig": [], "recomp": [["0x1003b82e", "mov byte ptr [ebp - 4], bl"], ["0x1003b831", "mov eax, edi"]]}, {"both": [["0x1004ec70", "mov dword ptr [edi + 0x14], esi", "0x1003b833"], ["0x1004ec73", "mov dword ptr [edi + 0x10], esi", "0x1003b836"], ["0x1004ec76", "mov dword ptr [edi], MxPtrList<LegoNamedTexture>::`vftable' (VTABLE)", "0x1003b839"], ["0x1004ec7c", "mov dword ptr [edi + 0xc], MxPtrList<LegoNamedTexture>::Destroy (FUNCTION)", "0x1003b83f"], ["0x1004ec83", "mov dword ptr [edi], LegoNamedTextureList::`vftable' (VTABLE)", "0x1003b846"], ["0x1004ec89", "jmp 0x22", "0x1003b84c"], ["0x1004ec8b", "mov ecx, dword ptr [ebp - 0x10]", "0x1003b84e"], ["0x1004ec8e", "jmp MxCore::~MxCore (FUNCTION)", "0x1003b851"], ["0x1004ec93", "mov ecx, dword ptr [ebp - 0x10]", "0x1003b856"], ["0x1004ec96", "jmp MxCollection<LegoNamedTexture *>::~MxCollection<LegoNamedTexture *> (FUNCTION)", "0x1003b859"], ["0x1004ec9b", "mov ecx, dword ptr [ebp - 0x10]", "0x1003b85e"], ["0x1004ec9e", "jmp MxList<LegoNamedTexture *>::~MxList<LegoNamedTexture *> (FUNCTION)", "0x1003b861"], ["0x1004eca3", "mov ecx, dword ptr [ebp - 0x10]", "0x1003b866"], ["0x1004eca6", "jmp MxPtrList<LegoNamedTexture>::~MxPtrList<LegoNamedTexture> (FUNCTION)", "0x1003b869"]]}, {"orig": [["0x1004ecab", "xor ecx, ecx"], ["0x1004ecad", "mov eax, dword ptr [ebp - 0x18]"]], "recomp": [["0x1003b86e", "xor eax, eax"], ["0x1003b870", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x1004ecb0", "push 4", "0x1003b873"], ["0x1004ecb2", "mov byte ptr [ebp - 4], 0", "0x1003b875"]]}, {"orig": [["0x1004ecb6", "mov dword ptr [eax + 0x50], ecx"], ["0x1004ecb9", "lea ecx, [ebp - 0x24]"], ["0x1004ecbc", "push ecx"]], "recomp": [["0x1003b879", "mov dword ptr [ecx + 0x50], eax"], ["0x1003b87c", "lea eax, [ebp - 0x24]"], ["0x1003b87f", "push eax"]]}, {"both": [["0x1004ecbd", "lea ecx, [ebp - 0x40]", "0x1003b880"], ["0x1004ecc0", "call LegoMemory::Read (FUNCTION)", "0x1003b883"], ["0x1004ecc5", "test eax, eax", "0x1003b888"]]}, {"orig": [["0x1004ecc7", "jne 0x149"]], "recomp": [["0x1003b88a", "jne 0x14f"]]}, {"both": [["0x1004eccd", "mov dword ptr [ebp - 0x28], 0", "0x1003b890"], ["0x1004ecd4", "cmp dword ptr [ebp - 0x24], 0", "0x1003b897"]]}, {"orig": [["0x1004ecd8", "jbe 0x131"]], "recomp": [["0x1003b89b", "jbe 0x137"]]}, {"both": [["0x1004ecde", "push 4", "0x1003b8a1"], ["0x1004ece0", "lea eax, [ebp - 0x20]", "0x1003b8a3"], ["0x1004ece3", "push eax", "0x1003b8a6"], ["0x1004ece4", "lea ecx, [ebp - 0x40]", "0x1003b8a7"], ["0x1004ece7", "call LegoMemory::Read (FUNCTION)", "0x1003b8aa"], ["0x1004ecec", "test eax, eax", "0x1003b8af"]]}, {"orig": [["0x1004ecee", "jne 0x122"]], "recomp": [["0x1003b8b1", "jne 0x128"]]}, {"both": [["0x1004ecf4", "mov eax, dword ptr [ebp - 0x20]", "0x1003b8b7"], ["0x1004ecf7", "inc eax", "0x1003b8ba"], ["0x1004ecf8", "push eax", "0x1003b8bb"], ["0x1004ecf9", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003b8bc"], ["0x1004ecfe", "add esp, 4", "0x1003b8c1"], ["0x1004ed01", "mov esi, eax", "0x1003b8c4"], ["0x1004ed03", "mov ecx, dword ptr [ebp - 0x20]", "0x1003b8c6"], ["0x1004ed06", "push ecx", "0x1003b8c9"], ["0x1004ed07", "push esi", "0x1003b8ca"], ["0x1004ed08", "lea ecx, [ebp - 0x40]", "0x1003b8cb"], ["0x1004ed0b", "call LegoMemory::Read (FUNCTION)", "0x1003b8ce"], ["0x1004ed10", "test eax, eax", "0x1003b8d3"]]}, {"orig": [["0x1004ed12", "jne 0xfe"]], "recomp": [["0x1003b8d5", "jne 0x104"]]}, {"both": [["0x1004ed18", "mov eax, dword ptr [ebp - 0x20]", "0x1003b8db"], ["0x1004ed1b", "push esi", "0x1003b8de"], ["0x1004ed1c", "mov ebx, 0", "0x1003b8df"], ["0x1004ed21", "mov byte ptr [eax + esi], 0", "0x1003b8e4"], ["0x1004ed25", "call _strlwr (FUNCTION)", "0x1003b8e8"], ["0x1004ed2a", "add esp, 4", "0x1003b8ed"], ["0x1004ed2d", "push 4", "0x1003b8f0"], ["0x1004ed2f", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003b8f2"], ["0x1004ed34", "mov dword ptr [ebp - 0x10], eax", "0x1003b8f7"], ["0x1004ed37", "add esp, 4", "0x1003b8fa"]]}]], ["@@ -0x1004ed46,91 +0x1003b909,92 @@", [{"both": [["0x1004ed46", "call LegoTexture::LegoTexture (FUNCTION)", "0x1003b909"], ["0x1004ed4b", "mov ebx, eax", "0x1003b90e"], ["0x1004ed4d", "mov eax, dword ptr [ebp - 0x30]", "0x1003b910"], ["0x1004ed50", "lea ecx, [ebp - 0x40]", "0x1003b913"], ["0x1004ed53", "mov byte ptr [ebp - 4], 0", "0x1003b916"], ["0x1004ed57", "push eax", "0x1003b91a"], ["0x1004ed58", "push ecx", "0x1003b91b"], ["0x1004ed59", "mov ecx, ebx", "0x1003b91c"], ["0x1004ed5b", "call LegoTexture::Read (FUNCTION)", "0x1003b91e"], ["0x1004ed60", "test eax, eax", "0x1003b923"]]}, {"orig": [["0x1004ed62", "jne 0xae"]], "recomp": [["0x1003b925", "jne 0xb4"]]}, {"both": [["0x1004ed68", "push 0x14", "0x1003b92b"], ["0x1004ed6a", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003b92d"], ["0x1004ed6f", "add esp, 4", "0x1003b932"], ["0x1004ed72", "mov dword ptr [ebp - 0x10], eax", "0x1003b935"], ["0x1004ed75", "mov byte ptr [ebp - 4], 7", "0x1003b938"], ["0x1004ed79", "test eax, eax", "0x1003b93c"], ["0x1004ed7b", "je 0x26", "0x1003b93e"], ["0x1004ed7d", "mov ecx, eax", "0x1003b940"], ["0x1004ed7f", "mov dword ptr [ebp - 0x14], eax", "0x1003b942"], ["0x1004ed82", "call MxString::MxString (FUNCTION)", "0x1003b945"], ["0x1004ed87", "push esi", "0x1003b94a"], ["0x1004ed88", "mov ecx, dword ptr [ebp - 0x10]", "0x1003b94b"], ["0x1004ed8b", "mov byte ptr [ebp - 4], 8", "0x1003b94e"], ["0x1004ed8f", "call MxString::operator= (FUNCTION)", "0x1003b952"], ["0x1004ed94", "mov byte ptr [ebp - 4], 7", "0x1003b957"], ["0x1004ed98", "mov eax, dword ptr [ebp - 0x10]", "0x1003b95b"], ["0x1004ed9b", "mov dword ptr [ebp - 0x2c], eax", "0x1003b95e"], ["0x1004ed9e", "mov dword ptr [eax + 0x10], ebx", "0x1003b961"], ["0x1004eda1", "jmp 0x7", "0x1003b964"], ["0x1004eda3", "mov dword ptr [ebp - 0x2c], 0", "0x1003b966"]]}, {"orig": [["0x1004edaa", "mov eax, dword ptr [ebp - 0x18]"]], "recomp": [["0x1003b96d", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x1004edad", "push 0xc", "0x1003b970"]]}, {"orig": [["0x1004edaf", "mov ebx, dword ptr [eax + 0x50]"]], "recomp": [["0x1003b972", "mov ebx, dword ptr [ecx + 0x50]"]]}, {"both": [["0x1004edb2", "mov byte ptr [ebp - 4], 0", "0x1003b975"], ["0x1004edb6", "mov edi, dword ptr [ebx + 0x14]", "0x1003b979"], ["0x1004edb9", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003b97c"], ["0x1004edbe", "add esp, 4", "0x1003b981"], ["0x1004edc1", "mov dword ptr [ebp - 0x14], eax", "0x1003b984"], ["0x1004edc4", "mov byte ptr [ebp - 4], 9", "0x1003b987"], ["0x1004edc8", "test eax, eax", "0x1003b98b"]]}, {"orig": [["0x1004edca", "je 0x11"], ["0x1004edcc", "mov ecx, dword ptr [ebp - 0x2c]"], ["0x1004edcf", "mov dword ptr [eax], ecx"], ["0x1004edd1", "mov dword ptr [eax + 4], edi"], ["0x1004edd4", "mov dword ptr [eax + 8], 0"], ["0x1004eddb", "jmp 0x2"], ["0x1004eddd", "xor eax, eax"]], "recomp": [["0x1003b98d", "mov eax, 0"], ["0x1003b992", "je 0x14"], ["0x1003b994", "mov eax, dword ptr [ebp - 0x2c]"], ["0x1003b997", "mov ecx, dword ptr [ebp - 0x14]"], ["0x1003b99a", "mov dword ptr [ecx], eax"], ["0x1003b99c", "mov eax, ecx"], ["0x1003b99e", "mov dword ptr [ecx + 4], edi"], ["0x1003b9a1", "mov dword ptr [ecx + 8], 0"]]}, {"both": [["0x1004eddf", "mov byte ptr [ebp - 4], 0", "0x1003b9a8"], ["0x1004ede3", "test edi, edi", "0x1003b9ac"], ["0x1004ede5", "je 0x5", "0x1003b9ae"], ["0x1004ede7", "mov dword ptr [edi + 8], eax", "0x1003b9b0"], ["0x1004edea", "jmp 0x3", "0x1003b9b3"], ["0x1004edec", "mov dword ptr [ebx + 0x10], eax", "0x1003b9b5"], ["0x1004edef", "push esi", "0x1003b9b8"], ["0x1004edf0", "mov dword ptr [ebx + 0x14], eax", "0x1003b9b9"], ["0x1004edf3", "xor esi, esi", "0x1003b9bc"], ["0x1004edf5", "inc dword ptr [ebx + 8]", "0x1003b9be"], ["0x1004edf8", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003b9c1"], ["0x1004edfd", "add esp, 4", "0x1003b9c6"], ["0x1004ee00", "inc dword ptr [ebp - 0x28]", "0x1003b9c9"], ["0x1004ee03", "mov eax, dword ptr [ebp - 0x28]", "0x1003b9cc"]]}, {"orig": [["0x1004ee06", "cmp dword ptr [ebp - 0x24], eax"], ["0x1004ee09", "ja -0x131"]], "recomp": [["0x1003b9cf", "cmp eax, dword ptr [ebp - 0x24]"], ["0x1003b9d2", "jb -0x137"]]}, {"both": [["0x1004ee0f", "mov dword ptr [ebp - 0x1c], 0", "0x1003b9d8"], ["0x1004ee16", "test esi, esi", "0x1003b9df"], ["0x1004ee18", "je 0x9", "0x1003b9e1"], ["0x1004ee1a", "push esi", "0x1003b9e3"], ["0x1004ee1b", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003b9e4"], ["0x1004ee20", "add esp, 4", "0x1003b9e9"], ["0x1004ee23", "cmp dword ptr [ebp - 0x1c], 0", "0x1003b9ec"], ["0x1004ee27", "je 0x1a", "0x1003b9f0"]]}, {"orig": [["0x1004ee29", "mov eax, dword ptr [ebp - 0x18]"], ["0x1004ee2c", "mov ecx, dword ptr [eax + 0x50]"]], "recomp": [["0x1003b9f2", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1003b9f5", "mov ecx, dword ptr [ecx + 0x50]"]]}, {"both": [["0x1004ee2f", "test ecx, ecx", "0x1003b9f8"], ["0x1004ee31", "je 0x10", "0x1003b9fa"], ["0x1004ee33", "push 1", "0x1003b9fc"], ["0x1004ee35", "mov eax, dword ptr [ecx]", "0x1003b9fe"], ["0x1004ee37", "call dword ptr [eax]", "0x1003ba00"]]}, {"orig": [["0x1004ee39", "mov eax, dword ptr [ebp - 0x18]"], ["0x1004ee3c", "mov dword ptr [eax + 0x50], 0"]], "recomp": [["0x1003ba02", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1003ba05", "mov dword ptr [ecx + 0x50], 0"]]}, {"both": [["0x1004ee43", "mov dword ptr [ebp - 4], 0xffffffff", "0x1003ba0c"], ["0x1004ee4a", "call <OFFSET23>", "0x1003ba13"], ["0x1004ee4f", "mov eax, dword ptr [ebp - 0x1c]", "0x1003ba18"], ["0x1004ee52", "mov ecx, dword ptr [ebp - 0xc]", "0x1003ba1b"], ["0x1004ee55", "mov dword ptr fs:[0], ecx", "0x1003ba1e"], ["0x1004ee5c", "pop edi", "0x1003ba25"], ["0x1004ee5d", "pop esi", "0x1003ba26"], ["0x1004ee5e", "pop ebx", "0x1003ba27"], ["0x1004ee5f", "mov esp, ebp", "0x1003ba28"], ["0x1004ee61", "pop ebp", "0x1003ba2a"]]}]], ["@@ -0x1004ee93,19 +0x1003ba5c,10 @@", [{"both": [["0x1004ee93", "ret ", "0x1003ba5c"], ["0x1004ee94", "mov eax, dword ptr [ebp - 0x10]", "0x1003ba5d"], ["0x1004ee97", "push eax", "0x1003ba60"], ["0x1004ee98", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003ba61"], ["0x1004ee9d", "add esp, 4", "0x1003ba66"], ["0x1004eea0", "ret ", "0x1003ba69"], ["0x1004eea1", "mov eax, <OFFSET25>", "0x1003ba6a"], ["0x1004eea6", "jmp ___CxxFrameHandler (FUNCTION)", "0x1003ba6f"], ["0x1004eeab", "lea ecx, [ebp - 0x40]", "0x1003ba74"], ["0x1004eeae", "jmp LegoMemory::~LegoMemory (FUNCTION)", "0x1003ba77"]]}, {"orig": [["0x1004eeb3", "int3 "], ["0x1004eeb4", "int3 "], ["0x1004eeb5", "int3 "], ["0x1004eeb6", "int3 "], ["0x1004eeb7", "int3 "], ["0x1004eeb8", "int3 "], ["0x1004eeb9", "int3 "], ["0x1004eeba", "int3 "], ["0x1004eebb", "int3 "]], "recomp": []}]]]}, {"address": "0x1004eec0", "recomp": "0x1003bae0", "name": "MxCollection<LegoNamedTexture *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1004eed0", "recomp": "0x1003ba90", "name": "MxCollection<LegoNamedTexture *>::~MxCollection<LegoNamedTexture *>", "matching": 1.0, "diff": []}, {"address": "0x1004ef20", "recomp": "0x1003ba80", "name": "MxCollection<LegoNamedTexture *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1004ef30", "recomp": "0x1003c570", "name": "MxList<LegoNamedTexture *>::~MxList<LegoNamedTexture *>", "matching": 1.0, "diff": []}, {"address": "0x1004efc0", "recomp": "0x1003baf0", "name": "MxPtrList<LegoNamedTexture>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1004f040", "recomp": "0x1003bb70", "name": "LegoNamedTextureList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004f0b0", "recomp": "0x1003bbe0", "name": "MxPtrList<LegoNamedTexture>::~MxPtrList<LegoNamedTexture>", "matching": 1.0, "diff": []}, {"address": "0x1004f100", "recomp": "0x1003bc30", "name": "MxCollection<LegoNamedTexture *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004f170", "recomp": "0x1003bca0", "name": "MxList<LegoNamedTexture *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004f220", "recomp": "0x1003bd50", "name": "MxPtrList<LegoNamedTexture>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004f290", "recomp": "0x1003bdc0", "name": "LegoTexturePresenter::Store", "matching": 1.0, "diff": []}, {"address": "0x1004f500", "recomp": "0x1003c030", "name": "LegoNamedTextureListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004f570", "recomp": "0x1003c0a0", "name": "MxPtrListCursor<LegoNamedTexture>::~MxPtrListCursor<LegoNamedTexture>", "matching": 1.0, "diff": []}, {"address": "0x1004f5c0", "recomp": "0x1003c0f0", "name": "MxListCursor<LegoNamedTexture *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004f630", "recomp": "0x1003c160", "name": "MxPtrListCursor<LegoNamedTexture>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1004f6a0", "recomp": "0x1003c1d0", "name": "MxListCursor<LegoNamedTexture *>::~MxListCursor<LegoNamedTexture *>", "matching": 1.0, "diff": []}, {"address": "0x1004f6f0", "recomp": "0x1003c220", "name": "LegoNamedTextureListCursor::~LegoNamedTextureListCursor", "matching": 1.0, "diff": []}, {"address": "0x1004f740", "recomp": "0x1003c270", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::find", "matching": 0.9722222222222222, "diff": [["@@ -0x1004f740,16 +0x1003c270,16 @@", [{"both": [["0x1004f740", "sub esp, 8", "0x1003c270"], ["0x1004f743", "mov edx, dword ptr [ecx + 4]", "0x1003c273"], ["0x1004f746", "push ebx", "0x1003c276"], ["0x1004f747", "mov eax, dword ptr [edx + 4]", "0x1003c277"], ["0x1004f74a", "push esi", "0x1003c27a"]]}, {"orig": [["0x1004f74b", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x1003c27b", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1004f751", "push edi", "0x1003c281"], ["0x1004f752", "push ebp", "0x1003c282"], ["0x1004f753", "mov ebp, dword ptr [esp + 0x20]", "0x1003c283"], ["0x1004f757", "je 0x40", "0x1003c287"], ["0x1004f759", "mov esi, dword ptr [eax + 0xc]", "0x1003c289"], ["0x1004f75c", "mov edi, dword ptr [ebp]", "0x1003c28c"], ["0x1004f75f", "mov bl, byte ptr [esi]", "0x1003c28f"], ["0x1004f761", "cmp bl, byte ptr [edi]", "0x1003c291"], ["0x1004f763", "jne 0x1a", "0x1003c293"], ["0x1004f765", "or bl, bl", "0x1003c295"]]}]], ["@@ -0x1004f77b,21 +0x1003c2ab,21 @@", [{"both": [["0x1004f77b", "xor esi, esi", "0x1003c2ab"], ["0x1004f77d", "jmp 0x5", "0x1003c2ad"], ["0x1004f77f", "sbb esi, esi", "0x1003c2af"], ["0x1004f781", "sbb esi, -1", "0x1003c2b1"], ["0x1004f784", "test esi, esi", "0x1003c2b4"], ["0x1004f786", "jg 0x6", "0x1003c2b6"], ["0x1004f788", "mov edx, eax", "0x1003c2b8"], ["0x1004f78a", "mov eax, dword ptr [eax]", "0x1003c2ba"], ["0x1004f78c", "jmp 0x3", "0x1003c2bc"], ["0x1004f78e", "mov eax, dword ptr [eax + 8]", "0x1003c2be"]]}, {"orig": [["0x1004f791", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x1003c2c1", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1004f797", "jne -0x40", "0x1003c2c7"], ["0x1004f799", "mov dword ptr [esp + 0x10], edx", "0x1003c2c9"], ["0x1004f79d", "cmp dword ptr [ecx + 4], edx", "0x1003c2cd"], ["0x1004f7a0", "je 0x33", "0x1003c2d0"], ["0x1004f7a2", "mov esi, dword ptr [ebp]", "0x1003c2d2"], ["0x1004f7a5", "mov eax, dword ptr [edx + 0xc]", "0x1003c2d5"], ["0x1004f7a8", "mov dl, byte ptr [esi]", "0x1003c2d8"], ["0x1004f7aa", "cmp dl, byte ptr [eax]", "0x1003c2da"], ["0x1004f7ac", "jne 0x1a", "0x1003c2dc"], ["0x1004f7ae", "or dl, dl", "0x1003c2de"]]}]]]}, {"address": "0x1004f800", "recomp": "0x1003c390", "name": "map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::insert", "matching": 0.873015873015873, "diff": [["@@ -0x1004f800,25 +0x1003c390,25 @@", [{"both": [["0x1004f800", "sub esp, 0x14", "0x1003c390"], ["0x1004f803", "push ebx", "0x1003c393"], ["0x1004f804", "push esi", "0x1003c394"], ["0x1004f805", "push edi", "0x1003c395"], ["0x1004f806", "mov eax, 1", "0x1003c396"], ["0x1004f80b", "mov ebx, dword ptr [esp + 0x28]", "0x1003c39b"], ["0x1004f80f", "push ebp", "0x1003c39f"]]}, {"orig": [["0x1004f810", "mov esi, dword ptr [ecx + 4]"]], "recomp": [["0x1003c3a0", "mov edi, dword ptr [ecx + 4]"]]}, {"both": [["0x1004f813", "mov ebp, ecx", "0x1003c3a3"]]}, {"orig": [["0x1004f815", "mov edi, dword ptr [esi + 4]"], ["0x1004f818", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], edi"]], "recomp": [["0x1003c3a5", "mov esi, dword ptr [edi + 4]"], ["0x1003c3a8", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1004f81e", "je 0x48", "0x1003c3ae"]]}, {"orig": [["0x1004f820", "mov esi, edi"]], "recomp": [["0x1003c3b0", "mov edi, esi"]]}, {"both": [["0x1004f822", "mov ecx, dword ptr [ebx]", "0x1003c3b2"]]}, {"orig": [["0x1004f824", "mov edx, dword ptr [edi + 0xc]"]], "recomp": [["0x1003c3b4", "mov edx, dword ptr [esi + 0xc]"]]}, {"both": [["0x1004f827", "mov al, byte ptr [ecx]", "0x1003c3b7"], ["0x1004f829", "cmp al, byte ptr [edx]", "0x1003c3b9"], ["0x1004f82b", "jne 0x1a", "0x1003c3bb"], ["0x1004f82d", "or al, al", "0x1003c3bd"], ["0x1004f82f", "je 0x12", "0x1003c3bf"], ["0x1004f831", "mov al, byte ptr [ecx + 1]", "0x1003c3c1"], ["0x1004f834", "cmp al, byte ptr [edx + 1]", "0x1003c3c4"], ["0x1004f837", "jne 0xe", "0x1003c3c7"], ["0x1004f839", "add ecx, 2", "0x1003c3c9"], ["0x1004f83c", "add edx, 2", "0x1003c3cc"]]}]], ["@@ -0x1004f843,52 +0x1003c3d3,52 @@", [{"both": [["0x1004f843", "xor eax, eax", "0x1003c3d3"], ["0x1004f845", "jmp 0x5", "0x1003c3d5"], ["0x1004f847", "sbb eax, eax", "0x1003c3d7"], ["0x1004f849", "sbb eax, -1", "0x1003c3d9"], ["0x1004f84c", "test eax, eax", "0x1003c3dc"], ["0x1004f84e", "setg cl", "0x1003c3de"], ["0x1004f851", "xor eax, eax", "0x1003c3e1"], ["0x1004f853", "mov al, cl", "0x1003c3e3"], ["0x1004f855", "test eax, eax", "0x1003c3e5"], ["0x1004f857", "jne 0x5", "0x1003c3e7"]]}, {"orig": [["0x1004f859", "mov edi, dword ptr [edi + 8]"]], "recomp": [["0x1003c3e9", "mov esi, dword ptr [esi + 8]"]]}, {"both": [["0x1004f85c", "jmp 0x2", "0x1003c3ec"]]}, {"orig": [["0x1004f85e", "mov edi, dword ptr [edi]"], ["0x1004f860", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], edi"]], "recomp": [["0x1003c3ee", "mov esi, dword ptr [esi]"], ["0x1003c3f0", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1004f866", "jne -0x48", "0x1003c3f6"], ["0x1004f868", "cmp dword ptr [ebp + 8], 0", "0x1003c3f8"], ["0x1004f86c", "je 0x2a", "0x1003c3fc"], ["0x1004f86e", "lea eax, [esp + 0x20]", "0x1003c3fe"], ["0x1004f872", "push ebx", "0x1003c402"]]}, {"orig": [["0x1004f873", "push esi"]], "recomp": [["0x1003c403", "push edi"]]}, {"both": [["0x1004f874", "mov ecx, ebp", "0x1003c404"], ["0x1004f876", "mov dword ptr [esp + 0x18], 1", "0x1003c406"]]}, {"orig": [["0x1004f87e", "push edi"]], "recomp": [["0x1003c40e", "push esi"]]}, {"both": [["0x1004f87f", "push eax", "0x1003c40f"], ["0x1004f880", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Insert (FUNCTION)", "0x1003c410"], ["0x1004f885", "mov eax, dword ptr [eax]", "0x1003c415"], ["0x1004f887", "mov ecx, dword ptr [esp + 0x10]", "0x1003c417"], ["0x1004f88b", "mov dword ptr [esp + 0x14], eax", "0x1003c41b"], ["0x1004f88f", "mov dword ptr [esp + 0x18], ecx", "0x1003c41f"], ["0x1004f893", "jmp 0xa8", "0x1003c423"]]}, {"orig": [["0x1004f898", "mov dword ptr [esp + 0x1c], esi"]], "recomp": [["0x1003c428", "mov dword ptr [esp + 0x1c], edi"]]}, {"both": [["0x1004f89c", "test eax, eax", "0x1003c42c"], ["0x1004f89e", "je 0x37", "0x1003c42e"], ["0x1004f8a0", "mov eax, dword ptr [ebp + 4]", "0x1003c430"]]}, {"orig": [["0x1004f8a3", "cmp dword ptr [eax], esi"]], "recomp": [["0x1003c433", "cmp dword ptr [eax], edi"]]}, {"both": [["0x1004f8a5", "jne 0x27", "0x1003c435"], ["0x1004f8a7", "lea eax, [esp + 0x20]", "0x1003c437"], ["0x1004f8ab", "push ebx", "0x1003c43b"]]}, {"orig": [["0x1004f8ac", "push esi"]], "recomp": [["0x1003c43c", "push edi"]]}, {"both": [["0x1004f8ad", "mov ecx, ebp", "0x1003c43d"], ["0x1004f8af", "mov dword ptr [esp + 0x18], 1", "0x1003c43f"]]}, {"orig": [["0x1004f8b7", "push edi"]], "recomp": [["0x1003c447", "push esi"]]}, {"both": [["0x1004f8b8", "push eax", "0x1003c448"], ["0x1004f8b9", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Insert (FUNCTION)", "0x1003c449"], ["0x1004f8be", "mov eax, dword ptr [eax]", "0x1003c44e"], ["0x1004f8c0", "mov ecx, dword ptr [esp + 0x10]", "0x1003c450"], ["0x1004f8c4", "mov dword ptr [esp + 0x14], eax", "0x1003c454"], ["0x1004f8c8", "mov dword ptr [esp + 0x18], ecx", "0x1003c458"], ["0x1004f8cc", "jmp 0x72", "0x1003c45c"], ["0x1004f8ce", "lea ecx, [esp + 0x1c]", "0x1003c45e"], ["0x1004f8d2", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::iterator::_Dec (FUNCTION)", "0x1003c462"], ["0x1004f8d7", "mov eax, dword ptr [esp + 0x1c]", "0x1003c467"]]}]], ["@@ -0x1004f8f8,24 +0x1003c488,24 @@", [{"both": [["0x1004f8f8", "or al, al", "0x1003c488"], ["0x1004f8fa", "jne -0x1c", "0x1003c48a"], ["0x1004f8fc", "xor eax, eax", "0x1003c48c"], ["0x1004f8fe", "jmp 0x5", "0x1003c48e"], ["0x1004f900", "sbb eax, eax", "0x1003c490"], ["0x1004f902", "sbb eax, -1", "0x1003c492"], ["0x1004f905", "test eax, eax", "0x1003c495"], ["0x1004f907", "jle 0x27", "0x1003c497"], ["0x1004f909", "lea eax, [esp + 0x20]", "0x1003c499"], ["0x1004f90d", "push ebx", "0x1003c49d"]]}, {"orig": [["0x1004f90e", "push esi"]], "recomp": [["0x1003c49e", "push edi"]]}, {"both": [["0x1004f90f", "mov ecx, ebp", "0x1003c49f"], ["0x1004f911", "mov dword ptr [esp + 0x18], 1", "0x1003c4a1"]]}, {"orig": [["0x1004f919", "push edi"]], "recomp": [["0x1003c4a9", "push esi"]]}, {"both": [["0x1004f91a", "push eax", "0x1003c4aa"], ["0x1004f91b", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Insert (FUNCTION)", "0x1003c4ab"], ["0x1004f920", "mov eax, dword ptr [eax]", "0x1003c4b0"], ["0x1004f922", "mov ecx, dword ptr [esp + 0x10]", "0x1003c4b2"], ["0x1004f926", "mov dword ptr [esp + 0x14], eax", "0x1003c4b6"], ["0x1004f92a", "mov dword ptr [esp + 0x18], ecx", "0x1003c4ba"], ["0x1004f92e", "jmp 0x10", "0x1003c4be"], ["0x1004f930", "mov dword ptr [esp + 0x18], 0", "0x1003c4c0"], ["0x1004f938", "mov eax, dword ptr [esp + 0x1c]", "0x1003c4c8"], ["0x1004f93c", "mov dword ptr [esp + 0x14], eax", "0x1003c4cc"]]}]]]}, {"address": "0x1004f960", "recomp": "0x100390f0", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::iterator::_Dec", "matching": 0.9393939393939394, "diff": [["@@ -0x1004f963,24 +0x100390f3,24 @@", [{"both": [["0x1004f963", "cmp dword ptr [esi + 0x14], 0", "0x100390f3"], ["0x1004f967", "jne 0xf", "0x100390f7"], ["0x1004f969", "mov eax, dword ptr [esi + 4]", "0x100390f9"], ["0x1004f96c", "cmp dword ptr [eax + 4], esi", "0x100390fc"], ["0x1004f96f", "jne 0x7", "0x100390ff"], ["0x1004f971", "mov eax, dword ptr [esi + 8]", "0x10039101"], ["0x1004f974", "pop esi", "0x10039104"], ["0x1004f975", "mov dword ptr [ecx], eax", "0x10039105"], ["0x1004f977", "ret ", "0x10039107"], ["0x1004f978", "mov edx, dword ptr [esi]", "0x10039108"]]}, {"orig": [["0x1004f97a", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], edx"]], "recomp": [["0x1003910a", "cmp edx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1004f980", "je 0x13", "0x10039110"], ["0x1004f982", "mov eax, dword ptr [edx + 8]", "0x10039112"]]}, {"orig": [["0x1004f985", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x10039115", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1004f98b", "je 0x4", "0x1003911b"], ["0x1004f98d", "mov edx, eax", "0x1003911d"], ["0x1004f98f", "jmp -0xf", "0x1003911f"], ["0x1004f991", "pop esi", "0x10039121"], ["0x1004f992", "mov dword ptr [ecx], edx", "0x10039122"], ["0x1004f994", "ret ", "0x10039124"], ["0x1004f995", "mov edx, dword ptr [esi + 4]", "0x10039125"], ["0x1004f998", "cmp dword ptr [edx], esi", "0x10039128"], ["0x1004f99a", "jne 0xb", "0x1003912a"], ["0x1004f99c", "mov dword ptr [ecx], edx", "0x1003912c"]]}]]]}, {"address": "0x1004f9b0", "recomp": "0x10039140", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Insert", "matching": 0.767590618336887, "diff": [["@@ -0x1004f9e9,21 +0x10039179,21 @@", [{"both": [["0x1004f9e9", "mov ebx, dword ptr [esp + 0x24]", "0x10039179"], ["0x1004f9ed", "je 0xa", "0x1003917d"], ["0x1004f9ef", "mov edx, dword ptr [ebx]", "0x1003917f"], ["0x1004f9f1", "mov edi, dword ptr [ebx + 4]", "0x10039181"], ["0x1004f9f4", "mov dword ptr [eax], edx", "0x10039184"], ["0x1004f9f6", "mov dword ptr [eax + 4], edi", "0x10039186"], ["0x1004f9f9", "inc dword ptr [esi + 0xc]", "0x10039189"], ["0x1004f9fc", "cmp dword ptr [esi + 4], ecx", "0x1003918c"], ["0x1004f9ff", "je 0x4f", "0x1003918f"], ["0x1004fa01", "mov eax, dword ptr [esp + 0x1c]", "0x10039191"]]}, {"orig": [["0x1004fa05", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x10039195", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1004fa0b", "jne 0x43", "0x1003919b"], ["0x1004fa0d", "mov eax, dword ptr [ebx]", "0x1003919d"], ["0x1004fa0f", "mov edi, dword ptr [ecx + 0xc]", "0x1003919f"], ["0x1004fa12", "mov dl, byte ptr [eax]", "0x100391a2"], ["0x1004fa14", "cmp dl, byte ptr [edi]", "0x100391a4"], ["0x1004fa16", "jne 0x1a", "0x100391a6"], ["0x1004fa18", "or dl, dl", "0x100391a8"], ["0x1004fa1a", "je 0x12", "0x100391aa"], ["0x1004fa1c", "mov dl, byte ptr [eax + 1]", "0x100391ac"], ["0x1004fa1f", "cmp dl, byte ptr [edi + 1]", "0x100391af"]]}]], ["@@ -0x1004fa5f,44 +0x100391ef,44 @@", [{"both": [["0x1004fa5f", "jne 0x11", "0x100391ef"], ["0x1004fa61", "mov dword ptr [eax], edx", "0x100391f1"], ["0x1004fa63", "jmp 0xd", "0x100391f3"], ["0x1004fa65", "mov edx, dword ptr [esp + 0x10]", "0x100391f5"], ["0x1004fa69", "mov dword ptr [eax + 4], edx", "0x100391f9"], ["0x1004fa6c", "mov eax, dword ptr [esi + 4]", "0x100391fc"], ["0x1004fa6f", "mov dword ptr [eax + 8], edx", "0x100391ff"], ["0x1004fa72", "mov ecx, dword ptr [esp + 0x10]", "0x10039202"], ["0x1004fa76", "mov eax, dword ptr [esi + 4]", "0x10039206"], ["0x1004fa79", "cmp dword ptr [eax + 4], ecx", "0x10039209"]]}, {"orig": [["0x1004fa7c", "je 0x1b4"]], "recomp": [["0x1003920c", "je 0x1b6"]]}, {"both": [["0x1004fa82", "lea edx, [ecx + 4]", "0x10039212"], ["0x1004fa85", "mov eax, dword ptr [edx]", "0x10039215"]]}, {"orig": [["0x1004fa87", "lea ebp, [eax + 0x14]"], ["0x1004fa8a", "cmp dword ptr [ebp], 0"], ["0x1004fa8e", "jne 0x1a2"]], "recomp": [["0x10039217", "lea ebx, [eax + 0x14]"], ["0x1003921a", "cmp dword ptr [ebx], 0"], ["0x1003921d", "jne 0x1a5"]]}, {"both": [["0x1004fa94", "lea edi, [eax + 4]", "0x10039223"]]}, {"orig": [["0x1004fa97", "mov ebx, dword ptr [edi]"], ["0x1004fa99", "mov ebx, dword ptr [ebx]"], ["0x1004fa9b", "cmp ebx, eax"], ["0x1004fa9d", "jne 0xbb"], ["0x1004faa3", "mov ebx, dword ptr [edi]"], ["0x1004faa5", "mov ebx, dword ptr [ebx + 8]"], ["0x1004faa8", "cmp dword ptr [ebx + 0x14], 0"], ["0x1004faac", "je 0x159"]], "recomp": [["0x10039226", "mov ebp, dword ptr [edi]"], ["0x10039228", "mov ebp, dword ptr [ebp]"], ["0x1003922b", "cmp ebp, eax"], ["0x1003922d", "jne 0xbe"], ["0x10039233", "mov ebp, dword ptr [edi]"], ["0x10039235", "mov ebp, dword ptr [ebp + 8]"], ["0x10039238", "cmp dword ptr [ebp + 0x14], 0"], ["0x1003923c", "je 0x15c"]]}, {"both": [["0x1004fab2", "lea ebx, [eax + 8]", "0x10039242"], ["0x1004fab5", "mov edx, dword ptr [ebx]", "0x10039245"], ["0x1004fab7", "cmp ecx, edx", "0x10039247"], ["0x1004fab9", "jne 0x33", "0x10039249"], ["0x1004fabb", "mov ecx, eax", "0x1003924b"], ["0x1004fabd", "mov eax, dword ptr [edx]", "0x1003924d"], ["0x1004fabf", "mov dword ptr [ebx], eax", "0x1003924f"], ["0x1004fac1", "mov eax, dword ptr [edx]", "0x10039251"]]}, {"orig": [["0x1004fac3", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x10039253", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1004fac9", "je 0x3", "0x10039259"], ["0x1004facb", "mov dword ptr [eax + 4], ecx", "0x1003925b"], ["0x1004face", "mov eax, dword ptr [edi]", "0x1003925e"], ["0x1004fad0", "mov dword ptr [edx + 4], eax", "0x10039260"], ["0x1004fad3", "mov eax, dword ptr [esi + 4]", "0x10039263"], ["0x1004fad6", "add eax, 4", "0x10039266"], ["0x1004fad9", "cmp dword ptr [eax], ecx", "0x10039269"], ["0x1004fadb", "je 0xb", "0x1003926b"], ["0x1004fadd", "mov eax, dword ptr [edi]", "0x1003926d"], ["0x1004fadf", "cmp dword ptr [eax], ecx", "0x1003926f"]]}]], ["@@ -0x1004fae6,125 +0x10039276,124 @@", [{"both": [["0x1004fae6", "jmp 0x2", "0x10039276"], ["0x1004fae8", "mov dword ptr [eax], edx", "0x10039278"], ["0x1004faea", "mov dword ptr [edx], ecx", "0x1003927a"], ["0x1004faec", "mov dword ptr [edi], edx", "0x1003927c"], ["0x1004faee", "mov eax, dword ptr [ecx + 4]", "0x1003927e"], ["0x1004faf1", "mov dword ptr [eax + 0x14], 1", "0x10039281"], ["0x1004faf8", "mov eax, dword ptr [ecx + 4]", "0x10039288"], ["0x1004fafb", "mov edx, dword ptr [eax + 4]", "0x1003928b"], ["0x1004fafe", "mov dword ptr [edx + 0x14], 0", "0x1003928e"], ["0x1004fb05", "mov eax, dword ptr [ecx + 4]", "0x10039295"]]}, {"orig": [["0x1004fb08", "mov edi, dword ptr [eax + 4]"], ["0x1004fb0b", "mov edx, dword ptr [edi]"], ["0x1004fb0d", "mov eax, dword ptr [edx + 8]"], ["0x1004fb10", "mov dword ptr [edi], eax"], ["0x1004fb12", "mov eax, dword ptr [edx + 8]"], ["0x1004fb15", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"], ["0x1004fb1b", "je 0x3"], ["0x1004fb1d", "mov dword ptr [eax + 4], edi"], ["0x1004fb20", "mov eax, dword ptr [edi + 4]"], ["0x1004fb23", "mov dword ptr [edx + 4], eax"], ["0x1004fb26", "mov eax, dword ptr [esi + 4]"], ["0x1004fb29", "add eax, 4"], ["0x1004fb2c", "cmp dword ptr [eax], edi"]], "recomp": [["0x10039298", "mov edx, dword ptr [eax + 4]"], ["0x1003929b", "mov edi, dword ptr [edx]"], ["0x1003929d", "mov eax, dword ptr [edi + 8]"], ["0x100392a0", "mov dword ptr [edx], eax"], ["0x100392a2", "mov eax, dword ptr [edi + 8]"], ["0x100392a5", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"], ["0x100392ab", "je 0x3"], ["0x100392ad", "mov dword ptr [eax + 4], edx"], ["0x100392b0", "mov eax, dword ptr [edx + 4]"], ["0x100392b3", "mov dword ptr [edi + 4], eax"], ["0x100392b6", "mov eax, dword ptr [esi + 4]"], ["0x100392b9", "add eax, 4"], ["0x100392bc", "cmp dword ptr [eax], edx"]]}, {"both": [["0x1004fb2e", "je 0x24", "0x100392be"]]}, {"orig": [["0x1004fb30", "mov ebx, dword ptr [edi + 4]"]], "recomp": [["0x100392c0", "mov ebx, dword ptr [edx + 4]"]]}, {"both": [["0x1004fb33", "lea eax, [ebx + 8]", "0x100392c3"]]}, {"orig": [["0x1004fb36", "cmp dword ptr [eax], edi"]], "recomp": [["0x100392c6", "cmp dword ptr [eax], edx"]]}, {"both": [["0x1004fb38", "je 0xd", "0x100392c8"]]}, {"orig": [["0x1004fb3a", "mov dword ptr [ebx], edx"], ["0x1004fb3c", "mov dword ptr [edx + 8], edi"], ["0x1004fb3f", "mov dword ptr [edi + 4], edx"], ["0x1004fb42", "jmp 0xe3"], ["0x1004fb47", "mov dword ptr [eax], edx"], ["0x1004fb49", "mov dword ptr [edx + 8], edi"], ["0x1004fb4c", "mov dword ptr [edi + 4], edx"], ["0x1004fb4f", "jmp 0xd6"], ["0x1004fb54", "mov dword ptr [eax], edx"], ["0x1004fb56", "mov dword ptr [edx + 8], edi"], ["0x1004fb59", "jmp 0xa8"], ["0x1004fb5e", "cmp dword ptr [ebx + 0x14], 0"]], "recomp": [["0x100392ca", "mov dword ptr [ebx], edi"], ["0x100392cc", "mov dword ptr [edi + 8], edx"], ["0x100392cf", "mov dword ptr [edx + 4], edi"], ["0x100392d2", "jmp 0xe5"], ["0x100392d7", "mov dword ptr [eax], edi"], ["0x100392d9", "mov dword ptr [edi + 8], edx"], ["0x100392dc", "mov dword ptr [edx + 4], edi"], ["0x100392df", "jmp 0xd8"], ["0x100392e4", "mov dword ptr [eax], edi"], ["0x100392e6", "mov dword ptr [edi + 8], edx"], ["0x100392e9", "mov dword ptr [edx + 4], edi"], ["0x100392ec", "jmp 0xcb"], ["0x100392f1", "cmp dword ptr [ebp + 0x14], 0"]]}, {"both": [["0x1004fb62", "je 0xa3", "0x100392f5"], ["0x1004fb68", "mov edx, dword ptr [eax]", "0x100392fb"], ["0x1004fb6a", "cmp ecx, edx", "0x100392fd"], ["0x1004fb6c", "jne 0x38", "0x100392ff"], ["0x1004fb6e", "mov ecx, eax", "0x10039301"], ["0x1004fb70", "mov eax, dword ptr [edx + 8]", "0x10039303"], ["0x1004fb73", "mov dword ptr [ecx], eax", "0x10039306"], ["0x1004fb75", "mov eax, dword ptr [edx + 8]", "0x10039308"]]}, {"orig": [["0x1004fb78", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x1003930b", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1004fb7e", "je 0x3", "0x10039311"], ["0x1004fb80", "mov dword ptr [eax + 4], ecx", "0x10039313"], ["0x1004fb83", "mov eax, dword ptr [edi]", "0x10039316"], ["0x1004fb85", "mov dword ptr [edx + 4], eax", "0x10039318"], ["0x1004fb88", "mov eax, dword ptr [esi + 4]", "0x1003931b"], ["0x1004fb8b", "add eax, 4", "0x1003931e"], ["0x1004fb8e", "cmp dword ptr [eax], ecx", "0x10039321"], ["0x1004fb90", "je 0xd", "0x10039323"]]}, {"orig": [["0x1004fb92", "mov eax, dword ptr [edi]"], ["0x1004fb94", "lea ebx, [eax + 8]"], ["0x1004fb97", "cmp dword ptr [ebx], ecx"], ["0x1004fb99", "jne 0x4"]], "recomp": [["0x10039325", "mov ebx, dword ptr [edi]"], ["0x10039327", "lea eax, [ebx + 8]"], ["0x1003932a", "cmp dword ptr [eax], ecx"], ["0x1003932c", "je 0x4"]]}, {"both": [["0x1004fb9b", "mov dword ptr [ebx], edx", "0x1003932e"], ["0x1004fb9d", "jmp 0x2", "0x10039330"], ["0x1004fb9f", "mov dword ptr [eax], edx", "0x10039332"], ["0x1004fba1", "mov dword ptr [edx + 8], ecx", "0x10039334"], ["0x1004fba4", "mov dword ptr [edi], edx", "0x10039337"], ["0x1004fba6", "mov eax, dword ptr [ecx + 4]", "0x10039339"], ["0x1004fba9", "mov dword ptr [eax + 0x14], 1", "0x1003933c"], ["0x1004fbb0", "mov eax, dword ptr [ecx + 4]", "0x10039343"], ["0x1004fbb3", "mov edx, dword ptr [eax + 4]", "0x10039346"], ["0x1004fbb6", "mov dword ptr [edx + 0x14], 0", "0x10039349"], ["0x1004fbbd", "mov eax, dword ptr [ecx + 4]", "0x10039350"], ["0x1004fbc0", "mov edi, dword ptr [eax + 4]", "0x10039353"], ["0x1004fbc3", "mov edx, dword ptr [edi + 8]", "0x10039356"], ["0x1004fbc6", "mov eax, dword ptr [edx]", "0x10039359"], ["0x1004fbc8", "mov dword ptr [edi + 8], eax", "0x1003935b"], ["0x1004fbcb", "mov eax, dword ptr [edx]", "0x1003935e"]]}, {"orig": [["0x1004fbcd", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x10039360", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1004fbd3", "je 0x3", "0x10039366"], ["0x1004fbd5", "mov dword ptr [eax + 4], edi", "0x10039368"], ["0x1004fbd8", "mov eax, dword ptr [edi + 4]", "0x1003936b"], ["0x1004fbdb", "mov dword ptr [edx + 4], eax", "0x1003936e"], ["0x1004fbde", "mov eax, dword ptr [esi + 4]", "0x10039371"], ["0x1004fbe1", "add eax, 4", "0x10039374"], ["0x1004fbe4", "cmp dword ptr [eax], edi", "0x10039377"], ["0x1004fbe6", "je 0x1a", "0x10039379"], ["0x1004fbe8", "mov eax, dword ptr [edi + 4]", "0x1003937b"], ["0x1004fbeb", "cmp dword ptr [eax], edi", "0x1003937e"], ["0x1004fbed", "je 0xa", "0x10039380"], ["0x1004fbef", "mov dword ptr [eax + 8], edx", "0x10039382"], ["0x1004fbf2", "mov dword ptr [edx], edi", "0x10039385"], ["0x1004fbf4", "mov dword ptr [edi + 4], edx", "0x10039387"]]}, {"orig": [["0x1004fbf7", "jmp 0x31"]], "recomp": [["0x1003938a", "jmp 0x30"]]}, {"both": [["0x1004fbf9", "mov dword ptr [eax], edx", "0x1003938c"], ["0x1004fbfb", "mov dword ptr [edx], edi", "0x1003938e"], ["0x1004fbfd", "mov dword ptr [edi + 4], edx", "0x10039390"]]}, {"orig": [["0x1004fc00", "jmp 0x28"]], "recomp": [["0x10039393", "jmp 0x27"]]}, {"both": [["0x1004fc02", "mov dword ptr [eax], edx", "0x10039395"], ["0x1004fc04", "mov dword ptr [edx], edi", "0x10039397"], ["0x1004fc06", "mov dword ptr [edi + 4], edx", "0x10039399"]]}, {"orig": [["0x1004fc09", "jmp 0x1f"], ["0x1004fc0b", "mov dword ptr [ebp], 1"], ["0x1004fc12", "mov dword ptr [ebx + 0x14], 1"]], "recomp": [["0x1003939c", "jmp 0x1e"], ["0x1003939e", "mov dword ptr [ebx], 1"], ["0x100393a4", "mov dword ptr [ebp + 0x14], 1"]]}, {"both": [["0x1004fc19", "mov eax, dword ptr [edx]", "0x100393ab"], ["0x1004fc1b", "mov ecx, dword ptr [eax + 4]", "0x100393ad"], ["0x1004fc1e", "mov dword ptr [ecx + 0x14], 0", "0x100393b0"], ["0x1004fc25", "mov eax, dword ptr [edx]", "0x100393b7"], ["0x1004fc27", "mov ecx, dword ptr [eax + 4]", "0x100393b9"], ["0x1004fc2a", "mov eax, dword ptr [esi + 4]", "0x100393bc"], ["0x1004fc2d", "cmp dword ptr [eax + 4], ecx", "0x100393bf"]]}, {"orig": [["0x1004fc30", "jne -0x1b4"]], "recomp": [["0x100393c2", "jne -0x1b6"]]}, {"both": [["0x1004fc36", "mov eax, dword ptr [esi + 4]", "0x100393c8"], ["0x1004fc39", "mov edx, dword ptr [esp + 0x10]", "0x100393cb"], ["0x1004fc3d", "mov ecx, dword ptr [eax + 4]", "0x100393cf"], ["0x1004fc40", "mov eax, dword ptr [esp + 0x18]", "0x100393d2"], ["0x1004fc44", "pop ebp", "0x100393d6"], ["0x1004fc45", "pop edi", "0x100393d7"], ["0x1004fc46", "mov dword ptr [ecx + 0x14], 1", "0x100393d8"], ["0x1004fc4d", "pop esi", "0x100393df"], ["0x1004fc4e", "mov dword ptr [eax], edx", "0x100393e0"], ["0x1004fc50", "pop ebx", "0x100393e2"], ["0x1004fc51", "add esp, 4", "0x100393e3"], ["0x1004fc54", "ret 0x10", "0x100393e6"]]}, {"orig": [["0x1004fc57", "int3 "], ["0x1004fc58", "int3 "]], "recomp": []}]]]}, {"address": "0x1004fc60", "recomp": "0x1003c4f0", "name": "LegoTexturePresenter::PutData", "matching": 1.0, "diff": []}, {"address": "0x1004fcb0", "recomp": "0x1003c540", "name": "LegoTexturePresenter::DoneTickle", "matching": 1.0, "diff": []}, {"address": "0x1004fe10", "recomp": "0x10046b80", "name": "LegoAct2::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x1004fe20", "recomp": "0x1001b7c0", "name": "LegoAct2::`scalar deleting destructor'", "matching": 0.2222222222222222, "diff": [["@@ -0x1004fe20,42 +0x1001b7c0,39 @@", [{"orig": [["0x1004fe20", "push esi"], ["0x1004fe21", "mov esi, ecx"], ["0x1004fe23", "call <OFFSET1>"], ["0x1004fe28", "test byte ptr [esp + 8], 1"], ["0x1004fe2d", "je 0x9"], ["0x1004fe2f", "push esi"], ["0x1004fe30", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1004fe35", "add esp, 4"], ["0x1004fe38", "mov eax, esi"], ["0x1004fe3a", "pop esi"], ["0x1004fe3b", "ret 4"], ["0x1004fe3e", "int3 "], ["0x1004fe3f", "int3 "]], "recomp": []}, {"both": [["0x1004fe40", "mov eax, dword ptr fs:[0]", "0x1001b7c0"], ["0x1004fe46", "push ebp", "0x1001b7c6"], ["0x1004fe47", "mov ebp, esp", "0x1001b7c7"], ["0x1004fe49", "push -1", "0x1001b7c9"]]}, {"orig": [["0x1004fe4b", "push <OFFSET3>"], ["0x1004fe50", "mov dword ptr [ecx], LegoAct2::`vftable' (VTABLE)"]], "recomp": [["0x1001b7cb", "push <OFFSET1>"]]}, {"both": [["0x1004fe56", "push eax", "0x1001b7d0"], ["0x1004fe57", "mov dword ptr fs:[0], esp", "0x1001b7d1"]]}, {"orig": [], "recomp": [["0x1001b7d8", "xor eax, eax"]]}, {"both": [["0x1004fe5e", "sub esp, 4", "0x1001b7da"]]}, {"orig": [["0x1004fe61", "mov dword ptr [ebp - 4], 1"], ["0x1004fe68", "cmp byte ptr [ecx + 0x10c2], 0"]], "recomp": []}, {"both": [["0x1004fe6f", "mov dword ptr [ebp - 0x10], ecx", "0x1001b7dd"]]}, {"orig": [["0x1004fe72", "je 0x10"], ["0x1004fe74", "call TickleManager (FUNCTION)"]], "recomp": [["0x1001b7e0", "mov dword ptr [ebp - 4], eax"], ["0x1001b7e3", "mov byte ptr [ebp - 4], al"], ["0x1001b7e6", "call <OFFSET2>"], ["0x1001b7eb", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1001b7f2", "call <OFFSET3>"], ["0x1001b7f7", "test byte ptr [ebp + 8], 1"], ["0x1001b7fb", "je 0xc"], ["0x1001b7fd", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001b800", "push eax"], ["0x1001b801", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001b806", "add esp, 4"], ["0x1001b809", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001b80c", "mov ecx, dword ptr [ebp - 0xc]"], ["0x1001b80f", "mov dword ptr fs:[0], ecx"], ["0x1001b816", "mov esp, ebp"], ["0x1001b818", "pop ebp"], ["0x1001b819", "ret 4"], ["0x1001b81c", "push Act2Brick::~Act2Brick (FUNCTION)"], ["0x1001b821", "mov eax, dword ptr [ebp - 0x10]"], ["0x1001b824", "push 0xa"], ["0x1001b826", "add eax, 0xf8"], ["0x1001b82b", "push 0x194"], ["0x1001b830", "push eax"], ["0x1001b831", "call ??_M@YGXPAXIHP6EX0@Z@Z (UNK)"], ["0x1001b836", "ret "], ["0x1001b837", "mov eax, <OFFSET7>"], ["0x1001b83c", "jmp ___CxxFrameHandler (FUNCTION)"]]}, {"both": [["0x1004fe79", "mov ecx, dword ptr [ebp - 0x10]", "0x1001b841"]]}, {"orig": [["0x1004fe7c", "mov edx, dword ptr [eax]"], ["0x1004fe7e", "push ecx"], ["0x1004fe7f", "mov ecx, eax"], ["0x1004fe81", "call dword ptr [edx + 0x18]"], ["0x1004fe84", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1004fe87", "call <OFFSET6>"], ["0x1004fe8c", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1004fe8f", "push ecx"], ["0x1004fe90", "call InputManager (FUNCTION)"], ["0x1004fe95", "mov ecx, eax"], ["0x1004fe97", "call LegoInputManager::UnRegister (FUNCTION)"], ["0x1004fe9c", "call CurrentActor (FUNCTION)"], ["0x1004fea1", "test eax, eax"], ["0x1004fea3", "je 0xe"]], "recomp": [["0x1001b844", "jmp LegoWorld::~LegoWorld (FUNCTION)"]]}]]]}, {"address": "0x1004ff20", "recomp": "0x10046b90", "name": "LegoAct2::Create", "matching": 0.0, "stub": true}, {"address": "0x10050040", "recomp": "0x10046ba0", "name": "LegoAct2::Tickle", "matching": 0.0, "stub": true}, {"address": "0x10050380", "recomp": "0x10046bb0", "name": "LegoAct2::Notify", "matching": 0.0, "stub": true}, {"address": "0x10050a80", "recomp": "0x10046bc0", "name": "LegoAct2::ReadyWorld", "matching": 0.0, "stub": true}, {"address": "0x10050cf0", "recomp": "0x10046bd0", "name": "LegoAct2::Enable", "matching": 0.0, "stub": true}, {"address": "0x10051050", "recomp": "0x1005f410", "name": "MxActionNotificationParam::~MxActionNotificationParam", "matching": 1.0, "diff": []}, {"address": "0x100510c0", "recomp": "0x1005f480", "name": "MxActionNotificationParam::Clone", "matching": 1.0, "diff": []}, {"address": "0x100511e0", "recomp": "0x1005f5a0", "name": "MxActionNotificationParam::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10051270", "recomp": "0x100608c0", "name": "MxEndActionNotificationParam::Clone", "matching": 1.0, "diff": []}, {"address": "0x100513a0", "recomp": "0x100609f0", "name": "MxEndActionNotificationParam::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10051410", "recomp": "0x10060a60", "name": "MxEndActionNotificationParam::~MxEndActionNotificationParam", "matching": 1.0, "diff": []}, {"address": "0x100519c0", "recomp": "0x10046be0", "name": "LegoAct2::VTable0x60", "matching": 0.0, "stub": true}, {"address": "0x100519d0", "recomp": "0x10046bf0", "name": "LegoAct2::VTable0x64", "matching": 0.0, "stub": true}, {"address": "0x100528e0", "recomp": "0x1002fbd0", "name": "CreateScripts", "matching": 0.7098445595854922, "diff": [["@@ -0x100528f0,431 +0x1002fbe0,431 @@", [{"both": [["0x100528f0", "push eax", "0x1002fbe0"], ["0x100528f1", "mov dword ptr fs:[0], esp", "0x1002fbe1"], ["0x100528f8", "sub esp, 8", "0x1002fbe8"], ["0x100528fb", "push esi", "0x1002fbeb"], ["0x100528fc", "push edi", "0x1002fbec"], ["0x100528fd", "push 4", "0x1002fbed"], ["0x100528ff", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fbef"], ["0x10052904", "mov dword ptr [ebp - 0x10], eax", "0x1002fbf4"], ["0x10052907", "add esp, 4", "0x1002fbf7"], ["0x1005290a", "mov dword ptr [ebp - 4], 0", "0x1002fbfa"]]}, {"orig": [["0x10052911", "mov esi, eax"], ["0x10052913", "mov eax, 0"], ["0x10052918", "test esi, esi"], ["0x1005291a", "je 0xe"], ["0x1005291c", "push 3"], ["0x1005291e", "mov ecx, esi"]], "recomp": [["0x1002fc01", "mov edi, eax"], ["0x1002fc03", "mov eax, 0"], ["0x1002fc08", "test edi, edi"], ["0x1002fc0a", "je 0xe"], ["0x1002fc0c", "push 3"], ["0x1002fc0e", "mov ecx, edi"]]}, {"both": [["0x10052920", "push '\\\\lego\\\\scripts\\\\build\\\\copter' (STRING)", "0x1002fc10"], ["0x10052925", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fc15"], ["0x1005292a", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fc1a"], ["0x10052931", "push 4", "0x1002fc21"], ["0x10052933", "mov dword ptr [g_copterScript (DATA)], eax", "0x1002fc23"], ["0x10052938", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fc28"], ["0x1005293d", "mov dword ptr [ebp - 0x14], eax", "0x1002fc2d"], ["0x10052940", "add esp, 4", "0x1002fc30"], ["0x10052943", "mov dword ptr [ebp - 4], 1", "0x1002fc33"]]}, {"orig": [["0x1005294a", "mov edi, eax"], ["0x1005294c", "mov eax, 0"], ["0x10052951", "test edi, edi"], ["0x10052953", "je 0xe"], ["0x10052955", "push 3"], ["0x10052957", "mov ecx, edi"]], "recomp": [["0x1002fc3a", "mov esi, eax"], ["0x1002fc3c", "mov eax, 0"], ["0x1002fc41", "test esi, esi"], ["0x1002fc43", "je 0xe"], ["0x1002fc45", "push 3"], ["0x1002fc47", "mov ecx, esi"]]}, {"both": [["0x10052959", "push '\\\\lego\\\\scripts\\\\build\\\\dunecar' (STRING)", "0x1002fc49"], ["0x1005295e", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fc4e"], ["0x10052963", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fc53"], ["0x1005296a", "push 4", "0x1002fc5a"], ["0x1005296c", "mov dword ptr [g_dunecarScript (DATA)], eax", "0x1002fc5c"], ["0x10052971", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fc61"], ["0x10052976", "mov dword ptr [ebp - 0x10], eax", "0x1002fc66"], ["0x10052979", "add esp, 4", "0x1002fc69"], ["0x1005297c", "mov dword ptr [ebp - 4], 2", "0x1002fc6c"]]}, {"orig": [["0x10052983", "mov esi, eax"], ["0x10052985", "mov eax, 0"], ["0x1005298a", "test esi, esi"], ["0x1005298c", "je 0xe"], ["0x1005298e", "push 3"], ["0x10052990", "mov ecx, esi"]], "recomp": [["0x1002fc73", "mov edi, eax"], ["0x1002fc75", "mov eax, 0"], ["0x1002fc7a", "test edi, edi"], ["0x1002fc7c", "je 0xe"], ["0x1002fc7e", "push 3"], ["0x1002fc80", "mov ecx, edi"]]}, {"both": [["0x10052992", "push '\\\\lego\\\\scripts\\\\build\\\\jetski' (STRING)", "0x1002fc82"], ["0x10052997", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fc87"], ["0x1005299c", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fc8c"], ["0x100529a3", "push 4", "0x1002fc93"], ["0x100529a5", "mov dword ptr [g_jetskiScript (DATA)], eax", "0x1002fc95"], ["0x100529aa", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fc9a"], ["0x100529af", "mov dword ptr [ebp - 0x14], eax", "0x1002fc9f"], ["0x100529b2", "add esp, 4", "0x1002fca2"], ["0x100529b5", "mov dword ptr [ebp - 4], 3", "0x1002fca5"]]}, {"orig": [["0x100529bc", "mov edi, eax"], ["0x100529be", "mov eax, 0"], ["0x100529c3", "test edi, edi"], ["0x100529c5", "je 0xe"], ["0x100529c7", "push 3"], ["0x100529c9", "mov ecx, edi"]], "recomp": [["0x1002fcac", "mov esi, eax"], ["0x1002fcae", "mov eax, 0"], ["0x1002fcb3", "test esi, esi"], ["0x1002fcb5", "je 0xe"], ["0x1002fcb7", "push 3"], ["0x1002fcb9", "mov ecx, esi"]]}, {"both": [["0x100529cb", "push '\\\\lego\\\\scripts\\\\build\\\\racecar' (STRING)", "0x1002fcbb"], ["0x100529d0", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fcc0"], ["0x100529d5", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fcc5"], ["0x100529dc", "push 4", "0x1002fccc"], ["0x100529de", "mov dword ptr [g_racecarScript (DATA)], eax", "0x1002fcce"], ["0x100529e3", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fcd3"], ["0x100529e8", "mov dword ptr [ebp - 0x10], eax", "0x1002fcd8"], ["0x100529eb", "add esp, 4", "0x1002fcdb"], ["0x100529ee", "mov dword ptr [ebp - 4], 4", "0x1002fcde"]]}, {"orig": [["0x100529f5", "mov esi, eax"], ["0x100529f7", "mov eax, 0"], ["0x100529fc", "test esi, esi"], ["0x100529fe", "je 0xe"], ["0x10052a00", "push 3"], ["0x10052a02", "mov ecx, esi"]], "recomp": [["0x1002fce5", "mov edi, eax"], ["0x1002fce7", "mov eax, 0"], ["0x1002fcec", "test edi, edi"], ["0x1002fcee", "je 0xe"], ["0x1002fcf0", "push 3"], ["0x1002fcf2", "mov ecx, edi"]]}, {"both": [["0x10052a04", "push '\\\\lego\\\\scripts\\\\race\\\\carrace' (STRING)", "0x1002fcf4"], ["0x10052a09", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fcf9"], ["0x10052a0e", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fcfe"], ["0x10052a15", "push 4", "0x1002fd05"], ["0x10052a17", "mov dword ptr [g_carraceScript (DATA)], eax", "0x1002fd07"], ["0x10052a1c", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fd0c"], ["0x10052a21", "mov dword ptr [ebp - 0x14], eax", "0x1002fd11"], ["0x10052a24", "add esp, 4", "0x1002fd14"], ["0x10052a27", "mov dword ptr [ebp - 4], 5", "0x1002fd17"]]}, {"orig": [["0x10052a2e", "mov edi, eax"], ["0x10052a30", "mov eax, 0"], ["0x10052a35", "test edi, edi"], ["0x10052a37", "je 0xe"], ["0x10052a39", "push 3"], ["0x10052a3b", "mov ecx, edi"]], "recomp": [["0x1002fd1e", "mov esi, eax"], ["0x1002fd20", "mov eax, 0"], ["0x1002fd25", "test esi, esi"], ["0x1002fd27", "je 0xe"], ["0x1002fd29", "push 3"], ["0x1002fd2b", "mov ecx, esi"]]}, {"both": [["0x10052a3d", "push '\\\\lego\\\\scripts\\\\race\\\\carracer' (STRING)", "0x1002fd2d"], ["0x10052a42", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fd32"], ["0x10052a47", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fd37"], ["0x10052a4e", "push 4", "0x1002fd3e"], ["0x10052a50", "mov dword ptr [g_carracerScript (DATA)], eax", "0x1002fd40"], ["0x10052a55", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fd45"], ["0x10052a5a", "mov dword ptr [ebp - 0x10], eax", "0x1002fd4a"], ["0x10052a5d", "add esp, 4", "0x1002fd4d"], ["0x10052a60", "mov dword ptr [ebp - 4], 6", "0x1002fd50"]]}, {"orig": [["0x10052a67", "mov esi, eax"], ["0x10052a69", "mov eax, 0"], ["0x10052a6e", "test esi, esi"], ["0x10052a70", "je 0xe"], ["0x10052a72", "push 3"], ["0x10052a74", "mov ecx, esi"]], "recomp": [["0x1002fd57", "mov edi, eax"], ["0x1002fd59", "mov eax, 0"], ["0x1002fd5e", "test edi, edi"], ["0x1002fd60", "je 0xe"], ["0x1002fd62", "push 3"], ["0x1002fd64", "mov ecx, edi"]]}, {"both": [["0x10052a76", "push '\\\\lego\\\\scripts\\\\race\\\\jetrace' (STRING)", "0x1002fd66"], ["0x10052a7b", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fd6b"], ["0x10052a80", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fd70"], ["0x10052a87", "push 4", "0x1002fd77"], ["0x10052a89", "mov dword ptr [g_jetraceScript (DATA)], eax", "0x1002fd79"], ["0x10052a8e", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fd7e"], ["0x10052a93", "mov dword ptr [ebp - 0x14], eax", "0x1002fd83"], ["0x10052a96", "add esp, 4", "0x1002fd86"], ["0x10052a99", "mov dword ptr [ebp - 4], 7", "0x1002fd89"]]}, {"orig": [["0x10052aa0", "mov edi, eax"], ["0x10052aa2", "mov eax, 0"], ["0x10052aa7", "test edi, edi"], ["0x10052aa9", "je 0xe"], ["0x10052aab", "push 3"], ["0x10052aad", "mov ecx, edi"]], "recomp": [["0x1002fd90", "mov esi, eax"], ["0x1002fd92", "mov eax, 0"], ["0x1002fd97", "test esi, esi"], ["0x1002fd99", "je 0xe"], ["0x1002fd9b", "push 3"], ["0x1002fd9d", "mov ecx, esi"]]}, {"both": [["0x10052aaf", "push '\\\\lego\\\\scripts\\\\race\\\\jetracer' (STRING)", "0x1002fd9f"], ["0x10052ab4", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fda4"], ["0x10052ab9", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fda9"], ["0x10052ac0", "push 4", "0x1002fdb0"], ["0x10052ac2", "mov dword ptr [g_jetracerScript (DATA)], eax", "0x1002fdb2"], ["0x10052ac7", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fdb7"], ["0x10052acc", "mov dword ptr [ebp - 0x10], eax", "0x1002fdbc"], ["0x10052acf", "add esp, 4", "0x1002fdbf"], ["0x10052ad2", "mov dword ptr [ebp - 4], 8", "0x1002fdc2"]]}, {"orig": [["0x10052ad9", "mov esi, eax"], ["0x10052adb", "mov eax, 0"], ["0x10052ae0", "test esi, esi"], ["0x10052ae2", "je 0xe"], ["0x10052ae4", "push 3"], ["0x10052ae6", "mov ecx, esi"]], "recomp": [["0x1002fdc9", "mov edi, eax"], ["0x1002fdcb", "mov eax, 0"], ["0x1002fdd0", "test edi, edi"], ["0x1002fdd2", "je 0xe"], ["0x1002fdd4", "push 3"], ["0x1002fdd6", "mov ecx, edi"]]}, {"both": [["0x10052ae8", "push '\\\\lego\\\\scripts\\\\isle\\\\isle' (STRING)", "0x1002fdd8"], ["0x10052aed", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fddd"], ["0x10052af2", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fde2"], ["0x10052af9", "push 4", "0x1002fde9"], ["0x10052afb", "mov dword ptr [g_isleScript (DATA)], eax", "0x1002fdeb"], ["0x10052b00", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fdf0"], ["0x10052b05", "mov dword ptr [ebp - 0x14], eax", "0x1002fdf5"], ["0x10052b08", "add esp, 4", "0x1002fdf8"], ["0x10052b0b", "mov dword ptr [ebp - 4], 9", "0x1002fdfb"]]}, {"orig": [["0x10052b12", "mov edi, eax"], ["0x10052b14", "mov eax, 0"], ["0x10052b19", "test edi, edi"], ["0x10052b1b", "je 0xe"], ["0x10052b1d", "push 3"], ["0x10052b1f", "mov ecx, edi"]], "recomp": [["0x1002fe02", "mov esi, eax"], ["0x1002fe04", "mov eax, 0"], ["0x1002fe09", "test esi, esi"], ["0x1002fe0b", "je 0xe"], ["0x1002fe0d", "push 3"], ["0x1002fe0f", "mov ecx, esi"]]}, {"both": [["0x10052b21", "push '\\\\lego\\\\scripts\\\\infocntr\\\\elevbott' (STRING)", "0x1002fe11"], ["0x10052b26", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fe16"], ["0x10052b2b", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fe1b"], ["0x10052b32", "push 4", "0x1002fe22"], ["0x10052b34", "mov dword ptr [g_elevbottScript (DATA)], eax", "0x1002fe24"], ["0x10052b39", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fe29"], ["0x10052b3e", "mov dword ptr [ebp - 0x10], eax", "0x1002fe2e"], ["0x10052b41", "add esp, 4", "0x1002fe31"], ["0x10052b44", "mov dword ptr [ebp - 4], 0xa", "0x1002fe34"]]}, {"orig": [["0x10052b4b", "mov esi, eax"], ["0x10052b4d", "mov eax, 0"], ["0x10052b52", "test esi, esi"], ["0x10052b54", "je 0xe"], ["0x10052b56", "push 3"], ["0x10052b58", "mov ecx, esi"]], "recomp": [["0x1002fe3b", "mov edi, eax"], ["0x1002fe3d", "mov eax, 0"], ["0x1002fe42", "test edi, edi"], ["0x1002fe44", "je 0xe"], ["0x1002fe46", "push 3"], ["0x1002fe48", "mov ecx, edi"]]}, {"both": [["0x10052b5a", "push '\\\\lego\\\\scripts\\\\infocntr\\\\infodoor' (STRING)", "0x1002fe4a"], ["0x10052b5f", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fe4f"], ["0x10052b64", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fe54"], ["0x10052b6b", "push 4", "0x1002fe5b"], ["0x10052b6d", "mov dword ptr [g_infodoorScript (DATA)], eax", "0x1002fe5d"], ["0x10052b72", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fe62"], ["0x10052b77", "mov dword ptr [ebp - 0x14], eax", "0x1002fe67"], ["0x10052b7a", "add esp, 4", "0x1002fe6a"], ["0x10052b7d", "mov dword ptr [ebp - 4], 0xb", "0x1002fe6d"]]}, {"orig": [["0x10052b84", "mov edi, eax"], ["0x10052b86", "mov eax, 0"], ["0x10052b8b", "test edi, edi"], ["0x10052b8d", "je 0xe"], ["0x10052b8f", "push 3"], ["0x10052b91", "mov ecx, edi"]], "recomp": [["0x1002fe74", "mov esi, eax"], ["0x1002fe76", "mov eax, 0"], ["0x1002fe7b", "test esi, esi"], ["0x1002fe7d", "je 0xe"], ["0x1002fe7f", "push 3"], ["0x1002fe81", "mov ecx, esi"]]}, {"both": [["0x10052b93", "push '\\\\lego\\\\scripts\\\\infocntr\\\\infomain' (STRING)", "0x1002fe83"], ["0x10052b98", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fe88"], ["0x10052b9d", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fe8d"], ["0x10052ba4", "push 4", "0x1002fe94"], ["0x10052ba6", "mov dword ptr [g_infomainScript (DATA)], eax", "0x1002fe96"], ["0x10052bab", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fe9b"], ["0x10052bb0", "mov dword ptr [ebp - 0x10], eax", "0x1002fea0"], ["0x10052bb3", "add esp, 4", "0x1002fea3"], ["0x10052bb6", "mov dword ptr [ebp - 4], 0xc", "0x1002fea6"]]}, {"orig": [["0x10052bbd", "mov esi, eax"], ["0x10052bbf", "mov eax, 0"], ["0x10052bc4", "test esi, esi"], ["0x10052bc6", "je 0xe"], ["0x10052bc8", "push 3"], ["0x10052bca", "mov ecx, esi"]], "recomp": [["0x1002fead", "mov edi, eax"], ["0x1002feaf", "mov eax, 0"], ["0x1002feb4", "test edi, edi"], ["0x1002feb6", "je 0xe"], ["0x1002feb8", "push 3"], ["0x1002feba", "mov ecx, edi"]]}, {"both": [["0x10052bcc", "push '\\\\lego\\\\scripts\\\\infocntr\\\\infoscor' (STRING)", "0x1002febc"], ["0x10052bd1", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fec1"], ["0x10052bd6", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002fec6"], ["0x10052bdd", "push 4", "0x1002fecd"], ["0x10052bdf", "mov dword ptr [g_infoscorScript (DATA)], eax", "0x1002fecf"], ["0x10052be4", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fed4"], ["0x10052be9", "mov dword ptr [ebp - 0x14], eax", "0x1002fed9"], ["0x10052bec", "add esp, 4", "0x1002fedc"], ["0x10052bef", "mov dword ptr [ebp - 4], 0xd", "0x1002fedf"]]}, {"orig": [["0x10052bf6", "mov edi, eax"], ["0x10052bf8", "mov eax, 0"], ["0x10052bfd", "test edi, edi"], ["0x10052bff", "je 0xe"], ["0x10052c01", "push 3"], ["0x10052c03", "mov ecx, edi"]], "recomp": [["0x1002fee6", "mov esi, eax"], ["0x1002fee8", "mov eax, 0"], ["0x1002feed", "test esi, esi"], ["0x1002feef", "je 0xe"], ["0x1002fef1", "push 3"], ["0x1002fef3", "mov ecx, esi"]]}, {"both": [["0x10052c05", "push '\\\\lego\\\\scripts\\\\infocntr\\\\regbook' (STRING)", "0x1002fef5"], ["0x10052c0a", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002fefa"], ["0x10052c0f", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002feff"], ["0x10052c16", "push 4", "0x1002ff06"], ["0x10052c18", "mov dword ptr [g_regbookScript (DATA)], eax", "0x1002ff08"], ["0x10052c1d", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002ff0d"], ["0x10052c22", "mov dword ptr [ebp - 0x10], eax", "0x1002ff12"], ["0x10052c25", "add esp, 4", "0x1002ff15"], ["0x10052c28", "mov dword ptr [ebp - 4], 0xe", "0x1002ff18"]]}, {"orig": [["0x10052c2f", "mov esi, eax"], ["0x10052c31", "mov eax, 0"], ["0x10052c36", "test esi, esi"], ["0x10052c38", "je 0xe"], ["0x10052c3a", "push 3"], ["0x10052c3c", "mov ecx, esi"]], "recomp": [["0x1002ff1f", "mov edi, eax"], ["0x1002ff21", "mov eax, 0"], ["0x1002ff26", "test edi, edi"], ["0x1002ff28", "je 0xe"], ["0x1002ff2a", "push 3"], ["0x1002ff2c", "mov ecx, edi"]]}, {"both": [["0x10052c3e", "push '\\\\lego\\\\scripts\\\\infocntr\\\\histbook' (STRING)", "0x1002ff2e"], ["0x10052c43", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002ff33"], ["0x10052c48", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002ff38"], ["0x10052c4f", "push 4", "0x1002ff3f"], ["0x10052c51", "mov dword ptr [g_histbookScript (DATA)], eax", "0x1002ff41"], ["0x10052c56", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002ff46"], ["0x10052c5b", "mov dword ptr [ebp - 0x14], eax", "0x1002ff4b"], ["0x10052c5e", "add esp, 4", "0x1002ff4e"], ["0x10052c61", "mov dword ptr [ebp - 4], 0xf", "0x1002ff51"]]}, {"orig": [["0x10052c68", "mov edi, eax"], ["0x10052c6a", "mov eax, 0"], ["0x10052c6f", "test edi, edi"], ["0x10052c71", "je 0xe"], ["0x10052c73", "push 3"], ["0x10052c75", "mov ecx, edi"]], "recomp": [["0x1002ff58", "mov esi, eax"], ["0x1002ff5a", "mov eax, 0"], ["0x1002ff5f", "test esi, esi"], ["0x1002ff61", "je 0xe"], ["0x1002ff63", "push 3"], ["0x1002ff65", "mov ecx, esi"]]}, {"both": [["0x10052c77", "push '\\\\lego\\\\scripts\\\\hospital\\\\hospital' (STRING)", "0x1002ff67"], ["0x10052c7c", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002ff6c"], ["0x10052c81", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002ff71"], ["0x10052c88", "push 4", "0x1002ff78"], ["0x10052c8a", "mov dword ptr [g_hospitalScript (DATA)], eax", "0x1002ff7a"], ["0x10052c8f", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002ff7f"], ["0x10052c94", "mov dword ptr [ebp - 0x10], eax", "0x1002ff84"], ["0x10052c97", "add esp, 4", "0x1002ff87"], ["0x10052c9a", "mov dword ptr [ebp - 4], 0x10", "0x1002ff8a"]]}, {"orig": [["0x10052ca1", "mov esi, eax"], ["0x10052ca3", "mov eax, 0"], ["0x10052ca8", "test esi, esi"], ["0x10052caa", "je 0xe"], ["0x10052cac", "push 3"], ["0x10052cae", "mov ecx, esi"]], "recomp": [["0x1002ff91", "mov edi, eax"], ["0x1002ff93", "mov eax, 0"], ["0x1002ff98", "test edi, edi"], ["0x1002ff9a", "je 0xe"], ["0x1002ff9c", "push 3"], ["0x1002ff9e", "mov ecx, edi"]]}, {"both": [["0x10052cb0", "push '\\\\lego\\\\scripts\\\\police\\\\police' (STRING)", "0x1002ffa0"], ["0x10052cb5", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002ffa5"], ["0x10052cba", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002ffaa"], ["0x10052cc1", "push 4", "0x1002ffb1"], ["0x10052cc3", "mov dword ptr [g_policeScript (DATA)], eax", "0x1002ffb3"], ["0x10052cc8", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002ffb8"], ["0x10052ccd", "mov dword ptr [ebp - 0x14], eax", "0x1002ffbd"], ["0x10052cd0", "add esp, 4", "0x1002ffc0"], ["0x10052cd3", "mov dword ptr [ebp - 4], 0x11", "0x1002ffc3"]]}, {"orig": [["0x10052cda", "mov edi, eax"], ["0x10052cdc", "mov eax, 0"], ["0x10052ce1", "test edi, edi"], ["0x10052ce3", "je 0xe"], ["0x10052ce5", "push 3"], ["0x10052ce7", "mov ecx, edi"]], "recomp": [["0x1002ffca", "mov esi, eax"], ["0x1002ffcc", "mov eax, 0"], ["0x1002ffd1", "test esi, esi"], ["0x1002ffd3", "je 0xe"], ["0x1002ffd5", "push 3"], ["0x1002ffd7", "mov ecx, esi"]]}, {"both": [["0x10052ce9", "push '\\\\lego\\\\scripts\\\\garage\\\\garage' (STRING)", "0x1002ffd9"], ["0x10052cee", "call MxAtomId::MxAtomId (FUNCTION)", "0x1002ffde"], ["0x10052cf3", "mov dword ptr [ebp - 4], 0xffffffff", "0x1002ffe3"], ["0x10052cfa", "push 4", "0x1002ffea"], ["0x10052cfc", "mov dword ptr [g_garageScript (DATA)], eax", "0x1002ffec"], ["0x10052d01", "call ??2@YAPAXI@Z (FUNCTION)", "0x1002fff1"], ["0x10052d06", "mov dword ptr [ebp - 0x10], eax", "0x1002fff6"], ["0x10052d09", "add esp, 4", "0x1002fff9"], ["0x10052d0c", "mov dword ptr [ebp - 4], 0x12", "0x1002fffc"]]}, {"orig": [["0x10052d13", "mov esi, eax"], ["0x10052d15", "mov eax, 0"], ["0x10052d1a", "test esi, esi"], ["0x10052d1c", "je 0xe"], ["0x10052d1e", "push 3"], ["0x10052d20", "mov ecx, esi"]], "recomp": [["0x10030003", "mov edi, eax"], ["0x10030005", "mov eax, 0"], ["0x1003000a", "test edi, edi"], ["0x1003000c", "je 0xe"], ["0x1003000e", "push 3"], ["0x10030010", "mov ecx, edi"]]}, {"both": [["0x10052d22", "push '\\\\lego\\\\scripts\\\\act2\\\\act2main' (STRING)", "0x10030012"], ["0x10052d27", "call MxAtomId::MxAtomId (FUNCTION)", "0x10030017"], ["0x10052d2c", "mov dword ptr [ebp - 4], 0xffffffff", "0x1003001c"], ["0x10052d33", "push 4", "0x10030023"], ["0x10052d35", "mov dword ptr [g_act2mainScript (DATA)], eax", "0x10030025"], ["0x10052d3a", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003002a"], ["0x10052d3f", "mov dword ptr [ebp - 0x14], eax", "0x1003002f"], ["0x10052d42", "add esp, 4", "0x10030032"], ["0x10052d45", "mov dword ptr [ebp - 4], 0x13", "0x10030035"]]}, {"orig": [["0x10052d4c", "mov edi, eax"], ["0x10052d4e", "mov eax, 0"], ["0x10052d53", "test edi, edi"], ["0x10052d55", "je 0xe"], ["0x10052d57", "push 3"], ["0x10052d59", "mov ecx, edi"]], "recomp": [["0x1003003c", "mov esi, eax"], ["0x1003003e", "mov eax, 0"], ["0x10030043", "test esi, esi"], ["0x10030045", "je 0xe"], ["0x10030047", "push 3"], ["0x10030049", "mov ecx, esi"]]}, {"both": [["0x10052d5b", "push '\\\\lego\\\\scripts\\\\act3\\\\act3' (STRING)", "0x1003004b"], ["0x10052d60", "call MxAtomId::MxAtomId (FUNCTION)", "0x10030050"], ["0x10052d65", "mov dword ptr [ebp - 4], 0xffffffff", "0x10030055"], ["0x10052d6c", "push 4", "0x1003005c"], ["0x10052d6e", "mov dword ptr [g_act3Script (DATA)], eax", "0x1003005e"], ["0x10052d73", "call ??2@YAPAXI@Z (FUNCTION)", "0x10030063"], ["0x10052d78", "mov dword ptr [ebp - 0x10], eax", "0x10030068"], ["0x10052d7b", "add esp, 4", "0x1003006b"], ["0x10052d7e", "mov dword ptr [ebp - 4], 0x14", "0x1003006e"]]}, {"orig": [["0x10052d85", "mov esi, eax"], ["0x10052d87", "mov eax, 0"], ["0x10052d8c", "test esi, esi"], ["0x10052d8e", "je 0xe"], ["0x10052d90", "push 3"], ["0x10052d92", "mov ecx, esi"]], "recomp": [["0x10030075", "mov edi, eax"], ["0x10030077", "mov eax, 0"], ["0x1003007c", "test edi, edi"], ["0x1003007e", "je 0xe"], ["0x10030080", "push 3"], ["0x10030082", "mov ecx, edi"]]}, {"both": [["0x10052d94", "push '\\\\lego\\\\scripts\\\\isle\\\\jukebox' (STRING)", "0x10030084"], ["0x10052d99", "call MxAtomId::MxAtomId (FUNCTION)", "0x10030089"], ["0x10052d9e", "mov dword ptr [ebp - 4], 0xffffffff", "0x1003008e"], ["0x10052da5", "push 4", "0x10030095"], ["0x10052da7", "mov dword ptr [g_jukeboxScript (DATA)], eax", "0x10030097"], ["0x10052dac", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003009c"], ["0x10052db1", "mov dword ptr [ebp - 0x14], eax", "0x100300a1"], ["0x10052db4", "add esp, 4", "0x100300a4"], ["0x10052db7", "mov dword ptr [ebp - 4], 0x15", "0x100300a7"]]}, {"orig": [["0x10052dbe", "mov edi, eax"], ["0x10052dc0", "mov eax, 0"], ["0x10052dc5", "test edi, edi"], ["0x10052dc7", "je 0xe"], ["0x10052dc9", "push 3"], ["0x10052dcb", "mov ecx, edi"]], "recomp": [["0x100300ae", "mov esi, eax"], ["0x100300b0", "mov eax, 0"], ["0x100300b5", "test esi, esi"], ["0x100300b7", "je 0xe"], ["0x100300b9", "push 3"], ["0x100300bb", "mov ecx, esi"]]}, {"both": [["0x10052dcd", "push '\\\\lego\\\\scripts\\\\isle\\\\pz5' (STRING)", "0x100300bd"], ["0x10052dd2", "call MxAtomId::MxAtomId (FUNCTION)", "0x100300c2"], ["0x10052dd7", "mov dword ptr [ebp - 4], 0xffffffff", "0x100300c7"], ["0x10052dde", "push 4", "0x100300ce"], ["0x10052de0", "mov dword ptr [g_pz5Script (DATA)], eax", "0x100300d0"], ["0x10052de5", "call ??2@YAPAXI@Z (FUNCTION)", "0x100300d5"], ["0x10052dea", "mov dword ptr [ebp - 0x10], eax", "0x100300da"], ["0x10052ded", "add esp, 4", "0x100300dd"], ["0x10052df0", "mov dword ptr [ebp - 4], 0x16", "0x100300e0"]]}, {"orig": [["0x10052df7", "mov esi, eax"], ["0x10052df9", "mov eax, 0"], ["0x10052dfe", "test esi, esi"], ["0x10052e00", "je 0xe"], ["0x10052e02", "push 3"], ["0x10052e04", "mov ecx, esi"]], "recomp": [["0x100300e7", "mov edi, eax"], ["0x100300e9", "mov eax, 0"], ["0x100300ee", "test edi, edi"], ["0x100300f0", "je 0xe"], ["0x100300f2", "push 3"], ["0x100300f4", "mov ecx, edi"]]}, {"both": [["0x10052e06", "push '\\\\lego\\\\scripts\\\\intro' (STRING)", "0x100300f6"], ["0x10052e0b", "call MxAtomId::MxAtomId (FUNCTION)", "0x100300fb"], ["0x10052e10", "mov dword ptr [ebp - 4], 0xffffffff", "0x10030100"], ["0x10052e17", "push 4", "0x10030107"], ["0x10052e19", "mov dword ptr [g_introScript (DATA)], eax", "0x10030109"], ["0x10052e1e", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003010e"], ["0x10052e23", "mov dword ptr [ebp - 0x14], eax", "0x10030113"], ["0x10052e26", "add esp, 4", "0x10030116"], ["0x10052e29", "mov dword ptr [ebp - 4], 0x17", "0x10030119"]]}, {"orig": [["0x10052e30", "mov edi, eax"], ["0x10052e32", "mov eax, 0"], ["0x10052e37", "test edi, edi"], ["0x10052e39", "je 0xe"], ["0x10052e3b", "push 3"], ["0x10052e3d", "mov ecx, edi"]], "recomp": [["0x10030120", "mov esi, eax"], ["0x10030122", "mov eax, 0"], ["0x10030127", "test esi, esi"], ["0x10030129", "je 0xe"], ["0x1003012b", "push 3"], ["0x1003012d", "mov ecx, esi"]]}, {"both": [["0x10052e3f", "push '\\\\lego\\\\scripts\\\\test\\\\test' (STRING)", "0x1003012f"], ["0x10052e44", "call MxAtomId::MxAtomId (FUNCTION)", "0x10030134"], ["0x10052e49", "mov dword ptr [ebp - 4], 0xffffffff", "0x10030139"], ["0x10052e50", "push 4", "0x10030140"], ["0x10052e52", "mov dword ptr [g_testScript (DATA)], eax", "0x10030142"], ["0x10052e57", "call ??2@YAPAXI@Z (FUNCTION)", "0x10030147"], ["0x10052e5c", "mov dword ptr [ebp - 0x10], eax", "0x1003014c"], ["0x10052e5f", "add esp, 4", "0x1003014f"], ["0x10052e62", "mov dword ptr [ebp - 4], 0x18", "0x10030152"]]}, {"orig": [["0x10052e69", "mov esi, eax"], ["0x10052e6b", "mov eax, 0"], ["0x10052e70", "test esi, esi"], ["0x10052e72", "je 0xe"], ["0x10052e74", "push 3"], ["0x10052e76", "mov ecx, esi"]], "recomp": [["0x10030159", "mov edi, eax"], ["0x1003015b", "mov eax, 0"], ["0x10030160", "test edi, edi"], ["0x10030162", "je 0xe"], ["0x10030164", "push 3"], ["0x10030166", "mov ecx, edi"]]}, {"both": [["0x10052e78", "push '\\\\lego\\\\scripts\\\\isle\\\\jukeboxw' (STRING)", "0x10030168"], ["0x10052e7d", "call MxAtomId::MxAtomId (FUNCTION)", "0x1003016d"], ["0x10052e82", "mov dword ptr [ebp - 4], 0xffffffff", "0x10030172"], ["0x10052e89", "push 4", "0x10030179"], ["0x10052e8b", "mov dword ptr [g_jukeboxwScript (DATA)], eax", "0x1003017b"], ["0x10052e90", "call ??2@YAPAXI@Z (FUNCTION)", "0x10030180"], ["0x10052e95", "mov dword ptr [ebp - 0x14], eax", "0x10030185"], ["0x10052e98", "add esp, 4", "0x10030188"], ["0x10052e9b", "mov dword ptr [ebp - 4], 0x19", "0x1003018b"]]}, {"orig": [["0x10052ea2", "mov edi, eax"], ["0x10052ea4", "mov eax, 0"], ["0x10052ea9", "test edi, edi"], ["0x10052eab", "je 0xe"], ["0x10052ead", "push 3"], ["0x10052eaf", "mov ecx, edi"]], "recomp": [["0x10030192", "mov esi, eax"], ["0x10030194", "mov eax, 0"], ["0x10030199", "test esi, esi"], ["0x1003019b", "je 0xe"], ["0x1003019d", "push 3"], ["0x1003019f", "mov ecx, esi"]]}, {"both": [["0x10052eb1", "push '\\\\lego\\\\scripts\\\\sndanim' (STRING)", "0x100301a1"], ["0x10052eb6", "call MxAtomId::MxAtomId (FUNCTION)", "0x100301a6"], ["0x10052ebb", "mov dword ptr [ebp - 4], 0xffffffff", "0x100301ab"], ["0x10052ec2", "push 4", "0x100301b2"], ["0x10052ec4", "mov dword ptr [g_sndAnimScript (DATA)], eax", "0x100301b4"], ["0x10052ec9", "call ??2@YAPAXI@Z (FUNCTION)", "0x100301b9"], ["0x10052ece", "mov dword ptr [ebp - 0x10], eax", "0x100301be"], ["0x10052ed1", "add esp, 4", "0x100301c1"], ["0x10052ed4", "mov dword ptr [ebp - 4], 0x1a", "0x100301c4"]]}, {"orig": [["0x10052edb", "mov esi, eax"], ["0x10052edd", "mov eax, 0"], ["0x10052ee2", "test esi, esi"], ["0x10052ee4", "je 0xe"], ["0x10052ee6", "push 3"], ["0x10052ee8", "mov ecx, esi"]], "recomp": [["0x100301cb", "mov edi, eax"], ["0x100301cd", "mov eax, 0"], ["0x100301d2", "test edi, edi"], ["0x100301d4", "je 0xe"], ["0x100301d6", "push 3"], ["0x100301d8", "mov ecx, edi"]]}, {"both": [["0x10052eea", "push '\\\\lego\\\\scripts\\\\credits' (STRING)", "0x100301da"], ["0x10052eef", "call MxAtomId::MxAtomId (FUNCTION)", "0x100301df"], ["0x10052ef4", "mov dword ptr [ebp - 4], 0xffffffff", "0x100301e4"], ["0x10052efb", "push 4", "0x100301eb"], ["0x10052efd", "mov dword ptr [g_creditsScript (DATA)], eax", "0x100301ed"], ["0x10052f02", "call ??2@YAPAXI@Z (FUNCTION)", "0x100301f2"], ["0x10052f07", "mov dword ptr [ebp - 0x14], eax", "0x100301f7"], ["0x10052f0a", "add esp, 4", "0x100301fa"], ["0x10052f0d", "mov dword ptr [ebp - 4], 0x1b", "0x100301fd"]]}, {"orig": [["0x10052f14", "mov edi, eax"], ["0x10052f16", "mov eax, 0"], ["0x10052f1b", "test edi, edi"], ["0x10052f1d", "je 0xe"], ["0x10052f1f", "push 3"], ["0x10052f21", "mov ecx, edi"]], "recomp": [["0x10030204", "mov esi, eax"], ["0x10030206", "mov eax, 0"], ["0x1003020b", "test esi, esi"], ["0x1003020d", "je 0xe"], ["0x1003020f", "push 3"], ["0x10030211", "mov ecx, esi"]]}, {"both": [["0x10052f23", "push '\\\\lego\\\\scripts\\\\nocd' (STRING)", "0x10030213"], ["0x10052f28", "call MxAtomId::MxAtomId (FUNCTION)", "0x10030218"], ["0x10052f2d", "mov dword ptr [ebp - 4], 0xffffffff", "0x1003021d"], ["0x10052f34", "pop edi", "0x10030224"], ["0x10052f35", "mov dword ptr [g_nocdSourceName (DATA)], eax", "0x10030225"], ["0x10052f3a", "mov eax, dword ptr [ebp - 0xc]", "0x1003022a"], ["0x10052f3d", "pop esi", "0x1003022d"], ["0x10052f3e", "mov dword ptr fs:[0], eax", "0x1003022e"], ["0x10052f44", "mov esp, ebp", "0x10030234"], ["0x10052f46", "pop ebp", "0x10030236"]]}]]]}, {"address": "0x100530c0", "recomp": "0x100303b0", "name": "DestroyScripts", "matching": 1.0, "diff": []}, {"address": "0x10053430", "recomp": "0x10030720", "name": "GetNoCD_SourceName", "matching": 1.0, "diff": []}, {"address": "0x10053440", "recomp": "0x10023590", "name": "LegoEntityPresenter::LegoEntityPresenter", "matching": 1.0, "diff": []}, {"address": "0x100534b0", "recomp": "0x10023600", "name": "LegoEntityPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100534c0", "recomp": "0x10023610", "name": "LegoEntityPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x100535a0", "recomp": "0x100236f0", "name": "LegoEntityPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100535c0", "recomp": "0x10023710", "name": "LegoEntityPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100535d0", "recomp": "0x10023720", "name": "LegoEntityPresenter::~LegoEntityPresenter", "matching": 1.0, "diff": []}, {"address": "0x10053630", "recomp": "0x10023780", "name": "LegoEntityPresenter::SetEntity", "matching": 1.0, "diff": []}, {"address": "0x10053640", "recomp": "0x10023790", "name": "LegoEntityPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10053670", "recomp": "0x100237c0", "name": "LegoEntityPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10053680", "recomp": "0x100237d0", "name": "LegoEntityPresenter::StartAction", "matching": 1.0, "diff": []}, {"address": "0x100536c0", "recomp": "0x10023810", "name": "LegoEntityPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x10053720", "recomp": "0x10023870", "name": "LegoEntityPresenter::RepeatingTickle", "matching": 1.0, "diff": []}, {"address": "0x10053730", "recomp": "0x10023880", "name": "LegoEntityPresenter::SetEntityLocation", "matching": 1.0, "diff": []}, {"address": "0x10053750", "recomp": "0x100238a0", "name": "LegoEntityPresenter::ParseExtra", "matching": 1.0, "diff": []}, {"address": "0x10054ac0", "recomp": "0x100246e0", "name": "LegoNavController::LegoNavController", "matching": 1.0, "diff": []}, {"address": "0x10054b80", "recomp": "0x100247a0", "name": "LegoNavController::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10054b90", "recomp": "0x100247b0", "name": "LegoNavController::IsA", "matching": 1.0, "diff": []}, {"address": "0x10054c10", "recomp": "0x10024830", "name": "LegoNavController::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10054c30", "recomp": "0x10024850", "name": "LegoNavController::~LegoNavController", "matching": 1.0, "diff": []}, {"address": "0x10054ca0", "recomp": "0x100248c0", "name": "LegoNavController::SetControlMax", "matching": 1.0, "diff": []}, {"address": "0x10054cd0", "recomp": "0x100248f0", "name": "LegoNavController::SetToDefaultParams", "matching": 1.0, "diff": []}, {"address": "0x10054d40", "recomp": "0x10024960", "name": "LegoNavController::GetDefaults", "matching": 1.0, "diff": []}, {"address": "0x10054dd0", "recomp": "0x100249f0", "name": "LegoNavController::SetDefaults", "matching": 1.0, "diff": []}, {"address": "0x10054e40", "recomp": "0x10024a60", "name": "LegoNavController::SetTargets", "matching": 1.0, "diff": []}, {"address": "0x10054f10", "recomp": "0x10024b30", "name": "LegoNavController::CalculateNewTargetVel", "matching": 1.0, "diff": []}, {"address": "0x10054f90", "recomp": "0x10024bb0", "name": "LegoNavController::CalculateNewAccel", "matching": 1.0, "diff": []}, {"address": "0x10054fe0", "recomp": "0x10024c00", "name": "LegoNavController::CalculateNewVel", "matching": 1.0, "diff": []}, {"address": "0x10055080", "recomp": "0x10024ca0", "name": "LegoNavController::CalculateNewPosDir", "matching": 0.9661016949152542, "diff": [["@@ -0x10055202,22 +0x10024e22,22 @@", [{"both": [["0x10055202", "fld dword ptr [ecx]", "0x10024e22"], ["0x10055204", "fadd dword ptr [ebx]", "0x10024e24"], ["0x10055206", "mov ecx, dword ptr [edx + 4]", "0x10024e26"], ["0x10055209", "fstp dword ptr [ecx]", "0x10024e29"], ["0x1005520b", "mov ebx, dword ptr [eax + 4]", "0x10024e2b"], ["0x1005520e", "mov ecx, dword ptr [esp + 0x1c]", "0x10024e2e"], ["0x10055212", "fld dword ptr [ebx + 4]", "0x10024e32"], ["0x10055215", "fadd dword ptr [ecx + 4]", "0x10024e35"], ["0x10055218", "mov ebx, dword ptr [edx + 4]", "0x10024e38"], ["0x1005521b", "fstp dword ptr [ebx + 4]", "0x10024e3b"]]}, {"orig": [["0x1005521e", "mov ecx, dword ptr [esp + 0x1c]"], ["0x10055222", "mov ebx, dword ptr [eax + 4]"]], "recomp": [["0x10024e3e", "mov ecx, dword ptr [eax + 4]"], ["0x10024e41", "mov ebx, dword ptr [esp + 0x1c]"]]}, {"both": [["0x10055225", "fld dword ptr [ecx + 8]", "0x10024e45"], ["0x10055228", "fadd dword ptr [ebx + 8]", "0x10024e48"], ["0x1005522b", "mov ecx, dword ptr [edx + 4]", "0x10024e4b"], ["0x1005522e", "fstp dword ptr [ecx + 8]", "0x10024e4e"], ["0x10055231", "cmp byte ptr [esi + 0x54], 0", "0x10024e51"], ["0x10055235", "je 0x8", "0x10024e55"], ["0x10055237", "fld dword ptr [edi]", "0x10024e57"], ["0x10055239", "fmul dword ptr [esp + 0x14]", "0x10024e59"], ["0x1005523d", "jmp 0x5", "0x10024e5d"], ["0x1005523f", "fld dword ptr [esi + 0x50]", "0x10024e5f"]]}]], ["@@ -0x10055396,24 +0x10024fb6,24 @@", [{"both": [["0x10055396", "mov ebx, dword ptr [esp + 0x1c]", "0x10024fb6"], ["0x1005539a", "mov eax, dword ptr [ebp + 4]", "0x10024fba"], ["0x1005539d", "mov edi, dword ptr [eax + 4]", "0x10024fbd"], ["0x100553a0", "mov dword ptr [ebx + 4], edi", "0x10024fc0"], ["0x100553a3", "mov ebx, dword ptr [esp + 0x1c]", "0x10024fc3"], ["0x100553a7", "mov eax, dword ptr [ebp + 4]", "0x10024fc7"], ["0x100553aa", "mov ebp, dword ptr [eax + 8]", "0x10024fca"], ["0x100553ad", "mov dword ptr [ebx + 8], ebp", "0x10024fcd"], ["0x100553b0", "test dword ptr [esi + 0x64], 0x7fffffff", "0x10024fd0"], ["0x100553b7", "je 0x33", "0x10024fd7"]]}, {"orig": [], "recomp": [["0x10024fd9", "fld dword ptr [esi + 0x64]"]]}, {"both": [["0x100553b9", "mov eax, dword ptr [esp + 0x1c]", "0x10024fdc"], ["0x100553bd", "mov ebx, dword ptr [esp + 0x30]", "0x10024fe0"]]}, {"orig": [["0x100553c1", "fld dword ptr [eax]"], ["0x100553c3", "fmul dword ptr [esi + 0x64]"]], "recomp": [["0x10024fe4", "fmul dword ptr [eax]"]]}, {"both": [["0x100553c6", "fstp dword ptr [ebx]", "0x10024fe6"], ["0x100553c8", "mov eax, dword ptr [esp + 0x1c]", "0x10024fe8"], ["0x100553cc", "mov ebx, dword ptr [esp + 0x30]", "0x10024fec"], ["0x100553d0", "fld dword ptr [eax + 4]", "0x10024ff0"], ["0x100553d3", "fmul dword ptr [esi + 0x64]", "0x10024ff3"], ["0x100553d6", "fstp dword ptr [ebx + 4]", "0x10024ff6"], ["0x100553d9", "mov eax, dword ptr [esp + 0x1c]", "0x10024ff9"], ["0x100553dd", "mov ebx, dword ptr [esp + 0x30]", "0x10024ffd"], ["0x100553e1", "fld dword ptr [eax + 8]", "0x10025001"], ["0x100553e4", "fmul dword ptr [esi + 0x64]", "0x10025004"]]}]], ["@@ -0x10055462,31 +0x10025082,31 @@", [{"both": [["0x10055462", "fcos ", "0x10025082"], ["0x10055464", "fstp dword ptr [esp + 0x74]", "0x10025084"], ["0x10055468", "fsin ", "0x10025088"], ["0x1005546a", "mov edx, dword ptr [ecx + 4]", "0x1002508a"], ["0x1005546d", "fst dword ptr [esp + 0x6c]", "0x1002508d"], ["0x10055471", "fmul dword ptr [eax + 8]", "0x10025091"], ["0x10055474", "fld dword ptr [eax]", "0x10025094"], ["0x10055476", "fmul dword ptr [esp + 0x74]", "0x10025096"], ["0x1005547a", "faddp st(1)", "0x1002509a"], ["0x1005547c", "fstp dword ptr [edx]", "0x1002509c"]]}, {"orig": [], "recomp": [["0x1002509e", "mov eax, dword ptr [esp + 0x1c]"], ["0x100250a2", "mov edx, dword ptr [ecx + 4]"], ["0x100250a5", "mov ebx, dword ptr [eax + 4]"], ["0x100250a8", "mov dword ptr [edx + 4], ebx"], ["0x100250ab", "mov eax, dword ptr [esp + 0x1c]"], ["0x100250af", "mov edx, dword ptr [ecx + 4]"], ["0x100250b2", "fld dword ptr [eax + 8]"], ["0x100250b5", "fmul dword ptr [esp + 0x74]"]]}, {"both": [["0x1005547e", "fld dword ptr [esp + 0x6c]", "0x100250b9"], ["0x10055482", "fchs ", "0x100250bd"]]}, {"orig": [["0x10055484", "mov eax, dword ptr [esp + 0x1c]"], ["0x10055488", "mov edx, dword ptr [ecx + 4]"], ["0x1005548b", "mov ebx, dword ptr [eax + 4]"], ["0x1005548e", "mov dword ptr [edx + 4], ebx"], ["0x10055491", "mov edx, dword ptr [ecx + 4]"], ["0x10055494", "mov eax, dword ptr [esp + 0x1c]"]], "recomp": []}, {"both": [["0x10055498", "fmul dword ptr [eax]", "0x100250bf"]]}, {"orig": [["0x1005549a", "fld dword ptr [eax + 8]"], ["0x1005549d", "fmul dword ptr [esp + 0x74]"]], "recomp": []}, {"both": [["0x100554a1", "faddp st(1)", "0x100250c1"], ["0x100554a3", "fstp dword ptr [edx + 8]", "0x100250c3"], ["0x100554a6", "jmp 0x25", "0x100250c6"], ["0x100554a8", "mov eax, dword ptr [esp + 0x1c]", "0x100250c8"], ["0x100554ac", "mov edx, dword ptr [ecx + 4]", "0x100250cc"], ["0x100554af", "mov ebx, dword ptr [eax]", "0x100250cf"], ["0x100554b1", "mov dword ptr [edx], ebx", "0x100250d1"], ["0x100554b3", "mov edx, dword ptr [ecx + 4]", "0x100250d3"], ["0x100554b6", "mov eax, dword ptr [esp + 0x1c]", "0x100250d6"], ["0x100554ba", "mov ebx, dword ptr [eax + 4]", "0x100250da"]]}]]]}, {"address": "0x10055500", "recomp": "0x10025120", "name": "LegoNavController::UpdateCameraLocation", "matching": 0.9880952380952381, "diff": [["@@ -0x100555eb,19 +0x1002520b,19 @@", [{"both": [["0x100555eb", "push eax", "0x1002520b"], ["0x100555ec", "lea ecx, [ebp - 0x10]", "0x1002520c"], ["0x100555ef", "lea eax, [ebp - 0x20]", "0x1002520f"], ["0x100555f2", "push eax", "0x10025212"], ["0x100555f3", "push ecx", "0x10025213"], ["0x100555f4", "push ebp", "0x10025214"], ["0x100555f5", "call SoundManager (FUNCTION)", "0x10025215"], ["0x100555fa", "mov ecx, eax", "0x1002521a"], ["0x100555fc", "call LegoSoundManager::FUN_1002a410 (FUNCTION)", "0x1002521c"], ["0x10055601", "add edi, 0x60", "0x10025221"]]}, {"orig": [["0x10055604", "cmp edi, g_unk0x100f66a4 (DATA)"]], "recomp": [["0x10025224", "cmp edi, <OFFSET13>"]]}, {"both": [["0x1005560a", "jb -0xf8", "0x1002522a"], ["0x10055610", "mov eax, ebx", "0x10025230"], ["0x10055612", "pop ebp", "0x10025232"], ["0x10055613", "pop edi", "0x10025233"], ["0x10055614", "pop esi", "0x10025234"], ["0x10055615", "pop ebx", "0x10025235"], ["0x10055616", "add esp, 0x74", "0x10025236"], ["0x10055619", "ret ", "0x10025239"]]}]]]}, {"address": "0x10055620", "recomp": "0x10025240", "name": "LegoNavController::UpdateCameraLocation", "matching": 0.9736842105263158, "diff": [["@@ -0x10055629,23 +0x10025249,23 @@", [{"both": [["0x10055629", "push esi", "0x10025249"], ["0x1005562a", "push edi", "0x1002524a"], ["0x1005562b", "mov edi, dword ptr [esp + 0x84]", "0x1002524b"], ["0x10055632", "cmp edi, 0x46", "0x10025252"], ["0x10055635", "jae 0xd5", "0x10025255"], ["0x1005563b", "shl edi, 5", "0x1002525b"], ["0x1005563e", "lea eax, [esp + 0x40]", "0x1002525e"], ["0x10055642", "mov dword ptr [esp + 0x38], MxMatrix::`vftable' (VTABLE)", "0x10025262"], ["0x1005564a", "mov dword ptr [esp + 0x3c], eax", "0x1002526a"], ["0x1005564e", "call VideoManager (FUNCTION)", "0x1002526e"]]}, {"orig": [["0x10055653", "lea ebx, [edi + edi*2 + 0x100f4c74]"]], "recomp": [["0x10025273", "lea ebx, [edi + edi*2 + 0x100b9384]"]]}, {"both": [["0x1005565a", "mov esi, dword ptr [eax + 0x6c]", "0x1002527a"]]}, {"orig": [["0x1005565d", "lea eax, [edi + edi*2 + 0x100f4c80]"]], "recomp": [["0x1002527d", "lea eax, [edi + edi*2 + 0x100b9390]"]]}, {"both": [["0x10055664", "lea ecx, [edi + edi*2]", "0x10025284"], ["0x10055667", "mov edx, Vector3::`vftable' (VTABLE)", "0x10025287"], ["0x1005566c", "add ecx, <OFFSET4>", "0x1002528c"], ["0x10055672", "mov dword ptr [esp + 0x10], eax", "0x10025292"], ["0x10055676", "mov dword ptr [esp + 0xc], edx", "0x10025296"], ["0x1005567a", "lea eax, [esp + 0x38]", "0x1002529a"], ["0x1005567e", "mov dword ptr [esp + 0x18], ebx", "0x1002529e"], ["0x10055682", "mov dword ptr [esp + 0x14], edx", "0x100252a2"], ["0x10055686", "push eax", "0x100252a6"], ["0x10055687", "lea eax, [esp + 0x20]", "0x100252a7"]]}]]]}, {"address": "0x10055750", "recomp": "0x10025340", "name": "LegoNavController::ProcessJoystickInput", "matching": 0.9770992366412213, "diff": [["@@ -0x10055773,24 +0x10025363,24 @@", [{"both": [["0x10055773", "lea ebp, [esp + 0x14]", "0x10025363"], ["0x10055777", "push eax", "0x10025367"], ["0x10055778", "lea eax, [esp + 0x14]", "0x10025368"], ["0x1005577c", "push edx", "0x1002536c"], ["0x1005577d", "push ebp", "0x1002536d"], ["0x1005577e", "push eax", "0x1002536e"], ["0x1005577f", "call LegoInputManager::GetJoystickState (FUNCTION)", "0x1002536f"], ["0x10055784", "cmp eax, -1", "0x10025374"], ["0x10055787", "je 0x10e", "0x10025377"], ["0x1005578d", "mov ecx, dword ptr [esi + 0xc]", "0x1002537d"]]}, {"orig": [["0x10055790", "mov eax, dword ptr [esp + 0x14]"], ["0x10055794", "imul eax, ecx"]], "recomp": [["0x10025380", "mov edi, 0x64"], ["0x10025385", "mov eax, ecx"], ["0x10025387", "imul eax, dword ptr [esp + 0x14]"]]}, {"both": [["0x10055797", "cdq ", "0x1002538c"]]}, {"orig": [["0x10055798", "mov edi, 0x64"]], "recomp": []}, {"both": [["0x1005579d", "idiv edi", "0x1002538d"], ["0x1005579f", "mov ebp, eax", "0x1002538f"], ["0x100557a1", "mov eax, dword ptr [esi + 8]", "0x10025391"], ["0x100557a4", "imul eax, dword ptr [esp + 0x10]", "0x10025394"], ["0x100557a9", "cdq ", "0x10025399"], ["0x100557aa", "idiv edi", "0x1002539a"], ["0x100557ac", "cmp dword ptr [esp + 0x10], 0x2d", "0x1002539c"], ["0x100557b1", "mov edi, eax", "0x100253a1"], ["0x100557b3", "jle 0x29", "0x100253a3"], ["0x100557b5", "cmp dword ptr [esp + 0x10], 0x37", "0x100253a5"]]}]]]}, {"address": "0x100558b0", "recomp": "0x100254a0", "name": "LegoNavController::ProcessKeyboardInput", "matching": 0.9235668789808917, "diff": [["@@ -0x10055907,47 +0x100254f7,47 @@", [{"both": [["0x10055907", "pop ebp", "0x100254f7"], ["0x10055908", "pop edi", "0x100254f8"], ["0x10055909", "pop esi", "0x100254f9"], ["0x1005590a", "pop ebx", "0x100254fa"], ["0x1005590b", "add esp, 0x10", "0x100254fb"], ["0x1005590e", "ret ", "0x100254fe"], ["0x1005590f", "mov byte ptr [esi + 0x6c], 1", "0x100254ff"], ["0x10055913", "mov eax, dword ptr [esp + 0x18]", "0x10025503"], ["0x10055917", "and eax, 3", "0x10025507"], ["0x1005591a", "cmp eax, 1", "0x1002550a"]]}, {"orig": [["0x1005591d", "je 0x1a"]], "recomp": [["0x1002550d", "jne 0x4"], ["0x1002550f", "xor ebp, ebp"], ["0x10025511", "jmp 0x1d"]]}, {"both": [["0x1005591f", "cmp eax, 2", "0x10025513"]]}, {"orig": [["0x10055922", "je 0x19"]], "recomp": [["0x10025516", "jne 0x5"], ["0x10025518", "mov ebp, dword ptr [esi + 8]"], ["0x1002551b", "jmp 0x13"]]}, {"both": [["0x10055924", "mov eax, dword ptr [esi + 0x4c]", "0x1002551d"], ["0x10055927", "mov bl, 1", "0x10025520"], ["0x10055929", "mov ebp, dword ptr [esp + 0x14]", "0x10025522"], ["0x1005592d", "mov dword ptr [esi + 0x34], eax", "0x10025526"], ["0x10055930", "mov dword ptr [esi + 0x24], 0", "0x10025529"]]}, {"orig": [["0x10055937", "jmp 0x7"], ["0x10055939", "xor ebp, ebp"], ["0x1005593b", "jmp 0x3"], ["0x1005593d", "mov ebp, dword ptr [esi + 8]"]], "recomp": []}, {"both": [["0x10055940", "mov eax, dword ptr [esp + 0x18]", "0x10025530"], ["0x10055944", "and eax, 0xc", "0x10025534"], ["0x10055947", "cmp eax, 4", "0x10025537"]]}, {"orig": [["0x1005594a", "je 0x1d"]], "recomp": [["0x1002553a", "jne 0x4"], ["0x1002553c", "xor edi, edi"], ["0x1002553e", "jmp 0x20"]]}, {"both": [["0x1005594c", "cmp eax, 8", "0x10025540"]]}, {"orig": [["0x1005594f", "je 0x1c"]], "recomp": [["0x10025543", "jne 0x5"], ["0x10025545", "mov edi, dword ptr [esi + 0xc]"], ["0x10025548", "jmp 0x16"]]}, {"both": [["0x10055951", "mov eax, dword ptr [esi + 0x48]", "0x1002554a"], ["0x10055954", "mov edi, dword ptr [esp + 0x14]", "0x1002554d"], ["0x10055958", "mov dword ptr [esi + 0x20], 0", "0x10025551"], ["0x1005595f", "mov byte ptr [esp + 0x13], 1", "0x10025558"], ["0x10055964", "mov dword ptr [esi + 0x30], eax", "0x1002555d"]]}, {"orig": [["0x10055967", "jmp 0x7"], ["0x10055969", "xor edi, edi"], ["0x1005596b", "jmp 0x3"], ["0x1005596d", "mov edi, dword ptr [esi + 0xc]"]], "recomp": []}, {"both": [["0x10055970", "mov eax, dword ptr [esp + 0x18]", "0x10025560"], ["0x10055974", "and eax, 0x10", "0x10025564"], ["0x10055977", "je 0x8", "0x10025567"], ["0x10055979", "fld dword ptr [1.0 (FLOAT)]", "0x10025569"], ["0x1005597f", "jmp 0x6", "0x1002556f"], ["0x10055981", "fld dword ptr [4.0 (FLOAT)]", "0x10025571"], ["0x10055987", "fstp dword ptr [esp + 0x1c]", "0x10025577"], ["0x1005598b", "test eax, eax", "0x1002557b"], ["0x1005598d", "je 0x8", "0x1002557d"], ["0x1005598f", "fld dword ptr [1.0 (FLOAT)]", "0x1002557f"]]}]]]}, {"address": "0x10055a60", "recomp": "0x10025650", "name": "LegoNavController::Notify", "matching": 0.0, "stub": true}, {"address": "0x10058a00", "recomp": "0x10030730", "name": "LegoOmni::LegoOmni", "matching": 1.0, "diff": []}, {"address": "0x10058a90", "recomp": "0x100307c0", "name": "MxOmni::IsTimerRunning", "matching": 1.0, "diff": []}, {"address": "0x10058aa0", "recomp": "0x100307d0", "name": "LegoOmni::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10058ab0", "recomp": "0x100307e0", "name": "LegoOmni::IsA", "matching": 1.0, "diff": []}, {"address": "0x10058b30", "recomp": "0x10030860", "name": "LegoOmni::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10058b50", "recomp": "0x10030880", "name": "LegoOmni::~LegoOmni", "matching": 1.0, "diff": []}, {"address": "0x10058bd0", "recomp": "0x10030900", "name": "LegoOmni::Init", "matching": 1.0, "diff": []}, {"address": "0x10058c30", "recomp": "0x10030960", "name": "LegoOmni::Destroy", "matching": 0.6273062730627307, "diff": [["@@ -0x10058c30,25 +0x10030960,24 @@", [{"both": [["0x10058c30", "mov eax, dword ptr fs:[0]", "0x10030960"], ["0x10058c36", "push ebp", "0x10030966"], ["0x10058c37", "mov ebp, esp", "0x10030967"], ["0x10058c39", "push -1", "0x10030969"], ["0x10058c3b", "push <OFFSET1>", "0x1003096b"], ["0x10058c40", "push eax", "0x10030970"], ["0x10058c41", "mov dword ptr fs:[0], esp", "0x10030971"]]}, {"orig": [["0x10058c48", "sub esp, 8"], ["0x10058c4b", "push ebx"]], "recomp": [["0x10030978", "sub esp, 4"]]}, {"both": [["0x10058c4c", "push esi", "0x1003097b"]]}, {"orig": [], "recomp": [["0x1003097c", "push edi"]]}, {"both": [["0x10058c4d", "lea eax, [ecx + 0x48]", "0x1003097d"]]}, {"orig": [["0x10058c50", "push edi"]], "recomp": []}, {"both": [["0x10058c51", "mov esi, ecx", "0x10030980"], ["0x10058c53", "push eax", "0x10030982"]]}, {"orig": [["0x10058c54", "lea ecx, [ebp - 0x14]"]], "recomp": [["0x10030983", "lea ecx, [ebp - 0x10]"]]}, {"both": [["0x10058c57", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x10030986"], ["0x10058c5c", "mov dword ptr [ebp - 4], 0", "0x1003098b"], ["0x10058c63", "push esi", "0x10030992"], ["0x10058c64", "mov ecx, dword ptr [esi + 0x28]", "0x10030993"], ["0x10058c67", "call MxNotificationManager::Unregister (FUNCTION)", "0x10030996"], ["0x10058c6c", "mov ecx, dword ptr [esi + 0x78]", "0x1003099b"], ["0x10058c6f", "test ecx, ecx", "0x1003099e"], ["0x10058c71", "je 0xd", "0x100309a0"], ["0x10058c73", "push 1", "0x100309a2"], ["0x10058c75", "mov eax, dword ptr [ecx]", "0x100309a4"]]}]], ["@@ -0x10058c92,107 +0x100309c1,99 @@", [{"both": [["0x10058c92", "call ??3@YAXPAX@Z (FUNCTION)", "0x100309c1"], ["0x10058c97", "mov dword ptr [esi + 0x9c], 0", "0x100309c6"], ["0x10058ca1", "add esp, 4", "0x100309d0"], ["0x10058ca4", "mov ecx, dword ptr [esi + 0x94]", "0x100309d3"], ["0x10058caa", "test ecx, ecx", "0x100309d9"], ["0x10058cac", "je 0x10", "0x100309db"], ["0x10058cae", "push 1", "0x100309dd"], ["0x10058cb0", "mov eax, dword ptr [ecx]", "0x100309df"], ["0x10058cb2", "call dword ptr [eax]", "0x100309e1"], ["0x10058cb4", "mov dword ptr [esi + 0x94], 0", "0x100309e3"]]}, {"orig": [["0x10058cbe", "mov edi, dword ptr [esi + 0x8c]"], ["0x10058cc4", "test edi, edi"], ["0x10058cc6", "je 0x1a"], ["0x10058cc8", "mov ecx, edi"], ["0x10058cca", "call <OFFSET6>"], ["0x10058ccf", "push edi"]], "recomp": [["0x100309ed", "mov eax, dword ptr [esi + 0x8c]"], ["0x100309f3", "test eax, eax"], ["0x100309f5", "je 0x13"], ["0x100309f7", "push eax"]]}, {"both": [["0x10058cd0", "call ??3@YAXPAX@Z (FUNCTION)", "0x100309f8"], ["0x10058cd5", "mov dword ptr [esi + 0x8c], 0", "0x100309fd"], ["0x10058cdf", "add esp, 4", "0x10030a07"], ["0x10058ce2", "mov ecx, dword ptr [esi + 0x90]", "0x10030a0a"], ["0x10058ce8", "test ecx, ecx", "0x10030a10"], ["0x10058cea", "je 0x10", "0x10030a12"], ["0x10058cec", "push 1", "0x10030a14"], ["0x10058cee", "mov eax, dword ptr [ecx]", "0x10030a16"], ["0x10058cf0", "call dword ptr [eax]", "0x10030a18"], ["0x10058cf2", "mov dword ptr [esi + 0x90], 0", "0x10030a1a"], ["0x10058cfc", "mov ecx, dword ptr [esi + 0x98]", "0x10030a24"], ["0x10058d02", "test ecx, ecx", "0x10030a2a"], ["0x10058d04", "je 0x10", "0x10030a2c"], ["0x10058d06", "push 1", "0x10030a2e"], ["0x10058d08", "mov eax, dword ptr [ecx]", "0x10030a30"], ["0x10058d0a", "call dword ptr [eax]", "0x10030a32"], ["0x10058d0c", "mov dword ptr [esi + 0x98], 0", "0x10030a34"]]}, {"orig": [["0x10058d16", "mov edi, dword ptr [esi + 0x74]"], ["0x10058d19", "test edi, edi"], ["0x10058d1b", "je 0x85"], ["0x10058d21", "mov eax, dword ptr [edi + 0xc]"], ["0x10058d24", "add edi, 8"], ["0x10058d27", "mov ecx, dword ptr [eax]"], ["0x10058d29", "mov dword ptr [ebp - 0x10], ecx"], ["0x10058d2c", "cmp eax, ecx"], ["0x10058d2e", "je 0x62"], ["0x10058d30", "mov eax, dword ptr [ebp - 0x10]"], ["0x10058d33", "mov ebx, dword ptr [eax + 0x10]"], ["0x10058d36", "test ebx, ebx"], ["0x10058d38", "je 0x10"], ["0x10058d3a", "mov ecx, ebx"], ["0x10058d3c", "call LegoTextureInfo::~LegoTextureInfo (FUNCTION)"], ["0x10058d41", "push ebx"], ["0x10058d42", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10058d47", "add esp, 4"], ["0x10058d4a", "mov eax, dword ptr [ebp - 0x10]"], ["0x10058d4d", "mov ecx, dword ptr [eax + 8]"], ["0x10058d50", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"], ["0x10058d56", "je 0xe"], ["0x10058d58", "mov eax, dword ptr [ecx]"], ["0x10058d5a", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"], ["0x10058d60", "je 0x25"], ["0x10058d62", "mov ecx, eax"], ["0x10058d64", "jmp -0xe"], ["0x10058d66", "mov eax, dword ptr [ebp - 0x10]"], ["0x10058d69", "mov ecx, dword ptr [eax + 4]"], ["0x10058d6c", "cmp dword ptr [ecx + 8], eax"], ["0x10058d6f", "jne 0xe"], ["0x10058d71", "mov dword ptr [ebp - 0x10], ecx"], ["0x10058d74", "mov ecx, dword ptr [ecx + 4]"], ["0x10058d77", "mov eax, dword ptr [ebp - 0x10]"], ["0x10058d7a", "cmp dword ptr [ecx + 8], eax"], ["0x10058d7d", "je -0xe"], ["0x10058d7f", "mov eax, dword ptr [ebp - 0x10]"], ["0x10058d82", "cmp dword ptr [eax + 8], ecx"], ["0x10058d85", "je 0x3"], ["0x10058d87", "mov dword ptr [ebp - 0x10], ecx"], ["0x10058d8a", "mov eax, dword ptr [ebp - 0x10]"], ["0x10058d8d", "cmp dword ptr [edi + 4], eax"], ["0x10058d90", "jne -0x62"]], "recomp": []}, {"both": [["0x10058d92", "mov ecx, dword ptr [esi + 0x74]", "0x10030a3e"], ["0x10058d95", "test ecx, ecx", "0x10030a41"]]}, {"orig": [["0x10058d97", "je 0x6"]], "recomp": [["0x10030a43", "je 0xd"]]}, {"both": [["0x10058d99", "push 1", "0x10030a45"], ["0x10058d9b", "mov eax, dword ptr [ecx]", "0x10030a47"], ["0x10058d9d", "call dword ptr [eax]", "0x10030a49"], ["0x10058d9f", "mov dword ptr [esi + 0x74], 0", "0x10030a4b"], ["0x10058da6", "mov ecx, dword ptr [esi + 0x6c]", "0x10030a52"], ["0x10058da9", "test ecx, ecx", "0x10030a55"], ["0x10058dab", "je 0xd", "0x10030a57"], ["0x10058dad", "push 1", "0x10030a59"], ["0x10058daf", "mov eax, dword ptr [ecx]", "0x10030a5b"], ["0x10058db1", "call dword ptr [eax]", "0x10030a5d"], ["0x10058db3", "mov dword ptr [esi + 0x6c], 0", "0x10030a5f"], ["0x10058dba", "mov ecx, dword ptr [esi + 0x70]", "0x10030a66"], ["0x10058dbd", "test ecx, ecx", "0x10030a69"], ["0x10058dbf", "je 0xd", "0x10030a6b"], ["0x10058dc1", "push 1", "0x10030a6d"], ["0x10058dc3", "mov eax, dword ptr [ecx]", "0x10030a6f"], ["0x10058dc5", "call dword ptr [eax]", "0x10030a71"], ["0x10058dc7", "mov dword ptr [esi + 0x70], 0", "0x10030a73"]]}, {"orig": [["0x10058dce", "call <OFFSET9>"]], "recomp": [["0x10030a7a", "mov ecx, dword ptr [esi + 0x70]"], ["0x10030a7d", "test ecx, ecx"], ["0x10030a7f", "je 0xd"], ["0x10030a81", "push 1"], ["0x10030a83", "mov eax, dword ptr [ecx]"], ["0x10030a85", "call dword ptr [eax]"], ["0x10030a87", "mov dword ptr [esi + 0x70], 0"]]}, {"both": [["0x10058dd3", "mov ecx, dword ptr [esi + 0x134]", "0x10030a8e"], ["0x10058dd9", "test ecx, ecx", "0x10030a94"], ["0x10058ddb", "je 0x1f", "0x10030a96"], ["0x10058ddd", "call MxBackgroundAudioManager::Stop (FUNCTION)", "0x10030a98"], ["0x10058de2", "mov ecx, dword ptr [esi + 0x134]", "0x10030a9d"], ["0x10058de8", "test ecx, ecx", "0x10030aa3"], ["0x10058dea", "je 0x6", "0x10030aa5"], ["0x10058dec", "push 1", "0x10030aa7"], ["0x10058dee", "mov eax, dword ptr [ecx]", "0x10030aa9"]]}, {"orig": [], "recomp": [["0x10030aab", "call dword ptr [eax]"], ["0x10030aad", "mov dword ptr [esi + 0x134], 0"], ["0x10030ab7", "mov ecx, dword ptr [esi + 0x138]"], ["0x10030abd", "test ecx, ecx"], ["0x10030abf", "je 0x10"], ["0x10030ac1", "push 1"], ["0x10030ac3", "mov eax, dword ptr [ecx]"], ["0x10030ac5", "call dword ptr [eax]"], ["0x10030ac7", "mov dword ptr [esi + 0x138], 0"], ["0x10030ad1", "lea ecx, [esi + 0xc0]"], ["0x10030ad7", "call MxAtomId::Clear (FUNCTION)"], ["0x10030adc", "call DestroyScripts (FUNCTION)"], ["0x10030ae1", "mov eax, dword ptr [esi + 0x68]"], ["0x10030ae4", "push eax"], ["0x10030ae5", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10030aea", "add esp, 4"], ["0x10030aed", "mov ecx, esi"], ["0x10030aef", "call MxOmni::Destroy (FUNCTION)"], ["0x10030af4", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10030afb", "call <OFFSET10>"], ["0x10030b00", "mov eax, dword ptr [ebp - 0xc]"], ["0x10030b03", "pop edi"], ["0x10030b04", "mov dword ptr fs:[0], eax"], ["0x10030b0a", "pop esi"], ["0x10030b0b", "mov esp, ebp"], ["0x10030b0d", "pop ebp"], ["0x10030b0e", "ret "], ["0x10030b0f", "mov eax, <OFFSET11>"], ["0x10030b14", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10030b19", "lea ecx, [ebp - 0x10]"], ["0x10030b1c", "jmp MxAutoLock::~MxAutoLock (FUNCTION)"]]}]]]}, {"address": "0x10058e70", "recomp": "0x10030b30", "name": "LegoOmni::Create", "matching": 0.94, "diff": [["@@ -0x10058ec2,23 +0x10030b82,23 @@", [{"both": [["0x10058ec2", "mov byte ptr [esi + 0x3c], al", "0x10030b82"], ["0x10058ec5", "call ??2@YAPAXI@Z (FUNCTION)", "0x10030b85"], ["0x10058eca", "mov dword ptr [ebp - 0x1c], eax", "0x10030b8a"], ["0x10058ecd", "add esp, 4", "0x10030b8d"], ["0x10058ed0", "mov byte ptr [ebp - 4], 1", "0x10030b90"], ["0x10058ed4", "mov edi, eax", "0x10030b94"], ["0x10058ed6", "test edi, edi", "0x10030b96"], ["0x10058ed8", "je 0x56", "0x10030b98"], ["0x10058eda", "mov ecx, edi", "0x10030b9a"], ["0x10058edc", "call MxCore::MxCore (FUNCTION)", "0x10030b9c"]]}, {"orig": [["0x10058ee1", "mov byte ptr [ebp - 4], 2"]], "recomp": []}, {"both": [["0x10058ee5", "mov al, byte ptr [ebp - 0xd]", "0x10030ba1"], ["0x10058ee8", "push 0xc", "0x10030ba4"]]}, {"orig": [], "recomp": [["0x10030ba6", "mov byte ptr [ebp - 4], 2"]]}, {"both": [["0x10058eea", "mov byte ptr [edi + 8], al", "0x10030baa"], ["0x10058eed", "call ??2@YAPAXI@Z (FUNCTION)", "0x10030bad"], ["0x10058ef2", "add esp, 4", "0x10030bb2"], ["0x10058ef5", "mov dword ptr [eax], eax", "0x10030bb5"], ["0x10058ef7", "mov byte ptr [ebp - 4], 4", "0x10030bb7"], ["0x10058efb", "mov byte ptr [ebp - 4], 1", "0x10030bbb"], ["0x10058eff", "mov dword ptr [eax + 4], eax", "0x10030bbf"], ["0x10058f02", "mov dword ptr [edi + 0xc], eax", "0x10030bc2"], ["0x10058f05", "mov eax, edi", "0x10030bc5"], ["0x10058f07", "mov dword ptr [edi + 0x10], ebx", "0x10030bc7"]]}]], ["@@ -0x10058f32,21 +0x10030bf2,21 @@", [{"both": [["0x10058f32", "mov edx, dword ptr [ebp - 0x14]", "0x10030bf2"], ["0x10058f35", "test eax, eax", "0x10030bf5"], ["0x10058f37", "mov byte ptr [ebp - 4], 0", "0x10030bf7"], ["0x10058f3b", "mov dword ptr [edx + 0x24], eax", "0x10030bfb"], ["0x10058f3e", "je 0xab", "0x10030bfe"], ["0x10058f44", "push esi", "0x10030c04"], ["0x10058f45", "mov ecx, edx", "0x10030c05"], ["0x10058f47", "call MxOmni::Create (FUNCTION)", "0x10030c07"], ["0x10058f4c", "test eax, eax", "0x10030c0c"], ["0x10058f4e", "jne 0x9b", "0x10030c0e"]]}, {"orig": [["0x10058f54", "push 0x1c8"]], "recomp": [["0x10030c14", "push 0x1ac"]]}, {"both": [["0x10058f59", "call ??2@YAPAXI@Z (FUNCTION)", "0x10030c19"], ["0x10058f5e", "mov dword ptr [ebp - 0x10], eax", "0x10030c1e"], ["0x10058f61", "add esp, 4", "0x10030c21"], ["0x10058f64", "mov byte ptr [ebp - 4], 5", "0x10030c24"], ["0x10058f68", "mov edi, eax", "0x10030c28"], ["0x10058f6a", "mov eax, 0", "0x10030c2a"], ["0x10058f6f", "test edi, edi", "0x10030c2f"], ["0x10058f71", "je 0x7", "0x10030c31"], ["0x10058f73", "mov ecx, edi", "0x10030c33"], ["0x10058f75", "call LegoObjectFactory::LegoObjectFactory (FUNCTION)", "0x10030c35"]]}]], ["@@ -0x10059112,25 +0x10030dd2,24 @@", [{"both": [["0x10059112", "call ViewLODListManager::ViewLODListManager (FUNCTION)", "0x10030dd2"], ["0x10059117", "xor ebx, ebx", "0x10030dd7"], ["0x10059119", "mov edx, dword ptr [ebp - 0x14]", "0x10030dd9"], ["0x1005911c", "push 0x24", "0x10030ddc"], ["0x1005911e", "mov byte ptr [ebp - 4], bl", "0x10030dde"], ["0x10059121", "mov dword ptr [edx + 0x6c], eax", "0x10030de1"], ["0x10059124", "call ??2@YAPAXI@Z (FUNCTION)", "0x10030de4"], ["0x10059129", "add esp, 4", "0x10030de9"], ["0x1005912c", "mov dword ptr [ebp - 0x18], eax", "0x10030dec"], ["0x1005912f", "mov byte ptr [ebp - 4], 0xa", "0x10030def"]]}, {"orig": [["0x10059133", "cmp dword ptr [ebp - 0x18], ebx"], ["0x10059136", "je 0x175"], ["0x1005913c", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": [["0x10030df3", "cmp eax, ebx"], ["0x10030df5", "je 0x165"], ["0x10030dfb", "lea ecx, [eax + 8]"]]}, {"both": [["0x1005913f", "mov dl, byte ptr [ebp - 0xd]", "0x10030dfe"]]}, {"orig": [["0x10059142", "add ecx, 8"]], "recomp": []}, {"both": [["0x10059145", "mov dword ptr [ebp - 0x24], ecx", "0x10030e01"], ["0x10059148", "mov byte ptr [ecx], dl", "0x10030e04"], ["0x1005914a", "mov al, byte ptr [ebp - 0x19]", "0x10030e06"], ["0x1005914d", "mov edx, dword ptr [ebp - 0x18]", "0x10030e09"], ["0x10059150", "mov byte ptr [edx + 9], al", "0x10030e0c"], ["0x10059153", "mov edx, dword ptr [ebp - 0x18]", "0x10030e0f"], ["0x10059156", "mov byte ptr [ebp - 4], 0xb", "0x10030e12"], ["0x1005915a", "mov dword ptr [edx + 0x10], ebx", "0x10030e16"], ["0x1005915d", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ebx", "0x10030e19"], ["0x10059163", "jne 0x34", "0x10030e1f"]]}]], ["@@ -0x100591aa,67 +0x10030e66,63 @@", [{"both": [["0x100591aa", "mov ecx, dword ptr [ebp - 0x24]", "0x10030e66"], ["0x100591ad", "call allocator<LegoTextureInfo *>::_Charalloc (FUNCTION)", "0x10030e69"], ["0x100591b2", "push eax", "0x10030e6e"], ["0x100591b3", "mov edi, eax", "0x10030e6f"], ["0x100591b5", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Parent (FUNCTION)", "0x10030e71"], ["0x100591ba", "add esp, 4", "0x10030e76"], ["0x100591bd", "mov dword ptr [eax], esi", "0x10030e79"], ["0x100591bf", "xor esi, esi", "0x10030e7b"], ["0x100591c1", "push edi", "0x10030e7d"], ["0x100591c2", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Color (FUNCTION)", "0x10030e7e"]]}, {"orig": [], "recomp": [["0x10030e83", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100591c7", "add esp, 4", "0x10030e86"], ["0x100591ca", "mov dword ptr [eax], esi", "0x10030e89"]]}, {"orig": [["0x100591cc", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": []}, {"both": [["0x100591cf", "mov dword ptr [ecx + 0xc], edi", "0x10030e8b"], ["0x100591d2", "mov ecx, dword ptr [ebp - 0x18]", "0x10030e8e"], ["0x100591d5", "mov dword ptr [ecx + 0x14], esi", "0x10030e91"], ["0x100591d8", "mov ecx, dword ptr [ebp - 0x18]", "0x10030e94"], ["0x100591db", "mov edi, dword ptr [ecx + 0xc]", "0x10030e97"], ["0x100591de", "push edi", "0x10030e9a"], ["0x100591df", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Left (FUNCTION)", "0x10030e9b"], ["0x100591e4", "add esp, 4", "0x10030ea0"], ["0x100591e7", "mov ecx, dword ptr [ebp - 0x18]", "0x10030ea3"], ["0x100591ea", "mov edi, dword ptr [ecx + 0xc]", "0x10030ea6"]]}, {"orig": [], "recomp": [["0x10030ea9", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100591ed", "mov dword ptr [eax], edi", "0x10030eac"]]}, {"orig": [["0x100591ef", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": []}, {"both": [["0x100591f2", "mov edi, dword ptr [ecx + 0xc]", "0x10030eae"], ["0x100591f5", "push edi", "0x10030eb1"], ["0x100591f6", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Right (FUNCTION)", "0x10030eb2"], ["0x100591fb", "add esp, 4", "0x10030eb7"], ["0x100591fe", "mov ecx, dword ptr [ebp - 0x18]", "0x10030eba"], ["0x10059201", "mov byte ptr [ebp - 4], 0xf", "0x10030ebd"]]}, {"orig": [["0x10059205", "mov byte ptr [ebp - 4], 0xa"]], "recomp": []}, {"both": [["0x10059209", "mov edi, dword ptr [ecx + 0xc]", "0x10030ec1"], ["0x1005920c", "mov ebx, 0x10", "0x10030ec4"]]}, {"orig": [], "recomp": [["0x10030ec9", "mov byte ptr [ebp - 4], 0xa"], ["0x10030ecd", "push ebx"]]}, {"both": [["0x10059211", "mov dword ptr [eax], edi", "0x10030ece"]]}, {"orig": [["0x10059213", "mov byte ptr [ebp - 4], bl"], ["0x10059216", "mov ecx, dword ptr [ebp - 0x18]"], ["0x10059219", "push ebx"]], "recomp": [["0x10030ed0", "mov ecx, dword ptr [ebp - 0x18]"], ["0x10030ed3", "mov al, byte ptr [ebp - 0xd]"], ["0x10030ed6", "mov byte ptr [ebp - 4], bl"]]}, {"both": [["0x1005921a", "mov dword ptr [ecx], LegoContainer<LegoTextureInfo>::`vftable' (VTABLE)", "0x10030ed9"]]}, {"orig": [["0x10059220", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": [["0x10030edf", "mov byte ptr [ecx + 0x18], al"], ["0x10030ee2", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10030ee7", "add esp, 4"], ["0x10030eea", "mov ecx, dword ptr [ebp - 0x18]"], ["0x10030eed", "mov byte ptr [ebp - 4], 0x12"], ["0x10030ef1", "mov byte ptr [ebp - 4], 0xa"], ["0x10030ef5", "mov dword ptr [eax], eax"], ["0x10030ef7", "mov dword ptr [eax + 4], eax"], ["0x10030efa", "mov dword ptr [ecx + 0x1c], eax"], ["0x10030efd", "mov eax, ecx"], ["0x10030eff", "mov dword ptr [ecx + 0x20], esi"], ["0x10030f02", "mov dword ptr [ecx], LegoTextureContainer::`vftable' (VTABLE)"]]}, {"both": [["0x10059223", "mov byte ptr [ecx + 4], 1", "0x10030f08"]]}, {"orig": [["0x10059227", "mov al, byte ptr [ebp - 0xd]"], ["0x1005922a", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1005922d", "mov byte ptr [ecx + 0x18], al"], ["0x10059230", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x10059235", "add esp, 4"], ["0x10059238", "mov dword ptr [eax], eax"], ["0x1005923a", "mov byte ptr [ebp - 4], 0x12"], ["0x1005923e", "mov dword ptr [eax + 4], eax"], ["0x10059241", "mov ecx, dword ptr [ebp - 0x18]"], ["0x10059244", "mov byte ptr [ebp - 4], 0xa"], ["0x10059248", "mov dword ptr [ecx + 0x1c], eax"], ["0x1005924b", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1005924e", "mov dword ptr [ecx + 0x20], esi"], ["0x10059251", "mov ecx, dword ptr [ebp - 0x18]"], ["0x10059254", "mov dword ptr [ecx], LegoTextureContainer::`vftable' (VTABLE)"], ["0x1005925a", "mov eax, dword ptr [ebp - 0x18]"]], "recomp": []}, {"both": [["0x1005925d", "jmp 0x54", "0x10030f0c"], ["0x1005925f", "mov ecx, dword ptr [ebp - 0x18]", "0x10030f0e"], ["0x10059262", "add ecx, 0x18", "0x10030f11"], ["0x10059265", "jmp list<pair<LegoTextureInfo *,int>,allocator<pair<LegoTextureInfo *,int> > >::~list<pair<LegoTextureInfo *,int>,allocator<pair<LegoTextureInfo *,int> > > (FUNCTION)", "0x10030f14"], ["0x1005926a", "mov ecx, dword ptr [ebp - 0x18]", "0x10030f19"], ["0x1005926d", "add ecx, 0x18", "0x10030f1c"], ["0x10059270", "jmp List<pair<LegoTextureInfo *,int> >::~List<pair<LegoTextureInfo *,int> > (FUNCTION)", "0x10030f1f"], ["0x10059275", "lea ecx, [ebp - 0x25]", "0x10030f24"], ["0x10059278", "jmp _Lockit::~_Lockit (FUNCTION)", "0x10030f27"], ["0x1005927d", "mov ecx, dword ptr [ebp - 0x18]", "0x10030f2c"]]}]], ["@@ -0x10059296,25 +0x10030f45,24 @@", [{"both": [["0x10059296", "add ecx, 8", "0x10030f45"], ["0x10059299", "jmp Map<char const *,LegoTextureInfo *,LegoContainerInfoComparator>::~Map<char const *,LegoTextureInfo *,LegoContainerInfoComparator> (FUNCTION)", "0x10030f48"], ["0x1005929e", "mov ecx, dword ptr [ebp - 0x18]", "0x10030f4d"], ["0x100592a1", "add ecx, 8", "0x10030f50"], ["0x100592a4", "jmp LegoContainerInfo<LegoTextureInfo>::~LegoContainerInfo<LegoTextureInfo> (FUNCTION)", "0x10030f53"], ["0x100592a9", "mov ecx, dword ptr [ebp - 0x18]", "0x10030f58"], ["0x100592ac", "jmp LegoContainer<LegoTextureInfo>::~LegoContainer<LegoTextureInfo> (FUNCTION)", "0x10030f5b"], ["0x100592b1", "xor eax, eax", "0x10030f60"], ["0x100592b3", "xor ebx, ebx", "0x10030f62"], ["0x100592b5", "mov edx, dword ptr [ebp - 0x14]", "0x10030f64"]]}, {"orig": [], "recomp": [["0x10030f67", "push 8"]]}, {"both": [["0x100592b8", "mov byte ptr [ebp - 4], bl", "0x10030f69"], ["0x100592bb", "mov dword ptr [edx + 0x74], eax", "0x10030f6c"], ["0x100592be", "mov byte ptr [eax + 4], bl", "0x10030f6f"]]}, {"orig": [["0x100592c1", "call <OFFSET34>"], ["0x100592c6", "push 8"]], "recomp": []}, {"both": [["0x100592c8", "call ??2@YAPAXI@Z (FUNCTION)", "0x10030f72"], ["0x100592cd", "mov dword ptr [ebp - 0x10], eax", "0x10030f77"], ["0x100592d0", "add esp, 4", "0x10030f7a"], ["0x100592d3", "mov byte ptr [ebp - 4], 0x13", "0x10030f7d"], ["0x100592d7", "mov edi, eax", "0x10030f81"], ["0x100592d9", "mov eax, 0", "0x10030f83"], ["0x100592de", "test edi, edi", "0x10030f88"], ["0x100592e0", "je 0x7", "0x10030f8a"], ["0x100592e2", "mov ecx, edi", "0x10030f8c"], ["0x100592e4", "call LegoCharacterManager::LegoCharacterManager (FUNCTION)", "0x10030f8e"]]}]], ["@@ -0x1005943a,33 +0x100310e4,33 @@", [{"both": [["0x1005943a", "jmp MxCollection<LegoWorld *>::~MxCollection<LegoWorld *> (FUNCTION)", "0x100310e4"], ["0x1005943f", "mov ecx, dword ptr [ebp - 0x10]", "0x100310e9"], ["0x10059442", "jmp MxList<LegoWorld *>::~MxList<LegoWorld *> (FUNCTION)", "0x100310ec"], ["0x10059447", "mov ecx, dword ptr [ebp - 0x10]", "0x100310f1"], ["0x1005944a", "jmp MxPtrList<LegoWorld>::~MxPtrList<LegoWorld> (FUNCTION)", "0x100310f4"], ["0x1005944f", "xor eax, eax", "0x100310f9"], ["0x10059451", "mov edx, dword ptr [ebp - 0x14]", "0x100310fb"], ["0x10059454", "mov byte ptr [ebp - 4], 0", "0x100310fe"], ["0x10059458", "cmp dword ptr [edx + 0x6c], 0", "0x10031102"], ["0x1005945c", "mov dword ptr [edx + 0x78], eax", "0x10031106"]]}, {"orig": [["0x1005945f", "je -0x476"]], "recomp": [["0x10031109", "je -0x460"]]}, {"both": [["0x10059465", "cmp dword ptr [edx + 0x74], 0", "0x1003110f"]]}, {"orig": [["0x10059469", "je -0x480"], ["0x1005946f", "test eax, eax"], ["0x10059471", "je -0x488"]], "recomp": [["0x10031113", "je -0x46a"], ["0x10031119", "test eax, eax"], ["0x1003111b", "je -0x472"]]}, {"both": [["0x10059477", "cmp dword ptr [edx + 0x8c], 0", "0x10031121"]]}, {"orig": [["0x1005947e", "je -0x495"]], "recomp": [["0x10031128", "je -0x47f"]]}, {"both": [["0x10059484", "cmp dword ptr [edx + 0x90], 0", "0x1003112e"]]}, {"orig": [["0x1005948b", "je -0x4a2"]], "recomp": [["0x10031135", "je -0x48c"]]}, {"both": [["0x10059491", "cmp dword ptr [edx + 0x94], 0", "0x1003113b"]]}, {"orig": [["0x10059498", "je -0x4af"]], "recomp": [["0x10031142", "je -0x499"]]}, {"both": [["0x1005949e", "cmp dword ptr [edx + 0x98], 0", "0x10031148"]]}, {"orig": [["0x100594a5", "je -0x4bc"]], "recomp": [["0x1003114f", "je -0x4a6"]]}, {"both": [["0x100594ab", "push 0x24", "0x10031155"], ["0x100594ad", "mov ebx, 0x1d", "0x10031157"], ["0x100594b2", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003115c"], ["0x100594b7", "mov dword ptr [ebp - 0x10], eax", "0x10031161"], ["0x100594ba", "add esp, 4", "0x10031164"], ["0x100594bd", "mov esi, eax", "0x10031167"], ["0x100594bf", "mov byte ptr [ebp - 4], bl", "0x10031169"], ["0x100594c2", "test esi, esi", "0x1003116c"], ["0x100594c4", "je 0x5c", "0x1003116e"], ["0x100594c6", "lea edi, [esi + 4]", "0x10031170"]]}]], ["@@ -0x10059507,21 +0x100311b1,21 @@", [{"both": [["0x10059507", "add ecx, 0x14", "0x100311b1"], ["0x1005950a", "jmp MxString::~MxString (FUNCTION)", "0x100311b4"], ["0x1005950f", "mov ecx, dword ptr [ebp - 0x10]", "0x100311b9"], ["0x10059512", "add ecx, 4", "0x100311bc"], ["0x10059515", "jmp MxString::~MxString (FUNCTION)", "0x100311bf"], ["0x1005951a", "mov ecx, dword ptr [ebp - 0x10]", "0x100311c4"], ["0x1005951d", "jmp MxVariable::~MxVariable (FUNCTION)", "0x100311c7"], ["0x10059522", "xor eax, eax", "0x100311cc"], ["0x10059524", "mov byte ptr [ebp - 4], 0", "0x100311ce"], ["0x10059528", "test eax, eax", "0x100311d2"]]}, {"orig": [["0x1005952a", "je -0x541"]], "recomp": [["0x100311d4", "je -0x52b"]]}, {"both": [["0x10059530", "push eax", "0x100311da"], ["0x10059531", "mov edx, dword ptr [ebp - 0x14]", "0x100311db"], ["0x10059534", "mov ecx, dword ptr [edx + 0x20]", "0x100311de"], ["0x10059537", "mov ebx, 0x21", "0x100311e1"], ["0x1005953c", "call MxVariableTable::SetVariable (FUNCTION)", "0x100311e6"], ["0x10059541", "push 0x24", "0x100311eb"], ["0x10059543", "call ??2@YAPAXI@Z (FUNCTION)", "0x100311ed"], ["0x10059548", "mov dword ptr [ebp - 0x10], eax", "0x100311f2"], ["0x1005954b", "add esp, 4", "0x100311f5"], ["0x1005954e", "mov esi, eax", "0x100311f8"]]}]], ["@@ -0x10059598,21 +0x10031242,21 @@", [{"both": [["0x10059598", "add ecx, 0x14", "0x10031242"], ["0x1005959b", "jmp MxString::~MxString (FUNCTION)", "0x10031245"], ["0x100595a0", "mov ecx, dword ptr [ebp - 0x10]", "0x1003124a"], ["0x100595a3", "add ecx, 4", "0x1003124d"], ["0x100595a6", "jmp MxString::~MxString (FUNCTION)", "0x10031250"], ["0x100595ab", "mov ecx, dword ptr [ebp - 0x10]", "0x10031255"], ["0x100595ae", "jmp MxVariable::~MxVariable (FUNCTION)", "0x10031258"], ["0x100595b3", "xor eax, eax", "0x1003125d"], ["0x100595b5", "mov byte ptr [ebp - 4], 0", "0x1003125f"], ["0x100595b9", "test eax, eax", "0x10031263"]]}, {"orig": [["0x100595bb", "je -0x5d2"]], "recomp": [["0x10031265", "je -0x5bc"]]}, {"both": [["0x100595c1", "push eax", "0x1003126b"], ["0x100595c2", "mov edx, dword ptr [ebp - 0x14]", "0x1003126c"], ["0x100595c5", "mov ecx, dword ptr [edx + 0x20]", "0x1003126f"], ["0x100595c8", "mov ebx, 0x25", "0x10031272"], ["0x100595cd", "call MxVariableTable::SetVariable (FUNCTION)", "0x10031277"], ["0x100595d2", "push 0x24", "0x1003127c"], ["0x100595d4", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003127e"], ["0x100595d9", "mov dword ptr [ebp - 0x10], eax", "0x10031283"], ["0x100595dc", "add esp, 4", "0x10031286"], ["0x100595df", "mov esi, eax", "0x10031289"]]}]], ["@@ -0x10059629,21 +0x100312d3,21 @@", [{"both": [["0x10059629", "add ecx, 0x14", "0x100312d3"], ["0x1005962c", "jmp MxString::~MxString (FUNCTION)", "0x100312d6"], ["0x10059631", "mov ecx, dword ptr [ebp - 0x10]", "0x100312db"], ["0x10059634", "add ecx, 4", "0x100312de"], ["0x10059637", "jmp MxString::~MxString (FUNCTION)", "0x100312e1"], ["0x1005963c", "mov ecx, dword ptr [ebp - 0x10]", "0x100312e6"], ["0x1005963f", "jmp MxVariable::~MxVariable (FUNCTION)", "0x100312e9"], ["0x10059644", "xor eax, eax", "0x100312ee"], ["0x10059646", "mov byte ptr [ebp - 4], 0", "0x100312f0"], ["0x1005964a", "test eax, eax", "0x100312f4"]]}, {"orig": [["0x1005964c", "je -0x663"]], "recomp": [["0x100312f6", "je -0x64d"]]}, {"both": [["0x10059652", "push eax", "0x100312fc"], ["0x10059653", "mov edx, dword ptr [ebp - 0x14]", "0x100312fd"], ["0x10059656", "mov ecx, dword ptr [edx + 0x20]", "0x10031300"], ["0x10059659", "mov ebx, 0x29", "0x10031303"], ["0x1005965e", "call MxVariableTable::SetVariable (FUNCTION)", "0x10031308"], ["0x10059663", "push 0x24", "0x1003130d"], ["0x10059665", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003130f"], ["0x1005966a", "mov dword ptr [ebp - 0x10], eax", "0x10031314"], ["0x1005966d", "add esp, 4", "0x10031317"], ["0x10059670", "mov esi, eax", "0x1003131a"]]}]], ["@@ -0x100596ba,83 +0x10031364,83 @@", [{"both": [["0x100596ba", "add ecx, 0x14", "0x10031364"], ["0x100596bd", "jmp MxString::~MxString (FUNCTION)", "0x10031367"], ["0x100596c2", "mov ecx, dword ptr [ebp - 0x10]", "0x1003136c"], ["0x100596c5", "add ecx, 4", "0x1003136f"], ["0x100596c8", "jmp MxString::~MxString (FUNCTION)", "0x10031372"], ["0x100596cd", "mov ecx, dword ptr [ebp - 0x10]", "0x10031377"], ["0x100596d0", "jmp MxVariable::~MxVariable (FUNCTION)", "0x1003137a"], ["0x100596d5", "xor eax, eax", "0x1003137f"], ["0x100596d7", "mov byte ptr [ebp - 4], 0", "0x10031381"], ["0x100596db", "test eax, eax", "0x10031385"]]}, {"orig": [["0x100596dd", "je -0x6f4"]], "recomp": [["0x10031387", "je -0x6de"]]}, {"both": [["0x100596e3", "push eax", "0x1003138d"], ["0x100596e4", "mov edx, dword ptr [ebp - 0x14]", "0x1003138e"], ["0x100596e7", "mov ecx, dword ptr [edx + 0x20]", "0x10031391"], ["0x100596ea", "call MxVariableTable::SetVariable (FUNCTION)", "0x10031394"], ["0x100596ef", "call CreateScripts (FUNCTION)", "0x10031399"], ["0x100596f4", "call RegisterExtraPaths (FUNCTION)", "0x1003139e"], ["0x100596f9", "mov ecx, dword ptr [ebp - 0x14]", "0x100313a3"], ["0x100596fc", "call LegoOmni::RegisterScripts (FUNCTION)", "0x100313a6"], ["0x10059701", "mov dword ptr [ebp - 0x20], eax", "0x100313ab"], ["0x10059704", "test eax, eax", "0x100313ae"]]}, {"orig": [["0x10059706", "jne -0x71d"]], "recomp": [["0x100313b0", "jne -0x707"]]}, {"both": [["0x1005970c", "push 0x150", "0x100313b6"], ["0x10059711", "call ??2@YAPAXI@Z (FUNCTION)", "0x100313bb"], ["0x10059716", "mov dword ptr [ebp - 0x10], eax", "0x100313c0"], ["0x10059719", "add esp, 4", "0x100313c3"], ["0x1005971c", "mov byte ptr [ebp - 4], 0x2d", "0x100313c6"], ["0x10059720", "mov esi, eax", "0x100313ca"], ["0x10059722", "mov eax, 0", "0x100313cc"], ["0x10059727", "test esi, esi", "0x100313d1"], ["0x10059729", "je 0x7", "0x100313d3"], ["0x1005972b", "mov ecx, esi", "0x100313d5"], ["0x1005972d", "call MxBackgroundAudioManager::MxBackgroundAudioManager (FUNCTION)", "0x100313d7"], ["0x10059732", "mov edx, dword ptr [ebp - 0x14]", "0x100313dc"], ["0x10059735", "test eax, eax", "0x100313df"], ["0x10059737", "mov byte ptr [ebp - 4], 0", "0x100313e1"], ["0x1005973b", "mov dword ptr [edx + 0x134], eax", "0x100313e5"]]}, {"orig": [["0x10059741", "je -0x758"]], "recomp": [["0x100313eb", "je -0x742"]]}, {"both": [["0x10059747", "push 0x900", "0x100313f1"], ["0x1005974c", "call ??2@YAPAXI@Z (FUNCTION)", "0x100313f6"], ["0x10059751", "mov dword ptr [ebp - 0x10], eax", "0x100313fb"], ["0x10059754", "add esp, 4", "0x100313fe"], ["0x10059757", "mov esi, eax", "0x10031401"], ["0x10059759", "mov ecx, 0", "0x10031403"], ["0x1005975e", "mov byte ptr [ebp - 4], 0x2e", "0x10031408"], ["0x10059762", "test esi, esi", "0x1003140c"], ["0x10059764", "je 0x9", "0x1003140e"], ["0x10059766", "mov ecx, esi", "0x10031410"], ["0x10059768", "call MxTransitionManager::MxTransitionManager (FUNCTION)", "0x10031412"], ["0x1005976d", "mov ecx, eax", "0x10031417"], ["0x1005976f", "xor ebx, ebx", "0x10031419"], ["0x10059771", "mov edx, dword ptr [ebp - 0x14]", "0x1003141b"], ["0x10059774", "mov byte ptr [ebp - 4], bl", "0x1003141e"], ["0x10059777", "test ecx, ecx", "0x10031421"], ["0x10059779", "mov dword ptr [edx + 0x138], ecx", "0x10031423"]]}, {"orig": [["0x1005977f", "je -0x796"]], "recomp": [["0x10031429", "je -0x780"]]}, {"both": [["0x10059785", "mov eax, dword ptr [ecx]", "0x1003142f"], ["0x10059787", "call dword ptr [eax + 0x14]", "0x10031431"], ["0x1005978a", "test eax, eax", "0x10031434"]]}, {"orig": [["0x1005978c", "jne -0x7a3"]], "recomp": [["0x10031436", "jne -0x78d"]]}, {"both": [["0x10059792", "mov edx, dword ptr [ebp - 0x14]", "0x1003143c"], ["0x10059795", "push edx", "0x1003143f"], ["0x10059796", "mov ecx, dword ptr [edx + 0x28]", "0x10031440"], ["0x10059799", "call MxNotificationManager::Register (FUNCTION)", "0x10031443"], ["0x1005979e", "push 1", "0x10031448"], ["0x100597a0", "call SetAppCursor (FUNCTION)", "0x1003144a"], ["0x100597a5", "add esp, 4", "0x1003144f"], ["0x100597a8", "mov edx, dword ptr [ebp - 0x14]", "0x10031452"], ["0x100597ab", "push ebx", "0x10031455"], ["0x100597ac", "mov ecx, dword ptr [edx + 0x9c]", "0x10031456"], ["0x100597b2", "call LegoGameState::SetCurrentAct (FUNCTION)", "0x1003145c"], ["0x100597b7", "mov dword ptr [ebp - 0x20], ebx", "0x10031461"]]}, {"orig": [["0x100597ba", "jmp -0x7d0"]], "recomp": [["0x10031464", "jmp -0x7ba"]]}, {"both": [["0x100597bf", "mov eax, dword ptr [ebp - 0x10]", "0x10031469"], ["0x100597c2", "push eax", "0x1003146c"], ["0x100597c3", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003146d"], ["0x100597c8", "add esp, 4", "0x10031472"], ["0x100597cb", "ret ", "0x10031475"], ["0x100597cc", "mov eax, dword ptr [ebp - 0x10]", "0x10031476"], ["0x100597cf", "push eax", "0x10031479"], ["0x100597d0", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003147a"], ["0x100597d5", "add esp, 4", "0x1003147f"], ["0x100597d8", "ret ", "0x10031482"]]}]], ["@@ -0x10059898,10 +0x10031542,16 @@", [{"both": [["0x10059898", "add esp, 4", "0x10031542"], ["0x1005989b", "ret ", "0x10031545"], ["0x1005989c", "mov eax, dword ptr [ebp - 0x10]", "0x10031546"], ["0x1005989f", "push eax", "0x10031549"], ["0x100598a0", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003154a"], ["0x100598a5", "add esp, 4", "0x1003154f"], ["0x100598a8", "ret ", "0x10031552"], ["0x100598a9", "mov eax, dword ptr [ebp - 0x1c]", "0x10031553"], ["0x100598ac", "push eax", "0x10031556"], ["0x100598ad", "call ??3@YAXPAX@Z (FUNCTION)", "0x10031557"]]}, {"orig": [], "recomp": [["0x1003155c", "add esp, 4"], ["0x1003155f", "ret "], ["0x10031560", "mov eax, <OFFSET71>"], ["0x10031565", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1003156a", "lea ecx, [ebp - 0x2c]"], ["0x1003156d", "jmp MxAutoLock::~MxAutoLock (FUNCTION)"]]}]]]}, {"address": "0x100598d0", "recomp": "0x10031580", "name": "LegoWorldList::Compare", "matching": 1.0, "diff": []}, {"address": "0x100598f0", "recomp": "0x10031600", "name": "MxCollection<LegoWorld *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x10059900", "recomp": "0x100315b0", "name": "MxCollection<LegoWorld *>::~MxCollection<LegoWorld *>", "matching": 1.0, "diff": []}, {"address": "0x10059950", "recomp": "0x100315a0", "name": "MxCollection<LegoWorld *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10059960", "recomp": "0x10033330", "name": "MxList<LegoWorld *>::~MxList<LegoWorld *>", "matching": 1.0, "diff": []}, {"address": "0x100599f0", "recomp": "0x10031610", "name": "MxPtrList<LegoWorld>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x10059a00", "recomp": "0x10031620", "name": "LegoWorldList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10059a70", "recomp": "0x10031690", "name": "MxPtrList<LegoWorld>::~MxPtrList<LegoWorld>", "matching": 1.0, "diff": []}, {"address": "0x10059ac0", "recomp": "0x100316e0", "name": "MxCollection<LegoWorld *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10059b30", "recomp": "0x10031750", "name": "MxList<LegoWorld *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10059be0", "recomp": "0x10031800", "name": "MxPtrList<LegoWorld>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10059c50", "recomp": "0x10031950", "name": "allocator<LegoTextureInfo *>::_Charalloc", "matching": 1.0, "diff": []}, {"address": "0x10059c70", "recomp": "0x10031970", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Color", "matching": 1.0, "diff": []}, {"address": "0x10059c80", "recomp": "0x10031980", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Left", "matching": 1.0, "diff": []}, {"address": "0x10059c90", "recomp": "0x10031990", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Parent", "matching": 1.0, "diff": []}, {"address": "0x10059ca0", "recomp": "0x100319a0", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Right", "matching": 1.0, "diff": []}, {"address": "0x10059cb0", "recomp": "0x100319b0", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::~_Tree<char const *,pair<char con", "matching": 0.9848484848484849, "diff": [["@@ -0x10059cc3,21 +0x100319c3,21 @@", [{"both": [["0x10059cc3", "mov eax, dword ptr [ecx]", "0x100319c3"], ["0x10059cc5", "mov dword ptr [esp + 0xc], eax", "0x100319c5"], ["0x10059cc9", "mov dword ptr [esp + 0x14], eax", "0x100319c9"], ["0x10059ccd", "je 0x4e", "0x100319cd"], ["0x10059ccf", "cmp dword ptr [ecx], eax", "0x100319cf"], ["0x10059cd1", "jne 0x4a", "0x100319d1"], ["0x10059cd3", "cmp ecx, ecx", "0x100319d3"], ["0x10059cd5", "jne 0x46", "0x100319d5"], ["0x10059cd7", "mov edi, dword ptr [ecx + 4]", "0x100319d7"], ["0x10059cda", "mov ebx, edi", "0x100319da"]]}, {"orig": [["0x10059cdc", "cmp ebx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x100319dc", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ebx"]]}, {"both": [["0x10059ce2", "je 0x1a", "0x100319e2"], ["0x10059ce4", "mov eax, dword ptr [ebx + 8]", "0x100319e4"], ["0x10059ce7", "mov ecx, esi", "0x100319e7"], ["0x10059ce9", "push eax", "0x100319e9"], ["0x10059cea", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Erase (FUNCTION)", "0x100319ea"], ["0x10059cef", "mov ebx, dword ptr [ebx]", "0x100319ef"], ["0x10059cf1", "push edi", "0x100319f1"], ["0x10059cf2", "mov edi, ebx", "0x100319f2"], ["0x10059cf4", "call ??3@YAXPAX@Z (FUNCTION)", "0x100319f4"], ["0x10059cf9", "add esp, 4", "0x100319f9"]]}]]]}, {"address": "0x10059d80", "recomp": "0x10031a80", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::iterator::_Inc", "matching": 0.9166666666666666, "diff": [["@@ -0x10059d80,16 +0x10031a80,16 @@", [{"both": [["0x10059d80", "mov eax, dword ptr [ecx]", "0x10031a80"], ["0x10059d82", "mov edx, dword ptr [eax + 8]", "0x10031a82"]]}, {"orig": [["0x10059d85", "cmp edx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031a85", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], edx"]]}, {"both": [["0x10059d8b", "je 0x11", "0x10031a8b"], ["0x10059d8d", "mov eax, dword ptr [edx]", "0x10031a8d"]]}, {"orig": [["0x10059d8f", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031a8f", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10059d95", "je 0x4", "0x10031a95"], ["0x10059d97", "mov edx, eax", "0x10031a97"], ["0x10059d99", "jmp -0xe", "0x10031a99"], ["0x10059d9b", "mov dword ptr [ecx], edx", "0x10031a9b"], ["0x10059d9d", "ret ", "0x10031a9d"], ["0x10059d9e", "mov edx, dword ptr [eax + 4]", "0x10031a9e"], ["0x10059da1", "cmp dword ptr [edx + 8], eax", "0x10031aa1"], ["0x10059da4", "jne 0xc", "0x10031aa4"], ["0x10059da6", "mov dword ptr [ecx], edx", "0x10031aa6"], ["0x10059da8", "mov eax, edx", "0x10031aa8"]]}]]]}, {"address": "0x10059dc0", "recomp": "0x10031ac0", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::erase", "matching": 0.9039242219215156, "diff": [["@@ -0x10059dc0,63 +0x10031ac0,63 @@", [{"both": [["0x10059dc0", "mov eax, dword ptr [esp + 8]", "0x10031ac0"], ["0x10059dc4", "sub esp, 4", "0x10031ac4"], ["0x10059dc7", "mov dword ptr [esp], eax", "0x10031ac7"], ["0x10059dcb", "push ebx", "0x10031acb"], ["0x10059dcc", "push esi", "0x10031acc"], ["0x10059dcd", "push edi", "0x10031acd"], ["0x10059dce", "push ebp", "0x10031ace"], ["0x10059dcf", "mov esi, ecx", "0x10031acf"], ["0x10059dd1", "mov ecx, dword ptr [eax + 8]", "0x10031ad1"]]}, {"orig": [["0x10059dd4", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031ad4", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ecx"]]}, {"both": [["0x10059dda", "je 0x14", "0x10031ada"], ["0x10059ddc", "mov eax, dword ptr [ecx]", "0x10031adc"]]}, {"orig": [["0x10059dde", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031ade", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10059de4", "je 0x4", "0x10031ae4"], ["0x10059de6", "mov ecx, eax", "0x10031ae6"], ["0x10059de8", "jmp -0xe", "0x10031ae8"], ["0x10059dea", "mov dword ptr [esp + 0x1c], ecx", "0x10031aea"], ["0x10059dee", "jmp 0x29", "0x10031aee"], ["0x10059df0", "mov ecx, dword ptr [esp + 0x1c]", "0x10031af0"], ["0x10059df4", "mov eax, dword ptr [ecx + 4]", "0x10031af4"], ["0x10059df7", "cmp dword ptr [eax + 8], ecx", "0x10031af7"], ["0x10059dfa", "jne 0x10", "0x10031afa"], ["0x10059dfc", "mov dword ptr [esp + 0x1c], eax", "0x10031afc"], ["0x10059e00", "mov eax, dword ptr [eax + 4]", "0x10031b00"], ["0x10059e03", "mov ecx, dword ptr [esp + 0x1c]", "0x10031b03"], ["0x10059e07", "cmp dword ptr [eax + 8], ecx", "0x10031b07"], ["0x10059e0a", "je -0x10", "0x10031b0a"], ["0x10059e0c", "mov ecx, dword ptr [esp + 0x1c]", "0x10031b0c"], ["0x10059e10", "cmp dword ptr [ecx + 8], eax", "0x10031b10"], ["0x10059e13", "je 0x4", "0x10031b13"], ["0x10059e15", "mov dword ptr [esp + 0x1c], eax", "0x10031b15"], ["0x10059e19", "mov ecx, dword ptr [esp + 0x10]", "0x10031b19"], ["0x10059e1d", "mov ebx, dword ptr [ecx]", "0x10031b1d"]]}, {"orig": [["0x10059e1f", "cmp ebx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031b1f", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ebx"]]}, {"both": [["0x10059e25", "je 0x26", "0x10031b25"], ["0x10059e27", "lea edi, [ecx + 8]", "0x10031b27"], ["0x10059e2a", "mov edx, dword ptr [edi]", "0x10031b2a"]]}, {"orig": [["0x10059e2c", "cmp edx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031b2c", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], edx"]]}, {"both": [["0x10059e32", "je 0x15", "0x10031b32"], ["0x10059e34", "mov eax, dword ptr [edx]", "0x10031b34"]]}, {"orig": [["0x10059e36", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031b36", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10059e3c", "je 0x4", "0x10031b3c"], ["0x10059e3e", "mov edx, eax", "0x10031b3e"], ["0x10059e40", "jmp -0xe", "0x10031b40"], ["0x10059e42", "mov ecx, edx", "0x10031b42"], ["0x10059e44", "mov edx, dword ptr [edx + 8]", "0x10031b44"], ["0x10059e47", "jmp 0xe", "0x10031b47"], ["0x10059e49", "mov edx, ebx", "0x10031b49"], ["0x10059e4b", "jmp 0xa", "0x10031b4b"], ["0x10059e4d", "mov edi, dword ptr [esp + 0x10]", "0x10031b4d"], ["0x10059e51", "mov edx, dword ptr [edi + 8]", "0x10031b51"], ["0x10059e54", "add edi, 8", "0x10031b54"]]}, {"orig": [["0x10059e57", "cmp dword ptr [esp + 0x10], ecx"]], "recomp": [["0x10031b57", "cmp ecx, dword ptr [esp + 0x10]"]]}, {"both": [["0x10059e5b", "jne 0x8f", "0x10031b5b"], ["0x10059e61", "mov eax, dword ptr [ecx + 4]", "0x10031b61"], ["0x10059e64", "mov ebx, dword ptr [esp + 0x10]", "0x10031b64"], ["0x10059e68", "mov dword ptr [edx + 4], eax", "0x10031b68"], ["0x10059e6b", "mov eax, dword ptr [esi + 4]", "0x10031b6b"], ["0x10059e6e", "add eax, 4", "0x10031b6e"], ["0x10059e71", "cmp dword ptr [eax], ebx", "0x10031b71"], ["0x10059e73", "je 0xc", "0x10031b73"], ["0x10059e75", "mov eax, dword ptr [ebx + 4]", "0x10031b75"], ["0x10059e78", "cmp dword ptr [eax], ebx", "0x10031b78"]]}]], ["@@ -0x10059e7c,42 +0x10031b7c,42 @@", [{"both": [["0x10059e7c", "mov dword ptr [eax + 8], edx", "0x10031b7c"], ["0x10059e7f", "jmp 0x2", "0x10031b7f"], ["0x10059e81", "mov dword ptr [eax], edx", "0x10031b81"], ["0x10059e83", "mov ebx, dword ptr [esi + 4]", "0x10031b83"], ["0x10059e86", "mov eax, dword ptr [esp + 0x10]", "0x10031b86"], ["0x10059e8a", "cmp dword ptr [ebx], eax", "0x10031b8a"], ["0x10059e8c", "jne 0x26", "0x10031b8c"], ["0x10059e8e", "mov eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]", "0x10031b8e"], ["0x10059e93", "cmp dword ptr [edi], eax", "0x10031b93"], ["0x10059e95", "je 0x14", "0x10031b95"]]}, {"orig": [["0x10059e97", "mov eax, edx"], ["0x10059e99", "mov edi, dword ptr [eax]"], ["0x10059e9b", "cmp edi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"], ["0x10059ea1", "je 0x4"], ["0x10059ea3", "mov eax, edi"]], "recomp": [["0x10031b97", "mov edi, edx"], ["0x10031b99", "mov eax, dword ptr [edi]"], ["0x10031b9b", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"], ["0x10031ba1", "je 0x4"], ["0x10031ba3", "mov edi, eax"]]}, {"both": [["0x10059ea5", "jmp -0xe", "0x10031ba5"]]}, {"orig": [["0x10059ea7", "mov dword ptr [ebx], eax"]], "recomp": [["0x10031ba7", "mov dword ptr [ebx], edi"]]}, {"both": [["0x10059ea9", "jmp 0x9", "0x10031ba9"], ["0x10059eab", "mov eax, dword ptr [esp + 0x10]", "0x10031bab"], ["0x10059eaf", "mov ebp, dword ptr [eax + 4]", "0x10031baf"], ["0x10059eb2", "mov dword ptr [ebx], ebp", "0x10031bb2"], ["0x10059eb4", "mov edi, dword ptr [esi + 4]", "0x10031bb4"], ["0x10059eb7", "mov eax, dword ptr [esp + 0x10]", "0x10031bb7"], ["0x10059ebb", "add edi, 8", "0x10031bbb"], ["0x10059ebe", "cmp dword ptr [edi], eax", "0x10031bbe"], ["0x10059ec0", "jne 0x88", "0x10031bc0"], ["0x10059ec6", "mov ebx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]", "0x10031bc6"], ["0x10059ecc", "cmp dword ptr [eax], ebx", "0x10031bcc"], ["0x10059ece", "je 0x15", "0x10031bce"], ["0x10059ed0", "mov eax, edx", "0x10031bd0"], ["0x10059ed2", "mov ebx, dword ptr [eax + 8]", "0x10031bd2"]]}, {"orig": [["0x10059ed5", "cmp ebx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031bd5", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ebx"]]}, {"both": [["0x10059edb", "je 0x4", "0x10031bdb"], ["0x10059edd", "mov eax, ebx", "0x10031bdd"], ["0x10059edf", "jmp -0xf", "0x10031bdf"], ["0x10059ee1", "mov dword ptr [edi], eax", "0x10031be1"], ["0x10059ee3", "jmp 0x69", "0x10031be3"], ["0x10059ee5", "mov eax, dword ptr [esp + 0x10]", "0x10031be5"], ["0x10059ee9", "mov ebx, dword ptr [eax + 4]", "0x10031be9"], ["0x10059eec", "mov dword ptr [edi], ebx", "0x10031bec"], ["0x10059eee", "jmp 0x5e", "0x10031bee"], ["0x10059ef0", "mov eax, dword ptr [esp + 0x10]", "0x10031bf0"]]}]], ["@@ -0x10059f35,43 +0x10031c35,43 @@", [{"both": [["0x10059f35", "mov eax, dword ptr [esp + 0x10]", "0x10031c35"], ["0x10059f39", "mov ebx, dword ptr [eax + 4]", "0x10031c39"], ["0x10059f3c", "lea edi, [eax + 0x14]", "0x10031c3c"], ["0x10059f3f", "mov dword ptr [ecx + 4], ebx", "0x10031c3f"], ["0x10059f42", "mov ebx, dword ptr [edi]", "0x10031c42"], ["0x10059f44", "mov ebp, dword ptr [ecx + 0x14]", "0x10031c44"], ["0x10059f47", "mov dword ptr [ecx + 0x14], ebx", "0x10031c47"], ["0x10059f4a", "mov ecx, eax", "0x10031c4a"], ["0x10059f4c", "mov dword ptr [edi], ebp", "0x10031c4c"], ["0x10059f4e", "cmp dword ptr [ecx + 0x14], 1", "0x10031c4e"]]}, {"orig": [["0x10059f52", "jne 0x296"]], "recomp": [["0x10031c52", "jne 0x297"]]}, {"both": [["0x10059f58", "mov eax, dword ptr [esi + 4]", "0x10031c58"], ["0x10059f5b", "cmp dword ptr [eax + 4], edx", "0x10031c5b"]]}, {"orig": [["0x10059f5e", "je 0x283"]], "recomp": [["0x10031c5e", "je 0x284"]]}, {"both": [["0x10059f64", "cmp dword ptr [edx + 0x14], 1", "0x10031c64"]]}, {"orig": [["0x10059f68", "jne 0x279"]], "recomp": [["0x10031c68", "jne 0x27a"]]}, {"both": [["0x10059f6e", "lea ebx, [edx + 4]", "0x10031c6e"], ["0x10059f71", "mov eax, dword ptr [ebx]", "0x10031c71"], ["0x10059f73", "mov edi, dword ptr [eax]", "0x10031c73"], ["0x10059f75", "cmp edx, edi", "0x10031c75"], ["0x10059f77", "jne 0x76", "0x10031c77"], ["0x10059f79", "mov edi, dword ptr [eax + 8]", "0x10031c79"], ["0x10059f7c", "cmp dword ptr [edi + 0x14], 0", "0x10031c7c"], ["0x10059f80", "jne 0x52", "0x10031c80"], ["0x10059f82", "mov dword ptr [edi + 0x14], 1", "0x10031c82"], ["0x10059f89", "mov eax, dword ptr [ebx]", "0x10031c89"], ["0x10059f8b", "mov dword ptr [eax + 0x14], 0", "0x10031c8b"], ["0x10059f92", "mov eax, dword ptr [ebx]", "0x10031c92"], ["0x10059f94", "mov ebp, dword ptr [eax + 8]", "0x10031c94"], ["0x10059f97", "mov edi, dword ptr [ebp]", "0x10031c97"], ["0x10059f9a", "mov dword ptr [eax + 8], edi", "0x10031c9a"], ["0x10059f9d", "mov edi, dword ptr [ebp]", "0x10031c9d"]]}, {"orig": [["0x10059fa0", "cmp edi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031ca0", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], edi"]]}, {"both": [["0x10059fa6", "je 0x3", "0x10031ca6"], ["0x10059fa8", "mov dword ptr [edi + 4], eax", "0x10031ca8"], ["0x10059fab", "mov edi, dword ptr [eax + 4]", "0x10031cab"], ["0x10059fae", "mov dword ptr [ebp + 4], edi", "0x10031cae"], ["0x10059fb1", "mov edi, dword ptr [esi + 4]", "0x10031cb1"], ["0x10059fb4", "add edi, 4", "0x10031cb4"], ["0x10059fb7", "cmp dword ptr [edi], eax", "0x10031cb7"], ["0x10059fb9", "je 0xc", "0x10031cb9"], ["0x10059fbb", "mov edi, dword ptr [eax + 4]", "0x10031cbb"], ["0x10059fbe", "cmp dword ptr [edi], eax", "0x10031cbe"]]}]], ["@@ -0x10059fef,95 +0x10031cef,95 @@", [{"both": [["0x10059fef", "cmp dword ptr [edi + 0x14], 0", "0x10031cef"], ["0x10059ff3", "jne 0x50", "0x10031cf3"], ["0x10059ff5", "mov dword ptr [edi + 0x14], 1", "0x10031cf5"], ["0x10059ffc", "mov eax, dword ptr [ebx]", "0x10031cfc"], ["0x10059ffe", "mov dword ptr [eax + 0x14], 0", "0x10031cfe"], ["0x1005a005", "mov edi, dword ptr [ebx]", "0x10031d05"], ["0x1005a007", "mov ebp, dword ptr [edi]", "0x10031d07"], ["0x1005a009", "mov eax, dword ptr [ebp + 8]", "0x10031d09"], ["0x1005a00c", "mov dword ptr [edi], eax", "0x10031d0c"], ["0x1005a00e", "mov eax, dword ptr [ebp + 8]", "0x10031d0e"]]}, {"orig": [["0x1005a011", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031d11", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1005a017", "je 0x3", "0x10031d17"], ["0x1005a019", "mov dword ptr [eax + 4], edi", "0x10031d19"], ["0x1005a01c", "mov eax, dword ptr [edi + 4]", "0x10031d1c"], ["0x1005a01f", "mov dword ptr [ebp + 4], eax", "0x10031d1f"], ["0x1005a022", "mov eax, dword ptr [esi + 4]", "0x10031d22"], ["0x1005a025", "add eax, 4", "0x10031d25"], ["0x1005a028", "cmp dword ptr [eax], edi", "0x10031d28"], ["0x1005a02a", "je 0xd", "0x10031d2a"], ["0x1005a02c", "mov eax, dword ptr [edi + 4]", "0x10031d2c"], ["0x1005a02f", "add eax, 8", "0x10031d2f"], ["0x1005a032", "cmp dword ptr [eax], edi", "0x10031d32"], ["0x1005a034", "je 0x3", "0x10031d34"], ["0x1005a036", "mov eax, dword ptr [edi + 4]", "0x10031d36"], ["0x1005a039", "mov dword ptr [eax], ebp", "0x10031d39"], ["0x1005a03b", "mov dword ptr [ebp + 8], edi", "0x10031d3b"], ["0x1005a03e", "mov dword ptr [edi + 4], ebp", "0x10031d3e"], ["0x1005a041", "mov eax, dword ptr [ebx]", "0x10031d41"], ["0x1005a043", "mov edi, dword ptr [eax]", "0x10031d43"], ["0x1005a045", "mov eax, dword ptr [edi + 8]", "0x10031d45"], ["0x1005a048", "cmp dword ptr [eax + 0x14], 1", "0x10031d48"]]}, {"orig": [["0x1005a04c", "jne 0xe6"], ["0x1005a052", "mov eax, dword ptr [edi]"], ["0x1005a054", "cmp dword ptr [eax + 0x14], 1"], ["0x1005a058", "jne 0xda"]], "recomp": [["0x10031d4c", "jne 0xe7"], ["0x10031d52", "mov eax, dword ptr [edi]"], ["0x10031d54", "cmp dword ptr [eax + 0x14], 1"], ["0x10031d58", "jne 0xdb"]]}, {"both": [["0x1005a05e", "mov dword ptr [edi + 0x14], 0", "0x10031d5e"], ["0x1005a065", "mov edx, dword ptr [ebx]", "0x10031d65"], ["0x1005a067", "mov eax, dword ptr [esi + 4]", "0x10031d67"], ["0x1005a06a", "cmp dword ptr [eax + 4], edx", "0x10031d6a"], ["0x1005a06d", "jne -0x10f", "0x10031d6d"]]}, {"orig": [["0x1005a073", "jmp 0x16f"], ["0x1005a078", "mov eax, dword ptr [edi + 8]"], ["0x1005a07b", "cmp dword ptr [eax + 0x14], 1"], ["0x1005a07f", "jne 0x52"]], "recomp": [["0x10031d73", "jmp 0x170"], ["0x10031d78", "mov eax, dword ptr [edi + 8]"], ["0x10031d7b", "cmp dword ptr [eax + 0x14], 1"], ["0x10031d7f", "jne 0x53"]]}, {"both": [["0x1005a081", "mov eax, dword ptr [edi]", "0x10031d81"], ["0x1005a083", "mov dword ptr [eax + 0x14], 1", "0x10031d83"], ["0x1005a08a", "mov dword ptr [edi + 0x14], 0", "0x10031d8a"], ["0x1005a091", "mov ebx, dword ptr [edi]", "0x10031d91"], ["0x1005a093", "mov ebp, dword ptr [ebx + 8]", "0x10031d93"], ["0x1005a096", "mov dword ptr [edi], ebp", "0x10031d96"], ["0x1005a098", "mov eax, dword ptr [ebx + 8]", "0x10031d98"]]}, {"orig": [["0x1005a09b", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031d9b", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1005a0a1", "je 0x3", "0x10031da1"], ["0x1005a0a3", "mov dword ptr [eax + 4], edi", "0x10031da3"], ["0x1005a0a6", "mov eax, dword ptr [edi + 4]", "0x10031da6"], ["0x1005a0a9", "mov dword ptr [ebx + 4], eax", "0x10031da9"], ["0x1005a0ac", "mov eax, dword ptr [esi + 4]", "0x10031dac"], ["0x1005a0af", "add eax, 4", "0x10031daf"], ["0x1005a0b2", "cmp dword ptr [eax], edi", "0x10031db2"]]}, {"orig": [["0x1005a0b4", "je 0xf"], ["0x1005a0b6", "mov ebp, dword ptr [edi + 4]"], ["0x1005a0b9", "lea eax, [ebp + 8]"], ["0x1005a0bc", "cmp dword ptr [eax], edi"], ["0x1005a0be", "je 0x5"]], "recomp": [["0x10031db4", "je 0x10"], ["0x10031db6", "mov eax, dword ptr [edi + 4]"], ["0x10031db9", "lea ebp, [eax + 8]"], ["0x10031dbc", "cmp dword ptr [ebp], edi"], ["0x10031dbf", "jne 0x5"]]}, {"both": [["0x1005a0c0", "mov dword ptr [ebp], ebx", "0x10031dc1"], ["0x1005a0c3", "jmp 0x2", "0x10031dc4"], ["0x1005a0c5", "mov dword ptr [eax], ebx", "0x10031dc6"], ["0x1005a0c7", "mov dword ptr [ebx + 8], edi", "0x10031dc8"], ["0x1005a0ca", "mov dword ptr [edi + 4], ebx", "0x10031dcb"], ["0x1005a0cd", "mov eax, dword ptr [edx + 4]", "0x10031dce"], ["0x1005a0d0", "mov edi, dword ptr [eax + 8]", "0x10031dd1"], ["0x1005a0d3", "mov eax, dword ptr [edx + 4]", "0x10031dd4"], ["0x1005a0d6", "mov ebx, dword ptr [eax + 0x14]", "0x10031dd7"], ["0x1005a0d9", "mov dword ptr [edi + 0x14], ebx", "0x10031dda"], ["0x1005a0dc", "mov ebx, 1", "0x10031ddd"], ["0x1005a0e1", "mov eax, dword ptr [edx + 4]", "0x10031de2"], ["0x1005a0e4", "mov dword ptr [eax + 0x14], ebx", "0x10031de5"], ["0x1005a0e7", "mov ebp, dword ptr [edi + 8]", "0x10031de8"], ["0x1005a0ea", "mov dword ptr [ebp + 0x14], ebx", "0x10031deb"], ["0x1005a0ed", "mov ebx, dword ptr [edx + 4]", "0x10031dee"], ["0x1005a0f0", "mov edi, dword ptr [ebx + 8]", "0x10031df1"], ["0x1005a0f3", "mov eax, dword ptr [edi]", "0x10031df4"], ["0x1005a0f5", "mov dword ptr [ebx + 8], eax", "0x10031df6"], ["0x1005a0f8", "mov eax, dword ptr [edi]", "0x10031df9"]]}, {"orig": [["0x1005a0fa", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031dfb", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1005a100", "je 0x3", "0x10031e01"], ["0x1005a102", "mov dword ptr [eax + 4], ebx", "0x10031e03"], ["0x1005a105", "mov eax, dword ptr [ebx + 4]", "0x10031e06"], ["0x1005a108", "mov dword ptr [edi + 4], eax", "0x10031e09"], ["0x1005a10b", "mov eax, dword ptr [esi + 4]", "0x10031e0c"], ["0x1005a10e", "add eax, 4", "0x10031e0f"], ["0x1005a111", "cmp dword ptr [eax], ebx", "0x10031e12"], ["0x1005a113", "je 0x1a", "0x10031e14"], ["0x1005a115", "mov eax, dword ptr [ebx + 4]", "0x10031e16"], ["0x1005a118", "cmp dword ptr [eax], ebx", "0x10031e19"]]}]], ["@@ -0x1005a138,21 +0x10031e39,21 @@", [{"both": [["0x1005a138", "mov eax, dword ptr [edi]", "0x10031e39"], ["0x1005a13a", "cmp dword ptr [eax + 0x14], 1", "0x10031e3b"], ["0x1005a13e", "jne 0x4e", "0x10031e3f"], ["0x1005a140", "mov eax, dword ptr [edi + 8]", "0x10031e41"], ["0x1005a143", "mov dword ptr [eax + 0x14], 1", "0x10031e44"], ["0x1005a14a", "mov dword ptr [edi + 0x14], 0", "0x10031e4b"], ["0x1005a151", "mov ebx, dword ptr [edi + 8]", "0x10031e52"], ["0x1005a154", "mov ebp, dword ptr [ebx]", "0x10031e55"], ["0x1005a156", "mov dword ptr [edi + 8], ebp", "0x10031e57"], ["0x1005a159", "mov eax, dword ptr [ebx]", "0x10031e5a"]]}, {"orig": [["0x1005a15b", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031e5c", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1005a161", "je 0x3", "0x10031e62"], ["0x1005a163", "mov dword ptr [eax + 4], edi", "0x10031e64"], ["0x1005a166", "mov eax, dword ptr [edi + 4]", "0x10031e67"], ["0x1005a169", "mov dword ptr [ebx + 4], eax", "0x10031e6a"], ["0x1005a16c", "mov eax, dword ptr [esi + 4]", "0x10031e6d"], ["0x1005a16f", "add eax, 4", "0x10031e70"], ["0x1005a172", "cmp dword ptr [eax], edi", "0x10031e73"], ["0x1005a174", "je 0xc", "0x10031e75"], ["0x1005a176", "mov eax, dword ptr [edi + 4]", "0x10031e77"], ["0x1005a179", "cmp dword ptr [eax], edi", "0x10031e7a"]]}]], ["@@ -0x1005a197,21 +0x10031e98,21 @@", [{"both": [["0x1005a197", "mov ebx, 1", "0x10031e98"], ["0x1005a19c", "mov eax, dword ptr [edx + 4]", "0x10031e9d"], ["0x1005a19f", "mov dword ptr [eax + 0x14], ebx", "0x10031ea0"], ["0x1005a1a2", "mov ebp, dword ptr [edi]", "0x10031ea3"], ["0x1005a1a4", "mov dword ptr [ebp + 0x14], ebx", "0x10031ea5"], ["0x1005a1a7", "mov ebx, dword ptr [edx + 4]", "0x10031ea8"], ["0x1005a1aa", "mov edi, dword ptr [ebx]", "0x10031eab"], ["0x1005a1ac", "mov eax, dword ptr [edi + 8]", "0x10031ead"], ["0x1005a1af", "mov dword ptr [ebx], eax", "0x10031eb0"], ["0x1005a1b1", "mov eax, dword ptr [edi + 8]", "0x10031eb2"]]}, {"orig": [["0x1005a1b4", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031eb5", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1005a1ba", "je 0x3", "0x10031ebb"], ["0x1005a1bc", "mov dword ptr [eax + 4], ebx", "0x10031ebd"], ["0x1005a1bf", "mov eax, dword ptr [ebx + 4]", "0x10031ec0"], ["0x1005a1c2", "mov dword ptr [edi + 4], eax", "0x10031ec3"], ["0x1005a1c5", "mov eax, dword ptr [esi + 4]", "0x10031ec6"], ["0x1005a1c8", "add eax, 4", "0x10031ec9"], ["0x1005a1cb", "cmp dword ptr [eax], ebx", "0x10031ecc"], ["0x1005a1cd", "je 0x10", "0x10031ece"], ["0x1005a1cf", "mov eax, dword ptr [ebx + 4]", "0x10031ed0"], ["0x1005a1d2", "lea ebp, [eax + 8]", "0x10031ed3"]]}]], ["@@ -0x1005a1f8,11 +0x10031ef9,10 @@", [{"both": [["0x1005a1f8", "mov eax, dword ptr [esp + 0x1c]", "0x10031ef9"], ["0x1005a1fc", "add esp, 4", "0x10031efd"], ["0x1005a1ff", "dec dword ptr [esi + 0xc]", "0x10031f00"], ["0x1005a202", "mov dword ptr [eax], ecx", "0x10031f03"], ["0x1005a204", "pop ebp", "0x10031f05"], ["0x1005a205", "pop edi", "0x10031f06"], ["0x1005a206", "pop esi", "0x10031f07"], ["0x1005a207", "pop ebx", "0x10031f08"], ["0x1005a208", "add esp, 4", "0x10031f09"], ["0x1005a20b", "ret 8", "0x10031f0c"]]}, {"orig": [["0x1005a20e", "int3 "]], "recomp": []}]]]}, {"address": "0x1005a210", "recomp": "0x10031f10", "name": "_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Erase", "matching": 0.5652173913043478, "diff": [["@@ -0x1005a210,23 +0x10031f10,23 @@", [{"both": [["0x1005a210", "push ebx", "0x10031f10"], ["0x1005a211", "push esi", "0x10031f11"]]}, {"orig": [["0x1005a212", "mov esi, dword ptr [esp + 0xc]"]], "recomp": []}, {"both": [["0x1005a216", "push edi", "0x10031f12"]]}, {"orig": [["0x1005a217", "mov edi, ecx"], ["0x1005a219", "mov ebx, esi"], ["0x1005a21b", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031f13", "mov esi, ecx"], ["0x10031f15", "mov ebx, dword ptr [esp + 0x10]"], ["0x10031f19", "mov edi, ebx"], ["0x10031f1b", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ebx"]]}, {"both": [["0x1005a221", "je 0x20", "0x10031f21"]]}, {"orig": [["0x1005a223", "mov eax, dword ptr [ebx + 8]"], ["0x1005a226", "mov ecx, edi"]], "recomp": [["0x10031f23", "mov eax, dword ptr [edi + 8]"], ["0x10031f26", "mov ecx, esi"]]}, {"both": [["0x1005a228", "push eax", "0x10031f28"], ["0x1005a229", "call _Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Erase (FUNCTION)", "0x10031f29"]]}, {"orig": [["0x1005a22e", "mov ebx, dword ptr [ebx]"], ["0x1005a230", "push esi"], ["0x1005a231", "mov esi, ebx"]], "recomp": [["0x10031f2e", "mov edi, dword ptr [edi]"], ["0x10031f30", "push ebx"], ["0x10031f31", "mov ebx, edi"]]}, {"both": [["0x1005a233", "call ??3@YAXPAX@Z (FUNCTION)", "0x10031f33"], ["0x1005a238", "add esp, 4", "0x10031f38"]]}, {"orig": [["0x1005a23b", "cmp ebx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10031f3b", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], edi"]]}, {"both": [["0x1005a241", "jne -0x20", "0x10031f41"], ["0x1005a243", "pop edi", "0x10031f43"], ["0x1005a244", "pop esi", "0x10031f44"], ["0x1005a245", "pop ebx", "0x10031f45"], ["0x1005a246", "ret 4", "0x10031f46"]]}]]]}, {"address": "0x1005a250", "recomp": "0x10031f50", "name": "list<pair<LegoTextureInfo *,int>,allocator<pair<LegoTextureInfo *,int> > >::~list<pair<LegoTextureInfo *,int>,allocator<pair<LegoTextureInfo *,int> > >", "matching": 1.0, "effective": true, "diff": [["@@ -0x1005a250,19 +0x10031f50,19 @@", [{"both": [["0x1005a250", "sub esp, 0xc", "0x10031f50"], ["0x1005a253", "push esi", "0x10031f53"], ["0x1005a254", "push edi", "0x10031f54"], ["0x1005a255", "mov eax, dword ptr [ecx + 4]", "0x10031f55"], ["0x1005a258", "mov esi, ecx", "0x10031f58"], ["0x1005a25a", "mov dword ptr [esp + 0x10], eax", "0x10031f5a"], ["0x1005a25e", "mov ecx, dword ptr [eax]", "0x10031f5e"], ["0x1005a260", "mov edi, ecx", "0x10031f60"]]}, {"orig": [["0x1005a262", "cmp eax, ecx"]], "recomp": [["0x10031f62", "cmp ecx, eax"]]}, {"both": [["0x1005a264", "je 0x2e", "0x10031f64"], ["0x1005a266", "lea edx, [edi + 4]", "0x10031f66"], ["0x1005a269", "mov dword ptr [esp + 8], edi", "0x10031f69"], ["0x1005a26d", "mov eax, edi", "0x10031f6d"], ["0x1005a26f", "mov edi, dword ptr [edi]", "0x10031f6f"], ["0x1005a271", "mov ecx, dword ptr [edx]", "0x10031f71"], ["0x1005a273", "mov eax, dword ptr [eax]", "0x10031f73"], ["0x1005a275", "mov dword ptr [ecx], eax", "0x10031f75"], ["0x1005a277", "mov ecx, dword ptr [edx]", "0x10031f77"], ["0x1005a279", "mov eax, dword ptr [esp + 8]", "0x10031f79"]]}]]]}, {"address": "0x1005a2c0", "recomp": "0x10032170", "name": "map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::~map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >", "matching": 1.0, "diff": []}, {"address": "0x1005a310", "recomp": "0x10032030", "name": "LegoContainer<LegoTextureInfo>::`scalar deleting destructor'", "matching": 0.961038961038961, "diff": [["@@ -0x1005a321,42 +0x10032041,42 @@", [{"both": [["0x1005a321", "mov dword ptr fs:[0], esp", "0x10032041"], ["0x1005a328", "mov dword ptr [ecx], LegoContainer<LegoTextureInfo>::`vftable' (VTABLE)", "0x10032048"], ["0x1005a32e", "sub esp, 0xc", "0x1003204e"], ["0x1005a331", "mov dword ptr [ebp - 0x10], ecx", "0x10032051"], ["0x1005a334", "mov dword ptr [ebp - 4], 0", "0x10032054"], ["0x1005a33b", "push esi", "0x1003205b"], ["0x1005a33c", "mov ecx, dword ptr [ecx + 0xc]", "0x1003205c"], ["0x1005a33f", "push edi", "0x1003205f"], ["0x1005a340", "mov edx, dword ptr [ecx]", "0x10032060"], ["0x1005a342", "mov esi, edx", "0x10032062"]]}, {"orig": [["0x1005a344", "cmp edx, ecx"]], "recomp": [["0x10032064", "cmp ecx, edx"]]}, {"both": [["0x1005a346", "je 0x6a", "0x10032066"], ["0x1005a348", "mov eax, dword ptr [esi + 0xc]", "0x10032068"], ["0x1005a34b", "push eax", "0x1003206b"], ["0x1005a34c", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003206c"], ["0x1005a351", "add esp, 4", "0x10032071"], ["0x1005a354", "mov eax, dword ptr [ebp - 0x10]", "0x10032074"], ["0x1005a357", "cmp byte ptr [eax + 4], 0", "0x10032077"], ["0x1005a35b", "je 0x17", "0x1003207b"], ["0x1005a35d", "mov edi, dword ptr [esi + 0x10]", "0x1003207d"], ["0x1005a360", "test edi, edi", "0x10032080"], ["0x1005a362", "je 0x10", "0x10032082"], ["0x1005a364", "mov ecx, edi", "0x10032084"], ["0x1005a366", "call LegoTextureInfo::~LegoTextureInfo (FUNCTION)", "0x10032086"], ["0x1005a36b", "push edi", "0x1003208b"], ["0x1005a36c", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003208c"], ["0x1005a371", "add esp, 4", "0x10032091"], ["0x1005a374", "mov ecx, dword ptr [esi + 8]", "0x10032094"]]}, {"orig": [["0x1005a377", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10032097", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ecx"]]}, {"both": [["0x1005a37d", "je 0x12", "0x1003209d"], ["0x1005a37f", "mov eax, dword ptr [ecx]", "0x1003209f"]]}, {"orig": [["0x1005a381", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x100320a1", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1005a387", "je 0x4", "0x100320a7"], ["0x1005a389", "mov ecx, eax", "0x100320a9"], ["0x1005a38b", "jmp -0xe", "0x100320ab"], ["0x1005a38d", "mov esi, ecx", "0x100320ad"], ["0x1005a38f", "jmp 0x19", "0x100320af"], ["0x1005a391", "mov eax, dword ptr [esi + 4]", "0x100320b1"], ["0x1005a394", "cmp dword ptr [eax + 8], esi", "0x100320b4"], ["0x1005a397", "jne 0xa", "0x100320b7"], ["0x1005a399", "mov esi, eax", "0x100320b9"], ["0x1005a39b", "mov eax, dword ptr [eax + 4]", "0x100320bb"]]}]]]}, {"address": "0x1005a400", "recomp": "0x10032120", "name": "LegoContainerInfo<LegoTextureInfo>::~LegoContainerInfo<LegoTextureInfo>", "matching": 1.0, "diff": []}, {"address": "0x1005a450", "recomp": "0x100321c0", "name": "Map<char const *,LegoTextureInfo *,LegoContainerInfoComparator>::~Map<char const *,LegoTextureInfo *,LegoContainerInfoComparator>", "matching": 1.0, "diff": []}, {"address": "0x1005a4a0", "recomp": "0x10032210", "name": "list<MxTickleClient *,allocator<MxTickleClient *> >::~list<MxTickleClient *,allocator<MxTickleClient *> >", "matching": 1.0, "diff": []}, {"address": "0x1005a510", "recomp": "0x10032280", "name": "MxTickleManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005a530", "recomp": "0x100322a0", "name": "List<MxTickleClient *>::~List<MxTickleClient *>", "matching": 1.0, "diff": []}, {"address": "0x1005a580", "recomp": "0x10031fc0", "name": "LegoTextureContainer::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005a5a0", "recomp": "0x10031fe0", "name": "List<pair<LegoTextureInfo *,int> >::~List<pair<LegoTextureInfo *,int> >", "matching": 1.0, "diff": []}, {"address": "0x1005a5f0", "recomp": "0x100322f0", "name": "LegoOmni::RegisterScripts", "matching": 1.0, "diff": []}, {"address": "0x1005ac40", "recomp": "0x10032940", "name": "LegoOmni::ScriptContainer::ScriptContainer", "matching": 1.0, "diff": []}, {"address": "0x1005ac50", "recomp": "0x10032950", "name": "LegoOmni::ScriptContainer::operator=", "matching": 1.0, "diff": []}, {"address": "0x1005ac90", "recomp": "0x10032990", "name": "LegoOmni::CreateInstance", "matching": 1.0, "diff": []}, {"address": "0x1005ad10", "recomp": "0x10032a10", "name": "LegoOmni::GetInstance", "matching": 1.0, "diff": []}, {"address": "0x1005ad20", "recomp": "0x10032a20", "name": "LegoOmni::AddWorld", "matching": 0.8235294117647058, "diff": [["@@ -0x1005ad26,50 +0x10032a26,50 @@", [{"both": [["0x1005ad26", "push ebp", "0x10032a26"], ["0x1005ad27", "mov ebp, esp", "0x10032a27"], ["0x1005ad29", "push -1", "0x10032a29"], ["0x1005ad2b", "push <OFFSET1>", "0x10032a2b"], ["0x1005ad30", "push eax", "0x10032a30"], ["0x1005ad31", "mov dword ptr fs:[0], esp", "0x10032a31"], ["0x1005ad38", "sub esp, 4", "0x10032a38"], ["0x1005ad3b", "push ebx", "0x10032a3b"], ["0x1005ad3c", "push esi", "0x10032a3c"], ["0x1005ad3d", "push edi", "0x10032a3d"]]}, {"orig": [["0x1005ad3e", "mov esi, dword ptr [ecx + 0x78]"]], "recomp": [["0x10032a3e", "mov ebx, dword ptr [ecx + 0x78]"]]}, {"both": [["0x1005ad41", "push 0xc", "0x10032a41"]]}, {"orig": [["0x1005ad43", "mov ebx, dword ptr [esi + 0x14]"]], "recomp": [["0x10032a43", "mov esi, dword ptr [ebx + 0x14]"]]}, {"both": [["0x1005ad46", "call ??2@YAPAXI@Z (FUNCTION)", "0x10032a46"], ["0x1005ad4b", "mov dword ptr [ebp - 0x10], eax", "0x10032a4b"], ["0x1005ad4e", "add esp, 4", "0x10032a4e"], ["0x1005ad51", "mov edi, eax", "0x10032a51"], ["0x1005ad53", "xor ecx, ecx", "0x10032a53"], ["0x1005ad55", "mov eax, 0", "0x10032a55"], ["0x1005ad5a", "mov dword ptr [ebp - 4], ecx", "0x10032a5a"], ["0x1005ad5d", "test edi, edi", "0x10032a5d"], ["0x1005ad5f", "je 0xd", "0x10032a5f"], ["0x1005ad61", "mov eax, dword ptr [ebp + 8]", "0x10032a61"], ["0x1005ad64", "mov dword ptr [edi], eax", "0x10032a64"], ["0x1005ad66", "mov eax, edi", "0x10032a66"]]}, {"orig": [["0x1005ad68", "mov dword ptr [edi + 4], ebx"]], "recomp": [["0x10032a68", "mov dword ptr [edi + 4], esi"]]}, {"both": [["0x1005ad6b", "mov dword ptr [edi + 8], ecx", "0x10032a6b"], ["0x1005ad6e", "mov dword ptr [ebp - 4], 0xffffffff", "0x10032a6e"]]}, {"orig": [["0x1005ad75", "test ebx, ebx"]], "recomp": [["0x10032a75", "test esi, esi"]]}, {"both": [["0x1005ad77", "je 0x1b", "0x10032a77"]]}, {"orig": [["0x1005ad79", "mov dword ptr [ebx + 8], eax"]], "recomp": [["0x10032a79", "mov dword ptr [esi + 8], eax"]]}, {"both": [["0x1005ad7c", "pop edi", "0x10032a7c"]]}, {"orig": [["0x1005ad7d", "mov dword ptr [esi + 0x14], eax"]], "recomp": [["0x10032a7d", "mov dword ptr [ebx + 0x14], eax"]]}, {"both": [["0x1005ad80", "mov eax, dword ptr [ebp - 0xc]", "0x10032a80"]]}, {"orig": [["0x1005ad83", "inc dword ptr [esi + 8]"]], "recomp": [["0x10032a83", "pop esi"]]}, {"both": [["0x1005ad86", "mov dword ptr fs:[0], eax", "0x10032a84"]]}, {"orig": [["0x1005ad8c", "pop esi"]], "recomp": [["0x10032a8a", "inc dword ptr [ebx + 8]"]]}, {"both": [["0x1005ad8d", "pop ebx", "0x10032a8d"], ["0x1005ad8e", "mov esp, ebp", "0x10032a8e"], ["0x1005ad90", "pop ebp", "0x10032a90"], ["0x1005ad91", "ret 4", "0x10032a91"]]}, {"orig": [["0x1005ad94", "mov dword ptr [esi + 0x10], eax"]], "recomp": [["0x10032a94", "mov dword ptr [ebx + 0x10], eax"]]}, {"both": [["0x1005ad97", "jmp -0x1d", "0x10032a97"], ["0x1005ad99", "mov eax, <OFFSET3>", "0x10032a99"], ["0x1005ad9e", "jmp ___CxxFrameHandler (FUNCTION)", "0x10032a9e"], ["0x1005ada3", "mov eax, dword ptr [ebp - 0x10]", "0x10032aa3"], ["0x1005ada6", "push eax", "0x10032aa6"], ["0x1005ada7", "call ??3@YAXPAX@Z (FUNCTION)", "0x10032aa7"], ["0x1005adac", "add esp, 4", "0x10032aac"], ["0x1005adaf", "ret ", "0x10032aaf"]]}]]]}, {"address": "0x1005adb0", "recomp": "0x10032ab0", "name": "LegoOmni::DeleteWorld", "matching": 1.0, "diff": []}, {"address": "0x1005af10", "recomp": "0x10032c10", "name": "LegoOmni::RemoveWorld", "matching": 1.0, "diff": []}, {"address": "0x1005b0c0", "recomp": "0x10032dc0", "name": "LegoOmni::FindWorld", "matching": 1.0, "diff": []}, {"address": "0x1005b1d0", "recomp": "0x10032ed0", "name": "LegoOmni::DeleteObject", "matching": 0.6268656716417911, "diff": [["@@ -0x1005b1d0,67 +0x10032ed0,67 @@", [{"both": [["0x1005b1d0", "push ebx", "0x10032ed0"], ["0x1005b1d1", "push esi", "0x10032ed1"]]}, {"orig": [], "recomp": [["0x10032ed2", "mov esi, dword ptr [esp + 0xc]"]]}, {"both": [["0x1005b1d2", "push edi", "0x10032ed6"]]}, {"orig": [["0x1005b1d3", "mov ebx, ecx"], ["0x1005b1d5", "mov edi, dword ptr [esp + 0x10]"], ["0x1005b1d9", "lea esi, [edi + 0x20]"], ["0x1005b1dc", "cmp dword ptr [esi], 0"]], "recomp": [["0x10032ed7", "mov edi, ecx"], ["0x10032ed9", "lea ebx, [esi + 0x20]"], ["0x10032edc", "cmp dword ptr [ebx], 0"]]}, {"both": [["0x1005b1df", "je 0x77", "0x10032edf"]]}, {"orig": [["0x1005b1e1", "mov eax, dword ptr [edi + 0x1c]"]], "recomp": [["0x10032ee1", "mov eax, dword ptr [esi + 0x1c]"]]}, {"both": [["0x1005b1e4", "push eax", "0x10032ee4"]]}, {"orig": [["0x1005b1e5", "push esi"]], "recomp": [["0x10032ee5", "push ebx"]]}, {"both": [["0x1005b1e6", "call LegoOmni::FindWorld (FUNCTION)", "0x10032ee6"], ["0x1005b1eb", "test eax, eax", "0x10032eeb"], ["0x1005b1ed", "je 0xe", "0x10032eed"], ["0x1005b1ef", "push eax", "0x10032eef"]]}, {"orig": [["0x1005b1f0", "mov ecx, ebx"]], "recomp": [["0x10032ef0", "mov ecx, edi"]]}, {"both": [["0x1005b1f2", "call LegoOmni::DeleteWorld (FUNCTION)", "0x10032ef2"], ["0x1005b1f7", "pop edi", "0x10032ef7"], ["0x1005b1f8", "pop esi", "0x10032ef8"], ["0x1005b1f9", "pop ebx", "0x10032ef9"], ["0x1005b1fa", "ret 4", "0x10032efa"]]}, {"orig": [["0x1005b1fd", "mov ecx, dword ptr [ebx + 0x7c]"]], "recomp": [["0x10032efd", "mov ecx, dword ptr [edi + 0x7c]"]]}, {"both": [["0x1005b200", "test ecx, ecx", "0x10032f00"], ["0x1005b202", "je 0x54", "0x10032f02"]]}, {"orig": [["0x1005b204", "mov eax, dword ptr [edi + 0x1c]"]], "recomp": [["0x10032f04", "mov eax, dword ptr [esi + 0x1c]"]]}, {"both": [["0x1005b207", "push eax", "0x10032f07"]]}, {"orig": [["0x1005b208", "push esi"]], "recomp": [["0x10032f08", "push ebx"]]}, {"both": [["0x1005b209", "call LegoWorld::Find (FUNCTION)", "0x10032f09"]]}, {"orig": [["0x1005b20e", "mov esi, eax"], ["0x1005b210", "test esi, esi"]], "recomp": [["0x10032f0e", "mov ebx, eax"], ["0x10032f10", "test ebx, ebx"]]}, {"both": [["0x1005b212", "je 0x44", "0x10032f12"]]}, {"orig": [["0x1005b214", "push esi"], ["0x1005b215", "mov ecx, dword ptr [ebx + 0x7c]"]], "recomp": [["0x10032f14", "push ebx"], ["0x10032f15", "mov ecx, dword ptr [edi + 0x7c]"]]}, {"both": [["0x1005b218", "call LegoWorld::Remove (FUNCTION)", "0x10032f18"]]}, {"orig": [["0x1005b21d", "mov edi, dword ptr [esi]"]], "recomp": [["0x10032f1d", "mov esi, dword ptr [ebx]"]]}, {"both": [["0x1005b21f", "push 'MxPresenter' (STRING)", "0x10032f1f"]]}, {"orig": [["0x1005b224", "mov ecx, esi"], ["0x1005b226", "call dword ptr [edi + 0x10]"]], "recomp": [["0x10032f24", "mov ecx, ebx"], ["0x10032f26", "call dword ptr [esi + 0x10]"]]}, {"both": [["0x1005b229", "test al, al", "0x10032f29"], ["0x1005b22b", "jne 0x10", "0x10032f2b"]]}, {"orig": [["0x1005b22d", "test esi, esi"]], "recomp": [["0x10032f2d", "test ebx, ebx"]]}, {"both": [["0x1005b22f", "je 0x2f", "0x10032f2f"], ["0x1005b231", "push 1", "0x10032f31"]]}, {"orig": [["0x1005b233", "mov ecx, esi"], ["0x1005b235", "call dword ptr [edi]"]], "recomp": [["0x10032f33", "mov ecx, ebx"], ["0x10032f35", "call dword ptr [esi]"]]}, {"both": [["0x1005b237", "pop edi", "0x10032f37"], ["0x1005b238", "pop esi", "0x10032f38"], ["0x1005b239", "pop ebx", "0x10032f39"], ["0x1005b23a", "ret 4", "0x10032f3a"]]}, {"orig": [["0x1005b23d", "mov eax, dword ptr [esi + 0x1c]"]], "recomp": [["0x10032f3d", "mov eax, dword ptr [ebx + 0x1c]"]]}, {"both": [["0x1005b240", "push eax", "0x10032f40"], ["0x1005b241", "call Streamer (FUNCTION)", "0x10032f41"], ["0x1005b246", "mov ecx, eax", "0x10032f46"], ["0x1005b248", "call MxStreamer::FUN_100b98f0 (FUNCTION)", "0x10032f48"]]}, {"orig": [["0x1005b24d", "mov ecx, esi"], ["0x1005b24f", "call dword ptr [edi + 0x40]"]], "recomp": [["0x10032f4d", "mov ecx, ebx"], ["0x10032f4f", "call dword ptr [esi + 0x40]"]]}, {"both": [["0x1005b252", "pop edi", "0x10032f52"], ["0x1005b253", "pop esi", "0x10032f53"], ["0x1005b254", "pop ebx", "0x10032f54"], ["0x1005b255", "ret 4", "0x10032f55"]]}, {"orig": [["0x1005b258", "push edi"], ["0x1005b259", "mov ecx, ebx"]], "recomp": [["0x10032f58", "push esi"], ["0x10032f59", "mov ecx, edi"]]}, {"both": [["0x1005b25b", "call MxOmni::DeleteObject (FUNCTION)", "0x10032f5b"], ["0x1005b260", "pop edi", "0x10032f60"], ["0x1005b261", "pop esi", "0x10032f61"], ["0x1005b262", "pop ebx", "0x10032f62"], ["0x1005b263", "ret 4", "0x10032f63"]]}]]]}, {"address": "0x1005b270", "recomp": "0x10032f70", "name": "LegoOmni::FindROI", "matching": 1.0, "effective": true, "diff": [["@@ -0x1005b270,46 +0x10032f70,46 @@", [{"both": [["0x1005b270", "sub esp, 4", "0x10032f70"], ["0x1005b273", "mov eax, dword ptr [ecx + 0x2c]", "0x10032f73"], ["0x1005b276", "push ebx", "0x10032f76"], ["0x1005b277", "mov ecx, dword ptr [eax + 0x68]", "0x10032f77"], ["0x1005b27a", "push esi", "0x10032f7a"], ["0x1005b27b", "push edi", "0x10032f7b"], ["0x1005b27c", "mov edx, dword ptr [ecx + 8]", "0x10032f7c"]]}, {"orig": [["0x1005b27f", "mov edi, dword ptr [esp + 0x14]"], ["0x1005b283", "mov esi, dword ptr [edx + 0x88]"], ["0x1005b289", "add esi, 8"], ["0x1005b28c", "test edi, edi"]], "recomp": [["0x10032f7f", "mov esi, dword ptr [esp + 0x14]"], ["0x10032f83", "mov edi, dword ptr [edx + 0x88]"], ["0x10032f89", "add edi, 8"], ["0x10032f8c", "test esi, esi"]]}, {"both": [["0x1005b28e", "je 0x46", "0x10032f8e"]]}, {"orig": [["0x1005b290", "cmp byte ptr [edi], 0"]], "recomp": [["0x10032f90", "cmp byte ptr [esi], 0"]]}, {"both": [["0x1005b293", "je 0x41", "0x10032f93"]]}, {"orig": [["0x1005b295", "cmp dword ptr [esi + 8], 0"]], "recomp": [["0x10032f95", "cmp dword ptr [edi + 8], 0"]]}, {"both": [["0x1005b299", "jbe 0x3b", "0x10032f99"]]}, {"orig": [["0x1005b29b", "mov ecx, dword ptr [esi + 4]"], ["0x1005b29e", "mov eax, dword ptr [ecx]"], ["0x1005b2a0", "mov dword ptr [esp + 0xc], eax"], ["0x1005b2a4", "cmp eax, ecx"]], "recomp": [["0x10032f9b", "mov eax, dword ptr [edi + 4]"], ["0x10032f9e", "mov ecx, dword ptr [eax]"], ["0x10032fa0", "mov dword ptr [esp + 0xc], ecx"], ["0x10032fa4", "cmp ecx, eax"]]}, {"both": [["0x1005b2a6", "je 0x2e", "0x10032fa6"], ["0x1005b2a8", "mov eax, dword ptr [esp + 0xc]", "0x10032fa8"], ["0x1005b2ac", "mov ebx, dword ptr [eax + 8]", "0x10032fac"], ["0x1005b2af", "mov eax, dword ptr [ebx + 0xe4]", "0x10032faf"], ["0x1005b2b5", "test eax, eax", "0x10032fb5"], ["0x1005b2b7", "je 0xe", "0x10032fb7"]]}, {"orig": [["0x1005b2b9", "push edi"]], "recomp": [["0x10032fb9", "push esi"]]}, {"both": [["0x1005b2ba", "push eax", "0x10032fba"], ["0x1005b2bb", "call __strcmpi (FUNCTION)", "0x10032fbb"], ["0x1005b2c0", "add esp, 8", "0x10032fc0"], ["0x1005b2c3", "test eax, eax", "0x10032fc3"], ["0x1005b2c5", "je 0x1a", "0x10032fc5"], ["0x1005b2c7", "mov eax, dword ptr [esp + 0xc]", "0x10032fc7"], ["0x1005b2cb", "mov ecx, dword ptr [eax]", "0x10032fcb"], ["0x1005b2cd", "mov dword ptr [esp + 0xc], ecx", "0x10032fcd"]]}, {"orig": [["0x1005b2d1", "cmp dword ptr [esi + 4], ecx"]], "recomp": [["0x10032fd1", "cmp dword ptr [edi + 4], ecx"]]}, {"both": [["0x1005b2d4", "jne -0x2e", "0x10032fd4"], ["0x1005b2d6", "xor eax, eax", "0x10032fd6"], ["0x1005b2d8", "pop edi", "0x10032fd8"], ["0x1005b2d9", "pop esi", "0x10032fd9"], ["0x1005b2da", "pop ebx", "0x10032fda"], ["0x1005b2db", "add esp, 4", "0x10032fdb"], ["0x1005b2de", "ret 4", "0x10032fde"], ["0x1005b2e1", "mov eax, ebx", "0x10032fe1"], ["0x1005b2e3", "pop edi", "0x10032fe3"], ["0x1005b2e4", "pop esi", "0x10032fe4"]]}]]]}, {"address": "0x1005b2f0", "recomp": "0x10032ff0", "name": "LegoOmni::AddToWorld", "matching": 1.0, "diff": []}, {"address": "0x1005b3a0", "recomp": "0x100330a0", "name": "LegoOmni::NotifyCurrentEntity", "matching": 1.0, "effective": true, "diff": [["@@ -0x1005b3a0,10 +0x100330a0,10 @@", [{"orig": [["0x1005b3a0", "mov eax, dword ptr [ecx + 0x7c]"], ["0x1005b3a3", "test eax, eax"]], "recomp": [["0x100330a0", "mov ecx, dword ptr [ecx + 0x7c]"], ["0x100330a3", "test ecx, ecx"]]}, {"both": [["0x1005b3a5", "je 0x12", "0x100330a5"]]}, {"orig": [["0x1005b3a7", "mov ecx, dword ptr [esp + 4]"]], "recomp": [["0x100330a7", "mov eax, dword ptr [esp + 4]"], ["0x100330ab", "push eax"]]}, {"both": [["0x1005b3ab", "push ecx", "0x100330ac"]]}, {"orig": [["0x1005b3ac", "push eax"]], "recomp": []}, {"both": [["0x1005b3ad", "call NotificationManager (FUNCTION)", "0x100330ad"], ["0x1005b3b2", "mov ecx, eax", "0x100330b2"], ["0x1005b3b4", "call MxNotificationManager::Send (FUNCTION)", "0x100330b4"], ["0x1005b3b9", "ret 4", "0x100330b9"]]}]]]}, {"address": "0x1005b3c0", "recomp": "0x100330c0", "name": "LegoOmni::DoesEntityExist", "matching": 1.0, "diff": []}, {"address": "0x1005b400", "recomp": "0x10033100", "name": "LegoOmni::GetCurrPathInfo", "matching": 1.0, "diff": []}, {"address": "0x1005b430", "recomp": "0x10033130", "name": "LegoOmni::FindScript", "matching": 1.0, "diff": []}, {"address": "0x1005b490", "recomp": "0x10033160", "name": "LegoOmni::GetScriptIndex", "matching": 1.0, "effective": true, "diff": [["@@ -0x1005b490,32 +0x10033160,32 @@", [{"both": [["0x1005b490", "push ebx", "0x10033160"], ["0x1005b491", "push esi", "0x10033161"], ["0x1005b492", "push edi", "0x10033162"], ["0x1005b493", "xor ebx, ebx", "0x10033163"], ["0x1005b495", "push ebp", "0x10033165"], ["0x1005b496", "mov edi, ecx", "0x10033166"]]}, {"orig": [["0x1005b498", "xor esi, esi"], ["0x1005b49a", "mov ebp, dword ptr [esp + 0x14]"]], "recomp": [["0x10033168", "xor ebp, ebp"], ["0x1003316a", "mov esi, dword ptr [esp + 0x14]"]]}, {"both": [["0x1005b49e", "mov eax, dword ptr [edi + 0x68]", "0x1003316e"]]}, {"orig": [["0x1005b4a1", "add eax, esi"]], "recomp": [["0x10033171", "add eax, ebp"]]}, {"both": [["0x1005b4a3", "cmp eax, -4", "0x10033173"], ["0x1005b4a6", "je 0x11", "0x10033176"]]}, {"orig": [["0x1005b4a8", "push ebp"]], "recomp": [["0x10033178", "push esi"]]}, {"both": [["0x1005b4a9", "add eax, 4", "0x10033179"], ["0x1005b4ac", "push eax", "0x1003317c"], ["0x1005b4ad", "call __strcmpi (FUNCTION)", "0x1003317d"], ["0x1005b4b2", "add esp, 8", "0x10033182"], ["0x1005b4b5", "test eax, eax", "0x10033185"], ["0x1005b4b7", "je 0x18", "0x10033187"]]}, {"orig": [["0x1005b4b9", "add esi, 0x1c"]], "recomp": [["0x10033189", "add ebp, 0x1c"]]}, {"both": [["0x1005b4bc", "inc ebx", "0x1003318c"]]}, {"orig": [["0x1005b4bd", "cmp esi, 0x214"]], "recomp": [["0x1003318d", "cmp ebp, 0x214"]]}, {"both": [["0x1005b4c3", "jl -0x27", "0x10033193"], ["0x1005b4c5", "mov eax, 0xffffffff", "0x10033195"], ["0x1005b4ca", "pop ebp", "0x1003319a"], ["0x1005b4cb", "pop edi", "0x1003319b"], ["0x1005b4cc", "pop esi", "0x1003319c"], ["0x1005b4cd", "pop ebx", "0x1003319d"], ["0x1005b4ce", "ret 4", "0x1003319e"], ["0x1005b4d1", "lea eax, [ebx*8]", "0x100331a1"], ["0x1005b4d8", "mov ecx, dword ptr [edi + 0x68]", "0x100331a8"], ["0x1005b4db", "sub eax, ebx", "0x100331ab"]]}]]]}, {"address": "0x1005b4f0", "recomp": "0x100331c0", "name": "LegoOmni::FUN_1005b4f0", "matching": 1.0, "diff": []}, {"address": "0x1005b560", "recomp": "0x10033230", "name": "LegoOmni::CreateBackgroundAudio", "matching": 1.0, "diff": []}, {"address": "0x1005b580", "recomp": "0x10033250", "name": "LegoOmni::Start", "matching": 1.0, "diff": []}, {"address": "0x1005b5c0", "recomp": "0x10033290", "name": "LegoOmni::DeleteAction", "matching": 1.0, "diff": []}, {"address": "0x1005b5f0", "recomp": "0x100332c0", "name": "LegoOmni::Notify", "matching": 1.0, "diff": []}, {"address": "0x1005b640", "recomp": "0x10033310", "name": "LegoOmni::StartTimer", "matching": 1.0, "diff": []}, {"address": "0x1005b650", "recomp": "0x10033320", "name": "LegoOmni::StopTimer", "matching": 1.0, "diff": []}, {"address": "0x1005b660", "recomp": "0x10031870", "name": "LegoContainer<LegoTextureInfo>::~LegoContainer<LegoTextureInfo>", "matching": 0.9714285714285714, "diff": [["@@ -0x1005b6ab,24 +0x100318bb,24 @@", [{"both": [["0x1005b6ab", "je 0x17", "0x100318bb"], ["0x1005b6ad", "mov edi, dword ptr [esi + 0x10]", "0x100318bd"], ["0x1005b6b0", "test edi, edi", "0x100318c0"], ["0x1005b6b2", "je 0x10", "0x100318c2"], ["0x1005b6b4", "mov ecx, edi", "0x100318c4"], ["0x1005b6b6", "call LegoTextureInfo::~LegoTextureInfo (FUNCTION)", "0x100318c6"], ["0x1005b6bb", "push edi", "0x100318cb"], ["0x1005b6bc", "call ??3@YAXPAX@Z (FUNCTION)", "0x100318cc"], ["0x1005b6c1", "add esp, 4", "0x100318d1"], ["0x1005b6c4", "mov ecx, dword ptr [esi + 8]", "0x100318d4"]]}, {"orig": [["0x1005b6c7", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x100318d7", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ecx"]]}, {"both": [["0x1005b6cd", "je 0x12", "0x100318dd"], ["0x1005b6cf", "mov eax, dword ptr [ecx]", "0x100318df"]]}, {"orig": [["0x1005b6d1", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x100318e1", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1005b6d7", "je 0x4", "0x100318e7"], ["0x1005b6d9", "mov ecx, eax", "0x100318e9"], ["0x1005b6db", "jmp -0xe", "0x100318eb"], ["0x1005b6dd", "mov esi, ecx", "0x100318ed"], ["0x1005b6df", "jmp 0x19", "0x100318ef"], ["0x1005b6e1", "mov eax, dword ptr [esi + 4]", "0x100318f1"], ["0x1005b6e4", "cmp dword ptr [eax + 8], esi", "0x100318f4"], ["0x1005b6e7", "jne 0xa", "0x100318f7"], ["0x1005b6e9", "mov esi, eax", "0x100318f9"], ["0x1005b6eb", "mov eax, dword ptr [eax + 4]", "0x100318fb"]]}]]]}, {"address": "0x1005b740", "recomp": "0x100333c0", "name": "MxList<LegoWorld *>::DeleteEntry", "matching": 1.0, "diff": []}, {"address": "0x1005b790", "recomp": "0x1002d520", "name": "LegoInputManager::LegoInputManager", "matching": 1.0, "diff": []}, {"address": "0x1005b8b0", "recomp": "0x1002d670", "name": "LegoInputManager::Tickle", "matching": 1.0, "diff": []}, {"address": "0x1005b8c0", "recomp": "0x1002d640", "name": "LegoInputManager::PutData", "matching": 1.0, "diff": []}, {"address": "0x1005b8d0", "recomp": "0x1002d650", "name": "LegoInputManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005b8f0", "recomp": "0x1002d680", "name": "LegoInputManager::~LegoInputManager", "matching": 1.0, "diff": []}, {"address": "0x1005b960", "recomp": "0x1002d6f0", "name": "LegoInputManager::Create", "matching": 1.0, "diff": []}, {"address": "0x1005bb80", "recomp": "0x1002d9b0", "name": "MxCollection<LegoEventNotificationParam>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1005bbe0", "recomp": "0x1002d960", "name": "MxCollection<LegoEventNotificationParam>::~MxCollection<LegoEventNotificationParam>", "matching": 1.0, "diff": []}, {"address": "0x1005bc30", "recomp": "0x1002d910", "name": "MxCollection<LegoEventNotificationParam>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1005bc80", "recomp": "0x1002ebe0", "name": "MxList<LegoEventNotificationParam>::~MxList<LegoEventNotificationParam>", "matching": 1.0, "diff": []}, {"address": "0x1005bd50", "recomp": "0x1002da10", "name": "MxCollection<LegoEventNotificationParam>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005bdc0", "recomp": "0x1002da80", "name": "MxList<LegoEventNotificationParam>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005beb0", "recomp": "0x1002dc30", "name": "LegoEventQueue::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005bf20", "recomp": "0x1002dca0", "name": "MxQueue<LegoEventNotificationParam>::~MxQueue<LegoEventNotificationParam>", "matching": 1.0, "diff": []}, {"address": "0x1005bf70", "recomp": "0x1002dcf0", "name": "MxQueue<LegoEventNotificationParam>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005bfe0", "recomp": "0x1002dd60", "name": "LegoInputManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1005c030", "recomp": "0x1002ddb0", "name": "LegoInputManager::CreateAndAcquireKeyboard", "matching": 0.9555555555555556, "diff": [["@@ -0x1005c04a,34 +0x1002ddca,34 @@", [{"both": [["0x1005c04a", "push ebx", "0x1002ddca"], ["0x1005c04b", "push 0x500", "0x1002ddcb"], ["0x1005c050", "push eax", "0x1002ddd0"], ["0x1005c051", "call _DirectInputCreateA@16 (FUNCTION)", "0x1002ddd1"], ["0x1005c056", "test eax, eax", "0x1002ddd6"], ["0x1005c058", "jne 0x3a", "0x1002ddd8"], ["0x1005c05a", "mov eax, dword ptr [ebx]", "0x1002ddda"], ["0x1005c05c", "add esi, 0x90", "0x1002dddc"], ["0x1005c062", "push 0", "0x1002dde2"], ["0x1005c064", "push esi", "0x1002dde4"]]}, {"orig": [["0x1005c065", "push <OFFSET3>"]], "recomp": [["0x1002dde5", "push GUID_SysKeyboard (DATA)"]]}, {"both": [["0x1005c06a", "mov ebx, dword ptr [eax]", "0x1002ddea"], ["0x1005c06c", "push eax", "0x1002ddec"], ["0x1005c06d", "call dword ptr [ebx + 0xc]", "0x1002dded"], ["0x1005c070", "test eax, eax", "0x1002ddf0"], ["0x1005c072", "jne 0x20", "0x1002ddf2"], ["0x1005c074", "mov eax, dword ptr [esi]", "0x1002ddf4"], ["0x1005c076", "push 6", "0x1002ddf6"], ["0x1005c078", "mov ebx, dword ptr [eax]", "0x1002ddf8"], ["0x1005c07a", "push edi", "0x1002ddfa"], ["0x1005c07b", "push eax", "0x1002ddfb"], ["0x1005c07c", "call dword ptr [ebx + 0x34]", "0x1002ddfc"], ["0x1005c07f", "mov eax, dword ptr [esi]", "0x1002ddff"]]}, {"orig": [["0x1005c081", "push <OFFSET4>"]], "recomp": [["0x1002de01", "push c_dfDIKeyboard (DATA)"]]}, {"both": [["0x1005c086", "push eax", "0x1002de06"], ["0x1005c087", "mov ebx, dword ptr [eax]", "0x1002de07"], ["0x1005c089", "call dword ptr [ebx + 0x2c]", "0x1002de09"], ["0x1005c08c", "mov eax, dword ptr [esi]", "0x1002de0c"], ["0x1005c08e", "push eax", "0x1002de0e"], ["0x1005c08f", "mov ebx, dword ptr [eax]", "0x1002de0f"], ["0x1005c091", "call dword ptr [ebx + 0x1c]", "0x1002de11"], ["0x1005c094", "pop edi", "0x1002de14"], ["0x1005c095", "pop esi", "0x1002de15"], ["0x1005c096", "pop ebx", "0x1002de16"]]}]]]}, {"address": "0x1005c0a0", "recomp": "0x1002de20", "name": "LegoInputManager::ReleaseDX", "matching": 1.0, "diff": []}, {"address": "0x1005c0f0", "recomp": "0x1002de70", "name": "LegoInputManager::FUN_1005c0f0", "matching": 1.0, "diff": []}, {"address": "0x1005c160", "recomp": "0x1002dee0", "name": "LegoInputManager::FUN_1005c160", "matching": 1.0, "diff": []}, {"address": "0x1005c240", "recomp": "0x1002dfc0", "name": "LegoInputManager::GetJoystickId", "matching": 1.0, "diff": []}, {"address": "0x1005c320", "recomp": "0x1002e0a0", "name": "LegoInputManager::GetJoystickState", "matching": 1.0, "diff": []}, {"address": "0x1005c470", "recomp": "0x1002e1f0", "name": "LegoInputManager::Register", "matching": 1.0, "diff": []}, {"address": "0x1005c5c0", "recomp": "0x1002e340", "name": "LegoInputManager::UnRegister", "matching": 1.0, "diff": []}, {"address": "0x1005c700", "recomp": "0x1002e480", "name": "LegoInputManager::SetCamera", "matching": 1.0, "diff": []}, {"address": "0x1005c710", "recomp": "0x1002e490", "name": "LegoInputManager::ClearCamera", "matching": 1.0, "diff": []}, {"address": "0x1005c720", "recomp": "0x1002e4a0", "name": "LegoInputManager::SetWorld", "matching": 1.0, "diff": []}, {"address": "0x1005c730", "recomp": "0x1002e4b0", "name": "LegoInputManager::ClearWorld", "matching": 1.0, "diff": []}, {"address": "0x1005c740", "recomp": "0x1002e4c0", "name": "LegoInputManager::QueueEvent", "matching": 1.0, "diff": []}, {"address": "0x1005c820", "recomp": "0x1002e5a0", "name": "LegoInputManager::ProcessEvents", "matching": 1.0, "diff": []}, {"address": "0x1005c9c0", "recomp": "0x1002e740", "name": "LegoInputManager::ProcessOneEvent", "matching": 0.9936102236421726, "diff": [["@@ -0x1005cc43,22 +0x1002e9c3,22 @@", [{"both": [["0x1005cc43", "jne 0x4e", "0x1002e9c3"], ["0x1005cc45", "mov eax, dword ptr [edi + 0x14]", "0x1002e9c5"], ["0x1005cc48", "mov ecx, dword ptr [edi + 0x10]", "0x1002e9c8"], ["0x1005cc4b", "push eax", "0x1002e9cb"], ["0x1005cc4c", "push ecx", "0x1002e9cc"], ["0x1005cc4d", "call PickROI (FUNCTION)", "0x1002e9cd"], ["0x1005cc52", "add esp, 8", "0x1002e9d2"], ["0x1005cc55", "mov dword ptr [edi + 0x1c], eax", "0x1002e9d5"], ["0x1005cc58", "test eax, eax", "0x1002e9d8"], ["0x1005cc5a", "je 0x37", "0x1002e9da"]]}, {"orig": [["0x1005cc5c", "cmp byte ptr [eax + 0xc], 1"], ["0x1005cc60", "jne 0x31"]], "recomp": [["0x1002e9dc", "cmp byte ptr [eax + 0xc], 0"], ["0x1002e9e0", "je 0x31"]]}, {"both": [["0x1005cc62", "mov ecx, dword ptr [eax + 0xd4]", "0x1002e9e2"], ["0x1005cc68", "test ecx, ecx", "0x1002e9e8"], ["0x1005cc6a", "je 0xc", "0x1002e9ea"], ["0x1005cc6c", "mov eax, ecx", "0x1002e9ec"], ["0x1005cc6e", "mov ecx, dword ptr [ecx + 0xd4]", "0x1002e9ee"], ["0x1005cc74", "test ecx, ecx", "0x1002e9f4"], ["0x1005cc76", "jne -0xc", "0x1002e9f6"], ["0x1005cc78", "mov ecx, dword ptr [eax + 0x104]", "0x1002e9f8"], ["0x1005cc7e", "test ecx, ecx", "0x1002e9fe"], ["0x1005cc80", "je 0x11", "0x1002ea00"]]}]]]}, {"address": "0x1005cdf0", "recomp": "0x1002eb70", "name": "LegoInputManager::FUN_1005cdf0", "matching": 0.0, "stub": true}, {"address": "0x1005cfb0", "recomp": "0x1002eb80", "name": "LegoInputManager::StartAutoDragTimer", "matching": 1.0, "diff": []}, {"address": "0x1005cfd0", "recomp": "0x1002eba0", "name": "LegoInputManager::StopAutoDragTimer", "matching": 1.0, "diff": []}, {"address": "0x1005cff0", "recomp": "0x1002ebc0", "name": "LegoInputManager::EnableInputProcessing", "matching": 1.0, "diff": []}, {"address": "0x1005d010", "recomp": "0x1002db70", "name": "MxListEntry<LegoEventNotificationParam>::GetValue", "matching": 1.0, "diff": []}, {"address": "0x1005d0d0", "recomp": "0x10035a30", "name": "LegoRaceMap::LegoRaceMap", "matching": 0.8782608695652174, "diff": [["@@ -0x1005d0e1,61 +0x10035a41,61 @@", [{"both": [["0x1005d0e1", "mov dword ptr fs:[0], esp", "0x10035a41"], ["0x1005d0e8", "sub esp, 0xc", "0x10035a48"], ["0x1005d0eb", "push ebx", "0x10035a4b"], ["0x1005d0ec", "push esi", "0x10035a4c"], ["0x1005d0ed", "mov dword ptr [ebp - 0x18], ecx", "0x10035a4d"], ["0x1005d0f0", "mov esi, ecx", "0x10035a50"], ["0x1005d0f2", "xor ebx, ebx", "0x10035a52"], ["0x1005d0f4", "mov dword ptr [ebp - 0x14], ebx", "0x10035a54"], ["0x1005d0f7", "cmp dword ptr [ebp + 8], ebx", "0x10035a57"], ["0x1005d0fa", "je 0xb2", "0x10035a5a"]]}, {"orig": [["0x1005d100", "mov dword ptr [esi + 4], <OFFSET2>"], ["0x1005d107", "mov dword ptr [esi + 0x190], <OFFSET3>"], ["0x1005d111", "mov dword ptr [esi + 0x1ac], <OFFSET4>"]], "recomp": [["0x10035a60", "mov dword ptr [esi + 4], ??_8LegoRaceMap@@7B@ (UNK)"], ["0x10035a67", "mov dword ptr [esi + 0x190], ??_8LegoRaceMap@@7BLegoAnimActor@@@ (UNK)"], ["0x10035a71", "mov dword ptr [esi + 0x1ac], ??_8LegoRaceMap@@7BLegoRaceActor@@@ (UNK)"]]}, {"both": [["0x1005d11b", "lea ecx, [esi + 0x38]", "0x10035a7b"], ["0x1005d11e", "call LegoPathActor::LegoPathActor (FUNCTION)", "0x10035a7e"], ["0x1005d123", "mov al, byte ptr [ebp - 0xd]", "0x10035a83"], ["0x1005d126", "mov dword ptr [ebp - 4], ebx", "0x10035a86"], ["0x1005d129", "mov byte ptr [esi + 0x194], al", "0x10035a89"], ["0x1005d12f", "mov dword ptr [esi + 0x198], ebx", "0x10035a8f"], ["0x1005d135", "mov dword ptr [esi + 0x19c], ebx", "0x10035a95"], ["0x1005d13b", "mov dword ptr [esi + 0x1a0], ebx", "0x10035a9b"], ["0x1005d141", "or dword ptr [ebp - 0x14], 1", "0x10035aa1"], ["0x1005d145", "mov dword ptr [ebp - 4], 1", "0x10035aa5"], ["0x1005d14c", "mov dword ptr [ebp - 4], 2", "0x10035aac"], ["0x1005d153", "mov eax, dword ptr [esi + 0x190]", "0x10035ab3"]]}, {"orig": [["0x1005d159", "mov dword ptr [esi + 0x18c], <OFFSET6>"]], "recomp": [["0x10035ab9", "mov dword ptr [esi + 0x18c], LegoAnimActor::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x1005d163", "mov ecx, dword ptr [eax + 4]", "0x10035ac3"], ["0x1005d166", "mov byte ptr [ebp - 4], bl", "0x10035ac6"]]}, {"orig": [["0x1005d169", "mov dword ptr [ecx + esi + 0x190], <OFFSET7>"]], "recomp": [["0x10035ac9", "mov dword ptr [ecx + esi + 0x190], LegoAnimActor::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x1005d174", "mov eax, dword ptr [esi + 0x190]", "0x10035ad4"], ["0x1005d17a", "push ebx", "0x10035ada"], ["0x1005d17b", "mov eax, dword ptr [eax + 4]", "0x10035adb"], ["0x1005d17e", "mov dword ptr [ebp - 4], 3", "0x10035ade"], ["0x1005d185", "lea ecx, [eax - 0x1c]", "0x10035ae5"], ["0x1005d188", "mov dword ptr [eax + esi + 0x18c], ecx", "0x10035ae8"], ["0x1005d18f", "lea ecx, [esi + 0x1a8]", "0x10035aef"], ["0x1005d195", "or dword ptr [ebp - 0x14], 2", "0x10035af5"], ["0x1005d199", "mov word ptr [esi + 0x1a4], 0xffff", "0x10035af9"], ["0x1005d1a2", "call LegoRaceActor::LegoRaceActor (FUNCTION)", "0x10035b02"], ["0x1005d1a7", "or dword ptr [ebp - 0x14], 4", "0x10035b07"], ["0x1005d1ab", "mov dword ptr [ebp - 4], 4", "0x10035b0b"], ["0x1005d1b2", "mov eax, dword ptr [esi + 4]", "0x10035b12"]]}, {"orig": [["0x1005d1b5", "mov dword ptr [esi], <OFFSET9>"]], "recomp": [["0x10035b15", "mov dword ptr [esi], LegoRaceMap::`vftable'{for `LegoRaceMap'} (VTABLE)"]]}, {"both": [["0x1005d1bb", "mov ecx, dword ptr [eax + 4]", "0x10035b1b"]]}, {"orig": [["0x1005d1be", "mov dword ptr [ecx + esi + 4], <OFFSET10>"]], "recomp": [["0x10035b1e", "mov dword ptr [ecx + esi + 4], LegoRaceMap::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x1005d1c6", "mov eax, dword ptr [esi + 4]", "0x10035b26"], ["0x1005d1c9", "mov edx, dword ptr [eax + 8]", "0x10035b29"]]}, {"orig": [["0x1005d1cc", "mov dword ptr [edx + esi + 4], <OFFSET11>"]], "recomp": [["0x10035b2c", "mov dword ptr [edx + esi + 4], LegoRaceMap::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x1005d1d4", "mov eax, dword ptr [esi + 4]", "0x10035b34"], ["0x1005d1d7", "mov ecx, dword ptr [eax + 0xc]", "0x10035b37"]]}, {"orig": [["0x1005d1da", "mov dword ptr [ecx + esi + 4], <OFFSET12>"]], "recomp": [["0x10035b3a", "mov dword ptr [ecx + esi + 4], LegoRaceMap::`vftable'{for `LegoRaceActor'} (VTABLE)"]]}, {"both": [["0x1005d1e2", "mov eax, dword ptr [esi + 4]", "0x10035b42"], ["0x1005d1e5", "mov eax, dword ptr [eax + 4]", "0x10035b45"], ["0x1005d1e8", "lea ecx, [eax - 0x34]", "0x10035b48"], ["0x1005d1eb", "mov dword ptr [eax + esi], ecx", "0x10035b4b"], ["0x1005d1ee", "xor eax, eax", "0x10035b4e"], ["0x1005d1f0", "mov byte ptr [esi + 8], al", "0x10035b50"], ["0x1005d1f3", "mov dword ptr [esi + 0xc], eax", "0x10035b53"], ["0x1005d1f6", "mov dword ptr [esi + 0x10], eax", "0x10035b56"], ["0x1005d1f9", "test esi, esi", "0x10035b59"], ["0x1005d1fb", "je 0xa", "0x10035b5b"]]}]], ["@@ -0x1005d22b,34 +0x10035b8b,34 @@", [{"both": [["0x1005d22b", "pop ebp", "0x10035b8b"], ["0x1005d22c", "ret 4", "0x10035b8c"], ["0x1005d22f", "test byte ptr [ebp - 0x14], 8", "0x10035b8f"], ["0x1005d233", "je 0xe", "0x10035b93"], ["0x1005d235", "mov ecx, dword ptr [ebp - 0x18]", "0x10035b95"], ["0x1005d238", "add ecx, 0x1ac", "0x10035b98"], ["0x1005d23e", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x10035b9e"], ["0x1005d243", "ret ", "0x10035ba3"], ["0x1005d244", "mov ecx, dword ptr [ebp - 0x18]", "0x10035ba4"], ["0x1005d247", "add ecx, 0x194", "0x10035ba7"]]}, {"orig": [["0x1005d24d", "jmp -0x4f832"]], "recomp": [["0x10035bad", "jmp vector<void *,allocator<void *> >::~vector<void *,allocator<void *> > (FUNCTION)"]]}, {"both": [["0x1005d252", "mov ecx, dword ptr [ebp - 0x18]", "0x10035bb2"], ["0x1005d255", "add ecx, 0x194", "0x10035bb5"]]}, {"orig": [["0x1005d25b", "jmp -0x4f800"], ["0x1005d260", "mov eax, <OFFSET16>"]], "recomp": [["0x10035bbb", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"], ["0x10035bc0", "mov eax, <OFFSET18>"]]}, {"both": [["0x1005d265", "jmp ___CxxFrameHandler (FUNCTION)", "0x10035bc5"], ["0x1005d26a", "test byte ptr [ebp - 0x14], 4", "0x10035bca"], ["0x1005d26e", "je 0xe", "0x10035bce"], ["0x1005d270", "mov ecx, dword ptr [ebp - 0x18]", "0x10035bd0"], ["0x1005d273", "add ecx, 0x1a8", "0x10035bd3"]]}, {"orig": [["0x1005d279", "jmp -0x4a66e"]], "recomp": [["0x10035bd9", "jmp LegoRaceActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x1005d27e", "ret ", "0x10035bde"], ["0x1005d27f", "test byte ptr [ebp - 0x14], 1", "0x10035bdf"], ["0x1005d283", "je 0xb", "0x10035be3"], ["0x1005d285", "mov ecx, dword ptr [ebp - 0x18]", "0x10035be5"], ["0x1005d288", "add ecx, 0x38", "0x10035be8"], ["0x1005d28b", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x10035beb"], ["0x1005d290", "ret ", "0x10035bf0"], ["0x1005d291", "test byte ptr [ebp - 0x14], 2", "0x10035bf1"], ["0x1005d295", "je 0xe", "0x10035bf5"], ["0x1005d297", "mov ecx, dword ptr [ebp - 0x18]", "0x10035bf7"], ["0x1005d29a", "add ecx, 0x18c", "0x10035bfa"]]}, {"orig": [["0x1005d2a0", "jmp -0x4a715"]], "recomp": [["0x10035c00", "jmp LegoAnimActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x1005d2a5", "ret ", "0x10035c05"]]}]]]}, {"address": "0x1005d4b0", "recomp": "0x10035c10", "name": "LegoRaceMap::FUN_1005d4b0", "matching": 0.0, "diff": [["@@ -,0 +0x10035c10,1 @@", [{"orig": [], "recomp": [["0x10035c10", "ret "]]}]]]}, {"address": "0x1005d5c0", "recomp": "0x10035c30", "name": "LegoRaceMap::`scalar deleting destructor'", "matching": 0.13953488372093023, "diff": [["@@ -0x1005d5c0,54 +0x10035c30,32 @@", [{"orig": [["0x1005d5c0", "sub ecx, dword ptr [ecx - 4]"], ["0x1005d5c3", "jmp 0x8"], ["0x1005d5c8", "int3 "], ["0x1005d5c9", "int3 "], ["0x1005d5ca", "int3 "], ["0x1005d5cb", "int3 "], ["0x1005d5cc", "int3 "], ["0x1005d5cd", "int3 "], ["0x1005d5ce", "int3 "], ["0x1005d5cf", "int3 "], ["0x1005d5d0", "push esi"], ["0x1005d5d1", "mov esi, ecx"], ["0x1005d5d3", "call <OFFSET1>"], ["0x1005d5d8", "lea ecx, [esi + 0x174]"]], "recomp": [["0x10035c30", "mov eax, dword ptr fs:[0]"], ["0x10035c36", "push ebp"], ["0x10035c37", "mov ebp, esp"], ["0x10035c39", "push -1"], ["0x10035c3b", "push <OFFSET1>"], ["0x10035c40", "push eax"], ["0x10035c41", "mov dword ptr fs:[0], esp"], ["0x10035c48", "sub esp, 4"], ["0x10035c4b", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10035c52", "mov dword ptr [ebp - 0x10], ecx"]]}, {"both": [["0x1005d5de", "call <OFFSET2>", "0x10035c55"]]}, {"orig": [["0x1005d5e3", "mov ecx, esi"]], "recomp": [["0x10035c5a", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x1005d5e5", "call LegoPathActor::~LegoPathActor (FUNCTION)", "0x10035c5d"]]}, {"orig": [["0x1005d5ea", "test byte ptr [esp + 8], 1"], ["0x1005d5ef", "je 0xc"], ["0x1005d5f1", "lea eax, [esi - 0x38]"]], "recomp": [["0x10035c62", "test byte ptr [ebp + 8], 1"], ["0x10035c66", "je 0xf"], ["0x10035c68", "mov eax, dword ptr [ebp - 0x10]"], ["0x10035c6b", "sub eax, 0x38"]]}, {"both": [["0x1005d5f4", "push eax", "0x10035c6e"], ["0x1005d5f5", "call ??3@YAXPAX@Z (FUNCTION)", "0x10035c6f"], ["0x1005d5fa", "add esp, 4", "0x10035c74"]]}, {"orig": [["0x1005d5fd", "lea eax, [esi - 0x38]"], ["0x1005d600", "pop esi"]], "recomp": [["0x10035c77", "mov eax, dword ptr [ebp - 0x10]"], ["0x10035c7a", "mov ecx, dword ptr [ebp - 0xc]"], ["0x10035c7d", "mov esp, ebp"], ["0x10035c7f", "mov dword ptr fs:[0], ecx"], ["0x10035c86", "sub eax, 0x38"], ["0x10035c89", "pop ebp"]]}, {"both": [["0x1005d601", "ret 4", "0x10035c8a"]]}, {"orig": [["0x1005d604", "int3 "], ["0x1005d605", "int3 "], ["0x1005d606", "int3 "], ["0x1005d607", "int3 "], ["0x1005d608", "int3 "], ["0x1005d609", "int3 "], ["0x1005d60a", "int3 "], ["0x1005d60b", "int3 "], ["0x1005d60c", "int3 "], ["0x1005d60d", "int3 "], ["0x1005d60e", "int3 "], ["0x1005d60f", "int3 "], ["0x1005d610", "sub ecx, dword ptr [ecx - 4]"], ["0x1005d613", "jmp -0xc8"], ["0x1005d618", "int3 "], ["0x1005d619", "int3 "], ["0x1005d61a", "int3 "], ["0x1005d61b", "int3 "], ["0x1005d61c", "int3 "], ["0x1005d61d", "int3 "], ["0x1005d61e", "int3 "], ["0x1005d61f", "int3 "], ["0x1005d620", "sub ecx, dword ptr [ecx - 4]"], ["0x1005d623", "add ecx, 0x180"], ["0x1005d629", "jmp -0x48b2e"], ["0x1005d62e", "int3 "], ["0x1005d62f", "int3 "], ["0x1005d630", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x10035c8d", "mov eax, <OFFSET5>"], ["0x10035c92", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10035c97", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10035c9a", "add ecx, 0x15c"], ["0x10035ca0", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"]]}]]]}, {"address": "0x1005d650", "recomp": "0x10022400", "name": "LegoCarRaceActor::VTable0x94", "matching": 0.0, "stub": true}, {"address": "0x1005d660", "recomp": "0x10046360", "name": "JukeBox::JukeBox", "matching": 1.0, "diff": []}, {"address": "0x1005d6e0", "recomp": "0x10046520", "name": "JukeBox::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x1005d6f0", "recomp": "0x100463e0", "name": "JukeBox::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1005d700", "recomp": "0x100463f0", "name": "JukeBox::IsA", "matching": 1.0, "diff": []}, {"address": "0x1005d810", "recomp": "0x10046500", "name": "JukeBox::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005d830", "recomp": "0x10046530", "name": "JukeBox::~JukeBox", "matching": 1.0, "diff": []}, {"address": "0x1005d8d0", "recomp": "0x100465d0", "name": "JukeBox::Create", "matching": 1.0, "diff": []}, {"address": "0x1005d980", "recomp": "0x10046680", "name": "JukeBox::Notify", "matching": 1.0, "diff": []}, {"address": "0x1005d9f0", "recomp": "0x100466f0", "name": "JukeBox::ReadyWorld", "matching": 0.7945205479452054, "diff": [["@@ -0x1005d9f0,19 +0x100466f0,19 @@", [{"both": [["0x1005d9f0", "push esi", "0x100466f0"], ["0x1005d9f1", "xor eax, eax", "0x100466f1"], ["0x1005d9f3", "mov esi, ecx", "0x100466f3"], ["0x1005d9f5", "mov ecx, dword ptr [ecx + 0xfc]", "0x100466f5"], ["0x1005d9fb", "mov ecx, dword ptr [ecx + 8]", "0x100466fb"], ["0x1005d9fe", "dec ecx", "0x100466fe"], ["0x1005d9ff", "cmp ecx, 4", "0x100466ff"], ["0x1005da02", "ja 0x34", "0x10046702"]]}, {"orig": [["0x1005da04", "jmp dword ptr [ecx*4 + 0x1005da50]"]], "recomp": [["0x10046704", "jmp dword ptr [ecx*4 + 0x10046750]"]]}, {"both": [["0x1005da0b", "push 'Right_Bitmap' (STRING)", "0x1004670b"], ["0x1005da10", "jmp 0x1a", "0x10046710"], ["0x1005da12", "push 'Decal_Bitmap' (STRING)", "0x10046712"], ["0x1005da17", "jmp 0x13", "0x10046717"], ["0x1005da19", "push 'Wallis_Bitmap' (STRING)", "0x10046719"], ["0x1005da1e", "jmp 0xc", "0x1004671e"], ["0x1005da20", "push 'Nelson_Bitmap' (STRING)", "0x10046720"], ["0x1005da25", "jmp 0x5", "0x10046725"], ["0x1005da27", "push 'Torpedos_Bitmap' (STRING)", "0x10046727"], ["0x1005da2c", "push 'MxStillPresenter' (STRING)", "0x1004672c"]]}]], ["@@ -0x1005da33,15 +0x10046733,18 @@", [{"both": [["0x1005da33", "call LegoWorld::Find (FUNCTION)", "0x10046733"], ["0x1005da38", "test eax, eax", "0x10046738"], ["0x1005da3a", "je 0x9", "0x1004673a"], ["0x1005da3c", "push 1", "0x1004673c"], ["0x1005da3e", "mov edx, dword ptr [eax]", "0x1004673e"], ["0x1005da40", "mov ecx, eax", "0x10046740"], ["0x1005da42", "call dword ptr [edx + 0x54]", "0x10046742"], ["0x1005da45", "mov word ptr [esi + 0x100], 1", "0x10046745"], ["0x1005da4e", "pop esi", "0x1004674e"], ["0x1005da4f", "ret ", "0x1004674f"]]}, {"orig": [["0x1005da50", "or ebx, edx"], ["0x1005da52", "add eax, 0x5da1210"], ["0x1005da57", "adc byte ptr [ecx], bl"], ["0x1005da59", "fiadd dword ptr [<OFFSET8>]"], ["0x1005da5f", "adc byte ptr [edi], ah"]], "recomp": [["0x10046750", "or esp, dword ptr [edi + 4]"], ["0x10046753", "adc byte ptr [edx], dl"], ["0x10046755", "add al, 0x10"], ["0x10046758", "sbb dword ptr [edi + 4], esp"], ["0x1004675b", "adc byte ptr [eax], ah"], ["0x1004675d", "add al, 0x10"], ["0x10046760", "daa "], ["0x10046761", "add al, 0x10"]]}]]]}, {"address": "0x1005da70", "recomp": "0x10046770", "name": "JukeBox::HandleClick", "matching": 0.945179584120983, "diff": [["@@ -0x1005da93,21 +0x10046793,21 @@", [{"both": [["0x1005da93", "cmp eax, 5", "0x10046793"], ["0x1005da96", "je 0x2d6", "0x10046796"], ["0x1005da9c", "mov al, 1", "0x1004679c"], ["0x1005da9e", "pop esi", "0x1004679e"], ["0x1005da9f", "ret 4", "0x1004679f"], ["0x1005daa2", "mov ecx, dword ptr [esi + 0xfc]", "0x100467a2"], ["0x1005daa8", "mov eax, dword ptr [ecx + 8]", "0x100467a8"], ["0x1005daab", "add ecx, 8", "0x100467ab"], ["0x1005daae", "cmp eax, 5", "0x100467ae"], ["0x1005dab1", "ja 0x2f1", "0x100467b1"]]}, {"orig": [["0x1005dab7", "jmp dword ptr [eax*4 + 0x1005ddb0]"]], "recomp": [["0x100467b7", "jmp dword ptr [eax*4 + 0x10046ab0]"]]}, {"both": [["0x1005dabe", "push 'Torpedos_Bitmap' (STRING)", "0x100467be"], ["0x1005dac3", "mov dword ptr [ecx], 5", "0x100467c3"], ["0x1005dac9", "push 'MxStillPresenter' (STRING)", "0x100467c9"], ["0x1005dace", "mov ecx, esi", "0x100467ce"], ["0x1005dad0", "call LegoWorld::Find (FUNCTION)", "0x100467d0"], ["0x1005dad5", "push 1", "0x100467d5"], ["0x1005dad7", "mov edx, dword ptr [eax]", "0x100467d7"], ["0x1005dad9", "mov ecx, eax", "0x100467d9"], ["0x1005dadb", "call dword ptr [edx + 0x54]", "0x100467db"], ["0x1005dade", "mov al, 1", "0x100467de"]]}]], ["@@ -0x1005dbff,21 +0x100468ff,21 @@", [{"both": [["0x1005dbff", "mov ecx, eax", "0x100468ff"], ["0x1005dc01", "call dword ptr [edx + 0x54]", "0x10046901"], ["0x1005dc04", "mov al, 1", "0x10046904"], ["0x1005dc06", "pop esi", "0x10046906"], ["0x1005dc07", "ret 4", "0x10046907"], ["0x1005dc0a", "mov ecx, dword ptr [esi + 0xfc]", "0x1004690a"], ["0x1005dc10", "mov eax, dword ptr [ecx + 8]", "0x10046910"], ["0x1005dc13", "add ecx, 8", "0x10046913"], ["0x1005dc16", "cmp eax, 5", "0x10046916"], ["0x1005dc19", "ja 0x189", "0x10046919"]]}, {"orig": [["0x1005dc1f", "jmp dword ptr [eax*4 + 0x1005ddc8]"]], "recomp": [["0x1004691f", "jmp dword ptr [eax*4 + 0x10046ac8]"]]}, {"both": [["0x1005dc26", "push 'Right_Bitmap' (STRING)", "0x10046926"], ["0x1005dc2b", "mov dword ptr [ecx], 1", "0x1004692b"], ["0x1005dc31", "push 'MxStillPresenter' (STRING)", "0x10046931"], ["0x1005dc36", "mov ecx, esi", "0x10046936"], ["0x1005dc38", "call LegoWorld::Find (FUNCTION)", "0x10046938"], ["0x1005dc3d", "mov ecx, eax", "0x1004693d"], ["0x1005dc3f", "push 1", "0x1004693f"], ["0x1005dc41", "mov eax, dword ptr [ecx]", "0x10046941"], ["0x1005dc43", "call dword ptr [eax + 0x54]", "0x10046943"], ["0x1005dc46", "mov al, 1", "0x10046946"]]}]], ["@@ -0x1005dd57,37 +0x10046a57,42 @@", [{"both": [["0x1005dd57", "push 'MxStillPresenter' (STRING)", "0x10046a57"], ["0x1005dd5c", "mov ecx, esi", "0x10046a5c"], ["0x1005dd5e", "call LegoWorld::Find (FUNCTION)", "0x10046a5e"], ["0x1005dd63", "mov ecx, eax", "0x10046a63"], ["0x1005dd65", "push 0", "0x10046a65"], ["0x1005dd67", "mov eax, dword ptr [ecx]", "0x10046a67"], ["0x1005dd69", "call dword ptr [eax + 0x54]", "0x10046a69"], ["0x1005dd6c", "mov al, 1", "0x10046a6c"], ["0x1005dd6e", "pop esi", "0x10046a6e"], ["0x1005dd6f", "ret 4", "0x10046a6f"]]}, {"orig": [], "recomp": [["0x10046a72", "call GameState (FUNCTION)"]]}, {"both": [["0x1005dd72", "push 'Act1State' (STRING)", "0x10046a77"]]}, {"orig": [["0x1005dd77", "call GameState (FUNCTION)"]], "recomp": []}, {"both": [["0x1005dd7c", "mov ecx, eax", "0x10046a7c"], ["0x1005dd7e", "call LegoGameState::GetState (FUNCTION)", "0x10046a7e"], ["0x1005dd83", "mov dword ptr [eax + 0x18], 0xb", "0x10046a83"], ["0x1005dd8a", "mov dword ptr [esi + 0xf8], 0x36", "0x10046a8a"], ["0x1005dd94", "push 0", "0x10046a94"], ["0x1005dd96", "push 0", "0x10046a96"], ["0x1005dd98", "push 0x32", "0x10046a98"], ["0x1005dd9a", "push 3", "0x10046a9a"], ["0x1005dd9c", "call TransitionManager (FUNCTION)", "0x10046a9c"], ["0x1005dda1", "mov ecx, eax", "0x10046aa1"], ["0x1005dda3", "call MxTransitionManager::StartTransition (FUNCTION)", "0x10046aa3"], ["0x1005dda8", "mov al, 1", "0x10046aa8"], ["0x1005ddaa", "pop esi", "0x10046aaa"], ["0x1005ddab", "ret 4", "0x10046aab"], ["0x1005ddae", "mov edi, edi", "0x10046aae"]]}, {"orig": [["0x1005ddb0", "mov esi, 0xe41005da"], ["0x1005ddb5", "fiadd dword ptr [<OFFSET13>]"], ["0x1005ddbb", "adc byte ptr [edx - 0x25], cl"], ["0x1005ddbe", "add eax, 0x5db8a10"]], "recomp": [["0x10046ab0", "mov esi, 0xe4100467"], ["0x10046ab5", "add al, 0x10"], ["0x10046ab8", "or ch, byte ptr [eax + 4]"], ["0x10046abb", "adc byte ptr [edx + 0x68], cl"], ["0x10046abe", "add al, 0x10"], ["0x10046ac0", "mov ch, byte ptr [eax + 4]"]]}, {"both": [["0x1005ddc3", "adc dl, cl", "0x10046ac3"]]}, {"orig": [["0x1005ddc5", "fild dword ptr [<OFFSET14>]"], ["0x1005ddcb", "adc byte ptr [esp + ebx*8 + 5], cl"], ["0x1005ddcf", "adc byte ptr [esp + ebx*8 - 0x2333effb], cl"], ["0x1005ddd6", "add eax, 0x5dd0c10"], ["0x1005dddb", "adc byte ptr [ebp + ebx*8 + 5], cl"]], "recomp": [["0x10046ac5", "push 0x69261004"], ["0x10046aca", "add al, 0x10"], ["0x10046acc", "dec esp"], ["0x10046acd", "imul eax, dword ptr [eax + edx], <OFFSET13>"], ["0x10046ad4", "int3 "], ["0x10046ad5", "imul eax, dword ptr [eax + edx], <OFFSET14>"], ["0x10046adc", "dec esp"], ["0x10046add", "push 4"]]}]]]}, {"address": "0x1005dde0", "recomp": "0x10046ae0", "name": "JukeBox::Enable", "matching": 1.0, "diff": []}, {"address": "0x1005de30", "recomp": "0x10046b30", "name": "JukeBox::Tickle", "matching": 1.0, "diff": []}, {"address": "0x1005de70", "recomp": "0x10046b70", "name": "JukeBox::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x1005de80", "recomp": "0x10037e10", "name": "LegoFlcTexturePresenter::LegoFlcTexturePresenter", "matching": 1.0, "diff": []}, {"address": "0x1005def0", "recomp": "0x10037f90", "name": "LegoFlcTexturePresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1005df00", "recomp": "0x10037fa0", "name": "LegoFlcTexturePresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005df70", "recomp": "0x10038010", "name": "LegoFlcTexturePresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x1005df80", "recomp": "0x10038020", "name": "LegoFlcTexturePresenter::StartingTickle", "matching": 0.0, "stub": true}, {"address": "0x1005e0c0", "recomp": "0x10038030", "name": "LegoFlcTexturePresenter::LoadFrame", "matching": 0.0, "stub": true}, {"address": "0x1005e100", "recomp": "0x10038040", "name": "LegoFlcTexturePresenter::PutFrame", "matching": 0.0, "stub": true}, {"address": "0x1005e130", "recomp": "0x10046c00", "name": "Police::Police", "matching": 1.0, "diff": []}, {"address": "0x1005e1d0", "recomp": "0x10046de0", "name": "Police::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x1005e1e0", "recomp": "0x10046ca0", "name": "Police::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1005e1f0", "recomp": "0x10046cb0", "name": "Police::IsA", "matching": 1.0, "diff": []}, {"address": "0x1005e300", "recomp": "0x10046dc0", "name": "Police::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005e320", "recomp": "0x10046df0", "name": "Police::~Police", "matching": 1.0, "diff": []}, {"address": "0x1005e3e0", "recomp": "0x10046eb0", "name": "Police::Create", "matching": 1.0, "effective": true, "diff": [["@@ -0x1005e3e0,47 +0x10046eb0,47 @@", [{"both": [["0x1005e3e0", "mov eax, dword ptr [esp + 4]", "0x10046eb0"], ["0x1005e3e4", "push ebx", "0x10046eb4"], ["0x1005e3e5", "push esi", "0x10046eb5"], ["0x1005e3e6", "mov ebx, ecx", "0x10046eb6"], ["0x1005e3e8", "push edi", "0x10046eb8"], ["0x1005e3e9", "push eax", "0x10046eb9"], ["0x1005e3ea", "call LegoWorld::Create (FUNCTION)", "0x10046eba"]]}, {"orig": [["0x1005e3ef", "mov edi, eax"], ["0x1005e3f1", "test edi, edi"]], "recomp": [["0x10046ebf", "mov esi, eax"], ["0x10046ec1", "test esi, esi"]]}, {"both": [["0x1005e3f3", "jne 0x1a", "0x10046ec3"], ["0x1005e3f5", "push ebx", "0x10046ec5"], ["0x1005e3f6", "call InputManager (FUNCTION)", "0x10046ec6"], ["0x1005e3fb", "mov ecx, eax", "0x10046ecb"], ["0x1005e3fd", "call LegoInputManager::SetWorld (FUNCTION)", "0x10046ecd"], ["0x1005e402", "push ebx", "0x10046ed2"], ["0x1005e403", "call ControlManager (FUNCTION)", "0x10046ed3"], ["0x1005e408", "mov ecx, eax", "0x10046ed8"], ["0x1005e40a", "call LegoControlManager::Register (FUNCTION)", "0x10046eda"], ["0x1005e40f", "push 0", "0x10046edf"], ["0x1005e411", "call SetIsWorldActive (FUNCTION)", "0x10046ee1"], ["0x1005e416", "add esp, 4", "0x10046ee6"], ["0x1005e419", "push ebx", "0x10046ee9"], ["0x1005e41a", "call InputManager (FUNCTION)", "0x10046eea"], ["0x1005e41f", "mov ecx, eax", "0x10046eef"], ["0x1005e421", "call LegoInputManager::Register (FUNCTION)", "0x10046ef1"], ["0x1005e426", "call GameState (FUNCTION)", "0x10046ef6"], ["0x1005e42b", "mov ecx, eax", "0x10046efb"]]}, {"orig": [["0x1005e42d", "mov esi, eax"]], "recomp": [["0x10046efd", "mov edi, eax"]]}, {"both": [["0x1005e42f", "push 'PoliceState' (STRING)", "0x10046eff"], ["0x1005e434", "call LegoGameState::GetState (FUNCTION)", "0x10046f04"], ["0x1005e439", "test eax, eax", "0x10046f09"], ["0x1005e43b", "jne 0xc", "0x10046f0b"], ["0x1005e43d", "push 'PoliceState' (STRING)", "0x10046f0d"]]}, {"orig": [["0x1005e442", "mov ecx, esi"]], "recomp": [["0x10046f12", "mov ecx, edi"]]}, {"both": [["0x1005e444", "call LegoGameState::CreateState (FUNCTION)", "0x10046f14"], ["0x1005e449", "mov dword ptr [ebx + 0x108], eax", "0x10046f19"], ["0x1005e44f", "call GameState (FUNCTION)", "0x10046f1f"], ["0x1005e454", "mov dword ptr [eax + 0x424], 0x22", "0x10046f24"], ["0x1005e45e", "push 0", "0x10046f2e"], ["0x1005e460", "call GameState (FUNCTION)", "0x10046f30"], ["0x1005e465", "mov ecx, eax", "0x10046f35"], ["0x1005e467", "call LegoGameState::StopArea (FUNCTION)", "0x10046f37"]]}, {"orig": [["0x1005e46c", "mov eax, edi"]], "recomp": [["0x10046f3c", "mov eax, esi"]]}, {"both": [["0x1005e46e", "pop edi", "0x10046f3e"], ["0x1005e46f", "pop esi", "0x10046f3f"], ["0x1005e470", "pop ebx", "0x10046f40"], ["0x1005e471", "ret 4", "0x10046f41"]]}]]]}, {"address": "0x1005e480", "recomp": "0x10046f50", "name": "Police::Notify", "matching": 0.8299319727891157, "diff": [["@@ -0x1005e487,22 +0x10046f57,22 @@", [{"both": [["0x1005e487", "mov esi, dword ptr [esp + 0x10]", "0x10046f57"], ["0x1005e48b", "push esi", "0x10046f5b"], ["0x1005e48c", "call LegoWorld::Notify (FUNCTION)", "0x10046f5c"], ["0x1005e491", "cmp byte ptr [edi + 0xf6], bl", "0x10046f61"], ["0x1005e497", "je 0x63", "0x10046f67"], ["0x1005e499", "mov ecx, dword ptr [esi + 4]", "0x10046f69"], ["0x1005e49c", "sub ecx, 2", "0x10046f6c"], ["0x1005e49f", "cmp ecx, 0x16", "0x10046f6f"], ["0x1005e4a2", "ja 0x58", "0x10046f72"], ["0x1005e4a4", "xor eax, eax", "0x10046f74"]]}, {"orig": [["0x1005e4a6", "mov al, byte ptr [ecx + 0x1005e518]"], ["0x1005e4ac", "jmp dword ptr [eax*4 + 0x1005e504]"]], "recomp": [["0x10046f76", "mov al, byte ptr [ecx + 0x10046fe8]"], ["0x10046f7c", "jmp dword ptr [eax*4 + 0x10046fd4]"]]}, {"both": [["0x1005e4b3", "push esi", "0x10046f83"], ["0x1005e4b4", "mov ecx, edi", "0x10046f84"], ["0x1005e4b6", "call Police::HandleEndAction (FUNCTION)", "0x10046f86"], ["0x1005e4bb", "mov ebx, eax", "0x10046f8b"], ["0x1005e4bd", "pop edi", "0x10046f8d"], ["0x1005e4be", "mov eax, ebx", "0x10046f8e"], ["0x1005e4c0", "pop esi", "0x10046f90"], ["0x1005e4c1", "pop ebx", "0x10046f91"], ["0x1005e4c2", "ret 4", "0x10046f92"], ["0x1005e4c5", "push esi", "0x10046f95"]]}]], ["@@ -0x1005e4e9,29 +0x10046fb9,30 @@", [{"both": [["0x1005e4e9", "mov eax, dword ptr [edi + 0x10c]", "0x10046fb9"], ["0x1005e4ef", "push eax", "0x10046fbf"], ["0x1005e4f0", "call GameState (FUNCTION)", "0x10046fc0"], ["0x1005e4f5", "mov ecx, eax", "0x10046fc5"], ["0x1005e4f7", "call LegoGameState::SwitchArea (FUNCTION)", "0x10046fc7"], ["0x1005e4fc", "mov eax, ebx", "0x10046fcc"], ["0x1005e4fe", "pop edi", "0x10046fce"], ["0x1005e4ff", "pop esi", "0x10046fcf"], ["0x1005e500", "pop ebx", "0x10046fd0"], ["0x1005e501", "ret 4", "0x10046fd1"]]}, {"orig": [["0x1005e504", "mov bl, 0xe4"], ["0x1005e506", "add eax, 0x5e4c510"], ["0x1005e50b", "adc bh, dl"], ["0x1005e50d", "in al, 5"], ["0x1005e50f", "adc cl, ch"], ["0x1005e511", "in al, 5"], ["0x1005e513", "adc ah, bh"], ["0x1005e515", "in al, 5"], ["0x1005e517", "adc byte ptr [eax], al"], ["0x1005e519", "add al, 4"]], "recomp": [["0x10046fd4", "sub dword ptr [edi + 4], 0x10"], ["0x10046fd8", "xchg ebp, eax"], ["0x10046fd9", "outsd dx, dword ptr [esi]"], ["0x10046fda", "add al, 0x10"], ["0x10046fdc", "cmpsd dword ptr [esi], dword ptr es:[edi]"], ["0x10046fdd", "outsd dx, dword ptr [esi]"], ["0x10046fde", "add al, 0x10"], ["0x10046fe0", "mov ecx, 0xcc10046f"], ["0x10046fe5", "outsd dx, dword ptr [esi]"], ["0x10046fe6", "add al, 0x10"], ["0x10046fe8", "add byte ptr [esp + eax], al"]]}, {"both": [["0x1005e51b", "add al, 4", "0x10046feb"], ["0x1005e51d", "add dword ptr [esp + eax], eax", "0x10046fed"], ["0x1005e520", "add al, 4", "0x10046ff0"], ["0x1005e522", "add al, 4", "0x10046ff2"], ["0x1005e524", "add al, 4", "0x10046ff4"], ["0x1005e526", "add al, 2", "0x10046ff6"], ["0x1005e528", "add al, 4", "0x10046ff8"], ["0x1005e52a", "add al, 4", "0x10046ffa"], ["0x1005e52c", "add al, 4", "0x10046ffc"]]}]]]}, {"address": "0x1005e530", "recomp": "0x10047000", "name": "Police::ReadyWorld", "matching": 1.0, "diff": []}, {"address": "0x1005e550", "recomp": "0x10047020", "name": "Police::HandleClick", "matching": 0.8983957219251337, "diff": [["@@ -0x1005e550,20 +0x10047020,20 @@", [{"both": [["0x1005e550", "mov eax, dword ptr [esp + 4]", "0x10047020"], ["0x1005e554", "push esi", "0x10047024"], ["0x1005e555", "cmp word ptr [eax + 0x28], 1", "0x10047025"], ["0x1005e55a", "mov esi, ecx", "0x1004702a"], ["0x1005e55c", "jne 0x11e", "0x1004702c"], ["0x1005e562", "mov eax, dword ptr [eax + 0x20]", "0x10047032"], ["0x1005e565", "dec eax", "0x10047035"], ["0x1005e566", "cmp eax, 4", "0x10047036"], ["0x1005e569", "ja 0x111", "0x10047039"]]}, {"orig": [["0x1005e56f", "jmp dword ptr [eax*4 + 0x1005e68c]"]], "recomp": [["0x1004703f", "jmp dword ptr [eax*4 + 0x1004715c]"]]}, {"both": [["0x1005e576", "mov eax, dword ptr [esi + 0x108]", "0x10047046"], ["0x1005e57c", "cmp dword ptr [eax + 0xc], 1", "0x1004704c"], ["0x1005e580", "jne 0x16", "0x10047050"], ["0x1005e582", "push 0x1f5", "0x10047052"], ["0x1005e587", "lea eax, [esi + 0xc]", "0x10047057"], ["0x1005e58a", "push 0x1f4", "0x1004705a"], ["0x1005e58f", "push eax", "0x1004705f"], ["0x1005e590", "call DeleteObjects (FUNCTION)", "0x10047060"], ["0x1005e595", "add esp, 0xc", "0x10047065"], ["0x1005e598", "call BackgroundAudioManager (FUNCTION)", "0x10047068"]]}]], ["@@ -0x1005e667,17 +0x10047137,20 @@", [{"both": [["0x1005e667", "call MxTransitionManager::StartTransition (FUNCTION)", "0x10047137"], ["0x1005e66c", "mov eax, 1", "0x1004713c"], ["0x1005e671", "pop esi", "0x10047141"], ["0x1005e672", "ret 4", "0x10047142"], ["0x1005e675", "mov ecx, dword ptr [esi + 0x108]", "0x10047145"], ["0x1005e67b", "call PoliceState::FUN_1005ea40 (FUNCTION)", "0x1004714b"], ["0x1005e680", "mov eax, 1", "0x10047150"], ["0x1005e685", "pop esi", "0x10047155"], ["0x1005e686", "ret 4", "0x10047156"], ["0x1005e689", "lea ecx, [ecx]", "0x10047159"]]}, {"orig": [["0x1005e68c", "jbe -0x1b"], ["0x1005e68e", "add eax, 0x5e57610"], ["0x1005e693", "adc bl, cl"], ["0x1005e695", "in eax, 5"], ["0x1005e697", "adc byte ptr [eax], ah"], ["0x1005e699", "out 5, al"], ["0x1005e69b", "adc byte ptr [ebp - 0x1a], dh"]], "recomp": [["0x1004715c", "inc esi"], ["0x1004715d", "jo 0x4"], ["0x1004715f", "adc byte ptr [esi + 0x70], al"], ["0x10047162", "add al, 0x10"], ["0x10047164", "wait "], ["0x10047165", "jo 0x4"], ["0x10047167", "adc al, dh"], ["0x10047169", "jo 0x4"], ["0x1004716b", "adc byte ptr [ebp + 0x71], al"], ["0x1004716e", "add al, 0x10"]]}]]]}, {"address": "0x1005e6a0", "recomp": "0x10047170", "name": "Police::HandleEndAction", "matching": 1.0, "diff": []}, {"address": "0x1005e6f0", "recomp": "0x100471c0", "name": "Police::HandleKeyPress", "matching": 1.0, "diff": []}, {"address": "0x1005e740", "recomp": "0x10047210", "name": "Police::Enable", "matching": 1.0, "diff": []}, {"address": "0x1005e790", "recomp": "0x10047260", "name": "Police::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x1005e7c0", "recomp": "0x10034500", "name": "PoliceState::PoliceState", "matching": 1.0, "diff": []}, {"address": "0x1005e860", "recomp": "0x100345a0", "name": "PoliceState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1005e870", "recomp": "0x100345b0", "name": "PoliceState::IsA", "matching": 1.0, "diff": []}, {"address": "0x1005e920", "recomp": "0x10034660", "name": "PoliceState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005e990", "recomp": "0x100346d0", "name": "PoliceState::VTable0x1c", "matching": 0.9666666666666667, "diff": [["@@ -0x1005e9e9,24 +0x10034729,24 @@", [{"both": [["0x1005e9e9", "mov ecx, edi", "0x10034729"], ["0x1005e9eb", "call dword ptr [esi + 0x18]", "0x1003472b"], ["0x1005e9ee", "test al, al", "0x1003472e"], ["0x1005e9f0", "je 0x1f", "0x10034730"], ["0x1005e9f2", "push 4", "0x10034732"], ["0x1005e9f4", "add ebx, 8", "0x10034734"], ["0x1005e9f7", "push ebx", "0x10034737"], ["0x1005e9f8", "mov ecx, edi", "0x10034738"], ["0x1005e9fa", "call dword ptr [esi + 4]", "0x1003473a"], ["0x1005e9fd", "jmp 0x23", "0x1003473d"]]}, {"orig": [], "recomp": [["0x1003473f", "mov eax, <OFFSET4>"], ["0x10034744", "jmp ___CxxFrameHandler (FUNCTION)"]]}, {"both": [["0x1005e9ff", "mov ecx, dword ptr [ebp - 0x10]", "0x10034749"], ["0x1005ea02", "jmp MxString::~MxString (FUNCTION)", "0x1003474c"]]}, {"orig": [["0x1005ea07", "mov eax, <OFFSET5>"], ["0x1005ea0c", "jmp ___CxxFrameHandler (FUNCTION)"]], "recomp": []}, {"both": [["0x1005ea11", "mov eax, dword ptr [ebx + 8]", "0x10034751"], ["0x1005ea14", "push 4", "0x10034754"], ["0x1005ea16", "mov ecx, edi", "0x10034756"], ["0x1005ea18", "mov dword ptr [ebp - 0x10], eax", "0x10034758"], ["0x1005ea1b", "lea eax, [ebp - 0x10]", "0x1003475b"], ["0x1005ea1e", "push eax", "0x1003475e"], ["0x1005ea1f", "call dword ptr [esi + 8]", "0x1003475f"], ["0x1005ea22", "xor eax, eax", "0x10034762"], ["0x1005ea24", "mov ecx, dword ptr [ebp - 0xc]", "0x10034764"], ["0x1005ea27", "mov dword ptr fs:[0], ecx", "0x10034767"]]}]]]}, {"address": "0x1005ea40", "recomp": "0x10034780", "name": "PoliceState::FUN_1005ea40", "matching": 1.0, "diff": []}, {"address": "0x1005eb50", "recomp": "0x1000dba0", "name": "LegoAnimationManager::configureLegoAnimationManager", "matching": 1.0, "diff": []}, {"address": "0x1005eb60", "recomp": "0x1000dbb0", "name": "LegoAnimationManager::LegoAnimationManager", "matching": 0.0, "stub": true}, {"address": "0x1005ec80", "recomp": "0x1000dc10", "name": "LegoAnimationManager::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1005ec90", "recomp": "0x1000dc20", "name": "LegoAnimationManager::IsA", "matching": 1.0, "diff": []}, {"address": "0x1005ed10", "recomp": "0x1000dca0", "name": "LegoAnimationManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005ed30", "recomp": "0x1000dcc0", "name": "LegoAnimationManager::~LegoAnimationManager", "matching": 0.0, "stub": true}, {"address": "0x1005ee80", "recomp": "0x1000dd10", "name": "LegoAnimationManager::FUN_1005ee80", "matching": 0.0, "stub": true}, {"address": "0x1005ef10", "recomp": "0x1000dd20", "name": "LegoAnimationManager::FUN_1005ef10", "matching": 0.0, "stub": true}, {"address": "0x1005f0b0", "recomp": "0x1000dd30", "name": "LegoAnimationManager::FUN_1005f0b0", "matching": 0.0, "stub": true}, {"address": "0x1005f130", "recomp": "0x1000dd40", "name": "LegoAnimationManager::Init", "matching": 0.0, "stub": true}, {"address": "0x1005f360", "recomp": "0x10036ef0", "name": "LegoROIList::Compare", "matching": 0.7, "diff": [["@@ -0x1005f360,10 +0x10036ef0,10 @@", [{"orig": [], "recomp": [["0x10036ef0", "mov eax, dword ptr [esp + 4]"]]}, {"both": [["0x1005f360", "mov ecx, dword ptr [esp + 8]", "0x10036ef4"]]}, {"orig": [["0x1005f364", "mov eax, dword ptr [esp + 4]"], ["0x1005f368", "cmp ecx, eax"]], "recomp": [["0x10036ef8", "cmp eax, ecx"]]}, {"both": [["0x1005f36a", "jne 0x5", "0x10036efa"], ["0x1005f36c", "xor al, al", "0x10036efc"], ["0x1005f36e", "ret 8", "0x10036efe"], ["0x1005f371", "mov al, 1", "0x10036f01"]]}, {"orig": [["0x1005f373", "jbe 0x2"]], "recomp": [["0x10036f03", "jae 0x2"]]}, {"both": [["0x1005f375", "mov al, 0xff", "0x10036f05"], ["0x1005f377", "ret 8", "0x10036f07"]]}]]]}, {"address": "0x1005f380", "recomp": "0x10036f70", "name": "MxCollection<LegoROI *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1005f390", "recomp": "0x10036f20", "name": "MxCollection<LegoROI *>::~MxCollection<LegoROI *>", "matching": 1.0, "diff": []}, {"address": "0x1005f3e0", "recomp": "0x10036f10", "name": "MxCollection<LegoROI *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1005f3f0", "recomp": "0x10037a90", "name": "MxList<LegoROI *>::~MxList<LegoROI *>", "matching": 1.0, "effective": true, "diff": [["@@ -0x1005f3f9,33 +0x10037a99,33 @@", [{"both": [["0x1005f3f9", "push -1", "0x10037a99"], ["0x1005f3fb", "push <OFFSET1>", "0x10037a9b"], ["0x1005f400", "push eax", "0x10037aa0"], ["0x1005f401", "mov dword ptr fs:[0], esp", "0x10037aa1"], ["0x1005f408", "mov dword ptr [ecx], MxList<LegoROI *>::`vftable' (VTABLE)", "0x10037aa8"], ["0x1005f40e", "sub esp, 4", "0x10037aae"], ["0x1005f411", "mov dword ptr [ebp - 0x10], ecx", "0x10037ab1"], ["0x1005f414", "mov dword ptr [ebp - 4], 0", "0x10037ab4"], ["0x1005f41b", "push esi", "0x10037abb"], ["0x1005f41c", "push edi", "0x10037abc"]]}, {"orig": [["0x1005f41d", "mov esi, dword ptr [ecx + 0x10]"], ["0x1005f420", "test esi, esi"]], "recomp": [["0x10037abd", "mov edi, dword ptr [ecx + 0x10]"], ["0x10037ac0", "test edi, edi"]]}, {"both": [["0x1005f422", "je 0x1c", "0x10037ac2"]]}, {"orig": [["0x1005f424", "mov edi, dword ptr [esi + 8]"], ["0x1005f427", "mov eax, dword ptr [esi]"]], "recomp": [["0x10037ac4", "mov esi, dword ptr [edi + 8]"], ["0x10037ac7", "mov eax, dword ptr [edi]"]]}, {"both": [["0x1005f429", "push eax", "0x10037ac9"], ["0x1005f42a", "mov ecx, dword ptr [ebp - 0x10]", "0x10037aca"], ["0x1005f42d", "call dword ptr [ecx + 0xc]", "0x10037acd"], ["0x1005f430", "add esp, 4", "0x10037ad0"]]}, {"orig": [["0x1005f433", "push esi"]], "recomp": [["0x10037ad3", "push edi"]]}, {"both": [["0x1005f434", "call ??3@YAXPAX@Z (FUNCTION)", "0x10037ad4"], ["0x1005f439", "add esp, 4", "0x10037ad9"]]}, {"orig": [["0x1005f43c", "mov esi, edi"]], "recomp": [["0x10037adc", "mov edi, esi"]]}, {"both": [["0x1005f43e", "jmp -0x20", "0x10037ade"], ["0x1005f440", "xor eax, eax", "0x10037ae0"], ["0x1005f442", "mov ecx, dword ptr [ebp - 0x10]", "0x10037ae2"], ["0x1005f445", "mov dword ptr [ebp - 4], 0xffffffff", "0x10037ae5"], ["0x1005f44c", "mov dword ptr [ecx + 8], eax", "0x10037aec"], ["0x1005f44f", "mov dword ptr [ecx + 0x14], eax", "0x10037aef"], ["0x1005f452", "mov dword ptr [ecx + 0x10], eax", "0x10037af2"], ["0x1005f455", "call <OFFSET4>", "0x10037af5"], ["0x1005f45a", "mov eax, dword ptr [ebp - 0xc]", "0x10037afa"], ["0x1005f45d", "pop edi", "0x10037afd"]]}]]]}, {"address": "0x1005f480", "recomp": "0x10036f80", "name": "LegoROIList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005f4f0", "recomp": "0x10036ff0", "name": "MxPtrList<LegoROI>::~MxPtrList<LegoROI>", "matching": 1.0, "diff": []}, {"address": "0x1005f540", "recomp": "0x10037040", "name": "MxCollection<LegoROI *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005f5b0", "recomp": "0x100370b0", "name": "MxList<LegoROI *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005f660", "recomp": "0x10037160", "name": "MxPtrList<LegoROI>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005f6d0", "recomp": "0x1000dd50", "name": "LegoAnimationManager::FUN_1005f6d0", "matching": 0.0, "stub": true}, {"address": "0x1005f700", "recomp": "0x1000dd60", "name": "LegoAnimationManager::FUN_1005f700", "matching": 0.0, "stub": true}, {"address": "0x1005f720", "recomp": "0x1000dd70", "name": "LegoAnimationManager::LoadScriptInfo", "matching": 0.990530303030303, "diff": [["@@ -0x1005faf1,46 +0x1000e141,46 @@", [{"both": [["0x1005faf1", "sub eax, 2", "0x1000e141"], ["0x1005faf4", "push eax", "0x1000e144"], ["0x1005faf5", "call LegoAnimationManager::FUN_10062360 (FUNCTION)", "0x1000e145"], ["0x1005fafa", "mov edx, dword ptr [ebp - 0x10]", "0x1000e14a"], ["0x1005fafd", "mov byte ptr [esi + 0x28], al", "0x1000e14d"], ["0x1005fb00", "xor esi, esi", "0x1000e150"], ["0x1005fb02", "mov ecx, dword ptr [edx + 0x14]", "0x1000e152"], ["0x1005fb05", "mov byte ptr [ecx + ebx + 0x29], 0", "0x1000e155"], ["0x1005fb0a", "mov ecx, 0xffffffff", "0x1000e15a"], ["0x1005fb0f", "mov edx, dword ptr [ebp - 0x10]", "0x1000e15f"]]}, {"orig": [], "recomp": [["0x1000e162", "mov eax, dword ptr [edx + 0x14]"], ["0x1000e165", "add eax, esi"]]}, {"both": [["0x1005fb12", "inc esi", "0x1000e167"]]}, {"orig": [["0x1005fb13", "mov eax, dword ptr [edx + 0x14]"], ["0x1005fb16", "add eax, ebx"]], "recomp": []}, {"both": [["0x1005fb18", "cmp esi, 3", "0x1000e168"]]}, {"orig": [["0x1005fb1b", "mov byte ptr [eax + esi + 0x29], cl"]], "recomp": [["0x1000e16b", "mov byte ptr [eax + ebx + 0x2a], cl"]]}, {"both": [["0x1005fb1f", "jl -0x12", "0x1000e16f"], ["0x1005fb21", "mov eax, dword ptr [edx + 0x14]", "0x1000e171"], ["0x1005fb24", "add eax, ebx", "0x1000e174"], ["0x1005fb26", "cmp word ptr [eax + 8], -1", "0x1000e176"], ["0x1005fb2b", "jne 0x46", "0x1000e17b"], ["0x1005fb2d", "xor edi, edi", "0x1000e17d"], ["0x1005fb2f", "cmp byte ptr [eax + 0x20], 0", "0x1000e17f"], ["0x1005fb33", "jbe 0x3e", "0x1000e183"], ["0x1005fb35", "xor esi, esi", "0x1000e185"], ["0x1005fb37", "mov edx, dword ptr [ebp - 0x10]", "0x1000e187"], ["0x1005fb3a", "mov eax, dword ptr [edx + 0x14]", "0x1000e18a"], ["0x1005fb3d", "mov ecx, dword ptr [eax + ebx + 0x24]", "0x1000e18d"], ["0x1005fb41", "mov edx, dword ptr [ecx + esi]", "0x1000e191"], ["0x1005fb44", "mov ecx, dword ptr [ebp - 0x10]", "0x1000e194"], ["0x1005fb47", "push edx", "0x1000e197"], ["0x1005fb48", "call LegoAnimationManager::FUN_10062360 (FUNCTION)", "0x1000e198"], ["0x1005fb4d", "movsx eax, al", "0x1000e19d"], ["0x1005fb50", "test eax, eax", "0x1000e1a0"], ["0x1005fb52", "jl 0xb", "0x1000e1a2"], ["0x1005fb54", "lea eax, [eax + eax*2]", "0x1000e1a4"]]}, {"orig": [["0x1005fb57", "mov byte ptr [eax*8 + 0x100f705c], 1"]], "recomp": [["0x1000e1a7", "mov byte ptr [eax*8 + 0x100c1634], 1"]]}, {"both": [["0x1005fb5f", "mov edx, dword ptr [ebp - 0x10]", "0x1000e1af"], ["0x1005fb62", "xor eax, eax", "0x1000e1b2"], ["0x1005fb64", "add esi, 0x30", "0x1000e1b4"], ["0x1005fb67", "inc edi", "0x1000e1b7"], ["0x1005fb68", "mov ecx, dword ptr [edx + 0x14]", "0x1000e1b8"], ["0x1005fb6b", "mov al, byte ptr [ecx + ebx + 0x20]", "0x1000e1bb"], ["0x1005fb6f", "cmp eax, edi", "0x1000e1bf"], ["0x1005fb71", "jg -0x3c", "0x1000e1c1"], ["0x1005fb73", "xor edi, edi", "0x1000e1c3"], ["0x1005fb75", "mov edx, dword ptr [ebp - 0x10]", "0x1000e1c5"]]}]], ["@@ -0x1005fbd2,22 +0x1000e222,22 @@", [{"both": [["0x1005fbd2", "mov al, byte ptr [ecx + ebx + 0x20]", "0x1000e222"], ["0x1005fbd6", "cmp eax, dword ptr [ebp - 0x20]", "0x1000e226"], ["0x1005fbd9", "jg -0x54", "0x1000e229"], ["0x1005fbdb", "mov ecx, dword ptr [ebp - 0x1c]", "0x1000e22b"], ["0x1005fbde", "inc dword ptr [ebp - 0x18]", "0x1000e22e"], ["0x1005fbe1", "add ebx, 0x30", "0x1000e231"], ["0x1005fbe4", "xor eax, eax", "0x1000e234"], ["0x1005fbe6", "mov ax, word ptr [ecx]", "0x1000e236"], ["0x1005fbe9", "cmp eax, dword ptr [ebp - 0x18]", "0x1000e239"], ["0x1005fbec", "jg -0x13c", "0x1000e23c"]]}, {"orig": [], "recomp": [["0x1000e242", "mov edx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x1005fbf2", "mov eax, dword ptr [ebp + 8]", "0x1000e245"]]}, {"orig": [["0x1005fbf5", "mov edx, dword ptr [ebp - 0x10]"]], "recomp": []}, {"both": [["0x1005fbf8", "push 0x18", "0x1000e248"], ["0x1005fbfa", "mov ebx, 1", "0x1000e24a"], ["0x1005fbff", "xor edi, edi", "0x1000e24f"], ["0x1005fc01", "mov dword ptr [edx + 8], eax", "0x1000e251"], ["0x1005fc04", "call ??2@YAPAXI@Z (FUNCTION)", "0x1000e254"], ["0x1005fc09", "mov dword ptr [ebp - 0x14], eax", "0x1000e259"], ["0x1005fc0c", "add esp, 4", "0x1000e25c"], ["0x1005fc0f", "mov esi, eax", "0x1000e25f"], ["0x1005fc11", "mov byte ptr [ebp - 4], bl", "0x1000e261"], ["0x1005fc14", "test esi, esi", "0x1000e264"]]}]]]}, {"address": "0x1005fdf0", "recomp": "0x1000e4a0", "name": "MxCollection<LegoTranInfo *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1005fe00", "recomp": "0x1000e450", "name": "MxCollection<LegoTranInfo *>::~MxCollection<LegoTranInfo *>", "matching": 1.0, "diff": []}, {"address": "0x1005fe50", "recomp": "0x1000e440", "name": "MxCollection<LegoTranInfo *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1005fe60", "recomp": "0x1000ead0", "name": "MxList<LegoTranInfo *>::~MxList<LegoTranInfo *>", "matching": 1.0, "diff": []}, {"address": "0x1005fef0", "recomp": "0x1000e4b0", "name": "LegoTranInfoList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1005ff60", "recomp": "0x1000e520", "name": "MxPtrList<LegoTranInfo>::~MxPtrList<LegoTranInfo>", "matching": 1.0, "diff": []}, {"address": "0x1005ffb0", "recomp": "0x1000e570", "name": "MxCollection<LegoTranInfo *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10060020", "recomp": "0x1000e5e0", "name": "MxList<LegoTranInfo *>::`scalar deleting destructor'", "matching": 1.0, "effective": true, "diff": [["@@ -0x10060029,33 +0x1000e5e9,33 @@", [{"both": [["0x10060029", "push -1", "0x1000e5e9"], ["0x1006002b", "push <OFFSET1>", "0x1000e5eb"], ["0x10060030", "push eax", "0x1000e5f0"], ["0x10060031", "mov dword ptr fs:[0], esp", "0x1000e5f1"], ["0x10060038", "mov dword ptr [ecx], MxList<LegoTranInfo *>::`vftable' (VTABLE)", "0x1000e5f8"], ["0x1006003e", "sub esp, 4", "0x1000e5fe"], ["0x10060041", "mov dword ptr [ebp - 0x10], ecx", "0x1000e601"], ["0x10060044", "mov dword ptr [ebp - 4], 0", "0x1000e604"], ["0x1006004b", "push esi", "0x1000e60b"], ["0x1006004c", "push edi", "0x1000e60c"]]}, {"orig": [["0x1006004d", "mov esi, dword ptr [ecx + 0x10]"], ["0x10060050", "test esi, esi"]], "recomp": [["0x1000e60d", "mov edi, dword ptr [ecx + 0x10]"], ["0x1000e610", "test edi, edi"]]}, {"both": [["0x10060052", "je 0x1c", "0x1000e612"]]}, {"orig": [["0x10060054", "mov edi, dword ptr [esi + 8]"], ["0x10060057", "mov eax, dword ptr [esi]"]], "recomp": [["0x1000e614", "mov esi, dword ptr [edi + 8]"], ["0x1000e617", "mov eax, dword ptr [edi]"]]}, {"both": [["0x10060059", "push eax", "0x1000e619"], ["0x1006005a", "mov ecx, dword ptr [ebp - 0x10]", "0x1000e61a"], ["0x1006005d", "call dword ptr [ecx + 0xc]", "0x1000e61d"], ["0x10060060", "add esp, 4", "0x1000e620"]]}, {"orig": [["0x10060063", "push esi"]], "recomp": [["0x1000e623", "push edi"]]}, {"both": [["0x10060064", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000e624"], ["0x10060069", "add esp, 4", "0x1000e629"]]}, {"orig": [["0x1006006c", "mov esi, edi"]], "recomp": [["0x1000e62c", "mov edi, esi"]]}, {"both": [["0x1006006e", "jmp -0x20", "0x1000e62e"], ["0x10060070", "xor eax, eax", "0x1000e630"], ["0x10060072", "mov ecx, dword ptr [ebp - 0x10]", "0x1000e632"], ["0x10060075", "mov dword ptr [ebp - 4], 0xffffffff", "0x1000e635"], ["0x1006007c", "mov dword ptr [ecx + 8], eax", "0x1000e63c"], ["0x1006007f", "mov dword ptr [ecx + 0x14], eax", "0x1000e63f"], ["0x10060082", "mov dword ptr [ecx + 0x10], eax", "0x1000e642"], ["0x10060085", "call <OFFSET4>", "0x1000e645"], ["0x1006008a", "test byte ptr [ebp + 8], 1", "0x1000e64a"], ["0x1006008e", "je 0xc", "0x1000e64e"]]}]]]}, {"address": "0x100600d0", "recomp": "0x1000e690", "name": "MxPtrList<LegoTranInfo>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10060140", "recomp": "0x1000e700", "name": "LegoAnimationManager::FUN_10060140", "matching": 0.0, "stub": true}, {"address": "0x10060180", "recomp": "0x1000e710", "name": "LegoAnimationManager::ReadAnimInfo", "matching": 1.0, "effective": true, "diff": [["@@ -0x1006024b,31 +0x1000e7db,31 @@", [{"both": [["0x1006024b", "call edi", "0x1000e7db"], ["0x1006024d", "cmp eax, -1", "0x1000e7dd"], ["0x10060250", "je 0xa4", "0x1000e7e0"], ["0x10060256", "push 1", "0x1000e7e6"], ["0x10060258", "lea eax, [esi + 0xd]", "0x1000e7e8"], ["0x1006025b", "mov ecx, dword ptr [esp + 0x24]", "0x1000e7eb"], ["0x1006025f", "push eax", "0x1000e7ef"], ["0x10060260", "call edi", "0x1000e7f0"], ["0x10060262", "cmp eax, -1", "0x1000e7f2"], ["0x10060265", "je 0x8f", "0x1000e7f5"]]}, {"orig": [["0x1006026b", "xor ebp, ebp"], ["0x1006026d", "lea ebx, [esi + 0x10]"]], "recomp": [["0x1000e7fb", "xor ebx, ebx"], ["0x1000e7fd", "lea ebp, [esi + 0x10]"]]}, {"both": [["0x10060270", "mov ecx, dword ptr [esp + 0x20]", "0x1000e800"], ["0x10060274", "push 4", "0x1000e804"]]}, {"orig": [["0x10060276", "push ebx"]], "recomp": [["0x1000e806", "push ebp"]]}, {"both": [["0x10060277", "call edi", "0x1000e807"], ["0x10060279", "test eax, eax", "0x1000e809"], ["0x1006027b", "jne 0x7d", "0x1000e80b"]]}, {"orig": [["0x1006027d", "add ebx, 4"], ["0x10060280", "inc ebp"], ["0x10060281", "cmp ebp, 4"]], "recomp": [["0x1000e80d", "add ebp, 4"], ["0x1000e810", "inc ebx"], ["0x1000e811", "cmp ebx, 4"]]}, {"both": [["0x10060284", "jl -0x16", "0x1000e814"], ["0x10060286", "push 1", "0x1000e816"], ["0x10060288", "lea eax, [esi + 0x20]", "0x1000e818"], ["0x1006028b", "mov ecx, dword ptr [esp + 0x24]", "0x1000e81b"], ["0x1006028f", "push eax", "0x1000e81f"], ["0x10060290", "call edi", "0x1000e820"], ["0x10060292", "cmp eax, -1", "0x1000e822"], ["0x10060295", "je 0x63", "0x1000e825"], ["0x10060297", "xor eax, eax", "0x1000e827"], ["0x10060299", "mov al, byte ptr [esi + 0x20]", "0x1000e829"]]}]]]}, {"address": "0x10060310", "recomp": "0x1000e8a0", "name": "LegoAnimationManager::ReadModelInfo", "matching": 0.65, "diff": [["@@ -0x10060310,80 +0x1000e8a0,80 @@", [{"both": [["0x10060310", "sub esp, 4", "0x1000e8a0"], ["0x10060313", "push ebx", "0x1000e8a3"], ["0x10060314", "push esi", "0x1000e8a4"]]}, {"orig": [], "recomp": [["0x1000e8a5", "mov esi, dword ptr [esp + 0x10]"]]}, {"both": [["0x10060315", "push edi", "0x1000e8a9"]]}, {"orig": [], "recomp": [["0x1000e8aa", "lea ecx, [esp + 0xf]"]]}, {"both": [["0x10060316", "push ebp", "0x1000e8ae"], ["0x10060317", "mov ebp, 0xffffffff", "0x1000e8af"]]}, {"orig": [["0x1006031c", "mov edi, dword ptr [esp + 0x18]"], ["0x10060320", "lea ecx, [esp + 0x13]"]], "recomp": [["0x1000e8b4", "mov eax, dword ptr [esi]"]]}, {"both": [["0x10060324", "push 1", "0x1000e8b6"]]}, {"orig": [["0x10060326", "mov eax, dword ptr [edi]"]], "recomp": []}, {"both": [["0x10060328", "push ecx", "0x1000e8b8"]]}, {"orig": [["0x10060329", "mov ecx, edi"], ["0x1006032b", "mov esi, dword ptr [eax + 4]"], ["0x1006032e", "call esi"]], "recomp": [["0x1000e8b9", "mov ebx, dword ptr [eax + 4]"], ["0x1000e8bc", "mov ecx, esi"], ["0x1000e8be", "call ebx"]]}, {"both": [["0x10060330", "cmp eax, ebp", "0x1000e8c0"], ["0x10060332", "je 0x7c", "0x1000e8c2"], ["0x10060334", "xor eax, eax", "0x1000e8c4"], ["0x10060336", "mov al, byte ptr [esp + 0x13]", "0x1000e8c6"], ["0x1006033a", "inc eax", "0x1000e8ca"], ["0x1006033b", "push eax", "0x1000e8cb"], ["0x1006033c", "call ??2@YAPAXI@Z (FUNCTION)", "0x1000e8cc"]]}, {"orig": [["0x10060341", "mov ebx, dword ptr [esp + 0x20]"]], "recomp": [["0x1000e8d1", "mov edi, dword ptr [esp + 0x20]"]]}, {"both": [["0x10060345", "add esp, 4", "0x1000e8d5"]]}, {"orig": [["0x10060348", "mov dword ptr [ebx], eax"]], "recomp": [["0x1000e8d8", "mov dword ptr [edi], eax"]]}, {"both": [["0x1006034a", "xor eax, eax", "0x1000e8da"], ["0x1006034c", "mov al, byte ptr [esp + 0x13]", "0x1000e8dc"]]}, {"orig": [["0x10060350", "mov ecx, dword ptr [ebx]"]], "recomp": [["0x1000e8e0", "mov ecx, dword ptr [edi]"]]}, {"both": [["0x10060352", "push eax", "0x1000e8e2"], ["0x10060353", "push ecx", "0x1000e8e3"]]}, {"orig": [["0x10060354", "mov ecx, edi"], ["0x10060356", "call esi"]], "recomp": [["0x1000e8e4", "mov ecx, esi"], ["0x1000e8e6", "call ebx"]]}, {"both": [["0x10060358", "cmp eax, ebp", "0x1000e8e8"], ["0x1006035a", "je 0x54", "0x1000e8ea"], ["0x1006035c", "xor eax, eax", "0x1000e8ec"]]}, {"orig": [["0x1006035e", "mov ecx, dword ptr [ebx]"]], "recomp": [["0x1000e8ee", "mov ecx, dword ptr [edi]"]]}, {"both": [["0x10060360", "mov al, byte ptr [esp + 0x13]", "0x1000e8f0"], ["0x10060364", "push 1", "0x1000e8f4"]]}, {"orig": [["0x10060366", "lea edx, [ebx + 4]"]], "recomp": [["0x1000e8f6", "lea edx, [edi + 4]"]]}, {"both": [["0x10060369", "mov byte ptr [eax + ecx], 0", "0x1000e8f9"], ["0x1006036d", "push edx", "0x1000e8fd"]]}, {"orig": [["0x1006036e", "mov ecx, edi"], ["0x10060370", "call esi"]], "recomp": [["0x1000e8fe", "mov ecx, esi"], ["0x1000e900", "call ebx"]]}, {"both": [["0x10060372", "cmp eax, ebp", "0x1000e902"], ["0x10060374", "je 0x3a", "0x1000e904"], ["0x10060376", "push 0xc", "0x1000e906"]]}, {"orig": [["0x10060378", "lea eax, [ebx + 8]"]], "recomp": [["0x1000e908", "lea eax, [edi + 8]"]]}, {"both": [["0x1006037b", "push eax", "0x1000e90b"]]}, {"orig": [["0x1006037c", "mov ecx, edi"], ["0x1006037e", "call esi"]], "recomp": [["0x1000e90c", "mov ecx, esi"], ["0x1000e90e", "call ebx"]]}, {"both": [["0x10060380", "test eax, eax", "0x1000e910"], ["0x10060382", "jne 0x2c", "0x1000e912"], ["0x10060384", "push 0xc", "0x1000e914"]]}, {"orig": [["0x10060386", "lea eax, [ebx + 0x14]"]], "recomp": [["0x1000e916", "lea eax, [edi + 0x14]"]]}, {"both": [["0x10060389", "push eax", "0x1000e919"]]}, {"orig": [["0x1006038a", "mov ecx, edi"], ["0x1006038c", "call esi"]], "recomp": [["0x1000e91a", "mov ecx, esi"], ["0x1000e91c", "call ebx"]]}, {"both": [["0x1006038e", "test eax, eax", "0x1000e91e"], ["0x10060390", "jne 0x1e", "0x1000e920"], ["0x10060392", "push 0xc", "0x1000e922"]]}, {"orig": [["0x10060394", "lea eax, [ebx + 0x20]"]], "recomp": [["0x1000e924", "lea eax, [edi + 0x20]"]]}, {"both": [["0x10060397", "push eax", "0x1000e927"]]}, {"orig": [["0x10060398", "mov ecx, edi"], ["0x1006039a", "call esi"]], "recomp": [["0x1000e928", "mov ecx, esi"], ["0x1000e92a", "call ebx"]]}, {"both": [["0x1006039c", "test eax, eax", "0x1000e92c"], ["0x1006039e", "jne 0x10", "0x1000e92e"], ["0x100603a0", "push 1", "0x1000e930"]]}, {"orig": [["0x100603a2", "add ebx, 0x2c"], ["0x100603a5", "push ebx"], ["0x100603a6", "mov ecx, edi"], ["0x100603a8", "call esi"]], "recomp": [["0x1000e932", "add edi, 0x2c"], ["0x1000e935", "push edi"], ["0x1000e936", "mov ecx, esi"], ["0x1000e938", "call ebx"]]}, {"both": [["0x100603aa", "cmp eax, ebp", "0x1000e93a"], ["0x100603ac", "je 0x2", "0x1000e93c"], ["0x100603ae", "xor ebp, ebp", "0x1000e93e"], ["0x100603b0", "mov eax, ebp", "0x1000e940"], ["0x100603b2", "pop ebp", "0x1000e942"], ["0x100603b3", "pop edi", "0x1000e943"], ["0x100603b4", "pop esi", "0x1000e944"], ["0x100603b5", "pop ebx", "0x1000e945"], ["0x100603b6", "add esp, 4", "0x1000e946"], ["0x100603b9", "ret 8", "0x1000e949"]]}]]]}, {"address": "0x100603c0", "recomp": "0x1000e950", "name": "LegoAnimationManager::FUN_100603c0", "matching": 0.0, "stub": true}, {"address": "0x10060570", "recomp": "0x1000e960", "name": "LegoAnimationManager::FUN_10060570", "matching": 0.0, "stub": true}, {"address": "0x10060d00", "recomp": "0x1000e970", "name": "LegoAnimationManager::StartEntityAction", "matching": 0.9230769230769231, "diff": [["@@ -0x10060d63,33 +0x1000e9d3,33 @@", [{"both": [["0x10060d63", "je 0xb", "0x1000e9d3"], ["0x10060d65", "add ecx, 0x18", "0x1000e9d5"], ["0x10060d68", "inc eax", "0x1000e9d8"], ["0x10060d69", "cmp eax, 0x28", "0x1000e9d9"], ["0x10060d6c", "jl -0xd", "0x1000e9dc"], ["0x10060d6e", "jmp 0x27", "0x1000e9de"], ["0x10060d70", "lea eax, [eax + eax*2]", "0x1000e9e0"], ["0x10060d73", "mov ecx, dword ptr [edi + eax*8 + 0x40]", "0x1000e9e3"], ["0x10060d77", "lea eax, [ecx + ecx*2]", "0x1000e9e7"], ["0x10060d7a", "shl eax, 3", "0x1000e9ea"]]}, {"orig": [["0x10060d7d", "mov byte ptr [eax + 0x100f704f], 1"], ["0x10060d84", "movsx eax, byte ptr [eax + 0x100f704d]"]], "recomp": [["0x1000e9ed", "mov byte ptr [eax + 0x100c1627], 1"], ["0x1000e9f4", "movsx eax, byte ptr [eax + 0x100c1625]"]]}, {"both": [["0x10060d8b", "test eax, eax", "0x1000e9fb"], ["0x10060d8d", "jl 0x8", "0x1000e9fd"]]}, {"orig": [["0x10060d8f", "mov byte ptr [eax*8 + 0x100f6d25], 0"]], "recomp": [["0x1000e9ff", "mov byte ptr [eax*8 + 0x100b33c5], 0"]]}, {"both": [["0x10060d97", "call LegoOmni::GetInstance (FUNCTION)", "0x1000ea07"], ["0x10060d9c", "cmp byte ptr [eax + 0x13c], 0", "0x1000ea0c"], ["0x10060da3", "mov ecx, eax", "0x1000ea13"]]}, {"orig": [["0x10060da5", "je 0xe"]], "recomp": [["0x1000ea15", "mov eax, 0"], ["0x1000ea1a", "je 0xa"]]}, {"both": [["0x10060da7", "mov eax, dword ptr [esp + 0x14]", "0x1000ea1c"], ["0x10060dab", "mov ebx, dword ptr [ecx]", "0x1000ea20"], ["0x10060dad", "push eax", "0x1000ea22"], ["0x10060dae", "call dword ptr [ebx + 0x20]", "0x1000ea23"], ["0x10060db1", "test eax, eax", "0x1000ea26"], ["0x10060db3", "jne 0x2", "0x1000ea28"], ["0x10060db5", "xor esi, esi", "0x1000ea2a"], ["0x10060db7", "mov eax, esi", "0x1000ea2c"], ["0x10060db9", "pop ebp", "0x1000ea2e"], ["0x10060dba", "pop edi", "0x1000ea2f"], ["0x10060dbb", "pop esi", "0x1000ea30"], ["0x10060dbc", "pop ebx", "0x1000ea31"], ["0x10060dbd", "ret 8", "0x1000ea32"]]}, {"orig": [["0x10060dc0", "sub esp, 4"]], "recomp": []}]]]}, {"address": "0x10060dc0", "recomp": "0x1000ea40", "name": "LegoAnimationManager::FUN_10060dc0", "matching": 0.0, "stub": true}, {"address": "0x10061010", "recomp": "0x1000ea50", "name": "LegoAnimationManager::FUN_10061010", "matching": 0.0, "stub": true}, {"address": "0x100617c0", "recomp": "0x1000ea60", "name": "LegoAnimationManager::FUN_100617c0", "matching": 0.0, "stub": true}, {"address": "0x100619f0", "recomp": "0x1000ea70", "name": "LegoAnimationManager::Notify", "matching": 0.0, "stub": true}, {"address": "0x10061cc0", "recomp": "0x1000ea80", "name": "LegoAnimationManager::Tickle", "matching": 0.0, "stub": true}, {"address": "0x10062360", "recomp": "0x1000ea90", "name": "LegoAnimationManager::FUN_10062360", "matching": 0.0, "stub": true}, {"address": "0x100629b0", "recomp": "0x1000eaa0", "name": "LegoAnimationManager::FUN_100629b0", "matching": 0.0, "stub": true}, {"address": "0x10064670", "recomp": "0x1000eab0", "name": "LegoAnimationManager::FUN_10064670", "matching": 0.0, "stub": true}, {"address": "0x10064740", "recomp": "0x1000eac0", "name": "LegoAnimationManager::FUN_10064740", "matching": 0.0, "stub": true}, {"address": "0x10064ff0", "recomp": "0x1000d740", "name": "AnimState::AnimState", "matching": 1.0, "diff": []}, {"address": "0x10065070", "recomp": "0x1000d7c0", "name": "AnimState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10065080", "recomp": "0x1000d7d0", "name": "AnimState::IsA", "matching": 1.0, "diff": []}, {"address": "0x10065130", "recomp": "0x1000d880", "name": "AnimState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10065150", "recomp": "0x1000d8a0", "name": "AnimState::~AnimState", "matching": 0.0, "stub": true}, {"address": "0x100651d0", "recomp": "0x1000d8f0", "name": "AnimState::FUN_100651d0", "matching": 0.0, "stub": true}, {"address": "0x10065240", "recomp": "0x1000d900", "name": "AnimState::FUN_10065240", "matching": 0.0, "stub": true}, {"address": "0x100652d0", "recomp": "0x1000d910", "name": "AnimState::VTable0x1c", "matching": 0.0, "stub": true}, {"address": "0x100654f0", "recomp": "0x1000d920", "name": "AnimState::SetFlag", "matching": 0.0, "stub": true}, {"address": "0x10065550", "recomp": "0x10025b40", "name": "LegoMouseController::LegoMouseController", "matching": 1.0, "diff": []}, {"address": "0x100655b0", "recomp": "0x10025ba0", "name": "LegoMouseController::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100655d0", "recomp": "0x10025bc0", "name": "LegoMouseController::~LegoMouseController", "matching": 1.0, "diff": []}, {"address": "0x10065620", "recomp": "0x10025c10", "name": "LegoMouseController::LeftDown", "matching": 1.0, "diff": []}, {"address": "0x10065640", "recomp": "0x10025c30", "name": "LegoMouseController::LeftUp", "matching": 1.0, "diff": []}, {"address": "0x10065660", "recomp": "0x10025c50", "name": "LegoMouseController::LeftDrag", "matching": 1.0, "diff": []}, {"address": "0x10065680", "recomp": "0x10025c70", "name": "LegoMouseController::RightDown", "matching": 1.0, "diff": []}, {"address": "0x100656a0", "recomp": "0x10025c90", "name": "LegoMouseController::RightUp", "matching": 1.0, "diff": []}, {"address": "0x100656c0", "recomp": "0x10025cb0", "name": "LegoMouseController::RightDrag", "matching": 1.0, "diff": []}, {"address": "0x100656e0", "recomp": "0x10025cd0", "name": "LegoPointOfViewController::LegoPointOfViewController", "matching": 1.0, "diff": []}, {"address": "0x10065750", "recomp": "0x10025d40", "name": "LegoPointOfViewController::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10065770", "recomp": "0x10025d60", "name": "LegoPointOfViewController::~LegoPointOfViewController", "matching": 1.0, "diff": []}, {"address": "0x100657f0", "recomp": "0x10025de0", "name": "LegoPointOfViewController::Create", "matching": 1.0, "diff": []}, {"address": "0x100658a0", "recomp": "0x10025e90", "name": "LegoPointOfViewController::OnViewSize", "matching": 1.0, "diff": []}, {"address": "0x100658c0", "recomp": "0x10025eb0", "name": "LegoPointOfViewController::LeftDown", "matching": 1.0, "diff": []}, {"address": "0x100658e0", "recomp": "0x10025ed0", "name": "LegoPointOfViewController::LeftDrag", "matching": 1.0, "diff": []}, {"address": "0x10065900", "recomp": "0x10025ef0", "name": "LegoPointOfViewController::AffectPointOfView", "matching": 1.0, "diff": []}, {"address": "0x10065930", "recomp": "0x10025f20", "name": "LegoPointOfViewController::Tickle", "matching": 0.984251968503937, "diff": [["@@ -0x10065965,26 +0x10025f55,26 @@", [{"both": [["0x10065965", "lea edx, [esp + 0x40]", "0x10025f55"], ["0x10065969", "mov dword ptr [esp + 0x28], eax", "0x10025f59"], ["0x1006596d", "mov dword ptr [esp + 0x3c], edx", "0x10025f5d"], ["0x10065971", "mov eax, Mx3DPointFloat::`vftable' (VTABLE)", "0x10025f61"], ["0x10065976", "mov dword ptr [esp + 0x24], eax", "0x10025f66"], ["0x1006597a", "mov dword ptr [esp + 0x38], eax", "0x10025f6a"], ["0x1006597e", "mov eax, dword ptr [esi + 0x14]", "0x10025f6e"], ["0x10065981", "mov dword ptr [esp + 0x14], Vector3::`vftable' (VTABLE)", "0x10025f71"], ["0x10065989", "add eax, 0x30", "0x10025f79"], ["0x1006598c", "push 0", "0x10025f7c"]]}, {"orig": [["0x1006598e", "lea edx, [esp + 0x28]"]], "recomp": [["0x10025f7e", "lea edx, [esp + 0x3c]"]]}, {"both": [["0x10065992", "mov dword ptr [esp + 0x1c], eax", "0x10025f82"], ["0x10065996", "mov eax, dword ptr [esi + 0x14]", "0x10025f86"], ["0x10065999", "push edx", "0x10025f89"], ["0x1006599a", "add eax, 0x20", "0x10025f8a"]]}, {"orig": [["0x1006599d", "lea ebx, [esp + 0x40]"]], "recomp": [["0x10025f8d", "lea ebx, [esp + 0x2c]"]]}, {"both": [["0x100659a1", "lea edx, [esp + 0x1c]", "0x10025f91"], ["0x100659a5", "push ebx", "0x10025f95"], ["0x100659a6", "mov dword ptr [esp + 0x18], Vector3::`vftable' (VTABLE)", "0x10025f96"], ["0x100659ae", "mov dword ptr [esp + 0x1c], eax", "0x10025f9e"], ["0x100659b2", "lea eax, [esp + 0x18]", "0x10025fa2"], ["0x100659b6", "push eax", "0x10025fa6"], ["0x100659b7", "push edx", "0x10025fa7"], ["0x100659b8", "call LegoNavController::CalculateNewPosDir (FUNCTION)", "0x10025fa8"], ["0x100659bd", "test al, al", "0x10025fad"], ["0x100659bf", "je 0xa8", "0x10025faf"]]}]]]}, {"address": "0x10065ae0", "recomp": "0x100260d0", "name": "LegoPointOfViewController::SetEntity", "matching": 1.0, "diff": []}, {"address": "0x10065bf0", "recomp": "0x1001c2b0", "name": "LegoTextureInfo::LegoTextureInfo", "matching": 1.0, "diff": []}, {"address": "0x10065c00", "recomp": "0x1001c2c0", "name": "LegoTextureInfo::~LegoTextureInfo", "matching": 1.0, "diff": []}, {"address": "0x10065c60", "recomp": "0x1001c320", "name": "LegoTextureInfo::Create", "matching": 0.9278752436647173, "diff": [["@@ -0x10065c97,24 +0x1001c357,24 @@", [{"both": [["0x10065c97", "test edi, edi", "0x1001c357"], ["0x10065c99", "je 0xc", "0x1001c359"], ["0x10065c9b", "mov ecx, edi", "0x1001c35b"], ["0x10065c9d", "call LegoTextureInfo::LegoTextureInfo (FUNCTION)", "0x1001c35d"], ["0x10065ca2", "mov dword ptr [ebp - 0x10], eax", "0x1001c362"], ["0x10065ca5", "jmp 0x7", "0x1001c365"], ["0x10065ca7", "mov dword ptr [ebp - 0x10], 0", "0x1001c367"], ["0x10065cae", "mov dword ptr [ebp - 4], 0xffffffff", "0x1001c36e"], ["0x10065cb5", "mov esi, dword ptr [ebp + 8]", "0x1001c375"], ["0x10065cb8", "test esi, esi", "0x1001c378"]]}, {"orig": [["0x10065cba", "je 0x25c"]], "recomp": [["0x1001c37a", "je 0x25b"]]}, {"both": [["0x10065cc0", "mov ebx, dword ptr [ebp + 0xc]", "0x1001c380"], ["0x10065cc3", "test ebx, ebx", "0x1001c383"]]}, {"orig": [["0x10065cc5", "je 0x251"]], "recomp": [["0x1001c385", "je 0x250"]]}, {"both": [["0x10065ccb", "test esi, esi", "0x1001c38b"], ["0x10065ccd", "je 0x3c", "0x1001c38d"], ["0x10065ccf", "mov edi, esi", "0x1001c38f"], ["0x10065cd1", "mov ecx, 0xffffffff", "0x1001c391"], ["0x10065cd6", "sub eax, eax", "0x1001c396"], ["0x10065cd8", "repne scasb al, byte ptr es:[edi]", "0x1001c398"], ["0x10065cda", "not ecx", "0x1001c39a"], ["0x10065cdc", "push ecx", "0x1001c39c"], ["0x10065cdd", "mov edi, esi", "0x1001c39d"], ["0x10065cdf", "call ??2@YAPAXI@Z (FUNCTION)", "0x1001c39f"]]}]], ["@@ -0x10065d6f,39 +0x1001c42f,39 @@", [{"both": [["0x10065d6f", "add ecx, 4", "0x1001c42f"], ["0x10065d72", "mov dword ptr [ebp - 0x1c], eax", "0x1001c432"], ["0x10065d75", "push ecx", "0x1001c435"], ["0x10065d76", "lea eax, [ebp - 0x88]", "0x1001c436"], ["0x10065d7c", "push eax", "0x1001c43c"], ["0x10065d7d", "mov esi, dword ptr [ebp - 0x1c]", "0x1001c43d"], ["0x10065d80", "push edx", "0x1001c440"], ["0x10065d81", "mov dword ptr [ebp - 0x14], ecx", "0x1001c441"], ["0x10065d84", "call dword ptr [esi + 0x18]", "0x1001c444"], ["0x10065d87", "test eax, eax", "0x1001c447"]]}, {"orig": [["0x10065d89", "jne 0x126"]], "recomp": [["0x1001c449", "jne 0x125"]]}, {"both": [["0x10065d8f", "mov esi, dword ptr [ebx + 0x30c]", "0x1001c44f"], ["0x10065d95", "lea edi, [ebp - 0x88]", "0x1001c455"], ["0x10065d9b", "xor eax, eax", "0x1001c45b"], ["0x10065d9d", "mov ecx, 0x1b", "0x1001c45d"], ["0x10065da2", "rep stosd dword ptr es:[edi], eax", "0x1001c462"], ["0x10065da4", "mov eax, dword ptr [ebp - 0x14]", "0x1001c464"], ["0x10065da7", "push 0", "0x1001c467"], ["0x10065da9", "push 0", "0x1001c469"], ["0x10065dab", "lea ecx, [ebp - 0x88]", "0x1001c46b"], ["0x10065db1", "mov dword ptr [ebp - 0x88], 0x6c", "0x1001c471"], ["0x10065dbb", "mov eax, dword ptr [eax]", "0x1001c47b"], ["0x10065dbd", "push ecx", "0x1001c47d"], ["0x10065dbe", "mov edi, dword ptr [eax]", "0x1001c47e"], ["0x10065dc0", "push 0", "0x1001c480"], ["0x10065dc2", "push eax", "0x1001c482"], ["0x10065dc3", "call dword ptr [edi + 0x64]", "0x1001c483"], ["0x10065dc6", "test eax, eax", "0x1001c486"]]}, {"orig": [["0x10065dc8", "jne 0xe7"]], "recomp": [["0x1001c488", "jne 0xe6"]]}, {"both": [["0x10065dce", "mov edx, dword ptr [ebp - 0x64]", "0x1001c48e"], ["0x10065dd1", "mov eax, dword ptr [ebp - 0x78]", "0x1001c491"], ["0x10065dd4", "cmp dword ptr [ebp - 0x7c], eax", "0x1001c494"], ["0x10065dd7", "jne 0x19", "0x1001c497"], ["0x10065dd9", "mov eax, dword ptr [ebp - 0x80]", "0x1001c499"], ["0x10065ddc", "mov edi, edx", "0x1001c49c"], ["0x10065dde", "imul eax, dword ptr [ebp - 0x7c]", "0x1001c49e"], ["0x10065de2", "mov ecx, eax", "0x1001c4a2"], ["0x10065de4", "shr ecx, 2", "0x1001c4a4"], ["0x10065de7", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1001c4a7"]]}]], ["@@ -0x10065e0c,40 +0x1001c4cc,40 @@", [{"both": [["0x10065e0c", "mov ecx, dword ptr [ebp - 0x64]", "0x1001c4cc"], ["0x10065e0f", "push ecx", "0x1001c4cf"], ["0x10065e10", "lea edi, [ebp - 0x488]", "0x1001c4d0"], ["0x10065e16", "mov eax, dword ptr [eax]", "0x1001c4d6"], ["0x10065e18", "push eax", "0x1001c4d8"], ["0x10065e19", "mov esi, dword ptr [eax]", "0x1001c4d9"], ["0x10065e1b", "call dword ptr [esi + 0x80]", "0x1001c4db"], ["0x10065e21", "xor eax, eax", "0x1001c4e1"], ["0x10065e23", "mov ecx, 0x100", "0x1001c4e3"], ["0x10065e28", "rep stosd dword ptr es:[edi], eax", "0x1001c4e8"]]}, {"orig": [["0x10065e2a", "xor ecx, ecx"], ["0x10065e2c", "lea esi, [ebp - 0x485]"], ["0x10065e32", "cmp ecx, 0x300"]], "recomp": [["0x1001c4ea", "xor esi, esi"], ["0x1001c4ec", "lea ecx, [ebp - 0x485]"], ["0x1001c4f2", "cmp eax, 0x300"]]}, {"both": [["0x10065e38", "jge 0x2b", "0x1001c4f7"]]}, {"orig": [["0x10065e3a", "cmp dword ptr [ebx + 8], eax"]], "recomp": [["0x1001c4f9", "cmp dword ptr [ebx + 8], esi"]]}, {"both": [["0x10065e3d", "jbe 0x1a", "0x1001c4fc"]]}, {"orig": [["0x10065e3f", "lea edi, [ecx + ebx]"], ["0x10065e42", "mov byte ptr [esi], 0"]], "recomp": [["0x1001c4fe", "lea edi, [ebx + eax]"], ["0x1001c501", "mov byte ptr [ecx], 0"]]}, {"both": [["0x10065e45", "mov dl, byte ptr [edi + 0xc]", "0x1001c504"]]}, {"orig": [["0x10065e48", "mov byte ptr [esi - 3], dl"]], "recomp": [["0x1001c507", "mov byte ptr [ecx - 3], dl"]]}, {"both": [["0x10065e4b", "mov dl, byte ptr [edi + 0xd]", "0x1001c50a"]]}, {"orig": [["0x10065e4e", "mov byte ptr [esi - 2], dl"]], "recomp": [["0x1001c50d", "mov byte ptr [ecx - 2], dl"]]}, {"both": [["0x10065e51", "mov dl, byte ptr [edi + 0xe]", "0x1001c510"]]}, {"orig": [["0x10065e54", "mov byte ptr [esi - 1], dl"]], "recomp": [["0x1001c513", "mov byte ptr [ecx - 1], dl"]]}, {"both": [["0x10065e57", "jmp 0x3", "0x1001c516"]]}, {"orig": [["0x10065e59", "mov byte ptr [esi], 0x80"], ["0x10065e5c", "add esi, 4"], ["0x10065e5f", "add ecx, 3"], ["0x10065e62", "inc eax"], ["0x10065e63", "jmp -0x33"]], "recomp": [["0x1001c518", "mov byte ptr [ecx], 0x80"], ["0x1001c51b", "add ecx, 4"], ["0x1001c51e", "add eax, 3"], ["0x1001c521", "inc esi"], ["0x1001c522", "jmp -0x32"]]}, {"both": [["0x10065e65", "mov esi, dword ptr [ebp - 0x10]", "0x1001c524"], ["0x10065e68", "push 0", "0x1001c527"], ["0x10065e6a", "add esi, 8", "0x1001c529"], ["0x10065e6d", "lea eax, [ebp - 0x488]", "0x1001c52c"], ["0x10065e73", "push esi", "0x1001c532"], ["0x10065e74", "mov ecx, dword ptr [ebp - 0x18]", "0x1001c533"], ["0x10065e77", "push eax", "0x1001c536"], ["0x10065e78", "mov ebx, dword ptr [ebp - 0x1c]", "0x1001c537"], ["0x10065e7b", "push 0x44", "0x1001c53a"], ["0x10065e7d", "push ecx", "0x1001c53c"]]}]], ["@@ -0x10065f37,10 +0x1001c5f6,11 @@", [{"both": [["0x10065f37", "push eax", "0x1001c5f6"], ["0x10065f38", "call dword ptr [ebx + 0x18]", "0x1001c5f7"], ["0x10065f3b", "mov eax, dword ptr [ebp - 0x10]", "0x1001c5fa"], ["0x10065f3e", "jmp -0x22", "0x1001c5fd"], ["0x10065f40", "mov eax, <OFFSET7>", "0x1001c5ff"], ["0x10065f45", "jmp ___CxxFrameHandler (FUNCTION)", "0x1001c604"], ["0x10065f4a", "mov eax, dword ptr [ebp - 0x14]", "0x1001c609"], ["0x10065f4d", "push eax", "0x1001c60c"], ["0x10065f4e", "call ??3@YAXPAX@Z (FUNCTION)", "0x1001c60d"], ["0x10065f53", "add esp, 4", "0x1001c612"]]}, {"orig": [], "recomp": [["0x1001c615", "ret "]]}]]]}, {"address": "0x10065f60", "recomp": "0x1001c620", "name": "LegoTextureInfo::SetGroupTexture", "matching": 0.0, "stub": true}, {"address": "0x10066010", "recomp": "0x1001c650", "name": "LegoTextureInfo::FUN_10066010", "matching": 0.0, "stub": true}, {"address": "0x10066100", "recomp": "0x10005040", "name": "Doors::VTable0x94", "matching": 0.0, "stub": true}, {"address": "0x10066250", "recomp": "0x10005050", "name": "Doors::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x100664e0", "recomp": "0x10005060", "name": "Doors::ParseAction", "matching": 0.0, "stub": true}, {"address": "0x100665b0", "recomp": "0x1002b450", "name": "LegoWorldPresenter::configureLegoWorldPresenter", "matching": 1.0, "diff": []}, {"address": "0x100665c0", "recomp": "0x1002b460", "name": "LegoWorldPresenter::LegoWorldPresenter", "matching": 1.0, "diff": []}, {"address": "0x10066630", "recomp": "0x1002b4d0", "name": "LegoWorldPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10066640", "recomp": "0x1002b4e0", "name": "LegoWorldPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x10066750", "recomp": "0x1002b5f0", "name": "LegoWorldPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10066770", "recomp": "0x1002b610", "name": "LegoWorldPresenter::~LegoWorldPresenter", "matching": 1.0, "diff": []}, {"address": "0x10066870", "recomp": "0x1002b710", "name": "LegoWorldPresenter::StartAction", "matching": 1.0, "diff": []}, {"address": "0x10066a50", "recomp": "0x1002b8f0", "name": "LegoWorldPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x10066ac0", "recomp": "0x1002b960", "name": "LegoWorldPresenter::StartingTickle", "matching": 1.0, "diff": []}, {"address": "0x10066b40", "recomp": "0x1002b9e0", "name": "LegoWorldPresenter::LoadWorld", "matching": 1.0, "effective": true, "diff": [["@@ -0x10066cf7,37 +0x1002bb97,37 @@", [{"both": [["0x10066cf7", "call _fopen (FUNCTION)", "0x1002bb97"], ["0x10066cfc", "add esp, 8", "0x1002bb9c"], ["0x10066cff", "mov dword ptr [ebp - 0x14], eax", "0x1002bb9f"], ["0x10066d02", "test eax, eax", "0x1002bba2"], ["0x10066d04", "je -0x3a", "0x1002bba4"], ["0x10066d06", "lea eax, [ebp - 0x24]", "0x1002bba6"], ["0x10066d09", "lea ecx, [ebp - 0x10]", "0x1002bba9"], ["0x10066d0c", "push eax", "0x1002bbac"], ["0x10066d0d", "mov edx, dword ptr [ebp - 0x14]", "0x1002bbad"], ["0x10066d10", "push ecx", "0x1002bbb0"]]}, {"orig": [["0x10066d11", "xor edi, edi"]], "recomp": [["0x1002bbb1", "xor esi, esi"]]}, {"both": [["0x10066d13", "push edx", "0x1002bbb3"], ["0x10066d14", "call ReadModelDbWorlds (FUNCTION)", "0x1002bbb4"], ["0x10066d19", "add esp, 0xc", "0x1002bbb9"]]}, {"orig": [["0x10066d1c", "mov dword ptr [ebp - 0x18], edi"], ["0x10066d1f", "cmp dword ptr [ebp - 0x24], edi"]], "recomp": [["0x1002bbbc", "mov dword ptr [ebp - 0x18], esi"], ["0x1002bbbf", "cmp dword ptr [ebp - 0x24], esi"]]}, {"both": [["0x10066d22", "jle 0x25", "0x1002bbc2"]]}, {"orig": [["0x10066d24", "mov esi, dword ptr [ebp + 8]"], ["0x10066d27", "push esi"], ["0x10066d28", "mov eax, dword ptr [ebp - 0x10]"], ["0x10066d2b", "mov ecx, dword ptr [eax + edi]"]], "recomp": [["0x1002bbc4", "mov edi, dword ptr [ebp + 8]"], ["0x1002bbc7", "push edi"], ["0x1002bbc8", "mov eax, dword ptr [ebp - 0x10]"], ["0x1002bbcb", "mov ecx, dword ptr [eax + esi]"]]}, {"both": [["0x10066d2e", "push ecx", "0x1002bbce"], ["0x10066d2f", "call __strcmpi (FUNCTION)", "0x1002bbcf"], ["0x10066d34", "add esp, 8", "0x1002bbd4"], ["0x10066d37", "test eax, eax", "0x1002bbd7"], ["0x10066d39", "je 0xe", "0x1002bbd9"]]}, {"orig": [["0x10066d3b", "add edi, 0x18"]], "recomp": [["0x1002bbdb", "add esi, 0x18"]]}, {"both": [["0x10066d3e", "inc dword ptr [ebp - 0x18]", "0x1002bbde"], ["0x10066d41", "mov eax, dword ptr [ebp - 0x18]", "0x1002bbe1"], ["0x10066d44", "cmp eax, dword ptr [ebp - 0x24]", "0x1002bbe4"], ["0x10066d47", "jl -0x22", "0x1002bbe7"], ["0x10066d49", "mov eax, dword ptr [ebp - 0x18]", "0x1002bbe9"], ["0x10066d4c", "cmp eax, dword ptr [ebp - 0x24]", "0x1002bbec"], ["0x10066d4f", "je -0x89", "0x1002bbef"], ["0x10066d55", "cmp dword ptr [g_wdbOffset (DATA)], 0", "0x1002bbf5"], ["0x10066d5c", "jne 0x2fa", "0x1002bbfc"], ["0x10066d62", "mov eax, dword ptr [ebp - 0x14]", "0x1002bc02"]]}]]]}, {"address": "0x10067300", "recomp": "0x1002c1a0", "name": "LegoPartPresenter::~LegoPartPresenter", "matching": 1.0, "diff": []}, {"address": "0x10067360", "recomp": "0x1002c380", "name": "LegoWorldPresenter::FUN_10067360", "matching": 1.0, "diff": []}, {"address": "0x100674b0", "recomp": "0x1002c4d0", "name": "LegoWorldPresenter::FUN_100674b0", "matching": 0.9446064139941691, "diff": [["@@ -0x10067525,67 +0x1002c545,67 @@", [{"both": [["0x10067525", "pop esi", "0x1002c545"], ["0x10067526", "pop ebx", "0x1002c546"], ["0x10067527", "mov esp, ebp", "0x1002c547"], ["0x10067529", "pop ebp", "0x1002c549"], ["0x1006752a", "ret 0xc", "0x1002c54a"], ["0x1006752d", "lea ecx, [ebp - 0x5c]", "0x1002c54d"], ["0x10067530", "call MxDSChunk::MxDSChunk (FUNCTION)", "0x1002c550"], ["0x10067535", "mov eax, dword ptr [ebp + 8]", "0x1002c555"], ["0x10067538", "mov dword ptr [ebp - 4], 0", "0x1002c558"], ["0x1006753f", "mov ecx, dword ptr [eax + 4]", "0x1002c55f"]]}, {"orig": [], "recomp": [["0x1002c562", "mov eax, dword ptr [ebp - 0x3c]"], ["0x1002c565", "mov ebx, 2"]]}, {"both": [["0x10067542", "mov dword ptr [ebp - 0x48], ecx", "0x1002c56a"], ["0x10067545", "lea ecx, [ebp - 0x1ac]", "0x1002c56d"]]}, {"orig": [["0x1006754b", "mov eax, dword ptr [ebp - 0x3c]"], ["0x1006754e", "mov ebx, 2"]], "recomp": []}, {"both": [["0x10067553", "mov dword ptr [ebp - 0x44], eax", "0x1002c573"], ["0x10067556", "call MxDSAction::MxDSAction (FUNCTION)", "0x1002c576"], ["0x1006755b", "mov byte ptr [ebp - 4], 1", "0x1002c57b"], ["0x1006755f", "mov eax, dword ptr [ebp + 8]", "0x1002c57f"], ["0x10067562", "mov edi, Vector3::`vftable' (VTABLE)", "0x1002c582"], ["0x10067567", "add eax, 0x10", "0x1002c587"], ["0x1006756a", "lea ecx, [ebp - 0x14]", "0x1002c58a"], ["0x1006756d", "push ecx", "0x1002c58d"], ["0x1006756e", "mov byte ptr [ebp - 4], bl", "0x1002c58e"], ["0x10067571", "mov dword ptr [ebp - 0x40], 0", "0x1002c591"], ["0x10067578", "lea ecx, [ebp - 0x16c]", "0x1002c598"], ["0x1006757e", "mov dword ptr [ebp - 0x18], eax", "0x1002c59e"], ["0x10067581", "mov dword ptr [ebp - 0x10], eax", "0x1002c5a1"]]}, {"orig": [], "recomp": [["0x1002c5a4", "mov eax, dword ptr [ebp - 0x16c]"]]}, {"both": [["0x10067584", "mov dword ptr [ebp - 0x14], edi", "0x1002c5aa"]]}, {"orig": [["0x10067587", "mov eax, dword ptr [ebp - 0x16c]"]], "recomp": []}, {"both": [["0x1006758d", "call dword ptr [eax + 0x88]", "0x1002c5ad"], ["0x10067593", "mov edx, dword ptr [ebp + 8]", "0x1002c5b3"], ["0x10067596", "lea eax, [ebp - 0x14]", "0x1002c5b6"], ["0x10067599", "add edx, 0x1c", "0x1002c5b9"], ["0x1006759c", "push eax", "0x1002c5bc"], ["0x1006759d", "lea ecx, [ebp - 0x158]", "0x1002c5bd"]]}, {"orig": [], "recomp": [["0x1002c5c3", "mov eax, dword ptr [ebp - 0x158]"]]}, {"both": [["0x100675a3", "mov dword ptr [ebp - 0x2c], edx", "0x1002c5c9"], ["0x100675a6", "mov dword ptr [ebp - 0x10], edx", "0x1002c5cc"], ["0x100675a9", "mov dword ptr [ebp - 0x14], edi", "0x1002c5cf"]]}, {"orig": [["0x100675ac", "mov eax, dword ptr [ebp - 0x158]"]], "recomp": []}, {"both": [["0x100675b2", "call dword ptr [eax + 0x88]", "0x1002c5d2"], ["0x100675b8", "mov eax, dword ptr [ebp + 8]", "0x1002c5d8"], ["0x100675bb", "lea ecx, [ebp - 0x144]", "0x1002c5db"], ["0x100675c1", "add eax, 0x28", "0x1002c5e1"], ["0x100675c4", "mov dword ptr [ebp - 0x34], eax", "0x1002c5e4"], ["0x100675c7", "mov dword ptr [ebp - 0x10], eax", "0x1002c5e7"]]}, {"orig": [], "recomp": [["0x1002c5ea", "mov eax, dword ptr [ebp - 0x144]"]]}, {"both": [["0x100675ca", "mov dword ptr [ebp - 0x14], edi", "0x1002c5f0"], ["0x100675cd", "lea edi, [ebp - 0x14]", "0x1002c5f3"], ["0x100675d0", "push edi", "0x1002c5f6"]]}, {"orig": [["0x100675d1", "mov eax, dword ptr [ebp - 0x144]"]], "recomp": []}, {"both": [["0x100675d7", "call dword ptr [eax + 0x88]", "0x1002c5f7"], ["0x100675dd", "mov eax, dword ptr [esi + 0x50]", "0x1002c5fd"]]}, {"orig": [], "recomp": [["0x1002c600", "mov edx, dword ptr [ebp - 0x40]"]]}, {"both": [["0x100675e0", "mov byte ptr [ebp - 4], 3", "0x1002c603"], ["0x100675e4", "lea ecx, [eax + 1]", "0x1002c607"]]}, {"orig": [], "recomp": [["0x1002c60a", "mov dword ptr [ebp - 0x190], eax"]]}, {"both": [["0x100675e7", "mov dword ptr [esi + 0x50], ecx", "0x1002c610"], ["0x100675ea", "lea ecx, [ebp - 0x18c]", "0x1002c613"]]}, {"orig": [["0x100675f0", "mov dword ptr [ebp - 0x190], eax"], ["0x100675f6", "mov edx, dword ptr [ebp - 0x40]"]], "recomp": []}, {"both": [["0x100675f9", "mov dword ptr [ebp - 0x10], edx", "0x1002c619"], ["0x100675fc", "lea edx, [ebp - 0x10]", "0x1002c61c"], ["0x100675ff", "push edx", "0x1002c61f"], ["0x10067600", "call MxAtomId::operator= (FUNCTION)", "0x1002c620"], ["0x10067605", "mov byte ptr [ebp - 4], bl", "0x1002c625"], ["0x10067608", "call <OFFSET9>", "0x1002c628"], ["0x1006760d", "mov dword ptr [ebp - 0x10], 0", "0x1002c62d"], ["0x10067614", "mov eax, dword ptr [ebp + 8]", "0x1002c634"], ["0x10067617", "mov eax, dword ptr [eax + 0xc]", "0x1002c637"], ["0x1006761a", "mov ecx, 'LegoActorPresenter' (STRING)", "0x1002c63a"]]}]], ["@@ -0x10067712,77 +0x1002c732,77 @@", [{"both": [["0x10067712", "mov byte ptr [ebp - 4], 9", "0x1002c732"], ["0x10067716", "mov dword ptr [ebp - 0xc8], MxMediaPresenter::`vftable' (VTABLE)", "0x1002c736"], ["0x10067720", "lea ecx, [ebp - 0xc8]", "0x1002c740"], ["0x10067726", "call MxMediaPresenter::Init (FUNCTION)", "0x1002c746"], ["0x1006772b", "lea ecx, [ebp - 0xc8]", "0x1002c74b"], ["0x10067731", "xor ebx, ebx", "0x1002c751"], ["0x10067733", "mov byte ptr [ebp - 4], 0xa", "0x1002c753"], ["0x10067737", "mov dword ptr [ebp - 0xc8], MxVideoPresenter::`vftable' (VTABLE)", "0x1002c757"], ["0x10067741", "call MxVideoPresenter::Init (FUNCTION)", "0x1002c761"], ["0x10067746", "mov byte ptr [ebp - 4], 0xb", "0x1002c766"]]}, {"orig": [], "recomp": [["0x1002c76a", "mov dword ptr [ebp - 0xc8], LegoModelPresenter::`vftable' (VTABLE)"], ["0x1002c774", "mov byte ptr [ebp - 4], 0xc"]]}, {"both": [["0x1006774a", "mov dword ptr [ebp - 0x64], ebx", "0x1002c778"], ["0x1006774d", "mov byte ptr [ebp - 0x60], bl", "0x1002c77b"]]}, {"orig": [["0x10067750", "mov dword ptr [ebp - 0xc8], LegoModelPresenter::`vftable' (VTABLE)"], ["0x1006775a", "mov byte ptr [ebp - 4], 0xc"]], "recomp": []}, {"both": [["0x1006775e", "cmp dword ptr [ebp - 0x10], ebx", "0x1002c77e"], ["0x10067761", "je 0x94", "0x1002c781"], ["0x10067767", "lea eax, [ebp - 0x20]", "0x1002c787"], ["0x1006776a", "lea ecx, [ebp - 0x28]", "0x1002c78a"], ["0x1006776d", "push eax", "0x1002c78d"], ["0x1006776e", "mov esi, Mx3DPointFloat::`vftable' (VTABLE)", "0x1002c78e"], ["0x10067773", "call Vector2::Vector2 (FUNCTION)", "0x1002c793"], ["0x10067778", "lea eax, [ebp - 0x28]", "0x1002c798"], ["0x1006777b", "lea ecx, [ebp - 0x16c]", "0x1002c79b"], ["0x10067781", "push eax", "0x1002c7a1"]]}, {"orig": [], "recomp": [["0x1002c7a2", "mov edi, dword ptr [ebp - 0x16c]"]]}, {"both": [["0x10067782", "mov dword ptr [ebp - 0x28], esi", "0x1002c7a8"], ["0x10067785", "mov dword ptr [ebp - 0x20], ebx", "0x1002c7ab"], ["0x10067788", "mov dword ptr [ebp - 0x1c], ebx", "0x1002c7ae"], ["0x1006778b", "mov dword ptr [ebp - 0x18], ebx", "0x1002c7b1"]]}, {"orig": [["0x1006778e", "mov edi, dword ptr [ebp - 0x16c]"]], "recomp": []}, {"both": [["0x10067794", "call dword ptr [edi + 0x88]", "0x1002c7b4"], ["0x1006779a", "lea ecx, [ebp - 0x20]", "0x1002c7ba"], ["0x1006779d", "mov edi, 0x3f800000", "0x1002c7bd"], ["0x100677a2", "push ecx", "0x1002c7c2"], ["0x100677a3", "lea ecx, [ebp - 0x28]", "0x1002c7c3"], ["0x100677a6", "call Vector2::Vector2 (FUNCTION)", "0x1002c7c6"], ["0x100677ab", "lea eax, [ebp - 0x28]", "0x1002c7cb"]]}, {"orig": [["0x100677ae", "lea ecx, [ebp - 0x158]"]], "recomp": [["0x1002c7ce", "lea ecx, [ebp - 0x144]"]]}, {"both": [["0x100677b4", "push eax", "0x1002c7d4"], ["0x100677b5", "mov dword ptr [ebp - 0x28], esi", "0x1002c7d5"]]}, {"orig": [], "recomp": [["0x1002c7d8", "mov eax, dword ptr [ebp - 0x144]"]]}, {"both": [["0x100677b8", "mov dword ptr [ebp - 0x20], ebx", "0x1002c7de"], ["0x100677bb", "mov dword ptr [ebp - 0x1c], ebx", "0x1002c7e1"], ["0x100677be", "mov dword ptr [ebp - 0x18], edi", "0x1002c7e4"]]}, {"orig": [["0x100677c1", "mov eax, dword ptr [ebp - 0x158]"]], "recomp": []}, {"both": [["0x100677c7", "call dword ptr [eax + 0x88]", "0x1002c7e7"], ["0x100677cd", "lea ecx, [ebp - 0x20]", "0x1002c7ed"], ["0x100677d0", "push ecx", "0x1002c7f0"], ["0x100677d1", "lea ecx, [ebp - 0x28]", "0x1002c7f1"], ["0x100677d4", "call Vector2::Vector2 (FUNCTION)", "0x1002c7f4"]]}, {"orig": [["0x100677d9", "lea ecx, [ebp - 0x144]"]], "recomp": [["0x1002c7f9", "lea ecx, [ebp - 0x158]"]]}, {"both": [["0x100677df", "mov dword ptr [ebp - 0x28], esi", "0x1002c7ff"], ["0x100677e2", "lea esi, [ebp - 0x28]", "0x1002c802"], ["0x100677e5", "mov dword ptr [ebp - 0x20], ebx", "0x1002c805"], ["0x100677e8", "push esi", "0x1002c808"], ["0x100677e9", "mov dword ptr [ebp - 0x1c], edi", "0x1002c809"], ["0x100677ec", "mov dword ptr [ebp - 0x18], ebx", "0x1002c80c"]]}, {"orig": [["0x100677ef", "mov ebx, dword ptr [ebp - 0x144]"]], "recomp": [["0x1002c80f", "mov ebx, dword ptr [ebp - 0x158]"]]}, {"both": [["0x100677f5", "call dword ptr [ebx + 0x88]", "0x1002c815"], ["0x100677fb", "lea eax, [ebp - 0x1ac]", "0x1002c81b"]]}, {"orig": [], "recomp": [["0x1002c821", "mov ecx, dword ptr [ebp + 0x10]"], ["0x1002c824", "push ecx"]]}, {"both": [["0x10067801", "mov edx, dword ptr [ebp + 8]", "0x1002c825"], ["0x10067804", "mov dword ptr [ebp - 0xac], eax", "0x1002c828"], ["0x1006780a", "mov al, byte ptr [edx + 0x34]", "0x1002c82e"]]}, {"orig": [["0x1006780d", "mov ecx, dword ptr [ebp + 0x10]"]], "recomp": [["0x1002c831", "push eax"], ["0x1002c832", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1002c835", "push ecx"]]}, {"both": [["0x10067810", "lea edx, [ebp - 0x5c]", "0x1002c836"]]}, {"orig": [["0x10067813", "push ecx"], ["0x10067814", "push eax"], ["0x10067815", "mov ecx, dword ptr [ebp - 0x10]"], ["0x10067818", "push ecx"]], "recomp": []}, {"both": [["0x10067819", "push edx", "0x1002c839"], ["0x1006781a", "lea ecx, [ebp - 0xc8]", "0x1002c83a"], ["0x10067820", "call LegoModelPresenter::FUN_1007ff70 (FUNCTION)", "0x1002c840"], ["0x10067825", "mov ecx, dword ptr [ebp - 0x3c]", "0x1002c845"], ["0x10067828", "push ecx", "0x1002c848"], ["0x10067829", "call ??3@YAXPAX@Z (FUNCTION)", "0x1002c849"], ["0x1006782e", "mov byte ptr [ebp - 4], 2", "0x1002c84e"], ["0x10067832", "add esp, 4", "0x1002c852"], ["0x10067835", "call <OFFSET30>", "0x1002c855"], ["0x1006783a", "mov byte ptr [ebp - 4], 1", "0x1002c85a"]]}]]]}, {"address": "0x100679c0", "recomp": "0x1002c9e0", "name": "LegoActorPresenter::~LegoActorPresenter", "matching": 1.0, "diff": []}, {"address": "0x10067a10", "recomp": "0x1002ca30", "name": "LegoModelPresenter::~LegoModelPresenter", "matching": 1.0, "diff": []}, {"address": "0x10067a70", "recomp": "0x1002ca90", "name": "LegoWorldPresenter::VTable0x60", "matching": 1.0, "diff": []}, {"address": "0x10067b00", "recomp": "0x1002cb20", "name": "LegoWorldPresenter::ParseExtra", "matching": 1.0, "diff": []}, {"address": "0x10067bb0", "recomp": "0x10005070", "name": "DuneBuggy::DuneBuggy", "matching": 1.0, "diff": []}, {"address": "0x10067c30", "recomp": "0x100050f0", "name": "DuneBuggy::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10067c40", "recomp": "0x10005100", "name": "DuneBuggy::IsA", "matching": 1.0, "diff": []}, {"address": "0x10067dc0", "recomp": "0x10005280", "name": "DuneBuggy::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10067e30", "recomp": "0x100052f0", "name": "DuneBuggy::Create", "matching": 0.0, "stub": true}, {"address": "0x10067ec0", "recomp": "0x10005300", "name": "DuneBuggy::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x10067fa0", "recomp": "0x10005310", "name": "DuneBuggy::VTable0xe4", "matching": 0.0, "stub": true}, {"address": "0x10068060", "recomp": "0x10005320", "name": "DuneBuggy::VTable0xcc", "matching": 0.0, "stub": true}, {"address": "0x100681b0", "recomp": "0x10005330", "name": "DuneBuggy::VTable0xd4", "matching": 0.0, "stub": true}, {"address": "0x10068270", "recomp": "0x10005340", "name": "DuneBuggy::VTable0xdc", "matching": 0.0, "stub": true}, {"address": "0x10068350", "recomp": "0x10005350", "name": "DuneBuggy::FUN_10068350", "matching": 0.0, "stub": true}, {"address": "0x10068420", "recomp": "0x100364e0", "name": "LegoAnimPresenter::LegoAnimPresenter", "matching": 1.0, "diff": []}, {"address": "0x10068530", "recomp": "0x100365f0", "name": "LegoAnimPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10068540", "recomp": "0x10036600", "name": "LegoAnimPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x10068650", "recomp": "0x10036710", "name": "LegoAnimPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10068670", "recomp": "0x10036730", "name": "LegoAnimPresenter::~LegoAnimPresenter", "matching": 1.0, "diff": []}, {"address": "0x100686f0", "recomp": "0x100367b0", "name": "LegoAnimPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x10068770", "recomp": "0x10036830", "name": "LegoAnimPresenter::Destroy", "matching": 0.0, "stub": true}, {"address": "0x10068fb0", "recomp": "0x10036840", "name": "LegoAnimPresenter::CreateAnim", "matching": 1.0, "diff": []}, {"address": "0x10069150", "recomp": "0x10036a80", "name": "LegoAnimPresenter::FUN_10069150", "matching": 1.0, "diff": []}, {"address": "0x100692b0", "recomp": "0x10036be0", "name": "LegoAnimPresenter::FUN_100692b0", "matching": 0.9622641509433962, "diff": [["@@ -0x10069341,41 +0x10036c71,42 @@", [{"both": [["0x10069341", "jmp MxCollection<LegoROI *>::~MxCollection<LegoROI *> (FUNCTION)", "0x10036c71"], ["0x10069346", "mov ecx, dword ptr [ebp - 0x10]", "0x10036c76"], ["0x10069349", "jmp MxList<LegoROI *>::~MxList<LegoROI *> (FUNCTION)", "0x10036c79"], ["0x1006934e", "mov ecx, dword ptr [ebp - 0x10]", "0x10036c7e"], ["0x10069351", "jmp MxPtrList<LegoROI>::~MxPtrList<LegoROI> (FUNCTION)", "0x10036c81"], ["0x10069356", "xor eax, eax", "0x10036c86"], ["0x10069358", "mov ecx, dword ptr [ebp - 0x14]", "0x10036c88"], ["0x1006935b", "test eax, eax", "0x10036c8b"], ["0x1006935d", "mov dword ptr [ebp - 4], 0xffffffff", "0x10036c8d"], ["0x10069364", "mov dword ptr [ecx + 0x74], eax", "0x10036c94"]]}, {"orig": [["0x10069367", "je 0x21c"]], "recomp": [["0x10036c97", "je 0x21f"]]}, {"both": [["0x1006936d", "mov eax, dword ptr [ecx + 0x64]", "0x10036c9d"], ["0x10069370", "mov dword ptr [ebp - 0x1c], 0", "0x10036ca0"], ["0x10069377", "mov edx, dword ptr [eax + 0x10]", "0x10036ca7"], ["0x1006937a", "mov dword ptr [ebp - 0x20], edx", "0x10036caa"], ["0x1006937d", "test edx, edx", "0x10036cad"]]}, {"orig": [["0x1006937f", "je 0x204"], ["0x10069385", "mov esi, dword ptr [ebp - 0x1c]"]], "recomp": [["0x10036caf", "je 0x207"]]}, {"both": [["0x10069388", "push 0", "0x10036cb5"]]}, {"orig": [["0x1006938a", "push esi"]], "recomp": [["0x10036cb7", "mov eax, dword ptr [ebp - 0x1c]"], ["0x10036cba", "push eax"]]}, {"both": [["0x1006938b", "mov ecx, dword ptr [ebp - 0x14]", "0x10036cbb"], ["0x1006938e", "mov ecx, dword ptr [ecx + 0x64]", "0x10036cbe"], ["0x10069391", "call LegoAnim::GetActorName (FUNCTION)", "0x10036cc1"], ["0x10069396", "push eax", "0x10036cc6"], ["0x10069397", "mov ecx, dword ptr [ebp - 0x14]", "0x10036cc7"], ["0x1006939a", "call LegoAnimPresenter::FUN_100697c0 (FUNCTION)", "0x10036cca"]]}, {"orig": [["0x1006939f", "push esi"], ["0x100693a0", "mov ecx, dword ptr [ebp - 0x14]"]], "recomp": [["0x10036ccf", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x10036cd2", "mov edx, dword ptr [ebp - 0x14]"], ["0x10036cd5", "push ecx"]]}, {"both": [["0x100693a3", "xor esi, esi", "0x10036cd6"]]}, {"orig": [], "recomp": [["0x10036cd8", "mov ecx, dword ptr [edx + 0x64]"]]}, {"both": [["0x100693a5", "mov dword ptr [ebp - 0x10], eax", "0x10036cdb"]]}, {"orig": [["0x100693a8", "mov ecx, dword ptr [ecx + 0x64]"]], "recomp": []}, {"both": [["0x100693ab", "call LegoAnim::GetActorUnknown0x04 (FUNCTION)", "0x10036cde"], ["0x100693b0", "cmp eax, 2", "0x10036ce3"], ["0x100693b3", "jne 0x3c", "0x10036ce6"], ["0x100693b5", "mov eax, dword ptr [ebp - 0x10]", "0x10036ce8"], ["0x100693b8", "cmp byte ptr [eax], 0x2a", "0x10036ceb"], ["0x100693bb", "jne 0x3", "0x10036cee"], ["0x100693bd", "inc eax", "0x10036cf0"], ["0x100693be", "jmp 0x3", "0x10036cf1"], ["0x100693c0", "mov eax, dword ptr [ebp - 0x10]", "0x10036cf3"], ["0x100693c3", "push 1", "0x10036cf6"]]}]], ["@@ -0x10069565,34 +0x10036e98,31 @@", [{"both": [["0x10069565", "mov dword ptr [ebx + 0x10], eax", "0x10036e98"], ["0x10069568", "mov dword ptr [ebx + 0x14], eax", "0x10036e9b"], ["0x1006956b", "inc dword ptr [ebx + 8]", "0x10036e9e"], ["0x1006956e", "mov eax, dword ptr [ebp - 0x10]", "0x10036ea1"], ["0x10069571", "push eax", "0x10036ea4"], ["0x10069572", "call ??3@YAXPAX@Z (FUNCTION)", "0x10036ea5"], ["0x10069577", "add esp, 4", "0x10036eaa"], ["0x1006957a", "inc dword ptr [ebp - 0x1c]", "0x10036ead"], ["0x1006957d", "mov eax, dword ptr [ebp - 0x1c]", "0x10036eb0"], ["0x10069580", "cmp eax, dword ptr [ebp - 0x20]", "0x10036eb3"]]}, {"orig": [["0x10069583", "jb -0x204"]], "recomp": [["0x10036eb6", "jb -0x207"]]}, {"both": [["0x10069589", "mov eax, dword ptr [ebp - 0xc]", "0x10036ebc"], ["0x1006958c", "pop edi", "0x10036ebf"], ["0x1006958d", "mov dword ptr fs:[0], eax", "0x10036ec0"], ["0x10069593", "pop esi", "0x10036ec6"], ["0x10069594", "pop ebx", "0x10036ec7"], ["0x10069595", "mov esp, ebp", "0x10036ec8"], ["0x10069597", "pop ebp", "0x10036eca"], ["0x10069598", "ret ", "0x10036ecb"], ["0x10069599", "mov eax, dword ptr [ebp - 0x18]", "0x10036ecc"], ["0x1006959c", "push eax", "0x10036ecf"], ["0x1006959d", "call ??3@YAXPAX@Z (FUNCTION)", "0x10036ed0"], ["0x100695a2", "add esp, 4", "0x10036ed5"], ["0x100695a5", "ret ", "0x10036ed8"], ["0x100695a6", "mov eax, <OFFSET23>", "0x10036ed9"], ["0x100695ab", "jmp ___CxxFrameHandler (FUNCTION)", "0x10036ede"], ["0x100695b0", "mov eax, dword ptr [ebp - 0x10]", "0x10036ee3"], ["0x100695b3", "push eax", "0x10036ee6"], ["0x100695b4", "call ??3@YAXPAX@Z (FUNCTION)", "0x10036ee7"], ["0x100695b9", "add esp, 4", "0x10036eec"], ["0x100695bc", "ret ", "0x10036eef"]]}, {"orig": [["0x100695bd", "int3 "], ["0x100695be", "int3 "], ["0x100695bf", "int3 "]], "recomp": []}]]]}, {"address": "0x100695c0", "recomp": "0x100371d0", "name": "LegoAnimPresenter::FUN_100695c0", "matching": 1.0, "diff": []}, {"address": "0x100697c0", "recomp": "0x100373d0", "name": "LegoAnimPresenter::FUN_100697c0", "matching": 1.0, "diff": []}, {"address": "0x100698b0", "recomp": "0x100374c0", "name": "LegoAnimPresenter::FUN_100698b0", "matching": 1.0, "effective": true, "diff": [["@@ -0x100698cb,97 +0x100374db,97 @@", [{"both": [["0x100698cb", "mov eax, dword ptr [ebp + 0xc]", "0x100374db"], ["0x100698ce", "mov dword ptr [ebp - 0x18], ecx", "0x100374de"], ["0x100698d1", "mov byte ptr [ebp - 0x11], 0", "0x100374e1"], ["0x100698d5", "push ebx", "0x100374e5"], ["0x100698d6", "push esi", "0x100374e6"], ["0x100698d7", "push edi", "0x100374e7"], ["0x100698d8", "push 0", "0x100374e8"], ["0x100698da", "push eax", "0x100374ea"], ["0x100698db", "call LegoAnimPresenter::FUN_100697c0 (FUNCTION)", "0x100374eb"], ["0x100698e0", "cmp byte ptr [eax], 0x2a", "0x100374f0"]]}, {"orig": [["0x100698e3", "mov esi, eax"]], "recomp": [["0x100374f3", "mov edi, eax"]]}, {"both": [["0x100698e5", "jne 0x16", "0x100374f5"]]}, {"orig": [["0x100698e7", "push esi"]], "recomp": [["0x100374f7", "push edi"]]}, {"both": [["0x100698e8", "mov ecx, dword ptr [ebp - 0x18]", "0x100374f8"], ["0x100698eb", "call LegoAnimPresenter::FUN_10069150 (FUNCTION)", "0x100374fb"]]}, {"orig": [["0x100698f0", "mov edi, eax"], ["0x100698f2", "push esi"], ["0x100698f3", "mov esi, edi"]], "recomp": [["0x10037500", "mov esi, eax"], ["0x10037502", "push edi"], ["0x10037503", "mov edi, esi"]]}, {"both": [["0x100698f5", "call ??3@YAXPAX@Z (FUNCTION)", "0x10037505"], ["0x100698fa", "add esp, 4", "0x1003750a"]]}, {"orig": [["0x100698fd", "test esi, esi"]], "recomp": [["0x1003750d", "test edi, edi"]]}, {"both": [["0x100698ff", "je 0x45", "0x1003750f"]]}, {"orig": [["0x10069901", "cmp byte ptr [esi], 0"]], "recomp": [["0x10037511", "cmp byte ptr [edi], 0"]]}, {"both": [["0x10069904", "je 0x40", "0x10037514"]]}, {"orig": [["0x10069906", "mov ebx, dword ptr [ebp + 8]"], ["0x10069909", "cmp dword ptr [ebx + 8], 0"]], "recomp": [["0x10037516", "mov esi, dword ptr [ebp + 8]"], ["0x10037519", "cmp dword ptr [esi + 8], 0"]]}, {"both": [["0x1006990d", "jbe 0x37", "0x1003751d"]]}, {"orig": [["0x1006990f", "mov ecx, dword ptr [ebx + 4]"], ["0x10069912", "mov eax, dword ptr [ecx]"], ["0x10069914", "mov dword ptr [ebp - 0x10], eax"]], "recomp": [["0x1003751f", "mov eax, dword ptr [esi + 4]"], ["0x10037522", "mov ecx, dword ptr [eax]"], ["0x10037524", "mov dword ptr [ebp - 0x10], ecx"]]}, {"both": [["0x10069917", "cmp eax, ecx", "0x10037527"], ["0x10069919", "je 0x2b", "0x10037529"], ["0x1006991b", "mov eax, dword ptr [ebp - 0x10]", "0x1003752b"]]}, {"orig": [["0x1006991e", "mov edi, dword ptr [eax + 8]"], ["0x10069921", "mov eax, dword ptr [edi + 0xe4]"]], "recomp": [["0x1003752e", "mov ebx, dword ptr [eax + 8]"], ["0x10037531", "mov eax, dword ptr [ebx + 0xe4]"]]}, {"both": [["0x10069927", "test eax, eax", "0x10037537"], ["0x10069929", "je 0xe", "0x10037539"]]}, {"orig": [["0x1006992b", "push esi"]], "recomp": [["0x1003753b", "push edi"]]}, {"both": [["0x1006992c", "push eax", "0x1003753c"], ["0x1006992d", "call __strcmpi (FUNCTION)", "0x1003753d"], ["0x10069932", "add esp, 8", "0x10037542"], ["0x10069935", "test eax, eax", "0x10037545"], ["0x10069937", "je 0x2c", "0x10037547"], ["0x10069939", "mov eax, dword ptr [ebp - 0x10]", "0x10037549"], ["0x1006993c", "mov ecx, dword ptr [eax]", "0x1003754c"], ["0x1006993e", "mov dword ptr [ebp - 0x10], ecx", "0x1003754e"]]}, {"orig": [["0x10069941", "cmp dword ptr [ebx + 4], ecx"]], "recomp": [["0x10037551", "cmp dword ptr [esi + 4], ecx"]]}, {"both": [["0x10069944", "jne -0x2b", "0x10037554"]]}, {"orig": [["0x10069946", "push esi"]], "recomp": [["0x10037556", "push edi"]]}, {"both": [["0x10069947", "call ??3@YAXPAX@Z (FUNCTION)", "0x10037557"], ["0x1006994c", "add esp, 4", "0x1003755c"], ["0x1006994f", "mov al, byte ptr [ebp - 0x11]", "0x1003755f"], ["0x10069952", "mov ecx, dword ptr [ebp - 0xc]", "0x10037562"], ["0x10069955", "pop edi", "0x10037565"], ["0x10069956", "mov dword ptr fs:[0], ecx", "0x10037566"], ["0x1006995d", "pop esi", "0x1003756d"], ["0x1006995e", "pop ebx", "0x1003756e"], ["0x1006995f", "mov esp, ebp", "0x1003756f"], ["0x10069961", "pop ebp", "0x10037571"], ["0x10069962", "ret 8", "0x10037572"], ["0x10069965", "mov eax, dword ptr [ebp - 0x18]", "0x10037575"], ["0x10069968", "push 0xc", "0x10037578"]]}, {"orig": [["0x1006996a", "mov ebx, dword ptr [eax + 0x70]"], ["0x1006996d", "mov ecx, dword ptr [ebx + 0x14]"]], "recomp": [["0x1003757a", "mov esi, dword ptr [eax + 0x70]"], ["0x1003757d", "mov ecx, dword ptr [esi + 0x14]"]]}, {"both": [["0x10069970", "mov dword ptr [ebp - 0x10], ecx", "0x10037580"], ["0x10069973", "call ??2@YAPAXI@Z (FUNCTION)", "0x10037583"], ["0x10069978", "add esp, 4", "0x10037588"], ["0x1006997b", "mov dword ptr [ebp - 0x14], eax", "0x1003758b"], ["0x1006997e", "mov dword ptr [ebp - 4], 0", "0x1003758e"], ["0x10069985", "test eax, eax", "0x10037595"], ["0x10069987", "je 0x10", "0x10037597"], ["0x10069989", "push 0", "0x10037599"], ["0x1006998b", "mov ecx, dword ptr [ebp - 0x10]", "0x1003759b"], ["0x1006998e", "push ecx", "0x1003759e"]]}, {"orig": [["0x1006998f", "push edi"]], "recomp": [["0x1003759f", "push ebx"]]}, {"both": [["0x10069990", "mov ecx, eax", "0x100375a0"], ["0x10069992", "call MxListEntry<LegoROI *>::MxListEntry<LegoROI *> (FUNCTION)", "0x100375a2"], ["0x10069997", "jmp 0x2", "0x100375a7"], ["0x10069999", "xor eax, eax", "0x100375a9"], ["0x1006999b", "mov dword ptr [ebp - 4], 0xffffffff", "0x100375ab"], ["0x100699a2", "cmp dword ptr [ebp - 0x10], 0", "0x100375b2"], ["0x100699a6", "je 0x8", "0x100375b6"], ["0x100699a8", "mov ecx, dword ptr [ebp - 0x10]", "0x100375b8"], ["0x100699ab", "mov dword ptr [ecx + 8], eax", "0x100375bb"], ["0x100699ae", "jmp 0x3", "0x100375be"]]}, {"orig": [["0x100699b0", "mov dword ptr [ebx + 0x10], eax"]], "recomp": [["0x100375c0", "mov dword ptr [esi + 0x10], eax"]]}, {"both": [["0x100699b3", "mov byte ptr [ebp - 0x11], 1", "0x100375c3"]]}, {"orig": [["0x100699b7", "mov dword ptr [ebx + 0x14], eax"], ["0x100699ba", "inc dword ptr [ebx + 8]"]], "recomp": [["0x100375c7", "mov dword ptr [esi + 0x14], eax"], ["0x100375ca", "inc dword ptr [esi + 8]"]]}, {"both": [["0x100699bd", "jmp -0x79", "0x100375cd"], ["0x100699bf", "mov eax, <OFFSET8>", "0x100375cf"], ["0x100699c4", "jmp ___CxxFrameHandler (FUNCTION)", "0x100375d4"], ["0x100699c9", "mov eax, dword ptr [ebp - 0x14]", "0x100375d9"], ["0x100699cc", "push eax", "0x100375dc"], ["0x100699cd", "call ??3@YAXPAX@Z (FUNCTION)", "0x100375dd"], ["0x100699d2", "add esp, 4", "0x100375e2"], ["0x100699d5", "ret ", "0x100375e5"]]}]]]}, {"address": "0x10069b10", "recomp": "0x100375f0", "name": "LegoAnimPresenter::FUN_10069b10", "matching": 0.0, "stub": true}, {"address": "0x1006aba0", "recomp": "0x10037600", "name": "LegoAnimPresenter::FUN_1006aba0", "matching": 1.0, "diff": []}, {"address": "0x1006abb0", "recomp": "0x10037610", "name": "LegoAnimPresenter::FUN_1006abb0", "matching": 0.0, "stub": true}, {"address": "0x1006ac90", "recomp": "0x10037620", "name": "LegoAnimPresenter::FUN_1006ac90", "matching": 0.0, "stub": true}, {"address": "0x1006ad30", "recomp": "0x10037630", "name": "LegoAnimPresenter::PutFrame", "matching": 0.0, "stub": true}, {"address": "0x1006b550", "recomp": "0x10037640", "name": "LegoAnimPresenter::ReadyTickle", "matching": 0.8703703703703703, "diff": [["@@ -0x1006b551,29 +0x10037641,29 @@", [{"both": [["0x1006b551", "push esi", "0x10037641"], ["0x1006b552", "push edi", "0x10037642"], ["0x1006b553", "mov esi, ecx", "0x10037643"], ["0x1006b555", "push ebp", "0x10037645"], ["0x1006b556", "call CurrentWorld (FUNCTION)", "0x10037646"], ["0x1006b55b", "mov dword ptr [esi + 0x80], eax", "0x1003764b"], ["0x1006b561", "test eax, eax", "0x10037651"], ["0x1006b563", "je 0x69", "0x10037653"], ["0x1006b565", "mov ecx, dword ptr [esi + 0x40]", "0x10037655"], ["0x1006b568", "call MxDSSubscriber::PeekData (FUNCTION)", "0x10037658"]]}, {"orig": [["0x1006b56d", "mov ebx, eax"], ["0x1006b56f", "test ebx, ebx"]], "recomp": [["0x1003765d", "mov edi, eax"], ["0x1003765f", "test edi, edi"]]}, {"both": [["0x1006b571", "je 0x5b", "0x10037661"]]}, {"orig": [["0x1006b573", "mov edi, dword ptr [esi + 0x1c]"], ["0x1006b576", "mov ecx, edi"], ["0x1006b578", "mov eax, dword ptr [edi]"]], "recomp": [["0x10037663", "mov ebx, dword ptr [esi + 0x1c]"], ["0x10037666", "mov ecx, ebx"], ["0x10037668", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x1006b57a", "call dword ptr [eax + 0x40]", "0x1003766a"]]}, {"orig": [["0x1006b57d", "mov ecx, dword ptr [ebx + 0x10]"], ["0x1006b580", "add ecx, dword ptr [edi + 0x34]"]], "recomp": [["0x1003766d", "mov ecx, dword ptr [ebx + 0x34]"], ["0x10037670", "add ecx, dword ptr [edi + 0x10]"]]}, {"both": [["0x1006b583", "cmp eax, ecx", "0x10037673"], ["0x1006b585", "jl 0x47", "0x10037675"], ["0x1006b587", "mov ecx, dword ptr [esi + 0x40]", "0x10037677"], ["0x1006b58a", "call MxDSSubscriber::PopData (FUNCTION)", "0x1003767a"], ["0x1006b58f", "mov ebx, dword ptr [esi]", "0x1003767f"], ["0x1006b591", "mov ecx, esi", "0x10037681"], ["0x1006b593", "push eax", "0x10037683"], ["0x1006b594", "mov edi, eax", "0x10037684"], ["0x1006b596", "call dword ptr [ebx + 0x88]", "0x10037686"], ["0x1006b59c", "mov ebp, eax", "0x1003768c"]]}]]]}, {"address": "0x1006b5e0", "recomp": "0x100376d0", "name": "LegoAnimPresenter::StartingTickle", "matching": 1.0, "diff": []}, {"address": "0x1006b840", "recomp": "0x10037930", "name": "LegoAnimPresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x1006b8c0", "recomp": "0x100379b0", "name": "LegoAnimPresenter::DoneTickle", "matching": 1.0, "diff": []}, {"address": "0x1006b8d0", "recomp": "0x100379c0", "name": "LegoAnimPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x1006b8e0", "recomp": "0x100379d0", "name": "LegoAnimPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1006b8f0", "recomp": "0x100379e0", "name": "LegoAnimPresenter::GetActionObjectName", "matching": 1.0, "diff": []}, {"address": "0x1006bac0", "recomp": "0x100379f0", "name": "LegoAnimPresenter::ParseExtra", "matching": 0.0, "stub": true}, {"address": "0x1006c570", "recomp": "0x10037a00", "name": "LegoAnimPresenter::VTable0xa0", "matching": 0.0, "stub": true}, {"address": "0x1006c620", "recomp": "0x10037a10", "name": "LegoAnimPresenter::StartAction", "matching": 1.0, "diff": []}, {"address": "0x1006c640", "recomp": "0x10037a30", "name": "LegoAnimPresenter::EndAction", "matching": 0.0, "stub": true}, {"address": "0x1006c7d0", "recomp": "0x10037a40", "name": "LegoAnimPresenter::VTable0x8c", "matching": 0.0, "stub": true}, {"address": "0x1006c860", "recomp": "0x10037a50", "name": "LegoAnimPresenter::VTable0x90", "matching": 0.0, "stub": true}, {"address": "0x1006c8a0", "recomp": "0x10037a60", "name": "LegoAnimPresenter::FUN_1006c8a0", "matching": 0.0, "stub": true}, {"address": "0x1006c8f0", "recomp": "0x10037a70", "name": "LegoAnimPresenter::VTable0x94", "matching": 0.0, "stub": true}, {"address": "0x1006ca50", "recomp": "0x10037a80", "name": "LegoAnimPresenter::VTable0x98", "matching": 0.0, "stub": true}, {"address": "0x1006caa0", "recomp": "0x100387b0", "name": "LegoLoopingAnimPresenter::StreamingTickle", "matching": 0.0, "stub": true}, {"address": "0x1006cb40", "recomp": "0x100387c0", "name": "LegoLoopingAnimPresenter::PutFrame", "matching": 0.0, "stub": true}, {"address": "0x1006cdd0", "recomp": "0x100383d0", "name": "LegoLocomotionAnimPresenter::LegoLocomotionAnimPresenter", "matching": 1.0, "diff": []}, {"address": "0x1006ce50", "recomp": "0x10038450", "name": "LegoLocomotionAnimPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1006ce60", "recomp": "0x10038460", "name": "LegoLocomotionAnimPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1006cfe0", "recomp": "0x100385e0", "name": "LegoLocomotionAnimPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1006d000", "recomp": "0x10038240", "name": "LegoLoopingAnimPresenter::~LegoLoopingAnimPresenter", "matching": 1.0, "diff": []}, {"address": "0x1006d050", "recomp": "0x10038600", "name": "LegoLocomotionAnimPresenter::~LegoLocomotionAnimPresenter", "matching": 1.0, "diff": []}, {"address": "0x1006d0b0", "recomp": "0x10038660", "name": "LegoLocomotionAnimPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x1006d0e0", "recomp": "0x10038690", "name": "LegoLocomotionAnimPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1006d140", "recomp": "0x100386f0", "name": "LegoLocomotionAnimPresenter::CreateAnim", "matching": 1.0, "diff": []}, {"address": "0x1006d160", "recomp": "0x10038710", "name": "LegoLocomotionAnimPresenter::AddToManager", "matching": 0.0, "stub": true}, {"address": "0x1006d5b0", "recomp": "0x10038720", "name": "LegoLocomotionAnimPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1006d5c0", "recomp": "0x10038730", "name": "LegoLocomotionAnimPresenter::PutFrame", "matching": 1.0, "diff": []}, {"address": "0x1006d5d0", "recomp": "0x10038740", "name": "LegoLocomotionAnimPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x1006d610", "recomp": "0x10038780", "name": "LegoLocomotionAnimPresenter::StartingTickle", "matching": 0.0, "stub": true}, {"address": "0x1006d660", "recomp": "0x10038790", "name": "LegoLocomotionAnimPresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x1006d670", "recomp": "0x100387a0", "name": "LegoLocomotionAnimPresenter::EndAction", "matching": 1.0, "diff": []}, {"address": "0x1006d7e0", "recomp": "0x10038050", "name": "LegoHideAnimPresenter::LegoHideAnimPresenter", "matching": 1.0, "diff": []}, {"address": "0x1006d860", "recomp": "0x10038290", "name": "LegoHideAnimPresenter::VTable0x8c", "matching": 0.0, "stub": true}, {"address": "0x1006d870", "recomp": "0x100382a0", "name": "LegoHideAnimPresenter::VTable0x90", "matching": 0.0, "stub": true}, {"address": "0x1006d880", "recomp": "0x100380d0", "name": "LegoHideAnimPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1006d890", "recomp": "0x100380e0", "name": "LegoHideAnimPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1006d9d0", "recomp": "0x10038220", "name": "LegoHideAnimPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1006d9f0", "recomp": "0x100382b0", "name": "LegoHideAnimPresenter::~LegoHideAnimPresenter", "matching": 1.0, "diff": []}, {"address": "0x1006da50", "recomp": "0x10038310", "name": "LegoHideAnimPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x1006da60", "recomp": "0x10038320", "name": "LegoHideAnimPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1006dab0", "recomp": "0x10038370", "name": "LegoHideAnimPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x1006dac0", "recomp": "0x10038380", "name": "LegoHideAnimPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1006dad0", "recomp": "0x10038390", "name": "LegoHideAnimPresenter::PutFrame", "matching": 0.0, "stub": true}, {"address": "0x1006dae0", "recomp": "0x100383a0", "name": "LegoHideAnimPresenter::ReadyTickle", "matching": 0.0, "stub": true}, {"address": "0x1006db20", "recomp": "0x100383b0", "name": "LegoHideAnimPresenter::StartingTickle", "matching": 0.0, "stub": true}, {"address": "0x1006e9e0", "recomp": "0x100383c0", "name": "LegoHideAnimPresenter::EndAction", "matching": 0.0, "stub": true}, {"address": "0x1006ea00", "recomp": "0x10037b20", "name": "MxListEntry<LegoROI *>::MxListEntry<LegoROI *>", "matching": 1.0, "diff": []}, {"address": "0x1006ea20", "recomp": "0x10040b20", "name": "Infocenter::Infocenter", "matching": 1.0, "diff": []}, {"address": "0x1006eb40", "recomp": "0x10040c50", "name": "Infocenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1006eb50", "recomp": "0x10040c60", "name": "Infocenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1006ec60", "recomp": "0x10040d70", "name": "Infocenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1006ec80", "recomp": "0x10040c40", "name": "InfocenterMapEntry::InfocenterMapEntry", "matching": 1.0, "diff": []}, {"address": "0x1006ec90", "recomp": "0x10040d90", "name": "Infocenter::~Infocenter", "matching": 1.0, "diff": []}, {"address": "0x1006ed90", "recomp": "0x10040e90", "name": "Infocenter::Create", "matching": 0.9531914893617022, "diff": [["@@ -0x1006edd6,52 +0x10040ed6,52 @@", [{"both": [["0x1006edd6", "mov ecx, eax", "0x10040ed6"], ["0x1006edd8", "mov dword ptr [esi + 0x100], eax", "0x10040ed8"], ["0x1006edde", "test ecx, ecx", "0x10040ede"], ["0x1006ede0", "jne 0x23", "0x10040ee0"], ["0x1006ede2", "push 'InfocenterState' (STRING)", "0x10040ee2"], ["0x1006ede7", "call GameState (FUNCTION)", "0x10040ee7"], ["0x1006edec", "mov ecx, eax", "0x10040eec"], ["0x1006edee", "call LegoGameState::CreateState (FUNCTION)", "0x10040eee"], ["0x1006edf3", "mov dword ptr [esi + 0x100], eax", "0x10040ef3"], ["0x1006edf9", "mov dword ptr [eax + 0x74], 3", "0x10040ef9"]]}, {"orig": [["0x1006ee00", "jmp 0xa2"]], "recomp": [["0x10040f00", "jmp 0xa3"]]}, {"both": [["0x1006ee05", "mov eax, dword ptr [ecx + 0x74]", "0x10040f05"], ["0x1006ee08", "cmp eax, 8", "0x10040f08"], ["0x1006ee0b", "je 0x11", "0x10040f0b"], ["0x1006ee0d", "cmp eax, 4", "0x10040f0d"], ["0x1006ee10", "je 0xc", "0x10040f10"], ["0x1006ee12", "cmp eax, 0xf", "0x10040f12"], ["0x1006ee15", "je 0x7", "0x10040f15"], ["0x1006ee17", "mov dword ptr [ecx + 0x74], 2", "0x10040f17"]]}, {"orig": [["0x1006ee1e", "xor edi, edi"]], "recomp": [["0x10040f1e", "xor di, di"], ["0x10040f21", "xor ecx, ecx"]]}, {"both": [["0x1006ee20", "mov eax, dword ptr [esi + 0x100]", "0x10040f23"]]}, {"orig": [["0x1006ee26", "xor ecx, ecx"]], "recomp": []}, {"both": [["0x1006ee28", "movsx edx, di", "0x10040f29"], ["0x1006ee2b", "cmp dword ptr [eax + edx*4 + 0x78], ecx", "0x10040f2c"], ["0x1006ee2f", "je 0x8", "0x10040f30"], ["0x1006ee31", "inc di", "0x10040f32"], ["0x1006ee33", "cmp di, 7", "0x10040f34"], ["0x1006ee37", "jl -0x11", "0x10040f38"], ["0x1006ee39", "xor bx, bx", "0x10040f3a"], ["0x1006ee3c", "test di, di", "0x10040f3d"], ["0x1006ee3f", "jle 0x66", "0x10040f40"], ["0x1006ee41", "mov eax, dword ptr [esi + 0x100]", "0x10040f42"], ["0x1006ee47", "movsx ebp, bx", "0x10040f48"], ["0x1006ee4a", "mov ecx, dword ptr [eax + ebp*4 + 0x78]", "0x10040f4b"], ["0x1006ee4e", "test ecx, ecx", "0x10040f4f"], ["0x1006ee50", "je 0x4e", "0x10040f51"], ["0x1006ee52", "push 1", "0x10040f53"], ["0x1006ee54", "mov eax, dword ptr [ecx]", "0x10040f55"], ["0x1006ee56", "call dword ptr [eax + 0x54]", "0x10040f57"]]}, {"orig": [["0x1006ee59", "mov eax, dword ptr [esi + 0x100]"]], "recomp": [["0x10040f5a", "mov edx, dword ptr [esi + 0x100]"]]}, {"both": [["0x1006ee5f", "push 4", "0x10040f60"]]}, {"orig": [["0x1006ee61", "mov ecx, dword ptr [eax + ebp*4 + 0x78]"]], "recomp": [["0x10040f62", "mov ecx, dword ptr [edx + ebp*4 + 0x78]"]]}, {"both": [["0x1006ee65", "mov eax, dword ptr [ecx]", "0x10040f66"], ["0x1006ee67", "call dword ptr [eax + 0x44]", "0x10040f68"], ["0x1006ee6a", "mov edx, dword ptr [esi + 0x100]", "0x10040f6b"], ["0x1006ee70", "push 0x2d", "0x10040f71"], ["0x1006ee72", "mov eax, 7", "0x10040f73"], ["0x1006ee77", "mov ecx, dword ptr [edx + ebp*4 + 0x78]", "0x10040f78"], ["0x1006ee7b", "movsx edx, di", "0x10040f7c"], ["0x1006ee7e", "sub eax, edx", "0x10040f7f"], ["0x1006ee80", "cdq ", "0x10040f81"], ["0x1006ee81", "sub eax, edx", "0x10040f82"]]}]], ["@@ -0x1006eef5,11 +0x10040ff6,10 @@", [{"both": [["0x1006eef5", "push 0", "0x10040ff6"], ["0x1006eef7", "call SetIsWorldActive (FUNCTION)", "0x10040ff8"], ["0x1006eefc", "mov eax, dword ptr [esp + 0x14]", "0x10040ffd"], ["0x1006ef00", "add esp, 4", "0x10041001"], ["0x1006ef03", "pop ebp", "0x10041004"], ["0x1006ef04", "pop edi", "0x10041005"], ["0x1006ef05", "pop esi", "0x10041006"], ["0x1006ef06", "pop ebx", "0x10041007"], ["0x1006ef07", "add esp, 4", "0x10041008"], ["0x1006ef0a", "ret 4", "0x1004100b"]]}, {"orig": [["0x1006ef0d", "int3 "]], "recomp": []}]]]}, {"address": "0x1006ef10", "recomp": "0x10041010", "name": "Infocenter::Notify", "matching": 0.9014084507042254, "diff": [["@@ -0x1006ef15,22 +0x10041015,22 @@", [{"both": [["0x1006ef15", "xor ebx, ebx", "0x10041015"], ["0x1006ef17", "mov edi, dword ptr [esp + 0x10]", "0x10041017"], ["0x1006ef1b", "push edi", "0x1004101b"], ["0x1006ef1c", "call LegoWorld::Notify (FUNCTION)", "0x1004101c"], ["0x1006ef21", "cmp byte ptr [esi + 0xf6], bl", "0x10041021"], ["0x1006ef27", "je 0x108", "0x10041027"], ["0x1006ef2d", "mov ecx, dword ptr [edi + 4]", "0x1004102d"], ["0x1006ef30", "cmp ecx, 0x18", "0x10041030"], ["0x1006ef33", "ja 0xfc", "0x10041033"], ["0x1006ef39", "xor eax, eax", "0x10041039"]]}, {"orig": [["0x1006ef3b", "mov al, byte ptr [ecx + 0x1006f060]"], ["0x1006ef41", "jmp dword ptr [eax*4 + 0x1006f040]"]], "recomp": [["0x1004103b", "mov al, byte ptr [ecx + 0x10041160]"], ["0x10041041", "jmp dword ptr [eax*4 + 0x10041140]"]]}, {"both": [["0x1006ef48", "push edi", "0x10041048"], ["0x1006ef49", "mov ecx, esi", "0x10041049"], ["0x1006ef4b", "call Infocenter::HandleNotification0 (FUNCTION)", "0x1004104b"], ["0x1006ef50", "mov ebx, eax", "0x10041050"], ["0x1006ef52", "pop edi", "0x10041052"], ["0x1006ef53", "mov eax, ebx", "0x10041053"], ["0x1006ef55", "pop esi", "0x10041055"], ["0x1006ef56", "pop ebx", "0x10041056"], ["0x1006ef57", "ret 4", "0x10041057"], ["0x1006ef5a", "push edi", "0x1004105a"]]}]], ["@@ -0x1006f024,32 +0x10041124,32 @@", [{"both": [["0x1006f024", "mov ecx, eax", "0x10041124"], ["0x1006f026", "call LegoGameState::SwitchArea (FUNCTION)", "0x10041126"], ["0x1006f02b", "mov dword ptr [esi + 0x104], 0", "0x1004112b"], ["0x1006f035", "mov eax, ebx", "0x10041135"], ["0x1006f037", "pop edi", "0x10041137"], ["0x1006f038", "pop esi", "0x10041138"], ["0x1006f039", "pop ebx", "0x10041139"], ["0x1006f03a", "ret 4", "0x1004113a"], ["0x1006f03d", "lea ecx, [ecx]", "0x1004113d"], ["0x1006f040", "dec eax", "0x10041140"]]}, {"orig": [["0x1006f041", "out dx, eax"], ["0x1006f042", "push es"], ["0x1006f043", "adc byte ptr [edx - 0x11], bl"], ["0x1006f046", "push es"], ["0x1006f047", "adc byte ptr [edi + ebp*8 + 6], ch"], ["0x1006f04b", "adc byte ptr [ecx - 0x63eff911], al"], ["0x1006f051", "out dx, eax"], ["0x1006f052", "push es"], ["0x1006f053", "adc byte ptr [edi - 0x34eff911], dh"], ["0x1006f059", "out dx, eax"], ["0x1006f05a", "push es"], ["0x1006f05b", "adc byte ptr [<OFFSET14>], dh"]], "recomp": [["0x10041141", "adc byte ptr [eax + edx], al"], ["0x10041144", "pop edx"], ["0x10041145", "adc byte ptr [eax + edx], al"], ["0x10041148", "insb byte ptr es:[edi], dx"], ["0x10041149", "adc byte ptr [eax + edx], al"], ["0x1004114c", "adc dword ptr [eax], 0x109c1004"], ["0x10041152", "add al, 0x10"], ["0x10041154", "mov bh, 0x10"], ["0x10041156", "add al, 0x10"], ["0x10041158", "retf "], ["0x10041159", "adc byte ptr [eax + edx], al"], ["0x1004115c", "xor eax, 0x100411"]]}, {"both": [["0x1006f061", "pop es", "0x10041161"], ["0x1006f062", "add dword ptr [edi], eax", "0x10041162"], ["0x1006f064", "pop es", "0x10041164"], ["0x1006f065", "pop es", "0x10041165"], ["0x1006f066", "pop es", "0x10041166"], ["0x1006f067", "add al, byte ptr [ebx]", "0x10041167"], ["0x1006f069", "pop es", "0x10041169"], ["0x1006f06a", "add al, 7", "0x1004116a"], ["0x1006f06c", "pop es", "0x1004116c"], ["0x1006f06d", "pop es", "0x1004116d"]]}]]]}, {"address": "0x1006f080", "recomp": "0x10041180", "name": "Infocenter::HandleEndAction", "matching": 0.8618618618618619, "diff": [["@@ -0x1006f111,69 +0x10041211,68 @@", [{"both": [["0x1006f111", "mov ax, word ptr [esi + 0xfc]", "0x10041211"], ["0x1006f118", "add esp, 4", "0x10041218"], ["0x1006f11b", "push eax", "0x1004121b"], ["0x1006f11c", "call GameState (FUNCTION)", "0x1004121c"], ["0x1006f121", "mov ecx, eax", "0x10041221"], ["0x1006f123", "call LegoGameState::SetActor (FUNCTION)", "0x10041223"], ["0x1006f128", "movsx eax, word ptr [esi + 0xfc]", "0x10041228"], ["0x1006f12f", "dec eax", "0x1004122f"], ["0x1006f130", "cmp eax, 4", "0x10041230"], ["0x1006f133", "ja 0x2f", "0x10041233"]]}, {"orig": [["0x1006f135", "jmp dword ptr [eax*4 + 0x1006f478]"]], "recomp": [["0x10041235", "jmp dword ptr [eax*4 + 0x10041574]"]]}, {"both": [["0x1006f13c", "push 0x21d", "0x1004123c"], ["0x1006f141", "jmp 0x1a", "0x10041241"], ["0x1006f143", "push 0x21e", "0x10041243"], ["0x1006f148", "jmp 0x13", "0x10041248"], ["0x1006f14a", "push 0x21f", "0x1004124a"], ["0x1006f14f", "jmp 0xc", "0x1004124f"], ["0x1006f151", "push 0x220", "0x10041251"], ["0x1006f156", "jmp 0x5", "0x10041256"], ["0x1006f158", "push 0x221", "0x10041258"], ["0x1006f15d", "mov ecx, esi", "0x1004125d"], ["0x1006f15f", "call Infocenter::PlayAction (FUNCTION)", "0x1004125f"], ["0x1006f164", "push 1", "0x10041264"], ["0x1006f166", "mov ecx, esi", "0x10041266"], ["0x1006f168", "call Infocenter::UpdateFrameHot (FUNCTION)", "0x10041268"], ["0x1006f16d", "lea ecx, [esi + 0x10c]", "0x1004126d"], ["0x1006f173", "push ebx", "0x10041273"], ["0x1006f174", "mov eax, dword ptr [ecx]", "0x10041274"], ["0x1006f176", "call dword ptr [eax + 4]", "0x10041276"], ["0x1006f179", "test eax, eax", "0x10041279"]]}, {"orig": [["0x1006f17b", "jne 0x2ef"], ["0x1006f181", "mov edx, dword ptr [esi + 0xc]"]], "recomp": [["0x1004127b", "jne 0x2ed"]]}, {"both": [["0x1006f184", "mov ecx, dword ptr [edi + 0x20]", "0x10041281"]]}, {"orig": [["0x1006f187", "cmp edx, ecx"]], "recomp": [["0x10041284", "cmp dword ptr [esi + 0xc], ecx"]]}, {"both": [["0x1006f189", "je 0xe", "0x10041287"]]}, {"orig": [["0x1006f18b", "mov ebx, dword ptr [g_introScript (DATA)]"], ["0x1006f191", "cmp dword ptr [ebx], ecx"]], "recomp": [["0x10041289", "mov edx, dword ptr [g_introScript (DATA)]"], ["0x1004128f", "cmp dword ptr [edx], ecx"]]}, {"both": [["0x1006f193", "jne 0x2d7", "0x10041291"], ["0x1006f199", "cmp dword ptr [edi + 0x1c], 0x202", "0x10041297"], ["0x1006f1a0", "jne 0x1a", "0x1004129e"], ["0x1006f1a2", "push 0", "0x100412a0"]]}, {"orig": [["0x1006f1a4", "push edx"]], "recomp": [["0x100412a2", "push ecx"]]}, {"both": [["0x1006f1a5", "push 0x10", "0x100412a3"], ["0x1006f1a7", "call ControlManager (FUNCTION)", "0x100412a5"], ["0x1006f1ac", "mov ecx, eax", "0x100412aa"], ["0x1006f1ae", "call LegoControlManager::FUN_100293c0 (FUNCTION)", "0x100412ac"], ["0x1006f1b3", "mov word ptr [esi + 0x1d6], 0", "0x100412b1"], ["0x1006f1bc", "mov edx, dword ptr [esi + 0x100]", "0x100412ba"], ["0x1006f1c2", "lea eax, [edx + 0x74]", "0x100412c0"], ["0x1006f1c5", "mov ebx, dword ptr [eax]", "0x100412c3"], ["0x1006f1c7", "cmp ebx, 0xc", "0x100412c5"], ["0x1006f1ca", "ja 0x29b", "0x100412c8"], ["0x1006f1d0", "xor ecx, ecx", "0x100412ce"]]}, {"orig": [["0x1006f1d2", "mov cl, byte ptr [ebx + 0x1006f4ac]"], ["0x1006f1d8", "jmp dword ptr [ecx*4 + 0x1006f48c]"]], "recomp": [["0x100412d0", "mov cl, byte ptr [ebx + 0x100415a8]"], ["0x100412d6", "jmp dword ptr [ecx*4 + 0x10041588]"]]}, {"both": [["0x1006f1df", "mov eax, dword ptr [esi + 0x108]", "0x100412dd"], ["0x1006f1e5", "cmp eax, 5", "0x100412e3"], ["0x1006f1e8", "ja 0x7", "0x100412e6"]]}, {"orig": [["0x1006f1ea", "jmp dword ptr [eax*4 + 0x1006f4bc]"]], "recomp": [["0x100412e8", "jmp dword ptr [eax*4 + 0x100415b8]"]]}, {"both": [["0x1006f1f1", "mov ecx, esi", "0x100412ef"], ["0x1006f1f3", "call Infocenter::StopCutscene (FUNCTION)", "0x100412f1"], ["0x1006f1f8", "mov eax, dword ptr [esi + 0x100]", "0x100412f6"], ["0x1006f1fe", "push 0x1f4", "0x100412fc"], ["0x1006f203", "mov ecx, esi", "0x10041301"], ["0x1006f205", "mov dword ptr [eax + 0x74], 0xb", "0x10041303"], ["0x1006f20c", "call Infocenter::PlayAction (FUNCTION)", "0x1004130a"], ["0x1006f211", "mov eax, dword ptr [esi + 0x100]", "0x1004130f"], ["0x1006f217", "mov dword ptr [esi + 0x108], 0xffffffff", "0x10041315"], ["0x1006f221", "cmp dword ptr [eax + 0x78], 0", "0x1004131f"]]}]], ["@@ -0x1006f45b,56 +0x10041559,47 @@", [{"both": [["0x1006f45b", "push 0x32", "0x10041559"], ["0x1006f45d", "push 3", "0x1004155b"], ["0x1006f45f", "call TransitionManager (FUNCTION)", "0x1004155d"], ["0x1006f464", "mov ecx, eax", "0x10041562"], ["0x1006f466", "call MxTransitionManager::StartTransition (FUNCTION)", "0x10041564"], ["0x1006f46b", "mov eax, 1", "0x10041569"], ["0x1006f470", "pop edi", "0x1004156e"], ["0x1006f471", "pop esi", "0x1004156f"], ["0x1006f472", "pop ebx", "0x10041570"], ["0x1006f473", "ret 4", "0x10041571"]]}, {"orig": [["0x1006f476", "mov edi, edi"], ["0x1006f478", "cmp al, 0xf1"], ["0x1006f47a", "push es"], ["0x1006f47b", "adc byte ptr [ebx - 0xf], al"], ["0x1006f47e", "push es"], ["0x1006f47f", "adc byte ptr [edx - 0xf], cl"], ["0x1006f482", "push es"], ["0x1006f483", "adc byte ptr [ecx - 0xf], dl"], ["0x1006f486", "push es"], ["0x1006f487", "adc byte ptr [eax - 0xf], bl"], ["0x1006f48a", "push es"], ["0x1006f48b", "adc bh, bl"], ["0x1006f48d", "int1 "], ["0x1006f48e", "push es"], ["0x1006f48f", "adc ch, dl"], ["0x1006f491", "push es"], ["0x1006f493", "adc byte ptr [edx], bl"], ["0x1006f495", "push es"], ["0x1006f497", "adc byte ptr [ecx - 0xd], dl"], ["0x1006f49a", "push es"], ["0x1006f49b", "adc byte ptr [esi - 0x12eff90d], cl"], ["0x1006f4a1", "push es"], ["0x1006f4a3", "adc byte ptr [esp + esi*8 + 6], cl"], ["0x1006f4a7", "adc byte ptr [ebx - 0xc], ch"], ["0x1006f4aa", "push es"], ["0x1006f4ab", "adc byte ptr [eax], al"], ["0x1006f4ad", "add dword ptr [edx], eax"], ["0x1006f4af", "pop es"], ["0x1006f4b0", "add eax, dword ptr [edi + eax]"]], "recomp": [["0x10041574", "cmp al, 0x12"], ["0x10041576", "add al, 0x10"], ["0x10041578", "inc ebx"], ["0x10041579", "adc al, byte ptr [eax + edx]"], ["0x1004157c", "dec edx"], ["0x1004157d", "adc al, byte ptr [eax + edx]"], ["0x10041580", "push ecx"], ["0x10041581", "adc al, byte ptr [eax + edx]"], ["0x10041584", "pop eax"], ["0x10041585", "adc al, byte ptr [eax + edx]"], ["0x10041588", "fst qword ptr [edx]"], ["0x1004158a", "add al, 0x10"], ["0x1004158c", "rcl dword ptr [ebx], cl"], ["0x1004158e", "add al, 0x10"], ["0x10041590", "sbb byte ptr [esp + eax], dl"], ["0x10041593", "adc byte ptr [edi + 0x14], cl"], ["0x10041596", "add al, 0x10"], ["0x10041598", "mov word ptr [esp + eax], ss"], ["0x1004159b", "adc bl, ch"], ["0x1004159d", "adc al, 4"], ["0x1004159f", "adc byte ptr [edx + 0x15], cl"], ["0x100415a2", "add al, 0x10"], ["0x100415a4", "imul edx, dword ptr [<OFFSET22>], 0x4030702"], ["0x100415ae", "pop es"]]}, {"both": [["0x1006f4b3", "pop es", "0x100415af"], ["0x1006f4b4", "pop es", "0x100415b0"], ["0x1006f4b5", "pop es", "0x100415b1"], ["0x1006f4b6", "pop es", "0x100415b2"], ["0x1006f4b7", "add eax, 0x498d06", "0x100415b3"]]}, {"orig": [["0x1006f4bc", "aas "], ["0x1006f4bd", "push es"], ["0x1006f4bf", "adc byte ptr [ebp - 0xe], dl"], ["0x1006f4c2", "push es"], ["0x1006f4c3", "adc cl, dh"], ["0x1006f4c5", "int1 "], ["0x1006f4c6", "push es"], ["0x1006f4c7", "adc cl, dh"], ["0x1006f4c9", "int1 "], ["0x1006f4ca", "push es"], ["0x1006f4cb", "adc byte ptr [ebx - 0xe], ch"], ["0x1006f4ce", "push es"]], "recomp": [["0x100415b8", "cmp eax, 0x53100413"], ["0x100415bd", "adc eax, dword ptr [eax + edx]"], ["0x100415c0", "out dx, eax"], ["0x100415c1", "adc al, byte ptr [eax + edx]"], ["0x100415c4", "out dx, eax"], ["0x100415c5", "adc al, byte ptr [eax + edx]"], ["0x100415c8", "imul edx, dword ptr [ebx], 0x139e1004"], ["0x100415ce", "add al, 0x10"]]}]]]}, {"address": "0x1006f4e0", "recomp": "0x100415d0", "name": "Infocenter::ReadyWorld", "matching": 0.8307291666666666, "diff": [["@@ -0x1006f515,64 +0x10041605,73 @@", [{"both": [["0x1006f515", "push 'BackgroundRed_Bitmap' (STRING)", "0x10041605"], ["0x1006f51a", "push 'MxStillPresenter' (STRING)", "0x1004160a"], ["0x1006f51f", "mov ecx, esi", "0x1004160f"], ["0x1006f521", "call LegoWorld::Find (FUNCTION)", "0x10041611"], ["0x1006f526", "mov edi, eax", "0x10041616"], ["0x1006f528", "call GameState (FUNCTION)", "0x10041618"], ["0x1006f52d", "mov eax, dword ptr [eax + 0x10]", "0x1004161d"], ["0x1006f530", "cmp eax, ebp", "0x10041620"], ["0x1006f532", "je 0x17", "0x10041622"], ["0x1006f534", "cmp eax, 1", "0x10041624"]]}, {"orig": [["0x1006f537", "je 0x172"]], "recomp": [["0x10041627", "je 0x181"]]}, {"both": [["0x1006f53d", "cmp eax, 2", "0x1004162d"]]}, {"orig": [["0x1006f540", "je 0x269"], ["0x1006f546", "jmp 0x40a"]], "recomp": [["0x10041630", "je 0x28d"], ["0x10041636", "jmp 0x42f"]]}, {"both": [["0x1006f54b", "push 1", "0x1004163b"], ["0x1006f54d", "mov eax, dword ptr [ebx]", "0x1004163d"], ["0x1006f54f", "mov ecx, ebx", "0x1004163f"], ["0x1006f551", "call dword ptr [eax + 0x54]", "0x10041641"], ["0x1006f554", "mov ecx, esi", "0x10041644"], ["0x1006f556", "call Infocenter::InitializeBitmaps (FUNCTION)", "0x10041646"], ["0x1006f55b", "mov eax, dword ptr [esi + 0x100]", "0x1004164b"], ["0x1006f561", "mov ecx, dword ptr [eax + 0x74]", "0x10041651"], ["0x1006f564", "add eax, 0x74", "0x10041654"], ["0x1006f567", "sub ecx, 3", "0x10041657"], ["0x1006f56a", "cmp ecx, 0xc", "0x1004165a"], ["0x1006f56d", "ja 0xf", "0x1004165d"], ["0x1006f56f", "xor edx, edx", "0x1004165f"]]}, {"orig": [["0x1006f571", "mov dl, byte ptr [ecx + 0x1006f988]"], ["0x1006f577", "jmp dword ptr [edx*4 + 0x1006f974]"], ["0x1006f57e", "push 0xb"], ["0x1006f580", "call PlayMusic (FUNCTION)"], ["0x1006f585", "add esp, 4"], ["0x1006f588", "mov edi, dword ptr [esi + 0x100]"], ["0x1006f58e", "call GameState (FUNCTION)"], ["0x1006f593", "mov eax, dword ptr [eax + 0x10]"], ["0x1006f596", "lea edx, [eax + eax*2]"], ["0x1006f599", "lea ecx, [edi + edx*4 + 0x20]"]], "recomp": [["0x10041661", "mov dl, byte ptr [ecx + 0x10041a9c]"], ["0x10041667", "jmp dword ptr [edx*4 + 0x10041a88]"], ["0x1004166e", "push 0xb"], ["0x10041670", "call PlayMusic (FUNCTION)"], ["0x10041675", "add esp, 4"], ["0x10041678", "call GameState (FUNCTION)"], ["0x1004167d", "mov ecx, dword ptr [eax + 0x10]"], ["0x10041680", "mov eax, dword ptr [esi + 0x100]"], ["0x10041686", "lea edx, [ecx + ecx*2]"], ["0x10041689", "lea ecx, [eax + edx*4 + 0x20]"]]}, {"both": [["0x1006f59d", "call LegoState::Playlist::Next (FUNCTION)", "0x1004168d"], ["0x1006f5a2", "push eax", "0x10041692"], ["0x1006f5a3", "mov edi, eax", "0x10041693"], ["0x1006f5a5", "mov ecx, esi", "0x10041695"], ["0x1006f5a7", "call Infocenter::PlayAction (FUNCTION)", "0x10041697"], ["0x1006f5ac", "cmp edi, 0x202", "0x1004169c"], ["0x1006f5b2", "jne 0x9", "0x100416a2"], ["0x1006f5b4", "mov word ptr [esi + 0x1d6], 1", "0x100416a4"], ["0x1006f5bd", "push 7", "0x100416ad"], ["0x1006f5bf", "push 0", "0x100416af"], ["0x1006f5c1", "call FUN_10015820 (FUNCTION)", "0x100416b1"], ["0x1006f5c6", "add esp, 8", "0x100416b6"], ["0x1006f5c9", "mov eax, dword ptr [esi + 0x100]", "0x100416b9"], ["0x1006f5cf", "cmp dword ptr [eax + 0x78], 0", "0x100416bf"]]}, {"orig": [["0x1006f5d3", "jne 0x37c"]], "recomp": [["0x100416c3", "jne 0x9"]]}, {"both": [["0x1006f5d9", "mov word ptr [esi + 0x1d2], 1", "0x100416c5"]]}, {"orig": [["0x1006f5e2", "jmp 0x36e"]], "recomp": [["0x100416ce", "mov dword ptr [eax + 0x74], 0xb"], ["0x100416d5", "push 7"], ["0x100416d7", "push 0"], ["0x100416d9", "call FUN_10015820 (FUNCTION)"], ["0x100416de", "add esp, 8"], ["0x100416e1", "pop ebp"], ["0x100416e2", "pop edi"], ["0x100416e3", "pop esi"], ["0x100416e4", "pop ebx"], ["0x100416e5", "ret "]]}, {"both": [["0x1006f5e7", "push 1", "0x100416e6"], ["0x1006f5e9", "mov ecx, esi", "0x100416e8"], ["0x1006f5eb", "push 0", "0x100416ea"], ["0x1006f5ed", "call Infocenter::PlayCutscene (FUNCTION)", "0x100416ec"], ["0x1006f5f2", "mov eax, dword ptr [esi + 0x100]", "0x100416f1"], ["0x1006f5f8", "pop ebp", "0x100416f7"], ["0x1006f5f9", "pop edi", "0x100416f8"], ["0x1006f5fa", "pop esi", "0x100416f9"], ["0x1006f5fb", "mov dword ptr [eax + 0x74], 0", "0x100416fa"], ["0x1006f602", "pop ebx", "0x10041701"]]}]], ["@@ -0x1006f723,43 +0x10041822,48 @@", [{"both": [["0x1006f723", "call Infocenter::PlayCutscene (FUNCTION)", "0x10041822"], ["0x1006f728", "mov eax, dword ptr [esi + 0x100]", "0x10041827"], ["0x1006f72e", "pop ebp", "0x1004182d"], ["0x1006f72f", "pop edi", "0x1004182e"], ["0x1006f730", "pop esi", "0x1004182f"], ["0x1006f731", "mov dword ptr [eax + 0x74], 0", "0x10041830"], ["0x1006f738", "pop ebx", "0x10041837"], ["0x1006f739", "ret ", "0x10041838"], ["0x1006f73a", "mov eax, dword ptr [esi + 0x100]", "0x10041839"], ["0x1006f740", "cmp dword ptr [eax + 0x74], 4", "0x1004183f"]]}, {"orig": [["0x1006f744", "jne 0x1d6"]], "recomp": [["0x10041843", "jne 0x1ec"]]}, {"both": [["0x1006f74a", "push 1", "0x10041849"], ["0x1006f74c", "mov eax, dword ptr [edi]", "0x1004184b"], ["0x1006f74e", "mov ecx, edi", "0x1004184d"], ["0x1006f750", "call dword ptr [eax + 0x54]", "0x1004184f"], ["0x1006f753", "call GameState (FUNCTION)", "0x10041852"], ["0x1006f758", "mov edi, eax", "0x10041857"], ["0x1006f75a", "call GameState (FUNCTION)", "0x10041859"]]}, {"orig": [["0x1006f75f", "mov ecx, dword ptr [edi + 0x14]"], ["0x1006f762", "cmp dword ptr [eax + 0x10], ecx"]], "recomp": [["0x1004185e", "mov ecx, dword ptr [edi + 0x10]"], ["0x10041861", "cmp dword ptr [eax + 0x14], ecx"]]}, {"both": [["0x1006f765", "jne 0x2c", "0x10041864"], ["0x1006f767", "call GameState (FUNCTION)", "0x10041866"], ["0x1006f76c", "mov dword ptr [eax + 0x424], 0x2e", "0x1004186b"], ["0x1006f776", "push 0x2e", "0x10041875"], ["0x1006f778", "call GameState (FUNCTION)", "0x10041877"], ["0x1006f77d", "mov ecx, eax", "0x1004187c"], ["0x1006f77f", "call LegoGameState::StopArea (FUNCTION)", "0x1004187e"], ["0x1006f784", "call GameState (FUNCTION)", "0x10041883"], ["0x1006f789", "mov dword ptr [eax + 0x424], 2", "0x10041888"], ["0x1006f793", "mov eax, dword ptr [esi + 0x100]", "0x10041892"], ["0x1006f799", "mov dword ptr [eax + 0x74], 5", "0x10041898"], ["0x1006f7a0", "mov dword ptr [esi + 0x104], 0x2e", "0x1004189f"]]}, {"orig": [["0x1006f7aa", "jmp 0x12b"]], "recomp": [["0x100418a9", "call GameState (FUNCTION)"], ["0x100418ae", "mov eax, dword ptr [eax + 0x10]"], ["0x100418b1", "mov ecx, dword ptr [esi + 0x100]"], ["0x100418b7", "lea edx, [eax + eax*2]"], ["0x100418ba", "lea ecx, [ecx + edx*4 + 0x20]"], ["0x100418be", "jmp 0x141"]]}, {"both": [["0x1006f7af", "mov eax, dword ptr [esi + 0x100]", "0x100418c3"], ["0x1006f7b5", "cmp dword ptr [eax + 0x74], 8", "0x100418c9"], ["0x1006f7b9", "jne 0x30", "0x100418cd"], ["0x1006f7bb", "push 0xb", "0x100418cf"], ["0x1006f7bd", "call PlayMusic (FUNCTION)", "0x100418d1"], ["0x1006f7c2", "add esp, 4", "0x100418d6"], ["0x1006f7c5", "mov eax, dword ptr [edi]", "0x100418d9"], ["0x1006f7c7", "mov ecx, edi", "0x100418db"], ["0x1006f7c9", "push 1", "0x100418dd"], ["0x1006f7cb", "call dword ptr [eax + 0x54]", "0x100418df"]]}]], ["@@ -0x1006f7ea,41 +0x100418fe,42 @@", [{"both": [["0x1006f7ea", "ret ", "0x100418fe"], ["0x1006f7eb", "push 'Act3State' (STRING)", "0x100418ff"], ["0x1006f7f0", "call GameState (FUNCTION)", "0x10041904"], ["0x1006f7f5", "mov ecx, eax", "0x10041909"], ["0x1006f7f7", "call LegoGameState::GetState (FUNCTION)", "0x1004190b"], ["0x1006f7fc", "mov ebp, eax", "0x10041910"], ["0x1006f7fe", "call GameState (FUNCTION)", "0x10041912"], ["0x1006f803", "mov ecx, eax", "0x10041917"], ["0x1006f805", "call LegoGameState::FindLoadedAct (FUNCTION)", "0x10041919"], ["0x1006f80a", "test ebp, ebp", "0x1004191e"]]}, {"orig": [["0x1006f80c", "je 0x5c"], ["0x1006f80e", "cmp dword ptr [ebp + 8], 3"]], "recomp": [["0x10041920", "je 0x5d"], ["0x10041922", "mov eax, dword ptr [ebp + 8]"], ["0x10041925", "cmp eax, 3"]]}, {"both": [["0x1006f812", "jne 0x26", "0x10041928"], ["0x1006f814", "push 1", "0x1004192a"], ["0x1006f816", "mov eax, dword ptr [ebx]", "0x1004192c"], ["0x1006f818", "mov ecx, ebx", "0x1004192e"], ["0x1006f81a", "call dword ptr [eax + 0x54]", "0x10041930"], ["0x1006f81d", "push 1", "0x10041933"], ["0x1006f81f", "mov ecx, esi", "0x10041935"], ["0x1006f821", "push 4", "0x10041937"], ["0x1006f823", "call Infocenter::PlayCutscene (FUNCTION)", "0x10041939"], ["0x1006f828", "mov eax, dword ptr [esi + 0x100]", "0x1004193e"], ["0x1006f82e", "pop ebp", "0x10041944"], ["0x1006f82f", "pop edi", "0x10041945"], ["0x1006f830", "pop esi", "0x10041946"], ["0x1006f831", "mov dword ptr [eax + 0x74], 0", "0x10041947"], ["0x1006f838", "pop ebx", "0x1004194e"], ["0x1006f839", "ret ", "0x1004194f"], ["0x1006f83a", "test ebp, ebp", "0x10041950"]]}, {"orig": [["0x1006f83c", "je 0x2c"], ["0x1006f83e", "cmp dword ptr [ebp + 8], 2"]], "recomp": [["0x10041952", "je 0x2b"], ["0x10041954", "cmp eax, 2"]]}, {"both": [["0x1006f842", "jne 0x26", "0x10041957"], ["0x1006f844", "push 1", "0x10041959"], ["0x1006f846", "mov eax, dword ptr [ebx]", "0x1004195b"], ["0x1006f848", "mov ecx, ebx", "0x1004195d"], ["0x1006f84a", "call dword ptr [eax + 0x54]", "0x1004195f"], ["0x1006f84d", "push 1", "0x10041962"], ["0x1006f84f", "mov ecx, esi", "0x10041964"], ["0x1006f851", "push 5", "0x10041966"], ["0x1006f853", "call Infocenter::PlayCutscene (FUNCTION)", "0x10041968"], ["0x1006f858", "mov eax, dword ptr [esi + 0x100]", "0x1004196d"]]}]], ["@@ -0x1006f86a,110 +0x1004197f,91 @@", [{"both": [["0x1006f86a", "mov eax, dword ptr [esi + 0x100]", "0x1004197f"], ["0x1006f870", "cmp dword ptr [eax + 0x74], 4", "0x10041985"], ["0x1006f874", "jne 0xa6", "0x10041989"], ["0x1006f87a", "push 1", "0x1004198f"], ["0x1006f87c", "mov eax, dword ptr [edi]", "0x10041991"], ["0x1006f87e", "mov ecx, edi", "0x10041993"], ["0x1006f880", "call dword ptr [eax + 0x54]", "0x10041995"], ["0x1006f883", "call GameState (FUNCTION)", "0x10041998"], ["0x1006f888", "mov edi, eax", "0x1004199d"], ["0x1006f88a", "call GameState (FUNCTION)", "0x1004199f"]]}, {"orig": [["0x1006f88f", "mov eax, dword ptr [eax + 0x10]"], ["0x1006f892", "cmp dword ptr [edi + 0x14], eax"]], "recomp": [["0x100419a4", "mov ecx, dword ptr [edi + 0x10]"], ["0x100419a7", "cmp dword ptr [eax + 0x14], ecx"]]}, {"both": [["0x1006f895", "jne 0x2c", "0x100419aa"], ["0x1006f897", "call GameState (FUNCTION)", "0x100419ac"], ["0x1006f89c", "mov dword ptr [eax + 0x424], 0x2f", "0x100419b1"], ["0x1006f8a6", "push 0x2f", "0x100419bb"], ["0x1006f8a8", "call GameState (FUNCTION)", "0x100419bd"], ["0x1006f8ad", "mov ecx, eax", "0x100419c2"], ["0x1006f8af", "call LegoGameState::StopArea (FUNCTION)", "0x100419c4"], ["0x1006f8b4", "call GameState (FUNCTION)", "0x100419c9"], ["0x1006f8b9", "mov dword ptr [eax + 0x424], 2", "0x100419ce"], ["0x1006f8c3", "mov eax, dword ptr [esi + 0x100]", "0x100419d8"], ["0x1006f8c9", "mov dword ptr [eax + 0x74], 5", "0x100419de"], ["0x1006f8d0", "mov dword ptr [esi + 0x104], 0x2f", "0x100419e5"]]}, {"orig": [["0x1006f8da", "mov edi, dword ptr [esi + 0x100]"]], "recomp": []}, {"both": [["0x1006f8e0", "call GameState (FUNCTION)", "0x100419ef"], ["0x1006f8e5", "mov ecx, dword ptr [eax + 0x10]", "0x100419f4"]]}, {"orig": [["0x1006f8e8", "lea eax, [ecx + ecx*2]"], ["0x1006f8eb", "lea ecx, [edi + eax*4 + 0x20]"]], "recomp": [["0x100419f7", "mov eax, dword ptr [esi + 0x100]"], ["0x100419fd", "lea edx, [ecx + ecx*2]"], ["0x10041a00", "lea ecx, [eax + edx*4 + 0x20]"]]}, {"both": [["0x1006f8ef", "call LegoState::Playlist::Next (FUNCTION)", "0x10041a04"], ["0x1006f8f4", "push eax", "0x10041a09"], ["0x1006f8f5", "mov ecx, esi", "0x10041a0a"], ["0x1006f8f7", "call Infocenter::PlayAction (FUNCTION)", "0x10041a0c"], ["0x1006f8fc", "call InputManager (FUNCTION)", "0x10041a11"], ["0x1006f901", "mov byte ptr [eax + 0x88], 1", "0x10041a16"], ["0x1006f908", "mov byte ptr [eax + 0x336], 0", "0x10041a1d"], ["0x1006f90f", "push 7", "0x10041a24"], ["0x1006f911", "push 0", "0x10041a26"], ["0x1006f913", "call FUN_10015820 (FUNCTION)", "0x10041a28"], ["0x1006f918", "add esp, 8", "0x10041a2d"], ["0x1006f91b", "pop ebp", "0x10041a30"], ["0x1006f91c", "pop edi", "0x10041a31"], ["0x1006f91d", "pop esi", "0x10041a32"], ["0x1006f91e", "pop ebx", "0x10041a33"], ["0x1006f91f", "ret ", "0x10041a34"], ["0x1006f920", "push 0xb", "0x10041a35"], ["0x1006f922", "call PlayMusic (FUNCTION)", "0x10041a37"], ["0x1006f927", "add esp, 4", "0x10041a3c"]]}, {"orig": [["0x1006f92a", "mov ebx, dword ptr [esi + 0x100]"], ["0x1006f930", "call GameState (FUNCTION)"], ["0x1006f935", "mov eax, dword ptr [eax + 0x10]"], ["0x1006f938", "lea edx, [eax + eax*2]"], ["0x1006f93b", "lea ecx, [ebx + edx*4 + 0x20]"]], "recomp": [["0x10041a3f", "call GameState (FUNCTION)"], ["0x10041a44", "mov ecx, dword ptr [eax + 0x10]"], ["0x10041a47", "mov eax, dword ptr [esi + 0x100]"], ["0x10041a4d", "lea edx, [ecx + ecx*2]"], ["0x10041a50", "lea ecx, [eax + edx*4 + 0x20]"]]}, {"both": [["0x1006f93f", "call LegoState::Playlist::Next (FUNCTION)", "0x10041a54"], ["0x1006f944", "push eax", "0x10041a59"], ["0x1006f945", "mov ecx, esi", "0x10041a5a"], ["0x1006f947", "call Infocenter::PlayAction (FUNCTION)", "0x10041a5c"], ["0x1006f94c", "push 1", "0x10041a61"], ["0x1006f94e", "mov ebx, dword ptr [edi]", "0x10041a63"], ["0x1006f950", "mov ecx, edi", "0x10041a65"], ["0x1006f952", "call dword ptr [ebx + 0x54]", "0x10041a67"], ["0x1006f955", "mov eax, dword ptr [esi + 0x100]", "0x10041a6a"], ["0x1006f95b", "push 7", "0x10041a70"], ["0x1006f95d", "push 0", "0x10041a72"], ["0x1006f95f", "mov dword ptr [eax + 0x74], 0xb", "0x10041a74"], ["0x1006f966", "call FUN_10015820 (FUNCTION)", "0x10041a7b"], ["0x1006f96b", "add esp, 8", "0x10041a80"], ["0x1006f96e", "pop ebp", "0x10041a83"], ["0x1006f96f", "pop edi", "0x10041a84"], ["0x1006f970", "pop esi", "0x10041a85"], ["0x1006f971", "pop ebx", "0x10041a86"], ["0x1006f972", "ret ", "0x10041a87"]]}, {"orig": [["0x1006f973", "nop "], ["0x1006f974", "out 0xf5, eax"], ["0x1006f976", "push es"], ["0x1006f977", "adc byte ptr [esi + esi*8], al"], ["0x1006f97a", "push es"], ["0x1006f97b", "adc byte ptr [esi - 0xa], al"], ["0x1006f97e", "push es"], ["0x1006f97f", "adc byte ptr [ebp - 0xa], ch"], ["0x1006f982", "push es"], ["0x1006f983", "adc byte ptr [esi - 0xb], bh"], ["0x1006f986", "push es"], ["0x1006f987", "adc byte ptr [eax], al"], ["0x1006f989", "add dword ptr [esp + eax], eax"]], "recomp": [["0x10041a88", "out 0x16, al"], ["0x10041a8a", "add al, 0x10"], ["0x10041a8c", "add edx, dword ptr [edi]"], ["0x10041a8e", "add al, 0x10"], ["0x10041a90", "inc ebp"], ["0x10041a91", "pop ss"], ["0x10041a92", "add al, 0x10"], ["0x10041a94", "insb byte ptr es:[edi], dx"], ["0x10041a95", "pop ss"], ["0x10041a96", "add al, 0x10"], ["0x10041a98", "outsb dx, byte ptr [esi]"], ["0x10041a99", "push ss"], ["0x10041a9a", "add al, 0x10"], ["0x10041a9c", "add byte ptr [ecx], al"], ["0x10041a9e", "add al, 4"]]}, {"both": [["0x1006f98c", "add al, 2", "0x10041aa0"], ["0x1006f98e", "add al, 4", "0x10041aa2"], ["0x1006f990", "add al, 4", "0x10041aa4"], ["0x1006f992", "add al, 4", "0x10041aa6"]]}, {"orig": [["0x1006f994", "add ecx, esp"], ["0x1006f996", "int3 "], ["0x1006f997", "int3 "], ["0x1006f998", "int3 "], ["0x1006f999", "int3 "], ["0x1006f99a", "int3 "], ["0x1006f99b", "int3 "], ["0x1006f99c", "int3 "], ["0x1006f99d", "int3 "], ["0x1006f99e", "int3 "], ["0x1006f99f", "int3 "], ["0x1006f9a0", "push ebx"], ["0x1006f9a1", "push esi"], ["0x1006f9a2", "push edi"], ["0x1006f9a3", "mov esi, ecx"], ["0x1006f9a5", "push 1"], ["0x1006f9a7", "lea ecx, [esi + 0x10c]"], ["0x1006f9ad", "lea edi, [esi + 0xc]"], ["0x1006f9b0", "call Radio::Initialize (FUNCTION)"], ["0x1006f9b5", "push 1"], ["0x1006f9b7", "mov ecx, esi"]], "recomp": []}]]]}, {"address": "0x1006f9a0", "recomp": "0x10041ab0", "name": "Infocenter::InitializeBitmaps", "matching": 1.0, "diff": []}, {"address": "0x1006fd00", "recomp": "0x10041e10", "name": "Infocenter::HandleMouseMove", "matching": 0.8181818181818182, "diff": [["@@ -0x1006fd00,51 +0x10041e10,51 @@", [{"both": [["0x1006fd00", "push ebx", "0x10041e10"], ["0x1006fd01", "push esi", "0x10041e11"], ["0x1006fd02", "push edi", "0x10041e12"]]}, {"orig": [["0x1006fd03", "mov esi, ecx"]], "recomp": []}, {"both": [["0x1006fd05", "push ebp", "0x10041e13"]]}, {"orig": [["0x1006fd06", "mov ecx, dword ptr [esi + 0x11c]"]], "recomp": [["0x10041e14", "mov edi, ecx"], ["0x10041e16", "mov ecx, dword ptr [ecx + 0x11c]"]]}, {"both": [["0x1006fd0c", "test ecx, ecx", "0x10041e1c"], ["0x1006fd0e", "je 0x82", "0x10041e1e"], ["0x1006fd14", "call MxPresenter::IsEnabled (FUNCTION)", "0x10041e24"], ["0x1006fd19", "test al, al", "0x10041e29"], ["0x1006fd1b", "jne 0x4f", "0x10041e2b"]]}, {"orig": [["0x1006fd1d", "mov eax, dword ptr [esi + 0x11c]"], ["0x1006fd23", "mov edi, dword ptr [eax + 0x18]"]], "recomp": [["0x10041e2d", "mov eax, dword ptr [edi + 0x11c]"], ["0x10041e33", "mov esi, dword ptr [eax + 0x18]"]]}, {"both": [["0x1006fd26", "mov dword ptr [eax + 0x18], 0x3e8", "0x10041e36"], ["0x1006fd2d", "add eax, 0x18", "0x10041e3d"], ["0x1006fd30", "call VideoManager (FUNCTION)", "0x10041e40"], ["0x1006fd35", "mov ecx, eax", "0x10041e45"], ["0x1006fd37", "call MxVideoManager::SortPresenterList (FUNCTION)", "0x10041e47"]]}, {"orig": [["0x1006fd3c", "mov ecx, dword ptr [esi + 0x11c]"]], "recomp": [["0x10041e4c", "mov ecx, dword ptr [edi + 0x11c]"]]}, {"both": [["0x1006fd42", "push 1", "0x10041e52"], ["0x1006fd44", "mov eax, dword ptr [ecx]", "0x10041e54"], ["0x1006fd46", "call dword ptr [eax + 0x54]", "0x10041e56"]]}, {"orig": [["0x1006fd49", "mov ecx, dword ptr [esi + 0x11c]"]], "recomp": [["0x10041e59", "mov ecx, dword ptr [edi + 0x11c]"]]}, {"both": [["0x1006fd4f", "mov ebp, dword ptr [esp + 0x18]", "0x10041e5f"], ["0x1006fd53", "mov ebx, dword ptr [esp + 0x14]", "0x10041e63"], ["0x1006fd57", "push ebp", "0x10041e67"], ["0x1006fd58", "push ebx", "0x10041e68"], ["0x1006fd59", "mov eax, dword ptr [ecx]", "0x10041e69"], ["0x1006fd5b", "call dword ptr [eax + 0x88]", "0x10041e6b"]]}, {"orig": [["0x1006fd61", "mov eax, dword ptr [esi + 0x11c]"], ["0x1006fd67", "mov dword ptr [eax + 0x18], edi"]], "recomp": [["0x10041e71", "mov eax, dword ptr [edi + 0x11c]"], ["0x10041e77", "mov dword ptr [eax + 0x18], esi"]]}, {"both": [["0x1006fd6a", "jmp 0x18", "0x10041e7a"]]}, {"orig": [["0x1006fd6c", "mov ecx, dword ptr [esi + 0x11c]"]], "recomp": [["0x10041e7c", "mov ecx, dword ptr [edi + 0x11c]"]]}, {"both": [["0x1006fd72", "mov ebp, dword ptr [esp + 0x18]", "0x10041e82"], ["0x1006fd76", "mov ebx, dword ptr [esp + 0x14]", "0x10041e86"], ["0x1006fd7a", "push ebp", "0x10041e8a"], ["0x1006fd7b", "push ebx", "0x10041e8b"], ["0x1006fd7c", "mov eax, dword ptr [ecx]", "0x10041e8c"], ["0x1006fd7e", "call dword ptr [eax + 0x88]", "0x10041e8e"], ["0x1006fd84", "push ebp", "0x10041e94"]]}, {"orig": [["0x1006fd85", "mov ecx, esi"]], "recomp": [["0x10041e95", "mov ecx, edi"]]}, {"both": [["0x1006fd87", "push ebx", "0x10041e97"], ["0x1006fd88", "call Infocenter::FUN_10070d10 (FUNCTION)", "0x10041e98"], ["0x1006fd8d", "mov al, 1", "0x10041e9d"], ["0x1006fd8f", "pop ebp", "0x10041e9f"], ["0x1006fd90", "pop edi", "0x10041ea0"], ["0x1006fd91", "pop esi", "0x10041ea1"], ["0x1006fd92", "pop ebx", "0x10041ea2"], ["0x1006fd93", "ret 8", "0x10041ea3"], ["0x1006fd96", "xor al, al", "0x10041ea6"], ["0x1006fd98", "pop ebp", "0x10041ea8"]]}]]]}, {"address": "0x1006fda0", "recomp": "0x10041eb0", "name": "Infocenter::HandleKeyPress", "matching": 0.4727272727272727, "diff": [["@@ -0x1006fda0,82 +0x10041eb0,83 @@", [{"both": [["0x1006fda0", "push esi", "0x10041eb0"], ["0x1006fda1", "xor eax, eax", "0x10041eb1"], ["0x1006fda3", "push edi", "0x10041eb3"], ["0x1006fda4", "mov esi, ecx", "0x10041eb4"], ["0x1006fda6", "cmp byte ptr [esp + 0xc], 0x20", "0x10041eb6"]]}, {"orig": [["0x1006fdab", "jne 0xb7"]], "recomp": [["0x10041ebb", "jne 0xb2"]]}, {"both": [["0x1006fdb1", "cmp byte ptr [esi + 0xf6], al", "0x10041ec1"]]}, {"orig": [["0x1006fdb7", "je 0xab"]], "recomp": [["0x10041ec7", "je 0xa6"]]}, {"both": [["0x1006fdbd", "mov eax, dword ptr [esi + 0x100]", "0x10041ecd"], ["0x1006fdc3", "mov eax, dword ptr [eax + 0x74]", "0x10041ed3"], ["0x1006fdc6", "cmp eax, 0xd", "0x10041ed6"], ["0x1006fdc9", "ja 0xf", "0x10041ed9"], ["0x1006fdcb", "xor ecx, ecx", "0x10041edb"]]}, {"orig": [["0x1006fdcd", "mov cl, byte ptr [eax + 0x1006fe84]"], ["0x1006fdd3", "jmp dword ptr [ecx*4 + 0x1006fe70]"]], "recomp": [["0x10041edd", "mov cl, byte ptr [eax + 0x10041f8c]"], ["0x10041ee3", "jmp dword ptr [ecx*4 + 0x10041f78]"]]}, {"both": [["0x1006fdda", "mov edi, dword ptr [esi + 0xf8]", "0x10041eea"], ["0x1006fde0", "mov ecx, esi", "0x10041ef0"], ["0x1006fde2", "call Infocenter::StopCurrentAction (FUNCTION)", "0x10041ef2"]]}, {"orig": [["0x1006fde7", "mov edx, dword ptr [esi + 0x100]"], ["0x1006fded", "mov eax, dword ptr [edx + 0x74]"], ["0x1006fdf0", "add edx, 0x74"], ["0x1006fdf3", "sub eax, 5"], ["0x1006fdf6", "cmp eax, 7"]], "recomp": [["0x10041ef7", "mov eax, dword ptr [esi + 0x100]"], ["0x10041efd", "mov edx, dword ptr [eax + 0x74]"], ["0x10041f00", "add eax, 0x74"], ["0x10041f03", "sub edx, 5"], ["0x10041f06", "cmp edx, 7"]]}, {"both": [["0x1006fdf9", "ja 0xf", "0x10041f09"], ["0x1006fdfb", "xor ecx, ecx", "0x10041f0b"]]}, {"orig": [["0x1006fdfd", "mov cl, byte ptr [eax + 0x1006fea8]"], ["0x1006fe03", "jmp dword ptr [ecx*4 + 0x1006fe94]"]], "recomp": [["0x10041f0d", "mov cl, byte ptr [edx + 0x10041fb0]"], ["0x10041f13", "jmp dword ptr [ecx*4 + 0x10041f9c]"], ["0x10041f1a", "pop edi"], ["0x10041f1b", "mov dword ptr [eax], 2"]]}, {"both": [["0x1006fe0a", "mov eax, 1", "0x10041f21"]]}, {"orig": [["0x1006fe0f", "pop edi"]], "recomp": []}, {"both": [["0x1006fe10", "pop esi", "0x10041f26"]]}, {"orig": [["0x1006fe11", "mov dword ptr [edx], 2"]], "recomp": []}, {"both": [["0x1006fe17", "ret 4", "0x10041f27"], ["0x1006fe1a", "mov eax, 1", "0x10041f2a"], ["0x1006fe1f", "mov dword ptr [esi + 0xf8], edi", "0x10041f2f"], ["0x1006fe25", "pop edi", "0x10041f35"], ["0x1006fe26", "pop esi", "0x10041f36"], ["0x1006fe27", "ret 4", "0x10041f37"], ["0x1006fe2a", "mov ecx, esi", "0x10041f3a"], ["0x1006fe2c", "call Infocenter::StopCutscene (FUNCTION)", "0x10041f3c"]]}, {"orig": [["0x1006fe31", "mov eax, dword ptr [esi + 0x100]"], ["0x1006fe37", "mov ecx, 1"], ["0x1006fe3c", "mov dword ptr [eax + 0x74], ecx"], ["0x1006fe3f", "mov eax, dword ptr [esi + 0x100]"], ["0x1006fe45", "cmp dword ptr [eax + 0x78], 0"], ["0x1006fe49", "jne 0x18"], ["0x1006fe4b", "mov word ptr [esi + 0x1d2], cx"]], "recomp": [["0x10041f41", "mov ecx, dword ptr [esi + 0x100]"]]}, {"both": [["0x1006fe52", "mov eax, 1", "0x10041f47"]]}, {"orig": [], "recomp": [["0x10041f4c", "mov dword ptr [ecx + 0x74], eax"], ["0x10041f4f", "mov ecx, dword ptr [esi + 0x100]"], ["0x10041f55", "cmp dword ptr [ecx + 0x78], 0"], ["0x10041f59", "jne 0x13"], ["0x10041f5b", "mov word ptr [esi + 0x1d2], ax"]]}, {"both": [["0x1006fe57", "pop edi", "0x10041f62"], ["0x1006fe58", "pop esi", "0x10041f63"], ["0x1006fe59", "ret 4", "0x10041f64"], ["0x1006fe5c", "mov ecx, esi", "0x10041f67"], ["0x1006fe5e", "call Infocenter::StopCredits (FUNCTION)", "0x10041f69"], ["0x1006fe63", "mov eax, 1", "0x10041f6e"], ["0x1006fe68", "pop edi", "0x10041f73"], ["0x1006fe69", "pop esi", "0x10041f74"], ["0x1006fe6a", "ret 4", "0x10041f75"]]}, {"orig": [["0x1006fe6d", "lea ecx, [ecx]"], ["0x1006fe70", "sub bh, dh"], ["0x1006fe72", "push es"], ["0x1006fe73", "adc byte ptr [ebx - 2], ah"], ["0x1006fe76", "push es"], ["0x1006fe77", "adc byte ptr [ebx - 2], ah"], ["0x1006fe7a", "push es"], ["0x1006fe7b", "adc byte ptr [esi + edi*8 + 6], bl"], ["0x1006fe7f", "adc dl, bl"], ["0x1006fe81", "std "], ["0x1006fe82", "push es"], ["0x1006fe83", "adc byte ptr [eax], al"], ["0x1006fe85", "add dword ptr [esp + eax], eax"], ["0x1006fe88", "add al, byte ptr [esp + eax]"]], "recomp": [["0x10041f78", "cmp bl, byte ptr [edi]"], ["0x10041f7a", "add al, 0x10"], ["0x10041f7c", "outsb dx, byte ptr [esi]"], ["0x10041f7d", "pop ds"], ["0x10041f7e", "add al, 0x10"], ["0x10041f80", "outsb dx, byte ptr [esi]"], ["0x10041f81", "pop ds"], ["0x10041f82", "add al, 0x10"], ["0x10041f84", "pop ds"], ["0x10041f86", "add al, 0x10"], ["0x10041f88", "ljmp 0x401:0x10041e"], ["0x10041f8f", "add al, 2"]]}, {"both": [["0x1006fe8b", "add al, 4", "0x10041f91"], ["0x1006fe8d", "add al, 4", "0x10041f93"], ["0x1006fe8f", "add al, 4", "0x10041f95"]]}, {"orig": [["0x1006fe91", "add ecx, dword ptr [ebx + 0x6fe1aff]"], ["0x1006fe97", "adc byte ptr [ebx - 2], ah"], ["0x1006fe9a", "push es"], ["0x1006fe9b", "adc byte ptr [ebx - 2], ah"], ["0x1006fe9e", "push es"], ["0x1006fe9f", "adc byte ptr [edx], bl"], ["0x1006fea1", "inc byte ptr [esi]"], ["0x1006fea3", "adc byte ptr [edx], cl"], ["0x1006fea5", "inc byte ptr [esi]"]], "recomp": [["0x10041f97", "add al, 4"], ["0x10041f99", "add ecx, dword ptr [ebx + 0x41f2aff]"], ["0x10041f9f", "adc byte ptr [edi + 0x1f], ah"], ["0x10041fa2", "add al, 0x10"], ["0x10041fa4", "pop ds"], ["0x10041fa6", "add al, 0x10"], ["0x10041fa8", "sub bl, byte ptr [edi]"], ["0x10041faa", "add al, 0x10"], ["0x10041fac", "sbb bl, byte ptr [edi]"], ["0x10041fae", "add al, 0x10"], ["0x10041fb0", "add byte ptr [esp + eax], al"], ["0x10041fb3", "add dword ptr [esp + eax], eax"], ["0x10041fb6", "add al, byte ptr [ebx]"]]}]]]}, {"address": "0x1006feb0", "recomp": "0x10041fc0", "name": "Infocenter::HandleButtonUp", "matching": 0.7760683760683761, "diff": [["@@ -0x1006feb0,51 +0x10041fc0,50 @@", [{"both": [["0x1006feb0", "push ebx", "0x10041fc0"], ["0x1006feb1", "push esi", "0x10041fc1"], ["0x1006feb2", "push edi", "0x10041fc2"], ["0x1006feb3", "mov esi, ecx", "0x10041fc3"]]}, {"orig": [["0x1006feb5", "push ebp"], ["0x1006feb6", "cmp dword ptr [esi + 0x11c], 0"], ["0x1006febd", "je 0x41b"]], "recomp": [["0x10041fc5", "cmp dword ptr [ecx + 0x11c], 0"], ["0x10041fcc", "je 0x424"]]}, {"both": [["0x1006fec3", "call InputManager (FUNCTION)", "0x10041fd2"]]}, {"orig": [["0x1006fec8", "mov ecx, dword ptr [esp + 0x18]"]], "recomp": [["0x10041fd7", "mov ecx, dword ptr [esp + 0x14]"]]}, {"both": [["0x1006fecc", "dec ecx", "0x10041fdb"], ["0x1006fecd", "push ecx", "0x10041fdc"]]}, {"orig": [["0x1006fece", "mov ecx, dword ptr [esp + 0x18]"]], "recomp": [["0x10041fdd", "mov ecx, dword ptr [esp + 0x14]"]]}, {"both": [["0x1006fed2", "dec ecx", "0x10041fe1"], ["0x1006fed3", "push ecx", "0x10041fe2"], ["0x1006fed4", "mov ecx, dword ptr [eax + 0x84]", "0x10041fe3"], ["0x1006feda", "call LegoControlManager::FUN_100294e0 (FUNCTION)", "0x10041fe9"], ["0x1006fedf", "mov ecx, dword ptr [esi + 0x11c]", "0x10041fee"], ["0x1006fee5", "mov edx, dword ptr [ecx + 0x1c]", "0x10041ff4"], ["0x1006fee8", "mov ecx, dword ptr [edx + 0x1c]", "0x10041ff7"], ["0x1006feeb", "sub ecx, 0x1e", "0x10041ffa"], ["0x1006feee", "cmp ecx, 4", "0x10041ffd"], ["0x1006fef1", "ja 0x3c", "0x10042000"]]}, {"orig": [["0x1006fef3", "jmp dword ptr [ecx*4 + 0x100702e8]"]], "recomp": [["0x10042002", "jmp dword ptr [ecx*4 + 0x10042400]"]]}, {"both": [["0x1006fefa", "mov word ptr [esi + 0xfc], 2", "0x10042009"], ["0x1006ff03", "jmp 0x2a", "0x10042012"], ["0x1006ff05", "mov word ptr [esi + 0xfc], 3", "0x10042014"], ["0x1006ff0e", "jmp 0x1f", "0x1004201d"], ["0x1006ff10", "mov word ptr [esi + 0xfc], 1", "0x1004201f"], ["0x1006ff19", "jmp 0x14", "0x10042028"], ["0x1006ff1b", "mov word ptr [esi + 0xfc], 4", "0x1004202a"], ["0x1006ff24", "jmp 0x9", "0x10042033"], ["0x1006ff26", "mov word ptr [esi + 0xfc], 5", "0x10042035"], ["0x1006ff2f", "test eax, eax", "0x1004203e"], ["0x1006ff31", "je 0x144", "0x10042040"], ["0x1006ff37", "mov word ptr [esi + 0x1d0], 0", "0x10042046"], ["0x1006ff40", "mov eax, dword ptr [eax + 0x1c]", "0x1004204f"], ["0x1006ff43", "mov eax, dword ptr [eax + 0x1c]", "0x10042052"], ["0x1006ff46", "sub eax, 0x15", "0x10042055"], ["0x1006ff49", "cmp eax, 4", "0x10042058"], ["0x1006ff4c", "ja 0x27f", "0x1004205b"]]}, {"orig": [["0x1006ff52", "jmp dword ptr [eax*4 + 0x100702fc]"]], "recomp": [["0x10042061", "jmp dword ptr [eax*4 + 0x10042414]"]]}, {"both": [["0x1006ff59", "cmp word ptr [esi + 0xfc], 2", "0x10042068"], ["0x1006ff61", "jne 0x26a", "0x10042070"], ["0x1006ff67", "lea ecx, [esi + 0x10c]", "0x10042076"], ["0x1006ff6d", "call Radio::Stop (FUNCTION)", "0x1004207c"], ["0x1006ff72", "call BackgroundAudioManager (FUNCTION)", "0x10042081"], ["0x1006ff77", "mov ecx, eax", "0x10042086"], ["0x1006ff79", "call MxBackgroundAudioManager::Stop (FUNCTION)", "0x10042088"], ["0x1006ff7e", "push 0x28", "0x1004208d"], ["0x1006ff80", "mov ecx, esi", "0x1004208f"], ["0x1006ff82", "call Infocenter::PlayAction (FUNCTION)", "0x10042091"]]}]], ["@@ -0x10070082,32 +0x10042191,32 @@", [{"both": [["0x10070082", "cmp ax, 0xffff", "0x10042191"], ["0x10070086", "je 0x145", "0x10042195"], ["0x1007008c", "movsx eax, ax", "0x1004219b"], ["0x1007008f", "lea ecx, [eax + eax*2]", "0x1004219e"], ["0x10070092", "mov word ptr [esi + 0x1d0], 0", "0x100421a1"], ["0x1007009b", "mov eax, dword ptr [esi + ecx*8 + 0x124]", "0x100421aa"], ["0x100700a2", "sub eax, 3", "0x100421b1"], ["0x100700a5", "cmp eax, 0xc", "0x100421b4"], ["0x100700a8", "ja 0x123", "0x100421b7"], ["0x100700ae", "xor ecx, ecx", "0x100421bd"]]}, {"orig": [["0x100700b0", "mov cl, byte ptr [eax + 0x10070330]"], ["0x100700b6", "jmp dword ptr [ecx*4 + 0x10070310]"]], "recomp": [["0x100421bf", "mov cl, byte ptr [eax + 0x10042448]"], ["0x100421c5", "jmp dword ptr [ecx*4 + 0x10042428]"]]}, {"both": [["0x100700bd", "mov ax, word ptr [esi + 0xfc]", "0x100421cc"], ["0x100700c4", "push eax", "0x100421d3"], ["0x100700c5", "call GameState (FUNCTION)", "0x100421d4"], ["0x100700ca", "mov ecx, eax", "0x100421d9"], ["0x100700cc", "call LegoGameState::SetActor (FUNCTION)", "0x100421db"], ["0x100700d1", "movsx eax, word ptr [esi + 0xfc]", "0x100421e0"], ["0x100700d8", "dec eax", "0x100421e7"], ["0x100700d9", "cmp eax, 4", "0x100421e8"], ["0x100700dc", "ja 0xef", "0x100421eb"]]}, {"orig": [["0x100700e2", "jmp dword ptr [eax*4 + 0x10070340]"]], "recomp": [["0x100421f1", "jmp dword ptr [eax*4 + 0x10042458]"]]}, {"both": [["0x100700e9", "push 0x21d", "0x100421f8"], ["0x100700ee", "mov ecx, esi", "0x100421fd"], ["0x100700f0", "call Infocenter::PlayAction (FUNCTION)", "0x100421ff"], ["0x100700f5", "jmp 0xd7", "0x10042204"], ["0x100700fa", "push 0x21e", "0x10042209"], ["0x100700ff", "mov ecx, esi", "0x1004220e"], ["0x10070101", "call Infocenter::PlayAction (FUNCTION)", "0x10042210"], ["0x10070106", "jmp 0xc6", "0x10042215"], ["0x1007010b", "push 0x21f", "0x1004221a"], ["0x10070110", "mov ecx, esi", "0x1004221f"]]}]], ["@@ -0x100701ba,49 +0x100422c9,50 @@", [{"both": [["0x100701ba", "mov dword ptr [esi + 0x104], 0x20", "0x100422c9"], ["0x100701c4", "mov eax, dword ptr [esi + 0x100]", "0x100422d3"], ["0x100701ca", "mov dword ptr [eax + 0x74], 5", "0x100422d9"], ["0x100701d1", "mov ecx, dword ptr [esi + 0x11c]", "0x100422e0"], ["0x100701d7", "push 0", "0x100422e6"], ["0x100701d9", "mov eax, dword ptr [ecx]", "0x100422e8"], ["0x100701db", "call dword ptr [eax + 0x54]", "0x100422ea"], ["0x100701de", "mov ecx, dword ptr [esi + 0x100]", "0x100422ed"], ["0x100701e4", "mov dword ptr [esi + 0x11c], 0", "0x100422f3"], ["0x100701ee", "cmp dword ptr [ecx + 0x74], 5", "0x100422fd"]]}, {"orig": [["0x100701f2", "jne 0xd2"]], "recomp": [["0x10042301", "jne 0xdb"]]}, {"both": [["0x100701f8", "call GameState (FUNCTION)", "0x10042307"], ["0x100701fd", "cmp dword ptr [eax + 0x10], 0", "0x1004230c"], ["0x10070201", "je 0x21", "0x10042310"]]}, {"orig": [["0x10070203", "mov edi, dword ptr [esi + 0x100]"]], "recomp": []}, {"both": [["0x10070209", "call GameState (FUNCTION)", "0x10042312"], ["0x1007020e", "mov eax, dword ptr [eax + 0x10]", "0x10042317"]]}, {"orig": [], "recomp": [["0x1004231a", "mov ecx, dword ptr [esi + 0x100]"]]}, {"both": [["0x10070211", "lea edx, [eax + eax*2]", "0x10042320"]]}, {"orig": [["0x10070214", "lea ecx, [edi + edx*4 + 0x44]"]], "recomp": [["0x10042323", "lea ecx, [ecx + edx*4 + 0x44]"]]}, {"both": [["0x10070218", "call LegoState::Playlist::Next (FUNCTION)", "0x10042327"], ["0x1007021d", "mov edi, eax", "0x1004232c"]]}, {"orig": [["0x1007021f", "jmp 0x9e"], ["0x10070224", "mov ebp, dword ptr [esi + 0x100]"], ["0x1007022a", "cmp dword ptr [ebp + 0x78], 0"], ["0x1007022e", "jne 0x18"], ["0x10070230", "mov dword ptr [ebp + 0x74], 2"]], "recomp": [["0x1004232e", "jmp 0xa7"], ["0x10042333", "mov eax, dword ptr [esi + 0x100]"], ["0x10042339", "cmp dword ptr [eax + 0x78], 0"], ["0x1004233d", "jne 0x1b"], ["0x1004233f", "mov dword ptr [eax + 0x74], 2"]]}, {"both": [["0x10070237", "mov dword ptr [esi + 0x104], 0", "0x10042346"], ["0x10070241", "mov edi, 0x23d", "0x10042350"]]}, {"orig": [["0x10070246", "jmp 0x7a"]], "recomp": [["0x10042355", "jmp 0x80"]]}, {"both": [["0x10070248", "mov bx, word ptr [esi + 0xfc]", "0x1004235a"], ["0x1007024f", "movsx eax, bx", "0x10042361"], ["0x10070252", "dec eax", "0x10042364"], ["0x10070253", "cmp eax, 4", "0x10042365"], ["0x10070256", "ja 0x7", "0x10042368"]]}, {"orig": [["0x10070258", "jmp dword ptr [eax*4 + 0x10070354]"]], "recomp": [["0x1004236a", "jmp dword ptr [eax*4 + 0x1004246c]"]]}, {"both": [["0x1007025f", "call GameState (FUNCTION)", "0x10042371"], ["0x10070264", "mov eax, dword ptr [eax + 0x10]", "0x10042376"]]}, {"orig": [], "recomp": [["0x10042379", "mov ecx, dword ptr [esi + 0x100]"]]}, {"both": [["0x10070267", "lea edx, [eax + eax*2]", "0x1004237f"]]}, {"orig": [["0x1007026a", "lea ecx, [ebp + edx*4 + 0x44]"]], "recomp": [["0x10042382", "lea ecx, [ecx + edx*4 + 0x44]"]]}, {"both": [["0x1007026e", "call LegoState::Playlist::Next (FUNCTION)", "0x10042386"], ["0x10070273", "mov edi, eax", "0x1004238b"], ["0x10070275", "jmp 0x29", "0x1004238d"], ["0x10070277", "mov edi, 0x21d", "0x1004238f"], ["0x1007027c", "jmp 0x1a", "0x10042394"], ["0x1007027e", "mov edi, 0x21e", "0x10042396"], ["0x10070283", "jmp 0x13", "0x1004239b"], ["0x10070285", "mov edi, 0x21f", "0x1004239d"], ["0x1007028a", "jmp 0xc", "0x100423a2"], ["0x1007028c", "mov edi, 0x220", "0x100423a4"]]}]], ["@@ -0x100702c3,71 +0x100423db,62 @@", [{"both": [["0x100702c3", "mov ecx, esi", "0x100423db"], ["0x100702c5", "call Infocenter::PlayAction (FUNCTION)", "0x100423dd"], ["0x100702ca", "push 1", "0x100423e2"], ["0x100702cc", "mov ecx, esi", "0x100423e4"], ["0x100702ce", "call Infocenter::UpdateFrameHot (FUNCTION)", "0x100423e6"], ["0x100702d3", "push 0", "0x100423eb"], ["0x100702d5", "mov ecx, esi", "0x100423ed"], ["0x100702d7", "push 0", "0x100423ef"], ["0x100702d9", "call Infocenter::FUN_10070d10 (FUNCTION)", "0x100423f1"], ["0x100702de", "xor al, al", "0x100423f6"]]}, {"orig": [["0x100702e0", "pop ebp"]], "recomp": []}, {"both": [["0x100702e1", "pop edi", "0x100423f8"], ["0x100702e2", "pop esi", "0x100423f9"], ["0x100702e3", "pop ebx", "0x100423fa"], ["0x100702e4", "ret 8", "0x100423fb"]]}, {"orig": [["0x100702e7", "nop "], ["0x100702e8", "cli "], ["0x100702e9", "inc byte ptr [esi]"], ["0x100702eb", "adc byte ptr [<OFFSET12>], al"], ["0x100702f1", "inc dword ptr [esi]"], ["0x100702f3", "adc byte ptr [ebx], bl"], ["0x100702f5", "inc dword ptr [esi]"], ["0x100702f7", "adc byte ptr [esi], ah"], ["0x100702f9", "inc dword ptr [esi]"], ["0x100702fb", "adc byte ptr [ecx - 1], bl"], ["0x100702fe", "push es"], ["0x100702ff", "adc byte ptr [ebx - 0x32eff901], dl"], ["0x10070305", "inc dword ptr [esi]"], ["0x10070307", "adc byte ptr [edi], al"]], "recomp": [["0x100423fe", "mov edi, edi"], ["0x10042400", "or dword ptr [eax], esp"], ["0x10042402", "add al, 0x10"], ["0x10042404", "adc al, 0x20"], ["0x10042406", "add al, 0x10"], ["0x10042408", "pop ds"], ["0x10042409", "and byte ptr [eax + edx], al"], ["0x1004240c", "sub ah, byte ptr [eax]"], ["0x1004240e", "add al, 0x10"], ["0x10042410", "xor eax, 0x68100420"], ["0x10042415", "and byte ptr [eax + edx], al"], ["0x10042418", "mov byte ptr [<OFFSET12>], al"], ["0x1004241d", "and byte ptr [eax + edx], al"], ["0x10042420", "push ss"], ["0x10042421", "and dword ptr [eax + edx], eax"], ["0x10042424", "push eax"], ["0x10042425", "and dword ptr [eax + edx], eax"], ["0x10042428", "int3 "], ["0x10042429", "and dword ptr [eax + edx], eax"], ["0x1004242c", "dec ebp"], ["0x1004242d", "and al, byte ptr [eax + edx]"], ["0x10042430", "and al, byte ptr [si]"], ["0x10042433", "adc byte ptr [ebp + 0x22], bh"], ["0x10042436", "add al, 0x10"], ["0x10042438", "xchg ebx, eax"], ["0x10042439", "and al, byte ptr [eax + edx]"], ["0x1004243c", "test eax, 0xbf100422"], ["0x10042441", "and al, byte ptr [eax + edx]"], ["0x10042444", "loopne 0x10042468"], ["0x10042446", "add al, 0x10"]]}, {"both": [["0x10070309", "add byte ptr [edi], al", "0x10042448"]]}, {"orig": [["0x1007030b", "adc byte ptr [ecx], al"], ["0x1007030e", "pop es"], ["0x1007030f", "adc byte ptr [ebp + 0x3e100700], bh"], ["0x10070315", "add dword ptr [edi], eax"], ["0x10070317", "adc byte ptr [eax + 1], bl"], ["0x1007031a", "pop es"], ["0x1007031b", "adc byte ptr [esi + 1], ch"], ["0x1007031e", "pop es"], ["0x1007031f", "adc byte ptr [ecx + eax + 0x19a1007], al"], ["0x10070326", "pop es"], ["0x10070327", "adc byte ptr [eax - 0x2eeff8ff], dh"], ["0x1007032d", "add dword ptr [edi], eax"], ["0x1007032f", "adc byte ptr [eax], al"], ["0x10070331", "pop es"]], "recomp": []}, {"both": [["0x10070332", "pop es", "0x1004244a"], ["0x10070333", "pop es", "0x1004244b"], ["0x10070334", "pop es", "0x1004244c"], ["0x10070335", "pop es", "0x1004244d"], ["0x10070336", "pop es", "0x1004244e"], ["0x10070337", "add dword ptr [edx], eax", "0x1004244f"], ["0x10070339", "add eax, dword ptr [eax + 0x498d06]", "0x10042451"]]}, {"orig": [["0x10070340", "jmp -0x5eff900"], ["0x10070345", "add byte ptr [edi], al"], ["0x10070347", "adc byte ptr [ebx], cl"], ["0x10070349", "add dword ptr [edi], eax"], ["0x1007034b", "adc byte ptr [ecx + eax], bl"], ["0x1007034e", "pop es"], ["0x1007034f", "adc byte ptr [<OFFSET13>], ch"], ["0x10070355", "add al, byte ptr [edi]"], ["0x10070357", "adc byte ptr [esi + 2], bh"], ["0x1007035a", "pop es"], ["0x1007035b", "adc byte ptr [ebp - 0x73eff8fe], al"], ["0x10070361", "add al, byte ptr [edi]"], ["0x10070363", "adc byte ptr [ebx - 0x33eff8fe], dl"], ["0x10070369", "int3 "], ["0x1007036a", "int3 "], ["0x1007036b", "int3 "], ["0x1007036c", "int3 "], ["0x1007036d", "int3 "], ["0x1007036e", "int3 "], ["0x1007036f", "int3 "]], "recomp": [["0x10042458", "clc "], ["0x10042459", "and dword ptr [eax + edx], eax"], ["0x1004245c", "or dword ptr [edx], esp"], ["0x1004245e", "add al, 0x10"], ["0x10042460", "sbb ah, byte ptr [edx]"], ["0x10042462", "add al, 0x10"], ["0x10042464", "sub esp, dword ptr [edx]"], ["0x10042466", "add al, 0x10"], ["0x10042468", "cmp al, 0x22"], ["0x1004246a", "add al, 0x10"]]}]]]}, {"address": "0x10070370", "recomp": "0x10042480", "name": "Infocenter::HandleClick", "matching": 0.5709156193895871, "diff": [["@@ -0x10070370,226 +0x10042480,223 @@", [{"both": [["0x10070370", "push ebx", "0x10042480"], ["0x10070371", "push esi", "0x10042481"], ["0x10070372", "push edi", "0x10042482"], ["0x10070373", "mov esi, ecx", "0x10042483"], ["0x10070375", "push ebp", "0x10042485"], ["0x10070376", "mov ebp, dword ptr [esp + 0x14]", "0x10042486"], ["0x1007037a", "cmp word ptr [ebp + 0x28], 1", "0x1004248a"]]}, {"orig": [["0x1007037f", "jne 0x456"]], "recomp": [["0x1004248f", "jne 0x450"]]}, {"both": [["0x10070385", "mov word ptr [esi + 0x1d0], 0", "0x10042495"], ["0x1007038e", "mov ebx, 0xffffffff", "0x1004249e"], ["0x10070393", "call Infocenter::StopCurrentAction (FUNCTION)", "0x100424a3"], ["0x10070398", "mov edi, ebx", "0x100424a8"], ["0x1007039a", "call GameState (FUNCTION)", "0x100424aa"], ["0x1007039f", "mov ecx, dword ptr [ebp + 0x20]", "0x100424af"], ["0x100703a2", "add ecx, ebx", "0x100424b2"], ["0x100703a4", "cmp ecx, 0x18", "0x100424b4"]]}, {"orig": [["0x100703a7", "ja 0x40a"], ["0x100703ad", "jmp dword ptr [ecx*4 + 0x100707e4]"]], "recomp": [["0x100424b7", "ja 0x404"], ["0x100424bd", "jmp dword ptr [ecx*4 + 0x100428f0]"]]}, {"both": [["0x100703b4", "mov eax, dword ptr [esi + 0x100]", "0x100424c4"], ["0x100703ba", "mov ecx, esi", "0x100424ca"], ["0x100703bc", "mov dword ptr [eax + 0x74], 0xe", "0x100424cc"], ["0x100703c3", "call Infocenter::StopCurrentAction (FUNCTION)", "0x100424d3"], ["0x100703c8", "call GameState (FUNCTION)", "0x100424d8"], ["0x100703cd", "cmp dword ptr [eax + 0x10], 0", "0x100424dd"], ["0x100703d1", "jne 0x2e", "0x100424e1"], ["0x100703d3", "lea ecx, [esi + 0x10c]", "0x100424e3"], ["0x100703d9", "call Radio::Stop (FUNCTION)", "0x100424e9"], ["0x100703de", "push 0", "0x100424ee"], ["0x100703e0", "push 0", "0x100424f0"], ["0x100703e2", "push 0x32", "0x100424f2"], ["0x100703e4", "push 3", "0x100424f4"], ["0x100703e6", "call TransitionManager (FUNCTION)", "0x100424f6"], ["0x100703eb", "mov ecx, eax", "0x100424fb"], ["0x100703ed", "call MxTransitionManager::StartTransition (FUNCTION)", "0x100424fd"], ["0x100703f2", "mov dword ptr [esi + 0x104], 5", "0x10042502"]]}, {"orig": [["0x100703fc", "jmp 0x3b6"]], "recomp": [["0x1004250c", "jmp 0x3b0"]]}, {"both": [["0x10070401", "mov ecx, dword ptr [esi + 0x100]", "0x10042511"], ["0x10070407", "add ecx, 0x68", "0x10042517"], ["0x1007040a", "call LegoState::Playlist::Next (FUNCTION)", "0x1004251a"], ["0x1007040f", "push eax", "0x1004251f"], ["0x10070410", "mov ecx, esi", "0x10042520"], ["0x10070412", "call Infocenter::PlayAction (FUNCTION)", "0x10042522"]]}, {"orig": [["0x10070417", "jmp 0x39b"]], "recomp": [["0x10042527", "jmp 0x395"]]}, {"both": [["0x1007041c", "mov eax, dword ptr [esi + 0x100]", "0x1004252c"], ["0x10070422", "mov ecx, esi", "0x10042532"], ["0x10070424", "mov dword ptr [eax + 0x74], 0xe", "0x10042534"], ["0x1007042b", "call Infocenter::StopCurrentAction (FUNCTION)", "0x1004253b"], ["0x10070430", "call GameState (FUNCTION)", "0x10042540"], ["0x10070435", "cmp dword ptr [eax + 0x10], 0", "0x10042545"], ["0x10070439", "jne 0x2e", "0x10042549"], ["0x1007043b", "lea ecx, [esi + 0x10c]", "0x1004254b"], ["0x10070441", "call Radio::Stop (FUNCTION)", "0x10042551"], ["0x10070446", "push 0", "0x10042556"], ["0x10070448", "push 0", "0x10042558"], ["0x1007044a", "push 0x32", "0x1004255a"], ["0x1007044c", "push 3", "0x1004255c"], ["0x1007044e", "call TransitionManager (FUNCTION)", "0x1004255e"], ["0x10070453", "mov ecx, eax", "0x10042563"], ["0x10070455", "call MxTransitionManager::StartTransition (FUNCTION)", "0x10042565"], ["0x1007045a", "mov dword ptr [esi + 0x104], 0xd", "0x1004256a"]]}, {"orig": [["0x10070464", "jmp 0x34e"]], "recomp": [["0x10042574", "jmp 0x348"]]}, {"both": [["0x10070469", "mov ecx, dword ptr [esi + 0x100]", "0x10042579"], ["0x1007046f", "add ecx, 0x68", "0x1004257f"], ["0x10070472", "call LegoState::Playlist::Next (FUNCTION)", "0x10042582"], ["0x10070477", "push eax", "0x10042587"], ["0x10070478", "mov ecx, esi", "0x10042588"], ["0x1007047a", "call Infocenter::PlayAction (FUNCTION)", "0x1004258a"]]}, {"orig": [["0x1007047f", "jmp 0x333"]], "recomp": [["0x1004258f", "jmp 0x32d"]]}, {"both": [["0x10070484", "mov ebx, 0x22d", "0x10042594"], ["0x10070489", "lea ecx, [esi + 0x10c]", "0x10042599"], ["0x1007048f", "call Radio::Stop (FUNCTION)", "0x1004259f"]]}, {"orig": [["0x10070494", "jmp 0x31e"]], "recomp": [["0x100425a4", "jmp 0x318"]]}, {"both": [["0x10070499", "mov eax, dword ptr [esi + 0x100]", "0x100425a9"], ["0x1007049f", "cmp dword ptr [eax + 0x74], 8", "0x100425af"]]}, {"orig": [["0x100704a3", "je 0x30e"], ["0x100704a9", "lea ecx, [esi + 0x10c]"]], "recomp": [["0x100425b3", "je 0x308"]]}, {"both": [["0x100704af", "mov ebx, 0x20a", "0x100425b9"]]}, {"orig": [], "recomp": [["0x100425be", "lea ecx, [esi + 0x10c]"]]}, {"both": [["0x100704b4", "call Radio::Stop (FUNCTION)", "0x100425c4"], ["0x100704b9", "mov eax, dword ptr [esi + 0x100]", "0x100425c9"], ["0x100704bf", "mov dword ptr [eax + 0x74], 8", "0x100425cf"]]}, {"orig": [["0x100704c6", "jmp 0x2ec"]], "recomp": [["0x100425d6", "jmp 0x2e6"]]}, {"both": [["0x100704cb", "mov ebx, 0x22e", "0x100425db"], ["0x100704d0", "lea ecx, [esi + 0x10c]", "0x100425e0"], ["0x100704d6", "call Radio::Stop (FUNCTION)", "0x100425e6"]]}, {"orig": [["0x100704db", "jmp 0x2d7"]], "recomp": [["0x100425eb", "jmp 0x2d1"]]}, {"both": [["0x100704e0", "mov ebx, 0x231", "0x100425f0"], ["0x100704e5", "lea ecx, [esi + 0x10c]", "0x100425f5"], ["0x100704eb", "call Radio::Stop (FUNCTION)", "0x100425fb"]]}, {"orig": [["0x100704f0", "jmp 0x2c2"]], "recomp": [["0x10042600", "jmp 0x2bc"]]}, {"both": [["0x100704f5", "mov ebx, 0x230", "0x10042605"], ["0x100704fa", "lea ecx, [esi + 0x10c]", "0x1004260a"], ["0x10070500", "call Radio::Stop (FUNCTION)", "0x10042610"]]}, {"orig": [["0x10070505", "jmp 0x2ad"]], "recomp": [["0x10042615", "jmp 0x2a7"]]}, {"both": [["0x1007050a", "mov ebx, 0x22b", "0x1004261a"], ["0x1007050f", "lea ecx, [esi + 0x10c]", "0x1004261f"], ["0x10070515", "call Radio::Stop (FUNCTION)", "0x10042625"]]}, {"orig": [["0x1007051a", "jmp 0x298"]], "recomp": [["0x1004262a", "jmp 0x292"]]}, {"both": [["0x1007051f", "mov ebx, 0x22c", "0x1004262f"], ["0x10070524", "lea ecx, [esi + 0x10c]", "0x10042634"], ["0x1007052a", "call Radio::Stop (FUNCTION)", "0x1004263a"]]}, {"orig": [["0x1007052f", "jmp 0x283"]], "recomp": [["0x1004263f", "jmp 0x27d"]]}, {"both": [["0x10070534", "mov ebx, 0x22f", "0x10042644"], ["0x10070539", "lea ecx, [esi + 0x10c]", "0x10042649"], ["0x1007053f", "call Radio::Stop (FUNCTION)", "0x1004264f"]]}, {"orig": [["0x10070544", "jmp 0x26e"]], "recomp": [["0x10042654", "jmp 0x268"]]}, {"both": [["0x10070549", "mov ecx, dword ptr [eax + 0x10]", "0x10042659"], ["0x1007054c", "test ecx, ecx", "0x1004265c"], ["0x1007054e", "je 0x17", "0x1004265e"], ["0x10070550", "cmp ecx, 1", "0x10042660"]]}, {"orig": [["0x10070553", "je 0x129"]], "recomp": [["0x10042663", "je 0x125"]]}, {"both": [["0x10070559", "cmp ecx, 2", "0x10042669"]]}, {"orig": [["0x1007055c", "je 0x177"], ["0x10070562", "jmp 0x250"]], "recomp": [["0x1004266c", "je 0x173"], ["0x10042672", "jmp 0x24a"]]}, {"both": [["0x10070567", "mov edx, dword ptr [eax + 0x428]", "0x10042677"]]}, {"orig": [["0x1007056d", "test edx, edx"], ["0x1007056f", "je 0x242"]], "recomp": []}, {"both": [["0x10070575", "sub edx, 3", "0x1004267d"], ["0x10070578", "cmp edx, 0xa", "0x10042680"]]}, {"orig": [["0x1007057b", "ja 0xf"]], "recomp": [["0x10042683", "ja 0x238"]]}, {"both": [["0x1007057d", "xor ecx, ecx", "0x10042689"]]}, {"orig": [["0x1007057f", "mov cl, byte ptr [edx + 0x10070858]"], ["0x10070585", "jmp dword ptr [ecx*4 + 0x10070848]"], ["0x1007058c", "cmp byte ptr [eax + 0xc], 0"], ["0x10070590", "je 0x221"], ["0x10070596", "mov ecx, dword ptr [esi + 0x100]"], ["0x1007059c", "cmp dword ptr [ecx + 0x78], 0"], ["0x100705a0", "jne 0x1e"], ["0x100705a2", "push 0x23d"], ["0x100705a7", "mov ecx, esi"], ["0x100705a9", "call Infocenter::PlayAction (FUNCTION)"], ["0x100705ae", "mov eax, dword ptr [esi + 0x100]"], ["0x100705b4", "mov dword ptr [eax + 0x74], 2"], ["0x100705bb", "jmp 0x1f7"]], "recomp": [["0x1004268b", "mov cl, byte ptr [edx + 0x10042964]"], ["0x10042691", "jmp dword ptr [ecx*4 + 0x10042954]"], ["0x10042698", "mov ecx, dword ptr [esi + 0x100]"]]}, {"both": [["0x100705c0", "mov dword ptr [ecx + 0x74], 5", "0x1004269e"], ["0x100705c7", "mov eax, dword ptr [eax + 0x428]", "0x100426a5"]]}, {"orig": [["0x100705cd", "mov ebx, dword ptr [esi + 0x100]"]], "recomp": []}, {"both": [["0x100705d3", "mov dword ptr [esi + 0x104], eax", "0x100426ab"], ["0x100705d9", "call GameState (FUNCTION)", "0x100426b1"], ["0x100705de", "mov ecx, dword ptr [eax + 0x10]", "0x100426b6"]]}, {"orig": [["0x100705e1", "lea eax, [ecx + ecx*2]"], ["0x100705e4", "lea ecx, [ebx + eax*4 + 0x44]"], ["0x100705e8", "call LegoState::Playlist::Next (FUNCTION)"], ["0x100705ed", "mov ebx, eax"], ["0x100705ef", "lea ecx, [esi + 0x10c]"], ["0x100705f5", "call Radio::Stop (FUNCTION)"], ["0x100705fa", "call InputManager (FUNCTION)"], ["0x100705ff", "mov byte ptr [eax + 0x88], 1"], ["0x10070606", "mov byte ptr [eax + 0x336], 0"], ["0x1007060d", "call InputManager (FUNCTION)"], ["0x10070612", "mov byte ptr [eax + 0x336], 1"], ["0x10070619", "jmp 0x199"], ["0x1007061e", "mov ecx, dword ptr [esi + 0x100]"]], "recomp": [["0x100426b9", "mov eax, dword ptr [esi + 0x100]"], ["0x100426bf", "lea edx, [ecx + ecx*2]"], ["0x100426c2", "lea ecx, [eax + edx*4 + 0x44]"], ["0x100426c6", "call LegoState::Playlist::Next (FUNCTION)"], ["0x100426cb", "mov ebx, eax"], ["0x100426cd", "lea ecx, [esi + 0x10c]"], ["0x100426d3", "call Radio::Stop (FUNCTION)"], ["0x100426d8", "call InputManager (FUNCTION)"], ["0x100426dd", "mov byte ptr [eax + 0x88], 1"], ["0x100426e4", "mov byte ptr [eax + 0x336], 0"], ["0x100426eb", "call InputManager (FUNCTION)"], ["0x100426f0", "mov byte ptr [eax + 0x336], 1"], ["0x100426f7", "jmp 0x1c5"], ["0x100426fc", "cmp byte ptr [eax + 0xc], 0"], ["0x10042700", "je 0x1bb"], ["0x10042706", "mov ecx, dword ptr [esi + 0x100]"], ["0x1004270c", "cmp dword ptr [ecx + 0x78], 0"], ["0x10042710", "je 0x5e"]]}, {"both": [["0x10070624", "mov dword ptr [ecx + 0x74], 5", "0x10042712"], ["0x1007062b", "mov eax, dword ptr [eax + 0x428]", "0x10042719"]]}, {"orig": [["0x10070631", "mov ebx, dword ptr [esi + 0x100]"]], "recomp": []}, {"both": [["0x10070637", "mov dword ptr [esi + 0x104], eax", "0x1004271f"], ["0x1007063d", "call GameState (FUNCTION)", "0x10042725"]]}, {"orig": [["0x10070642", "mov ecx, dword ptr [eax + 0x10]"], ["0x10070645", "lea eax, [ecx + ecx*2]"], ["0x10070648", "lea ecx, [ebx + eax*4 + 0x44]"], ["0x1007064c", "call LegoState::Playlist::Next (FUNCTION)"], ["0x10070651", "mov ebx, eax"], ["0x10070653", "lea ecx, [esi + 0x10c]"], ["0x10070659", "call Radio::Stop (FUNCTION)"], ["0x1007065e", "call InputManager (FUNCTION)"], ["0x10070663", "mov byte ptr [eax + 0x88], 1"], ["0x1007066a", "mov byte ptr [eax + 0x336], 0"], ["0x10070671", "call InputManager (FUNCTION)"], ["0x10070676", "mov byte ptr [eax + 0x336], 1"], ["0x1007067d", "jmp 0x135"]], "recomp": [["0x1004272a", "mov eax, dword ptr [eax + 0x10]"], ["0x1004272d", "mov ecx, dword ptr [esi + 0x100]"], ["0x10042733", "lea edx, [eax + eax*2]"], ["0x10042736", "lea ecx, [ecx + edx*4 + 0x44]"], ["0x1004273a", "call LegoState::Playlist::Next (FUNCTION)"], ["0x1004273f", "mov ebx, eax"], ["0x10042741", "lea ecx, [esi + 0x10c]"], ["0x10042747", "call Radio::Stop (FUNCTION)"], ["0x1004274c", "call InputManager (FUNCTION)"], ["0x10042751", "mov byte ptr [eax + 0x88], 1"], ["0x10042758", "mov byte ptr [eax + 0x336], 0"], ["0x1004275f", "call InputManager (FUNCTION)"], ["0x10042764", "mov byte ptr [eax + 0x336], 1"], ["0x1004276b", "jmp 0x151"], ["0x10042770", "push 0x23d"], ["0x10042775", "mov ecx, esi"], ["0x10042777", "call Infocenter::PlayAction (FUNCTION)"], ["0x1004277c", "mov eax, dword ptr [esi + 0x100]"], ["0x10042782", "mov dword ptr [eax + 0x74], 2"], ["0x10042789", "jmp 0x133"]]}, {"both": [["0x10070682", "mov eax, dword ptr [esi + 0x100]", "0x1004278e"], ["0x10070688", "mov dword ptr [eax + 0x74], 5", "0x10042794"], ["0x1007068f", "mov dword ptr [esi + 0x104], 0x2e", "0x1004279b"]]}, {"orig": [["0x10070699", "mov ebx, dword ptr [esi + 0x100]"]], "recomp": []}, {"both": [["0x1007069f", "call GameState (FUNCTION)", "0x100427a5"], ["0x100706a4", "mov ecx, dword ptr [eax + 0x10]", "0x100427aa"]]}, {"orig": [["0x100706a7", "lea eax, [ecx + ecx*2]"], ["0x100706aa", "lea ecx, [ebx + eax*4 + 0x44]"], ["0x100706ae", "call LegoState::Playlist::Next (FUNCTION)"], ["0x100706b3", "mov ebx, eax"], ["0x100706b5", "call InputManager (FUNCTION)"], ["0x100706ba", "mov byte ptr [eax + 0x88], 1"], ["0x100706c1", "mov byte ptr [eax + 0x336], 0"], ["0x100706c8", "call InputManager (FUNCTION)"], ["0x100706cd", "mov byte ptr [eax + 0x336], 1"], ["0x100706d4", "jmp 0xde"]], "recomp": [["0x100427ad", "mov eax, dword ptr [esi + 0x100]"], ["0x100427b3", "lea edx, [ecx + ecx*2]"], ["0x100427b6", "lea ecx, [eax + edx*4 + 0x44]"], ["0x100427ba", "call LegoState::Playlist::Next (FUNCTION)"], ["0x100427bf", "mov ebx, eax"], ["0x100427c1", "call InputManager (FUNCTION)"], ["0x100427c6", "mov byte ptr [eax + 0x88], 1"], ["0x100427cd", "mov byte ptr [eax + 0x336], 0"], ["0x100427d4", "call InputManager (FUNCTION)"], ["0x100427d9", "mov byte ptr [eax + 0x336], 1"], ["0x100427e0", "jmp 0xdc"]]}, {"both": [["0x100706d9", "mov eax, dword ptr [esi + 0x100]", "0x100427e5"], ["0x100706df", "mov dword ptr [eax + 0x74], 5", "0x100427eb"], ["0x100706e6", "mov dword ptr [esi + 0x104], 0x2f", "0x100427f2"]]}, {"orig": [["0x100706f0", "mov ebx, dword ptr [esi + 0x100]"], ["0x100706f6", "call GameState (FUNCTION)"], ["0x100706fb", "mov ecx, dword ptr [eax + 0x10]"], ["0x100706fe", "lea eax, [ecx + ecx*2]"], ["0x10070701", "lea ecx, [ebx + eax*4 + 0x44]"], ["0x10070705", "call LegoState::Playlist::Next (FUNCTION)"], ["0x1007070a", "mov ebx, eax"], ["0x1007070c", "call InputManager (FUNCTION)"], ["0x10070711", "mov byte ptr [eax + 0x88], 1"], ["0x10070718", "mov byte ptr [eax + 0x336], 0"], ["0x1007071f", "call InputManager (FUNCTION)"], ["0x10070724", "mov byte ptr [eax + 0x336], 1"], ["0x1007072b", "jmp 0x87"]], "recomp": [["0x100427fc", "call GameState (FUNCTION)"], ["0x10042801", "mov eax, dword ptr [eax + 0x10]"], ["0x10042804", "mov ecx, dword ptr [esi + 0x100]"], ["0x1004280a", "lea edx, [eax + eax*2]"], ["0x1004280d", "lea ecx, [ecx + edx*4 + 0x44]"], ["0x10042811", "call LegoState::Playlist::Next (FUNCTION)"], ["0x10042816", "mov ebx, eax"], ["0x10042818", "call InputManager (FUNCTION)"], ["0x1004281d", "mov byte ptr [eax + 0x88], 1"], ["0x10042824", "mov byte ptr [eax + 0x336], 0"], ["0x1004282b", "call InputManager (FUNCTION)"], ["0x10042830", "mov byte ptr [eax + 0x336], 1"], ["0x10042837", "jmp 0x85"]]}, {"both": [["0x10070730", "mov eax, dword ptr [esi + 0x100]", "0x1004283c"], ["0x10070736", "mov dword ptr [esi + 0x104], 0xc", "0x10042842"], ["0x10070740", "mov dword ptr [eax + 0x74], 4", "0x1004284c"], ["0x10070747", "call GameState (FUNCTION)", "0x10042853"], ["0x1007074c", "cmp dword ptr [eax + 0x10], 1", "0x10042858"], ["0x10070750", "sbb ebx, ebx", "0x1004285c"], ["0x10070752", "lea ecx, [esi + 0x10c]", "0x1004285e"], ["0x10070758", "add ebx, 0x47", "0x10042864"], ["0x1007075b", "call Radio::Stop (FUNCTION)", "0x10042867"], ["0x10070760", "call GameState (FUNCTION)", "0x1004286c"]]}, {"orig": [["0x10070765", "mov ebp, eax"], ["0x10070767", "call GameState (FUNCTION)"], ["0x1007076c", "mov eax, dword ptr [eax + 0x428]"], ["0x10070772", "mov dword ptr [ebp + 0x42c], eax"]], "recomp": [["0x10042871", "mov ebp, dword ptr [eax + 0x428]"], ["0x10042877", "call GameState (FUNCTION)"], ["0x1004287c", "mov dword ptr [eax + 0x42c], ebp"]]}, {"both": [["0x10070778", "call InputManager (FUNCTION)", "0x10042882"], ["0x1007077d", "mov byte ptr [eax + 0x88], 1", "0x10042887"], ["0x10070784", "mov byte ptr [eax + 0x336], 0", "0x1004288e"], ["0x1007078b", "jmp 0x2a", "0x10042895"], ["0x1007078d", "mov edi, 0x1e", "0x10042897"], ["0x10070792", "jmp 0x1a", "0x1004289c"], ["0x10070794", "mov edi, 0x1f", "0x1004289e"], ["0x10070799", "jmp 0x13", "0x100428a3"], ["0x1007079b", "mov edi, 0x20", "0x100428a5"], ["0x100707a0", "jmp 0xc", "0x100428aa"]]}]], ["@@ -0x100707cd,56 +0x100428d7,22 @@", [{"both": [["0x100707cd", "push eax", "0x100428d7"], ["0x100707ce", "mov ecx, esi", "0x100428d8"], ["0x100707d0", "call LegoWorld::Find (FUNCTION)", "0x100428da"], ["0x100707d5", "mov dword ptr [esi + 0x11c], eax", "0x100428df"], ["0x100707db", "mov al, 1", "0x100428e5"], ["0x100707dd", "pop ebp", "0x100428e7"], ["0x100707de", "pop edi", "0x100428e8"], ["0x100707df", "pop esi", "0x100428e9"], ["0x100707e0", "pop ebx", "0x100428ea"], ["0x100707e1", "ret 4", "0x100428eb"]]}, {"orig": [["0x100707e4", "mov ah, 3"], ["0x100707e6", "pop es"], ["0x100707e7", "adc byte ptr [esp + eax], bl"], ["0x100707ea", "pop es"], ["0x100707eb", "adc byte ptr [esp + eax + 0x4991007], al"], ["0x100707f2", "pop es"], ["0x100707f3", "adc byte ptr [edi - 0x48eff8f9], dh"], ["0x100707f9", "pop es"], ["0x100707fa", "pop es"], ["0x100707fb", "adc byte ptr [edi - 0x48eff8f9], dh"], ["0x10070801", "pop es"], ["0x10070802", "pop es"], ["0x10070803", "adc byte ptr [edi - 0x34eff8f9], dh"], ["0x10070809", "add al, 7"], ["0x1007080b", "adc al, ah"], ["0x1007080d", "add al, 7"], ["0x1007080f", "adc ch, dh"], ["0x10070811", "add al, 7"], ["0x10070813", "adc byte ptr [edx], cl"], ["0x10070815", "add eax, 0x51f1007"], ["0x1007081a", "pop es"], ["0x1007081b", "adc byte ptr [eax + 0x5491007], dh"], ["0x10070822", "pop es"], ["0x10070823", "adc byte ptr [eax], dh"], ["0x10070825", "pop es"], ["0x10070826", "pop es"], ["0x10070827", "adc byte ptr [edi - 0x48eff8f9], dh"], ["0x1007082d", "pop es"], ["0x1007082e", "pop es"], ["0x1007082f", "adc byte ptr [edi - 0x72eff8f9], dh"], ["0x10070835", "pop es"], ["0x10070836", "pop es"], ["0x10070837", "adc byte ptr [edi + eax + 0x79b1007], dl"], ["0x1007083e", "pop es"], ["0x1007083f", "adc byte ptr [edx - 0x56eff8f9], ah"], ["0x10070845", "pop es"], ["0x10070846", "pop es"], ["0x10070847", "adc byte ptr [esi], bl"], ["0x10070849", "push es"], ["0x1007084a", "pop es"], ["0x1007084b", "adc byte ptr [edi + 0x1e100707], dh"], ["0x10070851", "push es"], ["0x10070852", "pop es"], ["0x10070853", "adc byte ptr [ebp + eax + 0x3001007], cl"], ["0x1007085a", "add dword ptr [ecx], eax"], ["0x1007085c", "add dword ptr [ecx], eax"]], "recomp": [["0x100428ee", "mov edi, edi"], ["0x100428f0", "les esp, ptr [esp + eax]"], ["0x100428f3", "adc byte ptr [<OFFSET11>], ch"], ["0x100428fa", "add al, 0x10"], ["0x100428fc", "test eax, 0xc1100425"], ["0x10042901", "sub byte ptr [eax + edx], al"], ["0x10042904", "shr dword ptr [eax], 4"], ["0x10042907", "adc cl, al"], ["0x10042909", "sub byte ptr [eax + edx], al"], ["0x1004290c", "shr dword ptr [eax], 4"], ["0x1004290f", "adc cl, al"], ["0x10042911", "sub byte ptr [eax + edx], al"]]}]]]}, {"address": "0x10070870", "recomp": "0x10042970", "name": "Infocenter::HandleNotification0", "matching": 0.8730650154798761, "diff": [["@@ -0x10070870,70 +0x10042970,72 @@", [{"orig": [], "recomp": [["0x10042970", "mov eax, dword ptr [esp + 4]"]]}, {"both": [["0x10070870", "push ebx", "0x10042974"], ["0x10070871", "push esi", "0x10042975"], ["0x10070872", "push edi", "0x10042976"], ["0x10070873", "mov esi, ecx", "0x10042977"]]}, {"orig": [["0x10070875", "mov ebx, dword ptr [esp + 0x10]"], ["0x10070879", "mov ecx, dword ptr [ebx + 8]"], ["0x1007087c", "test ecx, ecx"]], "recomp": [["0x10042979", "mov edi, dword ptr [eax + 8]"], ["0x1004297c", "test edi, edi"]]}, {"both": [["0x1007087e", "je 0x1e3", "0x1004297e"]]}, {"orig": [], "recomp": [["0x10042984", "mov eax, dword ptr [edi]"]]}, {"both": [["0x10070884", "push 'MxEntity' (STRING)", "0x10042986"]]}, {"orig": [["0x10070889", "mov eax, dword ptr [ecx]"], ["0x1007088b", "call dword ptr [eax + 0x10]"]], "recomp": [["0x1004298b", "mov ecx, edi"], ["0x1004298d", "mov ebx, dword ptr [eax + 0x10]"], ["0x10042990", "call ebx"]]}, {"both": [["0x1007088e", "test al, al", "0x10042992"], ["0x10070890", "je 0x14a", "0x10042994"]]}, {"orig": [["0x10070896", "mov edi, dword ptr [esi + 0x100]"], ["0x1007089c", "mov ecx, dword ptr [edi + 0x74]"]], "recomp": [["0x1004299a", "mov edx, dword ptr [esi + 0x100]"], ["0x100429a0", "mov ecx, dword ptr [edx + 0x74]"]]}, {"both": [["0x1007089f", "cmp ecx, 5", "0x100429a3"], ["0x100708a2", "je 0x138", "0x100429a6"], ["0x100708a8", "cmp ecx, 0xc", "0x100429ac"], ["0x100708ab", "je 0x12f", "0x100429af"]]}, {"orig": [["0x100708b1", "mov eax, dword ptr [ebx + 8]"], ["0x100708b4", "mov eax, dword ptr [eax + 8]"]], "recomp": [["0x100429b5", "mov eax, dword ptr [edi + 8]"]]}, {"both": [["0x100708b7", "cmp eax, 5", "0x100429b8"], ["0x100708ba", "je 0x19", "0x100429bb"], ["0x100708bc", "cmp eax, 6", "0x100429bd"]]}, {"orig": [["0x100708bf", "je 0x68"]], "recomp": [["0x100429c0", "je 0x6e"]]}, {"both": [["0x100708c1", "cmp eax, 7", "0x100429c2"]]}, {"orig": [["0x100708c4", "je 0xb3"]], "recomp": [["0x100429c5", "je 0xb9"]]}, {"both": [["0x100708ca", "mov eax, 1", "0x100429cb"], ["0x100708cf", "pop edi", "0x100429d0"], ["0x100708d0", "pop esi", "0x100429d1"], ["0x100708d1", "pop ebx", "0x100429d2"], ["0x100708d2", "ret 4", "0x100429d3"], ["0x100708d5", "mov word ptr [esi + 0x1d0], 0", "0x100429d6"], ["0x100708de", "call GameState (FUNCTION)", "0x100429df"], ["0x100708e3", "cmp dword ptr [eax + 0x10], 0", "0x100429e4"]]}, {"orig": [], "recomp": [["0x100429e8", "mov ecx, dword ptr [esi + 0x100]"]]}, {"both": [["0x100708e7", "jne 0x5", "0x100429ee"]]}, {"orig": [["0x100708e9", "lea ecx, [edi + 8]"]], "recomp": [["0x100429f0", "add ecx, 8"]]}, {"both": [["0x100708ec", "jmp 0x3", "0x100429f3"]]}, {"orig": [["0x100708ee", "lea ecx, [edi + 0x14]"]], "recomp": [["0x100429f5", "add ecx, 0x14"]]}, {"both": [["0x100708f1", "call LegoState::Playlist::Next (FUNCTION)", "0x100429f8"], ["0x100708f6", "push eax", "0x100429fd"], ["0x100708f7", "mov ecx, esi", "0x100429fe"], ["0x100708f9", "call Infocenter::PlayAction (FUNCTION)", "0x10042a00"], ["0x100708fe", "push 0", "0x10042a05"], ["0x10070900", "mov eax, dword ptr [g_object2x4red (DATA)]", "0x10042a07"], ["0x10070905", "push eax", "0x10042a0c"], ["0x10070906", "call SetROIVisible (FUNCTION)", "0x10042a0d"], ["0x1007090b", "add esp, 8", "0x10042a12"], ["0x1007090e", "mov eax, dword ptr [g_object2x4grn (DATA)]", "0x10042a15"], ["0x10070913", "push 0", "0x10042a1a"], ["0x10070915", "push eax", "0x10042a1c"], ["0x10070916", "call SetROIVisible (FUNCTION)", "0x10042a1d"], ["0x1007091b", "add esp, 8", "0x10042a22"], ["0x1007091e", "mov eax, 1", "0x10042a25"], ["0x10070923", "pop edi", "0x10042a2a"], ["0x10070924", "pop esi", "0x10042a2b"], ["0x10070925", "pop ebx", "0x10042a2c"], ["0x10070926", "ret 4", "0x10042a2d"], ["0x10070929", "cmp ecx, 8", "0x10042a30"]]}, {"orig": [["0x1007092c", "jne 0x15d"]], "recomp": [["0x10042a33", "jne 0x156"]]}, {"both": [["0x10070932", "mov ecx, esi", "0x10042a39"], ["0x10070934", "call Infocenter::StopCurrentAction (FUNCTION)", "0x10042a3b"], ["0x10070939", "push 0", "0x10042a40"], ["0x1007093b", "mov eax, dword ptr [g_object2x4red (DATA)]", "0x10042a42"], ["0x10070940", "push eax", "0x10042a47"], ["0x10070941", "call SetROIVisible (FUNCTION)", "0x10042a48"], ["0x10070946", "add esp, 8", "0x10042a4d"], ["0x10070949", "mov eax, dword ptr [g_object2x4grn (DATA)]", "0x10042a50"], ["0x1007094e", "push 0", "0x10042a55"], ["0x10070950", "push eax", "0x10042a57"]]}]], ["@@ -0x1007095f,47 +0x10042a66,46 @@", [{"both": [["0x1007095f", "mov ecx, esi", "0x10042a66"], ["0x10070961", "push 0x216", "0x10042a68"], ["0x10070966", "mov dword ptr [eax + 0x74], 2", "0x10042a6d"], ["0x1007096d", "call Infocenter::PlayAction (FUNCTION)", "0x10042a74"], ["0x10070972", "mov eax, 1", "0x10042a79"], ["0x10070977", "pop edi", "0x10042a7e"], ["0x10070978", "pop esi", "0x10042a7f"], ["0x10070979", "pop ebx", "0x10042a80"], ["0x1007097a", "ret 4", "0x10042a81"], ["0x1007097d", "cmp ecx, 8", "0x10042a84"]]}, {"orig": [["0x10070980", "jne 0x109"], ["0x10070986", "cmp dword ptr [edi + 0x78], 0"]], "recomp": [["0x10042a87", "jne 0x102"], ["0x10042a8d", "cmp dword ptr [edx + 0x78], 0"]]}, {"both": [["0x1007098a", "je 0xe", "0x10042a91"], ["0x1007098c", "push 0", "0x10042a93"], ["0x1007098e", "call GameState (FUNCTION)", "0x10042a95"], ["0x10070993", "mov ecx, eax", "0x10042a9a"], ["0x10070995", "call LegoGameState::Save (FUNCTION)", "0x10042a9c"], ["0x1007099a", "mov eax, dword ptr [esi + 0x100]", "0x10042aa1"], ["0x100709a0", "push 0x20c", "0x10042aa7"], ["0x100709a5", "mov ecx, esi", "0x10042aac"], ["0x100709a7", "mov ebx, 1", "0x10042aae"], ["0x100709ac", "mov dword ptr [eax + 0x74], 0xc", "0x10042ab3"], ["0x100709b3", "call Infocenter::PlayAction (FUNCTION)", "0x10042aba"], ["0x100709b8", "call InputManager (FUNCTION)", "0x10042abf"], ["0x100709bd", "mov byte ptr [eax + 0x88], bl", "0x10042ac4"], ["0x100709c3", "mov byte ptr [eax + 0x336], 0", "0x10042aca"], ["0x100709ca", "call InputManager (FUNCTION)", "0x10042ad1"], ["0x100709cf", "pop edi", "0x10042ad6"], ["0x100709d0", "mov byte ptr [eax + 0x336], bl", "0x10042ad7"]]}, {"orig": [["0x100709d6", "mov eax, 1"]], "recomp": [["0x10042add", "mov eax, ebx"]]}, {"both": [["0x100709db", "pop esi", "0x10042adf"], ["0x100709dc", "pop ebx", "0x10042ae0"], ["0x100709dd", "ret 4", "0x10042ae1"]]}, {"orig": [["0x100709e0", "mov ecx, dword ptr [ebx + 8]"]], "recomp": []}, {"both": [["0x100709e3", "push 'Radio' (STRING)", "0x10042ae4"]]}, {"orig": [["0x100709e8", "mov eax, dword ptr [ecx]"], ["0x100709ea", "call dword ptr [eax + 0x10]"]], "recomp": [["0x10042ae9", "mov ecx, edi"], ["0x10042aeb", "call ebx"]]}, {"both": [["0x100709ed", "test al, al", "0x10042aed"], ["0x100709ef", "je 0x9a", "0x10042aef"], ["0x100709f5", "mov eax, dword ptr [esi + 0x114]", "0x10042af5"], ["0x100709fb", "cmp byte ptr [eax + 0x2e], 0", "0x10042afb"], ["0x100709ff", "je 0x8a", "0x10042aff"], ["0x10070a05", "mov eax, dword ptr [esi + 0xf8]", "0x10042b05"], ["0x10070a0b", "cmp eax, 0x28", "0x10042b0b"], ["0x10070a0e", "je 0x45", "0x10042b0e"], ["0x10070a10", "cmp eax, 0x29", "0x10042b10"], ["0x10070a13", "je 0x40", "0x10042b13"]]}]]]}, {"address": "0x10070aa0", "recomp": "0x10042ba0", "name": "Infocenter::Enable", "matching": 1.0, "diff": []}, {"address": "0x10070af0", "recomp": "0x10042bf0", "name": "Infocenter::Tickle", "matching": 1.0, "diff": []}, {"address": "0x10070c20", "recomp": "0x10042d20", "name": "Infocenter::PlayCutscene", "matching": 1.0, "diff": []}, {"address": "0x10070cb0", "recomp": "0x10042db0", "name": "Infocenter::StopCutscene", "matching": 1.0, "diff": []}, {"address": "0x10070d00", "recomp": "0x10042e00", "name": "Infocenter::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x10070d10", "recomp": "0x10042e10", "name": "Infocenter::FUN_10070d10", "matching": 0.8076923076923077, "diff": [["@@ -0x10070d10,31 +0x10042e10,31 @@", [{"both": [["0x10070d10", "push ebx", "0x10042e10"], ["0x10070d11", "push esi", "0x10042e11"], ["0x10070d12", "push edi", "0x10042e12"], ["0x10070d13", "mov esi, ecx", "0x10042e13"], ["0x10070d15", "xor di, di", "0x10042e15"], ["0x10070d18", "push ebp", "0x10042e18"], ["0x10070d19", "mov ebx, dword ptr [esp + 0x14]", "0x10042e19"], ["0x10070d1d", "movsx eax, di", "0x10042e1d"], ["0x10070d20", "lea ecx, [eax + eax*2]", "0x10042e20"]]}, {"orig": [["0x10070d23", "mov edx, dword ptr [esi + ecx*8 + 0x130]"], ["0x10070d2a", "mov ebp, dword ptr [esi + ecx*8 + 0x134]"]], "recomp": [["0x10042e23", "mov eax, dword ptr [esi + ecx*8 + 0x130]"], ["0x10042e2a", "mov edx, dword ptr [esi + ecx*8 + 0x12c]"]]}, {"both": [["0x10070d31", "cmp dword ptr [esi + ecx*8 + 0x128], ebx", "0x10042e31"]]}, {"orig": [["0x10070d38", "lea eax, [esi + ecx*8]"], ["0x10070d3b", "mov ecx, dword ptr [esi + ecx*8 + 0x12c]"]], "recomp": [["0x10042e38", "lea ebp, [esi + ecx*8]"], ["0x10042e3b", "mov ecx, dword ptr [esi + ecx*8 + 0x134]"]]}, {"both": [["0x10070d42", "jg 0x10", "0x10042e42"]]}, {"orig": [["0x10070d44", "cmp edx, ebx"], ["0x10070d46", "jl 0xc"], ["0x10070d48", "cmp ecx, dword ptr [esp + 0x18]"], ["0x10070d4c", "jg 0x6"], ["0x10070d4e", "cmp ebp, dword ptr [esp + 0x18]"], ["0x10070d52", "jge 0x8"]], "recomp": [["0x10042e44", "cmp ebx, eax"], ["0x10042e46", "jg 0xc"], ["0x10042e48", "cmp dword ptr [esp + 0x18], edx"], ["0x10042e4c", "jl 0x6"], ["0x10042e4e", "cmp dword ptr [esp + 0x18], ecx"], ["0x10042e52", "jle 0x8"]]}, {"both": [["0x10070d54", "inc di", "0x10042e54"], ["0x10070d56", "cmp di, 7", "0x10042e56"], ["0x10070d5a", "jl -0x3f", "0x10042e5a"], ["0x10070d5c", "cmp di, 7", "0x10042e5c"], ["0x10070d60", "jne 0x4", "0x10042e60"], ["0x10070d62", "mov di, 0xffff", "0x10042e62"], ["0x10070d66", "mov ax, word ptr [esi + 0x1c8]", "0x10042e66"], ["0x10070d6d", "cmp di, ax", "0x10042e6d"], ["0x10070d70", "je 0x3b", "0x10042e70"], ["0x10070d72", "cmp ax, 0xffff", "0x10042e72"]]}]]]}, {"address": "0x10070dc0", "recomp": "0x10042ec0", "name": "Infocenter::UpdateFrameHot", "matching": 0.8676470588235294, "diff": [["@@ -0x10070dc7,21 +0x10042ec7,21 @@", [{"both": [["0x10070dc7", "push edi", "0x10042ec7"], ["0x10070dc8", "mov ebx, ecx", "0x10042ec8"], ["0x10070dca", "push ebp", "0x10042eca"], ["0x10070dcb", "je 0x8d", "0x10042ecb"], ["0x10070dd1", "call GameState (FUNCTION)", "0x10042ed1"], ["0x10070dd6", "xor ecx, ecx", "0x10042ed6"], ["0x10070dd8", "mov cl, byte ptr [eax + 0xc]", "0x10042ed8"], ["0x10070ddb", "dec ecx", "0x10042edb"], ["0x10070ddc", "cmp ecx, 4", "0x10042edc"], ["0x10070ddf", "ja 0x8a", "0x10042edf"]]}, {"orig": [["0x10070de5", "jmp dword ptr [ecx*4 + 0x10070e78]"]], "recomp": [["0x10042ee5", "jmp dword ptr [ecx*4 + 0x10042f78]"]]}, {"both": [["0x10070dec", "mov esi, 0x12e", "0x10042eec"], ["0x10070df1", "jmp 0x1a", "0x10042ef1"], ["0x10070df3", "mov esi, 0xcc", "0x10042ef3"], ["0x10070df8", "jmp 0x13", "0x10042ef8"], ["0x10070dfa", "mov esi, 0xfd", "0x10042efa"], ["0x10070dff", "jmp 0xc", "0x10042eff"], ["0x10070e01", "mov esi, 0x161", "0x10042f01"], ["0x10070e06", "jmp 0x5", "0x10042f06"], ["0x10070e08", "mov esi, 0x18f", "0x10042f08"], ["0x10070e0d", "mov ebp, 0x51", "0x10042f0d"]]}]], ["@@ -0x10070e68,18 +0x10042f68,18 @@", [{"both": [["0x10070e68", "push 0", "0x10042f68"], ["0x10070e6a", "mov eax, dword ptr [ecx]", "0x10042f6a"], ["0x10070e6c", "call dword ptr [eax + 0x54]", "0x10042f6c"], ["0x10070e6f", "pop ebp", "0x10042f6f"], ["0x10070e70", "pop edi", "0x10042f70"], ["0x10070e71", "pop esi", "0x10042f71"], ["0x10070e72", "pop ebx", "0x10042f72"], ["0x10070e73", "ret 4", "0x10042f73"], ["0x10070e76", "mov edi, edi", "0x10042f76"], ["0x10070e78", "in al, dx", "0x10042f78"]]}, {"orig": [["0x10070e79", "or eax, 0xdf31007"], ["0x10070e7e", "pop es"], ["0x10070e7f", "adc dl, bh"], ["0x10070e81", "or eax, 0xe011007"], ["0x10070e86", "pop es"], ["0x10070e87", "adc byte ptr [eax], cl"], ["0x10070e89", "push cs"], ["0x10070e8a", "pop es"]], "recomp": [["0x10042f79", "add al, 0x10"], ["0x10042f7c", "add al, 0x10"], ["0x10042f80", "cli "], ["0x10042f81", "add al, 0x10"], ["0x10042f84", "add dword ptr [edi], ebp"], ["0x10042f86", "add al, 0x10"], ["0x10042f88", "or byte ptr [edi], ch"], ["0x10042f8a", "add al, 0x10"]]}]]]}, {"address": "0x10070e90", "recomp": "0x10042f90", "name": "Infocenter::Reset", "matching": 1.0, "diff": []}, {"address": "0x10070f60", "recomp": "0x10043060", "name": "Infocenter::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x10071030", "recomp": "0x10043130", "name": "Infocenter::StartCredits", "matching": 1.0, "diff": []}, {"address": "0x10071250", "recomp": "0x10043350", "name": "Infocenter::StopCredits", "matching": 1.0, "diff": []}, {"address": "0x10071300", "recomp": "0x10043400", "name": "Infocenter::PlayAction", "matching": 0.9795918367346939, "diff": [["@@ -0x10071345,22 +0x10043445,22 @@", [{"both": [["0x10071345", "mov ecx, dword ptr [eax]", "0x10043445"], ["0x10071347", "mov dword ptr [ebp - 0x10], ecx", "0x10043447"], ["0x1007134a", "lea ecx, [ebp - 0x10]", "0x1004344a"], ["0x1007134d", "push ecx", "0x1004344d"], ["0x1007134e", "lea ecx, [ebp - 0x88]", "0x1004344e"], ["0x10071354", "call MxAtomId::operator= (FUNCTION)", "0x10043454"], ["0x10071359", "mov byte ptr [ebp - 4], 0", "0x10043459"], ["0x1007135d", "call <OFFSET5>", "0x1004345d"], ["0x10071362", "mov ecx, dword ptr [ebp - 0x14]", "0x10043462"], ["0x10071365", "call Infocenter::StopCurrentAction (FUNCTION)", "0x10043465"]]}, {"orig": [], "recomp": [["0x1004346a", "mov eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x1007136a", "mov ecx, dword ptr [ebp + 8]", "0x1004346d"]]}, {"orig": [["0x1007136d", "mov eax, dword ptr [ebp - 0x14]"]], "recomp": []}, {"both": [["0x10071370", "mov dword ptr [eax + 0xf8], ecx", "0x10043470"], ["0x10071376", "call BackgroundAudioManager (FUNCTION)", "0x10043476"], ["0x1007137b", "mov ecx, eax", "0x1004347b"], ["0x1007137d", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)", "0x1004347d"], ["0x10071382", "lea ecx, [ebp - 0xa8]", "0x10043482"], ["0x10071388", "push ecx", "0x10043488"], ["0x10071389", "call Start (FUNCTION)", "0x10043489"], ["0x1007138e", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004348e"], ["0x10071395", "add esp, 4", "0x10043495"], ["0x10071398", "call <OFFSET10>", "0x10043498"]]}]]]}, {"address": "0x100713d0", "recomp": "0x100434d0", "name": "Infocenter::StopCurrentAction", "matching": 1.0, "diff": []}, {"address": "0x100714a0", "recomp": "0x100435a0", "name": "Infocenter::PlayBookAnimation", "matching": 1.0, "diff": []}, {"address": "0x10071550", "recomp": "0x10043650", "name": "Infocenter::StopBookAnimation", "matching": 1.0, "diff": []}, {"address": "0x10071600", "recomp": "0x1002d150", "name": "InfocenterState::InfocenterState", "matching": 1.0, "diff": []}, {"address": "0x10071800", "recomp": "0x1002d350", "name": "LegoState::Playlist::operator=", "matching": 1.0, "diff": []}, {"address": "0x10071830", "recomp": "0x1002d440", "name": "InfocenterState::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x10071840", "recomp": "0x1002d380", "name": "InfocenterState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10071850", "recomp": "0x1002d390", "name": "InfocenterState::IsA", "matching": 1.0, "diff": []}, {"address": "0x10071900", "recomp": "0x1002d450", "name": "InfocenterState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10071920", "recomp": "0x1002d470", "name": "InfocenterState::~InfocenterState", "matching": 1.0, "diff": []}, {"address": "0x100719b0", "recomp": "0x10035d10", "name": "RaceSkel::RaceSkel", "matching": 0.0, "stub": true}, {"address": "0x10072270", "recomp": "0x1003daa0", "name": "Act3::Act3", "matching": 0.0, "stub": true}, {"address": "0x10072500", "recomp": "0x1003dc40", "name": "Act3::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x10072510", "recomp": "0x1003db00", "name": "Act3::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10072520", "recomp": "0x1003db10", "name": "Act3::IsA", "matching": 1.0, "diff": []}, {"address": "0x10072630", "recomp": "0x1003dc20", "name": "Act3::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100726a0", "recomp": "0x1003dc50", "name": "Act3::~Act3", "matching": 0.0, "stub": true}, {"address": "0x100727e0", "recomp": "0x1003dca0", "name": "Act3::FUN_100727e0", "matching": 0.0, "stub": true}, {"address": "0x10072980", "recomp": "0x1003dcb0", "name": "Act3::FUN_10072980", "matching": 0.0, "stub": true}, {"address": "0x10072c30", "recomp": "0x1003dcc0", "name": "Act3::Create", "matching": 0.0, "stub": true}, {"address": "0x10072d50", "recomp": "0x1003dcd0", "name": "Act3::Destroy", "matching": 0.0, "stub": true}, {"address": "0x10072de0", "recomp": "0x1003dce0", "name": "Act3::Notify", "matching": 0.0, "stub": true}, {"address": "0x10073270", "recomp": "0x1003dcf0", "name": "Act3::ReadyWorld", "matching": 0.0, "stub": true}, {"address": "0x10073300", "recomp": "0x1003dd00", "name": "Act3::Tickle", "matching": 0.0, "stub": true}, {"address": "0x10073400", "recomp": "0x1003dd10", "name": "Act3::FUN_10073400", "matching": 0.0, "stub": true}, {"address": "0x10073430", "recomp": "0x1003dd20", "name": "Act3::FUN_10073430", "matching": 0.0, "stub": true}, {"address": "0x10073a90", "recomp": "0x1003dd30", "name": "Act3::Enable", "matching": 0.0, "stub": true}, {"address": "0x10073e40", "recomp": "0x1003dd40", "name": "Act3::VTable0x60", "matching": 0.0, "stub": true}, {"address": "0x10073e50", "recomp": "0x1003dd50", "name": "Act3::VTable0x64", "matching": 0.0, "stub": true}, {"address": "0x10073ea0", "recomp": "0x1001d8d0", "name": "MxCompositeMediaPresenter::MxCompositeMediaPresenter", "matching": 1.0, "diff": []}, {"address": "0x10073f10", "recomp": "0x1001d940", "name": "MxCompositeMediaPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10073f20", "recomp": "0x1001d950", "name": "MxCompositeMediaPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x10074000", "recomp": "0x1001da30", "name": "MxCompositeMediaPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10074020", "recomp": "0x1001da50", "name": "MxCompositeMediaPresenter::~MxCompositeMediaPresenter", "matching": 1.0, "diff": []}, {"address": "0x10074090", "recomp": "0x1001dac0", "name": "MxCompositeMediaPresenter::StartAction", "matching": 1.0, "diff": []}, {"address": "0x100742e0", "recomp": "0x1001dd10", "name": "MxCompositeMediaPresenter::StartingTickle", "matching": 1.0, "diff": []}, {"address": "0x10074470", "recomp": "0x1001dea0", "name": "MxCompositeMediaPresenter::Tickle", "matching": 0.7428571428571429, "diff": [["@@ -0x1007447b,26 +0x1001deab,27 @@", [{"both": [["0x1007447b", "push <OFFSET1>", "0x1001deab"], ["0x10074480", "push eax", "0x1001deb0"], ["0x10074481", "mov dword ptr fs:[0], esp", "0x1001deb1"], ["0x10074488", "sub esp, 8", "0x1001deb8"], ["0x1007448b", "push esi", "0x1001debb"], ["0x1007448c", "lea eax, [ecx + 0x20]", "0x1001debc"], ["0x1007448f", "mov esi, ecx", "0x1001debf"], ["0x10074491", "push eax", "0x1001dec1"], ["0x10074492", "lea ecx, [ebp - 0x14]", "0x1001dec2"], ["0x10074495", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x1001dec5"]]}, {"orig": [], "recomp": [["0x1001deca", "mov dword ptr [ebp - 4], 0"]]}, {"both": [["0x1007449a", "mov ecx, dword ptr [esi + 8]", "0x1001ded1"]]}, {"orig": [["0x1007449d", "mov dword ptr [ebp - 4], 0"], ["0x100744a4", "lea eax, [ecx - 1]"]], "recomp": [["0x1001ded4", "mov eax, ecx"], ["0x1001ded6", "dec eax"]]}, {"both": [["0x100744a7", "cmp eax, 5", "0x1001ded7"], ["0x100744aa", "ja 0x1f", "0x1001deda"]]}, {"orig": [["0x100744ac", "jmp dword ptr [eax*4 + 0x10074520]"]], "recomp": [["0x1001dedc", "jmp dword ptr [eax*4 + 0x1001df50]"]]}, {"both": [["0x100744b3", "mov dword ptr [esi + 8], 2", "0x1001dee3"], ["0x100744ba", "mov eax, 1", "0x1001deea"], ["0x100744bf", "shl eax, cl", "0x1001deef"], ["0x100744c1", "or dword ptr [esi + 0xc], eax", "0x1001def1"], ["0x100744c4", "mov eax, dword ptr [esi]", "0x1001def4"], ["0x100744c6", "mov ecx, esi", "0x1001def6"], ["0x100744c8", "call dword ptr [eax + 0x1c]", "0x1001def8"], ["0x100744cb", "mov dword ptr [ebp - 4], 0xffffffff", "0x1001defb"], ["0x100744d2", "call <OFFSET3>", "0x1001df02"], ["0x100744d7", "xor eax, eax", "0x1001df07"]]}]], ["@@ -0x100744ff,27 +0x1001df2f,22 @@", [{"both": [["0x100744ff", "mov ecx, dword ptr [ebp - 0x10]", "0x1001df2f"], ["0x10074502", "mov edx, dword ptr [ecx]", "0x1001df32"], ["0x10074504", "mov dword ptr [ebp - 0x10], edx", "0x1001df34"], ["0x10074507", "cmp dword ptr [esi + 0x44], edx", "0x1001df37"], ["0x1007450a", "jne -0x18", "0x1001df3a"], ["0x1007450c", "jmp -0x43", "0x1001df3c"], ["0x1007450e", "mov eax, <OFFSET4>", "0x1001df3e"], ["0x10074513", "jmp ___CxxFrameHandler (FUNCTION)", "0x1001df43"], ["0x10074518", "lea ecx, [ebp - 0x14]", "0x1001df48"], ["0x1007451b", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x1001df4b"]]}, {"orig": [["0x10074520", "mov bl, 0x44"], ["0x10074522", "pop es"], ["0x10074523", "adc ah, al"], ["0x10074525", "inc esp"], ["0x10074526", "pop es"], ["0x10074527", "adc al, ch"], ["0x10074529", "inc esp"], ["0x1007452a", "pop es"], ["0x1007452b", "adc al, ch"], ["0x1007452d", "inc esp"], ["0x1007452e", "pop es"], ["0x1007452f", "adc al, ch"], ["0x10074531", "inc esp"], ["0x10074532", "pop es"], ["0x10074533", "adc al, ch"], ["0x10074535", "inc esp"], ["0x10074536", "pop es"]], "recomp": [["0x1001df50", "jecxz -0x22"], ["0x1001df52", "add dword ptr [eax], edx"], ["0x1001df54", "hlt "], ["0x1001df55", "fiadd word ptr [ecx]"], ["0x1001df57", "adc byte ptr [eax], bl"], ["0x1001df59", "fild word ptr [ecx]"], ["0x1001df5b", "adc byte ptr [eax], bl"], ["0x1001df5d", "fild word ptr [ecx]"], ["0x1001df5f", "adc byte ptr [eax], bl"], ["0x1001df61", "fild word ptr [ecx]"], ["0x1001df63", "adc byte ptr [eax], bl"], ["0x1001df65", "fild word ptr [ecx]"]]}]]]}, {"address": "0x10074540", "recomp": "0x1001df70", "name": "MxCompositeMediaPresenter::PutData", "matching": 1.0, "diff": []}, {"address": "0x100745e0", "recomp": "0x1003edb0", "name": "Hospital::Hospital", "matching": 1.0, "diff": []}, {"address": "0x100746a0", "recomp": "0x1003efb0", "name": "Hospital::VTable0x5c", "matching": 1.0, "diff": []}, {"address": "0x100746b0", "recomp": "0x1003ee70", "name": "Hospital::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100746c0", "recomp": "0x1003ee80", "name": "Hospital::IsA", "matching": 1.0, "diff": []}, {"address": "0x100747d0", "recomp": "0x1003ef90", "name": "Hospital::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100747f0", "recomp": "0x1003efc0", "name": "Hospital::~Hospital", "matching": 1.0, "diff": []}, {"address": "0x100748c0", "recomp": "0x1003f090", "name": "Hospital::Create", "matching": 1.0, "diff": []}, {"address": "0x10074990", "recomp": "0x1003f160", "name": "Hospital::Notify", "matching": 0.7840909090909091, "diff": [["@@ -0x10074997,22 +0x1003f167,22 @@", [{"both": [["0x10074997", "mov esi, dword ptr [esp + 0x10]", "0x1003f167"], ["0x1007499b", "push esi", "0x1003f16b"], ["0x1007499c", "call LegoWorld::Notify (FUNCTION)", "0x1003f16c"], ["0x100749a1", "cmp byte ptr [edi + 0xf6], bl", "0x1003f171"], ["0x100749a7", "je 0x7e", "0x1003f177"], ["0x100749a9", "mov ecx, dword ptr [esi + 4]", "0x1003f179"], ["0x100749ac", "sub ecx, 2", "0x1003f17c"], ["0x100749af", "cmp ecx, 0x16", "0x1003f17f"], ["0x100749b2", "ja 0x73", "0x1003f182"], ["0x100749b4", "xor eax, eax", "0x1003f184"]]}, {"orig": [["0x100749b6", "mov al, byte ptr [ecx + 0x10074a48]"], ["0x100749bc", "jmp dword ptr [eax*4 + 0x10074a30]"]], "recomp": [["0x1003f186", "mov al, byte ptr [ecx + 0x1003f218]"], ["0x1003f18c", "jmp dword ptr [eax*4 + 0x1003f200]"]]}, {"both": [["0x100749c3", "push esi", "0x1003f193"], ["0x100749c4", "mov ecx, edi", "0x1003f194"], ["0x100749c6", "call Hospital::HandleEndAction (FUNCTION)", "0x1003f196"], ["0x100749cb", "mov ebx, eax", "0x1003f19b"], ["0x100749cd", "pop edi", "0x1003f19d"], ["0x100749ce", "mov eax, ebx", "0x1003f19e"], ["0x100749d0", "pop esi", "0x1003f1a0"], ["0x100749d1", "pop ebx", "0x1003f1a1"], ["0x100749d2", "ret 4", "0x1003f1a2"], ["0x100749d5", "mov al, byte ptr [esi + 0x18]", "0x1003f1a5"]]}]], ["@@ -0x10074a1a,33 +0x1003f1ea,27 @@", [{"both": [["0x10074a1a", "push eax", "0x1003f1ea"], ["0x10074a1b", "call GameState (FUNCTION)", "0x1003f1eb"], ["0x10074a20", "mov ecx, eax", "0x1003f1f0"], ["0x10074a22", "call LegoGameState::SwitchArea (FUNCTION)", "0x1003f1f2"], ["0x10074a27", "mov eax, ebx", "0x1003f1f7"], ["0x10074a29", "pop edi", "0x1003f1f9"], ["0x10074a2a", "pop esi", "0x1003f1fa"], ["0x10074a2b", "pop ebx", "0x1003f1fb"], ["0x10074a2c", "ret 4", "0x1003f1fc"], ["0x10074a2f", "nop ", "0x1003f1ff"]]}, {"orig": [["0x10074a30", "ret "], ["0x10074a31", "dec ecx"], ["0x10074a32", "pop es"], ["0x10074a33", "adc ch, dl"], ["0x10074a35", "dec ecx"], ["0x10074a36", "pop es"], ["0x10074a37", "adc dl, ch"], ["0x10074a39", "dec ecx"], ["0x10074a3a", "pop es"], ["0x10074a3b", "adc ah, bh"], ["0x10074a3d", "dec ecx"], ["0x10074a3e", "pop es"], ["0x10074a3f", "adc byte ptr [eax], dl"], ["0x10074a41", "dec edx"], ["0x10074a42", "pop es"], ["0x10074a43", "adc byte ptr [edi], ah"], ["0x10074a45", "dec edx"], ["0x10074a46", "pop es"], ["0x10074a47", "adc byte ptr [eax], al"], ["0x10074a49", "add eax, 0x1050505"]], "recomp": [["0x1003f200", "xchg ebx, eax"], ["0x1003f201", "int1 "], ["0x1003f202", "add edx, dword ptr [eax]"], ["0x1003f204", "movsd dword ptr es:[edi], dword ptr [esi]"], ["0x1003f205", "int1 "], ["0x1003f206", "add edx, dword ptr [eax]"], ["0x1003f208", "mov edx, 0xcc1003f1"], ["0x1003f20d", "int1 "], ["0x1003f20e", "add edx, dword ptr [eax]"], ["0x1003f210", "loopne 0x1003f203"], ["0x1003f212", "add edx, dword ptr [eax]"], ["0x1003f214", "div ecx"], ["0x1003f216", "add edx, dword ptr [eax]"], ["0x1003f218", "add byte ptr [<OFFSET8>], al"]]}, {"both": [["0x10074a4e", "add eax, 0x5050502", "0x1003f21e"], ["0x10074a53", "add eax, 0x3050505", "0x1003f223"], ["0x10074a58", "add eax, 0x5050505", "0x1003f228"]]}]]]}, {"address": "0x10074a60", "recomp": "0x1003f230", "name": "Hospital::ReadyWorld", "matching": 0.9330254041570438, "diff": [["@@ -0x10074ae7,21 +0x1003f2b7,21 @@", [{"both": [["0x10074ae7", "mov ebx, dword ptr [eax]", "0x1003f2b7"], ["0x10074ae9", "add esi, 0xf8", "0x1003f2b9"], ["0x10074aef", "mov ecx, eax", "0x1003f2bf"], ["0x10074af1", "call dword ptr [ebx + 0x60]", "0x1003f2c1"], ["0x10074af4", "movzx ax, al", "0x1003f2c4"], ["0x10074af8", "mov word ptr [esi], ax", "0x1003f2c8"], ["0x10074afb", "movsx eax, word ptr [esi]", "0x1003f2cb"], ["0x10074afe", "dec eax", "0x1003f2ce"], ["0x10074aff", "cmp eax, 4", "0x1003f2cf"], ["0x10074b02", "ja 0xd0", "0x1003f2d2"]]}, {"orig": [["0x10074b08", "jmp dword ptr [eax*4 + 0x10074db4]"]], "recomp": [["0x1003f2d8", "jmp dword ptr [eax*4 + 0x1003f588]"]]}, {"both": [["0x10074b0f", "mov edx, dword ptr [ebp - 0x10]", "0x1003f2df"], ["0x10074b12", "mov eax, dword ptr [edx + 0x104]", "0x1003f2e2"], ["0x10074b18", "mov cx, word ptr [eax + 0xe]", "0x1003f2e8"], ["0x10074b1c", "mov word ptr [eax + 0xc], cx", "0x1003f2ec"], ["0x10074b20", "mov eax, dword ptr [edx + 0x104]", "0x1003f2f0"], ["0x10074b26", "lea ecx, [eax + 0xe]", "0x1003f2f6"], ["0x10074b29", "mov ax, word ptr [ecx]", "0x1003f2f9"], ["0x10074b2c", "cmp ax, 5", "0x1003f2fc"], ["0x10074b30", "jge 0xa2", "0x1003f300"], ["0x10074b36", "jmp 0x98", "0x1003f306"]]}]], ["@@ -0x10074d42,42 +0x1003f512,39 @@", [{"both": [["0x10074d42", "mov ecx, eax", "0x1003f512"], ["0x10074d44", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)", "0x1003f514"], ["0x10074d49", "lea eax, [ebp - 0xb4]", "0x1003f519"], ["0x10074d4f", "push eax", "0x1003f51f"], ["0x10074d50", "call Start (FUNCTION)", "0x1003f520"], ["0x10074d55", "mov dword ptr [ebp - 4], 0xffffffff", "0x1003f525"], ["0x10074d5c", "add esp, 4", "0x1003f52c"], ["0x10074d5f", "call <OFFSET22>", "0x1003f52f"], ["0x10074d64", "mov edx, dword ptr [ebp - 0x10]", "0x1003f534"], ["0x10074d67", "mov dword ptr [edx + 0x10c], 0x1f5", "0x1003f537"]]}, {"orig": [], "recomp": [["0x1003f541", "mov edx, dword ptr [ebp - 0x10]"], ["0x1003f544", "push 7"]]}, {"both": [["0x10074d71", "mov word ptr [edx + 0x108], 1", "0x1003f546"]]}, {"orig": [["0x10074d7a", "push 7"]], "recomp": []}, {"both": [["0x10074d7c", "push 0", "0x1003f54f"], ["0x10074d7e", "call FUN_10015820 (FUNCTION)", "0x1003f551"], ["0x10074d83", "add esp, 8", "0x1003f556"], ["0x10074d86", "mov eax, dword ptr [ebp - 0xc]", "0x1003f559"], ["0x10074d89", "mov dword ptr fs:[0], eax", "0x1003f55c"], ["0x10074d8f", "pop esi", "0x1003f562"], ["0x10074d90", "pop ebx", "0x1003f563"], ["0x10074d91", "mov esp, ebp", "0x1003f564"], ["0x10074d93", "pop ebp", "0x1003f566"], ["0x10074d94", "ret ", "0x1003f567"], ["0x10074d95", "lea ecx, [ebp - 0x14]", "0x1003f568"], ["0x10074d98", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x1003f56b"], ["0x10074d9d", "mov eax, <OFFSET24>", "0x1003f570"], ["0x10074da2", "jmp ___CxxFrameHandler (FUNCTION)", "0x1003f575"], ["0x10074da7", "lea ecx, [ebp - 0xb4]", "0x1003f57a"], ["0x10074dad", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x1003f580"]]}, {"orig": [["0x10074db2", "mov edi, edi"], ["0x10074db4", "cmovnp eax, dword ptr [edi]"], ["0x10074db7", "adc byte ptr [ebx], bh"], ["0x10074db9", "dec ebx"], ["0x10074dba", "pop es"], ["0x10074dbb", "adc byte ptr [eax + 0x4b], ah"], ["0x10074dbe", "pop es"], ["0x10074dbf", "adc byte ptr [ebp - 0x4feff8b5], al"], ["0x10074dc5", "dec ebx"], ["0x10074dc6", "pop es"], ["0x10074dc7", "adc ah, cl"], ["0x10074dc9", "int3 "], ["0x10074dca", "int3 "], ["0x10074dcb", "int3 "]], "recomp": [["0x1003f585", "lea ecx, [ecx]"], ["0x1003f588", "fcompi st(2)"], ["0x1003f58a", "add edx, dword ptr [eax]"], ["0x1003f58c", "or esi, ebx"], ["0x1003f58e", "add edx, dword ptr [eax]"], ["0x1003f590", "xor bl, dh"], ["0x1003f592", "add edx, dword ptr [eax]"], ["0x1003f594", "push ebp"], ["0x1003f595", "add edx, dword ptr [eax]"], ["0x1003f598", "xor bl, 3"]]}]]]}, {"address": "0x10074dd0", "recomp": "0x1003f5a0", "name": "Hospital::HandleKeyPress", "matching": 1.0, "diff": []}, {"address": "0x10074e00", "recomp": "0x1003f5d0", "name": "Hospital::HandleEndAction", "matching": 0.9398280802292264, "diff": [["@@ -0x10074e34,21 +0x1003f604,21 @@", [{"both": [["0x10074e34", "xor eax, eax", "0x1003f604"], ["0x10074e36", "jmp 0x859", "0x1003f606"], ["0x10074e3b", "mov edx, dword ptr [ebp - 0x10]", "0x1003f60b"], ["0x10074e3e", "mov word ptr [edx + 0x108], 0", "0x1003f60e"], ["0x10074e47", "mov edi, dword ptr [edx + 0x104]", "0x1003f617"], ["0x10074e4d", "lea ecx, [edi + 8]", "0x1003f61d"], ["0x10074e50", "mov eax, dword ptr [ecx]", "0x1003f620"], ["0x10074e52", "sub eax, 5", "0x1003f622"], ["0x10074e55", "cmp eax, 0xa", "0x1003f625"], ["0x10074e58", "ja 0x831", "0x1003f628"]]}, {"orig": [["0x10074e5e", "jmp dword ptr [eax*4 + 0x100756c8]"]], "recomp": [["0x1003f62e", "jmp dword ptr [eax*4 + 0x1003fe98]"]]}, {"both": [["0x10074e65", "mov dword ptr [ecx], 7", "0x1003f635"], ["0x10074e6b", "lea ecx, [ebp - 0xa8]", "0x1003f63b"], ["0x10074e71", "call MxDSAction::MxDSAction (FUNCTION)", "0x1003f641"], ["0x10074e76", "mov dword ptr [ebp - 4], 0", "0x1003f646"], ["0x10074e7d", "mov eax, dword ptr [g_hospitalScript (DATA)]", "0x1003f64d"], ["0x10074e82", "mov byte ptr [ebp - 4], 1", "0x1003f652"], ["0x10074e86", "mov ecx, dword ptr [eax]", "0x1003f656"], ["0x10074e88", "mov dword ptr [ebp - 0x14], ecx", "0x1003f658"], ["0x10074e8b", "lea ecx, [ebp - 0x14]", "0x1003f65b"], ["0x10074e8e", "push ecx", "0x1003f65e"]]}]], ["@@ -0x10074f81,21 +0x1003f751,21 @@", [{"both": [["0x10074f81", "mov ecx, dword ptr [MxTimer::g_lastTimeCalculated (DATA)]", "0x1003f751"], ["0x10074f87", "mov edx, dword ptr [ebp - 0x10]", "0x1003f757"], ["0x10074f8a", "sub ecx, dword ptr [eax + 8]", "0x1003f75a"], ["0x10074f8d", "mov dword ptr [edx + 0x124], ecx", "0x1003f75d"], ["0x10074f93", "jmp 0x6f7", "0x1003f763"], ["0x10074f98", "mov edx, dword ptr [ebp - 0x10]", "0x1003f768"], ["0x10074f9b", "movsx eax, word ptr [edx + 0xf8]", "0x1003f76b"], ["0x10074fa2", "dec eax", "0x1003f772"], ["0x10074fa3", "cmp eax, 4", "0x1003f773"], ["0x10074fa6", "ja 0x6e3", "0x1003f776"]]}, {"orig": [["0x10074fac", "jmp dword ptr [eax*4 + 0x100756f4]"]], "recomp": [["0x1003f77c", "jmp dword ptr [eax*4 + 0x1003fec4]"]]}, {"both": [["0x10074fb3", "movsx eax, word ptr [edi + 0xe]", "0x1003f783"], ["0x10074fb7", "test eax, eax", "0x1003f787"], ["0x10074fb9", "jl 0x9", "0x1003f789"], ["0x10074fbb", "cmp eax, 1", "0x1003f78b"], ["0x10074fbe", "jle 0x9d", "0x1003f78e"], ["0x10074fc4", "mov ebx, 2", "0x1003f794"], ["0x10074fc9", "mov dword ptr [ecx], 0xc", "0x1003f799"], ["0x10074fcf", "lea ecx, [ebp - 0xa8]", "0x1003f79f"], ["0x10074fd5", "call MxDSAction::MxDSAction (FUNCTION)", "0x1003f7a5"], ["0x10074fda", "mov dword ptr [ebp - 4], ebx", "0x1003f7aa"]]}]], ["@@ -0x100756a1,38 +0x1003fe71,41 @@", [{"both": [["0x100756a1", "mov esp, ebp", "0x1003fe71"], ["0x100756a3", "pop ebp", "0x1003fe73"], ["0x100756a4", "ret 4", "0x1003fe74"], ["0x100756a7", "mov edx, dword ptr [ebp - 0x10]", "0x1003fe77"], ["0x100756aa", "cmp byte ptr [edx + 0x128], 0", "0x1003fe7a"], ["0x100756b1", "jne -0x24", "0x1003fe81"], ["0x100756b3", "mov byte ptr [edx + 0x128], 1", "0x1003fe83"], ["0x100756ba", "mov dword ptr [edx + 0xfc], 2", "0x1003fe8a"], ["0x100756c4", "jmp -0x5e", "0x1003fe94"], ["0x100756c6", "mov edi, edi", "0x1003fe96"]]}, {"orig": [["0x100756c8", "dec esi"], ["0x100756ca", "pop es"], ["0x100756cb", "adc byte ptr [ebx], dl"], ["0x100756cd", "dec edi"], ["0x100756ce", "pop es"], ["0x100756cf", "adc byte ptr [ecx + 0x4f], dl"], ["0x100756d2", "pop es"], ["0x100756d3", "adc byte ptr [edi - 0x70eff8aa], cl"], ["0x100756d9", "push esi"], ["0x100756da", "pop es"], ["0x100756db", "adc byte ptr [ecx + 0x4f], dl"], ["0x100756de", "pop es"], ["0x100756df", "adc byte ptr [eax + 0x2d10074f], bl"], ["0x100756e5", "push esi"], ["0x100756e6", "pop es"], ["0x100756e7", "adc byte ptr [edi - 0x58eff8aa], cl"], ["0x100756ed", "push esi"], ["0x100756ee", "pop es"], ["0x100756ef", "adc byte ptr [ebx + 0x56], cl"], ["0x100756f2", "pop es"], ["0x100756f3", "adc byte ptr [ebx - 0x1eff8b1], dh"], ["0x100756f9", "push eax"], ["0x100756fa", "pop es"], ["0x100756fb", "adc byte ptr [ecx + 0x52], cl"], ["0x100756fe", "pop es"], ["0x100756ff", "adc byte ptr [eax - 0x24eff8ad], dl"], ["0x10075705", "push esp"], ["0x10075706", "pop es"]], "recomp": [["0x1003fe98", "xor eax, 0xe31003f6"], ["0x1003fe9d", "test byte ptr [ebx], 0x10"], ["0x1003fea0", "and edi, esi"], ["0x1003fea2", "add edx, dword ptr [eax]"], ["0x1003fea4", "pop edi"], ["0x1003fea5", "inc byte ptr [ebx]"], ["0x1003fea7", "adc byte ptr [edi - 2], bl"], ["0x1003feaa", "add edx, dword ptr [eax]"], ["0x1003feac", "and edi, esi"], ["0x1003feae", "add edx, dword ptr [eax]"], ["0x1003feb0", "push 0xfd1003f7"], ["0x1003feb5", "std "], ["0x1003feb6", "add edx, dword ptr [eax]"], ["0x1003feb8", "pop edi"], ["0x1003feb9", "inc byte ptr [ebx]"], ["0x1003febb", "adc byte ptr [ebx], bl"], ["0x1003febd", "inc byte ptr [ebx]"], ["0x1003febf", "adc byte ptr [edi - 2], dh"], ["0x1003fec2", "add edx, dword ptr [eax]"], ["0x1003fec4", "xor edi, 3"], ["0x1003fec7", "adc dh, cl"], ["0x1003fec9", "clc "], ["0x1003feca", "add edx, dword ptr [eax]"], ["0x1003fecc", "sbb edx, edi"], ["0x1003fece", "add edx, dword ptr [eax]"], ["0x1003fed0", "pushal "], ["0x1003fed1", "sti "], ["0x1003fed2", "add edx, dword ptr [eax]"], ["0x1003fed4", "stosd dword ptr es:[edi], eax"], ["0x1003fed5", "cld "], ["0x1003fed6", "add edx, dword ptr [eax]"]]}]]]}, {"address": "0x10075710", "recomp": "0x1003fee0", "name": "Hospital::HandleButtonDown", "matching": 0.3558792924037461, "diff": [["@@ -0x10075710,418 +0x1003fee0,408 @@", [{"both": [["0x10075710", "mov eax, dword ptr fs:[0]", "0x1003fee0"], ["0x10075716", "push ebp", "0x1003fee6"], ["0x10075717", "mov ebp, esp", "0x1003fee7"], ["0x10075719", "push -1", "0x1003fee9"], ["0x1007571b", "push <OFFSET1>", "0x1003feeb"], ["0x10075720", "push eax", "0x1003fef0"], ["0x10075721", "mov dword ptr fs:[0], esp", "0x1003fef1"], ["0x10075728", "sub esp, 0x9c", "0x1003fef8"]]}, {"orig": [], "recomp": [["0x1003fefe", "cmp word ptr [ecx + 0x100], 1"], ["0x1003ff06", "push ebx"]]}, {"both": [["0x1007572e", "mov dword ptr [ebp - 0x10], ecx", "0x1003ff07"]]}, {"orig": [["0x10075731", "push ebx"], ["0x10075732", "cmp word ptr [ecx + 0x100], 1"], ["0x1007573a", "jne 0x824"]], "recomp": [["0x1003ff0a", "jne 0x800"]]}, {"both": [["0x10075740", "mov eax, dword ptr [ebp + 8]", "0x1003ff10"], ["0x10075743", "mov ecx, dword ptr [eax + 0x14]", "0x1003ff13"], ["0x10075746", "mov edx, dword ptr [eax + 0x10]", "0x1003ff16"], ["0x10075749", "push ecx", "0x1003ff19"], ["0x1007574a", "push edx", "0x1003ff1a"], ["0x1007574b", "call PickROI (FUNCTION)", "0x1003ff1b"], ["0x10075750", "add esp, 8", "0x1003ff20"], ["0x10075753", "test eax, eax", "0x1003ff23"]]}, {"orig": [["0x10075755", "je 0x809"]], "recomp": [["0x1003ff25", "je 0x7e5"]]}, {"both": [["0x1007575b", "mov eax, dword ptr [eax + 0xe4]", "0x1003ff2b"], ["0x10075761", "cmp byte ptr [eax], 0x2a", "0x1003ff31"], ["0x10075764", "jne 0x1", "0x1003ff34"], ["0x10075766", "inc eax", "0x1003ff36"], ["0x10075767", "push eax", "0x1003ff37"], ["0x10075768", "push 'actor_ha' (STRING)", "0x1003ff38"], ["0x1007576d", "call __strcmpi (FUNCTION)", "0x1003ff3d"], ["0x10075772", "add esp, 8", "0x1003ff42"], ["0x10075775", "test eax, eax", "0x1003ff45"]]}, {"orig": [["0x10075777", "jne 0x7e7"]], "recomp": [["0x1003ff47", "jne 0x7c3"]]}, {"both": [["0x1007577d", "call InputManager (FUNCTION)", "0x1003ff4d"], ["0x10075782", "mov byte ptr [eax + 0x88], 1", "0x1003ff52"], ["0x10075789", "mov byte ptr [eax + 0x336], 0", "0x1003ff59"], ["0x10075790", "mov ecx, dword ptr [ebp - 0x10]", "0x1003ff60"], ["0x10075793", "mov word ptr [ecx + 0x100], 3", "0x1003ff63"]]}, {"orig": [["0x1007579c", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": []}, {"both": [["0x1007579f", "mov edx, dword ptr [ecx + 0x104]", "0x1003ff6c"], ["0x100757a5", "lea ecx, [edx + 8]", "0x1003ff72"], ["0x100757a8", "mov eax, dword ptr [ecx]", "0x1003ff75"], ["0x100757aa", "cmp eax, 6", "0x1003ff77"]]}, {"orig": [["0x100757ad", "jne 0x8f"]], "recomp": [["0x1003ff7a", "jne 0x8c"]]}, {"both": [["0x100757b3", "mov eax, dword ptr [ebp - 0x10]", "0x1003ff80"], ["0x100757b6", "cmp byte ptr [eax + 0x128], 0", "0x1003ff83"]]}, {"orig": [["0x100757bd", "jne 0x79"]], "recomp": [["0x1003ff8a", "jne 0x76"]]}, {"both": [["0x100757bf", "mov byte ptr [eax + 0x128], 1", "0x1003ff8c"], ["0x100757c6", "call TickleManager (FUNCTION)", "0x1003ff93"], ["0x100757cb", "mov ebx, dword ptr [eax]", "0x1003ff98"], ["0x100757cd", "mov ecx, eax", "0x1003ff9a"], ["0x100757cf", "mov eax, dword ptr [ebp - 0x10]", "0x1003ff9c"], ["0x100757d2", "push eax", "0x1003ff9f"], ["0x100757d3", "call dword ptr [ebx + 0x18]", "0x1003ffa0"], ["0x100757d6", "mov ecx, dword ptr [ebp - 0x10]", "0x1003ffa3"], ["0x100757d9", "push 'Act1State' (STRING)", "0x1003ffa6"], ["0x100757de", "mov eax, dword ptr [ecx + 0x104]", "0x1003ffab"], ["0x100757e4", "mov dword ptr [eax + 8], 9", "0x1003ffb1"], ["0x100757eb", "call GameState (FUNCTION)", "0x1003ffb8"], ["0x100757f0", "mov ecx, eax", "0x1003ffbd"], ["0x100757f2", "call LegoGameState::GetState (FUNCTION)", "0x1003ffbf"]]}, {"orig": [["0x100757f7", "mov dword ptr [eax + 0x18], 9"]], "recomp": []}, {"both": [["0x100757fe", "mov ecx, dword ptr [ebp - 0x10]", "0x1003ffc4"], ["0x10075801", "push 0x203", "0x1003ffc7"]]}, {"orig": [], "recomp": [["0x1003ffcc", "mov dword ptr [eax + 0x18], 9"]]}, {"both": [["0x10075806", "push 0x1f4", "0x1003ffd3"]]}, {"orig": [], "recomp": [["0x1003ffd8", "lea eax, [ecx + 0xc]"]]}, {"both": [["0x1007580b", "mov dword ptr [ecx + 0xfc], 0x1f", "0x1003ffdb"]]}, {"orig": [["0x10075815", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075818", "add eax, 0xc"]], "recomp": []}, {"both": [["0x1007581b", "push eax", "0x1003ffe5"], ["0x1007581c", "call DeleteObjects (FUNCTION)", "0x1003ffe6"], ["0x10075821", "add esp, 0xc", "0x1003ffeb"], ["0x10075824", "push 0", "0x1003ffee"], ["0x10075826", "push 0", "0x1003fff0"], ["0x10075828", "push 0x32", "0x1003fff2"], ["0x1007582a", "push 3", "0x1003fff4"], ["0x1007582c", "call TransitionManager (FUNCTION)", "0x1003fff6"], ["0x10075831", "mov ecx, eax", "0x1003fffb"], ["0x10075833", "call MxTransitionManager::StartTransition (FUNCTION)", "0x1003fffd"], ["0x10075838", "mov eax, 1", "0x10040002"]]}, {"orig": [["0x1007583d", "jmp 0x724"]], "recomp": [["0x10040007", "jmp 0x706"]]}, {"both": [["0x10075842", "cmp eax, 0xa", "0x1004000c"], ["0x10075845", "je 0xa", "0x1004000f"], ["0x10075847", "cmp eax, 8", "0x10040011"], ["0x1007584a", "jne -0x14", "0x10040014"], ["0x1007584c", "cmp eax, 0xa", "0x10040016"], ["0x1007584f", "jne 0x35", "0x10040019"], ["0x10075851", "mov dword ptr [ecx], 0xb", "0x1004001b"], ["0x10075857", "call BackgroundAudioManager (FUNCTION)", "0x10040021"], ["0x1007585c", "mov ecx, eax", "0x10040026"], ["0x1007585e", "call MxBackgroundAudioManager::RaiseVolume (FUNCTION)", "0x10040028"], ["0x10075863", "push 0x203", "0x1004002d"], ["0x10075868", "mov eax, dword ptr [ebp - 0x10]", "0x10040032"], ["0x1007586b", "push 0x1f4", "0x10040035"], ["0x10075870", "add eax, 0xc", "0x1004003a"], ["0x10075873", "push eax", "0x1004003d"], ["0x10075874", "call DeleteObjects (FUNCTION)", "0x1004003e"], ["0x10075879", "add esp, 0xc", "0x10040043"], ["0x1007587c", "mov eax, 1", "0x10040046"]]}, {"orig": [["0x10075881", "jmp 0x6e0"]], "recomp": [["0x1004004b", "jmp 0x6c2"]]}, {"both": [["0x10075886", "mov eax, dword ptr [ebp - 0x10]", "0x10040050"], ["0x10075889", "movsx eax, word ptr [eax + 0xf8]", "0x10040053"], ["0x10075890", "dec eax", "0x1004005a"], ["0x10075891", "cmp eax, 4", "0x1004005b"], ["0x10075894", "ja -0x5e", "0x1004005e"]]}, {"orig": [["0x10075896", "jmp dword ptr [eax*4 + 0x10075f78]"]], "recomp": [["0x10040060", "jmp dword ptr [eax*4 + 0x10040724]"]]}, {"both": [["0x1007589d", "movsx eax, word ptr [edx + 0xe]", "0x10040067"]]}, {"orig": [], "recomp": [["0x1004006b", "test eax, eax"], ["0x1004006d", "jl 0x9"], ["0x1004006f", "cmp eax, 1"], ["0x10040072", "jle 0x9f"], ["0x10040078", "xor ebx, ebx"], ["0x1004007a", "mov dword ptr [ecx], 0xc"], ["0x10040080", "lea ecx, [ebp - 0xa8]"], ["0x10040086", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x1004008b", "mov dword ptr [ebp - 4], ebx"], ["0x1004008e", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x10040093", "mov byte ptr [ebp - 4], 1"], ["0x10040097", "mov ecx, dword ptr [eax]"], ["0x10040099", "mov dword ptr [ebp - 0x14], ecx"], ["0x1004009c", "lea ecx, [ebp - 0x14]"], ["0x1004009f", "push ecx"], ["0x100400a0", "lea ecx, [ebp - 0x88]"], ["0x100400a6", "call MxAtomId::operator= (FUNCTION)"], ["0x100400ab", "mov byte ptr [ebp - 4], bl"], ["0x100400ae", "call <OFFSET18>"], ["0x100400b3", "mov dword ptr [ebp - 0x8c], 0x1f9"], ["0x100400bd", "call BackgroundAudioManager (FUNCTION)"], ["0x100400c2", "mov ecx, eax"], ["0x100400c4", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x100400c9", "lea eax, [ebp - 0xa8]"], ["0x100400cf", "push eax"], ["0x100400d0", "call Start (FUNCTION)"], ["0x100400d5", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100400dc", "add esp, 4"], ["0x100400df", "call <OFFSET21>"], ["0x100400e4", "mov eax, dword ptr [ebp - 0x10]"], ["0x100400e7", "mov dword ptr [eax + 0x10c], 0x1f9"], ["0x100400f1", "mov word ptr [eax + 0x108], 1"], ["0x100400fa", "mov eax, 1"], ["0x100400ff", "jmp 0x60e"], ["0x10040104", "lea ecx, [ebp - 0x14]"], ["0x10040107", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x1004010c", "lea ecx, [ebp - 0xa8]"], ["0x10040112", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x10040117", "mov ebx, 2"], ["0x1004011c", "mov dword ptr [ecx], 0xc"], ["0x10040122", "lea ecx, [ebp - 0xa8]"], ["0x10040128", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x1004012d", "mov dword ptr [ebp - 4], ebx"], ["0x10040130", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x10040135", "mov byte ptr [ebp - 4], 3"], ["0x10040139", "mov ecx, dword ptr [eax]"], ["0x1004013b", "mov dword ptr [ebp - 0x14], ecx"], ["0x1004013e", "lea ecx, [ebp - 0x14]"], ["0x10040141", "push ecx"], ["0x10040142", "lea ecx, [ebp - 0x88]"], ["0x10040148", "call MxAtomId::operator= (FUNCTION)"], ["0x1004014d", "mov byte ptr [ebp - 4], bl"], ["0x10040150", "call <OFFSET24>"], ["0x10040155", "mov dword ptr [ebp - 0x8c], 0x1f8"], ["0x1004015f", "call BackgroundAudioManager (FUNCTION)"], ["0x10040164", "mov ecx, eax"], ["0x10040166", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x1004016b", "lea eax, [ebp - 0xa8]"], ["0x10040171", "push eax"], ["0x10040172", "call Start (FUNCTION)"], ["0x10040177", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1004017e", "add esp, 4"], ["0x10040181", "call <OFFSET25>"], ["0x10040186", "mov eax, dword ptr [ebp - 0x10]"], ["0x10040189", "mov dword ptr [eax + 0x10c], 0x1f8"], ["0x10040193", "mov word ptr [eax + 0x108], 1"], ["0x1004019c", "mov eax, 1"], ["0x100401a1", "jmp 0x56c"], ["0x100401a6", "lea ecx, [ebp - 0x14]"], ["0x100401a9", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100401ae", "lea ecx, [ebp - 0xa8]"], ["0x100401b4", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x100401b9", "movsx eax, word ptr [edx + 0x10]"]]}, {"both": [["0x100758a1", "test eax, eax", "0x100401bd"], ["0x100758a3", "jl 0x9", "0x100401bf"], ["0x100758a5", "cmp eax, 1", "0x100401c1"], ["0x100758a8", "jle 0xa2", "0x100401c4"]]}, {"orig": [["0x100758ae", "xor ebx, ebx"], ["0x100758b0", "mov dword ptr [ecx], 0xc"], ["0x100758b6", "lea ecx, [ebp - 0xa8]"], ["0x100758bc", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x100758c1", "mov dword ptr [ebp - 4], ebx"], ["0x100758c4", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x100758c9", "mov byte ptr [ebp - 4], 1"], ["0x100758cd", "mov ecx, dword ptr [eax]"], ["0x100758cf", "mov dword ptr [ebp - 0x14], ecx"], ["0x100758d2", "lea ecx, [ebp - 0x14]"], ["0x100758d5", "push ecx"], ["0x100758d6", "lea ecx, [ebp - 0x88]"], ["0x100758dc", "call MxAtomId::operator= (FUNCTION)"], ["0x100758e1", "mov byte ptr [ebp - 4], bl"], ["0x100758e4", "call <OFFSET18>"], ["0x100758e9", "mov dword ptr [ebp - 0x8c], 0x1f9"], ["0x100758f3", "call BackgroundAudioManager (FUNCTION)"], ["0x100758f8", "mov ecx, eax"], ["0x100758fa", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x100758ff", "lea eax, [ebp - 0xa8]"], ["0x10075905", "push eax"], ["0x10075906", "call Start (FUNCTION)"], ["0x1007590b", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10075912", "add esp, 4"], ["0x10075915", "call <OFFSET21>"], ["0x1007591a", "mov eax, dword ptr [ebp - 0x10]"], ["0x1007591d", "mov dword ptr [eax + 0x10c], 0x1f9"], ["0x10075927", "mov eax, dword ptr [ebp - 0x10]"], ["0x1007592a", "mov word ptr [eax + 0x108], 1"], ["0x10075933", "mov eax, 1"], ["0x10075938", "jmp 0x629"], ["0x1007593d", "lea ecx, [ebp - 0x14]"], ["0x10075940", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10075945", "lea ecx, [ebp - 0xa8]"], ["0x1007594b", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x10075950", "mov ebx, 2"], ["0x10075955", "mov dword ptr [ecx], 0xc"], ["0x1007595b", "lea ecx, [ebp - 0xa8]"], ["0x10075961", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10075966", "mov dword ptr [ebp - 4], ebx"], ["0x10075969", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x1007596e", "mov byte ptr [ebp - 4], 3"], ["0x10075972", "mov ecx, dword ptr [eax]"], ["0x10075974", "mov dword ptr [ebp - 0x14], ecx"], ["0x10075977", "lea ecx, [ebp - 0x14]"], ["0x1007597a", "push ecx"], ["0x1007597b", "lea ecx, [ebp - 0x88]"], ["0x10075981", "call MxAtomId::operator= (FUNCTION)"], ["0x10075986", "mov byte ptr [ebp - 4], bl"], ["0x10075989", "call <OFFSET24>"], ["0x1007598e", "mov dword ptr [ebp - 0x8c], 0x1f8"], ["0x10075998", "call BackgroundAudioManager (FUNCTION)"], ["0x1007599d", "mov ecx, eax"], ["0x1007599f", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x100759a4", "lea eax, [ebp - 0xa8]"], ["0x100759aa", "push eax"], ["0x100759ab", "call Start (FUNCTION)"], ["0x100759b0", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100759b7", "add esp, 4"], ["0x100759ba", "call <OFFSET25>"], ["0x100759bf", "mov eax, dword ptr [ebp - 0x10]"], ["0x100759c2", "mov dword ptr [eax + 0x10c], 0x1f8"], ["0x100759cc", "mov eax, dword ptr [ebp - 0x10]"], ["0x100759cf", "mov word ptr [eax + 0x108], 1"], ["0x100759d8", "mov eax, 1"], ["0x100759dd", "jmp 0x584"], ["0x100759e2", "lea ecx, [ebp - 0x14]"], ["0x100759e5", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100759ea", "lea ecx, [ebp - 0xa8]"], ["0x100759f0", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x100759f5", "movsx eax, word ptr [edx + 0x10]"]], "recomp": [["0x100401ca", "mov ebx, 4"], ["0x100401cf", "mov dword ptr [ecx], 0xc"], ["0x100401d5", "lea ecx, [ebp - 0xa8]"], ["0x100401db", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x100401e0", "mov dword ptr [ebp - 4], ebx"], ["0x100401e3", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x100401e8", "mov byte ptr [ebp - 4], 5"], ["0x100401ec", "mov ecx, dword ptr [eax]"], ["0x100401ee", "mov dword ptr [ebp - 0x14], ecx"], ["0x100401f1", "lea ecx, [ebp - 0x14]"], ["0x100401f4", "push ecx"], ["0x100401f5", "lea ecx, [ebp - 0x88]"], ["0x100401fb", "call MxAtomId::operator= (FUNCTION)"], ["0x10040200", "mov byte ptr [ebp - 4], bl"], ["0x10040203", "call <OFFSET26>"], ["0x10040208", "mov dword ptr [ebp - 0x8c], 0x1fb"], ["0x10040212", "call BackgroundAudioManager (FUNCTION)"], ["0x10040217", "mov ecx, eax"], ["0x10040219", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x1004021e", "lea eax, [ebp - 0xa8]"], ["0x10040224", "push eax"], ["0x10040225", "call Start (FUNCTION)"], ["0x1004022a", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10040231", "add esp, 4"], ["0x10040234", "call <OFFSET27>"], ["0x10040239", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004023c", "mov dword ptr [eax + 0x10c], 0x1fb"], ["0x10040246", "mov word ptr [eax + 0x108], 1"], ["0x1004024f", "mov eax, 1"], ["0x10040254", "jmp 0x4b9"], ["0x10040259", "lea ecx, [ebp - 0x14]"], ["0x1004025c", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10040261", "lea ecx, [ebp - 0xa8]"], ["0x10040267", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x1004026c", "mov ebx, 6"], ["0x10040271", "mov dword ptr [ecx], 0xc"], ["0x10040277", "lea ecx, [ebp - 0xa8]"], ["0x1004027d", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10040282", "mov dword ptr [ebp - 4], ebx"], ["0x10040285", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x1004028a", "mov byte ptr [ebp - 4], 7"], ["0x1004028e", "mov ecx, dword ptr [eax]"], ["0x10040290", "mov dword ptr [ebp - 0x14], ecx"], ["0x10040293", "lea ecx, [ebp - 0x14]"], ["0x10040296", "push ecx"], ["0x10040297", "lea ecx, [ebp - 0x88]"], ["0x1004029d", "call MxAtomId::operator= (FUNCTION)"], ["0x100402a2", "mov byte ptr [ebp - 4], bl"], ["0x100402a5", "call <OFFSET28>"], ["0x100402aa", "mov dword ptr [ebp - 0x8c], 0x1fa"], ["0x100402b4", "call BackgroundAudioManager (FUNCTION)"], ["0x100402b9", "mov ecx, eax"], ["0x100402bb", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x100402c0", "lea eax, [ebp - 0xa8]"], ["0x100402c6", "push eax"], ["0x100402c7", "call Start (FUNCTION)"], ["0x100402cc", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100402d3", "add esp, 4"], ["0x100402d6", "call <OFFSET29>"], ["0x100402db", "mov eax, dword ptr [ebp - 0x10]"], ["0x100402de", "mov dword ptr [eax + 0x10c], 0x1fa"], ["0x100402e8", "mov word ptr [eax + 0x108], 1"], ["0x100402f1", "mov eax, 1"], ["0x100402f6", "jmp 0x417"], ["0x100402fb", "lea ecx, [ebp - 0x14]"], ["0x100402fe", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10040303", "lea ecx, [ebp - 0xa8]"], ["0x10040309", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x1004030e", "movsx eax, word ptr [edx + 0x12]"]]}, {"both": [["0x100759f9", "test eax, eax", "0x10040312"], ["0x100759fb", "jl 0x9", "0x10040314"], ["0x100759fd", "cmp eax, 1", "0x10040316"]]}, {"orig": [["0x10075a00", "jle 0xa5"], ["0x10075a06", "mov ebx, 4"], ["0x10075a0b", "mov dword ptr [ecx], 0xc"], ["0x10075a11", "lea ecx, [ebp - 0xa8]"], ["0x10075a17", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10075a1c", "mov dword ptr [ebp - 4], ebx"], ["0x10075a1f", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x10075a24", "mov byte ptr [ebp - 4], 5"], ["0x10075a28", "mov ecx, dword ptr [eax]"], ["0x10075a2a", "mov dword ptr [ebp - 0x14], ecx"], ["0x10075a2d", "lea ecx, [ebp - 0x14]"], ["0x10075a30", "push ecx"], ["0x10075a31", "lea ecx, [ebp - 0x88]"], ["0x10075a37", "call MxAtomId::operator= (FUNCTION)"], ["0x10075a3c", "mov byte ptr [ebp - 4], bl"], ["0x10075a3f", "call <OFFSET26>"], ["0x10075a44", "mov dword ptr [ebp - 0x8c], 0x1fb"], ["0x10075a4e", "call BackgroundAudioManager (FUNCTION)"], ["0x10075a53", "mov ecx, eax"], ["0x10075a55", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x10075a5a", "lea eax, [ebp - 0xa8]"], ["0x10075a60", "push eax"], ["0x10075a61", "call Start (FUNCTION)"], ["0x10075a66", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10075a6d", "add esp, 4"], ["0x10075a70", "call <OFFSET27>"], ["0x10075a75", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075a78", "mov dword ptr [eax + 0x10c], 0x1fb"], ["0x10075a82", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075a85", "mov word ptr [eax + 0x108], 1"], ["0x10075a8e", "mov eax, 1"], ["0x10075a93", "jmp 0x4ce"], ["0x10075a98", "lea ecx, [ebp - 0x14]"], ["0x10075a9b", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10075aa0", "lea ecx, [ebp - 0xa8]"], ["0x10075aa6", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x10075aab", "mov ebx, 6"], ["0x10075ab0", "mov dword ptr [ecx], 0xc"], ["0x10075ab6", "lea ecx, [ebp - 0xa8]"], ["0x10075abc", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10075ac1", "mov dword ptr [ebp - 4], ebx"], ["0x10075ac4", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x10075ac9", "mov byte ptr [ebp - 4], 7"], ["0x10075acd", "mov ecx, dword ptr [eax]"], ["0x10075acf", "mov dword ptr [ebp - 0x14], ecx"], ["0x10075ad2", "lea ecx, [ebp - 0x14]"], ["0x10075ad5", "push ecx"], ["0x10075ad6", "lea ecx, [ebp - 0x88]"], ["0x10075adc", "call MxAtomId::operator= (FUNCTION)"], ["0x10075ae1", "mov byte ptr [ebp - 4], bl"], ["0x10075ae4", "call <OFFSET28>"], ["0x10075ae9", "mov dword ptr [ebp - 0x8c], 0x1fa"], ["0x10075af3", "call BackgroundAudioManager (FUNCTION)"], ["0x10075af8", "mov ecx, eax"], ["0x10075afa", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x10075aff", "lea eax, [ebp - 0xa8]"], ["0x10075b05", "push eax"], ["0x10075b06", "call Start (FUNCTION)"], ["0x10075b0b", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10075b12", "add esp, 4"], ["0x10075b15", "call <OFFSET29>"], ["0x10075b1a", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075b1d", "mov dword ptr [eax + 0x10c], 0x1fa"], ["0x10075b27", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075b2a", "mov word ptr [eax + 0x108], 1"], ["0x10075b33", "mov eax, 1"], ["0x10075b38", "jmp 0x429"], ["0x10075b3d", "lea ecx, [ebp - 0x14]"], ["0x10075b40", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10075b45", "lea ecx, [ebp - 0xa8]"], ["0x10075b4b", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x10075b50", "movsx eax, word ptr [edx + 0x12]"]], "recomp": [["0x10040319", "jle 0xa2"], ["0x1004031f", "mov ebx, 8"], ["0x10040324", "mov dword ptr [ecx], 0xc"], ["0x1004032a", "lea ecx, [ebp - 0xa8]"], ["0x10040330", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10040335", "mov dword ptr [ebp - 4], ebx"], ["0x10040338", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x1004033d", "mov byte ptr [ebp - 4], 9"], ["0x10040341", "mov ecx, dword ptr [eax]"], ["0x10040343", "mov dword ptr [ebp - 0x14], ecx"], ["0x10040346", "lea ecx, [ebp - 0x14]"], ["0x10040349", "push ecx"], ["0x1004034a", "lea ecx, [ebp - 0x88]"], ["0x10040350", "call MxAtomId::operator= (FUNCTION)"], ["0x10040355", "mov byte ptr [ebp - 4], bl"], ["0x10040358", "call <OFFSET30>"], ["0x1004035d", "mov dword ptr [ebp - 0x8c], 0x1fe"], ["0x10040367", "call BackgroundAudioManager (FUNCTION)"], ["0x1004036c", "mov ecx, eax"], ["0x1004036e", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x10040373", "lea eax, [ebp - 0xa8]"], ["0x10040379", "push eax"], ["0x1004037a", "call Start (FUNCTION)"], ["0x1004037f", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10040386", "add esp, 4"], ["0x10040389", "call <OFFSET31>"], ["0x1004038e", "mov eax, dword ptr [ebp - 0x10]"], ["0x10040391", "mov dword ptr [eax + 0x10c], 0x1fe"], ["0x1004039b", "mov word ptr [eax + 0x108], 1"], ["0x100403a4", "mov eax, 1"], ["0x100403a9", "jmp 0x364"], ["0x100403ae", "lea ecx, [ebp - 0x14]"], ["0x100403b1", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100403b6", "lea ecx, [ebp - 0xa8]"], ["0x100403bc", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x100403c1", "mov ebx, 0xa"], ["0x100403c6", "mov dword ptr [ecx], 0xc"], ["0x100403cc", "lea ecx, [ebp - 0xa8]"], ["0x100403d2", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x100403d7", "mov dword ptr [ebp - 4], ebx"], ["0x100403da", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x100403df", "mov byte ptr [ebp - 4], 0xb"], ["0x100403e3", "mov ecx, dword ptr [eax]"], ["0x100403e5", "mov dword ptr [ebp - 0x14], ecx"], ["0x100403e8", "lea ecx, [ebp - 0x14]"], ["0x100403eb", "push ecx"], ["0x100403ec", "lea ecx, [ebp - 0x88]"], ["0x100403f2", "call MxAtomId::operator= (FUNCTION)"], ["0x100403f7", "mov byte ptr [ebp - 4], bl"], ["0x100403fa", "call <OFFSET32>"], ["0x100403ff", "mov dword ptr [ebp - 0x8c], 0x1fd"], ["0x10040409", "call BackgroundAudioManager (FUNCTION)"], ["0x1004040e", "mov ecx, eax"], ["0x10040410", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x10040415", "lea eax, [ebp - 0xa8]"], ["0x1004041b", "push eax"], ["0x1004041c", "call Start (FUNCTION)"], ["0x10040421", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10040428", "add esp, 4"], ["0x1004042b", "call <OFFSET33>"], ["0x10040430", "mov eax, dword ptr [ebp - 0x10]"], ["0x10040433", "mov dword ptr [eax + 0x10c], 0x1fd"], ["0x1004043d", "mov word ptr [eax + 0x108], 1"], ["0x10040446", "mov eax, 1"], ["0x1004044b", "jmp 0x2c2"], ["0x10040450", "lea ecx, [ebp - 0x14]"], ["0x10040453", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10040458", "lea ecx, [ebp - 0xa8]"], ["0x1004045e", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x10040463", "movsx eax, word ptr [edx + 0x14]"]]}, {"both": [["0x10075b54", "test eax, eax", "0x10040467"], ["0x10075b56", "jl 0x9", "0x10040469"], ["0x10075b58", "cmp eax, 1", "0x1004046b"]]}, {"orig": [["0x10075b5b", "jle 0xa5"], ["0x10075b61", "mov ebx, 8"], ["0x10075b66", "mov dword ptr [ecx], 0xc"], ["0x10075b6c", "lea ecx, [ebp - 0xa8]"], ["0x10075b72", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10075b77", "mov dword ptr [ebp - 4], ebx"], ["0x10075b7a", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x10075b7f", "mov byte ptr [ebp - 4], 9"], ["0x10075b83", "mov ecx, dword ptr [eax]"], ["0x10075b85", "mov dword ptr [ebp - 0x14], ecx"], ["0x10075b88", "lea ecx, [ebp - 0x14]"], ["0x10075b8b", "push ecx"], ["0x10075b8c", "lea ecx, [ebp - 0x88]"], ["0x10075b92", "call MxAtomId::operator= (FUNCTION)"], ["0x10075b97", "mov byte ptr [ebp - 4], bl"], ["0x10075b9a", "call <OFFSET30>"], ["0x10075b9f", "mov dword ptr [ebp - 0x8c], 0x1fe"], ["0x10075ba9", "call BackgroundAudioManager (FUNCTION)"], ["0x10075bae", "mov ecx, eax"], ["0x10075bb0", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x10075bb5", "lea eax, [ebp - 0xa8]"], ["0x10075bbb", "push eax"], ["0x10075bbc", "call Start (FUNCTION)"], ["0x10075bc1", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10075bc8", "add esp, 4"], ["0x10075bcb", "call <OFFSET31>"], ["0x10075bd0", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075bd3", "mov dword ptr [eax + 0x10c], 0x1fe"], ["0x10075bdd", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075be0", "mov word ptr [eax + 0x108], 1"], ["0x10075be9", "mov eax, 1"], ["0x10075bee", "jmp 0x373"], ["0x10075bf3", "lea ecx, [ebp - 0x14]"], ["0x10075bf6", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10075bfb", "lea ecx, [ebp - 0xa8]"], ["0x10075c01", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x10075c06", "mov ebx, 0xa"], ["0x10075c0b", "mov dword ptr [ecx], 0xc"], ["0x10075c11", "lea ecx, [ebp - 0xa8]"], ["0x10075c17", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10075c1c", "mov dword ptr [ebp - 4], ebx"], ["0x10075c1f", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x10075c24", "mov byte ptr [ebp - 4], 0xb"], ["0x10075c28", "mov ecx, dword ptr [eax]"], ["0x10075c2a", "mov dword ptr [ebp - 0x14], ecx"], ["0x10075c2d", "lea ecx, [ebp - 0x14]"], ["0x10075c30", "push ecx"], ["0x10075c31", "lea ecx, [ebp - 0x88]"], ["0x10075c37", "call MxAtomId::operator= (FUNCTION)"], ["0x10075c3c", "mov byte ptr [ebp - 4], bl"], ["0x10075c3f", "call <OFFSET32>"], ["0x10075c44", "mov dword ptr [ebp - 0x8c], 0x1fd"], ["0x10075c4e", "call BackgroundAudioManager (FUNCTION)"], ["0x10075c53", "mov ecx, eax"], ["0x10075c55", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x10075c5a", "lea eax, [ebp - 0xa8]"], ["0x10075c60", "push eax"], ["0x10075c61", "call Start (FUNCTION)"], ["0x10075c66", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10075c6d", "add esp, 4"], ["0x10075c70", "call <OFFSET33>"], ["0x10075c75", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075c78", "mov dword ptr [eax + 0x10c], 0x1fd"], ["0x10075c82", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075c85", "mov word ptr [eax + 0x108], 1"], ["0x10075c8e", "mov eax, 1"], ["0x10075c93", "jmp 0x2ce"], ["0x10075c98", "lea ecx, [ebp - 0x14]"], ["0x10075c9b", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10075ca0", "lea ecx, [ebp - 0xa8]"], ["0x10075ca6", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x10075cab", "movsx eax, word ptr [edx + 0x14]"]], "recomp": [["0x1004046e", "jle 0x9e"], ["0x10040474", "mov ebx, 0xc"], ["0x10040479", "mov dword ptr [ecx], ebx"], ["0x1004047b", "lea ecx, [ebp - 0xa8]"], ["0x10040481", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10040486", "mov dword ptr [ebp - 4], ebx"], ["0x10040489", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x1004048e", "mov byte ptr [ebp - 4], 0xd"], ["0x10040492", "mov ecx, dword ptr [eax]"], ["0x10040494", "mov dword ptr [ebp - 0x14], ecx"], ["0x10040497", "lea ecx, [ebp - 0x14]"], ["0x1004049a", "push ecx"], ["0x1004049b", "lea ecx, [ebp - 0x88]"], ["0x100404a1", "call MxAtomId::operator= (FUNCTION)"], ["0x100404a6", "mov byte ptr [ebp - 4], bl"], ["0x100404a9", "call <OFFSET34>"], ["0x100404ae", "mov dword ptr [ebp - 0x8c], 0x201"], ["0x100404b8", "call BackgroundAudioManager (FUNCTION)"], ["0x100404bd", "mov ecx, eax"], ["0x100404bf", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x100404c4", "lea eax, [ebp - 0xa8]"], ["0x100404ca", "push eax"], ["0x100404cb", "call Start (FUNCTION)"], ["0x100404d0", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100404d7", "add esp, 4"], ["0x100404da", "call <OFFSET35>"], ["0x100404df", "mov eax, dword ptr [ebp - 0x10]"], ["0x100404e2", "mov dword ptr [eax + 0x10c], 0x201"], ["0x100404ec", "mov word ptr [eax + 0x108], 1"], ["0x100404f5", "mov eax, 1"], ["0x100404fa", "jmp 0x213"], ["0x100404ff", "lea ecx, [ebp - 0x14]"], ["0x10040502", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10040507", "lea ecx, [ebp - 0xa8]"], ["0x1004050d", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x10040512", "mov ebx, 0xe"], ["0x10040517", "mov dword ptr [ecx], 0xc"], ["0x1004051d", "lea ecx, [ebp - 0xa8]"], ["0x10040523", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10040528", "mov dword ptr [ebp - 4], ebx"], ["0x1004052b", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x10040530", "mov byte ptr [ebp - 4], 0xf"], ["0x10040534", "mov ecx, dword ptr [eax]"], ["0x10040536", "mov dword ptr [ebp - 0x14], ecx"], ["0x10040539", "lea ecx, [ebp - 0x14]"], ["0x1004053c", "push ecx"], ["0x1004053d", "lea ecx, [ebp - 0x88]"], ["0x10040543", "call MxAtomId::operator= (FUNCTION)"], ["0x10040548", "mov byte ptr [ebp - 4], bl"], ["0x1004054b", "call <OFFSET36>"], ["0x10040550", "mov dword ptr [ebp - 0x8c], 0x1fc"], ["0x1004055a", "call BackgroundAudioManager (FUNCTION)"], ["0x1004055f", "mov ecx, eax"], ["0x10040561", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x10040566", "lea eax, [ebp - 0xa8]"], ["0x1004056c", "push eax"], ["0x1004056d", "call Start (FUNCTION)"], ["0x10040572", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10040579", "add esp, 4"], ["0x1004057c", "call <OFFSET37>"], ["0x10040581", "mov eax, dword ptr [ebp - 0x10]"], ["0x10040584", "mov dword ptr [eax + 0x10c], 0x1fc"], ["0x1004058e", "mov word ptr [eax + 0x108], 1"], ["0x10040597", "mov eax, 1"], ["0x1004059c", "jmp 0x171"], ["0x100405a1", "lea ecx, [ebp - 0x14]"], ["0x100405a4", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x100405a9", "lea ecx, [ebp - 0xa8]"], ["0x100405af", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x100405b4", "movsx eax, word ptr [edx + 0x16]"]]}, {"both": [["0x10075caf", "test eax, eax", "0x100405b8"], ["0x10075cb1", "jl 0x9", "0x100405ba"], ["0x10075cb3", "cmp eax, 1", "0x100405bc"]]}, {"orig": [["0x10075cb6", "jle 0xa1"], ["0x10075cbc", "mov ebx, 0xc"], ["0x10075cc1", "mov dword ptr [ecx], ebx"], ["0x10075cc3", "lea ecx, [ebp - 0xa8]"], ["0x10075cc9", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10075cce", "mov dword ptr [ebp - 4], ebx"], ["0x10075cd1", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x10075cd6", "mov byte ptr [ebp - 4], 0xd"], ["0x10075cda", "mov ecx, dword ptr [eax]"], ["0x10075cdc", "mov dword ptr [ebp - 0x14], ecx"], ["0x10075cdf", "lea ecx, [ebp - 0x14]"], ["0x10075ce2", "push ecx"], ["0x10075ce3", "lea ecx, [ebp - 0x88]"], ["0x10075ce9", "call MxAtomId::operator= (FUNCTION)"], ["0x10075cee", "mov byte ptr [ebp - 4], bl"], ["0x10075cf1", "call <OFFSET34>"], ["0x10075cf6", "mov dword ptr [ebp - 0x8c], 0x201"], ["0x10075d00", "call BackgroundAudioManager (FUNCTION)"], ["0x10075d05", "mov ecx, eax"], ["0x10075d07", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x10075d0c", "lea eax, [ebp - 0xa8]"], ["0x10075d12", "push eax"], ["0x10075d13", "call Start (FUNCTION)"], ["0x10075d18", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10075d1f", "add esp, 4"], ["0x10075d22", "call <OFFSET35>"], ["0x10075d27", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075d2a", "mov dword ptr [eax + 0x10c], 0x201"], ["0x10075d34", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075d37", "mov word ptr [eax + 0x108], 1"], ["0x10075d40", "mov eax, 1"], ["0x10075d45", "jmp 0x21c"], ["0x10075d4a", "lea ecx, [ebp - 0x14]"], ["0x10075d4d", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10075d52", "lea ecx, [ebp - 0xa8]"], ["0x10075d58", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x10075d5d", "mov ebx, 0xe"], ["0x10075d62", "mov dword ptr [ecx], 0xc"], ["0x10075d68", "lea ecx, [ebp - 0xa8]"], ["0x10075d6e", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x10075d73", "mov dword ptr [ebp - 4], ebx"], ["0x10075d76", "mov eax, dword ptr [g_hospitalScript (DATA)]"], ["0x10075d7b", "mov byte ptr [ebp - 4], 0xf"], ["0x10075d7f", "mov ecx, dword ptr [eax]"], ["0x10075d81", "mov dword ptr [ebp - 0x14], ecx"], ["0x10075d84", "lea ecx, [ebp - 0x14]"], ["0x10075d87", "push ecx"], ["0x10075d88", "lea ecx, [ebp - 0x88]"], ["0x10075d8e", "call MxAtomId::operator= (FUNCTION)"], ["0x10075d93", "mov byte ptr [ebp - 4], bl"], ["0x10075d96", "call <OFFSET36>"], ["0x10075d9b", "mov dword ptr [ebp - 0x8c], 0x1fc"], ["0x10075da5", "call BackgroundAudioManager (FUNCTION)"], ["0x10075daa", "mov ecx, eax"], ["0x10075dac", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)"], ["0x10075db1", "lea eax, [ebp - 0xa8]"], ["0x10075db7", "push eax"], ["0x10075db8", "call Start (FUNCTION)"], ["0x10075dbd", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x10075dc4", "add esp, 4"], ["0x10075dc7", "call <OFFSET37>"], ["0x10075dcc", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075dcf", "mov dword ptr [eax + 0x10c], 0x1fc"], ["0x10075dd9", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075ddc", "mov word ptr [eax + 0x108], 1"], ["0x10075de5", "mov eax, 1"], ["0x10075dea", "jmp 0x177"], ["0x10075def", "lea ecx, [ebp - 0x14]"], ["0x10075df2", "jmp MxAtomId::~MxAtomId (FUNCTION)"], ["0x10075df7", "lea ecx, [ebp - 0xa8]"], ["0x10075dfd", "jmp MxDSAction::~MxDSAction (FUNCTION)"], ["0x10075e02", "movsx eax, word ptr [edx + 0x16]"], ["0x10075e06", "test eax, eax"], ["0x10075e08", "jl 0x9"], ["0x10075e0a", "cmp eax, 1"], ["0x10075e0d", "jle 0xa5"]], "recomp": [["0x100405bf", "jle 0xa2"]]}, {"both": [["0x10075e13", "mov ebx, 0x10", "0x100405c5"], ["0x10075e18", "mov dword ptr [ecx], 0xc", "0x100405ca"], ["0x10075e1e", "lea ecx, [ebp - 0xa8]", "0x100405d0"], ["0x10075e24", "call MxDSAction::MxDSAction (FUNCTION)", "0x100405d6"], ["0x10075e29", "mov dword ptr [ebp - 4], ebx", "0x100405db"], ["0x10075e2c", "mov eax, dword ptr [g_hospitalScript (DATA)]", "0x100405de"], ["0x10075e31", "mov byte ptr [ebp - 4], 0x11", "0x100405e3"], ["0x10075e35", "mov ecx, dword ptr [eax]", "0x100405e7"], ["0x10075e37", "mov dword ptr [ebp - 0x14], ecx", "0x100405e9"], ["0x10075e3a", "lea ecx, [ebp - 0x14]", "0x100405ec"]]}]], ["@@ -0x10075e60,24 +0x10040612,23 @@", [{"both": [["0x10075e60", "mov ecx, eax", "0x10040612"], ["0x10075e62", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)", "0x10040614"], ["0x10075e67", "lea eax, [ebp - 0xa8]", "0x10040619"], ["0x10075e6d", "push eax", "0x1004061f"], ["0x10075e6e", "call Start (FUNCTION)", "0x10040620"], ["0x10075e73", "mov dword ptr [ebp - 4], 0xffffffff", "0x10040625"], ["0x10075e7a", "add esp, 4", "0x1004062c"], ["0x10075e7d", "call <OFFSET39>", "0x1004062f"], ["0x10075e82", "mov eax, dword ptr [ebp - 0x10]", "0x10040634"], ["0x10075e85", "mov dword ptr [eax + 0x10c], 0x200", "0x10040637"]]}, {"orig": [["0x10075e8f", "mov eax, dword ptr [ebp - 0x10]"], ["0x10075e92", "mov word ptr [eax + 0x108], 1"], ["0x10075e9b", "mov eax, 1"], ["0x10075ea0", "jmp 0xc1"]], "recomp": [["0x10040641", "mov word ptr [eax + 0x108], 1"], ["0x1004064a", "mov eax, 1"], ["0x1004064f", "jmp 0xbe"]]}, {"both": [["0x10075ea5", "lea ecx, [ebp - 0x14]", "0x10040654"], ["0x10075ea8", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10040657"], ["0x10075ead", "lea ecx, [ebp - 0xa8]", "0x1004065c"], ["0x10075eb3", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x10040662"], ["0x10075eb8", "mov ebx, 0x12", "0x10040667"], ["0x10075ebd", "mov dword ptr [ecx], 0xc", "0x1004066c"], ["0x10075ec3", "lea ecx, [ebp - 0xa8]", "0x10040672"], ["0x10075ec9", "call MxDSAction::MxDSAction (FUNCTION)", "0x10040678"], ["0x10075ece", "mov dword ptr [ebp - 4], ebx", "0x1004067d"], ["0x10075ed1", "mov eax, dword ptr [g_hospitalScript (DATA)]", "0x10040680"]]}]], ["@@ -0x10075f05,21 +0x100406b4,31 @@", [{"both": [["0x10075f05", "mov ecx, eax", "0x100406b4"], ["0x10075f07", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)", "0x100406b6"], ["0x10075f0c", "lea eax, [ebp - 0xa8]", "0x100406bb"], ["0x10075f12", "push eax", "0x100406c1"], ["0x10075f13", "call Start (FUNCTION)", "0x100406c2"], ["0x10075f18", "mov dword ptr [ebp - 4], 0xffffffff", "0x100406c7"], ["0x10075f1f", "add esp, 4", "0x100406ce"], ["0x10075f22", "call <OFFSET41>", "0x100406d1"], ["0x10075f27", "mov eax, dword ptr [ebp - 0x10]", "0x100406d6"], ["0x10075f2a", "mov dword ptr [eax + 0x10c], 0x1ff", "0x100406d9"]]}, {"orig": [["0x10075f34", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": []}, {"both": [["0x10075f37", "mov word ptr [eax + 0x108], 1", "0x100406e3"], ["0x10075f40", "mov eax, 1", "0x100406ec"], ["0x10075f45", "jmp 0x1f", "0x100406f1"], ["0x10075f47", "lea ecx, [ebp - 0x14]", "0x100406f3"], ["0x10075f4a", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x100406f6"], ["0x10075f4f", "mov eax, <OFFSET42>", "0x100406fb"], ["0x10075f54", "jmp ___CxxFrameHandler (FUNCTION)", "0x10040700"], ["0x10075f59", "lea ecx, [ebp - 0xa8]", "0x10040705"], ["0x10075f5f", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x1004070b"], ["0x10075f64", "xor eax, eax", "0x10040710"]]}, {"orig": [], "recomp": [["0x10040712", "mov ecx, dword ptr [ebp - 0xc]"], ["0x10040715", "pop ebx"], ["0x10040716", "mov dword ptr fs:[0], ecx"], ["0x1004071d", "mov esp, ebp"], ["0x1004071f", "pop ebp"], ["0x10040720", "ret 4"], ["0x10040723", "nop "], ["0x10040724", "add byte ptr [si], al"], ["0x10040727", "adc byte ptr [ecx + 0xe100401], bh"], ["0x1004072d", "add eax, dword ptr [eax + edx]"], ["0x10040730", "arpl word ptr [esp + eax], ax"]]}]]]}, {"address": "0x10075f90", "recomp": "0x10040740", "name": "Hospital::HandleClick", "matching": 0.9722222222222222, "diff": [["@@ -0x1007605c,32 +0x1004080c,32 @@", [{"both": [["0x1007605c", "call BackgroundAudioManager (FUNCTION)", "0x1004080c"], ["0x10076061", "mov ecx, eax", "0x10040811"], ["0x10076063", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)", "0x10040813"], ["0x10076068", "lea eax, [ebp - 0xa8]", "0x10040818"], ["0x1007606e", "push eax", "0x1004081e"], ["0x1007606f", "call Start (FUNCTION)", "0x1004081f"], ["0x10076074", "mov dword ptr [ebp - 4], 0xffffffff", "0x10040824"], ["0x1007607b", "add esp, 4", "0x1004082b"], ["0x1007607e", "call <OFFSET11>", "0x1004082e"], ["0x10076083", "mov eax, dword ptr [ebp - 0x10]", "0x10040833"]]}, {"orig": [], "recomp": [["0x10040836", "mov word ptr [eax + 0x108], 1"]]}, {"both": [["0x10076086", "mov dword ptr [eax + 0x10c], 0x1f7", "0x1004083f"]]}, {"orig": [["0x10076090", "mov word ptr [eax + 0x108], 1"]], "recomp": []}, {"both": [["0x10076099", "jmp 0x16d", "0x10040849"], ["0x1007609e", "lea ecx, [ebp - 0x14]", "0x1004084e"], ["0x100760a1", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10040851"], ["0x100760a6", "lea ecx, [ebp - 0xa8]", "0x10040856"], ["0x100760ac", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x1004085c"], ["0x100760b1", "mov eax, dword ptr [ebp - 0x10]", "0x10040861"], ["0x100760b4", "cmp byte ptr [eax + 0x128], 0", "0x10040864"], ["0x100760bb", "jne 0x14a", "0x1004086b"]]}, {"orig": [], "recomp": [["0x10040871", "mov ecx, dword ptr [eax + 0x104]"]]}, {"both": [["0x100760c1", "mov byte ptr [eax + 0x128], 1", "0x10040877"]]}, {"orig": [["0x100760c8", "mov ecx, dword ptr [eax + 0x104]"]], "recomp": []}, {"both": [["0x100760ce", "mov dword ptr [ecx + 8], 0xd", "0x1004087e"], ["0x100760d5", "mov dword ptr [eax + 0xfc], 2", "0x10040885"], ["0x100760df", "jmp 0x100", "0x1004088f"], ["0x100760e4", "mov esi, dword ptr [ebp - 0x10]", "0x10040894"], ["0x100760e7", "push 0x203", "0x10040897"], ["0x100760ec", "add esi, 0xc", "0x1004089c"], ["0x100760ef", "push 0x1f4", "0x1004089f"], ["0x100760f4", "push esi", "0x100408a4"], ["0x100760f5", "call DeleteObjects (FUNCTION)", "0x100408a5"], ["0x100760fa", "add esp, 0xc", "0x100408aa"]]}]], ["@@ -0x1007615e,34 +0x1004090e,34 @@", [{"both": [["0x1007615e", "call BackgroundAudioManager (FUNCTION)", "0x1004090e"], ["0x10076163", "mov ecx, eax", "0x10040913"], ["0x10076165", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)", "0x10040915"], ["0x1007616a", "lea eax, [ebp - 0xa8]", "0x1004091a"], ["0x10076170", "push eax", "0x10040920"], ["0x10076171", "call Start (FUNCTION)", "0x10040921"], ["0x10076176", "mov dword ptr [ebp - 4], 0xffffffff", "0x10040926"], ["0x1007617d", "add esp, 4", "0x1004092d"], ["0x10076180", "call <OFFSET15>", "0x10040930"], ["0x10076185", "mov eax, dword ptr [ebp - 0x10]", "0x10040935"]]}, {"orig": [], "recomp": [["0x10040938", "mov word ptr [eax + 0x108], 1"]]}, {"both": [["0x10076188", "mov dword ptr [eax + 0x10c], 0x1f7", "0x10040941"]]}, {"orig": [["0x10076192", "mov word ptr [eax + 0x108], 1"]], "recomp": []}, {"both": [["0x1007619b", "jmp 0x6e", "0x1004094b"], ["0x1007619d", "lea ecx, [ebp - 0x14]", "0x1004094d"], ["0x100761a0", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10040950"], ["0x100761a5", "mov eax, <OFFSET16>", "0x10040955"], ["0x100761aa", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004095a"], ["0x100761af", "lea ecx, [ebp - 0xa8]", "0x1004095f"], ["0x100761b5", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x10040965"], ["0x100761ba", "mov eax, dword ptr [ebp - 0x10]", "0x1004096a"], ["0x100761bd", "cmp byte ptr [eax + 0x128], 0", "0x1004096d"], ["0x100761c4", "jne 0x45", "0x10040974"]]}, {"orig": [], "recomp": [["0x10040976", "mov ecx, dword ptr [eax + 0x104]"]]}, {"both": [["0x100761c6", "mov byte ptr [eax + 0x128], 1", "0x1004097c"]]}, {"orig": [["0x100761cd", "mov ecx, dword ptr [eax + 0x104]"]], "recomp": []}, {"both": [["0x100761d3", "mov dword ptr [ecx + 8], 0xd", "0x10040983"], ["0x100761da", "mov dword ptr [eax + 0xfc], 0x1f", "0x1004098a"], ["0x100761e4", "push 0x203", "0x10040994"], ["0x100761e9", "push 0x1f4", "0x10040999"], ["0x100761ee", "push esi", "0x1004099e"], ["0x100761ef", "call DeleteObjects (FUNCTION)", "0x1004099f"], ["0x100761f4", "add esp, 0xc", "0x100409a4"], ["0x100761f7", "push 0", "0x100409a7"], ["0x100761f9", "push 0", "0x100409a9"], ["0x100761fb", "push 0x32", "0x100409ab"]]}]]]}, {"address": "0x10076220", "recomp": "0x100409d0", "name": "Hospital::Enable", "matching": 1.0, "diff": []}, {"address": "0x10076270", "recomp": "0x10040a20", "name": "Hospital::Tickle", "matching": 1.0, "diff": []}, {"address": "0x10076330", "recomp": "0x10040ae0", "name": "Hospital::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x10076370", "recomp": "0x1002cf80", "name": "HospitalState::HospitalState", "matching": 1.0, "diff": []}, {"address": "0x10076400", "recomp": "0x1002d010", "name": "HospitalState::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10076410", "recomp": "0x1002d020", "name": "HospitalState::IsA", "matching": 1.0, "diff": []}, {"address": "0x100764c0", "recomp": "0x1002d0d0", "name": "HospitalState::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10076530", "recomp": "0x1002d140", "name": "HospitalState::VTable0x1c", "matching": 0.0, "stub": true}, {"address": "0x10076670", "recomp": "0x100048f0", "name": "Bike::Bike", "matching": 1.0, "diff": []}, {"address": "0x100766f0", "recomp": "0x10004970", "name": "Bike::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10076700", "recomp": "0x10004980", "name": "Bike::IsA", "matching": 1.0, "diff": []}, {"address": "0x10076880", "recomp": "0x10004b00", "name": "Bike::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100768f0", "recomp": "0x10004b70", "name": "Bike::Create", "matching": 1.0, "diff": []}, {"address": "0x10076920", "recomp": "0x10004ba0", "name": "Bike::VTable0xe4", "matching": 1.0, "diff": []}, {"address": "0x100769a0", "recomp": "0x10004c20", "name": "Bike::VTable0xcc", "matching": 0.0, "stub": true}, {"address": "0x10076aa0", "recomp": "0x10004c30", "name": "Bike::VTable0xd4", "matching": 0.0, "stub": true}, {"address": "0x10076b60", "recomp": "0x10004c40", "name": "Bike::FUN_10076b60", "matching": 0.0, "stub": true}, {"address": "0x10076c30", "recomp": "0x10021830", "name": "LegoActorPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x10076c90", "recomp": "0x10021890", "name": "LegoActorPresenter::StartingTickle", "matching": 1.0, "diff": []}, {"address": "0x10076cc0", "recomp": "0x100218c0", "name": "LegoActorPresenter::ParseExtra", "matching": 1.0, "diff": []}, {"address": "0x10076d20", "recomp": "0x10047290", "name": "RegistrationBook::RegistrationBook", "matching": 1.0, "diff": []}, {"address": "0x10076e10", "recomp": "0x10047380", "name": "RegistrationBook::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10076e20", "recomp": "0x10047390", "name": "RegistrationBook::IsA", "matching": 1.0, "diff": []}, {"address": "0x10076f30", "recomp": "0x100474a0", "name": "RegistrationBook::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10076f50", "recomp": "0x100474c0", "name": "RegistrationBook::~RegistrationBook", "matching": 1.0, "diff": []}, {"address": "0x10077060", "recomp": "0x100475d0", "name": "RegistrationBook::Create", "matching": 1.0, "diff": []}, {"address": "0x100770e0", "recomp": "0x10047650", "name": "RegistrationBook::Notify", "matching": 0.839622641509434, "diff": [["@@ -0x100770e7,22 +0x10047657,22 @@", [{"both": [["0x100770e7", "mov ebx, dword ptr [esp + 0x10]", "0x10047657"], ["0x100770eb", "push ebx", "0x1004765b"], ["0x100770ec", "call LegoWorld::Notify (FUNCTION)", "0x1004765c"], ["0x100770f1", "cmp byte ptr [esi + 0xf6], 0", "0x10047661"], ["0x100770f8", "je 0xd3", "0x10047668"], ["0x100770fe", "mov ecx, dword ptr [ebx + 4]", "0x1004766e"], ["0x10077101", "sub ecx, 2", "0x10047671"], ["0x10077104", "cmp ecx, 0x16", "0x10047674"], ["0x10077107", "ja 0xc4", "0x10047677"], ["0x1007710d", "xor eax, eax", "0x1004767d"]]}, {"orig": [["0x1007710f", "mov al, byte ptr [ecx + 0x100771f8]"], ["0x10077115", "jmp dword ptr [eax*4 + 0x100771dc]"]], "recomp": [["0x1004767f", "mov al, byte ptr [ecx + 0x10047768]"], ["0x10047685", "jmp dword ptr [eax*4 + 0x1004774c]"]]}, {"both": [["0x1007711c", "push ebx", "0x1004768c"], ["0x1007711d", "mov ecx, esi", "0x1004768d"], ["0x1007711f", "call RegistrationBook::HandleEndAction (FUNCTION)", "0x1004768f"], ["0x10077124", "mov edi, eax", "0x10047694"], ["0x10077126", "mov eax, edi", "0x10047696"], ["0x10077128", "pop edi", "0x10047698"], ["0x10077129", "pop esi", "0x10047699"], ["0x1007712a", "pop ebx", "0x1004769a"], ["0x1007712b", "ret 4", "0x1004769b"], ["0x1007712e", "call Timer (FUNCTION)", "0x1004769e"]]}]], ["@@ -0x100771c3,40 +0x10047733,10 @@", [{"both": [["0x100771c3", "push 2", "0x10047733"], ["0x100771c5", "call GameState (FUNCTION)", "0x10047735"], ["0x100771ca", "mov ecx, eax", "0x1004773a"], ["0x100771cc", "call LegoGameState::SwitchArea (FUNCTION)", "0x1004773c"], ["0x100771d1", "mov eax, edi", "0x10047741"], ["0x100771d3", "pop edi", "0x10047743"], ["0x100771d4", "pop esi", "0x10047744"], ["0x100771d5", "pop ebx", "0x10047745"], ["0x100771d6", "ret 4", "0x10047746"], ["0x100771d9", "lea ecx, [ecx]", "0x10047749"]]}, {"orig": [["0x100771dc", "sbb al, 0x71"], ["0x100771de", "pop es"], ["0x100771df", "adc byte ptr [esi], ch"], ["0x100771e1", "jno 0x7"], ["0x100771e3", "adc byte ptr [edx + 0x71], ch"], ["0x100771e6", "pop es"], ["0x100771e7", "adc byte ptr [edi - 0x4eeff88f], bl"], ["0x100771ed", "jno 0x7"], ["0x100771ef", "adc bl, al"], ["0x100771f1", "jno 0x7"], ["0x100771f3", "adc cl, dl"], ["0x100771f5", "jno 0x7"], ["0x100771f7", "adc byte ptr [eax], al"], ["0x100771f9", "push es"], ["0x100771fa", "push es"], ["0x100771fb", "push es"], ["0x100771fc", "push es"], ["0x100771fd", "add dword ptr [esi], eax"], ["0x100771ff", "add al, byte ptr [esi]"], ["0x10077201", "push es"], ["0x10077202", "push es"], ["0x10077203", "push es"], ["0x10077204", "push es"], ["0x10077205", "push es"], ["0x10077206", "push es"], ["0x10077207", "add eax, dword ptr [esi]"], ["0x10077209", "add al, 6"], ["0x1007720b", "push es"], ["0x1007720c", "push es"], ["0x1007720d", "push es"]], "recomp": []}]]]}, {"address": "0x10077210", "recomp": "0x10047780", "name": "RegistrationBook::HandleEndAction", "matching": 0.9642857142857143, "diff": [["@@ -0x10077210,16 +0x10047780,16 @@", [{"both": [["0x10077210", "mov eax, dword ptr [esp + 4]", "0x10047780"], ["0x10077214", "push esi", "0x10047784"], ["0x10077215", "mov esi, ecx", "0x10047785"], ["0x10077217", "mov eax, dword ptr [eax + 0xc]", "0x10047787"]]}, {"orig": [["0x1007721a", "mov ecx, dword ptr [esi + 0xc]"], ["0x1007721d", "cmp dword ptr [eax + 0x20], ecx"]], "recomp": [["0x1004778a", "mov ecx, dword ptr [eax + 0x20]"], ["0x1004778d", "cmp dword ptr [esi + 0xc], ecx"]]}, {"both": [["0x10077220", "je 0x6", "0x10047790"], ["0x10077222", "xor eax, eax", "0x10047792"], ["0x10077224", "pop esi", "0x10047794"], ["0x10077225", "ret 4", "0x10047795"], ["0x10077228", "mov eax, dword ptr [eax + 0x1c]", "0x10047798"], ["0x1007722b", "cmp eax, 0x1f4", "0x1004779b"], ["0x10077230", "jg 0x10", "0x100477a0"], ["0x10077232", "je 0x53", "0x100477a2"], ["0x10077234", "cmp eax, 0x37", "0x100477a4"], ["0x10077237", "je 0x20", "0x100477a7"]]}]]]}, {"address": "0x100772d0", "recomp": "0x10047840", "name": "RegistrationBook::HandleKeyPress", "matching": 1.0, "diff": []}, {"address": "0x100774a0", "recomp": "0x10047a10", "name": "RegistrationBook::HandleClick", "matching": 1.0, "diff": []}, {"address": "0x100775c0", "recomp": "0x10047b30", "name": "RegistrationBook::FUN_100775c0", "matching": 1.0, "diff": []}, {"address": "0x10077860", "recomp": "0x10047dd0", "name": "RegistrationBook::WriteInfocenterLetters", "matching": 1.0, "diff": []}, {"address": "0x100778c0", "recomp": "0x10047e30", "name": "RegistrationBook::FUN_100778c0", "matching": 0.0, "stub": true}, {"address": "0x10077cc0", "recomp": "0x10047e40", "name": "RegistrationBook::ReadyWorld", "matching": 0.8916256157635468, "diff": [["@@ -0x10077cde,46 +0x10047e5e,44 @@", [{"both": [["0x10077cde", "push ebx", "0x10047e5e"], ["0x10077cdf", "push esi", "0x10047e5f"], ["0x10077ce0", "push edi", "0x10047e60"], ["0x10077ce1", "mov esi, ecx", "0x10047e61"], ["0x10077ce3", "call GameState (FUNCTION)", "0x10047e63"], ["0x10077ce8", "lea ecx, [eax + 0xa6]", "0x10047e68"], ["0x10077cee", "call LegoGameState::History::WriteScoreHistory (FUNCTION)", "0x10047e6e"], ["0x10077cf3", "push 0xb", "0x10047e73"], ["0x10077cf5", "call PlayMusic (FUNCTION)", "0x10047e75"], ["0x10077cfa", "mov eax, dword ptr ['A_Bitmap' (STRING)]", "0x10047e7a"]]}, {"orig": [["0x10077cff", "mov ebx, dword ptr [<OFFSET6>]"]], "recomp": []}, {"both": [["0x10077d05", "add esp, 4", "0x10047e7f"], ["0x10077d08", "mov ecx, 'A_Bitmap' (STRING)", "0x10047e82"]]}, {"orig": [], "recomp": [["0x10047e87", "lea edx, [ebp - 0x2c]"]]}, {"both": [["0x10077d0d", "xor di, di", "0x10047e8a"]]}, {"orig": [["0x10077d10", "lea edx, [ebp - 0x2c]"], ["0x10077d13", "cmp di, 0x1a"]], "recomp": [["0x10047e8d", "mov dword ptr [edx], eax"], ["0x10047e8f", "mov ebx, dword ptr [ecx + 4]"], ["0x10047e92", "mov dword ptr [edx + 4], ebx"]]}, {"both": [["0x10077d17", "mov cl, byte ptr [ecx + 8]", "0x10047e95"]]}, {"orig": [["0x10077d1a", "mov dword ptr [edx], eax"], ["0x10077d1c", "mov dword ptr [edx + 4], ebx"]], "recomp": []}, {"both": [["0x10077d1f", "mov byte ptr [edx + 8], cl", "0x10047e98"]]}, {"orig": [["0x10077d22", "jge 0x1d"]], "recomp": []}, {"both": [["0x10077d24", "lea eax, [ebp - 0x2c]", "0x10047e9b"], ["0x10077d27", "mov ecx, esi", "0x10047e9e"], ["0x10077d29", "push eax", "0x10047ea0"], ["0x10077d2a", "push 'MxStillPresenter' (STRING)", "0x10047ea1"], ["0x10077d2f", "call LegoWorld::Find (FUNCTION)", "0x10047ea6"], ["0x10077d34", "movsx ecx, di", "0x10047eab"]]}, {"orig": [], "recomp": [["0x10047eae", "inc di"]]}, {"both": [["0x10077d37", "inc byte ptr [ebp - 0x2c]", "0x10047eb0"]]}, {"orig": [], "recomp": [["0x10047eb3", "cmp di, 0x1a"]]}, {"both": [["0x10077d3a", "mov dword ptr [esi + ecx*4 + 0x100], eax", "0x10047eb7"]]}, {"orig": [["0x10077d41", "inc di"], ["0x10077d43", "cmp di, 0x1a"]], "recomp": []}, {"both": [["0x10077d47", "jl -0x25", "0x10047ebe"]]}, {"orig": [["0x10077d49", "mov di, word ptr [<OFFSET9>]"]], "recomp": [["0x10047ec0", "mov di, word ptr [<OFFSET8>]"]]}, {"both": [["0x10077d50", "mov eax, dword ptr ['Check0_Ctl' (STRING)]", "0x10047ec7"], ["0x10077d55", "lea ecx, [ebp - 0x38]", "0x10047ecc"]]}, {"orig": [["0x10077d58", "mov ebx, dword ptr [<OFFSET11>]"]], "recomp": [["0x10047ecf", "mov ebx, dword ptr [<OFFSET10>]"]]}, {"both": [["0x10077d5e", "mov edx, 'Check0_Ctl' (STRING)", "0x10047ed5"], ["0x10077d63", "mov dword ptr [ecx], eax", "0x10047eda"], ["0x10077d65", "mov al, byte ptr [edx + 0xa]", "0x10047edc"], ["0x10077d68", "mov dword ptr [ecx + 4], ebx", "0x10047edf"], ["0x10077d6b", "mov word ptr [ecx + 8], di", "0x10047ee2"], ["0x10077d6f", "xor di, di", "0x10047ee6"], ["0x10077d72", "mov byte ptr [ecx + 0xa], al", "0x10047ee9"], ["0x10077d75", "lea eax, [ebp - 0x38]", "0x10047eec"], ["0x10077d78", "mov ecx, esi", "0x10047eef"], ["0x10077d7a", "push eax", "0x10047ef1"]]}]], ["@@ -0x10077da8,39 +0x10047f1f,39 @@", [{"both": [["0x10077da8", "mov dword ptr [ebp - 0x1c], eax", "0x10047f1f"], ["0x10077dab", "call GameState (FUNCTION)", "0x10047f22"], ["0x10077db0", "cmp word ptr [eax + 0x26], 1", "0x10047f27"], ["0x10077db5", "jl 0xce", "0x10047f2c"], ["0x10077dbb", "mov word ptr [ebp - 0xe], 0", "0x10047f32"], ["0x10077dc1", "movsx edi, word ptr [ebp - 0x3a]", "0x10047f38"], ["0x10077dc5", "lea eax, [edi*8]", "0x10047f3c"], ["0x10077dcc", "sub eax, edi", "0x10047f43"], ["0x10077dce", "mov dword ptr [ebp - 0x20], eax", "0x10047f45"], ["0x10077dd1", "mov eax, dword ptr [ebp - 0x20]", "0x10047f48"]]}, {"orig": [["0x10077dd4", "mov edx, dword ptr [ebp - 0x1c]"]], "recomp": [["0x10047f4b", "mov ecx, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x10077dd7", "movsx ebx, word ptr [ebp - 0xe]", "0x10047f4e"], ["0x10077ddb", "add eax, ebx", "0x10047f52"], ["0x10077ddd", "mov dword ptr [ebp - 0x14], eax", "0x10047f54"]]}, {"orig": [["0x10077de0", "lea eax, [edx + eax*2 - 0xe]"], ["0x10077de4", "cmp word ptr [eax], -1"], ["0x10077de8", "mov dword ptr [ebp - 0x18], eax"]], "recomp": [["0x10047f57", "lea edx, [ecx + eax*2 - 0xe]"], ["0x10047f5b", "cmp word ptr [edx], -1"], ["0x10047f5f", "mov dword ptr [ebp - 0x18], edx"]]}, {"both": [["0x10077deb", "je 0x76", "0x10047f62"], ["0x10077ded", "cmp word ptr [ebp - 0xe], 0", "0x10047f64"], ["0x10077df2", "jne 0xe", "0x10047f69"], ["0x10077df4", "mov ecx, dword ptr [esi + edi*4 + 0x290]", "0x10047f6b"], ["0x10077dfb", "push 1", "0x10047f72"], ["0x10077dfd", "mov eax, dword ptr [ecx]", "0x10047f74"], ["0x10077dff", "call dword ptr [eax + 0x54]", "0x10047f76"]]}, {"orig": [["0x10077e02", "mov ecx, dword ptr [ebp - 0x14]"]], "recomp": [["0x10047f79", "mov eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x10077e05", "mov edx, dword ptr [ebp - 0x18]", "0x10047f7c"]]}, {"orig": [["0x10077e08", "lea eax, [esi + ecx*4 + 0x168]"], ["0x10077e0f", "mov dword ptr [ebp - 0x14], eax"]], "recomp": [["0x10047f7f", "lea ecx, [esi + eax*4 + 0x168]"]]}, {"both": [["0x10077e12", "movsx eax, word ptr [edx]", "0x10047f86"]]}, {"orig": [], "recomp": [["0x10047f89", "mov dword ptr [ebp - 0x14], ecx"]]}, {"both": [["0x10077e15", "mov ecx, dword ptr [esi + eax*4 + 0x100]", "0x10047f8c"], ["0x10077e1c", "mov eax, dword ptr [ecx]", "0x10047f93"], ["0x10077e1e", "call dword ptr [eax + 0x8c]", "0x10047f95"], ["0x10077e24", "mov ecx, dword ptr [ebp - 0x14]", "0x10047f9b"], ["0x10077e27", "push 1", "0x10047f9e"], ["0x10077e29", "mov dword ptr [ecx], eax", "0x10047fa0"], ["0x10077e2b", "mov ecx, eax", "0x10047fa2"], ["0x10077e2d", "mov eax, dword ptr [eax]", "0x10047fa4"], ["0x10077e2f", "call dword ptr [eax + 0x54]", "0x10047fa6"], ["0x10077e32", "mov ecx, dword ptr [ebp - 0x14]", "0x10047fa9"]]}]], ["@@ -0x10077ea4,31 +0x1004801b,31 @@", [{"both": [["0x10077ea4", "mov dword ptr [ebp - 4], 0", "0x1004801b"], ["0x10077eab", "mov eax, dword ptr [g_regbookScript (DATA)]", "0x10048022"], ["0x10077eb0", "mov byte ptr [ebp - 4], 1", "0x10048027"], ["0x10077eb4", "mov ecx, dword ptr [eax]", "0x1004802b"], ["0x10077eb6", "mov dword ptr [ebp - 0x10], ecx", "0x1004802d"], ["0x10077eb9", "lea ecx, [ebp - 0x10]", "0x10048030"], ["0x10077ebc", "push ecx", "0x10048033"], ["0x10077ebd", "lea ecx, [ebp - 0xac]", "0x10048034"], ["0x10077ec3", "call MxAtomId::operator= (FUNCTION)", "0x1004803a"], ["0x10077ec8", "mov byte ptr [ebp - 4], 0", "0x1004803f"]]}, {"orig": [["0x10077ecc", "call <OFFSET16>"]], "recomp": [["0x10048043", "call <OFFSET15>"]]}, {"both": [["0x10077ed1", "mov dword ptr [ebp - 0xb0], 0x1fa", "0x10048048"], ["0x10077edb", "call BackgroundAudioManager (FUNCTION)", "0x10048052"], ["0x10077ee0", "mov ecx, eax", "0x10048057"], ["0x10077ee2", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)", "0x10048059"], ["0x10077ee7", "lea eax, [ebp - 0xcc]", "0x1004805e"], ["0x10077eed", "push eax", "0x10048064"], ["0x10077eee", "call Start (FUNCTION)", "0x10048065"], ["0x10077ef3", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004806a"], ["0x10077efa", "add esp, 4", "0x10048071"]]}, {"orig": [["0x10077efd", "call <OFFSET20>"]], "recomp": [["0x10048074", "call <OFFSET19>"]]}, {"both": [["0x10077f02", "mov eax, dword ptr [g_infoman (DATA)]", "0x10048079"], ["0x10077f07", "push eax", "0x1004807e"], ["0x10077f08", "call FindROI (FUNCTION)", "0x1004807f"], ["0x10077f0d", "add esp, 4", "0x10048084"], ["0x10077f10", "test eax, eax", "0x10048087"], ["0x10077f12", "je 0x4", "0x10048089"], ["0x10077f14", "mov byte ptr [eax + 0xc], 0", "0x1004808b"], ["0x10077f18", "mov eax, dword ptr [ebp - 0xc]", "0x1004808f"], ["0x10077f1b", "pop edi", "0x10048092"], ["0x10077f1c", "mov dword ptr fs:[0], eax", "0x10048093"]]}]], ["@@ -0x10077f4b,26 +0x100480c2,28 @@", [{"both": [["0x10077f4b", "mov dword ptr [ebp - 4], ebx", "0x100480c2"], ["0x10077f4e", "mov eax, dword ptr [g_regbookScript (DATA)]", "0x100480c5"], ["0x10077f53", "mov byte ptr [ebp - 4], 3", "0x100480ca"], ["0x10077f57", "mov ecx, dword ptr [eax]", "0x100480ce"], ["0x10077f59", "mov dword ptr [ebp - 0x10], ecx", "0x100480d0"], ["0x10077f5c", "lea ecx, [ebp - 0x10]", "0x100480d3"], ["0x10077f5f", "push ecx", "0x100480d6"], ["0x10077f60", "lea ecx, [ebp - 0xac]", "0x100480d7"], ["0x10077f66", "call MxAtomId::operator= (FUNCTION)", "0x100480dd"], ["0x10077f6b", "mov byte ptr [ebp - 4], bl", "0x100480e2"]]}, {"orig": [["0x10077f6e", "call <OFFSET25>"]], "recomp": [["0x100480e5", "call <OFFSET24>"]]}, {"both": [["0x10077f73", "mov dword ptr [ebp - 0xb0], 0x1f4", "0x100480ea"], ["0x10077f7d", "call BackgroundAudioManager (FUNCTION)", "0x100480f4"], ["0x10077f82", "mov ecx, eax", "0x100480f9"], ["0x10077f84", "call MxBackgroundAudioManager::LowerVolume (FUNCTION)", "0x100480fb"], ["0x10077f89", "lea eax, [ebp - 0xcc]", "0x10048100"], ["0x10077f8f", "push eax", "0x10048106"], ["0x10077f90", "call Start (FUNCTION)", "0x10048107"], ["0x10077f95", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004810c"], ["0x10077f9c", "add esp, 4", "0x10048113"]]}, {"orig": [["0x10077f9f", "call <OFFSET26>"]], "recomp": [["0x10048116", "call <OFFSET25>"]]}, {"both": [["0x10077fa4", "jmp -0x91", "0x1004811b"], ["0x10077fa9", "lea ecx, [ebp - 0x10]", "0x10048120"], ["0x10077fac", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10048123"]]}, {"orig": [["0x10077fb1", "mov eax, <OFFSET27>"]], "recomp": [["0x10048128", "mov eax, <OFFSET26>"]]}, {"both": [["0x10077fb6", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004812d"]]}, {"orig": [], "recomp": [["0x10048132", "lea ecx, [ebp - 0xcc]"], ["0x10048138", "jmp MxDSAction::~MxDSAction (FUNCTION)"]]}]]]}, {"address": "0x10077fd0", "recomp": "0x10048140", "name": "RegistrationBook::Tickle", "matching": 1.0, "diff": []}, {"address": "0x10078180", "recomp": "0x100482f0", "name": "RegistrationBook::Enable", "matching": 1.0, "diff": []}, {"address": "0x100781d0", "recomp": "0x10048340", "name": "RegistrationBook::HandleNotification19", "matching": 0.0, "stub": true}, {"address": "0x10078350", "recomp": "0x10048350", "name": "RegistrationBook::CreateSurface", "matching": 0.8666666666666667, "diff": [["@@ -0x10078350,23 +0x10048350,23 @@", [{"both": [["0x10078350", "sub esp, 4", "0x10048350"], ["0x10078353", "push esi", "0x10048353"], ["0x10078354", "mov eax, dword ptr [ecx + 0x290]", "0x10048354"], ["0x1007835a", "mov esi, ecx", "0x1004835a"], ["0x1007835c", "add eax, 0x40", "0x1004835c"], ["0x1007835f", "je 0x6c", "0x1004835f"]]}, {"orig": [["0x10078361", "mov eax, dword ptr [eax + 4]"], ["0x10078364", "mov ecx, dword ptr [eax]"], ["0x10078366", "cmp ecx, eax"], ["0x10078368", "je 0x5"], ["0x1007836a", "mov ecx, dword ptr [ecx + 8]"], ["0x1007836d", "jmp 0x4"]], "recomp": [["0x10048361", "mov ecx, dword ptr [eax + 4]"], ["0x10048364", "mov eax, dword ptr [ecx]"], ["0x10048366", "cmp eax, ecx"], ["0x10048368", "jne 0x6"]]}, {"both": [["0x1007836f", "mov ecx, dword ptr [esp + 4]", "0x1004836a"]]}, {"orig": [], "recomp": [["0x1004836e", "jmp 0x3"], ["0x10048370", "mov ecx, dword ptr [eax + 8]"]]}, {"both": [["0x10078373", "test ecx, ecx", "0x10048373"], ["0x10078375", "je 0xb", "0x10048375"], ["0x10078377", "mov eax, dword ptr [ecx]", "0x10048377"], ["0x10078379", "call dword ptr [eax + 0x78]", "0x10048379"], ["0x1007837c", "mov dword ptr [esi + 0x2c8], eax", "0x1004837c"], ["0x10078382", "push 'CheckHiLite_Bitmap' (STRING)", "0x10048382"], ["0x10078387", "mov ecx, esi", "0x10048387"], ["0x10078389", "push 'MxStillPresenter' (STRING)", "0x10048389"], ["0x1007838e", "call LegoWorld::Find (FUNCTION)", "0x1004838e"], ["0x10078393", "mov ecx, eax", "0x10048393"]]}]]]}, {"address": "0x100783e0", "recomp": "0x100483e0", "name": "RegistrationBook::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x10078400", "recomp": "0x10037b40", "name": "LegoCarBuildAnimPresenter::LegoCarBuildAnimPresenter", "matching": 0.0, "stub": true}, {"address": "0x10078500", "recomp": "0x10037d50", "name": "LegoCarBuildAnimPresenter::RepeatingTickle", "matching": 0.0, "stub": true}, {"address": "0x10078510", "recomp": "0x10037be0", "name": "LegoCarBuildAnimPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10078520", "recomp": "0x10037bf0", "name": "LegoCarBuildAnimPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x10078660", "recomp": "0x10037d30", "name": "LegoCarBuildAnimPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10078680", "recomp": "0x10037d60", "name": "LegoCarBuildAnimPresenter::~LegoCarBuildAnimPresenter", "matching": 0.0, "stub": true}, {"address": "0x10078790", "recomp": "0x10037dd0", "name": "LegoCarBuildAnimPresenter::PutFrame", "matching": 0.0, "stub": true}, {"address": "0x100788c0", "recomp": "0x10037de0", "name": "LegoCarBuildAnimPresenter::ReadyTickle", "matching": 0.0, "stub": true}, {"address": "0x100789e0", "recomp": "0x10037df0", "name": "LegoCarBuildAnimPresenter::StreamingTickle", "matching": 0.0, "stub": true}, {"address": "0x10078db0", "recomp": "0x10037e00", "name": "LegoCarBuildAnimPresenter::EndAction", "matching": 0.0, "stub": true}, {"address": "0x10079e50", "recomp": "0x100397d0", "name": "LegoPalettePresenter::LegoPalettePresenter", "matching": 1.0, "diff": []}, {"address": "0x10079f30", "recomp": "0x100398b0", "name": "LegoPalettePresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10079f40", "recomp": "0x100398c0", "name": "LegoPalettePresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x1007a050", "recomp": "0x100399d0", "name": "LegoPalettePresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007a070", "recomp": "0x100399f0", "name": "LegoPalettePresenter::~LegoPalettePresenter", "matching": 1.0, "diff": []}, {"address": "0x1007a0d0", "recomp": "0x10039a50", "name": "LegoPalettePresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x1007a0e0", "recomp": "0x10039a60", "name": "LegoPalettePresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1007a120", "recomp": "0x10039aa0", "name": "LegoPalettePresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1007a130", "recomp": "0x10039ab0", "name": "LegoPalettePresenter::ParsePalette", "matching": 1.0, "diff": []}, {"address": "0x1007a230", "recomp": "0x10039bb0", "name": "LegoPalettePresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x1007a2b0", "recomp": "0x100212e0", "name": "Act2Brick::Act2Brick", "matching": 0.0, "stub": true}, {"address": "0x1007a360", "recomp": "0x10021380", "name": "Act2Brick::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1007a370", "recomp": "0x10021390", "name": "Act2Brick::IsA", "matching": 1.0, "diff": []}, {"address": "0x1007a450", "recomp": "0x10021470", "name": "Act2Brick::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007a470", "recomp": "0x10021490", "name": "Act2Brick::~Act2Brick", "matching": 0.0, "stub": true}, {"address": "0x1007a750", "recomp": "0x100214e0", "name": "Act2Brick::VTable0x94", "matching": 0.0, "stub": true}, {"address": "0x1007a7f0", "recomp": "0x100214f0", "name": "Act2Brick::Tickle", "matching": 0.0, "stub": true}, {"address": "0x1007a8c0", "recomp": "0x10021500", "name": "Act2Brick::Notify", "matching": 0.0, "stub": true}, {"address": "0x1007aa20", "recomp": "0x1003c600", "name": "LegoVideoManager::LegoVideoManager", "matching": 1.0, "diff": []}, {"address": "0x1007ab10", "recomp": "0x1003c6f0", "name": "LegoVideoManager::VTable0x3c", "matching": 1.0, "diff": []}, {"address": "0x1007ab20", "recomp": "0x1003c700", "name": "LegoVideoManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007ab40", "recomp": "0x1003c720", "name": "LegoVideoManager::~LegoVideoManager", "matching": 1.0, "diff": []}, {"address": "0x1007abb0", "recomp": "0x1003c790", "name": "LegoVideoManager::CreateDirect3D", "matching": 1.0, "diff": []}, {"address": "0x1007ac40", "recomp": "0x1003c820", "name": "LegoVideoManager::Create", "matching": 0.9863013698630136, "diff": [["@@ -0x1007ad93,46 +0x1003c973,46 @@", [{"both": [["0x1007ad93", "jne 0x3e2", "0x1003c973"], ["0x1007ad99", "mov eax, dword ptr [ebx + 0x20]", "0x1003c979"], ["0x1007ad9c", "test eax, eax", "0x1003c97c"], ["0x1007ad9e", "je 0x2b", "0x1003c97e"], ["0x1007ada0", "push eax", "0x1003c980"], ["0x1007ada1", "lea ecx, [ebp - 0x38]", "0x1003c981"], ["0x1007ada4", "call MxDeviceEnumerate::ParseDeviceName (FUNCTION)", "0x1003c984"], ["0x1007ada9", "mov edi, eax", "0x1003c989"], ["0x1007adab", "test edi, edi", "0x1003c98b"], ["0x1007adad", "jl 0x20", "0x1003c98d"]]}, {"orig": [["0x1007adaf", "lea eax, [ebp - 0x18]"], ["0x1007adb2", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1003c98f", "lea eax, [ebp - 0x1c]"], ["0x1003c992", "lea ecx, [ebp - 0x18]"]]}, {"both": [["0x1007adb5", "push eax", "0x1003c995"], ["0x1007adb6", "push ecx", "0x1003c996"], ["0x1007adb7", "push edi", "0x1003c997"], ["0x1007adb8", "lea ecx, [ebp - 0x38]", "0x1003c998"], ["0x1007adbb", "call MxDeviceEnumerate::GetDevice (FUNCTION)", "0x1003c99b"], ["0x1007adc0", "mov edi, eax", "0x1003c9a0"], ["0x1007adc2", "test edi, edi", "0x1003c9a2"], ["0x1007adc4", "je 0x2a", "0x1003c9a4"], ["0x1007adc6", "mov edi, 0xffffffff", "0x1003c9a6"], ["0x1007adcb", "test edi, edi", "0x1003c9ab"], ["0x1007adcd", "jge 0x21", "0x1003c9ad"], ["0x1007adcf", "lea ecx, [ebp - 0x38]", "0x1003c9af"], ["0x1007add2", "call MxDeviceEnumerate::FUN_1009d210 (FUNCTION)", "0x1003c9b2"], ["0x1007add7", "lea ecx, [ebp - 0x38]", "0x1003c9b7"], ["0x1007adda", "call MxDeviceEnumerate::FUN_1009d0d0 (FUNCTION)", "0x1003c9ba"]]}, {"orig": [["0x1007addf", "lea ecx, [ebp - 0x18]"], ["0x1007ade2", "lea edx, [ebp - 0x1c]"]], "recomp": [["0x1003c9bf", "lea ecx, [ebp - 0x1c]"], ["0x1003c9c2", "lea edx, [ebp - 0x18]"]]}, {"both": [["0x1007ade5", "push ecx", "0x1003c9c5"], ["0x1007ade6", "push edx", "0x1003c9c6"], ["0x1007ade7", "push eax", "0x1003c9c7"], ["0x1007ade8", "lea ecx, [ebp - 0x38]", "0x1003c9c8"], ["0x1007adeb", "call MxDeviceEnumerate::GetDevice (FUNCTION)", "0x1003c9cb"]]}, {"orig": [["0x1007adf0", "mov eax, dword ptr [ebp - 0x18]"], ["0x1007adf3", "mov ecx, dword ptr [ebp - 0x1c]"]], "recomp": [["0x1003c9d0", "mov eax, dword ptr [ebp - 0x1c]"], ["0x1003c9d3", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x1007adf6", "push eax", "0x1003c9d6"], ["0x1007adf7", "lea edx, [ebp - 0x38]", "0x1003c9d7"], ["0x1007adfa", "push ecx", "0x1003c9da"], ["0x1007adfb", "push edx", "0x1003c9db"], ["0x1007adfc", "mov ecx, dword ptr [esi + 0x74]", "0x1003c9dc"], ["0x1007adff", "call MxDirect3D::SetDevice (FUNCTION)", "0x1003c9df"], ["0x1007ae04", "mov ecx, dword ptr [ebp - 0x18]", "0x1003c9e4"], ["0x1007ae07", "cmp dword ptr [ecx + 0x14], 0", "0x1003c9e7"], ["0x1007ae0b", "jne 0x1e", "0x1003c9eb"], ["0x1007ae0d", "cmp dword ptr [ecx + 0xe0], 2", "0x1003c9ed"]]}]]]}, {"address": "0x1007b210", "recomp": "0x1003cdf0", "name": "LegoUnknown100d9d00::Compare", "matching": 0.0, "stub": true}, {"address": "0x1007b2e0", "recomp": "0x1003ce00", "name": "LegoUnknown100d9d00::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1007b300", "recomp": "0x1003ce80", "name": "MxCollection<LegoUnknown100d7c88 *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1007b310", "recomp": "0x1003ce30", "name": "MxCollection<LegoUnknown100d7c88 *>::~MxCollection<LegoUnknown100d7c88 *>", "matching": 1.0, "diff": []}, {"address": "0x1007b360", "recomp": "0x1003ce20", "name": "MxCollection<LegoUnknown100d7c88 *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1007b370", "recomp": "0x1003da10", "name": "MxList<LegoUnknown100d7c88 *>::~MxList<LegoUnknown100d7c88 *>", "matching": 1.0, "diff": []}, {"address": "0x1007b400", "recomp": "0x1003ce90", "name": "LegoUnknown100d9d00::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007b470", "recomp": "0x1003cf00", "name": "MxCollection<LegoUnknown100d7c88 *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007b4e0", "recomp": "0x1003cf70", "name": "MxList<LegoUnknown100d7c88 *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007b590", "recomp": "0x1003d020", "name": "MxDeviceEnumerate100d9cc8::~MxDeviceEnumerate100d9cc8", "matching": 1.0, "diff": []}, {"address": "0x1007b5e0", "recomp": "0x1003d070", "name": "LegoVideoManager::Destroy", "matching": 0.22727272727272727, "diff": [["@@ -0x1007b5e0,20 +0x1003d070,24 @@", [{"both": [["0x1007b5e0", "push esi", "0x1003d070"]]}, {"orig": [["0x1007b5e1", "mov eax, dword ptr [ecx + 0x514]"]], "recomp": [["0x1003d071", "mov eax, dword ptr [ecx + 0x540]"]]}, {"both": [["0x1007b5e7", "mov esi, ecx", "0x1003d077"]]}, {"orig": [["0x1007b5e9", "test eax, eax"], ["0x1007b5eb", "je 0x10"], ["0x1007b5ed", "push eax"], ["0x1007b5ee", "mov eax, dword ptr [eax]"], ["0x1007b5f0", "call dword ptr [eax + 8]"], ["0x1007b5f3", "mov dword ptr [esi + 0x514], 0"], ["0x1007b5fd", "mov eax, dword ptr [esi + 0x528]"], ["0x1007b603", "test eax, eax"], ["0x1007b605", "je 0x10"], ["0x1007b607", "push eax"], ["0x1007b608", "mov eax, dword ptr [eax]"], ["0x1007b60a", "call dword ptr [eax + 8]"], ["0x1007b60d", "mov dword ptr [esi + 0x528], 0"], ["0x1007b617", "mov eax, dword ptr [esi + 0x540]"]], "recomp": []}, {"both": [["0x1007b61d", "test eax, eax", "0x1003d079"], ["0x1007b61f", "je 0x11", "0x1003d07b"], ["0x1007b621", "push eax", "0x1003d07d"]]}, {"orig": [], "recomp": [["0x1003d07e", "call dword ptr [__imp__DeleteObject@4 (POINTER)]"], ["0x1003d084", "mov dword ptr [esi + 0x540], 0"], ["0x1003d08e", "mov ecx, dword ptr [esi + 0x68]"], ["0x1003d091", "test ecx, ecx"], ["0x1003d093", "je 0x6"], ["0x1003d095", "push 1"], ["0x1003d097", "mov eax, dword ptr [ecx]"], ["0x1003d099", "call dword ptr [eax]"], ["0x1003d09b", "mov ecx, esi"], ["0x1003d09d", "call MxVideoManager::Destroy (FUNCTION)"], ["0x1003d0a2", "mov eax, dword ptr [esi + 0x4f4]"], ["0x1003d0a8", "test eax, eax"], ["0x1003d0aa", "je 0x9"], ["0x1003d0ac", "push eax"], ["0x1003d0ad", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1003d0b2", "add esp, 4"], ["0x1003d0b5", "pop esi"], ["0x1003d0b6", "ret "]]}]]]}, {"address": "0x1007b6a0", "recomp": "0x1003d0c0", "name": "LegoVideoManager::MoveCursor", "matching": 1.0, "diff": []}, {"address": "0x1007b6f0", "recomp": "0x1003d110", "name": "LegoVideoManager::ToggleFPS", "matching": 1.0, "diff": []}, {"address": "0x1007b770", "recomp": "0x1003d190", "name": "LegoVideoManager::Tickle", "matching": 0.9636363636363636, "diff": [["@@ -0x1007b7eb,43 +0x1003d20b,43 @@", [{"both": [["0x1007b7eb", "xor eax, eax", "0x1003d20b"], ["0x1007b7ed", "mov dword ptr [ebp - 0x14], eax", "0x1003d20d"], ["0x1007b7f0", "fild qword ptr [ebp - 0x18]", "0x1003d210"], ["0x1007b7f3", "mov dword ptr [ebp - 0x18], ecx", "0x1003d213"], ["0x1007b7f6", "mov dword ptr [ebp - 0x14], eax", "0x1003d216"], ["0x1007b7f9", "fild qword ptr [ebp - 0x18]", "0x1003d219"], ["0x1007b7fc", "fdivp st(1)", "0x1003d21c"], ["0x1007b7fe", "fadd qword ptr [esi + 8]", "0x1003d21e"], ["0x1007b801", "fstp qword ptr [esi + 8]", "0x1003d221"], ["0x1007b804", "mov edx, dword ptr [ebp - 0x10]", "0x1003d224"]]}, {"orig": [["0x1007b807", "mov ecx, dword ptr [edx + 0x4f4]"], ["0x1007b80d", "mov eax, dword ptr [ecx + 0xc]"], ["0x1007b810", "lea ebx, [ecx + 8]"]], "recomp": [["0x1003d227", "mov ebx, dword ptr [edx + 0x4f4]"], ["0x1003d22d", "mov eax, dword ptr [ebx + 0xc]"], ["0x1003d230", "lea ecx, [ebx + 8]"]]}, {"both": [["0x1007b813", "mov dword ptr [edx + 0x4fc], eax", "0x1003d233"]]}, {"orig": [["0x1007b819", "mov esi, dword ptr [ebx]"]], "recomp": [["0x1003d239", "mov esi, dword ptr [ecx]"]]}, {"both": [["0x1007b81b", "mov dword ptr [edx + 0x4f8], esi", "0x1003d23b"], ["0x1007b821", "xor esi, esi", "0x1003d241"]]}, {"orig": [], "recomp": [["0x1003d243", "mov dword ptr [ebx], esi"], ["0x1003d245", "mov dword ptr [ebx + 4], esi"]]}, {"both": [["0x1007b823", "mov dword ptr [ecx], esi", "0x1003d248"], ["0x1007b825", "mov dword ptr [ecx + 4], esi", "0x1003d24a"]]}, {"orig": [["0x1007b828", "mov dword ptr [ebx], esi"], ["0x1007b82a", "mov dword ptr [ebx + 4], esi"], ["0x1007b82d", "mov ecx, dword ptr [edx + 0x4f4]"], ["0x1007b833", "push ecx"]], "recomp": [["0x1003d24d", "mov ebx, dword ptr [edx + 0x4f4]"], ["0x1003d253", "push ebx"]]}, {"both": [["0x1007b834", "call edi", "0x1003d254"], ["0x1007b836", "mov edx, dword ptr [ebp - 0x10]", "0x1003d256"], ["0x1007b839", "mov ecx, dword ptr [edx + 0x74]", "0x1003d259"], ["0x1007b83c", "call MxDirectDraw::RestoreSurfaces (FUNCTION)", "0x1003d25c"], ["0x1007b841", "mov ecx, dword ptr [ebp - 0x10]", "0x1003d261"], ["0x1007b844", "call MxVideoManager::SortPresenterList (FUNCTION)", "0x1003d264"], ["0x1007b849", "mov edx, dword ptr [ebp - 0x10]", "0x1003d269"]]}, {"orig": [["0x1007b84c", "mov ecx, dword ptr [edx + 8]"], ["0x1007b84f", "push ecx"]], "recomp": []}, {"both": [["0x1007b850", "lea ecx, [ebp - 0x28]", "0x1003d26c"]]}, {"orig": [], "recomp": [["0x1003d26f", "mov eax, dword ptr [edx + 8]"], ["0x1003d272", "push eax"]]}, {"both": [["0x1007b853", "call MxListCursor<MxPresenter *>::MxListCursor<MxPresenter *> (FUNCTION)", "0x1003d273"], ["0x1007b858", "mov eax, 0xffffffff", "0x1003d278"], ["0x1007b85d", "mov dword ptr [ebp - 4], esi", "0x1003d27d"], ["0x1007b860", "mov dword ptr [ebp - 0x28], MxPtrListCursor<MxPresenter>::`vftable' (VTABLE)", "0x1003d280"], ["0x1007b867", "mov dword ptr [ebp - 4], 1", "0x1003d287"], ["0x1007b86e", "mov dword ptr [ebp - 0x28], MxPresenterListCursor::`vftable' (VTABLE)", "0x1003d28e"], ["0x1007b875", "mov dword ptr [ebp - 4], 2", "0x1003d295"], ["0x1007b87c", "cmp dword ptr [ebp - 0x1c], esi", "0x1003d29c"], ["0x1007b87f", "jne 0x8", "0x1003d29f"], ["0x1007b881", "mov eax, dword ptr [ebp - 0x20]", "0x1003d2a1"]]}]], ["@@ -0x1007ba00,23 +0x1003d420,23 @@", [{"both": [["0x1007ba00", "test ecx, ecx", "0x1003d420"], ["0x1007ba02", "jl 0x19", "0x1003d422"], ["0x1007ba04", "mov edx, dword ptr [ebp - 0x10]", "0x1003d424"], ["0x1007ba07", "mov eax, dword ptr [edx + 0x510]", "0x1003d427"], ["0x1007ba0d", "test eax, eax", "0x1003d42d"], ["0x1007ba0f", "jl 0xc", "0x1003d42f"], ["0x1007ba11", "mov dword ptr [edx + 0x504], ecx", "0x1003d431"], ["0x1007ba17", "mov dword ptr [edx + 0x508], eax", "0x1003d437"], ["0x1007ba1d", "mov edx, dword ptr [ebp - 0x10]", "0x1003d43d"], ["0x1007ba20", "xor ebx, ebx", "0x1003d440"]]}, {"orig": [["0x1007ba22", "mov ecx, dword ptr [edx + 0x58]"]], "recomp": [["0x1003d442", "mov eax, dword ptr [edx + 0x58]"]]}, {"both": [["0x1007ba25", "cmp dword ptr [edx + 0x514], ebx", "0x1003d445"]]}, {"orig": [["0x1007ba2b", "mov esi, dword ptr [ecx + 0x30]"]], "recomp": [["0x1003d44b", "mov esi, dword ptr [eax + 0x30]"]]}, {"both": [["0x1007ba2e", "jne 0x35", "0x1003d44e"], ["0x1007ba30", "mov eax, 0x10", "0x1003d450"], ["0x1007ba35", "mov dword ptr [edx + 0x51c], ebx", "0x1003d455"], ["0x1007ba3b", "mov dword ptr [edx + 0x518], ebx", "0x1003d45b"], ["0x1007ba41", "mov dword ptr [edx + 0x524], eax", "0x1003d461"], ["0x1007ba47", "mov dword ptr [edx + 0x520], eax", "0x1003d467"], ["0x1007ba4d", "call MxDisplaySurface::CreateCursorSurface (FUNCTION)", "0x1003d46d"], ["0x1007ba52", "mov edx, dword ptr [ebp - 0x10]", "0x1003d472"], ["0x1007ba55", "cmp eax, ebx", "0x1003d475"], ["0x1007ba57", "mov dword ptr [edx + 0x514], eax", "0x1003d477"]]}]]]}, {"address": "0x1007bbc0", "recomp": "0x1003d5e0", "name": "LegoVideoManager::DrawFPS", "matching": 0.0, "stub": true}, {"address": "0x1007c080", "recomp": "0x1003d5f0", "name": "LegoVideoManager::GetPresenterAt", "matching": 1.0, "diff": []}, {"address": "0x1007c290", "recomp": "0x1003d6f0", "name": "LegoVideoManager::RealizePalette", "matching": 1.0, "diff": []}, {"address": "0x1007c2d0", "recomp": "0x1003d730", "name": "LegoVideoManager::ResetPalette", "matching": 1.0, "diff": []}, {"address": "0x1007c300", "recomp": "0x1003d760", "name": "LegoVideoManager::EnableFullScreenMovie", "matching": 1.0, "diff": []}, {"address": "0x1007c310", "recomp": "0x1003d770", "name": "LegoVideoManager::EnableFullScreenMovie", "matching": 1.0, "diff": []}, {"address": "0x1007c440", "recomp": "0x1003d8a0", "name": "LegoVideoManager::SetSkyColor", "matching": 1.0, "diff": []}, {"address": "0x1007c4c0", "recomp": "0x1003d920", "name": "LegoVideoManager::OverrideSkyColor", "matching": 1.0, "diff": []}, {"address": "0x1007c4d0", "recomp": "0x1003d930", "name": "LegoVideoManager::UpdateView", "matching": 1.0, "diff": []}, {"address": "0x1007c520", "recomp": "0x1003d980", "name": "LegoVideoManager::FUN_1007c520", "matching": 0.0, "stub": true}, {"address": "0x1007c560", "recomp": "0x1003d990", "name": "LegoVideoManager::EnableRMDevice", "matching": 0.0, "stub": true}, {"address": "0x1007c740", "recomp": "0x1003d9a0", "name": "LegoVideoManager::DisableRMDevice", "matching": 0.0, "stub": true}, {"address": "0x1007c930", "recomp": "0x1003d9b0", "name": "LegoVideoManager::ConfigureD3DRM", "matching": 1.0, "diff": []}, {"address": "0x1007c990", "recomp": "0x10039c40", "name": "LegoPartPresenter::configureLegoPartPresenter", "matching": 1.0, "diff": []}, {"address": "0x1007c9b0", "recomp": "0x10039c60", "name": "LegoPartPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x1007c9d0", "recomp": "0x10039c80", "name": "LegoPartPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1007ca30", "recomp": "0x10039ce0", "name": "LegoPartPresenter::Read", "matching": 0.9649122807017544, "diff": [["@@ -0x1007cc9e,24 +0x10039f4e,24 @@", [{"both": [["0x1007cc9e", "lea edx, [ebp - 0x3c]", "0x10039f4e"], ["0x1007cca1", "push ecx", "0x10039f51"], ["0x1007cca2", "mov dword ptr [ebp - 0x14], eax", "0x10039f52"], ["0x1007cca5", "push edx", "0x10039f55"], ["0x1007cca6", "mov ecx, eax", "0x10039f56"], ["0x1007cca8", "mov byte ptr [ebp - 4], 0", "0x10039f58"], ["0x1007ccac", "call LegoTexture::Read (FUNCTION)", "0x10039f5c"], ["0x1007ccb1", "test eax, eax", "0x10039f61"], ["0x1007ccb3", "jne 0x6e4", "0x10039f63"], ["0x1007ccb9", "call TextureContainer (FUNCTION)", "0x10039f69"]]}, {"orig": [], "recomp": [["0x10039f6e", "mov dword ptr [ebp - 0x18], 0"]]}, {"both": [["0x1007ccbe", "mov edi, dword ptr [eax + 0xc]", "0x10039f75"]]}, {"orig": [["0x1007ccc1", "mov dword ptr [ebp - 0x18], 0"]], "recomp": []}, {"both": [["0x1007ccc8", "mov ecx, dword ptr [edi + 4]", "0x10039f78"]]}, {"orig": [["0x1007cccb", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10039f7b", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ecx"]]}, {"both": [["0x1007ccd1", "je 0x40", "0x10039f81"], ["0x1007ccd3", "mov edx, dword ptr [ecx + 0xc]", "0x10039f83"], ["0x1007ccd6", "mov esi, dword ptr [ebp - 0x10]", "0x10039f86"], ["0x1007ccd9", "mov bl, byte ptr [edx]", "0x10039f89"], ["0x1007ccdb", "cmp bl, byte ptr [esi]", "0x10039f8b"], ["0x1007ccdd", "jne 0x1a", "0x10039f8d"], ["0x1007ccdf", "or bl, bl", "0x10039f8f"], ["0x1007cce1", "je 0x12", "0x10039f91"], ["0x1007cce3", "mov bl, byte ptr [edx + 1]", "0x10039f93"], ["0x1007cce6", "cmp bl, byte ptr [esi + 1]", "0x10039f96"]]}]], ["@@ -0x1007ccf5,21 +0x10039fa5,21 @@", [{"both": [["0x1007ccf5", "xor edx, edx", "0x10039fa5"], ["0x1007ccf7", "jmp 0x5", "0x10039fa7"], ["0x1007ccf9", "sbb edx, edx", "0x10039fa9"], ["0x1007ccfb", "sbb edx, -1", "0x10039fab"], ["0x1007ccfe", "test edx, edx", "0x10039fae"], ["0x1007cd00", "jg 0x6", "0x10039fb0"], ["0x1007cd02", "mov edi, ecx", "0x10039fb2"], ["0x1007cd04", "mov ecx, dword ptr [ecx]", "0x10039fb4"], ["0x1007cd06", "jmp 0x3", "0x10039fb6"], ["0x1007cd08", "mov ecx, dword ptr [ecx + 8]", "0x10039fb8"]]}, {"orig": [["0x1007cd0b", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10039fbb", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ecx"]]}, {"both": [["0x1007cd11", "jne -0x40", "0x10039fc1"], ["0x1007cd13", "mov dword ptr [ebp - 0x84], edi", "0x10039fc3"], ["0x1007cd19", "cmp dword ptr [eax + 0xc], edi", "0x10039fc9"], ["0x1007cd1c", "je 0x35", "0x10039fcc"], ["0x1007cd1e", "mov edx, dword ptr [ebp - 0x10]", "0x10039fce"], ["0x1007cd21", "mov ecx, dword ptr [edi + 0xc]", "0x10039fd1"], ["0x1007cd24", "mov bl, byte ptr [edx]", "0x10039fd4"], ["0x1007cd26", "cmp bl, byte ptr [ecx]", "0x10039fd6"], ["0x1007cd28", "jne 0x1a", "0x10039fd8"], ["0x1007cd2a", "or bl, bl", "0x10039fda"]]}]], ["@@ -0x1007ce86,21 +0x1003a136,21 @@", [{"both": [["0x1007ce86", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1003a136"], ["0x1007ce88", "mov ecx, eax", "0x1003a138"], ["0x1007ce8a", "and ecx, 3", "0x1003a13a"], ["0x1007ce8d", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1003a13d"], ["0x1007ce8f", "mov ecx, dword ptr [ebp - 0x24]", "0x1003a13f"], ["0x1007ce92", "mov eax, 1", "0x1003a142"], ["0x1007ce97", "mov dword ptr [ebp - 0x58], 0", "0x1003a147"], ["0x1007ce9e", "mov dword ptr [ebp - 0x5c], ecx", "0x1003a14e"], ["0x1007cea1", "mov edi, dword ptr [ebx + 0xc]", "0x1003a151"], ["0x1007cea4", "mov esi, dword ptr [edi + 4]", "0x1003a154"]]}, {"orig": [["0x1007cea7", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], esi"]], "recomp": [["0x1003a157", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1007cead", "je 0x49", "0x1003a15d"], ["0x1007ceaf", "mov edi, esi", "0x1003a15f"], ["0x1007ceb1", "mov eax, dword ptr [ebp - 0x5c]", "0x1003a161"], ["0x1007ceb4", "mov edx, dword ptr [esi + 0xc]", "0x1003a164"], ["0x1007ceb7", "mov cl, byte ptr [eax]", "0x1003a167"], ["0x1007ceb9", "cmp cl, byte ptr [edx]", "0x1003a169"], ["0x1007cebb", "jne 0x1a", "0x1003a16b"], ["0x1007cebd", "or cl, cl", "0x1003a16d"], ["0x1007cebf", "je 0x12", "0x1003a16f"], ["0x1007cec1", "mov cl, byte ptr [eax + 1]", "0x1003a171"]]}]], ["@@ -0x1007ced9,21 +0x1003a189,21 @@", [{"both": [["0x1007ced9", "sbb eax, -1", "0x1003a189"], ["0x1007cedc", "test eax, eax", "0x1003a18c"], ["0x1007cede", "setg cl", "0x1003a18e"], ["0x1007cee1", "xor eax, eax", "0x1003a191"], ["0x1007cee3", "mov al, cl", "0x1003a193"], ["0x1007cee5", "test eax, eax", "0x1003a195"], ["0x1007cee7", "jne 0x5", "0x1003a197"], ["0x1007cee9", "mov esi, dword ptr [esi + 8]", "0x1003a199"], ["0x1007ceec", "jmp 0x2", "0x1003a19c"], ["0x1007ceee", "mov esi, dword ptr [esi]", "0x1003a19e"]]}, {"orig": [["0x1007cef0", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], esi"]], "recomp": [["0x1003a1a0", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1007cef6", "jne -0x49", "0x1003a1a6"], ["0x1007cef8", "cmp dword ptr [ebx + 0x10], 0", "0x1003a1a8"], ["0x1007cefc", "je 0x1f", "0x1003a1ac"], ["0x1007cefe", "lea eax, [ebp - 0x5c]", "0x1003a1ae"], ["0x1007cf01", "lea ecx, [ebp - 0x94]", "0x1003a1b1"], ["0x1007cf07", "push eax", "0x1003a1b7"], ["0x1007cf08", "push edi", "0x1003a1b8"], ["0x1007cf09", "push esi", "0x1003a1b9"], ["0x1007cf0a", "push ecx", "0x1003a1ba"], ["0x1007cf0b", "lea ecx, [ebx + 8]", "0x1003a1bb"]]}]], ["@@ -0x1007d00b,21 +0x1003a2bb,21 @@", [{"both": [["0x1007d00b", "call MxCore::MxCore (FUNCTION)", "0x1003a2bb"], ["0x1007d010", "mov byte ptr [ebp - 4], 7", "0x1003a2c0"], ["0x1007d014", "mov byte ptr [ebp - 4], 8", "0x1003a2c4"], ["0x1007d018", "mov byte ptr [ebp - 4], 9", "0x1003a2c8"], ["0x1007d01c", "mov dword ptr [esi], MxCollection<LegoNamedPart *>::`vftable' (VTABLE)", "0x1003a2cc"], ["0x1007d022", "mov dword ptr [esi + 8], edi", "0x1003a2d2"], ["0x1007d025", "mov dword ptr [esi + 0xc], MxCollection<LegoNamedPart *>::Destroy (FUNCTION)", "0x1003a2d5"], ["0x1007d02c", "mov byte ptr [ebp - 4], 0xa", "0x1003a2dc"], ["0x1007d030", "mov dword ptr [esi], MxList<LegoNamedPart *>::`vftable' (VTABLE)", "0x1003a2e0"], ["0x1007d036", "mov byte ptr [ebp - 4], bl", "0x1003a2e6"]]}, {"orig": [["0x1007d039", "mov ecx, esi"]], "recomp": [["0x1003a2e9", "mov eax, esi"]]}, {"both": [["0x1007d03b", "mov dword ptr [esi + 0x14], edi", "0x1003a2eb"], ["0x1007d03e", "mov dword ptr [esi + 0x10], edi", "0x1003a2ee"], ["0x1007d041", "mov dword ptr [esi], MxPtrList<LegoNamedPart>::`vftable' (VTABLE)", "0x1003a2f1"], ["0x1007d047", "mov dword ptr [esi + 0xc], MxPtrList<LegoNamedPart>::Destroy (FUNCTION)", "0x1003a2f7"], ["0x1007d04e", "mov dword ptr [esi], LegoNamedPartList::`vftable' (VTABLE)", "0x1003a2fe"], ["0x1007d054", "jmp 0x63", "0x1003a304"], ["0x1007d056", "mov eax, dword ptr [ebp - 0x18]", "0x1003a306"], ["0x1007d059", "push eax", "0x1003a309"], ["0x1007d05a", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003a30a"], ["0x1007d05f", "add esp, 4", "0x1003a30f"]]}]], ["@@ -0x1007d093,27 +0x1003a343,27 @@", [{"both": [["0x1007d093", "add esp, 4", "0x1003a343"], ["0x1007d096", "ret ", "0x1003a346"], ["0x1007d097", "mov ecx, dword ptr [ebp - 0x10]", "0x1003a347"], ["0x1007d09a", "jmp MxCore::~MxCore (FUNCTION)", "0x1003a34a"], ["0x1007d09f", "mov ecx, dword ptr [ebp - 0x10]", "0x1003a34f"], ["0x1007d0a2", "jmp MxCollection<LegoNamedPart *>::~MxCollection<LegoNamedPart *> (FUNCTION)", "0x1003a352"], ["0x1007d0a7", "mov ecx, dword ptr [ebp - 0x10]", "0x1003a357"], ["0x1007d0aa", "jmp MxList<LegoNamedPart *>::~MxList<LegoNamedPart *> (FUNCTION)", "0x1003a35a"], ["0x1007d0af", "mov ecx, dword ptr [ebp - 0x10]", "0x1003a35f"], ["0x1007d0b2", "jmp MxPtrList<LegoNamedPart>::~MxPtrList<LegoNamedPart> (FUNCTION)", "0x1003a362"]]}, {"orig": [["0x1007d0b7", "xor ecx, ecx"], ["0x1007d0b9", "mov eax, dword ptr [ebp - 0x40]"], ["0x1007d0bc", "push 4"], ["0x1007d0be", "mov byte ptr [ebp - 4], 0"], ["0x1007d0c2", "mov dword ptr [eax + 0x50], ecx"], ["0x1007d0c5", "lea ecx, [ebp - 0x60]"], ["0x1007d0c8", "push ecx"]], "recomp": [["0x1003a367", "xor eax, eax"], ["0x1003a369", "mov ecx, dword ptr [ebp - 0x40]"], ["0x1003a36c", "push 4"], ["0x1003a36e", "mov byte ptr [ebp - 4], 0"], ["0x1003a372", "mov dword ptr [ecx + 0x50], eax"], ["0x1003a375", "lea eax, [ebp - 0x60]"], ["0x1003a378", "push eax"]]}, {"both": [["0x1007d0c9", "lea ecx, [ebp - 0x3c]", "0x1003a379"], ["0x1007d0cc", "call LegoMemory::Read (FUNCTION)", "0x1003a37c"], ["0x1007d0d1", "test eax, eax", "0x1003a381"], ["0x1007d0d3", "jne 0x2c4", "0x1003a383"], ["0x1007d0d9", "mov dword ptr [ebp - 0x2c], 0", "0x1003a389"], ["0x1007d0e0", "cmp dword ptr [ebp - 0x60], 0", "0x1003a390"], ["0x1007d0e4", "jbe 0x2ac", "0x1003a394"], ["0x1007d0ea", "push 4", "0x1003a39a"], ["0x1007d0ec", "lea eax, [ebp - 0x48]", "0x1003a39c"], ["0x1007d0ef", "push eax", "0x1003a39f"]]}]], ["@@ -0x1007d2b4,22 +0x1003a564,22 @@", [{"both": [["0x1007d2b4", "mov byte ptr [ebp - 4], 0", "0x1003a564"], ["0x1007d2b8", "test ebx, ebx", "0x1003a568"], ["0x1007d2ba", "je 0x5", "0x1003a56a"], ["0x1007d2bc", "mov dword ptr [ebx + 8], eax", "0x1003a56c"], ["0x1007d2bf", "jmp 0x3", "0x1003a56f"], ["0x1007d2c1", "mov dword ptr [esi + 0x10], eax", "0x1003a571"], ["0x1007d2c4", "mov dword ptr [esi + 0x14], eax", "0x1003a574"], ["0x1007d2c7", "inc dword ptr [ebp - 0x14]", "0x1003a577"], ["0x1007d2ca", "mov eax, dword ptr [ebp - 0x14]", "0x1003a57a"], ["0x1007d2cd", "inc dword ptr [esi + 8]", "0x1003a57d"]]}, {"orig": [["0x1007d2d0", "cmp dword ptr [ebp - 0x28], eax"], ["0x1007d2d3", "ja -0xcc"]], "recomp": [["0x1003a580", "cmp eax, dword ptr [ebp - 0x28]"], ["0x1003a583", "jb -0xcc"]]}, {"both": [["0x1007d2d9", "mov eax, dword ptr [ebp - 0x74]", "0x1003a589"], ["0x1007d2dc", "push 0x14", "0x1003a58c"], ["0x1007d2de", "mov dword ptr [ebp - 0x30], eax", "0x1003a58e"], ["0x1007d2e1", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003a591"], ["0x1007d2e6", "add esp, 4", "0x1003a596"], ["0x1007d2e9", "mov dword ptr [ebp - 0x10], eax", "0x1003a599"], ["0x1007d2ec", "mov byte ptr [ebp - 4], 0x12", "0x1003a59c"], ["0x1007d2f0", "test eax, eax", "0x1003a5a0"], ["0x1007d2f2", "je 0x29", "0x1003a5a2"], ["0x1007d2f4", "mov ecx, eax", "0x1003a5a4"]]}]], ["@@ -0x1007d302,73 +0x1003a5b2,73 @@", [{"both": [["0x1007d302", "mov ecx, dword ptr [ebp - 0x20]", "0x1003a5b2"], ["0x1007d305", "push ecx", "0x1003a5b5"], ["0x1007d306", "mov ecx, dword ptr [ebp - 0x10]", "0x1003a5b6"], ["0x1007d309", "call MxString::operator= (FUNCTION)", "0x1003a5b9"], ["0x1007d30e", "mov byte ptr [ebp - 4], 0x12", "0x1003a5be"], ["0x1007d312", "mov eax, dword ptr [ebp - 0x10]", "0x1003a5c2"], ["0x1007d315", "mov dword ptr [ebp - 0x14], eax", "0x1003a5c5"], ["0x1007d318", "mov dword ptr [eax + 0x10], esi", "0x1003a5c8"], ["0x1007d31b", "jmp 0x7", "0x1003a5cb"], ["0x1007d31d", "mov dword ptr [ebp - 0x14], 0", "0x1003a5cd"]]}, {"orig": [["0x1007d324", "mov eax, dword ptr [ebp - 0x40]"]], "recomp": [["0x1003a5d4", "mov ecx, dword ptr [ebp - 0x40]"]]}, {"both": [["0x1007d327", "push 0xc", "0x1003a5d7"]]}, {"orig": [["0x1007d329", "mov esi, dword ptr [eax + 0x50]"], ["0x1007d32c", "mov byte ptr [ebp - 4], 0"], ["0x1007d330", "mov ebx, dword ptr [esi + 0x14]"]], "recomp": [["0x1003a5d9", "mov ebx, dword ptr [ecx + 0x50]"], ["0x1003a5dc", "mov byte ptr [ebp - 4], 0"], ["0x1003a5e0", "mov esi, dword ptr [ebx + 0x14]"]]}, {"both": [["0x1007d333", "call ??2@YAPAXI@Z (FUNCTION)", "0x1003a5e3"], ["0x1007d338", "mov dword ptr [ebp - 0x1c], eax", "0x1003a5e8"], ["0x1007d33b", "add esp, 4", "0x1003a5eb"], ["0x1007d33e", "mov byte ptr [ebp - 4], 0x14", "0x1003a5ee"], ["0x1007d342", "mov edi, eax", "0x1003a5f2"], ["0x1007d344", "mov eax, 0", "0x1003a5f4"], ["0x1007d349", "test edi, edi", "0x1003a5f9"], ["0x1007d34b", "je 0x11", "0x1003a5fb"], ["0x1007d34d", "mov eax, dword ptr [ebp - 0x14]", "0x1003a5fd"], ["0x1007d350", "mov dword ptr [edi], eax", "0x1003a600"], ["0x1007d352", "mov eax, edi", "0x1003a602"]]}, {"orig": [["0x1007d354", "mov dword ptr [edi + 4], ebx"]], "recomp": [["0x1003a604", "mov dword ptr [edi + 4], esi"]]}, {"both": [["0x1007d357", "mov dword ptr [edi + 8], 0", "0x1003a607"], ["0x1007d35e", "mov byte ptr [ebp - 4], 0", "0x1003a60e"]]}, {"orig": [["0x1007d362", "test ebx, ebx"]], "recomp": [["0x1003a612", "test esi, esi"]]}, {"both": [["0x1007d364", "je 0x5", "0x1003a614"]]}, {"orig": [["0x1007d366", "mov dword ptr [ebx + 8], eax"]], "recomp": [["0x1003a616", "mov dword ptr [esi + 8], eax"]]}, {"both": [["0x1007d369", "jmp 0x3", "0x1003a619"]]}, {"orig": [["0x1007d36b", "mov dword ptr [esi + 0x10], eax"]], "recomp": [["0x1003a61b", "mov dword ptr [ebx + 0x10], eax"]]}, {"both": [["0x1007d36e", "mov ecx, dword ptr [ebp - 0x20]", "0x1003a61e"]]}, {"orig": [["0x1007d371", "mov dword ptr [esi + 0x14], eax"], ["0x1007d374", "push ecx"], ["0x1007d375", "inc dword ptr [esi + 8]"]], "recomp": [["0x1003a621", "mov dword ptr [ebx + 0x14], eax"], ["0x1003a624", "push ecx"], ["0x1003a625", "inc dword ptr [ebx + 8]"]]}, {"both": [["0x1007d378", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003a628"], ["0x1007d37d", "add esp, 4", "0x1003a62d"], ["0x1007d380", "inc dword ptr [ebp - 0x2c]", "0x1003a630"], ["0x1007d383", "mov dword ptr [ebp - 0x20], 0", "0x1003a633"], ["0x1007d38a", "mov eax, dword ptr [ebp - 0x2c]", "0x1003a63a"], ["0x1007d38d", "cmp eax, dword ptr [ebp - 0x60]", "0x1003a63d"], ["0x1007d390", "jb -0x2ac", "0x1003a640"], ["0x1007d396", "mov dword ptr [ebp - 0x44], 0", "0x1003a646"], ["0x1007d39d", "cmp dword ptr [ebp - 0x20], 0", "0x1003a64d"], ["0x1007d3a1", "je 0xc", "0x1003a651"], ["0x1007d3a3", "mov ecx, dword ptr [ebp - 0x20]", "0x1003a653"], ["0x1007d3a6", "push ecx", "0x1003a656"], ["0x1007d3a7", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003a657"], ["0x1007d3ac", "add esp, 4", "0x1003a65c"], ["0x1007d3af", "cmp dword ptr [ebp - 0x44], 0", "0x1003a65f"], ["0x1007d3b3", "je 0x1a", "0x1003a663"]]}, {"orig": [["0x1007d3b5", "mov eax, dword ptr [ebp - 0x40]"], ["0x1007d3b8", "mov ecx, dword ptr [eax + 0x50]"]], "recomp": [["0x1003a665", "mov ecx, dword ptr [ebp - 0x40]"], ["0x1003a668", "mov ecx, dword ptr [ecx + 0x50]"]]}, {"both": [["0x1007d3bb", "test ecx, ecx", "0x1003a66b"], ["0x1007d3bd", "je 0x10", "0x1003a66d"], ["0x1007d3bf", "push 1", "0x1003a66f"], ["0x1007d3c1", "mov eax, dword ptr [ecx]", "0x1003a671"], ["0x1007d3c3", "call dword ptr [eax]", "0x1003a673"]]}, {"orig": [["0x1007d3c5", "mov eax, dword ptr [ebp - 0x40]"], ["0x1007d3c8", "mov dword ptr [eax + 0x50], 0"]], "recomp": [["0x1003a675", "mov ecx, dword ptr [ebp - 0x40]"], ["0x1003a678", "mov dword ptr [ecx + 0x50], 0"]]}, {"both": [["0x1007d3cf", "mov dword ptr [ebp - 4], 0xffffffff", "0x1003a67f"], ["0x1007d3d6", "call <OFFSET39>", "0x1003a686"], ["0x1007d3db", "mov eax, dword ptr [ebp - 0x44]", "0x1003a68b"], ["0x1007d3de", "mov ecx, dword ptr [ebp - 0xc]", "0x1003a68e"], ["0x1007d3e1", "mov dword ptr fs:[0], ecx", "0x1003a691"], ["0x1007d3e8", "pop edi", "0x1003a698"], ["0x1007d3e9", "pop esi", "0x1003a699"], ["0x1007d3ea", "pop ebx", "0x1003a69a"], ["0x1007d3eb", "mov esp, ebp", "0x1003a69b"], ["0x1007d3ed", "pop ebp", "0x1003a69d"]]}]]]}, {"address": "0x1007d480", "recomp": "0x1003a790", "name": "MxCollection<LegoLOD *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1007d490", "recomp": "0x1003a740", "name": "MxCollection<LegoLOD *>::~MxCollection<LegoLOD *>", "matching": 1.0, "diff": []}, {"address": "0x1007d4e0", "recomp": "0x1003a730", "name": "MxCollection<LegoLOD *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1007d4f0", "recomp": "0x1003b460", "name": "MxList<LegoLOD *>::~MxList<LegoLOD *>", "matching": 1.0, "diff": []}, {"address": "0x1007d580", "recomp": "0x1003a860", "name": "MxCollection<LegoLOD *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007d5f0", "recomp": "0x1003a8d0", "name": "MxList<LegoLOD *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007d6a0", "recomp": "0x1003a980", "name": "MxPtrList<LegoLOD>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007d710", "recomp": "0x1003a810", "name": "MxPtrList<LegoLOD>::~MxPtrList<LegoLOD>", "matching": 1.0, "diff": []}, {"address": "0x1007d760", "recomp": "0x1003aa50", "name": "MxCollection<LegoNamedPart *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x1007d770", "recomp": "0x1003aa00", "name": "MxCollection<LegoNamedPart *>::~MxCollection<LegoNamedPart *>", "matching": 1.0, "diff": []}, {"address": "0x1007d7c0", "recomp": "0x1003a9f0", "name": "MxCollection<LegoNamedPart *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1007d7d0", "recomp": "0x1003b4f0", "name": "MxList<LegoNamedPart *>::~MxList<LegoNamedPart *>", "matching": 1.0, "diff": []}, {"address": "0x1007d860", "recomp": "0x1003aa60", "name": "MxPtrList<LegoNamedPart>::Destroy", "matching": 0.3050847457627119, "diff": [["@@ -0x1007d860,27 +0x1003aa60,32 @@", [{"both": [["0x1007d860", "mov eax, dword ptr fs:[0]", "0x1003aa60"], ["0x1007d866", "push ebp", "0x1003aa66"], ["0x1007d867", "mov ebp, esp", "0x1003aa67"], ["0x1007d869", "push -1", "0x1003aa69"], ["0x1007d86b", "push <OFFSET1>", "0x1003aa6b"], ["0x1007d870", "push eax", "0x1003aa70"]]}, {"orig": [], "recomp": [["0x1003aa71", "cmp dword ptr [ebp + 8], 0"]]}, {"both": [["0x1007d871", "mov dword ptr fs:[0], esp", "0x1003aa75"]]}, {"orig": [["0x1007d878", "sub esp, 0x14"], ["0x1007d87b", "cmp dword ptr [ebp + 8], 0"], ["0x1007d87f", "push ebx"], ["0x1007d880", "push esi"], ["0x1007d881", "push edi"], ["0x1007d882", "je 0xe5"]], "recomp": [["0x1003aa7c", "je 0x2f"]]}, {"both": [["0x1007d888", "mov eax, dword ptr [ebp + 8]", "0x1003aa7e"]]}, {"orig": [["0x1007d88b", "lea ecx, [ebp - 0x1c]"]], "recomp": []}, {"both": [["0x1007d88e", "mov dword ptr [ebp - 4], 0", "0x1003aa81"]]}, {"orig": [["0x1007d895", "mov esi, dword ptr [eax + 0x10]"], ["0x1007d898", "call MxCore::MxCore (FUNCTION)"], ["0x1007d89d", "mov byte ptr [ebp - 4], 1"], ["0x1007d8a1", "mov dword ptr [ebp - 0x1c], MxListCursor<LegoLOD *>::`vftable' (VTABLE)"], ["0x1007d8a8", "mov dword ptr [ebp - 0x10], 0"], ["0x1007d8af", "mov byte ptr [ebp - 4], 2"], ["0x1007d8b3", "mov dword ptr [ebp - 0x1c], MxPtrListCursor<LegoLOD>::`vftable' (VTABLE)"], ["0x1007d8ba", "mov byte ptr [ebp - 4], 3"], ["0x1007d8be", "mov dword ptr [ebp - 0x1c], LegoLODListCursor::`vftable' (VTABLE)"], ["0x1007d8c5", "mov byte ptr [ebp - 4], 4"], ["0x1007d8c9", "mov dword ptr [ebp - 0x14], esi"]], "recomp": [["0x1003aa88", "mov ecx, dword ptr [eax + 0x10]"], ["0x1003aa8b", "test ecx, ecx"], ["0x1003aa8d", "je 0x6"], ["0x1003aa8f", "push 1"], ["0x1003aa91", "mov eax, dword ptr [ecx]"], ["0x1003aa93", "call dword ptr [eax]"], ["0x1003aa95", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1003aa9c", "call <OFFSET2>"], ["0x1003aaa1", "mov eax, dword ptr [ebp + 8]"], ["0x1003aaa4", "push eax"], ["0x1003aaa5", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1003aaaa", "add esp, 4"], ["0x1003aaad", "mov eax, dword ptr [ebp - 0xc]"], ["0x1003aab0", "mov esp, ebp"], ["0x1003aab2", "mov dword ptr fs:[0], eax"], ["0x1003aab8", "pop ebp"], ["0x1003aab9", "ret "], ["0x1003aaba", "mov eax, <OFFSET4>"], ["0x1003aabf", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1003aac4", "mov ecx, dword ptr [ebp + 8]"], ["0x1003aac7", "jmp MxString::~MxString (FUNCTION)"]]}]]]}, {"address": "0x1007d9b0", "recomp": "0x1003afe0", "name": "LegoLODListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007da20", "recomp": "0x1003b050", "name": "MxPtrListCursor<LegoLOD>::~MxPtrListCursor<LegoLOD>", "matching": 1.0, "diff": []}, {"address": "0x1007da70", "recomp": "0x1003b0a0", "name": "MxListCursor<LegoLOD *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007dae0", "recomp": "0x1003b110", "name": "MxPtrListCursor<LegoLOD>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007db50", "recomp": "0x1003b180", "name": "MxListCursor<LegoLOD *>::~MxListCursor<LegoLOD *>", "matching": 1.0, "diff": []}, {"address": "0x1007dba0", "recomp": "0x1003b1d0", "name": "LegoLODListCursor::~LegoLODListCursor", "matching": 1.0, "diff": []}, {"address": "0x1007dbf0", "recomp": "0x1003aad0", "name": "LegoNamedPartList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007dc60", "recomp": "0x1003ab40", "name": "MxPtrList<LegoNamedPart>::~MxPtrList<LegoNamedPart>", "matching": 1.0, "diff": []}, {"address": "0x1007dcb0", "recomp": "0x1003ab90", "name": "MxCollection<LegoNamedPart *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007dd20", "recomp": "0x1003ac00", "name": "MxList<LegoNamedPart *>::`scalar deleting destructor'", "matching": 1.0, "effective": true, "diff": [["@@ -0x1007dd29,33 +0x1003ac09,33 @@", [{"both": [["0x1007dd29", "push -1", "0x1003ac09"], ["0x1007dd2b", "push <OFFSET1>", "0x1003ac0b"], ["0x1007dd30", "push eax", "0x1003ac10"], ["0x1007dd31", "mov dword ptr fs:[0], esp", "0x1003ac11"], ["0x1007dd38", "mov dword ptr [ecx], MxList<LegoNamedPart *>::`vftable' (VTABLE)", "0x1003ac18"], ["0x1007dd3e", "sub esp, 4", "0x1003ac1e"], ["0x1007dd41", "mov dword ptr [ebp - 0x10], ecx", "0x1003ac21"], ["0x1007dd44", "mov dword ptr [ebp - 4], 0", "0x1003ac24"], ["0x1007dd4b", "push esi", "0x1003ac2b"], ["0x1007dd4c", "push edi", "0x1003ac2c"]]}, {"orig": [["0x1007dd4d", "mov esi, dword ptr [ecx + 0x10]"], ["0x1007dd50", "test esi, esi"]], "recomp": [["0x1003ac2d", "mov edi, dword ptr [ecx + 0x10]"], ["0x1003ac30", "test edi, edi"]]}, {"both": [["0x1007dd52", "je 0x1c", "0x1003ac32"]]}, {"orig": [["0x1007dd54", "mov edi, dword ptr [esi + 8]"], ["0x1007dd57", "mov eax, dword ptr [esi]"]], "recomp": [["0x1003ac34", "mov esi, dword ptr [edi + 8]"], ["0x1003ac37", "mov eax, dword ptr [edi]"]]}, {"both": [["0x1007dd59", "push eax", "0x1003ac39"], ["0x1007dd5a", "mov ecx, dword ptr [ebp - 0x10]", "0x1003ac3a"], ["0x1007dd5d", "call dword ptr [ecx + 0xc]", "0x1003ac3d"], ["0x1007dd60", "add esp, 4", "0x1003ac40"]]}, {"orig": [["0x1007dd63", "push esi"]], "recomp": [["0x1003ac43", "push edi"]]}, {"both": [["0x1007dd64", "call ??3@YAXPAX@Z (FUNCTION)", "0x1003ac44"], ["0x1007dd69", "add esp, 4", "0x1003ac49"]]}, {"orig": [["0x1007dd6c", "mov esi, edi"]], "recomp": [["0x1003ac4c", "mov edi, esi"]]}, {"both": [["0x1007dd6e", "jmp -0x20", "0x1003ac4e"], ["0x1007dd70", "xor eax, eax", "0x1003ac50"], ["0x1007dd72", "mov ecx, dword ptr [ebp - 0x10]", "0x1003ac52"], ["0x1007dd75", "mov dword ptr [ebp - 4], 0xffffffff", "0x1003ac55"], ["0x1007dd7c", "mov dword ptr [ecx + 8], eax", "0x1003ac5c"], ["0x1007dd7f", "mov dword ptr [ecx + 0x14], eax", "0x1003ac5f"], ["0x1007dd82", "mov dword ptr [ecx + 0x10], eax", "0x1003ac62"], ["0x1007dd85", "call <OFFSET4>", "0x1003ac65"], ["0x1007dd8a", "test byte ptr [ebp + 8], 1", "0x1003ac6a"], ["0x1007dd8e", "je 0xc", "0x1003ac6e"]]}]]]}, {"address": "0x1007ddd0", "recomp": "0x1003acb0", "name": "MxPtrList<LegoNamedPart>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007de40", "recomp": "0x1003a7a0", "name": "LegoLODList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007deb0", "recomp": "0x1003ad20", "name": "LegoPartPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x1007df20", "recomp": "0x1003ad90", "name": "LegoPartPresenter::Store", "matching": 1.0, "diff": []}, {"address": "0x1007e170", "recomp": "0x1003b220", "name": "LegoNamedPartListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007e1e0", "recomp": "0x1003b290", "name": "MxPtrListCursor<LegoNamedPart>::~MxPtrListCursor<LegoNamedPart>", "matching": 1.0, "diff": []}, {"address": "0x1007e230", "recomp": "0x1003b2e0", "name": "MxListCursor<LegoNamedPart *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007e2a0", "recomp": "0x1003b350", "name": "MxPtrListCursor<LegoNamedPart>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007e310", "recomp": "0x1003b3c0", "name": "MxListCursor<LegoNamedPart *>::~MxListCursor<LegoNamedPart *>", "matching": 1.0, "diff": []}, {"address": "0x1007e360", "recomp": "0x1003b410", "name": "LegoNamedPartListCursor::~LegoNamedPartListCursor", "matching": 1.0, "diff": []}, {"address": "0x1007e3b0", "recomp": "0x10006cf0", "name": "Jetski::Jetski", "matching": 1.0, "diff": []}, {"address": "0x1007e430", "recomp": "0x10006d70", "name": "Jetski::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1007e440", "recomp": "0x10006d80", "name": "Jetski::IsA", "matching": 1.0, "diff": []}, {"address": "0x1007e5c0", "recomp": "0x10006f00", "name": "Jetski::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007e630", "recomp": "0x10006f70", "name": "Jetski::Create", "matching": 0.0, "stub": true}, {"address": "0x1007e680", "recomp": "0x10006f80", "name": "Jetski::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x1007e6f0", "recomp": "0x10006f90", "name": "Jetski::VTable0xe4", "matching": 0.0, "stub": true}, {"address": "0x1007e750", "recomp": "0x10006fa0", "name": "Jetski::VTable0xcc", "matching": 0.0, "stub": true}, {"address": "0x1007e8e0", "recomp": "0x10006fb0", "name": "Jetski::VTable0xd4", "matching": 0.0, "stub": true}, {"address": "0x1007e990", "recomp": "0x10006fc0", "name": "Jetski::FUN_1007e990", "matching": 0.0, "stub": true}, {"address": "0x1007ea90", "recomp": "0x1000c120", "name": "MxBackgroundAudioManager::MxBackgroundAudioManager", "matching": 1.0, "diff": []}, {"address": "0x1007eb70", "recomp": "0x1000c200", "name": "MxBackgroundAudioManager::ClassName", "matching": 1.0, "diff": []}, {"address": "0x1007eb80", "recomp": "0x1000c210", "name": "MxBackgroundAudioManager::IsA", "matching": 1.0, "diff": []}, {"address": "0x1007ec00", "recomp": "0x1000c290", "name": "MxBackgroundAudioManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1007ec20", "recomp": "0x1000c2b0", "name": "MxBackgroundAudioManager::~MxBackgroundAudioManager", "matching": 1.0, "diff": []}, {"address": "0x1007ece0", "recomp": "0x1000c370", "name": "MxBackgroundAudioManager::Create", "matching": 1.0, "diff": []}, {"address": "0x1007ed20", "recomp": "0x1000c3b0", "name": "MxBackgroundAudioManager::OpenMusic", "matching": 1.0, "effective": true, "diff": [["@@ -0x1007ed20,26 +0x1000c3b0,26 @@", [{"both": [["0x1007ed20", "push ebx", "0x1000c3b0"], ["0x1007ed21", "push esi", "0x1000c3b1"], ["0x1007ed22", "push edi", "0x1000c3b2"]]}, {"orig": [["0x1007ed23", "lea edi, [ecx + 0x14c]"], ["0x1007ed29", "cmp dword ptr [edi], 0"]], "recomp": [["0x1000c3b3", "lea ebx, [ecx + 0x14c]"], ["0x1000c3b9", "cmp dword ptr [ebx], 0"]]}, {"both": [["0x1007ed2c", "je 0x5", "0x1000c3bc"], ["0x1007ed2e", "call MxBackgroundAudioManager::DestroyMusic (FUNCTION)", "0x1000c3be"], ["0x1007ed33", "mov esi, dword ptr [esp + 0x10]", "0x1000c3c3"]]}, {"orig": [["0x1007ed37", "mov ebx, 0xffffffff"]], "recomp": [["0x1000c3c7", "mov edi, 0xffffffff"]]}, {"both": [["0x1007ed3c", "push 0", "0x1000c3cc"], ["0x1007ed3e", "mov eax, dword ptr [esi]", "0x1000c3ce"], ["0x1007ed40", "push eax", "0x1000c3d0"], ["0x1007ed41", "call Streamer (FUNCTION)", "0x1000c3d1"], ["0x1007ed46", "mov ecx, eax", "0x1000c3d6"], ["0x1007ed48", "call MxStreamer::Open (FUNCTION)", "0x1000c3d8"], ["0x1007ed4d", "test eax, eax", "0x1000c3dd"], ["0x1007ed4f", "je 0xa", "0x1000c3df"], ["0x1007ed51", "push esi", "0x1000c3e1"]]}, {"orig": [["0x1007ed52", "mov ecx, edi"], ["0x1007ed54", "xor ebx, ebx"]], "recomp": [["0x1000c3e2", "mov ecx, ebx"], ["0x1000c3e4", "xor edi, edi"]]}, {"both": [["0x1007ed56", "call MxAtomId::operator= (FUNCTION)", "0x1000c3e6"]]}, {"orig": [["0x1007ed5b", "mov eax, ebx"]], "recomp": [["0x1000c3eb", "mov eax, edi"]]}, {"both": [["0x1007ed5d", "pop edi", "0x1000c3ed"], ["0x1007ed5e", "pop esi", "0x1000c3ee"], ["0x1007ed5f", "pop ebx", "0x1000c3ef"], ["0x1007ed60", "ret 4", "0x1000c3f0"]]}]]]}, {"address": "0x1007ed70", "recomp": "0x1000c400", "name": "MxBackgroundAudioManager::DestroyMusic", "matching": 1.0, "diff": []}, {"address": "0x1007ee40", "recomp": "0x1000c4d0", "name": "MxBackgroundAudioManager::Tickle", "matching": 1.0, "diff": []}, {"address": "0x1007ee70", "recomp": "0x1000c500", "name": "MxBackgroundAudioManager::FUN_1007ee70", "matching": 1.0, "diff": []}, {"address": "0x1007ef40", "recomp": "0x1000c5d0", "name": "MxBackgroundAudioManager::FUN_1007ef40", "matching": 1.0, "diff": []}, {"address": "0x1007f0e0", "recomp": "0x1000c770", "name": "MxBackgroundAudioManager::FadeInOrFadeOut", "matching": 0.5052631578947369, "diff": [["@@ -0x1007f0e0,50 +0x1000c770,45 @@", [{"both": [["0x1007f0e0", "push esi", "0x1000c770"], ["0x1007f0e1", "mov esi, ecx", "0x1000c771"], ["0x1007f0e3", "mov ecx, dword ptr [ecx + 0xa0]", "0x1000c773"], ["0x1007f0e9", "test ecx, ecx", "0x1000c779"]]}, {"orig": [["0x1007f0eb", "je 0x68"]], "recomp": [["0x1000c77b", "je 0x6e"]]}, {"both": [["0x1007f0ed", "mov eax, dword ptr [ecx]", "0x1000c77d"], ["0x1007f0ef", "call dword ptr [eax + 0x5c]", "0x1000c77f"], ["0x1007f0f2", "cmp word ptr [esi + 0x148], 0", "0x1000c782"]]}, {"orig": [["0x1007f0fa", "mov edx, 0x1e"]], "recomp": [["0x1000c78a", "mov ecx, 0x1e"]]}, {"both": [["0x1007f0ff", "jne 0x6", "0x1000c78f"]]}, {"orig": [["0x1007f101", "mov edx, dword ptr [esi + 0x144]"], ["0x1007f107", "cmp edx, eax"]], "recomp": [["0x1000c791", "mov ecx, dword ptr [esi + 0x144]"], ["0x1000c797", "cmp ecx, eax"]]}, {"both": [["0x1007f109", "jle 0x1c", "0x1000c799"]]}, {"orig": [], "recomp": [["0x1000c79b", "mov edx, dword ptr [esi + 0x140]"], ["0x1000c7a1", "add edx, eax"], ["0x1000c7a3", "cmp edx, ecx"], ["0x1000c7a5", "jl 0x2"], ["0x1000c7a7", "mov edx, ecx"]]}, {"both": [["0x1007f10b", "mov ecx, dword ptr [esi + 0xa0]", "0x1000c7a9"]]}, {"orig": [["0x1007f111", "mov esi, dword ptr [esi + 0x140]"], ["0x1007f117", "add esi, eax"], ["0x1007f119", "cmp esi, edx"], ["0x1007f11b", "jl 0x2"], ["0x1007f11d", "mov esi, edx"], ["0x1007f11f", "push esi"]], "recomp": [["0x1000c7af", "push edx"], ["0x1000c7b0", "mov eax, dword ptr [ecx]"], ["0x1000c7b2", "call dword ptr [eax + 0x60]"], ["0x1000c7b5", "pop esi"], ["0x1000c7b6", "ret "], ["0x1000c7b7", "jge 0x1a"], ["0x1000c7b9", "sub eax, dword ptr [esi + 0x140]"], ["0x1000c7bf", "cmp eax, ecx"], ["0x1000c7c1", "jg 0x2"], ["0x1000c7c3", "mov eax, ecx"], ["0x1000c7c5", "mov ecx, dword ptr [esi + 0xa0]"], ["0x1000c7cb", "push eax"]]}, {"both": [["0x1007f120", "mov eax, dword ptr [ecx]", "0x1000c7cc"], ["0x1007f122", "call dword ptr [eax + 0x60]", "0x1000c7ce"], ["0x1007f125", "pop esi", "0x1000c7d1"], ["0x1007f126", "ret ", "0x1000c7d2"], ["0x1007f127", "mov ecx, dword ptr [esi + 0xa0]", "0x1000c7d3"]]}, {"orig": [["0x1007f12d", "jge 0x14"], ["0x1007f12f", "sub eax, dword ptr [esi + 0x140]"], ["0x1007f135", "cmp eax, edx"], ["0x1007f137", "jg 0x2"], ["0x1007f139", "mov eax, edx"], ["0x1007f13b", "push eax"], ["0x1007f13c", "mov eax, dword ptr [ecx]"], ["0x1007f13e", "call dword ptr [eax + 0x60]"], ["0x1007f141", "pop esi"], ["0x1007f142", "ret "]], "recomp": []}, {"both": [["0x1007f143", "push eax", "0x1000c7d9"], ["0x1007f144", "mov eax, dword ptr [ecx]", "0x1000c7da"], ["0x1007f146", "call dword ptr [eax + 0x60]", "0x1000c7dc"], ["0x1007f149", "mov dword ptr [esi + 0x13c], 0", "0x1000c7df"], ["0x1007f153", "pop esi", "0x1000c7e9"], ["0x1007f154", "ret ", "0x1000c7ea"], ["0x1007f155", "mov dword ptr [esi + 0x13c], 0", "0x1000c7eb"], ["0x1007f15f", "pop esi", "0x1000c7f5"], ["0x1007f160", "ret ", "0x1000c7f6"]]}, {"orig": [["0x1007f161", "int3 "], ["0x1007f162", "int3 "], ["0x1007f163", "int3 "], ["0x1007f164", "int3 "], ["0x1007f165", "int3 "], ["0x1007f166", "int3 "]], "recomp": []}]]]}, {"address": "0x1007f170", "recomp": "0x1000c800", "name": "MxBackgroundAudioManager::Notify", "matching": 1.0, "diff": []}, {"address": "0x1007f1b0", "recomp": "0x1000c840", "name": "MxBackgroundAudioManager::StartAction", "matching": 1.0, "diff": []}, {"address": "0x1007f200", "recomp": "0x1000c890", "name": "MxBackgroundAudioManager::StopAction", "matching": 0.6774193548387096, "diff": [["@@ -0x1007f200,64 +0x1000c890,60 @@", [{"both": [["0x1007f200", "mov eax, dword ptr fs:[0]", "0x1000c890"], ["0x1007f206", "push ebp", "0x1000c896"], ["0x1007f207", "mov ebp, esp", "0x1000c897"], ["0x1007f209", "push -1", "0x1000c899"], ["0x1007f20b", "push <OFFSET1>", "0x1000c89b"], ["0x1007f210", "push eax", "0x1000c8a0"], ["0x1007f211", "mov dword ptr fs:[0], esp", "0x1000c8a1"], ["0x1007f218", "mov eax, dword ptr [ebp + 8]", "0x1000c8a8"], ["0x1007f21b", "sub esp, 8", "0x1000c8ab"]]}, {"orig": [["0x1007f21e", "mov eax, dword ptr [eax + 8]"]], "recomp": []}, {"both": [["0x1007f221", "mov dword ptr [ebp - 0x10], ecx", "0x1000c8ae"]]}, {"orig": [["0x1007f224", "cmp dword ptr [ecx + 0xa0], eax"], ["0x1007f22a", "jne 0x57"], ["0x1007f22c", "xor eax, eax"], ["0x1007f22e", "add ecx, 0xc"], ["0x1007f231", "mov dword ptr [ebp - 4], eax"], ["0x1007f234", "mov dword ptr [ecx + 0x94], eax"], ["0x1007f23a", "mov dword ptr [ebp - 0x14], eax"], ["0x1007f23d", "mov eax, dword ptr [ebp - 0x14]"], ["0x1007f240", "push eax"]], "recomp": [["0x1000c8b1", "mov ecx, dword ptr [eax + 8]"], ["0x1000c8b4", "mov edx, dword ptr [ebp - 0x10]"], ["0x1000c8b7", "cmp dword ptr [edx + 0xa0], ecx"], ["0x1000c8bd", "jne 0x5a"], ["0x1000c8bf", "xor edx, edx"], ["0x1000c8c1", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000c8c4", "mov dword ptr [ebp - 4], edx"], ["0x1000c8c7", "lea ecx, [eax + 0xc]"], ["0x1000c8ca", "mov dword ptr [eax + 0xa0], edx"], ["0x1000c8d0", "mov dword ptr [ebp - 0x14], edx"], ["0x1000c8d3", "mov edx, dword ptr [ebp - 0x14]"], ["0x1000c8d6", "push edx"]]}, {"both": [["0x1007f241", "mov eax, dword ptr [ecx]", "0x1000c8d7"], ["0x1007f243", "call dword ptr [eax + 0x20]", "0x1000c8d9"], ["0x1007f246", "mov dword ptr [ebp - 4], 0xffffffff", "0x1000c8dc"], ["0x1007f24d", "call <OFFSET2>", "0x1000c8e3"], ["0x1007f252", "mov ecx, dword ptr [ebp - 0x10]", "0x1000c8e8"], ["0x1007f255", "mov dword ptr [ecx + 0x28], 0xffffffff", "0x1000c8eb"], ["0x1007f25c", "mov eax, dword ptr [ebp + 8]", "0x1000c8f2"], ["0x1007f25f", "push eax", "0x1000c8f5"], ["0x1007f260", "call Lego (FUNCTION)", "0x1000c8f6"], ["0x1007f265", "mov ecx, eax", "0x1000c8fb"], ["0x1007f267", "call MxOmni::HandleEndAction (FUNCTION)", "0x1000c8fd"], ["0x1007f26c", "mov eax, dword ptr [ebp - 0xc]", "0x1000c902"], ["0x1007f26f", "mov esp, ebp", "0x1000c905"], ["0x1007f271", "mov dword ptr fs:[0], eax", "0x1000c907"], ["0x1007f277", "pop ebp", "0x1000c90d"], ["0x1007f278", "ret 4", "0x1000c90e"], ["0x1007f27b", "lea ecx, [ebp - 0x14]", "0x1000c911"], ["0x1007f27e", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x1000c914"]]}, {"orig": [["0x1007f283", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1007f286", "cmp dword ptr [ecx + 0x138], eax"]], "recomp": [["0x1000c919", "mov eax, dword ptr [ebp - 0x10]"], ["0x1000c91c", "cmp dword ptr [eax + 0x138], ecx"]]}, {"both": [["0x1007f28c", "jne -0x32", "0x1000c922"]]}, {"orig": [["0x1007f28e", "mov dword ptr [ecx + 0x138], 0"]], "recomp": [["0x1000c924", "mov dword ptr [eax + 0x138], 0"]]}, {"both": [["0x1007f298", "mov dword ptr [ebp - 0x14], 0", "0x1000c92e"], ["0x1007f29f", "mov dword ptr [ebp - 4], 1", "0x1000c935"]]}, {"orig": [["0x1007f2a6", "add ecx, 0xa4"], ["0x1007f2ac", "mov eax, dword ptr [ebp - 0x14]"], ["0x1007f2af", "push eax"]], "recomp": [["0x1000c93c", "lea ecx, [eax + 0xa4]"], ["0x1000c942", "mov edx, dword ptr [ebp - 0x14]"], ["0x1000c945", "push edx"]]}, {"both": [["0x1007f2b0", "mov eax, dword ptr [ecx]", "0x1000c946"], ["0x1007f2b2", "call dword ptr [eax + 0x20]", "0x1000c948"], ["0x1007f2b5", "mov dword ptr [ebp - 4], 0xffffffff", "0x1000c94b"], ["0x1007f2bc", "call <OFFSET6>", "0x1000c952"], ["0x1007f2c1", "mov ecx, dword ptr [ebp - 0x10]", "0x1000c957"], ["0x1007f2c4", "mov dword ptr [ecx + 0xc0], 0xffffffff", "0x1000c95a"], ["0x1007f2ce", "jmp -0x74", "0x1000c964"], ["0x1007f2d0", "mov eax, <OFFSET7>", "0x1000c966"], ["0x1007f2d5", "jmp ___CxxFrameHandler (FUNCTION)", "0x1000c96b"], ["0x1007f2da", "lea ecx, [ebp - 0x14]", "0x1000c970"], ["0x1007f2dd", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x1000c973"]]}, {"orig": [["0x1007f2e2", "int3 "], ["0x1007f2e3", "int3 "], ["0x1007f2e4", "int3 "], ["0x1007f2e5", "int3 "], ["0x1007f2e6", "int3 "], ["0x1007f2e7", "int3 "]], "recomp": []}]]]}, {"address": "0x1007f2f0", "recomp": "0x1000c980", "name": "MxBackgroundAudioManager::PlayMusic", "matching": 1.0, "diff": []}, {"address": "0x1007f470", "recomp": "0x1000cb00", "name": "MxBackgroundAudioManager::Stop", "matching": 1.0, "diff": []}, {"address": "0x1007f570", "recomp": "0x1000cc00", "name": "MxBackgroundAudioManager::LowerVolume", "matching": 1.0, "diff": []}, {"address": "0x1007f5b0", "recomp": "0x1000cc40", "name": "MxBackgroundAudioManager::RaiseVolume", "matching": 1.0, "diff": []}, {"address": "0x1007f5f0", "recomp": "0x1000cc80", "name": "MxBackgroundAudioManager::Enable", "matching": 1.0, "diff": []}, {"address": "0x1007f650", "recomp": "0x1000cca0", "name": "MxBackgroundAudioManager::Init", "matching": 1.0, "diff": []}, {"address": "0x1007f660", "recomp": "0x100387e0", "name": "LegoModelPresenter::configureLegoModelPresenter", "matching": 1.0, "diff": []}, {"address": "0x1007f670", "recomp": "0x100387f0", "name": "LegoModelPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1007f6b0", "recomp": "0x10038830", "name": "LegoModelPresenter::CreateROI", "matching": 0.9902777777777778, "diff": [["@@ -0x1007f9f5,24 +0x10038b75,24 @@", [{"both": [["0x1007f9f5", "mov dword ptr [ebp - 0x18], eax", "0x10038b75"], ["0x1007f9f8", "push edx", "0x10038b78"], ["0x1007f9f9", "mov ecx, eax", "0x10038b79"], ["0x1007f9fb", "mov byte ptr [ebp - 4], 1", "0x10038b7b"], ["0x1007f9ff", "call LegoTexture::Read (FUNCTION)", "0x10038b7f"], ["0x1007fa04", "test eax, eax", "0x10038b84"], ["0x1007fa06", "jne 0x482", "0x10038b86"], ["0x1007fa0c", "cmp dword ptr [ebp - 0xa4], 0", "0x10038b8c"], ["0x1007fa13", "jne 0x339", "0x10038b93"], ["0x1007fa19", "call TextureContainer (FUNCTION)", "0x10038b99"]]}, {"orig": [], "recomp": [["0x10038b9e", "mov dword ptr [ebp - 0x14], 0"]]}, {"both": [["0x1007fa1e", "mov edi, dword ptr [eax + 0xc]", "0x10038ba5"]]}, {"orig": [["0x1007fa21", "mov dword ptr [ebp - 0x14], 0"]], "recomp": []}, {"both": [["0x1007fa28", "mov ecx, dword ptr [edi + 4]", "0x10038ba8"]]}, {"orig": [["0x1007fa2b", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ecx"]], "recomp": [["0x10038bab", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1007fa31", "je 0x40", "0x10038bb1"], ["0x1007fa33", "mov edx, dword ptr [ecx + 0xc]", "0x10038bb3"], ["0x1007fa36", "mov esi, dword ptr [ebp - 0x10]", "0x10038bb6"], ["0x1007fa39", "mov bl, byte ptr [edx]", "0x10038bb9"], ["0x1007fa3b", "cmp bl, byte ptr [esi]", "0x10038bbb"], ["0x1007fa3d", "jne 0x1a", "0x10038bbd"], ["0x1007fa3f", "or bl, bl", "0x10038bbf"], ["0x1007fa41", "je 0x12", "0x10038bc1"], ["0x1007fa43", "mov bl, byte ptr [edx + 1]", "0x10038bc3"], ["0x1007fa46", "cmp bl, byte ptr [esi + 1]", "0x10038bc6"]]}]], ["@@ -0x1007fa55,21 +0x10038bd5,21 @@", [{"both": [["0x1007fa55", "xor edx, edx", "0x10038bd5"], ["0x1007fa57", "jmp 0x5", "0x10038bd7"], ["0x1007fa59", "sbb edx, edx", "0x10038bd9"], ["0x1007fa5b", "sbb edx, -1", "0x10038bdb"], ["0x1007fa5e", "test edx, edx", "0x10038bde"], ["0x1007fa60", "jg 0x6", "0x10038be0"], ["0x1007fa62", "mov edi, ecx", "0x10038be2"], ["0x1007fa64", "mov ecx, dword ptr [ecx]", "0x10038be4"], ["0x1007fa66", "jmp 0x3", "0x10038be6"], ["0x1007fa68", "mov ecx, dword ptr [ecx + 8]", "0x10038be8"]]}, {"orig": [["0x1007fa6b", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], ecx"]], "recomp": [["0x10038beb", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1007fa71", "jne -0x40", "0x10038bf1"], ["0x1007fa73", "mov dword ptr [ebp - 0xa0], edi", "0x10038bf3"], ["0x1007fa79", "cmp dword ptr [eax + 0xc], edi", "0x10038bf9"], ["0x1007fa7c", "je 0x35", "0x10038bfc"], ["0x1007fa7e", "mov edx, dword ptr [ebp - 0x10]", "0x10038bfe"], ["0x1007fa81", "mov ecx, dword ptr [edi + 0xc]", "0x10038c01"], ["0x1007fa84", "mov bl, byte ptr [edx]", "0x10038c04"], ["0x1007fa86", "cmp bl, byte ptr [ecx]", "0x10038c06"], ["0x1007fa88", "jne 0x1a", "0x10038c08"], ["0x1007fa8a", "or bl, bl", "0x10038c0a"]]}]], ["@@ -0x1007fae0,21 +0x10038c60,21 @@", [{"both": [["0x1007fae0", "push ecx", "0x10038c60"], ["0x1007fae1", "call LegoTextureInfo::Create (FUNCTION)", "0x10038c61"], ["0x1007fae6", "add esp, 8", "0x10038c66"], ["0x1007fae9", "mov dword ptr [ebp - 0x14], eax", "0x10038c69"], ["0x1007faec", "test eax, eax", "0x10038c6c"], ["0x1007faee", "je 0x39a", "0x10038c6e"], ["0x1007faf4", "call TextureContainer (FUNCTION)", "0x10038c74"], ["0x1007faf9", "mov edi, dword ptr [eax + 0xc]", "0x10038c79"], ["0x1007fafc", "mov ebx, eax", "0x10038c7c"], ["0x1007fafe", "mov eax, dword ptr [edi + 4]", "0x10038c7e"]]}, {"orig": [["0x1007fb01", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x10038c81", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1007fb07", "je 0x40", "0x10038c87"], ["0x1007fb09", "mov ecx, dword ptr [eax + 0xc]", "0x10038c89"], ["0x1007fb0c", "mov esi, dword ptr [ebp - 0x10]", "0x10038c8c"], ["0x1007fb0f", "mov dl, byte ptr [ecx]", "0x10038c8f"], ["0x1007fb11", "cmp dl, byte ptr [esi]", "0x10038c91"], ["0x1007fb13", "jne 0x1a", "0x10038c93"], ["0x1007fb15", "or dl, dl", "0x10038c95"], ["0x1007fb17", "je 0x12", "0x10038c97"], ["0x1007fb19", "mov dl, byte ptr [ecx + 1]", "0x10038c99"], ["0x1007fb1c", "cmp dl, byte ptr [esi + 1]", "0x10038c9c"]]}]], ["@@ -0x1007fb2b,21 +0x10038cab,21 @@", [{"both": [["0x1007fb2b", "xor ecx, ecx", "0x10038cab"], ["0x1007fb2d", "jmp 0x5", "0x10038cad"], ["0x1007fb2f", "sbb ecx, ecx", "0x10038caf"], ["0x1007fb31", "sbb ecx, -1", "0x10038cb1"], ["0x1007fb34", "test ecx, ecx", "0x10038cb4"], ["0x1007fb36", "jg 0x6", "0x10038cb6"], ["0x1007fb38", "mov edi, eax", "0x10038cb8"], ["0x1007fb3a", "mov eax, dword ptr [eax]", "0x10038cba"], ["0x1007fb3c", "jmp 0x3", "0x10038cbc"], ["0x1007fb3e", "mov eax, dword ptr [eax + 8]", "0x10038cbe"]]}, {"orig": [["0x1007fb41", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x10038cc1", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1007fb47", "jne -0x40", "0x10038cc7"], ["0x1007fb49", "mov dword ptr [ebp - 0x98], edi", "0x10038cc9"], ["0x1007fb4f", "cmp dword ptr [ebx + 0xc], edi", "0x10038ccf"], ["0x1007fb52", "je 0x35", "0x10038cd2"], ["0x1007fb54", "mov ecx, dword ptr [ebp - 0x10]", "0x10038cd4"], ["0x1007fb57", "mov eax, dword ptr [edi + 0xc]", "0x10038cd7"], ["0x1007fb5a", "mov dl, byte ptr [ecx]", "0x10038cda"], ["0x1007fb5c", "cmp dl, byte ptr [eax]", "0x10038cdc"], ["0x1007fb5e", "jne 0x1a", "0x10038cde"], ["0x1007fb60", "or dl, dl", "0x10038ce0"]]}]], ["@@ -0x1007fbf8,21 +0x10038d78,21 @@", [{"both": [["0x1007fbf8", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10038d78"], ["0x1007fbfa", "mov ecx, eax", "0x10038d7a"], ["0x1007fbfc", "and ecx, 3", "0x10038d7c"], ["0x1007fbff", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x10038d7f"], ["0x1007fc01", "mov ecx, dword ptr [ebp - 0x80]", "0x10038d81"], ["0x1007fc04", "mov eax, 1", "0x10038d84"], ["0x1007fc09", "mov dword ptr [ebp - 0x3c], 0", "0x10038d89"], ["0x1007fc10", "mov dword ptr [ebp - 0x40], ecx", "0x10038d90"], ["0x1007fc13", "mov edi, dword ptr [ebx + 0xc]", "0x10038d93"], ["0x1007fc16", "mov esi, dword ptr [edi + 4]", "0x10038d96"]]}, {"orig": [["0x1007fc19", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], esi"]], "recomp": [["0x10038d99", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1007fc1f", "je 0x49", "0x10038d9f"], ["0x1007fc21", "mov edi, esi", "0x10038da1"], ["0x1007fc23", "mov eax, dword ptr [ebp - 0x40]", "0x10038da3"], ["0x1007fc26", "mov edx, dword ptr [esi + 0xc]", "0x10038da6"], ["0x1007fc29", "mov cl, byte ptr [eax]", "0x10038da9"], ["0x1007fc2b", "cmp cl, byte ptr [edx]", "0x10038dab"], ["0x1007fc2d", "jne 0x1a", "0x10038dad"], ["0x1007fc2f", "or cl, cl", "0x10038daf"], ["0x1007fc31", "je 0x12", "0x10038db1"], ["0x1007fc33", "mov cl, byte ptr [eax + 1]", "0x10038db3"]]}]], ["@@ -0x1007fc4b,21 +0x10038dcb,21 @@", [{"both": [["0x1007fc4b", "sbb eax, -1", "0x10038dcb"], ["0x1007fc4e", "test eax, eax", "0x10038dce"], ["0x1007fc50", "setg cl", "0x10038dd0"], ["0x1007fc53", "xor eax, eax", "0x10038dd3"], ["0x1007fc55", "mov al, cl", "0x10038dd5"], ["0x1007fc57", "test eax, eax", "0x10038dd7"], ["0x1007fc59", "jne 0x5", "0x10038dd9"], ["0x1007fc5b", "mov esi, dword ptr [esi + 8]", "0x10038ddb"], ["0x1007fc5e", "jmp 0x2", "0x10038dde"], ["0x1007fc60", "mov esi, dword ptr [esi]", "0x10038de0"]]}, {"orig": [["0x1007fc62", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], esi"]], "recomp": [["0x10038de2", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x1007fc68", "jne -0x49", "0x10038de8"], ["0x1007fc6a", "cmp dword ptr [ebx + 0x10], 0", "0x10038dea"], ["0x1007fc6e", "je 0x1f", "0x10038dee"], ["0x1007fc70", "lea eax, [ebp - 0x40]", "0x10038df0"], ["0x1007fc73", "lea ecx, [ebp - 0xb8]", "0x10038df3"], ["0x1007fc79", "push eax", "0x10038df9"], ["0x1007fc7a", "push edi", "0x10038dfa"], ["0x1007fc7b", "push esi", "0x10038dfb"], ["0x1007fc7c", "push ecx", "0x10038dfc"], ["0x1007fc7d", "lea ecx, [ebx + 8]", "0x10038dfd"]]}]]]}, {"address": "0x1007ff70", "recomp": "0x100393f0", "name": "LegoModelPresenter::FUN_1007ff70", "matching": 1.0, "diff": []}, {"address": "0x10080050", "recomp": "0x100394d0", "name": "LegoModelPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x100801b0", "recomp": "0x10039630", "name": "LegoModelPresenter::ParseExtra", "matching": 1.0, "diff": []}, {"address": "0x10080350", "recomp": "0x10022410", "name": "LegoCarRaceActor::LegoCarRaceActor", "matching": 0.8805970149253731, "diff": [["@@ -0x10080361,66 +0x10022421,66 @@", [{"both": [["0x10080361", "mov dword ptr fs:[0], esp", "0x10022421"], ["0x10080368", "sub esp, 0xc", "0x10022428"], ["0x1008036b", "push ebx", "0x1002242b"], ["0x1008036c", "push esi", "0x1002242c"], ["0x1008036d", "mov dword ptr [ebp - 0x18], ecx", "0x1002242d"], ["0x10080370", "mov esi, ecx", "0x10022430"], ["0x10080372", "xor ebx, ebx", "0x10022432"], ["0x10080374", "mov dword ptr [ebp - 0x14], ebx", "0x10022434"], ["0x10080377", "cmp dword ptr [ebp + 8], ebx", "0x10022437"], ["0x1008037a", "je 0xb2", "0x1002243a"]]}, {"orig": [["0x10080380", "mov dword ptr [esi + 4], <OFFSET2>"], ["0x10080387", "mov dword ptr [esi + 0x17c], <OFFSET3>"], ["0x10080391", "mov dword ptr [esi + 0x198], <OFFSET4>"]], "recomp": [["0x10022440", "mov dword ptr [esi + 4], ??_8LegoCarRaceActor@@7B@ (UNK)"], ["0x10022447", "mov dword ptr [esi + 0x17c], ??_8LegoCarRaceActor@@7BLegoAnimActor@@@ (UNK)"], ["0x10022451", "mov dword ptr [esi + 0x198], ??_8LegoCarRaceActor@@7BLegoRaceActor@@@ (UNK)"]]}, {"both": [["0x1008039b", "lea ecx, [esi + 0x24]", "0x1002245b"], ["0x1008039e", "call LegoPathActor::LegoPathActor (FUNCTION)", "0x1002245e"], ["0x100803a3", "mov al, byte ptr [ebp - 0xd]", "0x10022463"], ["0x100803a6", "mov dword ptr [ebp - 4], ebx", "0x10022466"], ["0x100803a9", "mov byte ptr [esi + 0x180], al", "0x10022469"], ["0x100803af", "mov dword ptr [esi + 0x184], ebx", "0x1002246f"], ["0x100803b5", "mov dword ptr [esi + 0x188], ebx", "0x10022475"], ["0x100803bb", "mov dword ptr [esi + 0x18c], ebx", "0x1002247b"], ["0x100803c1", "or dword ptr [ebp - 0x14], 1", "0x10022481"], ["0x100803c5", "mov dword ptr [ebp - 4], 1", "0x10022485"], ["0x100803cc", "mov dword ptr [ebp - 4], 2", "0x1002248c"], ["0x100803d3", "mov eax, dword ptr [esi + 0x17c]", "0x10022493"]]}, {"orig": [["0x100803d9", "mov dword ptr [esi + 0x178], <OFFSET6>"]], "recomp": [["0x10022499", "mov dword ptr [esi + 0x178], LegoAnimActor::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x100803e3", "mov ecx, dword ptr [eax + 4]", "0x100224a3"], ["0x100803e6", "mov byte ptr [ebp - 4], bl", "0x100224a6"]]}, {"orig": [["0x100803e9", "mov dword ptr [ecx + esi + 0x17c], <OFFSET7>"]], "recomp": [["0x100224a9", "mov dword ptr [ecx + esi + 0x17c], LegoAnimActor::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x100803f4", "mov eax, dword ptr [esi + 0x17c]", "0x100224b4"], ["0x100803fa", "push ebx", "0x100224ba"], ["0x100803fb", "mov eax, dword ptr [eax + 4]", "0x100224bb"], ["0x100803fe", "mov dword ptr [ebp - 4], 3", "0x100224be"], ["0x10080405", "lea ecx, [eax - 0x1c]", "0x100224c5"]]}, {"orig": [["0x10080408", "mov dword ptr [eax + esi + 0x178], ecx"]], "recomp": [["0x100224c8", "mov dword ptr [esi + eax + 0x178], ecx"]]}, {"both": [["0x1008040f", "lea ecx, [esi + 0x194]", "0x100224cf"], ["0x10080415", "or dword ptr [ebp - 0x14], 2", "0x100224d5"], ["0x10080419", "mov word ptr [esi + 0x190], 0xffff", "0x100224d9"], ["0x10080422", "call LegoRaceActor::LegoRaceActor (FUNCTION)", "0x100224e2"], ["0x10080427", "or dword ptr [ebp - 0x14], 4", "0x100224e7"], ["0x1008042b", "mov dword ptr [ebp - 4], 4", "0x100224eb"], ["0x10080432", "mov eax, dword ptr [esi + 4]", "0x100224f2"]]}, {"orig": [["0x10080435", "mov dword ptr [esi], <OFFSET9>"]], "recomp": [["0x100224f5", "mov dword ptr [esi], LegoCarRaceActor::`vftable'{for `LegoCarRaceActor'} (VTABLE)"]]}, {"both": [["0x1008043b", "mov ecx, dword ptr [eax + 4]", "0x100224fb"]]}, {"orig": [["0x1008043e", "mov dword ptr [ecx + esi + 4], <OFFSET10>"]], "recomp": [["0x100224fe", "mov dword ptr [ecx + esi + 4], LegoCarRaceActor::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x10080446", "mov eax, dword ptr [esi + 4]", "0x10022506"], ["0x10080449", "mov edx, dword ptr [eax + 8]", "0x10022509"]]}, {"orig": [["0x1008044c", "mov dword ptr [edx + esi + 4], <OFFSET11>"]], "recomp": [["0x1002250c", "mov dword ptr [edx + esi + 4], LegoCarRaceActor::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x10080454", "mov eax, dword ptr [esi + 4]", "0x10022514"], ["0x10080457", "mov edx, 0x3f800000", "0x10022517"], ["0x1008045c", "mov ecx, dword ptr [eax + 0xc]", "0x1002251c"]]}, {"orig": [["0x1008045f", "mov dword ptr [ecx + esi + 4], <OFFSET12>"]], "recomp": [["0x1002251f", "mov dword ptr [ecx + esi + 4], LegoCarRaceActor::`vftable'{for `LegoRaceActor'} (VTABLE)"]]}, {"both": [["0x10080467", "mov eax, dword ptr [esi + 4]", "0x10022527"], ["0x1008046a", "mov eax, dword ptr [eax + 4]", "0x1002252a"], ["0x1008046d", "lea ecx, [eax - 0x20]", "0x1002252d"]]}, {"orig": [["0x10080470", "mov dword ptr [eax + esi], ecx"]], "recomp": [["0x10022530", "mov dword ptr [esi + eax], ecx"]]}, {"both": [["0x10080473", "mov eax, dword ptr [esi + 4]", "0x10022533"], ["0x10080476", "xor ecx, ecx", "0x10022536"], ["0x10080478", "mov dword ptr [esi + 8], edx", "0x10022538"], ["0x1008047b", "mov ebx, dword ptr [eax + 4]", "0x1002253b"], ["0x1008047e", "mov dword ptr [ebx + esi + 0x74], ecx", "0x1002253e"], ["0x10080482", "mov eax, dword ptr [esi + 4]", "0x10022542"], ["0x10080485", "mov byte ptr [esi + 0xc], cl", "0x10022545"], ["0x10080488", "mov ebx, dword ptr [eax + 4]", "0x10022548"], ["0x1008048b", "mov dword ptr [ebx + esi + 0x140], ecx", "0x1002254b"], ["0x10080492", "mov eax, dword ptr [esi + 4]", "0x10022552"]]}]], ["@@ -0x10080513,34 +0x100225d3,34 @@", [{"both": [["0x10080513", "pop ebp", "0x100225d3"], ["0x10080514", "ret 4", "0x100225d4"], ["0x10080517", "test byte ptr [ebp - 0x14], 8", "0x100225d7"], ["0x1008051b", "je 0xe", "0x100225db"], ["0x1008051d", "mov ecx, dword ptr [ebp - 0x18]", "0x100225dd"], ["0x10080520", "add ecx, 0x198", "0x100225e0"], ["0x10080526", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x100225e6"], ["0x1008052b", "ret ", "0x100225eb"], ["0x1008052c", "mov ecx, dword ptr [ebp - 0x18]", "0x100225ec"], ["0x1008052f", "add ecx, 0x180", "0x100225ef"]]}, {"orig": [["0x10080535", "jmp -0x72b1a"]], "recomp": [["0x100225f5", "jmp vector<void *,allocator<void *> >::~vector<void *,allocator<void *> > (FUNCTION)"]]}, {"both": [["0x1008053a", "mov ecx, dword ptr [ebp - 0x18]", "0x100225fa"], ["0x1008053d", "add ecx, 0x180", "0x100225fd"]]}, {"orig": [["0x10080543", "jmp -0x72ae8"], ["0x10080548", "mov eax, <OFFSET18>"]], "recomp": [["0x10022603", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"], ["0x10022608", "mov eax, <OFFSET20>"]]}, {"both": [["0x1008054d", "jmp ___CxxFrameHandler (FUNCTION)", "0x1002260d"], ["0x10080552", "test byte ptr [ebp - 0x14], 4", "0x10022612"], ["0x10080556", "je 0xe", "0x10022616"], ["0x10080558", "mov ecx, dword ptr [ebp - 0x18]", "0x10022618"], ["0x1008055b", "add ecx, 0x194", "0x1002261b"]]}, {"orig": [["0x10080561", "jmp -0x6d956"]], "recomp": [["0x10022621", "jmp LegoRaceActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x10080566", "ret ", "0x10022626"], ["0x10080567", "test byte ptr [ebp - 0x14], 1", "0x10022627"], ["0x1008056b", "je 0xb", "0x1002262b"], ["0x1008056d", "mov ecx, dword ptr [ebp - 0x18]", "0x1002262d"], ["0x10080570", "add ecx, 0x24", "0x10022630"], ["0x10080573", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x10022633"], ["0x10080578", "ret ", "0x10022638"], ["0x10080579", "test byte ptr [ebp - 0x14], 2", "0x10022639"], ["0x1008057d", "je 0xe", "0x1002263d"], ["0x1008057f", "mov ecx, dword ptr [ebp - 0x18]", "0x1002263f"], ["0x10080582", "add ecx, 0x178", "0x10022642"]]}, {"orig": [["0x10080588", "jmp -0x6d9fd"]], "recomp": [["0x10022648", "jmp LegoAnimActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x1008058d", "ret ", "0x1002264d"]]}]]]}, {"address": "0x10080590", "recomp": "0x10022720", "name": "LegoCarRaceActor::FUN_10080590", "matching": 0.0, "stub": true}, {"address": "0x10080740", "recomp": "0x10022730", "name": "LegoCarRaceActor::VTable0x1c", "matching": 0.0, "stub": true}, {"address": "0x10080ef0", "recomp": "0x10024150", "name": "LegoJetskiRaceActor::LegoJetskiRaceActor", "matching": 0.8787878787878788, "diff": [["@@ -0x10080f08,68 +0x10024168,68 @@", [{"both": [["0x10080f08", "sub esp, 0xc", "0x10024168"], ["0x10080f0b", "push ebx", "0x1002416b"], ["0x10080f0c", "push esi", "0x1002416c"], ["0x10080f0d", "mov dword ptr [ebp - 0x18], ecx", "0x1002416d"], ["0x10080f10", "mov esi, ecx", "0x10024170"], ["0x10080f12", "xor ebx, ebx", "0x10024172"], ["0x10080f14", "mov dword ptr [ebp - 0x14], ebx", "0x10024174"], ["0x10080f17", "cmp dword ptr [ebp + 8], ebx", "0x10024177"], ["0x10080f1a", "je 0xd2", "0x1002417a"], ["0x10080f20", "lea ecx, [esi + 8]", "0x10024180"]]}, {"orig": [["0x10080f23", "mov dword ptr [esi], <OFFSET2>"], ["0x10080f29", "mov dword ptr [esi + 0x160], <OFFSET3>"], ["0x10080f33", "mov dword ptr [esi + 0x17c], <OFFSET4>"], ["0x10080f3d", "mov dword ptr [esi + 0x18c], <OFFSET5>"]], "recomp": [["0x10024183", "mov dword ptr [esi], ??_8LegoJetskiRaceActor@@7B0@@ (UNK)"], ["0x10024189", "mov dword ptr [esi + 0x160], ??_8LegoJetskiRaceActor@@7BLegoAnimActor@@@ (UNK)"], ["0x10024193", "mov dword ptr [esi + 0x17c], ??_8LegoJetskiRaceActor@@7BLegoRaceActor@@@ (UNK)"], ["0x1002419d", "mov dword ptr [esi + 0x18c], ??_8LegoJetskiRaceActor@@7BLegoCarRaceActor@@@ (UNK)"]]}, {"both": [["0x10080f47", "call LegoPathActor::LegoPathActor (FUNCTION)", "0x100241a7"], ["0x10080f4c", "mov al, byte ptr [ebp - 0xd]", "0x100241ac"], ["0x10080f4f", "mov dword ptr [ebp - 4], ebx", "0x100241af"], ["0x10080f52", "mov byte ptr [esi + 0x164], al", "0x100241b2"], ["0x10080f58", "mov dword ptr [esi + 0x168], ebx", "0x100241b8"], ["0x10080f5e", "mov dword ptr [esi + 0x16c], ebx", "0x100241be"], ["0x10080f64", "mov dword ptr [esi + 0x170], ebx", "0x100241c4"], ["0x10080f6a", "or dword ptr [ebp - 0x14], 1", "0x100241ca"], ["0x10080f6e", "mov dword ptr [ebp - 4], 1", "0x100241ce"], ["0x10080f75", "mov dword ptr [ebp - 4], 2", "0x100241d5"], ["0x10080f7c", "mov eax, dword ptr [esi + 0x160]", "0x100241dc"]]}, {"orig": [["0x10080f82", "mov dword ptr [esi + 0x15c], <OFFSET7>"]], "recomp": [["0x100241e2", "mov dword ptr [esi + 0x15c], LegoAnimActor::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x10080f8c", "mov ecx, dword ptr [eax + 4]", "0x100241ec"], ["0x10080f8f", "mov byte ptr [ebp - 4], bl", "0x100241ef"]]}, {"orig": [["0x10080f92", "mov dword ptr [ecx + esi + 0x160], <OFFSET8>"]], "recomp": [["0x100241f2", "mov dword ptr [ecx + esi + 0x160], LegoAnimActor::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x10080f9d", "mov eax, dword ptr [esi + 0x160]", "0x100241fd"], ["0x10080fa3", "push ebx", "0x10024203"], ["0x10080fa4", "mov eax, dword ptr [eax + 4]", "0x10024204"], ["0x10080fa7", "mov dword ptr [ebp - 4], 3", "0x10024207"], ["0x10080fae", "lea ecx, [eax - 0x1c]", "0x1002420e"], ["0x10080fb1", "mov dword ptr [eax + esi + 0x15c], ecx", "0x10024211"], ["0x10080fb8", "lea ecx, [esi + 0x178]", "0x10024218"], ["0x10080fbe", "or dword ptr [ebp - 0x14], 2", "0x1002421e"], ["0x10080fc2", "mov word ptr [esi + 0x174], 0xffff", "0x10024222"], ["0x10080fcb", "call LegoRaceActor::LegoRaceActor (FUNCTION)", "0x1002422b"], ["0x10080fd0", "push ebx", "0x10024230"], ["0x10080fd1", "lea ecx, [esi + 0x188]", "0x10024231"], ["0x10080fd7", "or dword ptr [ebp - 0x14], 4", "0x10024237"], ["0x10080fdb", "mov dword ptr [ebp - 4], 4", "0x1002423b"], ["0x10080fe2", "call LegoCarRaceActor::LegoCarRaceActor (FUNCTION)", "0x10024242"], ["0x10080fe7", "or dword ptr [ebp - 0x14], 8", "0x10024247"], ["0x10080feb", "mov dword ptr [ebp - 4], 5", "0x1002424b"], ["0x10080ff2", "mov eax, dword ptr [esi]", "0x10024252"], ["0x10080ff4", "mov ecx, dword ptr [eax + 4]", "0x10024254"]]}, {"orig": [["0x10080ff7", "mov dword ptr [ecx + esi], <OFFSET11>"]], "recomp": [["0x10024257", "mov dword ptr [ecx + esi], LegoJetskiRaceActor::`vftable'{for `LegoPathActor'} (VTABLE)"]]}, {"both": [["0x10080ffe", "mov eax, dword ptr [esi]", "0x1002425e"], ["0x10081000", "mov edx, dword ptr [eax + 8]", "0x10024260"]]}, {"orig": [["0x10081003", "mov dword ptr [edx + esi], <OFFSET12>"]], "recomp": [["0x10024263", "mov dword ptr [edx + esi], LegoJetskiRaceActor::`vftable'{for `LegoAnimActor'} (VTABLE)"]]}, {"both": [["0x1008100a", "mov eax, dword ptr [esi]", "0x1002426a"], ["0x1008100c", "mov ecx, dword ptr [eax + 0xc]", "0x1002426c"]]}, {"orig": [["0x1008100f", "mov dword ptr [ecx + esi], <OFFSET13>"]], "recomp": [["0x1002426f", "mov dword ptr [ecx + esi], LegoJetskiRaceActor::`vftable'{for `LegoRaceActor'} (VTABLE)"]]}, {"both": [["0x10081016", "mov eax, dword ptr [esi]", "0x10024276"], ["0x10081018", "mov edx, dword ptr [eax + 0x10]", "0x10024278"]]}, {"orig": [["0x1008101b", "mov dword ptr [edx + esi], <OFFSET14>"]], "recomp": [["0x1002427b", "mov dword ptr [edx + esi], LegoJetskiRaceActor::`vftable'{for `LegoCarRaceActor'} (VTABLE)"]]}, {"both": [["0x10081022", "mov eax, dword ptr [esi]", "0x10024282"], ["0x10081024", "mov eax, dword ptr [eax + 4]", "0x10024284"], ["0x10081027", "lea ecx, [eax - 8]", "0x10024287"], ["0x1008102a", "mov dword ptr [eax + esi - 4], ecx", "0x1002428a"], ["0x1008102e", "mov edx, dword ptr [esi]", "0x1002428e"], ["0x10081030", "mov eax, dword ptr [edx + 0x10]", "0x10024290"], ["0x10081033", "lea ecx, [eax - 0x188]", "0x10024293"], ["0x10081039", "mov dword ptr [eax + esi - 4], ecx", "0x10024299"], ["0x1008103d", "mov edx, dword ptr [esi]", "0x1002429d"], ["0x1008103f", "mov eax, dword ptr [edx + 0x10]", "0x1002429f"]]}]], ["@@ -0x1008108b,40 +0x100242eb,40 @@", [{"both": [["0x1008108b", "pop ebp", "0x100242eb"], ["0x1008108c", "ret 4", "0x100242ec"], ["0x1008108f", "test byte ptr [ebp - 0x14], 0x10", "0x100242ef"], ["0x10081093", "je 0xe", "0x100242f3"], ["0x10081095", "mov ecx, dword ptr [ebp - 0x18]", "0x100242f5"], ["0x10081098", "add ecx, 0x17c", "0x100242f8"], ["0x1008109e", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x100242fe"], ["0x100810a3", "ret ", "0x10024303"], ["0x100810a4", "mov ecx, dword ptr [ebp - 0x18]", "0x10024304"], ["0x100810a7", "add ecx, 0x164", "0x10024307"]]}, {"orig": [["0x100810ad", "jmp -0x73692"]], "recomp": [["0x1002430d", "jmp vector<void *,allocator<void *> >::~vector<void *,allocator<void *> > (FUNCTION)"]]}, {"both": [["0x100810b2", "mov ecx, dword ptr [ebp - 0x18]", "0x10024312"], ["0x100810b5", "add ecx, 0x164", "0x10024315"]]}, {"orig": [["0x100810bb", "jmp -0x73660"], ["0x100810c0", "mov eax, <OFFSET16>"]], "recomp": [["0x1002431b", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"], ["0x10024320", "mov eax, <OFFSET18>"]]}, {"both": [["0x100810c5", "jmp ___CxxFrameHandler (FUNCTION)", "0x10024325"], ["0x100810ca", "test byte ptr [ebp - 0x14], 8", "0x1002432a"], ["0x100810ce", "je 0xe", "0x1002432e"], ["0x100810d0", "mov ecx, dword ptr [ebp - 0x18]", "0x10024330"], ["0x100810d3", "add ecx, 0x188", "0x10024333"]]}, {"orig": [["0x100810d9", "jmp -0x6e4ae"]], "recomp": [["0x10024339", "jmp LegoCarRaceActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x100810de", "ret ", "0x1002433e"], ["0x100810df", "test byte ptr [ebp - 0x14], 1", "0x1002433f"], ["0x100810e3", "je 0xb", "0x10024343"], ["0x100810e5", "mov ecx, dword ptr [ebp - 0x18]", "0x10024345"], ["0x100810e8", "add ecx, 8", "0x10024348"], ["0x100810eb", "jmp LegoPathActor::~LegoPathActor (FUNCTION)", "0x1002434b"], ["0x100810f0", "ret ", "0x10024350"], ["0x100810f1", "test byte ptr [ebp - 0x14], 2", "0x10024351"], ["0x100810f5", "je 0xe", "0x10024355"], ["0x100810f7", "mov ecx, dword ptr [ebp - 0x18]", "0x10024357"], ["0x100810fa", "add ecx, 0x15c", "0x1002435a"]]}, {"orig": [["0x10081100", "jmp -0x6e575"]], "recomp": [["0x10024360", "jmp LegoAnimActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x10081105", "ret ", "0x10024365"], ["0x10081106", "test byte ptr [ebp - 0x14], 4", "0x10024366"], ["0x1008110a", "je 0xe", "0x1002436a"], ["0x1008110c", "mov ecx, dword ptr [ebp - 0x18]", "0x1002436c"], ["0x1008110f", "add ecx, 0x178", "0x1002436f"]]}, {"orig": [["0x10081115", "jmp -0x6e50a"]], "recomp": [["0x10024375", "jmp LegoRaceActor::`vbase destructor' (FUNCTION)"]]}, {"both": [["0x1008111a", "ret ", "0x1002437a"]]}]]]}, {"address": "0x10081610", "recomp": "0x10022790", "name": "LegoCarRaceActor::`scalar deleting destructor'", "matching": 0.10869565217391304, "diff": [["@@ -0x10081610,60 +0x10022790,32 @@", [{"orig": [["0x10081610", "sub ecx, dword ptr [ecx - 4]"], ["0x10081613", "jmp 0x8"], ["0x10081618", "int3 "], ["0x10081619", "int3 "], ["0x1008161a", "int3 "], ["0x1008161b", "int3 "], ["0x1008161c", "int3 "], ["0x1008161d", "int3 "], ["0x1008161e", "int3 "], ["0x1008161f", "int3 "], ["0x10081620", "push esi"], ["0x10081621", "mov esi, ecx"], ["0x10081623", "lea ecx, [ecx + 0x174]"], ["0x10081629", "call <OFFSET1>"], ["0x1008162e", "mov ecx, esi"]], "recomp": [["0x10022790", "mov eax, dword ptr fs:[0]"], ["0x10022796", "push ebp"], ["0x10022797", "mov ebp, esp"], ["0x10022799", "push -1"], ["0x1002279b", "push <OFFSET1>"], ["0x100227a0", "push eax"], ["0x100227a1", "mov dword ptr fs:[0], esp"], ["0x100227a8", "sub esp, 4"], ["0x100227ab", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100227b2", "mov dword ptr [ebp - 0x10], ecx"], ["0x100227b5", "call <OFFSET2>"], ["0x100227ba", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10081630", "call LegoPathActor::~LegoPathActor (FUNCTION)", "0x100227bd"]]}, {"orig": [["0x10081635", "test byte ptr [esp + 8], 1"], ["0x1008163a", "je 0xc"], ["0x1008163c", "lea eax, [esi - 0x24]"]], "recomp": [["0x100227c2", "test byte ptr [ebp + 8], 1"], ["0x100227c6", "je 0xf"], ["0x100227c8", "mov eax, dword ptr [ebp - 0x10]"], ["0x100227cb", "sub eax, 0x24"]]}, {"both": [["0x1008163f", "push eax", "0x100227ce"], ["0x10081640", "call ??3@YAXPAX@Z (FUNCTION)", "0x100227cf"], ["0x10081645", "add esp, 4", "0x100227d4"]]}, {"orig": [["0x10081648", "lea eax, [esi - 0x24]"], ["0x1008164b", "pop esi"]], "recomp": [["0x100227d7", "mov eax, dword ptr [ebp - 0x10]"], ["0x100227da", "mov ecx, dword ptr [ebp - 0xc]"], ["0x100227dd", "mov esp, ebp"], ["0x100227df", "mov dword ptr fs:[0], ecx"], ["0x100227e6", "sub eax, 0x24"], ["0x100227e9", "pop ebp"]]}, {"both": [["0x1008164c", "ret 4", "0x100227ea"]]}, {"orig": [["0x1008164f", "int3 "], ["0x10081650", "sub ecx, dword ptr [ecx - 4]"], ["0x10081653", "jmp 0x8"], ["0x10081658", "int3 "], ["0x10081659", "int3 "], ["0x1008165a", "int3 "], ["0x1008165b", "int3 "], ["0x1008165c", "int3 "], ["0x1008165d", "int3 "], ["0x1008165e", "int3 "], ["0x1008165f", "int3 "], ["0x10081660", "mov eax, 'LegoCarRaceActor' (STRING)"], ["0x10081665", "ret "], ["0x10081666", "int3 "], ["0x10081667", "int3 "], ["0x10081668", "int3 "], ["0x10081669", "int3 "], ["0x1008166a", "int3 "], ["0x1008166b", "int3 "], ["0x1008166c", "int3 "], ["0x1008166d", "int3 "], ["0x1008166e", "int3 "], ["0x1008166f", "int3 "], ["0x10081670", "sub ecx, dword ptr [ecx - 4]"], ["0x10081673", "jmp 0x8"], ["0x10081678", "int3 "], ["0x10081679", "int3 "], ["0x1008167a", "int3 "], ["0x1008167b", "int3 "], ["0x1008167c", "int3 "], ["0x1008167d", "int3 "], ["0x1008167e", "int3 "], ["0x1008167f", "int3 "], ["0x10081680", "mov edx, dword ptr [esp + 4]"], ["0x10081684", "push ebx"]], "recomp": [["0x100227ed", "mov eax, <OFFSET5>"], ["0x100227f2", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x100227f7", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100227fa", "add ecx, 0x15c"], ["0x10022800", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"]]}]]]}, {"address": "0x10081650", "recomp": "0x10022820", "name": "LegoCarRaceActor::ClassName", "matching": 0.0, "diff": [["@@ -0x10081650,1 +0x10022820,2 @@", [{"orig": [["0x10081650", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x10022820", "mov eax, 'LegoCarRaceActor' (STRING)"], ["0x10022825", "ret "]]}]]]}, {"address": "0x10081670", "recomp": "0x10022840", "name": "LegoCarRaceActor::IsA", "matching": 0.9442815249266863, "diff": [["@@ -0x10081670,20 +0x10022840,10 @@", [{"orig": [["0x10081670", "sub ecx, dword ptr [ecx - 4]"], ["0x10081673", "jmp 0x8"], ["0x10081678", "int3 "], ["0x10081679", "int3 "], ["0x1008167a", "int3 "], ["0x1008167b", "int3 "], ["0x1008167c", "int3 "], ["0x1008167d", "int3 "], ["0x1008167e", "int3 "], ["0x1008167f", "int3 "]], "recomp": []}, {"both": [["0x10081680", "mov edx, dword ptr [esp + 4]", "0x10022840"], ["0x10081684", "push ebx", "0x10022844"], ["0x10081685", "push esi", "0x10022845"], ["0x10081686", "mov eax, edx", "0x10022846"], ["0x10081688", "mov esi, 'LegoCarRaceActor' (STRING)", "0x10022848"], ["0x1008168d", "mov bl, byte ptr [eax]", "0x1002284d"], ["0x1008168f", "cmp bl, byte ptr [esi]", "0x1002284f"], ["0x10081691", "jne 0x1a", "0x10022851"], ["0x10081693", "or bl, bl", "0x10022853"], ["0x10081695", "je 0x12", "0x10022855"]]}]], ["@@ -0x100817ff,10 +0x100229bf,19 @@", [{"both": [["0x100817ff", "jne 0xe", "0x100229bf"], ["0x10081801", "add edx, 2", "0x100229c1"], ["0x10081804", "add eax, 2", "0x100229c4"], ["0x10081807", "or cl, cl", "0x100229c7"], ["0x10081809", "jne -0x1c", "0x100229c9"], ["0x1008180b", "xor eax, eax", "0x100229cb"], ["0x1008180d", "jmp 0x5", "0x100229cd"], ["0x1008180f", "sbb eax, eax", "0x100229cf"], ["0x10081811", "sbb eax, -1", "0x100229d1"], ["0x10081814", "test eax, eax", "0x100229d4"]]}, {"orig": [], "recomp": [["0x100229d6", "je 0x7"], ["0x100229d8", "xor al, al"], ["0x100229da", "pop esi"], ["0x100229db", "pop ebx"], ["0x100229dc", "ret 4"], ["0x100229df", "mov al, 1"], ["0x100229e1", "pop esi"], ["0x100229e2", "pop ebx"], ["0x100229e3", "ret 4"]]}]]]}, {"address": "0x10081830", "recomp": "0x10022740", "name": "LegoCarRaceActor::VTable0x6c", "matching": 0.0, "stub": true}, {"address": "0x10081d10", "recomp": "0x10022750", "name": "LegoCarRaceActor::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x10081d20", "recomp": "0x10022760", "name": "LegoCarRaceActor::VTable0x98", "matching": 0.0, "stub": true}, {"address": "0x10081d30", "recomp": "0x10022770", "name": "LegoCarRaceActor::VTable0x9c", "matching": 0.0, "stub": true}, {"address": "0x10081d40", "recomp": "0x100243d0", "name": "LegoJetskiRaceActor::`scalar deleting destructor'", "matching": 0.10869565217391304, "diff": [["@@ -0x10081d40,60 +0x100243d0,32 @@", [{"orig": [["0x10081d40", "sub ecx, dword ptr [ecx - 4]"], ["0x10081d43", "jmp 0x8"], ["0x10081d48", "int3 "], ["0x10081d49", "int3 "], ["0x10081d4a", "int3 "], ["0x10081d4b", "int3 "], ["0x10081d4c", "int3 "], ["0x10081d4d", "int3 "], ["0x10081d4e", "int3 "], ["0x10081d4f", "int3 "], ["0x10081d50", "push esi"], ["0x10081d51", "mov esi, ecx"], ["0x10081d53", "lea ecx, [ecx + 0x174]"], ["0x10081d59", "call <OFFSET1>"], ["0x10081d5e", "mov ecx, esi"]], "recomp": [["0x100243d0", "mov eax, dword ptr fs:[0]"], ["0x100243d6", "push ebp"], ["0x100243d7", "mov ebp, esp"], ["0x100243d9", "push -1"], ["0x100243db", "push <OFFSET1>"], ["0x100243e0", "push eax"], ["0x100243e1", "mov dword ptr fs:[0], esp"], ["0x100243e8", "sub esp, 4"], ["0x100243eb", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100243f2", "mov dword ptr [ebp - 0x10], ecx"], ["0x100243f5", "call <OFFSET2>"], ["0x100243fa", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10081d60", "call LegoPathActor::~LegoPathActor (FUNCTION)", "0x100243fd"]]}, {"orig": [["0x10081d65", "test byte ptr [esp + 8], 1"], ["0x10081d6a", "je 0xc"], ["0x10081d6c", "lea eax, [esi - 8]"]], "recomp": [["0x10024402", "test byte ptr [ebp + 8], 1"], ["0x10024406", "je 0xf"], ["0x10024408", "mov eax, dword ptr [ebp - 0x10]"], ["0x1002440b", "sub eax, 8"]]}, {"both": [["0x10081d6f", "push eax", "0x1002440e"], ["0x10081d70", "call ??3@YAXPAX@Z (FUNCTION)", "0x1002440f"], ["0x10081d75", "add esp, 4", "0x10024414"]]}, {"orig": [["0x10081d78", "lea eax, [esi - 8]"], ["0x10081d7b", "pop esi"]], "recomp": [["0x10024417", "mov eax, dword ptr [ebp - 0x10]"], ["0x1002441a", "mov ecx, dword ptr [ebp - 0xc]"], ["0x1002441d", "mov esp, ebp"], ["0x1002441f", "mov dword ptr fs:[0], ecx"], ["0x10024426", "sub eax, 8"], ["0x10024429", "pop ebp"]]}, {"both": [["0x10081d7c", "ret 4", "0x1002442a"]]}, {"orig": [["0x10081d7f", "int3 "], ["0x10081d80", "sub ecx, dword ptr [ecx - 4]"], ["0x10081d83", "jmp 0x8"], ["0x10081d88", "int3 "], ["0x10081d89", "int3 "], ["0x10081d8a", "int3 "], ["0x10081d8b", "int3 "], ["0x10081d8c", "int3 "], ["0x10081d8d", "int3 "], ["0x10081d8e", "int3 "], ["0x10081d8f", "int3 "], ["0x10081d90", "mov eax, 'LegoJetskiRaceActor' (STRING)"], ["0x10081d95", "ret "], ["0x10081d96", "int3 "], ["0x10081d97", "int3 "], ["0x10081d98", "int3 "], ["0x10081d99", "int3 "], ["0x10081d9a", "int3 "], ["0x10081d9b", "int3 "], ["0x10081d9c", "int3 "], ["0x10081d9d", "int3 "], ["0x10081d9e", "int3 "], ["0x10081d9f", "int3 "], ["0x10081da0", "sub ecx, dword ptr [ecx - 4]"], ["0x10081da3", "jmp 0x8"], ["0x10081da8", "int3 "], ["0x10081da9", "int3 "], ["0x10081daa", "int3 "], ["0x10081dab", "int3 "], ["0x10081dac", "int3 "], ["0x10081dad", "int3 "], ["0x10081dae", "int3 "], ["0x10081daf", "int3 "], ["0x10081db0", "push esi"], ["0x10081db1", "push edi"]], "recomp": [["0x1002442d", "mov eax, <OFFSET5>"], ["0x10024432", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10024437", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1002443a", "add ecx, 0x15c"], ["0x10024440", "jmp Vector<void *>::~Vector<void *> (FUNCTION)"]]}]]]}, {"address": "0x10081d80", "recomp": "0x10024460", "name": "LegoJetskiRaceActor::ClassName", "matching": 0.0, "diff": [["@@ -0x10081d80,1 +0x10024460,2 @@", [{"orig": [["0x10081d80", "sub ecx, dword ptr [ecx - 4]"]], "recomp": [["0x10024460", "mov eax, 'LegoJetskiRaceActor' (STRING)"], ["0x10024465", "ret "]]}]]]}, {"address": "0x10081da0", "recomp": "0x10024480", "name": "LegoJetskiRaceActor::IsA", "matching": 0.9530864197530864, "diff": [["@@ -0x10081da0,20 +0x10024480,10 @@", [{"orig": [["0x10081da0", "sub ecx, dword ptr [ecx - 4]"], ["0x10081da3", "jmp 0x8"], ["0x10081da8", "int3 "], ["0x10081da9", "int3 "], ["0x10081daa", "int3 "], ["0x10081dab", "int3 "], ["0x10081dac", "int3 "], ["0x10081dad", "int3 "], ["0x10081dae", "int3 "], ["0x10081daf", "int3 "]], "recomp": []}, {"both": [["0x10081db0", "push esi", "0x10024480"], ["0x10081db1", "push edi", "0x10024481"], ["0x10081db2", "mov esi, dword ptr [esp + 0xc]", "0x10024482"], ["0x10081db6", "mov edi, 'LegoJetskiRaceActor' (STRING)", "0x10024486"], ["0x10081dbb", "mov eax, esi", "0x1002448b"], ["0x10081dbd", "mov dl, byte ptr [eax]", "0x1002448d"], ["0x10081dbf", "cmp dl, byte ptr [edi]", "0x1002448f"], ["0x10081dc1", "jne 0x1a", "0x10024491"], ["0x10081dc3", "or dl, dl", "0x10024493"], ["0x10081dc5", "je 0x12", "0x10024495"]]}]], ["@@ -0x10081f8b,10 +0x1002465b,19 @@", [{"both": [["0x10081f8b", "jne 0xe", "0x1002465b"], ["0x10081f8d", "add esi, 2", "0x1002465d"], ["0x10081f90", "add eax, 2", "0x10024660"], ["0x10081f93", "or cl, cl", "0x10024663"], ["0x10081f95", "jne -0x1c", "0x10024665"], ["0x10081f97", "xor eax, eax", "0x10024667"], ["0x10081f99", "jmp 0x5", "0x10024669"], ["0x10081f9b", "sbb eax, eax", "0x1002466b"], ["0x10081f9d", "sbb eax, -1", "0x1002466d"], ["0x10081fa0", "test eax, eax", "0x10024670"]]}, {"orig": [], "recomp": [["0x10024672", "je 0x7"], ["0x10024674", "xor al, al"], ["0x10024676", "pop edi"], ["0x10024677", "pop esi"], ["0x10024678", "ret 4"], ["0x1002467b", "mov al, 1"], ["0x1002467d", "pop edi"], ["0x1002467e", "pop esi"], ["0x1002467f", "ret 4"]]}]]]}, {"address": "0x10081fc0", "recomp": "0x10024380", "name": "LegoJetskiRaceActor::VTable0x6c", "matching": 0.0, "stub": true}, {"address": "0x100822c0", "recomp": "0x10024390", "name": "LegoJetskiRaceActor::VTable0x70", "matching": 0.0, "stub": true}, {"address": "0x100822d0", "recomp": "0x100243a0", "name": "LegoJetskiRaceActor::VTable0x98", "matching": 0.0, "stub": true}, {"address": "0x100822e0", "recomp": "0x100243b0", "name": "LegoJetskiRaceActor::VTable0x9c", "matching": 0.0, "stub": true}, {"address": "0x100822f0", "recomp": "0x1003e760", "name": "HistoryBook::HistoryBook", "matching": 1.0, "diff": []}, {"address": "0x10082390", "recomp": "0x1003e800", "name": "HistoryBook::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100823a0", "recomp": "0x1003e810", "name": "HistoryBook::IsA", "matching": 1.0, "diff": []}, {"address": "0x100824b0", "recomp": "0x1003e920", "name": "HistoryBook::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100824d0", "recomp": "0x1003e940", "name": "HistoryBook::~HistoryBook", "matching": 0.0, "stub": true}, {"address": "0x10082610", "recomp": "0x1003e990", "name": "HistoryBook::Create", "matching": 1.0, "diff": []}, {"address": "0x10082680", "recomp": "0x1003ea00", "name": "HistoryBook::Notify", "matching": 1.0, "diff": []}, {"address": "0x100826f0", "recomp": "0x1003ea70", "name": "HistoryBook::ReadyWorld", "matching": 0.6875, "diff": [["@@ -0x100826f9,188 +0x1003ea79,189 @@", [{"both": [["0x100826f9", "push edi", "0x1003ea79"], ["0x100826fa", "push ebp", "0x1003ea7a"], ["0x100826fb", "call LegoWorld::ReadyWorld (FUNCTION)", "0x1003ea7b"], ["0x10082700", "call GameState (FUNCTION)", "0x1003ea80"], ["0x10082705", "lea ecx, [eax + 0xa6]", "0x1003ea85"], ["0x1008270b", "call LegoGameState::History::WriteScoreHistory (FUNCTION)", "0x1003ea8b"], ["0x10082710", "mov eax, dword ptr ['A_Bitmap' (STRING)]", "0x1003ea90"], ["0x10082715", "mov ebx, dword ptr [<OFFSET5>]", "0x1003ea95"], ["0x1008271b", "xor si, si", "0x1003ea9b"], ["0x1008271e", "mov ecx, 'A_Bitmap' (STRING)", "0x1003ea9e"]]}, {"orig": [["0x10082723", "cmp si, 0x1a"]], "recomp": []}, {"both": [["0x10082727", "lea edx, [esp + 0x40]", "0x1003eaa3"], ["0x1008272b", "mov cl, byte ptr [ecx + 8]", "0x1003eaa7"], ["0x1008272e", "mov dword ptr [edx], eax", "0x1003eaaa"], ["0x10082730", "mov dword ptr [edx + 4], ebx", "0x1003eaac"], ["0x10082733", "mov byte ptr [edx + 8], cl", "0x1003eaaf"]]}, {"orig": [["0x10082736", "jge 0x25"]], "recomp": []}, {"both": [["0x10082738", "lea eax, [esp + 0x40]", "0x1003eab2"], ["0x1008273c", "mov ecx, dword ptr [esp + 0x18]", "0x1003eab6"], ["0x10082740", "push eax", "0x1003eaba"], ["0x10082741", "push 'MxStillPresenter' (STRING)", "0x1003eabb"], ["0x10082746", "call LegoWorld::Find (FUNCTION)", "0x1003eac0"]]}, {"orig": [["0x1008274b", "movsx ecx, si"]], "recomp": []}, {"both": [["0x1008274e", "mov edx, dword ptr [esp + 0x18]", "0x1003eac5"], ["0x10082752", "inc byte ptr [esp + 0x40]", "0x1003eac9"]]}, {"orig": [], "recomp": [["0x1003eacd", "movsx ecx, si"], ["0x1003ead0", "inc si"]]}, {"both": [["0x10082756", "mov dword ptr [edx + ecx*4 + 0xfc], eax", "0x1003ead2"]]}, {"orig": [["0x1008275d", "inc si"]], "recomp": []}, {"both": [["0x1008275f", "cmp si, 0x1a", "0x1003ead9"], ["0x10082763", "jl -0x2d", "0x1003eadd"], ["0x10082765", "mov ecx, dword ptr [esp + 0x18]", "0x1003eadf"], ["0x10082769", "push 'ScoreBox' (STRING)", "0x1003eae3"], ["0x1008276e", "push 'MxStillPresenter' (STRING)", "0x1003eae8"], ["0x10082773", "call LegoWorld::Find (FUNCTION)", "0x1003eaed"], ["0x10082778", "mov byte ptr [esp + 0x14], 0x76", "0x1003eaf2"], ["0x1008277d", "mov byte ptr [esp + 0x15], 0x4c", "0x1003eaf7"], ["0x10082782", "mov byte ptr [esp + 0x16], 0x38", "0x1003eafc"], ["0x10082787", "mov dword ptr [esp + 0x24], 0x79", "0x1003eb01"], ["0x1008278f", "mov word ptr [esp + 0x12], 0", "0x1003eb09"], ["0x10082796", "mov dword ptr [esp + 0x30], eax", "0x1003eb10"], ["0x1008279a", "call GameState (FUNCTION)", "0x1003eb14"], ["0x1008279f", "mov cx, word ptr [esp + 0x12]", "0x1003eb19"], ["0x100827a4", "cmp word ptr [eax + 0xa6], cx", "0x1003eb1e"]]}, {"orig": [["0x100827ab", "jle 0x244"]], "recomp": [["0x1003eb25", "jle 0x256"]]}, {"both": [["0x100827b1", "call GameState (FUNCTION)", "0x1003eb2b"], ["0x100827b6", "mov cx, word ptr [esp + 0x12]", "0x1003eb30"]]}, {"orig": [["0x100827bb", "add eax, 0xa6"], ["0x100827c0", "cmp word ptr [eax], cx"]], "recomp": [["0x1003eb35", "cmp word ptr [eax + 0xa6], cx"]]}, {"both": [["0x100827c3", "jg 0xa", "0x1003eb3c"], ["0x100827c5", "mov dword ptr [esp + 0x28], 0", "0x1003eb3e"]]}, {"orig": [["0x100827cd", "jmp 0x15"]], "recomp": [["0x1003eb46", "jmp 0x18"]]}, {"both": [["0x100827cf", "movsx ecx, word ptr [esp + 0x12]", "0x1003eb48"], ["0x100827d4", "lea edx, [ecx + ecx*4]", "0x1003eb4d"], ["0x100827d7", "lea edx, [edx + edx*8]", "0x1003eb50"], ["0x100827da", "sub edx, ecx", "0x1003eb53"]]}, {"orig": [["0x100827dc", "lea eax, [edx + eax + 2]"]], "recomp": [["0x1003eb55", "lea eax, [edx + eax + 0xa8]"]]}, {"both": [["0x100827e0", "mov dword ptr [esp + 0x28], eax", "0x1003eb5c"], ["0x100827e4", "movsx eax, word ptr [esp + 0x12]", "0x1003eb60"], ["0x100827e9", "mov edx, dword ptr [esp + 0x18]", "0x1003eb65"], ["0x100827ed", "mov dword ptr [esp + 0x2c], eax", "0x1003eb69"], ["0x100827f1", "lea ecx, [edx + eax*4 + 0x394]", "0x1003eb6d"], ["0x100827f8", "mov eax, dword ptr [esp + 0x30]", "0x1003eb74"], ["0x100827fc", "mov dword ptr [esp + 0x1c], ecx", "0x1003eb78"], ["0x10082800", "mov ecx, eax", "0x1003eb7c"], ["0x10082802", "mov ebx, dword ptr [eax]", "0x1003eb7e"], ["0x10082804", "call dword ptr [ebx + 0x8c]", "0x1003eb80"], ["0x1008280a", "cmp word ptr [esp + 0x12], 0xa", "0x1003eb86"]]}, {"orig": [["0x10082810", "mov edx, dword ptr [esp + 0x1c]"]], "recomp": [["0x1003eb8c", "mov ecx, dword ptr [esp + 0x1c]"]]}, {"both": [["0x10082814", "mov dword ptr [esp + 0x20], 0x90", "0x1003eb90"]]}, {"orig": [["0x1008281c", "mov dword ptr [edx], eax"]], "recomp": [["0x1003eb98", "mov dword ptr [ecx], eax"]]}, {"both": [["0x1008281e", "jl 0x12", "0x1003eb9a"], ["0x10082820", "jne 0x8", "0x1003eb9c"], ["0x10082822", "mov dword ptr [esp + 0x24], 0x79", "0x1003eb9e"], ["0x1008282a", "mov dword ptr [esp + 0x20], 0x158", "0x1003eba6"], ["0x10082832", "mov dword ptr [esp + 0x38], 1", "0x1003ebae"], ["0x1008283a", "mov dword ptr [esp + 0x3c], 5", "0x1003ebb6"], ["0x10082842", "mov eax, dword ptr [esp + 0x28]", "0x1003ebbe"], ["0x10082846", "mov dword ptr [esp + 0x34], eax", "0x1003ebc2"]]}, {"orig": [["0x1008284a", "xor esi, esi"], ["0x1008284c", "mov edi, 1"]], "recomp": [["0x1003ebc6", "xor ebp, ebp"], ["0x1003ebc8", "mov esi, 1"]]}, {"both": [["0x10082851", "mov eax, dword ptr [esp + 0x34]", "0x1003ebcd"]]}, {"orig": [["0x10082855", "mov cl, byte ptr [eax + esi + 2]"], ["0x10082859", "test cl, cl"], ["0x1008285b", "je 0xb9"]], "recomp": [["0x1003ebd1", "mov ecx, dword ptr [esp + 0x1c]"], ["0x1003ebd5", "mov al, byte ptr [ebp + eax + 2]"], ["0x1003ebd9", "mov ecx, dword ptr [ecx]"], ["0x1003ebdb", "mov byte ptr [esp + 0x11], al"], ["0x1003ebdf", "test al, al"], ["0x1003ebe1", "je 0xbf"]]}, {"both": [["0x10082861", "xor eax, eax", "0x1003ebe7"]]}, {"orig": [["0x10082863", "mov edx, dword ptr [esp + 0x1c]"], ["0x10082867", "mov edx, dword ptr [edx]"], ["0x10082869", "cmp dword ptr [edx + 0x54], 0"], ["0x1008286d", "je 0x21"]], "recomp": [["0x1003ebe9", "cmp dword ptr [ecx + 0x54], 0"], ["0x1003ebed", "je 0x23"]]}, {"both": [["0x1008286f", "xor ebx, ebx", "0x1003ebef"], ["0x10082871", "xor edx, edx", "0x1003ebf1"]]}, {"orig": [["0x10082873", "mov bl, cl"]], "recomp": [["0x1003ebf3", "mov bl, byte ptr [esp + 0x11]"]]}, {"both": [["0x10082875", "mov dl, byte ptr [esp + ebx + 0x13]", "0x1003ebf7"], ["0x10082879", "mov bl, dl", "0x1003ebfb"], ["0x1008287b", "mov bh, bl", "0x1003ebfd"], ["0x1008287d", "mov bl, dl", "0x1003ebff"], ["0x1008287f", "xor edx, edx", "0x1003ec01"]]}, {"orig": [["0x10082881", "mov ebp, ebx"], ["0x10082883", "shl ebp, 0x10"], ["0x10082886", "mov bp, bx"], ["0x10082889", "mov dword ptr [edx], ebp"], ["0x1008288b", "jmp 0x80"], ["0x10082890", "mov ebx, dword ptr [edx + 0x50]"], ["0x10082893", "mov ebp, dword ptr [ebx + 0xc]"], ["0x10082896", "mov edx, dword ptr [ebp + 0x10]"]], "recomp": [["0x1003ec03", "mov edi, ebx"], ["0x1003ec05", "shl edi, 0x10"], ["0x1003ec08", "mov di, bx"], ["0x1003ec0b", "mov dword ptr [edx], edi"], ["0x1003ec0d", "jmp 0x8a"], ["0x1003ec12", "mov edx, dword ptr [ecx + 0x50]"], ["0x1003ec15", "mov edi, dword ptr [edx + 0xc]"], ["0x1003ec18", "mov edx, dword ptr [edi + 0x10]"]]}, {"both": [["0x10082899", "test edx, edx", "0x1003ec1b"]]}, {"orig": [["0x1008289b", "jne 0x2f"]], "recomp": [["0x1003ec1d", "jne 0x32"]]}, {"both": [["0x1008289d", "cmp edx, 0x10", "0x1003ec1f"]]}, {"orig": [["0x100828a0", "je 0x7"], ["0x100828a2", "mov edx, dword ptr [ebp + 8]"]], "recomp": [["0x1003ec22", "je 0x12"], ["0x1003ec24", "mov edx, dword ptr [edi + 8]"]]}, {"both": [["0x100828a5", "test edx, edx", "0x1003ec27"]]}, {"orig": [["0x100828a7", "jge 0x5"], ["0x100828a9", "lea edx, [edi + eax]"], ["0x100828ac", "jmp 0x9"]], "recomp": [["0x1003ec29", "jl 0xb"]]}, {"both": [["0x100828ae", "jg 0x2", "0x1003ec2b"], ["0x100828b0", "neg edx", "0x1003ec2d"]]}, {"orig": [], "recomp": [["0x1003ec2f", "sub edx, esi"]]}, {"both": [["0x100828b2", "sub edx, eax", "0x1003ec31"]]}, {"orig": [["0x100828b4", "sub edx, edi"]], "recomp": []}, {"both": [["0x100828b6", "dec edx", "0x1003ec33"]]}, {"orig": [["0x100828b7", "mov ebp, dword ptr [ebp + 4]"], ["0x100828ba", "add ebp, 3"], ["0x100828bd", "and ebp, 0xfffffffc"], ["0x100828c0", "imul ebp, edx"], ["0x100828c3", "add ebp, dword ptr [ebx + 0x14]"], ["0x100828c6", "add ebp, dword ptr [esp + 0x38]"], ["0x100828ca", "jmp 0x29"]], "recomp": [["0x1003ec34", "jmp 0x3"], ["0x1003ec36", "lea edx, [esi + eax]"], ["0x1003ec39", "mov edi, dword ptr [edi + 4]"], ["0x1003ec3c", "add edi, 3"], ["0x1003ec3f", "and edi, 0xfffffffc"], ["0x1003ec42", "imul edi, edx"], ["0x1003ec45", "mov edx, dword ptr [ecx + 0x50]"], ["0x1003ec48", "add edi, dword ptr [edx + 0x14]"], ["0x1003ec4b", "add edi, dword ptr [esp + 0x38]"], ["0x1003ec4f", "jmp 0x2f"]]}, {"both": [["0x100828cc", "cmp edx, 0x10", "0x1003ec51"]]}, {"orig": [["0x100828cf", "jne 0x5"], ["0x100828d1", "mov ebp, dword ptr [ebx + 0x14]"], ["0x100828d4", "jmp 0x1f"], ["0x100828d6", "mov edx, dword ptr [ebp + 8]"]], "recomp": [["0x1003ec54", "jne 0x8"], ["0x1003ec56", "mov edx, dword ptr [ecx + 0x50]"], ["0x1003ec59", "mov edi, dword ptr [edx + 0x14]"], ["0x1003ec5c", "jmp 0x22"], ["0x1003ec5e", "mov edx, dword ptr [edi + 8]"]]}, {"both": [["0x100828d9", "test edx, edx", "0x1003ec61"]]}, {"orig": [["0x100828db", "jge 0x4"], ["0x100828dd", "xor edx, edx"], ["0x100828df", "jmp 0x5"]], "recomp": [["0x1003ec63", "jl 0x7"]]}, {"both": [["0x100828e1", "jg 0x2", "0x1003ec65"], ["0x100828e3", "neg edx", "0x1003ec67"], ["0x100828e5", "dec edx", "0x1003ec69"]]}, {"orig": [["0x100828e6", "mov ebp, dword ptr [ebp + 4]"], ["0x100828e9", "add ebp, 3"], ["0x100828ec", "and ebp, 0xfffffffc"], ["0x100828ef", "imul ebp, edx"], ["0x100828f2", "add ebp, dword ptr [ebx + 0x14]"]], "recomp": [["0x1003ec6a", "jmp 0x2"], ["0x1003ec6c", "xor edx, edx"], ["0x1003ec6e", "mov edi, dword ptr [edi + 4]"], ["0x1003ec71", "add edi, 3"], ["0x1003ec74", "and edi, 0xfffffffc"], ["0x1003ec77", "imul edi, edx"], ["0x1003ec7a", "mov edx, dword ptr [ecx + 0x50]"], ["0x1003ec7d", "add edi, dword ptr [edx + 0x14]"]]}, {"both": [["0x100828f5", "xor edx, edx", "0x1003ec80"], ["0x100828f7", "xor ebx, ebx", "0x1003ec82"]]}, {"orig": [["0x100828f9", "mov dl, cl"]], "recomp": [["0x1003ec84", "mov dl, byte ptr [esp + 0x11]"]]}, {"both": [["0x100828fb", "mov bl, byte ptr [esp + edx + 0x13]", "0x1003ec88"], ["0x100828ff", "mov dl, bl", "0x1003ec8c"], ["0x10082901", "mov dh, dl", "0x1003ec8e"], ["0x10082903", "mov dl, bl", "0x1003ec90"], ["0x10082905", "mov ebx, edx", "0x1003ec92"], ["0x10082907", "shl ebx, 0x10", "0x1003ec94"], ["0x1008290a", "mov bx, dx", "0x1003ec97"]]}, {"orig": [["0x1008290d", "mov dword ptr [ebp], ebx"]], "recomp": [["0x1003ec9a", "mov dword ptr [edi], ebx"]]}, {"both": [["0x10082910", "inc eax", "0x1003ec9c"], ["0x10082911", "cmp eax, 4", "0x1003ec9d"]]}, {"orig": [["0x10082914", "jl -0xb7"], ["0x1008291a", "inc esi"], ["0x1008291b", "add edi, 5"], ["0x1008291e", "cmp esi, 5"], ["0x10082921", "jl -0xd6"]], "recomp": [["0x1003eca0", "jl -0xbd"], ["0x1003eca6", "inc ebp"], ["0x1003eca7", "add esi, 5"], ["0x1003ecaa", "cmp ebp, 5"], ["0x1003ecad", "jl -0xe6"]]}, {"both": [["0x10082927", "add dword ptr [esp + 0x34], 5", "0x1003ecb3"], ["0x1008292c", "add dword ptr [esp + 0x38], 5", "0x1003ecb8"], ["0x10082931", "dec dword ptr [esp + 0x3c]", "0x1003ecbd"]]}, {"orig": [["0x10082935", "jne -0xf1"], ["0x1008293b", "mov edx, dword ptr [esp + 0x1c]"]], "recomp": [["0x1003ecc1", "jne -0x101"], ["0x1003ecc7", "mov ecx, dword ptr [esp + 0x1c]"]]}, {"both": [["0x1008293f", "push 1", "0x1003eccb"]]}, {"orig": [["0x10082941", "mov ecx, dword ptr [edx]"]], "recomp": [["0x1003eccd", "mov ecx, dword ptr [ecx]"]]}, {"both": [["0x10082943", "mov eax, dword ptr [ecx]", "0x1003eccf"], ["0x10082945", "call dword ptr [eax + 0x54]", "0x1003ecd1"]]}, {"orig": [["0x10082948", "mov edx, dword ptr [esp + 0x1c]"]], "recomp": [["0x1003ecd4", "mov ecx, dword ptr [esp + 0x1c]"]]}, {"both": [["0x1008294c", "push 4", "0x1003ecd8"]]}, {"orig": [["0x1008294e", "mov ecx, dword ptr [edx]"]], "recomp": [["0x1003ecda", "mov ecx, dword ptr [ecx]"]]}, {"both": [["0x10082950", "mov eax, dword ptr [ecx]", "0x1003ecdc"], ["0x10082952", "call dword ptr [eax + 0x44]", "0x1003ecde"]]}, {"orig": [["0x10082955", "mov edx, dword ptr [esp + 0x1c]"]], "recomp": [["0x1003ece1", "mov ecx, dword ptr [esp + 0x1c]"]]}, {"both": [["0x10082959", "mov eax, dword ptr [esp + 0x24]", "0x1003ece5"], ["0x1008295d", "push eax", "0x1003ece9"]]}, {"orig": [["0x1008295e", "mov ecx, dword ptr [edx]"]], "recomp": [["0x1003ecea", "mov ecx, dword ptr [ecx]"]]}, {"both": [["0x10082960", "xor si, si", "0x1003ecec"], ["0x10082963", "mov eax, dword ptr [esp + 0x24]", "0x1003ecef"], ["0x10082967", "add eax, 0xa1", "0x1003ecf3"], ["0x1008296c", "mov ebx, dword ptr [ecx]", "0x1003ecf8"], ["0x1008296e", "push eax", "0x1003ecfa"], ["0x1008296f", "call dword ptr [ebx + 0x88]", "0x1003ecfb"], ["0x10082975", "mov eax, dword ptr [esp + 0x28]", "0x1003ed01"], ["0x10082979", "movsx ecx, si", "0x1003ed05"], ["0x1008297c", "mov bx, word ptr [eax + ecx*2 + 0x1c]", "0x1003ed08"], ["0x10082981", "cmp bx, -1", "0x1003ed0d"]]}]], ["@@ -0x100829cd,29 +0x1003ed59,20 @@", [{"both": [["0x100829cd", "mov edx, dword ptr [esp + 0x20]", "0x1003ed59"], ["0x100829d1", "push eax", "0x1003ed5d"], ["0x100829d2", "push edx", "0x1003ed5e"], ["0x100829d3", "mov ebx, dword ptr [ecx]", "0x1003ed5f"], ["0x100829d5", "call dword ptr [ebx + 0x88]", "0x1003ed61"], ["0x100829db", "add dword ptr [esp + 0x20], 0x17", "0x1003ed67"], ["0x100829e0", "cmp si, 7", "0x1003ed6c"], ["0x100829e4", "jl -0x71", "0x1003ed70"], ["0x100829e6", "add dword ptr [esp + 0x24], 0x1b", "0x1003ed72"], ["0x100829eb", "inc word ptr [esp + 0x12]", "0x1003ed77"]]}, {"orig": [["0x100829f0", "jmp -0x25b"]], "recomp": [["0x1003ed7c", "jmp -0x26d"]]}, {"both": [["0x100829f5", "push 0xb", "0x1003ed81"], ["0x100829f7", "call PlayMusic (FUNCTION)", "0x1003ed83"], ["0x100829fc", "add esp, 4", "0x1003ed88"], ["0x100829ff", "pop ebp", "0x1003ed8b"], ["0x10082a00", "pop edi", "0x1003ed8c"], ["0x10082a01", "pop esi", "0x1003ed8d"], ["0x10082a02", "pop ebx", "0x1003ed8e"], ["0x10082a03", "add esp, 0x3c", "0x1003ed8f"], ["0x10082a06", "ret ", "0x1003ed92"]]}, {"orig": [["0x10082a07", "int3 "], ["0x10082a08", "int3 "], ["0x10082a09", "int3 "], ["0x10082a0a", "int3 "], ["0x10082a0b", "int3 "], ["0x10082a0c", "int3 "], ["0x10082a0d", "int3 "], ["0x10082a0e", "int3 "], ["0x10082a0f", "int3 "]], "recomp": []}]]]}, {"address": "0x10082a10", "recomp": "0x1003eda0", "name": "HistoryBook::VTable0x64", "matching": 1.0, "diff": []}, {"address": "0x10082a20", "recomp": "0x1000f7b0", "name": "LegoCharacterManager::LegoCharacterManager", "matching": 0.9805825242718447, "diff": [["@@ -0x10082ad0,21 +0x1000f860,21 @@", [{"both": [["0x10082ad0", "mov dword ptr [eax], eax", "0x1000f860"], ["0x10082ad2", "mov eax, dword ptr [ecx + 4]", "0x1000f862"], ["0x10082ad5", "mov dword ptr [eax + 8], eax", "0x1000f865"], ["0x10082ad8", "mov eax, ecx", "0x1000f868"], ["0x10082ada", "jmp 0x1a", "0x1000f86a"], ["0x10082adc", "lea ecx, [ebp - 0xe]", "0x1000f86c"], ["0x10082adf", "jmp _Lockit::~_Lockit (FUNCTION)", "0x1000f86f"], ["0x10082ae4", "mov ecx, dword ptr [ebp - 0x14]", "0x1000f874"], ["0x10082ae7", "jmp _Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::~_Tree<char const *,pair<char const * const,LegoC (FUNCTION)", "0x1000f877"], ["0x10082aec", "mov ecx, dword ptr [ebp - 0x14]", "0x1000f87c"]]}, {"orig": [["0x10082aef", "jmp 0x63c"]], "recomp": [["0x1000f87f", "jmp map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::~map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> > (FUNCTION)"]]}, {"both": [["0x10082af4", "xor eax, eax", "0x1000f884"], ["0x10082af6", "mov ecx, dword ptr [ebp - 0x18]", "0x1000f886"], ["0x10082af9", "mov dword ptr [ebp - 4], 0xffffffff", "0x1000f889"], ["0x10082b00", "mov dword ptr [ecx], eax", "0x1000f890"], ["0x10082b02", "call LegoCharacterManager::Init (FUNCTION)", "0x1000f892"], ["0x10082b07", "push 0x24", "0x1000f897"], ["0x10082b09", "call ??2@YAPAXI@Z (FUNCTION)", "0x1000f899"], ["0x10082b0e", "mov dword ptr [ebp - 0x1c], eax", "0x1000f89e"], ["0x10082b11", "add esp, 4", "0x1000f8a1"], ["0x10082b14", "mov dword ptr [ebp - 4], 4", "0x1000f8a4"]]}]], ["@@ -0x10082b52,17 +0x1000f8e2,17 @@", [{"both": [["0x10082b52", "mov dword ptr fs:[0], ecx", "0x1000f8e2"], ["0x10082b59", "pop esi", "0x1000f8e9"], ["0x10082b5a", "mov esp, ebp", "0x1000f8ea"], ["0x10082b5c", "pop ebp", "0x1000f8ec"], ["0x10082b5d", "ret ", "0x1000f8ed"], ["0x10082b5e", "mov eax, dword ptr [ebp - 0x1c]", "0x1000f8ee"], ["0x10082b61", "push eax", "0x1000f8f1"], ["0x10082b62", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000f8f2"], ["0x10082b67", "add esp, 4", "0x1000f8f7"], ["0x10082b6a", "ret ", "0x1000f8fa"]]}, {"orig": [["0x10082b6b", "mov eax, <OFFSET13>"]], "recomp": [["0x1000f8fb", "mov eax, <OFFSET14>"]]}, {"both": [["0x10082b70", "jmp ___CxxFrameHandler (FUNCTION)", "0x1000f900"], ["0x10082b75", "mov eax, dword ptr [ebp - 0x14]", "0x1000f905"], ["0x10082b78", "push eax", "0x1000f908"], ["0x10082b79", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000f909"], ["0x10082b7e", "add esp, 4", "0x1000f90e"], ["0x10082b81", "ret ", "0x1000f911"]]}]]]}, {"address": "0x10082b90", "recomp": "0x1000f920", "name": "_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::~_Tree<char const *,pair<char const * const,LegoC", "matching": 0.9090909090909091, "diff": [["@@ -0x10082b90,54 +0x1000f920,54 @@", [{"both": [["0x10082b90", "sub esp, 0x10", "0x1000f920"], ["0x10082b93", "push ebx", "0x1000f923"], ["0x10082b94", "push esi", "0x1000f924"], ["0x10082b95", "push edi", "0x1000f925"], ["0x10082b96", "mov esi, ecx", "0x1000f926"], ["0x10082b98", "cmp dword ptr [ecx + 0xc], 0", "0x1000f928"], ["0x10082b9c", "mov ecx, dword ptr [esi + 4]", "0x1000f92c"]]}, {"orig": [["0x10082b9f", "mov dword ptr [esp + 0x10], ecx"]], "recomp": [["0x1000f92f", "mov dword ptr [esp + 0x14], ecx"]]}, {"both": [["0x10082ba3", "mov eax, dword ptr [ecx]", "0x1000f933"], ["0x10082ba5", "mov dword ptr [esp + 0xc], eax", "0x1000f935"]]}, {"orig": [["0x10082ba9", "mov dword ptr [esp + 0x14], eax"]], "recomp": [["0x1000f939", "mov dword ptr [esp + 0x10], eax"]]}, {"both": [["0x10082bad", "je 0x4e", "0x1000f93d"], ["0x10082baf", "cmp dword ptr [ecx], eax", "0x1000f93f"], ["0x10082bb1", "jne 0x4a", "0x1000f941"], ["0x10082bb3", "cmp ecx, ecx", "0x1000f943"], ["0x10082bb5", "jne 0x46", "0x1000f945"], ["0x10082bb7", "mov edi, dword ptr [ecx + 4]", "0x1000f947"], ["0x10082bba", "mov ebx, edi", "0x1000f94a"]]}, {"orig": [["0x10082bbc", "cmp ebx, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000f94c", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], ebx"]]}, {"both": [["0x10082bc2", "je 0x1a", "0x1000f952"], ["0x10082bc4", "mov eax, dword ptr [ebx + 8]", "0x1000f954"], ["0x10082bc7", "mov ecx, esi", "0x1000f957"], ["0x10082bc9", "push eax", "0x1000f959"], ["0x10082bca", "call _Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Erase (FUNCTION)", "0x1000f95a"], ["0x10082bcf", "mov ebx, dword ptr [ebx]", "0x1000f95f"], ["0x10082bd1", "push edi", "0x1000f961"], ["0x10082bd2", "mov edi, ebx", "0x1000f962"], ["0x10082bd4", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000f964"], ["0x10082bd9", "add esp, 4", "0x1000f969"], ["0x10082bdc", "jmp -0x22", "0x1000f96c"], ["0x10082bde", "mov eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]", "0x1000f96e"], ["0x10082be3", "mov ecx, dword ptr [esi + 4]", "0x1000f973"], ["0x10082be6", "mov dword ptr [ecx + 4], eax", "0x1000f976"], ["0x10082be9", "mov eax, dword ptr [esi + 4]", "0x1000f979"], ["0x10082bec", "mov dword ptr [esi + 0xc], 0", "0x1000f97c"], ["0x10082bf3", "mov dword ptr [eax], eax", "0x1000f983"], ["0x10082bf5", "mov eax, dword ptr [esi + 4]", "0x1000f985"], ["0x10082bf8", "mov dword ptr [eax + 8], eax", "0x1000f988"], ["0x10082bfb", "jmp 0x36", "0x1000f98b"]]}, {"orig": [["0x10082bfd", "mov eax, dword ptr [esp + 0x10]"]], "recomp": [["0x1000f98d", "mov eax, dword ptr [esp + 0x14]"]]}, {"both": [["0x10082c01", "cmp dword ptr [esp + 0xc], eax", "0x1000f991"], ["0x10082c05", "je 0x2c", "0x1000f995"]]}, {"orig": [["0x10082c07", "mov eax, dword ptr [esp + 0x14]"], ["0x10082c0b", "lea ecx, [esp + 0x14]"]], "recomp": [["0x1000f997", "mov eax, dword ptr [esp + 0x10]"], ["0x1000f99b", "lea ecx, [esp + 0x10]"]]}, {"both": [["0x10082c0f", "mov dword ptr [esp + 0x18], eax", "0x1000f99f"], ["0x10082c13", "call _Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::iterator::_Inc (FUNCTION)", "0x1000f9a3"], ["0x10082c18", "mov eax, dword ptr [esp + 0x18]", "0x1000f9a8"], ["0x10082c1c", "lea ecx, [esp + 0xc]", "0x1000f9ac"], ["0x10082c20", "push eax", "0x1000f9b0"], ["0x10082c21", "push ecx", "0x1000f9b1"], ["0x10082c22", "mov ecx, esi", "0x1000f9b2"], ["0x10082c24", "call _Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::erase (FUNCTION)", "0x1000f9b4"], ["0x10082c29", "mov ecx, dword ptr [esp + 0x10]", "0x1000f9b9"], ["0x10082c2d", "cmp dword ptr [esp + 0x14], ecx", "0x1000f9bd"]]}]]]}, {"address": "0x10082c60", "recomp": "0x1000f9f0", "name": "_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::iterator::_Inc", "matching": 0.9166666666666666, "diff": [["@@ -0x10082c60,16 +0x1000f9f0,16 @@", [{"both": [["0x10082c60", "mov eax, dword ptr [ecx]", "0x1000f9f0"], ["0x10082c62", "mov edx, dword ptr [eax + 8]", "0x1000f9f2"]]}, {"orig": [["0x10082c65", "cmp edx, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000f9f5", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], edx"]]}, {"both": [["0x10082c6b", "je 0x11", "0x1000f9fb"], ["0x10082c6d", "mov eax, dword ptr [edx]", "0x1000f9fd"]]}, {"orig": [["0x10082c6f", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000f9ff", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10082c75", "je 0x4", "0x1000fa05"], ["0x10082c77", "mov edx, eax", "0x1000fa07"], ["0x10082c79", "jmp -0xe", "0x1000fa09"], ["0x10082c7b", "mov dword ptr [ecx], edx", "0x1000fa0b"], ["0x10082c7d", "ret ", "0x1000fa0d"], ["0x10082c7e", "mov edx, dword ptr [eax + 4]", "0x1000fa0e"], ["0x10082c81", "cmp dword ptr [edx + 8], eax", "0x1000fa11"], ["0x10082c84", "jne 0xc", "0x1000fa14"], ["0x10082c86", "mov dword ptr [ecx], edx", "0x1000fa16"], ["0x10082c88", "mov eax, edx", "0x1000fa18"]]}]]]}, {"address": "0x10082ca0", "recomp": "0x1000fa30", "name": "_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::erase", "matching": 0.739247311827957, "diff": [["@@ -0x10082ca0,61 +0x1000fa30,63 @@", [{"both": [["0x10082ca0", "mov eax, dword ptr [esp + 8]", "0x1000fa30"], ["0x10082ca4", "sub esp, 4", "0x1000fa34"], ["0x10082ca7", "mov dword ptr [esp], eax", "0x1000fa37"], ["0x10082cab", "push ebx", "0x1000fa3b"], ["0x10082cac", "push esi", "0x1000fa3c"]]}, {"orig": [], "recomp": [["0x1000fa3d", "mov eax, dword ptr [eax + 8]"]]}, {"both": [["0x10082cad", "push edi", "0x1000fa40"]]}, {"orig": [], "recomp": [["0x1000fa41", "mov esi, ecx"]]}, {"both": [["0x10082cae", "push ebp", "0x1000fa43"]]}, {"orig": [["0x10082caf", "mov esi, ecx"], ["0x10082cb1", "mov ecx, dword ptr [eax + 8]"], ["0x10082cb4", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"], ["0x10082cba", "je 0xe"], ["0x10082cbc", "mov eax, dword ptr [ecx]"], ["0x10082cbe", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"], ["0x10082cc4", "je 0x29"], ["0x10082cc6", "mov ecx, eax"]], "recomp": [["0x1000fa44", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"], ["0x1000fa4a", "je 0x14"], ["0x1000fa4c", "mov ecx, dword ptr [eax]"], ["0x1000fa4e", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], ecx"], ["0x1000fa54", "je 0x4"], ["0x1000fa56", "mov eax, ecx"]]}, {"both": [["0x10082cc8", "jmp -0xe", "0x1000fa58"]]}, {"orig": [], "recomp": [["0x1000fa5a", "mov dword ptr [esp + 0x1c], eax"], ["0x1000fa5e", "jmp 0x29"]]}, {"both": [["0x10082cca", "mov eax, dword ptr [esp + 0x1c]", "0x1000fa60"], ["0x10082cce", "mov ecx, dword ptr [eax + 4]", "0x1000fa64"], ["0x10082cd1", "cmp dword ptr [ecx + 8], eax", "0x1000fa67"], ["0x10082cd4", "jne 0x10", "0x1000fa6a"], ["0x10082cd6", "mov dword ptr [esp + 0x1c], ecx", "0x1000fa6c"], ["0x10082cda", "mov ecx, dword ptr [ecx + 4]", "0x1000fa70"], ["0x10082cdd", "mov eax, dword ptr [esp + 0x1c]", "0x1000fa73"], ["0x10082ce1", "cmp dword ptr [ecx + 8], eax", "0x1000fa77"], ["0x10082ce4", "je -0x10", "0x1000fa7a"], ["0x10082ce6", "mov eax, dword ptr [esp + 0x1c]", "0x1000fa7c"], ["0x10082cea", "cmp dword ptr [eax + 8], ecx", "0x1000fa80"], ["0x10082ced", "je 0x4", "0x1000fa83"], ["0x10082cef", "mov dword ptr [esp + 0x1c], ecx", "0x1000fa85"], ["0x10082cf3", "mov ecx, dword ptr [esp + 0x10]", "0x1000fa89"], ["0x10082cf7", "mov ebx, dword ptr [ecx]", "0x1000fa8d"]]}, {"orig": [["0x10082cf9", "cmp ebx, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000fa8f", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], ebx"]]}, {"both": [["0x10082cff", "je 0x26", "0x1000fa95"], ["0x10082d01", "lea edi, [ecx + 8]", "0x1000fa97"], ["0x10082d04", "mov edx, dword ptr [edi]", "0x1000fa9a"]]}, {"orig": [["0x10082d06", "cmp edx, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000fa9c", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], edx"]]}, {"both": [["0x10082d0c", "je 0x15", "0x1000faa2"], ["0x10082d0e", "mov eax, dword ptr [edx]", "0x1000faa4"]]}, {"orig": [["0x10082d10", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000faa6", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10082d16", "je 0x4", "0x1000faac"], ["0x10082d18", "mov edx, eax", "0x1000faae"], ["0x10082d1a", "jmp -0xe", "0x1000fab0"], ["0x10082d1c", "mov ecx, edx", "0x1000fab2"], ["0x10082d1e", "mov edx, dword ptr [edx + 8]", "0x1000fab4"], ["0x10082d21", "jmp 0xe", "0x1000fab7"], ["0x10082d23", "mov edx, ebx", "0x1000fab9"], ["0x10082d25", "jmp 0xa", "0x1000fabb"], ["0x10082d27", "mov edi, dword ptr [esp + 0x10]", "0x1000fabd"], ["0x10082d2b", "mov edx, dword ptr [edi + 8]", "0x1000fac1"], ["0x10082d2e", "add edi, 8", "0x1000fac4"]]}, {"orig": [["0x10082d31", "cmp dword ptr [esp + 0x10], ecx"]], "recomp": [["0x1000fac7", "cmp ecx, dword ptr [esp + 0x10]"]]}, {"both": [["0x10082d35", "jne 0x8f", "0x1000facb"], ["0x10082d3b", "mov eax, dword ptr [ecx + 4]", "0x1000fad1"], ["0x10082d3e", "mov ebx, dword ptr [esp + 0x10]", "0x1000fad4"], ["0x10082d42", "mov dword ptr [edx + 4], eax", "0x1000fad8"], ["0x10082d45", "mov eax, dword ptr [esi + 4]", "0x1000fadb"], ["0x10082d48", "add eax, 4", "0x1000fade"], ["0x10082d4b", "cmp dword ptr [eax], ebx", "0x1000fae1"], ["0x10082d4d", "je 0xc", "0x1000fae3"], ["0x10082d4f", "mov eax, dword ptr [ebx + 4]", "0x1000fae5"], ["0x10082d52", "cmp dword ptr [eax], ebx", "0x1000fae8"]]}]], ["@@ -0x10082d56,42 +0x1000faec,42 @@", [{"both": [["0x10082d56", "mov dword ptr [eax + 8], edx", "0x1000faec"], ["0x10082d59", "jmp 0x2", "0x1000faef"], ["0x10082d5b", "mov dword ptr [eax], edx", "0x1000faf1"], ["0x10082d5d", "mov ebx, dword ptr [esi + 4]", "0x1000faf3"], ["0x10082d60", "mov eax, dword ptr [esp + 0x10]", "0x1000faf6"], ["0x10082d64", "cmp dword ptr [ebx], eax", "0x1000fafa"], ["0x10082d66", "jne 0x26", "0x1000fafc"], ["0x10082d68", "mov eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]", "0x1000fafe"], ["0x10082d6d", "cmp dword ptr [edi], eax", "0x1000fb03"], ["0x10082d6f", "je 0x14", "0x1000fb05"]]}, {"orig": [["0x10082d71", "mov edi, edx"], ["0x10082d73", "mov eax, dword ptr [edi]"], ["0x10082d75", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"], ["0x10082d7b", "je 0x4"], ["0x10082d7d", "mov edi, eax"]], "recomp": [["0x1000fb07", "mov eax, edx"], ["0x1000fb09", "mov edi, dword ptr [eax]"], ["0x1000fb0b", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], edi"], ["0x1000fb11", "je 0x4"], ["0x1000fb13", "mov eax, edi"]]}, {"both": [["0x10082d7f", "jmp -0xe", "0x1000fb15"]]}, {"orig": [["0x10082d81", "mov dword ptr [ebx], edi"]], "recomp": [["0x1000fb17", "mov dword ptr [ebx], eax"]]}, {"both": [["0x10082d83", "jmp 0x9", "0x1000fb19"], ["0x10082d85", "mov eax, dword ptr [esp + 0x10]", "0x1000fb1b"], ["0x10082d89", "mov ebp, dword ptr [eax + 4]", "0x1000fb1f"], ["0x10082d8c", "mov dword ptr [ebx], ebp", "0x1000fb22"], ["0x10082d8e", "mov edi, dword ptr [esi + 4]", "0x1000fb24"], ["0x10082d91", "mov eax, dword ptr [esp + 0x10]", "0x1000fb27"], ["0x10082d95", "add edi, 8", "0x1000fb2b"], ["0x10082d98", "cmp dword ptr [edi], eax", "0x1000fb2e"], ["0x10082d9a", "jne 0x8a", "0x1000fb30"], ["0x10082da0", "mov ebx, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]", "0x1000fb36"], ["0x10082da6", "cmp dword ptr [eax], ebx", "0x1000fb3c"], ["0x10082da8", "je 0x15", "0x1000fb3e"], ["0x10082daa", "mov ebx, edx", "0x1000fb40"], ["0x10082dac", "mov eax, dword ptr [ebx + 8]", "0x1000fb42"]]}, {"orig": [["0x10082daf", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000fb45", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10082db5", "je 0x4", "0x1000fb4b"], ["0x10082db7", "mov ebx, eax", "0x1000fb4d"], ["0x10082db9", "jmp -0xf", "0x1000fb4f"], ["0x10082dbb", "mov dword ptr [edi], ebx", "0x1000fb51"], ["0x10082dbd", "jmp 0x6b", "0x1000fb53"], ["0x10082dbf", "mov eax, dword ptr [esp + 0x10]", "0x1000fb55"], ["0x10082dc3", "mov ebx, dword ptr [eax + 4]", "0x1000fb59"], ["0x10082dc6", "mov dword ptr [edi], ebx", "0x1000fb5c"], ["0x10082dc8", "jmp 0x60", "0x1000fb5e"], ["0x10082dca", "mov eax, dword ptr [esp + 0x10]", "0x1000fb60"]]}]], ["@@ -0x10082e0f,153 +0x1000fba5,153 @@", [{"both": [["0x10082e0f", "mov eax, dword ptr [esp + 0x10]", "0x1000fba5"], ["0x10082e13", "mov ebx, dword ptr [eax + 4]", "0x1000fba9"], ["0x10082e16", "add eax, 0x14", "0x1000fbac"], ["0x10082e19", "mov dword ptr [ecx + 4], ebx", "0x1000fbaf"], ["0x10082e1c", "mov edi, dword ptr [ecx + 0x14]", "0x1000fbb2"], ["0x10082e1f", "mov ebx, dword ptr [eax]", "0x1000fbb5"], ["0x10082e21", "mov dword ptr [ecx + 0x14], ebx", "0x1000fbb7"], ["0x10082e24", "mov ecx, dword ptr [esp + 0x10]", "0x1000fbba"], ["0x10082e28", "mov dword ptr [eax], edi", "0x1000fbbe"], ["0x10082e2a", "cmp dword ptr [ecx + 0x14], 1", "0x1000fbc0"]]}, {"orig": [["0x10082e2e", "jne 0x294"]], "recomp": [["0x1000fbc4", "jne 0x296"]]}, {"both": [["0x10082e34", "mov eax, dword ptr [esi + 4]", "0x1000fbca"], ["0x10082e37", "cmp dword ptr [eax + 4], edx", "0x1000fbcd"]]}, {"orig": [["0x10082e3a", "je 0x281"]], "recomp": [["0x1000fbd0", "je 0x283"]]}, {"both": [["0x10082e40", "cmp dword ptr [edx + 0x14], 1", "0x1000fbd6"]]}, {"orig": [["0x10082e44", "jne 0x277"]], "recomp": [["0x1000fbda", "jne 0x279"]]}, {"both": [["0x10082e4a", "lea ebx, [edx + 4]", "0x1000fbe0"], ["0x10082e4d", "mov eax, dword ptr [ebx]", "0x1000fbe3"], ["0x10082e4f", "mov edi, dword ptr [eax]", "0x1000fbe5"], ["0x10082e51", "cmp edx, edi", "0x1000fbe7"]]}, {"orig": [["0x10082e53", "jne 0x73"]], "recomp": [["0x1000fbe9", "jne 0x76"]]}, {"both": [["0x10082e55", "mov edi, dword ptr [eax + 8]", "0x1000fbeb"]]}, {"orig": [["0x10082e58", "cmp dword ptr [edi + 0x14], 0"], ["0x10082e5c", "jne 0x4f"], ["0x10082e5e", "mov dword ptr [edi + 0x14], 1"], ["0x10082e65", "mov eax, dword ptr [ebx]"], ["0x10082e67", "mov dword ptr [eax + 0x14], 0"], ["0x10082e6e", "mov ebp, dword ptr [ebx]"], ["0x10082e70", "mov eax, dword ptr [ebp + 8]"], ["0x10082e73", "mov edi, dword ptr [eax]"], ["0x10082e75", "mov dword ptr [ebp + 8], edi"], ["0x10082e78", "mov edi, dword ptr [eax]"], ["0x10082e7a", "cmp edi, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"], ["0x10082e80", "je 0x3"], ["0x10082e82", "mov dword ptr [edi + 4], ebp"], ["0x10082e85", "mov edi, dword ptr [ebp + 4]"], ["0x10082e88", "mov dword ptr [eax + 4], edi"], ["0x10082e8b", "mov edi, dword ptr [esi + 4]"], ["0x10082e8e", "add edi, 4"], ["0x10082e91", "cmp dword ptr [edi], ebp"], ["0x10082e93", "je 0xc"], ["0x10082e95", "mov edi, dword ptr [ebp + 4]"], ["0x10082e98", "cmp dword ptr [edi], ebp"], ["0x10082e9a", "je 0x5"], ["0x10082e9c", "mov dword ptr [edi + 8], eax"], ["0x10082e9f", "jmp 0x2"], ["0x10082ea1", "mov dword ptr [edi], eax"], ["0x10082ea3", "mov dword ptr [eax], ebp"], ["0x10082ea5", "mov dword ptr [ebp + 4], eax"], ["0x10082ea8", "mov eax, dword ptr [ebx]"], ["0x10082eaa", "mov edi, dword ptr [eax + 8]"], ["0x10082ead", "mov eax, dword ptr [edi]"], ["0x10082eaf", "cmp dword ptr [eax + 0x14], 1"], ["0x10082eb3", "jne 0x9a"], ["0x10082eb9", "mov eax, dword ptr [edi + 8]"], ["0x10082ebc", "cmp dword ptr [eax + 0x14], 1"], ["0x10082ec0", "jne 0x8d"], ["0x10082ec6", "jmp 0x71"]], "recomp": []}, {"both": [["0x10082ec8", "cmp dword ptr [edi + 0x14], 0", "0x1000fbee"], ["0x10082ecc", "jne 0x52", "0x1000fbf2"], ["0x10082ece", "mov dword ptr [edi + 0x14], 1", "0x1000fbf4"], ["0x10082ed5", "mov eax, dword ptr [ebx]", "0x1000fbfb"], ["0x10082ed7", "mov dword ptr [eax + 0x14], 0", "0x1000fbfd"]]}, {"orig": [["0x10082ede", "mov ebp, dword ptr [ebx]"]], "recomp": [["0x1000fc04", "mov eax, dword ptr [ebx]"], ["0x1000fc06", "mov ebp, dword ptr [eax + 8]"]]}, {"both": [["0x10082ee0", "mov edi, dword ptr [ebp]", "0x1000fc09"]]}, {"orig": [], "recomp": [["0x1000fc0c", "mov dword ptr [eax + 8], edi"], ["0x1000fc0f", "mov edi, dword ptr [ebp]"], ["0x1000fc12", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], edi"], ["0x1000fc18", "je 0x3"], ["0x1000fc1a", "mov dword ptr [edi + 4], eax"], ["0x1000fc1d", "mov edi, dword ptr [eax + 4]"], ["0x1000fc20", "mov dword ptr [ebp + 4], edi"], ["0x1000fc23", "mov edi, dword ptr [esi + 4]"], ["0x1000fc26", "add edi, 4"], ["0x1000fc29", "cmp dword ptr [edi], eax"], ["0x1000fc2b", "je 0xc"], ["0x1000fc2d", "mov edi, dword ptr [eax + 4]"], ["0x1000fc30", "cmp dword ptr [edi], eax"], ["0x1000fc32", "je 0x5"], ["0x1000fc34", "mov dword ptr [edi + 8], ebp"], ["0x1000fc37", "jmp 0x2"], ["0x1000fc39", "mov dword ptr [edi], ebp"], ["0x1000fc3b", "mov dword ptr [ebp], eax"], ["0x1000fc3e", "mov dword ptr [eax + 4], ebp"], ["0x1000fc41", "mov eax, dword ptr [ebx]"], ["0x1000fc43", "mov edi, dword ptr [eax + 8]"], ["0x1000fc46", "mov eax, dword ptr [edi]"], ["0x1000fc48", "cmp dword ptr [eax + 0x14], 1"], ["0x1000fc4c", "jne 0x98"]]}, {"both": [["0x10082ee3", "mov eax, dword ptr [edi + 8]", "0x1000fc52"]]}, {"orig": [["0x10082ee6", "mov dword ptr [ebp], eax"], ["0x10082ee9", "mov eax, dword ptr [edi + 8]"], ["0x10082eec", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"], ["0x10082ef2", "je 0x3"]], "recomp": [["0x1000fc55", "cmp dword ptr [eax + 0x14], 1"], ["0x1000fc59", "jne 0x8b"], ["0x1000fc5f", "jmp 0x6f"], ["0x1000fc61", "cmp dword ptr [edi + 0x14], 0"], ["0x1000fc65", "jne 0x50"], ["0x1000fc67", "mov dword ptr [edi + 0x14], 1"], ["0x1000fc6e", "mov eax, dword ptr [ebx]"], ["0x1000fc70", "mov dword ptr [eax + 0x14], 0"], ["0x1000fc77", "mov eax, dword ptr [ebx]"], ["0x1000fc79", "mov ebp, dword ptr [eax]"], ["0x1000fc7b", "mov edi, dword ptr [ebp + 8]"], ["0x1000fc7e", "mov dword ptr [eax], edi"], ["0x1000fc80", "mov edi, dword ptr [ebp + 8]"], ["0x1000fc83", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], edi"], ["0x1000fc89", "je 0x3"], ["0x1000fc8b", "mov dword ptr [edi + 4], eax"], ["0x1000fc8e", "mov edi, dword ptr [eax + 4]"], ["0x1000fc91", "mov dword ptr [ebp + 4], edi"], ["0x1000fc94", "mov edi, dword ptr [esi + 4]"], ["0x1000fc97", "add edi, 4"], ["0x1000fc9a", "cmp dword ptr [edi], eax"], ["0x1000fc9c", "je 0xd"], ["0x1000fc9e", "mov edi, dword ptr [eax + 4]"], ["0x1000fca1", "add edi, 8"], ["0x1000fca4", "cmp dword ptr [edi], eax"], ["0x1000fca6", "je 0x3"], ["0x1000fca8", "mov edi, dword ptr [eax + 4]"], ["0x1000fcab", "mov dword ptr [edi], ebp"], ["0x1000fcad", "mov dword ptr [ebp + 8], eax"]]}, {"both": [["0x10082ef4", "mov dword ptr [eax + 4], ebp", "0x1000fcb0"]]}, {"orig": [["0x10082ef7", "mov eax, dword ptr [ebp + 4]"], ["0x10082efa", "mov dword ptr [edi + 4], eax"], ["0x10082efd", "mov eax, dword ptr [esi + 4]"], ["0x10082f00", "add eax, 4"], ["0x10082f03", "cmp dword ptr [eax], ebp"], ["0x10082f05", "je 0xd"], ["0x10082f07", "mov eax, dword ptr [ebp + 4]"], ["0x10082f0a", "add eax, 8"], ["0x10082f0d", "cmp dword ptr [eax], ebp"], ["0x10082f0f", "je 0x3"], ["0x10082f11", "mov eax, dword ptr [ebp + 4]"], ["0x10082f14", "mov dword ptr [eax], edi"], ["0x10082f16", "mov dword ptr [edi + 8], ebp"], ["0x10082f19", "mov dword ptr [ebp + 4], edi"]], "recomp": []}, {"both": [["0x10082f1c", "mov eax, dword ptr [ebx]", "0x1000fcb3"], ["0x10082f1e", "mov edi, dword ptr [eax]", "0x1000fcb5"], ["0x10082f20", "mov eax, dword ptr [edi + 8]", "0x1000fcb7"], ["0x10082f23", "cmp dword ptr [eax + 0x14], 1", "0x1000fcba"]]}, {"orig": [["0x10082f27", "jne 0xe6"]], "recomp": [["0x1000fcbe", "jne 0xe7"]]}, {"both": [["0x10082f2d", "mov eax, dword ptr [edi]", "0x1000fcc4"], ["0x10082f2f", "cmp dword ptr [eax + 0x14], 1", "0x1000fcc6"]]}, {"orig": [["0x10082f33", "jne 0xda"]], "recomp": [["0x1000fcca", "jne 0xdb"]]}, {"both": [["0x10082f39", "mov dword ptr [edi + 0x14], 0", "0x1000fcd0"], ["0x10082f40", "mov edx, dword ptr [ebx]", "0x1000fcd7"], ["0x10082f42", "mov eax, dword ptr [esi + 4]", "0x1000fcd9"], ["0x10082f45", "cmp dword ptr [eax + 4], edx", "0x1000fcdc"]]}, {"orig": [["0x10082f48", "jne -0x10e"], ["0x10082f4e", "jmp 0x16e"]], "recomp": [["0x1000fcdf", "jne -0x10f"], ["0x1000fce5", "jmp 0x16f"]]}, {"both": [["0x10082f53", "mov eax, dword ptr [edi + 8]", "0x1000fcea"], ["0x10082f56", "cmp dword ptr [eax + 0x14], 1", "0x1000fced"]]}, {"orig": [["0x10082f5a", "jne 0x52"]], "recomp": [["0x1000fcf1", "jne 0x53"]]}, {"both": [["0x10082f5c", "mov eax, dword ptr [edi]", "0x1000fcf3"], ["0x10082f5e", "mov dword ptr [eax + 0x14], 1", "0x1000fcf5"], ["0x10082f65", "mov dword ptr [edi + 0x14], 0", "0x1000fcfc"], ["0x10082f6c", "mov ebx, dword ptr [edi]", "0x1000fd03"], ["0x10082f6e", "mov ebp, dword ptr [ebx + 8]", "0x1000fd05"], ["0x10082f71", "mov dword ptr [edi], ebp", "0x1000fd08"], ["0x10082f73", "mov eax, dword ptr [ebx + 8]", "0x1000fd0a"]]}, {"orig": [["0x10082f76", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000fd0d", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10082f7c", "je 0x3", "0x1000fd13"], ["0x10082f7e", "mov dword ptr [eax + 4], edi", "0x1000fd15"], ["0x10082f81", "mov eax, dword ptr [edi + 4]", "0x1000fd18"], ["0x10082f84", "mov dword ptr [ebx + 4], eax", "0x1000fd1b"], ["0x10082f87", "mov eax, dword ptr [esi + 4]", "0x1000fd1e"], ["0x10082f8a", "add eax, 4", "0x1000fd21"], ["0x10082f8d", "cmp dword ptr [eax], edi", "0x1000fd24"]]}, {"orig": [["0x10082f8f", "je 0xf"], ["0x10082f91", "mov ebp, dword ptr [edi + 4]"], ["0x10082f94", "lea eax, [ebp + 8]"], ["0x10082f97", "cmp dword ptr [eax], edi"], ["0x10082f99", "je 0x5"]], "recomp": [["0x1000fd26", "je 0x10"], ["0x1000fd28", "mov eax, dword ptr [edi + 4]"], ["0x1000fd2b", "lea ebp, [eax + 8]"], ["0x1000fd2e", "cmp dword ptr [ebp], edi"], ["0x1000fd31", "jne 0x5"]]}, {"both": [["0x10082f9b", "mov dword ptr [ebp], ebx", "0x1000fd33"], ["0x10082f9e", "jmp 0x2", "0x1000fd36"], ["0x10082fa0", "mov dword ptr [eax], ebx", "0x1000fd38"], ["0x10082fa2", "mov dword ptr [ebx + 8], edi", "0x1000fd3a"], ["0x10082fa5", "mov dword ptr [edi + 4], ebx", "0x1000fd3d"], ["0x10082fa8", "mov eax, dword ptr [edx + 4]", "0x1000fd40"], ["0x10082fab", "mov edi, dword ptr [eax + 8]", "0x1000fd43"], ["0x10082fae", "mov eax, dword ptr [edx + 4]", "0x1000fd46"], ["0x10082fb1", "mov ebx, dword ptr [eax + 0x14]", "0x1000fd49"], ["0x10082fb4", "mov dword ptr [edi + 0x14], ebx", "0x1000fd4c"], ["0x10082fb7", "mov ebx, 1", "0x1000fd4f"], ["0x10082fbc", "mov eax, dword ptr [edx + 4]", "0x1000fd54"], ["0x10082fbf", "mov dword ptr [eax + 0x14], ebx", "0x1000fd57"], ["0x10082fc2", "mov ebp, dword ptr [edi + 8]", "0x1000fd5a"], ["0x10082fc5", "mov dword ptr [ebp + 0x14], ebx", "0x1000fd5d"], ["0x10082fc8", "mov edi, dword ptr [edx + 4]", "0x1000fd60"], ["0x10082fcb", "mov ebx, dword ptr [edi + 8]", "0x1000fd63"], ["0x10082fce", "mov eax, dword ptr [ebx]", "0x1000fd66"], ["0x10082fd0", "mov dword ptr [edi + 8], eax", "0x1000fd68"], ["0x10082fd3", "mov eax, dword ptr [ebx]", "0x1000fd6b"]]}, {"orig": [["0x10082fd5", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000fd6d", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10082fdb", "je 0x3", "0x1000fd73"], ["0x10082fdd", "mov dword ptr [eax + 4], edi", "0x1000fd75"], ["0x10082fe0", "mov eax, dword ptr [edi + 4]", "0x1000fd78"], ["0x10082fe3", "mov dword ptr [ebx + 4], eax", "0x1000fd7b"], ["0x10082fe6", "mov eax, dword ptr [esi + 4]", "0x1000fd7e"], ["0x10082fe9", "add eax, 4", "0x1000fd81"], ["0x10082fec", "cmp dword ptr [eax], edi", "0x1000fd84"], ["0x10082fee", "je 0x1a", "0x1000fd86"], ["0x10082ff0", "mov eax, dword ptr [edi + 4]", "0x1000fd88"], ["0x10082ff3", "cmp dword ptr [eax], edi", "0x1000fd8b"]]}]], ["@@ -0x10083013,21 +0x1000fdab,21 @@", [{"both": [["0x10083013", "mov eax, dword ptr [edi]", "0x1000fdab"], ["0x10083015", "cmp dword ptr [eax + 0x14], 1", "0x1000fdad"], ["0x10083019", "jne 0x4e", "0x1000fdb1"], ["0x1008301b", "mov eax, dword ptr [edi + 8]", "0x1000fdb3"], ["0x1008301e", "mov dword ptr [eax + 0x14], 1", "0x1000fdb6"], ["0x10083025", "mov dword ptr [edi + 0x14], 0", "0x1000fdbd"], ["0x1008302c", "mov ebx, dword ptr [edi + 8]", "0x1000fdc4"], ["0x1008302f", "mov ebp, dword ptr [ebx]", "0x1000fdc7"], ["0x10083031", "mov dword ptr [edi + 8], ebp", "0x1000fdc9"], ["0x10083034", "mov eax, dword ptr [ebx]", "0x1000fdcc"]]}, {"orig": [["0x10083036", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000fdce", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1008303c", "je 0x3", "0x1000fdd4"], ["0x1008303e", "mov dword ptr [eax + 4], edi", "0x1000fdd6"], ["0x10083041", "mov eax, dword ptr [edi + 4]", "0x1000fdd9"], ["0x10083044", "mov dword ptr [ebx + 4], eax", "0x1000fddc"], ["0x10083047", "mov eax, dword ptr [esi + 4]", "0x1000fddf"], ["0x1008304a", "add eax, 4", "0x1000fde2"], ["0x1008304d", "cmp dword ptr [eax], edi", "0x1000fde5"], ["0x1008304f", "je 0xc", "0x1000fde7"], ["0x10083051", "mov eax, dword ptr [edi + 4]", "0x1000fde9"], ["0x10083054", "cmp dword ptr [eax], edi", "0x1000fdec"]]}]], ["@@ -0x10083072,21 +0x1000fe0a,21 @@", [{"both": [["0x10083072", "mov ebx, 1", "0x1000fe0a"], ["0x10083077", "mov eax, dword ptr [edx + 4]", "0x1000fe0f"], ["0x1008307a", "mov dword ptr [eax + 0x14], ebx", "0x1000fe12"], ["0x1008307d", "mov ebp, dword ptr [edi]", "0x1000fe15"], ["0x1008307f", "mov dword ptr [ebp + 0x14], ebx", "0x1000fe17"], ["0x10083082", "mov edi, dword ptr [edx + 4]", "0x1000fe1a"], ["0x10083085", "mov ebx, dword ptr [edi]", "0x1000fe1d"], ["0x10083087", "mov eax, dword ptr [ebx + 8]", "0x1000fe1f"], ["0x1008308a", "mov dword ptr [edi], eax", "0x1000fe22"], ["0x1008308c", "mov eax, dword ptr [ebx + 8]", "0x1000fe24"]]}, {"orig": [["0x1008308f", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000fe27", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10083095", "je 0x3", "0x1000fe2d"], ["0x10083097", "mov dword ptr [eax + 4], edi", "0x1000fe2f"], ["0x1008309a", "mov eax, dword ptr [edi + 4]", "0x1000fe32"], ["0x1008309d", "mov dword ptr [ebx + 4], eax", "0x1000fe35"], ["0x100830a0", "mov eax, dword ptr [esi + 4]", "0x1000fe38"], ["0x100830a3", "add eax, 4", "0x1000fe3b"], ["0x100830a6", "cmp dword ptr [eax], edi", "0x1000fe3e"], ["0x100830a8", "je 0xf", "0x1000fe40"], ["0x100830aa", "mov ebp, dword ptr [edi + 4]", "0x1000fe42"], ["0x100830ad", "lea eax, [ebp + 8]", "0x1000fe45"]]}]], ["@@ -0x100830d2,18 +0x1000fe6a,10 @@", [{"both": [["0x100830d2", "mov eax, dword ptr [esp + 0x1c]", "0x1000fe6a"], ["0x100830d6", "add esp, 4", "0x1000fe6e"], ["0x100830d9", "dec dword ptr [esi + 0xc]", "0x1000fe71"], ["0x100830dc", "mov dword ptr [eax], ecx", "0x1000fe74"], ["0x100830de", "pop ebp", "0x1000fe76"], ["0x100830df", "pop edi", "0x1000fe77"], ["0x100830e0", "pop esi", "0x1000fe78"], ["0x100830e1", "pop ebx", "0x1000fe79"], ["0x100830e2", "add esp, 4", "0x1000fe7a"], ["0x100830e5", "ret 8", "0x1000fe7d"]]}, {"orig": [["0x100830e8", "int3 "], ["0x100830e9", "int3 "], ["0x100830ea", "int3 "], ["0x100830eb", "int3 "], ["0x100830ec", "int3 "], ["0x100830ed", "int3 "], ["0x100830ee", "int3 "], ["0x100830ef", "int3 "]], "recomp": []}]]]}, {"address": "0x100830f0", "recomp": "0x1000fe80", "name": "_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Erase", "matching": 0.9565217391304348, "diff": [["@@ -0x100830f0,17 +0x1000fe80,17 @@", [{"both": [["0x100830f0", "push ebx", "0x1000fe80"], ["0x100830f1", "push esi", "0x1000fe81"], ["0x100830f2", "mov esi, dword ptr [esp + 0xc]", "0x1000fe82"], ["0x100830f6", "push edi", "0x1000fe86"], ["0x100830f7", "mov edi, ecx", "0x1000fe87"], ["0x100830f9", "mov ebx, esi", "0x1000fe89"]]}, {"orig": [["0x100830fb", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1000fe8b", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], esi"]]}, {"both": [["0x10083101", "je 0x20", "0x1000fe91"], ["0x10083103", "mov eax, dword ptr [ebx + 8]", "0x1000fe93"], ["0x10083106", "mov ecx, edi", "0x1000fe96"], ["0x10083108", "push eax", "0x1000fe98"], ["0x10083109", "call _Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Erase (FUNCTION)", "0x1000fe99"], ["0x1008310e", "mov ebx, dword ptr [ebx]", "0x1000fe9e"], ["0x10083110", "push esi", "0x1000fea0"], ["0x10083111", "mov esi, ebx", "0x1000fea1"], ["0x10083113", "call ??3@YAXPAX@Z (FUNCTION)", "0x1000fea3"], ["0x10083118", "add esp, 4", "0x1000fea8"]]}]]]}, {"address": "0x10083270", "recomp": "0x1000ff10", "name": "LegoCharacterManager::Init", "matching": 0.8461538461538461, "diff": [["@@ -0x10083270,13 +0x1000ff10,13 @@", [{"both": [["0x10083270", "push esi", "0x1000ff10"], ["0x10083271", "xor eax, eax", "0x1000ff11"], ["0x10083273", "push edi", "0x1000ff13"]]}, {"orig": [["0x10083274", "lea esi, [eax + 0x100f80c0]"], ["0x1008327a", "lea edi, [eax + 0x10104f20]"]], "recomp": [["0x1000ff14", "lea esi, [eax + 0x100b40a0]"], ["0x1000ff1a", "lea edi, [eax + 0x100c1a88]"]]}, {"both": [["0x10083280", "mov ecx, 0x42", "0x1000ff20"], ["0x10083285", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1000ff25"], ["0x10083287", "add eax, 0x108", "0x1000ff27"], ["0x1008328c", "cmp eax, 0x4410", "0x1000ff2c"], ["0x10083291", "jl -0x1f", "0x1000ff31"], ["0x10083293", "pop edi", "0x1000ff33"], ["0x10083294", "pop esi", "0x1000ff34"], ["0x10083295", "ret ", "0x1000ff35"]]}]]]}, {"address": "0x100832a0", "recomp": "0x1000ff40", "name": "LegoCharacterManager::FUN_100832a0", "matching": 0.0, "stub": true}, {"address": "0x10083310", "recomp": "0x1000ff50", "name": "LegoCharacterManager::Write", "matching": 0.6853932584269663, "diff": [["@@ -0x10083310,89 +0x1000ff50,89 @@", [{"both": [["0x10083310", "push ebx", "0x1000ff50"], ["0x10083311", "push esi", "0x1000ff51"], ["0x10083312", "push edi", "0x1000ff52"]]}, {"orig": [["0x10083313", "mov ebx, 0xffffffff"]], "recomp": [["0x1000ff53", "mov ebx, g_characterData (DATA)"]]}, {"both": [["0x10083318", "push ebp", "0x1000ff58"]]}, {"orig": [["0x10083319", "mov esi, g_characterData (DATA)"], ["0x1008331e", "mov edi, dword ptr [esp + 0x14]"], ["0x10083322", "mov eax, dword ptr [edi]"]], "recomp": [["0x1000ff59", "mov edi, 0xffffffff"], ["0x1000ff5e", "mov esi, dword ptr [esp + 0x14]"], ["0x1000ff62", "mov eax, dword ptr [esi]"]]}, {"both": [["0x10083324", "mov ebp, dword ptr [eax + 8]", "0x1000ff64"], ["0x10083327", "push 4", "0x1000ff67"]]}, {"orig": [["0x10083329", "lea eax, [esi + 0xc]"]], "recomp": [["0x1000ff69", "lea eax, [ebx + 0xc]"]]}, {"both": [["0x1008332c", "push eax", "0x1000ff6c"]]}, {"orig": [["0x1008332d", "mov ecx, edi"]], "recomp": [["0x1000ff6d", "mov ecx, esi"]]}, {"both": [["0x1008332f", "call ebp", "0x1000ff6f"], ["0x10083331", "test eax, eax", "0x1000ff71"], ["0x10083333", "jne 0xa6", "0x1000ff73"], ["0x10083339", "push 4", "0x1000ff79"]]}, {"orig": [["0x1008333b", "lea eax, [esi + 0x10]"]], "recomp": [["0x1000ff7b", "lea eax, [ebx + 0x10]"]]}, {"both": [["0x1008333e", "push eax", "0x1000ff7e"]]}, {"orig": [["0x1008333f", "mov ecx, edi"]], "recomp": [["0x1000ff7f", "mov ecx, esi"]]}, {"both": [["0x10083341", "call ebp", "0x1000ff81"], ["0x10083343", "test eax, eax", "0x1000ff83"], ["0x10083345", "jne 0x94", "0x1000ff85"], ["0x1008334b", "push 1", "0x1000ff8b"]]}, {"orig": [["0x1008334d", "lea eax, [esi + 0x14]"]], "recomp": [["0x1000ff8d", "lea eax, [ebx + 0x14]"]]}, {"both": [["0x10083350", "push eax", "0x1000ff90"]]}, {"orig": [["0x10083351", "mov ecx, edi"]], "recomp": [["0x1000ff91", "mov ecx, esi"]]}, {"both": [["0x10083353", "call ebp", "0x1000ff93"], ["0x10083355", "test eax, eax", "0x1000ff95"], ["0x10083357", "jne 0x82", "0x1000ff97"], ["0x1008335d", "push 1", "0x1000ff9d"]]}, {"orig": [["0x1008335f", "lea eax, [esi + 0x38]"]], "recomp": [["0x1000ff9f", "lea eax, [ebx + 0x38]"]]}, {"both": [["0x10083362", "push eax", "0x1000ffa2"]]}, {"orig": [["0x10083363", "mov ecx, edi"]], "recomp": [["0x1000ffa3", "mov ecx, esi"]]}, {"both": [["0x10083365", "call ebp", "0x1000ffa5"], ["0x10083367", "test eax, eax", "0x1000ffa7"], ["0x10083369", "jne 0x74", "0x1000ffa9"], ["0x1008336b", "push 1", "0x1000ffab"]]}, {"orig": [["0x1008336d", "lea eax, [esi + 0x44]"]], "recomp": [["0x1000ffad", "lea eax, [ebx + 0x44]"]]}, {"both": [["0x10083370", "push eax", "0x1000ffb0"]]}, {"orig": [["0x10083371", "mov ecx, edi"]], "recomp": [["0x1000ffb1", "mov ecx, esi"]]}, {"both": [["0x10083373", "call ebp", "0x1000ffb3"], ["0x10083375", "test eax, eax", "0x1000ffb5"], ["0x10083377", "jne 0x66", "0x1000ffb7"], ["0x10083379", "push 1", "0x1000ffb9"]]}, {"orig": [["0x1008337b", "lea eax, [esi + 0x5c]"]], "recomp": [["0x1000ffbb", "lea eax, [ebx + 0x5c]"]]}, {"both": [["0x1008337e", "push eax", "0x1000ffbe"]]}, {"orig": [["0x1008337f", "mov ecx, edi"]], "recomp": [["0x1000ffbf", "mov ecx, esi"]]}, {"both": [["0x10083381", "call ebp", "0x1000ffc1"], ["0x10083383", "test eax, eax", "0x1000ffc3"], ["0x10083385", "jne 0x58", "0x1000ffc5"], ["0x10083387", "push 1", "0x1000ffc7"]]}, {"orig": [["0x10083389", "lea eax, [esi + 0x8c]"]], "recomp": [["0x1000ffc9", "lea eax, [ebx + 0x8c]"]]}, {"both": [["0x1008338f", "push eax", "0x1000ffcf"]]}, {"orig": [["0x10083390", "mov ecx, edi"]], "recomp": [["0x1000ffd0", "mov ecx, esi"]]}, {"both": [["0x10083392", "call ebp", "0x1000ffd2"], ["0x10083394", "test eax, eax", "0x1000ffd4"], ["0x10083396", "jne 0x47", "0x1000ffd6"], ["0x10083398", "push 1", "0x1000ffd8"]]}, {"orig": [["0x1008339a", "lea eax, [esi + 0xa4]"]], "recomp": [["0x1000ffda", "lea eax, [ebx + 0xa4]"]]}, {"both": [["0x100833a0", "push eax", "0x1000ffe0"]]}, {"orig": [["0x100833a1", "mov ecx, edi"]], "recomp": [["0x1000ffe1", "mov ecx, esi"]]}, {"both": [["0x100833a3", "call ebp", "0x1000ffe3"], ["0x100833a5", "test eax, eax", "0x1000ffe5"], ["0x100833a7", "jne 0x36", "0x1000ffe7"], ["0x100833a9", "push 1", "0x1000ffe9"]]}, {"orig": [["0x100833ab", "lea eax, [esi + 0xec]"]], "recomp": [["0x1000ffeb", "lea eax, [ebx + 0xec]"]]}, {"both": [["0x100833b1", "push eax", "0x1000fff1"]]}, {"orig": [["0x100833b2", "mov ecx, edi"]], "recomp": [["0x1000fff2", "mov ecx, esi"]]}, {"both": [["0x100833b4", "call ebp", "0x1000fff4"], ["0x100833b6", "test eax, eax", "0x1000fff6"], ["0x100833b8", "jne 0x25", "0x1000fff8"], ["0x100833ba", "push 1", "0x1000fffa"]]}, {"orig": [["0x100833bc", "lea eax, [esi + 0x104]"]], "recomp": [["0x1000fffc", "lea eax, [ebx + 0x104]"]]}, {"both": [["0x100833c2", "push eax", "0x10010002"]]}, {"orig": [["0x100833c3", "mov ecx, edi"]], "recomp": [["0x10010003", "mov ecx, esi"]]}, {"both": [["0x100833c5", "call ebp", "0x10010005"], ["0x100833c7", "test eax, eax", "0x10010007"], ["0x100833c9", "jne 0x14", "0x10010009"]]}, {"orig": [["0x100833cb", "add esi, 0x108"], ["0x100833d1", "cmp esi, <OFFSET2>"]], "recomp": [["0x1001000b", "add ebx, 0x108"], ["0x10010011", "cmp ebx, <OFFSET2>"]]}, {"both": [["0x100833d7", "jb -0xb6", "0x10010017"]]}, {"orig": [["0x100833dd", "xor ebx, ebx"], ["0x100833df", "mov eax, ebx"]], "recomp": [["0x1001001d", "xor edi, edi"], ["0x1001001f", "mov eax, edi"]]}, {"both": [["0x100833e1", "pop ebp", "0x10010021"], ["0x100833e2", "pop edi", "0x10010022"], ["0x100833e3", "pop esi", "0x10010023"], ["0x100833e4", "pop ebx", "0x10010024"], ["0x100833e5", "ret 4", "0x10010025"]]}]]]}, {"address": "0x100833f0", "recomp": "0x10010030", "name": "LegoCharacterManager::Read", "matching": 0.6853932584269663, "diff": [["@@ -0x100833f0,89 +0x10010030,89 @@", [{"both": [["0x100833f0", "push ebx", "0x10010030"], ["0x100833f1", "push esi", "0x10010031"], ["0x100833f2", "push edi", "0x10010032"]]}, {"orig": [["0x100833f3", "mov ebx, 0xffffffff"]], "recomp": [["0x10010033", "mov ebx, g_characterData (DATA)"]]}, {"both": [["0x100833f8", "push ebp", "0x10010038"]]}, {"orig": [["0x100833f9", "mov esi, g_characterData (DATA)"], ["0x100833fe", "mov edi, dword ptr [esp + 0x14]"], ["0x10083402", "mov eax, dword ptr [edi]"]], "recomp": [["0x10010039", "mov edi, 0xffffffff"], ["0x1001003e", "mov esi, dword ptr [esp + 0x14]"], ["0x10010042", "mov eax, dword ptr [esi]"]]}, {"both": [["0x10083404", "mov ebp, dword ptr [eax + 4]", "0x10010044"], ["0x10083407", "push 4", "0x10010047"]]}, {"orig": [["0x10083409", "lea eax, [esi + 0xc]"]], "recomp": [["0x10010049", "lea eax, [ebx + 0xc]"]]}, {"both": [["0x1008340c", "push eax", "0x1001004c"]]}, {"orig": [["0x1008340d", "mov ecx, edi"]], "recomp": [["0x1001004d", "mov ecx, esi"]]}, {"both": [["0x1008340f", "call ebp", "0x1001004f"], ["0x10083411", "test eax, eax", "0x10010051"], ["0x10083413", "jne 0xa6", "0x10010053"], ["0x10083419", "push 4", "0x10010059"]]}, {"orig": [["0x1008341b", "lea eax, [esi + 0x10]"]], "recomp": [["0x1001005b", "lea eax, [ebx + 0x10]"]]}, {"both": [["0x1008341e", "push eax", "0x1001005e"]]}, {"orig": [["0x1008341f", "mov ecx, edi"]], "recomp": [["0x1001005f", "mov ecx, esi"]]}, {"both": [["0x10083421", "call ebp", "0x10010061"], ["0x10083423", "test eax, eax", "0x10010063"], ["0x10083425", "jne 0x94", "0x10010065"], ["0x1008342b", "push 1", "0x1001006b"]]}, {"orig": [["0x1008342d", "lea eax, [esi + 0x14]"]], "recomp": [["0x1001006d", "lea eax, [ebx + 0x14]"]]}, {"both": [["0x10083430", "push eax", "0x10010070"]]}, {"orig": [["0x10083431", "mov ecx, edi"]], "recomp": [["0x10010071", "mov ecx, esi"]]}, {"both": [["0x10083433", "call ebp", "0x10010073"], ["0x10083435", "test eax, eax", "0x10010075"], ["0x10083437", "jne 0x82", "0x10010077"], ["0x1008343d", "push 1", "0x1001007d"]]}, {"orig": [["0x1008343f", "lea eax, [esi + 0x38]"]], "recomp": [["0x1001007f", "lea eax, [ebx + 0x38]"]]}, {"both": [["0x10083442", "push eax", "0x10010082"]]}, {"orig": [["0x10083443", "mov ecx, edi"]], "recomp": [["0x10010083", "mov ecx, esi"]]}, {"both": [["0x10083445", "call ebp", "0x10010085"], ["0x10083447", "test eax, eax", "0x10010087"], ["0x10083449", "jne 0x74", "0x10010089"], ["0x1008344b", "push 1", "0x1001008b"]]}, {"orig": [["0x1008344d", "lea eax, [esi + 0x44]"]], "recomp": [["0x1001008d", "lea eax, [ebx + 0x44]"]]}, {"both": [["0x10083450", "push eax", "0x10010090"]]}, {"orig": [["0x10083451", "mov ecx, edi"]], "recomp": [["0x10010091", "mov ecx, esi"]]}, {"both": [["0x10083453", "call ebp", "0x10010093"], ["0x10083455", "test eax, eax", "0x10010095"], ["0x10083457", "jne 0x66", "0x10010097"], ["0x10083459", "push 1", "0x10010099"]]}, {"orig": [["0x1008345b", "lea eax, [esi + 0x5c]"]], "recomp": [["0x1001009b", "lea eax, [ebx + 0x5c]"]]}, {"both": [["0x1008345e", "push eax", "0x1001009e"]]}, {"orig": [["0x1008345f", "mov ecx, edi"]], "recomp": [["0x1001009f", "mov ecx, esi"]]}, {"both": [["0x10083461", "call ebp", "0x100100a1"], ["0x10083463", "test eax, eax", "0x100100a3"], ["0x10083465", "jne 0x58", "0x100100a5"], ["0x10083467", "push 1", "0x100100a7"]]}, {"orig": [["0x10083469", "lea eax, [esi + 0x8c]"]], "recomp": [["0x100100a9", "lea eax, [ebx + 0x8c]"]]}, {"both": [["0x1008346f", "push eax", "0x100100af"]]}, {"orig": [["0x10083470", "mov ecx, edi"]], "recomp": [["0x100100b0", "mov ecx, esi"]]}, {"both": [["0x10083472", "call ebp", "0x100100b2"], ["0x10083474", "test eax, eax", "0x100100b4"], ["0x10083476", "jne 0x47", "0x100100b6"], ["0x10083478", "push 1", "0x100100b8"]]}, {"orig": [["0x1008347a", "lea eax, [esi + 0xa4]"]], "recomp": [["0x100100ba", "lea eax, [ebx + 0xa4]"]]}, {"both": [["0x10083480", "push eax", "0x100100c0"]]}, {"orig": [["0x10083481", "mov ecx, edi"]], "recomp": [["0x100100c1", "mov ecx, esi"]]}, {"both": [["0x10083483", "call ebp", "0x100100c3"], ["0x10083485", "test eax, eax", "0x100100c5"], ["0x10083487", "jne 0x36", "0x100100c7"], ["0x10083489", "push 1", "0x100100c9"]]}, {"orig": [["0x1008348b", "lea eax, [esi + 0xec]"]], "recomp": [["0x100100cb", "lea eax, [ebx + 0xec]"]]}, {"both": [["0x10083491", "push eax", "0x100100d1"]]}, {"orig": [["0x10083492", "mov ecx, edi"]], "recomp": [["0x100100d2", "mov ecx, esi"]]}, {"both": [["0x10083494", "call ebp", "0x100100d4"], ["0x10083496", "test eax, eax", "0x100100d6"], ["0x10083498", "jne 0x25", "0x100100d8"], ["0x1008349a", "push 1", "0x100100da"]]}, {"orig": [["0x1008349c", "lea eax, [esi + 0x104]"]], "recomp": [["0x100100dc", "lea eax, [ebx + 0x104]"]]}, {"both": [["0x100834a2", "push eax", "0x100100e2"]]}, {"orig": [["0x100834a3", "mov ecx, edi"]], "recomp": [["0x100100e3", "mov ecx, esi"]]}, {"both": [["0x100834a5", "call ebp", "0x100100e5"], ["0x100834a7", "test eax, eax", "0x100100e7"], ["0x100834a9", "jne 0x14", "0x100100e9"]]}, {"orig": [["0x100834ab", "add esi, 0x108"], ["0x100834b1", "cmp esi, <OFFSET2>"]], "recomp": [["0x100100eb", "add ebx, 0x108"], ["0x100100f1", "cmp ebx, <OFFSET2>"]]}, {"both": [["0x100834b7", "jb -0xb6", "0x100100f7"]]}, {"orig": [["0x100834bd", "xor ebx, ebx"], ["0x100834bf", "mov eax, ebx"]], "recomp": [["0x100100fd", "xor edi, edi"], ["0x100100ff", "mov eax, edi"]]}, {"both": [["0x100834c1", "pop ebp", "0x10010101"], ["0x100834c2", "pop edi", "0x10010102"], ["0x100834c3", "pop esi", "0x10010103"], ["0x100834c4", "pop ebx", "0x10010104"], ["0x100834c5", "ret 4", "0x10010105"]]}]]]}, {"address": "0x10083500", "recomp": "0x10010110", "name": "LegoCharacterManager::GetROI", "matching": 0.8669064748201439, "diff": [["@@ -0x10083500,131 +0x10010110,125 @@", [{"both": [["0x10083500", "mov eax, dword ptr fs:[0]", "0x10010110"], ["0x10083506", "push ebp", "0x10010116"], ["0x10083507", "mov ebp, esp", "0x10010117"], ["0x10083509", "push -1", "0x10010119"], ["0x1008350b", "push <OFFSET1>", "0x1001011b"], ["0x10083510", "push eax", "0x10010120"], ["0x10083511", "mov dword ptr fs:[0], esp", "0x10010121"], ["0x10083518", "sub esp, 0x34", "0x10010128"]]}, {"orig": [["0x1008351b", "mov eax, dword ptr [ebp + 8]"]], "recomp": [["0x1001012b", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x1008351e", "mov dword ptr [ebp - 0x20], ecx", "0x1001012d"], ["0x10083521", "push ebx", "0x10010130"]]}, {"orig": [["0x10083522", "mov edx, dword ptr [ecx]"]], "recomp": [["0x10010131", "mov dword ptr [ebp - 0x10], eax"]]}, {"both": [["0x10083524", "push esi", "0x10010134"], ["0x10083525", "xor ebx, ebx", "0x10010135"], ["0x10083527", "push edi", "0x10010137"]]}, {"orig": [["0x10083528", "mov dword ptr [ebp - 0x18], eax"], ["0x1008352b", "mov dword ptr [ebp - 0x10], edx"], ["0x1008352e", "mov esi, dword ptr [edx + 4]"]], "recomp": [["0x10010138", "mov esi, dword ptr [eax + 4]"]]}, {"both": [["0x10083531", "mov edi, dword ptr [esi + 4]", "0x1001013b"]]}, {"orig": [["0x10083534", "cmp edi, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1001013e", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], edi"]]}, {"both": [["0x1008353a", "je 0x25", "0x10010144"]]}, {"orig": [["0x1008353c", "mov eax, dword ptr [ebp - 0x18]"]], "recomp": [["0x10010146", "mov eax, dword ptr [ebp + 8]"]]}, {"both": [["0x1008353f", "mov ecx, dword ptr [edi + 0xc]", "0x10010149"], ["0x10083542", "push eax", "0x1001014c"], ["0x10083543", "push ecx", "0x1001014d"], ["0x10083544", "call __strcmpi (FUNCTION)", "0x1001014e"], ["0x10083549", "add esp, 8", "0x10010153"], ["0x1008354c", "test eax, eax", "0x10010156"], ["0x1008354e", "jl 0x6", "0x10010158"], ["0x10083550", "mov esi, edi", "0x1001015a"], ["0x10083552", "mov edi, dword ptr [edi]", "0x1001015c"], ["0x10083554", "jmp 0x3", "0x1001015e"], ["0x10083556", "mov edi, dword ptr [edi + 8]", "0x10010160"]]}, {"orig": [["0x10083559", "cmp edi, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x10010163", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], edi"]]}, {"both": [["0x1008355f", "jne -0x25", "0x10010169"]]}, {"orig": [["0x10083561", "mov dword ptr [ebp - 0x2c], esi"]], "recomp": [["0x1001016b", "mov dword ptr [ebp - 0x18], esi"]]}, {"both": [["0x10083564", "mov eax, dword ptr [ebp - 0x10]", "0x1001016e"], ["0x10083567", "cmp dword ptr [eax + 4], esi", "0x10010171"], ["0x1008356a", "je 0x17", "0x10010174"], ["0x1008356c", "mov eax, dword ptr [esi + 0xc]", "0x10010176"]]}, {"orig": [["0x1008356f", "mov ecx, dword ptr [ebp - 0x18]"], ["0x10083572", "push eax"], ["0x10083573", "push ecx"], ["0x10083574", "call __strcmpi (FUNCTION)"], ["0x10083579", "add esp, 8"], ["0x1008357c", "test eax, eax"], ["0x1008357e", "lea eax, [ebp - 0x2c]"]], "recomp": [["0x10010179", "mov ecx, dword ptr [ebp + 8]"], ["0x1001017c", "push eax"], ["0x1001017d", "push ecx"], ["0x1001017e", "call __strcmpi (FUNCTION)"], ["0x10010183", "add esp, 8"], ["0x10010186", "test eax, eax"], ["0x10010188", "lea eax, [ebp - 0x18]"]]}, {"both": [["0x10083581", "jge 0xc", "0x1001018b"], ["0x10083583", "mov eax, dword ptr [ebp - 0x10]", "0x1001018d"], ["0x10083586", "mov ecx, dword ptr [eax + 4]", "0x10010190"], ["0x10083589", "lea eax, [ebp - 0x1c]", "0x10010193"], ["0x1008358c", "mov dword ptr [ebp - 0x1c], ecx", "0x10010196"], ["0x1008358f", "mov eax, dword ptr [eax]", "0x10010199"], ["0x10083591", "mov ecx, dword ptr [ebp - 0x20]", "0x1001019b"]]}, {"orig": [["0x10083594", "mov dword ptr [ebp - 0x18], eax"]], "recomp": []}, {"both": [["0x10083597", "mov edx, dword ptr [ecx]", "0x1001019e"]]}, {"orig": [["0x10083599", "mov eax, dword ptr [edx + 4]"], ["0x1008359c", "mov dword ptr [ebp - 0x10], eax"], ["0x1008359f", "mov eax, dword ptr [ebp - 0x18]"], ["0x100835a2", "cmp eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x100101a0", "cmp dword ptr [edx + 4], eax"]]}, {"both": [["0x100835a5", "je 0x6", "0x100101a3"], ["0x100835a7", "mov ebx, dword ptr [eax + 0x10]", "0x100101a5"], ["0x100835aa", "inc dword ptr [ebx + 4]", "0x100101a8"], ["0x100835ad", "test ebx, ebx", "0x100101ab"], ["0x100835af", "jne 0x199", "0x100101ad"], ["0x100835b5", "mov eax, dword ptr [ebp + 8]", "0x100101b3"], ["0x100835b8", "mov ecx, dword ptr [ebp - 0x20]", "0x100101b6"], ["0x100835bb", "push eax", "0x100101b9"], ["0x100835bc", "call LegoCharacterManager::CreateROI (FUNCTION)", "0x100101ba"]]}, {"orig": [["0x100835c1", "mov dword ptr [ebp - 0x18], eax"]], "recomp": [["0x100101bf", "mov dword ptr [ebp - 0x1c], eax"]]}, {"both": [["0x100835c4", "test eax, eax", "0x100101c2"], ["0x100835c6", "je 0x1a8", "0x100101c4"], ["0x100835cc", "mov byte ptr [eax + 0xc], 0", "0x100101ca"], ["0x100835d0", "push 8", "0x100101ce"], ["0x100835d2", "call ??2@YAPAXI@Z (FUNCTION)", "0x100101d0"], ["0x100835d7", "mov dword ptr [ebp - 0x10], eax", "0x100101d5"], ["0x100835da", "add esp, 4", "0x100101d8"], ["0x100835dd", "mov esi, eax", "0x100101db"], ["0x100835df", "mov ebx, 0", "0x100101dd"], ["0x100835e4", "mov dword ptr [ebp - 4], 0", "0x100101e2"], ["0x100835eb", "test esi, esi", "0x100101e9"], ["0x100835ed", "je 0xe", "0x100101eb"]]}, {"orig": [["0x100835ef", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": [["0x100101ed", "mov ecx, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100835f2", "mov ebx, esi", "0x100101f0"], ["0x100835f4", "mov dword ptr [esi], ecx", "0x100101f2"], ["0x100835f6", "mov dword ptr [esi + 4], 1", "0x100101f4"], ["0x100835fd", "mov edi, dword ptr [ebp + 8]", "0x100101fb"], ["0x10083600", "mov ecx, 0xffffffff", "0x100101fe"], ["0x10083605", "mov dword ptr [ebp - 4], 0xffffffff", "0x10010203"], ["0x1008360c", "sub eax, eax", "0x1001020a"], ["0x1008360e", "repne scasb al, byte ptr es:[edi]", "0x1001020c"], ["0x10083610", "not ecx", "0x1001020e"], ["0x10083612", "push ecx", "0x10010210"], ["0x10083613", "call ??2@YAPAXI@Z (FUNCTION)", "0x10010211"], ["0x10083618", "add esp, 4", "0x10010216"], ["0x1008361b", "xor edx, edx", "0x10010219"]]}, {"orig": [["0x1008361d", "mov dword ptr [ebp - 0x1c], eax"]], "recomp": [["0x1001021b", "mov dword ptr [ebp - 0x18], eax"]]}, {"both": [["0x10083620", "cmp eax, edx", "0x1001021e"], ["0x10083622", "je 0x14c", "0x10010220"], ["0x10083628", "mov edi, dword ptr [ebp + 8]", "0x10010226"], ["0x1008362b", "mov ecx, 0xffffffff", "0x10010229"], ["0x10083630", "sub eax, eax", "0x1001022e"], ["0x10083632", "repne scasb al, byte ptr es:[edi]", "0x10010230"], ["0x10083634", "not ecx", "0x10010232"], ["0x10083636", "sub edi, ecx", "0x10010234"], ["0x10083638", "mov eax, ecx", "0x10010236"], ["0x1008363a", "shr ecx, 2", "0x10010238"], ["0x1008363d", "mov esi, edi", "0x1001023b"]]}, {"orig": [["0x1008363f", "mov edi, dword ptr [ebp - 0x1c]"]], "recomp": [["0x1001023d", "mov edi, dword ptr [ebp - 0x18]"]]}, {"both": [["0x10083642", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10010240"], ["0x10083644", "mov ecx, eax", "0x10010242"], ["0x10083646", "and ecx, 3", "0x10010244"], ["0x10083649", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x10010247"], ["0x1008364b", "mov edi, dword ptr [ebp - 0x20]", "0x10010249"]]}, {"orig": [["0x1008364e", "mov dword ptr [ebp - 0x24], edx"]], "recomp": []}, {"both": [["0x10083651", "mov ecx, dword ptr [edi]", "0x1001024c"], ["0x10083653", "mov dword ptr [ebp - 0x10], ecx", "0x1001024e"]]}, {"orig": [["0x10083656", "mov eax, dword ptr [ebp - 0x1c]"], ["0x10083659", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x10010251", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x1008365c", "mov dword ptr [ebp - 0x28], eax", "0x10010254"], ["0x1008365f", "mov eax, 1", "0x10010257"]]}, {"orig": [], "recomp": [["0x1001025c", "mov dword ptr [ebp - 0x24], edx"], ["0x1001025f", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10083664", "mov edi, dword ptr [ecx + 4]", "0x10010262"], ["0x10083667", "mov esi, dword ptr [edi + 4]", "0x10010265"], ["0x1008366a", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], esi", "0x10010268"], ["0x10083670", "je 0x2e", "0x1001026e"], ["0x10083672", "mov edi, esi", "0x10010270"], ["0x10083674", "mov eax, dword ptr [esi + 0xc]", "0x10010272"], ["0x10083677", "push eax", "0x10010275"], ["0x10083678", "mov ecx, dword ptr [ebp - 0x28]", "0x10010276"], ["0x1008367b", "push ecx", "0x10010279"], ["0x1008367c", "call __strcmpi (FUNCTION)", "0x1001027a"]]}]], ["@@ -0x100836ac,66 +0x100102aa,66 @@", [{"both": [["0x100836ac", "lea ecx, [ebp - 0x34]", "0x100102aa"], ["0x100836af", "push eax", "0x100102ad"], ["0x100836b0", "push edi", "0x100102ae"], ["0x100836b1", "push esi", "0x100102af"], ["0x100836b2", "push ecx", "0x100102b0"], ["0x100836b3", "mov ecx, dword ptr [ebp - 0x10]", "0x100102b1"], ["0x100836b6", "call _Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Insert (FUNCTION)", "0x100102b4"], ["0x100836bb", "mov ecx, dword ptr [eax]", "0x100102b9"], ["0x100836bd", "mov dword ptr [ebp - 0x14], ecx", "0x100102bb"], ["0x100836c0", "jmp 0x68", "0x100102be"]]}, {"orig": [["0x100836c2", "mov dword ptr [ebp - 0x1c], edi"]], "recomp": [["0x100102c0", "mov dword ptr [ebp - 0x18], edi"]]}, {"both": [["0x100836c5", "test eax, eax", "0x100102c3"], ["0x100836c7", "je 0x2b", "0x100102c5"], ["0x100836c9", "mov ecx, dword ptr [ebp - 0x10]", "0x100102c7"], ["0x100836cc", "mov eax, dword ptr [ecx + 4]", "0x100102ca"], ["0x100836cf", "cmp dword ptr [eax], edi", "0x100102cd"], ["0x100836d1", "jne 0x19", "0x100102cf"], ["0x100836d3", "lea eax, [ebp - 0x28]", "0x100102d1"], ["0x100836d6", "lea ecx, [ebp - 0x3c]", "0x100102d4"], ["0x100836d9", "push eax", "0x100102d7"], ["0x100836da", "push edi", "0x100102d8"], ["0x100836db", "push esi", "0x100102d9"], ["0x100836dc", "push ecx", "0x100102da"], ["0x100836dd", "mov ecx, dword ptr [ebp - 0x10]", "0x100102db"], ["0x100836e0", "call _Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Insert (FUNCTION)", "0x100102de"], ["0x100836e5", "mov ecx, dword ptr [eax]", "0x100102e3"], ["0x100836e7", "mov dword ptr [ebp - 0x14], ecx", "0x100102e5"], ["0x100836ea", "jmp 0x3e", "0x100102e8"]]}, {"orig": [["0x100836ec", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x100102ea", "lea ecx, [ebp - 0x18]"]]}, {"both": [["0x100836ef", "call _Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::iterator::_Dec (FUNCTION)", "0x100102ed"]]}, {"orig": [["0x100836f4", "mov eax, dword ptr [ebp - 0x1c]"], ["0x100836f7", "mov ecx, dword ptr [ebp - 0x28]"], ["0x100836fa", "push ecx"], ["0x100836fb", "mov edx, dword ptr [eax + 0xc]"]], "recomp": [["0x100102f2", "mov ecx, dword ptr [ebp - 0x18]"], ["0x100102f5", "mov eax, dword ptr [ebp - 0x28]"], ["0x100102f8", "push eax"], ["0x100102f9", "mov edx, dword ptr [ecx + 0xc]"]]}, {"both": [["0x100836fe", "push edx", "0x100102fc"], ["0x100836ff", "call __strcmpi (FUNCTION)", "0x100102fd"], ["0x10083704", "add esp, 8", "0x10010302"], ["0x10083707", "test eax, eax", "0x10010305"], ["0x10083709", "jge 0x19", "0x10010307"], ["0x1008370b", "lea eax, [ebp - 0x28]", "0x10010309"], ["0x1008370e", "lea ecx, [ebp - 0x10]", "0x1001030c"], ["0x10083711", "push eax", "0x1001030f"], ["0x10083712", "push edi", "0x10010310"], ["0x10083713", "push esi", "0x10010311"], ["0x10083714", "push ecx", "0x10010312"], ["0x10083715", "mov ecx, dword ptr [ebp - 0x10]", "0x10010313"], ["0x10083718", "call _Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Insert (FUNCTION)", "0x10010316"], ["0x1008371d", "mov ecx, dword ptr [eax]", "0x1001031b"], ["0x1008371f", "mov dword ptr [ebp - 0x14], ecx", "0x1001031d"], ["0x10083722", "jmp 0x6", "0x10010320"]]}, {"orig": [["0x10083724", "mov eax, dword ptr [ebp - 0x1c]"]], "recomp": [["0x10010322", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x10083727", "mov dword ptr [ebp - 0x14], eax", "0x10010325"], ["0x1008372a", "mov eax, dword ptr [ebp - 0x14]", "0x10010328"], ["0x1008372d", "mov dword ptr [eax + 0x10], ebx", "0x1001032b"], ["0x10083730", "call VideoManager (FUNCTION)", "0x1001032e"]]}, {"orig": [["0x10083735", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": [["0x10010333", "mov ecx, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x10083738", "mov eax, dword ptr [eax + 0x68]", "0x10010336"], ["0x1008373b", "push ecx", "0x10010339"], ["0x1008373c", "mov ecx, dword ptr [eax + 8]", "0x1001033a"], ["0x1008373f", "jmp 0x2e", "0x1001033d"], ["0x10083741", "mov eax, dword ptr [ebp - 0x10]", "0x1001033f"], ["0x10083744", "push eax", "0x10010342"], ["0x10083745", "call ??3@YAXPAX@Z (FUNCTION)", "0x10010343"], ["0x1008374a", "add esp, 4", "0x10010348"], ["0x1008374d", "ret ", "0x1001034b"], ["0x1008374e", "call VideoManager (FUNCTION)", "0x1001034c"]]}]], ["@@ -0x10083806,10 +0x10010404,18 @@", [{"both": [["0x10083806", "mov eax, dword ptr [ebx]", "0x10010404"], ["0x10083808", "jmp 0x19", "0x10010406"], ["0x1008380a", "mov eax, <OFFSET15>", "0x10010408"], ["0x1008380f", "jmp ___CxxFrameHandler (FUNCTION)", "0x1001040d"], ["0x10083814", "mov eax, dword ptr [ebp - 0x10]", "0x10010412"], ["0x10083817", "push eax", "0x10010415"], ["0x10083818", "call ??3@YAXPAX@Z (FUNCTION)", "0x10010416"], ["0x1008381d", "add esp, 4", "0x1001041b"], ["0x10083820", "ret ", "0x1001041e"], ["0x10083821", "xor eax, eax", "0x1001041f"]]}, {"orig": [], "recomp": [["0x10010421", "mov ecx, dword ptr [ebp - 0xc]"], ["0x10010424", "pop edi"], ["0x10010425", "mov dword ptr fs:[0], ecx"], ["0x1001042c", "pop esi"], ["0x1001042d", "pop ebx"], ["0x1001042e", "mov esp, ebp"], ["0x10010430", "pop ebp"], ["0x10010431", "ret 8"]]}]]]}, {"address": "0x10083840", "recomp": "0x10010440", "name": "_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::iterator::_Dec", "matching": 0.9393939393939394, "diff": [["@@ -0x10083843,24 +0x10010443,24 @@", [{"both": [["0x10083843", "cmp dword ptr [esi + 0x14], 0", "0x10010443"], ["0x10083847", "jne 0xf", "0x10010447"], ["0x10083849", "mov eax, dword ptr [esi + 4]", "0x10010449"], ["0x1008384c", "cmp dword ptr [eax + 4], esi", "0x1001044c"], ["0x1008384f", "jne 0x7", "0x1001044f"], ["0x10083851", "mov eax, dword ptr [esi + 8]", "0x10010451"], ["0x10083854", "pop esi", "0x10010454"], ["0x10083855", "mov dword ptr [ecx], eax", "0x10010455"], ["0x10083857", "ret ", "0x10010457"], ["0x10083858", "mov eax, dword ptr [esi]", "0x10010458"]]}, {"orig": [["0x1008385a", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x1001045a", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10083860", "je 0x13", "0x10010460"], ["0x10083862", "mov edx, dword ptr [eax + 8]", "0x10010462"]]}, {"orig": [["0x10083865", "cmp edx, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x10010465", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], edx"]]}, {"both": [["0x1008386b", "je 0x4", "0x1001046b"], ["0x1008386d", "mov eax, edx", "0x1001046d"], ["0x1008386f", "jmp -0xf", "0x1001046f"], ["0x10083871", "pop esi", "0x10010471"], ["0x10083872", "mov dword ptr [ecx], eax", "0x10010472"], ["0x10083874", "ret ", "0x10010474"], ["0x10083875", "mov edx, dword ptr [esi + 4]", "0x10010475"], ["0x10083878", "cmp dword ptr [edx], esi", "0x10010478"], ["0x1008387a", "jne 0xb", "0x1001047a"], ["0x1008387c", "mov dword ptr [ecx], edx", "0x1001047c"]]}]]]}, {"address": "0x10083890", "recomp": "0x10010490", "name": "_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Insert", "matching": 0.7415730337078652, "diff": [["@@ -0x10083905,57 +0x10010505,57 @@", [{"both": [["0x10083905", "mov dword ptr [edi + 8], edx", "0x10010505"], ["0x10083908", "mov eax, dword ptr [esi + 4]", "0x10010508"], ["0x1008390b", "add eax, 8", "0x1001050b"], ["0x1008390e", "cmp dword ptr [eax], edi", "0x1001050e"], ["0x10083910", "jne 0x26", "0x10010510"], ["0x10083912", "mov dword ptr [eax], edx", "0x10010512"], ["0x10083914", "jmp 0x22", "0x10010514"], ["0x10083916", "mov edx, dword ptr [esp + 0x10]", "0x10010516"], ["0x1008391a", "mov dword ptr [edi], edx", "0x1001051a"], ["0x1008391c", "mov eax, dword ptr [esi + 4]", "0x1001051c"]]}, {"orig": [["0x1008391f", "cmp eax, edi"]], "recomp": [["0x1001051f", "cmp edi, eax"]]}, {"both": [["0x10083921", "je 0x8", "0x10010521"], ["0x10083923", "cmp dword ptr [eax], edi", "0x10010523"], ["0x10083925", "jne 0x11", "0x10010525"], ["0x10083927", "mov dword ptr [eax], edx", "0x10010527"], ["0x10083929", "jmp 0xd", "0x10010529"], ["0x1008392b", "mov edx, dword ptr [esp + 0x10]", "0x1001052b"], ["0x1008392f", "mov dword ptr [eax + 4], edx", "0x1001052f"], ["0x10083932", "mov eax, dword ptr [esi + 4]", "0x10010532"], ["0x10083935", "mov dword ptr [eax + 8], edx", "0x10010535"], ["0x10083938", "mov ecx, dword ptr [esp + 0x10]", "0x10010538"], ["0x1008393c", "mov eax, dword ptr [esi + 4]", "0x1001053c"], ["0x1008393f", "cmp dword ptr [eax + 4], ecx", "0x1001053f"]]}, {"orig": [["0x10083942", "je 0x1b4"]], "recomp": [["0x10010542", "je 0x1b6"]]}, {"both": [["0x10083948", "lea edx, [ecx + 4]", "0x10010548"], ["0x1008394b", "mov eax, dword ptr [edx]", "0x1001054b"]]}, {"orig": [["0x1008394d", "lea ebp, [eax + 0x14]"], ["0x10083950", "cmp dword ptr [ebp], 0"], ["0x10083954", "jne 0x1a2"]], "recomp": [["0x1001054d", "lea ebx, [eax + 0x14]"], ["0x10010550", "cmp dword ptr [ebx], 0"], ["0x10010553", "jne 0x1a5"]]}, {"both": [["0x1008395a", "lea edi, [eax + 4]", "0x10010559"]]}, {"orig": [["0x1008395d", "mov ebx, dword ptr [edi]"], ["0x1008395f", "mov ebx, dword ptr [ebx]"], ["0x10083961", "cmp ebx, eax"], ["0x10083963", "jne 0xbb"], ["0x10083969", "mov ebx, dword ptr [edi]"], ["0x1008396b", "mov ebx, dword ptr [ebx + 8]"], ["0x1008396e", "cmp dword ptr [ebx + 0x14], 0"], ["0x10083972", "je 0x159"]], "recomp": [["0x1001055c", "mov ebp, dword ptr [edi]"], ["0x1001055e", "mov ebp, dword ptr [ebp]"], ["0x10010561", "cmp ebp, eax"], ["0x10010563", "jne 0xbe"], ["0x10010569", "mov ebp, dword ptr [edi]"], ["0x1001056b", "mov ebp, dword ptr [ebp + 8]"], ["0x1001056e", "cmp dword ptr [ebp + 0x14], 0"], ["0x10010572", "je 0x15c"]]}, {"both": [["0x10083978", "lea ebx, [eax + 8]", "0x10010578"], ["0x1008397b", "mov edx, dword ptr [ebx]", "0x1001057b"]]}, {"orig": [["0x1008397d", "cmp edx, ecx"]], "recomp": [["0x1001057d", "cmp ecx, edx"]]}, {"both": [["0x1008397f", "jne 0x33", "0x1001057f"], ["0x10083981", "mov ecx, eax", "0x10010581"], ["0x10083983", "mov eax, dword ptr [edx]", "0x10010583"], ["0x10083985", "mov dword ptr [ebx], eax", "0x10010585"], ["0x10083987", "mov eax, dword ptr [edx]", "0x10010587"]]}, {"orig": [["0x10083989", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x10010589", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x1008398f", "je 0x3", "0x1001058f"], ["0x10083991", "mov dword ptr [eax + 4], ecx", "0x10010591"], ["0x10083994", "mov eax, dword ptr [edi]", "0x10010594"], ["0x10083996", "mov dword ptr [edx + 4], eax", "0x10010596"], ["0x10083999", "mov eax, dword ptr [esi + 4]", "0x10010599"], ["0x1008399c", "add eax, 4", "0x1001059c"], ["0x1008399f", "cmp dword ptr [eax], ecx", "0x1001059f"], ["0x100839a1", "je 0xb", "0x100105a1"], ["0x100839a3", "mov eax, dword ptr [edi]", "0x100105a3"], ["0x100839a5", "cmp dword ptr [eax], ecx", "0x100105a5"]]}]], ["@@ -0x100839b7,120 +0x100105b7,119 @@", [{"both": [["0x100839b7", "mov dword ptr [eax + 0x14], 1", "0x100105b7"], ["0x100839be", "mov eax, dword ptr [ecx + 4]", "0x100105be"], ["0x100839c1", "mov edx, dword ptr [eax + 4]", "0x100105c1"], ["0x100839c4", "mov dword ptr [edx + 0x14], 0", "0x100105c4"], ["0x100839cb", "mov eax, dword ptr [ecx + 4]", "0x100105cb"], ["0x100839ce", "mov edi, dword ptr [eax + 4]", "0x100105ce"], ["0x100839d1", "mov edx, dword ptr [edi]", "0x100105d1"], ["0x100839d3", "mov eax, dword ptr [edx + 8]", "0x100105d3"], ["0x100839d6", "mov dword ptr [edi], eax", "0x100105d6"], ["0x100839d8", "mov eax, dword ptr [edx + 8]", "0x100105d8"]]}, {"orig": [["0x100839db", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x100105db", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100839e1", "je 0x3", "0x100105e1"], ["0x100839e3", "mov dword ptr [eax + 4], edi", "0x100105e3"], ["0x100839e6", "mov eax, dword ptr [edi + 4]", "0x100105e6"], ["0x100839e9", "mov dword ptr [edx + 4], eax", "0x100105e9"], ["0x100839ec", "mov eax, dword ptr [esi + 4]", "0x100105ec"], ["0x100839ef", "add eax, 4", "0x100105ef"], ["0x100839f2", "cmp dword ptr [eax], edi", "0x100105f2"], ["0x100839f4", "je 0x24", "0x100105f4"], ["0x100839f6", "mov ebx, dword ptr [edi + 4]", "0x100105f6"], ["0x100839f9", "lea eax, [ebx + 8]", "0x100105f9"], ["0x100839fc", "cmp dword ptr [eax], edi", "0x100105fc"], ["0x100839fe", "je 0xd", "0x100105fe"], ["0x10083a00", "mov dword ptr [ebx], edx", "0x10010600"], ["0x10083a02", "mov dword ptr [edx + 8], edi", "0x10010602"], ["0x10083a05", "mov dword ptr [edi + 4], edx", "0x10010605"]]}, {"orig": [["0x10083a08", "jmp 0xe3"]], "recomp": [["0x10010608", "jmp 0xe5"]]}, {"both": [["0x10083a0d", "mov dword ptr [eax], edx", "0x1001060d"], ["0x10083a0f", "mov dword ptr [edx + 8], edi", "0x1001060f"], ["0x10083a12", "mov dword ptr [edi + 4], edx", "0x10010612"]]}, {"orig": [["0x10083a15", "jmp 0xd6"]], "recomp": [["0x10010615", "jmp 0xd8"]]}, {"both": [["0x10083a1a", "mov dword ptr [eax], edx", "0x1001061a"], ["0x10083a1c", "mov dword ptr [edx + 8], edi", "0x1001061c"]]}, {"orig": [["0x10083a1f", "jmp 0xa8"], ["0x10083a24", "cmp dword ptr [ebx + 0x14], 0"]], "recomp": [["0x1001061f", "mov dword ptr [edi + 4], edx"], ["0x10010622", "jmp 0xcb"], ["0x10010627", "cmp dword ptr [ebp + 0x14], 0"]]}, {"both": [["0x10083a28", "je 0xa3", "0x1001062b"], ["0x10083a2e", "mov edx, dword ptr [eax]", "0x10010631"]]}, {"orig": [["0x10083a30", "cmp edx, ecx"]], "recomp": [["0x10010633", "cmp ecx, edx"]]}, {"both": [["0x10083a32", "jne 0x38", "0x10010635"], ["0x10083a34", "mov ecx, eax", "0x10010637"], ["0x10083a36", "mov eax, dword ptr [edx + 8]", "0x10010639"], ["0x10083a39", "mov dword ptr [ecx], eax", "0x1001063c"], ["0x10083a3b", "mov eax, dword ptr [edx + 8]", "0x1001063e"]]}, {"orig": [["0x10083a3e", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"]], "recomp": [["0x10010641", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x10083a44", "je 0x3", "0x10010647"], ["0x10083a46", "mov dword ptr [eax + 4], ecx", "0x10010649"], ["0x10083a49", "mov eax, dword ptr [edi]", "0x1001064c"], ["0x10083a4b", "mov dword ptr [edx + 4], eax", "0x1001064e"], ["0x10083a4e", "mov eax, dword ptr [esi + 4]", "0x10010651"], ["0x10083a51", "add eax, 4", "0x10010654"], ["0x10083a54", "cmp dword ptr [eax], ecx", "0x10010657"], ["0x10083a56", "je 0xd", "0x10010659"]]}, {"orig": [["0x10083a58", "mov eax, dword ptr [edi]"], ["0x10083a5a", "lea ebx, [eax + 8]"], ["0x10083a5d", "cmp dword ptr [ebx], ecx"], ["0x10083a5f", "jne 0x4"]], "recomp": [["0x1001065b", "mov ebx, dword ptr [edi]"], ["0x1001065d", "lea eax, [ebx + 8]"], ["0x10010660", "cmp dword ptr [eax], ecx"], ["0x10010662", "je 0x4"]]}, {"both": [["0x10083a61", "mov dword ptr [ebx], edx", "0x10010664"], ["0x10083a63", "jmp 0x2", "0x10010666"], ["0x10083a65", "mov dword ptr [eax], edx", "0x10010668"], ["0x10083a67", "mov dword ptr [edx + 8], ecx", "0x1001066a"], ["0x10083a6a", "mov dword ptr [edi], edx", "0x1001066d"], ["0x10083a6c", "mov eax, dword ptr [ecx + 4]", "0x1001066f"], ["0x10083a6f", "mov dword ptr [eax + 0x14], 1", "0x10010672"], ["0x10083a76", "mov eax, dword ptr [ecx + 4]", "0x10010679"], ["0x10083a79", "mov edx, dword ptr [eax + 4]", "0x1001067c"], ["0x10083a7c", "mov dword ptr [edx + 0x14], 0", "0x1001067f"], ["0x10083a83", "mov eax, dword ptr [ecx + 4]", "0x10010686"]]}, {"orig": [["0x10083a86", "mov edi, dword ptr [eax + 4]"], ["0x10083a89", "mov edx, dword ptr [edi + 8]"], ["0x10083a8c", "mov eax, dword ptr [edx]"], ["0x10083a8e", "mov dword ptr [edi + 8], eax"], ["0x10083a91", "mov eax, dword ptr [edx]"], ["0x10083a93", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)]"], ["0x10083a99", "je 0x3"], ["0x10083a9b", "mov dword ptr [eax + 4], edi"], ["0x10083a9e", "mov eax, dword ptr [edi + 4]"], ["0x10083aa1", "mov dword ptr [edx + 4], eax"], ["0x10083aa4", "mov eax, dword ptr [esi + 4]"], ["0x10083aa7", "add eax, 4"], ["0x10083aaa", "cmp dword ptr [eax], edi"]], "recomp": [["0x10010689", "mov edx, dword ptr [eax + 4]"], ["0x1001068c", "mov edi, dword ptr [edx + 8]"], ["0x1001068f", "mov eax, dword ptr [edi]"], ["0x10010691", "mov dword ptr [edx + 8], eax"], ["0x10010694", "mov eax, dword ptr [edi]"], ["0x10010696", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoCharacter *>,map<char const *,LegoCharacter *,LegoCharacterComparator,allocator<LegoCharacter *> >::_Kfn,LegoCharacterComparator,allocator<LegoCharacter *> >::_Nil (DATA)], eax"], ["0x1001069c", "je 0x3"], ["0x1001069e", "mov dword ptr [eax + 4], edx"], ["0x100106a1", "mov eax, dword ptr [edx + 4]"], ["0x100106a4", "mov dword ptr [edi + 4], eax"], ["0x100106a7", "mov eax, dword ptr [esi + 4]"], ["0x100106aa", "add eax, 4"], ["0x100106ad", "cmp dword ptr [eax], edx"]]}, {"both": [["0x10083aac", "je 0x1a", "0x100106af"]]}, {"orig": [["0x10083aae", "mov eax, dword ptr [edi + 4]"], ["0x10083ab1", "cmp dword ptr [eax], edi"]], "recomp": [["0x100106b1", "mov eax, dword ptr [edx + 4]"], ["0x100106b4", "cmp dword ptr [eax], edx"]]}, {"both": [["0x10083ab3", "je 0xa", "0x100106b6"]]}, {"orig": [["0x10083ab5", "mov dword ptr [eax + 8], edx"], ["0x10083ab8", "mov dword ptr [edx], edi"], ["0x10083aba", "mov dword ptr [edi + 4], edx"], ["0x10083abd", "jmp 0x31"], ["0x10083abf", "mov dword ptr [eax], edx"], ["0x10083ac1", "mov dword ptr [edx], edi"], ["0x10083ac3", "mov dword ptr [edi + 4], edx"], ["0x10083ac6", "jmp 0x28"], ["0x10083ac8", "mov dword ptr [eax], edx"], ["0x10083aca", "mov dword ptr [edx], edi"], ["0x10083acc", "mov dword ptr [edi + 4], edx"], ["0x10083acf", "jmp 0x1f"], ["0x10083ad1", "mov dword ptr [ebp], 1"], ["0x10083ad8", "mov dword ptr [ebx + 0x14], 1"]], "recomp": [["0x100106b8", "mov dword ptr [eax + 8], edi"], ["0x100106bb", "mov dword ptr [edi], edx"], ["0x100106bd", "mov dword ptr [edx + 4], edi"], ["0x100106c0", "jmp 0x30"], ["0x100106c2", "mov dword ptr [eax], edi"], ["0x100106c4", "mov dword ptr [edi], edx"], ["0x100106c6", "mov dword ptr [edx + 4], edi"], ["0x100106c9", "jmp 0x27"], ["0x100106cb", "mov dword ptr [eax], edi"], ["0x100106cd", "mov dword ptr [edi], edx"], ["0x100106cf", "mov dword ptr [edx + 4], edi"], ["0x100106d2", "jmp 0x1e"], ["0x100106d4", "mov dword ptr [ebx], 1"], ["0x100106da", "mov dword ptr [ebp + 0x14], 1"]]}, {"both": [["0x10083adf", "mov eax, dword ptr [edx]", "0x100106e1"], ["0x10083ae1", "mov ecx, dword ptr [eax + 4]", "0x100106e3"], ["0x10083ae4", "mov dword ptr [ecx + 0x14], 0", "0x100106e6"], ["0x10083aeb", "mov eax, dword ptr [edx]", "0x100106ed"], ["0x10083aed", "mov ecx, dword ptr [eax + 4]", "0x100106ef"], ["0x10083af0", "mov eax, dword ptr [esi + 4]", "0x100106f2"], ["0x10083af3", "cmp dword ptr [eax + 4], ecx", "0x100106f5"]]}, {"orig": [["0x10083af6", "jne -0x1b4"]], "recomp": [["0x100106f8", "jne -0x1b6"]]}, {"both": [["0x10083afc", "mov eax, dword ptr [esi + 4]", "0x100106fe"], ["0x10083aff", "mov edx, dword ptr [esp + 0x10]", "0x10010701"], ["0x10083b03", "mov ecx, dword ptr [eax + 4]", "0x10010705"], ["0x10083b06", "mov eax, dword ptr [esp + 0x18]", "0x10010708"], ["0x10083b0a", "pop ebp", "0x1001070c"], ["0x10083b0b", "pop edi", "0x1001070d"], ["0x10083b0c", "mov dword ptr [ecx + 0x14], 1", "0x1001070e"], ["0x10083b13", "pop esi", "0x10010715"], ["0x10083b14", "mov dword ptr [eax], edx", "0x10010716"], ["0x10083b16", "pop ebx", "0x10010718"], ["0x10083b17", "add esp, 4", "0x10010719"], ["0x10083b1a", "ret 0x10", "0x1001071c"]]}, {"orig": [["0x10083b1d", "int3 "], ["0x10083b1e", "int3 "]], "recomp": []}]]]}, {"address": "0x10083db0", "recomp": "0x10010720", "name": "LegoCharacterManager::FUN_10083db0", "matching": 0.0, "stub": true}, {"address": "0x10083f10", "recomp": "0x10010730", "name": "LegoCharacterManager::FUN_10083f10", "matching": 0.0, "stub": true}, {"address": "0x10084030", "recomp": "0x10010740", "name": "LegoCharacterManager::CreateROI", "matching": 0.7855495772482706, "diff": [["@@ -0x10084030,55 +0x10010740,55 @@", [{"both": [["0x10084030", "mov eax, dword ptr fs:[0]", "0x10010740"], ["0x10084036", "push ebp", "0x10010746"], ["0x10084037", "mov ebp, esp", "0x10010747"], ["0x10084039", "push -1", "0x10010749"], ["0x1008403b", "push <OFFSET1>", "0x1001074b"], ["0x10084040", "push eax", "0x10010750"], ["0x10084041", "mov dword ptr fs:[0], esp", "0x10010751"]]}, {"orig": [["0x10084048", "sub esp, 0x290"], ["0x1008404e", "lea eax, [ebp - 0x110]"]], "recomp": [["0x10010758", "sub esp, 0x1d0"], ["0x1001075e", "lea eax, [ebp - 0xe8]"]]}, {"both": [["0x10084054", "push ebx", "0x10010764"], ["0x10084055", "push esi", "0x10010765"], ["0x10084056", "xor ebx, ebx", "0x10010766"], ["0x10084058", "push edi", "0x10010768"], ["0x10084059", "mov esi, ecx", "0x10010769"], ["0x1008405b", "mov edi, Mx3DPointFloat::`vftable' (VTABLE)", "0x1001076b"]]}, {"orig": [["0x10084060", "lea ecx, [ebp - 0xe0]"]], "recomp": [["0x10010770", "lea ecx, [ebp - 0xb8]"]]}, {"both": [["0x10084066", "push ecx", "0x10010776"], ["0x10084067", "mov dword ptr [ebp - 0x1c], ebx", "0x10010777"]]}, {"orig": [["0x1008406a", "lea ecx, [ebp - 0xe8]"], ["0x10084070", "mov dword ptr [ebp - 0x114], eax"], ["0x10084076", "mov dword ptr [ebp - 0x118], edi"]], "recomp": [["0x1001077a", "lea ecx, [ebp - 0xc0]"], ["0x10010780", "mov dword ptr [ebp - 0xec], eax"], ["0x10010786", "mov dword ptr [ebp - 0xf0], edi"]]}, {"both": [["0x1008407c", "call Vector2::Vector2 (FUNCTION)", "0x1001078c"]]}, {"orig": [["0x10084081", "lea eax, [ebp - 0xcc]"], ["0x10084087", "lea ecx, [ebp - 0xd4]"], ["0x1008408d", "push eax"], ["0x1008408e", "mov dword ptr [ebp - 0xe8], edi"]], "recomp": [["0x10010791", "lea eax, [ebp - 0xa4]"], ["0x10010797", "lea ecx, [ebp - 0xac]"], ["0x1001079d", "push eax"], ["0x1001079e", "mov dword ptr [ebp - 0xc0], edi"]]}, {"both": [["0x10084094", "call Vector3::Vector3 (FUNCTION)", "0x100107a4"], ["0x10084099", "lea eax, [ebp - 0x194]", "0x100107a9"]]}, {"orig": [["0x1008409f", "mov dword ptr [ebp - 0xd4], edi"]], "recomp": [["0x100107af", "mov dword ptr [ebp - 0xac], edi"]]}, {"both": [["0x100840a5", "mov dword ptr [ebp - 0x19c], MxMatrix::`vftable' (VTABLE)", "0x100107b5"], ["0x100840af", "mov dword ptr [ebp - 0x198], eax", "0x100107bf"], ["0x100840b5", "call VideoManager (FUNCTION)", "0x100107c5"], ["0x100840ba", "mov eax, dword ptr [eax + 0x64]", "0x100107ca"], ["0x100840bd", "mov dword ptr [ebp - 0x38], eax", "0x100107cd"], ["0x100840c0", "call GetViewLODListManager (FUNCTION)", "0x100107d0"], ["0x100840c5", "mov dword ptr [ebp - 0x4c], eax", "0x100107d5"], ["0x100840c8", "call TextureContainer (FUNCTION)", "0x100107d8"], ["0x100840cd", "mov ecx, esi", "0x100107dd"], ["0x100840cf", "mov dword ptr [ebp - 0x68], eax", "0x100107df"], ["0x100840d2", "mov eax, dword ptr [ebp + 8]", "0x100107e2"], ["0x100840d5", "push eax", "0x100107e5"], ["0x100840d6", "call LegoCharacterManager::Find (FUNCTION)", "0x100107e6"], ["0x100840db", "mov dword ptr [ebp - 0x18], eax", "0x100107eb"], ["0x100840de", "cmp eax, ebx", "0x100107ee"]]}, {"orig": [["0x100840e0", "je 0x7dd"]], "recomp": [["0x100107f0", "je 0x7b5"]]}, {"both": [["0x100840e6", "push 'pep' (STRING)", "0x100107f6"], ["0x100840eb", "mov eax, dword ptr [ebp + 8]", "0x100107fb"], ["0x100840ee", "push eax", "0x100107fe"], ["0x100840ef", "call __strcmpi (FUNCTION)", "0x100107ff"], ["0x100840f4", "add esp, 8", "0x10010804"], ["0x100840f7", "test eax, eax", "0x10010807"], ["0x100840f9", "jne 0x40", "0x10010809"], ["0x100840fb", "push 'pepper' (STRING)", "0x1001080b"], ["0x10084100", "mov ecx, esi", "0x10010810"], ["0x10084102", "call LegoCharacterManager::Find (FUNCTION)", "0x10010812"]]}]], ["@@ -0x1008415e,78 +0x1001086e,78 @@", [{"both": [["0x1008415e", "call LegoROI::LegoROI (FUNCTION)", "0x1001086e"], ["0x10084163", "mov dword ptr [ebp - 0x14], eax", "0x10010873"], ["0x10084166", "jmp 0x7", "0x10010876"], ["0x10084168", "mov dword ptr [ebp - 0x14], 0", "0x10010878"], ["0x1008416f", "mov ecx, dword ptr [ebp - 0x14]", "0x1001087f"], ["0x10084172", "mov eax, dword ptr [ebp + 8]", "0x10010882"], ["0x10084175", "push eax", "0x10010885"], ["0x10084176", "mov dword ptr [ebp - 0x1c], ecx", "0x10010886"], ["0x10084179", "mov dword ptr [ebp - 4], 0xffffffff", "0x10010889"], ["0x10084180", "call LegoROI::SetName (FUNCTION)", "0x10010890"]]}, {"orig": [["0x10084185", "mov eax, dword ptr [ebp - 0x114]"]], "recomp": [["0x10010895", "mov eax, dword ptr [ebp - 0xec]"]]}, {"both": [["0x1008418b", "mov ecx, dword ptr [<OFFSET16>]", "0x1001089b"], ["0x10084191", "mov dword ptr [eax], ecx", "0x100108a1"]]}, {"orig": [["0x10084193", "mov eax, dword ptr [ebp - 0x114]"]], "recomp": [["0x100108a3", "mov eax, dword ptr [ebp - 0xec]"]]}, {"both": [["0x10084199", "mov edx, dword ptr [<OFFSET17>]", "0x100108a9"], ["0x1008419f", "mov esi, dword ptr [ebp - 0x14]", "0x100108af"], ["0x100841a2", "add esi, 0xa8", "0x100108b2"], ["0x100841a8", "mov dword ptr [eax + 4], edx", "0x100108b8"]]}, {"orig": [["0x100841ab", "mov eax, dword ptr [ebp - 0x114]"]], "recomp": [["0x100108bb", "mov eax, dword ptr [ebp - 0xec]"]]}, {"both": [["0x100841b1", "mov ecx, dword ptr [<OFFSET18>]", "0x100108c1"], ["0x100841b7", "mov dword ptr [eax + 8], ecx", "0x100108c7"]]}, {"orig": [["0x100841ba", "lea ecx, [ebp - 0x118]"]], "recomp": [["0x100108ca", "lea ecx, [ebp - 0xf0]"]]}, {"both": [["0x100841c0", "mov edx, dword ptr [<OFFSET19>]", "0x100108d0"], ["0x100841c6", "push ecx", "0x100108d6"], ["0x100841c7", "mov ecx, esi", "0x100108d7"]]}, {"orig": [["0x100841c9", "mov dword ptr [ebp - 0x104], edx"]], "recomp": [["0x100108d9", "mov dword ptr [ebp - 0xdc], edx"]]}, {"both": [["0x100841cf", "call Mx3DPointFloat::operator= (FUNCTION)", "0x100108df"]]}, {"orig": [["0x100841d4", "mov eax, dword ptr [ebp - 0x104]"]], "recomp": [["0x100108e4", "mov eax, dword ptr [ebp - 0xdc]"]]}, {"both": [["0x100841da", "mov ecx, dword ptr [ebp - 0x14]", "0x100108ea"], ["0x100841dd", "push esi", "0x100108ed"], ["0x100841de", "nop ", "0x100108ee"], ["0x100841df", "mov dword ptr [ecx + 0xbc], eax", "0x100108ef"], ["0x100841e5", "add ecx, 0xe8", "0x100108f5"], ["0x100841eb", "call Mx3DPointFloat::operator= (FUNCTION)", "0x100108fb"], ["0x100841f0", "mov ecx, dword ptr [ebp - 0x14]", "0x10010900"], ["0x100841f3", "mov edx, dword ptr [ecx + 0xbc]", "0x10010903"], ["0x100841f9", "mov dword ptr [ecx + 0xfc], edx", "0x10010909"]]}, {"orig": [["0x100841ff", "mov ebx, dword ptr [ebp - 0xe4]"], ["0x10084205", "mov eax, dword ptr [<OFFSET21>]"], ["0x1008420a", "mov dword ptr [ebx], eax"], ["0x1008420c", "mov ebx, dword ptr [ebp - 0xe4]"]], "recomp": [["0x1001090f", "mov edx, dword ptr [<OFFSET21>]"], ["0x10010915", "mov eax, dword ptr [ebp - 0xbc]"], ["0x1001091b", "mov dword ptr [eax], edx"], ["0x1001091d", "mov eax, dword ptr [ebp - 0xbc]"]]}, {"both": [["0x10084212", "mov ecx, dword ptr [<OFFSET22>]", "0x10010923"]]}, {"orig": [["0x10084218", "mov dword ptr [ebx + 4], ecx"], ["0x1008421b", "mov ebx, dword ptr [ebp - 0xe4]"]], "recomp": [["0x10010929", "mov dword ptr [eax + 4], ecx"]]}, {"both": [["0x10084221", "mov eax, dword ptr [<OFFSET23>]", "0x1001092c"]]}, {"orig": [["0x10084226", "mov dword ptr [ebx + 8], eax"], ["0x10084229", "mov edx, dword ptr [ebp - 0xd0]"]], "recomp": [["0x10010931", "mov edx, dword ptr [ebp - 0xbc]"], ["0x10010937", "mov dword ptr [edx + 8], eax"], ["0x1001093a", "mov ebx, dword ptr [ebp - 0xa8]"]]}, {"both": [["0x1008422f", "mov ecx, dword ptr [<OFFSET24>]", "0x10010940"]]}, {"orig": [["0x10084235", "mov dword ptr [edx], ecx"], ["0x10084237", "mov edx, dword ptr [ebp - 0xd0]"]], "recomp": [["0x10010946", "mov dword ptr [ebx], ecx"], ["0x10010948", "mov ebx, dword ptr [ebp - 0xa8]"]]}, {"both": [["0x1008423d", "mov eax, dword ptr [<OFFSET25>]", "0x1001094e"]]}, {"orig": [["0x10084242", "mov dword ptr [edx + 4], eax"], ["0x10084245", "mov edx, dword ptr [ebp - 0xd0]"]], "recomp": [["0x10010953", "mov dword ptr [ebx + 4], eax"], ["0x10010956", "mov ebx, dword ptr [ebp - 0xa8]"]]}, {"both": [["0x1008424b", "mov ecx, dword ptr [<OFFSET26>]", "0x1001095c"]]}, {"orig": [["0x10084251", "lea eax, [ebp - 0xe8]"], ["0x10084257", "push eax"], ["0x10084258", "mov dword ptr [edx + 8], ecx"]], "recomp": [["0x10010962", "lea eax, [ebp - 0xc0]"], ["0x10010968", "push eax"], ["0x10010969", "mov dword ptr [ebx + 8], ecx"]]}, {"both": [["0x1008425b", "mov ecx, dword ptr [ebp - 0x14]", "0x1001096c"], ["0x1008425e", "add ecx, 0x80", "0x1001096f"], ["0x10084264", "call Vector3::operator= (FUNCTION)", "0x10010975"]]}, {"orig": [["0x10084269", "lea edx, [ebp - 0xe0]"]], "recomp": [["0x1001097a", "lea edx, [ebp - 0xb8]"]]}, {"both": [["0x1008426f", "mov ecx, dword ptr [ebp - 0x14]", "0x10010980"], ["0x10084272", "add ecx, 0x88", "0x10010983"], ["0x10084278", "mov eax, dword ptr [edx]", "0x10010989"], ["0x1008427a", "add edx, 4", "0x1001098b"], ["0x1008427d", "mov dword ptr [ecx], eax", "0x1001098e"], ["0x1008427f", "add ecx, 4", "0x10010990"]]}, {"orig": [["0x10084282", "lea eax, [ebp - 0xd4]"]], "recomp": [["0x10010993", "lea eax, [ebp - 0xac]"]]}, {"both": [["0x10084288", "cmp edx, eax", "0x10010999"], ["0x1008428a", "jb -0x14", "0x1001099b"], ["0x1008428c", "push eax", "0x1001099d"], ["0x1008428d", "mov ecx, dword ptr [ebp - 0x14]", "0x1001099e"], ["0x10084290", "add ecx, 0x94", "0x100109a1"], ["0x10084296", "mov ebx, 1", "0x100109a7"], ["0x1008429b", "call Mx3DPointFloat::operator= (FUNCTION)", "0x100109ac"], ["0x100842a0", "push 0xc", "0x100109b1"], ["0x100842a2", "call ??2@YAPAXI@Z (FUNCTION)", "0x100109b3"], ["0x100842a7", "mov dword ptr [ebp - 0x10], eax", "0x100109b8"]]}]], ["@@ -0x10084340,40 +0x10010a51,40 @@", [{"both": [["0x10084340", "push eax", "0x10010a51"], ["0x10084341", "call ViewLODListManager::Lookup (FUNCTION)", "0x10010a52"], ["0x10084346", "mov edx, dword ptr [ebp - 0x3c]", "0x10010a57"], ["0x10084349", "mov ecx, dword ptr [ebp + 8]", "0x10010a5a"], ["0x1008434c", "push edx", "0x10010a5d"], ["0x1008434d", "mov dword ptr [ebp - 0x24], eax", "0x10010a5e"], ["0x10084350", "mov eax, dword ptr [eax + 0xc]", "0x10010a61"], ["0x10084353", "push ecx", "0x10010a64"], ["0x10084354", "push '%s%d' (STRING)", "0x10010a65"], ["0x10084359", "mov dword ptr [ebp - 0x10], eax", "0x10010a6a"]]}, {"orig": [["0x1008435c", "lea eax, [ebp - 0x29c]"]], "recomp": [["0x10010a6d", "lea eax, [ebp - 0x1dc]"]]}, {"both": [["0x10084362", "push eax", "0x10010a73"], ["0x10084363", "call _sprintf (FUNCTION)", "0x10010a74"], ["0x10084368", "add esp, 0x10", "0x10010a79"]]}, {"orig": [["0x1008436b", "lea ecx, [ebp - 0x29c]"]], "recomp": [["0x10010a7c", "lea ecx, [ebp - 0x1dc]"]]}, {"both": [["0x10084371", "mov edx, dword ptr [ebp - 0x10]", "0x10010a82"], ["0x10084374", "mov dword ptr [ebp - 0x98], ecx", "0x10010a85"], ["0x1008437a", "push edx", "0x10010a8b"], ["0x1008437b", "lea ecx, [ebp - 0x98]", "0x10010a8c"], ["0x10084381", "push ecx", "0x10010a92"], ["0x10084382", "mov ecx, dword ptr [ebp - 0x4c]", "0x10010a93"], ["0x10084385", "call ViewLODListManager::Create (FUNCTION)", "0x10010a96"], ["0x1008438a", "cmp dword ptr [ebp - 0x10], 0", "0x10010a9b"], ["0x1008438e", "mov edi, eax", "0x10010a9f"], ["0x10084390", "jle 0x37", "0x10010aa1"], ["0x10084392", "mov dword ptr [ebp - 0x20], 0", "0x10010aa3"], ["0x10084399", "mov eax, dword ptr [ebp - 0x10]", "0x10010aaa"], ["0x1008439c", "mov dword ptr [ebp - 0x10], eax", "0x10010aad"]]}, {"orig": [["0x1008439f", "mov ecx, dword ptr [ebp - 0x24]"]], "recomp": []}, {"both": [["0x100843a2", "mov eax, dword ptr [ebp - 0x38]", "0x10010ab0"]]}, {"orig": [], "recomp": [["0x10010ab3", "mov ecx, dword ptr [ebp - 0x24]"]]}, {"both": [["0x100843a5", "push eax", "0x10010ab6"], ["0x100843a6", "mov edx, dword ptr [ecx + 4]", "0x10010ab7"], ["0x100843a9", "mov eax, dword ptr [ebp - 0x20]", "0x10010aba"], ["0x100843ac", "mov ecx, dword ptr [edx + eax]", "0x10010abd"], ["0x100843af", "call LegoLOD::Clone (FUNCTION)", "0x10010ac0"], ["0x100843b4", "mov ecx, dword ptr [edi + 0xc]", "0x10010ac5"], ["0x100843b7", "mov edx, dword ptr [edi + 4]", "0x10010ac8"], ["0x100843ba", "add dword ptr [ebp - 0x20], 4", "0x10010acb"], ["0x100843be", "mov dword ptr [edx + ecx*4], eax", "0x10010acf"], ["0x100843c1", "inc dword ptr [edi + 0xc]", "0x10010ad2"]]}]], ["@@ -0x10084423,124 +0x10010b34,117 @@", [{"both": [["0x10084423", "jne 0x9", "0x10010b34"], ["0x10084425", "push edi", "0x10010b36"], ["0x10084426", "mov ecx, dword ptr [edi + 0x14]", "0x10010b37"], ["0x10084429", "call ViewLODListManager::Destroy (FUNCTION)", "0x10010b3a"], ["0x1008442e", "mov eax, dword ptr [esi - 8]", "0x10010b3f"], ["0x10084431", "mov ecx, dword ptr [ebp - 0x24]", "0x10010b42"], ["0x10084434", "push eax", "0x10010b45"], ["0x10084435", "call LegoROI::SetName (FUNCTION)", "0x10010b46"], ["0x1008443a", "mov edx, dword ptr [ebp - 0x24]", "0x10010b4b"], ["0x1008443d", "mov ecx, dword ptr [ebp - 0x14]", "0x10010b4e"]]}, {"orig": [["0x10084440", "lea eax, [ebp - 0xf8]"]], "recomp": [["0x10010b51", "lea eax, [ebp - 0xd0]"], ["0x10010b57", "mov edi, Mx3DPointFloat::`vftable' (VTABLE)"], ["0x10010b5c", "push eax"]]}, {"both": [["0x10084446", "mov dword ptr [edx + 0xd4], ecx", "0x10010b5d"]]}, {"orig": [["0x1008444c", "mov dword ptr [ebp - 0xfc], eax"], ["0x10084452", "mov edx, dword ptr [esi + 4]"], ["0x10084455", "mov dword ptr [ebp - 0x100], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x1008445f", "mov dword ptr [ebp - 0xf8], edx"], ["0x10084465", "mov eax, dword ptr [ebp - 0xfc]"], ["0x1008446b", "mov ecx, dword ptr [esi + 8]"], ["0x1008446e", "mov dword ptr [eax + 4], ecx"], ["0x10084471", "mov eax, dword ptr [ebp - 0xfc]"], ["0x10084477", "mov edx, dword ptr [esi + 0xc]"], ["0x1008447a", "mov dword ptr [eax + 8], edx"], ["0x1008447d", "mov ecx, dword ptr [esi + 0x10]"], ["0x10084480", "mov dword ptr [ebp - 0xec], ecx"], ["0x10084486", "lea ecx, [ebp - 0x100]"], ["0x1008448c", "mov edi, dword ptr [ebp - 0x24]"], ["0x1008448f", "push ecx"], ["0x10084490", "add edi, 0xa8"], ["0x10084496", "mov ecx, edi"]], "recomp": [["0x10010b63", "lea ecx, [ebp - 0xd8]"], ["0x10010b69", "call Vector3::Vector3 (FUNCTION)"], ["0x10010b6e", "mov ecx, dword ptr [ebp - 0xd4]"], ["0x10010b74", "mov eax, dword ptr [esi + 4]"], ["0x10010b77", "mov dword ptr [ebp - 0xd8], edi"], ["0x10010b7d", "mov dword ptr [ecx], eax"], ["0x10010b7f", "mov ecx, dword ptr [ebp - 0xd4]"], ["0x10010b85", "mov edx, dword ptr [esi + 8]"], ["0x10010b88", "mov dword ptr [ecx + 4], edx"], ["0x10010b8b", "mov ecx, dword ptr [ebp - 0xd4]"], ["0x10010b91", "mov eax, dword ptr [esi + 0xc]"], ["0x10010b94", "mov dword ptr [ecx + 8], eax"], ["0x10010b97", "lea eax, [ebp - 0xd8]"], ["0x10010b9d", "mov edx, dword ptr [esi + 0x10]"], ["0x10010ba0", "push eax"], ["0x10010ba1", "mov dword ptr [ebp - 0xc4], edx"], ["0x10010ba7", "mov ecx, dword ptr [ebp - 0x24]"], ["0x10010baa", "add ecx, 0xa8"], ["0x10010bb0", "mov dword ptr [ebp - 0x10], ecx"]]}, {"both": [["0x10084498", "call Mx3DPointFloat::operator= (FUNCTION)", "0x10010bb3"]]}, {"orig": [["0x1008449d", "mov eax, dword ptr [ebp - 0xec]"]], "recomp": [["0x10010bb8", "mov ecx, dword ptr [ebp - 0xc4]"]]}, {"both": [["0x100844a3", "mov edx, dword ptr [ebp - 0x24]", "0x10010bbe"]]}, {"orig": [["0x100844a6", "push edi"], ["0x100844a7", "mov dword ptr [edx + 0xbc], eax"]], "recomp": [["0x10010bc1", "mov eax, dword ptr [ebp - 0x10]"], ["0x10010bc4", "mov dword ptr [edx + 0xbc], ecx"], ["0x10010bca", "push eax"]]}, {"both": [["0x100844ad", "mov ecx, dword ptr [ebp - 0x24]", "0x10010bcb"], ["0x100844b0", "add ecx, 0xe8", "0x10010bce"], ["0x100844b6", "call Mx3DPointFloat::operator= (FUNCTION)", "0x10010bd4"], ["0x100844bb", "mov edx, dword ptr [ebp - 0x24]", "0x10010bd9"]]}, {"orig": [["0x100844be", "lea eax, [ebp - 0xb8]"]], "recomp": [["0x10010bdc", "lea eax, [ebp - 0x110]"]]}, {"both": [["0x100844c4", "push eax", "0x10010be2"], ["0x100844c5", "mov ecx, dword ptr [edx + 0xbc]", "0x10010be3"], ["0x100844cb", "mov dword ptr [edx + 0xfc], ecx", "0x10010be9"]]}, {"orig": [["0x100844d1", "lea ecx, [ebp - 0xc0]"]], "recomp": [["0x10010bef", "lea ecx, [ebp - 0x118]"]]}, {"both": [["0x100844d7", "call Vector2::Vector2 (FUNCTION)", "0x10010bf5"]]}, {"orig": [["0x100844dc", "mov dword ptr [ebp - 0xc0], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x100844e6", "lea ecx, [ebp - 0xa4]"], ["0x100844ec", "push ecx"], ["0x100844ed", "lea ecx, [ebp - 0xac]"], ["0x100844f3", "call Vector3::Vector3 (FUNCTION)"], ["0x100844f8", "mov edx, dword ptr [ebp - 0xbc]"]], "recomp": [["0x10010bfa", "lea ecx, [ebp - 0xfc]"], ["0x10010c00", "mov dword ptr [ebp - 0x118], edi"], ["0x10010c06", "push ecx"], ["0x10010c07", "lea ecx, [ebp - 0x104]"], ["0x10010c0d", "call Vector2::Vector2 (FUNCTION)"], ["0x10010c12", "mov edx, dword ptr [ebp - 0x114]"]]}, {"both": [["0x100844fe", "mov ecx, dword ptr [esi + 0x14]", "0x10010c18"]]}, {"orig": [["0x10084501", "mov dword ptr [ebp - 0xac], Mx3DPointFloat::`vftable' (VTABLE)"]], "recomp": [["0x10010c1b", "mov dword ptr [ebp - 0x104], edi"]]}, {"both": [["0x1008450b", "mov dword ptr [edx], ecx", "0x10010c21"]]}, {"orig": [["0x1008450d", "mov edx, dword ptr [ebp - 0xbc]"]], "recomp": [["0x10010c23", "mov edx, dword ptr [ebp - 0x114]"]]}, {"both": [["0x10084513", "mov eax, dword ptr [esi + 0x18]", "0x10010c29"], ["0x10084516", "mov dword ptr [edx + 4], eax", "0x10010c2c"]]}, {"orig": [["0x10084519", "mov edx, dword ptr [ebp - 0xbc]"]], "recomp": [["0x10010c2f", "mov edx, dword ptr [ebp - 0x114]"]]}, {"both": [["0x1008451f", "mov ecx, dword ptr [esi + 0x1c]", "0x10010c35"], ["0x10084522", "mov dword ptr [edx + 8], ecx", "0x10010c38"]]}, {"orig": [["0x10084525", "mov edi, dword ptr [ebp - 0xa8]"]], "recomp": [["0x10010c3b", "mov edx, dword ptr [ebp - 0x100]"]]}, {"both": [["0x1008452b", "mov eax, dword ptr [esi + 0x20]", "0x10010c41"]]}, {"orig": [["0x1008452e", "mov dword ptr [edi], eax"], ["0x10084530", "mov edi, dword ptr [ebp - 0xa8]"]], "recomp": [["0x10010c44", "mov dword ptr [edx], eax"], ["0x10010c46", "mov edx, dword ptr [ebp - 0x100]"]]}, {"both": [["0x10084536", "mov ecx, dword ptr [esi + 0x24]", "0x10010c4c"]]}, {"orig": [["0x10084539", "mov dword ptr [edi + 4], ecx"], ["0x1008453c", "mov edi, dword ptr [ebp - 0xa8]"]], "recomp": [["0x10010c4f", "mov dword ptr [edx + 4], ecx"], ["0x10010c52", "mov edx, dword ptr [ebp - 0x100]"]]}, {"both": [["0x10084542", "mov eax, dword ptr [esi + 0x28]", "0x10010c58"]]}, {"orig": [["0x10084545", "lea ecx, [ebp - 0xc0]"], ["0x1008454b", "mov dword ptr [edi + 8], eax"], ["0x1008454e", "push ecx"]], "recomp": [["0x10010c5b", "lea ecx, [ebp - 0x118]"], ["0x10010c61", "push ecx"], ["0x10010c62", "mov dword ptr [edx + 8], eax"]]}, {"both": [["0x1008454f", "mov ecx, dword ptr [ebp - 0x24]", "0x10010c65"], ["0x10084552", "add ecx, 0x80", "0x10010c68"]]}, {"orig": [["0x10084558", "call Vector3::operator= (FUNCTION)"], ["0x1008455d", "lea ecx, [ebp - 0xb8]"], ["0x10084563", "mov edx, dword ptr [ebp - 0x24]"], ["0x10084566", "add edx, 0x88"], ["0x1008456c", "mov eax, dword ptr [ecx]"], ["0x1008456e", "add ecx, 4"], ["0x10084571", "mov dword ptr [edx], eax"], ["0x10084573", "add edx, 4"], ["0x10084576", "lea eax, [ebp - 0xac]"], ["0x1008457c", "cmp ecx, eax"], ["0x1008457e", "jb -0x14"], ["0x10084580", "push eax"]], "recomp": [["0x10010c6e", "call Mx3DPointFloat::operator= (FUNCTION)"], ["0x10010c73", "lea ecx, [ebp - 0x104]"], ["0x10010c79", "push ecx"]]}, {"both": [["0x10084581", "mov ecx, dword ptr [ebp - 0x24]", "0x10010c7a"], ["0x10084584", "add ecx, 0x94", "0x10010c7d"], ["0x1008458a", "call Mx3DPointFloat::operator= (FUNCTION)", "0x10010c83"]]}, {"orig": [["0x1008458f", "lea eax, [ebp - 0x14c]"], ["0x10084595", "mov ecx, Mx3DPointFloat::`vftable' (VTABLE)"], ["0x1008459a", "lea edx, [ebp - 0x14c]"], ["0x100845a0", "mov dword ptr [ebp - 0x150], eax"]], "recomp": [["0x10010c88", "lea ecx, [ebp - 0x14c]"]]}, {"both": [["0x100845a6", "lea eax, [esi + 0x44]", "0x10010c8e"]]}, {"orig": [["0x100845a9", "mov dword ptr [ebp - 0x154], ecx"], ["0x100845af", "mov edi, dword ptr [eax]"], ["0x100845b1", "mov dword ptr [edx], edi"], ["0x100845b3", "mov edi, dword ptr [eax + 4]"], ["0x100845b6", "mov dword ptr [edx + 4], edi"], ["0x100845b9", "lea edi, [esi + 0x38]"]], "recomp": [["0x10010c91", "mov dword ptr [ebp - 0x150], ecx"], ["0x10010c97", "mov dword ptr [ebp - 0x154], edi"], ["0x10010c9d", "mov edx, dword ptr [eax]"], ["0x10010c9f", "mov dword ptr [ecx], edx"], ["0x10010ca1", "mov edx, dword ptr [eax + 4]"], ["0x10010ca4", "mov dword ptr [ecx + 4], edx"]]}, {"both": [["0x100845bc", "mov eax, dword ptr [eax + 8]", "0x10010ca7"]]}, {"orig": [["0x100845bf", "mov dword ptr [edx + 8], eax"], ["0x100845c2", "lea edx, [ebp - 0x138]"], ["0x100845c8", "mov dword ptr [ebp - 0x13c], edx"], ["0x100845ce", "mov dword ptr [ebp - 0x140], ecx"], ["0x100845d4", "mov eax, dword ptr [edi]"], ["0x100845d6", "mov dword ptr [edx], eax"], ["0x100845d8", "mov eax, dword ptr [edi + 4]"], ["0x100845db", "mov dword ptr [edx + 4], eax"], ["0x100845de", "mov edi, dword ptr [edi + 8]"], ["0x100845e1", "mov dword ptr [edx + 8], edi"], ["0x100845e4", "lea edx, [ebp - 0x124]"], ["0x100845ea", "mov dword ptr [ebp - 0x128], edx"], ["0x100845f0", "mov dword ptr [ebp - 0x12c], ecx"]], "recomp": [["0x10010caa", "mov dword ptr [ecx + 8], eax"], ["0x10010cad", "lea ecx, [ebp - 0x138]"], ["0x10010cb3", "lea eax, [esi + 0x38]"], ["0x10010cb6", "mov dword ptr [ebp - 0x13c], ecx"], ["0x10010cbc", "mov dword ptr [ebp - 0x140], edi"], ["0x10010cc2", "mov edx, dword ptr [eax]"], ["0x10010cc4", "mov dword ptr [ecx], edx"], ["0x10010cc6", "mov edx, dword ptr [eax + 4]"], ["0x10010cc9", "mov dword ptr [ecx + 4], edx"]]}, {"both": [["0x100845f6", "lea edx, [esi + 0x2c]", "0x10010ccc"]]}, {"orig": [], "recomp": [["0x10010ccf", "mov eax, dword ptr [eax + 8]"], ["0x10010cd2", "mov dword ptr [ecx + 8], eax"]]}, {"both": [["0x100845f9", "lea ecx, [ebp - 0x124]", "0x10010cd5"]]}, {"orig": [], "recomp": [["0x10010cdb", "mov dword ptr [ebp - 0x128], ecx"], ["0x10010ce1", "mov dword ptr [ebp - 0x12c], edi"]]}, {"both": [["0x100845ff", "mov eax, dword ptr [edx]", "0x10010ce7"], ["0x10084601", "mov dword ptr [ecx], eax", "0x10010ce9"], ["0x10084603", "lea eax, [ebp - 0x19c]", "0x10010ceb"], ["0x10084609", "mov edi, dword ptr [edx + 4]", "0x10010cf1"], ["0x1008460c", "push eax", "0x10010cf4"], ["0x1008460d", "mov dword ptr [ecx + 4], edi", "0x10010cf5"], ["0x10084610", "lea eax, [ebp - 0x12c]", "0x10010cf8"], ["0x10084616", "mov edx, dword ptr [edx + 8]", "0x10010cfe"], ["0x10084619", "mov dword ptr [ecx + 8], edx", "0x10010d01"], ["0x1008461c", "lea ecx, [ebp - 0x154]", "0x10010d04"]]}]], ["@@ -0x10084654,29 +0x10010d3c,29 @@", [{"both": [["0x10084654", "xor ecx, ecx", "0x10010d3c"], ["0x10084656", "mov edx, dword ptr [ebx]", "0x10010d3e"], ["0x10084658", "mov cl, byte ptr [ebx + 8]", "0x10010d40"], ["0x1008465b", "cmp byte ptr [ecx + edx], 0", "0x10010d43"], ["0x1008465f", "je 0x103", "0x10010d47"], ["0x10084665", "xor eax, eax", "0x10010d4d"], ["0x10084667", "mov edx, dword ptr [ebx + 0xc]", "0x10010d4f"], ["0x1008466a", "mov al, byte ptr [ebx + 0x14]", "0x10010d52"], ["0x1008466d", "xor ecx, ecx", "0x10010d55"], ["0x1008466f", "mov cl, byte ptr [eax + edx]", "0x10010d57"]]}, {"orig": [["0x10084672", "mov edi, dword ptr [ebp - 0x68]"]], "recomp": []}, {"both": [["0x10084675", "mov eax, dword ptr [ebx + 0x10]", "0x10010d5a"], ["0x10084678", "mov dword ptr [ebp - 0x20], 0", "0x10010d5d"], ["0x1008467f", "mov edx, dword ptr [eax + ecx*4]", "0x10010d64"]]}, {"orig": [["0x10084682", "mov ecx, dword ptr [edi + 0xc]"]], "recomp": [["0x10010d67", "mov ecx, dword ptr [ebp - 0x68]"]]}, {"both": [["0x10084685", "mov dword ptr [ebp - 0x48], edx", "0x10010d6a"]]}, {"orig": [], "recomp": [["0x10010d6d", "mov ecx, dword ptr [ecx + 0xc]"]]}, {"both": [["0x10084688", "mov dword ptr [ebp - 0x10], ecx", "0x10010d70"], ["0x1008468b", "mov eax, dword ptr [ecx + 4]", "0x10010d73"]]}, {"orig": [["0x1008468e", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x10010d76", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x10084694", "je 0x41", "0x10010d7c"], ["0x10084696", "mov ecx, dword ptr [eax + 0xc]", "0x10010d7e"], ["0x10084699", "mov edi, dword ptr [ebp - 0x48]", "0x10010d81"], ["0x1008469c", "mov dl, byte ptr [ecx]", "0x10010d84"], ["0x1008469e", "cmp dl, byte ptr [edi]", "0x10010d86"], ["0x100846a0", "jne 0x1a", "0x10010d88"], ["0x100846a2", "or dl, dl", "0x10010d8a"], ["0x100846a4", "je 0x12", "0x10010d8c"], ["0x100846a6", "mov dl, byte ptr [ecx + 1]", "0x10010d8e"], ["0x100846a9", "cmp dl, byte ptr [edi + 1]", "0x10010d91"]]}]], ["@@ -0x100846b8,55 +0x10010da0,55 @@", [{"both": [["0x100846b8", "xor ecx, ecx", "0x10010da0"], ["0x100846ba", "jmp 0x5", "0x10010da2"], ["0x100846bc", "sbb ecx, ecx", "0x10010da4"], ["0x100846be", "sbb ecx, -1", "0x10010da6"], ["0x100846c1", "test ecx, ecx", "0x10010da9"], ["0x100846c3", "jg 0x7", "0x10010dab"], ["0x100846c5", "mov dword ptr [ebp - 0x10], eax", "0x10010dad"], ["0x100846c8", "mov eax, dword ptr [eax]", "0x10010db0"], ["0x100846ca", "jmp 0x3", "0x10010db2"], ["0x100846cc", "mov eax, dword ptr [eax + 8]", "0x10010db4"]]}, {"orig": [["0x100846cf", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]], "recomp": [["0x10010db7", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]]}, {"both": [["0x100846d5", "jne -0x41", "0x10010dbd"]]}, {"orig": [["0x100846d7", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100846da", "mov eax, dword ptr [ebp - 0x68]"], ["0x100846dd", "mov dword ptr [ebp - 0x94], ecx"], ["0x100846e3", "cmp dword ptr [eax + 0xc], ecx"]], "recomp": [["0x10010dbf", "mov eax, dword ptr [ebp - 0x10]"], ["0x10010dc2", "mov ecx, dword ptr [ebp - 0x68]"], ["0x10010dc5", "mov dword ptr [ebp - 0x94], eax"], ["0x10010dcb", "cmp dword ptr [ecx + 0xc], eax"]]}, {"both": [["0x100846e6", "je 0x35", "0x10010dce"]]}, {"orig": [["0x100846e8", "mov eax, dword ptr [ebp - 0x48]"], ["0x100846eb", "mov edx, dword ptr [ecx + 0xc]"], ["0x100846ee", "mov cl, byte ptr [eax]"], ["0x100846f0", "cmp cl, byte ptr [edx]"]], "recomp": [["0x10010dd0", "mov ecx, dword ptr [ebp - 0x48]"], ["0x10010dd3", "mov edx, dword ptr [eax + 0xc]"], ["0x10010dd6", "mov al, byte ptr [ecx]"], ["0x10010dd8", "cmp al, byte ptr [edx]"]]}, {"both": [["0x100846f2", "jne 0x1a", "0x10010dda"]]}, {"orig": [["0x100846f4", "or cl, cl"]], "recomp": [["0x10010ddc", "or al, al"]]}, {"both": [["0x100846f6", "je 0x12", "0x10010dde"]]}, {"orig": [["0x100846f8", "mov cl, byte ptr [eax + 1]"], ["0x100846fb", "cmp cl, byte ptr [edx + 1]"]], "recomp": [["0x10010de0", "mov al, byte ptr [ecx + 1]"], ["0x10010de3", "cmp al, byte ptr [edx + 1]"]]}, {"both": [["0x100846fe", "jne 0xe", "0x10010de6"]]}, {"orig": [["0x10084700", "add eax, 2"]], "recomp": [["0x10010de8", "add ecx, 2"]]}, {"both": [["0x10084703", "add edx, 2", "0x10010deb"]]}, {"orig": [["0x10084706", "or cl, cl"]], "recomp": [["0x10010dee", "or al, al"]]}, {"both": [["0x10084708", "jne -0x1c", "0x10010df0"], ["0x1008470a", "xor eax, eax", "0x10010df2"], ["0x1008470c", "jmp 0x5", "0x10010df4"], ["0x1008470e", "sbb eax, eax", "0x10010df6"], ["0x10084710", "sbb eax, -1", "0x10010df8"], ["0x10084713", "test eax, eax", "0x10010dfb"], ["0x10084715", "lea eax, [ebp - 0x94]", "0x10010dfd"], ["0x1008471b", "jle 0x12", "0x10010e03"]]}, {"orig": [["0x1008471d", "mov eax, dword ptr [ebp - 0x68]"], ["0x10084720", "mov ecx, dword ptr [eax + 0xc]"]], "recomp": [["0x10010e05", "mov ecx, dword ptr [ebp - 0x68]"], ["0x10010e08", "mov eax, dword ptr [ecx + 0xc]"], ["0x10010e0b", "mov dword ptr [ebp - 0x90], eax"]]}, {"both": [["0x10084723", "lea eax, [ebp - 0x90]", "0x10010e11"]]}, {"orig": [["0x10084729", "mov dword ptr [ebp - 0x90], ecx"]], "recomp": []}, {"both": [["0x1008472f", "mov eax, dword ptr [eax]", "0x10010e17"]]}, {"orig": [["0x10084731", "mov edx, dword ptr [ebp - 0x68]"], ["0x10084734", "cmp dword ptr [edx + 0xc], eax"]], "recomp": [["0x10010e19", "mov ecx, dword ptr [ebp - 0x68]"], ["0x10010e1c", "cmp dword ptr [ecx + 0xc], eax"]]}, {"both": [["0x10084737", "je 0x6", "0x10010e1f"], ["0x10084739", "mov ecx, dword ptr [eax + 0x10]", "0x10010e21"], ["0x1008473c", "mov dword ptr [ebp - 0x20], ecx", "0x10010e24"], ["0x1008473f", "cmp dword ptr [ebp - 0x20], 0", "0x10010e27"], ["0x10084743", "je 0x8e", "0x10010e2b"], ["0x10084749", "mov eax, dword ptr [ebp - 0x20]", "0x10010e31"], ["0x1008474c", "mov ecx, dword ptr [ebp - 0x24]", "0x10010e34"], ["0x1008474f", "push eax", "0x10010e37"], ["0x10084750", "call LegoROI::FUN_100a9210 (FUNCTION)", "0x10010e38"], ["0x10084755", "push 0", "0x10010e3d"]]}]], ["@@ -0x100847ff,21 +0x10010ee7,21 @@", [{"both": [["0x100847ff", "add ecx, 8", "0x10010ee7"], ["0x10084802", "add esi, 0x58", "0x10010eea"], ["0x10084805", "push ecx", "0x10010eed"], ["0x10084806", "add ebx, 0x18", "0x10010eee"], ["0x10084809", "call _Construct (FUNCTION)", "0x10010ef1"], ["0x1008480e", "add esp, 8", "0x10010ef6"], ["0x10084811", "mov ecx, dword ptr [ebp - 0x54]", "0x10010ef9"], ["0x10084814", "inc dword ptr [ebp - 0x3c]", "0x10010efc"], ["0x10084817", "inc dword ptr [ecx + 8]", "0x10010eff"], ["0x1008481a", "cmp esi, <OFFSET46>", "0x10010f02"]]}, {"orig": [["0x10084820", "jb -0x519"]], "recomp": [["0x10010f08", "jb -0x4f0"]]}, {"both": [["0x10084826", "lea eax, [ebp - 0x70]", "0x10010f0e"], ["0x10084829", "mov ecx, Mx3DPointFloat::`vftable' (VTABLE)", "0x10010f11"], ["0x1008482e", "mov edx, <OFFSET47>", "0x10010f16"], ["0x10084833", "mov esi, eax", "0x10010f1b"], ["0x10084835", "mov dword ptr [ebp - 0x74], eax", "0x10010f1d"], ["0x10084838", "mov dword ptr [ebp - 0x78], ecx", "0x10010f20"], ["0x1008483b", "mov eax, dword ptr [edx]", "0x10010f23"], ["0x1008483d", "mov dword ptr [esi], eax", "0x10010f25"], ["0x1008483f", "lea eax, [ebp - 0x5c]", "0x10010f27"], ["0x10084842", "mov ebx, dword ptr [edx + 4]", "0x10010f2a"]]}]], ["@@ -0x100848e5,10 +0x10010fcd,24 @@", [{"both": [["0x100848e5", "mov dword ptr fs:[0], ecx", "0x10010fcd"], ["0x100848ec", "pop edi", "0x10010fd4"], ["0x100848ed", "pop esi", "0x10010fd5"], ["0x100848ee", "pop ebx", "0x10010fd6"], ["0x100848ef", "mov esp, ebp", "0x10010fd7"], ["0x100848f1", "pop ebp", "0x10010fd9"], ["0x100848f2", "ret 4", "0x10010fda"], ["0x100848f5", "mov eax, dword ptr [ebp - 0x10]", "0x10010fdd"], ["0x100848f8", "push eax", "0x10010fe0"], ["0x100848f9", "call ??3@YAXPAX@Z (FUNCTION)", "0x10010fe1"]]}, {"orig": [], "recomp": [["0x10010fe6", "add esp, 4"], ["0x10010fe9", "ret "], ["0x10010fea", "mov eax, dword ptr [ebp - 0x10]"], ["0x10010fed", "push eax"], ["0x10010fee", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10010ff3", "add esp, 4"], ["0x10010ff6", "ret "], ["0x10010ff7", "mov eax, <OFFSET51>"], ["0x10010ffc", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10011001", "mov eax, dword ptr [ebp - 0x24]"], ["0x10011004", "push eax"], ["0x10011005", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1001100a", "add esp, 4"], ["0x1001100d", "ret "]]}]]]}, {"address": "0x10084930", "recomp": "0x10011060", "name": "list<ROI *,allocator<ROI *> >::~list<ROI *,allocator<ROI *> >", "matching": 0.9459459459459459, "diff": [["@@ -0x10084930,36 +0x10011060,36 @@", [{"both": [["0x10084930", "sub esp, 0xc", "0x10011060"], ["0x10084933", "push esi", "0x10011063"], ["0x10084934", "push edi", "0x10011064"], ["0x10084935", "mov eax, dword ptr [ecx + 4]", "0x10011065"], ["0x10084938", "mov esi, ecx", "0x10011068"], ["0x1008493a", "mov dword ptr [esp + 0x10], eax", "0x1001106a"], ["0x1008493e", "mov ecx, dword ptr [eax]", "0x1001106e"], ["0x10084940", "mov edi, ecx", "0x10011070"]]}, {"orig": [["0x10084942", "cmp eax, ecx"]], "recomp": [["0x10011072", "cmp ecx, eax"]]}, {"both": [["0x10084944", "je 0x2e", "0x10011074"], ["0x10084946", "lea edx, [edi + 4]", "0x10011076"], ["0x10084949", "mov dword ptr [esp + 8], edi", "0x10011079"], ["0x1008494d", "mov eax, edi", "0x1001107d"], ["0x1008494f", "mov edi, dword ptr [edi]", "0x1001107f"], ["0x10084951", "mov ecx, dword ptr [edx]", "0x10011081"], ["0x10084953", "mov eax, dword ptr [eax]", "0x10011083"], ["0x10084955", "mov dword ptr [ecx], eax", "0x10011085"], ["0x10084957", "mov ecx, dword ptr [edx]", "0x10011087"], ["0x10084959", "mov eax, dword ptr [esp + 8]", "0x10011089"], ["0x1008495d", "push eax", "0x1001108d"], ["0x1008495e", "mov edx, dword ptr [eax]", "0x1001108e"], ["0x10084960", "mov dword ptr [edx + 4], ecx", "0x10011090"], ["0x10084963", "call ??3@YAXPAX@Z (FUNCTION)", "0x10011093"], ["0x10084968", "add esp, 4", "0x10011098"], ["0x1008496b", "dec dword ptr [esi + 8]", "0x1001109b"]]}, {"orig": [["0x1008496e", "cmp dword ptr [esp + 0x10], edi"]], "recomp": [["0x1001109e", "cmp edi, dword ptr [esp + 0x10]"]]}, {"both": [["0x10084972", "jne -0x2e", "0x100110a2"], ["0x10084974", "mov eax, dword ptr [esi + 4]", "0x100110a4"], ["0x10084977", "push eax", "0x100110a7"], ["0x10084978", "call ??3@YAXPAX@Z (FUNCTION)", "0x100110a8"], ["0x1008497d", "mov dword ptr [esi + 4], 0", "0x100110ad"], ["0x10084984", "add esp, 4", "0x100110b4"], ["0x10084987", "mov dword ptr [esi + 8], 0", "0x100110b7"], ["0x1008498e", "pop edi", "0x100110be"], ["0x1008498f", "pop esi", "0x100110bf"], ["0x10084990", "add esp, 0xc", "0x100110c0"]]}]]]}, {"address": "0x10084c00", "recomp": "0x10011100", "name": "LegoCharacterManager::FUN_10084c00", "matching": 0.0, "stub": true}, {"address": "0x10084c40", "recomp": "0x10011110", "name": "LegoCharacterManager::FUN_10084c40", "matching": 0.0, "stub": true}, {"address": "0x10084c60", "recomp": "0x10011120", "name": "LegoCharacterManager::Find", "matching": 0.96875, "diff": [["@@ -0x10084c85,17 +0x10011145,17 @@", [{"both": [["0x10084c85", "cmp ebx, <OFFSET3>", "0x10011145"], ["0x10084c8b", "jb -0x1f", "0x1001114b"], ["0x10084c8d", "cmp edi, 0x42", "0x1001114d"], ["0x10084c90", "jae 0x14", "0x10011150"], ["0x10084c92", "mov eax, edi", "0x10011152"], ["0x10084c94", "shl eax, 5", "0x10011154"], ["0x10084c97", "add eax, edi", "0x10011157"], ["0x10084c99", "pop edi", "0x10011159"], ["0x10084c9a", "pop esi", "0x1001115a"], ["0x10084c9b", "pop ebx", "0x1001115b"]]}, {"orig": [["0x10084c9c", "lea eax, [eax*8 + 0x10104f20]"]], "recomp": [["0x1001115c", "lea eax, [eax*8 + 0x100c1a88]"]]}, {"both": [["0x10084ca3", "ret 4", "0x10011163"], ["0x10084ca6", "xor eax, eax", "0x10011166"], ["0x10084ca8", "pop edi", "0x10011168"], ["0x10084ca9", "pop esi", "0x10011169"], ["0x10084caa", "pop ebx", "0x1001116a"], ["0x10084cab", "ret 4", "0x1001116b"]]}]]]}, {"address": "0x10084ec0", "recomp": "0x10011170", "name": "LegoCharacterManager::FUN_10084ec0", "matching": 0.0, "stub": true}, {"address": "0x10085140", "recomp": "0x10011180", "name": "LegoCharacterManager::FUN_10085140", "matching": 0.0, "stub": true}, {"address": "0x100851a0", "recomp": "0x10011190", "name": "LegoCharacterManager::SetCustomizeAnimFile", "matching": 1.0, "diff": []}, {"address": "0x10085210", "recomp": "0x10011200", "name": "LegoCharacterManager::FUN_10085210", "matching": 0.0, "stub": true}, {"address": "0x10085a80", "recomp": "0x10011210", "name": "LegoCharacterManager::FUN_10085a80", "matching": 1.0, "diff": []}, {"address": "0x10085aa0", "recomp": "0x1001d430", "name": "CustomizeAnimFileVariable::CustomizeAnimFileVariable", "matching": 1.0, "diff": []}, {"address": "0x10085b50", "recomp": "0x1001d4e0", "name": "CustomizeAnimFileVariable::SetValue", "matching": 1.0, "diff": []}, {"address": "0x10085bc0", "recomp": "0x10006fd0", "name": "JukeBoxEntity::JukeBoxEntity", "matching": 1.0, "diff": []}, {"address": "0x10085cc0", "recomp": "0x100073f0", "name": "JukeBoxEntity::ClassName", "matching": 1.0, "diff": []}, {"address": "0x10085cd0", "recomp": "0x10007400", "name": "JukeBoxEntity::IsA", "matching": 1.0, "diff": []}, {"address": "0x10085db0", "recomp": "0x100074e0", "name": "JukeBoxEntity::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10085dd0", "recomp": "0x10007500", "name": "JukeBoxEntity::~JukeBoxEntity", "matching": 1.0, "diff": []}, {"address": "0x10085e40", "recomp": "0x10007570", "name": "JukeBoxEntity::Notify", "matching": 1.0, "diff": []}, {"address": "0x10085ed0", "recomp": "0x10007600", "name": "JukeBoxEntity::StartAction", "matching": 0.9130434782608695, "diff": [["@@ -0x10085f08,21 +0x10007638,21 @@", [{"both": [["0x10085f08", "mov ecx, eax", "0x10007638"], ["0x10085f0a", "call MxBackgroundAudioManager::Stop (FUNCTION)", "0x1000763a"], ["0x10085f0f", "push 'JukeBoxState' (STRING)", "0x1000763f"], ["0x10085f14", "call GameState (FUNCTION)", "0x10007644"], ["0x10085f19", "mov ecx, eax", "0x10007649"], ["0x10085f1b", "call LegoGameState::GetState (FUNCTION)", "0x1000764b"], ["0x10085f20", "mov dword ptr [eax + 0xc], 1", "0x10007650"], ["0x10085f27", "mov eax, dword ptr [eax + 8]", "0x10007657"], ["0x10085f2a", "cmp eax, 5", "0x1000765a"], ["0x10085f2d", "ja 0xfb", "0x1000765d"]]}, {"orig": [["0x10085f33", "jmp dword ptr [eax*4 + 0x100860d4]"]], "recomp": [["0x10007663", "jmp dword ptr [eax*4 + 0x10007804]"]]}, {"both": [["0x10085f3a", "push 0", "0x1000766a"], ["0x10085f3c", "mov eax, dword ptr [g_isleScript (DATA)]", "0x1000766c"], ["0x10085f41", "push 0x319", "0x10007671"], ["0x10085f46", "push eax", "0x10007676"], ["0x10085f47", "push 4", "0x10007677"], ["0x10085f49", "call InvokeAction (FUNCTION)", "0x10007679"], ["0x10085f4e", "add esp, 0x10", "0x1000767e"], ["0x10085f51", "call GameState (FUNCTION)", "0x10007681"], ["0x10085f56", "mov dword ptr [eax + 0x41c], 0x37", "0x10007686"], ["0x10085f60", "jmp 0xc9", "0x10007690"]]}]], ["@@ -0x100860ad,20 +0x100077dd,22 @@", [{"both": [["0x100860ad", "mov dword ptr fs:[0], eax", "0x100077dd"], ["0x100860b3", "pop ebp", "0x100077e3"], ["0x100860b4", "ret ", "0x100077e4"], ["0x100860b5", "lea ecx, [ebp - 0x10]", "0x100077e5"], ["0x100860b8", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x100077e8"], ["0x100860bd", "mov eax, <OFFSET17>", "0x100077ed"], ["0x100860c2", "jmp ___CxxFrameHandler (FUNCTION)", "0x100077f2"], ["0x100860c7", "lea ecx, [ebp - 0xa8]", "0x100077f7"], ["0x100860cd", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x100077fd"], ["0x100860d2", "mov edi, edi", "0x10007802"]]}, {"orig": [["0x100860d4", "cmp bl, byte ptr [edi + 8]"], ["0x100860d7", "adc byte ptr [ebp + 0x5f], ah"], ["0x100860da", "or byte ptr [eax], dl"], ["0x100860dc", "nop "], ["0x100860dd", "pop edi"], ["0x100860de", "or byte ptr [eax], dl"], ["0x100860e0", "mov eax, 0xe010085f"], ["0x100860e5", "pop edi"], ["0x100860e6", "or byte ptr [eax], dl"], ["0x100860e8", "or byte ptr [eax + 8], ah"]], "recomp": [["0x10007804", "push 0x76"], ["0x10007806", "add byte ptr [eax], dl"], ["0x10007808", "xchg ebp, eax"], ["0x10007809", "jbe 0x0"], ["0x1000780b", "adc al, al"], ["0x1000780d", "jbe 0x0"], ["0x1000780f", "adc al, ch"], ["0x10007811", "jbe 0x0"], ["0x10007813", "adc byte ptr [eax], dl"], ["0x10007815", "ja 0x0"], ["0x10007817", "adc byte ptr [eax], bh"], ["0x10007819", "ja 0x0"]]}]]]}, {"address": "0x100860f0", "recomp": "0x10007820", "name": "JukeBoxEntity::StopAction", "matching": 0.8360655737704918, "diff": [["@@ -0x100860fd,21 +0x1000782d,21 @@", [{"both": [["0x100860fd", "mov ecx, eax", "0x1000782d"], ["0x100860ff", "call LegoGameState::GetState (FUNCTION)", "0x1000782f"], ["0x10086104", "test eax, eax", "0x10007834"], ["0x10086106", "je 0x9b", "0x10007836"], ["0x1008610c", "cmp dword ptr [eax + 0xc], 0", "0x1000783c"], ["0x10086110", "je 0x91", "0x10007840"], ["0x10086116", "mov ecx, dword ptr [esp + 8]", "0x10007846"], ["0x1008611a", "sub ecx, 0x37", "0x1000784a"], ["0x1008611d", "cmp ecx, 5", "0x1000784d"], ["0x10086120", "ja 0x75", "0x10007850"]]}, {"orig": [["0x10086122", "jmp dword ptr [ecx*4 + 0x100861ac]"]], "recomp": [["0x10007852", "jmp dword ptr [ecx*4 + 0x100078dc]"]]}, {"both": [["0x10086129", "mov dword ptr [eax + 0xc], 0", "0x10007859"], ["0x10086130", "push 0", "0x10007860"], ["0x10086132", "push 0x319", "0x10007862"], ["0x10086137", "jmp 0x4e", "0x10007867"], ["0x10086139", "mov dword ptr [eax + 0xc], 0", "0x10007869"], ["0x10086140", "push 0", "0x10007870"], ["0x10086142", "push 0x31e", "0x10007872"], ["0x10086147", "jmp 0x3e", "0x10007877"], ["0x10086149", "mov dword ptr [eax + 0xc], 0", "0x10007879"], ["0x10086150", "push 0", "0x10007880"]]}]], ["@@ -0x1008618f,21 +0x100078bf,19 @@", [{"both": [["0x1008618f", "call InvokeAction (FUNCTION)", "0x100078bf"], ["0x10086194", "add esp, 0x10", "0x100078c4"], ["0x10086197", "mov al, byte ptr [esi + 0x68]", "0x100078c7"], ["0x1008619a", "push eax", "0x100078ca"], ["0x1008619b", "call BackgroundAudioManager (FUNCTION)", "0x100078cb"], ["0x100861a0", "mov ecx, eax", "0x100078d0"], ["0x100861a2", "call MxBackgroundAudioManager::Enable (FUNCTION)", "0x100078d2"], ["0x100861a7", "pop esi", "0x100078d7"], ["0x100861a8", "ret 4", "0x100078d8"], ["0x100861ab", "nop ", "0x100078db"]]}, {"orig": [["0x100861ac", "sub dword ptr [ecx + 8], esp"], ["0x100861af", "adc byte ptr [ecx], bh"], ["0x100861b1", "popal "], ["0x100861b2", "or byte ptr [eax], dl"], ["0x100861b4", "dec ecx"], ["0x100861b5", "popal "], ["0x100861b6", "or byte ptr [eax], dl"]], "recomp": []}, {"both": [["0x100861b8", "pop ecx", "0x100078dc"]]}, {"orig": [["0x100861b9", "popal "], ["0x100861ba", "or byte ptr [eax], dl"], ["0x100861bc", "imul esp, dword ptr [ecx + 8], 0x8617910"]], "recomp": [["0x100078dd", "js 0x0"], ["0x100078df", "adc byte ptr [ecx + 0x78], ch"], ["0x100078e2", "add byte ptr [eax], dl"], ["0x100078e4", "jns 0x78"], ["0x100078e6", "add byte ptr [eax], dl"], ["0x100078e8", "mov dword ptr [eax], edi"], ["0x100078eb", "adc byte ptr [ecx - 0x56efff88], bl"], ["0x100078f1", "js 0x0"]]}]]]}, {"address": "0x10086240", "recomp": "0x1007cc30", "name": "??2@YAPAXI@Z", "matching": 0.8571428571428571, "diff": [["@@ -0x10086240,7 +0x1007cc30,7 @@", [{"both": [["0x10086240", "mov eax, dword ptr [esp + 4]", "0x1007cc30"], ["0x10086244", "push 0", "0x1007cc34"], ["0x10086246", "push 0", "0x1007cc36"], ["0x10086248", "push eax", "0x1007cc38"]]}, {"orig": [["0x10086249", "call <OFFSET1>"]], "recomp": [["0x1007cc39", "call ?shi_New@@YAPAXKIPAU_SHI_Pool@@@Z (UNK)"]]}, {"both": [["0x1008624e", "add esp, 0xc", "0x1007cc3e"], ["0x10086251", "ret ", "0x1007cc41"]]}]]]}, {"address": "0x10086260", "recomp": "0x1007cc50", "name": "??3@YAXPAX@Z", "matching": 0.8333333333333334, "diff": [["@@ -0x10086260,6 +0x1007cc50,6 @@", [{"both": [["0x10086260", "mov eax, dword ptr [esp + 4]", "0x1007cc50"], ["0x10086264", "test eax, eax", "0x1007cc54"], ["0x10086266", "je 0x6", "0x1007cc56"], ["0x10086268", "push eax", "0x1007cc58"]]}, {"orig": [["0x10086269", "call <OFFSET1>"]], "recomp": [["0x1007cc59", "call _MemFreePtr@4 (FUNCTION)"]]}, {"both": [["0x1008626e", "ret ", "0x1007cc5e"]]}]]]}, {"address": "0x1008a090", "recomp": "0x100813c0", "name": "_malloc", "matching": 0.8444444444444444, "diff": [["@@ -0x1008a090,45 +0x100813c0,45 @@", [{"both": [["0x1008a090", "push ebx", "0x100813c0"]]}, {"orig": [["0x1008a091", "mov eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x100813c1", "mov eax, dword ptr [_MemDefaultPool (UNK)]"]]}, {"both": [["0x1008a096", "push esi", "0x100813c6"], ["0x1008a097", "push edi", "0x100813c7"], ["0x1008a098", "xor edi, edi", "0x100813c8"], ["0x1008a09a", "cmp eax, edi", "0x100813ca"], ["0x1008a09c", "jne 0x14", "0x100813cc"]]}, {"orig": [["0x1008a09e", "call <OFFSET2>"]], "recomp": [["0x100813ce", "call _MemInitDefaultPool@0 (FUNCTION)"]]}, {"both": [["0x1008a0a3", "test eax, eax", "0x100813d3"]]}, {"orig": [["0x1008a0a5", "mov eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x100813d5", "mov eax, dword ptr [_MemDefaultPool (UNK)]"]]}, {"both": [["0x1008a0aa", "jne 0x6", "0x100813da"], ["0x1008a0ac", "xor eax, eax", "0x100813dc"], ["0x1008a0ae", "pop edi", "0x100813de"], ["0x1008a0af", "pop esi", "0x100813df"], ["0x1008a0b0", "pop ebx", "0x100813e0"], ["0x1008a0b1", "ret ", "0x100813e1"], ["0x1008a0b2", "mov esi, dword ptr [esp + 0x10]", "0x100813e2"], ["0x1008a0b6", "test esi, esi", "0x100813e6"], ["0x1008a0b8", "jne 0x7", "0x100813e8"], ["0x1008a0ba", "mov esi, 4", "0x100813ea"], ["0x1008a0bf", "jmp 0x6", "0x100813ef"], ["0x1008a0c1", "add esi, 3", "0x100813f1"], ["0x1008a0c4", "and esi, 0xfffffffc", "0x100813f4"]]}, {"orig": [["0x1008a0c7", "test byte ptr [<OFFSET3>], 8"]], "recomp": [["0x100813f7", "test byte ptr [_MemDefaultPoolFlags (UNK)], 8"]]}, {"both": [["0x1008a0ce", "je 0x5", "0x100813fe"], ["0x1008a0d0", "mov edi, 1", "0x10081400"], ["0x1008a0d5", "push edi", "0x10081405"], ["0x1008a0d6", "push esi", "0x10081406"], ["0x1008a0d7", "push eax", "0x10081407"]]}, {"orig": [["0x1008a0d8", "call <OFFSET4>"]], "recomp": [["0x10081408", "call _MemAllocPtr@12 (FUNCTION)"]]}, {"both": [["0x1008a0dd", "mov ebx, eax", "0x1008140d"], ["0x1008a0df", "test ebx, ebx", "0x1008140f"], ["0x1008a0e1", "jne 0x14", "0x10081411"], ["0x1008a0e3", "push 1", "0x10081413"], ["0x1008a0e5", "push esi", "0x10081415"]]}, {"orig": [["0x1008a0e6", "call <OFFSET5>"]], "recomp": [["0x10081416", "call _shi_call_new_handler_msc (UNK)"]]}, {"both": [["0x1008a0eb", "add esp, 8", "0x1008141b"], ["0x1008a0ee", "test eax, eax", "0x1008141e"]]}, {"orig": [["0x1008a0f0", "mov eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x10081420", "mov eax, dword ptr [_MemDefaultPool (UNK)]"]]}, {"both": [["0x1008a0f5", "jne -0x22", "0x10081425"], ["0x1008a0f7", "mov eax, ebx", "0x10081427"], ["0x1008a0f9", "pop edi", "0x10081429"], ["0x1008a0fa", "pop esi", "0x1008142a"], ["0x1008a0fb", "pop ebx", "0x1008142b"], ["0x1008a0fc", "ret ", "0x1008142c"]]}]]]}, {"address": "0x1008a1c0", "recomp": "0x100814f0", "name": "_free", "matching": 0.8333333333333334, "diff": [["@@ -0x1008a1c0,6 +0x100814f0,6 @@", [{"both": [["0x1008a1c0", "mov eax, dword ptr [esp + 4]", "0x100814f0"], ["0x1008a1c4", "test eax, eax", "0x100814f4"], ["0x1008a1c6", "je 0x6", "0x100814f6"], ["0x1008a1c8", "push eax", "0x100814f8"]]}, {"orig": [["0x1008a1c9", "call <OFFSET1>"]], "recomp": [["0x100814f9", "call _MemFreePtr@4 (FUNCTION)"]]}, {"both": [["0x1008a1ce", "ret ", "0x100814fe"]]}]]]}, {"address": "0x1008b020", "recomp": "0x10082ab0", "name": "___CxxFrameHandler", "matching": 0.967741935483871, "diff": [["@@ -0x1008b034,20 +0x10082ac4,20 @@", [{"both": [["0x1008b034", "mov ecx, dword ptr [ebp + 0x14]", "0x10082ac4"], ["0x1008b037", "push 0", "0x10082ac7"], ["0x1008b039", "mov edx, dword ptr [ebp + 0x10]", "0x10082ac9"], ["0x1008b03c", "push eax", "0x10082acc"], ["0x1008b03d", "push ecx", "0x10082acd"], ["0x1008b03e", "push edx", "0x10082ace"], ["0x1008b03f", "mov eax, dword ptr [ebp + 0xc]", "0x10082acf"], ["0x1008b042", "push eax", "0x10082ad2"], ["0x1008b043", "mov ecx, dword ptr [ebp + 8]", "0x10082ad3"], ["0x1008b046", "push ecx", "0x10082ad6"]]}, {"orig": [["0x1008b047", "call <OFFSET1>"]], "recomp": [["0x10082ad7", "call ___InternalCxxFrameHandler (UNK)"]]}, {"both": [["0x1008b04c", "add esp, 0x20", "0x10082adc"], ["0x1008b04f", "mov dword ptr [ebp - 4], eax", "0x10082adf"], ["0x1008b052", "pop edi", "0x10082ae2"], ["0x1008b053", "pop esi", "0x10082ae3"], ["0x1008b054", "pop ebx", "0x10082ae4"], ["0x1008b055", "mov eax, dword ptr [ebp - 4]", "0x10082ae5"], ["0x1008b058", "mov esp, ebp", "0x10082ae8"], ["0x1008b05a", "pop ebp", "0x10082aea"], ["0x1008b05b", "ret ", "0x10082aeb"]]}]]]}, {"address": "0x1008b3dc", "recomp": "0x10082e9c", "name": "__CIacos", "matching": 0.5, "diff": [["@@ -0x1008b3dc,2 +0x10082e9c,2 @@", [{"orig": [["0x1008b3dc", "mov edx, <OFFSET1>"]], "recomp": [["0x10082e9c", "mov edx, __OP_ACOSjmptab (UNK)"]]}, {"both": [["0x1008b3e1", "jmp -0xc", "0x10082ea1"]]}]]]}, {"address": "0x1008b400", "recomp": "0x10082ed0", "name": "_atol", "matching": 0.9142857142857143, "diff": [["@@ -0x1008b400,55 +0x10082ed0,55 @@", [{"both": [["0x1008b400", "push ebx", "0x10082ed0"], ["0x1008b401", "push esi", "0x10082ed1"], ["0x1008b402", "mov esi, dword ptr [esp + 0xc]", "0x10082ed2"], ["0x1008b406", "push edi", "0x10082ed6"], ["0x1008b407", "push ebp", "0x10082ed7"], ["0x1008b408", "mov edi, 1", "0x10082ed8"]]}, {"orig": [["0x1008b40d", "cmp dword ptr [<OFFSET1>], edi"]], "recomp": [["0x10082edd", "cmp dword ptr [___mb_cur_max (UNK)], edi"]]}, {"both": [["0x1008b413", "jle 0x11", "0x10082ee3"], ["0x1008b415", "push 8", "0x10082ee5"], ["0x1008b417", "xor eax, eax", "0x10082ee7"], ["0x1008b419", "mov al, byte ptr [esi]", "0x10082ee9"], ["0x1008b41b", "push eax", "0x10082eeb"]]}, {"orig": [["0x1008b41c", "call <OFFSET2>"]], "recomp": [["0x10082eec", "call __isctype (UNK)"]]}, {"both": [["0x1008b421", "add esp, 8", "0x10082ef1"], ["0x1008b424", "jmp 0x13", "0x10082ef4"], ["0x1008b426", "xor edx, edx", "0x10082ef6"]]}, {"orig": [["0x1008b428", "mov ecx, dword ptr [<OFFSET3>]"]], "recomp": [["0x10082ef8", "mov ecx, dword ptr [__pctype (UNK)]"]]}, {"both": [["0x1008b42e", "mov dl, byte ptr [esi]", "0x10082efe"], ["0x1008b430", "xor eax, eax", "0x10082f00"], ["0x1008b432", "mov ax, word ptr [ecx + edx*2]", "0x10082f02"], ["0x1008b436", "and eax, 8", "0x10082f06"], ["0x1008b439", "test eax, eax", "0x10082f09"], ["0x1008b43b", "je 0x3", "0x10082f0b"], ["0x1008b43d", "inc esi", "0x10082f0d"], ["0x1008b43e", "jmp -0x33", "0x10082f0e"], ["0x1008b440", "xor ebx, ebx", "0x10082f10"], ["0x1008b442", "mov bl, byte ptr [esi]", "0x10082f12"], ["0x1008b444", "inc esi", "0x10082f14"], ["0x1008b445", "mov edi, ebx", "0x10082f15"], ["0x1008b447", "cmp ebx, 0x2d", "0x10082f17"], ["0x1008b44a", "je 0x5", "0x10082f1a"], ["0x1008b44c", "cmp ebx, 0x2b", "0x10082f1c"], ["0x1008b44f", "jne 0x5", "0x10082f1f"], ["0x1008b451", "xor ebx, ebx", "0x10082f21"], ["0x1008b453", "mov bl, byte ptr [esi]", "0x10082f23"], ["0x1008b455", "inc esi", "0x10082f25"], ["0x1008b456", "xor ebp, ebp", "0x10082f26"]]}, {"orig": [["0x1008b458", "cmp dword ptr [<OFFSET1>], 1"]], "recomp": [["0x10082f28", "cmp dword ptr [___mb_cur_max (UNK)], 1"]]}, {"both": [["0x1008b45f", "jle 0xd", "0x10082f2f"], ["0x1008b461", "push 4", "0x10082f31"], ["0x1008b463", "push ebx", "0x10082f33"]]}, {"orig": [["0x1008b464", "call <OFFSET2>"]], "recomp": [["0x10082f34", "call __isctype (UNK)"]]}, {"both": [["0x1008b469", "add esp, 8", "0x10082f39"], ["0x1008b46c", "jmp 0xf", "0x10082f3c"]]}, {"orig": [["0x1008b46e", "mov ecx, dword ptr [<OFFSET3>]"]], "recomp": [["0x10082f3e", "mov ecx, dword ptr [__pctype (UNK)]"]]}, {"both": [["0x1008b474", "xor eax, eax", "0x10082f44"], ["0x1008b476", "mov ax, word ptr [ecx + ebx*2]", "0x10082f46"], ["0x1008b47a", "and eax, 4", "0x10082f4a"], ["0x1008b47d", "test eax, eax", "0x10082f4d"], ["0x1008b47f", "je 0x10", "0x10082f4f"], ["0x1008b481", "lea eax, [ebp + ebp*4]", "0x10082f51"], ["0x1008b485", "inc esi", "0x10082f55"], ["0x1008b486", "lea ebp, [ebx + eax*2 - 0x30]", "0x10082f56"], ["0x1008b48a", "xor ebx, ebx", "0x10082f5a"], ["0x1008b48c", "mov bl, byte ptr [esi - 1]", "0x10082f5c"]]}]]]}, {"address": "0x1008b4b0", "recomp": "0x10082f80", "name": "_atoi", "matching": 1.0, "diff": []}, {"address": "0x1008b4c0", "recomp": "0x10083070", "name": "_strtok", "matching": 0.9887640449438202, "diff": [["@@ -0x1008b4c0,17 +0x10083070,17 @@", [{"both": [["0x1008b4c0", "sub esp, 0x20", "0x10083070"], ["0x1008b4c3", "push ebx", "0x10083073"], ["0x1008b4c4", "push esi", "0x10083074"], ["0x1008b4c5", "mov esi, dword ptr [esp + 0x30]", "0x10083075"], ["0x1008b4c9", "push edi", "0x10083079"], ["0x1008b4ca", "push ebp", "0x1008307a"]]}, {"orig": [["0x1008b4cb", "call <OFFSET1>"]], "recomp": [["0x1008307b", "call __getptd (UNK)"]]}, {"both": [["0x1008b4d0", "mov ebp, eax", "0x10083080"], ["0x1008b4d2", "lea edi, [esp + 0x10]", "0x10083082"], ["0x1008b4d6", "xor eax, eax", "0x10083086"], ["0x1008b4d8", "mov ecx, 8", "0x10083088"], ["0x1008b4dd", "rep stosd dword ptr es:[edi], eax", "0x1008308d"], ["0x1008b4df", "mov al, byte ptr [esi]", "0x1008308f"], ["0x1008b4e1", "xor ebx, ebx", "0x10083091"], ["0x1008b4e3", "mov cl, al", "0x10083093"], ["0x1008b4e5", "mov dl, 1", "0x10083095"], ["0x1008b4e7", "shr cl, 3", "0x10083097"]]}]]]}, {"address": "0x1008b5a0", "recomp": "0x100831a0", "name": "_sprintf", "matching": 0.9411764705882353, "diff": [["@@ -0x1008b5ab,31 +0x100831ab,31 @@", [{"both": [["0x1008b5ab", "push esi", "0x100831ab"], ["0x1008b5ac", "mov dword ptr [esp + 0x10], 0x42", "0x100831ac"], ["0x1008b5b4", "mov dword ptr [esp + 0xc], eax", "0x100831b4"], ["0x1008b5b8", "push ecx", "0x100831b8"], ["0x1008b5b9", "mov dword ptr [esp + 8], eax", "0x100831b9"], ["0x1008b5bd", "lea eax, [esp + 8]", "0x100831bd"], ["0x1008b5c1", "mov dword ptr [esp + 0xc], 0x7fffffff", "0x100831c1"], ["0x1008b5c9", "mov edx, dword ptr [esp + 0x30]", "0x100831c9"], ["0x1008b5cd", "push edx", "0x100831cd"], ["0x1008b5ce", "push eax", "0x100831ce"]]}, {"orig": [["0x1008b5cf", "call <OFFSET1>"]], "recomp": [["0x100831cf", "call __output (UNK)"]]}, {"both": [["0x1008b5d4", "add esp, 0xc", "0x100831d4"], ["0x1008b5d7", "mov esi, eax", "0x100831d7"], ["0x1008b5d9", "dec dword ptr [esp + 8]", "0x100831d9"], ["0x1008b5dd", "js 0x12", "0x100831dd"], ["0x1008b5df", "mov eax, dword ptr [esp + 4]", "0x100831df"], ["0x1008b5e3", "mov byte ptr [eax], 0", "0x100831e3"], ["0x1008b5e6", "mov eax, esi", "0x100831e6"], ["0x1008b5e8", "inc dword ptr [esp + 4]", "0x100831e8"], ["0x1008b5ec", "pop esi", "0x100831ec"], ["0x1008b5ed", "add esp, 0x20", "0x100831ed"], ["0x1008b5f0", "ret ", "0x100831f0"], ["0x1008b5f1", "lea eax, [esp + 4]", "0x100831f1"], ["0x1008b5f5", "push eax", "0x100831f5"], ["0x1008b5f6", "push 0", "0x100831f6"]]}, {"orig": [["0x1008b5f8", "call <OFFSET2>"]], "recomp": [["0x100831f8", "call __flsbuf (UNK)"]]}, {"both": [["0x1008b5fd", "add esp, 8", "0x100831fd"], ["0x1008b600", "mov eax, esi", "0x10083200"], ["0x1008b602", "pop esi", "0x10083202"], ["0x1008b603", "add esp, 0x20", "0x10083203"], ["0x1008b606", "ret ", "0x10083206"]]}]]]}, {"address": "0x1008b608", "recomp": "0x10083208", "name": "__ftol", "matching": 1.0, "diff": []}, {"address": "0x1008b630", "recomp": "0x100834f0", "name": "_srand", "matching": 0.75, "diff": [["@@ -0x1008b630,4 +0x100834f0,4 @@", [{"orig": [["0x1008b630", "call <OFFSET1>"]], "recomp": [["0x100834f0", "call __getptd (UNK)"]]}, {"both": [["0x1008b635", "mov ecx, dword ptr [esp + 4]", "0x100834f5"], ["0x1008b639", "mov dword ptr [eax + 0x14], ecx", "0x100834f9"], ["0x1008b63c", "ret ", "0x100834fc"]]}]]]}, {"address": "0x1008b640", "recomp": "0x10083500", "name": "_rand", "matching": 0.9333333333333333, "diff": [["@@ -0x1008b640,11 +0x10083500,11 @@", [{"orig": [["0x1008b640", "call <OFFSET1>"]], "recomp": [["0x10083500", "call __getptd (UNK)"]]}, {"both": [["0x1008b645", "mov ecx, dword ptr [eax + 0x14]", "0x10083505"], ["0x1008b648", "mov edx, ecx", "0x10083508"], ["0x1008b64a", "lea ecx, [ecx + ecx*4]", "0x1008350a"], ["0x1008b64d", "lea ecx, [ecx + ecx*4]", "0x1008350d"], ["0x1008b650", "add ecx, edx", "0x10083510"], ["0x1008b652", "lea ecx, [edx + ecx*8]", "0x10083512"], ["0x1008b655", "shl ecx, 8", "0x10083515"], ["0x1008b658", "sub ecx, edx", "0x10083518"], ["0x1008b65a", "lea ecx, [edx + ecx*4 + 0x269ec3]", "0x1008351a"], ["0x1008b661", "mov dword ptr [eax + 0x14], ecx", "0x10083521"]]}]]]}, {"address": "0x1008b670", "recomp": "0x10082ec0", "name": "__purecall", "matching": 0.75, "diff": [["@@ -0x1008b670,4 +0x10082ec0,4 @@", [{"both": [["0x1008b670", "push 0x19", "0x10082ec0"]]}, {"orig": [["0x1008b672", "call <OFFSET1>"]], "recomp": [["0x10082ec2", "call __amsg_exit (UNK)"]]}, {"both": [["0x1008b677", "add esp, 4", "0x10082ec7"], ["0x1008b67a", "ret ", "0x10082eca"]]}]]]}, {"address": "0x1008b680", "recomp": "0x10084380", "name": "_strncmp", "matching": 1.0, "diff": []}, {"address": "0x1008b6c0", "recomp": "0x10083550", "name": "_atof", "matching": 0.9069767441860465, "diff": [["@@ -0x1008b6c0,43 +0x10083550,43 @@", [{"both": [["0x1008b6c0", "sub esp, 0x18", "0x10083550"], ["0x1008b6c3", "push esi", "0x10083553"], ["0x1008b6c4", "push edi", "0x10083554"], ["0x1008b6c5", "mov esi, dword ptr [esp + 0x24]", "0x10083555"], ["0x1008b6c9", "mov edi, 1", "0x10083559"]]}, {"orig": [["0x1008b6ce", "cmp dword ptr [<OFFSET1>], edi"]], "recomp": [["0x1008355e", "cmp dword ptr [___mb_cur_max (UNK)], edi"]]}, {"both": [["0x1008b6d4", "jle 0x11", "0x10083564"], ["0x1008b6d6", "push 8", "0x10083566"], ["0x1008b6d8", "xor eax, eax", "0x10083568"], ["0x1008b6da", "mov al, byte ptr [esi]", "0x1008356a"], ["0x1008b6dc", "push eax", "0x1008356c"]]}, {"orig": [["0x1008b6dd", "call <OFFSET2>"]], "recomp": [["0x1008356d", "call __isctype (UNK)"]]}, {"both": [["0x1008b6e2", "add esp, 8", "0x10083572"], ["0x1008b6e5", "jmp 0x13", "0x10083575"], ["0x1008b6e7", "xor edx, edx", "0x10083577"]]}, {"orig": [["0x1008b6e9", "mov ecx, dword ptr [<OFFSET3>]"]], "recomp": [["0x10083579", "mov ecx, dword ptr [__pctype (UNK)]"]]}, {"both": [["0x1008b6ef", "mov dl, byte ptr [esi]", "0x1008357f"], ["0x1008b6f1", "xor eax, eax", "0x10083581"], ["0x1008b6f3", "mov ax, word ptr [ecx + edx*2]", "0x10083583"], ["0x1008b6f7", "and eax, 8", "0x10083587"], ["0x1008b6fa", "test eax, eax", "0x1008358a"], ["0x1008b6fc", "je 0x3", "0x1008358c"], ["0x1008b6fe", "inc esi", "0x1008358e"], ["0x1008b6ff", "jmp -0x33", "0x1008358f"], ["0x1008b701", "push 0", "0x10083591"], ["0x1008b703", "mov edi, esi", "0x10083593"], ["0x1008b705", "push 0", "0x10083595"], ["0x1008b707", "mov ecx, 0xffffffff", "0x10083597"], ["0x1008b70c", "sub eax, eax", "0x1008359c"], ["0x1008b70e", "repne scasb al, byte ptr es:[edi]", "0x1008359e"], ["0x1008b710", "not ecx", "0x100835a0"], ["0x1008b712", "dec ecx", "0x100835a2"], ["0x1008b713", "lea eax, [esp + 0x10]", "0x100835a3"], ["0x1008b717", "push ecx", "0x100835a7"], ["0x1008b718", "push esi", "0x100835a8"], ["0x1008b719", "push eax", "0x100835a9"]]}, {"orig": [["0x1008b71a", "call <OFFSET4>"]], "recomp": [["0x100835aa", "call __fltin2 (UNK)"]]}, {"both": [["0x1008b71f", "fld qword ptr [eax + 0x10]", "0x100835af"], ["0x1008b722", "add esp, 0x14", "0x100835b2"], ["0x1008b725", "pop edi", "0x100835b5"], ["0x1008b726", "pop esi", "0x100835b6"], ["0x1008b727", "add esp, 0x18", "0x100835b7"], ["0x1008b72a", "ret ", "0x100835ba"]]}]]]}, {"address": "0x1008b730", "recomp": "0x100843e0", "name": "_fprintf", "matching": 0.8387096774193549, "diff": [["@@ -0x1008b730,31 +0x100843e0,31 @@", [{"both": [["0x1008b730", "push ebx", "0x100843e0"], ["0x1008b731", "push esi", "0x100843e1"], ["0x1008b732", "mov esi, dword ptr [esp + 0xc]", "0x100843e2"], ["0x1008b736", "push edi", "0x100843e6"], ["0x1008b737", "push esi", "0x100843e7"]]}, {"orig": [["0x1008b738", "call <OFFSET1>"]], "recomp": [["0x100843e8", "call __lock_file (UNK)"]]}, {"both": [["0x1008b73d", "add esp, 4", "0x100843ed"], ["0x1008b740", "push esi", "0x100843f0"]]}, {"orig": [["0x1008b741", "call <OFFSET2>"]], "recomp": [["0x100843f1", "call __stbuf (UNK)"]]}, {"both": [["0x1008b746", "mov ecx, dword ptr [esp + 0x18]", "0x100843f6"], ["0x1008b74a", "add esp, 4", "0x100843fa"], ["0x1008b74d", "mov edi, eax", "0x100843fd"], ["0x1008b74f", "lea eax, [esp + 0x18]", "0x100843ff"], ["0x1008b753", "push eax", "0x10084403"], ["0x1008b754", "push ecx", "0x10084404"], ["0x1008b755", "push esi", "0x10084405"]]}, {"orig": [["0x1008b756", "call <OFFSET3>"]], "recomp": [["0x10084406", "call __output (UNK)"]]}, {"both": [["0x1008b75b", "add esp, 0xc", "0x1008440b"], ["0x1008b75e", "mov ebx, eax", "0x1008440e"], ["0x1008b760", "push esi", "0x10084410"], ["0x1008b761", "push edi", "0x10084411"]]}, {"orig": [["0x1008b762", "call <OFFSET4>"]], "recomp": [["0x10084412", "call __ftbuf (UNK)"]]}, {"both": [["0x1008b767", "add esp, 8", "0x10084417"], ["0x1008b76a", "push esi", "0x1008441a"]]}, {"orig": [["0x1008b76b", "call <OFFSET5>"]], "recomp": [["0x1008441b", "call __unlock_file (UNK)"]]}, {"both": [["0x1008b770", "add esp, 4", "0x10084420"], ["0x1008b773", "mov eax, ebx", "0x10084423"], ["0x1008b775", "pop edi", "0x10084425"], ["0x1008b776", "pop esi", "0x10084426"], ["0x1008b777", "pop ebx", "0x10084427"], ["0x1008b778", "ret ", "0x10084428"]]}]]]}, {"address": "0x1008b780", "recomp": "0x100841b0", "name": "_fwrite", "matching": 0.8695652173913043, "diff": [["@@ -0x1008b780,23 +0x100841b0,23 @@", [{"both": [["0x1008b780", "push esi", "0x100841b0"], ["0x1008b781", "push edi", "0x100841b1"], ["0x1008b782", "mov esi, dword ptr [esp + 0x18]", "0x100841b2"], ["0x1008b786", "push esi", "0x100841b6"]]}, {"orig": [["0x1008b787", "call <OFFSET1>"]], "recomp": [["0x100841b7", "call __lock_file (UNK)"]]}, {"both": [["0x1008b78c", "mov eax, dword ptr [esp + 0x18]", "0x100841bc"], ["0x1008b790", "mov ecx, dword ptr [esp + 0x14]", "0x100841c0"], ["0x1008b794", "mov edx, dword ptr [esp + 0x10]", "0x100841c4"], ["0x1008b798", "add esp, 4", "0x100841c8"], ["0x1008b79b", "push esi", "0x100841cb"], ["0x1008b79c", "push eax", "0x100841cc"], ["0x1008b79d", "push ecx", "0x100841cd"], ["0x1008b79e", "push edx", "0x100841ce"]]}, {"orig": [["0x1008b79f", "call <OFFSET2>"]], "recomp": [["0x100841cf", "call __fwrite_lk (UNK)"]]}, {"both": [["0x1008b7a4", "add esp, 0x10", "0x100841d4"], ["0x1008b7a7", "mov edi, eax", "0x100841d7"], ["0x1008b7a9", "push esi", "0x100841d9"]]}, {"orig": [["0x1008b7aa", "call <OFFSET3>"]], "recomp": [["0x100841da", "call __unlock_file (UNK)"]]}, {"both": [["0x1008b7af", "add esp, 4", "0x100841df"], ["0x1008b7b2", "mov eax, edi", "0x100841e2"], ["0x1008b7b4", "pop edi", "0x100841e4"], ["0x1008b7b5", "pop esi", "0x100841e5"], ["0x1008b7b6", "ret ", "0x100841e6"]]}]]]}, {"address": "0x1008b950", "recomp": "0x10083920", "name": "_fread", "matching": 0.8695652173913043, "diff": [["@@ -0x1008b950,23 +0x10083920,23 @@", [{"both": [["0x1008b950", "push esi", "0x10083920"], ["0x1008b951", "push edi", "0x10083921"], ["0x1008b952", "mov esi, dword ptr [esp + 0x18]", "0x10083922"], ["0x1008b956", "push esi", "0x10083926"]]}, {"orig": [["0x1008b957", "call <OFFSET1>"]], "recomp": [["0x10083927", "call __lock_file (UNK)"]]}, {"both": [["0x1008b95c", "mov eax, dword ptr [esp + 0x18]", "0x1008392c"], ["0x1008b960", "mov ecx, dword ptr [esp + 0x14]", "0x10083930"], ["0x1008b964", "mov edx, dword ptr [esp + 0x10]", "0x10083934"], ["0x1008b968", "add esp, 4", "0x10083938"], ["0x1008b96b", "push esi", "0x1008393b"], ["0x1008b96c", "push eax", "0x1008393c"], ["0x1008b96d", "push ecx", "0x1008393d"], ["0x1008b96e", "push edx", "0x1008393e"]]}, {"orig": [["0x1008b96f", "call <OFFSET2>"]], "recomp": [["0x1008393f", "call __fread_lk (UNK)"]]}, {"both": [["0x1008b974", "add esp, 0x10", "0x10083944"], ["0x1008b977", "mov edi, eax", "0x10083947"], ["0x1008b979", "push esi", "0x10083949"]]}, {"orig": [["0x1008b97a", "call <OFFSET3>"]], "recomp": [["0x1008394a", "call __unlock_file (UNK)"]]}, {"both": [["0x1008b97f", "add esp, 4", "0x1008394f"], ["0x1008b982", "mov eax, edi", "0x10083952"], ["0x1008b984", "pop edi", "0x10083954"], ["0x1008b985", "pop esi", "0x10083955"], ["0x1008b986", "ret ", "0x10083956"]]}]]]}, {"address": "0x1008bbd0", "recomp": "0x100835c0", "name": "_fclose", "matching": 0.88, "diff": [["@@ -0x1008bbd2,23 +0x100835c2,23 @@", [{"both": [["0x1008bbd2", "mov edi, 0xffffffff", "0x100835c2"], ["0x1008bbd7", "mov esi, dword ptr [esp + 0xc]", "0x100835c7"], ["0x1008bbdb", "test byte ptr [esi + 0xc], 0x40", "0x100835cb"], ["0x1008bbdf", "je 0xc", "0x100835cf"], ["0x1008bbe1", "mov dword ptr [esi + 0xc], 0", "0x100835d1"], ["0x1008bbe8", "mov eax, edi", "0x100835d8"], ["0x1008bbea", "pop edi", "0x100835da"], ["0x1008bbeb", "pop esi", "0x100835db"], ["0x1008bbec", "ret ", "0x100835dc"], ["0x1008bbed", "push esi", "0x100835dd"]]}, {"orig": [["0x1008bbee", "call <OFFSET1>"]], "recomp": [["0x100835de", "call __lock_file (UNK)"]]}, {"both": [["0x1008bbf3", "add esp, 4", "0x100835e3"], ["0x1008bbf6", "push esi", "0x100835e6"]]}, {"orig": [["0x1008bbf7", "call <OFFSET2>"]], "recomp": [["0x100835e7", "call __fclose_lk (UNK)"]]}, {"both": [["0x1008bbfc", "add esp, 4", "0x100835ec"], ["0x1008bbff", "mov edi, eax", "0x100835ef"], ["0x1008bc01", "push esi", "0x100835f1"]]}, {"orig": [["0x1008bc02", "call <OFFSET3>"]], "recomp": [["0x100835f2", "call __unlock_file (UNK)"]]}, {"both": [["0x1008bc07", "add esp, 4", "0x100835f7"], ["0x1008bc0a", "mov eax, edi", "0x100835fa"], ["0x1008bc0c", "pop edi", "0x100835fc"], ["0x1008bc0d", "pop esi", "0x100835fd"], ["0x1008bc0e", "ret ", "0x100835fe"]]}]]]}, {"address": "0x1008bdd0", "recomp": "0x10083740", "name": "_ftell", "matching": 0.8235294117647058, "diff": [["@@ -0x1008bdd0,17 +0x10083740,17 @@", [{"both": [["0x1008bdd0", "push esi", "0x10083740"], ["0x1008bdd1", "push edi", "0x10083741"], ["0x1008bdd2", "mov esi, dword ptr [esp + 0xc]", "0x10083742"], ["0x1008bdd6", "push esi", "0x10083746"]]}, {"orig": [["0x1008bdd7", "call <OFFSET1>"]], "recomp": [["0x10083747", "call __lock_file (UNK)"]]}, {"both": [["0x1008bddc", "add esp, 4", "0x1008374c"], ["0x1008bddf", "push esi", "0x1008374f"]]}, {"orig": [["0x1008bde0", "call <OFFSET2>"]], "recomp": [["0x10083750", "call __ftell_lk (UNK)"]]}, {"both": [["0x1008bde5", "add esp, 4", "0x10083755"], ["0x1008bde8", "mov edi, eax", "0x10083758"], ["0x1008bdea", "push esi", "0x1008375a"]]}, {"orig": [["0x1008bdeb", "call <OFFSET3>"]], "recomp": [["0x1008375b", "call __unlock_file (UNK)"]]}, {"both": [["0x1008bdf0", "add esp, 4", "0x10083760"], ["0x1008bdf3", "mov eax, edi", "0x10083763"], ["0x1008bdf5", "pop edi", "0x10083765"], ["0x1008bdf6", "pop esi", "0x10083766"], ["0x1008bdf7", "ret ", "0x10083767"]]}]]]}, {"address": "0x1008bff0", "recomp": "0x10083af0", "name": "_fopen", "matching": 0.875, "diff": [["@@ -0x1008bff0,8 +0x10083af0,8 @@", [{"both": [["0x1008bff0", "mov eax, dword ptr [esp + 8]", "0x10083af0"], ["0x1008bff4", "push 0x40", "0x10083af4"], ["0x1008bff6", "mov ecx, dword ptr [esp + 8]", "0x10083af6"], ["0x1008bffa", "push eax", "0x10083afa"], ["0x1008bffb", "push ecx", "0x10083afb"]]}, {"orig": [["0x1008bffc", "call <OFFSET1>"]], "recomp": [["0x10083afc", "call __fsopen (UNK)"]]}, {"both": [["0x1008c001", "add esp, 0xc", "0x10083b01"], ["0x1008c004", "ret ", "0x10083b04"]]}]]]}, {"address": "0x1008c010", "recomp": "0x10083230", "name": "_strncpy", "matching": 1.0, "diff": []}, {"address": "0x1008c110", "recomp": "0x10095290", "name": "__strcmpi", "matching": 0.9047619047619048, "diff": [["@@ -0x1008c110,18 +0x10095290,18 @@", [{"both": [["0x1008c110", "push ebp", "0x10095290"], ["0x1008c111", "mov ebp, esp", "0x10095291"], ["0x1008c113", "push edi", "0x10095293"], ["0x1008c114", "push esi", "0x10095294"], ["0x1008c115", "push ebx", "0x10095295"], ["0x1008c116", "mov esi, dword ptr [ebp + 0xc]", "0x10095296"], ["0x1008c119", "mov edi, dword ptr [ebp + 8]", "0x10095299"]]}, {"orig": [["0x1008c11c", "lea eax, [<OFFSET1>]"]], "recomp": [["0x1009529c", "lea eax, [___lc_handle (UNK)]"]]}, {"both": [["0x1008c122", "cmp dword ptr [eax + 8], 0", "0x100952a2"], ["0x1008c126", "jne 0x3b", "0x100952a6"], ["0x1008c128", "mov al, 0xff", "0x100952a8"], ["0x1008c12a", "mov eax, eax", "0x100952aa"], ["0x1008c12c", "or al, al", "0x100952ac"], ["0x1008c12e", "je 0x2e", "0x100952ae"], ["0x1008c130", "mov al, byte ptr [esi]", "0x100952b0"], ["0x1008c132", "inc esi", "0x100952b2"], ["0x1008c133", "mov ah, byte ptr [edi]", "0x100952b3"], ["0x1008c135", "inc edi", "0x100952b5"]]}]], ["@@ -0x1008c14d,55 +0x100952cd,55 @@", [{"both": [["0x1008c14d", "sbb cl, cl", "0x100952cd"], ["0x1008c14f", "and cl, 0x20", "0x100952cf"], ["0x1008c152", "add al, cl", "0x100952d2"], ["0x1008c154", "add al, 0x41", "0x100952d4"], ["0x1008c156", "cmp al, ah", "0x100952d6"], ["0x1008c158", "je -0x2e", "0x100952d8"], ["0x1008c15a", "sbb al, al", "0x100952da"], ["0x1008c15c", "sbb al, 0xff", "0x100952dc"], ["0x1008c15e", "movsx eax, al", "0x100952de"], ["0x1008c161", "jmp 0x6f", "0x100952e1"]]}, {"orig": [["0x1008c163", "cmp dword ptr [<OFFSET2>], 0"]], "recomp": [["0x100952e3", "cmp dword ptr [___setlc_active (UNK)], 0"]]}, {"both": [["0x1008c16a", "jg 0xa", "0x100952ea"]]}, {"orig": [["0x1008c16c", "inc dword ptr [<OFFSET3>]"]], "recomp": [["0x100952ec", "inc dword ptr [___unguarded_readlc_active (UNK)]"]]}, {"both": [["0x1008c172", "push 0", "0x100952f2"], ["0x1008c174", "jmp 0xe", "0x100952f4"], ["0x1008c176", "push 0x13", "0x100952f6"]]}, {"orig": [["0x1008c178", "call <OFFSET4>"]], "recomp": [["0x100952f8", "call __lock (UNK)"]]}, {"both": [["0x1008c17d", "mov dword ptr [esp], 1", "0x100952fd"], ["0x1008c184", "mov eax, 0xff", "0x10095304"], ["0x1008c189", "xor ebx, ebx", "0x10095309"], ["0x1008c18b", "nop ", "0x1009530b"], ["0x1008c18c", "or al, al", "0x1009530c"], ["0x1008c18e", "je 0x27", "0x1009530e"], ["0x1008c190", "mov al, byte ptr [esi]", "0x10095310"], ["0x1008c192", "inc esi", "0x10095312"], ["0x1008c193", "mov bl, byte ptr [edi]", "0x10095313"], ["0x1008c195", "inc edi", "0x10095315"], ["0x1008c196", "cmp al, bl", "0x10095316"], ["0x1008c198", "je -0xe", "0x10095318"], ["0x1008c19a", "push eax", "0x1009531a"], ["0x1008c19b", "push ebx", "0x1009531b"]]}, {"orig": [["0x1008c19c", "call <OFFSET5>"]], "recomp": [["0x1009531c", "call __tolower_lk (UNK)"]]}, {"both": [["0x1008c1a1", "mov ebx, eax", "0x10095321"], ["0x1008c1a3", "add esp, 4", "0x10095323"]]}, {"orig": [["0x1008c1a6", "call <OFFSET5>"]], "recomp": [["0x10095326", "call __tolower_lk (UNK)"]]}, {"both": [["0x1008c1ab", "add esp, 4", "0x1009532b"], ["0x1008c1ae", "cmp bl, al", "0x1009532e"], ["0x1008c1b0", "je -0x26", "0x10095330"], ["0x1008c1b2", "sbb eax, eax", "0x10095332"], ["0x1008c1b4", "sbb eax, -1", "0x10095334"], ["0x1008c1b7", "mov ebx, eax", "0x10095337"], ["0x1008c1b9", "pop eax", "0x10095339"], ["0x1008c1ba", "or eax, eax", "0x1009533a"], ["0x1008c1bc", "jne 0x8", "0x1009533c"]]}, {"orig": [["0x1008c1be", "dec dword ptr [<OFFSET3>]"]], "recomp": [["0x1009533e", "dec dword ptr [___unguarded_readlc_active (UNK)]"]]}, {"both": [["0x1008c1c4", "jmp 0xa", "0x10095344"], ["0x1008c1c6", "push 0x13", "0x10095346"]]}, {"orig": [["0x1008c1c8", "call <OFFSET6>"]], "recomp": [["0x10095348", "call __unlock (UNK)"]]}, {"both": [["0x1008c1cd", "add esp, 4", "0x1009534d"], ["0x1008c1d0", "mov eax, ebx", "0x10095350"], ["0x1008c1d2", "pop ebx", "0x10095352"], ["0x1008c1d3", "pop esi", "0x10095353"], ["0x1008c1d4", "pop edi", "0x10095354"], ["0x1008c1d5", "leave ", "0x10095355"], ["0x1008c1d6", "ret ", "0x10095356"]]}]]]}, {"address": "0x1008c1e0", "recomp": "0x10083530", "name": "__spawnl", "matching": 0.9, "diff": [["@@ -0x1008c1e0,10 +0x10083530,10 @@", [{"both": [["0x1008c1e0", "lea eax, [esp + 0xc]", "0x10083530"], ["0x1008c1e4", "push 0", "0x10083534"], ["0x1008c1e6", "mov ecx, dword ptr [esp + 0xc]", "0x10083536"], ["0x1008c1ea", "push eax", "0x1008353a"], ["0x1008c1eb", "mov edx, dword ptr [esp + 0xc]", "0x1008353b"], ["0x1008c1ef", "push ecx", "0x1008353f"], ["0x1008c1f0", "push edx", "0x10083540"]]}, {"orig": [["0x1008c1f1", "call <OFFSET1>"]], "recomp": [["0x10083541", "call __spawnve (UNK)"]]}, {"both": [["0x1008c1f6", "add esp, 0x10", "0x10083546"], ["0x1008c1f9", "ret ", "0x10083549"]]}]]]}, {"address": "0x1008c200", "recomp": "0x10084160", "name": "_sscanf", "matching": 0.9565217391304348, "diff": [["@@ -0x1008c21f,15 +0x1008417f,15 @@", [{"both": [["0x1008c21f", "repne scasb al, byte ptr es:[edi]", "0x1008417f"], ["0x1008c221", "not ecx", "0x10084181"], ["0x1008c223", "dec ecx", "0x10084183"], ["0x1008c224", "lea eax, [esp + 0x30]", "0x10084184"], ["0x1008c228", "mov dword ptr [esp + 8], ecx", "0x10084188"], ["0x1008c22c", "push eax", "0x1008418c"], ["0x1008c22d", "mov edx, dword ptr [esp + 0x30]", "0x1008418d"], ["0x1008c231", "lea ecx, [esp + 8]", "0x10084191"], ["0x1008c235", "push edx", "0x10084195"], ["0x1008c236", "push ecx", "0x10084196"]]}, {"orig": [["0x1008c237", "call <OFFSET1>"]], "recomp": [["0x10084197", "call __input (UNK)"]]}, {"both": [["0x1008c23c", "add esp, 0xc", "0x1008419c"], ["0x1008c23f", "pop edi", "0x1008419f"], ["0x1008c240", "add esp, 0x20", "0x100841a0"], ["0x1008c243", "ret ", "0x100841a3"]]}]]]}, {"address": "0x1008c410", "recomp": "0x10096fc0", "name": "_strlwr", "matching": 0.9312977099236641, "diff": [["@@ -0x1008c43d,38 +0x10096fed,38 @@", [{"both": [["0x1008c43d", "inc eax", "0x10096fed"], ["0x1008c43e", "cmp byte ptr [eax], 0", "0x10096fee"], ["0x1008c441", "jne -0x17", "0x10096ff1"], ["0x1008c443", "mov eax, ebx", "0x10096ff3"], ["0x1008c445", "pop ebp", "0x10096ff5"], ["0x1008c446", "pop edi", "0x10096ff6"], ["0x1008c447", "pop esi", "0x10096ff7"], ["0x1008c448", "pop ebx", "0x10096ff8"], ["0x1008c449", "add esp, 4", "0x10096ff9"], ["0x1008c44c", "ret ", "0x10096ffc"]]}, {"orig": [["0x1008c44d", "cmp dword ptr [<OFFSET2>], 0"]], "recomp": [["0x10096ffd", "cmp dword ptr [___setlc_active (UNK)], 0"]]}, {"both": [["0x1008c454", "je 0x14", "0x10097004"], ["0x1008c456", "push 0x13", "0x10097006"]]}, {"orig": [["0x1008c458", "call <OFFSET3>"]], "recomp": [["0x10097008", "call __lock (UNK)"]]}, {"both": [["0x1008c45d", "mov dword ptr [esp + 0x14], 1", "0x1009700d"], ["0x1008c465", "add esp, 4", "0x10097015"], ["0x1008c468", "jmp 0xe", "0x10097018"], ["0x1008c46a", "mov dword ptr [esp + 0x10], 0", "0x1009701a"]]}, {"orig": [["0x1008c472", "inc dword ptr [<OFFSET4>]"]], "recomp": [["0x10097022", "inc dword ptr [___unguarded_readlc_active (UNK)]"]]}, {"both": [["0x1008c478", "cmp dword ptr [<OFFSET1>], 0", "0x10097028"], ["0x1008c47f", "jne 0x45", "0x1009702f"], ["0x1008c481", "cmp dword ptr [esp + 0x10], 0", "0x10097031"], ["0x1008c486", "je 0xc", "0x10097036"], ["0x1008c488", "push 0x13", "0x10097038"]]}, {"orig": [["0x1008c48a", "call <OFFSET5>"]], "recomp": [["0x1009703a", "call __unlock (UNK)"]]}, {"both": [["0x1008c48f", "add esp, 4", "0x1009703f"], ["0x1008c492", "jmp 0x6", "0x10097042"]]}, {"orig": [["0x1008c494", "dec dword ptr [<OFFSET4>]"]], "recomp": [["0x10097044", "dec dword ptr [___unguarded_readlc_active (UNK)]"]]}, {"both": [["0x1008c49a", "mov ebx, dword ptr [esp + 0x18]", "0x1009704a"], ["0x1008c49e", "mov eax, ebx", "0x1009704e"], ["0x1008c4a0", "cmp byte ptr [ebx], 0", "0x10097050"], ["0x1008c4a3", "je 0x17", "0x10097053"], ["0x1008c4a5", "mov cl, byte ptr [eax]", "0x10097055"], ["0x1008c4a7", "cmp cl, 0x41", "0x10097057"], ["0x1008c4aa", "jl 0xa", "0x1009705a"], ["0x1008c4ac", "cmp cl, 0x5a", "0x1009705c"], ["0x1008c4af", "jg 0x5", "0x1009705f"], ["0x1008c4b1", "add cl, 0x20", "0x10097061"]]}]], ["@@ -0x1008c4c5,64 +0x10097075,64 @@", [{"both": [["0x1008c4c5", "ret ", "0x10097075"], ["0x1008c4c6", "mov ebx, dword ptr [esp + 0x18]", "0x10097076"], ["0x1008c4ca", "push 0", "0x1009707a"], ["0x1008c4cc", "push 0", "0x1009707c"], ["0x1008c4ce", "mov eax, dword ptr [<OFFSET1>]", "0x1009707e"], ["0x1008c4d3", "push 0", "0x10097083"], ["0x1008c4d5", "push -1", "0x10097085"], ["0x1008c4d7", "push ebx", "0x10097087"], ["0x1008c4d8", "push 0x100", "0x10097088"], ["0x1008c4dd", "push eax", "0x1009708d"]]}, {"orig": [["0x1008c4de", "call <OFFSET6>"]], "recomp": [["0x1009708e", "call ___crtLCMapStringA (UNK)"]]}, {"both": [["0x1008c4e3", "add esp, 0x1c", "0x10097093"], ["0x1008c4e6", "mov esi, eax", "0x10097096"], ["0x1008c4e8", "test esi, esi", "0x10097098"], ["0x1008c4ea", "je 0x4e", "0x1009709a"], ["0x1008c4ec", "push esi", "0x1009709c"], ["0x1008c4ed", "call _malloc (FUNCTION)", "0x1009709d"], ["0x1008c4f2", "add esp, 4", "0x100970a2"], ["0x1008c4f5", "mov ebp, eax", "0x100970a5"], ["0x1008c4f7", "test ebp, ebp", "0x100970a7"], ["0x1008c4f9", "je 0x3f", "0x100970a9"], ["0x1008c4fb", "push 0", "0x100970ab"], ["0x1008c4fd", "mov eax, dword ptr [<OFFSET1>]", "0x100970ad"], ["0x1008c502", "push esi", "0x100970b2"], ["0x1008c503", "push ebp", "0x100970b3"], ["0x1008c504", "push -1", "0x100970b4"], ["0x1008c506", "push ebx", "0x100970b6"], ["0x1008c507", "push 0x100", "0x100970b7"], ["0x1008c50c", "push eax", "0x100970bc"]]}, {"orig": [["0x1008c50d", "call <OFFSET6>"]], "recomp": [["0x100970bd", "call ___crtLCMapStringA (UNK)"]]}, {"both": [["0x1008c512", "add esp, 0x1c", "0x100970c2"], ["0x1008c515", "test eax, eax", "0x100970c5"], ["0x1008c517", "je 0x21", "0x100970c7"], ["0x1008c519", "mov edi, ebp", "0x100970c9"], ["0x1008c51b", "mov ecx, 0xffffffff", "0x100970cb"], ["0x1008c520", "sub eax, eax", "0x100970d0"], ["0x1008c522", "repne scasb al, byte ptr es:[edi]", "0x100970d2"], ["0x1008c524", "not ecx", "0x100970d4"], ["0x1008c526", "sub edi, ecx", "0x100970d6"], ["0x1008c528", "mov eax, ecx", "0x100970d8"], ["0x1008c52a", "shr ecx, 2", "0x100970da"], ["0x1008c52d", "mov esi, edi", "0x100970dd"], ["0x1008c52f", "mov edi, ebx", "0x100970df"], ["0x1008c531", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x100970e1"], ["0x1008c533", "mov ecx, eax", "0x100970e3"], ["0x1008c535", "and ecx, 3", "0x100970e5"], ["0x1008c538", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x100970e8"], ["0x1008c53a", "cmp dword ptr [esp + 0x10], 0", "0x100970ea"], ["0x1008c53f", "je 0xc", "0x100970ef"], ["0x1008c541", "push 0x13", "0x100970f1"]]}, {"orig": [["0x1008c543", "call <OFFSET5>"]], "recomp": [["0x100970f3", "call __unlock (UNK)"]]}, {"both": [["0x1008c548", "add esp, 4", "0x100970f8"], ["0x1008c54b", "jmp 0x6", "0x100970fb"]]}, {"orig": [["0x1008c54d", "dec dword ptr [<OFFSET4>]"]], "recomp": [["0x100970fd", "dec dword ptr [___unguarded_readlc_active (UNK)]"]]}, {"both": [["0x1008c553", "push ebp", "0x10097103"], ["0x1008c554", "call _free (FUNCTION)", "0x10097104"], ["0x1008c559", "add esp, 4", "0x10097109"], ["0x1008c55c", "mov eax, ebx", "0x1009710c"], ["0x1008c55e", "pop ebp", "0x1009710e"], ["0x1008c55f", "pop edi", "0x1009710f"], ["0x1008c560", "pop esi", "0x10097110"], ["0x1008c561", "pop ebx", "0x10097111"], ["0x1008c562", "add esp, 4", "0x10097112"], ["0x1008c565", "ret ", "0x10097115"]]}]]]}, {"address": "0x1008c570", "recomp": "0x10083150", "name": "_access", "matching": 0.8695652173913043, "diff": [["@@ -0x1008c570,23 +0x10083150,23 @@", [{"both": [["0x1008c570", "mov eax, dword ptr [esp + 4]", "0x10083150"], ["0x1008c574", "push eax", "0x10083154"], ["0x1008c575", "call dword ptr [__imp__GetFileAttributesA@4 (POINTER)]", "0x10083155"], ["0x1008c57b", "cmp eax, -1", "0x1008315b"], ["0x1008c57e", "jne 0x15", "0x1008315e"], ["0x1008c580", "call dword ptr [__imp__GetLastError@0 (POINTER)]", "0x10083160"], ["0x1008c586", "push eax", "0x10083166"]]}, {"orig": [["0x1008c587", "call <OFFSET3>"]], "recomp": [["0x10083167", "call __dosmaperr (UNK)"]]}, {"both": [["0x1008c58c", "add esp, 4", "0x1008316c"], ["0x1008c58f", "mov eax, 0xffffffff", "0x1008316f"], ["0x1008c594", "ret ", "0x10083174"], ["0x1008c595", "test al, 1", "0x10083175"], ["0x1008c597", "je 0x23", "0x10083177"], ["0x1008c599", "test byte ptr [esp + 8], 2", "0x10083179"], ["0x1008c59e", "je 0x1c", "0x1008317e"]]}, {"orig": [["0x1008c5a0", "call <OFFSET4>"]], "recomp": [["0x10083180", "call __errno (UNK)"]]}, {"both": [["0x1008c5a5", "mov dword ptr [eax], 0xd", "0x10083185"]]}, {"orig": [["0x1008c5ab", "call <OFFSET5>"]], "recomp": [["0x1008318b", "call ___doserrno (UNK)"]]}, {"both": [["0x1008c5b0", "mov dword ptr [eax], 5", "0x10083190"], ["0x1008c5b6", "mov eax, 0xffffffff", "0x10083196"], ["0x1008c5bb", "ret ", "0x1008319b"], ["0x1008c5bc", "xor eax, eax", "0x1008319c"], ["0x1008c5be", "ret ", "0x1008319e"]]}]]]}, {"address": "0x1008c5c0", "recomp": "0x10083660", "name": "_fseek", "matching": 0.8571428571428571, "diff": [["@@ -0x1008c5c0,21 +0x10083660,21 @@", [{"both": [["0x1008c5c0", "push esi", "0x10083660"], ["0x1008c5c1", "push edi", "0x10083661"], ["0x1008c5c2", "mov edi, dword ptr [esp + 0xc]", "0x10083662"], ["0x1008c5c6", "push edi", "0x10083666"]]}, {"orig": [["0x1008c5c7", "call <OFFSET1>"]], "recomp": [["0x10083667", "call __lock_file (UNK)"]]}, {"both": [["0x1008c5cc", "mov eax, dword ptr [esp + 0x18]", "0x1008366c"], ["0x1008c5d0", "mov ecx, dword ptr [esp + 0x14]", "0x10083670"], ["0x1008c5d4", "add esp, 4", "0x10083674"], ["0x1008c5d7", "push eax", "0x10083677"], ["0x1008c5d8", "push ecx", "0x10083678"], ["0x1008c5d9", "push edi", "0x10083679"]]}, {"orig": [["0x1008c5da", "call <OFFSET2>"]], "recomp": [["0x1008367a", "call __fseek_lk (UNK)"]]}, {"both": [["0x1008c5df", "add esp, 0xc", "0x1008367f"], ["0x1008c5e2", "mov esi, eax", "0x10083682"], ["0x1008c5e4", "push edi", "0x10083684"]]}, {"orig": [["0x1008c5e5", "call <OFFSET3>"]], "recomp": [["0x10083685", "call __unlock_file (UNK)"]]}, {"both": [["0x1008c5ea", "add esp, 4", "0x1008368a"], ["0x1008c5ed", "mov eax, esi", "0x1008368d"], ["0x1008c5ef", "pop edi", "0x1008368f"], ["0x1008c5f0", "pop esi", "0x10083690"], ["0x1008c5f1", "ret ", "0x10083691"]]}]]]}, {"address": "0x1008c6a0", "recomp": "0x10083bb0", "name": "_isdigit", "matching": 0.7857142857142857, "diff": [["@@ -0x1008c6a0,14 +0x10083bb0,14 @@", [{"orig": [["0x1008c6a0", "cmp dword ptr [<OFFSET1>], 1"]], "recomp": [["0x10083bb0", "cmp dword ptr [___mb_cur_max (UNK)], 1"]]}, {"both": [["0x1008c6a7", "jle 0x10", "0x10083bb7"], ["0x1008c6a9", "mov ecx, dword ptr [esp + 4]", "0x10083bb9"], ["0x1008c6ad", "push 4", "0x10083bbd"], ["0x1008c6af", "push ecx", "0x10083bbf"]]}, {"orig": [["0x1008c6b0", "call <OFFSET2>"]], "recomp": [["0x10083bc0", "call __isctype (UNK)"]]}, {"both": [["0x1008c6b5", "add esp, 8", "0x10083bc5"], ["0x1008c6b8", "ret ", "0x10083bc8"]]}, {"orig": [["0x1008c6b9", "mov edx, dword ptr [<OFFSET3>]"]], "recomp": [["0x10083bc9", "mov edx, dword ptr [__pctype (UNK)]"]]}, {"both": [["0x1008c6bf", "xor eax, eax", "0x10083bcf"], ["0x1008c6c1", "mov ecx, dword ptr [esp + 4]", "0x10083bd1"], ["0x1008c6c5", "mov ax, word ptr [edx + ecx*2]", "0x10083bd5"], ["0x1008c6c9", "and eax, 4", "0x10083bd9"], ["0x1008c6cc", "ret ", "0x10083bdc"]]}]]]}, {"address": "0x1008c860", "recomp": "0x10083fa0", "name": "__DllMainCRTStartup@12", "matching": 0.9431818181818182, "diff": [["@@ -0x1008c87a,38 +0x10083fba,38 @@", [{"both": [["0x1008c87a", "xor eax, eax", "0x10083fba"], ["0x1008c87c", "pop ebp", "0x10083fbc"], ["0x1008c87d", "pop edi", "0x10083fbd"], ["0x1008c87e", "pop esi", "0x10083fbe"], ["0x1008c87f", "pop ebx", "0x10083fbf"], ["0x1008c880", "ret 0xc", "0x10083fc0"], ["0x1008c883", "cmp ebx, 1", "0x10083fc3"], ["0x1008c886", "je 0x5", "0x10083fc6"], ["0x1008c888", "cmp ebx, 2", "0x10083fc8"], ["0x1008c88b", "jne 0x3a", "0x10083fcb"]]}, {"orig": [["0x1008c88d", "mov ecx, dword ptr [<OFFSET2>]"]], "recomp": [["0x10083fcd", "mov ecx, dword ptr [__pRawDllMain (UNK)]"]]}, {"both": [["0x1008c893", "test ecx, ecx", "0x10083fd3"], ["0x1008c895", "je 0xf", "0x10083fd5"], ["0x1008c897", "mov edi, dword ptr [esp + 0x1c]", "0x10083fd7"], ["0x1008c89b", "mov esi, dword ptr [esp + 0x14]", "0x10083fdb"], ["0x1008c89f", "push edi", "0x10083fdf"], ["0x1008c8a0", "push ebx", "0x10083fe0"], ["0x1008c8a1", "push esi", "0x10083fe1"], ["0x1008c8a2", "call ecx", "0x10083fe2"], ["0x1008c8a4", "jmp 0x8", "0x10083fe4"], ["0x1008c8a6", "mov esi, dword ptr [esp + 0x14]", "0x10083fe6"], ["0x1008c8aa", "mov edi, dword ptr [esp + 0x1c]", "0x10083fea"], ["0x1008c8ae", "test eax, eax", "0x10083fee"], ["0x1008c8b0", "je 0xc", "0x10083ff0"], ["0x1008c8b2", "push edi", "0x10083ff2"], ["0x1008c8b3", "push ebx", "0x10083ff3"], ["0x1008c8b4", "push esi", "0x10083ff4"]]}, {"orig": [["0x1008c8b5", "call <OFFSET3>"]], "recomp": [["0x10083ff5", "call __CRT_INIT@12 (FUNCTION)"]]}, {"both": [["0x1008c8ba", "test eax, eax", "0x10083ffa"], ["0x1008c8bc", "jne 0x11", "0x10083ffc"], ["0x1008c8be", "xor eax, eax", "0x10083ffe"], ["0x1008c8c0", "pop ebp", "0x10084000"], ["0x1008c8c1", "pop edi", "0x10084001"], ["0x1008c8c2", "pop esi", "0x10084002"], ["0x1008c8c3", "pop ebx", "0x10084003"], ["0x1008c8c4", "ret 0xc", "0x10084004"], ["0x1008c8c7", "mov esi, dword ptr [esp + 0x14]", "0x10084007"], ["0x1008c8cb", "mov edi, dword ptr [esp + 0x1c]", "0x1008400b"]]}]], ["@@ -0x1008c8d1,35 +0x10084011,35 @@", [{"both": [["0x1008c8d1", "push esi", "0x10084011"], ["0x1008c8d2", "call DllMain (FUNCTION)", "0x10084012"], ["0x1008c8d7", "mov ebp, eax", "0x10084017"], ["0x1008c8d9", "cmp ebx, 1", "0x10084019"], ["0x1008c8dc", "jne 0xd", "0x1008401c"], ["0x1008c8de", "test ebp, ebp", "0x1008401e"], ["0x1008c8e0", "jne 0x9", "0x10084020"], ["0x1008c8e2", "push edi", "0x10084022"], ["0x1008c8e3", "push 0", "0x10084023"], ["0x1008c8e5", "push esi", "0x10084025"]]}, {"orig": [["0x1008c8e6", "call <OFFSET3>"]], "recomp": [["0x10084026", "call __CRT_INIT@12 (FUNCTION)"]]}, {"both": [["0x1008c8eb", "test ebx, ebx", "0x1008402b"], ["0x1008c8ed", "je 0x5", "0x1008402d"], ["0x1008c8ef", "cmp ebx, 3", "0x1008402f"], ["0x1008c8f2", "jne 0x22", "0x10084032"], ["0x1008c8f4", "push edi", "0x10084034"], ["0x1008c8f5", "push ebx", "0x10084035"], ["0x1008c8f6", "push esi", "0x10084036"]]}, {"orig": [["0x1008c8f7", "call <OFFSET3>"]], "recomp": [["0x10084037", "call __CRT_INIT@12 (FUNCTION)"]]}, {"both": [["0x1008c8fc", "test eax, eax", "0x1008403c"], ["0x1008c8fe", "jne 0x2", "0x1008403e"], ["0x1008c900", "xor ebp, ebp", "0x10084040"], ["0x1008c902", "test ebp, ebp", "0x10084042"], ["0x1008c904", "je 0x10", "0x10084044"]]}, {"orig": [["0x1008c906", "mov eax, dword ptr [<OFFSET2>]"]], "recomp": [["0x10084046", "mov eax, dword ptr [__pRawDllMain (UNK)]"]]}, {"both": [["0x1008c90b", "test eax, eax", "0x1008404b"], ["0x1008c90d", "je 0x7", "0x1008404d"], ["0x1008c90f", "push edi", "0x1008404f"], ["0x1008c910", "push ebx", "0x10084050"], ["0x1008c911", "push esi", "0x10084051"], ["0x1008c912", "call eax", "0x10084052"], ["0x1008c914", "mov ebp, eax", "0x10084054"], ["0x1008c916", "mov eax, ebp", "0x10084056"], ["0x1008c918", "pop ebp", "0x10084058"], ["0x1008c919", "pop edi", "0x10084059"]]}]]]}, {"address": "0x1008ca60", "recomp": "0x100843c0", "name": "_abort", "matching": 0.7, "diff": [["@@ -0x1008ca60,10 +0x100843c0,10 @@", [{"both": [["0x1008ca60", "push 0xa", "0x100843c0"]]}, {"orig": [["0x1008ca62", "call <OFFSET1>"]], "recomp": [["0x100843c2", "call __NMSG_WRITE (UNK)"]]}, {"both": [["0x1008ca67", "add esp, 4", "0x100843c7"], ["0x1008ca6a", "push 0x16", "0x100843ca"]]}, {"orig": [["0x1008ca6c", "call <OFFSET2>"]], "recomp": [["0x100843cc", "call _raise (UNK)"]]}, {"both": [["0x1008ca71", "add esp, 4", "0x100843d1"], ["0x1008ca74", "push 3", "0x100843d4"]]}, {"orig": [["0x1008ca76", "call <OFFSET3>"]], "recomp": [["0x100843d6", "call __exit (UNK)"]]}, {"both": [["0x1008ca7b", "add esp, 4", "0x100843db"], ["0x1008ca7e", "ret ", "0x100843de"]]}]]]}, {"address": "0x10091ee0", "recomp": "0x10049200", "name": "DllMain", "matching": 1.0, "diff": []}, {"address": "0x100977c0", "recomp": "0x10094be0", "name": "_itoa", "matching": 1.0, "diff": []}, {"address": "0x10097b10", "recomp": "0x100844c0", "name": "_strchr", "matching": 1.0, "diff": []}, {"address": "0x10098fb0", "recomp": "0x10058d00", "name": "LegoTexture::LegoTexture", "matching": 1.0, "diff": []}, {"address": "0x10099030", "recomp": "0x10058d80", "name": "LegoTexture::~LegoTexture", "matching": 1.0, "diff": []}, {"address": "0x10099050", "recomp": "0x10058da0", "name": "LegoTexture::Read", "matching": 1.0, "diff": []}, {"address": "0x10099070", "recomp": "0x10058dc0", "name": "LegoTexture::Write", "matching": 1.0, "diff": []}, {"address": "0x10099080", "recomp": "0x10058dd0", "name": "LegoMemory::LegoMemory", "matching": 1.0, "diff": []}, {"address": "0x100990f0", "recomp": "0x10058e60", "name": "LegoMemory::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10099160", "recomp": "0x10058ed0", "name": "LegoMemory::Read", "matching": 1.0, "diff": []}, {"address": "0x10099190", "recomp": "0x10058f00", "name": "LegoMemory::Write", "matching": 1.0, "diff": []}, {"address": "0x100991c0", "recomp": "0x10058f30", "name": "LegoFile::LegoFile", "matching": 1.0, "diff": []}, {"address": "0x10099230", "recomp": "0x10058fa0", "name": "LegoFile::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10099250", "recomp": "0x10058fc0", "name": "LegoFile::~LegoFile", "matching": 1.0, "diff": []}, {"address": "0x100992c0", "recomp": "0x10059030", "name": "LegoFile::Read", "matching": 1.0, "diff": []}, {"address": "0x10099300", "recomp": "0x10059070", "name": "LegoFile::Write", "matching": 1.0, "diff": []}, {"address": "0x10099340", "recomp": "0x100590b0", "name": "LegoFile::GetPosition", "matching": 1.0, "diff": []}, {"address": "0x10099370", "recomp": "0x100590e0", "name": "LegoFile::SetPosition", "matching": 1.0, "diff": []}, {"address": "0x100993a0", "recomp": "0x10059110", "name": "LegoFile::Open", "matching": 1.0, "diff": []}, {"address": "0x100994a0", "recomp": "0x10058e40", "name": "LegoMemory::GetPosition", "matching": 1.0, "diff": []}, {"address": "0x100994b0", "recomp": "0x10058e50", "name": "LegoMemory::SetPosition", "matching": 1.0, "diff": []}, {"address": "0x100994c0", "recomp": "0x10059aa0", "name": "LegoPaletteEntry::LegoPaletteEntry", "matching": 1.0, "diff": []}, {"address": "0x100994d0", "recomp": "0x10059ab0", "name": "LegoPaletteEntry::Read", "matching": 1.0, "diff": []}, {"address": "0x10099520", "recomp": "0x10059b00", "name": "LegoPaletteEntry::Write", "matching": 1.0, "diff": []}, {"address": "0x10099570", "recomp": "0x10059b50", "name": "LegoImage::LegoImage", "matching": 1.0, "diff": []}, {"address": "0x100995a0", "recomp": "0x10059b80", "name": "LegoImage::LegoImage", "matching": 1.0, "diff": []}, {"address": "0x100995f0", "recomp": "0x10059bd0", "name": "LegoImage::~LegoImage", "matching": 1.0, "diff": []}, {"address": "0x10099610", "recomp": "0x10059bf0", "name": "LegoImage::Read", "matching": 1.0, "effective": true, "diff": [["@@ -0x1009963f,32 +0x10059c1f,32 @@", [{"both": [["0x1009963f", "call dword ptr [esp + 0x18]", "0x10059c1f"], ["0x10099643", "test eax, eax", "0x10059c23"], ["0x10099645", "jne 0x17f", "0x10059c25"], ["0x1009964b", "push 4", "0x10059c2b"], ["0x1009964d", "lea eax, [ebx + 8]", "0x10059c2d"], ["0x10099650", "push eax", "0x10059c30"], ["0x10099651", "mov ecx, esi", "0x10059c31"], ["0x10099653", "call dword ptr [esp + 0x18]", "0x10059c33"], ["0x10099657", "test eax, eax", "0x10059c37"], ["0x10099659", "jne 0x16b", "0x10059c39"]]}, {"orig": [["0x1009965f", "xor ebp, ebp"], ["0x10099661", "cmp dword ptr [ebx + 8], ebp"]], "recomp": [["0x10059c3f", "xor edi, edi"], ["0x10059c41", "cmp dword ptr [ebx + 8], edi"]]}, {"both": [["0x10099664", "jbe 0x1c", "0x10059c44"]]}, {"orig": [["0x10099666", "lea edi, [ebx + 0xc]"]], "recomp": [["0x10059c46", "lea ebp, [ebx + 0xc]"]]}, {"both": [["0x10099669", "push esi", "0x10059c49"]]}, {"orig": [["0x1009966a", "mov ecx, edi"]], "recomp": [["0x10059c4a", "mov ecx, ebp"]]}, {"both": [["0x1009966c", "call LegoPaletteEntry::Read (FUNCTION)", "0x10059c4c"], ["0x10099671", "test eax, eax", "0x10059c51"], ["0x10099673", "jne 0x151", "0x10059c53"]]}, {"orig": [["0x10099679", "add edi, 3"], ["0x1009967c", "inc ebp"], ["0x1009967d", "cmp dword ptr [ebx + 8], ebp"]], "recomp": [["0x10059c59", "add ebp, 3"], ["0x10059c5c", "inc edi"], ["0x10059c5d", "cmp dword ptr [ebx + 8], edi"]]}, {"both": [["0x10099680", "ja -0x19", "0x10059c60"], ["0x10099682", "mov eax, dword ptr [ebx + 0x30c]", "0x10059c62"], ["0x10099688", "test eax, eax", "0x10059c68"], ["0x1009968a", "je 0x9", "0x10059c6a"], ["0x1009968c", "push eax", "0x10059c6c"], ["0x1009968d", "call ??3@YAXPAX@Z (FUNCTION)", "0x10059c6d"], ["0x10099692", "add esp, 4", "0x10059c72"], ["0x10099695", "mov eax, dword ptr [ebx + 4]", "0x10059c75"], ["0x10099698", "imul eax, dword ptr [ebx]", "0x10059c78"], ["0x1009969b", "push eax", "0x10059c7b"]]}]], ["@@ -0x1009975d,34 +0x10059d3d,34 @@", [{"both": [["0x1009975d", "mov esi, eax", "0x10059d3d"], ["0x1009975f", "push edi", "0x10059d3f"], ["0x10099760", "call ??2@YAPAXI@Z (FUNCTION)", "0x10059d40"], ["0x10099765", "mov dword ptr [esp + 0x18], eax", "0x10059d45"], ["0x10099769", "mov edx, dword ptr [ebx + 0x30c]", "0x10059d49"], ["0x1009976f", "add esp, 4", "0x10059d4f"], ["0x10099772", "mov edi, eax", "0x10059d52"], ["0x10099774", "cmp dword ptr [ebx + 4], 0", "0x10059d54"], ["0x10099778", "mov dword ptr [esp + 0x10], 0", "0x10059d58"], ["0x10099780", "jbe 0x28", "0x10059d60"]]}, {"orig": [["0x10099782", "xor ebp, ebp"], ["0x10099784", "cmp dword ptr [ebx], ebp"]], "recomp": [["0x10059d62", "xor eax, eax"], ["0x10059d64", "cmp dword ptr [ebx], eax"]]}, {"both": [["0x10099786", "jbe 0x15", "0x10059d66"], ["0x10099788", "test esi, esi", "0x10059d68"], ["0x1009978a", "je 0xb", "0x10059d6a"]]}, {"orig": [["0x1009978c", "mov eax, esi"]], "recomp": [["0x10059d6c", "mov ebp, esi"]]}, {"both": [["0x1009978e", "mov cl, byte ptr [edx]", "0x10059d6e"], ["0x10099790", "inc edi", "0x10059d70"]]}, {"orig": [["0x10099791", "dec eax"]], "recomp": [["0x10059d71", "dec ebp"]]}, {"both": [["0x10099792", "mov byte ptr [edi - 1], cl", "0x10059d72"], ["0x10099795", "jne -0x9", "0x10059d75"], ["0x10099797", "inc edx", "0x10059d77"]]}, {"orig": [["0x10099798", "inc ebp"], ["0x10099799", "cmp dword ptr [ebx], ebp"]], "recomp": [["0x10059d78", "inc eax"], ["0x10059d79", "cmp dword ptr [ebx], eax"]]}, {"both": [["0x1009979b", "ja -0x15", "0x10059d7b"], ["0x1009979d", "inc dword ptr [esp + 0x10]", "0x10059d7d"], ["0x100997a1", "mov eax, dword ptr [esp + 0x10]", "0x10059d81"], ["0x100997a5", "cmp dword ptr [ebx + 4], eax", "0x10059d85"], ["0x100997a8", "ja -0x28", "0x10059d88"], ["0x100997aa", "mov eax, dword ptr [ebx + 4]", "0x10059d8a"], ["0x100997ad", "mov dword ptr [ebx], eax", "0x10059d8d"], ["0x100997af", "mov eax, dword ptr [ebx + 0x30c]", "0x10059d8f"], ["0x100997b5", "push eax", "0x10059d95"], ["0x100997b6", "call ??3@YAXPAX@Z (FUNCTION)", "0x10059d96"]]}]]]}, {"address": "0x100997e0", "recomp": "0x10059dc0", "name": "LegoImage::Write", "matching": 1.0, "effective": true, "diff": [["@@ -0x1009980b,32 +0x10059deb,32 @@", [{"both": [["0x1009980b", "call dword ptr [esp + 0x18]", "0x10059deb"], ["0x1009980f", "test eax, eax", "0x10059def"], ["0x10099811", "jne 0x4d", "0x10059df1"], ["0x10099813", "push 4", "0x10059df3"], ["0x10099815", "lea eax, [edi + 8]", "0x10059df5"], ["0x10099818", "push eax", "0x10059df8"], ["0x10099819", "mov ecx, esi", "0x10059df9"], ["0x1009981b", "call dword ptr [esp + 0x18]", "0x10059dfb"], ["0x1009981f", "test eax, eax", "0x10059dff"], ["0x10099821", "jne 0x3d", "0x10059e01"]]}, {"orig": [["0x10099823", "xor ebx, ebx"], ["0x10099825", "cmp dword ptr [edi + 8], ebx"]], "recomp": [["0x10059e03", "xor ebp, ebp"], ["0x10059e05", "cmp dword ptr [edi + 8], ebp"]]}, {"both": [["0x10099828", "jbe 0x18", "0x10059e08"]]}, {"orig": [["0x1009982a", "lea ebp, [edi + 0xc]"]], "recomp": [["0x10059e0a", "lea ebx, [edi + 0xc]"]]}, {"both": [["0x1009982d", "push esi", "0x10059e0d"]]}, {"orig": [["0x1009982e", "mov ecx, ebp"]], "recomp": [["0x10059e0e", "mov ecx, ebx"]]}, {"both": [["0x10099830", "call LegoPaletteEntry::Write (FUNCTION)", "0x10059e10"], ["0x10099835", "test eax, eax", "0x10059e15"], ["0x10099837", "jne 0x27", "0x10059e17"]]}, {"orig": [["0x10099839", "add ebp, 3"], ["0x1009983c", "inc ebx"], ["0x1009983d", "cmp dword ptr [edi + 8], ebx"]], "recomp": [["0x10059e19", "add ebx, 3"], ["0x10059e1c", "inc ebp"], ["0x10059e1d", "cmp dword ptr [edi + 8], ebp"]]}, {"both": [["0x10099840", "ja -0x15", "0x10059e20"], ["0x10099842", "mov eax, dword ptr [edi + 0x30c]", "0x10059e22"], ["0x10099848", "test eax, eax", "0x10059e28"], ["0x1009984a", "je 0x12", "0x10059e2a"], ["0x1009984c", "mov ecx, dword ptr [edi + 4]", "0x10059e2c"], ["0x1009984f", "imul ecx, dword ptr [edi]", "0x10059e2f"], ["0x10099852", "push ecx", "0x10059e32"], ["0x10099853", "push eax", "0x10059e33"], ["0x10099854", "mov ecx, esi", "0x10059e34"], ["0x10099856", "call dword ptr [esp + 0x18]", "0x10059e36"]]}]]]}, {"address": "0x10099870", "recomp": "0x10059210", "name": "LegoTextureContainer::~LegoTextureContainer", "matching": 1.0, "diff": []}, {"address": "0x100998e0", "recomp": "0x10059280", "name": "LegoTextureContainer::AddToList", "matching": 0.5602322206095791, "diff": [["@@ -0x100998e0,223 +0x10059280,226 @@", [{"both": [["0x100998e0", "mov eax, dword ptr fs:[0]", "0x10059280"], ["0x100998e6", "push ebp", "0x10059286"], ["0x100998e7", "mov ebp, esp", "0x10059287"], ["0x100998e9", "push -1", "0x10059289"], ["0x100998eb", "push <OFFSET1>", "0x1005928b"], ["0x100998f0", "push eax", "0x10059290"], ["0x100998f1", "mov dword ptr fs:[0], esp", "0x10059291"]]}, {"orig": [["0x100998f8", "sub esp, 0xf8"]], "recomp": [["0x10059298", "sub esp, 0x100"]]}, {"both": [["0x100998fe", "xor eax, eax", "0x1005929e"], ["0x10099900", "mov dword ptr [ebp - 0x14], ecx", "0x100592a0"], ["0x10099903", "push ebx", "0x100592a3"], ["0x10099904", "mov ecx, 0x1b", "0x100592a4"], ["0x10099909", "push esi", "0x100592a9"], ["0x1009990a", "push edi", "0x100592aa"]]}, {"orig": [["0x1009990b", "lea edi, [ebp - 0x104]"]], "recomp": [["0x100592ab", "lea edi, [ebp - 0x10c]"], ["0x100592b1", "push 0"]]}, {"both": [["0x10099911", "rep stosd dword ptr es:[edi], eax", "0x100592b3"]]}, {"orig": [["0x10099913", "mov eax, dword ptr [ebp + 8]"], ["0x10099916", "push 0"], ["0x10099918", "mov dword ptr [ebp - 0x104], 0x6c"], ["0x10099922", "mov esi, dword ptr [eax + 4]"], ["0x10099925", "push 0"], ["0x10099927", "lea eax, [ebp - 0x104]"], ["0x1009992d", "mov edi, dword ptr [esi]"], ["0x1009992f", "push eax"], ["0x10099930", "push 0"], ["0x10099932", "push esi"], ["0x10099933", "call dword ptr [edi + 0x64]"], ["0x10099936", "test eax, eax"], ["0x10099938", "jne 0x20"], ["0x1009993a", "mov eax, dword ptr [ebp - 0xf8]"], ["0x10099940", "mov ecx, dword ptr [ebp - 0xfc]"], ["0x10099946", "mov dword ptr [ebp - 0x20], eax"], ["0x10099949", "mov edx, dword ptr [ebp - 0xe0]"]], "recomp": [["0x100592b5", "mov esi, dword ptr [ebp + 8]"], ["0x100592b8", "push 0"], ["0x100592ba", "mov dword ptr [ebp - 0x10c], 0x6c"], ["0x100592c4", "mov eax, dword ptr [esi + 4]"], ["0x100592c7", "lea ecx, [ebp - 0x10c]"], ["0x100592cd", "push ecx"], ["0x100592ce", "push 0"], ["0x100592d0", "push eax"], ["0x100592d1", "mov ebx, dword ptr [eax]"], ["0x100592d3", "call dword ptr [ebx + 0x64]"], ["0x100592d6", "test eax, eax"], ["0x100592d8", "jne 0x25"], ["0x100592da", "mov eax, dword ptr [ebp - 0x100]"], ["0x100592e0", "mov ecx, dword ptr [ebp - 0x104]"], ["0x100592e6", "mov edx, dword ptr [ebp - 0xe8]"], ["0x100592ec", "mov dword ptr [ebp - 0x1c], eax"], ["0x100592ef", "mov eax, dword ptr [esi + 4]"]]}, {"both": [["0x1009994f", "push edx", "0x100592f2"]]}, {"orig": [], "recomp": [["0x100592f3", "push eax"]]}, {"both": [["0x10099950", "mov dword ptr [ebp - 0x18], ecx", "0x100592f4"]]}, {"orig": [["0x10099953", "push esi"], ["0x10099954", "call dword ptr [edi + 0x80]"]], "recomp": [["0x100592f7", "mov ebx, dword ptr [eax]"], ["0x100592f9", "call dword ptr [ebx + 0x80]"]]}, {"both": [["0x1009995a", "mov ecx, dword ptr [ebp - 0x14]", "0x100592ff"], ["0x1009995d", "mov eax, dword ptr [ecx + 0x1c]", "0x10059302"], ["0x10099960", "mov edx, dword ptr [eax]", "0x10059305"], ["0x10099962", "mov dword ptr [ebp - 0x10], edx", "0x10059307"], ["0x10099965", "cmp edx, eax", "0x1005930a"]]}, {"orig": [["0x10099967", "je 0xde"]], "recomp": [["0x1005930c", "je 0xe2"]]}, {"both": [["0x1009996d", "mov eax, dword ptr [ebp - 0x10]", "0x10059312"], ["0x10099970", "cmp dword ptr [eax + 0xc], 0", "0x10059315"]]}, {"orig": [["0x10099974", "jne 0xbd"], ["0x1009997a", "lea esi, [eax + 8]"], ["0x1009997d", "mov eax, dword ptr [esi]"]], "recomp": [["0x10059319", "jne 0xc1"], ["0x1005931f", "lea ebx, [eax + 8]"], ["0x10059322", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x1009997f", "mov eax, dword ptr [eax + 0xc]", "0x10059324"], ["0x10099982", "push eax", "0x10059327"]]}, {"orig": [["0x10099983", "mov ebx, dword ptr [eax]"], ["0x10099985", "call dword ptr [ebx + 4]"], ["0x10099988", "test eax, eax"], ["0x1009998a", "je 0xa7"], ["0x10099990", "mov eax, dword ptr [esi]"]], "recomp": [["0x10059328", "mov edi, dword ptr [eax]"], ["0x1005932a", "call dword ptr [edi + 4]"], ["0x1005932d", "test eax, eax"], ["0x1005932f", "je 0xab"], ["0x10059335", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x10099992", "mov eax, dword ptr [eax + 0xc]", "0x10059337"], ["0x10099995", "push eax", "0x1005933a"]]}, {"orig": [["0x10099996", "mov ebx, dword ptr [eax]"], ["0x10099998", "call dword ptr [ebx + 8]"]], "recomp": [["0x1005933b", "mov edi, dword ptr [eax]"], ["0x1005933d", "call dword ptr [edi + 8]"]]}, {"both": [["0x1009999b", "cmp eax, 1", "0x10059340"]]}, {"orig": [["0x1009999e", "jne 0x93"], ["0x100999a4", "mov eax, dword ptr [esi]"], ["0x100999a6", "mov edx, dword ptr [ebp + 8]"], ["0x100999a9", "mov ecx, dword ptr [eax]"], ["0x100999ab", "mov eax, dword ptr [edx]"], ["0x100999ad", "mov dl, byte ptr [ecx]"], ["0x100999af", "cmp dl, byte ptr [eax]"]], "recomp": [["0x10059343", "jne 0x97"], ["0x10059349", "mov eax, dword ptr [ebx]"], ["0x1005934b", "mov edx, dword ptr [esi]"], ["0x1005934d", "mov eax, dword ptr [eax]"], ["0x1005934f", "mov cl, byte ptr [eax]"], ["0x10059351", "cmp cl, byte ptr [edx]"]]}, {"both": [["0x100999b1", "jne 0x1a", "0x10059353"]]}, {"orig": [["0x100999b3", "or dl, dl"]], "recomp": [["0x10059355", "or cl, cl"]]}, {"both": [["0x100999b5", "je 0x12", "0x10059357"]]}, {"orig": [["0x100999b7", "mov dl, byte ptr [ecx + 1]"], ["0x100999ba", "cmp dl, byte ptr [eax + 1]"]], "recomp": [["0x10059359", "mov cl, byte ptr [eax + 1]"], ["0x1005935c", "cmp cl, byte ptr [edx + 1]"]]}, {"both": [["0x100999bd", "jne 0xe", "0x1005935f"]]}, {"orig": [["0x100999bf", "add ecx, 2"]], "recomp": []}, {"both": [["0x100999c2", "add eax, 2", "0x10059361"]]}, {"orig": [["0x100999c5", "or dl, dl"]], "recomp": [["0x10059364", "add edx, 2"], ["0x10059367", "or cl, cl"]]}, {"both": [["0x100999c7", "jne -0x1c", "0x10059369"], ["0x100999c9", "xor eax, eax", "0x1005936b"], ["0x100999cb", "jmp 0x5", "0x1005936d"], ["0x100999cd", "sbb eax, eax", "0x1005936f"], ["0x100999cf", "sbb eax, -1", "0x10059371"], ["0x100999d2", "test eax, eax", "0x10059374"]]}, {"orig": [["0x100999d4", "jne 0x61"], ["0x100999d6", "mov esi, dword ptr [esi]"], ["0x100999d8", "lea edi, [ebp - 0x98]"]], "recomp": [["0x10059376", "jne 0x68"], ["0x10059378", "lea edi, [ebp - 0xa0]"]]}, {"both": [["0x100999de", "xor eax, eax", "0x1005937e"], ["0x100999e0", "mov ecx, 0x1b", "0x10059380"]]}, {"orig": [["0x100999e5", "mov ebx, dword ptr [esi + 4]"], ["0x100999e8", "push eax"]], "recomp": [["0x10059385", "push 0"]]}, {"both": [["0x100999e9", "rep stosd dword ptr es:[edi], eax", "0x10059387"]]}, {"orig": [["0x100999eb", "mov dword ptr [ebp - 0x98], 0x6c"], ["0x100999f5", "push eax"], ["0x100999f6", "mov edi, dword ptr [ebx]"], ["0x100999f8", "lea eax, [ebp - 0x98]"], ["0x100999fe", "push eax"], ["0x100999ff", "push 0"], ["0x10099a01", "push ebx"]], "recomp": [["0x10059389", "push 0"], ["0x1005938b", "lea ecx, [ebp - 0xa0]"], ["0x10059391", "mov dword ptr [ebp - 0xa0], 0x6c"], ["0x1005939b", "mov eax, dword ptr [ebx]"], ["0x1005939d", "push ecx"], ["0x1005939e", "push 0"], ["0x100593a0", "mov eax, dword ptr [eax + 4]"], ["0x100593a3", "push eax"], ["0x100593a4", "mov edi, dword ptr [eax]"]]}, {"both": [["0x10099a02", "call dword ptr [edi + 0x64]", "0x100593a6"], ["0x10099a05", "test eax, eax", "0x100593a9"]]}, {"orig": [["0x10099a07", "jne 0x2e"]], "recomp": [["0x100593ab", "jne 0x33"]]}, {"both": [["0x10099a09", "xor edi, edi", "0x100593ad"]]}, {"orig": [["0x10099a0b", "mov eax, dword ptr [ebp - 0x20]"], ["0x10099a0e", "cmp dword ptr [ebp - 0x8c], eax"]], "recomp": [["0x100593af", "mov eax, dword ptr [ebp - 0x1c]"], ["0x100593b2", "cmp eax, dword ptr [ebp - 0x94]"]]}, {"both": [["0x10099a14", "jne 0x10", "0x100593b8"], ["0x10099a16", "mov eax, dword ptr [ebp - 0x18]", "0x100593ba"]]}, {"orig": [["0x10099a19", "cmp dword ptr [ebp - 0x90], eax"]], "recomp": [["0x100593bd", "cmp eax, dword ptr [ebp - 0x98]"]]}, {"both": [["0x10099a1f", "jne 0x5", "0x100593c3"], ["0x10099a21", "mov edi, 1", "0x100593c5"]]}, {"orig": [["0x10099a26", "mov eax, dword ptr [ebp - 0x74]"], ["0x10099a29", "push eax"], ["0x10099a2a", "push ebx"], ["0x10099a2b", "mov ebx, dword ptr [ebx]"]], "recomp": [["0x100593ca", "mov eax, dword ptr [ebx]"], ["0x100593cc", "mov ecx, dword ptr [ebp - 0x7c]"], ["0x100593cf", "push ecx"], ["0x100593d0", "mov eax, dword ptr [eax + 4]"], ["0x100593d3", "push eax"], ["0x100593d4", "mov ebx, dword ptr [eax]"]]}, {"both": [["0x10099a2d", "call dword ptr [ebx + 0x80]", "0x100593d6"], ["0x10099a33", "test edi, edi", "0x100593dc"]]}, {"orig": [["0x10099a35", "jne 0x39"]], "recomp": [["0x100593de", "jne 0x37"]]}, {"both": [["0x10099a37", "mov eax, dword ptr [ebp - 0x10]", "0x100593e0"], ["0x10099a3a", "mov edx, dword ptr [ebp - 0x14]", "0x100593e3"], ["0x10099a3d", "mov ecx, dword ptr [eax]", "0x100593e6"], ["0x10099a3f", "mov dword ptr [ebp - 0x10], ecx", "0x100593e8"], ["0x10099a42", "cmp dword ptr [edx + 0x1c], ecx", "0x100593eb"]]}, {"orig": [["0x10099a45", "jne -0xde"]], "recomp": [["0x100593ee", "jne -0xe2"]]}, {"both": [["0x10099a4b", "push 0x10", "0x100593f4"], ["0x10099a4d", "call ??2@YAPAXI@Z (FUNCTION)", "0x100593f6"]]}, {"orig": [], "recomp": [["0x100593fb", "add esp, 4"]]}, {"both": [["0x10099a52", "mov dword ptr [ebp - 0x10], eax", "0x100593fe"]]}, {"orig": [["0x10099a55", "add esp, 4"]], "recomp": []}, {"both": [["0x10099a58", "mov dword ptr [ebp - 4], 0", "0x10059401"]]}, {"orig": [["0x10099a5f", "mov esi, eax"], ["0x10099a61", "test esi, esi"], ["0x10099a63", "je 0x33"], ["0x10099a65", "mov ecx, esi"]], "recomp": [["0x10059408", "test eax, eax"], ["0x1005940a", "je 0x38"], ["0x1005940c", "mov ecx, eax"]]}, {"both": [["0x10099a67", "call LegoTextureInfo::LegoTextureInfo (FUNCTION)", "0x1005940e"], ["0x10099a6c", "mov ebx, eax", "0x10059413"]]}, {"orig": [["0x10099a6e", "jmp 0x2a"]], "recomp": [["0x10059415", "jmp 0x2f"]]}, {"both": [["0x10099a70", "mov eax, dword ptr [ebp - 0x10]", "0x10059417"]]}, {"orig": [], "recomp": [["0x1005941a", "lea esi, [eax + 8]"]]}, {"both": [["0x10099a73", "mov dword ptr [eax + 0xc], 1", "0x1005941d"]]}, {"orig": [["0x10099a7a", "mov eax, dword ptr [esi + 0xc]"]], "recomp": [["0x10059424", "mov ecx, dword ptr [esi]"], ["0x10059426", "mov eax, dword ptr [ecx + 0xc]"]]}, {"both": [["0x10099a7d", "push eax", "0x10059429"], ["0x10099a7e", "mov ebx, dword ptr [eax]", "0x1005942a"], ["0x10099a80", "call dword ptr [ebx + 4]", "0x1005942c"]]}, {"orig": [["0x10099a83", "mov eax, esi"]], "recomp": [["0x1005942f", "mov eax, dword ptr [esi]"]]}, {"both": [["0x10099a85", "mov ecx, dword ptr [ebp - 0xc]", "0x10059431"], ["0x10099a88", "pop edi", "0x10059434"], ["0x10099a89", "mov dword ptr fs:[0], ecx", "0x10059435"], ["0x10099a90", "pop esi", "0x1005943c"], ["0x10099a91", "pop ebx", "0x1005943d"], ["0x10099a92", "mov esp, ebp", "0x1005943e"], ["0x10099a94", "pop ebp", "0x10059440"], ["0x10099a95", "ret 4", "0x10059441"], ["0x10099a98", "xor ebx, ebx", "0x10059444"]]}, {"orig": [["0x10099a9a", "mov eax, dword ptr [ebp + 8]"]], "recomp": []}, {"both": [["0x10099a9d", "mov dword ptr [ebp - 4], 0xffffffff", "0x10059446"]]}, {"orig": [["0x10099aa4", "mov eax, dword ptr [eax + 8]"], ["0x10099aa7", "push eax"]], "recomp": [["0x1005944d", "mov eax, dword ptr [esi + 8]"]]}, {"both": [["0x10099aa8", "mov dword ptr [ebx + 8], eax", "0x10059450"]]}, {"orig": [["0x10099aab", "mov edi, dword ptr [eax]"], ["0x10099aad", "call dword ptr [edi + 4]"], ["0x10099ab0", "lea edi, [ebp - 0x98]"]], "recomp": [["0x10059453", "mov eax, dword ptr [esi + 8]"], ["0x10059456", "push eax"], ["0x10059457", "mov edi, dword ptr [eax]"], ["0x10059459", "call dword ptr [edi + 8]"], ["0x1005945c", "lea edi, [ebp - 0xa0]"]]}, {"both": [["0x10099ab6", "xor eax, eax", "0x10059462"], ["0x10099ab8", "mov ecx, 0x1b", "0x10059464"], ["0x10099abd", "rep stosd dword ptr es:[edi], eax", "0x10059469"]]}, {"orig": [["0x10099abf", "mov ecx, dword ptr [ebp - 0xf8]"], ["0x10099ac5", "mov eax, dword ptr [ebp - 0xfc]"], ["0x10099acb", "mov dword ptr [ebp - 0x8c], ecx"], ["0x10099ad1", "mov dword ptr [ebp - 0x90], eax"], ["0x10099ad7", "mov dword ptr [ebp - 0x98], 0x6c"], ["0x10099ae1", "mov dword ptr [ebp - 0x94], 0x1007"], ["0x10099aeb", "mov dword ptr [ebp - 0x30], 0x1800"], ["0x10099af2", "mov dword ptr [ebp - 0x50], 0x20"], ["0x10099af9", "lea esi, [ebx + 4]"]], "recomp": [["0x1005946b", "mov ecx, dword ptr [ebp - 0x100]"], ["0x10059471", "mov eax, dword ptr [ebp - 0x104]"], ["0x10059477", "mov dword ptr [ebp - 0x94], ecx"], ["0x1005947d", "mov dword ptr [ebp - 0x98], eax"], ["0x10059483", "mov dword ptr [ebp - 0xa0], 0x6c"], ["0x1005948d", "mov dword ptr [ebp - 0x9c], 0x1007"], ["0x10059497", "mov dword ptr [ebp - 0x38], 0x1800"], ["0x1005949e", "mov dword ptr [ebp - 0x58], 0x20"], ["0x100594a5", "mov dword ptr [ebp - 0x54], 0x60"], ["0x100594ac", "mov dword ptr [ebp - 0x4c], 8"]]}, {"both": [["0x10099afc", "xor edi, edi", "0x100594b3"]]}, {"orig": [["0x10099afe", "mov dword ptr [ebp - 0x4c], 0x60"], ["0x10099b05", "mov dword ptr [ebp - 0x44], 8"]], "recomp": []}, {"both": [["0x10099b0c", "call VideoManager (FUNCTION)", "0x100594b5"], ["0x10099b11", "mov eax, dword ptr [eax + 0x74]", "0x100594ba"], ["0x10099b14", "push edi", "0x100594bd"]]}, {"orig": [["0x10099b15", "push esi"], ["0x10099b16", "lea ecx, [ebp - 0x98]"], ["0x10099b1c", "mov eax, dword ptr [eax + 0xc]"], ["0x10099b1f", "push ecx"], ["0x10099b20", "push eax"], ["0x10099b21", "mov eax, dword ptr [eax]"]], "recomp": [["0x100594be", "lea edx, [ebp - 0xa0]"], ["0x100594c4", "mov ecx, dword ptr [eax + 0xc]"], ["0x100594c7", "lea eax, [ebx + 4]"], ["0x100594ca", "push eax"], ["0x100594cb", "push edx"], ["0x100594cc", "push ecx"], ["0x100594cd", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x10099b23", "call dword ptr [eax + 0x18]", "0x100594cf"], ["0x10099b26", "test eax, eax", "0x100594d2"]]}, {"orig": [["0x10099b28", "jne 0x16f"]], "recomp": [["0x100594d4", "jne 0x173"], ["0x100594da", "mov eax, dword ptr [ebp - 0x94]"], ["0x100594e0", "mov dword ptr [ebp - 0x34], edi"], ["0x100594e3", "dec eax"]]}, {"both": [["0x10099b2e", "mov dword ptr [ebp - 0x2c], edi", "0x100594e4"]]}, {"orig": [["0x10099b31", "mov eax, dword ptr [ebp - 0x8c]"]], "recomp": [["0x100594e7", "mov dword ptr [ebp - 0x30], eax"], ["0x100594ea", "mov eax, dword ptr [ebp - 0x98]"]]}, {"both": [["0x10099b37", "dec eax", "0x100594f0"]]}, {"orig": [["0x10099b38", "mov dword ptr [ebp - 0x28], edi"], ["0x10099b3b", "mov dword ptr [ebp - 0x24], eax"], ["0x10099b3e", "mov eax, dword ptr [ebp - 0x90]"], ["0x10099b44", "dec eax"], ["0x10099b45", "mov dword ptr [ebp - 0x20], eax"], ["0x10099b48", "mov eax, dword ptr [esi]"]], "recomp": [["0x100594f1", "mov dword ptr [ebp - 0x28], eax"], ["0x100594f4", "mov eax, dword ptr [ebx + 4]"]]}, {"both": [["0x10099b4a", "mov ecx, dword ptr [ebx + 8]", "0x100594f7"], ["0x10099b4d", "push ecx", "0x100594fa"], ["0x10099b4e", "push eax", "0x100594fb"], ["0x10099b4f", "mov eax, dword ptr [eax]", "0x100594fc"], ["0x10099b51", "call dword ptr [eax + 0x7c]", "0x100594fe"]]}, {"orig": [["0x10099b54", "mov ecx, dword ptr [esi]"]], "recomp": [["0x10059501", "mov ecx, dword ptr [ebx + 4]"]]}, {"both": [["0x10099b56", "push 0x10", "0x10059504"]]}, {"orig": [["0x10099b58", "lea edx, [ebp - 0x2c]"], ["0x10099b5b", "mov eax, dword ptr [ebp + 8]"]], "recomp": [["0x10059506", "lea edx, [ebp - 0x34]"], ["0x10059509", "mov eax, dword ptr [esi + 4]"]]}, {"both": [["0x10099b5e", "push edx", "0x1005950c"]]}, {"orig": [["0x10099b5f", "mov edx, dword ptr [eax + 4]"], ["0x10099b62", "push edx"]], "recomp": [["0x1005950d", "push eax"], ["0x1005950e", "push edi"]]}, {"both": [["0x10099b63", "mov eax, dword ptr [ecx]", "0x1005950f"], ["0x10099b65", "push edi", "0x10059511"]]}, {"orig": [["0x10099b66", "push edi"]], "recomp": []}, {"both": [["0x10099b67", "push ecx", "0x10059512"], ["0x10099b68", "call dword ptr [eax + 0x1c]", "0x10059513"], ["0x10099b6b", "test eax, eax", "0x10059516"]]}, {"orig": [["0x10099b6d", "je 0x2c"], ["0x10099b6f", "mov eax, dword ptr [esi]"]], "recomp": [["0x10059518", "je 0x2d"], ["0x1005951a", "mov eax, dword ptr [ebx + 4]"]]}, {"both": [["0x10099b71", "push eax", "0x1005951d"], ["0x10099b72", "mov esi, dword ptr [eax]", "0x1005951e"], ["0x10099b74", "call dword ptr [esi + 8]", "0x10059520"], ["0x10099b77", "mov eax, dword ptr [ebx + 8]", "0x10059523"], ["0x10099b7a", "push eax", "0x10059526"], ["0x10099b7b", "mov esi, dword ptr [eax]", "0x10059527"], ["0x10099b7d", "call dword ptr [esi + 8]", "0x10059529"], ["0x10099b80", "test ebx, ebx", "0x1005952c"], ["0x10099b82", "je 0x10", "0x1005952e"], ["0x10099b84", "mov ecx, ebx", "0x10059530"]]}]], ["@@ -0x10099b8b,124 +0x10059537,114 @@", [{"both": [["0x10099b8b", "push ebx", "0x10059537"], ["0x10099b8c", "call ??3@YAXPAX@Z (FUNCTION)", "0x10059538"], ["0x10099b91", "add esp, 4", "0x1005953d"], ["0x10099b94", "xor eax, eax", "0x10059540"], ["0x10099b96", "jmp -0x116", "0x10059542"], ["0x10099b9b", "call VideoManager (FUNCTION)", "0x10059547"], ["0x10099ba0", "mov eax, dword ptr [eax + 0x64]", "0x1005954c"], ["0x10099ba3", "lea edx, [ebx + 0xc]", "0x1005954f"], ["0x10099ba6", "push edx", "0x10059552"], ["0x10099ba7", "mov ecx, dword ptr [eax + 4]", "0x10059553"]]}, {"orig": [["0x10099baa", "mov eax, dword ptr [esi]"]], "recomp": [["0x10059556", "mov eax, dword ptr [ebx + 4]"]]}, {"both": [["0x10099bac", "mov edi, dword ptr [ecx]", "0x10059559"], ["0x10099bae", "push eax", "0x1005955b"], ["0x10099baf", "push ecx", "0x1005955c"], ["0x10099bb0", "call dword ptr [edi + 0x48]", "0x1005955d"], ["0x10099bb3", "test eax, eax", "0x10059560"]]}, {"orig": [["0x10099bb5", "je 0x2c"], ["0x10099bb7", "mov eax, dword ptr [esi]"]], "recomp": [["0x10059562", "je 0x2d"], ["0x10059564", "mov eax, dword ptr [ebx + 4]"]]}, {"both": [["0x10099bb9", "push eax", "0x10059567"], ["0x10099bba", "mov esi, dword ptr [eax]", "0x10059568"], ["0x10099bbc", "call dword ptr [esi + 8]", "0x1005956a"], ["0x10099bbf", "mov eax, dword ptr [ebx + 8]", "0x1005956d"], ["0x10099bc2", "push eax", "0x10059570"], ["0x10099bc3", "mov esi, dword ptr [eax]", "0x10059571"], ["0x10099bc5", "call dword ptr [esi + 8]", "0x10059573"], ["0x10099bc8", "test ebx, ebx", "0x10059576"], ["0x10099bca", "je 0x10", "0x10059578"], ["0x10099bcc", "mov ecx, ebx", "0x1005957a"], ["0x10099bce", "call LegoTextureInfo::~LegoTextureInfo (FUNCTION)", "0x1005957c"], ["0x10099bd3", "push ebx", "0x10059581"], ["0x10099bd4", "call ??3@YAXPAX@Z (FUNCTION)", "0x10059582"], ["0x10099bd9", "add esp, 4", "0x10059587"], ["0x10099bdc", "xor eax, eax", "0x1005958a"]]}, {"orig": [["0x10099bde", "jmp -0x15e"]], "recomp": [["0x1005958c", "jmp -0x160"]]}, {"both": [["0x10099be3", "mov eax, dword ptr [ebx + 0xc]", "0x10059591"], ["0x10099be6", "push ebx", "0x10059594"], ["0x10099be7", "push eax", "0x10059595"]]}, {"orig": [["0x10099be8", "mov esi, dword ptr [eax]"], ["0x10099bea", "call dword ptr [esi + 0x18]"]], "recomp": [["0x10059596", "mov edi, dword ptr [eax]"], ["0x10059598", "call dword ptr [edi + 0x18]"]]}, {"both": [["0x10099bed", "mov ecx, dword ptr [ebp - 0x14]", "0x1005959b"]]}, {"orig": [["0x10099bf0", "mov dword ptr [ebp - 0x1c], ebx"], ["0x10099bf3", "mov eax, dword ptr [ecx + 0x1c]"]], "recomp": [["0x1005959e", "mov dword ptr [ebp - 0x24], ebx"], ["0x100595a1", "mov edx, dword ptr [ecx + 0x1c]"]]}, {"both": [["0x10099bf6", "push 0x10", "0x100595a4"]]}, {"orig": [["0x10099bf8", "mov dword ptr [ebp - 0x10], eax"], ["0x10099bfb", "lea esi, [eax + 4]"], ["0x10099bfe", "mov dword ptr [ebp - 0x18], 1"], ["0x10099c05", "mov edi, dword ptr [esi]"]], "recomp": [["0x100595a6", "mov dword ptr [ebp - 0x18], edx"], ["0x100595a9", "lea edi, [edx + 4]"], ["0x100595ac", "mov dword ptr [ebp - 0x20], 1"], ["0x100595b3", "mov ecx, dword ptr [edi]"], ["0x100595b5", "mov dword ptr [ebp - 0x10], ecx"]]}, {"both": [["0x10099c07", "call ??2@YAPAXI@Z (FUNCTION)", "0x100595b8"], ["0x10099c0c", "add esp, 4", "0x100595bd"]]}, {"orig": [["0x10099c0f", "test edi, edi"], ["0x10099c11", "je 0xa"], ["0x10099c13", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x100595c0", "cmp dword ptr [ebp - 0x10], 0"], ["0x100595c4", "je 0xd"], ["0x100595c6", "mov ecx, dword ptr [ebp - 0x18]"], ["0x100595c9", "mov edx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x10099c16", "mov dword ptr [eax], ecx", "0x100595cc"]]}, {"orig": [["0x10099c18", "mov dword ptr [eax + 4], edi"]], "recomp": [["0x100595ce", "mov dword ptr [eax + 4], edx"]]}, {"both": [["0x10099c1b", "jmp 0x5", "0x100595d1"], ["0x10099c1d", "mov dword ptr [eax], eax", "0x100595d3"], ["0x10099c1f", "mov dword ptr [eax + 4], eax", "0x100595d5"]]}, {"orig": [["0x10099c22", "mov dword ptr [esi], eax"]], "recomp": [["0x100595d8", "mov dword ptr [edi], eax"]]}, {"both": [["0x10099c24", "mov ecx, dword ptr [eax + 4]", "0x100595da"], ["0x10099c27", "mov dword ptr [ecx], eax", "0x100595dd"], ["0x10099c29", "add eax, 8", "0x100595df"], ["0x10099c2c", "je 0xb", "0x100595e2"]]}, {"orig": [["0x10099c2e", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x10099c31", "mov edx, dword ptr [ebp - 0x18]"]], "recomp": [["0x100595e4", "mov ecx, dword ptr [ebp - 0x24]"], ["0x100595e7", "mov edx, dword ptr [ebp - 0x20]"]]}, {"both": [["0x10099c34", "mov dword ptr [eax], ecx", "0x100595ea"], ["0x10099c36", "mov dword ptr [eax + 4], edx", "0x100595ec"], ["0x10099c39", "mov ecx, dword ptr [ebp - 0x14]", "0x100595ef"], ["0x10099c3c", "inc dword ptr [ecx + 0x20]", "0x100595f2"], ["0x10099c3f", "mov eax, dword ptr [ebx + 0xc]", "0x100595f5"], ["0x10099c42", "push eax", "0x100595f8"]]}, {"orig": [["0x10099c43", "mov esi, dword ptr [eax]"], ["0x10099c45", "call dword ptr [esi + 4]"]], "recomp": [["0x100595f9", "mov edi, dword ptr [eax]"], ["0x100595fb", "call dword ptr [edi + 4]"]]}, {"both": [["0x10099c48", "mov eax, dword ptr [ebx]", "0x100595fe"], ["0x10099c4a", "test eax, eax", "0x10059600"], ["0x10099c4c", "je 0x9", "0x10059602"], ["0x10099c4e", "push eax", "0x10059604"], ["0x10099c4f", "call ??3@YAXPAX@Z (FUNCTION)", "0x10059605"], ["0x10099c54", "add esp, 4", "0x1005960a"]]}, {"orig": [["0x10099c57", "mov eax, dword ptr [ebp + 8]"]], "recomp": [["0x1005960d", "mov edi, dword ptr [esi]"]]}, {"both": [["0x10099c5a", "mov ecx, 0xffffffff", "0x1005960f"]]}, {"orig": [["0x10099c5f", "mov edi, dword ptr [eax]"]], "recomp": []}, {"both": [["0x10099c61", "sub eax, eax", "0x10059614"], ["0x10099c63", "repne scasb al, byte ptr es:[edi]", "0x10059616"], ["0x10099c65", "not ecx", "0x10059618"], ["0x10099c67", "push ecx", "0x1005961a"], ["0x10099c68", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005961b"]]}, {"orig": [], "recomp": [["0x10059620", "add esp, 4"], ["0x10059623", "mov ecx, 0xffffffff"]]}, {"both": [["0x10099c6d", "mov dword ptr [ebx], eax", "0x10059628"]]}, {"orig": [["0x10099c6f", "mov eax, dword ptr [ebp + 8]"], ["0x10099c72", "add esp, 4"], ["0x10099c75", "mov ecx, 0xffffffff"], ["0x10099c7a", "mov edi, dword ptr [eax]"]], "recomp": []}, {"both": [["0x10099c7c", "sub eax, eax", "0x1005962a"]]}, {"orig": [], "recomp": [["0x1005962c", "mov edi, dword ptr [esi]"]]}, {"both": [["0x10099c7e", "repne scasb al, byte ptr es:[edi]", "0x1005962e"], ["0x10099c80", "not ecx", "0x10059630"], ["0x10099c82", "sub edi, ecx", "0x10059632"]]}, {"orig": [["0x10099c84", "mov edx, ecx"]], "recomp": [["0x10059634", "mov eax, ecx"]]}, {"both": [["0x10099c86", "shr ecx, 2", "0x10059636"], ["0x10099c89", "mov esi, edi", "0x10059639"], ["0x10099c8b", "mov edi, dword ptr [ebx]", "0x1005963b"], ["0x10099c8d", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1005963d"]]}, {"orig": [["0x10099c8f", "mov ecx, edx"]], "recomp": [["0x1005963f", "mov ecx, eax"]]}, {"both": [["0x10099c91", "and ecx, 3", "0x10059641"], ["0x10099c94", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x10059644"], ["0x10099c96", "mov eax, ebx", "0x10059646"]]}, {"orig": [["0x10099c98", "jmp -0x218"], ["0x10099c9d", "xor eax, eax"], ["0x10099c9f", "jmp -0x21f"]], "recomp": [["0x10059648", "jmp -0x21c"], ["0x1005964d", "xor eax, eax"], ["0x1005964f", "jmp -0x223"]]}, {"both": [["0x10099ca4", "mov eax, <OFFSET7>", "0x10059654"], ["0x10099ca9", "jmp ___CxxFrameHandler (FUNCTION)", "0x10059659"], ["0x10099cae", "mov eax, dword ptr [ebp - 0x10]", "0x1005965e"], ["0x10099cb1", "push eax", "0x10059661"], ["0x10099cb2", "call ??3@YAXPAX@Z (FUNCTION)", "0x10059662"], ["0x10099cb7", "add esp, 4", "0x10059667"], ["0x10099cba", "ret ", "0x1005966a"]]}, {"orig": [["0x10099cbb", "int3 "], ["0x10099cbc", "int3 "], ["0x10099cbd", "int3 "], ["0x10099cbe", "int3 "], ["0x10099cbf", "int3 "], ["0x10099cc0", "sub esp, 4"], ["0x10099cc3", "push esi"], ["0x10099cc4", "push edi"], ["0x10099cc5", "mov esi, ecx"], ["0x10099cc7", "mov edi, dword ptr [esp + 0x10]"]], "recomp": []}]]]}, {"address": "0x10099cc0", "recomp": "0x10059670", "name": "LegoTextureContainer::EraseFromList", "matching": 1.0, "diff": []}, {"address": "0x10099d60", "recomp": "0x10059760", "name": "LegoTreeNode::LegoTreeNode", "matching": 1.0, "diff": []}, {"address": "0x10099d80", "recomp": "0x10059780", "name": "LegoTreeNode::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10099da0", "recomp": "0x100597a0", "name": "LegoTreeNode::~LegoTreeNode", "matching": 1.0, "diff": []}, {"address": "0x10099dd0", "recomp": "0x100597d0", "name": "LegoTree::LegoTree", "matching": 1.0, "diff": []}, {"address": "0x10099de0", "recomp": "0x10059850", "name": "LegoTree::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x10099e00", "recomp": "0x10059870", "name": "LegoTree::~LegoTree", "matching": 1.0, "diff": []}, {"address": "0x10099e20", "recomp": "0x10059890", "name": "LegoTree::Read", "matching": 1.0, "diff": []}, {"address": "0x10099e40", "recomp": "0x100598b0", "name": "LegoTree::Write", "matching": 1.0, "diff": []}, {"address": "0x10099e60", "recomp": "0x100598d0", "name": "LegoTree::Read", "matching": 0.9789473684210527, "diff": [["@@ -0x10099f18,22 +0x10059988,22 @@", [{"both": [["0x10099f18", "test eax, eax", "0x10059988"], ["0x10099f1a", "jne 0x1c", "0x1005998a"], ["0x10099f1c", "mov eax, dword ptr [esi]", "0x1005998c"], ["0x10099f1e", "add edi, 4", "0x1005998e"], ["0x10099f21", "inc ebx", "0x10059991"], ["0x10099f22", "inc dword ptr [eax + 8]", "0x10059992"], ["0x10099f25", "mov ecx, dword ptr [ebp - 0x18]", "0x10059995"], ["0x10099f28", "mov eax, dword ptr [esi]", "0x10059998"], ["0x10099f2a", "mov edx, dword ptr [eax + 0xc]", "0x1005999a"], ["0x10099f2d", "mov dword ptr [edx + edi - 4], ecx", "0x1005999d"]]}, {"orig": [["0x10099f31", "cmp dword ptr [ebp - 0x10], ebx"], ["0x10099f34", "ja -0x2e"]], "recomp": [["0x100599a1", "cmp ebx, dword ptr [ebp - 0x10]"], ["0x100599a4", "jb -0x2e"]]}, {"both": [["0x10099f36", "xor eax, eax", "0x100599a6"], ["0x10099f38", "mov ecx, dword ptr [ebp - 0xc]", "0x100599a8"], ["0x10099f3b", "pop edi", "0x100599ab"], ["0x10099f3c", "mov dword ptr fs:[0], ecx", "0x100599ac"], ["0x10099f43", "pop esi", "0x100599b3"], ["0x10099f44", "pop ebx", "0x100599b4"], ["0x10099f45", "mov esp, ebp", "0x100599b5"], ["0x10099f47", "pop ebp", "0x100599b7"], ["0x10099f48", "ret 8", "0x100599b8"], ["0x10099f4b", "mov eax, <OFFSET5>", "0x100599bb"]]}]]]}, {"address": "0x10099f70", "recomp": "0x100597e0", "name": "LegoTree::CreateData", "matching": 1.0, "diff": []}, {"address": "0x10099fe0", "recomp": "0x10056d80", "name": "LegoTreeNodeData::Read", "matching": 1.0, "diff": []}, {"address": "0x10099ff0", "recomp": "0x10056d90", "name": "LegoTreeNodeData::Write", "matching": 1.0, "diff": []}, {"address": "0x1009a000", "recomp": "0x10056da0", "name": "LegoTreeNodeData::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1009a020", "recomp": "0x100599e0", "name": "LegoTree::Write", "matching": 1.0, "effective": true, "diff": [["@@ -0x1009a04e,32 +0x10059a0e,32 @@", [{"both": [["0x1009a04e", "mov eax, dword ptr [edi + 8]", "0x10059a0e"], ["0x1009a051", "push 4", "0x10059a11"], ["0x1009a053", "mov ecx, esi", "0x10059a13"], ["0x1009a055", "mov dword ptr [esp + 0x14], eax", "0x10059a15"], ["0x1009a059", "lea eax, [esp + 0x14]", "0x10059a19"], ["0x1009a05d", "mov ebx, dword ptr [esi]", "0x10059a1d"], ["0x1009a05f", "push eax", "0x10059a1f"], ["0x1009a060", "call dword ptr [ebx + 8]", "0x10059a20"], ["0x1009a063", "test eax, eax", "0x10059a23"], ["0x1009a065", "jne 0x26", "0x10059a25"]]}, {"orig": [], "recomp": [["0x10059a27", "xor ebp, ebp"]]}, {"both": [["0x1009a067", "xor ebx, ebx", "0x10059a29"]]}, {"orig": [["0x1009a069", "xor ebp, ebp"], ["0x1009a06b", "cmp dword ptr [edi + 8], ebp"]], "recomp": [["0x10059a2b", "cmp dword ptr [edi + 8], ebx"]]}, {"both": [["0x1009a06e", "jbe 0x1b", "0x10059a2e"], ["0x1009a070", "mov eax, dword ptr [edi + 0xc]", "0x10059a30"]]}, {"orig": [["0x1009a073", "mov ecx, dword ptr [eax + ebx]"]], "recomp": [["0x10059a33", "mov ecx, dword ptr [eax + ebp]"]]}, {"both": [["0x1009a076", "push ecx", "0x10059a36"], ["0x1009a077", "push esi", "0x10059a37"], ["0x1009a078", "mov ecx, dword ptr [esp + 0x1c]", "0x10059a38"], ["0x1009a07c", "call LegoTree::Write (FUNCTION)", "0x10059a3c"], ["0x1009a081", "test eax, eax", "0x10059a41"], ["0x1009a083", "jne 0x8", "0x10059a43"]]}, {"orig": [["0x1009a085", "add ebx, 4"], ["0x1009a088", "inc ebp"]], "recomp": [["0x10059a45", "add ebp, 4"], ["0x10059a48", "inc ebx"]]}, {"both": [["0x1009a089", "jmp -0x20", "0x10059a49"], ["0x1009a08b", "xor eax, eax", "0x10059a4b"], ["0x1009a08d", "pop ebp", "0x10059a4d"], ["0x1009a08e", "pop edi", "0x10059a4e"], ["0x1009a08f", "pop esi", "0x10059a4f"], ["0x1009a090", "pop ebx", "0x10059a50"], ["0x1009a091", "add esp, 8", "0x10059a51"], ["0x1009a094", "ret 8", "0x10059a54"]]}]]]}, {"address": "0x1009a0a0", "recomp": "0x10059a60", "name": "LegoTree::Delete", "matching": 1.0, "diff": []}, {"address": "0x1009a0e0", "recomp": "0x10056d70", "name": "LegoTreeNodeData::~LegoTreeNodeData", "matching": 1.0, "diff": []}, {"address": "0x1009b0a0", "recomp": "0x10050660", "name": "MxDirect3D::MxDirect3D", "matching": 1.0, "diff": []}, {"address": "0x1009b120", "recomp": "0x100506e0", "name": "MxDirect3D::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1009b140", "recomp": "0x10050700", "name": "MxDirect3D::~MxDirect3D", "matching": 1.0, "diff": []}, {"address": "0x1009b1a0", "recomp": "0x10050760", "name": "MxDirect3D::Create", "matching": 1.0, "diff": []}, {"address": "0x1009b210", "recomp": "0x100507d0", "name": "MxDirect3D::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1009b290", "recomp": "0x10050850", "name": "MxDirect3D::DestroyButNotDirectDraw", "matching": 1.0, "diff": []}, {"address": "0x1009b2d0", "recomp": "0x10050890", "name": "MxDirect3D::D3DCreate", "matching": 0.9523809523809523, "diff": [["@@ -0x1009b2d0,16 +0x10050890,16 @@", [{"both": [["0x1009b2d0", "push esi", "0x10050890"], ["0x1009b2d1", "mov eax, dword ptr [ecx + 0xc]", "0x10050891"], ["0x1009b2d4", "mov esi, ecx", "0x10050894"], ["0x1009b2d6", "lea ecx, [ecx + 0x884]", "0x10050896"], ["0x1009b2dc", "push ecx", "0x1005089c"]]}, {"orig": [["0x1009b2dd", "push <OFFSET1>"]], "recomp": [["0x1005089d", "push IID_IDirect3D2 (DATA)"]]}, {"both": [["0x1009b2e2", "push eax", "0x100508a2"], ["0x1009b2e3", "mov eax, dword ptr [eax]", "0x100508a3"], ["0x1009b2e5", "call dword ptr [eax]", "0x100508a5"], ["0x1009b2e7", "test eax, eax", "0x100508a7"], ["0x1009b2e9", "je 0x11", "0x100508a9"], ["0x1009b2eb", "push eax", "0x100508ab"], ["0x1009b2ec", "mov ecx, esi", "0x100508ac"], ["0x1009b2ee", "push 'Creation of IDirect3D failed' (STRING)", "0x100508ae"], ["0x1009b2f3", "call MxDirectDraw::Error (FUNCTION)", "0x100508b3"], ["0x1009b2f8", "xor eax, eax", "0x100508b8"]]}]]]}, {"address": "0x1009b310", "recomp": "0x100508d0", "name": "MxDirect3D::D3DSetMode", "matching": 0.971830985915493, "diff": [["@@ -0x1009b491,26 +0x10050a51,26 @@", [{"both": [["0x1009b491", "mov dword ptr [esp + 0x34], 0x6c", "0x10050a51"], ["0x1009b499", "mov eax, dword ptr [ecx]", "0x10050a59"], ["0x1009b49b", "push edx", "0x10050a5b"], ["0x1009b49c", "mov dword ptr [esp + 0x24], eax", "0x10050a5c"], ["0x1009b4a0", "push 0", "0x10050a60"], ["0x1009b4a2", "push ecx", "0x10050a62"], ["0x1009b4a3", "call dword ptr [eax + 0x64]", "0x10050a63"], ["0x1009b4a6", "test eax, eax", "0x10050a66"], ["0x1009b4a8", "jne 0x4d", "0x10050a68"], ["0x1009b4aa", "mov edx, dword ptr [esp + 0x50]", "0x10050a6a"]]}, {"orig": [], "recomp": [["0x10050a6e", "mov dword ptr [esp + 0x28], ebx"]]}, {"both": [["0x1009b4ae", "test ebx, ebx", "0x10050a72"]]}, {"orig": [["0x1009b4b0", "jle 0x2f"], ["0x1009b4b2", "mov dword ptr [esp + 0x28], ebx"], ["0x1009b4b6", "mov ebp, dword ptr [esp + 0x80]"]], "recomp": [["0x10050a74", "jle 0x2b"], ["0x10050a76", "mov ebp, dword ptr [esp + 0x1c]"]]}, {"both": [["0x1009b4bd", "mov edi, edx", "0x10050a7a"]]}, {"orig": [["0x1009b4bf", "imul ebp, dword ptr [esp + 0x1c]"]], "recomp": [["0x10050a7c", "imul ebp, dword ptr [esp + 0x80]"]]}, {"both": [["0x1009b4c4", "shr ebp, 3", "0x10050a84"], ["0x1009b4c7", "xor eax, eax", "0x10050a87"], ["0x1009b4c9", "mov ecx, ebp", "0x10050a89"], ["0x1009b4cb", "shr ecx, 2", "0x10050a8b"], ["0x1009b4ce", "rep stosd dword ptr es:[edi], eax", "0x10050a8e"], ["0x1009b4d0", "mov ecx, ebp", "0x10050a90"], ["0x1009b4d2", "and ecx, 3", "0x10050a92"], ["0x1009b4d5", "rep stosb byte ptr es:[edi], al", "0x10050a95"], ["0x1009b4d7", "add edx, dword ptr [esp + 0x3c]", "0x10050a97"], ["0x1009b4db", "dec dword ptr [esp + 0x28]", "0x10050a9b"]]}]], ["@@ -0x1009b52a,23 +0x10050aea,23 @@", [{"both": [["0x1009b52a", "lea ecx, [esp + 0x34]", "0x10050aea"], ["0x1009b52e", "push ecx", "0x10050aee"], ["0x1009b52f", "push 0", "0x10050aef"], ["0x1009b531", "push eax", "0x10050af1"], ["0x1009b532", "call dword ptr [esi + 0x64]", "0x10050af2"], ["0x1009b535", "test eax, eax", "0x10050af5"], ["0x1009b537", "jne 0x42", "0x10050af7"], ["0x1009b539", "mov edx, dword ptr [esp + 0x50]", "0x10050af9"], ["0x1009b53d", "test ebx, ebx", "0x10050afd"], ["0x1009b53f", "jle 0x28", "0x10050aff"]]}, {"orig": [["0x1009b541", "mov ebp, dword ptr [esp + 0x80]"]], "recomp": [["0x10050b01", "mov ebp, dword ptr [esp + 0x1c]"]]}, {"both": [["0x1009b548", "mov edi, edx", "0x10050b05"]]}, {"orig": [["0x1009b54a", "imul ebp, dword ptr [esp + 0x1c]"]], "recomp": [["0x10050b07", "imul ebp, dword ptr [esp + 0x80]"]]}, {"both": [["0x1009b54f", "shr ebp, 3", "0x10050b0f"], ["0x1009b552", "xor eax, eax", "0x10050b12"], ["0x1009b554", "mov ecx, ebp", "0x10050b14"], ["0x1009b556", "shr ecx, 2", "0x10050b16"], ["0x1009b559", "rep stosd dword ptr es:[edi], eax", "0x10050b19"], ["0x1009b55b", "mov ecx, ebp", "0x10050b1b"], ["0x1009b55d", "and ecx, 3", "0x10050b1d"], ["0x1009b560", "rep stosb byte ptr es:[edi], al", "0x10050b20"], ["0x1009b562", "add edx, dword ptr [esp + 0x3c]", "0x10050b22"], ["0x1009b566", "dec ebx", "0x10050b26"]]}]]]}, {"address": "0x1009b5a0", "recomp": "0x10050b60", "name": "MxDirect3D::ZBufferDepth", "matching": 1.0, "diff": []}, {"address": "0x1009b5f0", "recomp": "0x10050bb0", "name": "MxDirect3D::SetDevice", "matching": 0.944578313253012, "diff": [["@@ -0x1009b66b,25 +0x10050c2b,25 @@", [{"both": [["0x1009b66b", "mov ebx, eax", "0x10050c2b"], ["0x1009b66d", "mov eax, dword ptr [ebp + 8]", "0x10050c2d"], ["0x1009b670", "mov dword ptr [ebp - 0x24], 0", "0x10050c30"], ["0x1009b677", "mov ecx, dword ptr [eax + 8]", "0x10050c37"], ["0x1009b67a", "mov dword ptr [ebp - 4], 0xffffffff", "0x10050c3a"], ["0x1009b681", "mov edx, dword ptr [ecx]", "0x10050c41"], ["0x1009b683", "mov dword ptr [ebp - 0x20], edx", "0x10050c43"], ["0x1009b686", "mov ecx, dword ptr [ebp - 0x20]", "0x10050c46"], ["0x1009b689", "mov eax, dword ptr [ebp + 8]", "0x10050c49"], ["0x1009b68c", "cmp dword ptr [eax + 8], ecx", "0x10050c4c"]]}, {"orig": [["0x1009b68f", "je 0x1b5"]], "recomp": [["0x10050c4f", "je 0x1b3"]]}, {"both": [["0x1009b695", "lea eax, [ecx + 8]", "0x10050c55"], ["0x1009b698", "mov dword ptr [ebp - 0x10], eax", "0x10050c58"], ["0x1009b69b", "cmp eax, dword ptr [ebp + 0xc]", "0x10050c5b"]]}, {"orig": [["0x1009b69e", "jne 0x196"]], "recomp": [["0x10050c5e", "jne 0x194"]]}, {"both": [["0x1009b6a4", "push 0x17c", "0x10050c64"], ["0x1009b6a9", "call ??2@YAPAXI@Z (FUNCTION)", "0x10050c69"], ["0x1009b6ae", "mov dword ptr [ebp - 0x28], eax", "0x10050c6e"], ["0x1009b6b1", "add esp, 4", "0x10050c71"], ["0x1009b6b4", "mov esi, eax", "0x10050c74"], ["0x1009b6b6", "mov edi, 0", "0x10050c76"], ["0x1009b6bb", "mov dword ptr [ebp - 4], 1", "0x10050c7b"], ["0x1009b6c2", "test esi, esi", "0x10050c82"], ["0x1009b6c4", "je 0x9", "0x10050c84"], ["0x1009b6c6", "mov ecx, esi", "0x10050c86"]]}]], ["@@ -0x1009b70a,55 +0x10050cca,54 @@", [{"both": [["0x1009b70a", "mov dword ptr [edx + 8], edi", "0x10050cca"], ["0x1009b70d", "mov ecx, dword ptr [ecx + 0xc]", "0x10050ccd"], ["0x1009b710", "mov dword ptr [edx + 0xc], ecx", "0x10050cd0"], ["0x1009b713", "mov edx, dword ptr [ebp - 0x10]", "0x10050cd3"], ["0x1009b716", "mov ecx, dword ptr [ebx + 0xe0]", "0x10050cd6"], ["0x1009b71c", "mov eax, dword ptr [edx + 0x18c]", "0x10050cdc"], ["0x1009b722", "mov dword ptr [ecx + 8], eax", "0x10050ce2"], ["0x1009b725", "mov esi, dword ptr [ebx + 0xe0]", "0x10050ce5"], ["0x1009b72b", "mov eax, dword ptr [esi + 8]", "0x10050ceb"], ["0x1009b72e", "test eax, eax", "0x10050cee"]]}, {"orig": [["0x1009b730", "jle 0x71"]], "recomp": [["0x10050cf0", "jle 0x6f"]]}, {"both": [["0x1009b732", "lea eax, [eax + eax*2]", "0x10050cf2"], ["0x1009b735", "shl eax, 2", "0x10050cf5"], ["0x1009b738", "push eax", "0x10050cf8"], ["0x1009b739", "call ??2@YAPAXI@Z (FUNCTION)", "0x10050cf9"], ["0x1009b73e", "add esp, 4", "0x10050cfe"], ["0x1009b741", "mov edx, dword ptr [ebp - 0x10]", "0x10050d01"], ["0x1009b744", "mov dword ptr [esi + 4], eax", "0x10050d04"], ["0x1009b747", "mov eax, dword ptr [edx + 0x188]", "0x10050d07"], ["0x1009b74d", "mov ecx, dword ptr [eax]", "0x10050d0d"], ["0x1009b74f", "mov dword ptr [ebp - 0x14], ecx", "0x10050d0f"], ["0x1009b752", "cmp eax, ecx", "0x10050d12"]]}, {"orig": [["0x1009b754", "je 0x4d"]], "recomp": [["0x10050d14", "je 0x4b"]]}, {"both": [["0x1009b756", "xor ecx, ecx", "0x10050d16"], ["0x1009b758", "mov eax, dword ptr [ebp - 0x14]", "0x10050d18"], ["0x1009b75b", "mov esi, dword ptr [ebx + 0xe0]", "0x10050d1b"], ["0x1009b761", "mov edx, dword ptr [eax + 8]", "0x10050d21"], ["0x1009b764", "mov eax, dword ptr [esi + 4]", "0x10050d24"], ["0x1009b767", "mov edi, dword ptr [ebp - 0x14]", "0x10050d27"], ["0x1009b76a", "add ecx, 0xc", "0x10050d2a"], ["0x1009b76d", "mov dword ptr [eax + ecx - 0xc], edx", "0x10050d2d"], ["0x1009b771", "mov edx, dword ptr [edi + 0xc]", "0x10050d31"], ["0x1009b774", "mov esi, dword ptr [ebx + 0xe0]", "0x10050d34"], ["0x1009b77a", "mov eax, dword ptr [esi + 4]", "0x10050d3a"], ["0x1009b77d", "mov dword ptr [eax + ecx - 8], edx", "0x10050d3d"], ["0x1009b781", "mov edx, dword ptr [edi + 0x10]", "0x10050d41"], ["0x1009b784", "mov esi, dword ptr [ebx + 0xe0]", "0x10050d44"], ["0x1009b78a", "mov eax, dword ptr [esi + 4]", "0x10050d4a"], ["0x1009b78d", "mov dword ptr [eax + ecx - 4], edx", "0x10050d4d"]]}, {"orig": [["0x1009b791", "mov edx, dword ptr [edi]"], ["0x1009b793", "mov edi, edx"], ["0x1009b795", "mov dword ptr [ebp - 0x14], edx"], ["0x1009b798", "mov edx, dword ptr [ebp - 0x10]"], ["0x1009b79b", "cmp dword ptr [edx + 0x188], edi"], ["0x1009b7a1", "jne -0x4b"]], "recomp": [["0x10050d51", "mov eax, dword ptr [edi]"], ["0x10050d53", "mov edx, dword ptr [ebp - 0x10]"], ["0x10050d56", "mov dword ptr [ebp - 0x14], eax"], ["0x10050d59", "cmp dword ptr [edx + 0x188], eax"], ["0x10050d5f", "jne -0x49"]]}, {"both": [["0x1009b7a3", "mov esi, dword ptr [ebp - 0x10]", "0x10050d61"], ["0x1009b7a6", "mov edi, dword ptr [ebx + 0xe0]", "0x10050d64"], ["0x1009b7ac", "add esi, 0xc", "0x10050d6a"], ["0x1009b7af", "add edi, 0xc", "0x10050d6d"], ["0x1009b7b2", "mov ecx, 0x5b", "0x10050d70"], ["0x1009b7b7", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10050d75"], ["0x1009b7b9", "cmp dword ptr [ebp - 0x24], 0", "0x10050d77"], ["0x1009b7bd", "jne 0x4", "0x10050d7b"], ["0x1009b7bf", "or dword ptr [ebx + 0x10], 2", "0x10050d7d"], ["0x1009b7c3", "mov edx, dword ptr [ebp - 0x10]", "0x10050d81"]]}]], ["@@ -0x1009b81e,21 +0x10050ddc,21 @@", [{"both": [["0x1009b81e", "mov ecx, 0x33", "0x10050ddc"], ["0x1009b823", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10050de1"], ["0x1009b825", "mov eax, dword ptr [ebp - 0x18]", "0x10050de3"], ["0x1009b828", "mov dword ptr [eax + 0x880], ebx", "0x10050de6"], ["0x1009b82e", "mov ecx, dword ptr [ebx + 0xe0]", "0x10050dec"], ["0x1009b834", "mov dword ptr [eax + 0x870], ecx", "0x10050df2"], ["0x1009b83a", "mov eax, dword ptr [ebp - 0x20]", "0x10050df8"], ["0x1009b83d", "inc dword ptr [ebp - 0x24]", "0x10050dfb"], ["0x1009b840", "mov ecx, dword ptr [eax]", "0x10050dfe"], ["0x1009b842", "mov dword ptr [ebp - 0x20], ecx", "0x10050e00"]]}, {"orig": [["0x1009b845", "jmp -0x1c4"]], "recomp": [["0x10050e03", "jmp -0x1c2"]]}, {"both": [["0x1009b84a", "mov eax, dword ptr [ebp - 0x18]", "0x10050e08"], ["0x1009b84d", "cmp dword ptr [eax + 0x880], 0", "0x10050e0b"], ["0x1009b854", "jne 0x29", "0x10050e12"], ["0x1009b856", "test ebx, ebx", "0x10050e14"], ["0x1009b858", "je 0x10", "0x10050e16"], ["0x1009b85a", "mov ecx, ebx", "0x10050e18"], ["0x1009b85c", "call MxAssignedDevice::~MxAssignedDevice (FUNCTION)", "0x10050e1a"], ["0x1009b861", "push ebx", "0x10050e1f"], ["0x1009b862", "call ??3@YAXPAX@Z (FUNCTION)", "0x10050e20"], ["0x1009b867", "add esp, 4", "0x10050e25"]]}]], ["@@ -0x1009b886,10 +0x10050e44,12 @@", [{"both": [["0x1009b886", "mov eax, dword ptr [ebp - 0x28]", "0x10050e44"], ["0x1009b889", "push eax", "0x10050e47"], ["0x1009b88a", "call ??3@YAXPAX@Z (FUNCTION)", "0x10050e48"], ["0x1009b88f", "add esp, 4", "0x10050e4d"], ["0x1009b892", "ret ", "0x10050e50"], ["0x1009b893", "mov eax, <OFFSET7>", "0x10050e51"], ["0x1009b898", "jmp ___CxxFrameHandler (FUNCTION)", "0x10050e56"], ["0x1009b89d", "mov eax, dword ptr [ebp - 0x10]", "0x10050e5b"], ["0x1009b8a0", "push eax", "0x10050e5e"], ["0x1009b8a1", "call ??3@YAXPAX@Z (FUNCTION)", "0x10050e5f"]]}, {"orig": [], "recomp": [["0x10050e64", "add esp, 4"], ["0x10050e67", "ret "]]}]]]}, {"address": "0x1009b8b0", "recomp": "0x10050e70", "name": "MxAssignedDevice::MxAssignedDevice", "matching": 1.0, "diff": []}, {"address": "0x1009b8d0", "recomp": "0x10050e90", "name": "MxAssignedDevice::~MxAssignedDevice", "matching": 1.0, "effective": true, "diff": [["@@ -0x1009b8d0,15 +0x10050e90,15 @@", [{"both": [["0x1009b8d0", "push esi", "0x10050e90"], ["0x1009b8d1", "push edi", "0x10050e91"]]}, {"orig": [["0x1009b8d2", "mov edi, dword ptr [ecx + 0xe0]"], ["0x1009b8d8", "mov esi, ecx"], ["0x1009b8da", "test edi, edi"]], "recomp": [["0x10050e92", "mov esi, dword ptr [ecx + 0xe0]"], ["0x10050e98", "mov edi, ecx"], ["0x10050e9a", "test esi, esi"]]}, {"both": [["0x1009b8dc", "je 0x1a", "0x10050e9c"]]}, {"orig": [["0x1009b8de", "mov ecx, edi"]], "recomp": [["0x10050e9e", "mov ecx, esi"]]}, {"both": [["0x1009b8e0", "call MxDirectDraw::DeviceModesInfo::~DeviceModesInfo (FUNCTION)", "0x10050ea0"]]}, {"orig": [["0x1009b8e5", "push edi"]], "recomp": [["0x10050ea5", "push esi"]]}, {"both": [["0x1009b8e6", "call ??3@YAXPAX@Z (FUNCTION)", "0x10050ea6"]]}, {"orig": [["0x1009b8eb", "mov dword ptr [esi + 0xe0], 0"]], "recomp": [["0x10050eab", "mov dword ptr [edi + 0xe0], 0"]]}, {"both": [["0x1009b8f5", "add esp, 4", "0x10050eb5"], ["0x1009b8f8", "pop edi", "0x10050eb8"], ["0x1009b8f9", "pop esi", "0x10050eb9"], ["0x1009b8fa", "ret ", "0x10050eba"]]}]]]}, {"address": "0x1009b900", "recomp": "0x10050fc0", "name": "list<Direct3DDeviceInfo,allocator<Direct3DDeviceInfo> >::~list<Direct3DDeviceInfo,allocator<Direct3DDeviceInfo> >", "matching": 1.0, "diff": []}, {"address": "0x1009b970", "recomp": "0x10051030", "name": "list<MxDisplayMode,allocator<MxDisplayMode> >::~list<MxDisplayMode,allocator<MxDisplayMode> >", "matching": 1.0, "diff": []}, {"address": "0x1009b9e0", "recomp": "0x100510a0", "name": "List<Direct3DDeviceInfo>::~List<Direct3DDeviceInfo>", "matching": 1.0, "diff": []}, {"address": "0x1009ba30", "recomp": "0x100510f0", "name": "List<MxDisplayMode>::~List<MxDisplayMode>", "matching": 1.0, "diff": []}, {"address": "0x1009ba80", "recomp": "0x10050ec0", "name": "MxDriver::MxDriver", "matching": 1.0, "diff": []}, {"address": "0x1009bb80", "recomp": "0x10051140", "name": "MxDriver::~MxDriver", "matching": 1.0, "diff": []}, {"address": "0x1009bc30", "recomp": "0x100511f0", "name": "MxDriver::Init", "matching": 1.0, "diff": []}, {"address": "0x1009bd20", "recomp": "0x100512e0", "name": "Direct3DDeviceInfo::Direct3DDeviceInfo", "matching": 1.0, "diff": []}, {"address": "0x1009bd60", "recomp": "0x10051320", "name": "Direct3DDeviceInfo::~Direct3DDeviceInfo", "matching": 1.0, "diff": []}, {"address": "0x1009bda0", "recomp": "0x10051360", "name": "Direct3DDeviceInfo::Initialize", "matching": 1.0, "diff": []}, {"address": "0x1009bec0", "recomp": "0x10051480", "name": "MxDeviceEnumerate::MxDeviceEnumerate", "matching": 1.0, "diff": []}, {"address": "0x1009bf50", "recomp": "0x10051510", "name": "list<MxDriver,allocator<MxDriver> >::~list<MxDriver,allocator<MxDriver> >", "matching": 1.0, "diff": []}, {"address": "0x1009bfc0", "recomp": "0x10051580", "name": "List<MxDriver>::~List<MxDriver>", "matching": 1.0, "diff": []}, {"address": "0x1009c010", "recomp": "0x100515d0", "name": "MxDeviceEnumerate::~MxDeviceEnumerate", "matching": 1.0, "diff": []}, {"address": "0x1009c070", "recomp": "0x10051630", "name": "MxDeviceEnumerate::EnumDirectDrawCallback", "matching": 0.925207756232687, "diff": [["@@ -0x1009c0f1,41 +0x100516b1,41 @@", [{"both": [["0x1009c0f1", "call MxDriver::MxDriver (FUNCTION)", "0x100516b1"], ["0x1009c0f6", "xor ebx, ebx", "0x100516b6"], ["0x1009c0f8", "lea edi, [ebp - 0x19c]", "0x100516b8"], ["0x1009c0fe", "xor eax, eax", "0x100516be"], ["0x1009c100", "inc dword ptr [esi + 0xc]", "0x100516c0"], ["0x1009c103", "mov ecx, 0x5b", "0x100516c3"], ["0x1009c108", "mov dword ptr [ebp - 0x1a8], ebx", "0x100516c8"], ["0x1009c10e", "mov dword ptr [ebp - 0x1a4], ebx", "0x100516ce"], ["0x1009c114", "mov dword ptr [ebp - 0x1a0], ebx", "0x100516d4"], ["0x1009c11a", "rep stosd dword ptr es:[edi], eax", "0x100516da"]]}, {"orig": [], "recomp": [["0x100516dc", "mov eax, dword ptr [esi + 8]"], ["0x100516df", "mov dword ptr [ebp - 0x10], ebx"], ["0x100516e2", "push ebx"]]}, {"both": [["0x1009c11c", "mov dword ptr [ebp - 0x18], ebx", "0x100516e3"]]}, {"orig": [["0x1009c11f", "mov eax, dword ptr [esi + 8]"], ["0x1009c122", "push ebx"], ["0x1009c123", "mov dword ptr [ebp - 0x10], ebx"]], "recomp": []}, {"both": [["0x1009c126", "mov edi, dword ptr [eax + 4]", "0x100516e6"], ["0x1009c129", "lea eax, [ebp - 0x10]", "0x100516e9"], ["0x1009c12c", "mov ecx, dword ptr [edi + 8]", "0x100516ec"], ["0x1009c12f", "add edi, 8", "0x100516ef"], ["0x1009c132", "push eax", "0x100516f2"], ["0x1009c133", "push ecx", "0x100516f3"], ["0x1009c134", "call _DirectDrawCreate@12 (FUNCTION)", "0x100516f4"], ["0x1009c139", "test eax, eax", "0x100516f9"], ["0x1009c13b", "je 0x1b", "0x100516fb"], ["0x1009c13d", "push eax", "0x100516fd"], ["0x1009c13e", "mov ecx, esi", "0x100516fe"], ["0x1009c140", "call MxDeviceEnumerate::EnumerateErrorToString (FUNCTION)", "0x10051700"], ["0x1009c145", "push eax", "0x10051705"], ["0x1009c146", "push 'DirectDraw Create failed: %s\\n' (STRING)", "0x10051706"], ["0x1009c14b", "call MxDeviceEnumerate::BuildErrorString (FUNCTION)", "0x1005170b"], ["0x1009c150", "add esp, 8", "0x10051710"]]}, {"orig": [["0x1009c153", "jmp 0xde"]], "recomp": [["0x10051713", "jmp 0xd9"]]}, {"both": [["0x1009c158", "push MxDeviceEnumerate::DisplayModesEnumerateCallback (FUNCTION)", "0x10051718"], ["0x1009c15d", "mov eax, dword ptr [ebp - 0x10]", "0x1005171d"], ["0x1009c160", "push esi", "0x10051720"], ["0x1009c161", "push 0", "0x10051721"], ["0x1009c163", "push 0", "0x10051723"], ["0x1009c165", "mov ebx, dword ptr [eax]", "0x10051725"], ["0x1009c167", "push eax", "0x10051727"], ["0x1009c168", "call dword ptr [ebx + 0x20]", "0x10051728"], ["0x1009c16b", "lea eax, [edi + 0xc]", "0x1005172b"], ["0x1009c16e", "push 0", "0x1005172e"]]}]], ["@@ -0x1009c17d,69 +0x1005173d,67 @@", [{"both": [["0x1009c17d", "call dword ptr [eax + 0x2c]", "0x1005173d"], ["0x1009c180", "test eax, eax", "0x10051740"], ["0x1009c182", "je 0x1b", "0x10051742"], ["0x1009c184", "push eax", "0x10051744"], ["0x1009c185", "mov ecx, esi", "0x10051745"], ["0x1009c187", "call MxDeviceEnumerate::EnumerateErrorToString (FUNCTION)", "0x10051747"], ["0x1009c18c", "push eax", "0x1005174c"], ["0x1009c18d", "push 'GetCaps failed: %s\\n' (STRING)", "0x1005174d"], ["0x1009c192", "call MxDeviceEnumerate::BuildErrorString (FUNCTION)", "0x10051752"], ["0x1009c197", "add esp, 8", "0x10051757"]]}, {"orig": [["0x1009c19a", "jmp 0x97"]], "recomp": [["0x1005175a", "jmp 0x92"]]}, {"both": [["0x1009c19f", "lea eax, [ebp - 0x18]", "0x1005175f"], ["0x1009c1a2", "mov ecx, dword ptr [ebp - 0x10]", "0x10051762"], ["0x1009c1a5", "push eax", "0x10051765"]]}, {"orig": [["0x1009c1a6", "push <OFFSET11>"]], "recomp": [["0x10051766", "push IID_IDirect3D2 (DATA)"]]}, {"both": [["0x1009c1ab", "push ecx", "0x1005176b"], ["0x1009c1ac", "mov eax, dword ptr [ecx]", "0x1005176c"], ["0x1009c1ae", "call dword ptr [eax]", "0x1005176e"], ["0x1009c1b0", "test eax, eax", "0x10051770"], ["0x1009c1b2", "je 0x18", "0x10051772"], ["0x1009c1b4", "push eax", "0x10051774"], ["0x1009c1b5", "mov ecx, esi", "0x10051775"], ["0x1009c1b7", "call MxDeviceEnumerate::EnumerateErrorToString (FUNCTION)", "0x10051777"], ["0x1009c1bc", "push eax", "0x1005177c"], ["0x1009c1bd", "push 'D3D creation failed: %s\\n' (STRING)", "0x1005177d"], ["0x1009c1c2", "call MxDeviceEnumerate::BuildErrorString (FUNCTION)", "0x10051782"], ["0x1009c1c7", "add esp, 8", "0x10051787"]]}, {"orig": [["0x1009c1ca", "jmp 0x6a"]], "recomp": [["0x1005178a", "jmp 0x65"]]}, {"both": [["0x1009c1cc", "push esi", "0x1005178c"], ["0x1009c1cd", "mov eax, dword ptr [ebp - 0x18]", "0x1005178d"], ["0x1009c1d0", "mov ebx, dword ptr [eax]", "0x10051790"], ["0x1009c1d2", "push MxDeviceEnumerate::DevicesEnumerateCallback (FUNCTION)", "0x10051792"], ["0x1009c1d7", "push eax", "0x10051797"], ["0x1009c1d8", "call dword ptr [ebx + 0xc]", "0x10051798"], ["0x1009c1db", "test eax, eax", "0x1005179b"], ["0x1009c1dd", "je 0x18", "0x1005179d"], ["0x1009c1df", "push eax", "0x1005179f"], ["0x1009c1e0", "mov ecx, esi", "0x100517a0"], ["0x1009c1e2", "call MxDeviceEnumerate::EnumerateErrorToString (FUNCTION)", "0x100517a2"], ["0x1009c1e7", "push eax", "0x100517a7"], ["0x1009c1e8", "push 'D3D enum devices failed: %s\\n' (STRING)", "0x100517a8"], ["0x1009c1ed", "call MxDeviceEnumerate::BuildErrorString (FUNCTION)", "0x100517ad"], ["0x1009c1f2", "add esp, 8", "0x100517b2"]]}, {"orig": [["0x1009c1f5", "jmp 0x3f"]], "recomp": [["0x100517b5", "jmp 0x3a"]]}, {"both": [["0x1009c1f7", "cmp dword ptr [edi + 0x180], 0", "0x100517b7"]]}, {"orig": [["0x1009c1fe", "jne 0x36"]], "recomp": [["0x100517be", "jne 0x31"]]}, {"both": [["0x1009c200", "mov eax, dword ptr [esi + 8]", "0x100517c0"], ["0x1009c203", "mov ecx, dword ptr [eax + 4]", "0x100517c3"], ["0x1009c206", "mov dword ptr [ebp - 0x14], ecx", "0x100517c6"], ["0x1009c209", "lea edx, [ecx + 4]", "0x100517c9"]]}, {"orig": [], "recomp": [["0x100517cc", "mov ebx, dword ptr [edx]"]]}, {"both": [["0x1009c20c", "mov eax, dword ptr [ecx]", "0x100517ce"]]}, {"orig": [["0x1009c20e", "mov ebx, dword ptr [edx]"]], "recomp": [["0x100517d0", "add ecx, 8"]]}, {"both": [["0x1009c210", "mov dword ptr [ebx], eax", "0x100517d3"], ["0x1009c212", "mov ebx, dword ptr [edx]", "0x100517d5"]]}, {"orig": [["0x1009c214", "mov ecx, dword ptr [ebp - 0x14]"], ["0x1009c217", "mov eax, dword ptr [ecx]"]], "recomp": [["0x100517d7", "mov eax, dword ptr [ecx - 8]"]]}, {"both": [["0x1009c219", "mov dword ptr [eax + 4], ebx", "0x100517da"]]}, {"orig": [["0x1009c21c", "mov ecx, dword ptr [ebp - 0x14]"], ["0x1009c21f", "add ecx, 8"]], "recomp": []}, {"both": [["0x1009c222", "call MxDriver::~MxDriver (FUNCTION)", "0x100517dd"], ["0x1009c227", "mov ecx, dword ptr [ebp - 0x14]", "0x100517e2"], ["0x1009c22a", "push ecx", "0x100517e5"], ["0x1009c22b", "call ??3@YAXPAX@Z (FUNCTION)", "0x100517e6"], ["0x1009c230", "add esp, 4", "0x100517eb"], ["0x1009c233", "dec dword ptr [esi + 0xc]", "0x100517ee"], ["0x1009c236", "cmp dword ptr [ebp - 0x18], 0", "0x100517f1"], ["0x1009c23a", "je 0x9", "0x100517f5"], ["0x1009c23c", "mov eax, dword ptr [ebp - 0x18]", "0x100517f7"], ["0x1009c23f", "push eax", "0x100517fa"]]}]], ["@@ -0x1009c268,10 +0x10051823,11 @@", [{"both": [["0x1009c268", "mov dword ptr fs:[0], ecx", "0x10051823"], ["0x1009c26f", "pop edi", "0x1005182a"], ["0x1009c270", "pop esi", "0x1005182b"], ["0x1009c271", "pop ebx", "0x1005182c"], ["0x1009c272", "mov esp, ebp", "0x1005182d"], ["0x1009c274", "pop ebp", "0x1005182f"], ["0x1009c275", "ret 0xc", "0x10051830"], ["0x1009c278", "mov eax, <OFFSET18>", "0x10051833"], ["0x1009c27d", "jmp ___CxxFrameHandler (FUNCTION)", "0x10051838"], ["0x1009c282", "lea ecx, [ebp - 0x1a8]", "0x1005183d"]]}, {"orig": [], "recomp": [["0x10051843", "jmp MxDriver::~MxDriver (FUNCTION)"]]}]]]}, {"address": "0x1009c290", "recomp": "0x10051850", "name": "MxDriver::MxDriver", "matching": 0.9636363636363636, "diff": [["@@ -0x1009c2d1,72 +0x10051891,72 @@", [{"both": [["0x1009c2d1", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10051891"], ["0x1009c2d3", "mov esi, dword ptr [ebp + 8]", "0x10051893"], ["0x1009c2d6", "push 0x1ac", "0x10051896"], ["0x1009c2db", "mov cl, byte ptr [esi + 0x178]", "0x1005189b"], ["0x1009c2e1", "add esi, 0x178", "0x100518a1"], ["0x1009c2e7", "mov byte ptr [ebx + 0x178], cl", "0x100518a7"], ["0x1009c2ed", "call ??2@YAPAXI@Z (FUNCTION)", "0x100518ad"], ["0x1009c2f2", "add esp, 4", "0x100518b2"], ["0x1009c2f5", "mov dword ptr [eax], eax", "0x100518b5"], ["0x1009c2f7", "mov dword ptr [eax + 4], eax", "0x100518b7"]]}, {"orig": [], "recomp": [["0x100518ba", "mov dword ptr [ebx + 0x17c], eax"]]}, {"both": [["0x1009c2fa", "mov dword ptr [ebx + 0x180], 0", "0x100518c0"]]}, {"orig": [["0x1009c304", "mov dword ptr [ebx + 0x17c], eax"]], "recomp": []}, {"both": [["0x1009c30a", "mov ecx, dword ptr [esi + 4]", "0x100518ca"], ["0x1009c30d", "mov edx, dword ptr [eax]", "0x100518cd"], ["0x1009c30f", "mov dword ptr [ebp - 0x14], ecx", "0x100518cf"], ["0x1009c312", "mov dword ptr [ebp - 0x1c], edx", "0x100518d2"], ["0x1009c315", "mov eax, dword ptr [ecx]", "0x100518d5"], ["0x1009c317", "mov esi, eax", "0x100518d7"], ["0x1009c319", "cmp eax, ecx", "0x100518d9"], ["0x1009c31b", "je 0x1e", "0x100518db"], ["0x1009c31d", "lea eax, [esi + 8]", "0x100518dd"], ["0x1009c320", "mov ecx, dword ptr [ebp - 0x1c]", "0x100518e0"], ["0x1009c323", "push eax", "0x100518e3"], ["0x1009c324", "lea edx, [ebp - 0x10]", "0x100518e4"], ["0x1009c327", "push ecx", "0x100518e7"], ["0x1009c328", "push edx", "0x100518e8"], ["0x1009c329", "lea ecx, [ebx + 0x178]", "0x100518e9"], ["0x1009c32f", "call list<Direct3DDeviceInfo,allocator<Direct3DDeviceInfo> >::insert (FUNCTION)", "0x100518ef"], ["0x1009c334", "mov esi, dword ptr [esi]", "0x100518f4"]]}, {"orig": [["0x1009c336", "cmp dword ptr [ebp - 0x14], esi"]], "recomp": [["0x100518f6", "cmp esi, dword ptr [ebp - 0x14]"]]}, {"both": [["0x1009c339", "jne -0x1e", "0x100518f9"], ["0x1009c33b", "mov eax, dword ptr [ebp + 8]", "0x100518fb"], ["0x1009c33e", "lea esi, [ebx + 0x184]", "0x100518fe"], ["0x1009c344", "lea edi, [eax + 0x184]", "0x10051904"], ["0x1009c34a", "push 0x14", "0x1005190a"], ["0x1009c34c", "mov dword ptr [ebp - 4], 1", "0x1005190c"], ["0x1009c353", "mov al, byte ptr [edi]", "0x10051913"], ["0x1009c355", "mov byte ptr [esi], al", "0x10051915"], ["0x1009c357", "call ??2@YAPAXI@Z (FUNCTION)", "0x10051917"], ["0x1009c35c", "add esp, 4", "0x1005191c"], ["0x1009c35f", "mov dword ptr [eax], eax", "0x1005191f"], ["0x1009c361", "mov dword ptr [eax + 4], eax", "0x10051921"]]}, {"orig": [], "recomp": [["0x10051924", "mov dword ptr [ebx + 0x188], eax"]]}, {"both": [["0x1009c364", "mov dword ptr [ebx + 0x18c], 0", "0x1005192a"]]}, {"orig": [["0x1009c36e", "mov dword ptr [ebx + 0x188], eax"]], "recomp": []}, {"both": [["0x1009c374", "mov ecx, dword ptr [edi + 4]", "0x10051934"], ["0x1009c377", "mov edx, dword ptr [eax]", "0x10051937"], ["0x1009c379", "mov dword ptr [ebp - 0x14], ecx", "0x10051939"], ["0x1009c37c", "mov dword ptr [ebp - 0x1c], edx", "0x1005193c"], ["0x1009c37f", "mov eax, dword ptr [ecx]", "0x1005193f"], ["0x1009c381", "mov edi, eax", "0x10051941"], ["0x1009c383", "cmp eax, ecx", "0x10051943"], ["0x1009c385", "je 0x1a", "0x10051945"], ["0x1009c387", "lea eax, [edi + 8]", "0x10051947"], ["0x1009c38a", "mov ecx, dword ptr [ebp - 0x1c]", "0x1005194a"], ["0x1009c38d", "push eax", "0x1005194d"], ["0x1009c38e", "lea edx, [ebp - 0x10]", "0x1005194e"], ["0x1009c391", "push ecx", "0x10051951"], ["0x1009c392", "push edx", "0x10051952"], ["0x1009c393", "mov ecx, esi", "0x10051953"], ["0x1009c395", "call list<MxDisplayMode,allocator<MxDisplayMode> >::insert (FUNCTION)", "0x10051955"], ["0x1009c39a", "mov edi, dword ptr [edi]", "0x1005195a"]]}, {"orig": [["0x1009c39c", "cmp edi, dword ptr [ebp - 0x14]"]], "recomp": [["0x1005195c", "cmp dword ptr [ebp - 0x14], edi"]]}, {"both": [["0x1009c39f", "jne -0x1a", "0x1005195f"], ["0x1009c3a1", "mov eax, ebx", "0x10051961"], ["0x1009c3a3", "pop edi", "0x10051963"], ["0x1009c3a4", "mov dword ptr [ebp - 4], 0xffffffff", "0x10051964"], ["0x1009c3ab", "mov ecx, dword ptr [ebp - 0xc]", "0x1005196b"], ["0x1009c3ae", "pop esi", "0x1005196e"], ["0x1009c3af", "mov dword ptr fs:[0], ecx", "0x1005196f"], ["0x1009c3b6", "pop ebx", "0x10051976"], ["0x1009c3b7", "mov esp, ebp", "0x10051977"], ["0x1009c3b9", "pop ebp", "0x10051979"]]}]]]}, {"address": "0x1009c400", "recomp": "0x100519c0", "name": "list<Direct3DDeviceInfo,allocator<Direct3DDeviceInfo> >::insert", "matching": 0.8181818181818182, "diff": [["@@ -0x1009c400,28 +0x100519c0,28 @@", [{"both": [["0x1009c400", "push ebx", "0x100519c0"], ["0x1009c401", "push esi", "0x100519c1"], ["0x1009c402", "push edi", "0x100519c2"], ["0x1009c403", "mov ebx, ecx", "0x100519c3"]]}, {"orig": [["0x1009c405", "mov edi, dword ptr [esp + 0x14]"]], "recomp": [["0x100519c5", "mov esi, dword ptr [esp + 0x14]"]]}, {"both": [["0x1009c409", "push 0x1ac", "0x100519c9"]]}, {"orig": [["0x1009c40e", "mov esi, dword ptr [edi + 4]"]], "recomp": [["0x100519ce", "mov edi, dword ptr [esi + 4]"]]}, {"both": [["0x1009c411", "call ??2@YAPAXI@Z (FUNCTION)", "0x100519d1"], ["0x1009c416", "add esp, 4", "0x100519d6"]]}, {"orig": [["0x1009c419", "test esi, esi"]], "recomp": [["0x100519d9", "test edi, edi"]]}, {"both": [["0x1009c41b", "je 0x7", "0x100519db"]]}, {"orig": [["0x1009c41d", "mov dword ptr [eax], edi"], ["0x1009c41f", "mov dword ptr [eax + 4], esi"]], "recomp": [["0x100519dd", "mov dword ptr [eax], esi"], ["0x100519df", "mov dword ptr [eax + 4], edi"]]}, {"both": [["0x1009c422", "jmp 0x5", "0x100519e2"], ["0x1009c424", "mov dword ptr [eax], eax", "0x100519e4"], ["0x1009c426", "mov dword ptr [eax + 4], eax", "0x100519e6"]]}, {"orig": [["0x1009c429", "mov dword ptr [edi + 4], eax"]], "recomp": []}, {"both": [["0x1009c42c", "lea edi, [eax + 8]", "0x100519e9"]]}, {"orig": [], "recomp": [["0x100519ec", "mov dword ptr [esi + 4], eax"]]}, {"both": [["0x1009c42f", "mov ecx, dword ptr [eax + 4]", "0x100519ef"], ["0x1009c432", "test edi, edi", "0x100519f2"], ["0x1009c434", "mov dword ptr [ecx], eax", "0x100519f4"], ["0x1009c436", "je 0xb", "0x100519f6"], ["0x1009c438", "mov esi, dword ptr [esp + 0x18]", "0x100519f8"], ["0x1009c43c", "mov ecx, 0x69", "0x100519fc"], ["0x1009c441", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10051a01"], ["0x1009c443", "mov ecx, dword ptr [esp + 0x10]", "0x10051a03"], ["0x1009c447", "inc dword ptr [ebx + 8]", "0x10051a07"], ["0x1009c44a", "pop edi", "0x10051a0a"]]}]]]}, {"address": "0x1009c460", "recomp": "0x10051a20", "name": "list<MxDisplayMode,allocator<MxDisplayMode> >::insert", "matching": 1.0, "diff": []}, {"address": "0x1009c4c0", "recomp": "0x10051a80", "name": "MxDeviceEnumerate::BuildErrorString", "matching": 1.0, "diff": []}, {"address": "0x1009c4f0", "recomp": "0x10051ab0", "name": "MxDeviceEnumerate::DisplayModesEnumerateCallback", "matching": 1.0, "diff": []}, {"address": "0x1009c510", "recomp": "0x10051ad0", "name": "MxDeviceEnumerate::DevicesEnumerateCallback", "matching": 1.0, "diff": []}, {"address": "0x1009c540", "recomp": "0x10051b00", "name": "MxDeviceEnumerate::EnumDisplayModesCallback", "matching": 1.0, "effective": true, "diff": [["@@ -0x1009c54f,34 +0x10051b0f,34 @@", [{"both": [["0x1009c54f", "push edi", "0x10051b0f"], ["0x1009c550", "mov edx, dword ptr [edx + 0x54]", "0x10051b10"], ["0x1009c553", "mov dword ptr [esp + 0x10], eax", "0x10051b13"], ["0x1009c557", "mov dword ptr [esp + 0x14], ebx", "0x10051b17"], ["0x1009c55b", "mov eax, dword ptr [ecx + 8]", "0x10051b1b"], ["0x1009c55e", "mov dword ptr [esp + 0x18], edx", "0x10051b1e"], ["0x1009c562", "push 0x14", "0x10051b22"], ["0x1009c564", "mov esi, dword ptr [eax + 4]", "0x10051b24"], ["0x1009c567", "mov eax, dword ptr [esi + 0x190]", "0x10051b27"], ["0x1009c56d", "add esi, 0x18c", "0x10051b2d"]]}, {"orig": [["0x1009c573", "lea ebx, [eax + 4]"]], "recomp": [["0x10051b33", "lea edi, [eax + 4]"]]}, {"both": [["0x1009c576", "mov dword ptr [esp + 0x10], eax", "0x10051b36"]]}, {"orig": [["0x1009c57a", "mov edi, dword ptr [ebx]"]], "recomp": [["0x10051b3a", "mov ebx, dword ptr [edi]"]]}, {"both": [["0x1009c57c", "call ??2@YAPAXI@Z (FUNCTION)", "0x10051b3c"], ["0x1009c581", "add esp, 4", "0x10051b41"]]}, {"orig": [["0x1009c584", "test edi, edi"]], "recomp": [["0x10051b44", "test ebx, ebx"]]}, {"both": [["0x1009c586", "je 0xb", "0x10051b46"], ["0x1009c588", "mov ecx, dword ptr [esp + 0xc]", "0x10051b48"], ["0x1009c58c", "mov dword ptr [eax], ecx", "0x10051b4c"]]}, {"orig": [["0x1009c58e", "mov dword ptr [eax + 4], edi"]], "recomp": [["0x10051b4e", "mov dword ptr [eax + 4], ebx"]]}, {"both": [["0x1009c591", "jmp 0x5", "0x10051b51"], ["0x1009c593", "mov dword ptr [eax], eax", "0x10051b53"], ["0x1009c595", "mov dword ptr [eax + 4], eax", "0x10051b55"]]}, {"orig": [["0x1009c598", "mov dword ptr [ebx], eax"]], "recomp": [["0x10051b58", "mov dword ptr [edi], eax"]]}, {"both": [["0x1009c59a", "mov ecx, dword ptr [eax + 4]", "0x10051b5a"], ["0x1009c59d", "mov dword ptr [ecx], eax", "0x10051b5d"], ["0x1009c59f", "add eax, 8", "0x10051b5f"], ["0x1009c5a2", "je 0x15", "0x10051b62"], ["0x1009c5a4", "mov ebx, dword ptr [esp + 0x14]", "0x10051b64"], ["0x1009c5a8", "lea edx, [esp + 0x10]", "0x10051b68"], ["0x1009c5ac", "mov ecx, dword ptr [edx]", "0x10051b6c"], ["0x1009c5ae", "mov edx, dword ptr [edx + 8]", "0x10051b6e"], ["0x1009c5b1", "mov dword ptr [eax], ecx", "0x10051b71"], ["0x1009c5b3", "mov dword ptr [eax + 4], ebx", "0x10051b73"]]}]]]}, {"address": "0x1009c5d0", "recomp": "0x10051b90", "name": "MxDeviceEnumerate::EnumDevicesCallback", "matching": 1.0, "diff": []}, {"address": "0x1009c6c0", "recomp": "0x10051c80", "name": "MxDeviceEnumerate::DoEnumerate", "matching": 1.0, "diff": []}, {"address": "0x1009c710", "recomp": "0x10051cd0", "name": "MxDeviceEnumerate::DirectDrawEnumerateCallback", "matching": 1.0, "diff": []}, {"address": "0x1009c730", "recomp": "0x10051cf0", "name": "MxDeviceEnumerate::EnumerateErrorToString", "matching": 0.936374549819928, "diff": [["@@ -0x1009c9bc,22 +0x10051f7c,22 @@", [{"both": [["0x1009c9bc", "je 0x275", "0x10051f7c"], ["0x1009c9c2", "mov eax, 'Unrecognized error value.' (STRING)", "0x10051f82"], ["0x1009c9c7", "ret 4", "0x10051f87"], ["0x1009c9ca", "cmp eax, 0x88760190", "0x10051f8a"], ["0x1009c9cf", "jg 0x23", "0x10051f8f"], ["0x1009c9d1", "je 0x290", "0x10051f91"], ["0x1009c9d7", "add eax, 0x7789fe84", "0x10051f97"], ["0x1009c9dc", "cmp eax, 7", "0x10051f9c"], ["0x1009c9df", "ja -0x299", "0x10051f9f"], ["0x1009c9e5", "xor ecx, ecx", "0x10051fa5"]]}, {"orig": [["0x1009c9e7", "mov cl, byte ptr [eax + 0x1009cde4]"], ["0x1009c9ed", "jmp dword ptr [ecx*4 + 0x1009cdd0]"]], "recomp": [["0x10051fa7", "mov cl, byte ptr [eax + 0x100523a4]"], ["0x10051fad", "jmp dword ptr [ecx*4 + 0x10052390]"]]}, {"both": [["0x1009c9f4", "cmp eax, 0x887601a4", "0x10051fb4"], ["0x1009c9f9", "jg 0x19", "0x10051fb9"], ["0x1009c9fb", "je 0x276", "0x10051fbb"], ["0x1009ca01", "cmp eax, 0x8876019a", "0x10051fc1"], ["0x1009ca06", "je 0x263", "0x10051fc6"], ["0x1009ca0c", "mov eax, 'Unrecognized error value.' (STRING)", "0x10051fcc"], ["0x1009ca11", "ret 4", "0x10051fd1"], ["0x1009ca14", "cmp eax, 0x887601b8", "0x10051fd4"], ["0x1009ca19", "jg 0x19", "0x10051fd9"], ["0x1009ca1b", "je 0x266", "0x10051fdb"]]}]], ["@@ -0x1009cac1,21 +0x10052081,21 @@", [{"both": [["0x1009cac1", "cmp eax, 0x8876021c", "0x10052081"], ["0x1009cac6", "je 0x203", "0x10052086"], ["0x1009cacc", "mov eax, 'Unrecognized error value.' (STRING)", "0x1005208c"], ["0x1009cad1", "ret 4", "0x10052091"], ["0x1009cad4", "test eax, eax", "0x10052094"], ["0x1009cad6", "jg -0x390", "0x10052096"], ["0x1009cadc", "je 0x2e5", "0x1005209c"], ["0x1009cae2", "add eax, 0x7789fdcf", "0x100520a2"], ["0x1009cae7", "cmp eax, 0x1c", "0x100520a7"], ["0x1009caea", "ja -0x3a4", "0x100520aa"]]}, {"orig": [["0x1009caf0", "jmp dword ptr [eax*4 + 0x1009cdec]"]], "recomp": [["0x100520b0", "jmp dword ptr [eax*4 + 0x100523ac]"]]}, {"both": [["0x1009caf7", "mov eax, 'Action not supported.' (STRING)", "0x100520b7"], ["0x1009cafc", "ret 4", "0x100520bc"], ["0x1009caff", "mov eax, 'Generic failure.' (STRING)", "0x100520bf"], ["0x1009cb04", "ret 4", "0x100520c4"], ["0x1009cb07", "mov eax, 'DirectDraw does not have enough memory to perform the operation.' (STRING)", "0x100520c7"], ["0x1009cb0c", "ret 4", "0x100520cc"], ["0x1009cb0f", "mov eax, 'One or more of the parameters passed to the function are incorrect.' (STRING)", "0x100520cf"], ["0x1009cb14", "ret 4", "0x100520d4"], ["0x1009cb17", "mov eax, 'This object is already initialized.' (STRING)", "0x100520d7"], ["0x1009cb1c", "ret 4", "0x100520dc"]]}]], ["@@ -0x1009cdac,23 +0x1005236c,44 @@", [{"both": [["0x1009cdac", "ret 4", "0x1005236c"], ["0x1009cdaf", "mov eax, 'This surface can not be restored because it was created in a different mode.' (STRING)", "0x1005236f"], ["0x1009cdb4", "ret 4", "0x10052374"], ["0x1009cdb7", "mov eax, 'This surface can not be restored because it is an implicitly created surface.' (STRING)", "0x10052377"], ["0x1009cdbc", "ret 4", "0x1005237c"], ["0x1009cdbf", "mov eax, 'The surface being used is not a palette-based surface.' (STRING)", "0x1005237f"], ["0x1009cdc4", "ret 4", "0x10052384"], ["0x1009cdc7", "mov eax, 'No error.' (STRING)", "0x10052387"], ["0x1009cdcc", "ret 4", "0x1005238c"], ["0x1009cdcf", "nop ", "0x1005238f"]]}, {"orig": [["0x1009cdd0", "inc edi"], ["0x1009cdd1", "int3 "], ["0x1009cdd2", "or dword ptr [eax], edx"], ["0x1009cdd4", "dec edi"], ["0x1009cdd5", "int3 "], ["0x1009cdd6", "or dword ptr [eax], edx"], ["0x1009cdd8", "push edi"], ["0x1009cdd9", "int3 "], ["0x1009cdda", "or dword ptr [eax], edx"], ["0x1009cddc", "pop edi"], ["0x1009cddd", "int3 "], ["0x1009cdde", "or dword ptr [eax], edx"], ["0x1009cde0", "dec esp"]], "recomp": [["0x10052390", "pop es"], ["0x10052391", "and al, byte ptr [<OFFSET92>]"], ["0x10052397", "adc byte ptr [edi], dl"], ["0x10052399", "and al, byte ptr [<OFFSET93>]"], ["0x1005239f", "adc byte ptr [ebx + 0x4001005], cl"], ["0x100523a6", "add dword ptr [edx + eax], eax"], ["0x100523a9", "add al, 4"], ["0x100523ab", "add ebx, dword ptr [edi - 0x58effade]"], ["0x100523b1", "and al, byte ptr [<OFFSET94>]"], ["0x100523b7", "adc byte ptr [edi - 0x40effade], dh"], ["0x100523bd", "and al, byte ptr [<OFFSET95>]"], ["0x100523c3", "adc bh, cl"], ["0x100523c5", "and al, byte ptr [<OFFSET96>]"], ["0x100523cb", "adc bh, bl"], ["0x100523cd", "and al, byte ptr [<OFFSET97>]"], ["0x100523d3", "adc bh, ch"], ["0x100523d5", "and al, byte ptr [<OFFSET98>]"], ["0x100523db", "adc bh, bh"], ["0x100523dd", "and al, byte ptr [<OFFSET99>]"], ["0x100523e3", "adc byte ptr [edi], cl"], ["0x100523e5", "and eax, dword ptr [<OFFSET100>]"], ["0x100523eb", "adc byte ptr [edi], bl"], ["0x100523ed", "and eax, dword ptr [<OFFSET101>]"], ["0x100523f3", "adc byte ptr [edi], ch"], ["0x100523f5", "and eax, dword ptr [<OFFSET102>]"], ["0x100523fb", "adc byte ptr [edi], bh"], ["0x100523fd", "and eax, dword ptr [<OFFSET103>]"], ["0x10052403", "adc byte ptr [edi + 0x23], cl"], ["0x10052406", "add eax, 0x5235710"], ["0x1005240b", "adc byte ptr [edi + 0x23], bl"], ["0x1005240e", "add eax, 0x5236710"], ["0x10052413", "adc byte ptr [edi + 0x23], ch"], ["0x10052416", "add eax, 0x5237710"], ["0x1005241b", "adc byte ptr [edi + 0x23], bh"]]}]]]}, {"address": "0x1009ce60", "recomp": "0x10052420", "name": "MxDeviceEnumerate::ParseDeviceName", "matching": 1.0, "diff": []}, {"address": "0x1009cf20", "recomp": "0x100524e0", "name": "MxDeviceEnumerate::ProcessDeviceBytes", "matching": 0.7958115183246073, "diff": [["@@ -0x1009cf48,37 +0x10052508,37 @@", [{"both": [["0x1009cf48", "mov edx, dword ptr [ebx]", "0x10052508"], ["0x1009cf4a", "mov ebp, dword ptr [ebx + 4]", "0x1005250a"], ["0x1009cf4d", "mov dword ptr [edi], edx", "0x1005250d"], ["0x1009cf4f", "mov edx, dword ptr [ebx + 8]", "0x1005250f"], ["0x1009cf52", "mov ebx, dword ptr [ebx + 0xc]", "0x10052512"], ["0x1009cf55", "mov dword ptr [edi + 4], ebp", "0x10052515"], ["0x1009cf58", "mov dword ptr [edi + 8], edx", "0x10052518"], ["0x1009cf5b", "mov edx, dword ptr [ecx + 8]", "0x1005251b"], ["0x1009cf5e", "mov dword ptr [edi + 0xc], ebx", "0x1005251e"], ["0x1009cf61", "mov edi, dword ptr [edx]", "0x10052521"]]}, {"orig": [["0x1009cf63", "mov dword ptr [esp + 0x10], edi"]], "recomp": [["0x10052523", "mov dword ptr [esp + 0x14], edi"]]}, {"both": [["0x1009cf67", "cmp edi, edx", "0x10052527"]]}, {"orig": [["0x1009cf69", "je 0x96"]], "recomp": [["0x10052529", "je 0x9e"]]}, {"both": [["0x1009cf6f", "cmp dword ptr [esp + 0x3c], 0", "0x1005252f"], ["0x1009cf74", "jl 0xa", "0x10052534"], ["0x1009cf76", "cmp esi, dword ptr [esp + 0x3c]", "0x10052536"]]}, {"orig": [["0x1009cf7a", "jg 0x94"], ["0x1009cf80", "mov edi, dword ptr [esp + 0x10]"]], "recomp": [["0x1005253a", "jg 0x9c"], ["0x10052540", "mov edi, dword ptr [esp + 0x14]"]]}, {"both": [["0x1009cf84", "mov edx, dword ptr [edi + 0x184]", "0x10052544"], ["0x1009cf8a", "add edi, 8", "0x1005254a"], ["0x1009cf8d", "mov ebx, dword ptr [edx]", "0x1005254d"]]}, {"orig": [["0x1009cf8f", "mov dword ptr [esp + 0x14], ebx"], ["0x1009cf93", "mov edx, dword ptr [esp + 0x14]"], ["0x1009cf97", "cmp dword ptr [edi + 0x17c], edx"], ["0x1009cf9d", "je 0x52"]], "recomp": [["0x1005254f", "mov dword ptr [esp + 0x10], ebx"], ["0x10052553", "cmp ebx, edx"], ["0x10052555", "je 0x62"], ["0x10052557", "mov edx, dword ptr [esp + 0x10]"], ["0x1005255b", "lea ebx, [esp + 0x18]"]]}, {"both": [["0x1009cf9f", "mov edx, dword ptr [edx + 8]", "0x1005255f"]]}, {"orig": [["0x1009cfa2", "lea ebx, [esp + 0x18]"]], "recomp": []}, {"both": [["0x1009cfa6", "mov ebp, dword ptr [edx]", "0x10052562"], ["0x1009cfa8", "mov dword ptr [ebx], ebp", "0x10052564"], ["0x1009cfaa", "mov ebp, dword ptr [edx + 4]", "0x10052566"], ["0x1009cfad", "mov dword ptr [ebx + 4], ebp", "0x10052569"], ["0x1009cfb0", "mov ebp, dword ptr [edx + 8]", "0x1005256c"], ["0x1009cfb3", "mov dword ptr [ebx + 8], ebp", "0x1005256f"], ["0x1009cfb6", "mov edx, dword ptr [edx + 0xc]", "0x10052572"], ["0x1009cfb9", "mov dword ptr [ebx + 0xc], edx", "0x10052575"], ["0x1009cfbc", "mov ebx, dword ptr [esp + 0x18]", "0x10052578"], ["0x1009cfc0", "cmp dword ptr [esp + 0x28], ebx", "0x1005257c"]]}]], ["@@ -0x1009cfc6,42 +0x10052582,37 @@", [{"both": [["0x1009cfc6", "mov edx, dword ptr [esp + 0x1c]", "0x10052582"], ["0x1009cfca", "cmp dword ptr [esp + 0x2c], edx", "0x10052586"], ["0x1009cfce", "jne 0x1a", "0x1005258a"], ["0x1009cfd0", "mov edx, dword ptr [esp + 0x20]", "0x1005258c"], ["0x1009cfd4", "cmp dword ptr [esp + 0x30], edx", "0x10052590"], ["0x1009cfd8", "jne 0x10", "0x10052594"], ["0x1009cfda", "mov edx, dword ptr [esp + 0x24]", "0x10052596"], ["0x1009cfde", "cmp dword ptr [esp + 0x34], edx", "0x1005259a"], ["0x1009cfe2", "jne 0x6", "0x1005259e"], ["0x1009cfe4", "cmp esi, dword ptr [esp + 0x3c]", "0x100525a0"]]}, {"orig": [["0x1009cfe8", "je 0x20"]], "recomp": [["0x100525a4", "je 0x2c"]]}, {"both": [["0x1009cfea", "inc eax", "0x100525a6"]]}, {"orig": [["0x1009cfeb", "mov edx, dword ptr [esp + 0x14]"], ["0x1009cfef", "jmp -0x64"]], "recomp": []}, {"both": [["0x1009cff1", "mov edx, dword ptr [esp + 0x10]", "0x100525a7"]]}, {"orig": [["0x1009cff5", "inc esi"]], "recomp": []}, {"both": [["0x1009cff6", "mov ebx, dword ptr [edx]", "0x100525ab"], ["0x1009cff8", "mov dword ptr [esp + 0x10], ebx", "0x100525ad"]]}, {"orig": [], "recomp": [["0x100525b1", "cmp dword ptr [edi + 0x17c], ebx"], ["0x100525b7", "jne -0x62"], ["0x100525b9", "inc esi"], ["0x100525ba", "mov edx, dword ptr [esp + 0x14]"], ["0x100525be", "mov ebx, dword ptr [edx]"], ["0x100525c0", "mov dword ptr [esp + 0x14], ebx"]]}, {"both": [["0x1009cffc", "cmp dword ptr [ecx + 8], ebx", "0x100525c4"]]}, {"orig": [["0x1009cfff", "jne -0x96"]], "recomp": [["0x100525c7", "jne -0x9e"]]}, {"both": [["0x1009d005", "mov eax, 0xffffffff", "0x100525cd"], ["0x1009d00a", "pop ebp", "0x100525d2"], ["0x1009d00b", "pop edi", "0x100525d3"], ["0x1009d00c", "pop esi", "0x100525d4"], ["0x1009d00d", "pop ebx", "0x100525d5"], ["0x1009d00e", "add esp, 0x28", "0x100525d6"], ["0x1009d011", "ret 8", "0x100525d9"], ["0x1009d014", "mov eax, 0xffffffff", "0x100525dc"], ["0x1009d019", "pop ebp", "0x100525e1"], ["0x1009d01a", "pop edi", "0x100525e2"], ["0x1009d01b", "pop esi", "0x100525e3"], ["0x1009d01c", "pop ebx", "0x100525e4"], ["0x1009d01d", "add esp, 0x28", "0x100525e5"], ["0x1009d020", "ret 8", "0x100525e8"]]}, {"orig": [["0x1009d023", "int3 "], ["0x1009d024", "int3 "], ["0x1009d025", "int3 "], ["0x1009d026", "int3 "], ["0x1009d027", "int3 "], ["0x1009d028", "int3 "], ["0x1009d029", "int3 "], ["0x1009d02a", "int3 "]], "recomp": []}]]]}, {"address": "0x1009d030", "recomp": "0x100525f0", "name": "MxDeviceEnumerate::GetDevice", "matching": 0.9152542372881356, "diff": [["@@ -0x1009d030,37 +0x100525f0,37 @@", [{"orig": [], "recomp": [["0x100525f0", "mov edx, dword ptr [esp + 4]"]]}, {"both": [["0x1009d030", "sub esp, 8", "0x100525f4"]]}, {"orig": [], "recomp": [["0x100525f7", "test edx, edx"]]}, {"both": [["0x1009d033", "push ebx", "0x100525f9"], ["0x1009d034", "push esi", "0x100525fa"]]}, {"orig": [["0x1009d035", "mov esi, dword ptr [esp + 0x14]"]], "recomp": []}, {"both": [["0x1009d039", "push edi", "0x100525fb"]]}, {"orig": [["0x1009d03a", "test esi, esi"]], "recomp": []}, {"both": [["0x1009d03c", "jl 0x7a", "0x100525fc"], ["0x1009d03e", "cmp byte ptr [ecx + 0x10], 0", "0x100525fe"], ["0x1009d042", "je 0x74", "0x10052602"]]}, {"orig": [["0x1009d044", "xor edx, edx"]], "recomp": [["0x10052604", "xor esi, esi"]]}, {"both": [["0x1009d046", "mov eax, dword ptr [ecx + 8]", "0x10052606"], ["0x1009d049", "mov edi, dword ptr [eax]", "0x10052609"], ["0x1009d04b", "mov dword ptr [esp + 0xc], edi", "0x1005260b"], ["0x1009d04f", "cmp edi, eax", "0x1005260f"], ["0x1009d051", "je 0x3f", "0x10052611"], ["0x1009d053", "mov edi, dword ptr [esp + 0x1c]", "0x10052613"], ["0x1009d057", "mov eax, dword ptr [esp + 0xc]", "0x10052617"], ["0x1009d05b", "add eax, 8", "0x1005261b"], ["0x1009d05e", "mov dword ptr [edi], eax", "0x1005261e"], ["0x1009d060", "mov ebx, dword ptr [eax + 0x17c]", "0x10052620"], ["0x1009d066", "mov eax, dword ptr [ebx]", "0x10052626"], ["0x1009d068", "mov dword ptr [esp + 0x10], eax", "0x10052628"], ["0x1009d06c", "cmp eax, ebx", "0x1005262c"], ["0x1009d06e", "je 0x13", "0x1005262e"]]}, {"orig": [["0x1009d070", "cmp edx, esi"]], "recomp": [["0x10052630", "cmp esi, edx"]]}, {"both": [["0x1009d072", "je 0x2c", "0x10052632"]]}, {"orig": [["0x1009d074", "inc edx"]], "recomp": [["0x10052634", "inc esi"]]}, {"both": [["0x1009d075", "mov eax, dword ptr [esp + 0x10]", "0x10052635"], ["0x1009d079", "mov eax, dword ptr [eax]", "0x10052639"], ["0x1009d07b", "mov dword ptr [esp + 0x10], eax", "0x1005263b"], ["0x1009d07f", "cmp eax, ebx", "0x1005263f"], ["0x1009d081", "jne -0x13", "0x10052641"], ["0x1009d083", "mov eax, dword ptr [esp + 0xc]", "0x10052643"], ["0x1009d087", "mov ebx, dword ptr [eax]", "0x10052647"], ["0x1009d089", "mov dword ptr [esp + 0xc], ebx", "0x10052649"], ["0x1009d08d", "cmp dword ptr [ecx + 8], ebx", "0x1005264d"], ["0x1009d090", "jne -0x3b", "0x10052650"]]}]]]}, {"address": "0x1009d0d0", "recomp": "0x10052690", "name": "MxDeviceEnumerate::FUN_1009d0d0", "matching": 0.7215189873417721, "diff": [["@@ -0x1009d0d0,78 +0x10052690,80 @@", [{"both": [["0x1009d0d0", "sub esp, 8", "0x10052690"], ["0x1009d0d3", "push ebx", "0x10052693"], ["0x1009d0d4", "push esi", "0x10052694"], ["0x1009d0d5", "push edi", "0x10052695"]]}, {"orig": [["0x1009d0d6", "mov esi, ecx"]], "recomp": []}, {"both": [["0x1009d0d8", "push ebp", "0x10052696"]]}, {"orig": [["0x1009d0d9", "cmp byte ptr [esi + 0x10], 0"]], "recomp": [["0x10052697", "cmp byte ptr [ecx + 0x10], 0"], ["0x1005269b", "mov ebp, ecx"]]}, {"both": [["0x1009d0dd", "jne 0xd", "0x1005269d"], ["0x1009d0df", "mov eax, 0xffffffff", "0x1005269f"], ["0x1009d0e4", "pop ebp", "0x100526a4"], ["0x1009d0e5", "pop edi", "0x100526a5"], ["0x1009d0e6", "pop esi", "0x100526a6"], ["0x1009d0e7", "pop ebx", "0x100526a7"], ["0x1009d0e8", "add esp, 8", "0x100526a8"], ["0x1009d0eb", "ret ", "0x100526ab"]]}, {"orig": [["0x1009d0ec", "cmp dword ptr [esi + 0xc], 0"]], "recomp": [["0x100526ac", "cmp dword ptr [ebp + 0xc], 0"]]}, {"both": [["0x1009d0f0", "jne 0xd", "0x100526b0"], ["0x1009d0f2", "mov eax, 0xffffffff", "0x100526b2"], ["0x1009d0f7", "pop ebp", "0x100526b7"], ["0x1009d0f8", "pop edi", "0x100526b8"], ["0x1009d0f9", "pop esi", "0x100526b9"], ["0x1009d0fa", "pop ebx", "0x100526ba"], ["0x1009d0fb", "add esp, 8", "0x100526bb"], ["0x1009d0fe", "ret ", "0x100526be"]]}, {"orig": [], "recomp": [["0x100526bf", "xor esi, esi"], ["0x100526c1", "call MxDeviceEnumerate::SupportsMMX (FUNCTION)"]]}, {"both": [["0x1009d0ff", "xor edi, edi", "0x100526c6"]]}, {"orig": [["0x1009d101", "call MxDeviceEnumerate::SupportsMMX (FUNCTION)"], ["0x1009d106", "mov ecx, dword ptr [esi + 8]"], ["0x1009d109", "xor ebx, ebx"], ["0x1009d10b", "mov ebp, 0xffffffff"]], "recomp": [["0x100526c8", "mov ebx, 0xffffffff"], ["0x100526cd", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x1009d110", "mov edx, dword ptr [ecx]", "0x100526d0"]]}, {"orig": [], "recomp": [["0x100526d2", "mov ecx, dword ptr [ebp + 8]"]]}, {"both": [["0x1009d112", "mov dword ptr [esp + 0x14], edx", "0x100526d5"]]}, {"orig": [["0x1009d116", "mov ecx, dword ptr [esi + 8]"], ["0x1009d119", "cmp ecx, dword ptr [esp + 0x14]"], ["0x1009d11d", "je 0x62"]], "recomp": [["0x100526d9", "cmp dword ptr [esp + 0x14], ecx"], ["0x100526dd", "je 0x5c"]]}, {"both": [["0x1009d11f", "mov ecx, dword ptr [esp + 0x14]", "0x100526df"], ["0x1009d123", "mov ecx, dword ptr [ecx + 0x184]", "0x100526e3"], ["0x1009d129", "mov edx, dword ptr [ecx]", "0x100526e9"], ["0x1009d12b", "mov dword ptr [esp + 0x10], edx", "0x100526eb"], ["0x1009d12f", "cmp edx, ecx", "0x100526ef"], ["0x1009d131", "je 0x41", "0x100526f1"], ["0x1009d133", "mov edx, dword ptr [esp + 0x10]", "0x100526f3"], ["0x1009d137", "cmp dword ptr [edx + 0x1c], 0", "0x100526f7"]]}, {"orig": [["0x1009d13b", "jne 0x4e"]], "recomp": [["0x100526fb", "jne 0x48"]]}, {"both": [["0x1009d13d", "test eax, eax", "0x100526fd"], ["0x1009d13f", "je 0xd", "0x100526ff"], ["0x1009d141", "cmp dword ptr [edx + 0xe8], 2", "0x10052701"], ["0x1009d148", "jne 0x4", "0x10052708"]]}, {"orig": [["0x1009d14a", "test edi, edi"]], "recomp": [["0x1005270a", "test esi, esi"]]}, {"both": [["0x1009d14c", "je 0x15", "0x1005270c"], ["0x1009d14e", "mov edx, dword ptr [esp + 0x10]", "0x1005270e"], ["0x1009d152", "cmp dword ptr [edx + 0xe8], 1", "0x10052712"], ["0x1009d159", "jne 0xa", "0x10052719"]]}, {"orig": [["0x1009d15b", "test edi, edi"]], "recomp": [["0x1005271b", "test esi, esi"]]}, {"both": [["0x1009d15d", "jne 0x6", "0x1005271d"]]}, {"orig": [["0x1009d15f", "test ebp, ebp"]], "recomp": [["0x1005271f", "test ebx, ebx"]]}, {"both": [["0x1009d161", "jge 0x2", "0x10052721"]]}, {"orig": [["0x1009d163", "mov ebp, ebx"], ["0x1009d165", "inc ebx"]], "recomp": [["0x10052723", "mov ebx, edi"], ["0x10052725", "inc edi"]]}, {"both": [["0x1009d166", "mov edx, dword ptr [esp + 0x10]", "0x10052726"], ["0x1009d16a", "mov edx, dword ptr [edx]", "0x1005272a"], ["0x1009d16c", "mov dword ptr [esp + 0x10], edx", "0x1005272c"], ["0x1009d170", "cmp edx, ecx", "0x10052730"], ["0x1009d172", "jne -0x41", "0x10052732"]]}, {"orig": [], "recomp": [["0x10052734", "inc esi"]]}, {"both": [["0x1009d174", "mov ecx, dword ptr [esp + 0x14]", "0x10052735"]]}, {"orig": [["0x1009d178", "inc edi"], ["0x1009d179", "mov edx, dword ptr [ecx]"], ["0x1009d17b", "mov dword ptr [esp + 0x14], edx"]], "recomp": []}, {"both": [["0x1009d17f", "jmp -0x6b", "0x10052739"]]}, {"orig": [["0x1009d181", "mov eax, ebp"]], "recomp": [["0x1005273b", "mov eax, ebx"]]}, {"both": [["0x1009d183", "pop ebp", "0x1005273d"], ["0x1009d184", "pop edi", "0x1005273e"], ["0x1009d185", "pop esi", "0x1005273f"], ["0x1009d186", "pop ebx", "0x10052740"], ["0x1009d187", "add esp, 8", "0x10052741"], ["0x1009d18a", "ret ", "0x10052744"]]}, {"orig": [["0x1009d18b", "mov eax, ebx"]], "recomp": [["0x10052745", "mov eax, edi"]]}, {"both": [["0x1009d18d", "pop ebp", "0x10052747"], ["0x1009d18e", "pop edi", "0x10052748"]]}, {"orig": [], "recomp": [["0x10052749", "pop esi"], ["0x1005274a", "pop ebx"], ["0x1005274b", "add esp, 8"], ["0x1005274e", "ret "]]}]]]}, {"address": "0x1009d1a0", "recomp": "0x10052750", "name": "MxDeviceEnumerate::SupportsMMX", "matching": 0.7272727272727273, "diff": [["@@ -0x1009d1a0,22 +0x10052750,22 @@", [{"both": [["0x1009d1a0", "push ebp", "0x10052750"], ["0x1009d1a1", "mov ebp, esp", "0x10052751"], ["0x1009d1a3", "sub esp, 4", "0x10052753"]]}, {"orig": [["0x1009d1a6", "push ebx"]], "recomp": []}, {"both": [["0x1009d1a7", "call MxDeviceEnumerate::SupportsCPUID (FUNCTION)", "0x10052756"]]}, {"orig": [["0x1009d1ac", "mov dword ptr [ebp - 4], eax"]], "recomp": []}, {"both": [["0x1009d1af", "test eax, eax", "0x1005275b"]]}, {"orig": [["0x1009d1b1", "je 0x1b"], ["0x1009d1b3", "push ebx"]], "recomp": [["0x1005275d", "jne 0x6"], ["0x1005275f", "xor eax, eax"], ["0x10052761", "mov esp, ebp"], ["0x10052763", "pop ebp"], ["0x10052764", "ret "]]}, {"both": [["0x1009d1b4", "mov eax, 0", "0x10052765"], ["0x1009d1b9", "cpuid ", "0x1005276a"], ["0x1009d1bb", "mov eax, 1", "0x1005276c"], ["0x1009d1c0", "cpuid ", "0x10052771"], ["0x1009d1c2", "xor eax, eax", "0x10052773"], ["0x1009d1c4", "bt edx, 0x17", "0x10052775"], ["0x1009d1c8", "adc eax, eax", "0x10052779"]]}, {"orig": [["0x1009d1ca", "pop ebx"]], "recomp": []}, {"both": [["0x1009d1cb", "mov dword ptr [ebp - 4], eax", "0x1005277b"], ["0x1009d1ce", "mov eax, dword ptr [ebp - 4]", "0x1005277e"]]}, {"orig": [["0x1009d1d1", "pop ebx"]], "recomp": []}, {"both": [["0x1009d1d2", "mov esp, ebp", "0x10052781"], ["0x1009d1d4", "pop ebp", "0x10052783"]]}, {"orig": [], "recomp": [["0x10052784", "ret "]]}]]]}, {"address": "0x1009d1e0", "recomp": "0x10052790", "name": "MxDeviceEnumerate::SupportsCPUID", "matching": 1.0, "diff": []}, {"address": "0x1009d210", "recomp": "0x100527c0", "name": "MxDeviceEnumerate::FUN_1009d210", "matching": 0.7094017094017094, "diff": [["@@ -0x1009d216,113 +0x100527c6,113 @@", [{"both": [["0x1009d216", "mov esi, ecx", "0x100527c6"], ["0x1009d218", "cmp byte ptr [ecx + 0x10], 0", "0x100527c8"], ["0x1009d21c", "jne 0xc", "0x100527cc"], ["0x1009d21e", "mov eax, 0xffffffff", "0x100527ce"], ["0x1009d223", "pop edi", "0x100527d3"], ["0x1009d224", "pop esi", "0x100527d4"], ["0x1009d225", "pop ebx", "0x100527d5"], ["0x1009d226", "add esp, 0x14", "0x100527d6"], ["0x1009d229", "ret ", "0x100527d9"], ["0x1009d22a", "mov eax, dword ptr [esi + 8]", "0x100527da"]]}, {"orig": [], "recomp": [["0x100527dd", "xor ebx, ebx"]]}, {"both": [["0x1009d22d", "mov ecx, dword ptr [eax]", "0x100527df"], ["0x1009d22f", "mov dword ptr [esp + 0xc], ecx", "0x100527e1"]]}, {"orig": [["0x1009d233", "cmp ecx, eax"], ["0x1009d235", "je 0x121"], ["0x1009d23b", "xor ebx, ebx"], ["0x1009d23d", "mov edi, dword ptr [esp + 0xc]"]], "recomp": [["0x100527e5", "mov eax, dword ptr [esp + 0xc]"], ["0x100527e9", "cmp dword ptr [esi + 8], eax"], ["0x100527ec", "je 0x108"], ["0x100527f2", "lea edi, [eax + 8]"]]}, {"both": [["0x1009d241", "mov ecx, esi", "0x100527f5"]]}, {"orig": [["0x1009d243", "add edi, 8"]], "recomp": []}, {"both": [["0x1009d246", "push edi", "0x100527f7"], ["0x1009d247", "call MxDeviceEnumerate::DriverSupportsRequiredDisplayMode (FUNCTION)", "0x100527f8"], ["0x1009d24c", "test al, al", "0x100527fd"]]}, {"orig": [["0x1009d24e", "jne 0x40"]], "recomp": [["0x100527ff", "jne 0x3d"]]}, {"both": [["0x1009d250", "mov eax, dword ptr [esp + 0xc]", "0x10052801"], ["0x1009d254", "mov dword ptr [esp + 0x14], eax", "0x10052805"], ["0x1009d258", "mov ecx, dword ptr [eax]", "0x10052809"], ["0x1009d25a", "lea edx, [eax + 4]", "0x1005280b"], ["0x1009d25d", "mov edi, ecx", "0x1005280e"], ["0x1009d25f", "mov dword ptr [esp + 0xc], ecx", "0x10052810"], ["0x1009d263", "push ebx", "0x10052814"], ["0x1009d264", "mov ecx, dword ptr [edx]", "0x10052815"], ["0x1009d266", "mov dword ptr [ecx], edi", "0x10052817"], ["0x1009d268", "mov ecx, dword ptr [edx]", "0x10052819"], ["0x1009d26a", "mov edi, dword ptr [eax]", "0x1005281b"], ["0x1009d26c", "mov dword ptr [edi + 4], ecx", "0x1005281d"], ["0x1009d26f", "mov ecx, dword ptr [esp + 0x18]", "0x10052820"], ["0x1009d273", "add ecx, 8", "0x10052824"], ["0x1009d276", "call MxDriver::`scalar deleting destructor' (FUNCTION)", "0x10052827"], ["0x1009d27b", "mov ecx, dword ptr [esp + 0x14]", "0x1005282c"], ["0x1009d27f", "push ecx", "0x10052830"], ["0x1009d280", "call ??3@YAXPAX@Z (FUNCTION)", "0x10052831"], ["0x1009d285", "add esp, 4", "0x10052836"], ["0x1009d288", "dec dword ptr [esi + 0xc]", "0x10052839"]]}, {"orig": [["0x1009d28b", "jmp 0xbf"]], "recomp": [["0x1005283c", "jmp -0x59"]]}, {"both": [["0x1009d290", "mov eax, dword ptr [edi + 0x17c]", "0x1005283e"], ["0x1009d296", "mov ecx, dword ptr [eax]", "0x10052844"], ["0x1009d298", "mov dword ptr [esp + 0x10], ecx", "0x10052846"]]}, {"orig": [["0x1009d29c", "cmp ecx, eax"], ["0x1009d29e", "je 0x64"]], "recomp": []}, {"both": [["0x1009d2a0", "mov eax, dword ptr [esp + 0x10]", "0x1005284a"]]}, {"orig": [], "recomp": [["0x1005284e", "cmp dword ptr [edi + 0x17c], eax"], ["0x10052854", "je 0x53"], ["0x10052856", "add eax, 8"]]}, {"both": [["0x1009d2a4", "mov ecx, esi", "0x10052859"]]}, {"orig": [["0x1009d2a6", "add eax, 8"]], "recomp": []}, {"both": [["0x1009d2a9", "push eax", "0x1005285b"], ["0x1009d2aa", "call MxDeviceEnumerate::FUN_1009d3d0 (FUNCTION)", "0x1005285c"], ["0x1009d2af", "test al, al", "0x10052861"], ["0x1009d2b1", "mov eax, dword ptr [esp + 0x10]", "0x10052863"]]}, {"orig": [["0x1009d2b5", "jne 0x3b"]], "recomp": [["0x10052867", "jne -0x25"]]}, {"both": [["0x1009d2b7", "mov ecx, dword ptr [eax]", "0x10052869"], ["0x1009d2b9", "lea edx, [eax + 4]", "0x1005286b"], ["0x1009d2bc", "mov dword ptr [esp + 0x18], eax", "0x1005286e"], ["0x1009d2c0", "push ebx", "0x10052872"]]}, {"orig": [["0x1009d2c1", "mov eax, dword ptr [edx]"]], "recomp": [["0x10052873", "mov eax, ecx"]]}, {"both": [["0x1009d2c3", "mov dword ptr [esp + 0x14], ecx", "0x10052875"]]}, {"orig": [["0x1009d2c7", "mov dword ptr [eax], ecx"]], "recomp": [["0x10052879", "mov ecx, dword ptr [edx]"], ["0x1005287b", "mov dword ptr [ecx], eax"], ["0x1005287d", "mov ecx, dword ptr [edx]"], ["0x1005287f", "mov eax, dword ptr [esp + 0x1c]"], ["0x10052883", "mov edx, dword ptr [eax]"], ["0x10052885", "mov dword ptr [edx + 4], ecx"]]}, {"both": [["0x1009d2c9", "mov ecx, dword ptr [esp + 0x1c]", "0x10052888"]]}, {"orig": [["0x1009d2cd", "mov eax, dword ptr [ecx]"]], "recomp": []}, {"both": [["0x1009d2cf", "add ecx, 8", "0x1005288c"]]}, {"orig": [["0x1009d2d2", "mov edx, dword ptr [edx]"], ["0x1009d2d4", "nop "], ["0x1009d2d5", "mov dword ptr [eax + 4], edx"]], "recomp": []}, {"both": [["0x1009d2d8", "call Direct3DDeviceInfo::`scalar deleting destructor' (FUNCTION)", "0x1005288f"], ["0x1009d2dd", "mov ecx, dword ptr [esp + 0x18]", "0x10052894"], ["0x1009d2e1", "push ecx", "0x10052898"], ["0x1009d2e2", "call ??3@YAXPAX@Z (FUNCTION)", "0x10052899"], ["0x1009d2e7", "add esp, 4", "0x1005289e"], ["0x1009d2ea", "dec dword ptr [edi + 0x180]", "0x100528a1"]]}, {"orig": [["0x1009d2f0", "jmp 0x6"], ["0x1009d2f2", "mov ecx, dword ptr [eax]"], ["0x1009d2f4", "mov dword ptr [esp + 0x10], ecx"], ["0x1009d2f8", "mov eax, dword ptr [esp + 0x10]"], ["0x1009d2fc", "cmp dword ptr [edi + 0x17c], eax"], ["0x1009d302", "jne -0x64"]], "recomp": [["0x100528a7", "jmp -0x5f"]]}, {"both": [["0x1009d304", "mov eax, dword ptr [esp + 0xc]", "0x100528a9"], ["0x1009d308", "cmp dword ptr [edi + 0x180], ebx", "0x100528ad"]]}, {"orig": [["0x1009d30e", "jne 0x39"]], "recomp": [["0x100528b3", "jne 0x3a"]]}, {"both": [["0x1009d310", "mov ecx, dword ptr [eax]", "0x100528b5"], ["0x1009d312", "lea edx, [eax + 4]", "0x100528b7"]]}, {"orig": [["0x1009d315", "mov edi, ecx"]], "recomp": []}, {"both": [["0x1009d317", "mov dword ptr [esp + 0x1c], eax", "0x100528ba"], ["0x1009d31b", "mov dword ptr [esp + 0xc], ecx", "0x100528be"]]}, {"orig": [], "recomp": [["0x100528c2", "mov edi, dword ptr [edx]"]]}, {"both": [["0x1009d31f", "push ebx", "0x100528c4"]]}, {"orig": [["0x1009d320", "mov ecx, dword ptr [edx]"], ["0x1009d322", "mov dword ptr [ecx], edi"], ["0x1009d324", "mov ecx, dword ptr [edx]"], ["0x1009d326", "mov edi, dword ptr [eax]"], ["0x1009d328", "mov dword ptr [edi + 4], ecx"]], "recomp": [["0x100528c5", "mov dword ptr [edi], ecx"], ["0x100528c7", "mov edi, dword ptr [edx]"], ["0x100528c9", "mov ecx, dword ptr [eax]"], ["0x100528cb", "mov dword ptr [ecx + 4], edi"]]}, {"both": [["0x1009d32b", "mov ecx, dword ptr [esp + 0x20]", "0x100528ce"], ["0x1009d32f", "add ecx, 8", "0x100528d2"], ["0x1009d332", "call MxDriver::`scalar deleting destructor' (FUNCTION)", "0x100528d5"], ["0x1009d337", "mov ecx, dword ptr [esp + 0x1c]", "0x100528da"], ["0x1009d33b", "push ecx", "0x100528de"], ["0x1009d33c", "call ??3@YAXPAX@Z (FUNCTION)", "0x100528df"], ["0x1009d341", "add esp, 4", "0x100528e4"], ["0x1009d344", "dec dword ptr [esi + 0xc]", "0x100528e7"]]}, {"orig": [["0x1009d347", "jmp 0x6"]], "recomp": [["0x100528ea", "jmp -0x10a"]]}, {"both": [["0x1009d349", "mov ecx, dword ptr [eax]", "0x100528ef"], ["0x1009d34b", "mov dword ptr [esp + 0xc], ecx", "0x100528f1"]]}, {"orig": [["0x1009d34f", "mov eax, dword ptr [esp + 0xc]"], ["0x1009d353", "cmp dword ptr [esi + 8], eax"], ["0x1009d356", "jne -0x11f"]], "recomp": [["0x100528f5", "jmp -0x115"]]}, {"both": [["0x1009d35c", "cmp dword ptr [esi + 0xc], 1", "0x100528fa"], ["0x1009d360", "sbb eax, eax", "0x100528fe"], ["0x1009d362", "pop edi", "0x10052900"]]}, {"orig": [], "recomp": [["0x10052901", "neg eax"]]}, {"both": [["0x1009d363", "pop esi", "0x10052903"]]}, {"orig": [], "recomp": [["0x10052904", "cmp eax, 1"], ["0x10052907", "mov eax, 0"], ["0x1005290c", "pop ebx"], ["0x1005290d", "adc eax, -1"], ["0x10052910", "add esp, 0x14"], ["0x10052913", "ret "]]}]]]}, {"address": "0x1009d370", "recomp": "0x10052920", "name": "MxDeviceEnumerate::DriverSupportsRequiredDisplayMode", "matching": 1.0, "diff": []}, {"address": "0x1009d3d0", "recomp": "0x10052980", "name": "MxDeviceEnumerate::FUN_1009d3d0", "matching": 1.0, "diff": []}, {"address": "0x1009d450", "recomp": "0x10052a00", "name": "MxDriver::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1009d470", "recomp": "0x10052a20", "name": "Direct3DDeviceInfo::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1009d490", "recomp": "0x10052a40", "name": "MxDirectDraw::MxDirectDraw", "matching": 1.0, "diff": []}, {"address": "0x1009d510", "recomp": "0x10052ac0", "name": "MxDirectDraw::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1009d530", "recomp": "0x10052ae0", "name": "MxDirectDraw::~MxDirectDraw", "matching": 1.0, "effective": true, "diff": [["@@ -0x1009d530,17 +0x10052ae0,17 @@", [{"both": [["0x1009d530", "push esi", "0x10052ae0"], ["0x1009d531", "push edi", "0x10052ae1"], ["0x1009d532", "mov dword ptr [ecx], MxDirectDraw::`vftable' (VTABLE)", "0x10052ae2"]]}, {"orig": [["0x1009d538", "mov edi, ecx"]], "recomp": [["0x10052ae8", "mov esi, ecx"]]}, {"both": [["0x1009d53a", "call MxDirectDraw::Destroy (FUNCTION)", "0x10052aea"]]}, {"orig": [["0x1009d53f", "mov esi, dword ptr [edi + 0x870]"], ["0x1009d545", "test esi, esi"]], "recomp": [["0x10052aef", "mov edi, dword ptr [esi + 0x870]"], ["0x10052af5", "test edi, edi"]]}, {"both": [["0x1009d547", "je 0x1a", "0x10052af7"]]}, {"orig": [["0x1009d549", "mov ecx, esi"]], "recomp": [["0x10052af9", "mov ecx, edi"]]}, {"both": [["0x1009d54b", "call MxDirectDraw::DeviceModesInfo::~DeviceModesInfo (FUNCTION)", "0x10052afb"]]}, {"orig": [["0x1009d550", "push esi"]], "recomp": [["0x10052b00", "push edi"]]}, {"both": [["0x1009d551", "call ??3@YAXPAX@Z (FUNCTION)", "0x10052b01"]]}, {"orig": [["0x1009d556", "mov dword ptr [edi + 0x870], 0"]], "recomp": [["0x10052b06", "mov dword ptr [esi + 0x870], 0"]]}, {"both": [["0x1009d560", "add esp, 4", "0x10052b10"], ["0x1009d563", "pop edi", "0x10052b13"], ["0x1009d564", "pop esi", "0x10052b14"], ["0x1009d565", "ret ", "0x10052b15"]]}]]]}, {"address": "0x1009d570", "recomp": "0x10052b20", "name": "MxDirectDraw::GetPrimaryBitDepth", "matching": 1.0, "diff": []}, {"address": "0x1009d5e0", "recomp": "0x10052b90", "name": "MxDirectDraw::Create", "matching": 1.0, "diff": []}, {"address": "0x1009d690", "recomp": "0x10052c40", "name": "MxDirectDraw::RecreateDirectDraw", "matching": 1.0, "diff": []}, {"address": "0x1009d6c0", "recomp": "0x10052c70", "name": "MxDirectDraw::CacheOriginalPaletteEntries", "matching": 1.0, "diff": []}, {"address": "0x1009d700", "recomp": "0x10052cb0", "name": "MxDirectDraw::SetPaletteEntries", "matching": 1.0, "effective": true, "diff": [["@@ -0x1009d73b,25 +0x10052ceb,25 @@", [{"both": [["0x1009d73b", "mov byte ptr [ecx], 0x80", "0x10052ceb"], ["0x1009d73e", "add ecx, 4", "0x10052cee"], ["0x1009d741", "dec eax", "0x10052cf1"], ["0x1009d742", "jne -0x9", "0x10052cf2"], ["0x1009d744", "lea ecx, [edi + 0x57]", "0x10052cf4"], ["0x1009d747", "mov eax, 0x84", "0x10052cf7"], ["0x1009d74c", "mov byte ptr [ecx], 0x44", "0x10052cfc"], ["0x1009d74f", "add ecx, 4", "0x10052cff"], ["0x1009d752", "dec eax", "0x10052d02"], ["0x1009d753", "jne -0x9", "0x10052d03"]]}, {"orig": [["0x1009d755", "lea eax, [edi + 0x267]"], ["0x1009d75b", "mov ecx, 0x68"], ["0x1009d760", "mov byte ptr [eax], 0x84"], ["0x1009d763", "add eax, 4"], ["0x1009d766", "dec ecx"]], "recomp": [["0x10052d05", "lea ecx, [edi + 0x267]"], ["0x10052d0b", "mov eax, 0x68"], ["0x10052d10", "mov byte ptr [ecx], 0x84"], ["0x10052d13", "add ecx, 4"], ["0x10052d16", "dec eax"]]}, {"both": [["0x1009d767", "jne -0x9", "0x10052d17"], ["0x1009d769", "lea ecx, [edi + 0x407]", "0x10052d19"], ["0x1009d76f", "mov eax, 0xa", "0x10052d1f"], ["0x1009d774", "mov byte ptr [ecx], 0x80", "0x10052d24"], ["0x1009d777", "add ecx, 4", "0x10052d27"], ["0x1009d77a", "dec eax", "0x10052d2a"], ["0x1009d77b", "jne -0x9", "0x10052d2b"], ["0x1009d77d", "mov edx, dword ptr [esp + 0x14]", "0x10052d2d"], ["0x1009d781", "test edx, edx", "0x10052d31"], ["0x1009d783", "je 0x36", "0x10052d33"]]}]]]}, {"address": "0x1009d800", "recomp": "0x10052db0", "name": "MxDirectDraw::Destroy", "matching": 1.0, "diff": []}, {"address": "0x1009d860", "recomp": "0x10052e10", "name": "MxDirectDraw::DestroyButNotDirectDraw", "matching": 1.0, "diff": []}, {"address": "0x1009d920", "recomp": "0x10052ed0", "name": "MxDirectDraw::FUN_1009d920", "matching": 1.0, "diff": []}, {"address": "0x1009d960", "recomp": "0x10052f10", "name": "MxDirectDraw::DDInit", "matching": 1.0, "diff": []}, {"address": "0x1009d9d0", "recomp": "0x10052f80", "name": "MxDirectDraw::IsSupportedMode", "matching": 1.0, "diff": []}, {"address": "0x1009da20", "recomp": "0x10052fd0", "name": "EnableResizing", "matching": 1.0, "diff": []}, {"address": "0x1009da80", "recomp": "0x10053030", "name": "MxDirectDraw::DDSetMode", "matching": 1.0, "diff": []}, {"address": "0x1009dd80", "recomp": "0x10053330", "name": "MxDirectDraw::CreateDDSurface", "matching": 1.0, "diff": []}, {"address": "0x1009dda0", "recomp": "0x10053350", "name": "MxDirectDraw::GetDDSurfaceDesc", "matching": 1.0, "diff": []}, {"address": "0x1009ddf0", "recomp": "0x100533a0", "name": "MxDirectDraw::DDCreateSurfaces", "matching": 1.0, "diff": []}, {"address": "0x1009e020", "recomp": "0x100535d0", "name": "MxDirectDraw::FUN_1009e020", "matching": 1.0, "diff": []}, {"address": "0x1009e110", "recomp": "0x100536c0", "name": "MxDirectDraw::TextToTextSurface", "matching": 1.0, "diff": []}, {"address": "0x1009e210", "recomp": "0x100537c0", "name": "MxDirectDraw::TextToTextSurface1", "matching": 1.0, "diff": []}, {"address": "0x1009e230", "recomp": "0x100537e0", "name": "MxDirectDraw::TextToTextSurface2", "matching": 1.0, "diff": []}, {"address": "0x1009e250", "recomp": "0x10053800", "name": "MxDirectDraw::CreateTextSurfaces", "matching": 1.0, "diff": []}, {"address": "0x1009e4d0", "recomp": "0x10053a80", "name": "MxDirectDraw::RestoreSurfaces", "matching": 1.0, "diff": []}, {"address": "0x1009e5e0", "recomp": "0x10053b90", "name": "MxDirectDraw::CreateZBuffer", "matching": 1.0, "diff": []}, {"address": "0x1009e6a0", "recomp": "0x10053c50", "name": "MxDirectDraw::Pause", "matching": 1.0, "diff": []}, {"address": "0x1009e750", "recomp": "0x10053d00", "name": "MxDirectDraw::RestorePaletteEntries", "matching": 1.0, "diff": []}, {"address": "0x1009e7a0", "recomp": "0x10053d50", "name": "MxDirectDraw::RestoreOriginalPaletteEntries", "matching": 1.0, "diff": []}, {"address": "0x1009e7f0", "recomp": "0x10053da0", "name": "MxDirectDraw::FlipToGDISurface", "matching": 1.0, "diff": []}, {"address": "0x1009e830", "recomp": "0x10053de0", "name": "MxDirectDraw::Error", "matching": 1.0, "diff": []}, {"address": "0x1009e880", "recomp": "0x10053e30", "name": "MxDirectDraw::ErrorToString", "matching": 0.8896473265073948, "diff": [["@@ -0x1009eb0c,22 +0x100540bc,22 @@", [{"both": [["0x1009eb0c", "je 0x275", "0x100540bc"], ["0x1009eb12", "mov eax, 'Unrecognized error value.' (STRING)", "0x100540c2"], ["0x1009eb17", "ret 4", "0x100540c7"], ["0x1009eb1a", "cmp eax, 0x88760190", "0x100540ca"], ["0x1009eb1f", "jg 0x23", "0x100540cf"], ["0x1009eb21", "je 0x290", "0x100540d1"], ["0x1009eb27", "add eax, 0x7789fe84", "0x100540d7"], ["0x1009eb2c", "cmp eax, 7", "0x100540dc"], ["0x1009eb2f", "ja -0x299", "0x100540df"], ["0x1009eb35", "xor ecx, ecx", "0x100540e5"]]}, {"orig": [["0x1009eb37", "mov cl, byte ptr [eax + 0x1009ef34]"], ["0x1009eb3d", "jmp dword ptr [ecx*4 + 0x1009ef20]"]], "recomp": [["0x100540e7", "mov cl, byte ptr [eax + 0x100544e4]"], ["0x100540ed", "jmp dword ptr [ecx*4 + 0x100544d0]"]]}, {"both": [["0x1009eb44", "cmp eax, 0x887601a4", "0x100540f4"], ["0x1009eb49", "jg 0x19", "0x100540f9"], ["0x1009eb4b", "je 0x276", "0x100540fb"], ["0x1009eb51", "cmp eax, 0x8876019a", "0x10054101"], ["0x1009eb56", "je 0x263", "0x10054106"], ["0x1009eb5c", "mov eax, 'Unrecognized error value.' (STRING)", "0x1005410c"], ["0x1009eb61", "ret 4", "0x10054111"], ["0x1009eb64", "cmp eax, 0x887601b8", "0x10054114"], ["0x1009eb69", "jg 0x19", "0x10054119"], ["0x1009eb6b", "je 0x266", "0x1005411b"]]}]], ["@@ -0x1009ec11,21 +0x100541c1,21 @@", [{"both": [["0x1009ec11", "cmp eax, 0x8876021c", "0x100541c1"], ["0x1009ec16", "je 0x203", "0x100541c6"], ["0x1009ec1c", "mov eax, 'Unrecognized error value.' (STRING)", "0x100541cc"], ["0x1009ec21", "ret 4", "0x100541d1"], ["0x1009ec24", "test eax, eax", "0x100541d4"], ["0x1009ec26", "jg -0x390", "0x100541d6"], ["0x1009ec2c", "je 0x2e5", "0x100541dc"], ["0x1009ec32", "add eax, 0x7789fdcf", "0x100541e2"], ["0x1009ec37", "cmp eax, 0x1c", "0x100541e7"], ["0x1009ec3a", "ja -0x3a4", "0x100541ea"]]}, {"orig": [["0x1009ec40", "jmp dword ptr [eax*4 + 0x1009ef3c]"]], "recomp": [["0x100541f0", "jmp dword ptr [eax*4 + 0x100544ec]"]]}, {"both": [["0x1009ec47", "mov eax, 'Action not supported.' (STRING)", "0x100541f7"], ["0x1009ec4c", "ret 4", "0x100541fc"], ["0x1009ec4f", "mov eax, 'Generic failure.' (STRING)", "0x100541ff"], ["0x1009ec54", "ret 4", "0x10054204"], ["0x1009ec57", "mov eax, 'DirectDraw does not have enough memory to perform the operation.' (STRING)", "0x10054207"], ["0x1009ec5c", "ret 4", "0x1005420c"], ["0x1009ec5f", "mov eax, 'One or more of the parameters passed to the function are incorrect.' (STRING)", "0x1005420f"], ["0x1009ec64", "ret 4", "0x10054214"], ["0x1009ec67", "mov eax, 'This object is already initialized.' (STRING)", "0x10054217"], ["0x1009ec6c", "ret 4", "0x1005421c"]]}]], ["@@ -0x1009eefc,58 +0x100544ac,55 @@", [{"both": [["0x1009eefc", "ret 4", "0x100544ac"], ["0x1009eeff", "mov eax, 'This surface can not be restored because it was created in a different mode.' (STRING)", "0x100544af"], ["0x1009ef04", "ret 4", "0x100544b4"], ["0x1009ef07", "mov eax, 'This surface can not be restored because it is an implicitly created surface.' (STRING)", "0x100544b7"], ["0x1009ef0c", "ret 4", "0x100544bc"], ["0x1009ef0f", "mov eax, 'The surface being used is not a palette-based surface.' (STRING)", "0x100544bf"], ["0x1009ef14", "ret 4", "0x100544c4"], ["0x1009ef17", "mov eax, 'No error.' (STRING)", "0x100544c7"], ["0x1009ef1c", "ret 4", "0x100544cc"], ["0x1009ef1f", "nop ", "0x100544cf"]]}, {"orig": [["0x1009ef20", "xchg edi, eax"], ["0x1009ef21", "in eax, dx"], ["0x1009ef22", "or dword ptr [eax], edx"], ["0x1009ef24", "lahf "], ["0x1009ef25", "in eax, dx"], ["0x1009ef26", "or dword ptr [eax], edx"], ["0x1009ef28", "cmpsd dword ptr [esi], dword ptr es:[edi]"], ["0x1009ef29", "in eax, dx"], ["0x1009ef2a", "or dword ptr [eax], edx"], ["0x1009ef2c", "scasd eax, dword ptr es:[edi]"], ["0x1009ef2d", "in eax, dx"], ["0x1009ef2e", "or dword ptr [eax], edx"], ["0x1009ef30", "pushfd "], ["0x1009ef31", "call <OFFSET92>"], ["0x1009ef36", "add dword ptr [edx + eax], eax"]], "recomp": [["0x100544d0", "inc edi"], ["0x100544d1", "inc ebx"], ["0x100544d2", "add eax, 0x5434f10"], ["0x100544d7", "adc byte ptr [edi + 0x43], dl"], ["0x100544da", "add eax, 0x5435f10"], ["0x100544df", "adc byte ptr [esi + edi + 5], cl"], ["0x100544e3", "adc byte ptr [eax], al"], ["0x100544e5", "add al, 1"], ["0x100544e7", "add al, 2"]]}, {"both": [["0x1009ef39", "add al, 4", "0x100544e9"]]}, {"orig": [["0x1009ef3b", "add ebp, dword ptr [edi]"], ["0x1009ef3d", "out dx, al"], ["0x1009ef3e", "or dword ptr [eax], edx"], ["0x1009ef40", "aaa "], ["0x1009ef41", "out dx, al"], ["0x1009ef42", "or dword ptr [eax], edx"], ["0x1009ef44", "aas "], ["0x1009ef45", "out dx, al"], ["0x1009ef46", "or dword ptr [eax], edx"], ["0x1009ef48", "inc edi"], ["0x1009ef49", "out dx, al"], ["0x1009ef4a", "or dword ptr [eax], edx"], ["0x1009ef4c", "dec edi"], ["0x1009ef4d", "out dx, al"], ["0x1009ef4e", "or dword ptr [eax], edx"], ["0x1009ef50", "push edi"], ["0x1009ef51", "out dx, al"], ["0x1009ef52", "or dword ptr [eax], edx"], ["0x1009ef54", "pop edi"], ["0x1009ef55", "out dx, al"], ["0x1009ef56", "or dword ptr [eax], edx"], ["0x1009ef58", "out dx, al"], ["0x1009ef5a", "or dword ptr [eax], edx"], ["0x1009ef5c", "outsd dx, dword ptr [esi]"], ["0x1009ef5d", "out dx, al"], ["0x1009ef5e", "or dword ptr [eax], edx"], ["0x1009ef60", "ja -0x12"], ["0x1009ef62", "or dword ptr [eax], edx"], ["0x1009ef64", "jg -0x12"], ["0x1009ef66", "or dword ptr [eax], edx"], ["0x1009ef68", "xchg esi, ebp"], ["0x1009ef6a", "or dword ptr [eax], edx"]], "recomp": [["0x100544eb", "add ebx, edi"], ["0x100544ed", "inc ebx"], ["0x100544ee", "add eax, 0x543e710"], ["0x100544f3", "adc bh, ch"], ["0x100544f5", "inc ebx"], ["0x100544f6", "add eax, 0x543f710"], ["0x100544fb", "adc bh, bh"], ["0x100544fd", "inc ebx"], ["0x100544fe", "add eax, 0x5440710"], ["0x10054503", "adc byte ptr [edi], cl"], ["0x10054505", "inc esp"], ["0x10054506", "add eax, 0x5441710"], ["0x1005450b", "adc byte ptr [edi], bl"], ["0x1005450d", "inc esp"], ["0x1005450e", "add eax, 0x5442710"], ["0x10054513", "adc byte ptr [edi], ch"], ["0x10054515", "inc esp"], ["0x10054516", "add eax, 0x5443710"], ["0x1005451b", "adc byte ptr [edi], bh"], ["0x1005451d", "inc esp"], ["0x1005451e", "add eax, 0x5444710"], ["0x10054523", "adc byte ptr [edi + 0x44], cl"], ["0x10054526", "add eax, 0x5445710"], ["0x1005452b", "adc byte ptr [edi + 0x44], bl"], ["0x1005452e", "add eax, 0x5446710"], ["0x10054533", "adc byte ptr [edi + 0x44], ch"], ["0x10054536", "add eax, 0x5447710"], ["0x1005453b", "adc byte ptr [edi + 0x44], bh"], ["0x1005453e", "add eax, 0x5448710"], ["0x10054543", "adc byte ptr [edi - 0x68effabc], cl"], ["0x10054549", "inc esp"], ["0x1005454a", "add eax, 0x5449f10"], ["0x1005454f", "adc byte ptr [edi - 0x50effabc], ah"], ["0x10054555", "inc esp"], ["0x10054556", "add eax, 0x544b710"]]}]]]}, {"address": "0x1009efb0", "recomp": "0x10054560", "name": "MxDirectDraw::DeviceModesInfo::DeviceModesInfo", "matching": 1.0, "diff": []}, {"address": "0x1009efd0", "recomp": "0x10054580", "name": "MxDirectDraw::DeviceModesInfo::~DeviceModesInfo", "matching": 1.0, "diff": []}, {"address": "0x1009f000", "recomp": "0x100566f0", "name": "LegoUnknownKey::LegoUnknownKey", "matching": 1.0, "diff": []}, {"address": "0x1009f020", "recomp": "0x10056710", "name": "LegoUnknownKey::Read", "matching": 1.0, "diff": []}, {"address": "0x1009f0a0", "recomp": "0x10056750", "name": "LegoAnimScene::LegoAnimScene", "matching": 1.0, "diff": []}, {"address": "0x1009f0d0", "recomp": "0x10056780", "name": "LegoAnimScene::~LegoAnimScene", "matching": 1.0, "diff": []}, {"address": "0x1009f200", "recomp": "0x100567d0", "name": "LegoAnimScene::Read", "matching": 1.0, "diff": []}, {"address": "0x1009f900", "recomp": "0x10056a60", "name": "LegoAnimKey::LegoAnimKey", "matching": 1.0, "diff": []}, {"address": "0x1009f910", "recomp": "0x10056a70", "name": "LegoAnimKey::Read", "matching": 1.0, "diff": []}, {"address": "0x1009f990", "recomp": "0x10056ab0", "name": "LegoTranslationKey::LegoTranslationKey", "matching": 1.0, "diff": []}, {"address": "0x1009f9b0", "recomp": "0x10056ad0", "name": "LegoTranslationKey::Read", "matching": 1.0, "diff": []}, {"address": "0x1009faa0", "recomp": "0x10056b60", "name": "LegoRotationKey::LegoRotationKey", "matching": 1.0, "diff": []}, {"address": "0x1009fac0", "recomp": "0x10056b80", "name": "LegoRotationKey::Read", "matching": 1.0, "diff": []}, {"address": "0x1009fba0", "recomp": "0x10056bf0", "name": "LegoScaleKey::LegoScaleKey", "matching": 1.0, "diff": []}, {"address": "0x1009fbc0", "recomp": "0x10056c10", "name": "LegoScaleKey::Read", "matching": 1.0, "diff": []}, {"address": "0x1009fcf0", "recomp": "0x10056ce0", "name": "LegoAnimNodeData::LegoAnimNodeData", "matching": 1.0, "diff": []}, {"address": "0x1009fd80", "recomp": "0x10056dc0", "name": "LegoAnimNodeData::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x1009fda0", "recomp": "0x10056de0", "name": "LegoAnimNodeData::~LegoAnimNodeData", "matching": 1.0, "diff": []}, {"address": "0x1009fe60", "recomp": "0x10056ea0", "name": "LegoAnimNodeData::Read", "matching": 1.0, "effective": true, "diff": [["@@ -0x1009ff43,37 +0x10056f83,37 @@", [{"both": [["0x1009ff43", "js 0xd", "0x10056f83"], ["0x1009ff45", "mov ecx, ebx", "0x10056f85"], ["0x1009ff47", "add ebx, 0x14", "0x10056f87"], ["0x1009ff4a", "call LegoTranslationKey::LegoTranslationKey (FUNCTION)", "0x10056f8a"], ["0x1009ff4f", "dec esi", "0x10056f8f"], ["0x1009ff50", "jns -0xd", "0x10056f90"], ["0x1009ff52", "mov eax, dword ptr [ebp - 0x10]", "0x10056f92"], ["0x1009ff55", "jmp 0x2", "0x10056f95"], ["0x1009ff57", "xor eax, eax", "0x10056f97"], ["0x1009ff59", "mov dword ptr [ebp - 4], 0xffffffff", "0x10056f99"]]}, {"orig": [], "recomp": [["0x10056fa0", "xor ebx, ebx"], ["0x10056fa2", "mov dword ptr [edi + 0x10], eax"], ["0x10056fa5", "cmp word ptr [edi + 8], bx"], ["0x10056fa9", "jbe 0x26"]]}, {"both": [["0x1009ff60", "xor esi, esi", "0x10056fab"]]}, {"orig": [["0x1009ff62", "mov dword ptr [edi + 0x10], eax"], ["0x1009ff65", "cmp word ptr [edi + 8], si"], ["0x1009ff69", "jbe 0x26"], ["0x1009ff6b", "xor ebx, ebx"]], "recomp": []}, {"both": [["0x1009ff6d", "mov eax, dword ptr [ebp + 8]", "0x10056fad"], ["0x1009ff70", "mov ecx, dword ptr [edi + 0x10]", "0x10056fb0"], ["0x1009ff73", "push eax", "0x10056fb3"]]}, {"orig": [["0x1009ff74", "add ecx, ebx"]], "recomp": [["0x10056fb4", "add ecx, esi"]]}, {"both": [["0x1009ff76", "call LegoTranslationKey::Read (FUNCTION)", "0x10056fb6"], ["0x1009ff7b", "test eax, eax", "0x10056fbb"], ["0x1009ff7d", "jne 0x22a", "0x10056fbd"]]}, {"orig": [["0x1009ff83", "add ebx, 0x14"], ["0x1009ff86", "inc esi"]], "recomp": [["0x10056fc3", "add esi, 0x14"], ["0x10056fc6", "inc ebx"]]}, {"both": [["0x1009ff87", "xor eax, eax", "0x10056fc7"], ["0x1009ff89", "mov ax, word ptr [edi + 8]", "0x10056fc9"]]}, {"orig": [["0x1009ff8d", "cmp eax, esi"]], "recomp": [["0x10056fcd", "cmp eax, ebx"]]}, {"both": [["0x1009ff8f", "ja -0x24", "0x10056fcf"], ["0x1009ff91", "push 2", "0x10056fd1"], ["0x1009ff93", "lea eax, [edi + 0xa]", "0x10056fd3"], ["0x1009ff96", "push eax", "0x10056fd6"], ["0x1009ff97", "mov ecx, dword ptr [ebp + 8]", "0x10056fd7"], ["0x1009ff9a", "call dword ptr [ebp - 0x14]", "0x10056fda"], ["0x1009ff9d", "test eax, eax", "0x10056fdd"], ["0x1009ff9f", "jne 0x208", "0x10056fdf"], ["0x1009ffa5", "mov eax, dword ptr [edi + 0x14]", "0x10056fe5"], ["0x1009ffa8", "test eax, eax", "0x10056fe8"]]}]], ["@@ -0x1009fff5,37 +0x10057035,37 @@", [{"both": [["0x1009fff5", "jns -0xd", "0x10057035"], ["0x1009fff7", "mov eax, dword ptr [ebp - 0x10]", "0x10057037"], ["0x1009fffa", "jmp 0xf", "0x1005703a"], ["0x1009fffc", "mov eax, dword ptr [ebp - 0x10]", "0x1005703c"], ["0x1009ffff", "push eax", "0x1005703f"], ["0x100a0000", "call ??3@YAXPAX@Z (FUNCTION)", "0x10057040"], ["0x100a0005", "add esp, 4", "0x10057045"], ["0x100a0008", "ret ", "0x10057048"], ["0x100a0009", "xor eax, eax", "0x10057049"], ["0x100a000b", "mov dword ptr [ebp - 4], 0xffffffff", "0x1005704b"]]}, {"orig": [], "recomp": [["0x10057052", "xor esi, esi"], ["0x10057054", "mov dword ptr [edi + 0x14], eax"], ["0x10057057", "cmp word ptr [edi + 0xa], si"], ["0x1005705b", "jbe 0x26"]]}, {"both": [["0x100a0012", "xor ebx, ebx", "0x1005705d"]]}, {"orig": [["0x100a0014", "mov dword ptr [edi + 0x14], eax"], ["0x100a0017", "cmp word ptr [edi + 0xa], bx"], ["0x100a001b", "jbe 0x26"], ["0x100a001d", "xor esi, esi"]], "recomp": []}, {"both": [["0x100a001f", "mov eax, dword ptr [ebp + 8]", "0x1005705f"], ["0x100a0022", "mov ecx, dword ptr [edi + 0x14]", "0x10057062"], ["0x100a0025", "push eax", "0x10057065"]]}, {"orig": [["0x100a0026", "add ecx, esi"]], "recomp": [["0x10057066", "add ecx, ebx"]]}, {"both": [["0x100a0028", "call LegoRotationKey::Read (FUNCTION)", "0x10057068"], ["0x100a002d", "test eax, eax", "0x1005706d"], ["0x100a002f", "jne 0x178", "0x1005706f"]]}, {"orig": [["0x100a0035", "add esi, 0x18"], ["0x100a0038", "inc ebx"]], "recomp": [["0x10057075", "add ebx, 0x18"], ["0x10057078", "inc esi"]]}, {"both": [["0x100a0039", "xor eax, eax", "0x10057079"], ["0x100a003b", "mov ax, word ptr [edi + 0xa]", "0x1005707b"]]}, {"orig": [["0x100a003f", "cmp eax, ebx"]], "recomp": [["0x1005707f", "cmp eax, esi"]]}, {"both": [["0x100a0041", "ja -0x24", "0x10057081"], ["0x100a0043", "push 2", "0x10057083"], ["0x100a0045", "lea eax, [edi + 0xc]", "0x10057085"], ["0x100a0048", "push eax", "0x10057088"], ["0x100a0049", "mov ecx, dword ptr [ebp + 8]", "0x10057089"], ["0x100a004c", "call dword ptr [ebp - 0x14]", "0x1005708c"], ["0x100a004f", "test eax, eax", "0x1005708f"], ["0x100a0051", "jne 0x156", "0x10057091"], ["0x100a0057", "mov eax, dword ptr [edi + 0x18]", "0x10057097"], ["0x100a005a", "test eax, eax", "0x1005709a"]]}]]]}, {"address": "0x100a01e0", "recomp": "0x10057220", "name": "LegoAnimNodeData::Write", "matching": 0.0, "stub": true}, {"address": "0x100a03c0", "recomp": "0x10057230", "name": "LegoAnimNodeData::CreateLocalTransform", "matching": 0.8248587570621468, "diff": [["@@ -0x100a03c0,86 +0x10057230,84 @@", [{"both": [["0x100a03c0", "sub esp, 0x9c", "0x10057230"], ["0x100a03c6", "push esi", "0x10057236"], ["0x100a03c7", "push edi", "0x10057237"], ["0x100a03c8", "mov edi, dword ptr [ecx + 0x18]", "0x10057238"], ["0x100a03cb", "mov esi, ecx", "0x1005723b"], ["0x100a03cd", "test edi, edi", "0x1005723d"]]}, {"orig": [["0x100a03cf", "je 0x1a9"]], "recomp": [["0x1005723f", "je 0x1a4"]]}, {"both": [["0x100a03d5", "mov eax, dword ptr [esi + 0x2c]", "0x10057245"], ["0x100a03d8", "lea ecx, [esp + 0x5c]", "0x10057248"], ["0x100a03dc", "mov dword ptr [esp + 8], eax", "0x1005724c"], ["0x100a03e0", "lea eax, [esp + 8]", "0x10057250"], ["0x100a03e4", "push eax", "0x10057254"], ["0x100a03e5", "push ecx", "0x10057255"], ["0x100a03e6", "push 0x14", "0x10057256"], ["0x100a03e8", "xor eax, eax", "0x10057258"], ["0x100a03ea", "mov ax, word ptr [esi + 0xc]", "0x1005725a"], ["0x100a03ee", "push edi", "0x1005725e"], ["0x100a03ef", "mov ecx, dword ptr [esp + 0xb8]", "0x1005725f"], ["0x100a03f6", "push eax", "0x10057266"], ["0x100a03f7", "push ecx", "0x10057267"], ["0x100a03f8", "call LegoAnimNodeData::FindKeys (FUNCTION)", "0x10057268"], ["0x100a03fd", "add esp, 0x18", "0x1005726d"], ["0x100a0400", "test eax, eax", "0x10057270"]]}, {"orig": [["0x100a0402", "je 0xc7"]], "recomp": [["0x10057272", "je 0xc2"]]}, {"both": [["0x100a0408", "cmp eax, 1", "0x10057278"], ["0x100a040b", "je 0xa", "0x1005727b"], ["0x100a040d", "cmp eax, 2", "0x1005727d"], ["0x100a0410", "je 0x2a", "0x10057280"]]}, {"orig": [["0x100a0412", "jmp 0x99"]], "recomp": [["0x10057282", "jmp 0x94"]]}, {"both": [["0x100a0417", "mov eax, dword ptr [esp + 0x5c]", "0x10057287"], ["0x100a041b", "shl eax, 2", "0x1005728b"], ["0x100a041e", "lea edx, [eax + eax*4]", "0x1005728e"], ["0x100a0421", "mov eax, dword ptr [edx + edi + 8]", "0x10057291"], ["0x100a0425", "lea ecx, [edx + edi]", "0x10057295"], ["0x100a0428", "mov dword ptr [esp + 0x10], eax", "0x10057298"], ["0x100a042c", "mov edx, dword ptr [ecx + 0xc]", "0x1005729c"], ["0x100a042f", "mov dword ptr [esp + 0xc], edx", "0x1005729f"], ["0x100a0433", "mov ecx, dword ptr [ecx + 0x10]", "0x100572a3"], ["0x100a0436", "mov dword ptr [esp + 0x14], ecx", "0x100572a6"]]}, {"orig": [["0x100a043a", "jmp 0x74"]], "recomp": [["0x100572aa", "jmp 0x6f"]]}, {"both": [["0x100a043c", "mov eax, dword ptr [esp + 0x5c]", "0x100572ac"], ["0x100a0440", "shl eax, 2", "0x100572b0"]]}, {"orig": [["0x100a0443", "lea edx, [eax + eax*4]"], ["0x100a0446", "fld dword ptr [edx + edi + 0x1c]"], ["0x100a044a", "fsub dword ptr [edx + edi + 8]"], ["0x100a044e", "fld dword ptr [edx + edi + 0x18]"], ["0x100a0452", "fsub dword ptr [edx + edi + 4]"], ["0x100a0456", "lea ecx, [edx + edi]"]], "recomp": [["0x100572b3", "lea eax, [eax + eax*4]"], ["0x100572b6", "add eax, edi"], ["0x100572b8", "fld dword ptr [eax + 0x1c]"], ["0x100572bb", "fsub dword ptr [eax + 8]"], ["0x100572be", "fld dword ptr [eax + 0x18]"], ["0x100572c1", "fsub dword ptr [eax + 4]"]]}, {"both": [["0x100a0459", "fdivp st(1)", "0x100572c4"], ["0x100a045b", "fld dword ptr [esp + 0xa8]", "0x100572c6"]]}, {"orig": [["0x100a0462", "fsub dword ptr [ecx + 4]"]], "recomp": [["0x100572cd", "fsub dword ptr [eax + 4]"]]}, {"both": [["0x100a0465", "fmulp st(1)", "0x100572d0"]]}, {"orig": [["0x100a0467", "fadd dword ptr [ecx + 8]"]], "recomp": [["0x100572d2", "fadd dword ptr [eax + 8]"]]}, {"both": [["0x100a046a", "fstp dword ptr [esp + 0x10]", "0x100572d5"]]}, {"orig": [["0x100a046e", "fld dword ptr [ecx + 0x20]"], ["0x100a0471", "fsub dword ptr [ecx + 0xc]"], ["0x100a0474", "fld dword ptr [ecx + 0x18]"], ["0x100a0477", "fsub dword ptr [ecx + 4]"]], "recomp": [["0x100572d9", "fld dword ptr [eax + 0x20]"], ["0x100572dc", "fsub dword ptr [eax + 0xc]"], ["0x100572df", "fld dword ptr [eax + 0x18]"], ["0x100572e2", "fsub dword ptr [eax + 4]"]]}, {"both": [["0x100a047a", "fdivp st(1)", "0x100572e5"], ["0x100a047c", "fld dword ptr [esp + 0xa8]", "0x100572e7"]]}, {"orig": [["0x100a0483", "fsub dword ptr [ecx + 4]"], ["0x100a0486", "lea edx, [ecx + 0x14]"]], "recomp": [["0x100572ee", "fsub dword ptr [eax + 4]"]]}, {"both": [["0x100a0489", "fmulp st(1)", "0x100572f1"]]}, {"orig": [["0x100a048b", "fadd dword ptr [ecx + 0xc]"]], "recomp": [["0x100572f3", "fadd dword ptr [eax + 0xc]"]]}, {"both": [["0x100a048e", "fstp dword ptr [esp + 0xc]", "0x100572f6"]]}, {"orig": [["0x100a0492", "mov eax, dword ptr [ecx + 0x24]"], ["0x100a0495", "mov edi, dword ptr [ecx + 0x10]"], ["0x100a0498", "push eax"], ["0x100a0499", "push edx"], ["0x100a049a", "mov eax, dword ptr [esp + 0xb0]"], ["0x100a04a1", "push edi"], ["0x100a04a2", "push ecx"], ["0x100a04a3", "push eax"], ["0x100a04a4", "call <OFFSET2>"], ["0x100a04a9", "fstp dword ptr [esp + 0x28]"], ["0x100a04ad", "add esp, 0x14"]], "recomp": [["0x100572fa", "fld dword ptr [eax + 0x24]"], ["0x100572fd", "fsub dword ptr [eax + 0x10]"], ["0x10057300", "fld dword ptr [eax + 0x18]"], ["0x10057303", "fsub dword ptr [eax + 4]"], ["0x10057306", "fdivp st(1)"], ["0x10057308", "fld dword ptr [esp + 0xa8]"], ["0x1005730f", "fsub dword ptr [eax + 4]"], ["0x10057312", "fmulp st(1)"], ["0x10057314", "fadd dword ptr [eax + 0x10]"], ["0x10057317", "fstp dword ptr [esp + 0x14]"]]}, {"both": [["0x100a04b0", "lea eax, [esp + 0x14]", "0x1005731b"], ["0x100a04b4", "lea ecx, [esp + 0xc]", "0x1005731f"], ["0x100a04b8", "lea edx, [esp + 0x10]", "0x10057323"], ["0x100a04bc", "push eax", "0x10057327"], ["0x100a04bd", "mov edi, dword ptr [esp + 0xb0]", "0x10057328"], ["0x100a04c4", "push ecx", "0x1005732f"], ["0x100a04c5", "push edx", "0x10057330"], ["0x100a04c6", "mov ecx, edi", "0x10057331"], ["0x100a04c8", "call Matrix4::Scale (FUNCTION)", "0x10057333"], ["0x100a04cd", "jmp 0x7", "0x10057338"]]}]], ["@@ -0x100a04de,21 +0x10057349,21 @@", [{"both": [["0x100a04de", "mov dword ptr [esi + 0x2c], eax", "0x10057349"], ["0x100a04e1", "je 0xd8", "0x1005734c"], ["0x100a04e7", "lea eax, [esp + 0x1c]", "0x10057352"], ["0x100a04eb", "lea ecx, [esp + 0x64]", "0x10057356"], ["0x100a04ef", "mov dword ptr [esp + 0x18], eax", "0x1005735a"], ["0x100a04f3", "mov eax, MxMatrix::`vftable' (VTABLE)", "0x1005735e"], ["0x100a04f8", "mov dword ptr [esp + 0x14], eax", "0x10057363"], ["0x100a04fc", "mov dword ptr [esp + 0x60], ecx", "0x10057367"], ["0x100a0500", "lea ecx, [esp + 0x14]", "0x1005736b"], ["0x100a0504", "mov dword ptr [esp + 0x5c], eax", "0x1005736f"]]}, {"orig": [["0x100a0508", "call dword ptr [<OFFSET5>]"]], "recomp": [["0x10057373", "call dword ptr [<OFFSET4>]"]]}, {"both": [["0x100a050e", "mov edx, dword ptr [esp + 0x18]", "0x10057379"], ["0x100a0512", "mov ecx, 0x3f800000", "0x1005737d"], ["0x100a0517", "mov dword ptr [edx], ecx", "0x10057382"], ["0x100a0519", "mov edx, dword ptr [esp + 0x18]", "0x10057384"], ["0x100a051d", "mov dword ptr [edx + 0x14], ecx", "0x10057388"], ["0x100a0520", "mov edx, dword ptr [esp + 0x18]", "0x1005738b"], ["0x100a0524", "mov dword ptr [edx + 0x28], ecx", "0x1005738f"], ["0x100a0527", "mov edx, dword ptr [esp + 0x18]", "0x10057392"], ["0x100a052b", "mov dword ptr [edx + 0x3c], ecx", "0x10057396"], ["0x100a052e", "lea ecx, [esp + 0x14]", "0x10057399"]]}]], ["@@ -0x100a05db,10 +0x10057446,12 @@", [{"both": [["0x100a05db", "push ecx", "0x10057446"], ["0x100a05dc", "mov cx, word ptr [esi + 8]", "0x10057447"], ["0x100a05e0", "push ecx", "0x1005744b"], ["0x100a05e1", "call LegoAnimNodeData::GetTranslation (FUNCTION)", "0x1005744c"], ["0x100a05e6", "mov ecx, dword ptr [esp + 0x1c]", "0x10057451"], ["0x100a05ea", "add esp, 0x14", "0x10057455"], ["0x100a05ed", "mov dword ptr [esi + 0x24], ecx", "0x10057458"], ["0x100a05f0", "xor eax, eax", "0x1005745b"], ["0x100a05f2", "pop edi", "0x1005745d"], ["0x100a05f3", "pop esi", "0x1005745e"]]}, {"orig": [], "recomp": [["0x1005745f", "add esp, 0x9c"], ["0x10057465", "ret 8"]]}]]]}, {"address": "0x100a0600", "recomp": "0x100574c0", "name": "LegoAnimNodeData::GetTranslation", "matching": 1.0, "diff": []}, {"address": "0x100a06f0", "recomp": "0x100575b0", "name": "LegoAnimNodeData::GetRotation", "matching": 0.8333333333333334, "diff": [["@@ -0x100a0731,96 +0x100575f1,96 @@", [{"both": [["0x100a0731", "je 0x62", "0x100575f1"], ["0x100a0733", "pop edi", "0x100575f3"], ["0x100a0734", "pop esi", "0x100575f4"], ["0x100a0735", "add esp, 0x80", "0x100575f5"], ["0x100a073b", "ret ", "0x100575fb"], ["0x100a073c", "mov eax, dword ptr [esp + 8]", "0x100575fc"], ["0x100a0740", "lea edx, [eax + eax*2]", "0x10057600"], ["0x100a0743", "lea ecx, [esi + edx*8]", "0x10057603"], ["0x100a0746", "test byte ptr [ecx], 1", "0x10057606"], ["0x100a0749", "je 0x22b", "0x10057609"]]}, {"orig": [["0x100a074f", "lea eax, [esp + 0x34]"]], "recomp": [["0x1005760f", "lea eax, [esp + 0x14]"]]}, {"both": [["0x100a0753", "mov edx, dword ptr [ecx + 0xc]", "0x10057613"]]}, {"orig": [["0x100a0756", "mov dword ptr [esp + 0x30], eax"]], "recomp": [["0x10057616", "mov dword ptr [esp + 0x10], eax"]]}, {"both": [["0x100a075a", "mov esi, dword ptr [ecx + 0x10]", "0x1005761a"]]}, {"orig": [["0x100a075d", "mov dword ptr [esp + 0x2c], Mx4DPointFloat::`vftable' (VTABLE)"], ["0x100a0765", "mov dword ptr [esp + 0x34], edx"]], "recomp": [["0x1005761d", "mov dword ptr [esp + 0xc], Mx4DPointFloat::`vftable' (VTABLE)"], ["0x10057625", "mov dword ptr [esp + 0x14], edx"]]}, {"both": [["0x100a0769", "mov eax, dword ptr [ecx + 0x14]", "0x10057629"], ["0x100a076c", "mov ecx, dword ptr [ecx + 8]", "0x1005762c"]]}, {"orig": [["0x100a076f", "lea edx, [esp + 0x2c]"], ["0x100a0773", "mov dword ptr [esp + 0x38], esi"]], "recomp": [["0x1005762f", "lea edx, [esp + 0xc]"], ["0x10057633", "mov dword ptr [esp + 0x18], esi"]]}, {"both": [["0x100a0777", "push edx", "0x10057637"]]}, {"orig": [["0x100a0778", "mov dword ptr [esp + 0x40], eax"], ["0x100a077c", "mov dword ptr [esp + 0x44], ecx"]], "recomp": [["0x10057638", "mov dword ptr [esp + 0x20], eax"], ["0x1005763c", "mov dword ptr [esp + 0x24], ecx"]]}, {"both": [["0x100a0780", "mov ecx, dword ptr [esp + 0x9c]", "0x10057640"], ["0x100a0787", "mov eax, dword ptr [ecx]", "0x10057647"], ["0x100a0789", "call dword ptr [eax + 0x44]", "0x10057649"], ["0x100a078c", "pop edi", "0x1005764c"], ["0x100a078d", "pop esi", "0x1005764d"], ["0x100a078e", "add esp, 0x80", "0x1005764e"], ["0x100a0794", "ret ", "0x10057654"]]}, {"orig": [["0x100a0795", "lea eax, [esp + 0x68]"], ["0x100a0799", "lea ecx, [esp + 0x34]"], ["0x100a079d", "lea edx, [esp + 0x4c]"], ["0x100a07a1", "mov dword ptr [esp + 0x64], eax"], ["0x100a07a5", "mov dword ptr [esp + 0x60], Mx4DPointFloat::`vftable' (VTABLE)"], ["0x100a07ad", "mov dword ptr [esp + 0x30], ecx"]], "recomp": [["0x10057655", "lea eax, [esp + 0x34]"], ["0x10057659", "lea ecx, [esp + 0x4c]"], ["0x1005765d", "lea edx, [esp + 0x64]"], ["0x10057661", "mov dword ptr [esp + 0x30], eax"], ["0x10057665", "mov dword ptr [esp + 0x48], ecx"]]}, {"both": [["0x100a07b1", "push edx", "0x10057669"], ["0x100a07b2", "mov dword ptr [esp + 0x30], Mx4DPointFloat::`vftable' (VTABLE)", "0x1005766a"]]}, {"orig": [["0x100a07ba", "lea ecx, [esp + 0x48]"]], "recomp": [["0x10057672", "mov dword ptr [esp + 0x48], Mx4DPointFloat::`vftable' (VTABLE)"], ["0x1005767a", "lea ecx, [esp + 0x60]"]]}, {"both": [["0x100a07be", "call Vector2::Vector2 (FUNCTION)", "0x1005767e"]]}, {"orig": [["0x100a07c3", "mov dword ptr [esp + 0x44], Mx4DPointFloat::`vftable' (VTABLE)"], ["0x100a07cb", "mov dword ptr [esp + 0x5c], 0"]], "recomp": []}, {"both": [["0x100a07d3", "mov ecx, dword ptr [esp + 8]", "0x10057683"]]}, {"orig": [], "recomp": [["0x10057687", "mov dword ptr [esp + 0x74], 0"]]}, {"both": [["0x100a07d7", "lea edx, [ecx + ecx*2]", "0x1005768f"]]}, {"orig": [], "recomp": [["0x10057692", "mov dword ptr [esp + 0x5c], Mx4DPointFloat::`vftable' (VTABLE)"]]}, {"both": [["0x100a07da", "lea eax, [esi + edx*8]", "0x1005769a"], ["0x100a07dd", "test byte ptr [eax], 1", "0x1005769d"], ["0x100a07e0", "jne 0xa", "0x100576a0"], ["0x100a07e2", "test byte ptr [eax + 0x18], 1", "0x100576a2"], ["0x100a07e6", "je 0x18e", "0x100576a6"]]}, {"orig": [["0x100a07ec", "mov ecx, dword ptr [esp + 0x64]"]], "recomp": [["0x100576ac", "mov ecx, dword ptr [esp + 0x30]"]]}, {"both": [["0x100a07f0", "mov eax, dword ptr [eax + 0xc]", "0x100576b0"], ["0x100a07f3", "mov dword ptr [ecx], eax", "0x100576b3"]]}, {"orig": [["0x100a07f5", "mov ecx, dword ptr [esp + 0x64]"]], "recomp": [["0x100576b5", "mov ecx, dword ptr [esp + 0x30]"]]}, {"both": [["0x100a07f9", "mov edx, dword ptr [esp + 8]", "0x100576b9"], ["0x100a07fd", "lea edi, [edx + edx*2]", "0x100576bd"], ["0x100a0800", "mov eax, dword ptr [esi + edi*8 + 0x10]", "0x100576c0"], ["0x100a0804", "mov dword ptr [ecx + 4], eax", "0x100576c4"]]}, {"orig": [["0x100a0807", "mov ecx, dword ptr [esp + 0x64]"]], "recomp": [["0x100576c7", "mov ecx, dword ptr [esp + 0x30]"]]}, {"both": [["0x100a080b", "mov edx, dword ptr [esp + 8]", "0x100576cb"], ["0x100a080f", "lea edi, [edx + edx*2]", "0x100576cf"], ["0x100a0812", "mov eax, dword ptr [esi + edi*8 + 0x14]", "0x100576d2"], ["0x100a0816", "mov dword ptr [ecx + 8], eax", "0x100576d6"]]}, {"orig": [["0x100a0819", "mov ecx, dword ptr [esp + 0x64]"]], "recomp": [["0x100576d9", "mov ecx, dword ptr [esp + 0x30]"]]}, {"both": [["0x100a081d", "mov edx, dword ptr [esp + 8]", "0x100576dd"], ["0x100a0821", "lea edi, [edx + edx*2]", "0x100576e1"], ["0x100a0824", "mov eax, dword ptr [esi + edi*8 + 8]", "0x100576e4"], ["0x100a0828", "mov dword ptr [ecx + 0xc], eax", "0x100576e8"], ["0x100a082b", "mov edx, dword ptr [esp + 8]", "0x100576eb"], ["0x100a082f", "lea edi, [edx + edx*2]", "0x100576ef"], ["0x100a0832", "mov dl, byte ptr [esi + edi*8 + 0x18]", "0x100576f2"], ["0x100a0836", "lea eax, [esi + edi*8]", "0x100576f6"], ["0x100a0839", "test dl, 4", "0x100576f9"], ["0x100a083c", "je 0x1a", "0x100576fc"]]}, {"orig": [["0x100a083e", "lea eax, [esp + 0x60]"]], "recomp": [["0x100576fe", "lea eax, [esp + 0x2c]"]]}, {"both": [["0x100a0842", "mov ecx, dword ptr [esp + 0x98]", "0x10057702"], ["0x100a0849", "push eax", "0x10057709"], ["0x100a084a", "mov esi, dword ptr [ecx]", "0x1005770a"], ["0x100a084c", "call dword ptr [esi + 0x44]", "0x1005770c"], ["0x100a084f", "pop edi", "0x1005770f"], ["0x100a0850", "pop esi", "0x10057710"], ["0x100a0851", "add esp, 0x80", "0x10057711"], ["0x100a0857", "ret ", "0x10057717"]]}, {"orig": [["0x100a0858", "mov dword ptr [esp + 0xc], Mx4DPointFloat::`vftable' (VTABLE)"]], "recomp": []}, {"both": [["0x100a0860", "test dl, 2", "0x10057718"], ["0x100a0863", "lea ecx, [esp + 0x14]", "0x1005771b"], ["0x100a0867", "mov dword ptr [esp + 0x10], ecx", "0x1005771f"]]}, {"orig": [], "recomp": [["0x10057723", "mov dword ptr [esp + 0xc], Mx4DPointFloat::`vftable' (VTABLE)"]]}, {"both": [["0x100a086b", "je 0x47", "0x1005772b"], ["0x100a086d", "fld dword ptr [eax + 0x24]", "0x1005772d"], ["0x100a0870", "fchs ", "0x10057730"], ["0x100a0872", "fstp dword ptr [esp + 0x14]", "0x10057732"], ["0x100a0876", "mov eax, dword ptr [esp + 8]", "0x10057736"], ["0x100a087a", "mov edx, dword ptr [esp + 0x10]", "0x1005773a"], ["0x100a087e", "lea ecx, [eax + eax*2]", "0x1005773e"], ["0x100a0881", "fld dword ptr [esi + ecx*8 + 0x28]", "0x10057741"], ["0x100a0885", "fchs ", "0x10057745"], ["0x100a0887", "fstp dword ptr [edx + 4]", "0x10057747"]]}]], ["@@ -0x100a08cd,44 +0x1005778d,44 @@", [{"both": [["0x100a08cd", "mov edi, dword ptr [esp + 0x10]", "0x1005778d"], ["0x100a08d1", "mov ecx, dword ptr [esp + 8]", "0x10057791"], ["0x100a08d5", "lea edx, [ecx + ecx*2]", "0x10057795"], ["0x100a08d8", "mov eax, dword ptr [esi + edx*8 + 0x2c]", "0x10057798"], ["0x100a08dc", "mov dword ptr [edi + 8], eax", "0x1005779c"], ["0x100a08df", "mov edi, dword ptr [esp + 0x10]", "0x1005779f"], ["0x100a08e3", "mov ecx, dword ptr [esp + 8]", "0x100577a3"], ["0x100a08e7", "lea edx, [ecx + ecx*2]", "0x100577a7"], ["0x100a08ea", "mov eax, dword ptr [esi + edx*8 + 0x20]", "0x100577aa"], ["0x100a08ee", "mov dword ptr [edi + 0xc], eax", "0x100577ae"]]}, {"orig": [["0x100a08f1", "lea eax, [esp + 0x60]"], ["0x100a08f5", "lea ecx, [esp + 0x2c]"], ["0x100a08f9", "mov edi, dword ptr [esp + 0x2c]"]], "recomp": [["0x100577b1", "lea eax, [esp + 0x2c]"], ["0x100577b5", "lea ecx, [esp + 0x44]"], ["0x100577b9", "mov edi, dword ptr [esp + 0x44]"]]}, {"both": [["0x100a08fd", "push eax", "0x100577bd"], ["0x100a08fe", "call dword ptr [edi + 0x98]", "0x100577be"]]}, {"orig": [["0x100a0904", "or dword ptr [esp + 0x5c], 1"]], "recomp": []}, {"both": [["0x100a0909", "lea ecx, [esp + 0xc]", "0x100577c4"]]}, {"orig": [["0x100a090d", "mov eax, dword ptr [esp + 0x44]"]], "recomp": [["0x100577c8", "mov eax, dword ptr [esp + 0x5c]"], ["0x100577cc", "or dword ptr [esp + 0x74], 1"]]}, {"both": [["0x100a0911", "push ecx", "0x100577d1"]]}, {"orig": [["0x100a0912", "lea ecx, [esp + 0x48]"]], "recomp": [["0x100577d2", "lea ecx, [esp + 0x60]"]]}, {"both": [["0x100a0916", "call dword ptr [eax + 0x98]", "0x100577d6"], ["0x100a091c", "fld dword ptr [esp + 0x94]", "0x100577dc"]]}, {"orig": [["0x100a0923", "or dword ptr [esp + 0x5c], 2"]], "recomp": []}, {"both": [["0x100a0928", "mov ecx, dword ptr [esp + 8]", "0x100577e3"]]}, {"orig": [], "recomp": [["0x100577e7", "or dword ptr [esp + 0x74], 2"]]}, {"both": [["0x100a092c", "lea edx, [ecx + ecx*2]", "0x100577ec"], ["0x100a092f", "lea ecx, [esp + 0x78]", "0x100577ef"], ["0x100a0933", "mov dword ptr [esp + 0x24], Vector4::`vftable' (VTABLE)", "0x100577f3"], ["0x100a093b", "fsub dword ptr [esi + edx*8 + 4]", "0x100577fb"], ["0x100a093f", "fld dword ptr [esi + edx*8 + 0x1c]", "0x100577ff"], ["0x100a0943", "fsub dword ptr [esi + edx*8 + 4]", "0x10057803"], ["0x100a0947", "mov dword ptr [esp + 0x28], ecx", "0x10057807"], ["0x100a094b", "lea eax, [esi + edx*8]", "0x1005780b"], ["0x100a094e", "lea edx, [esp + 0x24]", "0x1005780e"]]}, {"orig": [["0x100a0952", "lea ecx, [esp + 0x2c]"]], "recomp": [["0x10057812", "lea ecx, [esp + 0x44]"]]}, {"both": [["0x100a0956", "fdivp st(1)", "0x10057816"], ["0x100a0958", "sub esp, 4", "0x10057818"], ["0x100a095b", "push edx", "0x1005781b"], ["0x100a095c", "fstp dword ptr [esp + 4]", "0x1005781c"], ["0x100a0960", "call UnknownMx4DPointFloat::FUN_100040a0 (FUNCTION)", "0x10057820"], ["0x100a0965", "test eax, eax", "0x10057825"], ["0x100a0967", "jne 0x11", "0x10057827"], ["0x100a0969", "lea eax, [esp + 0x24]", "0x10057829"], ["0x100a096d", "mov ecx, dword ptr [esp + 0x98]", "0x1005782d"], ["0x100a0974", "push eax", "0x10057834"]]}]]]}, {"address": "0x100a0990", "recomp": "0x10057850", "name": "LegoAnimNodeData::FUN_100a0990", "matching": 1.0, "diff": []}, {"address": "0x100a0a00", "recomp": "0x100578c0", "name": "LegoAnimNodeData::FindKeys", "matching": 0.0, "stub": true}, {"address": "0x100a0b30", "recomp": "0x100578d0", "name": "LegoAnim::LegoAnim", "matching": 1.0, "diff": []}, {"address": "0x100a0ba0", "recomp": "0x100579b0", "name": "LegoAnim::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a0bc0", "recomp": "0x100579d0", "name": "LegoAnim::~LegoAnim", "matching": 1.0, "diff": []}, {"address": "0x100a0c70", "recomp": "0x10057a80", "name": "LegoAnim::Read", "matching": 1.0, "diff": []}, {"address": "0x100a0e30", "recomp": "0x10057c40", "name": "LegoAnim::Write", "matching": 0.0, "stub": true}, {"address": "0x100a0f20", "recomp": "0x10057c50", "name": "LegoAnim::GetActorName", "matching": 1.0, "diff": []}, {"address": "0x100a0f40", "recomp": "0x10057c70", "name": "LegoAnim::GetActorUnknown0x04", "matching": 1.0, "diff": []}, {"address": "0x100a0f60", "recomp": "0x10057c90", "name": "LegoMorphKey::LegoMorphKey", "matching": 1.0, "diff": []}, {"address": "0x100a0f70", "recomp": "0x10057ca0", "name": "LegoMorphKey::Read", "matching": 1.0, "diff": []}, {"address": "0x100a0ff0", "recomp": "0x10057470", "name": "Matrix4::Scale", "matching": 0.8064516129032258, "diff": [["@@ -0x100a0ff0,31 +0x10057470,31 @@", [{"both": [["0x100a0ff0", "mov edx, dword ptr [esp + 4]", "0x10057470"], ["0x100a0ff4", "push ebx", "0x10057474"], ["0x100a0ff5", "push esi", "0x10057475"], ["0x100a0ff6", "xor ebx, ebx", "0x10057476"], ["0x100a0ff8", "mov esi, dword ptr [esp + 0x10]", "0x10057478"], ["0x100a0ffc", "push edi", "0x1005747c"], ["0x100a0ffd", "mov edi, dword ptr [esp + 0x18]", "0x1005747d"], ["0x100a1001", "jmp 0x2", "0x10057481"], ["0x100a1003", "fstp dword ptr [eax]", "0x10057483"]]}, {"orig": [["0x100a1005", "fld dword ptr [edx]"]], "recomp": []}, {"both": [["0x100a1007", "mov eax, dword ptr [ecx + 4]", "0x10057485"], ["0x100a100a", "add eax, ebx", "0x10057488"], ["0x100a100c", "add ebx, 0x10", "0x1005748a"]]}, {"orig": [["0x100a100f", "fmul dword ptr [eax]"]], "recomp": [["0x1005748d", "fld dword ptr [eax]"], ["0x1005748f", "fmul dword ptr [edx]"]]}, {"both": [["0x100a1011", "fstp dword ptr [eax]", "0x10057491"]]}, {"orig": [["0x100a1013", "fld dword ptr [esi]"]], "recomp": []}, {"both": [["0x100a1015", "mov eax, dword ptr [ecx + 4]", "0x10057493"], ["0x100a1018", "cmp ebx, 0x40", "0x10057496"], ["0x100a101b", "lea eax, [eax + ebx - 0xc]", "0x10057499"]]}, {"orig": [["0x100a101f", "fmul dword ptr [eax]"]], "recomp": [["0x1005749d", "fld dword ptr [eax]"], ["0x1005749f", "fmul dword ptr [esi]"]]}, {"both": [["0x100a1021", "fstp dword ptr [eax]", "0x100574a1"]]}, {"orig": [["0x100a1023", "fld dword ptr [edi]"]], "recomp": []}, {"both": [["0x100a1025", "mov eax, dword ptr [ecx + 4]", "0x100574a3"], ["0x100a1028", "lea eax, [eax + ebx - 8]", "0x100574a6"]]}, {"orig": [["0x100a102c", "fmul dword ptr [eax]"]], "recomp": [["0x100574aa", "fld dword ptr [eax]"], ["0x100574ac", "fmul dword ptr [edi]"]]}, {"both": [["0x100a102e", "jl -0x2d", "0x100574ae"], ["0x100a1030", "fstp dword ptr [eax]", "0x100574b0"], ["0x100a1032", "pop edi", "0x100574b2"], ["0x100a1033", "pop esi", "0x100574b3"], ["0x100a1034", "pop ebx", "0x100574b4"], ["0x100a1035", "ret 0xc", "0x100574b5"]]}]]]}, {"address": "0x100a1040", "recomp": "0x10057940", "name": "LegoAnim::CreateData", "matching": 1.0, "diff": []}, {"address": "0x100a10b0", "recomp": "0x1004b200", "name": "ViewportAppData::ViewportAppData", "matching": 1.0, "diff": []}, {"address": "0x100a10e0", "recomp": "0x1004b230", "name": "ViewportAppData::~ViewportAppData", "matching": 1.0, "diff": []}, {"address": "0x100a1160", "recomp": "0x1004b2b0", "name": "TglImpl::ViewImpl::ViewportCreateAppData", "matching": 1.0, "diff": []}, {"address": "0x100a1240", "recomp": "0x1004b390", "name": "ViewportDestroyCallback", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a1240,33 +0x1004b390,33 @@", [{"both": [["0x100a1240", "push ebx", "0x1004b390"], ["0x100a1241", "push esi", "0x1004b391"]]}, {"orig": [["0x100a1242", "mov esi, dword ptr [esp + 0x10]"]], "recomp": [["0x1004b392", "mov ebx, dword ptr [esp + 0x10]"]]}, {"both": [["0x100a1246", "push edi", "0x1004b396"], ["0x100a1247", "push ebp", "0x1004b397"]]}, {"orig": [["0x100a1248", "mov edi, dword ptr [esi]"], ["0x100a124a", "mov ecx, dword ptr [esi + 4]"], ["0x100a124d", "mov ebx, dword ptr [esi + 8]"], ["0x100a1250", "test ebx, ebx"]], "recomp": [["0x1004b398", "mov esi, dword ptr [ebx]"], ["0x1004b39a", "mov ecx, dword ptr [ebx + 4]"], ["0x1004b39d", "mov edi, dword ptr [ebx + 8]"], ["0x1004b3a0", "test edi, edi"]]}, {"both": [["0x100a1252", "je 0x16", "0x1004b3a2"]]}, {"orig": [["0x100a1254", "mov eax, dword ptr [ebx]"]], "recomp": [["0x1004b3a4", "mov eax, dword ptr [edi]"]]}, {"both": [["0x100a1256", "push ecx", "0x1004b3a6"]]}, {"orig": [["0x100a1257", "push ebx"]], "recomp": [["0x1004b3a7", "push edi"]]}, {"both": [["0x100a1258", "mov ebp, dword ptr [eax + 0x98]", "0x1004b3a8"], ["0x100a125e", "call ebp", "0x1004b3ae"]]}, {"orig": [], "recomp": [["0x1004b3b0", "push esi"]]}, {"both": [["0x100a1260", "push edi", "0x1004b3b1"]]}, {"orig": [], "recomp": [["0x1004b3b2", "call ebp"], ["0x1004b3b4", "push edi"], ["0x1004b3b5", "mov esi, dword ptr [edi]"], ["0x1004b3b7", "call dword ptr [esi + 8]"], ["0x1004b3ba", "test ebx, ebx"], ["0x1004b3bc", "je 0x10"], ["0x1004b3be", "mov ecx, ebx"], ["0x1004b3c0", "call ViewportAppData::~ViewportAppData (FUNCTION)"]]}, {"both": [["0x100a1261", "push ebx", "0x1004b3c5"]]}, {"orig": [["0x100a1262", "call ebp"], ["0x100a1264", "push ebx"], ["0x100a1265", "mov ebx, dword ptr [ebx]"], ["0x100a1267", "call dword ptr [ebx + 8]"], ["0x100a126a", "test esi, esi"], ["0x100a126c", "je 0x10"], ["0x100a126e", "mov ecx, esi"], ["0x100a1270", "call ViewportAppData::~ViewportAppData (FUNCTION)"], ["0x100a1275", "push esi"]], "recomp": []}, {"both": [["0x100a1276", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004b3c6"], ["0x100a127b", "add esp, 4", "0x1004b3cb"], ["0x100a127e", "pop ebp", "0x1004b3ce"], ["0x100a127f", "pop edi", "0x1004b3cf"], ["0x100a1280", "pop esi", "0x1004b3d0"], ["0x100a1281", "pop ebx", "0x1004b3d1"], ["0x100a1282", "ret ", "0x1004b3d2"]]}]]]}, {"address": "0x100a1290", "recomp": "0x1004b3e0", "name": "ViewportPickImpl", "matching": 1.0, "diff": []}, {"address": "0x100a12a0", "recomp": "0x1004c1c0", "name": "TglImpl::TextureImpl::SetImage", "matching": 1.0, "diff": []}, {"address": "0x100a1300", "recomp": "0x1004c220", "name": "TextureDestroyCallback", "matching": 0.5, "diff": [["@@ -0x100a1300,22 +0x1004c220,22 @@", [{"both": [["0x100a1300", "push ebx", "0x1004c220"], ["0x100a1301", "push esi", "0x1004c221"]]}, {"orig": [], "recomp": [["0x1004c222", "mov esi, dword ptr [esp + 0xc]"]]}, {"both": [["0x100a1302", "push edi", "0x1004c226"]]}, {"orig": [["0x100a1303", "mov edi, dword ptr [esp + 0x10]"]], "recomp": [["0x1004c227", "push esi"], ["0x1004c228", "mov ebx, dword ptr [esi]"], ["0x1004c22a", "call dword ptr [ebx + 0x1c]"], ["0x1004c22d", "mov edi, eax"], ["0x1004c22f", "test edi, edi"], ["0x1004c231", "je 0x10"], ["0x1004c233", "mov ecx, edi"], ["0x1004c235", "call TglImpl::TglD3DRMIMAGE::Destroy (FUNCTION)"]]}, {"both": [["0x100a1307", "push edi", "0x1004c23a"]]}, {"orig": [["0x100a1308", "mov esi, dword ptr [edi]"], ["0x100a130a", "call dword ptr [esi + 0x1c]"], ["0x100a130d", "mov ebx, eax"], ["0x100a130f", "test ebx, ebx"], ["0x100a1311", "je 0x10"], ["0x100a1313", "mov ecx, ebx"], ["0x100a1315", "call TglImpl::TglD3DRMIMAGE::Destroy (FUNCTION)"], ["0x100a131a", "push ebx"]], "recomp": []}, {"both": [["0x100a131b", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004c23b"], ["0x100a1320", "add esp, 4", "0x1004c240"], ["0x100a1323", "push 0", "0x1004c243"]]}, {"orig": [["0x100a1325", "push edi"], ["0x100a1326", "call dword ptr [esi + 0x18]"]], "recomp": [["0x1004c245", "push esi"], ["0x1004c246", "call dword ptr [ebx + 0x18]"]]}, {"both": [["0x100a1329", "pop edi", "0x1004c249"], ["0x100a132a", "pop esi", "0x1004c24a"], ["0x100a132b", "pop ebx", "0x1004c24b"], ["0x100a132c", "ret ", "0x1004c24c"]]}]]]}, {"address": "0x100a1330", "recomp": "0x1004c250", "name": "TglImpl::TglD3DRMIMAGE::TglD3DRMIMAGE", "matching": 1.0, "diff": []}, {"address": "0x100a13b0", "recomp": "0x1004c2d0", "name": "TglImpl::TglD3DRMIMAGE::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100a13e0", "recomp": "0x1004c300", "name": "TglImpl::TglD3DRMIMAGE::CreateBuffer", "matching": 0.0, "stub": true}, {"address": "0x100a1510", "recomp": "0x1004c310", "name": "TglImpl::TglD3DRMIMAGE::FillRowsOfTexture", "matching": 0.8823529411764706, "diff": [["@@ -0x100a151d,11 +0x1004c31d,13 @@", [{"both": [["0x100a151d", "mov esi, dword ptr [esp + 0x14]", "0x1004c31d"], ["0x100a1521", "imul edx, eax", "0x1004c321"], ["0x100a1524", "imul edi, eax", "0x1004c324"], ["0x100a1527", "add edi, dword ptr [ecx + 0x1c]", "0x1004c327"], ["0x100a152a", "mov ecx, edx", "0x1004c32a"], ["0x100a152c", "shr ecx, 2", "0x1004c32c"], ["0x100a152f", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1004c32f"], ["0x100a1531", "mov ecx, edx", "0x1004c331"], ["0x100a1533", "and ecx, 3", "0x1004c333"], ["0x100a1536", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1004c336"]]}, {"orig": [["0x100a1538", "mov eax, 1"]], "recomp": [["0x1004c338", "pop edi"], ["0x1004c339", "pop esi"], ["0x1004c33a", "ret 0xc"]]}]]]}, {"address": "0x100a1550", "recomp": "0x1004c340", "name": "TglImpl::TglD3DRMIMAGE::InitializePalette", "matching": 1.0, "diff": []}, {"address": "0x100a15e0", "recomp": "0x10049a70", "name": "Tgl::CreateRenderer", "matching": 0.9868421052631579, "diff": [["@@ -0x100a1660,21 +0x10049af0,21 @@", [{"both": [["0x100a1660", "push eax", "0x10049af0"], ["0x100a1661", "mov edi, dword ptr [eax]", "0x10049af1"], ["0x100a1663", "call dword ptr [edi + 4]", "0x10049af3"], ["0x100a1666", "jmp 0x1b", "0x10049af6"], ["0x100a1668", "lea eax, [ebp - 0x10]", "0x10049af8"], ["0x100a166b", "push eax", "0x10049afb"], ["0x100a166c", "call _Direct3DRMCreate@4 (FUNCTION)", "0x10049afc"], ["0x100a1671", "push TglImpl::g_pD3DRM (DATA)", "0x10049b01"], ["0x100a1676", "mov eax, dword ptr [ebp - 0x10]", "0x10049b06"], ["0x100a1679", "mov edi, dword ptr [eax]", "0x10049b09"]]}, {"orig": [["0x100a167b", "push <OFFSET10>"]], "recomp": [["0x10049b0b", "push IID_IDirect3DRM2 (DATA)"]]}, {"both": [["0x100a1680", "push eax", "0x10049b10"], ["0x100a1681", "call dword ptr [edi]", "0x10049b11"], ["0x100a1683", "mov eax, dword ptr [TglImpl::g_pD3DRM (DATA)]", "0x10049b13"], ["0x100a1688", "mov dword ptr [esi + 4], eax", "0x10049b18"], ["0x100a168b", "test eax, eax", "0x10049b1b"], ["0x100a168d", "jne 0xe", "0x10049b1d"], ["0x100a168f", "test esi, esi", "0x10049b1f"], ["0x100a1691", "je 0x8", "0x10049b21"], ["0x100a1693", "push 1", "0x10049b23"], ["0x100a1695", "mov eax, dword ptr [esi]", "0x10049b25"]]}]]]}, {"address": "0x100a16d0", "recomp": "0x10049b90", "name": "TglImpl::RendererImpl::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a1770", "recomp": "0x10049c30", "name": "Tgl::Renderer::~Renderer", "matching": 1.0, "diff": []}, {"address": "0x100a17c0", "recomp": "0x10049c80", "name": "Tgl::Renderer::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a1830", "recomp": "0x10049cf0", "name": "TglImpl::RendererImpl::CreateDevice", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a1841,61 +0x10049d01,61 @@", [{"both": [["0x100a1841", "mov dword ptr fs:[0], esp", "0x10049d01"], ["0x100a1848", "sub esp, 4", "0x10049d08"], ["0x100a184b", "push ebx", "0x10049d0b"], ["0x100a184c", "push esi", "0x10049d0c"], ["0x100a184d", "push edi", "0x10049d0d"], ["0x100a184e", "mov ebx, ecx", "0x10049d0e"], ["0x100a1850", "push 8", "0x10049d10"], ["0x100a1852", "call ??2@YAPAXI@Z (FUNCTION)", "0x10049d12"], ["0x100a1857", "mov dword ptr [ebp - 0x10], eax", "0x10049d17"], ["0x100a185a", "add esp, 4", "0x10049d1a"]]}, {"orig": [["0x100a185d", "mov edi, eax"]], "recomp": [["0x10049d1d", "mov esi, eax"]]}, {"both": [["0x100a185f", "xor eax, eax", "0x10049d1f"], ["0x100a1861", "mov dword ptr [ebp - 4], eax", "0x10049d21"]]}, {"orig": [["0x100a1864", "test edi, edi"]], "recomp": [["0x10049d24", "test esi, esi"]]}, {"both": [["0x100a1866", "je 0x34", "0x10049d26"], ["0x100a1868", "mov byte ptr [ebp - 4], 1", "0x10049d28"]]}, {"orig": [["0x100a186c", "mov esi, edi"], ["0x100a186e", "mov dword ptr [edi], Tgl::Object::`vftable' (VTABLE)"]], "recomp": [["0x10049d2c", "mov edi, esi"], ["0x10049d2e", "mov dword ptr [esi], Tgl::Object::`vftable' (VTABLE)"]]}, {"both": [["0x100a1874", "mov byte ptr [ebp - 4], 2", "0x10049d34"]]}, {"orig": [["0x100a1878", "mov dword ptr [edi], Tgl::Device::`vftable' (VTABLE)"]], "recomp": [["0x10049d38", "mov dword ptr [esi], Tgl::Device::`vftable' (VTABLE)"]]}, {"both": [["0x100a187e", "mov byte ptr [ebp - 4], al", "0x10049d3e"]]}, {"orig": [["0x100a1881", "mov dword ptr [edi + 4], eax"], ["0x100a1884", "mov dword ptr [edi], TglImpl::DeviceImpl::`vftable' (VTABLE)"]], "recomp": [["0x10049d41", "mov dword ptr [esi + 4], eax"], ["0x10049d44", "mov dword ptr [esi], TglImpl::DeviceImpl::`vftable' (VTABLE)"]]}, {"both": [["0x100a188a", "jmp 0x12", "0x10049d4a"], ["0x100a188c", "mov ecx, dword ptr [ebp - 0x10]", "0x10049d4c"], ["0x100a188f", "jmp Tgl::Object::~Object (FUNCTION)", "0x10049d4f"], ["0x100a1894", "mov ecx, dword ptr [ebp - 0x10]", "0x10049d54"], ["0x100a1897", "jmp Tgl::Device::~Device (FUNCTION)", "0x10049d57"]]}, {"orig": [["0x100a189c", "xor esi, esi"], ["0x100a189e", "mov edx, dword ptr [ebx + 4]"], ["0x100a18a1", "lea eax, [esi + 4]"]], "recomp": [["0x10049d5c", "xor edi, edi"], ["0x10049d5e", "mov ecx, dword ptr [ebx + 4]"], ["0x10049d61", "lea eax, [edi + 4]"]]}, {"both": [["0x100a18a4", "push eax", "0x10049d64"], ["0x100a18a5", "mov eax, dword ptr [ebp + 8]", "0x10049d65"], ["0x100a18a8", "mov dword ptr [ebp - 4], 0xffffffff", "0x10049d68"]]}, {"orig": [["0x100a18af", "mov ecx, dword ptr [eax + 4]"]], "recomp": [["0x10049d6f", "mov edx, dword ptr [eax + 4]"]]}, {"both": [["0x100a18b2", "mov ebx, dword ptr [eax]", "0x10049d72"]]}, {"orig": [], "recomp": [["0x10049d74", "push edx"], ["0x10049d75", "mov eax, dword ptr [ecx]"], ["0x10049d77", "push ebx"]]}, {"both": [["0x100a18b4", "push ecx", "0x10049d78"]]}, {"orig": [["0x100a18b5", "mov eax, dword ptr [edx]"], ["0x100a18b7", "push ebx"], ["0x100a18b8", "push edx"]], "recomp": []}, {"both": [["0x100a18b9", "call dword ptr [eax + 0x40]", "0x10049d79"], ["0x100a18bc", "test eax, eax", "0x10049d7c"], ["0x100a18be", "jge 0xe", "0x10049d7e"]]}, {"orig": [["0x100a18c0", "test esi, esi"]], "recomp": [["0x10049d80", "test edi, edi"]]}, {"both": [["0x100a18c2", "je 0x8", "0x10049d82"], ["0x100a18c4", "push 1", "0x10049d84"]]}, {"orig": [["0x100a18c6", "mov eax, dword ptr [esi]"], ["0x100a18c8", "mov ecx, esi"]], "recomp": [["0x10049d86", "mov eax, dword ptr [edi]"], ["0x10049d88", "mov ecx, edi"]]}, {"both": [["0x100a18ca", "call dword ptr [eax]", "0x10049d8a"]]}, {"orig": [["0x100a18cc", "xor esi, esi"], ["0x100a18ce", "mov eax, esi"]], "recomp": [["0x10049d8c", "xor edi, edi"], ["0x10049d8e", "mov eax, edi"]]}, {"both": [["0x100a18d0", "mov ecx, dword ptr [ebp - 0xc]", "0x10049d90"], ["0x100a18d3", "mov dword ptr fs:[0], ecx", "0x10049d93"], ["0x100a18da", "pop edi", "0x10049d9a"], ["0x100a18db", "pop esi", "0x10049d9b"], ["0x100a18dc", "pop ebx", "0x10049d9c"], ["0x100a18dd", "mov esp, ebp", "0x10049d9d"], ["0x100a18df", "pop ebp", "0x10049d9f"], ["0x100a18e0", "ret 4", "0x10049da0"], ["0x100a18e3", "mov eax, <OFFSET8>", "0x10049da3"], ["0x100a18e8", "jmp ___CxxFrameHandler (FUNCTION)", "0x10049da8"]]}]]]}, {"address": "0x100a1900", "recomp": "0x10049f10", "name": "TglImpl::RendererImpl::CreateDevice", "matching": 0.686046511627907, "diff": [["@@ -0x100a1900,86 +0x10049f10,86 @@", [{"both": [["0x100a1900", "mov eax, dword ptr fs:[0]", "0x10049f10"], ["0x100a1906", "push ebp", "0x10049f16"], ["0x100a1907", "mov ebp, esp", "0x10049f17"], ["0x100a1909", "push -1", "0x10049f19"], ["0x100a190b", "push <OFFSET1>", "0x10049f1b"], ["0x100a1910", "push eax", "0x10049f20"], ["0x100a1911", "mov dword ptr fs:[0], esp", "0x10049f21"]]}, {"orig": [["0x100a1918", "sub esp, 4"]], "recomp": [["0x10049f28", "sub esp, 8"]]}, {"both": [["0x100a191b", "push ebx", "0x10049f2b"], ["0x100a191c", "push esi", "0x10049f2c"], ["0x100a191d", "push edi", "0x10049f2d"], ["0x100a191e", "mov ebx, ecx", "0x10049f2e"], ["0x100a1920", "push 8", "0x10049f30"], ["0x100a1922", "call ??2@YAPAXI@Z (FUNCTION)", "0x10049f32"], ["0x100a1927", "mov dword ptr [ebp - 0x10], eax", "0x10049f37"], ["0x100a192a", "add esp, 4", "0x10049f3a"]]}, {"orig": [["0x100a192d", "mov esi, eax"]], "recomp": [["0x10049f3d", "mov edi, eax"]]}, {"both": [["0x100a192f", "xor eax, eax", "0x10049f3f"], ["0x100a1931", "mov dword ptr [ebp - 4], eax", "0x10049f41"]]}, {"orig": [["0x100a1934", "test esi, esi"]], "recomp": [["0x10049f44", "test edi, edi"]]}, {"both": [["0x100a1936", "je 0x34", "0x10049f46"], ["0x100a1938", "mov byte ptr [ebp - 4], 1", "0x10049f48"]]}, {"orig": [["0x100a193c", "mov edi, esi"], ["0x100a193e", "mov dword ptr [esi], Tgl::Object::`vftable' (VTABLE)"]], "recomp": [["0x10049f4c", "mov esi, edi"], ["0x10049f4e", "mov dword ptr [edi], Tgl::Object::`vftable' (VTABLE)"]]}, {"both": [["0x100a1944", "mov byte ptr [ebp - 4], 2", "0x10049f54"]]}, {"orig": [["0x100a1948", "mov dword ptr [esi], Tgl::Device::`vftable' (VTABLE)"]], "recomp": [["0x10049f58", "mov dword ptr [edi], Tgl::Device::`vftable' (VTABLE)"]]}, {"both": [["0x100a194e", "mov byte ptr [ebp - 4], al", "0x10049f5e"]]}, {"orig": [["0x100a1951", "mov dword ptr [esi + 4], eax"], ["0x100a1954", "mov dword ptr [esi], TglImpl::DeviceImpl::`vftable' (VTABLE)"]], "recomp": [["0x10049f61", "mov dword ptr [edi + 4], eax"], ["0x10049f64", "mov dword ptr [edi], TglImpl::DeviceImpl::`vftable' (VTABLE)"]]}, {"both": [["0x100a195a", "jmp 0x12", "0x10049f6a"], ["0x100a195c", "mov ecx, dword ptr [ebp - 0x10]", "0x10049f6c"], ["0x100a195f", "jmp Tgl::Object::~Object (FUNCTION)", "0x10049f6f"], ["0x100a1964", "mov ecx, dword ptr [ebp - 0x10]", "0x10049f74"], ["0x100a1967", "jmp Tgl::Device::~Device (FUNCTION)", "0x10049f77"]]}, {"orig": [["0x100a196c", "xor edi, edi"]], "recomp": [["0x10049f7c", "xor esi, esi"]]}, {"both": [["0x100a196e", "mov ecx, dword ptr [ebx + 4]", "0x10049f7e"]]}, {"orig": [["0x100a1971", "lea eax, [edi + 4]"]], "recomp": [["0x10049f81", "lea eax, [esi + 4]"]]}, {"both": [["0x100a1974", "mov ebx, dword ptr [ebp + 8]", "0x10049f84"], ["0x100a1977", "push eax", "0x10049f87"], ["0x100a1978", "mov dword ptr [ebp - 4], 0xffffffff", "0x10049f88"], ["0x100a197f", "mov edx, dword ptr [ebx + 0x10]", "0x10049f8f"]]}, {"orig": [["0x100a1982", "mov esi, dword ptr [ebx + 8]"]], "recomp": [["0x10049f92", "mov eax, dword ptr [ebx + 8]"]]}, {"both": [["0x100a1985", "push edx", "0x10049f95"]]}, {"orig": [["0x100a1986", "mov eax, dword ptr [ebx]"], ["0x100a1988", "push esi"]], "recomp": []}, {"both": [["0x100a1989", "push eax", "0x10049f96"]]}, {"orig": [], "recomp": [["0x10049f97", "mov edx, dword ptr [ebx]"], ["0x10049f99", "mov eax, dword ptr [ecx]"], ["0x10049f9b", "push edx"]]}, {"both": [["0x100a198a", "push ecx", "0x10049f9c"]]}, {"orig": [["0x100a198b", "mov esi, dword ptr [ecx]"], ["0x100a198d", "call dword ptr [esi + 0x3c]"], ["0x100a1990", "mov esi, 1"]], "recomp": [["0x10049f9d", "call dword ptr [eax + 0x3c]"], ["0x10049fa0", "mov dword ptr [ebp - 0x14], eax"]]}, {"both": [["0x100a1995", "test eax, eax", "0x10049fa3"]]}, {"orig": [["0x100a1997", "jge 0x2"], ["0x100a1999", "xor esi, esi"], ["0x100a199b", "cmp esi, 1"], ["0x100a199e", "jne 0x1a"]], "recomp": [["0x10049fa5", "jl 0x1a"]]}, {"both": [["0x100a19a0", "cmp dword ptr [ebx + 0x10], 0", "0x10049fa7"], ["0x100a19a4", "je 0x14", "0x10049fab"], ["0x100a19a6", "cmp dword ptr [<OFFSET8>], 0", "0x10049fad"], ["0x100a19ad", "je 0xb", "0x10049fb4"]]}, {"orig": [["0x100a19af", "mov eax, dword ptr [edi + 4]"]], "recomp": [["0x10049fb6", "mov eax, dword ptr [esi + 4]"]]}, {"both": [["0x100a19b2", "push 2", "0x10049fb9"], ["0x100a19b4", "push eax", "0x10049fbb"], ["0x100a19b5", "mov ebx, dword ptr [eax]", "0x10049fbc"], ["0x100a19b7", "call dword ptr [ebx + 0x44]", "0x10049fbe"]]}, {"orig": [], "recomp": [["0x10049fc1", "cmp dword ptr [ebp - 0x14], 0"], ["0x10049fc5", "jge 0xe"]]}, {"both": [["0x100a19ba", "test esi, esi", "0x10049fc7"]]}, {"orig": [["0x100a19bc", "jne 0xe"], ["0x100a19be", "test edi, edi"]], "recomp": []}, {"both": [["0x100a19c0", "je 0x8", "0x10049fc9"], ["0x100a19c2", "push 1", "0x10049fcb"]]}, {"orig": [["0x100a19c4", "mov eax, dword ptr [edi]"], ["0x100a19c6", "mov ecx, edi"]], "recomp": [["0x10049fcd", "mov eax, dword ptr [esi]"], ["0x10049fcf", "mov ecx, esi"]]}, {"both": [["0x100a19c8", "call dword ptr [eax]", "0x10049fd1"]]}, {"orig": [["0x100a19ca", "xor edi, edi"], ["0x100a19cc", "mov eax, edi"]], "recomp": [["0x10049fd3", "xor esi, esi"], ["0x10049fd5", "mov eax, esi"]]}, {"both": [["0x100a19ce", "mov ecx, dword ptr [ebp - 0xc]", "0x10049fd7"], ["0x100a19d1", "mov dword ptr fs:[0], ecx", "0x10049fda"], ["0x100a19d8", "pop edi", "0x10049fe1"], ["0x100a19d9", "pop esi", "0x10049fe2"], ["0x100a19da", "pop ebx", "0x10049fe3"], ["0x100a19db", "mov esp, ebp", "0x10049fe4"], ["0x100a19dd", "pop ebp", "0x10049fe6"], ["0x100a19de", "ret 4", "0x10049fe7"], ["0x100a19e1", "mov eax, <OFFSET9>", "0x10049fea"], ["0x100a19e6", "jmp ___CxxFrameHandler (FUNCTION)", "0x10049fef"], ["0x100a19eb", "mov eax, dword ptr [ebp - 0x10]", "0x10049ff4"], ["0x100a19ee", "push eax", "0x10049ff7"]]}, {"orig": [], "recomp": [["0x10049ff8", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10049ffd", "add esp, 4"], ["0x1004a000", "ret "]]}]]]}, {"address": "0x100a1a00", "recomp": "0x1004a010", "name": "TglImpl::RendererImpl::CreateView", "matching": 0.7627906976744186, "diff": [["@@ -0x100a1a00,18 +0x1004a010,18 @@", [{"both": [["0x100a1a00", "mov eax, dword ptr fs:[0]", "0x1004a010"], ["0x100a1a06", "push ebp", "0x1004a016"], ["0x100a1a07", "mov ebp, esp", "0x1004a017"], ["0x100a1a09", "push -1", "0x1004a019"], ["0x100a1a0b", "push <OFFSET1>", "0x1004a01b"], ["0x100a1a10", "push eax", "0x1004a020"], ["0x100a1a11", "mov dword ptr fs:[0], esp", "0x1004a021"]]}, {"orig": [["0x100a1a18", "sub esp, 4"]], "recomp": [["0x1004a028", "sub esp, 0xc"]]}, {"both": [["0x100a1a1b", "push ebx", "0x1004a02b"], ["0x100a1a1c", "push esi", "0x1004a02c"], ["0x100a1a1d", "push edi", "0x1004a02d"], ["0x100a1a1e", "mov ebx, ecx", "0x1004a02e"], ["0x100a1a20", "push 8", "0x1004a030"], ["0x100a1a22", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004a032"], ["0x100a1a27", "mov dword ptr [ebp - 0x10], eax", "0x1004a037"], ["0x100a1a2a", "add esp, 4", "0x1004a03a"], ["0x100a1a2d", "mov esi, eax", "0x1004a03d"], ["0x100a1a2f", "xor eax, eax", "0x1004a03f"]]}]], ["@@ -0x100a1a51,63 +0x1004a061,66 @@", [{"both": [["0x100a1a51", "mov dword ptr [esi + 4], eax", "0x1004a061"], ["0x100a1a54", "mov dword ptr [esi], TglImpl::ViewImpl::`vftable' (VTABLE)", "0x1004a064"], ["0x100a1a5a", "jmp 0x12", "0x1004a06a"], ["0x100a1a5c", "mov ecx, dword ptr [ebp - 0x10]", "0x1004a06c"], ["0x100a1a5f", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004a06f"], ["0x100a1a64", "mov ecx, dword ptr [ebp - 0x10]", "0x1004a074"], ["0x100a1a67", "jmp Tgl::View::~View (FUNCTION)", "0x1004a077"], ["0x100a1a6c", "xor edi, edi", "0x1004a07c"], ["0x100a1a6e", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004a07e"], ["0x100a1a75", "mov eax, dword ptr [ebp + 0xc]", "0x1004a085"]]}, {"orig": [["0x100a1a78", "mov ebx, dword ptr [ebx + 4]"], ["0x100a1a7b", "mov edx, dword ptr [ebp + 0x18]"]], "recomp": [["0x1004a088", "mov edx, dword ptr [ebx + 4]"], ["0x1004a08b", "mov dword ptr [ebp - 0x14], edx"]]}, {"both": [["0x100a1a7e", "mov ecx, dword ptr [eax + 4]", "0x1004a08e"], ["0x100a1a81", "lea eax, [edi + 4]", "0x1004a091"]]}, {"orig": [["0x100a1a84", "mov dword ptr [ebp - 0x10], ecx"]], "recomp": [["0x1004a094", "mov edx, dword ptr [ebp + 0x18]"]]}, {"both": [["0x100a1a87", "push eax", "0x1004a097"]]}, {"orig": [], "recomp": [["0x1004a098", "mov dword ptr [ebp - 0x18], ecx"]]}, {"both": [["0x100a1a88", "mov ecx, dword ptr [ebp + 0x1c]", "0x1004a09b"]]}, {"orig": [], "recomp": [["0x1004a09e", "mov eax, dword ptr [ebp + 0x14]"]]}, {"both": [["0x100a1a8b", "push ecx", "0x1004a0a1"]]}, {"orig": [["0x100a1a8c", "mov eax, dword ptr [ebp + 0x14]"]], "recomp": []}, {"both": [["0x100a1a8f", "push edx", "0x1004a0a2"]]}, {"orig": [], "recomp": [["0x1004a0a3", "push eax"]]}, {"both": [["0x100a1a90", "mov ecx, dword ptr [ebp + 0x10]", "0x1004a0a4"]]}, {"orig": [["0x100a1a93", "push eax"], ["0x100a1a94", "mov edx, dword ptr [ebp - 0x10]"]], "recomp": []}, {"both": [["0x100a1a97", "push ecx", "0x1004a0a7"]]}, {"orig": [], "recomp": [["0x1004a0a8", "mov edx, dword ptr [ebp - 0x18]"], ["0x1004a0ab", "push edx"]]}, {"both": [["0x100a1a98", "mov eax, dword ptr [ebp + 8]", "0x1004a0ac"]]}, {"orig": [["0x100a1a9b", "push edx"], ["0x100a1a9c", "mov esi, dword ptr [ebx]"]], "recomp": [["0x1004a0af", "mov edx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a1a9e", "mov ecx, dword ptr [eax + 4]", "0x1004a0b2"], ["0x100a1aa1", "push ecx", "0x1004a0b5"]]}, {"orig": [["0x100a1aa2", "push ebx"], ["0x100a1aa3", "call dword ptr [esi + 0x50]"], ["0x100a1aa6", "mov esi, 1"]], "recomp": [["0x1004a0b6", "mov ebx, 1"], ["0x1004a0bb", "push edx"], ["0x1004a0bc", "mov eax, dword ptr [edx]"], ["0x1004a0be", "call dword ptr [eax + 0x50]"]]}, {"both": [["0x100a1aab", "test eax, eax", "0x1004a0c1"], ["0x100a1aad", "jge 0x2", "0x1004a0c3"]]}, {"orig": [["0x100a1aaf", "xor esi, esi"], ["0x100a1ab1", "cmp esi, 1"], ["0x100a1ab4", "jne 0x28"], ["0x100a1ab6", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004a0c5", "xor ebx, ebx"], ["0x1004a0c7", "cmp ebx, 1"], ["0x1004a0ca", "jne 0x2b"], ["0x1004a0cc", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100a1ab9", "mov ecx, dword ptr [edi + 4]", "0x1004a0cf"], ["0x100a1abc", "push eax", "0x1004a0d2"]]}, {"orig": [], "recomp": [["0x1004a0d3", "mov edx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a1abd", "push ecx", "0x1004a0d6"]]}, {"orig": [["0x100a1abe", "push ebx"]], "recomp": [["0x1004a0d7", "push edx"]]}, {"both": [["0x100a1abf", "call TglImpl::ViewImpl::ViewportCreateAppData (FUNCTION)", "0x1004a0d8"], ["0x100a1ac4", "add esp, 0xc", "0x1004a0dd"]]}, {"orig": [["0x100a1ac7", "mov esi, eax"], ["0x100a1ac9", "cmp esi, 1"]], "recomp": [["0x1004a0e0", "mov ebx, eax"], ["0x1004a0e2", "cmp ebx, 1"]]}, {"both": [["0x100a1acc", "je 0x10", "0x1004a0e5"], ["0x100a1ace", "mov eax, dword ptr [edi + 4]", "0x1004a0e7"], ["0x100a1ad1", "push eax", "0x1004a0ea"]]}, {"orig": [["0x100a1ad2", "mov ebx, dword ptr [eax]"], ["0x100a1ad4", "call dword ptr [ebx + 8]"]], "recomp": [["0x1004a0eb", "mov esi, dword ptr [eax]"], ["0x1004a0ed", "call dword ptr [esi + 8]"]]}, {"both": [["0x100a1ad7", "mov dword ptr [edi + 4], 0", "0x1004a0f0"]]}, {"orig": [["0x100a1ade", "test esi, esi"]], "recomp": [["0x1004a0f7", "test ebx, ebx"]]}, {"both": [["0x100a1ae0", "jne 0xe", "0x1004a0f9"], ["0x100a1ae2", "test edi, edi", "0x1004a0fb"], ["0x100a1ae4", "je 0x8", "0x1004a0fd"], ["0x100a1ae6", "push 1", "0x1004a0ff"], ["0x100a1ae8", "mov eax, dword ptr [edi]", "0x1004a101"], ["0x100a1aea", "mov ecx, edi", "0x1004a103"], ["0x100a1aec", "call dword ptr [eax]", "0x1004a105"], ["0x100a1aee", "xor edi, edi", "0x1004a107"], ["0x100a1af0", "mov eax, edi", "0x1004a109"], ["0x100a1af2", "mov ecx, dword ptr [ebp - 0xc]", "0x1004a10b"]]}]], ["@@ -0x100a1aff,14 +0x1004a118,10 @@", [{"both": [["0x100a1aff", "mov esp, ebp", "0x1004a118"], ["0x100a1b01", "pop ebp", "0x1004a11a"], ["0x100a1b02", "ret 0x18", "0x1004a11b"], ["0x100a1b05", "mov eax, <OFFSET9>", "0x1004a11e"], ["0x100a1b0a", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004a123"], ["0x100a1b0f", "mov eax, dword ptr [ebp - 0x10]", "0x1004a128"], ["0x100a1b12", "push eax", "0x1004a12b"], ["0x100a1b13", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004a12c"], ["0x100a1b18", "add esp, 4", "0x1004a131"], ["0x100a1b1b", "ret ", "0x1004a134"]]}, {"orig": [["0x100a1b1c", "int3 "], ["0x100a1b1d", "int3 "], ["0x100a1b1e", "int3 "], ["0x100a1b1f", "int3 "]], "recomp": []}]]]}, {"address": "0x100a1b20", "recomp": "0x1004a290", "name": "TglImpl::RendererImpl::CreateGroup", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a1b7f,26 +0x1004a2ef,26 @@", [{"both": [["0x100a1b7f", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004a2ef"], ["0x100a1b84", "mov ecx, dword ptr [ebp - 0x10]", "0x1004a2f4"], ["0x100a1b87", "jmp Tgl::Group::~Group (FUNCTION)", "0x1004a2f7"], ["0x100a1b8c", "xor edi, edi", "0x1004a2fc"], ["0x100a1b8e", "mov eax, dword ptr [ebp + 8]", "0x1004a2fe"], ["0x100a1b91", "mov esi, 0", "0x1004a301"], ["0x100a1b96", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004a306"], ["0x100a1b9d", "test eax, eax", "0x1004a30d"], ["0x100a1b9f", "je 0x3", "0x1004a30f"], ["0x100a1ba1", "mov esi, dword ptr [eax + 4]", "0x1004a311"]]}, {"orig": [["0x100a1ba4", "mov eax, dword ptr [ebx + 4]"], ["0x100a1ba7", "lea ecx, [edi + 4]"]], "recomp": [["0x1004a314", "mov ecx, dword ptr [ebx + 4]"], ["0x1004a317", "lea eax, [edi + 4]"], ["0x1004a31a", "push eax"], ["0x1004a31b", "push 0"]]}, {"both": [["0x100a1baa", "push ecx", "0x1004a31d"]]}, {"orig": [["0x100a1bab", "push 0"], ["0x100a1bad", "push eax"], ["0x100a1bae", "mov ebx, dword ptr [eax]"]], "recomp": [["0x1004a31e", "mov ebx, dword ptr [ecx]"]]}, {"both": [["0x100a1bb0", "call dword ptr [ebx + 0x10]", "0x1004a320"], ["0x100a1bb3", "mov ebx, 1", "0x1004a323"], ["0x100a1bb8", "test eax, eax", "0x1004a328"], ["0x100a1bba", "jge 0x2", "0x1004a32a"], ["0x100a1bbc", "xor ebx, ebx", "0x1004a32c"], ["0x100a1bbe", "cmp ebx, 1", "0x1004a32e"], ["0x100a1bc1", "jne 0x2e", "0x1004a331"], ["0x100a1bc3", "test esi, esi", "0x1004a333"], ["0x100a1bc5", "je 0x2a", "0x1004a335"], ["0x100a1bc7", "mov eax, dword ptr [edi + 4]", "0x1004a337"]]}]]]}, {"address": "0x100a1c30", "recomp": "0x1004a4f0", "name": "TglImpl::RendererImpl::CreateCamera", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a1c41,57 +0x1004a501,57 @@", [{"both": [["0x100a1c41", "mov dword ptr fs:[0], esp", "0x1004a501"], ["0x100a1c48", "sub esp, 4", "0x1004a508"], ["0x100a1c4b", "push ebx", "0x1004a50b"], ["0x100a1c4c", "push esi", "0x1004a50c"], ["0x100a1c4d", "push edi", "0x1004a50d"], ["0x100a1c4e", "mov ebx, ecx", "0x1004a50e"], ["0x100a1c50", "push 8", "0x1004a510"], ["0x100a1c52", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004a512"], ["0x100a1c57", "mov dword ptr [ebp - 0x10], eax", "0x1004a517"], ["0x100a1c5a", "add esp, 4", "0x1004a51a"]]}, {"orig": [["0x100a1c5d", "mov edi, eax"]], "recomp": [["0x1004a51d", "mov esi, eax"]]}, {"both": [["0x100a1c5f", "xor eax, eax", "0x1004a51f"], ["0x100a1c61", "mov dword ptr [ebp - 4], eax", "0x1004a521"]]}, {"orig": [["0x100a1c64", "test edi, edi"]], "recomp": [["0x1004a524", "test esi, esi"]]}, {"both": [["0x100a1c66", "je 0x34", "0x1004a526"], ["0x100a1c68", "mov byte ptr [ebp - 4], 1", "0x1004a528"]]}, {"orig": [["0x100a1c6c", "mov esi, edi"], ["0x100a1c6e", "mov dword ptr [edi], Tgl::Object::`vftable' (VTABLE)"]], "recomp": [["0x1004a52c", "mov edi, esi"], ["0x1004a52e", "mov dword ptr [esi], Tgl::Object::`vftable' (VTABLE)"]]}, {"both": [["0x100a1c74", "mov byte ptr [ebp - 4], 2", "0x1004a534"]]}, {"orig": [["0x100a1c78", "mov dword ptr [edi], Tgl::Camera::`vftable' (VTABLE)"]], "recomp": [["0x1004a538", "mov dword ptr [esi], Tgl::Camera::`vftable' (VTABLE)"]]}, {"both": [["0x100a1c7e", "mov byte ptr [ebp - 4], al", "0x1004a53e"]]}, {"orig": [["0x100a1c81", "mov dword ptr [edi + 4], eax"], ["0x100a1c84", "mov dword ptr [edi], TglImpl::CameraImpl::`vftable' (VTABLE)"]], "recomp": [["0x1004a541", "mov dword ptr [esi + 4], eax"], ["0x1004a544", "mov dword ptr [esi], TglImpl::CameraImpl::`vftable' (VTABLE)"]]}, {"both": [["0x100a1c8a", "jmp 0x12", "0x1004a54a"], ["0x100a1c8c", "mov ecx, dword ptr [ebp - 0x10]", "0x1004a54c"], ["0x100a1c8f", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004a54f"], ["0x100a1c94", "mov ecx, dword ptr [ebp - 0x10]", "0x1004a554"], ["0x100a1c97", "jmp Tgl::Camera::~Camera (FUNCTION)", "0x1004a557"]]}, {"orig": [["0x100a1c9c", "xor esi, esi"]], "recomp": [["0x1004a55c", "xor edi, edi"]]}, {"both": [["0x100a1c9e", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004a55e"], ["0x100a1ca5", "mov eax, dword ptr [ebx + 4]", "0x1004a565"]]}, {"orig": [["0x100a1ca8", "lea ecx, [esi + 4]"]], "recomp": [["0x1004a568", "lea ecx, [edi + 4]"]]}, {"both": [["0x100a1cab", "push ecx", "0x1004a56b"], ["0x100a1cac", "push 0", "0x1004a56c"], ["0x100a1cae", "push eax", "0x1004a56e"], ["0x100a1caf", "mov ebx, dword ptr [eax]", "0x1004a56f"], ["0x100a1cb1", "call dword ptr [ebx + 0x10]", "0x1004a571"], ["0x100a1cb4", "test eax, eax", "0x1004a574"], ["0x100a1cb6", "jge 0xe", "0x1004a576"]]}, {"orig": [["0x100a1cb8", "test esi, esi"]], "recomp": [["0x1004a578", "test edi, edi"]]}, {"both": [["0x100a1cba", "je 0x8", "0x1004a57a"], ["0x100a1cbc", "push 1", "0x1004a57c"]]}, {"orig": [["0x100a1cbe", "mov eax, dword ptr [esi]"], ["0x100a1cc0", "mov ecx, esi"]], "recomp": [["0x1004a57e", "mov eax, dword ptr [edi]"], ["0x1004a580", "mov ecx, edi"]]}, {"both": [["0x100a1cc2", "call dword ptr [eax]", "0x1004a582"]]}, {"orig": [["0x100a1cc4", "xor esi, esi"], ["0x100a1cc6", "mov eax, esi"]], "recomp": [["0x1004a584", "xor edi, edi"], ["0x1004a586", "mov eax, edi"]]}, {"both": [["0x100a1cc8", "mov ecx, dword ptr [ebp - 0xc]", "0x1004a588"], ["0x100a1ccb", "mov dword ptr fs:[0], ecx", "0x1004a58b"], ["0x100a1cd2", "pop edi", "0x1004a592"], ["0x100a1cd3", "pop esi", "0x1004a593"], ["0x100a1cd4", "pop ebx", "0x1004a594"], ["0x100a1cd5", "mov esp, ebp", "0x1004a595"], ["0x100a1cd7", "pop ebp", "0x1004a597"], ["0x100a1cd8", "ret ", "0x1004a598"], ["0x100a1cd9", "mov eax, <OFFSET8>", "0x1004a599"], ["0x100a1cde", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004a59e"]]}]]]}, {"address": "0x100a1cf0", "recomp": "0x1004a700", "name": "TglImpl::RendererImpl::CreateLight", "matching": 0.6643598615916955, "diff": [["@@ -0x100a1cf0,22 +0x1004a700,22 @@", [{"both": [["0x100a1cf0", "mov eax, dword ptr fs:[0]", "0x1004a700"], ["0x100a1cf6", "push ebp", "0x1004a706"], ["0x100a1cf7", "mov ebp, esp", "0x1004a707"], ["0x100a1cf9", "push -1", "0x1004a709"], ["0x100a1cfb", "push <OFFSET1>", "0x1004a70b"], ["0x100a1d00", "push eax", "0x1004a710"], ["0x100a1d01", "mov dword ptr fs:[0], esp", "0x1004a711"], ["0x100a1d08", "sub esp, 0xc", "0x1004a718"]]}, {"orig": [], "recomp": [["0x1004a71b", "mov dword ptr [ebp - 0x18], ecx"]]}, {"both": [["0x100a1d0b", "push ebx", "0x1004a71e"], ["0x100a1d0c", "push esi", "0x1004a71f"], ["0x100a1d0d", "push edi", "0x1004a720"]]}, {"orig": [["0x100a1d0e", "mov ebx, ecx"]], "recomp": []}, {"both": [["0x100a1d10", "push 8", "0x1004a721"], ["0x100a1d12", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004a723"], ["0x100a1d17", "mov dword ptr [ebp - 0x10], eax", "0x1004a728"], ["0x100a1d1a", "add esp, 4", "0x1004a72b"], ["0x100a1d1d", "mov edi, eax", "0x1004a72e"], ["0x100a1d1f", "xor eax, eax", "0x1004a730"], ["0x100a1d21", "mov dword ptr [ebp - 4], eax", "0x1004a732"], ["0x100a1d24", "test edi, edi", "0x1004a735"], ["0x100a1d26", "je 0x34", "0x1004a737"], ["0x100a1d28", "mov byte ptr [ebp - 4], 1", "0x1004a739"]]}]], ["@@ -0x100a1d3e,101 +0x1004a74f,100 @@", [{"both": [["0x100a1d3e", "mov byte ptr [ebp - 4], al", "0x1004a74f"], ["0x100a1d41", "mov dword ptr [edi + 4], eax", "0x1004a752"], ["0x100a1d44", "mov dword ptr [edi], TglImpl::LightImpl::`vftable' (VTABLE)", "0x1004a755"], ["0x100a1d4a", "jmp 0x12", "0x1004a75b"], ["0x100a1d4c", "mov ecx, dword ptr [ebp - 0x10]", "0x1004a75d"], ["0x100a1d4f", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004a760"], ["0x100a1d54", "mov ecx, dword ptr [ebp - 0x10]", "0x1004a765"], ["0x100a1d57", "jmp Tgl::Light::~Light (FUNCTION)", "0x1004a768"], ["0x100a1d5c", "xor esi, esi", "0x1004a76d"], ["0x100a1d5e", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004a76f"]]}, {"orig": [["0x100a1d65", "mov edi, dword ptr [ebx + 4]"]], "recomp": []}, {"both": [["0x100a1d68", "mov eax, dword ptr [ebp + 8]", "0x1004a776"], ["0x100a1d6b", "cmp eax, 4", "0x1004a779"], ["0x100a1d6e", "ja 0x7", "0x1004a77c"]]}, {"orig": [["0x100a1d70", "jmp dword ptr [eax*4 + 0x100a1e7c]"], ["0x100a1d77", "mov dword ptr [ebp - 0x14], 0"], ["0x100a1d7e", "jmp 0x2b"], ["0x100a1d80", "mov dword ptr [ebp - 0x14], 0"], ["0x100a1d87", "jmp 0x22"], ["0x100a1d89", "mov dword ptr [ebp - 0x14], 1"], ["0x100a1d90", "jmp 0x19"], ["0x100a1d92", "mov dword ptr [ebp - 0x14], 2"], ["0x100a1d99", "jmp 0x10"], ["0x100a1d9b", "mov dword ptr [ebp - 0x14], 3"], ["0x100a1da2", "jmp 0x7"], ["0x100a1da4", "mov dword ptr [ebp - 0x14], 4"], ["0x100a1dab", "lea eax, [ebp - 0x10]"], ["0x100a1dae", "mov ebx, dword ptr [edi]"]], "recomp": [["0x1004a77e", "jmp dword ptr [eax*4 + 0x1004a87c]"], ["0x1004a785", "xor edi, edi"], ["0x1004a787", "jmp 0x1e"], ["0x1004a789", "xor edi, edi"], ["0x1004a78b", "jmp 0x1a"], ["0x1004a78d", "mov edi, 1"], ["0x1004a792", "jmp 0x13"], ["0x1004a794", "mov edi, 2"], ["0x1004a799", "jmp 0xc"], ["0x1004a79b", "mov edi, 3"], ["0x1004a7a0", "jmp 0x5"], ["0x1004a7a2", "mov edi, 4"], ["0x1004a7a7", "mov eax, dword ptr [ebp - 0x18]"], ["0x1004a7aa", "lea ecx, [ebp - 0x14]"], ["0x1004a7ad", "push ecx"], ["0x1004a7ae", "push 0"], ["0x1004a7b0", "mov eax, dword ptr [eax + 4]"]]}, {"both": [["0x100a1db0", "push eax", "0x1004a7b3"]]}, {"orig": [["0x100a1db1", "push 0"], ["0x100a1db3", "push edi"]], "recomp": [["0x1004a7b4", "mov ebx, dword ptr [eax]"]]}, {"both": [["0x100a1db4", "call dword ptr [ebx + 0x10]", "0x1004a7b6"], ["0x100a1db7", "mov ebx, 1", "0x1004a7b9"], ["0x100a1dbc", "test eax, eax", "0x1004a7be"], ["0x100a1dbe", "jge 0x2", "0x1004a7c0"], ["0x100a1dc0", "xor ebx, ebx", "0x1004a7c2"], ["0x100a1dc2", "cmp ebx, 1", "0x1004a7c4"]]}, {"orig": [["0x100a1dc5", "jne 0x75"], ["0x100a1dc7", "lea eax, [ebp - 0x18]"], ["0x100a1dca", "mov ecx, dword ptr [ebp + 0x14]"]], "recomp": [["0x1004a7c7", "jne 0x77"], ["0x1004a7c9", "mov eax, dword ptr [ebp - 0x18]"], ["0x1004a7cc", "lea edx, [ebp - 0x10]"], ["0x1004a7cf", "push edx"], ["0x1004a7d0", "mov ebx, dword ptr [ebp + 0x10]"], ["0x1004a7d3", "mov ecx, dword ptr [eax + 4]"], ["0x1004a7d6", "mov edx, dword ptr [ebp + 0xc]"], ["0x1004a7d9", "mov eax, dword ptr [ebp + 0x14]"]]}, {"both": [["0x100a1dcd", "push eax", "0x1004a7dc"]]}, {"orig": [["0x100a1dce", "mov edx, dword ptr [ebp + 0x10]"]], "recomp": [["0x1004a7dd", "push ebx"], ["0x1004a7de", "push edx"], ["0x1004a7df", "mov eax, dword ptr [ecx]"], ["0x1004a7e1", "push edi"], ["0x1004a7e2", "mov ebx, 1"]]}, {"both": [["0x100a1dd1", "push ecx", "0x1004a7e7"]]}, {"orig": [["0x100a1dd2", "mov eax, dword ptr [ebp + 0xc]"], ["0x100a1dd5", "push edx"], ["0x100a1dd6", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100a1dd9", "push eax"], ["0x100a1dda", "mov ebx, dword ptr [edi]"], ["0x100a1ddc", "push ecx"], ["0x100a1ddd", "push edi"], ["0x100a1dde", "call dword ptr [ebx + 0x30]"], ["0x100a1de1", "mov ebx, 1"]], "recomp": [["0x1004a7e8", "call dword ptr [eax + 0x30]"]]}, {"both": [["0x100a1de6", "test eax, eax", "0x1004a7eb"], ["0x100a1de8", "jge 0x2", "0x1004a7ed"], ["0x100a1dea", "xor ebx, ebx", "0x1004a7ef"], ["0x100a1dec", "cmp ebx, 1", "0x1004a7f1"], ["0x100a1def", "je 0xb", "0x1004a7f4"]]}, {"orig": [["0x100a1df1", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004a7f6", "mov eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a1df4", "push eax", "0x1004a7f9"], ["0x100a1df5", "mov edi, dword ptr [eax]", "0x1004a7fa"], ["0x100a1df7", "call dword ptr [edi + 8]", "0x1004a7fc"]]}, {"orig": [["0x100a1dfa", "jmp 0x40"], ["0x100a1dfc", "mov eax, dword ptr [ebp - 0x18]"], ["0x100a1dff", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004a7ff", "jmp 0x3a"], ["0x1004a801", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004a804", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a1e02", "push eax", "0x1004a807"], ["0x100a1e03", "mov ebx, 1", "0x1004a808"], ["0x100a1e08", "push ecx", "0x1004a80d"], ["0x100a1e09", "mov eax, dword ptr [ecx]", "0x1004a80e"], ["0x100a1e0b", "call dword ptr [eax + 0x30]", "0x1004a810"], ["0x100a1e0e", "test eax, eax", "0x1004a813"], ["0x100a1e10", "jge 0x2", "0x1004a815"], ["0x100a1e12", "xor ebx, ebx", "0x1004a817"]]}, {"orig": [], "recomp": [["0x1004a819", "mov eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x100a1e14", "cmp ebx, 1", "0x1004a81c"]]}, {"orig": [["0x100a1e17", "je 0x14"], ["0x100a1e19", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": []}, {"both": [["0x100a1e1c", "push eax", "0x1004a81f"], ["0x100a1e1d", "mov edi, dword ptr [eax]", "0x1004a820"]]}, {"orig": [], "recomp": [["0x1004a822", "je 0xe"]]}, {"both": [["0x100a1e1f", "call dword ptr [edi + 8]", "0x1004a824"]]}, {"orig": [["0x100a1e22", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": [["0x1004a827", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a1e25", "push ecx", "0x1004a82a"], ["0x100a1e26", "mov eax, dword ptr [ecx]", "0x1004a82b"], ["0x100a1e28", "call dword ptr [eax + 8]", "0x1004a82d"]]}, {"orig": [["0x100a1e2b", "jmp 0xf"], ["0x100a1e2d", "mov eax, dword ptr [ebp - 0x18]"], ["0x100a1e30", "push eax"], ["0x100a1e31", "mov edi, dword ptr [eax]"]], "recomp": [["0x1004a830", "jmp 0x9"]]}, {"both": [["0x100a1e33", "call dword ptr [edi + 8]", "0x1004a832"]]}, {"orig": [["0x100a1e36", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004a835", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a1e39", "mov dword ptr [esi + 4], ecx", "0x1004a838"]]}, {"orig": [["0x100a1e3c", "test ebx, ebx"], ["0x100a1e3e", "jne 0xe"]], "recomp": [["0x1004a83b", "cmp ebx, 1"], ["0x1004a83e", "je 0xe"]]}, {"both": [["0x100a1e40", "test esi, esi", "0x1004a840"], ["0x100a1e42", "je 0x8", "0x1004a842"], ["0x100a1e44", "push 1", "0x1004a844"], ["0x100a1e46", "mov eax, dword ptr [esi]", "0x1004a846"], ["0x100a1e48", "mov ecx, esi", "0x1004a848"], ["0x100a1e4a", "call dword ptr [eax]", "0x1004a84a"], ["0x100a1e4c", "xor esi, esi", "0x1004a84c"], ["0x100a1e4e", "mov eax, esi", "0x1004a84e"], ["0x100a1e50", "mov ecx, dword ptr [ebp - 0xc]", "0x1004a850"], ["0x100a1e53", "mov dword ptr fs:[0], ecx", "0x1004a853"]]}]], ["@@ -0x100a1e5f,10 +0x1004a85f,18 @@", [{"both": [["0x100a1e5f", "pop ebp", "0x1004a85f"], ["0x100a1e60", "ret 0x10", "0x1004a860"], ["0x100a1e63", "mov eax, <OFFSET8>", "0x1004a863"], ["0x100a1e68", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004a868"], ["0x100a1e6d", "mov eax, dword ptr [ebp - 0x10]", "0x1004a86d"], ["0x100a1e70", "push eax", "0x1004a870"], ["0x100a1e71", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004a871"], ["0x100a1e76", "add esp, 4", "0x1004a876"], ["0x100a1e79", "ret ", "0x1004a879"], ["0x100a1e7a", "mov edi, edi", "0x1004a87a"]]}, {"orig": [], "recomp": [["0x1004a87c", "mov dword ptr [edi - 0x5872effc], esp"], ["0x1004a882", "add al, 0x10"], ["0x1004a884", "xchg esp, eax"], ["0x1004a885", "cmpsd dword ptr [esi], dword ptr es:[edi]"], ["0x1004a886", "add al, 0x10"], ["0x1004a888", "wait "], ["0x1004a889", "cmpsd dword ptr [esi], dword ptr es:[edi]"], ["0x1004a88a", "add al, 0x10"]]}]]]}, {"address": "0x100a1e90", "recomp": "0x1004a9e0", "name": "TglImpl::RendererImpl::CreateMeshBuilder", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a1ea1,56 +0x1004a9f1,56 @@", [{"both": [["0x100a1ea1", "mov dword ptr fs:[0], esp", "0x1004a9f1"], ["0x100a1ea8", "sub esp, 4", "0x1004a9f8"], ["0x100a1eab", "push ebx", "0x1004a9fb"], ["0x100a1eac", "push esi", "0x1004a9fc"], ["0x100a1ead", "push edi", "0x1004a9fd"], ["0x100a1eae", "mov ebx, ecx", "0x1004a9fe"], ["0x100a1eb0", "push 8", "0x1004aa00"], ["0x100a1eb2", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004aa02"], ["0x100a1eb7", "mov dword ptr [ebp - 0x10], eax", "0x1004aa07"], ["0x100a1eba", "add esp, 4", "0x1004aa0a"]]}, {"orig": [["0x100a1ebd", "mov edi, eax"]], "recomp": [["0x1004aa0d", "mov esi, eax"]]}, {"both": [["0x100a1ebf", "xor eax, eax", "0x1004aa0f"], ["0x100a1ec1", "mov dword ptr [ebp - 4], eax", "0x1004aa11"]]}, {"orig": [["0x100a1ec4", "test edi, edi"]], "recomp": [["0x1004aa14", "test esi, esi"]]}, {"both": [["0x100a1ec6", "je 0x34", "0x1004aa16"], ["0x100a1ec8", "mov byte ptr [ebp - 4], 1", "0x1004aa18"]]}, {"orig": [["0x100a1ecc", "mov esi, edi"], ["0x100a1ece", "mov dword ptr [edi], Tgl::Object::`vftable' (VTABLE)"]], "recomp": [["0x1004aa1c", "mov edi, esi"], ["0x1004aa1e", "mov dword ptr [esi], Tgl::Object::`vftable' (VTABLE)"]]}, {"both": [["0x100a1ed4", "mov byte ptr [ebp - 4], 2", "0x1004aa24"]]}, {"orig": [["0x100a1ed8", "mov dword ptr [edi], Tgl::MeshBuilder::`vftable' (VTABLE)"]], "recomp": [["0x1004aa28", "mov dword ptr [esi], Tgl::MeshBuilder::`vftable' (VTABLE)"]]}, {"both": [["0x100a1ede", "mov byte ptr [ebp - 4], al", "0x1004aa2e"]]}, {"orig": [["0x100a1ee1", "mov dword ptr [edi + 4], eax"], ["0x100a1ee4", "mov dword ptr [edi], TglImpl::MeshBuilderImpl::`vftable' (VTABLE)"]], "recomp": [["0x1004aa31", "mov dword ptr [esi + 4], eax"], ["0x1004aa34", "mov dword ptr [esi], TglImpl::MeshBuilderImpl::`vftable' (VTABLE)"]]}, {"both": [["0x100a1eea", "jmp 0x12", "0x1004aa3a"], ["0x100a1eec", "mov ecx, dword ptr [ebp - 0x10]", "0x1004aa3c"], ["0x100a1eef", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004aa3f"], ["0x100a1ef4", "mov ecx, dword ptr [ebp - 0x10]", "0x1004aa44"], ["0x100a1ef7", "jmp Tgl::MeshBuilder::~MeshBuilder (FUNCTION)", "0x1004aa47"]]}, {"orig": [["0x100a1efc", "xor esi, esi"]], "recomp": [["0x1004aa4c", "xor edi, edi"]]}, {"both": [["0x100a1efe", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004aa4e"], ["0x100a1f05", "mov eax, dword ptr [ebx + 4]", "0x1004aa55"]]}, {"orig": [["0x100a1f08", "lea ecx, [esi + 4]"]], "recomp": [["0x1004aa58", "lea ecx, [edi + 4]"]]}, {"both": [["0x100a1f0b", "mov ebx, dword ptr [eax]", "0x1004aa5b"], ["0x100a1f0d", "push ecx", "0x1004aa5d"], ["0x100a1f0e", "push eax", "0x1004aa5e"], ["0x100a1f0f", "call dword ptr [ebx + 0x14]", "0x1004aa5f"], ["0x100a1f12", "test eax, eax", "0x1004aa62"], ["0x100a1f14", "jge 0xe", "0x1004aa64"]]}, {"orig": [["0x100a1f16", "test esi, esi"]], "recomp": [["0x1004aa66", "test edi, edi"]]}, {"both": [["0x100a1f18", "je 0x8", "0x1004aa68"], ["0x100a1f1a", "push 1", "0x1004aa6a"]]}, {"orig": [["0x100a1f1c", "mov eax, dword ptr [esi]"], ["0x100a1f1e", "mov ecx, esi"]], "recomp": [["0x1004aa6c", "mov eax, dword ptr [edi]"], ["0x1004aa6e", "mov ecx, edi"]]}, {"both": [["0x100a1f20", "call dword ptr [eax]", "0x1004aa70"]]}, {"orig": [["0x100a1f22", "xor esi, esi"], ["0x100a1f24", "mov eax, esi"]], "recomp": [["0x1004aa72", "xor edi, edi"], ["0x1004aa74", "mov eax, edi"]]}, {"both": [["0x100a1f26", "mov ecx, dword ptr [ebp - 0xc]", "0x1004aa76"], ["0x100a1f29", "mov dword ptr fs:[0], ecx", "0x1004aa79"], ["0x100a1f30", "pop edi", "0x1004aa80"], ["0x100a1f31", "pop esi", "0x1004aa81"], ["0x100a1f32", "pop ebx", "0x1004aa82"], ["0x100a1f33", "mov esp, ebp", "0x1004aa83"], ["0x100a1f35", "pop ebp", "0x1004aa85"], ["0x100a1f36", "ret ", "0x1004aa86"], ["0x100a1f37", "mov eax, <OFFSET8>", "0x1004aa87"], ["0x100a1f3c", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004aa8c"]]}]]]}, {"address": "0x100a1f50", "recomp": "0x1004abf0", "name": "TglImpl::RendererImpl::CreateTexture", "matching": 0.7940074906367042, "diff": [["@@ -0x100a1f50,134 +0x1004abf0,133 @@", [{"both": [["0x100a1f50", "mov eax, dword ptr fs:[0]", "0x1004abf0"], ["0x100a1f56", "push ebp", "0x1004abf6"], ["0x100a1f57", "mov ebp, esp", "0x1004abf7"], ["0x100a1f59", "push -1", "0x1004abf9"], ["0x100a1f5b", "push <OFFSET1>", "0x1004abfb"], ["0x100a1f60", "push eax", "0x1004ac00"], ["0x100a1f61", "mov dword ptr fs:[0], esp", "0x1004ac01"]]}, {"orig": [["0x100a1f68", "sub esp, 8"]], "recomp": [["0x1004ac08", "sub esp, 0xc"]]}, {"both": [["0x100a1f6b", "push ebx", "0x1004ac0b"], ["0x100a1f6c", "push esi", "0x1004ac0c"], ["0x100a1f6d", "push edi", "0x1004ac0d"], ["0x100a1f6e", "mov ebx, ecx", "0x1004ac0e"], ["0x100a1f70", "push 8", "0x1004ac10"], ["0x100a1f72", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004ac12"]]}, {"orig": [["0x100a1f77", "mov dword ptr [ebp - 0x10], eax"]], "recomp": [["0x1004ac17", "mov dword ptr [ebp - 0x14], eax"]]}, {"both": [["0x100a1f7a", "add esp, 4", "0x1004ac1a"], ["0x100a1f7d", "mov esi, eax", "0x1004ac1d"], ["0x100a1f7f", "xor eax, eax", "0x1004ac1f"], ["0x100a1f81", "mov dword ptr [ebp - 4], eax", "0x1004ac21"], ["0x100a1f84", "test esi, esi", "0x1004ac24"], ["0x100a1f86", "je 0x34", "0x1004ac26"], ["0x100a1f88", "mov byte ptr [ebp - 4], 1", "0x1004ac28"], ["0x100a1f8c", "mov edi, esi", "0x1004ac2c"], ["0x100a1f8e", "mov dword ptr [esi], Tgl::Object::`vftable' (VTABLE)", "0x1004ac2e"], ["0x100a1f94", "mov byte ptr [ebp - 4], 2", "0x1004ac34"], ["0x100a1f98", "mov dword ptr [esi], Tgl::Texture::`vftable' (VTABLE)", "0x1004ac38"], ["0x100a1f9e", "mov byte ptr [ebp - 4], al", "0x1004ac3e"], ["0x100a1fa1", "mov dword ptr [esi + 4], eax", "0x1004ac41"], ["0x100a1fa4", "mov dword ptr [esi], TglImpl::TextureImpl::`vftable' (VTABLE)", "0x1004ac44"], ["0x100a1faa", "jmp 0x12", "0x1004ac4a"]]}, {"orig": [["0x100a1fac", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004ac4c", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a1faf", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004ac4f"]]}, {"orig": [["0x100a1fb4", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004ac54", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a1fb7", "jmp Tgl::Texture::~Texture (FUNCTION)", "0x1004ac57"], ["0x100a1fbc", "xor edi, edi", "0x1004ac5c"], ["0x100a1fbe", "lea eax, [edi + 4]", "0x1004ac5e"], ["0x100a1fc1", "push 0x40", "0x1004ac61"], ["0x100a1fc3", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004ac63"]]}, {"orig": [["0x100a1fca", "mov esi, dword ptr [ebx + 4]"]], "recomp": [["0x1004ac6a", "mov ebx, dword ptr [ebx + 4]"]]}, {"both": [["0x100a1fcd", "mov dword ptr [ebp - 0x10], eax", "0x1004ac6d"]]}, {"orig": [["0x100a1fd0", "mov ebx, 0"]], "recomp": [["0x1004ac70", "mov esi, 0"]]}, {"both": [["0x100a1fd5", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004ac75"], ["0x100a1fda", "add esp, 4", "0x1004ac7a"]]}, {"orig": [["0x100a1fdd", "mov dword ptr [ebp - 0x14], eax"]], "recomp": [["0x1004ac7d", "mov dword ptr [ebp - 0x18], eax"]]}, {"both": [["0x100a1fe0", "mov dword ptr [ebp - 4], 3", "0x1004ac80"], ["0x100a1fe7", "test eax, eax", "0x1004ac87"], ["0x100a1fe9", "je 0x26", "0x1004ac89"], ["0x100a1feb", "mov eax, dword ptr [ebp + 0x20]", "0x1004ac8b"], ["0x100a1fee", "mov ecx, dword ptr [ebp + 0x1c]", "0x1004ac8e"], ["0x100a1ff1", "push eax", "0x1004ac91"], ["0x100a1ff2", "mov edx, dword ptr [ebp + 0x18]", "0x1004ac92"], ["0x100a1ff5", "push ecx", "0x1004ac95"], ["0x100a1ff6", "mov eax, dword ptr [ebp + 0x14]", "0x1004ac96"], ["0x100a1ff9", "push edx", "0x1004ac99"], ["0x100a1ffa", "mov ecx, dword ptr [ebp + 0x10]", "0x1004ac9a"], ["0x100a1ffd", "push eax", "0x1004ac9d"], ["0x100a1ffe", "mov edx, dword ptr [ebp + 0xc]", "0x1004ac9e"], ["0x100a2001", "push ecx", "0x1004aca1"], ["0x100a2002", "mov eax, dword ptr [ebp + 8]", "0x1004aca2"], ["0x100a2005", "push edx", "0x1004aca5"]]}, {"orig": [["0x100a2006", "mov ecx, dword ptr [ebp - 0x14]"]], "recomp": [["0x1004aca6", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100a2009", "push eax", "0x1004aca9"], ["0x100a200a", "call TglImpl::TglD3DRMIMAGE::TglD3DRMIMAGE (FUNCTION)", "0x1004acaa"]]}, {"orig": [["0x100a200f", "mov ebx, eax"]], "recomp": [["0x1004acaf", "mov esi, eax"]]}, {"both": [["0x100a2011", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004acb1"], ["0x100a2018", "mov eax, dword ptr [ebp - 0x10]", "0x1004acb8"], ["0x100a201b", "push eax", "0x1004acbb"]]}, {"orig": [], "recomp": [["0x1004acbc", "push esi"]]}, {"both": [["0x100a201c", "push ebx", "0x1004acbd"]]}, {"orig": [["0x100a201d", "push esi"], ["0x100a201e", "mov esi, dword ptr [esi]"], ["0x100a2020", "call dword ptr [esi + 0x28]"], ["0x100a2023", "mov esi, 1"]], "recomp": [["0x1004acbe", "mov ebx, dword ptr [ebx]"], ["0x1004acc0", "call dword ptr [ebx + 0x28]"], ["0x1004acc3", "mov ebx, 1"]]}, {"both": [["0x100a2028", "test eax, eax", "0x1004acc8"], ["0x100a202a", "jge 0x2", "0x1004acca"]]}, {"orig": [["0x100a202c", "xor esi, esi"], ["0x100a202e", "cmp esi, 1"]], "recomp": [["0x1004accc", "xor ebx, ebx"], ["0x1004acce", "cmp ebx, 1"]]}, {"both": [["0x100a2031", "jne 0x30", "0x1004acd1"]]}, {"orig": [["0x100a2033", "push ebx"]], "recomp": [["0x1004acd3", "push esi"]]}, {"both": [["0x100a2034", "mov eax, dword ptr [ebp - 0x10]", "0x1004acd4"], ["0x100a2037", "mov ecx, dword ptr [eax]", "0x1004acd7"], ["0x100a2039", "push ecx", "0x1004acd9"], ["0x100a203a", "call TglImpl::TextureImpl::SetImage (FUNCTION)", "0x1004acda"], ["0x100a203f", "add esp, 8", "0x1004acdf"]]}, {"orig": [["0x100a2042", "mov esi, eax"], ["0x100a2044", "cmp esi, 1"], ["0x100a2047", "je 0x2e"]], "recomp": [["0x1004ace2", "mov ebx, eax"], ["0x1004ace4", "cmp ebx, 1"], ["0x1004ace7", "je 0x41"]]}, {"both": [["0x100a2049", "mov eax, dword ptr [ebp - 0x10]", "0x1004ace9"], ["0x100a204c", "mov eax, dword ptr [eax]", "0x1004acec"], ["0x100a204e", "push eax", "0x1004acee"], ["0x100a204f", "mov eax, dword ptr [eax]", "0x1004acef"], ["0x100a2051", "call dword ptr [eax + 8]", "0x1004acf1"], ["0x100a2054", "mov ecx, dword ptr [ebp - 0x10]", "0x1004acf4"]]}, {"orig": [["0x100a2057", "test ebx, ebx"]], "recomp": [["0x1004acf7", "test esi, esi"]]}, {"both": [["0x100a2059", "mov dword ptr [ecx], 0", "0x1004acf9"], ["0x100a205f", "je 0x16", "0x1004acff"], ["0x100a2061", "jmp 0x4", "0x1004ad01"]]}, {"orig": [["0x100a2063", "test ebx, ebx"]], "recomp": [["0x1004ad03", "test esi, esi"]]}, {"both": [["0x100a2065", "je 0x10", "0x1004ad05"]]}, {"orig": [["0x100a2067", "mov ecx, ebx"]], "recomp": [["0x1004ad07", "mov ecx, esi"]]}, {"both": [["0x100a2069", "call TglImpl::TglD3DRMIMAGE::Destroy (FUNCTION)", "0x1004ad09"]]}, {"orig": [["0x100a206e", "push ebx"]], "recomp": [["0x1004ad0e", "push esi"]]}, {"both": [["0x100a206f", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004ad0f"], ["0x100a2074", "add esp, 4", "0x1004ad14"]]}, {"orig": [["0x100a2077", "test esi, esi"], ["0x100a2079", "jne 0xe"]], "recomp": [["0x1004ad17", "cmp ebx, 1"], ["0x1004ad1a", "je 0xe"]]}, {"both": [["0x100a207b", "test edi, edi", "0x1004ad1c"], ["0x100a207d", "je 0x8", "0x1004ad1e"], ["0x100a207f", "push 1", "0x1004ad20"], ["0x100a2081", "mov eax, dword ptr [edi]", "0x1004ad22"], ["0x100a2083", "mov ecx, edi", "0x1004ad24"], ["0x100a2085", "call dword ptr [eax]", "0x1004ad26"], ["0x100a2087", "xor edi, edi", "0x1004ad28"], ["0x100a2089", "mov eax, edi", "0x1004ad2a"], ["0x100a208b", "mov ecx, dword ptr [ebp - 0xc]", "0x1004ad2c"], ["0x100a208e", "mov dword ptr fs:[0], ecx", "0x1004ad2f"], ["0x100a2095", "pop edi", "0x1004ad36"], ["0x100a2096", "pop esi", "0x1004ad37"], ["0x100a2097", "pop ebx", "0x1004ad38"], ["0x100a2098", "mov esp, ebp", "0x1004ad39"], ["0x100a209a", "pop ebp", "0x1004ad3b"], ["0x100a209b", "ret 0x1c", "0x1004ad3c"]]}, {"orig": [["0x100a209e", "mov eax, dword ptr [ebp - 0x14]"]], "recomp": [["0x1004ad3f", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100a20a1", "push eax", "0x1004ad42"], ["0x100a20a2", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004ad43"], ["0x100a20a7", "add esp, 4", "0x1004ad48"], ["0x100a20aa", "ret ", "0x1004ad4b"], ["0x100a20ab", "mov eax, <OFFSET12>", "0x1004ad4c"], ["0x100a20b0", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004ad51"]]}, {"orig": [["0x100a20b5", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004ad56", "mov eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a20b8", "push eax", "0x1004ad59"], ["0x100a20b9", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004ad5a"], ["0x100a20be", "add esp, 4", "0x1004ad5f"], ["0x100a20c1", "ret ", "0x1004ad62"]]}, {"orig": [["0x100a20c2", "int3 "]], "recomp": []}]]]}, {"address": "0x100a20d0", "recomp": "0x1004aec0", "name": "TglImpl::RendererImpl::CreateTexture", "matching": 0.6719367588932806, "diff": [["@@ -0x100a20d0,127 +0x1004aec0,126 @@", [{"both": [["0x100a20d0", "mov eax, dword ptr fs:[0]", "0x1004aec0"], ["0x100a20d6", "push ebp", "0x1004aec6"], ["0x100a20d7", "mov ebp, esp", "0x1004aec7"], ["0x100a20d9", "push -1", "0x1004aec9"], ["0x100a20db", "push <OFFSET1>", "0x1004aecb"], ["0x100a20e0", "push eax", "0x1004aed0"], ["0x100a20e1", "mov dword ptr fs:[0], esp", "0x1004aed1"]]}, {"orig": [["0x100a20e8", "sub esp, 8"]], "recomp": [["0x1004aed8", "sub esp, 0xc"]]}, {"both": [["0x100a20eb", "push ebx", "0x1004aedb"], ["0x100a20ec", "push esi", "0x1004aedc"], ["0x100a20ed", "push edi", "0x1004aedd"]]}, {"orig": [["0x100a20ee", "mov ebx, ecx"]], "recomp": [["0x1004aede", "mov esi, ecx"]]}, {"both": [["0x100a20f0", "push 8", "0x1004aee0"], ["0x100a20f2", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004aee2"]]}, {"orig": [["0x100a20f7", "mov dword ptr [ebp - 0x10], eax"]], "recomp": [["0x1004aee7", "mov dword ptr [ebp - 0x14], eax"]]}, {"both": [["0x100a20fa", "add esp, 4", "0x1004aeea"]]}, {"orig": [["0x100a20fd", "mov edi, eax"]], "recomp": [["0x1004aeed", "mov ebx, eax"]]}, {"both": [["0x100a20ff", "xor eax, eax", "0x1004aeef"], ["0x100a2101", "mov dword ptr [ebp - 4], eax", "0x1004aef1"]]}, {"orig": [["0x100a2104", "test edi, edi"]], "recomp": [["0x1004aef4", "test ebx, ebx"]]}, {"both": [["0x100a2106", "je 0x34", "0x1004aef6"], ["0x100a2108", "mov byte ptr [ebp - 4], 1", "0x1004aef8"]]}, {"orig": [["0x100a210c", "mov esi, edi"], ["0x100a210e", "mov dword ptr [edi], Tgl::Object::`vftable' (VTABLE)"]], "recomp": [["0x1004aefc", "mov edi, ebx"], ["0x1004aefe", "mov dword ptr [ebx], Tgl::Object::`vftable' (VTABLE)"]]}, {"both": [["0x100a2114", "mov byte ptr [ebp - 4], 2", "0x1004af04"]]}, {"orig": [["0x100a2118", "mov dword ptr [edi], Tgl::Texture::`vftable' (VTABLE)"]], "recomp": [["0x1004af08", "mov dword ptr [ebx], Tgl::Texture::`vftable' (VTABLE)"]]}, {"both": [["0x100a211e", "mov byte ptr [ebp - 4], al", "0x1004af0e"]]}, {"orig": [["0x100a2121", "mov dword ptr [edi + 4], eax"], ["0x100a2124", "mov dword ptr [edi], TglImpl::TextureImpl::`vftable' (VTABLE)"]], "recomp": [["0x1004af11", "mov dword ptr [ebx + 4], eax"], ["0x1004af14", "mov dword ptr [ebx], TglImpl::TextureImpl::`vftable' (VTABLE)"]]}, {"both": [["0x100a212a", "jmp 0x12", "0x1004af1a"]]}, {"orig": [["0x100a212c", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004af1c", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a212f", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004af1f"]]}, {"orig": [["0x100a2134", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004af24", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a2137", "jmp Tgl::Texture::~Texture (FUNCTION)", "0x1004af27"]]}, {"orig": [["0x100a213c", "xor esi, esi"], ["0x100a213e", "lea eax, [esi + 4]"]], "recomp": [["0x1004af2c", "xor edi, edi"], ["0x1004af2e", "lea eax, [edi + 4]"]]}, {"both": [["0x100a2141", "push 0x40", "0x1004af31"], ["0x100a2143", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004af33"]]}, {"orig": [["0x100a214a", "mov ebx, dword ptr [ebx + 4]"]], "recomp": [["0x1004af3a", "mov esi, dword ptr [esi + 4]"]]}, {"both": [["0x100a214d", "mov dword ptr [ebp - 0x10], eax", "0x1004af3d"]]}, {"orig": [["0x100a2150", "mov edi, 0"]], "recomp": [["0x1004af40", "mov ebx, 0"]]}, {"both": [["0x100a2155", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004af45"], ["0x100a215a", "add esp, 4", "0x1004af4a"]]}, {"orig": [["0x100a215d", "mov dword ptr [ebp - 0x14], eax"]], "recomp": [["0x1004af4d", "mov dword ptr [ebp - 0x18], eax"]]}, {"both": [["0x100a2160", "mov dword ptr [ebp - 4], 3", "0x1004af50"], ["0x100a2167", "test eax, eax", "0x1004af57"], ["0x100a2169", "je 0x17", "0x1004af59"], ["0x100a216b", "push 0", "0x1004af5b"], ["0x100a216d", "push 0", "0x1004af5d"], ["0x100a216f", "push 0", "0x1004af5f"], ["0x100a2171", "mov ecx, eax", "0x1004af61"], ["0x100a2173", "push 0", "0x1004af63"], ["0x100a2175", "push 0", "0x1004af65"], ["0x100a2177", "push 0", "0x1004af67"], ["0x100a2179", "push 0", "0x1004af69"], ["0x100a217b", "call TglImpl::TglD3DRMIMAGE::TglD3DRMIMAGE (FUNCTION)", "0x1004af6b"]]}, {"orig": [["0x100a2180", "mov edi, eax"]], "recomp": [["0x1004af70", "mov ebx, eax"]]}, {"both": [["0x100a2182", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004af72"], ["0x100a2189", "mov eax, dword ptr [ebp - 0x10]", "0x1004af79"], ["0x100a218c", "push eax", "0x1004af7c"]]}, {"orig": [["0x100a218d", "push edi"]], "recomp": []}, {"both": [["0x100a218e", "push ebx", "0x1004af7d"]]}, {"orig": [["0x100a218f", "mov ebx, dword ptr [ebx]"], ["0x100a2191", "call dword ptr [ebx + 0x28]"], ["0x100a2194", "mov ebx, 1"]], "recomp": [["0x1004af7e", "push esi"], ["0x1004af7f", "mov esi, dword ptr [esi]"], ["0x1004af81", "call dword ptr [esi + 0x28]"], ["0x1004af84", "mov esi, 1"]]}, {"both": [["0x100a2199", "test eax, eax", "0x1004af89"], ["0x100a219b", "jge 0x2", "0x1004af8b"]]}, {"orig": [["0x100a219d", "xor ebx, ebx"], ["0x100a219f", "cmp ebx, 1"]], "recomp": [["0x1004af8d", "xor esi, esi"], ["0x1004af8f", "cmp esi, 1"]]}, {"both": [["0x100a21a2", "jne 0x30", "0x1004af92"]]}, {"orig": [["0x100a21a4", "push edi"]], "recomp": [["0x1004af94", "push ebx"]]}, {"both": [["0x100a21a5", "mov eax, dword ptr [ebp - 0x10]", "0x1004af95"], ["0x100a21a8", "mov ecx, dword ptr [eax]", "0x1004af98"], ["0x100a21aa", "push ecx", "0x1004af9a"], ["0x100a21ab", "call TglImpl::TextureImpl::SetImage (FUNCTION)", "0x1004af9b"], ["0x100a21b0", "add esp, 8", "0x1004afa0"]]}, {"orig": [["0x100a21b3", "mov ebx, eax"], ["0x100a21b5", "cmp ebx, 1"], ["0x100a21b8", "je 0x2e"]], "recomp": [["0x1004afa3", "mov esi, eax"], ["0x1004afa5", "cmp esi, 1"], ["0x1004afa8", "je 0x41"]]}, {"both": [["0x100a21ba", "mov eax, dword ptr [ebp - 0x10]", "0x1004afaa"], ["0x100a21bd", "mov eax, dword ptr [eax]", "0x1004afad"], ["0x100a21bf", "push eax", "0x1004afaf"], ["0x100a21c0", "mov eax, dword ptr [eax]", "0x1004afb0"], ["0x100a21c2", "call dword ptr [eax + 8]", "0x1004afb2"], ["0x100a21c5", "mov ecx, dword ptr [ebp - 0x10]", "0x1004afb5"]]}, {"orig": [["0x100a21c8", "test edi, edi"]], "recomp": [["0x1004afb8", "test ebx, ebx"]]}, {"both": [["0x100a21ca", "mov dword ptr [ecx], 0", "0x1004afba"], ["0x100a21d0", "je 0x16", "0x1004afc0"], ["0x100a21d2", "jmp 0x4", "0x1004afc2"]]}, {"orig": [["0x100a21d4", "test edi, edi"]], "recomp": [["0x1004afc4", "test ebx, ebx"]]}, {"both": [["0x100a21d6", "je 0x10", "0x1004afc6"]]}, {"orig": [["0x100a21d8", "mov ecx, edi"]], "recomp": [["0x1004afc8", "mov ecx, ebx"]]}, {"both": [["0x100a21da", "call TglImpl::TglD3DRMIMAGE::Destroy (FUNCTION)", "0x1004afca"]]}, {"orig": [["0x100a21df", "push edi"]], "recomp": [["0x1004afcf", "push ebx"]]}, {"both": [["0x100a21e0", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004afd0"], ["0x100a21e5", "add esp, 4", "0x1004afd5"]]}, {"orig": [["0x100a21e8", "test ebx, ebx"], ["0x100a21ea", "jne 0xe"], ["0x100a21ec", "test esi, esi"]], "recomp": [["0x1004afd8", "cmp esi, 1"], ["0x1004afdb", "je 0xe"], ["0x1004afdd", "test edi, edi"]]}, {"both": [["0x100a21ee", "je 0x8", "0x1004afdf"], ["0x100a21f0", "push 1", "0x1004afe1"]]}, {"orig": [["0x100a21f2", "mov eax, dword ptr [esi]"], ["0x100a21f4", "mov ecx, esi"]], "recomp": [["0x1004afe3", "mov eax, dword ptr [edi]"], ["0x1004afe5", "mov ecx, edi"]]}, {"both": [["0x100a21f6", "call dword ptr [eax]", "0x1004afe7"]]}, {"orig": [["0x100a21f8", "xor esi, esi"], ["0x100a21fa", "mov eax, esi"]], "recomp": [["0x1004afe9", "xor edi, edi"], ["0x1004afeb", "mov eax, edi"]]}, {"both": [["0x100a21fc", "mov ecx, dword ptr [ebp - 0xc]", "0x1004afed"], ["0x100a21ff", "mov dword ptr fs:[0], ecx", "0x1004aff0"], ["0x100a2206", "pop edi", "0x1004aff7"], ["0x100a2207", "pop esi", "0x1004aff8"], ["0x100a2208", "pop ebx", "0x1004aff9"], ["0x100a2209", "mov esp, ebp", "0x1004affa"], ["0x100a220b", "pop ebp", "0x1004affc"], ["0x100a220c", "ret ", "0x1004affd"]]}, {"orig": [["0x100a220d", "mov eax, dword ptr [ebp - 0x14]"]], "recomp": [["0x1004affe", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100a2210", "push eax", "0x1004b001"], ["0x100a2211", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004b002"], ["0x100a2216", "add esp, 4", "0x1004b007"], ["0x100a2219", "ret ", "0x1004b00a"], ["0x100a221a", "mov eax, <OFFSET12>", "0x1004b00b"], ["0x100a221f", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004b010"]]}, {"orig": [["0x100a2224", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004b015", "mov eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a2227", "push eax", "0x1004b018"], ["0x100a2228", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004b019"], ["0x100a222d", "add esp, 4", "0x1004b01e"], ["0x100a2230", "ret ", "0x1004b021"]]}, {"orig": [["0x100a2231", "int3 "]], "recomp": []}]]]}, {"address": "0x100a2240", "recomp": "0x10049b60", "name": "Tgl::Object::~Object", "matching": 1.0, "diff": []}, {"address": "0x100a2250", "recomp": "0x10049b70", "name": "Tgl::Object::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a2270", "recomp": "0x1004b030", "name": "TglImpl::RendererImpl::SetTextureDefaultShadeCount", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a2270,11 +0x1004b030,11 @@", [{"orig": [["0x100a2270", "mov eax, dword ptr [ecx + 4]"], ["0x100a2273", "mov ecx, dword ptr [esp + 4]"]], "recomp": [["0x1004b030", "mov ecx, dword ptr [ecx + 4]"], ["0x1004b033", "mov eax, dword ptr [esp + 4]"], ["0x1004b037", "push eax"]]}, {"both": [["0x100a2277", "push ecx", "0x1004b038"]]}, {"orig": [["0x100a2278", "push eax"], ["0x100a2279", "mov eax, dword ptr [eax]"]], "recomp": [["0x1004b039", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x100a227b", "call dword ptr [eax + 0x74]", "0x1004b03b"], ["0x100a227e", "test eax, eax", "0x1004b03e"], ["0x100a2280", "mov eax, 1", "0x1004b040"], ["0x100a2285", "jge 0x2", "0x1004b045"], ["0x100a2287", "xor eax, eax", "0x1004b047"], ["0x100a2289", "ret 4", "0x1004b049"]]}]]]}, {"address": "0x100a2290", "recomp": "0x1004b050", "name": "TglImpl::RendererImpl::SetTextureDefaultColorCount", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a2290,11 +0x1004b050,11 @@", [{"orig": [["0x100a2290", "mov eax, dword ptr [ecx + 4]"], ["0x100a2293", "mov ecx, dword ptr [esp + 4]"]], "recomp": [["0x1004b050", "mov ecx, dword ptr [ecx + 4]"], ["0x1004b053", "mov eax, dword ptr [esp + 4]"], ["0x1004b057", "push eax"]]}, {"both": [["0x100a2297", "push ecx", "0x1004b058"]]}, {"orig": [["0x100a2298", "push eax"], ["0x100a2299", "mov eax, dword ptr [eax]"]], "recomp": [["0x1004b059", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x100a229b", "call dword ptr [eax + 0x70]", "0x1004b05b"], ["0x100a229e", "test eax, eax", "0x1004b05e"], ["0x100a22a0", "mov eax, 1", "0x1004b060"], ["0x100a22a5", "jge 0x2", "0x1004b065"], ["0x100a22a7", "xor eax, eax", "0x1004b067"], ["0x100a22a9", "ret 4", "0x1004b069"]]}]]]}, {"address": "0x100a22b0", "recomp": "0x1004b070", "name": "TglImpl::RendererImpl::ImplementationDataPtr", "matching": 1.0, "diff": []}, {"address": "0x100a22c0", "recomp": "0x10049dc0", "name": "TglImpl::DeviceImpl::`scalar deleting destructor'", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a22d7,22 +0x10049dd7,22 @@", [{"both": [["0x100a22d7", "mov dword ptr fs:[0], esp", "0x10049dd7"], ["0x100a22de", "sub esp, 4", "0x10049dde"], ["0x100a22e1", "mov dword ptr [ebp - 4], 0", "0x10049de1"], ["0x100a22e8", "mov eax, dword ptr [ecx + 4]", "0x10049de8"], ["0x100a22eb", "mov dword ptr [ebp - 0x10], ecx", "0x10049deb"], ["0x100a22ee", "test eax, eax", "0x10049dee"], ["0x100a22f0", "je 0x10", "0x10049df0"], ["0x100a22f2", "push eax", "0x10049df2"], ["0x100a22f3", "mov eax, dword ptr [eax]", "0x10049df3"], ["0x100a22f5", "call dword ptr [eax + 8]", "0x10049df5"]]}, {"orig": [["0x100a22f8", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a22fb", "mov dword ptr [ecx + 4], 0"]], "recomp": [["0x10049df8", "mov eax, dword ptr [ebp - 0x10]"], ["0x10049dfb", "mov dword ptr [eax + 4], 0"]]}, {"both": [["0x100a2302", "mov dword ptr [ebp - 4], 0xffffffff", "0x10049e02"], ["0x100a2309", "call <OFFSET3>", "0x10049e09"], ["0x100a230e", "test byte ptr [ebp + 8], 1", "0x10049e0e"], ["0x100a2312", "je 0xc", "0x10049e12"], ["0x100a2314", "mov eax, dword ptr [ebp - 0x10]", "0x10049e14"], ["0x100a2317", "push eax", "0x10049e17"], ["0x100a2318", "call ??3@YAXPAX@Z (FUNCTION)", "0x10049e18"], ["0x100a231d", "add esp, 4", "0x10049e1d"], ["0x100a2320", "mov eax, dword ptr [ebp - 0x10]", "0x10049e20"], ["0x100a2323", "mov ecx, dword ptr [ebp - 0xc]", "0x10049e23"]]}]]]}, {"address": "0x100a2350", "recomp": "0x10049e50", "name": "Tgl::Device::~Device", "matching": 1.0, "diff": []}, {"address": "0x100a23a0", "recomp": "0x1004a140", "name": "TglImpl::ViewImpl::`scalar deleting destructor'", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a23b7,22 +0x1004a157,22 @@", [{"both": [["0x100a23b7", "mov dword ptr fs:[0], esp", "0x1004a157"], ["0x100a23be", "sub esp, 4", "0x1004a15e"], ["0x100a23c1", "mov dword ptr [ebp - 4], 0", "0x1004a161"], ["0x100a23c8", "mov eax, dword ptr [ecx + 4]", "0x1004a168"], ["0x100a23cb", "mov dword ptr [ebp - 0x10], ecx", "0x1004a16b"], ["0x100a23ce", "test eax, eax", "0x1004a16e"], ["0x100a23d0", "je 0x10", "0x1004a170"], ["0x100a23d2", "push eax", "0x1004a172"], ["0x100a23d3", "mov eax, dword ptr [eax]", "0x1004a173"], ["0x100a23d5", "call dword ptr [eax + 8]", "0x1004a175"]]}, {"orig": [["0x100a23d8", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a23db", "mov dword ptr [ecx + 4], 0"]], "recomp": [["0x1004a178", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004a17b", "mov dword ptr [eax + 4], 0"]]}, {"both": [["0x100a23e2", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004a182"], ["0x100a23e9", "call <OFFSET3>", "0x1004a189"], ["0x100a23ee", "test byte ptr [ebp + 8], 1", "0x1004a18e"], ["0x100a23f2", "je 0xc", "0x1004a192"], ["0x100a23f4", "mov eax, dword ptr [ebp - 0x10]", "0x1004a194"], ["0x100a23f7", "push eax", "0x1004a197"], ["0x100a23f8", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004a198"], ["0x100a23fd", "add esp, 4", "0x1004a19d"], ["0x100a2400", "mov eax, dword ptr [ebp - 0x10]", "0x1004a1a0"], ["0x100a2403", "mov ecx, dword ptr [ebp - 0xc]", "0x1004a1a3"]]}]]]}, {"address": "0x100a2430", "recomp": "0x1004a1d0", "name": "Tgl::View::~View", "matching": 1.0, "diff": []}, {"address": "0x100a2480", "recomp": "0x1004a3a0", "name": "TglImpl::GroupImpl::`scalar deleting destructor'", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a2497,22 +0x1004a3b7,22 @@", [{"both": [["0x100a2497", "mov dword ptr fs:[0], esp", "0x1004a3b7"], ["0x100a249e", "sub esp, 4", "0x1004a3be"], ["0x100a24a1", "mov dword ptr [ebp - 4], 0", "0x1004a3c1"], ["0x100a24a8", "mov eax, dword ptr [ecx + 4]", "0x1004a3c8"], ["0x100a24ab", "mov dword ptr [ebp - 0x10], ecx", "0x1004a3cb"], ["0x100a24ae", "test eax, eax", "0x1004a3ce"], ["0x100a24b0", "je 0x10", "0x1004a3d0"], ["0x100a24b2", "push eax", "0x1004a3d2"], ["0x100a24b3", "mov eax, dword ptr [eax]", "0x1004a3d3"], ["0x100a24b5", "call dword ptr [eax + 8]", "0x1004a3d5"]]}, {"orig": [["0x100a24b8", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a24bb", "mov dword ptr [ecx + 4], 0"]], "recomp": [["0x1004a3d8", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004a3db", "mov dword ptr [eax + 4], 0"]]}, {"both": [["0x100a24c2", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004a3e2"], ["0x100a24c9", "call <OFFSET3>", "0x1004a3e9"], ["0x100a24ce", "test byte ptr [ebp + 8], 1", "0x1004a3ee"], ["0x100a24d2", "je 0xc", "0x1004a3f2"], ["0x100a24d4", "mov eax, dword ptr [ebp - 0x10]", "0x1004a3f4"], ["0x100a24d7", "push eax", "0x1004a3f7"], ["0x100a24d8", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004a3f8"], ["0x100a24dd", "add esp, 4", "0x1004a3fd"], ["0x100a24e0", "mov eax, dword ptr [ebp - 0x10]", "0x1004a400"], ["0x100a24e3", "mov ecx, dword ptr [ebp - 0xc]", "0x1004a403"]]}]]]}, {"address": "0x100a2510", "recomp": "0x1004a430", "name": "Tgl::Group::~Group", "matching": 1.0, "diff": []}, {"address": "0x100a2560", "recomp": "0x1004a5b0", "name": "TglImpl::CameraImpl::`scalar deleting destructor'", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a2577,22 +0x1004a5c7,22 @@", [{"both": [["0x100a2577", "mov dword ptr fs:[0], esp", "0x1004a5c7"], ["0x100a257e", "sub esp, 4", "0x1004a5ce"], ["0x100a2581", "mov dword ptr [ebp - 4], 0", "0x1004a5d1"], ["0x100a2588", "mov eax, dword ptr [ecx + 4]", "0x1004a5d8"], ["0x100a258b", "mov dword ptr [ebp - 0x10], ecx", "0x1004a5db"], ["0x100a258e", "test eax, eax", "0x1004a5de"], ["0x100a2590", "je 0x10", "0x1004a5e0"], ["0x100a2592", "push eax", "0x1004a5e2"], ["0x100a2593", "mov eax, dword ptr [eax]", "0x1004a5e3"], ["0x100a2595", "call dword ptr [eax + 8]", "0x1004a5e5"]]}, {"orig": [["0x100a2598", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a259b", "mov dword ptr [ecx + 4], 0"]], "recomp": [["0x1004a5e8", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004a5eb", "mov dword ptr [eax + 4], 0"]]}, {"both": [["0x100a25a2", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004a5f2"], ["0x100a25a9", "call <OFFSET3>", "0x1004a5f9"], ["0x100a25ae", "test byte ptr [ebp + 8], 1", "0x1004a5fe"], ["0x100a25b2", "je 0xc", "0x1004a602"], ["0x100a25b4", "mov eax, dword ptr [ebp - 0x10]", "0x1004a604"], ["0x100a25b7", "push eax", "0x1004a607"], ["0x100a25b8", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004a608"], ["0x100a25bd", "add esp, 4", "0x1004a60d"], ["0x100a25c0", "mov eax, dword ptr [ebp - 0x10]", "0x1004a610"], ["0x100a25c3", "mov ecx, dword ptr [ebp - 0xc]", "0x1004a613"]]}]]]}, {"address": "0x100a25f0", "recomp": "0x1004a640", "name": "Tgl::Camera::~Camera", "matching": 1.0, "diff": []}, {"address": "0x100a2640", "recomp": "0x1004a890", "name": "TglImpl::LightImpl::`scalar deleting destructor'", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a2657,22 +0x1004a8a7,22 @@", [{"both": [["0x100a2657", "mov dword ptr fs:[0], esp", "0x1004a8a7"], ["0x100a265e", "sub esp, 4", "0x1004a8ae"], ["0x100a2661", "mov dword ptr [ebp - 4], 0", "0x1004a8b1"], ["0x100a2668", "mov eax, dword ptr [ecx + 4]", "0x1004a8b8"], ["0x100a266b", "mov dword ptr [ebp - 0x10], ecx", "0x1004a8bb"], ["0x100a266e", "test eax, eax", "0x1004a8be"], ["0x100a2670", "je 0x10", "0x1004a8c0"], ["0x100a2672", "push eax", "0x1004a8c2"], ["0x100a2673", "mov eax, dword ptr [eax]", "0x1004a8c3"], ["0x100a2675", "call dword ptr [eax + 8]", "0x1004a8c5"]]}, {"orig": [["0x100a2678", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a267b", "mov dword ptr [ecx + 4], 0"]], "recomp": [["0x1004a8c8", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004a8cb", "mov dword ptr [eax + 4], 0"]]}, {"both": [["0x100a2682", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004a8d2"], ["0x100a2689", "call <OFFSET3>", "0x1004a8d9"], ["0x100a268e", "test byte ptr [ebp + 8], 1", "0x1004a8de"], ["0x100a2692", "je 0xc", "0x1004a8e2"], ["0x100a2694", "mov eax, dword ptr [ebp - 0x10]", "0x1004a8e4"], ["0x100a2697", "push eax", "0x1004a8e7"], ["0x100a2698", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004a8e8"], ["0x100a269d", "add esp, 4", "0x1004a8ed"], ["0x100a26a0", "mov eax, dword ptr [ebp - 0x10]", "0x1004a8f0"], ["0x100a26a3", "mov ecx, dword ptr [ebp - 0xc]", "0x1004a8f3"]]}]]]}, {"address": "0x100a26d0", "recomp": "0x1004a920", "name": "Tgl::Light::~Light", "matching": 1.0, "diff": []}, {"address": "0x100a2720", "recomp": "0x1004aaa0", "name": "TglImpl::MeshBuilderImpl::`scalar deleting destructor'", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a2737,22 +0x1004aab7,22 @@", [{"both": [["0x100a2737", "mov dword ptr fs:[0], esp", "0x1004aab7"], ["0x100a273e", "sub esp, 4", "0x1004aabe"], ["0x100a2741", "mov dword ptr [ebp - 4], 0", "0x1004aac1"], ["0x100a2748", "mov eax, dword ptr [ecx + 4]", "0x1004aac8"], ["0x100a274b", "mov dword ptr [ebp - 0x10], ecx", "0x1004aacb"], ["0x100a274e", "test eax, eax", "0x1004aace"], ["0x100a2750", "je 0x10", "0x1004aad0"], ["0x100a2752", "push eax", "0x1004aad2"], ["0x100a2753", "mov eax, dword ptr [eax]", "0x1004aad3"], ["0x100a2755", "call dword ptr [eax + 8]", "0x1004aad5"]]}, {"orig": [["0x100a2758", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a275b", "mov dword ptr [ecx + 4], 0"]], "recomp": [["0x1004aad8", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004aadb", "mov dword ptr [eax + 4], 0"]]}, {"both": [["0x100a2762", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004aae2"], ["0x100a2769", "call <OFFSET3>", "0x1004aae9"], ["0x100a276e", "test byte ptr [ebp + 8], 1", "0x1004aaee"], ["0x100a2772", "je 0xc", "0x1004aaf2"], ["0x100a2774", "mov eax, dword ptr [ebp - 0x10]", "0x1004aaf4"], ["0x100a2777", "push eax", "0x1004aaf7"], ["0x100a2778", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004aaf8"], ["0x100a277d", "add esp, 4", "0x1004aafd"], ["0x100a2780", "mov eax, dword ptr [ebp - 0x10]", "0x1004ab00"], ["0x100a2783", "mov ecx, dword ptr [ebp - 0xc]", "0x1004ab03"]]}]]]}, {"address": "0x100a27b0", "recomp": "0x1004ab30", "name": "Tgl::MeshBuilder::~MeshBuilder", "matching": 1.0, "diff": []}, {"address": "0x100a2800", "recomp": "0x1004ad70", "name": "TglImpl::TextureImpl::`scalar deleting destructor'", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a2817,22 +0x1004ad87,22 @@", [{"both": [["0x100a2817", "mov dword ptr fs:[0], esp", "0x1004ad87"], ["0x100a281e", "sub esp, 4", "0x1004ad8e"], ["0x100a2821", "mov dword ptr [ebp - 4], 0", "0x1004ad91"], ["0x100a2828", "mov eax, dword ptr [ecx + 4]", "0x1004ad98"], ["0x100a282b", "mov dword ptr [ebp - 0x10], ecx", "0x1004ad9b"], ["0x100a282e", "test eax, eax", "0x1004ad9e"], ["0x100a2830", "je 0x10", "0x1004ada0"], ["0x100a2832", "push eax", "0x1004ada2"], ["0x100a2833", "mov eax, dword ptr [eax]", "0x1004ada3"], ["0x100a2835", "call dword ptr [eax + 8]", "0x1004ada5"]]}, {"orig": [["0x100a2838", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a283b", "mov dword ptr [ecx + 4], 0"]], "recomp": [["0x1004ada8", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004adab", "mov dword ptr [eax + 4], 0"]]}, {"both": [["0x100a2842", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004adb2"], ["0x100a2849", "call <OFFSET3>", "0x1004adb9"], ["0x100a284e", "test byte ptr [ebp + 8], 1", "0x1004adbe"], ["0x100a2852", "je 0xc", "0x1004adc2"], ["0x100a2854", "mov eax, dword ptr [ebp - 0x10]", "0x1004adc4"], ["0x100a2857", "push eax", "0x1004adc7"], ["0x100a2858", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004adc8"], ["0x100a285d", "add esp, 4", "0x1004adcd"], ["0x100a2860", "mov eax, dword ptr [ebp - 0x10]", "0x1004add0"], ["0x100a2863", "mov ecx, dword ptr [ebp - 0xc]", "0x1004add3"]]}]]]}, {"address": "0x100a2890", "recomp": "0x1004ae00", "name": "Tgl::Texture::~Texture", "matching": 1.0, "diff": []}, {"address": "0x100a28e0", "recomp": "0x10049ea0", "name": "Tgl::Device::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a2950", "recomp": "0x1004a220", "name": "Tgl::View::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a29c0", "recomp": "0x1004a480", "name": "Tgl::Group::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a2a30", "recomp": "0x1004a690", "name": "Tgl::Camera::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a2aa0", "recomp": "0x1004a970", "name": "Tgl::Light::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a2b10", "recomp": "0x1004ab80", "name": "Tgl::MeshBuilder::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a2b80", "recomp": "0x1004ae50", "name": "Tgl::Texture::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a2bf0", "recomp": "0x1004b080", "name": "TglImpl::DeviceImpl::ImplementationDataPtr", "matching": 1.0, "diff": []}, {"address": "0x100a2c00", "recomp": "0x1004b090", "name": "TglImpl::DeviceImpl::GetWidth", "matching": 1.0, "diff": []}, {"address": "0x100a2c10", "recomp": "0x1004b0a0", "name": "TglImpl::DeviceImpl::GetHeight", "matching": 1.0, "diff": []}, {"address": "0x100a2c20", "recomp": "0x1004b0b0", "name": "TglImpl::DeviceImpl::SetColorModel", "matching": 1.0, "diff": []}, {"address": "0x100a2c30", "recomp": "0x1004b0c0", "name": "TglImpl::DeviceImpl::SetShadingModel", "matching": 0.43478260869565216, "diff": [["@@ -0x100a2c30,34 +0x1004b0c0,35 @@", [{"orig": [["0x100a2c30", "mov ecx, dword ptr [ecx + 4]"]], "recomp": []}, {"both": [["0x100a2c33", "mov eax, dword ptr [esp + 4]", "0x1004b0c0"], ["0x100a2c37", "cmp eax, 4", "0x1004b0c4"], ["0x100a2c3a", "ja 0x7", "0x1004b0c7"]]}, {"orig": [["0x100a2c3c", "jmp dword ptr [eax*4 + 0x100a2c80]"], ["0x100a2c43", "mov eax, 0x88"]], "recomp": [["0x1004b0c9", "jmp dword ptr [eax*4 + 0x1004b110]"], ["0x1004b0d0", "mov edx, 0x88"]]}, {"both": [["0x100a2c48", "jmp 0x21", "0x1004b0d5"]]}, {"orig": [["0x100a2c4a", "mov eax, 0x40"]], "recomp": [["0x1004b0d7", "mov edx, 0x40"]]}, {"both": [["0x100a2c4f", "jmp 0x1a", "0x1004b0dc"]]}, {"orig": [["0x100a2c51", "mov eax, 0x80"]], "recomp": [["0x1004b0de", "mov edx, 0x80"]]}, {"both": [["0x100a2c56", "jmp 0x13", "0x1004b0e3"]]}, {"orig": [["0x100a2c58", "mov eax, 0x88"]], "recomp": [["0x1004b0e5", "mov edx, 0x88"]]}, {"both": [["0x100a2c5d", "jmp 0xc", "0x1004b0ea"]]}, {"orig": [["0x100a2c5f", "mov eax, 0x89"]], "recomp": [["0x1004b0ec", "mov edx, 0x89"]]}, {"both": [["0x100a2c64", "jmp 0x5", "0x1004b0f1"]]}, {"orig": [["0x100a2c66", "mov eax, 0x8a"]], "recomp": [["0x1004b0f3", "mov edx, 0x8a"], ["0x1004b0f8", "mov eax, dword ptr [ecx + 4]"], ["0x1004b0fb", "push edx"]]}, {"both": [["0x100a2c6b", "push eax", "0x1004b0fc"]]}, {"orig": [["0x100a2c6c", "push ecx"], ["0x100a2c6d", "mov eax, dword ptr [ecx]"]], "recomp": [["0x1004b0fd", "mov eax, dword ptr [eax]"]]}, {"both": [["0x100a2c6f", "call dword ptr [eax + 0x54]", "0x1004b0ff"], ["0x100a2c72", "test eax, eax", "0x1004b102"], ["0x100a2c74", "mov eax, 1", "0x1004b104"], ["0x100a2c79", "jge 0x2", "0x1004b109"], ["0x100a2c7b", "xor eax, eax", "0x1004b10b"], ["0x100a2c7d", "ret 4", "0x1004b10d"]]}, {"orig": [["0x100a2c80", "dec edx"], ["0x100a2c81", "sub al, 0xa"], ["0x100a2c83", "adc byte ptr [ecx + 0x2c], dl"], ["0x100a2c86", "or dl, byte ptr [eax]"], ["0x100a2c88", "pop eax"], ["0x100a2c89", "sub al, 0xa"], ["0x100a2c8b", "adc byte ptr [edi + 0x2c], bl"], ["0x100a2c8e", "or dl, byte ptr [eax]"], ["0x100a2c90", "sub al, 0xa"]], "recomp": [["0x1004b110", "xlatb "], ["0x1004b111", "mov al, 4"], ["0x1004b113", "adc dh, bl"], ["0x1004b115", "mov al, 4"], ["0x1004b117", "adc ch, ah"], ["0x1004b119", "mov al, 4"], ["0x1004b11b", "adc ah, ch"], ["0x1004b11d", "mov al, 4"], ["0x1004b11f", "adc bl, dh"], ["0x1004b121", "mov al, 4"]]}]]]}, {"address": "0x100a2ca0", "recomp": "0x1004b130", "name": "TglImpl::DeviceImpl::SetShadeCount", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a2ca0,11 +0x1004b130,11 @@", [{"orig": [["0x100a2ca0", "mov eax, dword ptr [ecx + 4]"], ["0x100a2ca3", "mov ecx, dword ptr [esp + 4]"]], "recomp": [["0x1004b130", "mov ecx, dword ptr [ecx + 4]"], ["0x1004b133", "mov eax, dword ptr [esp + 4]"], ["0x1004b137", "push eax"]]}, {"both": [["0x100a2ca7", "push ecx", "0x1004b138"]]}, {"orig": [["0x100a2ca8", "push eax"], ["0x100a2ca9", "mov eax, dword ptr [eax]"]], "recomp": [["0x1004b139", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x100a2cab", "call dword ptr [eax + 0x50]", "0x1004b13b"], ["0x100a2cae", "test eax, eax", "0x1004b13e"], ["0x100a2cb0", "mov eax, 1", "0x1004b140"], ["0x100a2cb5", "jge 0x2", "0x1004b145"], ["0x100a2cb7", "xor eax, eax", "0x1004b147"], ["0x100a2cb9", "ret 4", "0x1004b149"]]}]]]}, {"address": "0x100a2cc0", "recomp": "0x1004b150", "name": "TglImpl::DeviceImpl::SetDither", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a2cc0,11 +0x1004b150,11 @@", [{"both": [["0x100a2cc0", "mov eax, dword ptr [ecx + 4]", "0x1004b150"]]}, {"orig": [["0x100a2cc3", "mov ecx, dword ptr [esp + 4]"], ["0x100a2cc7", "push ecx"]], "recomp": [["0x1004b153", "mov edx, dword ptr [esp + 4]"], ["0x1004b157", "push edx"]]}, {"both": [["0x100a2cc8", "push eax", "0x1004b158"], ["0x100a2cc9", "mov eax, dword ptr [eax]", "0x1004b159"], ["0x100a2ccb", "call dword ptr [eax + 0x4c]", "0x1004b15b"], ["0x100a2cce", "test eax, eax", "0x1004b15e"], ["0x100a2cd0", "mov eax, 1", "0x1004b160"], ["0x100a2cd5", "jge 0x2", "0x1004b165"], ["0x100a2cd7", "xor eax, eax", "0x1004b167"], ["0x100a2cd9", "ret 4", "0x1004b169"]]}]]]}, {"address": "0x100a2ce0", "recomp": "0x1004b170", "name": "TglImpl::DeviceImpl::InitFromD3DDevice", "matching": 0.5769230769230769, "diff": [["@@ -0x100a2ce0,26 +0x1004b170,26 @@", [{"both": [["0x100a2ce0", "sub esp, 4", "0x1004b170"]]}, {"orig": [], "recomp": [["0x1004b173", "push esi"]]}, {"both": [["0x100a2ce3", "mov eax, dword ptr [ecx + 4]", "0x1004b174"]]}, {"orig": [["0x100a2ce6", "lea ecx, [esp]"]], "recomp": [["0x1004b177", "mov esi, ecx"], ["0x1004b179", "lea ecx, [esp + 4]"]]}, {"both": [["0x100a2cea", "push ecx", "0x1004b17d"]]}, {"orig": [["0x100a2ceb", "push <OFFSET1>"]], "recomp": [["0x1004b17e", "push IID_IDirect3DRMWinDevice (DATA)"]]}, {"both": [["0x100a2cf0", "push eax", "0x1004b183"], ["0x100a2cf1", "mov eax, dword ptr [eax]", "0x1004b184"], ["0x100a2cf3", "call dword ptr [eax]", "0x1004b186"], ["0x100a2cf5", "test eax, eax", "0x1004b188"], ["0x100a2cf7", "jl 0x19", "0x1004b18a"]]}, {"orig": [["0x100a2cf9", "mov eax, dword ptr [esp + 8]"], ["0x100a2cfd", "mov ecx, dword ptr [esp]"]], "recomp": [["0x1004b18c", "mov eax, dword ptr [esi + 4]"], ["0x1004b18f", "lea ecx, [esp + 4]"]]}, {"both": [["0x100a2d01", "push eax", "0x1004b193"], ["0x100a2d02", "push ecx", "0x1004b194"]]}, {"orig": [["0x100a2d03", "mov eax, dword ptr [ecx]"], ["0x100a2d05", "call dword ptr [eax + 0x30]"], ["0x100a2d08", "mov ecx, dword ptr [esp]"]], "recomp": [["0x1004b195", "push eax"], ["0x1004b196", "mov esi, dword ptr [eax]"], ["0x1004b198", "call dword ptr [esi + 0x30]"], ["0x1004b19b", "mov ecx, dword ptr [esp + 4]"]]}, {"both": [["0x100a2d0c", "push ecx", "0x1004b19f"], ["0x100a2d0d", "mov eax, dword ptr [ecx]", "0x1004b1a0"], ["0x100a2d0f", "call dword ptr [eax + 8]", "0x1004b1a2"]]}, {"orig": [], "recomp": [["0x1004b1a5", "pop esi"]]}, {"both": [["0x100a2d12", "add esp, 4", "0x1004b1a6"], ["0x100a2d15", "ret 4", "0x1004b1a9"]]}, {"orig": [["0x100a2d18", "int3 "], ["0x100a2d19", "int3 "], ["0x100a2d1a", "int3 "], ["0x100a2d1b", "int3 "]], "recomp": []}]]]}, {"address": "0x100a2d20", "recomp": "0x1004b1b0", "name": "TglImpl::DeviceImpl::InitFromWindowsDevice", "matching": 0.4375, "diff": [["@@ -0x100a2d20,16 +0x1004b1b0,16 @@", [{"both": [["0x100a2d20", "sub esp, 4", "0x1004b1b0"], ["0x100a2d23", "mov eax, dword ptr [ecx + 4]", "0x1004b1b3"]]}, {"orig": [["0x100a2d26", "lea ecx, [esp]"], ["0x100a2d2a", "push ecx"], ["0x100a2d2b", "push <OFFSET1>"]], "recomp": [["0x1004b1b6", "lea edx, [esp]"], ["0x1004b1ba", "push edx"], ["0x1004b1bb", "push IID_IDirect3DRMWinDevice (DATA)"]]}, {"both": [["0x100a2d30", "push eax", "0x1004b1c0"], ["0x100a2d31", "mov eax, dword ptr [eax]", "0x1004b1c1"], ["0x100a2d33", "call dword ptr [eax]", "0x1004b1c3"], ["0x100a2d35", "test eax, eax", "0x1004b1c5"]]}, {"orig": [["0x100a2d37", "jl 0x19"], ["0x100a2d39", "mov eax, dword ptr [esp + 8]"], ["0x100a2d3d", "mov ecx, dword ptr [esp]"]], "recomp": [["0x1004b1c7", "jl 0xa"], ["0x1004b1c9", "mov eax, dword ptr [esp]"]]}, {"both": [["0x100a2d41", "push eax", "0x1004b1cd"]]}, {"orig": [["0x100a2d42", "push ecx"], ["0x100a2d43", "mov eax, dword ptr [ecx]"], ["0x100a2d45", "call dword ptr [eax + 0x2c]"]], "recomp": [["0x1004b1ce", "mov eax, dword ptr [eax]"], ["0x1004b1d0", "call dword ptr [eax + 8]"], ["0x1004b1d3", "add esp, 4"], ["0x1004b1d6", "ret 4"]]}]]]}, {"address": "0x100a2d60", "recomp": "0x1004b1e0", "name": "TglImpl::DeviceImpl::Update", "matching": 1.0, "diff": []}, {"address": "0x100a2d80", "recomp": "0x1004b3f0", "name": "TglImpl::ViewImpl::ImplementationDataPtr", "matching": 1.0, "diff": []}, {"address": "0x100a2d90", "recomp": "0x1004b400", "name": "TglImpl::ViewImpl::Add", "matching": 1.0, "diff": []}, {"address": "0x100a2dc0", "recomp": "0x1004b430", "name": "TglImpl::ViewImpl::Remove", "matching": 1.0, "diff": []}, {"address": "0x100a2df0", "recomp": "0x1004b460", "name": "TglImpl::ViewImpl::SetCamera", "matching": 0.6336633663366337, "diff": [["@@ -0x100a2df0,52 +0x1004b460,49 @@", [{"both": [["0x100a2df0", "mov eax, dword ptr [esp + 4]", "0x1004b460"], ["0x100a2df4", "sub esp, 8", "0x1004b464"], ["0x100a2df7", "push ebx", "0x1004b467"], ["0x100a2df8", "push esi", "0x1004b468"], ["0x100a2df9", "push edi", "0x1004b469"]]}, {"orig": [["0x100a2dfa", "mov ebx, dword ptr [ecx + 4]"]], "recomp": [["0x1004b46a", "mov esi, ecx"]]}, {"both": [["0x100a2dfd", "push ebp", "0x1004b46c"], ["0x100a2dfe", "mov edi, dword ptr [eax + 4]", "0x1004b46d"]]}, {"orig": [["0x100a2e01", "push ebx"], ["0x100a2e02", "mov eax, dword ptr [ebx]"], ["0x100a2e04", "call dword ptr [eax + 0x1c]"]], "recomp": [["0x1004b470", "mov eax, dword ptr [esi + 4]"], ["0x1004b473", "push eax"], ["0x1004b474", "mov ebx, dword ptr [eax]"], ["0x1004b476", "call dword ptr [ebx + 0x1c]"]]}, {"both": [["0x100a2e07", "mov ecx, dword ptr [eax + 4]", "0x1004b479"]]}, {"orig": [["0x100a2e0a", "mov esi, dword ptr [eax + 8]"]], "recomp": [["0x1004b47c", "mov ebx, dword ptr [eax + 8]"]]}, {"both": [["0x100a2e0d", "mov ebp, eax", "0x1004b47f"]]}, {"orig": [["0x100a2e0f", "test esi, esi"]], "recomp": [["0x1004b481", "test ebx, ebx"]]}, {"both": [["0x100a2e11", "mov eax, dword ptr [ebp]", "0x1004b483"], ["0x100a2e14", "mov dword ptr [esp + 0x14], eax", "0x1004b486"], ["0x100a2e18", "je 0x22", "0x1004b48a"]]}, {"orig": [["0x100a2e1a", "mov eax, dword ptr [esi]"]], "recomp": [["0x1004b48c", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x100a2e1c", "push ecx", "0x1004b48e"]]}, {"orig": [["0x100a2e1d", "push esi"]], "recomp": [["0x1004b48f", "push ebx"]]}, {"both": [["0x100a2e1e", "mov edx, dword ptr [eax + 0x98]", "0x1004b490"], ["0x100a2e24", "mov dword ptr [esp + 0x18], edx", "0x1004b496"], ["0x100a2e28", "call dword ptr [esp + 0x18]", "0x1004b49a"], ["0x100a2e2c", "mov ecx, dword ptr [esp + 0x14]", "0x1004b49e"], ["0x100a2e30", "push ecx", "0x1004b4a2"]]}, {"orig": [["0x100a2e31", "push esi"]], "recomp": [["0x1004b4a3", "push ebx"]]}, {"both": [["0x100a2e32", "call dword ptr [esp + 0x18]", "0x1004b4a4"]]}, {"orig": [["0x100a2e36", "push esi"], ["0x100a2e37", "mov esi, dword ptr [esi]"], ["0x100a2e39", "call dword ptr [esi + 8]"]], "recomp": [["0x1004b4a8", "push ebx"], ["0x1004b4a9", "mov ebx, dword ptr [ebx]"], ["0x1004b4ab", "call dword ptr [ebx + 8]"]]}, {"both": [["0x100a2e3c", "push edi", "0x1004b4ae"], ["0x100a2e3d", "mov dword ptr [ebp + 4], edi", "0x1004b4af"], ["0x100a2e40", "mov dword ptr [ebp + 8], 0", "0x1004b4b2"]]}, {"orig": [["0x100a2e47", "push ebx"], ["0x100a2e48", "mov eax, dword ptr [ebx]"], ["0x100a2e4a", "call dword ptr [eax + 0x48]"]], "recomp": [["0x1004b4b9", "mov eax, dword ptr [esi + 4]"], ["0x1004b4bc", "push eax"], ["0x1004b4bd", "mov ebx, dword ptr [eax]"], ["0x1004b4bf", "call dword ptr [ebx + 0x48]"]]}, {"both": [["0x100a2e4d", "test eax, eax", "0x1004b4c2"], ["0x100a2e4f", "mov eax, 1", "0x1004b4c4"], ["0x100a2e54", "jge 0x2", "0x1004b4c9"], ["0x100a2e56", "xor eax, eax", "0x1004b4cb"], ["0x100a2e58", "pop ebp", "0x1004b4cd"], ["0x100a2e59", "pop edi", "0x1004b4ce"], ["0x100a2e5a", "pop esi", "0x1004b4cf"], ["0x100a2e5b", "pop ebx", "0x1004b4d0"], ["0x100a2e5c", "add esp, 8", "0x1004b4d1"], ["0x100a2e5f", "ret 4", "0x1004b4d4"]]}, {"orig": [["0x100a2e62", "int3 "], ["0x100a2e63", "int3 "], ["0x100a2e64", "int3 "], ["0x100a2e65", "int3 "], ["0x100a2e66", "int3 "]], "recomp": []}]]]}, {"address": "0x100a2e70", "recomp": "0x1004b4e0", "name": "TglImpl::ViewImpl::SetProjection", "matching": 0.7, "diff": [["@@ -0x100a2e70,20 +0x1004b4e0,20 @@", [{"orig": [["0x100a2e70", "mov ecx, dword ptr [ecx + 4]"]], "recomp": []}, {"both": [["0x100a2e73", "mov eax, dword ptr [esp + 4]", "0x1004b4e0"], ["0x100a2e77", "test eax, eax", "0x1004b4e4"], ["0x100a2e79", "je 0x9", "0x1004b4e6"], ["0x100a2e7b", "cmp eax, 1", "0x1004b4e8"], ["0x100a2e7e", "je 0x8", "0x1004b4eb"]]}, {"orig": [["0x100a2e80", "xor eax, eax"]], "recomp": [["0x1004b4ed", "xor edx, edx"]]}, {"both": [["0x100a2e82", "jmp 0x9", "0x1004b4ef"]]}, {"orig": [["0x100a2e84", "xor eax, eax"]], "recomp": [["0x1004b4f1", "xor edx, edx"]]}, {"both": [["0x100a2e86", "jmp 0x5", "0x1004b4f3"]]}, {"orig": [["0x100a2e88", "mov eax, 1"]], "recomp": [["0x1004b4f5", "mov edx, 1"], ["0x1004b4fa", "mov eax, dword ptr [ecx + 4]"], ["0x1004b4fd", "push edx"]]}, {"both": [["0x100a2e8d", "push eax", "0x1004b4fe"]]}, {"orig": [["0x100a2e8e", "push ecx"], ["0x100a2e8f", "mov eax, dword ptr [ecx]"]], "recomp": [["0x1004b4ff", "mov eax, dword ptr [eax]"]]}, {"both": [["0x100a2e91", "call dword ptr [eax + 0x4c]", "0x1004b501"], ["0x100a2e94", "test eax, eax", "0x1004b504"], ["0x100a2e96", "mov eax, 1", "0x1004b506"], ["0x100a2e9b", "jge 0x2", "0x1004b50b"], ["0x100a2e9d", "xor eax, eax", "0x1004b50d"], ["0x100a2e9f", "ret 4", "0x1004b50f"]]}]]]}, {"address": "0x100a2eb0", "recomp": "0x1004b520", "name": "TglImpl::ViewImpl::SetFrustrum", "matching": 0.594059405940594, "diff": [["@@ -0x100a2eb0,53 +0x1004b520,48 @@", [{"both": [["0x100a2eb0", "fld dword ptr [esp + 0xc]", "0x1004b520"], ["0x100a2eb4", "fmul dword ptr [0.5 (FLOAT)]", "0x1004b524"], ["0x100a2eba", "fmul qword ptr [0.005555555555555556 (FLOAT)]", "0x1004b52a"]]}, {"orig": [["0x100a2ec0", "fmul qword ptr [3.141592653589793 (FLOAT)]"]], "recomp": [["0x1004b530", "fmul dword ptr [3.1415927410125732 (FLOAT)]"]]}, {"both": [["0x100a2ec6", "fptan ", "0x1004b536"], ["0x100a2ec8", "sub esp, 4", "0x1004b538"], ["0x100a2ecb", "push esi", "0x1004b53b"]]}, {"orig": [["0x100a2ecc", "push edi"], ["0x100a2ecd", "mov edi, dword ptr [ecx + 4]"], ["0x100a2ed0", "mov eax, dword ptr [esp + 0x10]"]], "recomp": [["0x1004b53c", "mov esi, ecx"], ["0x1004b53e", "mov eax, dword ptr [esi + 4]"], ["0x1004b541", "mov ecx, dword ptr [esp + 0xc]"], ["0x1004b545", "push ecx"]]}, {"both": [["0x100a2ed4", "push eax", "0x1004b546"], ["0x100a2ed5", "fstp st(0)", "0x1004b547"], ["0x100a2ed7", "fmul dword ptr [esp + 0x14]", "0x1004b549"], ["0x100a2edb", "fstp dword ptr [esp + 0xc]", "0x1004b54d"]]}, {"orig": [["0x100a2edf", "mov esi, dword ptr [edi]"], ["0x100a2ee1", "push edi"], ["0x100a2ee2", "call dword ptr [esi + 0x38]"]], "recomp": [["0x1004b551", "mov eax, dword ptr [eax]"], ["0x1004b553", "call dword ptr [eax + 0x38]"]]}, {"both": [["0x100a2ee5", "test eax, eax", "0x1004b556"], ["0x100a2ee7", "mov eax, 1", "0x1004b558"], ["0x100a2eec", "jge 0x2", "0x1004b55d"], ["0x100a2eee", "xor eax, eax", "0x1004b55f"], ["0x100a2ef0", "cmp eax, 1", "0x1004b561"]]}, {"orig": [["0x100a2ef3", "jne 0x2d"], ["0x100a2ef5", "mov eax, dword ptr [esp + 0x14]"]], "recomp": [["0x1004b564", "jne 0x37"], ["0x1004b566", "mov eax, dword ptr [esi + 4]"], ["0x1004b569", "mov ecx, dword ptr [esp + 0x10]"], ["0x1004b56d", "push ecx"]]}, {"both": [["0x100a2ef9", "push eax", "0x1004b56e"]]}, {"orig": [["0x100a2efa", "push edi"], ["0x100a2efb", "call dword ptr [esi + 0x3c]"]], "recomp": [["0x1004b56f", "mov eax, dword ptr [eax]"], ["0x1004b571", "call dword ptr [eax + 0x3c]"]]}, {"both": [["0x100a2efe", "test eax, eax", "0x1004b574"], ["0x100a2f00", "mov eax, 1", "0x1004b576"], ["0x100a2f05", "jge 0x2", "0x1004b57b"], ["0x100a2f07", "xor eax, eax", "0x1004b57d"], ["0x100a2f09", "cmp eax, 1", "0x1004b57f"]]}, {"orig": [["0x100a2f0c", "jne 0x14"], ["0x100a2f0e", "mov eax, dword ptr [esp + 8]"]], "recomp": [["0x1004b582", "jne 0x19"], ["0x1004b584", "mov eax, dword ptr [esi + 4]"], ["0x1004b587", "mov ecx, dword ptr [esp + 4]"], ["0x1004b58b", "mov esi, dword ptr [eax]"], ["0x1004b58d", "push ecx"]]}, {"both": [["0x100a2f12", "push eax", "0x1004b58e"]]}, {"orig": [["0x100a2f13", "push edi"]], "recomp": []}, {"both": [["0x100a2f14", "call dword ptr [esi + 0x40]", "0x1004b58f"], ["0x100a2f17", "test eax, eax", "0x1004b592"], ["0x100a2f19", "mov eax, 1", "0x1004b594"], ["0x100a2f1e", "jge 0x2", "0x1004b599"], ["0x100a2f20", "xor eax, eax", "0x1004b59b"]]}, {"orig": [["0x100a2f22", "pop edi"]], "recomp": []}, {"both": [["0x100a2f23", "pop esi", "0x1004b59d"], ["0x100a2f24", "add esp, 4", "0x1004b59e"], ["0x100a2f27", "ret 0xc", "0x1004b5a1"]]}, {"orig": [["0x100a2f2a", "int3 "], ["0x100a2f2b", "int3 "], ["0x100a2f2c", "int3 "], ["0x100a2f2d", "int3 "], ["0x100a2f2e", "int3 "], ["0x100a2f2f", "int3 "], ["0x100a2f30", "push esi"], ["0x100a2f31", "mov eax, dword ptr [ecx + 4]"]], "recomp": []}]]]}, {"address": "0x100a2f30", "recomp": "0x1004b5b0", "name": "TglImpl::ViewImpl::SetBackgroundColor", "matching": 1.0, "diff": []}, {"address": "0x100a2f80", "recomp": "0x1004b600", "name": "TglImpl::ViewImpl::GetBackgroundColor", "matching": 1.0, "diff": []}, {"address": "0x100a2fb0", "recomp": "0x1004b630", "name": "TglImpl::ViewImpl::Clear", "matching": 1.0, "diff": []}, {"address": "0x100a2fd0", "recomp": "0x1004b650", "name": "TglImpl::ViewImpl::Render", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a2fd0,72 +0x1004b650,72 @@", [{"both": [["0x100a2fd0", "mov eax, dword ptr [esp + 4]", "0x1004b650"], ["0x100a2fd4", "sub esp, 0xc", "0x1004b654"], ["0x100a2fd7", "push ebx", "0x1004b657"], ["0x100a2fd8", "push esi", "0x1004b658"], ["0x100a2fd9", "push edi", "0x1004b659"]]}, {"orig": [["0x100a2fda", "mov esi, dword ptr [ecx + 4]"]], "recomp": [["0x1004b65a", "mov esi, dword ptr [eax + 4]"]]}, {"both": [["0x100a2fdd", "push ebp", "0x1004b65d"]]}, {"orig": [["0x100a2fde", "mov edi, dword ptr [eax + 4]"], ["0x100a2fe1", "push esi"], ["0x100a2fe2", "mov eax, dword ptr [esi]"]], "recomp": [["0x1004b65e", "mov edi, dword ptr [ecx + 4]"], ["0x1004b661", "push edi"], ["0x1004b662", "mov eax, dword ptr [edi]"]]}, {"both": [["0x100a2fe4", "call dword ptr [eax + 0x1c]", "0x1004b664"], ["0x100a2fe7", "mov ebp, dword ptr [eax + 8]", "0x1004b667"], ["0x100a2fea", "mov ebx, eax", "0x1004b66a"]]}, {"orig": [["0x100a2fec", "cmp edi, ebp"]], "recomp": [["0x1004b66c", "cmp ebp, esi"]]}, {"both": [["0x100a2fee", "je 0x6d", "0x1004b66e"], ["0x100a2ff0", "mov eax, dword ptr [ebx]", "0x1004b670"], ["0x100a2ff2", "mov ecx, dword ptr [ebx + 4]", "0x1004b672"], ["0x100a2ff5", "mov dword ptr [esp + 0x10], eax", "0x1004b675"], ["0x100a2ff9", "test ebp, ebp", "0x1004b679"], ["0x100a2ffb", "je 0x24", "0x1004b67b"], ["0x100a2ffd", "mov eax, dword ptr [ebp]", "0x1004b67d"], ["0x100a3000", "push ecx", "0x1004b680"], ["0x100a3001", "push ebp", "0x1004b681"], ["0x100a3002", "mov edx, dword ptr [eax + 0x98]", "0x1004b682"], ["0x100a3008", "mov dword ptr [esp + 0x1c], edx", "0x1004b688"], ["0x100a300c", "call dword ptr [esp + 0x1c]", "0x1004b68c"], ["0x100a3010", "mov ecx, dword ptr [esp + 0x10]", "0x1004b690"], ["0x100a3014", "push ecx", "0x1004b694"], ["0x100a3015", "push ebp", "0x1004b695"], ["0x100a3016", "call dword ptr [esp + 0x1c]", "0x1004b696"], ["0x100a301a", "push ebp", "0x1004b69a"], ["0x100a301b", "mov ebp, dword ptr [ebp]", "0x1004b69b"], ["0x100a301e", "call dword ptr [ebp + 8]", "0x1004b69e"]]}, {"orig": [["0x100a3021", "mov dword ptr [ebx + 8], edi"], ["0x100a3024", "test edi, edi"]], "recomp": [["0x1004b6a1", "mov dword ptr [ebx + 8], esi"], ["0x1004b6a4", "test esi, esi"]]}, {"both": [["0x100a3026", "mov eax, dword ptr [ebx + 0x14]", "0x1004b6a6"], ["0x100a3029", "mov ecx, dword ptr [ebx + 0x10]", "0x1004b6a9"], ["0x100a302c", "mov edx, dword ptr [ebx + 0xc]", "0x1004b6ac"], ["0x100a302f", "mov ebp, dword ptr [ebx]", "0x1004b6af"], ["0x100a3031", "mov ebx, dword ptr [ebx + 4]", "0x1004b6b1"], ["0x100a3034", "je 0x27", "0x1004b6b4"], ["0x100a3036", "push eax", "0x1004b6b6"], ["0x100a3037", "push ecx", "0x1004b6b7"], ["0x100a3038", "push edx", "0x1004b6b8"]]}, {"orig": [["0x100a3039", "mov eax, dword ptr [edi]"], ["0x100a303b", "push edi"]], "recomp": [["0x1004b6b9", "mov eax, dword ptr [esi]"], ["0x1004b6bb", "push esi"]]}, {"both": [["0x100a303c", "call dword ptr [eax + 0xc4]", "0x1004b6bc"]]}, {"orig": [["0x100a3042", "mov ecx, dword ptr [edi]"]], "recomp": [["0x1004b6c2", "mov ecx, dword ptr [esi]"]]}, {"both": [["0x100a3044", "push ebx", "0x1004b6c4"]]}, {"orig": [["0x100a3045", "push edi"]], "recomp": [["0x1004b6c5", "push esi"]]}, {"both": [["0x100a3046", "mov edx, dword ptr [ecx + 0x2c]", "0x1004b6c6"], ["0x100a3049", "mov dword ptr [esp + 0x18], edx", "0x1004b6c9"], ["0x100a304d", "call dword ptr [esp + 0x18]", "0x1004b6cd"], ["0x100a3051", "push ebp", "0x1004b6d1"]]}, {"orig": [], "recomp": [["0x1004b6d2", "push esi"], ["0x1004b6d3", "call dword ptr [esp + 0x18]"], ["0x1004b6d7", "push esi"], ["0x1004b6d8", "mov ebx, dword ptr [esi]"], ["0x1004b6da", "call dword ptr [ebx + 4]"], ["0x1004b6dd", "push esi"], ["0x1004b6de", "mov eax, dword ptr [edi]"]]}, {"both": [["0x100a3052", "push edi", "0x1004b6e0"]]}, {"orig": [["0x100a3053", "call dword ptr [esp + 0x18]"], ["0x100a3057", "push edi"], ["0x100a3058", "mov ebx, dword ptr [edi]"], ["0x100a305a", "call dword ptr [ebx + 4]"], ["0x100a305d", "push edi"], ["0x100a305e", "mov eax, dword ptr [esi]"], ["0x100a3060", "push esi"]], "recomp": []}, {"both": [["0x100a3061", "call dword ptr [eax + 0x34]", "0x1004b6e1"], ["0x100a3064", "test eax, eax", "0x1004b6e4"], ["0x100a3066", "mov eax, 1", "0x1004b6e6"], ["0x100a306b", "jge 0x2", "0x1004b6eb"], ["0x100a306d", "xor eax, eax", "0x1004b6ed"], ["0x100a306f", "pop ebp", "0x1004b6ef"], ["0x100a3070", "pop edi", "0x1004b6f0"], ["0x100a3071", "pop esi", "0x1004b6f1"], ["0x100a3072", "pop ebx", "0x1004b6f2"], ["0x100a3073", "add esp, 0xc", "0x1004b6f3"]]}]]]}, {"address": "0x100a3080", "recomp": "0x1004b700", "name": "TglImpl::ViewImpl::ForceUpdate", "matching": 1.0, "diff": []}, {"address": "0x100a30c0", "recomp": "0x1004b740", "name": "TglImpl::ViewImpl::Pick", "matching": 1.0, "diff": []}, {"address": "0x100a30f0", "recomp": "0x1004b770", "name": "TglImpl::ViewImpl::TransformWorldToScreen", "matching": 0.7272727272727273, "diff": [["@@ -0x100a30f0,25 +0x1004b770,25 @@", [{"orig": [], "recomp": [["0x1004b770", "mov edx, dword ptr [esp + 4]"]]}, {"both": [["0x100a30f0", "sub esp, 0x1c", "0x1004b774"]]}, {"orig": [["0x100a30f3", "mov edx, dword ptr [ecx + 4]"], ["0x100a30f6", "mov ecx, dword ptr [esp + 0x20]"], ["0x100a30fa", "mov eax, dword ptr [ecx]"]], "recomp": [["0x1004b777", "mov ecx, dword ptr [ecx + 4]"], ["0x1004b77a", "mov eax, dword ptr [edx]"]]}, {"both": [["0x100a30fc", "mov dword ptr [esp], eax", "0x1004b77c"]]}, {"orig": [["0x100a3100", "mov eax, dword ptr [ecx + 4]"], ["0x100a3103", "mov ecx, dword ptr [ecx + 8]"]], "recomp": [["0x1004b780", "mov eax, dword ptr [edx + 4]"], ["0x1004b783", "mov edx, dword ptr [edx + 8]"]]}, {"both": [["0x100a3106", "mov dword ptr [esp + 4], eax", "0x1004b786"], ["0x100a310a", "lea eax, [esp]", "0x1004b78a"]]}, {"orig": [["0x100a310e", "mov dword ptr [esp + 8], ecx"], ["0x100a3112", "lea ecx, [esp + 0xc]"]], "recomp": [["0x1004b78e", "mov dword ptr [esp + 8], edx"], ["0x1004b792", "lea edx, [esp + 0xc]"]]}, {"both": [["0x100a3116", "push eax", "0x1004b796"]]}, {"orig": [], "recomp": [["0x1004b797", "push edx"], ["0x1004b798", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x100a3117", "push ecx", "0x1004b79a"]]}, {"orig": [["0x100a3118", "mov eax, dword ptr [edx]"], ["0x100a311a", "push edx"]], "recomp": []}, {"both": [["0x100a311b", "call dword ptr [eax + 0x50]", "0x1004b79b"], ["0x100a311e", "test eax, eax", "0x1004b79e"], ["0x100a3120", "mov eax, 1", "0x1004b7a0"], ["0x100a3125", "jge 0x2", "0x1004b7a5"], ["0x100a3127", "xor eax, eax", "0x1004b7a7"], ["0x100a3129", "cmp eax, 1", "0x1004b7a9"], ["0x100a312c", "jne 0x1f", "0x1004b7ac"], ["0x100a312e", "mov edx, dword ptr [esp + 0x24]", "0x1004b7ae"], ["0x100a3132", "mov ecx, dword ptr [esp + 0xc]", "0x1004b7b2"], ["0x100a3136", "mov dword ptr [edx], ecx", "0x1004b7b6"]]}]]]}, {"address": "0x100a3160", "recomp": "0x1004b7e0", "name": "TglImpl::ViewImpl::TransformScreenToWorld", "matching": 0.9090909090909091, "diff": [["@@ -0x100a3160,27 +0x1004b7e0,27 @@", [{"both": [["0x100a3160", "mov edx, dword ptr [esp + 4]", "0x1004b7e0"], ["0x100a3164", "sub esp, 0x1c", "0x1004b7e4"]]}, {"orig": [["0x100a3167", "mov ecx, dword ptr [ecx + 4]"]], "recomp": []}, {"both": [["0x100a316a", "mov eax, dword ptr [edx]", "0x1004b7e7"], ["0x100a316c", "mov dword ptr [esp + 0xc], eax", "0x1004b7e9"], ["0x100a3170", "mov eax, dword ptr [edx + 4]", "0x1004b7ed"]]}, {"orig": [], "recomp": [["0x1004b7f0", "mov ecx, dword ptr [ecx + 4]"]]}, {"both": [["0x100a3173", "mov dword ptr [esp + 0x10], eax", "0x1004b7f3"], ["0x100a3177", "mov eax, dword ptr [edx + 8]", "0x1004b7f7"], ["0x100a317a", "mov edx, dword ptr [edx + 0xc]", "0x1004b7fa"], ["0x100a317d", "mov dword ptr [esp + 0x14], eax", "0x1004b7fd"]]}, {"orig": [], "recomp": [["0x1004b801", "mov dword ptr [esp + 0x18], edx"]]}, {"both": [["0x100a3181", "lea eax, [esp + 0xc]", "0x1004b805"]]}, {"orig": [["0x100a3185", "mov dword ptr [esp + 0x18], edx"]], "recomp": []}, {"both": [["0x100a3189", "lea edx, [esp]", "0x1004b809"], ["0x100a318d", "push eax", "0x1004b80d"], ["0x100a318e", "push edx", "0x1004b80e"]]}, {"orig": [], "recomp": [["0x1004b80f", "push ecx"]]}, {"both": [["0x100a318f", "mov eax, dword ptr [ecx]", "0x1004b810"]]}, {"orig": [["0x100a3191", "push ecx"]], "recomp": []}, {"both": [["0x100a3192", "call dword ptr [eax + 0x54]", "0x1004b812"], ["0x100a3195", "test eax, eax", "0x1004b815"], ["0x100a3197", "mov eax, 1", "0x1004b817"], ["0x100a319c", "jge 0x2", "0x1004b81c"], ["0x100a319e", "xor eax, eax", "0x1004b81e"], ["0x100a31a0", "cmp eax, 1", "0x1004b820"], ["0x100a31a3", "jne 0x18", "0x1004b823"], ["0x100a31a5", "mov edx, dword ptr [esp + 0x24]", "0x1004b825"], ["0x100a31a9", "mov ecx, dword ptr [esp]", "0x1004b829"], ["0x100a31ad", "mov dword ptr [edx], ecx", "0x1004b82d"]]}]]]}, {"address": "0x100a31d0", "recomp": "0x1004b850", "name": "TglImpl::GroupImpl::ImplementationDataPtr", "matching": 1.0, "diff": []}, {"address": "0x100a31e0", "recomp": "0x1004b860", "name": "TglImpl::GroupImpl::SetTransformation", "matching": 0.45161290322580644, "diff": [["@@ -0x100a31e0,31 +0x1004b860,31 @@", [{"both": [["0x100a31e0", "sub esp, 0x40", "0x1004b860"]]}, {"orig": [["0x100a31e3", "mov edx, dword ptr [ecx + 4]"], ["0x100a31e6", "mov ecx, dword ptr [esp + 0x44]"]], "recomp": [["0x1004b863", "lea edx, [esp]"]]}, {"both": [["0x100a31ea", "push esi", "0x1004b867"]]}, {"orig": [["0x100a31eb", "lea esi, [esp + 4]"], ["0x100a31ef", "mov eax, dword ptr [ecx]"]], "recomp": [["0x1004b868", "mov esi, dword ptr [esp + 0x48]"], ["0x1004b86c", "mov eax, dword ptr [esi]"], ["0x1004b86e", "add edx, 0x10"]]}, {"both": [["0x100a31f1", "add esi, 0x10", "0x1004b871"]]}, {"orig": [["0x100a31f4", "add ecx, 0x10"], ["0x100a31f7", "mov dword ptr [esi - 0x10], eax"], ["0x100a31fa", "mov eax, dword ptr [ecx - 0xc]"], ["0x100a31fd", "mov dword ptr [esi - 0xc], eax"], ["0x100a3200", "mov eax, dword ptr [ecx - 8]"], ["0x100a3203", "mov dword ptr [esi - 8], eax"], ["0x100a3206", "mov eax, dword ptr [ecx - 4]"], ["0x100a3209", "mov dword ptr [esi - 4], eax"]], "recomp": [["0x1004b874", "mov dword ptr [edx - 0x10], eax"], ["0x1004b877", "mov eax, dword ptr [esi - 0xc]"], ["0x1004b87a", "mov dword ptr [edx - 0xc], eax"], ["0x1004b87d", "mov eax, dword ptr [esi - 8]"], ["0x1004b880", "mov dword ptr [edx - 8], eax"], ["0x1004b883", "mov eax, dword ptr [esi - 4]"], ["0x1004b886", "mov dword ptr [edx - 4], eax"]]}, {"both": [["0x100a320c", "lea eax, [esp + 0x44]", "0x1004b889"]]}, {"orig": [["0x100a3210", "cmp esi, eax"]], "recomp": [["0x1004b88d", "cmp edx, eax"]]}, {"both": [["0x100a3212", "jb -0x25", "0x1004b88f"]]}, {"orig": [["0x100a3214", "lea eax, [esp + 4]"], ["0x100a3218", "mov esi, dword ptr [edx]"]], "recomp": [["0x1004b891", "mov eax, dword ptr [ecx + 4]"], ["0x1004b894", "lea ecx, [esp + 4]"], ["0x1004b898", "push ecx"], ["0x1004b899", "push 0"]]}, {"both": [["0x100a321a", "push eax", "0x1004b89b"]]}, {"orig": [["0x100a321b", "push 0"], ["0x100a321d", "push edx"]], "recomp": [["0x1004b89c", "mov esi, dword ptr [eax]"]]}, {"both": [["0x100a321e", "call dword ptr [esi + 0x38]", "0x1004b89e"], ["0x100a3221", "test eax, eax", "0x1004b8a1"], ["0x100a3223", "mov eax, 1", "0x1004b8a3"], ["0x100a3228", "jge 0x2", "0x1004b8a8"], ["0x100a322a", "xor eax, eax", "0x1004b8aa"], ["0x100a322c", "pop esi", "0x1004b8ac"], ["0x100a322d", "add esp, 0x40", "0x1004b8ad"], ["0x100a3230", "ret 4", "0x1004b8b0"]]}]]]}, {"address": "0x100a3240", "recomp": "0x1004b8c0", "name": "TglImpl::GroupImpl::SetColor", "matching": 0.6987951807228916, "diff": [["@@ -0x100a3240,43 +0x1004b8c0,40 @@", [{"both": [["0x100a3240", "cmp dword ptr [esp + 0x10], 0", "0x1004b8c0"], ["0x100a3245", "push esi", "0x1004b8c5"]]}, {"orig": [["0x100a3246", "mov esi, dword ptr [ecx + 4]"], ["0x100a3249", "jle 0x32"]], "recomp": [["0x1004b8c6", "mov esi, ecx"], ["0x1004b8c8", "jle 0x35"]]}, {"both": [["0x100a324b", "mov eax, dword ptr [esp + 0x14]", "0x1004b8ca"], ["0x100a324f", "mov ecx, dword ptr [esp + 0x10]", "0x1004b8ce"], ["0x100a3253", "mov edx, dword ptr [esp + 0xc]", "0x1004b8d2"], ["0x100a3257", "push eax", "0x1004b8d6"], ["0x100a3258", "mov eax, dword ptr [esp + 0xc]", "0x1004b8d7"], ["0x100a325c", "push ecx", "0x1004b8db"], ["0x100a325d", "push edx", "0x1004b8dc"], ["0x100a325e", "push eax", "0x1004b8dd"], ["0x100a325f", "call _D3DRMCreateColorRGBA@16 (FUNCTION)", "0x1004b8de"]]}, {"orig": [], "recomp": [["0x1004b8e3", "mov ecx, dword ptr [esi + 4]"]]}, {"both": [["0x100a3264", "push eax", "0x1004b8e6"]]}, {"orig": [["0x100a3265", "push esi"], ["0x100a3266", "mov esi, dword ptr [esi]"]], "recomp": [["0x1004b8e7", "push ecx"], ["0x1004b8e8", "mov esi, dword ptr [ecx]"]]}, {"both": [["0x100a3268", "call dword ptr [esi + 0xe0]", "0x1004b8ea"], ["0x100a326e", "test eax, eax", "0x1004b8f0"], ["0x100a3270", "mov eax, 1", "0x1004b8f2"]]}, {"orig": [["0x100a3275", "jge 0x29"]], "recomp": [["0x1004b8f7", "jge 0x2c"]]}, {"both": [["0x100a3277", "pop esi", "0x1004b8f9"], ["0x100a3278", "xor eax, eax", "0x1004b8fa"], ["0x100a327a", "ret 0x10", "0x1004b8fc"]]}, {"orig": [], "recomp": [["0x1004b8ff", "mov ecx, dword ptr [esi + 4]"]]}, {"both": [["0x100a327d", "mov eax, dword ptr [esp + 0x10]", "0x1004b902"]]}, {"orig": [["0x100a3281", "mov ecx, dword ptr [esp + 0xc]"], ["0x100a3285", "mov edx, dword ptr [esp + 8]"]], "recomp": [["0x1004b906", "mov edx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100a3289", "push eax", "0x1004b90a"]]}, {"orig": [["0x100a328a", "push ecx"], ["0x100a328b", "mov eax, dword ptr [esi]"]], "recomp": [["0x1004b90b", "mov esi, dword ptr [esp + 0xc]"]]}, {"both": [["0x100a328d", "push edx", "0x1004b90f"], ["0x100a328e", "push esi", "0x1004b910"]]}, {"orig": [], "recomp": [["0x1004b911", "mov eax, dword ptr [ecx]"], ["0x1004b913", "push ecx"]]}, {"both": [["0x100a328f", "call dword ptr [eax + 0xe4]", "0x1004b914"], ["0x100a3295", "test eax, eax", "0x1004b91a"], ["0x100a3297", "mov eax, 1", "0x1004b91c"], ["0x100a329c", "jge 0x2", "0x1004b921"], ["0x100a329e", "xor eax, eax", "0x1004b923"], ["0x100a32a0", "pop esi", "0x1004b925"], ["0x100a32a1", "ret 0x10", "0x1004b926"]]}, {"orig": [["0x100a32a4", "int3 "], ["0x100a32a5", "int3 "], ["0x100a32a6", "int3 "], ["0x100a32a7", "int3 "], ["0x100a32a8", "int3 "]], "recomp": []}]]]}, {"address": "0x100a32b0", "recomp": "0x1004b930", "name": "TglImpl::GroupImpl::SetTexture", "matching": 1.0, "diff": []}, {"address": "0x100a32e0", "recomp": "0x1004b960", "name": "TglImpl::GroupImpl::GetTexture", "matching": 0.7536231884057971, "diff": [["@@ -0x100a32e0,18 +0x1004b960,18 @@", [{"both": [["0x100a32e0", "mov eax, dword ptr fs:[0]", "0x1004b960"], ["0x100a32e6", "push ebp", "0x1004b966"], ["0x100a32e7", "mov ebp, esp", "0x1004b967"], ["0x100a32e9", "push -1", "0x1004b969"], ["0x100a32eb", "push <OFFSET1>", "0x1004b96b"], ["0x100a32f0", "push eax", "0x1004b970"], ["0x100a32f1", "mov dword ptr fs:[0], esp", "0x1004b971"]]}, {"orig": [["0x100a32f8", "sub esp, 4"]], "recomp": [["0x1004b978", "sub esp, 8"]]}, {"both": [["0x100a32fb", "push ebx", "0x1004b97b"], ["0x100a32fc", "push esi", "0x1004b97c"], ["0x100a32fd", "push edi", "0x1004b97d"], ["0x100a32fe", "mov ebx, ecx", "0x1004b97e"], ["0x100a3300", "push 8", "0x1004b980"], ["0x100a3302", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004b982"], ["0x100a3307", "mov dword ptr [ebp - 0x10], eax", "0x1004b987"], ["0x100a330a", "add esp, 4", "0x1004b98a"], ["0x100a330d", "mov edi, eax", "0x1004b98d"], ["0x100a330f", "xor eax, eax", "0x1004b98f"]]}]], ["@@ -0x100a3331,43 +0x1004b9b1,41 @@", [{"both": [["0x100a3331", "mov dword ptr [edi + 4], eax", "0x1004b9b1"], ["0x100a3334", "mov dword ptr [edi], TglImpl::TextureImpl::`vftable' (VTABLE)", "0x1004b9b4"], ["0x100a333a", "jmp 0x12", "0x1004b9ba"], ["0x100a333c", "mov ecx, dword ptr [ebp - 0x10]", "0x1004b9bc"], ["0x100a333f", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004b9bf"], ["0x100a3344", "mov ecx, dword ptr [ebp - 0x10]", "0x1004b9c4"], ["0x100a3347", "jmp Tgl::Texture::~Texture (FUNCTION)", "0x1004b9c7"], ["0x100a334c", "xor esi, esi", "0x1004b9cc"], ["0x100a334e", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004b9ce"], ["0x100a3355", "mov eax, dword ptr [ebx + 4]", "0x1004b9d5"]]}, {"orig": [["0x100a3358", "lea ecx, [ebp - 0x10]"]], "recomp": [["0x1004b9d8", "lea ecx, [ebp - 0x14]"]]}, {"both": [["0x100a335b", "mov ebx, dword ptr [eax]", "0x1004b9db"], ["0x100a335d", "push ecx", "0x1004b9dd"], ["0x100a335e", "push eax", "0x1004b9de"], ["0x100a335f", "call dword ptr [ebx + 0x70]", "0x1004b9df"], ["0x100a3362", "test eax, eax", "0x1004b9e2"], ["0x100a3364", "mov eax, 1", "0x1004b9e4"], ["0x100a3369", "jge 0x2", "0x1004b9e9"], ["0x100a336b", "xor eax, eax", "0x1004b9eb"]]}, {"orig": [["0x100a336d", "cmp eax, 1"], ["0x100a3370", "jne 0x1c"], ["0x100a3372", "lea eax, [esi + 4]"], ["0x100a3375", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a3378", "push eax"], ["0x100a3379", "push <OFFSET8>"], ["0x100a337e", "push ecx"], ["0x100a337f", "mov eax, dword ptr [ecx]"], ["0x100a3381", "call dword ptr [eax]"]], "recomp": []}, {"both": [["0x100a3383", "test eax, eax", "0x1004b9ed"]]}, {"orig": [["0x100a3385", "mov eax, 1"], ["0x100a338a", "jge 0x2"], ["0x100a338c", "xor eax, eax"], ["0x100a338e", "mov ecx, dword ptr [ebp + 8]"], ["0x100a3391", "pop edi"], ["0x100a3392", "mov dword ptr [ecx], esi"]], "recomp": [["0x1004b9ef", "je 0x6"], ["0x1004b9f1", "mov eax, dword ptr [ebp - 0x14]"], ["0x1004b9f4", "mov dword ptr [esi + 4], eax"], ["0x1004b9f7", "mov eax, dword ptr [ebp + 8]"]]}, {"both": [["0x100a3394", "mov ecx, dword ptr [ebp - 0xc]", "0x1004b9fa"], ["0x100a3397", "mov dword ptr fs:[0], ecx", "0x1004b9fd"]]}, {"orig": [], "recomp": [["0x1004ba04", "pop edi"], ["0x1004ba05", "mov dword ptr [eax], esi"], ["0x1004ba07", "mov eax, 1"]]}, {"both": [["0x100a339e", "pop esi", "0x1004ba0c"], ["0x100a339f", "pop ebx", "0x1004ba0d"], ["0x100a33a0", "mov esp, ebp", "0x1004ba0e"], ["0x100a33a2", "pop ebp", "0x1004ba10"], ["0x100a33a3", "ret 4", "0x1004ba11"]]}, {"orig": [["0x100a33a6", "mov eax, <OFFSET9>"]], "recomp": [["0x1004ba14", "mov eax, <OFFSET8>"], ["0x1004ba19", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1004ba1e", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004ba21", "push eax"], ["0x1004ba22", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1004ba27", "add esp, 4"], ["0x1004ba2a", "ret "]]}]]]}, {"address": "0x100a33c0", "recomp": "0x1004ba30", "name": "TglImpl::GroupImpl::SetMaterialMode", "matching": 0.5, "diff": [["@@ -0x100a33c0,26 +0x1004ba30,26 @@", [{"both": [["0x100a33c0", "mov eax, dword ptr [esp + 4]", "0x1004ba30"], ["0x100a33c4", "sub esp, 4", "0x1004ba34"]]}, {"orig": [["0x100a33c7", "mov ecx, dword ptr [ecx + 4]"]], "recomp": []}, {"both": [["0x100a33ca", "test eax, eax", "0x1004ba37"]]}, {"orig": [["0x100a33cc", "je 0x29"]], "recomp": [["0x1004ba39", "je 0x2c"]]}, {"both": [["0x100a33ce", "cmp eax, 1", "0x1004ba3b"]]}, {"orig": [["0x100a33d1", "je 0x2b"]], "recomp": [["0x1004ba3e", "je 0x2e"]]}, {"both": [["0x100a33d3", "cmp eax, 2", "0x1004ba40"]]}, {"orig": [["0x100a33d6", "je 0x2d"], ["0x100a33d8", "mov eax, dword ptr [esp]"]], "recomp": [["0x1004ba43", "je 0x30"], ["0x1004ba45", "mov edx, dword ptr [esp]"], ["0x1004ba49", "mov eax, dword ptr [ecx + 4]"], ["0x1004ba4c", "push edx"]]}, {"both": [["0x100a33dc", "push eax", "0x1004ba4d"]]}, {"orig": [["0x100a33dd", "push ecx"], ["0x100a33de", "mov eax, dword ptr [ecx]"]], "recomp": [["0x1004ba4e", "mov eax, dword ptr [eax]"]]}, {"both": [["0x100a33e0", "call dword ptr [eax + 0xec]", "0x1004ba50"], ["0x100a33e6", "test eax, eax", "0x1004ba56"], ["0x100a33e8", "mov eax, 1", "0x1004ba58"], ["0x100a33ed", "jge 0x2", "0x1004ba5d"], ["0x100a33ef", "xor eax, eax", "0x1004ba5f"], ["0x100a33f1", "add esp, 4", "0x1004ba61"], ["0x100a33f4", "ret 4", "0x1004ba64"]]}, {"orig": [["0x100a33f7", "mov eax, 1"], ["0x100a33fc", "jmp -0x22"], ["0x100a33fe", "mov eax, 2"], ["0x100a3403", "jmp -0x29"], ["0x100a3405", "xor eax, eax"], ["0x100a3407", "jmp -0x2d"]], "recomp": [["0x1004ba67", "mov edx, 1"], ["0x1004ba6c", "jmp -0x25"], ["0x1004ba6e", "mov edx, 2"], ["0x1004ba73", "jmp -0x2c"], ["0x1004ba75", "xor edx, edx"], ["0x1004ba77", "jmp -0x30"]]}]]]}, {"address": "0x100a3410", "recomp": "0x1004ba80", "name": "TglImpl::GroupImpl::Add", "matching": 1.0, "diff": []}, {"address": "0x100a3430", "recomp": "0x1004baa0", "name": "TglImpl::GroupImpl::Add", "matching": 1.0, "diff": []}, {"address": "0x100a3450", "recomp": "0x1004bac0", "name": "TglImpl::GroupImpl::Remove", "matching": 1.0, "diff": []}, {"address": "0x100a3480", "recomp": "0x1004baf0", "name": "TglImpl::GroupImpl::Remove", "matching": 1.0, "diff": []}, {"address": "0x100a34b0", "recomp": "0x1004bb20", "name": "TglImpl::GroupImpl::RemoveAll", "matching": 0.0, "stub": true}, {"address": "0x100a3540", "recomp": "0x1004bb30", "name": "TglImpl::GroupImpl::Unknown", "matching": 0.0, "stub": true}, {"address": "0x100a36f0", "recomp": "0x1004bb40", "name": "TglImpl::CameraImpl::ImplementationDataPtr", "matching": 1.0, "diff": []}, {"address": "0x100a3700", "recomp": "0x1004bb50", "name": "TglImpl::CameraImpl::SetTransformation", "matching": 0.3300970873786408, "diff": [["@@ -0x100a3700,54 +0x1004bb50,49 @@", [{"orig": [["0x100a3700", "mov edx, dword ptr [esp + 4]"]], "recomp": []}, {"both": [["0x100a3704", "sub esp, 0x4c", "0x1004bb50"]]}, {"orig": [["0x100a3707", "push ebx"]], "recomp": [["0x1004bb53", "lea edx, [esp + 0xc]"]]}, {"both": [["0x100a3708", "push esi", "0x1004bb57"], ["0x100a3709", "push edi", "0x1004bb58"]]}, {"orig": [["0x100a370a", "mov esi, dword ptr [ecx + 4]"], ["0x100a370d", "lea ecx, [esp + 0x18]"], ["0x100a3711", "mov eax, dword ptr [edx]"], ["0x100a3713", "mov ebx, dword ptr [edx + 4]"], ["0x100a3716", "mov edi, dword ptr [edx + 8]"], ["0x100a3719", "mov dword ptr [ecx], eax"], ["0x100a371b", "mov eax, dword ptr [edx + 0xc]"], ["0x100a371e", "mov dword ptr [ecx + 4], ebx"], ["0x100a3721", "mov dword ptr [ecx + 8], edi"]], "recomp": [["0x1004bb59", "mov esi, ecx"], ["0x1004bb5b", "mov ecx, dword ptr [esp + 0x58]"], ["0x1004bb5f", "mov eax, dword ptr [ecx]"], ["0x1004bb61", "mov edi, dword ptr [ecx + 4]"], ["0x1004bb64", "mov dword ptr [edx], eax"], ["0x1004bb66", "add edx, 0x10"], ["0x1004bb69", "mov eax, dword ptr [ecx + 8]"]]}, {"both": [["0x100a3724", "add ecx, 0x10", "0x1004bb6c"]]}, {"orig": [["0x100a3727", "add edx, 0x10"], ["0x100a372a", "mov dword ptr [ecx - 4], eax"], ["0x100a372d", "lea eax, [esp + 0x58]"], ["0x100a3731", "cmp ecx, eax"]], "recomp": [["0x1004bb6f", "mov dword ptr [edx - 0xc], edi"], ["0x1004bb72", "mov edi, dword ptr [ecx - 4]"], ["0x1004bb75", "mov dword ptr [edx - 8], eax"], ["0x1004bb78", "lea eax, [esp + 0x54]"], ["0x1004bb7c", "mov dword ptr [edx - 4], edi"], ["0x1004bb7f", "cmp edx, eax"]]}, {"both": [["0x100a3733", "jb -0x24", "0x1004bb81"]]}, {"orig": [["0x100a3735", "mov ebx, dword ptr [esi]"], ["0x100a3737", "lea eax, [esp + 0xc]"]], "recomp": [["0x1004bb83", "mov eax, dword ptr [esi + 4]"], ["0x1004bb86", "lea ecx, [esp + 8]"], ["0x1004bb8a", "push ecx"], ["0x1004bb8b", "push 0"]]}, {"both": [["0x100a373b", "push eax", "0x1004bb8d"]]}, {"orig": [], "recomp": [["0x1004bb8e", "mov edi, dword ptr [eax]"], ["0x1004bb90", "call dword ptr [edi + 0x60]"], ["0x1004bb93", "mov eax, dword ptr [esi + 4]"], ["0x1004bb96", "lea ecx, [esp + 0x14]"], ["0x1004bb9a", "push ecx"]]}, {"both": [["0x100a373c", "push 0", "0x1004bb9b"]]}, {"orig": [["0x100a373e", "mov edi, dword ptr [ebx + 0x60]"], ["0x100a3741", "push esi"], ["0x100a3742", "call edi"], ["0x100a3744", "lea eax, [esp + 0x18]"]], "recomp": []}, {"both": [["0x100a3748", "push eax", "0x1004bb9d"]]}, {"orig": [], "recomp": [["0x1004bb9e", "mov edi, dword ptr [eax]"], ["0x1004bba0", "call dword ptr [edi + 0x38]"], ["0x1004bba3", "mov edi, eax"], ["0x1004bba5", "lea ecx, [esp + 8]"], ["0x1004bba9", "mov eax, dword ptr [esi + 4]"], ["0x1004bbac", "push ecx"], ["0x1004bbad", "mov esi, dword ptr [eax]"]]}, {"both": [["0x100a3749", "push 0", "0x1004bbaf"]]}, {"orig": [["0x100a374b", "push esi"], ["0x100a374c", "call dword ptr [ebx + 0x38]"], ["0x100a374f", "mov ebx, eax"], ["0x100a3751", "lea eax, [esp + 0xc]"]], "recomp": []}, {"both": [["0x100a3755", "push eax", "0x1004bbb1"]]}, {"orig": [["0x100a3756", "push 0"], ["0x100a3758", "push esi"], ["0x100a3759", "call edi"]], "recomp": [["0x1004bbb2", "call dword ptr [esi + 0x60]"]]}, {"both": [["0x100a375b", "mov eax, 1", "0x1004bbb5"]]}, {"orig": [["0x100a3760", "test ebx, ebx"]], "recomp": [["0x1004bbba", "test edi, edi"]]}, {"both": [["0x100a3762", "jge 0x2", "0x1004bbbc"], ["0x100a3764", "xor eax, eax", "0x1004bbbe"], ["0x100a3766", "pop edi", "0x1004bbc0"], ["0x100a3767", "pop esi", "0x1004bbc1"]]}, {"orig": [["0x100a3768", "pop ebx"]], "recomp": []}, {"both": [["0x100a3769", "add esp, 0x4c", "0x1004bbc2"], ["0x100a376c", "ret 4", "0x1004bbc5"]]}, {"orig": [["0x100a376f", "int3 "], ["0x100a3770", "lea eax, [ecx + 4]"], ["0x100a3773", "ret "], ["0x100a3774", "int3 "], ["0x100a3775", "int3 "], ["0x100a3776", "int3 "], ["0x100a3777", "int3 "]], "recomp": []}]]]}, {"address": "0x100a3770", "recomp": "0x1004bbd0", "name": "TglImpl::LightImpl::ImplementationDataPtr", "matching": 1.0, "diff": []}, {"address": "0x100a3780", "recomp": "0x1004bbe0", "name": "TglImpl::LightImpl::SetTransformation", "matching": 0.45161290322580644, "diff": [["@@ -0x100a3780,31 +0x1004bbe0,31 @@", [{"both": [["0x100a3780", "sub esp, 0x40", "0x1004bbe0"]]}, {"orig": [["0x100a3783", "mov edx, dword ptr [ecx + 4]"], ["0x100a3786", "mov ecx, dword ptr [esp + 0x44]"]], "recomp": [["0x1004bbe3", "lea edx, [esp]"]]}, {"both": [["0x100a378a", "push esi", "0x1004bbe7"]]}, {"orig": [["0x100a378b", "lea esi, [esp + 4]"], ["0x100a378f", "mov eax, dword ptr [ecx]"]], "recomp": [["0x1004bbe8", "mov esi, dword ptr [esp + 0x48]"], ["0x1004bbec", "mov eax, dword ptr [esi]"], ["0x1004bbee", "add edx, 0x10"]]}, {"both": [["0x100a3791", "add esi, 0x10", "0x1004bbf1"]]}, {"orig": [["0x100a3794", "add ecx, 0x10"], ["0x100a3797", "mov dword ptr [esi - 0x10], eax"], ["0x100a379a", "mov eax, dword ptr [ecx - 0xc]"], ["0x100a379d", "mov dword ptr [esi - 0xc], eax"], ["0x100a37a0", "mov eax, dword ptr [ecx - 8]"], ["0x100a37a3", "mov dword ptr [esi - 8], eax"], ["0x100a37a6", "mov eax, dword ptr [ecx - 4]"], ["0x100a37a9", "mov dword ptr [esi - 4], eax"]], "recomp": [["0x1004bbf4", "mov dword ptr [edx - 0x10], eax"], ["0x1004bbf7", "mov eax, dword ptr [esi - 0xc]"], ["0x1004bbfa", "mov dword ptr [edx - 0xc], eax"], ["0x1004bbfd", "mov eax, dword ptr [esi - 8]"], ["0x1004bc00", "mov dword ptr [edx - 8], eax"], ["0x1004bc03", "mov eax, dword ptr [esi - 4]"], ["0x1004bc06", "mov dword ptr [edx - 4], eax"]]}, {"both": [["0x100a37ac", "lea eax, [esp + 0x44]", "0x1004bc09"]]}, {"orig": [["0x100a37b0", "cmp esi, eax"]], "recomp": [["0x1004bc0d", "cmp edx, eax"]]}, {"both": [["0x100a37b2", "jb -0x25", "0x1004bc0f"]]}, {"orig": [["0x100a37b4", "lea eax, [esp + 4]"], ["0x100a37b8", "mov esi, dword ptr [edx]"]], "recomp": [["0x1004bc11", "mov eax, dword ptr [ecx + 4]"], ["0x1004bc14", "lea ecx, [esp + 4]"], ["0x1004bc18", "push ecx"], ["0x1004bc19", "push 0"]]}, {"both": [["0x100a37ba", "push eax", "0x1004bc1b"]]}, {"orig": [["0x100a37bb", "push 0"], ["0x100a37bd", "push edx"]], "recomp": [["0x1004bc1c", "mov esi, dword ptr [eax]"]]}, {"both": [["0x100a37be", "call dword ptr [esi + 0x38]", "0x1004bc1e"], ["0x100a37c1", "test eax, eax", "0x1004bc21"], ["0x100a37c3", "mov eax, 1", "0x1004bc23"], ["0x100a37c8", "jge 0x2", "0x1004bc28"], ["0x100a37ca", "xor eax, eax", "0x1004bc2a"], ["0x100a37cc", "pop esi", "0x1004bc2c"], ["0x100a37cd", "add esp, 0x40", "0x1004bc2d"], ["0x100a37d0", "ret 4", "0x1004bc30"]]}]]]}, {"address": "0x100a37e0", "recomp": "0x1004bc40", "name": "TglImpl::LightImpl::SetColor", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a37e0,14 +0x1004bc40,14 @@", [{"both": [["0x100a37e0", "sub esp, 8", "0x1004bc40"], ["0x100a37e3", "mov eax, dword ptr [ecx + 4]", "0x1004bc43"]]}, {"orig": [["0x100a37e6", "lea ecx, [esp]"], ["0x100a37ea", "push ecx"]], "recomp": [["0x1004bc46", "lea edx, [esp]"], ["0x1004bc4a", "push edx"]]}, {"both": [["0x100a37eb", "push eax", "0x1004bc4b"], ["0x100a37ec", "mov eax, dword ptr [eax]", "0x1004bc4c"], ["0x100a37ee", "call dword ptr [eax + 0x54]", "0x1004bc4e"], ["0x100a37f1", "lea ecx, [esp + 4]", "0x1004bc51"], ["0x100a37f5", "mov edx, dword ptr [esp]", "0x1004bc55"], ["0x100a37f9", "push ecx", "0x1004bc59"], ["0x100a37fa", "push 0", "0x1004bc5a"], ["0x100a37fc", "push edx", "0x1004bc5c"], ["0x100a37fd", "mov eax, dword ptr [edx]", "0x1004bc5d"], ["0x100a37ff", "call dword ptr [eax + 0x10]", "0x1004bc5f"]]}]]]}, {"address": "0x100a3830", "recomp": "0x1004bc90", "name": "TglImpl::MeshBuilderImpl::ImplementationDataPtr", "matching": 1.0, "diff": []}, {"address": "0x100a3840", "recomp": "0x1004bca0", "name": "TglImpl::MeshBuilderImpl::CreateMesh", "matching": 0.6550218340611353, "diff": [["@@ -0x100a3840,170 +0x1004bca0,171 @@", [{"both": [["0x100a3840", "mov eax, dword ptr fs:[0]", "0x1004bca0"], ["0x100a3846", "push ebp", "0x1004bca6"], ["0x100a3847", "mov ebp, esp", "0x1004bca7"], ["0x100a3849", "push -1", "0x1004bca9"], ["0x100a384b", "push <OFFSET1>", "0x1004bcab"], ["0x100a3850", "push eax", "0x1004bcb0"], ["0x100a3851", "mov dword ptr fs:[0], esp", "0x1004bcb1"]]}, {"orig": [["0x100a3858", "sub esp, 0x24"]], "recomp": [["0x1004bcb8", "sub esp, 0x20"]]}, {"both": [["0x100a385b", "push ebx", "0x1004bcbb"], ["0x100a385c", "push esi", "0x1004bcbc"], ["0x100a385d", "push edi", "0x1004bcbd"], ["0x100a385e", "push 8", "0x1004bcbe"], ["0x100a3860", "mov edi, ecx", "0x1004bcc0"], ["0x100a3862", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004bcc2"]]}, {"orig": [["0x100a3867", "mov dword ptr [ebp - 0x18], eax"]], "recomp": [["0x1004bcc7", "mov dword ptr [ebp - 0x14], eax"]]}, {"both": [["0x100a386a", "add esp, 4", "0x1004bcca"], ["0x100a386d", "mov esi, eax", "0x1004bccd"], ["0x100a386f", "xor eax, eax", "0x1004bccf"], ["0x100a3871", "mov dword ptr [ebp - 4], eax", "0x1004bcd1"], ["0x100a3874", "test esi, esi", "0x1004bcd4"], ["0x100a3876", "je 0x35", "0x1004bcd6"], ["0x100a3878", "mov byte ptr [ebp - 4], 1", "0x1004bcd8"], ["0x100a387c", "mov dword ptr [esi], Tgl::Object::`vftable' (VTABLE)", "0x1004bcdc"], ["0x100a3882", "mov dword ptr [ebp - 0x10], esi", "0x1004bce2"], ["0x100a3885", "mov byte ptr [ebp - 4], 2", "0x1004bce5"], ["0x100a3889", "mov dword ptr [esi], Tgl::Mesh::`vftable' (VTABLE)", "0x1004bce9"], ["0x100a388f", "mov byte ptr [ebp - 4], al", "0x1004bcef"], ["0x100a3892", "mov dword ptr [esi + 4], eax", "0x1004bcf2"], ["0x100a3895", "mov dword ptr [esi], TglImpl::MeshImpl::`vftable' (VTABLE)", "0x1004bcf5"], ["0x100a389b", "jmp 0x17", "0x1004bcfb"]]}, {"orig": [["0x100a389d", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": [["0x1004bcfd", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a38a0", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004bd00"]]}, {"orig": [["0x100a38a5", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": [["0x1004bd05", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a38a8", "jmp Tgl::Mesh::~Mesh (FUNCTION)", "0x1004bd08"], ["0x100a38ad", "mov dword ptr [ebp - 0x10], 0", "0x1004bd0d"], ["0x100a38b4", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004bd14"], ["0x100a38bb", "mov eax, dword ptr [ebp - 0x10]", "0x1004bd1b"], ["0x100a38be", "mov ecx, dword ptr [edi + 4]", "0x1004bd1e"]]}, {"orig": [["0x100a38c1", "mov dword ptr [ebp - 0x28], eax"], ["0x100a38c4", "mov dword ptr [ebp - 0x20], ecx"]], "recomp": [["0x1004bd21", "mov dword ptr [ebp - 0x24], eax"], ["0x1004bd24", "mov dword ptr [ebp - 0x1c], ecx"]]}, {"both": [["0x100a38c7", "mov eax, dword ptr [ebp + 8]", "0x1004bd27"]]}, {"orig": [["0x100a38ca", "mov dword ptr [ebp - 0x2c], 0"]], "recomp": [["0x1004bd2a", "mov dword ptr [ebp - 0x28], 0"]]}, {"both": [["0x100a38d1", "lea esi, [eax + eax*2]", "0x1004bd31"]]}, {"orig": [["0x100a38d4", "mov dword ptr [ebp - 0x24], 0"]], "recomp": [["0x1004bd34", "mov dword ptr [ebp - 0x20], 0"]]}, {"both": [["0x100a38db", "lea eax, [esi*4]", "0x1004bd3b"], ["0x100a38e2", "push eax", "0x1004bd42"], ["0x100a38e3", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004bd43"], ["0x100a38e8", "add esp, 4", "0x1004bd48"]]}, {"orig": [["0x100a38eb", "mov dword ptr [ebp - 0x1c], eax"]], "recomp": [["0x1004bd4b", "mov dword ptr [ebp - 0x18], eax"]]}, {"both": [["0x100a38ee", "mov eax, dword ptr [ebp + 0xc]", "0x1004bd4e"], ["0x100a38f1", "shl eax, 2", "0x1004bd51"], ["0x100a38f4", "lea ebx, [eax + eax*8]", "0x1004bd54"], ["0x100a38f7", "push ebx", "0x1004bd57"], ["0x100a38f8", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004bd58"], ["0x100a38fd", "add esp, 4", "0x1004bd5d"], ["0x100a3900", "mov edi, eax", "0x1004bd60"], ["0x100a3902", "mov ecx, ebx", "0x1004bd62"]]}, {"orig": [["0x100a3904", "mov dword ptr [ebp - 0x18], eax"]], "recomp": [["0x1004bd64", "mov dword ptr [ebp - 0x14], eax"]]}, {"both": [["0x100a3907", "shr ecx, 2", "0x1004bd67"], ["0x100a390a", "xor eax, eax", "0x1004bd6a"], ["0x100a390c", "rep stosd dword ptr es:[edi], eax", "0x1004bd6c"], ["0x100a390e", "mov ecx, ebx", "0x1004bd6e"], ["0x100a3910", "push 8", "0x1004bd70"], ["0x100a3912", "and ecx, 3", "0x1004bd72"], ["0x100a3915", "rep stosb byte ptr es:[edi], al", "0x1004bd75"], ["0x100a3917", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004bd77"], ["0x100a391c", "add esp, 4", "0x1004bd7c"], ["0x100a391f", "mov ecx, dword ptr [ebp - 0x10]", "0x1004bd7f"]]}, {"orig": [["0x100a3922", "mov edx, dword ptr [ebp - 0x20]"]], "recomp": [["0x1004bd82", "mov edx, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100a3925", "test esi, esi", "0x1004bd85"], ["0x100a3927", "mov dword ptr [ecx + 4], eax", "0x1004bd87"], ["0x100a392a", "mov dword ptr [eax], edx", "0x1004bd8a"], ["0x100a392c", "jle 0xa1", "0x1004bd8c"]]}, {"orig": [["0x100a3932", "mov edx, dword ptr [ebp - 0x1c]"], ["0x100a3935", "mov ecx, dword ptr [ebp - 0x18]"], ["0x100a3938", "mov ebx, dword ptr [ebp + 0x20]"], ["0x100a393b", "mov edi, dword ptr [ebp + 0x1c]"], ["0x100a393e", "add edi, 2"], ["0x100a3941", "mov dword ptr [ebp - 0x30], esi"], ["0x100a3944", "test byte ptr [edi + 1], 0x80"]], "recomp": [["0x1004bd92", "mov ebx, dword ptr [ebp - 0x18]"], ["0x1004bd95", "mov edi, dword ptr [ebp - 0x14]"], ["0x1004bd98", "mov edx, dword ptr [ebp + 0x20]"], ["0x1004bd9b", "mov ecx, dword ptr [ebp + 0x1c]"], ["0x1004bd9e", "add ecx, 2"], ["0x1004bda1", "mov dword ptr [ebp - 0x2c], esi"], ["0x1004bda4", "test byte ptr [ecx + 1], 0x80"]]}, {"both": [["0x100a3948", "je 0x6f", "0x1004bda8"], ["0x100a394a", "xor eax, eax", "0x1004bdaa"]]}, {"orig": [["0x100a394c", "mov esi, dword ptr [ebp + 0x10]"], ["0x100a394f", "mov ax, word ptr [edi - 2]"], ["0x100a3953", "lea eax, [eax + eax*2]"], ["0x100a3956", "lea eax, [esi + eax*4]"]], "recomp": [["0x1004bdac", "mov ax, word ptr [ecx - 2]"], ["0x1004bdb0", "lea esi, [eax + eax*2]"], ["0x1004bdb3", "mov eax, dword ptr [ebp + 0x10]"], ["0x1004bdb6", "lea eax, [eax + esi*4]"]]}, {"both": [["0x100a3959", "mov esi, dword ptr [eax]", "0x1004bdb9"]]}, {"orig": [["0x100a395b", "mov dword ptr [ecx], esi"]], "recomp": [["0x1004bdbb", "mov dword ptr [edi], esi"]]}, {"both": [["0x100a395d", "mov esi, dword ptr [eax + 4]", "0x1004bdbd"]]}, {"orig": [["0x100a3960", "mov dword ptr [ecx + 4], esi"], ["0x100a3963", "mov esi, dword ptr [eax + 8]"], ["0x100a3966", "xor eax, eax"], ["0x100a3968", "mov dword ptr [ecx + 8], esi"], ["0x100a396b", "mov ax, word ptr [edi]"], ["0x100a396e", "mov esi, dword ptr [ebp + 0x14]"]], "recomp": [["0x1004bdc0", "mov dword ptr [edi + 4], esi"], ["0x1004bdc3", "mov eax, dword ptr [eax + 8]"], ["0x1004bdc6", "mov dword ptr [edi + 8], eax"], ["0x1004bdc9", "xor eax, eax"], ["0x1004bdcb", "mov ax, word ptr [ecx]"]]}, {"both": [["0x100a3971", "and eax, 0x7fff", "0x1004bdce"]]}, {"orig": [["0x100a3976", "lea eax, [eax + eax*2]"]], "recomp": [["0x1004bdd3", "lea esi, [eax + eax*2]"], ["0x1004bdd6", "mov eax, dword ptr [ebp + 0x14]"]]}, {"both": [["0x100a3979", "cmp dword ptr [ebp + 0x20], 0", "0x1004bdd9"]]}, {"orig": [["0x100a397d", "lea eax, [esi + eax*4]"]], "recomp": [["0x1004bddd", "lea eax, [eax + esi*4]"]]}, {"both": [["0x100a3980", "mov esi, dword ptr [eax]", "0x1004bde0"]]}, {"orig": [["0x100a3982", "mov dword ptr [ecx + 0xc], esi"]], "recomp": [["0x1004bde2", "mov dword ptr [edi + 0xc], esi"]]}, {"both": [["0x100a3985", "mov esi, dword ptr [eax + 4]", "0x1004bde5"]]}, {"orig": [["0x100a3988", "mov dword ptr [ecx + 0x10], esi"], ["0x100a398b", "mov esi, dword ptr [eax + 8]"], ["0x100a398e", "mov dword ptr [ecx + 0x14], esi"]], "recomp": [["0x1004bde8", "mov dword ptr [edi + 0x10], esi"], ["0x1004bdeb", "mov eax, dword ptr [eax + 8]"], ["0x1004bdee", "mov dword ptr [edi + 0x14], eax"]]}, {"both": [["0x100a3991", "je 0x19", "0x1004bdf1"], ["0x100a3993", "cmp dword ptr [ebp + 0x18], 0", "0x1004bdf3"], ["0x100a3997", "je 0x13", "0x1004bdf7"]]}, {"orig": [["0x100a3999", "mov esi, dword ptr [ebx]"]], "recomp": [["0x1004bdf9", "mov esi, dword ptr [edx]"]]}, {"both": [["0x100a399b", "mov eax, dword ptr [ebp + 0x18]", "0x1004bdfb"]]}, {"orig": [["0x100a399e", "lea esi, [eax + esi*8]"], ["0x100a39a1", "mov eax, dword ptr [esi]"], ["0x100a39a3", "mov dword ptr [ecx + 0x18], eax"], ["0x100a39a6", "mov eax, dword ptr [esi + 4]"], ["0x100a39a9", "mov dword ptr [ecx + 0x1c], eax"], ["0x100a39ac", "mov eax, dword ptr [ebp - 0x2c]"], ["0x100a39af", "add ecx, 0x24"], ["0x100a39b2", "mov dword ptr [edx], eax"], ["0x100a39b4", "inc dword ptr [ebp - 0x2c]"]], "recomp": [["0x1004bdfe", "lea eax, [eax + esi*8]"], ["0x1004be01", "mov esi, dword ptr [eax]"], ["0x1004be03", "mov dword ptr [edi + 0x18], esi"], ["0x1004be06", "mov eax, dword ptr [eax + 4]"], ["0x1004be09", "mov dword ptr [edi + 0x1c], eax"], ["0x1004be0c", "mov eax, dword ptr [ebp - 0x28]"], ["0x1004be0f", "add edi, 0x24"], ["0x1004be12", "mov dword ptr [ebx], eax"], ["0x1004be14", "inc dword ptr [ebp - 0x28]"]]}, {"both": [["0x100a39b7", "jmp 0x8", "0x1004be17"], ["0x100a39b9", "xor eax, eax", "0x1004be19"]]}, {"orig": [["0x100a39bb", "mov ax, word ptr [edi - 2]"], ["0x100a39bf", "mov dword ptr [edx], eax"]], "recomp": [["0x1004be1b", "mov ax, word ptr [ecx - 2]"], ["0x1004be1f", "mov dword ptr [ebx], eax"], ["0x1004be21", "add ebx, 4"]]}, {"both": [["0x100a39c1", "add edx, 4", "0x1004be24"]]}, {"orig": [["0x100a39c4", "add ebx, 4"], ["0x100a39c7", "add edi, 4"], ["0x100a39ca", "dec dword ptr [ebp - 0x30]"]], "recomp": [["0x1004be27", "add ecx, 4"], ["0x1004be2a", "dec dword ptr [ebp - 0x2c]"]]}, {"both": [["0x100a39cd", "jne -0x8f", "0x1004be2d"]]}, {"orig": [["0x100a39d3", "mov ecx, dword ptr [ebp - 0x20]"], ["0x100a39d6", "mov ebx, dword ptr [ebp + 0xc]"], ["0x100a39d9", "lea eax, [ebp - 0x24]"]], "recomp": [["0x1004be33", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x1004be36", "lea eax, [ebp - 0x20]"], ["0x1004be39", "push eax"]]}, {"both": [["0x100a39dc", "mov edx, dword ptr [ebp + 8]", "0x1004be3a"], ["0x100a39df", "mov esi, dword ptr [ecx]", "0x1004be3d"]]}, {"orig": [["0x100a39e1", "push eax"], ["0x100a39e2", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x100a39e5", "mov eax, dword ptr [ebp - 0x20]"]], "recomp": [["0x1004be3f", "mov eax, dword ptr [ebp + 0xc]"], ["0x1004be42", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100a39e8", "push ecx", "0x1004be45"], ["0x100a39e9", "push 3", "0x1004be46"], ["0x100a39eb", "push edx", "0x1004be48"]]}, {"orig": [], "recomp": [["0x1004be49", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x1004be4c", "push eax"]]}, {"both": [["0x100a39ec", "mov edi, 1", "0x1004be4d"]]}, {"orig": [["0x100a39f1", "push ebx"], ["0x100a39f2", "push eax"]], "recomp": [["0x1004be52", "push ecx"]]}, {"both": [["0x100a39f3", "call dword ptr [esi + 0x38]", "0x1004be53"], ["0x100a39f6", "test eax, eax", "0x1004be56"], ["0x100a39f8", "jge 0x2", "0x1004be58"], ["0x100a39fa", "xor edi, edi", "0x1004be5a"], ["0x100a39fc", "cmp edi, 1", "0x1004be5c"]]}, {"orig": [["0x100a39ff", "jne 0x2e"], ["0x100a3a01", "mov edx, dword ptr [ebp - 0x24]"], ["0x100a3a04", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a3a07", "mov eax, dword ptr [ecx + 4]"], ["0x100a3a0a", "mov dword ptr [eax + 4], edx"], ["0x100a3a0d", "mov edx, dword ptr [ebp - 0x18]"], ["0x100a3a10", "push edx"], ["0x100a3a11", "mov ecx, dword ptr [ebp - 0x24]"], ["0x100a3a14", "push ebx"]], "recomp": [["0x1004be5f", "jne 0x31"]]}, {"both": [["0x100a3a15", "mov eax, dword ptr [ebp - 0x20]", "0x1004be61"]]}, {"orig": [], "recomp": [["0x1004be64", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1004be67", "mov edx, dword ptr [ecx + 4]"], ["0x1004be6a", "mov ecx, dword ptr [ebp + 0xc]"], ["0x1004be6d", "mov dword ptr [edx + 4], eax"], ["0x1004be70", "mov eax, dword ptr [ebp - 0x14]"], ["0x1004be73", "push eax"], ["0x1004be74", "mov edx, dword ptr [ebp - 0x20]"], ["0x1004be77", "push ecx"], ["0x1004be78", "mov eax, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100a3a18", "push 0", "0x1004be7b"], ["0x100a3a1a", "mov edi, 1", "0x1004be7d"]]}, {"orig": [["0x100a3a1f", "push ecx"]], "recomp": [["0x1004be82", "push edx"]]}, {"both": [["0x100a3a20", "push eax", "0x1004be83"], ["0x100a3a21", "call dword ptr [esi + 0x3c]", "0x1004be84"], ["0x100a3a24", "test eax, eax", "0x1004be87"], ["0x100a3a26", "jge 0x2", "0x1004be89"], ["0x100a3a28", "xor edi, edi", "0x1004be8b"], ["0x100a3a2a", "cmp edi, 1", "0x1004be8d"], ["0x100a3a2d", "je 0x1f", "0x1004be90"], ["0x100a3a2f", "mov ecx, dword ptr [ebp - 0x10]", "0x1004be92"], ["0x100a3a32", "mov eax, dword ptr [ecx + 4]", "0x1004be95"], ["0x100a3a35", "test eax, eax", "0x1004be98"]]}]], ["@@ -0x100a3a56,50 +0x1004beb9,47 @@", [{"both": [["0x100a3a56", "mov ecx, dword ptr [eax]", "0x1004beb9"], ["0x100a3a58", "mov edx, dword ptr [eax + 4]", "0x1004bebb"], ["0x100a3a5b", "push edx", "0x1004bebe"], ["0x100a3a5c", "mov edi, 1", "0x1004bebf"], ["0x100a3a61", "push ecx", "0x1004bec4"], ["0x100a3a62", "mov eax, dword ptr [ecx]", "0x1004bec5"], ["0x100a3a64", "call dword ptr [eax + 0x48]", "0x1004bec7"], ["0x100a3a67", "test eax, eax", "0x1004beca"], ["0x100a3a69", "jge 0x2", "0x1004becc"], ["0x100a3a6b", "xor edi, edi", "0x1004bece"]]}, {"orig": [["0x100a3a6d", "cmp dword ptr [ebp - 0x1c], 0"], ["0x100a3a71", "je 0xc"], ["0x100a3a73", "mov eax, dword ptr [ebp - 0x1c]"], ["0x100a3a76", "push eax"], ["0x100a3a77", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100a3a7c", "add esp, 4"]], "recomp": []}, {"both": [["0x100a3a7f", "cmp dword ptr [ebp - 0x18], 0", "0x1004bed0"], ["0x100a3a83", "je 0xc", "0x1004bed4"], ["0x100a3a85", "mov eax, dword ptr [ebp - 0x18]", "0x1004bed6"]]}, {"orig": [], "recomp": [["0x1004bed9", "push eax"], ["0x1004beda", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1004bedf", "add esp, 4"], ["0x1004bee2", "cmp dword ptr [ebp - 0x14], 0"], ["0x1004bee6", "je 0xc"], ["0x1004bee8", "mov eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a3a88", "push eax", "0x1004beeb"], ["0x100a3a89", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004beec"], ["0x100a3a8e", "add esp, 4", "0x1004bef1"], ["0x100a3a91", "test edi, edi", "0x1004bef4"], ["0x100a3a93", "jne 0x16", "0x1004bef6"], ["0x100a3a95", "cmp dword ptr [ebp - 0x10], 0", "0x1004bef8"], ["0x100a3a99", "je 0x9", "0x1004befc"], ["0x100a3a9b", "push 1", "0x1004befe"], ["0x100a3a9d", "mov ecx, dword ptr [ebp - 0x10]", "0x1004bf00"], ["0x100a3aa0", "mov eax, dword ptr [ecx]", "0x1004bf03"], ["0x100a3aa2", "call dword ptr [eax]", "0x1004bf05"]]}, {"orig": [["0x100a3aa4", "mov dword ptr [ebp - 0x28], 0"], ["0x100a3aab", "mov eax, dword ptr [ebp - 0x28]"]], "recomp": [["0x1004bf07", "mov dword ptr [ebp - 0x24], 0"], ["0x1004bf0e", "mov eax, dword ptr [ebp - 0x24]"]]}, {"both": [["0x100a3aae", "mov ecx, dword ptr [ebp - 0xc]", "0x1004bf11"], ["0x100a3ab1", "mov dword ptr fs:[0], ecx", "0x1004bf14"], ["0x100a3ab8", "pop edi", "0x1004bf1b"], ["0x100a3ab9", "pop esi", "0x1004bf1c"], ["0x100a3aba", "pop ebx", "0x1004bf1d"], ["0x100a3abb", "mov esp, ebp", "0x1004bf1e"], ["0x100a3abd", "pop ebp", "0x1004bf20"], ["0x100a3abe", "ret 0x20", "0x1004bf21"], ["0x100a3ac1", "mov eax, <OFFSET9>", "0x1004bf24"], ["0x100a3ac6", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004bf29"]]}, {"orig": [["0x100a3acb", "mov eax, dword ptr [ebp - 0x18]"]], "recomp": [["0x1004bf2e", "mov eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100a3ace", "push eax", "0x1004bf31"], ["0x100a3acf", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004bf32"], ["0x100a3ad4", "add esp, 4", "0x1004bf37"], ["0x100a3ad7", "ret ", "0x1004bf3a"]]}, {"orig": [["0x100a3ad8", "int3 "], ["0x100a3ad9", "int3 "], ["0x100a3ada", "int3 "]], "recomp": []}]]]}, {"address": "0x100a3ae0", "recomp": "0x1004c090", "name": "TglImpl::MeshBuilderImpl::GetBoundingBox", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a3ae0,14 +0x1004c090,14 @@", [{"both": [["0x100a3ae0", "sub esp, 0x18", "0x1004c090"], ["0x100a3ae3", "mov eax, dword ptr [ecx + 4]", "0x1004c093"]]}, {"orig": [["0x100a3ae6", "lea ecx, [esp]"], ["0x100a3aea", "push ecx"]], "recomp": [["0x1004c096", "lea edx, [esp]"], ["0x1004c09a", "push edx"]]}, {"both": [["0x100a3aeb", "push eax", "0x1004c09b"], ["0x100a3aec", "mov eax, dword ptr [eax]", "0x1004c09c"], ["0x100a3aee", "call dword ptr [eax + 0x34]", "0x1004c09e"], ["0x100a3af1", "test eax, eax", "0x1004c0a1"], ["0x100a3af3", "mov eax, 1", "0x1004c0a3"], ["0x100a3af8", "jge 0x2", "0x1004c0a8"], ["0x100a3afa", "xor eax, eax", "0x1004c0aa"], ["0x100a3afc", "cmp eax, 1", "0x1004c0ac"], ["0x100a3aff", "jne 0x30", "0x1004c0af"], ["0x100a3b01", "mov edx, dword ptr [esp + 0x1c]", "0x1004c0b1"]]}]]]}, {"address": "0x100a3b40", "recomp": "0x1004c0f0", "name": "TglImpl::MeshBuilderImpl::Clone", "matching": 0.782608695652174, "diff": [["@@ -0x100a3b51,58 +0x1004c101,58 @@", [{"both": [["0x100a3b51", "mov dword ptr fs:[0], esp", "0x1004c101"], ["0x100a3b58", "sub esp, 4", "0x1004c108"], ["0x100a3b5b", "push ebx", "0x1004c10b"], ["0x100a3b5c", "push esi", "0x1004c10c"], ["0x100a3b5d", "push edi", "0x1004c10d"], ["0x100a3b5e", "mov ebx, ecx", "0x1004c10e"], ["0x100a3b60", "push 8", "0x1004c110"], ["0x100a3b62", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004c112"], ["0x100a3b67", "mov dword ptr [ebp - 0x10], eax", "0x1004c117"], ["0x100a3b6a", "add esp, 4", "0x1004c11a"]]}, {"orig": [["0x100a3b6d", "mov edi, eax"]], "recomp": [["0x1004c11d", "mov esi, eax"]]}, {"both": [["0x100a3b6f", "xor eax, eax", "0x1004c11f"], ["0x100a3b71", "mov dword ptr [ebp - 4], eax", "0x1004c121"]]}, {"orig": [["0x100a3b74", "test edi, edi"]], "recomp": [["0x1004c124", "test esi, esi"]]}, {"both": [["0x100a3b76", "je 0x34", "0x1004c126"], ["0x100a3b78", "mov byte ptr [ebp - 4], 1", "0x1004c128"]]}, {"orig": [["0x100a3b7c", "mov esi, edi"], ["0x100a3b7e", "mov dword ptr [edi], Tgl::Object::`vftable' (VTABLE)"]], "recomp": [["0x1004c12c", "mov edi, esi"], ["0x1004c12e", "mov dword ptr [esi], Tgl::Object::`vftable' (VTABLE)"]]}, {"both": [["0x100a3b84", "mov byte ptr [ebp - 4], 2", "0x1004c134"]]}, {"orig": [["0x100a3b88", "mov dword ptr [edi], Tgl::MeshBuilder::`vftable' (VTABLE)"]], "recomp": [["0x1004c138", "mov dword ptr [esi], Tgl::MeshBuilder::`vftable' (VTABLE)"]]}, {"both": [["0x100a3b8e", "mov byte ptr [ebp - 4], al", "0x1004c13e"]]}, {"orig": [["0x100a3b91", "mov dword ptr [edi + 4], eax"], ["0x100a3b94", "mov dword ptr [edi], TglImpl::MeshBuilderImpl::`vftable' (VTABLE)"]], "recomp": [["0x1004c141", "mov dword ptr [esi + 4], eax"], ["0x1004c144", "mov dword ptr [esi], TglImpl::MeshBuilderImpl::`vftable' (VTABLE)"]]}, {"both": [["0x100a3b9a", "jmp 0x12", "0x1004c14a"], ["0x100a3b9c", "mov ecx, dword ptr [ebp - 0x10]", "0x1004c14c"], ["0x100a3b9f", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004c14f"], ["0x100a3ba4", "mov ecx, dword ptr [ebp - 0x10]", "0x1004c154"], ["0x100a3ba7", "jmp Tgl::MeshBuilder::~MeshBuilder (FUNCTION)", "0x1004c157"]]}, {"orig": [["0x100a3bac", "xor esi, esi"]], "recomp": [["0x1004c15c", "xor edi, edi"]]}, {"both": [["0x100a3bae", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004c15e"], ["0x100a3bb5", "mov eax, dword ptr [ebx + 4]", "0x1004c165"]]}, {"orig": [["0x100a3bb8", "lea ecx, [esi + 4]"]], "recomp": [["0x1004c168", "lea ecx, [edi + 4]"]]}, {"both": [["0x100a3bbb", "push ecx", "0x1004c16b"]]}, {"orig": [["0x100a3bbc", "push <OFFSET8>"]], "recomp": [["0x1004c16c", "push IID_IDirect3DRMMesh (DATA)"]]}, {"both": [["0x100a3bc1", "push 0", "0x1004c171"], ["0x100a3bc3", "mov ebx, dword ptr [eax]", "0x1004c173"], ["0x100a3bc5", "push eax", "0x1004c175"], ["0x100a3bc6", "call dword ptr [ebx + 0xc]", "0x1004c176"], ["0x100a3bc9", "test eax, eax", "0x1004c179"], ["0x100a3bcb", "jge 0xe", "0x1004c17b"]]}, {"orig": [["0x100a3bcd", "test esi, esi"]], "recomp": [["0x1004c17d", "test edi, edi"]]}, {"both": [["0x100a3bcf", "je 0x8", "0x1004c17f"], ["0x100a3bd1", "push 1", "0x1004c181"]]}, {"orig": [["0x100a3bd3", "mov eax, dword ptr [esi]"], ["0x100a3bd5", "mov ecx, esi"]], "recomp": [["0x1004c183", "mov eax, dword ptr [edi]"], ["0x1004c185", "mov ecx, edi"]]}, {"both": [["0x100a3bd7", "call dword ptr [eax]", "0x1004c187"]]}, {"orig": [["0x100a3bd9", "xor esi, esi"], ["0x100a3bdb", "mov eax, esi"]], "recomp": [["0x1004c189", "xor edi, edi"], ["0x1004c18b", "mov eax, edi"]]}, {"both": [["0x100a3bdd", "mov ecx, dword ptr [ebp - 0xc]", "0x1004c18d"], ["0x100a3be0", "mov dword ptr fs:[0], ecx", "0x1004c190"], ["0x100a3be7", "pop edi", "0x1004c197"], ["0x100a3be8", "pop esi", "0x1004c198"], ["0x100a3be9", "pop ebx", "0x1004c199"], ["0x100a3bea", "mov esp, ebp", "0x1004c19a"], ["0x100a3bec", "pop ebp", "0x1004c19c"], ["0x100a3bed", "ret ", "0x1004c19d"], ["0x100a3bee", "mov eax, <OFFSET9>", "0x1004c19e"], ["0x100a3bf3", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004c1a3"]]}]]]}, {"address": "0x100a3c10", "recomp": "0x1004c3d0", "name": "TglImpl::TextureImpl::SetTexels", "matching": 0.4375, "diff": [["@@ -0x100a3c10,33 +0x1004c3d0,31 @@", [{"both": [["0x100a3c10", "push esi", "0x1004c3d0"]]}, {"orig": [["0x100a3c11", "push edi"], ["0x100a3c12", "mov edi, dword ptr [ecx + 4]"], ["0x100a3c15", "push edi"], ["0x100a3c16", "mov esi, dword ptr [edi]"], ["0x100a3c18", "call dword ptr [esi + 0x1c]"], ["0x100a3c1b", "mov ecx, dword ptr [esp + 0x1c]"], ["0x100a3c1f", "mov edx, dword ptr [esp + 0x18]"]], "recomp": [["0x1004c3d1", "mov eax, dword ptr [ecx + 4]"], ["0x1004c3d4", "mov esi, ecx"], ["0x1004c3d6", "push eax"], ["0x1004c3d7", "mov eax, dword ptr [eax]"], ["0x1004c3d9", "call dword ptr [eax + 0x1c]"], ["0x1004c3dc", "mov ecx, dword ptr [esp + 0x14]"], ["0x1004c3e0", "push 1"], ["0x1004c3e2", "mov edx, dword ptr [esp + 0x14]"], ["0x1004c3e6", "push ecx"], ["0x1004c3e7", "mov ecx, dword ptr [esp + 0x14]"], ["0x1004c3eb", "push edx"], ["0x1004c3ec", "mov edx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100a3c23", "push ecx", "0x1004c3f0"], ["0x100a3c24", "push edx", "0x1004c3f1"]]}, {"orig": [["0x100a3c25", "mov ecx, dword ptr [esp + 0x1c]"], ["0x100a3c29", "mov edx, dword ptr [esp + 0x18]"], ["0x100a3c2d", "push ecx"], ["0x100a3c2e", "push edx"], ["0x100a3c2f", "mov ecx, dword ptr [esp + 0x1c]"], ["0x100a3c33", "push ecx"]], "recomp": []}, {"both": [["0x100a3c34", "mov ecx, eax", "0x1004c3f2"], ["0x100a3c36", "call TglImpl::TglD3DRMIMAGE::CreateBuffer (FUNCTION)", "0x1004c3f4"], ["0x100a3c3b", "cmp eax, 1", "0x1004c3f9"]]}, {"orig": [["0x100a3c3e", "jne 0x13"]], "recomp": [["0x1004c3fc", "jne 0x18"], ["0x1004c3fe", "mov eax, dword ptr [esi + 4]"]]}, {"both": [["0x100a3c40", "push 0", "0x1004c401"]]}, {"orig": [], "recomp": [["0x1004c403", "mov esi, dword ptr [eax]"]]}, {"both": [["0x100a3c42", "push 1", "0x1004c405"]]}, {"orig": [["0x100a3c44", "push edi"]], "recomp": [["0x1004c407", "push eax"]]}, {"both": [["0x100a3c45", "call dword ptr [esi + 0x38]", "0x1004c408"], ["0x100a3c48", "test eax, eax", "0x1004c40b"], ["0x100a3c4a", "mov eax, 1", "0x1004c40d"], ["0x100a3c4f", "jge 0x2", "0x1004c412"], ["0x100a3c51", "xor eax, eax", "0x1004c414"]]}, {"orig": [["0x100a3c53", "pop edi"]], "recomp": []}, {"both": [["0x100a3c54", "pop esi", "0x1004c416"]]}, {"orig": [["0x100a3c55", "ret 0x14"], ["0x100a3c58", "int3 "], ["0x100a3c59", "int3 "]], "recomp": [["0x1004c417", "ret 0x10"]]}]]]}, {"address": "0x100a3c60", "recomp": "0x1004c420", "name": "TglImpl::TextureImpl::FillRowsOfTexture", "matching": 1.0, "diff": []}, {"address": "0x100a3c90", "recomp": "0x1004c450", "name": "TglImpl::TextureImpl::Changed", "matching": 1.0, "diff": []}, {"address": "0x100a3cc0", "recomp": "0x1004c480", "name": "TglImpl::TextureImpl::GetBufferAndPalette", "matching": 0.5142857142857142, "diff": [["@@ -0x100a3cc9,50 +0x1004c489,43 @@", [{"both": [["0x100a3cc9", "call dword ptr [ebx + 0x1c]", "0x1004c489"], ["0x100a3ccc", "mov ebx, dword ptr [eax]", "0x1004c48c"], ["0x100a3cce", "mov ecx, dword ptr [esp + 0x10]", "0x1004c48e"], ["0x100a3cd2", "mov dword ptr [ecx], ebx", "0x1004c492"], ["0x100a3cd4", "mov ebx, dword ptr [esp + 0x14]", "0x1004c494"], ["0x100a3cd8", "mov edx, dword ptr [eax + 4]", "0x1004c498"], ["0x100a3cdb", "mov ecx, dword ptr [esp + 0x18]", "0x1004c49b"], ["0x100a3cdf", "mov dword ptr [ebx], edx", "0x1004c49f"], ["0x100a3ce1", "mov ebx, dword ptr [esp + 0x1c]", "0x1004c4a1"], ["0x100a3ce5", "mov esi, dword ptr [eax + 0x10]", "0x1004c4a5"]]}, {"orig": [["0x100a3ce8", "mov edi, dword ptr [esp + 0x20]"]], "recomp": []}, {"both": [["0x100a3cec", "mov dword ptr [ecx], esi", "0x1004c4a8"]]}, {"orig": [["0x100a3cee", "xor ecx, ecx"]], "recomp": [["0x1004c4aa", "mov ecx, dword ptr [esp + 0x20]"]]}, {"both": [["0x100a3cf0", "mov edx, dword ptr [eax + 0x1c]", "0x1004c4ae"], ["0x100a3cf3", "mov dword ptr [ebx], edx", "0x1004c4b1"], ["0x100a3cf5", "xor edx, edx", "0x1004c4b3"], ["0x100a3cf7", "mov esi, dword ptr [eax + 0x34]", "0x1004c4b5"]]}, {"orig": [["0x100a3cfa", "mov dword ptr [edi], esi"], ["0x100a3cfc", "test esi, esi"], ["0x100a3cfe", "jle 0x2c"], ["0x100a3d00", "mov esi, dword ptr [esp + 0x24]"], ["0x100a3d04", "mov ebx, dword ptr [eax + 0x38]"], ["0x100a3d07", "add esi, 3"], ["0x100a3d0a", "mov bl, byte ptr [ebx + edx]"], ["0x100a3d0d", "mov byte ptr [esi - 3], bl"], ["0x100a3d10", "mov ebx, dword ptr [eax + 0x38]"]], "recomp": [["0x1004c4b8", "mov dword ptr [ecx], esi"], ["0x1004c4ba", "xor esi, esi"], ["0x1004c4bc", "cmp dword ptr [eax + 0x34], edx"], ["0x1004c4bf", "jle 0x35"], ["0x1004c4c1", "mov ecx, dword ptr [esp + 0x24]"], ["0x1004c4c5", "mov edi, dword ptr [eax + 0x38]"]]}, {"both": [["0x100a3d13", "add edx, 4", "0x1004c4c8"]]}, {"orig": [["0x100a3d16", "inc ecx"], ["0x100a3d17", "mov bl, byte ptr [ebx + edx - 3]"], ["0x100a3d1b", "mov byte ptr [esi - 2], bl"], ["0x100a3d1e", "mov ebx, dword ptr [eax + 0x38]"], ["0x100a3d21", "mov bl, byte ptr [ebx + edx - 2]"], ["0x100a3d25", "mov byte ptr [esi - 1], bl"], ["0x100a3d28", "cmp dword ptr [edi], ecx"], ["0x100a3d2a", "jg -0x28"]], "recomp": [["0x1004c4cb", "mov bl, byte ptr [edi + edx - 4]"], ["0x1004c4cf", "mov edi, dword ptr [ecx]"], ["0x1004c4d1", "add ecx, 4"], ["0x1004c4d4", "inc esi"], ["0x1004c4d5", "mov byte ptr [edi], bl"], ["0x1004c4d7", "mov edi, dword ptr [eax + 0x38]"], ["0x1004c4da", "mov bl, byte ptr [edi + edx - 3]"], ["0x1004c4de", "mov edi, dword ptr [ecx - 4]"], ["0x1004c4e1", "mov byte ptr [edi + 1], bl"], ["0x1004c4e4", "mov edi, dword ptr [eax + 0x38]"], ["0x1004c4e7", "mov bl, byte ptr [edi + edx - 2]"], ["0x1004c4eb", "mov edi, dword ptr [ecx - 4]"], ["0x1004c4ee", "mov byte ptr [edi + 2], bl"], ["0x1004c4f1", "cmp dword ptr [eax + 0x34], esi"], ["0x1004c4f4", "jg -0x31"]]}, {"both": [["0x100a3d2c", "mov eax, 1", "0x1004c4f6"], ["0x100a3d31", "pop edi", "0x1004c4fb"], ["0x100a3d32", "pop esi", "0x1004c4fc"], ["0x100a3d33", "pop ebx", "0x1004c4fd"], ["0x100a3d34", "ret 0x18", "0x1004c4fe"]]}, {"orig": [["0x100a3d37", "int3 "], ["0x100a3d38", "int3 "], ["0x100a3d39", "int3 "], ["0x100a3d3a", "int3 "], ["0x100a3d3b", "int3 "], ["0x100a3d3c", "int3 "], ["0x100a3d3d", "int3 "], ["0x100a3d3e", "int3 "], ["0x100a3d3f", "int3 "], ["0x100a3d40", "push esi"]], "recomp": []}]]]}, {"address": "0x100a3d40", "recomp": "0x1004c510", "name": "TglImpl::TextureImpl::SetPalette", "matching": 0.5, "diff": [["@@ -0x100a3d40,23 +0x1004c510,21 @@", [{"both": [["0x100a3d40", "push esi", "0x1004c510"]]}, {"orig": [["0x100a3d41", "push edi"], ["0x100a3d42", "mov edi, dword ptr [ecx + 4]"], ["0x100a3d45", "push edi"], ["0x100a3d46", "mov esi, dword ptr [edi]"], ["0x100a3d48", "call dword ptr [esi + 0x1c]"], ["0x100a3d4b", "mov ecx, dword ptr [esp + 0x10]"], ["0x100a3d4f", "mov edx, dword ptr [esp + 0xc]"]], "recomp": [["0x1004c511", "mov eax, dword ptr [ecx + 4]"], ["0x1004c514", "mov esi, ecx"], ["0x1004c516", "push eax"], ["0x1004c517", "mov eax, dword ptr [eax]"], ["0x1004c519", "call dword ptr [eax + 0x1c]"], ["0x1004c51c", "mov ecx, dword ptr [esp + 0xc]"], ["0x1004c520", "mov edx, dword ptr [esp + 8]"]]}, {"both": [["0x100a3d53", "push ecx", "0x1004c524"], ["0x100a3d54", "push edx", "0x1004c525"], ["0x100a3d55", "mov ecx, eax", "0x1004c526"], ["0x100a3d57", "call TglImpl::TglD3DRMIMAGE::InitializePalette (FUNCTION)", "0x1004c528"]]}, {"orig": [], "recomp": [["0x1004c52d", "mov eax, dword ptr [esi + 4]"]]}, {"both": [["0x100a3d5c", "push 1", "0x1004c530"]]}, {"orig": [], "recomp": [["0x1004c532", "mov esi, dword ptr [eax]"]]}, {"both": [["0x100a3d5e", "push 0", "0x1004c534"]]}, {"orig": [["0x100a3d60", "push edi"]], "recomp": [["0x1004c536", "push eax"]]}, {"both": [["0x100a3d61", "call dword ptr [esi + 0x38]", "0x1004c537"], ["0x100a3d64", "mov eax, 1", "0x1004c53a"]]}, {"orig": [["0x100a3d69", "pop edi"]], "recomp": []}, {"both": [["0x100a3d6a", "pop esi", "0x1004c53f"], ["0x100a3d6b", "ret 8", "0x1004c540"]]}, {"orig": [["0x100a3d6e", "int3 "], ["0x100a3d6f", "int3 "], ["0x100a3d70", "lea eax, [ecx + 4]"]], "recomp": []}]]]}, {"address": "0x100a3d70", "recomp": "0x1004c550", "name": "TglImpl::TextureImpl::ImplementationDataPtr", "matching": 1.0, "diff": []}, {"address": "0x100a3d80", "recomp": "0x1004bf40", "name": "TglImpl::MeshImpl::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a3e10", "recomp": "0x1004bfd0", "name": "Tgl::Mesh::~Mesh", "matching": 1.0, "diff": []}, {"address": "0x100a3e60", "recomp": "0x1004c020", "name": "Tgl::Mesh::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a3ed0", "recomp": "0x1004c560", "name": "TglImpl::MeshImpl::ImplementationDataPtr", "matching": 1.0, "diff": []}, {"address": "0x100a3ee0", "recomp": "0x1004c570", "name": "TglImpl::MeshImpl::SetColor", "matching": 0.5684210526315789, "diff": [["@@ -0x100a3ee0,49 +0x1004c570,46 @@", [{"both": [["0x100a3ee0", "cmp dword ptr [esp + 0x10], 0", "0x1004c570"], ["0x100a3ee5", "push esi", "0x1004c575"]]}, {"orig": [["0x100a3ee6", "mov esi, dword ptr [ecx + 4]"], ["0x100a3ee9", "jle 0x35"]], "recomp": [["0x1004c576", "mov esi, ecx"], ["0x1004c578", "jle 0x38"]]}, {"both": [["0x100a3eeb", "mov eax, dword ptr [esp + 0x14]", "0x1004c57a"], ["0x100a3eef", "mov ecx, dword ptr [esp + 0x10]", "0x1004c57e"], ["0x100a3ef3", "mov edx, dword ptr [esp + 0xc]", "0x1004c582"], ["0x100a3ef7", "push eax", "0x1004c586"], ["0x100a3ef8", "mov eax, dword ptr [esp + 0xc]", "0x1004c587"], ["0x100a3efc", "push ecx", "0x1004c58b"], ["0x100a3efd", "push edx", "0x1004c58c"], ["0x100a3efe", "push eax", "0x1004c58d"], ["0x100a3eff", "call _D3DRMCreateColorRGBA@16 (FUNCTION)", "0x1004c58e"]]}, {"orig": [["0x100a3f04", "mov ecx, dword ptr [esi]"]], "recomp": [["0x1004c593", "mov ecx, dword ptr [esi + 4]"]]}, {"both": [["0x100a3f06", "push eax", "0x1004c596"]]}, {"orig": [["0x100a3f07", "mov edx, dword ptr [esi + 4]"], ["0x100a3f0a", "mov eax, dword ptr [ecx]"]], "recomp": [["0x1004c597", "mov edx, dword ptr [ecx]"], ["0x1004c599", "mov eax, dword ptr [ecx + 4]"], ["0x1004c59c", "mov esi, dword ptr [edx]"], ["0x1004c59e", "push eax"]]}, {"both": [["0x100a3f0c", "push edx", "0x1004c59f"]]}, {"orig": [["0x100a3f0d", "push ecx"], ["0x100a3f0e", "call dword ptr [eax + 0x40]"]], "recomp": [["0x1004c5a0", "call dword ptr [esi + 0x40]"]]}, {"both": [["0x100a3f11", "test eax, eax", "0x1004c5a3"], ["0x100a3f13", "mov eax, 1", "0x1004c5a5"]]}, {"orig": [["0x100a3f18", "jge 0x2c"]], "recomp": [["0x1004c5aa", "jge 0x2f"]]}, {"both": [["0x100a3f1a", "pop esi", "0x1004c5ac"], ["0x100a3f1b", "xor eax, eax", "0x1004c5ad"], ["0x100a3f1d", "ret 0x10", "0x1004c5af"]]}, {"orig": [["0x100a3f20", "mov ecx, dword ptr [esi]"]], "recomp": [["0x1004c5b2", "mov ecx, dword ptr [esi + 4]"]]}, {"both": [["0x100a3f22", "mov eax, dword ptr [esp + 0x10]", "0x1004c5b5"]]}, {"orig": [["0x100a3f26", "mov edx, dword ptr [esp + 0xc]"]], "recomp": [["0x1004c5b9", "mov esi, dword ptr [esp + 0xc]"]]}, {"both": [["0x100a3f2a", "push eax", "0x1004c5bd"]]}, {"orig": [["0x100a3f2b", "mov eax, dword ptr [esp + 0xc]"]], "recomp": [["0x1004c5be", "mov edx, dword ptr [ecx]"], ["0x1004c5c0", "push esi"], ["0x1004c5c1", "mov eax, dword ptr [esp + 0x10]"], ["0x1004c5c5", "mov ecx, dword ptr [ecx + 4]"], ["0x1004c5c8", "push eax"], ["0x1004c5c9", "mov esi, dword ptr [edx]"], ["0x1004c5cb", "push ecx"]]}, {"both": [["0x100a3f2f", "push edx", "0x1004c5cc"]]}, {"orig": [["0x100a3f30", "push eax"], ["0x100a3f31", "mov esi, dword ptr [esi + 4]"], ["0x100a3f34", "push esi"], ["0x100a3f35", "mov eax, dword ptr [ecx]"], ["0x100a3f37", "push ecx"], ["0x100a3f38", "call dword ptr [eax + 0x44]"]], "recomp": [["0x1004c5cd", "call dword ptr [esi + 0x44]"]]}, {"both": [["0x100a3f3b", "test eax, eax", "0x1004c5d0"], ["0x100a3f3d", "mov eax, 1", "0x1004c5d2"], ["0x100a3f42", "jge 0x2", "0x1004c5d7"], ["0x100a3f44", "xor eax, eax", "0x1004c5d9"], ["0x100a3f46", "pop esi", "0x1004c5db"], ["0x100a3f47", "ret 0x10", "0x1004c5dc"]]}, {"orig": [["0x100a3f4a", "int3 "], ["0x100a3f4b", "int3 "], ["0x100a3f4c", "int3 "], ["0x100a3f4d", "int3 "], ["0x100a3f4e", "int3 "]], "recomp": []}]]]}, {"address": "0x100a3f50", "recomp": "0x1004c5e0", "name": "TglImpl::MeshImpl::SetTexture", "matching": 1.0, "diff": []}, {"address": "0x100a3f80", "recomp": "0x1004c610", "name": "TglImpl::MeshImpl::SetTextureMappingMode", "matching": 0.6923076923076923, "diff": [["@@ -0x100a3f80,26 +0x1004c610,26 @@", [{"orig": [["0x100a3f80", "mov ecx, dword ptr [ecx + 4]"]], "recomp": [["0x1004c610", "mov eax, dword ptr [ecx + 4]"]]}, {"both": [["0x100a3f83", "cmp dword ptr [esp + 4], 1", "0x1004c613"]]}, {"orig": [["0x100a3f88", "mov eax, dword ptr [ecx]"]], "recomp": [["0x1004c618", "mov ecx, dword ptr [eax]"]]}, {"both": [["0x100a3f8a", "jne 0x1a", "0x1004c61a"], ["0x100a3f8c", "push 4", "0x1004c61c"]]}, {"orig": [["0x100a3f8e", "mov ecx, dword ptr [ecx + 4]"]], "recomp": [["0x1004c61e", "mov edx, dword ptr [eax + 4]"], ["0x1004c621", "push edx"], ["0x1004c622", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x100a3f91", "push ecx", "0x1004c624"]]}, {"orig": [["0x100a3f92", "push eax"], ["0x100a3f93", "mov eax, dword ptr [eax]"]], "recomp": []}, {"both": [["0x100a3f95", "call dword ptr [eax + 0x48]", "0x1004c625"], ["0x100a3f98", "test eax, eax", "0x1004c628"], ["0x100a3f9a", "mov eax, 1", "0x1004c62a"], ["0x100a3f9f", "jge 0x1c", "0x1004c62f"], ["0x100a3fa1", "xor eax, eax", "0x1004c631"], ["0x100a3fa3", "ret 4", "0x1004c633"], ["0x100a3fa6", "push 0", "0x1004c636"]]}, {"orig": [["0x100a3fa8", "mov ecx, dword ptr [ecx + 4]"]], "recomp": [["0x1004c638", "mov edx, dword ptr [eax + 4]"], ["0x1004c63b", "push edx"], ["0x1004c63c", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x100a3fab", "push ecx", "0x1004c63e"]]}, {"orig": [["0x100a3fac", "push eax"], ["0x100a3fad", "mov eax, dword ptr [eax]"]], "recomp": []}, {"both": [["0x100a3faf", "call dword ptr [eax + 0x48]", "0x1004c63f"], ["0x100a3fb2", "test eax, eax", "0x1004c642"], ["0x100a3fb4", "mov eax, 1", "0x1004c644"], ["0x100a3fb9", "jge 0x2", "0x1004c649"], ["0x100a3fbb", "xor eax, eax", "0x1004c64b"], ["0x100a3fbd", "ret 4", "0x1004c64d"]]}]]]}, {"address": "0x100a3fc0", "recomp": "0x1004c650", "name": "TglImpl::MeshImpl::SetShadingModel", "matching": 0.24096385542168675, "diff": [["@@ -0x100a3fc0,42 +0x1004c650,41 @@", [{"orig": [["0x100a3fc0", "mov ecx, dword ptr [ecx + 4]"]], "recomp": []}, {"both": [["0x100a3fc3", "mov eax, dword ptr [esp + 4]", "0x1004c650"]]}, {"orig": [], "recomp": [["0x1004c654", "sub esp, 4"]]}, {"both": [["0x100a3fc7", "cmp eax, 4", "0x1004c657"]]}, {"orig": [["0x100a3fca", "ja 0x7"], ["0x100a3fcc", "jmp dword ptr [eax*4 + 0x100a4018]"], ["0x100a3fd3", "mov eax, 0x88"], ["0x100a3fd8", "jmp 0x21"], ["0x100a3fda", "mov eax, 0x40"], ["0x100a3fdf", "jmp 0x1a"], ["0x100a3fe1", "mov eax, 0x80"], ["0x100a3fe6", "jmp 0x13"], ["0x100a3fe8", "mov eax, 0x88"], ["0x100a3fed", "jmp 0xc"], ["0x100a3fef", "mov eax, 0x89"], ["0x100a3ff4", "jmp 0x5"], ["0x100a3ff6", "mov eax, 0x8a"], ["0x100a3ffb", "mov edx, dword ptr [ecx]"], ["0x100a3ffd", "push eax"]], "recomp": [["0x1004c65a", "ja 0x2a"], ["0x1004c65c", "jmp dword ptr [eax*4 + 0x1004c6ac]"], ["0x1004c663", "mov edx, 0x40"], ["0x1004c668", "jmp 0x20"], ["0x1004c66a", "mov edx, 0x80"], ["0x1004c66f", "jmp 0x19"], ["0x1004c671", "mov edx, 0x88"], ["0x1004c676", "jmp 0x12"], ["0x1004c678", "mov edx, 0x89"], ["0x1004c67d", "jmp 0xb"], ["0x1004c67f", "mov edx, 0x8a"], ["0x1004c684", "jmp 0x4"], ["0x1004c686", "mov edx, dword ptr [esp]"]]}, {"both": [["0x100a3ffe", "mov eax, dword ptr [ecx + 4]", "0x1004c68a"]]}, {"orig": [["0x100a4001", "push eax"]], "recomp": []}, {"both": [["0x100a4002", "push edx", "0x1004c68d"]]}, {"orig": [["0x100a4003", "mov eax, dword ptr [edx]"]], "recomp": [["0x1004c68e", "mov ecx, dword ptr [eax]"], ["0x1004c690", "mov edx, dword ptr [eax + 4]"], ["0x1004c693", "mov eax, dword ptr [ecx]"], ["0x1004c695", "push edx"], ["0x1004c696", "push ecx"]]}, {"both": [["0x100a4005", "call dword ptr [eax + 0x4c]", "0x1004c697"], ["0x100a4008", "test eax, eax", "0x1004c69a"], ["0x100a400a", "mov eax, 1", "0x1004c69c"], ["0x100a400f", "jge 0x2", "0x1004c6a1"], ["0x100a4011", "xor eax, eax", "0x1004c6a3"]]}, {"orig": [], "recomp": [["0x1004c6a5", "add esp, 4"]]}, {"both": [["0x100a4013", "ret 4", "0x1004c6a8"]]}, {"orig": [["0x100a4016", "mov edi, edi"], ["0x100a4018", "fidivr dword ptr [edi]"], ["0x100a401a", "or dl, byte ptr [eax]"], ["0x100a401c", "loope 0x100a405d"], ["0x100a401e", "or dl, byte ptr [eax]"], ["0x100a4020", "call <OFFSET1>"], ["0x100a4025", "aas "], ["0x100a4026", "or dl, byte ptr [eax]"], ["0x100a4028", "idiv byte ptr [edi]"], ["0x100a402a", "or dl, byte ptr [eax]"], ["0x100a402c", "int3 "], ["0x100a402d", "int3 "], ["0x100a402e", "int3 "], ["0x100a402f", "int3 "]], "recomp": [["0x1004c6ab", "nop "], ["0x1004c6ac", "arpl si, ax"], ["0x1004c6ae", "add al, 0x10"], ["0x1004c6b0", "push -0x3a"], ["0x1004c6b2", "add al, 0x10"], ["0x1004c6b4", "jno -0x3a"], ["0x1004c6b6", "add al, 0x10"], ["0x1004c6b8", "js -0x3a"], ["0x1004c6ba", "add al, 0x10"], ["0x1004c6bc", "jg -0x3a"], ["0x1004c6be", "add al, 0x10"]]}]]]}, {"address": "0x100a4030", "recomp": "0x1004c6c0", "name": "TglImpl::MeshImpl::DeepClone", "matching": 0.29596412556053814, "diff": [["@@ -0x100a4030,222 +0x1004c6c0,224 @@", [{"both": [["0x100a4030", "mov eax, dword ptr fs:[0]", "0x1004c6c0"], ["0x100a4036", "push ebp", "0x1004c6c6"], ["0x100a4037", "mov ebp, esp", "0x1004c6c7"], ["0x100a4039", "push -1", "0x1004c6c9"], ["0x100a403b", "push <OFFSET1>", "0x1004c6cb"], ["0x100a4040", "push eax", "0x1004c6d0"], ["0x100a4041", "mov dword ptr fs:[0], esp", "0x1004c6d1"]]}, {"orig": [["0x100a4048", "sub esp, 0x2c"]], "recomp": [["0x1004c6d8", "sub esp, 0x30"]]}, {"both": [["0x100a404b", "push ebx", "0x1004c6db"], ["0x100a404c", "push esi", "0x1004c6dc"], ["0x100a404d", "push edi", "0x1004c6dd"]]}, {"orig": [["0x100a404e", "mov esi, ecx"]], "recomp": [["0x1004c6de", "mov ebx, ecx"]]}, {"both": [["0x100a4050", "push 8", "0x1004c6e0"], ["0x100a4052", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004c6e2"]]}, {"orig": [["0x100a4057", "mov dword ptr [ebp - 0x10], eax"]], "recomp": [["0x1004c6e7", "mov dword ptr [ebp - 0x18], eax"]]}, {"both": [["0x100a405a", "add esp, 4", "0x1004c6ea"], ["0x100a405d", "mov edi, eax", "0x1004c6ed"], ["0x100a405f", "xor eax, eax", "0x1004c6ef"], ["0x100a4061", "mov dword ptr [ebp - 4], eax", "0x1004c6f1"], ["0x100a4064", "test edi, edi", "0x1004c6f4"], ["0x100a4066", "je 0x34", "0x1004c6f6"], ["0x100a4068", "mov byte ptr [ebp - 4], 1", "0x1004c6f8"]]}, {"orig": [["0x100a406c", "mov ebx, edi"]], "recomp": [["0x1004c6fc", "mov esi, edi"]]}, {"both": [["0x100a406e", "mov dword ptr [edi], Tgl::Object::`vftable' (VTABLE)", "0x1004c6fe"], ["0x100a4074", "mov byte ptr [ebp - 4], 2", "0x1004c704"], ["0x100a4078", "mov dword ptr [edi], Tgl::Mesh::`vftable' (VTABLE)", "0x1004c708"], ["0x100a407e", "mov byte ptr [ebp - 4], al", "0x1004c70e"], ["0x100a4081", "mov dword ptr [edi + 4], eax", "0x1004c711"], ["0x100a4084", "mov dword ptr [edi], TglImpl::MeshImpl::`vftable' (VTABLE)", "0x1004c714"], ["0x100a408a", "jmp 0x12", "0x1004c71a"]]}, {"orig": [["0x100a408c", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004c71c", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100a408f", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004c71f"]]}, {"orig": [["0x100a4094", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004c724", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100a4097", "jmp Tgl::Mesh::~Mesh (FUNCTION)", "0x1004c727"]]}, {"orig": [["0x100a409c", "xor ebx, ebx"], ["0x100a409e", "mov eax, dword ptr [ebp + 8]"]], "recomp": [["0x1004c72c", "xor esi, esi"], ["0x1004c72e", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x100a40a1", "push 8", "0x1004c735"]]}, {"orig": [["0x100a40a3", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100a40aa", "mov edi, dword ptr [eax + 4]"], ["0x100a40ad", "mov esi, dword ptr [esi + 4]"], ["0x100a40b0", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100a40b5", "add esp, 4"]], "recomp": [["0x1004c737", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1004c73c", "add esp, 4"], ["0x1004c73f", "lea edx, [ebp - 0x2c]"], ["0x1004c742", "mov dword ptr [esi + 4], eax"], ["0x1004c745", "mov eax, dword ptr [ebx + 4]"], ["0x1004c748", "push 0"], ["0x1004c74a", "push edx"], ["0x1004c74b", "mov ecx, dword ptr [eax]"], ["0x1004c74d", "lea edx, [ebp - 0x28]"], ["0x1004c750", "push edx"], ["0x1004c751", "mov eax, dword ptr [eax + 4]"]]}, {"both": [["0x100a40b8", "lea edx, [ebp - 0x24]", "0x1004c754"]]}, {"orig": [["0x100a40bb", "mov dword ptr [ebx + 4], eax"], ["0x100a40be", "push 0"], ["0x100a40c0", "push edx"], ["0x100a40c1", "mov dword ptr [eax], edi"], ["0x100a40c3", "mov ecx, dword ptr [esi]"], ["0x100a40c5", "lea eax, [ebp - 0x38]"], ["0x100a40c8", "push eax"], ["0x100a40c9", "lea edx, [ebp - 0x20]"], ["0x100a40cc", "push edx"]], "recomp": [["0x1004c757", "push edx"], ["0x1004c758", "lea edx, [ebp - 0x14]"], ["0x1004c75b", "push edx"], ["0x1004c75c", "push eax"], ["0x1004c75d", "push ecx"], ["0x1004c75e", "mov eax, dword ptr [ecx]"], ["0x1004c760", "call dword ptr [eax + 0x5c]"], ["0x1004c763", "mov eax, dword ptr [ebp - 0x2c]"], ["0x1004c766", "shl eax, 2"], ["0x1004c769", "push eax"], ["0x1004c76a", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x1004c76f", "add esp, 4"], ["0x1004c772", "mov edx, dword ptr [ebx + 4]"], ["0x1004c775", "mov dword ptr [ebp - 0x20], eax"], ["0x1004c778", "mov ecx, dword ptr [edx]"], ["0x1004c77a", "push eax"], ["0x1004c77b", "lea eax, [ebp - 0x2c]"], ["0x1004c77e", "push eax"], ["0x1004c77f", "lea eax, [ebp - 0x28]"], ["0x1004c782", "push eax"], ["0x1004c783", "mov edx, dword ptr [edx + 4]"], ["0x1004c786", "lea eax, [ebp - 0x24]"], ["0x1004c789", "push eax"]]}, {"both": [["0x100a40cd", "lea eax, [ebp - 0x14]", "0x1004c78a"]]}, {"orig": [["0x100a40d0", "push eax"], ["0x100a40d1", "mov edx, dword ptr [esi + 4]"], ["0x100a40d4", "push edx"], ["0x100a40d5", "mov eax, dword ptr [ecx]"], ["0x100a40d7", "push ecx"], ["0x100a40d8", "call dword ptr [eax + 0x5c]"], ["0x100a40db", "mov eax, dword ptr [ebp - 0x24]"], ["0x100a40de", "shl eax, 2"], ["0x100a40e1", "push eax"], ["0x100a40e2", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100a40e7", "add esp, 4"], ["0x100a40ea", "mov ecx, dword ptr [esi]"], ["0x100a40ec", "lea edx, [ebp - 0x24]"], ["0x100a40ef", "mov dword ptr [ebp - 0x1c], eax"], ["0x100a40f2", "push eax"], ["0x100a40f3", "push edx"], ["0x100a40f4", "lea eax, [ebp - 0x38]"], ["0x100a40f7", "lea edx, [ebp - 0x20]"], ["0x100a40fa", "push eax"], ["0x100a40fb", "push edx"], ["0x100a40fc", "lea eax, [ebp - 0x14]"], ["0x100a40ff", "mov edx, dword ptr [esi + 4]"]], "recomp": []}, {"both": [["0x100a4102", "push eax", "0x1004c78d"], ["0x100a4103", "push edx", "0x1004c78e"], ["0x100a4104", "push ecx", "0x1004c78f"], ["0x100a4105", "mov eax, dword ptr [ecx]", "0x1004c790"], ["0x100a4107", "call dword ptr [eax + 0x5c]", "0x1004c792"], ["0x100a410a", "mov eax, dword ptr [ebp - 0x14]", "0x1004c795"], ["0x100a410d", "shl eax, 2", "0x1004c798"], ["0x100a4110", "lea ecx, [eax + eax*8]", "0x1004c79b"], ["0x100a4113", "push ecx", "0x1004c79e"], ["0x100a4114", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004c79f"], ["0x100a4119", "add esp, 4", "0x1004c7a4"]]}, {"orig": [["0x100a411c", "mov ecx, dword ptr [esi]"]], "recomp": [["0x1004c7a7", "mov edx, dword ptr [ebx + 4]"], ["0x1004c7aa", "mov dword ptr [ebp - 0x1c], eax"], ["0x1004c7ad", "mov ecx, dword ptr [edx]"], ["0x1004c7af", "push eax"], ["0x1004c7b0", "mov edx, dword ptr [edx + 4]"], ["0x1004c7b3", "mov eax, dword ptr [ebp - 0x14]"], ["0x1004c7b6", "push eax"], ["0x1004c7b7", "push 0"], ["0x1004c7b9", "push edx"], ["0x1004c7ba", "mov eax, dword ptr [ecx]"], ["0x1004c7bc", "push ecx"], ["0x1004c7bd", "call dword ptr [eax + 0x60]"], ["0x1004c7c0", "mov eax, dword ptr [ebx + 4]"], ["0x1004c7c3", "lea edx, [ebp - 0x3c]"], ["0x1004c7c6", "push edx"], ["0x1004c7c7", "mov ecx, dword ptr [eax]"], ["0x1004c7c9", "mov eax, dword ptr [eax + 4]"], ["0x1004c7cc", "push eax"], ["0x1004c7cd", "push ecx"], ["0x1004c7ce", "mov eax, dword ptr [ecx]"], ["0x1004c7d0", "call dword ptr [eax + 0x74]"], ["0x1004c7d3", "mov eax, dword ptr [ebx + 4]"], ["0x1004c7d6", "mov ecx, dword ptr [eax]"], ["0x1004c7d8", "mov edx, dword ptr [eax + 4]"], ["0x1004c7db", "mov eax, dword ptr [ecx]"], ["0x1004c7dd", "push edx"], ["0x1004c7de", "push ecx"], ["0x1004c7df", "call dword ptr [eax + 0x68]"], ["0x1004c7e2", "mov dword ptr [ebp - 0x38], eax"], ["0x1004c7e5", "mov eax, dword ptr [ebx + 4]"], ["0x1004c7e8", "mov ecx, dword ptr [eax]"], ["0x1004c7ea", "mov edx, dword ptr [eax + 4]"], ["0x1004c7ed", "mov eax, dword ptr [ecx]"], ["0x1004c7ef", "push edx"], ["0x1004c7f0", "push ecx"], ["0x1004c7f1", "call dword ptr [eax + 0x6c]"], ["0x1004c7f4", "mov dword ptr [ebp - 0x34], eax"], ["0x1004c7f7", "mov eax, dword ptr [ebx + 4]"], ["0x1004c7fa", "mov ecx, dword ptr [eax]"], ["0x1004c7fc", "mov edx, dword ptr [eax + 4]"], ["0x1004c7ff", "mov eax, dword ptr [ecx]"], ["0x1004c801", "push edx"], ["0x1004c802", "push ecx"], ["0x1004c803", "call dword ptr [eax + 0x64]"], ["0x1004c806", "mov ebx, dword ptr [ebp + 8]"], ["0x1004c809", "mov edx, dword ptr [ebp - 0x20]"], ["0x1004c80c", "mov edi, dword ptr [ebp - 0x28]"], ["0x1004c80f", "mov dword ptr [ebp - 0x30], eax"], ["0x1004c812", "mov ecx, dword ptr [ebx + 4]"], ["0x1004c815", "lea eax, [ebp - 0x10]"], ["0x1004c818", "push eax"], ["0x1004c819", "push edx"], ["0x1004c81a", "push edi"], ["0x1004c81b", "mov eax, dword ptr [ebp - 0x24]"], ["0x1004c81e", "push eax"]]}, {"both": [["0x100a411e", "mov edx, dword ptr [ebp - 0x14]", "0x1004c81f"]]}, {"orig": [["0x100a4121", "mov dword ptr [ebp - 0x18], eax"], ["0x100a4124", "push eax"], ["0x100a4125", "push edx"]], "recomp": [["0x1004c822", "push edx"], ["0x1004c823", "mov edi, dword ptr [ecx]"], ["0x1004c825", "push ecx"], ["0x1004c826", "call dword ptr [edi + 0x38]"], ["0x1004c829", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1004c82c", "mov eax, dword ptr [esi + 4]"], ["0x1004c82f", "mov edx, dword ptr [ebp - 0x1c]"], ["0x1004c832", "mov dword ptr [eax + 4], ecx"], ["0x1004c835", "mov ecx, dword ptr [ebx + 4]"], ["0x1004c838", "push edx"], ["0x1004c839", "mov eax, dword ptr [ebp - 0x14]"], ["0x1004c83c", "mov edi, dword ptr [ebp - 0x10]"], ["0x1004c83f", "push eax"]]}, {"both": [["0x100a4126", "push 0", "0x1004c840"]]}, {"orig": [["0x100a4128", "mov eax, dword ptr [esi + 4]"], ["0x100a412b", "push eax"], ["0x100a412c", "push ecx"], ["0x100a412d", "mov eax, dword ptr [ecx]"], ["0x100a412f", "call dword ptr [eax + 0x60]"], ["0x100a4132", "mov ecx, dword ptr [esi]"], ["0x100a4134", "lea edx, [ebp - 0x34]"], ["0x100a4137", "push edx"], ["0x100a4138", "mov eax, dword ptr [esi + 4]"], ["0x100a413b", "push eax"], ["0x100a413c", "push ecx"], ["0x100a413d", "mov eax, dword ptr [ecx]"], ["0x100a413f", "call dword ptr [eax + 0x74]"], ["0x100a4142", "mov eax, dword ptr [esi]"], ["0x100a4144", "mov ecx, dword ptr [esi + 4]"], ["0x100a4147", "push ecx"], ["0x100a4148", "push eax"], ["0x100a4149", "mov eax, dword ptr [eax]"], ["0x100a414b", "call dword ptr [eax + 0x68]"], ["0x100a414e", "mov ecx, dword ptr [esi + 4]"], ["0x100a4151", "mov dword ptr [ebp - 0x30], eax"], ["0x100a4154", "mov eax, dword ptr [esi]"], ["0x100a4156", "push ecx"], ["0x100a4157", "push eax"], ["0x100a4158", "mov eax, dword ptr [eax]"], ["0x100a415a", "call dword ptr [eax + 0x6c]"], ["0x100a415d", "mov ecx, dword ptr [esi]"], ["0x100a415f", "mov edx, dword ptr [esi + 4]"], ["0x100a4162", "push edx"], ["0x100a4163", "mov dword ptr [ebp - 0x2c], eax"], ["0x100a4166", "push ecx"], ["0x100a4167", "mov eax, dword ptr [ecx]"], ["0x100a4169", "call dword ptr [eax + 0x64]"], ["0x100a416c", "lea ecx, [ebp - 0x10]"], ["0x100a416f", "mov dword ptr [ebp - 0x28], eax"], ["0x100a4172", "mov esi, dword ptr [edi]"], ["0x100a4174", "push ecx"]], "recomp": [["0x1004c842", "push edi"], ["0x1004c843", "push ecx"], ["0x1004c844", "mov eax, dword ptr [ecx]"], ["0x1004c846", "call dword ptr [eax + 0x3c]"], ["0x1004c849", "mov ecx, dword ptr [ebx + 4]"], ["0x1004c84c", "mov eax, dword ptr [ebp - 0x3c]"], ["0x1004c84f", "push eax"], ["0x1004c850", "mov edi, dword ptr [ebp - 0x10]"], ["0x1004c853", "push edi"], ["0x1004c854", "mov eax, dword ptr [ecx]"], ["0x1004c856", "push ecx"], ["0x1004c857", "call dword ptr [eax + 0x54]"], ["0x1004c85a", "mov ecx, dword ptr [ebx + 4]"], ["0x1004c85d", "mov eax, dword ptr [ebp - 0x38]"], ["0x1004c860", "push eax"], ["0x1004c861", "mov edi, dword ptr [ebp - 0x10]"], ["0x1004c864", "push edi"], ["0x1004c865", "mov eax, dword ptr [ecx]"], ["0x1004c867", "push ecx"], ["0x1004c868", "call dword ptr [eax + 0x48]"], ["0x1004c86b", "mov ecx, dword ptr [ebx + 4]"], ["0x1004c86e", "mov eax, dword ptr [ebp - 0x34]"], ["0x1004c871", "push eax"], ["0x1004c872", "mov edi, dword ptr [ebp - 0x10]"], ["0x1004c875", "push edi"], ["0x1004c876", "mov eax, dword ptr [ecx]"], ["0x1004c878", "push ecx"], ["0x1004c879", "call dword ptr [eax + 0x4c]"], ["0x1004c87c", "mov ecx, dword ptr [ebx + 4]"], ["0x1004c87f", "mov eax, dword ptr [ebp - 0x30]"], ["0x1004c882", "push eax"], ["0x1004c883", "mov edi, dword ptr [ebp - 0x10]"], ["0x1004c886", "push edi"], ["0x1004c887", "mov ebx, dword ptr [ecx]"], ["0x1004c889", "push ecx"], ["0x1004c88a", "call dword ptr [ebx + 0x40]"], ["0x1004c88d", "mov edi, eax"], ["0x1004c88f", "mov eax, dword ptr [ebp - 0x20]"], ["0x1004c892", "push eax"], ["0x1004c893", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1004c898", "add esp, 4"]]}, {"both": [["0x100a4175", "mov eax, dword ptr [ebp - 0x1c]", "0x1004c89b"]]}, {"orig": [["0x100a4178", "mov edx, dword ptr [ebp - 0x20]"], ["0x100a417b", "push eax"], ["0x100a417c", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100a417f", "push 3"], ["0x100a4181", "push edx"], ["0x100a4182", "push ecx"], ["0x100a4183", "push edi"], ["0x100a4184", "call dword ptr [esi + 0x38]"], ["0x100a4187", "mov edx, dword ptr [ebp - 0x10]"], ["0x100a418a", "mov ecx, dword ptr [ebx + 4]"], ["0x100a418d", "mov eax, dword ptr [ebp - 0x18]"], ["0x100a4190", "mov dword ptr [ecx + 4], edx"], ["0x100a4193", "push eax"], ["0x100a4194", "mov edx, dword ptr [ebp - 0x14]"], ["0x100a4197", "push edx"], ["0x100a4198", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a419b", "push 0"], ["0x100a419d", "push ecx"], ["0x100a419e", "push edi"], ["0x100a419f", "call dword ptr [esi + 0x3c]"], ["0x100a41a2", "mov ecx, dword ptr [ebp - 0x34]"], ["0x100a41a5", "mov edx, dword ptr [ebp - 0x10]"], ["0x100a41a8", "push ecx"], ["0x100a41a9", "push edx"], ["0x100a41aa", "push edi"], ["0x100a41ab", "call dword ptr [esi + 0x54]"], ["0x100a41ae", "mov ecx, dword ptr [ebp - 0x30]"], ["0x100a41b1", "push ecx"], ["0x100a41b2", "mov edx, dword ptr [ebp - 0x10]"], ["0x100a41b5", "push edx"], ["0x100a41b6", "push edi"], ["0x100a41b7", "call dword ptr [esi + 0x48]"], ["0x100a41ba", "mov ecx, dword ptr [ebp - 0x2c]"], ["0x100a41bd", "mov edx, dword ptr [ebp - 0x10]"], ["0x100a41c0", "push ecx"], ["0x100a41c1", "push edx"], ["0x100a41c2", "push edi"], ["0x100a41c3", "call dword ptr [esi + 0x4c]"], ["0x100a41c6", "mov ecx, dword ptr [ebp - 0x28]"], ["0x100a41c9", "mov edx, dword ptr [ebp - 0x10]"], ["0x100a41cc", "push ecx"], ["0x100a41cd", "push edx"], ["0x100a41ce", "push edi"], ["0x100a41cf", "call dword ptr [esi + 0x40]"], ["0x100a41d2", "mov esi, 1"], ["0x100a41d7", "test eax, eax"], ["0x100a41d9", "jge 0x2"], ["0x100a41db", "xor esi, esi"], ["0x100a41dd", "cmp dword ptr [ebp - 0x1c], 0"], ["0x100a41e1", "je 0xc"], ["0x100a41e3", "mov eax, dword ptr [ebp - 0x1c]"]], "recomp": []}, {"both": [["0x100a41e6", "push eax", "0x1004c89e"], ["0x100a41e7", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004c89f"], ["0x100a41ec", "add esp, 4", "0x1004c8a4"]]}, {"orig": [["0x100a41ef", "cmp dword ptr [ebp - 0x18], 0"], ["0x100a41f3", "je 0xc"], ["0x100a41f5", "mov eax, dword ptr [ebp - 0x18]"], ["0x100a41f8", "push eax"], ["0x100a41f9", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100a41fe", "add esp, 4"]], "recomp": [["0x1004c8a7", "test edi, edi"], ["0x1004c8a9", "jge 0xe"]]}, {"both": [["0x100a4201", "test esi, esi", "0x1004c8ab"]]}, {"orig": [["0x100a4203", "jne 0xe"], ["0x100a4205", "test ebx, ebx"]], "recomp": []}, {"both": [["0x100a4207", "je 0x8", "0x1004c8ad"], ["0x100a4209", "push 1", "0x1004c8af"]]}, {"orig": [["0x100a420b", "mov eax, dword ptr [ebx]"], ["0x100a420d", "mov ecx, ebx"]], "recomp": [["0x1004c8b1", "mov eax, dword ptr [esi]"], ["0x1004c8b3", "mov ecx, esi"]]}, {"both": [["0x100a420f", "call dword ptr [eax]", "0x1004c8b5"]]}, {"orig": [["0x100a4211", "xor ebx, ebx"], ["0x100a4213", "mov eax, ebx"]], "recomp": [["0x1004c8b7", "xor esi, esi"], ["0x1004c8b9", "mov eax, esi"]]}, {"both": [["0x100a4215", "mov ecx, dword ptr [ebp - 0xc]", "0x1004c8bb"], ["0x100a4218", "mov dword ptr fs:[0], ecx", "0x1004c8be"], ["0x100a421f", "pop edi", "0x1004c8c5"], ["0x100a4220", "pop esi", "0x1004c8c6"], ["0x100a4221", "pop ebx", "0x1004c8c7"], ["0x100a4222", "mov esp, ebp", "0x1004c8c8"], ["0x100a4224", "pop ebp", "0x1004c8ca"], ["0x100a4225", "ret 4", "0x1004c8cb"], ["0x100a4228", "mov eax, <OFFSET9>", "0x1004c8ce"], ["0x100a422d", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004c8d3"]]}, {"orig": [["0x100a4232", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1004c8d8", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100a4235", "push eax", "0x1004c8db"], ["0x100a4236", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004c8dc"], ["0x100a423b", "add esp, 4", "0x1004c8e1"], ["0x100a423e", "ret ", "0x1004c8e4"]]}, {"orig": [["0x100a423f", "int3 "], ["0x100a4240", "mov eax, dword ptr fs:[0]"], ["0x100a4246", "push ebp"], ["0x100a4247", "mov ebp, esp"], ["0x100a4249", "push -1"], ["0x100a424b", "push <OFFSET11>"], ["0x100a4250", "push eax"]], "recomp": []}]]]}, {"address": "0x100a4240", "recomp": "0x1004c8f0", "name": "TglImpl::MeshImpl::ShallowClone", "matching": 0.5277777777777778, "diff": [["@@ -0x100a4251,66 +0x1004c901,66 @@", [{"both": [["0x100a4251", "mov dword ptr fs:[0], esp", "0x1004c901"], ["0x100a4258", "sub esp, 4", "0x1004c908"], ["0x100a425b", "push ebx", "0x1004c90b"], ["0x100a425c", "push esi", "0x1004c90c"], ["0x100a425d", "push edi", "0x1004c90d"], ["0x100a425e", "mov ebx, ecx", "0x1004c90e"], ["0x100a4260", "push 8", "0x1004c910"], ["0x100a4262", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004c912"], ["0x100a4267", "mov dword ptr [ebp - 0x10], eax", "0x1004c917"], ["0x100a426a", "add esp, 4", "0x1004c91a"]]}, {"orig": [["0x100a426d", "mov esi, eax"]], "recomp": [["0x1004c91d", "mov edi, eax"]]}, {"both": [["0x100a426f", "xor eax, eax", "0x1004c91f"], ["0x100a4271", "mov dword ptr [ebp - 4], eax", "0x1004c921"]]}, {"orig": [["0x100a4274", "test esi, esi"]], "recomp": [["0x1004c924", "test edi, edi"]]}, {"both": [["0x100a4276", "je 0x34", "0x1004c926"], ["0x100a4278", "mov byte ptr [ebp - 4], 1", "0x1004c928"]]}, {"orig": [["0x100a427c", "mov edi, esi"], ["0x100a427e", "mov dword ptr [esi], Tgl::Object::`vftable' (VTABLE)"]], "recomp": [["0x1004c92c", "mov esi, edi"], ["0x1004c92e", "mov dword ptr [edi], Tgl::Object::`vftable' (VTABLE)"]]}, {"both": [["0x100a4284", "mov byte ptr [ebp - 4], 2", "0x1004c934"]]}, {"orig": [["0x100a4288", "mov dword ptr [esi], Tgl::Mesh::`vftable' (VTABLE)"]], "recomp": [["0x1004c938", "mov dword ptr [edi], Tgl::Mesh::`vftable' (VTABLE)"]]}, {"both": [["0x100a428e", "mov byte ptr [ebp - 4], al", "0x1004c93e"]]}, {"orig": [["0x100a4291", "mov dword ptr [esi + 4], eax"], ["0x100a4294", "mov dword ptr [esi], TglImpl::MeshImpl::`vftable' (VTABLE)"]], "recomp": [["0x1004c941", "mov dword ptr [edi + 4], eax"], ["0x1004c944", "mov dword ptr [edi], TglImpl::MeshImpl::`vftable' (VTABLE)"]]}, {"both": [["0x100a429a", "jmp 0x12", "0x1004c94a"], ["0x100a429c", "mov ecx, dword ptr [ebp - 0x10]", "0x1004c94c"], ["0x100a429f", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004c94f"], ["0x100a42a4", "mov ecx, dword ptr [ebp - 0x10]", "0x1004c954"], ["0x100a42a7", "jmp Tgl::Mesh::~Mesh (FUNCTION)", "0x1004c957"]]}, {"orig": [["0x100a42ac", "xor edi, edi"], ["0x100a42ae", "mov eax, dword ptr [ebp + 8]"]], "recomp": [["0x1004c95c", "xor esi, esi"], ["0x1004c95e", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x100a42b1", "push 8", "0x1004c965"]]}, {"orig": [["0x100a42b3", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100a42ba", "mov ecx, dword ptr [eax + 4]"], ["0x100a42bd", "mov esi, dword ptr [ebx + 4]"], ["0x100a42c0", "xor ebx, ebx"], ["0x100a42c2", "mov dword ptr [ebp - 0x10], ecx"]], "recomp": []}, {"both": [["0x100a42c5", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004c967"], ["0x100a42ca", "add esp, 4", "0x1004c96c"]]}, {"orig": [["0x100a42cd", "mov ecx, eax"], ["0x100a42cf", "mov dword ptr [edi + 4], eax"], ["0x100a42d2", "cmp ecx, ebx"], ["0x100a42d4", "je 0x13"], ["0x100a42d6", "mov eax, dword ptr [ebp - 0x10]"], ["0x100a42d9", "mov ebx, 1"], ["0x100a42de", "mov dword ptr [ecx], eax"], ["0x100a42e0", "mov ecx, dword ptr [edi + 4]"], ["0x100a42e3", "mov edx, dword ptr [esi + 4]"], ["0x100a42e6", "mov dword ptr [ecx + 4], edx"], ["0x100a42e9", "test ebx, ebx"], ["0x100a42eb", "jne 0xe"], ["0x100a42ed", "test edi, edi"], ["0x100a42ef", "je 0x8"], ["0x100a42f1", "push 1"], ["0x100a42f3", "mov eax, dword ptr [edi]"], ["0x100a42f5", "mov ecx, edi"], ["0x100a42f7", "call dword ptr [eax]"], ["0x100a42f9", "xor edi, edi"], ["0x100a42fb", "mov eax, edi"]], "recomp": [["0x1004c96f", "mov dword ptr [esi + 4], eax"], ["0x1004c972", "test eax, eax"], ["0x1004c974", "je 0x26"], ["0x1004c976", "mov ecx, dword ptr [ebx + 4]"], ["0x1004c979", "mov ebx, dword ptr [ebp + 8]"], ["0x1004c97c", "mov edx, dword ptr [ecx + 4]"], ["0x1004c97f", "mov dword ptr [eax + 4], edx"], ["0x1004c982", "mov ecx, dword ptr [ebx + 4]"], ["0x1004c985", "mov dword ptr [eax], ecx"], ["0x1004c987", "mov eax, esi"]]}, {"both": [["0x100a42fd", "mov ecx, dword ptr [ebp - 0xc]", "0x1004c989"], ["0x100a4300", "mov dword ptr fs:[0], ecx", "0x1004c98c"], ["0x100a4307", "pop edi", "0x1004c993"], ["0x100a4308", "pop esi", "0x1004c994"], ["0x100a4309", "pop ebx", "0x1004c995"], ["0x100a430a", "mov esp, ebp", "0x1004c996"], ["0x100a430c", "pop ebp", "0x1004c998"], ["0x100a430d", "ret 4", "0x1004c999"]]}, {"orig": [], "recomp": [["0x1004c99c", "test esi, esi"], ["0x1004c99e", "je 0x8"], ["0x1004c9a0", "push 1"], ["0x1004c9a2", "mov eax, dword ptr [esi]"], ["0x1004c9a4", "mov ecx, esi"], ["0x1004c9a6", "call dword ptr [eax]"], ["0x1004c9a8", "xor esi, esi"], ["0x1004c9aa", "jmp -0x25"], ["0x1004c9ac", "mov eax, <OFFSET8>"], ["0x1004c9b1", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1004c9b6", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004c9b9", "push eax"], ["0x1004c9ba", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1004c9bf", "add esp, 4"], ["0x1004c9c2", "ret "]]}]]]}, {"address": "0x100a4330", "recomp": "0x1004c9d0", "name": "TglImpl::MeshImpl::GetTexture", "matching": 0.7638888888888888, "diff": [["@@ -0x100a4330,18 +0x1004c9d0,18 @@", [{"both": [["0x100a4330", "mov eax, dword ptr fs:[0]", "0x1004c9d0"], ["0x100a4336", "push ebp", "0x1004c9d6"], ["0x100a4337", "mov ebp, esp", "0x1004c9d7"], ["0x100a4339", "push -1", "0x1004c9d9"], ["0x100a433b", "push <OFFSET1>", "0x1004c9db"], ["0x100a4340", "push eax", "0x1004c9e0"], ["0x100a4341", "mov dword ptr fs:[0], esp", "0x1004c9e1"]]}, {"orig": [["0x100a4348", "sub esp, 4"]], "recomp": [["0x1004c9e8", "sub esp, 8"]]}, {"both": [["0x100a434b", "push ebx", "0x1004c9eb"], ["0x100a434c", "push esi", "0x1004c9ec"], ["0x100a434d", "push edi", "0x1004c9ed"], ["0x100a434e", "mov ebx, ecx", "0x1004c9ee"], ["0x100a4350", "push 8", "0x1004c9f0"], ["0x100a4352", "call ??2@YAPAXI@Z (FUNCTION)", "0x1004c9f2"], ["0x100a4357", "mov dword ptr [ebp - 0x10], eax", "0x1004c9f7"], ["0x100a435a", "add esp, 4", "0x1004c9fa"], ["0x100a435d", "mov edi, eax", "0x1004c9fd"], ["0x100a435f", "xor eax, eax", "0x1004c9ff"]]}]], ["@@ -0x100a4381,46 +0x1004ca21,44 @@", [{"both": [["0x100a4381", "mov dword ptr [edi + 4], eax", "0x1004ca21"], ["0x100a4384", "mov dword ptr [edi], TglImpl::TextureImpl::`vftable' (VTABLE)", "0x1004ca24"], ["0x100a438a", "jmp 0x12", "0x1004ca2a"], ["0x100a438c", "mov ecx, dword ptr [ebp - 0x10]", "0x1004ca2c"], ["0x100a438f", "jmp Tgl::Object::~Object (FUNCTION)", "0x1004ca2f"], ["0x100a4394", "mov ecx, dword ptr [ebp - 0x10]", "0x1004ca34"], ["0x100a4397", "jmp Tgl::Texture::~Texture (FUNCTION)", "0x1004ca37"], ["0x100a439c", "xor esi, esi", "0x1004ca3c"], ["0x100a439e", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004ca3e"], ["0x100a43a5", "mov eax, dword ptr [ebx + 4]", "0x1004ca45"]]}, {"orig": [["0x100a43a8", "lea ecx, [ebp - 0x10]"]], "recomp": [["0x1004ca48", "lea ecx, [ebp - 0x14]"]]}, {"both": [["0x100a43ab", "push ecx", "0x1004ca4b"], ["0x100a43ac", "mov edx, dword ptr [eax]", "0x1004ca4c"], ["0x100a43ae", "mov eax, dword ptr [eax + 4]", "0x1004ca4e"], ["0x100a43b1", "mov ebx, dword ptr [edx]", "0x1004ca51"], ["0x100a43b3", "push eax", "0x1004ca53"], ["0x100a43b4", "push edx", "0x1004ca54"], ["0x100a43b5", "call dword ptr [ebx + 0x74]", "0x1004ca55"], ["0x100a43b8", "test eax, eax", "0x1004ca58"], ["0x100a43ba", "mov eax, 1", "0x1004ca5a"], ["0x100a43bf", "jge 0x2", "0x1004ca5f"], ["0x100a43c1", "xor eax, eax", "0x1004ca61"]]}, {"orig": [["0x100a43c3", "cmp eax, 1"], ["0x100a43c6", "jne 0x1c"], ["0x100a43c8", "lea eax, [esi + 4]"], ["0x100a43cb", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100a43ce", "push eax"], ["0x100a43cf", "push <OFFSET8>"], ["0x100a43d4", "push ecx"], ["0x100a43d5", "mov eax, dword ptr [ecx]"], ["0x100a43d7", "call dword ptr [eax]"]], "recomp": []}, {"both": [["0x100a43d9", "test eax, eax", "0x1004ca63"]]}, {"orig": [["0x100a43db", "mov eax, 1"], ["0x100a43e0", "jge 0x2"], ["0x100a43e2", "xor eax, eax"], ["0x100a43e4", "mov ecx, dword ptr [ebp + 8]"], ["0x100a43e7", "pop edi"], ["0x100a43e8", "mov dword ptr [ecx], esi"]], "recomp": [["0x1004ca65", "je 0x6"], ["0x1004ca67", "mov eax, dword ptr [ebp - 0x14]"], ["0x1004ca6a", "mov dword ptr [esi + 4], eax"], ["0x1004ca6d", "mov eax, dword ptr [ebp + 8]"]]}, {"both": [["0x100a43ea", "mov ecx, dword ptr [ebp - 0xc]", "0x1004ca70"], ["0x100a43ed", "mov dword ptr fs:[0], ecx", "0x1004ca73"]]}, {"orig": [], "recomp": [["0x1004ca7a", "pop edi"], ["0x1004ca7b", "mov dword ptr [eax], esi"], ["0x1004ca7d", "mov eax, 1"]]}, {"both": [["0x100a43f4", "pop esi", "0x1004ca82"], ["0x100a43f5", "pop ebx", "0x1004ca83"], ["0x100a43f6", "mov esp, ebp", "0x1004ca84"], ["0x100a43f8", "pop ebp", "0x1004ca86"], ["0x100a43f9", "ret 4", "0x1004ca87"]]}, {"orig": [["0x100a43fc", "mov eax, <OFFSET9>"]], "recomp": [["0x1004ca8a", "mov eax, <OFFSET8>"], ["0x1004ca8f", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x1004ca94", "mov eax, dword ptr [ebp - 0x10]"], ["0x1004ca97", "push eax"], ["0x1004ca98", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1004ca9d", "add esp, 4"], ["0x1004caa0", "ret "]]}]]]}, {"address": "0x100a4420", "recomp": "0x1004ec90", "name": "OrientableROI::OrientableROI", "matching": 0.9236111111111112, "diff": [["@@ -0x100a44a0,31 +0x1004ed10,29 @@", [{"both": [["0x100a44a0", "push eax", "0x1004ed10"], ["0x100a44a1", "mov ecx, ebx", "0x1004ed11"], ["0x100a44a3", "call Vector2::Vector2 (FUNCTION)", "0x1004ed13"], ["0x100a44a8", "lea eax, [esi + 0x9c]", "0x1004ed18"], ["0x100a44ae", "mov dword ptr [ebx], Mx3DPointFloat::`vftable' (VTABLE)", "0x1004ed1e"], ["0x100a44b4", "lea ebx, [esi + 0x94]", "0x1004ed24"], ["0x100a44ba", "push eax", "0x1004ed2a"], ["0x100a44bb", "mov ecx, ebx", "0x1004ed2b"], ["0x100a44bd", "call Vector2::Vector2 (FUNCTION)", "0x1004ed2d"], ["0x100a44c2", "lea eax, [esi + 0xb0]", "0x1004ed32"]]}, {"orig": [], "recomp": [["0x1004ed38", "lea ecx, [esi + 0xc8]"]]}, {"both": [["0x100a44c8", "mov dword ptr [ebx], Mx3DPointFloat::`vftable' (VTABLE)", "0x1004ed3e"]]}, {"orig": [["0x100a44ce", "lea ebx, [esi + 0xa8]"], ["0x100a44d4", "push eax"], ["0x100a44d5", "mov ecx, ebx"], ["0x100a44d7", "call Vector3::Vector3 (FUNCTION)"], ["0x100a44dc", "lea eax, [esi + 0xc8]"]], "recomp": [["0x1004ed44", "mov dword ptr [esi + 0xac], eax"]]}, {"both": [["0x100a44e2", "mov edx, dword ptr [esi + 0x5c]", "0x1004ed4a"]]}, {"orig": [], "recomp": [["0x1004ed4d", "mov dword ptr [esi + 0xc4], ecx"]]}, {"both": [["0x100a44e5", "mov ecx, 0x4959038d", "0x1004ed53"]]}, {"orig": [["0x100a44ea", "mov dword ptr [ebx], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x100a44f0", "mov dword ptr [esi + 0xc4], eax"]], "recomp": []}, {"both": [["0x100a44f6", "mov dword ptr [esi], OrientableROI::`vftable' (VTABLE)", "0x1004ed58"]]}, {"orig": [], "recomp": [["0x1004ed5e", "mov dword ptr [esi + 0xa8], Vector2::`vftable' (VTABLE)"], ["0x1004ed68", "mov dword ptr [esi + 0xa8], Mx3DPointFloat::`vftable' (VTABLE)"]]}, {"both": [["0x100a44fc", "mov dword ptr [esi + 0xc0], Vector2::`vftable' (VTABLE)", "0x1004ed72"], ["0x100a4506", "mov dword ptr [esi + 0xc0], Mx3DPointFloat::`vftable' (VTABLE)", "0x1004ed7c"], ["0x100a4510", "mov dword ptr [edx], ecx", "0x1004ed86"], ["0x100a4512", "mov edx, dword ptr [esi + 0x5c]", "0x1004ed88"], ["0x100a4515", "mov dword ptr [edx + 4], ecx", "0x1004ed8b"], ["0x100a4518", "mov edx, dword ptr [esi + 0x5c]", "0x1004ed8e"], ["0x100a451b", "mov dword ptr [edx + 8], ecx", "0x1004ed91"], ["0x100a451e", "mov ecx, 0xc959038d", "0x1004ed94"], ["0x100a4523", "mov eax, dword ptr [esi + 0x70]", "0x1004ed99"], ["0x100a4526", "mov dword ptr [eax], ecx", "0x1004ed9c"]]}]], ["@@ -0x100a45c2,35 +0x1004ee38,29 @@", [{"both": [["0x100a45c2", "mov dword ptr [eax + 0x2c], edi", "0x1004ee38"], ["0x100a45c5", "mov eax, dword ptr [esi + 0x14]", "0x1004ee3b"], ["0x100a45c8", "mov dword ptr [eax + 0x28], ecx", "0x1004ee3e"], ["0x100a45cb", "mov eax, dword ptr [esi + 0x14]", "0x1004ee41"], ["0x100a45ce", "mov dword ptr [eax + 0x30], edi", "0x1004ee44"], ["0x100a45d1", "mov eax, dword ptr [esi + 0x14]", "0x1004ee47"], ["0x100a45d4", "mov dword ptr [eax + 0x34], edi", "0x1004ee4a"], ["0x100a45d7", "mov eax, dword ptr [esi + 0x14]", "0x1004ee4d"], ["0x100a45da", "mov dword ptr [eax + 0x38], edi", "0x1004ee50"], ["0x100a45dd", "mov eax, dword ptr [esi + 0x14]", "0x1004ee53"]]}, {"orig": [["0x100a45e0", "mov dword ptr [ebp - 4], 0xffffffff"]], "recomp": []}, {"both": [["0x100a45e7", "mov dword ptr [eax + 0x3c], edi", "0x1004ee56"], ["0x100a45ea", "mov eax, dword ptr [esi + 0x14]", "0x1004ee59"]]}, {"orig": [], "recomp": [["0x1004ee5c", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x100a45ed", "mov dword ptr [eax + 0x3c], ecx", "0x1004ee63"], ["0x100a45f0", "mov eax, esi", "0x1004ee66"], ["0x100a45f2", "mov ecx, dword ptr [ebp - 0xc]", "0x1004ee68"], ["0x100a45f5", "mov dword ptr [esi + 0xd4], edi", "0x1004ee6b"], ["0x100a45fb", "or dword ptr [esi + 0xd8], 3", "0x1004ee71"], ["0x100a4602", "mov dword ptr fs:[0], ecx", "0x1004ee78"], ["0x100a4609", "pop edi", "0x1004ee7f"], ["0x100a460a", "pop esi", "0x1004ee80"], ["0x100a460b", "pop ebx", "0x1004ee81"], ["0x100a460c", "mov esp, ebp", "0x1004ee82"], ["0x100a460e", "pop ebp", "0x1004ee84"], ["0x100a460f", "ret ", "0x1004ee85"]]}, {"orig": [["0x100a4610", "mov eax, <OFFSET10>"]], "recomp": [["0x1004ee86", "mov eax, <OFFSET9>"]]}, {"both": [["0x100a4615", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004ee8b"], ["0x100a461a", "mov ecx, dword ptr [ebp - 0x10]", "0x1004ee90"], ["0x100a461d", "jmp ROI::~ROI (FUNCTION)", "0x1004ee93"]]}, {"orig": [["0x100a4622", "int3 "], ["0x100a4623", "int3 "], ["0x100a4624", "int3 "], ["0x100a4625", "int3 "], ["0x100a4626", "int3 "], ["0x100a4627", "int3 "]], "recomp": []}]]]}, {"address": "0x100a4630", "recomp": "0x1004eee0", "name": "OrientableROI::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a46a0", "recomp": "0x1004ef50", "name": "OrientableROI::WrappedSetLocalTransform", "matching": 1.0, "diff": []}, {"address": "0x100a46b0", "recomp": "0x1004ef60", "name": "OrientableROI::FUN_100a46b0", "matching": 0.25426944971537, "diff": [["@@ -0x100a46b0,519 +0x1004ef60,535 @@", [{"orig": [["0x100a46b0", "sub esp, 0x228"], ["0x100a46b6", "lea eax, [esp + 0x1e8]"]], "recomp": [["0x1004ef60", "sub esp, 0x230"], ["0x1004ef66", "lea eax, [esp + 0x1f0]"]]}, {"both": [["0x100a46bd", "push ebx", "0x1004ef6d"]]}, {"orig": [], "recomp": [["0x1004ef6e", "mov dword ptr [esp + 0x1f0], eax"]]}, {"both": [["0x100a46be", "push esi", "0x1004ef75"]]}, {"orig": [["0x100a46bf", "xor edx, edx"], ["0x100a46c1", "mov dword ptr [esp + 0x1ec], eax"]], "recomp": [["0x1004ef76", "mov esi, dword ptr [esp + 0x23c]"]]}, {"both": [["0x100a46c8", "push edi", "0x1004ef7d"]]}, {"orig": [["0x100a46c9", "mov edi, dword ptr [esp + 0x238]"]], "recomp": []}, {"both": [["0x100a46d0", "push ebp", "0x1004ef7e"]]}, {"orig": [["0x100a46d1", "mov dword ptr [esp + 0x1f0], MxMatrix::`vftable' (VTABLE)"], ["0x100a46dc", "mov dword ptr [esp + 0xb0], edx"]], "recomp": [["0x1004ef7f", "xor edi, edi"], ["0x1004ef81", "mov dword ptr [esp + 0x1f8], MxMatrix::`vftable' (VTABLE)"], ["0x1004ef8c", "mov dword ptr [esp + 0xa0], edi"]]}, {"both": [["0x100a46e3", "xor ebx, ebx", "0x1004ef93"]]}, {"orig": [["0x100a46e5", "mov esi, dword ptr [esp + 0xb0]"]], "recomp": [["0x1004ef95", "mov edx, dword ptr [esp + 0xa0]"]]}, {"both": [["0x100a46ec", "jmp 0x4", "0x1004ef9c"]]}, {"orig": [["0x100a46ee", "fstp qword ptr [esp + esi + 0x10]"]], "recomp": [["0x1004ef9e", "fstp qword ptr [esp + edx + 0x10]"]]}, {"both": [["0x100a46f2", "cmp ebx, 4", "0x1004efa2"], ["0x100a46f5", "jge 0x21", "0x1004efa5"]]}, {"orig": [["0x100a46f7", "lea eax, [edx + ebx]"], ["0x100a46fa", "mov ebp, dword ptr [edi + 4]"]], "recomp": [["0x1004efa7", "lea eax, [ebx + edi*4]"], ["0x1004efaa", "mov ebp, dword ptr [esi + 4]"]]}, {"both": [["0x100a46fd", "shl eax, 2", "0x1004efad"]]}, {"orig": [["0x100a4700", "add esi, 8"]], "recomp": [["0x1004efb0", "add edx, 8"]]}, {"both": [["0x100a4703", "inc ebx", "0x1004efb3"], ["0x100a4704", "fld dword ptr [ebp + eax]", "0x1004efb4"], ["0x100a4708", "mov ebp, dword ptr [ecx + 0x14]", "0x1004efb8"]]}, {"orig": [["0x100a470b", "fstp qword ptr [esp + esi + 0x130]"]], "recomp": [["0x1004efbb", "fstp qword ptr [esp + edx + 0x128]"]]}, {"both": [["0x100a4712", "fld dword ptr [ebp + eax]", "0x1004efc2"], ["0x100a4716", "jmp -0x2a", "0x1004efc6"]]}, {"orig": [["0x100a4718", "add dword ptr [esp + 0xb0], 0x20"], ["0x100a4720", "add edx, 4"], ["0x100a4723", "cmp dword ptr [esp + 0xb0], 0x80"], ["0x100a472e", "jl -0x4d"]], "recomp": [["0x1004efc8", "add dword ptr [esp + 0xa0], 0x20"], ["0x1004efd0", "inc edi"], ["0x1004efd1", "cmp dword ptr [esp + 0xa0], 0x80"], ["0x1004efdc", "jl -0x4b"], ["0x1004efde", "fld qword ptr [esp + 0x60]"], ["0x1004efe2", "fmul qword ptr [esp + 0x88]"]]}, {"both": [["0x100a4730", "fld qword ptr [esp + 0x80]", "0x1004efe9"]]}, {"orig": [["0x100a4737", "fmul qword ptr [esp + 0x58]"], ["0x100a473b", "fld qword ptr [esp + 0x78]"], ["0x100a473f", "fmul qword ptr [esp + 0x60]"], ["0x100a4743", "fsubp st(1)"]], "recomp": [["0x1004eff0", "fmul qword ptr [esp + 0x68]"], ["0x1004eff4", "fsubp st(1)"], ["0x1004eff6", "fld qword ptr [esp + 0x60]"], ["0x1004effa", "fmul qword ptr [esp + 0x90]"], ["0x1004f001", "fld qword ptr [esp + 0x80]"], ["0x1004f008", "fmul qword ptr [esp + 0x70]"], ["0x1004f00c", "fsubp st(1)"], ["0x1004f00e", "fld qword ptr [esp + 0x68]"], ["0x1004f012", "fmul qword ptr [esp + 0x90]"], ["0x1004f019", "fld qword ptr [esp + 0x70]"], ["0x1004f01d", "fmul qword ptr [esp + 0x88]"], ["0x1004f024", "fsubp st(1)"], ["0x1004f026", "fld qword ptr [esp + 0x50]"], ["0x1004f02a", "fmul st(3)"], ["0x1004f02c", "fld qword ptr [esp + 0x48]"], ["0x1004f030", "fmul st(3)"], ["0x1004f032", "fsubp st(1)"], ["0x1004f034", "fld qword ptr [esp + 0x40]"], ["0x1004f038", "fmul st(2)"], ["0x1004f03a", "faddp st(1)"]]}, {"both": [["0x100a4745", "fld qword ptr [esp + 0x58]", "0x1004f03c"], ["0x100a4749", "fmul qword ptr [esp + 0x90]", "0x1004f040"], ["0x100a4750", "fld qword ptr [esp + 0x70]", "0x1004f047"], ["0x100a4754", "fmul qword ptr [esp + 0x78]", "0x1004f04b"], ["0x100a4758", "fsubp st(1)", "0x1004f04f"]]}, {"orig": [["0x100a475a", "fld qword ptr [esp + 0x90]"], ["0x100a4761", "fmul qword ptr [esp + 0x60]"], ["0x100a4765", "fld qword ptr [esp + 0x80]"], ["0x100a476c", "fmul qword ptr [esp + 0x70]"], ["0x100a4770", "fsubp st(1)"], ["0x100a4772", "fld qword ptr [esp + 0x50]"], ["0x100a4776", "fmul st(3)"], ["0x100a4778", "fld qword ptr [esp + 0x40]"], ["0x100a477c", "fmul st(3)"], ["0x100a477e", "fsubp st(1)"], ["0x100a4780", "fld qword ptr [esp + 0x38]"], ["0x100a4784", "fmul st(2)"], ["0x100a4786", "faddp st(1)"], ["0x100a4788", "fld qword ptr [esp + 0x88]"], ["0x100a478f", "fmul qword ptr [esp + 0x60]"], ["0x100a4793", "fld qword ptr [esp + 0x80]"], ["0x100a479a", "fmul qword ptr [esp + 0x68]"], ["0x100a479e", "fsubp st(1)"]], "recomp": []}, {"both": [["0x100a47a0", "fld qword ptr [esp + 0x88]", "0x1004f051"], ["0x100a47a7", "fmul qword ptr [esp + 0x58]", "0x1004f058"], ["0x100a47ab", "fld qword ptr [esp + 0x78]", "0x1004f05c"], ["0x100a47af", "fmul qword ptr [esp + 0x68]", "0x1004f060"], ["0x100a47b3", "fsubp st(1)", "0x1004f064"]]}, {"orig": [["0x100a47b5", "fstp qword ptr [esp + 0x130]"]], "recomp": [["0x1004f066", "fstp qword ptr [esp + 0x120]"]]}, {"both": [["0x100a47bc", "fld qword ptr [esp + 0x38]", "0x1004f06d"]]}, {"orig": [["0x100a47c0", "fmul st(1)"], ["0x100a47c2", "fld qword ptr [esp + 0x40]"], ["0x100a47c6", "fmul qword ptr [esp + 0x130]"], ["0x100a47cd", "fsubp st(1)"]], "recomp": [["0x1004f071", "fmul st(3)"]]}, {"both": [["0x100a47cf", "fld qword ptr [esp + 0x48]", "0x1004f073"]]}, {"orig": [["0x100a47d3", "fmul st(6)"], ["0x100a47d5", "faddp st(1)"], ["0x100a47d7", "fstp qword ptr [esp + 0x1d0]"], ["0x100a47de", "fld qword ptr [esp + 0x68]"]], "recomp": [["0x1004f077", "fmul st(2)"], ["0x1004f079", "fsubp st(1)"], ["0x1004f07b", "fld qword ptr [esp + 0x50]"], ["0x1004f07f", "fmul qword ptr [esp + 0x120]"], ["0x1004f086", "faddp st(1)"], ["0x1004f088", "fstp qword ptr [esp + 0x98]"], ["0x1004f08f", "fld qword ptr [esp + 0x80]"], ["0x1004f096", "fmul qword ptr [esp + 0x58]"], ["0x1004f09a", "fld qword ptr [esp + 0x60]"], ["0x1004f09e", "fmul qword ptr [esp + 0x78]"], ["0x1004f0a2", "fsubp st(1)"], ["0x1004f0a4", "fstp qword ptr [esp + 0x128]"], ["0x1004f0ab", "fld qword ptr [esp + 0x38]"], ["0x1004f0af", "fmul st(5)"], ["0x1004f0b1", "fld qword ptr [esp + 0x40]"], ["0x1004f0b5", "fmul qword ptr [esp + 0x120]"], ["0x1004f0bc", "fsubp st(1)"], ["0x1004f0be", "fld qword ptr [esp + 0x48]"], ["0x1004f0c2", "fmul qword ptr [esp + 0x128]"], ["0x1004f0c9", "faddp st(1)"], ["0x1004f0cb", "fstp qword ptr [esp + 0x1d8]"], ["0x1004f0d2", "fld qword ptr [esp + 0x38]"], ["0x1004f0d6", "fmul st(4)"], ["0x1004f0d8", "fld qword ptr [esp + 0x40]"], ["0x1004f0dc", "fmul st(2)"], ["0x1004f0de", "fsubp st(1)"], ["0x1004f0e0", "fld qword ptr [esp + 0x50]"], ["0x1004f0e4", "fmul qword ptr [esp + 0x128]"], ["0x1004f0eb", "faddp st(1)"], ["0x1004f0ed", "fstp qword ptr [esp + 0x1b8]"], ["0x1004f0f4", "fld qword ptr [esp + 0x18]"], ["0x1004f0f8", "fmul st(2)"], ["0x1004f0fa", "fld qword ptr [esp + 0x20]"], ["0x1004f0fe", "fmul qword ptr [esp + 0x98]"], ["0x1004f105", "fsubp st(1)"], ["0x1004f107", "fld qword ptr [esp + 0x30]"], ["0x1004f10b", "fmul qword ptr [esp + 0x1d8]"], ["0x1004f112", "fsubp st(1)"], ["0x1004f114", "fld qword ptr [esp + 0x28]"], ["0x1004f118", "fmul qword ptr [esp + 0x1b8]"], ["0x1004f11f", "faddp st(1)"], ["0x1004f121", "fdivr qword ptr [1.0 (FLOAT)]"], ["0x1004f127", "fstp qword ptr [esp + 0x10]"], ["0x1004f12b", "fxch st(1)"], ["0x1004f12d", "fmul qword ptr [esp + 0x10]"], ["0x1004f131", "fstp qword ptr [esp + 0xa0]"], ["0x1004f138", "fld qword ptr [esp + 0x20]"], ["0x1004f13c", "fmul st(2)"], ["0x1004f13e", "fld qword ptr [esp + 0x28]"], ["0x1004f142", "fmul st(4)"], ["0x1004f144", "fsubp st(1)"], ["0x1004f146", "fld qword ptr [esp + 0x30]"], ["0x1004f14a", "fmul st(5)"], ["0x1004f14c", "faddp st(1)"], ["0x1004f14e", "fchs "], ["0x1004f150", "fmul qword ptr [esp + 0x10]"], ["0x1004f154", "fstp qword ptr [esp + 0xa8]"], ["0x1004f15b", "fld qword ptr [esp + 0x48]"]]}, {"both": [["0x100a47e2", "fmul qword ptr [esp + 0x90]", "0x1004f15f"]]}, {"orig": [["0x100a47e9", "fld qword ptr [esp + 0x70]"]], "recomp": [["0x1004f166", "fld qword ptr [esp + 0x50]"]]}, {"both": [["0x100a47ed", "fmul qword ptr [esp + 0x88]", "0x1004f16a"], ["0x100a47f4", "fsubp st(1)", "0x1004f171"]]}, {"orig": [["0x100a47f6", "fstp qword ptr [esp + 0xa0]"], ["0x100a47fd", "fld qword ptr [esp + 0x50]"], ["0x100a4801", "fmul qword ptr [esp + 0x130]"], ["0x100a4808", "fld qword ptr [esp + 0x48]"], ["0x100a480c", "fmul st(5)"], ["0x100a480e", "fsubp st(1)"], ["0x100a4810", "fld qword ptr [esp + 0x38]"], ["0x100a4814", "fmul qword ptr [esp + 0xa0]"], ["0x100a481b", "faddp st(1)"], ["0x100a481d", "fstp qword ptr [esp + 0x98]"], ["0x100a4824", "fld qword ptr [esp + 0x50]"], ["0x100a4828", "fmul st(1)"], ["0x100a482a", "fld qword ptr [esp + 0x48]"], ["0x100a482e", "fmul st(4)"], ["0x100a4830", "fsubp st(1)"], ["0x100a4832", "fld qword ptr [esp + 0x40]"], ["0x100a4836", "fmul qword ptr [esp + 0xa0]"], ["0x100a483d", "faddp st(1)"], ["0x100a483f", "fstp qword ptr [esp + 0xb0]"], ["0x100a4846", "fld qword ptr [esp + 0x28]"], ["0x100a484a", "fmul st(2)"], ["0x100a484c", "fld qword ptr [esp + 0x30]"], ["0x100a4850", "fmul qword ptr [esp + 0x1d0]"], ["0x100a4857", "fsubp st(1)"], ["0x100a4859", "fld qword ptr [esp + 0x20]"], ["0x100a485d", "fmul qword ptr [esp + 0x98]"], ["0x100a4864", "fsubp st(1)"], ["0x100a4866", "fld qword ptr [esp + 0x18]"], ["0x100a486a", "fmul qword ptr [esp + 0xb0]"], ["0x100a4871", "faddp st(1)"], ["0x100a4873", "fdivr qword ptr [1.0 (FLOAT)]"], ["0x100a4879", "fst qword ptr [esp + 0x10]"], ["0x100a487d", "fmul qword ptr [esp + 0xb0]"], ["0x100a4884", "fstp qword ptr [esp + 0xb0]"], ["0x100a488b", "fld qword ptr [esp + 0x30]"], ["0x100a488f", "fmul st(1)"], ["0x100a4891", "fld qword ptr [esp + 0x28]"], ["0x100a4895", "fmul st(4)"], ["0x100a4897", "fsubp st(1)"], ["0x100a4899", "fld qword ptr [esp + 0x20]"], ["0x100a489d", "fmul qword ptr [esp + 0xa0]"], ["0x100a48a4", "faddp st(1)"], ["0x100a48a6", "fchs "], ["0x100a48a8", "fmul qword ptr [esp + 0x10]"], ["0x100a48ac", "fstp qword ptr [esp + 0xb8]"]], "recomp": [["0x1004f173", "fld qword ptr [esp + 0x40]"], ["0x1004f177", "fmul qword ptr [esp + 0x90]"], ["0x1004f17e", "fld qword ptr [esp + 0x80]"], ["0x1004f185", "fmul qword ptr [esp + 0x50]"], ["0x1004f189", "fsubp st(1)"], ["0x1004f18b", "fstp qword ptr [esp + 0x1c0]"]]}, {"both": [["0x100a48b3", "fld qword ptr [esp + 0x40]", "0x1004f192"], ["0x100a48b7", "fmul qword ptr [esp + 0x88]", "0x1004f196"], ["0x100a48be", "fld qword ptr [esp + 0x80]", "0x1004f19d"], ["0x100a48c5", "fmul qword ptr [esp + 0x48]", "0x1004f1a4"], ["0x100a48c9", "fsubp st(1)", "0x1004f1a8"]]}, {"orig": [["0x100a48cb", "fstp qword ptr [esp + 0x1d8]"], ["0x100a48d2", "fld qword ptr [esp + 0x40]"], ["0x100a48d6", "fmul qword ptr [esp + 0x90]"], ["0x100a48dd", "fld qword ptr [esp + 0x80]"], ["0x100a48e4", "fmul qword ptr [esp + 0x50]"], ["0x100a48e8", "fsubp st(1)"], ["0x100a48ea", "fstp qword ptr [esp + 0x1c0]"], ["0x100a48f1", "fld qword ptr [esp + 0x48]"], ["0x100a48f5", "fmul qword ptr [esp + 0x90]"], ["0x100a48fc", "fld qword ptr [esp + 0x50]"], ["0x100a4900", "fmul qword ptr [esp + 0x88]"], ["0x100a4907", "fsubp st(1)"], ["0x100a4909", "fstp qword ptr [esp + 0xa8]"], ["0x100a4910", "fld qword ptr [esp + 0x30]"], ["0x100a4914", "fmul qword ptr [esp + 0x1d8]"]], "recomp": [["0x1004f1aa", "fstp qword ptr [esp + 0x1e0]"], ["0x1004f1b1", "fld qword ptr [esp + 0x20]"], ["0x1004f1b5", "fmul st(1)"]]}, {"both": [["0x100a491b", "fld qword ptr [esp + 0x28]", "0x1004f1b7"], ["0x100a491f", "fmul qword ptr [esp + 0x1c0]", "0x1004f1bb"], ["0x100a4926", "fsubp st(1)", "0x1004f1c2"]]}, {"orig": [["0x100a4928", "fld qword ptr [esp + 0x20]"], ["0x100a492c", "fmul qword ptr [esp + 0xa8]"], ["0x100a4933", "faddp st(1)"], ["0x100a4935", "fmul qword ptr [esp + 0x10]"], ["0x100a4939", "fstp qword ptr [esp + 0xc0]"]], "recomp": [["0x1004f1c4", "fld qword ptr [esp + 0x30]"], ["0x1004f1c8", "fmul qword ptr [esp + 0x1e0]"], ["0x1004f1cf", "faddp st(1)"], ["0x1004f1d1", "fmul qword ptr [esp + 0x10]"], ["0x1004f1d5", "fstp qword ptr [esp + 0xb0]"]]}, {"both": [["0x100a4940", "fld qword ptr [esp + 0x70]", "0x1004f1dc"], ["0x100a4944", "fmul qword ptr [esp + 0x48]", "0x1004f1e0"], ["0x100a4948", "fld qword ptr [esp + 0x50]", "0x1004f1e4"], ["0x100a494c", "fmul qword ptr [esp + 0x68]", "0x1004f1e8"], ["0x100a4950", "fsubp st(1)", "0x1004f1ec"]]}, {"orig": [["0x100a4952", "fstp qword ptr [esp + 0x1b8]"]], "recomp": [["0x1004f1ee", "fstp qword ptr [esp + 0x1b0]"]]}, {"both": [["0x100a4959", "fld qword ptr [esp + 0x70]", "0x1004f1f5"], ["0x100a495d", "fmul qword ptr [esp + 0x40]", "0x1004f1f9"]]}, {"orig": [["0x100a4961", "fld qword ptr [esp + 0x50]"], ["0x100a4965", "fmul qword ptr [esp + 0x60]"], ["0x100a4969", "fsubp st(1)"], ["0x100a496b", "fstp qword ptr [esp + 0x1c8]"]], "recomp": [["0x1004f1fd", "fld qword ptr [esp + 0x60]"], ["0x1004f201", "fmul qword ptr [esp + 0x50]"], ["0x1004f205", "fsubp st(1)"], ["0x1004f207", "fstp qword ptr [esp + 0x1d0]"]]}, {"both": [["0x100a4972", "fld qword ptr [esp + 0x40]", "0x1004f20e"], ["0x100a4976", "fmul qword ptr [esp + 0x68]", "0x1004f212"]]}, {"orig": [["0x100a497a", "fld qword ptr [esp + 0x48]"], ["0x100a497e", "fmul qword ptr [esp + 0x60]"], ["0x100a4982", "fsubp st(1)"], ["0x100a4984", "fstp qword ptr [esp + 0x1e8]"], ["0x100a498b", "fld qword ptr [esp + 0x20]"], ["0x100a498f", "fmul qword ptr [esp + 0x1b8]"], ["0x100a4996", "fld qword ptr [esp + 0x28]"], ["0x100a499a", "fmul qword ptr [esp + 0x1c8]"], ["0x100a49a1", "fsubp st(1)"], ["0x100a49a3", "fld qword ptr [esp + 0x30]"], ["0x100a49a7", "fmul qword ptr [esp + 0x1e8]"], ["0x100a49ae", "faddp st(1)"], ["0x100a49b0", "fchs "]], "recomp": [["0x1004f216", "fld qword ptr [esp + 0x60]"], ["0x1004f21a", "fmul qword ptr [esp + 0x48]"], ["0x1004f21e", "fsubp st(1)"], ["0x1004f220", "fstp qword ptr [esp + 0x1f0]"], ["0x1004f227", "fld qword ptr [esp + 0x20]"], ["0x1004f22b", "fmul qword ptr [esp + 0x1b0]"], ["0x1004f232", "fld qword ptr [esp + 0x28]"], ["0x1004f236", "fmul qword ptr [esp + 0x1d0]"], ["0x1004f23d", "fsubp st(1)"], ["0x1004f23f", "fld qword ptr [esp + 0x30]"], ["0x1004f243", "fmul qword ptr [esp + 0x1f0]"], ["0x1004f24a", "faddp st(1)"], ["0x1004f24c", "fchs "], ["0x1004f24e", "fmul qword ptr [esp + 0x10]"], ["0x1004f252", "fstp qword ptr [esp + 0xb8]"], ["0x1004f259", "fld qword ptr [esp + 0x98]"], ["0x1004f260", "fchs "], ["0x1004f262", "fmul qword ptr [esp + 0x10]"], ["0x1004f266", "fstp qword ptr [esp + 0xc0]"], ["0x1004f26d", "fxch st(2)"], ["0x1004f26f", "fmul qword ptr [esp + 0x18]"], ["0x1004f273", "fld qword ptr [esp + 0x28]"], ["0x1004f277", "fmul st(2)"], ["0x1004f279", "fsubp st(1)"], ["0x1004f27b", "fld qword ptr [esp + 0x30]"], ["0x1004f27f", "fmul qword ptr [esp + 0x120]"], ["0x1004f286", "faddp st(1)"]]}, {"both": [["0x100a49b2", "fmul qword ptr [esp + 0x10]", "0x1004f288"], ["0x100a49b6", "fstp qword ptr [esp + 0xc8]", "0x1004f28c"]]}, {"orig": [["0x100a49bd", "fld qword ptr [esp + 0x98]"], ["0x100a49c4", "fchs "], ["0x100a49c6", "fmul qword ptr [esp + 0x10]"], ["0x100a49ca", "fstp qword ptr [esp + 0xd0]"], ["0x100a49d1", "fld qword ptr [esp + 0x30]"], ["0x100a49d5", "fmul qword ptr [esp + 0x130]"], ["0x100a49dc", "fld qword ptr [esp + 0x28]"], ["0x100a49e0", "fmul st(5)"], ["0x100a49e2", "fsubp st(1)"], ["0x100a49e4", "fld qword ptr [esp + 0x18]"], ["0x100a49e8", "fmul qword ptr [esp + 0xa0]"], ["0x100a49ef", "faddp st(1)"], ["0x100a49f1", "fmul qword ptr [esp + 0x10]"], ["0x100a49f5", "fstp qword ptr [esp + 0xd8]"], ["0x100a49fc", "fld qword ptr [esp + 0x38]"], ["0x100a4a00", "fmul qword ptr [esp + 0x90]"], ["0x100a4a07", "fld qword ptr [esp + 0x50]"], ["0x100a4a0b", "fmul qword ptr [esp + 0x78]"], ["0x100a4a0f", "fsubp st(1)"], ["0x100a4a11", "fstp qword ptr [esp + 0x98]"]], "recomp": []}, {"both": [["0x100a4a18", "fld qword ptr [esp + 0x88]", "0x1004f293"], ["0x100a4a1f", "fmul qword ptr [esp + 0x38]", "0x1004f29a"], ["0x100a4a23", "fld qword ptr [esp + 0x78]", "0x1004f29e"], ["0x100a4a27", "fmul qword ptr [esp + 0x48]", "0x1004f2a2"], ["0x100a4a2b", "fsubp st(1)", "0x1004f2a6"]]}, {"orig": [["0x100a4a2d", "fstp qword ptr [esp + 0xa0]"], ["0x100a4a34", "fld qword ptr [esp + 0x18]"], ["0x100a4a38", "fmul qword ptr [esp + 0xa8]"]], "recomp": [["0x1004f2a8", "fld qword ptr [esp + 0x38]"], ["0x1004f2ac", "fmul qword ptr [esp + 0x90]"], ["0x1004f2b3", "fld qword ptr [esp + 0x50]"], ["0x1004f2b7", "fmul qword ptr [esp + 0x78]"], ["0x1004f2bb", "fsubp st(1)"], ["0x1004f2bd", "fstp qword ptr [esp + 0x98]"], ["0x1004f2c4", "fld qword ptr [esp + 0x30]"], ["0x1004f2c8", "fmul st(1)"]]}, {"both": [["0x100a4a3f", "fld qword ptr [esp + 0x28]", "0x1004f2ca"], ["0x100a4a43", "fmul qword ptr [esp + 0x98]", "0x1004f2ce"], ["0x100a4a4a", "fsubp st(1)", "0x1004f2d5"]]}, {"orig": [["0x100a4a4c", "fld qword ptr [esp + 0x30]"], ["0x100a4a50", "fmul qword ptr [esp + 0xa0]"], ["0x100a4a57", "faddp st(1)"], ["0x100a4a59", "fchs "], ["0x100a4a5b", "fmul qword ptr [esp + 0x10]"], ["0x100a4a5f", "fstp qword ptr [esp + 0xe0]"]], "recomp": [["0x1004f2d7", "fld qword ptr [esp + 0x18]"], ["0x1004f2db", "fmul st(4)"], ["0x1004f2dd", "faddp st(1)"], ["0x1004f2df", "fchs "], ["0x1004f2e1", "fmul qword ptr [esp + 0x10]"], ["0x1004f2e5", "fstp qword ptr [esp + 0xd0]"]]}, {"both": [["0x100a4a66", "fld qword ptr [esp + 0x68]", "0x1004f2ec"], ["0x100a4a6a", "fmul qword ptr [esp + 0x38]", "0x1004f2f0"], ["0x100a4a6e", "fld qword ptr [esp + 0x58]", "0x1004f2f4"], ["0x100a4a72", "fmul qword ptr [esp + 0x48]", "0x1004f2f8"], ["0x100a4a76", "fsubp st(1)", "0x1004f2fc"]]}, {"orig": [["0x100a4a78", "fstp qword ptr [esp + 0x1e0]"]], "recomp": [["0x1004f2fe", "fstp qword ptr [esp + 0x1e8]"]]}, {"both": [["0x100a4a7f", "fld qword ptr [esp + 0x70]", "0x1004f305"], ["0x100a4a83", "fmul qword ptr [esp + 0x38]", "0x1004f309"], ["0x100a4a87", "fld qword ptr [esp + 0x50]", "0x1004f30d"], ["0x100a4a8b", "fmul qword ptr [esp + 0x58]", "0x1004f311"], ["0x100a4a8f", "fsubp st(1)", "0x1004f315"]]}, {"orig": [["0x100a4a91", "fstp qword ptr [esp + 0xa8]"], ["0x100a4a98", "fld qword ptr [esp + 0x30]"], ["0x100a4a9c", "fmul qword ptr [esp + 0x1e0]"], ["0x100a4aa3", "fld qword ptr [esp + 0x28]"], ["0x100a4aa7", "fmul qword ptr [esp + 0xa8]"], ["0x100a4aae", "fsubp st(1)"], ["0x100a4ab0", "fld qword ptr [esp + 0x18]"]], "recomp": [["0x1004f317", "fstp qword ptr [esp + 0x1c8]"], ["0x1004f31e", "fld qword ptr [esp + 0x30]"], ["0x1004f322", "fmul qword ptr [esp + 0x1e8]"], ["0x1004f329", "fld qword ptr [esp + 0x28]"], ["0x1004f32d", "fmul qword ptr [esp + 0x1c8]"], ["0x1004f334", "fsubp st(1)"], ["0x1004f336", "fld qword ptr [esp + 0x18]"], ["0x1004f33a", "fmul qword ptr [esp + 0x1b0]"], ["0x1004f341", "faddp st(1)"], ["0x1004f343", "fmul qword ptr [esp + 0x10]"], ["0x1004f347", "fstp qword ptr [esp + 0xd8]"], ["0x1004f34e", "fld qword ptr [esp + 0x10]"]]}, {"both": [["0x100a4ab4", "fmul qword ptr [esp + 0x1b8]", "0x1004f352"]]}, {"orig": [["0x100a4abb", "faddp st(1)"]], "recomp": [["0x1004f359", "fstp qword ptr [esp + 0xe0]"], ["0x1004f360", "fxch st(3)"], ["0x1004f362", "fmul qword ptr [esp + 0x18]"], ["0x1004f366", "fld qword ptr [esp + 0x20]"], ["0x1004f36a", "fmulp st(2)"], ["0x1004f36c", "fsubrp st(1)"], ["0x1004f36e", "fld qword ptr [esp + 0x30]"], ["0x1004f372", "fmul qword ptr [esp + 0x128]"], ["0x1004f379", "faddp st(1)"], ["0x1004f37b", "fchs "]]}, {"both": [["0x100a4abd", "fmul qword ptr [esp + 0x10]", "0x1004f37d"], ["0x100a4ac1", "fstp qword ptr [esp + 0xe8]", "0x1004f381"]]}, {"orig": [["0x100a4ac8", "fxch st(1)"], ["0x100a4aca", "fmul qword ptr [esp + 0x10]"], ["0x100a4ace", "fstp qword ptr [esp + 0xf0]"], ["0x100a4ad5", "fld qword ptr [esp + 0x30]"], ["0x100a4ad9", "fmul st(4)"], ["0x100a4adb", "fld qword ptr [esp + 0x20]"], ["0x100a4adf", "fmul st(4)"], ["0x100a4ae1", "fsubp st(1)"], ["0x100a4ae3", "fld qword ptr [esp + 0x18]"], ["0x100a4ae7", "fmul st(3)"], ["0x100a4ae9", "faddp st(1)"], ["0x100a4aeb", "fchs "], ["0x100a4aed", "fmul qword ptr [esp + 0x10]"], ["0x100a4af1", "fstp qword ptr [esp + 0xf8]"]], "recomp": []}, {"both": [["0x100a4af8", "fld qword ptr [esp + 0x80]", "0x1004f388"], ["0x100a4aff", "fmul qword ptr [esp + 0x38]", "0x1004f38f"], ["0x100a4b03", "fld qword ptr [esp + 0x40]", "0x1004f393"], ["0x100a4b07", "fmul qword ptr [esp + 0x78]", "0x1004f397"], ["0x100a4b0b", "fsubp st(1)", "0x1004f39b"], ["0x100a4b0d", "fld qword ptr [esp + 0x18]", "0x1004f39d"], ["0x100a4b11", "fmul qword ptr [esp + 0x1c0]", "0x1004f3a1"], ["0x100a4b18", "fld qword ptr [esp + 0x20]", "0x1004f3a8"], ["0x100a4b1c", "fmul qword ptr [esp + 0x98]", "0x1004f3ac"], ["0x100a4b23", "fsubp st(1)", "0x1004f3b3"], ["0x100a4b25", "fld qword ptr [esp + 0x30]", "0x1004f3b5"], ["0x100a4b29", "fmul st(2)", "0x1004f3b9"], ["0x100a4b2b", "faddp st(1)", "0x1004f3bb"], ["0x100a4b2d", "fmul qword ptr [esp + 0x10]", "0x1004f3bd"]]}, {"orig": [], "recomp": [["0x1004f3c1", "fstp qword ptr [esp + 0xf0]"], ["0x1004f3c8", "fld qword ptr [esp + 0x60]"], ["0x1004f3cc", "fmul qword ptr [esp + 0x38]"], ["0x1004f3d0", "fld qword ptr [esp + 0x40]"], ["0x1004f3d4", "fmul qword ptr [esp + 0x58]"], ["0x1004f3d8", "fsubp st(1)"], ["0x1004f3da", "fld qword ptr [esp + 0x30]"], ["0x1004f3de", "fmul st(1)"], ["0x1004f3e0", "fld qword ptr [esp + 0x20]"], ["0x1004f3e4", "fmul qword ptr [esp + 0x1c8]"], ["0x1004f3eb", "fsubp st(1)"], ["0x1004f3ed", "fld qword ptr [esp + 0x18]"], ["0x1004f3f1", "fmul qword ptr [esp + 0x1d0]"], ["0x1004f3f8", "faddp st(1)"], ["0x1004f3fa", "fchs "], ["0x1004f3fc", "fmul qword ptr [esp + 0x10]"], ["0x1004f400", "fstp qword ptr [esp + 0xf8]"], ["0x1004f407", "fld qword ptr [esp + 0x1d8]"], ["0x1004f40e", "fchs "], ["0x1004f410", "fmul qword ptr [esp + 0x10]"]]}, {"both": [["0x100a4b31", "fstp qword ptr [esp + 0x100]", "0x1004f414"]]}, {"orig": [["0x100a4b38", "fld qword ptr [esp + 0x38]"], ["0x100a4b3c", "fmul qword ptr [esp + 0x60]"], ["0x100a4b40", "fld qword ptr [esp + 0x40]"], ["0x100a4b44", "fmul qword ptr [esp + 0x58]"], ["0x100a4b48", "fsubp st(1)"], ["0x100a4b4a", "fst qword ptr [esp + 0x98]"], ["0x100a4b51", "fmul qword ptr [esp + 0x30]"], ["0x100a4b55", "fld qword ptr [esp + 0x20]"], ["0x100a4b59", "fmul qword ptr [esp + 0xa8]"], ["0x100a4b60", "fsubp st(1)"], ["0x100a4b62", "fld qword ptr [esp + 0x18]"], ["0x100a4b66", "fmul qword ptr [esp + 0x1c8]"], ["0x100a4b6d", "faddp st(1)"], ["0x100a4b6f", "fchs "]], "recomp": [["0x1004f41b", "fxch st(4)"], ["0x1004f41d", "fmul qword ptr [esp + 0x18]"], ["0x1004f421", "fld qword ptr [esp + 0x20]"], ["0x1004f425", "fmul qword ptr [esp + 0x120]"], ["0x1004f42c", "fsubp st(1)"], ["0x1004f42e", "fld qword ptr [esp + 0x28]"], ["0x1004f432", "fmul qword ptr [esp + 0x128]"], ["0x1004f439", "faddp st(1)"]]}, {"both": [["0x100a4b71", "fmul qword ptr [esp + 0x10]", "0x1004f43b"], ["0x100a4b75", "fstp qword ptr [esp + 0x108]", "0x1004f43f"]]}, {"orig": [["0x100a4b7c", "fld qword ptr [esp + 0x1d0]"]], "recomp": [["0x1004f446", "fmul qword ptr [esp + 0x28]"], ["0x1004f44a", "fld qword ptr [esp + 0x20]"], ["0x1004f44e", "fmul st(3)"], ["0x1004f450", "fsubp st(1)"], ["0x1004f452", "fld qword ptr [esp + 0x18]"], ["0x1004f456", "fmul qword ptr [esp + 0x1e0]"], ["0x1004f45d", "faddp st(1)"]]}, {"both": [["0x100a4b83", "fchs ", "0x1004f45f"], ["0x100a4b85", "fmul qword ptr [esp + 0x10]", "0x1004f461"], ["0x100a4b89", "fstp qword ptr [esp + 0x110]", "0x1004f465"]]}, {"orig": [["0x100a4b90", "fxch st(4)"], ["0x100a4b92", "fmul qword ptr [esp + 0x28]"], ["0x100a4b96", "fld qword ptr [esp + 0x20]"], ["0x100a4b9a", "fmul qword ptr [esp + 0x130]"], ["0x100a4ba1", "fsubp st(1)"], ["0x100a4ba3", "fld qword ptr [esp + 0x18]"], ["0x100a4ba7", "fmulp st(2)"], ["0x100a4ba9", "faddp st(1)"], ["0x100a4bab", "fmul qword ptr [esp + 0x10]"], ["0x100a4baf", "fstp qword ptr [esp + 0x118]"]], "recomp": []}, {"both": [["0x100a4bb6", "fxch st(2)", "0x1004f46c"], ["0x100a4bb8", "fmul qword ptr [esp + 0x28]", "0x1004f46e"], ["0x100a4bbc", "fld qword ptr [esp + 0x20]", "0x1004f472"]]}, {"orig": [], "recomp": [["0x1004f476", "fmul qword ptr [esp + 0x1e8]"], ["0x1004f47d", "fsubp st(1)"], ["0x1004f47f", "fld qword ptr [esp + 0x18]"], ["0x1004f483", "fmul qword ptr [esp + 0x1f0]"], ["0x1004f48a", "faddp st(1)"], ["0x1004f48c", "fmul qword ptr [esp + 0x10]"], ["0x1004f490", "fstp qword ptr [esp + 0x118]"], ["0x1004f497", "fld qword ptr [esp + 0x190]"], ["0x1004f49e", "fmul qword ptr [esp + 0xb8]"], ["0x1004f4a5", "fld qword ptr [esp + 0x150]"], ["0x1004f4ac", "fmul qword ptr [esp + 0xa8]"], ["0x1004f4b3", "faddp st(1)"], ["0x1004f4b5", "fld qword ptr [esp + 0x170]"], ["0x1004f4bc", "fmul qword ptr [esp + 0xb0]"], ["0x1004f4c3", "faddp st(1)"], ["0x1004f4c5", "fld qword ptr [esp + 0x130]"]]}, {"both": [["0x100a4bc0", "fmul qword ptr [esp + 0xa0]", "0x1004f4cc"]]}, {"orig": [["0x100a4bc7", "fsubp st(1)"], ["0x100a4bc9", "fld qword ptr [esp + 0x18]"], ["0x100a4bcd", "fmul qword ptr [esp + 0x1d8]"], ["0x100a4bd4", "faddp st(1)"], ["0x100a4bd6", "fchs "], ["0x100a4bd8", "fmul qword ptr [esp + 0x10]"], ["0x100a4bdc", "fstp qword ptr [esp + 0x120]"], ["0x100a4be3", "fld qword ptr [esp + 0x28]"], ["0x100a4be7", "fmul qword ptr [esp + 0x98]"], ["0x100a4bee", "fld qword ptr [esp + 0x20]"], ["0x100a4bf2", "fmul qword ptr [esp + 0x1e0]"], ["0x100a4bf9", "fsubp st(1)"], ["0x100a4bfb", "fld qword ptr [esp + 0x18]"], ["0x100a4bff", "fmul qword ptr [esp + 0x1e8]"], ["0x100a4c06", "faddp st(1)"], ["0x100a4c08", "fmul qword ptr [esp + 0x10]"], ["0x100a4c0c", "fstp qword ptr [esp + 0x128]"], ["0x100a4c13", "fld qword ptr [esp + 0xc8]"], ["0x100a4c1a", "fmul qword ptr [esp + 0x198]"], ["0x100a4c21", "fld qword ptr [esp + 0xb8]"], ["0x100a4c28", "fmul qword ptr [esp + 0x158]"], ["0x100a4c2f", "faddp st(1)"], ["0x100a4c31", "fld qword ptr [esp + 0xc0]"], ["0x100a4c38", "fmul qword ptr [esp + 0x178]"], ["0x100a4c3f", "faddp st(1)"], ["0x100a4c41", "fld qword ptr [esp + 0xb0]"], ["0x100a4c48", "fmul qword ptr [esp + 0x138]"]], "recomp": []}, {"both": [["0x100a4c4f", "faddp st(1)", "0x1004f4d3"], ["0x100a4c51", "fstp qword ptr [esp + 0x18]", "0x1004f4d5"]]}, {"orig": [["0x100a4c55", "fld qword ptr [esp + 0xc0]"], ["0x100a4c5c", "fmul qword ptr [esp + 0x180]"], ["0x100a4c63", "fld qword ptr [esp + 0xb8]"], ["0x100a4c6a", "fmul qword ptr [esp + 0x160]"], ["0x100a4c71", "faddp st(1)"], ["0x100a4c73", "fld qword ptr [esp + 0xc8]"], ["0x100a4c7a", "fmul qword ptr [esp + 0x1a0]"], ["0x100a4c81", "faddp st(1)"], ["0x100a4c83", "fld qword ptr [esp + 0xb0]"], ["0x100a4c8a", "fmul qword ptr [esp + 0x140]"]], "recomp": [["0x1004f4d9", "fld qword ptr [esp + 0x178]"], ["0x1004f4e0", "fmul qword ptr [esp + 0xb0]"], ["0x1004f4e7", "fld qword ptr [esp + 0x198]"], ["0x1004f4ee", "fmul qword ptr [esp + 0xb8]"], ["0x1004f4f5", "faddp st(1)"], ["0x1004f4f7", "fld qword ptr [esp + 0x158]"], ["0x1004f4fe", "fmul qword ptr [esp + 0xa8]"], ["0x1004f505", "faddp st(1)"], ["0x1004f507", "fld qword ptr [esp + 0x138]"], ["0x1004f50e", "fmul qword ptr [esp + 0xa0]"]]}, {"both": [["0x100a4c91", "faddp st(1)", "0x1004f515"], ["0x100a4c93", "fstp qword ptr [esp + 0x20]", "0x1004f517"]]}, {"orig": [["0x100a4c97", "fld qword ptr [esp + 0xc8]"], ["0x100a4c9e", "fmul qword ptr [esp + 0x1a8]"], ["0x100a4ca5", "fld qword ptr [esp + 0xb8]"], ["0x100a4cac", "fmul qword ptr [esp + 0x168]"], ["0x100a4cb3", "faddp st(1)"], ["0x100a4cb5", "fld qword ptr [esp + 0xc0]"], ["0x100a4cbc", "fmul qword ptr [esp + 0x188]"], ["0x100a4cc3", "faddp st(1)"], ["0x100a4cc5", "fld qword ptr [esp + 0xb0]"], ["0x100a4ccc", "fmul qword ptr [esp + 0x148]"]], "recomp": [["0x1004f51b", "fld qword ptr [esp + 0x1a0]"], ["0x1004f522", "fmul qword ptr [esp + 0xb8]"], ["0x1004f529", "fld qword ptr [esp + 0x160]"], ["0x1004f530", "fmul qword ptr [esp + 0xa8]"], ["0x1004f537", "faddp st(1)"], ["0x1004f539", "fld qword ptr [esp + 0x180]"], ["0x1004f540", "fmul qword ptr [esp + 0xb0]"], ["0x1004f547", "faddp st(1)"], ["0x1004f549", "fld qword ptr [esp + 0x140]"], ["0x1004f550", "fmul qword ptr [esp + 0xa0]"]]}, {"both": [["0x100a4cd3", "faddp st(1)", "0x1004f557"], ["0x100a4cd5", "fstp qword ptr [esp + 0x28]", "0x1004f559"]]}, {"orig": [["0x100a4cd9", "fld qword ptr [esp + 0xc0]"], ["0x100a4ce0", "fmul qword ptr [esp + 0x190]"], ["0x100a4ce7", "fld qword ptr [esp + 0xb8]"], ["0x100a4cee", "fmul qword ptr [esp + 0x170]"], ["0x100a4cf5", "faddp st(1)"], ["0x100a4cf7", "fld qword ptr [esp + 0xc8]"], ["0x100a4cfe", "fmul qword ptr [esp + 0x1b0]"], ["0x100a4d05", "faddp st(1)"], ["0x100a4d07", "fld qword ptr [esp + 0xb0]"], ["0x100a4d0e", "fmul qword ptr [esp + 0x150]"]], "recomp": [["0x1004f55d", "fld qword ptr [esp + 0x188]"], ["0x1004f564", "fmul qword ptr [esp + 0xb0]"], ["0x1004f56b", "fld qword ptr [esp + 0x168]"], ["0x1004f572", "fmul qword ptr [esp + 0xa8]"], ["0x1004f579", "faddp st(1)"], ["0x1004f57b", "fld qword ptr [esp + 0x1a8]"], ["0x1004f582", "fmul qword ptr [esp + 0xb8]"], ["0x1004f589", "faddp st(1)"], ["0x1004f58b", "fld qword ptr [esp + 0x148]"], ["0x1004f592", "fmul qword ptr [esp + 0xa0]"]]}, {"both": [["0x100a4d15", "faddp st(1)", "0x1004f599"], ["0x100a4d17", "fstp qword ptr [esp + 0x30]", "0x1004f59b"]]}, {"orig": [["0x100a4d1b", "fld qword ptr [esp + 0xd8]"], ["0x100a4d22", "fmul qword ptr [esp + 0x158]"], ["0x100a4d29", "fld qword ptr [esp + 0xe8]"], ["0x100a4d30", "fmul qword ptr [esp + 0x198]"], ["0x100a4d37", "faddp st(1)"], ["0x100a4d39", "fld qword ptr [esp + 0xe0]"], ["0x100a4d40", "fmul qword ptr [esp + 0x178]"], ["0x100a4d47", "faddp st(1)"], ["0x100a4d49", "fld qword ptr [esp + 0xd0]"], ["0x100a4d50", "fmul qword ptr [esp + 0x138]"]], "recomp": [["0x1004f59f", "fld qword ptr [esp + 0x150]"], ["0x1004f5a6", "fmul qword ptr [esp + 0xc8]"], ["0x1004f5ad", "fld qword ptr [esp + 0x190]"], ["0x1004f5b4", "fmul qword ptr [esp + 0xd8]"], ["0x1004f5bb", "faddp st(1)"], ["0x1004f5bd", "fld qword ptr [esp + 0x170]"], ["0x1004f5c4", "fmul qword ptr [esp + 0xd0]"], ["0x1004f5cb", "faddp st(1)"], ["0x1004f5cd", "fld qword ptr [esp + 0x130]"], ["0x1004f5d4", "fmul qword ptr [esp + 0xc0]"]]}, {"both": [["0x100a4d57", "faddp st(1)", "0x1004f5db"], ["0x100a4d59", "fstp qword ptr [esp + 0x38]", "0x1004f5dd"]]}, {"orig": [["0x100a4d5d", "fld qword ptr [esp + 0xe0]"], ["0x100a4d64", "fmul qword ptr [esp + 0x180]"], ["0x100a4d6b", "fld qword ptr [esp + 0xd8]"], ["0x100a4d72", "fmul qword ptr [esp + 0x160]"], ["0x100a4d79", "faddp st(1)"], ["0x100a4d7b", "fld qword ptr [esp + 0xd0]"], ["0x100a4d82", "fmul qword ptr [esp + 0x140]"], ["0x100a4d89", "faddp st(1)"], ["0x100a4d8b", "fld qword ptr [esp + 0xe8]"], ["0x100a4d92", "fmul qword ptr [esp + 0x1a0]"]], "recomp": [["0x1004f5e1", "fld qword ptr [esp + 0x178]"], ["0x1004f5e8", "fmul qword ptr [esp + 0xd0]"], ["0x1004f5ef", "fld qword ptr [esp + 0x198]"], ["0x1004f5f6", "fmul qword ptr [esp + 0xd8]"], ["0x1004f5fd", "faddp st(1)"], ["0x1004f5ff", "fld qword ptr [esp + 0x158]"], ["0x1004f606", "fmul qword ptr [esp + 0xc8]"], ["0x1004f60d", "faddp st(1)"], ["0x1004f60f", "fld qword ptr [esp + 0x138]"], ["0x1004f616", "fmul qword ptr [esp + 0xc0]"]]}, {"both": [["0x100a4d99", "faddp st(1)", "0x1004f61d"], ["0x100a4d9b", "fstp qword ptr [esp + 0x40]", "0x1004f61f"]]}, {"orig": [["0x100a4d9f", "fld qword ptr [esp + 0xd8]"], ["0x100a4da6", "fmul qword ptr [esp + 0x168]"], ["0x100a4dad", "fld qword ptr [esp + 0xe8]"], ["0x100a4db4", "fmul qword ptr [esp + 0x1a8]"], ["0x100a4dbb", "faddp st(1)"], ["0x100a4dbd", "fld qword ptr [esp + 0xe0]"], ["0x100a4dc4", "fmul qword ptr [esp + 0x188]"], ["0x100a4dcb", "faddp st(1)"], ["0x100a4dcd", "fld qword ptr [esp + 0xd0]"], ["0x100a4dd4", "fmul qword ptr [esp + 0x148]"]], "recomp": [["0x1004f623", "fld qword ptr [esp + 0x160]"], ["0x1004f62a", "fmul qword ptr [esp + 0xc8]"], ["0x1004f631", "fld qword ptr [esp + 0x1a0]"], ["0x1004f638", "fmul qword ptr [esp + 0xd8]"], ["0x1004f63f", "faddp st(1)"], ["0x1004f641", "fld qword ptr [esp + 0x180]"], ["0x1004f648", "fmul qword ptr [esp + 0xd0]"], ["0x1004f64f", "faddp st(1)"], ["0x1004f651", "fld qword ptr [esp + 0x140]"], ["0x1004f658", "fmul qword ptr [esp + 0xc0]"]]}, {"both": [["0x100a4ddb", "faddp st(1)", "0x1004f65f"], ["0x100a4ddd", "fstp qword ptr [esp + 0x48]", "0x1004f661"]]}, {"orig": [["0x100a4de1", "fld qword ptr [esp + 0xd8]"], ["0x100a4de8", "fmul qword ptr [esp + 0x170]"], ["0x100a4def", "fld qword ptr [esp + 0xe0]"], ["0x100a4df6", "fmul qword ptr [esp + 0x190]"], ["0x100a4dfd", "faddp st(1)"], ["0x100a4dff", "fld qword ptr [esp + 0xd0]"], ["0x100a4e06", "fmul qword ptr [esp + 0x150]"], ["0x100a4e0d", "faddp st(1)"], ["0x100a4e0f", "fld qword ptr [esp + 0xe8]"], ["0x100a4e16", "fmul qword ptr [esp + 0x1b0]"]], "recomp": [["0x1004f665", "fld qword ptr [esp + 0x168]"], ["0x1004f66c", "fmul qword ptr [esp + 0xc8]"], ["0x1004f673", "fld qword ptr [esp + 0x188]"], ["0x1004f67a", "fmul qword ptr [esp + 0xd0]"], ["0x1004f681", "faddp st(1)"], ["0x1004f683", "fld qword ptr [esp + 0x1a8]"], ["0x1004f68a", "fmul qword ptr [esp + 0xd8]"], ["0x1004f691", "faddp st(1)"], ["0x1004f693", "fld qword ptr [esp + 0x148]"], ["0x1004f69a", "fmul qword ptr [esp + 0xc0]"]]}, {"both": [["0x100a4e1d", "faddp st(1)", "0x1004f6a1"], ["0x100a4e1f", "fstp qword ptr [esp + 0x50]", "0x1004f6a3"]]}, {"orig": [["0x100a4e23", "fld qword ptr [esp + 0xf8]"], ["0x100a4e2a", "fmul qword ptr [esp + 0x158]"], ["0x100a4e31", "fld qword ptr [esp + 0x100]"], ["0x100a4e38", "fmul qword ptr [esp + 0x178]"], ["0x100a4e3f", "faddp st(1)"], ["0x100a4e41", "fld qword ptr [esp + 0x108]"], ["0x100a4e48", "fmul qword ptr [esp + 0x198]"], ["0x100a4e4f", "faddp st(1)"], ["0x100a4e51", "fld qword ptr [esp + 0xf0]"], ["0x100a4e58", "fmul qword ptr [esp + 0x138]"]], "recomp": [["0x1004f6a7", "fld qword ptr [esp + 0x150]"], ["0x1004f6ae", "fmul qword ptr [esp + 0xe8]"], ["0x1004f6b5", "fld qword ptr [esp + 0x190]"], ["0x1004f6bc", "fmul qword ptr [esp + 0xf8]"], ["0x1004f6c3", "faddp st(1)"], ["0x1004f6c5", "fld qword ptr [esp + 0x170]"], ["0x1004f6cc", "fmul qword ptr [esp + 0xf0]"], ["0x1004f6d3", "faddp st(1)"], ["0x1004f6d5", "fld qword ptr [esp + 0x130]"], ["0x1004f6dc", "fmul qword ptr [esp + 0xe0]"]]}, {"both": [["0x100a4e5f", "faddp st(1)", "0x1004f6e3"], ["0x100a4e61", "fstp qword ptr [esp + 0x58]", "0x1004f6e5"]]}, {"orig": [["0x100a4e65", "fld qword ptr [esp + 0xf0]"], ["0x100a4e6c", "fmul qword ptr [esp + 0x140]"], ["0x100a4e73", "fld qword ptr [esp + 0xf8]"], ["0x100a4e7a", "fmul qword ptr [esp + 0x160]"], ["0x100a4e81", "faddp st(1)"], ["0x100a4e83", "fld qword ptr [esp + 0x100]"], ["0x100a4e8a", "fmul qword ptr [esp + 0x180]"], ["0x100a4e91", "faddp st(1)"], ["0x100a4e93", "fld qword ptr [esp + 0x108]"], ["0x100a4e9a", "fmul qword ptr [esp + 0x1a0]"]], "recomp": [["0x1004f6e9", "fld qword ptr [esp + 0x198]"], ["0x1004f6f0", "fmul qword ptr [esp + 0xf8]"], ["0x1004f6f7", "fld qword ptr [esp + 0x138]"], ["0x1004f6fe", "fmul qword ptr [esp + 0xe0]"], ["0x1004f705", "faddp st(1)"], ["0x1004f707", "fld qword ptr [esp + 0x178]"], ["0x1004f70e", "fmul qword ptr [esp + 0xf0]"], ["0x1004f715", "faddp st(1)"], ["0x1004f717", "fld qword ptr [esp + 0x158]"], ["0x1004f71e", "fmul qword ptr [esp + 0xe8]"]]}, {"both": [["0x100a4ea1", "faddp st(1)", "0x1004f725"], ["0x100a4ea3", "fstp qword ptr [esp + 0x60]", "0x1004f727"]]}, {"orig": [["0x100a4ea7", "fld qword ptr [esp + 0xf8]"], ["0x100a4eae", "fmul qword ptr [esp + 0x168]"], ["0x100a4eb5", "fld qword ptr [esp + 0x100]"], ["0x100a4ebc", "fmul qword ptr [esp + 0x188]"], ["0x100a4ec3", "faddp st(1)"], ["0x100a4ec5", "fld qword ptr [esp + 0xf0]"], ["0x100a4ecc", "fmul qword ptr [esp + 0x148]"], ["0x100a4ed3", "faddp st(1)"], ["0x100a4ed5", "fld qword ptr [esp + 0x108]"], ["0x100a4edc", "fmul qword ptr [esp + 0x1a8]"]], "recomp": [["0x1004f72b", "fld qword ptr [esp + 0x160]"], ["0x1004f732", "fmul qword ptr [esp + 0xe8]"], ["0x1004f739", "fld qword ptr [esp + 0x1a0]"], ["0x1004f740", "fmul qword ptr [esp + 0xf8]"], ["0x1004f747", "faddp st(1)"], ["0x1004f749", "fld qword ptr [esp + 0x180]"], ["0x1004f750", "fmul qword ptr [esp + 0xf0]"], ["0x1004f757", "faddp st(1)"], ["0x1004f759", "fld qword ptr [esp + 0x140]"], ["0x1004f760", "fmul qword ptr [esp + 0xe0]"]]}, {"both": [["0x100a4ee3", "faddp st(1)", "0x1004f767"], ["0x100a4ee5", "fstp qword ptr [esp + 0x68]", "0x1004f769"]]}, {"orig": [["0x100a4ee9", "fld qword ptr [esp + 0xf0]"], ["0x100a4ef0", "fmul qword ptr [esp + 0x150]"], ["0x100a4ef7", "fld qword ptr [esp + 0xf8]"], ["0x100a4efe", "fmul qword ptr [esp + 0x170]"], ["0x100a4f05", "faddp st(1)"], ["0x100a4f07", "fld qword ptr [esp + 0x100]"], ["0x100a4f0e", "fmul qword ptr [esp + 0x190]"], ["0x100a4f15", "faddp st(1)"], ["0x100a4f17", "fld qword ptr [esp + 0x108]"], ["0x100a4f1e", "fmul qword ptr [esp + 0x1b0]"]], "recomp": [["0x1004f76d", "fld qword ptr [esp + 0x148]"], ["0x1004f774", "fmul qword ptr [esp + 0xe0]"], ["0x1004f77b", "fld qword ptr [esp + 0x1a8]"], ["0x1004f782", "fmul qword ptr [esp + 0xf8]"], ["0x1004f789", "faddp st(1)"], ["0x1004f78b", "fld qword ptr [esp + 0x168]"], ["0x1004f792", "fmul qword ptr [esp + 0xe8]"], ["0x1004f799", "faddp st(1)"], ["0x1004f79b", "fld qword ptr [esp + 0x188]"], ["0x1004f7a2", "fmul qword ptr [esp + 0xf0]"]]}, {"both": [["0x100a4f25", "faddp st(1)", "0x1004f7a9"], ["0x100a4f27", "fstp qword ptr [esp + 0x70]", "0x1004f7ab"]]}, {"orig": [["0x100a4f2b", "fld qword ptr [esp + 0x118]"], ["0x100a4f32", "fmul qword ptr [esp + 0x158]"], ["0x100a4f39", "fld qword ptr [esp + 0x120]"], ["0x100a4f40", "fmul qword ptr [esp + 0x178]"], ["0x100a4f47", "faddp st(1)"], ["0x100a4f49", "fld qword ptr [esp + 0x128]"], ["0x100a4f50", "fmul qword ptr [esp + 0x198]"], ["0x100a4f57", "faddp st(1)"], ["0x100a4f59", "fld qword ptr [esp + 0x110]"], ["0x100a4f60", "fmul qword ptr [esp + 0x138]"]], "recomp": [["0x1004f7af", "fld qword ptr [esp + 0x150]"], ["0x1004f7b6", "fmul qword ptr [esp + 0x108]"], ["0x1004f7bd", "fld qword ptr [esp + 0x170]"], ["0x1004f7c4", "fmul qword ptr [esp + 0x110]"], ["0x1004f7cb", "faddp st(1)"], ["0x1004f7cd", "fld qword ptr [esp + 0x190]"], ["0x1004f7d4", "fmul qword ptr [esp + 0x118]"], ["0x1004f7db", "faddp st(1)"], ["0x1004f7dd", "fld qword ptr [esp + 0x130]"], ["0x1004f7e4", "fmul qword ptr [esp + 0x100]"]]}, {"both": [["0x100a4f67", "faddp st(1)", "0x1004f7eb"], ["0x100a4f69", "fstp qword ptr [esp + 0x78]", "0x1004f7ed"]]}, {"orig": [["0x100a4f6d", "fld qword ptr [esp + 0x110]"], ["0x100a4f74", "fmul qword ptr [esp + 0x140]"], ["0x100a4f7b", "fld qword ptr [esp + 0x118]"], ["0x100a4f82", "fmul qword ptr [esp + 0x160]"], ["0x100a4f89", "faddp st(1)"], ["0x100a4f8b", "fld qword ptr [esp + 0x120]"], ["0x100a4f92", "fmul qword ptr [esp + 0x180]"], ["0x100a4f99", "faddp st(1)"], ["0x100a4f9b", "fld qword ptr [esp + 0x128]"], ["0x100a4fa2", "fmul qword ptr [esp + 0x1a0]"]], "recomp": [["0x1004f7f1", "fld qword ptr [esp + 0x138]"], ["0x1004f7f8", "fmul qword ptr [esp + 0x100]"], ["0x1004f7ff", "fld qword ptr [esp + 0x198]"], ["0x1004f806", "fmul qword ptr [esp + 0x118]"], ["0x1004f80d", "faddp st(1)"], ["0x1004f80f", "fld qword ptr [esp + 0x178]"], ["0x1004f816", "fmul qword ptr [esp + 0x110]"], ["0x1004f81d", "faddp st(1)"], ["0x1004f81f", "fld qword ptr [esp + 0x158]"], ["0x1004f826", "fmul qword ptr [esp + 0x108]"]]}, {"both": [["0x100a4fa9", "faddp st(1)", "0x1004f82d"], ["0x100a4fab", "fstp qword ptr [esp + 0x80]", "0x1004f82f"]]}, {"orig": [["0x100a4fb2", "fld qword ptr [esp + 0x118]"], ["0x100a4fb9", "fmul qword ptr [esp + 0x168]"], ["0x100a4fc0", "fld qword ptr [esp + 0x120]"], ["0x100a4fc7", "fmul qword ptr [esp + 0x188]"], ["0x100a4fce", "faddp st(1)"], ["0x100a4fd0", "fld qword ptr [esp + 0x110]"], ["0x100a4fd7", "fmul qword ptr [esp + 0x148]"], ["0x100a4fde", "faddp st(1)"], ["0x100a4fe0", "fld qword ptr [esp + 0x128]"], ["0x100a4fe7", "fmul qword ptr [esp + 0x1a8]"]], "recomp": [["0x1004f836", "fld qword ptr [esp + 0x160]"], ["0x1004f83d", "fmul qword ptr [esp + 0x108]"], ["0x1004f844", "fld qword ptr [esp + 0x180]"], ["0x1004f84b", "fmul qword ptr [esp + 0x110]"], ["0x1004f852", "faddp st(1)"], ["0x1004f854", "fld qword ptr [esp + 0x140]"], ["0x1004f85b", "fmul qword ptr [esp + 0x100]"], ["0x1004f862", "faddp st(1)"], ["0x1004f864", "fld qword ptr [esp + 0x1a0]"], ["0x1004f86b", "fmul qword ptr [esp + 0x118]"]]}, {"both": [["0x100a4fee", "faddp st(1)", "0x1004f872"], ["0x100a4ff0", "fstp qword ptr [esp + 0x88]", "0x1004f874"]]}, {"orig": [["0x100a4ff7", "fld qword ptr [esp + 0x110]"], ["0x100a4ffe", "fmul qword ptr [esp + 0x150]"], ["0x100a5005", "fld qword ptr [esp + 0x118]"], ["0x100a500c", "fmul qword ptr [esp + 0x170]"], ["0x100a5013", "faddp st(1)"], ["0x100a5015", "fld qword ptr [esp + 0x120]"], ["0x100a501c", "fmul qword ptr [esp + 0x190]"]], "recomp": [["0x1004f87b", "fld qword ptr [esp + 0x148]"], ["0x1004f882", "fmul qword ptr [esp + 0x100]"], ["0x1004f889", "fld qword ptr [esp + 0x168]"], ["0x1004f890", "fmul qword ptr [esp + 0x108]"], ["0x1004f897", "faddp st(1)"], ["0x1004f899", "fld qword ptr [esp + 0x188]"], ["0x1004f8a0", "fmul qword ptr [esp + 0x110]"]]}, {"both": [["0x100a5023", "xor esi, esi", "0x1004f8a7"], ["0x100a5025", "lea edi, [esp + 0x18]", "0x1004f8a9"], ["0x100a5029", "mov eax, 4", "0x1004f8ad"], ["0x100a502e", "faddp st(1)", "0x1004f8b2"]]}, {"orig": [["0x100a5030", "fld qword ptr [esp + 0x128]"], ["0x100a5037", "fmul qword ptr [esp + 0x1b0]"]], "recomp": [["0x1004f8b4", "fld qword ptr [esp + 0x1a8]"], ["0x1004f8bb", "fmul qword ptr [esp + 0x118]"]]}, {"both": [["0x100a503e", "faddp st(1)", "0x1004f8c2"], ["0x100a5040", "fstp qword ptr [esp + 0x90]", "0x1004f8c4"], ["0x100a5047", "fstp st(0)", "0x1004f8cb"], ["0x100a5049", "fstp st(0)", "0x1004f8cd"], ["0x100a504b", "mov edx, 4", "0x1004f8cf"], ["0x100a5050", "fld qword ptr [edi]", "0x1004f8d4"]]}, {"orig": [], "recomp": [["0x1004f8d6", "mov ebx, dword ptr [esp + 0x1fc]"], ["0x1004f8dd", "add edi, 8"], ["0x1004f8e0", "add esi, 4"], ["0x1004f8e3", "dec edx"], ["0x1004f8e4", "fstp dword ptr [ebx + esi - 4]"], ["0x1004f8e8", "jne -0x16"], ["0x1004f8ea", "dec eax"], ["0x1004f8eb", "jne -0x1e"], ["0x1004f8ed", "lea eax, [esp + 0x1f8]"], ["0x1004f8f4", "mov ebx, dword ptr [ecx]"], ["0x1004f8f6", "push eax"], ["0x1004f8f7", "call dword ptr [ebx + 0x28]"], ["0x1004f8fa", "pop ebp"], ["0x1004f8fb", "pop edi"], ["0x1004f8fc", "pop esi"], ["0x1004f8fd", "pop ebx"], ["0x1004f8fe", "add esp, 0x230"], ["0x1004f904", "ret 4"]]}]]]}, {"address": "0x100a5090", "recomp": "0x1004f910", "name": "OrientableROI::WrappedVTable0x24", "matching": 1.0, "diff": []}, {"address": "0x100a50a0", "recomp": "0x1004f920", "name": "OrientableROI::GetLocalTransform", "matching": 0.34986945169712796, "diff": [["@@ -0x100a50a0,570 +0x1004f920,579 @@", [{"orig": [["0x100a50a0", "sub esp, 0x1a8"], ["0x100a50a6", "lea eax, [esp + 0xa0]"]], "recomp": [["0x1004f920", "sub esp, 0x1b0"], ["0x1004f926", "lea eax, [esp + 0x90]"]]}, {"both": [["0x100a50ad", "push ebx", "0x1004f92d"]]}, {"orig": [["0x100a50ae", "mov dword ptr [esp + 0xa0], eax"]], "recomp": [["0x1004f92e", "mov dword ptr [esp + 0x90], eax"]]}, {"both": [["0x100a50b5", "push esi", "0x1004f935"], ["0x100a50b6", "push edi", "0x1004f936"], ["0x100a50b7", "mov eax, dword ptr [ecx + 0xd4]", "0x1004f937"]]}, {"orig": [["0x100a50bd", "mov dword ptr [esp + 0xa4], MxMatrix::`vftable' (VTABLE)"]], "recomp": [["0x1004f93d", "mov dword ptr [esp + 0x94], MxMatrix::`vftable' (VTABLE)"]]}, {"both": [["0x100a50c8", "test eax, eax", "0x1004f948"]]}, {"orig": [["0x100a50ca", "je 0x7fc"], ["0x100a50d0", "lea edi, [esp + 0x24]"]], "recomp": [["0x1004f94a", "je 0x7de"], ["0x1004f950", "lea edi, [esp + 0x14]"]]}, {"both": [["0x100a50d4", "mov eax, dword ptr [eax + 0x14]", "0x1004f954"], ["0x100a50d7", "mov edx, 4", "0x1004f957"], ["0x100a50dc", "mov esi, 4", "0x1004f95c"], ["0x100a50e1", "jmp 0x3", "0x1004f961"], ["0x100a50e3", "fstp qword ptr [edi - 8]", "0x1004f963"], ["0x100a50e6", "fld dword ptr [eax]", "0x1004f966"], ["0x100a50e8", "add eax, 4", "0x1004f968"], ["0x100a50eb", "add edi, 8", "0x1004f96b"], ["0x100a50ee", "dec esi", "0x1004f96e"], ["0x100a50ef", "jne -0xe", "0x1004f96f"], ["0x100a50f1", "fstp qword ptr [edi - 8]", "0x1004f971"], ["0x100a50f4", "dec edx", "0x1004f974"], ["0x100a50f5", "jne -0x1b", "0x1004f975"]]}, {"orig": [["0x100a50f7", "fld qword ptr [esp + 0x8c]"]], "recomp": [["0x1004f977", "fld qword ptr [esp + 0x5c]"], ["0x1004f97b", "fmul qword ptr [esp + 0x84]"], ["0x1004f982", "fld qword ptr [esp + 0x7c]"]]}, {"both": [["0x100a50fe", "fmul qword ptr [esp + 0x64]", "0x1004f986"]]}, {"orig": [], "recomp": [["0x1004f98a", "fsubp st(1)"], ["0x1004f98c", "fld qword ptr [esp + 0x5c]"], ["0x1004f990", "fmul qword ptr [esp + 0x8c]"], ["0x1004f997", "fld qword ptr [esp + 0x7c]"], ["0x1004f99b", "fmul qword ptr [esp + 0x6c]"], ["0x1004f99f", "fsubp st(1)"], ["0x1004f9a1", "fld qword ptr [esp + 0x64]"], ["0x1004f9a5", "fmul qword ptr [esp + 0x8c]"], ["0x1004f9ac", "fld qword ptr [esp + 0x6c]"], ["0x1004f9b0", "fmul qword ptr [esp + 0x84]"], ["0x1004f9b7", "fsubp st(1)"], ["0x1004f9b9", "fld qword ptr [esp + 0x4c]"], ["0x1004f9bd", "fmul st(3)"], ["0x1004f9bf", "fld qword ptr [esp + 0x44]"], ["0x1004f9c3", "fmul st(3)"], ["0x1004f9c5", "fsubp st(1)"], ["0x1004f9c7", "fld qword ptr [esp + 0x3c]"], ["0x1004f9cb", "fmul st(2)"], ["0x1004f9cd", "faddp st(1)"], ["0x1004f9cf", "fld qword ptr [esp + 0x54]"], ["0x1004f9d3", "fmul qword ptr [esp + 0x8c]"], ["0x1004f9da", "fld qword ptr [esp + 0x6c]"], ["0x1004f9de", "fmul qword ptr [esp + 0x74]"], ["0x1004f9e2", "fsubp st(1)"]]}, {"both": [["0x100a5102", "fld qword ptr [esp + 0x84]", "0x1004f9e4"]]}, {"orig": [["0x100a5109", "fmul qword ptr [esp + 0x6c]"], ["0x100a510d", "fsubp st(1)"], ["0x100a510f", "fld qword ptr [esp + 0x64]"], ["0x100a5113", "fmul qword ptr [esp + 0x9c]"], ["0x100a511a", "fld qword ptr [esp + 0x7c]"], ["0x100a511e", "fmul qword ptr [esp + 0x84]"], ["0x100a5125", "fsubp st(1)"], ["0x100a5127", "fld qword ptr [esp + 0x9c]"], ["0x100a512e", "fmul qword ptr [esp + 0x6c]"], ["0x100a5132", "fld qword ptr [esp + 0x8c]"], ["0x100a5139", "fmul qword ptr [esp + 0x7c]"], ["0x100a513d", "fsubp st(1)"], ["0x100a513f", "fld qword ptr [esp + 0x5c]"]], "recomp": [["0x1004f9eb", "fmul qword ptr [esp + 0x54]"], ["0x1004f9ef", "fld qword ptr [esp + 0x74]"], ["0x1004f9f3", "fmul qword ptr [esp + 0x64]"], ["0x1004f9f7", "fsubp st(1)"], ["0x1004f9f9", "fstp qword ptr [esp + 0xe4]"], ["0x1004fa00", "fld qword ptr [esp + 0x34]"]]}, {"both": [["0x100a5143", "fmul st(3)", "0x1004fa04"]]}, {"orig": [["0x100a5145", "fld qword ptr [esp + 0x4c]"], ["0x100a5149", "fmul st(3)"], ["0x100a514b", "fsubp st(1)"]], "recomp": []}, {"both": [["0x100a514d", "fld qword ptr [esp + 0x44]", "0x1004fa06"], ["0x100a5151", "fmul st(2)", "0x1004fa0a"]]}, {"orig": [["0x100a5153", "faddp st(1)"], ["0x100a5155", "fld qword ptr [esp + 0x94]"], ["0x100a515c", "fmul qword ptr [esp + 0x6c]"], ["0x100a5160", "fld qword ptr [esp + 0x8c]"], ["0x100a5167", "fmul qword ptr [esp + 0x74]"], ["0x100a516b", "fsubp st(1)"], ["0x100a516d", "fld qword ptr [esp + 0x94]"], ["0x100a5174", "fmul qword ptr [esp + 0x64]"], ["0x100a5178", "fld qword ptr [esp + 0x84]"], ["0x100a517f", "fmul qword ptr [esp + 0x74]"], ["0x100a5183", "fsubp st(1)"], ["0x100a5185", "fstp qword ptr [esp + 0xf4]"], ["0x100a518c", "fld qword ptr [esp + 0x44]"], ["0x100a5190", "fmul st(1)"], ["0x100a5192", "fld qword ptr [esp + 0x4c]"], ["0x100a5196", "fmul qword ptr [esp + 0xf4]"], ["0x100a519d", "fsubp st(1)"], ["0x100a519f", "fld qword ptr [esp + 0x54]"], ["0x100a51a3", "fmul st(6)"], ["0x100a51a5", "faddp st(1)"], ["0x100a51a7", "fstp qword ptr [esp + 0x114]"], ["0x100a51ae", "fld qword ptr [esp + 0x74]"], ["0x100a51b2", "fmul qword ptr [esp + 0x9c]"], ["0x100a51b9", "fld qword ptr [esp + 0x7c]"], ["0x100a51bd", "fmul qword ptr [esp + 0x94]"], ["0x100a51c4", "fsubp st(1)"], ["0x100a51c6", "fstp qword ptr [esp + 0x1c]"], ["0x100a51ca", "fld qword ptr [esp + 0x5c]"], ["0x100a51ce", "fmul qword ptr [esp + 0xf4]"], ["0x100a51d5", "fld qword ptr [esp + 0x54]"], ["0x100a51d9", "fmul st(5)"], ["0x100a51db", "fsubp st(1)"], ["0x100a51dd", "fld qword ptr [esp + 0x44]"], ["0x100a51e1", "fmul qword ptr [esp + 0x1c]"], ["0x100a51e5", "faddp st(1)"], ["0x100a51e7", "fstp qword ptr [esp + 0x14]"], ["0x100a51eb", "fld qword ptr [esp + 0x5c]"], ["0x100a51ef", "fmul st(1)"], ["0x100a51f1", "fld qword ptr [esp + 0x54]"], ["0x100a51f5", "fmul st(4)"], ["0x100a51f7", "fsubp st(1)"], ["0x100a51f9", "fld qword ptr [esp + 0x4c]"], ["0x100a51fd", "fmul qword ptr [esp + 0x1c]"], ["0x100a5201", "faddp st(1)"], ["0x100a5203", "fstp qword ptr [esp + 0x134]"], ["0x100a520a", "fld qword ptr [esp + 0x34]"], ["0x100a520e", "fmul st(2)"], ["0x100a5210", "fld qword ptr [esp + 0x3c]"], ["0x100a5214", "fmul qword ptr [esp + 0x114]"], ["0x100a521b", "fsubp st(1)"], ["0x100a521d", "fld qword ptr [esp + 0x2c]"], ["0x100a5221", "fmul qword ptr [esp + 0x14]"], ["0x100a5225", "fsubp st(1)"], ["0x100a5227", "fld qword ptr [esp + 0x24]"], ["0x100a522b", "fmul qword ptr [esp + 0x134]"], ["0x100a5232", "faddp st(1)"], ["0x100a5234", "fdivr qword ptr [1.0 (FLOAT)]"], ["0x100a523a", "fst qword ptr [esp + 0xc]"], ["0x100a523e", "fmul qword ptr [esp + 0x134]"], ["0x100a5245", "fstp qword ptr [esp + 0x134]"], ["0x100a524c", "fld qword ptr [esp + 0x3c]"], ["0x100a5250", "fmul st(1)"], ["0x100a5252", "fld qword ptr [esp + 0x34]"], ["0x100a5256", "fmul st(4)"], ["0x100a5258", "fsubp st(1)"], ["0x100a525a", "fld qword ptr [esp + 0x2c]"], ["0x100a525e", "fmul qword ptr [esp + 0x1c]"], ["0x100a5262", "faddp st(1)"], ["0x100a5264", "fchs "], ["0x100a5266", "fmul qword ptr [esp + 0xc]"], ["0x100a526a", "fstp qword ptr [esp + 0x13c]"], ["0x100a5271", "fld qword ptr [esp + 0x4c]"], ["0x100a5275", "fmul qword ptr [esp + 0x94]"], ["0x100a527c", "fld qword ptr [esp + 0x8c]"], ["0x100a5283", "fmul qword ptr [esp + 0x54]"], ["0x100a5287", "fsubp st(1)"], ["0x100a5289", "fstp qword ptr [esp + 0x11c]"], ["0x100a5290", "fld qword ptr [esp + 0x4c]"], ["0x100a5294", "fmul qword ptr [esp + 0x9c]"], ["0x100a529b", "fld qword ptr [esp + 0x8c]"], ["0x100a52a2", "fmul qword ptr [esp + 0x5c]"], ["0x100a52a6", "fsubp st(1)"], ["0x100a52a8", "fstp qword ptr [esp + 0x104]"], ["0x100a52af", "fld qword ptr [esp + 0x54]"], ["0x100a52b3", "fmul qword ptr [esp + 0x9c]"], ["0x100a52ba", "fld qword ptr [esp + 0x5c]"], ["0x100a52be", "fmul qword ptr [esp + 0x94]"], ["0x100a52c5", "fsubp st(1)"], ["0x100a52c7", "fstp qword ptr [esp + 0xec]"], ["0x100a52ce", "fld qword ptr [esp + 0x3c]"], ["0x100a52d2", "fmul qword ptr [esp + 0x11c]"], ["0x100a52d9", "fld qword ptr [esp + 0x34]"], ["0x100a52dd", "fmul qword ptr [esp + 0x104]"], ["0x100a52e4", "fsubp st(1)"], ["0x100a52e6", "fld qword ptr [esp + 0x2c]"], ["0x100a52ea", "fmul qword ptr [esp + 0xec]"], ["0x100a52f1", "faddp st(1)"], ["0x100a52f3", "fmul qword ptr [esp + 0xc]"], ["0x100a52f7", "fstp qword ptr [esp + 0x144]"]], "recomp": [["0x1004fa0c", "fsubp st(1)"], ["0x1004fa0e", "fld qword ptr [esp + 0x4c]"], ["0x1004fa12", "fmul qword ptr [esp + 0xe4]"], ["0x1004fa19", "faddp st(1)"], ["0x1004fa1b", "fstp qword ptr [esp + 0xdc]"]]}, {"both": [["0x100a52fe", "fld qword ptr [esp + 0x7c]", "0x1004fa22"], ["0x100a5302", "fmul qword ptr [esp + 0x54]", "0x1004fa26"], ["0x100a5306", "fld qword ptr [esp + 0x5c]", "0x1004fa2a"], ["0x100a530a", "fmul qword ptr [esp + 0x74]", "0x1004fa2e"], ["0x100a530e", "fsubp st(1)", "0x1004fa32"]]}, {"orig": [], "recomp": [["0x1004fa34", "fstp qword ptr [esp + 0xec]"], ["0x1004fa3b", "fld qword ptr [esp + 0x34]"], ["0x1004fa3f", "fmul st(5)"], ["0x1004fa41", "fld qword ptr [esp + 0x3c]"], ["0x1004fa45", "fmul qword ptr [esp + 0xe4]"], ["0x1004fa4c", "fsubp st(1)"], ["0x1004fa4e", "fld qword ptr [esp + 0x44]"], ["0x1004fa52", "fmul qword ptr [esp + 0xec]"], ["0x1004fa59", "faddp st(1)"], ["0x1004fa5b", "fstp qword ptr [esp + 0x11c]"], ["0x1004fa62", "fld qword ptr [esp + 0x34]"], ["0x1004fa66", "fmul st(4)"], ["0x1004fa68", "fld qword ptr [esp + 0x3c]"], ["0x1004fa6c", "fmul st(2)"], ["0x1004fa6e", "fsubp st(1)"], ["0x1004fa70", "fld qword ptr [esp + 0x4c]"], ["0x1004fa74", "fmul qword ptr [esp + 0xec]"], ["0x1004fa7b", "faddp st(1)"]]}, {"both": [["0x100a5310", "fstp qword ptr [esp + 0xfc]", "0x1004fa7d"]]}, {"orig": [], "recomp": [["0x1004fa84", "fld qword ptr [esp + 0x14]"], ["0x1004fa88", "fmul st(2)"], ["0x1004fa8a", "fld qword ptr [esp + 0x1c]"], ["0x1004fa8e", "fmul qword ptr [esp + 0xdc]"], ["0x1004fa95", "fsubp st(1)"], ["0x1004fa97", "fld qword ptr [esp + 0x2c]"], ["0x1004fa9b", "fmul qword ptr [esp + 0x11c]"], ["0x1004faa2", "fsubp st(1)"], ["0x1004faa4", "fld qword ptr [esp + 0x24]"], ["0x1004faa8", "fmul qword ptr [esp + 0xfc]"], ["0x1004faaf", "faddp st(1)"], ["0x1004fab1", "fdivr qword ptr [1.0 (FLOAT)]"], ["0x1004fab7", "fstp qword ptr [esp + 0xc]"], ["0x1004fabb", "fxch st(1)"], ["0x1004fabd", "fmul qword ptr [esp + 0xc]"], ["0x1004fac1", "fstp qword ptr [esp + 0x13c]"], ["0x1004fac8", "fld qword ptr [esp + 0x1c]"], ["0x1004facc", "fmul st(2)"], ["0x1004face", "fld qword ptr [esp + 0x24]"], ["0x1004fad2", "fmul st(4)"], ["0x1004fad4", "fsubp st(1)"], ["0x1004fad6", "fld qword ptr [esp + 0x2c]"], ["0x1004fada", "fmul st(5)"], ["0x1004fadc", "faddp st(1)"], ["0x1004fade", "fchs "], ["0x1004fae0", "fmul qword ptr [esp + 0xc]"], ["0x1004fae4", "fstp qword ptr [esp + 0x144]"], ["0x1004faeb", "fld qword ptr [esp + 0x44]"], ["0x1004faef", "fmul qword ptr [esp + 0x8c]"], ["0x1004faf6", "fld qword ptr [esp + 0x4c]"], ["0x1004fafa", "fmul qword ptr [esp + 0x84]"], ["0x1004fb01", "fsubp st(1)"], ["0x1004fb03", "fld qword ptr [esp + 0x3c]"], ["0x1004fb07", "fmul qword ptr [esp + 0x8c]"]]}, {"both": [["0x100a5317", "fld qword ptr [esp + 0x7c]", "0x1004fb0e"], ["0x100a531b", "fmul qword ptr [esp + 0x4c]", "0x1004fb12"]]}, {"orig": [], "recomp": [["0x1004fb16", "fsubp st(1)"], ["0x1004fb18", "fstp qword ptr [esp + 0x104]"], ["0x1004fb1f", "fld qword ptr [esp + 0x3c]"], ["0x1004fb23", "fmul qword ptr [esp + 0x84]"], ["0x1004fb2a", "fld qword ptr [esp + 0x7c]"], ["0x1004fb2e", "fmul qword ptr [esp + 0x44]"], ["0x1004fb32", "fsubp st(1)"], ["0x1004fb34", "fstp qword ptr [esp + 0x124]"], ["0x1004fb3b", "fld qword ptr [esp + 0x1c]"], ["0x1004fb3f", "fmul st(1)"], ["0x1004fb41", "fld qword ptr [esp + 0x24]"], ["0x1004fb45", "fmul qword ptr [esp + 0x104]"], ["0x1004fb4c", "fsubp st(1)"], ["0x1004fb4e", "fld qword ptr [esp + 0x2c]"], ["0x1004fb52", "fmul qword ptr [esp + 0x124]"], ["0x1004fb59", "faddp st(1)"], ["0x1004fb5b", "fmul qword ptr [esp + 0xc]"], ["0x1004fb5f", "fstp qword ptr [esp + 0x14c]"], ["0x1004fb66", "fld qword ptr [esp + 0x6c]"], ["0x1004fb6a", "fmul qword ptr [esp + 0x44]"], ["0x1004fb6e", "fld qword ptr [esp + 0x4c]"], ["0x1004fb72", "fmul qword ptr [esp + 0x64]"], ["0x1004fb76", "fsubp st(1)"], ["0x1004fb78", "fstp qword ptr [esp + 0xf4]"], ["0x1004fb7f", "fld qword ptr [esp + 0x6c]"], ["0x1004fb83", "fmul qword ptr [esp + 0x3c]"]]}, {"both": [["0x100a531f", "fld qword ptr [esp + 0x5c]", "0x1004fb87"]]}, {"orig": [["0x100a5323", "fmul qword ptr [esp + 0x6c]"], ["0x100a5327", "fsubp st(1)"], ["0x100a5329", "fstp qword ptr [esp + 0x10c]"], ["0x100a5330", "fld qword ptr [esp + 0x4c]"], ["0x100a5334", "fmul qword ptr [esp + 0x74]"], ["0x100a5338", "fld qword ptr [esp + 0x54]"], ["0x100a533c", "fmul qword ptr [esp + 0x6c]"], ["0x100a5340", "fsubp st(1)"], ["0x100a5342", "fstp qword ptr [esp + 0x12c]"], ["0x100a5349", "fld qword ptr [esp + 0x2c]"], ["0x100a534d", "fmul qword ptr [esp + 0xfc]"], ["0x100a5354", "fld qword ptr [esp + 0x34]"], ["0x100a5358", "fmul qword ptr [esp + 0x10c]"], ["0x100a535f", "fsubp st(1)"], ["0x100a5361", "fld qword ptr [esp + 0x3c]"], ["0x100a5365", "fmul qword ptr [esp + 0x12c]"], ["0x100a536c", "faddp st(1)"], ["0x100a536e", "fchs "], ["0x100a5370", "fmul qword ptr [esp + 0xc]"], ["0x100a5374", "fstp qword ptr [esp + 0x14c]"], ["0x100a537b", "fld qword ptr [esp + 0x14]"]], "recomp": [["0x1004fb8b", "fmul qword ptr [esp + 0x4c]"], ["0x1004fb8f", "fsubp st(1)"], ["0x1004fb91", "fstp qword ptr [esp + 0x114]"], ["0x1004fb98", "fld qword ptr [esp + 0x3c]"], ["0x1004fb9c", "fmul qword ptr [esp + 0x64]"], ["0x1004fba0", "fld qword ptr [esp + 0x5c]"], ["0x1004fba4", "fmul qword ptr [esp + 0x44]"], ["0x1004fba8", "fsubp st(1)"], ["0x1004fbaa", "fstp qword ptr [esp + 0x134]"], ["0x1004fbb1", "fld qword ptr [esp + 0x1c]"], ["0x1004fbb5", "fmul qword ptr [esp + 0xf4]"], ["0x1004fbbc", "fld qword ptr [esp + 0x24]"], ["0x1004fbc0", "fmul qword ptr [esp + 0x114]"], ["0x1004fbc7", "fsubp st(1)"], ["0x1004fbc9", "fld qword ptr [esp + 0x2c]"], ["0x1004fbcd", "fmul qword ptr [esp + 0x134]"], ["0x1004fbd4", "faddp st(1)"]]}, {"both": [["0x100a537f", "fchs ", "0x1004fbd6"], ["0x100a5381", "fmul qword ptr [esp + 0xc]", "0x1004fbd8"], ["0x100a5385", "fstp qword ptr [esp + 0x154]", "0x1004fbdc"]]}, {"orig": [["0x100a538c", "fld qword ptr [esp + 0x3c]"], ["0x100a5390", "fmul qword ptr [esp + 0xf4]"], ["0x100a5397", "fld qword ptr [esp + 0x34]"], ["0x100a539b", "fmul st(5)"], ["0x100a539d", "fsubp st(1)"], ["0x100a539f", "fld qword ptr [esp + 0x24]"], ["0x100a53a3", "fmul qword ptr [esp + 0x1c]"], ["0x100a53a7", "faddp st(1)"]], "recomp": [["0x1004fbe3", "fld qword ptr [esp + 0xdc]"], ["0x1004fbea", "fchs "]]}, {"both": [["0x100a53a9", "fmul qword ptr [esp + 0xc]", "0x1004fbec"], ["0x100a53ad", "fstp qword ptr [esp + 0x15c]", "0x1004fbf0"]]}, {"orig": [["0x100a53b4", "fld qword ptr [esp + 0x44]"], ["0x100a53b8", "fmul qword ptr [esp + 0x9c]"], ["0x100a53bf", "fld qword ptr [esp + 0x5c]"], ["0x100a53c3", "fmul qword ptr [esp + 0x84]"], ["0x100a53ca", "fsubp st(1)"], ["0x100a53cc", "fstp qword ptr [esp + 0x14]"], ["0x100a53d0", "fld qword ptr [esp + 0x94]"], ["0x100a53d7", "fmul qword ptr [esp + 0x44]"]], "recomp": [["0x1004fbf7", "fxch st(2)"], ["0x1004fbf9", "fmul qword ptr [esp + 0x14]"], ["0x1004fbfd", "fld qword ptr [esp + 0x24]"], ["0x1004fc01", "fmul st(2)"], ["0x1004fc03", "fsubp st(1)"], ["0x1004fc05", "fld qword ptr [esp + 0x2c]"], ["0x1004fc09", "fmul qword ptr [esp + 0xe4]"], ["0x1004fc10", "faddp st(1)"], ["0x1004fc12", "fmul qword ptr [esp + 0xc]"], ["0x1004fc16", "fstp qword ptr [esp + 0x164]"]]}, {"both": [["0x100a53db", "fld qword ptr [esp + 0x84]", "0x1004fc1d"]]}, {"orig": [["0x100a53e2", "fmul qword ptr [esp + 0x54]"], ["0x100a53e6", "fsubp st(1)"], ["0x100a53e8", "fstp qword ptr [esp + 0x1c]"], ["0x100a53ec", "fld qword ptr [esp + 0x24]"], ["0x100a53f0", "fmul qword ptr [esp + 0xec]"], ["0x100a53f7", "fld qword ptr [esp + 0x34]"], ["0x100a53fb", "fmul qword ptr [esp + 0x14]"], ["0x100a53ff", "fsubp st(1)"], ["0x100a5401", "fld qword ptr [esp + 0x3c]"], ["0x100a5405", "fmul qword ptr [esp + 0x1c]"], ["0x100a5409", "faddp st(1)"], ["0x100a540b", "fchs "], ["0x100a540d", "fmul qword ptr [esp + 0xc]"], ["0x100a5411", "fstp qword ptr [esp + 0x164]"]], "recomp": [["0x1004fc24", "fmul qword ptr [esp + 0x34]"]]}, {"both": [["0x100a5418", "fld qword ptr [esp + 0x74]", "0x1004fc28"], ["0x100a541c", "fmul qword ptr [esp + 0x44]", "0x1004fc2c"]]}, {"orig": [], "recomp": [["0x1004fc30", "fsubp st(1)"], ["0x1004fc32", "fld qword ptr [esp + 0x34]"], ["0x1004fc36", "fmul qword ptr [esp + 0x8c]"], ["0x1004fc3d", "fld qword ptr [esp + 0x4c]"], ["0x1004fc41", "fmul qword ptr [esp + 0x74]"], ["0x1004fc45", "fsubp st(1)"], ["0x1004fc47", "fstp qword ptr [esp + 0xdc]"], ["0x1004fc4e", "fld qword ptr [esp + 0x2c]"], ["0x1004fc52", "fmul st(1)"], ["0x1004fc54", "fld qword ptr [esp + 0x24]"], ["0x1004fc58", "fmul qword ptr [esp + 0xdc]"], ["0x1004fc5f", "fsubp st(1)"], ["0x1004fc61", "fld qword ptr [esp + 0x14]"], ["0x1004fc65", "fmul st(4)"], ["0x1004fc67", "faddp st(1)"], ["0x1004fc69", "fchs "], ["0x1004fc6b", "fmul qword ptr [esp + 0xc]"], ["0x1004fc6f", "fstp qword ptr [esp + 0x16c]"]]}, {"both": [["0x100a5420", "fld qword ptr [esp + 0x64]", "0x1004fc76"]]}, {"orig": [], "recomp": [["0x1004fc7a", "fmul qword ptr [esp + 0x34]"], ["0x1004fc7e", "fld qword ptr [esp + 0x54]"], ["0x1004fc82", "fmul qword ptr [esp + 0x44]"], ["0x1004fc86", "fsubp st(1)"], ["0x1004fc88", "fstp qword ptr [esp + 0x12c]"], ["0x1004fc8f", "fld qword ptr [esp + 0x6c]"], ["0x1004fc93", "fmul qword ptr [esp + 0x34]"], ["0x1004fc97", "fld qword ptr [esp + 0x4c]"]]}, {"both": [["0x100a5424", "fmul qword ptr [esp + 0x54]", "0x1004fc9b"], ["0x100a5428", "fsubp st(1)", "0x1004fc9f"]]}, {"orig": [["0x100a542a", "fstp qword ptr [esp + 0x124]"]], "recomp": [["0x1004fca1", "fstp qword ptr [esp + 0x10c]"], ["0x1004fca8", "fld qword ptr [esp + 0x2c]"], ["0x1004fcac", "fmul qword ptr [esp + 0x12c]"], ["0x1004fcb3", "fld qword ptr [esp + 0x24]"], ["0x1004fcb7", "fmul qword ptr [esp + 0x10c]"], ["0x1004fcbe", "fsubp st(1)"], ["0x1004fcc0", "fld qword ptr [esp + 0x14]"], ["0x1004fcc4", "fmul qword ptr [esp + 0xf4]"], ["0x1004fccb", "faddp st(1)"], ["0x1004fccd", "fmul qword ptr [esp + 0xc]"], ["0x1004fcd1", "fstp qword ptr [esp + 0x174]"], ["0x1004fcd8", "fld qword ptr [esp + 0xc]"], ["0x1004fcdc", "fmul qword ptr [esp + 0xfc]"], ["0x1004fce3", "fstp qword ptr [esp + 0x17c]"], ["0x1004fcea", "fxch st(3)"], ["0x1004fcec", "fmul qword ptr [esp + 0x14]"], ["0x1004fcf0", "fld qword ptr [esp + 0x1c]"], ["0x1004fcf4", "fmulp st(2)"], ["0x1004fcf6", "fsubrp st(1)"], ["0x1004fcf8", "fld qword ptr [esp + 0x2c]"], ["0x1004fcfc", "fmul qword ptr [esp + 0xec]"], ["0x1004fd03", "faddp st(1)"], ["0x1004fd05", "fchs "], ["0x1004fd07", "fmul qword ptr [esp + 0xc]"], ["0x1004fd0b", "fstp qword ptr [esp + 0x184]"]]}, {"both": [["0x100a5431", "fld qword ptr [esp + 0x7c]", "0x1004fd12"]]}, {"orig": [["0x100a5435", "fmul qword ptr [esp + 0x44]"]], "recomp": [["0x1004fd16", "fmul qword ptr [esp + 0x34]"], ["0x1004fd1a", "fld qword ptr [esp + 0x3c]"], ["0x1004fd1e", "fmul qword ptr [esp + 0x74]"], ["0x1004fd22", "fsubp st(1)"], ["0x1004fd24", "fld qword ptr [esp + 0x14]"], ["0x1004fd28", "fmul qword ptr [esp + 0x104]"], ["0x1004fd2f", "fld qword ptr [esp + 0x1c]"], ["0x1004fd33", "fmul qword ptr [esp + 0xdc]"], ["0x1004fd3a", "fsubp st(1)"], ["0x1004fd3c", "fld qword ptr [esp + 0x2c]"], ["0x1004fd40", "fmul st(2)"], ["0x1004fd42", "faddp st(1)"], ["0x1004fd44", "fmul qword ptr [esp + 0xc]"], ["0x1004fd48", "fstp qword ptr [esp + 0x18c]"]]}, {"both": [["0x100a5439", "fld qword ptr [esp + 0x5c]", "0x1004fd4f"]]}, {"orig": [["0x100a543d", "fmul qword ptr [esp + 0x64]"], ["0x100a5441", "fsubp st(1)"], ["0x100a5443", "fstp qword ptr [esp + 0xec]"], ["0x100a544a", "fld qword ptr [esp + 0x3c]"]], "recomp": [["0x1004fd53", "fmul qword ptr [esp + 0x34]"], ["0x1004fd57", "fld qword ptr [esp + 0x3c]"], ["0x1004fd5b", "fmul qword ptr [esp + 0x54]"], ["0x1004fd5f", "fsubp st(1)"], ["0x1004fd61", "fld qword ptr [esp + 0x2c]"], ["0x1004fd65", "fmul st(1)"], ["0x1004fd67", "fld qword ptr [esp + 0x1c]"], ["0x1004fd6b", "fmul qword ptr [esp + 0x10c]"], ["0x1004fd72", "fsubp st(1)"], ["0x1004fd74", "fld qword ptr [esp + 0x14]"], ["0x1004fd78", "fmul qword ptr [esp + 0x114]"], ["0x1004fd7f", "faddp st(1)"], ["0x1004fd81", "fchs "], ["0x1004fd83", "fmul qword ptr [esp + 0xc]"], ["0x1004fd87", "fstp qword ptr [esp + 0x194]"], ["0x1004fd8e", "fld qword ptr [esp + 0x11c]"], ["0x1004fd95", "fchs "], ["0x1004fd97", "fmul qword ptr [esp + 0xc]"], ["0x1004fd9b", "fstp qword ptr [esp + 0x19c]"], ["0x1004fda2", "fxch st(4)"], ["0x1004fda4", "fmul qword ptr [esp + 0x14]"], ["0x1004fda8", "fld qword ptr [esp + 0x1c]"], ["0x1004fdac", "fmul qword ptr [esp + 0xe4]"], ["0x1004fdb3", "fsubp st(1)"], ["0x1004fdb5", "fld qword ptr [esp + 0x24]"], ["0x1004fdb9", "fmul qword ptr [esp + 0xec]"], ["0x1004fdc0", "faddp st(1)"], ["0x1004fdc2", "fmul qword ptr [esp + 0xc]"], ["0x1004fdc6", "fstp qword ptr [esp + 0x1a4]"], ["0x1004fdcd", "fmul qword ptr [esp + 0x24]"], ["0x1004fdd1", "fld qword ptr [esp + 0x1c]"], ["0x1004fdd5", "fmul st(3)"], ["0x1004fdd7", "fsubp st(1)"], ["0x1004fdd9", "fld qword ptr [esp + 0x14]"]]}, {"both": [["0x100a544e", "fmul qword ptr [esp + 0x124]", "0x1004fddd"]]}, {"orig": [["0x100a5455", "fld qword ptr [esp + 0x34]"], ["0x100a5459", "fmul qword ptr [esp + 0xec]"], ["0x100a5460", "fsubp st(1)"], ["0x100a5462", "fld qword ptr [esp + 0x24]"], ["0x100a5466", "fmul qword ptr [esp + 0xfc]"], ["0x100a546d", "faddp st(1)"], ["0x100a546f", "fmul qword ptr [esp + 0xc]"], ["0x100a5473", "fstp qword ptr [esp + 0x16c]"], ["0x100a547a", "fxch st(1)"], ["0x100a547c", "fmul qword ptr [esp + 0xc]"], ["0x100a5480", "fstp qword ptr [esp + 0x174]"], ["0x100a5487", "fld qword ptr [esp + 0x3c]"], ["0x100a548b", "fmul st(4)"], ["0x100a548d", "fld qword ptr [esp + 0x2c]"], ["0x100a5491", "fmul st(4)"], ["0x100a5493", "fsubp st(1)"], ["0x100a5495", "fld qword ptr [esp + 0x24]"], ["0x100a5499", "fmul st(3)"], ["0x100a549b", "faddp st(1)"], ["0x100a549d", "fchs "], ["0x100a549f", "fmul qword ptr [esp + 0xc]"], ["0x100a54a3", "fstp qword ptr [esp + 0x17c]"], ["0x100a54aa", "fld qword ptr [esp + 0x8c]"], ["0x100a54b1", "fmul qword ptr [esp + 0x44]"], ["0x100a54b5", "fld qword ptr [esp + 0x4c]"], ["0x100a54b9", "fmul qword ptr [esp + 0x84]"], ["0x100a54c0", "fsubp st(1)"], ["0x100a54c2", "fld qword ptr [esp + 0x24]"], ["0x100a54c6", "fmul qword ptr [esp + 0x104]"], ["0x100a54cd", "fld qword ptr [esp + 0x2c]"], ["0x100a54d1", "fmul qword ptr [esp + 0x14]"], ["0x100a54d5", "fsubp st(1)"], ["0x100a54d7", "fld qword ptr [esp + 0x3c]"], ["0x100a54db", "fmul st(2)"], ["0x100a54dd", "faddp st(1)"], ["0x100a54df", "fmul qword ptr [esp + 0xc]"], ["0x100a54e3", "fstp qword ptr [esp + 0x184]"], ["0x100a54ea", "fld qword ptr [esp + 0x44]"], ["0x100a54ee", "fmul qword ptr [esp + 0x6c]"], ["0x100a54f2", "fld qword ptr [esp + 0x4c]"], ["0x100a54f6", "fmul qword ptr [esp + 0x64]"], ["0x100a54fa", "fsubp st(1)"], ["0x100a54fc", "fst qword ptr [esp + 0x14]"], ["0x100a5500", "fmul qword ptr [esp + 0x3c]"], ["0x100a5504", "fld qword ptr [esp + 0x2c]"], ["0x100a5508", "fmul qword ptr [esp + 0xec]"], ["0x100a550f", "fsubp st(1)"], ["0x100a5511", "fld qword ptr [esp + 0x24]"], ["0x100a5515", "fmul qword ptr [esp + 0x10c]"], ["0x100a551c", "faddp st(1)"], ["0x100a551e", "fchs "], ["0x100a5520", "fmul qword ptr [esp + 0xc]"], ["0x100a5524", "fstp qword ptr [esp + 0x18c]"], ["0x100a552b", "fld qword ptr [esp + 0x114]"], ["0x100a5532", "fchs "], ["0x100a5534", "fmul qword ptr [esp + 0xc]"], ["0x100a5538", "fstp qword ptr [esp + 0x194]"], ["0x100a553f", "fxch st(4)"], ["0x100a5541", "fmul qword ptr [esp + 0x34]"], ["0x100a5545", "fld qword ptr [esp + 0x2c]"], ["0x100a5549", "fmul qword ptr [esp + 0xf4]"], ["0x100a5550", "fsubp st(1)"], ["0x100a5552", "fld qword ptr [esp + 0x24]"], ["0x100a5556", "fmulp st(2)"], ["0x100a5558", "faddp st(1)"], ["0x100a555a", "fmul qword ptr [esp + 0xc]"], ["0x100a555e", "fstp qword ptr [esp + 0x19c]"]], "recomp": [["0x1004fde4", "faddp st(1)"], ["0x1004fde6", "fchs "], ["0x1004fde8", "fmul qword ptr [esp + 0xc]"], ["0x1004fdec", "fstp qword ptr [esp + 0x1ac]"]]}, {"both": [["0x100a5565", "fxch st(2)", "0x1004fdf3"]]}, {"orig": [["0x100a5567", "fmul qword ptr [esp + 0x34]"], ["0x100a556b", "fld qword ptr [esp + 0x2c]"], ["0x100a556f", "fmul qword ptr [esp + 0x1c]"], ["0x100a5573", "fsubp st(1)"], ["0x100a5575", "fld qword ptr [esp + 0x24]"], ["0x100a5579", "fmul qword ptr [esp + 0x11c]"], ["0x100a5580", "faddp st(1)"], ["0x100a5582", "fchs "], ["0x100a5584", "fmul qword ptr [esp + 0xc]"], ["0x100a5588", "fstp qword ptr [esp + 0x1a4]"], ["0x100a558f", "fld qword ptr [esp + 0x34]"], ["0x100a5593", "fmul qword ptr [esp + 0x14]"], ["0x100a5597", "fld qword ptr [esp + 0x2c]"], ["0x100a559b", "fmul qword ptr [esp + 0x124]"]], "recomp": [["0x1004fdf5", "fmul qword ptr [esp + 0x24]"], ["0x1004fdf9", "fld qword ptr [esp + 0x1c]"], ["0x1004fdfd", "fmul qword ptr [esp + 0x12c]"]]}, {"both": [["0x100a55a2", "xor esi, esi", "0x1004fe04"]]}, {"orig": [["0x100a55a4", "lea edi, [esp + 0x134]"]], "recomp": [["0x1004fe06", "lea edi, [esp + 0x13c]"]]}, {"both": [["0x100a55ab", "mov eax, 4", "0x1004fe0d"], ["0x100a55b0", "fsubp st(1)", "0x1004fe12"]]}, {"orig": [["0x100a55b2", "fld qword ptr [esp + 0x24]"], ["0x100a55b6", "fmul qword ptr [esp + 0x12c]"], ["0x100a55bd", "faddp st(1)"], ["0x100a55bf", "fmul qword ptr [esp + 0xc]"], ["0x100a55c3", "fstp qword ptr [esp + 0x1ac]"]], "recomp": [["0x1004fe14", "fld qword ptr [esp + 0x14]"], ["0x1004fe18", "fmul qword ptr [esp + 0x134]"], ["0x1004fe1f", "faddp st(1)"], ["0x1004fe21", "fmul qword ptr [esp + 0xc]"], ["0x1004fe25", "fstp qword ptr [esp + 0x1b4]"]]}, {"both": [["0x100a55ca", "fstp st(0)", "0x1004fe2c"], ["0x100a55cc", "fstp st(0)", "0x1004fe2e"], ["0x100a55ce", "mov edx, 4", "0x1004fe30"], ["0x100a55d3", "fld qword ptr [edi]", "0x1004fe35"]]}, {"orig": [["0x100a55d5", "mov ebx, dword ptr [esp + 0xa8]"]], "recomp": [["0x1004fe37", "mov ebx, dword ptr [esp + 0x98]"]]}, {"both": [["0x100a55dc", "add edi, 8", "0x1004fe3e"], ["0x100a55df", "add esi, 4", "0x1004fe41"], ["0x100a55e2", "dec edx", "0x1004fe44"], ["0x100a55e3", "fstp dword ptr [ebx + esi - 4]", "0x1004fe45"], ["0x100a55e7", "jne -0x16", "0x1004fe49"], ["0x100a55e9", "dec eax", "0x1004fe4b"], ["0x100a55ea", "jne -0x1e", "0x1004fe4c"]]}, {"orig": [["0x100a55ec", "mov edx, dword ptr [esp + 0x1b8]"], ["0x100a55f3", "mov esi, dword ptr [ecx + 0x14]"], ["0x100a55f6", "mov eax, dword ptr [esp + 0xa8]"]], "recomp": [["0x1004fe4e", "mov edx, dword ptr [esp + 0x1c0]"], ["0x1004fe55", "mov esi, dword ptr [ecx + 0x14]"], ["0x1004fe58", "mov eax, dword ptr [esp + 0x98]"], ["0x1004fe5f", "fld dword ptr [eax + 0x30]"], ["0x1004fe62", "fmul dword ptr [esi + 0xc]"], ["0x1004fe65", "fld dword ptr [esi + 4]"], ["0x1004fe68", "fmul dword ptr [eax + 0x10]"], ["0x1004fe6b", "faddp st(1)"]]}, {"both": [["0x100a55fd", "fld dword ptr [esi + 8]", "0x1004fe6d"], ["0x100a5600", "fmul dword ptr [eax + 0x20]", "0x1004fe70"]]}, {"orig": [["0x100a5603", "fld dword ptr [esi + 4]"], ["0x100a5606", "fmul dword ptr [eax + 0x10]"], ["0x100a5609", "faddp st(1)"], ["0x100a560b", "fld dword ptr [esi + 0xc]"], ["0x100a560e", "fmul dword ptr [eax + 0x30]"], ["0x100a5611", "mov ebx, dword ptr [edx + 4]"], ["0x100a5614", "faddp st(1)"], ["0x100a5616", "fld dword ptr [esi]"], ["0x100a5618", "fmul dword ptr [eax]"]], "recomp": [["0x1004fe73", "mov ebx, dword ptr [edx + 4]"], ["0x1004fe76", "faddp st(1)"], ["0x1004fe78", "fld dword ptr [eax]"], ["0x1004fe7a", "fmul dword ptr [esi]"]]}, {"both": [["0x100a561a", "faddp st(1)", "0x1004fe7c"], ["0x100a561c", "fstp dword ptr [ebx]", "0x1004fe7e"], ["0x100a561e", "mov esi, dword ptr [ecx + 0x14]", "0x1004fe80"]]}, {"orig": [["0x100a5621", "mov eax, dword ptr [esp + 0xa8]"], ["0x100a5628", "fld dword ptr [esi + 4]"], ["0x100a562b", "fmul dword ptr [eax + 0x14]"]], "recomp": [["0x1004fe83", "mov eax, dword ptr [esp + 0x98]"]]}, {"both": [["0x100a562e", "fld dword ptr [eax + 0x24]", "0x1004fe8a"], ["0x100a5631", "fmul dword ptr [esi + 8]", "0x1004fe8d"]]}, {"orig": [], "recomp": [["0x1004fe90", "fld dword ptr [eax + 0x14]"], ["0x1004fe93", "fmul dword ptr [esi + 4]"]]}, {"both": [["0x100a5634", "faddp st(1)", "0x1004fe96"], ["0x100a5636", "fld dword ptr [esi + 0xc]", "0x1004fe98"], ["0x100a5639", "fmul dword ptr [eax + 0x34]", "0x1004fe9b"], ["0x100a563c", "mov ebx, dword ptr [edx + 4]", "0x1004fe9e"], ["0x100a563f", "faddp st(1)", "0x1004fea1"], ["0x100a5641", "fld dword ptr [eax + 4]", "0x1004fea3"], ["0x100a5644", "fmul dword ptr [esi]", "0x1004fea6"], ["0x100a5646", "faddp st(1)", "0x1004fea8"], ["0x100a5648", "fstp dword ptr [ebx + 4]", "0x1004feaa"], ["0x100a564b", "mov esi, dword ptr [ecx + 0x14]", "0x1004fead"]]}, {"orig": [["0x100a564e", "mov eax, dword ptr [esp + 0xa8]"]], "recomp": [["0x1004feb0", "mov eax, dword ptr [esp + 0x98]"]]}, {"both": [["0x100a5655", "fld dword ptr [esi + 4]", "0x1004feb7"], ["0x100a5658", "fmul dword ptr [eax + 0x18]", "0x1004feba"], ["0x100a565b", "fld dword ptr [eax + 0x28]", "0x1004febd"], ["0x100a565e", "fmul dword ptr [esi + 8]", "0x1004fec0"], ["0x100a5661", "faddp st(1)", "0x1004fec3"], ["0x100a5663", "fld dword ptr [eax + 0x38]", "0x1004fec5"], ["0x100a5666", "fmul dword ptr [esi + 0xc]", "0x1004fec8"], ["0x100a5669", "mov ebx, dword ptr [edx + 4]", "0x1004fecb"], ["0x100a566c", "faddp st(1)", "0x1004fece"], ["0x100a566e", "fld dword ptr [eax + 8]", "0x1004fed0"], ["0x100a5671", "fmul dword ptr [esi]", "0x1004fed3"], ["0x100a5673", "faddp st(1)", "0x1004fed5"], ["0x100a5675", "fstp dword ptr [ebx + 8]", "0x1004fed7"], ["0x100a5678", "mov esi, dword ptr [ecx + 0x14]", "0x1004feda"]]}, {"orig": [["0x100a567b", "mov eax, dword ptr [esp + 0xa8]"]], "recomp": [["0x1004fedd", "mov eax, dword ptr [esp + 0x98]"]]}, {"both": [["0x100a5682", "fld dword ptr [esi + 4]", "0x1004fee4"], ["0x100a5685", "fmul dword ptr [eax + 0x1c]", "0x1004fee7"]]}, {"orig": [["0x100a5688", "fld dword ptr [esi + 8]"], ["0x100a568b", "fmul dword ptr [eax + 0x2c]"]], "recomp": [["0x1004feea", "fld dword ptr [eax + 0x2c]"], ["0x1004feed", "fmul dword ptr [esi + 8]"]]}, {"both": [["0x100a568e", "faddp st(1)", "0x1004fef0"], ["0x100a5690", "fld dword ptr [eax + 0x3c]", "0x1004fef2"], ["0x100a5693", "fmul dword ptr [esi + 0xc]", "0x1004fef5"], ["0x100a5696", "mov ebx, dword ptr [edx + 4]", "0x1004fef8"], ["0x100a5699", "faddp st(1)", "0x1004fefb"], ["0x100a569b", "fld dword ptr [eax + 0xc]", "0x1004fefd"], ["0x100a569e", "fmul dword ptr [esi]", "0x1004ff00"], ["0x100a56a0", "faddp st(1)", "0x1004ff02"], ["0x100a56a2", "fstp dword ptr [ebx + 0xc]", "0x1004ff04"], ["0x100a56a5", "mov esi, dword ptr [ecx + 0x14]", "0x1004ff07"]]}, {"orig": [], "recomp": [["0x1004ff0a", "fld dword ptr [esi + 0x14]"], ["0x1004ff0d", "mov eax, dword ptr [esp + 0x98]"], ["0x1004ff14", "fmul dword ptr [eax + 0x10]"]]}, {"both": [["0x100a56a8", "fld dword ptr [esi + 0x18]", "0x1004ff17"]]}, {"orig": [["0x100a56ab", "mov eax, dword ptr [esp + 0xa8]"]], "recomp": []}, {"both": [["0x100a56b2", "fmul dword ptr [eax + 0x20]", "0x1004ff1a"]]}, {"orig": [], "recomp": [["0x1004ff1d", "faddp st(1)"]]}, {"both": [["0x100a56b5", "fld dword ptr [esi + 0x1c]", "0x1004ff1f"], ["0x100a56b8", "fmul dword ptr [eax + 0x30]", "0x1004ff22"]]}, {"orig": [["0x100a56bb", "faddp st(1)"], ["0x100a56bd", "fld dword ptr [esi + 0x14]"], ["0x100a56c0", "fmul dword ptr [eax + 0x10]"]], "recomp": []}, {"both": [["0x100a56c3", "mov ebx, dword ptr [edx + 4]", "0x1004ff25"], ["0x100a56c6", "faddp st(1)", "0x1004ff28"], ["0x100a56c8", "fld dword ptr [esi + 0x10]", "0x1004ff2a"], ["0x100a56cb", "fmul dword ptr [eax]", "0x1004ff2d"], ["0x100a56cd", "faddp st(1)", "0x1004ff2f"], ["0x100a56cf", "fstp dword ptr [ebx + 0x10]", "0x1004ff31"], ["0x100a56d2", "mov esi, dword ptr [ecx + 0x14]", "0x1004ff34"]]}, {"orig": [["0x100a56d5", "mov eax, dword ptr [esp + 0xa8]"], ["0x100a56dc", "fld dword ptr [esi + 0x14]"], ["0x100a56df", "fmul dword ptr [eax + 0x14]"]], "recomp": [["0x1004ff37", "mov eax, dword ptr [esp + 0x98]"], ["0x1004ff3e", "fld dword ptr [eax + 0x14]"], ["0x1004ff41", "fmul dword ptr [esi + 0x14]"]]}, {"both": [["0x100a56e2", "fld dword ptr [eax + 0x24]", "0x1004ff44"], ["0x100a56e5", "fmul dword ptr [esi + 0x18]", "0x1004ff47"], ["0x100a56e8", "faddp st(1)", "0x1004ff4a"], ["0x100a56ea", "fld dword ptr [esi + 0x1c]", "0x1004ff4c"], ["0x100a56ed", "fmul dword ptr [eax + 0x34]", "0x1004ff4f"], ["0x100a56f0", "mov ebx, dword ptr [edx + 4]", "0x1004ff52"], ["0x100a56f3", "faddp st(1)", "0x1004ff55"]]}, {"orig": [], "recomp": [["0x1004ff57", "fld dword ptr [eax + 4]"], ["0x1004ff5a", "fmul dword ptr [esi + 0x10]"], ["0x1004ff5d", "faddp st(1)"], ["0x1004ff5f", "fstp dword ptr [ebx + 0x14]"], ["0x1004ff62", "mov esi, dword ptr [ecx + 0x14]"], ["0x1004ff65", "mov eax, dword ptr [esp + 0x98]"], ["0x1004ff6c", "fld dword ptr [esi + 0x14]"], ["0x1004ff6f", "fmul dword ptr [eax + 0x18]"], ["0x1004ff72", "fld dword ptr [eax + 0x28]"], ["0x1004ff75", "fmul dword ptr [esi + 0x18]"], ["0x1004ff78", "faddp st(1)"], ["0x1004ff7a", "fld dword ptr [eax + 0x38]"], ["0x1004ff7d", "fmul dword ptr [esi + 0x1c]"], ["0x1004ff80", "mov ebx, dword ptr [edx + 4]"], ["0x1004ff83", "faddp st(1)"]]}, {"both": [["0x100a56f5", "fld dword ptr [esi + 0x10]", "0x1004ff85"]]}, {"orig": [["0x100a56f8", "fmul dword ptr [eax + 4]"], ["0x100a56fb", "faddp st(1)"], ["0x100a56fd", "fstp dword ptr [ebx + 0x14]"], ["0x100a5700", "mov esi, dword ptr [ecx + 0x14]"], ["0x100a5703", "mov eax, dword ptr [esp + 0xa8]"], ["0x100a570a", "fld dword ptr [eax + 8]"]], "recomp": [["0x1004ff88", "fmul dword ptr [eax + 8]"], ["0x1004ff8b", "faddp st(1)"], ["0x1004ff8d", "fstp dword ptr [ebx + 0x18]"], ["0x1004ff90", "mov esi, dword ptr [ecx + 0x14]"], ["0x1004ff93", "mov eax, dword ptr [esp + 0x98]"], ["0x1004ff9a", "fld dword ptr [eax + 0xc]"]]}, {"both": [["0x100a570d", "fmul dword ptr [esi + 0x10]", "0x1004ff9d"], ["0x100a5710", "fld dword ptr [esi + 0x14]", "0x1004ffa0"]]}, {"orig": [["0x100a5713", "fmul dword ptr [eax + 0x18]"], ["0x100a5716", "faddp st(1)"], ["0x100a5718", "fld dword ptr [esi + 0x18]"], ["0x100a571b", "fmul dword ptr [eax + 0x28]"], ["0x100a571e", "mov ebx, dword ptr [edx + 4]"], ["0x100a5721", "faddp st(1)"], ["0x100a5723", "fld dword ptr [eax + 0x38]"], ["0x100a5726", "fmul dword ptr [esi + 0x1c]"], ["0x100a5729", "faddp st(1)"], ["0x100a572b", "fstp dword ptr [ebx + 0x18]"], ["0x100a572e", "mov esi, dword ptr [ecx + 0x14]"], ["0x100a5731", "mov eax, dword ptr [esp + 0xa8]"], ["0x100a5738", "fld dword ptr [esi + 0x14]"]], "recomp": []}, {"both": [["0x100a573b", "fmul dword ptr [eax + 0x1c]", "0x1004ffa3"]]}, {"orig": [], "recomp": [["0x1004ffa6", "faddp st(1)"]]}, {"both": [["0x100a573e", "fld dword ptr [esi + 0x18]", "0x1004ffa8"], ["0x100a5741", "fmul dword ptr [eax + 0x2c]", "0x1004ffab"]]}, {"orig": [], "recomp": [["0x1004ffae", "mov ebx, dword ptr [edx + 4]"]]}, {"both": [["0x100a5744", "faddp st(1)", "0x1004ffb1"], ["0x100a5746", "fld dword ptr [eax + 0x3c]", "0x1004ffb3"], ["0x100a5749", "fmul dword ptr [esi + 0x1c]", "0x1004ffb6"]]}, {"orig": [["0x100a574c", "mov ebx, dword ptr [edx + 4]"], ["0x100a574f", "faddp st(1)"], ["0x100a5751", "fld dword ptr [eax + 0xc]"], ["0x100a5754", "fmul dword ptr [esi + 0x10]"]], "recomp": []}, {"both": [["0x100a5757", "faddp st(1)", "0x1004ffb9"], ["0x100a5759", "fstp dword ptr [ebx + 0x1c]", "0x1004ffbb"], ["0x100a575c", "mov esi, dword ptr [ecx + 0x14]", "0x1004ffbe"]]}, {"orig": [["0x100a575f", "mov eax, dword ptr [esp + 0xa8]"]], "recomp": [["0x1004ffc1", "mov eax, dword ptr [esp + 0x98]"], ["0x1004ffc8", "fld dword ptr [esi + 0x24]"], ["0x1004ffcb", "fmul dword ptr [eax + 0x10]"], ["0x1004ffce", "fld dword ptr [esi + 0x28]"], ["0x1004ffd1", "fmul dword ptr [eax + 0x20]"], ["0x1004ffd4", "faddp st(1)"]]}, {"both": [["0x100a5766", "fld dword ptr [esi + 0x2c]", "0x1004ffd6"], ["0x100a5769", "fmul dword ptr [eax + 0x30]", "0x1004ffd9"]]}, {"orig": [["0x100a576c", "fld dword ptr [esi + 0x24]"], ["0x100a576f", "fmul dword ptr [eax + 0x10]"], ["0x100a5772", "faddp st(1)"], ["0x100a5774", "fld dword ptr [esi + 0x28]"], ["0x100a5777", "fmul dword ptr [eax + 0x20]"]], "recomp": []}, {"both": [["0x100a577a", "mov ebx, dword ptr [edx + 4]", "0x1004ffdc"], ["0x100a577d", "faddp st(1)", "0x1004ffdf"], ["0x100a577f", "fld dword ptr [esi + 0x20]", "0x1004ffe1"], ["0x100a5782", "fmul dword ptr [eax]", "0x1004ffe4"], ["0x100a5784", "faddp st(1)", "0x1004ffe6"], ["0x100a5786", "fstp dword ptr [ebx + 0x20]", "0x1004ffe8"], ["0x100a5789", "mov esi, dword ptr [ecx + 0x14]", "0x1004ffeb"]]}, {"orig": [["0x100a578c", "mov eax, dword ptr [esp + 0xa8]"]], "recomp": [["0x1004ffee", "mov eax, dword ptr [esp + 0x98]"], ["0x1004fff5", "fld dword ptr [eax + 0x14]"], ["0x1004fff8", "fmul dword ptr [esi + 0x24]"]]}, {"both": [["0x100a5793", "fld dword ptr [eax + 0x24]", "0x1004fffb"], ["0x100a5796", "fmul dword ptr [esi + 0x28]", "0x1004fffe"]]}, {"orig": [["0x100a5799", "fld dword ptr [esi + 0x24]"], ["0x100a579c", "fmul dword ptr [eax + 0x14]"]], "recomp": []}, {"both": [["0x100a579f", "faddp st(1)", "0x10050001"], ["0x100a57a1", "fld dword ptr [esi + 0x2c]", "0x10050003"], ["0x100a57a4", "fmul dword ptr [eax + 0x34]", "0x10050006"], ["0x100a57a7", "mov ebx, dword ptr [edx + 4]", "0x10050009"], ["0x100a57aa", "faddp st(1)", "0x1005000c"]]}, {"orig": [["0x100a57ac", "fld dword ptr [esi + 0x20]"], ["0x100a57af", "fmul dword ptr [eax + 4]"]], "recomp": [["0x1005000e", "fld dword ptr [eax + 4]"], ["0x10050011", "fmul dword ptr [esi + 0x20]"]]}, {"both": [["0x100a57b2", "faddp st(1)", "0x10050014"], ["0x100a57b4", "fstp dword ptr [ebx + 0x24]", "0x10050016"], ["0x100a57b7", "mov esi, dword ptr [ecx + 0x14]", "0x10050019"]]}, {"orig": [["0x100a57ba", "mov eax, dword ptr [esp + 0xa8]"]], "recomp": [["0x1005001c", "mov eax, dword ptr [esp + 0x98]"], ["0x10050023", "fld dword ptr [eax + 0x28]"], ["0x10050026", "fmul dword ptr [esi + 0x28]"]]}, {"both": [["0x100a57c1", "fld dword ptr [esi + 0x24]", "0x10050029"], ["0x100a57c4", "fmul dword ptr [eax + 0x18]", "0x1005002c"]]}, {"orig": [["0x100a57c7", "fld dword ptr [eax + 8]"], ["0x100a57ca", "fmul dword ptr [esi + 0x20]"], ["0x100a57cd", "faddp st(1)"], ["0x100a57cf", "fld dword ptr [esi + 0x28]"], ["0x100a57d2", "fmul dword ptr [eax + 0x28]"], ["0x100a57d5", "mov ebx, dword ptr [edx + 4]"]], "recomp": []}, {"both": [["0x100a57d8", "faddp st(1)", "0x1005002f"], ["0x100a57da", "fld dword ptr [eax + 0x38]", "0x10050031"], ["0x100a57dd", "fmul dword ptr [esi + 0x2c]", "0x10050034"]]}, {"orig": [], "recomp": [["0x10050037", "mov ebx, dword ptr [edx + 4]"], ["0x1005003a", "faddp st(1)"], ["0x1005003c", "fld dword ptr [esi + 0x20]"], ["0x1005003f", "fmul dword ptr [eax + 8]"]]}, {"both": [["0x100a57e0", "faddp st(1)", "0x10050042"], ["0x100a57e2", "fstp dword ptr [ebx + 0x28]", "0x10050044"], ["0x100a57e5", "mov esi, dword ptr [ecx + 0x14]", "0x10050047"]]}, {"orig": [["0x100a57e8", "mov eax, dword ptr [esp + 0xa8]"]], "recomp": [["0x1005004a", "mov eax, dword ptr [esp + 0x98]"]]}, {"both": [["0x100a57ef", "fld dword ptr [esi + 0x24]", "0x10050051"], ["0x100a57f2", "fmul dword ptr [eax + 0x1c]", "0x10050054"]]}, {"orig": [], "recomp": [["0x10050057", "fld dword ptr [eax + 0xc]"], ["0x1005005a", "fmul dword ptr [esi + 0x20]"], ["0x1005005d", "faddp st(1)"]]}, {"both": [["0x100a57f5", "fld dword ptr [esi + 0x28]", "0x1005005f"], ["0x100a57f8", "fmul dword ptr [eax + 0x2c]", "0x10050062"]]}, {"orig": [["0x100a57fb", "faddp st(1)"], ["0x100a57fd", "fld dword ptr [esi + 0x2c]"], ["0x100a5800", "fmul dword ptr [eax + 0x3c]"], ["0x100a5803", "mov ebx, dword ptr [edx + 4]"], ["0x100a5806", "faddp st(1)"], ["0x100a5808", "fld dword ptr [eax + 0xc]"], ["0x100a580b", "fmul dword ptr [esi + 0x20]"]], "recomp": [["0x10050065", "mov ebx, dword ptr [edx + 4]"], ["0x10050068", "faddp st(1)"], ["0x1005006a", "fld dword ptr [eax + 0x3c]"], ["0x1005006d", "fmul dword ptr [esi + 0x2c]"]]}, {"both": [["0x100a580e", "faddp st(1)", "0x10050070"], ["0x100a5810", "fstp dword ptr [ebx + 0x2c]", "0x10050072"], ["0x100a5813", "mov esi, dword ptr [ecx + 0x14]", "0x10050075"]]}, {"orig": [["0x100a5816", "mov eax, dword ptr [esp + 0xa8]"]], "recomp": [["0x10050078", "mov eax, dword ptr [esp + 0x98]"]]}, {"both": [["0x100a581d", "fld dword ptr [esi + 0x3c]", "0x1005007f"], ["0x100a5820", "fmul dword ptr [eax + 0x30]", "0x10050082"]]}, {"orig": [["0x100a5823", "fld dword ptr [esi + 0x34]"], ["0x100a5826", "fmul dword ptr [eax + 0x10]"]], "recomp": [["0x10050085", "fld dword ptr [eax + 0x10]"], ["0x10050088", "fmul dword ptr [esi + 0x34]"]]}, {"both": [["0x100a5829", "faddp st(1)", "0x1005008b"], ["0x100a582b", "fld dword ptr [eax + 0x20]", "0x1005008d"], ["0x100a582e", "fmul dword ptr [esi + 0x38]", "0x10050090"], ["0x100a5831", "mov ebx, dword ptr [edx + 4]", "0x10050093"], ["0x100a5834", "faddp st(1)", "0x10050096"], ["0x100a5836", "fld dword ptr [esi + 0x30]", "0x10050098"], ["0x100a5839", "fmul dword ptr [eax]", "0x1005009b"], ["0x100a583b", "faddp st(1)", "0x1005009d"], ["0x100a583d", "fstp dword ptr [ebx + 0x30]", "0x1005009f"], ["0x100a5840", "mov esi, dword ptr [ecx + 0x14]", "0x100500a2"]]}, {"orig": [["0x100a5843", "mov eax, dword ptr [esp + 0xa8]"]], "recomp": [["0x100500a5", "mov eax, dword ptr [esp + 0x98]"], ["0x100500ac", "fld dword ptr [esi + 0x3c]"], ["0x100500af", "fmul dword ptr [eax + 0x34]"], ["0x100500b2", "fld dword ptr [eax + 4]"], ["0x100500b5", "fmul dword ptr [esi + 0x30]"], ["0x100500b8", "faddp st(1)"], ["0x100500ba", "fld dword ptr [eax + 0x14]"], ["0x100500bd", "fmul dword ptr [esi + 0x34]"], ["0x100500c0", "mov ebx, dword ptr [edx + 4]"], ["0x100500c3", "faddp st(1)"]]}, {"both": [["0x100a584a", "fld dword ptr [eax + 0x24]", "0x100500c5"], ["0x100a584d", "fmul dword ptr [esi + 0x38]", "0x100500c8"]]}, {"orig": [["0x100a5850", "fld dword ptr [eax + 0x14]"], ["0x100a5853", "fmul dword ptr [esi + 0x34]"], ["0x100a5856", "faddp st(1)"], ["0x100a5858", "fld dword ptr [esi + 0x3c]"], ["0x100a585b", "fmul dword ptr [eax + 0x34]"], ["0x100a585e", "mov ebx, dword ptr [edx + 4]"], ["0x100a5861", "faddp st(1)"], ["0x100a5863", "fld dword ptr [esi + 0x30]"], ["0x100a5866", "fmul dword ptr [eax + 4]"]], "recomp": []}, {"both": [["0x100a5869", "faddp st(1)", "0x100500cb"], ["0x100a586b", "fstp dword ptr [ebx + 0x34]", "0x100500cd"], ["0x100a586e", "mov esi, dword ptr [ecx + 0x14]", "0x100500d0"]]}, {"orig": [["0x100a5871", "mov eax, dword ptr [esp + 0xa8]"], ["0x100a5878", "fld dword ptr [eax + 8]"], ["0x100a587b", "fmul dword ptr [esi + 0x30]"]], "recomp": [["0x100500d3", "mov eax, dword ptr [esp + 0x98]"], ["0x100500da", "fld dword ptr [eax + 0x28]"], ["0x100500dd", "fmul dword ptr [esi + 0x38]"], ["0x100500e0", "fld dword ptr [eax + 0x38]"], ["0x100500e3", "fmul dword ptr [esi + 0x3c]"], ["0x100500e6", "faddp st(1)"]]}, {"both": [["0x100a587e", "fld dword ptr [eax + 0x18]", "0x100500e8"], ["0x100a5881", "fmul dword ptr [esi + 0x34]", "0x100500eb"]]}, {"orig": [["0x100a5884", "faddp st(1)"], ["0x100a5886", "fld dword ptr [eax + 0x38]"], ["0x100a5889", "fmul dword ptr [esi + 0x3c]"], ["0x100a588c", "mov ebx, dword ptr [edx + 4]"], ["0x100a588f", "faddp st(1)"], ["0x100a5891", "fld dword ptr [eax + 0x28]"], ["0x100a5894", "fmul dword ptr [esi + 0x38]"]], "recomp": [["0x100500ee", "mov ebx, dword ptr [edx + 4]"], ["0x100500f1", "faddp st(1)"], ["0x100500f3", "fld dword ptr [esi + 0x30]"], ["0x100500f6", "fmul dword ptr [eax + 8]"]]}, {"both": [["0x100a5897", "faddp st(1)", "0x100500f9"], ["0x100a5899", "fstp dword ptr [ebx + 0x38]", "0x100500fb"], ["0x100a589c", "mov ecx, dword ptr [ecx + 0x14]", "0x100500fe"]]}, {"orig": [["0x100a589f", "mov eax, dword ptr [esp + 0xa8]"], ["0x100a58a6", "fld dword ptr [ecx + 0x3c]"], ["0x100a58a9", "fmul dword ptr [eax + 0x3c]"]], "recomp": [["0x10050101", "mov eax, dword ptr [esp + 0x98]"]]}, {"both": [["0x100a58ac", "fld dword ptr [eax + 0xc]", "0x10050108"], ["0x100a58af", "fmul dword ptr [ecx + 0x30]", "0x1005010b"]]}, {"orig": [["0x100a58b2", "faddp st(1)"]], "recomp": []}, {"both": [["0x100a58b4", "fld dword ptr [eax + 0x1c]", "0x1005010e"], ["0x100a58b7", "fmul dword ptr [ecx + 0x34]", "0x10050111"]]}, {"orig": [], "recomp": [["0x10050114", "faddp st(1)"], ["0x10050116", "fld dword ptr [eax + 0x3c]"], ["0x10050119", "fmul dword ptr [ecx + 0x3c]"]]}, {"both": [["0x100a58ba", "mov ebx, dword ptr [edx + 4]", "0x1005011c"], ["0x100a58bd", "faddp st(1)", "0x1005011f"], ["0x100a58bf", "fld dword ptr [eax + 0x2c]", "0x10050121"], ["0x100a58c2", "fmul dword ptr [ecx + 0x38]", "0x10050124"], ["0x100a58c5", "faddp st(1)", "0x10050127"], ["0x100a58c7", "fstp dword ptr [ebx + 0x3c]", "0x10050129"], ["0x100a58ca", "jmp 0x12", "0x1005012c"]]}, {"orig": [], "recomp": [["0x1005012e", "add ecx, 0x10"], ["0x10050131", "mov edx, dword ptr [esp + 0x1c0]"], ["0x10050138", "push ecx"], ["0x10050139", "mov eax, dword ptr [edx]"], ["0x1005013b", "mov ecx, edx"], ["0x1005013d", "call dword ptr [eax + 0x28]"], ["0x10050140", "pop edi"], ["0x10050141", "pop esi"], ["0x10050142", "pop ebx"], ["0x10050143", "add esp, 0x1b0"], ["0x10050149", "ret 4"]]}]]]}, {"address": "0x100a58f0", "recomp": "0x10050150", "name": "OrientableROI::FUN_100a58f0", "matching": 1.0, "diff": []}, {"address": "0x100a5910", "recomp": "0x10050170", "name": "OrientableROI::VTable0x1c", "matching": 1.0, "diff": []}, {"address": "0x100a5930", "recomp": "0x10050190", "name": "OrientableROI::SetLocalTransform", "matching": 1.0, "diff": []}, {"address": "0x100a5960", "recomp": "0x100501c0", "name": "OrientableROI::VTable0x24", "matching": 1.0, "diff": []}, {"address": "0x100a59b0", "recomp": "0x10050210", "name": "OrientableROI::UpdateWorldData", "matching": 1.0, "diff": []}, {"address": "0x100a5a30", "recomp": "0x10050290", "name": "OrientableROI::FUN_100a5a30", "matching": 1.0, "diff": []}, {"address": "0x100a5a50", "recomp": "0x100502b0", "name": "OrientableROI::UpdateWorldVelocity", "matching": 1.0, "diff": []}, {"address": "0x100a5a60", "recomp": "0x100502c0", "name": "CalcWorldBoundingVolumes", "matching": 1.0, "diff": []}, {"address": "0x100a5b40", "recomp": "0x100503d0", "name": "CalcLocalTransform", "matching": 0.9604863221884499, "diff": [["@@ -0x100a5b61,24 +0x100503f1,24 @@", [{"both": [["0x100a5b61", "fld dword ptr [eax]", "0x100503f1"], ["0x100a5b63", "fdiv st(1)", "0x100503f3"], ["0x100a5b65", "mov ecx, dword ptr [esp + 0x34]", "0x100503f5"], ["0x100a5b69", "fstp dword ptr [esp + 0x1c]", "0x100503f9"], ["0x100a5b6d", "fld dword ptr [eax + 4]", "0x100503fd"], ["0x100a5b70", "fdiv st(1)", "0x10050400"], ["0x100a5b72", "fstp dword ptr [esp + 0x20]", "0x10050402"], ["0x100a5b76", "fdivr dword ptr [eax + 8]", "0x10050406"], ["0x100a5b79", "mov eax, dword ptr [ecx + 4]", "0x10050409"], ["0x100a5b7c", "fstp dword ptr [esp + 0x24]", "0x1005040c"]]}, {"orig": [], "recomp": [["0x10050410", "fld dword ptr [eax + 4]"], ["0x10050413", "fmul dword ptr [eax + 4]"]]}, {"both": [["0x100a5b80", "fld dword ptr [eax + 8]", "0x10050416"], ["0x100a5b83", "fmul dword ptr [eax + 8]", "0x10050419"]]}, {"orig": [["0x100a5b86", "fld dword ptr [eax + 4]"], ["0x100a5b89", "fmul dword ptr [eax + 4]"]], "recomp": []}, {"both": [["0x100a5b8c", "faddp st(1)", "0x1005041c"], ["0x100a5b8e", "fld dword ptr [eax]", "0x1005041e"], ["0x100a5b90", "fmul dword ptr [eax]", "0x10050420"], ["0x100a5b92", "faddp st(1)", "0x10050422"], ["0x100a5b94", "fsqrt ", "0x10050424"], ["0x100a5b96", "fld dword ptr [eax]", "0x10050426"], ["0x100a5b98", "fdiv st(1)", "0x10050428"], ["0x100a5b9a", "fstp dword ptr [esp + 4]", "0x1005042a"], ["0x100a5b9e", "fld dword ptr [eax + 4]", "0x1005042e"], ["0x100a5ba1", "fdiv st(1)", "0x10050431"]]}]], ["@@ -0x100a5bcc,24 +0x1005045c,25 @@", [{"both": [["0x100a5bcc", "fld dword ptr [esp + 0x1c]", "0x1005045c"], ["0x100a5bd0", "fmul dword ptr [esp + 0xc]", "0x10050460"], ["0x100a5bd4", "fsubp st(1)", "0x10050464"], ["0x100a5bd6", "fchs ", "0x10050466"], ["0x100a5bd8", "fstp dword ptr [esp + 0x14]", "0x10050468"], ["0x100a5bdc", "fld dword ptr [esp + 0x20]", "0x1005046c"], ["0x100a5be0", "fmul dword ptr [esp + 4]", "0x10050470"], ["0x100a5be4", "fld dword ptr [esp + 0x1c]", "0x10050474"], ["0x100a5be8", "fmul dword ptr [esp + 8]", "0x10050478"], ["0x100a5bec", "fsubp st(1)", "0x1005047c"]]}, {"orig": [["0x100a5bee", "fst dword ptr [esp + 0x18]"], ["0x100a5bf2", "fmul dword ptr [esp + 0x18]"]], "recomp": [["0x1005047e", "fstp dword ptr [esp + 0x18]"]]}, {"both": [["0x100a5bf6", "fld dword ptr [esp + 0x14]", "0x10050482"], ["0x100a5bfa", "fmul dword ptr [esp + 0x14]", "0x10050486"]]}, {"orig": [], "recomp": [["0x1005048a", "fld dword ptr [esp + 0x18]"], ["0x1005048e", "fmul dword ptr [esp + 0x18]"]]}, {"both": [["0x100a5bfe", "faddp st(1)", "0x10050492"], ["0x100a5c00", "fld dword ptr [esp + 0x10]", "0x10050494"], ["0x100a5c04", "fmul dword ptr [esp + 0x10]", "0x10050498"], ["0x100a5c08", "faddp st(1)", "0x1005049c"], ["0x100a5c0a", "fsqrt ", "0x1005049e"], ["0x100a5c0c", "fld dword ptr [esp + 0x10]", "0x100504a0"], ["0x100a5c10", "fdiv st(1)", "0x100504a4"], ["0x100a5c12", "fstp dword ptr [esp + 0x10]", "0x100504a6"], ["0x100a5c16", "fld dword ptr [esp + 0x14]", "0x100504aa"], ["0x100a5c1a", "fdiv st(1)", "0x100504ae"]]}]], ["@@ -0x100a5d27,14 +0x100505bb,10 @@", [{"both": [["0x100a5d27", "mov dword ptr [edx + 0x34], eax", "0x100505bb"], ["0x100a5d2a", "mov edx, dword ptr [ecx + 4]", "0x100505be"], ["0x100a5d2d", "mov esi, dword ptr [esi + 4]", "0x100505c1"], ["0x100a5d30", "mov eax, dword ptr [esi + 8]", "0x100505c4"], ["0x100a5d33", "pop esi", "0x100505c7"], ["0x100a5d34", "mov dword ptr [edx + 0x38], eax", "0x100505c8"], ["0x100a5d37", "mov edx, dword ptr [ecx + 4]", "0x100505cb"], ["0x100a5d3a", "mov dword ptr [edx + 0x3c], 0x3f800000", "0x100505ce"], ["0x100a5d41", "add esp, 0x24", "0x100505d5"], ["0x100a5d44", "ret ", "0x100505d8"]]}, {"orig": [["0x100a5d45", "int3 "], ["0x100a5d46", "int3 "], ["0x100a5d47", "int3 "], ["0x100a5d48", "int3 "]], "recomp": []}]]]}, {"address": "0x100a5d50", "recomp": "0x1004eea0", "name": "ROI::~ROI", "matching": 1.0, "diff": []}, {"address": "0x100a5d60", "recomp": "0x1004eeb0", "name": "ROI::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a5d80", "recomp": "0x100503a0", "name": "OrientableROI::GetWorldVelocity", "matching": 1.0, "diff": []}, {"address": "0x100a5d90", "recomp": "0x100503b0", "name": "OrientableROI::GetWorldBoundingBox", "matching": 1.0, "diff": []}, {"address": "0x100a5da0", "recomp": "0x100503c0", "name": "OrientableROI::GetWorldBoundingSphere", "matching": 1.0, "diff": []}, {"address": "0x100a5db0", "recomp": "0x1004eed0", "name": "OrientableROI::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x100a5dc0", "recomp": "0x100505e0", "name": "RealtimeView::RealtimeView", "matching": 1.0, "diff": []}, {"address": "0x100a5dd0", "recomp": "0x100505f0", "name": "RealtimeView::~RealtimeView", "matching": 1.0, "diff": []}, {"address": "0x100a5de0", "recomp": "0x10050600", "name": "RealtimeView::SetUserMaxLOD", "matching": 1.0, "diff": []}, {"address": "0x100a5df0", "recomp": "0x10050610", "name": "RealtimeView::SetPartsThreshold", "matching": 1.0, "diff": []}, {"address": "0x100a5e00", "recomp": "0x10050620", "name": "RealtimeView::GetUserMaxLOD", "matching": 1.0, "diff": []}, {"address": "0x100a5e10", "recomp": "0x10050630", "name": "RealtimeView::GetPartsThreshold", "matching": 1.0, "diff": []}, {"address": "0x100a5e20", "recomp": "0x10050640", "name": "RealtimeView::UpdateMaxLOD", "matching": 1.0, "diff": []}, {"address": "0x100a5e40", "recomp": "0x10096b90", "name": "ViewLOD::~ViewLOD", "matching": 1.0, "diff": []}, {"address": "0x100a5eb0", "recomp": "0x1004dbe0", "name": "ViewManager::ViewManager", "matching": 1.0, "diff": []}, {"address": "0x100a6000", "recomp": "0x1004dd70", "name": "ViewManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a6020", "recomp": "0x1004dd90", "name": "List<ROI *>::~List<ROI *>", "matching": 1.0, "diff": []}, {"address": "0x100a6070", "recomp": "0x1004dde0", "name": "Vector<ROI const *>::~Vector<ROI const *>", "matching": 1.0, "diff": []}, {"address": "0x100a60c0", "recomp": "0x1004de30", "name": "ViewManager::~ViewManager", "matching": 1.0, "diff": []}, {"address": "0x100a6410", "recomp": "0x1004dec0", "name": "ViewManager::Remove", "matching": 1.0, "diff": []}, {"address": "0x100a64d0", "recomp": "0x1004df80", "name": "ViewManager::RemoveAll", "matching": 0.9871794871794872, "diff": [["@@ -0x100a6585,16 +0x1004e035,16 @@", [{"both": [["0x100a6585", "mov eax, dword ptr [eax]", "0x1004e035"], ["0x100a6587", "mov dword ptr [ecx], eax", "0x1004e037"], ["0x100a6589", "mov ecx, dword ptr [edx]", "0x1004e039"], ["0x100a658b", "mov eax, dword ptr [esp + 8]", "0x1004e03b"], ["0x100a658f", "push eax", "0x1004e03f"], ["0x100a6590", "mov edx, dword ptr [eax]", "0x1004e040"], ["0x100a6592", "mov dword ptr [edx + 4], ecx", "0x1004e042"], ["0x100a6595", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004e045"], ["0x100a659a", "add esp, 4", "0x1004e04a"], ["0x100a659d", "dec dword ptr [esi + 0x10]", "0x1004e04d"]]}, {"orig": [["0x100a65a0", "cmp dword ptr [esp + 0x10], edi"]], "recomp": [["0x1004e050", "cmp edi, dword ptr [esp + 0x10]"]]}, {"both": [["0x100a65a4", "jne -0x2e", "0x1004e054"], ["0x100a65a6", "pop edi", "0x1004e056"], ["0x100a65a7", "pop esi", "0x1004e057"], ["0x100a65a8", "add esp, 0xc", "0x1004e058"], ["0x100a65ab", "ret 4", "0x1004e05b"]]}]]]}, {"address": "0x100a65b0", "recomp": "0x1004e060", "name": "ViewManager::FUN_100a65b0", "matching": 0.8924731182795699, "diff": [["@@ -0x100a65b0,12 +0x1004e060,12 @@", [{"both": [["0x100a65b0", "sub esp, 8", "0x1004e060"]]}, {"orig": [["0x100a65b3", "mov dword ptr [esp + 4], ecx"]], "recomp": [["0x1004e063", "mov dword ptr [esp], ecx"]]}, {"both": [["0x100a65b7", "push ebx", "0x1004e067"], ["0x100a65b8", "push esi", "0x1004e068"], ["0x100a65b9", "push edi", "0x1004e069"], ["0x100a65ba", "mov esi, dword ptr [esp + 0x18]", "0x1004e06a"], ["0x100a65be", "push ebp", "0x1004e06e"], ["0x100a65bf", "mov edi, dword ptr [esp + 0x20]", "0x1004e06f"], ["0x100a65c3", "mov eax, dword ptr [esi + 8]", "0x1004e073"], ["0x100a65c6", "test eax, eax", "0x1004e076"], ["0x100a65c8", "jne 0x6", "0x1004e078"], ["0x100a65ca", "test edi, edi", "0x1004e07a"]]}]], ["@@ -0x100a65d5,42 +0x1004e085,42 @@", [{"both": [["0x100a65d5", "mov edi, 0xffffffff", "0x1004e085"], ["0x100a65da", "test eax, eax", "0x1004e08a"], ["0x100a65dc", "je 0x4", "0x1004e08c"], ["0x100a65de", "mov edi, dword ptr [eax + 0xc]", "0x1004e08e"], ["0x100a65e1", "dec edi", "0x1004e091"], ["0x100a65e2", "mov ebp, dword ptr [esi + 0xe0]", "0x1004e092"], ["0x100a65e8", "cmp ebp, edi", "0x1004e098"], ["0x100a65ea", "je 0xa1", "0x1004e09a"], ["0x100a65f0", "mov eax, dword ptr [esi]", "0x1004e0a0"], ["0x100a65f2", "mov ecx, dword ptr [eax + 0x34]", "0x1004e0a2"]]}, {"orig": [["0x100a65f5", "mov dword ptr [esp + 0x10], ecx"]], "recomp": [["0x1004e0a5", "mov dword ptr [esp + 0x14], ecx"]]}, {"both": [["0x100a65f9", "mov ecx, esi", "0x1004e0a9"]]}, {"orig": [["0x100a65fb", "call dword ptr [esp + 0x10]"]], "recomp": [["0x1004e0ab", "call dword ptr [esp + 0x14]"]]}, {"both": [["0x100a65ff", "mov ebx, eax", "0x1004e0af"], ["0x100a6601", "test ebp, ebp", "0x1004e0b1"], ["0x100a6603", "mov eax, dword ptr [esi + 8]", "0x1004e0b3"], ["0x100a6606", "mov ecx, dword ptr [eax + 4]", "0x1004e0b6"], ["0x100a6609", "jge 0x28", "0x1004e0b9"], ["0x100a660b", "mov ebp, dword ptr [ecx + edi*4]", "0x1004e0bb"], ["0x100a660e", "test byte ptr [ebp + 8], 0x10", "0x1004e0be"], ["0x100a6612", "je 0x73", "0x1004e0c2"]]}, {"orig": [["0x100a6614", "mov eax, dword ptr [esp + 0x14]"]], "recomp": [["0x1004e0c4", "mov eax, dword ptr [esp + 0x10]"]]}, {"both": [["0x100a6618", "push ebx", "0x1004e0c8"], ["0x100a6619", "mov ecx, dword ptr [eax + 4]", "0x1004e0c9"], ["0x100a661c", "mov eax, dword ptr [ecx]", "0x1004e0cc"]]}, {"orig": [["0x100a661e", "call dword ptr [eax + 0x20]"]], "recomp": [["0x1004e0ce", "call dword ptr [eax + 0x1c]"]]}, {"both": [["0x100a6621", "mov ecx, esi", "0x1004e0d1"]]}, {"orig": [["0x100a6623", "call dword ptr [esp + 0x10]"], ["0x100a6627", "mov eax, dword ptr [eax + 4]"]], "recomp": [["0x1004e0d3", "call dword ptr [esp + 0x14]"], ["0x1004e0d7", "mov ecx, dword ptr [eax + 4]"]]}, {"both": [["0x100a662a", "push esi", "0x1004e0da"]]}, {"orig": [["0x100a662b", "push eax"], ["0x100a662c", "mov eax, dword ptr [eax]"]], "recomp": [["0x1004e0db", "push ecx"], ["0x1004e0dc", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x100a662e", "call dword ptr [eax + 0x18]", "0x1004e0de"], ["0x100a6631", "jmp 0x1f", "0x1004e0e1"], ["0x100a6633", "mov eax, dword ptr [ecx + ebp*4]", "0x1004e0e3"], ["0x100a6636", "test eax, eax", "0x1004e0e6"], ["0x100a6638", "je 0xf", "0x1004e0e8"], ["0x100a663a", "mov eax, dword ptr [eax + 4]", "0x1004e0ea"], ["0x100a663d", "test eax, eax", "0x1004e0ed"], ["0x100a663f", "je 0x8", "0x1004e0ef"], ["0x100a6641", "push eax", "0x1004e0f1"], ["0x100a6642", "mov ecx, ebx", "0x1004e0f2"]]}]], ["@@ -0x100a6652,21 +0x1004e102,21 @@", [{"both": [["0x100a6652", "test byte ptr [ebp + 8], 0x10", "0x1004e102"], ["0x100a6656", "je 0x2f", "0x1004e106"], ["0x100a6658", "mov eax, dword ptr [ebp + 4]", "0x1004e108"], ["0x100a665b", "test eax, eax", "0x1004e10b"], ["0x100a665d", "je 0x28", "0x1004e10d"], ["0x100a665f", "push eax", "0x1004e10f"], ["0x100a6660", "mov ecx, ebx", "0x1004e110"], ["0x100a6662", "mov eax, dword ptr [ebx]", "0x1004e112"], ["0x100a6664", "call dword ptr [eax + 0x1c]", "0x1004e114"], ["0x100a6667", "mov ecx, esi", "0x1004e117"]]}, {"orig": [["0x100a6669", "call dword ptr [esp + 0x10]"]], "recomp": [["0x1004e119", "call dword ptr [esp + 0x14]"]]}, {"both": [["0x100a666d", "mov eax, dword ptr [eax + 4]", "0x1004e11d"], ["0x100a6670", "push esi", "0x1004e120"], ["0x100a6671", "push eax", "0x1004e121"], ["0x100a6672", "mov ebx, dword ptr [eax]", "0x1004e122"], ["0x100a6674", "call dword ptr [ebx + 0x18]", "0x1004e124"], ["0x100a6677", "pop ebp", "0x1004e127"], ["0x100a6678", "mov dword ptr [esi + 0xe0], edi", "0x1004e128"], ["0x100a667e", "pop edi", "0x1004e12e"], ["0x100a667f", "pop esi", "0x1004e12f"], ["0x100a6680", "pop ebx", "0x1004e130"]]}]]]}, {"address": "0x100a66a0", "recomp": "0x1004e150", "name": "ViewManager::FUN_100a66a0", "matching": 1.0, "diff": []}, {"address": "0x100a66f0", "recomp": "0x1004e420", "name": "ViewManager::FUN_100a66f0", "matching": 0.6719160104986877, "diff": [["@@ -0x100a66f0,190 +0x1004e420,191 @@", [{"both": [["0x100a66f0", "sub esp, 0xc", "0x1004e420"], ["0x100a66f3", "push ebx", "0x1004e423"], ["0x100a66f4", "push esi", "0x1004e424"]]}, {"orig": [["0x100a66f5", "mov esi, dword ptr [esp + 0x1c]"]], "recomp": []}, {"both": [["0x100a66f9", "push edi", "0x1004e425"]]}, {"orig": [], "recomp": [["0x1004e426", "mov ebx, ecx"], ["0x1004e428", "mov edi, dword ptr [esp + 0x1c]"]]}, {"both": [["0x100a66fa", "push ebp", "0x1004e42c"]]}, {"orig": [["0x100a66fb", "mov edi, ecx"], ["0x100a66fd", "mov ebp, dword ptr [esp + 0x20]"], ["0x100a6701", "cmp byte ptr [ebp + 0xc], 0"]], "recomp": [["0x1004e42d", "mov ebp, dword ptr [esp + 0x24]"], ["0x1004e431", "cmp byte ptr [edi + 0xc], 0"]]}, {"both": [["0x100a6705", "jne 0xc", "0x1004e435"]]}, {"orig": [["0x100a6707", "cmp esi, -2"]], "recomp": [["0x1004e437", "cmp ebp, -2"]]}, {"both": [["0x100a670a", "je 0x7", "0x1004e43a"]]}, {"orig": [["0x100a670c", "mov esi, 0xfffffffe"]], "recomp": [["0x1004e43c", "mov ebp, 0xfffffffe"]]}, {"both": [["0x100a6711", "jmp -0x12", "0x1004e441"]]}, {"orig": [["0x100a6713", "mov ebx, dword ptr [ebp + 4]"], ["0x100a6716", "cmp esi, -1"], ["0x100a6719", "jne 0x140"], ["0x100a671f", "mov eax, dword ptr [ebp]"]], "recomp": [["0x1004e443", "mov esi, dword ptr [edi + 4]"], ["0x1004e446", "cmp ebp, -1"], ["0x1004e449", "jne 0x13b"], ["0x1004e44f", "mov eax, dword ptr [edi]"]]}, {"both": [["0x100a6722", "mov ecx, dword ptr [eax + 0x10]", "0x1004e451"], ["0x100a6725", "mov dword ptr [esp + 0x10], ecx", "0x1004e454"]]}, {"orig": [["0x100a6729", "mov ecx, ebp"]], "recomp": [["0x1004e458", "mov ecx, edi"]]}, {"both": [["0x100a672b", "call dword ptr [esp + 0x10]", "0x1004e45a"], ["0x100a672f", "cmp dword ptr [eax + 0x14], 0x3a83126f", "0x1004e45e"]]}, {"orig": [["0x100a6736", "jle 0x123"], ["0x100a673c", "mov ecx, ebp"]], "recomp": [["0x1004e465", "jle 0x11f"], ["0x1004e46b", "mov ecx, edi"]]}, {"both": [["0x100a673e", "call dword ptr [esp + 0x10]", "0x1004e46d"], ["0x100a6742", "push eax", "0x1004e471"]]}, {"orig": [["0x100a6743", "mov ecx, edi"]], "recomp": [["0x1004e472", "mov ecx, ebx"]]}, {"both": [["0x100a6745", "call ViewManager::ProjectedSize (FUNCTION)", "0x1004e474"], ["0x100a674a", "fstp dword ptr [esp + 0x18]", "0x1004e479"]]}, {"orig": [["0x100a674e", "fld dword ptr [edi + 0x1b8]"]], "recomp": [["0x1004e47d", "fld dword ptr [ebx + 0x1b8]"]]}, {"both": [["0x100a6754", "fmul dword ptr [g_unk0x1010105c (DATA)]", "0x1004e483"], ["0x100a675a", "fcomp dword ptr [esp + 0x18]", "0x1004e489"], ["0x100a675e", "fnstsw ax", "0x1004e48d"], ["0x100a6760", "test ah, 0x41", "0x1004e48f"], ["0x100a6763", "jne 0x14", "0x1004e492"]]}, {"orig": [["0x100a6765", "cmp dword ptr [ebp + 0xe0], -2"], ["0x100a676c", "je 0x1a5"], ["0x100a6772", "mov esi, 0xfffffffe"], ["0x100a6777", "jmp -0x78"], ["0x100a6779", "fld dword ptr [edi + 0x1b8]"]], "recomp": [["0x1004e494", "cmp dword ptr [edi + 0xe0], -2"], ["0x1004e49b", "je 0x1a1"], ["0x1004e4a1", "mov ebp, 0xfffffffe"], ["0x1004e4a6", "jmp -0x77"], ["0x1004e4a8", "fld dword ptr [ebx + 0x1b8]"]]}, {"both": [["0x100a677f", "fmul dword ptr [g_userMaxLodPower (DATA)]", "0x1004e4ae"]]}, {"orig": [["0x100a6785", "mov eax, dword ptr [ebp + 8]"]], "recomp": [["0x1004e4b4", "fstp dword ptr [esp + 0x10]"], ["0x1004e4b8", "mov eax, dword ptr [edi + 8]"]]}, {"both": [["0x100a6788", "test eax, eax", "0x1004e4bb"]]}, {"orig": [["0x100a678a", "je 0x1b"], ["0x100a678c", "fstp dword ptr [esp + 0x10]"]], "recomp": [["0x1004e4bd", "je 0x17"]]}, {"both": [["0x100a6790", "cmp dword ptr [eax + 0xc], 0", "0x1004e4bf"]]}, {"orig": [["0x100a6794", "jbe 0x15"]], "recomp": [["0x1004e4c3", "jbe 0x11"]]}, {"both": [["0x100a6796", "mov eax, dword ptr [eax + 4]", "0x1004e4c5"], ["0x100a6799", "mov ecx, dword ptr [eax]", "0x1004e4c8"], ["0x100a679b", "mov eax, dword ptr [ecx + 8]", "0x1004e4ca"], ["0x100a679e", "and al, 8", "0x1004e4cd"], ["0x100a67a0", "cmp al, 1", "0x1004e4cf"], ["0x100a67a2", "sbb eax, eax", "0x1004e4d1"], ["0x100a67a4", "inc eax", "0x1004e4d3"]]}, {"orig": [["0x100a67a5", "jmp 0x3d"], ["0x100a67a7", "fstp dword ptr [esp + 0x10]"], ["0x100a67ab", "mov eax, dword ptr [ebp + 4]"]], "recomp": [["0x1004e4d4", "jmp 0x39"], ["0x1004e4d6", "mov eax, dword ptr [edi + 4]"]]}, {"both": [["0x100a67ae", "test eax, eax", "0x1004e4d9"], ["0x100a67b0", "je 0x30", "0x1004e4db"], ["0x100a67b2", "mov ecx, dword ptr [eax + 4]", "0x1004e4dd"], ["0x100a67b5", "mov eax, dword ptr [ecx]", "0x1004e4e0"], ["0x100a67b7", "mov dword ptr [esp + 0x14], eax", "0x1004e4e2"]]}, {"orig": [["0x100a67bb", "cmp ecx, eax"]], "recomp": [["0x1004e4e6", "cmp eax, ecx"]]}, {"both": [["0x100a67bd", "je 0x23", "0x1004e4e8"], ["0x100a67bf", "xor edx, edx", "0x1004e4ea"], ["0x100a67c1", "mov eax, dword ptr [esp + 0x14]", "0x1004e4ec"]]}, {"orig": [["0x100a67c5", "mov esi, dword ptr [eax + 8]"], ["0x100a67c8", "mov eax, dword ptr [esi + 8]"]], "recomp": [["0x1004e4f0", "mov ebp, dword ptr [eax + 8]"], ["0x1004e4f3", "mov eax, dword ptr [ebp + 8]"]]}, {"both": [["0x100a67cb", "test eax, eax", "0x1004e4f6"], ["0x100a67cd", "je 0x5", "0x1004e4f8"], ["0x100a67cf", "cmp dword ptr [eax + 0xc], edx", "0x1004e4fa"], ["0x100a67d2", "ja 0x29", "0x1004e4fd"], ["0x100a67d4", "mov eax, dword ptr [esp + 0x14]", "0x1004e4ff"]]}, {"orig": [["0x100a67d8", "mov esi, dword ptr [eax]"], ["0x100a67da", "mov dword ptr [esp + 0x14], esi"], ["0x100a67de", "cmp ecx, esi"]], "recomp": [["0x1004e503", "mov ebp, dword ptr [eax]"], ["0x1004e505", "mov dword ptr [esp + 0x14], ebp"], ["0x1004e509", "cmp ebp, ecx"]]}, {"both": [["0x100a67e0", "jne -0x21", "0x1004e50b"], ["0x100a67e2", "xor eax, eax", "0x1004e50d"], ["0x100a67e4", "test eax, eax", "0x1004e50f"], ["0x100a67e6", "je 0x37", "0x1004e511"], ["0x100a67e8", "fld dword ptr [g_unk0x10101054 (DATA)]", "0x1004e513"], ["0x100a67ee", "fcomp dword ptr [esp + 0x18]", "0x1004e519"], ["0x100a67f2", "fnstsw ax", "0x1004e51d"], ["0x100a67f4", "test ah, 0x41", "0x1004e51f"], ["0x100a67f7", "jne 0x1f", "0x1004e522"]]}, {"orig": [["0x100a67f9", "xor esi, esi"]], "recomp": [["0x1004e524", "xor ebp, ebp"]]}, {"both": [["0x100a67fb", "jmp 0x62", "0x1004e526"], ["0x100a67fd", "mov eax, dword ptr [esp + 0x14]", "0x1004e528"], ["0x100a6801", "mov ecx, dword ptr [eax + 8]", "0x1004e52c"], ["0x100a6804", "mov edx, dword ptr [ecx + 8]", "0x1004e52f"], ["0x100a6807", "mov eax, dword ptr [edx + 4]", "0x1004e532"], ["0x100a680a", "mov ecx, dword ptr [eax]", "0x1004e535"], ["0x100a680c", "mov eax, dword ptr [ecx + 8]", "0x1004e537"], ["0x100a680f", "and al, 8", "0x1004e53a"], ["0x100a6811", "cmp al, 1", "0x1004e53c"], ["0x100a6813", "sbb eax, eax", "0x1004e53e"], ["0x100a6815", "inc eax", "0x1004e540"], ["0x100a6816", "jmp -0x34", "0x1004e541"]]}, {"orig": [["0x100a6818", "mov esi, 1"]], "recomp": [["0x1004e543", "mov ebp, 1"]]}, {"both": [["0x100a681d", "jmp 0x2", "0x1004e548"]]}, {"orig": [["0x100a681f", "xor esi, esi"]], "recomp": [["0x1004e54a", "xor ebp, ebp"]]}, {"both": [["0x100a6821", "mov eax, dword ptr [esp + 0x10]", "0x1004e54c"]]}, {"orig": [["0x100a6825", "cmp esi, dword ptr [g_unk0x10101058 (DATA)]"]], "recomp": [["0x1004e550", "cmp dword ptr [g_unk0x10101058 (DATA)], ebp"]]}, {"both": [["0x100a682b", "mov dword ptr [esp + 0x10], eax", "0x1004e556"]]}, {"orig": [["0x100a682f", "jge 0x2e"]], "recomp": [["0x1004e55a", "jle 0x2e"]]}, {"both": [["0x100a6831", "fld dword ptr [esp + 0x18]", "0x1004e55c"], ["0x100a6835", "jmp 0x4", "0x1004e560"], ["0x100a6837", "fstp dword ptr [esp + 0x10]", "0x1004e562"], ["0x100a683b", "fcom dword ptr [esp + 0x10]", "0x1004e566"], ["0x100a683f", "fnstsw ax", "0x1004e56a"]]}, {"orig": [["0x100a6841", "test ah, 0x41"]], "recomp": [["0x1004e56c", "test ah, 1"]]}, {"both": [["0x100a6844", "jne 0x17", "0x1004e56f"], ["0x100a6846", "fld dword ptr [g_unk0x10101050 (DATA)]", "0x1004e571"], ["0x100a684c", "fmul dword ptr [esp + 0x10]", "0x1004e577"]]}, {"orig": [["0x100a6850", "inc esi"], ["0x100a6851", "cmp esi, dword ptr [g_unk0x10101058 (DATA)]"], ["0x100a6857", "jl -0x22"]], "recomp": [["0x1004e57b", "inc ebp"], ["0x1004e57c", "cmp dword ptr [g_unk0x10101058 (DATA)], ebp"], ["0x1004e582", "jg -0x22"]]}, {"both": [["0x100a6859", "fstp dword ptr [esp + 0x10]", "0x1004e584"], ["0x100a685d", "fstp st(0)", "0x1004e588"]]}, {"orig": [["0x100a685f", "cmp esi, -2"]], "recomp": [["0x1004e58a", "cmp ebp, -2"]]}, {"both": [["0x100a6862", "je 0x68", "0x1004e58d"]]}, {"orig": [["0x100a6864", "test ebx, ebx"]], "recomp": [["0x1004e58f", "test esi, esi"]]}, {"both": [["0x100a6866", "je 0x44", "0x1004e591"]]}, {"orig": [["0x100a6868", "mov dword ptr [ebp + 0xe0], 0xffffffff"], ["0x100a6872", "mov eax, dword ptr [ebx + 4]"]], "recomp": [["0x1004e593", "mov dword ptr [edi + 0xe0], 0xffffffff"], ["0x1004e59d", "mov eax, dword ptr [esi + 4]"]]}, {"both": [["0x100a6875", "mov ecx, dword ptr [eax]", "0x1004e5a0"], ["0x100a6877", "mov dword ptr [esp + 0x10], ecx", "0x1004e5a2"], ["0x100a687b", "cmp ecx, eax", "0x1004e5a6"], ["0x100a687d", "je 0x94", "0x1004e5a8"], ["0x100a6883", "mov eax, dword ptr [esp + 0x10]", "0x1004e5ae"]]}, {"orig": [["0x100a6887", "push esi"]], "recomp": [["0x1004e5b2", "push ebp"]]}, {"both": [["0x100a6888", "mov ecx, dword ptr [eax + 8]", "0x1004e5b3"], ["0x100a688b", "push ecx", "0x1004e5b6"]]}, {"orig": [["0x100a688c", "mov ecx, edi"]], "recomp": [["0x1004e5b7", "mov ecx, ebx"]]}, {"both": [["0x100a688e", "call ViewManager::FUN_100a66f0 (FUNCTION)", "0x1004e5b9"], ["0x100a6893", "mov ecx, dword ptr [esp + 0x10]", "0x1004e5be"], ["0x100a6897", "mov edx, dword ptr [ecx]", "0x1004e5c2"], ["0x100a6899", "mov dword ptr [esp + 0x10], edx", "0x1004e5c4"]]}, {"orig": [["0x100a689d", "cmp dword ptr [ebx + 4], edx"]], "recomp": [["0x1004e5c8", "cmp dword ptr [esi + 4], edx"]]}, {"both": [["0x100a68a0", "jne -0x1f", "0x1004e5cb"], ["0x100a68a2", "pop ebp", "0x1004e5cd"], ["0x100a68a3", "pop edi", "0x1004e5ce"], ["0x100a68a4", "pop esi", "0x1004e5cf"], ["0x100a68a5", "pop ebx", "0x1004e5d0"], ["0x100a68a6", "add esp, 0xc", "0x1004e5d1"], ["0x100a68a9", "ret 8", "0x1004e5d4"]]}, {"orig": [["0x100a68ac", "mov eax, dword ptr [ebp + 8]"]], "recomp": [["0x1004e5d7", "mov eax, dword ptr [edi + 8]"]]}, {"both": [["0x100a68af", "test eax, eax", "0x1004e5da"], ["0x100a68b1", "je 0x64", "0x1004e5dc"], ["0x100a68b3", "cmp dword ptr [eax + 0xc], 0", "0x1004e5de"], ["0x100a68b7", "jle 0x5e", "0x1004e5e2"]]}, {"orig": [["0x100a68b9", "push esi"], ["0x100a68ba", "mov ecx, edi"]], "recomp": []}, {"both": [["0x100a68bc", "push ebp", "0x1004e5e4"]]}, {"orig": [], "recomp": [["0x1004e5e5", "mov ecx, ebx"], ["0x1004e5e7", "push edi"]]}, {"both": [["0x100a68bd", "call ViewManager::FUN_100a65b0 (FUNCTION)", "0x1004e5e8"], ["0x100a68c2", "pop ebp", "0x1004e5ed"], ["0x100a68c3", "pop edi", "0x1004e5ee"], ["0x100a68c4", "pop esi", "0x1004e5ef"], ["0x100a68c5", "pop ebx", "0x1004e5f0"], ["0x100a68c6", "add esp, 0xc", "0x1004e5f1"], ["0x100a68c9", "ret 8", "0x1004e5f4"]]}, {"orig": [["0x100a68cc", "cmp dword ptr [ebp + 0xe0], 0"]], "recomp": [["0x1004e5f7", "cmp dword ptr [edi + 0xe0], 0"]]}, {"both": [["0x100a68d3", "jl 0x12", "0x1004e5fe"]]}, {"orig": [["0x100a68d5", "push ebp"], ["0x100a68d6", "mov ecx, edi"]], "recomp": [["0x1004e600", "push edi"], ["0x1004e601", "mov ecx, ebx"]]}, {"both": [["0x100a68d8", "call ViewManager::FUN_100a66a0 (FUNCTION)", "0x1004e603"]]}, {"orig": [["0x100a68dd", "mov dword ptr [ebp + 0xe0], 0xfffffffe"], ["0x100a68e7", "test ebx, ebx"]], "recomp": [["0x1004e608", "mov dword ptr [edi + 0xe0], 0xfffffffe"], ["0x1004e612", "test esi, esi"]]}, {"both": [["0x100a68e9", "je 0x2c", "0x1004e614"]]}, {"orig": [["0x100a68eb", "mov eax, dword ptr [ebx + 4]"]], "recomp": [["0x1004e616", "mov eax, dword ptr [esi + 4]"]]}, {"both": [["0x100a68ee", "mov ecx, dword ptr [eax]", "0x1004e619"], ["0x100a68f0", "mov dword ptr [esp + 0x10], ecx", "0x1004e61b"]]}, {"orig": [["0x100a68f4", "cmp eax, ecx"]], "recomp": [["0x1004e61f", "cmp ecx, eax"]]}, {"both": [["0x100a68f6", "je 0x1f", "0x1004e621"], ["0x100a68f8", "mov eax, dword ptr [esp + 0x10]", "0x1004e623"]]}, {"orig": [["0x100a68fc", "push esi"]], "recomp": [["0x1004e627", "push ebp"]]}, {"both": [["0x100a68fd", "mov ecx, dword ptr [eax + 8]", "0x1004e628"], ["0x100a6900", "push ecx", "0x1004e62b"]]}, {"orig": [["0x100a6901", "mov ecx, edi"]], "recomp": [["0x1004e62c", "mov ecx, ebx"]]}, {"both": [["0x100a6903", "call ViewManager::FUN_100a66f0 (FUNCTION)", "0x1004e62e"], ["0x100a6908", "mov ecx, dword ptr [esp + 0x10]", "0x1004e633"], ["0x100a690c", "mov edx, dword ptr [ecx]", "0x1004e637"], ["0x100a690e", "mov dword ptr [esp + 0x10], edx", "0x1004e639"]]}, {"orig": [["0x100a6912", "cmp dword ptr [ebx + 4], edx"]], "recomp": [["0x1004e63d", "cmp dword ptr [esi + 4], edx"]]}, {"both": [["0x100a6915", "jne -0x1f", "0x1004e640"], ["0x100a6917", "pop ebp", "0x1004e642"], ["0x100a6918", "pop edi", "0x1004e643"], ["0x100a6919", "pop esi", "0x1004e644"], ["0x100a691a", "pop ebx", "0x1004e645"]]}, {"orig": [], "recomp": [["0x1004e646", "add esp, 0xc"], ["0x1004e649", "ret 8"]]}]]]}, {"address": "0x100a6930", "recomp": "0x1004e1a0", "name": "ViewManager::Update", "matching": 0.5467980295566502, "diff": [["@@ -0x100a6930,148 +0x1004e1a0,153 @@", [{"both": [["0x100a6930", "mov eax, dword ptr fs:[0]", "0x1004e1a0"], ["0x100a6936", "push ebp", "0x1004e1a6"], ["0x100a6937", "mov ebp, esp", "0x1004e1a7"], ["0x100a6939", "push -1", "0x1004e1a9"], ["0x100a693b", "push <OFFSET1>", "0x1004e1ab"], ["0x100a6940", "push eax", "0x1004e1b0"], ["0x100a6941", "mov dword ptr fs:[0], esp", "0x1004e1b1"]]}, {"orig": [["0x100a6948", "sub esp, 0x20"]], "recomp": [["0x1004e1b8", "sub esp, 0x24"]]}, {"both": [["0x100a694b", "push esi", "0x1004e1bb"], ["0x100a694c", "push edi", "0x1004e1bc"], ["0x100a694d", "mov esi, ecx", "0x1004e1bd"], ["0x100a694f", "xor edi, edi", "0x1004e1bf"], ["0x100a6951", "lea eax, [ebp - 0x14]", "0x1004e1c1"]]}, {"orig": [], "recomp": [["0x1004e1c4", "mov dword ptr [ebp - 0x30], edi"], ["0x1004e1c7", "push eax"]]}, {"both": [["0x100a6954", "mov dword ptr [ebp - 0x2c], edi", "0x1004e1c8"]]}, {"orig": [["0x100a6957", "push eax"]], "recomp": []}, {"both": [["0x100a6958", "mov dword ptr [ebp - 0x28], edi", "0x1004e1cb"], ["0x100a695b", "mov dword ptr [ebp - 0x24], edi", "0x1004e1ce"]]}, {"orig": [["0x100a695e", "mov dword ptr [ebp - 0x20], edi"]], "recomp": []}, {"both": [["0x100a6961", "call dword ptr [__imp__QueryPerformanceFrequency@4 (POINTER)]", "0x1004e1d1"], ["0x100a6967", "cmp dword ptr [ebp - 0x10], edi", "0x1004e1d7"], ["0x100a696a", "je 0x9", "0x1004e1da"]]}, {"orig": [["0x100a696c", "mov dword ptr [ebp - 0x1c], 0xffffffff"]], "recomp": [["0x1004e1dc", "mov dword ptr [ebp - 0x20], 0xffffffff"]]}, {"both": [["0x100a6973", "jmp 0x6", "0x1004e1e3"], ["0x100a6975", "mov eax, dword ptr [ebp - 0x14]", "0x1004e1e5"]]}, {"orig": [["0x100a6978", "mov dword ptr [ebp - 0x1c], eax"], ["0x100a697b", "lea eax, [ebp - 0x2c]"]], "recomp": [["0x1004e1e8", "mov dword ptr [ebp - 0x20], eax"], ["0x1004e1eb", "lea eax, [ebp - 0x30]"]]}, {"both": [["0x100a697e", "mov edi, dword ptr [__imp__QueryPerformanceCounter@4 (POINTER)]", "0x1004e1ee"], ["0x100a6984", "mov dword ptr [ebp - 4], 0", "0x1004e1f4"], ["0x100a698b", "push eax", "0x1004e1fb"], ["0x100a698c", "call edi", "0x1004e1fc"], ["0x100a698e", "mov ecx, dword ptr [ebp + 8]", "0x1004e1fe"]]}, {"orig": [], "recomp": [["0x1004e201", "mov dword ptr [esi + 0x28], ecx"]]}, {"both": [["0x100a6991", "mov eax, dword ptr [esi + 0x30]", "0x1004e204"], ["0x100a6994", "or eax, 1", "0x1004e207"]]}, {"orig": [["0x100a6997", "mov dword ptr [esi + 0x28], ecx"]], "recomp": []}, {"both": [["0x100a699a", "mov dword ptr [esi + 0x30], eax", "0x1004e20a"], ["0x100a699d", "test al, 4", "0x1004e20d"]]}, {"orig": [["0x100a699f", "je 0x134"]], "recomp": [["0x1004e20f", "je 0x144"]]}, {"both": [["0x100a69a5", "and eax, 0xfffffffb", "0x1004e215"]]}, {"orig": [], "recomp": [["0x1004e218", "mov dword ptr [esi + 0x30], eax"]]}, {"both": [["0x100a69a8", "test dword ptr [esi + 0x38], 0x7fffffff", "0x1004e21b"]]}, {"orig": [["0x100a69af", "mov dword ptr [esi + 0x30], eax"]], "recomp": [["0x1004e222", "je 0x13c"], ["0x1004e228", "test dword ptr [esi + 0x88], 0x7fffffff"]]}, {"both": [["0x100a69b2", "je 0x12c", "0x1004e232"]]}, {"orig": [["0x100a69b8", "test dword ptr [esi + 0x88], 0x7fffffff"], ["0x100a69c2", "je 0x11c"]], "recomp": [["0x1004e238", "fld dword ptr [esi + 0x3c]"], ["0x1004e23b", "fmul dword ptr [esi + 0x3c]"], ["0x1004e23e", "fmul dword ptr [4.0 (FLOAT)]"], ["0x1004e244", "fstp dword ptr [esi + 0x2c]"]]}, {"both": [["0x100a69c8", "fld dword ptr [esi + 0x3c]", "0x1004e247"], ["0x100a69cb", "fmul dword ptr [0.5 (FLOAT)]", "0x1004e24a"], ["0x100a69d1", "fptan ", "0x1004e250"]]}, {"orig": [], "recomp": [["0x1004e252", "mov eax, dword ptr [esi + 0x88]"]]}, {"both": [["0x100a69d3", "fstp st(0)", "0x1004e258"]]}, {"orig": [["0x100a69d5", "fld st(0)"], ["0x100a69d7", "fmul st(1)"], ["0x100a69d9", "fmul dword ptr [4.0 (FLOAT)]"], ["0x100a69df", "fstp dword ptr [esi + 0x2c]"]], "recomp": []}, {"both": [["0x100a69e2", "fmul dword ptr [esi + 0x88]", "0x1004e25a"], ["0x100a69e8", "fld dword ptr [esi + 0x34]", "0x1004e260"], ["0x100a69eb", "fdiv dword ptr [esi + 0x38]", "0x1004e263"]]}, {"orig": [["0x100a69ee", "mov eax, dword ptr [esi + 0x88]"]], "recomp": []}, {"both": [["0x100a69f4", "mov dword ptr [ebp - 0x10], eax", "0x1004e266"], ["0x100a69f7", "fmul st(1)", "0x1004e269"], ["0x100a69f9", "fld dword ptr [esi + 0x8c]", "0x1004e26b"], ["0x100a69ff", "fadd dword ptr [esi + 0x88]", "0x1004e271"], ["0x100a6a05", "fld dword ptr [esi + 0x88]", "0x1004e277"], ["0x100a6a0b", "fdivr st(1)", "0x1004e27d"], ["0x100a6a0d", "lea ecx, [esi + 0x90]", "0x1004e27f"], ["0x100a6a13", "add ecx, 4", "0x1004e285"]]}, {"orig": [["0x100a6a16", "fld st(0)"], ["0x100a6a18", "fmul st(4)"], ["0x100a6a1a", "fxch st(1)"], ["0x100a6a1c", "fmul st(3)"], ["0x100a6a1e", "add ecx, 4"], ["0x100a6a21", "add ecx, 4"], ["0x100a6a24", "fld st(3)"], ["0x100a6a26", "fstp dword ptr [ecx - 0xc]"]], "recomp": [["0x1004e288", "fld st(3)"], ["0x1004e28a", "fmul st(1)"], ["0x1004e28c", "add ecx, 4"], ["0x1004e28f", "fld st(3)"], ["0x1004e291", "fmul st(2)"]]}, {"both": [["0x100a6a29", "add ecx, 4", "0x1004e293"], ["0x100a6a2c", "fld st(4)", "0x1004e296"]]}, {"orig": [], "recomp": [["0x1004e298", "fstp dword ptr [ecx - 0xc]"], ["0x1004e29b", "add ecx, 4"], ["0x1004e29e", "fld st(5)"]]}, {"both": [["0x100a6a2e", "fstp dword ptr [ecx - 0xc]", "0x1004e2a0"], ["0x100a6a31", "mov eax, dword ptr [ebp - 0x10]", "0x1004e2a3"], ["0x100a6a34", "mov dword ptr [ecx - 8], eax", "0x1004e2a6"]]}, {"orig": [["0x100a6a37", "add ecx, 4"], ["0x100a6a3a", "fld st(3)"], ["0x100a6a3c", "fstp dword ptr [ecx - 8]"], ["0x100a6a3f", "add ecx, 4"]], "recomp": []}, {"both": [["0x100a6a42", "fld st(4)", "0x1004e2a9"]]}, {"orig": [], "recomp": [["0x1004e2ab", "fstp dword ptr [ecx - 4]"], ["0x1004e2ae", "add ecx, 4"], ["0x1004e2b1", "fld st(5)"], ["0x1004e2b3", "fchs "], ["0x1004e2b5", "fstp dword ptr [ebp - 0x18]"], ["0x1004e2b8", "mov eax, dword ptr [ebp - 0x18]"], ["0x1004e2bb", "add ecx, 4"], ["0x1004e2be", "mov dword ptr [ecx - 8], eax"], ["0x1004e2c1", "add ecx, 4"], ["0x1004e2c4", "mov edx, dword ptr [ebp - 0x10]"], ["0x1004e2c7", "mov dword ptr [ecx - 8], edx"], ["0x1004e2ca", "add ecx, 4"], ["0x1004e2cd", "fxch st(4)"]]}, {"both": [["0x100a6a44", "fchs ", "0x1004e2cf"], ["0x100a6a46", "fst dword ptr [ecx - 8]", "0x1004e2d1"]]}, {"orig": [["0x100a6a49", "mov eax, dword ptr [ebp - 0x10]"], ["0x100a6a4c", "add ecx, 4"], ["0x100a6a4f", "mov dword ptr [ecx - 8], eax"], ["0x100a6a52", "add ecx, 4"]], "recomp": [["0x1004e2d4", "mov dword ptr [ecx - 4], eax"], ["0x1004e2d7", "add ecx, 4"], ["0x1004e2da", "mov edx, dword ptr [ebp - 0x10]"], ["0x1004e2dd", "add ecx, 4"], ["0x1004e2e0", "add ecx, 4"], ["0x1004e2e3", "mov dword ptr [ecx - 0xc], edx"], ["0x1004e2e6", "add ecx, 4"], ["0x1004e2e9", "fstp dword ptr [ecx - 0xc]"]]}, {"both": [["0x100a6a55", "fxch st(4)", "0x1004e2ec"]]}, {"orig": [], "recomp": [["0x1004e2ee", "fstp dword ptr [ecx - 8]"], ["0x1004e2f1", "mov edx, dword ptr [ebp - 0x10]"], ["0x1004e2f4", "add ecx, 4"], ["0x1004e2f7", "mov dword ptr [ecx - 8], edx"], ["0x1004e2fa", "add ecx, 4"], ["0x1004e2fd", "add ecx, 4"], ["0x1004e300", "fld st(2)"], ["0x1004e302", "fstp dword ptr [ecx - 0xc]"], ["0x1004e305", "add ecx, 4"], ["0x1004e308", "fld st(3)"], ["0x1004e30a", "fstp dword ptr [ecx - 0xc]"], ["0x1004e30d", "fld st(1)"], ["0x1004e30f", "fstp dword ptr [ecx - 8]"], ["0x1004e312", "add ecx, 4"], ["0x1004e315", "fld st(2)"], ["0x1004e317", "fstp dword ptr [ecx - 8]"], ["0x1004e31a", "add ecx, 4"], ["0x1004e31d", "fld st(3)"]]}, {"both": [["0x100a6a57", "fchs ", "0x1004e31f"], ["0x100a6a59", "fst dword ptr [ecx - 8]", "0x1004e321"]]}, {"orig": [["0x100a6a5c", "fxch st(4)"]], "recomp": [["0x1004e324", "add ecx, 4"], ["0x1004e327", "fld st(2)"], ["0x1004e329", "fstp dword ptr [ecx - 8]"], ["0x1004e32c", "fxch st(3)"], ["0x1004e32e", "fchs "], ["0x1004e330", "fst dword ptr [ecx - 4]"], ["0x1004e333", "fxch st(3)"], ["0x1004e335", "fstp dword ptr [ecx]"], ["0x1004e337", "add ecx, 4"], ["0x1004e33a", "add ecx, 4"], ["0x1004e33d", "add ecx, 4"], ["0x1004e340", "fld st(1)"], ["0x1004e342", "fstp dword ptr [ecx - 8]"], ["0x1004e345", "fxch st(2)"]]}, {"both": [["0x100a6a5e", "fstp dword ptr [ecx - 4]", "0x1004e347"]]}, {"orig": [["0x100a6a61", "mov eax, dword ptr [ebp - 0x10]"], ["0x100a6a64", "add ecx, 4"], ["0x100a6a67", "add ecx, 4"], ["0x100a6a6a", "mov dword ptr [ecx - 8], eax"], ["0x100a6a6d", "add ecx, 4"], ["0x100a6a70", "fxch st(3)"], ["0x100a6a72", "fstp dword ptr [ecx - 8]"], ["0x100a6a75", "fxch st(3)"], ["0x100a6a77", "fstp dword ptr [ecx - 4]"], ["0x100a6a7a", "fld st(1)"], ["0x100a6a7c", "mov eax, dword ptr [ebp - 0x10]"], ["0x100a6a7f", "add ecx, 4"], ["0x100a6a82", "add ecx, 4"], ["0x100a6a85", "add ecx, 4"], ["0x100a6a88", "mov dword ptr [ecx - 0xc], eax"], ["0x100a6a8b", "add ecx, 4"], ["0x100a6a8e", "add ecx, 4"], ["0x100a6a91", "fstp dword ptr [ecx - 0x10]"], ["0x100a6a94", "fld st(2)"], ["0x100a6a96", "fstp dword ptr [ecx - 0xc]"], ["0x100a6a99", "fst dword ptr [ecx - 8]"], ["0x100a6a9c", "fld st(1)"], ["0x100a6a9e", "fstp dword ptr [ecx - 4]"], ["0x100a6aa1", "fld st(2)"], ["0x100a6aa3", "fchs "], ["0x100a6aa5", "fst dword ptr [ecx]"], ["0x100a6aa7", "add ecx, 4"], ["0x100a6aaa", "add ecx, 4"], ["0x100a6aad", "add ecx, 4"], ["0x100a6ab0", "fld st(1)"], ["0x100a6ab2", "fstp dword ptr [ecx - 8]"], ["0x100a6ab5", "fxch st(2)"], ["0x100a6ab7", "fchs "], ["0x100a6ab9", "fst dword ptr [ecx - 4]"]], "recomp": []}, {"both": [["0x100a6abc", "fxch st(2)", "0x1004e34a"], ["0x100a6abe", "fstp dword ptr [ecx]", "0x1004e34c"]]}, {"orig": [["0x100a6ac0", "fst dword ptr [ecx + 4]"], ["0x100a6ac3", "add ecx, 4"], ["0x100a6ac6", "add ecx, 4"]], "recomp": []}, {"both": [["0x100a6ac9", "fxch st(1)", "0x1004e34e"]]}, {"orig": [["0x100a6acb", "fstp dword ptr [ecx]"], ["0x100a6acd", "add ecx, 4"], ["0x100a6ad0", "fxch st(1)"], ["0x100a6ad2", "fstp dword ptr [ecx]"]], "recomp": []}, {"both": [["0x100a6ad4", "fstp dword ptr [ecx + 4]", "0x1004e350"]]}, {"orig": [["0x100a6ad7", "jmp 0x4"]], "recomp": [["0x1004e353", "fstp st(0)"], ["0x1004e355", "mov ecx, esi"], ["0x1004e357", "jmp 0x6"]]}, {"both": [["0x100a6ad9", "test al, 2", "0x1004e359"], ["0x100a6adb", "je 0x7", "0x1004e35b"], ["0x100a6add", "mov ecx, esi", "0x1004e35d"], ["0x100a6adf", "call ViewManager::FUN_100a6b90 (FUNCTION)", "0x1004e35f"], ["0x100a6ae4", "mov eax, dword ptr [esi + 0xc]", "0x1004e364"], ["0x100a6ae7", "mov ecx, dword ptr [eax]", "0x1004e367"], ["0x100a6ae9", "mov dword ptr [ebp - 0x10], ecx", "0x1004e369"], ["0x100a6aec", "cmp ecx, eax", "0x1004e36c"], ["0x100a6aee", "je 0x1d", "0x1004e36e"], ["0x100a6af0", "push -1", "0x1004e370"]]}]], ["@@ -0x100a6afb,54 +0x1004e37b,43 @@", [{"both": [["0x100a6afb", "call ViewManager::FUN_100a66f0 (FUNCTION)", "0x1004e37b"], ["0x100a6b00", "mov ecx, dword ptr [ebp - 0x10]", "0x1004e380"], ["0x100a6b03", "mov edx, dword ptr [ecx]", "0x1004e383"], ["0x100a6b05", "mov dword ptr [ebp - 0x10], edx", "0x1004e385"], ["0x100a6b08", "cmp dword ptr [esi + 0xc], edx", "0x1004e388"], ["0x100a6b0b", "jne -0x1d", "0x1004e38b"], ["0x100a6b0d", "lea eax, [ebp - 0x14]", "0x1004e38d"], ["0x100a6b10", "push eax", "0x1004e390"], ["0x100a6b11", "call edi", "0x1004e391"], ["0x100a6b13", "mov eax, dword ptr [ebp - 0x10]", "0x1004e393"]]}, {"orig": [["0x100a6b16", "cmp dword ptr [ebp - 0x28], eax"]], "recomp": [["0x1004e396", "cmp dword ptr [ebp - 0x2c], eax"]]}, {"both": [["0x100a6b19", "je 0x10", "0x1004e399"]]}, {"orig": [["0x100a6b1b", "mov dword ptr [ebp - 0x24], 0xffffffff"], ["0x100a6b22", "mov dword ptr [ebp - 0x20], 0x7fefffff"]], "recomp": [["0x1004e39b", "mov dword ptr [ebp - 0x28], 0xffffffff"], ["0x1004e3a2", "mov dword ptr [ebp - 0x24], 0x7fefffff"]]}, {"both": [["0x100a6b29", "jmp 0x25", "0x1004e3a9"], ["0x100a6b2b", "mov eax, dword ptr [ebp - 0x14]", "0x1004e3ab"]]}, {"orig": [["0x100a6b2e", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x100a6b31", "sub eax, dword ptr [ebp - 0x2c]"]], "recomp": [["0x1004e3ae", "mov ecx, dword ptr [ebp - 0x20]"], ["0x1004e3b1", "sub eax, dword ptr [ebp - 0x30]"]]}, {"both": [["0x100a6b34", "mov dword ptr [ebp - 0x14], eax", "0x1004e3b4"], ["0x100a6b37", "xor eax, eax", "0x1004e3b7"], ["0x100a6b39", "mov dword ptr [ebp - 0x10], eax", "0x1004e3b9"], ["0x100a6b3c", "fild qword ptr [ebp - 0x14]", "0x1004e3bc"], ["0x100a6b3f", "mov dword ptr [ebp - 0x14], ecx", "0x1004e3bf"], ["0x100a6b42", "mov dword ptr [ebp - 0x10], eax", "0x1004e3c2"], ["0x100a6b45", "fild qword ptr [ebp - 0x14]", "0x1004e3c5"], ["0x100a6b48", "fdivp st(1)", "0x1004e3c8"]]}, {"orig": [["0x100a6b4a", "fadd qword ptr [ebp - 0x24]"], ["0x100a6b4d", "fstp qword ptr [ebp - 0x24]"], ["0x100a6b50", "fld qword ptr [ebp - 0x24]"]], "recomp": [["0x1004e3ca", "fadd qword ptr [ebp - 0x28]"], ["0x1004e3cd", "fstp qword ptr [ebp - 0x28]"], ["0x1004e3d0", "fld qword ptr [ebp - 0x28]"]]}, {"both": [["0x100a6b53", "mov dword ptr [ebp - 4], 0xffffffff", "0x1004e3d3"], ["0x100a6b5a", "fstp dword ptr [g_elapsedSeconds (DATA)]", "0x1004e3da"], ["0x100a6b60", "call <OFFSET7>", "0x1004e3e0"], ["0x100a6b65", "mov eax, dword ptr [ebp - 0xc]", "0x1004e3e5"], ["0x100a6b68", "pop edi", "0x1004e3e8"], ["0x100a6b69", "mov dword ptr fs:[0], eax", "0x1004e3e9"], ["0x100a6b6f", "pop esi", "0x1004e3ef"], ["0x100a6b70", "mov esp, ebp", "0x1004e3f0"], ["0x100a6b72", "pop ebp", "0x1004e3f2"], ["0x100a6b73", "ret 8", "0x1004e3f3"], ["0x100a6b76", "mov eax, <OFFSET8>", "0x1004e3f6"], ["0x100a6b7b", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004e3fb"]]}, {"orig": [["0x100a6b80", "lea ecx, [ebp - 0x2c]"]], "recomp": [["0x1004e400", "lea ecx, [ebp - 0x30]"]]}, {"both": [["0x100a6b83", "jmp MxStopWatch::~MxStopWatch (FUNCTION)", "0x1004e403"]]}, {"orig": [["0x100a6b88", "int3 "], ["0x100a6b89", "int3 "], ["0x100a6b8a", "int3 "], ["0x100a6b8b", "int3 "], ["0x100a6b8c", "int3 "], ["0x100a6b8d", "int3 "], ["0x100a6b8e", "int3 "], ["0x100a6b8f", "int3 "], ["0x100a6b90", "sub esp, 0x4c"], ["0x100a6b93", "push ebx"], ["0x100a6b94", "push esi"]], "recomp": []}]]]}, {"address": "0x100a6b90", "recomp": "0x1004e650", "name": "ViewManager::FUN_100a6b90", "matching": 0.9776119402985075, "diff": [["@@ -0x100a6b95,32 +0x1004e655,32 @@", [{"both": [["0x100a6b95", "lea eax, [ecx + 0xf0]", "0x1004e655"], ["0x100a6b9b", "push edi", "0x1004e65b"], ["0x100a6b9c", "push ebp", "0x1004e65c"], ["0x100a6b9d", "mov esi, ecx", "0x1004e65d"], ["0x100a6b9f", "and dword ptr [ecx + 0x30], 0xfffffffd", "0x1004e65f"], ["0x100a6ba3", "mov dword ptr [esp + 0x1c], eax", "0x1004e663"], ["0x100a6ba7", "mov dword ptr [esp + 0x40], 8", "0x1004e667"], ["0x100a6baf", "xor edx, edx", "0x1004e66f"], ["0x100a6bb1", "mov ecx, dword ptr [esp + 0x1c]", "0x1004e671"], ["0x100a6bb5", "cmp edx, 0xc", "0x1004e675"]]}, {"orig": [["0x100a6bb8", "jge 0x3a"]], "recomp": [["0x1004e678", "jae 0x3a"]]}, {"both": [["0x100a6bba", "mov eax, dword ptr [esi + 0x44]", "0x1004e67a"], ["0x100a6bbd", "xor edi, edi", "0x1004e67d"], ["0x100a6bbf", "mov ebx, dword ptr [eax + edx + 0x30]", "0x1004e67f"], ["0x100a6bc3", "mov dword ptr [ecx], ebx", "0x1004e683"], ["0x100a6bc5", "mov ebx, edx", "0x1004e685"], ["0x100a6bc7", "mov eax, dword ptr [esp + 0x1c]", "0x1004e687"], ["0x100a6bcb", "sub eax, 0x60", "0x1004e68b"], ["0x100a6bce", "jmp 0x2", "0x1004e68e"], ["0x100a6bd0", "fstp dword ptr [ecx]", "0x1004e690"], ["0x100a6bd2", "cmp edi, 3", "0x1004e692"]]}, {"orig": [["0x100a6bd5", "jge 0x15"]], "recomp": [["0x1004e695", "jae 0x15"]]}, {"both": [["0x100a6bd7", "mov ebp, dword ptr [esi + 0x44]", "0x1004e697"], ["0x100a6bda", "add ebx, 0x10", "0x1004e69a"], ["0x100a6bdd", "add eax, 4", "0x1004e69d"], ["0x100a6be0", "inc edi", "0x1004e6a0"], ["0x100a6be1", "fld dword ptr [ebp + ebx - 0x10]", "0x1004e6a1"], ["0x100a6be5", "fmul dword ptr [eax - 4]", "0x1004e6a5"], ["0x100a6be8", "fadd dword ptr [ecx]", "0x1004e6a8"], ["0x100a6bea", "jmp -0x1c", "0x1004e6aa"], ["0x100a6bec", "add edx, 4", "0x1004e6ac"], ["0x100a6bef", "add ecx, 4", "0x1004e6af"]]}]], ["@@ -0x100a6d16,19 +0x1004e7d6,19 @@", [{"both": [["0x100a6d16", "mov ecx, dword ptr [esp + 0x14]", "0x1004e7d6"], ["0x100a6d1a", "push eax", "0x1004e7da"], ["0x100a6d1b", "add ebx, 0x10", "0x1004e7db"], ["0x100a6d1e", "mov eax, dword ptr [esp + 0x14]", "0x1004e7de"], ["0x100a6d22", "push ecx", "0x1004e7e2"], ["0x100a6d23", "lea ecx, [esp + 0x18]", "0x1004e7e3"], ["0x100a6d27", "add edi, 0xc", "0x1004e7e7"], ["0x100a6d2a", "call dword ptr [eax + 0x18]", "0x1004e7ea"], ["0x100a6d2d", "fchs ", "0x1004e7ed"], ["0x100a6d2f", "fstp dword ptr [ebx - 4]", "0x1004e7ef"]]}, {"orig": [["0x100a6d32", "cmp edi, <OFFSET5>"]], "recomp": [["0x1004e7f2", "cmp edi, g_unk0x10101050 (DATA)"]]}, {"both": [["0x100a6d38", "jb -0x12f", "0x1004e7f8"], ["0x100a6d3e", "or dword ptr [esi + 0x30], 8", "0x1004e7fe"], ["0x100a6d42", "pop ebp", "0x1004e802"], ["0x100a6d43", "pop edi", "0x1004e803"], ["0x100a6d44", "pop esi", "0x1004e804"], ["0x100a6d45", "pop ebx", "0x1004e805"], ["0x100a6d46", "add esp, 0x4c", "0x1004e806"], ["0x100a6d49", "ret ", "0x1004e809"]]}]]]}, {"address": "0x100a6d50", "recomp": "0x1004e810", "name": "ViewManager::SetResolution", "matching": 1.0, "diff": []}, {"address": "0x100a6d70", "recomp": "0x1004e830", "name": "ViewManager::SetFrustrum", "matching": 1.0, "diff": []}, {"address": "0x100a6da0", "recomp": "0x1004e860", "name": "ViewManager::SetPOVSource", "matching": 1.0, "diff": []}, {"address": "0x100a6dc0", "recomp": "0x1004e880", "name": "ViewManager::ProjectedSize", "matching": 0.5306122448979592, "diff": [["@@ -0x100a6dc0,24 +0x1004e880,25 @@", [{"both": [["0x100a6dc0", "mov eax, dword ptr [esp + 4]", "0x1004e880"]]}, {"orig": [["0x100a6dc4", "fld dword ptr [eax + 0x14]"], ["0x100a6dc7", "mov edx, dword ptr [eax + 4]"], ["0x100a6dca", "mov eax, dword ptr [ecx + 0x44]"], ["0x100a6dcd", "fld dword ptr [edx + 4]"], ["0x100a6dd0", "fsub dword ptr [eax + 0x34]"], ["0x100a6dd3", "fld dword ptr [edx + 8]"], ["0x100a6dd6", "fsub dword ptr [eax + 0x38]"], ["0x100a6dd9", "fld dword ptr [edx]"], ["0x100a6ddb", "fsub dword ptr [eax + 0x30]"]], "recomp": [["0x1004e884", "push esi"], ["0x1004e885", "mov edx, dword ptr [ecx + 0x44]"], ["0x1004e888", "mov esi, dword ptr [eax + 4]"], ["0x1004e88b", "fld dword ptr [esi + 4]"], ["0x1004e88e", "fsub dword ptr [edx + 0x34]"], ["0x1004e891", "fld dword ptr [esi + 8]"], ["0x1004e894", "fsub dword ptr [edx + 0x38]"], ["0x1004e897", "fld dword ptr [esi]"], ["0x1004e899", "fsub dword ptr [edx + 0x30]"]]}, {"both": [["0x100a6dde", "fxch st(2)", "0x1004e89c"], ["0x100a6de0", "fmul st(0), st(0)", "0x1004e89e"], ["0x100a6de2", "fxch st(1)", "0x1004e8a0"], ["0x100a6de4", "fmul st(0), st(0)", "0x1004e8a2"], ["0x100a6de6", "faddp st(1)", "0x1004e8a4"], ["0x100a6de8", "fxch st(1)", "0x1004e8a6"], ["0x100a6dea", "fmul st(0), st(0)", "0x1004e8a8"]]}, {"orig": [], "recomp": [["0x1004e8aa", "pop esi"]]}, {"both": [["0x100a6dec", "faddp st(1)", "0x1004e8ab"], ["0x100a6dee", "fmul dword ptr [ecx + 0x2c]", "0x1004e8ad"]]}, {"orig": [["0x100a6df1", "fxch st(1)"], ["0x100a6df3", "fmul st(0), st(0)"]], "recomp": [["0x1004e8b0", "fld dword ptr [eax + 0x14]"], ["0x1004e8b3", "fmul dword ptr [eax + 0x14]"]]}, {"both": [["0x100a6df5", "fmul qword ptr [3.14159265359 (FLOAT)]", "0x1004e8b6"], ["0x100a6dfb", "fdivrp st(1)", "0x1004e8bc"], ["0x100a6dfd", "ret 4", "0x1004e8be"]]}]]]}, {"address": "0x100a6e00", "recomp": "0x1004e8d0", "name": "ViewManager::Pick", "matching": 0.0, "stub": true}, {"address": "0x100a6f00", "recomp": "0x100559f0", "name": "LODObject::~LODObject", "matching": 1.0, "diff": []}, {"address": "0x100a6f10", "recomp": "0x10055a00", "name": "LODObject::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a6f30", "recomp": "0x10055a20", "name": "ViewLOD::AveragePolyArea", "matching": 1.0, "diff": []}, {"address": "0x100a6f50", "recomp": "0x10055a40", "name": "ViewLOD::NVerts", "matching": 1.0, "diff": []}, {"address": "0x100a6f60", "recomp": "0x10055a50", "name": "ViewLOD::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a6f80", "recomp": "0x1004dd30", "name": "vector<ROI const *,allocator<ROI const *> >::~vector<ROI const *,allocator<ROI const *> >", "matching": 0.6666666666666666, "diff": [["@@ -0x100a6f80,18 +0x1004dd30,18 @@", [{"both": [["0x100a6f80", "push esi", "0x1004dd30"]]}, {"orig": [], "recomp": [["0x1004dd31", "mov edx, dword ptr [ecx + 4]"]]}, {"both": [["0x100a6f81", "mov eax, dword ptr [ecx + 8]", "0x1004dd34"], ["0x100a6f84", "mov esi, ecx", "0x1004dd37"]]}, {"orig": [["0x100a6f86", "mov ecx, dword ptr [ecx + 4]"]], "recomp": [["0x1004dd39", "cmp edx, eax"], ["0x1004dd3b", "mov ecx, edx"], ["0x1004dd3d", "je 0x7"], ["0x1004dd3f", "add ecx, 4"]]}, {"both": [["0x100a6f89", "cmp ecx, eax", "0x1004dd42"]]}, {"orig": [["0x100a6f8b", "mov edx, ecx"], ["0x100a6f8d", "je 0x7"], ["0x100a6f8f", "add edx, 4"], ["0x100a6f92", "cmp edx, eax"]], "recomp": []}, {"both": [["0x100a6f94", "jne -0x7", "0x1004dd44"]]}, {"orig": [["0x100a6f96", "push ecx"]], "recomp": [["0x1004dd46", "push edx"]]}, {"both": [["0x100a6f97", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004dd47"], ["0x100a6f9c", "mov dword ptr [esi + 4], 0", "0x1004dd4c"], ["0x100a6fa3", "mov dword ptr [esi + 8], 0", "0x1004dd53"], ["0x100a6faa", "add esp, 4", "0x1004dd5a"], ["0x100a6fad", "mov dword ptr [esi + 0xc], 0", "0x1004dd5d"], ["0x100a6fb4", "pop esi", "0x1004dd64"], ["0x100a6fb5", "ret ", "0x1004dd65"]]}]]]}, {"address": "0x100a6fc0", "recomp": "0x1004e410", "name": "MxStopWatch::~MxStopWatch", "matching": 1.0, "diff": []}, {"address": "0x100a6fd0", "recomp": "0x1004cab0", "name": "ViewLODListManager::ViewLODListManager", "matching": 1.0, "diff": []}, {"address": "0x100a70c0", "recomp": "0x1004d190", "name": "ViewLODListManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a70e0", "recomp": "0x1004d1b0", "name": "Map<char const *,ViewLODList *,ROINameComparator>::~Map<char const *,ViewLODList *,ROINameComparator>", "matching": 1.0, "diff": []}, {"address": "0x100a7130", "recomp": "0x1004d200", "name": "ViewLODListManager::~ViewLODListManager", "matching": 0.9496402877697842, "diff": [["@@ -0x100a7194,58 +0x1004d264,57 @@", [{"both": [["0x100a7194", "je 0x8", "0x1004d264"], ["0x100a7196", "push 1", "0x1004d266"], ["0x100a7198", "mov eax, dword ptr [ebx]", "0x1004d268"], ["0x100a719a", "mov ecx, ebx", "0x1004d26a"], ["0x100a719c", "call dword ptr [eax]", "0x1004d26c"], ["0x100a719e", "mov eax, dword ptr [edi]", "0x1004d26e"], ["0x100a71a0", "push eax", "0x1004d270"], ["0x100a71a1", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004d271"], ["0x100a71a6", "add esp, 4", "0x1004d276"], ["0x100a71a9", "mov ecx, dword ptr [esi + 8]", "0x1004d279"]]}, {"orig": [["0x100a71ac", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], ecx"]], "recomp": [["0x1004d27c", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a71b2", "je 0x12", "0x1004d282"], ["0x100a71b4", "mov eax, dword ptr [ecx]", "0x1004d284"]]}, {"orig": [["0x100a71b6", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004d286", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a71bc", "je 0x4", "0x1004d28c"], ["0x100a71be", "mov ecx, eax", "0x1004d28e"], ["0x100a71c0", "jmp -0xe", "0x1004d290"], ["0x100a71c2", "mov esi, ecx", "0x1004d292"], ["0x100a71c4", "jmp 0x19", "0x1004d294"], ["0x100a71c6", "mov eax, dword ptr [esi + 4]", "0x1004d296"], ["0x100a71c9", "cmp dword ptr [eax + 8], esi", "0x1004d299"], ["0x100a71cc", "jne 0xa", "0x1004d29c"], ["0x100a71ce", "mov esi, eax", "0x1004d29e"], ["0x100a71d0", "mov eax, dword ptr [eax + 4]", "0x1004d2a0"], ["0x100a71d3", "cmp dword ptr [eax + 8], esi", "0x1004d2a3"], ["0x100a71d6", "je -0xa", "0x1004d2a6"], ["0x100a71d8", "cmp dword ptr [esi + 8], eax", "0x1004d2a8"], ["0x100a71db", "je 0x2", "0x1004d2ab"], ["0x100a71dd", "mov esi, eax", "0x1004d2ad"], ["0x100a71df", "mov eax, dword ptr [ebp - 0x10]", "0x1004d2af"], ["0x100a71e2", "cmp dword ptr [eax + 8], esi", "0x1004d2b2"], ["0x100a71e5", "jne -0x7e", "0x1004d2b5"], ["0x100a71e7", "mov eax, dword ptr [ebp - 0x10]", "0x1004d2b7"]]}, {"orig": [], "recomp": [["0x1004d2ba", "cmp dword ptr [eax + 0x10], 0"]]}, {"both": [["0x100a71ea", "mov ecx, dword ptr [eax + 8]", "0x1004d2be"], ["0x100a71ed", "mov dword ptr [ebp - 0x14], ecx", "0x1004d2c1"], ["0x100a71f0", "mov edx, dword ptr [ecx]", "0x1004d2c4"], ["0x100a71f2", "mov dword ptr [ebp - 0x1c], edx", "0x1004d2c6"], ["0x100a71f5", "mov dword ptr [ebp - 0x18], edx", "0x1004d2c9"]]}, {"orig": [["0x100a71f8", "cmp dword ptr [eax + 0x10], 0"], ["0x100a71fc", "je 0x5c"], ["0x100a71fe", "mov eax, dword ptr [ebp - 0x1c]"], ["0x100a7201", "cmp dword ptr [ecx], eax"]], "recomp": [["0x1004d2cc", "je 0x59"], ["0x1004d2ce", "cmp dword ptr [ecx], edx"]]}, {"both": [["0x100a7203", "jne 0x55", "0x1004d2d0"], ["0x100a7205", "cmp ecx, ecx", "0x1004d2d2"], ["0x100a7207", "jne 0x51", "0x1004d2d4"], ["0x100a7209", "mov edi, dword ptr [ecx + 4]", "0x1004d2d6"], ["0x100a720c", "mov esi, edi", "0x1004d2d9"]]}, {"orig": [["0x100a720e", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], esi"]], "recomp": [["0x1004d2db", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7214", "je 0x1e", "0x1004d2e1"], ["0x100a7216", "mov eax, dword ptr [esi + 8]", "0x1004d2e3"], ["0x100a7219", "mov ecx, dword ptr [ebp - 0x10]", "0x1004d2e6"], ["0x100a721c", "push eax", "0x1004d2e9"], ["0x100a721d", "add ecx, 4", "0x1004d2ea"], ["0x100a7220", "call _Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Erase (FUNCTION)", "0x1004d2ed"], ["0x100a7225", "mov esi, dword ptr [esi]", "0x1004d2f2"], ["0x100a7227", "push edi", "0x1004d2f4"], ["0x100a7228", "mov edi, esi", "0x1004d2f5"], ["0x100a722a", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004d2f7"]]}]], ["@@ -0x100a729d,10 +0x1004d36a,11 @@", [{"both": [["0x100a729d", "mov dword ptr fs:[0], eax", "0x1004d36a"], ["0x100a72a3", "pop esi", "0x1004d370"], ["0x100a72a4", "pop ebx", "0x1004d371"], ["0x100a72a5", "mov esp, ebp", "0x1004d372"], ["0x100a72a7", "pop ebp", "0x1004d374"], ["0x100a72a8", "ret ", "0x1004d375"], ["0x100a72a9", "mov eax, <OFFSET9>", "0x1004d376"], ["0x100a72ae", "jmp ___CxxFrameHandler (FUNCTION)", "0x1004d37b"], ["0x100a72b3", "mov ecx, dword ptr [ebp - 0x10]", "0x1004d380"], ["0x100a72b6", "add ecx, 4", "0x1004d383"]]}, {"orig": [], "recomp": [["0x1004d386", "jmp Map<char const *,ViewLODList *,ROINameComparator>::~Map<char const *,ViewLODList *,ROINameComparator> (FUNCTION)"]]}]]]}, {"address": "0x100a72c0", "recomp": "0x1004d390", "name": "ViewLODListManager::Create", "matching": 1.0, "diff": []}, {"address": "0x100a75b0", "recomp": "0x1004da90", "name": "ViewLODListManager::Lookup", "matching": 1.0, "diff": []}, {"address": "0x100a7680", "recomp": "0x1004db60", "name": "ViewLODListManager::Destroy", "matching": 0.0, "stub": true}, {"address": "0x100a7740", "recomp": "0x1004db70", "name": "LODList<ViewLOD>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a77b0", "recomp": "0x1004d680", "name": "LODListBase::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a77e0", "recomp": "0x1004d6b0", "name": "LODListBase::~LODListBase", "matching": 1.0, "diff": []}, {"address": "0x100a7800", "recomp": "0x1004d6d0", "name": "_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::iterator::_Dec", "matching": 0.8181818181818182, "diff": [["@@ -0x100a7801,30 +0x1004d6d1,30 @@", [{"both": [["0x100a7801", "mov esi, dword ptr [ecx]", "0x1004d6d1"], ["0x100a7803", "cmp dword ptr [esi + 0x14], 0", "0x1004d6d3"], ["0x100a7807", "jne 0xf", "0x1004d6d7"], ["0x100a7809", "mov eax, dword ptr [esi + 4]", "0x1004d6d9"], ["0x100a780c", "cmp dword ptr [eax + 4], esi", "0x1004d6dc"], ["0x100a780f", "jne 0x7", "0x1004d6df"], ["0x100a7811", "mov eax, dword ptr [esi + 8]", "0x1004d6e1"], ["0x100a7814", "pop esi", "0x1004d6e4"], ["0x100a7815", "mov dword ptr [ecx], eax", "0x1004d6e5"], ["0x100a7817", "ret ", "0x1004d6e7"]]}, {"orig": [["0x100a7818", "mov eax, dword ptr [esi]"], ["0x100a781a", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004d6e8", "mov edx, dword ptr [esi]"], ["0x1004d6ea", "cmp edx, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7820", "je 0x13", "0x1004d6f0"]]}, {"orig": [["0x100a7822", "mov edx, dword ptr [eax + 8]"], ["0x100a7825", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], edx"]], "recomp": [["0x1004d6f2", "mov eax, dword ptr [edx + 8]"], ["0x1004d6f5", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a782b", "je 0x4", "0x1004d6fb"]]}, {"orig": [["0x100a782d", "mov eax, edx"]], "recomp": [["0x1004d6fd", "mov edx, eax"]]}, {"both": [["0x100a782f", "jmp -0xf", "0x1004d6ff"], ["0x100a7831", "pop esi", "0x1004d701"]]}, {"orig": [["0x100a7832", "mov dword ptr [ecx], eax"]], "recomp": [["0x1004d702", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100a7834", "ret ", "0x1004d704"], ["0x100a7835", "mov edx, dword ptr [esi + 4]", "0x1004d705"], ["0x100a7838", "cmp dword ptr [edx], esi", "0x1004d708"], ["0x100a783a", "jne 0xb", "0x1004d70a"], ["0x100a783c", "mov dword ptr [ecx], edx", "0x1004d70c"], ["0x100a783e", "mov eax, edx", "0x1004d70e"], ["0x100a7840", "mov edx, dword ptr [edx + 4]", "0x1004d710"], ["0x100a7843", "cmp dword ptr [edx], eax", "0x1004d713"], ["0x100a7845", "je -0xb", "0x1004d715"], ["0x100a7847", "pop esi", "0x1004d717"]]}]]]}, {"address": "0x100a7850", "recomp": "0x1004cc70", "name": "_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::iterator::_Inc", "matching": 0.9166666666666666, "diff": [["@@ -0x100a7850,16 +0x1004cc70,16 @@", [{"both": [["0x100a7850", "mov eax, dword ptr [ecx]", "0x1004cc70"], ["0x100a7852", "mov edx, dword ptr [eax + 8]", "0x1004cc72"]]}, {"orig": [["0x100a7855", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], edx"]], "recomp": [["0x1004cc75", "cmp edx, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a785b", "je 0x11", "0x1004cc7b"], ["0x100a785d", "mov eax, dword ptr [edx]", "0x1004cc7d"]]}, {"orig": [["0x100a785f", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004cc7f", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7865", "je 0x4", "0x1004cc85"], ["0x100a7867", "mov edx, eax", "0x1004cc87"], ["0x100a7869", "jmp -0xe", "0x1004cc89"], ["0x100a786b", "mov dword ptr [ecx], edx", "0x1004cc8b"], ["0x100a786d", "ret ", "0x1004cc8d"], ["0x100a786e", "mov edx, dword ptr [eax + 4]", "0x1004cc8e"], ["0x100a7871", "cmp dword ptr [edx + 8], eax", "0x1004cc91"], ["0x100a7874", "jne 0xc", "0x1004cc94"], ["0x100a7876", "mov dword ptr [ecx], edx", "0x1004cc96"], ["0x100a7878", "mov eax, edx", "0x1004cc98"]]}]]]}, {"address": "0x100a7890", "recomp": "0x1004cba0", "name": "_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::~_Tree<char const *,pair<char const * const,ViewLODList *>,map<char c", "matching": 0.9848484848484849, "diff": [["@@ -0x100a78a3,21 +0x1004cbb3,21 @@", [{"both": [["0x100a78a3", "mov eax, dword ptr [ecx]", "0x1004cbb3"], ["0x100a78a5", "mov dword ptr [esp + 0xc], eax", "0x1004cbb5"], ["0x100a78a9", "mov dword ptr [esp + 0x14], eax", "0x1004cbb9"], ["0x100a78ad", "je 0x4e", "0x1004cbbd"], ["0x100a78af", "cmp dword ptr [ecx], eax", "0x1004cbbf"], ["0x100a78b1", "jne 0x4a", "0x1004cbc1"], ["0x100a78b3", "cmp ecx, ecx", "0x1004cbc3"], ["0x100a78b5", "jne 0x46", "0x1004cbc5"], ["0x100a78b7", "mov ebx, dword ptr [ecx + 4]", "0x1004cbc7"], ["0x100a78ba", "mov edi, ebx", "0x1004cbca"]]}, {"orig": [["0x100a78bc", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], edi"]], "recomp": [["0x1004cbcc", "cmp edi, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a78c2", "je 0x1a", "0x1004cbd2"], ["0x100a78c4", "mov eax, dword ptr [edi + 8]", "0x1004cbd4"], ["0x100a78c7", "mov ecx, esi", "0x1004cbd7"], ["0x100a78c9", "push eax", "0x1004cbd9"], ["0x100a78ca", "call _Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Erase (FUNCTION)", "0x1004cbda"], ["0x100a78cf", "mov edi, dword ptr [edi]", "0x1004cbdf"], ["0x100a78d1", "push ebx", "0x1004cbe1"], ["0x100a78d2", "mov ebx, edi", "0x1004cbe2"], ["0x100a78d4", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004cbe4"], ["0x100a78d9", "add esp, 4", "0x1004cbe9"]]}]]]}, {"address": "0x100a7960", "recomp": "0x1004ccb0", "name": "_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::erase", "matching": 0.8416779431664412, "diff": [["@@ -0x100a7960,63 +0x1004ccb0,63 @@", [{"both": [["0x100a7960", "mov eax, dword ptr [esp + 8]", "0x1004ccb0"], ["0x100a7964", "sub esp, 4", "0x1004ccb4"], ["0x100a7967", "mov dword ptr [esp], eax", "0x1004ccb7"], ["0x100a796b", "push ebx", "0x1004ccbb"], ["0x100a796c", "push esi", "0x1004ccbc"], ["0x100a796d", "push edi", "0x1004ccbd"], ["0x100a796e", "push ebp", "0x1004ccbe"], ["0x100a796f", "mov esi, ecx", "0x1004ccbf"], ["0x100a7971", "mov ecx, dword ptr [eax + 8]", "0x1004ccc1"]]}, {"orig": [["0x100a7974", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], ecx"]], "recomp": [["0x1004ccc4", "cmp ecx, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a797a", "je 0x14", "0x1004ccca"], ["0x100a797c", "mov eax, dword ptr [ecx]", "0x1004cccc"]]}, {"orig": [["0x100a797e", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004ccce", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7984", "je 0x4", "0x1004ccd4"], ["0x100a7986", "mov ecx, eax", "0x1004ccd6"], ["0x100a7988", "jmp -0xe", "0x1004ccd8"], ["0x100a798a", "mov dword ptr [esp + 0x1c], ecx", "0x1004ccda"], ["0x100a798e", "jmp 0x29", "0x1004ccde"], ["0x100a7990", "mov ecx, dword ptr [esp + 0x1c]", "0x1004cce0"], ["0x100a7994", "mov eax, dword ptr [ecx + 4]", "0x1004cce4"], ["0x100a7997", "cmp dword ptr [eax + 8], ecx", "0x1004cce7"], ["0x100a799a", "jne 0x10", "0x1004ccea"], ["0x100a799c", "mov dword ptr [esp + 0x1c], eax", "0x1004ccec"], ["0x100a79a0", "mov eax, dword ptr [eax + 4]", "0x1004ccf0"], ["0x100a79a3", "mov ecx, dword ptr [esp + 0x1c]", "0x1004ccf3"], ["0x100a79a7", "cmp dword ptr [eax + 8], ecx", "0x1004ccf7"], ["0x100a79aa", "je -0x10", "0x1004ccfa"], ["0x100a79ac", "mov ecx, dword ptr [esp + 0x1c]", "0x1004ccfc"], ["0x100a79b0", "cmp dword ptr [ecx + 8], eax", "0x1004cd00"], ["0x100a79b3", "je 0x4", "0x1004cd03"], ["0x100a79b5", "mov dword ptr [esp + 0x1c], eax", "0x1004cd05"], ["0x100a79b9", "mov ecx, dword ptr [esp + 0x10]", "0x1004cd09"], ["0x100a79bd", "mov ebx, dword ptr [ecx]", "0x1004cd0d"]]}, {"orig": [["0x100a79bf", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], ebx"]], "recomp": [["0x1004cd0f", "cmp ebx, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a79c5", "je 0x26", "0x1004cd15"], ["0x100a79c7", "lea edi, [ecx + 8]", "0x1004cd17"], ["0x100a79ca", "mov edx, dword ptr [edi]", "0x1004cd1a"]]}, {"orig": [["0x100a79cc", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], edx"]], "recomp": [["0x1004cd1c", "cmp edx, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a79d2", "je 0x15", "0x1004cd22"], ["0x100a79d4", "mov eax, dword ptr [edx]", "0x1004cd24"]]}, {"orig": [["0x100a79d6", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004cd26", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a79dc", "je 0x4", "0x1004cd2c"], ["0x100a79de", "mov edx, eax", "0x1004cd2e"], ["0x100a79e0", "jmp -0xe", "0x1004cd30"], ["0x100a79e2", "mov ecx, edx", "0x1004cd32"], ["0x100a79e4", "mov edx, dword ptr [edx + 8]", "0x1004cd34"], ["0x100a79e7", "jmp 0xe", "0x1004cd37"], ["0x100a79e9", "mov edx, ebx", "0x1004cd39"], ["0x100a79eb", "jmp 0xa", "0x1004cd3b"], ["0x100a79ed", "mov edi, dword ptr [esp + 0x10]", "0x1004cd3d"], ["0x100a79f1", "mov edx, dword ptr [edi + 8]", "0x1004cd41"], ["0x100a79f4", "add edi, 8", "0x1004cd44"]]}, {"orig": [["0x100a79f7", "cmp ecx, dword ptr [esp + 0x10]"]], "recomp": [["0x1004cd47", "cmp dword ptr [esp + 0x10], ecx"]]}, {"both": [["0x100a79fb", "jne 0x8f", "0x1004cd4b"], ["0x100a7a01", "mov eax, dword ptr [ecx + 4]", "0x1004cd51"], ["0x100a7a04", "mov ebx, dword ptr [esp + 0x10]", "0x1004cd54"], ["0x100a7a08", "mov dword ptr [edx + 4], eax", "0x1004cd58"], ["0x100a7a0b", "mov eax, dword ptr [esi + 4]", "0x1004cd5b"], ["0x100a7a0e", "add eax, 4", "0x1004cd5e"], ["0x100a7a11", "cmp dword ptr [eax], ebx", "0x1004cd61"], ["0x100a7a13", "je 0xc", "0x1004cd63"], ["0x100a7a15", "mov eax, dword ptr [ebx + 4]", "0x1004cd65"], ["0x100a7a18", "cmp dword ptr [eax], ebx", "0x1004cd68"]]}]], ["@@ -0x100a7a1c,42 +0x1004cd6c,42 @@", [{"both": [["0x100a7a1c", "mov dword ptr [eax + 8], edx", "0x1004cd6c"], ["0x100a7a1f", "jmp 0x2", "0x1004cd6f"], ["0x100a7a21", "mov dword ptr [eax], edx", "0x1004cd71"], ["0x100a7a23", "mov ebx, dword ptr [esi + 4]", "0x1004cd73"], ["0x100a7a26", "mov eax, dword ptr [esp + 0x10]", "0x1004cd76"], ["0x100a7a2a", "cmp dword ptr [ebx], eax", "0x1004cd7a"], ["0x100a7a2c", "jne 0x26", "0x1004cd7c"], ["0x100a7a2e", "mov eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]", "0x1004cd7e"], ["0x100a7a33", "cmp dword ptr [edi], eax", "0x1004cd83"], ["0x100a7a35", "je 0x14", "0x1004cd85"]]}, {"orig": [["0x100a7a37", "mov eax, edx"], ["0x100a7a39", "mov edi, dword ptr [eax]"], ["0x100a7a3b", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], edi"], ["0x100a7a41", "je 0x4"], ["0x100a7a43", "mov eax, edi"]], "recomp": [["0x1004cd87", "mov edi, edx"], ["0x1004cd89", "mov eax, dword ptr [edi]"], ["0x1004cd8b", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"], ["0x1004cd91", "je 0x4"], ["0x1004cd93", "mov edi, eax"]]}, {"both": [["0x100a7a45", "jmp -0xe", "0x1004cd95"]]}, {"orig": [["0x100a7a47", "mov dword ptr [ebx], eax"]], "recomp": [["0x1004cd97", "mov dword ptr [ebx], edi"]]}, {"both": [["0x100a7a49", "jmp 0x9", "0x1004cd99"], ["0x100a7a4b", "mov eax, dword ptr [esp + 0x10]", "0x1004cd9b"], ["0x100a7a4f", "mov ebp, dword ptr [eax + 4]", "0x1004cd9f"], ["0x100a7a52", "mov dword ptr [ebx], ebp", "0x1004cda2"], ["0x100a7a54", "mov edi, dword ptr [esi + 4]", "0x1004cda4"], ["0x100a7a57", "mov eax, dword ptr [esp + 0x10]", "0x1004cda7"], ["0x100a7a5b", "add edi, 8", "0x1004cdab"], ["0x100a7a5e", "cmp dword ptr [edi], eax", "0x1004cdae"], ["0x100a7a60", "jne 0x88", "0x1004cdb0"], ["0x100a7a66", "mov ebx, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]", "0x1004cdb6"], ["0x100a7a6c", "cmp dword ptr [eax], ebx", "0x1004cdbc"], ["0x100a7a6e", "je 0x15", "0x1004cdbe"], ["0x100a7a70", "mov eax, edx", "0x1004cdc0"], ["0x100a7a72", "mov ebx, dword ptr [eax + 8]", "0x1004cdc2"]]}, {"orig": [["0x100a7a75", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], ebx"]], "recomp": [["0x1004cdc5", "cmp ebx, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7a7b", "je 0x4", "0x1004cdcb"], ["0x100a7a7d", "mov eax, ebx", "0x1004cdcd"], ["0x100a7a7f", "jmp -0xf", "0x1004cdcf"], ["0x100a7a81", "mov dword ptr [edi], eax", "0x1004cdd1"], ["0x100a7a83", "jmp 0x69", "0x1004cdd3"], ["0x100a7a85", "mov eax, dword ptr [esp + 0x10]", "0x1004cdd5"], ["0x100a7a89", "mov ebx, dword ptr [eax + 4]", "0x1004cdd9"], ["0x100a7a8c", "mov dword ptr [edi], ebx", "0x1004cddc"], ["0x100a7a8e", "jmp 0x5e", "0x1004cdde"], ["0x100a7a90", "mov eax, dword ptr [esp + 0x10]", "0x1004cde0"]]}]], ["@@ -0x100a7ad5,43 +0x1004ce25,43 @@", [{"both": [["0x100a7ad5", "mov eax, dword ptr [esp + 0x10]", "0x1004ce25"], ["0x100a7ad9", "mov ebx, dword ptr [eax + 4]", "0x1004ce29"], ["0x100a7adc", "lea edi, [eax + 0x14]", "0x1004ce2c"], ["0x100a7adf", "mov dword ptr [ecx + 4], ebx", "0x1004ce2f"], ["0x100a7ae2", "mov ebx, dword ptr [edi]", "0x1004ce32"], ["0x100a7ae4", "mov ebp, dword ptr [ecx + 0x14]", "0x1004ce34"], ["0x100a7ae7", "mov dword ptr [ecx + 0x14], ebx", "0x1004ce37"], ["0x100a7aea", "mov ecx, eax", "0x1004ce3a"], ["0x100a7aec", "mov dword ptr [edi], ebp", "0x1004ce3c"], ["0x100a7aee", "cmp dword ptr [ecx + 0x14], 1", "0x1004ce3e"]]}, {"orig": [["0x100a7af2", "jne 0x294"]], "recomp": [["0x1004ce42", "jne 0x295"]]}, {"both": [["0x100a7af8", "mov eax, dword ptr [esi + 4]", "0x1004ce48"], ["0x100a7afb", "cmp dword ptr [eax + 4], edx", "0x1004ce4b"]]}, {"orig": [["0x100a7afe", "je 0x281"]], "recomp": [["0x1004ce4e", "je 0x282"]]}, {"both": [["0x100a7b04", "cmp dword ptr [edx + 0x14], 1", "0x1004ce54"]]}, {"orig": [["0x100a7b08", "jne 0x277"]], "recomp": [["0x1004ce58", "jne 0x278"]]}, {"both": [["0x100a7b0e", "lea ebx, [edx + 4]", "0x1004ce5e"], ["0x100a7b11", "mov eax, dword ptr [ebx]", "0x1004ce61"], ["0x100a7b13", "mov edi, dword ptr [eax]", "0x1004ce63"], ["0x100a7b15", "cmp edx, edi", "0x1004ce65"], ["0x100a7b17", "jne 0x73", "0x1004ce67"], ["0x100a7b19", "mov edi, dword ptr [eax + 8]", "0x1004ce69"], ["0x100a7b1c", "cmp dword ptr [edi + 0x14], 0", "0x1004ce6c"], ["0x100a7b20", "jne 0x4f", "0x1004ce70"], ["0x100a7b22", "mov dword ptr [edi + 0x14], 1", "0x1004ce72"], ["0x100a7b29", "mov eax, dword ptr [ebx]", "0x1004ce79"], ["0x100a7b2b", "mov dword ptr [eax + 0x14], 0", "0x1004ce7b"], ["0x100a7b32", "mov ebp, dword ptr [ebx]", "0x1004ce82"], ["0x100a7b34", "mov eax, dword ptr [ebp + 8]", "0x1004ce84"], ["0x100a7b37", "mov edi, dword ptr [eax]", "0x1004ce87"], ["0x100a7b39", "mov dword ptr [ebp + 8], edi", "0x1004ce89"], ["0x100a7b3c", "mov edi, dword ptr [eax]", "0x1004ce8c"]]}, {"orig": [["0x100a7b3e", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], edi"]], "recomp": [["0x1004ce8e", "cmp edi, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7b44", "je 0x3", "0x1004ce94"], ["0x100a7b46", "mov dword ptr [edi + 4], ebp", "0x1004ce96"], ["0x100a7b49", "mov edi, dword ptr [ebp + 4]", "0x1004ce99"], ["0x100a7b4c", "mov dword ptr [eax + 4], edi", "0x1004ce9c"], ["0x100a7b4f", "mov edi, dword ptr [esi + 4]", "0x1004ce9f"], ["0x100a7b52", "add edi, 4", "0x1004cea2"], ["0x100a7b55", "cmp dword ptr [edi], ebp", "0x1004cea5"], ["0x100a7b57", "je 0xc", "0x1004cea7"], ["0x100a7b59", "mov edi, dword ptr [ebp + 4]", "0x1004cea9"], ["0x100a7b5c", "cmp dword ptr [edi], ebp", "0x1004ceac"]]}]], ["@@ -0x100a7b7d,99 +0x1004cecd,99 @@", [{"both": [["0x100a7b7d", "mov eax, dword ptr [edi + 8]", "0x1004cecd"], ["0x100a7b80", "cmp dword ptr [eax + 0x14], 1", "0x1004ced0"], ["0x100a7b84", "jne 0x8d", "0x1004ced4"], ["0x100a7b8a", "jmp 0x71", "0x1004ceda"], ["0x100a7b8c", "cmp dword ptr [edi + 0x14], 0", "0x1004cedc"], ["0x100a7b90", "jne 0x52", "0x1004cee0"], ["0x100a7b92", "mov dword ptr [edi + 0x14], 1", "0x1004cee2"], ["0x100a7b99", "mov eax, dword ptr [ebx]", "0x1004cee9"], ["0x100a7b9b", "mov dword ptr [eax + 0x14], 0", "0x1004ceeb"], ["0x100a7ba2", "mov ebp, dword ptr [ebx]", "0x1004cef2"]]}, {"orig": [["0x100a7ba4", "mov edi, dword ptr [ebp]"], ["0x100a7ba7", "mov eax, dword ptr [edi + 8]"], ["0x100a7baa", "mov dword ptr [ebp], eax"], ["0x100a7bad", "mov eax, dword ptr [edi + 8]"], ["0x100a7bb0", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"], ["0x100a7bb6", "je 0x3"], ["0x100a7bb8", "mov dword ptr [eax + 4], ebp"], ["0x100a7bbb", "mov eax, dword ptr [ebp + 4]"], ["0x100a7bbe", "mov dword ptr [edi + 4], eax"], ["0x100a7bc1", "mov eax, dword ptr [esi + 4]"], ["0x100a7bc4", "add eax, 4"], ["0x100a7bc7", "cmp dword ptr [eax], ebp"]], "recomp": [["0x1004cef4", "mov eax, dword ptr [ebp]"], ["0x1004cef7", "mov edi, dword ptr [eax + 8]"], ["0x1004cefa", "mov dword ptr [ebp], edi"], ["0x1004cefd", "mov edi, dword ptr [eax + 8]"], ["0x1004cf00", "cmp edi, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"], ["0x1004cf06", "je 0x3"], ["0x1004cf08", "mov dword ptr [edi + 4], ebp"], ["0x1004cf0b", "mov edi, dword ptr [ebp + 4]"], ["0x1004cf0e", "mov dword ptr [eax + 4], edi"], ["0x1004cf11", "mov edi, dword ptr [esi + 4]"], ["0x1004cf14", "add edi, 4"], ["0x1004cf17", "cmp dword ptr [edi], ebp"]]}, {"both": [["0x100a7bc9", "je 0xd", "0x1004cf19"]]}, {"orig": [["0x100a7bcb", "mov eax, dword ptr [ebp + 4]"], ["0x100a7bce", "add eax, 8"], ["0x100a7bd1", "cmp dword ptr [eax], ebp"], ["0x100a7bd3", "je 0x3"], ["0x100a7bd5", "mov eax, dword ptr [ebp + 4]"], ["0x100a7bd8", "mov dword ptr [eax], edi"], ["0x100a7bda", "mov dword ptr [edi + 8], ebp"], ["0x100a7bdd", "mov dword ptr [ebp + 4], edi"], ["0x100a7be0", "mov eax, dword ptr [ebx]"], ["0x100a7be2", "mov edi, dword ptr [eax]"], ["0x100a7be4", "mov eax, dword ptr [edi + 8]"], ["0x100a7be7", "cmp dword ptr [eax + 0x14], 1"], ["0x100a7beb", "jne 0xe6"], ["0x100a7bf1", "mov eax, dword ptr [edi]"], ["0x100a7bf3", "cmp dword ptr [eax + 0x14], 1"], ["0x100a7bf7", "jne 0xda"]], "recomp": [["0x1004cf1b", "mov edi, dword ptr [ebp + 4]"], ["0x1004cf1e", "add edi, 8"], ["0x1004cf21", "cmp dword ptr [edi], ebp"], ["0x1004cf23", "je 0x3"], ["0x1004cf25", "mov edi, dword ptr [ebp + 4]"], ["0x1004cf28", "mov dword ptr [edi], eax"], ["0x1004cf2a", "mov dword ptr [eax + 8], ebp"], ["0x1004cf2d", "mov dword ptr [ebp + 4], eax"], ["0x1004cf30", "mov eax, dword ptr [ebx]"], ["0x1004cf32", "mov edi, dword ptr [eax]"], ["0x1004cf34", "mov eax, dword ptr [edi + 8]"], ["0x1004cf37", "cmp dword ptr [eax + 0x14], 1"], ["0x1004cf3b", "jne 0xe7"], ["0x1004cf41", "mov eax, dword ptr [edi]"], ["0x1004cf43", "cmp dword ptr [eax + 0x14], 1"], ["0x1004cf47", "jne 0xdb"]]}, {"both": [["0x100a7bfd", "mov dword ptr [edi + 0x14], 0", "0x1004cf4d"], ["0x100a7c04", "mov edx, dword ptr [ebx]", "0x1004cf54"], ["0x100a7c06", "mov eax, dword ptr [esi + 4]", "0x1004cf56"], ["0x100a7c09", "cmp dword ptr [eax + 4], edx", "0x1004cf59"], ["0x100a7c0c", "jne -0x10e", "0x1004cf5c"]]}, {"orig": [["0x100a7c12", "jmp 0x16e"], ["0x100a7c17", "mov eax, dword ptr [edi + 8]"], ["0x100a7c1a", "cmp dword ptr [eax + 0x14], 1"], ["0x100a7c1e", "jne 0x52"]], "recomp": [["0x1004cf62", "jmp 0x16f"], ["0x1004cf67", "mov eax, dword ptr [edi + 8]"], ["0x1004cf6a", "cmp dword ptr [eax + 0x14], 1"], ["0x1004cf6e", "jne 0x53"]]}, {"both": [["0x100a7c20", "mov eax, dword ptr [edi]", "0x1004cf70"], ["0x100a7c22", "mov dword ptr [eax + 0x14], 1", "0x1004cf72"], ["0x100a7c29", "mov dword ptr [edi + 0x14], 0", "0x1004cf79"], ["0x100a7c30", "mov ebx, dword ptr [edi]", "0x1004cf80"], ["0x100a7c32", "mov ebp, dword ptr [ebx + 8]", "0x1004cf82"], ["0x100a7c35", "mov dword ptr [edi], ebp", "0x1004cf85"], ["0x100a7c37", "mov eax, dword ptr [ebx + 8]", "0x1004cf87"]]}, {"orig": [["0x100a7c3a", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004cf8a", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7c40", "je 0x3", "0x1004cf90"], ["0x100a7c42", "mov dword ptr [eax + 4], edi", "0x1004cf92"], ["0x100a7c45", "mov eax, dword ptr [edi + 4]", "0x1004cf95"], ["0x100a7c48", "mov dword ptr [ebx + 4], eax", "0x1004cf98"], ["0x100a7c4b", "mov eax, dword ptr [esi + 4]", "0x1004cf9b"], ["0x100a7c4e", "add eax, 4", "0x1004cf9e"], ["0x100a7c51", "cmp dword ptr [eax], edi", "0x1004cfa1"]]}, {"orig": [["0x100a7c53", "je 0xf"], ["0x100a7c55", "mov ebp, dword ptr [edi + 4]"], ["0x100a7c58", "lea eax, [ebp + 8]"], ["0x100a7c5b", "cmp dword ptr [eax], edi"], ["0x100a7c5d", "je 0x5"]], "recomp": [["0x1004cfa3", "je 0x10"], ["0x1004cfa5", "mov eax, dword ptr [edi + 4]"], ["0x1004cfa8", "lea ebp, [eax + 8]"], ["0x1004cfab", "cmp dword ptr [ebp], edi"], ["0x1004cfae", "jne 0x5"]]}, {"both": [["0x100a7c5f", "mov dword ptr [ebp], ebx", "0x1004cfb0"], ["0x100a7c62", "jmp 0x2", "0x1004cfb3"], ["0x100a7c64", "mov dword ptr [eax], ebx", "0x1004cfb5"], ["0x100a7c66", "mov dword ptr [ebx + 8], edi", "0x1004cfb7"], ["0x100a7c69", "mov dword ptr [edi + 4], ebx", "0x1004cfba"], ["0x100a7c6c", "mov eax, dword ptr [edx + 4]", "0x1004cfbd"], ["0x100a7c6f", "mov edi, dword ptr [eax + 8]", "0x1004cfc0"], ["0x100a7c72", "mov eax, dword ptr [edx + 4]", "0x1004cfc3"], ["0x100a7c75", "mov ebx, dword ptr [eax + 0x14]", "0x1004cfc6"], ["0x100a7c78", "mov dword ptr [edi + 0x14], ebx", "0x1004cfc9"], ["0x100a7c7b", "mov ebx, 1", "0x1004cfcc"], ["0x100a7c80", "mov eax, dword ptr [edx + 4]", "0x1004cfd1"], ["0x100a7c83", "mov dword ptr [eax + 0x14], ebx", "0x1004cfd4"], ["0x100a7c86", "mov ebp, dword ptr [edi + 8]", "0x1004cfd7"], ["0x100a7c89", "mov dword ptr [ebp + 0x14], ebx", "0x1004cfda"], ["0x100a7c8c", "mov ebx, dword ptr [edx + 4]", "0x1004cfdd"], ["0x100a7c8f", "mov edi, dword ptr [ebx + 8]", "0x1004cfe0"], ["0x100a7c92", "mov eax, dword ptr [edi]", "0x1004cfe3"], ["0x100a7c94", "mov dword ptr [ebx + 8], eax", "0x1004cfe5"], ["0x100a7c97", "mov eax, dword ptr [edi]", "0x1004cfe8"]]}, {"orig": [["0x100a7c99", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004cfea", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7c9f", "je 0x3", "0x1004cff0"], ["0x100a7ca1", "mov dword ptr [eax + 4], ebx", "0x1004cff2"], ["0x100a7ca4", "mov eax, dword ptr [ebx + 4]", "0x1004cff5"], ["0x100a7ca7", "mov dword ptr [edi + 4], eax", "0x1004cff8"], ["0x100a7caa", "mov eax, dword ptr [esi + 4]", "0x1004cffb"], ["0x100a7cad", "add eax, 4", "0x1004cffe"], ["0x100a7cb0", "cmp dword ptr [eax], ebx", "0x1004d001"], ["0x100a7cb2", "je 0x1a", "0x1004d003"], ["0x100a7cb4", "mov eax, dword ptr [ebx + 4]", "0x1004d005"], ["0x100a7cb7", "cmp dword ptr [eax], ebx", "0x1004d008"]]}]], ["@@ -0x100a7cd7,21 +0x1004d028,21 @@", [{"both": [["0x100a7cd7", "mov eax, dword ptr [edi]", "0x1004d028"], ["0x100a7cd9", "cmp dword ptr [eax + 0x14], 1", "0x1004d02a"], ["0x100a7cdd", "jne 0x4e", "0x1004d02e"], ["0x100a7cdf", "mov eax, dword ptr [edi + 8]", "0x1004d030"], ["0x100a7ce2", "mov dword ptr [eax + 0x14], 1", "0x1004d033"], ["0x100a7ce9", "mov dword ptr [edi + 0x14], 0", "0x1004d03a"], ["0x100a7cf0", "mov ebx, dword ptr [edi + 8]", "0x1004d041"], ["0x100a7cf3", "mov ebp, dword ptr [ebx]", "0x1004d044"], ["0x100a7cf5", "mov dword ptr [edi + 8], ebp", "0x1004d046"], ["0x100a7cf8", "mov eax, dword ptr [ebx]", "0x1004d049"]]}, {"orig": [["0x100a7cfa", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004d04b", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7d00", "je 0x3", "0x1004d051"], ["0x100a7d02", "mov dword ptr [eax + 4], edi", "0x1004d053"], ["0x100a7d05", "mov eax, dword ptr [edi + 4]", "0x1004d056"], ["0x100a7d08", "mov dword ptr [ebx + 4], eax", "0x1004d059"], ["0x100a7d0b", "mov eax, dword ptr [esi + 4]", "0x1004d05c"], ["0x100a7d0e", "add eax, 4", "0x1004d05f"], ["0x100a7d11", "cmp dword ptr [eax], edi", "0x1004d062"], ["0x100a7d13", "je 0xc", "0x1004d064"], ["0x100a7d15", "mov eax, dword ptr [edi + 4]", "0x1004d066"], ["0x100a7d18", "cmp dword ptr [eax], edi", "0x1004d069"]]}]], ["@@ -0x100a7d36,21 +0x1004d087,21 @@", [{"both": [["0x100a7d36", "mov ebx, 1", "0x1004d087"], ["0x100a7d3b", "mov eax, dword ptr [edx + 4]", "0x1004d08c"], ["0x100a7d3e", "mov dword ptr [eax + 0x14], ebx", "0x1004d08f"], ["0x100a7d41", "mov ebp, dword ptr [edi]", "0x1004d092"], ["0x100a7d43", "mov dword ptr [ebp + 0x14], ebx", "0x1004d094"], ["0x100a7d46", "mov ebx, dword ptr [edx + 4]", "0x1004d097"], ["0x100a7d49", "mov edi, dword ptr [ebx]", "0x1004d09a"], ["0x100a7d4b", "mov eax, dword ptr [edi + 8]", "0x1004d09c"], ["0x100a7d4e", "mov dword ptr [ebx], eax", "0x1004d09f"], ["0x100a7d50", "mov eax, dword ptr [edi + 8]", "0x1004d0a1"]]}, {"orig": [["0x100a7d53", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004d0a4", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7d59", "je 0x3", "0x1004d0aa"], ["0x100a7d5b", "mov dword ptr [eax + 4], ebx", "0x1004d0ac"], ["0x100a7d5e", "mov eax, dword ptr [ebx + 4]", "0x1004d0af"], ["0x100a7d61", "mov dword ptr [edi + 4], eax", "0x1004d0b2"], ["0x100a7d64", "mov eax, dword ptr [esi + 4]", "0x1004d0b5"], ["0x100a7d67", "add eax, 4", "0x1004d0b8"], ["0x100a7d6a", "cmp dword ptr [eax], ebx", "0x1004d0bb"], ["0x100a7d6c", "je 0xf", "0x1004d0bd"], ["0x100a7d6e", "mov ebp, dword ptr [ebx + 4]", "0x1004d0bf"], ["0x100a7d71", "lea eax, [ebp + 8]", "0x1004d0c2"]]}]], ["@@ -0x100a7d96,11 +0x1004d0e7,10 @@", [{"both": [["0x100a7d96", "mov eax, dword ptr [esp + 0x1c]", "0x1004d0e7"], ["0x100a7d9a", "add esp, 4", "0x1004d0eb"], ["0x100a7d9d", "dec dword ptr [esi + 0xc]", "0x1004d0ee"], ["0x100a7da0", "mov dword ptr [eax], ecx", "0x1004d0f1"], ["0x100a7da2", "pop ebp", "0x1004d0f3"], ["0x100a7da3", "pop edi", "0x1004d0f4"], ["0x100a7da4", "pop esi", "0x1004d0f5"], ["0x100a7da5", "pop ebx", "0x1004d0f6"], ["0x100a7da6", "add esp, 4", "0x1004d0f7"], ["0x100a7da9", "ret 8", "0x1004d0fa"]]}, {"orig": [["0x100a7dac", "int3 "]], "recomp": []}]]]}, {"address": "0x100a7db0", "recomp": "0x1004d100", "name": "_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Erase", "matching": 0.9130434782608695, "diff": [["@@ -0x100a7db0,23 +0x1004d100,23 @@", [{"both": [["0x100a7db0", "push ebx", "0x1004d100"], ["0x100a7db1", "push esi", "0x1004d101"], ["0x100a7db2", "mov esi, dword ptr [esp + 0xc]", "0x1004d102"], ["0x100a7db6", "push edi", "0x1004d106"], ["0x100a7db7", "mov edi, ecx", "0x1004d107"], ["0x100a7db9", "mov ebx, esi", "0x1004d109"]]}, {"orig": [["0x100a7dbb", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], esi"]], "recomp": [["0x1004d10b", "cmp esi, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7dc1", "je 0x20", "0x1004d111"], ["0x100a7dc3", "mov eax, dword ptr [ebx + 8]", "0x1004d113"], ["0x100a7dc6", "mov ecx, edi", "0x1004d116"], ["0x100a7dc8", "push eax", "0x1004d118"], ["0x100a7dc9", "call _Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Erase (FUNCTION)", "0x1004d119"], ["0x100a7dce", "mov ebx, dword ptr [ebx]", "0x1004d11e"], ["0x100a7dd0", "push esi", "0x1004d120"], ["0x100a7dd1", "mov esi, ebx", "0x1004d121"], ["0x100a7dd3", "call ??3@YAXPAX@Z (FUNCTION)", "0x1004d123"], ["0x100a7dd8", "add esp, 4", "0x1004d128"]]}, {"orig": [["0x100a7ddb", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], ebx"]], "recomp": [["0x1004d12b", "cmp ebx, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7de1", "jne -0x20", "0x1004d131"], ["0x100a7de3", "pop edi", "0x1004d133"], ["0x100a7de4", "pop esi", "0x1004d134"], ["0x100a7de5", "pop ebx", "0x1004d135"], ["0x100a7de6", "ret 4", "0x1004d136"]]}]]]}, {"address": "0x100a7df0", "recomp": "0x1004d720", "name": "_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Insert", "matching": 0.782051282051282, "diff": [["@@ -0x100a7e29,21 +0x1004d759,21 @@", [{"both": [["0x100a7e29", "mov ebx, dword ptr [esp + 0x24]", "0x1004d759"], ["0x100a7e2d", "je 0xa", "0x1004d75d"], ["0x100a7e2f", "mov edx, dword ptr [ebx]", "0x1004d75f"], ["0x100a7e31", "mov edi, dword ptr [ebx + 4]", "0x1004d761"], ["0x100a7e34", "mov dword ptr [eax], edx", "0x1004d764"], ["0x100a7e36", "mov dword ptr [eax + 4], edi", "0x1004d766"], ["0x100a7e39", "inc dword ptr [esi + 0xc]", "0x1004d769"], ["0x100a7e3c", "cmp dword ptr [esi + 4], ecx", "0x1004d76c"], ["0x100a7e3f", "je 0x4f", "0x1004d76f"], ["0x100a7e41", "mov eax, dword ptr [esp + 0x1c]", "0x1004d771"]]}, {"orig": [["0x100a7e45", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004d775", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7e4b", "jne 0x43", "0x1004d77b"], ["0x100a7e4d", "mov eax, dword ptr [ebx]", "0x1004d77d"], ["0x100a7e4f", "mov edi, dword ptr [ecx + 0xc]", "0x1004d77f"], ["0x100a7e52", "mov dl, byte ptr [eax]", "0x1004d782"], ["0x100a7e54", "cmp dl, byte ptr [edi]", "0x1004d784"], ["0x100a7e56", "jne 0x1a", "0x1004d786"], ["0x100a7e58", "or dl, dl", "0x1004d788"], ["0x100a7e5a", "je 0x12", "0x1004d78a"], ["0x100a7e5c", "mov dl, byte ptr [eax + 1]", "0x1004d78c"], ["0x100a7e5f", "cmp dl, byte ptr [edi + 1]", "0x1004d78f"]]}]], ["@@ -0x100a7ee8,21 +0x1004d818,21 @@", [{"both": [["0x100a7ee8", "cmp dword ptr [ebp + 0x14], 0", "0x1004d818"], ["0x100a7eec", "je 0x15c", "0x1004d81c"], ["0x100a7ef2", "lea ebx, [eax + 8]", "0x1004d822"], ["0x100a7ef5", "mov edx, dword ptr [ebx]", "0x1004d825"], ["0x100a7ef7", "cmp ecx, edx", "0x1004d827"], ["0x100a7ef9", "jne 0x33", "0x1004d829"], ["0x100a7efb", "mov ecx, eax", "0x1004d82b"], ["0x100a7efd", "mov eax, dword ptr [edx]", "0x1004d82d"], ["0x100a7eff", "mov dword ptr [ebx], eax", "0x1004d82f"], ["0x100a7f01", "mov eax, dword ptr [edx]", "0x1004d831"]]}, {"orig": [["0x100a7f03", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004d833", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7f09", "je 0x3", "0x1004d839"], ["0x100a7f0b", "mov dword ptr [eax + 4], ecx", "0x1004d83b"], ["0x100a7f0e", "mov eax, dword ptr [edi]", "0x1004d83e"], ["0x100a7f10", "mov dword ptr [edx + 4], eax", "0x1004d840"], ["0x100a7f13", "mov eax, dword ptr [esi + 4]", "0x1004d843"], ["0x100a7f16", "add eax, 4", "0x1004d846"], ["0x100a7f19", "cmp dword ptr [eax], ecx", "0x1004d849"], ["0x100a7f1b", "je 0xb", "0x1004d84b"], ["0x100a7f1d", "mov eax, dword ptr [edi]", "0x1004d84d"], ["0x100a7f1f", "cmp dword ptr [eax], ecx", "0x1004d84f"]]}]], ["@@ -0x100a7f26,60 +0x1004d856,60 @@", [{"both": [["0x100a7f26", "jmp 0x2", "0x1004d856"], ["0x100a7f28", "mov dword ptr [eax], edx", "0x1004d858"], ["0x100a7f2a", "mov dword ptr [edx], ecx", "0x1004d85a"], ["0x100a7f2c", "mov dword ptr [edi], edx", "0x1004d85c"], ["0x100a7f2e", "mov eax, dword ptr [ecx + 4]", "0x1004d85e"], ["0x100a7f31", "mov dword ptr [eax + 0x14], 1", "0x1004d861"], ["0x100a7f38", "mov eax, dword ptr [ecx + 4]", "0x1004d868"], ["0x100a7f3b", "mov edx, dword ptr [eax + 4]", "0x1004d86b"], ["0x100a7f3e", "mov dword ptr [edx + 0x14], 0", "0x1004d86e"], ["0x100a7f45", "mov eax, dword ptr [ecx + 4]", "0x1004d875"]]}, {"orig": [["0x100a7f48", "mov edx, dword ptr [eax + 4]"], ["0x100a7f4b", "mov edi, dword ptr [edx]"], ["0x100a7f4d", "mov eax, dword ptr [edi + 8]"], ["0x100a7f50", "mov dword ptr [edx], eax"], ["0x100a7f52", "mov eax, dword ptr [edi + 8]"], ["0x100a7f55", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"], ["0x100a7f5b", "je 0x3"], ["0x100a7f5d", "mov dword ptr [eax + 4], edx"], ["0x100a7f60", "mov eax, dword ptr [edx + 4]"], ["0x100a7f63", "mov dword ptr [edi + 4], eax"], ["0x100a7f66", "mov eax, dword ptr [esi + 4]"], ["0x100a7f69", "add eax, 4"], ["0x100a7f6c", "cmp dword ptr [eax], edx"]], "recomp": [["0x1004d878", "mov edi, dword ptr [eax + 4]"], ["0x1004d87b", "mov edx, dword ptr [edi]"], ["0x1004d87d", "mov eax, dword ptr [edx + 8]"], ["0x1004d880", "mov dword ptr [edi], eax"], ["0x1004d882", "mov eax, dword ptr [edx + 8]"], ["0x1004d885", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"], ["0x1004d88b", "je 0x3"], ["0x1004d88d", "mov dword ptr [eax + 4], edi"], ["0x1004d890", "mov eax, dword ptr [edi + 4]"], ["0x1004d893", "mov dword ptr [edx + 4], eax"], ["0x1004d896", "mov eax, dword ptr [esi + 4]"], ["0x1004d899", "add eax, 4"], ["0x1004d89c", "cmp dword ptr [eax], edi"]]}, {"both": [["0x100a7f6e", "je 0x24", "0x1004d89e"]]}, {"orig": [["0x100a7f70", "mov ebx, dword ptr [edx + 4]"]], "recomp": [["0x1004d8a0", "mov ebx, dword ptr [edi + 4]"]]}, {"both": [["0x100a7f73", "lea eax, [ebx + 8]", "0x1004d8a3"]]}, {"orig": [["0x100a7f76", "cmp dword ptr [eax], edx"]], "recomp": [["0x1004d8a6", "cmp dword ptr [eax], edi"]]}, {"both": [["0x100a7f78", "je 0xd", "0x1004d8a8"]]}, {"orig": [["0x100a7f7a", "mov dword ptr [ebx], edi"], ["0x100a7f7c", "mov dword ptr [edi + 8], edx"], ["0x100a7f7f", "mov dword ptr [edx + 4], edi"]], "recomp": [["0x1004d8aa", "mov dword ptr [ebx], edx"], ["0x1004d8ac", "mov dword ptr [edx + 8], edi"], ["0x1004d8af", "mov dword ptr [edi + 4], edx"]]}, {"both": [["0x100a7f82", "jmp 0xe5", "0x1004d8b2"]]}, {"orig": [["0x100a7f87", "mov dword ptr [eax], edi"], ["0x100a7f89", "mov dword ptr [edi + 8], edx"], ["0x100a7f8c", "mov dword ptr [edx + 4], edi"]], "recomp": [["0x1004d8b7", "mov dword ptr [eax], edx"], ["0x1004d8b9", "mov dword ptr [edx + 8], edi"], ["0x1004d8bc", "mov dword ptr [edi + 4], edx"]]}, {"both": [["0x100a7f8f", "jmp 0xd8", "0x1004d8bf"]]}, {"orig": [["0x100a7f94", "mov dword ptr [eax], edi"], ["0x100a7f96", "mov dword ptr [edi + 8], edx"], ["0x100a7f99", "mov dword ptr [edx + 4], edi"]], "recomp": [["0x1004d8c4", "mov dword ptr [eax], edx"], ["0x1004d8c6", "mov dword ptr [edx + 8], edi"], ["0x1004d8c9", "mov dword ptr [edi + 4], edx"]]}, {"both": [["0x100a7f9c", "jmp 0xcb", "0x1004d8cc"], ["0x100a7fa1", "cmp dword ptr [ebp + 0x14], 0", "0x1004d8d1"], ["0x100a7fa5", "je 0xa3", "0x1004d8d5"], ["0x100a7fab", "mov edx, dword ptr [eax]", "0x1004d8db"], ["0x100a7fad", "cmp ecx, edx", "0x1004d8dd"], ["0x100a7faf", "jne 0x38", "0x1004d8df"], ["0x100a7fb1", "mov ecx, eax", "0x1004d8e1"], ["0x100a7fb3", "mov eax, dword ptr [edx + 8]", "0x1004d8e3"], ["0x100a7fb6", "mov dword ptr [ecx], eax", "0x1004d8e6"], ["0x100a7fb8", "mov eax, dword ptr [edx + 8]", "0x1004d8e8"]]}, {"orig": [["0x100a7fbb", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"]], "recomp": [["0x1004d8eb", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"]]}, {"both": [["0x100a7fc1", "je 0x3", "0x1004d8f1"], ["0x100a7fc3", "mov dword ptr [eax + 4], ecx", "0x1004d8f3"], ["0x100a7fc6", "mov eax, dword ptr [edi]", "0x1004d8f6"], ["0x100a7fc8", "mov dword ptr [edx + 4], eax", "0x1004d8f8"], ["0x100a7fcb", "mov eax, dword ptr [esi + 4]", "0x1004d8fb"], ["0x100a7fce", "add eax, 4", "0x1004d8fe"], ["0x100a7fd1", "cmp dword ptr [eax], ecx", "0x1004d901"], ["0x100a7fd3", "je 0xd", "0x1004d903"], ["0x100a7fd5", "mov ebx, dword ptr [edi]", "0x1004d905"], ["0x100a7fd7", "lea eax, [ebx + 8]", "0x1004d907"]]}]], ["@@ -0x100a7fe0,48 +0x1004d910,48 @@", [{"both": [["0x100a7fe0", "jmp 0x2", "0x1004d910"], ["0x100a7fe2", "mov dword ptr [eax], edx", "0x1004d912"], ["0x100a7fe4", "mov dword ptr [edx + 8], ecx", "0x1004d914"], ["0x100a7fe7", "mov dword ptr [edi], edx", "0x1004d917"], ["0x100a7fe9", "mov eax, dword ptr [ecx + 4]", "0x1004d919"], ["0x100a7fec", "mov dword ptr [eax + 0x14], 1", "0x1004d91c"], ["0x100a7ff3", "mov eax, dword ptr [ecx + 4]", "0x1004d923"], ["0x100a7ff6", "mov edx, dword ptr [eax + 4]", "0x1004d926"], ["0x100a7ff9", "mov dword ptr [edx + 0x14], 0", "0x1004d929"], ["0x100a8000", "mov eax, dword ptr [ecx + 4]", "0x1004d930"]]}, {"orig": [["0x100a8003", "mov edi, dword ptr [eax + 4]"], ["0x100a8006", "mov edx, dword ptr [edi + 8]"], ["0x100a8009", "mov eax, dword ptr [edx]"], ["0x100a800b", "mov dword ptr [edi + 8], eax"], ["0x100a800e", "mov eax, dword ptr [edx]"], ["0x100a8010", "cmp dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)], eax"], ["0x100a8016", "je 0x3"], ["0x100a8018", "mov dword ptr [eax + 4], edi"], ["0x100a801b", "mov eax, dword ptr [edi + 4]"], ["0x100a801e", "mov dword ptr [edx + 4], eax"], ["0x100a8021", "mov eax, dword ptr [esi + 4]"], ["0x100a8024", "add eax, 4"], ["0x100a8027", "cmp dword ptr [eax], edi"]], "recomp": [["0x1004d933", "mov edx, dword ptr [eax + 4]"], ["0x1004d936", "mov edi, dword ptr [edx + 8]"], ["0x1004d939", "mov eax, dword ptr [edi]"], ["0x1004d93b", "mov dword ptr [edx + 8], eax"], ["0x1004d93e", "mov eax, dword ptr [edi]"], ["0x1004d940", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::_Nil (DATA)]"], ["0x1004d946", "je 0x3"], ["0x1004d948", "mov dword ptr [eax + 4], edx"], ["0x1004d94b", "mov eax, dword ptr [edx + 4]"], ["0x1004d94e", "mov dword ptr [edi + 4], eax"], ["0x1004d951", "mov eax, dword ptr [esi + 4]"], ["0x1004d954", "add eax, 4"], ["0x1004d957", "cmp dword ptr [eax], edx"]]}, {"both": [["0x100a8029", "je 0x1a", "0x1004d959"]]}, {"orig": [["0x100a802b", "mov eax, dword ptr [edi + 4]"], ["0x100a802e", "cmp dword ptr [eax], edi"]], "recomp": [["0x1004d95b", "mov eax, dword ptr [edx + 4]"], ["0x1004d95e", "cmp dword ptr [eax], edx"]]}, {"both": [["0x100a8030", "je 0xa", "0x1004d960"]]}, {"orig": [["0x100a8032", "mov dword ptr [eax + 8], edx"], ["0x100a8035", "mov dword ptr [edx], edi"], ["0x100a8037", "mov dword ptr [edi + 4], edx"]], "recomp": [["0x1004d962", "mov dword ptr [eax + 8], edi"], ["0x1004d965", "mov dword ptr [edi], edx"], ["0x1004d967", "mov dword ptr [edx + 4], edi"]]}, {"both": [["0x100a803a", "jmp 0x30", "0x1004d96a"]]}, {"orig": [["0x100a803c", "mov dword ptr [eax], edx"], ["0x100a803e", "mov dword ptr [edx], edi"], ["0x100a8040", "mov dword ptr [edi + 4], edx"]], "recomp": [["0x1004d96c", "mov dword ptr [eax], edi"], ["0x1004d96e", "mov dword ptr [edi], edx"], ["0x1004d970", "mov dword ptr [edx + 4], edi"]]}, {"both": [["0x100a8043", "jmp 0x27", "0x1004d973"]]}, {"orig": [["0x100a8045", "mov dword ptr [eax], edx"], ["0x100a8047", "mov dword ptr [edx], edi"], ["0x100a8049", "mov dword ptr [edi + 4], edx"]], "recomp": [["0x1004d975", "mov dword ptr [eax], edi"], ["0x1004d977", "mov dword ptr [edi], edx"], ["0x1004d979", "mov dword ptr [edx + 4], edi"]]}, {"both": [["0x100a804c", "jmp 0x1e", "0x1004d97c"], ["0x100a804e", "mov dword ptr [ebx], 1", "0x1004d97e"], ["0x100a8054", "mov dword ptr [ebp + 0x14], 1", "0x1004d984"], ["0x100a805b", "mov eax, dword ptr [edx]", "0x1004d98b"], ["0x100a805d", "mov ecx, dword ptr [eax + 4]", "0x1004d98d"], ["0x100a8060", "mov dword ptr [ecx + 0x14], 0", "0x1004d990"], ["0x100a8067", "mov eax, dword ptr [edx]", "0x1004d997"], ["0x100a8069", "mov ecx, dword ptr [eax + 4]", "0x1004d999"], ["0x100a806c", "mov eax, dword ptr [esi + 4]", "0x1004d99c"], ["0x100a806f", "cmp dword ptr [eax + 4], ecx", "0x1004d99f"]]}]]]}, {"address": "0x100a80a0", "recomp": "0x1004d140", "name": "map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::~map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >", "matching": 1.0, "diff": []}, {"address": "0x100a80f0", "recomp": "0x1004d9d0", "name": "ViewLODList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a8160", "recomp": "0x1004da40", "name": "LODList<ViewLOD>::~LODList<ViewLOD>", "matching": 1.0, "diff": []}, {"address": "0x100a81b0", "recomp": "0x100545b0", "name": "LegoROI::FUN_100a81b0", "matching": 1.0, "diff": []}, {"address": "0x100a81c0", "recomp": "0x100545c0", "name": "LegoROI::configureLegoROI", "matching": 1.0, "diff": []}, {"address": "0x100a81d0", "recomp": "0x100545d0", "name": "LegoROI::LegoROI", "matching": 1.0, "diff": []}, {"address": "0x100a82b0", "recomp": "0x10054830", "name": "LegoROI::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a82d0", "recomp": "0x10054850", "name": "LegoROI::LegoROI", "matching": 1.0, "diff": []}, {"address": "0x100a83c0", "recomp": "0x10054940", "name": "LegoROI::~LegoROI", "matching": 0.9538461538461539, "diff": [["@@ -0x100a83cb,26 +0x1005494b,25 @@", [{"both": [["0x100a83cb", "push <OFFSET1>", "0x1005494b"], ["0x100a83d0", "mov dword ptr [ecx], LegoROI::`vftable' (VTABLE)", "0x10054950"], ["0x100a83d6", "push eax", "0x10054956"], ["0x100a83d7", "mov dword ptr fs:[0], esp", "0x10054957"], ["0x100a83de", "sub esp, 0xc", "0x1005495e"], ["0x100a83e1", "mov dword ptr [ebp - 4], 0", "0x10054961"], ["0x100a83e8", "push esi", "0x10054968"], ["0x100a83e9", "mov eax, dword ptr [ecx + 4]", "0x10054969"], ["0x100a83ec", "mov dword ptr [ebp - 0x10], ecx", "0x1005496c"], ["0x100a83ef", "test eax, eax", "0x1005496f"]]}, {"orig": [["0x100a83f1", "je 0x55"]], "recomp": [["0x10054971", "je 0x51"]]}, {"both": [["0x100a83f3", "mov ecx, dword ptr [eax + 4]", "0x10054973"], ["0x100a83f6", "mov eax, dword ptr [ecx]", "0x10054976"], ["0x100a83f8", "mov esi, eax", "0x10054978"]]}, {"orig": [["0x100a83fa", "mov dword ptr [ebp - 0x14], eax"], ["0x100a83fd", "cmp ecx, dword ptr [ebp - 0x14]"]], "recomp": [["0x1005497a", "cmp eax, ecx"]]}, {"both": [["0x100a8400", "je 0x1a", "0x1005497c"], ["0x100a8402", "mov ecx, dword ptr [esi + 8]", "0x1005497e"], ["0x100a8405", "test ecx, ecx", "0x10054981"], ["0x100a8407", "je 0x6", "0x10054983"], ["0x100a8409", "push 1", "0x10054985"], ["0x100a840b", "mov eax, dword ptr [ecx]", "0x10054987"], ["0x100a840d", "call dword ptr [eax]", "0x10054989"], ["0x100a840f", "mov esi, dword ptr [esi]", "0x1005498b"], ["0x100a8411", "mov eax, dword ptr [ebp - 0x10]", "0x1005498d"], ["0x100a8414", "mov ecx, dword ptr [eax + 4]", "0x10054990"]]}]], ["@@ -0x100a846d,10 +0x100549e9,11 @@", [{"both": [["0x100a846d", "pop esi", "0x100549e9"], ["0x100a846e", "mov dword ptr fs:[0], eax", "0x100549ea"], ["0x100a8474", "mov esp, ebp", "0x100549f0"], ["0x100a8476", "pop ebp", "0x100549f2"], ["0x100a8477", "ret ", "0x100549f3"], ["0x100a8478", "mov ecx, dword ptr [ebp - 0x14]", "0x100549f4"], ["0x100a847b", "jmp list<ROI *,allocator<ROI *> >::~list<ROI *,allocator<ROI *> > (FUNCTION)", "0x100549f7"], ["0x100a8480", "mov eax, <OFFSET7>", "0x100549fc"], ["0x100a8485", "jmp ___CxxFrameHandler (FUNCTION)", "0x10054a01"], ["0x100a848a", "mov ecx, dword ptr [ebp - 0x10]", "0x10054a06"]]}, {"orig": [], "recomp": [["0x10054a09", "jmp ViewROI::~ViewROI (FUNCTION)"]]}]]]}, {"address": "0x100a84a0", "recomp": "0x10054a10", "name": "LegoROI::Read", "matching": 0.90625, "diff": [["@@ -0x100a84f2,68 +0x10054a62,68 @@", [{"both": [["0x100a84f2", "mov dword ptr [ecx + 0xd4], eax", "0x10054a62"], ["0x100a84f8", "mov eax, dword ptr [edx]", "0x10054a68"], ["0x100a84fa", "lea edx, [ebp - 0x28]", "0x10054a6a"], ["0x100a84fd", "mov dword ptr [ebp - 0x30], eax", "0x10054a6d"], ["0x100a8500", "mov ecx, dword ptr [eax + 4]", "0x10054a70"], ["0x100a8503", "push edx", "0x10054a73"], ["0x100a8504", "mov dword ptr [ebp - 0x20], ecx", "0x10054a74"], ["0x100a8507", "mov ecx, dword ptr [ebp + 0x18]", "0x10054a77"], ["0x100a850a", "call dword ptr [ebp - 0x20]", "0x10054a7a"], ["0x100a850d", "test eax, eax", "0x10054a7d"]]}, {"orig": [["0x100a850f", "jne 0x768"]], "recomp": [["0x10054a7f", "jne 0x76b"]]}, {"both": [["0x100a8515", "mov eax, dword ptr [ebp - 0x28]", "0x10054a85"], ["0x100a8518", "inc eax", "0x10054a88"], ["0x100a8519", "push eax", "0x10054a89"], ["0x100a851a", "call ??2@YAPAXI@Z (FUNCTION)", "0x10054a8a"], ["0x100a851f", "add esp, 4", "0x10054a8f"], ["0x100a8522", "mov ecx, dword ptr [ebp - 0x10]", "0x10054a92"], ["0x100a8525", "mov edx, dword ptr [ebp - 0x28]", "0x10054a95"], ["0x100a8528", "push edx", "0x10054a98"], ["0x100a8529", "mov dword ptr [ecx + 0xe4], eax", "0x10054a99"], ["0x100a852f", "push eax", "0x10054a9f"], ["0x100a8530", "mov ecx, dword ptr [ebp + 0x18]", "0x10054aa0"], ["0x100a8533", "call dword ptr [ebp - 0x20]", "0x10054aa3"], ["0x100a8536", "test eax, eax", "0x10054aa6"]]}, {"orig": [["0x100a8538", "jne 0x73f"]], "recomp": [["0x10054aa8", "jne 0x742"]]}, {"both": [["0x100a853e", "mov ecx, dword ptr [ebp - 0x10]", "0x10054aae"], ["0x100a8541", "mov edx, dword ptr [ebp - 0x28]", "0x10054ab1"], ["0x100a8544", "mov eax, dword ptr [ecx + 0xe4]", "0x10054ab4"], ["0x100a854a", "mov byte ptr [eax + edx], 0", "0x10054aba"], ["0x100a854e", "mov eax, dword ptr [ecx + 0xe4]", "0x10054abe"], ["0x100a8554", "push eax", "0x10054ac4"], ["0x100a8555", "call _strlwr (FUNCTION)", "0x10054ac5"], ["0x100a855a", "add esp, 4", "0x10054aca"], ["0x100a855d", "mov ecx, dword ptr [ebp + 0x18]", "0x10054acd"], ["0x100a8560", "push ecx", "0x10054ad0"], ["0x100a8561", "lea ecx, [ebp - 0x50]", "0x10054ad1"], ["0x100a8564", "call LegoSphere::Read (FUNCTION)", "0x10054ad4"], ["0x100a8569", "test eax, eax", "0x10054ad9"]]}, {"orig": [["0x100a856b", "jne 0x70c"]], "recomp": [["0x10054adb", "jne 0x70f"]]}, {"both": [["0x100a8571", "mov ecx, dword ptr [ebp - 0x10]", "0x10054ae1"], ["0x100a8574", "mov eax, dword ptr [ebp - 0x50]", "0x10054ae4"], ["0x100a8577", "mov edx, dword ptr [ecx + 0xec]", "0x10054ae7"], ["0x100a857d", "mov dword ptr [edx], eax", "0x10054aed"], ["0x100a857f", "mov edx, dword ptr [ecx + 0xec]", "0x10054aef"], ["0x100a8585", "mov eax, dword ptr [ebp - 0x4c]", "0x10054af5"], ["0x100a8588", "mov dword ptr [edx + 4], eax", "0x10054af8"], ["0x100a858b", "mov edx, dword ptr [ecx + 0xec]", "0x10054afb"], ["0x100a8591", "mov eax, dword ptr [ebp - 0x48]", "0x10054b01"], ["0x100a8594", "mov dword ptr [edx + 8], eax", "0x10054b04"], ["0x100a8597", "mov eax, dword ptr [ebp + 0x18]", "0x10054b07"], ["0x100a859a", "fld dword ptr [ebp - 0x44]", "0x10054b0a"], ["0x100a859d", "push eax", "0x10054b0d"], ["0x100a859e", "fst dword ptr [ecx + 0xfc]", "0x10054b0e"], ["0x100a85a4", "fstp dword ptr [ecx + 0xbc]", "0x10054b14"], ["0x100a85aa", "lea ecx, [ebp - 0x68]", "0x10054b1a"], ["0x100a85ad", "call LegoBox::Read (FUNCTION)", "0x10054b1d"], ["0x100a85b2", "test eax, eax", "0x10054b22"]]}, {"orig": [["0x100a85b4", "jne 0x6c3"]], "recomp": [["0x10054b24", "jne 0x6c6"]]}, {"both": [["0x100a85ba", "mov ecx, dword ptr [ebp - 0x10]", "0x10054b2a"], ["0x100a85bd", "mov edx, dword ptr [ebp - 0x68]", "0x10054b2d"], ["0x100a85c0", "mov eax, dword ptr [ecx + 0x84]", "0x10054b30"], ["0x100a85c6", "mov dword ptr [eax], edx", "0x10054b36"], ["0x100a85c8", "mov eax, dword ptr [ecx + 0x84]", "0x10054b38"], ["0x100a85ce", "mov edx, dword ptr [ebp - 0x64]", "0x10054b3e"], ["0x100a85d1", "mov dword ptr [eax + 4], edx", "0x10054b41"], ["0x100a85d4", "mov eax, dword ptr [ecx + 0x84]", "0x10054b44"], ["0x100a85da", "mov edx, dword ptr [ebp - 0x60]", "0x10054b4a"], ["0x100a85dd", "mov dword ptr [eax + 8], edx", "0x10054b4d"]]}]], ["@@ -0x100a85f4,40 +0x10054b64,41 @@", [{"both": [["0x100a85f4", "push 4", "0x10054b64"], ["0x100a85f6", "mov dword ptr [ebx + 4], eax", "0x10054b66"], ["0x100a85f9", "mov ebx, dword ptr [ecx + 0x98]", "0x10054b69"], ["0x100a85ff", "mov eax, dword ptr [ebp - 0x54]", "0x10054b6f"], ["0x100a8602", "lea ecx, [ebp - 0x28]", "0x10054b72"], ["0x100a8605", "push ecx", "0x10054b75"], ["0x100a8606", "mov dword ptr [ebx + 8], eax", "0x10054b76"], ["0x100a8609", "mov ecx, dword ptr [ebp + 0x18]", "0x10054b79"], ["0x100a860c", "call dword ptr [ebp - 0x20]", "0x10054b7c"], ["0x100a860f", "test eax, eax", "0x10054b7f"]]}, {"orig": [["0x100a8611", "jne 0x666"]], "recomp": [["0x10054b81", "jne 0x669"]]}, {"both": [["0x100a8617", "cmp dword ptr [ebp - 0x28], 0", "0x10054b87"]]}, {"orig": [["0x100a861b", "je 0x38"]], "recomp": [["0x10054b8b", "je 0x3b"]]}, {"both": [["0x100a861d", "mov eax, dword ptr [ebp - 0x28]", "0x10054b8d"], ["0x100a8620", "inc eax", "0x10054b90"], ["0x100a8621", "push eax", "0x10054b91"], ["0x100a8622", "call ??2@YAPAXI@Z (FUNCTION)", "0x10054b92"], ["0x100a8627", "add esp, 4", "0x10054b97"], ["0x100a862a", "mov ecx, dword ptr [ebp - 0x28]", "0x10054b9a"], ["0x100a862d", "mov dword ptr [ebp - 0x14], eax", "0x10054b9d"], ["0x100a8630", "push ecx", "0x10054ba0"], ["0x100a8631", "push eax", "0x10054ba1"], ["0x100a8632", "mov ecx, dword ptr [ebp + 0x18]", "0x10054ba2"], ["0x100a8635", "call dword ptr [ebp - 0x20]", "0x10054ba5"], ["0x100a8638", "test eax, eax", "0x10054ba8"]]}, {"orig": [["0x100a863a", "jne 0x63d"]], "recomp": [["0x10054baa", "jne 0x640"]]}, {"both": [["0x100a8640", "mov ecx, dword ptr [ebp - 0x28]", "0x10054bb0"], ["0x100a8643", "mov eax, dword ptr [ebp - 0x14]", "0x10054bb3"]]}, {"orig": [["0x100a8646", "push eax"]], "recomp": []}, {"both": [["0x100a8647", "mov byte ptr [ecx + eax], 0", "0x10054bb6"]]}, {"orig": [], "recomp": [["0x10054bba", "mov eax, dword ptr [ebp - 0x14]"], ["0x10054bbd", "push eax"]]}, {"both": [["0x100a864b", "call _strlwr (FUNCTION)", "0x10054bbe"], ["0x100a8650", "add esp, 4", "0x10054bc3"], ["0x100a8653", "jmp 0x7", "0x10054bc6"], ["0x100a8655", "mov dword ptr [ebp - 0x14], 0", "0x10054bc8"], ["0x100a865c", "mov esi, dword ptr [ebp - 0x10]", "0x10054bcf"], ["0x100a865f", "push 1", "0x10054bd2"], ["0x100a8661", "add esi, 0x100", "0x10054bd4"], ["0x100a8667", "mov ecx, dword ptr [ebp + 0x18]", "0x10054bda"], ["0x100a866a", "push esi", "0x10054bdd"], ["0x100a866b", "call dword ptr [ebp - 0x20]", "0x10054bde"]]}]], ["@@ -0x100a872e,22 +0x10054ca1,22 @@", [{"both": [["0x100a872e", "push 4", "0x10054ca1"], ["0x100a8730", "lea edx, [ebp - 0x40]", "0x10054ca3"], ["0x100a8733", "mov eax, dword ptr [ecx + 0xe4]", "0x10054ca6"], ["0x100a8739", "push edx", "0x10054cac"], ["0x100a873a", "mov ecx, dword ptr [ebp + 0x18]", "0x10054cad"], ["0x100a873d", "mov dword ptr [ebp - 0x1c], eax", "0x10054cb0"], ["0x100a8740", "call dword ptr [ebp - 0x20]", "0x10054cb3"], ["0x100a8743", "test eax, eax", "0x10054cb6"], ["0x100a8745", "jne 0x532", "0x10054cb8"], ["0x100a874b", "mov eax, dword ptr [g_roiConfig (DATA)]", "0x10054cbe"]]}, {"orig": [["0x100a8750", "cmp eax, dword ptr [ebp - 0x24]"], ["0x100a8753", "jae 0xd"]], "recomp": [["0x10054cc3", "cmp dword ptr [ebp - 0x24], eax"], ["0x10054cc6", "jbe 0xd"]]}, {"both": [["0x100a8755", "mov ecx, dword ptr [ebp - 0x24]", "0x10054cc8"], ["0x100a8758", "sub ecx, eax", "0x10054ccb"], ["0x100a875a", "mov dword ptr [ebp - 0x24], eax", "0x10054ccd"], ["0x100a875d", "mov dword ptr [ebp - 0x2c], ecx", "0x10054cd0"], ["0x100a8760", "jmp 0x7", "0x10054cd3"], ["0x100a8762", "mov dword ptr [ebp - 0x2c], 0", "0x10054cd5"], ["0x100a8769", "cmp dword ptr [g_roiConfig (DATA)], 2", "0x10054cdc"], ["0x100a8770", "jg 0x3e", "0x10054ce3"], ["0x100a8772", "xor edi, edi", "0x10054ce5"], ["0x100a8774", "cmp dword ptr [g_unk0x10101380 (DATA)], edi", "0x10054ce7"]]}]], ["@@ -0x100a878f,42 +0x10054d02,42 @@", [{"both": [["0x100a878f", "push edx", "0x10054d02"], ["0x100a8790", "call _strnicmp (FUNCTION)", "0x10054d03"], ["0x100a8795", "add esp, 0xc", "0x10054d08"], ["0x100a8798", "test eax, eax", "0x10054d0b"], ["0x100a879a", "je 0xb", "0x10054d0d"], ["0x100a879c", "add esi, 4", "0x10054d0f"], ["0x100a879f", "inc edi", "0x10054d12"], ["0x100a87a0", "cmp dword ptr [esi], 0", "0x10054d13"], ["0x100a87a3", "jne -0x24", "0x10054d16"], ["0x100a87a5", "jmp 0x48", "0x10054d18"]]}, {"orig": [["0x100a87a7", "mov eax, dword ptr [edi*4 + 0x10101380]"]], "recomp": [["0x10054d1a", "mov eax, dword ptr [edi*4 + 0x100bdab0]"]]}, {"both": [["0x100a87ae", "jmp 0x3c", "0x10054d21"], ["0x100a87b0", "xor edi, edi", "0x10054d23"], ["0x100a87b2", "cmp dword ptr [g_unk0x10101370 (DATA)], edi", "0x10054d25"], ["0x100a87b8", "je 0x35", "0x10054d2b"], ["0x100a87ba", "mov esi, g_unk0x10101370 (DATA)", "0x10054d2d"], ["0x100a87bf", "push 4", "0x10054d32"], ["0x100a87c1", "mov eax, dword ptr [esi]", "0x10054d34"], ["0x100a87c3", "push eax", "0x10054d36"], ["0x100a87c4", "mov ecx, dword ptr [ebp - 0x10]", "0x10054d37"], ["0x100a87c7", "mov edx, dword ptr [ecx + 0xe4]", "0x10054d3a"], ["0x100a87cd", "push edx", "0x10054d40"], ["0x100a87ce", "call _strnicmp (FUNCTION)", "0x10054d41"], ["0x100a87d3", "add esp, 0xc", "0x10054d46"], ["0x100a87d6", "test eax, eax", "0x10054d49"], ["0x100a87d8", "je 0xb", "0x10054d4b"], ["0x100a87da", "add esi, 4", "0x10054d4d"], ["0x100a87dd", "inc edi", "0x10054d50"], ["0x100a87de", "cmp dword ptr [esi], 0", "0x10054d51"], ["0x100a87e1", "jne -0x24", "0x10054d54"], ["0x100a87e3", "jmp 0xa", "0x10054d56"]]}, {"orig": [["0x100a87e5", "mov eax, dword ptr [edi*4 + 0x10101370]"]], "recomp": [["0x10054d58", "mov eax, dword ptr [edi*4 + 0x100bdaa0]"]]}, {"both": [["0x100a87ec", "mov dword ptr [ebp - 0x1c], eax", "0x10054d5f"], ["0x100a87ef", "lea eax, [ebp - 0x1c]", "0x10054d62"], ["0x100a87f2", "mov ecx, dword ptr [ebp + 0x10]", "0x10054d65"], ["0x100a87f5", "push eax", "0x10054d68"], ["0x100a87f6", "call ViewLODListManager::Lookup (FUNCTION)", "0x10054d69"], ["0x100a87fb", "mov edi, eax", "0x10054d6e"], ["0x100a87fd", "test edi, edi", "0x10054d70"], ["0x100a87ff", "je 0x1a3", "0x10054d72"], ["0x100a8805", "xor esi, esi", "0x10054d78"], ["0x100a8807", "cmp dword ptr [g_unk0x10101390 (DATA)], esi", "0x10054d7a"]]}]], ["@@ -0x100a8819,77 +0x10054d8c,77 @@", [{"both": [["0x100a8819", "push eax", "0x10054d8c"], ["0x100a881a", "push ecx", "0x10054d8d"], ["0x100a881b", "call __strcmpi (FUNCTION)", "0x10054d8e"], ["0x100a8820", "add esp, 8", "0x10054d93"], ["0x100a8823", "test eax, eax", "0x10054d96"], ["0x100a8825", "je 0x9", "0x10054d98"], ["0x100a8827", "add ebx, 4", "0x10054d9a"], ["0x100a882a", "inc esi", "0x10054d9d"], ["0x100a882b", "cmp dword ptr [ebx], 0", "0x10054d9e"], ["0x100a882e", "jne -0x1c", "0x10054da1"]]}, {"orig": [["0x100a8830", "cmp dword ptr [esi*4 + 0x10101390], 0"]], "recomp": [["0x10054da3", "cmp dword ptr [esi*4 + 0x100bdac0], 0"]]}, {"both": [["0x100a8838", "je 0x9e", "0x10054dab"], ["0x100a883e", "cmp dword ptr [edi + 0xc], 0", "0x10054db1"], ["0x100a8842", "je 0x1d", "0x10054db5"], ["0x100a8844", "mov eax, dword ptr [edi + 0xc]", "0x10054db7"], ["0x100a8847", "dec eax", "0x10054dba"], ["0x100a8848", "mov dword ptr [edi + 0xc], eax", "0x10054dbb"], ["0x100a884b", "mov ecx, dword ptr [edi + 4]", "0x10054dbe"], ["0x100a884e", "mov ecx, dword ptr [ecx + eax*4]", "0x10054dc1"], ["0x100a8851", "test ecx, ecx", "0x10054dc4"], ["0x100a8853", "je 0x6", "0x10054dc6"], ["0x100a8855", "push 1", "0x10054dc8"], ["0x100a8857", "mov eax, dword ptr [ecx]", "0x10054dca"], ["0x100a8859", "call dword ptr [eax]", "0x10054dcc"], ["0x100a885b", "cmp dword ptr [edi + 0xc], 0", "0x10054dce"], ["0x100a885f", "jne -0x1d", "0x10054dd2"]]}, {"orig": [["0x100a8861", "xor ebx, ebx"], ["0x100a8863", "cmp dword ptr [ebp - 0x24], ebx"]], "recomp": [["0x10054dd4", "xor esi, esi"], ["0x10054dd6", "cmp dword ptr [ebp - 0x24], esi"]]}, {"both": [["0x100a8866", "jbe 0x74", "0x10054dd9"], ["0x100a8868", "push 0x20", "0x10054ddb"]]}, {"orig": [["0x100a886a", "mov esi, 0"]], "recomp": [["0x10054ddd", "mov ebx, 0"]]}, {"both": [["0x100a886f", "call ??2@YAPAXI@Z (FUNCTION)", "0x10054de2"], ["0x100a8874", "add esp, 4", "0x10054de7"], ["0x100a8877", "mov dword ptr [ebp - 0x18], eax", "0x10054dea"], ["0x100a887a", "mov dword ptr [ebp - 4], 0", "0x10054ded"], ["0x100a8881", "cmp dword ptr [ebp - 0x18], 0", "0x10054df4"], ["0x100a8885", "je 0xe", "0x10054df8"], ["0x100a8887", "mov eax, dword ptr [ebp + 0xc]", "0x10054dfa"], ["0x100a888a", "mov ecx, dword ptr [ebp - 0x18]", "0x10054dfd"], ["0x100a888d", "push eax", "0x10054e00"], ["0x100a888e", "call LegoLOD::LegoLOD (FUNCTION)", "0x10054e01"]]}, {"orig": [["0x100a8893", "mov esi, eax"]], "recomp": [["0x10054e06", "mov ebx, eax"]]}, {"both": [["0x100a8895", "mov eax, dword ptr [ebp + 0x18]", "0x10054e08"]]}, {"orig": [], "recomp": [["0x10054e0b", "mov ecx, dword ptr [ebp + 0x14]"], ["0x10054e0e", "push eax"]]}, {"both": [["0x100a8898", "mov edx, dword ptr [ebp + 0xc]", "0x10054e0f"], ["0x100a889b", "mov dword ptr [ebp - 4], 0xffffffff", "0x10054e12"]]}, {"orig": [["0x100a88a2", "push eax"], ["0x100a88a3", "mov ecx, dword ptr [ebp + 0x14]"], ["0x100a88a6", "push ecx"], ["0x100a88a7", "push edx"], ["0x100a88a8", "mov ecx, esi"]], "recomp": [["0x10054e19", "push ecx"], ["0x10054e1a", "push edx"], ["0x10054e1b", "mov ecx, ebx"]]}, {"both": [["0x100a88aa", "call LegoLOD::Read (FUNCTION)", "0x10054e1d"], ["0x100a88af", "test eax, eax", "0x10054e22"], ["0x100a88b1", "jne 0x3c6", "0x10054e24"]]}, {"orig": [["0x100a88b7", "test ebx, ebx"]], "recomp": [["0x10054e2a", "test esi, esi"]]}, {"both": [["0x100a88b9", "jne 0xf", "0x10054e2c"], ["0x100a88bb", "cmp dword ptr [ebp - 0x2c], 0", "0x10054e2e"], ["0x100a88bf", "je 0x9", "0x10054e32"]]}, {"orig": [["0x100a88c1", "test byte ptr [esi + 8], 8"]], "recomp": [["0x10054e34", "test byte ptr [ebx + 8], 8"]]}, {"both": [["0x100a88c5", "je 0x3", "0x10054e38"], ["0x100a88c7", "inc dword ptr [ebp - 0x24]", "0x10054e3a"], ["0x100a88ca", "mov eax, dword ptr [edi + 0xc]", "0x10054e3d"], ["0x100a88cd", "mov ecx, dword ptr [edi + 4]", "0x10054e40"]]}, {"orig": [["0x100a88d0", "inc ebx"], ["0x100a88d1", "mov dword ptr [ecx + eax*4], esi"]], "recomp": [["0x10054e43", "inc esi"], ["0x10054e44", "mov dword ptr [ecx + eax*4], ebx"]]}, {"both": [["0x100a88d4", "inc dword ptr [edi + 0xc]", "0x10054e47"]]}, {"orig": [["0x100a88d7", "cmp ebx, dword ptr [ebp - 0x24]"], ["0x100a88da", "jb -0x74"]], "recomp": [["0x10054e4a", "cmp dword ptr [ebp - 0x24], esi"], ["0x10054e4d", "ja -0x74"]]}, {"both": [["0x100a88dc", "mov eax, dword ptr [ebp - 0x40]", "0x10054e4f"], ["0x100a88df", "mov ecx, dword ptr [ebp + 0x18]", "0x10054e52"], ["0x100a88e2", "push eax", "0x10054e55"], ["0x100a88e3", "mov ebx, dword ptr [ebp - 0x30]", "0x10054e56"], ["0x100a88e6", "call dword ptr [ebx + 0x10]", "0x10054e59"], ["0x100a88e9", "mov ecx, dword ptr [ebp - 0x10]", "0x10054e5c"], ["0x100a88ec", "mov eax, dword ptr [ecx + 8]", "0x10054e5f"], ["0x100a88ef", "test eax, eax", "0x10054e62"], ["0x100a88f1", "je 0xe", "0x10054e64"], ["0x100a88f3", "dec dword ptr [eax + 0x10]", "0x10054e66"]]}]], ["@@ -0x100a892e,23 +0x10054ea1,23 @@", [{"both": [["0x100a892e", "push 2", "0x10054ea1"], ["0x100a8930", "mov eax, dword ptr [ebp - 0x14]", "0x10054ea3"], ["0x100a8933", "push 't_' (STRING)", "0x10054ea6"], ["0x100a8938", "push eax", "0x10054eab"], ["0x100a8939", "call _strnicmp (FUNCTION)", "0x10054eac"], ["0x100a893e", "add esp, 0xc", "0x10054eb1"], ["0x100a8941", "test eax, eax", "0x10054eb4"], ["0x100a8943", "jne 0x1af", "0x10054eb6"], ["0x100a8949", "mov edi, dword ptr [ebp - 0x14]", "0x10054ebc"], ["0x100a894c", "mov ecx, dword ptr [ebp + 0x14]", "0x10054ebf"]]}, {"orig": [], "recomp": [["0x10054ec2", "mov dword ptr [ebp - 0x14], 0"]]}, {"both": [["0x100a894f", "add edi, 2", "0x10054ec9"], ["0x100a8952", "mov edx, dword ptr [ecx + 0xc]", "0x10054ecc"]]}, {"orig": [["0x100a8955", "mov dword ptr [ebp - 0x14], 0"]], "recomp": []}, {"both": [["0x100a895c", "mov eax, dword ptr [edx + 4]", "0x10054ecf"], ["0x100a895f", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax", "0x10054ed2"], ["0x100a8965", "je 0x10e", "0x10054ed8"], ["0x100a896b", "mov ecx, dword ptr [eax + 0xc]", "0x10054ede"], ["0x100a896e", "mov esi, edi", "0x10054ee1"], ["0x100a8970", "mov bl, byte ptr [ecx]", "0x10054ee3"], ["0x100a8972", "cmp bl, byte ptr [esi]", "0x10054ee5"], ["0x100a8974", "jne 0xe1", "0x10054ee7"], ["0x100a897a", "or bl, bl", "0x10054eed"], ["0x100a897c", "je 0x16", "0x10054eef"]]}]], ["@@ -0x100a898d,90 +0x10054f00,90 @@", [{"both": [["0x100a898d", "add esi, 2", "0x10054f00"], ["0x100a8990", "or bl, bl", "0x10054f03"], ["0x100a8992", "jne -0x24", "0x10054f05"], ["0x100a8994", "xor ecx, ecx", "0x10054f07"], ["0x100a8996", "jmp 0xc5", "0x10054f09"], ["0x100a899b", "mov eax, dword ptr [ebp - 0x18]", "0x10054f0e"], ["0x100a899e", "push eax", "0x10054f11"], ["0x100a899f", "call ??3@YAXPAX@Z (FUNCTION)", "0x10054f12"], ["0x100a89a4", "add esp, 4", "0x10054f17"], ["0x100a89a7", "ret ", "0x10054f1a"]]}, {"orig": [["0x100a89a8", "xor esi, esi"], ["0x100a89aa", "cmp dword ptr [ebp - 0x24], esi"]], "recomp": [["0x10054f1b", "xor ebx, ebx"], ["0x10054f1d", "cmp dword ptr [ebp - 0x24], ebx"]]}, {"both": [["0x100a89ad", "jbe -0xd7", "0x10054f20"], ["0x100a89b3", "push 0x20", "0x10054f26"]]}, {"orig": [["0x100a89b5", "mov ebx, 0"]], "recomp": [["0x10054f28", "mov esi, 0"]]}, {"both": [["0x100a89ba", "call ??2@YAPAXI@Z (FUNCTION)", "0x10054f2d"], ["0x100a89bf", "add esp, 4", "0x10054f32"], ["0x100a89c2", "mov dword ptr [ebp - 0x18], eax", "0x10054f35"], ["0x100a89c5", "mov dword ptr [ebp - 4], 1", "0x10054f38"], ["0x100a89cc", "cmp dword ptr [ebp - 0x18], 0", "0x10054f3f"], ["0x100a89d0", "je 0xe", "0x10054f43"], ["0x100a89d2", "mov eax, dword ptr [ebp + 0xc]", "0x10054f45"], ["0x100a89d5", "mov ecx, dword ptr [ebp - 0x18]", "0x10054f48"], ["0x100a89d8", "push eax", "0x10054f4b"], ["0x100a89d9", "call LegoLOD::LegoLOD (FUNCTION)", "0x10054f4c"]]}, {"orig": [["0x100a89de", "mov ebx, eax"]], "recomp": [["0x10054f51", "mov esi, eax"]]}, {"both": [["0x100a89e0", "mov eax, dword ptr [ebp + 0x18]", "0x10054f53"]]}, {"orig": [], "recomp": [["0x10054f56", "mov ecx, dword ptr [ebp + 0x14]"], ["0x10054f59", "push eax"]]}, {"both": [["0x100a89e3", "mov edx, dword ptr [ebp + 0xc]", "0x10054f5a"], ["0x100a89e6", "mov dword ptr [ebp - 4], 0xffffffff", "0x10054f5d"]]}, {"orig": [["0x100a89ed", "push eax"], ["0x100a89ee", "mov ecx, dword ptr [ebp + 0x14]"], ["0x100a89f1", "push ecx"], ["0x100a89f2", "push edx"], ["0x100a89f3", "mov ecx, ebx"]], "recomp": [["0x10054f64", "push ecx"], ["0x10054f65", "push edx"], ["0x10054f66", "mov ecx, esi"]]}, {"both": [["0x100a89f5", "call LegoLOD::Read (FUNCTION)", "0x10054f68"], ["0x100a89fa", "test eax, eax", "0x10054f6d"], ["0x100a89fc", "jne 0x27b", "0x10054f6f"]]}, {"orig": [["0x100a8a02", "test esi, esi"]], "recomp": [["0x10054f75", "test ebx, ebx"]]}, {"both": [["0x100a8a04", "jne 0x2d", "0x10054f77"], ["0x100a8a06", "cmp dword ptr [ebp - 0x2c], 0", "0x10054f79"], ["0x100a8a0a", "je 0x9", "0x10054f7d"]]}, {"orig": [["0x100a8a0c", "test byte ptr [ebx + 8], 8"]], "recomp": [["0x10054f7f", "test byte ptr [esi + 8], 8"]]}, {"both": [["0x100a8a10", "je 0x3", "0x10054f83"], ["0x100a8a12", "inc dword ptr [ebp - 0x24]", "0x10054f85"]]}, {"orig": [["0x100a8a15", "test esi, esi"]], "recomp": [["0x10054f88", "test ebx, ebx"]]}, {"both": [["0x100a8a17", "jne 0x1a", "0x10054f8a"], ["0x100a8a19", "mov eax, dword ptr [ebp - 0x24]", "0x10054f8c"], ["0x100a8a1c", "lea ecx, [ebp - 0x1c]", "0x10054f8f"], ["0x100a8a1f", "push eax", "0x10054f92"], ["0x100a8a20", "push ecx", "0x10054f93"], ["0x100a8a21", "mov ecx, dword ptr [ebp + 0x10]", "0x10054f94"], ["0x100a8a24", "call ViewLODListManager::Create (FUNCTION)", "0x10054f97"], ["0x100a8a29", "mov edi, eax", "0x10054f9c"], ["0x100a8a2b", "test edi, edi", "0x10054f9e"], ["0x100a8a2d", "je 0x24a", "0x10054fa0"], ["0x100a8a33", "mov eax, dword ptr [edi + 0xc]", "0x10054fa6"], ["0x100a8a36", "mov ecx, dword ptr [edi + 4]", "0x10054fa9"]]}, {"orig": [["0x100a8a39", "inc esi"], ["0x100a8a3a", "mov dword ptr [ecx + eax*4], ebx"]], "recomp": [["0x10054fac", "inc ebx"], ["0x10054fad", "mov dword ptr [ecx + eax*4], esi"]]}, {"both": [["0x100a8a3d", "inc dword ptr [edi + 0xc]", "0x10054fb0"]]}, {"orig": [["0x100a8a40", "cmp dword ptr [ebp - 0x24], esi"]], "recomp": [["0x10054fb3", "cmp dword ptr [ebp - 0x24], ebx"]]}, {"both": [["0x100a8a43", "ja -0x96", "0x10054fb6"], ["0x100a8a49", "jmp -0x172", "0x10054fbc"], ["0x100a8a4e", "mov eax, dword ptr [ebp - 0x18]", "0x10054fc1"], ["0x100a8a51", "push eax", "0x10054fc4"], ["0x100a8a52", "call ??3@YAXPAX@Z (FUNCTION)", "0x10054fc5"], ["0x100a8a57", "add esp, 4", "0x10054fca"], ["0x100a8a5a", "ret ", "0x10054fcd"], ["0x100a8a5b", "sbb ecx, ecx", "0x10054fce"], ["0x100a8a5d", "sbb ecx, -1", "0x10054fd0"], ["0x100a8a60", "test ecx, ecx", "0x10054fd3"], ["0x100a8a62", "jg 0x6", "0x10054fd5"], ["0x100a8a64", "mov edx, eax", "0x10054fd7"], ["0x100a8a66", "mov eax, dword ptr [eax]", "0x10054fd9"], ["0x100a8a68", "jmp 0x3", "0x10054fdb"], ["0x100a8a6a", "mov eax, dword ptr [eax + 8]", "0x10054fdd"], ["0x100a8a6d", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax", "0x10054fe0"], ["0x100a8a73", "jne -0x10e", "0x10054fe6"]]}, {"orig": [], "recomp": [["0x10054fec", "mov eax, dword ptr [ebp + 0x14]"]]}, {"both": [["0x100a8a79", "mov dword ptr [ebp - 0x2c], edx", "0x10054fef"]]}, {"orig": [["0x100a8a7c", "mov eax, dword ptr [ebp + 0x14]"]], "recomp": []}, {"both": [["0x100a8a7f", "cmp dword ptr [eax + 0xc], edx", "0x10054ff2"], ["0x100a8a82", "je 0x2f", "0x10054ff5"], ["0x100a8a84", "mov eax, dword ptr [edx + 0xc]", "0x10054ff7"], ["0x100a8a87", "mov cl, byte ptr [edi]", "0x10054ffa"], ["0x100a8a89", "cmp cl, byte ptr [eax]", "0x10054ffc"], ["0x100a8a8b", "jne 0x1a", "0x10054ffe"], ["0x100a8a8d", "or cl, cl", "0x10055000"], ["0x100a8a8f", "je 0x12", "0x10055002"], ["0x100a8a91", "mov cl, byte ptr [edi + 1]", "0x10055004"], ["0x100a8a94", "cmp cl, byte ptr [eax + 1]", "0x10055007"]]}]], ["@@ -0x100a8adf,32 +0x10055052,32 @@", [{"both": [["0x100a8adf", "push eax", "0x10055052"], ["0x100a8ae0", "call LegoROI::FUN_100a9210 (FUNCTION)", "0x10055053"], ["0x100a8ae5", "push 0", "0x10055058"], ["0x100a8ae7", "push 0x3f800000", "0x1005505a"], ["0x100a8aec", "push 0x3f800000", "0x1005505f"], ["0x100a8af1", "push 0x3f800000", "0x10055064"], ["0x100a8af6", "jmp 0x3f", "0x10055069"], ["0x100a8af8", "mov eax, 0x3f800000", "0x1005506b"], ["0x100a8afd", "xor ecx, ecx", "0x10055070"], ["0x100a8aff", "mov dword ptr [ebp - 0x1c], eax", "0x10055072"]]}, {"orig": [], "recomp": [["0x10055075", "mov dword ptr [ebp - 0x18], ecx"], ["0x10055078", "lea edx, [ebp - 0x18]"], ["0x1005507b", "mov dword ptr [ebp - 0x2c], eax"], ["0x1005507e", "lea eax, [ebp - 0x2c]"]]}, {"both": [["0x100a8b02", "mov dword ptr [ebp - 0x30], ecx", "0x10055081"]]}, {"orig": [["0x100a8b05", "lea edx, [ebp - 0x18]"], ["0x100a8b08", "mov dword ptr [ebp - 0x18], ecx"]], "recomp": []}, {"both": [["0x100a8b0b", "lea ecx, [ebp - 0x30]", "0x10055084"]]}, {"orig": [["0x100a8b0e", "mov dword ptr [ebp - 0x2c], eax"], ["0x100a8b11", "push ecx"], ["0x100a8b12", "lea eax, [ebp - 0x2c]"], ["0x100a8b15", "push eax"]], "recomp": [["0x10055087", "push ecx"], ["0x10055088", "push eax"], ["0x10055089", "push edx"]]}, {"both": [["0x100a8b16", "lea ecx, [ebp - 0x1c]", "0x1005508a"]]}, {"orig": [["0x100a8b19", "push edx"]], "recomp": [["0x1005508d", "push ecx"]]}, {"both": [["0x100a8b1a", "mov eax, dword ptr [ebp - 0x14]", "0x1005508e"]]}, {"orig": [["0x100a8b1d", "push ecx"]], "recomp": []}, {"both": [["0x100a8b1e", "push eax", "0x10055091"], ["0x100a8b1f", "call LegoROI::FUN_100a9bf0 (FUNCTION)", "0x10055092"], ["0x100a8b24", "add esp, 0x14", "0x10055097"], ["0x100a8b27", "mov ecx, dword ptr [ebp - 0x30]", "0x1005509a"], ["0x100a8b2a", "mov edx, dword ptr [ebp - 0x2c]", "0x1005509d"], ["0x100a8b2d", "mov eax, dword ptr [ebp - 0x18]", "0x100550a0"], ["0x100a8b30", "push ecx", "0x100550a3"], ["0x100a8b31", "push edx", "0x100550a4"], ["0x100a8b32", "push eax", "0x100550a5"], ["0x100a8b33", "mov ecx, dword ptr [ebp - 0x1c]", "0x100550a6"]]}]], ["@@ -0x100a8be4,28 +0x10055157,28 @@", [{"both": [["0x100a8be4", "call LegoROI::LegoROI (FUNCTION)", "0x10055157"], ["0x100a8be9", "mov esi, eax", "0x1005515c"], ["0x100a8beb", "jmp 0xf", "0x1005515e"], ["0x100a8bed", "mov eax, dword ptr [ebp - 0x14]", "0x10055160"], ["0x100a8bf0", "push eax", "0x10055163"], ["0x100a8bf1", "call ??3@YAXPAX@Z (FUNCTION)", "0x10055164"], ["0x100a8bf6", "add esp, 4", "0x10055169"], ["0x100a8bf9", "ret ", "0x1005516c"], ["0x100a8bfa", "xor esi, esi", "0x1005516d"], ["0x100a8bfc", "mov eax, dword ptr [ebp + 0x18]", "0x1005516f"]]}, {"orig": [], "recomp": [["0x10055172", "mov ecx, dword ptr [ebp + 0x14]"], ["0x10055175", "push eax"]]}, {"both": [["0x100a8bff", "mov edx, dword ptr [ebp + 0x10]", "0x10055176"]]}, {"orig": [], "recomp": [["0x10055179", "push ecx"], ["0x1005517a", "mov eax, dword ptr [ebp + 0xc]"], ["0x1005517d", "push edx"], ["0x1005517e", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x100a8c02", "mov dword ptr [ebp - 4], 0xffffffff", "0x10055181"]]}, {"orig": [["0x100a8c09", "push eax"], ["0x100a8c0a", "mov ecx, dword ptr [ebp + 0x14]"], ["0x100a8c0d", "push ecx"], ["0x100a8c0e", "mov eax, dword ptr [ebp + 0xc]"], ["0x100a8c11", "push edx"], ["0x100a8c12", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": []}, {"both": [["0x100a8c15", "push eax", "0x10055188"], ["0x100a8c16", "push ecx", "0x10055189"], ["0x100a8c17", "mov ecx, esi", "0x1005518a"], ["0x100a8c19", "call LegoROI::Read (FUNCTION)", "0x1005518c"], ["0x100a8c1e", "test eax, eax", "0x10055191"], ["0x100a8c20", "jne 0x5b", "0x10055193"], ["0x100a8c22", "mov ecx, dword ptr [ebp - 0x10]", "0x10055195"], ["0x100a8c25", "push 0xc", "0x10055198"], ["0x100a8c27", "mov dword ptr [ebp - 0x18], esi", "0x1005519a"], ["0x100a8c2a", "mov esi, dword ptr [ecx + 4]", "0x1005519d"]]}]], ["@@ -0x100a8c53,32 +0x100551c6,29 @@", [{"both": [["0x100a8c53", "mov dword ptr [ebx], eax", "0x100551c6"], ["0x100a8c55", "mov ecx, dword ptr [eax + 4]", "0x100551c8"], ["0x100a8c58", "mov dword ptr [ecx], eax", "0x100551cb"], ["0x100a8c5a", "add eax, 8", "0x100551cd"], ["0x100a8c5d", "je 0x5", "0x100551d0"], ["0x100a8c5f", "mov ecx, dword ptr [ebp - 0x18]", "0x100551d2"], ["0x100a8c62", "mov dword ptr [eax], ecx", "0x100551d5"], ["0x100a8c64", "inc dword ptr [esi + 8]", "0x100551d7"], ["0x100a8c67", "inc dword ptr [ebp - 0x20]", "0x100551da"], ["0x100a8c6a", "mov eax, dword ptr [ebp - 0x20]", "0x100551dd"]]}, {"orig": [["0x100a8c6d", "cmp dword ptr [ebp - 0x38], eax"], ["0x100a8c70", "ja -0xb5"]], "recomp": [["0x100551e0", "cmp eax, dword ptr [ebp - 0x38]"], ["0x100551e3", "jb -0xb5"]]}, {"both": [["0x100a8c76", "mov dword ptr [ebp - 0x3c], 0", "0x100551e9"], ["0x100a8c7d", "mov eax, dword ptr [ebp - 0x3c]", "0x100551f0"], ["0x100a8c80", "mov ecx, dword ptr [ebp - 0xc]", "0x100551f3"], ["0x100a8c83", "mov dword ptr fs:[0], ecx", "0x100551f6"], ["0x100a8c8a", "pop edi", "0x100551fd"], ["0x100a8c8b", "pop esi", "0x100551fe"], ["0x100a8c8c", "pop ebx", "0x100551ff"], ["0x100a8c8d", "mov esp, ebp", "0x10055200"], ["0x100a8c8f", "pop ebp", "0x10055202"], ["0x100a8c90", "ret 0x14", "0x10055203"], ["0x100a8c93", "mov eax, <OFFSET27>", "0x10055206"], ["0x100a8c98", "jmp ___CxxFrameHandler (FUNCTION)", "0x1005520b"], ["0x100a8c9d", "mov eax, dword ptr [ebp - 0x1c]", "0x10055210"], ["0x100a8ca0", "push eax", "0x10055213"], ["0x100a8ca1", "call ??3@YAXPAX@Z (FUNCTION)", "0x10055214"], ["0x100a8ca6", "add esp, 4", "0x10055219"], ["0x100a8ca9", "ret ", "0x1005521c"]]}, {"orig": [["0x100a8caa", "int3 "], ["0x100a8cab", "int3 "], ["0x100a8cac", "int3 "]], "recomp": []}]]]}, {"address": "0x100a8cb0", "recomp": "0x10055220", "name": "LegoROI::FUN_100a8cb0", "matching": 1.0, "diff": []}, {"address": "0x100a8ce0", "recomp": "0x10055250", "name": "LegoROI::FUN_100a8ce0", "matching": 0.8662420382165605, "diff": [["@@ -0x100a8d10,41 +0x10055280,41 @@", [{"both": [["0x100a8d10", "mov eax, edi", "0x10055280"], ["0x100a8d12", "pop ebp", "0x10055282"], ["0x100a8d13", "pop edi", "0x10055283"], ["0x100a8d14", "pop esi", "0x10055284"], ["0x100a8d15", "pop ebx", "0x10055285"], ["0x100a8d16", "add esp, 0xc", "0x10055286"], ["0x100a8d19", "ret 8", "0x10055289"], ["0x100a8d1c", "mov esi, dword ptr [esp + 0x20]", "0x1005528c"], ["0x100a8d20", "mov edi, dword ptr [edi + 4]", "0x10055290"], ["0x100a8d23", "test edi, edi", "0x10055293"]]}, {"orig": [["0x100a8d25", "je 0x57"]], "recomp": [["0x10055295", "je 0x56"]]}, {"both": [["0x100a8d27", "mov ecx, dword ptr [edi + 4]", "0x10055297"], ["0x100a8d2a", "mov eax, dword ptr [ecx]", "0x1005529a"]]}, {"orig": [["0x100a8d2c", "mov ebp, eax"]], "recomp": [["0x1005529c", "mov ebx, eax"]]}, {"both": [["0x100a8d2e", "cmp eax, ecx", "0x1005529e"]]}, {"orig": [["0x100a8d30", "je 0x28"], ["0x100a8d32", "mov ebx, dword ptr [ebp + 8]"], ["0x100a8d35", "mov eax, dword ptr [ebx + 0xe4]"]], "recomp": [["0x100552a0", "je 0x27"], ["0x100552a2", "mov ebp, dword ptr [ebx + 8]"], ["0x100552a5", "mov eax, dword ptr [ebp + 0xe4]"]]}, {"both": [["0x100a8d3b", "test eax, eax", "0x100552ab"], ["0x100a8d3d", "je 0x13", "0x100552ad"], ["0x100a8d3f", "cmp byte ptr [eax], 0", "0x100552af"], ["0x100a8d42", "je 0xe", "0x100552b2"], ["0x100a8d44", "push esi", "0x100552b4"], ["0x100a8d45", "push eax", "0x100552b5"], ["0x100a8d46", "call __strcmpi (FUNCTION)", "0x100552b6"], ["0x100a8d4b", "add esp, 8", "0x100552bb"], ["0x100a8d4e", "test eax, eax", "0x100552be"]]}, {"orig": [["0x100a8d50", "je 0x38"], ["0x100a8d52", "mov ebp, dword ptr [ebp]"], ["0x100a8d55", "cmp dword ptr [edi + 4], ebp"], ["0x100a8d58", "jne -0x28"]], "recomp": [["0x100552c0", "je 0x37"], ["0x100552c2", "mov ebx, dword ptr [ebx]"], ["0x100552c4", "cmp dword ptr [edi + 4], ebx"], ["0x100552c7", "jne -0x27"]]}, {"both": [["0x100a8d5a", "mov ecx, dword ptr [edi + 4]", "0x100552c9"], ["0x100a8d5d", "mov eax, dword ptr [ecx]", "0x100552cc"], ["0x100a8d5f", "mov ebx, eax", "0x100552ce"], ["0x100a8d61", "cmp eax, ecx", "0x100552d0"], ["0x100a8d63", "je 0x19", "0x100552d2"], ["0x100a8d65", "mov eax, dword ptr [ebx + 8]", "0x100552d4"], ["0x100a8d68", "mov ecx, dword ptr [esp + 0x18]", "0x100552d7"], ["0x100a8d6c", "push eax", "0x100552db"], ["0x100a8d6d", "push esi", "0x100552dc"], ["0x100a8d6e", "call LegoROI::FUN_100a8ce0 (FUNCTION)", "0x100552dd"]]}]], ["@@ -0x100a8d77,16 +0x100552e6,17 @@", [{"both": [["0x100a8d77", "mov ebx, dword ptr [ebx]", "0x100552e6"], ["0x100a8d79", "cmp dword ptr [edi + 4], ebx", "0x100552e8"], ["0x100a8d7c", "jne -0x19", "0x100552eb"], ["0x100a8d7e", "xor eax, eax", "0x100552ed"], ["0x100a8d80", "pop ebp", "0x100552ef"], ["0x100a8d81", "pop edi", "0x100552f0"], ["0x100a8d82", "pop esi", "0x100552f1"], ["0x100a8d83", "pop ebx", "0x100552f2"], ["0x100a8d84", "add esp, 0xc", "0x100552f3"], ["0x100a8d87", "ret 8", "0x100552f6"]]}, {"orig": [["0x100a8d8a", "mov eax, ebx"]], "recomp": [["0x100552f9", "mov eax, ebp"]]}, {"both": [["0x100a8d8c", "pop ebp", "0x100552fb"], ["0x100a8d8d", "pop edi", "0x100552fc"], ["0x100a8d8e", "pop esi", "0x100552fd"], ["0x100a8d8f", "pop ebx", "0x100552fe"], ["0x100a8d90", "add esp, 0xc", "0x100552ff"]]}, {"orig": [], "recomp": [["0x10055302", "ret 8"]]}]]]}, {"address": "0x100a8da0", "recomp": "0x10055310", "name": "LegoROI::FUN_100a8da0", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a8dac,78 +0x1005531c,78 @@", [{"both": [["0x100a8dac", "push esi", "0x1005531c"], ["0x100a8dad", "mov dword ptr [esp + 0x18], eax", "0x1005531d"], ["0x100a8db1", "push edi", "0x10055321"], ["0x100a8db2", "mov edi, dword ptr [esp + 0x64]", "0x10055322"], ["0x100a8db6", "push ebp", "0x10055326"], ["0x100a8db7", "mov dword ptr [esp + 0x1c], MxMatrix::`vftable' (VTABLE)", "0x10055327"], ["0x100a8dbf", "mov edx, dword ptr [edi + 4]", "0x1005532f"], ["0x100a8dc2", "mov eax, dword ptr [esp + 0x74]", "0x10055332"], ["0x100a8dc6", "mov dword ptr [esp + 0x10], edx", "0x10055336"], ["0x100a8dca", "push eax", "0x1005533a"]]}, {"orig": [["0x100a8dcb", "mov esi, dword ptr [edx + 4]"], ["0x100a8dce", "push esi"]], "recomp": [["0x1005533b", "mov ebx, dword ptr [edx + 4]"], ["0x1005533e", "push ebx"]]}, {"both": [["0x100a8dcf", "call LegoROI::FUN_100a8ce0 (FUNCTION)", "0x1005533f"]]}, {"orig": [["0x100a8dd4", "mov ebx, eax"], ["0x100a8dd6", "test ebx, ebx"]], "recomp": [["0x10055344", "mov esi, eax"], ["0x10055346", "test esi, esi"]]}, {"both": [["0x100a8dd8", "jne 0x11", "0x10055348"], ["0x100a8dda", "mov eax, dword ptr [esp + 0x14]", "0x1005534a"], ["0x100a8dde", "mov ecx, dword ptr [esp + 0x14]", "0x1005534e"], ["0x100a8de2", "push eax", "0x10055352"]]}, {"orig": [["0x100a8de3", "push esi"]], "recomp": [["0x10055353", "push ebx"]]}, {"both": [["0x100a8de4", "call LegoROI::FUN_100a8ce0 (FUNCTION)", "0x10055354"]]}, {"orig": [["0x100a8de9", "mov ebx, eax"]], "recomp": [["0x10055359", "mov esi, eax"]]}, {"both": [["0x100a8deb", "xor ebp, ebp", "0x1005535b"]]}, {"orig": [["0x100a8ded", "test ebx, ebx"]], "recomp": [["0x1005535d", "test esi, esi"]]}, {"both": [["0x100a8def", "je 0x74", "0x1005535f"], ["0x100a8df1", "lea eax, [esp + 0x1c]", "0x10055361"], ["0x100a8df5", "mov ecx, dword ptr [esp + 0x70]", "0x10055365"], ["0x100a8df9", "mov edx, dword ptr [esp + 0x10]", "0x10055369"], ["0x100a8dfd", "push eax", "0x1005536d"], ["0x100a8dfe", "push ecx", "0x1005536e"], ["0x100a8dff", "push edx", "0x1005536f"], ["0x100a8e00", "call LegoROI::FUN_100a8cb0 (FUNCTION)", "0x10055370"], ["0x100a8e05", "mov ecx, dword ptr [esp + 0x78]", "0x10055375"], ["0x100a8e09", "lea edx, [esp + 0x28]", "0x10055379"], ["0x100a8e0d", "add esp, 0xc", "0x1005537d"]]}, {"orig": [["0x100a8e10", "mov esi, dword ptr [ebx + 0x10]"]], "recomp": [["0x10055380", "mov ebx, dword ptr [esi + 0x10]"]]}, {"both": [["0x100a8e13", "push ecx", "0x10055383"], ["0x100a8e14", "push edx", "0x10055384"]]}, {"orig": [["0x100a8e15", "lea ecx, [ebx + 0x10]"], ["0x100a8e18", "call dword ptr [esi + 0x38]"], ["0x100a8e1b", "mov eax, dword ptr [ebx]"], ["0x100a8e1d", "mov ecx, ebx"]], "recomp": [["0x10055385", "lea ecx, [esi + 0x10]"], ["0x10055388", "call dword ptr [ebx + 0x38]"], ["0x1005538b", "mov eax, dword ptr [esi]"], ["0x1005538d", "mov ecx, esi"]]}, {"both": [["0x100a8e1f", "call dword ptr [eax + 0x1c]", "0x1005538f"], ["0x100a8e22", "fild dword ptr [esp + 0x70]", "0x10055392"], ["0x100a8e26", "mov ecx, dword ptr [esp + 0x10]", "0x10055396"], ["0x100a8e2a", "sub esp, 4", "0x1005539a"], ["0x100a8e2d", "fstp dword ptr [esp]", "0x1005539d"], ["0x100a8e30", "call LegoAnimNodeData::FUN_100a0990 (FUNCTION)", "0x100553a0"]]}, {"orig": [["0x100a8e35", "mov byte ptr [ebx + 0xc], al"]], "recomp": [["0x100553a5", "mov byte ptr [esi + 0xc], al"]]}, {"both": [["0x100a8e38", "cmp dword ptr [edi + 8], ebp", "0x100553a8"], ["0x100a8e3b", "jbe 0x36", "0x100553ab"]]}, {"orig": [["0x100a8e3d", "xor esi, esi"]], "recomp": [["0x100553ad", "xor ebx, ebx"]]}, {"both": [["0x100a8e3f", "mov eax, dword ptr [esp + 0x70]", "0x100553af"]]}, {"orig": [["0x100a8e43", "push ebx"]], "recomp": [["0x100553b3", "push esi"]]}, {"both": [["0x100a8e44", "push eax", "0x100553b4"]]}, {"orig": [["0x100a8e45", "lea ecx, [ebx + 0x10]"]], "recomp": [["0x100553b5", "lea ecx, [esi + 0x10]"]]}, {"both": [["0x100a8e48", "push ecx", "0x100553b8"], ["0x100a8e49", "mov edx, dword ptr [edi + 0xc]", "0x100553b9"], ["0x100a8e4c", "mov ecx, dword ptr [esp + 0x20]", "0x100553bc"]]}, {"orig": [["0x100a8e50", "add esi, 4"]], "recomp": [["0x100553c0", "add ebx, 4"]]}, {"both": [["0x100a8e53", "inc ebp", "0x100553c3"]]}, {"orig": [["0x100a8e54", "mov eax, dword ptr [edx + esi - 4]"]], "recomp": [["0x100553c4", "mov eax, dword ptr [edx + ebx - 4]"]]}, {"both": [["0x100a8e58", "push eax", "0x100553c8"], ["0x100a8e59", "call LegoROI::FUN_100a8da0 (FUNCTION)", "0x100553c9"], ["0x100a8e5e", "cmp dword ptr [edi + 8], ebp", "0x100553ce"], ["0x100a8e61", "ja -0x24", "0x100553d1"], ["0x100a8e63", "jmp 0xe", "0x100553d3"]]}, {"orig": [["0x100a8e65", "push esi"]], "recomp": [["0x100553d5", "push ebx"]]}, {"both": [["0x100a8e66", "push '%s ROI Not found\\n' (STRING)", "0x100553d6"], ["0x100a8e6b", "call LegoROI::FUN_100a81b0 (FUNCTION)", "0x100553db"], ["0x100a8e70", "add esp, 8", "0x100553e0"], ["0x100a8e73", "xor eax, eax", "0x100553e3"], ["0x100a8e75", "pop ebp", "0x100553e5"], ["0x100a8e76", "pop edi", "0x100553e6"], ["0x100a8e77", "pop esi", "0x100553e7"], ["0x100a8e78", "pop ebx", "0x100553e8"], ["0x100a8e79", "add esp, 0x54", "0x100553e9"], ["0x100a8e7c", "ret 0x10", "0x100553ec"]]}]]]}, {"address": "0x100a90f0", "recomp": "0x100553f0", "name": "LegoROI::SetFrame", "matching": 1.0, "diff": []}, {"address": "0x100a9170", "recomp": "0x10055470", "name": "LegoROI::FUN_100a9170", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a9170,42 +0x10055470,42 @@", [{"both": [["0x100a9170", "sub esp, 8", "0x10055470"], ["0x100a9173", "push ebx", "0x10055473"], ["0x100a9174", "push esi", "0x10055474"], ["0x100a9175", "mov eax, dword ptr [ecx + 8]", "0x10055475"], ["0x100a9178", "push edi", "0x10055478"], ["0x100a9179", "push ebp", "0x10055479"], ["0x100a917a", "mov esi, ecx", "0x1005547a"], ["0x100a917c", "xor edi, edi", "0x1005547c"]]}, {"orig": [["0x100a917e", "mov ebx, 0"]], "recomp": [["0x1005547e", "mov ebp, 0"]]}, {"both": [["0x100a9183", "test eax, eax", "0x10055483"], ["0x100a9185", "je 0x3", "0x10055485"]]}, {"orig": [["0x100a9187", "mov ebx, dword ptr [eax + 0xc]"], ["0x100a918a", "xor ebp, ebp"], ["0x100a918c", "test ebx, ebx"]], "recomp": [["0x10055487", "mov ebp, dword ptr [eax + 0xc]"], ["0x1005548a", "xor ebx, ebx"], ["0x1005548c", "test ebp, ebp"]]}, {"both": [["0x100a918e", "je 0x30", "0x1005548e"], ["0x100a9190", "mov eax, dword ptr [esi + 8]", "0x10055490"], ["0x100a9193", "mov edx, dword ptr [esp + 0x28]", "0x10055493"], ["0x100a9197", "push edx", "0x10055497"], ["0x100a9198", "mov ecx, dword ptr [eax + 4]", "0x10055498"], ["0x100a919b", "mov eax, dword ptr [esp + 0x28]", "0x1005549b"], ["0x100a919f", "mov edx, dword ptr [esp + 0x24]", "0x1005549f"], ["0x100a91a3", "push eax", "0x100554a3"]]}, {"orig": [["0x100a91a4", "mov ecx, dword ptr [ecx + ebp*4]"]], "recomp": [["0x100554a4", "mov ecx, dword ptr [ecx + ebx*4]"]]}, {"both": [["0x100a91a7", "mov eax, dword ptr [esp + 0x24]", "0x100554a7"], ["0x100a91ab", "push edx", "0x100554ab"], ["0x100a91ac", "push eax", "0x100554ac"], ["0x100a91ad", "call LegoLOD::FUN_100aacb0 (FUNCTION)", "0x100554ad"], ["0x100a91b2", "test eax, eax", "0x100554b2"], ["0x100a91b4", "je 0x5", "0x100554b4"], ["0x100a91b6", "mov edi, 0xffffffff", "0x100554b6"]]}, {"orig": [["0x100a91bb", "inc ebp"], ["0x100a91bc", "cmp ebp, ebx"]], "recomp": [["0x100554bb", "inc ebx"], ["0x100554bc", "cmp ebx, ebp"]]}, {"both": [["0x100a91be", "jb -0x30", "0x100554be"], ["0x100a91c0", "mov eax, dword ptr [esi + 4]", "0x100554c0"], ["0x100a91c3", "test eax, eax", "0x100554c3"], ["0x100a91c5", "je 0x3a", "0x100554c5"], ["0x100a91c7", "mov ecx, dword ptr [eax + 4]", "0x100554c7"], ["0x100a91ca", "mov eax, dword ptr [ecx]", "0x100554ca"], ["0x100a91cc", "mov ebx, eax", "0x100554cc"], ["0x100a91ce", "cmp eax, ecx", "0x100554ce"], ["0x100a91d0", "je 0x2f", "0x100554d0"], ["0x100a91d2", "mov eax, dword ptr [esp + 0x28]", "0x100554d2"]]}]]]}, {"address": "0x100a9210", "recomp": "0x10055510", "name": "LegoROI::FUN_100a9210", "matching": 1.0, "effective": true, "diff": [["@@ -0x100a924e,21 +0x1005554e,21 @@", [{"both": [["0x100a924e", "mov edi, 0xffffffff", "0x1005554e"], ["0x100a9253", "inc ebp", "0x10055553"], ["0x100a9254", "cmp ebp, dword ptr [esp + 0x10]", "0x10055554"], ["0x100a9258", "jb -0x1f", "0x10055558"], ["0x100a925a", "mov eax, dword ptr [esi + 4]", "0x1005555a"], ["0x100a925d", "test eax, eax", "0x1005555d"], ["0x100a925f", "je 0x28", "0x1005555f"], ["0x100a9261", "mov ecx, dword ptr [eax + 4]", "0x10055561"], ["0x100a9264", "mov eax, dword ptr [ecx]", "0x10055564"], ["0x100a9266", "mov ebp, eax", "0x10055566"]]}, {"orig": [["0x100a9268", "cmp ecx, eax"]], "recomp": [["0x10055568", "cmp eax, ecx"]]}, {"both": [["0x100a926a", "je 0x1d", "0x1005556a"], ["0x100a926c", "push ebx", "0x1005556c"], ["0x100a926d", "mov ecx, dword ptr [ebp + 8]", "0x1005556d"], ["0x100a9270", "call LegoROI::FUN_100a9210 (FUNCTION)", "0x10055570"], ["0x100a9275", "test eax, eax", "0x10055575"], ["0x100a9277", "je 0x5", "0x10055577"], ["0x100a9279", "mov edi, 0xffffffff", "0x10055579"], ["0x100a927e", "mov ebp, dword ptr [ebp]", "0x1005557e"], ["0x100a9281", "mov eax, dword ptr [esi + 4]", "0x10055581"], ["0x100a9284", "cmp dword ptr [eax + 4], ebp", "0x10055584"]]}]]]}, {"address": "0x100a9a50", "recomp": "0x100555a0", "name": "TimeROI::TimeROI", "matching": 1.0, "diff": []}, {"address": "0x100a9ad0", "recomp": "0x10055620", "name": "TimeROI::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100a9b40", "recomp": "0x10055690", "name": "TimeROI::FUN_100a9b40", "matching": 0.7291666666666666, "diff": [["@@ -0x100a9b40,48 +0x10055690,48 @@", [{"both": [["0x100a9b40", "mov eax, dword ptr [esp + 8]", "0x10055690"], ["0x100a9b44", "sub esp, 0x20", "0x10055694"], ["0x100a9b47", "push esi", "0x10055697"], ["0x100a9b48", "push edi", "0x10055698"], ["0x100a9b49", "mov esi, ecx", "0x10055699"], ["0x100a9b4b", "mov edi, eax", "0x1005569b"], ["0x100a9b4d", "sub edi, dword ptr [esi + 0x108]", "0x1005569d"], ["0x100a9b53", "je 0x82", "0x100556a3"], ["0x100a9b59", "mov edx, dword ptr [esp + 0x2c]", "0x100556a9"], ["0x100a9b5d", "mov dword ptr [esi + 0x108], eax", "0x100556ad"]]}, {"orig": [["0x100a9b63", "mov dword ptr [esp + 0xc], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x100a9b6b", "lea eax, [esp + 0x14]"]], "recomp": [["0x100556b3", "mov dword ptr [esp + 0x14], Mx3DPointFloat::`vftable' (VTABLE)"], ["0x100556bb", "lea eax, [esp + 0x1c]"]]}, {"both": [["0x100a9b6f", "mov ecx, dword ptr [edx + 4]", "0x100556bf"], ["0x100a9b72", "add ecx, 0x30", "0x100556c2"], ["0x100a9b75", "mov edx, eax", "0x100556c5"]]}, {"orig": [["0x100a9b77", "mov dword ptr [esp + 0x10], eax"]], "recomp": [["0x100556c7", "mov dword ptr [esp + 0x18], eax"]]}, {"both": [["0x100a9b7b", "mov eax, dword ptr [ecx]", "0x100556cb"], ["0x100a9b7d", "mov dword ptr [edx], eax", "0x100556cd"], ["0x100a9b7f", "mov eax, dword ptr [ecx + 4]", "0x100556cf"], ["0x100a9b82", "mov dword ptr [edx + 4], eax", "0x100556d2"], ["0x100a9b85", "mov ecx, dword ptr [ecx + 8]", "0x100556d5"], ["0x100a9b88", "mov dword ptr [edx + 8], ecx", "0x100556d8"]]}, {"orig": [["0x100a9b8b", "lea ecx, [esp + 0x20]"]], "recomp": [["0x100556db", "lea ecx, [esp + 8]"]]}, {"both": [["0x100a9b8f", "mov eax, dword ptr [esi + 0x14]", "0x100556df"], ["0x100a9b92", "push ecx", "0x100556e2"], ["0x100a9b93", "add eax, 0x30", "0x100556e3"]]}, {"orig": [], "recomp": [["0x100556e6", "lea ecx, [esp + 0x18]"], ["0x100556ea", "mov dword ptr [esp + 0x10], eax"], ["0x100556ee", "mov eax, dword ptr [esp + 0x18]"], ["0x100556f2", "mov dword ptr [esp + 0xc], Vector3::`vftable' (VTABLE)"], ["0x100556fa", "call dword ptr [eax + 0x54]"]]}, {"both": [["0x100a9b96", "lea ecx, [esp + 0x10]", "0x100556fd"]]}, {"orig": [["0x100a9b9a", "mov dword ptr [esp + 0x28], eax"], ["0x100a9b9e", "mov eax, dword ptr [esp + 0x10]"], ["0x100a9ba2", "mov dword ptr [esp + 0x24], Vector3::`vftable' (VTABLE)"], ["0x100a9baa", "call dword ptr [eax + 0x54]"], ["0x100a9bad", "lea ecx, [esp + 8]"]], "recomp": []}, {"both": [["0x100a9bb1", "mov dword ptr [esp + 8], edi", "0x10055701"], ["0x100a9bb5", "fild dword ptr [esp + 8]", "0x10055705"]]}, {"orig": [["0x100a9bb9", "mov edi, dword ptr [esp + 0xc]"]], "recomp": [["0x10055709", "mov edi, dword ptr [esp + 0x14]"]]}, {"both": [["0x100a9bbd", "push ecx", "0x1005570d"]]}, {"orig": [["0x100a9bbe", "lea ecx, [esp + 0x10]"]], "recomp": [["0x1005570e", "lea ecx, [esp + 0x18]"]]}, {"both": [["0x100a9bc2", "fmul qword ptr [0.001 (FLOAT)]", "0x10055712"]]}, {"orig": [["0x100a9bc8", "fstp dword ptr [esp + 0xc]"]], "recomp": [["0x10055718", "fstp dword ptr [esp + 0x14]"]]}, {"both": [["0x100a9bcc", "call dword ptr [edi + 0x68]", "0x1005571c"]]}, {"orig": [["0x100a9bcf", "lea ecx, [esp + 0xc]"]], "recomp": [["0x1005571f", "lea ecx, [esp + 0x14]"]]}, {"both": [["0x100a9bd3", "push ecx", "0x10055723"], ["0x100a9bd4", "mov ecx, esi", "0x10055724"], ["0x100a9bd6", "call OrientableROI::FUN_100a5a30 (FUNCTION)", "0x10055726"], ["0x100a9bdb", "pop edi", "0x1005572b"], ["0x100a9bdc", "pop esi", "0x1005572c"], ["0x100a9bdd", "add esp, 0x20", "0x1005572d"], ["0x100a9be0", "ret 8", "0x10055730"]]}]]]}, {"address": "0x100a9bf0", "recomp": "0x10055740", "name": "LegoROI::FUN_100a9bf0", "matching": 1.0, "diff": []}, {"address": "0x100a9c50", "recomp": "0x100557a0", "name": "LegoROI::ColorAliasLookup", "matching": 0.7346938775510204, "diff": [["@@ -0x100a9c50,49 +0x100557a0,49 @@", [{"both": [["0x100a9c50", "sub esp, 4", "0x100557a0"], ["0x100a9c53", "push ebx", "0x100557a3"], ["0x100a9c54", "push esi", "0x100557a4"], ["0x100a9c55", "push edi", "0x100557a5"]]}, {"orig": [["0x100a9c56", "mov ebx, g_roiColorAliases (DATA)"], ["0x100a9c5b", "xor edi, edi"]], "recomp": [["0x100557a6", "xor ebx, ebx"], ["0x100557a8", "mov edi, g_roiColorAliases (DATA)"]]}, {"both": [["0x100a9c5d", "mov esi, dword ptr [esp + 0x14]", "0x100557ad"], ["0x100a9c61", "push esi", "0x100557b1"]]}, {"orig": [["0x100a9c62", "mov eax, dword ptr [ebx]"]], "recomp": [["0x100557b2", "mov eax, dword ptr [edi]"]]}, {"both": [["0x100a9c64", "push eax", "0x100557b4"], ["0x100a9c65", "call __strcmpi (FUNCTION)", "0x100557b5"], ["0x100a9c6a", "add esp, 8", "0x100557ba"], ["0x100a9c6d", "test eax, eax", "0x100557bd"], ["0x100a9c6f", "je 0x15", "0x100557bf"]]}, {"orig": [["0x100a9c71", "add ebx, 0x14"], ["0x100a9c74", "inc edi"], ["0x100a9c75", "cmp ebx, g_roiConfig (DATA)"]], "recomp": [["0x100557c1", "add edi, 0x14"], ["0x100557c4", "inc ebx"], ["0x100557c5", "cmp edi, g_roiConfig (DATA)"]]}, {"both": [["0x100a9c7b", "jb -0x1c", "0x100557cb"], ["0x100a9c7d", "xor al, al", "0x100557cd"], ["0x100a9c7f", "pop edi", "0x100557cf"], ["0x100a9c80", "pop esi", "0x100557d0"], ["0x100a9c81", "pop ebx", "0x100557d1"], ["0x100a9c82", "add esp, 4", "0x100557d2"], ["0x100a9c85", "ret ", "0x100557d5"]]}, {"orig": [["0x100a9c86", "shl edi, 2"]], "recomp": [["0x100557d6", "shl ebx, 2"]]}, {"both": [["0x100a9c89", "mov edx, dword ptr [esp + 0x18]", "0x100557d9"], ["0x100a9c8d", "mov eax, dword ptr [esp + 0x1c]", "0x100557dd"]]}, {"orig": [["0x100a9c91", "lea ecx, [edi + edi*4]"], ["0x100a9c94", "fild dword ptr [ecx + 0x101011b4]"]], "recomp": [["0x100557e1", "lea ecx, [ebx + ebx*4]"], ["0x100557e4", "fild dword ptr [ecx + 0x100bd8e4]"]]}, {"both": [["0x100a9c9a", "fmul qword ptr [0.00392156862745098 (FLOAT)]", "0x100557ea"], ["0x100a9ca0", "mov ebx, dword ptr [esp + 0x20]", "0x100557f0"], ["0x100a9ca4", "fstp dword ptr [edx]", "0x100557f4"]]}, {"orig": [["0x100a9ca6", "fild dword ptr [ecx + 0x101011b8]"]], "recomp": [["0x100557f6", "fild dword ptr [ecx + 0x100bd8e8]"]]}, {"both": [["0x100a9cac", "fmul qword ptr [0.00392156862745098 (FLOAT)]", "0x100557fc"], ["0x100a9cb2", "fstp dword ptr [eax]", "0x10055802"]]}, {"orig": [["0x100a9cb4", "fild dword ptr [ecx + 0x101011bc]"]], "recomp": [["0x10055804", "fild dword ptr [ecx + 0x100bd8ec]"]]}, {"both": [["0x100a9cba", "fmul qword ptr [0.00392156862745098 (FLOAT)]", "0x1005580a"], ["0x100a9cc0", "fstp dword ptr [ebx]", "0x10055810"]]}, {"orig": [["0x100a9cc2", "fild dword ptr [ecx + 0x101011c0]"], ["0x100a9cc8", "mov eax, dword ptr [ecx + 0x101011c0]"]], "recomp": [["0x10055812", "fild dword ptr [ecx + 0x100bd8f0]"], ["0x10055818", "mov eax, dword ptr [ecx + 0x100bd8f0]"]]}, {"both": [["0x100a9cce", "mov ecx, dword ptr [esp + 0x24]", "0x1005581e"], ["0x100a9cd2", "mov al, 1", "0x10055822"], ["0x100a9cd4", "pop edi", "0x10055824"], ["0x100a9cd5", "fmul qword ptr [0.00392156862745098 (FLOAT)]", "0x10055825"], ["0x100a9cdb", "pop esi", "0x1005582b"], ["0x100a9cdc", "pop ebx", "0x1005582c"], ["0x100a9cdd", "fstp dword ptr [ecx]", "0x1005582d"], ["0x100a9cdf", "add esp, 4", "0x1005582f"], ["0x100a9ce2", "ret ", "0x10055832"]]}]]]}, {"address": "0x100a9cf0", "recomp": "0x10055840", "name": "LegoROI::FUN_100a9cf0", "matching": 0.0, "stub": true}, {"address": "0x100a9d30", "recomp": "0x10055850", "name": "LegoROI::FUN_100a9d30", "matching": 1.0, "diff": []}, {"address": "0x100a9d40", "recomp": "0x10055860", "name": "LegoROI::SetName", "matching": 1.0, "diff": []}, {"address": "0x100a9e10", "recomp": "0x100558f0", "name": "LegoROI::SetDisplayBB", "matching": 1.0, "diff": []}, {"address": "0x100a9e20", "recomp": "0x100546b0", "name": "ViewROI::~ViewROI", "matching": 1.0, "diff": []}, {"address": "0x100a9eb0", "recomp": "0x1004e8e0", "name": "ViewROI::IntrinsicImportance", "matching": 1.0, "diff": []}, {"address": "0x100a9ec0", "recomp": "0x1004e8f0", "name": "ViewROI::GetGeometry", "matching": 1.0, "diff": []}, {"address": "0x100a9ed0", "recomp": "0x1004e900", "name": "ViewROI::GetGeometry", "matching": 1.0, "diff": []}, {"address": "0x100a9ee0", "recomp": "0x1004e910", "name": "ViewROI::UpdateWorldData", "matching": 1.0, "diff": []}, {"address": "0x100a9fc0", "recomp": "0x1004e9f0", "name": "ViewROI::VTable0x24", "matching": 1.0, "diff": []}, {"address": "0x100aa0a0", "recomp": "0x1004ead0", "name": "ViewROI::SetLocalTransform", "matching": 1.0, "diff": []}, {"address": "0x100aa180", "recomp": "0x1004ebb0", "name": "ViewROI::VTable0x1c", "matching": 1.0, "diff": []}, {"address": "0x100aa250", "recomp": "0x10054740", "name": "ViewROI::`scalar deleting destructor'", "matching": 0.8888888888888888, "diff": [["@@ -0x100aa250,28 +0x10054740,28 @@", [{"both": [["0x100aa250", "mov eax, dword ptr fs:[0]", "0x10054740"], ["0x100aa256", "push ebp", "0x10054746"], ["0x100aa257", "mov ebp, esp", "0x10054747"], ["0x100aa259", "push -1", "0x10054749"], ["0x100aa25b", "push <OFFSET1>", "0x1005474b"], ["0x100aa260", "mov dword ptr [ecx], ViewROI::`vftable' (VTABLE)", "0x10054750"], ["0x100aa266", "push eax", "0x10054756"], ["0x100aa267", "mov dword ptr fs:[0], esp", "0x10054757"], ["0x100aa26e", "sub esp, 4", "0x1005475e"], ["0x100aa271", "mov dword ptr [ebp - 4], 0", "0x10054761"]]}, {"orig": [], "recomp": [["0x10054768", "mov eax, dword ptr [ecx + 8]"]]}, {"both": [["0x100aa278", "mov dword ptr [ebp - 0x10], ecx", "0x1005476b"]]}, {"orig": [["0x100aa27b", "mov ecx, dword ptr [ecx + 8]"], ["0x100aa27e", "test ecx, ecx"]], "recomp": [["0x1005476e", "test eax, eax"]]}, {"both": [["0x100aa280", "je 0xe", "0x10054770"]]}, {"orig": [["0x100aa282", "dec dword ptr [ecx + 0x10]"]], "recomp": [["0x10054772", "dec dword ptr [eax + 0x10]"]]}, {"both": [["0x100aa285", "jne 0x9", "0x10054775"]]}, {"orig": [["0x100aa287", "push ecx"], ["0x100aa288", "mov ecx, dword ptr [ecx + 0x14]"]], "recomp": [["0x10054777", "push eax"], ["0x10054778", "mov ecx, dword ptr [eax + 0x14]"]]}, {"both": [["0x100aa28b", "call ViewLODListManager::Destroy (FUNCTION)", "0x1005477b"], ["0x100aa290", "mov eax, dword ptr [ebp - 0x10]", "0x10054780"], ["0x100aa293", "mov dword ptr [eax + 8], 0", "0x10054783"], ["0x100aa29a", "mov ecx, dword ptr [eax + 0xdc]", "0x1005478a"], ["0x100aa2a0", "test ecx, ecx", "0x10054790"], ["0x100aa2a2", "je 0x6", "0x10054792"], ["0x100aa2a4", "push 1", "0x10054794"], ["0x100aa2a6", "mov eax, dword ptr [ecx]", "0x10054796"], ["0x100aa2a8", "call dword ptr [eax]", "0x10054798"], ["0x100aa2aa", "mov dword ptr [ebp - 4], 0xffffffff", "0x1005479a"]]}]]]}, {"address": "0x100aa2f0", "recomp": "0x100547e0", "name": "OrientableROI::~OrientableROI", "matching": 1.0, "diff": []}, {"address": "0x100aa340", "recomp": "0x10055900", "name": "LegoROI::IntrinsicImportance", "matching": 1.0, "diff": []}, {"address": "0x100aa350", "recomp": "0x10055910", "name": "LegoROI::UpdateWorldBoundingVolumes", "matching": 1.0, "diff": []}, {"address": "0x100aa380", "recomp": "0x10055940", "name": "LegoLOD::LegoLOD", "matching": 1.0, "diff": []}, {"address": "0x100aa430", "recomp": "0x10055a90", "name": "LegoLOD::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100aa450", "recomp": "0x10055ab0", "name": "LegoLOD::~LegoLOD", "matching": 1.0, "diff": []}, {"address": "0x100aa500", "recomp": "0x1004ec80", "name": "ViewROI::SetUnk101013d8", "matching": 1.0, "diff": []}, {"address": "0x100aa510", "recomp": "0x10055b60", "name": "LegoLOD::Read", "matching": 0.6200873362445415, "diff": [["@@ -0x100aa510,421 +0x10055b60,421 @@", [{"both": [["0x100aa510", "mov eax, dword ptr fs:[0]", "0x10055b60"], ["0x100aa516", "push ebp", "0x10055b66"], ["0x100aa517", "mov ebp, esp", "0x10055b67"], ["0x100aa519", "push -1", "0x10055b69"], ["0x100aa51b", "push <OFFSET1>", "0x10055b6b"], ["0x100aa520", "push eax", "0x10055b70"], ["0x100aa521", "mov dword ptr fs:[0], esp", "0x10055b71"]]}, {"orig": [["0x100aa528", "sub esp, 0x174"]], "recomp": [["0x10055b78", "sub esp, 0x178"]]}, {"both": [["0x100aa52e", "push ebx", "0x10055b7e"], ["0x100aa52f", "push esi", "0x10055b7f"], ["0x100aa530", "push edi", "0x10055b80"], ["0x100aa531", "mov ebx, ecx", "0x10055b81"], ["0x100aa533", "xor esi, esi", "0x10055b83"]]}, {"orig": [["0x100aa535", "mov dword ptr [ebp - 0x3c], esi"], ["0x100aa538", "mov dword ptr [ebp - 0x38], esi"], ["0x100aa53b", "mov dword ptr [ebp - 0x40], esi"], ["0x100aa53e", "mov dword ptr [ebp - 0x48], esi"]], "recomp": [["0x10055b85", "mov dword ptr [ebp - 0x30], esi"], ["0x10055b88", "mov dword ptr [ebp - 0x2c], esi"]]}, {"both": [["0x100aa541", "mov eax, dword ptr [ebp + 0x10]", "0x10055b8b"]]}, {"orig": [], "recomp": [["0x10055b8e", "mov dword ptr [ebp - 0x34], esi"]]}, {"both": [["0x100aa544", "lea edi, [ebx + 8]", "0x10055b91"]]}, {"orig": [], "recomp": [["0x10055b94", "mov dword ptr [ebp - 0x44], esi"]]}, {"both": [["0x100aa547", "push 4", "0x10055b97"]]}, {"orig": [["0x100aa549", "mov dword ptr [ebp - 0x34], esi"], ["0x100aa54c", "push edi"], ["0x100aa54d", "mov dword ptr [ebp - 0x30], esi"]], "recomp": [["0x10055b99", "mov dword ptr [ebp - 0x28], esi"], ["0x10055b9c", "push edi"], ["0x10055b9d", "mov dword ptr [ebp - 0x24], esi"]]}, {"both": [["0x100aa550", "mov ecx, dword ptr [eax]", "0x10055ba0"], ["0x100aa552", "mov edx, dword ptr [ecx + 4]", "0x10055ba2"], ["0x100aa555", "mov ecx, eax", "0x10055ba5"]]}, {"orig": [["0x100aa557", "mov dword ptr [ebp - 0x24], edx"]], "recomp": [["0x10055ba7", "mov dword ptr [ebp - 0x1c], edx"]]}, {"both": [["0x100aa55a", "call edx", "0x10055baa"], ["0x100aa55c", "test eax, eax", "0x10055bac"]]}, {"orig": [["0x100aa55e", "jne 0x1fe"]], "recomp": [["0x10055bae", "jne 0x204"]]}, {"both": [["0x100aa564", "test byte ptr [edi], 4", "0x10055bb4"]]}, {"orig": [["0x100aa567", "jne 0x614"]], "recomp": [["0x10055bb7", "jne 0x61a"]]}, {"both": [["0x100aa56d", "mov ecx, dword ptr [ebp + 8]", "0x10055bbd"], ["0x100aa570", "mov eax, dword ptr [ecx]", "0x10055bc0"], ["0x100aa572", "call dword ptr [eax + 0x20]", "0x10055bc2"], ["0x100aa575", "push 4", "0x10055bc5"], ["0x100aa577", "lea ecx, [ebx + 0x10]", "0x10055bc7"], ["0x100aa57a", "push ecx", "0x10055bca"], ["0x100aa57b", "mov dword ptr [ebx + 4], eax", "0x10055bcb"], ["0x100aa57e", "mov ecx, dword ptr [ebp + 0x10]", "0x10055bce"]]}, {"orig": [["0x100aa581", "call dword ptr [ebp - 0x24]"], ["0x100aa584", "test eax, eax"], ["0x100aa586", "jne 0x1d6"]], "recomp": [["0x10055bd1", "call dword ptr [ebp - 0x1c]"], ["0x10055bd4", "test eax, eax"], ["0x10055bd6", "jne 0x1dc"]]}, {"both": [["0x100aa58c", "mov eax, dword ptr [ebx + 0x10]", "0x10055bdc"], ["0x100aa58f", "test eax, eax", "0x10055bdf"], ["0x100aa591", "jne 0x8", "0x10055be1"], ["0x100aa593", "and dword ptr [edi], 0xffffffef", "0x10055be3"]]}, {"orig": [["0x100aa596", "jmp 0x5e6"]], "recomp": [["0x10055be6", "jmp 0x5ec"]]}, {"both": [["0x100aa59b", "shl eax, 3", "0x10055beb"], ["0x100aa59e", "or dword ptr [edi], 0x10", "0x10055bee"], ["0x100aa5a1", "push eax", "0x10055bf1"], ["0x100aa5a2", "call ??2@YAPAXI@Z (FUNCTION)", "0x10055bf2"], ["0x100aa5a7", "add esp, 4", "0x10055bf7"]]}, {"orig": [["0x100aa5aa", "mov edi, eax"], ["0x100aa5ac", "mov dword ptr [ebx + 0xc], eax"], ["0x100aa5af", "xor eax, eax"]], "recomp": []}, {"both": [["0x100aa5b1", "mov ecx, dword ptr [ebx + 0x10]", "0x10055bfa"], ["0x100aa5b4", "shl ecx, 3", "0x10055bfd"]]}, {"orig": [], "recomp": [["0x10055c00", "mov edi, eax"]]}, {"both": [["0x100aa5b7", "shr ecx, 2", "0x10055c02"]]}, {"orig": [], "recomp": [["0x10055c05", "mov dword ptr [ebx + 0xc], eax"], ["0x10055c08", "xor eax, eax"]]}, {"both": [["0x100aa5ba", "rep stosd dword ptr es:[edi], eax", "0x10055c0a"], ["0x100aa5bc", "mov eax, dword ptr [ebx + 0x10]", "0x10055c0c"], ["0x100aa5bf", "push 4", "0x10055c0f"], ["0x100aa5c1", "dec eax", "0x10055c11"]]}, {"orig": [["0x100aa5c2", "lea ecx, [ebp - 0x70]"], ["0x100aa5c5", "push ecx"], ["0x100aa5c6", "mov dword ptr [ebp - 0x6c], eax"], ["0x100aa5c9", "mov dword ptr [ebp - 0x4c], 0"], ["0x100aa5d0", "mov ecx, dword ptr [ebp + 0x10]"], ["0x100aa5d3", "call dword ptr [ebp - 0x24]"], ["0x100aa5d6", "test eax, eax"], ["0x100aa5d8", "jne 0x184"], ["0x100aa5de", "mov ax, word ptr [ebp - 0x6e]"]], "recomp": [["0x10055c12", "lea ecx, [ebp - 0x74]"], ["0x10055c15", "push ecx"], ["0x10055c16", "mov dword ptr [ebp - 0x70], eax"], ["0x10055c19", "mov dword ptr [ebp - 0x48], 0"], ["0x10055c20", "mov ecx, dword ptr [ebp + 0x10]"], ["0x10055c23", "call dword ptr [ebp - 0x1c]"], ["0x10055c26", "test eax, eax"], ["0x10055c28", "jne 0x18a"], ["0x10055c2e", "mov ax, word ptr [ebp - 0x72]"]]}, {"both": [["0x100aa5e2", "xor edi, edi", "0x10055c32"]]}, {"orig": [["0x100aa5e4", "mov di, word ptr [ebp - 0x70]"]], "recomp": [["0x10055c34", "mov di, word ptr [ebp - 0x74]"]]}, {"both": [["0x100aa5e8", "push 4", "0x10055c38"], ["0x100aa5ea", "shr ax, 1", "0x10055c3a"], ["0x100aa5ee", "and edi, 0x7fff", "0x10055c3e"], ["0x100aa5f4", "movzx ecx, ax", "0x10055c44"]]}, {"orig": [["0x100aa5f7", "lea edx, [ebp - 0x48]"], ["0x100aa5fa", "mov dword ptr [ebp - 0x2c], ecx"]], "recomp": [["0x10055c47", "lea edx, [ebp - 0x44]"], ["0x10055c4a", "mov dword ptr [ebp - 0x40], ecx"]]}, {"both": [["0x100aa5fd", "push edx", "0x10055c4d"], ["0x100aa5fe", "mov ecx, dword ptr [ebp + 0x10]", "0x10055c4e"]]}, {"orig": [["0x100aa601", "call dword ptr [ebp - 0x24]"], ["0x100aa604", "test eax, eax"], ["0x100aa606", "jne 0x156"]], "recomp": [["0x10055c51", "call dword ptr [ebp - 0x1c]"], ["0x10055c54", "test eax, eax"], ["0x10055c56", "jne 0x15c"]]}, {"both": [["0x100aa60c", "test edi, edi", "0x10055c5c"], ["0x100aa60e", "jle 0x26", "0x10055c5e"], ["0x100aa610", "lea eax, [edi + edi*2]", "0x10055c60"], ["0x100aa613", "lea edi, [eax*4]", "0x10055c63"], ["0x100aa61a", "push edi", "0x10055c6a"], ["0x100aa61b", "call ??2@YAPAXI@Z (FUNCTION)", "0x10055c6b"], ["0x100aa620", "add esp, 4", "0x10055c70"], ["0x100aa623", "mov ecx, dword ptr [ebp + 0x10]", "0x10055c73"]]}, {"orig": [["0x100aa626", "mov dword ptr [ebp - 0x38], eax"], ["0x100aa629", "push edi"], ["0x100aa62a", "push eax"], ["0x100aa62b", "call dword ptr [ebp - 0x24]"], ["0x100aa62e", "test eax, eax"], ["0x100aa630", "jne 0x12c"], ["0x100aa636", "cmp dword ptr [ebp - 0x2c], 0"]], "recomp": [["0x10055c76", "mov dword ptr [ebp - 0x2c], eax"], ["0x10055c79", "push edi"], ["0x10055c7a", "push eax"], ["0x10055c7b", "call dword ptr [ebp - 0x1c]"], ["0x10055c7e", "test eax, eax"], ["0x10055c80", "jne 0x132"], ["0x10055c86", "cmp dword ptr [ebp - 0x40], 0"]]}, {"both": [["0x100aa63a", "jle 0x29", "0x10055c8a"]]}, {"orig": [["0x100aa63c", "mov eax, dword ptr [ebp - 0x2c]"]], "recomp": [["0x10055c8c", "mov eax, dword ptr [ebp - 0x40]"]]}, {"both": [["0x100aa63f", "lea ecx, [eax + eax*2]", "0x10055c8f"], ["0x100aa642", "lea edi, [ecx*4]", "0x10055c92"], ["0x100aa649", "push edi", "0x10055c99"], ["0x100aa64a", "call ??2@YAPAXI@Z (FUNCTION)", "0x10055c9a"], ["0x100aa64f", "add esp, 4", "0x10055c9f"], ["0x100aa652", "mov ecx, dword ptr [ebp + 0x10]", "0x10055ca2"]]}, {"orig": [["0x100aa655", "mov dword ptr [ebp - 0x3c], eax"], ["0x100aa658", "push edi"], ["0x100aa659", "push eax"], ["0x100aa65a", "call dword ptr [ebp - 0x24]"], ["0x100aa65d", "test eax, eax"], ["0x100aa65f", "jne 0xfd"], ["0x100aa665", "cmp dword ptr [ebp - 0x48], 0"]], "recomp": [["0x10055ca5", "mov dword ptr [ebp - 0x30], eax"], ["0x10055ca8", "push edi"], ["0x10055ca9", "push eax"], ["0x10055caa", "call dword ptr [ebp - 0x1c]"], ["0x10055cad", "test eax, eax"], ["0x10055caf", "jne 0x103"], ["0x10055cb5", "cmp dword ptr [ebp - 0x44], 0"]]}, {"both": [["0x100aa669", "jle 0x2b", "0x10055cb9"]]}, {"orig": [["0x100aa66b", "mov eax, dword ptr [ebp - 0x48]"]], "recomp": [["0x10055cbb", "mov eax, dword ptr [ebp - 0x44]"]]}, {"both": [["0x100aa66e", "shl eax, 3", "0x10055cbe"], ["0x100aa671", "push eax", "0x10055cc1"], ["0x100aa672", "call ??2@YAPAXI@Z (FUNCTION)", "0x10055cc2"], ["0x100aa677", "add esp, 4", "0x10055cc7"]]}, {"orig": [["0x100aa67a", "mov dword ptr [ebp - 0x40], eax"], ["0x100aa67d", "mov eax, dword ptr [ebp - 0x48]"], ["0x100aa680", "mov ecx, dword ptr [ebp - 0x40]"]], "recomp": [["0x10055cca", "mov dword ptr [ebp - 0x34], eax"], ["0x10055ccd", "mov eax, dword ptr [ebp - 0x44]"], ["0x10055cd0", "mov ecx, dword ptr [ebp - 0x34]"]]}, {"both": [["0x100aa683", "shl eax, 3", "0x10055cd3"], ["0x100aa686", "push eax", "0x10055cd6"], ["0x100aa687", "push ecx", "0x10055cd7"], ["0x100aa688", "mov ecx, dword ptr [ebp + 0x10]", "0x10055cd8"]]}, {"orig": [["0x100aa68b", "call dword ptr [ebp - 0x24]"], ["0x100aa68e", "test eax, eax"], ["0x100aa690", "jne 0xcc"], ["0x100aa696", "mov dword ptr [ebp - 0x60], 0"]], "recomp": [["0x10055cdb", "call dword ptr [ebp - 0x1c]"], ["0x10055cde", "test eax, eax"], ["0x10055ce0", "jne 0xd2"], ["0x10055ce6", "mov dword ptr [ebp - 0x5c], 0"]]}, {"both": [["0x100aa69d", "cmp dword ptr [ebx + 0x10], 0", "0x10055ced"]]}, {"orig": [["0x100aa6a1", "jbe 0x49e"]], "recomp": [["0x10055cf1", "jbe 0x4a4"]]}, {"both": [["0x100aa6a7", "push 2", "0x10055cf7"]]}, {"orig": [["0x100aa6a9", "lea eax, [ebp - 0x2a]"], ["0x100aa6ac", "push eax"], ["0x100aa6ad", "mov ecx, dword ptr [ebp + 0x10]"], ["0x100aa6b0", "call dword ptr [ebp - 0x24]"], ["0x100aa6b3", "test eax, eax"], ["0x100aa6b5", "jne 0xa7"], ["0x100aa6bb", "mov eax, dword ptr [ebp - 0x2a]"]], "recomp": [["0x10055cf9", "lea eax, [ebp - 0x38]"], ["0x10055cfc", "push eax"], ["0x10055cfd", "mov ecx, dword ptr [ebp + 0x10]"], ["0x10055d00", "call dword ptr [ebp - 0x1c]"], ["0x10055d03", "test eax, eax"], ["0x10055d05", "jne 0xad"], ["0x10055d0b", "mov eax, dword ptr [ebp - 0x38]"]]}, {"both": [["0x100aa6be", "push 2", "0x10055d0e"], ["0x100aa6c0", "and eax, 0xffff", "0x10055d10"]]}, {"orig": [["0x100aa6c5", "lea ecx, [ebp - 0xe]"]], "recomp": [["0x10055d15", "lea ecx, [ebp - 0x6c]"]]}, {"both": [["0x100aa6c8", "push ecx", "0x10055d18"], ["0x100aa6c9", "add dword ptr [ebx + 0x18], eax", "0x10055d19"], ["0x100aa6cc", "mov ecx, dword ptr [ebp + 0x10]", "0x10055d1c"]]}, {"orig": [["0x100aa6cf", "call dword ptr [ebp - 0x24]"], ["0x100aa6d2", "test eax, eax"], ["0x100aa6d4", "jne 0x88"], ["0x100aa6da", "mov eax, dword ptr [ebp - 0x2a]"]], "recomp": [["0x10055d1f", "call dword ptr [ebp - 0x1c]"], ["0x10055d22", "test eax, eax"], ["0x10055d24", "jne 0x8e"], ["0x10055d2a", "mov eax, dword ptr [ebp - 0x38]"]]}, {"both": [["0x100aa6dd", "and eax, 0xffff", "0x10055d2d"], ["0x100aa6e2", "lea eax, [eax + eax*2]", "0x10055d32"], ["0x100aa6e5", "shl eax, 2", "0x10055d35"], ["0x100aa6e8", "push eax", "0x10055d38"], ["0x100aa6e9", "call ??2@YAPAXI@Z (FUNCTION)", "0x10055d39"], ["0x100aa6ee", "add esp, 4", "0x10055d3e"]]}, {"orig": [["0x100aa6f1", "mov dword ptr [ebp - 0x34], eax"], ["0x100aa6f4", "mov eax, dword ptr [ebp - 0x2a]"], ["0x100aa6f7", "mov ecx, dword ptr [ebp - 0x34]"]], "recomp": [["0x10055d41", "mov dword ptr [ebp - 0x28], eax"], ["0x10055d44", "mov eax, dword ptr [ebp - 0x38]"], ["0x10055d47", "mov ecx, dword ptr [ebp - 0x28]"]]}, {"both": [["0x100aa6fa", "and eax, 0xffff", "0x10055d4a"], ["0x100aa6ff", "lea eax, [eax + eax*2]", "0x10055d4f"], ["0x100aa702", "shl eax, 2", "0x10055d52"], ["0x100aa705", "push eax", "0x10055d55"], ["0x100aa706", "push ecx", "0x10055d56"], ["0x100aa707", "mov ecx, dword ptr [ebp + 0x10]", "0x10055d57"]]}, {"orig": [["0x100aa70a", "call dword ptr [ebp - 0x24]"], ["0x100aa70d", "test eax, eax"], ["0x100aa70f", "jne 0x51"]], "recomp": [["0x10055d5a", "call dword ptr [ebp - 0x1c]"], ["0x10055d5d", "test eax, eax"], ["0x10055d5f", "jne 0x57"]]}, {"both": [["0x100aa711", "push 4", "0x10055d61"]]}, {"orig": [["0x100aa713", "lea eax, [ebp - 0x80]"], ["0x100aa716", "push eax"], ["0x100aa717", "mov ecx, dword ptr [ebp + 0x10]"], ["0x100aa71a", "call dword ptr [ebp - 0x24]"], ["0x100aa71d", "test eax, eax"], ["0x100aa71f", "jne 0x41"], ["0x100aa721", "cmp dword ptr [ebp - 0x80], 0"]], "recomp": [["0x10055d63", "lea eax, [ebp - 0x84]"], ["0x10055d69", "push eax"], ["0x10055d6a", "mov ecx, dword ptr [ebp + 0x10]"], ["0x10055d6d", "call dword ptr [ebp - 0x1c]"], ["0x10055d70", "test eax, eax"], ["0x10055d72", "jne 0x44"], ["0x10055d74", "cmp dword ptr [ebp - 0x84], 0"]]}, {"both": [["0x100aa725", "jbe 0xa7", "0x10055d7b"]]}, {"orig": [["0x100aa72b", "mov eax, dword ptr [ebp - 0x2a]"]], "recomp": [["0x10055d81", "mov eax, dword ptr [ebp - 0x38]"]]}, {"both": [["0x100aa72e", "and eax, 0xffff", "0x10055d84"], ["0x100aa733", "lea eax, [eax + eax*2]", "0x10055d89"], ["0x100aa736", "shl eax, 2", "0x10055d8c"], ["0x100aa739", "push eax", "0x10055d8f"], ["0x100aa73a", "call ??2@YAPAXI@Z (FUNCTION)", "0x10055d90"], ["0x100aa73f", "add esp, 4", "0x10055d95"]]}, {"orig": [["0x100aa742", "mov dword ptr [ebp - 0x30], eax"], ["0x100aa745", "mov eax, dword ptr [ebp - 0x2a]"], ["0x100aa748", "mov ecx, dword ptr [ebp - 0x30]"]], "recomp": [["0x10055d98", "mov dword ptr [ebp - 0x24], eax"], ["0x10055d9b", "mov eax, dword ptr [ebp - 0x38]"], ["0x10055d9e", "mov ecx, dword ptr [ebp - 0x24]"]]}, {"both": [["0x100aa74b", "and eax, 0xffff", "0x10055da1"], ["0x100aa750", "lea eax, [eax + eax*2]", "0x10055da6"], ["0x100aa753", "shl eax, 2", "0x10055da9"], ["0x100aa756", "push eax", "0x10055dac"], ["0x100aa757", "push ecx", "0x10055dad"], ["0x100aa758", "mov ecx, dword ptr [ebp + 0x10]", "0x10055dae"]]}, {"orig": [["0x100aa75b", "call dword ptr [ebp - 0x24]"]], "recomp": [["0x10055db1", "call dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100aa75e", "test eax, eax", "0x10055db4"], ["0x100aa760", "je 0x77", "0x10055db6"]]}, {"orig": [["0x100aa762", "cmp dword ptr [ebp - 0x3c], 0"], ["0x100aa766", "je 0xc"], ["0x100aa768", "mov eax, dword ptr [ebp - 0x3c]"], ["0x100aa76b", "push eax"], ["0x100aa76c", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100aa771", "add esp, 4"], ["0x100aa774", "cmp dword ptr [ebp - 0x38], 0"], ["0x100aa778", "je 0xc"], ["0x100aa77a", "mov eax, dword ptr [ebp - 0x38]"], ["0x100aa77d", "push eax"], ["0x100aa77e", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100aa783", "add esp, 4"], ["0x100aa786", "cmp dword ptr [ebp - 0x40], 0"], ["0x100aa78a", "je 0xc"], ["0x100aa78c", "mov eax, dword ptr [ebp - 0x40]"]], "recomp": [["0x10055db8", "cmp dword ptr [ebp - 0x30], 0"], ["0x10055dbc", "je 0xc"], ["0x10055dbe", "mov eax, dword ptr [ebp - 0x30]"], ["0x10055dc1", "push eax"], ["0x10055dc2", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10055dc7", "add esp, 4"], ["0x10055dca", "cmp dword ptr [ebp - 0x2c], 0"], ["0x10055dce", "je 0xc"], ["0x10055dd0", "mov eax, dword ptr [ebp - 0x2c]"], ["0x10055dd3", "push eax"], ["0x10055dd4", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10055dd9", "add esp, 4"], ["0x10055ddc", "cmp dword ptr [ebp - 0x34], 0"], ["0x10055de0", "je 0xc"], ["0x10055de2", "mov eax, dword ptr [ebp - 0x34]"]]}, {"both": [["0x100aa78f", "push eax", "0x10055de5"], ["0x100aa790", "call ??3@YAXPAX@Z (FUNCTION)", "0x10055de6"], ["0x100aa795", "add esp, 4", "0x10055deb"], ["0x100aa798", "test esi, esi", "0x10055dee"], ["0x100aa79a", "je 0x8", "0x10055df0"], ["0x100aa79c", "push 1", "0x10055df2"], ["0x100aa79e", "mov eax, dword ptr [esi]", "0x10055df4"], ["0x100aa7a0", "mov ecx, esi", "0x10055df6"], ["0x100aa7a2", "call dword ptr [eax]", "0x10055df8"]]}, {"orig": [["0x100aa7a4", "cmp dword ptr [ebp - 0x34], 0"], ["0x100aa7a8", "je 0xc"], ["0x100aa7aa", "mov eax, dword ptr [ebp - 0x34]"], ["0x100aa7ad", "push eax"], ["0x100aa7ae", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100aa7b3", "add esp, 4"], ["0x100aa7b6", "cmp dword ptr [ebp - 0x30], 0"], ["0x100aa7ba", "je 0xc"], ["0x100aa7bc", "mov eax, dword ptr [ebp - 0x30]"]], "recomp": [["0x10055dfa", "cmp dword ptr [ebp - 0x28], 0"], ["0x10055dfe", "je 0xc"], ["0x10055e00", "mov eax, dword ptr [ebp - 0x28]"], ["0x10055e03", "push eax"], ["0x10055e04", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10055e09", "add esp, 4"], ["0x10055e0c", "cmp dword ptr [ebp - 0x24], 0"], ["0x10055e10", "je 0xc"], ["0x10055e12", "mov eax, dword ptr [ebp - 0x24]"]]}, {"both": [["0x100aa7bf", "push eax", "0x10055e15"], ["0x100aa7c0", "call ??3@YAXPAX@Z (FUNCTION)", "0x10055e16"], ["0x100aa7c5", "add esp, 4", "0x10055e1b"], ["0x100aa7c8", "mov eax, 0xffffffff", "0x10055e1e"], ["0x100aa7cd", "jmp 0x3b1", "0x10055e23"]]}, {"orig": [["0x100aa7d2", "mov dword ptr [ebp - 0x30], 0"]], "recomp": [["0x10055e28", "mov dword ptr [ebp - 0x24], 0"]]}, {"both": [["0x100aa7d9", "push 0x24", "0x10055e2f"], ["0x100aa7db", "call ??2@YAPAXI@Z (FUNCTION)", "0x10055e31"]]}, {"orig": [["0x100aa7e0", "mov dword ptr [ebp - 0x28], eax"]], "recomp": [["0x10055e36", "mov dword ptr [ebp - 0x20], eax"]]}, {"both": [["0x100aa7e3", "add esp, 4", "0x10055e39"], ["0x100aa7e6", "mov edi, eax", "0x10055e3c"], ["0x100aa7e8", "mov esi, 0", "0x10055e3e"], ["0x100aa7ed", "mov dword ptr [ebp - 4], 0", "0x10055e43"], ["0x100aa7f4", "test edi, edi", "0x10055e4a"], ["0x100aa7f6", "je 0x9", "0x10055e4c"], ["0x100aa7f8", "mov ecx, edi", "0x10055e4e"], ["0x100aa7fa", "call LegoMesh::LegoMesh (FUNCTION)", "0x10055e50"], ["0x100aa7ff", "mov esi, eax", "0x10055e55"]]}, {"orig": [["0x100aa801", "mov dword ptr [ebp - 4], 0xffffffff"]], "recomp": []}, {"both": [["0x100aa808", "mov eax, dword ptr [ebp + 0x10]", "0x10055e57"], ["0x100aa80b", "mov ecx, esi", "0x10055e5a"]]}, {"orig": [], "recomp": [["0x10055e5c", "mov dword ptr [ebp - 4], 0xffffffff"]]}, {"both": [["0x100aa80d", "push eax", "0x10055e63"], ["0x100aa80e", "call LegoMesh::Read (FUNCTION)", "0x10055e64"], ["0x100aa813", "test eax, eax", "0x10055e69"], ["0x100aa815", "jne -0xb9", "0x10055e6b"], ["0x100aa81b", "xor eax, eax", "0x10055e71"], ["0x100aa81d", "mov al, byte ptr [esi + 0xc]", "0x10055e73"], ["0x100aa820", "test eax, eax", "0x10055e76"], ["0x100aa822", "je 0xc", "0x10055e78"], ["0x100aa824", "cmp eax, 2", "0x10055e7a"], ["0x100aa827", "je 0xe", "0x10055e7d"], ["0x100aa829", "mov edi, 3", "0x10055e7f"], ["0x100aa82e", "jmp 0x9", "0x10055e84"], ["0x100aa830", "mov edi, 2", "0x10055e86"], ["0x100aa835", "jmp 0x2", "0x10055e8b"], ["0x100aa837", "xor edi, edi", "0x10055e8d"]]}, {"orig": [["0x100aa839", "mov eax, dword ptr [ebp - 0xe]"]], "recomp": [["0x10055e8f", "mov eax, dword ptr [ebp - 0x6c]"]]}, {"both": [["0x100aa83c", "and eax, 0xffff", "0x10055e92"], ["0x100aa841", "add dword ptr [ebx + 0x14], eax", "0x10055e97"], ["0x100aa844", "mov ecx, dword ptr [esi + 0x18]", "0x10055e9a"], ["0x100aa847", "mov edx, dword ptr [esi + 0x1c]", "0x10055e9d"], ["0x100aa84a", "push ecx", "0x10055ea0"]]}, {"orig": [["0x100aa84b", "mov dword ptr [ebp - 0x20], ecx"], ["0x100aa84e", "mov dword ptr [ebp - 0x44], edx"]], "recomp": [["0x10055ea1", "mov dword ptr [ebp - 0x18], ecx"], ["0x10055ea4", "mov dword ptr [ebp - 0x3c], edx"]]}, {"both": [["0x100aa851", "call LegoLOD::FUN_100aae20 (FUNCTION)", "0x10055ea7"], ["0x100aa856", "add esp, 4", "0x10055eac"], ["0x100aa859", "test al, al", "0x10055eaf"], ["0x100aa85b", "jne 0x1b", "0x10055eb1"]]}, {"orig": [["0x100aa85d", "mov eax, dword ptr [ebp - 0x44]"]], "recomp": [["0x10055eb3", "mov eax, dword ptr [ebp - 0x3c]"]]}, {"both": [["0x100aa860", "push eax", "0x10055eb6"], ["0x100aa861", "call LegoLOD::FUN_100aae20 (FUNCTION)", "0x10055eb7"], ["0x100aa866", "add esp, 4", "0x10055ebc"], ["0x100aa869", "test al, al", "0x10055ebf"], ["0x100aa86b", "jne 0xb", "0x10055ec1"]]}, {"orig": [["0x100aa86d", "mov ecx, dword ptr [ebp - 0x4c]"], ["0x100aa870", "mov dword ptr [ebp - 0x28], ecx"], ["0x100aa873", "inc dword ptr [ebp - 0x4c]"]], "recomp": [["0x10055ec3", "mov ecx, dword ptr [ebp - 0x48]"], ["0x10055ec6", "mov dword ptr [ebp - 0x20], ecx"], ["0x10055ec9", "inc dword ptr [ebp - 0x48]"]]}, {"both": [["0x100aa876", "jmp 0x9", "0x10055ecc"]]}, {"orig": [["0x100aa878", "mov ecx, dword ptr [ebp - 0x6c]"], ["0x100aa87b", "mov dword ptr [ebp - 0x28], ecx"], ["0x100aa87e", "dec dword ptr [ebp - 0x6c]"]], "recomp": [["0x10055ece", "mov ecx, dword ptr [ebp - 0x70]"], ["0x10055ed1", "mov dword ptr [ebp - 0x20], ecx"], ["0x10055ed4", "dec dword ptr [ebp - 0x70]"]]}, {"both": [["0x100aa881", "mov ecx, dword ptr [ebx + 4]", "0x10055ed7"], ["0x100aa884", "push edi", "0x10055eda"]]}, {"orig": [["0x100aa885", "mov eax, dword ptr [ebp - 0x30]"], ["0x100aa888", "mov edx, dword ptr [ebp - 0x34]"]], "recomp": [["0x10055edb", "mov eax, dword ptr [ebp - 0x24]"], ["0x10055ede", "mov edx, dword ptr [ebp - 0x28]"]]}, {"both": [["0x100aa88b", "push eax", "0x10055ee1"], ["0x100aa88c", "push edx", "0x10055ee2"]]}, {"orig": [["0x100aa88d", "mov eax, dword ptr [ebp - 0x40]"], ["0x100aa890", "mov edx, dword ptr [ebp - 0x3c]"]], "recomp": [["0x10055ee3", "mov eax, dword ptr [ebp - 0x34]"], ["0x10055ee6", "mov edx, dword ptr [ebp - 0x30]"]]}, {"both": [["0x100aa893", "push eax", "0x10055ee9"], ["0x100aa894", "push edx", "0x10055eea"]]}, {"orig": [], "recomp": [["0x10055eeb", "mov eax, dword ptr [ebp - 0x2c]"], ["0x10055eee", "push eax"], ["0x10055eef", "mov eax, dword ptr [ebp - 0x6c]"], ["0x10055ef2", "and eax, 0xffff"], ["0x10055ef7", "push eax"]]}, {"both": [["0x100aa895", "mov eax, dword ptr [ebp - 0x38]", "0x10055ef8"]]}, {"orig": [["0x100aa898", "push eax"], ["0x100aa899", "mov eax, dword ptr [ebp - 0xe]"], ["0x100aa89c", "and eax, 0xffff"], ["0x100aa8a1", "push eax"], ["0x100aa8a2", "mov eax, dword ptr [ebp - 0x2a]"]], "recomp": []}, {"both": [["0x100aa8a5", "and eax, 0xffff", "0x10055efb"], ["0x100aa8aa", "push eax", "0x10055f00"], ["0x100aa8ab", "mov eax, dword ptr [ecx]", "0x10055f01"], ["0x100aa8ad", "call dword ptr [eax + 8]", "0x10055f03"], ["0x100aa8b0", "mov edx, dword ptr [ebx + 0xc]", "0x10055f06"]]}, {"orig": [["0x100aa8b3", "mov ecx, dword ptr [ebp - 0x28]"]], "recomp": [["0x10055f09", "mov ecx, dword ptr [ebp - 0x20]"]]}, {"both": [["0x100aa8b6", "mov dword ptr [edx + ecx*8], eax", "0x10055f0c"], ["0x100aa8b9", "mov edx, dword ptr [ebx + 0xc]", "0x10055f0f"], ["0x100aa8bc", "mov ecx, dword ptr [edx + ecx*8]", "0x10055f12"], ["0x100aa8bf", "test ecx, ecx", "0x10055f15"], ["0x100aa8c1", "je -0x165", "0x10055f17"], ["0x100aa8c7", "push edi", "0x10055f1d"], ["0x100aa8c8", "mov eax, dword ptr [ecx]", "0x10055f1e"], ["0x100aa8ca", "call dword ptr [eax + 0x18]", "0x10055f20"]]}, {"orig": [["0x100aa8cd", "cmp dword ptr [ebp - 0x20], 0"]], "recomp": [["0x10055f23", "cmp dword ptr [ebp - 0x18], 0"]]}, {"both": [["0x100aa8d1", "jne 0xd2", "0x10055f27"]]}, {"orig": [["0x100aa8d7", "mov dword ptr [ebp - 0x54], 0"], ["0x100aa8de", "mov dword ptr [ebp - 0x5c], 0"]], "recomp": [["0x10055f2d", "mov dword ptr [ebp - 0x50], 0"], ["0x10055f34", "mov dword ptr [ebp - 0x58], 0"]]}, {"both": [["0x100aa8e5", "mov eax, 0x3f800000", "0x10055f3b"]]}, {"orig": [["0x100aa8ea", "mov dword ptr [ebp - 0x50], eax"], ["0x100aa8ed", "mov dword ptr [ebp - 0x58], eax"]], "recomp": [["0x10055f40", "mov dword ptr [ebp - 0x4c], eax"], ["0x10055f43", "mov dword ptr [ebp - 0x54], eax"]]}, {"both": [["0x100aa8f0", "cmp byte ptr [esi + 0x21], 0", "0x10055f46"], ["0x100aa8f4", "je 0x1e", "0x10055f4a"]]}, {"orig": [["0x100aa8f6", "lea eax, [ebp - 0x5c]"], ["0x100aa8f9", "lea ecx, [ebp - 0x58]"], ["0x100aa8fc", "push eax"], ["0x100aa8fd", "lea edx, [ebp - 0x54]"], ["0x100aa900", "push ecx"], ["0x100aa901", "lea eax, [ebp - 0x50]"]], "recomp": [["0x10055f4c", "lea eax, [ebp - 0x58]"], ["0x10055f4f", "lea ecx, [ebp - 0x54]"], ["0x10055f52", "push eax"], ["0x10055f53", "lea edx, [ebp - 0x50]"], ["0x10055f56", "push ecx"], ["0x10055f57", "lea eax, [ebp - 0x4c]"]]}, {"both": [["0x100aa904", "push edx", "0x10055f5a"]]}, {"orig": [["0x100aa905", "mov ecx, dword ptr [ebp - 0x44]"]], "recomp": [["0x10055f5b", "mov ecx, dword ptr [ebp - 0x3c]"]]}, {"both": [["0x100aa908", "push eax", "0x10055f5e"], ["0x100aa909", "push ecx", "0x10055f5f"], ["0x100aa90a", "call LegoROI::FUN_100a9bf0 (FUNCTION)", "0x10055f60"], ["0x100aa90f", "add esp, 0x14", "0x10055f65"], ["0x100aa912", "jmp 0x72", "0x10055f68"], ["0x100aa914", "lea ecx, [esi + 4]", "0x10055f6a"]]}, {"orig": [["0x100aa917", "lea edx, [ebp - 0x1c]"]], "recomp": [["0x10055f6d", "lea edx, [ebp - 0x14]"]]}, {"both": [["0x100aa91a", "mov ax, word ptr [ecx]", "0x10055f70"], ["0x100aa91d", "mov word ptr [edx], ax", "0x10055f73"], ["0x100aa920", "mov al, byte ptr [ecx + 2]", "0x10055f76"], ["0x100aa923", "mov byte ptr [edx + 2], al", "0x10055f79"], ["0x100aa926", "xor eax, eax", "0x10055f7c"]]}, {"orig": [["0x100aa928", "mov al, byte ptr [ebp - 0x1c]"], ["0x100aa92b", "lea edx, [ebp - 0x18]"], ["0x100aa92e", "mov dword ptr [ebp - 0x20], eax"], ["0x100aa931", "fild dword ptr [ebp - 0x20]"]], "recomp": [["0x10055f7e", "mov al, byte ptr [ebp - 0x14]"], ["0x10055f81", "lea edx, [ebp - 0x10]"], ["0x10055f84", "mov dword ptr [ebp - 0x18], eax"], ["0x10055f87", "fild dword ptr [ebp - 0x18]"]]}, {"both": [["0x100aa934", "fmul qword ptr [0.00392156862745098 (FLOAT)]", "0x10055f8a"]]}, {"orig": [["0x100aa93a", "fstp dword ptr [ebp - 0x50]"]], "recomp": [["0x10055f90", "fstp dword ptr [ebp - 0x4c]"]]}, {"both": [["0x100aa93d", "mov ax, word ptr [ecx]", "0x10055f93"], ["0x100aa940", "mov word ptr [edx], ax", "0x10055f96"], ["0x100aa943", "mov al, byte ptr [ecx + 2]", "0x10055f99"], ["0x100aa946", "mov byte ptr [edx + 2], al", "0x10055f9c"], ["0x100aa949", "xor eax, eax", "0x10055f9f"]]}, {"orig": [["0x100aa94b", "mov al, byte ptr [ebp - 0x17]"], ["0x100aa94e", "lea edx, [ebp - 0x14]"], ["0x100aa951", "mov dword ptr [ebp - 0x20], eax"], ["0x100aa954", "fild dword ptr [ebp - 0x20]"]], "recomp": [["0x10055fa1", "mov al, byte ptr [ebp - 0xf]"], ["0x10055fa4", "lea edx, [ebp - 0x3f]"], ["0x10055fa7", "mov dword ptr [ebp - 0x18], eax"], ["0x10055faa", "fild dword ptr [ebp - 0x18]"]]}, {"both": [["0x100aa957", "fmul qword ptr [0.00392156862745098 (FLOAT)]", "0x10055fad"]]}, {"orig": [["0x100aa95d", "fstp dword ptr [ebp - 0x54]"]], "recomp": [["0x10055fb3", "fstp dword ptr [ebp - 0x50]"]]}, {"both": [["0x100aa960", "mov ax, word ptr [ecx]", "0x10055fb6"], ["0x100aa963", "mov cl, byte ptr [ecx + 2]", "0x10055fb9"], ["0x100aa966", "mov word ptr [edx], ax", "0x10055fbc"], ["0x100aa969", "xor eax, eax", "0x10055fbf"], ["0x100aa96b", "mov byte ptr [edx + 2], cl", "0x10055fc1"]]}, {"orig": [["0x100aa96e", "mov al, byte ptr [ebp - 0x12]"], ["0x100aa971", "mov dword ptr [ebp - 0x20], eax"], ["0x100aa974", "fild dword ptr [ebp - 0x20]"]], "recomp": [["0x10055fc4", "mov al, byte ptr [ebp - 0x3d]"], ["0x10055fc7", "mov dword ptr [ebp - 0x18], eax"], ["0x10055fca", "fild dword ptr [ebp - 0x18]"]]}, {"both": [["0x100aa977", "fmul qword ptr [0.00392156862745098 (FLOAT)]", "0x10055fcd"]]}, {"orig": [["0x100aa97d", "fstp dword ptr [ebp - 0x58]"]], "recomp": [["0x10055fd3", "fstp dword ptr [ebp - 0x54]"]]}, {"both": [["0x100aa980", "mov ecx, dword ptr [esi + 8]", "0x10055fd6"]]}, {"orig": [["0x100aa983", "mov dword ptr [ebp - 0x5c], ecx"]], "recomp": [["0x10055fd9", "mov dword ptr [ebp - 0x58], ecx"]]}, {"both": [["0x100aa986", "mov eax, dword ptr [ebx + 0xc]", "0x10055fdc"]]}, {"orig": [["0x100aa989", "mov ecx, dword ptr [ebp - 0x28]"], ["0x100aa98c", "mov edx, dword ptr [ebp - 0x58]"], ["0x100aa98f", "mov edi, dword ptr [ebp - 0x54]"]], "recomp": [["0x10055fdf", "mov ecx, dword ptr [ebp - 0x20]"], ["0x10055fe2", "mov edx, dword ptr [ebp - 0x54]"], ["0x10055fe5", "mov edi, dword ptr [ebp - 0x50]"]]}, {"both": [["0x100aa992", "mov ecx, dword ptr [eax + ecx*8]", "0x10055fe8"]]}, {"orig": [["0x100aa995", "mov eax, dword ptr [ebp - 0x5c]"]], "recomp": [["0x10055feb", "mov eax, dword ptr [ebp - 0x58]"]]}, {"both": [["0x100aa998", "push eax", "0x10055fee"], ["0x100aa999", "push edx", "0x10055fef"], ["0x100aa99a", "push edi", "0x10055ff0"]]}, {"orig": [["0x100aa99b", "mov eax, dword ptr [ebp - 0x50]"]], "recomp": [["0x10055ff1", "mov eax, dword ptr [ebp - 0x4c]"]]}, {"both": [["0x100aa99e", "push eax", "0x10055ff4"], ["0x100aa99f", "mov edi, dword ptr [ecx]", "0x10055ff5"], ["0x100aa9a1", "call dword ptr [edi + 8]", "0x10055ff7"], ["0x100aa9a4", "jmp 0x129", "0x10055ffa"], ["0x100aa9a9", "cmp byte ptr [esi + 0x21], 0", "0x10055fff"], ["0x100aa9ad", "je 0x18", "0x10056003"], ["0x100aa9af", "push 0x100", "0x10056005"]]}, {"orig": [["0x100aa9b4", "lea eax, [ebp - 0x180]"], ["0x100aa9ba", "push eax"], ["0x100aa9bb", "mov ecx, dword ptr [ebp - 0x20]"]], "recomp": [["0x1005600a", "lea eax, [ebp - 0x184]"], ["0x10056010", "push eax"], ["0x10056011", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100aa9be", "push ecx", "0x10056014"], ["0x100aa9bf", "call LegoROI::FUN_100a9cf0 (FUNCTION)", "0x10056015"], ["0x100aa9c4", "add esp, 0xc", "0x1005601a"], ["0x100aa9c7", "mov eax, dword ptr [esi + 0x18]", "0x1005601d"], ["0x100aa9ca", "mov edx, dword ptr [ebp + 0xc]", "0x10056020"]]}, {"orig": [["0x100aa9cd", "mov dword ptr [ebp - 0x44], 0"]], "recomp": [["0x10056023", "mov dword ptr [ebp - 0x3c], 0"]]}, {"both": [["0x100aa9d4", "mov ecx, dword ptr [edx + 0xc]", "0x1005602a"], ["0x100aa9d7", "mov dword ptr [ebp - 0x68], eax", "0x1005602d"]]}, {"orig": [["0x100aa9da", "mov dword ptr [ebp - 0x20], ecx"]], "recomp": [["0x10056030", "mov dword ptr [ebp - 0x18], ecx"]]}, {"both": [["0x100aa9dd", "mov eax, dword ptr [ecx + 4]", "0x10056033"]]}, {"orig": [["0x100aa9e0", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10056036", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100aa9e6", "je 0x41", "0x1005603c"], ["0x100aa9e8", "mov ecx, dword ptr [eax + 0xc]", "0x1005603e"], ["0x100aa9eb", "mov edi, dword ptr [ebp - 0x68]", "0x10056041"], ["0x100aa9ee", "mov dl, byte ptr [ecx]", "0x10056044"], ["0x100aa9f0", "cmp dl, byte ptr [edi]", "0x10056046"], ["0x100aa9f2", "jne 0x1a", "0x10056048"], ["0x100aa9f4", "or dl, dl", "0x1005604a"], ["0x100aa9f6", "je 0x12", "0x1005604c"], ["0x100aa9f8", "mov dl, byte ptr [ecx + 1]", "0x1005604e"], ["0x100aa9fb", "cmp dl, byte ptr [edi + 1]", "0x10056051"]]}]], ["@@ -0x100aaa00,29 +0x10056056,29 @@", [{"both": [["0x100aaa00", "add ecx, 2", "0x10056056"], ["0x100aaa03", "add edi, 2", "0x10056059"], ["0x100aaa06", "or dl, dl", "0x1005605c"], ["0x100aaa08", "jne -0x1c", "0x1005605e"], ["0x100aaa0a", "xor ecx, ecx", "0x10056060"], ["0x100aaa0c", "jmp 0x5", "0x10056062"], ["0x100aaa0e", "sbb ecx, ecx", "0x10056064"], ["0x100aaa10", "sbb ecx, -1", "0x10056066"], ["0x100aaa13", "test ecx, ecx", "0x10056069"], ["0x100aaa15", "jg 0x7", "0x1005606b"]]}, {"orig": [["0x100aaa17", "mov dword ptr [ebp - 0x20], eax"]], "recomp": [["0x1005606d", "mov dword ptr [ebp - 0x18], eax"]]}, {"both": [["0x100aaa1a", "mov eax, dword ptr [eax]", "0x10056070"], ["0x100aaa1c", "jmp 0x3", "0x10056072"], ["0x100aaa1e", "mov eax, dword ptr [eax + 8]", "0x10056074"]]}, {"orig": [["0x100aaa21", "cmp eax, dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)]"]], "recomp": [["0x10056077", "cmp dword ptr [_Tree<char const *,pair<char const * const,LegoTextureInfo *>,map<char const *,LegoTextureInfo *,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Kfn,LegoContainerInfoComparator,allocator<LegoTextureInfo *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100aaa27", "jne -0x41", "0x1005607d"]]}, {"orig": [["0x100aaa29", "mov ecx, dword ptr [ebp - 0x20]"]], "recomp": [["0x1005607f", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100aaa2c", "mov eax, dword ptr [ebp + 0xc]", "0x10056082"]]}, {"orig": [["0x100aaa2f", "mov dword ptr [ebp - 0x7c], ecx"]], "recomp": [["0x10056085", "mov dword ptr [ebp - 0x80], ecx"]]}, {"both": [["0x100aaa32", "cmp dword ptr [eax + 0xc], ecx", "0x10056088"], ["0x100aaa35", "je 0x32", "0x1005608b"], ["0x100aaa37", "mov eax, dword ptr [ebp - 0x68]", "0x1005608d"], ["0x100aaa3a", "mov edx, dword ptr [ecx + 0xc]", "0x10056090"], ["0x100aaa3d", "mov cl, byte ptr [eax]", "0x10056093"], ["0x100aaa3f", "cmp cl, byte ptr [edx]", "0x10056095"], ["0x100aaa41", "jne 0x1a", "0x10056097"], ["0x100aaa43", "or cl, cl", "0x10056099"], ["0x100aaa45", "je 0x12", "0x1005609b"], ["0x100aaa47", "mov cl, byte ptr [eax + 1]", "0x1005609d"]]}]], ["@@ -0x100aaa4d,122 +0x100560a3,119 @@", [{"both": [["0x100aaa4d", "jne 0xe", "0x100560a3"], ["0x100aaa4f", "add eax, 2", "0x100560a5"], ["0x100aaa52", "add edx, 2", "0x100560a8"], ["0x100aaa55", "or cl, cl", "0x100560ab"], ["0x100aaa57", "jne -0x1c", "0x100560ad"], ["0x100aaa59", "xor eax, eax", "0x100560af"], ["0x100aaa5b", "jmp 0x5", "0x100560b1"], ["0x100aaa5d", "sbb eax, eax", "0x100560b3"], ["0x100aaa5f", "sbb eax, -1", "0x100560b5"], ["0x100aaa62", "test eax, eax", "0x100560b8"]]}, {"orig": [["0x100aaa64", "lea eax, [ebp - 0x7c]"]], "recomp": [["0x100560ba", "lea eax, [ebp - 0x80]"]]}, {"both": [["0x100aaa67", "jle 0xc", "0x100560bd"], ["0x100aaa69", "mov eax, dword ptr [ebp + 0xc]", "0x100560bf"], ["0x100aaa6c", "mov ecx, dword ptr [eax + 0xc]", "0x100560c2"]]}, {"orig": [["0x100aaa6f", "lea eax, [ebp - 0x78]"], ["0x100aaa72", "mov dword ptr [ebp - 0x78], ecx"]], "recomp": [["0x100560c5", "lea eax, [ebp - 0x7c]"], ["0x100560c8", "mov dword ptr [ebp - 0x7c], ecx"]]}, {"both": [["0x100aaa75", "mov eax, dword ptr [eax]", "0x100560cb"], ["0x100aaa77", "mov edx, dword ptr [ebp + 0xc]", "0x100560cd"], ["0x100aaa7a", "cmp dword ptr [edx + 0xc], eax", "0x100560d0"], ["0x100aaa7d", "je 0x6", "0x100560d3"], ["0x100aaa7f", "mov ecx, dword ptr [eax + 0x10]", "0x100560d5"]]}, {"orig": [["0x100aaa82", "mov dword ptr [ebp - 0x44], ecx"], ["0x100aaa85", "cmp dword ptr [ebp - 0x44], 0"]], "recomp": [["0x100560d8", "mov dword ptr [ebp - 0x3c], ecx"], ["0x100560db", "cmp dword ptr [ebp - 0x3c], 0"]]}, {"both": [["0x100aaa89", "je -0x32d", "0x100560df"], ["0x100aaa8f", "mov eax, dword ptr [ebx + 0xc]", "0x100560e5"]]}, {"orig": [["0x100aaa92", "mov ecx, dword ptr [ebp - 0x28]"]], "recomp": [["0x100560e8", "mov ecx, dword ptr [ebp - 0x20]"]]}, {"both": [["0x100aaa95", "push 0", "0x100560eb"], ["0x100aaa97", "push 0x3f800000", "0x100560ed"], ["0x100aaa9c", "mov ecx, dword ptr [eax + ecx*8]", "0x100560f2"], ["0x100aaa9f", "push 0x3f800000", "0x100560f5"], ["0x100aaaa4", "push 0x3f800000", "0x100560fa"], ["0x100aaaa9", "mov eax, dword ptr [ecx]", "0x100560ff"], ["0x100aaaab", "call dword ptr [eax + 8]", "0x10056101"]]}, {"orig": [["0x100aaaae", "mov ecx, dword ptr [ebp - 0x44]"]], "recomp": [["0x10056104", "mov ecx, dword ptr [ebp - 0x3c]"]]}, {"both": [["0x100aaab1", "mov edx, dword ptr [ebx + 0xc]", "0x10056107"], ["0x100aaab4", "push ecx", "0x1005610a"]]}, {"orig": [["0x100aaab5", "mov edi, dword ptr [ebp - 0x28]"]], "recomp": [["0x1005610b", "mov edi, dword ptr [ebp - 0x20]"]]}, {"both": [["0x100aaab8", "mov eax, dword ptr [edx + edi*8]", "0x1005610e"], ["0x100aaabb", "push eax", "0x10056111"], ["0x100aaabc", "call LegoTextureInfo::SetGroupTexture (FUNCTION)", "0x10056112"]]}, {"orig": [["0x100aaac1", "mov edi, dword ptr [ebp - 0x28]"]], "recomp": [["0x10056117", "mov edi, dword ptr [ebp - 0x20]"]]}, {"both": [["0x100aaac4", "add esp, 8", "0x1005611a"], ["0x100aaac7", "mov eax, dword ptr [ebx + 0xc]", "0x1005611d"], ["0x100aaaca", "mov dword ptr [eax + edi*8 + 4], 1", "0x10056120"], ["0x100aaad2", "cmp byte ptr [esi + 0xd], 0", "0x10056128"], ["0x100aaad6", "jbe 0x1e", "0x1005612c"], ["0x100aaad8", "mov eax, dword ptr [ebx + 0xc]", "0x1005612e"]]}, {"orig": [["0x100aaadb", "mov ecx, dword ptr [ebp - 0x28]"]], "recomp": [["0x10056131", "mov ecx, dword ptr [ebp - 0x20]"]]}, {"both": [["0x100aaade", "mov edx, dword ptr [eax + ecx*8]", "0x10056134"], ["0x100aaae1", "mov eax, dword ptr [edx + 4]", "0x10056137"], ["0x100aaae4", "mov ecx, dword ptr [eax]", "0x1005613a"], ["0x100aaae6", "mov edx, dword ptr [eax + 4]", "0x1005613c"], ["0x100aaae9", "mov eax, dword ptr [g_unk0x101013d4 (DATA)]", "0x1005613f"]]}, {"orig": [["0x100aaaee", "mov edi, dword ptr [ecx]"]], "recomp": []}, {"both": [["0x100aaaf0", "push eax", "0x10056144"], ["0x100aaaf1", "push edx", "0x10056145"], ["0x100aaaf2", "push ecx", "0x10056146"]]}, {"orig": [["0x100aaaf3", "call dword ptr [edi + 0x50]"]], "recomp": [["0x10056147", "mov eax, dword ptr [ecx]"], ["0x10056149", "call dword ptr [eax + 0x50]"]]}, {"both": [["0x100aaaf6", "test esi, esi", "0x1005614c"], ["0x100aaaf8", "je 0xa", "0x1005614e"], ["0x100aaafa", "push 1", "0x10056150"], ["0x100aaafc", "mov eax, dword ptr [esi]", "0x10056152"], ["0x100aaafe", "mov ecx, esi", "0x10056154"], ["0x100aab00", "xor esi, esi", "0x10056156"], ["0x100aab02", "call dword ptr [eax]", "0x10056158"]]}, {"orig": [], "recomp": [["0x1005615a", "cmp dword ptr [ebp - 0x28], 0"], ["0x1005615e", "je 0x13"], ["0x10056160", "mov eax, dword ptr [ebp - 0x28]"], ["0x10056163", "push eax"], ["0x10056164", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10056169", "mov dword ptr [ebp - 0x28], 0"], ["0x10056170", "add esp, 4"], ["0x10056173", "cmp dword ptr [ebp - 0x24], 0"], ["0x10056177", "je 0x13"], ["0x10056179", "mov eax, dword ptr [ebp - 0x24]"], ["0x1005617c", "push eax"], ["0x1005617d", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10056182", "mov dword ptr [ebp - 0x24], 0"], ["0x10056189", "add esp, 4"], ["0x1005618c", "inc dword ptr [ebp - 0x5c]"], ["0x1005618f", "mov eax, dword ptr [ebp - 0x5c]"], ["0x10056192", "cmp dword ptr [ebx + 0x10], eax"], ["0x10056195", "ja -0x4a4"]]}, {"both": [["0x100aab04", "cmp dword ptr [ebp - 0x34], 0", "0x1005619b"]]}, {"orig": [["0x100aab08", "je 0x13"]], "recomp": [["0x1005619f", "mov eax, dword ptr [ebp - 0x48]"], ["0x100561a2", "mov dword ptr [ebx + 0x1c], eax"], ["0x100561a5", "je 0xc"]]}, {"both": [["0x100aab0a", "mov eax, dword ptr [ebp - 0x34]", "0x100561a7"], ["0x100aab0d", "push eax", "0x100561aa"], ["0x100aab0e", "call ??3@YAXPAX@Z (FUNCTION)", "0x100561ab"]]}, {"orig": [["0x100aab13", "mov dword ptr [ebp - 0x34], 0"]], "recomp": []}, {"both": [["0x100aab1a", "add esp, 4", "0x100561b0"], ["0x100aab1d", "cmp dword ptr [ebp - 0x30], 0", "0x100561b3"]]}, {"orig": [["0x100aab21", "je 0x13"]], "recomp": [["0x100561b7", "je 0xc"]]}, {"both": [["0x100aab23", "mov eax, dword ptr [ebp - 0x30]", "0x100561b9"], ["0x100aab26", "push eax", "0x100561bc"], ["0x100aab27", "call ??3@YAXPAX@Z (FUNCTION)", "0x100561bd"]]}, {"orig": [["0x100aab2c", "mov dword ptr [ebp - 0x30], 0"], ["0x100aab33", "add esp, 4"], ["0x100aab36", "inc dword ptr [ebp - 0x60]"], ["0x100aab39", "mov eax, dword ptr [ebp - 0x60]"], ["0x100aab3c", "cmp dword ptr [ebx + 0x10], eax"], ["0x100aab3f", "ja -0x49e"], ["0x100aab45", "cmp dword ptr [ebp - 0x40], 0"], ["0x100aab49", "mov eax, dword ptr [ebp - 0x4c]"], ["0x100aab4c", "mov dword ptr [ebx + 0x1c], eax"], ["0x100aab4f", "je 0xc"], ["0x100aab51", "mov eax, dword ptr [ebp - 0x40]"], ["0x100aab54", "push eax"], ["0x100aab55", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100aab5a", "add esp, 4"], ["0x100aab5d", "cmp dword ptr [ebp - 0x3c], 0"], ["0x100aab61", "je 0xc"], ["0x100aab63", "mov eax, dword ptr [ebp - 0x3c]"], ["0x100aab66", "push eax"], ["0x100aab67", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100aab6c", "add esp, 4"], ["0x100aab6f", "cmp dword ptr [ebp - 0x38], 0"], ["0x100aab73", "je 0xc"], ["0x100aab75", "mov eax, dword ptr [ebp - 0x38]"]], "recomp": [["0x100561c2", "add esp, 4"], ["0x100561c5", "cmp dword ptr [ebp - 0x2c], 0"], ["0x100561c9", "je 0xc"], ["0x100561cb", "mov eax, dword ptr [ebp - 0x2c]"]]}, {"both": [["0x100aab78", "push eax", "0x100561ce"], ["0x100aab79", "call ??3@YAXPAX@Z (FUNCTION)", "0x100561cf"], ["0x100aab7e", "add esp, 4", "0x100561d4"], ["0x100aab81", "xor eax, eax", "0x100561d7"], ["0x100aab83", "mov ecx, dword ptr [ebp - 0xc]", "0x100561d9"], ["0x100aab86", "pop edi", "0x100561dc"], ["0x100aab87", "mov dword ptr fs:[0], ecx", "0x100561dd"], ["0x100aab8e", "pop esi", "0x100561e4"], ["0x100aab8f", "pop ebx", "0x100561e5"], ["0x100aab90", "mov esp, ebp", "0x100561e6"], ["0x100aab92", "pop ebp", "0x100561e8"], ["0x100aab93", "ret 0xc", "0x100561e9"], ["0x100aab96", "mov eax, <OFFSET12>", "0x100561ec"], ["0x100aab9b", "jmp ___CxxFrameHandler (FUNCTION)", "0x100561f1"]]}, {"orig": [["0x100aaba0", "mov eax, dword ptr [ebp - 0x28]"]], "recomp": [["0x100561f6", "mov eax, dword ptr [ebp - 0x20]"]]}, {"both": [["0x100aaba3", "push eax", "0x100561f9"], ["0x100aaba4", "call ??3@YAXPAX@Z (FUNCTION)", "0x100561fa"], ["0x100aaba9", "add esp, 4", "0x100561ff"], ["0x100aabac", "ret ", "0x10056202"]]}, {"orig": [["0x100aabad", "int3 "], ["0x100aabae", "int3 "], ["0x100aabaf", "int3 "]], "recomp": []}]]]}, {"address": "0x100aabb0", "recomp": "0x10056210", "name": "LegoLOD::Clone", "matching": 0.6867469879518072, "diff": [["@@ -0x100aabb6,80 +0x10056216,80 @@", [{"both": [["0x100aabb6", "push ebp", "0x10056216"], ["0x100aabb7", "mov ebp, esp", "0x10056217"], ["0x100aabb9", "push -1", "0x10056219"], ["0x100aabbb", "push <OFFSET1>", "0x1005621b"], ["0x100aabc0", "push eax", "0x10056220"], ["0x100aabc1", "mov dword ptr fs:[0], esp", "0x10056221"], ["0x100aabc8", "sub esp, 8", "0x10056228"], ["0x100aabcb", "push ebx", "0x1005622b"], ["0x100aabcc", "push esi", "0x1005622c"], ["0x100aabcd", "push edi", "0x1005622d"]]}, {"orig": [["0x100aabce", "mov esi, ecx"]], "recomp": []}, {"both": [["0x100aabd0", "push 0x20", "0x1005622e"]]}, {"orig": [["0x100aabd2", "mov edi, 0"]], "recomp": [["0x10056230", "mov edi, ecx"], ["0x10056232", "mov esi, 0"]]}, {"both": [["0x100aabd7", "call ??2@YAPAXI@Z (FUNCTION)", "0x10056237"], ["0x100aabdc", "add esp, 4", "0x1005623c"], ["0x100aabdf", "mov dword ptr [ebp - 0x10], eax", "0x1005623f"], ["0x100aabe2", "mov dword ptr [ebp - 4], 0", "0x10056242"], ["0x100aabe9", "test eax, eax", "0x10056249"], ["0x100aabeb", "je 0xe", "0x1005624b"], ["0x100aabed", "mov eax, dword ptr [ebp + 8]", "0x1005624d"], ["0x100aabf0", "mov ecx, dword ptr [ebp - 0x10]", "0x10056250"], ["0x100aabf3", "push eax", "0x10056253"], ["0x100aabf4", "call LegoLOD::LegoLOD (FUNCTION)", "0x10056254"]]}, {"orig": [["0x100aabf9", "mov edi, eax"], ["0x100aabfb", "mov ecx, dword ptr [esi + 4]"]], "recomp": [["0x10056259", "mov esi, eax"], ["0x1005625b", "mov ecx, dword ptr [edi + 4]"]]}, {"both": [["0x100aabfe", "mov dword ptr [ebp - 4], 0xffffffff", "0x1005625e"], ["0x100aac05", "mov eax, dword ptr [ecx]", "0x10056265"], ["0x100aac07", "call dword ptr [eax + 0x10]", "0x10056267"]]}, {"orig": [["0x100aac0a", "mov dword ptr [edi + 4], eax"], ["0x100aac0d", "mov eax, dword ptr [esi + 0x10]"]], "recomp": [["0x1005626a", "mov dword ptr [esi + 4], eax"], ["0x1005626d", "mov eax, dword ptr [edi + 0x10]"]]}, {"both": [["0x100aac10", "shl eax, 3", "0x10056270"], ["0x100aac13", "xor ebx, ebx", "0x10056273"], ["0x100aac15", "push eax", "0x10056275"], ["0x100aac16", "call ??2@YAPAXI@Z (FUNCTION)", "0x10056276"], ["0x100aac1b", "add esp, 4", "0x1005627b"]]}, {"orig": [["0x100aac1e", "mov dword ptr [edi + 0xc], eax"]], "recomp": [["0x1005627e", "mov dword ptr [esi + 0xc], eax"]]}, {"both": [["0x100aac21", "mov dword ptr [ebp - 0x14], ebx", "0x10056281"]]}, {"orig": [["0x100aac24", "cmp dword ptr [esi + 0x10], ebx"]], "recomp": [["0x10056284", "cmp dword ptr [edi + 0x10], ebx"]]}, {"both": [["0x100aac27", "jbe 0x32", "0x10056287"]]}, {"orig": [["0x100aac29", "mov eax, dword ptr [esi + 0xc]"], ["0x100aac2c", "mov edx, dword ptr [edi + 4]"]], "recomp": [["0x10056289", "mov eax, dword ptr [edi + 0xc]"], ["0x1005628c", "mov edx, dword ptr [esi + 4]"]]}, {"both": [["0x100aac2f", "mov ecx, dword ptr [eax + ebx]", "0x1005628f"], ["0x100aac32", "add ebx, 8", "0x10056292"], ["0x100aac35", "push edx", "0x10056295"], ["0x100aac36", "mov eax, dword ptr [ecx]", "0x10056296"], ["0x100aac38", "call dword ptr [eax + 0x20]", "0x10056298"]]}, {"orig": [["0x100aac3b", "mov ecx, dword ptr [edi + 0xc]"]], "recomp": [["0x1005629b", "mov ecx, dword ptr [esi + 0xc]"]]}, {"both": [["0x100aac3e", "inc dword ptr [ebp - 0x14]", "0x1005629e"], ["0x100aac41", "mov dword ptr [ecx + ebx - 8], eax", "0x100562a1"]]}, {"orig": [["0x100aac45", "mov ecx, dword ptr [edi + 0xc]"], ["0x100aac48", "mov edx, dword ptr [esi + 0xc]"]], "recomp": [["0x100562a5", "mov ecx, dword ptr [esi + 0xc]"], ["0x100562a8", "mov edx, dword ptr [edi + 0xc]"]]}, {"both": [["0x100aac4b", "mov eax, dword ptr [edx + ebx - 4]", "0x100562ab"], ["0x100aac4f", "mov dword ptr [ecx + ebx - 4], eax", "0x100562af"], ["0x100aac53", "mov eax, dword ptr [ebp - 0x14]", "0x100562b3"]]}, {"orig": [["0x100aac56", "cmp dword ptr [esi + 0x10], eax"]], "recomp": [["0x100562b6", "cmp dword ptr [edi + 0x10], eax"]]}, {"both": [["0x100aac59", "ja -0x32", "0x100562b9"]]}, {"orig": [["0x100aac5b", "mov eax, dword ptr [esi + 8]"], ["0x100aac5e", "mov dword ptr [edi + 8], eax"], ["0x100aac61", "mov ecx, dword ptr [esi + 0x10]"], ["0x100aac64", "mov dword ptr [edi + 0x10], ecx"], ["0x100aac67", "mov edx, dword ptr [esi + 0x14]"], ["0x100aac6a", "mov dword ptr [edi + 0x14], edx"], ["0x100aac6d", "mov eax, dword ptr [esi + 0x18]"], ["0x100aac70", "mov dword ptr [edi + 0x18], eax"], ["0x100aac73", "mov eax, edi"], ["0x100aac75", "mov ecx, dword ptr [esi + 0x1c]"], ["0x100aac78", "mov dword ptr [edi + 0x1c], ecx"]], "recomp": [["0x100562bb", "mov eax, dword ptr [edi + 8]"], ["0x100562be", "mov dword ptr [esi + 8], eax"], ["0x100562c1", "mov ecx, dword ptr [edi + 0x10]"], ["0x100562c4", "mov dword ptr [esi + 0x10], ecx"], ["0x100562c7", "mov edx, dword ptr [edi + 0x14]"], ["0x100562ca", "mov dword ptr [esi + 0x14], edx"], ["0x100562cd", "mov eax, dword ptr [edi + 0x18]"], ["0x100562d0", "mov dword ptr [esi + 0x18], eax"], ["0x100562d3", "mov eax, esi"], ["0x100562d5", "mov ecx, dword ptr [edi + 0x1c]"], ["0x100562d8", "pop edi"], ["0x100562d9", "mov dword ptr [esi + 0x1c], ecx"]]}, {"both": [["0x100aac7b", "mov ecx, dword ptr [ebp - 0xc]", "0x100562dc"], ["0x100aac7e", "mov dword ptr fs:[0], ecx", "0x100562df"]]}, {"orig": [["0x100aac85", "pop edi"]], "recomp": []}, {"both": [["0x100aac86", "pop esi", "0x100562e6"], ["0x100aac87", "pop ebx", "0x100562e7"], ["0x100aac88", "mov esp, ebp", "0x100562e8"], ["0x100aac8a", "pop ebp", "0x100562ea"], ["0x100aac8b", "ret 4", "0x100562eb"], ["0x100aac8e", "mov eax, <OFFSET4>", "0x100562ee"], ["0x100aac93", "jmp ___CxxFrameHandler (FUNCTION)", "0x100562f3"], ["0x100aac98", "mov eax, dword ptr [ebp - 0x10]", "0x100562f8"], ["0x100aac9b", "push eax", "0x100562fb"], ["0x100aac9c", "call ??3@YAXPAX@Z (FUNCTION)", "0x100562fc"]]}]]]}, {"address": "0x100aacb0", "recomp": "0x10056310", "name": "LegoLOD::FUN_100aacb0", "matching": 0.6666666666666666, "diff": [["@@ -0x100aacb0,35 +0x10056310,34 @@", [{"both": [["0x100aacb0", "push ebx", "0x10056310"], ["0x100aacb1", "push esi", "0x10056311"], ["0x100aacb2", "push edi", "0x10056312"]]}, {"orig": [], "recomp": [["0x10056313", "mov esi, ecx"]]}, {"both": [["0x100aacb3", "push ebp", "0x10056315"]]}, {"orig": [["0x100aacb4", "mov ebx, dword ptr [ecx + 0x1c]"], ["0x100aacb7", "mov edi, ecx"], ["0x100aacb9", "cmp dword ptr [ecx + 0x10], ebx"]], "recomp": [["0x10056316", "mov edi, dword ptr [esi + 0x1c]"], ["0x10056319", "cmp dword ptr [esi + 0x10], edi"]]}, {"both": [["0x100aacbc", "jbe 0x37", "0x1005631c"]]}, {"orig": [["0x100aacbe", "lea esi, [ebx*8]"]], "recomp": [["0x1005631e", "lea ebx, [edi*8]"]]}, {"both": [["0x100aacc5", "xor ebp, ebp", "0x10056325"]]}, {"orig": [["0x100aacc7", "mov eax, dword ptr [edi + 0xc]"], ["0x100aacca", "add eax, esi"], ["0x100aaccc", "cmp dword ptr [eax + 4], ebp"], ["0x100aaccf", "jne 0x1b"], ["0x100aacd1", "mov ecx, dword ptr [eax]"]], "recomp": [["0x10056327", "mov eax, dword ptr [esi + 0xc]"], ["0x1005632a", "cmp dword ptr [ebx + eax + 4], ebp"], ["0x1005632e", "jne 0x1c"], ["0x10056330", "mov ecx, dword ptr [eax + ebx]"]]}, {"both": [["0x100aacd3", "mov edx, dword ptr [esp + 0x1c]", "0x10056333"], ["0x100aacd7", "mov eax, dword ptr [esp + 0x20]", "0x10056337"], ["0x100aacdb", "push eax", "0x1005633b"], ["0x100aacdc", "push edx", "0x1005633c"], ["0x100aacdd", "mov eax, dword ptr [esp + 0x20]", "0x1005633d"], ["0x100aace1", "mov edx, dword ptr [esp + 0x1c]", "0x10056341"], ["0x100aace5", "push eax", "0x10056345"], ["0x100aace6", "push edx", "0x10056346"], ["0x100aace7", "mov eax, dword ptr [ecx]", "0x10056347"], ["0x100aace9", "call dword ptr [eax + 8]", "0x10056349"]]}, {"orig": [["0x100aacec", "add esi, 8"], ["0x100aacef", "inc ebx"], ["0x100aacf0", "cmp dword ptr [edi + 0x10], ebx"]], "recomp": [["0x1005634c", "add ebx, 8"], ["0x1005634f", "inc edi"], ["0x10056350", "cmp dword ptr [esi + 0x10], edi"]]}, {"both": [["0x100aacf3", "ja -0x2e", "0x10056353"], ["0x100aacf5", "xor eax, eax", "0x10056355"], ["0x100aacf7", "pop ebp", "0x10056357"], ["0x100aacf8", "pop edi", "0x10056358"], ["0x100aacf9", "pop esi", "0x10056359"], ["0x100aacfa", "pop ebx", "0x1005635a"], ["0x100aacfb", "ret 0x10", "0x1005635b"]]}]]]}, {"address": "0x100aad00", "recomp": "0x10056360", "name": "LegoLOD::FUN_100aad00", "matching": 1.0, "diff": []}, {"address": "0x100aae20", "recomp": "0x100563d0", "name": "LegoLOD::FUN_100aae20", "matching": 1.0, "diff": []}, {"address": "0x100aae70", "recomp": "0x10055a70", "name": "LegoLOD::NumPolys", "matching": 1.0, "diff": []}, {"address": "0x100aae80", "recomp": "0x10055a80", "name": "LegoLOD::VTable0x10", "matching": 1.0, "diff": []}, {"address": "0x100aae90", "recomp": "0x10059e50", "name": "Lego3DView::Lego3DView", "matching": 1.0, "diff": []}, {"address": "0x100aaf10", "recomp": "0x10059ed0", "name": "Lego3DView::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100aaf30", "recomp": "0x10059ef0", "name": "Lego3DView::~Lego3DView", "matching": 1.0, "diff": []}, {"address": "0x100aaf90", "recomp": "0x10059f50", "name": "Lego3DView::Create", "matching": 1.0, "diff": []}, {"address": "0x100ab0b0", "recomp": "0x1005a070", "name": "Lego3DView::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100ab100", "recomp": "0x1005a0c0", "name": "Lego3DView::Add", "matching": 1.0, "effective": true, "diff": [["@@ -0x100ab100,33 +0x1005a0c0,33 @@", [{"both": [["0x100ab100", "mov eax, dword ptr [esp + 4]", "0x1005a0c0"], ["0x100ab104", "sub esp, 8", "0x1005a0c4"], ["0x100ab107", "mov dword ptr [esp + 4], eax", "0x1005a0c7"], ["0x100ab10b", "push ebx", "0x1005a0cb"], ["0x100ab10c", "push esi", "0x1005a0cc"], ["0x100ab10d", "push edi", "0x1005a0cd"], ["0x100ab10e", "mov esi, dword ptr [ecx + 0x88]", "0x1005a0ce"], ["0x100ab114", "push 0xc", "0x1005a0d4"], ["0x100ab116", "mov ecx, dword ptr [esi + 0xc]", "0x1005a0d6"], ["0x100ab119", "mov dword ptr [esp + 0x10], ecx", "0x1005a0d9"]]}, {"orig": [["0x100ab11d", "lea ebx, [ecx + 4]"], ["0x100ab120", "mov edi, dword ptr [ebx]"]], "recomp": [["0x1005a0dd", "lea edi, [ecx + 4]"], ["0x1005a0e0", "mov ebx, dword ptr [edi]"]]}, {"both": [["0x100ab122", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005a0e2"], ["0x100ab127", "add esp, 4", "0x1005a0e7"]]}, {"orig": [["0x100ab12a", "test edi, edi"]], "recomp": [["0x1005a0ea", "test ebx, ebx"]]}, {"both": [["0x100ab12c", "je 0xb", "0x1005a0ec"], ["0x100ab12e", "mov ecx, dword ptr [esp + 0xc]", "0x1005a0ee"], ["0x100ab132", "mov dword ptr [eax], ecx", "0x1005a0f2"]]}, {"orig": [["0x100ab134", "mov dword ptr [eax + 4], edi"]], "recomp": [["0x1005a0f4", "mov dword ptr [eax + 4], ebx"]]}, {"both": [["0x100ab137", "jmp 0x5", "0x1005a0f7"], ["0x100ab139", "mov dword ptr [eax], eax", "0x1005a0f9"], ["0x100ab13b", "mov dword ptr [eax + 4], eax", "0x1005a0fb"]]}, {"orig": [["0x100ab13e", "mov dword ptr [ebx], eax"]], "recomp": [["0x1005a0fe", "mov dword ptr [edi], eax"]]}, {"both": [["0x100ab140", "mov ecx, dword ptr [eax + 4]", "0x1005a100"], ["0x100ab143", "mov dword ptr [ecx], eax", "0x1005a103"], ["0x100ab145", "add eax, 8", "0x1005a105"], ["0x100ab148", "je 0x6", "0x1005a108"], ["0x100ab14a", "mov ecx, dword ptr [esp + 0x10]", "0x1005a10a"], ["0x100ab14e", "mov dword ptr [eax], ecx", "0x1005a10e"], ["0x100ab150", "mov eax, 1", "0x1005a110"], ["0x100ab155", "pop edi", "0x1005a115"], ["0x100ab156", "inc dword ptr [esi + 0x10]", "0x1005a116"], ["0x100ab159", "pop esi", "0x1005a119"]]}]]]}, {"address": "0x100ab170", "recomp": "0x1005a130", "name": "Lego3DView::Remove", "matching": 1.0, "diff": []}, {"address": "0x100ab1b0", "recomp": "0x1005a170", "name": "Lego3DView::SetPointOfView", "matching": 1.0, "diff": []}, {"address": "0x100ab210", "recomp": "0x1005a1d0", "name": "Lego3DView::Moved", "matching": 1.0, "diff": []}, {"address": "0x100ab270", "recomp": "0x1005a230", "name": "Lego3DView::Render", "matching": 1.0, "diff": []}, {"address": "0x100ab2b0", "recomp": "0x1005a270", "name": "Lego3DView::Pick", "matching": 1.0, "diff": []}, {"address": "0x100ab2d0", "recomp": "0x1005a290", "name": "InitializeCreateStruct", "matching": 1.0, "diff": []}, {"address": "0x100ab320", "recomp": "0x1005a2e0", "name": "Lego3DManager::Lego3DManager", "matching": 1.0, "diff": []}, {"address": "0x100ab340", "recomp": "0x1005a300", "name": "Lego3DManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ab360", "recomp": "0x1005a320", "name": "Lego3DManager::~Lego3DManager", "matching": 1.0, "diff": []}, {"address": "0x100ab370", "recomp": "0x1005a330", "name": "Lego3DManager::Create", "matching": 1.0, "diff": []}, {"address": "0x100ab460", "recomp": "0x1005a420", "name": "Lego3DManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100ab4b0", "recomp": "0x1005a470", "name": "Lego3DManager::Render", "matching": 1.0, "diff": []}, {"address": "0x100ab4d0", "recomp": "0x1005a490", "name": "Lego3DManager::SetFrustrum", "matching": 1.0, "diff": []}, {"address": "0x100ab510", "recomp": "0x1005ab00", "name": "LegoView::LegoView", "matching": 1.0, "diff": []}, {"address": "0x100ab580", "recomp": "0x1005ab70", "name": "LegoView::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ab5a0", "recomp": "0x1005ab90", "name": "LegoView::~LegoView", "matching": 1.0, "diff": []}, {"address": "0x100ab600", "recomp": "0x1005abf0", "name": "LegoView::Create", "matching": 1.0, "diff": []}, {"address": "0x100ab6c0", "recomp": "0x1005acb0", "name": "LegoView::CreateView", "matching": 1.0, "diff": []}, {"address": "0x100ab6f0", "recomp": "0x1005ace0", "name": "LegoView::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100ab730", "recomp": "0x1005ad20", "name": "LegoView1::LegoView1", "matching": 1.0, "diff": []}, {"address": "0x100ab7a0", "recomp": "0x1005ad90", "name": "LegoView1::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ab7c0", "recomp": "0x1005adb0", "name": "LegoView1::~LegoView1", "matching": 1.0, "diff": []}, {"address": "0x100ab820", "recomp": "0x1005ae10", "name": "LegoView1::AddLightsToViewport", "matching": 1.0, "diff": []}, {"address": "0x100ab860", "recomp": "0x1005ae50", "name": "LegoView1::Create", "matching": 0.976878612716763, "diff": [["@@ -0x100ab906,23 +0x1005aef6,23 @@", [{"both": [["0x100ab906", "mov dword ptr [esp + 0xc8], edi", "0x1005aef6"], ["0x100ab90d", "mov dword ptr [esp + 0xd0], edi", "0x1005aefd"], ["0x100ab914", "mov dword ptr [esp + 0xb0], edx", "0x1005af04"], ["0x100ab91b", "mov dword ptr [esp + 0xac], ecx", "0x1005af0b"], ["0x100ab922", "lea ecx, [esp + 0x6c]", "0x1005af12"], ["0x100ab926", "mov dword ptr [esp + 0xb8], edi", "0x1005af16"], ["0x100ab92d", "mov dword ptr [esp + 0xbc], edi", "0x1005af1d"], ["0x100ab934", "mov dword ptr [esp + 0x68], ecx", "0x1005af24"], ["0x100ab938", "lea eax, [esp + 0x64]", "0x1005af28"], ["0x100ab93c", "lea edx, [esp + 0xac]", "0x1005af2c"]]}, {"orig": [["0x100ab943", "lea ecx, [esp + 0xc0]"]], "recomp": [["0x1005af33", "lea ecx, [esp + 0x10]"]]}, {"both": [["0x100ab94a", "push eax", "0x1005af37"]]}, {"orig": [["0x100ab94b", "lea eax, [esp + 0x14]"]], "recomp": [["0x1005af38", "lea eax, [esp + 0xc4]"]]}, {"both": [["0x100ab94f", "push edx", "0x1005af3f"], ["0x100ab950", "mov dword ptr [esp + 0xd4], 0xbf800000", "0x1005af40"], ["0x100ab95b", "mov dword ptr [esp + 0xbc], 0x3f800000", "0x1005af4b"], ["0x100ab966", "mov dword ptr [esp + 0x6c], MxMatrix::`vftable' (VTABLE)", "0x1005af56"], ["0x100ab96e", "push ecx", "0x1005af5e"], ["0x100ab96f", "push eax", "0x1005af5f"], ["0x100ab970", "call CalcLocalTransform (FUNCTION)", "0x1005af60"], ["0x100ab975", "mov ecx, dword ptr [esp + 0x78]", "0x1005af65"], ["0x100ab979", "add esp, 0x10", "0x1005af69"], ["0x100ab97c", "mov edx, dword ptr [ecx]", "0x1005af6c"]]}]], ["@@ -0x100ab9f0,25 +0x1005afe0,25 @@", [{"both": [["0x100ab9f0", "mov ecx, dword ptr [esi + 0x7c]", "0x1005afe0"], ["0x100ab9f3", "mov eax, dword ptr [ecx]", "0x1005afe3"], ["0x100ab9f5", "call dword ptr [eax + 8]", "0x1005afe5"], ["0x100ab9f8", "mov ecx, dword ptr [esp + 0x14]", "0x1005afe8"], ["0x100ab9fc", "lea eax, [esp + 0x64]", "0x1005afec"], ["0x100aba00", "lea edx, [esp + 0xac]", "0x1005aff0"], ["0x100aba07", "push eax", "0x1005aff7"], ["0x100aba08", "push edx", "0x1005aff8"], ["0x100aba09", "mov dword ptr [ecx], edi", "0x1005aff9"], ["0x100aba0b", "mov ecx, dword ptr [esp + 0x1c]", "0x1005affb"]]}, {"orig": [["0x100aba0f", "lea eax, [esp + 0x18]"]], "recomp": [["0x1005afff", "lea eax, [esp + 0xc8]"]]}, {"both": [["0x100aba13", "mov dword ptr [ecx + 4], 0x43160000", "0x1005b006"], ["0x100aba1a", "mov ecx, dword ptr [esp + 0x1c]", "0x1005b00d"], ["0x100aba1e", "mov dword ptr [ecx + 8], 0xc3160000", "0x1005b011"]]}, {"orig": [["0x100aba25", "lea ecx, [esp + 0xc8]"]], "recomp": [["0x1005b018", "lea ecx, [esp + 0x18]"]]}, {"both": [["0x100aba2c", "push ecx", "0x1005b01c"], ["0x100aba2d", "push eax", "0x1005b01d"], ["0x100aba2e", "call CalcLocalTransform (FUNCTION)", "0x1005b01e"], ["0x100aba33", "mov ecx, dword ptr [esp + 0x78]", "0x1005b023"], ["0x100aba37", "add esp, 0x10", "0x1005b027"], ["0x100aba3a", "mov edi, dword ptr [ecx]", "0x1005b02a"], ["0x100aba3c", "mov dword ptr [esp + 0x24], edi", "0x1005b02c"], ["0x100aba40", "mov eax, dword ptr [ecx + 4]", "0x1005b030"], ["0x100aba43", "mov dword ptr [esp + 0x28], eax", "0x1005b033"], ["0x100aba47", "mov edx, dword ptr [ecx + 8]", "0x1005b037"]]}]]]}, {"address": "0x100abad0", "recomp": "0x1005b0c0", "name": "LegoView1::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100abbf0", "recomp": "0x1005a4d0", "name": "TglSurface::TglSurface", "matching": 1.0, "diff": []}, {"address": "0x100abcf0", "recomp": "0x1005a5d0", "name": "TglSurface::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100abd10", "recomp": "0x1005a5f0", "name": "MxFrequencyMeter::~MxFrequencyMeter", "matching": 1.0, "diff": []}, {"address": "0x100abd60", "recomp": "0x1005a640", "name": "TglSurface::~TglSurface", "matching": 1.0, "diff": []}, {"address": "0x100abde0", "recomp": "0x1005a6c0", "name": "TglSurface::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100abe10", "recomp": "0x1005a6f0", "name": "GetBitsPerPixel", "matching": 1.0, "diff": []}, {"address": "0x100abe50", "recomp": "0x1005a730", "name": "TglSurface::Create", "matching": 1.0, "effective": true, "diff": [["@@ -0x100abe55,27 +0x1005a735,27 @@", [{"both": [["0x100abe55", "push edi", "0x1005a735"], ["0x100abe56", "mov esi, ecx", "0x1005a736"], ["0x100abe58", "mov ecx, dword ptr [esp + 0x24]", "0x1005a738"], ["0x100abe5c", "push ebp", "0x1005a73c"], ["0x100abe5d", "mov eax, dword ptr [ecx + 0x20]", "0x1005a73d"], ["0x100abe60", "mov edx, dword ptr [ecx + 0x24]", "0x1005a740"], ["0x100abe63", "mov ecx, dword ptr [ecx + 0xc]", "0x1005a743"], ["0x100abe66", "mov dword ptr [esp + 0x1c], eax", "0x1005a746"], ["0x100abe6a", "push ecx", "0x1005a74a"], ["0x100abe6b", "mov edi, 0x20", "0x1005a74b"]]}, {"orig": [["0x100abe70", "mov ebp, 0xffffffff"]], "recomp": [["0x1005a750", "mov ebx, 0xffffffff"]]}, {"both": [["0x100abe75", "mov dword ptr [esp + 0x24], edx", "0x1005a755"], ["0x100abe79", "call GetBitsPerPixel (FUNCTION)", "0x1005a759"], ["0x100abe7e", "mov ecx, dword ptr [esp + 0x34]", "0x1005a75e"]]}, {"orig": [["0x100abe82", "mov dword ptr [esp + 0x14], ebp"]], "recomp": [["0x1005a762", "mov dword ptr [esp + 0x14], ebx"]]}, {"both": [["0x100abe86", "add esp, 4", "0x1005a766"]]}, {"orig": [["0x100abe89", "mov ebx, eax"]], "recomp": [["0x1005a769", "mov ebp, eax"]]}, {"both": [["0x100abe8b", "mov dword ptr [esi + 0x14], ecx", "0x1005a76b"], ["0x100abe8e", "mov eax, dword ptr [esp + 0x2c]", "0x1005a76e"], ["0x100abe92", "lea ecx, [esp + 0x1c]", "0x1005a772"], ["0x100abe96", "mov dword ptr [esi + 8], eax", "0x1005a776"], ["0x100abe99", "mov dword ptr [esp + 0x14], 1", "0x1005a779"], ["0x100abea1", "mov edx, dword ptr [eax]", "0x1005a781"], ["0x100abea3", "push ecx", "0x1005a783"], ["0x100abea4", "mov ecx, dword ptr [esp + 0x30]", "0x1005a784"], ["0x100abea8", "mov dword ptr [esp + 0x1c], edx", "0x1005a788"], ["0x100abeac", "mov eax, dword ptr [esp + 0x1c]", "0x1005a78c"]]}]], ["@@ -0x100abeb8,52 +0x1005a798,52 @@", [{"both": [["0x100abeb8", "jne 0x1a", "0x1005a798"], ["0x100abeba", "xor eax, eax", "0x1005a79a"], ["0x100abebc", "pop ebp", "0x1005a79c"], ["0x100abebd", "mov dword ptr [esi + 8], 0", "0x1005a79d"], ["0x100abec4", "mov dword ptr [esi + 0x14], 0", "0x1005a7a4"], ["0x100abecb", "pop edi", "0x1005a7ab"], ["0x100abecc", "pop esi", "0x1005a7ac"], ["0x100abecd", "pop ebx", "0x1005a7ad"], ["0x100abece", "add esp, 0x14", "0x1005a7ae"], ["0x100abed1", "ret 0xc", "0x1005a7b1"]]}, {"orig": [["0x100abed4", "cmp ebx, 1"]], "recomp": [["0x1005a7b4", "cmp ebp, 1"]]}, {"both": [["0x100abed7", "jne 0x9", "0x1005a7b7"], ["0x100abed9", "mov edi, 4", "0x1005a7b9"]]}, {"orig": [["0x100abede", "mov ebp, edi"]], "recomp": [["0x1005a7be", "mov ebx, edi"]]}, {"both": [["0x100abee0", "jmp 0x62", "0x1005a7c0"]]}, {"orig": [["0x100abee2", "cmp ebx, 8"]], "recomp": [["0x1005a7c2", "cmp ebp, 8"]]}, {"both": [["0x100abee5", "jne 0x19", "0x1005a7c5"], ["0x100abee7", "mov dword ptr [esp + 0x14], 0", "0x1005a7c7"], ["0x100abeef", "mov dword ptr [esp + 0x10], 0x100", "0x1005a7cf"], ["0x100abef7", "mov edi, 0x10", "0x1005a7d7"]]}, {"orig": [["0x100abefc", "mov ebp, edi"]], "recomp": [["0x1005a7dc", "mov ebx, edi"]]}, {"both": [["0x100abefe", "jmp 0x44", "0x1005a7de"]]}, {"orig": [["0x100abf00", "cmp ebx, 0x10"]], "recomp": [["0x1005a7e0", "cmp ebp, 0x10"]]}, {"both": [["0x100abf03", "jne 0x19", "0x1005a7e3"], ["0x100abf05", "mov dword ptr [esp + 0x14], 0", "0x1005a7e5"], ["0x100abf0d", "mov dword ptr [esp + 0x10], 0x100", "0x1005a7ed"], ["0x100abf15", "mov edi, 0x20", "0x1005a7f5"]]}, {"orig": [["0x100abf1a", "mov ebp, edi"]], "recomp": [["0x1005a7fa", "mov ebx, edi"]]}, {"both": [["0x100abf1c", "jmp 0x26", "0x1005a7fc"]]}, {"orig": [["0x100abf1e", "cmp ebx, 0x18"]], "recomp": [["0x1005a7fe", "cmp ebp, 0x18"]]}, {"both": [["0x100abf21", "jl 0x19", "0x1005a801"], ["0x100abf23", "mov dword ptr [esp + 0x14], 0", "0x1005a803"], ["0x100abf2b", "mov dword ptr [esp + 0x10], 0x40", "0x1005a80b"], ["0x100abf33", "mov edi, 0x100", "0x1005a813"]]}, {"orig": [["0x100abf38", "mov ebp, edi"]], "recomp": [["0x1005a818", "mov ebx, edi"]]}, {"both": [["0x100abf3a", "jmp 0x8", "0x1005a81a"], ["0x100abf3c", "mov dword ptr [esp + 0x14], 0", "0x1005a81c"]]}, {"orig": [["0x100abf44", "cmp ebp, -1"]], "recomp": [["0x1005a824", "cmp ebx, -1"]]}, {"both": [["0x100abf47", "je 0xc", "0x1005a827"], ["0x100abf49", "mov eax, dword ptr [esp + 0x18]", "0x1005a829"], ["0x100abf4d", "mov ecx, dword ptr [esp + 0x2c]", "0x1005a82d"]]}, {"orig": [["0x100abf51", "push ebp"]], "recomp": [["0x1005a831", "push ebx"]]}, {"both": [["0x100abf52", "call dword ptr [eax + 0x2c]", "0x1005a832"], ["0x100abf55", "cmp dword ptr [esp + 0x10], -1", "0x1005a835"], ["0x100abf5a", "je 0x10", "0x1005a83a"], ["0x100abf5c", "mov eax, dword ptr [esp + 0x10]", "0x1005a83c"], ["0x100abf60", "mov ecx, dword ptr [esp + 0x2c]", "0x1005a840"], ["0x100abf64", "mov ebx, dword ptr [esp + 0x18]", "0x1005a844"], ["0x100abf68", "push eax", "0x1005a848"], ["0x100abf69", "call dword ptr [ebx + 0x30]", "0x1005a849"], ["0x100abf6c", "mov ecx, dword ptr [esi + 0xc]", "0x1005a84c"], ["0x100abf6f", "push 0", "0x1005a84f"]]}]]]}, {"address": "0x100ac030", "recomp": "0x1005a910", "name": "TglSurface::DestroyView", "matching": 1.0, "diff": []}, {"address": "0x100ac050", "recomp": "0x1005a930", "name": "TglSurface::Render", "matching": 0.9802631578947368, "diff": [["@@ -0x100ac0d5,26 +0x1005a9b5,26 @@", [{"both": [["0x100ac0d5", "lea ecx, [ebp - 0x14]", "0x1005a9b5"], ["0x100ac0d8", "push ecx", "0x1005a9b8"], ["0x100ac0d9", "call edi", "0x1005a9b9"], ["0x100ac0db", "mov eax, dword ptr [ebp - 0x10]", "0x1005a9bb"], ["0x100ac0de", "cmp dword ptr [ebp - 0x28], eax", "0x1005a9be"], ["0x100ac0e1", "je 0x10", "0x1005a9c1"], ["0x100ac0e3", "mov dword ptr [ebp - 0x24], 0xffffffff", "0x1005a9c3"], ["0x100ac0ea", "mov dword ptr [ebp - 0x20], 0x7fefffff", "0x1005a9ca"], ["0x100ac0f1", "jmp 0x25", "0x1005a9d1"], ["0x100ac0f3", "mov eax, dword ptr [ebp - 0x14]", "0x1005a9d3"]]}, {"orig": [], "recomp": [["0x1005a9d6", "mov ecx, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100ac0f6", "sub eax, dword ptr [ebp - 0x2c]", "0x1005a9d9"], ["0x100ac0f9", "mov dword ptr [ebp - 0x14], eax", "0x1005a9dc"], ["0x100ac0fc", "xor eax, eax", "0x1005a9df"], ["0x100ac0fe", "mov dword ptr [ebp - 0x10], eax", "0x1005a9e1"], ["0x100ac101", "fild qword ptr [ebp - 0x14]", "0x1005a9e4"]]}, {"orig": [["0x100ac104", "mov ecx, dword ptr [ebp - 0x1c]"]], "recomp": []}, {"both": [["0x100ac107", "mov dword ptr [ebp - 0x14], ecx", "0x1005a9e7"], ["0x100ac10a", "mov dword ptr [ebp - 0x10], eax", "0x1005a9ea"], ["0x100ac10d", "fild qword ptr [ebp - 0x14]", "0x1005a9ed"], ["0x100ac110", "fdivp st(1)", "0x1005a9f0"], ["0x100ac112", "fadd qword ptr [ebp - 0x24]", "0x1005a9f2"], ["0x100ac115", "fstp qword ptr [ebp - 0x24]", "0x1005a9f5"], ["0x100ac118", "lea eax, [ebp - 0x14]", "0x1005a9f8"], ["0x100ac11b", "lea ebx, [esi + 0x38]", "0x1005a9fb"], ["0x100ac11e", "push eax", "0x1005a9fe"], ["0x100ac11f", "call edi", "0x1005a9ff"]]}]], ["@@ -0x100ac1c0,24 +0x1005aaa0,24 @@", [{"both": [["0x100ac1c0", "mov dword ptr [esi + 0x48], eax", "0x1005aaa0"], ["0x100ac1c3", "mov dword ptr [ecx + 4], eax", "0x1005aaa3"], ["0x100ac1c6", "mov dword ptr [esi + 0x30], eax", "0x1005aaa6"], ["0x100ac1c9", "mov dword ptr [esi + 0x34], eax", "0x1005aaa9"], ["0x100ac1cc", "mov dword ptr [ebx], eax", "0x1005aaac"], ["0x100ac1ce", "mov dword ptr [ebx + 4], eax", "0x1005aaae"], ["0x100ac1d1", "mov dword ptr [esi + 0x28], eax", "0x1005aab1"], ["0x100ac1d4", "add esi, 0x50", "0x1005aab4"], ["0x100ac1d7", "push esi", "0x1005aab7"], ["0x100ac1d8", "call edi", "0x1005aab8"]]}, {"orig": [], "recomp": [["0x1005aaba", "mov eax, dword ptr [ebp - 0x20]"], ["0x1005aabd", "mov ecx, dword ptr [ebp - 0x24]"]]}, {"both": [["0x100ac1da", "mov dword ptr [ebp - 4], 0xffffffff", "0x1005aac0"]]}, {"orig": [["0x100ac1e1", "mov eax, dword ptr [ebp - 0x20]"]], "recomp": []}, {"both": [["0x100ac1e4", "mov dword ptr [ebp - 0x10], eax", "0x1005aac7"]]}, {"orig": [["0x100ac1e7", "mov ecx, dword ptr [ebp - 0x24]"]], "recomp": []}, {"both": [["0x100ac1ea", "mov dword ptr [ebp - 0x14], ecx", "0x1005aaca"], ["0x100ac1ed", "call <OFFSET4>", "0x1005aacd"], ["0x100ac1f2", "fld qword ptr [ebp - 0x14]", "0x1005aad2"], ["0x100ac1f5", "mov eax, dword ptr [ebp - 0xc]", "0x1005aad5"], ["0x100ac1f8", "pop edi", "0x1005aad8"], ["0x100ac1f9", "mov dword ptr fs:[0], eax", "0x1005aad9"], ["0x100ac1ff", "pop esi", "0x1005aadf"], ["0x100ac200", "pop ebx", "0x1005aae0"], ["0x100ac201", "mov esp, ebp", "0x1005aae1"], ["0x100ac203", "pop ebp", "0x1005aae3"]]}]]]}, {"address": "0x100ac220", "recomp": "0x1005ca20", "name": "MxNotification::MxNotification", "matching": 1.0, "diff": []}, {"address": "0x100ac240", "recomp": "0x1005ca40", "name": "MxNotification::~MxNotification", "matching": 1.0, "diff": []}, {"address": "0x100ac250", "recomp": "0x1005ca50", "name": "MxNotificationManager::MxNotificationManager", "matching": 1.0, "diff": []}, {"address": "0x100ac320", "recomp": "0x1005cb20", "name": "list<unsigned int,allocator<unsigned int> >::~list<unsigned int,allocator<unsigned int> >", "matching": 1.0, "diff": []}, {"address": "0x100ac390", "recomp": "0x1005cb90", "name": "MxNotificationManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ac3b0", "recomp": "0x1005cbb0", "name": "MxIdList::~MxIdList", "matching": 1.0, "diff": []}, {"address": "0x100ac400", "recomp": "0x1005cc00", "name": "List<unsigned int>::~List<unsigned int>", "matching": 1.0, "diff": []}, {"address": "0x100ac450", "recomp": "0x1005cc50", "name": "MxNotificationManager::~MxNotificationManager", "matching": 1.0, "diff": []}, {"address": "0x100ac540", "recomp": "0x1005cd40", "name": "List<MxNotification *>::~List<MxNotification *>", "matching": 1.0, "diff": []}, {"address": "0x100ac590", "recomp": "0x1005cd90", "name": "list<MxNotification *,allocator<MxNotification *> >::~list<MxNotification *,allocator<MxNotification *> >", "matching": 0.972972972972973, "diff": [["@@ -0x100ac5b3,21 +0x1005cdb3,21 @@", [{"both": [["0x100ac5b3", "mov eax, dword ptr [eax]", "0x1005cdb3"], ["0x100ac5b5", "mov dword ptr [ecx], eax", "0x1005cdb5"], ["0x100ac5b7", "mov ecx, dword ptr [edx]", "0x1005cdb7"], ["0x100ac5b9", "mov eax, dword ptr [esp + 8]", "0x1005cdb9"], ["0x100ac5bd", "push eax", "0x1005cdbd"], ["0x100ac5be", "mov edx, dword ptr [eax]", "0x1005cdbe"], ["0x100ac5c0", "mov dword ptr [edx + 4], ecx", "0x1005cdc0"], ["0x100ac5c3", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005cdc3"], ["0x100ac5c8", "add esp, 4", "0x1005cdc8"], ["0x100ac5cb", "dec dword ptr [esi + 8]", "0x1005cdcb"]]}, {"orig": [["0x100ac5ce", "cmp edi, dword ptr [esp + 0x10]"]], "recomp": [["0x1005cdce", "cmp dword ptr [esp + 0x10], edi"]]}, {"both": [["0x100ac5d2", "jne -0x2e", "0x1005cdd2"], ["0x100ac5d4", "mov eax, dword ptr [esi + 4]", "0x1005cdd4"], ["0x100ac5d7", "push eax", "0x1005cdd7"], ["0x100ac5d8", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005cdd8"], ["0x100ac5dd", "mov dword ptr [esi + 4], 0", "0x1005cddd"], ["0x100ac5e4", "add esp, 4", "0x1005cde4"], ["0x100ac5e7", "mov dword ptr [esi + 8], 0", "0x1005cde7"], ["0x100ac5ee", "pop edi", "0x1005cdee"], ["0x100ac5ef", "pop esi", "0x1005cdef"], ["0x100ac5f0", "add esp, 0xc", "0x1005cdf0"]]}]]]}, {"address": "0x100ac600", "recomp": "0x1005ce00", "name": "MxNotificationManager::Create", "matching": 1.0, "diff": []}, {"address": "0x100ac6c0", "recomp": "0x1005cec0", "name": "MxNotificationManager::Send", "matching": 0.8640776699029126, "diff": [["@@ -0x100ac6c0,93 +0x1005cec0,93 @@", [{"both": [["0x100ac6c0", "mov eax, dword ptr fs:[0]", "0x1005cec0"], ["0x100ac6c6", "push ebp", "0x1005cec6"], ["0x100ac6c7", "mov ebp, esp", "0x1005cec7"], ["0x100ac6c9", "push -1", "0x1005cec9"], ["0x100ac6cb", "push <OFFSET1>", "0x1005cecb"], ["0x100ac6d0", "push eax", "0x1005ced0"], ["0x100ac6d1", "mov dword ptr fs:[0], esp", "0x1005ced1"], ["0x100ac6d8", "sub esp, 0x14", "0x1005ced8"], ["0x100ac6db", "push ebx", "0x1005cedb"], ["0x100ac6dc", "push esi", "0x1005cedc"]]}, {"orig": [], "recomp": [["0x1005cedd", "lea eax, [ecx + 0x10]"]]}, {"both": [["0x100ac6dd", "push edi", "0x1005cee0"]]}, {"orig": [["0x100ac6de", "lea eax, [ecx + 0x10]"], ["0x100ac6e1", "mov edi, ecx"]], "recomp": [["0x1005cee1", "mov esi, ecx"]]}, {"both": [["0x100ac6e3", "push eax", "0x1005cee3"], ["0x100ac6e4", "lea ecx, [ebp - 0x1c]", "0x1005cee4"], ["0x100ac6e7", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x1005cee7"], ["0x100ac6ec", "mov dword ptr [ebp - 4], 0", "0x1005ceec"]]}, {"orig": [["0x100ac6f3", "cmp byte ptr [edi + 0x3c], 0"]], "recomp": [["0x1005cef3", "cmp byte ptr [esi + 0x3c], 0"]]}, {"both": [["0x100ac6f7", "jne 0x24", "0x1005cef7"], ["0x100ac6f9", "mov dword ptr [ebp - 4], 0xffffffff", "0x1005cef9"], ["0x100ac700", "call <OFFSET3>", "0x1005cf00"], ["0x100ac705", "mov eax, 0xffffffff", "0x1005cf05"], ["0x100ac70a", "mov ecx, dword ptr [ebp - 0xc]", "0x1005cf0a"], ["0x100ac70d", "pop edi", "0x1005cf0d"], ["0x100ac70e", "mov dword ptr fs:[0], ecx", "0x1005cf0e"], ["0x100ac715", "pop esi", "0x1005cf15"], ["0x100ac716", "pop ebx", "0x1005cf16"], ["0x100ac717", "mov esp, ebp", "0x1005cf17"], ["0x100ac719", "pop ebp", "0x1005cf19"], ["0x100ac71a", "ret 8", "0x1005cf1a"], ["0x100ac71d", "mov ebx, dword ptr [ebp + 8]", "0x1005cf1d"]]}, {"orig": [["0x100ac720", "mov ecx, dword ptr [edi + 0x34]"]], "recomp": [["0x1005cf20", "mov ecx, dword ptr [esi + 0x34]"]]}, {"both": [["0x100ac723", "mov dword ptr [ebp - 0x14], ecx", "0x1005cf23"], ["0x100ac726", "mov eax, dword ptr [ebx + 4]", "0x1005cf26"], ["0x100ac729", "mov dword ptr [ebp - 0x20], eax", "0x1005cf29"], ["0x100ac72c", "mov edx, dword ptr [ecx]", "0x1005cf2c"], ["0x100ac72e", "mov eax, edx", "0x1005cf2e"], ["0x100ac730", "cmp edx, ecx", "0x1005cf30"], ["0x100ac732", "je 0xf", "0x1005cf32"], ["0x100ac734", "mov edx, dword ptr [ebp - 0x20]", "0x1005cf34"], ["0x100ac737", "cmp dword ptr [eax + 8], edx", "0x1005cf37"], ["0x100ac73a", "je 0x7", "0x1005cf3a"], ["0x100ac73c", "mov eax, dword ptr [eax]", "0x1005cf3c"]]}, {"orig": [["0x100ac73e", "cmp eax, dword ptr [ebp - 0x14]"]], "recomp": [["0x1005cf3e", "cmp dword ptr [ebp - 0x14], eax"]]}, {"both": [["0x100ac741", "jne -0xf", "0x1005cf41"], ["0x100ac743", "cmp eax, ecx", "0x1005cf43"], ["0x100ac745", "je -0x4e", "0x1005cf45"], ["0x100ac747", "push 8", "0x1005cf47"], ["0x100ac749", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005cf49"], ["0x100ac74e", "mov dword ptr [ebp - 0x14], eax", "0x1005cf4e"], ["0x100ac751", "add esp, 4", "0x1005cf51"], ["0x100ac754", "mov byte ptr [ebp - 4], 1", "0x1005cf54"]]}, {"orig": [["0x100ac758", "mov esi, eax"], ["0x100ac75a", "test esi, esi"]], "recomp": [["0x1005cf58", "mov edi, eax"], ["0x1005cf5a", "test edi, edi"]]}, {"both": [["0x100ac75c", "je 0x11", "0x1005cf5c"], ["0x100ac75e", "mov eax, dword ptr [ebp + 0xc]", "0x1005cf5e"]]}, {"orig": [["0x100ac761", "mov ecx, esi"]], "recomp": [["0x1005cf61", "mov ecx, edi"]]}, {"both": [["0x100ac763", "push eax", "0x1005cf63"], ["0x100ac764", "push ebx", "0x1005cf64"], ["0x100ac765", "call MxNotification::MxNotification (FUNCTION)", "0x1005cf65"], ["0x100ac76a", "mov dword ptr [ebp - 0x10], eax", "0x1005cf6a"], ["0x100ac76d", "jmp 0x7", "0x1005cf6d"], ["0x100ac76f", "mov dword ptr [ebp - 0x10], 0", "0x1005cf6f"], ["0x100ac776", "mov byte ptr [ebp - 4], 0", "0x1005cf76"], ["0x100ac77a", "cmp dword ptr [ebp - 0x10], 0", "0x1005cf7a"], ["0x100ac77e", "je -0x8b", "0x1005cf7e"]]}, {"orig": [["0x100ac784", "mov esi, dword ptr [edi + 8]"]], "recomp": [["0x1005cf84", "mov esi, dword ptr [esi + 8]"]]}, {"both": [["0x100ac787", "push 0xc", "0x1005cf87"], ["0x100ac789", "mov eax, dword ptr [esi + 4]", "0x1005cf89"], ["0x100ac78c", "mov dword ptr [ebp - 0x14], eax", "0x1005cf8c"]]}, {"orig": [["0x100ac78f", "lea ebx, [eax + 4]"], ["0x100ac792", "mov edi, dword ptr [ebx]"]], "recomp": [["0x1005cf8f", "lea edi, [eax + 4]"], ["0x1005cf92", "mov ebx, dword ptr [edi]"]]}, {"both": [["0x100ac794", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005cf94"], ["0x100ac799", "add esp, 4", "0x1005cf99"]]}, {"orig": [["0x100ac79c", "test edi, edi"]], "recomp": [["0x1005cf9c", "test ebx, ebx"]]}, {"both": [["0x100ac79e", "je 0xa", "0x1005cf9e"], ["0x100ac7a0", "mov ecx, dword ptr [ebp - 0x14]", "0x1005cfa0"], ["0x100ac7a3", "mov dword ptr [eax], ecx", "0x1005cfa3"]]}, {"orig": [["0x100ac7a5", "mov dword ptr [eax + 4], edi"]], "recomp": [["0x1005cfa5", "mov dword ptr [eax + 4], ebx"]]}, {"both": [["0x100ac7a8", "jmp 0x5", "0x1005cfa8"], ["0x100ac7aa", "mov dword ptr [eax], eax", "0x1005cfaa"], ["0x100ac7ac", "mov dword ptr [eax + 4], eax", "0x1005cfac"]]}, {"orig": [["0x100ac7af", "mov dword ptr [ebx], eax"]], "recomp": [["0x1005cfaf", "mov dword ptr [edi], eax"]]}, {"both": [["0x100ac7b1", "mov ecx, dword ptr [eax + 4]", "0x1005cfb1"], ["0x100ac7b4", "mov dword ptr [ecx], eax", "0x1005cfb4"], ["0x100ac7b6", "add eax, 8", "0x1005cfb6"], ["0x100ac7b9", "je 0x5", "0x1005cfb9"], ["0x100ac7bb", "mov ecx, dword ptr [ebp - 0x10]", "0x1005cfbb"], ["0x100ac7be", "mov dword ptr [eax], ecx", "0x1005cfbe"], ["0x100ac7c0", "mov dword ptr [ebp - 4], 0xffffffff", "0x1005cfc0"], ["0x100ac7c7", "inc dword ptr [esi + 8]", "0x1005cfc7"], ["0x100ac7ca", "call <OFFSET3>", "0x1005cfca"], ["0x100ac7cf", "xor eax, eax", "0x1005cfcf"]]}]]]}, {"address": "0x100ac800", "recomp": "0x1005d000", "name": "MxNotificationManager::Tickle", "matching": 1.0, "diff": []}, {"address": "0x100ac990", "recomp": "0x1005d190", "name": "MxNotificationManager::FlushPending", "matching": 0.9148418491484185, "diff": [["@@ -0x100ac9c8,56 +0x1005d1c8,56 @@", [{"both": [["0x100ac9c8", "mov eax, 0xffffffff", "0x1005d1c8"], ["0x100ac9cd", "lea ecx, [ebp - 0x2c]", "0x1005d1cd"], ["0x100ac9d0", "lea eax, [esi + 0x10]", "0x1005d1d0"], ["0x100ac9d3", "mov dword ptr [ebp - 4], edi", "0x1005d1d3"], ["0x100ac9d6", "mov dword ptr [ebp - 4], 2", "0x1005d1d6"], ["0x100ac9dd", "push eax", "0x1005d1dd"], ["0x100ac9de", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x1005d1de"], ["0x100ac9e3", "mov byte ptr [ebp - 4], 3", "0x1005d1e3"], ["0x100ac9e7", "mov eax, dword ptr [esi + 0xc]", "0x1005d1e7"], ["0x100ac9ea", "test eax, eax", "0x1005d1ea"]]}, {"orig": [["0x100ac9ec", "je 0xa1"]], "recomp": [["0x1005d1ec", "je 0xa0"]]}, {"both": [["0x100ac9f2", "mov eax, dword ptr [eax + 4]", "0x1005d1f2"]]}, {"orig": [], "recomp": [["0x1005d1f5", "mov edi, dword ptr [ebp + 8]"]]}, {"both": [["0x100ac9f5", "mov ecx, dword ptr [eax]", "0x1005d1f8"], ["0x100ac9f7", "mov dword ptr [ebp - 0x10], ecx", "0x1005d1fa"], ["0x100ac9fa", "cmp ecx, eax", "0x1005d1fd"]]}, {"orig": [["0x100ac9fc", "mov edi, dword ptr [ebp + 8]"], ["0x100ac9ff", "je 0x91"]], "recomp": [["0x1005d1ff", "je 0x90"]]}, {"both": [["0x100aca05", "mov eax, dword ptr [ebp - 0x10]", "0x1005d205"], ["0x100aca08", "mov ecx, dword ptr [eax + 8]", "0x1005d208"], ["0x100aca0b", "mov dword ptr [ebp - 0x14], ecx", "0x1005d20b"], ["0x100aca0e", "mov ecx, dword ptr [edi + 4]", "0x1005d20e"], ["0x100aca11", "mov eax, dword ptr [ebp - 0x14]", "0x1005d211"], ["0x100aca14", "mov edx, dword ptr [eax]", "0x1005d214"], ["0x100aca16", "cmp dword ptr [edx + 4], ecx", "0x1005d216"], ["0x100aca19", "je 0x19", "0x1005d219"], ["0x100aca1b", "mov edx, dword ptr [eax + 4]", "0x1005d21b"], ["0x100aca1e", "mov eax, dword ptr [edx + 8]", "0x1005d21e"], ["0x100aca21", "test eax, eax", "0x1005d221"], ["0x100aca23", "je 0x5", "0x1005d223"], ["0x100aca25", "cmp dword ptr [eax + 4], ecx", "0x1005d225"], ["0x100aca28", "je 0xa", "0x1005d228"], ["0x100aca2a", "mov eax, dword ptr [ebp - 0x10]", "0x1005d22a"], ["0x100aca2d", "mov ecx, dword ptr [eax]", "0x1005d22d"], ["0x100aca2f", "mov dword ptr [ebp - 0x10], ecx", "0x1005d22f"]]}, {"orig": [["0x100aca32", "jmp 0x4e"], ["0x100aca34", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1005d232", "jmp 0x4d"], ["0x1005d234", "mov eax, dword ptr [ebp - 0x10]"], ["0x1005d237", "mov ebx, dword ptr [esi + 0xc]"]]}, {"both": [["0x100aca37", "mov dword ptr [ebp - 0x18], eax", "0x1005d23a"], ["0x100aca3a", "mov eax, dword ptr [ebp - 0x10]", "0x1005d23d"], ["0x100aca3d", "mov ecx, dword ptr [eax]", "0x1005d240"], ["0x100aca3f", "mov dword ptr [ebp - 0x10], ecx", "0x1005d242"], ["0x100aca42", "mov ecx, dword ptr [ebp - 0x18]", "0x1005d245"]]}, {"orig": [["0x100aca45", "mov eax, dword ptr [ebp - 0x18]"], ["0x100aca48", "mov edx, dword ptr [ecx + 4]"], ["0x100aca4b", "mov ebx, dword ptr [esi + 0xc]"]], "recomp": []}, {"both": [["0x100aca4e", "add ecx, 4", "0x1005d248"]]}, {"orig": [], "recomp": [["0x1005d24b", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100aca51", "mov eax, dword ptr [eax]", "0x1005d24e"]]}, {"orig": [], "recomp": [["0x1005d250", "mov edx, dword ptr [ecx]"]]}, {"both": [["0x100aca53", "mov dword ptr [edx], eax", "0x1005d252"], ["0x100aca55", "mov edx, dword ptr [ecx]", "0x1005d254"], ["0x100aca57", "mov eax, dword ptr [ebp - 0x18]", "0x1005d256"], ["0x100aca5a", "mov ecx, dword ptr [eax]", "0x1005d259"], ["0x100aca5c", "mov dword ptr [ecx + 4], edx", "0x1005d25b"], ["0x100aca5f", "mov eax, dword ptr [ebp - 0x18]", "0x1005d25e"], ["0x100aca62", "push eax", "0x1005d261"], ["0x100aca63", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005d262"], ["0x100aca68", "add esp, 4", "0x1005d267"], ["0x100aca6b", "lea edx, [ebp - 0x14]", "0x1005d26a"]]}]], ["@@ -0x100aca71,58 +0x1005d270,58 @@", [{"both": [["0x100aca71", "dec dword ptr [ebx + 8]", "0x1005d270"], ["0x100aca74", "mov ecx, dword ptr [ebp - 0x20]", "0x1005d273"], ["0x100aca77", "push edx", "0x1005d276"], ["0x100aca78", "push ecx", "0x1005d277"], ["0x100aca79", "push eax", "0x1005d278"], ["0x100aca7a", "lea ecx, [ebp - 0x24]", "0x1005d279"], ["0x100aca7d", "call list<MxNotification *,allocator<MxNotification *> >::insert (FUNCTION)", "0x1005d27c"], ["0x100aca82", "mov eax, dword ptr [esi + 0xc]", "0x1005d281"], ["0x100aca85", "mov ecx, dword ptr [ebp - 0x10]", "0x1005d284"], ["0x100aca88", "cmp dword ptr [eax + 4], ecx", "0x1005d287"]]}, {"orig": [["0x100aca8b", "jne -0x8c"]], "recomp": [["0x1005d28a", "jne -0x8b"]]}, {"both": [["0x100aca91", "jmp 0x3", "0x1005d290"], ["0x100aca93", "mov edi, dword ptr [ebp + 8]", "0x1005d292"], ["0x100aca96", "mov eax, dword ptr [esi + 8]", "0x1005d295"], ["0x100aca99", "mov eax, dword ptr [eax + 4]", "0x1005d298"], ["0x100aca9c", "mov ecx, dword ptr [eax]", "0x1005d29b"], ["0x100aca9e", "mov dword ptr [ebp - 0x10], ecx", "0x1005d29d"]]}, {"orig": [["0x100acaa1", "cmp eax, ecx"], ["0x100acaa3", "je 0x8c"]], "recomp": [["0x1005d2a0", "cmp ecx, eax"], ["0x1005d2a2", "je 0x8b"]]}, {"both": [["0x100acaa9", "mov eax, dword ptr [ebp - 0x10]", "0x1005d2a8"], ["0x100acaac", "mov ecx, dword ptr [eax + 8]", "0x1005d2ab"], ["0x100acaaf", "mov dword ptr [ebp - 0x14], ecx", "0x1005d2ae"], ["0x100acab2", "mov ecx, dword ptr [edi + 4]", "0x1005d2b1"], ["0x100acab5", "mov eax, dword ptr [ebp - 0x14]", "0x1005d2b4"], ["0x100acab8", "mov edx, dword ptr [eax]", "0x1005d2b7"], ["0x100acaba", "cmp dword ptr [edx + 4], ecx", "0x1005d2b9"], ["0x100acabd", "je 0x19", "0x1005d2bc"], ["0x100acabf", "mov edx, dword ptr [eax + 4]", "0x1005d2be"], ["0x100acac2", "mov eax, dword ptr [edx + 8]", "0x1005d2c1"], ["0x100acac5", "test eax, eax", "0x1005d2c4"], ["0x100acac7", "je 0x5", "0x1005d2c6"], ["0x100acac9", "cmp dword ptr [eax + 4], ecx", "0x1005d2c8"], ["0x100acacc", "je 0xa", "0x1005d2cb"], ["0x100acace", "mov eax, dword ptr [ebp - 0x10]", "0x1005d2cd"], ["0x100acad1", "mov ecx, dword ptr [eax]", "0x1005d2d0"], ["0x100acad3", "mov dword ptr [ebp - 0x10], ecx", "0x1005d2d2"]]}, {"orig": [["0x100acad6", "jmp 0x4e"], ["0x100acad8", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1005d2d5", "jmp 0x4d"], ["0x1005d2d7", "mov eax, dword ptr [ebp - 0x10]"], ["0x1005d2da", "mov ebx, dword ptr [esi + 8]"]]}, {"both": [["0x100acadb", "mov dword ptr [ebp - 0x18], eax", "0x1005d2dd"], ["0x100acade", "mov eax, dword ptr [ebp - 0x10]", "0x1005d2e0"], ["0x100acae1", "mov ecx, dword ptr [eax]", "0x1005d2e3"], ["0x100acae3", "mov dword ptr [ebp - 0x10], ecx", "0x1005d2e5"], ["0x100acae6", "mov ecx, dword ptr [ebp - 0x18]", "0x1005d2e8"]]}, {"orig": [["0x100acae9", "mov eax, dword ptr [ebp - 0x18]"], ["0x100acaec", "mov edx, dword ptr [ecx + 4]"], ["0x100acaef", "mov ebx, dword ptr [esi + 8]"]], "recomp": []}, {"both": [["0x100acaf2", "add ecx, 4", "0x1005d2eb"]]}, {"orig": [], "recomp": [["0x1005d2ee", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100acaf5", "mov eax, dword ptr [eax]", "0x1005d2f1"]]}, {"orig": [], "recomp": [["0x1005d2f3", "mov edx, dword ptr [ecx]"]]}, {"both": [["0x100acaf7", "mov dword ptr [edx], eax", "0x1005d2f5"], ["0x100acaf9", "mov edx, dword ptr [ecx]", "0x1005d2f7"], ["0x100acafb", "mov eax, dword ptr [ebp - 0x18]", "0x1005d2f9"], ["0x100acafe", "mov ecx, dword ptr [eax]", "0x1005d2fc"], ["0x100acb00", "mov dword ptr [ecx + 4], edx", "0x1005d2fe"], ["0x100acb03", "mov eax, dword ptr [ebp - 0x18]", "0x1005d301"], ["0x100acb06", "push eax", "0x1005d304"], ["0x100acb07", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005d305"], ["0x100acb0c", "add esp, 4", "0x1005d30a"], ["0x100acb0f", "lea edx, [ebp - 0x14]", "0x1005d30d"]]}]], ["@@ -0x100acb15,21 +0x1005d313,21 @@", [{"both": [["0x100acb15", "dec dword ptr [ebx + 8]", "0x1005d313"], ["0x100acb18", "mov ecx, dword ptr [ebp - 0x20]", "0x1005d316"], ["0x100acb1b", "push edx", "0x1005d319"], ["0x100acb1c", "push ecx", "0x1005d31a"], ["0x100acb1d", "push eax", "0x1005d31b"], ["0x100acb1e", "lea ecx, [ebp - 0x24]", "0x1005d31c"], ["0x100acb21", "call list<MxNotification *,allocator<MxNotification *> >::insert (FUNCTION)", "0x1005d31f"], ["0x100acb26", "mov eax, dword ptr [esi + 8]", "0x1005d324"], ["0x100acb29", "mov ecx, dword ptr [ebp - 0x10]", "0x1005d327"], ["0x100acb2c", "cmp dword ptr [eax + 4], ecx", "0x1005d32a"]]}, {"orig": [["0x100acb2f", "jne -0x8c"]], "recomp": [["0x1005d32d", "jne -0x8b"]]}, {"both": [["0x100acb35", "mov byte ptr [ebp - 4], 2", "0x1005d333"], ["0x100acb39", "call <OFFSET6>", "0x1005d337"], ["0x100acb3e", "cmp dword ptr [ebp - 0x1c], 0", "0x1005d33c"], ["0x100acb42", "je 0x5b", "0x1005d340"], ["0x100acb44", "xor esi, esi", "0x1005d342"], ["0x100acb46", "lea eax, [ebp - 0x10]", "0x1005d344"], ["0x100acb49", "lea ecx, [ebp - 0x24]", "0x1005d347"], ["0x100acb4c", "push eax", "0x1005d34a"], ["0x100acb4d", "call list<MxNotification *,allocator<MxNotification *> >::begin (FUNCTION)", "0x1005d34b"], ["0x100acb52", "mov eax, dword ptr [eax]", "0x1005d350"]]}]], ["@@ -0x100acbba,10 +0x1005d3b8,11 @@", [{"both": [["0x100acbba", "ret 4", "0x1005d3b8"], ["0x100acbbd", "lea ecx, [ebp - 0x2c]", "0x1005d3bb"], ["0x100acbc0", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x1005d3be"], ["0x100acbc5", "lea ecx, [ebp - 0x24]", "0x1005d3c3"], ["0x100acbc8", "jmp list<MxNotification *,allocator<MxNotification *> >::~list<MxNotification *,allocator<MxNotification *> > (FUNCTION)", "0x1005d3c6"], ["0x100acbcd", "lea ecx, [ebp - 0x24]", "0x1005d3cb"], ["0x100acbd0", "jmp List<MxNotification *>::~List<MxNotification *> (FUNCTION)", "0x1005d3ce"], ["0x100acbd5", "mov eax, <OFFSET14>", "0x1005d3d3"], ["0x100acbda", "jmp ___CxxFrameHandler (FUNCTION)", "0x1005d3d8"], ["0x100acbdf", "lea ecx, [ebp - 0x24]", "0x1005d3dd"]]}, {"orig": [], "recomp": [["0x1005d3e0", "jmp MxNotificationPtrList::~MxNotificationPtrList (FUNCTION)"]]}]]]}, {"address": "0x100acbf0", "recomp": "0x1005d3f0", "name": "list<MxNotification *,allocator<MxNotification *> >::begin", "matching": 1.0, "diff": []}, {"address": "0x100acc00", "recomp": "0x1005d400", "name": "list<MxNotification *,allocator<MxNotification *> >::insert", "matching": 1.0, "effective": true, "diff": [["@@ -0x100acc00,28 +0x1005d400,28 @@", [{"both": [["0x100acc00", "push ebx", "0x1005d400"], ["0x100acc01", "push esi", "0x1005d401"], ["0x100acc02", "push edi", "0x1005d402"], ["0x100acc03", "mov esi, ecx", "0x1005d403"]]}, {"orig": [["0x100acc05", "mov edi, dword ptr [esp + 0x14]"]], "recomp": [["0x1005d405", "mov ebx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100acc09", "push 0xc", "0x1005d409"]]}, {"orig": [["0x100acc0b", "mov ebx, dword ptr [edi + 4]"]], "recomp": [["0x1005d40b", "mov edi, dword ptr [ebx + 4]"]]}, {"both": [["0x100acc0e", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005d40e"], ["0x100acc13", "add esp, 4", "0x1005d413"]]}, {"orig": [["0x100acc16", "test ebx, ebx"]], "recomp": [["0x1005d416", "test edi, edi"]]}, {"both": [["0x100acc18", "je 0x7", "0x1005d418"]]}, {"orig": [["0x100acc1a", "mov dword ptr [eax], edi"], ["0x100acc1c", "mov dword ptr [eax + 4], ebx"]], "recomp": [["0x1005d41a", "mov dword ptr [eax], ebx"], ["0x1005d41c", "mov dword ptr [eax + 4], edi"]]}, {"both": [["0x100acc1f", "jmp 0x5", "0x1005d41f"], ["0x100acc21", "mov dword ptr [eax], eax", "0x1005d421"], ["0x100acc23", "mov dword ptr [eax + 4], eax", "0x1005d423"], ["0x100acc26", "lea edx, [eax + 8]", "0x1005d426"]]}, {"orig": [["0x100acc29", "mov dword ptr [edi + 4], eax"]], "recomp": [["0x1005d429", "mov dword ptr [ebx + 4], eax"]]}, {"both": [["0x100acc2c", "mov ecx, dword ptr [eax + 4]", "0x1005d42c"], ["0x100acc2f", "test edx, edx", "0x1005d42f"], ["0x100acc31", "mov dword ptr [ecx], eax", "0x1005d431"], ["0x100acc33", "je 0x8", "0x1005d433"], ["0x100acc35", "mov ecx, dword ptr [esp + 0x18]", "0x1005d435"], ["0x100acc39", "mov ebx, dword ptr [ecx]", "0x1005d439"], ["0x100acc3b", "mov dword ptr [edx], ebx", "0x1005d43b"], ["0x100acc3d", "mov ecx, dword ptr [esp + 0x10]", "0x1005d43d"], ["0x100acc41", "inc dword ptr [esi + 8]", "0x1005d441"], ["0x100acc44", "pop edi", "0x1005d444"]]}]]]}, {"address": "0x100acc50", "recomp": "0x1005d450", "name": "list<MxNotification *,allocator<MxNotification *> >::erase", "matching": 1.0, "diff": []}, {"address": "0x100acca0", "recomp": "0x1005d4a0", "name": "list<MxNotification *,allocator<MxNotification *> >::_Buynode", "matching": 1.0, "diff": []}, {"address": "0x100accd0", "recomp": "0x1005d4d0", "name": "MxNotificationPtrList::~MxNotificationPtrList", "matching": 1.0, "diff": []}, {"address": "0x100acd20", "recomp": "0x1005d520", "name": "MxNotificationManager::Register", "matching": 0.9852941176470589, "diff": [["@@ -0x100acd59,21 +0x1005d559,21 @@", [{"both": [["0x100acd59", "mov dword ptr [ebp - 0x14], edi", "0x1005d559"], ["0x100acd5c", "mov ecx, dword ptr [eax + 4]", "0x1005d55c"], ["0x100acd5f", "mov dword ptr [ebp - 0x20], ecx", "0x1005d55f"], ["0x100acd62", "mov eax, dword ptr [edi]", "0x1005d562"], ["0x100acd64", "cmp eax, edi", "0x1005d564"], ["0x100acd66", "je 0x31", "0x1005d566"], ["0x100acd68", "mov edx, dword ptr [ebp - 0x20]", "0x1005d568"], ["0x100acd6b", "cmp dword ptr [eax + 8], edx", "0x1005d56b"], ["0x100acd6e", "je 0x7", "0x1005d56e"], ["0x100acd70", "mov eax, dword ptr [eax]", "0x1005d570"]]}, {"orig": [["0x100acd72", "cmp dword ptr [ebp - 0x14], eax"]], "recomp": [["0x1005d572", "cmp eax, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100acd75", "jne -0xf", "0x1005d575"], ["0x100acd77", "cmp eax, edi", "0x1005d577"], ["0x100acd79", "je 0x1e", "0x1005d579"], ["0x100acd7b", "mov dword ptr [ebp - 4], 0xffffffff", "0x1005d57b"], ["0x100acd82", "call <OFFSET3>", "0x1005d582"], ["0x100acd87", "mov eax, dword ptr [ebp - 0xc]", "0x1005d587"], ["0x100acd8a", "pop edi", "0x1005d58a"], ["0x100acd8b", "mov dword ptr fs:[0], eax", "0x1005d58b"], ["0x100acd91", "pop esi", "0x1005d591"], ["0x100acd92", "pop ebx", "0x1005d592"]]}]]]}, {"address": "0x100acdf0", "recomp": "0x1005d5f0", "name": "MxNotificationManager::Unregister", "matching": 0.9830508474576272, "diff": [["@@ -0x100ace2b,21 +0x1005d62b,21 @@", [{"both": [["0x100ace2b", "mov eax, dword ptr [edi + 4]", "0x1005d62b"], ["0x100ace2e", "mov dword ptr [ebp - 0x20], eax", "0x1005d62e"], ["0x100ace31", "mov eax, dword ptr [ecx]", "0x1005d631"], ["0x100ace33", "mov edx, eax", "0x1005d633"], ["0x100ace35", "cmp eax, ecx", "0x1005d635"], ["0x100ace37", "je 0xf", "0x1005d637"], ["0x100ace39", "mov eax, dword ptr [ebp - 0x20]", "0x1005d639"], ["0x100ace3c", "cmp dword ptr [edx + 8], eax", "0x1005d63c"], ["0x100ace3f", "je 0x7", "0x1005d63f"], ["0x100ace41", "mov edx, dword ptr [edx]", "0x1005d641"]]}, {"orig": [["0x100ace43", "cmp dword ptr [ebp - 0x14], edx"]], "recomp": [["0x1005d643", "cmp edx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100ace46", "jne -0xf", "0x1005d646"], ["0x100ace48", "cmp edx, ecx", "0x1005d648"], ["0x100ace4a", "je 0x23", "0x1005d64a"], ["0x100ace4c", "mov ecx, dword ptr [edx]", "0x1005d64c"], ["0x100ace4e", "mov eax, dword ptr [edx + 4]", "0x1005d64e"], ["0x100ace51", "push edx", "0x1005d651"], ["0x100ace52", "mov dword ptr [eax], ecx", "0x1005d652"], ["0x100ace54", "mov eax, dword ptr [edx + 4]", "0x1005d654"], ["0x100ace57", "mov ecx, dword ptr [edx]", "0x1005d657"], ["0x100ace59", "mov dword ptr [ecx + 4], eax", "0x1005d659"]]}]]]}, {"address": "0x100acea0", "recomp": "0x1005bf70", "name": "ObjectFactory", "matching": 1.0, "diff": []}, {"address": "0x100aceb0", "recomp": "0x1005bf80", "name": "NotificationManager", "matching": 1.0, "diff": []}, {"address": "0x100acec0", "recomp": "0x1005bf90", "name": "TickleManager", "matching": 1.0, "diff": []}, {"address": "0x100aced0", "recomp": "0x1005bfa0", "name": "Timer", "matching": 1.0, "diff": []}, {"address": "0x100acee0", "recomp": "0x1005bfb0", "name": "AtomIdCounterSet", "matching": 1.0, "diff": []}, {"address": "0x100acef0", "recomp": "0x1005bfc0", "name": "Streamer", "matching": 1.0, "diff": []}, {"address": "0x100acf00", "recomp": "0x1005bfd0", "name": "MSoundManager", "matching": 1.0, "diff": []}, {"address": "0x100acf10", "recomp": "0x1005bfe0", "name": "MVideoManager", "matching": 1.0, "diff": []}, {"address": "0x100acf20", "recomp": "0x1005bff0", "name": "VariableTable", "matching": 1.0, "diff": []}, {"address": "0x100acf30", "recomp": "0x1005c000", "name": "MusicManager", "matching": 1.0, "diff": []}, {"address": "0x100acf40", "recomp": "0x1005c010", "name": "EventManager", "matching": 1.0, "diff": []}, {"address": "0x100acf50", "recomp": "0x1005c020", "name": "Start", "matching": 1.0, "diff": []}, {"address": "0x100acf70", "recomp": "0x1005c040", "name": "DeleteObject", "matching": 1.0, "diff": []}, {"address": "0x100acf90", "recomp": "0x1005b6f0", "name": "MxAtomId::MxAtomId", "matching": 1.0, "diff": []}, {"address": "0x100acfd0", "recomp": "0x1005b730", "name": "MxAtomId::~MxAtomId", "matching": 1.0, "diff": []}, {"address": "0x100acfe0", "recomp": "0x1005b740", "name": "MxAtomId::Destroy", "matching": 0.9805825242718447, "diff": [["@@ -0x100ad035,35 +0x1005b795,35 @@", [{"both": [["0x100ad035", "call MxString::operator= (FUNCTION)", "0x1005b795"], ["0x100ad03a", "mov word ptr [ebp - 0x1c], di", "0x1005b79a"], ["0x100ad03e", "lea eax, [ebp - 0x2c]", "0x1005b79e"], ["0x100ad041", "mov dword ptr [ebp - 4], 0xffffffff", "0x1005b7a1"], ["0x100ad048", "mov dword ptr [ebp - 4], 1", "0x1005b7a8"], ["0x100ad04f", "mov dword ptr [ebp - 0x14], eax", "0x1005b7af"], ["0x100ad052", "call AtomIdCounterSet (FUNCTION)", "0x1005b7b2"], ["0x100ad057", "mov edi, dword ptr [eax + 4]", "0x1005b7b7"], ["0x100ad05a", "mov esi, eax", "0x1005b7ba"], ["0x100ad05c", "mov ebx, dword ptr [edi + 4]", "0x1005b7bc"]]}, {"orig": [["0x100ad05f", "cmp ebx, dword ptr [<OFFSET6>]"]], "recomp": [["0x1005b7bf", "cmp ebx, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100ad065", "je 0x25", "0x1005b7c5"], ["0x100ad067", "lea eax, [ebp - 0x14]", "0x1005b7c7"], ["0x100ad06a", "lea ecx, [ebx + 0xc]", "0x1005b7ca"], ["0x100ad06d", "push eax", "0x1005b7cd"], ["0x100ad06e", "push ecx", "0x1005b7ce"], ["0x100ad06f", "lea ecx, [esi + 1]", "0x1005b7cf"], ["0x100ad072", "call MxAtomIdCounterCompare::operator() (FUNCTION)", "0x1005b7d2"], ["0x100ad077", "test eax, eax", "0x1005b7d7"], ["0x100ad079", "jne 0x6", "0x1005b7d9"], ["0x100ad07b", "mov edi, ebx", "0x1005b7db"], ["0x100ad07d", "mov ebx, dword ptr [ebx]", "0x1005b7dd"], ["0x100ad07f", "jmp 0x3", "0x1005b7df"], ["0x100ad081", "mov ebx, dword ptr [ebx + 8]", "0x1005b7e1"]]}, {"orig": [["0x100ad084", "cmp ebx, dword ptr [<OFFSET6>]"]], "recomp": [["0x1005b7e4", "cmp ebx, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100ad08a", "jne -0x25", "0x1005b7ea"], ["0x100ad08c", "mov dword ptr [ebp - 0x18], edi", "0x1005b7ec"], ["0x100ad08f", "cmp dword ptr [esi + 4], edi", "0x1005b7ef"], ["0x100ad092", "je 0x38", "0x1005b7f2"], ["0x100ad094", "mov eax, dword ptr [ebp - 0x14]", "0x1005b7f4"], ["0x100ad097", "mov edx, dword ptr [edi + 0xc]", "0x1005b7f7"], ["0x100ad09a", "mov ecx, dword ptr [eax + 8]", "0x1005b7fa"], ["0x100ad09d", "mov eax, dword ptr [edx + 8]", "0x1005b7fd"], ["0x100ad0a0", "mov dl, byte ptr [ecx]", "0x1005b800"], ["0x100ad0a2", "cmp dl, byte ptr [eax]", "0x1005b802"]]}]]]}, {"address": "0x100ad120", "recomp": "0x1005b880", "name": "MxAtomIdCounterCompare::operator()", "matching": 1.0, "diff": []}, {"address": "0x100ad170", "recomp": "0x1005b8d0", "name": "MxAtomIdCounter::~MxAtomIdCounter", "matching": 1.0, "diff": []}, {"address": "0x100ad1c0", "recomp": "0x1005b920", "name": "MxAtomId::operator=", "matching": 1.0, "diff": []}, {"address": "0x100ad210", "recomp": "0x1005b970", "name": "MxAtomId::GetCounter", "matching": 0.9863636363636363, "diff": [["@@ -0x100ad23a,23 +0x1005b99a,23 @@", [{"both": [["0x100ad23a", "mov dword ptr [ebp - 4], edi", "0x1005b99a"], ["0x100ad23d", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005b99d"], ["0x100ad242", "mov dword ptr [ebp - 0x10], eax", "0x1005b9a2"], ["0x100ad245", "add esp, 4", "0x1005b9a5"], ["0x100ad248", "mov esi, eax", "0x1005b9a8"], ["0x100ad24a", "mov byte ptr [ebp - 4], bl", "0x1005b9aa"], ["0x100ad24d", "test esi, esi", "0x1005b9ad"], ["0x100ad24f", "je 0x29", "0x1005b9af"], ["0x100ad251", "mov ecx, esi", "0x1005b9b1"], ["0x100ad253", "call MxString::MxString (FUNCTION)", "0x1005b9b3"]]}, {"orig": [], "recomp": [["0x1005b9b8", "mov byte ptr [ebp - 4], 2"]]}, {"both": [["0x100ad258", "mov eax, dword ptr [ebp + 8]", "0x1005b9bc"], ["0x100ad25b", "mov ecx, esi", "0x1005b9bf"]]}, {"orig": [["0x100ad25d", "mov byte ptr [ebp - 4], 2"]], "recomp": []}, {"both": [["0x100ad261", "push eax", "0x1005b9c1"], ["0x100ad262", "call MxString::operator= (FUNCTION)", "0x1005b9c2"], ["0x100ad267", "mov word ptr [esi + 0x10], di", "0x1005b9c7"], ["0x100ad26b", "mov ecx, esi", "0x1005b9cb"], ["0x100ad26d", "mov byte ptr [ebp - 4], bl", "0x1005b9cd"], ["0x100ad270", "jmp 0xa", "0x1005b9d0"], ["0x100ad272", "mov ecx, dword ptr [ebp - 0x10]", "0x1005b9d2"], ["0x100ad275", "jmp MxString::~MxString (FUNCTION)", "0x1005b9d5"], ["0x100ad27a", "xor ecx, ecx", "0x1005b9da"], ["0x100ad27c", "mov byte ptr [ebp - 4], 0", "0x1005b9dc"]]}]], ["@@ -0x100ad332,21 +0x1005ba92,21 @@", [{"both": [["0x100ad332", "mov ecx, dword ptr [eax + 0xc]", "0x1005ba92"], ["0x100ad335", "mov dword ptr [ebp - 0x14], ecx", "0x1005ba95"], ["0x100ad338", "jmp 0xee", "0x1005ba98"], ["0x100ad33d", "mov ecx, dword ptr [ebp - 0x18]", "0x1005ba9d"], ["0x100ad340", "jmp MxString::~MxString (FUNCTION)", "0x1005baa0"], ["0x100ad345", "call AtomIdCounterSet (FUNCTION)", "0x1005baa5"], ["0x100ad34a", "mov edi, dword ptr [eax + 4]", "0x1005baaa"], ["0x100ad34d", "mov ebx, eax", "0x1005baad"], ["0x100ad34f", "mov eax, 1", "0x1005baaf"], ["0x100ad354", "mov esi, dword ptr [edi + 4]", "0x1005bab4"]]}, {"orig": [["0x100ad357", "cmp dword ptr [<OFFSET12>], esi"]], "recomp": [["0x1005bab7", "cmp esi, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100ad35d", "je 0x51", "0x1005babd"], ["0x100ad35f", "mov edi, esi", "0x1005babf"], ["0x100ad361", "mov eax, dword ptr [ebp - 0x14]", "0x1005bac1"], ["0x100ad364", "mov ecx, dword ptr [esi + 0xc]", "0x1005bac4"], ["0x100ad367", "mov eax, dword ptr [eax + 8]", "0x1005bac7"], ["0x100ad36a", "mov edx, dword ptr [ecx + 8]", "0x1005baca"], ["0x100ad36d", "mov cl, byte ptr [eax]", "0x1005bacd"], ["0x100ad36f", "cmp cl, byte ptr [edx]", "0x1005bacf"], ["0x100ad371", "jne 0x1a", "0x1005bad1"], ["0x100ad373", "or cl, cl", "0x1005bad3"]]}]], ["@@ -0x100ad38f,21 +0x1005baef,21 @@", [{"both": [["0x100ad38f", "sbb eax, -1", "0x1005baef"], ["0x100ad392", "test eax, eax", "0x1005baf2"], ["0x100ad394", "mov eax, 1", "0x1005baf4"], ["0x100ad399", "jg 0x2", "0x1005baf9"], ["0x100ad39b", "xor eax, eax", "0x1005bafb"], ["0x100ad39d", "test eax, eax", "0x1005bafd"], ["0x100ad39f", "jne 0x5", "0x1005baff"], ["0x100ad3a1", "mov esi, dword ptr [esi + 8]", "0x1005bb01"], ["0x100ad3a4", "jmp 0x2", "0x1005bb04"], ["0x100ad3a6", "mov esi, dword ptr [esi]", "0x1005bb06"]]}, {"orig": [["0x100ad3a8", "cmp dword ptr [<OFFSET12>], esi"]], "recomp": [["0x1005bb08", "cmp esi, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100ad3ae", "jne -0x51", "0x1005bb0e"], ["0x100ad3b0", "cmp dword ptr [ebx + 8], 0", "0x1005bb10"], ["0x100ad3b4", "je 0xb", "0x1005bb14"], ["0x100ad3b6", "lea eax, [ebp - 0x14]", "0x1005bb16"], ["0x100ad3b9", "lea ecx, [ebp - 0x20]", "0x1005bb19"], ["0x100ad3bc", "push eax", "0x1005bb1c"], ["0x100ad3bd", "push edi", "0x1005bb1d"], ["0x100ad3be", "push esi", "0x1005bb1e"], ["0x100ad3bf", "jmp 0x62", "0x1005bb1f"], ["0x100ad3c1", "mov dword ptr [ebp - 0x10], edi", "0x1005bb21"]]}]]]}, {"address": "0x100ad480", "recomp": "0x1005bbe0", "name": "_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::iterator::_Dec", "matching": 0.7272727272727273, "diff": [["@@ -0x100ad483,31 +0x1005bbe3,31 @@", [{"both": [["0x100ad483", "cmp dword ptr [esi + 0x10], 0", "0x1005bbe3"], ["0x100ad487", "jne 0xf", "0x1005bbe7"], ["0x100ad489", "mov eax, dword ptr [esi + 4]", "0x1005bbe9"], ["0x100ad48c", "cmp dword ptr [eax + 4], esi", "0x1005bbec"], ["0x100ad48f", "jne 0x7", "0x1005bbef"], ["0x100ad491", "mov eax, dword ptr [esi + 8]", "0x1005bbf1"], ["0x100ad494", "pop esi", "0x1005bbf4"], ["0x100ad495", "mov dword ptr [ecx], eax", "0x1005bbf5"], ["0x100ad497", "ret ", "0x1005bbf7"], ["0x100ad498", "mov edx, dword ptr [esi]", "0x1005bbf8"]]}, {"orig": [["0x100ad49a", "cmp edx, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005bbfa", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], edx"]]}, {"both": [["0x100ad4a0", "je 0x13", "0x1005bc00"], ["0x100ad4a2", "mov eax, dword ptr [edx + 8]", "0x1005bc02"]]}, {"orig": [["0x100ad4a5", "cmp eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005bc05", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100ad4ab", "je 0x4", "0x1005bc0b"], ["0x100ad4ad", "mov edx, eax", "0x1005bc0d"], ["0x100ad4af", "jmp -0xf", "0x1005bc0f"], ["0x100ad4b1", "pop esi", "0x1005bc11"], ["0x100ad4b2", "mov dword ptr [ecx], edx", "0x1005bc12"], ["0x100ad4b4", "ret ", "0x1005bc14"]]}, {"orig": [["0x100ad4b5", "mov edx, dword ptr [esi + 4]"], ["0x100ad4b8", "cmp dword ptr [edx], esi"]], "recomp": [["0x1005bc15", "mov eax, dword ptr [esi + 4]"], ["0x1005bc18", "cmp dword ptr [eax], esi"]]}, {"both": [["0x100ad4ba", "jne 0xb", "0x1005bc1a"]]}, {"orig": [["0x100ad4bc", "mov dword ptr [ecx], edx"], ["0x100ad4be", "mov eax, edx"], ["0x100ad4c0", "mov edx, dword ptr [edx + 4]"], ["0x100ad4c3", "cmp dword ptr [edx], eax"]], "recomp": [["0x1005bc1c", "mov dword ptr [ecx], eax"], ["0x1005bc1e", "mov edx, eax"], ["0x1005bc20", "mov eax, dword ptr [eax + 4]"], ["0x1005bc23", "cmp dword ptr [eax], edx"]]}, {"both": [["0x100ad4c5", "je -0xb", "0x1005bc25"], ["0x100ad4c7", "pop esi", "0x1005bc27"]]}, {"orig": [["0x100ad4c8", "mov dword ptr [ecx], edx"]], "recomp": [["0x1005bc28", "mov dword ptr [ecx], eax"]]}, {"both": [["0x100ad4ca", "ret ", "0x1005bc2a"]]}]]]}, {"address": "0x100ad4d0", "recomp": "0x1005bc30", "name": "_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Insert", "matching": 0.7685774946921444, "diff": [["@@ -0x100ad4d5,34 +0x1005bc35,34 @@", [{"both": [["0x100ad4d5", "push edi", "0x1005bc35"], ["0x100ad4d6", "mov esi, ecx", "0x1005bc36"], ["0x100ad4d8", "push ebp", "0x1005bc38"], ["0x100ad4d9", "push 0x14", "0x1005bc39"], ["0x100ad4db", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005bc3b"], ["0x100ad4e0", "mov ecx, dword ptr [esp + 0x24]", "0x1005bc40"], ["0x100ad4e4", "mov dword ptr [esp + 0x14], eax", "0x1005bc44"], ["0x100ad4e8", "add esp, 4", "0x1005bc48"], ["0x100ad4eb", "mov dword ptr [eax + 4], ecx", "0x1005bc4b"], ["0x100ad4ee", "mov dword ptr [eax + 0x10], 0", "0x1005bc4e"]]}, {"orig": [["0x100ad4f5", "mov ebx, dword ptr [<OFFSET2>]"]], "recomp": [["0x1005bc55", "mov ebx, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100ad4fb", "add eax, 0xc", "0x1005bc5b"], ["0x100ad4fe", "mov edi, dword ptr [esp + 0x24]", "0x1005bc5e"], ["0x100ad502", "mov dword ptr [eax - 0xc], ebx", "0x1005bc62"]]}, {"orig": [["0x100ad505", "mov ebx, dword ptr [<OFFSET2>]"]], "recomp": [["0x1005bc65", "mov ebx, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100ad50b", "mov dword ptr [eax - 4], ebx", "0x1005bc6b"], ["0x100ad50e", "je 0x4", "0x1005bc6e"], ["0x100ad510", "mov edx, dword ptr [edi]", "0x1005bc70"], ["0x100ad512", "mov dword ptr [eax], edx", "0x1005bc72"], ["0x100ad514", "inc dword ptr [esi + 0xc]", "0x1005bc74"], ["0x100ad517", "cmp dword ptr [esi + 4], ecx", "0x1005bc77"], ["0x100ad51a", "je 0x55", "0x1005bc7a"], ["0x100ad51c", "mov eax, dword ptr [esp + 0x1c]", "0x1005bc7c"]]}, {"orig": [["0x100ad520", "cmp eax, dword ptr [<OFFSET2>]"]], "recomp": [["0x1005bc80", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100ad526", "jne 0x49", "0x1005bc86"], ["0x100ad528", "mov eax, dword ptr [edi]", "0x1005bc88"], ["0x100ad52a", "mov edx, dword ptr [ecx + 0xc]", "0x1005bc8a"], ["0x100ad52d", "mov edi, dword ptr [eax + 8]", "0x1005bc8d"], ["0x100ad530", "mov eax, dword ptr [edx + 8]", "0x1005bc90"], ["0x100ad533", "mov dl, byte ptr [edi]", "0x1005bc93"], ["0x100ad535", "cmp dl, byte ptr [eax]", "0x1005bc95"], ["0x100ad537", "jne 0x1a", "0x1005bc97"], ["0x100ad539", "or dl, dl", "0x1005bc99"], ["0x100ad53b", "je 0x12", "0x1005bc9b"]]}]], ["@@ -0x100ad580,44 +0x1005bce0,44 @@", [{"both": [["0x100ad580", "jne 0x11", "0x1005bce0"], ["0x100ad582", "mov dword ptr [eax], edx", "0x1005bce2"], ["0x100ad584", "jmp 0xd", "0x1005bce4"], ["0x100ad586", "mov edx, dword ptr [esp + 0x10]", "0x1005bce6"], ["0x100ad58a", "mov dword ptr [eax + 4], edx", "0x1005bcea"], ["0x100ad58d", "mov eax, dword ptr [esi + 4]", "0x1005bced"], ["0x100ad590", "mov dword ptr [eax + 8], edx", "0x1005bcf0"], ["0x100ad593", "mov ecx, dword ptr [esp + 0x10]", "0x1005bcf3"], ["0x100ad597", "mov eax, dword ptr [esi + 4]", "0x1005bcf7"], ["0x100ad59a", "cmp dword ptr [eax + 4], ecx", "0x1005bcfa"]]}, {"orig": [["0x100ad59d", "je 0x1b3"]], "recomp": [["0x1005bcfd", "je 0x1b7"]]}, {"both": [["0x100ad5a3", "lea edx, [ecx + 4]", "0x1005bd03"], ["0x100ad5a6", "mov eax, dword ptr [edx]", "0x1005bd06"]]}, {"orig": [["0x100ad5a8", "lea ebx, [eax + 0x10]"], ["0x100ad5ab", "cmp dword ptr [ebx], 0"], ["0x100ad5ae", "jne 0x1a2"]], "recomp": [["0x1005bd08", "lea ebp, [eax + 0x10]"], ["0x1005bd0b", "cmp dword ptr [ebp], 0"], ["0x1005bd0f", "jne 0x1a5"]]}, {"both": [["0x100ad5b4", "lea edi, [eax + 4]", "0x1005bd15"]]}, {"orig": [["0x100ad5b7", "mov ebp, dword ptr [edi]"], ["0x100ad5b9", "mov ebp, dword ptr [ebp]"], ["0x100ad5bc", "cmp ebp, eax"], ["0x100ad5be", "jne 0xbb"], ["0x100ad5c4", "mov ebp, dword ptr [edi]"], ["0x100ad5c6", "mov ebp, dword ptr [ebp + 8]"], ["0x100ad5c9", "cmp dword ptr [ebp + 0x10], 0"], ["0x100ad5cd", "je 0x159"]], "recomp": [["0x1005bd18", "mov ebx, dword ptr [edi]"], ["0x1005bd1a", "mov ebx, dword ptr [ebx]"], ["0x1005bd1c", "cmp ebx, eax"], ["0x1005bd1e", "jne 0xbe"], ["0x1005bd24", "mov ebx, dword ptr [edi]"], ["0x1005bd26", "mov ebx, dword ptr [ebx + 8]"], ["0x1005bd29", "cmp dword ptr [ebx + 0x10], 0"], ["0x1005bd2d", "je 0x15c"]]}, {"both": [["0x100ad5d3", "lea ebx, [eax + 8]", "0x1005bd33"], ["0x100ad5d6", "mov edx, dword ptr [ebx]", "0x1005bd36"], ["0x100ad5d8", "cmp ecx, edx", "0x1005bd38"], ["0x100ad5da", "jne 0x33", "0x1005bd3a"], ["0x100ad5dc", "mov ecx, eax", "0x1005bd3c"], ["0x100ad5de", "mov eax, dword ptr [edx]", "0x1005bd3e"], ["0x100ad5e0", "mov dword ptr [ebx], eax", "0x1005bd40"], ["0x100ad5e2", "mov eax, dword ptr [edx]", "0x1005bd42"]]}, {"orig": [["0x100ad5e4", "cmp eax, dword ptr [<OFFSET2>]"]], "recomp": [["0x1005bd44", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100ad5ea", "je 0x3", "0x1005bd4a"], ["0x100ad5ec", "mov dword ptr [eax + 4], ecx", "0x1005bd4c"], ["0x100ad5ef", "mov eax, dword ptr [edi]", "0x1005bd4f"], ["0x100ad5f1", "mov dword ptr [edx + 4], eax", "0x1005bd51"], ["0x100ad5f4", "mov eax, dword ptr [esi + 4]", "0x1005bd54"], ["0x100ad5f7", "add eax, 4", "0x1005bd57"], ["0x100ad5fa", "cmp dword ptr [eax], ecx", "0x1005bd5a"], ["0x100ad5fc", "je 0xb", "0x1005bd5c"], ["0x100ad5fe", "mov eax, dword ptr [edi]", "0x1005bd5e"], ["0x100ad600", "cmp dword ptr [eax], ecx", "0x1005bd60"]]}]], ["@@ -0x100ad612,54 +0x1005bd72,55 @@", [{"both": [["0x100ad612", "mov dword ptr [eax + 0x10], 1", "0x1005bd72"], ["0x100ad619", "mov eax, dword ptr [ecx + 4]", "0x1005bd79"], ["0x100ad61c", "mov edx, dword ptr [eax + 4]", "0x1005bd7c"], ["0x100ad61f", "mov dword ptr [edx + 0x10], 0", "0x1005bd7f"], ["0x100ad626", "mov eax, dword ptr [ecx + 4]", "0x1005bd86"], ["0x100ad629", "mov edx, dword ptr [eax + 4]", "0x1005bd89"], ["0x100ad62c", "mov edi, dword ptr [edx]", "0x1005bd8c"], ["0x100ad62e", "mov eax, dword ptr [edi + 8]", "0x1005bd8e"], ["0x100ad631", "mov dword ptr [edx], eax", "0x1005bd91"], ["0x100ad633", "mov eax, dword ptr [edi + 8]", "0x1005bd93"]]}, {"orig": [["0x100ad636", "cmp eax, dword ptr [<OFFSET2>]"]], "recomp": [["0x1005bd96", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100ad63c", "je 0x3", "0x1005bd9c"], ["0x100ad63e", "mov dword ptr [eax + 4], edx", "0x1005bd9e"], ["0x100ad641", "mov eax, dword ptr [edx + 4]", "0x1005bda1"], ["0x100ad644", "mov dword ptr [edi + 4], eax", "0x1005bda4"], ["0x100ad647", "mov eax, dword ptr [esi + 4]", "0x1005bda7"], ["0x100ad64a", "add eax, 4", "0x1005bdaa"], ["0x100ad64d", "cmp dword ptr [eax], edx", "0x1005bdad"], ["0x100ad64f", "je 0x24", "0x1005bdaf"], ["0x100ad651", "mov ebx, dword ptr [edx + 4]", "0x1005bdb1"], ["0x100ad654", "lea eax, [ebx + 8]", "0x1005bdb4"], ["0x100ad657", "cmp dword ptr [eax], edx", "0x1005bdb7"], ["0x100ad659", "je 0xd", "0x1005bdb9"], ["0x100ad65b", "mov dword ptr [ebx], edi", "0x1005bdbb"], ["0x100ad65d", "mov dword ptr [edi + 8], edx", "0x1005bdbd"], ["0x100ad660", "mov dword ptr [edx + 4], edi", "0x1005bdc0"]]}, {"orig": [["0x100ad663", "jmp 0xe2"]], "recomp": [["0x1005bdc3", "jmp 0xe6"]]}, {"both": [["0x100ad668", "mov dword ptr [eax], edi", "0x1005bdc8"], ["0x100ad66a", "mov dword ptr [edi + 8], edx", "0x1005bdca"], ["0x100ad66d", "mov dword ptr [edx + 4], edi", "0x1005bdcd"]]}, {"orig": [["0x100ad670", "jmp 0xd5"]], "recomp": [["0x1005bdd0", "jmp 0xd9"]]}, {"both": [["0x100ad675", "mov dword ptr [eax], edi", "0x1005bdd5"], ["0x100ad677", "mov dword ptr [edi + 8], edx", "0x1005bdd7"]]}, {"orig": [["0x100ad67a", "jmp 0xa8"], ["0x100ad67f", "cmp dword ptr [ebp + 0x10], 0"]], "recomp": [["0x1005bdda", "mov dword ptr [edx + 4], edi"], ["0x1005bddd", "jmp 0xcc"], ["0x1005bde2", "cmp dword ptr [ebx + 0x10], 0"]]}, {"both": [["0x100ad683", "je 0xa3", "0x1005bde6"], ["0x100ad689", "mov edx, dword ptr [eax]", "0x1005bdec"], ["0x100ad68b", "cmp ecx, edx", "0x1005bdee"], ["0x100ad68d", "jne 0x38", "0x1005bdf0"], ["0x100ad68f", "mov ecx, eax", "0x1005bdf2"], ["0x100ad691", "mov eax, dword ptr [edx + 8]", "0x1005bdf4"], ["0x100ad694", "mov dword ptr [ecx], eax", "0x1005bdf7"], ["0x100ad696", "mov eax, dword ptr [edx + 8]", "0x1005bdf9"]]}, {"orig": [["0x100ad699", "cmp eax, dword ptr [<OFFSET2>]"]], "recomp": [["0x1005bdfc", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100ad69f", "je 0x3", "0x1005be02"], ["0x100ad6a1", "mov dword ptr [eax + 4], ecx", "0x1005be04"], ["0x100ad6a4", "mov eax, dword ptr [edi]", "0x1005be07"], ["0x100ad6a6", "mov dword ptr [edx + 4], eax", "0x1005be09"], ["0x100ad6a9", "mov eax, dword ptr [esi + 4]", "0x1005be0c"], ["0x100ad6ac", "add eax, 4", "0x1005be0f"], ["0x100ad6af", "cmp dword ptr [eax], ecx", "0x1005be12"], ["0x100ad6b1", "je 0xd", "0x1005be14"], ["0x100ad6b3", "mov ebx, dword ptr [edi]", "0x1005be16"], ["0x100ad6b5", "lea eax, [ebx + 8]", "0x1005be18"]]}]], ["@@ -0x100ad6be,65 +0x1005be21,61 @@", [{"both": [["0x100ad6be", "jmp 0x2", "0x1005be21"], ["0x100ad6c0", "mov dword ptr [eax], edx", "0x1005be23"], ["0x100ad6c2", "mov dword ptr [edx + 8], ecx", "0x1005be25"], ["0x100ad6c5", "mov dword ptr [edi], edx", "0x1005be28"], ["0x100ad6c7", "mov eax, dword ptr [ecx + 4]", "0x1005be2a"], ["0x100ad6ca", "mov dword ptr [eax + 0x10], 1", "0x1005be2d"], ["0x100ad6d1", "mov eax, dword ptr [ecx + 4]", "0x1005be34"], ["0x100ad6d4", "mov edx, dword ptr [eax + 4]", "0x1005be37"], ["0x100ad6d7", "mov dword ptr [edx + 0x10], 0", "0x1005be3a"], ["0x100ad6de", "mov eax, dword ptr [ecx + 4]", "0x1005be41"]]}, {"orig": [["0x100ad6e1", "mov edx, dword ptr [eax + 4]"], ["0x100ad6e4", "mov edi, dword ptr [edx + 8]"], ["0x100ad6e7", "mov eax, dword ptr [edi]"], ["0x100ad6e9", "mov dword ptr [edx + 8], eax"], ["0x100ad6ec", "mov eax, dword ptr [edi]"], ["0x100ad6ee", "cmp eax, dword ptr [<OFFSET2>]"], ["0x100ad6f4", "je 0x3"], ["0x100ad6f6", "mov dword ptr [eax + 4], edx"], ["0x100ad6f9", "mov eax, dword ptr [edx + 4]"], ["0x100ad6fc", "mov dword ptr [edi + 4], eax"], ["0x100ad6ff", "mov eax, dword ptr [esi + 4]"], ["0x100ad702", "add eax, 4"], ["0x100ad705", "cmp dword ptr [eax], edx"]], "recomp": [["0x1005be44", "mov edi, dword ptr [eax + 4]"], ["0x1005be47", "mov edx, dword ptr [edi + 8]"], ["0x1005be4a", "mov eax, dword ptr [edx]"], ["0x1005be4c", "mov dword ptr [edi + 8], eax"], ["0x1005be4f", "mov eax, dword ptr [edx]"], ["0x1005be51", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"], ["0x1005be57", "je 0x3"], ["0x1005be59", "mov dword ptr [eax + 4], edi"], ["0x1005be5c", "mov eax, dword ptr [edi + 4]"], ["0x1005be5f", "mov dword ptr [edx + 4], eax"], ["0x1005be62", "mov eax, dword ptr [esi + 4]"], ["0x1005be65", "add eax, 4"], ["0x1005be68", "cmp dword ptr [eax], edi"]]}, {"both": [["0x100ad707", "je 0x1a", "0x1005be6a"]]}, {"orig": [["0x100ad709", "mov eax, dword ptr [edx + 4]"], ["0x100ad70c", "cmp dword ptr [eax], edx"]], "recomp": [["0x1005be6c", "mov eax, dword ptr [edi + 4]"], ["0x1005be6f", "cmp dword ptr [eax], edi"]]}, {"both": [["0x100ad70e", "je 0xa", "0x1005be71"]]}, {"orig": [["0x100ad710", "mov dword ptr [eax + 8], edi"], ["0x100ad713", "mov dword ptr [edi], edx"], ["0x100ad715", "mov dword ptr [edx + 4], edi"], ["0x100ad718", "jmp 0x30"], ["0x100ad71a", "mov dword ptr [eax], edi"], ["0x100ad71c", "mov dword ptr [edi], edx"], ["0x100ad71e", "mov dword ptr [edx + 4], edi"], ["0x100ad721", "jmp 0x27"], ["0x100ad723", "mov dword ptr [eax], edi"], ["0x100ad725", "mov dword ptr [edi], edx"], ["0x100ad727", "mov dword ptr [edx + 4], edi"], ["0x100ad72a", "jmp 0x1e"], ["0x100ad72c", "mov dword ptr [ebx], 1"], ["0x100ad732", "mov dword ptr [ebp + 0x10], 1"]], "recomp": [["0x1005be73", "mov dword ptr [eax + 8], edx"], ["0x1005be76", "mov dword ptr [edx], edi"], ["0x1005be78", "mov dword ptr [edi + 4], edx"], ["0x1005be7b", "jmp 0x31"], ["0x1005be7d", "mov dword ptr [eax], edx"], ["0x1005be7f", "mov dword ptr [edx], edi"], ["0x1005be81", "mov dword ptr [edi + 4], edx"], ["0x1005be84", "jmp 0x28"], ["0x1005be86", "mov dword ptr [eax], edx"], ["0x1005be88", "mov dword ptr [edx], edi"], ["0x1005be8a", "mov dword ptr [edi + 4], edx"], ["0x1005be8d", "jmp 0x1f"], ["0x1005be8f", "mov dword ptr [ebp], 1"], ["0x1005be96", "mov dword ptr [ebx + 0x10], 1"]]}, {"both": [["0x100ad739", "mov eax, dword ptr [edx]", "0x1005be9d"], ["0x100ad73b", "mov ecx, dword ptr [eax + 4]", "0x1005be9f"], ["0x100ad73e", "mov dword ptr [ecx + 0x10], 0", "0x1005bea2"], ["0x100ad745", "mov eax, dword ptr [edx]", "0x1005bea9"], ["0x100ad747", "mov ecx, dword ptr [eax + 4]", "0x1005beab"], ["0x100ad74a", "mov eax, dword ptr [esi + 4]", "0x1005beae"], ["0x100ad74d", "cmp dword ptr [eax + 4], ecx", "0x1005beb1"]]}, {"orig": [["0x100ad750", "jne -0x1b3"]], "recomp": [["0x1005beb4", "jne -0x1b7"]]}, {"both": [["0x100ad756", "mov eax, dword ptr [esi + 4]", "0x1005beba"], ["0x100ad759", "mov edx, dword ptr [esp + 0x10]", "0x1005bebd"], ["0x100ad75d", "mov ecx, dword ptr [eax + 4]", "0x1005bec1"], ["0x100ad760", "mov eax, dword ptr [esp + 0x18]", "0x1005bec4"], ["0x100ad764", "pop ebp", "0x1005bec8"], ["0x100ad765", "pop edi", "0x1005bec9"], ["0x100ad766", "mov dword ptr [ecx + 0x10], 1", "0x1005beca"], ["0x100ad76d", "pop esi", "0x1005bed1"], ["0x100ad76e", "mov dword ptr [eax], edx", "0x1005bed2"], ["0x100ad770", "pop ebx", "0x1005bed4"], ["0x100ad771", "add esp, 4", "0x1005bed5"], ["0x100ad774", "ret 0x10", "0x1005bed8"]]}, {"orig": [["0x100ad777", "int3 "], ["0x100ad778", "int3 "], ["0x100ad779", "int3 "], ["0x100ad77a", "int3 "]], "recomp": []}]]]}, {"address": "0x100ad780", "recomp": "0x1005bee0", "name": "_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Lbound", "matching": 0.95, "diff": [["@@ -0x100ad780,16 +0x1005bee0,16 @@", [{"both": [["0x100ad780", "push ebx", "0x1005bee0"], ["0x100ad781", "mov eax, dword ptr [ecx + 4]", "0x1005bee1"], ["0x100ad784", "push esi", "0x1005bee4"], ["0x100ad785", "push edi", "0x1005bee5"], ["0x100ad786", "mov esi, dword ptr [eax + 4]", "0x1005bee6"]]}, {"orig": [["0x100ad789", "cmp esi, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005bee9", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], esi"]]}, {"both": [["0x100ad78f", "je 0x49", "0x1005beef"], ["0x100ad791", "mov edx, dword ptr [esp + 0x10]", "0x1005bef1"], ["0x100ad795", "mov ecx, dword ptr [esi + 0xc]", "0x1005bef5"], ["0x100ad798", "mov edi, dword ptr [ecx + 8]", "0x1005bef8"], ["0x100ad79b", "mov ecx, dword ptr [edx]", "0x1005befb"], ["0x100ad79d", "mov ebx, dword ptr [ecx + 8]", "0x1005befd"], ["0x100ad7a0", "mov cl, byte ptr [edi]", "0x1005bf00"], ["0x100ad7a2", "cmp cl, byte ptr [ebx]", "0x1005bf02"], ["0x100ad7a4", "jne 0x1a", "0x1005bf04"], ["0x100ad7a6", "or cl, cl", "0x1005bf06"]]}]], ["@@ -0x100ad7bc,16 +0x1005bf1c,16 @@", [{"both": [["0x100ad7bc", "xor ecx, ecx", "0x1005bf1c"], ["0x100ad7be", "jmp 0x5", "0x1005bf1e"], ["0x100ad7c0", "sbb ecx, ecx", "0x1005bf20"], ["0x100ad7c2", "sbb ecx, -1", "0x1005bf22"], ["0x100ad7c5", "test ecx, ecx", "0x1005bf25"], ["0x100ad7c7", "jg 0x6", "0x1005bf27"], ["0x100ad7c9", "mov eax, esi", "0x1005bf29"], ["0x100ad7cb", "mov esi, dword ptr [esi]", "0x1005bf2b"], ["0x100ad7cd", "jmp 0x3", "0x1005bf2d"], ["0x100ad7cf", "mov esi, dword ptr [esi + 8]", "0x1005bf2f"]]}, {"orig": [["0x100ad7d2", "cmp esi, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005bf32", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], esi"]]}, {"both": [["0x100ad7d8", "jne -0x45", "0x1005bf38"], ["0x100ad7da", "pop edi", "0x1005bf3a"], ["0x100ad7db", "pop esi", "0x1005bf3b"], ["0x100ad7dc", "pop ebx", "0x1005bf3c"], ["0x100ad7dd", "ret 4", "0x1005bf3d"]]}]]]}, {"address": "0x100ad7e0", "recomp": "0x1005bf40", "name": "MxAtomId::Clear", "matching": 1.0, "diff": []}, {"address": "0x100ad7f0", "recomp": "0x1005bf50", "name": "MxAtomIdCounter::Inc", "matching": 1.0, "diff": []}, {"address": "0x100ad800", "recomp": "0x1005bf60", "name": "MxAtomIdCounter::Dec", "matching": 1.0, "diff": []}, {"address": "0x100ad810", "recomp": "0x1005d6a0", "name": "MxDSAction::MxDSAction", "matching": 1.0, "diff": []}, {"address": "0x100ad940", "recomp": "0x1005d910", "name": "MxDSAction::GetDuration", "matching": 1.0, "diff": []}, {"address": "0x100ad950", "recomp": "0x1005d920", "name": "MxDSAction::SetDuration", "matching": 1.0, "diff": []}, {"address": "0x100ad960", "recomp": "0x1005d930", "name": "MxDSAction::HasId", "matching": 1.0, "diff": []}, {"address": "0x100ad980", "recomp": "0x1005d830", "name": "MxDSAction::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100ad990", "recomp": "0x1005d840", "name": "MxDSAction::IsA", "matching": 1.0, "diff": []}, {"address": "0x100ada40", "recomp": "0x1005d950", "name": "MxDSAction::SetUnknown90", "matching": 1.0, "diff": []}, {"address": "0x100ada50", "recomp": "0x1005d960", "name": "MxDSAction::GetUnknown90", "matching": 1.0, "diff": []}, {"address": "0x100ada60", "recomp": "0x1005d8f0", "name": "MxDSAction::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ada80", "recomp": "0x1005d970", "name": "MxDSAction::~MxDSAction", "matching": 1.0, "diff": []}, {"address": "0x100adaf0", "recomp": "0x1005d9e0", "name": "MxDSAction::CopyFrom", "matching": 1.0, "effective": true, "diff": [["@@ -0x100adb30,28 +0x1005da20,28 @@", [{"both": [["0x100adb30", "add edx, 4", "0x1005da20"], ["0x100adb33", "mov dword ptr [ecx], ebx", "0x1005da23"], ["0x100adb35", "add ecx, 4", "0x1005da25"], ["0x100adb38", "dec eax", "0x1005da28"], ["0x100adb39", "jne -0xd", "0x1005da29"], ["0x100adb3b", "lea ecx, [esi + 0x54]", "0x1005da2b"], ["0x100adb3e", "mov eax, dword ptr [edi + 0x58]", "0x1005da2e"], ["0x100adb41", "push eax", "0x1005da31"], ["0x100adb42", "mov ebx, dword ptr [ecx]", "0x1005da32"], ["0x100adb44", "call dword ptr [ebx + 0x20]", "0x1005da34"]]}, {"orig": [["0x100adb47", "lea ecx, [edi + 0x5c]"], ["0x100adb4a", "lea eax, [esi + 0x5c]"], ["0x100adb4d", "mov edx, 3"], ["0x100adb52", "mov ebx, dword ptr [ecx]"], ["0x100adb54", "add ecx, 4"], ["0x100adb57", "mov dword ptr [eax], ebx"]], "recomp": [["0x1005da37", "lea eax, [edi + 0x5c]"], ["0x1005da3a", "lea edx, [esi + 0x5c]"], ["0x1005da3d", "mov ecx, 3"], ["0x1005da42", "mov ebx, dword ptr [eax]"]]}, {"both": [["0x100adb59", "add eax, 4", "0x1005da44"]]}, {"orig": [["0x100adb5c", "dec edx"]], "recomp": [["0x1005da47", "mov dword ptr [edx], ebx"], ["0x1005da49", "add edx, 4"], ["0x1005da4c", "dec ecx"]]}, {"both": [["0x100adb5d", "jne -0xd", "0x1005da4d"], ["0x100adb5f", "lea ecx, [esi + 0x68]", "0x1005da4f"], ["0x100adb62", "mov eax, dword ptr [edi + 0x6c]", "0x1005da52"], ["0x100adb65", "push eax", "0x1005da55"], ["0x100adb66", "mov ebx, dword ptr [ecx]", "0x1005da56"], ["0x100adb68", "call dword ptr [ebx + 0x20]", "0x1005da58"], ["0x100adb6b", "lea edx, [edi + 0x70]", "0x1005da5b"], ["0x100adb6e", "lea ecx, [esi + 0x70]", "0x1005da5e"], ["0x100adb71", "mov eax, 3", "0x1005da61"], ["0x100adb76", "mov ebx, dword ptr [edx]", "0x1005da66"]]}]]]}, {"address": "0x100adbd0", "recomp": "0x1005dac0", "name": "MxDSAction::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x100adbe0", "recomp": "0x1005dad0", "name": "MxDSAction::GetSizeOnDisk", "matching": 1.0, "effective": true, "diff": [["@@ -0x100adbe0,18 +0x1005dad0,18 @@", [{"both": [["0x100adbe0", "push ebx", "0x1005dad0"], ["0x100adbe1", "push esi", "0x1005dad1"], ["0x100adbe2", "push edi", "0x1005dad2"], ["0x100adbe3", "mov ebx, ecx", "0x1005dad3"], ["0x100adbe5", "call MxDSObject::GetSizeOnDisk (FUNCTION)", "0x1005dad5"], ["0x100adbea", "xor ecx, ecx", "0x1005dada"], ["0x100adbec", "mov cx, word ptr [ebx + 0x80]", "0x1005dadc"]]}, {"orig": [["0x100adbf3", "lea esi, [eax + ecx + 0x5a]"]], "recomp": [["0x1005dae3", "lea esi, [ecx + eax + 0x5a]"]]}, {"both": [["0x100adbf7", "mov ecx, ebx", "0x1005dae7"], ["0x100adbf9", "mov edi, esi", "0x1005dae9"], ["0x100adbfb", "call MxDSObject::GetSizeOnDisk (FUNCTION)", "0x1005daeb"], ["0x100adc00", "sub edi, eax", "0x1005daf0"], ["0x100adc02", "mov eax, esi", "0x1005daf2"], ["0x100adc04", "mov dword ptr [ebx + 0x2c], edi", "0x1005daf4"], ["0x100adc07", "pop edi", "0x1005daf7"], ["0x100adc08", "pop esi", "0x1005daf8"], ["0x100adc09", "pop ebx", "0x1005daf9"], ["0x100adc0a", "ret ", "0x1005dafa"]]}]]]}, {"address": "0x100adc10", "recomp": "0x1005db00", "name": "MxDSAction::operator=", "matching": 1.0, "diff": []}, {"address": "0x100adc40", "recomp": "0x1005db30", "name": "MxDSAction::Clone", "matching": 1.0, "diff": []}, {"address": "0x100adcd0", "recomp": "0x1005dbc0", "name": "MxDSAction::GetElapsedTime", "matching": 0.9333333333333333, "diff": [["@@ -0x100adcd0,15 +0x1005dbc0,15 @@", [{"both": [["0x100adcd0", "push esi", "0x1005dbc0"], ["0x100adcd1", "mov esi, ecx", "0x1005dbc1"], ["0x100adcd3", "call Timer (FUNCTION)", "0x1005dbc3"], ["0x100adcd8", "cmp byte ptr [eax + 0xc], 0", "0x1005dbc8"], ["0x100adcdc", "je 0xd", "0x1005dbcc"], ["0x100adcde", "mov eax, dword ptr [MxTimer::g_lastTimeTimerStarted (DATA)]", "0x1005dbce"], ["0x100adce3", "sub eax, dword ptr [esi + 0x90]", "0x1005dbd3"], ["0x100adce9", "pop esi", "0x1005dbd9"], ["0x100adcea", "ret ", "0x1005dbda"], ["0x100adceb", "mov ecx, dword ptr [MxTimer::g_lastTimeCalculated (DATA)]", "0x1005dbdb"]]}, {"orig": [["0x100adcf1", "sub ecx, dword ptr [eax + 8]"]], "recomp": []}, {"both": [["0x100adcf4", "sub ecx, dword ptr [esi + 0x90]", "0x1005dbe1"], ["0x100adcfa", "pop esi", "0x1005dbe7"]]}, {"orig": [], "recomp": [["0x1005dbe8", "sub ecx, dword ptr [eax + 8]"]]}, {"both": [["0x100adcfb", "mov eax, ecx", "0x1005dbeb"], ["0x100adcfd", "ret ", "0x1005dbed"]]}]]]}, {"address": "0x100add00", "recomp": "0x1005dbf0", "name": "MxDSAction::MergeFrom", "matching": 1.0, "diff": []}, {"address": "0x100ade60", "recomp": "0x1005dd50", "name": "MxDSAction::AppendData", "matching": 0.9883720930232558, "diff": [["@@ -0x100adf21,23 +0x1005de11,23 @@", [{"both": [["0x100adf21", "mov dword ptr [ebx + 0x7c], edx", "0x1005de11"], ["0x100adf24", "pop ebp", "0x1005de14"], ["0x100adf25", "pop edi", "0x1005de15"], ["0x100adf26", "pop esi", "0x1005de16"], ["0x100adf27", "pop ebx", "0x1005de17"], ["0x100adf28", "add esp, 4", "0x1005de18"], ["0x100adf2b", "ret 8", "0x1005de1b"], ["0x100adf2e", "and ebp, 0xffff", "0x1005de1e"], ["0x100adf34", "push ebp", "0x1005de24"], ["0x100adf35", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005de25"]]}, {"orig": [], "recomp": [["0x1005de2a", "mov dword ptr [ebx + 0x7c], eax"]]}, {"both": [["0x100adf3a", "add esp, 4", "0x1005de2d"], ["0x100adf3d", "mov edi, eax", "0x1005de30"]]}, {"orig": [["0x100adf3f", "mov dword ptr [ebx + 0x7c], eax"]], "recomp": []}, {"both": [["0x100adf42", "test edi, edi", "0x1005de32"], ["0x100adf44", "je 0x1e", "0x1005de34"], ["0x100adf46", "mov ax, word ptr [esp + 0x18]", "0x1005de36"], ["0x100adf4b", "mov esi, dword ptr [esp + 0x1c]", "0x1005de3b"], ["0x100adf4f", "mov word ptr [ebx + 0x80], ax", "0x1005de3f"], ["0x100adf56", "mov ecx, ebp", "0x1005de46"], ["0x100adf58", "shr ecx, 2", "0x1005de48"], ["0x100adf5b", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1005de4b"], ["0x100adf5d", "mov ecx, ebp", "0x1005de4d"], ["0x100adf5f", "and ecx, 3", "0x1005de4f"]]}]]]}, {"address": "0x100adf70", "recomp": "0x1005de60", "name": "MxDSAction::Deserialize", "matching": 1.0, "diff": []}, {"address": "0x100ae060", "recomp": "0x1005c060", "name": "MxTimer::MxTimer", "matching": 1.0, "diff": []}, {"address": "0x100ae0d0", "recomp": "0x1005c0d0", "name": "MxTimer::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ae140", "recomp": "0x1005c140", "name": "MxTimer::GetRealTime", "matching": 1.0, "diff": []}, {"address": "0x100ae160", "recomp": "0x1005c160", "name": "MxTimer::Start", "matching": 1.0, "diff": []}, {"address": "0x100ae180", "recomp": "0x1005c180", "name": "MxTimer::Stop", "matching": 1.0, "diff": []}, {"address": "0x100ae1a0", "recomp": "0x1005b150", "name": "MxCore::MxCore", "matching": 1.0, "diff": []}, {"address": "0x100ae1c0", "recomp": "0x1005b170", "name": "MxCore::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ae1e0", "recomp": "0x1005b190", "name": "MxCore::~MxCore", "matching": 1.0, "diff": []}, {"address": "0x100ae1f0", "recomp": "0x1005b1a0", "name": "MxCore::Notify", "matching": 1.0, "diff": []}, {"address": "0x100ae200", "recomp": "0x1005b1b0", "name": "MxString::MxString", "matching": 1.0, "diff": []}, {"address": "0x100ae280", "recomp": "0x1005b230", "name": "MxString::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ae2a0", "recomp": "0x1005b250", "name": "MxString::MxString", "matching": 1.0, "diff": []}, {"address": "0x100ae350", "recomp": "0x1005b300", "name": "MxString::MxString", "matching": 1.0, "diff": []}, {"address": "0x100ae420", "recomp": "0x1005b3d0", "name": "MxString::~MxString", "matching": 1.0, "diff": []}, {"address": "0x100ae490", "recomp": "0x1005b440", "name": "MxString::ToUpperCase", "matching": 1.0, "diff": []}, {"address": "0x100ae4a0", "recomp": "0x1005b450", "name": "MxString::ToLowerCase", "matching": 1.0, "diff": []}, {"address": "0x100ae4b0", "recomp": "0x1005b460", "name": "MxString::operator=", "matching": 1.0, "diff": []}, {"address": "0x100ae510", "recomp": "0x1005b4c0", "name": "MxString::operator=", "matching": 1.0, "effective": true, "diff": [["@@ -0x100ae510,17 +0x1005b4c0,17 @@", [{"both": [["0x100ae510", "push ebx", "0x1005b4c0"], ["0x100ae511", "push esi", "0x1005b4c1"], ["0x100ae512", "mov eax, dword ptr [ecx + 8]", "0x1005b4c2"], ["0x100ae515", "push edi", "0x1005b4c5"], ["0x100ae516", "mov ebx, ecx", "0x1005b4c6"], ["0x100ae518", "mov esi, dword ptr [esp + 0x10]", "0x1005b4c8"]]}, {"orig": [["0x100ae51c", "cmp eax, esi"]], "recomp": [["0x1005b4cc", "cmp esi, eax"]]}, {"both": [["0x100ae51e", "je 0x4f", "0x1005b4ce"], ["0x100ae520", "push eax", "0x1005b4d0"], ["0x100ae521", "mov edi, esi", "0x1005b4d1"], ["0x100ae523", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005b4d3"], ["0x100ae528", "add esp, 4", "0x1005b4d8"], ["0x100ae52b", "mov ecx, 0xffffffff", "0x1005b4db"], ["0x100ae530", "sub eax, eax", "0x1005b4e0"], ["0x100ae532", "repne scasb al, byte ptr es:[edi]", "0x1005b4e2"], ["0x100ae534", "not ecx", "0x1005b4e4"], ["0x100ae536", "dec ecx", "0x1005b4e6"]]}]]]}, {"address": "0x100ae580", "recomp": "0x1005b530", "name": "MxString::operator+", "matching": 1.0, "diff": []}, {"address": "0x100ae690", "recomp": "0x1005b640", "name": "MxString::operator+=", "matching": 1.0, "diff": []}, {"address": "0x100ae740", "recomp": "0x10062740", "name": "MxSoundManager::MxSoundManager", "matching": 1.0, "diff": []}, {"address": "0x100ae7b0", "recomp": "0x100627b0", "name": "MxSoundManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ae7d0", "recomp": "0x100627d0", "name": "MxSoundManager::~MxSoundManager", "matching": 1.0, "diff": []}, {"address": "0x100ae830", "recomp": "0x10062830", "name": "MxSoundManager::Init", "matching": 1.0, "diff": []}, {"address": "0x100ae840", "recomp": "0x10062840", "name": "MxSoundManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100ae8b0", "recomp": "0x100628b0", "name": "MxSoundManager::Create", "matching": 1.0, "diff": []}, {"address": "0x100aeab0", "recomp": "0x10062ab0", "name": "MxSoundManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100aeac0", "recomp": "0x10062ac0", "name": "MxSoundManager::SetVolume", "matching": 1.0, "diff": []}, {"address": "0x100aebd0", "recomp": "0x10062bd0", "name": "MxSoundManager::FUN_100aebd0", "matching": 1.0, "diff": []}, {"address": "0x100aecf0", "recomp": "0x10062cf0", "name": "MxSoundManager::GetAttenuation", "matching": 0.8571428571428571, "diff": [["@@ -0x100aecf0,7 +0x10062cf0,7 @@", [{"both": [["0x100aecf0", "mov eax, dword ptr [esp + 4]", "0x10062cf0"], ["0x100aecf4", "test eax, eax", "0x10062cf4"], ["0x100aecf6", "jne 0x8", "0x10062cf6"], ["0x100aecf8", "mov eax, 0xffffd8f0", "0x10062cf8"], ["0x100aecfd", "ret 4", "0x10062cfd"]]}, {"orig": [["0x100aed00", "mov eax, dword ptr [eax*4 + 0x1010141c]"]], "recomp": [["0x10062d00", "mov eax, dword ptr [eax*4 + 0x100be444]"]]}, {"both": [["0x100aed07", "ret 4", "0x10062d07"]]}]]]}, {"address": "0x100aed10", "recomp": "0x10062d10", "name": "MxSoundManager::Pause", "matching": 1.0, "diff": []}, {"address": "0x100aee10", "recomp": "0x10062e10", "name": "MxSoundManager::Resume", "matching": 1.0, "diff": []}, {"address": "0x100aef10", "recomp": "0x1005df50", "name": "MxOmni::MxOmni", "matching": 1.0, "diff": []}, {"address": "0x100aefb0", "recomp": "0x1005e010", "name": "MxOmni::AddToWorld", "matching": 1.0, "diff": []}, {"address": "0x100aefc0", "recomp": "0x1005e020", "name": "MxOmni::NotifyCurrentEntity", "matching": 1.0, "diff": []}, {"address": "0x100aefd0", "recomp": "0x1005dff0", "name": "MxOmni::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100aeff0", "recomp": "0x1005e030", "name": "MxOmni::~MxOmni", "matching": 1.0, "diff": []}, {"address": "0x100af080", "recomp": "0x1005e0c0", "name": "MxOmni::Init", "matching": 1.0, "diff": []}, {"address": "0x100af0b0", "recomp": "0x1005e0f0", "name": "MxOmni::SetInstance", "matching": 1.0, "diff": []}, {"address": "0x100af0c0", "recomp": "0x1005e100", "name": "MxOmni::Create", "matching": 0.9813278008298755, "diff": [["@@ -0x100af0fa,34 +0x1005e13a,34 @@", [{"both": [["0x100af0fa", "cmp eax, esi", "0x1005e13a"], ["0x100af0fc", "je 0xa3", "0x1005e13c"], ["0x100af102", "mov al, byte ptr [ebp - 0x15]", "0x1005e142"], ["0x100af105", "mov ecx, dword ptr [ebp - 0x1c]", "0x1005e145"], ["0x100af108", "mov ebx, 1", "0x1005e148"], ["0x100af10d", "mov byte ptr [ecx], al", "0x1005e14d"], ["0x100af10f", "mov dl, byte ptr [ebp - 0x1d]", "0x1005e14f"], ["0x100af112", "mov byte ptr [ebp - 4], bl", "0x1005e152"], ["0x100af115", "mov byte ptr [ecx + 1], dl", "0x1005e155"], ["0x100af118", "mov dword ptr [ecx + 8], esi", "0x1005e158"]]}, {"orig": [["0x100af11b", "cmp dword ptr [<OFFSET3>], esi"]], "recomp": [["0x1005e15b", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], esi"]]}, {"both": [["0x100af121", "jne 0x1f", "0x1005e161"], ["0x100af123", "push 0x14", "0x1005e163"], ["0x100af125", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005e165"], ["0x100af12a", "add esp, 4", "0x1005e16a"], ["0x100af12d", "mov dword ptr [eax + 4], esi", "0x1005e16d"], ["0x100af130", "mov dword ptr [eax + 0x10], ebx", "0x1005e170"]]}, {"orig": [["0x100af133", "mov dword ptr [<OFFSET3>], eax"]], "recomp": [["0x1005e173", "mov dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100af138", "mov dword ptr [eax], esi", "0x1005e178"]]}, {"orig": [["0x100af13a", "mov eax, dword ptr [<OFFSET3>]"]], "recomp": [["0x1005e17a", "mov eax, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100af13f", "mov dword ptr [eax + 8], esi", "0x1005e17f"], ["0x100af142", "mov byte ptr [ebp - 4], 0", "0x1005e182"], ["0x100af146", "call <OFFSET4>", "0x1005e186"]]}, {"orig": [["0x100af14b", "mov esi, dword ptr [<OFFSET3>]"]], "recomp": [["0x1005e18b", "mov esi, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100af151", "push 0x14", "0x1005e191"], ["0x100af153", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005e193"], ["0x100af158", "add esp, 4", "0x1005e198"], ["0x100af15b", "mov ecx, dword ptr [ebp - 0x1c]", "0x1005e19b"], ["0x100af15e", "mov dword ptr [eax + 4], esi", "0x1005e19e"], ["0x100af161", "mov dword ptr [eax + 0x10], 0", "0x1005e1a1"], ["0x100af168", "mov dword ptr [ecx + 4], eax", "0x1005e1a8"], ["0x100af16b", "mov dword ptr [ecx + 0xc], 0", "0x1005e1ab"], ["0x100af172", "mov eax, dword ptr [ecx + 4]", "0x1005e1b2"], ["0x100af175", "mov byte ptr [ebp - 4], 0", "0x1005e1b5"]]}]], ["@@ -0x100af190,23 +0x1005e1d0,24 @@", [{"both": [["0x100af190", "jmp _Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::~_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCou (FUNCTION)", "0x1005e1d0"], ["0x100af195", "mov ecx, dword ptr [ebp - 0x1c]", "0x1005e1d5"], ["0x100af198", "jmp set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::~set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> > (FUNCTION)", "0x1005e1d8"], ["0x100af19d", "mov ecx, dword ptr [ebp - 0x1c]", "0x1005e1dd"], ["0x100af1a0", "jmp Set<MxAtomIdCounter *,MxAtomIdCounterCompare>::~Set<MxAtomIdCounter *,MxAtomIdCounterCompare> (FUNCTION)", "0x1005e1e0"], ["0x100af1a5", "xor eax, eax", "0x1005e1e5"], ["0x100af1a7", "mov edx, dword ptr [ebp - 0x14]", "0x1005e1e7"], ["0x100af1aa", "test eax, eax", "0x1005e1ea"], ["0x100af1ac", "mov dword ptr [ebp - 4], 0xffffffff", "0x1005e1ec"], ["0x100af1b3", "mov dword ptr [edx + 0x44], eax", "0x1005e1f3"]]}, {"orig": [["0x100af1b6", "je 0x4be"]], "recomp": [["0x1005e1f6", "je 0x4c1"]]}, {"both": [["0x100af1bc", "mov esi, dword ptr [ebp + 8]", "0x1005e1fc"]]}, {"orig": [["0x100af1bf", "lea ecx, [edx + 8]"]], "recomp": [["0x1005e1ff", "mov ecx, dword ptr [ebp - 0x14]"], ["0x1005e202", "add ecx, 8"]]}, {"both": [["0x100af1c2", "lea eax, [esi + 4]", "0x1005e205"], ["0x100af1c5", "push eax", "0x1005e208"], ["0x100af1c6", "call MxString::operator= (FUNCTION)", "0x1005e209"], ["0x100af1cb", "mov eax, dword ptr [esi + 0x14]", "0x1005e20e"], ["0x100af1ce", "mov edx, dword ptr [ebp - 0x14]", "0x1005e211"], ["0x100af1d1", "mov dword ptr [edx + 0x18], eax", "0x1005e214"], ["0x100af1d4", "test byte ptr [esi + 0x3c], 1", "0x1005e217"], ["0x100af1d8", "je 0x49", "0x1005e21b"], ["0x100af1da", "push 0x38", "0x1005e21d"], ["0x100af1dc", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005e21f"]]}]], ["@@ -0x100af34e,23 +0x1005e391,23 @@", [{"both": [["0x100af34e", "mov ebx, 0xb", "0x1005e391"], ["0x100af353", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005e396"], ["0x100af358", "mov dword ptr [ebp - 0x20], eax", "0x1005e39b"], ["0x100af35b", "add esp, 4", "0x1005e39e"], ["0x100af35e", "mov edi, eax", "0x1005e3a1"], ["0x100af360", "mov dword ptr [ebp - 4], ebx", "0x1005e3a3"], ["0x100af363", "test edi, edi", "0x1005e3a6"], ["0x100af365", "je 0x59", "0x1005e3a8"], ["0x100af367", "mov ecx, edi", "0x1005e3aa"], ["0x100af369", "call MxCore::MxCore (FUNCTION)", "0x1005e3ac"]]}, {"orig": [], "recomp": [["0x1005e3b1", "mov byte ptr [ebp - 4], 0xc"]]}, {"both": [["0x100af36e", "mov al, byte ptr [ebp - 0x15]", "0x1005e3b5"], ["0x100af371", "push 0xc", "0x1005e3b8"]]}, {"orig": [["0x100af373", "mov byte ptr [ebp - 4], 0xc"]], "recomp": []}, {"both": [["0x100af377", "mov byte ptr [edi + 8], al", "0x1005e3ba"], ["0x100af37a", "call ??2@YAPAXI@Z (FUNCTION)", "0x1005e3bd"], ["0x100af37f", "add esp, 4", "0x1005e3c2"], ["0x100af382", "mov dword ptr [eax], eax", "0x1005e3c5"], ["0x100af384", "mov byte ptr [ebp - 4], 0xe", "0x1005e3c7"], ["0x100af388", "mov dword ptr [eax + 4], eax", "0x1005e3cb"], ["0x100af38b", "mov byte ptr [ebp - 4], bl", "0x1005e3ce"], ["0x100af38e", "mov dword ptr [edi + 0xc], eax", "0x1005e3d1"], ["0x100af391", "mov eax, edi", "0x1005e3d4"], ["0x100af393", "mov dword ptr [edi + 0x10], 0", "0x1005e3d6"]]}]], ["@@ -0x100af6a4,13 +0x1005e6e7,10 @@", [{"both": [["0x100af6a4", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005e6e7"], ["0x100af6a9", "add esp, 4", "0x1005e6ec"], ["0x100af6ac", "ret ", "0x1005e6ef"], ["0x100af6ad", "mov eax, <OFFSET31>", "0x1005e6f0"], ["0x100af6b2", "jmp ___CxxFrameHandler (FUNCTION)", "0x1005e6f5"], ["0x100af6b7", "mov eax, dword ptr [ebp - 0x1c]", "0x1005e6fa"], ["0x100af6ba", "push eax", "0x1005e6fd"], ["0x100af6bb", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005e6fe"], ["0x100af6c0", "add esp, 4", "0x1005e703"], ["0x100af6c3", "ret ", "0x1005e706"]]}, {"orig": [["0x100af6c4", "int3 "], ["0x100af6c5", "int3 "], ["0x100af6c6", "int3 "]], "recomp": []}]]]}, {"address": "0x100af6d0", "recomp": "0x1005e710", "name": "_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::~_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCou", "matching": 0.9696969696969697, "diff": [["@@ -0x100af6e3,33 +0x1005e723,33 @@", [{"both": [["0x100af6e3", "mov eax, dword ptr [ecx]", "0x1005e723"], ["0x100af6e5", "mov dword ptr [esp + 0xc], eax", "0x1005e725"], ["0x100af6e9", "mov dword ptr [esp + 0x14], eax", "0x1005e729"], ["0x100af6ed", "je 0x4e", "0x1005e72d"], ["0x100af6ef", "cmp dword ptr [ecx], eax", "0x1005e72f"], ["0x100af6f1", "jne 0x4a", "0x1005e731"], ["0x100af6f3", "cmp ecx, ecx", "0x1005e733"], ["0x100af6f5", "jne 0x46", "0x1005e735"], ["0x100af6f7", "mov edi, dword ptr [ecx + 4]", "0x1005e737"], ["0x100af6fa", "mov ebx, edi", "0x1005e73a"]]}, {"orig": [["0x100af6fc", "cmp ebx, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005e73c", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], ebx"]]}, {"both": [["0x100af702", "je 0x1a", "0x1005e742"], ["0x100af704", "mov eax, dword ptr [ebx + 8]", "0x1005e744"], ["0x100af707", "mov ecx, esi", "0x1005e747"], ["0x100af709", "push eax", "0x1005e749"], ["0x100af70a", "call _Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Erase (FUNCTION)", "0x1005e74a"], ["0x100af70f", "mov ebx, dword ptr [ebx]", "0x1005e74f"], ["0x100af711", "push edi", "0x1005e751"], ["0x100af712", "mov edi, ebx", "0x1005e752"], ["0x100af714", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005e754"], ["0x100af719", "add esp, 4", "0x1005e759"], ["0x100af71c", "jmp -0x22", "0x1005e75c"]]}, {"orig": [["0x100af71e", "mov eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005e75e", "mov eax, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100af723", "mov ecx, dword ptr [esi + 4]", "0x1005e763"], ["0x100af726", "mov dword ptr [ecx + 4], eax", "0x1005e766"], ["0x100af729", "mov eax, dword ptr [esi + 4]", "0x1005e769"], ["0x100af72c", "mov dword ptr [esi + 0xc], 0", "0x1005e76c"], ["0x100af733", "mov dword ptr [eax], eax", "0x1005e773"], ["0x100af735", "mov eax, dword ptr [esi + 4]", "0x1005e775"], ["0x100af738", "mov dword ptr [eax + 8], eax", "0x1005e778"], ["0x100af73b", "jmp 0x36", "0x1005e77b"], ["0x100af73d", "mov eax, dword ptr [esp + 0x10]", "0x1005e77d"], ["0x100af741", "cmp dword ptr [esp + 0xc], eax", "0x1005e781"]]}]]]}, {"address": "0x100af7a0", "recomp": "0x1005e7e0", "name": "_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::iterator::_Inc", "matching": 0.9166666666666666, "diff": [["@@ -0x100af7a0,16 +0x1005e7e0,16 @@", [{"both": [["0x100af7a0", "mov eax, dword ptr [ecx]", "0x1005e7e0"], ["0x100af7a2", "mov edx, dword ptr [eax + 8]", "0x1005e7e2"]]}, {"orig": [["0x100af7a5", "cmp edx, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005e7e5", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], edx"]]}, {"both": [["0x100af7ab", "je 0x11", "0x1005e7eb"], ["0x100af7ad", "mov eax, dword ptr [edx]", "0x1005e7ed"]]}, {"orig": [["0x100af7af", "cmp eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005e7ef", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100af7b5", "je 0x4", "0x1005e7f5"], ["0x100af7b7", "mov edx, eax", "0x1005e7f7"], ["0x100af7b9", "jmp -0xe", "0x1005e7f9"], ["0x100af7bb", "mov dword ptr [ecx], edx", "0x1005e7fb"], ["0x100af7bd", "ret ", "0x1005e7fd"], ["0x100af7be", "mov edx, dword ptr [eax + 4]", "0x1005e7fe"], ["0x100af7c1", "cmp dword ptr [edx + 8], eax", "0x1005e801"], ["0x100af7c4", "jne 0xc", "0x1005e804"], ["0x100af7c6", "mov dword ptr [ecx], edx", "0x1005e806"], ["0x100af7c8", "mov eax, edx", "0x1005e808"]]}]]]}, {"address": "0x100af7e0", "recomp": "0x1005e820", "name": "_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::erase", "matching": 0.7191316146540027, "diff": [["@@ -0x100af7e0,49 +0x1005e820,51 @@", [{"both": [["0x100af7e0", "mov eax, dword ptr [esp + 8]", "0x1005e820"], ["0x100af7e4", "sub esp, 4", "0x1005e824"], ["0x100af7e7", "mov dword ptr [esp], eax", "0x1005e827"], ["0x100af7eb", "push ebx", "0x1005e82b"], ["0x100af7ec", "push esi", "0x1005e82c"], ["0x100af7ed", "push edi", "0x1005e82d"], ["0x100af7ee", "push ebp", "0x1005e82e"], ["0x100af7ef", "mov esi, ecx", "0x1005e82f"], ["0x100af7f1", "mov ecx, dword ptr [eax + 8]", "0x1005e831"]]}, {"orig": [["0x100af7f4", "cmp ecx, dword ptr [<OFFSET1>]"], ["0x100af7fa", "je 0xe"]], "recomp": [["0x1005e834", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], ecx"], ["0x1005e83a", "je 0x14"]]}, {"both": [["0x100af7fc", "mov eax, dword ptr [ecx]", "0x1005e83c"]]}, {"orig": [["0x100af7fe", "cmp eax, dword ptr [<OFFSET1>]"], ["0x100af804", "je 0x29"]], "recomp": [["0x1005e83e", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"], ["0x1005e844", "je 0x4"]]}, {"both": [["0x100af806", "mov ecx, eax", "0x1005e846"], ["0x100af808", "jmp -0xe", "0x1005e848"]]}, {"orig": [["0x100af80a", "mov eax, dword ptr [esp + 0x1c]"], ["0x100af80e", "mov ecx, dword ptr [eax + 4]"]], "recomp": [["0x1005e84a", "mov dword ptr [esp + 0x1c], ecx"], ["0x1005e84e", "jmp 0x29"], ["0x1005e850", "mov ecx, dword ptr [esp + 0x1c]"], ["0x1005e854", "mov eax, dword ptr [ecx + 4]"], ["0x1005e857", "cmp dword ptr [eax + 8], ecx"], ["0x1005e85a", "jne 0x10"], ["0x1005e85c", "mov dword ptr [esp + 0x1c], eax"], ["0x1005e860", "mov eax, dword ptr [eax + 4]"], ["0x1005e863", "mov ecx, dword ptr [esp + 0x1c]"], ["0x1005e867", "cmp dword ptr [eax + 8], ecx"], ["0x1005e86a", "je -0x10"], ["0x1005e86c", "mov ecx, dword ptr [esp + 0x1c]"]]}, {"both": [["0x100af811", "cmp dword ptr [ecx + 8], eax", "0x1005e870"]]}, {"orig": [["0x100af814", "jne 0x10"], ["0x100af816", "mov dword ptr [esp + 0x1c], ecx"], ["0x100af81a", "mov ecx, dword ptr [ecx + 4]"], ["0x100af81d", "mov eax, dword ptr [esp + 0x1c]"], ["0x100af821", "cmp dword ptr [ecx + 8], eax"], ["0x100af824", "je -0x10"], ["0x100af826", "mov eax, dword ptr [esp + 0x1c]"], ["0x100af82a", "cmp dword ptr [eax + 8], ecx"], ["0x100af82d", "je 0x4"], ["0x100af82f", "mov dword ptr [esp + 0x1c], ecx"]], "recomp": [["0x1005e873", "je 0x4"], ["0x1005e875", "mov dword ptr [esp + 0x1c], eax"]]}, {"both": [["0x100af833", "mov ecx, dword ptr [esp + 0x10]", "0x1005e879"], ["0x100af837", "mov ebx, dword ptr [ecx]", "0x1005e87d"]]}, {"orig": [["0x100af839", "cmp ebx, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005e87f", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], ebx"]]}, {"both": [["0x100af83f", "je 0x26", "0x1005e885"], ["0x100af841", "lea edi, [ecx + 8]", "0x1005e887"], ["0x100af844", "mov edx, dword ptr [edi]", "0x1005e88a"]]}, {"orig": [["0x100af846", "cmp edx, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005e88c", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], edx"]]}, {"both": [["0x100af84c", "je 0x15", "0x1005e892"], ["0x100af84e", "mov eax, dword ptr [edx]", "0x1005e894"]]}, {"orig": [["0x100af850", "cmp eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005e896", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100af856", "je 0x4", "0x1005e89c"], ["0x100af858", "mov edx, eax", "0x1005e89e"], ["0x100af85a", "jmp -0xe", "0x1005e8a0"], ["0x100af85c", "mov ecx, edx", "0x1005e8a2"], ["0x100af85e", "mov edx, dword ptr [edx + 8]", "0x1005e8a4"], ["0x100af861", "jmp 0xe", "0x1005e8a7"], ["0x100af863", "mov edx, ebx", "0x1005e8a9"], ["0x100af865", "jmp 0xa", "0x1005e8ab"], ["0x100af867", "mov edi, dword ptr [esp + 0x10]", "0x1005e8ad"], ["0x100af86b", "mov edx, dword ptr [edi + 8]", "0x1005e8b1"]]}]], ["@@ -0x100af88f,54 +0x1005e8d5,54 @@", [{"both": [["0x100af88f", "mov eax, dword ptr [ebx + 4]", "0x1005e8d5"], ["0x100af892", "cmp dword ptr [eax], ebx", "0x1005e8d8"], ["0x100af894", "je 0x5", "0x1005e8da"], ["0x100af896", "mov dword ptr [eax + 8], edx", "0x1005e8dc"], ["0x100af899", "jmp 0x2", "0x1005e8df"], ["0x100af89b", "mov dword ptr [eax], edx", "0x1005e8e1"], ["0x100af89d", "mov ebx, dword ptr [esi + 4]", "0x1005e8e3"], ["0x100af8a0", "mov eax, dword ptr [esp + 0x10]", "0x1005e8e6"], ["0x100af8a4", "cmp dword ptr [ebx], eax", "0x1005e8ea"], ["0x100af8a6", "jne 0x26", "0x1005e8ec"]]}, {"orig": [["0x100af8a8", "mov eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005e8ee", "mov eax, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100af8ad", "cmp dword ptr [edi], eax", "0x1005e8f3"], ["0x100af8af", "je 0x14", "0x1005e8f5"]]}, {"orig": [["0x100af8b1", "mov eax, edx"], ["0x100af8b3", "mov edi, dword ptr [eax]"], ["0x100af8b5", "cmp edi, dword ptr [<OFFSET1>]"], ["0x100af8bb", "je 0x4"], ["0x100af8bd", "mov eax, edi"]], "recomp": [["0x1005e8f7", "mov edi, edx"], ["0x1005e8f9", "mov eax, dword ptr [edi]"], ["0x1005e8fb", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"], ["0x1005e901", "je 0x4"], ["0x1005e903", "mov edi, eax"]]}, {"both": [["0x100af8bf", "jmp -0xe", "0x1005e905"]]}, {"orig": [["0x100af8c1", "mov dword ptr [ebx], eax"]], "recomp": [["0x1005e907", "mov dword ptr [ebx], edi"]]}, {"both": [["0x100af8c3", "jmp 0x9", "0x1005e909"], ["0x100af8c5", "mov eax, dword ptr [esp + 0x10]", "0x1005e90b"], ["0x100af8c9", "mov ebp, dword ptr [eax + 4]", "0x1005e90f"], ["0x100af8cc", "mov dword ptr [ebx], ebp", "0x1005e912"], ["0x100af8ce", "mov edi, dword ptr [esi + 4]", "0x1005e914"], ["0x100af8d1", "mov eax, dword ptr [esp + 0x10]", "0x1005e917"], ["0x100af8d5", "add edi, 8", "0x1005e91b"], ["0x100af8d8", "cmp dword ptr [edi], eax", "0x1005e91e"]]}, {"orig": [["0x100af8da", "jne 0x8a"], ["0x100af8e0", "mov ebx, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005e920", "jne 0x88"], ["0x1005e926", "mov ebx, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100af8e6", "cmp dword ptr [eax], ebx", "0x1005e92c"], ["0x100af8e8", "je 0x15", "0x1005e92e"], ["0x100af8ea", "mov eax, edx", "0x1005e930"], ["0x100af8ec", "mov ebx, dword ptr [eax + 8]", "0x1005e932"]]}, {"orig": [["0x100af8ef", "cmp ebx, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005e935", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], ebx"]]}, {"both": [["0x100af8f5", "je 0x4", "0x1005e93b"], ["0x100af8f7", "mov eax, ebx", "0x1005e93d"], ["0x100af8f9", "jmp -0xf", "0x1005e93f"], ["0x100af8fb", "mov dword ptr [edi], eax", "0x1005e941"]]}, {"orig": [["0x100af8fd", "jmp 0x6b"]], "recomp": [["0x1005e943", "jmp 0x69"]]}, {"both": [["0x100af8ff", "mov eax, dword ptr [esp + 0x10]", "0x1005e945"], ["0x100af903", "mov ebx, dword ptr [eax + 4]", "0x1005e949"], ["0x100af906", "mov dword ptr [edi], ebx", "0x1005e94c"]]}, {"orig": [["0x100af908", "jmp 0x60"]], "recomp": [["0x1005e94e", "jmp 0x5e"]]}, {"both": [["0x100af90a", "mov eax, dword ptr [esp + 0x10]", "0x1005e950"], ["0x100af90e", "mov dword ptr [ebx + 4], ecx", "0x1005e954"], ["0x100af911", "mov ebx, dword ptr [eax]", "0x1005e957"], ["0x100af913", "mov dword ptr [ecx], ebx", "0x1005e959"], ["0x100af915", "cmp dword ptr [edi], ecx", "0x1005e95b"], ["0x100af917", "jne 0x5", "0x1005e95d"], ["0x100af919", "mov dword ptr [edx + 4], ecx", "0x1005e95f"], ["0x100af91c", "jmp 0x15", "0x1005e962"], ["0x100af91e", "mov eax, dword ptr [ecx + 4]", "0x1005e964"], ["0x100af921", "mov dword ptr [edx + 4], eax", "0x1005e967"]]}]], ["@@ -0x100af93d,51 +0x1005e983,51 @@", [{"both": [["0x100af93d", "cmp dword ptr [eax], edi", "0x1005e983"], ["0x100af93f", "je 0xc", "0x1005e985"], ["0x100af941", "mov eax, dword ptr [edi + 4]", "0x1005e987"], ["0x100af944", "cmp dword ptr [eax], edi", "0x1005e98a"], ["0x100af946", "je 0x5", "0x1005e98c"], ["0x100af948", "mov dword ptr [eax + 8], ecx", "0x1005e98e"], ["0x100af94b", "jmp 0x2", "0x1005e991"], ["0x100af94d", "mov dword ptr [eax], ecx", "0x1005e993"], ["0x100af94f", "mov eax, dword ptr [esp + 0x10]", "0x1005e995"], ["0x100af953", "mov ebx, dword ptr [eax + 4]", "0x1005e999"]]}, {"orig": [["0x100af956", "add eax, 0x10"]], "recomp": [["0x1005e99c", "lea edi, [eax + 0x10]"]]}, {"both": [["0x100af959", "mov dword ptr [ecx + 4], ebx", "0x1005e99f"]]}, {"orig": [["0x100af95c", "mov edi, dword ptr [ecx + 0x10]"], ["0x100af95f", "mov ebx, dword ptr [eax]"]], "recomp": [["0x1005e9a2", "mov ebx, dword ptr [edi]"], ["0x1005e9a4", "mov ebp, dword ptr [ecx + 0x10]"]]}, {"both": [["0x100af961", "mov dword ptr [ecx + 0x10], ebx", "0x1005e9a7"]]}, {"orig": [["0x100af964", "mov ecx, dword ptr [esp + 0x10]"], ["0x100af968", "mov dword ptr [eax], edi"]], "recomp": [["0x1005e9aa", "mov ecx, eax"], ["0x1005e9ac", "mov dword ptr [edi], ebp"]]}, {"both": [["0x100af96a", "cmp dword ptr [ecx + 0x10], 1", "0x1005e9ae"]]}, {"orig": [["0x100af96e", "jne 0x29f"]], "recomp": [["0x1005e9b2", "jne 0x297"]]}, {"both": [["0x100af974", "mov eax, dword ptr [esi + 4]", "0x1005e9b8"], ["0x100af977", "cmp dword ptr [eax + 4], edx", "0x1005e9bb"]]}, {"orig": [["0x100af97a", "je 0x28c"]], "recomp": [["0x1005e9be", "je 0x284"]]}, {"both": [["0x100af980", "cmp dword ptr [edx + 0x10], 1", "0x1005e9c4"]]}, {"orig": [["0x100af984", "jne 0x282"]], "recomp": [["0x1005e9c8", "jne 0x27a"]]}, {"both": [["0x100af98a", "lea ebx, [edx + 4]", "0x1005e9ce"], ["0x100af98d", "mov eax, dword ptr [ebx]", "0x1005e9d1"], ["0x100af98f", "mov edi, dword ptr [eax]", "0x1005e9d3"], ["0x100af991", "cmp edx, edi", "0x1005e9d5"], ["0x100af993", "jne 0x76", "0x1005e9d7"], ["0x100af995", "mov edi, dword ptr [eax + 8]", "0x1005e9d9"], ["0x100af998", "cmp dword ptr [edi + 0x10], 0", "0x1005e9dc"], ["0x100af99c", "jne 0x52", "0x1005e9e0"], ["0x100af99e", "mov dword ptr [edi + 0x10], 1", "0x1005e9e2"], ["0x100af9a5", "mov eax, dword ptr [ebx]", "0x1005e9e9"], ["0x100af9a7", "mov dword ptr [eax + 0x10], 0", "0x1005e9eb"], ["0x100af9ae", "mov eax, dword ptr [ebx]", "0x1005e9f2"], ["0x100af9b0", "mov ebp, dword ptr [eax + 8]", "0x1005e9f4"], ["0x100af9b3", "mov edi, dword ptr [ebp]", "0x1005e9f7"], ["0x100af9b6", "mov dword ptr [eax + 8], edi", "0x1005e9fa"], ["0x100af9b9", "mov edi, dword ptr [ebp]", "0x1005e9fd"]]}, {"orig": [["0x100af9bc", "cmp edi, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005ea00", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], edi"]]}, {"both": [["0x100af9c2", "je 0x3", "0x1005ea06"], ["0x100af9c4", "mov dword ptr [edi + 4], eax", "0x1005ea08"], ["0x100af9c7", "mov edi, dword ptr [eax + 4]", "0x1005ea0b"], ["0x100af9ca", "mov dword ptr [ebp + 4], edi", "0x1005ea0e"], ["0x100af9cd", "mov edi, dword ptr [esi + 4]", "0x1005ea11"], ["0x100af9d0", "add edi, 4", "0x1005ea14"], ["0x100af9d3", "cmp dword ptr [edi], eax", "0x1005ea17"], ["0x100af9d5", "je 0xc", "0x1005ea19"], ["0x100af9d7", "mov edi, dword ptr [eax + 4]", "0x1005ea1b"], ["0x100af9da", "cmp dword ptr [edi], eax", "0x1005ea1e"]]}]], ["@@ -0x100af9f6,67 +0x1005ea3a,67 @@", [{"both": [["0x100af9f6", "jne 0x98", "0x1005ea3a"], ["0x100af9fc", "mov eax, dword ptr [edi + 8]", "0x1005ea40"], ["0x100af9ff", "cmp dword ptr [eax + 0x10], 1", "0x1005ea43"], ["0x100afa03", "jne 0x8b", "0x1005ea47"], ["0x100afa09", "jmp 0x6f", "0x1005ea4d"], ["0x100afa0b", "cmp dword ptr [edi + 0x10], 0", "0x1005ea4f"], ["0x100afa0f", "jne 0x50", "0x1005ea53"], ["0x100afa11", "mov dword ptr [edi + 0x10], 1", "0x1005ea55"], ["0x100afa18", "mov eax, dword ptr [ebx]", "0x1005ea5c"], ["0x100afa1a", "mov dword ptr [eax + 0x10], 0", "0x1005ea5e"]]}, {"orig": [["0x100afa21", "mov eax, dword ptr [ebx]"], ["0x100afa23", "mov ebp, dword ptr [eax]"], ["0x100afa25", "mov edi, dword ptr [ebp + 8]"], ["0x100afa28", "mov dword ptr [eax], edi"], ["0x100afa2a", "mov edi, dword ptr [ebp + 8]"], ["0x100afa2d", "cmp edi, dword ptr [<OFFSET1>]"], ["0x100afa33", "je 0x3"], ["0x100afa35", "mov dword ptr [edi + 4], eax"], ["0x100afa38", "mov edi, dword ptr [eax + 4]"], ["0x100afa3b", "mov dword ptr [ebp + 4], edi"], ["0x100afa3e", "mov edi, dword ptr [esi + 4]"], ["0x100afa41", "add edi, 4"], ["0x100afa44", "cmp dword ptr [edi], eax"]], "recomp": [["0x1005ea65", "mov edi, dword ptr [ebx]"], ["0x1005ea67", "mov ebp, dword ptr [edi]"], ["0x1005ea69", "mov eax, dword ptr [ebp + 8]"], ["0x1005ea6c", "mov dword ptr [edi], eax"], ["0x1005ea6e", "mov eax, dword ptr [ebp + 8]"], ["0x1005ea71", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"], ["0x1005ea77", "je 0x3"], ["0x1005ea79", "mov dword ptr [eax + 4], edi"], ["0x1005ea7c", "mov eax, dword ptr [edi + 4]"], ["0x1005ea7f", "mov dword ptr [ebp + 4], eax"], ["0x1005ea82", "mov eax, dword ptr [esi + 4]"], ["0x1005ea85", "add eax, 4"], ["0x1005ea88", "cmp dword ptr [eax], edi"]]}, {"both": [["0x100afa46", "je 0xd", "0x1005ea8a"]]}, {"orig": [["0x100afa48", "mov edi, dword ptr [eax + 4]"], ["0x100afa4b", "add edi, 8"], ["0x100afa4e", "cmp dword ptr [edi], eax"], ["0x100afa50", "je 0x3"], ["0x100afa52", "mov edi, dword ptr [eax + 4]"], ["0x100afa55", "mov dword ptr [edi], ebp"], ["0x100afa57", "mov dword ptr [ebp + 8], eax"], ["0x100afa5a", "mov dword ptr [eax + 4], ebp"]], "recomp": [["0x1005ea8c", "mov eax, dword ptr [edi + 4]"], ["0x1005ea8f", "add eax, 8"], ["0x1005ea92", "cmp dword ptr [eax], edi"], ["0x1005ea94", "je 0x3"], ["0x1005ea96", "mov eax, dword ptr [edi + 4]"], ["0x1005ea99", "mov dword ptr [eax], ebp"], ["0x1005ea9b", "mov dword ptr [ebp + 8], edi"], ["0x1005ea9e", "mov dword ptr [edi + 4], ebp"]]}, {"both": [["0x100afa5d", "mov eax, dword ptr [ebx]", "0x1005eaa1"], ["0x100afa5f", "mov edi, dword ptr [eax]", "0x1005eaa3"], ["0x100afa61", "mov eax, dword ptr [edi + 8]", "0x1005eaa5"], ["0x100afa64", "cmp dword ptr [eax + 0x10], 1", "0x1005eaa8"]]}, {"orig": [["0x100afa68", "jne 0xf0"], ["0x100afa6e", "mov eax, dword ptr [edi]"], ["0x100afa70", "cmp dword ptr [eax + 0x10], 1"], ["0x100afa74", "jne 0xe4"]], "recomp": [["0x1005eaac", "jne 0xe7"], ["0x1005eab2", "mov eax, dword ptr [edi]"], ["0x1005eab4", "cmp dword ptr [eax + 0x10], 1"], ["0x1005eab8", "jne 0xdb"]]}, {"both": [["0x100afa7a", "mov dword ptr [edi + 0x10], 0", "0x1005eabe"], ["0x100afa81", "mov edx, dword ptr [ebx]", "0x1005eac5"], ["0x100afa83", "mov eax, dword ptr [esi + 4]", "0x1005eac7"], ["0x100afa86", "cmp dword ptr [eax + 4], edx", "0x1005eaca"], ["0x100afa89", "jne -0x10f", "0x1005eacd"]]}, {"orig": [["0x100afa8f", "jmp 0x178"]], "recomp": [["0x1005ead3", "jmp 0x170"]]}, {"both": [["0x100afa94", "mov eax, dword ptr [edi + 8]", "0x1005ead8"], ["0x100afa97", "cmp dword ptr [eax + 0x10], 1", "0x1005eadb"], ["0x100afa9b", "jne 0x53", "0x1005eadf"], ["0x100afa9d", "mov eax, dword ptr [edi]", "0x1005eae1"], ["0x100afa9f", "mov dword ptr [eax + 0x10], 1", "0x1005eae3"], ["0x100afaa6", "mov dword ptr [edi + 0x10], 0", "0x1005eaea"], ["0x100afaad", "mov ebx, dword ptr [edi]", "0x1005eaf1"], ["0x100afaaf", "mov ebp, dword ptr [ebx + 8]", "0x1005eaf3"], ["0x100afab2", "mov dword ptr [edi], ebp", "0x1005eaf6"], ["0x100afab4", "mov eax, dword ptr [ebx + 8]", "0x1005eaf8"]]}, {"orig": [["0x100afab7", "cmp eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005eafb", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100afabd", "je 0x3", "0x1005eb01"], ["0x100afabf", "mov dword ptr [eax + 4], edi", "0x1005eb03"], ["0x100afac2", "mov eax, dword ptr [edi + 4]", "0x1005eb06"], ["0x100afac5", "mov dword ptr [ebx + 4], eax", "0x1005eb09"], ["0x100afac8", "mov eax, dword ptr [esi + 4]", "0x1005eb0c"], ["0x100afacb", "add eax, 4", "0x1005eb0f"], ["0x100aface", "cmp dword ptr [eax], edi", "0x1005eb12"], ["0x100afad0", "je 0x10", "0x1005eb14"], ["0x100afad2", "mov eax, dword ptr [edi + 4]", "0x1005eb16"], ["0x100afad5", "lea ebp, [eax + 8]", "0x1005eb19"]]}]], ["@@ -0x100afaea,60 +0x1005eb2e,57 @@", [{"both": [["0x100afaea", "mov eax, dword ptr [edx + 4]", "0x1005eb2e"], ["0x100afaed", "mov edi, dword ptr [eax + 8]", "0x1005eb31"], ["0x100afaf0", "mov eax, dword ptr [edx + 4]", "0x1005eb34"], ["0x100afaf3", "mov ebx, dword ptr [eax + 0x10]", "0x1005eb37"], ["0x100afaf6", "mov dword ptr [edi + 0x10], ebx", "0x1005eb3a"], ["0x100afaf9", "mov ebx, 1", "0x1005eb3d"], ["0x100afafe", "mov eax, dword ptr [edx + 4]", "0x1005eb42"], ["0x100afb01", "mov dword ptr [eax + 0x10], ebx", "0x1005eb45"], ["0x100afb04", "mov ebp, dword ptr [edi + 8]", "0x1005eb48"], ["0x100afb07", "mov dword ptr [ebp + 0x10], ebx", "0x1005eb4b"]]}, {"orig": [["0x100afb0a", "mov edi, dword ptr [edx + 4]"], ["0x100afb0d", "mov ebx, dword ptr [edi + 8]"], ["0x100afb10", "mov eax, dword ptr [ebx]"], ["0x100afb12", "mov dword ptr [edi + 8], eax"], ["0x100afb15", "mov eax, dword ptr [ebx]"], ["0x100afb17", "cmp eax, dword ptr [<OFFSET1>]"], ["0x100afb1d", "je 0x3"], ["0x100afb1f", "mov dword ptr [eax + 4], edi"], ["0x100afb22", "mov eax, dword ptr [edi + 4]"], ["0x100afb25", "mov dword ptr [ebx + 4], eax"], ["0x100afb28", "mov eax, dword ptr [esi + 4]"], ["0x100afb2b", "add eax, 4"], ["0x100afb2e", "cmp dword ptr [eax], edi"], ["0x100afb30", "je 0x20"], ["0x100afb32", "mov eax, dword ptr [edi + 4]"], ["0x100afb35", "cmp dword ptr [eax], edi"], ["0x100afb37", "je 0xd"], ["0x100afb39", "mov dword ptr [eax + 8], ebx"], ["0x100afb3c", "mov dword ptr [ebx], edi"], ["0x100afb3e", "mov dword ptr [edi + 4], ebx"], ["0x100afb41", "jmp 0xc6"], ["0x100afb46", "mov dword ptr [eax], ebx"], ["0x100afb48", "mov dword ptr [ebx], edi"], ["0x100afb4a", "mov dword ptr [edi + 4], ebx"], ["0x100afb4d", "jmp 0xba"], ["0x100afb52", "mov dword ptr [eax], ebx"], ["0x100afb54", "mov dword ptr [ebx], edi"], ["0x100afb56", "mov dword ptr [edi + 4], ebx"], ["0x100afb59", "jmp 0xae"]], "recomp": [["0x1005eb4e", "mov ebx, dword ptr [edx + 4]"], ["0x1005eb51", "mov edi, dword ptr [ebx + 8]"], ["0x1005eb54", "mov eax, dword ptr [edi]"], ["0x1005eb56", "mov dword ptr [ebx + 8], eax"], ["0x1005eb59", "mov eax, dword ptr [edi]"], ["0x1005eb5b", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"], ["0x1005eb61", "je 0x3"], ["0x1005eb63", "mov dword ptr [eax + 4], ebx"], ["0x1005eb66", "mov eax, dword ptr [ebx + 4]"], ["0x1005eb69", "mov dword ptr [edi + 4], eax"], ["0x1005eb6c", "mov eax, dword ptr [esi + 4]"], ["0x1005eb6f", "add eax, 4"], ["0x1005eb72", "cmp dword ptr [eax], ebx"], ["0x1005eb74", "je 0x1a"], ["0x1005eb76", "mov eax, dword ptr [ebx + 4]"], ["0x1005eb79", "cmp dword ptr [eax], ebx"], ["0x1005eb7b", "je 0xa"], ["0x1005eb7d", "mov dword ptr [eax + 8], edi"], ["0x1005eb80", "mov dword ptr [edi], ebx"], ["0x1005eb82", "jmp 0xbe"], ["0x1005eb87", "mov dword ptr [eax], edi"], ["0x1005eb89", "mov dword ptr [edi], ebx"], ["0x1005eb8b", "jmp 0xb5"], ["0x1005eb90", "mov dword ptr [eax], edi"], ["0x1005eb92", "mov dword ptr [edi], ebx"], ["0x1005eb94", "jmp 0xac"]]}, {"both": [["0x100afb5e", "mov eax, dword ptr [edi]", "0x1005eb99"], ["0x100afb60", "cmp dword ptr [eax + 0x10], 1", "0x1005eb9b"], ["0x100afb64", "jne 0x4e", "0x1005eb9f"], ["0x100afb66", "mov eax, dword ptr [edi + 8]", "0x1005eba1"], ["0x100afb69", "mov dword ptr [eax + 0x10], 1", "0x1005eba4"], ["0x100afb70", "mov dword ptr [edi + 0x10], 0", "0x1005ebab"], ["0x100afb77", "mov ebx, dword ptr [edi + 8]", "0x1005ebb2"], ["0x100afb7a", "mov ebp, dword ptr [ebx]", "0x1005ebb5"], ["0x100afb7c", "mov dword ptr [edi + 8], ebp", "0x1005ebb7"], ["0x100afb7f", "mov eax, dword ptr [ebx]", "0x1005ebba"]]}, {"orig": [["0x100afb81", "cmp eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005ebbc", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100afb87", "je 0x3", "0x1005ebc2"], ["0x100afb89", "mov dword ptr [eax + 4], edi", "0x1005ebc4"], ["0x100afb8c", "mov eax, dword ptr [edi + 4]", "0x1005ebc7"], ["0x100afb8f", "mov dword ptr [ebx + 4], eax", "0x1005ebca"], ["0x100afb92", "mov eax, dword ptr [esi + 4]", "0x1005ebcd"], ["0x100afb95", "add eax, 4", "0x1005ebd0"], ["0x100afb98", "cmp dword ptr [eax], edi", "0x1005ebd3"], ["0x100afb9a", "je 0xc", "0x1005ebd5"], ["0x100afb9c", "mov eax, dword ptr [edi + 4]", "0x1005ebd7"], ["0x100afb9f", "cmp dword ptr [eax], edi", "0x1005ebda"]]}]], ["@@ -0x100afbbd,40 +0x1005ebf8,42 @@", [{"both": [["0x100afbbd", "mov ebx, 1", "0x1005ebf8"], ["0x100afbc2", "mov eax, dword ptr [edx + 4]", "0x1005ebfd"], ["0x100afbc5", "mov dword ptr [eax + 0x10], ebx", "0x1005ec00"], ["0x100afbc8", "mov ebp, dword ptr [edi]", "0x1005ec03"], ["0x100afbca", "mov dword ptr [ebp + 0x10], ebx", "0x1005ec05"], ["0x100afbcd", "mov ebx, dword ptr [edx + 4]", "0x1005ec08"], ["0x100afbd0", "mov edi, dword ptr [ebx]", "0x1005ec0b"], ["0x100afbd2", "mov eax, dword ptr [edi + 8]", "0x1005ec0d"], ["0x100afbd5", "mov dword ptr [ebx], eax", "0x1005ec10"], ["0x100afbd7", "mov eax, dword ptr [edi + 8]", "0x1005ec12"]]}, {"orig": [["0x100afbda", "cmp eax, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005ec15", "cmp dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)], eax"]]}, {"both": [["0x100afbe0", "je 0x3", "0x1005ec1b"], ["0x100afbe2", "mov dword ptr [eax + 4], ebx", "0x1005ec1d"], ["0x100afbe5", "mov eax, dword ptr [ebx + 4]", "0x1005ec20"], ["0x100afbe8", "mov dword ptr [edi + 4], eax", "0x1005ec23"], ["0x100afbeb", "mov eax, dword ptr [esi + 4]", "0x1005ec26"], ["0x100afbee", "add eax, 4", "0x1005ec29"], ["0x100afbf1", "cmp dword ptr [eax], ebx", "0x1005ec2c"]]}, {"orig": [["0x100afbf3", "je 0xf"], ["0x100afbf5", "mov ebp, dword ptr [ebx + 4]"], ["0x100afbf8", "lea eax, [ebp + 8]"], ["0x100afbfb", "cmp dword ptr [eax], ebx"], ["0x100afbfd", "je 0x5"]], "recomp": [["0x1005ec2e", "je 0x10"], ["0x1005ec30", "mov eax, dword ptr [ebx + 4]"], ["0x1005ec33", "lea ebp, [eax + 8]"], ["0x1005ec36", "cmp dword ptr [ebp], ebx"], ["0x1005ec39", "jne 0x5"]]}, {"both": [["0x100afbff", "mov dword ptr [ebp], edi", "0x1005ec3b"], ["0x100afc02", "jmp 0x2", "0x1005ec3e"], ["0x100afc04", "mov dword ptr [eax], edi", "0x1005ec40"], ["0x100afc06", "mov dword ptr [edi + 8], ebx", "0x1005ec42"], ["0x100afc09", "mov dword ptr [ebx + 4], edi", "0x1005ec45"], ["0x100afc0c", "mov dword ptr [edx + 0x10], 1", "0x1005ec48"], ["0x100afc13", "push ecx", "0x1005ec4f"], ["0x100afc14", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005ec50"], ["0x100afc19", "mov ecx, dword ptr [esp + 0x20]", "0x1005ec55"], ["0x100afc1d", "mov eax, dword ptr [esp + 0x1c]", "0x1005ec59"], ["0x100afc21", "add esp, 4", "0x1005ec5d"], ["0x100afc24", "dec dword ptr [esi + 0xc]", "0x1005ec60"], ["0x100afc27", "mov dword ptr [eax], ecx", "0x1005ec63"], ["0x100afc29", "pop ebp", "0x1005ec65"], ["0x100afc2a", "pop edi", "0x1005ec66"], ["0x100afc2b", "pop esi", "0x1005ec67"], ["0x100afc2c", "pop ebx", "0x1005ec68"]]}, {"orig": [], "recomp": [["0x1005ec69", "add esp, 4"], ["0x1005ec6c", "ret 8"]]}]]]}, {"address": "0x100afc40", "recomp": "0x1005ec70", "name": "_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Erase", "matching": 0.9130434782608695, "diff": [["@@ -0x100afc40,23 +0x1005ec70,23 @@", [{"both": [["0x100afc40", "push ebx", "0x1005ec70"], ["0x100afc41", "push esi", "0x1005ec71"], ["0x100afc42", "push edi", "0x1005ec72"], ["0x100afc43", "mov esi, ecx", "0x1005ec73"], ["0x100afc45", "mov ebx, dword ptr [esp + 0x10]", "0x1005ec75"], ["0x100afc49", "mov edi, ebx", "0x1005ec79"]]}, {"orig": [["0x100afc4b", "cmp ebx, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005ec7b", "cmp ebx, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100afc51", "je 0x20", "0x1005ec81"], ["0x100afc53", "mov eax, dword ptr [edi + 8]", "0x1005ec83"], ["0x100afc56", "mov ecx, esi", "0x1005ec86"], ["0x100afc58", "push eax", "0x1005ec88"], ["0x100afc59", "call _Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Erase (FUNCTION)", "0x1005ec89"], ["0x100afc5e", "mov edi, dword ptr [edi]", "0x1005ec8e"], ["0x100afc60", "push ebx", "0x1005ec90"], ["0x100afc61", "mov ebx, edi", "0x1005ec91"], ["0x100afc63", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005ec93"], ["0x100afc68", "add esp, 4", "0x1005ec98"]]}, {"orig": [["0x100afc6b", "cmp edi, dword ptr [<OFFSET1>]"]], "recomp": [["0x1005ec9b", "cmp edi, dword ptr [_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Nil (DATA)]"]]}, {"both": [["0x100afc71", "jne -0x20", "0x1005eca1"], ["0x100afc73", "pop edi", "0x1005eca3"], ["0x100afc74", "pop esi", "0x1005eca4"], ["0x100afc75", "pop ebx", "0x1005eca5"], ["0x100afc76", "ret 4", "0x1005eca6"]]}]]]}, {"address": "0x100afc80", "recomp": "0x1005ecb0", "name": "set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::~set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >", "matching": 1.0, "diff": []}, {"address": "0x100afcd0", "recomp": "0x1005ed70", "name": "MxCollection<MxVariable *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x100afce0", "recomp": "0x1005ed20", "name": "MxCollection<MxVariable *>::~MxCollection<MxVariable *>", "matching": 1.0, "diff": []}, {"address": "0x100afd30", "recomp": "0x1005ed10", "name": "MxCollection<MxVariable *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100afd40", "recomp": "0x1005ee00", "name": "MxCollection<MxVariable *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100afdb0", "recomp": "0x1005ed00", "name": "MxVariableTable::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100afdc0", "recomp": "0x1005ed80", "name": "MxHashTable<MxVariable *>::Hash", "matching": 1.0, "diff": []}, {"address": "0x100afdd0", "recomp": "0x1005ed90", "name": "MxVariableTable::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100afe40", "recomp": "0x1005ef50", "name": "Set<MxAtomIdCounter *,MxAtomIdCounterCompare>::~Set<MxAtomIdCounter *,MxAtomIdCounterCompare>", "matching": 1.0, "diff": []}, {"address": "0x100afe90", "recomp": "0x1005efa0", "name": "MxOmni::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b0090", "recomp": "0x1005f1a0", "name": "MxOmni::Start", "matching": 1.0, "diff": []}, {"address": "0x100b00c0", "recomp": "0x1005f1d0", "name": "MxOmni::DeleteObject", "matching": 1.0, "diff": []}, {"address": "0x100b00e0", "recomp": "0x1005f1f0", "name": "MxOmni::CreatePresenter", "matching": 1.0, "diff": []}, {"address": "0x100b0300", "recomp": "0x1006c740", "name": "MxStartActionNotificationParam::Clone", "matching": 1.0, "diff": []}, {"address": "0x100b0430", "recomp": "0x1005f630", "name": "MxStartActionNotificationParam::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b04a0", "recomp": "0x1005f6a0", "name": "MxStartActionNotificationParam::~MxStartActionNotificationParam", "matching": 1.0, "diff": []}, {"address": "0x100b04f0", "recomp": "0x1006c870", "name": "MxType4NotificationParam::Clone", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b050e,37 +0x1006c88e,37 @@", [{"both": [["0x100b050e", "push 0x18", "0x1006c88e"], ["0x100b0510", "mov edi, ecx", "0x1006c890"], ["0x100b0512", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006c892"], ["0x100b0517", "mov dword ptr [ebp - 0x10], eax", "0x1006c897"], ["0x100b051a", "add esp, 4", "0x1006c89a"], ["0x100b051d", "mov esi, eax", "0x1006c89d"], ["0x100b051f", "xor ecx, ecx", "0x1006c89f"], ["0x100b0521", "mov dword ptr [ebp - 4], ecx", "0x1006c8a1"], ["0x100b0524", "test esi, esi", "0x1006c8a4"], ["0x100b0526", "je 0x5f", "0x1006c8a6"]]}, {"orig": [["0x100b0528", "mov edx, dword ptr [edi + 0x14]"], ["0x100b052b", "mov ebx, dword ptr [edi + 0xc]"]], "recomp": [["0x1006c8a8", "mov ebx, dword ptr [edi + 0x14]"], ["0x1006c8ab", "mov edx, dword ptr [edi + 0xc]"]]}, {"both": [["0x100b052e", "mov byte ptr [ebp - 4], 1", "0x1006c8ae"], ["0x100b0532", "mov byte ptr [ebp - 4], 2", "0x1006c8b2"], ["0x100b0536", "mov eax, dword ptr [edi + 8]", "0x1006c8b6"], ["0x100b0539", "mov dword ptr [esi], MxParam::`vftable' (VTABLE)", "0x1006c8b9"], ["0x100b053f", "mov dword ptr [esi + 4], 4", "0x1006c8bf"], ["0x100b0546", "mov byte ptr [ebp - 4], 3", "0x1006c8c6"], ["0x100b054a", "mov dword ptr [esi + 8], eax", "0x1006c8ca"], ["0x100b054d", "mov byte ptr [ebp - 4], cl", "0x1006c8cd"], ["0x100b0550", "mov eax, esi", "0x1006c8d0"], ["0x100b0552", "mov dword ptr [esi], MxNotificationParam::`vftable' (VTABLE)", "0x1006c8d2"], ["0x100b0558", "mov dword ptr [esi], MxActionNotificationParam::`vftable' (VTABLE)", "0x1006c8d8"], ["0x100b055e", "mov byte ptr [esi + 0x10], cl", "0x1006c8de"]]}, {"orig": [["0x100b0561", "mov dword ptr [esi + 0xc], ebx"]], "recomp": [["0x1006c8e1", "mov dword ptr [esi + 0xc], edx"]]}, {"both": [["0x100b0564", "mov dword ptr [esi], MxType4NotificationParam::`vftable' (VTABLE)", "0x1006c8e4"]]}, {"orig": [["0x100b056a", "mov dword ptr [esi + 0x14], edx"]], "recomp": [["0x1006c8ea", "mov dword ptr [esi + 0x14], ebx"]]}, {"both": [["0x100b056d", "jmp 0x1a", "0x1006c8ed"], ["0x100b056f", "mov ecx, dword ptr [ebp - 0x10]", "0x1006c8ef"], ["0x100b0572", "jmp MxParam::~MxParam (FUNCTION)", "0x1006c8f2"], ["0x100b0577", "mov ecx, dword ptr [ebp - 0x10]", "0x1006c8f7"], ["0x100b057a", "jmp MxNotificationParam::~MxNotificationParam (FUNCTION)", "0x1006c8fa"], ["0x100b057f", "mov ecx, dword ptr [ebp - 0x10]", "0x1006c8ff"], ["0x100b0582", "jmp MxActionNotificationParam::~MxActionNotificationParam (FUNCTION)", "0x1006c902"], ["0x100b0587", "xor eax, eax", "0x1006c907"], ["0x100b0589", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006c909"], ["0x100b0590", "mov ecx, dword ptr [ebp - 0xc]", "0x1006c910"]]}]]]}, {"address": "0x100b05c0", "recomp": "0x1005f6f0", "name": "MxType4NotificationParam::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b0630", "recomp": "0x1005f760", "name": "MxType4NotificationParam::~MxType4NotificationParam", "matching": 1.0, "diff": []}, {"address": "0x100b0680", "recomp": "0x1005f7b0", "name": "MxOmni::GetInstance", "matching": 1.0, "diff": []}, {"address": "0x100b0690", "recomp": "0x1005f7c0", "name": "MxOmni::DestroyInstance", "matching": 1.0, "diff": []}, {"address": "0x100b06b0", "recomp": "0x1005f7e0", "name": "MxOmni::ActionSourceEquals", "matching": 1.0, "diff": []}, {"address": "0x100b07f0", "recomp": "0x1005f920", "name": "MxOmni::Notify", "matching": 1.0, "diff": []}, {"address": "0x100b0880", "recomp": "0x1005f9b0", "name": "MxOmni::HandleEndAction", "matching": 1.0, "diff": []}, {"address": "0x100b0900", "recomp": "0x1005fa30", "name": "MxOmni::GetHD", "matching": 1.0, "diff": []}, {"address": "0x100b0910", "recomp": "0x1005fa40", "name": "MxOmni::SetHD", "matching": 1.0, "diff": []}, {"address": "0x100b0940", "recomp": "0x1005fa70", "name": "MxOmni::GetCD", "matching": 1.0, "diff": []}, {"address": "0x100b0950", "recomp": "0x1005fa80", "name": "MxOmni::SetCD", "matching": 1.0, "diff": []}, {"address": "0x100b0980", "recomp": "0x1005fab0", "name": "MxOmni::IsSound3D", "matching": 1.0, "diff": []}, {"address": "0x100b0990", "recomp": "0x1005fac0", "name": "MxOmni::SetSound3D", "matching": 1.0, "diff": []}, {"address": "0x100b09a0", "recomp": "0x1005fad0", "name": "MxOmni::DoesEntityExist", "matching": 1.0, "diff": []}, {"address": "0x100b09d0", "recomp": "0x1005fb00", "name": "MxOmni::StartTimer", "matching": 1.0, "diff": []}, {"address": "0x100b0a00", "recomp": "0x1005fb30", "name": "MxOmni::StopTimer", "matching": 1.0, "diff": []}, {"address": "0x100b0a30", "recomp": "0x10097120", "name": "MxOmniCreateFlags::MxOmniCreateFlags", "matching": 1.0, "diff": []}, {"address": "0x100b0a70", "recomp": "0x10097230", "name": "MxOmniCreateParam::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b0b00", "recomp": "0x10097160", "name": "MxOmniCreateParam::MxOmniCreateParam", "matching": 1.0, "diff": []}, {"address": "0x100b0bd0", "recomp": "0x1005fb60", "name": "MxHashTable<MxVariable *>::~MxHashTable<MxVariable *>", "matching": 1.0, "diff": []}, {"address": "0x100b0ca0", "recomp": "0x1005ee70", "name": "MxHashTable<MxVariable *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b0d80", "recomp": "0x10066300", "name": "MxObjectFactory::MxObjectFactory", "matching": 0.9453860640301318, "diff": [["@@ -0x100b0d86,31 +0x10066306,31 @@", [{"both": [["0x100b0d86", "push ebp", "0x10066306"], ["0x100b0d87", "mov ebp, esp", "0x10066307"], ["0x100b0d89", "push -1", "0x10066309"], ["0x100b0d8b", "push <OFFSET1>", "0x1006630b"], ["0x100b0d90", "push eax", "0x10066310"], ["0x100b0d91", "mov dword ptr fs:[0], esp", "0x10066311"], ["0x100b0d98", "sub esp, 0x34", "0x10066318"], ["0x100b0d9b", "mov dword ptr [ebp - 0x10], ecx", "0x1006631b"], ["0x100b0d9e", "push esi", "0x1006631e"], ["0x100b0d9f", "call MxCore::MxCore (FUNCTION)", "0x1006631f"]]}, {"orig": [["0x100b0da4", "mov esi, dword ptr [ebp - 0x10]"], ["0x100b0da7", "mov eax, dword ptr [ebp - 0x10]"], ["0x100b0daa", "add esi, 8"], ["0x100b0dad", "add eax, 0xc"]], "recomp": []}, {"both": [["0x100b0db0", "mov dword ptr [ebp - 4], 0", "0x10066324"], ["0x100b0db7", "mov byte ptr [ebp - 4], 1", "0x1006632b"]]}, {"orig": [["0x100b0dbb", "mov dword ptr [esi], 0"], ["0x100b0dc1", "mov dword ptr [eax], 0"]], "recomp": [["0x1006632f", "mov esi, dword ptr [ebp - 0x10]"]]}, {"both": [["0x100b0dc7", "mov byte ptr [ebp - 4], 2", "0x10066332"]]}, {"orig": [], "recomp": [["0x10066336", "mov dword ptr [esi + 8], 0"], ["0x1006633d", "add esi, 8"], ["0x10066340", "mov eax, dword ptr [ebp - 0x10]"], ["0x10066343", "add eax, 0xc"]]}, {"both": [["0x100b0dcb", "mov byte ptr [ebp - 4], 3", "0x10066346"], ["0x100b0dcf", "mov dword ptr [ebp - 0x38], eax", "0x1006634a"]]}, {"orig": [], "recomp": [["0x1006634d", "mov dword ptr [eax], 0"]]}, {"both": [["0x100b0dd2", "mov eax, dword ptr [ebp - 0x10]", "0x10066353"], ["0x100b0dd5", "add eax, 0x10", "0x10066356"], ["0x100b0dd8", "mov byte ptr [ebp - 4], 4", "0x10066359"], ["0x100b0ddc", "mov dword ptr [ebp - 0x34], eax", "0x1006635d"], ["0x100b0ddf", "mov dword ptr [eax], 0", "0x10066360"], ["0x100b0de5", "mov eax, dword ptr [ebp - 0x10]", "0x10066366"], ["0x100b0de8", "add eax, 0x14", "0x10066369"], ["0x100b0deb", "mov byte ptr [ebp - 4], 5", "0x1006636c"], ["0x100b0def", "mov dword ptr [ebp - 0x30], eax", "0x10066370"], ["0x100b0df2", "mov dword ptr [eax], 0", "0x10066373"]]}]], ["@@ -0x100b0e59,27 +0x100663da,27 @@", [{"both": [["0x100b0e59", "mov dword ptr [ebp - 0x18], eax", "0x100663da"], ["0x100b0e5c", "mov dword ptr [eax], 0", "0x100663dd"], ["0x100b0e62", "mov byte ptr [ebp - 4], 0xa", "0x100663e3"], ["0x100b0e66", "mov byte ptr [ebp - 4], 0xb", "0x100663e7"], ["0x100b0e6a", "mov eax, dword ptr [ebp - 0x10]", "0x100663eb"], ["0x100b0e6d", "add eax, 0x30", "0x100663ee"], ["0x100b0e70", "mov byte ptr [ebp - 4], 0xc", "0x100663f1"], ["0x100b0e74", "mov dword ptr [ebp - 0x14], eax", "0x100663f5"], ["0x100b0e77", "mov dword ptr [eax], 0", "0x100663f8"], ["0x100b0e7d", "mov eax, dword ptr [ebp - 0x10]", "0x100663fe"]]}, {"orig": [["0x100b0e80", "push 0"]], "recomp": []}, {"both": [["0x100b0e82", "add eax, 0x34", "0x10066401"]]}, {"orig": [], "recomp": [["0x10066404", "push 0"], ["0x10066406", "mov dword ptr [ebp - 0x40], eax"], ["0x10066409", "mov dword ptr [eax], 0"], ["0x1006640f", "mov eax, dword ptr [ebp - 0x10]"]]}, {"both": [["0x100b0e85", "push 'MxPresenter' (STRING)", "0x10066412"], ["0x100b0e8a", "lea ecx, [ebp - 0x3c]", "0x10066417"]]}, {"orig": [["0x100b0e8d", "mov dword ptr [ebp - 0x40], eax"], ["0x100b0e90", "mov dword ptr [eax], 0"], ["0x100b0e96", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": []}, {"both": [["0x100b0e99", "mov dword ptr [eax], MxObjectFactory::`vftable' (VTABLE)", "0x1006641a"], ["0x100b0e9f", "call MxAtomId::MxAtomId (FUNCTION)", "0x10066420"], ["0x100b0ea4", "push eax", "0x10066425"], ["0x100b0ea5", "mov ecx, esi", "0x10066426"], ["0x100b0ea7", "mov byte ptr [ebp - 4], 0xd", "0x10066428"], ["0x100b0eab", "call MxAtomId::operator= (FUNCTION)", "0x1006642c"], ["0x100b0eb0", "mov byte ptr [ebp - 4], 0xc", "0x10066431"], ["0x100b0eb4", "call <OFFSET7>", "0x10066435"], ["0x100b0eb9", "push 0", "0x1006643a"], ["0x100b0ebb", "lea ecx, [ebp - 0x3c]", "0x1006643c"]]}]], ["@@ -0x100b102b,26 +0x100665ac,26 @@", [{"both": [["0x100b102b", "push 0", "0x100665ac"], ["0x100b102d", "lea ecx, [ebp - 0x14]", "0x100665ae"], ["0x100b1030", "push 'MxLoopingMIDIPresenter' (STRING)", "0x100665b1"], ["0x100b1035", "call MxAtomId::MxAtomId (FUNCTION)", "0x100665b6"], ["0x100b103a", "mov byte ptr [ebp - 4], 0x18", "0x100665bb"], ["0x100b103e", "push eax", "0x100665bf"], ["0x100b103f", "mov ecx, dword ptr [ebp - 0x40]", "0x100665c0"], ["0x100b1042", "call MxAtomId::operator= (FUNCTION)", "0x100665c3"], ["0x100b1047", "mov byte ptr [ebp - 4], 0xc", "0x100665c8"], ["0x100b104b", "call <OFFSET29>", "0x100665cc"]]}, {"orig": [["0x100b1050", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x100665d1", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100665d8", "mov eax, dword ptr [ebp - 0x10]"], ["0x100665db", "mov ecx, dword ptr [ebp - 0xc]"], ["0x100665de", "mov dword ptr fs:[0], ecx"]]}, {"both": [["0x100b1053", "pop esi", "0x100665e5"]]}, {"orig": [["0x100b1054", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100b105b", "mov ecx, dword ptr [ebp - 0xc]"]], "recomp": []}, {"both": [["0x100b105e", "mov esp, ebp", "0x100665e6"]]}, {"orig": [["0x100b1060", "mov dword ptr fs:[0], ecx"]], "recomp": []}, {"both": [["0x100b1067", "pop ebp", "0x100665e8"], ["0x100b1068", "ret ", "0x100665e9"], ["0x100b1069", "lea ecx, [ebp - 0x14]", "0x100665ea"], ["0x100b106c", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x100665ed"], ["0x100b1071", "lea ecx, [ebp - 0x18]", "0x100665f2"], ["0x100b1074", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x100665f5"], ["0x100b1079", "lea ecx, [ebp - 0x1c]", "0x100665fa"], ["0x100b107c", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x100665fd"], ["0x100b1081", "lea ecx, [ebp - 0x20]", "0x10066602"], ["0x100b1084", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x10066605"]]}]], ["@@ -0x100b1137,11 +0x100666b8,10 @@", [{"both": [["0x100b1137", "mov ecx, dword ptr [ebp - 0x10]", "0x100666b8"], ["0x100b113a", "add ecx, 0xc", "0x100666bb"], ["0x100b113d", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x100666be"], ["0x100b1142", "mov ecx, dword ptr [ebp - 0x10]", "0x100666c3"], ["0x100b1145", "add ecx, 8", "0x100666c6"], ["0x100b1148", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x100666c9"], ["0x100b114d", "mov eax, <OFFSET31>", "0x100666ce"], ["0x100b1152", "jmp ___CxxFrameHandler (FUNCTION)", "0x100666d3"], ["0x100b1157", "mov ecx, dword ptr [ebp - 0x10]", "0x100666d8"], ["0x100b115a", "jmp MxCore::~MxCore (FUNCTION)", "0x100666db"]]}, {"orig": [["0x100b115f", "int3 "]], "recomp": []}]]]}, {"address": "0x100b1160", "recomp": "0x100666e0", "name": "MxObjectFactory::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b12c0", "recomp": "0x10066840", "name": "MxObjectFactory::Create", "matching": 1.0, "diff": []}, {"address": "0x100b1830", "recomp": "0x10066db0", "name": "MxLoopingMIDIPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100b1840", "recomp": "0x10066dc0", "name": "MxLoopingMIDIPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x100b19c0", "recomp": "0x10066f40", "name": "MxLoopingMIDIPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b1a30", "recomp": "0x10066fb0", "name": "MxObjectFactory::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b1a50", "recomp": "0x10061d30", "name": "MxSoundPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b1aa0", "recomp": "0x10061d80", "name": "MxSoundPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x100b1ad0", "recomp": "0x1005fc30", "name": "MxWavePresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100b1af0", "recomp": "0x1005fc50", "name": "MxWavePresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x100b1b10", "recomp": "0x1005fc70", "name": "MxWavePresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b1b60", "recomp": "0x1005fcc0", "name": "MxWavePresenter::GetPlayedChunks", "matching": 1.0, "diff": []}, {"address": "0x100b1ba0", "recomp": "0x1005fd00", "name": "MxWavePresenter::FUN_100b1ba0", "matching": 1.0, "diff": []}, {"address": "0x100b1bd0", "recomp": "0x1005fd30", "name": "MxWavePresenter::WriteToSoundBuffer", "matching": 1.0, "diff": []}, {"address": "0x100b1cf0", "recomp": "0x1005fe50", "name": "MxWavePresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x100b1d50", "recomp": "0x1005feb0", "name": "MxWavePresenter::StartingTickle", "matching": 1.0, "diff": []}, {"address": "0x100b1ea0", "recomp": "0x10060000", "name": "MxWavePresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x100b1fe0", "recomp": "0x10060140", "name": "MxStreamChunk::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100b1ff0", "recomp": "0x10060150", "name": "MxStreamChunk::IsA", "matching": 1.0, "diff": []}, {"address": "0x100b20a0", "recomp": "0x10060200", "name": "MxStreamChunk::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b20c0", "recomp": "0x10060220", "name": "MxWavePresenter::DoneTickle", "matching": 1.0, "diff": []}, {"address": "0x100b2130", "recomp": "0x10060290", "name": "MxWavePresenter::LoopChunk", "matching": 1.0, "diff": []}, {"address": "0x100b2160", "recomp": "0x100602c0", "name": "MxWavePresenter::PutData", "matching": 1.0, "diff": []}, {"address": "0x100b2280", "recomp": "0x100603e0", "name": "MxWavePresenter::EndAction", "matching": 1.0, "diff": []}, {"address": "0x100b2300", "recomp": "0x10060460", "name": "MxWavePresenter::SetVolume", "matching": 1.0, "diff": []}, {"address": "0x100b2360", "recomp": "0x100604c0", "name": "MxWavePresenter::Enable", "matching": 1.0, "diff": []}, {"address": "0x100b23a0", "recomp": "0x10060500", "name": "MxWavePresenter::ParseExtra", "matching": 1.0, "diff": []}, {"address": "0x100b2440", "recomp": "0x100605a0", "name": "MxWavePresenter::Pause", "matching": 1.0, "diff": []}, {"address": "0x100b2470", "recomp": "0x100605d0", "name": "MxWavePresenter::Resume", "matching": 1.0, "diff": []}, {"address": "0x100b24f0", "recomp": "0x10066fd0", "name": "MxVideoPresenter::AlphaMask::AlphaMask", "matching": 0.697841726618705, "diff": [["@@ -0x100b2540,111 +0x10067020,107 @@", [{"both": [["0x100b2540", "mov dword ptr [esi + 4], eax", "0x10067020"], ["0x100b2543", "shr ecx, 2", "0x10067023"], ["0x100b2546", "xor eax, eax", "0x10067026"], ["0x100b2548", "rep stosd dword ptr es:[edi], eax", "0x10067028"], ["0x100b254a", "mov ecx, ebp", "0x1006702a"], ["0x100b254c", "and ecx, 3", "0x1006702c"], ["0x100b254f", "rep stosb byte ptr es:[edi], al", "0x1006702f"], ["0x100b2551", "mov edx, dword ptr [ebx + 0xc]", "0x10067031"], ["0x100b2554", "mov ecx, dword ptr [edx + 0x10]", "0x10067034"], ["0x100b2557", "test ecx, ecx", "0x10067037"]]}, {"orig": [["0x100b2559", "jne 0x14"]], "recomp": [["0x10067039", "je 0x2a"]]}, {"both": [["0x100b255b", "cmp ecx, 0x10", "0x1006703b"]]}, {"orig": [["0x100b255e", "je 0x7"], ["0x100b2560", "mov eax, dword ptr [edx + 8]"], ["0x100b2563", "test eax, eax"], ["0x100b2565", "jge 0x4"], ["0x100b2567", "xor eax, eax"], ["0x100b2569", "jmp 0x1e"], ["0x100b256b", "jg 0x1b"], ["0x100b256d", "jmp 0x17"], ["0x100b256f", "cmp ecx, 0x10"], ["0x100b2572", "jne 0x5"], ["0x100b2574", "mov edi, dword ptr [ebx + 0x14]"], ["0x100b2577", "jmp 0x1f"]], "recomp": [["0x1006703e", "je 0x4a"]]}, {"both": [["0x100b2579", "mov eax, dword ptr [edx + 8]", "0x10067040"], ["0x100b257c", "test eax, eax", "0x10067043"], ["0x100b257e", "jge 0x4", "0x10067045"], ["0x100b2580", "xor eax, eax", "0x10067047"], ["0x100b2582", "jmp 0x5", "0x10067049"], ["0x100b2584", "jg 0x2", "0x1006704b"], ["0x100b2586", "neg eax", "0x1006704d"], ["0x100b2588", "dec eax", "0x1006704f"], ["0x100b2589", "mov edi, dword ptr [edx + 4]", "0x10067050"], ["0x100b258c", "add edi, 3", "0x10067053"], ["0x100b258f", "and edi, 0xfffffffc", "0x10067056"], ["0x100b2592", "imul edi, eax", "0x10067059"], ["0x100b2595", "add edi, dword ptr [ebx + 0x14]", "0x1006705c"]]}, {"orig": [], "recomp": [["0x1006705f", "mov dword ptr [esp + 0x10], edi"], ["0x10067063", "jmp 0x2c"], ["0x10067065", "mov eax, dword ptr [edx + 8]"], ["0x10067068", "test eax, eax"], ["0x1006706a", "jge 0x4"]]}, {"both": [["0x100b2598", "xor eax, eax", "0x1006706c"]]}, {"orig": [["0x100b259a", "mov dword ptr [esp + 0x1c], edi"]], "recomp": [["0x1006706e", "jmp 0x5"], ["0x10067070", "jg 0x2"], ["0x10067072", "neg eax"], ["0x10067074", "dec eax"], ["0x10067075", "mov edi, dword ptr [edx + 4]"], ["0x10067078", "add edi, 3"], ["0x1006707b", "and edi, 0xfffffffc"], ["0x1006707e", "imul edi, eax"], ["0x10067081", "add edi, dword ptr [ebx + 0x14]"], ["0x10067084", "mov dword ptr [esp + 0x10], edi"], ["0x10067088", "jmp 0x7"], ["0x1006708a", "mov eax, dword ptr [ebx + 0x14]"], ["0x1006708d", "mov dword ptr [esp + 0x10], eax"], ["0x10067091", "xor eax, eax"]]}, {"both": [["0x100b259e", "mov ax, word ptr [esi + 8]", "0x10067093"], ["0x100b25a2", "add eax, 3", "0x10067097"], ["0x100b25a5", "and eax, 0xfffffffc", "0x1006709a"], ["0x100b25a8", "cmp ecx, 0x10", "0x1006709d"]]}, {"orig": [["0x100b25ab", "mov dword ptr [esp + 0x14], eax"]], "recomp": [["0x100670a0", "mov dword ptr [esp + 0x18], eax"]]}, {"both": [["0x100b25af", "je 0xc", "0x100670a4"], ["0x100b25b1", "cmp dword ptr [edx + 8], 0", "0x100670a6"]]}, {"orig": [["0x100b25b5", "jl 0x6"]], "recomp": [["0x100670aa", "jle 0x6"]]}, {"both": [["0x100b25b7", "neg eax", "0x100670ac"]]}, {"orig": [["0x100b25b9", "mov dword ptr [esp + 0x14], eax"]], "recomp": [["0x100670ae", "mov dword ptr [esp + 0x18], eax"]]}, {"both": [["0x100b25bd", "xor eax, eax", "0x100670b2"], ["0x100b25bf", "cmp word ptr [esi + 0xa], ax", "0x100670b4"]]}, {"orig": [["0x100b25c3", "mov dword ptr [esp + 0x10], eax"]], "recomp": [["0x100670b8", "mov dword ptr [esp + 0x14], eax"]]}, {"both": [["0x100b25c7", "mov dword ptr [esp + 0x20], eax", "0x100670bc"]]}, {"orig": [["0x100b25cb", "jbe 0x71"], ["0x100b25cd", "mov dword ptr [esp + 0x18], 0"]], "recomp": [["0x100670c0", "jbe 0x72"], ["0x100670c2", "mov dword ptr [esp + 0x1c], 0"]]}, {"both": [["0x100b25d5", "cmp word ptr [esi + 8], 0", "0x100670ca"]]}, {"orig": [["0x100b25da", "jbe 0x46"]], "recomp": [["0x100670cf", "mov edi, dword ptr [esp + 0x10]"], ["0x100670d3", "jbe 0x47"]]}, {"both": [["0x100b25dc", "cmp byte ptr [edi], 0", "0x100670d5"]]}, {"orig": [["0x100b25df", "je 0x2c"], ["0x100b25e1", "mov eax, dword ptr [esp + 0x10]"]], "recomp": [["0x100670d8", "je 0x2d"], ["0x100670da", "mov eax, dword ptr [esp + 0x14]"]]}, {"both": [["0x100b25e5", "mov ecx, dword ptr [esi + 4]", "0x100670de"], ["0x100b25e8", "cdq ", "0x100670e1"], ["0x100b25e9", "and edx, 7", "0x100670e2"], ["0x100b25ec", "mov bl, 1", "0x100670e5"], ["0x100b25ee", "add eax, edx", "0x100670e7"], ["0x100b25f0", "sar eax, 3", "0x100670e9"], ["0x100b25f3", "lea ebp, [ecx + eax]", "0x100670ec"]]}, {"orig": [["0x100b25f6", "mov eax, dword ptr [esp + 0x10]"]], "recomp": [["0x100670ef", "mov eax, dword ptr [esp + 0x14]"]]}, {"both": [["0x100b25fa", "cdq ", "0x100670f3"], ["0x100b25fb", "xor eax, edx", "0x100670f4"], ["0x100b25fd", "sub eax, edx", "0x100670f6"], ["0x100b25ff", "and eax, 7", "0x100670f8"]]}, {"orig": [], "recomp": [["0x100670fb", "cdq "]]}, {"both": [["0x100b2602", "xor eax, edx", "0x100670fc"], ["0x100b2604", "sub eax, edx", "0x100670fe"], ["0x100b2606", "mov cl, al", "0x10067100"], ["0x100b2608", "shl bl, cl", "0x10067102"], ["0x100b260a", "or byte ptr [ebp], bl", "0x10067104"], ["0x100b260d", "inc edi", "0x10067107"], ["0x100b260e", "xor eax, eax", "0x10067108"], ["0x100b2610", "mov ax, word ptr [esi + 8]", "0x1006710a"]]}, {"orig": [["0x100b2614", "inc dword ptr [esp + 0x10]"], ["0x100b2618", "inc dword ptr [esp + 0x18]"], ["0x100b261c", "cmp eax, dword ptr [esp + 0x18]"], ["0x100b2620", "jg -0x46"], ["0x100b2622", "mov eax, dword ptr [esp + 0x14]"]], "recomp": [["0x1006710e", "inc dword ptr [esp + 0x14]"], ["0x10067112", "inc dword ptr [esp + 0x1c]"], ["0x10067116", "cmp eax, dword ptr [esp + 0x1c]"], ["0x1006711a", "jg -0x47"], ["0x1006711c", "mov eax, dword ptr [esp + 0x18]"]]}, {"both": [["0x100b2626", "inc dword ptr [esp + 0x20]", "0x10067120"]]}, {"orig": [["0x100b262a", "add dword ptr [esp + 0x1c], eax"]], "recomp": [["0x10067124", "add dword ptr [esp + 0x10], eax"]]}, {"both": [["0x100b262e", "xor eax, eax", "0x10067128"], ["0x100b2630", "mov ax, word ptr [esi + 0xa]", "0x1006712a"]]}, {"orig": [["0x100b2634", "mov edi, dword ptr [esp + 0x1c]"]], "recomp": []}, {"both": [["0x100b2638", "cmp eax, dword ptr [esp + 0x20]", "0x1006712e"]]}, {"orig": [["0x100b263c", "jg -0x71"]], "recomp": [["0x10067132", "jg -0x72"]]}, {"both": [["0x100b263e", "mov eax, esi", "0x10067134"], ["0x100b2640", "pop ebp", "0x10067136"], ["0x100b2641", "pop edi", "0x10067137"], ["0x100b2642", "pop esi", "0x10067138"], ["0x100b2643", "pop ebx", "0x10067139"], ["0x100b2644", "add esp, 0x14", "0x1006713a"], ["0x100b2647", "ret 4", "0x1006713d"]]}, {"orig": [["0x100b264a", "int3 "], ["0x100b264b", "int3 "], ["0x100b264c", "int3 "], ["0x100b264d", "int3 "], ["0x100b264e", "int3 "], ["0x100b264f", "int3 "], ["0x100b2650", "push esi"], ["0x100b2651", "mov esi, ecx"], ["0x100b2653", "call MxVideoPresenter::AlphaMask::~AlphaMask (FUNCTION)"], ["0x100b2658", "test byte ptr [esp + 8], 1"], ["0x100b265d", "je 0x9"], ["0x100b265f", "push esi"]], "recomp": []}]]]}, {"address": "0x100b2650", "recomp": "0x10067140", "name": "MxVideoPresenter::AlphaMask::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b2670", "recomp": "0x10067160", "name": "MxVideoPresenter::AlphaMask::AlphaMask", "matching": 1.0, "diff": []}, {"address": "0x100b26d0", "recomp": "0x100671c0", "name": "MxVideoPresenter::AlphaMask::~AlphaMask", "matching": 1.0, "diff": []}, {"address": "0x100b26f0", "recomp": "0x100671e0", "name": "MxVideoPresenter::AlphaMask::IsHit", "matching": 0.8936170212765957, "diff": [["@@ -0x100b26f0,47 +0x100671e0,47 @@", [{"both": [["0x100b26f0", "mov eax, dword ptr [esp + 4]", "0x100671e0"], ["0x100b26f4", "push ebx", "0x100671e4"], ["0x100b26f5", "push esi", "0x100671e5"], ["0x100b26f6", "push edi", "0x100671e6"], ["0x100b26f7", "xor esi, esi", "0x100671e7"], ["0x100b26f9", "mov si, word ptr [ecx + 8]", "0x100671e9"]]}, {"orig": [["0x100b26fd", "cmp esi, eax"], ["0x100b26ff", "jbe 0x4c"]], "recomp": [["0x100671ed", "cmp eax, esi"], ["0x100671ef", "jae 0x4d"], ["0x100671f1", "xor edi, edi"]]}, {"both": [["0x100b2701", "mov edx, dword ptr [esp + 0x14]", "0x100671f3"]]}, {"orig": [["0x100b2705", "xor edi, edi"]], "recomp": []}, {"both": [["0x100b2707", "mov di, word ptr [ecx + 0xa]", "0x100671f7"], ["0x100b270b", "cmp edi, edx", "0x100671fb"]]}, {"orig": [["0x100b270d", "jbe 0x3e"]], "recomp": [["0x100671fd", "jbe 0x3f"]]}, {"both": [["0x100b270f", "imul edx, esi", "0x100671ff"], ["0x100b2712", "mov ecx, dword ptr [ecx + 4]", "0x10067202"], ["0x100b2715", "lea edi, [edx + eax]", "0x10067205"], ["0x100b2718", "mov eax, edi", "0x10067208"], ["0x100b271a", "xor ebx, ebx", "0x1006720a"], ["0x100b271c", "cdq ", "0x1006720c"], ["0x100b271d", "and edx, 7", "0x1006720d"], ["0x100b2720", "mov esi, 1", "0x10067210"], ["0x100b2725", "add eax, edx", "0x10067215"], ["0x100b2727", "sar eax, 3", "0x10067217"], ["0x100b272a", "mov bl, byte ptr [ecx + eax]", "0x1006721a"], ["0x100b272d", "mov eax, edi", "0x1006721d"], ["0x100b272f", "cdq ", "0x1006721f"], ["0x100b2730", "xor eax, edx", "0x10067220"], ["0x100b2732", "sub eax, edx", "0x10067222"], ["0x100b2734", "and eax, 7", "0x10067224"]]}, {"orig": [], "recomp": [["0x10067227", "cdq "]]}, {"both": [["0x100b2737", "xor eax, edx", "0x10067228"], ["0x100b2739", "sub eax, edx", "0x1006722a"], ["0x100b273b", "pop edi", "0x1006722c"], ["0x100b273c", "mov cl, al", "0x1006722d"], ["0x100b273e", "shl esi, cl", "0x1006722f"], ["0x100b2740", "and ebx, esi", "0x10067231"], ["0x100b2742", "pop esi", "0x10067233"], ["0x100b2743", "cmp ebx, 1", "0x10067234"], ["0x100b2746", "pop ebx", "0x10067237"], ["0x100b2747", "sbb eax, eax", "0x10067238"], ["0x100b2749", "inc eax", "0x1006723a"], ["0x100b274a", "ret 8", "0x1006723b"], ["0x100b274d", "xor eax, eax", "0x1006723e"], ["0x100b274f", "pop edi", "0x10067240"], ["0x100b2750", "pop esi", "0x10067241"], ["0x100b2751", "pop ebx", "0x10067242"], ["0x100b2752", "ret 8", "0x10067243"]]}, {"orig": [["0x100b2755", "int3 "]], "recomp": []}]]]}, {"address": "0x100b2760", "recomp": "0x10067250", "name": "MxVideoPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100b27b0", "recomp": "0x100672a0", "name": "MxVideoPresenter::Destroy", "matching": 0.8791208791208791, "diff": [["@@ -0x100b2822,35 +0x10067312,35 @@", [{"both": [["0x100b2822", "mov dword ptr [esp + 0xc], ecx", "0x10067312"], ["0x100b2826", "mov dword ptr [esp + 0x10], edx", "0x10067316"], ["0x100b282a", "lea ecx, [esp + 0xc]", "0x1006731a"], ["0x100b282e", "mov dword ptr [esp + 0x14], eax", "0x1006731e"], ["0x100b2832", "mov dword ptr [esp + 0x18], edi", "0x10067322"], ["0x100b2836", "push ecx", "0x10067326"], ["0x100b2837", "call MVideoManager (FUNCTION)", "0x10067327"], ["0x100b283c", "mov ecx, eax", "0x1006732c"], ["0x100b283e", "call MxVideoManager::InvalidateRect (FUNCTION)", "0x1006732e"], ["0x100b2843", "call MVideoManager (FUNCTION)", "0x10067333"]]}, {"orig": [["0x100b2848", "mov ecx, dword ptr [esp + 0x18]"], ["0x100b284c", "sub ecx, dword ptr [esp + 0x10]"]], "recomp": [["0x10067338", "mov ecx, eax"], ["0x1006733a", "mov eax, dword ptr [esp + 0x18]"], ["0x1006733e", "sub eax, dword ptr [esp + 0x10]"]]}, {"both": [["0x100b2850", "mov edx, dword ptr [esp + 0x10]", "0x10067342"]]}, {"orig": [["0x100b2854", "inc ecx"]], "recomp": [["0x10067346", "inc eax"]]}, {"both": [["0x100b2855", "mov ebx, dword ptr [esp + 0xc]", "0x10067347"]]}, {"orig": [["0x100b2859", "push ecx"], ["0x100b285a", "mov edi, dword ptr [eax]"], ["0x100b285c", "mov ecx, dword ptr [esp + 0x18]"], ["0x100b2860", "sub ecx, dword ptr [esp + 0x10]"], ["0x100b2864", "inc ecx"], ["0x100b2865", "push ecx"]], "recomp": [["0x1006734b", "push eax"], ["0x1006734c", "mov eax, dword ptr [esp + 0x18]"], ["0x10067350", "sub eax, dword ptr [esp + 0x10]"], ["0x10067354", "inc eax"], ["0x10067355", "push eax"]]}, {"both": [["0x100b2866", "push edx", "0x10067356"], ["0x100b2867", "push ebx", "0x10067357"]]}, {"orig": [["0x100b2868", "mov ecx, eax"], ["0x100b286a", "call dword ptr [edi + 0x34]"]], "recomp": [["0x10067358", "mov eax, dword ptr [ecx]"], ["0x1006735a", "call dword ptr [eax + 0x34]"]]}, {"both": [["0x100b286d", "mov ecx, dword ptr [esi + 0x50]", "0x1006735d"], ["0x100b2870", "test ecx, ecx", "0x10067360"], ["0x100b2872", "je 0x6", "0x10067362"], ["0x100b2874", "push 1", "0x10067364"], ["0x100b2876", "mov eax, dword ptr [ecx]", "0x10067366"], ["0x100b2878", "call dword ptr [eax]", "0x10067368"], ["0x100b287a", "mov ecx, dword ptr [esi + 0x54]", "0x1006736a"], ["0x100b287d", "test ecx, ecx", "0x1006736d"], ["0x100b287f", "je 0x6", "0x1006736f"], ["0x100b2881", "push 1", "0x10067371"]]}]]]}, {"address": "0x100b28b0", "recomp": "0x100673a0", "name": "MxVideoPresenter::NextFrame", "matching": 1.0, "diff": []}, {"address": "0x100b2900", "recomp": "0x100673f0", "name": "MxVideoPresenter::IsHit", "matching": 0.45384615384615384, "diff": [["@@ -0x100b2900,127 +0x100673f0,133 @@", [{"orig": [["0x100b2900", "sub esp, 0x18"]], "recomp": [["0x100673f0", "sub esp, 4"]]}, {"both": [["0x100b2903", "push ebx", "0x100673f3"], ["0x100b2904", "push esi", "0x100673f4"], ["0x100b2905", "mov eax, dword ptr [ecx + 0x1c]", "0x100673f5"], ["0x100b2908", "push edi", "0x100673f8"], ["0x100b2909", "push ebp", "0x100673f9"], ["0x100b290a", "mov esi, ecx", "0x100673fa"], ["0x100b290c", "test eax, eax", "0x100673fc"]]}, {"orig": [["0x100b290e", "je 0x146"]], "recomp": [["0x100673fe", "je 0x130"]]}, {"both": [["0x100b2914", "test byte ptr [eax + 0x31], 4", "0x10067404"], ["0x100b2918", "jne 0xd", "0x10067408"], ["0x100b291a", "call MxPresenter::IsEnabled (FUNCTION)", "0x1006740a"], ["0x100b291f", "test al, al", "0x1006740f"]]}, {"orig": [["0x100b2921", "je 0x133"], ["0x100b2927", "mov edx, dword ptr [esi + 0x50]"], ["0x100b292a", "test edx, edx"]], "recomp": [["0x10067411", "je 0x11d"], ["0x10067417", "mov ecx, dword ptr [esi + 0x50]"], ["0x1006741a", "test ecx, ecx"]]}, {"both": [["0x100b292c", "jne 0x30", "0x1006741c"], ["0x100b292e", "cmp dword ptr [esi + 0x54], 0", "0x1006741e"]]}, {"orig": [["0x100b2932", "je 0x122"], ["0x100b2938", "test edx, edx"]], "recomp": [["0x10067422", "je 0x10c"], ["0x10067428", "test ecx, ecx"]]}, {"both": [["0x100b293a", "jne 0x22", "0x1006742a"]]}, {"orig": [["0x100b293c", "mov ecx, dword ptr [esp + 0x30]"], ["0x100b2940", "mov eax, dword ptr [esp + 0x2c]"], ["0x100b2944", "sub ecx, dword ptr [esi + 0x14]"]], "recomp": [["0x1006742c", "mov edi, dword ptr [esp + 0x1c]"], ["0x10067430", "mov eax, dword ptr [esp + 0x18]"], ["0x10067434", "sub edi, dword ptr [esi + 0x14]"]]}, {"both": [["0x100b2947", "sub eax, dword ptr [esi + 0x10]", "0x10067437"]]}, {"orig": [["0x100b294a", "push ecx"]], "recomp": [["0x1006743a", "push edi"], ["0x1006743b", "mov ecx, dword ptr [esi + 0x54]"]]}, {"both": [["0x100b294b", "push eax", "0x1006743e"]]}, {"orig": [["0x100b294c", "mov ecx, dword ptr [esi + 0x54]"]], "recomp": []}, {"both": [["0x100b294f", "call MxVideoPresenter::AlphaMask::IsHit (FUNCTION)", "0x1006743f"], ["0x100b2954", "pop ebp", "0x10067444"], ["0x100b2955", "pop edi", "0x10067445"], ["0x100b2956", "pop esi", "0x10067446"], ["0x100b2957", "pop ebx", "0x10067447"]]}, {"orig": [["0x100b2958", "add esp, 0x18"]], "recomp": [["0x10067448", "add esp, 4"]]}, {"both": [["0x100b295b", "ret 8", "0x1006744b"]]}, {"orig": [["0x100b295e", "mov ebp, dword ptr [edx + 0xc]"]], "recomp": [["0x1006744e", "mov ebp, dword ptr [ecx + 0xc]"]]}, {"both": [["0x100b2961", "mov eax, dword ptr [ebp + 8]", "0x10067451"]]}, {"orig": [["0x100b2964", "mov ecx, eax"]], "recomp": [["0x10067454", "mov edx, eax"]]}, {"both": [["0x100b2966", "test eax, eax", "0x10067456"], ["0x100b2968", "jg 0x4", "0x10067458"]]}, {"orig": [["0x100b296a", "mov ecx, eax"], ["0x100b296c", "neg ecx"], ["0x100b296e", "mov ebp, dword ptr [esi + 0x10]"], ["0x100b2971", "mov edi, dword ptr [esi + 0x14]"], ["0x100b2974", "add ecx, edi"], ["0x100b2976", "mov dword ptr [esp + 0x10], ebp"], ["0x100b297a", "mov ebp, dword ptr [edx + 0xc]"], ["0x100b297d", "mov dword ptr [esp + 0x24], ecx"], ["0x100b2981", "mov ecx, dword ptr [esp + 0x2c]"], ["0x100b2985", "mov ebx, dword ptr [ebp + 4]"], ["0x100b2988", "mov ebp, dword ptr [esp + 0x10]"], ["0x100b298c", "add ebp, ebx"], ["0x100b298e", "cmp dword ptr [esp + 0x10], ecx"], ["0x100b2992", "jg 0xb6"], ["0x100b2998", "cmp ebp, ecx"], ["0x100b299a", "jle 0xae"], ["0x100b29a0", "mov ecx, dword ptr [esp + 0x30]"], ["0x100b29a4", "cmp edi, ecx"], ["0x100b29a6", "jg 0xa2"], ["0x100b29ac", "cmp dword ptr [esp + 0x24], ecx"], ["0x100b29b0", "jle 0x98"], ["0x100b29b6", "mov ebp, dword ptr [edx + 0xc]"]], "recomp": [["0x1006745a", "mov edx, eax"], ["0x1006745c", "neg edx"], ["0x1006745e", "mov edi, dword ptr [esi + 0x10]"], ["0x10067461", "mov ebx, dword ptr [esi + 0x14]"], ["0x10067464", "add edx, ebx"], ["0x10067466", "mov ebp, dword ptr [ecx + 0xc]"], ["0x10067469", "mov dword ptr [esp + 0x10], edx"], ["0x1006746d", "cmp dword ptr [esp + 0x18], edi"], ["0x10067471", "mov edx, dword ptr [ebp + 4]"], ["0x10067474", "lea ebp, [edi + edx]"], ["0x10067477", "jl 0xab"], ["0x1006747d", "cmp dword ptr [esp + 0x18], ebp"], ["0x10067481", "jge 0xa1"], ["0x10067487", "mov edi, dword ptr [esp + 0x1c]"], ["0x1006748b", "cmp edi, ebx"], ["0x1006748d", "jl 0x95"], ["0x10067493", "cmp edi, dword ptr [esp + 0x10]"], ["0x10067497", "jge 0x8b"], ["0x1006749d", "mov ebp, dword ptr [ecx + 0xc]"]]}, {"both": [["0x100b29b9", "mov ebp, dword ptr [ebp + 0x10]", "0x100674a0"]]}, {"orig": [["0x100b29bc", "mov dword ptr [esp + 0x18], ebp"]], "recomp": []}, {"both": [["0x100b29c0", "test ebp, ebp", "0x100674a3"]]}, {"orig": [["0x100b29c2", "jne 0x2d"]], "recomp": [["0x100674a5", "jne 0x2c"]]}, {"both": [["0x100b29c4", "cmp ebp, 0x10", "0x100674a7"]]}, {"orig": [["0x100b29c7", "je 0x4"]], "recomp": [["0x100674aa", "je 0x10"]]}, {"both": [["0x100b29c9", "test eax, eax", "0x100674ac"]]}, {"orig": [["0x100b29cb", "jge 0x4"], ["0x100b29cd", "sub ecx, edi"], ["0x100b29cf", "jmp 0xa"]], "recomp": [["0x100674ae", "jl 0xc"]]}, {"both": [["0x100b29d1", "jg 0x2", "0x100674b0"], ["0x100b29d3", "neg eax", "0x100674b2"]]}, {"orig": [["0x100b29d5", "sub eax, ecx"], ["0x100b29d7", "lea ecx, [eax + edi - 1]"], ["0x100b29db", "add ebx, 3"], ["0x100b29de", "and ebx, 0xfffffffc"], ["0x100b29e1", "imul ebx, ecx"], ["0x100b29e4", "add ebx, dword ptr [edx + 0x14]"], ["0x100b29e7", "sub ebx, dword ptr [esp + 0x10]"], ["0x100b29eb", "add ebx, dword ptr [esp + 0x2c]"], ["0x100b29ef", "jmp 0x25"], ["0x100b29f1", "cmp dword ptr [esp + 0x18], 0x10"], ["0x100b29f6", "jne 0x5"], ["0x100b29f8", "mov ebx, dword ptr [edx + 0x14]"], ["0x100b29fb", "jmp 0x19"]], "recomp": [["0x100674b4", "sub eax, edi"], ["0x100674b6", "lea edi, [eax + ebx - 1]"], ["0x100674ba", "jmp 0x2"], ["0x100674bc", "sub edi, ebx"], ["0x100674be", "add edx, 3"], ["0x100674c1", "and edx, 0xfffffffc"], ["0x100674c4", "imul edx, edi"], ["0x100674c7", "add edx, dword ptr [ecx + 0x14]"], ["0x100674ca", "sub edx, dword ptr [esi + 0x10]"], ["0x100674cd", "add edx, dword ptr [esp + 0x18]"], ["0x100674d1", "jmp 0x1d"], ["0x100674d3", "cmp ebp, 0x10"], ["0x100674d6", "je 0x15"]]}, {"both": [["0x100b29fd", "test eax, eax", "0x100674d8"]]}, {"orig": [["0x100b29ff", "jge 0x4"], ["0x100b2a01", "xor eax, eax"], ["0x100b2a03", "jmp 0x5"]], "recomp": []}, {"both": [["0x100b2a05", "jg 0x2", "0x100674da"], ["0x100b2a07", "neg eax", "0x100674dc"]]}, {"orig": [], "recomp": [["0x100674de", "add edx, 3"]]}, {"both": [["0x100b2a09", "dec eax", "0x100674e1"]]}, {"orig": [["0x100b2a0a", "add ebx, 3"], ["0x100b2a0d", "and ebx, 0xfffffffc"], ["0x100b2a10", "imul ebx, eax"], ["0x100b2a13", "add ebx, dword ptr [edx + 0x14]"]], "recomp": [["0x100674e2", "and edx, 0xfffffffc"], ["0x100674e5", "imul edx, eax"], ["0x100674e8", "add edx, dword ptr [ecx + 0x14]"], ["0x100674eb", "jmp 0x3"], ["0x100674ed", "mov edx, dword ptr [ecx + 0x14]"]]}, {"both": [["0x100b2a16", "test byte ptr [esi + 0x5e], 0x10", "0x100674f0"], ["0x100b2a1a", "je 0xc", "0x100674f4"]]}, {"orig": [["0x100b2a1c", "mov al, byte ptr [ebx]"]], "recomp": [["0x100674f6", "mov al, byte ptr [edx]"]]}, {"both": [["0x100b2a1e", "pop ebp", "0x100674f8"], ["0x100b2a1f", "pop edi", "0x100674f9"], ["0x100b2a20", "pop esi", "0x100674fa"], ["0x100b2a21", "pop ebx", "0x100674fb"]]}, {"orig": [["0x100b2a22", "add esp, 0x18"]], "recomp": [["0x100674fc", "add esp, 4"]]}, {"both": [["0x100b2a25", "ret 8", "0x100674ff"], ["0x100b2a28", "mov eax, dword ptr [esi + 0x1c]", "0x10067502"], ["0x100b2a2b", "test byte ptr [eax + 0x30], 8", "0x10067505"], ["0x100b2a2f", "je 0x11", "0x10067509"]]}, {"orig": [["0x100b2a31", "cmp byte ptr [ebx], 0"]], "recomp": [["0x1006750b", "cmp byte ptr [edx], 0"]]}, {"both": [["0x100b2a34", "jne 0xc", "0x1006750e"], ["0x100b2a36", "xor al, al", "0x10067510"], ["0x100b2a38", "pop ebp", "0x10067512"], ["0x100b2a39", "pop edi", "0x10067513"], ["0x100b2a3a", "pop esi", "0x10067514"], ["0x100b2a3b", "pop ebx", "0x10067515"]]}, {"orig": [["0x100b2a3c", "add esp, 0x18"]], "recomp": [["0x10067516", "add esp, 4"]]}, {"both": [["0x100b2a3f", "ret 8", "0x10067519"], ["0x100b2a42", "mov al, 1", "0x1006751c"], ["0x100b2a44", "pop ebp", "0x1006751e"], ["0x100b2a45", "pop edi", "0x1006751f"], ["0x100b2a46", "pop esi", "0x10067520"], ["0x100b2a47", "pop ebx", "0x10067521"]]}, {"orig": [["0x100b2a48", "add esp, 0x18"]], "recomp": [["0x10067522", "add esp, 4"]]}, {"both": [["0x100b2a4b", "ret 8", "0x10067525"], ["0x100b2a4e", "xor al, al", "0x10067528"]]}, {"orig": [], "recomp": [["0x1006752a", "pop ebp"], ["0x1006752b", "pop edi"], ["0x1006752c", "pop esi"], ["0x1006752d", "pop ebx"], ["0x1006752e", "add esp, 4"], ["0x10067531", "ret 8"], ["0x10067534", "xor al, al"], ["0x10067536", "pop ebp"], ["0x10067537", "pop edi"], ["0x10067538", "pop esi"], ["0x10067539", "pop ebx"], ["0x1006753a", "add esp, 4"], ["0x1006753d", "ret 8"]]}]]]}, {"address": "0x100b2a70", "recomp": "0x10067540", "name": "MxVideoPresenter::PutFrame", "matching": 0.7189695550351288, "diff": [["@@ -0x100b2a81,73 +0x10067551,73 @@", [{"both": [["0x100b2a81", "mov dword ptr fs:[0], esp", "0x10067551"], ["0x100b2a88", "sub esp, 0x58", "0x10067558"], ["0x100b2a8b", "push ebx", "0x1006755b"], ["0x100b2a8c", "push esi", "0x1006755c"], ["0x100b2a8d", "push edi", "0x1006755d"], ["0x100b2a8e", "mov esi, ecx", "0x1006755e"], ["0x100b2a90", "call MVideoManager (FUNCTION)", "0x10067560"], ["0x100b2a95", "mov eax, dword ptr [eax + 0x58]", "0x10067565"], ["0x100b2a98", "mov dword ptr [ebp - 0x30], eax", "0x10067568"], ["0x100b2a9b", "call MVideoManager (FUNCTION)", "0x1006756b"]]}, {"orig": [["0x100b2aa0", "mov edi, dword ptr [eax + 0x5c]"]], "recomp": [["0x10067570", "mov ebx, dword ptr [eax + 0x5c]"]]}, {"both": [["0x100b2aa3", "mov eax, dword ptr [esi]", "0x10067573"], ["0x100b2aa5", "mov ecx, dword ptr [eax + 0x84]", "0x10067575"], ["0x100b2aab", "mov dword ptr [ebp - 0x10], ecx", "0x1006757b"], ["0x100b2aae", "mov ecx, esi", "0x1006757e"], ["0x100b2ab0", "call dword ptr [ebp - 0x10]", "0x10067580"]]}, {"orig": [["0x100b2ab3", "mov ebx, eax"]], "recomp": [["0x10067583", "mov edi, eax"]]}, {"both": [["0x100b2ab5", "mov ecx, dword ptr [esi]", "0x10067585"], ["0x100b2ab7", "mov eax, dword ptr [ecx + 0x80]", "0x10067587"], ["0x100b2abd", "mov ecx, esi", "0x1006758d"], ["0x100b2abf", "mov dword ptr [ebp - 0x20], eax", "0x1006758f"], ["0x100b2ac2", "call eax", "0x10067592"], ["0x100b2ac4", "mov ecx, dword ptr [esi + 0x10]", "0x10067594"], ["0x100b2ac7", "mov edx, dword ptr [esi + 0x14]", "0x10067597"], ["0x100b2aca", "add eax, ecx", "0x1006759a"], ["0x100b2acc", "mov dword ptr [ebp - 0x64], ecx", "0x1006759c"], ["0x100b2acf", "dec eax", "0x1006759f"], ["0x100b2ad0", "mov dword ptr [ebp - 0x60], edx", "0x100675a0"], ["0x100b2ad3", "mov dword ptr [ebp - 0x5c], eax", "0x100675a3"]]}, {"orig": [["0x100b2ad6", "lea eax, [edx + ebx]"]], "recomp": [["0x100675a6", "lea eax, [edi + edx]"]]}, {"both": [["0x100b2ad9", "dec eax", "0x100675a9"], ["0x100b2ada", "mov dword ptr [ebp - 0x58], eax", "0x100675aa"], ["0x100b2add", "mov eax, dword ptr [ebp - 0x30]", "0x100675ad"]]}, {"orig": [["0x100b2ae0", "mov ebx, dword ptr [eax + 0x30]"]], "recomp": [["0x100675b0", "mov edi, dword ptr [eax + 0x30]"]]}, {"both": [["0x100b2ae3", "mov eax, dword ptr [esi + 0x1c]", "0x100675b3"], ["0x100b2ae6", "test byte ptr [eax + 0x30], 0x10", "0x100675b6"], ["0x100b2aea", "je 0x169", "0x100675ba"], ["0x100b2af0", "xor eax, eax", "0x100675c0"], ["0x100b2af2", "cmp dword ptr [esi + 0x58], eax", "0x100675c2"], ["0x100b2af5", "je 0x137", "0x100675c5"], ["0x100b2afb", "mov ecx, esi", "0x100675cb"]]}, {"orig": [["0x100b2afd", "mov dword ptr [ebp - 0x38], eax"], ["0x100b2b00", "mov dword ptr [ebp - 0x3c], eax"]], "recomp": [["0x100675cd", "mov dword ptr [ebp - 0x48], eax"], ["0x100675d0", "mov dword ptr [ebp - 0x4c], eax"]]}, {"both": [["0x100b2b03", "call dword ptr [ebp - 0x20]", "0x100675d3"], ["0x100b2b06", "mov ecx, esi", "0x100675d6"]]}, {"orig": [["0x100b2b08", "mov dword ptr [ebp - 0x34], eax"]], "recomp": [["0x100675d8", "mov dword ptr [ebp - 0x44], eax"]]}, {"both": [["0x100b2b0b", "call dword ptr [ebp - 0x10]", "0x100675db"]]}, {"orig": [["0x100b2b0e", "mov dword ptr [ebp - 0x30], eax"]], "recomp": [["0x100675de", "mov dword ptr [ebp - 0x40], eax"]]}, {"both": [["0x100b2b11", "mov ecx, dword ptr [esi + 0x14]", "0x100675e1"], ["0x100b2b14", "mov eax, dword ptr [esi + 0x10]", "0x100675e4"]]}, {"orig": [["0x100b2b17", "mov dword ptr [ebp - 0x4c], eax"], ["0x100b2b1a", "mov dword ptr [ebp - 0x48], ecx"]], "recomp": [["0x100675e7", "mov dword ptr [ebp - 0x3c], eax"], ["0x100675ea", "mov dword ptr [ebp - 0x38], ecx"]]}, {"both": [["0x100b2b1d", "mov ecx, esi", "0x100675ed"], ["0x100b2b1f", "call dword ptr [ebp - 0x20]", "0x100675ef"]]}, {"orig": [["0x100b2b22", "mov ecx, dword ptr [ebp - 0x4c]"]], "recomp": [["0x100675f2", "mov ecx, dword ptr [ebp - 0x3c]"]]}, {"both": [["0x100b2b25", "add ecx, eax", "0x100675f5"]]}, {"orig": [["0x100b2b27", "mov dword ptr [ebp - 0x44], ecx"]], "recomp": [["0x100675f7", "mov dword ptr [ebp - 0x34], ecx"]]}, {"both": [["0x100b2b2a", "mov ecx, esi", "0x100675fa"], ["0x100b2b2c", "call dword ptr [ebp - 0x10]", "0x100675fc"]]}, {"orig": [["0x100b2b2f", "mov ecx, dword ptr [ebp - 0x48]"]], "recomp": [["0x100675ff", "mov ecx, dword ptr [ebp - 0x38]"]]}, {"both": [["0x100b2b32", "add ecx, eax", "0x10067602"], ["0x100b2b34", "mov eax, 0x1e0", "0x10067604"]]}, {"orig": [["0x100b2b39", "mov dword ptr [ebp - 0x40], ecx"]], "recomp": [["0x10067609", "mov dword ptr [ebp - 0x30], ecx"]]}, {"both": [["0x100b2b3c", "cmp dword ptr [ebp - 0x48], eax", "0x1006760c"], ["0x100b2b3f", "jg 0x9a", "0x1006760f"], ["0x100b2b45", "mov ecx, 0x280", "0x10067615"], ["0x100b2b4a", "cmp dword ptr [ebp - 0x4c], ecx", "0x1006761a"], ["0x100b2b4d", "jg 0x8c", "0x1006761d"], ["0x100b2b53", "cmp dword ptr [ebp - 0x38], eax", "0x10067623"], ["0x100b2b56", "jg 0x83", "0x10067626"], ["0x100b2b5c", "cmp dword ptr [ebp - 0x3c], ecx", "0x1006762c"], ["0x100b2b5f", "jg 0x7e", "0x1006762f"], ["0x100b2b61", "cmp dword ptr [ebp - 0x40], eax", "0x10067631"]]}]], ["@@ -0x100b2beb,42 +0x100676bb,42 @@", [{"both": [["0x100b2beb", "je 0x2b", "0x100676bb"], ["0x100b2bed", "mov eax, dword ptr [ebp - 0xc]", "0x100676bd"], ["0x100b2bf0", "pop edi", "0x100676c0"], ["0x100b2bf1", "mov dword ptr fs:[0], eax", "0x100676c1"], ["0x100b2bf7", "pop esi", "0x100676c7"], ["0x100b2bf8", "pop ebx", "0x100676c8"], ["0x100b2bf9", "mov esp, ebp", "0x100676c9"], ["0x100b2bfb", "pop ebp", "0x100676cb"], ["0x100b2bfc", "ret ", "0x100676cc"], ["0x100b2bfd", "push 0", "0x100676cd"]]}, {"orig": [["0x100b2bff", "lea eax, [ebp - 0x3c]"]], "recomp": [["0x100676cf", "lea eax, [ebp - 0x4c]"]]}, {"both": [["0x100b2c02", "push 0x8000", "0x100676d2"], ["0x100b2c07", "mov ecx, dword ptr [esi + 0x58]", "0x100676d7"], ["0x100b2c0a", "push eax", "0x100676da"]]}, {"orig": [["0x100b2c0b", "lea edx, [ebp - 0x4c]"], ["0x100b2c0e", "push ecx"], ["0x100b2c0f", "mov eax, dword ptr [ebx]"], ["0x100b2c11", "push edx"], ["0x100b2c12", "push ebx"]], "recomp": [["0x100676db", "lea edx, [ebp - 0x3c]"], ["0x100676de", "push ecx"], ["0x100676df", "mov eax, dword ptr [edi]"], ["0x100676e1", "push edx"], ["0x100676e2", "push edi"]]}, {"both": [["0x100b2c13", "call dword ptr [eax + 0x14]", "0x100676e3"], ["0x100b2c16", "jmp -0x2b", "0x100676e6"], ["0x100b2c18", "push 0x11", "0x100676e8"]]}, {"orig": [["0x100b2c1a", "lea eax, [ebp - 0x3c]"]], "recomp": [["0x100676ea", "lea eax, [ebp - 0x4c]"]]}, {"both": [["0x100b2c1d", "push eax", "0x100676ed"], ["0x100b2c1e", "mov ecx, dword ptr [esi + 0x58]", "0x100676ee"], ["0x100b2c21", "push ecx", "0x100676f1"]]}, {"orig": [["0x100b2c22", "mov edx, dword ptr [ebp - 0x48]"], ["0x100b2c25", "push edx"], ["0x100b2c26", "mov eax, dword ptr [ebp - 0x4c]"], ["0x100b2c29", "push eax"], ["0x100b2c2a", "push ebx"], ["0x100b2c2b", "mov ebx, dword ptr [ebx]"]], "recomp": [["0x100676f2", "mov edx, dword ptr [ebp - 0x38]"], ["0x100676f5", "push edx"], ["0x100676f6", "mov eax, dword ptr [ebp - 0x3c]"], ["0x100676f9", "push eax"], ["0x100676fa", "mov ebx, dword ptr [edi]"], ["0x100676fc", "push edi"]]}, {"both": [["0x100b2c2d", "call dword ptr [ebx + 0x1c]", "0x100676fd"], ["0x100b2c30", "jmp -0x45", "0x10067700"], ["0x100b2c32", "mov edi, dword ptr [esi + 0x50]", "0x10067702"], ["0x100b2c35", "mov esi, dword ptr [edi + 0xc]", "0x10067705"], ["0x100b2c38", "mov eax, dword ptr [esi + 8]", "0x10067708"], ["0x100b2c3b", "test eax, eax", "0x1006770b"], ["0x100b2c3d", "jg 0x2", "0x1006770d"], ["0x100b2c3f", "neg eax", "0x1006770f"], ["0x100b2c41", "push 1", "0x10067711"], ["0x100b2c43", "push eax", "0x10067713"]]}]], ["@@ -0x100b2c47,21 +0x10067717,21 @@", [{"both": [["0x100b2c47", "push eax", "0x10067717"], ["0x100b2c48", "push edx", "0x10067718"], ["0x100b2c49", "push ecx", "0x10067719"], ["0x100b2c4a", "push 0", "0x1006771a"], ["0x100b2c4c", "push 0", "0x1006771c"], ["0x100b2c4e", "mov ecx, dword ptr [ebp - 0x30]", "0x1006771e"], ["0x100b2c51", "push edi", "0x10067721"], ["0x100b2c52", "mov ebx, dword ptr [ecx]", "0x10067722"], ["0x100b2c54", "call dword ptr [ebx + 0x30]", "0x10067724"], ["0x100b2c57", "jmp -0x6c", "0x10067727"]]}, {"orig": [["0x100b2c59", "push edi"]], "recomp": [["0x10067729", "push ebx"]]}, {"both": [["0x100b2c5a", "lea ecx, [ebp - 0x54]", "0x1006772a"], ["0x100b2c5d", "call MxRegionCursor::MxRegionCursor (FUNCTION)", "0x1006772d"], ["0x100b2c62", "mov dword ptr [ebp - 4], 0", "0x10067732"], ["0x100b2c69", "lea eax, [ebp - 0x64]", "0x10067739"], ["0x100b2c6c", "lea ecx, [ebp - 0x54]", "0x1006773c"], ["0x100b2c6f", "push eax", "0x1006773f"], ["0x100b2c70", "call MxRegionCursor::VTable0x24 (FUNCTION)", "0x10067740"], ["0x100b2c75", "test eax, eax", "0x10067745"], ["0x100b2c77", "je 0x2bc", "0x10067747"], ["0x100b2c7d", "mov edx, dword ptr [eax]", "0x1006774d"]]}]], ["@@ -0x100b2c88,48 +0x10067758,48 @@", [{"both": [["0x100b2c88", "jl -0x21", "0x10067758"], ["0x100b2c8a", "mov ecx, dword ptr [eax + 0xc]", "0x1006775a"], ["0x100b2c8d", "sub ecx, dword ptr [eax + 4]", "0x1006775d"], ["0x100b2c90", "inc ecx", "0x10067760"], ["0x100b2c91", "cmp ecx, 1", "0x10067761"], ["0x100b2c94", "jl -0x2d", "0x10067764"], ["0x100b2c96", "mov ecx, dword ptr [esi + 0x58]", "0x10067766"], ["0x100b2c99", "test ecx, ecx", "0x10067769"], ["0x100b2c9b", "je 0x4c", "0x1006776b"], ["0x100b2c9d", "sub edx, dword ptr [esi + 0x10]", "0x1006776d"]]}, {"orig": [["0x100b2ca0", "mov dword ptr [ebp - 0x1c], edx"]], "recomp": [["0x10067770", "mov dword ptr [ebp - 0x2c], edx"]]}, {"both": [["0x100b2ca3", "mov edx, dword ptr [eax + 4]", "0x10067773"], ["0x100b2ca6", "sub edx, dword ptr [esi + 0x14]", "0x10067776"]]}, {"orig": [], "recomp": [["0x10067779", "mov dword ptr [ebp - 0x28], edx"], ["0x1006777c", "mov edx, dword ptr [eax + 8]"], ["0x1006777f", "sub edx, dword ptr [eax]"], ["0x10067781", "add edx, dword ptr [ebp - 0x2c]"], ["0x10067784", "inc edx"], ["0x10067785", "mov dword ptr [ebp - 0x24], edx"], ["0x10067788", "mov edx, dword ptr [eax + 0xc]"], ["0x1006778b", "sub edx, dword ptr [eax + 4]"], ["0x1006778e", "add edx, dword ptr [ebp - 0x28]"], ["0x10067791", "inc edx"], ["0x10067792", "mov dword ptr [ebp - 0x20], edx"], ["0x10067795", "mov ebx, dword ptr [eax]"], ["0x10067797", "mov dword ptr [ebp - 0x1c], ebx"], ["0x1006779a", "mov edx, dword ptr [eax + 4]"]]}, {"both": [["0x100b2ca9", "mov dword ptr [ebp - 0x18], edx", "0x1006779d"], ["0x100b2cac", "mov edx, dword ptr [eax + 8]", "0x100677a0"], ["0x100b2caf", "sub edx, dword ptr [eax]", "0x100677a3"], ["0x100b2cb1", "add edx, dword ptr [ebp - 0x1c]", "0x100677a5"], ["0x100b2cb4", "inc edx", "0x100677a8"], ["0x100b2cb5", "mov dword ptr [ebp - 0x14], edx", "0x100677a9"], ["0x100b2cb8", "mov edx, dword ptr [eax + 0xc]", "0x100677ac"], ["0x100b2cbb", "sub edx, dword ptr [eax + 4]", "0x100677af"], ["0x100b2cbe", "add edx, dword ptr [ebp - 0x18]", "0x100677b2"], ["0x100b2cc1", "inc edx", "0x100677b5"], ["0x100b2cc2", "mov dword ptr [ebp - 0x10], edx", "0x100677b6"]]}, {"orig": [["0x100b2cc5", "mov edi, dword ptr [eax]"], ["0x100b2cc7", "mov dword ptr [ebp - 0x2c], edi"], ["0x100b2cca", "mov edx, dword ptr [eax + 4]"], ["0x100b2ccd", "mov dword ptr [ebp - 0x28], edx"], ["0x100b2cd0", "mov edx, dword ptr [eax + 8]"], ["0x100b2cd3", "sub edx, dword ptr [eax]"], ["0x100b2cd5", "add edx, dword ptr [ebp - 0x2c]"], ["0x100b2cd8", "inc edx"], ["0x100b2cd9", "mov dword ptr [ebp - 0x24], edx"], ["0x100b2cdc", "mov edx, dword ptr [eax + 0xc]"], ["0x100b2cdf", "sub edx, dword ptr [eax + 4]"], ["0x100b2ce2", "add edx, dword ptr [ebp - 0x28]"], ["0x100b2ce5", "inc edx"], ["0x100b2ce6", "mov dword ptr [ebp - 0x20], edx"]], "recomp": []}, {"both": [["0x100b2ce9", "mov edx, dword ptr [esi + 0x1c]", "0x100677b9"], ["0x100b2cec", "test byte ptr [edx + 0x30], 8", "0x100677bc"], ["0x100b2cf0", "je 0x125", "0x100677c0"], ["0x100b2cf6", "test ecx, ecx", "0x100677c6"], ["0x100b2cf8", "je 0xeb", "0x100677c8"], ["0x100b2cfe", "cmp dword ptr [ebp - 0x28], 0x1e0", "0x100677ce"], ["0x100b2d05", "jg 0xb6", "0x100677d5"], ["0x100b2d0b", "cmp dword ptr [ebp - 0x2c], 0x280", "0x100677db"], ["0x100b2d12", "jg 0xa9", "0x100677e2"], ["0x100b2d18", "cmp dword ptr [ebp - 0x18], 0x1e0", "0x100677e8"]]}]], ["@@ -0x100b2d72,167 +0x10067842,167 @@", [{"both": [["0x100b2d72", "mov edx, dword ptr [ebp - 0x20]", "0x10067842"], ["0x100b2d75", "sub edx, dword ptr [ebp - 0x28]", "0x10067845"], ["0x100b2d78", "inc edx", "0x10067848"], ["0x100b2d79", "cmp edx, 1", "0x10067849"], ["0x100b2d7c", "jle 0x43", "0x1006784c"], ["0x100b2d7e", "mov eax, dword ptr [ebp - 0x24]", "0x1006784e"], ["0x100b2d81", "sub eax, dword ptr [ebp - 0x2c]", "0x10067851"], ["0x100b2d84", "inc eax", "0x10067854"], ["0x100b2d85", "cmp eax, 1", "0x10067855"], ["0x100b2d88", "jle 0x37", "0x10067858"]]}, {"orig": [["0x100b2d8a", "mov edi, dword ptr [ebp - 0x14]"], ["0x100b2d8d", "sub edi, eax"], ["0x100b2d8f", "sub edi, dword ptr [ebp - 0x1c]"], ["0x100b2d92", "cmp edi, -1"]], "recomp": [["0x1006785a", "mov ebx, dword ptr [ebp - 0x14]"], ["0x1006785d", "sub ebx, eax"], ["0x1006785f", "sub ebx, dword ptr [ebp - 0x1c]"], ["0x10067862", "cmp ebx, -1"]]}, {"both": [["0x100b2d95", "jne 0x14", "0x10067865"]]}, {"orig": [["0x100b2d97", "mov edi, dword ptr [ebp - 0x10]"], ["0x100b2d9a", "sub edi, edx"], ["0x100b2d9c", "sub edi, dword ptr [ebp - 0x18]"], ["0x100b2d9f", "cmp edi, -1"]], "recomp": [["0x10067867", "mov ebx, dword ptr [ebp - 0x10]"], ["0x1006786a", "sub ebx, edx"], ["0x1006786c", "sub ebx, dword ptr [ebp - 0x18]"], ["0x1006786f", "cmp ebx, -1"]]}, {"both": [["0x100b2da2", "jne 0x7", "0x10067872"], ["0x100b2da4", "mov eax, 1", "0x10067874"], ["0x100b2da9", "jmp 0x1b", "0x10067879"]]}, {"orig": [["0x100b2dab", "mov edi, dword ptr [ebp - 0x1c]"], ["0x100b2dae", "add edi, eax"], ["0x100b2db0", "dec edi"], ["0x100b2db1", "mov dword ptr [ebp - 0x14], edi"]], "recomp": [["0x1006787b", "mov ebx, dword ptr [ebp - 0x1c]"], ["0x1006787e", "add ebx, eax"], ["0x10067880", "dec ebx"], ["0x10067881", "mov dword ptr [ebp - 0x14], ebx"]]}, {"both": [["0x100b2db4", "mov eax, dword ptr [ebp - 0x18]", "0x10067884"], ["0x100b2db7", "add eax, edx", "0x10067887"], ["0x100b2db9", "dec eax", "0x10067889"], ["0x100b2dba", "mov dword ptr [ebp - 0x10], eax", "0x1006788a"], ["0x100b2dbd", "xor eax, eax", "0x1006788d"], ["0x100b2dbf", "jmp 0x5", "0x1006788f"], ["0x100b2dc1", "mov eax, 0xffffffff", "0x10067891"], ["0x100b2dc6", "test eax, eax", "0x10067896"], ["0x100b2dc8", "jl -0x165", "0x10067898"], ["0x100b2dce", "push 0", "0x1006789e"]]}, {"orig": [["0x100b2dd0", "lea eax, [ebp - 0x1c]"]], "recomp": [["0x100678a0", "lea eax, [ebp - 0x2c]"]]}, {"both": [["0x100b2dd3", "push 0x8000", "0x100678a3"]]}, {"orig": [["0x100b2dd8", "mov edi, dword ptr [ebx]"], ["0x100b2dda", "push eax"], ["0x100b2ddb", "push ecx"], ["0x100b2ddc", "lea ecx, [ebp - 0x2c]"], ["0x100b2ddf", "push ecx"], ["0x100b2de0", "push ebx"], ["0x100b2de1", "call dword ptr [edi + 0x14]"]], "recomp": [["0x100678a8", "mov ebx, dword ptr [edi]"], ["0x100678aa", "push eax"], ["0x100678ab", "push ecx"], ["0x100678ac", "lea ecx, [ebp - 0x1c]"], ["0x100678af", "push ecx"], ["0x100678b0", "push edi"], ["0x100678b1", "call dword ptr [ebx + 0x14]"]]}, {"both": [["0x100b2de4", "jmp -0x180", "0x100678b4"], ["0x100b2de9", "mov edx, dword ptr [eax + 4]", "0x100678b9"], ["0x100b2dec", "mov ecx, dword ptr [eax]", "0x100678bc"], ["0x100b2dee", "push 0", "0x100678be"]]}, {"orig": [["0x100b2df0", "mov edi, dword ptr [eax + 0xc]"], ["0x100b2df3", "sub edi, edx"]], "recomp": [["0x100678c0", "mov ebx, dword ptr [eax + 0xc]"], ["0x100678c3", "sub ebx, edx"]]}, {"both": [["0x100b2df5", "mov eax, dword ptr [eax + 8]", "0x100678c5"]]}, {"orig": [["0x100b2df8", "inc edi"]], "recomp": [["0x100678c8", "inc ebx"]]}, {"both": [["0x100b2df9", "sub eax, ecx", "0x100678c9"]]}, {"orig": [["0x100b2dfb", "push edi"]], "recomp": [["0x100678cb", "push ebx"]]}, {"both": [["0x100b2dfc", "inc eax", "0x100678cc"], ["0x100b2dfd", "push eax", "0x100678cd"], ["0x100b2dfe", "push edx", "0x100678ce"], ["0x100b2dff", "push ecx", "0x100678cf"], ["0x100b2e00", "sub edx, dword ptr [esi + 0x14]", "0x100678d0"], ["0x100b2e03", "push edx", "0x100678d3"], ["0x100b2e04", "sub ecx, dword ptr [esi + 0x10]", "0x100678d4"], ["0x100b2e07", "push ecx", "0x100678d7"], ["0x100b2e08", "mov eax, dword ptr [esi + 0x50]", "0x100678d8"], ["0x100b2e0b", "push eax", "0x100678db"], ["0x100b2e0c", "mov edx, dword ptr [ebp - 0x30]", "0x100678dc"], ["0x100b2e0f", "mov ecx, edx", "0x100678df"]]}, {"orig": [["0x100b2e11", "mov edi, dword ptr [edx]"], ["0x100b2e13", "call dword ptr [edi + 0x30]"]], "recomp": [["0x100678e1", "mov ebx, dword ptr [edx]"], ["0x100678e3", "call dword ptr [ebx + 0x30]"]]}, {"both": [["0x100b2e16", "jmp -0x1b2", "0x100678e6"], ["0x100b2e1b", "test ecx, ecx", "0x100678eb"]]}, {"orig": [["0x100b2e1d", "je 0xe8"]], "recomp": [["0x100678ed", "je 0xe6"]]}, {"both": [["0x100b2e23", "cmp dword ptr [ebp - 0x28], 0x1e0", "0x100678f3"]]}, {"orig": [["0x100b2e2a", "jg 0xb6"]], "recomp": [["0x100678fa", "jg 0xb4"]]}, {"both": [["0x100b2e30", "cmp dword ptr [ebp - 0x2c], 0x280", "0x10067900"]]}, {"orig": [["0x100b2e37", "jg 0xa9"]], "recomp": [["0x10067907", "jg 0xa7"]]}, {"both": [["0x100b2e3d", "cmp dword ptr [ebp - 0x18], 0x1e0", "0x1006790d"]]}, {"orig": [["0x100b2e44", "jg 0x9c"]], "recomp": [["0x10067914", "jg 0x9a"]]}, {"both": [["0x100b2e4a", "cmp dword ptr [ebp - 0x1c], 0x280", "0x1006791a"]]}, {"orig": [["0x100b2e51", "jg 0x8f"]], "recomp": [["0x10067921", "jg 0x8d"]]}, {"both": [["0x100b2e57", "cmp dword ptr [ebp - 0x20], 0x1e0", "0x10067927"], ["0x100b2e5e", "jle 0x7", "0x1006792e"], ["0x100b2e60", "mov dword ptr [ebp - 0x20], 0x1e0", "0x10067930"], ["0x100b2e67", "cmp dword ptr [ebp - 0x24], 0x280", "0x10067937"], ["0x100b2e6e", "jle 0x7", "0x1006793e"], ["0x100b2e70", "mov dword ptr [ebp - 0x24], 0x280", "0x10067940"], ["0x100b2e77", "cmp dword ptr [ebp - 0x10], 0x1e0", "0x10067947"], ["0x100b2e7e", "jle 0x7", "0x1006794e"], ["0x100b2e80", "mov dword ptr [ebp - 0x10], 0x1e0", "0x10067950"], ["0x100b2e87", "cmp dword ptr [ebp - 0x14], 0x280", "0x10067957"], ["0x100b2e8e", "jle 0x7", "0x1006795e"], ["0x100b2e90", "mov dword ptr [ebp - 0x14], 0x280", "0x10067960"], ["0x100b2e97", "mov edx, dword ptr [ebp - 0x20]", "0x10067967"], ["0x100b2e9a", "sub edx, dword ptr [ebp - 0x28]", "0x1006796a"], ["0x100b2e9d", "inc edx", "0x1006796d"], ["0x100b2e9e", "cmp edx, 1", "0x1006796e"]]}, {"orig": [["0x100b2ea1", "jle 0x43"]], "recomp": [["0x10067971", "jle 0x41"]]}, {"both": [["0x100b2ea3", "mov eax, dword ptr [ebp - 0x24]", "0x10067973"], ["0x100b2ea6", "sub eax, dword ptr [ebp - 0x2c]", "0x10067976"], ["0x100b2ea9", "inc eax", "0x10067979"], ["0x100b2eaa", "cmp eax, 1", "0x1006797a"]]}, {"orig": [["0x100b2ead", "jle 0x37"], ["0x100b2eaf", "mov edi, dword ptr [ebp - 0x14]"], ["0x100b2eb2", "sub edi, dword ptr [ebp - 0x1c]"], ["0x100b2eb5", "sub edi, eax"], ["0x100b2eb7", "cmp edi, -1"]], "recomp": [["0x1006797d", "jle 0x35"], ["0x1006797f", "mov ebx, dword ptr [ebp - 0x14]"], ["0x10067982", "sub ebx, eax"], ["0x10067984", "sub ebx, dword ptr [ebp - 0x1c]"], ["0x10067987", "cmp ebx, -1"]]}, {"both": [["0x100b2eba", "jne 0x14", "0x1006798a"]]}, {"orig": [["0x100b2ebc", "mov edi, dword ptr [ebp - 0x10]"], ["0x100b2ebf", "sub edi, dword ptr [ebp - 0x18]"], ["0x100b2ec2", "sub edi, edx"], ["0x100b2ec4", "cmp edi, -1"]], "recomp": [["0x1006798c", "mov ebx, dword ptr [ebp - 0x10]"], ["0x1006798f", "sub ebx, dword ptr [ebp - 0x18]"], ["0x10067992", "sub ebx, edx"], ["0x10067994", "cmp ebx, -1"]]}, {"both": [["0x100b2ec7", "jne 0x7", "0x10067997"], ["0x100b2ec9", "mov eax, 1", "0x10067999"]]}, {"orig": [["0x100b2ece", "jmp 0x1b"], ["0x100b2ed0", "mov edi, dword ptr [ebp - 0x1c]"], ["0x100b2ed3", "add edi, eax"], ["0x100b2ed5", "dec edi"], ["0x100b2ed6", "mov dword ptr [ebp - 0x14], edi"]], "recomp": [["0x1006799e", "jmp 0x19"], ["0x100679a0", "add eax, dword ptr [ebp - 0x1c]"], ["0x100679a3", "dec eax"], ["0x100679a4", "mov dword ptr [ebp - 0x14], eax"]]}, {"both": [["0x100b2ed9", "mov eax, dword ptr [ebp - 0x18]", "0x100679a7"], ["0x100b2edc", "add eax, edx", "0x100679aa"], ["0x100b2ede", "dec eax", "0x100679ac"], ["0x100b2edf", "mov dword ptr [ebp - 0x10], eax", "0x100679ad"], ["0x100b2ee2", "xor eax, eax", "0x100679b0"], ["0x100b2ee4", "jmp 0x5", "0x100679b2"], ["0x100b2ee6", "mov eax, 0xffffffff", "0x100679b4"], ["0x100b2eeb", "test eax, eax", "0x100679b9"]]}, {"orig": [["0x100b2eed", "jl -0x28a"], ["0x100b2ef3", "push 0"], ["0x100b2ef5", "lea eax, [ebp - 0x1c]"], ["0x100b2ef8", "push 0"], ["0x100b2efa", "mov edi, dword ptr [ebx]"], ["0x100b2efc", "push eax"], ["0x100b2efd", "push ecx"], ["0x100b2efe", "lea ecx, [ebp - 0x2c]"], ["0x100b2f01", "push ecx"]], "recomp": [["0x100679bb", "jl -0x288"], ["0x100679c1", "push 0"], ["0x100679c3", "lea eax, [ebp - 0x2c]"], ["0x100679c6", "push 0"], ["0x100679c8", "mov ebx, dword ptr [edi]"], ["0x100679ca", "push eax"], ["0x100679cb", "push ecx"], ["0x100679cc", "lea ecx, [ebp - 0x1c]"], ["0x100679cf", "push ecx"], ["0x100679d0", "push edi"], ["0x100679d1", "call dword ptr [ebx + 0x14]"], ["0x100679d4", "jmp -0x2a0"], ["0x100679d9", "mov edx, dword ptr [eax + 4]"], ["0x100679dc", "mov ecx, dword ptr [eax]"], ["0x100679de", "mov ebx, dword ptr [eax + 0xc]"], ["0x100679e1", "mov eax, dword ptr [eax + 8]"], ["0x100679e4", "sub ebx, edx"], ["0x100679e6", "sub eax, ecx"], ["0x100679e8", "inc ebx"], ["0x100679e9", "inc eax"]]}, {"both": [["0x100b2f02", "push ebx", "0x100679ea"]]}, {"orig": [["0x100b2f03", "call dword ptr [edi + 0x14]"], ["0x100b2f06", "jmp -0x2a2"], ["0x100b2f0b", "mov ecx, dword ptr [eax + 4]"], ["0x100b2f0e", "mov edx, dword ptr [eax]"], ["0x100b2f10", "mov edi, dword ptr [eax + 0xc]"], ["0x100b2f13", "mov eax, dword ptr [eax + 8]"], ["0x100b2f16", "sub edi, ecx"], ["0x100b2f18", "sub eax, edx"], ["0x100b2f1a", "inc edi"], ["0x100b2f1b", "inc eax"], ["0x100b2f1c", "push edi"], ["0x100b2f1d", "push eax"], ["0x100b2f1e", "push ecx"]], "recomp": [["0x100679eb", "push eax"], ["0x100679ec", "push edx"]]}, {"both": [["0x100b2f1f", "mov eax, dword ptr [esi + 0x50]", "0x100679ed"]]}, {"orig": [["0x100b2f22", "push edx"], ["0x100b2f23", "sub ecx, dword ptr [esi + 0x14]"], ["0x100b2f26", "push ecx"], ["0x100b2f27", "sub edx, dword ptr [esi + 0x10]"], ["0x100b2f2a", "push edx"], ["0x100b2f2b", "mov ecx, dword ptr [ebp - 0x30]"], ["0x100b2f2e", "push eax"], ["0x100b2f2f", "mov edi, dword ptr [ecx]"], ["0x100b2f31", "call dword ptr [edi + 0x28]"]], "recomp": [["0x100679f0", "push ecx"], ["0x100679f1", "sub edx, dword ptr [esi + 0x14]"], ["0x100679f4", "push edx"], ["0x100679f5", "sub ecx, dword ptr [esi + 0x10]"], ["0x100679f8", "push ecx"], ["0x100679f9", "mov edx, dword ptr [ebp - 0x30]"], ["0x100679fc", "mov ebx, dword ptr [edx]"], ["0x100679fe", "push eax"], ["0x100679ff", "mov ecx, edx"], ["0x10067a01", "call dword ptr [ebx + 0x28]"]]}, {"both": [["0x100b2f34", "jmp -0x2d0", "0x10067a04"], ["0x100b2f39", "mov dword ptr [ebp - 4], 0xffffffff", "0x10067a09"], ["0x100b2f40", "call <OFFSET5>", "0x10067a10"], ["0x100b2f45", "jmp -0x35d", "0x10067a15"], ["0x100b2f4a", "mov eax, <OFFSET6>", "0x10067a1a"], ["0x100b2f4f", "jmp ___CxxFrameHandler (FUNCTION)", "0x10067a1f"], ["0x100b2f54", "lea ecx, [ebp - 0x54]", "0x10067a24"], ["0x100b2f57", "jmp MxRegionCursor::~MxRegionCursor (FUNCTION)", "0x10067a27"]]}]]]}, {"address": "0x100b2f60", "recomp": "0x10067a30", "name": "MxVideoPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x100b2fa0", "recomp": "0x10067a70", "name": "MxVideoPresenter::StartingTickle", "matching": 1.0, "diff": []}, {"address": "0x100b2fe0", "recomp": "0x10067ab0", "name": "MxVideoPresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x100b3080", "recomp": "0x10067b50", "name": "MxVideoPresenter::RepeatingTickle", "matching": 1.0, "diff": []}, {"address": "0x100b3130", "recomp": "0x10067c00", "name": "MxVideoPresenter::Unk5Tickle", "matching": 1.0, "diff": []}, {"address": "0x100b31a0", "recomp": "0x10067c70", "name": "MxVideoPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x100b31d0", "recomp": "0x10067ca0", "name": "MxVideoPresenter::EndAction", "matching": 1.0, "diff": []}, {"address": "0x100b3280", "recomp": "0x10067d50", "name": "MxVideoPresenter::PutData", "matching": 1.0, "diff": []}, {"address": "0x100b3300", "recomp": "0x10067dd0", "name": "MxVideoPresenter::VTable0x74", "matching": 1.0, "diff": []}, {"address": "0x100b3310", "recomp": "0x1006a340", "name": "MxFlcPresenter::MxFlcPresenter", "matching": 1.0, "diff": []}, {"address": "0x100b33f0", "recomp": "0x1006a420", "name": "MxFlcPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100b3400", "recomp": "0x1006a430", "name": "MxFlcPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b3420", "recomp": "0x1006a450", "name": "MxFlcPresenter::~MxFlcPresenter", "matching": 1.0, "diff": []}, {"address": "0x100b3490", "recomp": "0x1006a4c0", "name": "MxFlcPresenter::LoadHeader", "matching": 1.0, "diff": []}, {"address": "0x100b34d0", "recomp": "0x1006a500", "name": "MxFlcPresenter::CreateBitmap", "matching": 1.0, "diff": []}, {"address": "0x100b3570", "recomp": "0x1006a5a0", "name": "MxFlcPresenter::LoadFrame", "matching": 1.0, "diff": []}, {"address": "0x100b3620", "recomp": "0x1006a650", "name": "MxFlcPresenter::RealizePalette", "matching": 1.0, "diff": []}, {"address": "0x100b3650", "recomp": "0x100723e0", "name": "MxSmkPresenter::MxSmkPresenter", "matching": 1.0, "diff": []}, {"address": "0x100b3730", "recomp": "0x100724c0", "name": "MxSmkPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100b3740", "recomp": "0x10071620", "name": "MxSmkPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x100b3850", "recomp": "0x100724d0", "name": "MxSmkPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b3870", "recomp": "0x100724f0", "name": "MxSmkPresenter::~MxSmkPresenter", "matching": 1.0, "diff": []}, {"address": "0x100b38d0", "recomp": "0x10072550", "name": "MxSmkPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100b3900", "recomp": "0x10072580", "name": "MxSmkPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b3940", "recomp": "0x100725c0", "name": "MxSmkPresenter::LoadHeader", "matching": 1.0, "diff": []}, {"address": "0x100b3960", "recomp": "0x100725e0", "name": "MxSmkPresenter::CreateBitmap", "matching": 1.0, "diff": []}, {"address": "0x100b3a00", "recomp": "0x10072680", "name": "MxSmkPresenter::LoadFrame", "matching": 1.0, "diff": []}, {"address": "0x100b3c00", "recomp": "0x10072950", "name": "MxCollection<MxRect32 *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x100b3c10", "recomp": "0x10072880", "name": "MxCollection<MxRect32 *>::MxCollection<MxRect32 *>", "matching": 1.0, "diff": []}, {"address": "0x100b3c80", "recomp": "0x10072900", "name": "MxCollection<MxRect32 *>::~MxCollection<MxRect32 *>", "matching": 1.0, "diff": []}, {"address": "0x100b3cd0", "recomp": "0x100728f0", "name": "MxCollection<MxRect32 *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b3ce0", "recomp": "0x10072f00", "name": "MxList<MxRect32 *>::~MxList<MxRect32 *>", "matching": 1.0, "diff": []}, {"address": "0x100b3d70", "recomp": "0x10072960", "name": "MxPtrList<MxRect32>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b3d80", "recomp": "0x10072970", "name": "MxRectList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b3df0", "recomp": "0x100729e0", "name": "MxPtrList<MxRect32>::~MxPtrList<MxRect32>", "matching": 1.0, "diff": []}, {"address": "0x100b3e40", "recomp": "0x10072a30", "name": "MxCollection<MxRect32 *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b3eb0", "recomp": "0x10072aa0", "name": "MxList<MxRect32 *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b3f60", "recomp": "0x10072b50", "name": "MxPtrList<MxRect32>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b3fd0", "recomp": "0x10072bc0", "name": "MxRectList::~MxRectList", "matching": 1.0, "diff": []}, {"address": "0x100b4020", "recomp": "0x10072c10", "name": "MxRectListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b4090", "recomp": "0x10072c80", "name": "MxPtrListCursor<MxRect32>::~MxPtrListCursor<MxRect32>", "matching": 1.0, "diff": []}, {"address": "0x100b40e0", "recomp": "0x10072cd0", "name": "MxListCursor<MxRect32 *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b4150", "recomp": "0x10072d40", "name": "MxPtrListCursor<MxRect32>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b41c0", "recomp": "0x10072db0", "name": "MxListCursor<MxRect32 *>::~MxListCursor<MxRect32 *>", "matching": 1.0, "diff": []}, {"address": "0x100b4210", "recomp": "0x10072e00", "name": "MxRectListCursor::~MxRectListCursor", "matching": 1.0, "diff": []}, {"address": "0x100b4260", "recomp": "0x10072e50", "name": "MxSmkPresenter::VTable0x88", "matching": 1.0, "diff": []}, {"address": "0x100b42c0", "recomp": "0x10072eb0", "name": "MxSmkPresenter::RealizePalette", "matching": 1.0, "diff": []}, {"address": "0x100b42f0", "recomp": "0x10072ee0", "name": "MxSmkPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x100b4300", "recomp": "0x10072ef0", "name": "MxSmkPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b4310", "recomp": "0x10071b60", "name": "MxLoopingFlcPresenter::MxLoopingFlcPresenter", "matching": 1.0, "diff": []}, {"address": "0x100b4380", "recomp": "0x10071bd0", "name": "MxLoopingFlcPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100b4390", "recomp": "0x10071be0", "name": "MxLoopingFlcPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b43b0", "recomp": "0x10071c00", "name": "MxLoopingFlcPresenter::~MxLoopingFlcPresenter", "matching": 1.0, "diff": []}, {"address": "0x100b4410", "recomp": "0x10071c60", "name": "MxLoopingFlcPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100b4430", "recomp": "0x10071c80", "name": "MxLoopingFlcPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b4470", "recomp": "0x10071cc0", "name": "MxLoopingFlcPresenter::NextFrame", "matching": 1.0, "diff": []}, {"address": "0x100b44c0", "recomp": "0x10071d10", "name": "MxLoopingFlcPresenter::VTable0x88", "matching": 1.0, "diff": []}, {"address": "0x100b4520", "recomp": "0x10071d70", "name": "MxLoopingFlcPresenter::RepeatingTickle", "matching": 1.0, "diff": []}, {"address": "0x100b46e0", "recomp": "0x10061140", "name": "MxStreamChunkListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b4750", "recomp": "0x100611b0", "name": "MxListCursor<MxStreamChunk *>::~MxListCursor<MxStreamChunk *>", "matching": 1.0, "diff": []}, {"address": "0x100b47a0", "recomp": "0x10061200", "name": "MxListCursor<MxStreamChunk *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b4810", "recomp": "0x10061270", "name": "MxStreamChunkListCursor::~MxStreamChunkListCursor", "matching": 1.0, "diff": []}, {"address": "0x100b4860", "recomp": "0x10071f30", "name": "MxLoopingFlcPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x100b48a0", "recomp": "0x10071f70", "name": "MxLoopingFlcPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b48b0", "recomp": "0x100715b0", "name": "MxLoopingSmkPresenter::MxLoopingSmkPresenter", "matching": 1.0, "diff": []}, {"address": "0x100b4920", "recomp": "0x10071730", "name": "MxLoopingSmkPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100b4930", "recomp": "0x10071740", "name": "MxLoopingSmkPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b4950", "recomp": "0x10071760", "name": "MxLoopingSmkPresenter::~MxLoopingSmkPresenter", "matching": 1.0, "diff": []}, {"address": "0x100b49b0", "recomp": "0x100717c0", "name": "MxLoopingSmkPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100b49d0", "recomp": "0x100717e0", "name": "MxLoopingSmkPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b4a00", "recomp": "0x10071810", "name": "MxLoopingSmkPresenter::VTable0x88", "matching": 1.0, "diff": []}, {"address": "0x100b4a30", "recomp": "0x10071840", "name": "MxLoopingSmkPresenter::NextFrame", "matching": 0.5757575757575758, "diff": [["@@ -0x100b4a30,33 +0x10071840,33 @@", [{"both": [["0x100b4a30", "push ebx", "0x10071840"], ["0x100b4a31", "push esi", "0x10071841"], ["0x100b4a32", "push edi", "0x10071842"]]}, {"orig": [["0x100b4a33", "mov esi, ecx"]], "recomp": [["0x10071843", "mov edi, ecx"]]}, {"both": [["0x100b4a35", "call MxMediaPresenter::NextChunk (FUNCTION)", "0x10071845"], ["0x100b4a3a", "test byte ptr [eax + 8], 2", "0x1007184a"]]}, {"orig": [["0x100b4a3e", "mov edi, eax"]], "recomp": [["0x1007184e", "mov esi, eax"]]}, {"both": [["0x100b4a40", "je 0x16", "0x10071850"], ["0x100b4a42", "mov eax, 1", "0x10071852"]]}, {"orig": [["0x100b4a47", "mov cl, byte ptr [esi + 8]"]], "recomp": [["0x10071857", "mov cl, byte ptr [edi + 8]"]]}, {"both": [["0x100b4a4a", "shl eax, cl", "0x1007185a"]]}, {"orig": [["0x100b4a4c", "mov dword ptr [esi + 8], 4"], ["0x100b4a53", "or dword ptr [esi + 0xc], eax"]], "recomp": [["0x1007185c", "mov dword ptr [edi + 8], 4"], ["0x10071863", "or dword ptr [edi + 0xc], eax"]]}, {"both": [["0x100b4a56", "jmp 0x23", "0x10071866"]]}, {"orig": [["0x100b4a58", "mov ebx, dword ptr [esi]"], ["0x100b4a5a", "push edi"], ["0x100b4a5b", "mov ecx, esi"]], "recomp": [["0x10071868", "mov ebx, dword ptr [edi]"], ["0x1007186a", "push esi"], ["0x1007186b", "mov ecx, edi"]]}, {"both": [["0x100b4a5d", "call dword ptr [ebx + 0x68]", "0x1007186d"]]}, {"orig": [["0x100b4a60", "push edi"], ["0x100b4a61", "mov ecx, esi"]], "recomp": [["0x10071870", "push esi"], ["0x10071871", "mov ecx, edi"]]}, {"both": [["0x100b4a63", "call dword ptr [ebx + 0x58]", "0x10071873"]]}, {"orig": [["0x100b4a66", "mov ecx, dword ptr [esi + 0x1c]"]], "recomp": [["0x10071876", "mov ecx, dword ptr [edi + 0x1c]"]]}, {"both": [["0x100b4a69", "mov eax, 0x3e8", "0x10071879"], ["0x100b4a6e", "cdq ", "0x1007187e"], ["0x100b4a6f", "idiv dword ptr [ecx + 0xa4]", "0x1007187f"]]}, {"orig": [["0x100b4a75", "add dword ptr [esi + 0x720], eax"], ["0x100b4a7b", "push edi"], ["0x100b4a7c", "mov ecx, dword ptr [esi + 0x40]"]], "recomp": [["0x10071885", "add dword ptr [edi + 0x720], eax"], ["0x1007188b", "push esi"], ["0x1007188c", "mov ecx, dword ptr [edi + 0x40]"]]}, {"both": [["0x100b4a7f", "call MxDSSubscriber::FreeDataChunk (FUNCTION)", "0x1007188f"], ["0x100b4a84", "pop edi", "0x10071894"], ["0x100b4a85", "pop esi", "0x10071895"], ["0x100b4a86", "pop ebx", "0x10071896"], ["0x100b4a87", "ret ", "0x10071897"]]}]]]}, {"address": "0x100b4a90", "recomp": "0x100718a0", "name": "MxLoopingSmkPresenter::VTable0x8c", "matching": 1.0, "diff": []}, {"address": "0x100b4b00", "recomp": "0x10071910", "name": "MxLoopingSmkPresenter::RepeatingTickle", "matching": 1.0, "diff": []}, {"address": "0x100b4cd0", "recomp": "0x10071ae0", "name": "MxLoopingSmkPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x100b4d40", "recomp": "0x10071b50", "name": "MxLoopingSmkPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b4d50", "recomp": "0x10060650", "name": "MxPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100b4d80", "recomp": "0x10060680", "name": "MxPresenter::StartAction", "matching": 1.0, "diff": []}, {"address": "0x100b4e40", "recomp": "0x10060740", "name": "MxPresenter::EndAction", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b4e65,26 +0x10060765,26 @@", [{"both": [["0x100b4e65", "je 0xfc", "0x10060765"], ["0x100b4e6b", "lea eax, [ecx + 0x20]", "0x1006076b"], ["0x100b4e6e", "lea ecx, [ebp - 0x2c]", "0x1006076e"], ["0x100b4e71", "push eax", "0x10060771"], ["0x100b4e72", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x10060772"], ["0x100b4e77", "mov ecx, dword ptr [ebp - 0x10]", "0x10060777"], ["0x100b4e7a", "mov dword ptr [ebp - 4], 0", "0x1006077a"], ["0x100b4e81", "cmp dword ptr [ecx + 0x3c], 0", "0x10060781"], ["0x100b4e85", "jne 0xaf", "0x10060785"], ["0x100b4e8b", "call MxOmni::GetInstance (FUNCTION)", "0x1006078b"]]}, {"orig": [["0x100b4e90", "mov esi, dword ptr [eax]"], ["0x100b4e92", "mov edi, eax"]], "recomp": [["0x10060790", "mov ebx, dword ptr [eax]"], ["0x10060792", "mov esi, eax"]]}, {"both": [["0x100b4e94", "mov ecx, dword ptr [ebp - 0x10]", "0x10060794"], ["0x100b4e97", "mov eax, 1", "0x10060797"], ["0x100b4e9c", "mov dword ptr [ebp - 0x28], MxParam::`vftable' (VTABLE)", "0x1006079c"]]}, {"orig": [["0x100b4ea3", "mov ebx, dword ptr [ecx + 0x1c]"]], "recomp": [["0x100607a3", "mov edi, dword ptr [ecx + 0x1c]"]]}, {"both": [["0x100b4ea6", "mov byte ptr [ebp - 4], al", "0x100607a6"], ["0x100b4ea9", "mov dword ptr [ebp - 0x20], 0", "0x100607a9"], ["0x100b4eb0", "mov ecx, 2", "0x100607b0"], ["0x100b4eb5", "push 0x94", "0x100607b5"], ["0x100b4eba", "mov dword ptr [ebp - 0x24], ecx", "0x100607ba"], ["0x100b4ebd", "mov byte ptr [ebp - 4], cl", "0x100607bd"], ["0x100b4ec0", "mov dword ptr [ebp - 0x28], MxNotificationParam::`vftable' (VTABLE)", "0x100607c0"], ["0x100b4ec7", "mov dword ptr [ebp - 0x28], MxActionNotificationParam::`vftable' (VTABLE)", "0x100607c7"], ["0x100b4ece", "mov byte ptr [ebp - 0x18], al", "0x100607ce"], ["0x100b4ed1", "call ??2@YAPAXI@Z (FUNCTION)", "0x100607d1"]]}]], ["@@ -0x100b4ed9,39 +0x100607d9,39 @@", [{"both": [["0x100b4ed9", "mov dword ptr [ebp - 0x14], eax", "0x100607d9"], ["0x100b4edc", "mov byte ptr [ebp - 4], 3", "0x100607dc"], ["0x100b4ee0", "test eax, eax", "0x100607e0"], ["0x100b4ee2", "je 0x9", "0x100607e2"], ["0x100b4ee4", "mov ecx, eax", "0x100607e4"], ["0x100b4ee6", "call MxDSAction::MxDSAction (FUNCTION)", "0x100607e6"], ["0x100b4eeb", "jmp 0x2", "0x100607eb"], ["0x100b4eed", "xor eax, eax", "0x100607ed"], ["0x100b4eef", "mov byte ptr [ebp - 4], 2", "0x100607ef"], ["0x100b4ef3", "mov dword ptr [ebp - 0x1c], eax", "0x100607f3"]]}, {"orig": [["0x100b4ef6", "mov ecx, dword ptr [ebx + 0x20]"]], "recomp": [["0x100607f6", "mov ecx, dword ptr [edi + 0x20]"]]}, {"both": [["0x100b4ef9", "mov edx, dword ptr [eax]", "0x100607f9"], ["0x100b4efb", "push ecx", "0x100607fb"], ["0x100b4efc", "mov ecx, eax", "0x100607fc"], ["0x100b4efe", "call dword ptr [edx + 0x20]", "0x100607fe"]]}, {"orig": [["0x100b4f01", "mov edx, dword ptr [ebx + 0x1c]"]], "recomp": [["0x10060801", "mov edx, dword ptr [edi + 0x1c]"]]}, {"both": [["0x100b4f04", "mov ecx, dword ptr [ebp - 0x1c]", "0x10060804"], ["0x100b4f07", "mov byte ptr [ebp - 4], 4", "0x10060807"], ["0x100b4f0b", "mov byte ptr [ebp - 4], 0", "0x1006080b"], ["0x100b4f0f", "mov byte ptr [ebp - 4], 5", "0x1006080f"], ["0x100b4f13", "mov dword ptr [ecx + 0x1c], edx", "0x10060813"], ["0x100b4f16", "mov ecx, dword ptr [ebp - 0x1c]", "0x10060816"]]}, {"orig": [["0x100b4f19", "mov ax, word ptr [ebx + 0x24]"]], "recomp": [["0x10060819", "mov ax, word ptr [edi + 0x24]"]]}, {"both": [["0x100b4f1d", "mov word ptr [ecx + 0x24], ax", "0x1006081d"], ["0x100b4f21", "lea eax, [ebp - 0x28]", "0x10060821"], ["0x100b4f24", "push eax", "0x10060824"]]}, {"orig": [["0x100b4f25", "mov ecx, edi"]], "recomp": [["0x10060825", "mov ecx, esi"]]}, {"both": [["0x100b4f27", "mov dword ptr [ebp - 0x28], MxEndActionNotificationParam::`vftable' (VTABLE)", "0x10060827"]]}, {"orig": [["0x100b4f2e", "call dword ptr [esi + 0x34]"]], "recomp": [["0x1006082e", "call dword ptr [ebx + 0x34]"]]}, {"both": [["0x100b4f31", "mov byte ptr [ebp - 4], 0", "0x10060831"], ["0x100b4f35", "call <OFFSET10>", "0x10060835"], ["0x100b4f3a", "mov ecx, dword ptr [ebp - 0x10]", "0x1006083a"], ["0x100b4f3d", "mov eax, 1", "0x1006083d"], ["0x100b4f42", "mov dword ptr [ecx + 0x1c], 0", "0x10060842"], ["0x100b4f49", "mov cl, byte ptr [ecx + 8]", "0x10060849"], ["0x100b4f4c", "shl eax, cl", "0x1006084c"], ["0x100b4f4e", "mov ecx, dword ptr [ebp - 0x10]", "0x1006084e"], ["0x100b4f51", "mov dword ptr [ebp - 4], 0xffffffff", "0x10060851"], ["0x100b4f58", "mov dword ptr [ecx + 8], 0", "0x10060858"]]}]]]}, {"address": "0x100b4fc0", "recomp": "0x10060ab0", "name": "MxPresenter::ParseExtra", "matching": 1.0, "diff": []}, {"address": "0x100b5120", "recomp": "0x10060c10", "name": "MxPresenter::SendToCompositePresenter", "matching": 1.0, "diff": []}, {"address": "0x100b5200", "recomp": "0x10060cf0", "name": "MxPresenter::Tickle", "matching": 0.8275862068965517, "diff": [["@@ -0x100b521c,21 +0x10060d0c,21 @@", [{"both": [["0x100b521c", "lea eax, [ecx + 0x20]", "0x10060d0c"], ["0x100b521f", "mov esi, ecx", "0x10060d0f"], ["0x100b5221", "push eax", "0x10060d11"], ["0x100b5222", "lea ecx, [ebp - 0x10]", "0x10060d12"], ["0x100b5225", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x10060d15"], ["0x100b522a", "mov dword ptr [ebp - 4], 0", "0x10060d1a"], ["0x100b5231", "mov eax, dword ptr [esi + 8]", "0x10060d21"], ["0x100b5234", "dec eax", "0x10060d24"], ["0x100b5235", "cmp eax, 5", "0x10060d25"], ["0x100b5238", "ja 0x4f", "0x10060d28"]]}, {"orig": [["0x100b523a", "jmp dword ptr [eax*4 + 0x100b52b8]"]], "recomp": [["0x10060d2a", "jmp dword ptr [eax*4 + 0x10060da8]"]]}, {"both": [["0x100b5241", "mov eax, dword ptr [esi]", "0x10060d31"], ["0x100b5243", "mov ecx, esi", "0x10060d33"], ["0x100b5245", "call dword ptr [eax + 0x18]", "0x10060d35"], ["0x100b5248", "cmp dword ptr [esi + 8], 2", "0x10060d38"], ["0x100b524c", "jne 0x3b", "0x10060d3c"], ["0x100b524e", "mov eax, dword ptr [esi]", "0x10060d3e"], ["0x100b5250", "mov ecx, esi", "0x10060d40"], ["0x100b5252", "call dword ptr [eax + 0x1c]", "0x10060d42"], ["0x100b5255", "cmp dword ptr [esi + 8], 3", "0x10060d45"], ["0x100b5259", "jne 0x2e", "0x10060d49"]]}]], ["@@ -0x100b5297,23 +0x10060d87,20 @@", [{"both": [["0x100b5297", "mov ecx, dword ptr [ebp - 0xc]", "0x10060d87"], ["0x100b529a", "mov dword ptr fs:[0], ecx", "0x10060d8a"], ["0x100b52a1", "pop esi", "0x10060d91"], ["0x100b52a2", "mov esp, ebp", "0x10060d92"], ["0x100b52a4", "pop ebp", "0x10060d94"], ["0x100b52a5", "ret ", "0x10060d95"], ["0x100b52a6", "mov eax, <OFFSET4>", "0x10060d96"], ["0x100b52ab", "jmp ___CxxFrameHandler (FUNCTION)", "0x10060d9b"], ["0x100b52b0", "lea ecx, [ebp - 0x10]", "0x10060da0"], ["0x100b52b3", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x10060da3"]]}, {"orig": [["0x100b52b8", "inc ecx"], ["0x100b52b9", "push edx"], ["0x100b52ba", "or edx, dword ptr [eax]"], ["0x100b52bc", "dec esi"], ["0x100b52bd", "push edx"], ["0x100b52be", "or edx, dword ptr [eax]"], ["0x100b52c0", "pop ebx"], ["0x100b52c1", "push edx"], ["0x100b52c2", "or edx, dword ptr [eax]"], ["0x100b52c4", "push 0x75100b52"], ["0x100b52c9", "push edx"], ["0x100b52ca", "or edx, dword ptr [eax]"], ["0x100b52cc", "adc byte ptr [edx + 0xb], 0x10"]], "recomp": [["0x10060da8", "xor dword ptr [<OFFSET7>], ecx"], ["0x10060dae", "push es"], ["0x10060daf", "adc byte ptr [ebx + 0xd], cl"], ["0x10060db2", "push es"], ["0x10060db3", "adc byte ptr [eax + 0xd], bl"], ["0x10060db6", "push es"], ["0x10060db7", "adc byte ptr [ebp + 0xd], ah"], ["0x10060dba", "push es"], ["0x10060dbb", "adc byte ptr [edx + 0xd], dh"], ["0x10060dbe", "push es"]]}]]]}, {"address": "0x100b52d0", "recomp": "0x10060dc0", "name": "MxPresenter::Enable", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b52d0,21 +0x10060dc0,21 @@", [{"both": [["0x100b52d0", "push esi", "0x10060dc0"], ["0x100b52d1", "mov esi, ecx", "0x10060dc1"], ["0x100b52d3", "cmp dword ptr [ecx + 0x1c], 0", "0x10060dc3"], ["0x100b52d7", "je 0x28", "0x10060dc7"], ["0x100b52d9", "call MxPresenter::IsEnabled (FUNCTION)", "0x10060dc9"], ["0x100b52de", "mov dl, byte ptr [esp + 8]", "0x10060dce"], ["0x100b52e2", "cmp al, dl", "0x10060dd2"], ["0x100b52e4", "je 0x1b", "0x10060dd4"]]}, {"orig": [["0x100b52e6", "mov ecx, dword ptr [esi + 0x1c]"], ["0x100b52e9", "mov eax, dword ptr [ecx + 0x30]"], ["0x100b52ec", "add ecx, 0x30"]], "recomp": [["0x10060dd6", "mov eax, dword ptr [esi + 0x1c]"], ["0x10060dd9", "mov ecx, dword ptr [eax + 0x30]"], ["0x10060ddc", "add eax, 0x30"]]}, {"both": [["0x100b52ef", "test dl, dl", "0x10060ddf"], ["0x100b52f1", "je 0x9", "0x10060de1"]]}, {"orig": [["0x100b52f3", "or eax, 0x20"]], "recomp": [["0x10060de3", "or ecx, 0x20"]]}, {"both": [["0x100b52f6", "pop esi", "0x10060de6"]]}, {"orig": [["0x100b52f7", "mov dword ptr [ecx], eax"]], "recomp": [["0x10060de7", "mov dword ptr [eax], ecx"]]}, {"both": [["0x100b52f9", "ret 4", "0x10060de9"]]}, {"orig": [["0x100b52fc", "and eax, 0xffffffdf"], ["0x100b52ff", "mov dword ptr [ecx], eax"]], "recomp": [["0x10060dec", "and ecx, 0xffffffdf"], ["0x10060def", "mov dword ptr [eax], ecx"]]}, {"both": [["0x100b5301", "pop esi", "0x10060df1"], ["0x100b5302", "ret 4", "0x10060df2"]]}]]]}, {"address": "0x100b5310", "recomp": "0x10060e00", "name": "PresenterNameDispatch", "matching": 0.8181818181818182, "diff": [["@@ -0x100b5324,21 +0x10060e14,21 @@", [{"both": [["0x100b5324", "sub eax, eax", "0x10060e14"], ["0x100b5326", "repne scasb al, byte ptr es:[edi]", "0x10060e16"], ["0x100b5328", "not ecx", "0x10060e18"], ["0x100b532a", "dec ecx", "0x10060e1a"], ["0x100b532b", "jne 0xad", "0x10060e1b"], ["0x100b5331", "xor eax, eax", "0x10060e21"], ["0x100b5333", "mov ax, word ptr [edx + 0xc]", "0x10060e23"], ["0x100b5337", "sub eax, 3", "0x10060e27"], ["0x100b533a", "cmp eax, 7", "0x10060e2a"], ["0x100b533d", "ja 0x9b", "0x10060e2d"]]}, {"orig": [["0x100b5343", "jmp dword ptr [eax*4 + 0x100b53e4]"]], "recomp": [["0x10060e33", "jmp dword ptr [eax*4 + 0x10060ed4]"]]}, {"both": [["0x100b534a", "mov eax, dword ptr [edx + 0xa8]", "0x10060e3a"], ["0x100b5350", "cmp eax, 0x434c4620", "0x10060e40"], ["0x100b5355", "je 0xc", "0x10060e45"], ["0x100b5357", "cmp eax, 0x4b4d5320", "0x10060e47"], ["0x100b535c", "je 0x1a", "0x10060e4c"], ["0x100b535e", "mov eax, esi", "0x10060e4e"], ["0x100b5360", "pop edi", "0x10060e50"], ["0x100b5361", "pop esi", "0x10060e51"], ["0x100b5362", "ret ", "0x10060e52"], ["0x100b5363", "test byte ptr [edx + 0x30], 1", "0x10060e53"]]}]], ["@@ -0x100b53d4,28 +0x10060ec4,26 @@", [{"both": [["0x100b53d4", "pop edi", "0x10060ec4"], ["0x100b53d5", "mov eax, esi", "0x10060ec5"], ["0x100b53d7", "pop esi", "0x10060ec7"], ["0x100b53d8", "ret ", "0x10060ec8"], ["0x100b53d9", "mov esi, 'MxStillPresenter' (STRING)", "0x10060ec9"], ["0x100b53de", "mov eax, esi", "0x10060ece"], ["0x100b53e0", "pop edi", "0x10060ed0"], ["0x100b53e1", "pop esi", "0x10060ed1"], ["0x100b53e2", "ret ", "0x10060ed2"], ["0x100b53e3", "nop ", "0x10060ed3"]]}, {"orig": [["0x100b53e4", "dec edx"], ["0x100b53e5", "push ebx"], ["0x100b53e6", "or edx, dword ptr [eax]"], ["0x100b53e8", "lea edx, [ebx + 0xb]"], ["0x100b53eb", "adc dh, bl"], ["0x100b53ed", "push ebx"], ["0x100b53ee", "or edx, dword ptr [eax]"], ["0x100b53f0", "lds edx, ptr [ebx + 0xb]"], ["0x100b53f3", "adc ch, al"], ["0x100b53f5", "push ebx"], ["0x100b53f6", "or edx, dword ptr [eax]"], ["0x100b53f8", "iretd "], ["0x100b53f9", "push ebx"], ["0x100b53fa", "or edx, dword ptr [eax]"], ["0x100b53fc", "lds edx, ptr [ebx + 0xb]"], ["0x100b53ff", "adc cl, bl"], ["0x100b5401", "push ebx"], ["0x100b5402", "or edx, dword ptr [eax]"]], "recomp": [["0x10060ed4", "cmp cl, byte ptr [esi]"], ["0x10060ed6", "push es"], ["0x10060ed7", "adc byte ptr [ebp + 0xe], bh"], ["0x10060eda", "push es"], ["0x10060edb", "adc dh, cl"], ["0x10060edd", "push cs"], ["0x10060ede", "push es"], ["0x10060edf", "adc byte ptr [ebp - 0x4aeff9f2], dh"], ["0x10060ee5", "push cs"], ["0x10060ee6", "push es"], ["0x10060ee7", "adc byte ptr [edi - 0x4aeff9f2], bh"], ["0x10060eed", "push cs"], ["0x10060eee", "push es"], ["0x10060eef", "adc cl, cl"], ["0x10060ef1", "push cs"], ["0x10060ef2", "push es"]]}]]]}, {"address": "0x100b5410", "recomp": "0x10060f00", "name": "MxPresenter::CreateEntity", "matching": 1.0, "diff": []}, {"address": "0x100b54c0", "recomp": "0x10060fb0", "name": "MxPresenter::IsEnabled", "matching": 1.0, "diff": []}, {"address": "0x100b54e0", "recomp": "0x10060fd0", "name": "MxMediaPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100b54f0", "recomp": "0x10060fe0", "name": "MxMediaPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b5650", "recomp": "0x100612c0", "name": "MxMediaPresenter::CurrentChunk", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b5650,30 +0x100612c0,30 @@", [{"both": [["0x100b5650", "push esi", "0x100612c0"], ["0x100b5651", "push edi", "0x100612c1"]]}, {"orig": [["0x100b5652", "mov edi, ecx"], ["0x100b5654", "xor esi, esi"], ["0x100b5656", "mov ecx, dword ptr [edi + 0x40]"]], "recomp": [["0x100612c2", "mov esi, ecx"], ["0x100612c4", "xor edi, edi"], ["0x100612c6", "mov ecx, dword ptr [esi + 0x40]"]]}, {"both": [["0x100b5659", "test ecx, ecx", "0x100612c9"], ["0x100b565b", "je 0x3f", "0x100612cb"], ["0x100b565d", "call MxDSSubscriber::PeekData (FUNCTION)", "0x100612cd"]]}, {"orig": [["0x100b5662", "mov esi, eax"], ["0x100b5664", "test esi, esi"]], "recomp": [["0x100612d2", "mov edi, eax"], ["0x100612d4", "test edi, edi"]]}, {"both": [["0x100b5666", "je 0x34", "0x100612d6"]]}, {"orig": [["0x100b5668", "test byte ptr [esi + 8], 4"]], "recomp": [["0x100612d8", "test byte ptr [edi + 8], 4"]]}, {"both": [["0x100b566c", "je 0x2e", "0x100612dc"]]}, {"orig": [["0x100b566e", "mov eax, dword ptr [edi + 0x1c]"]], "recomp": [["0x100612de", "mov eax, dword ptr [esi + 0x1c]"]]}, {"both": [["0x100b5671", "or dword ptr [eax + 0x30], 0x40", "0x100612e1"]]}, {"orig": [["0x100b5675", "mov ecx, dword ptr [edi + 0x40]"]], "recomp": [["0x100612e5", "mov ecx, dword ptr [esi + 0x40]"]]}, {"both": [["0x100b5678", "call MxDSSubscriber::PopData (FUNCTION)", "0x100612e8"]]}, {"orig": [["0x100b567d", "push esi"], ["0x100b567e", "mov ecx, dword ptr [edi + 0x40]"], ["0x100b5681", "xor esi, esi"]], "recomp": [["0x100612ed", "push edi"], ["0x100612ee", "mov ecx, dword ptr [esi + 0x40]"], ["0x100612f1", "xor edi, edi"]]}, {"both": [["0x100b5683", "call MxDSSubscriber::FreeDataChunk (FUNCTION)", "0x100612f3"], ["0x100b5688", "mov eax, 1", "0x100612f8"]]}, {"orig": [["0x100b568d", "mov cl, byte ptr [edi + 8]"]], "recomp": [["0x100612fd", "mov cl, byte ptr [esi + 8]"]]}, {"both": [["0x100b5690", "shl eax, cl", "0x10061300"]]}, {"orig": [["0x100b5692", "mov dword ptr [edi + 8], 6"], ["0x100b5699", "or dword ptr [edi + 0xc], eax"], ["0x100b569c", "mov eax, esi"]], "recomp": [["0x10061302", "mov dword ptr [esi + 8], 6"], ["0x10061309", "or dword ptr [esi + 0xc], eax"], ["0x1006130c", "mov eax, edi"]]}, {"both": [["0x100b569e", "pop edi", "0x1006130e"], ["0x100b569f", "pop esi", "0x1006130f"], ["0x100b56a0", "ret ", "0x10061310"]]}]]]}, {"address": "0x100b56b0", "recomp": "0x10061320", "name": "MxMediaPresenter::NextChunk", "matching": 1.0, "diff": []}, {"address": "0x100b5700", "recomp": "0x10061370", "name": "MxMediaPresenter::StartAction", "matching": 0.7272727272727273, "diff": [["@@ -0x100b5706,100 +0x10061376,100 @@", [{"both": [["0x100b5706", "push ebp", "0x10061376"], ["0x100b5707", "mov ebp, esp", "0x10061377"], ["0x100b5709", "push -1", "0x10061379"], ["0x100b570b", "push <OFFSET1>", "0x1006137b"], ["0x100b5710", "push eax", "0x10061380"], ["0x100b5711", "mov dword ptr fs:[0], esp", "0x10061381"], ["0x100b5718", "sub esp, 0x10", "0x10061388"], ["0x100b571b", "mov dword ptr [ebp - 0x18], 0xffffffff", "0x1006138b"], ["0x100b5722", "push ebx", "0x10061392"], ["0x100b5723", "push esi", "0x10061393"]]}, {"orig": [], "recomp": [["0x10061394", "lea eax, [ecx + 0x20]"]]}, {"both": [["0x100b5724", "push edi", "0x10061397"]]}, {"orig": [["0x100b5725", "xor esi, esi"], ["0x100b5727", "lea eax, [ecx + 0x20]"], ["0x100b572a", "mov edi, ecx"]], "recomp": [["0x10061398", "mov esi, ecx"]]}, {"both": [["0x100b572c", "push eax", "0x1006139a"], ["0x100b572d", "lea ecx, [ebp - 0x1c]", "0x1006139b"], ["0x100b5730", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x1006139e"], ["0x100b5735", "mov ecx, dword ptr [ebp + 0xc]", "0x100613a3"], ["0x100b5738", "mov eax, dword ptr [ebp + 8]", "0x100613a6"]]}, {"orig": [], "recomp": [["0x100613a9", "mov dword ptr [ebp - 4], 0"]]}, {"both": [["0x100b573b", "push ecx", "0x100613b0"]]}, {"orig": [["0x100b573c", "mov dword ptr [ebp - 4], esi"]], "recomp": []}, {"both": [["0x100b573f", "push eax", "0x100613b1"]]}, {"orig": [["0x100b5740", "mov ecx, edi"]], "recomp": [["0x100613b2", "mov ecx, esi"]]}, {"both": [["0x100b5742", "call MxPresenter::StartAction (FUNCTION)", "0x100613b4"], ["0x100b5747", "test eax, eax", "0x100613b9"]]}, {"orig": [["0x100b5749", "jne 0x17a"], ["0x100b574f", "mov eax, dword ptr [edi + 0x1c]"], ["0x100b5752", "test byte ptr [eax + 0x30], 1"], ["0x100b5756", "je 0x105"]], "recomp": [["0x100613bb", "jne 0x188"], ["0x100613c1", "mov eax, dword ptr [esi + 0x1c]"], ["0x100613c4", "mov ebx, 1"], ["0x100613c9", "test dword ptr [eax + 0x30], ebx"], ["0x100613cc", "je 0x10f"]]}, {"both": [["0x100b575c", "push 0x18", "0x100613d2"], ["0x100b575e", "call ??2@YAPAXI@Z (FUNCTION)", "0x100613d4"], ["0x100b5763", "mov dword ptr [ebp - 0x10], eax", "0x100613d9"], ["0x100b5766", "add esp, 4", "0x100613dc"]]}, {"orig": [["0x100b5769", "mov byte ptr [ebp - 4], 1"], ["0x100b576d", "mov ebx, eax"], ["0x100b576f", "test ebx, ebx"], ["0x100b5771", "je 0x5c"], ["0x100b5773", "mov ecx, ebx"]], "recomp": [["0x100613df", "mov edi, eax"], ["0x100613e1", "mov byte ptr [ebp - 4], bl"], ["0x100613e4", "test edi, edi"], ["0x100613e6", "je 0x67"], ["0x100613e8", "mov ecx, edi"]]}, {"both": [["0x100b5775", "call MxCore::MxCore (FUNCTION)", "0x100613ea"], ["0x100b577a", "mov byte ptr [ebp - 4], 2", "0x100613ef"], ["0x100b577e", "mov byte ptr [ebp - 4], 3", "0x100613f3"], ["0x100b5782", "mov byte ptr [ebp - 4], 4", "0x100613f7"]]}, {"orig": [["0x100b5786", "mov dword ptr [ebx], MxCollection<MxStreamChunk *>::`vftable' (VTABLE)"], ["0x100b578c", "mov dword ptr [ebx + 8], esi"], ["0x100b578f", "mov dword ptr [ebx + 0xc], MxCollection<MxStreamChunk *>::Destroy (FUNCTION)"], ["0x100b5796", "mov eax, ebx"], ["0x100b5798", "mov dword ptr [ebx], MxList<MxStreamChunk *>::`vftable' (VTABLE)"], ["0x100b579e", "mov byte ptr [ebp - 4], 1"], ["0x100b57a2", "mov dword ptr [ebx + 0x14], esi"], ["0x100b57a5", "mov dword ptr [ebx + 0x10], esi"], ["0x100b57a8", "mov dword ptr [ebx], MxStreamChunkList::`vftable' (VTABLE)"], ["0x100b57ae", "mov dword ptr [ebx + 0xc], MxStreamChunkList::Destroy (FUNCTION)"]], "recomp": [["0x100613fb", "mov dword ptr [edi], MxCollection<MxStreamChunk *>::`vftable' (VTABLE)"], ["0x10061401", "mov dword ptr [edi + 8], 0"], ["0x10061408", "mov dword ptr [edi + 0xc], MxCollection<MxStreamChunk *>::Destroy (FUNCTION)"], ["0x1006140f", "mov eax, edi"], ["0x10061411", "mov dword ptr [edi], MxList<MxStreamChunk *>::`vftable' (VTABLE)"], ["0x10061417", "mov dword ptr [edi + 0x14], 0"], ["0x1006141e", "mov dword ptr [edi + 0x10], 0"], ["0x10061425", "mov dword ptr [edi], MxStreamChunkList::`vftable' (VTABLE)"], ["0x1006142b", "mov byte ptr [ebp - 4], bl"], ["0x1006142e", "mov dword ptr [edi + 0xc], MxStreamChunkList::Destroy (FUNCTION)"]]}, {"both": [["0x100b57b5", "jmp 0x1a", "0x10061435"], ["0x100b57b7", "mov ecx, dword ptr [ebp - 0x10]", "0x10061437"], ["0x100b57ba", "jmp MxCore::~MxCore (FUNCTION)", "0x1006143a"], ["0x100b57bf", "mov ecx, dword ptr [ebp - 0x10]", "0x1006143f"], ["0x100b57c2", "jmp MxCollection<MxStreamChunk *>::~MxCollection<MxStreamChunk *> (FUNCTION)", "0x10061442"], ["0x100b57c7", "mov ecx, dword ptr [ebp - 0x10]", "0x10061447"], ["0x100b57ca", "jmp MxList<MxStreamChunk *>::~MxList<MxStreamChunk *> (FUNCTION)", "0x1006144a"], ["0x100b57cf", "xor eax, eax", "0x1006144f"], ["0x100b57d1", "mov byte ptr [ebp - 4], 0", "0x10061451"], ["0x100b57d5", "push 0x10", "0x10061455"]]}, {"orig": [["0x100b57d7", "mov dword ptr [edi + 0x44], eax"]], "recomp": [["0x10061457", "mov dword ptr [esi + 0x44], eax"]]}, {"both": [["0x100b57da", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006145a"], ["0x100b57df", "mov dword ptr [ebp - 0x14], eax", "0x1006145f"], ["0x100b57e2", "add esp, 4", "0x10061462"], ["0x100b57e5", "mov byte ptr [ebp - 4], 5", "0x10061465"]]}, {"orig": [["0x100b57e9", "mov esi, eax"], ["0x100b57eb", "test esi, esi"]], "recomp": [["0x10061469", "mov ebx, eax"], ["0x1006146b", "test ebx, ebx"]]}, {"both": [["0x100b57ed", "je 0x40", "0x1006146d"]]}, {"orig": [["0x100b57ef", "mov ebx, dword ptr [edi + 0x44]"], ["0x100b57f2", "mov ecx, esi"]], "recomp": [["0x1006146f", "mov edi, dword ptr [esi + 0x44]"], ["0x10061472", "mov ecx, ebx"]]}, {"both": [["0x100b57f4", "call MxCore::MxCore (FUNCTION)", "0x10061474"], ["0x100b57f9", "mov byte ptr [ebp - 4], 6", "0x10061479"]]}, {"orig": [["0x100b57fd", "mov eax, esi"], ["0x100b57ff", "mov dword ptr [esi], MxListCursor<MxStreamChunk *>::`vftable' (VTABLE)"]], "recomp": [["0x1006147d", "mov eax, ebx"], ["0x1006147f", "mov dword ptr [ebx], MxListCursor<MxStreamChunk *>::`vftable' (VTABLE)"]]}, {"both": [["0x100b5805", "mov byte ptr [ebp - 4], 7", "0x10061485"], ["0x100b5809", "mov byte ptr [ebp - 4], 5", "0x10061489"]]}, {"orig": [["0x100b580d", "mov dword ptr [esi + 8], ebx"], ["0x100b5810", "mov dword ptr [esi + 0xc], 0"], ["0x100b5817", "mov dword ptr [esi], MxStreamChunkListCursor::`vftable' (VTABLE)"]], "recomp": [["0x1006148d", "mov dword ptr [ebx + 8], edi"], ["0x10061490", "mov dword ptr [ebx + 0xc], 0"], ["0x10061497", "mov dword ptr [ebx], MxStreamChunkListCursor::`vftable' (VTABLE)"]]}, {"both": [["0x100b581d", "jmp 0x12", "0x1006149d"], ["0x100b581f", "mov ecx, dword ptr [ebp - 0x14]", "0x1006149f"], ["0x100b5822", "jmp MxCore::~MxCore (FUNCTION)", "0x100614a2"], ["0x100b5827", "mov ecx, dword ptr [ebp - 0x14]", "0x100614a7"], ["0x100b582a", "jmp MxListCursor<MxStreamChunk *>::~MxListCursor<MxStreamChunk *> (FUNCTION)", "0x100614aa"], ["0x100b582f", "xor eax, eax", "0x100614af"], ["0x100b5831", "mov byte ptr [ebp - 4], 0", "0x100614b1"]]}, {"orig": [["0x100b5835", "cmp dword ptr [edi + 0x44], 0"], ["0x100b5839", "mov dword ptr [edi + 0x48], eax"]], "recomp": [["0x100614b5", "cmp dword ptr [esi + 0x44], 0"], ["0x100614b9", "mov dword ptr [esi + 0x48], eax"]]}, {"both": [["0x100b583c", "jne 0x23", "0x100614bc"], ["0x100b583e", "test eax, eax", "0x100614be"], ["0x100b5840", "jne 0x1f", "0x100614c0"], ["0x100b5842", "jmp 0x82", "0x100614c2"], ["0x100b5847", "mov eax, dword ptr [ebp - 0x14]", "0x100614c7"], ["0x100b584a", "push eax", "0x100614ca"], ["0x100b584b", "call ??3@YAXPAX@Z (FUNCTION)", "0x100614cb"], ["0x100b5850", "add esp, 4", "0x100614d0"], ["0x100b5853", "ret ", "0x100614d3"], ["0x100b5854", "mov eax, dword ptr [ebp - 0x10]", "0x100614d4"]]}]], ["@@ -0x100b5858,28 +0x100614d8,28 @@", [{"both": [["0x100b5858", "call ??3@YAXPAX@Z (FUNCTION)", "0x100614d8"], ["0x100b585d", "add esp, 4", "0x100614dd"], ["0x100b5860", "ret ", "0x100614e0"], ["0x100b5861", "cmp dword ptr [ebp + 8], 0", "0x100614e1"], ["0x100b5865", "je 0x5b", "0x100614e5"], ["0x100b5867", "push 0x4c", "0x100614e7"], ["0x100b5869", "call ??2@YAPAXI@Z (FUNCTION)", "0x100614e9"], ["0x100b586e", "mov dword ptr [ebp - 0x10], eax", "0x100614ee"], ["0x100b5871", "add esp, 4", "0x100614f1"], ["0x100b5874", "mov byte ptr [ebp - 4], 8", "0x100614f4"]]}, {"orig": [["0x100b5878", "mov esi, eax"]], "recomp": [["0x100614f8", "mov edi, eax"]]}, {"both": [["0x100b587a", "mov eax, 0", "0x100614fa"]]}, {"orig": [["0x100b587f", "test esi, esi"]], "recomp": [["0x100614ff", "test edi, edi"]]}, {"both": [["0x100b5881", "je 0x7", "0x10061501"]]}, {"orig": [["0x100b5883", "mov ecx, esi"]], "recomp": [["0x10061503", "mov ecx, edi"]]}, {"both": [["0x100b5885", "call MxDSSubscriber::MxDSSubscriber (FUNCTION)", "0x10061505"], ["0x100b588a", "mov byte ptr [ebp - 4], 0", "0x1006150a"]]}, {"orig": [["0x100b588e", "mov dword ptr [edi + 0x40], eax"]], "recomp": [["0x1006150e", "mov dword ptr [esi + 0x40], eax"]]}, {"both": [["0x100b5891", "test eax, eax", "0x10061511"], ["0x100b5893", "je 0x34", "0x10061513"], ["0x100b5895", "mov ecx, dword ptr [ebp + 0xc]", "0x10061515"], ["0x100b5898", "mov edx, dword ptr [ebp + 0xc]", "0x10061518"], ["0x100b589b", "mov cx, word ptr [ecx + 0x24]", "0x1006151b"], ["0x100b589f", "mov ebx, dword ptr [edx + 0x1c]", "0x1006151f"], ["0x100b58a2", "push ecx", "0x10061522"], ["0x100b58a3", "push ebx", "0x10061523"], ["0x100b58a4", "mov ecx, dword ptr [ebp + 8]", "0x10061524"], ["0x100b58a7", "push ecx", "0x10061527"]]}]], ["@@ -0x100b58e2,17 +0x10061562,10 @@", [{"both": [["0x100b58e2", "pop edi", "0x10061562"], ["0x100b58e3", "pop esi", "0x10061563"], ["0x100b58e4", "pop ebx", "0x10061564"], ["0x100b58e5", "mov esp, ebp", "0x10061565"], ["0x100b58e7", "pop ebp", "0x10061567"], ["0x100b58e8", "ret 8", "0x10061568"], ["0x100b58eb", "mov eax, <OFFSET21>", "0x1006156b"], ["0x100b58f0", "jmp ___CxxFrameHandler (FUNCTION)", "0x10061570"], ["0x100b58f5", "lea ecx, [ebp - 0x1c]", "0x10061575"], ["0x100b58f8", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x10061578"]]}, {"orig": [["0x100b58fd", "int3 "], ["0x100b58fe", "int3 "], ["0x100b58ff", "int3 "], ["0x100b5900", "mov eax, dword ptr [esp + 4]"], ["0x100b5904", "mov ecx, dword ptr [esp + 8]"], ["0x100b5908", "cmp eax, ecx"], ["0x100b590a", "jne 0x5"]], "recomp": []}]]]}, {"address": "0x100b5900", "recomp": "0x10061580", "name": "MxStreamChunkList::Compare", "matching": 1.0, "diff": []}, {"address": "0x100b5920", "recomp": "0x100615a0", "name": "MxStreamChunkList::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b5930", "recomp": "0x10061610", "name": "MxCollection<MxStreamChunk *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x100b5940", "recomp": "0x100615c0", "name": "MxCollection<MxStreamChunk *>::~MxCollection<MxStreamChunk *>", "matching": 1.0, "diff": []}, {"address": "0x100b5990", "recomp": "0x100615b0", "name": "MxCollection<MxStreamChunk *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b59a0", "recomp": "0x10061ca0", "name": "MxList<MxStreamChunk *>::~MxList<MxStreamChunk *>", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b59a9,33 +0x10061ca9,33 @@", [{"both": [["0x100b59a9", "push -1", "0x10061ca9"], ["0x100b59ab", "push <OFFSET1>", "0x10061cab"], ["0x100b59b0", "push eax", "0x10061cb0"], ["0x100b59b1", "mov dword ptr fs:[0], esp", "0x10061cb1"], ["0x100b59b8", "mov dword ptr [ecx], MxList<MxStreamChunk *>::`vftable' (VTABLE)", "0x10061cb8"], ["0x100b59be", "sub esp, 4", "0x10061cbe"], ["0x100b59c1", "mov dword ptr [ebp - 0x10], ecx", "0x10061cc1"], ["0x100b59c4", "mov dword ptr [ebp - 4], 0", "0x10061cc4"], ["0x100b59cb", "push esi", "0x10061ccb"], ["0x100b59cc", "push edi", "0x10061ccc"]]}, {"orig": [["0x100b59cd", "mov esi, dword ptr [ecx + 0x10]"], ["0x100b59d0", "test esi, esi"]], "recomp": [["0x10061ccd", "mov edi, dword ptr [ecx + 0x10]"], ["0x10061cd0", "test edi, edi"]]}, {"both": [["0x100b59d2", "je 0x1c", "0x10061cd2"]]}, {"orig": [["0x100b59d4", "mov edi, dword ptr [esi + 8]"], ["0x100b59d7", "mov eax, dword ptr [esi]"]], "recomp": [["0x10061cd4", "mov esi, dword ptr [edi + 8]"], ["0x10061cd7", "mov eax, dword ptr [edi]"]]}, {"both": [["0x100b59d9", "push eax", "0x10061cd9"], ["0x100b59da", "mov ecx, dword ptr [ebp - 0x10]", "0x10061cda"], ["0x100b59dd", "call dword ptr [ecx + 0xc]", "0x10061cdd"], ["0x100b59e0", "add esp, 4", "0x10061ce0"]]}, {"orig": [["0x100b59e3", "push esi"]], "recomp": [["0x10061ce3", "push edi"]]}, {"both": [["0x100b59e4", "call ??3@YAXPAX@Z (FUNCTION)", "0x10061ce4"], ["0x100b59e9", "add esp, 4", "0x10061ce9"]]}, {"orig": [["0x100b59ec", "mov esi, edi"]], "recomp": [["0x10061cec", "mov edi, esi"]]}, {"both": [["0x100b59ee", "jmp -0x20", "0x10061cee"], ["0x100b59f0", "xor eax, eax", "0x10061cf0"], ["0x100b59f2", "mov ecx, dword ptr [ebp - 0x10]", "0x10061cf2"], ["0x100b59f5", "mov dword ptr [ebp - 4], 0xffffffff", "0x10061cf5"], ["0x100b59fc", "mov dword ptr [ecx + 8], eax", "0x10061cfc"], ["0x100b59ff", "mov dword ptr [ecx + 0x14], eax", "0x10061cff"], ["0x100b5a02", "mov dword ptr [ecx + 0x10], eax", "0x10061d02"], ["0x100b5a05", "call <OFFSET4>", "0x10061d05"], ["0x100b5a0a", "mov eax, dword ptr [ebp - 0xc]", "0x10061d0a"], ["0x100b5a0d", "pop edi", "0x10061d0d"]]}]]]}, {"address": "0x100b5a30", "recomp": "0x10061620", "name": "MxStreamChunkList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b5aa0", "recomp": "0x10061690", "name": "MxCollection<MxStreamChunk *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b5b10", "recomp": "0x10061700", "name": "MxList<MxStreamChunk *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b5bc0", "recomp": "0x100617b0", "name": "MxMediaPresenter::EndAction", "matching": 1.0, "diff": []}, {"address": "0x100b5d10", "recomp": "0x10061900", "name": "MxMediaPresenter::Tickle", "matching": 1.0, "diff": []}, {"address": "0x100b5d90", "recomp": "0x10061980", "name": "MxMediaPresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x100b5e10", "recomp": "0x10061a00", "name": "MxMediaPresenter::RepeatingTickle", "matching": 0.9132947976878613, "diff": [["@@ -0x100b5e10,20 +0x10061a00,20 @@", [{"both": [["0x100b5e10", "push ebx", "0x10061a00"], ["0x100b5e11", "push esi", "0x10061a01"], ["0x100b5e12", "push edi", "0x10061a02"], ["0x100b5e13", "mov esi, ecx", "0x10061a03"], ["0x100b5e15", "push ebp", "0x10061a05"], ["0x100b5e16", "call MxPresenter::IsEnabled (FUNCTION)", "0x10061a06"], ["0x100b5e1b", "test al, al", "0x10061a0b"]]}, {"orig": [["0x100b5e1d", "je 0xc1"]], "recomp": [["0x10061a0d", "je 0xc3"]]}, {"both": [["0x100b5e23", "cmp dword ptr [esi + 0x4c], 0", "0x10061a13"]]}, {"orig": [["0x100b5e27", "jne 0xb7"]], "recomp": [["0x10061a17", "jne 0xb9"]]}, {"both": [["0x100b5e2d", "mov ecx, dword ptr [esi + 0x48]", "0x10061a1d"], ["0x100b5e30", "test ecx, ecx", "0x10061a20"], ["0x100b5e32", "je 0x51", "0x10061a22"], ["0x100b5e34", "mov eax, dword ptr [ecx + 0xc]", "0x10061a24"], ["0x100b5e37", "test eax, eax", "0x10061a27"], ["0x100b5e39", "jne 0xb", "0x10061a29"], ["0x100b5e3b", "mov eax, dword ptr [ecx + 8]", "0x10061a2b"], ["0x100b5e3e", "mov edx, dword ptr [eax + 0x10]", "0x10061a2e"], ["0x100b5e41", "mov dword ptr [ecx + 0xc], edx", "0x10061a31"], ["0x100b5e44", "jmp 0x6", "0x10061a34"]]}]], ["@@ -0x100b5e6b,30 +0x10061a5b,31 @@", [{"both": [["0x100b5e6b", "mov edx, dword ptr [eax + 0x10]", "0x10061a5b"], ["0x100b5e6e", "mov dword ptr [ecx + 0xc], edx", "0x10061a5e"], ["0x100b5e71", "jmp 0x6", "0x10061a61"], ["0x100b5e73", "mov eax, dword ptr [eax + 8]", "0x10061a63"], ["0x100b5e76", "mov dword ptr [ecx + 0xc], eax", "0x10061a66"], ["0x100b5e79", "mov eax, dword ptr [ecx + 0xc]", "0x10061a69"], ["0x100b5e7c", "test eax, eax", "0x10061a6c"], ["0x100b5e7e", "je 0x5", "0x10061a6e"], ["0x100b5e80", "mov eax, dword ptr [eax]", "0x10061a70"], ["0x100b5e82", "mov dword ptr [esi + 0x4c], eax", "0x10061a72"]]}, {"orig": [["0x100b5e85", "mov ebx, dword ptr [esi + 0x4c]"], ["0x100b5e88", "test ebx, ebx"], ["0x100b5e8a", "je 0x2c"]], "recomp": [["0x10061a75", "mov eax, dword ptr [esi + 0x4c]"], ["0x10061a78", "test eax, eax"], ["0x10061a7a", "je 0x2e"], ["0x10061a7c", "mov ebx, dword ptr [eax + 0x10]"]]}, {"both": [["0x100b5e8c", "mov edi, dword ptr [esi + 0x1c]", "0x10061a7f"], ["0x100b5e8f", "mov ecx, edi", "0x10061a82"], ["0x100b5e91", "mov eax, dword ptr [edi]", "0x10061a84"], ["0x100b5e93", "call dword ptr [eax + 0x40]", "0x10061a86"], ["0x100b5e96", "cdq ", "0x10061a89"], ["0x100b5e97", "idiv dword ptr [edi + 0x3c]", "0x10061a8a"]]}, {"orig": [["0x100b5e9a", "cmp edx, dword ptr [ebx + 0x10]"]], "recomp": [["0x10061a8d", "cmp edx, ebx"]]}, {"both": [["0x100b5e9d", "jl 0x45", "0x10061a8f"], ["0x100b5e9f", "mov eax, 1", "0x10061a91"], ["0x100b5ea4", "mov cl, byte ptr [esi + 8]", "0x10061a96"], ["0x100b5ea7", "shl eax, cl", "0x10061a99"], ["0x100b5ea9", "pop ebp", "0x10061a9b"], ["0x100b5eaa", "or dword ptr [esi + 0xc], eax", "0x10061a9c"], ["0x100b5ead", "mov dword ptr [esi + 8], 5", "0x10061a9f"], ["0x100b5eb4", "pop edi", "0x10061aa6"], ["0x100b5eb5", "pop esi", "0x10061aa7"], ["0x100b5eb6", "pop ebx", "0x10061aa8"]]}]], ["@@ -0x100b5ed0,12 +0x10061ac2,10 @@", [{"both": [["0x100b5ed0", "mov eax, 1", "0x10061ac2"], ["0x100b5ed5", "mov cl, byte ptr [esi + 8]", "0x10061ac7"], ["0x100b5ed8", "shl eax, cl", "0x10061aca"], ["0x100b5eda", "mov dword ptr [esi + 8], 5", "0x10061acc"], ["0x100b5ee1", "or dword ptr [esi + 0xc], eax", "0x10061ad3"], ["0x100b5ee4", "pop ebp", "0x10061ad6"], ["0x100b5ee5", "pop edi", "0x10061ad7"], ["0x100b5ee6", "pop esi", "0x10061ad8"], ["0x100b5ee7", "pop ebx", "0x10061ad9"], ["0x100b5ee8", "ret ", "0x10061ada"]]}, {"orig": [["0x100b5ee9", "int3 "], ["0x100b5eea", "int3 "]], "recomp": []}]]]}, {"address": "0x100b5ef0", "recomp": "0x10061ae0", "name": "MxMediaPresenter::DoneTickle", "matching": 1.0, "diff": []}, {"address": "0x100b5f10", "recomp": "0x10061b00", "name": "MxMediaPresenter::LoopChunk", "matching": 0.8404255319148937, "diff": [["@@ -0x100b5f28,31 +0x10061b18,31 @@", [{"both": [["0x100b5f28", "sub esp, 8", "0x10061b18"], ["0x100b5f2b", "mov dword ptr [ebp - 0x14], ecx", "0x10061b1b"], ["0x100b5f2e", "push ebx", "0x10061b1e"], ["0x100b5f2f", "push esi", "0x10061b1f"], ["0x100b5f30", "push edi", "0x10061b20"], ["0x100b5f31", "push 0x20", "0x10061b21"], ["0x100b5f33", "xor ebx, ebx", "0x10061b23"], ["0x100b5f35", "call ??2@YAPAXI@Z (FUNCTION)", "0x10061b25"], ["0x100b5f3a", "mov dword ptr [ebp - 0x10], eax", "0x10061b2a"], ["0x100b5f3d", "add esp, 4", "0x10061b2d"]]}, {"orig": [["0x100b5f40", "mov esi, eax"]], "recomp": [["0x10061b30", "mov edi, eax"]]}, {"both": [["0x100b5f42", "mov dword ptr [ebp - 4], ebx", "0x10061b32"]]}, {"orig": [["0x100b5f45", "test esi, esi"]], "recomp": [["0x10061b35", "test edi, edi"]]}, {"both": [["0x100b5f47", "je 0x23", "0x10061b37"]]}, {"orig": [["0x100b5f49", "mov ecx, esi"]], "recomp": [["0x10061b39", "mov ecx, edi"]]}, {"both": [["0x100b5f4b", "call MxDSChunk::MxDSChunk (FUNCTION)", "0x10061b3b"], ["0x100b5f50", "mov byte ptr [ebp - 4], 1", "0x10061b40"]]}, {"orig": [["0x100b5f54", "mov dword ptr [esi + 0x1c], ebx"]], "recomp": [["0x10061b44", "mov dword ptr [edi + 0x1c], ebx"]]}, {"both": [["0x100b5f57", "mov byte ptr [ebp - 4], bl", "0x10061b47"]]}, {"orig": [["0x100b5f5a", "mov ebx, esi"], ["0x100b5f5c", "mov dword ptr [esi], MxStreamChunk::`vftable' (VTABLE)"]], "recomp": [["0x10061b4a", "mov ebx, edi"], ["0x10061b4c", "mov dword ptr [edi], MxStreamChunk::`vftable' (VTABLE)"]]}, {"both": [["0x100b5f62", "jmp 0xa", "0x10061b52"], ["0x100b5f64", "mov ecx, dword ptr [ebp - 0x10]", "0x10061b54"], ["0x100b5f67", "jmp MxDSChunk::~MxDSChunk (FUNCTION)", "0x10061b57"], ["0x100b5f6c", "xor ebx, ebx", "0x10061b5c"], ["0x100b5f6e", "mov esi, dword ptr [ebp + 8]", "0x10061b5e"], ["0x100b5f71", "mov dword ptr [ebp - 4], 0xffffffff", "0x10061b61"], ["0x100b5f78", "mov eax, dword ptr [esi + 0x14]", "0x10061b68"], ["0x100b5f7b", "push eax", "0x10061b6b"], ["0x100b5f7c", "mov dword ptr [ebx + 0x14], eax", "0x10061b6c"], ["0x100b5f7f", "call ??2@YAPAXI@Z (FUNCTION)", "0x10061b6f"]]}]], ["@@ -0x100b5f93,48 +0x10061b83,48 @@", [{"both": [["0x100b5f93", "mov edi, dword ptr [ebx + 0x18]", "0x10061b83"], ["0x100b5f96", "mov esi, dword ptr [esi + 0x18]", "0x10061b86"], ["0x100b5f99", "mov ecx, eax", "0x10061b89"], ["0x100b5f9b", "shr ecx, 2", "0x10061b8b"], ["0x100b5f9e", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10061b8e"], ["0x100b5fa0", "mov ecx, eax", "0x10061b90"], ["0x100b5fa2", "push 0xc", "0x10061b92"], ["0x100b5fa4", "and ecx, 3", "0x10061b94"], ["0x100b5fa7", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x10061b97"], ["0x100b5fa9", "mov ecx, dword ptr [ebp - 0x14]", "0x10061b99"]]}, {"orig": [["0x100b5fac", "mov edi, dword ptr [ecx + 0x44]"], ["0x100b5faf", "mov esi, dword ptr [edi + 0x14]"]], "recomp": [["0x10061b9c", "mov esi, dword ptr [ecx + 0x44]"], ["0x10061b9f", "mov edi, dword ptr [esi + 0x14]"]]}, {"both": [["0x100b5fb2", "call ??2@YAPAXI@Z (FUNCTION)", "0x10061ba2"], ["0x100b5fb7", "add esp, 4", "0x10061ba7"], ["0x100b5fba", "mov dword ptr [ebp - 0x10], eax", "0x10061baa"], ["0x100b5fbd", "mov dword ptr [ebp - 4], 2", "0x10061bad"], ["0x100b5fc4", "test eax, eax", "0x10061bb4"], ["0x100b5fc6", "je 0xe", "0x10061bb6"], ["0x100b5fc8", "mov dword ptr [eax], ebx", "0x10061bb8"]]}, {"orig": [["0x100b5fca", "mov dword ptr [eax + 4], esi"]], "recomp": [["0x10061bba", "mov dword ptr [eax + 4], edi"]]}, {"both": [["0x100b5fcd", "mov dword ptr [eax + 8], 0", "0x10061bbd"], ["0x100b5fd4", "jmp 0x2", "0x10061bc4"], ["0x100b5fd6", "xor eax, eax", "0x10061bc6"], ["0x100b5fd8", "mov dword ptr [ebp - 4], 0xffffffff", "0x10061bc8"]]}, {"orig": [["0x100b5fdf", "test esi, esi"]], "recomp": [["0x10061bcf", "test edi, edi"]]}, {"both": [["0x100b5fe1", "je 0x1b", "0x10061bd1"]]}, {"orig": [["0x100b5fe3", "mov dword ptr [esi + 8], eax"], ["0x100b5fe6", "mov dword ptr [edi + 0x14], eax"]], "recomp": [["0x10061bd3", "mov dword ptr [edi + 8], eax"], ["0x10061bd6", "pop edi"], ["0x10061bd7", "mov dword ptr [esi + 0x14], eax"]]}, {"both": [["0x100b5fe9", "mov eax, dword ptr [ebp - 0xc]", "0x10061bda"]]}, {"orig": [], "recomp": [["0x10061bdd", "inc dword ptr [esi + 8]"]]}, {"both": [["0x100b5fec", "mov dword ptr fs:[0], eax", "0x10061be0"]]}, {"orig": [["0x100b5ff2", "inc dword ptr [edi + 8]"], ["0x100b5ff5", "pop edi"]], "recomp": []}, {"both": [["0x100b5ff6", "pop esi", "0x10061be6"], ["0x100b5ff7", "pop ebx", "0x10061be7"], ["0x100b5ff8", "mov esp, ebp", "0x10061be8"], ["0x100b5ffa", "pop ebp", "0x10061bea"], ["0x100b5ffb", "ret 4", "0x10061beb"]]}, {"orig": [["0x100b5ffe", "mov dword ptr [edi + 0x10], eax"]], "recomp": [["0x10061bee", "mov dword ptr [esi + 0x10], eax"]]}, {"both": [["0x100b6001", "jmp -0x1d", "0x10061bf1"], ["0x100b6003", "mov eax, dword ptr [ebp - 0x10]", "0x10061bf3"], ["0x100b6006", "push eax", "0x10061bf6"], ["0x100b6007", "call ??3@YAXPAX@Z (FUNCTION)", "0x10061bf7"], ["0x100b600c", "add esp, 4", "0x10061bfc"], ["0x100b600f", "ret ", "0x10061bff"], ["0x100b6010", "mov eax, <OFFSET7>", "0x10061c00"], ["0x100b6015", "jmp ___CxxFrameHandler (FUNCTION)", "0x10061c05"], ["0x100b601a", "mov eax, dword ptr [ebp - 0x10]", "0x10061c0a"], ["0x100b601d", "push eax", "0x10061c0d"]]}]]]}, {"address": "0x100b6030", "recomp": "0x10061c20", "name": "MxMediaPresenter::Enable", "matching": 1.0, "diff": []}, {"address": "0x100b60b0", "recomp": "0x10065690", "name": "MxCompositePresenter::MxCompositePresenter", "matching": 1.0, "diff": []}, {"address": "0x100b61a0", "recomp": "0x10065780", "name": "list<MxPresenter *,allocator<MxPresenter *> >::~list<MxPresenter *,allocator<MxPresenter *> >", "matching": 0.972972972972973, "diff": [["@@ -0x100b61c3,21 +0x100657a3,21 @@", [{"both": [["0x100b61c3", "mov eax, dword ptr [eax]", "0x100657a3"], ["0x100b61c5", "mov dword ptr [ecx], eax", "0x100657a5"], ["0x100b61c7", "mov ecx, dword ptr [edx]", "0x100657a7"], ["0x100b61c9", "mov eax, dword ptr [esp + 8]", "0x100657a9"], ["0x100b61cd", "push eax", "0x100657ad"], ["0x100b61ce", "mov edx, dword ptr [eax]", "0x100657ae"], ["0x100b61d0", "mov dword ptr [edx + 4], ecx", "0x100657b0"], ["0x100b61d3", "call ??3@YAXPAX@Z (FUNCTION)", "0x100657b3"], ["0x100b61d8", "add esp, 4", "0x100657b8"], ["0x100b61db", "dec dword ptr [esi + 8]", "0x100657bb"]]}, {"orig": [["0x100b61de", "cmp edi, dword ptr [esp + 0x10]"]], "recomp": [["0x100657be", "cmp dword ptr [esp + 0x10], edi"]]}, {"both": [["0x100b61e2", "jne -0x2e", "0x100657c2"], ["0x100b61e4", "mov eax, dword ptr [esi + 4]", "0x100657c4"], ["0x100b61e7", "push eax", "0x100657c7"], ["0x100b61e8", "call ??3@YAXPAX@Z (FUNCTION)", "0x100657c8"], ["0x100b61ed", "mov dword ptr [esi + 4], 0", "0x100657cd"], ["0x100b61f4", "add esp, 4", "0x100657d4"], ["0x100b61f7", "mov dword ptr [esi + 8], 0", "0x100657d7"], ["0x100b61fe", "pop edi", "0x100657de"], ["0x100b61ff", "pop esi", "0x100657df"], ["0x100b6200", "add esp, 0xc", "0x100657e0"]]}]]]}, {"address": "0x100b6210", "recomp": "0x100657f0", "name": "MxCompositePresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100b6220", "recomp": "0x10065800", "name": "MxCompositePresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x100b62d0", "recomp": "0x100658b0", "name": "MxCompositePresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b62f0", "recomp": "0x100658d0", "name": "MxCompositePresenterList::~MxCompositePresenterList", "matching": 1.0, "diff": []}, {"address": "0x100b6340", "recomp": "0x10065920", "name": "List<MxPresenter *>::~List<MxPresenter *>", "matching": 1.0, "diff": []}, {"address": "0x100b6390", "recomp": "0x10065970", "name": "MxCompositePresenter::~MxCompositePresenter", "matching": 1.0, "diff": []}, {"address": "0x100b6410", "recomp": "0x100659f0", "name": "MxCompositePresenter::StartAction", "matching": 1.0, "diff": []}, {"address": "0x100b65e0", "recomp": "0x10065bc0", "name": "MxCompositePresenter::EndAction", "matching": 1.0, "diff": []}, {"address": "0x100b6760", "recomp": "0x10065d40", "name": "MxCompositePresenter::Notify", "matching": 0.8181818181818182, "diff": [["@@ -0x100b676b,36 +0x10065d4b,36 @@", [{"both": [["0x100b676b", "push <OFFSET1>", "0x10065d4b"], ["0x100b6770", "push eax", "0x10065d50"], ["0x100b6771", "mov dword ptr fs:[0], esp", "0x10065d51"], ["0x100b6778", "sub esp, 4", "0x10065d58"], ["0x100b677b", "push esi", "0x10065d5b"], ["0x100b677c", "lea eax, [ecx + 0x20]", "0x10065d5c"], ["0x100b677f", "mov esi, ecx", "0x10065d5f"], ["0x100b6781", "push eax", "0x10065d61"], ["0x100b6782", "lea ecx, [ebp - 0x10]", "0x10065d62"], ["0x100b6785", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x10065d65"]]}, {"orig": [["0x100b678a", "mov ecx, dword ptr [ebp + 8]"]], "recomp": [["0x10065d6a", "mov eax, dword ptr [ebp + 8]"]]}, {"both": [["0x100b678d", "mov dword ptr [ebp - 4], 0", "0x10065d6d"]]}, {"orig": [["0x100b6794", "mov eax, dword ptr [ecx + 4]"], ["0x100b6797", "cmp eax, 2"]], "recomp": [["0x10065d74", "mov ecx, dword ptr [eax + 4]"], ["0x10065d77", "cmp ecx, 2"]]}, {"both": [["0x100b679a", "je 0x7", "0x10065d7a"]]}, {"orig": [["0x100b679c", "cmp eax, 5"]], "recomp": [["0x10065d7c", "cmp ecx, 5"]]}, {"both": [["0x100b679f", "je 0xc", "0x10065d7f"], ["0x100b67a1", "jmp 0x12", "0x10065d81"]]}, {"orig": [["0x100b67a3", "push ecx"]], "recomp": [["0x10065d83", "push eax"], ["0x10065d84", "mov ecx, esi"]]}, {"both": [["0x100b67a4", "mov eax, dword ptr [esi]", "0x10065d86"]]}, {"orig": [["0x100b67a6", "mov ecx, esi"]], "recomp": []}, {"both": [["0x100b67a8", "call dword ptr [eax + 0x58]", "0x10065d88"], ["0x100b67ab", "jmp 0x8", "0x10065d8b"]]}, {"orig": [["0x100b67ad", "push ecx"]], "recomp": [["0x10065d8d", "push eax"], ["0x10065d8e", "mov ecx, esi"]]}, {"both": [["0x100b67ae", "mov eax, dword ptr [esi]", "0x10065d90"]]}, {"orig": [["0x100b67b0", "mov ecx, esi"]], "recomp": []}, {"both": [["0x100b67b2", "call dword ptr [eax + 0x5c]", "0x10065d92"], ["0x100b67b5", "mov dword ptr [ebp - 4], 0xffffffff", "0x10065d95"], ["0x100b67bc", "call <OFFSET3>", "0x10065d9c"], ["0x100b67c1", "xor eax, eax", "0x10065da1"], ["0x100b67c3", "mov ecx, dword ptr [ebp - 0xc]", "0x10065da3"], ["0x100b67c6", "mov dword ptr fs:[0], ecx", "0x10065da6"], ["0x100b67cd", "pop esi", "0x10065dad"], ["0x100b67ce", "mov esp, ebp", "0x10065dae"], ["0x100b67d0", "pop ebp", "0x10065db0"], ["0x100b67d1", "ret 4", "0x10065db1"]]}]]]}, {"address": "0x100b67f0", "recomp": "0x10065dd0", "name": "MxCompositePresenter::VTable0x58", "matching": 1.0, "diff": []}, {"address": "0x100b69b0", "recomp": "0x10065f90", "name": "MxCompositePresenter::VTable0x5c", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b69bb,35 +0x10065f9b,35 @@", [{"both": [["0x100b69bb", "push <OFFSET1>", "0x10065f9b"], ["0x100b69c0", "push eax", "0x10065fa0"], ["0x100b69c1", "mov dword ptr fs:[0], esp", "0x10065fa1"], ["0x100b69c8", "sub esp, 0x18", "0x10065fa8"], ["0x100b69cb", "push ebx", "0x10065fab"], ["0x100b69cc", "push esi", "0x10065fac"], ["0x100b69cd", "push edi", "0x10065fad"], ["0x100b69ce", "mov esi, ecx", "0x10065fae"], ["0x100b69d0", "cmp dword ptr [ecx + 0x48], 0", "0x10065fb0"], ["0x100b69d4", "je 0x31", "0x10065fb4"]]}, {"orig": [["0x100b69d6", "mov ecx, dword ptr [ebp + 8]"], ["0x100b69d9", "mov edx, dword ptr [esi + 0x44]"], ["0x100b69dc", "mov edi, dword ptr [ecx + 8]"], ["0x100b69df", "mov eax, dword ptr [edx]"]], "recomp": [["0x10065fb6", "mov edx, dword ptr [ebp + 8]"], ["0x10065fb9", "mov ecx, dword ptr [esi + 0x44]"], ["0x10065fbc", "mov edi, dword ptr [edx + 8]"], ["0x10065fbf", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x100b69e1", "mov dword ptr [ebp - 0x10], eax", "0x10065fc1"]]}, {"orig": [["0x100b69e4", "cmp eax, edx"]], "recomp": [["0x10065fc4", "cmp ecx, eax"]]}, {"both": [["0x100b69e6", "je 0x11", "0x10065fc6"], ["0x100b69e8", "mov eax, dword ptr [ebp - 0x10]", "0x10065fc8"], ["0x100b69eb", "cmp dword ptr [eax + 8], edi", "0x10065fcb"], ["0x100b69ee", "je 0x29", "0x10065fce"], ["0x100b69f0", "mov ebx, dword ptr [eax]", "0x10065fd0"], ["0x100b69f2", "mov dword ptr [ebp - 0x10], ebx", "0x10065fd2"]]}, {"orig": [["0x100b69f5", "cmp ebx, edx"]], "recomp": [["0x10065fd5", "cmp ecx, ebx"]]}, {"both": [["0x100b69f7", "jne -0x11", "0x10065fd7"]]}, {"orig": [["0x100b69f9", "push ecx"]], "recomp": [["0x10065fd9", "push edx"]]}, {"both": [["0x100b69fa", "push esi", "0x10065fda"], ["0x100b69fb", "call NotificationManager (FUNCTION)", "0x10065fdb"], ["0x100b6a00", "mov ecx, eax", "0x10065fe0"], ["0x100b6a02", "call MxNotificationManager::Send (FUNCTION)", "0x10065fe2"], ["0x100b6a07", "mov eax, dword ptr [ebp - 0xc]", "0x10065fe7"], ["0x100b6a0a", "pop edi", "0x10065fea"], ["0x100b6a0b", "mov dword ptr fs:[0], eax", "0x10065feb"], ["0x100b6a11", "pop esi", "0x10065ff1"], ["0x100b6a12", "pop ebx", "0x10065ff2"], ["0x100b6a13", "mov esp, ebp", "0x10065ff3"]]}]]]}, {"address": "0x100b6b40", "recomp": "0x10066120", "name": "MxCompositePresenter::VTable0x60", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b6b40,32 +0x10066120,32 @@", [{"both": [["0x100b6b40", "sub esp, 4", "0x10066120"], ["0x100b6b43", "mov edx, dword ptr [ecx + 0x44]", "0x10066123"], ["0x100b6b46", "push esi", "0x10066126"], ["0x100b6b47", "mov eax, dword ptr [edx]", "0x10066127"], ["0x100b6b49", "mov dword ptr [esp + 4], eax", "0x10066129"]]}, {"orig": [["0x100b6b4d", "cmp edx, eax"]], "recomp": [["0x1006612d", "cmp eax, edx"]]}, {"both": [["0x100b6b4f", "je 0x67", "0x1006612f"], ["0x100b6b51", "mov esi, dword ptr [esp + 0xc]", "0x10066131"], ["0x100b6b55", "mov eax, dword ptr [esp + 4]", "0x10066135"], ["0x100b6b59", "cmp dword ptr [eax + 8], esi", "0x10066139"], ["0x100b6b5c", "je 0x11", "0x1006613c"], ["0x100b6b5e", "mov eax, dword ptr [eax]", "0x1006613e"], ["0x100b6b60", "mov dword ptr [esp + 4], eax", "0x10066140"]]}, {"orig": [["0x100b6b64", "cmp edx, eax"]], "recomp": [["0x10066144", "cmp eax, edx"]]}, {"both": [["0x100b6b66", "jne -0x13", "0x10066146"], ["0x100b6b68", "pop esi", "0x10066148"], ["0x100b6b69", "add esp, 4", "0x10066149"], ["0x100b6b6c", "ret 4", "0x1006614c"], ["0x100b6b6f", "mov eax, dword ptr [esp + 4]", "0x1006614f"], ["0x100b6b73", "mov esi, dword ptr [eax]", "0x10066153"], ["0x100b6b75", "mov dword ptr [esp + 4], esi", "0x10066155"]]}, {"orig": [["0x100b6b79", "cmp edx, esi"]], "recomp": [["0x10066159", "cmp esi, edx"]]}, {"both": [["0x100b6b7b", "jne 0x16", "0x1006615b"], ["0x100b6b7d", "mov eax, dword ptr [ecx + 0x3c]", "0x1006615d"], ["0x100b6b80", "test eax, eax", "0x10066160"], ["0x100b6b82", "je 0x34", "0x10066162"], ["0x100b6b84", "push ecx", "0x10066164"], ["0x100b6b85", "mov edx, dword ptr [eax]", "0x10066165"], ["0x100b6b87", "mov ecx, eax", "0x10066167"], ["0x100b6b89", "call dword ptr [edx + 0x60]", "0x10066169"], ["0x100b6b8c", "pop esi", "0x1006616c"], ["0x100b6b8d", "add esp, 4", "0x1006616d"]]}]]]}, {"address": "0x100b6bc0", "recomp": "0x100661a0", "name": "MxCompositePresenter::SetTickleState", "matching": 1.0, "diff": []}, {"address": "0x100b6c30", "recomp": "0x10066210", "name": "MxCompositePresenter::Enable", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b6c30,21 +0x10066210,21 @@", [{"both": [["0x100b6c30", "sub esp, 4", "0x10066210"], ["0x100b6c33", "push ebx", "0x10066213"], ["0x100b6c34", "push esi", "0x10066214"], ["0x100b6c35", "mov esi, ecx", "0x10066215"], ["0x100b6c37", "mov bl, byte ptr [esp + 0x10]", "0x10066217"], ["0x100b6c3b", "push ebx", "0x1006621b"], ["0x100b6c3c", "call MxPresenter::Enable (FUNCTION)", "0x1006621c"], ["0x100b6c41", "mov eax, dword ptr [esi + 0x44]", "0x10066221"], ["0x100b6c44", "mov ecx, dword ptr [eax]", "0x10066224"], ["0x100b6c46", "mov dword ptr [esp + 8], ecx", "0x10066226"]]}, {"orig": [["0x100b6c4a", "cmp eax, ecx"]], "recomp": [["0x1006622a", "cmp ecx, eax"]]}, {"both": [["0x100b6c4c", "je 0x1c", "0x1006622c"], ["0x100b6c4e", "mov eax, dword ptr [esp + 8]", "0x1006622e"], ["0x100b6c52", "push ebx", "0x10066232"], ["0x100b6c53", "mov ecx, dword ptr [eax + 8]", "0x10066233"], ["0x100b6c56", "mov eax, dword ptr [ecx]", "0x10066236"], ["0x100b6c58", "call dword ptr [eax + 0x54]", "0x10066238"], ["0x100b6c5b", "mov ecx, dword ptr [esp + 8]", "0x1006623b"], ["0x100b6c5f", "mov edx, dword ptr [ecx]", "0x1006623f"], ["0x100b6c61", "mov dword ptr [esp + 8], edx", "0x10066241"], ["0x100b6c65", "cmp dword ptr [esi + 0x44], edx", "0x10066245"]]}]]]}, {"address": "0x100b6c80", "recomp": "0x10066260", "name": "MxCompositePresenter::HasTickleStatePassed", "matching": 1.0, "diff": []}, {"address": "0x100b6cd0", "recomp": "0x100662b0", "name": "MxList<MxDSAction *>::DeleteEntry", "matching": 1.0, "diff": []}, {"address": "0x100b6d20", "recomp": "0x10061db0", "name": "MxCriticalSection::MxCriticalSection", "matching": 1.0, "diff": []}, {"address": "0x100b6d60", "recomp": "0x10061df0", "name": "MxCriticalSection::~MxCriticalSection", "matching": 1.0, "diff": []}, {"address": "0x100b6d80", "recomp": "0x10061e10", "name": "MxCriticalSection::Enter", "matching": 1.0, "diff": []}, {"address": "0x100b6de0", "recomp": "0x10061e70", "name": "MxCriticalSection::Leave", "matching": 1.0, "diff": []}, {"address": "0x100b6e00", "recomp": "0x10061e90", "name": "MxCriticalSection::SetDoMutex", "matching": 1.0, "diff": []}, {"address": "0x100b6e10", "recomp": "0x100650e0", "name": "GetRectIntersection", "matching": 0.07563025210084033, "diff": [["@@ -0x100b6e10,105 +0x100650e0,133 @@", [{"both": [["0x100b6e10", "mov ecx, dword ptr [esp + 0x14]", "0x100650e0"]]}, {"orig": [["0x100b6e14", "sub esp, 0x40"]], "recomp": [["0x100650e4", "sub esp, 0x28"], ["0x100650e7", "mov eax, dword ptr [esp + 0x40]"]]}, {"both": [["0x100b6e17", "push ebx", "0x100650eb"]]}, {"orig": [["0x100b6e18", "mov eax, dword ptr [ecx]"], ["0x100b6e1a", "mov edx, dword ptr [esp + 0x5c]"]], "recomp": []}, {"both": [["0x100b6e1e", "push esi", "0x100650ec"]]}, {"orig": [["0x100b6e1f", "mov dword ptr [esp + 8], eax"]], "recomp": []}, {"both": [["0x100b6e23", "push edi", "0x100650ed"], ["0x100b6e24", "push ebp", "0x100650ee"]]}, {"orig": [["0x100b6e25", "mov ecx, dword ptr [edx]"], ["0x100b6e27", "mov eax, dword ptr [esp + 0x54]"], ["0x100b6e2b", "mov edx, dword ptr [esp + 0x58]"]], "recomp": [["0x100650ef", "mov edi, dword ptr [ecx]"], ["0x100650f1", "mov esi, dword ptr [eax]"], ["0x100650f3", "mov ecx, dword ptr [esp + 0x3c]"], ["0x100650f7", "mov eax, dword ptr [esp + 0x40]"], ["0x100650fb", "mov dword ptr [esp + 0x10], ecx"], ["0x100650ff", "lea ecx, [esp + 0x10]"], ["0x10065103", "lea edx, [esp + 0x30]"], ["0x10065107", "mov dword ptr [esp + 0x14], eax"], ["0x1006510b", "push ecx"], ["0x1006510c", "xor eax, eax"], ["0x1006510e", "push edx"], ["0x1006510f", "lea ecx, [esp + 0x28]"], ["0x10065113", "mov dword ptr [esp + 0x38], eax"], ["0x10065117", "mov dword ptr [esp + 0x3c], eax"], ["0x1006511b", "call MxRect32::CopyFrom (FUNCTION)"], ["0x10065120", "mov ecx, dword ptr [esp + 0x54]"], ["0x10065124", "mov ebp, dword ptr [esp + 0x58]"], ["0x10065128", "mov eax, dword ptr [esp + 0x44]"], ["0x1006512c", "mov ecx, dword ptr [ecx]"], ["0x1006512e", "mov ebp, dword ptr [ebp]"], ["0x10065131", "dec eax"], ["0x10065132", "mov edx, dword ptr [esp + 0x5c]"], ["0x10065136", "mov dword ptr [esp + 0x18], eax"], ["0x1006513a", "mov eax, dword ptr [esp + 0x48]"], ["0x1006513e", "mov edx, dword ptr [edx]"], ["0x10065140", "dec eax"], ["0x10065141", "add edx, edi"], ["0x10065143", "mov dword ptr [esp + 0x1c], eax"], ["0x10065147", "mov eax, dword ptr [esp + 0x60]"], ["0x1006514b", "mov ebx, dword ptr [eax]"], ["0x1006514d", "add ebx, esi"], ["0x1006514f", "cmp dword ptr [esp + 0x28], edi"], ["0x10065153", "jle 0xd2"], ["0x10065159", "cmp edx, dword ptr [esp + 0x20]"], ["0x1006515d", "jle 0xc8"], ["0x10065163", "cmp dword ptr [esp + 0x2c], esi"], ["0x10065167", "jle 0xbe"], ["0x1006516d", "cmp ebx, dword ptr [esp + 0x24]"], ["0x10065171", "jle 0xb4"], ["0x10065177", "mov eax, dword ptr [esp + 0x28]"], ["0x1006517b", "cmp edx, eax"], ["0x1006517d", "jl 0x2"], ["0x1006517f", "mov edx, eax"], ["0x10065181", "mov eax, dword ptr [esp + 0x2c]"], ["0x10065185", "cmp ebx, eax"], ["0x10065187", "jl 0x2"], ["0x10065189", "mov ebx, eax"], ["0x1006518b", "sub edx, edi"], ["0x1006518d", "sub ebx, esi"], ["0x1006518f", "mov eax, dword ptr [esp + 0x20]"], ["0x10065193", "cmp eax, edi"], ["0x10065195", "jg 0x2"], ["0x10065197", "mov eax, edi"], ["0x10065199", "sub eax, edi"], ["0x1006519b", "mov edi, dword ptr [esp + 0x24]"], ["0x1006519f", "add eax, ecx"], ["0x100651a1", "cmp edi, esi"], ["0x100651a3", "jg 0x2"], ["0x100651a5", "mov edi, esi"], ["0x100651a7", "sub edi, esi"], ["0x100651a9", "add edx, ecx"], ["0x100651ab", "add ebx, ebp"], ["0x100651ad", "lea esi, [edi + ebp]"], ["0x100651b0", "cmp eax, dword ptr [esp + 0x18]"], ["0x100651b4", "jge 0x6b"], ["0x100651b6", "test edx, edx"], ["0x100651b8", "jle 0x67"], ["0x100651ba", "cmp esi, dword ptr [esp + 0x1c]"], ["0x100651be", "jge 0x61"], ["0x100651c0", "test ebx, ebx"], ["0x100651c2", "jle 0x5d"], ["0x100651c4", "test eax, eax"], ["0x100651c6", "jg 0x2"], ["0x100651c8", "xor eax, eax"], ["0x100651ca", "test esi, esi"], ["0x100651cc", "jg 0x2"]]}, {"both": [["0x100b6e2f", "xor esi, esi", "0x100651ce"]]}, {"orig": [["0x100b6e31", "mov dword ptr [esp + 0x14], ecx"], ["0x100b6e35", "lea ecx, [esp + 0x28]"], ["0x100b6e39", "mov dword ptr [esp + 0x20], eax"], ["0x100b6e3d", "lea eax, [esp + 0x20]"], ["0x100b6e41", "mov dword ptr [esp + 0x24], edx"], ["0x100b6e45", "mov dword ptr [esp + 0x28], esi"], ["0x100b6e49", "push eax"], ["0x100b6e4a", "mov dword ptr [esp + 0x30], esi"], ["0x100b6e4e", "push ecx"], ["0x100b6e4f", "lea ecx, [esp + 0x38]"], ["0x100b6e53", "call MxRect32::CopyFrom (FUNCTION)"], ["0x100b6e58", "mov ecx, dword ptr [esp + 0x6c]"], ["0x100b6e5c", "mov ebx, dword ptr [esp + 0x70]"], ["0x100b6e60", "mov edx, dword ptr [ecx]"], ["0x100b6e62", "mov eax, dword ptr [ebx]"], ["0x100b6e64", "mov ecx, dword ptr [esp + 0x5c]"], ["0x100b6e68", "mov dword ptr [esp + 0x18], edx"], ["0x100b6e6c", "mov edx, dword ptr [esp + 0x60]"], ["0x100b6e70", "mov dword ptr [esp + 0x1c], eax"], ["0x100b6e74", "lea eax, [esp + 0x28]"], ["0x100b6e78", "mov dword ptr [esp + 0x20], ecx"], ["0x100b6e7c", "lea ecx, [esp + 0x20]"], ["0x100b6e80", "mov dword ptr [esp + 0x24], edx"], ["0x100b6e84", "mov dword ptr [esp + 0x28], esi"], ["0x100b6e88", "push ecx"], ["0x100b6e89", "lea ecx, [esp + 0x44]"], ["0x100b6e8d", "push eax"], ["0x100b6e8e", "mov dword ptr [esp + 0x34], esi"], ["0x100b6e92", "call MxRect32::CopyFrom (FUNCTION)"], ["0x100b6e97", "mov edx, dword ptr [esp + 0x74]"], ["0x100b6e9b", "mov esi, dword ptr [esp + 0x78]"], ["0x100b6e9f", "mov ecx, dword ptr [esp + 0x10]"], ["0x100b6ea3", "mov ebp, dword ptr [edx]"], ["0x100b6ea5", "add ebp, dword ptr [esp + 0x10]"], ["0x100b6ea9", "mov eax, dword ptr [esi]"], ["0x100b6eab", "add eax, dword ptr [esp + 0x14]"], ["0x100b6eaf", "cmp dword ptr [esp + 0x38], ecx"], ["0x100b6eb3", "jle 0xf8"], ["0x100b6eb9", "cmp ebp, dword ptr [esp + 0x30]"], ["0x100b6ebd", "jle 0xee"], ["0x100b6ec3", "mov ecx, dword ptr [esp + 0x14]"], ["0x100b6ec7", "cmp dword ptr [esp + 0x3c], ecx"], ["0x100b6ecb", "jle 0xe0"], ["0x100b6ed1", "cmp eax, dword ptr [esp + 0x34]"], ["0x100b6ed5", "jle 0xd6"], ["0x100b6edb", "mov ecx, dword ptr [esp + 0x38]"], ["0x100b6edf", "cmp ebp, ecx"]], "recomp": [["0x100651d0", "mov edi, dword ptr [esp + 0x18]"], ["0x100651d4", "cmp edx, edi"]]}, {"both": [["0x100b6ee1", "jl 0x2", "0x100651d6"]]}, {"orig": [["0x100b6ee3", "mov ebp, ecx"], ["0x100b6ee5", "mov ecx, dword ptr [esp + 0x3c]"], ["0x100b6ee9", "cmp eax, ecx"]], "recomp": [["0x100651d8", "mov edx, edi"], ["0x100651da", "mov edi, dword ptr [esp + 0x1c]"], ["0x100651de", "cmp ebx, edi"]]}, {"both": [["0x100b6eeb", "jl 0x2", "0x100651e0"]]}, {"orig": [["0x100b6eed", "mov eax, ecx"], ["0x100b6eef", "sub ebp, dword ptr [esp + 0x10]"], ["0x100b6ef3", "sub eax, dword ptr [esp + 0x14]"], ["0x100b6ef7", "mov edi, dword ptr [esp + 0x30]"], ["0x100b6efb", "mov ecx, dword ptr [esp + 0x10]"], ["0x100b6eff", "cmp edi, ecx"], ["0x100b6f01", "jg 0x2"], ["0x100b6f03", "mov edi, ecx"], ["0x100b6f05", "sub edi, dword ptr [esp + 0x10]"], ["0x100b6f09", "mov ebx, dword ptr [esp + 0x34]"], ["0x100b6f0d", "add edi, dword ptr [esp + 0x18]"], ["0x100b6f11", "mov ecx, dword ptr [esp + 0x14]"], ["0x100b6f15", "cmp ebx, ecx"], ["0x100b6f17", "jg 0x2"], ["0x100b6f19", "mov ebx, ecx"], ["0x100b6f1b", "sub ebx, dword ptr [esp + 0x14]"], ["0x100b6f1f", "add ebp, dword ptr [esp + 0x18]"], ["0x100b6f23", "add ebx, dword ptr [esp + 0x1c]"], ["0x100b6f27", "add eax, dword ptr [esp + 0x1c]"], ["0x100b6f2b", "cmp edi, dword ptr [esp + 0x48]"], ["0x100b6f2f", "jge 0x76"], ["0x100b6f31", "cmp ebp, dword ptr [esp + 0x40]"], ["0x100b6f35", "jle 0x70"], ["0x100b6f37", "cmp ebx, dword ptr [esp + 0x4c]"], ["0x100b6f3b", "jge 0x6a"], ["0x100b6f3d", "cmp eax, dword ptr [esp + 0x44]"], ["0x100b6f41", "jle 0x64"], ["0x100b6f43", "mov ecx, dword ptr [esp + 0x40]"], ["0x100b6f47", "cmp edi, ecx"], ["0x100b6f49", "jg 0x2"], ["0x100b6f4b", "mov edi, ecx"], ["0x100b6f4d", "mov ecx, dword ptr [esp + 0x44]"], ["0x100b6f51", "cmp ebx, ecx"], ["0x100b6f53", "jg 0x2"], ["0x100b6f55", "mov ebx, ecx"], ["0x100b6f57", "mov ecx, dword ptr [esp + 0x48]"], ["0x100b6f5b", "cmp ebp, ecx"], ["0x100b6f5d", "jl 0x2"], ["0x100b6f5f", "mov ebp, ecx"]], "recomp": [["0x100651e2", "mov ebx, edi"], ["0x100651e4", "sub eax, ecx"], ["0x100651e6", "sub esi, ebp"], ["0x100651e8", "sub edx, ecx"], ["0x100651ea", "sub ebx, ebp"]]}, {"both": [["0x100b6f61", "mov ecx, dword ptr [esp + 0x4c]", "0x100651ec"]]}, {"orig": [], "recomp": [["0x100651f0", "mov ebp, dword ptr [esp + 0x50]"], ["0x100651f4", "mov edi, dword ptr [esp + 0x54]"], ["0x100651f8", "sub edx, eax"], ["0x100651fa", "inc edx"], ["0x100651fb", "add dword ptr [ecx], eax"], ["0x100651fd", "mov ecx, dword ptr [esp + 0x58]"], ["0x10065201", "sub ebx, esi"], ["0x10065203", "inc ebx"], ["0x10065204", "add dword ptr [ebp], esi"], ["0x10065207", "add dword ptr [edi], eax"], ["0x10065209", "mov eax, dword ptr [esp + 0x5c]"], ["0x1006520d", "add dword ptr [ecx], esi"], ["0x1006520f", "mov dword ptr [eax], edx"], ["0x10065211", "mov eax, dword ptr [esp + 0x60]"], ["0x10065215", "pop ebp"], ["0x10065216", "pop edi"], ["0x10065217", "pop esi"], ["0x10065218", "mov dword ptr [eax], ebx"], ["0x1006521a", "mov al, 1"], ["0x1006521c", "pop ebx"], ["0x1006521d", "add esp, 0x28"], ["0x10065220", "ret "], ["0x10065221", "xor al, al"], ["0x10065223", "pop ebp"], ["0x10065224", "pop edi"], ["0x10065225", "pop esi"], ["0x10065226", "pop ebx"], ["0x10065227", "add esp, 0x28"], ["0x1006522a", "ret "], ["0x1006522b", "xor al, al"], ["0x1006522d", "pop ebp"], ["0x1006522e", "pop edi"], ["0x1006522f", "pop esi"], ["0x10065230", "pop ebx"], ["0x10065231", "add esp, 0x28"], ["0x10065234", "ret "]]}]]]}, {"address": "0x100b6fc0", "recomp": "0x10065240", "name": "MxRect32::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100b6ff0", "recomp": "0x10065270", "name": "MakeSourceName", "matching": 1.0, "diff": []}, {"address": "0x100b7050", "recomp": "0x100652d0", "name": "KeyValueStringParse", "matching": 0.9150943396226415, "diff": [["@@ -0x100b7098,55 +0x10065318,55 @@", [{"both": [["0x100b7098", "mov edi, dword ptr [esp + 0x14]", "0x10065318"], ["0x100b709c", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1006531c"], ["0x100b709e", "mov ecx, edx", "0x1006531e"], ["0x100b70a0", "push ', \\t\\r\\n:' (STRING)", "0x10065320"], ["0x100b70a5", "and ecx, 3", "0x10065325"], ["0x100b70a8", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x10065328"], ["0x100b70aa", "mov eax, dword ptr [esp + 0x18]", "0x1006532a"], ["0x100b70ae", "push eax", "0x1006532e"], ["0x100b70af", "call _strtok (FUNCTION)", "0x1006532f"], ["0x100b70b4", "add esp, 8", "0x10065334"]]}, {"orig": [["0x100b70b7", "mov ebp, eax"], ["0x100b70b9", "test ebp, ebp"]], "recomp": [["0x10065337", "mov esi, eax"], ["0x10065339", "test esi, esi"]]}, {"both": [["0x100b70bb", "je 0x88", "0x1006533b"]]}, {"orig": [["0x100b70c1", "mov esi, dword ptr [esp + 0x20]"], ["0x100b70c5", "mov edi, ebp"]], "recomp": [["0x10065341", "mov ebp, dword ptr [esp + 0x20]"], ["0x10065345", "mov edi, esi"]]}, {"both": [["0x100b70c7", "mov ecx, 0xffffffff", "0x10065347"], ["0x100b70cc", "sub eax, eax", "0x1006534c"]]}, {"orig": [], "recomp": [["0x1006534e", "push ebp"]]}, {"both": [["0x100b70ce", "repne scasb al, byte ptr es:[edi]", "0x1006534f"], ["0x100b70d0", "not ecx", "0x10065351"], ["0x100b70d2", "sub bx, cx", "0x10065353"], ["0x100b70d5", "push esi", "0x10065356"]]}, {"orig": [["0x100b70d6", "push ebp"]], "recomp": []}, {"both": [["0x100b70d7", "call __strcmpi (FUNCTION)", "0x10065357"], ["0x100b70dc", "add esp, 8", "0x1006535c"], ["0x100b70df", "test eax, eax", "0x1006535f"], ["0x100b70e1", "je 0x17", "0x10065361"], ["0x100b70e3", "push ', \\t\\r\\n:' (STRING)", "0x10065363"], ["0x100b70e8", "push 0", "0x10065368"], ["0x100b70ea", "call _strtok (FUNCTION)", "0x1006536a"], ["0x100b70ef", "add esp, 8", "0x1006536f"]]}, {"orig": [["0x100b70f2", "mov ebp, eax"], ["0x100b70f4", "test ebp, ebp"]], "recomp": [["0x10065372", "mov esi, eax"], ["0x10065374", "test esi, esi"]]}, {"both": [["0x100b70f6", "jne -0x33", "0x10065376"], ["0x100b70f8", "jmp 0x4f", "0x10065378"], ["0x100b70fa", "mov edx, dword ptr [esp + 0x1c]", "0x1006537a"], ["0x100b70fe", "test edx, edx", "0x1006537e"], ["0x100b7100", "je 0x42", "0x10065380"], ["0x100b7102", "test bx, bx", "0x10065382"], ["0x100b7105", "jle 0x3d", "0x10065385"]]}, {"orig": [["0x100b7107", "mov edi, esi"]], "recomp": [["0x10065387", "mov edi, ebp"]]}, {"both": [["0x100b7109", "mov ecx, 0xffffffff", "0x10065389"], ["0x100b710e", "sub eax, eax", "0x1006538e"], ["0x100b7110", "repne scasb al, byte ptr es:[edi]", "0x10065390"], ["0x100b7112", "not ecx", "0x10065392"]]}, {"orig": [["0x100b7114", "lea eax, [ecx + ebp - 1]"]], "recomp": [["0x10065394", "lea eax, [ecx + esi - 1]"]]}, {"both": [["0x100b7118", "inc eax", "0x10065398"], ["0x100b7119", "cmp byte ptr [eax], 0x2c", "0x10065399"], ["0x100b711c", "je 0x23", "0x1006539c"], ["0x100b711e", "mov cl, byte ptr [eax]", "0x1006539e"], ["0x100b7120", "cmp cl, 0x20", "0x100653a0"], ["0x100b7123", "je 0x1c", "0x100653a3"], ["0x100b7125", "test cl, cl", "0x100653a5"], ["0x100b7127", "je 0x18", "0x100653a7"], ["0x100b7129", "cmp cl, 9", "0x100653a9"], ["0x100b712c", "je 0x13", "0x100653ac"]]}]]]}, {"address": "0x100b7170", "recomp": "0x100653f0", "name": "ContainsPresenter", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b7170,25 +0x100653f0,25 @@", [{"both": [["0x100b7170", "sub esp, 4", "0x100653f0"], ["0x100b7173", "push ebx", "0x100653f3"], ["0x100b7174", "push esi", "0x100653f4"], ["0x100b7175", "mov esi, dword ptr [esp + 0x10]", "0x100653f5"], ["0x100b7179", "push edi", "0x100653f9"], ["0x100b717a", "mov eax, dword ptr [esi + 4]", "0x100653fa"], ["0x100b717d", "mov ecx, dword ptr [eax]", "0x100653fd"], ["0x100b717f", "mov dword ptr [esp + 0xc], ecx", "0x100653ff"]]}, {"orig": [["0x100b7183", "cmp ecx, eax"]], "recomp": [["0x10065403", "cmp eax, ecx"]]}, {"both": [["0x100b7185", "je 0x42", "0x10065405"], ["0x100b7187", "mov edi, dword ptr [esp + 0x18]", "0x10065407"], ["0x100b718b", "mov ebx, dword ptr [esp + 0xc]", "0x1006540b"], ["0x100b718f", "mov ecx, dword ptr [ebx + 8]", "0x1006540f"], ["0x100b7192", "add ebx, 8", "0x10065412"]]}, {"orig": [["0x100b7195", "cmp edi, ecx"]], "recomp": [["0x10065415", "cmp ecx, edi"]]}, {"both": [["0x100b7197", "je 0x39", "0x10065417"], ["0x100b7199", "push 'MxCompositePresenter' (STRING)", "0x10065419"], ["0x100b719e", "mov eax, dword ptr [ecx]", "0x1006541e"], ["0x100b71a0", "call dword ptr [eax + 0x10]", "0x10065420"], ["0x100b71a3", "test al, al", "0x10065423"], ["0x100b71a5", "je 0x13", "0x10065425"], ["0x100b71a7", "push edi", "0x10065427"], ["0x100b71a8", "mov eax, dword ptr [ebx]", "0x10065428"], ["0x100b71aa", "add eax, 0x40", "0x1006542a"], ["0x100b71ad", "push eax", "0x1006542d"]]}]]]}, {"address": "0x100b71e0", "recomp": "0x10065460", "name": "OmniError", "matching": 1.0, "diff": []}, {"address": "0x100b7210", "recomp": "0x10065490", "name": "SetOmniUserMessage", "matching": 1.0, "diff": []}, {"address": "0x100b7220", "recomp": "0x100654a0", "name": "FUN_100b7220", "matching": 0.7590361445783133, "diff": [["@@ -0x100b7226,71 +0x100654a6,70 @@", [{"both": [["0x100b7226", "push ebp", "0x100654a6"], ["0x100b7227", "mov ebp, esp", "0x100654a7"], ["0x100b7229", "push -1", "0x100654a9"], ["0x100b722b", "push <OFFSET1>", "0x100654ab"], ["0x100b7230", "push eax", "0x100654b0"], ["0x100b7231", "mov dword ptr fs:[0], esp", "0x100654b1"], ["0x100b7238", "sub esp, 0x14", "0x100654b8"], ["0x100b723b", "push ebx", "0x100654bb"], ["0x100b723c", "push esi", "0x100654bc"], ["0x100b723d", "push edi", "0x100654bd"]]}, {"orig": [["0x100b723e", "mov esi, dword ptr [ebp + 8]"]], "recomp": []}, {"both": [["0x100b7241", "mov bl, byte ptr [ebp + 0x10]", "0x100654be"]]}, {"orig": [["0x100b7244", "mov edi, dword ptr [ebp + 0xc]"], ["0x100b7247", "mov eax, dword ptr [esi + 0x30]"]], "recomp": [["0x100654c1", "mov edi, dword ptr [ebp + 8]"], ["0x100654c4", "mov esi, dword ptr [ebp + 0xc]"]]}, {"both": [["0x100b724a", "test bl, bl", "0x100654c7"]]}, {"orig": [], "recomp": [["0x100654c9", "mov eax, dword ptr [edi + 0x30]"]]}, {"both": [["0x100b724c", "je 0x4", "0x100654cc"]]}, {"orig": [["0x100b724e", "or eax, edi"], ["0x100b7250", "jmp 0x8"]], "recomp": [["0x100654ce", "or eax, esi"], ["0x100654d0", "jmp 0x6"], ["0x100654d2", "mov ecx, esi"], ["0x100654d4", "not ecx"], ["0x100654d6", "and eax, ecx"], ["0x100654d8", "mov dword ptr [edi + 0x30], eax"], ["0x100654db", "mov eax, dword ptr [edi]"], ["0x100654dd", "push 'MxDSMultiAction' (STRING)"]]}, {"both": [["0x100b7252", "mov ecx, edi", "0x100654e2"]]}, {"orig": [["0x100b7254", "not ecx"], ["0x100b7256", "and ecx, eax"], ["0x100b7258", "mov eax, ecx"], ["0x100b725a", "mov dword ptr [esi + 0x30], eax"], ["0x100b725d", "mov eax, dword ptr [esi]"], ["0x100b725f", "push 'MxDSMultiAction' (STRING)"], ["0x100b7264", "mov ecx, esi"]], "recomp": []}, {"both": [["0x100b7266", "call dword ptr [eax + 0x10]", "0x100654e4"], ["0x100b7269", "test al, al", "0x100654e7"], ["0x100b726b", "je 0x84", "0x100654e9"]]}, {"orig": [["0x100b7271", "mov eax, dword ptr [esi + 0x98]"]], "recomp": [["0x100654ef", "mov eax, dword ptr [edi + 0x98]"]]}, {"both": [["0x100b7277", "lea ecx, [ebp - 0x1c]", "0x100654f5"]]}, {"orig": [["0x100b727a", "xor esi, esi"]], "recomp": [["0x100654f8", "xor edi, edi"]]}, {"both": [["0x100b727c", "mov dword ptr [ebp - 0x20], eax", "0x100654fa"], ["0x100b727f", "call MxCore::MxCore (FUNCTION)", "0x100654fd"], ["0x100b7284", "mov eax, dword ptr [ebp - 0x20]", "0x10065502"]]}, {"orig": [["0x100b7287", "mov dword ptr [ebp - 4], esi"]], "recomp": [["0x10065505", "mov dword ptr [ebp - 4], edi"]]}, {"both": [["0x100b728a", "mov dword ptr [ebp - 0x14], eax", "0x10065508"]]}, {"orig": [["0x100b728d", "mov dword ptr [ebp - 0x10], esi"]], "recomp": [["0x1006550b", "mov dword ptr [ebp - 0x10], edi"]]}, {"both": [["0x100b7290", "mov dword ptr [ebp - 0x1c], MxListCursor<MxDSAction *>::`vftable' (VTABLE)", "0x1006550e"], ["0x100b7297", "mov dword ptr [ebp - 4], 1", "0x10065515"], ["0x100b729e", "mov dword ptr [ebp - 0x1c], MxDSActionListCursor::`vftable' (VTABLE)", "0x1006551c"], ["0x100b72a5", "mov dword ptr [ebp - 4], 2", "0x10065523"], ["0x100b72ac", "mov eax, 0xffffffff", "0x1006552a"]]}, {"orig": [["0x100b72b1", "cmp dword ptr [ebp - 0x10], esi"]], "recomp": [["0x1006552f", "cmp dword ptr [ebp - 0x10], edi"]]}, {"both": [["0x100b72b4", "jne 0x8", "0x10065532"], ["0x100b72b6", "mov eax, dword ptr [ebp - 0x14]", "0x10065534"], ["0x100b72b9", "mov ecx, dword ptr [eax + 0x10]", "0x10065537"], ["0x100b72bc", "jmp 0x6", "0x1006553a"], ["0x100b72be", "mov eax, dword ptr [ebp - 0x10]", "0x1006553c"], ["0x100b72c1", "mov ecx, dword ptr [eax + 8]", "0x1006553f"], ["0x100b72c4", "mov dword ptr [ebp - 0x10], ecx", "0x10065542"]]}, {"orig": [["0x100b72c7", "cmp dword ptr [ebp - 0x10], esi"]], "recomp": [["0x10065545", "cmp dword ptr [ebp - 0x10], edi"]]}, {"both": [["0x100b72ca", "je 0x1d", "0x10065548"], ["0x100b72cc", "mov eax, dword ptr [ebp - 0x10]", "0x1006554a"]]}, {"orig": [["0x100b72cf", "cmp dword ptr [ebp - 0x10], esi"]], "recomp": [["0x1006554d", "cmp dword ptr [ebp - 0x10], edi"]]}, {"both": [["0x100b72d2", "mov ecx, dword ptr [eax]", "0x10065550"], ["0x100b72d4", "mov dword ptr [ebp - 0x20], ecx", "0x10065552"], ["0x100b72d7", "je 0x10", "0x10065555"], ["0x100b72d9", "push ebx", "0x10065557"], ["0x100b72da", "mov eax, dword ptr [ebp - 0x20]", "0x10065558"]]}, {"orig": [["0x100b72dd", "push edi"]], "recomp": [["0x1006555b", "push esi"]]}, {"both": [["0x100b72de", "push eax", "0x1006555c"], ["0x100b72df", "call FUN_100b7220 (FUNCTION)", "0x1006555d"], ["0x100b72e4", "add esp, 0xc", "0x10065562"], ["0x100b72e7", "jmp -0x38", "0x10065565"], ["0x100b72e9", "mov dword ptr [ebp - 4], 0xffffffff", "0x10065567"], ["0x100b72f0", "call <OFFSET7>", "0x1006556e"], ["0x100b72f5", "mov eax, dword ptr [ebp - 0xc]", "0x10065573"], ["0x100b72f8", "pop edi", "0x10065576"], ["0x100b72f9", "mov dword ptr fs:[0], eax", "0x10065577"], ["0x100b72ff", "pop esi", "0x1006557d"]]}]], ["@@ -0x100b7301,10 +0x1006557f,11 @@", [{"both": [["0x100b7301", "mov esp, ebp", "0x1006557f"], ["0x100b7303", "pop ebp", "0x10065581"], ["0x100b7304", "ret ", "0x10065582"], ["0x100b7305", "lea ecx, [ebp - 0x1c]", "0x10065583"], ["0x100b7308", "jmp MxCore::~MxCore (FUNCTION)", "0x10065586"], ["0x100b730d", "lea ecx, [ebp - 0x1c]", "0x1006558b"], ["0x100b7310", "jmp MxListCursor<MxDSAction *>::~MxListCursor<MxDSAction *> (FUNCTION)", "0x1006558e"], ["0x100b7315", "mov eax, <OFFSET10>", "0x10065593"], ["0x100b731a", "jmp ___CxxFrameHandler (FUNCTION)", "0x10065598"], ["0x100b731f", "lea ecx, [ebp - 0x1c]", "0x1006559d"]]}, {"orig": [], "recomp": [["0x100655a0", "jmp MxDSActionListCursor::~MxDSActionListCursor (FUNCTION)"]]}]]]}, {"address": "0x100b7330", "recomp": "0x1005c1a0", "name": "MxVariableTable::Compare", "matching": 1.0, "diff": []}, {"address": "0x100b7370", "recomp": "0x1005c1e0", "name": "MxVariableTable::Hash", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b7370,14 +0x1005c1e0,14 @@", [{"both": [["0x100b7370", "mov eax, dword ptr [esp + 4]", "0x1005c1e0"], ["0x100b7374", "push esi", "0x1005c1e4"], ["0x100b7375", "xor edx, edx", "0x1005c1e5"], ["0x100b7377", "mov ecx, dword ptr [eax + 0xc]", "0x1005c1e7"], ["0x100b737a", "xor eax, eax", "0x1005c1ea"], ["0x100b737c", "cmp byte ptr [ecx], al", "0x1005c1ec"], ["0x100b737e", "je 0xd", "0x1005c1ee"]]}, {"orig": [["0x100b7380", "movsx esi, byte ptr [edx + ecx]"]], "recomp": [["0x1005c1f0", "movsx esi, byte ptr [ecx + edx]"]]}, {"both": [["0x100b7384", "add eax, esi", "0x1005c1f4"], ["0x100b7386", "inc edx", "0x1005c1f6"]]}, {"orig": [["0x100b7387", "cmp byte ptr [edx + ecx], 0"]], "recomp": [["0x1005c1f7", "cmp byte ptr [ecx + edx], 0"]]}, {"both": [["0x100b738b", "jne -0xd", "0x1005c1fb"], ["0x100b738d", "pop esi", "0x1005c1fd"], ["0x100b738e", "ret 4", "0x1005c1fe"]]}]]]}, {"address": "0x100b73a0", "recomp": "0x1005c210", "name": "MxVariableTable::SetVariable", "matching": 0.991869918699187, "diff": [["@@ -0x100b7447,23 +0x1005c2b7,22 @@", [{"both": [["0x100b7447", "mov ecx, dword ptr [ebp - 0x10]", "0x1005c2b7"], ["0x100b744a", "add ecx, 0x14", "0x1005c2ba"], ["0x100b744d", "jmp MxString::~MxString (FUNCTION)", "0x1005c2bd"], ["0x100b7452", "mov ecx, dword ptr [ebp - 0x10]", "0x1005c2c2"], ["0x100b7455", "add ecx, 4", "0x1005c2c5"], ["0x100b7458", "jmp MxString::~MxString (FUNCTION)", "0x1005c2c8"], ["0x100b745d", "mov dword ptr [ebp - 0x14], 0", "0x1005c2cd"], ["0x100b7464", "mov byte ptr [ebp - 4], 1", "0x1005c2d4"], ["0x100b7468", "mov eax, dword ptr [ebp - 0x14]", "0x1005c2d8"], ["0x100b746b", "mov ecx, dword ptr [ebp - 0x24]", "0x1005c2db"]]}, {"orig": [], "recomp": [["0x1005c2de", "push eax"]]}, {"both": [["0x100b746e", "mov dword ptr [ebp - 0x18], eax", "0x1005c2df"]]}, {"orig": [["0x100b7471", "mov eax, dword ptr [ebp - 0x14]"], ["0x100b7474", "push eax"]], "recomp": []}, {"both": [["0x100b7475", "mov ebx, dword ptr [ecx]", "0x1005c2e2"], ["0x100b7477", "call dword ptr [ebx + 0x18]", "0x1005c2e4"], ["0x100b747a", "mov edi, eax", "0x1005c2e7"], ["0x100b747c", "mov ecx, dword ptr [ebp - 0x24]", "0x1005c2e9"], ["0x100b747f", "sub edx, edx", "0x1005c2ec"], ["0x100b7481", "div dword ptr [ecx + 0x14]", "0x1005c2ee"], ["0x100b7484", "mov eax, dword ptr [ecx + 0x10]", "0x1005c2f1"], ["0x100b7487", "mov ebx, dword ptr [eax + edx*4]", "0x1005c2f4"], ["0x100b748a", "test ebx, ebx", "0x1005c2f7"], ["0x100b748c", "je 0x24", "0x1005c2f9"]]}]], ["@@ -0x100b7652,10 +0x1005c4bf,11 @@", [{"both": [["0x100b7652", "mov eax, dword ptr [ebp - 0x10]", "0x1005c4bf"], ["0x100b7655", "push eax", "0x1005c4c2"], ["0x100b7656", "call ??3@YAXPAX@Z (FUNCTION)", "0x1005c4c3"], ["0x100b765b", "add esp, 4", "0x1005c4c8"], ["0x100b765e", "ret ", "0x1005c4cb"], ["0x100b765f", "lea ecx, [ebp - 0x2c]", "0x1005c4cc"], ["0x100b7662", "jmp MxCore::~MxCore (FUNCTION)", "0x1005c4cf"], ["0x100b7667", "mov eax, <OFFSET17>", "0x1005c4d4"], ["0x100b766c", "jmp ___CxxFrameHandler (FUNCTION)", "0x1005c4d9"], ["0x100b7671", "lea ecx, [ebp - 0x2c]", "0x1005c4de"]]}, {"orig": [], "recomp": [["0x1005c4e1", "jmp MxHashTableCursor<MxVariable *>::~MxHashTableCursor<MxVariable *> (FUNCTION)"]]}]]]}, {"address": "0x100b7680", "recomp": "0x1005c4f0", "name": "MxHashTableCursor<MxVariable *>::~MxHashTableCursor<MxVariable *>", "matching": 1.0, "diff": []}, {"address": "0x100b76d0", "recomp": "0x1005c540", "name": "MxHashTableCursor<MxVariable *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b7740", "recomp": "0x1005c5b0", "name": "MxVariableTable::SetVariable", "matching": 1.0, "diff": []}, {"address": "0x100b78f0", "recomp": "0x1005c760", "name": "MxVariableTable::GetVariable", "matching": 1.0, "diff": []}, {"address": "0x100b7ab0", "recomp": "0x1005c920", "name": "MxHashTable<MxVariable *>::Resize", "matching": 1.0, "diff": []}, {"address": "0x100b7b80", "recomp": "0x1005c9f0", "name": "MxHashTable<MxVariable *>::NodeInsert", "matching": 1.0, "diff": []}, {"address": "0x100b7bb0", "recomp": "0x10061ea0", "name": "MxDSSubscriber::MxDSSubscriber", "matching": 1.0, "diff": []}, {"address": "0x100b7d00", "recomp": "0x10061ff0", "name": "MxStreamChunkList::~MxStreamChunkList", "matching": 1.0, "diff": []}, {"address": "0x100b7d50", "recomp": "0x10062040", "name": "MxDSSubscriber::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100b7d60", "recomp": "0x10062050", "name": "MxDSSubscriber::IsA", "matching": 1.0, "diff": []}, {"address": "0x100b7de0", "recomp": "0x100620d0", "name": "MxDSSubscriber::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b7e00", "recomp": "0x100620f0", "name": "MxDSSubscriber::~MxDSSubscriber", "matching": 1.0, "diff": []}, {"address": "0x100b7ed0", "recomp": "0x100621c0", "name": "MxDSSubscriber::Create", "matching": 1.0, "diff": []}, {"address": "0x100b8030", "recomp": "0x10062320", "name": "MxDSSubscriber::DestroyData", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b8030,55 +0x10062320,55 @@", [{"both": [["0x100b8030", "sub esp, 8", "0x10062320"], ["0x100b8033", "push ebx", "0x10062323"], ["0x100b8034", "push esi", "0x10062324"], ["0x100b8035", "push edi", "0x10062325"], ["0x100b8036", "mov esi, ecx", "0x10062326"], ["0x100b8038", "push ebp", "0x10062328"], ["0x100b8039", "xor edi, edi", "0x10062329"], ["0x100b803b", "cmp dword ptr [esi + 0x40], edi", "0x1006232b"], ["0x100b803e", "je 0xf5", "0x1006232e"], ["0x100b8044", "mov dword ptr [esp + 0x10], edi", "0x10062334"]]}, {"orig": [["0x100b8048", "mov eax, dword ptr [esi + 0x20]"], ["0x100b804b", "mov ecx, dword ptr [eax + 8]"], ["0x100b804e", "mov ecx, dword ptr [ecx + 0x10]"], ["0x100b8051", "mov dword ptr [eax + 0xc], ecx"], ["0x100b8054", "test ecx, ecx"]], "recomp": [["0x10062338", "mov ecx, dword ptr [esi + 0x20]"], ["0x1006233b", "mov eax, dword ptr [ecx + 8]"], ["0x1006233e", "mov eax, dword ptr [eax + 0x10]"], ["0x10062341", "mov dword ptr [ecx + 0xc], eax"], ["0x10062344", "test eax, eax"]]}, {"both": [["0x100b8056", "je 0xa5", "0x10062346"]]}, {"orig": [["0x100b805c", "mov eax, dword ptr [ecx]"], ["0x100b805e", "test ecx, ecx"], ["0x100b8060", "mov dword ptr [esp + 0x10], eax"]], "recomp": [["0x1006234c", "mov ecx, dword ptr [eax]"], ["0x1006234e", "test eax, eax"], ["0x10062350", "mov dword ptr [esp + 0x10], ecx"]]}, {"both": [["0x100b8064", "je 0x97", "0x10062354"]]}, {"orig": [["0x100b806a", "mov ebx, dword ptr [esi + 0x20]"], ["0x100b806d", "mov ecx, dword ptr [ebx + 0xc]"]], "recomp": [["0x1006235a", "mov ebp, dword ptr [esi + 0x20]"], ["0x1006235d", "mov ecx, dword ptr [ebp + 0xc]"]]}, {"both": [["0x100b8070", "test ecx, ecx", "0x10062360"], ["0x100b8072", "je 0x3a", "0x10062362"]]}, {"orig": [["0x100b8074", "mov ebp, dword ptr [ebx + 8]"]], "recomp": [["0x10062364", "mov ebx, dword ptr [ebp + 8]"]]}, {"both": [["0x100b8077", "mov edx, dword ptr [ecx + 8]", "0x10062367"], ["0x100b807a", "cmp dword ptr [ecx + 4], edi", "0x1006236a"], ["0x100b807d", "je 0x8", "0x1006236d"], ["0x100b807f", "mov eax, dword ptr [ecx + 4]", "0x1006236f"], ["0x100b8082", "mov dword ptr [eax + 8], edx", "0x10062372"], ["0x100b8085", "jmp 0x3", "0x10062375"]]}, {"orig": [["0x100b8087", "mov dword ptr [ebp + 0x10], edx"]], "recomp": [["0x10062377", "mov dword ptr [ebx + 0x10], edx"]]}, {"both": [["0x100b808a", "mov eax, dword ptr [ecx + 8]", "0x1006237a"], ["0x100b808d", "test eax, eax", "0x1006237d"], ["0x100b808f", "je 0x8", "0x1006237f"], ["0x100b8091", "mov edx, dword ptr [ecx + 4]", "0x10062381"], ["0x100b8094", "mov dword ptr [eax + 4], edx", "0x10062384"], ["0x100b8097", "jmp 0x6", "0x10062387"], ["0x100b8099", "mov eax, dword ptr [ecx + 4]", "0x10062389"]]}, {"orig": [["0x100b809c", "mov dword ptr [ebp + 0x14], eax"]], "recomp": [["0x1006238c", "mov dword ptr [ebx + 0x14], eax"]]}, {"both": [["0x100b809f", "push ecx", "0x1006238f"], ["0x100b80a0", "call ??3@YAXPAX@Z (FUNCTION)", "0x10062390"], ["0x100b80a5", "add esp, 4", "0x10062395"]]}, {"orig": [["0x100b80a8", "dec dword ptr [ebp + 8]"], ["0x100b80ab", "mov dword ptr [ebx + 0xc], edi"]], "recomp": [["0x10062398", "dec dword ptr [ebx + 8]"], ["0x1006239b", "mov dword ptr [ebp + 0xc], edi"]]}, {"both": [["0x100b80ae", "cmp dword ptr [esp + 0x10], edi", "0x1006239e"], ["0x100b80b2", "je -0x6c", "0x100623a2"], ["0x100b80b4", "mov eax, dword ptr [esp + 0x10]", "0x100623a4"], ["0x100b80b8", "push 1", "0x100623a8"], ["0x100b80ba", "mov ecx, eax", "0x100623aa"], ["0x100b80bc", "mov ebx, dword ptr [eax]", "0x100623ac"], ["0x100b80be", "call dword ptr [ebx]", "0x100623ae"], ["0x100b80c0", "jmp -0x7a", "0x100623b0"], ["0x100b80c2", "mov eax, dword ptr [edx]", "0x100623b2"], ["0x100b80c4", "mov dword ptr [ebx + 0x10], eax", "0x100623b4"]]}]]]}, {"address": "0x100b8150", "recomp": "0x10062440", "name": "MxDSSubscriber::AddData", "matching": 1.0, "diff": []}, {"address": "0x100b8250", "recomp": "0x10062540", "name": "MxDSSubscriber::PopData", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b827c,45 +0x1006256c,45 @@", [{"both": [["0x100b827c", "je 0x12", "0x1006256c"], ["0x100b827e", "mov eax, dword ptr [ecx + 8]", "0x1006256e"], ["0x100b8281", "mov eax, dword ptr [eax + 0x10]", "0x10062571"], ["0x100b8284", "mov dword ptr [ecx + 0xc], eax", "0x10062574"], ["0x100b8287", "test eax, eax", "0x10062577"], ["0x100b8289", "je 0x5", "0x10062579"], ["0x100b828b", "mov eax, dword ptr [eax]", "0x1006257b"], ["0x100b828d", "mov dword ptr [ebp - 0x10], eax", "0x1006257d"], ["0x100b8290", "cmp dword ptr [ebp - 0x10], 0", "0x10062580"], ["0x100b8294", "je 0x87", "0x10062584"]]}, {"orig": [["0x100b829a", "mov ebx, dword ptr [esi + 0x20]"], ["0x100b829d", "mov ecx, dword ptr [ebx + 0xc]"]], "recomp": [["0x1006258a", "mov edi, dword ptr [esi + 0x20]"], ["0x1006258d", "mov ecx, dword ptr [edi + 0xc]"]]}, {"both": [["0x100b82a0", "test ecx, ecx", "0x10062590"], ["0x100b82a2", "je 0x3d", "0x10062592"]]}, {"orig": [["0x100b82a4", "mov edi, dword ptr [ebx + 8]"]], "recomp": [["0x10062594", "mov ebx, dword ptr [edi + 8]"]]}, {"both": [["0x100b82a7", "mov eax, dword ptr [ecx + 4]", "0x10062597"], ["0x100b82aa", "mov edx, dword ptr [ecx + 8]", "0x1006259a"], ["0x100b82ad", "test eax, eax", "0x1006259d"], ["0x100b82af", "je 0x5", "0x1006259f"], ["0x100b82b1", "mov dword ptr [eax + 8], edx", "0x100625a1"], ["0x100b82b4", "jmp 0x3", "0x100625a4"]]}, {"orig": [["0x100b82b6", "mov dword ptr [edi + 0x10], edx"]], "recomp": [["0x100625a6", "mov dword ptr [ebx + 0x10], edx"]]}, {"both": [["0x100b82b9", "mov eax, dword ptr [ecx + 8]", "0x100625a9"], ["0x100b82bc", "test eax, eax", "0x100625ac"], ["0x100b82be", "je 0x8", "0x100625ae"], ["0x100b82c0", "mov edx, dword ptr [ecx + 4]", "0x100625b0"], ["0x100b82c3", "mov dword ptr [eax + 4], edx", "0x100625b3"], ["0x100b82c6", "jmp 0x6", "0x100625b6"], ["0x100b82c8", "mov eax, dword ptr [ecx + 4]", "0x100625b8"]]}, {"orig": [["0x100b82cb", "mov dword ptr [edi + 0x14], eax"]], "recomp": [["0x100625bb", "mov dword ptr [ebx + 0x14], eax"]]}, {"both": [["0x100b82ce", "push ecx", "0x100625be"], ["0x100b82cf", "call ??3@YAXPAX@Z (FUNCTION)", "0x100625bf"], ["0x100b82d4", "add esp, 4", "0x100625c4"]]}, {"orig": [["0x100b82d7", "dec dword ptr [edi + 8]"], ["0x100b82da", "mov dword ptr [ebx + 0xc], 0"]], "recomp": [["0x100625c7", "dec dword ptr [ebx + 8]"], ["0x100625ca", "mov dword ptr [edi + 0xc], 0"]]}, {"both": [["0x100b82e1", "mov ebx, dword ptr [esi + 0x38]", "0x100625d1"], ["0x100b82e4", "push 0xc", "0x100625d4"], ["0x100b82e6", "call ??2@YAPAXI@Z (FUNCTION)", "0x100625d6"], ["0x100b82eb", "mov dword ptr [ebp - 0x14], eax", "0x100625db"], ["0x100b82ee", "add esp, 4", "0x100625de"], ["0x100b82f1", "mov edi, eax", "0x100625e1"], ["0x100b82f3", "xor eax, eax", "0x100625e3"], ["0x100b82f5", "mov dword ptr [ebp - 4], eax", "0x100625e5"], ["0x100b82f8", "test edi, edi", "0x100625e8"], ["0x100b82fa", "je 0xf", "0x100625ea"]]}]]]}, {"address": "0x100b8360", "recomp": "0x10062650", "name": "MxDSSubscriber::PeekData", "matching": 1.0, "diff": []}, {"address": "0x100b8390", "recomp": "0x10062680", "name": "MxDSSubscriber::FreeDataChunk", "matching": 0.7901234567901234, "diff": [["@@ -0x100b8390,67 +0x10062680,67 @@", [{"both": [["0x100b8390", "push ebx", "0x10062680"], ["0x100b8391", "push esi", "0x10062681"]]}, {"orig": [], "recomp": [["0x10062682", "mov esi, dword ptr [esp + 0xc]"]]}, {"both": [["0x100b8392", "push edi", "0x10062686"]]}, {"orig": [["0x100b8393", "mov ebx, ecx"], ["0x100b8395", "mov esi, dword ptr [esp + 0x10]"]], "recomp": []}, {"both": [["0x100b8399", "push ebp", "0x10062687"]]}, {"orig": [], "recomp": [["0x10062688", "mov edi, ecx"]]}, {"both": [["0x100b839a", "test esi, esi", "0x1006268a"], ["0x100b839c", "je 0xa5", "0x1006268c"]]}, {"orig": [["0x100b83a2", "mov edi, dword ptr [ebx + 0x3c]"], ["0x100b83a5", "mov eax, dword ptr [edi + 8]"]], "recomp": [["0x10062692", "mov ebx, dword ptr [edi + 0x3c]"], ["0x10062695", "mov eax, dword ptr [ebx + 8]"]]}, {"both": [["0x100b83a8", "mov eax, dword ptr [eax + 0x10]", "0x10062698"]]}, {"orig": [["0x100b83ab", "mov dword ptr [edi + 0xc], eax"]], "recomp": [["0x1006269b", "mov dword ptr [ebx + 0xc], eax"]]}, {"both": [["0x100b83ae", "test eax, eax", "0x1006269e"], ["0x100b83b0", "je 0x20", "0x100626a0"]]}, {"orig": [["0x100b83b2", "mov ecx, dword ptr [edi + 8]"]], "recomp": [["0x100626a2", "mov ecx, dword ptr [ebx + 8]"]]}, {"both": [["0x100b83b5", "push esi", "0x100626a5"]]}, {"orig": [["0x100b83b6", "mov eax, dword ptr [edi + 0xc]"]], "recomp": [["0x100626a6", "mov eax, dword ptr [ebx + 0xc]"]]}, {"both": [["0x100b83b9", "mov ebp, dword ptr [ecx]", "0x100626a9"], ["0x100b83bb", "mov edx, dword ptr [eax]", "0x100626ab"], ["0x100b83bd", "push edx", "0x100626ad"], ["0x100b83be", "call dword ptr [ebp + 0x14]", "0x100626ae"], ["0x100b83c1", "test al, al", "0x100626b1"], ["0x100b83c3", "je 0xd", "0x100626b3"]]}, {"orig": [["0x100b83c5", "mov eax, dword ptr [edi + 0xc]"]], "recomp": [["0x100626b5", "mov eax, dword ptr [ebx + 0xc]"]]}, {"both": [["0x100b83c8", "mov eax, dword ptr [eax + 8]", "0x100626b8"]]}, {"orig": [["0x100b83cb", "mov dword ptr [edi + 0xc], eax"]], "recomp": [["0x100626bb", "mov dword ptr [ebx + 0xc], eax"]]}, {"both": [["0x100b83ce", "test eax, eax", "0x100626be"], ["0x100b83d0", "jne -0x20", "0x100626c0"]]}, {"orig": [["0x100b83d2", "cmp dword ptr [edi + 0xc], 0"]], "recomp": [["0x100626c2", "cmp dword ptr [ebx + 0xc], 0"]]}, {"both": [["0x100b83d6", "je 0x5d", "0x100626c6"]]}, {"orig": [["0x100b83d8", "mov edi, dword ptr [ebx + 0x3c]"], ["0x100b83db", "mov ecx, dword ptr [edi + 0xc]"]], "recomp": [["0x100626c8", "mov ebx, dword ptr [edi + 0x3c]"], ["0x100626cb", "mov ecx, dword ptr [ebx + 0xc]"]]}, {"both": [["0x100b83de", "test ecx, ecx", "0x100626ce"], ["0x100b83e0", "je 0x40", "0x100626d0"]]}, {"orig": [["0x100b83e2", "mov ebx, dword ptr [edi + 8]"]], "recomp": [["0x100626d2", "mov edi, dword ptr [ebx + 8]"]]}, {"both": [["0x100b83e5", "mov eax, dword ptr [ecx + 4]", "0x100626d5"], ["0x100b83e8", "lea edx, [ecx + 8]", "0x100626d8"], ["0x100b83eb", "test eax, eax", "0x100626db"], ["0x100b83ed", "je 0x7", "0x100626dd"], ["0x100b83ef", "mov ebp, dword ptr [edx]", "0x100626df"], ["0x100b83f1", "mov dword ptr [eax + 8], ebp", "0x100626e1"], ["0x100b83f4", "jmp 0x5", "0x100626e4"], ["0x100b83f6", "mov eax, dword ptr [edx]", "0x100626e6"]]}, {"orig": [["0x100b83f8", "mov dword ptr [ebx + 0x10], eax"]], "recomp": [["0x100626e8", "mov dword ptr [edi + 0x10], eax"]]}, {"both": [["0x100b83fb", "mov eax, dword ptr [edx]", "0x100626eb"], ["0x100b83fd", "test eax, eax", "0x100626ed"], ["0x100b83ff", "je 0x8", "0x100626ef"], ["0x100b8401", "mov edx, dword ptr [ecx + 4]", "0x100626f1"], ["0x100b8404", "mov dword ptr [eax + 4], edx", "0x100626f4"], ["0x100b8407", "jmp 0x6", "0x100626f7"], ["0x100b8409", "mov eax, dword ptr [ecx + 4]", "0x100626f9"]]}, {"orig": [["0x100b840c", "mov dword ptr [ebx + 0x14], eax"]], "recomp": [["0x100626fc", "mov dword ptr [edi + 0x14], eax"]]}, {"both": [["0x100b840f", "push ecx", "0x100626ff"], ["0x100b8410", "call ??3@YAXPAX@Z (FUNCTION)", "0x10062700"], ["0x100b8415", "add esp, 4", "0x10062705"]]}, {"orig": [["0x100b8418", "dec dword ptr [ebx + 8]"], ["0x100b841b", "mov dword ptr [edi + 0xc], 0"]], "recomp": [["0x10062708", "dec dword ptr [edi + 8]"], ["0x1006270b", "mov dword ptr [ebx + 0xc], 0"]]}, {"both": [["0x100b8422", "test esi, esi", "0x10062712"], ["0x100b8424", "je 0x21", "0x10062714"], ["0x100b8426", "push 1", "0x10062716"], ["0x100b8428", "mov eax, dword ptr [esi]", "0x10062718"], ["0x100b842a", "mov ecx, esi", "0x1006271a"], ["0x100b842c", "call dword ptr [eax]", "0x1006271c"], ["0x100b842e", "pop ebp", "0x1006271e"], ["0x100b842f", "pop edi", "0x1006271f"], ["0x100b8430", "pop esi", "0x10062720"], ["0x100b8431", "pop ebx", "0x10062721"]]}]]]}, {"address": "0x100b8450", "recomp": "0x1006dfe0", "name": "MxStreamListMxDSSubscriber::Find", "matching": 0.9714285714285714, "diff": [["@@ -0x100b8450,17 +0x1006dfe0,17 @@", [{"both": [["0x100b8450", "mov edx, dword ptr [esp + 4]", "0x1006dfe0"], ["0x100b8454", "sub esp, 4", "0x1006dfe4"], ["0x100b8457", "mov ecx, dword ptr [ecx + 4]", "0x1006dfe7"], ["0x100b845a", "push esi", "0x1006dfea"], ["0x100b845b", "mov eax, dword ptr [ecx]", "0x1006dfeb"], ["0x100b845d", "mov dword ptr [esp + 4], eax", "0x1006dfed"]]}, {"orig": [["0x100b8461", "cmp ecx, dword ptr [esp + 4]"]], "recomp": [["0x1006dff1", "cmp dword ptr [esp + 4], ecx"]]}, {"both": [["0x100b8465", "je 0x37", "0x1006dff5"], ["0x100b8467", "mov esi, dword ptr [edx + 0x1c]", "0x1006dff7"], ["0x100b846a", "cmp esi, -1", "0x1006dffa"], ["0x100b846d", "je 0xc", "0x1006dffd"], ["0x100b846f", "mov eax, dword ptr [esp + 4]", "0x1006dfff"], ["0x100b8473", "mov eax, dword ptr [eax + 8]", "0x1006e003"], ["0x100b8476", "cmp dword ptr [eax + 0x44], esi", "0x1006e006"], ["0x100b8479", "jne 0x17", "0x1006e009"], ["0x100b847b", "mov si, word ptr [edx + 0x24]", "0x1006e00b"], ["0x100b847f", "cmp si, -2", "0x1006e00f"]]}]]]}, {"address": "0x100b84c0", "recomp": "0x10062f10", "name": "MxMediaManager::MxMediaManager", "matching": 1.0, "diff": []}, {"address": "0x100b8540", "recomp": "0x10062f90", "name": "MxMediaManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b8560", "recomp": "0x10062fb0", "name": "MxMediaManager::~MxMediaManager", "matching": 1.0, "diff": []}, {"address": "0x100b85d0", "recomp": "0x10063020", "name": "MxMediaManager::Init", "matching": 1.0, "diff": []}, {"address": "0x100b85e0", "recomp": "0x10063030", "name": "MxMediaManager::InitPresenters", "matching": 1.0, "diff": []}, {"address": "0x100b8710", "recomp": "0x10063160", "name": "MxMediaManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b8790", "recomp": "0x100631e0", "name": "MxMediaManager::Tickle", "matching": 1.0, "diff": []}, {"address": "0x100b88c0", "recomp": "0x10063310", "name": "MxMediaManager::RegisterPresenter", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b88d1,46 +0x10063321,46 @@", [{"both": [["0x100b88d1", "mov dword ptr fs:[0], esp", "0x10063321"], ["0x100b88d8", "sub esp, 8", "0x10063328"], ["0x100b88db", "push ebx", "0x1006332b"], ["0x100b88dc", "push esi", "0x1006332c"], ["0x100b88dd", "lea eax, [ecx + 0x10]", "0x1006332d"], ["0x100b88e0", "push edi", "0x10063330"], ["0x100b88e1", "mov esi, ecx", "0x10063331"], ["0x100b88e3", "push eax", "0x10063333"], ["0x100b88e4", "lea ecx, [ebp - 0x10]", "0x10063334"], ["0x100b88e7", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x10063337"]]}, {"orig": [["0x100b88ec", "mov esi, dword ptr [esi + 8]"]], "recomp": [["0x1006333c", "mov ebx, dword ptr [esi + 8]"]]}, {"both": [["0x100b88ef", "push 0xc", "0x1006333f"], ["0x100b88f1", "mov dword ptr [ebp - 4], 0", "0x10063341"]]}, {"orig": [["0x100b88f8", "mov ebx, dword ptr [esi + 0x14]"]], "recomp": [["0x10063348", "mov esi, dword ptr [ebx + 0x14]"]]}, {"both": [["0x100b88fb", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006334b"], ["0x100b8900", "mov dword ptr [ebp - 0x14], eax", "0x10063350"], ["0x100b8903", "add esp, 4", "0x10063353"], ["0x100b8906", "mov byte ptr [ebp - 4], 1", "0x10063356"], ["0x100b890a", "mov edi, eax", "0x1006335a"], ["0x100b890c", "mov eax, 0", "0x1006335c"], ["0x100b8911", "test edi, edi", "0x10063361"], ["0x100b8913", "je 0x11", "0x10063363"], ["0x100b8915", "mov eax, dword ptr [ebp + 8]", "0x10063365"], ["0x100b8918", "mov dword ptr [edi], eax", "0x10063368"], ["0x100b891a", "mov eax, edi", "0x1006336a"]]}, {"orig": [["0x100b891c", "mov dword ptr [edi + 4], ebx"]], "recomp": [["0x1006336c", "mov dword ptr [edi + 4], esi"]]}, {"both": [["0x100b891f", "mov dword ptr [edi + 8], 0", "0x1006336f"], ["0x100b8926", "mov byte ptr [ebp - 4], 0", "0x10063376"]]}, {"orig": [["0x100b892a", "test ebx, ebx"]], "recomp": [["0x1006337a", "test esi, esi"]]}, {"both": [["0x100b892c", "je 0x5", "0x1006337c"]]}, {"orig": [["0x100b892e", "mov dword ptr [ebx + 8], eax"]], "recomp": [["0x1006337e", "mov dword ptr [esi + 8], eax"]]}, {"both": [["0x100b8931", "jmp 0x3", "0x10063381"]]}, {"orig": [["0x100b8933", "mov dword ptr [esi + 0x10], eax"]], "recomp": [["0x10063383", "mov dword ptr [ebx + 0x10], eax"]]}, {"both": [["0x100b8936", "mov dword ptr [ebp - 4], 0xffffffff", "0x10063386"]]}, {"orig": [["0x100b893d", "mov dword ptr [esi + 0x14], eax"], ["0x100b8940", "inc dword ptr [esi + 8]"]], "recomp": [["0x1006338d", "mov dword ptr [ebx + 0x14], eax"], ["0x10063390", "inc dword ptr [ebx + 8]"]]}, {"both": [["0x100b8943", "call <OFFSET4>", "0x10063393"], ["0x100b8948", "mov eax, dword ptr [ebp - 0xc]", "0x10063398"], ["0x100b894b", "pop edi", "0x1006339b"], ["0x100b894c", "mov dword ptr fs:[0], eax", "0x1006339c"], ["0x100b8952", "pop esi", "0x100633a2"], ["0x100b8953", "pop ebx", "0x100633a3"], ["0x100b8954", "mov esp, ebp", "0x100633a4"], ["0x100b8956", "pop ebp", "0x100633a6"], ["0x100b8957", "ret 4", "0x100633a7"], ["0x100b895a", "mov eax, dword ptr [ebp - 0x14]", "0x100633aa"]]}]]]}, {"address": "0x100b8980", "recomp": "0x100633d0", "name": "MxMediaManager::UnregisterPresenter", "matching": 1.0, "diff": []}, {"address": "0x100b8ac0", "recomp": "0x10063510", "name": "MxMediaManager::StopPresenters", "matching": 1.0, "diff": []}, {"address": "0x100b8bb0", "recomp": "0x1006e3c0", "name": "MxTickleThread::MxTickleThread", "matching": 1.0, "diff": []}, {"address": "0x100b8c20", "recomp": "0x1006e430", "name": "MxTickleThread::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b8c90", "recomp": "0x1006e4a0", "name": "MxTickleThread::Run", "matching": 0.5348837209302325, "diff": [["@@ -0x100b8c90,43 +0x1006e4a0,43 @@", [{"both": [["0x100b8c90", "push ebx", "0x1006e4a0"], ["0x100b8c91", "push esi", "0x1006e4a1"], ["0x100b8c92", "push edi", "0x1006e4a2"]]}, {"orig": [], "recomp": [["0x1006e4a3", "mov esi, ecx"]]}, {"both": [["0x100b8c93", "push ebp", "0x1006e4a5"]]}, {"orig": [["0x100b8c94", "mov ebp, ecx"]], "recomp": []}, {"both": [["0x100b8c96", "call Timer (FUNCTION)", "0x1006e4a6"]]}, {"orig": [["0x100b8c9b", "mov esi, eax"], ["0x100b8c9d", "mov edi, dword ptr [ebp + 0x1c]"], ["0x100b8ca0", "neg edi"], ["0x100b8ca2", "cmp byte ptr [ebp + 0xc], 0"]], "recomp": [["0x1006e4ab", "mov edi, eax"], ["0x1006e4ad", "mov ebx, dword ptr [esi + 0x1c]"], ["0x1006e4b0", "neg ebx"], ["0x1006e4b2", "cmp byte ptr [esi + 0xc], 0"]]}, {"both": [["0x100b8ca6", "je 0x45", "0x1006e4b6"]]}, {"orig": [["0x100b8ca8", "cmp byte ptr [esi + 0xc], 0"]], "recomp": [["0x1006e4b8", "cmp byte ptr [edi + 0xc], 0"]]}, {"both": [["0x100b8cac", "je 0x8", "0x1006e4bc"]]}, {"orig": [["0x100b8cae", "mov ebx, dword ptr [MxTimer::g_lastTimeTimerStarted (DATA)]"]], "recomp": [["0x1006e4be", "mov ebp, dword ptr [MxTimer::g_lastTimeTimerStarted (DATA)]"]]}, {"both": [["0x100b8cb4", "jmp 0x9", "0x1006e4c4"]]}, {"orig": [["0x100b8cb6", "mov ebx, dword ptr [MxTimer::g_lastTimeCalculated (DATA)]"], ["0x100b8cbc", "sub ebx, dword ptr [esi + 8]"], ["0x100b8cbf", "cmp ebx, edi"]], "recomp": [["0x1006e4c6", "mov ebp, dword ptr [MxTimer::g_lastTimeCalculated (DATA)]"], ["0x1006e4cc", "sub ebp, dword ptr [edi + 8]"], ["0x1006e4cf", "cmp ebp, ebx"]]}, {"both": [["0x100b8cc1", "jge 0x5", "0x1006e4d1"]]}, {"orig": [["0x100b8cc3", "mov edi, dword ptr [ebp + 0x1c]"], ["0x100b8cc6", "neg edi"], ["0x100b8cc8", "mov eax, dword ptr [ebp + 0x1c]"], ["0x100b8ccb", "sub eax, ebx"], ["0x100b8ccd", "add eax, edi"]], "recomp": [["0x1006e4d3", "mov ebx, dword ptr [esi + 0x1c]"], ["0x1006e4d6", "neg ebx"], ["0x1006e4d8", "mov eax, dword ptr [esi + 0x1c]"], ["0x1006e4db", "sub eax, ebp"], ["0x1006e4dd", "add eax, ebx"]]}, {"both": [["0x100b8ccf", "test eax, eax", "0x1006e4df"], ["0x100b8cd1", "jg 0xc", "0x1006e4e1"]]}, {"orig": [["0x100b8cd3", "mov ecx, dword ptr [ebp + 0x18]"], ["0x100b8cd6", "mov edi, ebx"]], "recomp": [["0x1006e4e3", "mov ecx, dword ptr [esi + 0x18]"], ["0x1006e4e6", "mov ebx, ebp"]]}, {"both": [["0x100b8cd8", "mov eax, dword ptr [ecx]", "0x1006e4e8"], ["0x100b8cda", "call dword ptr [eax + 8]", "0x1006e4ea"], ["0x100b8cdd", "xor eax, eax", "0x1006e4ed"], ["0x100b8cdf", "push eax", "0x1006e4ef"]]}, {"orig": [["0x100b8ce0", "mov ecx, ebp"]], "recomp": [["0x1006e4f0", "mov ecx, esi"]]}, {"both": [["0x100b8ce2", "call MxThread::Sleep (FUNCTION)", "0x1006e4f2"]]}, {"orig": [["0x100b8ce7", "cmp byte ptr [ebp + 0xc], 0"]], "recomp": [["0x1006e4f7", "cmp byte ptr [esi + 0xc], 0"]]}, {"both": [["0x100b8ceb", "jne -0x45", "0x1006e4fb"]]}, {"orig": [["0x100b8ced", "mov ecx, ebp"]], "recomp": [["0x1006e4fd", "mov ecx, esi"]]}, {"both": [["0x100b8cef", "call MxThread::Run (FUNCTION)", "0x1006e4ff"], ["0x100b8cf4", "pop ebp", "0x1006e504"], ["0x100b8cf5", "pop edi", "0x1006e505"], ["0x100b8cf6", "pop esi", "0x1006e506"], ["0x100b8cf7", "pop ebx", "0x1006e507"], ["0x100b8cf8", "ret ", "0x1006e508"]]}]]]}, {"address": "0x100b8d00", "recomp": "0x10063600", "name": "MxAudioManager::MxAudioManager", "matching": 1.0, "diff": []}, {"address": "0x100b8d70", "recomp": "0x10063670", "name": "MxAudioManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b8d90", "recomp": "0x10063690", "name": "MxAudioManager::~MxAudioManager", "matching": 1.0, "diff": []}, {"address": "0x100b8df0", "recomp": "0x100636f0", "name": "MxAudioManager::Init", "matching": 1.0, "diff": []}, {"address": "0x100b8e00", "recomp": "0x10063700", "name": "MxAudioManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b8e40", "recomp": "0x10063740", "name": "MxAudioManager::InitPresenters", "matching": 1.0, "diff": []}, {"address": "0x100b8e90", "recomp": "0x10063790", "name": "MxAudioManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b8ea0", "recomp": "0x100637a0", "name": "MxAudioManager::SetVolume", "matching": 1.0, "diff": []}, {"address": "0x100b8ed0", "recomp": "0x100637d0", "name": "MxAutoLock::MxAutoLock", "matching": 1.0, "diff": []}, {"address": "0x100b8ef0", "recomp": "0x100637f0", "name": "MxAutoLock::~MxAutoLock", "matching": 1.0, "diff": []}, {"address": "0x100b8f00", "recomp": "0x100643a0", "name": "MxStreamer::MxStreamer", "matching": 1.0, "diff": []}, {"address": "0x100b9000", "recomp": "0x100644a0", "name": "MxStreamer::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100b9010", "recomp": "0x100644b0", "name": "MxStreamer::IsA", "matching": 1.0, "diff": []}, {"address": "0x100b9090", "recomp": "0x10064530", "name": "list<MxStreamController *,allocator<MxStreamController *> >::~list<MxStreamController *,allocator<MxStreamController *> >", "matching": 1.0, "effective": true, "diff": [["@@ -0x100b9090,19 +0x10064530,19 @@", [{"both": [["0x100b9090", "sub esp, 0xc", "0x10064530"], ["0x100b9093", "push esi", "0x10064533"], ["0x100b9094", "push edi", "0x10064534"], ["0x100b9095", "mov eax, dword ptr [ecx + 4]", "0x10064535"], ["0x100b9098", "mov esi, ecx", "0x10064538"], ["0x100b909a", "mov dword ptr [esp + 0x10], eax", "0x1006453a"], ["0x100b909e", "mov ecx, dword ptr [eax]", "0x1006453e"], ["0x100b90a0", "mov edi, ecx", "0x10064540"]]}, {"orig": [["0x100b90a2", "cmp eax, ecx"]], "recomp": [["0x10064542", "cmp ecx, eax"]]}, {"both": [["0x100b90a4", "je 0x2e", "0x10064544"], ["0x100b90a6", "lea edx, [edi + 4]", "0x10064546"], ["0x100b90a9", "mov dword ptr [esp + 8], edi", "0x10064549"], ["0x100b90ad", "mov eax, edi", "0x1006454d"], ["0x100b90af", "mov edi, dword ptr [edi]", "0x1006454f"], ["0x100b90b1", "mov ecx, dword ptr [edx]", "0x10064551"], ["0x100b90b3", "mov eax, dword ptr [eax]", "0x10064553"], ["0x100b90b5", "mov dword ptr [ecx], eax", "0x10064555"], ["0x100b90b7", "mov ecx, dword ptr [edx]", "0x10064557"], ["0x100b90b9", "mov eax, dword ptr [esp + 8]", "0x10064559"]]}]]]}, {"address": "0x100b9100", "recomp": "0x100645a0", "name": "MxMemoryPool<64,22>::~MxMemoryPool<64,22>", "matching": 1.0, "diff": []}, {"address": "0x100b9110", "recomp": "0x100645b0", "name": "MxMemoryPool<128,2>::~MxMemoryPool<128,2>", "matching": 1.0, "diff": []}, {"address": "0x100b9120", "recomp": "0x100645c0", "name": "MxStreamer::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b9140", "recomp": "0x100645e0", "name": "List<MxStreamController *>::~List<MxStreamController *>", "matching": 1.0, "diff": []}, {"address": "0x100b9190", "recomp": "0x10064630", "name": "MxStreamer::Create", "matching": 1.0, "diff": []}, {"address": "0x100b91d0", "recomp": "0x10064670", "name": "MxStreamer::~MxStreamer", "matching": 1.0, "diff": []}, {"address": "0x100b92c0", "recomp": "0x10064760", "name": "MxStreamer::Open", "matching": 1.0, "diff": []}, {"address": "0x100b9400", "recomp": "0x1006c940", "name": "MxStreamController::VTable0x18", "matching": 1.0, "diff": []}, {"address": "0x100b9410", "recomp": "0x1006c950", "name": "MxStreamController::VTable0x1c", "matching": 1.0, "diff": []}, {"address": "0x100b9420", "recomp": "0x1006c960", "name": "MxStreamController::VTable0x28", "matching": 1.0, "diff": []}, {"address": "0x100b9430", "recomp": "0x100648a0", "name": "MxRAMStreamController::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100b9440", "recomp": "0x100648b0", "name": "MxRAMStreamController::IsA", "matching": 1.0, "diff": []}, {"address": "0x100b94f0", "recomp": "0x10064960", "name": "MxRAMStreamController::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b9570", "recomp": "0x100649e0", "name": "MxStreamer::Close", "matching": 0.983739837398374, "diff": [["@@ -0x100b95a8,22 +0x10064a18,22 @@", [{"both": [["0x100b95a8", "mov word ptr [ebp - 0x8c], 0xfffe", "0x10064a18"], ["0x100b95b1", "mov ecx, dword ptr [eax]", "0x10064a21"], ["0x100b95b3", "mov dword ptr [ebp - 0x10], ecx", "0x10064a23"], ["0x100b95b6", "cmp ecx, eax", "0x10064a26"], ["0x100b95b8", "je 0x48", "0x10064a28"], ["0x100b95ba", "mov ebx, dword ptr [ebp + 8]", "0x10064a2a"], ["0x100b95bd", "mov eax, dword ptr [ebp - 0x10]", "0x10064a2d"], ["0x100b95c0", "test ebx, ebx", "0x10064a30"], ["0x100b95c2", "mov edi, dword ptr [eax + 8]", "0x10064a32"], ["0x100b95c5", "je 0x5f", "0x10064a35"]]}, {"orig": [["0x100b95c7", "mov eax, dword ptr [edi + 0x24]"], ["0x100b95ca", "mov edx, ebx"]], "recomp": [["0x10064a37", "mov eax, ebx"], ["0x10064a39", "mov edx, dword ptr [edi + 0x24]"]]}, {"both": [["0x100b95cc", "mov cl, byte ptr [eax]", "0x10064a3c"], ["0x100b95ce", "cmp cl, byte ptr [edx]", "0x10064a3e"], ["0x100b95d0", "jne 0x1a", "0x10064a40"], ["0x100b95d2", "or cl, cl", "0x10064a42"], ["0x100b95d4", "je 0x12", "0x10064a44"], ["0x100b95d6", "mov cl, byte ptr [eax + 1]", "0x10064a46"], ["0x100b95d9", "cmp cl, byte ptr [edx + 1]", "0x10064a49"], ["0x100b95dc", "jne 0xe", "0x10064a4c"], ["0x100b95de", "add eax, 2", "0x10064a4e"], ["0x100b95e1", "add edx, 2", "0x10064a51"]]}]]]}, {"address": "0x100b9700", "recomp": "0x10064c30", "name": "MxStreamerNotification::Clone", "matching": 1.0, "diff": []}, {"address": "0x100b97b0", "recomp": "0x10064b70", "name": "MxStreamerNotification::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100b9820", "recomp": "0x10064be0", "name": "MxStreamerNotification::~MxStreamerNotification", "matching": 1.0, "diff": []}, {"address": "0x100b9870", "recomp": "0x10064ce0", "name": "MxStreamer::GetOpenStream", "matching": 1.0, "diff": []}, {"address": "0x100b98f0", "recomp": "0x10064d60", "name": "MxStreamer::FUN_100b98f0", "matching": 1.0, "diff": []}, {"address": "0x100b9930", "recomp": "0x10064da0", "name": "MxStreamer::AddStreamControllerToOpenList", "matching": 0.7307692307692307, "diff": [["@@ -0x100b9930,43 +0x10064da0,43 @@", [{"both": [["0x100b9930", "sub esp, 0xc", "0x10064da0"], ["0x100b9933", "push ebx", "0x10064da3"], ["0x100b9934", "push esi", "0x10064da4"]]}, {"orig": [], "recomp": [["0x10064da5", "mov edx, dword ptr [ecx + 0xc]"]]}, {"both": [["0x100b9935", "push edi", "0x10064da8"], ["0x100b9936", "mov esi, ecx", "0x10064da9"]]}, {"orig": [["0x100b9938", "mov ecx, dword ptr [ecx + 0xc]"], ["0x100b993b", "mov dword ptr [esp + 0x14], ecx"], ["0x100b993f", "mov eax, dword ptr [ecx]"], ["0x100b9941", "cmp eax, ecx"]], "recomp": [["0x10064dab", "mov dword ptr [esp + 0x14], edx"], ["0x10064daf", "mov eax, dword ptr [edx]"], ["0x10064db1", "cmp edx, eax"]]}, {"both": [["0x100b9943", "je 0x15", "0x10064db3"]]}, {"orig": [["0x100b9945", "mov edx, dword ptr [esp + 0x1c]"], ["0x100b9949", "cmp dword ptr [eax + 8], edx"]], "recomp": [["0x10064db5", "mov ecx, dword ptr [esp + 0x1c]"], ["0x10064db9", "cmp dword ptr [eax + 8], ecx"]]}, {"both": [["0x100b994c", "je 0x8", "0x10064dbc"], ["0x100b994e", "mov eax, dword ptr [eax]", "0x10064dbe"]]}, {"orig": [["0x100b9950", "cmp eax, dword ptr [esp + 0x14]"]], "recomp": [["0x10064dc0", "cmp dword ptr [esp + 0x14], eax"]]}, {"both": [["0x100b9954", "jne -0x11", "0x10064dc4"]]}, {"orig": [["0x100b9956", "cmp eax, ecx"]], "recomp": [["0x10064dc6", "cmp edx, eax"]]}, {"both": [["0x100b9958", "jne 0x47", "0x10064dc8"]]}, {"orig": [["0x100b995a", "lea ebx, [ecx + 4]"]], "recomp": [["0x10064dca", "lea edi, [edx + 4]"]]}, {"both": [["0x100b995d", "push 0xc", "0x10064dcd"]]}, {"orig": [["0x100b995f", "mov dword ptr [esp + 0x10], ecx"], ["0x100b9963", "mov edi, dword ptr [ebx]"]], "recomp": [["0x10064dcf", "mov dword ptr [esp + 0x10], edx"], ["0x10064dd3", "mov ebx, dword ptr [edi]"]]}, {"both": [["0x100b9965", "call ??2@YAPAXI@Z (FUNCTION)", "0x10064dd5"], ["0x100b996a", "add esp, 4", "0x10064dda"]]}, {"orig": [["0x100b996d", "test edi, edi"]], "recomp": [["0x10064ddd", "test ebx, ebx"]]}, {"both": [["0x100b996f", "je 0xb", "0x10064ddf"], ["0x100b9971", "mov ecx, dword ptr [esp + 0xc]", "0x10064de1"], ["0x100b9975", "mov dword ptr [eax], ecx", "0x10064de5"]]}, {"orig": [["0x100b9977", "mov dword ptr [eax + 4], edi"]], "recomp": [["0x10064de7", "mov dword ptr [eax + 4], ebx"]]}, {"both": [["0x100b997a", "jmp 0x5", "0x10064dea"], ["0x100b997c", "mov dword ptr [eax], eax", "0x10064dec"], ["0x100b997e", "mov dword ptr [eax + 4], eax", "0x10064dee"]]}, {"orig": [["0x100b9981", "mov dword ptr [ebx], eax"]], "recomp": [["0x10064df1", "mov dword ptr [edi], eax"]]}, {"both": [["0x100b9983", "mov ecx, dword ptr [eax + 4]", "0x10064df3"], ["0x100b9986", "mov dword ptr [ecx], eax", "0x10064df6"], ["0x100b9988", "add eax, 8", "0x10064df8"], ["0x100b998b", "je 0x6", "0x10064dfb"], ["0x100b998d", "mov ecx, dword ptr [esp + 0x1c]", "0x10064dfd"], ["0x100b9991", "mov dword ptr [eax], ecx", "0x10064e01"], ["0x100b9993", "xor eax, eax", "0x10064e03"], ["0x100b9995", "pop edi", "0x10064e05"], ["0x100b9996", "inc dword ptr [esi + 0x10]", "0x10064e06"], ["0x100b9999", "pop esi", "0x10064e09"]]}]]]}, {"address": "0x100b99b0", "recomp": "0x10064e20", "name": "MxStreamer::FUN_100b99b0", "matching": 1.0, "diff": []}, {"address": "0x100b99f0", "recomp": "0x10064e60", "name": "MxStreamer::DeleteObject", "matching": 1.0, "diff": []}, {"address": "0x100b9b30", "recomp": "0x10064fa0", "name": "MxStreamer::FUN_100b9b30", "matching": 1.0, "diff": []}, {"address": "0x100b9b60", "recomp": "0x10064fd0", "name": "MxStreamer::Notify", "matching": 0.9315068493150684, "diff": [["@@ -0x100b9b60,33 +0x10064fd0,33 @@", [{"both": [["0x100b9b60", "mov eax, dword ptr fs:[0]", "0x10064fd0"], ["0x100b9b66", "push ebp", "0x10064fd6"], ["0x100b9b67", "mov ebp, esp", "0x10064fd7"], ["0x100b9b69", "push -1", "0x10064fd9"], ["0x100b9b6b", "push <OFFSET1>", "0x10064fdb"], ["0x100b9b70", "push eax", "0x10064fe0"], ["0x100b9b71", "mov dword ptr fs:[0], esp", "0x10064fe1"]]}, {"orig": [["0x100b9b78", "mov eax, dword ptr [ebp + 8]"]], "recomp": []}, {"both": [["0x100b9b7b", "sub esp, 0xa4", "0x10064fe8"]]}, {"orig": [["0x100b9b81", "cmp dword ptr [eax + 4], 6"]], "recomp": []}, {"both": [["0x100b9b85", "push ebx", "0x10064fee"], ["0x100b9b86", "push esi", "0x10064fef"], ["0x100b9b87", "push edi", "0x10064ff0"], ["0x100b9b88", "mov esi, ecx", "0x10064ff1"]]}, {"orig": [], "recomp": [["0x10064ff3", "mov edi, dword ptr [ebp + 8]"], ["0x10064ff6", "cmp dword ptr [edi + 4], 6"]]}, {"both": [["0x100b9b8a", "jne 0x96", "0x10064ffa"]]}, {"orig": [["0x100b9b90", "mov edi, dword ptr [eax + 0xc]"]], "recomp": []}, {"both": [["0x100b9b93", "lea ecx, [ebp - 0xb0]", "0x10065000"], ["0x100b9b99", "call MxDSAction::MxDSAction (FUNCTION)", "0x10065006"]]}, {"orig": [], "recomp": [["0x1006500b", "mov dword ptr [ebp - 4], 0"], ["0x10065012", "mov edi, dword ptr [edi + 0xc]"]]}, {"both": [["0x100b9b9e", "lea eax, [ebp - 0xb0]", "0x10065015"]]}, {"orig": [], "recomp": [["0x1006501b", "push eax"]]}, {"both": [["0x100b9ba4", "mov ecx, edi", "0x1006501c"]]}, {"orig": [["0x100b9ba6", "mov dword ptr [ebp - 4], 0"]], "recomp": []}, {"both": [["0x100b9bad", "mov word ptr [ebp - 0x8c], 0xfffe", "0x1006501e"]]}, {"orig": [["0x100b9bb6", "push eax"]], "recomp": []}, {"both": [["0x100b9bb7", "call MxStreamController::FUN_100c20d0 (FUNCTION)", "0x10065027"], ["0x100b9bbc", "test al, al", "0x1006502c"], ["0x100b9bbe", "je 0xe", "0x1006502e"], ["0x100b9bc0", "test edi, edi", "0x10065030"], ["0x100b9bc2", "je 0x56", "0x10065032"], ["0x100b9bc4", "push 1", "0x10065034"], ["0x100b9bc6", "mov eax, dword ptr [edi]", "0x10065036"], ["0x100b9bc8", "mov ecx, edi", "0x10065038"], ["0x100b9bca", "call dword ptr [eax]", "0x1006503a"], ["0x100b9bcc", "jmp 0x4c", "0x1006503c"]]}]]]}, {"address": "0x100b9c70", "recomp": "0x100695d0", "name": "MxStillPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100b9cc0", "recomp": "0x10069620", "name": "MxStillPresenter::LoadHeader", "matching": 0.8771929824561403, "diff": [["@@ -0x100b9cc6,24 +0x10069626,25 @@", [{"both": [["0x100b9cc6", "mov esi, ecx", "0x10069626"], ["0x100b9cc8", "test eax, eax", "0x10069628"], ["0x100b9cca", "je 0x9", "0x1006962a"], ["0x100b9ccc", "push eax", "0x1006962c"], ["0x100b9ccd", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006962d"], ["0x100b9cd2", "add esp, 4", "0x10069632"], ["0x100b9cd5", "mov ebx, dword ptr [esp + 0x10]", "0x10069635"], ["0x100b9cd9", "mov eax, dword ptr [ebx + 0x14]", "0x10069639"], ["0x100b9cdc", "push eax", "0x1006963c"], ["0x100b9cdd", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006963d"]]}, {"orig": [], "recomp": [["0x10069642", "mov dword ptr [esi + 0x68], eax"]]}, {"both": [["0x100b9ce2", "add esp, 4", "0x10069645"]]}, {"orig": [["0x100b9ce5", "mov dword ptr [esi + 0x68], eax"]], "recomp": [["0x10069648", "mov edi, eax"], ["0x1006964a", "mov esi, dword ptr [ebx + 0x18]"]]}, {"both": [["0x100b9ce8", "mov eax, dword ptr [ebx + 0x14]", "0x1006964d"]]}, {"orig": [["0x100b9ceb", "mov edi, dword ptr [esi + 0x68]"], ["0x100b9cee", "mov esi, dword ptr [ebx + 0x18]"]], "recomp": []}, {"both": [["0x100b9cf1", "mov ecx, eax", "0x10069650"], ["0x100b9cf3", "shr ecx, 2", "0x10069652"], ["0x100b9cf6", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10069655"], ["0x100b9cf8", "mov ecx, eax", "0x10069657"], ["0x100b9cfa", "and ecx, 3", "0x10069659"], ["0x100b9cfd", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1006965c"], ["0x100b9cff", "pop edi", "0x1006965e"], ["0x100b9d00", "pop esi", "0x1006965f"], ["0x100b9d01", "pop ebx", "0x10069660"]]}, {"orig": [], "recomp": [["0x10069661", "ret 4"]]}]]]}, {"address": "0x100b9d10", "recomp": "0x10069670", "name": "MxStillPresenter::CreateBitmap", "matching": 1.0, "diff": []}, {"address": "0x100b9db0", "recomp": "0x10069710", "name": "MxStillPresenter::NextFrame", "matching": 1.0, "diff": []}, {"address": "0x100b9dd0", "recomp": "0x10069730", "name": "MxStillPresenter::LoadFrame", "matching": 1.0, "diff": []}, {"address": "0x100b9f30", "recomp": "0x10069890", "name": "MxStillPresenter::RealizePalette", "matching": 1.0, "diff": []}, {"address": "0x100b9f60", "recomp": "0x100698c0", "name": "MxStillPresenter::StartingTickle", "matching": 1.0, "diff": []}, {"address": "0x100b9f90", "recomp": "0x100698f0", "name": "MxStillPresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x100b9ff0", "recomp": "0x10069950", "name": "MxStillPresenter::RepeatingTickle", "matching": 1.0, "diff": []}, {"address": "0x100ba040", "recomp": "0x100699a0", "name": "MxStillPresenter::SetPosition", "matching": 0.43373493975903615, "diff": [["@@ -0x100ba040,80 +0x100699a0,86 @@", [{"orig": [["0x100ba040", "sub esp, 0x28"]], "recomp": [["0x100699a0", "sub esp, 0x20"]]}, {"both": [["0x100ba043", "push ebx", "0x100699a3"], ["0x100ba044", "push esi", "0x100699a4"]]}, {"orig": [["0x100ba045", "mov eax, dword ptr [ecx + 0x10]"]], "recomp": []}, {"both": [["0x100ba048", "push edi", "0x100699a5"], ["0x100ba049", "mov esi, ecx", "0x100699a6"]]}, {"orig": [["0x100ba04b", "mov edx, dword ptr [esp + 0x38]"], ["0x100ba04f", "mov dword ptr [esp + 0xc], eax"], ["0x100ba053", "mov ecx, dword ptr [esi + 0x14]"], ["0x100ba056", "mov eax, dword ptr [esp + 0x3c]"], ["0x100ba05a", "mov dword ptr [esp + 0x10], ecx"]], "recomp": [["0x100699a8", "mov eax, dword ptr [esp + 0x30]"], ["0x100699ac", "push ebp"], ["0x100699ad", "mov edi, dword ptr [esi + 0x10]"], ["0x100699b0", "mov ebp, dword ptr [esi + 0x14]"], ["0x100699b3", "mov ecx, dword ptr [esp + 0x38]"], ["0x100699b7", "mov dword ptr [esi + 0x10], eax"], ["0x100699ba", "mov dword ptr [esi + 0x14], ecx"]]}, {"both": [["0x100ba05e", "mov ecx, esi", "0x100699bd"]]}, {"orig": [["0x100ba060", "mov dword ptr [esi + 0x10], edx"], ["0x100ba063", "mov dword ptr [esi + 0x14], eax"]], "recomp": []}, {"both": [["0x100ba066", "call MxPresenter::IsEnabled (FUNCTION)", "0x100699bf"], ["0x100ba06b", "test al, al", "0x100699c4"]]}, {"orig": [["0x100ba06d", "je 0xc3"], ["0x100ba073", "mov ebx, dword ptr [esi]"]], "recomp": [["0x100699c6", "je 0xbc"]]}, {"both": [["0x100ba075", "mov ecx, esi", "0x100699cc"]]}, {"orig": [["0x100ba077", "call dword ptr [ebx + 0x84]"], ["0x100ba07d", "lea edi, [eax - 1]"]], "recomp": [["0x100699ce", "mov eax, dword ptr [esi]"], ["0x100699d0", "call dword ptr [eax + 0x84]"], ["0x100699d6", "lea ebx, [eax - 1]"]]}, {"both": [["0x100ba080", "mov ecx, esi", "0x100699d9"]]}, {"orig": [["0x100ba082", "call dword ptr [ebx + 0x80]"]], "recomp": [["0x100699db", "mov eax, dword ptr [esi]"], ["0x100699dd", "call dword ptr [eax + 0x80]"]]}, {"both": [["0x100ba088", "dec eax", "0x100699e3"]]}, {"orig": [["0x100ba089", "mov ecx, dword ptr [esp + 0xc]"], ["0x100ba08d", "mov edx, dword ptr [esp + 0x10]"], ["0x100ba091", "mov dword ptr [esp + 0x14], ecx"], ["0x100ba095", "add ecx, eax"], ["0x100ba097", "mov dword ptr [esp + 0x18], edx"], ["0x100ba09b", "mov dword ptr [esp + 0x1c], ecx"], ["0x100ba09f", "lea ecx, [edi + edx]"]], "recomp": [["0x100699e4", "mov dword ptr [esp + 0x10], edi"], ["0x100699e8", "add edi, eax"], ["0x100699ea", "mov ecx, dword ptr [esi + 0x10]"]]}, {"both": [["0x100ba0a2", "mov edx, dword ptr [esi + 0x14]", "0x100699ed"]]}, {"orig": [], "recomp": [["0x100699f0", "mov dword ptr [esp + 0x14], ebp"], ["0x100699f4", "add ebp, ebx"], ["0x100699f6", "add eax, ecx"], ["0x100699f8", "mov dword ptr [esp + 0x18], edi"], ["0x100699fc", "mov dword ptr [esp + 0x1c], ebp"]]}, {"both": [["0x100ba0a5", "mov dword ptr [esp + 0x20], ecx", "0x10069a00"]]}, {"orig": [["0x100ba0a9", "mov ecx, dword ptr [esi + 0x10]"], ["0x100ba0ac", "mov dword ptr [esp + 0x28], edx"], ["0x100ba0b0", "add eax, ecx"], ["0x100ba0b2", "add edx, edi"], ["0x100ba0b4", "mov dword ptr [esp + 0x24], ecx"], ["0x100ba0b8", "mov dword ptr [esp + 0x2c], eax"], ["0x100ba0bc", "lea ecx, [esp + 0x14]"]], "recomp": [["0x10069a04", "mov dword ptr [esp + 0x24], edx"], ["0x10069a08", "add edx, ebx"], ["0x10069a0a", "lea ecx, [esp + 0x10]"], ["0x10069a0e", "mov dword ptr [esp + 0x28], eax"], ["0x10069a12", "push ecx"]]}, {"both": [["0x100ba0c0", "mov dword ptr [esp + 0x30], edx", "0x10069a13"]]}, {"orig": [["0x100ba0c4", "push ecx"]], "recomp": []}, {"both": [["0x100ba0c5", "call MVideoManager (FUNCTION)", "0x10069a17"], ["0x100ba0ca", "mov ecx, eax", "0x10069a1c"], ["0x100ba0cc", "call MxVideoManager::InvalidateRect (FUNCTION)", "0x10069a1e"], ["0x100ba0d1", "call MVideoManager (FUNCTION)", "0x10069a23"]]}, {"orig": [["0x100ba0d6", "mov ecx, dword ptr [esp + 0x20]"], ["0x100ba0da", "sub ecx, dword ptr [esp + 0x18]"], ["0x100ba0de", "mov edx, dword ptr [esp + 0x18]"]], "recomp": [["0x10069a28", "mov ecx, dword ptr [esp + 0x1c]"], ["0x10069a2c", "sub ecx, dword ptr [esp + 0x14]"], ["0x10069a30", "mov edx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100ba0e2", "inc ecx", "0x10069a34"]]}, {"orig": [["0x100ba0e3", "mov ebx, dword ptr [esp + 0x14]"]], "recomp": [["0x10069a35", "mov ebx, dword ptr [esp + 0x10]"]]}, {"both": [["0x100ba0e7", "push ecx", "0x10069a39"]]}, {"orig": [["0x100ba0e8", "mov esi, dword ptr [eax]"], ["0x100ba0ea", "mov ecx, dword ptr [esp + 0x20]"], ["0x100ba0ee", "sub ecx, dword ptr [esp + 0x18]"]], "recomp": [["0x10069a3a", "mov ebp, dword ptr [eax]"], ["0x10069a3c", "mov ecx, dword ptr [esp + 0x1c]"], ["0x10069a40", "sub ecx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100ba0f2", "inc ecx", "0x10069a44"], ["0x100ba0f3", "push ecx", "0x10069a45"], ["0x100ba0f4", "push edx", "0x10069a46"], ["0x100ba0f5", "push ebx", "0x10069a47"], ["0x100ba0f6", "mov ecx, eax", "0x10069a48"]]}, {"orig": [["0x100ba0f8", "call dword ptr [esi + 0x34]"], ["0x100ba0fb", "lea eax, [esp + 0x24]"]], "recomp": [["0x10069a4a", "call dword ptr [ebp + 0x34]"], ["0x10069a4d", "lea eax, [esp + 0x20]"]]}, {"both": [["0x100ba0ff", "push eax", "0x10069a51"], ["0x100ba100", "call MVideoManager (FUNCTION)", "0x10069a52"], ["0x100ba105", "mov ecx, eax", "0x10069a57"], ["0x100ba107", "call MxVideoManager::InvalidateRect (FUNCTION)", "0x10069a59"], ["0x100ba10c", "call MVideoManager (FUNCTION)", "0x10069a5e"], ["0x100ba111", "mov ecx, eax", "0x10069a63"]]}, {"orig": [["0x100ba113", "mov eax, dword ptr [esp + 0x30]"], ["0x100ba117", "sub eax, dword ptr [esp + 0x28]"], ["0x100ba11b", "mov edx, dword ptr [esp + 0x28]"]], "recomp": [["0x10069a65", "mov eax, dword ptr [esp + 0x2c]"], ["0x10069a69", "sub eax, dword ptr [esp + 0x24]"], ["0x10069a6d", "mov edx, dword ptr [esp + 0x24]"]]}, {"both": [["0x100ba11f", "inc eax", "0x10069a71"], ["0x100ba120", "push eax", "0x10069a72"]]}, {"orig": [["0x100ba121", "mov eax, dword ptr [esp + 0x30]"], ["0x100ba125", "sub eax, dword ptr [esp + 0x28]"]], "recomp": [["0x10069a73", "mov eax, dword ptr [esp + 0x2c]"], ["0x10069a77", "sub eax, dword ptr [esp + 0x24]"]]}, {"both": [["0x100ba129", "inc eax", "0x10069a7b"], ["0x100ba12a", "push eax", "0x10069a7c"], ["0x100ba12b", "push edx", "0x10069a7d"]]}, {"orig": [["0x100ba12c", "mov ebx, dword ptr [esp + 0x30]"]], "recomp": [["0x10069a7e", "mov ebx, dword ptr [esp + 0x2c]"], ["0x10069a82", "push ebx"]]}, {"both": [["0x100ba130", "mov eax, dword ptr [ecx]", "0x10069a83"]]}, {"orig": [], "recomp": [["0x10069a85", "call dword ptr [eax + 0x34]"], ["0x10069a88", "pop ebp"], ["0x10069a89", "pop edi"], ["0x10069a8a", "pop esi"], ["0x10069a8b", "pop ebx"], ["0x10069a8c", "add esp, 0x20"], ["0x10069a8f", "ret 8"]]}]]]}, {"address": "0x100ba140", "recomp": "0x10069aa0", "name": "MxStillPresenter::Enable", "matching": 0.9272727272727272, "diff": [["@@ -0x100ba165,27 +0x10069ac5,27 @@", [{"both": [["0x100ba165", "je 0x69", "0x10069ac5"], ["0x100ba167", "mov ebx, dword ptr [edi]", "0x10069ac7"], ["0x100ba169", "mov ecx, edi", "0x10069ac9"], ["0x100ba16b", "call dword ptr [ebx + 0x84]", "0x10069acb"], ["0x100ba171", "mov esi, eax", "0x10069ad1"], ["0x100ba173", "mov ecx, edi", "0x10069ad3"], ["0x100ba175", "call dword ptr [ebx + 0x80]", "0x10069ad5"], ["0x100ba17b", "mov ecx, dword ptr [edi + 0x10]", "0x10069adb"], ["0x100ba17e", "mov edx, dword ptr [edi + 0x14]", "0x10069ade"], ["0x100ba181", "add eax, ecx", "0x10069ae1"]]}, {"orig": [], "recomp": [["0x10069ae3", "add esi, edx"]]}, {"both": [["0x100ba183", "mov dword ptr [esp + 0xc], ecx", "0x10069ae5"]]}, {"orig": [], "recomp": [["0x10069ae9", "mov dword ptr [esp + 0x10], edx"]]}, {"both": [["0x100ba187", "lea ecx, [esp + 0xc]", "0x10069aed"]]}, {"orig": [["0x100ba18b", "mov dword ptr [esp + 0x10], edx"], ["0x100ba18f", "add edx, esi"]], "recomp": [["0x10069af1", "mov dword ptr [esp + 0x14], eax"], ["0x10069af5", "mov dword ptr [esp + 0x18], esi"]]}, {"both": [["0x100ba191", "push ecx", "0x10069af9"]]}, {"orig": [["0x100ba192", "mov dword ptr [esp + 0x18], eax"], ["0x100ba196", "mov dword ptr [esp + 0x1c], edx"]], "recomp": []}, {"both": [["0x100ba19a", "call MVideoManager (FUNCTION)", "0x10069afa"], ["0x100ba19f", "mov ecx, eax", "0x10069aff"], ["0x100ba1a1", "call MxVideoManager::InvalidateRect (FUNCTION)", "0x10069b01"], ["0x100ba1a6", "call MVideoManager (FUNCTION)", "0x10069b06"], ["0x100ba1ab", "mov ecx, dword ptr [esp + 0x18]", "0x10069b0b"], ["0x100ba1af", "sub ecx, dword ptr [esp + 0x10]", "0x10069b0f"], ["0x100ba1b3", "mov edx, dword ptr [esp + 0x10]", "0x10069b13"], ["0x100ba1b7", "inc ecx", "0x10069b17"], ["0x100ba1b8", "mov ebx, dword ptr [esp + 0xc]", "0x10069b18"], ["0x100ba1bc", "push ecx", "0x10069b1c"]]}]]]}, {"address": "0x100ba1e0", "recomp": "0x10069b40", "name": "MxStillPresenter::ParseExtra", "matching": 1.0, "diff": []}, {"address": "0x100ba2c0", "recomp": "0x10069c20", "name": "MxStillPresenter::Clone", "matching": 0.9251336898395722, "diff": [["@@ -0x100ba36b,63 +0x10069ccb,63 @@", [{"both": [["0x100ba36b", "jmp MxCore::~MxCore (FUNCTION)", "0x10069ccb"], ["0x100ba370", "mov ecx, dword ptr [ebp - 0x10]", "0x10069cd0"], ["0x100ba373", "jmp MxPresenter::~MxPresenter (FUNCTION)", "0x10069cd3"], ["0x100ba378", "mov ecx, dword ptr [ebp - 0x10]", "0x10069cd8"], ["0x100ba37b", "jmp MxMediaPresenter::~MxMediaPresenter (FUNCTION)", "0x10069cdb"], ["0x100ba380", "mov ecx, dword ptr [ebp - 0x10]", "0x10069ce0"], ["0x100ba383", "jmp MxVideoPresenter::~MxVideoPresenter (FUNCTION)", "0x10069ce3"], ["0x100ba388", "xor ebx, ebx", "0x10069ce8"], ["0x100ba38a", "mov dword ptr [ebp - 4], 0xffffffff", "0x10069cea"], ["0x100ba391", "test ebx, ebx", "0x10069cf1"]]}, {"orig": [["0x100ba393", "je 0x11c"]], "recomp": [["0x10069cf3", "je 0x11d"]]}, {"both": [["0x100ba399", "mov edi, dword ptr [ebx]", "0x10069cf9"], ["0x100ba39b", "mov ecx, ebx", "0x10069cfb"], ["0x100ba39d", "call dword ptr [edi + 0x34]", "0x10069cfd"], ["0x100ba3a0", "test eax, eax", "0x10069d00"]]}, {"orig": [["0x100ba3a2", "jne 0x10d"]], "recomp": [["0x10069d02", "jne 0x10e"]]}, {"both": [["0x100ba3a8", "mov ecx, dword ptr [esi + 0x1c]", "0x10069d08"], ["0x100ba3ab", "mov eax, dword ptr [ecx]", "0x10069d0b"], ["0x100ba3ad", "call dword ptr [eax + 0x2c]", "0x10069d0d"], ["0x100ba3b0", "test eax, eax", "0x10069d10"]]}, {"orig": [["0x100ba3b2", "je 0xfd"]], "recomp": [["0x10069d12", "je 0xfe"]]}, {"both": [["0x100ba3b8", "push eax", "0x10069d18"], ["0x100ba3b9", "mov ecx, ebx", "0x10069d19"], ["0x100ba3bb", "push 0", "0x10069d1b"], ["0x100ba3bd", "call dword ptr [edi + 0x3c]", "0x10069d1d"], ["0x100ba3c0", "test eax, eax", "0x10069d20"]]}, {"orig": [["0x100ba3c2", "jne 0xed"], ["0x100ba3c8", "mov cl, byte ptr [ebx + 0x5e]"]], "recomp": [["0x10069d22", "jne 0xee"], ["0x10069d28", "mov al, byte ptr [ebx + 0x5e]"], ["0x10069d2b", "mov cl, byte ptr [esi + 0x5e]"], ["0x10069d2e", "xor cl, al"], ["0x10069d30", "and cl, 1"], ["0x10069d33", "xor cl, al"], ["0x10069d35", "mov byte ptr [ebx + 0x5e], cl"]]}, {"both": [["0x100ba3cb", "mov al, byte ptr [esi + 0x5e]", "0x10069d38"], ["0x100ba3ce", "xor al, cl", "0x10069d3b"]]}, {"orig": [["0x100ba3d0", "and al, 1"]], "recomp": [["0x10069d3d", "and al, 2"]]}, {"both": [["0x100ba3d2", "xor al, cl", "0x10069d3f"], ["0x100ba3d4", "mov byte ptr [ebx + 0x5e], al", "0x10069d41"], ["0x100ba3d7", "mov cl, byte ptr [esi + 0x5e]", "0x10069d44"], ["0x100ba3da", "xor cl, al", "0x10069d47"]]}, {"orig": [["0x100ba3dc", "and cl, 2"]], "recomp": [["0x10069d49", "and cl, 4"]]}, {"both": [["0x100ba3df", "xor cl, al", "0x10069d4c"], ["0x100ba3e1", "mov byte ptr [ebx + 0x5e], cl", "0x10069d4e"], ["0x100ba3e4", "mov al, byte ptr [esi + 0x5e]", "0x10069d51"], ["0x100ba3e7", "xor al, cl", "0x10069d54"]]}, {"orig": [["0x100ba3e9", "and al, 4"]], "recomp": [["0x10069d56", "and al, 8"]]}, {"both": [["0x100ba3eb", "xor al, cl", "0x10069d58"], ["0x100ba3ed", "mov byte ptr [ebx + 0x5e], al", "0x10069d5a"], ["0x100ba3f0", "mov cl, byte ptr [esi + 0x5e]", "0x10069d5d"], ["0x100ba3f3", "xor cl, al", "0x10069d60"]]}, {"orig": [["0x100ba3f5", "and cl, 8"]], "recomp": [["0x10069d62", "and cl, 0x10"]]}, {"both": [["0x100ba3f8", "xor cl, al", "0x10069d65"], ["0x100ba3fa", "mov byte ptr [ebx + 0x5e], cl", "0x10069d67"]]}, {"orig": [["0x100ba3fd", "mov al, byte ptr [esi + 0x5e]"], ["0x100ba400", "xor al, cl"], ["0x100ba402", "and al, 0x10"], ["0x100ba404", "xor al, cl"], ["0x100ba406", "mov byte ptr [ebx + 0x5e], al"]], "recomp": []}, {"both": [["0x100ba409", "cmp dword ptr [esi + 0x50], 0", "0x10069d6a"], ["0x100ba40d", "je 0x52", "0x10069d6e"], ["0x100ba40f", "push 0x20", "0x10069d70"], ["0x100ba411", "call ??2@YAPAXI@Z (FUNCTION)", "0x10069d72"], ["0x100ba416", "mov dword ptr [ebp - 0x10], eax", "0x10069d77"], ["0x100ba419", "add esp, 4", "0x10069d7a"], ["0x100ba41c", "mov edi, eax", "0x10069d7d"], ["0x100ba41e", "mov ecx, 0", "0x10069d7f"], ["0x100ba423", "mov dword ptr [ebp - 4], 6", "0x10069d84"], ["0x100ba42a", "test edi, edi", "0x10069d8b"]]}]]]}, {"address": "0x100ba500", "recomp": "0x10067de0", "name": "MxDisplaySurface::MxDisplaySurface", "matching": 1.0, "diff": []}, {"address": "0x100ba580", "recomp": "0x10067e60", "name": "MxDisplaySurface::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ba5a0", "recomp": "0x10067e80", "name": "MxDisplaySurface::~MxDisplaySurface", "matching": 1.0, "diff": []}, {"address": "0x100ba610", "recomp": "0x10067ef0", "name": "MxDisplaySurface::Init", "matching": 1.0, "diff": []}, {"address": "0x100ba640", "recomp": "0x10067f20", "name": "MxDisplaySurface::ClearScreen", "matching": 1.0, "diff": []}, {"address": "0x100ba750", "recomp": "0x10068030", "name": "MxDisplaySurface::CountTotalBitsSetTo1", "matching": 1.0, "diff": []}, {"address": "0x100ba770", "recomp": "0x10068050", "name": "MxDisplaySurface::CountContiguousBitsSetTo1", "matching": 1.0, "diff": []}, {"address": "0x100ba790", "recomp": "0x10068070", "name": "MxDisplaySurface::Init", "matching": 1.0, "diff": []}, {"address": "0x100ba7f0", "recomp": "0x100680d0", "name": "MxDisplaySurface::Create", "matching": 0.9858490566037735, "diff": [["@@ -0x100ba8b6,24 +0x10068196,24 @@", [{"both": [["0x100ba8b6", "push ebx", "0x10068196"], ["0x100ba8b7", "call dword ptr [edi + 0x30]", "0x10068197"], ["0x100ba8ba", "test eax, eax", "0x1006819a"], ["0x100ba8bc", "jne 0x1b4", "0x1006819c"], ["0x100ba8c2", "mov al, byte ptr [esi + 0x20]", "0x100681a2"], ["0x100ba8c5", "and al, 0x20", "0x100681a5"], ["0x100ba8c7", "cmp al, 1", "0x100681a7"], ["0x100ba8c9", "sbb ecx, ecx", "0x100681a9"], ["0x100ba8cb", "and ecx, 0xfffffff8", "0x100681ab"], ["0x100ba8ce", "add ecx, 0x10", "0x100681ae"]]}, {"orig": [["0x100ba8d1", "cmp ebp, dword ptr [esp + 0x28]"]], "recomp": [["0x100681b1", "cmp dword ptr [esp + 0x28], ebp"]]}, {"both": [["0x100ba8d5", "jne 0x10", "0x100681b5"], ["0x100ba8d7", "mov eax, dword ptr [esp + 0x10]", "0x100681b7"]]}, {"orig": [["0x100ba8db", "cmp eax, dword ptr [esp + 0x24]"]], "recomp": [["0x100681bb", "cmp dword ptr [esp + 0x24], eax"]]}, {"both": [["0x100ba8df", "jne 0x6", "0x100681bf"], ["0x100ba8e1", "cmp ecx, dword ptr [esp + 0x70]", "0x100681c1"], ["0x100ba8e5", "je 0x15", "0x100681c5"], ["0x100ba8e7", "mov eax, dword ptr [esp + 0x10]", "0x100681c7"], ["0x100ba8eb", "push ecx", "0x100681cb"], ["0x100ba8ec", "push eax", "0x100681cc"], ["0x100ba8ed", "push ebp", "0x100681cd"], ["0x100ba8ee", "push ebx", "0x100681ce"], ["0x100ba8ef", "mov ebp, dword ptr [ebx]", "0x100681cf"], ["0x100ba8f1", "call dword ptr [ebp + 0x54]", "0x100681d1"]]}]], ["@@ -0x100ba9ae,22 +0x1006828e,22 @@", [{"both": [["0x100ba9ae", "test eax, eax", "0x1006828e"], ["0x100ba9b0", "jne 0xc0", "0x10068290"], ["0x100ba9b6", "lea edi, [esp + 0x1c]", "0x10068296"], ["0x100ba9ba", "xor eax, eax", "0x1006829a"], ["0x100ba9bc", "mov ecx, 0x1b", "0x1006829c"], ["0x100ba9c1", "rep stosd dword ptr es:[edi], eax", "0x100682a1"], ["0x100ba9c3", "mov dword ptr [esp + 0x1c], 0x6c", "0x100682a3"], ["0x100ba9cb", "mov dword ptr [esp + 0x20], 7", "0x100682ab"], ["0x100ba9d3", "mov eax, dword ptr [esi + 0x10]", "0x100682b3"], ["0x100ba9d6", "sub eax, dword ptr [esi + 8]", "0x100682b6"]]}, {"orig": [], "recomp": [["0x100682b9", "mov dword ptr [esp + 0x84], 0x6040"]]}, {"both": [["0x100ba9d9", "inc eax", "0x100682c4"]]}, {"orig": [["0x100ba9da", "mov dword ptr [esp + 0x84], 0x6040"]], "recomp": []}, {"both": [["0x100ba9e5", "mov dword ptr [esp + 0x28], eax", "0x100682c5"], ["0x100ba9e9", "mov eax, dword ptr [esi + 0x14]", "0x100682c9"], ["0x100ba9ec", "sub eax, dword ptr [esi + 0xc]", "0x100682cc"], ["0x100ba9ef", "inc eax", "0x100682cf"], ["0x100ba9f0", "test byte ptr [esi + 0x20], 4", "0x100682d0"], ["0x100ba9f4", "mov dword ptr [esp + 0x24], eax", "0x100682d4"], ["0x100ba9f8", "jne 0xb", "0x100682d8"], ["0x100ba9fa", "mov dword ptr [esp + 0x84], 0x2840", "0x100682da"], ["0x100baa05", "lea ecx, [esi + 0x30]", "0x100682e5"], ["0x100baa08", "push 0", "0x100682e8"]]}]]]}, {"address": "0x100baa90", "recomp": "0x10068370", "name": "MxDisplaySurface::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100baae0", "recomp": "0x100683c0", "name": "MxDisplaySurface::SetPalette", "matching": 0.49673202614379086, "diff": [["@@ -0x100baae0,155 +0x100683c0,151 @@", [{"orig": [["0x100baae0", "sub esp, 0x414"]], "recomp": [["0x100683c0", "sub esp, 0x41c"]]}, {"both": [["0x100baae6", "push ebx", "0x100683c6"], ["0x100baae7", "push esi", "0x100683c7"], ["0x100baae8", "push edi", "0x100683c8"]]}, {"orig": [["0x100baae9", "mov ebx, ecx"]], "recomp": [["0x100683c9", "mov esi, ecx"]]}, {"both": [["0x100baaeb", "push ebp", "0x100683cb"]]}, {"orig": [["0x100baaec", "test byte ptr [ebx + 0x88], 0x20"]], "recomp": [["0x100683cc", "test byte ptr [esi + 0x88], 0x20"]]}, {"both": [["0x100baaf3", "je 0x92", "0x100683d3"]]}, {"orig": [["0x100baaf9", "mov edi, dword ptr [ebx + 0x2c]"], ["0x100baafc", "mov esi, dword ptr [esp + 0x428]"], ["0x100bab03", "mov ecx, esi"]], "recomp": [["0x100683d9", "mov edi, dword ptr [esi + 0x2c]"], ["0x100683dc", "mov ebx, dword ptr [esp + 0x430]"], ["0x100683e3", "mov ecx, ebx"]]}, {"both": [["0x100bab05", "call MxPalette::CreateNativePalette (FUNCTION)", "0x100683e5"], ["0x100bab0a", "push eax", "0x100683ea"], ["0x100bab0b", "push edi", "0x100683eb"], ["0x100bab0c", "mov eax, dword ptr [edi]", "0x100683ec"], ["0x100bab0e", "call dword ptr [eax + 0x7c]", "0x100683ee"]]}, {"orig": [["0x100bab11", "mov edi, dword ptr [ebx + 0x30]"], ["0x100bab14", "mov ecx, esi"]], "recomp": [["0x100683f1", "mov edi, dword ptr [esi + 0x30]"], ["0x100683f4", "mov ecx, ebx"]]}, {"both": [["0x100bab16", "call MxPalette::CreateNativePalette (FUNCTION)", "0x100683f6"], ["0x100bab1b", "push eax", "0x100683fb"], ["0x100bab1c", "push edi", "0x100683fc"], ["0x100bab1d", "mov eax, dword ptr [edi]", "0x100683fd"], ["0x100bab1f", "call dword ptr [eax + 0x7c]", "0x100683ff"]]}, {"orig": [["0x100bab22", "test byte ptr [ebx + 0x20], 1"]], "recomp": [["0x10068402", "test byte ptr [esi + 0x20], 1"]]}, {"both": [["0x100bab26", "jne 0x6a", "0x10068406"]]}, {"orig": [["0x100bab28", "lea edi, [esp + 0x24]"]], "recomp": [["0x10068408", "lea edi, [esp + 0x2c]"]]}, {"both": [["0x100bab2c", "xor eax, eax", "0x1006840c"]]}, {"orig": [["0x100bab2e", "mov word ptr [esp + 0x20], 0x300"], ["0x100bab35", "mov word ptr [esp + 0x22], 0x100"]], "recomp": [["0x1006840e", "mov word ptr [esp + 0x28], 0x300"], ["0x10068415", "mov word ptr [esp + 0x2a], 0x100"]]}, {"both": [["0x100bab3c", "mov ecx, 0x100", "0x1006841c"], ["0x100bab41", "rep stosd dword ptr es:[edi], eax", "0x10068421"]]}, {"orig": [["0x100bab43", "lea eax, [esp + 0x24]"], ["0x100bab47", "mov ecx, esi"]], "recomp": [["0x10068423", "lea eax, [esp + 0x2c]"], ["0x10068427", "mov ecx, ebx"]]}, {"both": [["0x100bab49", "push eax", "0x10068429"], ["0x100bab4a", "call MxPalette::GetEntries (FUNCTION)", "0x1006842a"]]}, {"orig": [["0x100bab4f", "lea eax, [esp + 0x20]"]], "recomp": [["0x1006842f", "lea eax, [esp + 0x28]"]]}, {"both": [["0x100bab53", "mov ebp, dword ptr [__imp__CreatePalette@4 (POINTER)]", "0x10068433"], ["0x100bab59", "push eax", "0x10068439"], ["0x100bab5a", "call ebp", "0x1006843a"], ["0x100bab5c", "mov edi, eax", "0x1006843c"], ["0x100bab5e", "push 0", "0x1006843e"], ["0x100bab60", "call dword ptr [__imp__GetDC@4 (POINTER)]", "0x10068440"], ["0x100bab66", "mov ebp, eax", "0x10068446"], ["0x100bab68", "push 0", "0x10068448"], ["0x100bab6a", "push edi", "0x1006844a"], ["0x100bab6b", "push ebp", "0x1006844b"], ["0x100bab6c", "call dword ptr [__imp__SelectPalette@12 (POINTER)]", "0x1006844c"], ["0x100bab72", "push ebp", "0x10068452"], ["0x100bab73", "call dword ptr [__imp__RealizePalette@4 (POINTER)]", "0x10068453"], ["0x100bab79", "push ebp", "0x10068459"], ["0x100bab7a", "push 0", "0x1006845a"], ["0x100bab7c", "call dword ptr [__imp__ReleaseDC@8 (POINTER)]", "0x1006845c"], ["0x100bab82", "push edi", "0x10068462"], ["0x100bab83", "call dword ptr [__imp__DeleteObject@4 (POINTER)]", "0x10068463"], ["0x100bab89", "jmp 0x7", "0x10068469"]]}, {"orig": [["0x100bab8b", "mov esi, dword ptr [esp + 0x428]"], ["0x100bab92", "cmp dword ptr [ebx + 0x90], 0x10"], ["0x100bab99", "jne 0x10d"], ["0x100bab9f", "cmp dword ptr [ebx + 0xa8], 0"]], "recomp": [["0x1006846b", "mov ebx, dword ptr [esp + 0x430]"], ["0x10068472", "cmp dword ptr [esi + 0x90], 0x10"], ["0x10068479", "jne 0x12e"], ["0x1006847f", "cmp dword ptr [esi + 0xa8], 0"]]}, {"both": [["0x100baba6", "jne 0x13", "0x10068486"], ["0x100baba8", "push 0x200", "0x10068488"], ["0x100babad", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006848d"], ["0x100babb2", "add esp, 4", "0x10068492"]]}, {"orig": [["0x100babb5", "mov dword ptr [ebx + 0xa8], eax"], ["0x100babbb", "lea eax, [esp + 0x20]"]], "recomp": [["0x10068495", "mov dword ptr [esi + 0xa8], eax"], ["0x1006849b", "lea eax, [esp + 0x28]"], ["0x1006849f", "mov ecx, ebx"], ["0x100684a1", "push eax"], ["0x100684a2", "call MxPalette::GetEntries (FUNCTION)"], ["0x100684a7", "mov eax, dword ptr [esi + 0x94]"]]}, {"both": [["0x100babbf", "mov ecx, esi", "0x100684ad"], ["0x100babc1", "push eax", "0x100684af"]]}, {"orig": [["0x100babc2", "call MxPalette::GetEntries (FUNCTION)"], ["0x100babc7", "mov eax, dword ptr [ebx + 0x94]"], ["0x100babcd", "mov ecx, ebx"]], "recomp": [["0x100684b0", "call MxDisplaySurface::CountContiguousBitsSetTo1 (FUNCTION)"], ["0x100684b5", "mov ecx, esi"], ["0x100684b7", "mov byte ptr [esp + 0x1c], al"], ["0x100684bb", "mov eax, dword ptr [esi + 0x94]"], ["0x100684c1", "push eax"], ["0x100684c2", "call MxDisplaySurface::CountTotalBitsSetTo1 (FUNCTION)"], ["0x100684c7", "mov ecx, esi"], ["0x100684c9", "mov byte ptr [esp + 0x18], al"], ["0x100684cd", "mov eax, dword ptr [esi + 0x98]"]]}, {"both": [["0x100babcf", "push eax", "0x100684d3"], ["0x100babd0", "call MxDisplaySurface::CountContiguousBitsSetTo1 (FUNCTION)", "0x100684d4"]]}, {"orig": [["0x100babd5", "mov ecx, ebx"], ["0x100babd7", "mov byte ptr [esp + 0x11], al"], ["0x100babdb", "mov eax, dword ptr [ebx + 0x94]"]], "recomp": [["0x100684d9", "mov bl, al"], ["0x100684db", "mov ecx, esi"], ["0x100684dd", "mov eax, dword ptr [esi + 0x98]"]]}, {"both": [["0x100babe1", "push eax", "0x100684e3"], ["0x100babe2", "call MxDisplaySurface::CountTotalBitsSetTo1 (FUNCTION)", "0x100684e4"]]}, {"orig": [["0x100babe7", "mov ecx, ebx"]], "recomp": [["0x100684e9", "mov ecx, esi"]]}, {"both": [["0x100babe9", "mov byte ptr [esp + 0x10], al", "0x100684eb"]]}, {"orig": [["0x100babed", "mov eax, dword ptr [ebx + 0x98]"]], "recomp": [["0x100684ef", "mov eax, dword ptr [esi + 0x9c]"]]}, {"both": [["0x100babf3", "push eax", "0x100684f5"], ["0x100babf4", "call MxDisplaySurface::CountContiguousBitsSetTo1 (FUNCTION)", "0x100684f6"]]}, {"orig": [["0x100babf9", "mov ecx, ebx"], ["0x100babfb", "mov byte ptr [esp + 0x12], al"], ["0x100babff", "mov eax, dword ptr [ebx + 0x98]"]], "recomp": [["0x100684fb", "mov ecx, esi"], ["0x100684fd", "mov byte ptr [esp + 0x14], al"], ["0x10068501", "mov eax, dword ptr [esi + 0x9c]"]]}, {"both": [["0x100bac05", "push eax", "0x10068507"], ["0x100bac06", "call MxDisplaySurface::CountTotalBitsSetTo1 (FUNCTION)", "0x10068508"]]}, {"orig": [["0x100bac0b", "mov ecx, ebx"], ["0x100bac0d", "mov byte ptr [esp + 0x14], al"], ["0x100bac11", "mov eax, dword ptr [ebx + 0x9c]"], ["0x100bac17", "push eax"], ["0x100bac18", "call MxDisplaySurface::CountContiguousBitsSetTo1 (FUNCTION)"], ["0x100bac1d", "mov ecx, ebx"], ["0x100bac1f", "mov byte ptr [esp + 0x13], al"], ["0x100bac23", "mov eax, dword ptr [ebx + 0x9c]"], ["0x100bac29", "push eax"], ["0x100bac2a", "call MxDisplaySurface::CountTotalBitsSetTo1 (FUNCTION)"], ["0x100bac2f", "lea esi, [esp + 0x22]"]], "recomp": [["0x1006850d", "lea edi, [esp + 0x29]"]]}, {"both": [["0x100bac33", "xor edx, edx", "0x10068511"], ["0x100bac35", "mov cl, 8", "0x10068513"]]}, {"orig": [], "recomp": [["0x10068515", "and bl, 0x1f"], ["0x10068518", "sub cl, byte ptr [esp + 0x10]"], ["0x1006851c", "mov byte ptr [esp + 0x24], bl"], ["0x10068520", "and cl, 0x1f"], ["0x10068523", "mov byte ptr [esp + 0x20], cl"], ["0x10068527", "mov cl, 8"]]}, {"both": [["0x100bac37", "sub cl, al", "0x10068529"]]}, {"orig": [], "recomp": [["0x1006852b", "mov al, byte ptr [esp + 0x14]"], ["0x1006852f", "and cl, 0x1f"], ["0x10068532", "and al, 0x1f"], ["0x10068534", "mov byte ptr [esp + 0x10], cl"], ["0x10068538", "mov byte ptr [esp + 0x14], al"]]}, {"both": [["0x100bac39", "mov al, 8", "0x1006853c"]]}, {"orig": [["0x100bac3b", "sub al, byte ptr [esp + 0x14]"], ["0x100bac3f", "mov byte ptr [esp + 0x1c], cl"]], "recomp": [["0x1006853e", "sub al, byte ptr [esp + 0x18]"], ["0x10068542", "and al, 0x1f"]]}, {"both": [["0x100bac43", "mov byte ptr [esp + 0x18], al", "0x10068544"]]}, {"orig": [["0x100bac47", "mov al, 8"], ["0x100bac49", "sub al, byte ptr [esp + 0x10]"], ["0x100bac4d", "mov byte ptr [esp + 0x14], al"], ["0x100bac51", "mov al, byte ptr [esi - 2]"], ["0x100bac54", "mov cl, byte ptr [esp + 0x14]"], ["0x100bac58", "add esi, 4"]], "recomp": [["0x10068548", "mov al, byte ptr [esp + 0x1c]"], ["0x1006854c", "and al, 0x1f"], ["0x1006854e", "mov byte ptr [esp + 0x1c], al"], ["0x10068552", "mov al, byte ptr [edi + 1]"], ["0x10068555", "mov cl, byte ptr [esp + 0x10]"], ["0x10068559", "add edi, 4"]]}, {"both": [["0x100bac5b", "add edx, 2", "0x1006855c"], ["0x100bac5e", "shr al, cl", "0x1006855f"]]}, {"orig": [["0x100bac60", "movzx di, al"], ["0x100bac64", "mov cl, byte ptr [esp + 0x11]"], ["0x100bac68", "mov al, byte ptr [esi - 5]"], ["0x100bac6b", "shl di, cl"]], "recomp": [["0x10068561", "movzx bx, al"], ["0x10068565", "mov cl, byte ptr [esp + 0x14]"], ["0x10068569", "mov al, byte ptr [edi - 5]"], ["0x1006856c", "shl bx, cl"]]}, {"both": [["0x100bac6e", "mov cl, byte ptr [esp + 0x18]", "0x1006856f"], ["0x100bac72", "shr al, cl", "0x10068573"]]}, {"orig": [["0x100bac74", "mov cl, byte ptr [esp + 0x12]"]], "recomp": [["0x10068575", "mov cl, byte ptr [esp + 0x1c]"]]}, {"both": [["0x100bac78", "movzx ax, al", "0x10068579"], ["0x100bac7c", "shl ax, cl", "0x1006857d"]]}, {"orig": [["0x100bac7f", "or di, ax"], ["0x100bac82", "mov cl, byte ptr [esp + 0x1c]"], ["0x100bac86", "mov al, byte ptr [esi - 4]"]], "recomp": [["0x10068580", "or bx, ax"], ["0x10068583", "mov cl, byte ptr [esp + 0x20]"], ["0x10068587", "mov al, byte ptr [edi - 4]"]]}, {"both": [["0x100bac89", "shr al, cl", "0x1006858a"]]}, {"orig": [["0x100bac8b", "mov cl, byte ptr [esp + 0x13]"]], "recomp": [["0x1006858c", "mov cl, byte ptr [esp + 0x24]"]]}, {"both": [["0x100bac8f", "movzx ax, al", "0x10068590"], ["0x100bac93", "shl ax, cl", "0x10068594"]]}, {"orig": [["0x100bac96", "or di, ax"], ["0x100bac99", "mov ecx, dword ptr [ebx + 0xa8]"], ["0x100bac9f", "mov word ptr [ecx + edx - 2], di"]], "recomp": [["0x10068597", "or bx, ax"], ["0x1006859a", "mov ecx, dword ptr [esi + 0xa8]"], ["0x100685a0", "mov word ptr [ecx + edx - 2], bx"]]}, {"both": [["0x100baca4", "cmp edx, 0x200", "0x100685a5"], ["0x100bacaa", "jl -0x5b", "0x100685ab"], ["0x100bacac", "pop ebp", "0x100685ad"], ["0x100bacad", "pop edi", "0x100685ae"], ["0x100bacae", "pop esi", "0x100685af"], ["0x100bacaf", "pop ebx", "0x100685b0"]]}, {"orig": [["0x100bacb0", "add esp, 0x414"]], "recomp": [["0x100685b1", "add esp, 0x41c"]]}, {"both": [["0x100bacb6", "ret 4", "0x100685b7"]]}, {"orig": [["0x100bacb9", "int3 "], ["0x100bacba", "int3 "], ["0x100bacbb", "int3 "], ["0x100bacbc", "int3 "], ["0x100bacbd", "int3 "], ["0x100bacbe", "int3 "], ["0x100bacbf", "int3 "], ["0x100bacc0", "sub esp, 0x80"], ["0x100bacc6", "mov dword ptr [esp], ecx"], ["0x100bacca", "push ebx"], ["0x100baccb", "push esi"], ["0x100baccc", "push edi"], ["0x100baccd", "mov esi, dword ptr [esp + 0x90]"], ["0x100bacd4", "push ebp"], ["0x100bacd5", "mov edi, dword ptr [esi + 0xc]"]], "recomp": []}]]]}, {"address": "0x100bacc0", "recomp": "0x100685c0", "name": "MxDisplaySurface::VTable0x28", "matching": 0.4520367936925099, "diff": [["@@ -0x100bacc0,378 +0x100685c0,383 @@", [{"both": [["0x100bacc0", "sub esp, 0x80", "0x100685c0"], ["0x100bacc6", "mov dword ptr [esp], ecx", "0x100685c6"], ["0x100bacca", "push ebx", "0x100685ca"], ["0x100baccb", "push esi", "0x100685cb"], ["0x100baccc", "push edi", "0x100685cc"], ["0x100baccd", "mov esi, dword ptr [esp + 0x90]", "0x100685cd"], ["0x100bacd4", "push ebp", "0x100685d4"], ["0x100bacd5", "mov edi, dword ptr [esi + 0xc]", "0x100685d5"]]}, {"orig": [["0x100bacd8", "mov ecx, dword ptr [edi + 8]"], ["0x100bacdb", "test ecx, ecx"]], "recomp": [["0x100685d8", "mov edx, dword ptr [edi + 8]"], ["0x100685db", "test edx, edx"]]}, {"both": [["0x100bacdd", "jg 0x2", "0x100685dd"]]}, {"orig": [["0x100bacdf", "neg ecx"]], "recomp": [["0x100685df", "neg edx"]]}, {"both": [["0x100bace1", "lea eax, [esp + 0xac]", "0x100685e1"]]}, {"orig": [["0x100bace8", "lea edx, [esp + 0xa8]"]], "recomp": [["0x100685e8", "lea ecx, [esp + 0xa8]"]]}, {"both": [["0x100bacef", "lea ebx, [esp + 0xa4]", "0x100685ef"], ["0x100bacf6", "push eax", "0x100685f6"], ["0x100bacf7", "lea eax, [esp + 0xa4]", "0x100685f7"]]}, {"orig": [["0x100bacfe", "push edx"], ["0x100bacff", "lea edx, [esp + 0xa4]"]], "recomp": [["0x100685fe", "push ecx"], ["0x100685ff", "lea ecx, [esp + 0xa4]"]]}, {"both": [["0x100bad06", "push ebx", "0x10068606"], ["0x100bad07", "lea ebx, [esp + 0xa4]", "0x10068607"], ["0x100bad0e", "push eax", "0x1006860e"], ["0x100bad0f", "mov ebp, dword ptr [esp + 0x20]", "0x1006860f"]]}, {"orig": [["0x100bad13", "push edx"], ["0x100bad14", "mov edx, dword ptr [esp + 0x24]"]], "recomp": [["0x10068613", "push ecx"], ["0x10068614", "mov ecx, dword ptr [esp + 0x24]"]]}, {"both": [["0x100bad18", "push ebx", "0x10068618"], ["0x100bad19", "mov eax, dword ptr [ebp + 0x14]", "0x10068619"], ["0x100bad1c", "sub eax, dword ptr [ebp + 0xc]", "0x1006861c"], ["0x100bad1f", "inc eax", "0x1006861f"], ["0x100bad20", "push eax", "0x10068620"]]}, {"orig": [["0x100bad21", "mov eax, dword ptr [edx + 0x10]"], ["0x100bad24", "sub eax, dword ptr [edx + 8]"]], "recomp": [["0x10068621", "mov eax, dword ptr [ecx + 0x10]"], ["0x10068624", "sub eax, dword ptr [ecx + 8]"], ["0x10068627", "mov ecx, dword ptr [edi + 4]"]]}, {"both": [["0x100bad27", "inc eax", "0x1006862a"], ["0x100bad28", "push eax", "0x1006862b"]]}, {"orig": [["0x100bad29", "push ecx"], ["0x100bad2a", "mov ecx, dword ptr [edi + 4]"]], "recomp": [["0x1006862c", "push edx"]]}, {"both": [["0x100bad2d", "push ecx", "0x1006862d"], ["0x100bad2e", "call GetRectIntersection (FUNCTION)", "0x1006862e"], ["0x100bad33", "add esp, 0x28", "0x10068633"], ["0x100bad36", "test al, al", "0x10068636"]]}, {"orig": [["0x100bad38", "je 0x47d"]], "recomp": [["0x10068638", "je 0x471"]]}, {"both": [["0x100bad3e", "lea edi, [esp + 0x24]", "0x1006863e"], ["0x100bad42", "xor eax, eax", "0x10068642"], ["0x100bad44", "mov ecx, 0x1b", "0x10068644"], ["0x100bad49", "push 0", "0x10068649"], ["0x100bad4b", "rep stosd dword ptr es:[edi], eax", "0x1006864b"]]}, {"orig": [["0x100bad4d", "mov edx, dword ptr [esp + 0x14]"]], "recomp": [["0x1006864d", "mov ecx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100bad51", "push 1", "0x10068651"], ["0x100bad53", "mov dword ptr [esp + 0x2c], 0x6c", "0x10068653"]]}, {"orig": [["0x100bad5b", "mov eax, dword ptr [edx + 0x30]"], ["0x100bad5e", "lea ecx, [esp + 0x2c]"], ["0x100bad62", "push ecx"]], "recomp": [["0x1006865b", "mov eax, dword ptr [ecx + 0x30]"], ["0x1006865e", "lea edx, [esp + 0x2c]"], ["0x10068662", "push edx"]]}, {"both": [["0x100bad63", "push 0", "0x10068663"], ["0x100bad65", "push eax", "0x10068665"], ["0x100bad66", "mov ebx, dword ptr [eax]", "0x10068666"], ["0x100bad68", "call dword ptr [ebx + 0x64]", "0x10068668"], ["0x100bad6b", "cmp eax, 0x887601c2", "0x1006866b"], ["0x100bad70", "jne 0x25", "0x10068670"]]}, {"orig": [["0x100bad72", "mov edx, dword ptr [esp + 0x10]"], ["0x100bad76", "mov eax, dword ptr [edx + 0x30]"]], "recomp": [["0x10068672", "mov ecx, dword ptr [esp + 0x10]"], ["0x10068676", "mov eax, dword ptr [ecx + 0x30]"]]}, {"both": [["0x100bad79", "push eax", "0x10068679"], ["0x100bad7a", "mov ebx, dword ptr [eax]", "0x1006867a"], ["0x100bad7c", "call dword ptr [ebx + 0x6c]", "0x1006867c"]]}, {"orig": [["0x100bad7f", "mov edx, dword ptr [esp + 0x10]"]], "recomp": [["0x1006867f", "mov ecx, dword ptr [esp + 0x10]"]]}, {"both": [["0x100bad83", "push 0", "0x10068683"]]}, {"orig": [["0x100bad85", "lea ecx, [esp + 0x28]"]], "recomp": [["0x10068685", "lea edx, [esp + 0x28]"]]}, {"both": [["0x100bad89", "push 1", "0x10068689"]]}, {"orig": [["0x100bad8b", "mov eax, dword ptr [edx + 0x30]"], ["0x100bad8e", "push ecx"]], "recomp": [["0x1006868b", "mov eax, dword ptr [ecx + 0x30]"], ["0x1006868e", "push edx"]]}, {"both": [["0x100bad8f", "mov ebx, dword ptr [eax]", "0x1006868f"], ["0x100bad91", "push 0", "0x10068691"], ["0x100bad93", "push eax", "0x10068693"], ["0x100bad94", "call dword ptr [ebx + 0x64]", "0x10068694"], ["0x100bad97", "test eax, eax", "0x10068697"]]}, {"orig": [["0x100bad99", "jne 0x41c"], ["0x100bad9f", "mov edi, dword ptr [esi + 0xc]"], ["0x100bada2", "lea ecx, [edi + 0x10]"], ["0x100bada5", "mov eax, dword ptr [ecx]"], ["0x100bada7", "test eax, eax"]], "recomp": [["0x10068699", "jne 0x410"], ["0x1006869f", "mov eax, dword ptr [esi + 0xc]"], ["0x100686a2", "lea edi, [eax + 0x10]"], ["0x100686a5", "mov ebp, dword ptr [edi]"], ["0x100686a7", "test ebp, ebp"]]}, {"both": [["0x100bada9", "jne 0x39", "0x100686a9"]]}, {"orig": [["0x100badab", "cmp eax, 0x10"], ["0x100badae", "je 0x7"], ["0x100badb0", "mov edx, dword ptr [edi + 8]"], ["0x100badb3", "test edx, edx"], ["0x100badb5", "jge 0x9"], ["0x100badb7", "mov edx, dword ptr [esp + 0x9c]"], ["0x100badbe", "jmp 0xc"]], "recomp": [["0x100686ab", "cmp ebp, 0x10"], ["0x100686ae", "je 0x15"], ["0x100686b0", "mov ecx, dword ptr [eax + 8]"], ["0x100686b3", "test ecx, ecx"], ["0x100686b5", "jl 0xe"]]}, {"both": [["0x100badc0", "jg 0x2", "0x100686b7"]]}, {"orig": [["0x100badc2", "neg edx"], ["0x100badc4", "sub edx, dword ptr [esp + 0x9c]"], ["0x100badcb", "dec edx"], ["0x100badcc", "mov ebx, dword ptr [edi + 4]"], ["0x100badcf", "add ebx, 3"], ["0x100badd2", "and ebx, 0xfffffffc"], ["0x100badd5", "imul ebx, edx"], ["0x100badd8", "add ebx, dword ptr [esi + 0x14]"], ["0x100baddb", "add ebx, dword ptr [esp + 0x98]"]], "recomp": [["0x100686b9", "neg ecx"], ["0x100686bb", "sub ecx, dword ptr [esp + 0x9c]"], ["0x100686c2", "dec ecx"], ["0x100686c3", "jmp 0x7"], ["0x100686c5", "mov ecx, dword ptr [esp + 0x9c]"], ["0x100686cc", "mov edx, dword ptr [eax + 4]"], ["0x100686cf", "add edx, 3"], ["0x100686d2", "and edx, 0xfffffffc"], ["0x100686d5", "imul edx, ecx"], ["0x100686d8", "add edx, dword ptr [esi + 0x14]"], ["0x100686db", "add edx, dword ptr [esp + 0x98]"]]}, {"both": [["0x100bade2", "jmp 0x29", "0x100686e2"]]}, {"orig": [["0x100bade4", "cmp eax, 0x10"]], "recomp": [["0x100686e4", "cmp ebp, 0x10"]]}, {"both": [["0x100bade7", "jne 0x5", "0x100686e7"]]}, {"orig": [["0x100bade9", "mov ebx, dword ptr [esi + 0x14]"]], "recomp": [["0x100686e9", "mov edx, dword ptr [esi + 0x14]"]]}, {"both": [["0x100badec", "jmp 0x1f", "0x100686ec"]]}, {"orig": [["0x100badee", "mov edx, dword ptr [edi + 8]"], ["0x100badf1", "test edx, edx"], ["0x100badf3", "jge 0x4"], ["0x100badf5", "xor edx, edx"], ["0x100badf7", "jmp 0x5"]], "recomp": [["0x100686ee", "mov ecx, dword ptr [eax + 8]"], ["0x100686f1", "test ecx, ecx"], ["0x100686f3", "jl 0x7"]]}, {"both": [["0x100badf9", "jg 0x2", "0x100686f5"]]}, {"orig": [["0x100badfb", "neg edx"], ["0x100badfd", "dec edx"], ["0x100badfe", "mov ebx, dword ptr [edi + 4]"], ["0x100bae01", "add ebx, 3"], ["0x100bae04", "and ebx, 0xfffffffc"], ["0x100bae07", "imul ebx, edx"], ["0x100bae0a", "add ebx, dword ptr [esi + 0x14]"], ["0x100bae0d", "mov edx, dword ptr [esp + 0x10]"], ["0x100bae11", "test byte ptr [edx + 0x20], 8"], ["0x100bae15", "je 0x243"]], "recomp": [["0x100686f7", "neg ecx"], ["0x100686f9", "dec ecx"], ["0x100686fa", "jmp 0x2"], ["0x100686fc", "xor ecx, ecx"], ["0x100686fe", "mov edx, dword ptr [eax + 4]"], ["0x10068701", "add edx, 3"], ["0x10068704", "and edx, 0xfffffffc"], ["0x10068707", "imul edx, ecx"], ["0x1006870a", "add edx, dword ptr [esi + 0x14]"], ["0x1006870d", "mov ecx, dword ptr [esp + 0x10]"], ["0x10068711", "test byte ptr [ecx + 0x20], 8"], ["0x10068715", "je 0x237"]]}, {"both": [["0x100bae1b", "shl dword ptr [esp + 0xa4], 1", "0x1006871b"], ["0x100bae23", "shl dword ptr [esp + 0xa0], 1", "0x10068723"]]}, {"orig": [["0x100bae2b", "mov eax, dword ptr [edx + 0x90]"], ["0x100bae31", "cmp eax, 8"]], "recomp": [["0x1006872b", "mov ecx, dword ptr [ecx + 0x90]"], ["0x10068731", "cmp ecx, 8"]]}, {"both": [["0x100bae34", "je 0xe", "0x10068734"]]}, {"orig": [["0x100bae36", "cmp eax, 0x10"]], "recomp": [["0x10068736", "cmp ecx, 0x10"]]}, {"both": [["0x100bae39", "je 0xcc", "0x10068739"]]}, {"orig": [["0x100bae3f", "jmp 0x362"], ["0x100bae44", "mov edx, dword ptr [esp + 0x34]"], ["0x100bae48", "imul edx, dword ptr [esp + 0xa4]"], ["0x100bae50", "add edx, dword ptr [esp + 0x48]"], ["0x100bae54", "add edx, dword ptr [esp + 0xa0]"], ["0x100bae5b", "cmp dword ptr [ecx], 0x10"], ["0x100bae5e", "je 0x6"], ["0x100bae60", "cmp dword ptr [edi + 8], 0"], ["0x100bae64", "jge 0xb"], ["0x100bae66", "mov ebp, dword ptr [edi + 4]"], ["0x100bae69", "add ebp, 3"], ["0x100bae6c", "and ebp, 0xfffffffc"], ["0x100bae6f", "jmp 0xb"], ["0x100bae71", "mov ebp, dword ptr [edi + 4]"]], "recomp": [["0x1006873f", "jmp 0x356"], ["0x10068744", "mov ebx, dword ptr [esp + 0x34]"], ["0x10068748", "imul ebx, dword ptr [esp + 0xa4]"], ["0x10068750", "add ebx, dword ptr [esp + 0x48]"], ["0x10068754", "add ebx, dword ptr [esp + 0xa0]"], ["0x1006875b", "cmp dword ptr [edi], 0x10"], ["0x1006875e", "je 0x13"], ["0x10068760", "cmp dword ptr [eax + 8], 0"], ["0x10068764", "jl 0xd"], ["0x10068766", "mov ebp, dword ptr [eax + 4]"]]}, {"both": [["0x100bae74", "add ebp, 3", "0x10068769"], ["0x100bae77", "and ebp, 0xfffffffc", "0x1006876c"], ["0x100bae7a", "neg ebp", "0x1006876f"]]}, {"orig": [], "recomp": [["0x10068771", "jmp 0x9"], ["0x10068773", "mov ebp, dword ptr [eax + 4]"], ["0x10068776", "add ebp, 3"], ["0x10068779", "and ebp, 0xfffffffc"]]}, {"both": [["0x100bae7c", "sub ebp, dword ptr [esp + 0xa8]", "0x1006877c"], ["0x100bae83", "mov eax, dword ptr [esp + 0x34]", "0x10068783"], ["0x100bae87", "mov ecx, dword ptr [esp + 0xa8]", "0x10068787"], ["0x100bae8e", "mov esi, dword ptr [esp + 0xac]", "0x1006878e"], ["0x100bae95", "add ecx, ecx", "0x10068795"], ["0x100bae97", "dec dword ptr [esp + 0xac]", "0x10068797"], ["0x100bae9e", "sub eax, ecx", "0x1006879e"], ["0x100baea0", "test esi, esi", "0x100687a0"], ["0x100baea2", "mov dword ptr [esp + 0x14], eax", "0x100687a2"]]}, {"orig": [["0x100baea6", "je 0x2fa"], ["0x100baeac", "mov esi, edx"]], "recomp": [["0x100687a6", "je 0x2ee"], ["0x100687ac", "mov esi, ebx"]]}, {"both": [["0x100baeae", "xor ecx, ecx", "0x100687ae"], ["0x100baeb0", "cmp dword ptr [esp + 0xa8], ecx", "0x100687b0"], ["0x100baeb7", "jle 0x18", "0x100687b7"]]}, {"orig": [["0x100baeb9", "mov al, byte ptr [ebx]"]], "recomp": [["0x100687b9", "mov al, byte ptr [edx]"], ["0x100687bb", "inc ebx"]]}, {"both": [["0x100baebb", "inc edx", "0x100687bc"], ["0x100baebc", "inc ebx", "0x100687bd"]]}, {"orig": [["0x100baebd", "inc edx"]], "recomp": []}, {"both": [["0x100baebe", "inc ecx", "0x100687be"]]}, {"orig": [["0x100baebf", "mov byte ptr [edx - 2], al"], ["0x100baec2", "mov al, byte ptr [ebx - 1]"], ["0x100baec5", "mov byte ptr [edx - 1], al"], ["0x100baec8", "cmp dword ptr [esp + 0xa8], ecx"], ["0x100baecf", "jg -0x18"], ["0x100baed1", "add ebx, ebp"], ["0x100baed3", "add edx, dword ptr [esp + 0x14]"]], "recomp": [["0x100687bf", "mov byte ptr [ebx - 2], al"], ["0x100687c2", "mov al, byte ptr [edx - 1]"], ["0x100687c5", "mov byte ptr [ebx - 1], al"], ["0x100687c8", "cmp ecx, dword ptr [esp + 0xa8]"], ["0x100687cf", "jl -0x18"], ["0x100687d1", "add edx, ebp"], ["0x100687d3", "add ebx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100baed7", "mov eax, dword ptr [esp + 0xa8]", "0x100687d7"]]}, {"orig": [["0x100baede", "mov edi, edx"]], "recomp": [["0x100687de", "mov edi, ebx"]]}, {"both": [["0x100baee0", "add eax, eax", "0x100687e0"], ["0x100baee2", "mov ecx, eax", "0x100687e2"], ["0x100baee4", "shr ecx, 2", "0x100687e4"], ["0x100baee7", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x100687e7"], ["0x100baee9", "mov ecx, eax", "0x100687e9"], ["0x100baeeb", "and ecx, 3", "0x100687eb"], ["0x100baeee", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x100687ee"]]}, {"orig": [["0x100baef0", "add edx, dword ptr [esp + 0x34]"]], "recomp": [["0x100687f0", "add ebx, dword ptr [esp + 0x34]"]]}, {"both": [["0x100baef4", "mov ecx, dword ptr [esp + 0xac]", "0x100687f4"], ["0x100baefb", "dec dword ptr [esp + 0xac]", "0x100687fb"], ["0x100baf02", "test ecx, ecx", "0x10068802"], ["0x100baf04", "jne -0x5a", "0x10068804"]]}, {"orig": [["0x100baf06", "jmp 0x29b"]], "recomp": [["0x10068806", "jmp 0x28f"], ["0x1006880b", "mov ebx, dword ptr [esp + 0x34]"], ["0x1006880f", "mov ecx, dword ptr [esp + 0xa0]"], ["0x10068816", "imul ebx, dword ptr [esp + 0xa4]"], ["0x1006881e", "lea ebx, [ebx + ecx*2]"], ["0x10068821", "add ebx, dword ptr [esp + 0x48]"], ["0x10068825", "cmp dword ptr [edi], 0x10"], ["0x10068828", "je 0x13"], ["0x1006882a", "cmp dword ptr [eax + 8], 0"], ["0x1006882e", "jl 0xd"], ["0x10068830", "mov eax, dword ptr [eax + 4]"], ["0x10068833", "add eax, 3"], ["0x10068836", "and eax, 0xfffffffc"], ["0x10068839", "neg eax"], ["0x1006883b", "jmp 0x9"], ["0x1006883d", "mov eax, dword ptr [eax + 4]"], ["0x10068840", "add eax, 3"], ["0x10068843", "and eax, 0xfffffffc"], ["0x10068846", "mov dword ptr [esp + 0x20], eax"], ["0x1006884a", "mov eax, dword ptr [esp + 0xa8]"], ["0x10068851", "mov ebp, eax"], ["0x10068853", "mov ecx, dword ptr [esp + 0xac]"], ["0x1006885a", "shl ebp, 2"], ["0x1006885d", "mov esi, dword ptr [esp + 0xa8]"], ["0x10068864", "mov edi, dword ptr [esp + 0x10]"], ["0x10068868", "sub dword ptr [esp + 0x20], eax"]]}, {"both": [["0x100baf0b", "mov eax, dword ptr [esp + 0x34]", "0x1006886c"]]}, {"orig": [["0x100baf0f", "mov edx, dword ptr [esp + 0xa0]"], ["0x100baf16", "imul eax, dword ptr [esp + 0xa4]"], ["0x100baf1e", "lea eax, [eax + edx*2]"], ["0x100baf21", "add eax, dword ptr [esp + 0x48]"], ["0x100baf25", "cmp dword ptr [ecx], 0x10"], ["0x100baf28", "je 0x6"], ["0x100baf2a", "cmp dword ptr [edi + 8], 0"], ["0x100baf2e", "jge 0xb"], ["0x100baf30", "mov ecx, dword ptr [edi + 4]"], ["0x100baf33", "add ecx, 3"], ["0x100baf36", "and ecx, 0xfffffffc"], ["0x100baf39", "jmp 0xb"], ["0x100baf3b", "mov ecx, dword ptr [edi + 4]"], ["0x100baf3e", "add ecx, 3"], ["0x100baf41", "and ecx, 0xfffffffc"], ["0x100baf44", "neg ecx"], ["0x100baf46", "sub ecx, dword ptr [esp + 0xa8]"], ["0x100baf4d", "mov ebp, dword ptr [esp + 0xa8]"], ["0x100baf54", "shl ebp, 2"], ["0x100baf57", "mov edx, dword ptr [esp + 0xac]"], ["0x100baf5e", "mov esi, dword ptr [esp + 0xa8]"], ["0x100baf65", "mov dword ptr [esp + 0x14], ecx"], ["0x100baf69", "mov ecx, dword ptr [esp + 0x34]"], ["0x100baf6d", "mov dword ptr [esp + 0x18], edx"], ["0x100baf71", "sub ecx, ebp"]], "recomp": [["0x10068870", "mov dword ptr [esp + 0x18], ecx"], ["0x10068874", "sub eax, ebp"]]}, {"both": [["0x100baf73", "mov dword ptr [esp + 0x1c], esi", "0x10068876"]]}, {"orig": [["0x100baf77", "mov dword ptr [esp + 0x20], ecx"], ["0x100baf7b", "mov ecx, dword ptr [esp + 0x10]"]], "recomp": [["0x1006887a", "cmp dword ptr [esp + 0x20], 0"], ["0x1006887f", "mov dword ptr [esp + 0x14], eax"], ["0x10068883", "mov eax, dword ptr [edi + 0xa8]"], ["0x10068889", "jne 0x64"]]}, {"both": [["0x100baf7f", "cmp dword ptr [esp + 0x14], 0", "0x1006888b"]]}, {"orig": [["0x100baf84", "mov edx, dword ptr [ecx + 0xa8]"], ["0x100baf8a", "jne 0x6d"], ["0x100baf8c", "cmp dword ptr [esp + 0x20], 0"], ["0x100baf91", "jne 0x66"], ["0x100baf93", "mov ecx, dword ptr [esp + 0xac]"]], "recomp": [["0x10068890", "jne 0x5d"]]}, {"both": [["0x100baf9a", "dec ecx", "0x10068892"], ["0x100baf9b", "cmp dword ptr [esp + 0xac], 0", "0x10068893"], ["0x100bafa3", "mov dword ptr [esp + 0x18], ecx", "0x1006889b"]]}, {"orig": [["0x100bafa7", "je 0x1f9"], ["0x100bafad", "cmp dword ptr [esp + 0x1c], 0"], ["0x100bafb2", "mov esi, eax"], ["0x100bafb4", "jle 0x1e"]], "recomp": [["0x1006889f", "je 0x1f5"], ["0x100688a5", "mov esi, ebx"]]}, {"both": [["0x100bafb6", "mov edi, dword ptr [esp + 0x1c]", "0x100688a7"]]}, {"orig": [], "recomp": [["0x100688ab", "test edi, edi"], ["0x100688ad", "jle 0x1b"]]}, {"both": [["0x100bafba", "xor ecx, ecx", "0x100688af"]]}, {"orig": [["0x100bafbc", "add eax, 2"], ["0x100bafbf", "mov cl, byte ptr [ebx]"], ["0x100bafc1", "inc ebx"], ["0x100bafc2", "mov cx, word ptr [edx + ecx*2]"], ["0x100bafc6", "add eax, 2"], ["0x100bafc9", "mov word ptr [eax - 4], cx"]], "recomp": [["0x100688b1", "inc edx"], ["0x100688b2", "add ebx, 2"], ["0x100688b5", "mov cl, byte ptr [edx - 1]"], ["0x100688b8", "mov cx, word ptr [eax + ecx*2]"], ["0x100688bc", "add ebx, 2"], ["0x100688bf", "mov word ptr [ebx - 4], cx"]]}, {"both": [["0x100bafcd", "dec edi", "0x100688c3"]]}, {"orig": [["0x100bafce", "mov word ptr [eax - 2], cx"], ["0x100bafd2", "jne -0x1a"], ["0x100bafd4", "mov edi, eax"]], "recomp": [["0x100688c4", "mov word ptr [ebx - 2], cx"], ["0x100688c8", "jne -0x1b"], ["0x100688ca", "mov edi, ebx"]]}, {"both": [["0x100bafd6", "mov ecx, ebp", "0x100688cc"], ["0x100bafd8", "shr ecx, 2", "0x100688ce"], ["0x100bafdb", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x100688d1"], ["0x100bafdd", "mov ecx, ebp", "0x100688d3"], ["0x100bafdf", "and ecx, 3", "0x100688d5"], ["0x100bafe2", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x100688d8"]]}, {"orig": [["0x100bafe4", "add eax, dword ptr [esp + 0x34]"]], "recomp": [["0x100688da", "add ebx, dword ptr [esp + 0x34]"]]}, {"both": [["0x100bafe8", "mov ecx, dword ptr [esp + 0x18]", "0x100688de"], ["0x100bafec", "dec dword ptr [esp + 0x18]", "0x100688e2"], ["0x100baff0", "test ecx, ecx", "0x100688e6"]]}, {"orig": [["0x100baff2", "jne -0x47"], ["0x100baff4", "jmp 0x1ad"]], "recomp": [["0x100688e8", "jne -0x45"], ["0x100688ea", "jmp 0x1ab"]]}, {"both": [["0x100baff9", "mov ecx, dword ptr [esp + 0x18]", "0x100688ef"], ["0x100baffd", "dec dword ptr [esp + 0x18]", "0x100688f3"], ["0x100bb001", "test ecx, ecx", "0x100688f7"]]}, {"orig": [["0x100bb003", "je 0x19d"], ["0x100bb009", "cmp dword ptr [esp + 0x1c], 0"], ["0x100bb00e", "mov esi, eax"], ["0x100bb010", "jle 0x1e"]], "recomp": [["0x100688f9", "je 0x19b"], ["0x100688ff", "mov esi, ebx"]]}, {"both": [["0x100bb012", "mov edi, dword ptr [esp + 0x1c]", "0x10068901"]]}, {"orig": [], "recomp": [["0x10068905", "test edi, edi"], ["0x10068907", "jle 0x1b"]]}, {"both": [["0x100bb016", "xor ecx, ecx", "0x10068909"]]}, {"orig": [["0x100bb018", "add eax, 2"], ["0x100bb01b", "mov cl, byte ptr [ebx]"], ["0x100bb01d", "inc ebx"], ["0x100bb01e", "mov cx, word ptr [edx + ecx*2]"], ["0x100bb022", "add eax, 2"], ["0x100bb025", "mov word ptr [eax - 4], cx"]], "recomp": [["0x1006890b", "inc edx"], ["0x1006890c", "add ebx, 2"], ["0x1006890f", "mov cl, byte ptr [edx - 1]"], ["0x10068912", "mov cx, word ptr [eax + ecx*2]"], ["0x10068916", "add ebx, 2"], ["0x10068919", "mov word ptr [ebx - 4], cx"]]}, {"both": [["0x100bb029", "dec edi", "0x1006891d"]]}, {"orig": [["0x100bb02a", "mov word ptr [eax - 2], cx"], ["0x100bb02e", "jne -0x1a"]], "recomp": [["0x1006891e", "mov word ptr [ebx - 2], cx"], ["0x10068922", "jne -0x1b"], ["0x10068924", "add edx, dword ptr [esp + 0x20]"]]}, {"both": [["0x100bb030", "add ebx, dword ptr [esp + 0x14]", "0x10068928"]]}, {"orig": [["0x100bb034", "add eax, dword ptr [esp + 0x20]"]], "recomp": []}, {"both": [["0x100bb038", "mov ecx, dword ptr [esp + 0xa8]", "0x1006892c"]]}, {"orig": [["0x100bb03f", "mov edi, eax"]], "recomp": [["0x10068933", "mov edi, ebx"]]}, {"both": [["0x100bb041", "shl ecx, 2", "0x10068935"], ["0x100bb044", "shr ecx, 2", "0x10068938"], ["0x100bb047", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1006893b"]]}, {"orig": [["0x100bb049", "add eax, dword ptr [esp + 0x34]"]], "recomp": [["0x1006893d", "add ebx, dword ptr [esp + 0x34]"]]}, {"both": [["0x100bb04d", "mov ecx, dword ptr [esp + 0x18]", "0x10068941"], ["0x100bb051", "dec dword ptr [esp + 0x18]", "0x10068945"], ["0x100bb055", "test ecx, ecx", "0x10068949"]]}, {"orig": [["0x100bb057", "jne -0x50"]], "recomp": [["0x1006894b", "jne -0x4e"]]}, {"both": [["0x100bb059", "jmp 0x148", "0x1006894d"]]}, {"orig": [["0x100bb05e", "mov edx, dword ptr [esp + 0x10]"], ["0x100bb062", "mov ecx, dword ptr [edx + 0x90]"]], "recomp": [["0x10068952", "mov ecx, dword ptr [esp + 0x10]"], ["0x10068956", "mov ecx, dword ptr [ecx + 0x90]"]]}, {"both": [["0x100bb068", "cmp ecx, 8", "0x1006895c"], ["0x100bb06b", "je 0xe", "0x1006895f"], ["0x100bb06d", "cmp ecx, 0x10", "0x10068961"], ["0x100bb070", "je 0x91", "0x10068964"], ["0x100bb076", "jmp 0x12b", "0x1006896a"]]}, {"orig": [["0x100bb07b", "mov edx, dword ptr [esp + 0x34]"], ["0x100bb07f", "imul edx, dword ptr [esp + 0xa4]"], ["0x100bb087", "add edx, dword ptr [esp + 0x48]"], ["0x100bb08b", "add edx, dword ptr [esp + 0xa0]"], ["0x100bb092", "cmp eax, 0x10"], ["0x100bb095", "je 0x6"], ["0x100bb097", "cmp dword ptr [edi + 8], 0"], ["0x100bb09b", "jge 0xb"], ["0x100bb09d", "mov ebp, dword ptr [edi + 4]"], ["0x100bb0a0", "add ebp, 3"], ["0x100bb0a3", "and ebp, 0xfffffffc"], ["0x100bb0a6", "jmp 0xb"], ["0x100bb0a8", "mov ebp, dword ptr [edi + 4]"]], "recomp": [["0x1006896f", "mov ebx, dword ptr [esp + 0x34]"], ["0x10068973", "imul ebx, dword ptr [esp + 0xa4]"], ["0x1006897b", "add ebx, dword ptr [esp + 0x48]"], ["0x1006897f", "add ebx, dword ptr [esp + 0xa0]"], ["0x10068986", "cmp ebp, 0x10"], ["0x10068989", "je 0x13"], ["0x1006898b", "cmp dword ptr [eax + 8], 0"], ["0x1006898f", "jl 0xd"], ["0x10068991", "mov ebp, dword ptr [eax + 4]"]]}, {"both": [["0x100bb0ab", "add ebp, 3", "0x10068994"], ["0x100bb0ae", "and ebp, 0xfffffffc", "0x10068997"], ["0x100bb0b1", "neg ebp", "0x1006899a"]]}, {"orig": [], "recomp": [["0x1006899c", "jmp 0x9"], ["0x1006899e", "mov ebp, dword ptr [eax + 4]"], ["0x100689a1", "add ebp, 3"], ["0x100689a4", "and ebp, 0xfffffffc"]]}, {"both": [["0x100bb0b3", "mov eax, dword ptr [esp + 0x34]", "0x100689a7"], ["0x100bb0b7", "mov ecx, dword ptr [esp + 0xac]", "0x100689ab"], ["0x100bb0be", "mov dword ptr [esp + 0x14], eax", "0x100689b2"], ["0x100bb0c2", "dec dword ptr [esp + 0xac]", "0x100689b6"], ["0x100bb0c9", "test ecx, ecx", "0x100689bd"], ["0x100bb0cb", "je 0xd5", "0x100689bf"], ["0x100bb0d1", "mov eax, dword ptr [esp + 0xa8]", "0x100689c5"]]}, {"orig": [["0x100bb0d8", "mov edi, edx"], ["0x100bb0da", "mov esi, ebx"]], "recomp": [["0x100689cc", "mov edi, ebx"], ["0x100689ce", "mov esi, edx"]]}, {"both": [["0x100bb0dc", "mov ecx, eax", "0x100689d0"], ["0x100bb0de", "shr ecx, 2", "0x100689d2"]]}, {"orig": [["0x100bb0e1", "add ebx, ebp"]], "recomp": [["0x100689d5", "add edx, ebp"]]}, {"both": [["0x100bb0e3", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x100689d7"], ["0x100bb0e5", "mov ecx, eax", "0x100689d9"], ["0x100bb0e7", "and ecx, 3", "0x100689db"], ["0x100bb0ea", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x100689de"]]}, {"orig": [["0x100bb0ec", "add edx, dword ptr [esp + 0x14]"]], "recomp": [["0x100689e0", "add ebx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100bb0f0", "mov eax, dword ptr [esp + 0xac]", "0x100689e4"], ["0x100bb0f7", "dec dword ptr [esp + 0xac]", "0x100689eb"], ["0x100bb0fe", "test eax, eax", "0x100689f2"], ["0x100bb100", "jne -0x31", "0x100689f4"], ["0x100bb102", "jmp 0x9f", "0x100689f6"], ["0x100bb107", "mov esi, dword ptr [esp + 0x34]", "0x100689fb"], ["0x100bb10b", "mov ecx, dword ptr [esp + 0xa0]", "0x100689ff"], ["0x100bb112", "imul esi, dword ptr [esp + 0xa4]", "0x10068a06"], ["0x100bb11a", "lea esi, [esi + ecx*2]", "0x10068a0e"], ["0x100bb11d", "add esi, dword ptr [esp + 0x48]", "0x10068a11"]]}, {"orig": [["0x100bb121", "cmp eax, 0x10"], ["0x100bb124", "je 0x6"], ["0x100bb126", "cmp dword ptr [edi + 8], 0"], ["0x100bb12a", "jge 0xb"], ["0x100bb12c", "mov edi, dword ptr [edi + 4]"], ["0x100bb12f", "add edi, 3"], ["0x100bb132", "and edi, 0xfffffffc"], ["0x100bb135", "jmp 0xb"], ["0x100bb137", "mov edi, dword ptr [edi + 4]"]], "recomp": [["0x10068a15", "cmp ebp, 0x10"], ["0x10068a18", "je 0x13"], ["0x10068a1a", "cmp dword ptr [eax + 8], 0"], ["0x10068a1e", "jl 0xd"], ["0x10068a20", "mov edi, dword ptr [eax + 4]"]]}, {"both": [["0x100bb13a", "add edi, 3", "0x10068a23"], ["0x100bb13d", "and edi, 0xfffffffc", "0x10068a26"], ["0x100bb140", "neg edi", "0x10068a29"]]}, {"orig": [], "recomp": [["0x10068a2b", "jmp 0x9"], ["0x10068a2d", "mov edi, dword ptr [eax + 4]"], ["0x10068a30", "add edi, 3"], ["0x10068a33", "and edi, 0xfffffffc"]]}, {"both": [["0x100bb142", "sub edi, dword ptr [esp + 0xa8]", "0x10068a36"], ["0x100bb149", "mov eax, dword ptr [esp + 0x34]", "0x10068a3d"], ["0x100bb14d", "mov ecx, dword ptr [esp + 0xa8]", "0x10068a41"]]}, {"orig": [["0x100bb154", "xor ebp, ebp"]], "recomp": [["0x10068a48", "xor ebx, ebx"]]}, {"both": [["0x100bb156", "add ecx, ecx", "0x10068a4a"], ["0x100bb158", "sub eax, ecx", "0x10068a4c"]]}, {"orig": [["0x100bb15a", "cmp dword ptr [esp + 0xac], ebp"]], "recomp": [["0x10068a4e", "cmp dword ptr [esp + 0xac], ebx"]]}, {"both": [["0x100bb161", "mov dword ptr [esp + 0x14], eax", "0x10068a55"], ["0x100bb165", "jle 0x3f", "0x10068a59"]]}, {"orig": [["0x100bb167", "xor ecx, ecx"], ["0x100bb169", "cmp dword ptr [esp + 0xa8], ecx"]], "recomp": [["0x10068a5b", "xor ebp, ebp"], ["0x10068a5d", "cmp dword ptr [esp + 0xa8], ebp"]]}, {"both": [["0x100bb170", "jle 0x24", "0x10068a64"], ["0x100bb172", "xor eax, eax", "0x10068a66"]]}, {"orig": [["0x100bb174", "mov edx, dword ptr [esp + 0x10]"], ["0x100bb178", "mov al, byte ptr [ebx]"]], "recomp": [["0x10068a68", "mov ecx, dword ptr [esp + 0x10]"], ["0x10068a6c", "mov al, byte ptr [edx]"], ["0x10068a6e", "inc edx"], ["0x10068a6f", "mov ecx, dword ptr [ecx + 0xa8]"], ["0x10068a75", "add esi, 2"], ["0x10068a78", "mov ax, word ptr [ecx + eax*2]"], ["0x10068a7c", "inc ebp"], ["0x10068a7d", "mov word ptr [esi - 2], ax"], ["0x10068a81", "cmp ebp, dword ptr [esp + 0xa8]"], ["0x10068a88", "jl -0x24"], ["0x10068a8a", "add edx, edi"], ["0x10068a8c", "add esi, dword ptr [esp + 0x14]"]]}, {"both": [["0x100bb17a", "inc ebx", "0x10068a90"]]}, {"orig": [["0x100bb17b", "mov edx, dword ptr [edx + 0xa8]"], ["0x100bb181", "add esi, 2"], ["0x100bb184", "mov ax, word ptr [edx + eax*2]"], ["0x100bb188", "inc ecx"], ["0x100bb189", "mov word ptr [esi - 2], ax"], ["0x100bb18d", "cmp dword ptr [esp + 0xa8], ecx"], ["0x100bb194", "jg -0x24"], ["0x100bb196", "add ebx, edi"], ["0x100bb198", "add esi, dword ptr [esp + 0x14]"], ["0x100bb19c", "inc ebp"], ["0x100bb19d", "cmp dword ptr [esp + 0xac], ebp"], ["0x100bb1a4", "jg -0x3f"], ["0x100bb1a6", "mov edx, dword ptr [esp + 0x10]"], ["0x100bb1aa", "mov ecx, dword ptr [esp + 0x48]"], ["0x100bb1ae", "push ecx"], ["0x100bb1af", "mov eax, dword ptr [edx + 0x30]"]], "recomp": [["0x10068a91", "cmp ebx, dword ptr [esp + 0xac]"], ["0x10068a98", "jl -0x3f"], ["0x10068a9a", "mov ecx, dword ptr [esp + 0x10]"], ["0x10068a9e", "mov edx, dword ptr [esp + 0x48]"], ["0x10068aa2", "push edx"], ["0x10068aa3", "mov eax, dword ptr [ecx + 0x30]"]]}, {"both": [["0x100bb1b2", "push eax", "0x10068aa6"], ["0x100bb1b3", "mov ebx, dword ptr [eax]", "0x10068aa7"], ["0x100bb1b5", "call dword ptr [ebx + 0x80]", "0x10068aa9"], ["0x100bb1bb", "pop ebp", "0x10068aaf"]]}, {"orig": [], "recomp": [["0x10068ab0", "pop edi"], ["0x10068ab1", "pop esi"], ["0x10068ab2", "pop ebx"], ["0x10068ab3", "add esp, 0x80"], ["0x10068ab9", "ret 0x1c"]]}]]]}, {"address": "0x100bb1d0", "recomp": "0x10068ac0", "name": "MxDisplaySurface::VTable0x30", "matching": 0.7489878542510121, "diff": [["@@ -0x100bb224,21 +0x10068b14,21 @@", [{"both": [["0x100bb224", "mov eax, dword ptr [esi + 0x10]", "0x10068b14"], ["0x100bb227", "sub eax, dword ptr [esi + 8]", "0x10068b17"], ["0x100bb22a", "inc eax", "0x10068b1a"], ["0x100bb22b", "push eax", "0x10068b1b"], ["0x100bb22c", "push ecx", "0x10068b1c"], ["0x100bb22d", "mov ecx, dword ptr [edx + 4]", "0x10068b1d"], ["0x100bb230", "push ecx", "0x10068b20"], ["0x100bb231", "call GetRectIntersection (FUNCTION)", "0x10068b21"], ["0x100bb236", "add esp, 0x28", "0x10068b26"], ["0x100bb239", "test al, al", "0x10068b29"]]}, {"orig": [["0x100bb23b", "je 0x2b0"]], "recomp": [["0x10068b2b", "je 0x29f"]]}, {"both": [["0x100bb241", "lea edi, [esp + 0x18]", "0x10068b31"], ["0x100bb245", "xor eax, eax", "0x10068b35"], ["0x100bb247", "mov ecx, 0x1b", "0x10068b37"], ["0x100bb24c", "push 0", "0x10068b3c"], ["0x100bb24e", "rep stosd dword ptr es:[edi], eax", "0x10068b3e"], ["0x100bb250", "lea ecx, [esp + 0x1c]", "0x10068b40"], ["0x100bb254", "push 1", "0x10068b44"], ["0x100bb256", "mov eax, dword ptr [esi + 0x30]", "0x10068b46"], ["0x100bb259", "push ecx", "0x10068b49"], ["0x100bb25a", "mov dword ptr [esp + 0x24], 0x6c", "0x10068b4a"]]}]], ["@@ -0x100bb27a,185 +0x10068b6a,191 @@", [{"both": [["0x100bb27a", "mov eax, dword ptr [esi + 0x30]", "0x10068b6a"], ["0x100bb27d", "push 0", "0x10068b6d"], ["0x100bb27f", "lea ecx, [esp + 0x1c]", "0x10068b6f"], ["0x100bb283", "push 1", "0x10068b73"], ["0x100bb285", "push ecx", "0x10068b75"], ["0x100bb286", "mov ebp, dword ptr [eax]", "0x10068b76"], ["0x100bb288", "push 0", "0x10068b78"], ["0x100bb28a", "push eax", "0x10068b7a"], ["0x100bb28b", "call dword ptr [ebp + 0x64]", "0x10068b7b"], ["0x100bb28e", "test eax, eax", "0x10068b7e"]]}, {"orig": [["0x100bb290", "jne 0x25b"]], "recomp": [["0x10068b80", "jne 0x24a"]]}, {"both": [["0x100bb296", "mov ecx, dword ptr [ebx + 0xc]", "0x10068b86"], ["0x100bb299", "lea edx, [ecx + 0x10]", "0x10068b89"], ["0x100bb29c", "mov eax, dword ptr [edx]", "0x10068b8c"], ["0x100bb29e", "test eax, eax", "0x10068b8e"], ["0x100bb2a0", "jne 0x39", "0x10068b90"], ["0x100bb2a2", "cmp eax, 0x10", "0x10068b92"]]}, {"orig": [["0x100bb2a5", "je 0x7"]], "recomp": [["0x10068b95", "je 0x15"]]}, {"both": [["0x100bb2a7", "mov eax, dword ptr [ecx + 8]", "0x10068b97"], ["0x100bb2aa", "test eax, eax", "0x10068b9a"]]}, {"orig": [["0x100bb2ac", "jge 0x9"], ["0x100bb2ae", "mov eax, dword ptr [esp + 0x90]"], ["0x100bb2b5", "jmp 0xc"]], "recomp": [["0x10068b9c", "jl 0xe"]]}, {"both": [["0x100bb2b7", "jg 0x2", "0x10068b9e"], ["0x100bb2b9", "neg eax", "0x10068ba0"], ["0x100bb2bb", "sub eax, dword ptr [esp + 0x90]", "0x10068ba2"], ["0x100bb2c2", "dec eax", "0x10068ba9"]]}, {"orig": [], "recomp": [["0x10068baa", "jmp 0x7"], ["0x10068bac", "mov eax, dword ptr [esp + 0x90]"]]}, {"both": [["0x100bb2c3", "mov edi, dword ptr [ecx + 4]", "0x10068bb3"], ["0x100bb2c6", "add edi, 3", "0x10068bb6"], ["0x100bb2c9", "and edi, 0xfffffffc", "0x10068bb9"], ["0x100bb2cc", "imul edi, eax", "0x10068bbc"], ["0x100bb2cf", "add edi, dword ptr [ebx + 0x14]", "0x10068bbf"], ["0x100bb2d2", "add edi, dword ptr [esp + 0x8c]", "0x10068bc2"], ["0x100bb2d9", "jmp 0x29", "0x10068bc9"], ["0x100bb2db", "cmp eax, 0x10", "0x10068bcb"], ["0x100bb2de", "jne 0x5", "0x10068bce"], ["0x100bb2e0", "mov edi, dword ptr [ebx + 0x14]", "0x10068bd0"], ["0x100bb2e3", "jmp 0x1f", "0x10068bd3"], ["0x100bb2e5", "mov eax, dword ptr [ecx + 8]", "0x10068bd5"], ["0x100bb2e8", "test eax, eax", "0x10068bd8"]]}, {"orig": [["0x100bb2ea", "jge 0x4"], ["0x100bb2ec", "xor eax, eax"], ["0x100bb2ee", "jmp 0x5"]], "recomp": [["0x10068bda", "jl 0x7"]]}, {"both": [["0x100bb2f0", "jg 0x2", "0x10068bdc"], ["0x100bb2f2", "neg eax", "0x10068bde"], ["0x100bb2f4", "dec eax", "0x10068be0"]]}, {"orig": [], "recomp": [["0x10068be1", "jmp 0x2"], ["0x10068be3", "xor eax, eax"]]}, {"both": [["0x100bb2f5", "mov edi, dword ptr [ecx + 4]", "0x10068be5"], ["0x100bb2f8", "add edi, 3", "0x10068be8"], ["0x100bb2fb", "and edi, 0xfffffffc", "0x10068beb"], ["0x100bb2fe", "imul edi, eax", "0x10068bee"], ["0x100bb301", "add edi, dword ptr [ebx + 0x14]", "0x10068bf1"], ["0x100bb304", "mov eax, dword ptr [esi + 0x90]", "0x10068bf4"], ["0x100bb30a", "mov dword ptr [esp + 0x14], edi", "0x10068bfa"], ["0x100bb30e", "cmp eax, 8", "0x10068bfe"], ["0x100bb311", "je 0xe", "0x10068c01"], ["0x100bb313", "cmp eax, 0x10", "0x10068c03"]]}, {"orig": [["0x100bb316", "je 0xd9"], ["0x100bb31c", "jmp 0x1bf"]], "recomp": [["0x10068c06", "je 0xc7"], ["0x10068c0c", "jmp 0x1ae"]]}, {"both": [["0x100bb321", "mov eax, dword ptr [esp + 0x28]", "0x10068c11"], ["0x100bb325", "imul eax, dword ptr [esp + 0x98]", "0x10068c15"], ["0x100bb32d", "add eax, dword ptr [esp + 0x3c]", "0x10068c1d"], ["0x100bb331", "add eax, dword ptr [esp + 0x94]", "0x10068c21"], ["0x100bb338", "cmp byte ptr [esp + 0xa4], 0", "0x10068c28"], ["0x100bb340", "mov dword ptr [esp + 0x10], eax", "0x10068c30"]]}, {"orig": [["0x100bb344", "jne 0x87"]], "recomp": [["0x10068c34", "jne 0x79"]]}, {"both": [["0x100bb34a", "cmp dword ptr [edx], 0x10", "0x10068c36"]]}, {"orig": [["0x100bb34d", "je 0x6"]], "recomp": [["0x10068c39", "je 0x13"]]}, {"both": [["0x100bb34f", "cmp dword ptr [ecx + 8], 0", "0x10068c3b"]]}, {"orig": [["0x100bb353", "jge 0xb"], ["0x100bb355", "mov ebx, dword ptr [ecx + 4]"], ["0x100bb358", "add ebx, 3"], ["0x100bb35b", "and ebx, 0xfffffffc"], ["0x100bb35e", "jmp 0xb"], ["0x100bb360", "mov ebx, dword ptr [ecx + 4]"], ["0x100bb363", "add ebx, 3"], ["0x100bb366", "and ebx, 0xfffffffc"], ["0x100bb369", "neg ebx"], ["0x100bb36b", "sub ebx, dword ptr [esp + 0x9c]"], ["0x100bb372", "mov eax, dword ptr [esp + 0x28]"], ["0x100bb376", "sub eax, dword ptr [esp + 0x9c]"], ["0x100bb37d", "xor edi, edi"], ["0x100bb37f", "cmp dword ptr [esp + 0xa0], edi"], ["0x100bb386", "jle 0x154"], ["0x100bb38c", "xor ecx, ecx"], ["0x100bb38e", "cmp dword ptr [esp + 0x9c], ecx"]], "recomp": [["0x10068c3f", "jl 0xd"], ["0x10068c41", "mov ecx, dword ptr [ecx + 4]"], ["0x10068c44", "add ecx, 3"], ["0x10068c47", "and ecx, 0xfffffffc"], ["0x10068c4a", "neg ecx"], ["0x10068c4c", "jmp 0x9"], ["0x10068c4e", "mov ecx, dword ptr [ecx + 4]"], ["0x10068c51", "add ecx, 3"], ["0x10068c54", "and ecx, 0xfffffffc"], ["0x10068c57", "mov edi, dword ptr [esp + 0x28]"], ["0x10068c5b", "xor ebx, ebx"], ["0x10068c5d", "cmp dword ptr [esp + 0xa0], ebx"], ["0x10068c64", "jle 0x155"], ["0x10068c6a", "xor eax, eax"], ["0x10068c6c", "cmp dword ptr [esp + 0x9c], eax"]]}, {"both": [["0x100bb395", "jle 0x23", "0x10068c73"], ["0x100bb397", "mov edx, dword ptr [esp + 0x14]", "0x10068c75"], ["0x100bb39b", "mov dl, byte ptr [edx]", "0x10068c79"], ["0x100bb39d", "test dl, dl", "0x10068c7b"], ["0x100bb39f", "je 0x7", "0x10068c7d"], ["0x100bb3a1", "mov ebp, dword ptr [esp + 0x10]", "0x10068c7f"], ["0x100bb3a5", "mov byte ptr [ebp], dl", "0x10068c83"]]}, {"orig": [["0x100bb3a8", "inc ecx"]], "recomp": [["0x10068c86", "inc eax"]]}, {"both": [["0x100bb3a9", "inc dword ptr [esp + 0x14]", "0x10068c87"], ["0x100bb3ad", "inc dword ptr [esp + 0x10]", "0x10068c8b"]]}, {"orig": [["0x100bb3b1", "cmp ecx, dword ptr [esp + 0x9c]"]], "recomp": [["0x10068c8f", "cmp eax, dword ptr [esp + 0x9c]"]]}, {"both": [["0x100bb3b8", "jl -0x23", "0x10068c96"]]}, {"orig": [["0x100bb3ba", "inc edi"], ["0x100bb3bb", "add dword ptr [esp + 0x14], ebx"], ["0x100bb3bf", "add dword ptr [esp + 0x10], eax"], ["0x100bb3c3", "cmp dword ptr [esp + 0xa0], edi"], ["0x100bb3ca", "jg -0x40"], ["0x100bb3cc", "jmp 0x10f"]], "recomp": [["0x10068c98", "inc ebx"], ["0x10068c99", "add dword ptr [esp + 0x14], ecx"], ["0x10068c9d", "add dword ptr [esp + 0x10], edi"], ["0x10068ca1", "cmp ebx, dword ptr [esp + 0xa0]"], ["0x10068ca8", "jl -0x40"], ["0x10068caa", "jmp 0x110"]]}, {"both": [["0x100bb3d1", "mov eax, dword ptr [esp + 0x28]", "0x10068caf"], ["0x100bb3d5", "push 8", "0x10068cb3"], ["0x100bb3d7", "mov edx, dword ptr [esp + 0xa4]", "0x10068cb5"], ["0x100bb3de", "push eax", "0x10068cbc"], ["0x100bb3df", "mov ebx, dword ptr [esp + 0xa4]", "0x10068cbd"], ["0x100bb3e6", "push edx", "0x10068cc4"], ["0x100bb3e7", "push ebx", "0x10068cc5"], ["0x100bb3e8", "mov eax, dword ptr [ecx + 0x14]", "0x10068cc6"], ["0x100bb3eb", "lea ecx, [esp + 0x20]", "0x10068cc9"], ["0x100bb3ef", "push eax", "0x10068ccd"], ["0x100bb3f0", "jmp 0xde", "0x10068cce"], ["0x100bb3f5", "mov eax, dword ptr [esp + 0x28]", "0x10068cd3"], ["0x100bb3f9", "mov edi, dword ptr [esp + 0x94]", "0x10068cd7"], ["0x100bb400", "imul eax, dword ptr [esp + 0x98]", "0x10068cde"], ["0x100bb408", "lea eax, [eax + edi*2]", "0x10068ce6"], ["0x100bb40b", "add eax, dword ptr [esp + 0x3c]", "0x10068ce9"], ["0x100bb40f", "cmp byte ptr [esp + 0xa4], 0", "0x10068ced"], ["0x100bb417", "mov dword ptr [esp + 0x10], eax", "0x10068cf5"], ["0x100bb41b", "jne 0x93", "0x10068cf9"], ["0x100bb421", "cmp dword ptr [edx], 0x10", "0x10068cff"]]}, {"orig": [["0x100bb424", "je 0x6"]], "recomp": [["0x10068d02", "je 0x13"]]}, {"both": [["0x100bb426", "cmp dword ptr [ecx + 8], 0", "0x10068d04"]]}, {"orig": [["0x100bb42a", "jge 0xb"], ["0x100bb42c", "mov edi, dword ptr [ecx + 4]"], ["0x100bb42f", "add edi, 3"], ["0x100bb432", "and edi, 0xfffffffc"], ["0x100bb435", "jmp 0xb"]], "recomp": [["0x10068d08", "jl 0xd"]]}, {"both": [["0x100bb437", "mov edi, dword ptr [ecx + 4]", "0x10068d0a"], ["0x100bb43a", "add edi, 3", "0x10068d0d"], ["0x100bb43d", "and edi, 0xfffffffc", "0x10068d10"], ["0x100bb440", "neg edi", "0x10068d13"]]}, {"orig": [], "recomp": [["0x10068d15", "jmp 0x9"], ["0x10068d17", "mov edi, dword ptr [ecx + 4]"], ["0x10068d1a", "add edi, 3"], ["0x10068d1d", "and edi, 0xfffffffc"]]}, {"both": [["0x100bb442", "sub edi, dword ptr [esp + 0x9c]", "0x10068d20"], ["0x100bb449", "mov ebx, dword ptr [esp + 0x28]", "0x10068d27"], ["0x100bb44d", "mov eax, dword ptr [esp + 0x9c]", "0x10068d2b"]]}, {"orig": [["0x100bb454", "xor ebp, ebp"]], "recomp": []}, {"both": [["0x100bb456", "add eax, eax", "0x10068d32"], ["0x100bb458", "sub ebx, eax", "0x10068d34"]]}, {"orig": [["0x100bb45a", "cmp dword ptr [esp + 0xa0], ebp"], ["0x100bb461", "jle 0x7d"], ["0x100bb463", "xor eax, eax"], ["0x100bb465", "cmp dword ptr [esp + 0x9c], eax"]], "recomp": [["0x10068d36", "xor eax, eax"], ["0x10068d38", "cmp dword ptr [esp + 0xa0], eax"], ["0x10068d3f", "jle 0x7e"], ["0x10068d41", "xor ebp, ebp"], ["0x10068d43", "cmp dword ptr [esp + 0x9c], ebp"]]}, {"both": [["0x100bb46c", "jle 0x32", "0x10068d4a"], ["0x100bb46e", "mov ecx, dword ptr [esp + 0x14]", "0x10068d4c"], ["0x100bb472", "mov cl, byte ptr [ecx]", "0x10068d50"], ["0x100bb474", "test cl, cl", "0x10068d52"], ["0x100bb476", "je 0x15", "0x10068d54"], ["0x100bb478", "xor edx, edx", "0x10068d56"], ["0x100bb47a", "mov dl, cl", "0x10068d58"], ["0x100bb47c", "mov ecx, dword ptr [esi + 0xa8]", "0x10068d5a"]]}, {"orig": [["0x100bb482", "mov dx, word ptr [ecx + edx*2]"], ["0x100bb486", "mov ecx, dword ptr [esp + 0x10]"], ["0x100bb48a", "mov word ptr [ecx], dx"], ["0x100bb48d", "inc eax"]], "recomp": [["0x10068d60", "mov cx, word ptr [ecx + edx*2]"], ["0x10068d64", "mov edx, dword ptr [esp + 0x10]"], ["0x10068d68", "mov word ptr [edx], cx"], ["0x10068d6b", "inc ebp"]]}, {"both": [["0x100bb48e", "inc dword ptr [esp + 0x14]", "0x10068d6c"], ["0x100bb492", "add dword ptr [esp + 0x10], 2", "0x10068d70"]]}, {"orig": [["0x100bb497", "cmp eax, dword ptr [esp + 0x9c]"]], "recomp": [["0x10068d75", "cmp ebp, dword ptr [esp + 0x9c]"]]}, {"both": [["0x100bb49e", "jl -0x32", "0x10068d7c"]]}, {"orig": [["0x100bb4a0", "inc ebp"]], "recomp": [["0x10068d7e", "inc eax"]]}, {"both": [["0x100bb4a1", "add dword ptr [esp + 0x14], edi", "0x10068d7f"], ["0x100bb4a5", "add dword ptr [esp + 0x10], ebx", "0x10068d83"]]}, {"orig": [["0x100bb4a9", "cmp dword ptr [esp + 0xa0], ebp"], ["0x100bb4b0", "jg -0x4f"], ["0x100bb4b2", "jmp 0x2c"]], "recomp": [["0x10068d87", "cmp eax, dword ptr [esp + 0xa0]"], ["0x10068d8e", "jl -0x4f"], ["0x10068d90", "jmp 0x2d"]]}, {"both": [["0x100bb4b4", "mov eax, dword ptr [esp + 0x28]", "0x10068d92"], ["0x100bb4b8", "push 0x10", "0x10068d96"], ["0x100bb4ba", "mov edx, dword ptr [esp + 0xa4]", "0x10068d98"], ["0x100bb4c1", "push eax", "0x10068d9f"], ["0x100bb4c2", "mov ebx, dword ptr [esp + 0xa4]", "0x10068da0"], ["0x100bb4c9", "push edx", "0x10068da7"], ["0x100bb4ca", "push ebx", "0x10068da8"], ["0x100bb4cb", "mov eax, dword ptr [ecx + 0x14]", "0x10068da9"], ["0x100bb4ce", "lea ecx, [esp + 0x20]", "0x10068dac"], ["0x100bb4d2", "push eax", "0x10068db0"], ["0x100bb4d3", "lea edx, [esp + 0x28]", "0x10068db1"], ["0x100bb4d7", "push ecx", "0x10068db5"], ["0x100bb4d8", "push edx", "0x10068db6"]]}, {"orig": [["0x100bb4d9", "mov ecx, esi"]], "recomp": []}, {"both": [["0x100bb4db", "call MxDisplaySurface::FUN_100bb500 (FUNCTION)", "0x10068db7"]]}, {"orig": [], "recomp": [["0x10068dbc", "add esp, 0x1c"]]}, {"both": [["0x100bb4e0", "mov eax, dword ptr [esi + 0x30]", "0x10068dbf"], ["0x100bb4e3", "mov ecx, dword ptr [esp + 0x3c]", "0x10068dc2"], ["0x100bb4e7", "mov ebx, dword ptr [eax]", "0x10068dc6"], ["0x100bb4e9", "push ecx", "0x10068dc8"]]}, {"orig": [], "recomp": [["0x10068dc9", "push eax"], ["0x10068dca", "call dword ptr [ebx + 0x80]"], ["0x10068dd0", "pop ebp"], ["0x10068dd1", "pop edi"], ["0x10068dd2", "pop esi"], ["0x10068dd3", "pop ebx"], ["0x10068dd4", "add esp, 0x74"], ["0x10068dd7", "ret 0x20"]]}]]]}, {"address": "0x100bb500", "recomp": "0x10068de0", "name": "MxDisplaySurface::FUN_100bb500", "matching": 0.0, "stub": true}, {"address": "0x100bb850", "recomp": "0x10068df0", "name": "MxDisplaySurface::VTable0x34", "matching": 0.0, "stub": true}, {"address": "0x100bba50", "recomp": "0x10068e00", "name": "MxDisplaySurface::Display", "matching": 0.9295774647887324, "diff": [["@@ -0x100bba94,39 +0x10068e44,39 @@", [{"both": [["0x100bba94", "mov dword ptr [esp + 0x40], 0x6c", "0x10068e44"], ["0x100bba9c", "mov eax, dword ptr [esi + 0x30]", "0x10068e4c"], ["0x100bba9f", "lea ecx, [esp + 0x40]", "0x10068e4f"], ["0x100bbaa3", "push ecx", "0x10068e53"], ["0x100bbaa4", "push 0", "0x10068e54"], ["0x100bbaa6", "push eax", "0x10068e56"], ["0x100bbaa7", "mov ebx, dword ptr [eax]", "0x10068e57"], ["0x100bbaa9", "call dword ptr [ebx + 0x64]", "0x10068e59"], ["0x100bbaac", "test eax, eax", "0x10068e5c"], ["0x100bbaae", "jne 0x4b", "0x10068e5e"]]}, {"orig": [["0x100bbab0", "mov ebx, dword ptr [esp + 0x5c]"], ["0x100bbab4", "xor edx, edx"], ["0x100bbab6", "cmp dword ptr [esp + 0x40], edx"]], "recomp": [["0x10068e60", "mov edx, dword ptr [esp + 0x5c]"], ["0x10068e64", "xor ebx, ebx"], ["0x10068e66", "cmp dword ptr [esp + 0x40], ebx"]]}, {"both": [["0x100bbaba", "jbe 0x2c", "0x10068e6a"]]}, {"orig": [["0x100bbabc", "mov ebp, dword ptr [esp + 0x44]"], ["0x100bbac0", "mov edi, ebx"]], "recomp": [["0x10068e6c", "mov ebp, dword ptr [esp + 0x8c]"], ["0x10068e73", "mov edi, edx"]]}, {"both": [["0x100bbac2", "xor eax, eax", "0x10068e75"]]}, {"orig": [["0x100bbac4", "inc edx"], ["0x100bbac5", "imul ebp, dword ptr [esp + 0x8c]"]], "recomp": [["0x10068e77", "inc ebx"], ["0x10068e78", "imul ebp, dword ptr [esp + 0x44]"]]}, {"both": [["0x100bbacd", "shr ebp, 3", "0x10068e7d"], ["0x100bbad0", "mov ecx, ebp", "0x10068e80"], ["0x100bbad2", "shr ecx, 2", "0x10068e82"], ["0x100bbad5", "rep stosd dword ptr es:[edi], eax", "0x10068e85"], ["0x100bbad7", "mov ecx, ebp", "0x10068e87"], ["0x100bbad9", "and ecx, 3", "0x10068e89"], ["0x100bbadc", "rep stosb byte ptr es:[edi], al", "0x10068e8c"]]}, {"orig": [["0x100bbade", "add ebx, dword ptr [esp + 0x48]"], ["0x100bbae2", "cmp edx, dword ptr [esp + 0x40]"], ["0x100bbae6", "jb -0x2c"]], "recomp": [["0x10068e8e", "add edx, dword ptr [esp + 0x48]"], ["0x10068e92", "cmp dword ptr [esp + 0x40], ebx"], ["0x10068e96", "ja -0x2c"]]}, {"both": [["0x100bbae8", "mov eax, dword ptr [esi + 0x30]", "0x10068e98"], ["0x100bbaeb", "mov ecx, dword ptr [esp + 0x5c]", "0x10068e9b"], ["0x100bbaef", "mov ebx, dword ptr [eax]", "0x10068e9f"], ["0x100bbaf1", "push ecx", "0x10068ea1"], ["0x100bbaf2", "push eax", "0x10068ea2"], ["0x100bbaf3", "call dword ptr [ebx + 0x80]", "0x10068ea3"], ["0x100bbaf9", "jmp 0xb", "0x10068ea9"], ["0x100bbafb", "push 'MxDisplaySurface::Display error\\n' (STRING)", "0x10068eab"], ["0x100bbb00", "call dword ptr [__imp__OutputDebugStringA@4 (POINTER)]", "0x10068eb0"], ["0x100bbb06", "mov eax, dword ptr [esi + 0x2c]", "0x10068eb6"]]}]]]}, {"address": "0x100bbc10", "recomp": "0x10068fc0", "name": "MxDisplaySurface::GetDC", "matching": 1.0, "diff": []}, {"address": "0x100bbc40", "recomp": "0x10068ff0", "name": "MxDisplaySurface::ReleaseDC", "matching": 1.0, "diff": []}, {"address": "0x100bbc60", "recomp": "0x10069010", "name": "MxDisplaySurface::VTable0x44", "matching": 0.47654784240150094, "diff": [["@@ -0x100bbc60,267 +0x10069010,266 @@", [{"orig": [["0x100bbc60", "sub esp, 0x84"]], "recomp": [["0x10069010", "sub esp, 0x88"]]}, {"both": [["0x100bbc66", "mov dword ptr [esp], 0", "0x10069016"], ["0x100bbc6e", "push ebx", "0x1006901e"], ["0x100bbc6f", "push esi", "0x1006901f"], ["0x100bbc70", "push edi", "0x10069020"], ["0x100bbc71", "mov esi, ecx", "0x10069021"], ["0x100bbc73", "push ebp", "0x10069023"], ["0x100bbc74", "call MVideoManager (FUNCTION)", "0x10069024"]]}, {"orig": [["0x100bbc79", "mov ebp, dword ptr [eax + 0x50]"]], "recomp": [["0x10069029", "mov ebx, dword ptr [eax + 0x50]"]]}, {"both": [["0x100bbc7c", "call MVideoManager (FUNCTION)", "0x1006902c"]]}, {"orig": [["0x100bbc81", "lea edi, [esp + 0x28]"]], "recomp": [["0x10069031", "lea edi, [esp + 0x2c]"]]}, {"both": [["0x100bbc85", "xor eax, eax", "0x10069035"], ["0x100bbc87", "mov ecx, 0x1b", "0x10069037"], ["0x100bbc8c", "rep stosd dword ptr es:[edi], eax", "0x1006903c"]]}, {"orig": [["0x100bbc8e", "mov dword ptr [esp + 0x28], 0x6c"], ["0x100bbc96", "lea eax, [esp + 0x28]"], ["0x100bbc9a", "mov ebx, dword ptr [ebp]"], ["0x100bbc9d", "push eax"], ["0x100bbc9e", "push ebp"], ["0x100bbc9f", "call dword ptr [ebx + 0x30]"]], "recomp": [["0x1006903e", "mov dword ptr [esp + 0x2c], 0x6c"], ["0x10069046", "lea eax, [esp + 0x2c]"], ["0x1006904a", "mov ebp, dword ptr [ebx]"], ["0x1006904c", "push eax"], ["0x1006904d", "push ebx"], ["0x1006904e", "call dword ptr [ebp + 0x30]"]]}, {"both": [["0x100bbca2", "test eax, eax", "0x10069051"], ["0x100bbca4", "je 0x7", "0x10069053"], ["0x100bbca6", "xor eax, eax", "0x10069055"]]}, {"orig": [["0x100bbca8", "jmp 0x2f4"], ["0x100bbcad", "mov ebx, dword ptr [esp + 0x98]"], ["0x100bbcb4", "mov dword ptr [esp + 0x2c], 0x1007"], ["0x100bbcbc", "mov eax, dword ptr [ebx + 0xc]"]], "recomp": [["0x10069057", "jmp 0x2f5"], ["0x1006905c", "mov ebp, dword ptr [esp + 0x9c]"], ["0x10069063", "mov dword ptr [esp + 0x30], 0x1007"], ["0x1006906b", "mov eax, dword ptr [ebp + 0xc]"]]}, {"both": [["0x100bbcbf", "mov ecx, dword ptr [eax + 4]", "0x1006906e"]]}, {"orig": [["0x100bbcc2", "mov dword ptr [esp + 0x34], ecx"]], "recomp": [["0x10069071", "mov dword ptr [esp + 0x38], ecx"]]}, {"both": [["0x100bbcc6", "mov eax, dword ptr [eax + 8]", "0x10069075"], ["0x100bbcc9", "test eax, eax", "0x10069078"], ["0x100bbccb", "jg 0x2", "0x1006907a"], ["0x100bbccd", "neg eax", "0x1006907c"]]}, {"orig": [["0x100bbccf", "mov edi, dword ptr [esp + 0x9c]"], ["0x100bbcd6", "mov dword ptr [esp + 0x30], eax"]], "recomp": [["0x1006907e", "mov edi, dword ptr [esp + 0xa0]"], ["0x10069085", "mov dword ptr [esp + 0x34], eax"]]}, {"both": [["0x100bbcda", "lea edx, [esp + 0x10]", "0x10069089"], ["0x100bbcde", "push 0", "0x1006908d"], ["0x100bbce0", "push edx", "0x1006908f"], ["0x100bbce1", "mov dword ptr [edi], 0", "0x10069090"]]}, {"orig": [["0x100bbce7", "mov dword ptr [esp + 0x98], 0x840"], ["0x100bbcf2", "mov eax, dword ptr [ebp]"]], "recomp": [["0x10069096", "mov dword ptr [esp + 0x9c], 0x840"], ["0x100690a1", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x100bbcf5", "mov ecx, dword ptr [eax + 0x18]", "0x100690a3"]]}, {"orig": [["0x100bbcf8", "lea eax, [esp + 0x30]"]], "recomp": [["0x100690a6", "lea eax, [esp + 0x34]"]]}, {"both": [["0x100bbcfc", "mov dword ptr [esp + 0x1c], ecx", "0x100690aa"], ["0x100bbd00", "push eax", "0x100690ae"]]}, {"orig": [["0x100bbd01", "push ebp"]], "recomp": [["0x100690af", "push ebx"]]}, {"both": [["0x100bbd02", "call dword ptr [esp + 0x24]", "0x100690b0"], ["0x100bbd06", "test eax, eax", "0x100690b4"], ["0x100bbd08", "je 0x3e", "0x100690b6"], ["0x100bbd0a", "cmp dword ptr [edi], 0", "0x100690b8"], ["0x100bbd0d", "je 0x31", "0x100690bb"], ["0x100bbd0f", "lea eax, [esp + 0x10]", "0x100690bd"], ["0x100bbd13", "push 0", "0x100690c1"]]}, {"orig": [["0x100bbd15", "lea ecx, [esp + 0x2c]"]], "recomp": [["0x100690c3", "lea ecx, [esp + 0x30]"]]}, {"both": [["0x100bbd19", "push eax", "0x100690c7"], ["0x100bbd1a", "push ecx", "0x100690c8"], ["0x100bbd1b", "mov dword ptr [edi], 0", "0x100690c9"]]}, {"orig": [["0x100bbd21", "and dword ptr [esp + 0x9c], 0xffffbfff"], ["0x100bbd2c", "or dword ptr [esp + 0x9c], 0x800"], ["0x100bbd37", "push ebp"]], "recomp": [["0x100690cf", "and dword ptr [esp + 0xa0], 0xffffbfff"], ["0x100690da", "or dword ptr [esp + 0xa0], 0x800"], ["0x100690e5", "push ebx"]]}, {"both": [["0x100bbd38", "call dword ptr [esp + 0x24]", "0x100690e6"], ["0x100bbd3c", "test eax, eax", "0x100690ea"], ["0x100bbd3e", "je 0x8", "0x100690ec"], ["0x100bbd40", "mov dword ptr [esp + 0x10], 0", "0x100690ee"], ["0x100bbd48", "cmp dword ptr [esp + 0x10], 0", "0x100690f6"]]}, {"orig": [["0x100bbd4d", "je 0x24a"], ["0x100bbd53", "lea edi, [esp + 0x28]"]], "recomp": [["0x100690fb", "je 0x24c"], ["0x10069101", "lea edi, [esp + 0x2c]"]]}, {"both": [["0x100bbd57", "xor eax, eax", "0x10069105"], ["0x100bbd59", "mov ecx, 0x1b", "0x10069107"], ["0x100bbd5e", "push eax", "0x1006910c"], ["0x100bbd5f", "rep stosd dword ptr es:[edi], eax", "0x1006910d"]]}, {"orig": [["0x100bbd61", "lea eax, [esp + 0x2c]"]], "recomp": [["0x1006910f", "lea eax, [esp + 0x30]"]]}, {"both": [["0x100bbd65", "push 1", "0x10069113"], ["0x100bbd67", "mov ecx, dword ptr [esp + 0x18]", "0x10069115"], ["0x100bbd6b", "push eax", "0x10069119"]]}, {"orig": [["0x100bbd6c", "mov dword ptr [esp + 0x34], 0x6c"]], "recomp": [["0x1006911a", "mov dword ptr [esp + 0x38], 0x6c"]]}, {"both": [["0x100bbd74", "push 0", "0x10069122"], ["0x100bbd76", "mov eax, dword ptr [ecx]", "0x10069124"], ["0x100bbd78", "push ecx", "0x10069126"], ["0x100bbd79", "call dword ptr [eax + 0x64]", "0x10069127"], ["0x100bbd7c", "test eax, eax", "0x1006912a"], ["0x100bbd7e", "je 0x17", "0x1006912c"], ["0x100bbd80", "mov eax, dword ptr [esp + 0x10]", "0x1006912e"], ["0x100bbd84", "push eax", "0x10069132"], ["0x100bbd85", "mov ebx, dword ptr [eax]", "0x10069133"], ["0x100bbd87", "call dword ptr [ebx + 8]", "0x10069135"], ["0x100bbd8a", "mov dword ptr [esp + 0x10], 0", "0x10069138"]]}, {"orig": [["0x100bbd92", "jmp 0x206"], ["0x100bbd97", "cmp dword ptr [esp + 0xa0], 0"], ["0x100bbd9f", "jne 0x1f8"], ["0x100bbda5", "mov ecx, dword ptr [ebx + 0xc]"], ["0x100bbda8", "mov edi, dword ptr [ecx + 0x10]"], ["0x100bbdab", "test edi, edi"]], "recomp": [["0x10069140", "jmp 0x208"], ["0x10069145", "cmp dword ptr [esp + 0xa4], 0"], ["0x1006914d", "jne 0x1fa"], ["0x10069153", "mov edi, dword ptr [ebp + 0xc]"], ["0x10069156", "cmp dword ptr [edi + 0x10], 0"]]}, {"both": [["0x100bbdad", "jne 0x14", "0x1006915a"]]}, {"orig": [["0x100bbdaf", "cmp edi, 0x10"], ["0x100bbdb2", "je 0x7"], ["0x100bbdb4", "mov eax, dword ptr [ecx + 8]"], ["0x100bbdb7", "test eax, eax"], ["0x100bbdb9", "jge 0x4"], ["0x100bbdbb", "xor eax, eax"], ["0x100bbdbd", "jmp 0x1e"], ["0x100bbdbf", "jg 0x1b"], ["0x100bbdc1", "jmp 0x17"], ["0x100bbdc3", "cmp edi, 0x10"]], "recomp": [["0x1006915c", "cmp dword ptr [edi + 0x10], 0x10"], ["0x10069160", "je 0x27"], ["0x10069162", "mov ecx, dword ptr [edi + 8]"], ["0x10069165", "test ecx, ecx"], ["0x10069167", "jl 0x20"], ["0x10069169", "jg 0x2"], ["0x1006916b", "neg ecx"], ["0x1006916d", "dec ecx"], ["0x1006916e", "jmp 0x1b"], ["0x10069170", "cmp dword ptr [edi + 0x10], 0x10"]]}, {"both": [["0x100bbdc6", "jne 0x5", "0x10069174"]]}, {"orig": [["0x100bbdc8", "mov edx, dword ptr [ebx + 0x14]"]], "recomp": [["0x10069176", "mov eax, dword ptr [ebp + 0x14]"]]}, {"both": [["0x100bbdcb", "jmp 0x1f", "0x10069179"]]}, {"orig": [["0x100bbdcd", "mov eax, dword ptr [ecx + 8]"], ["0x100bbdd0", "test eax, eax"], ["0x100bbdd2", "jge 0x4"], ["0x100bbdd4", "xor eax, eax"], ["0x100bbdd6", "jmp 0x5"], ["0x100bbdd8", "jg 0x2"], ["0x100bbdda", "neg eax"], ["0x100bbddc", "dec eax"], ["0x100bbddd", "mov edx, dword ptr [ecx + 4]"], ["0x100bbde0", "add edx, 3"], ["0x100bbde3", "and edx, 0xfffffffc"], ["0x100bbde6", "imul edx, eax"], ["0x100bbde9", "add edx, dword ptr [ebx + 0x14]"], ["0x100bbdec", "mov eax, dword ptr [esp + 0x4c]"], ["0x100bbdf0", "mov ebp, dword ptr [ecx + 4]"], ["0x100bbdf3", "mov ebx, dword ptr [ecx + 8]"], ["0x100bbdf6", "test ebx, ebx"], ["0x100bbdf8", "jle 0x6"], ["0x100bbdfa", "mov dword ptr [esp + 0x14], ebx"], ["0x100bbdfe", "jmp 0x8"], ["0x100bbe00", "mov ecx, ebx"]], "recomp": [["0x1006917b", "mov ecx, dword ptr [edi + 8]"], ["0x1006917e", "test ecx, ecx"], ["0x10069180", "jl 0x7"], ["0x10069182", "jg 0x2"]]}, {"both": [["0x100bbe02", "neg ecx", "0x10069184"]]}, {"orig": [], "recomp": [["0x10069186", "dec ecx"], ["0x10069187", "jmp 0x2"], ["0x10069189", "xor ecx, ecx"], ["0x1006918b", "mov eax, dword ptr [edi + 4]"], ["0x1006918e", "add eax, 3"], ["0x10069191", "and eax, 0xfffffffc"], ["0x10069194", "imul eax, ecx"], ["0x10069197", "add eax, dword ptr [ebp + 0x14]"], ["0x1006919a", "mov edx, dword ptr [esp + 0x50]"], ["0x1006919e", "mov ecx, dword ptr [edi + 4]"], ["0x100691a1", "mov ebx, dword ptr [edi + 8]"], ["0x100691a4", "mov dword ptr [esp + 0x20], ecx"], ["0x100691a8", "cmp dword ptr [edi + 8], 0"], ["0x100691ac", "mov dword ptr [esp + 0x24], ecx"], ["0x100691b0", "jg 0x2"], ["0x100691b2", "neg ebx"], ["0x100691b4", "mov ecx, dword ptr [esp + 0x20]"], ["0x100691b8", "add ecx, 3"]]}, {"both": [["0x100bbe04", "mov dword ptr [esp + 0x14], ecx", "0x100691bb"]]}, {"orig": [["0x100bbe08", "mov ecx, dword ptr [esp + 0x38]"], ["0x100bbe0c", "mov dword ptr [esp + 0x20], ecx"], ["0x100bbe10", "lea ecx, [ebp + 3]"], ["0x100bbe13", "and ecx, 0xfffffffc"], ["0x100bbe16", "cmp edi, 0x10"]], "recomp": [["0x100691bf", "and dword ptr [esp + 0x14], 0xfffffffc"], ["0x100691c4", "cmp dword ptr [edi + 0x10], 0x10"], ["0x100691c8", "mov ecx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100bbe19", "mov dword ptr [esp + 0x1c], ecx", "0x100691cc"]]}, {"orig": [["0x100bbe1d", "je 0xa"], ["0x100bbe1f", "test ebx, ebx"]], "recomp": [["0x100691d0", "je 0xc"], ["0x100691d2", "cmp dword ptr [edi + 8], 0"]]}, {"both": [["0x100bbe21", "jl 0x6", "0x100691d6"], ["0x100bbe23", "neg ecx", "0x100691d8"], ["0x100bbe25", "mov dword ptr [esp + 0x1c], ecx", "0x100691da"]]}, {"orig": [["0x100bbe29", "mov ecx, dword ptr [esp + 0x7c]"]], "recomp": [["0x100691de", "mov ecx, dword ptr [esp + 0x3c]"], ["0x100691e2", "mov dword ptr [esp + 0x28], ecx"], ["0x100691e6", "mov ecx, dword ptr [esp + 0x80]"]]}, {"both": [["0x100bbe2d", "cmp ecx, 8", "0x100691ed"], ["0x100bbe30", "je 0xa", "0x100691f0"], ["0x100bbe32", "cmp ecx, 0x10", "0x100691f2"]]}, {"orig": [["0x100bbe35", "je 0x76"], ["0x100bbe37", "jmp 0x161"], ["0x100bbe3c", "cmp dword ptr [esp + 0x14], 0"], ["0x100bbe41", "jle 0x21"], ["0x100bbe43", "mov ebx, dword ptr [esp + 0x14]"], ["0x100bbe47", "mov edi, eax"], ["0x100bbe49", "mov esi, edx"], ["0x100bbe4b", "mov ecx, ebp"]], "recomp": [["0x100691f5", "je 0x7d"], ["0x100691f7", "jmp 0x151"], ["0x100691fc", "test ebx, ebx"], ["0x100691fe", "jle 0x2b"], ["0x10069200", "mov ecx, dword ptr [ebp + 0xc]"], ["0x10069203", "mov edi, edx"], ["0x10069205", "dec ebx"], ["0x10069206", "mov esi, dword ptr [ecx + 8]"], ["0x10069209", "mov dword ptr [esp + 0x14], esi"], ["0x1006920d", "mov esi, eax"], ["0x1006920f", "mov ecx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100bbe4d", "shr ecx, 2", "0x10069213"], ["0x100bbe50", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10069216"]]}, {"orig": [["0x100bbe52", "mov ecx, ebp"]], "recomp": [["0x10069218", "mov ecx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100bbe54", "and ecx, 3", "0x1006921c"], ["0x100bbe57", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1006921f"]]}, {"orig": [["0x100bbe59", "add edx, dword ptr [esp + 0x1c]"], ["0x100bbe5d", "add eax, dword ptr [esp + 0x20]"], ["0x100bbe61", "dec ebx"], ["0x100bbe62", "jne -0x1d"], ["0x100bbe64", "mov eax, dword ptr [esp + 0x4c]"]], "recomp": [["0x10069221", "add eax, dword ptr [esp + 0x1c]"], ["0x10069225", "add edx, dword ptr [esp + 0x28]"], ["0x10069229", "jmp -0x2f"], ["0x1006922b", "mov eax, dword ptr [esp + 0x50]"]]}, {"both": [["0x100bbe68", "mov ecx, dword ptr [esp + 0x10]", "0x1006922f"], ["0x100bbe6c", "push eax", "0x10069233"], ["0x100bbe6d", "push ecx", "0x10069234"], ["0x100bbe6e", "mov eax, dword ptr [ecx]", "0x10069235"], ["0x100bbe70", "call dword ptr [eax + 0x80]", "0x10069237"], ["0x100bbe76", "xor eax, eax", "0x1006923d"]]}, {"orig": [["0x100bbe78", "cmp dword ptr [esp + 0xa4], eax"], ["0x100bbe7f", "je 0x118"]], "recomp": [["0x1006923f", "cmp dword ptr [esp + 0xa8], eax"], ["0x10069246", "je 0x101"]]}, {"both": [["0x100bbe85", "cmp dword ptr [esp + 0x10], eax", "0x1006924c"]]}, {"orig": [["0x100bbe89", "je 0x10e"]], "recomp": [["0x10069250", "je 0xf7"]]}, {"both": [["0x100bbe8f", "mov dword ptr [esp + 0x18], eax", "0x10069256"], ["0x100bbe93", "mov ecx, dword ptr [esp + 0x10]", "0x1006925a"], ["0x100bbe97", "mov dword ptr [esp + 0x14], eax", "0x1006925e"], ["0x100bbe9b", "lea eax, [esp + 0x14]", "0x10069262"], ["0x100bbe9f", "push eax", "0x10069266"], ["0x100bbea0", "push 8", "0x10069267"], ["0x100bbea2", "push ecx", "0x10069269"], ["0x100bbea3", "mov eax, dword ptr [ecx]", "0x1006926a"], ["0x100bbea5", "call dword ptr [eax + 0x74]", "0x1006926c"]]}, {"orig": [["0x100bbea8", "jmp 0xf0"]], "recomp": [["0x1006926f", "jmp 0xd9"]]}, {"both": [["0x100bbead", "cmp dword ptr [esi + 0xa8], 0", "0x10069274"], ["0x100bbeb4", "jne 0x18", "0x1006927b"], ["0x100bbeb6", "cmp dword ptr [esp + 0x10], 0", "0x1006927d"], ["0x100bbebb", "je 0xa", "0x10069282"], ["0x100bbebd", "mov eax, dword ptr [esp + 0x10]", "0x10069284"], ["0x100bbec1", "push eax", "0x10069288"], ["0x100bbec2", "mov ebx, dword ptr [eax]", "0x10069289"], ["0x100bbec4", "call dword ptr [ebx + 8]", "0x1006928b"], ["0x100bbec7", "xor eax, eax", "0x1006928e"]]}, {"orig": [["0x100bbec9", "jmp 0xd3"], ["0x100bbece", "lea ecx, [ebp*2]"], ["0x100bbed5", "sub dword ptr [esp + 0x1c], ebp"], ["0x100bbed9", "sub dword ptr [esp + 0x20], ecx"], ["0x100bbedd", "cmp dword ptr [esp + 0xa4], 0"], ["0x100bbee5", "je 0x68"], ["0x100bbee7", "cmp dword ptr [esp + 0x14], 0"], ["0x100bbeec", "jle 0x41"], ["0x100bbeee", "mov ecx, dword ptr [esp + 0x14]"], ["0x100bbef2", "mov dword ptr [esp + 0x24], ecx"]], "recomp": [["0x10069290", "jmp 0xbc"], ["0x10069295", "mov ecx, dword ptr [esp + 0x20]"], ["0x10069299", "mov ebp, dword ptr [esp + 0xa8]"], ["0x100692a0", "sub dword ptr [esp + 0x1c], ecx"], ["0x100692a4", "add ecx, ecx"], ["0x100692a6", "sub dword ptr [esp + 0x28], ecx"]]}, {"both": [["0x100bbef6", "test ebp, ebp", "0x100692aa"]]}, {"orig": [["0x100bbef8", "jle 0x27"], ["0x100bbefa", "mov edi, ebp"], ["0x100bbefc", "mov cl, byte ptr [edx]"], ["0x100bbefe", "test cl, cl"], ["0x100bbf00", "jne 0x7"], ["0x100bbf02", "mov word ptr [eax], 0x7c1f"], ["0x100bbf07", "jmp 0x11"], ["0x100bbf09", "xor ebx, ebx"], ["0x100bbf0b", "mov bl, cl"], ["0x100bbf0d", "mov ecx, dword ptr [esi + 0xa8]"], ["0x100bbf13", "mov cx, word ptr [ecx + ebx*2]"], ["0x100bbf17", "mov word ptr [eax], cx"], ["0x100bbf1a", "inc edx"], ["0x100bbf1b", "add eax, 2"]], "recomp": [["0x100692ac", "je 0x5c"], ["0x100692ae", "test ebx, ebx"], ["0x100692b0", "jle 0x38"], ["0x100692b2", "mov edi, dword ptr [esp + 0x24]"], ["0x100692b6", "test edi, edi"], ["0x100692b8", "jle 0x25"], ["0x100692ba", "cmp byte ptr [eax], 0"], ["0x100692bd", "je 0x14"], ["0x100692bf", "xor ecx, ecx"], ["0x100692c1", "mov ebp, dword ptr [esi + 0xa8]"], ["0x100692c7", "mov cl, byte ptr [eax]"], ["0x100692c9", "mov cx, word ptr [ebp + ecx*2]"], ["0x100692ce", "mov word ptr [edx], cx"], ["0x100692d1", "jmp 0x5"], ["0x100692d3", "mov word ptr [edx], 0x7c1f"], ["0x100692d8", "inc eax"], ["0x100692d9", "add edx, 2"]]}, {"both": [["0x100bbf1e", "dec edi", "0x100692dc"], ["0x100bbf1f", "jne -0x25", "0x100692dd"]]}, {"orig": [["0x100bbf21", "add edx, dword ptr [esp + 0x1c]"], ["0x100bbf25", "add eax, dword ptr [esp + 0x20]"], ["0x100bbf29", "dec dword ptr [esp + 0x24]"], ["0x100bbf2d", "jne -0x39"]], "recomp": [["0x100692df", "add eax, dword ptr [esp + 0x1c]"], ["0x100692e3", "add edx, dword ptr [esp + 0x28]"], ["0x100692e7", "dec ebx"], ["0x100692e8", "jne -0x38"]]}, {"both": [["0x100bbf2f", "mov eax, 0x7c1f", "0x100692ea"], ["0x100bbf34", "mov ecx, dword ptr [esp + 0x10]", "0x100692ef"], ["0x100bbf38", "mov dword ptr [esp + 0x18], eax", "0x100692f3"], ["0x100bbf3c", "mov dword ptr [esp + 0x14], eax", "0x100692f7"], ["0x100bbf40", "lea eax, [esp + 0x14]", "0x100692fb"], ["0x100bbf44", "push eax", "0x100692ff"], ["0x100bbf45", "push 8", "0x10069300"], ["0x100bbf47", "push ecx", "0x10069302"], ["0x100bbf48", "mov eax, dword ptr [ecx]", "0x10069303"], ["0x100bbf4a", "call dword ptr [eax + 0x74]", "0x10069305"]]}, {"orig": [["0x100bbf4d", "jmp 0x3c"], ["0x100bbf4f", "cmp dword ptr [esp + 0x14], 0"], ["0x100bbf54", "jle 0x35"], ["0x100bbf56", "mov ecx, dword ptr [esp + 0x14]"], ["0x100bbf5a", "mov dword ptr [esp + 0x14], ecx"], ["0x100bbf5e", "test ebp, ebp"], ["0x100bbf60", "jle 0x1b"], ["0x100bbf62", "mov edi, ebp"]], "recomp": [["0x10069308", "jmp 0x31"], ["0x1006930a", "test ebx, ebx"], ["0x1006930c", "jle 0x2d"], ["0x1006930e", "mov edi, dword ptr [esp + 0x24]"], ["0x10069312", "test edi, edi"], ["0x10069314", "jle 0x1a"]]}, {"both": [["0x100bbf64", "xor ecx, ecx", "0x10069316"]]}, {"orig": [["0x100bbf66", "mov ebx, dword ptr [esi + 0xa8]"], ["0x100bbf6c", "mov cl, byte ptr [edx]"], ["0x100bbf6e", "inc edx"], ["0x100bbf6f", "mov cx, word ptr [ebx + ecx*2]"], ["0x100bbf73", "add eax, 2"], ["0x100bbf76", "mov word ptr [eax - 2], cx"]], "recomp": [["0x10069318", "mov ebp, dword ptr [esi + 0xa8]"], ["0x1006931e", "mov cl, byte ptr [eax]"], ["0x10069320", "inc eax"], ["0x10069321", "mov cx, word ptr [ebp + ecx*2]"], ["0x10069326", "add edx, 2"], ["0x10069329", "mov word ptr [edx - 2], cx"]]}, {"both": [["0x100bbf7a", "dec edi", "0x1006932d"]]}, {"orig": [["0x100bbf7b", "jne -0x19"], ["0x100bbf7d", "add edx, dword ptr [esp + 0x1c]"], ["0x100bbf81", "add eax, dword ptr [esp + 0x20]"], ["0x100bbf85", "dec dword ptr [esp + 0x14]"]], "recomp": [["0x1006932e", "jne -0x1a"], ["0x10069330", "add eax, dword ptr [esp + 0x1c]"], ["0x10069334", "add edx, dword ptr [esp + 0x28]"], ["0x10069338", "dec ebx"]]}, {"both": [["0x100bbf89", "jne -0x2d", "0x10069339"]]}, {"orig": [["0x100bbf8b", "mov eax, dword ptr [esp + 0x4c]"]], "recomp": [["0x1006933b", "mov eax, dword ptr [esp + 0x50]"]]}, {"both": [["0x100bbf8f", "mov ecx, dword ptr [esp + 0x10]", "0x1006933f"], ["0x100bbf93", "push eax", "0x10069343"], ["0x100bbf94", "push ecx", "0x10069344"], ["0x100bbf95", "mov eax, dword ptr [ecx]", "0x10069345"], ["0x100bbf97", "call dword ptr [eax + 0x80]", "0x10069347"], ["0x100bbf9d", "mov eax, dword ptr [esp + 0x10]", "0x1006934d"], ["0x100bbfa1", "pop ebp", "0x10069351"], ["0x100bbfa2", "pop edi", "0x10069352"], ["0x100bbfa3", "pop esi", "0x10069353"], ["0x100bbfa4", "pop ebx", "0x10069354"]]}, {"orig": [["0x100bbfa5", "add esp, 0x84"]], "recomp": [["0x10069355", "add esp, 0x88"]]}, {"both": [["0x100bbfab", "ret 0x10", "0x1006935b"]]}]]]}, {"address": "0x100bbfb0", "recomp": "0x10069360", "name": "MxDisplaySurface::CopySurface", "matching": 1.0, "diff": []}, {"address": "0x100bc070", "recomp": "0x10069420", "name": "MxDisplaySurface::CreateCursorSurface", "matching": 1.0, "effective": true, "diff": [["@@ -0x100bc15b,49 +0x1006950b,49 @@", [{"both": [["0x100bc15b", "mov eax, dword ptr [esp + 0xc]", "0x1006950b"], ["0x100bc15f", "push eax", "0x1006950f"], ["0x100bc160", "mov ebx, dword ptr [eax]", "0x10069510"], ["0x100bc162", "call dword ptr [ebx + 8]", "0x10069512"], ["0x100bc165", "xor eax, eax", "0x10069515"], ["0x100bc167", "pop edi", "0x10069517"], ["0x100bc168", "pop esi", "0x10069518"], ["0x100bc169", "pop ebx", "0x10069519"], ["0x100bc16a", "add esp, 0x78", "0x1006951a"], ["0x100bc16d", "ret ", "0x1006951d"]]}, {"orig": [["0x100bc16e", "mov edx, dword ptr [esp + 0x3c]"], ["0x100bc172", "mov esi, dword ptr [esp + 0x28]"], ["0x100bc176", "xor edi, edi"], ["0x100bc178", "mov eax, edx"]], "recomp": [["0x1006951e", "mov ecx, dword ptr [esp + 0x3c]"], ["0x10069522", "mov edx, dword ptr [esp + 0x28]"], ["0x10069526", "xor esi, esi"], ["0x10069528", "mov edi, ecx"]]}, {"both": [["0x100bc17a", "xor ebx, ebx", "0x1006952a"], ["0x100bc17c", "cmp ebx, 0xa", "0x1006952c"], ["0x100bc17f", "jg 0x4", "0x1006952f"]]}, {"orig": [["0x100bc181", "test edi, edi"]], "recomp": [["0x10069531", "test esi, esi"]]}, {"both": [["0x100bc183", "je 0x21", "0x10069533"]]}, {"orig": [["0x100bc185", "cmp edi, 0xa"]], "recomp": [["0x10069535", "cmp esi, 0xa"]]}, {"both": [["0x100bc188", "jg 0x4", "0x10069538"], ["0x100bc18a", "test ebx, ebx", "0x1006953a"], ["0x100bc18c", "je 0x18", "0x1006953c"]]}, {"orig": [["0x100bc18e", "lea ecx, [edi + ebx]"], ["0x100bc191", "cmp ecx, 0xa"]], "recomp": [["0x1006953e", "lea eax, [ebx + esi]"], ["0x10069541", "cmp eax, 0xa"]]}, {"both": [["0x100bc194", "je 0x10", "0x10069544"], ["0x100bc196", "jle 0x7", "0x10069546"]]}, {"orig": [["0x100bc198", "mov word ptr [eax], 0x7c1f"]], "recomp": [["0x10069548", "mov word ptr [edi], 0x7c1f"]]}, {"both": [["0x100bc19d", "jmp 0xc", "0x1006954d"]]}, {"orig": [["0x100bc19f", "mov word ptr [eax], 0xffff"]], "recomp": [["0x1006954f", "mov word ptr [edi], 0xffff"]]}, {"both": [["0x100bc1a4", "jmp 0x5", "0x10069554"]]}, {"orig": [["0x100bc1a6", "mov word ptr [eax], 0"], ["0x100bc1ab", "add eax, 2"]], "recomp": [["0x10069556", "mov word ptr [edi], 0"], ["0x1006955b", "add edi, 2"]]}, {"both": [["0x100bc1ae", "inc ebx", "0x1006955e"], ["0x100bc1af", "cmp ebx, 0x10", "0x1006955f"], ["0x100bc1b2", "jl -0x38", "0x10069562"]]}, {"orig": [["0x100bc1b4", "add edx, esi"], ["0x100bc1b6", "inc edi"], ["0x100bc1b7", "cmp edi, 0x10"]], "recomp": [["0x10069564", "add ecx, edx"], ["0x10069566", "inc esi"], ["0x10069567", "cmp esi, 0x10"]]}, {"both": [["0x100bc1ba", "jl -0x44", "0x1006956a"], ["0x100bc1bc", "mov eax, dword ptr [esp + 0x3c]", "0x1006956c"], ["0x100bc1c0", "mov ecx, dword ptr [esp + 0xc]", "0x10069570"], ["0x100bc1c4", "push eax", "0x10069574"], ["0x100bc1c5", "push ecx", "0x10069575"], ["0x100bc1c6", "mov eax, dword ptr [ecx]", "0x10069576"], ["0x100bc1c8", "call dword ptr [eax + 0x80]", "0x10069578"], ["0x100bc1ce", "mov eax, 0x7c1f", "0x1006957e"], ["0x100bc1d3", "mov ecx, dword ptr [esp + 0xc]", "0x10069583"], ["0x100bc1d7", "mov dword ptr [esp + 0x14], eax", "0x10069587"]]}]]]}, {"address": "0x100bc200", "recomp": "0x100695b0", "name": "MxDisplaySurface::VTable0x24", "matching": 0.0, "stub": true}, {"address": "0x100bc630", "recomp": "0x100695c0", "name": "MxDisplaySurface::VTable0x2c", "matching": 0.0, "stub": true}, {"address": "0x100bc980", "recomp": "0x10074070", "name": "MxBitmap::MxBitmap", "matching": 1.0, "diff": []}, {"address": "0x100bc9f0", "recomp": "0x100740f0", "name": "MxBitmap::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100bca10", "recomp": "0x10074110", "name": "MxBitmap::~MxBitmap", "matching": 1.0, "diff": []}, {"address": "0x100bcaa0", "recomp": "0x100741a0", "name": "MxBitmap::SetSize", "matching": 1.0, "diff": []}, {"address": "0x100bcba0", "recomp": "0x100742a0", "name": "MxBitmap::ImportBitmapInfo", "matching": 1.0, "diff": []}, {"address": "0x100bcc40", "recomp": "0x10074340", "name": "MxBitmap::ImportBitmap", "matching": 1.0, "effective": true, "diff": [["@@ -0x100bcc7b,35 +0x1007437b,35 @@", [{"both": [["0x100bcc7b", "push eax", "0x1007437b"], ["0x100bcc7c", "call ??2@YAPAXI@Z (FUNCTION)", "0x1007437c"], ["0x100bcc81", "add esp, 4", "0x10074381"], ["0x100bcc84", "mov dword ptr [ebx + 0x14], eax", "0x10074384"], ["0x100bcc87", "test eax, eax", "0x10074387"], ["0x100bcc89", "je 0x47", "0x10074389"], ["0x100bcc8b", "mov edi, dword ptr [ebx + 8]", "0x1007438b"], ["0x100bcc8e", "mov esi, dword ptr [ebp + 8]", "0x1007438e"], ["0x100bcc91", "mov ecx, 0x10a", "0x10074391"], ["0x100bcc96", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10074396"]]}, {"orig": [["0x100bcc98", "mov eax, dword ptr [ebp + 0xc]"], ["0x100bcc9b", "mov ecx, dword ptr [eax + 8]"], ["0x100bcc9e", "test ecx, ecx"]], "recomp": [["0x10074398", "mov ecx, dword ptr [ebp + 0xc]"], ["0x1007439b", "mov eax, dword ptr [ecx + 8]"], ["0x1007439e", "test eax, eax"]]}, {"both": [["0x100bcca0", "jg 0x2", "0x100743a0"]]}, {"orig": [["0x100bcca2", "neg ecx"], ["0x100bcca4", "mov eax, dword ptr [eax + 4]"]], "recomp": [["0x100743a2", "neg eax"], ["0x100743a4", "mov edx, dword ptr [ecx + 4]"]]}, {"both": [["0x100bcca7", "mov edi, dword ptr [ebx + 0x14]", "0x100743a7"]]}, {"orig": [["0x100bccaa", "add eax, 3"]], "recomp": [["0x100743aa", "add edx, 3"]]}, {"both": [["0x100bccad", "mov esi, dword ptr [ebp + 0x14]", "0x100743ad"]]}, {"orig": [["0x100bccb0", "and eax, 0xfffffffc"], ["0x100bccb3", "imul eax, ecx"], ["0x100bccb6", "mov ecx, eax"]], "recomp": [["0x100743b0", "and edx, 0xfffffffc"], ["0x100743b3", "imul edx, eax"], ["0x100743b6", "mov ecx, edx"]]}, {"both": [["0x100bccb8", "shr ecx, 2", "0x100743b8"], ["0x100bccbb", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x100743bb"]]}, {"orig": [["0x100bccbd", "mov ecx, eax"]], "recomp": [["0x100743bd", "mov ecx, edx"]]}, {"both": [["0x100bccbf", "and ecx, 3", "0x100743bf"], ["0x100bccc2", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x100743c2"], ["0x100bccc4", "mov eax, dword ptr [ebx + 8]", "0x100743c4"], ["0x100bccc7", "xor esi, esi", "0x100743c7"], ["0x100bccc9", "mov dword ptr [ebx + 0xc], eax", "0x100743c9"], ["0x100bcccc", "add eax, 0x28", "0x100743cc"], ["0x100bcccf", "mov dword ptr [ebx + 0x10], eax", "0x100743cf"], ["0x100bccd2", "test esi, esi", "0x100743d2"], ["0x100bccd4", "je 0x2e", "0x100743d4"], ["0x100bccd6", "mov eax, dword ptr [ebx + 8]", "0x100743d6"]]}]]]}, {"address": "0x100bcd10", "recomp": "0x10074410", "name": "MxBitmap::Read", "matching": 1.0, "diff": []}, {"address": "0x100bcd60", "recomp": "0x10074460", "name": "MxBitmap::LoadFile", "matching": 0.9894736842105263, "diff": [["@@ -0x100bcd72,21 +0x10074472,21 @@", [{"both": [["0x100bcd72", "push 0", "0x10074472"], ["0x100bcd74", "lea ecx, [esp + 0x18]", "0x10074474"], ["0x100bcd78", "push eax", "0x10074478"], ["0x100bcd79", "mov ebx, dword ptr [esp + 0x30]", "0x10074479"], ["0x100bcd7d", "push 0xe", "0x1007447d"], ["0x100bcd7f", "push ecx", "0x1007447f"], ["0x100bcd80", "push ebx", "0x10074480"], ["0x100bcd81", "call dword ptr [__imp__ReadFile@20 (POINTER)]", "0x10074481"], ["0x100bcd87", "test eax, eax", "0x10074487"], ["0x100bcd89", "je 0xa1", "0x10074489"]]}, {"orig": [["0x100bcd8f", "mov ax, word ptr [<OFFSET2>]"]], "recomp": [["0x1007448f", "mov ax, word ptr [g_bitmapSignature (DATA)]"]]}, {"both": [["0x100bcd95", "cmp word ptr [esp + 0x14], ax", "0x10074495"], ["0x100bcd9a", "jne 0x90", "0x1007449a"], ["0x100bcda0", "push 0x428", "0x100744a0"], ["0x100bcda5", "call ??2@YAPAXI@Z (FUNCTION)", "0x100744a5"], ["0x100bcdaa", "add esp, 4", "0x100744aa"], ["0x100bcdad", "mov dword ptr [esi + 8], eax", "0x100744ad"], ["0x100bcdb0", "test eax, eax", "0x100744b0"], ["0x100bcdb2", "je 0x7c", "0x100744b2"], ["0x100bcdb4", "lea ecx, [esp + 0x10]", "0x100744b4"], ["0x100bcdb8", "push 0", "0x100744b8"]]}]]]}, {"address": "0x100bce70", "recomp": "0x10074570", "name": "MxBitmap::BitBlt", "matching": 0.6445783132530121, "diff": [["@@ -0x100bce70,151 +0x10074570,151 @@", [{"both": [["0x100bce70", "sub esp, 4", "0x10074570"], ["0x100bce73", "push ebx", "0x10074573"], ["0x100bce74", "push esi", "0x10074574"]]}, {"orig": [["0x100bce75", "mov eax, dword ptr [ecx + 0xc]"]], "recomp": []}, {"both": [["0x100bce78", "push edi", "0x10074575"], ["0x100bce79", "push ebp", "0x10074576"]]}, {"orig": [["0x100bce7a", "mov esi, ecx"], ["0x100bce7c", "mov ecx, dword ptr [eax + 8]"], ["0x100bce7f", "test ecx, ecx"]], "recomp": [["0x10074577", "mov edi, ecx"], ["0x10074579", "mov ecx, dword ptr [ecx + 0xc]"], ["0x1007457c", "mov eax, dword ptr [ecx + 8]"], ["0x1007457f", "test eax, eax"]]}, {"both": [["0x100bce81", "jg 0x2", "0x10074581"]]}, {"orig": [["0x100bce83", "neg ecx"], ["0x100bce85", "mov edi, dword ptr [esp + 0x18]"], ["0x100bce89", "mov ebx, dword ptr [edi + 0xc]"], ["0x100bce8c", "mov edx, dword ptr [ebx + 8]"], ["0x100bce8f", "test edx, edx"]], "recomp": [["0x10074583", "neg eax"], ["0x10074585", "mov esi, dword ptr [esp + 0x18]"], ["0x10074589", "mov edx, dword ptr [esi + 0xc]"], ["0x1007458c", "mov ebx, dword ptr [edx + 8]"], ["0x1007458f", "test ebx, ebx"]]}, {"both": [["0x100bce91", "jg 0x2", "0x10074591"]]}, {"orig": [["0x100bce93", "neg edx"]], "recomp": [["0x10074593", "neg ebx"]]}, {"both": [["0x100bce95", "lea ebp, [esp + 0x30]", "0x10074595"], ["0x100bce99", "push ebp", "0x10074599"], ["0x100bce9a", "lea ebp, [esp + 0x30]", "0x1007459a"], ["0x100bce9e", "push ebp", "0x1007459e"], ["0x100bce9f", "lea ebp, [esp + 0x30]", "0x1007459f"], ["0x100bcea3", "push ebp", "0x100745a3"], ["0x100bcea4", "lea ebp, [esp + 0x30]", "0x100745a4"]]}, {"orig": [["0x100bcea8", "mov eax, dword ptr [eax + 4]"]], "recomp": []}, {"both": [["0x100bceab", "push ebp", "0x100745a8"], ["0x100bceac", "lea ebp, [esp + 0x30]", "0x100745a9"], ["0x100bceb0", "push ebp", "0x100745ad"], ["0x100bceb1", "lea ebp, [esp + 0x30]", "0x100745ae"], ["0x100bceb5", "push ebp", "0x100745b2"]]}, {"orig": [["0x100bceb6", "push ecx"]], "recomp": []}, {"both": [["0x100bceb7", "push eax", "0x100745b3"]]}, {"orig": [["0x100bceb8", "mov ecx, dword ptr [ebx + 4]"], ["0x100bcebb", "push edx"]], "recomp": [["0x100745b4", "mov eax, dword ptr [ecx + 4]"], ["0x100745b7", "mov ecx, dword ptr [edx + 4]"], ["0x100745ba", "push eax"], ["0x100745bb", "push ebx"]]}, {"both": [["0x100bcebc", "push ecx", "0x100745bc"], ["0x100bcebd", "call GetRectIntersection (FUNCTION)", "0x100745bd"], ["0x100bcec2", "add esp, 0x28", "0x100745c2"], ["0x100bcec5", "test al, al", "0x100745c5"], ["0x100bcec7", "je 0x142", "0x100745c7"]]}, {"orig": [["0x100bcecd", "mov ecx, dword ptr [edi + 0xc]"]], "recomp": [["0x100745cd", "mov ecx, dword ptr [esi + 0xc]"]]}, {"both": [["0x100bced0", "cmp dword ptr [ecx + 0x10], 0", "0x100745d0"], ["0x100bced4", "jne 0x31", "0x100745d4"], ["0x100bced6", "cmp dword ptr [ecx + 0x10], 0x10", "0x100745d6"]]}, {"orig": [["0x100bceda", "je 0x7"]], "recomp": [["0x100745da", "je 0x12"]]}, {"both": [["0x100bcedc", "mov eax, dword ptr [ecx + 8]", "0x100745dc"], ["0x100bcedf", "test eax, eax", "0x100745df"]]}, {"orig": [["0x100bcee1", "jge 0x6"], ["0x100bcee3", "mov eax, dword ptr [esp + 0x20]"], ["0x100bcee7", "jmp 0x9"]], "recomp": [["0x100745e1", "jl 0xb"]]}, {"both": [["0x100bcee9", "jg 0x2", "0x100745e3"], ["0x100bceeb", "neg eax", "0x100745e5"], ["0x100bceed", "sub eax, dword ptr [esp + 0x20]", "0x100745e7"], ["0x100bcef1", "dec eax", "0x100745eb"]]}, {"orig": [], "recomp": [["0x100745ec", "jmp 0x4"], ["0x100745ee", "mov eax, dword ptr [esp + 0x20]"]]}, {"both": [["0x100bcef2", "mov edx, dword ptr [ecx + 4]", "0x100745f2"], ["0x100bcef5", "add edx, 3", "0x100745f5"], ["0x100bcef8", "and edx, 0xfffffffc", "0x100745f8"], ["0x100bcefb", "imul edx, eax", "0x100745fb"]]}, {"orig": [["0x100bcefe", "add edx, dword ptr [edi + 0x14]"]], "recomp": [["0x100745fe", "add edx, dword ptr [esi + 0x14]"]]}, {"both": [["0x100bcf01", "add edx, dword ptr [esp + 0x1c]", "0x10074601"], ["0x100bcf05", "jmp 0x2a", "0x10074605"], ["0x100bcf07", "cmp dword ptr [ecx + 0x10], 0x10", "0x10074607"], ["0x100bcf0b", "jne 0x5", "0x1007460b"]]}, {"orig": [["0x100bcf0d", "mov edx, dword ptr [edi + 0x14]"]], "recomp": [["0x1007460d", "mov edx, dword ptr [esi + 0x14]"]]}, {"both": [["0x100bcf10", "jmp 0x1f", "0x10074610"], ["0x100bcf12", "mov eax, dword ptr [ecx + 8]", "0x10074612"], ["0x100bcf15", "test eax, eax", "0x10074615"]]}, {"orig": [["0x100bcf17", "jge 0x4"], ["0x100bcf19", "xor eax, eax"], ["0x100bcf1b", "jmp 0x5"]], "recomp": [["0x10074617", "jl 0x7"]]}, {"both": [["0x100bcf1d", "jg 0x2", "0x10074619"], ["0x100bcf1f", "neg eax", "0x1007461b"], ["0x100bcf21", "dec eax", "0x1007461d"]]}, {"orig": [], "recomp": [["0x1007461e", "jmp 0x2"], ["0x10074620", "xor eax, eax"]]}, {"both": [["0x100bcf22", "mov edx, dword ptr [ecx + 4]", "0x10074622"], ["0x100bcf25", "add edx, 3", "0x10074625"], ["0x100bcf28", "and edx, 0xfffffffc", "0x10074628"], ["0x100bcf2b", "imul edx, eax", "0x1007462b"]]}, {"orig": [["0x100bcf2e", "add edx, dword ptr [edi + 0x14]"], ["0x100bcf31", "mov edi, dword ptr [esi + 0xc]"], ["0x100bcf34", "mov ebp, dword ptr [edi + 0x10]"], ["0x100bcf37", "test ebp, ebp"]], "recomp": [["0x1007462e", "add edx, dword ptr [esi + 0x14]"], ["0x10074631", "mov ebp, dword ptr [edi + 0xc]"], ["0x10074634", "mov esi, dword ptr [ebp + 0x10]"], ["0x10074637", "test esi, esi"]]}, {"both": [["0x100bcf39", "jne 0x30", "0x10074639"]]}, {"orig": [["0x100bcf3b", "cmp ebp, 0x10"], ["0x100bcf3e", "je 0x7"], ["0x100bcf40", "mov eax, dword ptr [edi + 8]"]], "recomp": [["0x1007463b", "cmp esi, 0x10"], ["0x1007463e", "je 0x12"], ["0x10074640", "mov eax, dword ptr [ebp + 8]"]]}, {"both": [["0x100bcf43", "test eax, eax", "0x10074643"]]}, {"orig": [["0x100bcf45", "jge 0x6"], ["0x100bcf47", "mov eax, dword ptr [esp + 0x28]"], ["0x100bcf4b", "jmp 0x9"]], "recomp": [["0x10074645", "jl 0xb"]]}, {"both": [["0x100bcf4d", "jg 0x2", "0x10074647"], ["0x100bcf4f", "neg eax", "0x10074649"], ["0x100bcf51", "sub eax, dword ptr [esp + 0x28]", "0x1007464b"], ["0x100bcf55", "dec eax", "0x1007464f"]]}, {"orig": [["0x100bcf56", "mov ebx, dword ptr [edi + 4]"]], "recomp": [["0x10074650", "jmp 0x4"], ["0x10074652", "mov eax, dword ptr [esp + 0x28]"], ["0x10074656", "mov ebx, dword ptr [ebp + 4]"]]}, {"both": [["0x100bcf59", "add ebx, 3", "0x10074659"], ["0x100bcf5c", "and ebx, 0xfffffffc", "0x1007465c"], ["0x100bcf5f", "imul ebx, eax", "0x1007465f"]]}, {"orig": [["0x100bcf62", "add ebx, dword ptr [esi + 0x14]"]], "recomp": [["0x10074662", "add ebx, dword ptr [edi + 0x14]"]]}, {"both": [["0x100bcf65", "add ebx, dword ptr [esp + 0x24]", "0x10074665"], ["0x100bcf69", "jmp 0x29", "0x10074669"]]}, {"orig": [["0x100bcf6b", "cmp ebp, 0x10"]], "recomp": [["0x1007466b", "cmp esi, 0x10"]]}, {"both": [["0x100bcf6e", "jne 0x5", "0x1007466e"]]}, {"orig": [["0x100bcf70", "mov ebx, dword ptr [esi + 0x14]"]], "recomp": [["0x10074670", "mov ebx, dword ptr [edi + 0x14]"]]}, {"both": [["0x100bcf73", "jmp 0x1f", "0x10074673"]]}, {"orig": [["0x100bcf75", "mov eax, dword ptr [edi + 8]"]], "recomp": [["0x10074675", "mov eax, dword ptr [ebp + 8]"]]}, {"both": [["0x100bcf78", "test eax, eax", "0x10074678"]]}, {"orig": [["0x100bcf7a", "jge 0x4"], ["0x100bcf7c", "xor eax, eax"], ["0x100bcf7e", "jmp 0x5"]], "recomp": [["0x1007467a", "jl 0x7"]]}, {"both": [["0x100bcf80", "jg 0x2", "0x1007467c"], ["0x100bcf82", "neg eax", "0x1007467e"], ["0x100bcf84", "dec eax", "0x10074680"]]}, {"orig": [["0x100bcf85", "mov ebx, dword ptr [edi + 4]"]], "recomp": [["0x10074681", "jmp 0x2"], ["0x10074683", "xor eax, eax"], ["0x10074685", "mov ebx, dword ptr [ebp + 4]"]]}, {"both": [["0x100bcf88", "add ebx, 3", "0x10074688"], ["0x100bcf8b", "and ebx, 0xfffffffc", "0x1007468b"], ["0x100bcf8e", "imul ebx, eax", "0x1007468e"]]}, {"orig": [["0x100bcf91", "add ebx, dword ptr [esi + 0x14]"]], "recomp": [["0x10074691", "add ebx, dword ptr [edi + 0x14]"]]}, {"both": [["0x100bcf94", "cmp dword ptr [ecx + 0x10], 0x10", "0x10074694"]]}, {"orig": [["0x100bcf98", "je 0x6"]], "recomp": [["0x10074698", "je 0x13"]]}, {"both": [["0x100bcf9a", "cmp dword ptr [ecx + 8], 0", "0x1007469a"]]}, {"orig": [["0x100bcf9e", "jge 0xb"], ["0x100bcfa0", "mov eax, dword ptr [ecx + 4]"], ["0x100bcfa3", "add eax, 3"], ["0x100bcfa6", "and eax, 0xfffffffc"], ["0x100bcfa9", "jmp 0xb"]], "recomp": [["0x1007469e", "jl 0xd"]]}, {"both": [["0x100bcfab", "mov eax, dword ptr [ecx + 4]", "0x100746a0"], ["0x100bcfae", "add eax, 3", "0x100746a3"], ["0x100bcfb1", "and eax, 0xfffffffc", "0x100746a6"], ["0x100bcfb4", "neg eax", "0x100746a9"]]}, {"orig": [], "recomp": [["0x100746ab", "jmp 0x9"], ["0x100746ad", "mov eax, dword ptr [ecx + 4]"], ["0x100746b0", "add eax, 3"], ["0x100746b3", "and eax, 0xfffffffc"]]}, {"both": [["0x100bcfb6", "mov dword ptr [esp + 0x10], eax", "0x100746b6"]]}, {"orig": [["0x100bcfba", "cmp ebp, 0x10"], ["0x100bcfbd", "je 0x6"], ["0x100bcfbf", "cmp dword ptr [edi + 8], 0"], ["0x100bcfc3", "jge 0xb"], ["0x100bcfc5", "mov ebp, dword ptr [edi + 4]"], ["0x100bcfc8", "add ebp, 3"], ["0x100bcfcb", "and ebp, 0xfffffffc"], ["0x100bcfce", "jmp 0xb"], ["0x100bcfd0", "mov ebp, dword ptr [edi + 4]"]], "recomp": [["0x100746ba", "cmp esi, 0x10"], ["0x100746bd", "je 0x13"], ["0x100746bf", "cmp dword ptr [ebp + 8], 0"], ["0x100746c3", "jl 0xd"], ["0x100746c5", "mov ebp, dword ptr [ebp + 4]"]]}, {"both": [["0x100bcfd3", "add ebp, 3", "0x100746c8"], ["0x100bcfd6", "and ebp, 0xfffffffc", "0x100746cb"], ["0x100bcfd9", "neg ebp", "0x100746ce"]]}, {"orig": [], "recomp": [["0x100746d0", "jmp 0x9"], ["0x100746d2", "mov ebp, dword ptr [ebp + 4]"], ["0x100746d5", "add ebp, 3"], ["0x100746d8", "and ebp, 0xfffffffc"]]}, {"both": [["0x100bcfdb", "mov eax, dword ptr [esp + 0x30]", "0x100746db"], ["0x100bcfdf", "dec dword ptr [esp + 0x30]", "0x100746df"], ["0x100bcfe3", "test eax, eax", "0x100746e3"], ["0x100bcfe5", "je 0x28", "0x100746e5"], ["0x100bcfe7", "mov eax, dword ptr [esp + 0x2c]", "0x100746e7"], ["0x100bcfeb", "mov edi, ebx", "0x100746eb"], ["0x100bcfed", "mov esi, edx", "0x100746ed"], ["0x100bcfef", "mov ecx, eax", "0x100746ef"], ["0x100bcff1", "shr ecx, 2", "0x100746f1"], ["0x100bcff4", "add ebx, ebp", "0x100746f4"]]}]]]}, {"address": "0x100bd020", "recomp": "0x10074720", "name": "MxBitmap::BitBltTransparent", "matching": 0.4094955489614243, "diff": [["@@ -0x100bd020,169 +0x10074720,168 @@", [{"both": [["0x100bd020", "push ebx", "0x10074720"], ["0x100bd021", "push esi", "0x10074721"]]}, {"orig": [["0x100bd022", "mov eax, dword ptr [ecx + 0xc]"]], "recomp": []}, {"both": [["0x100bd025", "push edi", "0x10074722"]]}, {"orig": [], "recomp": [["0x10074723", "mov esi, ecx"]]}, {"both": [["0x100bd026", "push ebp", "0x10074725"]]}, {"orig": [["0x100bd027", "mov esi, ecx"], ["0x100bd029", "mov ecx, dword ptr [eax + 8]"], ["0x100bd02c", "test ecx, ecx"]], "recomp": [["0x10074726", "mov ecx, dword ptr [esi + 0xc]"], ["0x10074729", "mov eax, dword ptr [ecx + 8]"], ["0x1007472c", "test eax, eax"]]}, {"both": [["0x100bd02e", "jg 0x2", "0x1007472e"]]}, {"orig": [["0x100bd030", "neg ecx"]], "recomp": [["0x10074730", "neg eax"]]}, {"both": [["0x100bd032", "mov edi, dword ptr [esp + 0x14]", "0x10074732"]]}, {"orig": [["0x100bd036", "mov ebx, dword ptr [edi + 0xc]"], ["0x100bd039", "mov edx, dword ptr [ebx + 8]"], ["0x100bd03c", "test edx, edx"]], "recomp": [["0x10074736", "mov edx, dword ptr [edi + 0xc]"], ["0x10074739", "mov ebx, dword ptr [edx + 8]"], ["0x1007473c", "test ebx, ebx"]]}, {"both": [["0x100bd03e", "jg 0x2", "0x1007473e"]]}, {"orig": [["0x100bd040", "neg edx"]], "recomp": [["0x10074740", "neg ebx"]]}, {"both": [["0x100bd042", "lea ebp, [esp + 0x2c]", "0x10074742"], ["0x100bd046", "push ebp", "0x10074746"], ["0x100bd047", "lea ebp, [esp + 0x2c]", "0x10074747"], ["0x100bd04b", "push ebp", "0x1007474b"], ["0x100bd04c", "lea ebp, [esp + 0x2c]", "0x1007474c"], ["0x100bd050", "push ebp", "0x10074750"], ["0x100bd051", "lea ebp, [esp + 0x2c]", "0x10074751"]]}, {"orig": [["0x100bd055", "mov eax, dword ptr [eax + 4]"]], "recomp": []}, {"both": [["0x100bd058", "push ebp", "0x10074755"], ["0x100bd059", "lea ebp, [esp + 0x2c]", "0x10074756"], ["0x100bd05d", "push ebp", "0x1007475a"], ["0x100bd05e", "lea ebp, [esp + 0x2c]", "0x1007475b"], ["0x100bd062", "push ebp", "0x1007475f"]]}, {"orig": [["0x100bd063", "push ecx"]], "recomp": []}, {"both": [["0x100bd064", "push eax", "0x10074760"]]}, {"orig": [["0x100bd065", "mov ecx, dword ptr [ebx + 4]"], ["0x100bd068", "push edx"]], "recomp": [["0x10074761", "mov eax, dword ptr [ecx + 4]"], ["0x10074764", "mov ecx, dword ptr [edx + 4]"], ["0x10074767", "push eax"], ["0x10074768", "push ebx"]]}, {"both": [["0x100bd069", "push ecx", "0x10074769"], ["0x100bd06a", "call GetRectIntersection (FUNCTION)", "0x1007476a"], ["0x100bd06f", "add esp, 0x28", "0x1007476f"], ["0x100bd072", "test al, al", "0x10074772"]]}, {"orig": [["0x100bd074", "je 0x13e"], ["0x100bd07a", "mov edx, dword ptr [edi + 0xc]"], ["0x100bd07d", "cmp dword ptr [edx + 0x10], 0"]], "recomp": [["0x10074774", "je 0x146"], ["0x1007477a", "mov ecx, dword ptr [edi + 0xc]"], ["0x1007477d", "cmp dword ptr [ecx + 0x10], 0"]]}, {"both": [["0x100bd081", "jne 0x31", "0x10074781"]]}, {"orig": [["0x100bd083", "cmp dword ptr [edx + 0x10], 0x10"], ["0x100bd087", "je 0x7"], ["0x100bd089", "mov eax, dword ptr [edx + 8]"]], "recomp": [["0x10074783", "cmp dword ptr [ecx + 0x10], 0x10"], ["0x10074787", "je 0x12"], ["0x10074789", "mov eax, dword ptr [ecx + 8]"]]}, {"both": [["0x100bd08c", "test eax, eax", "0x1007478c"]]}, {"orig": [["0x100bd08e", "jge 0x6"], ["0x100bd090", "mov eax, dword ptr [esp + 0x1c]"], ["0x100bd094", "jmp 0x9"]], "recomp": [["0x1007478e", "jl 0xb"]]}, {"both": [["0x100bd096", "jg 0x2", "0x10074790"], ["0x100bd098", "neg eax", "0x10074792"], ["0x100bd09a", "sub eax, dword ptr [esp + 0x1c]", "0x10074794"], ["0x100bd09e", "dec eax", "0x10074798"]]}, {"orig": [["0x100bd09f", "mov ecx, dword ptr [edx + 4]"], ["0x100bd0a2", "add ecx, 3"], ["0x100bd0a5", "and ecx, 0xfffffffc"], ["0x100bd0a8", "imul ecx, eax"], ["0x100bd0ab", "add ecx, dword ptr [edi + 0x14]"], ["0x100bd0ae", "add ecx, dword ptr [esp + 0x18]"]], "recomp": [["0x10074799", "jmp 0x4"], ["0x1007479b", "mov eax, dword ptr [esp + 0x1c]"], ["0x1007479f", "mov edx, dword ptr [ecx + 4]"], ["0x100747a2", "add edx, 3"], ["0x100747a5", "and edx, 0xfffffffc"], ["0x100747a8", "imul edx, eax"], ["0x100747ab", "add edx, dword ptr [edi + 0x14]"], ["0x100747ae", "add edx, dword ptr [esp + 0x18]"]]}, {"both": [["0x100bd0b2", "jmp 0x2a", "0x100747b2"]]}, {"orig": [["0x100bd0b4", "cmp dword ptr [edx + 0x10], 0x10"]], "recomp": [["0x100747b4", "cmp dword ptr [ecx + 0x10], 0x10"]]}, {"both": [["0x100bd0b8", "jne 0x5", "0x100747b8"]]}, {"orig": [["0x100bd0ba", "mov ecx, dword ptr [edi + 0x14]"]], "recomp": [["0x100747ba", "mov edx, dword ptr [edi + 0x14]"]]}, {"both": [["0x100bd0bd", "jmp 0x1f", "0x100747bd"]]}, {"orig": [["0x100bd0bf", "mov eax, dword ptr [edx + 8]"]], "recomp": [["0x100747bf", "mov eax, dword ptr [ecx + 8]"]]}, {"both": [["0x100bd0c2", "test eax, eax", "0x100747c2"]]}, {"orig": [["0x100bd0c4", "jge 0x4"], ["0x100bd0c6", "xor eax, eax"], ["0x100bd0c8", "jmp 0x5"]], "recomp": [["0x100747c4", "jl 0x7"]]}, {"both": [["0x100bd0ca", "jg 0x2", "0x100747c6"], ["0x100bd0cc", "neg eax", "0x100747c8"], ["0x100bd0ce", "dec eax", "0x100747ca"]]}, {"orig": [["0x100bd0cf", "mov ecx, dword ptr [edx + 4]"], ["0x100bd0d2", "add ecx, 3"], ["0x100bd0d5", "and ecx, 0xfffffffc"], ["0x100bd0d8", "imul ecx, eax"], ["0x100bd0db", "add ecx, dword ptr [edi + 0x14]"], ["0x100bd0de", "mov ebp, dword ptr [esi + 0xc]"], ["0x100bd0e1", "mov eax, dword ptr [ebp + 0x10]"]], "recomp": [["0x100747cb", "jmp 0x2"], ["0x100747cd", "xor eax, eax"], ["0x100747cf", "mov edx, dword ptr [ecx + 4]"], ["0x100747d2", "add edx, 3"], ["0x100747d5", "and edx, 0xfffffffc"], ["0x100747d8", "imul edx, eax"], ["0x100747db", "add edx, dword ptr [edi + 0x14]"], ["0x100747de", "mov ebx, dword ptr [esi + 0xc]"], ["0x100747e1", "mov eax, dword ptr [ebx + 0x10]"]]}, {"both": [["0x100bd0e4", "test eax, eax", "0x100747e4"], ["0x100bd0e6", "jne 0x30", "0x100747e6"], ["0x100bd0e8", "cmp eax, 0x10", "0x100747e8"]]}, {"orig": [["0x100bd0eb", "je 0x7"], ["0x100bd0ed", "mov ebx, dword ptr [ebp + 8]"], ["0x100bd0f0", "test ebx, ebx"], ["0x100bd0f2", "jge 0x6"], ["0x100bd0f4", "mov ebx, dword ptr [esp + 0x24]"], ["0x100bd0f8", "jmp 0x9"]], "recomp": [["0x100747eb", "je 0x12"], ["0x100747ed", "mov ebp, dword ptr [ebx + 8]"], ["0x100747f0", "test ebp, ebp"], ["0x100747f2", "jl 0xb"]]}, {"both": [["0x100bd0fa", "jg 0x2", "0x100747f4"]]}, {"orig": [["0x100bd0fc", "neg ebx"], ["0x100bd0fe", "sub ebx, dword ptr [esp + 0x24]"], ["0x100bd102", "dec ebx"], ["0x100bd103", "mov edi, dword ptr [ebp + 4]"]], "recomp": [["0x100747f6", "neg ebp"], ["0x100747f8", "sub ebp, dword ptr [esp + 0x24]"], ["0x100747fc", "dec ebp"], ["0x100747fd", "jmp 0x4"], ["0x100747ff", "mov ebp, dword ptr [esp + 0x24]"], ["0x10074803", "mov edi, dword ptr [ebx + 4]"]]}, {"both": [["0x100bd106", "add edi, 3", "0x10074806"], ["0x100bd109", "and edi, 0xfffffffc", "0x10074809"]]}, {"orig": [["0x100bd10c", "imul edi, ebx"]], "recomp": [["0x1007480c", "imul edi, ebp"]]}, {"both": [["0x100bd10f", "add edi, dword ptr [esi + 0x14]", "0x1007480f"], ["0x100bd112", "add edi, dword ptr [esp + 0x20]", "0x10074812"], ["0x100bd116", "jmp 0x29", "0x10074816"], ["0x100bd118", "cmp eax, 0x10", "0x10074818"], ["0x100bd11b", "jne 0x5", "0x1007481b"], ["0x100bd11d", "mov edi, dword ptr [esi + 0x14]", "0x1007481d"], ["0x100bd120", "jmp 0x1f", "0x10074820"]]}, {"orig": [["0x100bd122", "mov ebx, dword ptr [ebp + 8]"], ["0x100bd125", "test ebx, ebx"], ["0x100bd127", "jge 0x4"], ["0x100bd129", "xor ebx, ebx"], ["0x100bd12b", "jmp 0x5"]], "recomp": [["0x10074822", "mov ebp, dword ptr [ebx + 8]"], ["0x10074825", "test ebp, ebp"], ["0x10074827", "jl 0x7"]]}, {"both": [["0x100bd12d", "jg 0x2", "0x10074829"]]}, {"orig": [["0x100bd12f", "neg ebx"], ["0x100bd131", "dec ebx"], ["0x100bd132", "mov edi, dword ptr [ebp + 4]"]], "recomp": [["0x1007482b", "neg ebp"], ["0x1007482d", "dec ebp"], ["0x1007482e", "jmp 0x2"], ["0x10074830", "xor ebp, ebp"], ["0x10074832", "mov edi, dword ptr [ebx + 4]"]]}, {"both": [["0x100bd135", "add edi, 3", "0x10074835"], ["0x100bd138", "and edi, 0xfffffffc", "0x10074838"]]}, {"orig": [["0x100bd13b", "imul edi, ebx"]], "recomp": [["0x1007483b", "imul edi, ebp"]]}, {"both": [["0x100bd13e", "add edi, dword ptr [esi + 0x14]", "0x1007483e"]]}, {"orig": [["0x100bd141", "cmp dword ptr [edx + 0x10], 0x10"], ["0x100bd145", "je 0x6"], ["0x100bd147", "cmp dword ptr [edx + 8], 0"], ["0x100bd14b", "jge 0xb"], ["0x100bd14d", "mov ebx, dword ptr [edx + 4]"], ["0x100bd150", "add ebx, 3"], ["0x100bd153", "and ebx, 0xfffffffc"], ["0x100bd156", "jmp 0xb"], ["0x100bd158", "mov ebx, dword ptr [edx + 4]"], ["0x100bd15b", "add ebx, 3"], ["0x100bd15e", "and ebx, 0xfffffffc"], ["0x100bd161", "neg ebx"], ["0x100bd163", "sub ebx, dword ptr [esp + 0x28]"]], "recomp": [["0x10074841", "cmp dword ptr [ecx + 0x10], 0x10"], ["0x10074845", "je 0x17"], ["0x10074847", "cmp dword ptr [ecx + 8], 0"], ["0x1007484b", "jl 0x11"], ["0x1007484d", "mov esi, dword ptr [ecx + 4]"], ["0x10074850", "add esi, 3"], ["0x10074853", "and esi, 0xfffffffc"], ["0x10074856", "add esi, dword ptr [esp + 0x28]"], ["0x1007485a", "neg esi"], ["0x1007485c", "jmp 0xd"], ["0x1007485e", "mov esi, dword ptr [ecx + 4]"], ["0x10074861", "add esi, 3"], ["0x10074864", "and esi, 0xfffffffc"], ["0x10074867", "sub esi, dword ptr [esp + 0x28]"]]}, {"both": [["0x100bd167", "cmp eax, 0x10", "0x1007486b"]]}, {"orig": [["0x100bd16a", "je 0x6"], ["0x100bd16c", "cmp dword ptr [ebp + 8], 0"], ["0x100bd170", "jge 0xb"], ["0x100bd172", "mov eax, dword ptr [ebp + 4]"]], "recomp": [["0x1007486e", "je 0x17"], ["0x10074870", "cmp dword ptr [ebx + 8], 0"], ["0x10074874", "jl 0x11"], ["0x10074876", "mov eax, dword ptr [ebx + 4]"]]}, {"both": [["0x100bd175", "add eax, 3", "0x10074879"], ["0x100bd178", "and eax, 0xfffffffc", "0x1007487c"]]}, {"orig": [["0x100bd17b", "jmp 0xb"], ["0x100bd17d", "mov eax, dword ptr [ebp + 4]"]], "recomp": [["0x1007487f", "add eax, dword ptr [esp + 0x28]"], ["0x10074883", "neg eax"], ["0x10074885", "jmp 0xd"], ["0x10074887", "mov eax, dword ptr [ebx + 4]"]]}, {"both": [["0x100bd180", "add eax, 3", "0x1007488a"], ["0x100bd183", "and eax, 0xfffffffc", "0x1007488d"]]}, {"orig": [["0x100bd186", "neg eax"]], "recomp": []}, {"both": [["0x100bd188", "sub eax, dword ptr [esp + 0x28]", "0x10074890"]]}, {"orig": [], "recomp": [["0x10074894", "xor ecx, ecx"], ["0x10074896", "cmp dword ptr [esp + 0x2c], ecx"], ["0x1007489a", "jle 0x24"]]}, {"both": [["0x100bd18c", "xor ebp, ebp", "0x1007489c"]]}, {"orig": [["0x100bd18e", "cmp dword ptr [esp + 0x2c], ebp"], ["0x100bd192", "jle 0x24"], ["0x100bd194", "xor esi, esi"], ["0x100bd196", "cmp dword ptr [esp + 0x28], esi"]], "recomp": [["0x1007489e", "cmp dword ptr [esp + 0x28], ebp"]]}, {"both": [["0x100bd19a", "jle 0x11", "0x100748a2"]]}, {"orig": [["0x100bd19c", "mov dl, byte ptr [ecx]"], ["0x100bd19e", "test dl, dl"]], "recomp": [["0x100748a4", "mov bl, byte ptr [edx]"], ["0x100748a6", "test bl, bl"]]}, {"both": [["0x100bd1a0", "je 0x2", "0x100748a8"]]}, {"orig": [["0x100bd1a2", "mov byte ptr [edi], dl"]], "recomp": [["0x100748aa", "mov byte ptr [edi], bl"], ["0x100748ac", "inc edx"], ["0x100748ad", "inc edi"], ["0x100748ae", "inc ebp"], ["0x100748af", "cmp dword ptr [esp + 0x28], ebp"], ["0x100748b3", "jg -0x11"], ["0x100748b5", "add edx, esi"], ["0x100748b7", "add edi, eax"]]}, {"both": [["0x100bd1a4", "inc ecx", "0x100748b9"]]}, {"orig": [["0x100bd1a5", "inc edi"], ["0x100bd1a6", "inc esi"], ["0x100bd1a7", "cmp dword ptr [esp + 0x28], esi"], ["0x100bd1ab", "jg -0x11"], ["0x100bd1ad", "add ecx, ebx"], ["0x100bd1af", "add edi, eax"], ["0x100bd1b1", "inc ebp"], ["0x100bd1b2", "cmp dword ptr [esp + 0x2c], ebp"], ["0x100bd1b6", "jg -0x24"]], "recomp": [["0x100748ba", "cmp ecx, dword ptr [esp + 0x2c]"], ["0x100748be", "jl -0x24"]]}, {"both": [["0x100bd1b8", "pop ebp", "0x100748c0"], ["0x100bd1b9", "pop edi", "0x100748c1"], ["0x100bd1ba", "pop esi", "0x100748c2"], ["0x100bd1bb", "pop ebx", "0x100748c3"], ["0x100bd1bc", "ret 0x1c", "0x100748c4"]]}, {"orig": [["0x100bd1bf", "int3 "], ["0x100bd1c0", "mov eax, dword ptr fs:[0]"], ["0x100bd1c6", "push ebp"]], "recomp": []}]]]}, {"address": "0x100bd1c0", "recomp": "0x100748d0", "name": "MxBitmap::CreatePalette", "matching": 1.0, "diff": []}, {"address": "0x100bd280", "recomp": "0x10074990", "name": "MxBitmap::ImportPalette", "matching": 1.0, "diff": []}, {"address": "0x100bd2d0", "recomp": "0x100749e0", "name": "MxBitmap::SetBitDepth", "matching": 0.7071823204419889, "diff": [["@@ -0x100bd2d9,88 +0x100749e9,87 @@", [{"both": [["0x100bd2d9", "push -1", "0x100749e9"], ["0x100bd2db", "push <OFFSET1>", "0x100749eb"], ["0x100bd2e0", "push eax", "0x100749f0"], ["0x100bd2e1", "mov dword ptr fs:[0], esp", "0x100749f1"], ["0x100bd2e8", "sub esp, 4", "0x100749f8"], ["0x100bd2eb", "mov al, byte ptr [ebp + 8]", "0x100749fb"], ["0x100bd2ee", "push ebx", "0x100749fe"], ["0x100bd2ef", "push esi", "0x100749ff"], ["0x100bd2f0", "mov ebx, 0xffffffff", "0x10074a00"], ["0x100bd2f5", "push edi", "0x10074a05"]]}, {"orig": [["0x100bd2f6", "mov esi, ecx"], ["0x100bd2f8", "xor edi, edi"], ["0x100bd2fa", "cmp byte ptr [esi + 0x18], al"]], "recomp": [["0x10074a06", "xor esi, esi"], ["0x10074a08", "cmp byte ptr [ecx + 0x18], al"], ["0x10074a0b", "mov edi, ecx"]]}, {"both": [["0x100bd2fd", "jne 0x27", "0x10074a0d"], ["0x100bd2ff", "xor ebx, ebx", "0x10074a0f"], ["0x100bd301", "test ebx, ebx", "0x10074a11"], ["0x100bd303", "je 0xc", "0x10074a13"]]}, {"orig": [["0x100bd305", "test edi, edi"]], "recomp": [["0x10074a15", "test esi, esi"]]}, {"both": [["0x100bd307", "je 0x8", "0x10074a17"], ["0x100bd309", "push 1", "0x10074a19"]]}, {"orig": [["0x100bd30b", "mov eax, dword ptr [edi]"], ["0x100bd30d", "mov ecx, edi"]], "recomp": [["0x10074a1b", "mov eax, dword ptr [esi]"], ["0x10074a1d", "mov ecx, esi"]]}, {"both": [["0x100bd30f", "call dword ptr [eax]", "0x10074a1f"], ["0x100bd311", "mov eax, ebx", "0x10074a21"], ["0x100bd313", "mov ecx, dword ptr [ebp - 0xc]", "0x10074a23"], ["0x100bd316", "mov dword ptr fs:[0], ecx", "0x10074a26"], ["0x100bd31d", "pop edi", "0x10074a2d"], ["0x100bd31e", "pop esi", "0x10074a2e"], ["0x100bd31f", "pop ebx", "0x10074a2f"], ["0x100bd320", "mov esp, ebp", "0x10074a30"], ["0x100bd322", "pop ebp", "0x10074a32"], ["0x100bd323", "ret 4", "0x10074a33"], ["0x100bd326", "xor eax, eax", "0x10074a36"], ["0x100bd328", "mov al, byte ptr [ebp + 8]", "0x10074a38"], ["0x100bd32b", "test eax, eax", "0x10074a3b"], ["0x100bd32d", "je 0x7", "0x10074a3d"], ["0x100bd32f", "cmp eax, 1", "0x10074a3f"], ["0x100bd332", "je 0x27", "0x10074a42"], ["0x100bd334", "jmp -0x35", "0x10074a44"]]}, {"orig": [["0x100bd336", "mov eax, dword ptr [esi + 0x1c]"], ["0x100bd339", "mov ecx, dword ptr [esi + 0x10]"]], "recomp": [["0x10074a46", "mov eax, dword ptr [edi + 0x1c]"], ["0x10074a49", "mov ecx, dword ptr [edi + 0x10]"]]}, {"both": [["0x100bd33c", "push eax", "0x10074a4c"], ["0x100bd33d", "push ecx", "0x10074a4d"]]}, {"orig": [["0x100bd33e", "mov ecx, esi"]], "recomp": [["0x10074a4e", "mov ecx, edi"]]}, {"both": [["0x100bd340", "call MxBitmap::ImportColorsToPalette (FUNCTION)", "0x10074a50"]]}, {"orig": [["0x100bd345", "mov ecx, dword ptr [esi + 0x1c]"]], "recomp": [["0x10074a55", "mov ecx, dword ptr [edi + 0x1c]"]]}, {"both": [["0x100bd348", "test ecx, ecx", "0x10074a58"], ["0x100bd34a", "je 0x6", "0x10074a5a"], ["0x100bd34c", "push 1", "0x10074a5c"], ["0x100bd34e", "mov eax, dword ptr [ecx]", "0x10074a5e"], ["0x100bd350", "call dword ptr [eax]", "0x10074a60"]]}, {"orig": [["0x100bd352", "mov dword ptr [esi + 0x1c], 0"], ["0x100bd359", "jmp 0x55"]], "recomp": [["0x10074a62", "mov dword ptr [edi + 0x1c], 0"], ["0x10074a69", "jmp 0x56"]]}, {"both": [["0x100bd35b", "push 0x414", "0x10074a6b"]]}, {"orig": [["0x100bd360", "mov edi, 0"]], "recomp": [["0x10074a70", "mov esi, 0"]]}, {"both": [["0x100bd365", "call ??2@YAPAXI@Z (FUNCTION)", "0x10074a75"], ["0x100bd36a", "add esp, 4", "0x10074a7a"], ["0x100bd36d", "mov dword ptr [ebp - 0x10], eax", "0x10074a7d"], ["0x100bd370", "mov dword ptr [ebp - 4], 0", "0x10074a80"], ["0x100bd377", "test eax, eax", "0x10074a87"], ["0x100bd379", "je 0xe", "0x10074a89"]]}, {"orig": [["0x100bd37b", "mov eax, dword ptr [esi + 0x10]"]], "recomp": [["0x10074a8b", "mov eax, dword ptr [edi + 0x10]"]]}, {"both": [["0x100bd37e", "mov ecx, dword ptr [ebp - 0x10]", "0x10074a8e"], ["0x100bd381", "push eax", "0x10074a91"], ["0x100bd382", "call MxPalette::MxPalette (FUNCTION)", "0x10074a92"]]}, {"orig": [["0x100bd387", "mov edi, eax"]], "recomp": [["0x10074a97", "mov esi, eax"]]}, {"both": [["0x100bd389", "mov dword ptr [ebp - 4], 0xffffffff", "0x10074a99"]]}, {"orig": [["0x100bd390", "test edi, edi"]], "recomp": [["0x10074aa0", "test esi, esi"]]}, {"both": [["0x100bd392", "je -0x97", "0x10074aa2"]]}, {"orig": [["0x100bd398", "xor ax, ax"], ["0x100bd39b", "mov ecx, dword ptr [esi + 0x10]"], ["0x100bd39e", "mov dword ptr [esi + 0x1c], edi"], ["0x100bd3a1", "movzx edx, ax"], ["0x100bd3a4", "mov word ptr [ecx + edx*2], ax"], ["0x100bd3a8", "inc ax"], ["0x100bd3aa", "cmp ax, 0x100"], ["0x100bd3ae", "jb -0xf"]], "recomp": [["0x10074aa8", "xor cx, cx"], ["0x10074aab", "mov eax, dword ptr [edi + 0x10]"], ["0x10074aae", "mov dword ptr [edi + 0x1c], esi"], ["0x10074ab1", "movzx edx, cx"], ["0x10074ab4", "mov word ptr [eax + edx*2], cx"], ["0x10074ab8", "inc cx"], ["0x10074aba", "cmp cx, 0x100"], ["0x10074abf", "jb -0x10"]]}, {"both": [["0x100bd3b0", "mov al, byte ptr [ebp + 8]", "0x10074ac1"]]}, {"orig": [["0x100bd3b3", "mov byte ptr [esi + 0x18], al"], ["0x100bd3b6", "jmp -0xbc"]], "recomp": [["0x10074ac4", "mov byte ptr [edi + 0x18], al"], ["0x10074ac7", "jmp -0xbd"]]}, {"both": [["0x100bd3bb", "mov eax, <OFFSET5>", "0x10074acc"], ["0x100bd3c0", "jmp ___CxxFrameHandler (FUNCTION)", "0x10074ad1"], ["0x100bd3c5", "mov eax, dword ptr [ebp - 0x10]", "0x10074ad6"], ["0x100bd3c8", "push eax", "0x10074ad9"], ["0x100bd3c9", "call ??3@YAXPAX@Z (FUNCTION)", "0x10074ada"], ["0x100bd3ce", "add esp, 4", "0x10074adf"], ["0x100bd3d1", "ret ", "0x10074ae2"]]}, {"orig": [["0x100bd3d2", "int3 "]], "recomp": []}]]]}, {"address": "0x100bd3e0", "recomp": "0x10074af0", "name": "MxBitmap::StretchBits", "matching": 0.9743589743589743, "diff": [["@@ -0x100bd3e0,20 +0x10074af0,20 @@", [{"both": [["0x100bd3e0", "push esi", "0x10074af0"], ["0x100bd3e1", "mov eax, dword ptr [ecx + 0xc]", "0x10074af1"], ["0x100bd3e4", "cmp dword ptr [eax + 0x10], 0x10", "0x10074af4"], ["0x100bd3e8", "je 0x15", "0x10074af8"], ["0x100bd3ea", "mov eax, dword ptr [eax + 8]", "0x10074afa"], ["0x100bd3ed", "test eax, eax", "0x10074afd"], ["0x100bd3ef", "jle 0xe", "0x10074aff"]]}, {"orig": [], "recomp": [["0x10074b01", "sub eax, dword ptr [esp + 0x10]"]]}, {"both": [["0x100bd3f1", "mov edx, dword ptr [esp + 0x20]", "0x10074b05"], ["0x100bd3f5", "sub eax, edx", "0x10074b09"]]}, {"orig": [["0x100bd3f7", "sub eax, dword ptr [esp + 0x10]"]], "recomp": []}, {"both": [["0x100bd3fb", "mov esi, eax", "0x10074b0b"], ["0x100bd3fd", "jmp 0x8", "0x10074b0d"], ["0x100bd3ff", "mov esi, dword ptr [esp + 0x10]", "0x10074b0f"], ["0x100bd403", "mov edx, dword ptr [esp + 0x20]", "0x10074b13"], ["0x100bd407", "push 0xcc0020", "0x10074b17"], ["0x100bd40c", "xor eax, eax", "0x10074b1c"], ["0x100bd40e", "mov al, byte ptr [ecx + 0x18]", "0x10074b1e"], ["0x100bd411", "push eax", "0x10074b21"], ["0x100bd412", "mov eax, dword ptr [ecx + 8]", "0x10074b22"], ["0x100bd415", "push eax", "0x10074b25"]]}]]]}, {"address": "0x100bd450", "recomp": "0x10074b60", "name": "MxBitmap::ImportColorsToPalette", "matching": 1.0, "diff": []}, {"address": "0x100bd530", "recomp": "0x10074c40", "name": "WritePixel", "matching": 1.0, "diff": []}, {"address": "0x100bd580", "recomp": "0x10074c90", "name": "WritePixels", "matching": 1.0, "diff": []}, {"address": "0x100bd600", "recomp": "0x10074d10", "name": "ClampLine", "matching": 0.8367346938775511, "diff": [["@@ -0x100bd600,37 +0x10074d10,37 @@", [{"orig": [["0x100bd600", "mov ecx, dword ptr [esp + 8]"]], "recomp": [["0x10074d10", "mov eax, dword ptr [esp + 0xc]"]]}, {"both": [["0x100bd604", "push ebx", "0x10074d14"]]}, {"orig": [["0x100bd605", "mov bx, word ptr [ecx]"]], "recomp": [["0x10074d15", "mov ax, word ptr [eax]"]]}, {"both": [["0x100bd608", "push esi", "0x10074d18"]]}, {"orig": [["0x100bd609", "mov eax, dword ptr [esp + 0x14]"]], "recomp": [["0x10074d19", "mov ebx, dword ptr [esp + 0x10]"]]}, {"both": [["0x100bd60d", "push edi", "0x10074d1d"]]}, {"orig": [["0x100bd60e", "mov ax, word ptr [eax]"]], "recomp": [["0x10074d1e", "mov cx, word ptr [ebx]"]]}, {"both": [["0x100bd611", "push ebp", "0x10074d21"], ["0x100bd612", "test ax, ax", "0x10074d22"], ["0x100bd615", "mov edx, dword ptr [esp + 0x20]", "0x10074d25"], ["0x100bd619", "mov si, word ptr [edx]", "0x10074d29"]]}, {"orig": [["0x100bd61c", "lea edi, [ebx + esi]"]], "recomp": [["0x10074d2c", "lea edi, [ecx + esi]"]]}, {"both": [["0x100bd61f", "jl 0x50", "0x10074d2f"], ["0x100bd621", "movsx ebp, ax", "0x10074d31"], ["0x100bd624", "mov eax, dword ptr [esp + 0x14]", "0x10074d34"], ["0x100bd628", "cmp dword ptr [eax + 8], ebp", "0x10074d38"], ["0x100bd62b", "jle 0x44", "0x10074d3b"], ["0x100bd62d", "test di, di", "0x10074d3d"], ["0x100bd630", "jl 0x3f", "0x10074d40"]]}, {"orig": [["0x100bd632", "movsx ebp, bx"]], "recomp": [["0x10074d42", "movsx ebp, cx"]]}, {"both": [["0x100bd635", "cmp ebp, dword ptr [eax + 4]", "0x10074d45"], ["0x100bd638", "jge 0x37", "0x10074d48"]]}, {"orig": [["0x100bd63a", "test bx, bx"]], "recomp": [["0x10074d4a", "test cx, cx"]]}, {"both": [["0x100bd63d", "jge 0xb", "0x10074d4d"], ["0x100bd63f", "mov si, di", "0x10074d4f"], ["0x100bd642", "mov word ptr [edx], di", "0x10074d52"]]}, {"orig": [["0x100bd645", "mov word ptr [ecx], 0"]], "recomp": [["0x10074d55", "mov word ptr [ebx], 0"]]}, {"both": [["0x100bd64a", "movsx ecx, di", "0x10074d5a"], ["0x100bd64d", "mov eax, dword ptr [eax + 4]", "0x10074d5d"], ["0x100bd650", "cmp ecx, eax", "0x10074d60"], ["0x100bd652", "jle 0x9", "0x10074d62"], ["0x100bd654", "sub si, di", "0x10074d64"], ["0x100bd657", "add si, ax", "0x10074d67"], ["0x100bd65a", "mov word ptr [edx], si", "0x10074d6a"], ["0x100bd65d", "test si, si", "0x10074d6d"], ["0x100bd660", "mov eax, 0", "0x10074d70"], ["0x100bd665", "jl 0xc", "0x10074d75"]]}]]]}, {"address": "0x100bd680", "recomp": "0x10074d90", "name": "WritePixelRun", "matching": 1.0, "diff": []}, {"address": "0x100bd6e0", "recomp": "0x10074df0", "name": "WritePixelPairs", "matching": 0.4594594594594595, "diff": [["@@ -0x100bd6e0,36 +0x10074df0,38 @@", [{"both": [["0x100bd6e0", "lea eax, [esp + 0x18]", "0x10074df0"]]}, {"orig": [["0x100bd6e4", "push ebx"]], "recomp": [["0x10074df4", "push esi"]]}, {"both": [["0x100bd6e5", "lea ecx, [esp + 0x14]", "0x10074df5"]]}, {"orig": [["0x100bd6e9", "push esi"]], "recomp": [["0x10074df9", "push eax"]]}, {"both": [["0x100bd6ea", "lea edx, [esp + 0x14]", "0x10074dfa"]]}, {"orig": [["0x100bd6ee", "push eax"]], "recomp": [["0x10074dfe", "push ecx"]]}, {"both": [["0x100bd6ef", "mov esi, dword ptr [esp + 0x10]", "0x10074dff"]]}, {"orig": [["0x100bd6f3", "push ecx"]], "recomp": [["0x10074e03", "push edx"]]}, {"both": [["0x100bd6f4", "shl word ptr [esp + 0x28], 1", "0x10074e04"]]}, {"orig": [["0x100bd6fa", "push edx"]], "recomp": []}, {"both": [["0x100bd6fb", "push esi", "0x10074e0a"], ["0x100bd6fc", "call ClampLine (FUNCTION)", "0x10074e0b"], ["0x100bd701", "add esp, 0x10", "0x10074e10"], ["0x100bd704", "test eax, eax", "0x10074e13"]]}, {"orig": [["0x100bd706", "je 0x52"], ["0x100bd708", "mov dx, word ptr [esp + 0x20]"]], "recomp": [["0x10074e15", "je 0x4d"], ["0x10074e17", "mov dx, word ptr [esp + 0x1c]"]]}, {"both": [["0x100bd70d", "mov ecx, dword ptr [esi + 4]", "0x10074e1c"], ["0x100bd710", "and dx, 1", "0x10074e1f"], ["0x100bd714", "add ecx, 3", "0x10074e23"]]}, {"orig": [["0x100bd717", "movsx eax, word ptr [esp + 0x18]"], ["0x100bd71c", "movsx ebx, word ptr [esp + 0x14]"]], "recomp": [["0x10074e26", "movsx eax, word ptr [esp + 0x14]"], ["0x10074e2b", "movsx esi, word ptr [esp + 0x10]"]]}, {"both": [["0x100bd721", "and ecx, 0xfffffffc", "0x10074e30"]]}, {"orig": [["0x100bd724", "sar word ptr [esp + 0x20], 1"]], "recomp": [["0x10074e33", "sar word ptr [esp + 0x1c], 1"]]}, {"both": [["0x100bd72a", "imul ecx, eax", "0x10074e39"]]}, {"orig": [["0x100bd72d", "add ecx, ebx"], ["0x100bd72f", "mov eax, dword ptr [esp + 0x10]"]], "recomp": [["0x10074e3c", "add ecx, esi"], ["0x10074e3e", "mov eax, dword ptr [esp + 0xc]"]]}, {"both": [["0x100bd733", "add eax, ecx", "0x10074e42"]]}, {"orig": [["0x100bd735", "mov bl, byte ptr [esp + 0x1c]"], ["0x100bd739", "dec word ptr [esp + 0x20]"], ["0x100bd73e", "js 0x13"], ["0x100bd740", "mov cx, word ptr [esp + 0x1c]"]], "recomp": [["0x10074e44", "mov cx, word ptr [esp + 0x18]"], ["0x10074e49", "dec word ptr [esp + 0x1c]"], ["0x10074e4e", "js 0xd"], ["0x10074e50", "mov word ptr [eax], cx"]]}, {"both": [["0x100bd745", "add eax, 2", "0x10074e53"]]}, {"orig": [["0x100bd748", "mov word ptr [eax - 2], cx"], ["0x100bd74c", "dec word ptr [esp + 0x20]"], ["0x100bd751", "jns -0x13"]], "recomp": [["0x10074e56", "dec word ptr [esp + 0x1c]"], ["0x10074e5b", "jns -0xd"]]}, {"both": [["0x100bd753", "test dx, dx", "0x10074e5d"]]}, {"orig": [], "recomp": [["0x10074e60", "je 0x2"], ["0x10074e62", "mov byte ptr [eax], cl"], ["0x10074e64", "pop esi"], ["0x10074e65", "ret "]]}]]]}, {"address": "0x100bd760", "recomp": "0x10074e70", "name": "DecodeChunks", "matching": 0.6536585365853659, "diff": [["@@ -0x100bd773,86 +0x10074e83,109 @@", [{"both": [["0x100bd773", "push esi", "0x10074e83"], ["0x100bd774", "mov byte ptr [eax], 0", "0x10074e84"], ["0x100bd777", "cmp word ptr [ecx + 6], 0", "0x10074e87"], ["0x100bd77c", "push edi", "0x10074e8c"], ["0x100bd77d", "push ebp", "0x10074e8d"], ["0x100bd77e", "jle 0xc1", "0x10074e8e"], ["0x100bd784", "mov esi, dword ptr [esp + 0x18]", "0x10074e94"], ["0x100bd788", "mov edi, dword ptr [esp + 0x1c]", "0x10074e98"], ["0x100bd78c", "mov ebx, dword ptr [esp + 0x20]", "0x10074e9c"], ["0x100bd790", "mov ebp, dword ptr [esp + 0x28]", "0x10074ea0"]]}, {"orig": [["0x100bd794", "mov ecx, ebp"], ["0x100bd796", "xor edx, edx"], ["0x100bd798", "mov dx, word ptr [ecx + 4]"]], "recomp": [["0x10074ea4", "mov edx, ebp"], ["0x10074ea6", "xor ecx, ecx"], ["0x10074ea8", "mov cx, word ptr [edx + 4]"]]}, {"both": [["0x100bd79c", "add ebp, dword ptr [ebp]", "0x10074eac"]]}, {"orig": [["0x100bd79f", "sub edx, 4"], ["0x100bd7a2", "cmp edx, 0xc"]], "recomp": [["0x10074eaf", "sub ecx, 4"], ["0x10074eb2", "cmp ecx, 0xc"]]}, {"both": [["0x100bd7a5", "ja 0x82", "0x10074eb5"], ["0x100bd7ab", "xor eax, eax", "0x10074ebb"]]}, {"orig": [["0x100bd7ad", "mov al, byte ptr [edx + 0x100bd870]"], ["0x100bd7b3", "jmp dword ptr [eax*4 + 0x100bd850]"], ["0x100bd7ba", "add ecx, 6"], ["0x100bd7bd", "push ecx"]], "recomp": [["0x10074ebd", "mov al, byte ptr [ecx + 0x10074f80]"], ["0x10074ec3", "jmp dword ptr [eax*4 + 0x10074f60]"], ["0x10074eca", "add edx, 6"], ["0x10074ecd", "push edx"]]}, {"both": [["0x100bd7be", "push esi", "0x10074ece"], ["0x100bd7bf", "call DecodeColors256 (FUNCTION)", "0x10074ecf"], ["0x100bd7c4", "mov eax, dword ptr [esp + 0x34]", "0x10074ed4"], ["0x100bd7c8", "add esp, 8", "0x10074ed8"], ["0x100bd7cb", "mov byte ptr [eax], 1", "0x10074edb"], ["0x100bd7ce", "jmp 0x5d", "0x10074ede"], ["0x100bd7d0", "push ebx", "0x10074ee0"]]}, {"orig": [["0x100bd7d1", "add ecx, 6"], ["0x100bd7d4", "push ecx"]], "recomp": [["0x10074ee1", "add edx, 6"], ["0x10074ee4", "push edx"]]}, {"both": [["0x100bd7d5", "push edi", "0x10074ee5"], ["0x100bd7d6", "push esi", "0x10074ee6"], ["0x100bd7d7", "call DecodeSS2 (FUNCTION)", "0x10074ee7"], ["0x100bd7dc", "jmp 0x4c", "0x10074eec"]]}, {"orig": [["0x100bd7de", "add ecx, 6"], ["0x100bd7e1", "push ecx"]], "recomp": [["0x10074eee", "add edx, 6"], ["0x10074ef1", "push edx"]]}, {"both": [["0x100bd7e2", "push esi", "0x10074ef2"], ["0x100bd7e3", "call DecodeColors64 (FUNCTION)", "0x10074ef3"], ["0x100bd7e8", "mov eax, dword ptr [esp + 0x34]", "0x10074ef8"], ["0x100bd7ec", "add esp, 8", "0x10074efc"], ["0x100bd7ef", "mov byte ptr [eax], 1", "0x10074eff"], ["0x100bd7f2", "jmp 0x39", "0x10074f02"], ["0x100bd7f4", "push ebx", "0x10074f04"]]}, {"orig": [["0x100bd7f5", "add ecx, 6"], ["0x100bd7f8", "push ecx"]], "recomp": [["0x10074f05", "add edx, 6"], ["0x10074f08", "push edx"]]}, {"both": [["0x100bd7f9", "push edi", "0x10074f09"], ["0x100bd7fa", "push esi", "0x10074f0a"], ["0x100bd7fb", "call DecodeLC (FUNCTION)", "0x10074f0b"], ["0x100bd800", "jmp 0x28", "0x10074f10"], ["0x100bd802", "push ebx", "0x10074f12"]]}, {"orig": [["0x100bd803", "add ecx, 6"], ["0x100bd806", "push ecx"]], "recomp": [["0x10074f13", "add edx, 6"], ["0x10074f16", "push edx"]]}, {"both": [["0x100bd807", "push edi", "0x10074f17"], ["0x100bd808", "push esi", "0x10074f18"], ["0x100bd809", "call DecodeBlack (FUNCTION)", "0x10074f19"], ["0x100bd80e", "jmp 0x1a", "0x10074f1e"], ["0x100bd810", "push ebx", "0x10074f20"]]}, {"orig": [["0x100bd811", "add ecx, 6"], ["0x100bd814", "push ecx"]], "recomp": [["0x10074f21", "add edx, 6"], ["0x10074f24", "push edx"]]}, {"both": [["0x100bd815", "push edi", "0x10074f25"], ["0x100bd816", "push esi", "0x10074f26"], ["0x100bd817", "call DecodeBrun (FUNCTION)", "0x10074f27"], ["0x100bd81c", "jmp 0xc", "0x10074f2c"], ["0x100bd81e", "push ebx", "0x10074f2e"]]}, {"orig": [["0x100bd81f", "add ecx, 6"], ["0x100bd822", "push ecx"]], "recomp": [["0x10074f2f", "add edx, 6"], ["0x10074f32", "push edx"]]}, {"both": [["0x100bd823", "push edi", "0x10074f33"], ["0x100bd824", "push esi", "0x10074f34"], ["0x100bd825", "call DecodeCopy (FUNCTION)", "0x10074f35"], ["0x100bd82a", "add esp, 0x10", "0x10074f3a"], ["0x100bd82d", "inc word ptr [esp + 0x12]", "0x10074f3d"], ["0x100bd832", "mov eax, dword ptr [esp + 0x24]", "0x10074f42"], ["0x100bd836", "mov cx, word ptr [esp + 0x12]", "0x10074f46"], ["0x100bd83b", "cmp word ptr [eax + 6], cx", "0x10074f4b"], ["0x100bd83f", "jg -0xb1", "0x10074f4f"], ["0x100bd845", "xor ax, ax", "0x10074f55"], ["0x100bd848", "pop ebp", "0x10074f58"], ["0x100bd849", "pop edi", "0x10074f59"], ["0x100bd84a", "pop esi", "0x10074f5a"], ["0x100bd84b", "pop ebx", "0x10074f5b"], ["0x100bd84c", "add esp, 4", "0x10074f5c"], ["0x100bd84f", "ret ", "0x10074f5f"]]}, {"orig": [["0x100bd850", "mov edx, 0xd0100bd7"], ["0x100bd855", "xlatb "], ["0x100bd856", "or edx, dword ptr [eax]"]], "recomp": [["0x10074f60", "retf 0x74e"], ["0x10074f63", "adc al, ah"], ["0x10074f65", "dec esi"], ["0x10074f66", "pop es"], ["0x10074f67", "adc dh, ch"], ["0x10074f69", "dec esi"], ["0x10074f6a", "pop es"], ["0x10074f6b", "adc byte ptr [edi + ecx*2], al"], ["0x10074f6e", "pop es"], ["0x10074f6f", "adc byte ptr [edx], dl"], ["0x10074f71", "dec edi"], ["0x10074f72", "pop es"], ["0x10074f73", "adc byte ptr [eax], ah"], ["0x10074f75", "dec edi"], ["0x10074f76", "pop es"], ["0x10074f77", "adc byte ptr [esi], ch"], ["0x10074f79", "dec edi"], ["0x10074f7a", "pop es"], ["0x10074f7b", "adc byte ptr [<OFFSET8>], bh"], ["0x10074f81", "pop es"], ["0x10074f82", "pop es"], ["0x10074f83", "add dword ptr [edi], eax"], ["0x10074f85", "pop es"], ["0x10074f86", "pop es"], ["0x10074f87", "add al, byte ptr [ebx]"], ["0x10074f89", "add al, 7"]]}]]]}, {"address": "0x100bd880", "recomp": "0x10074f90", "name": "DecodeColors256", "matching": 1.0, "diff": []}, {"address": "0x100bd8a0", "recomp": "0x10074fb0", "name": "DecodeColorPackets", "matching": 1.0, "diff": []}, {"address": "0x100bd8f0", "recomp": "0x10075000", "name": "DecodeColorPacket", "matching": 0.34615384615384615, "diff": [["@@ -0x100bd8f0,26 +0x10075000,26 @@", [{"orig": [["0x100bd8f0", "mov dx, word ptr [esp + 0x10]"]], "recomp": [["0x10075000", "mov eax, dword ptr [esp + 4]"]]}, {"both": [["0x100bd8f5", "push esi", "0x10075004"], ["0x100bd8f6", "movsx ecx, word ptr [esp + 0x10]", "0x10075005"], ["0x100bd8fb", "shl ecx, 2", "0x1007500a"]]}, {"orig": [["0x100bd8fe", "mov eax, dword ptr [esp + 8]"]], "recomp": []}, {"both": [["0x100bd902", "add ecx, dword ptr [eax]", "0x1007500d"]]}, {"orig": [["0x100bd904", "lea esi, [ecx + eax]"], ["0x100bd907", "mov ax, dx"], ["0x100bd90a", "dec dx"]], "recomp": [["0x1007500f", "mov si, word ptr [esp + 0x14]"], ["0x10075014", "lea edx, [ecx + eax]"], ["0x10075017", "mov ax, si"], ["0x1007501a", "dec si"]]}, {"both": [["0x100bd90c", "test ax, ax", "0x1007501c"], ["0x100bd90f", "je 0x25", "0x1007501f"]]}, {"orig": [["0x100bd911", "mov eax, dword ptr [esp + 0xc]"], ["0x100bd915", "mov cl, byte ptr [eax]"], ["0x100bd917", "add esi, 4"], ["0x100bd91a", "add eax, 3"], ["0x100bd91d", "mov byte ptr [esi - 2], cl"], ["0x100bd920", "mov cl, byte ptr [eax - 2]"], ["0x100bd923", "mov byte ptr [esi - 3], cl"], ["0x100bd926", "mov cl, byte ptr [eax - 1]"], ["0x100bd929", "mov byte ptr [esi - 4], cl"], ["0x100bd92c", "mov cx, dx"], ["0x100bd92f", "dec dx"], ["0x100bd931", "test cx, cx"]], "recomp": [["0x10075021", "mov ecx, dword ptr [esp + 0xc]"], ["0x10075025", "mov al, byte ptr [ecx]"], ["0x10075027", "add edx, 4"], ["0x1007502a", "add ecx, 3"], ["0x1007502d", "mov byte ptr [edx - 2], al"], ["0x10075030", "mov al, byte ptr [ecx - 2]"], ["0x10075033", "mov byte ptr [edx - 3], al"], ["0x10075036", "mov al, byte ptr [ecx - 1]"], ["0x10075039", "mov byte ptr [edx - 4], al"], ["0x1007503c", "mov ax, si"], ["0x1007503f", "dec si"], ["0x10075041", "test ax, ax"]]}, {"both": [["0x100bd934", "jne -0x21", "0x10075044"], ["0x100bd936", "pop esi", "0x10075046"], ["0x100bd937", "ret ", "0x10075047"]]}]]]}, {"address": "0x100bd940", "recomp": "0x10075050", "name": "DecodeColors64", "matching": 1.0, "diff": []}, {"address": "0x100bd960", "recomp": "0x10075070", "name": "DecodeBrun", "matching": 0.9701492537313433, "diff": [["@@ -0x100bd960,15 +0x10075070,15 @@", [{"orig": [], "recomp": [["0x10075070", "mov ecx, dword ptr [esp + 0xc]"]]}, {"both": [["0x100bd960", "mov eax, dword ptr [esp + 0x10]", "0x10075074"]]}, {"orig": [], "recomp": [["0x10075078", "mov dx, word ptr [eax + 8]"]]}, {"both": [["0x100bd964", "sub esp, 8", "0x1007507c"]]}, {"orig": [["0x100bd967", "mov dx, word ptr [eax + 8]"]], "recomp": []}, {"both": [["0x100bd96b", "push ebx", "0x1007507f"]]}, {"orig": [["0x100bd96c", "mov ecx, dword ptr [esp + 0x18]"]], "recomp": []}, {"both": [["0x100bd970", "push esi", "0x10075080"], ["0x100bd971", "push edi", "0x10075081"], ["0x100bd972", "push ebp", "0x10075082"], ["0x100bd973", "mov di, word ptr [eax + 0xa]", "0x10075083"], ["0x100bd977", "mov eax, dword ptr [esp + 0x1c]", "0x10075087"], ["0x100bd97b", "mov esi, dword ptr [eax + 4]", "0x1007508b"], ["0x100bd97e", "movsx eax, di", "0x1007508e"], ["0x100bd981", "add esi, 3", "0x10075091"], ["0x100bd984", "dec eax", "0x10075094"], ["0x100bd985", "and esi, 0xfffffffc", "0x10075095"]]}]]]}, {"address": "0x100bda10", "recomp": "0x10075120", "name": "DecodeLC", "matching": 0.2556390977443609, "diff": [["@@ -0x100bda10,64 +0x10075120,69 @@", [{"orig": [["0x100bda10", "mov ecx, dword ptr [esp + 0xc]"], ["0x100bda14", "sub esp, 4"], ["0x100bda17", "mov eax, dword ptr [esp + 0x14]"]], "recomp": [["0x10075120", "mov eax, dword ptr [esp + 0x10]"], ["0x10075124", "sub esp, 8"]]}, {"both": [["0x100bda1b", "push ebx", "0x10075127"]]}, {"orig": [["0x100bda1c", "mov ax, word ptr [eax + 0xa]"]], "recomp": []}, {"both": [["0x100bda20", "push esi", "0x10075128"]]}, {"orig": [["0x100bda21", "sub ax, word ptr [ecx]"]], "recomp": [["0x10075129", "mov si, word ptr [eax + 0xa]"]]}, {"both": [["0x100bda24", "push edi", "0x1007512d"]]}, {"orig": [], "recomp": [["0x1007512e", "mov eax, dword ptr [esp + 0x20]"], ["0x10075132", "push ebp"], ["0x10075133", "sub si, word ptr [eax]"], ["0x10075136", "lea edi, [eax + 4]"], ["0x10075139", "dec si"], ["0x1007513b", "mov ax, word ptr [eax + 2]"]]}, {"both": [["0x100bda25", "dec ax", "0x1007513f"]]}, {"orig": [["0x100bda27", "push ebp"]], "recomp": []}, {"both": [["0x100bda28", "mov word ptr [esp + 0x12], ax", "0x10075141"]]}, {"orig": [["0x100bda2d", "lea esi, [ecx + 4]"], ["0x100bda30", "mov ax, word ptr [ecx + 2]"], ["0x100bda34", "dec ax"], ["0x100bda36", "mov word ptr [esp + 0x10], ax"], ["0x100bda3b", "js 0x78"], ["0x100bda3d", "xor di, di"], ["0x100bda40", "mov bl, byte ptr [esi]"], ["0x100bda42", "inc esi"], ["0x100bda43", "test bl, bl"], ["0x100bda45", "je 0x62"], ["0x100bda47", "movzx ax, byte ptr [esi]"], ["0x100bda4b", "add di, ax"], ["0x100bda4e", "inc esi"], ["0x100bda4f", "mov al, byte ptr [esi]"], ["0x100bda51", "inc esi"]], "recomp": [["0x10075146", "js 0x71"], ["0x10075148", "xor bx, bx"], ["0x1007514b", "mov al, byte ptr [edi]"], ["0x1007514d", "inc edi"]]}, {"both": [["0x100bda52", "test al, al", "0x1007514e"]]}, {"orig": [["0x100bda54", "jge 0x27"], ["0x100bda56", "mov ecx, esi"]], "recomp": [["0x10075150", "je 0x5e"], ["0x10075152", "mov byte ptr [esp + 0x14], al"], ["0x10075156", "movzx ax, byte ptr [edi]"], ["0x1007515a", "add bx, ax"], ["0x1007515d", "inc edi"], ["0x1007515e", "mov al, byte ptr [edi]"], ["0x10075160", "inc edi"], ["0x10075161", "test al, al"], ["0x10075163", "jge 0x23"], ["0x10075165", "mov ecx, edi"]]}, {"both": [["0x100bda58", "mov edx, dword ptr [esp + 0x1c]", "0x10075167"], ["0x100bda5c", "neg al", "0x1007516b"], ["0x100bda5e", "movsx bp, al", "0x1007516d"]]}, {"orig": [["0x100bda62", "inc esi"]], "recomp": [["0x10075171", "inc edi"]]}, {"both": [["0x100bda63", "push ebp", "0x10075172"], ["0x100bda64", "mov al, byte ptr [ecx]", "0x10075173"]]}, {"orig": [["0x100bda66", "mov ecx, dword ptr [esp + 0x16]"]], "recomp": [["0x10075175", "mov ecx, dword ptr [esp + 0x24]"], ["0x10075179", "push eax"], ["0x1007517a", "push esi"], ["0x1007517b", "push ebx"], ["0x1007517c", "push ecx"], ["0x1007517d", "push edx"], ["0x1007517e", "call WritePixelRun (FUNCTION)"], ["0x10075183", "add esp, 0x18"], ["0x10075186", "jmp 0x1f"], ["0x10075188", "movsx bp, al"], ["0x1007518c", "mov eax, dword ptr [esp + 0x20]"], ["0x10075190", "push ebp"], ["0x10075191", "mov ecx, dword ptr [esp + 0x20]"], ["0x10075195", "push edi"], ["0x10075196", "push esi"], ["0x10075197", "push ebx"]]}, {"both": [["0x100bda6a", "push eax", "0x10075198"], ["0x100bda6b", "push ecx", "0x10075199"]]}, {"orig": [["0x100bda6c", "mov eax, dword ptr [esp + 0x24]"], ["0x100bda70", "push edi"], ["0x100bda71", "push edx"], ["0x100bda72", "push eax"], ["0x100bda73", "call WritePixelRun (FUNCTION)"], ["0x100bda78", "add esp, 0x18"], ["0x100bda7b", "jmp 0x23"], ["0x100bda7d", "mov ecx, dword ptr [esp + 0x1c]"], ["0x100bda81", "mov edx, dword ptr [esp + 0x18]"], ["0x100bda85", "movsx bp, al"], ["0x100bda89", "mov eax, dword ptr [esp + 0x12]"], ["0x100bda8d", "push ebp"], ["0x100bda8e", "push esi"], ["0x100bda8f", "push eax"], ["0x100bda90", "push edi"], ["0x100bda91", "push ecx"], ["0x100bda92", "push edx"]], "recomp": []}, {"both": [["0x100bda93", "call WritePixels (FUNCTION)", "0x1007519a"], ["0x100bda98", "movsx ecx, bp", "0x1007519f"], ["0x100bda9b", "add esp, 0x18", "0x100751a2"]]}, {"orig": [["0x100bda9e", "add esi, ecx"], ["0x100bdaa0", "add di, bp"], ["0x100bdaa3", "dec bl"], ["0x100bdaa5", "test bl, bl"], ["0x100bdaa7", "jne -0x62"]], "recomp": [["0x100751a5", "add edi, ecx"], ["0x100751a7", "add bx, bp"], ["0x100751aa", "dec byte ptr [esp + 0x14]"], ["0x100751ae", "jne -0x5a"], ["0x100751b0", "dec si"]]}, {"both": [["0x100bdaa9", "dec word ptr [esp + 0x12]", "0x100751b2"]]}, {"orig": [], "recomp": [["0x100751b7", "jns -0x71"], ["0x100751b9", "pop ebp"], ["0x100751ba", "pop edi"], ["0x100751bb", "pop esi"], ["0x100751bc", "pop ebx"], ["0x100751bd", "add esp, 8"], ["0x100751c0", "ret "]]}]]]}, {"address": "0x100bdac0", "recomp": "0x100751d0", "name": "DecodeSS2", "matching": 0.38578680203045684, "diff": [["@@ -0x100bdac0,94 +0x100751d0,103 @@", [{"orig": [["0x100bdac0", "mov edx, dword ptr [esp + 0x10]"]], "recomp": [["0x100751d0", "mov eax, dword ptr [esp + 0x10]"]]}, {"both": [["0x100bdac4", "sub esp, 8", "0x100751d4"]]}, {"orig": [["0x100bdac7", "mov ax, word ptr [edx + 8]"]], "recomp": [["0x100751d7", "mov cx, word ptr [eax + 8]"]]}, {"both": [["0x100bdacb", "push ebx", "0x100751db"]]}, {"orig": [], "recomp": [["0x100751dc", "dec cx"], ["0x100751de", "push esi"], ["0x100751df", "mov si, word ptr [eax + 0xa]"], ["0x100751e3", "push edi"], ["0x100751e4", "dec si"], ["0x100751e6", "push ebp"], ["0x100751e7", "mov word ptr [esp + 0x12], cx"], ["0x100751ec", "mov eax, dword ptr [esp + 0x24]"], ["0x100751f0", "lea edi, [eax + 2]"], ["0x100751f3", "mov ax, word ptr [eax]"]]}, {"both": [["0x100bdacc", "dec ax", "0x100751f6"]]}, {"orig": [["0x100bdace", "push esi"], ["0x100bdacf", "mov word ptr [esp + 8], ax"], ["0x100bdad4", "push edi"], ["0x100bdad5", "mov si, word ptr [edx + 0xa]"], ["0x100bdad9", "push ebp"], ["0x100bdada", "dec si"], ["0x100bdadc", "mov ecx, dword ptr [esp + 0x24]"], ["0x100bdae0", "mov bx, word ptr [ecx]"], ["0x100bdae3", "add ecx, 2"], ["0x100bdae6", "mov word ptr [esp + 0x12], bx"], ["0x100bdaeb", "mov dword ptr [esp + 0x14], ecx"], ["0x100bdaef", "mov eax, dword ptr [esp + 0x14]"], ["0x100bdaf3", "mov bx, word ptr [eax]"], ["0x100bdaf6", "add dword ptr [esp + 0x14], 2"]], "recomp": [["0x100751f8", "mov word ptr [esp + 0x16], ax"], ["0x100751fd", "test ax, ax"], ["0x10075200", "jle 0xdc"], ["0x10075206", "mov bx, word ptr [edi]"], ["0x10075209", "add edi, 2"]]}, {"both": [["0x100bdafb", "test bx, bx", "0x1007520c"]]}, {"orig": [["0x100bdafe", "jge 0x49"]], "recomp": [["0x1007520f", "jge 0x46"]]}, {"both": [["0x100bdb00", "test bh, 0x40", "0x10075211"], ["0x100bdb03", "je 0x5", "0x10075214"], ["0x100bdb05", "add si, bx", "0x10075216"]]}, {"orig": [["0x100bdb08", "jmp -0x1b"], ["0x100bdb0a", "mov eax, dword ptr [esp + 0x10]"]], "recomp": [["0x10075219", "jmp -0x15"], ["0x1007521b", "mov eax, dword ptr [esp + 0x12]"]]}, {"both": [["0x100bdb0e", "push ebx", "0x1007521f"], ["0x100bdb0f", "mov ecx, dword ptr [esp + 0x24]", "0x10075220"], ["0x100bdb13", "push esi", "0x10075224"], ["0x100bdb14", "mov edx, dword ptr [esp + 0x24]", "0x10075225"], ["0x100bdb18", "push eax", "0x10075229"], ["0x100bdb19", "push ecx", "0x1007522a"]]}, {"orig": [], "recomp": [["0x1007522b", "add edi, 2"]]}, {"both": [["0x100bdb1a", "push edx", "0x1007522e"], ["0x100bdb1b", "call WritePixel (FUNCTION)", "0x1007522f"]]}, {"orig": [["0x100bdb20", "mov ecx, dword ptr [esp + 0x28]"]], "recomp": [["0x10075234", "mov bx, word ptr [edi - 2]"]]}, {"both": [["0x100bdb24", "add esp, 0x14", "0x10075238"]]}, {"orig": [["0x100bdb27", "mov bx, word ptr [ecx]"], ["0x100bdb2a", "add dword ptr [esp + 0x14], 2"]], "recomp": []}, {"both": [["0x100bdb2f", "test bx, bx", "0x1007523b"]]}, {"orig": [["0x100bdb32", "jne 0x15"]], "recomp": [["0x1007523e", "jne 0x17"]]}, {"both": [["0x100bdb34", "dec si", "0x10075240"]]}, {"orig": [["0x100bdb36", "dec word ptr [esp + 0x12]"], ["0x100bdb3b", "cmp word ptr [esp + 0x12], 0"], ["0x100bdb41", "jle 0xae"], ["0x100bdb47", "jmp -0x5a"], ["0x100bdb49", "xor di, di"], ["0x100bdb4c", "mov ecx, dword ptr [esp + 0x14]"], ["0x100bdb50", "movzx ax, byte ptr [ecx]"], ["0x100bdb54", "add di, ax"], ["0x100bdb57", "inc dword ptr [esp + 0x14]"], ["0x100bdb5b", "mov ecx, dword ptr [esp + 0x14]"], ["0x100bdb5f", "movsx bp, byte ptr [ecx]"]], "recomp": [["0x10075242", "dec word ptr [esp + 0x16]"], ["0x10075247", "cmp word ptr [esp + 0x16], 0"], ["0x1007524d", "jg -0x49"], ["0x1007524f", "pop ebp"], ["0x10075250", "pop edi"], ["0x10075251", "pop esi"], ["0x10075252", "pop ebx"], ["0x10075253", "add esp, 8"], ["0x10075256", "ret "], ["0x10075257", "mov word ptr [esp + 0x14], 0"], ["0x1007525e", "movzx ax, byte ptr [edi]"], ["0x10075262", "movsx bp, byte ptr [edi + 1]"]]}, {"both": [["0x100bdb63", "add bp, bp", "0x10075267"]]}, {"orig": [["0x100bdb66", "inc dword ptr [esp + 0x14]"]], "recomp": [["0x1007526a", "inc edi"], ["0x1007526b", "add word ptr [esp + 0x14], ax"], ["0x10075270", "inc edi"]]}, {"both": [["0x100bdb6a", "test bp, bp", "0x10075271"]]}, {"orig": [["0x100bdb6d", "jl 0x3c"]], "recomp": [["0x10075274", "jl 0x26"]]}, {"both": [["0x100bdb6f", "mov eax, dword ptr [esp + 0x14]", "0x10075276"], ["0x100bdb73", "push ebp", "0x1007527a"], ["0x100bdb74", "mov ecx, dword ptr [esp + 0x24]", "0x1007527b"]]}, {"orig": [["0x100bdb78", "push eax"]], "recomp": [["0x1007527f", "push edi"]]}, {"both": [["0x100bdb79", "mov edx, dword ptr [esp + 0x24]", "0x10075280"], ["0x100bdb7d", "push esi", "0x10075284"]]}, {"orig": [["0x100bdb7e", "push edi"]], "recomp": [["0x10075285", "push eax"]]}, {"both": [["0x100bdb7f", "push ecx", "0x10075286"]]}, {"orig": [["0x100bdb80", "add di, bp"]], "recomp": []}, {"both": [["0x100bdb83", "push edx", "0x10075287"], ["0x100bdb84", "call WritePixels (FUNCTION)", "0x10075288"]]}, {"orig": [], "recomp": [["0x1007528d", "add word ptr [esp + 0x2c], bp"], ["0x10075292", "add esp, 0x18"]]}, {"both": [["0x100bdb89", "movsx ecx, bp", "0x10075295"]]}, {"orig": [["0x100bdb8c", "add dword ptr [esp + 0x2c], ecx"], ["0x100bdb90", "add esp, 0x18"], ["0x100bdb93", "dec bx"], ["0x100bdb95", "jne -0x4b"], ["0x100bdb97", "dec si"], ["0x100bdb99", "dec word ptr [esp + 0x12]"], ["0x100bdb9e", "cmp word ptr [esp + 0x12], 0"], ["0x100bdba4", "jle 0x4f"], ["0x100bdba6", "jmp -0xbc"], ["0x100bdbab", "mov eax, dword ptr [esp + 0x14]"]], "recomp": [["0x10075298", "add edi, ecx"], ["0x1007529a", "jmp 0x2f"], ["0x1007529c", "mov ax, word ptr [edi]"], ["0x1007529f", "add edi, 2"], ["0x100752a2", "neg bp"], ["0x100752a5", "mov cx, bp"]]}, {"both": [["0x100bdbaf", "mov edx, dword ptr [esp + 0x20]", "0x100752a8"]]}, {"orig": [["0x100bdbb3", "neg bp"], ["0x100bdbb6", "add dword ptr [esp + 0x14], 2"], ["0x100bdbbb", "mov cx, bp"]], "recomp": []}, {"both": [["0x100bdbbe", "sar cx, 1", "0x100752ac"]]}, {"orig": [["0x100bdbc2", "mov ax, word ptr [eax]"]], "recomp": []}, {"both": [["0x100bdbc5", "push ecx", "0x100752b0"]]}, {"orig": [["0x100bdbc6", "mov ecx, dword ptr [esp + 0x20]"]], "recomp": []}, {"both": [["0x100bdbca", "push eax", "0x100752b1"]]}, {"orig": [], "recomp": [["0x100752b2", "mov eax, dword ptr [esp + 0x1c]"]]}, {"both": [["0x100bdbcb", "push esi", "0x100752b6"]]}, {"orig": [["0x100bdbcc", "push edi"], ["0x100bdbcd", "add di, bp"]], "recomp": [["0x100752b7", "mov ecx, dword ptr [esp + 0x28]"], ["0x100752bb", "push eax"]]}, {"both": [["0x100bdbd0", "push edx", "0x100752bc"], ["0x100bdbd1", "push ecx", "0x100752bd"], ["0x100bdbd2", "call WritePixelPairs (FUNCTION)", "0x100752be"]]}, {"orig": [], "recomp": [["0x100752c3", "add word ptr [esp + 0x2c], bp"]]}, {"both": [["0x100bdbd7", "add esp, 0x18", "0x100752c8"]]}, {"orig": [], "recomp": [["0x100752cb", "dec bx"], ["0x100752cd", "jne -0x71"], ["0x100752cf", "dec si"], ["0x100752d1", "dec word ptr [esp + 0x16]"], ["0x100752d6", "cmp word ptr [esp + 0x16], 0"], ["0x100752dc", "jg -0xdc"], ["0x100752e2", "pop ebp"], ["0x100752e3", "pop edi"], ["0x100752e4", "pop esi"], ["0x100752e5", "pop ebx"], ["0x100752e6", "add esp, 8"], ["0x100752e9", "ret "]]}]]]}, {"address": "0x100bdc00", "recomp": "0x100752f0", "name": "DecodeBlack", "matching": 0.5961538461538461, "diff": [["@@ -0x100bdc00,52 +0x100752f0,52 @@", [{"both": [["0x100bdc00", "mov eax, dword ptr [esp + 0x10]", "0x100752f0"], ["0x100bdc04", "sub esp, 8", "0x100752f4"], ["0x100bdc07", "mov cx, word ptr [eax + 8]", "0x100752f7"], ["0x100bdc0b", "push ebx", "0x100752fb"]]}, {"orig": [["0x100bdc0c", "mov word ptr [esp + 6], cx"]], "recomp": [["0x100752fc", "mov word ptr [esp + 0xa], cx"]]}, {"both": [["0x100bdc11", "push esi", "0x10075301"]]}, {"orig": [], "recomp": [["0x10075302", "mov bx, word ptr [eax + 0xa]"]]}, {"both": [["0x100bdc12", "push edi", "0x10075306"]]}, {"orig": [], "recomp": [["0x10075307", "push ebp"]]}, {"both": [["0x100bdc13", "xor ecx, ecx", "0x10075308"]]}, {"orig": [["0x100bdc15", "mov byte ptr [esp + 0xd], cl"], ["0x100bdc19", "push ebp"], ["0x100bdc1a", "mov bp, word ptr [eax + 0xa]"], ["0x100bdc1e", "mov byte ptr [esp + 0x10], cl"], ["0x100bdc22", "dec bp"]], "recomp": [["0x1007530a", "dec bx"], ["0x1007530c", "mov byte ptr [esp + 0x15], cl"], ["0x10075310", "mov byte ptr [esp + 0x14], cl"]]}, {"both": [["0x100bdc24", "js 0x56", "0x10075314"]]}, {"orig": [["0x100bdc26", "movsx eax, word ptr [esp + 0x12]"], ["0x100bdc2b", "mov si, word ptr [esp + 0x12]"], ["0x100bdc30", "mov edi, dword ptr [esp + 0x1c]"]], "recomp": [["0x10075316", "movsx eax, word ptr [esp + 0x16]"], ["0x1007531b", "mov bp, word ptr [esp + 0x16]"], ["0x10075320", "mov esi, dword ptr [esp + 0x1c]"]]}, {"both": [["0x100bdc34", "cdq ", "0x10075324"]]}, {"orig": [["0x100bdc35", "and si, 1"]], "recomp": [["0x10075325", "and bp, 1"]]}, {"both": [["0x100bdc39", "sub eax, edx", "0x10075329"], ["0x100bdc3b", "sar eax, 1", "0x1007532b"]]}, {"orig": [["0x100bdc3e", "mov ebx, dword ptr [esp + 0x20]"], ["0x100bdc42", "mov word ptr [esp + 0x14], ax"], ["0x100bdc47", "mov eax, dword ptr [esp + 0x14]"], ["0x100bdc4b", "mov ecx, dword ptr [esp + 0x10]"]], "recomp": [["0x1007532e", "mov edi, dword ptr [esp + 0x20]"], ["0x10075332", "mov word ptr [esp + 0x12], ax"], ["0x10075337", "mov eax, dword ptr [esp + 0x12]"], ["0x1007533b", "mov ecx, dword ptr [esp + 0x14]"]]}, {"both": [["0x100bdc4f", "push eax", "0x1007533f"], ["0x100bdc50", "push ecx", "0x10075340"]]}, {"orig": [["0x100bdc51", "push ebp"]], "recomp": [["0x10075341", "push ebx"]]}, {"both": [["0x100bdc52", "push 0", "0x10075342"]]}, {"orig": [["0x100bdc54", "push ebx"]], "recomp": []}, {"both": [["0x100bdc55", "push edi", "0x10075344"]]}, {"orig": [], "recomp": [["0x10075345", "push esi"]]}, {"both": [["0x100bdc56", "call WritePixelPairs (FUNCTION)", "0x10075346"], ["0x100bdc5b", "add esp, 0x18", "0x1007534b"]]}, {"orig": [["0x100bdc5e", "test si, si"]], "recomp": [["0x1007534e", "test bp, bp"]]}, {"both": [["0x100bdc61", "je 0x15", "0x10075351"]]}, {"orig": [["0x100bdc63", "mov ax, word ptr [esp + 0x12]"]], "recomp": [["0x10075353", "mov ax, word ptr [esp + 0x16]"]]}, {"both": [["0x100bdc68", "push 0", "0x10075358"], ["0x100bdc6a", "dec ax", "0x1007535a"]]}, {"orig": [["0x100bdc6c", "push ebp"]], "recomp": [["0x1007535c", "push ebx"]]}, {"both": [["0x100bdc6d", "push eax", "0x1007535d"]]}, {"orig": [["0x100bdc6e", "push ebx"]], "recomp": []}, {"both": [["0x100bdc6f", "push edi", "0x1007535e"]]}, {"orig": [], "recomp": [["0x1007535f", "push esi"]]}, {"both": [["0x100bdc70", "call WritePixel (FUNCTION)", "0x10075360"], ["0x100bdc75", "add esp, 0x14", "0x10075365"]]}, {"orig": [["0x100bdc78", "dec bp"]], "recomp": [["0x10075368", "dec bx"]]}, {"both": [["0x100bdc7a", "jns -0x35", "0x1007536a"], ["0x100bdc7c", "pop ebp", "0x1007536c"], ["0x100bdc7d", "pop edi", "0x1007536d"], ["0x100bdc7e", "pop esi", "0x1007536e"], ["0x100bdc7f", "pop ebx", "0x1007536f"], ["0x100bdc80", "add esp, 8", "0x10075370"], ["0x100bdc83", "ret ", "0x10075373"]]}]]]}, {"address": "0x100bdc90", "recomp": "0x10075380", "name": "DecodeCopy", "matching": 1.0, "diff": []}, {"address": "0x100bdce0", "recomp": "0x100753d0", "name": "DecodeFLCFrame", "matching": 1.0, "diff": []}, {"address": "0x100bdd10", "recomp": "0x1006a010", "name": "MxTickleClient::MxTickleClient", "matching": 1.0, "diff": []}, {"address": "0x100bdd30", "recomp": "0x1006a030", "name": "MxTickleManager::~MxTickleManager", "matching": 1.0, "diff": []}, {"address": "0x100bdde0", "recomp": "0x1006a0e0", "name": "MxTickleManager::Tickle", "matching": 0.656, "diff": [["@@ -0x100bdde8,57 +0x1006a0e8,58 @@", [{"both": [["0x100bdde8", "push ebp", "0x1006a0e8"], ["0x100bdde9", "call Timer (FUNCTION)", "0x1006a0e9"], ["0x100bddee", "cmp byte ptr [eax + 0xc], 0", "0x1006a0ee"], ["0x100bddf2", "je 0x8", "0x1006a0f2"], ["0x100bddf4", "mov edi, dword ptr [MxTimer::g_lastTimeTimerStarted (DATA)]", "0x1006a0f4"], ["0x100bddfa", "jmp 0x9", "0x1006a0fa"], ["0x100bddfc", "mov edi, dword ptr [MxTimer::g_lastTimeCalculated (DATA)]", "0x1006a0fc"], ["0x100bde02", "sub edi, dword ptr [eax + 8]", "0x1006a102"], ["0x100bde05", "mov ecx, dword ptr [esi + 0xc]", "0x1006a105"], ["0x100bde08", "mov eax, dword ptr [ecx]", "0x1006a108"]]}, {"orig": [["0x100bde0a", "mov ebp, eax"]], "recomp": [["0x1006a10a", "mov ebx, eax"]]}, {"both": [["0x100bde0c", "cmp eax, ecx", "0x1006a10c"]]}, {"orig": [["0x100bde0e", "je 0x66"], ["0x100bde10", "mov ebx, dword ptr [ebp + 8]"], ["0x100bde13", "test byte ptr [ebx + 0xc], 1"], ["0x100bde17", "je 0x34"], ["0x100bde19", "lea ecx, [ebp + 4]"], ["0x100bde1c", "mov dword ptr [esp + 0x10], ebp"], ["0x100bde20", "mov eax, ebp"], ["0x100bde22", "mov ebp, dword ptr [ebp]"]], "recomp": [["0x1006a10e", "je 0x65"], ["0x1006a110", "mov ebp, dword ptr [ebx + 8]"], ["0x1006a113", "test byte ptr [ebp + 0xc], 1"], ["0x1006a117", "je 0x33"], ["0x1006a119", "lea ecx, [ebx + 4]"], ["0x1006a11c", "mov dword ptr [esp + 0x10], ebx"], ["0x1006a120", "mov eax, ebx"], ["0x1006a122", "mov ebx, dword ptr [ebx]"]]}, {"both": [["0x100bde25", "mov edx, dword ptr [ecx]", "0x1006a124"], ["0x100bde27", "mov eax, dword ptr [eax]", "0x1006a126"], ["0x100bde29", "mov dword ptr [edx], eax", "0x1006a128"], ["0x100bde2b", "mov edx, dword ptr [ecx]", "0x1006a12a"], ["0x100bde2d", "mov eax, dword ptr [esp + 0x10]", "0x1006a12c"], ["0x100bde31", "push eax", "0x1006a130"], ["0x100bde32", "mov ecx, dword ptr [eax]", "0x1006a131"], ["0x100bde34", "mov dword ptr [ecx + 4], edx", "0x1006a133"], ["0x100bde37", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006a136"], ["0x100bde3c", "add esp, 4", "0x1006a13b"], ["0x100bde3f", "dec dword ptr [esi + 0x10]", "0x1006a13e"]]}, {"orig": [["0x100bde42", "push ebx"]], "recomp": [["0x1006a141", "push ebp"]]}, {"both": [["0x100bde43", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006a142"], ["0x100bde48", "add esp, 4", "0x1006a147"], ["0x100bde4b", "jmp 0x24", "0x1006a14a"]]}, {"orig": [["0x100bde4d", "mov ebp, dword ptr [ebp]"], ["0x100bde50", "cmp dword ptr [ebx + 8], edi"]], "recomp": [["0x1006a14c", "mov ebx, dword ptr [ebx]"], ["0x1006a14e", "cmp dword ptr [ebp + 8], edi"]]}, {"both": [["0x100bde53", "jle 0x8", "0x1006a151"]]}, {"orig": [["0x100bde55", "mov eax, dword ptr [ebx + 4]"]], "recomp": [["0x1006a153", "mov eax, dword ptr [ebp + 4]"]]}, {"both": [["0x100bde58", "neg eax", "0x1006a156"]]}, {"orig": [["0x100bde5a", "mov dword ptr [ebx + 8], eax"], ["0x100bde5d", "mov eax, dword ptr [ebx + 4]"], ["0x100bde60", "add eax, dword ptr [ebx + 8]"]], "recomp": [["0x1006a158", "mov dword ptr [ebp + 8], eax"], ["0x1006a15b", "mov eax, dword ptr [ebp + 4]"], ["0x1006a15e", "add eax, dword ptr [ebp + 8]"]]}, {"both": [["0x100bde63", "cmp eax, edi", "0x1006a161"]]}, {"orig": [["0x100bde65", "jge 0xa"], ["0x100bde67", "mov ecx, dword ptr [ebx]"]], "recomp": [["0x1006a163", "jge 0xb"], ["0x1006a165", "mov ecx, dword ptr [ebp]"]]}, {"both": [["0x100bde69", "mov eax, dword ptr [ecx]", "0x1006a168"], ["0x100bde6b", "call dword ptr [eax + 8]", "0x1006a16a"]]}, {"orig": [["0x100bde6e", "mov dword ptr [ebx + 8], edi"], ["0x100bde71", "cmp dword ptr [esi + 0xc], ebp"], ["0x100bde74", "jne -0x66"]], "recomp": [["0x1006a16d", "mov dword ptr [ebp + 8], edi"], ["0x1006a170", "cmp dword ptr [esi + 0xc], ebx"], ["0x1006a173", "jne -0x65"]]}, {"both": [["0x100bde76", "xor eax, eax", "0x1006a175"], ["0x100bde78", "pop ebp", "0x1006a177"], ["0x100bde79", "pop edi", "0x1006a178"], ["0x100bde7a", "pop esi", "0x1006a179"], ["0x100bde7b", "pop ebx", "0x1006a17a"], ["0x100bde7c", "add esp, 8", "0x1006a17b"]]}, {"orig": [], "recomp": [["0x1006a17e", "ret "]]}]]]}, {"address": "0x100bde80", "recomp": "0x1006a180", "name": "MxTickleManager::RegisterClient", "matching": 1.0, "diff": []}, {"address": "0x100bdf60", "recomp": "0x1006a260", "name": "MxTickleManager::UnregisterClient", "matching": 1.0, "effective": true, "diff": [["@@ -0x100bdf60,21 +0x1006a260,21 @@", [{"both": [["0x100bdf60", "sub esp, 4", "0x1006a260"], ["0x100bdf63", "mov edx, dword ptr [ecx + 0xc]", "0x1006a263"], ["0x100bdf66", "mov eax, dword ptr [edx]", "0x1006a266"], ["0x100bdf68", "mov dword ptr [esp], eax", "0x1006a268"]]}, {"orig": [["0x100bdf6c", "cmp edx, eax"]], "recomp": [["0x1006a26c", "cmp eax, edx"]]}, {"both": [["0x100bdf6e", "je 0x27", "0x1006a26e"], ["0x100bdf70", "mov ecx, dword ptr [esp + 8]", "0x1006a270"], ["0x100bdf74", "mov eax, dword ptr [esp]", "0x1006a274"], ["0x100bdf78", "mov eax, dword ptr [eax + 8]", "0x1006a278"], ["0x100bdf7b", "cmp dword ptr [eax], ecx", "0x1006a27b"], ["0x100bdf7d", "je 0x14", "0x1006a27d"], ["0x100bdf7f", "mov eax, dword ptr [esp]", "0x1006a27f"], ["0x100bdf83", "mov eax, dword ptr [eax]", "0x1006a283"], ["0x100bdf85", "mov dword ptr [esp], eax", "0x1006a285"]]}, {"orig": [["0x100bdf89", "cmp edx, eax"]], "recomp": [["0x1006a289", "cmp eax, edx"]]}, {"both": [["0x100bdf8b", "jne -0x19", "0x1006a28b"], ["0x100bdf8d", "add esp, 4", "0x1006a28d"], ["0x100bdf90", "ret 4", "0x1006a290"], ["0x100bdf93", "or byte ptr [eax + 0xc], 1", "0x1006a293"], ["0x100bdf97", "add esp, 4", "0x1006a297"], ["0x100bdf9a", "ret 4", "0x1006a29a"]]}]]]}, {"address": "0x100bdfa0", "recomp": "0x1006a2a0", "name": "MxTickleManager::SetClientTickleInterval", "matching": 0.3103448275862069, "diff": [["@@ -0x100bdfa0,30 +0x1006a2a0,28 @@", [{"both": [["0x100bdfa0", "sub esp, 4", "0x1006a2a0"]]}, {"orig": [], "recomp": [["0x1006a2a3", "mov edx, dword ptr [ecx + 0xc]"]]}, {"both": [["0x100bdfa3", "push esi", "0x1006a2a6"]]}, {"orig": [["0x100bdfa4", "push edi"], ["0x100bdfa5", "mov esi, dword ptr [ecx + 0xc]"], ["0x100bdfa8", "mov eax, dword ptr [esi]"], ["0x100bdfaa", "mov dword ptr [esp + 8], eax"], ["0x100bdfae", "cmp esi, eax"], ["0x100bdfb0", "je 0x37"], ["0x100bdfb2", "mov edx, dword ptr [esp + 0x10]"], ["0x100bdfb6", "mov edi, 1"], ["0x100bdfbb", "mov eax, dword ptr [esp + 8]"], ["0x100bdfbf", "mov ecx, dword ptr [eax + 8]"], ["0x100bdfc2", "cmp dword ptr [ecx], edx"]], "recomp": [["0x1006a2a7", "mov eax, dword ptr [edx]"], ["0x1006a2a9", "mov dword ptr [esp + 4], eax"], ["0x1006a2ad", "cmp eax, edx"], ["0x1006a2af", "je 0x36"], ["0x1006a2b1", "mov ecx, dword ptr [esp + 0xc]"], ["0x1006a2b5", "mov esi, 1"], ["0x1006a2ba", "mov eax, dword ptr [esp + 4]"], ["0x1006a2be", "mov eax, dword ptr [eax + 8]"], ["0x1006a2c1", "cmp dword ptr [eax], ecx"]]}, {"both": [["0x100bdfc4", "jne 0x6", "0x1006a2c3"]]}, {"orig": [["0x100bdfc6", "test word ptr [ecx + 0xc], di"], ["0x100bdfca", "je 0x16"], ["0x100bdfcc", "mov eax, dword ptr [esp + 8]"], ["0x100bdfd0", "mov ecx, dword ptr [eax]"], ["0x100bdfd2", "mov dword ptr [esp + 8], ecx"], ["0x100bdfd6", "cmp esi, ecx"]], "recomp": [["0x1006a2c5", "test word ptr [eax + 0xc], si"], ["0x1006a2c9", "je 0x15"], ["0x1006a2cb", "mov eax, dword ptr [esp + 4]"], ["0x1006a2cf", "mov eax, dword ptr [eax]"], ["0x1006a2d1", "mov dword ptr [esp + 4], eax"], ["0x1006a2d5", "cmp eax, edx"]]}, {"both": [["0x100bdfd8", "jne -0x1f", "0x1006a2d7"]]}, {"orig": [["0x100bdfda", "pop edi"]], "recomp": []}, {"both": [["0x100bdfdb", "pop esi", "0x1006a2d9"], ["0x100bdfdc", "add esp, 4", "0x1006a2da"], ["0x100bdfdf", "ret 8", "0x1006a2dd"]]}, {"orig": [["0x100bdfe2", "mov eax, dword ptr [esp + 0x14]"], ["0x100bdfe6", "mov dword ptr [ecx + 4], eax"], ["0x100bdfe9", "pop edi"]], "recomp": [["0x1006a2e0", "mov ecx, dword ptr [esp + 0x10]"], ["0x1006a2e4", "mov dword ptr [eax + 4], ecx"]]}, {"both": [["0x100bdfea", "pop esi", "0x1006a2e7"], ["0x100bdfeb", "add esp, 4", "0x1006a2e8"]]}, {"orig": [], "recomp": [["0x1006a2eb", "ret 8"]]}]]]}, {"address": "0x100be000", "recomp": "0x1006a2f0", "name": "MxTickleManager::GetClientTickleInterval", "matching": 1.0, "effective": true, "diff": [["@@ -0x100be000,28 +0x1006a2f0,28 @@", [{"both": [["0x100be000", "sub esp, 4", "0x1006a2f0"], ["0x100be003", "mov edx, dword ptr [ecx + 0xc]", "0x1006a2f3"], ["0x100be006", "push esi", "0x1006a2f6"], ["0x100be007", "mov eax, dword ptr [edx]", "0x1006a2f7"], ["0x100be009", "mov dword ptr [esp + 4], eax", "0x1006a2f9"]]}, {"orig": [["0x100be00d", "cmp eax, edx"]], "recomp": [["0x1006a2fd", "cmp edx, eax"]]}, {"both": [["0x100be00f", "je 0x28", "0x1006a2ff"], ["0x100be011", "mov ecx, dword ptr [esp + 0xc]", "0x1006a301"], ["0x100be015", "mov esi, 1", "0x1006a305"], ["0x100be01a", "mov eax, dword ptr [esp + 4]", "0x1006a30a"], ["0x100be01e", "mov eax, dword ptr [eax + 8]", "0x1006a30e"], ["0x100be021", "cmp dword ptr [eax], ecx", "0x1006a311"], ["0x100be023", "jne 0x6", "0x1006a313"], ["0x100be025", "test word ptr [eax + 0xc], si", "0x1006a315"], ["0x100be029", "je 0x1a", "0x1006a319"], ["0x100be02b", "mov eax, dword ptr [esp + 4]", "0x1006a31b"], ["0x100be02f", "mov eax, dword ptr [eax]", "0x1006a31f"], ["0x100be031", "mov dword ptr [esp + 4], eax", "0x1006a321"]]}, {"orig": [["0x100be035", "cmp eax, edx"]], "recomp": [["0x1006a325", "cmp edx, eax"]]}, {"both": [["0x100be037", "jne -0x1f", "0x1006a327"], ["0x100be039", "mov eax, 0x80000000", "0x1006a329"], ["0x100be03e", "pop esi", "0x1006a32e"], ["0x100be03f", "add esp, 4", "0x1006a32f"], ["0x100be042", "ret 4", "0x1006a332"], ["0x100be045", "mov eax, dword ptr [eax + 4]", "0x1006a335"], ["0x100be048", "pop esi", "0x1006a338"], ["0x100be049", "add esp, 4", "0x1006a339"], ["0x100be04c", "ret 4", "0x1006a33c"]]}]]]}, {"address": "0x100be050", "recomp": "0x10069e70", "name": "MxDSChunk::MxDSChunk", "matching": 1.0, "diff": []}, {"address": "0x100be0c0", "recomp": "0x10069ee0", "name": "MxDSChunk::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100be0d0", "recomp": "0x10069ef0", "name": "MxDSChunk::IsA", "matching": 1.0, "diff": []}, {"address": "0x100be150", "recomp": "0x10069f70", "name": "MxDSChunk::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100be170", "recomp": "0x10069f90", "name": "MxDSChunk::~MxDSChunk", "matching": 1.0, "diff": []}, {"address": "0x100be1e0", "recomp": "0x1006a000", "name": "MxDSChunk::GetHeaderSize", "matching": 1.0, "diff": []}, {"address": "0x100be1f0", "recomp": "0x1006ad30", "name": "MxVideoManager::MxVideoManager", "matching": 1.0, "diff": []}, {"address": "0x100be270", "recomp": "0x1006add0", "name": "MxVideoManager::UpdateView", "matching": 1.0, "diff": []}, {"address": "0x100be280", "recomp": "0x1006adb0", "name": "MxVideoManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100be2a0", "recomp": "0x1006ade0", "name": "MxVideoManager::~MxVideoManager", "matching": 1.0, "diff": []}, {"address": "0x100be320", "recomp": "0x1006ae60", "name": "MxVideoManager::Init", "matching": 1.0, "diff": []}, {"address": "0x100be340", "recomp": "0x1006ae80", "name": "MxVideoManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100be3e0", "recomp": "0x1006af20", "name": "MxVideoManager::UpdateRegion", "matching": 0.5454545454545454, "diff": [["@@ -0x100be3e0,49 +0x1006af20,50 @@", [{"both": [["0x100be3e0", "push ebx", "0x1006af20"], ["0x100be3e1", "push esi", "0x1006af21"], ["0x100be3e2", "push edi", "0x1006af22"], ["0x100be3e3", "mov esi, ecx", "0x1006af23"]]}, {"orig": [["0x100be3e5", "mov ecx, dword ptr [ecx + 0x5c]"]], "recomp": [["0x1006af25", "push ebp"], ["0x1006af26", "mov ecx, dword ptr [esi + 0x5c]"]]}, {"both": [["0x100be3e8", "mov eax, dword ptr [ecx]", "0x1006af29"], ["0x100be3ea", "call dword ptr [eax + 0x20]", "0x1006af2b"], ["0x100be3ed", "test al, al", "0x1006af2e"], ["0x100be3ef", "jne 0x4a", "0x1006af30"], ["0x100be3f1", "mov ecx, dword ptr [esi + 0x5c]", "0x1006af32"], ["0x100be3f4", "mov edi, dword ptr [esi + 0x2c]", "0x1006af35"], ["0x100be3f7", "mov eax, dword ptr [ecx + 0xc]", "0x1006af38"], ["0x100be3fa", "add ecx, 0xc", "0x1006af3b"], ["0x100be3fd", "cmp edi, eax", "0x1006af3e"], ["0x100be3ff", "jg 0x2", "0x1006af40"], ["0x100be401", "mov edi, eax", "0x1006af42"]]}, {"orig": [["0x100be403", "mov edx, dword ptr [ecx + 4]"]], "recomp": [["0x1006af44", "mov ebx, dword ptr [ecx + 4]"]]}, {"both": [["0x100be406", "mov eax, dword ptr [esi + 0x30]", "0x1006af47"]]}, {"orig": [], "recomp": [["0x1006af4a", "cmp ebx, eax"], ["0x1006af4c", "jg 0x2"], ["0x1006af4e", "mov ebx, eax"], ["0x1006af50", "mov edx, dword ptr [ecx + 8]"], ["0x1006af53", "mov eax, dword ptr [esi + 0x34]"]]}, {"both": [["0x100be409", "cmp edx, eax", "0x1006af56"]]}, {"orig": [["0x100be40b", "jg 0x2"]], "recomp": [["0x1006af58", "jl 0x2"]]}, {"both": [["0x100be40d", "mov edx, eax", "0x1006af5a"]]}, {"orig": [["0x100be40f", "mov eax, dword ptr [ecx + 8]"], ["0x100be412", "mov ebx, dword ptr [esi + 0x34]"], ["0x100be415", "cmp eax, ebx"]], "recomp": [["0x1006af5c", "mov ebp, dword ptr [ecx + 0xc]"], ["0x1006af5f", "mov eax, dword ptr [esi + 0x38]"], ["0x1006af62", "cmp ebp, eax"]]}, {"both": [["0x100be417", "jl 0x2", "0x1006af64"]]}, {"orig": [["0x100be419", "mov eax, ebx"], ["0x100be41b", "mov ebx, dword ptr [esi + 0x38]"], ["0x100be41e", "mov ecx, dword ptr [ecx + 0xc]"], ["0x100be421", "cmp ebx, ecx"], ["0x100be423", "jl 0x2"], ["0x100be425", "mov ebx, ecx"]], "recomp": [["0x1006af66", "mov ebp, eax"]]}, {"both": [["0x100be427", "mov ecx, dword ptr [esi + 0x58]", "0x1006af68"]]}, {"orig": [["0x100be42a", "sub ebx, edx"], ["0x100be42c", "inc ebx"], ["0x100be42d", "sub eax, edi"]], "recomp": [["0x1006af6b", "sub ebp, ebx"], ["0x1006af6d", "inc ebp"], ["0x1006af6e", "sub edx, edi"], ["0x1006af70", "push ebp"], ["0x1006af71", "inc edx"], ["0x1006af72", "push edx"], ["0x1006af73", "mov eax, dword ptr [ecx]"]]}, {"both": [["0x100be42f", "push ebx", "0x1006af75"]]}, {"orig": [["0x100be430", "inc eax"], ["0x100be431", "push eax"], ["0x100be432", "mov ebx, dword ptr [ecx]"], ["0x100be434", "push edx"]], "recomp": []}, {"both": [["0x100be435", "push edi", "0x1006af76"]]}, {"orig": [["0x100be436", "push edx"]], "recomp": [["0x1006af77", "push ebx"]]}, {"both": [["0x100be437", "push edi", "0x1006af78"]]}, {"orig": [["0x100be438", "call dword ptr [ebx + 0x38]"]], "recomp": [["0x1006af79", "call dword ptr [eax + 0x38]"], ["0x1006af7c", "pop ebp"]]}, {"both": [["0x100be43b", "pop edi", "0x1006af7d"], ["0x100be43c", "pop esi", "0x1006af7e"], ["0x100be43d", "pop ebx", "0x1006af7f"], ["0x100be43e", "ret ", "0x1006af80"]]}, {"orig": [["0x100be43f", "int3 "]], "recomp": []}]]]}, {"address": "0x100be440", "recomp": "0x1006af90", "name": "MxVideoManager::SortPresenterList", "matching": 1.0, "diff": []}, {"address": "0x100be600", "recomp": "0x1006b150", "name": "MxVideoManager::VTable0x28", "matching": 1.0, "effective": true, "diff": [["@@ -0x100be607,163 +0x1006b157,163 @@", [{"both": [["0x100be607", "mov ebp, esp", "0x1006b157"], ["0x100be609", "push -1", "0x1006b159"], ["0x100be60b", "push <OFFSET1>", "0x1006b15b"], ["0x100be610", "push eax", "0x1006b160"], ["0x100be611", "mov dword ptr fs:[0], esp", "0x1006b161"], ["0x100be618", "sub esp, 8", "0x1006b168"], ["0x100be61b", "mov byte ptr [ebp - 0xd], 0", "0x1006b16b"], ["0x100be61f", "push ebx", "0x1006b16f"], ["0x100be620", "push esi", "0x1006b170"], ["0x100be621", "push edi", "0x1006b171"]]}, {"orig": [["0x100be622", "mov esi, ecx"], ["0x100be624", "mov ebx, 0xffffffff"], ["0x100be629", "mov byte ptr [esi + 0x60], 0"]], "recomp": [["0x1006b172", "mov ebx, ecx"], ["0x1006b174", "mov esi, 0xffffffff"], ["0x1006b179", "mov byte ptr [ebx + 0x60], 0"]]}, {"both": [["0x100be62d", "call MxMediaManager::InitPresenters (FUNCTION)", "0x1006b17d"], ["0x100be632", "test eax, eax", "0x1006b182"], ["0x100be634", "jne 0x18b", "0x1006b184"]]}, {"orig": [["0x100be63a", "lea ecx, [esi + 0x10]"]], "recomp": [["0x1006b18a", "lea ecx, [ebx + 0x10]"]]}, {"both": [["0x100be63d", "call MxCriticalSection::Enter (FUNCTION)", "0x1006b18d"], ["0x100be642", "mov edi, dword ptr [ebp + 8]", "0x1006b192"]]}, {"orig": [["0x100be645", "lea ecx, [esi + 0x2c]"]], "recomp": [["0x1006b195", "lea ecx, [ebx + 0x2c]"]]}, {"both": [["0x100be648", "mov byte ptr [ebp - 0xd], 1", "0x1006b198"], ["0x100be64c", "push edi", "0x1006b19c"], ["0x100be64d", "call MxVideoParam::operator= (FUNCTION)", "0x1006b19d"], ["0x100be652", "push 0x1c", "0x1006b1a2"], ["0x100be654", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006b1a4"], ["0x100be659", "add esp, 4", "0x1006b1a9"], ["0x100be65c", "mov dword ptr [ebp - 0x14], eax", "0x1006b1ac"], ["0x100be65f", "mov dword ptr [ebp - 4], 0", "0x1006b1af"], ["0x100be666", "test eax, eax", "0x1006b1b6"], ["0x100be668", "je 0x9", "0x1006b1b8"], ["0x100be66a", "mov ecx, eax", "0x1006b1ba"], ["0x100be66c", "call MxRegion::MxRegion (FUNCTION)", "0x1006b1bc"], ["0x100be671", "jmp 0x2", "0x1006b1c1"], ["0x100be673", "xor eax, eax", "0x1006b1c3"], ["0x100be675", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006b1c5"]]}, {"orig": [["0x100be67c", "mov dword ptr [esi + 0x5c], eax"]], "recomp": [["0x1006b1cc", "mov dword ptr [ebx + 0x5c], eax"]]}, {"both": [["0x100be67f", "test eax, eax", "0x1006b1cf"], ["0x100be681", "je 0x13e", "0x1006b1d1"], ["0x100be687", "mov eax, dword ptr [ebp + 0xc]", "0x1006b1d7"], ["0x100be68a", "mov ecx, dword ptr [ebp + 0x10]", "0x1006b1da"]]}, {"orig": [["0x100be68d", "mov dword ptr [esi + 0x50], eax"], ["0x100be690", "mov dword ptr [esi + 0x54], ecx"]], "recomp": [["0x1006b1dd", "mov dword ptr [ebx + 0x50], eax"], ["0x1006b1e0", "mov dword ptr [ebx + 0x54], ecx"]]}, {"both": [["0x100be693", "mov ecx, dword ptr [edi + 0x10]", "0x1006b1e3"], ["0x100be696", "test ecx, ecx", "0x1006b1e6"], ["0x100be698", "jne 0x49", "0x1006b1e8"], ["0x100be69a", "push 0x414", "0x1006b1ea"], ["0x100be69f", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006b1ef"], ["0x100be6a4", "mov dword ptr [ebp - 0x14], eax", "0x1006b1f4"], ["0x100be6a7", "add esp, 4", "0x1006b1f7"], ["0x100be6aa", "mov dword ptr [ebp - 4], 1", "0x1006b1fa"], ["0x100be6b1", "mov edi, eax", "0x1006b201"], ["0x100be6b3", "mov eax, 0", "0x1006b203"], ["0x100be6b8", "test edi, edi", "0x1006b208"], ["0x100be6ba", "je 0x7", "0x1006b20a"], ["0x100be6bc", "mov ecx, edi", "0x1006b20c"], ["0x100be6be", "call MxPalette::MxPalette (FUNCTION)", "0x1006b20e"], ["0x100be6c3", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006b213"]]}, {"orig": [["0x100be6ca", "mov dword ptr [esi + 0x3c], eax"]], "recomp": [["0x1006b21a", "mov dword ptr [ebx + 0x3c], eax"]]}, {"both": [["0x100be6cd", "test eax, eax", "0x1006b21d"], ["0x100be6cf", "jne 0x22", "0x1006b21f"], ["0x100be6d1", "jmp 0xef", "0x1006b221"], ["0x100be6d6", "mov eax, dword ptr [ebp - 0x14]", "0x1006b226"], ["0x100be6d9", "push eax", "0x1006b229"], ["0x100be6da", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006b22a"], ["0x100be6df", "add esp, 4", "0x1006b22f"], ["0x100be6e2", "ret ", "0x1006b232"], ["0x100be6e3", "call MxPalette::Clone (FUNCTION)", "0x1006b233"]]}, {"orig": [["0x100be6e8", "mov dword ptr [esi + 0x3c], eax"]], "recomp": [["0x1006b238", "mov dword ptr [ebx + 0x3c], eax"]]}, {"both": [["0x100be6eb", "test eax, eax", "0x1006b23b"], ["0x100be6ed", "je 0xd2", "0x1006b23d"], ["0x100be6f3", "push 0xac", "0x1006b243"], ["0x100be6f8", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006b248"], ["0x100be6fd", "mov dword ptr [ebp - 0x14], eax", "0x1006b24d"], ["0x100be700", "add esp, 4", "0x1006b250"], ["0x100be703", "mov edi, eax", "0x1006b253"], ["0x100be705", "mov ecx, 0", "0x1006b255"], ["0x100be70a", "mov dword ptr [ebp - 4], 2", "0x1006b25a"], ["0x100be711", "test edi, edi", "0x1006b261"], ["0x100be713", "je 0x9", "0x1006b263"], ["0x100be715", "mov ecx, edi", "0x1006b265"], ["0x100be717", "call MxDisplaySurface::MxDisplaySurface (FUNCTION)", "0x1006b267"], ["0x100be71c", "mov ecx, eax", "0x1006b26c"], ["0x100be71e", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006b26e"]]}, {"orig": [["0x100be725", "mov dword ptr [esi + 0x58], ecx"]], "recomp": [["0x1006b275", "mov dword ptr [ebx + 0x58], ecx"]]}, {"both": [["0x100be728", "test ecx, ecx", "0x1006b278"], ["0x100be72a", "je 0x95", "0x1006b27a"], ["0x100be730", "mov eax, dword ptr [ebp + 0x1c]", "0x1006b280"], ["0x100be733", "mov edx, dword ptr [ebp + 0x18]", "0x1006b283"], ["0x100be736", "push eax", "0x1006b286"], ["0x100be737", "mov edi, dword ptr [ebp + 0x14]", "0x1006b287"], ["0x100be73a", "push edx", "0x1006b28a"]]}, {"orig": [["0x100be73b", "lea eax, [esi + 0x2c]"]], "recomp": [["0x1006b28b", "lea eax, [ebx + 0x2c]"]]}, {"both": [["0x100be73e", "push edi", "0x1006b28e"], ["0x100be73f", "push eax", "0x1006b28f"], ["0x100be740", "mov edi, dword ptr [ecx]", "0x1006b290"], ["0x100be742", "call dword ptr [edi + 0x14]", "0x1006b292"], ["0x100be745", "test eax, eax", "0x1006b295"], ["0x100be747", "jne 0x7c", "0x1006b297"]]}, {"orig": [["0x100be749", "mov ecx, dword ptr [esi + 0x58]"], ["0x100be74c", "mov eax, dword ptr [esi + 0x3c]"]], "recomp": [["0x1006b299", "mov ecx, dword ptr [ebx + 0x58]"], ["0x1006b29c", "mov eax, dword ptr [ebx + 0x3c]"]]}, {"both": [["0x100be74f", "push eax", "0x1006b29f"], ["0x100be750", "mov edi, dword ptr [ecx]", "0x1006b2a0"], ["0x100be752", "call dword ptr [edi + 0x20]", "0x1006b2a2"], ["0x100be755", "cmp byte ptr [ebp + 0x24], 0", "0x1006b2a5"], ["0x100be759", "je 0x57", "0x1006b2a9"], ["0x100be75b", "push 0x20", "0x1006b2ab"], ["0x100be75d", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006b2ad"], ["0x100be762", "mov dword ptr [ebp - 0x14], eax", "0x1006b2b2"], ["0x100be765", "add esp, 4", "0x1006b2b5"], ["0x100be768", "mov edi, eax", "0x1006b2b8"], ["0x100be76a", "mov ecx, 0", "0x1006b2ba"], ["0x100be76f", "mov dword ptr [ebp - 4], 3", "0x1006b2bf"], ["0x100be776", "test edi, edi", "0x1006b2c6"], ["0x100be778", "je 0xe", "0x1006b2c8"], ["0x100be77a", "mov eax, dword ptr [ebp + 0x20]", "0x1006b2ca"], ["0x100be77d", "mov ecx, edi", "0x1006b2cd"], ["0x100be77f", "push eax", "0x1006b2cf"]]}, {"orig": [["0x100be780", "push esi"]], "recomp": [["0x1006b2d0", "push ebx"]]}, {"both": [["0x100be781", "call MxTickleThread::MxTickleThread (FUNCTION)", "0x1006b2d1"], ["0x100be786", "mov ecx, eax", "0x1006b2d6"], ["0x100be788", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006b2d8"]]}, {"orig": [["0x100be78f", "mov dword ptr [esi + 0xc], ecx"]], "recomp": [["0x1006b2df", "mov dword ptr [ebx + 0xc], ecx"]]}, {"both": [["0x100be792", "test ecx, ecx", "0x1006b2e2"], ["0x100be794", "je 0x2f", "0x1006b2e4"], ["0x100be796", "push 0", "0x1006b2e6"], ["0x100be798", "push 0", "0x1006b2e8"], ["0x100be79a", "call MxThread::Start (FUNCTION)", "0x1006b2ea"], ["0x100be79f", "test eax, eax", "0x1006b2ef"], ["0x100be7a1", "je 0x20", "0x1006b2f1"], ["0x100be7a3", "jmp 0x20", "0x1006b2f3"], ["0x100be7a5", "mov eax, dword ptr [ebp - 0x14]", "0x1006b2f5"], ["0x100be7a8", "push eax", "0x1006b2f8"], ["0x100be7a9", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006b2f9"], ["0x100be7ae", "add esp, 4", "0x1006b2fe"], ["0x100be7b1", "ret ", "0x1006b301"], ["0x100be7b2", "call TickleManager (FUNCTION)", "0x1006b302"]]}, {"orig": [["0x100be7b7", "mov ebx, dword ptr [eax]"]], "recomp": [["0x1006b307", "mov esi, dword ptr [eax]"]]}, {"both": [["0x100be7b9", "mov ecx, eax", "0x1006b309"], ["0x100be7bb", "mov eax, dword ptr [ebp + 0x20]", "0x1006b30b"], ["0x100be7be", "push eax", "0x1006b30e"]]}, {"orig": [["0x100be7bf", "push esi"], ["0x100be7c0", "call dword ptr [ebx + 0x14]"], ["0x100be7c3", "xor ebx, ebx"], ["0x100be7c5", "test ebx, ebx"]], "recomp": [["0x1006b30f", "push ebx"], ["0x1006b310", "call dword ptr [esi + 0x14]"], ["0x1006b313", "xor esi, esi"], ["0x1006b315", "test esi, esi"]]}, {"both": [["0x100be7c7", "je 0x7", "0x1006b317"]]}, {"orig": [["0x100be7c9", "mov eax, dword ptr [esi]"], ["0x100be7cb", "mov ecx, esi"]], "recomp": [["0x1006b319", "mov eax, dword ptr [ebx]"], ["0x1006b31b", "mov ecx, ebx"]]}, {"both": [["0x100be7cd", "call dword ptr [eax + 0x18]", "0x1006b31d"], ["0x100be7d0", "cmp byte ptr [ebp - 0xd], 0", "0x1006b320"], ["0x100be7d4", "je 0x8", "0x1006b324"]]}, {"orig": [["0x100be7d6", "lea ecx, [esi + 0x10]"]], "recomp": [["0x1006b326", "lea ecx, [ebx + 0x10]"]]}, {"both": [["0x100be7d9", "call MxCriticalSection::Leave (FUNCTION)", "0x1006b329"]]}, {"orig": [["0x100be7de", "mov eax, ebx"]], "recomp": [["0x1006b32e", "mov eax, esi"]]}, {"both": [["0x100be7e0", "mov ecx, dword ptr [ebp - 0xc]", "0x1006b330"], ["0x100be7e3", "mov dword ptr fs:[0], ecx", "0x1006b333"], ["0x100be7ea", "pop edi", "0x1006b33a"], ["0x100be7eb", "pop esi", "0x1006b33b"], ["0x100be7ec", "pop ebx", "0x1006b33c"], ["0x100be7ed", "mov esp, ebp", "0x1006b33d"], ["0x100be7ef", "pop ebp", "0x1006b33f"], ["0x100be7f0", "ret 0x20", "0x1006b340"], ["0x100be7f3", "mov eax, dword ptr [ebp - 0x14]", "0x1006b343"], ["0x100be7f6", "push eax", "0x1006b346"]]}]]]}, {"address": "0x100be820", "recomp": "0x1006b370", "name": "MxVideoManager::Create", "matching": 1.0, "diff": []}, {"address": "0x100bea50", "recomp": "0x1006b5a0", "name": "MxVideoManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100bea60", "recomp": "0x1006b5b0", "name": "MxVideoManager::InvalidateRect", "matching": 1.0, "diff": []}, {"address": "0x100bea90", "recomp": "0x1006b5e0", "name": "MxVideoManager::Tickle", "matching": 1.0, "diff": []}, {"address": "0x100bebe0", "recomp": "0x1006b730", "name": "MxVideoManager::RealizePalette", "matching": 1.0, "diff": []}, {"address": "0x100bec40", "recomp": "0x1007cb70", "name": "MxVideoParamFlags::MxVideoParamFlags", "matching": 1.0, "diff": []}, {"address": "0x100bec70", "recomp": "0x10073eb0", "name": "MxVideoParam::MxVideoParam", "matching": 1.0, "diff": []}, {"address": "0x100beca0", "recomp": "0x10073ee0", "name": "MxVideoParam::MxVideoParam", "matching": 1.0, "diff": []}, {"address": "0x100becf0", "recomp": "0x10073f30", "name": "MxVideoParam::MxVideoParam", "matching": 1.0, "diff": []}, {"address": "0x100bed50", "recomp": "0x10073f90", "name": "MxVideoParam::~MxVideoParam", "matching": 1.0, "diff": []}, {"address": "0x100bed70", "recomp": "0x10073fb0", "name": "MxVideoParam::SetDeviceName", "matching": 1.0, "diff": []}, {"address": "0x100bede0", "recomp": "0x10074020", "name": "MxVideoParam::operator=", "matching": 1.0, "diff": []}, {"address": "0x100bee30", "recomp": "0x1006a680", "name": "MxPalette::MxPalette", "matching": 1.0, "diff": []}, {"address": "0x100beeb0", "recomp": "0x1006a700", "name": "MxPalette::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100beed0", "recomp": "0x1006a720", "name": "MxPalette::MxPalette", "matching": 0.7047619047619048, "diff": [["@@ -0x100beef0,42 +0x1006a740,41 @@", [{"both": [["0x100beef0", "mov esi, ecx", "0x1006a740"], ["0x100beef2", "call MxCore::MxCore (FUNCTION)", "0x1006a742"], ["0x100beef7", "lea eax, [esi + 0xc]", "0x1006a747"], ["0x100beefa", "mov ecx, esi", "0x1006a74a"], ["0x100beefc", "mov dword ptr [ebp - 4], 0", "0x1006a74c"], ["0x100bef03", "push eax", "0x1006a753"], ["0x100bef04", "mov dword ptr [esi], MxPalette::`vftable' (VTABLE)", "0x1006a754"], ["0x100bef0a", "mov byte ptr [esi + 0x40c], 0", "0x1006a75a"], ["0x100bef11", "mov dword ptr [esi + 8], 0", "0x1006a761"], ["0x100bef18", "call MxPalette::ApplySystemEntriesToPalette (FUNCTION)", "0x1006a768"]]}, {"orig": [["0x100bef1d", "mov eax, 0xa"], ["0x100bef22", "lea edx, [esi + 0x34]"], ["0x100bef25", "mov ecx, dword ptr [ebp + 8]"], ["0x100bef28", "add ecx, 0x2a"], ["0x100bef2b", "mov bl, byte ptr [ecx]"], ["0x100bef2d", "add edx, 4"]], "recomp": [["0x1006a76d", "mov edx, 0xa"], ["0x1006a772", "lea ecx, [esi + 0x34]"], ["0x1006a775", "mov eax, dword ptr [ebp + 8]"], ["0x1006a778", "add eax, 0x2a"], ["0x1006a77b", "mov bl, byte ptr [eax]"]]}, {"both": [["0x100bef30", "add ecx, 4", "0x1006a77d"]]}, {"orig": [["0x100bef33", "inc eax"], ["0x100bef34", "mov byte ptr [edx - 4], bl"], ["0x100bef37", "cmp eax, 0xf6"], ["0x100bef3c", "mov bl, byte ptr [ecx - 5]"], ["0x100bef3f", "mov byte ptr [edx - 3], bl"], ["0x100bef42", "mov bl, byte ptr [ecx - 6]"], ["0x100bef45", "mov byte ptr [edx - 2], bl"], ["0x100bef48", "mov byte ptr [edx - 1], 0"], ["0x100bef4c", "jl -0x23"]], "recomp": [["0x1006a780", "add eax, 4"], ["0x1006a783", "inc edx"], ["0x1006a784", "mov byte ptr [ecx - 4], bl"], ["0x1006a787", "cmp edx, 0xf6"], ["0x1006a78d", "mov bl, byte ptr [eax - 5]"], ["0x1006a790", "mov byte ptr [ecx - 3], bl"], ["0x1006a793", "mov bl, byte ptr [eax - 6]"], ["0x1006a796", "mov byte ptr [ecx - 2], bl"], ["0x1006a799", "mov byte ptr [ecx - 1], 0"], ["0x1006a79d", "jl -0x24"]]}, {"both": [["0x100bef4e", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006a79f"], ["0x100bef55", "mov eax, dword ptr [esi + 0x240]", "0x1006a7a6"], ["0x100bef5b", "mov ecx, dword ptr [ebp - 0xc]", "0x1006a7ac"], ["0x100bef5e", "mov dword ptr fs:[0], ecx", "0x1006a7af"], ["0x100bef65", "mov dword ptr [esi + 0x40d], eax", "0x1006a7b6"], ["0x100bef6b", "mov eax, esi", "0x1006a7bc"], ["0x100bef6d", "pop esi", "0x1006a7be"], ["0x100bef6e", "pop ebx", "0x1006a7bf"], ["0x100bef6f", "mov esp, ebp", "0x1006a7c0"], ["0x100bef71", "pop ebp", "0x1006a7c2"], ["0x100bef72", "ret 4", "0x1006a7c3"], ["0x100bef75", "mov eax, <OFFSET5>", "0x1006a7c6"], ["0x100bef7a", "jmp ___CxxFrameHandler (FUNCTION)", "0x1006a7cb"], ["0x100bef7f", "mov ecx, dword ptr [ebp - 0x10]", "0x1006a7d0"], ["0x100bef82", "jmp MxCore::~MxCore (FUNCTION)", "0x1006a7d3"]]}, {"orig": [["0x100bef87", "int3 "]], "recomp": []}]]]}, {"address": "0x100bef90", "recomp": "0x1006a7e0", "name": "MxPalette::~MxPalette", "matching": 1.0, "diff": []}, {"address": "0x100bf000", "recomp": "0x1006a850", "name": "MxPalette::CreateNativePalette", "matching": 1.0, "diff": []}, {"address": "0x100bf0b0", "recomp": "0x1006a900", "name": "MxPalette::Clone", "matching": 0.8297872340425532, "diff": [["@@ -0x100bf0b6,45 +0x1006a906,45 @@", [{"both": [["0x100bf0b6", "push ebp", "0x1006a906"], ["0x100bf0b7", "mov ebp, esp", "0x1006a907"], ["0x100bf0b9", "push -1", "0x1006a909"], ["0x100bf0bb", "push <OFFSET1>", "0x1006a90b"], ["0x100bf0c0", "push eax", "0x1006a910"], ["0x100bf0c1", "mov dword ptr fs:[0], esp", "0x1006a911"], ["0x100bf0c8", "sub esp, 4", "0x1006a918"], ["0x100bf0cb", "push ebx", "0x1006a91b"], ["0x100bf0cc", "push esi", "0x1006a91c"], ["0x100bf0cd", "push edi", "0x1006a91d"]]}, {"orig": [["0x100bf0ce", "mov esi, ecx"]], "recomp": [["0x1006a91e", "mov ebx, ecx"]]}, {"both": [["0x100bf0d0", "push 0x414", "0x1006a920"], ["0x100bf0d5", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006a925"], ["0x100bf0da", "mov dword ptr [ebp - 0x10], eax", "0x1006a92a"], ["0x100bf0dd", "add esp, 4", "0x1006a92d"], ["0x100bf0e0", "mov edi, eax", "0x1006a930"]]}, {"orig": [["0x100bf0e2", "mov ebx, 0"]], "recomp": [["0x1006a932", "mov esi, 0"]]}, {"both": [["0x100bf0e7", "mov dword ptr [ebp - 4], 0", "0x1006a937"], ["0x100bf0ee", "test edi, edi", "0x1006a93e"], ["0x100bf0f0", "je 0x9", "0x1006a940"], ["0x100bf0f2", "mov ecx, edi", "0x1006a942"], ["0x100bf0f4", "call MxPalette::MxPalette (FUNCTION)", "0x1006a944"]]}, {"orig": [["0x100bf0f9", "mov ebx, eax"], ["0x100bf0fb", "lea eax, [ebx + 0xc]"], ["0x100bf0fe", "mov ecx, esi"]], "recomp": [["0x1006a949", "mov esi, eax"], ["0x1006a94b", "lea eax, [esi + 0xc]"], ["0x1006a94e", "mov ecx, ebx"]]}, {"both": [["0x100bf100", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006a950"], ["0x100bf107", "push eax", "0x1006a957"], ["0x100bf108", "call MxPalette::GetEntries (FUNCTION)", "0x1006a958"]]}, {"orig": [["0x100bf10d", "mov al, byte ptr [esi + 0x40c]"]], "recomp": [["0x1006a95d", "mov al, byte ptr [ebx + 0x40c]"]]}, {"both": [["0x100bf113", "mov ecx, dword ptr [ebp - 0xc]", "0x1006a963"], ["0x100bf116", "mov dword ptr fs:[0], ecx", "0x1006a966"], ["0x100bf11d", "pop edi", "0x1006a96d"]]}, {"orig": [], "recomp": [["0x1006a96e", "mov byte ptr [esi + 0x40c], al"], ["0x1006a974", "mov eax, esi"]]}, {"both": [["0x100bf11e", "pop esi", "0x1006a976"]]}, {"orig": [["0x100bf11f", "mov byte ptr [ebx + 0x40c], al"], ["0x100bf125", "mov eax, ebx"]], "recomp": []}, {"both": [["0x100bf127", "pop ebx", "0x1006a977"], ["0x100bf128", "mov esp, ebp", "0x1006a978"], ["0x100bf12a", "pop ebp", "0x1006a97a"], ["0x100bf12b", "ret ", "0x1006a97b"], ["0x100bf12c", "mov eax, <OFFSET5>", "0x1006a97c"], ["0x100bf131", "jmp ___CxxFrameHandler (FUNCTION)", "0x1006a981"], ["0x100bf136", "mov eax, dword ptr [ebp - 0x10]", "0x1006a986"], ["0x100bf139", "push eax", "0x1006a989"], ["0x100bf13a", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006a98a"], ["0x100bf13f", "add esp, 4", "0x1006a98f"]]}]]]}, {"address": "0x100bf150", "recomp": "0x1006a9a0", "name": "MxPalette::GetEntries", "matching": 1.0, "diff": []}, {"address": "0x100bf170", "recomp": "0x1006a9c0", "name": "MxPalette::SetEntries", "matching": 0.35789473684210527, "diff": [["@@ -0x100bf170,94 +0x1006a9c0,96 @@", [{"both": [["0x100bf170", "push ebx", "0x1006a9c0"], ["0x100bf171", "push esi", "0x1006a9c1"], ["0x100bf172", "push edi", "0x1006a9c2"], ["0x100bf173", "push ebp", "0x1006a9c3"], ["0x100bf174", "xor ebp, ebp", "0x1006a9c4"], ["0x100bf176", "cmp dword ptr [ecx + 8], ebp", "0x1006a9c6"]]}, {"orig": [["0x100bf179", "je 0x140"]], "recomp": [["0x1006a9c9", "je 0x12d"]]}, {"both": [["0x100bf17f", "lea edx, [ecx + 0xf]", "0x1006a9cf"], ["0x100bf182", "mov eax, 0xa", "0x1006a9d2"], ["0x100bf187", "mov byte ptr [edx], 0x80", "0x1006a9d7"], ["0x100bf18a", "add edx, 4", "0x1006a9da"], ["0x100bf18d", "dec eax", "0x1006a9dd"], ["0x100bf18e", "jne -0x9", "0x1006a9de"]]}, {"orig": [["0x100bf190", "mov edx, dword ptr [esp + 0x14]"], ["0x100bf194", "lea eax, [ecx + 0x37]"]], "recomp": [["0x1006a9e0", "mov eax, dword ptr [esp + 0x14]"], ["0x1006a9e4", "lea edx, [ecx + 0x37]"]]}, {"both": [["0x100bf197", "mov edi, 0x7e", "0x1006a9e7"]]}, {"orig": [["0x100bf19c", "lea esi, [edx + 0x28]"], ["0x100bf19f", "mov byte ptr [eax], 0x44"], ["0x100bf1a2", "add esi, 4"], ["0x100bf1a5", "add eax, 4"], ["0x100bf1a8", "mov bl, byte ptr [esi - 4]"], ["0x100bf1ab", "dec edi"], ["0x100bf1ac", "mov byte ptr [eax - 7], bl"], ["0x100bf1af", "mov bl, byte ptr [esi - 3]"], ["0x100bf1b2", "mov byte ptr [eax - 6], bl"], ["0x100bf1b5", "mov bl, byte ptr [esi - 2]"], ["0x100bf1b8", "mov byte ptr [eax - 5], bl"], ["0x100bf1bb", "jne -0x1e"], ["0x100bf1bd", "lea eax, [edx + 0x220]"], ["0x100bf1c3", "lea esi, [ecx + 0x22f]"], ["0x100bf1c9", "mov edi, 4"], ["0x100bf1ce", "mov byte ptr [esi], 0x84"], ["0x100bf1d1", "add eax, 4"], ["0x100bf1d4", "add esi, 4"], ["0x100bf1d7", "mov bl, byte ptr [eax - 4]"], ["0x100bf1da", "dec edi"], ["0x100bf1db", "mov byte ptr [esi - 7], bl"], ["0x100bf1de", "mov bl, byte ptr [eax - 3]"], ["0x100bf1e1", "mov byte ptr [esi - 6], bl"], ["0x100bf1e4", "mov bl, byte ptr [eax - 2]"], ["0x100bf1e7", "mov byte ptr [esi - 5], bl"], ["0x100bf1ea", "jne -0x1e"], ["0x100bf1ec", "cmp byte ptr [ecx + 0x40c], 0"], ["0x100bf1f3", "jne 0x56"], ["0x100bf1f5", "mov byte ptr [ecx + 0x23f], 0x44"], ["0x100bf1fc", "mov al, byte ptr [edx + 0x230]"], ["0x100bf202", "mov byte ptr [ecx + 0x23c], al"], ["0x100bf208", "mov bl, byte ptr [edx + 0x231]"], ["0x100bf20e", "mov byte ptr [ecx + 0x23d], bl"], ["0x100bf214", "mov al, byte ptr [edx + 0x232]"], ["0x100bf21a", "mov byte ptr [ecx + 0x23e], al"], ["0x100bf220", "mov byte ptr [ecx + 0x243], 0x84"], ["0x100bf227", "mov bl, byte ptr [edx + 0x234]"], ["0x100bf22d", "mov byte ptr [ecx + 0x240], bl"], ["0x100bf233", "mov al, byte ptr [edx + 0x235]"], ["0x100bf239", "mov byte ptr [ecx + 0x241], al"], ["0x100bf23f", "mov bl, byte ptr [edx + 0x236]"], ["0x100bf245", "mov byte ptr [ecx + 0x242], bl"], ["0x100bf24b", "mov eax, 0x8e"], ["0x100bf250", "cmp eax, 0xf6"], ["0x100bf255", "jge 0x2e"], ["0x100bf257", "lea esi, [edx + eax*4]"], ["0x100bf25a", "mov edi, 0xf6"], ["0x100bf25f", "lea edx, [ecx + eax*4 + 0xf]"], ["0x100bf263", "sub edi, eax"], ["0x100bf265", "add eax, edi"], ["0x100bf267", "mov byte ptr [edx], 0x84"]], "recomp": [["0x1006a9ec", "lea esi, [eax + 0x28]"], ["0x1006a9ef", "mov byte ptr [edx], 0x44"]]}, {"both": [["0x100bf26a", "add esi, 4", "0x1006a9f2"], ["0x100bf26d", "add edx, 4", "0x1006a9f5"], ["0x100bf270", "mov bl, byte ptr [esi - 4]", "0x1006a9f8"], ["0x100bf273", "dec edi", "0x1006a9fb"], ["0x100bf274", "mov byte ptr [edx - 7], bl", "0x1006a9fc"], ["0x100bf277", "mov bl, byte ptr [esi - 3]", "0x1006a9ff"], ["0x100bf27a", "mov byte ptr [edx - 6], bl", "0x1006aa02"], ["0x100bf27d", "mov bl, byte ptr [esi - 2]", "0x1006aa05"], ["0x100bf280", "mov byte ptr [edx - 5], bl", "0x1006aa08"], ["0x100bf283", "jne -0x1e", "0x1006aa0b"]]}, {"orig": [["0x100bf285", "cmp eax, 0x100"], ["0x100bf28a", "jge 0x14"], ["0x100bf28c", "lea esi, [ecx + eax*4 + 0xf]"], ["0x100bf290", "mov edx, 0x100"], ["0x100bf295", "sub edx, eax"], ["0x100bf297", "mov byte ptr [esi], 0x80"]], "recomp": [["0x1006aa0d", "lea edx, [eax + 0x220]"], ["0x1006aa13", "lea esi, [ecx + 0x22f]"], ["0x1006aa19", "mov edi, 4"], ["0x1006aa1e", "mov byte ptr [esi], 0x84"], ["0x1006aa21", "add edx, 4"]]}, {"both": [["0x100bf29a", "add esi, 4", "0x1006aa24"]]}, {"orig": [], "recomp": [["0x1006aa27", "mov bl, byte ptr [edx - 4]"], ["0x1006aa2a", "dec edi"], ["0x1006aa2b", "mov byte ptr [esi - 7], bl"], ["0x1006aa2e", "mov bl, byte ptr [edx - 3]"], ["0x1006aa31", "mov byte ptr [esi - 6], bl"], ["0x1006aa34", "mov bl, byte ptr [edx - 2]"], ["0x1006aa37", "mov byte ptr [esi - 5], bl"], ["0x1006aa3a", "jne -0x1e"], ["0x1006aa3c", "cmp byte ptr [ecx + 0x40c], 0"], ["0x1006aa43", "jne 0x56"], ["0x1006aa45", "mov byte ptr [ecx + 0x23f], 0x44"], ["0x1006aa4c", "mov dl, byte ptr [eax + 0x230]"], ["0x1006aa52", "mov byte ptr [ecx + 0x23c], dl"], ["0x1006aa58", "mov bl, byte ptr [eax + 0x231]"], ["0x1006aa5e", "mov byte ptr [ecx + 0x23d], bl"], ["0x1006aa64", "mov dl, byte ptr [eax + 0x232]"], ["0x1006aa6a", "mov byte ptr [ecx + 0x243], 0x84"], ["0x1006aa71", "mov byte ptr [ecx + 0x23e], dl"], ["0x1006aa77", "mov bl, byte ptr [eax + 0x234]"], ["0x1006aa7d", "mov byte ptr [ecx + 0x240], bl"], ["0x1006aa83", "mov dl, byte ptr [eax + 0x235]"], ["0x1006aa89", "mov byte ptr [ecx + 0x241], dl"], ["0x1006aa8f", "mov bl, byte ptr [eax + 0x236]"], ["0x1006aa95", "mov byte ptr [ecx + 0x242], bl"], ["0x1006aa9b", "add eax, 0x238"], ["0x1006aaa0", "lea esi, [ecx + 0x247]"], ["0x1006aaa6", "mov edx, 0x68"], ["0x1006aaab", "mov byte ptr [esi], 0x84"], ["0x1006aaae", "add eax, 4"], ["0x1006aab1", "add esi, 4"], ["0x1006aab4", "mov bl, byte ptr [eax - 4]"]]}, {"both": [["0x100bf29d", "dec edx", "0x1006aab7"]]}, {"orig": [], "recomp": [["0x1006aab8", "mov byte ptr [esi - 7], bl"], ["0x1006aabb", "mov bl, byte ptr [eax - 3]"], ["0x1006aabe", "mov byte ptr [esi - 6], bl"], ["0x1006aac1", "mov bl, byte ptr [eax - 2]"], ["0x1006aac4", "mov byte ptr [esi - 5], bl"], ["0x1006aac7", "jne -0x1e"], ["0x1006aac9", "lea edx, [ecx + 0x3e7]"], ["0x1006aacf", "mov eax, 0xa"], ["0x1006aad4", "mov byte ptr [edx], 0x80"], ["0x1006aad7", "add edx, 4"], ["0x1006aada", "dec eax"]]}, {"both": [["0x100bf29e", "jne -0x9", "0x1006aadb"], ["0x100bf2a0", "mov eax, dword ptr [ecx + 8]", "0x1006aadd"], ["0x100bf2a3", "add ecx, 0xc", "0x1006aae0"], ["0x100bf2a6", "push ecx", "0x1006aae3"], ["0x100bf2a7", "push 0x100", "0x1006aae4"], ["0x100bf2ac", "push 0", "0x1006aae9"], ["0x100bf2ae", "mov ebx, dword ptr [eax]", "0x1006aaeb"], ["0x100bf2b0", "push 0", "0x1006aaed"], ["0x100bf2b2", "push eax", "0x1006aaef"]]}, {"orig": [], "recomp": [["0x1006aaf0", "call dword ptr [ebx + 0x18]"], ["0x1006aaf3", "test eax, eax"], ["0x1006aaf5", "je 0x5"], ["0x1006aaf7", "mov ebp, 0xffffffff"], ["0x1006aafc", "mov eax, ebp"], ["0x1006aafe", "pop ebp"], ["0x1006aaff", "pop edi"], ["0x1006ab00", "pop esi"], ["0x1006ab01", "pop ebx"], ["0x1006ab02", "ret 4"]]}]]]}, {"address": "0x100bf2d0", "recomp": "0x1006ab10", "name": "MxPalette::SetSkyColor", "matching": 1.0, "diff": []}, {"address": "0x100bf330", "recomp": "0x1006ab70", "name": "MxPalette::Detach", "matching": 1.0, "diff": []}, {"address": "0x100bf340", "recomp": "0x1006ab80", "name": "MxPalette::operator==", "matching": 1.0, "diff": []}, {"address": "0x100bf390", "recomp": "0x1006abd0", "name": "MxPalette::ApplySystemEntriesToPalette", "matching": 1.0, "diff": []}, {"address": "0x100bf420", "recomp": "0x1006ac60", "name": "MxPalette::GetDefaultPalette", "matching": 1.0, "diff": []}, {"address": "0x100bf490", "recomp": "0x1006acd0", "name": "MxPalette::Reset", "matching": 1.0, "diff": []}, {"address": "0x100bf4f0", "recomp": "0x100972c0", "name": "MxScheduler::GetInstance", "matching": 1.0, "diff": []}, {"address": "0x100bf500", "recomp": "0x100972d0", "name": "MxScheduler::StartMultiTasking", "matching": 1.0, "diff": []}, {"address": "0x100bf510", "recomp": "0x1006e510", "name": "MxThread::MxThread", "matching": 1.0, "diff": []}, {"address": "0x100bf580", "recomp": "0x1006e5a0", "name": "MxThread::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100bf5a0", "recomp": "0x1006e5c0", "name": "MxThread::~MxThread", "matching": 1.0, "diff": []}, {"address": "0x100bf610", "recomp": "0x1006e630", "name": "MxThread::Start", "matching": 1.0, "diff": []}, {"address": "0x100bf660", "recomp": "0x1006e680", "name": "MxThread::Sleep", "matching": 1.0, "diff": []}, {"address": "0x100bf670", "recomp": "0x1006e690", "name": "MxThread::Terminate", "matching": 1.0, "diff": []}, {"address": "0x100bf680", "recomp": "0x1006e6a0", "name": "MxThread::ThreadProc", "matching": 1.0, "diff": []}, {"address": "0x100bf690", "recomp": "0x1006e6b0", "name": "MxThread::Run", "matching": 1.0, "diff": []}, {"address": "0x100bf6a0", "recomp": "0x1006b790", "name": "MxDSObject::MxDSObject", "matching": 1.0, "diff": []}, {"address": "0x100bf730", "recomp": "0x1006b820", "name": "MxDSObject::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100bf740", "recomp": "0x1006b830", "name": "MxDSObject::IsA", "matching": 1.0, "diff": []}, {"address": "0x100bf7c0", "recomp": "0x1006b8b0", "name": "MxDSObject::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100bf7e0", "recomp": "0x1006b8d0", "name": "MxDSObject::~MxDSObject", "matching": 1.0, "diff": []}, {"address": "0x100bf870", "recomp": "0x1006b960", "name": "MxDSObject::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100bf8c0", "recomp": "0x1006b9b0", "name": "MxDSObject::operator=", "matching": 1.0, "diff": []}, {"address": "0x100bf8e0", "recomp": "0x1006b9d0", "name": "MxDSObject::SetObjectName", "matching": 1.0, "diff": []}, {"address": "0x100bf950", "recomp": "0x1006ba40", "name": "MxDSObject::SetSourceName", "matching": 1.0, "diff": []}, {"address": "0x100bf9c0", "recomp": "0x1006bab0", "name": "MxDSObject::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x100bf9d0", "recomp": "0x1006bac0", "name": "MxDSObject::GetSizeOnDisk", "matching": 1.0, "diff": []}, {"address": "0x100bfa20", "recomp": "0x1006bb10", "name": "MxDSObject::Deserialize", "matching": 1.0, "diff": []}, {"address": "0x100bfa80", "recomp": "0x1006e050", "name": "MxStreamListMxDSAction::Find", "matching": 1.0, "effective": true, "diff": [["@@ -0x100bfa80,21 +0x1006e050,21 @@", [{"both": [["0x100bfa80", "sub esp, 4", "0x1006e050"], ["0x100bfa83", "push ebx", "0x1006e053"], ["0x100bfa84", "push esi", "0x1006e054"], ["0x100bfa85", "mov edx, dword ptr [ecx + 4]", "0x1006e055"], ["0x100bfa88", "push edi", "0x1006e058"], ["0x100bfa89", "push ebp", "0x1006e059"], ["0x100bfa8a", "mov esi, ecx", "0x1006e05a"], ["0x100bfa8c", "xor edi, edi", "0x1006e05c"], ["0x100bfa8e", "mov eax, dword ptr [edx]", "0x1006e05e"], ["0x100bfa90", "mov dword ptr [esp + 0x10], eax", "0x1006e060"]]}, {"orig": [["0x100bfa94", "cmp edx, eax"]], "recomp": [["0x1006e064", "cmp eax, edx"]]}, {"both": [["0x100bfa96", "je 0x50", "0x1006e066"], ["0x100bfa98", "mov ebx, dword ptr [esp + 0x18]", "0x1006e068"], ["0x100bfa9c", "mov ecx, dword ptr [ebx + 0x1c]", "0x1006e06c"], ["0x100bfa9f", "cmp ecx, -1", "0x1006e06f"], ["0x100bfaa2", "je 0xc", "0x1006e072"], ["0x100bfaa4", "mov eax, dword ptr [esp + 0x10]", "0x1006e074"], ["0x100bfaa8", "mov ebp, dword ptr [eax + 8]", "0x1006e078"], ["0x100bfaab", "cmp dword ptr [ebp + 0x1c], ecx", "0x1006e07b"], ["0x100bfaae", "jne 0x2a", "0x1006e07e"], ["0x100bfab0", "mov bp, word ptr [ebx + 0x24]", "0x1006e080"]]}]], ["@@ -0x100bfac4,21 +0x1006e094,21 @@", [{"both": [["0x100bfac4", "mov eax, dword ptr [eax + 8]", "0x1006e094"], ["0x100bfac7", "cmp word ptr [eax + 0x24], bp", "0x1006e097"], ["0x100bfacb", "jne 0xd", "0x1006e09b"], ["0x100bfacd", "cmp bp, -3", "0x1006e09d"], ["0x100bfad1", "mov eax, dword ptr [esp + 0x10]", "0x1006e0a1"], ["0x100bfad5", "mov edi, dword ptr [eax + 8]", "0x1006e0a5"], ["0x100bfad8", "jne 0xe", "0x1006e0a8"], ["0x100bfada", "mov eax, dword ptr [esp + 0x10]", "0x1006e0aa"], ["0x100bfade", "mov ebp, dword ptr [eax]", "0x1006e0ae"], ["0x100bfae0", "mov dword ptr [esp + 0x10], ebp", "0x1006e0b0"]]}, {"orig": [["0x100bfae4", "cmp edx, ebp"]], "recomp": [["0x1006e0b4", "cmp ebp, edx"]]}, {"both": [["0x100bfae6", "jne -0x49", "0x1006e0b6"], ["0x100bfae8", "cmp byte ptr [esp + 0x1c], 0", "0x1006e0b8"], ["0x100bfaed", "je 0x29", "0x1006e0bd"], ["0x100bfaef", "test edi, edi", "0x1006e0bf"], ["0x100bfaf1", "je 0x25", "0x1006e0c1"], ["0x100bfaf3", "mov edx, dword ptr [esp + 0x10]", "0x1006e0c3"], ["0x100bfaf7", "mov eax, dword ptr [esp + 0x10]", "0x1006e0c7"], ["0x100bfafb", "push eax", "0x1006e0cb"], ["0x100bfafc", "mov ecx, dword ptr [edx + 4]", "0x1006e0cc"], ["0x100bfaff", "add edx, 4", "0x1006e0cf"]]}]]]}, {"address": "0x100bfb30", "recomp": "0x1006bb70", "name": "DeserializeDSObjectDispatch", "matching": 0.9019607843137255, "diff": [["@@ -0x100bfb37,28 +0x1006bb77,28 @@", [{"both": [["0x100bfb37", "mov ebp, esp", "0x1006bb77"], ["0x100bfb39", "push -1", "0x1006bb79"], ["0x100bfb3b", "push <OFFSET1>", "0x1006bb7b"], ["0x100bfb40", "push eax", "0x1006bb80"], ["0x100bfb41", "mov dword ptr fs:[0], esp", "0x1006bb81"], ["0x100bfb48", "sub esp, 4", "0x1006bb88"], ["0x100bfb4b", "push ebx", "0x1006bb8b"], ["0x100bfb4c", "push esi", "0x1006bb8c"], ["0x100bfb4d", "push edi", "0x1006bb8d"], ["0x100bfb4e", "mov esi, dword ptr [ebp + 8]", "0x1006bb8e"]]}, {"orig": [["0x100bfb51", "mov ecx, dword ptr [esi]"], ["0x100bfb53", "mov ax, word ptr [ecx]"], ["0x100bfb56", "add ecx, 2"], ["0x100bfb59", "movzx eax, ax"], ["0x100bfb5c", "mov dword ptr [esi], ecx"]], "recomp": [["0x1006bb91", "mov eax, dword ptr [esi]"], ["0x1006bb93", "mov cx, word ptr [eax]"], ["0x1006bb96", "add eax, 2"], ["0x1006bb99", "mov dword ptr [esi], eax"], ["0x1006bb9b", "movzx eax, cx"]]}, {"both": [["0x100bfb5e", "cmp eax, 0xb", "0x1006bb9e"], ["0x100bfb61", "ja 0x7", "0x1006bba1"]]}, {"orig": [["0x100bfb63", "jmp dword ptr [eax*4 + 0x100bfea0]"]], "recomp": [["0x1006bba3", "jmp dword ptr [eax*4 + 0x1006bee0]"]]}, {"both": [["0x100bfb6a", "xor eax, eax", "0x1006bbaa"], ["0x100bfb6c", "mov ecx, dword ptr [ebp - 0xc]", "0x1006bbac"], ["0x100bfb6f", "pop edi", "0x1006bbaf"], ["0x100bfb70", "mov dword ptr fs:[0], ecx", "0x1006bbb0"], ["0x100bfb77", "pop esi", "0x1006bbb7"], ["0x100bfb78", "pop ebx", "0x1006bbb8"], ["0x100bfb79", "mov esp, ebp", "0x1006bbb9"], ["0x100bfb7b", "pop ebp", "0x1006bbbb"], ["0x100bfb7c", "ret ", "0x1006bbbc"], ["0x100bfb7d", "push 0x2c", "0x1006bbbd"]]}]], ["@@ -0x100bfe81,38 +0x1006bec1,25 @@", [{"both": [["0x100bfe81", "mov eax, ebx", "0x1006bec1"], ["0x100bfe83", "jmp -0x31c", "0x1006bec3"], ["0x100bfe88", "mov eax, <OFFSET16>", "0x1006bec8"], ["0x100bfe8d", "jmp ___CxxFrameHandler (FUNCTION)", "0x1006becd"], ["0x100bfe92", "mov eax, dword ptr [ebp - 0x10]", "0x1006bed2"], ["0x100bfe95", "push eax", "0x1006bed5"], ["0x100bfe96", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006bed6"], ["0x100bfe9b", "add esp, 4", "0x1006bedb"], ["0x100bfe9e", "ret ", "0x1006bede"], ["0x100bfe9f", "nop ", "0x1006bedf"]]}, {"orig": [["0x100bfea0", "jge -0x5"], ["0x100bfea2", "or edx, dword ptr [eax]"], ["0x100bfea4", "mov esi, 0x2100bfb"], ["0x100bfea9", "cld "], ["0x100bfeaa", "or edx, dword ptr [eax]"], ["0x100bfeac", "inc esi"], ["0x100bfead", "cld "], ["0x100bfeae", "or edx, dword ptr [eax]"], ["0x100bfeb0", "mov bh, ah"], ["0x100bfeb2", "or edx, dword ptr [eax]"], ["0x100bfeb4", "into "], ["0x100bfeb5", "cld "], ["0x100bfeb6", "or edx, dword ptr [eax]"], ["0x100bfeb8", "adc bh, ch"], ["0x100bfeba", "or edx, dword ptr [eax]"], ["0x100bfebc", "push ecx"], ["0x100bfebd", "std "], ["0x100bfebe", "or edx, dword ptr [eax]"], ["0x100bfec0", "nop "], ["0x100bfec1", "std "], ["0x100bfec2", "or edx, dword ptr [eax]"], ["0x100bfec4", "iretd "], ["0x100bfec5", "std "], ["0x100bfec6", "or edx, dword ptr [eax]"], ["0x100bfec8", "pop es"], ["0x100bfec9", "dec byte ptr [ebx]"], ["0x100bfecb", "adc byte ptr [edi], bh"], ["0x100bfecd", "dec byte ptr [ebx]"]], "recomp": [["0x1006bee0", "mov ebp, 0xfe1006bb"], ["0x1006bee5", "mov ebx, 0xbc421006"], ["0x1006beea", "push es"], ["0x1006beeb", "adc byte ptr [esi - 0x35eff944], al"], ["0x1006bef1", "mov esp, 0xbd0e1006"], ["0x1006bef6", "push es"], ["0x1006bef7", "adc byte ptr [edx - 0x43], dl"], ["0x1006befa", "push es"], ["0x1006befb", "adc byte ptr [ecx - 0x2feff943], dl"], ["0x1006bf01", "mov ebp, 0xbe0f1006"], ["0x1006bf06", "push es"], ["0x1006bf07", "adc byte ptr [edi - 0x42], al"], ["0x1006bf0a", "push es"], ["0x1006bf0b", "adc byte ptr [edi - 0x42], bh"], ["0x1006bf0e", "push es"]]}]]]}, {"address": "0x100bfed0", "recomp": "0x1000bdb0", "name": "MxDSFile::~MxDSFile", "matching": 1.0, "diff": []}, {"address": "0x100bff60", "recomp": "0x1000be40", "name": "MxDSSource::~MxDSSource", "matching": 1.0, "diff": []}, {"address": "0x100bffd0", "recomp": "0x10063800", "name": "MxDSSource::ReadToBuffer", "matching": 1.0, "diff": []}, {"address": "0x100bfff0", "recomp": "0x10063820", "name": "MxDSSource::GetLengthInDWords", "matching": 1.0, "diff": []}, {"address": "0x100c0000", "recomp": "0x10063830", "name": "MxDSSource::GetBuffer", "matching": 1.0, "diff": []}, {"address": "0x100c0010", "recomp": "0x1000beb0", "name": "MxDSSource::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c0020", "recomp": "0x1000bec0", "name": "MxDSSource::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c00a0", "recomp": "0x1000bf40", "name": "MxDSSource::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c0120", "recomp": "0x1000bfc0", "name": "MxDSFile::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c0130", "recomp": "0x1000bfd0", "name": "MxDSFile::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c01e0", "recomp": "0x1000c080", "name": "MxDSFile::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c0280", "recomp": "0x100655b0", "name": "CreateStreamObject", "matching": 1.0, "diff": []}, {"address": "0x100c0360", "recomp": "0x1006bf10", "name": "MxEventManager::MxEventManager", "matching": 1.0, "diff": []}, {"address": "0x100c03d0", "recomp": "0x1006bf80", "name": "MxEventManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c03f0", "recomp": "0x1006bfa0", "name": "MxEventManager::~MxEventManager", "matching": 1.0, "diff": []}, {"address": "0x100c0450", "recomp": "0x1006c000", "name": "MxEventManager::Init", "matching": 1.0, "diff": []}, {"address": "0x100c0460", "recomp": "0x1006c010", "name": "MxEventManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c04a0", "recomp": "0x1006c050", "name": "MxEventManager::Create", "matching": 1.0, "diff": []}, {"address": "0x100c0590", "recomp": "0x1006c140", "name": "MxEventManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c05a0", "recomp": "0x1006c150", "name": "MxMusicManager::MxMusicManager", "matching": 1.0, "diff": []}, {"address": "0x100c0610", "recomp": "0x1006c1c0", "name": "MxMusicManager::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c0630", "recomp": "0x1006c1e0", "name": "MxMusicManager::~MxMusicManager", "matching": 1.0, "diff": []}, {"address": "0x100c0690", "recomp": "0x1006c240", "name": "MxMusicManager::Init", "matching": 1.0, "diff": []}, {"address": "0x100c06a0", "recomp": "0x1006c250", "name": "MxMusicManager::InitData", "matching": 1.0, "diff": []}, {"address": "0x100c06c0", "recomp": "0x1006c270", "name": "MxMusicManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c0720", "recomp": "0x1006c2d0", "name": "MxMusicManager::ResetStream", "matching": 1.0, "diff": []}, {"address": "0x100c07e0", "recomp": "0x1006c390", "name": "MxMusicManager::ResetBuffer", "matching": 1.0, "diff": []}, {"address": "0x100c07f0", "recomp": "0x1006c3a0", "name": "MxMusicManager::SetMIDIVolume", "matching": 1.0, "diff": []}, {"address": "0x100c0820", "recomp": "0x1006c3d0", "name": "MxMusicManager::MidiCallbackProc", "matching": 1.0, "diff": []}, {"address": "0x100c0840", "recomp": "0x1006c3f0", "name": "MxMusicManager::Create", "matching": 1.0, "diff": []}, {"address": "0x100c0930", "recomp": "0x1006c4e0", "name": "MxMusicManager::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c0940", "recomp": "0x1006c4f0", "name": "MxMusicManager::SetVolume", "matching": 1.0, "diff": []}, {"address": "0x100c0970", "recomp": "0x1006c520", "name": "MxMusicManager::SetMultiplier", "matching": 1.0, "diff": []}, {"address": "0x100c09a0", "recomp": "0x1006c550", "name": "MxMusicManager::CalculateVolume", "matching": 1.0, "diff": []}, {"address": "0x100c09c0", "recomp": "0x1006c570", "name": "MxMusicManager::InitializeMIDI", "matching": 1.0, "diff": []}, {"address": "0x100c0b20", "recomp": "0x1006c6d0", "name": "MxMusicManager::DeinitializeMIDI", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c0b20,37 +0x1006c6d0,37 @@", [{"both": [["0x100c0b20", "push esi", "0x1006c6d0"], ["0x100c0b21", "push edi", "0x1006c6d1"]]}, {"orig": [["0x100c0b22", "lea esi, [ecx + 0x10]"], ["0x100c0b25", "mov edi, ecx"], ["0x100c0b27", "mov ecx, esi"]], "recomp": [["0x1006c6d2", "lea edi, [ecx + 0x10]"], ["0x1006c6d5", "mov esi, ecx"], ["0x1006c6d7", "mov ecx, edi"]]}, {"both": [["0x100c0b29", "call MxCriticalSection::Enter (FUNCTION)", "0x1006c6d9"]]}, {"orig": [["0x100c0b2e", "cmp byte ptr [edi + 0x34], 0"]], "recomp": [["0x1006c6de", "cmp byte ptr [esi + 0x34], 0"]]}, {"both": [["0x100c0b32", "je 0x49", "0x1006c6e2"]]}, {"orig": [["0x100c0b34", "mov byte ptr [edi + 0x34], 0"], ["0x100c0b38", "mov eax, dword ptr [edi + 0x30]"]], "recomp": [["0x1006c6e4", "mov byte ptr [esi + 0x34], 0"], ["0x1006c6e8", "mov eax, dword ptr [esi + 0x30]"]]}, {"both": [["0x100c0b3b", "push eax", "0x1006c6eb"], ["0x100c0b3c", "call dword ptr [__imp__midiStreamStop@4 (POINTER)]", "0x1006c6ec"], ["0x100c0b42", "push 0x40", "0x1006c6f2"]]}, {"orig": [["0x100c0b44", "mov ecx, dword ptr [edi + 0x4c]"]], "recomp": [["0x1006c6f4", "mov ecx, dword ptr [esi + 0x4c]"]]}, {"both": [["0x100c0b47", "push ecx", "0x1006c6f7"]]}, {"orig": [["0x100c0b48", "mov edx, dword ptr [edi + 0x30]"]], "recomp": [["0x1006c6f8", "mov edx, dword ptr [esi + 0x30]"]]}, {"both": [["0x100c0b4b", "push edx", "0x1006c6fb"], ["0x100c0b4c", "call dword ptr [__imp__midiOutUnprepareHeader@12 (POINTER)]", "0x1006c6fc"]]}, {"orig": [["0x100c0b52", "mov ecx, dword ptr [edi + 0x54]"], ["0x100c0b55", "mov edx, dword ptr [edi + 0x30]"]], "recomp": [["0x1006c702", "mov ecx, dword ptr [esi + 0x54]"], ["0x1006c705", "mov edx, dword ptr [esi + 0x30]"]]}, {"both": [["0x100c0b58", "push ecx", "0x1006c708"], ["0x100c0b59", "push edx", "0x1006c709"], ["0x100c0b5a", "call dword ptr [__imp__midiOutSetVolume@8 (POINTER)]", "0x1006c70a"]]}, {"orig": [["0x100c0b60", "mov ecx, dword ptr [edi + 0x30]"]], "recomp": [["0x1006c710", "mov ecx, dword ptr [esi + 0x30]"]]}, {"both": [["0x100c0b63", "push ecx", "0x1006c713"], ["0x100c0b64", "call dword ptr [__imp__midiStreamClose@4 (POINTER)]", "0x1006c714"]]}, {"orig": [["0x100c0b6a", "mov ecx, dword ptr [edi + 0x4c]"]], "recomp": [["0x1006c71a", "mov ecx, dword ptr [esi + 0x4c]"]]}, {"both": [["0x100c0b6d", "push ecx", "0x1006c71d"], ["0x100c0b6e", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006c71e"], ["0x100c0b73", "add esp, 4", "0x1006c723"]]}, {"orig": [], "recomp": [["0x1006c726", "mov ecx, esi"], ["0x1006c728", "call MxMusicManager::InitData (FUNCTION)"]]}, {"both": [["0x100c0b76", "mov ecx, edi", "0x1006c72d"]]}, {"orig": [["0x100c0b78", "call MxMusicManager::InitData (FUNCTION)"], ["0x100c0b7d", "mov ecx, esi"]], "recomp": []}, {"both": [["0x100c0b7f", "call MxCriticalSection::Leave (FUNCTION)", "0x1006c72f"], ["0x100c0b84", "pop edi", "0x1006c734"], ["0x100c0b85", "pop esi", "0x1006c735"], ["0x100c0b86", "ret ", "0x1006c736"]]}]]]}, {"address": "0x100c0b90", "recomp": "0x1006c970", "name": "MxStreamController::MxStreamController", "matching": 1.0, "diff": []}, {"address": "0x100c0d60", "recomp": "0x1006cb40", "name": "list<MxDSAction *,allocator<MxDSAction *> >::~list<MxDSAction *,allocator<MxDSAction *> >", "matching": 1.0, "diff": []}, {"address": "0x100c0dd0", "recomp": "0x1006cc50", "name": "list<MxDSSubscriber *,allocator<MxDSSubscriber *> >::~list<MxDSSubscriber *,allocator<MxDSSubscriber *> >", "matching": 0.972972972972973, "diff": [["@@ -0x100c0df3,21 +0x1006cc73,21 @@", [{"both": [["0x100c0df3", "mov eax, dword ptr [eax]", "0x1006cc73"], ["0x100c0df5", "mov dword ptr [ecx], eax", "0x1006cc75"], ["0x100c0df7", "mov ecx, dword ptr [edx]", "0x1006cc77"], ["0x100c0df9", "mov eax, dword ptr [esp + 8]", "0x1006cc79"], ["0x100c0dfd", "push eax", "0x1006cc7d"], ["0x100c0dfe", "mov edx, dword ptr [eax]", "0x1006cc7e"], ["0x100c0e00", "mov dword ptr [edx + 4], ecx", "0x1006cc80"], ["0x100c0e03", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006cc83"], ["0x100c0e08", "add esp, 4", "0x1006cc88"], ["0x100c0e0b", "dec dword ptr [esi + 8]", "0x1006cc8b"]]}, {"orig": [["0x100c0e0e", "cmp dword ptr [esp + 0x10], edi"]], "recomp": [["0x1006cc8e", "cmp edi, dword ptr [esp + 0x10]"]]}, {"both": [["0x100c0e12", "jne -0x2e", "0x1006cc92"], ["0x100c0e14", "mov eax, dword ptr [esi + 4]", "0x1006cc94"], ["0x100c0e17", "push eax", "0x1006cc97"], ["0x100c0e18", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006cc98"], ["0x100c0e1d", "mov dword ptr [esi + 4], 0", "0x1006cc9d"], ["0x100c0e24", "add esp, 4", "0x1006cca4"], ["0x100c0e27", "mov dword ptr [esi + 8], 0", "0x1006cca7"], ["0x100c0e2e", "pop edi", "0x1006ccae"], ["0x100c0e2f", "pop esi", "0x1006ccaf"], ["0x100c0e30", "add esp, 0xc", "0x1006ccb0"]]}]]]}, {"address": "0x100c0e40", "recomp": "0x1006ccc0", "name": "list<MxDSSubscriber *,allocator<MxDSSubscriber *> >::_Buynode", "matching": 1.0, "diff": []}, {"address": "0x100c0e70", "recomp": "0x1006cbb0", "name": "list<MxNextActionDataStart *,allocator<MxNextActionDataStart *> >::~list<MxNextActionDataStart *,allocator<MxNextActionDataStart *> >", "matching": 0.972972972972973, "diff": [["@@ -0x100c0e93,21 +0x1006cbd3,21 @@", [{"both": [["0x100c0e93", "mov eax, dword ptr [eax]", "0x1006cbd3"], ["0x100c0e95", "mov dword ptr [ecx], eax", "0x1006cbd5"], ["0x100c0e97", "mov ecx, dword ptr [edx]", "0x1006cbd7"], ["0x100c0e99", "mov eax, dword ptr [esp + 8]", "0x1006cbd9"], ["0x100c0e9d", "push eax", "0x1006cbdd"], ["0x100c0e9e", "mov edx, dword ptr [eax]", "0x1006cbde"], ["0x100c0ea0", "mov dword ptr [edx + 4], ecx", "0x1006cbe0"], ["0x100c0ea3", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006cbe3"], ["0x100c0ea8", "add esp, 4", "0x1006cbe8"], ["0x100c0eab", "dec dword ptr [esi + 8]", "0x1006cbeb"]]}, {"orig": [["0x100c0eae", "cmp dword ptr [esp + 0x10], edi"]], "recomp": [["0x1006cbee", "cmp edi, dword ptr [esp + 0x10]"]]}, {"both": [["0x100c0eb2", "jne -0x2e", "0x1006cbf2"], ["0x100c0eb4", "mov eax, dword ptr [esi + 4]", "0x1006cbf4"], ["0x100c0eb7", "push eax", "0x1006cbf7"], ["0x100c0eb8", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006cbf8"], ["0x100c0ebd", "mov dword ptr [esi + 4], 0", "0x1006cbfd"], ["0x100c0ec4", "add esp, 4", "0x1006cc04"], ["0x100c0ec7", "mov dword ptr [esi + 8], 0", "0x1006cc07"], ["0x100c0ece", "pop edi", "0x1006cc0e"], ["0x100c0ecf", "pop esi", "0x1006cc0f"], ["0x100c0ed0", "add esp, 0xc", "0x1006cc10"]]}]]]}, {"address": "0x100c0ee0", "recomp": "0x1006cc20", "name": "list<MxNextActionDataStart *,allocator<MxNextActionDataStart *> >::_Buynode", "matching": 1.0, "diff": []}, {"address": "0x100c0f10", "recomp": "0x1006ccf0", "name": "MxStreamController::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c0f20", "recomp": "0x1006cd00", "name": "MxStreamController::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c0fa0", "recomp": "0x1006cd80", "name": "MxStreamController::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c0fc0", "recomp": "0x1006cda0", "name": "MxStreamListMxDSSubscriber::~MxStreamListMxDSSubscriber", "matching": 1.0, "diff": []}, {"address": "0x100c1010", "recomp": "0x1006cdf0", "name": "MxStreamListMxDSAction::~MxStreamListMxDSAction", "matching": 1.0, "diff": []}, {"address": "0x100c1060", "recomp": "0x1006ce40", "name": "MxStreamListMxNextActionDataStart::~MxStreamListMxNextActionDataStart", "matching": 1.0, "diff": []}, {"address": "0x100c10b0", "recomp": "0x1006ce90", "name": "MxStreamList<MxDSSubscriber *>::~MxStreamList<MxDSSubscriber *>", "matching": 1.0, "diff": []}, {"address": "0x100c1100", "recomp": "0x1006cee0", "name": "MxStreamList<MxDSAction *>::~MxStreamList<MxDSAction *>", "matching": 1.0, "diff": []}, {"address": "0x100c1150", "recomp": "0x1006cf30", "name": "MxStreamList<MxNextActionDataStart *>::~MxStreamList<MxNextActionDataStart *>", "matching": 1.0, "diff": []}, {"address": "0x100c11a0", "recomp": "0x1006cf80", "name": "List<MxDSSubscriber *>::~List<MxDSSubscriber *>", "matching": 1.0, "diff": []}, {"address": "0x100c11f0", "recomp": "0x1006cfd0", "name": "List<MxDSAction *>::~List<MxDSAction *>", "matching": 1.0, "diff": []}, {"address": "0x100c1240", "recomp": "0x1006d020", "name": "List<MxNextActionDataStart *>::~List<MxNextActionDataStart *>", "matching": 1.0, "diff": []}, {"address": "0x100c1290", "recomp": "0x1006d070", "name": "MxStreamController::~MxStreamController", "matching": 0.5396825396825397, "diff": [["@@ -0x100c1290,27 +0x1006d070,27 @@", [{"both": [["0x100c1290", "mov eax, dword ptr fs:[0]", "0x1006d070"], ["0x100c1296", "push ebp", "0x1006d076"], ["0x100c1297", "mov ebp, esp", "0x1006d077"], ["0x100c1299", "push -1", "0x1006d079"], ["0x100c129b", "push <OFFSET1>", "0x1006d07b"], ["0x100c12a0", "mov dword ptr [ecx], MxStreamController::`vftable' (VTABLE)", "0x1006d080"], ["0x100c12a6", "push eax", "0x1006d086"], ["0x100c12a7", "mov dword ptr fs:[0], esp", "0x1006d087"]]}, {"orig": [["0x100c12ae", "sub esp, 0xa4"]], "recomp": [["0x1006d08e", "sub esp, 0xa8"]]}, {"both": [["0x100c12b4", "mov dword ptr [ebp - 0x10], ecx", "0x1006d094"], ["0x100c12b7", "push esi", "0x1006d097"], ["0x100c12b8", "xor esi, esi", "0x1006d098"], ["0x100c12ba", "add ecx, 8", "0x1006d09a"], ["0x100c12bd", "push ecx", "0x1006d09d"], ["0x100c12be", "mov dword ptr [ebp - 4], esi", "0x1006d09e"], ["0x100c12c1", "mov byte ptr [ebp - 4], 6", "0x1006d0a1"]]}, {"orig": [["0x100c12c5", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1006d0a5", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100c12c8", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x1006d0a8"], ["0x100c12cd", "mov byte ptr [ebp - 4], 7", "0x1006d0ad"], ["0x100c12d1", "mov eax, dword ptr [ebp - 0x10]", "0x1006d0b1"], ["0x100c12d4", "cmp dword ptr [eax + 0x38], esi", "0x1006d0b4"], ["0x100c12d7", "je 0x43", "0x1006d0b7"], ["0x100c12d9", "mov ecx, dword ptr [eax + 0x34]", "0x1006d0b9"], ["0x100c12dc", "mov eax, dword ptr [ecx]", "0x1006d0bc"], ["0x100c12de", "mov dword ptr [ebp - 0x14], eax", "0x1006d0be"], ["0x100c12e1", "mov edx, dword ptr [eax + 8]", "0x1006d0c1"], ["0x100c12e4", "mov dword ptr [ebp - 0x18], edx", "0x1006d0c4"]]}]], ["@@ -0x100c130c,151 +0x1006d0ec,145 @@", [{"both": [["0x100c130c", "je -0x3d", "0x1006d0ec"], ["0x100c130e", "push 1", "0x1006d0ee"], ["0x100c1310", "mov eax, dword ptr [ebp - 0x18]", "0x1006d0f0"], ["0x100c1313", "mov ecx, dword ptr [ebp - 0x18]", "0x1006d0f3"], ["0x100c1316", "mov eax, dword ptr [eax]", "0x1006d0f6"], ["0x100c1318", "call dword ptr [eax]", "0x1006d0f8"], ["0x100c131a", "jmp -0x4b", "0x1006d0fa"], ["0x100c131c", "xor esi, esi", "0x1006d0fc"], ["0x100c131e", "mov eax, dword ptr [ebp - 0x10]", "0x1006d0fe"], ["0x100c1321", "cmp dword ptr [eax + 0x44], esi", "0x1006d101"]]}, {"orig": [["0x100c1324", "je 0x2e"]], "recomp": [["0x1006d104", "je 0x4e"]]}, {"both": [["0x100c1326", "mov ecx, dword ptr [eax + 0x40]", "0x1006d106"]]}, {"orig": [], "recomp": [["0x1006d109", "push esi"]]}, {"both": [["0x100c1329", "mov eax, dword ptr [ecx]", "0x1006d10a"]]}, {"orig": [["0x100c132b", "lea ecx, [ebp - 0x20]"]], "recomp": [["0x1006d10c", "lea ecx, [ebp - 0x24]"], ["0x1006d10f", "push ecx"], ["0x1006d110", "mov edx, dword ptr [eax + 8]"], ["0x1006d113", "lea ecx, [ebp - 0x18]"], ["0x1006d116", "mov dword ptr [ebp - 0x14], edx"], ["0x1006d119", "mov dword ptr [ebp - 0x18], eax"], ["0x1006d11c", "call list<MxDSAction *,allocator<MxDSAction *> >::iterator::operator++ (FUNCTION)"], ["0x1006d121", "mov edx, dword ptr [eax]"], ["0x1006d123", "mov ecx, dword ptr [edx + 4]"], ["0x1006d126", "push edx"], ["0x1006d127", "mov eax, dword ptr [edx]"], ["0x1006d129", "mov dword ptr [ecx], eax"], ["0x1006d12b", "mov eax, dword ptr [edx + 4]"], ["0x1006d12e", "mov ecx, dword ptr [edx]"], ["0x1006d130", "mov dword ptr [ecx + 4], eax"], ["0x1006d133", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1006d138", "add esp, 4"], ["0x1006d13b", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1006d13e", "dec dword ptr [ecx + 0x44]"], ["0x1006d141", "cmp dword ptr [ebp - 0x14], esi"], ["0x1006d144", "je -0x48"], ["0x1006d146", "push 1"], ["0x1006d148", "mov eax, dword ptr [ebp - 0x14]"], ["0x1006d14b", "mov ecx, dword ptr [ebp - 0x14]"], ["0x1006d14e", "mov eax, dword ptr [eax]"], ["0x1006d150", "call dword ptr [eax]"], ["0x1006d152", "jmp -0x56"], ["0x1006d154", "mov eax, dword ptr [ebp - 0x10]"], ["0x1006d157", "mov eax, dword ptr [eax + 0x28]"], ["0x1006d15a", "test eax, eax"], ["0x1006d15c", "je 0x47"], ["0x1006d15e", "mov dword ptr [ebp - 0x18], eax"], ["0x1006d161", "mov eax, dword ptr [ebp - 0x10]"], ["0x1006d164", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1006d167", "mov dword ptr [eax + 0x28], 0"], ["0x1006d16e", "mov edx, dword ptr [ecx]"], ["0x1006d170", "lea ecx, [ebp - 0xb4]"], ["0x1006d176", "mov dword ptr [ebp - 0x1c], edx"], ["0x1006d179", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x1006d17e", "mov byte ptr [ebp - 4], 8"], ["0x1006d182", "mov esi, dword ptr [ebp - 0x1c]"], ["0x1006d185", "push eax"], ["0x1006d186", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1006d189", "call dword ptr [esi + 0x20]"], ["0x1006d18c", "mov byte ptr [ebp - 4], 7"], ["0x1006d190", "call <OFFSET7>"], ["0x1006d195", "cmp dword ptr [ebp - 0x18], 0"], ["0x1006d199", "je 0xa"], ["0x1006d19b", "mov eax, dword ptr [ebp - 0x1c]"], ["0x1006d19e", "push 1"], ["0x1006d1a0", "mov ecx, dword ptr [ebp - 0x18]"], ["0x1006d1a3", "call dword ptr [eax]"], ["0x1006d1a5", "mov eax, dword ptr [ebp - 0x10]"], ["0x1006d1a8", "mov eax, dword ptr [eax + 0x2c]"], ["0x1006d1ab", "test eax, eax"], ["0x1006d1ad", "je 0x13"], ["0x1006d1af", "push eax"], ["0x1006d1b0", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x1006d1b5", "add esp, 4"], ["0x1006d1b8", "mov eax, dword ptr [ebp - 0x10]"], ["0x1006d1bb", "mov dword ptr [eax + 0x2c], 0"], ["0x1006d1c2", "xor esi, esi"], ["0x1006d1c4", "mov eax, dword ptr [ebp - 0x10]"], ["0x1006d1c7", "cmp dword ptr [eax + 0x5c], esi"], ["0x1006d1ca", "je 0x39"], ["0x1006d1cc", "mov ecx, dword ptr [eax + 0x58]"], ["0x1006d1cf", "mov eax, dword ptr [ecx]"], ["0x1006d1d1", "lea ecx, [ebp - 0x1c]"]]}, {"both": [["0x100c132e", "push eax", "0x1006d1d4"], ["0x100c132f", "push ecx", "0x1006d1d5"], ["0x100c1330", "mov edx, dword ptr [eax + 8]", "0x1006d1d6"], ["0x100c1333", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d1d9"]]}, {"orig": [["0x100c1336", "add ecx, 0x3c"]], "recomp": [["0x1006d1dc", "add ecx, 0x54"]]}, {"both": [["0x100c1339", "mov dword ptr [ebp - 0x14], edx", "0x1006d1df"], ["0x100c133c", "call list<MxDSAction *,allocator<MxDSAction *> >::erase (FUNCTION)", "0x1006d1e2"], ["0x100c1341", "cmp dword ptr [ebp - 0x14], esi", "0x1006d1e7"], ["0x100c1344", "je -0x28", "0x1006d1ea"], ["0x100c1346", "push 1", "0x1006d1ec"], ["0x100c1348", "mov eax, dword ptr [ebp - 0x14]", "0x1006d1ee"], ["0x100c134b", "mov ecx, dword ptr [ebp - 0x14]", "0x1006d1f1"], ["0x100c134e", "mov eax, dword ptr [eax]", "0x1006d1f4"], ["0x100c1350", "call dword ptr [eax]", "0x1006d1f6"], ["0x100c1352", "jmp -0x36", "0x1006d1f8"]]}, {"orig": [["0x100c1354", "mov eax, dword ptr [ebp - 0x10]"], ["0x100c1357", "mov eax, dword ptr [eax + 0x28]"], ["0x100c135a", "test eax, eax"], ["0x100c135c", "je 0x47"], ["0x100c135e", "mov dword ptr [ebp - 0x14], eax"], ["0x100c1361", "mov eax, dword ptr [ebp - 0x10]"], ["0x100c1364", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100c1367", "mov dword ptr [eax + 0x28], 0"], ["0x100c136e", "mov edx, dword ptr [ecx]"], ["0x100c1370", "lea ecx, [ebp - 0xb0]"], ["0x100c1376", "mov dword ptr [ebp - 0x18], edx"], ["0x100c1379", "call MxDSAction::MxDSAction (FUNCTION)"], ["0x100c137e", "push eax"], ["0x100c137f", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100c1382", "mov esi, dword ptr [ebp - 0x18]"], ["0x100c1385", "mov byte ptr [ebp - 4], 8"], ["0x100c1389", "call dword ptr [esi + 0x20]"], ["0x100c138c", "mov byte ptr [ebp - 4], 7"], ["0x100c1390", "call <OFFSET7>"], ["0x100c1395", "cmp dword ptr [ebp - 0x14], 0"], ["0x100c1399", "je 0xa"], ["0x100c139b", "mov eax, dword ptr [ebp - 0x18]"], ["0x100c139e", "push 1"], ["0x100c13a0", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100c13a3", "call dword ptr [eax]"], ["0x100c13a5", "mov eax, dword ptr [ebp - 0x10]"], ["0x100c13a8", "mov eax, dword ptr [eax + 0x2c]"], ["0x100c13ab", "test eax, eax"], ["0x100c13ad", "je 0x13"], ["0x100c13af", "push eax"], ["0x100c13b0", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100c13b5", "add esp, 4"], ["0x100c13b8", "mov eax, dword ptr [ebp - 0x10]"], ["0x100c13bb", "mov dword ptr [eax + 0x2c], 0"], ["0x100c13c2", "mov eax, dword ptr [ebp - 0x10]"], ["0x100c13c5", "cmp dword ptr [eax + 0x5c], 0"], ["0x100c13c9", "je 0x46"], ["0x100c13cb", "mov ecx, dword ptr [eax + 0x58]"], ["0x100c13ce", "mov eax, dword ptr [ecx]"], ["0x100c13d0", "mov dword ptr [ebp - 0x14], eax"], ["0x100c13d3", "mov esi, dword ptr [eax + 8]"], ["0x100c13d6", "lea edx, [eax + 4]"], ["0x100c13d9", "mov eax, dword ptr [eax]"], ["0x100c13db", "mov ecx, dword ptr [edx]"], ["0x100c13dd", "mov dword ptr [ecx], eax"], ["0x100c13df", "mov ecx, dword ptr [edx]"], ["0x100c13e1", "mov eax, dword ptr [ebp - 0x14]"], ["0x100c13e4", "push eax"], ["0x100c13e5", "mov edx, dword ptr [eax]"], ["0x100c13e7", "mov dword ptr [edx + 4], ecx"], ["0x100c13ea", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x100c13ef", "add esp, 4"], ["0x100c13f2", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100c13f5", "dec dword ptr [ecx + 0x5c]"], ["0x100c13f8", "test esi, esi"], ["0x100c13fa", "je -0x3a"], ["0x100c13fc", "push 1"], ["0x100c13fe", "mov eax, dword ptr [esi]"], ["0x100c1400", "mov ecx, esi"], ["0x100c1402", "call dword ptr [eax]"], ["0x100c1404", "jmp -0x44"], ["0x100c1406", "lea ecx, [ebp - 0xb0]"]], "recomp": [["0x1006d1fa", "lea ecx, [ebp - 0xb4]"]]}, {"both": [["0x100c140c", "jmp MxDSAction::~MxDSAction (FUNCTION)", "0x1006d200"], ["0x100c1411", "mov byte ptr [ebp - 4], 6", "0x1006d205"]]}, {"orig": [["0x100c1415", "call <OFFSET9>"]], "recomp": [["0x1006d209", "call <OFFSET10>"]]}, {"both": [["0x100c141a", "mov byte ptr [ebp - 4], 5", "0x1006d20e"]]}, {"orig": [["0x100c141e", "call <OFFSET10>"]], "recomp": [["0x1006d212", "call <OFFSET11>"]]}, {"both": [["0x100c1423", "mov byte ptr [ebp - 4], 4", "0x1006d217"]]}, {"orig": [["0x100c1427", "call <OFFSET11>"]], "recomp": [["0x1006d21b", "call <OFFSET12>"]]}, {"both": [["0x100c142c", "mov byte ptr [ebp - 4], 3", "0x1006d220"]]}, {"orig": [["0x100c1430", "call <OFFSET12>"]], "recomp": [["0x1006d224", "call <OFFSET13>"]]}, {"both": [["0x100c1435", "mov byte ptr [ebp - 4], 2", "0x1006d229"]]}, {"orig": [["0x100c1439", "call <OFFSET13>"]], "recomp": [["0x1006d22d", "call <OFFSET14>"]]}, {"both": [["0x100c143e", "mov byte ptr [ebp - 4], 1", "0x1006d232"]]}, {"orig": [["0x100c1442", "call <OFFSET14>"]], "recomp": [["0x1006d236", "call <OFFSET15>"]]}, {"both": [["0x100c1447", "mov byte ptr [ebp - 4], 0", "0x1006d23b"]]}, {"orig": [["0x100c144b", "call <OFFSET15>"]], "recomp": [["0x1006d23f", "call <OFFSET16>"]]}, {"both": [["0x100c1450", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006d244"]]}, {"orig": [["0x100c1457", "call <OFFSET16>"]], "recomp": [["0x1006d24b", "call <OFFSET17>"]]}, {"both": [["0x100c145c", "mov eax, dword ptr [ebp - 0xc]", "0x1006d250"], ["0x100c145f", "pop esi", "0x1006d253"], ["0x100c1460", "mov dword ptr fs:[0], eax", "0x1006d254"], ["0x100c1466", "mov esp, ebp", "0x1006d25a"], ["0x100c1468", "pop ebp", "0x1006d25c"], ["0x100c1469", "ret ", "0x1006d25d"]]}, {"orig": [["0x100c146a", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x1006d25e", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100c146d", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x1006d261"], ["0x100c1472", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d266"], ["0x100c1475", "add ecx, 0x54", "0x1006d269"], ["0x100c1478", "jmp MxStreamListMxDSAction::~MxStreamListMxDSAction (FUNCTION)", "0x1006d26c"], ["0x100c147d", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d271"], ["0x100c1480", "add ecx, 0x48", "0x1006d274"], ["0x100c1483", "jmp MxStreamListMxNextActionDataStart::~MxStreamListMxNextActionDataStart (FUNCTION)", "0x1006d277"], ["0x100c1488", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d27c"], ["0x100c148b", "add ecx, 0x3c", "0x1006d27f"], ["0x100c148e", "jmp MxStreamListMxDSAction::~MxStreamListMxDSAction (FUNCTION)", "0x1006d282"], ["0x100c1493", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d287"], ["0x100c1496", "add ecx, 0x30", "0x1006d28a"], ["0x100c1499", "jmp MxStreamListMxDSSubscriber::~MxStreamListMxDSSubscriber (FUNCTION)", "0x1006d28d"], ["0x100c149e", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d292"], ["0x100c14a1", "add ecx, 0x24", "0x1006d295"], ["0x100c14a4", "jmp MxAtomId::~MxAtomId (FUNCTION)", "0x1006d298"], ["0x100c14a9", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d29d"], ["0x100c14ac", "add ecx, 8", "0x1006d2a0"], ["0x100c14af", "jmp MxCriticalSection::~MxCriticalSection (FUNCTION)", "0x1006d2a3"]]}, {"orig": [["0x100c14b4", "mov eax, <OFFSET23>"]], "recomp": [["0x1006d2a8", "mov eax, <OFFSET24>"]]}, {"both": [["0x100c14b9", "jmp ___CxxFrameHandler (FUNCTION)", "0x1006d2ad"], ["0x100c14be", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d2b2"], ["0x100c14c1", "jmp MxCore::~MxCore (FUNCTION)", "0x1006d2b5"]]}, {"orig": [["0x100c14c6", "int3 "], ["0x100c14c7", "int3 "], ["0x100c14c8", "int3 "], ["0x100c14c9", "int3 "], ["0x100c14ca", "int3 "], ["0x100c14cb", "int3 "], ["0x100c14cc", "int3 "], ["0x100c14cd", "int3 "], ["0x100c14ce", "int3 "], ["0x100c14cf", "int3 "], ["0x100c14d0", "mov eax, dword ptr [esp + 8]"], ["0x100c14d4", "sub esp, 4"], ["0x100c14d7", "push esi"]], "recomp": []}]]]}, {"address": "0x100c14d0", "recomp": "0x1006d2e0", "name": "list<MxDSAction *,allocator<MxDSAction *> >::erase", "matching": 1.0, "diff": []}, {"address": "0x100c1520", "recomp": "0x1006d330", "name": "MxStreamController::Open", "matching": 1.0, "diff": []}, {"address": "0x100c15d0", "recomp": "0x1006d3e0", "name": "MxStreamController::AddSubscriber", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c15d0,31 +0x1006d3e0,31 @@", [{"both": [["0x100c15d0", "sub esp, 4", "0x1006d3e0"], ["0x100c15d3", "push ebx", "0x1006d3e3"], ["0x100c15d4", "push esi", "0x1006d3e4"], ["0x100c15d5", "mov eax, dword ptr [ecx + 0x34]", "0x1006d3e5"], ["0x100c15d8", "push edi", "0x1006d3e8"]]}, {"orig": [["0x100c15d9", "lea ebx, [eax + 4]"]], "recomp": [["0x1006d3e9", "lea edi, [eax + 4]"]]}, {"both": [["0x100c15dc", "mov dword ptr [esp + 0xc], eax", "0x1006d3ec"], ["0x100c15e0", "mov esi, ecx", "0x1006d3f0"], ["0x100c15e2", "push 0xc", "0x1006d3f2"]]}, {"orig": [["0x100c15e4", "mov edi, dword ptr [ebx]"]], "recomp": [["0x1006d3f4", "mov ebx, dword ptr [edi]"]]}, {"both": [["0x100c15e6", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006d3f6"], ["0x100c15eb", "add esp, 4", "0x1006d3fb"]]}, {"orig": [["0x100c15ee", "test edi, edi"]], "recomp": [["0x1006d3fe", "test ebx, ebx"]]}, {"both": [["0x100c15f0", "je 0xb", "0x1006d400"], ["0x100c15f2", "mov ecx, dword ptr [esp + 0xc]", "0x1006d402"], ["0x100c15f6", "mov dword ptr [eax], ecx", "0x1006d406"]]}, {"orig": [["0x100c15f8", "mov dword ptr [eax + 4], edi"]], "recomp": [["0x1006d408", "mov dword ptr [eax + 4], ebx"]]}, {"both": [["0x100c15fb", "jmp 0x5", "0x1006d40b"], ["0x100c15fd", "mov dword ptr [eax], eax", "0x1006d40d"], ["0x100c15ff", "mov dword ptr [eax + 4], eax", "0x1006d40f"]]}, {"orig": [["0x100c1602", "mov dword ptr [ebx], eax"]], "recomp": [["0x1006d412", "mov dword ptr [edi], eax"]]}, {"both": [["0x100c1604", "mov ecx, dword ptr [eax + 4]", "0x1006d414"], ["0x100c1607", "mov dword ptr [ecx], eax", "0x1006d417"], ["0x100c1609", "add eax, 8", "0x1006d419"], ["0x100c160c", "je 0x6", "0x1006d41c"], ["0x100c160e", "mov ecx, dword ptr [esp + 0x14]", "0x1006d41e"], ["0x100c1612", "mov dword ptr [eax], ecx", "0x1006d422"], ["0x100c1614", "pop edi", "0x1006d424"], ["0x100c1615", "inc dword ptr [esi + 0x38]", "0x1006d425"], ["0x100c1618", "pop esi", "0x1006d428"], ["0x100c1619", "pop ebx", "0x1006d429"]]}]]]}, {"address": "0x100c1620", "recomp": "0x1006d430", "name": "MxStreamController::RemoveSubscriber", "matching": 1.0, "diff": []}, {"address": "0x100c1690", "recomp": "0x1006d4a0", "name": "MxStreamController::VTable0x20", "matching": 1.0, "diff": []}, {"address": "0x100c1740", "recomp": "0x1006d550", "name": "MxStreamController::VTable0x24", "matching": 1.0, "diff": []}, {"address": "0x100c1800", "recomp": "0x1006d610", "name": "MxStreamController::FUN_100c1800", "matching": 0.9146341463414634, "diff": [["@@ -0x100c1835,59 +0x1006d645,59 @@", [{"both": [["0x100c1835", "mov esi, eax", "0x1006d645"], ["0x100c1837", "test esi, esi", "0x1006d647"], ["0x100c1839", "je 0x38", "0x1006d649"], ["0x100c183b", "mov eax, dword ptr [ebp + 8]", "0x1006d64b"], ["0x100c183e", "mov ecx, esi", "0x1006d64e"], ["0x100c1840", "mov di, word ptr [eax + 0x24]", "0x1006d650"], ["0x100c1844", "mov ebx, dword ptr [eax + 0x1c]", "0x1006d654"], ["0x100c1847", "call MxCore::MxCore (FUNCTION)", "0x1006d657"], ["0x100c184c", "mov byte ptr [ebp - 4], 1", "0x1006d65c"], ["0x100c1850", "mov eax, dword ptr [ebp + 0xc]", "0x1006d660"]]}, {"orig": [], "recomp": [["0x1006d663", "mov dword ptr [esi], MxNextActionDataStart::`vftable' (VTABLE)"], ["0x1006d669", "mov byte ptr [ebp - 4], 0"]]}, {"both": [["0x100c1853", "mov dword ptr [esi + 8], ebx", "0x1006d66d"]]}, {"orig": [["0x100c1856", "mov byte ptr [ebp - 4], 0"]], "recomp": []}, {"both": [["0x100c185a", "mov word ptr [esi + 0xc], di", "0x1006d670"], ["0x100c185e", "mov edi, esi", "0x1006d674"], ["0x100c1860", "mov dword ptr [esi + 0x10], eax", "0x1006d676"]]}, {"orig": [["0x100c1863", "mov dword ptr [esi], MxNextActionDataStart::`vftable' (VTABLE)"]], "recomp": []}, {"both": [["0x100c1869", "jmp 0xa", "0x1006d679"], ["0x100c186b", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d67b"], ["0x100c186e", "jmp MxCore::~MxCore (FUNCTION)", "0x1006d67e"], ["0x100c1873", "xor edi, edi", "0x1006d683"], ["0x100c1875", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006d685"], ["0x100c187c", "test edi, edi", "0x1006d68c"], ["0x100c187e", "jne 0x18", "0x1006d68e"], ["0x100c1880", "mov eax, 0xffffffff", "0x1006d690"], ["0x100c1885", "mov ecx, dword ptr [ebp - 0xc]", "0x1006d695"], ["0x100c1888", "pop edi", "0x1006d698"], ["0x100c1889", "mov dword ptr fs:[0], ecx", "0x1006d699"], ["0x100c1890", "pop esi", "0x1006d6a0"], ["0x100c1891", "pop ebx", "0x1006d6a1"], ["0x100c1892", "mov esp, ebp", "0x1006d6a2"], ["0x100c1894", "pop ebp", "0x1006d6a4"], ["0x100c1895", "ret 8", "0x1006d6a5"], ["0x100c1898", "mov eax, dword ptr [ebp - 0x14]", "0x1006d6a8"], ["0x100c189b", "push 0xc", "0x1006d6ab"], ["0x100c189d", "mov ecx, dword ptr [eax + 0x4c]", "0x1006d6ad"], ["0x100c18a0", "mov dword ptr [ebp - 0x10], ecx", "0x1006d6b0"]]}, {"orig": [["0x100c18a3", "lea esi, [ecx + 4]"], ["0x100c18a6", "mov ebx, dword ptr [esi]"]], "recomp": [["0x1006d6b3", "lea ebx, [ecx + 4]"], ["0x1006d6b6", "mov esi, dword ptr [ebx]"]]}, {"both": [["0x100c18a8", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006d6b8"], ["0x100c18ad", "add esp, 4", "0x1006d6bd"]]}, {"orig": [["0x100c18b0", "test ebx, ebx"]], "recomp": [["0x1006d6c0", "test esi, esi"]]}, {"both": [["0x100c18b2", "je 0xa", "0x1006d6c2"], ["0x100c18b4", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d6c4"], ["0x100c18b7", "mov dword ptr [eax], ecx", "0x1006d6c7"]]}, {"orig": [["0x100c18b9", "mov dword ptr [eax + 4], ebx"]], "recomp": [["0x1006d6c9", "mov dword ptr [eax + 4], esi"]]}, {"both": [["0x100c18bc", "jmp 0x5", "0x1006d6cc"], ["0x100c18be", "mov dword ptr [eax], eax", "0x1006d6ce"], ["0x100c18c0", "mov dword ptr [eax + 4], eax", "0x1006d6d0"]]}, {"orig": [["0x100c18c3", "mov dword ptr [esi], eax"]], "recomp": [["0x1006d6d3", "mov dword ptr [ebx], eax"]]}, {"both": [["0x100c18c5", "mov ecx, dword ptr [eax + 4]", "0x1006d6d5"], ["0x100c18c8", "mov dword ptr [ecx], eax", "0x1006d6d8"], ["0x100c18ca", "add eax, 8", "0x1006d6da"], ["0x100c18cd", "je 0x2", "0x1006d6dd"], ["0x100c18cf", "mov dword ptr [eax], edi", "0x1006d6df"], ["0x100c18d1", "mov eax, dword ptr [ebp - 0x14]", "0x1006d6e1"], ["0x100c18d4", "inc dword ptr [eax + 0x50]", "0x1006d6e4"], ["0x100c18d7", "xor eax, eax", "0x1006d6e7"], ["0x100c18d9", "jmp -0x56", "0x1006d6e9"], ["0x100c18db", "mov eax, <OFFSET6>", "0x1006d6eb"]]}]]]}, {"address": "0x100c1900", "recomp": "0x1006d710", "name": "MxNextActionDataStart::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c1910", "recomp": "0x1006d720", "name": "MxNextActionDataStart::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c1990", "recomp": "0x1006d7a0", "name": "MxNextActionDataStart::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c1a00", "recomp": "0x1006d810", "name": "MxStreamController::FUN_100c1a00", "matching": 0.47560975609756095, "diff": [["@@ -0x100c1a00,165 +0x1006d810,163 @@", [{"both": [["0x100c1a00", "mov eax, dword ptr fs:[0]", "0x1006d810"], ["0x100c1a06", "push ebp", "0x1006d816"], ["0x100c1a07", "mov ebp, esp", "0x1006d817"], ["0x100c1a09", "push -1", "0x1006d819"], ["0x100c1a0b", "push <OFFSET1>", "0x1006d81b"], ["0x100c1a10", "push eax", "0x1006d820"], ["0x100c1a11", "mov dword ptr fs:[0], esp", "0x1006d821"]]}, {"orig": [["0x100c1a18", "sub esp, 0xc"], ["0x100c1a1b", "mov dword ptr [ebp - 0x14], ecx"]], "recomp": [["0x1006d828", "sub esp, 8"]]}, {"both": [["0x100c1a1e", "push ebx", "0x1006d82b"], ["0x100c1a1f", "push esi", "0x1006d82c"], ["0x100c1a20", "push edi", "0x1006d82d"]]}, {"orig": [["0x100c1a21", "mov esi, dword ptr [ebp + 8]"], ["0x100c1a24", "cmp word ptr [esi + 0x24], -1"], ["0x100c1a29", "jne 0xd6"]], "recomp": [["0x1006d82e", "mov esi, ecx"], ["0x1006d830", "mov edi, dword ptr [ebp + 8]"], ["0x1006d833", "cmp word ptr [edi + 0x24], -1"], ["0x1006d838", "jne 0xe1"]]}, {"both": [["0x100c1a2f", "mov cx, 0xffff", "0x1006d83e"]]}, {"orig": [["0x100c1a33", "mov eax, dword ptr [ebp - 0x14]"], ["0x100c1a36", "mov edx, dword ptr [eax + 0x58]"], ["0x100c1a39", "mov ebx, dword ptr [edx]"], ["0x100c1a3b", "mov edi, ebx"], ["0x100c1a3d", "cmp ebx, edx"], ["0x100c1a3f", "je 0x20"], ["0x100c1a41", "mov ebx, dword ptr [edi + 8]"], ["0x100c1a44", "mov eax, dword ptr [esi + 0x1c]"]], "recomp": [["0x1006d842", "mov edx, dword ptr [esi + 0x58]"], ["0x1006d845", "mov eax, dword ptr [edx]"], ["0x1006d847", "mov dword ptr [ebp - 0x10], eax"], ["0x1006d84a", "cmp eax, edx"], ["0x1006d84c", "je 0x29"], ["0x1006d84e", "mov eax, dword ptr [edi + 0x1c]"], ["0x1006d851", "mov ebx, dword ptr [ebp - 0x10]"], ["0x1006d854", "mov ebx, dword ptr [ebx + 8]"]]}, {"both": [["0x100c1a47", "cmp dword ptr [ebx + 0x1c], eax", "0x1006d857"], ["0x100c1a4a", "jne 0xf", "0x1006d85a"]]}, {"orig": [["0x100c1a4c", "mov ax, word ptr [ebx + 0x24]"]], "recomp": [["0x1006d85c", "mov bx, word ptr [ebx + 0x24]"], ["0x1006d860", "cmp bx, cx"], ["0x1006d863", "jg 0x3"], ["0x1006d865", "mov bx, cx"], ["0x1006d868", "mov cx, bx"], ["0x1006d86b", "mov ebx, dword ptr [ebp - 0x10]"], ["0x1006d86e", "mov ebx, dword ptr [ebx]"], ["0x1006d870", "mov dword ptr [ebp - 0x10], ebx"], ["0x1006d873", "cmp ebx, edx"], ["0x1006d875", "jne -0x26"], ["0x1006d877", "cmp cx, -1"], ["0x1006d87b", "jne 0x70"], ["0x1006d87d", "mov edx, dword ptr [esi + 0x40]"], ["0x1006d880", "mov eax, dword ptr [edx]"], ["0x1006d882", "mov dword ptr [ebp - 0x10], eax"], ["0x1006d885", "cmp eax, edx"], ["0x1006d887", "je 0x29"], ["0x1006d889", "mov ebx, dword ptr [edi + 0x1c]"], ["0x1006d88c", "mov eax, dword ptr [ebp - 0x10]"], ["0x1006d88f", "mov eax, dword ptr [eax + 8]"], ["0x1006d892", "cmp dword ptr [eax + 0x1c], ebx"], ["0x1006d895", "jne 0xf"], ["0x1006d897", "mov ax, word ptr [eax + 0x24]"]]}, {"both": [["0x100c1a50", "cmp ax, cx", "0x1006d89b"], ["0x100c1a53", "jg 0x3", "0x1006d89e"], ["0x100c1a55", "mov ax, cx", "0x1006d8a0"], ["0x100c1a58", "mov cx, ax", "0x1006d8a3"]]}, {"orig": [["0x100c1a5b", "mov edi, dword ptr [edi]"], ["0x100c1a5d", "cmp edi, edx"], ["0x100c1a5f", "jne -0x20"]], "recomp": [["0x1006d8a6", "mov eax, dword ptr [ebp - 0x10]"], ["0x1006d8a9", "mov eax, dword ptr [eax]"], ["0x1006d8ab", "mov dword ptr [ebp - 0x10], eax"], ["0x1006d8ae", "cmp eax, edx"], ["0x1006d8b0", "jne -0x26"]]}, {"both": [["0x100c1a61", "cmp cx, -1", "0x1006d8b2"]]}, {"orig": [["0x100c1a65", "jne 0x6c"], ["0x100c1a67", "mov eax, dword ptr [ebp - 0x14]"], ["0x100c1a6a", "mov edx, dword ptr [eax + 0x40]"], ["0x100c1a6d", "mov ebx, dword ptr [edx]"], ["0x100c1a6f", "mov edi, ebx"], ["0x100c1a71", "cmp ebx, edx"], ["0x100c1a73", "je 0x20"], ["0x100c1a75", "mov ebx, dword ptr [edi + 8]"], ["0x100c1a78", "mov eax, dword ptr [esi + 0x1c]"], ["0x100c1a7b", "cmp dword ptr [ebx + 0x1c], eax"], ["0x100c1a7e", "jne 0xf"], ["0x100c1a80", "mov ax, word ptr [ebx + 0x24]"], ["0x100c1a84", "cmp ax, cx"], ["0x100c1a87", "jg 0x3"], ["0x100c1a89", "mov ax, cx"], ["0x100c1a8c", "mov cx, ax"], ["0x100c1a8f", "mov edi, dword ptr [edi]"], ["0x100c1a91", "cmp edi, edx"], ["0x100c1a93", "jne -0x20"], ["0x100c1a95", "cmp cx, -1"], ["0x100c1a99", "jne 0x38"], ["0x100c1a9b", "mov eax, dword ptr [ebp - 0x14]"], ["0x100c1a9e", "mov edx, dword ptr [eax + 0x34]"], ["0x100c1aa1", "mov ebx, dword ptr [edx]"], ["0x100c1aa3", "mov dword ptr [ebp - 0x10], ebx"], ["0x100c1aa6", "cmp ebx, edx"]], "recomp": [["0x1006d8b6", "jne 0x35"], ["0x1006d8b8", "mov edx, dword ptr [esi + 0x34]"], ["0x1006d8bb", "mov eax, dword ptr [edx]"], ["0x1006d8bd", "mov dword ptr [ebp - 0x10], eax"], ["0x1006d8c0", "cmp eax, edx"]]}, {"both": [["0x100c1aa8", "je 0x29", "0x1006d8c2"]]}, {"orig": [["0x100c1aaa", "mov edi, dword ptr [esi + 0x1c]"]], "recomp": [["0x1006d8c4", "mov ebx, dword ptr [edi + 0x1c]"]]}, {"both": [["0x100c1aad", "mov eax, dword ptr [ebp - 0x10]", "0x1006d8c7"], ["0x100c1ab0", "mov eax, dword ptr [eax + 8]", "0x1006d8ca"]]}, {"orig": [["0x100c1ab3", "cmp dword ptr [eax + 0x44], edi"]], "recomp": [["0x1006d8cd", "cmp dword ptr [eax + 0x44], ebx"]]}, {"both": [["0x100c1ab6", "jne 0xf", "0x1006d8d0"], ["0x100c1ab8", "mov ax, word ptr [eax + 0x48]", "0x1006d8d2"], ["0x100c1abc", "cmp ax, cx", "0x1006d8d6"], ["0x100c1abf", "jg 0x3", "0x1006d8d9"], ["0x100c1ac1", "mov ax, cx", "0x1006d8db"], ["0x100c1ac4", "mov cx, ax", "0x1006d8de"], ["0x100c1ac7", "mov eax, dword ptr [ebp - 0x10]", "0x1006d8e1"]]}, {"orig": [["0x100c1aca", "mov ebx, dword ptr [eax]"], ["0x100c1acc", "mov dword ptr [ebp - 0x10], ebx"], ["0x100c1acf", "cmp ebx, edx"]], "recomp": [["0x1006d8e4", "mov eax, dword ptr [eax]"], ["0x1006d8e6", "mov dword ptr [ebp - 0x10], eax"], ["0x1006d8e9", "cmp eax, edx"]]}, {"both": [["0x100c1ad1", "jne -0x26", "0x1006d8eb"], ["0x100c1ad3", "inc cx", "0x1006d8ed"]]}, {"orig": [["0x100c1ad5", "mov word ptr [esi + 0x24], cx"]], "recomp": [["0x1006d8ef", "mov word ptr [edi + 0x24], cx"]]}, {"both": [["0x100c1ad9", "push 0xb4", "0x1006d8f3"], ["0x100c1ade", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006d8f8"], ["0x100c1ae3", "add esp, 4", "0x1006d8fd"], ["0x100c1ae6", "mov dword ptr [ebp - 0x10], eax", "0x1006d900"], ["0x100c1ae9", "mov dword ptr [ebp - 4], 0", "0x1006d903"], ["0x100c1af0", "test eax, eax", "0x1006d90a"]]}, {"orig": [["0x100c1af2", "je 0x3b"]], "recomp": [["0x1006d90c", "je 0x38"]]}, {"both": [["0x100c1af4", "mov eax, dword ptr [ebp + 0xc]", "0x1006d90e"], ["0x100c1af7", "mov ecx, dword ptr [ebp - 0x10]", "0x1006d911"], ["0x100c1afa", "push eax", "0x1006d914"]]}, {"orig": [["0x100c1afb", "push esi"]], "recomp": [["0x1006d915", "push edi"]]}, {"both": [["0x100c1afc", "call MxDSStreamingAction::MxDSStreamingAction (FUNCTION)", "0x1006d916"]]}, {"orig": [["0x100c1b01", "mov edi, eax"], ["0x100c1b03", "jmp 0x2c"]], "recomp": [["0x1006d91b", "mov ebx, eax"], ["0x1006d91d", "jmp 0x29"]]}, {"both": [["0x100c1b05", "push 0", "0x1006d91f"]]}, {"orig": [["0x100c1b07", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100c1b0a", "push esi"], ["0x100c1b0b", "add ecx, 0x3c"]], "recomp": [["0x1006d921", "lea ecx, [esi + 0x3c]"], ["0x1006d924", "push edi"]]}, {"both": [["0x100c1b0e", "call MxStreamListMxDSAction::Find (FUNCTION)", "0x1006d925"], ["0x100c1b13", "test eax, eax", "0x1006d92a"]]}, {"orig": [["0x100c1b15", "je -0x3e"]], "recomp": [["0x1006d92c", "je -0x3b"]]}, {"both": [["0x100c1b17", "mov eax, 0xffffffff", "0x1006d92e"], ["0x100c1b1c", "mov ecx, dword ptr [ebp - 0xc]", "0x1006d933"], ["0x100c1b1f", "pop edi", "0x1006d936"], ["0x100c1b20", "mov dword ptr fs:[0], ecx", "0x1006d937"], ["0x100c1b27", "pop esi", "0x1006d93e"], ["0x100c1b28", "pop ebx", "0x1006d93f"], ["0x100c1b29", "mov esp, ebp", "0x1006d940"], ["0x100c1b2b", "pop ebp", "0x1006d942"], ["0x100c1b2c", "ret 8", "0x1006d943"]]}, {"orig": [["0x100c1b2f", "xor edi, edi"]], "recomp": [["0x1006d946", "xor ebx, ebx"]]}, {"both": [["0x100c1b31", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006d948"]]}, {"orig": [["0x100c1b38", "test edi, edi"]], "recomp": [["0x1006d94f", "test ebx, ebx"]]}, {"both": [["0x100c1b3a", "je -0x25", "0x1006d951"]]}, {"orig": [["0x100c1b3c", "mov eax, dword ptr [ebp - 0x14]"], ["0x100c1b3f", "mov ecx, dword ptr [eax + 0x28]"], ["0x100c1b42", "mov ebx, dword ptr [ecx]"], ["0x100c1b44", "call dword ptr [ebx + 0x18]"]], "recomp": [["0x1006d953", "mov ecx, dword ptr [esi + 0x28]"], ["0x1006d956", "mov eax, dword ptr [ecx]"], ["0x1006d958", "call dword ptr [eax + 0x18]"]]}, {"both": [["0x100c1b47", "mov ecx, eax", "0x1006d95b"], ["0x100c1b49", "sub edx, edx", "0x1006d95d"], ["0x100c1b4b", "mov eax, dword ptr [ebp + 0xc]", "0x1006d95f"], ["0x100c1b4e", "div ecx", "0x1006d962"], ["0x100c1b50", "imul eax, ecx", "0x1006d964"]]}, {"orig": [["0x100c1b53", "mov dword ptr [edi + 0x98], eax"], ["0x100c1b59", "mov ecx, dword ptr [esi + 0x1c]"], ["0x100c1b5c", "mov dword ptr [edi + 0x1c], ecx"]], "recomp": [["0x1006d967", "mov dword ptr [ebx + 0x98], eax"], ["0x1006d96d", "mov ecx, dword ptr [edi + 0x1c]"], ["0x1006d970", "mov dword ptr [ebx + 0x1c], ecx"]]}, {"both": [["0x100c1b5f", "call Timer (FUNCTION)", "0x1006d973"], ["0x100c1b64", "cmp byte ptr [eax + 0xc], 0", "0x1006d978"], ["0x100c1b68", "je 0x8", "0x1006d97c"], ["0x100c1b6a", "mov ecx, dword ptr [MxTimer::g_lastTimeTimerStarted (DATA)]", "0x1006d97e"], ["0x100c1b70", "jmp 0x9", "0x1006d984"], ["0x100c1b72", "mov ecx, dword ptr [MxTimer::g_lastTimeCalculated (DATA)]", "0x1006d986"], ["0x100c1b78", "sub ecx, dword ptr [eax + 8]", "0x1006d98c"], ["0x100c1b7b", "push ecx", "0x1006d98f"]]}, {"orig": [["0x100c1b7c", "mov eax, dword ptr [edi]"], ["0x100c1b7e", "mov ecx, edi"]], "recomp": [["0x1006d990", "mov eax, dword ptr [ebx]"], ["0x1006d992", "mov ecx, ebx"]]}, {"both": [["0x100c1b80", "call dword ptr [eax + 0x38]", "0x1006d994"]]}, {"orig": [["0x100c1b83", "mov dword ptr [ebp - 0x18], edi"], ["0x100c1b86", "lea edi, [ebp - 0x18]"], ["0x100c1b89", "mov eax, dword ptr [ebp - 0x14]"], ["0x100c1b8c", "push edi"], ["0x100c1b8d", "mov ecx, dword ptr [eax + 0x40]"], ["0x100c1b90", "lea eax, [ebp - 0x14]"]], "recomp": [["0x1006d997", "mov eax, dword ptr [esi + 0x40]"], ["0x1006d99a", "mov dword ptr [ebp - 0x14], ebx"], ["0x1006d99d", "lea edi, [eax + 4]"], ["0x1006d9a0", "mov ecx, dword ptr [edi]"]]}, {"both": [["0x100c1b93", "push ecx", "0x1006d9a2"], ["0x100c1b94", "push eax", "0x1006d9a3"]]}, {"orig": [["0x100c1b95", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100c1b98", "add ecx, 0x3c"], ["0x100c1b9b", "call <OFFSET8>"]], "recomp": [["0x1006d9a4", "lea ecx, [esi + 0x3c]"], ["0x1006d9a7", "call list<MxDSAction *,allocator<MxDSAction *> >::_Buynode (FUNCTION)"], ["0x1006d9ac", "mov ecx, eax"], ["0x1006d9ae", "mov dword ptr [edi], eax"], ["0x1006d9b0", "mov edx, dword ptr [ecx + 4]"], ["0x1006d9b3", "mov dword ptr [edx], ecx"], ["0x1006d9b5", "add ecx, 8"], ["0x1006d9b8", "je 0x5"], ["0x1006d9ba", "mov eax, dword ptr [ebp - 0x14]"], ["0x1006d9bd", "mov dword ptr [ecx], eax"]]}, {"both": [["0x100c1ba0", "xor eax, eax", "0x1006d9bf"]]}, {"orig": [["0x100c1ba2", "jmp -0x8b"]], "recomp": [["0x1006d9c1", "inc dword ptr [esi + 0x44]"], ["0x1006d9c4", "jmp -0x96"]]}, {"both": [["0x100c1ba7", "mov eax, <OFFSET9>", "0x1006d9c9"], ["0x100c1bac", "jmp ___CxxFrameHandler (FUNCTION)", "0x1006d9ce"], ["0x100c1bb1", "mov eax, dword ptr [ebp - 0x10]", "0x1006d9d3"], ["0x100c1bb4", "push eax", "0x1006d9d6"], ["0x100c1bb5", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006d9d7"], ["0x100c1bba", "add esp, 4", "0x1006d9dc"], ["0x100c1bbd", "ret ", "0x1006d9df"]]}, {"orig": [["0x100c1bbe", "int3 "], ["0x100c1bbf", "int3 "], ["0x100c1bc0", "push ebx"], ["0x100c1bc1", "push esi"], ["0x100c1bc2", "push edi"], ["0x100c1bc3", "mov esi, ecx"], ["0x100c1bc5", "mov ebx, dword ptr [esp + 0x14]"], ["0x100c1bc9", "push 0xc"], ["0x100c1bcb", "mov edi, dword ptr [ebx + 4]"]], "recomp": []}]]]}, {"address": "0x100c1c10", "recomp": "0x1006da10", "name": "MxStreamController::VTable0x2c", "matching": 1.0, "diff": []}, {"address": "0x100c1ce0", "recomp": "0x1006dae0", "name": "MxStreamController::VTable0x30", "matching": 1.0, "diff": []}, {"address": "0x100c1da0", "recomp": "0x1006dba0", "name": "MxStreamController::InsertActionToList54", "matching": 1.0, "diff": []}, {"address": "0x100c1e70", "recomp": "0x1006dc70", "name": "MxStreamController::FUN_100c1e70", "matching": 1.0, "diff": []}, {"address": "0x100c1f00", "recomp": "0x1006dd00", "name": "MxStreamController::FUN_100c1f00", "matching": 1.0, "diff": []}, {"address": "0x100c20b0", "recomp": "0x1006deb0", "name": "MxStreamController::FindNextActionDataStartFromStreamingAction", "matching": 1.0, "diff": []}, {"address": "0x100c20d0", "recomp": "0x1006ded0", "name": "MxStreamController::FUN_100c20d0", "matching": 1.0, "diff": []}, {"address": "0x100c21e0", "recomp": "0x1006e100", "name": "MxStreamListMxNextActionDataStart::Find", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c21e0,29 +0x1006e100,29 @@", [{"both": [["0x100c21e0", "sub esp, 4", "0x1006e100"], ["0x100c21e3", "mov edx, dword ptr [ecx + 4]", "0x1006e103"], ["0x100c21e6", "push esi", "0x1006e106"], ["0x100c21e7", "mov eax, dword ptr [edx]", "0x1006e107"], ["0x100c21e9", "mov dword ptr [esp + 4], eax", "0x1006e109"]]}, {"orig": [["0x100c21ed", "cmp edx, eax"]], "recomp": [["0x1006e10d", "cmp eax, edx"]]}, {"both": [["0x100c21ef", "je 0x29", "0x1006e10f"], ["0x100c21f1", "mov si, word ptr [esp + 0x10]", "0x1006e111"], ["0x100c21f6", "mov ecx, dword ptr [esp + 0xc]", "0x1006e116"], ["0x100c21fa", "mov eax, dword ptr [esp + 4]", "0x1006e11a"], ["0x100c21fe", "mov eax, dword ptr [eax + 8]", "0x1006e11e"], ["0x100c2201", "cmp dword ptr [eax + 8], ecx", "0x1006e121"], ["0x100c2204", "jne 0x6", "0x1006e124"], ["0x100c2206", "cmp word ptr [eax + 0xc], si", "0x1006e126"], ["0x100c220a", "je 0x17", "0x1006e12a"], ["0x100c220c", "mov eax, dword ptr [esp + 4]", "0x1006e12c"], ["0x100c2210", "mov eax, dword ptr [eax]", "0x1006e130"], ["0x100c2212", "mov dword ptr [esp + 4], eax", "0x1006e132"]]}, {"orig": [["0x100c2216", "cmp edx, eax"]], "recomp": [["0x1006e136", "cmp eax, edx"]]}, {"both": [["0x100c2218", "jne -0x20", "0x1006e138"], ["0x100c221a", "xor eax, eax", "0x1006e13a"], ["0x100c221c", "pop esi", "0x1006e13c"], ["0x100c221d", "add esp, 4", "0x1006e13d"], ["0x100c2220", "ret 8", "0x1006e140"], ["0x100c2223", "mov eax, dword ptr [esp + 4]", "0x1006e143"], ["0x100c2227", "pop esi", "0x1006e147"], ["0x100c2228", "mov eax, dword ptr [eax + 8]", "0x1006e148"], ["0x100c222b", "add esp, 4", "0x1006e14b"], ["0x100c222e", "ret 8", "0x1006e14e"]]}]]]}, {"address": "0x100c2240", "recomp": "0x1006e160", "name": "MxStreamListMxNextActionDataStart::FindAndErase", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c2240,35 +0x1006e160,35 @@", [{"both": [["0x100c2240", "sub esp, 4", "0x1006e160"], ["0x100c2243", "push ebx", "0x1006e163"], ["0x100c2244", "push esi", "0x1006e164"], ["0x100c2245", "mov edx, dword ptr [ecx + 4]", "0x1006e165"], ["0x100c2248", "push edi", "0x1006e168"], ["0x100c2249", "mov esi, ecx", "0x1006e169"], ["0x100c224b", "xor edi, edi", "0x1006e16b"], ["0x100c224d", "mov eax, dword ptr [edx]", "0x1006e16d"], ["0x100c224f", "mov dword ptr [esp + 0xc], eax", "0x1006e16f"]]}, {"orig": [["0x100c2253", "cmp edx, eax"]], "recomp": [["0x1006e173", "cmp eax, edx"]]}, {"both": [["0x100c2255", "je 0x5d", "0x1006e175"], ["0x100c2257", "mov bx, word ptr [esp + 0x18]", "0x1006e177"], ["0x100c225c", "mov ecx, dword ptr [esp + 0x14]", "0x1006e17c"], ["0x100c2260", "mov eax, dword ptr [esp + 0xc]", "0x1006e180"], ["0x100c2264", "mov eax, dword ptr [eax + 8]", "0x1006e184"], ["0x100c2267", "cmp dword ptr [eax + 8], ecx", "0x1006e187"], ["0x100c226a", "jne 0xc", "0x1006e18a"], ["0x100c226c", "cmp bx, -2", "0x1006e18c"], ["0x100c2270", "je 0x1f", "0x1006e190"], ["0x100c2272", "cmp word ptr [eax + 0xc], bx", "0x1006e192"], ["0x100c2276", "je 0x19", "0x1006e196"], ["0x100c2278", "mov eax, dword ptr [esp + 0xc]", "0x1006e198"], ["0x100c227c", "mov eax, dword ptr [eax]", "0x1006e19c"], ["0x100c227e", "mov dword ptr [esp + 0xc], eax", "0x1006e19e"]]}, {"orig": [["0x100c2282", "cmp edx, eax"]], "recomp": [["0x1006e1a2", "cmp eax, edx"]]}, {"both": [["0x100c2284", "jne -0x26", "0x1006e1a4"], ["0x100c2286", "mov eax, edi", "0x1006e1a6"], ["0x100c2288", "pop edi", "0x1006e1a8"], ["0x100c2289", "pop esi", "0x1006e1a9"], ["0x100c228a", "pop ebx", "0x1006e1aa"], ["0x100c228b", "add esp, 4", "0x1006e1ab"], ["0x100c228e", "ret 8", "0x1006e1ae"], ["0x100c2291", "mov eax, dword ptr [esp + 0xc]", "0x1006e1b1"], ["0x100c2295", "mov edi, dword ptr [eax + 8]", "0x1006e1b5"], ["0x100c2298", "lea edx, [eax + 4]", "0x1006e1b8"]]}]]]}, {"address": "0x100c22c0", "recomp": "0x10071290", "name": "MxMusicPresenter::MxMusicPresenter", "matching": 1.0, "diff": []}, {"address": "0x100c23a0", "recomp": "0x10071370", "name": "MxMusicPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c23b0", "recomp": "0x10071380", "name": "MxMusicPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c24c0", "recomp": "0x10071490", "name": "MxMusicPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c24e0", "recomp": "0x100714b0", "name": "MxMusicPresenter::~MxMusicPresenter", "matching": 1.0, "diff": []}, {"address": "0x100c2540", "recomp": "0x10071510", "name": "MxMusicPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100c2550", "recomp": "0x10071520", "name": "MxMusicPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c25a0", "recomp": "0x10071570", "name": "MxMusicPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x100c25d0", "recomp": "0x100715a0", "name": "MxMusicPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c25e0", "recomp": "0x10070d00", "name": "MxMIDIPresenter::MxMIDIPresenter", "matching": 1.0, "diff": []}, {"address": "0x100c2650", "recomp": "0x10070d70", "name": "MxMIDIPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c2660", "recomp": "0x10070d80", "name": "MxMIDIPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c27a0", "recomp": "0x10070ec0", "name": "MxMIDIPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c27c0", "recomp": "0x10070ee0", "name": "MxMIDIPresenter::~MxMIDIPresenter", "matching": 1.0, "diff": []}, {"address": "0x100c2820", "recomp": "0x10070f40", "name": "MxMIDIPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100c2830", "recomp": "0x10070f50", "name": "MxMIDIPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c2890", "recomp": "0x10070fb0", "name": "MxMIDIPresenter::ReadyTickle", "matching": 1.0, "diff": []}, {"address": "0x100c28d0", "recomp": "0x10070ff0", "name": "MxMIDIPresenter::StartingTickle", "matching": 1.0, "diff": []}, {"address": "0x100c2910", "recomp": "0x10071030", "name": "MxMIDIPresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x100c2940", "recomp": "0x10071060", "name": "MxMIDIPresenter::DoneTickle", "matching": 1.0, "diff": []}, {"address": "0x100c2960", "recomp": "0x10071080", "name": "MxMIDIPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c2970", "recomp": "0x10071090", "name": "MxMIDIPresenter::PutData", "matching": 0.7105263157894737, "diff": [["@@ -0x100c2970,38 +0x10071090,38 @@", [{"both": [["0x100c2970", "push ebx", "0x10071090"], ["0x100c2971", "push esi", "0x10071091"]]}, {"orig": [], "recomp": [["0x10071092", "push edi"]]}, {"both": [["0x100c2972", "lea ebx, [ecx + 0x20]", "0x10071093"]]}, {"orig": [["0x100c2975", "push edi"], ["0x100c2976", "mov esi, ecx"]], "recomp": [["0x10071096", "mov edi, ecx"]]}, {"both": [["0x100c2978", "mov ecx, ebx", "0x10071098"], ["0x100c297a", "call MxCriticalSection::Enter (FUNCTION)", "0x1007109a"]]}, {"orig": [["0x100c297f", "cmp dword ptr [esi + 8], 3"]], "recomp": [["0x1007109f", "cmp dword ptr [edi + 8], 3"]]}, {"both": [["0x100c2983", "jne 0x40", "0x100710a3"]]}, {"orig": [["0x100c2985", "cmp dword ptr [esi + 0x54], 0"]], "recomp": [["0x100710a5", "cmp dword ptr [edi + 0x54], 0"]]}, {"both": [["0x100c2989", "je 0x3a", "0x100710a9"], ["0x100c298b", "call MusicManager (FUNCTION)", "0x100710ab"], ["0x100c2990", "cmp byte ptr [eax + 0x34], 0", "0x100710b0"], ["0x100c2994", "jne 0x2f", "0x100710b4"]]}, {"orig": [["0x100c2996", "mov edi, dword ptr [esi]"], ["0x100c2998", "mov eax, dword ptr [esi + 0x1c]"]], "recomp": [["0x100710b6", "mov esi, dword ptr [edi]"], ["0x100710b8", "mov eax, dword ptr [edi + 0x1c]"]]}, {"both": [["0x100c299b", "mov ecx, dword ptr [eax + 0xbc]", "0x100710bb"], ["0x100c29a1", "push ecx", "0x100710c1"]]}, {"orig": [["0x100c29a2", "mov ecx, esi"], ["0x100c29a4", "call dword ptr [edi + 0x60]"]], "recomp": [["0x100710c2", "mov ecx, edi"], ["0x100710c4", "call dword ptr [esi + 0x60]"]]}, {"both": [["0x100c29a7", "push 1", "0x100710c7"]]}, {"orig": [["0x100c29a9", "mov ecx, dword ptr [esi + 0x54]"]], "recomp": [["0x100710c9", "mov ecx, dword ptr [edi + 0x54]"]]}, {"both": [["0x100c29ac", "mov edx, dword ptr [ecx + 0x18]", "0x100710cc"], ["0x100c29af", "push edx", "0x100710cf"], ["0x100c29b0", "call MusicManager (FUNCTION)", "0x100710d0"], ["0x100c29b5", "mov ecx, eax", "0x100710d5"], ["0x100c29b7", "call MxMusicManager::InitializeMIDI (FUNCTION)", "0x100710d7"], ["0x100c29bc", "test eax, eax", "0x100710dc"], ["0x100c29be", "je 0x5", "0x100710de"]]}, {"orig": [["0x100c29c0", "mov ecx, esi"], ["0x100c29c2", "call dword ptr [edi + 0x40]"]], "recomp": [["0x100710e0", "mov ecx, edi"], ["0x100710e2", "call dword ptr [esi + 0x40]"]]}, {"both": [["0x100c29c5", "mov ecx, ebx", "0x100710e5"], ["0x100c29c7", "call MxCriticalSection::Leave (FUNCTION)", "0x100710e7"], ["0x100c29cc", "xor eax, eax", "0x100710ec"], ["0x100c29ce", "pop edi", "0x100710ee"], ["0x100c29cf", "pop esi", "0x100710ef"], ["0x100c29d0", "pop ebx", "0x100710f0"], ["0x100c29d1", "ret ", "0x100710f1"]]}]]]}, {"address": "0x100c29e0", "recomp": "0x10071100", "name": "MxMIDIPresenter::EndAction", "matching": 1.0, "diff": []}, {"address": "0x100c2a60", "recomp": "0x10071180", "name": "MxMIDIPresenter::SetVolume", "matching": 1.0, "diff": []}, {"address": "0x100c2a80", "recomp": "0x100711a0", "name": "MxLoopingMIDIPresenter::StreamingTickle", "matching": 1.0, "diff": []}, {"address": "0x100c2ae0", "recomp": "0x10071200", "name": "MxLoopingMIDIPresenter::DoneTickle", "matching": 1.0, "diff": []}, {"address": "0x100c2b00", "recomp": "0x10071220", "name": "MxLoopingMIDIPresenter::PutData", "matching": 1.0, "diff": []}, {"address": "0x100c2b70", "recomp": "0x10071f80", "name": "MxEventPresenter::MxEventPresenter", "matching": 1.0, "diff": []}, {"address": "0x100c2c30", "recomp": "0x10072040", "name": "MxEventPresenter::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c2c40", "recomp": "0x10072050", "name": "MxEventPresenter::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c2d20", "recomp": "0x10072130", "name": "MxEventPresenter::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c2d40", "recomp": "0x10072150", "name": "MxEventPresenter::~MxEventPresenter", "matching": 1.0, "diff": []}, {"address": "0x100c2da0", "recomp": "0x100721b0", "name": "MxEventPresenter::Init", "matching": 1.0, "diff": []}, {"address": "0x100c2db0", "recomp": "0x100721c0", "name": "MxEventPresenter::AddToManager", "matching": 1.0, "diff": []}, {"address": "0x100c2de0", "recomp": "0x100721f0", "name": "MxEventPresenter::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c2e30", "recomp": "0x10072240", "name": "MxEventPresenter::CopyData", "matching": 1.0, "diff": []}, {"address": "0x100c2e70", "recomp": "0x10072280", "name": "MxEventPresenter::ReadyTickle", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c2e70,26 +0x10072280,26 @@", [{"both": [["0x100c2e70", "push ebx", "0x10072280"], ["0x100c2e71", "push esi", "0x10072281"], ["0x100c2e72", "push edi", "0x10072282"], ["0x100c2e73", "mov ebx, ecx", "0x10072283"], ["0x100c2e75", "call MxMediaPresenter::NextChunk (FUNCTION)", "0x10072285"]]}, {"orig": [["0x100c2e7a", "mov esi, eax"], ["0x100c2e7c", "test esi, esi"]], "recomp": [["0x1007228a", "mov edi, eax"], ["0x1007228c", "test edi, edi"]]}, {"both": [["0x100c2e7e", "je 0x2a", "0x1007228e"]]}, {"orig": [["0x100c2e80", "mov edi, dword ptr [ebx]"], ["0x100c2e82", "push esi"]], "recomp": [["0x10072290", "mov esi, dword ptr [ebx]"], ["0x10072292", "push edi"]]}, {"both": [["0x100c2e83", "mov ecx, ebx", "0x10072293"]]}, {"orig": [["0x100c2e85", "call dword ptr [edi + 0x5c]"], ["0x100c2e88", "push esi"]], "recomp": [["0x10072295", "call dword ptr [esi + 0x5c]"], ["0x10072298", "push edi"]]}, {"both": [["0x100c2e89", "mov ecx, dword ptr [ebx + 0x40]", "0x10072299"], ["0x100c2e8c", "call MxDSSubscriber::FreeDataChunk (FUNCTION)", "0x1007229c"], ["0x100c2e91", "mov ecx, ebx", "0x100722a1"]]}, {"orig": [["0x100c2e93", "call dword ptr [edi + 0x30]"]], "recomp": [["0x100722a3", "call dword ptr [esi + 0x30]"]]}, {"both": [["0x100c2e96", "mov eax, 1", "0x100722a6"], ["0x100c2e9b", "mov cl, byte ptr [ebx + 8]", "0x100722ab"], ["0x100c2e9e", "shl eax, cl", "0x100722ae"], ["0x100c2ea0", "mov dword ptr [ebx + 8], 2", "0x100722b0"], ["0x100c2ea7", "or dword ptr [ebx + 0xc], eax", "0x100722b7"], ["0x100c2eaa", "pop edi", "0x100722ba"], ["0x100c2eab", "pop esi", "0x100722bb"], ["0x100c2eac", "pop ebx", "0x100722bc"], ["0x100c2ead", "ret ", "0x100722bd"]]}]]]}, {"address": "0x100c2eb0", "recomp": "0x100722c0", "name": "MxEventPresenter::StartingTickle", "matching": 1.0, "diff": []}, {"address": "0x100c2ef0", "recomp": "0x10072300", "name": "MxEventPresenter::PutData", "matching": 0.84, "diff": [["@@ -0x100c2f0d,53 +0x1007231d,52 @@", [{"both": [["0x100c2f0d", "lea eax, [ecx + 0x20]", "0x1007231d"], ["0x100c2f10", "push edi", "0x10072320"], ["0x100c2f11", "mov esi, ecx", "0x10072321"], ["0x100c2f13", "push eax", "0x10072323"], ["0x100c2f14", "lea ecx, [ebp - 0x10]", "0x10072324"], ["0x100c2f17", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x10072327"], ["0x100c2f1c", "mov dword ptr [ebp - 4], 0", "0x1007232c"], ["0x100c2f23", "mov ecx, esi", "0x10072333"], ["0x100c2f25", "call MxPresenter::IsEnabled (FUNCTION)", "0x10072335"], ["0x100c2f2a", "test al, al", "0x1007233a"]]}, {"orig": [["0x100c2f2c", "je 0x72"]], "recomp": [["0x1007233c", "je 0x71"]]}, {"both": [["0x100c2f2e", "mov eax, dword ptr [esi + 8]", "0x1007233e"], ["0x100c2f31", "cmp eax, 3", "0x10072341"]]}, {"orig": [["0x100c2f34", "jl 0x6a"]], "recomp": [["0x10072344", "jl 0x69"]]}, {"both": [["0x100c2f36", "cmp eax, 4", "0x10072346"], ["0x100c2f39", "jle 0x5", "0x10072349"], ["0x100c2f3b", "cmp eax, 6", "0x1007234b"]]}, {"orig": [["0x100c2f3e", "jne 0x60"]], "recomp": [["0x1007234e", "jne 0x5f"]]}, {"both": [["0x100c2f40", "mov eax, dword ptr [esi + 0x4c]", "0x10072350"], ["0x100c2f43", "test eax, eax", "0x10072353"]]}, {"orig": [["0x100c2f45", "je 0x59"]], "recomp": [["0x10072355", "je 0x58"]]}, {"both": [["0x100c2f47", "cmp dword ptr [eax + 0x14], 0", "0x10072357"]]}, {"orig": [["0x100c2f4b", "je 0x53"]], "recomp": [["0x1007235b", "je 0x52"]]}, {"both": [["0x100c2f4d", "mov ecx, dword ptr [esi + 0x50]", "0x1007235d"], ["0x100c2f50", "cmp byte ptr [ecx + 0xc], 2", "0x10072360"]]}, {"orig": [["0x100c2f54", "jne 0x31"]], "recomp": [["0x10072364", "jne 0x30"]]}, {"both": [["0x100c2f56", "mov ebx, dword ptr [eax + 0x18]", "0x10072366"], ["0x100c2f59", "call VariableTable (FUNCTION)", "0x10072369"]]}, {"orig": [["0x100c2f5e", "mov edx, ebx"]], "recomp": []}, {"both": [["0x100c2f60", "mov edi, ebx", "0x1007236e"], ["0x100c2f62", "mov ecx, 0xffffffff", "0x10072370"], ["0x100c2f67", "mov dword ptr [ebp - 0x14], eax", "0x10072375"], ["0x100c2f6a", "sub eax, eax", "0x10072378"], ["0x100c2f6c", "repne scasb al, byte ptr es:[edi]", "0x1007237a"], ["0x100c2f6e", "not ecx", "0x1007237c"]]}, {"orig": [["0x100c2f70", "add ebx, ecx"]], "recomp": [["0x1007237e", "sub eax, eax"], ["0x10072380", "lea edx, [ecx + ebx]"], ["0x10072383", "mov edi, edx"]]}, {"both": [["0x100c2f72", "mov ecx, 0xffffffff", "0x10072385"]]}, {"orig": [["0x100c2f77", "mov edi, ebx"], ["0x100c2f79", "sub eax, eax"]], "recomp": []}, {"both": [["0x100c2f7b", "repne scasb al, byte ptr es:[edi]", "0x1007238a"]]}, {"orig": [], "recomp": [["0x1007238c", "push edx"], ["0x1007238d", "mov ecx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100c2f7d", "push ebx", "0x10072390"]]}, {"orig": [["0x100c2f7e", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100c2f81", "push edx"]], "recomp": []}, {"both": [["0x100c2f82", "call MxVariableTable::SetVariable (FUNCTION)", "0x10072391"], ["0x100c2f87", "cmp dword ptr [esi + 8], 3", "0x10072396"], ["0x100c2f8b", "jne 0xc", "0x1007239a"], ["0x100c2f8d", "mov eax, dword ptr [esi + 0x4c]", "0x1007239c"], ["0x100c2f90", "mov ecx, dword ptr [esi + 0x40]", "0x1007239f"], ["0x100c2f93", "push eax", "0x100723a2"], ["0x100c2f94", "call MxDSSubscriber::FreeDataChunk (FUNCTION)", "0x100723a3"], ["0x100c2f99", "mov dword ptr [esi + 0x4c], 0", "0x100723a8"], ["0x100c2fa0", "mov dword ptr [ebp - 4], 0xffffffff", "0x100723af"], ["0x100c2fa7", "call <OFFSET7>", "0x100723b6"]]}]], ["@@ -0x100c2fb1,10 +0x100723c0,11 @@", [{"both": [["0x100c2fb1", "mov dword ptr fs:[0], ecx", "0x100723c0"], ["0x100c2fb8", "pop edi", "0x100723c7"], ["0x100c2fb9", "pop esi", "0x100723c8"], ["0x100c2fba", "pop ebx", "0x100723c9"], ["0x100c2fbb", "mov esp, ebp", "0x100723ca"], ["0x100c2fbd", "pop ebp", "0x100723cc"], ["0x100c2fbe", "ret ", "0x100723cd"], ["0x100c2fbf", "mov eax, <OFFSET8>", "0x100723ce"], ["0x100c2fc4", "jmp ___CxxFrameHandler (FUNCTION)", "0x100723d3"], ["0x100c2fc9", "lea ecx, [ebp - 0x10]", "0x100723d8"]]}, {"orig": [], "recomp": [["0x100723db", "jmp MxAutoLock::~MxAutoLock (FUNCTION)"]]}]]]}, {"address": "0x100c2fe0", "recomp": "0x1006e1e0", "name": "MxStreamChunk::~MxStreamChunk", "matching": 1.0, "diff": []}, {"address": "0x100c3050", "recomp": "0x1006e250", "name": "MxStreamChunk::ReadChunk", "matching": 1.0, "diff": []}, {"address": "0x100c30a0", "recomp": "0x1006e2a0", "name": "MxStreamChunk::ReadChunkHeader", "matching": 1.0, "diff": []}, {"address": "0x100c30e0", "recomp": "0x1006e2e0", "name": "MxStreamChunk::SendChunk", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c30e0,32 +0x1006e2e0,32 @@", [{"both": [["0x100c30e0", "mov eax, dword ptr [esp + 4]", "0x1006e2e0"], ["0x100c30e4", "sub esp, 4", "0x1006e2e4"], ["0x100c30e7", "push esi", "0x1006e2e7"], ["0x100c30e8", "mov edx, dword ptr [eax + 4]", "0x1006e2e8"], ["0x100c30eb", "push edi", "0x1006e2eb"], ["0x100c30ec", "mov esi, ecx", "0x1006e2ec"], ["0x100c30ee", "mov ecx, dword ptr [edx]", "0x1006e2ee"], ["0x100c30f0", "mov dword ptr [esp + 8], ecx", "0x1006e2f0"]]}, {"orig": [["0x100c30f4", "cmp ecx, edx"]], "recomp": [["0x1006e2f4", "cmp edx, ecx"]]}, {"both": [["0x100c30f6", "je 0x28", "0x1006e2f6"], ["0x100c30f8", "mov di, word ptr [esp + 0x18]", "0x1006e2f8"], ["0x100c30fd", "mov ecx, dword ptr [esi + 0xc]", "0x1006e2fd"], ["0x100c3100", "mov eax, dword ptr [esp + 8]", "0x1006e300"], ["0x100c3104", "mov eax, dword ptr [eax + 8]", "0x1006e304"], ["0x100c3107", "cmp dword ptr [eax + 0x44], ecx", "0x1006e307"], ["0x100c310a", "jne 0x6", "0x1006e30a"], ["0x100c310c", "cmp word ptr [eax + 0x48], di", "0x1006e30c"], ["0x100c3110", "je 0x1b", "0x1006e310"], ["0x100c3112", "mov eax, dword ptr [esp + 8]", "0x1006e312"], ["0x100c3116", "mov eax, dword ptr [eax]", "0x1006e316"], ["0x100c3118", "mov dword ptr [esp + 8], eax", "0x1006e318"]]}, {"orig": [["0x100c311c", "cmp eax, edx"]], "recomp": [["0x1006e31c", "cmp edx, eax"]]}, {"both": [["0x100c311e", "jne -0x20", "0x1006e31e"], ["0x100c3120", "mov eax, 0xffffffff", "0x1006e320"], ["0x100c3125", "pop edi", "0x1006e325"], ["0x100c3126", "pop esi", "0x1006e326"], ["0x100c3127", "add esp, 4", "0x1006e327"], ["0x100c312a", "ret 0xc", "0x1006e32a"], ["0x100c312d", "test byte ptr [esi + 8], 2", "0x1006e32d"], ["0x100c3131", "je 0x14", "0x1006e331"], ["0x100c3133", "mov ecx, dword ptr [esi + 0x1c]", "0x1006e333"], ["0x100c3136", "test ecx, ecx", "0x1006e336"]]}]]]}, {"address": "0x100c3170", "recomp": "0x1006e370", "name": "MxStreamChunk::SetBuffer", "matching": 1.0, "diff": []}, {"address": "0x100c3180", "recomp": "0x1006e380", "name": "MxStreamChunk::IntoFlags", "matching": 1.0, "diff": []}, {"address": "0x100c3190", "recomp": "0x1006e390", "name": "MxStreamChunk::IntoObjectId", "matching": 1.0, "diff": []}, {"address": "0x100c31a0", "recomp": "0x1006e3a0", "name": "MxStreamChunk::IntoTime", "matching": 1.0, "diff": []}, {"address": "0x100c31b0", "recomp": "0x1006e3b0", "name": "MxStreamChunk::IntoLength", "matching": 1.0, "diff": []}, {"address": "0x100c31c0", "recomp": "0x10075400", "name": "MxRegion::MxRegion", "matching": 1.0, "diff": []}, {"address": "0x100c32e0", "recomp": "0x10075580", "name": "MxCollection<MxRegionTopBottom *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x100c32f0", "recomp": "0x10075530", "name": "MxCollection<MxRegionTopBottom *>::~MxCollection<MxRegionTopBottom *>", "matching": 1.0, "diff": []}, {"address": "0x100c3340", "recomp": "0x10075520", "name": "MxCollection<MxRegionTopBottom *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c3350", "recomp": "0x10076c10", "name": "MxList<MxRegionTopBottom *>::~MxList<MxRegionTopBottom *>", "matching": 1.0, "diff": []}, {"address": "0x100c33e0", "recomp": "0x10075590", "name": "MxPtrList<MxRegionTopBottom>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c3410", "recomp": "0x100755c0", "name": "MxRegionTopBottomList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c3480", "recomp": "0x10075630", "name": "MxPtrList<MxRegionTopBottom>::~MxPtrList<MxRegionTopBottom>", "matching": 1.0, "diff": []}, {"address": "0x100c34d0", "recomp": "0x10075680", "name": "MxCollection<MxRegionTopBottom *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c3540", "recomp": "0x100756f0", "name": "MxList<MxRegionTopBottom *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c35f0", "recomp": "0x100757a0", "name": "MxPtrList<MxRegionTopBottom>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c3660", "recomp": "0x10075830", "name": "MxRegion::VTable0x20", "matching": 1.0, "diff": []}, {"address": "0x100c3670", "recomp": "0x10075810", "name": "MxRegion::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c3690", "recomp": "0x10075840", "name": "MxRegion::~MxRegion", "matching": 1.0, "diff": []}, {"address": "0x100c3700", "recomp": "0x100758b0", "name": "MxRegion::Reset", "matching": 1.0, "diff": []}, {"address": "0x100c3750", "recomp": "0x10075900", "name": "MxRegion::VTable0x18", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c384c,51 +0x100759fc,51 @@", [{"both": [["0x100c384c", "mov ecx, esi", "0x100759fc"], ["0x100c384e", "push eax", "0x100759fe"], ["0x100c384f", "call MxRegionTopBottom::MxRegionTopBottom (FUNCTION)", "0x100759ff"], ["0x100c3854", "mov dword ptr [ebp - 0x2c], eax", "0x10075a04"], ["0x100c3857", "jmp 0x7", "0x10075a07"], ["0x100c3859", "mov dword ptr [ebp - 0x2c], 0", "0x10075a09"], ["0x100c3860", "mov byte ptr [ebp - 4], 3", "0x10075a10"], ["0x100c3864", "cmp dword ptr [ebp - 0x30], 0", "0x10075a14"], ["0x100c3868", "je 0x59", "0x10075a18"], ["0x100c386a", "mov eax, dword ptr [ebp - 0x30]", "0x10075a1a"]]}, {"orig": [["0x100c386d", "mov ebx, dword ptr [ebp - 0x34]"], ["0x100c3870", "lea esi, [eax + 4]"]], "recomp": [["0x10075a1d", "mov edi, dword ptr [ebp - 0x34]"], ["0x10075a20", "lea ebx, [eax + 4]"]]}, {"both": [["0x100c3873", "push 0xc", "0x10075a23"], ["0x100c3875", "mov dword ptr [ebp - 0x40], eax", "0x10075a25"]]}, {"orig": [["0x100c3878", "mov edi, dword ptr [esi]"]], "recomp": [["0x10075a28", "mov esi, dword ptr [ebx]"]]}, {"both": [["0x100c387a", "call ??2@YAPAXI@Z (FUNCTION)", "0x10075a2a"], ["0x100c387f", "add esp, 4", "0x10075a2f"], ["0x100c3882", "mov dword ptr [ebp - 0x10], eax", "0x10075a32"], ["0x100c3885", "mov byte ptr [ebp - 4], 5", "0x10075a35"], ["0x100c3889", "test eax, eax", "0x10075a39"], ["0x100c388b", "mov eax, 0", "0x10075a3b"], ["0x100c3890", "je 0x11", "0x10075a40"], ["0x100c3892", "mov eax, dword ptr [ebp - 0x40]", "0x10075a42"], ["0x100c3895", "mov ecx, dword ptr [ebp - 0x2c]", "0x10075a45"], ["0x100c3898", "push eax", "0x10075a48"]]}, {"orig": [["0x100c3899", "push edi"]], "recomp": [["0x10075a49", "push esi"]]}, {"both": [["0x100c389a", "push ecx", "0x10075a4a"], ["0x100c389b", "mov ecx, dword ptr [ebp - 0x10]", "0x10075a4b"], ["0x100c389e", "call MxListEntry<MxRegionTopBottom *>::MxListEntry<MxRegionTopBottom *> (FUNCTION)", "0x10075a4e"], ["0x100c38a3", "mov byte ptr [ebp - 4], 3", "0x10075a53"]]}, {"orig": [["0x100c38a7", "test edi, edi"]], "recomp": [["0x10075a57", "test esi, esi"]]}, {"both": [["0x100c38a9", "je 0x5", "0x10075a59"]]}, {"orig": [["0x100c38ab", "mov dword ptr [edi + 8], eax"], ["0x100c38ae", "jmp 0x3"], ["0x100c38b0", "mov dword ptr [ebx + 0x10], eax"]], "recomp": [["0x10075a5b", "mov dword ptr [esi + 8], eax"], ["0x10075a5e", "jmp 0x3"], ["0x10075a60", "mov dword ptr [edi + 0x10], eax"]]}, {"both": [["0x100c38b3", "cmp dword ptr [ebp - 0x40], 0", "0x10075a63"], ["0x100c38b7", "je 0x4", "0x10075a67"]]}, {"orig": [["0x100c38b9", "mov dword ptr [esi], eax"], ["0x100c38bb", "jmp 0x3"], ["0x100c38bd", "mov dword ptr [ebx + 0x14], eax"], ["0x100c38c0", "inc dword ptr [ebx + 8]"]], "recomp": [["0x10075a69", "mov dword ptr [ebx], eax"], ["0x10075a6b", "jmp 0x3"], ["0x10075a6d", "mov dword ptr [edi + 0x14], eax"], ["0x10075a70", "inc dword ptr [edi + 8]"]]}, {"both": [["0x100c38c3", "mov eax, dword ptr [ebp - 0x1c]", "0x10075a73"], ["0x100c38c6", "mov dword ptr [ebp - 0x24], eax", "0x10075a76"], ["0x100c38c9", "jmp 0x1bf", "0x10075a79"], ["0x100c38ce", "mov eax, dword ptr [ebp - 0x14]", "0x10075a7e"], ["0x100c38d1", "mov ebx, dword ptr [ebp - 0x24]", "0x10075a81"], ["0x100c38d4", "add eax, 4", "0x10075a84"], ["0x100c38d7", "mov dword ptr [ebp - 0x40], eax", "0x10075a87"], ["0x100c38da", "cmp dword ptr [eax], ebx", "0x10075a8a"], ["0x100c38dc", "jle 0x1ab", "0x10075a8c"], ["0x100c38e2", "cmp ebx, ecx", "0x10075a92"]]}]], ["@@ -0x100c3921,100 +0x10075ad1,100 @@", [{"both": [["0x100c3921", "mov ecx, esi", "0x10075ad1"], ["0x100c3923", "push eax", "0x10075ad3"], ["0x100c3924", "call MxRegionTopBottom::MxRegionTopBottom (FUNCTION)", "0x10075ad4"], ["0x100c3929", "mov dword ptr [ebp - 0x44], eax", "0x10075ad9"], ["0x100c392c", "jmp 0x7", "0x10075adc"], ["0x100c392e", "mov dword ptr [ebp - 0x44], 0", "0x10075ade"], ["0x100c3935", "mov byte ptr [ebp - 4], 3", "0x10075ae5"], ["0x100c3939", "cmp dword ptr [ebp - 0x30], 0", "0x10075ae9"], ["0x100c393d", "je 0x59", "0x10075aed"], ["0x100c393f", "mov eax, dword ptr [ebp - 0x30]", "0x10075aef"]]}, {"orig": [["0x100c3942", "mov edi, dword ptr [ebp - 0x34]"], ["0x100c3945", "lea ebx, [eax + 4]"]], "recomp": [["0x10075af2", "mov ebx, dword ptr [ebp - 0x34]"], ["0x10075af5", "lea esi, [eax + 4]"]]}, {"both": [["0x100c3948", "push 0xc", "0x10075af8"], ["0x100c394a", "mov dword ptr [ebp - 0x2c], eax", "0x10075afa"]]}, {"orig": [["0x100c394d", "mov esi, dword ptr [ebx]"]], "recomp": [["0x10075afd", "mov edi, dword ptr [esi]"]]}, {"both": [["0x100c394f", "call ??2@YAPAXI@Z (FUNCTION)", "0x10075aff"], ["0x100c3954", "add esp, 4", "0x10075b04"], ["0x100c3957", "mov dword ptr [ebp - 0x10], eax", "0x10075b07"], ["0x100c395a", "mov byte ptr [ebp - 4], 7", "0x10075b0a"], ["0x100c395e", "test eax, eax", "0x10075b0e"], ["0x100c3960", "mov eax, 0", "0x10075b10"], ["0x100c3965", "je 0x11", "0x10075b15"], ["0x100c3967", "mov eax, dword ptr [ebp - 0x2c]", "0x10075b17"], ["0x100c396a", "mov ecx, dword ptr [ebp - 0x44]", "0x10075b1a"], ["0x100c396d", "push eax", "0x10075b1d"]]}, {"orig": [["0x100c396e", "push esi"]], "recomp": [["0x10075b1e", "push edi"]]}, {"both": [["0x100c396f", "push ecx", "0x10075b1f"], ["0x100c3970", "mov ecx, dword ptr [ebp - 0x10]", "0x10075b20"], ["0x100c3973", "call MxListEntry<MxRegionTopBottom *>::MxListEntry<MxRegionTopBottom *> (FUNCTION)", "0x10075b23"], ["0x100c3978", "mov byte ptr [ebp - 4], 3", "0x10075b28"]]}, {"orig": [["0x100c397c", "test esi, esi"]], "recomp": [["0x10075b2c", "test edi, edi"]]}, {"both": [["0x100c397e", "je 0x5", "0x10075b2e"]]}, {"orig": [["0x100c3980", "mov dword ptr [esi + 8], eax"], ["0x100c3983", "jmp 0x3"], ["0x100c3985", "mov dword ptr [edi + 0x10], eax"]], "recomp": [["0x10075b30", "mov dword ptr [edi + 8], eax"], ["0x10075b33", "jmp 0x3"], ["0x10075b35", "mov dword ptr [ebx + 0x10], eax"]]}, {"both": [["0x100c3988", "cmp dword ptr [ebp - 0x2c], 0", "0x10075b38"], ["0x100c398c", "je 0x4", "0x10075b3c"]]}, {"orig": [["0x100c398e", "mov dword ptr [ebx], eax"], ["0x100c3990", "jmp 0x3"], ["0x100c3992", "mov dword ptr [edi + 0x14], eax"], ["0x100c3995", "inc dword ptr [edi + 8]"]], "recomp": [["0x10075b3e", "mov dword ptr [esi], eax"], ["0x10075b40", "jmp 0x3"], ["0x10075b42", "mov dword ptr [ebx + 0x14], eax"], ["0x10075b45", "inc dword ptr [ebx + 8]"]]}, {"both": [["0x100c3998", "mov eax, dword ptr [ebp - 0x14]", "0x10075b48"], ["0x100c399b", "mov ecx, dword ptr [eax]", "0x10075b4b"], ["0x100c399d", "mov dword ptr [ebp - 0x24], ecx", "0x10075b4d"], ["0x100c39a0", "jmp 0x80", "0x10075b50"], ["0x100c39a5", "cmp dword ptr [ebp - 0x24], ecx", "0x10075b55"], ["0x100c39a8", "jle 0x7b", "0x10075b58"], ["0x100c39aa", "mov ecx, dword ptr [ebp - 0x14]", "0x10075b5a"], ["0x100c39ad", "call MxRegionTopBottom::Clone (FUNCTION)", "0x10075b5d"], ["0x100c39b2", "mov edx, dword ptr [ebp - 0x14]", "0x10075b62"], ["0x100c39b5", "mov dword ptr [ebp - 0x44], eax", "0x10075b65"], ["0x100c39b8", "mov eax, dword ptr [ebp - 0x24]", "0x10075b68"], ["0x100c39bb", "mov ecx, dword ptr [ebp - 0x44]", "0x10075b6b"], ["0x100c39be", "mov dword ptr [ecx + 4], eax", "0x10075b6e"], ["0x100c39c1", "mov eax, dword ptr [ebp - 0x24]", "0x10075b71"], ["0x100c39c4", "mov dword ptr [edx], eax", "0x10075b74"], ["0x100c39c6", "cmp dword ptr [ebp - 0x30], 0", "0x10075b76"], ["0x100c39ca", "je 0x59", "0x10075b7a"], ["0x100c39cc", "mov eax, dword ptr [ebp - 0x30]", "0x10075b7c"]]}, {"orig": [["0x100c39cf", "mov edi, dword ptr [ebp - 0x34]"], ["0x100c39d2", "lea ebx, [eax + 4]"]], "recomp": [["0x10075b7f", "mov ebx, dword ptr [ebp - 0x34]"], ["0x10075b82", "lea esi, [eax + 4]"]]}, {"both": [["0x100c39d5", "push 0xc", "0x10075b85"], ["0x100c39d7", "mov dword ptr [ebp - 0x2c], eax", "0x10075b87"]]}, {"orig": [["0x100c39da", "mov esi, dword ptr [ebx]"]], "recomp": [["0x10075b8a", "mov edi, dword ptr [esi]"]]}, {"both": [["0x100c39dc", "call ??2@YAPAXI@Z (FUNCTION)", "0x10075b8c"], ["0x100c39e1", "add esp, 4", "0x10075b91"], ["0x100c39e4", "mov dword ptr [ebp - 0x10], eax", "0x10075b94"], ["0x100c39e7", "mov byte ptr [ebp - 4], 8", "0x10075b97"], ["0x100c39eb", "test eax, eax", "0x10075b9b"], ["0x100c39ed", "mov eax, 0", "0x10075b9d"], ["0x100c39f2", "je 0x11", "0x10075ba2"], ["0x100c39f4", "mov eax, dword ptr [ebp - 0x2c]", "0x10075ba4"], ["0x100c39f7", "mov ecx, dword ptr [ebp - 0x44]", "0x10075ba7"], ["0x100c39fa", "push eax", "0x10075baa"]]}, {"orig": [["0x100c39fb", "push esi"]], "recomp": [["0x10075bab", "push edi"]]}, {"both": [["0x100c39fc", "push ecx", "0x10075bac"], ["0x100c39fd", "mov ecx, dword ptr [ebp - 0x10]", "0x10075bad"], ["0x100c3a00", "call MxListEntry<MxRegionTopBottom *>::MxListEntry<MxRegionTopBottom *> (FUNCTION)", "0x10075bb0"], ["0x100c3a05", "mov byte ptr [ebp - 4], 3", "0x10075bb5"]]}, {"orig": [["0x100c3a09", "test esi, esi"]], "recomp": [["0x10075bb9", "test edi, edi"]]}, {"both": [["0x100c3a0b", "je 0x5", "0x10075bbb"]]}, {"orig": [["0x100c3a0d", "mov dword ptr [esi + 8], eax"], ["0x100c3a10", "jmp 0x3"], ["0x100c3a12", "mov dword ptr [edi + 0x10], eax"]], "recomp": [["0x10075bbd", "mov dword ptr [edi + 8], eax"], ["0x10075bc0", "jmp 0x3"], ["0x10075bc2", "mov dword ptr [ebx + 0x10], eax"]]}, {"both": [["0x100c3a15", "cmp dword ptr [ebp - 0x2c], 0", "0x10075bc5"], ["0x100c3a19", "je 0x4", "0x10075bc9"]]}, {"orig": [["0x100c3a1b", "mov dword ptr [ebx], eax"], ["0x100c3a1d", "jmp 0x3"], ["0x100c3a1f", "mov dword ptr [edi + 0x14], eax"], ["0x100c3a22", "inc dword ptr [edi + 8]"]], "recomp": [["0x10075bcb", "mov dword ptr [esi], eax"], ["0x10075bcd", "jmp 0x3"], ["0x10075bcf", "mov dword ptr [ebx + 0x14], eax"], ["0x10075bd2", "inc dword ptr [ebx + 8]"]]}, {"both": [["0x100c3a25", "mov eax, dword ptr [ebp - 0x1c]", "0x10075bd5"], ["0x100c3a28", "mov edx, dword ptr [ebp - 0x40]", "0x10075bd8"], ["0x100c3a2b", "cmp dword ptr [edx], eax", "0x10075bdb"], ["0x100c3a2d", "jle 0x46", "0x10075bdd"], ["0x100c3a2f", "mov ecx, dword ptr [ebp - 0x14]", "0x10075bdf"], ["0x100c3a32", "call MxRegionTopBottom::Clone (FUNCTION)", "0x10075be2"], ["0x100c3a37", "mov esi, eax", "0x10075be7"], ["0x100c3a39", "mov ecx, dword ptr [ebp - 0x14]", "0x10075be9"], ["0x100c3a3c", "mov eax, dword ptr [ebp - 0x1c]", "0x10075bec"], ["0x100c3a3f", "mov dword ptr [esi + 4], eax", "0x10075bef"]]}]]]}, {"address": "0x100c3be0", "recomp": "0x10073090", "name": "MxRegionTopBottomListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c3c50", "recomp": "0x10073100", "name": "MxPtrListCursor<MxRegionTopBottom>::~MxPtrListCursor<MxRegionTopBottom>", "matching": 1.0, "diff": []}, {"address": "0x100c3ca0", "recomp": "0x10073150", "name": "MxListCursor<MxRegionTopBottom *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c3d10", "recomp": "0x100731c0", "name": "MxPtrListCursor<MxRegionTopBottom>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c3d80", "recomp": "0x10073230", "name": "MxListCursor<MxRegionTopBottom *>::~MxListCursor<MxRegionTopBottom *>", "matching": 1.0, "diff": []}, {"address": "0x100c3dd0", "recomp": "0x10075d90", "name": "MxRegionTopBottomListCursor::~MxRegionTopBottomListCursor", "matching": 1.0, "diff": []}, {"address": "0x100c3e20", "recomp": "0x10075de0", "name": "MxRegion::VTable0x1c", "matching": 0.9680851063829787, "diff": [["@@ -0x100c3ec5,23 +0x10075e85,23 @@", [{"both": [["0x100c3ec5", "mov ecx, dword ptr [eax + 8]", "0x10075e85"], ["0x100c3ec8", "mov dword ptr [ebp - 0x10], ecx", "0x10075e88"], ["0x100c3ecb", "cmp dword ptr [ebp - 0x10], ebx", "0x10075e8b"], ["0x100c3ece", "je 0x49", "0x10075e8e"], ["0x100c3ed0", "mov eax, dword ptr [ebp - 0x10]", "0x10075e90"], ["0x100c3ed3", "cmp dword ptr [ebp - 0x10], ebx", "0x10075e93"], ["0x100c3ed6", "mov ecx, dword ptr [eax]", "0x10075e96"], ["0x100c3ed8", "mov dword ptr [ebp - 0x20], ecx", "0x10075e98"], ["0x100c3edb", "je 0x3c", "0x10075e9b"], ["0x100c3edd", "mov eax, dword ptr [ebp - 0x20]", "0x10075e9d"]]}, {"orig": [["0x100c3ee0", "mov ecx, dword ptr [eax]"], ["0x100c3ee2", "cmp dword ptr [esi + 0xc], ecx"], ["0x100c3ee5", "jle 0x24"]], "recomp": [["0x10075ea0", "mov ecx, dword ptr [esi + 0xc]"], ["0x10075ea3", "cmp dword ptr [eax], ecx"], ["0x10075ea5", "jge 0x24"]]}, {"both": [["0x100c3ee7", "mov ecx, dword ptr [esi + 4]", "0x10075ea7"], ["0x100c3eea", "cmp dword ptr [eax + 4], ecx", "0x10075eaa"], ["0x100c3eed", "jle -0x3a", "0x10075ead"], ["0x100c3eef", "push esi", "0x10075eaf"], ["0x100c3ef0", "mov ecx, eax", "0x10075eb0"], ["0x100c3ef2", "call MxRegionTopBottom::FUN_100c57b0 (FUNCTION)", "0x10075eb2"], ["0x100c3ef7", "test al, al", "0x10075eb7"], ["0x100c3ef9", "je -0x46", "0x10075eb9"], ["0x100c3efb", "mov dword ptr [ebp - 4], 0xffffffff", "0x10075ebb"], ["0x100c3f02", "call <OFFSET7>", "0x10075ec2"]]}]]]}, {"address": "0x100c3f70", "recomp": "0x10072f90", "name": "MxRegionCursor::MxRegionCursor", "matching": 1.0, "diff": []}, {"address": "0x100c4070", "recomp": "0x10073280", "name": "MxRegionCursor::GetRect", "matching": 1.0, "diff": []}, {"address": "0x100c4080", "recomp": "0x10073290", "name": "MxRegionCursor::HasRect", "matching": 1.0, "diff": []}, {"address": "0x100c4090", "recomp": "0x100732a0", "name": "MxRegionCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c40b0", "recomp": "0x100732c0", "name": "MxRegionCursor::~MxRegionCursor", "matching": 1.0, "diff": []}, {"address": "0x100c4140", "recomp": "0x10073350", "name": "MxRegionCursor::VTable0x18", "matching": 1.0, "diff": []}, {"address": "0x100c41d0", "recomp": "0x100733e0", "name": "MxRegionCursor::VTable0x20", "matching": 1.0, "diff": []}, {"address": "0x100c4260", "recomp": "0x10073470", "name": "MxRegionCursor::VTable0x28", "matching": 1.0, "diff": []}, {"address": "0x100c4360", "recomp": "0x10073570", "name": "MxRegionCursor::VTable0x30", "matching": 1.0, "diff": []}, {"address": "0x100c4460", "recomp": "0x10073670", "name": "MxRegionCursor::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x100c4480", "recomp": "0x10073690", "name": "MxRegionCursor::VTable0x1c", "matching": 1.0, "diff": []}, {"address": "0x100c44a0", "recomp": "0x100736b0", "name": "MxRegionCursor::VTable0x24", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c4517,45 +0x10073727,45 @@", [{"both": [["0x100c4517", "jle 0x54", "0x10073727"], ["0x100c4519", "mov eax, dword ptr [eax + 4]", "0x10073729"], ["0x100c451c", "cmp eax, ebx", "0x1007372c"], ["0x100c451e", "jle 0x4d", "0x1007372e"], ["0x100c4520", "push ecx", "0x10073730"], ["0x100c4521", "push eax", "0x10073731"], ["0x100c4522", "push edx", "0x10073732"], ["0x100c4523", "mov ecx, esi", "0x10073733"], ["0x100c4525", "push ebp", "0x10073735"], ["0x100c4526", "call MxRegionCursor::UpdateRect (FUNCTION)", "0x10073736"]]}, {"orig": [["0x100c452b", "mov edx, dword ptr [esi + 0xc]"], ["0x100c452e", "mov eax, dword ptr [edi]"], ["0x100c4530", "mov ecx, dword ptr [edx]"], ["0x100c4532", "cmp eax, ecx"]], "recomp": [["0x1007373b", "mov ecx, dword ptr [esi + 0xc]"], ["0x1007373e", "mov edx, dword ptr [edi]"], ["0x10073740", "mov eax, dword ptr [ecx]"], ["0x10073742", "cmp eax, edx"]]}, {"both": [["0x100c4534", "jg 0x2", "0x10073744"]]}, {"orig": [["0x100c4536", "mov eax, ecx"], ["0x100c4538", "mov dword ptr [edx], eax"], ["0x100c453a", "mov eax, dword ptr [edi + 4]"], ["0x100c453d", "mov ecx, dword ptr [edx + 4]"], ["0x100c4540", "cmp eax, ecx"]], "recomp": [["0x10073746", "mov eax, edx"], ["0x10073748", "mov dword ptr [ecx], eax"], ["0x1007374a", "mov eax, dword ptr [ecx + 4]"], ["0x1007374d", "mov edx, dword ptr [edi + 4]"], ["0x10073750", "cmp eax, edx"]]}, {"both": [["0x100c4542", "jg 0x2", "0x10073752"]]}, {"orig": [["0x100c4544", "mov eax, ecx"], ["0x100c4546", "mov dword ptr [edx + 4], eax"], ["0x100c4549", "mov eax, dword ptr [edi + 8]"], ["0x100c454c", "mov ecx, dword ptr [edx + 8]"], ["0x100c454f", "cmp eax, ecx"]], "recomp": [["0x10073754", "mov eax, edx"], ["0x10073756", "mov dword ptr [ecx + 4], eax"], ["0x10073759", "mov eax, dword ptr [ecx + 8]"], ["0x1007375c", "mov edx, dword ptr [edi + 8]"], ["0x1007375f", "cmp eax, edx"]]}, {"both": [["0x100c4551", "jl 0x2", "0x10073761"]]}, {"orig": [["0x100c4553", "mov eax, ecx"], ["0x100c4555", "mov dword ptr [edx + 8], eax"]], "recomp": [["0x10073763", "mov eax, edx"], ["0x10073765", "mov dword ptr [ecx + 8], eax"]]}, {"both": [["0x100c4558", "mov eax, dword ptr [edi + 0xc]", "0x10073768"]]}, {"orig": [["0x100c455b", "mov ecx, dword ptr [edx + 0xc]"], ["0x100c455e", "cmp eax, ecx"]], "recomp": [["0x1007376b", "mov edx, dword ptr [ecx + 0xc]"], ["0x1007376e", "cmp edx, eax"]]}, {"both": [["0x100c4560", "jl 0x2", "0x10073770"]]}, {"orig": [["0x100c4562", "mov eax, ecx"], ["0x100c4564", "mov dword ptr [edx + 0xc], eax"]], "recomp": [["0x10073772", "mov edx, eax"], ["0x10073774", "mov dword ptr [ecx + 0xc], edx"]]}, {"both": [["0x100c4567", "jmp 0xc", "0x10073777"], ["0x100c4569", "mov edi, dword ptr [esp + 0x1c]", "0x10073779"], ["0x100c456d", "push edi", "0x1007377d"], ["0x100c456e", "mov ecx, esi", "0x1007377e"], ["0x100c4570", "call MxRegionCursor::FUN_100c4a20 (FUNCTION)", "0x10073780"], ["0x100c4575", "mov eax, dword ptr [esi + 0xc]", "0x10073785"], ["0x100c4578", "pop ebp", "0x10073788"], ["0x100c4579", "pop edi", "0x10073789"], ["0x100c457a", "pop esi", "0x1007378a"], ["0x100c457b", "pop ebx", "0x1007378b"]]}]]]}, {"address": "0x100c4590", "recomp": "0x100737a0", "name": "MxRegionCursor::VTable0x2c", "matching": 0.8777777777777778, "diff": [["@@ -0x100c45d8,46 +0x100737e8,46 @@", [{"both": [["0x100c45d8", "mov eax, dword ptr [eax + 0xc]", "0x100737e8"], ["0x100c45db", "test eax, eax", "0x100737eb"], ["0x100c45dd", "je 0x6", "0x100737ed"], ["0x100c45df", "mov eax, dword ptr [eax]", "0x100737ef"], ["0x100c45e1", "mov dword ptr [esp + 0x10], eax", "0x100737f1"], ["0x100c45e5", "mov edi, dword ptr [esp + 0x1c]", "0x100737f5"], ["0x100c45e9", "mov eax, dword ptr [esp + 0x10]", "0x100737f9"], ["0x100c45ed", "mov edx, dword ptr [eax]", "0x100737fd"], ["0x100c45ef", "cmp dword ptr [edi + 0xc], edx", "0x100737ff"], ["0x100c45f2", "jle 0x69", "0x10073802"]]}, {"orig": [["0x100c45f4", "mov ecx, dword ptr [eax + 4]"], ["0x100c45f7", "mov ebx, dword ptr [edi + 4]"]], "recomp": [["0x10073804", "mov ecx, dword ptr [edi + 4]"], ["0x10073807", "mov ebx, dword ptr [eax + 4]"]]}, {"both": [["0x100c45fa", "cmp ecx, ebx", "0x1007380a"]]}, {"orig": [["0x100c45fc", "jle 0x5f"]], "recomp": [["0x1007380c", "jge 0x5f"]]}, {"both": [["0x100c45fe", "mov eax, dword ptr [esp + 0x14]", "0x1007380e"], ["0x100c4602", "mov ebp, dword ptr [eax]", "0x10073812"], ["0x100c4604", "cmp dword ptr [edi + 8], ebp", "0x10073814"], ["0x100c4607", "jle 0x54", "0x10073817"], ["0x100c4609", "mov eax, dword ptr [eax + 4]", "0x10073819"]]}, {"orig": [["0x100c460c", "cmp eax, ebx"], ["0x100c460e", "jle 0x4d"], ["0x100c4610", "push ecx"]], "recomp": [["0x1007381c", "cmp ecx, eax"], ["0x1007381e", "jge 0x4d"], ["0x10073820", "push ebx"], ["0x10073821", "mov ecx, esi"]]}, {"both": [["0x100c4611", "push eax", "0x10073823"], ["0x100c4612", "push edx", "0x10073824"]]}, {"orig": [["0x100c4613", "mov ecx, esi"]], "recomp": []}, {"both": [["0x100c4615", "push ebp", "0x10073825"], ["0x100c4616", "call MxRegionCursor::UpdateRect (FUNCTION)", "0x10073826"], ["0x100c461b", "mov edx, dword ptr [esi + 0xc]", "0x1007382b"]]}, {"orig": [["0x100c461e", "mov eax, dword ptr [edi]"], ["0x100c4620", "mov ecx, dword ptr [edx]"]], "recomp": [["0x1007382e", "mov ecx, dword ptr [edi]"], ["0x10073830", "mov eax, dword ptr [edx]"]]}, {"both": [["0x100c4622", "cmp eax, ecx", "0x10073832"], ["0x100c4624", "jg 0x2", "0x10073834"], ["0x100c4626", "mov eax, ecx", "0x10073836"], ["0x100c4628", "mov dword ptr [edx], eax", "0x10073838"]]}, {"orig": [["0x100c462a", "mov eax, dword ptr [edx + 4]"], ["0x100c462d", "mov ecx, dword ptr [edi + 4]"]], "recomp": [["0x1007383a", "mov eax, dword ptr [edi + 4]"], ["0x1007383d", "mov ecx, dword ptr [edx + 4]"]]}, {"both": [["0x100c4630", "cmp eax, ecx", "0x10073840"], ["0x100c4632", "jg 0x2", "0x10073842"], ["0x100c4634", "mov eax, ecx", "0x10073844"], ["0x100c4636", "mov dword ptr [edx + 4], eax", "0x10073846"], ["0x100c4639", "mov eax, dword ptr [edi + 8]", "0x10073849"], ["0x100c463c", "mov ecx, dword ptr [edx + 8]", "0x1007384c"], ["0x100c463f", "cmp eax, ecx", "0x1007384f"], ["0x100c4641", "jl 0x2", "0x10073851"], ["0x100c4643", "mov eax, ecx", "0x10073853"], ["0x100c4645", "mov dword ptr [edx + 8], eax", "0x10073855"]]}]]]}, {"address": "0x100c4680", "recomp": "0x10073890", "name": "MxRegionCursor::Reset", "matching": 1.0, "diff": []}, {"address": "0x100c46c0", "recomp": "0x100738d0", "name": "MxRegionCursor::FUN_100c46c0", "matching": 1.0, "diff": []}, {"address": "0x100c4790", "recomp": "0x100739a0", "name": "MxRegionLeftRightListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c4800", "recomp": "0x10073a10", "name": "MxPtrListCursor<MxRegionLeftRight>::~MxPtrListCursor<MxRegionLeftRight>", "matching": 1.0, "diff": []}, {"address": "0x100c4850", "recomp": "0x10073a60", "name": "MxListCursor<MxRegionLeftRight *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c48c0", "recomp": "0x10073ad0", "name": "MxPtrListCursor<MxRegionLeftRight>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c4930", "recomp": "0x10073b40", "name": "MxListCursor<MxRegionLeftRight *>::~MxListCursor<MxRegionLeftRight *>", "matching": 1.0, "diff": []}, {"address": "0x100c4980", "recomp": "0x10073b90", "name": "MxRegionCursor::UpdateRect", "matching": 1.0, "diff": []}, {"address": "0x100c4a20", "recomp": "0x10073c30", "name": "MxRegionCursor::FUN_100c4a20", "matching": 0.8117154811715481, "diff": [["@@ -0x100c4a32,58 +0x10073c42,59 @@", [{"both": [["0x100c4a32", "test eax, eax", "0x10073c42"], ["0x100c4a34", "jne 0xb", "0x10073c44"], ["0x100c4a36", "mov eax, dword ptr [ecx + 8]", "0x10073c46"], ["0x100c4a39", "mov edx, dword ptr [eax + 0x10]", "0x10073c49"], ["0x100c4a3c", "mov dword ptr [ecx + 0xc], edx", "0x10073c4c"], ["0x100c4a3f", "jmp 0x6", "0x10073c4f"], ["0x100c4a41", "mov eax, dword ptr [eax + 8]", "0x10073c51"], ["0x100c4a44", "mov dword ptr [ecx + 0xc], eax", "0x10073c54"], ["0x100c4a47", "mov eax, dword ptr [ecx + 0xc]", "0x10073c57"], ["0x100c4a4a", "test eax, eax", "0x10073c5a"]]}, {"orig": [["0x100c4a4c", "je 0xed"]], "recomp": [["0x10073c5c", "je 0xf1"]]}, {"both": [["0x100c4a52", "mov ecx, dword ptr [eax]", "0x10073c62"], ["0x100c4a54", "test eax, eax", "0x10073c64"], ["0x100c4a56", "mov dword ptr [esp + 0xc], ecx", "0x10073c66"]]}, {"orig": [["0x100c4a5a", "je 0xdf"], ["0x100c4a60", "mov ecx, dword ptr [esp + 0xc]"], ["0x100c4a64", "mov eax, dword ptr [esi + 0xc]"], ["0x100c4a67", "cmp dword ptr [ecx], eax"], ["0x100c4a69", "jge 0xc0"], ["0x100c4a6f", "lea ebx, [ecx + 4]"], ["0x100c4a72", "mov eax, dword ptr [esi + 4]"], ["0x100c4a75", "cmp dword ptr [ebx], eax"], ["0x100c4a77", "jle -0x4d"], ["0x100c4a79", "mov ecx, dword ptr [ecx + 8]"]], "recomp": [["0x10073c6a", "je 0xe3"], ["0x10073c70", "mov eax, dword ptr [esp + 0xc]"], ["0x10073c74", "mov ecx, dword ptr [eax]"], ["0x10073c76", "cmp dword ptr [esi + 0xc], ecx"], ["0x10073c79", "jle 0xc4"], ["0x10073c7f", "lea ebx, [eax + 4]"], ["0x10073c82", "mov eax, dword ptr [ebx]"], ["0x10073c84", "cmp dword ptr [esi + 4], eax"], ["0x10073c87", "jge -0x4d"], ["0x10073c89", "mov eax, dword ptr [esp + 0xc]"], ["0x10073c8d", "mov ecx, dword ptr [eax + 8]"]]}, {"both": [["0x100c4a7c", "push ecx", "0x10073c90"], ["0x100c4a7d", "mov ecx, edi", "0x10073c91"], ["0x100c4a7f", "call MxRegionCursor::FUN_100c46c0 (FUNCTION)", "0x10073c93"], ["0x100c4a84", "mov ecx, dword ptr [edi + 0x14]", "0x10073c98"], ["0x100c4a87", "mov eax, dword ptr [ecx + 0xc]", "0x10073c9b"], ["0x100c4a8a", "test eax, eax", "0x10073c9e"], ["0x100c4a8c", "jne 0xb", "0x10073ca0"], ["0x100c4a8e", "mov eax, dword ptr [ecx + 8]", "0x10073ca2"], ["0x100c4a91", "mov edx, dword ptr [eax + 0x10]", "0x10073ca5"], ["0x100c4a94", "mov dword ptr [ecx + 0xc], edx", "0x10073ca8"], ["0x100c4a97", "jmp 0x6", "0x10073cab"], ["0x100c4a99", "mov eax, dword ptr [eax + 8]", "0x10073cad"], ["0x100c4a9c", "mov dword ptr [ecx + 0xc], eax", "0x10073cb0"], ["0x100c4a9f", "mov eax, dword ptr [ecx + 0xc]", "0x10073cb3"], ["0x100c4aa2", "test eax, eax", "0x10073cb6"]]}, {"orig": [["0x100c4aa4", "je -0x7a"]], "recomp": [["0x10073cb8", "je -0x7e"]]}, {"both": [["0x100c4aa6", "mov ecx, dword ptr [eax]", "0x10073cba"], ["0x100c4aa8", "test eax, eax", "0x10073cbc"], ["0x100c4aaa", "mov dword ptr [esp + 0x10], ecx", "0x10073cbe"]]}, {"orig": [["0x100c4aae", "je -0x88"]], "recomp": [["0x10073cc2", "je -0x8c"]]}, {"both": [["0x100c4ab4", "mov eax, dword ptr [esp + 0x10]", "0x10073cc8"], ["0x100c4ab8", "mov ecx, dword ptr [esi + 8]", "0x10073ccc"], ["0x100c4abb", "cmp dword ptr [eax], ecx", "0x10073ccf"]]}, {"orig": [["0x100c4abd", "jge -0x97"]], "recomp": [["0x10073cd1", "jge -0x9b"]]}, {"both": [["0x100c4ac3", "mov ecx, dword ptr [esi]", "0x10073cd7"], ["0x100c4ac5", "cmp dword ptr [eax + 4], ecx", "0x10073cd9"], ["0x100c4ac8", "jle -0x46", "0x10073cdc"], ["0x100c4aca", "mov eax, dword ptr [ebx]", "0x10073cde"], ["0x100c4acc", "mov ecx, dword ptr [esp + 0x10]", "0x10073ce0"], ["0x100c4ad0", "push eax", "0x10073ce4"], ["0x100c4ad1", "mov edx, dword ptr [ecx + 4]", "0x10073ce5"], ["0x100c4ad4", "mov eax, dword ptr [esp + 0x10]", "0x10073ce8"], ["0x100c4ad8", "push edx", "0x10073cec"], ["0x100c4ad9", "mov edx, dword ptr [esp + 0x18]", "0x10073ced"]]}]], ["@@ -0x100c4ae2,51 +0x10073cf6,49 @@", [{"both": [["0x100c4ae2", "push eax", "0x10073cf6"], ["0x100c4ae3", "mov ecx, edi", "0x10073cf7"], ["0x100c4ae5", "call MxRegionCursor::UpdateRect (FUNCTION)", "0x10073cf9"], ["0x100c4aea", "mov edx, dword ptr [edi + 0xc]", "0x10073cfe"], ["0x100c4aed", "mov ecx, dword ptr [esi]", "0x10073d01"], ["0x100c4aef", "mov eax, dword ptr [edx]", "0x10073d03"], ["0x100c4af1", "cmp eax, ecx", "0x10073d05"], ["0x100c4af3", "jg 0x2", "0x10073d07"], ["0x100c4af5", "mov eax, ecx", "0x10073d09"], ["0x100c4af7", "mov dword ptr [edx], eax", "0x10073d0b"]]}, {"orig": [["0x100c4af9", "mov eax, dword ptr [edx + 4]"], ["0x100c4afc", "mov ecx, dword ptr [esi + 4]"]], "recomp": [["0x10073d0d", "mov eax, dword ptr [esi + 4]"], ["0x10073d10", "mov ecx, dword ptr [edx + 4]"]]}, {"both": [["0x100c4aff", "cmp eax, ecx", "0x10073d13"], ["0x100c4b01", "jg 0x2", "0x10073d15"], ["0x100c4b03", "mov eax, ecx", "0x10073d17"], ["0x100c4b05", "mov dword ptr [edx + 4], eax", "0x10073d19"]]}, {"orig": [["0x100c4b08", "mov eax, dword ptr [edx + 8]"], ["0x100c4b0b", "mov ecx, dword ptr [esi + 8]"]], "recomp": [["0x10073d1c", "mov eax, dword ptr [esi + 8]"], ["0x10073d1f", "mov ecx, dword ptr [edx + 8]"]]}, {"both": [["0x100c4b0e", "cmp eax, ecx", "0x10073d22"], ["0x100c4b10", "jl 0x2", "0x10073d24"], ["0x100c4b12", "mov eax, ecx", "0x10073d26"], ["0x100c4b14", "mov dword ptr [edx + 8], eax", "0x10073d28"], ["0x100c4b17", "mov eax, dword ptr [esi + 0xc]", "0x10073d2b"], ["0x100c4b1a", "mov ecx, dword ptr [edx + 0xc]", "0x10073d2e"]]}, {"orig": [["0x100c4b1d", "cmp ecx, eax"]], "recomp": [["0x10073d31", "cmp eax, ecx"]]}, {"both": [["0x100c4b1f", "jl 0x2", "0x10073d33"]]}, {"orig": [["0x100c4b21", "mov ecx, eax"]], "recomp": [["0x10073d35", "mov eax, ecx"]]}, {"both": [["0x100c4b23", "pop edi", "0x10073d37"]]}, {"orig": [["0x100c4b24", "mov dword ptr [edx + 0xc], ecx"]], "recomp": [["0x10073d38", "mov dword ptr [edx + 0xc], eax"]]}, {"both": [["0x100c4b27", "pop esi", "0x10073d3b"], ["0x100c4b28", "pop ebx", "0x10073d3c"], ["0x100c4b29", "add esp, 8", "0x10073d3d"], ["0x100c4b2c", "ret 4", "0x10073d40"], ["0x100c4b2f", "mov eax, dword ptr [edi]", "0x10073d43"], ["0x100c4b31", "mov ecx, edi", "0x10073d45"], ["0x100c4b33", "call dword ptr [eax + 0x3c]", "0x10073d47"], ["0x100c4b36", "pop edi", "0x10073d4a"], ["0x100c4b37", "pop esi", "0x10073d4b"], ["0x100c4b38", "pop ebx", "0x10073d4c"], ["0x100c4b39", "add esp, 8", "0x10073d4d"], ["0x100c4b3c", "ret 4", "0x10073d50"], ["0x100c4b3f", "mov eax, dword ptr [edi]", "0x10073d53"], ["0x100c4b41", "mov ecx, edi", "0x10073d55"], ["0x100c4b43", "call dword ptr [eax + 0x3c]", "0x10073d57"], ["0x100c4b46", "pop edi", "0x10073d5a"], ["0x100c4b47", "pop esi", "0x10073d5b"], ["0x100c4b48", "pop ebx", "0x10073d5c"], ["0x100c4b49", "add esp, 8", "0x10073d5d"], ["0x100c4b4c", "ret 4", "0x10073d60"]]}, {"orig": [["0x100c4b4f", "int3 "], ["0x100c4b50", "sub esp, 8"]], "recomp": []}]]]}, {"address": "0x100c4b50", "recomp": "0x10073d70", "name": "MxRegionCursor::FUN_100c4b50", "matching": 0.8619246861924686, "diff": [["@@ -0x100c4b62,59 +0x10073d82,59 @@", [{"both": [["0x100c4b62", "test eax, eax", "0x10073d82"], ["0x100c4b64", "jne 0xb", "0x10073d84"], ["0x100c4b66", "mov eax, dword ptr [ecx + 8]", "0x10073d86"], ["0x100c4b69", "mov edx, dword ptr [eax + 0x14]", "0x10073d89"], ["0x100c4b6c", "mov dword ptr [ecx + 0xc], edx", "0x10073d8c"], ["0x100c4b6f", "jmp 0x6", "0x10073d8f"], ["0x100c4b71", "mov eax, dword ptr [eax + 4]", "0x10073d91"], ["0x100c4b74", "mov dword ptr [ecx + 0xc], eax", "0x10073d94"], ["0x100c4b77", "mov eax, dword ptr [ecx + 0xc]", "0x10073d97"], ["0x100c4b7a", "test eax, eax", "0x10073d9a"]]}, {"orig": [["0x100c4b7c", "je 0xf1"]], "recomp": [["0x10073d9c", "je 0xf2"]]}, {"both": [["0x100c4b82", "mov ecx, dword ptr [eax]", "0x10073da2"], ["0x100c4b84", "test eax, eax", "0x10073da4"], ["0x100c4b86", "mov dword ptr [esp + 0xc], ecx", "0x10073da6"]]}, {"orig": [["0x100c4b8a", "je 0xe3"]], "recomp": [["0x10073daa", "je 0xe4"]]}, {"both": [["0x100c4b90", "mov ebx, dword ptr [esp + 0xc]", "0x10073db0"]]}, {"orig": [["0x100c4b94", "mov eax, dword ptr [esi + 4]"]], "recomp": [["0x10073db4", "mov eax, dword ptr [ebx + 4]"]]}, {"both": [["0x100c4b97", "add ebx, 4", "0x10073db7"]]}, {"orig": [["0x100c4b9a", "cmp dword ptr [ebx], eax"], ["0x100c4b9c", "jle 0xc1"]], "recomp": [["0x10073dba", "cmp dword ptr [esi + 4], eax"], ["0x10073dbd", "jge 0xc1"]]}, {"both": [["0x100c4ba2", "mov eax, dword ptr [esp + 0xc]", "0x10073dc3"], ["0x100c4ba6", "mov ecx, dword ptr [eax]", "0x10073dc7"], ["0x100c4ba8", "cmp dword ptr [esi + 0xc], ecx", "0x10073dc9"]]}, {"orig": [["0x100c4bab", "jle -0x51"]], "recomp": [["0x10073dcc", "jle -0x52"]]}, {"both": [["0x100c4bad", "mov ecx, dword ptr [eax + 8]", "0x10073dce"], ["0x100c4bb0", "push ecx", "0x10073dd1"], ["0x100c4bb1", "mov ecx, edi", "0x10073dd2"], ["0x100c4bb3", "call MxRegionCursor::FUN_100c46c0 (FUNCTION)", "0x10073dd4"], ["0x100c4bb8", "mov ecx, dword ptr [edi + 0x14]", "0x10073dd9"], ["0x100c4bbb", "mov eax, dword ptr [ecx + 0xc]", "0x10073ddc"], ["0x100c4bbe", "test eax, eax", "0x10073ddf"], ["0x100c4bc0", "jne 0xb", "0x10073de1"], ["0x100c4bc2", "mov eax, dword ptr [ecx + 8]", "0x10073de3"], ["0x100c4bc5", "mov edx, dword ptr [eax + 0x14]", "0x10073de6"], ["0x100c4bc8", "mov dword ptr [ecx + 0xc], edx", "0x10073de9"], ["0x100c4bcb", "jmp 0x6", "0x10073dec"], ["0x100c4bcd", "mov eax, dword ptr [eax + 4]", "0x10073dee"], ["0x100c4bd0", "mov dword ptr [ecx + 0xc], eax", "0x10073df1"], ["0x100c4bd3", "mov eax, dword ptr [ecx + 0xc]", "0x10073df4"], ["0x100c4bd6", "test eax, eax", "0x10073df7"]]}, {"orig": [["0x100c4bd8", "je -0x7e"]], "recomp": [["0x10073df9", "je -0x7f"]]}, {"both": [["0x100c4bda", "mov ecx, dword ptr [eax]", "0x10073dfb"], ["0x100c4bdc", "test eax, eax", "0x10073dfd"], ["0x100c4bde", "mov dword ptr [esp + 0x10], ecx", "0x10073dff"]]}, {"orig": [["0x100c4be2", "je -0x8c"]], "recomp": [["0x10073e03", "je -0x8d"]]}, {"both": [["0x100c4be8", "mov eax, dword ptr [esp + 0x10]", "0x10073e09"], ["0x100c4bec", "mov ecx, dword ptr [esi]", "0x10073e0d"], ["0x100c4bee", "cmp dword ptr [eax + 4], ecx", "0x10073e0f"]]}, {"orig": [["0x100c4bf1", "jle -0x9b"]], "recomp": [["0x10073e12", "jle -0x9c"]]}, {"both": [["0x100c4bf7", "mov ecx, dword ptr [esi + 8]", "0x10073e18"], ["0x100c4bfa", "cmp dword ptr [eax], ecx", "0x10073e1b"], ["0x100c4bfc", "jge -0x46", "0x10073e1d"], ["0x100c4bfe", "mov eax, dword ptr [ebx]", "0x10073e1f"], ["0x100c4c00", "mov ecx, dword ptr [esp + 0x10]", "0x10073e21"], ["0x100c4c04", "push eax", "0x10073e25"], ["0x100c4c05", "mov edx, dword ptr [ecx + 4]", "0x10073e26"], ["0x100c4c08", "mov eax, dword ptr [esp + 0x10]", "0x10073e29"], ["0x100c4c0c", "push edx", "0x10073e2d"], ["0x100c4c0d", "mov edx, dword ptr [esp + 0x18]", "0x10073e2e"]]}]], ["@@ -0x100c4c16,50 +0x10073e37,49 @@", [{"both": [["0x100c4c16", "push eax", "0x10073e37"], ["0x100c4c17", "mov ecx, edi", "0x10073e38"], ["0x100c4c19", "call MxRegionCursor::UpdateRect (FUNCTION)", "0x10073e3a"], ["0x100c4c1e", "mov edx, dword ptr [edi + 0xc]", "0x10073e3f"], ["0x100c4c21", "mov ecx, dword ptr [esi]", "0x10073e42"], ["0x100c4c23", "mov eax, dword ptr [edx]", "0x10073e44"], ["0x100c4c25", "cmp eax, ecx", "0x10073e46"], ["0x100c4c27", "jg 0x2", "0x10073e48"], ["0x100c4c29", "mov eax, ecx", "0x10073e4a"], ["0x100c4c2b", "mov dword ptr [edx], eax", "0x10073e4c"]]}, {"orig": [["0x100c4c2d", "mov eax, dword ptr [edx + 4]"], ["0x100c4c30", "mov ecx, dword ptr [esi + 4]"]], "recomp": [["0x10073e4e", "mov eax, dword ptr [esi + 4]"], ["0x10073e51", "mov ecx, dword ptr [edx + 4]"]]}, {"both": [["0x100c4c33", "cmp eax, ecx", "0x10073e54"], ["0x100c4c35", "jg 0x2", "0x10073e56"], ["0x100c4c37", "mov eax, ecx", "0x10073e58"], ["0x100c4c39", "mov dword ptr [edx + 4], eax", "0x10073e5a"]]}, {"orig": [["0x100c4c3c", "mov eax, dword ptr [edx + 8]"], ["0x100c4c3f", "mov ecx, dword ptr [esi + 8]"]], "recomp": [["0x10073e5d", "mov eax, dword ptr [esi + 8]"], ["0x10073e60", "mov ecx, dword ptr [edx + 8]"]]}, {"both": [["0x100c4c42", "cmp eax, ecx", "0x10073e63"], ["0x100c4c44", "jl 0x2", "0x10073e65"], ["0x100c4c46", "mov eax, ecx", "0x10073e67"], ["0x100c4c48", "mov dword ptr [edx + 8], eax", "0x10073e69"], ["0x100c4c4b", "mov eax, dword ptr [esi + 0xc]", "0x10073e6c"], ["0x100c4c4e", "mov ecx, dword ptr [edx + 0xc]", "0x10073e6f"]]}, {"orig": [["0x100c4c51", "cmp ecx, eax"]], "recomp": [["0x10073e72", "cmp eax, ecx"]]}, {"both": [["0x100c4c53", "jl 0x2", "0x10073e74"]]}, {"orig": [["0x100c4c55", "mov ecx, eax"]], "recomp": [["0x10073e76", "mov eax, ecx"]]}, {"both": [["0x100c4c57", "pop edi", "0x10073e78"]]}, {"orig": [["0x100c4c58", "mov dword ptr [edx + 0xc], ecx"]], "recomp": [["0x10073e79", "mov dword ptr [edx + 0xc], eax"]]}, {"both": [["0x100c4c5b", "pop esi", "0x10073e7c"], ["0x100c4c5c", "pop ebx", "0x10073e7d"], ["0x100c4c5d", "add esp, 8", "0x10073e7e"], ["0x100c4c60", "ret 4", "0x10073e81"], ["0x100c4c63", "mov eax, dword ptr [edi]", "0x10073e84"], ["0x100c4c65", "mov ecx, edi", "0x10073e86"], ["0x100c4c67", "call dword ptr [eax + 0x3c]", "0x10073e88"], ["0x100c4c6a", "pop edi", "0x10073e8b"], ["0x100c4c6b", "pop esi", "0x10073e8c"], ["0x100c4c6c", "pop ebx", "0x10073e8d"], ["0x100c4c6d", "add esp, 8", "0x10073e8e"], ["0x100c4c70", "ret 4", "0x10073e91"], ["0x100c4c73", "mov eax, dword ptr [edi]", "0x10073e94"], ["0x100c4c75", "mov ecx, edi", "0x10073e96"], ["0x100c4c77", "call dword ptr [eax + 0x3c]", "0x10073e98"], ["0x100c4c7a", "pop edi", "0x10073e9b"], ["0x100c4c7b", "pop esi", "0x10073e9c"], ["0x100c4c7c", "pop ebx", "0x10073e9d"], ["0x100c4c7d", "add esp, 8", "0x10073e9e"], ["0x100c4c80", "ret 4", "0x10073ea1"]]}, {"orig": [["0x100c4c83", "int3 "]], "recomp": []}]]]}, {"address": "0x100c4c90", "recomp": "0x10075f30", "name": "MxRegionTopBottom::MxRegionTopBottom", "matching": 1.0, "diff": []}, {"address": "0x100c4d80", "recomp": "0x10076080", "name": "MxCollection<MxRegionLeftRight *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x100c4d90", "recomp": "0x10076030", "name": "MxCollection<MxRegionLeftRight *>::~MxCollection<MxRegionLeftRight *>", "matching": 1.0, "diff": []}, {"address": "0x100c4de0", "recomp": "0x10076020", "name": "MxCollection<MxRegionLeftRight *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c4df0", "recomp": "0x10076ad0", "name": "MxList<MxRegionLeftRight *>::~MxList<MxRegionLeftRight *>", "matching": 1.0, "diff": []}, {"address": "0x100c4e80", "recomp": "0x10076090", "name": "MxPtrList<MxRegionLeftRight>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c4e90", "recomp": "0x100760a0", "name": "MxRegionLeftRightList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c4f00", "recomp": "0x10076110", "name": "MxPtrList<MxRegionLeftRight>::~MxPtrList<MxRegionLeftRight>", "matching": 1.0, "diff": []}, {"address": "0x100c4f50", "recomp": "0x10076160", "name": "MxCollection<MxRegionLeftRight *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c4fc0", "recomp": "0x100761d0", "name": "MxList<MxRegionLeftRight *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c5070", "recomp": "0x10076280", "name": "MxPtrList<MxRegionLeftRight>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c50e0", "recomp": "0x100762f0", "name": "MxRegionTopBottom::MxRegionTopBottom", "matching": 1.0, "diff": []}, {"address": "0x100c5280", "recomp": "0x10076490", "name": "MxRegionTopBottom::FUN_100c5280", "matching": 0.9711538461538461, "diff": [["@@ -0x100c5356,31 +0x10076566,31 @@", [{"both": [["0x100c5356", "mov ebx, dword ptr [ebp + 0xc]", "0x10076566"], ["0x100c5359", "mov dword ptr [edi], esi", "0x10076569"], ["0x100c535b", "jmp 0x107", "0x1007656b"], ["0x100c5360", "mov eax, dword ptr [ebp - 0x10]", "0x10076570"], ["0x100c5363", "push eax", "0x10076573"], ["0x100c5364", "call ??3@YAXPAX@Z (FUNCTION)", "0x10076574"], ["0x100c5369", "add esp, 4", "0x10076579"], ["0x100c536c", "ret ", "0x1007657c"], ["0x100c536d", "mov eax, dword ptr [ebp - 0x10]", "0x1007657d"], ["0x100c5370", "mov eax, dword ptr [eax]", "0x10076580"]]}, {"orig": [["0x100c5372", "cmp esi, eax"], ["0x100c5374", "jle 0x2"]], "recomp": [["0x10076582", "cmp eax, esi"], ["0x10076584", "jge 0x2"]]}, {"both": [["0x100c5376", "mov esi, eax", "0x10076586"], ["0x100c5378", "mov ebx, dword ptr [ebp + 0xc]", "0x10076588"]]}, {"orig": [["0x100c537b", "cmp ebx, eax"], ["0x100c537d", "jle 0x7e"]], "recomp": [["0x1007658b", "cmp eax, ebx"], ["0x1007658d", "jge 0x7e"]]}, {"both": [["0x100c537f", "xor edi, edi", "0x1007658f"], ["0x100c5381", "mov eax, dword ptr [ebp - 0x10]", "0x10076591"], ["0x100c5384", "mov eax, dword ptr [eax + 4]", "0x10076594"]]}, {"orig": [["0x100c5387", "cmp ebx, eax"], ["0x100c5389", "jge 0x2"]], "recomp": [["0x10076597", "cmp eax, ebx"], ["0x10076599", "jle 0x2"]]}, {"both": [["0x100c538b", "mov ebx, eax", "0x1007659b"], ["0x100c538d", "lea eax, [ebp - 0x20]", "0x1007659d"], ["0x100c5390", "lea ecx, [ebp - 0x34]", "0x100765a0"], ["0x100c5393", "push eax", "0x100765a3"], ["0x100c5394", "call MxListCursor<MxRegionLeftRight *>::operator= (FUNCTION)", "0x100765a4"], ["0x100c5399", "cmp dword ptr [ebp - 0x28], edi", "0x100765a9"], ["0x100c539c", "jne 0x8", "0x100765ac"], ["0x100c539e", "mov eax, dword ptr [ebp - 0x2c]", "0x100765ae"], ["0x100c53a1", "mov ecx, dword ptr [eax + 0x10]", "0x100765b1"], ["0x100c53a4", "jmp 0x6", "0x100765b4"]]}]]]}, {"address": "0x100c54f0", "recomp": "0x10076700", "name": "MxListCursor<MxRegionLeftRight *>::MxListCursor<MxRegionLeftRight *>", "matching": 1.0, "diff": []}, {"address": "0x100c5560", "recomp": "0x10076770", "name": "MxRegionLeftRightListCursor::~MxRegionLeftRightListCursor", "matching": 1.0, "diff": []}, {"address": "0x100c55b0", "recomp": "0x100767c0", "name": "MxListCursor<MxRegionLeftRight *>::operator=", "matching": 1.0, "diff": []}, {"address": "0x100c55d0", "recomp": "0x100767e0", "name": "MxRegionTopBottom::Clone", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c56bc,46 +0x100768cc,46 @@", [{"both": [["0x100c56bc", "mov eax, dword ptr [ebp - 0x2c]", "0x100768cc"], ["0x100c56bf", "mov dword ptr [ebp - 0x10], esi", "0x100768cf"], ["0x100c56c2", "mov ecx, dword ptr [eax + 4]", "0x100768d2"], ["0x100c56c5", "mov edx, dword ptr [eax]", "0x100768d5"], ["0x100c56c7", "mov dword ptr [esi], edx", "0x100768d7"], ["0x100c56c9", "mov dword ptr [esi + 4], ecx", "0x100768d9"], ["0x100c56cc", "jmp 0x7", "0x100768dc"], ["0x100c56ce", "mov dword ptr [ebp - 0x10], 0", "0x100768de"], ["0x100c56d5", "mov eax, dword ptr [ebp - 0x24]", "0x100768e5"], ["0x100c56d8", "push 0xc", "0x100768e8"]]}, {"orig": [["0x100c56da", "mov ebx, dword ptr [eax + 8]"]], "recomp": [["0x100768ea", "mov esi, dword ptr [eax + 8]"]]}, {"both": [["0x100c56dd", "mov byte ptr [ebp - 4], 4", "0x100768ed"]]}, {"orig": [["0x100c56e1", "mov esi, dword ptr [ebx + 0x14]"]], "recomp": [["0x100768f1", "mov ebx, dword ptr [esi + 0x14]"]]}, {"both": [["0x100c56e4", "call ??2@YAPAXI@Z (FUNCTION)", "0x100768f4"], ["0x100c56e9", "mov dword ptr [ebp - 0x28], eax", "0x100768f9"], ["0x100c56ec", "add esp, 4", "0x100768fc"], ["0x100c56ef", "mov byte ptr [ebp - 4], 6", "0x100768ff"], ["0x100c56f3", "mov edi, eax", "0x10076903"], ["0x100c56f5", "mov eax, 0", "0x10076905"], ["0x100c56fa", "test edi, edi", "0x1007690a"], ["0x100c56fc", "je 0x11", "0x1007690c"], ["0x100c56fe", "mov eax, dword ptr [ebp - 0x10]", "0x1007690e"], ["0x100c5701", "mov dword ptr [edi], eax", "0x10076911"], ["0x100c5703", "mov eax, edi", "0x10076913"]]}, {"orig": [["0x100c5705", "mov dword ptr [edi + 4], esi"]], "recomp": [["0x10076915", "mov dword ptr [edi + 4], ebx"]]}, {"both": [["0x100c5708", "mov dword ptr [edi + 8], 0", "0x10076918"], ["0x100c570f", "mov byte ptr [ebp - 4], 4", "0x1007691f"]]}, {"orig": [["0x100c5713", "test esi, esi"]], "recomp": [["0x10076923", "test ebx, ebx"]]}, {"both": [["0x100c5715", "je 0xe", "0x10076925"]]}, {"orig": [["0x100c5717", "mov dword ptr [esi + 8], eax"], ["0x100c571a", "mov dword ptr [ebx + 0x14], eax"], ["0x100c571d", "inc dword ptr [ebx + 8]"]], "recomp": [["0x10076927", "mov dword ptr [ebx + 8], eax"], ["0x1007692a", "mov dword ptr [esi + 0x14], eax"], ["0x1007692d", "inc dword ptr [esi + 8]"]]}, {"both": [["0x100c5720", "jmp -0xb3", "0x10076930"]]}, {"orig": [["0x100c5725", "mov dword ptr [ebx + 0x10], eax"], ["0x100c5728", "mov dword ptr [ebx + 0x14], eax"], ["0x100c572b", "inc dword ptr [ebx + 8]"]], "recomp": [["0x10076935", "mov dword ptr [esi + 0x10], eax"], ["0x10076938", "mov dword ptr [esi + 0x14], eax"], ["0x1007693b", "inc dword ptr [esi + 8]"]]}, {"both": [["0x100c572e", "jmp -0xc1", "0x1007693e"], ["0x100c5733", "mov eax, dword ptr [ebp - 0x28]", "0x10076943"], ["0x100c5736", "push eax", "0x10076946"], ["0x100c5737", "call ??3@YAXPAX@Z (FUNCTION)", "0x10076947"], ["0x100c573c", "add esp, 4", "0x1007694c"], ["0x100c573f", "ret ", "0x1007694f"], ["0x100c5740", "mov eax, dword ptr [ebp - 0x28]", "0x10076950"], ["0x100c5743", "push eax", "0x10076953"], ["0x100c5744", "call ??3@YAXPAX@Z (FUNCTION)", "0x10076954"], ["0x100c5749", "add esp, 4", "0x10076959"]]}]]]}, {"address": "0x100c57b0", "recomp": "0x100769c0", "name": "MxRegionTopBottom::FUN_100c57b0", "matching": 1.0, "diff": []}, {"address": "0x100c58c0", "recomp": "0x10076b60", "name": "MxList<MxRegionLeftRight *>::InsertEntry", "matching": 0.8214285714285714, "diff": [["@@ -0x100c58dd,39 +0x10076b7d,39 @@", [{"both": [["0x100c58dd", "mov edi, ecx", "0x10076b7d"], ["0x100c58df", "push 0xc", "0x10076b7f"], ["0x100c58e1", "call ??2@YAPAXI@Z (FUNCTION)", "0x10076b81"], ["0x100c58e6", "mov dword ptr [ebp - 0x10], eax", "0x10076b86"], ["0x100c58e9", "add esp, 4", "0x10076b89"], ["0x100c58ec", "mov dword ptr [ebp - 4], 0", "0x10076b8c"], ["0x100c58f3", "mov esi, eax", "0x10076b93"], ["0x100c58f5", "test esi, esi", "0x10076b95"], ["0x100c58f7", "je 0x15", "0x10076b97"], ["0x100c58f9", "mov eax, dword ptr [ebp + 8]", "0x10076b99"]]}, {"orig": [["0x100c58fc", "mov edx, dword ptr [ebp + 0xc]"], ["0x100c58ff", "mov ecx, dword ptr [ebp + 0x10]"]], "recomp": [["0x10076b9c", "mov ecx, dword ptr [ebp + 0xc]"], ["0x10076b9f", "mov edx, dword ptr [ebp + 0x10]"]]}, {"both": [["0x100c5902", "mov dword ptr [esi], eax", "0x10076ba2"], ["0x100c5904", "mov eax, esi", "0x10076ba4"]]}, {"orig": [["0x100c5906", "mov dword ptr [esi + 4], edx"], ["0x100c5909", "mov dword ptr [esi + 8], ecx"]], "recomp": [["0x10076ba6", "mov dword ptr [esi + 4], ecx"], ["0x10076ba9", "mov dword ptr [esi + 8], edx"]]}, {"both": [["0x100c590c", "jmp 0x8", "0x10076bac"], ["0x100c590e", "xor eax, eax", "0x10076bae"]]}, {"orig": [["0x100c5910", "mov ecx, dword ptr [ebp + 0x10]"], ["0x100c5913", "mov edx, dword ptr [ebp + 0xc]"]], "recomp": [["0x10076bb0", "mov ecx, dword ptr [ebp + 0xc]"], ["0x10076bb3", "mov edx, dword ptr [ebp + 0x10]"]]}, {"both": [["0x100c5916", "mov dword ptr [ebp - 4], 0xffffffff", "0x10076bb6"]]}, {"orig": [["0x100c591d", "test edx, edx"]], "recomp": [["0x10076bbd", "test ecx, ecx"]]}, {"both": [["0x100c591f", "je 0x5", "0x10076bbf"]]}, {"orig": [["0x100c5921", "mov dword ptr [edx + 8], eax"]], "recomp": [["0x10076bc1", "mov dword ptr [ecx + 8], eax"]]}, {"both": [["0x100c5924", "jmp 0x3", "0x10076bc4"], ["0x100c5926", "mov dword ptr [edi + 0x10], eax", "0x10076bc6"]]}, {"orig": [["0x100c5929", "test ecx, ecx"]], "recomp": [["0x10076bc9", "test edx, edx"]]}, {"both": [["0x100c592b", "je 0x18", "0x10076bcb"]]}, {"orig": [["0x100c592d", "mov dword ptr [ecx + 4], eax"]], "recomp": [["0x10076bcd", "mov dword ptr [edx + 4], eax"]]}, {"both": [["0x100c5930", "mov ecx, dword ptr [ebp - 0xc]", "0x10076bd0"], ["0x100c5933", "inc dword ptr [edi + 8]", "0x10076bd3"], ["0x100c5936", "mov dword ptr fs:[0], ecx", "0x10076bd6"], ["0x100c593d", "pop edi", "0x10076bdd"], ["0x100c593e", "pop esi", "0x10076bde"], ["0x100c593f", "mov esp, ebp", "0x10076bdf"], ["0x100c5941", "pop ebp", "0x10076be1"], ["0x100c5942", "ret 0xc", "0x10076be2"], ["0x100c5945", "mov dword ptr [edi + 0x14], eax", "0x10076be5"], ["0x100c5948", "jmp -0x1a", "0x10076be8"]]}]]]}, {"address": "0x100c5970", "recomp": "0x10076ca0", "name": "MxList<MxRegionTopBottom *>::InsertEntry", "matching": 1.0, "diff": []}, {"address": "0x100c5a20", "recomp": "0x10076d50", "name": "MxListEntry<MxRegionTopBottom *>::MxListEntry<MxRegionTopBottom *>", "matching": 1.0, "diff": []}, {"address": "0x100c5a40", "recomp": "0x10076d70", "name": "MxList<MxRegionLeftRight *>::DeleteEntry", "matching": 1.0, "diff": []}, {"address": "0x100c5a90", "recomp": "0x1007c500", "name": "MxSmack::LoadHeader", "matching": 0.8321513002364066, "diff": [["@@ -0x100c5a90,23 +0x1007c500,23 @@", [{"both": [["0x100c5a90", "sub esp, 0xc", "0x1007c500"], ["0x100c5a93", "push ebx", "0x1007c503"], ["0x100c5a94", "push esi", "0x1007c504"], ["0x100c5a95", "push edi", "0x1007c505"], ["0x100c5a96", "push ebp", "0x1007c506"], ["0x100c5a97", "xor ebp, ebp", "0x1007c507"], ["0x100c5a99", "mov dword ptr [esp + 0x14], ebp", "0x1007c509"], ["0x100c5a9d", "mov dword ptr [esp + 0x10], ebp", "0x1007c50d"], ["0x100c5aa1", "cmp dword ptr [esp + 0x20], ebp", "0x1007c511"]]}, {"orig": [["0x100c5aa5", "je 0x283"]], "recomp": [["0x1007c515", "je 0x271"]]}, {"both": [["0x100c5aab", "mov ebx, dword ptr [esp + 0x24]", "0x1007c51b"], ["0x100c5aaf", "cmp ebx, ebp", "0x1007c51f"]]}, {"orig": [["0x100c5ab1", "je 0x277"]], "recomp": [["0x1007c521", "je 0x265"]]}, {"both": [["0x100c5ab7", "mov edi, ebx", "0x1007c527"], ["0x100c5ab9", "mov dword ptr [ebx + 0x6a4], ebp", "0x1007c529"], ["0x100c5abf", "mov esi, dword ptr [esp + 0x20]", "0x1007c52f"], ["0x100c5ac3", "mov ecx, 0x1a", "0x1007c533"], ["0x100c5ac8", "mov dword ptr [ebx + 0x6a0], ebp", "0x1007c538"], ["0x100c5ace", "mov dword ptr [ebx + 0x6a8], ebp", "0x1007c53e"], ["0x100c5ad4", "mov dword ptr [ebx + 0x6ac], ebp", "0x1007c544"], ["0x100c5ada", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1007c54a"], ["0x100c5adc", "mov ecx, dword ptr [ebx + 0x14]", "0x1007c54c"], ["0x100c5adf", "mov eax, dword ptr [ebx + 0xc]", "0x1007c54f"]]}]], ["@@ -0x100c5ae5,113 +0x1007c555,106 @@", [{"both": [["0x100c5ae5", "and ecx, 1", "0x1007c555"], ["0x100c5ae8", "add dword ptr [esp + 0x20], 0x68", "0x1007c558"], ["0x100c5aed", "lea ecx, [eax + ecx*4]", "0x1007c55d"], ["0x100c5af0", "push ecx", "0x1007c560"], ["0x100c5af1", "call ??2@YAPAXI@Z (FUNCTION)", "0x1007c561"], ["0x100c5af6", "mov dword ptr [esp + 0x1c], eax", "0x1007c566"], ["0x100c5afa", "add esp, 4", "0x1007c56a"], ["0x100c5afd", "cmp eax, ebp", "0x1007c56d"], ["0x100c5aff", "jne 0xa", "0x1007c56f"], ["0x100c5b01", "mov ebp, 0xffffffff", "0x1007c571"]]}, {"orig": [["0x100c5b06", "jmp 0x1fb"]], "recomp": [["0x1007c576", "jmp 0x1e9"]]}, {"both": [["0x100c5b0b", "mov edx, dword ptr [ebx + 0x14]", "0x1007c57b"], ["0x100c5b0e", "mov eax, dword ptr [ebx + 0xc]", "0x1007c57e"], ["0x100c5b11", "shl eax, 2", "0x1007c581"], ["0x100c5b14", "and edx, 1", "0x1007c584"], ["0x100c5b17", "mov edi, dword ptr [esp + 0x18]", "0x1007c587"], ["0x100c5b1b", "mov esi, dword ptr [esp + 0x20]", "0x1007c58b"], ["0x100c5b1f", "lea edx, [eax + edx*4]", "0x1007c58f"], ["0x100c5b22", "mov ecx, edx", "0x1007c592"], ["0x100c5b24", "shr ecx, 2", "0x1007c594"], ["0x100c5b27", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1007c597"], ["0x100c5b29", "mov ecx, edx", "0x1007c599"], ["0x100c5b2b", "and ecx, 3", "0x1007c59b"], ["0x100c5b2e", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1007c59e"]]}, {"orig": [["0x100c5b30", "mov eax, dword ptr [ebx + 0x14]"], ["0x100c5b33", "mov ecx, dword ptr [ebx + 0xc]"], ["0x100c5b36", "shl ecx, 2"], ["0x100c5b39", "and eax, 1"]], "recomp": [["0x1007c5a0", "mov edx, dword ptr [ebx + 0x14]"], ["0x1007c5a3", "mov eax, dword ptr [ebx + 0xc]"], ["0x1007c5a6", "and edx, 1"], ["0x1007c5a9", "mov ecx, dword ptr [esp + 0x20]"], ["0x1007c5ad", "lea esi, [eax + edx]"]]}, {"both": [["0x100c5b3c", "mov dword ptr [ebx + 0x6b0], 0", "0x1007c5b0"]]}, {"orig": [["0x100c5b46", "lea eax, [ecx + eax*4]"], ["0x100c5b49", "xor edx, edx"], ["0x100c5b4b", "add dword ptr [esp + 0x20], eax"], ["0x100c5b4f", "mov eax, dword ptr [ebx + 0x14]"], ["0x100c5b52", "and eax, 1"], ["0x100c5b55", "add eax, dword ptr [ebx + 0xc]"], ["0x100c5b58", "je 0x25"], ["0x100c5b5a", "mov ecx, dword ptr [esp + 0x18]"], ["0x100c5b5e", "mov eax, dword ptr [ecx]"]], "recomp": [["0x1007c5ba", "lea esi, [ecx + esi*4]"], ["0x1007c5bd", "lea ecx, [eax + edx]"], ["0x1007c5c0", "mov dword ptr [esp + 0x20], esi"], ["0x1007c5c4", "test ecx, ecx"], ["0x1007c5c6", "je 0x1c"], ["0x1007c5c8", "mov esi, dword ptr [esp + 0x18]"], ["0x1007c5cc", "mov edx, ecx"], ["0x1007c5ce", "mov eax, dword ptr [esi]"]]}, {"both": [["0x100c5b60", "cmp dword ptr [ebx + 0x6b0], eax", "0x1007c5d0"], ["0x100c5b66", "jae 0x6", "0x1007c5d6"], ["0x100c5b68", "mov dword ptr [ebx + 0x6b0], eax", "0x1007c5d8"]]}, {"orig": [["0x100c5b6e", "add ecx, 4"], ["0x100c5b71", "inc edx"], ["0x100c5b72", "mov eax, dword ptr [ebx + 0x14]"], ["0x100c5b75", "and eax, 1"], ["0x100c5b78", "add eax, dword ptr [ebx + 0xc]"], ["0x100c5b7b", "cmp eax, edx"], ["0x100c5b7d", "ja -0x21"], ["0x100c5b7f", "mov eax, dword ptr [ebx + 0x14]"], ["0x100c5b82", "and eax, 1"], ["0x100c5b85", "add eax, dword ptr [ebx + 0xc]"], ["0x100c5b88", "push eax"]], "recomp": [["0x1007c5de", "add esi, 4"], ["0x1007c5e1", "dec edx"], ["0x1007c5e2", "jne -0x16"], ["0x1007c5e4", "push ecx"]]}, {"both": [["0x100c5b89", "call ??2@YAPAXI@Z (FUNCTION)", "0x1007c5e5"], ["0x100c5b8e", "mov dword ptr [esp + 0x18], eax", "0x1007c5ea"], ["0x100c5b92", "add esp, 4", "0x1007c5ee"], ["0x100c5b95", "test eax, eax", "0x1007c5f1"], ["0x100c5b97", "jne 0xa", "0x1007c5f3"], ["0x100c5b99", "mov ebp, 0xffffffff", "0x1007c5f5"]]}, {"orig": [["0x100c5b9e", "jmp 0x163"]], "recomp": [["0x1007c5fa", "jmp 0x165"]]}, {"both": [["0x100c5ba3", "mov eax, dword ptr [ebx + 0x14]", "0x1007c5ff"], ["0x100c5ba6", "mov edi, dword ptr [esp + 0x14]", "0x1007c602"], ["0x100c5baa", "and eax, 1", "0x1007c606"], ["0x100c5bad", "mov esi, dword ptr [esp + 0x20]", "0x1007c609"], ["0x100c5bb1", "add eax, dword ptr [ebx + 0xc]", "0x1007c60d"], ["0x100c5bb4", "mov ecx, eax", "0x1007c610"], ["0x100c5bb6", "shr ecx, 2", "0x1007c612"], ["0x100c5bb9", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1007c615"], ["0x100c5bbb", "mov ecx, eax", "0x1007c617"], ["0x100c5bbd", "and ecx, 3", "0x1007c619"], ["0x100c5bc0", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1007c61c"], ["0x100c5bc2", "mov eax, dword ptr [ebx + 0x14]", "0x1007c61e"]]}, {"orig": [], "recomp": [["0x1007c621", "mov ecx, dword ptr [ebx + 0x34]"]]}, {"both": [["0x100c5bc5", "and eax, 1", "0x1007c624"]]}, {"orig": [], "recomp": [["0x1007c627", "add ecx, 0x1000"]]}, {"both": [["0x100c5bc8", "add eax, dword ptr [ebx + 0xc]", "0x1007c62d"], ["0x100c5bcb", "add dword ptr [esp + 0x20], eax", "0x1007c630"]]}, {"orig": [["0x100c5bcf", "mov eax, dword ptr [ebx + 0x34]"], ["0x100c5bd2", "add eax, 0x1000"], ["0x100c5bd7", "cmp eax, 0x2000"]], "recomp": [["0x1007c634", "cmp ecx, 0x2000"]]}, {"both": [["0x100c5bdc", "ja 0x5", "0x1007c63a"]]}, {"orig": [["0x100c5bde", "mov eax, 0x2000"], ["0x100c5be3", "push eax"]], "recomp": [["0x1007c63c", "mov ecx, 0x2000"], ["0x1007c641", "push ecx"]]}, {"both": [["0x100c5be4", "call ??2@YAPAXI@Z (FUNCTION)", "0x1007c642"], ["0x100c5be9", "mov dword ptr [esp + 0x14], eax", "0x1007c647"], ["0x100c5bed", "add esp, 4", "0x1007c64b"], ["0x100c5bf0", "test eax, eax", "0x1007c64e"], ["0x100c5bf2", "jne 0xa", "0x1007c650"], ["0x100c5bf4", "mov ebp, 0xffffffff", "0x1007c652"], ["0x100c5bf9", "jmp 0x108", "0x1007c657"], ["0x100c5bfe", "mov eax, dword ptr [ebx + 0x34]", "0x1007c65c"], ["0x100c5c01", "mov edi, dword ptr [esp + 0x10]", "0x1007c65f"], ["0x100c5c05", "add edi, 0x1000", "0x1007c663"], ["0x100c5c0b", "mov esi, dword ptr [esp + 0x20]", "0x1007c669"], ["0x100c5c0f", "mov ecx, eax", "0x1007c66d"], ["0x100c5c11", "shr ecx, 2", "0x1007c66f"], ["0x100c5c14", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1007c672"], ["0x100c5c16", "mov ecx, eax", "0x1007c674"], ["0x100c5c18", "and ecx, 3", "0x1007c676"], ["0x100c5c1b", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1007c679"], ["0x100c5c1d", "call _SmackGetSizeTables (FUNCTION)", "0x1007c67b"], ["0x100c5c22", "mov ecx, dword ptr [ebx + 0x38]", "0x1007c680"]]}, {"orig": [], "recomp": [["0x1007c683", "add ecx, eax"]]}, {"both": [["0x100c5c25", "add ecx, dword ptr [ebx + 0x3c]", "0x1007c685"], ["0x100c5c28", "add ecx, dword ptr [ebx + 0x40]", "0x1007c688"], ["0x100c5c2b", "add ecx, dword ptr [ebx + 0x44]", "0x1007c68b"]]}, {"orig": [["0x100c5c2e", "add ecx, eax"]], "recomp": []}, {"both": [["0x100c5c30", "push ecx", "0x1007c68e"], ["0x100c5c31", "call ??2@YAPAXI@Z (FUNCTION)", "0x1007c68f"], ["0x100c5c36", "add esp, 4", "0x1007c694"], ["0x100c5c39", "mov ecx, eax", "0x1007c697"], ["0x100c5c3b", "mov dword ptr [ebx + 0x6ac], eax", "0x1007c699"], ["0x100c5c41", "test ecx, ecx", "0x1007c69f"], ["0x100c5c43", "jne 0xa", "0x1007c6a1"], ["0x100c5c45", "mov ebp, 0xffffffff", "0x1007c6a3"], ["0x100c5c4a", "jmp 0xb7", "0x1007c6a8"], ["0x100c5c4f", "mov eax, dword ptr [ebx + 0x44]", "0x1007c6ad"]]}]], ["@@ -0x100c5d0a,10 +0x1007c768,20 @@", [{"both": [["0x100c5d0a", "mov ecx, dword ptr [esp + 0x18]", "0x1007c768"], ["0x100c5d0e", "mov edx, dword ptr [esp + 0x10]", "0x1007c76c"], ["0x100c5d12", "mov dword ptr [ebx + 0x6a4], eax", "0x1007c770"], ["0x100c5d18", "mov eax, ebp", "0x1007c776"], ["0x100c5d1a", "mov dword ptr [ebx + 0x6a0], ecx", "0x1007c778"], ["0x100c5d20", "pop ebp", "0x1007c77e"], ["0x100c5d21", "mov dword ptr [ebx + 0x6a8], edx", "0x1007c77f"], ["0x100c5d27", "pop edi", "0x1007c785"], ["0x100c5d28", "pop esi", "0x1007c786"], ["0x100c5d29", "pop ebx", "0x1007c787"]]}, {"orig": [], "recomp": [["0x1007c788", "add esp, 0xc"], ["0x1007c78b", "ret "], ["0x1007c78c", "mov ebp, 0xffffffff"], ["0x1007c791", "mov eax, ebp"], ["0x1007c793", "pop ebp"], ["0x1007c794", "pop edi"], ["0x1007c795", "pop esi"], ["0x1007c796", "pop ebx"], ["0x1007c797", "add esp, 0xc"], ["0x1007c79a", "ret "]]}]]]}, {"address": "0x100c5d40", "recomp": "0x1007c7a0", "name": "MxSmack::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c5db0", "recomp": "0x1007c810", "name": "MxSmack::LoadFrame", "matching": 1.0, "diff": []}, {"address": "0x100c6050", "recomp": "0x1007cab0", "name": "MxSmack::GetRect", "matching": 0.8518518518518519, "diff": [["@@ -0x100c608b,54 +0x1007caeb,54 @@", [{"both": [["0x100c608b", "pop ebp", "0x1007caeb"], ["0x100c608c", "pop edi", "0x1007caec"], ["0x100c608d", "pop esi", "0x1007caed"], ["0x100c608e", "pop ebx", "0x1007caee"], ["0x100c608f", "add esp, 4", "0x1007caef"], ["0x100c6092", "ret ", "0x1007caf2"], ["0x100c6093", "mov eax, dword ptr [esp + 0x1c]", "0x1007caf3"], ["0x100c6097", "mov word ptr [eax], 2", "0x1007caf7"], ["0x100c609c", "mov ebp, dword ptr [esi]", "0x1007cafc"], ["0x100c609e", "mov ecx, dword ptr [esi + 4]", "0x1007cafe"]]}, {"orig": [["0x100c60a1", "mov edi, dword ptr [esi + 8]"], ["0x100c60a4", "mov ebx, dword ptr [esi + 0xc]"], ["0x100c60a7", "add edi, ebp"], ["0x100c60a9", "add ebx, ecx"]], "recomp": [["0x1007cb01", "mov ebx, dword ptr [esi + 8]"], ["0x1007cb04", "mov edi, dword ptr [esi + 0xc]"], ["0x1007cb07", "add ebx, ebp"], ["0x1007cb09", "add edi, ecx"]]}, {"both": [["0x100c60ab", "mov eax, dword ptr [esp + 0x18]", "0x1007cb0b"], ["0x100c60af", "push esi", "0x1007cb0f"], ["0x100c60b0", "mov dword ptr [esp + 0x14], ecx", "0x1007cb10"], ["0x100c60b4", "push eax", "0x1007cb14"], ["0x100c60b5", "call _SmackGetRect (FUNCTION)", "0x1007cb15"], ["0x100c60ba", "add esp, 8", "0x1007cb1a"], ["0x100c60bd", "test al, al", "0x1007cb1d"], ["0x100c60bf", "je 0x29", "0x1007cb1f"], ["0x100c60c1", "mov eax, dword ptr [esi]", "0x1007cb21"]]}, {"orig": [["0x100c60c3", "cmp ebp, eax"], ["0x100c60c5", "jbe 0x2"]], "recomp": [["0x1007cb23", "cmp eax, ebp"], ["0x1007cb25", "jae 0x2"]]}, {"both": [["0x100c60c7", "mov ebp, eax", "0x1007cb27"], ["0x100c60c9", "add eax, dword ptr [esi + 8]", "0x1007cb29"]]}, {"orig": [["0x100c60cc", "cmp edi, eax"]], "recomp": [["0x1007cb2c", "cmp ebx, eax"]]}, {"both": [["0x100c60ce", "jae 0x2", "0x1007cb2e"]]}, {"orig": [["0x100c60d0", "mov edi, eax"], ["0x100c60d2", "mov ebx, dword ptr [esi + 4]"]], "recomp": [["0x1007cb30", "mov ebx, eax"], ["0x1007cb32", "mov edi, dword ptr [esi + 4]"]]}, {"both": [["0x100c60d5", "push esi", "0x1007cb35"]]}, {"orig": [["0x100c60d6", "add ebx, dword ptr [esi + 0xc]"]], "recomp": [["0x1007cb36", "add edi, dword ptr [esi + 0xc]"]]}, {"both": [["0x100c60d9", "mov eax, dword ptr [esp + 0x1c]", "0x1007cb39"], ["0x100c60dd", "push eax", "0x1007cb3d"], ["0x100c60de", "call _SmackGetRect (FUNCTION)", "0x1007cb3e"], ["0x100c60e3", "add esp, 8", "0x1007cb43"], ["0x100c60e6", "test al, al", "0x1007cb46"], ["0x100c60e8", "jne -0x29", "0x1007cb48"], ["0x100c60ea", "mov eax, dword ptr [esp + 0x1c]", "0x1007cb4a"], ["0x100c60ee", "mov ecx, dword ptr [esp + 0x24]", "0x1007cb4e"], ["0x100c60f2", "mov word ptr [eax], 0", "0x1007cb52"], ["0x100c60f7", "mov edx, dword ptr [esp + 0x10]", "0x1007cb57"], ["0x100c60fb", "mov al, 1", "0x1007cb5b"], ["0x100c60fd", "mov dword ptr [ecx], ebp", "0x1007cb5d"], ["0x100c60ff", "pop ebp", "0x1007cb5f"], ["0x100c6100", "mov dword ptr [ecx + 4], edx", "0x1007cb60"]]}, {"orig": [["0x100c6103", "mov dword ptr [ecx + 8], edi"], ["0x100c6106", "mov dword ptr [ecx + 0xc], ebx"]], "recomp": [["0x1007cb63", "mov dword ptr [ecx + 8], ebx"], ["0x1007cb66", "mov dword ptr [ecx + 0xc], edi"]]}, {"both": [["0x100c6109", "pop edi", "0x1007cb69"], ["0x100c610a", "pop esi", "0x1007cb6a"], ["0x100c610b", "pop ebx", "0x1007cb6b"], ["0x100c610c", "add esp, 4", "0x1007cb6c"], ["0x100c610f", "ret ", "0x1007cb6f"]]}]]]}, {"address": "0x100c6110", "recomp": "0x1006e6c0", "name": "MxRAMStreamController::Open", "matching": 1.0, "diff": []}, {"address": "0x100c6210", "recomp": "0x1006e7c0", "name": "MxRAMStreamController::VTable0x20", "matching": 1.0, "diff": []}, {"address": "0x100c6320", "recomp": "0x1006e8d0", "name": "MxRAMStreamController::VTable0x24", "matching": 1.0, "diff": []}, {"address": "0x100c63c0", "recomp": "0x1006e970", "name": "MxRAMStreamController::DeserializeObject", "matching": 1.0, "diff": []}, {"address": "0x100c6470", "recomp": "0x1006ea20", "name": "MxDSBuffer::MxDSBuffer", "matching": 1.0, "diff": []}, {"address": "0x100c6500", "recomp": "0x1006eab0", "name": "MxDSBuffer::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c6510", "recomp": "0x1006eac0", "name": "MxDSBuffer::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c6530", "recomp": "0x1006eae0", "name": "MxDSBuffer::~MxDSBuffer", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c65db,21 +0x1006eb8b,21 @@", [{"both": [["0x100c65db", "sub edx, edx", "0x1006eb8b"], ["0x100c65dd", "div ecx", "0x1006eb8d"], ["0x100c65df", "mov ecx, eax", "0x1006eb8f"], ["0x100c65e1", "mov edx, 1", "0x1006eb91"], ["0x100c65e6", "and eax, 0xffffffe7", "0x1006eb96"], ["0x100c65e9", "and cl, 0x1f", "0x1006eb99"], ["0x100c65ec", "shr eax, 3", "0x1006eb9c"], ["0x100c65ef", "shl edx, cl", "0x1006eb9f"], ["0x100c65f1", "test dword ptr [eax + edi + 0x28], edx", "0x1006eba1"], ["0x100c65f5", "je 0xf", "0x1006eba5"]]}, {"orig": [["0x100c65f7", "xor dword ptr [edi + eax + 0x28], edx"]], "recomp": [["0x1006eba7", "xor dword ptr [eax + edi + 0x28], edx"]]}, {"both": [["0x100c65fb", "jmp 0x9", "0x1006ebab"], ["0x100c65fd", "push esi", "0x1006ebad"], ["0x100c65fe", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006ebae"], ["0x100c6603", "add esp, 4", "0x1006ebb3"], ["0x100c6606", "xor ecx, ecx", "0x1006ebb6"], ["0x100c6608", "mov eax, dword ptr [ebp - 0x10]", "0x1006ebb8"], ["0x100c660b", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006ebbb"], ["0x100c6612", "mov dword ptr [eax + 0x14], ecx", "0x1006ebc2"], ["0x100c6615", "mov dword ptr [eax + 0x1c], ecx", "0x1006ebc5"], ["0x100c6618", "call <OFFSET5>", "0x1006ebc8"]]}]]]}, {"address": "0x100c6640", "recomp": "0x1006ebf0", "name": "MxDSBuffer::AllocateBuffer", "matching": 1.0, "diff": []}, {"address": "0x100c6780", "recomp": "0x1006ed30", "name": "MxDSBuffer::SetBufferPointer", "matching": 1.0, "diff": []}, {"address": "0x100c67b0", "recomp": "0x1006ed60", "name": "MxDSBuffer::FUN_100c67b0", "matching": 0.7649769585253456, "diff": [["@@ -0x100c67e3,89 +0x1006ed93,86 @@", [{"both": [["0x100c67e3", "pop ebx", "0x1006ed93"], ["0x100c67e4", "add esp, 4", "0x1006ed94"], ["0x100c67e7", "ret 0xc", "0x1006ed97"], ["0x100c67ea", "mov edi, dword ptr [esp + 0x20]", "0x1006ed9a"], ["0x100c67ee", "mov ecx, dword ptr [esp + 0x10]", "0x1006ed9e"], ["0x100c67f2", "call MxDSBuffer::SkipToData (FUNCTION)", "0x1006eda2"], ["0x100c67f7", "test eax, eax", "0x1006eda7"], ["0x100c67f9", "je 0x23", "0x1006eda9"], ["0x100c67fb", "mov ecx, dword ptr [edi]", "0x1006edab"], ["0x100c67fd", "test ecx, ecx", "0x1006edad"]]}, {"orig": [["0x100c67ff", "jne 0x2b"]], "recomp": [["0x1006edaf", "jne 0x29"]]}, {"both": [["0x100c6801", "mov ecx, dword ptr [esp + 0x1c]", "0x1006edb1"], ["0x100c6805", "push edi", "0x1006edb5"], ["0x100c6806", "push ecx", "0x1006edb6"], ["0x100c6807", "push eax", "0x1006edb7"], ["0x100c6808", "mov ecx, dword ptr [esp + 0x1c]", "0x1006edb8"], ["0x100c680c", "push esi", "0x1006edbc"], ["0x100c680d", "call MxDSBuffer::CreateObject (FUNCTION)", "0x1006edbd"], ["0x100c6812", "cmp eax, -1", "0x1006edc2"], ["0x100c6815", "mov ebx, eax", "0x1006edc5"]]}, {"orig": [["0x100c6817", "je 0x7"]], "recomp": [["0x1006edc7", "je 0x7b"]]}, {"both": [["0x100c6819", "cmp ebx, 1", "0x1006edc9"], ["0x100c681c", "jne -0x30", "0x1006edcc"]]}, {"orig": [["0x100c681e", "xor ebx, ebx"], ["0x100c6820", "mov eax, ebx"]], "recomp": [["0x1006edce", "xor eax, eax"]]}, {"both": [["0x100c6822", "pop ebp", "0x1006edd0"], ["0x100c6823", "pop edi", "0x1006edd1"], ["0x100c6824", "pop esi", "0x1006edd2"], ["0x100c6825", "pop ebx", "0x1006edd3"], ["0x100c6826", "add esp, 4", "0x1006edd4"], ["0x100c6829", "ret 0xc", "0x1006edd7"], ["0x100c682c", "mov ebp, dword ptr [ecx + 0xa0]", "0x1006edda"], ["0x100c6832", "push eax", "0x1006ede0"], ["0x100c6833", "mov ecx, ebp", "0x1006ede1"], ["0x100c6835", "call MxDSBuffer::CalcBytesRemaining (FUNCTION)", "0x1006ede3"], ["0x100c683a", "test eax, eax", "0x1006ede8"]]}, {"orig": [["0x100c683c", "jne -0x1e"]], "recomp": [["0x1006edea", "jne 0x64"]]}, {"both": [["0x100c683e", "cmp dword ptr [ebp + 0x2c], 0", "0x1006edec"]]}, {"orig": [["0x100c6842", "jne -0x56"]], "recomp": [["0x1006edf0", "jne -0x54"]]}, {"both": [["0x100c6844", "mov ecx, dword ptr [esp + 0x10]", "0x1006edf2"], ["0x100c6848", "push edi", "0x1006edf6"], ["0x100c6849", "mov edx, dword ptr [esp + 0x20]", "0x1006edf7"], ["0x100c684d", "mov eax, dword ptr [ecx + 0x30]", "0x1006edfb"], ["0x100c6850", "push edx", "0x1006edfe"], ["0x100c6851", "mov dword ptr [ebp + 0x30], eax", "0x1006edff"], ["0x100c6854", "mov ecx, dword ptr [ebp + 8]", "0x1006ee02"], ["0x100c6857", "push ecx", "0x1006ee05"], ["0x100c6858", "push esi", "0x1006ee06"], ["0x100c6859", "mov ecx, ebp", "0x1006ee07"], ["0x100c685b", "call MxDSBuffer::CreateObject (FUNCTION)", "0x1006ee09"], ["0x100c6860", "mov ebx, eax", "0x1006ee0e"], ["0x100c6862", "test ebx, ebx", "0x1006ee10"]]}, {"orig": [["0x100c6864", "jne -0x46"]], "recomp": [["0x1006ee12", "jne 0x48"]]}, {"both": [["0x100c6866", "cmp word ptr [ebp + 0x20], 0", "0x1006ee14"], ["0x100c686b", "je 0x14", "0x1006ee19"], ["0x100c686d", "push ebp", "0x1006ee1b"], ["0x100c686e", "mov ecx, esi", "0x1006ee1c"], ["0x100c6870", "call MxDiskStreamController::InsertToList74 (FUNCTION)", "0x1006ee1e"], ["0x100c6875", "mov eax, dword ptr [edi]", "0x1006ee23"], ["0x100c6877", "mov dword ptr [eax + 0xa0], 0", "0x1006ee25"], ["0x100c6881", "mov eax, dword ptr [edi]", "0x1006ee2f"], ["0x100c6883", "mov ecx, esi", "0x1006ee31"], ["0x100c6885", "push eax", "0x1006ee33"], ["0x100c6886", "call MxDiskStreamController::FUN_100c7cb0 (FUNCTION)", "0x1006ee34"], ["0x100c688b", "mov dword ptr [edi], 0", "0x1006ee39"]]}, {"orig": [["0x100c6891", "jmp -0xa8"], ["0x100c6896", "int3 "], ["0x100c6897", "int3 "], ["0x100c6898", "int3 "], ["0x100c6899", "int3 "], ["0x100c689a", "int3 "], ["0x100c689b", "int3 "], ["0x100c689c", "int3 "], ["0x100c689d", "int3 "], ["0x100c689e", "int3 "], ["0x100c689f", "int3 "], ["0x100c68a0", "push ebx"], ["0x100c68a1", "push esi"], ["0x100c68a2", "push edi"], ["0x100c68a3", "mov ebx, ecx"], ["0x100c68a5", "mov esi, dword ptr [esp + 0x14]"], ["0x100c68a9", "push ebp"], ["0x100c68aa", "test esi, esi"], ["0x100c68ac", "jne 0xc"], ["0x100c68ae", "mov eax, 0xffffffff"]], "recomp": [["0x1006ee3f", "jmp -0xa6"], ["0x1006ee44", "mov eax, ebx"]]}, {"both": [["0x100c68b3", "pop ebp", "0x1006ee46"], ["0x100c68b4", "pop edi", "0x1006ee47"], ["0x100c68b5", "pop esi", "0x1006ee48"], ["0x100c68b6", "pop ebx", "0x1006ee49"]]}, {"orig": [], "recomp": [["0x1006ee4a", "add esp, 4"], ["0x1006ee4d", "ret 0xc"], ["0x1006ee50", "mov eax, ebx"], ["0x1006ee52", "pop ebp"], ["0x1006ee53", "pop edi"], ["0x1006ee54", "pop esi"], ["0x1006ee55", "pop ebx"], ["0x1006ee56", "add esp, 4"], ["0x1006ee59", "ret 0xc"], ["0x1006ee5c", "mov eax, ebx"], ["0x1006ee5e", "pop ebp"], ["0x1006ee5f", "pop edi"], ["0x1006ee60", "pop esi"], ["0x1006ee61", "pop ebx"], ["0x1006ee62", "add esp, 4"], ["0x1006ee65", "ret 0xc"]]}]]]}, {"address": "0x100c68a0", "recomp": "0x1006ee70", "name": "MxDSBuffer::CreateObject", "matching": 1.0, "diff": []}, {"address": "0x100c6960", "recomp": "0x1006ef30", "name": "MxDSBuffer::StartPresenterFromAction", "matching": 1.0, "diff": []}, {"address": "0x100c6a50", "recomp": "0x1006f020", "name": "MxDSBuffer::ParseChunk", "matching": 0.7991266375545851, "diff": [["@@ -0x100c6a56,173 +0x1006f026,173 @@", [{"both": [["0x100c6a56", "push ebp", "0x1006f026"], ["0x100c6a57", "mov ebp, esp", "0x1006f027"], ["0x100c6a59", "push -1", "0x1006f029"], ["0x100c6a5b", "push <OFFSET1>", "0x1006f02b"], ["0x100c6a60", "push eax", "0x1006f030"], ["0x100c6a61", "mov dword ptr fs:[0], esp", "0x1006f031"], ["0x100c6a68", "sub esp, 0xc", "0x1006f038"], ["0x100c6a6b", "mov dword ptr [ebp - 0x14], 0", "0x1006f03b"], ["0x100c6a72", "push ebx", "0x1006f042"], ["0x100c6a73", "push esi", "0x1006f043"]]}, {"orig": [], "recomp": [["0x1006f044", "mov eax, dword ptr [ecx + 0x30]"]]}, {"both": [["0x100c6a74", "push edi", "0x1006f047"]]}, {"orig": [["0x100c6a75", "mov eax, dword ptr [ecx + 0x30]"], ["0x100c6a78", "mov edi, ecx"]], "recomp": [["0x1006f048", "mov esi, ecx"]]}, {"both": [["0x100c6a7a", "test byte ptr [eax + 0x30], 4", "0x1006f04a"], ["0x100c6a7e", "je 0x33", "0x1006f04e"], ["0x100c6a80", "cmp dword ptr [eax + 0xa8], 0", "0x1006f050"]]}, {"orig": [["0x100c6a87", "mov esi, dword ptr [ebp + 0x18]"]], "recomp": [["0x1006f057", "mov edi, dword ptr [ebp + 0x18]"]]}, {"both": [["0x100c6a8a", "je 0x2a", "0x1006f05a"]]}, {"orig": [["0x100c6a8c", "cmp dword ptr [esi + 0x10], 0"]], "recomp": [["0x1006f05c", "cmp dword ptr [edi + 0x10], 0"]]}, {"both": [["0x100c6a90", "jge 0x24", "0x1006f060"]]}, {"orig": [["0x100c6a92", "test esi, esi"]], "recomp": [["0x1006f062", "test edi, edi"]]}, {"both": [["0x100c6a94", "je 0x8", "0x1006f064"], ["0x100c6a96", "push 1", "0x1006f066"]]}, {"orig": [["0x100c6a98", "mov eax, dword ptr [esi]"], ["0x100c6a9a", "mov ecx, esi"]], "recomp": [["0x1006f068", "mov eax, dword ptr [edi]"], ["0x1006f06a", "mov ecx, edi"]]}, {"both": [["0x100c6a9c", "call dword ptr [eax]", "0x1006f06c"], ["0x100c6a9e", "xor eax, eax", "0x1006f06e"], ["0x100c6aa0", "mov ecx, dword ptr [ebp - 0xc]", "0x1006f070"], ["0x100c6aa3", "pop edi", "0x1006f073"], ["0x100c6aa4", "mov dword ptr fs:[0], ecx", "0x1006f074"], ["0x100c6aab", "pop esi", "0x1006f07b"], ["0x100c6aac", "pop ebx", "0x1006f07c"], ["0x100c6aad", "mov esp, ebp", "0x1006f07d"], ["0x100c6aaf", "pop ebp", "0x1006f07f"], ["0x100c6ab0", "ret 0x14", "0x1006f080"]]}, {"orig": [["0x100c6ab3", "mov esi, dword ptr [ebp + 0x18]"]], "recomp": [["0x1006f083", "mov edi, dword ptr [ebp + 0x18]"]]}, {"both": [["0x100c6ab6", "mov eax, dword ptr [eax + 0xa8]", "0x1006f086"]]}, {"orig": [["0x100c6abc", "lea ecx, [esi + 8]"], ["0x100c6abf", "add dword ptr [esi + 0x10], eax"]], "recomp": [["0x1006f08c", "lea ecx, [edi + 8]"], ["0x1006f08f", "add dword ptr [edi + 0x10], eax"]]}, {"both": [["0x100c6ac2", "mov dword ptr [ebp - 0x18], ecx", "0x1006f092"], ["0x100c6ac5", "mov ax, word ptr [ecx]", "0x1006f095"], ["0x100c6ac8", "test al, 0x10", "0x1006f098"], ["0x100c6aca", "jne 0x10f", "0x1006f09a"], ["0x100c6ad0", "test al, 2", "0x1006f0a0"], ["0x100c6ad2", "je 0xc7", "0x1006f0a2"]]}, {"orig": [["0x100c6ad8", "mov ecx, dword ptr [edi + 0x30]"], ["0x100c6adb", "lea ebx, [esi + 0xc]"]], "recomp": [["0x1006f0a8", "mov ecx, dword ptr [esi + 0x30]"], ["0x1006f0ab", "lea ebx, [edi + 0xc]"]]}, {"both": [["0x100c6ade", "mov eax, dword ptr [ebx]", "0x1006f0ae"], ["0x100c6ae0", "push eax", "0x1006f0b0"], ["0x100c6ae1", "mov eax, dword ptr [ecx]", "0x1006f0b1"], ["0x100c6ae3", "call dword ptr [eax + 0x34]", "0x1006f0b3"], ["0x100c6ae6", "test al, al", "0x1006f0b6"], ["0x100c6ae8", "je 0xb1", "0x1006f0b8"]]}, {"orig": [["0x100c6aee", "mov ecx, dword ptr [edi + 0x30]"]], "recomp": [["0x1006f0be", "mov ecx, dword ptr [esi + 0x30]"]]}, {"both": [["0x100c6af1", "test byte ptr [ecx + 0x30], 4", "0x1006f0c1"], ["0x100c6af5", "je 0x7a", "0x1006f0c5"], ["0x100c6af7", "cmp dword ptr [ecx + 0x3c], 1", "0x1006f0c7"], ["0x100c6afb", "jg 0xa", "0x1006f0cb"], ["0x100c6afd", "mov eax, dword ptr [ecx]", "0x1006f0cd"], ["0x100c6aff", "call dword ptr [eax + 0x24]", "0x1006f0cf"], ["0x100c6b02", "cmp eax, -1", "0x1006f0d2"], ["0x100c6b05", "jne 0x6a", "0x1006f0d5"], ["0x100c6b07", "mov ecx, dword ptr [ebx]", "0x1006f0d7"], ["0x100c6b09", "mov eax, dword ptr [ebp + 0x10]", "0x1006f0d9"], ["0x100c6b0c", "mov ebx, dword ptr [ebp + 8]", "0x1006f0dc"], ["0x100c6b0f", "cmp dword ptr [eax + 0x1c], ecx", "0x1006f0df"], ["0x100c6b12", "jne 0x4d", "0x1006f0e2"], ["0x100c6b14", "mov ecx, dword ptr [ebx + 0x28]", "0x1006f0e4"], ["0x100c6b17", "mov eax, dword ptr [ecx]", "0x1006f0e7"], ["0x100c6b19", "call dword ptr [eax + 0x28]", "0x1006f0e9"]]}, {"orig": [["0x100c6b1c", "mov ecx, dword ptr [edi + 0x30]"]], "recomp": [["0x1006f0ec", "mov ecx, dword ptr [esi + 0x30]"]]}, {"both": [["0x100c6b1f", "mov edx, dword ptr [ecx + 0x1c]", "0x1006f0ef"], ["0x100c6b22", "mov eax, dword ptr [eax + edx*4]", "0x1006f0f2"], ["0x100c6b25", "sub edx, edx", "0x1006f0f5"], ["0x100c6b27", "mov dword ptr [ecx + 0x94], eax", "0x1006f0f7"]]}, {"orig": [["0x100c6b2d", "mov ecx, dword ptr [edi + 0x28]"]], "recomp": [["0x1006f0fd", "mov ecx, dword ptr [esi + 0x28]"]]}, {"both": [["0x100c6b30", "div ecx", "0x1006f100"], ["0x100c6b32", "imul eax, ecx", "0x1006f102"]]}, {"orig": [["0x100c6b35", "mov ecx, dword ptr [edi + 0x30]"]], "recomp": [["0x1006f105", "mov ecx, dword ptr [esi + 0x30]"]]}, {"both": [["0x100c6b38", "mov dword ptr [ecx + 0x98], eax", "0x1006f108"]]}, {"orig": [["0x100c6b3e", "mov ecx, dword ptr [edi + 0x30]"]], "recomp": [["0x1006f10e", "mov ecx, dword ptr [esi + 0x30]"]]}, {"both": [["0x100c6b41", "push ecx", "0x1006f111"], ["0x100c6b42", "mov ecx, ebx", "0x1006f112"], ["0x100c6b44", "call MxStreamController::FindNextActionDataStartFromStreamingAction (FUNCTION)", "0x1006f114"], ["0x100c6b49", "test eax, eax", "0x1006f119"], ["0x100c6b4b", "je 0xc", "0x1006f11b"]]}, {"orig": [["0x100c6b4d", "mov ecx, dword ptr [edi + 0x30]"]], "recomp": [["0x1006f11d", "mov ecx, dword ptr [esi + 0x30]"]]}, {"both": [["0x100c6b50", "mov edx, dword ptr [ecx + 0x98]", "0x1006f120"], ["0x100c6b56", "mov dword ptr [eax + 0x10], edx", "0x1006f126"]]}, {"orig": [["0x100c6b59", "mov ecx, dword ptr [edi + 0x30]"]], "recomp": [["0x1006f129", "mov ecx, dword ptr [esi + 0x30]"]]}, {"both": [["0x100c6b5c", "call MxDSStreamingAction::FUN_100cd2d0 (FUNCTION)", "0x1006f12c"]]}, {"orig": [["0x100c6b61", "test esi, esi"]], "recomp": [["0x1006f131", "test edi, edi"]]}, {"both": [["0x100c6b63", "je 0x8", "0x1006f133"], ["0x100c6b65", "push 1", "0x1006f135"]]}, {"orig": [["0x100c6b67", "mov eax, dword ptr [esi]"], ["0x100c6b69", "mov ecx, esi"], ["0x100c6b6b", "call dword ptr [eax]"], ["0x100c6b6d", "xor esi, esi"]], "recomp": [["0x1006f137", "mov eax, dword ptr [edi]"], ["0x1006f139", "mov ecx, edi"], ["0x1006f13b", "call dword ptr [eax]"], ["0x1006f13d", "xor edi, edi"]]}, {"both": [["0x100c6b6f", "jmp 0x31", "0x1006f13f"], ["0x100c6b71", "mov ecx, dword ptr [ebx]", "0x1006f141"], ["0x100c6b73", "mov eax, dword ptr [ebp + 0x10]", "0x1006f143"], ["0x100c6b76", "cmp dword ptr [eax + 0x1c], ecx", "0x1006f146"], ["0x100c6b79", "jne 0x24", "0x1006f149"], ["0x100c6b7b", "push eax", "0x1006f14b"], ["0x100c6b7c", "mov ebx, dword ptr [ebp + 8]", "0x1006f14c"], ["0x100c6b7f", "mov ecx, ebx", "0x1006f14f"]]}, {"orig": [["0x100c6b81", "mov edi, dword ptr [ebx]"], ["0x100c6b83", "call dword ptr [edi + 0x30]"]], "recomp": [["0x1006f151", "mov esi, dword ptr [ebx]"], ["0x1006f153", "call dword ptr [esi + 0x30]"]]}, {"both": [["0x100c6b86", "test eax, eax", "0x1006f156"], ["0x100c6b88", "jne 0x18", "0x1006f158"], ["0x100c6b8a", "mov ecx, dword ptr [ebx + 0x28]", "0x1006f15a"], ["0x100c6b8d", "mov eax, dword ptr [ebp + 0x10]", "0x1006f15d"], ["0x100c6b90", "push eax", "0x1006f160"]]}, {"orig": [["0x100c6b91", "mov edi, dword ptr [ecx]"], ["0x100c6b93", "call dword ptr [edi + 0x20]"]], "recomp": [["0x1006f161", "mov esi, dword ptr [ecx]"], ["0x1006f163", "call dword ptr [esi + 0x20]"]]}, {"both": [["0x100c6b96", "mov dword ptr [ebp - 0x14], 1", "0x1006f166"], ["0x100c6b9d", "jmp 0x3", "0x1006f16d"], ["0x100c6b9f", "mov ebx, dword ptr [ebp + 8]", "0x1006f16f"]]}, {"orig": [["0x100c6ba2", "test esi, esi"]], "recomp": [["0x1006f172", "test edi, edi"]]}, {"both": [["0x100c6ba4", "je 0x101", "0x1006f174"], ["0x100c6baa", "mov eax, dword ptr [ebp + 0x10]", "0x1006f17a"], ["0x100c6bad", "add ebx, 0x30", "0x1006f17d"], ["0x100c6bb0", "mov ax, word ptr [eax + 0x24]", "0x1006f180"]]}, {"orig": [["0x100c6bb4", "mov ecx, esi"]], "recomp": [["0x1006f184", "mov ecx, edi"]]}, {"both": [["0x100c6bb6", "push eax", "0x1006f186"], ["0x100c6bb7", "push 1", "0x1006f187"], ["0x100c6bb9", "push ebx", "0x1006f189"], ["0x100c6bba", "call MxStreamChunk::SendChunk (FUNCTION)", "0x1006f18a"], ["0x100c6bbf", "test eax, eax", "0x1006f18f"], ["0x100c6bc1", "je 0xe4", "0x1006f191"]]}, {"orig": [["0x100c6bc7", "test esi, esi"]], "recomp": [["0x1006f197", "test edi, edi"]]}, {"both": [["0x100c6bc9", "je 0xdc", "0x1006f199"], ["0x100c6bcf", "push 1", "0x1006f19f"]]}, {"orig": [["0x100c6bd1", "mov eax, dword ptr [esi]"], ["0x100c6bd3", "mov ecx, esi"]], "recomp": [["0x1006f1a1", "mov eax, dword ptr [edi]"], ["0x1006f1a3", "mov ecx, edi"]]}, {"both": [["0x100c6bd5", "call dword ptr [eax]", "0x1006f1a5"], ["0x100c6bd7", "mov eax, dword ptr [ebp - 0x14]", "0x1006f1a7"], ["0x100c6bda", "jmp -0x13f", "0x1006f1aa"], ["0x100c6bdf", "call MxDSChunk::GetHeaderSize (FUNCTION)", "0x1006f1af"]]}, {"orig": [["0x100c6be4", "mov ecx, dword ptr [esi + 0x14]"]], "recomp": [["0x1006f1b4", "mov ecx, dword ptr [edi + 0x14]"]]}, {"both": [["0x100c6be7", "push 0x34", "0x1006f1b7"]]}, {"orig": [["0x100c6be9", "mov edi, 0"]], "recomp": [["0x1006f1b9", "mov esi, 0"]]}, {"both": [["0x100c6bee", "lea ebx, [ecx + eax + 8]", "0x1006f1be"], ["0x100c6bf2", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006f1c2"], ["0x100c6bf7", "add esp, 4", "0x1006f1c7"], ["0x100c6bfa", "mov dword ptr [ebp - 0x10], eax", "0x1006f1ca"], ["0x100c6bfd", "mov dword ptr [ebp - 4], 0", "0x1006f1cd"], ["0x100c6c04", "test eax, eax", "0x1006f1d4"], ["0x100c6c06", "je 0x9", "0x1006f1d6"], ["0x100c6c08", "mov ecx, eax", "0x1006f1d8"], ["0x100c6c0a", "call MxDSBuffer::MxDSBuffer (FUNCTION)", "0x1006f1da"]]}, {"orig": [["0x100c6c0f", "mov edi, eax"]], "recomp": [["0x1006f1df", "mov esi, eax"]]}, {"both": [["0x100c6c11", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006f1e1"]]}, {"orig": [["0x100c6c18", "test edi, edi"]], "recomp": [["0x1006f1e8", "test esi, esi"]]}, {"both": [["0x100c6c1a", "je 0xac", "0x1006f1ea"], ["0x100c6c20", "push 1", "0x1006f1f0"]]}, {"orig": [["0x100c6c22", "mov ecx, edi"]], "recomp": [["0x1006f1f2", "mov ecx, esi"]]}, {"both": [["0x100c6c24", "push ebx", "0x1006f1f4"], ["0x100c6c25", "call MxDSBuffer::AllocateBuffer (FUNCTION)", "0x1006f1f5"], ["0x100c6c2a", "test eax, eax", "0x1006f1fa"], ["0x100c6c2c", "jne 0x8e", "0x1006f1fc"], ["0x100c6c32", "mov eax, dword ptr [ebp + 0xc]", "0x1006f202"]]}, {"orig": [["0x100c6c35", "mov ecx, edi"]], "recomp": [["0x1006f205", "mov ecx, esi"]]}, {"both": [["0x100c6c37", "push eax", "0x1006f207"], ["0x100c6c38", "call MxDSBuffer::CalcBytesRemaining (FUNCTION)", "0x1006f208"], ["0x100c6c3d", "test eax, eax", "0x1006f20d"], ["0x100c6c3f", "jne 0x7f", "0x1006f20f"], ["0x100c6c41", "push 0xb4", "0x1006f211"], ["0x100c6c46", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006f216"], ["0x100c6c4b", "add esp, 4", "0x1006f21b"], ["0x100c6c4e", "mov dword ptr [ebp - 0x10], eax", "0x1006f21e"], ["0x100c6c51", "mov dword ptr [ebp - 4], 1", "0x1006f221"], ["0x100c6c58", "test eax, eax", "0x1006f228"]]}]], ["@@ -0x100c6c5f,50 +0x1006f22f,50 @@", [{"both": [["0x100c6c5f", "je 0xc", "0x1006f22f"], ["0x100c6c61", "mov eax, dword ptr [ebp + 0x10]", "0x1006f231"], ["0x100c6c64", "mov ecx, dword ptr [ebp - 0x10]", "0x1006f234"], ["0x100c6c67", "push eax", "0x1006f237"], ["0x100c6c68", "call MxDSStreamingAction::MxDSStreamingAction (FUNCTION)", "0x1006f238"], ["0x100c6c6d", "mov ebx, dword ptr [ebp + 0x14]", "0x1006f23d"], ["0x100c6c70", "test eax, eax", "0x1006f240"], ["0x100c6c72", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006f242"], ["0x100c6c79", "mov dword ptr [ebx], eax", "0x1006f249"], ["0x100c6c7b", "je 0x43", "0x1006f24b"]]}, {"orig": [["0x100c6c7d", "mov eax, dword ptr [edi + 8]"]], "recomp": [["0x1006f24d", "mov eax, dword ptr [esi + 8]"]]}, {"both": [["0x100c6c80", "push eax", "0x1006f250"], ["0x100c6c81", "call MxStreamChunk::IntoFlags (FUNCTION)", "0x1006f251"], ["0x100c6c86", "add esp, 4", "0x1006f256"], ["0x100c6c89", "mov ecx, dword ptr [ebp - 0x18]", "0x1006f259"], ["0x100c6c8c", "mov cx, word ptr [ecx]", "0x1006f25c"], ["0x100c6c8f", "and cx, 0xffef", "0x1006f25f"], ["0x100c6c94", "mov word ptr [eax], cx", "0x1006f264"]]}, {"orig": [["0x100c6c97", "mov ecx, esi"]], "recomp": [["0x1006f267", "mov ecx, edi"]]}, {"both": [["0x100c6c99", "test ecx, ecx", "0x1006f269"], ["0x100c6c9b", "je 0x6", "0x1006f26b"], ["0x100c6c9d", "push 1", "0x1006f26d"], ["0x100c6c9f", "mov eax, dword ptr [ecx]", "0x1006f26f"], ["0x100c6ca1", "call dword ptr [eax]", "0x1006f271"], ["0x100c6ca3", "mov eax, dword ptr [ebx]", "0x1006f273"]]}, {"orig": [["0x100c6ca5", "mov dword ptr [eax + 0xa0], edi"]], "recomp": [["0x1006f275", "mov dword ptr [eax + 0xa0], esi"]]}, {"both": [["0x100c6cab", "mov eax, dword ptr [ebp - 0x14]", "0x1006f27b"], ["0x100c6cae", "jmp -0x213", "0x1006f27e"], ["0x100c6cb3", "mov eax, dword ptr [ebp - 0x10]", "0x1006f283"], ["0x100c6cb6", "push eax", "0x1006f286"], ["0x100c6cb7", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006f287"], ["0x100c6cbc", "add esp, 4", "0x1006f28c"], ["0x100c6cbf", "ret ", "0x1006f28f"]]}, {"orig": [["0x100c6cc0", "test edi, edi"]], "recomp": [["0x1006f290", "test esi, esi"]]}, {"both": [["0x100c6cc2", "je 0x8", "0x1006f292"], ["0x100c6cc4", "push 1", "0x1006f294"]]}, {"orig": [["0x100c6cc6", "mov eax, dword ptr [edi]"], ["0x100c6cc8", "mov ecx, edi"], ["0x100c6cca", "call dword ptr [eax]"]], "recomp": [["0x1006f296", "mov eax, dword ptr [esi]"]]}, {"both": [["0x100c6ccc", "mov ecx, esi", "0x1006f298"]]}, {"orig": [], "recomp": [["0x1006f29a", "call dword ptr [eax]"], ["0x1006f29c", "mov ecx, edi"]]}, {"both": [["0x100c6cce", "test ecx, ecx", "0x1006f29e"], ["0x100c6cd0", "je 0x6", "0x1006f2a0"], ["0x100c6cd2", "push 1", "0x1006f2a2"], ["0x100c6cd4", "mov eax, dword ptr [ecx]", "0x1006f2a4"], ["0x100c6cd6", "call dword ptr [eax]", "0x1006f2a6"], ["0x100c6cd8", "mov eax, 0xffffffff", "0x1006f2a8"], ["0x100c6cdd", "jmp -0x242", "0x1006f2ad"], ["0x100c6ce2", "mov eax, <OFFSET13>", "0x1006f2b2"], ["0x100c6ce7", "jmp ___CxxFrameHandler (FUNCTION)", "0x1006f2b7"], ["0x100c6cec", "mov eax, dword ptr [ebp - 0x10]", "0x1006f2bc"]]}]]]}, {"address": "0x100c6d00", "recomp": "0x1006f2d0", "name": "MxDSBuffer::ReadChunk", "matching": 1.0, "diff": []}, {"address": "0x100c6df0", "recomp": "0x1006f3c0", "name": "MxDSBuffer::SkipToData", "matching": 0.5899280575539568, "diff": [["@@ -0x100c6df0,70 +0x1006f3c0,69 @@", [{"both": [["0x100c6df0", "push esi", "0x1006f3c0"], ["0x100c6df1", "xor eax, eax", "0x1006f3c1"]]}, {"orig": [], "recomp": [["0x1006f3c3", "push edi"]]}, {"both": [["0x100c6df3", "cmp dword ptr [ecx + 0xc], eax", "0x1006f3c4"]]}, {"orig": [["0x100c6df6", "je 0x83"], ["0x100c6dfc", "mov esi, dword ptr [ecx + 0xc]"], ["0x100c6dff", "mov edx, dword ptr [esi]"]], "recomp": [["0x1006f3c7", "je 0x85"], ["0x1006f3cd", "mov edi, dword ptr [ecx + 0xc]"], ["0x1006f3d0", "mov edx, dword ptr [edi]"]]}, {"both": [["0x100c6e01", "cmp edx, 0x5453494c", "0x1006f3d2"]]}, {"orig": [["0x100c6e07", "ja 0x18"], ["0x100c6e09", "je 0x44"]], "recomp": [["0x1006f3d8", "ja 0x1d"], ["0x1006f3da", "je 0x49"]]}, {"both": [["0x100c6e0b", "cmp edx, 0x46464952", "0x1006f3dc"]]}, {"orig": [["0x100c6e11", "je 0x3c"]], "recomp": [["0x1006f3e2", "je 0x41"]]}, {"both": [["0x100c6e13", "xor eax, eax", "0x1006f3e4"]]}, {"orig": [], "recomp": [["0x1006f3e6", "pop edi"], ["0x1006f3e7", "mov dword ptr [ecx + 0xc], 0"], ["0x1006f3ee", "mov dword ptr [ecx + 0x10], 0"]]}, {"both": [["0x100c6e15", "pop esi", "0x1006f3f5"]]}, {"orig": [["0x100c6e16", "mov dword ptr [ecx + 0xc], 0"], ["0x100c6e1d", "mov dword ptr [ecx + 0x10], eax"]], "recomp": []}, {"both": [["0x100c6e20", "ret ", "0x1006f3f6"], ["0x100c6e21", "cmp edx, 0x624f784d", "0x1006f3f7"], ["0x100c6e27", "ja 0xc", "0x1006f3fd"]]}, {"orig": [["0x100c6e29", "je 0x59"]], "recomp": [["0x1006f3ff", "je 0x57"]]}, {"both": [["0x100c6e2b", "cmp edx, 0x6144784d", "0x1006f401"], ["0x100c6e31", "je 0x24", "0x1006f407"]]}, {"orig": [["0x100c6e33", "jmp -0x22"]], "recomp": [["0x1006f409", "jmp -0x27"]]}, {"both": [["0x100c6e35", "cmp edx, 0x6448784d", "0x1006f40b"], ["0x100c6e3b", "je 0x22", "0x1006f411"], ["0x100c6e3d", "cmp edx, 0x6843784d", "0x1006f413"]]}, {"orig": [["0x100c6e43", "je 0x3f"]], "recomp": [["0x1006f419", "je 0x3d"]]}, {"both": [["0x100c6e45", "cmp edx, 0x7453784d", "0x1006f41b"], ["0x100c6e4b", "je 0xa", "0x1006f421"]]}, {"orig": [["0x100c6e4d", "jmp -0x3c"], ["0x100c6e4f", "add esi, 0xc"], ["0x100c6e52", "mov dword ptr [ecx + 0xc], esi"]], "recomp": [["0x1006f423", "jmp -0x41"], ["0x1006f425", "add edi, 0xc"], ["0x1006f428", "mov dword ptr [ecx + 0xc], edi"]]}, {"both": [["0x100c6e55", "jmp 0x13", "0x1006f42b"]]}, {"orig": [["0x100c6e57", "add esi, 8"], ["0x100c6e5a", "mov dword ptr [ecx + 0xc], esi"]], "recomp": [["0x1006f42d", "add edi, 8"], ["0x1006f430", "mov dword ptr [ecx + 0xc], edi"]]}, {"both": [["0x100c6e5d", "jmp 0xb", "0x1006f433"]]}, {"orig": [["0x100c6e5f", "mov edx, dword ptr [esi + 4]"], ["0x100c6e62", "add edx, esi"]], "recomp": [["0x1006f435", "mov edx, dword ptr [edi + 4]"], ["0x1006f438", "add edx, edi"]]}, {"both": [["0x100c6e64", "add edx, 8", "0x1006f43a"], ["0x100c6e67", "mov dword ptr [ecx + 0xc], edx", "0x1006f43d"], ["0x100c6e6a", "mov edx, dword ptr [ecx + 0x28]", "0x1006f440"], ["0x100c6e6d", "add edx, dword ptr [ecx + 8]", "0x1006f443"], ["0x100c6e70", "sub edx, 8", "0x1006f446"], ["0x100c6e73", "cmp edx, dword ptr [ecx + 0xc]", "0x1006f449"]]}, {"orig": [["0x100c6e76", "jae -0x7c"], ["0x100c6e78", "mov dword ptr [ecx + 0xc], 0"]], "recomp": [["0x1006f44c", "jae -0x85"], ["0x1006f452", "pop edi"], ["0x1006f453", "mov dword ptr [ecx + 0x10], eax"]]}, {"both": [["0x100c6e7f", "pop esi", "0x1006f456"]]}, {"orig": [["0x100c6e80", "mov dword ptr [ecx + 0x10], eax"]], "recomp": []}, {"both": [["0x100c6e83", "ret ", "0x1006f457"], ["0x100c6e84", "mov eax, dword ptr [ecx + 0xc]", "0x1006f458"]]}, {"orig": [["0x100c6e87", "mov edx, dword ptr [eax + 4]"]], "recomp": [["0x1006f45b", "mov edx, dword ptr [edi + 4]"]]}, {"both": [["0x100c6e8a", "mov esi, edx", "0x1006f45e"], ["0x100c6e8c", "and esi, 1", "0x1006f460"]]}, {"orig": [["0x100c6e8f", "add esi, edx"], ["0x100c6e91", "lea edx, [esi + eax]"]], "recomp": [["0x1006f463", "add esi, edi"], ["0x1006f465", "add edx, esi"]]}, {"both": [["0x100c6e94", "mov esi, dword ptr [ecx + 0x28]", "0x1006f467"], ["0x100c6e97", "add esi, dword ptr [ecx + 8]", "0x1006f46a"], ["0x100c6e9a", "mov dword ptr [ecx + 0xc], edx", "0x1006f46d"], ["0x100c6e9d", "add edx, 8", "0x1006f470"], ["0x100c6ea0", "sub esi, 8", "0x1006f473"], ["0x100c6ea3", "mov dword ptr [ecx + 0xc], edx", "0x1006f476"], ["0x100c6ea6", "cmp esi, edx", "0x1006f479"], ["0x100c6ea8", "jae -0x2b", "0x1006f47b"]]}, {"orig": [["0x100c6eaa", "pop esi"]], "recomp": [["0x1006f47d", "pop edi"]]}, {"both": [["0x100c6eab", "mov dword ptr [ecx + 0x10], eax", "0x1006f47e"], ["0x100c6eae", "mov dword ptr [ecx + 0xc], 0", "0x1006f481"]]}, {"orig": [], "recomp": [["0x1006f488", "pop esi"]]}, {"both": [["0x100c6eb5", "ret ", "0x1006f489"]]}, {"orig": [["0x100c6eb6", "int3 "], ["0x100c6eb7", "int3 "], ["0x100c6eb8", "int3 "], ["0x100c6eb9", "int3 "]], "recomp": []}]]]}, {"address": "0x100c6ec0", "recomp": "0x1006f490", "name": "MxDSBuffer::ReleaseRef", "matching": 1.0, "diff": []}, {"address": "0x100c6ee0", "recomp": "0x1006f4b0", "name": "MxDSBuffer::AddRef", "matching": 1.0, "diff": []}, {"address": "0x100c6ef0", "recomp": "0x1006f4c0", "name": "MxDSBuffer::CalcBytesRemaining", "matching": 0.9272727272727272, "diff": [["@@ -0x100c6f19,31 +0x1006f4e9,31 @@", [{"both": [["0x100c6f19", "jmp 0x17", "0x1006f4e9"], ["0x100c6f1b", "call MxDSChunk::GetHeaderSize (FUNCTION)", "0x1006f4eb"], ["0x100c6f20", "mov ecx, dword ptr [esp + 0x14]", "0x1006f4f0"], ["0x100c6f24", "lea esi, [ecx + eax + 8]", "0x1006f4f4"], ["0x100c6f28", "mov ebp, dword ptr [ecx + 4]", "0x1006f4f8"], ["0x100c6f2b", "call MxDSChunk::GetHeaderSize (FUNCTION)", "0x1006f4fb"], ["0x100c6f30", "sub ebp, eax", "0x1006f500"], ["0x100c6f32", "mov eax, dword ptr [ebx + 0x2c]", "0x1006f502"], ["0x100c6f35", "cmp ebp, eax", "0x1006f505"], ["0x100c6f37", "ja 0x3b", "0x1006f507"]]}, {"orig": [["0x100c6f39", "mov edi, dword ptr [ebx + 0x28]"]], "recomp": [["0x1006f509", "mov edi, dword ptr [ebx + 8]"]]}, {"both": [["0x100c6f3c", "mov ecx, ebp", "0x1006f50c"], ["0x100c6f3e", "shr ecx, 2", "0x1006f50e"], ["0x100c6f41", "sub edi, eax", "0x1006f511"]]}, {"orig": [["0x100c6f43", "add edi, dword ptr [ebx + 8]"]], "recomp": [["0x1006f513", "add edi, dword ptr [ebx + 0x28]"]]}, {"both": [["0x100c6f46", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1006f516"], ["0x100c6f48", "mov ecx, ebp", "0x1006f518"], ["0x100c6f4a", "and ecx, 3", "0x1006f51a"], ["0x100c6f4d", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1006f51d"]]}, {"orig": [["0x100c6f4f", "mov eax, dword ptr [ebx + 0x2c]"], ["0x100c6f52", "cmp dword ptr [ebx + 0x28], eax"]], "recomp": [["0x1006f51f", "mov eax, dword ptr [ebx + 0x28]"], ["0x1006f522", "cmp dword ptr [ebx + 0x2c], eax"]]}, {"both": [["0x100c6f55", "jne 0x18", "0x1006f525"], ["0x100c6f57", "mov esi, dword ptr [ebx + 8]", "0x1006f527"], ["0x100c6f5a", "push esi", "0x1006f52a"], ["0x100c6f5b", "call MxStreamChunk::IntoLength (FUNCTION)", "0x1006f52b"], ["0x100c6f60", "add esp, 4", "0x1006f530"], ["0x100c6f63", "mov edi, dword ptr [eax]", "0x1006f533"], ["0x100c6f65", "call MxDSChunk::GetHeaderSize (FUNCTION)", "0x1006f535"], ["0x100c6f6a", "add edi, eax", "0x1006f53a"], ["0x100c6f6c", "mov dword ptr [esi + 4], edi", "0x1006f53c"], ["0x100c6f6f", "xor edi, edi", "0x1006f53f"]]}]]]}, {"address": "0x100c6f80", "recomp": "0x1006f550", "name": "MxDSBuffer::FUN_100c6f80", "matching": 1.0, "diff": []}, {"address": "0x100c6fa0", "recomp": "0x1006f570", "name": "MxDSBuffer::FUN_100c6fa0", "matching": 0.23636363636363636, "diff": [["@@ -0x100c6fa0,54 +0x1006f570,56 @@", [{"both": [["0x100c6fa0", "mov edx, dword ptr [esp + 4]", "0x1006f570"]]}, {"orig": [["0x100c6fa4", "sub esp, 4"]], "recomp": [["0x1006f574", "push esi"], ["0x1006f575", "mov eax, edx"]]}, {"both": [["0x100c6fa7", "test edx, edx", "0x1006f577"]]}, {"orig": [["0x100c6fa9", "push ebx"], ["0x100c6faa", "push esi"], ["0x100c6fab", "push edi"], ["0x100c6fac", "je 0x6"], ["0x100c6fae", "mov dword ptr [esp + 0xc], edx"], ["0x100c6fb2", "jmp 0x7"]], "recomp": [["0x1006f579", "jne 0x3"]]}, {"both": [["0x100c6fb4", "mov eax, dword ptr [ecx + 8]", "0x1006f57b"]]}, {"orig": [["0x100c6fb7", "mov dword ptr [esp + 0xc], eax"]], "recomp": []}, {"both": [["0x100c6fbb", "mov esi, dword ptr [ecx + 0x28]", "0x1006f57e"]]}, {"orig": [["0x100c6fbe", "mov eax, dword ptr [ecx + 8]"], ["0x100c6fc1", "lea ecx, [esi + eax - 8]"], ["0x100c6fc5", "cmp dword ptr [esp + 0xc], ecx"], ["0x100c6fc9", "ja 0xa7"], ["0x100c6fcf", "mov esi, 0xc"], ["0x100c6fd4", "mov edi, 8"], ["0x100c6fd9", "mov eax, dword ptr [esp + 0xc]"], ["0x100c6fdd", "mov eax, dword ptr [eax]"], ["0x100c6fdf", "cmp eax, 0x5453494c"], ["0x100c6fe4", "ja 0x14"], ["0x100c6fe6", "je 0x4d"], ["0x100c6fe8", "cmp eax, 0x46464952"], ["0x100c6fed", "je 0x46"]], "recomp": [["0x1006f581", "mov ecx, dword ptr [ecx + 8]"], ["0x1006f584", "lea esi, [esi + ecx - 8]"], ["0x1006f588", "cmp esi, eax"], ["0x1006f58a", "jb 0x76"], ["0x1006f58c", "mov ecx, dword ptr [eax]"], ["0x1006f58e", "cmp ecx, 0x5453494c"], ["0x1006f594", "ja 0x10"], ["0x1006f596", "je 0x44"], ["0x1006f598", "cmp ecx, 0x46464952"], ["0x1006f59e", "je 0x3c"]]}, {"both": [["0x100c6fef", "xor eax, eax", "0x1006f5a0"]]}, {"orig": [["0x100c6ff1", "pop edi"]], "recomp": []}, {"both": [["0x100c6ff2", "pop esi", "0x1006f5a2"]]}, {"orig": [["0x100c6ff3", "pop ebx"], ["0x100c6ff4", "add esp, 4"]], "recomp": []}, {"both": [["0x100c6ff7", "ret 4", "0x1006f5a3"]]}, {"orig": [["0x100c6ffa", "cmp eax, 0x624f784d"], ["0x100c6fff", "ja 0x14"], ["0x100c7001", "je 0x3e"], ["0x100c7003", "cmp eax, 0x6144784d"], ["0x100c7008", "je 0x31"]], "recomp": [["0x1006f5a6", "cmp ecx, 0x624f784d"], ["0x1006f5ac", "ja 0x10"], ["0x1006f5ae", "je 0x36"], ["0x1006f5b0", "cmp ecx, 0x6144784d"], ["0x1006f5b6", "je 0x29"]]}, {"both": [["0x100c700a", "xor eax, eax", "0x1006f5b8"]]}, {"orig": [["0x100c700c", "pop edi"]], "recomp": []}, {"both": [["0x100c700d", "pop esi", "0x1006f5ba"]]}, {"orig": [["0x100c700e", "pop ebx"], ["0x100c700f", "add esp, 4"]], "recomp": []}, {"both": [["0x100c7012", "ret 4", "0x1006f5bb"]]}, {"orig": [["0x100c7015", "cmp eax, 0x6448784d"], ["0x100c701a", "je 0x43"], ["0x100c701c", "cmp eax, 0x6843784d"], ["0x100c7021", "je 0x1e"], ["0x100c7023", "cmp eax, 0x7453784d"], ["0x100c7028", "je 0x11"]], "recomp": [["0x1006f5be", "cmp ecx, 0x6448784d"], ["0x1006f5c4", "je 0x30"], ["0x1006f5c6", "cmp ecx, 0x6843784d"], ["0x1006f5cc", "je 0x18"], ["0x1006f5ce", "cmp ecx, 0x7453784d"], ["0x1006f5d4", "je 0xb"]]}, {"both": [["0x100c702a", "xor eax, eax", "0x1006f5d6"]]}, {"orig": [["0x100c702c", "pop edi"]], "recomp": []}, {"both": [["0x100c702d", "pop esi", "0x1006f5d8"]]}, {"orig": [["0x100c702e", "pop ebx"], ["0x100c702f", "add esp, 4"]], "recomp": []}, {"both": [["0x100c7032", "ret 4", "0x1006f5d9"]]}, {"orig": [], "recomp": [["0x1006f5dc", "add eax, 0xc"], ["0x1006f5df", "jmp 0x1d"], ["0x1006f5e1", "add eax, 8"], ["0x1006f5e4", "jmp 0x18"], ["0x1006f5e6", "cmp eax, edx"], ["0x1006f5e8", "jne 0x1a"], ["0x1006f5ea", "mov ecx, eax"], ["0x1006f5ec", "and ecx, 1"], ["0x1006f5ef", "add eax, ecx"], ["0x1006f5f1", "add eax, 8"], ["0x1006f5f4", "jmp 0x8"], ["0x1006f5f6", "mov ecx, dword ptr [eax + 4]"], ["0x1006f5f9", "add ecx, 8"], ["0x1006f5fc", "add eax, ecx"], ["0x1006f5fe", "cmp esi, eax"], ["0x1006f600", "jae -0x76"], ["0x1006f602", "xor eax, eax"], ["0x1006f604", "pop esi"], ["0x1006f605", "ret 4"]]}]]]}, {"address": "0x100c7090", "recomp": "0x1006f610", "name": "MxDSBuffer::FUN_100c7090", "matching": 1.0, "diff": []}, {"address": "0x100c70d0", "recomp": "0x1006f650", "name": "MxDSBuffer::Append", "matching": 1.0, "diff": []}, {"address": "0x100c7120", "recomp": "0x1006f6a0", "name": "MxDiskStreamController::MxDiskStreamController", "matching": 1.0, "diff": []}, {"address": "0x100c7330", "recomp": "0x1006d9e0", "name": "list<MxDSAction *,allocator<MxDSAction *> >::_Buynode", "matching": 1.0, "diff": []}, {"address": "0x100c7360", "recomp": "0x1006f8b0", "name": "MxDiskStreamController::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c7370", "recomp": "0x1006f8c0", "name": "MxDiskStreamController::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c7420", "recomp": "0x1006f970", "name": "list<MxDSBuffer *,allocator<MxDSBuffer *> >::~list<MxDSBuffer *,allocator<MxDSBuffer *> >", "matching": 1.0, "diff": []}, {"address": "0x100c7490", "recomp": "0x1006f9e0", "name": "list<MxDSBuffer *,allocator<MxDSBuffer *> >::_Buynode", "matching": 1.0, "diff": []}, {"address": "0x100c74c0", "recomp": "0x1006fa10", "name": "MxDiskStreamController::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c74e0", "recomp": "0x1006fa30", "name": "List<MxDSBuffer *>::~List<MxDSBuffer *>", "matching": 1.0, "diff": []}, {"address": "0x100c7530", "recomp": "0x1006fa80", "name": "MxDiskStreamController::~MxDiskStreamController", "matching": 1.0, "diff": []}, {"address": "0x100c7790", "recomp": "0x1006fce0", "name": "MxDiskStreamController::Open", "matching": 0.825, "diff": [["@@ -0x100c77b2,68 +0x1006fd02,68 @@", [{"both": [["0x100c77b2", "push eax", "0x1006fd02"], ["0x100c77b3", "lea ecx, [ebp - 0x14]", "0x1006fd03"], ["0x100c77b6", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x1006fd06"], ["0x100c77bb", "mov eax, dword ptr [ebp + 8]", "0x1006fd0b"], ["0x100c77be", "mov ecx, esi", "0x1006fd0e"], ["0x100c77c0", "mov dword ptr [ebp - 4], 0", "0x1006fd10"], ["0x100c77c7", "push eax", "0x1006fd17"], ["0x100c77c8", "call MxStreamController::Open (FUNCTION)", "0x1006fd18"], ["0x100c77cd", "mov dword ptr [ebp - 0x10], eax", "0x1006fd1d"], ["0x100c77d0", "test eax, eax", "0x1006fd20"]]}, {"orig": [["0x100c77d2", "jne 0x6b"]], "recomp": [["0x1006fd22", "jne 0x35"]]}, {"both": [["0x100c77d4", "push 0x60", "0x1006fd24"], ["0x100c77d6", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006fd26"], ["0x100c77db", "mov dword ptr [ebp - 0x10], eax", "0x1006fd2b"], ["0x100c77de", "add esp, 4", "0x1006fd2e"], ["0x100c77e1", "mov byte ptr [ebp - 4], 1", "0x1006fd31"], ["0x100c77e5", "mov edi, eax", "0x1006fd35"], ["0x100c77e7", "mov eax, 0", "0x1006fd37"], ["0x100c77ec", "test edi, edi", "0x1006fd3c"], ["0x100c77ee", "je 0x7", "0x1006fd3e"], ["0x100c77f0", "mov ecx, edi", "0x1006fd40"], ["0x100c77f2", "call MxDiskStreamProvider::MxDiskStreamProvider (FUNCTION)", "0x1006fd42"], ["0x100c77f7", "mov byte ptr [ebp - 4], 0", "0x1006fd47"], ["0x100c77fb", "mov dword ptr [esi + 0x28], eax", "0x1006fd4b"], ["0x100c77fe", "test eax, eax", "0x1006fd4e"]]}, {"orig": [["0x100c7800", "jne 0x9"]], "recomp": [["0x1006fd50", "jne 0x28"]]}, {"both": [["0x100c7802", "mov dword ptr [ebp - 0x10], 0xffffffff", "0x1006fd52"]]}, {"orig": [["0x100c7809", "jmp 0x34"]], "recomp": [["0x1006fd59", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x1006fd60", "call <OFFSET6>"], ["0x1006fd65", "mov eax, dword ptr [ebp - 0x10]"], ["0x1006fd68", "mov ecx, dword ptr [ebp - 0xc]"], ["0x1006fd6b", "mov dword ptr fs:[0], ecx"], ["0x1006fd72", "pop edi"], ["0x1006fd73", "pop esi"], ["0x1006fd74", "mov esp, ebp"], ["0x1006fd76", "pop ebp"], ["0x1006fd77", "ret 4"]]}, {"both": [["0x100c780b", "push esi", "0x1006fd7a"], ["0x100c780c", "mov edx, dword ptr [eax]", "0x1006fd7b"], ["0x100c780e", "mov ecx, eax", "0x1006fd7d"], ["0x100c7810", "call dword ptr [edx + 0x14]", "0x1006fd7f"], ["0x100c7813", "mov dword ptr [ebp - 0x10], eax", "0x1006fd82"], ["0x100c7816", "test eax, eax", "0x1006fd85"], ["0x100c7818", "je 0x16", "0x1006fd87"], ["0x100c781a", "mov ecx, dword ptr [esi + 0x28]", "0x1006fd89"], ["0x100c781d", "test ecx, ecx", "0x1006fd8c"], ["0x100c781f", "je 0x6", "0x1006fd8e"], ["0x100c7821", "push 1", "0x1006fd90"], ["0x100c7823", "mov eax, dword ptr [ecx]", "0x1006fd92"], ["0x100c7825", "call dword ptr [eax]", "0x1006fd94"], ["0x100c7827", "mov dword ptr [esi + 0x28], 0", "0x1006fd96"]]}, {"orig": [["0x100c782e", "jmp 0xf"]], "recomp": [["0x1006fd9d", "jmp -0x46"]]}, {"both": [["0x100c7830", "call TickleManager (FUNCTION)", "0x1006fd9f"], ["0x100c7835", "mov ecx, eax", "0x1006fda4"], ["0x100c7837", "push 0xa", "0x1006fda6"], ["0x100c7839", "push esi", "0x1006fda8"], ["0x100c783a", "mov eax, dword ptr [ecx]", "0x1006fda9"], ["0x100c783c", "call dword ptr [eax + 0x14]", "0x1006fdab"]]}, {"orig": [["0x100c783f", "mov dword ptr [ebp - 4], 0xffffffff"], ["0x100c7846", "call <OFFSET7>"], ["0x100c784b", "mov eax, dword ptr [ebp - 0x10]"], ["0x100c784e", "mov ecx, dword ptr [ebp - 0xc]"], ["0x100c7851", "mov dword ptr fs:[0], ecx"], ["0x100c7858", "pop edi"], ["0x100c7859", "pop esi"], ["0x100c785a", "mov esp, ebp"], ["0x100c785c", "pop ebp"], ["0x100c785d", "ret 4"]], "recomp": [["0x1006fdae", "jmp -0x57"]]}, {"both": [["0x100c7860", "mov eax, dword ptr [ebp - 0x10]", "0x1006fdb0"], ["0x100c7863", "push eax", "0x1006fdb3"], ["0x100c7864", "call ??3@YAXPAX@Z (FUNCTION)", "0x1006fdb4"], ["0x100c7869", "add esp, 4", "0x1006fdb9"], ["0x100c786c", "ret ", "0x1006fdbc"], ["0x100c786d", "mov eax, <OFFSET9>", "0x1006fdbd"], ["0x100c7872", "jmp ___CxxFrameHandler (FUNCTION)", "0x1006fdc2"], ["0x100c7877", "lea ecx, [ebp - 0x14]", "0x1006fdc7"], ["0x100c787a", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x1006fdca"]]}]]]}, {"address": "0x100c7880", "recomp": "0x1006fdd0", "name": "MxDiskStreamController::VTable0x18", "matching": 1.0, "diff": []}, {"address": "0x100c7890", "recomp": "0x1006fde0", "name": "MxDiskStreamController::FUN_100c7890", "matching": 0.803030303030303, "diff": [["@@ -0x100c7890,67 +0x1006fde0,65 @@", [{"both": [["0x100c7890", "mov eax, dword ptr fs:[0]", "0x1006fde0"], ["0x100c7896", "push ebp", "0x1006fde6"], ["0x100c7897", "mov ebp, esp", "0x1006fde7"], ["0x100c7899", "push -1", "0x1006fde9"], ["0x100c789b", "push <OFFSET1>", "0x1006fdeb"], ["0x100c78a0", "push eax", "0x1006fdf0"], ["0x100c78a1", "mov dword ptr fs:[0], esp", "0x1006fdf1"]]}, {"orig": [["0x100c78a8", "sub esp, 8"]], "recomp": [["0x1006fdf8", "sub esp, 0xc"]]}, {"both": [["0x100c78ab", "push ebx", "0x1006fdfb"], ["0x100c78ac", "push esi", "0x1006fdfc"], ["0x100c78ad", "lea eax, [ecx + 8]", "0x1006fdfd"], ["0x100c78b0", "push edi", "0x1006fe00"], ["0x100c78b1", "mov esi, ecx", "0x1006fe01"], ["0x100c78b3", "push eax", "0x1006fe03"], ["0x100c78b4", "lea ecx, [ebp - 0x14]", "0x1006fe04"], ["0x100c78b7", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x1006fe07"], ["0x100c78bc", "mov dword ptr [ebp - 4], 0", "0x1006fe0c"]]}, {"orig": [["0x100c78c3", "cmp dword ptr [ebp + 8], 0"]], "recomp": [["0x1006fe13", "mov eax, dword ptr [ebp + 8]"], ["0x1006fe16", "test eax, eax"]]}, {"both": [["0x100c78c7", "jne 0x24", "0x1006fe18"], ["0x100c78c9", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006fe1a"], ["0x100c78d0", "call <OFFSET3>", "0x1006fe21"], ["0x100c78d5", "mov eax, 0xffffffff", "0x1006fe26"], ["0x100c78da", "mov ecx, dword ptr [ebp - 0xc]", "0x1006fe2b"], ["0x100c78dd", "pop edi", "0x1006fe2e"], ["0x100c78de", "mov dword ptr fs:[0], ecx", "0x1006fe2f"], ["0x100c78e5", "pop esi", "0x1006fe36"], ["0x100c78e6", "pop ebx", "0x1006fe37"], ["0x100c78e7", "mov esp, ebp", "0x1006fe38"], ["0x100c78e9", "pop ebp", "0x1006fe3a"], ["0x100c78ea", "ret 4", "0x1006fe3b"]]}, {"orig": [], "recomp": [["0x1006fe3e", "push 0xc"], ["0x1006fe40", "mov dword ptr [ebp - 0x18], eax"]]}, {"both": [["0x100c78ed", "mov eax, dword ptr [esi + 0x84]", "0x1006fe43"]]}, {"orig": [["0x100c78f3", "push 0xc"]], "recomp": []}, {"both": [["0x100c78f5", "mov dword ptr [ebp - 0x10], eax", "0x1006fe49"]]}, {"orig": [["0x100c78f8", "lea ebx, [eax + 4]"], ["0x100c78fb", "mov edi, dword ptr [ebx]"]], "recomp": [["0x1006fe4c", "lea edi, [eax + 4]"], ["0x1006fe4f", "mov ebx, dword ptr [edi]"]]}, {"both": [["0x100c78fd", "call ??2@YAPAXI@Z (FUNCTION)", "0x1006fe51"], ["0x100c7902", "add esp, 4", "0x1006fe56"]]}, {"orig": [["0x100c7905", "test edi, edi"]], "recomp": [["0x1006fe59", "test ebx, ebx"]]}, {"both": [["0x100c7907", "je 0xa", "0x1006fe5b"], ["0x100c7909", "mov ecx, dword ptr [ebp - 0x10]", "0x1006fe5d"], ["0x100c790c", "mov dword ptr [eax], ecx", "0x1006fe60"]]}, {"orig": [["0x100c790e", "mov dword ptr [eax + 4], edi"]], "recomp": [["0x1006fe62", "mov dword ptr [eax + 4], ebx"]]}, {"both": [["0x100c7911", "jmp 0x5", "0x1006fe65"], ["0x100c7913", "mov dword ptr [eax], eax", "0x1006fe67"], ["0x100c7915", "mov dword ptr [eax + 4], eax", "0x1006fe69"]]}, {"orig": [["0x100c7918", "mov dword ptr [ebx], eax"]], "recomp": [["0x1006fe6c", "mov dword ptr [edi], eax"]]}, {"both": [["0x100c791a", "mov ecx, dword ptr [eax + 4]", "0x1006fe6e"], ["0x100c791d", "mov dword ptr [ecx], eax", "0x1006fe71"], ["0x100c791f", "add eax, 8", "0x1006fe73"], ["0x100c7922", "je 0x5", "0x1006fe76"]]}, {"orig": [["0x100c7924", "mov ecx, dword ptr [ebp + 8]"]], "recomp": [["0x1006fe78", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100c7927", "mov dword ptr [eax], ecx", "0x1006fe7b"], ["0x100c7929", "mov ecx, esi", "0x1006fe7d"], ["0x100c792b", "inc dword ptr [esi + 0x88]", "0x1006fe7f"], ["0x100c7931", "call MxDiskStreamController::FUN_100c7970 (FUNCTION)", "0x1006fe85"], ["0x100c7936", "mov dword ptr [ebp - 4], 0xffffffff", "0x1006fe8a"], ["0x100c793d", "call <OFFSET3>", "0x1006fe91"], ["0x100c7942", "xor eax, eax", "0x1006fe96"]]}, {"orig": [["0x100c7944", "jmp -0x6c"]], "recomp": [["0x1006fe98", "jmp -0x6f"]]}, {"both": [["0x100c7946", "mov eax, <OFFSET6>", "0x1006fe9a"], ["0x100c794b", "jmp ___CxxFrameHandler (FUNCTION)", "0x1006fe9f"], ["0x100c7950", "lea ecx, [ebp - 0x14]", "0x1006fea4"], ["0x100c7953", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x1006fea7"]]}, {"orig": [["0x100c7958", "int3 "], ["0x100c7959", "int3 "], ["0x100c795a", "int3 "], ["0x100c795b", "int3 "]], "recomp": []}]]]}, {"address": "0x100c7960", "recomp": "0x1006feb0", "name": "MxDiskStreamController::VTable0x34", "matching": 1.0, "diff": []}, {"address": "0x100c7970", "recomp": "0x1006fec0", "name": "MxDiskStreamController::FUN_100c7970", "matching": 1.0, "diff": []}, {"address": "0x100c7980", "recomp": "0x1006fed0", "name": "MxDiskStreamController::FUN_100c7980", "matching": 1.0, "diff": []}, {"address": "0x100c7ac0", "recomp": "0x10070010", "name": "MxDiskStreamController::VTable0x28", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c7b64,33 +0x100700b4,33 @@", [{"both": [["0x100c7b64", "mov byte ptr [ebp - 4], 0", "0x100700b4"], ["0x100c7b68", "je 0x53", "0x100700b8"], ["0x100c7b6a", "mov ecx, dword ptr [eax + 0x98]", "0x100700ba"], ["0x100c7b70", "mov edx, dword ptr [ebp - 0x14]", "0x100700c0"], ["0x100c7b73", "add ecx, ebx", "0x100700c3"], ["0x100c7b75", "push 0xc", "0x100700c5"], ["0x100c7b77", "mov dword ptr [edx + 0x94], ecx", "0x100700c7"], ["0x100c7b7d", "mov dword ptr [edx + 0x98], ecx", "0x100700cd"], ["0x100c7b83", "mov eax, dword ptr [esi + 0x40]", "0x100700d3"], ["0x100c7b86", "mov dword ptr [ebp - 0x18], eax", "0x100700d6"]]}, {"orig": [["0x100c7b89", "lea edi, [eax + 4]"], ["0x100c7b8c", "mov ebx, dword ptr [edi]"]], "recomp": [["0x100700d9", "lea ebx, [eax + 4]"], ["0x100700dc", "mov edi, dword ptr [ebx]"]]}, {"both": [["0x100c7b8e", "call ??2@YAPAXI@Z (FUNCTION)", "0x100700de"], ["0x100c7b93", "add esp, 4", "0x100700e3"]]}, {"orig": [["0x100c7b96", "test ebx, ebx"]], "recomp": [["0x100700e6", "test edi, edi"]]}, {"both": [["0x100c7b98", "je 0xa", "0x100700e8"], ["0x100c7b9a", "mov ecx, dword ptr [ebp - 0x18]", "0x100700ea"], ["0x100c7b9d", "mov dword ptr [eax], ecx", "0x100700ed"]]}, {"orig": [["0x100c7b9f", "mov dword ptr [eax + 4], ebx"]], "recomp": [["0x100700ef", "mov dword ptr [eax + 4], edi"]]}, {"both": [["0x100c7ba2", "jmp 0x5", "0x100700f2"], ["0x100c7ba4", "mov dword ptr [eax], eax", "0x100700f4"], ["0x100c7ba6", "mov dword ptr [eax + 4], eax", "0x100700f6"]]}, {"orig": [["0x100c7ba9", "mov dword ptr [edi], eax"]], "recomp": [["0x100700f9", "mov dword ptr [ebx], eax"]]}, {"both": [["0x100c7bab", "mov ecx, dword ptr [eax + 4]", "0x100700fb"], ["0x100c7bae", "mov dword ptr [ecx], eax", "0x100700fe"], ["0x100c7bb0", "add eax, 8", "0x10070100"], ["0x100c7bb3", "je 0x5", "0x10070103"], ["0x100c7bb5", "mov ecx, dword ptr [ebp - 0x14]", "0x10070105"], ["0x100c7bb8", "mov dword ptr [eax], ecx", "0x10070108"], ["0x100c7bba", "inc dword ptr [esi + 0x44]", "0x1007010a"], ["0x100c7bbd", "mov dword ptr [ebp - 4], 0xffffffff", "0x1007010d"], ["0x100c7bc4", "call <OFFSET6>", "0x10070114"], ["0x100c7bc9", "mov eax, dword ptr [ebp - 0x10]", "0x10070119"]]}]]]}, {"address": "0x100c7c00", "recomp": "0x10070150", "name": "MxDiskStreamController::VTable0x30", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c7c11,41 +0x10070161,41 @@", [{"both": [["0x100c7c11", "mov dword ptr fs:[0], esp", "0x10070161"], ["0x100c7c18", "sub esp, 8", "0x10070168"], ["0x100c7c1b", "push ebx", "0x1007016b"], ["0x100c7c1c", "push esi", "0x1007016c"], ["0x100c7c1d", "push edi", "0x1007016d"], ["0x100c7c1e", "lea eax, [ecx + 8]", "0x1007016e"], ["0x100c7c21", "mov edi, ecx", "0x10070171"], ["0x100c7c23", "push eax", "0x10070173"], ["0x100c7c24", "lea ecx, [ebp - 0x10]", "0x10070174"], ["0x100c7c27", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x10070177"]]}, {"orig": [["0x100c7c2c", "mov ebx, dword ptr [ebp + 8]"]], "recomp": [["0x1007017c", "mov esi, dword ptr [ebp + 8]"]]}, {"both": [["0x100c7c2f", "mov ecx, edi", "0x1007017f"]]}, {"orig": [["0x100c7c31", "push ebx"], ["0x100c7c32", "lea esi, [edi + 0x90]"]], "recomp": [["0x10070181", "push esi"], ["0x10070182", "lea ebx, [edi + 0x90]"]]}, {"both": [["0x100c7c38", "mov dword ptr [ebp - 4], 0", "0x10070188"], ["0x100c7c3f", "call MxStreamController::VTable0x30 (FUNCTION)", "0x1007018f"], ["0x100c7c44", "mov dword ptr [ebp - 0x14], eax", "0x10070194"], ["0x100c7c47", "push 1", "0x10070197"]]}, {"orig": [["0x100c7c49", "mov ecx, esi"], ["0x100c7c4b", "push ebx"]], "recomp": [["0x10070199", "mov ecx, ebx"], ["0x1007019b", "push esi"]]}, {"both": [["0x100c7c4c", "call MxStreamListMxDSAction::Find (FUNCTION)", "0x1007019c"], ["0x100c7c51", "test eax, eax", "0x100701a1"], ["0x100c7c53", "je 0xa", "0x100701a3"], ["0x100c7c55", "push eax", "0x100701a5"], ["0x100c7c56", "mov ecx, edi", "0x100701a6"], ["0x100c7c58", "call MxDiskStreamController::FUN_100c7cb0 (FUNCTION)", "0x100701a8"], ["0x100c7c5d", "jmp -0x18", "0x100701ad"]]}, {"orig": [["0x100c7c5f", "lea esi, [edi + 0x64]"]], "recomp": [["0x100701af", "lea ebx, [edi + 0x64]"]]}, {"both": [["0x100c7c62", "push 1", "0x100701b2"]]}, {"orig": [["0x100c7c64", "mov ecx, esi"], ["0x100c7c66", "push ebx"]], "recomp": [["0x100701b4", "mov ecx, ebx"], ["0x100701b6", "push esi"]]}, {"both": [["0x100c7c67", "call MxStreamListMxDSAction::Find (FUNCTION)", "0x100701b7"], ["0x100c7c6c", "test eax, eax", "0x100701bc"], ["0x100c7c6e", "je 0xa", "0x100701be"], ["0x100c7c70", "push eax", "0x100701c0"], ["0x100c7c71", "mov ecx, edi", "0x100701c1"], ["0x100c7c73", "call MxDiskStreamController::FUN_100c7cb0 (FUNCTION)", "0x100701c3"], ["0x100c7c78", "jmp -0x18", "0x100701c8"], ["0x100c7c7a", "mov dword ptr [ebp - 4], 0xffffffff", "0x100701ca"], ["0x100c7c81", "call <OFFSET6>", "0x100701d1"], ["0x100c7c86", "mov eax, dword ptr [ebp - 0x14]", "0x100701d6"]]}]]]}, {"address": "0x100c7cb0", "recomp": "0x10070200", "name": "MxDiskStreamController::FUN_100c7cb0", "matching": 1.0, "diff": []}, {"address": "0x100c7ce0", "recomp": "0x10070230", "name": "MxDiskStreamController::FUN_100c7ce0", "matching": 1.0, "diff": []}, {"address": "0x100c7d10", "recomp": "0x10070260", "name": "MxDiskStreamController::FUN_100c7d10", "matching": 1.0, "diff": []}, {"address": "0x100c7db0", "recomp": "0x10070300", "name": "MxDiskStreamController::FUN_100c7db0", "matching": 0.4959349593495935, "diff": [["@@ -0x100c7dbb,120 +0x1007030b,118 @@", [{"both": [["0x100c7dbb", "push <OFFSET1>", "0x1007030b"], ["0x100c7dc0", "push eax", "0x10070310"], ["0x100c7dc1", "mov dword ptr fs:[0], esp", "0x10070311"], ["0x100c7dc8", "sub esp, 0x14", "0x10070318"], ["0x100c7dcb", "push ebx", "0x1007031b"], ["0x100c7dcc", "push esi", "0x1007031c"], ["0x100c7dcd", "lea eax, [ecx + 8]", "0x1007031d"], ["0x100c7dd0", "push edi", "0x10070320"], ["0x100c7dd1", "mov esi, ecx", "0x10070321"], ["0x100c7dd3", "push eax", "0x10070323"]]}, {"orig": [["0x100c7dd4", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x10070324", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100c7dd7", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x10070327"]]}, {"orig": [["0x100c7ddc", "mov eax, dword ptr [esi + 0x4c]"]], "recomp": [["0x1007032c", "mov ecx, dword ptr [esi + 0x4c]"]]}, {"both": [["0x100c7ddf", "mov dword ptr [ebp - 4], 0", "0x1007032f"]]}, {"orig": [["0x100c7de6", "mov ecx, dword ptr [eax]"], ["0x100c7de8", "mov dword ptr [ebp - 0x10], ecx"], ["0x100c7deb", "cmp ecx, eax"], ["0x100c7ded", "je 0x54"], ["0x100c7def", "mov ecx, dword ptr [esi + 0x68]"], ["0x100c7df2", "mov eax, dword ptr [ebp - 0x10]"], ["0x100c7df5", "mov edx, dword ptr [ecx]"], ["0x100c7df7", "mov dword ptr [ebp - 0x14], edx"], ["0x100c7dfa", "cmp ecx, edx"], ["0x100c7dfc", "mov edi, dword ptr [eax + 8]"], ["0x100c7dff", "je 0x35"], ["0x100c7e01", "mov edx, dword ptr [edi + 8]"]], "recomp": [["0x10070336", "mov eax, dword ptr [ecx]"], ["0x10070338", "mov dword ptr [ebp - 0x14], eax"], ["0x1007033b", "cmp eax, ecx"], ["0x1007033d", "je 0x5c"], ["0x1007033f", "mov edx, dword ptr [esi + 0x68]"]]}, {"both": [["0x100c7e04", "mov eax, dword ptr [ebp - 0x14]", "0x10070342"], ["0x100c7e07", "mov ebx, dword ptr [eax + 8]", "0x10070345"], ["0x100c7e0a", "mov dword ptr [ebp - 0x18], ebx", "0x10070348"]]}, {"orig": [["0x100c7e0d", "cmp dword ptr [ebx + 0x1c], edx"], ["0x100c7e10", "jne 0x18"], ["0x100c7e12", "mov bx, word ptr [edi + 0xc]"]], "recomp": [["0x1007034b", "mov edi, dword ptr [edx]"], ["0x1007034d", "mov dword ptr [ebp - 0x10], edi"], ["0x10070350", "cmp edi, edx"], ["0x10070352", "je 0x3b"], ["0x10070354", "mov edi, dword ptr [ebx + 8]"], ["0x10070357", "mov eax, dword ptr [ebp - 0x10]"], ["0x1007035a", "mov ebx, dword ptr [eax + 8]"], ["0x1007035d", "mov dword ptr [ebp - 0x1c], ebx"], ["0x10070360", "cmp dword ptr [ebx + 0x1c], edi"], ["0x10070363", "jne 0x1e"]]}, {"both": [["0x100c7e16", "mov eax, dword ptr [ebp - 0x18]", "0x10070365"]]}, {"orig": [], "recomp": [["0x10070368", "mov bx, word ptr [eax + 0xc]"], ["0x1007036c", "mov eax, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100c7e19", "cmp word ptr [eax + 0x24], bx", "0x1007036f"]]}, {"orig": [["0x100c7e1d", "jne 0xb"], ["0x100c7e1f", "mov ebx, dword ptr [edi + 0x10]"], ["0x100c7e22", "cmp dword ptr [eax + 0x98], ebx"], ["0x100c7e28", "je 0x38"]], "recomp": [["0x10070373", "jne 0xe"], ["0x10070375", "mov ebx, dword ptr [ebp - 0x18]"], ["0x10070378", "mov eax, dword ptr [eax + 0x98]"], ["0x1007037e", "cmp dword ptr [ebx + 0x10], eax"], ["0x10070381", "je 0x37"], ["0x10070383", "mov eax, dword ptr [ebp - 0x10]"], ["0x10070386", "mov ebx, dword ptr [eax]"], ["0x10070388", "mov dword ptr [ebp - 0x10], ebx"], ["0x1007038b", "cmp ebx, edx"], ["0x1007038d", "jne -0x38"]]}, {"both": [["0x100c7e2a", "mov eax, dword ptr [ebp - 0x14]", "0x1007038f"], ["0x100c7e2d", "mov ebx, dword ptr [eax]", "0x10070392"], ["0x100c7e2f", "mov dword ptr [ebp - 0x14], ebx", "0x10070394"], ["0x100c7e32", "cmp ebx, ecx", "0x10070397"]]}, {"orig": [["0x100c7e34", "jne -0x32"], ["0x100c7e36", "mov eax, dword ptr [ebp - 0x10]"], ["0x100c7e39", "mov edx, dword ptr [eax]"], ["0x100c7e3b", "mov dword ptr [ebp - 0x10], edx"], ["0x100c7e3e", "cmp edx, dword ptr [esi + 0x4c]"], ["0x100c7e41", "jne -0x51"]], "recomp": [["0x10070399", "jne -0x59"]]}, {"both": [["0x100c7e43", "mov dword ptr [ebp - 4], 0xffffffff", "0x1007039b"], ["0x100c7e4a", "call <OFFSET3>", "0x100703a2"], ["0x100c7e4f", "xor eax, eax", "0x100703a7"], ["0x100c7e51", "mov ecx, dword ptr [ebp - 0xc]", "0x100703a9"], ["0x100c7e54", "pop edi", "0x100703ac"], ["0x100c7e55", "mov dword ptr fs:[0], ecx", "0x100703ad"], ["0x100c7e5c", "pop esi", "0x100703b4"], ["0x100c7e5d", "pop ebx", "0x100703b5"], ["0x100c7e5e", "mov esp, ebp", "0x100703b6"], ["0x100c7e60", "pop ebp", "0x100703b8"], ["0x100c7e61", "ret ", "0x100703b9"]]}, {"orig": [["0x100c7e62", "mov edx, dword ptr [ebp - 0x10]"]], "recomp": [["0x100703ba", "mov edx, dword ptr [ebp - 0x14]"]]}, {"both": [["0x100c7e65", "mov ecx, dword ptr [edx + 4]", "0x100703bd"], ["0x100c7e68", "push edx", "0x100703c0"], ["0x100c7e69", "mov eax, dword ptr [edx]", "0x100703c1"], ["0x100c7e6b", "mov dword ptr [ecx], eax", "0x100703c3"]]}, {"orig": [], "recomp": [["0x100703c5", "mov ecx, dword ptr [edx + 4]"]]}, {"both": [["0x100c7e6d", "mov eax, dword ptr [edx]", "0x100703c8"]]}, {"orig": [["0x100c7e6f", "mov ebx, dword ptr [edx + 4]"], ["0x100c7e72", "mov dword ptr [eax + 4], ebx"]], "recomp": [["0x100703ca", "mov dword ptr [eax + 4], ecx"]]}, {"both": [["0x100c7e75", "call ??3@YAXPAX@Z (FUNCTION)", "0x100703cd"], ["0x100c7e7a", "add esp, 4", "0x100703d2"], ["0x100c7e7d", "mov ecx, dword ptr [esi + 0x28]", "0x100703d5"], ["0x100c7e80", "dec dword ptr [esi + 0x50]", "0x100703d8"]]}, {"orig": [["0x100c7e83", "mov eax, dword ptr [ecx]"], ["0x100c7e85", "call dword ptr [eax + 0x18]"], ["0x100c7e88", "add eax, dword ptr [edi + 0x10]"], ["0x100c7e8b", "mov dword ptr [ebp - 0x20], edi"], ["0x100c7e8e", "mov dword ptr [edi + 0x10], eax"], ["0x100c7e91", "lea edi, [ebp - 0x20]"]], "recomp": [["0x100703db", "mov ebx, dword ptr [ecx]"], ["0x100703dd", "call dword ptr [ebx + 0x18]"], ["0x100703e0", "mov ecx, dword ptr [ebp - 0x18]"], ["0x100703e3", "add eax, dword ptr [ecx + 0x10]"], ["0x100703e6", "mov dword ptr [ecx + 0x10], eax"], ["0x100703e9", "lea ecx, [esi + 0x48]"]]}, {"both": [["0x100c7e94", "mov edx, dword ptr [esi + 0x4c]", "0x100703ec"]]}, {"orig": [["0x100c7e97", "push edi"]], "recomp": [["0x100703ef", "lea edi, [edx + 4]"], ["0x100703f2", "mov eax, dword ptr [edi]"], ["0x100703f4", "push eax"]]}, {"both": [["0x100c7e98", "push edx", "0x100703f5"]]}, {"orig": [["0x100c7e99", "lea eax, [ebp - 0x10]"]], "recomp": [["0x100703f6", "call list<MxNextActionDataStart *,allocator<MxNextActionDataStart *> >::_Buynode (FUNCTION)"], ["0x100703fb", "mov ecx, eax"], ["0x100703fd", "mov dword ptr [edi], eax"], ["0x100703ff", "lea eax, [ebp - 0x18]"], ["0x10070402", "mov edx, dword ptr [ecx + 4]"]]}, {"both": [["0x100c7e9c", "push eax", "0x10070405"]]}, {"orig": [["0x100c7e9d", "lea ecx, [esi + 0x48]"], ["0x100c7ea0", "call <OFFSET5>"], ["0x100c7ea5", "mov edx, dword ptr [ebp - 0x14]"], ["0x100c7ea8", "mov eax, dword ptr [ebp - 0x14]"]], "recomp": [["0x10070406", "mov dword ptr [edx], ecx"], ["0x10070408", "add ecx, 8"], ["0x1007040b", "push ecx"], ["0x1007040c", "call _Construct (FUNCTION)"], ["0x10070411", "add esp, 8"], ["0x10070414", "mov edx, dword ptr [ebp - 0x10]"], ["0x10070417", "add edx, 4"], ["0x1007041a", "mov eax, dword ptr [ebp - 0x10]"], ["0x1007041d", "inc dword ptr [esi + 0x50]"]]}, {"both": [["0x100c7eab", "push eax", "0x10070420"]]}, {"orig": [["0x100c7eac", "mov ecx, dword ptr [edx + 4]"], ["0x100c7eaf", "add edx, 4"]], "recomp": []}, {"both": [["0x100c7eb2", "mov ebx, dword ptr [eax]", "0x10070421"]]}, {"orig": [], "recomp": [["0x10070423", "mov ecx, dword ptr [edx]"]]}, {"both": [["0x100c7eb4", "mov dword ptr [ecx], ebx", "0x10070425"], ["0x100c7eb6", "mov ecx, dword ptr [edx]", "0x10070427"], ["0x100c7eb8", "mov ebx, dword ptr [eax]", "0x10070429"], ["0x100c7eba", "mov dword ptr [ebx + 4], ecx", "0x1007042b"], ["0x100c7ebd", "call ??3@YAXPAX@Z (FUNCTION)", "0x1007042e"], ["0x100c7ec2", "add esp, 4", "0x10070433"], ["0x100c7ec5", "dec dword ptr [esi + 0x6c]", "0x10070436"], ["0x100c7ec8", "mov dword ptr [ebp - 4], 0xffffffff", "0x10070439"], ["0x100c7ecf", "call <OFFSET3>", "0x10070440"]]}, {"orig": [["0x100c7ed4", "mov eax, dword ptr [ebp - 0x18]"], ["0x100c7ed7", "jmp -0x8b"], ["0x100c7edc", "mov eax, <OFFSET6>"]], "recomp": [["0x10070445", "mov eax, dword ptr [ebp - 0x1c]"], ["0x10070448", "jmp -0xa4"], ["0x1007044d", "mov eax, <OFFSET7>"]]}, {"both": [["0x100c7ee1", "jmp ___CxxFrameHandler (FUNCTION)", "0x10070452"]]}, {"orig": [["0x100c7ee6", "lea ecx, [ebp - 0x1c]"]], "recomp": [["0x10070457", "lea ecx, [ebp - 0x20]"]]}, {"both": [["0x100c7ee9", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x1007045a"]]}, {"orig": [["0x100c7eee", "int3 "], ["0x100c7eef", "int3 "], ["0x100c7ef0", "push ebx"], ["0x100c7ef1", "push esi"], ["0x100c7ef2", "push edi"], ["0x100c7ef3", "mov esi, ecx"], ["0x100c7ef5", "mov edi, dword ptr [esp + 0x14]"], ["0x100c7ef9", "push 0xc"], ["0x100c7efb", "mov ebx, dword ptr [edi + 4]"], ["0x100c7efe", "call ??2@YAPAXI@Z (FUNCTION)"], ["0x100c7f03", "add esp, 4"], ["0x100c7f06", "test ebx, ebx"], ["0x100c7f08", "je 0x7"], ["0x100c7f0a", "mov dword ptr [eax], edi"], ["0x100c7f0c", "mov dword ptr [eax + 4], ebx"]], "recomp": []}]]]}, {"address": "0x100c7f40", "recomp": "0x10070460", "name": "MxDiskStreamController::FUN_100c7f40", "matching": 0.864406779661017, "diff": [["@@ -0x100c7f40,60 +0x10070460,58 @@", [{"both": [["0x100c7f40", "mov eax, dword ptr fs:[0]", "0x10070460"], ["0x100c7f46", "push ebp", "0x10070466"], ["0x100c7f47", "mov ebp, esp", "0x10070467"], ["0x100c7f49", "push -1", "0x10070469"], ["0x100c7f4b", "push <OFFSET1>", "0x1007046b"], ["0x100c7f50", "push eax", "0x10070470"], ["0x100c7f51", "mov dword ptr fs:[0], esp", "0x10070471"]]}, {"orig": [["0x100c7f58", "sub esp, 8"]], "recomp": [["0x10070478", "sub esp, 0xc"]]}, {"both": [["0x100c7f5b", "push ebx", "0x1007047b"], ["0x100c7f5c", "push esi", "0x1007047c"], ["0x100c7f5d", "lea eax, [ecx + 8]", "0x1007047d"], ["0x100c7f60", "push edi", "0x10070480"], ["0x100c7f61", "mov esi, ecx", "0x10070481"], ["0x100c7f63", "push eax", "0x10070483"], ["0x100c7f64", "lea ecx, [ebp - 0x14]", "0x10070484"], ["0x100c7f67", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x10070487"], ["0x100c7f6c", "mov dword ptr [ebp - 4], 0", "0x1007048c"]]}, {"orig": [["0x100c7f73", "cmp dword ptr [ebp + 8], 0"], ["0x100c7f77", "je 0x3c"]], "recomp": [["0x10070493", "mov eax, dword ptr [ebp + 8]"], ["0x10070496", "test eax, eax"], ["0x10070498", "je 0x3f"], ["0x1007049a", "push 0xc"], ["0x1007049c", "mov dword ptr [ebp - 0x18], eax"]]}, {"both": [["0x100c7f79", "mov eax, dword ptr [esi + 0x68]", "0x1007049f"]]}, {"orig": [["0x100c7f7c", "push 0xc"]], "recomp": []}, {"both": [["0x100c7f7e", "mov dword ptr [ebp - 0x10], eax", "0x100704a2"], ["0x100c7f81", "lea ebx, [eax + 4]", "0x100704a5"], ["0x100c7f84", "mov edi, dword ptr [ebx]", "0x100704a8"], ["0x100c7f86", "call ??2@YAPAXI@Z (FUNCTION)", "0x100704aa"], ["0x100c7f8b", "add esp, 4", "0x100704af"], ["0x100c7f8e", "test edi, edi", "0x100704b2"], ["0x100c7f90", "je 0xa", "0x100704b4"], ["0x100c7f92", "mov ecx, dword ptr [ebp - 0x10]", "0x100704b6"], ["0x100c7f95", "mov dword ptr [eax], ecx", "0x100704b9"], ["0x100c7f97", "mov dword ptr [eax + 4], edi", "0x100704bb"], ["0x100c7f9a", "jmp 0x5", "0x100704be"], ["0x100c7f9c", "mov dword ptr [eax], eax", "0x100704c0"], ["0x100c7f9e", "mov dword ptr [eax + 4], eax", "0x100704c2"], ["0x100c7fa1", "mov dword ptr [ebx], eax", "0x100704c5"], ["0x100c7fa3", "mov ecx, dword ptr [eax + 4]", "0x100704c7"], ["0x100c7fa6", "mov dword ptr [ecx], eax", "0x100704ca"], ["0x100c7fa8", "add eax, 8", "0x100704cc"], ["0x100c7fab", "je 0x5", "0x100704cf"]]}, {"orig": [["0x100c7fad", "mov ecx, dword ptr [ebp + 8]"]], "recomp": [["0x100704d1", "mov ecx, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100c7fb0", "mov dword ptr [eax], ecx", "0x100704d4"], ["0x100c7fb2", "inc dword ptr [esi + 0x6c]", "0x100704d6"], ["0x100c7fb5", "mov dword ptr [ebp - 4], 0xffffffff", "0x100704d9"], ["0x100c7fbc", "call <OFFSET4>", "0x100704e0"], ["0x100c7fc1", "mov eax, dword ptr [ebp - 0xc]", "0x100704e5"], ["0x100c7fc4", "pop edi", "0x100704e8"], ["0x100c7fc5", "mov dword ptr fs:[0], eax", "0x100704e9"], ["0x100c7fcb", "pop esi", "0x100704ef"], ["0x100c7fcc", "pop ebx", "0x100704f0"], ["0x100c7fcd", "mov esp, ebp", "0x100704f1"], ["0x100c7fcf", "pop ebp", "0x100704f3"], ["0x100c7fd0", "ret 4", "0x100704f4"], ["0x100c7fd3", "mov eax, <OFFSET5>", "0x100704f7"], ["0x100c7fd8", "jmp ___CxxFrameHandler (FUNCTION)", "0x100704fc"], ["0x100c7fdd", "lea ecx, [ebp - 0x14]", "0x10070501"], ["0x100c7fe0", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x10070504"]]}, {"orig": [["0x100c7fe5", "int3 "], ["0x100c7fe6", "int3 "], ["0x100c7fe7", "int3 "], ["0x100c7fe8", "int3 "]], "recomp": []}]]]}, {"address": "0x100c7ff0", "recomp": "0x10070510", "name": "MxDiskStreamController::VTable0x20", "matching": 1.0, "diff": []}, {"address": "0x100c8120", "recomp": "0x10070640", "name": "MxDiskStreamController::FUN_100c8120", "matching": 1.0, "diff": []}, {"address": "0x100c8160", "recomp": "0x10070680", "name": "MxDiskStreamController::VTable0x24", "matching": 1.0, "diff": []}, {"address": "0x100c8360", "recomp": "0x10070880", "name": "MxDiskStreamController::FUN_100c8360", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c83f9,28 +0x10070919,28 @@", [{"both": [["0x100c83f9", "push eax", "0x10070919"], ["0x100c83fa", "mov ecx, esi", "0x1007091a"], ["0x100c83fc", "call MxDiskStreamController::FUN_100c7cb0 (FUNCTION)", "0x1007091c"], ["0x100c8401", "jmp 0x60", "0x10070921"], ["0x100c8403", "mov eax, dword ptr [ebp - 0x10]", "0x10070923"], ["0x100c8406", "add eax, 0x1c", "0x10070926"], ["0x100c8409", "cmp dword ptr [eax], -1", "0x10070929"], ["0x100c840c", "jne 0x5", "0x1007092c"], ["0x100c840e", "mov ecx, dword ptr [edi + 0x1c]", "0x1007092e"], ["0x100c8411", "mov dword ptr [eax], ecx", "0x10070931"]]}, {"orig": [["0x100c8413", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100c8416", "mov eax, dword ptr [esi + 0x94]"], ["0x100c841c", "lea ebx, [eax + 4]"], ["0x100c841f", "mov dword ptr [ebp - 0x18], eax"]], "recomp": [["0x10070933", "mov eax, dword ptr [ebp - 0x10]"], ["0x10070936", "mov ecx, dword ptr [esi + 0x94]"], ["0x1007093c", "lea ebx, [ecx + 4]"], ["0x1007093f", "mov dword ptr [ebp - 0x18], ecx"]]}, {"both": [["0x100c8422", "push 0xc", "0x10070942"]]}, {"orig": [["0x100c8424", "mov dword ptr [ebp - 0x20], ecx"], ["0x100c8427", "mov ecx, dword ptr [ebx]"], ["0x100c8429", "mov dword ptr [ebp - 0x14], ecx"]], "recomp": [["0x10070944", "mov dword ptr [ebp - 0x20], eax"], ["0x10070947", "mov eax, dword ptr [ebx]"], ["0x10070949", "mov dword ptr [ebp - 0x14], eax"]]}, {"both": [["0x100c842c", "call ??2@YAPAXI@Z (FUNCTION)", "0x1007094c"], ["0x100c8431", "add esp, 4", "0x10070951"], ["0x100c8434", "cmp dword ptr [ebp - 0x14], 0", "0x10070954"], ["0x100c8438", "je 0xd", "0x10070958"], ["0x100c843a", "mov ecx, dword ptr [ebp - 0x18]", "0x1007095a"], ["0x100c843d", "mov edx, dword ptr [ebp - 0x14]", "0x1007095d"], ["0x100c8440", "mov dword ptr [eax], ecx", "0x10070960"], ["0x100c8442", "mov dword ptr [eax + 4], edx", "0x10070962"], ["0x100c8445", "jmp 0x5", "0x10070965"], ["0x100c8447", "mov dword ptr [eax], eax", "0x10070967"]]}]]]}, {"address": "0x100c84a0", "recomp": "0x100709c0", "name": "MxDiskStreamController::InsertToList74", "matching": 1.0, "diff": []}, {"address": "0x100c8540", "recomp": "0x10070a60", "name": "MxDiskStreamController::FUN_100c8540", "matching": 0.9176470588235294, "diff": [["@@ -0x100c8561,32 +0x10070a81,29 @@", [{"both": [["0x100c8561", "mov esi, ecx", "0x10070a81"], ["0x100c8563", "push eax", "0x10070a83"], ["0x100c8564", "lea ecx, [ebp - 0x18]", "0x10070a84"], ["0x100c8567", "xor edi, edi", "0x10070a87"], ["0x100c8569", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x10070a89"], ["0x100c856e", "mov eax, dword ptr [esi + 0x78]", "0x10070a8e"], ["0x100c8571", "mov dword ptr [ebp - 4], edi", "0x10070a91"], ["0x100c8574", "mov ecx, dword ptr [eax]", "0x10070a94"], ["0x100c8576", "mov dword ptr [ebp - 0x10], ecx", "0x10070a96"], ["0x100c8579", "cmp ecx, eax", "0x10070a99"]]}, {"orig": [["0x100c857b", "je 0x59"]], "recomp": [["0x10070a9b", "je 0x50"]]}, {"both": [["0x100c857d", "mov eax, dword ptr [ebp - 0x10]", "0x10070a9d"], ["0x100c8580", "mov ebx, dword ptr [eax + 8]", "0x10070aa0"], ["0x100c8583", "cmp word ptr [ebx + 0x20], di", "0x10070aa3"]]}, {"orig": [["0x100c8587", "jne 0x3d"]], "recomp": [["0x10070aa7", "jne 0x34"]]}, {"both": [["0x100c8589", "mov dword ptr [ebp - 0x14], eax", "0x10070aa9"]]}, {"orig": [["0x100c858c", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": []}, {"both": [["0x100c858f", "mov ecx, dword ptr [eax]", "0x10070aac"], ["0x100c8591", "mov dword ptr [ebp - 0x10], ecx", "0x10070aae"]]}, {"orig": [["0x100c8594", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100c8597", "add ecx, 4"], ["0x100c859a", "mov eax, dword ptr [ebp - 0x14]"]], "recomp": [["0x10070ab1", "lea ecx, [eax + 4]"]]}, {"both": [["0x100c859d", "mov eax, dword ptr [eax]", "0x10070ab4"], ["0x100c859f", "mov edx, dword ptr [ecx]", "0x10070ab6"], ["0x100c85a1", "mov dword ptr [edx], eax", "0x10070ab8"], ["0x100c85a3", "mov edx, dword ptr [ecx]", "0x10070aba"], ["0x100c85a5", "mov eax, dword ptr [ebp - 0x14]", "0x10070abc"], ["0x100c85a8", "mov ecx, dword ptr [eax]", "0x10070abf"], ["0x100c85aa", "mov dword ptr [ecx + 4], edx", "0x10070ac1"], ["0x100c85ad", "mov eax, dword ptr [ebp - 0x14]", "0x10070ac4"], ["0x100c85b0", "push eax", "0x10070ac7"], ["0x100c85b1", "call ??3@YAXPAX@Z (FUNCTION)", "0x10070ac8"]]}]], ["@@ -0x100c85b9,21 +0x10070ad0,21 @@", [{"both": [["0x100c85b9", "mov ecx, esi", "0x10070ad0"], ["0x100c85bb", "dec dword ptr [esi + 0x7c]", "0x10070ad2"], ["0x100c85be", "push ebx", "0x10070ad5"], ["0x100c85bf", "call MxDiskStreamController::FUN_100c7ce0 (FUNCTION)", "0x10070ad6"], ["0x100c85c4", "jmp 0x8", "0x10070adb"], ["0x100c85c6", "mov eax, dword ptr [ebp - 0x10]", "0x10070add"], ["0x100c85c9", "mov ecx, dword ptr [eax]", "0x10070ae0"], ["0x100c85cb", "mov dword ptr [ebp - 0x10], ecx", "0x10070ae2"], ["0x100c85ce", "mov eax, dword ptr [ebp - 0x10]", "0x10070ae5"], ["0x100c85d1", "cmp dword ptr [esi + 0x78], eax", "0x10070ae8"]]}, {"orig": [["0x100c85d4", "jne -0x59"]], "recomp": [["0x10070aeb", "jne -0x50"]]}, {"both": [["0x100c85d6", "cmp dword ptr [esi + 0x50], 0", "0x10070aed"], ["0x100c85da", "jne 0x2b", "0x10070af1"], ["0x100c85dc", "cmp dword ptr [esi + 0x6c], 0", "0x10070af3"], ["0x100c85e0", "je 0x25", "0x10070af7"], ["0x100c85e2", "lea edi, [esi + 0x64]", "0x10070af9"], ["0x100c85e5", "mov eax, dword ptr [esi + 0x68]", "0x10070afc"], ["0x100c85e8", "lea ecx, [ebp - 0x14]", "0x10070aff"], ["0x100c85eb", "mov eax, dword ptr [eax]", "0x10070b02"], ["0x100c85ed", "push eax", "0x10070b04"], ["0x100c85ee", "push ecx", "0x10070b05"]]}]], ["@@ -0x100c860e,10 +0x10070b25,13 @@", [{"both": [["0x100c860e", "call <OFFSET7>", "0x10070b25"], ["0x100c8613", "mov eax, dword ptr [ebp - 0xc]", "0x10070b2a"], ["0x100c8616", "pop edi", "0x10070b2d"], ["0x100c8617", "mov dword ptr fs:[0], eax", "0x10070b2e"], ["0x100c861d", "pop esi", "0x10070b34"], ["0x100c861e", "pop ebx", "0x10070b35"], ["0x100c861f", "mov esp, ebp", "0x10070b36"], ["0x100c8621", "pop ebp", "0x10070b38"], ["0x100c8622", "ret ", "0x10070b39"], ["0x100c8623", "mov eax, <OFFSET8>", "0x10070b3a"]]}, {"orig": [], "recomp": [["0x10070b3f", "jmp ___CxxFrameHandler (FUNCTION)"], ["0x10070b44", "lea ecx, [ebp - 0x18]"], ["0x10070b47", "jmp MxAutoLock::~MxAutoLock (FUNCTION)"]]}]]]}, {"address": "0x100c8640", "recomp": "0x10070b50", "name": "MxDiskStreamController::Tickle", "matching": 1.0, "diff": []}, {"address": "0x100c8670", "recomp": "0x10070b80", "name": "MxDiskStreamController::FUN_100c8670", "matching": 1.0, "diff": []}, {"address": "0x100c8720", "recomp": "0x10070c30", "name": "MxDiskStreamController::FUN_100c8720", "matching": 1.0, "diff": []}, {"address": "0x100c87d0", "recomp": "0x1007ace0", "name": "MxSemaphore::MxSemaphore", "matching": 1.0, "diff": []}, {"address": "0x100c87e0", "recomp": "0x1006e580", "name": "MxSemaphore::~MxSemaphore", "matching": 1.0, "diff": []}, {"address": "0x100c8800", "recomp": "0x1007acf0", "name": "MxSemaphore::Init", "matching": 1.0, "diff": []}, {"address": "0x100c8830", "recomp": "0x1007ad20", "name": "MxSemaphore::Wait", "matching": 1.0, "diff": []}, {"address": "0x100c8850", "recomp": "0x1007ad40", "name": "MxSemaphore::Release", "matching": 1.0, "diff": []}, {"address": "0x100c8870", "recomp": "0x10076dc0", "name": "MxDSObjectAction::MxDSObjectAction", "matching": 1.0, "diff": []}, {"address": "0x100c88e0", "recomp": "0x10076e30", "name": "MxDSObjectAction::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c88f0", "recomp": "0x10076e40", "name": "MxDSObjectAction::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c8a00", "recomp": "0x10076f50", "name": "MxDSObjectAction::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c8a20", "recomp": "0x10076f70", "name": "MxDSObjectAction::~MxDSObjectAction", "matching": 1.0, "diff": []}, {"address": "0x100c8a70", "recomp": "0x10076fc0", "name": "MxDSObjectAction::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100c8a80", "recomp": "0x10076fd0", "name": "MxDSObjectAction::operator=", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c8a80,15 +0x10076fd0,15 @@", [{"both": [["0x100c8a80", "push esi", "0x10076fd0"], ["0x100c8a81", "push edi", "0x10076fd1"], ["0x100c8a82", "mov edi, ecx", "0x10076fd2"], ["0x100c8a84", "mov esi, dword ptr [esp + 0xc]", "0x10076fd4"]]}, {"orig": [["0x100c8a88", "cmp esi, edi"]], "recomp": [["0x10076fd8", "cmp edi, esi"]]}, {"both": [["0x100c8a8a", "jne 0x7", "0x10076fda"], ["0x100c8a8c", "mov eax, edi", "0x10076fdc"], ["0x100c8a8e", "pop edi", "0x10076fde"], ["0x100c8a8f", "pop esi", "0x10076fdf"], ["0x100c8a90", "ret 4", "0x10076fe0"], ["0x100c8a93", "push esi", "0x10076fe3"], ["0x100c8a94", "mov ecx, edi", "0x10076fe4"], ["0x100c8a96", "call MxDSMediaAction::operator= (FUNCTION)", "0x10076fe6"], ["0x100c8a9b", "push esi", "0x10076feb"], ["0x100c8a9c", "mov eax, dword ptr [edi]", "0x10076fec"]]}]]]}, {"address": "0x100c8ab0", "recomp": "0x10077000", "name": "MxDSObjectAction::Clone", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c8ab6,40 +0x10077006,40 @@", [{"both": [["0x100c8ab6", "push ebp", "0x10077006"], ["0x100c8ab7", "mov ebp, esp", "0x10077007"], ["0x100c8ab9", "push -1", "0x10077009"], ["0x100c8abb", "push <OFFSET1>", "0x1007700b"], ["0x100c8ac0", "push eax", "0x10077010"], ["0x100c8ac1", "mov dword ptr fs:[0], esp", "0x10077011"], ["0x100c8ac8", "sub esp, 4", "0x10077018"], ["0x100c8acb", "push ebx", "0x1007701b"], ["0x100c8acc", "push esi", "0x1007701c"], ["0x100c8acd", "push edi", "0x1007701d"]]}, {"orig": [["0x100c8ace", "mov ebx, ecx"]], "recomp": [["0x1007701e", "mov esi, ecx"]]}, {"both": [["0x100c8ad0", "push 0xb8", "0x10077020"], ["0x100c8ad5", "call ??2@YAPAXI@Z (FUNCTION)", "0x10077025"], ["0x100c8ada", "mov dword ptr [ebp - 0x10], eax", "0x1007702a"], ["0x100c8add", "add esp, 4", "0x1007702d"], ["0x100c8ae0", "mov edi, eax", "0x10077030"]]}, {"orig": [["0x100c8ae2", "mov esi, 0"]], "recomp": [["0x10077032", "mov ebx, 0"]]}, {"both": [["0x100c8ae7", "mov dword ptr [ebp - 4], 0", "0x10077037"], ["0x100c8aee", "test edi, edi", "0x1007703e"], ["0x100c8af0", "je 0x9", "0x10077040"], ["0x100c8af2", "mov ecx, edi", "0x10077042"], ["0x100c8af4", "call MxDSObjectAction::MxDSObjectAction (FUNCTION)", "0x10077044"]]}, {"orig": [["0x100c8af9", "mov esi, eax"]], "recomp": [["0x10077049", "mov ebx, eax"]]}, {"both": [["0x100c8afb", "mov dword ptr [ebp - 4], 0xffffffff", "0x1007704b"]]}, {"orig": [["0x100c8b02", "test esi, esi"]], "recomp": [["0x10077052", "test ebx, ebx"]]}, {"both": [["0x100c8b04", "je 0x8", "0x10077054"]]}, {"orig": [["0x100c8b06", "push ebx"], ["0x100c8b07", "mov ecx, esi"]], "recomp": [["0x10077056", "push esi"], ["0x10077057", "mov ecx, ebx"]]}, {"both": [["0x100c8b09", "call MxDSObjectAction::operator= (FUNCTION)", "0x10077059"]]}, {"orig": [["0x100c8b0e", "mov eax, esi"]], "recomp": [["0x1007705e", "mov eax, ebx"]]}, {"both": [["0x100c8b10", "mov ecx, dword ptr [ebp - 0xc]", "0x10077060"], ["0x100c8b13", "mov dword ptr fs:[0], ecx", "0x10077063"], ["0x100c8b1a", "pop edi", "0x1007706a"], ["0x100c8b1b", "pop esi", "0x1007706b"], ["0x100c8b1c", "pop ebx", "0x1007706c"], ["0x100c8b1d", "mov esp, ebp", "0x1007706d"], ["0x100c8b1f", "pop ebp", "0x1007706f"], ["0x100c8b20", "ret ", "0x10077070"], ["0x100c8b21", "mov eax, <OFFSET5>", "0x10077071"], ["0x100c8b26", "jmp ___CxxFrameHandler (FUNCTION)", "0x10077076"]]}]]]}, {"address": "0x100c8b40", "recomp": "0x1007a540", "name": "MxDSMediaAction::MxDSMediaAction", "matching": 1.0, "diff": []}, {"address": "0x100c8be0", "recomp": "0x1007a5e0", "name": "MxDSMediaAction::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c8bf0", "recomp": "0x1007a5f0", "name": "MxDSMediaAction::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c8cd0", "recomp": "0x1007a6d0", "name": "MxDSMediaAction::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c8cf0", "recomp": "0x1007a6f0", "name": "MxDSMediaAction::~MxDSMediaAction", "matching": 1.0, "diff": []}, {"address": "0x100c8d60", "recomp": "0x1007a760", "name": "MxDSMediaAction::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100c8dc0", "recomp": "0x1007a7c0", "name": "MxDSMediaAction::operator=", "matching": 1.0, "diff": []}, {"address": "0x100c8df0", "recomp": "0x1007a7f0", "name": "MxDSMediaAction::Clone", "matching": 1.0, "diff": []}, {"address": "0x100c8e80", "recomp": "0x1007a880", "name": "MxDSMediaAction::CopyMediaSrcPath", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c8e80,17 +0x1007a880,17 @@", [{"both": [["0x100c8e80", "push ebx", "0x1007a880"], ["0x100c8e81", "push esi", "0x1007a881"], ["0x100c8e82", "mov eax, dword ptr [ecx + 0x98]", "0x1007a882"], ["0x100c8e88", "push edi", "0x1007a888"], ["0x100c8e89", "mov ebx, ecx", "0x1007a889"], ["0x100c8e8b", "mov esi, dword ptr [esp + 0x10]", "0x1007a88b"]]}, {"orig": [["0x100c8e8f", "cmp esi, eax"]], "recomp": [["0x1007a88f", "cmp eax, esi"]]}, {"both": [["0x100c8e91", "je 0x60", "0x1007a891"], ["0x100c8e93", "push eax", "0x1007a893"], ["0x100c8e94", "call ??3@YAXPAX@Z (FUNCTION)", "0x1007a894"], ["0x100c8e99", "add esp, 4", "0x1007a899"], ["0x100c8e9c", "test esi, esi", "0x1007a89c"], ["0x100c8e9e", "je 0x49", "0x1007a89e"], ["0x100c8ea0", "mov edi, esi", "0x1007a8a0"], ["0x100c8ea2", "mov ecx, 0xffffffff", "0x1007a8a2"], ["0x100c8ea7", "sub eax, eax", "0x1007a8a7"], ["0x100c8ea9", "repne scasb al, byte ptr es:[edi]", "0x1007a8a9"]]}]]]}, {"address": "0x100c8f00", "recomp": "0x1007a900", "name": "MxDSMediaAction::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x100c8f10", "recomp": "0x1007a910", "name": "MxDSMediaAction::GetSizeOnDisk", "matching": 1.0, "diff": []}, {"address": "0x100c8f60", "recomp": "0x1007a960", "name": "MxDSMediaAction::Deserialize", "matching": 0.5192307692307693, "diff": [["@@ -0x100c8f60,52 +0x1007a960,52 @@", [{"both": [["0x100c8f60", "mov eax, dword ptr [esp + 8]", "0x1007a960"], ["0x100c8f64", "push ebx", "0x1007a964"]]}, {"orig": [], "recomp": [["0x1007a965", "mov ebx, dword ptr [esp + 8]"]]}, {"both": [["0x100c8f65", "push esi", "0x1007a969"]]}, {"orig": [["0x100c8f66", "mov ebx, ecx"], ["0x100c8f68", "mov esi, dword ptr [esp + 0xc]"]], "recomp": []}, {"both": [["0x100c8f6c", "push edi", "0x1007a96a"]]}, {"orig": [], "recomp": [["0x1007a96b", "mov esi, ecx"]]}, {"both": [["0x100c8f6d", "push eax", "0x1007a96d"]]}, {"orig": [["0x100c8f6e", "push esi"]], "recomp": [["0x1007a96e", "push ebx"]]}, {"both": [["0x100c8f6f", "call MxDSAction::Deserialize (FUNCTION)", "0x1007a96f"]]}, {"orig": [["0x100c8f74", "mov ecx, dword ptr [esi]"]], "recomp": [["0x1007a974", "mov ecx, dword ptr [ebx]"]]}, {"both": [["0x100c8f76", "push ecx", "0x1007a976"]]}, {"orig": [["0x100c8f77", "mov ecx, ebx"]], "recomp": [["0x1007a977", "mov ecx, esi"]]}, {"both": [["0x100c8f79", "call MxDSMediaAction::CopyMediaSrcPath (FUNCTION)", "0x1007a979"]]}, {"orig": [["0x100c8f7e", "mov edi, dword ptr [ebx + 0x98]"]], "recomp": [["0x1007a97e", "mov edi, dword ptr [esi + 0x98]"]]}, {"both": [["0x100c8f84", "mov ecx, 0xffffffff", "0x1007a984"], ["0x100c8f89", "sub eax, eax", "0x1007a989"], ["0x100c8f8b", "repne scasb al, byte ptr es:[edi]", "0x1007a98b"], ["0x100c8f8d", "not ecx", "0x1007a98d"]]}, {"orig": [["0x100c8f8f", "add dword ptr [esi], ecx"], ["0x100c8f91", "mov eax, dword ptr [esi]"]], "recomp": [["0x1007a98f", "add dword ptr [ebx], ecx"], ["0x1007a991", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x100c8f93", "mov ecx, dword ptr [eax]", "0x1007a993"]]}, {"orig": [["0x100c8f95", "mov dword ptr [ebx + 0x9c], ecx"], ["0x100c8f9b", "mov eax, dword ptr [esi]"]], "recomp": [["0x1007a995", "mov dword ptr [esi + 0x9c], ecx"], ["0x1007a99b", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x100c8f9d", "add eax, 4", "0x1007a99d"]]}, {"orig": [["0x100c8fa0", "mov dword ptr [esi], eax"]], "recomp": [["0x1007a9a0", "mov dword ptr [ebx], eax"]]}, {"both": [["0x100c8fa2", "mov ecx, dword ptr [eax]", "0x1007a9a2"]]}, {"orig": [["0x100c8fa4", "mov dword ptr [ebx + 0xa0], ecx"], ["0x100c8faa", "mov eax, dword ptr [esi]"]], "recomp": [["0x1007a9a4", "mov dword ptr [esi + 0xa0], ecx"], ["0x1007a9aa", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x100c8fac", "add eax, 4", "0x1007a9ac"]]}, {"orig": [["0x100c8faf", "mov dword ptr [esi], eax"]], "recomp": [["0x1007a9af", "mov dword ptr [ebx], eax"]]}, {"both": [["0x100c8fb1", "mov ecx, dword ptr [eax]", "0x1007a9b1"]]}, {"orig": [["0x100c8fb3", "mov dword ptr [ebx + 0xa4], ecx"], ["0x100c8fb9", "mov eax, dword ptr [esi]"]], "recomp": [["0x1007a9b3", "mov dword ptr [esi + 0xa4], ecx"], ["0x1007a9b9", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x100c8fbb", "add eax, 4", "0x1007a9bb"]]}, {"orig": [["0x100c8fbe", "mov dword ptr [esi], eax"]], "recomp": [["0x1007a9be", "mov dword ptr [ebx], eax"]]}, {"both": [["0x100c8fc0", "mov ecx, dword ptr [eax]", "0x1007a9c0"]]}, {"orig": [["0x100c8fc2", "mov dword ptr [ebx + 0xa8], ecx"], ["0x100c8fc8", "mov eax, dword ptr [esi]"]], "recomp": [["0x1007a9c2", "mov dword ptr [esi + 0xa8], ecx"], ["0x1007a9c8", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x100c8fca", "add eax, 4", "0x1007a9ca"]]}, {"orig": [["0x100c8fcd", "mov dword ptr [esi], eax"]], "recomp": [["0x1007a9cd", "mov dword ptr [ebx], eax"]]}, {"both": [["0x100c8fcf", "mov ecx, dword ptr [eax]", "0x1007a9cf"]]}, {"orig": [["0x100c8fd1", "mov dword ptr [ebx + 0xac], ecx"]], "recomp": [["0x1007a9d1", "mov dword ptr [esi + 0xac], ecx"]]}, {"both": [["0x100c8fd7", "pop edi", "0x1007a9d7"]]}, {"orig": [["0x100c8fd8", "mov eax, dword ptr [esi]"]], "recomp": [["0x1007a9d8", "mov eax, dword ptr [ebx]"]]}, {"both": [["0x100c8fda", "add eax, 4", "0x1007a9da"]]}, {"orig": [["0x100c8fdd", "mov dword ptr [esi], eax"]], "recomp": [["0x1007a9dd", "mov dword ptr [ebx], eax"]]}, {"both": [["0x100c8fdf", "mov ecx, dword ptr [eax]", "0x1007a9df"]]}, {"orig": [["0x100c8fe1", "mov dword ptr [ebx + 0xb0], ecx"], ["0x100c8fe7", "add dword ptr [esi], 4"]], "recomp": [["0x1007a9e1", "mov dword ptr [esi + 0xb0], ecx"]]}, {"both": [["0x100c8fea", "pop esi", "0x1007a9e7"]]}, {"orig": [], "recomp": [["0x1007a9e8", "add dword ptr [ebx], 4"]]}, {"both": [["0x100c8feb", "pop ebx", "0x1007a9eb"], ["0x100c8fec", "ret 8", "0x1007a9ec"]]}]]]}, {"address": "0x100c8ff0", "recomp": "0x1007a270", "name": "MxDSAnim::MxDSAnim", "matching": 1.0, "diff": []}, {"address": "0x100c9060", "recomp": "0x1007a2e0", "name": "MxDSAnim::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c9070", "recomp": "0x1007a2f0", "name": "MxDSAnim::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c9180", "recomp": "0x1007a400", "name": "MxDSAnim::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c91a0", "recomp": "0x1007a420", "name": "MxDSAnim::~MxDSAnim", "matching": 1.0, "diff": []}, {"address": "0x100c91f0", "recomp": "0x1007a470", "name": "MxDSAnim::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100c9200", "recomp": "0x1007a480", "name": "MxDSAnim::operator=", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c9200,15 +0x1007a480,15 @@", [{"both": [["0x100c9200", "push esi", "0x1007a480"], ["0x100c9201", "push edi", "0x1007a481"], ["0x100c9202", "mov edi, ecx", "0x1007a482"], ["0x100c9204", "mov esi, dword ptr [esp + 0xc]", "0x1007a484"]]}, {"orig": [["0x100c9208", "cmp esi, edi"]], "recomp": [["0x1007a488", "cmp edi, esi"]]}, {"both": [["0x100c920a", "jne 0x7", "0x1007a48a"], ["0x100c920c", "mov eax, edi", "0x1007a48c"], ["0x100c920e", "pop edi", "0x1007a48e"], ["0x100c920f", "pop esi", "0x1007a48f"], ["0x100c9210", "ret 4", "0x1007a490"], ["0x100c9213", "push esi", "0x1007a493"], ["0x100c9214", "mov ecx, edi", "0x1007a494"], ["0x100c9216", "call MxDSMediaAction::operator= (FUNCTION)", "0x1007a496"], ["0x100c921b", "push esi", "0x1007a49b"], ["0x100c921c", "mov ecx, edi", "0x1007a49c"]]}]]]}, {"address": "0x100c9230", "recomp": "0x1007a4b0", "name": "MxDSAnim::Clone", "matching": 1.0, "diff": []}, {"address": "0x100c92c0", "recomp": "0x10079f40", "name": "MxDSSound::MxDSSound", "matching": 1.0, "diff": []}, {"address": "0x100c9330", "recomp": "0x10079fb0", "name": "MxDSSound::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c9340", "recomp": "0x10079fc0", "name": "MxDSSound::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c9450", "recomp": "0x1007a0d0", "name": "MxDSSound::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c9470", "recomp": "0x1007a0f0", "name": "MxDSSound::~MxDSSound", "matching": 1.0, "diff": []}, {"address": "0x100c94c0", "recomp": "0x1007a140", "name": "MxDSSound::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100c94e0", "recomp": "0x1007a160", "name": "MxDSSound::operator=", "matching": 0.55, "diff": [["@@ -0x100c94e0,20 +0x1007a160,20 @@", [{"both": [["0x100c94e0", "push esi", "0x1007a160"], ["0x100c94e1", "push edi", "0x1007a161"]]}, {"orig": [["0x100c94e2", "mov esi, ecx"], ["0x100c94e4", "mov edi, dword ptr [esp + 0xc]"], ["0x100c94e8", "cmp esi, edi"]], "recomp": [["0x1007a162", "mov edi, ecx"], ["0x1007a164", "mov esi, dword ptr [esp + 0xc]"], ["0x1007a168", "cmp edi, esi"]]}, {"both": [["0x100c94ea", "jne 0x7", "0x1007a16a"]]}, {"orig": [["0x100c94ec", "mov eax, esi"]], "recomp": [["0x1007a16c", "mov eax, edi"]]}, {"both": [["0x100c94ee", "pop edi", "0x1007a16e"], ["0x100c94ef", "pop esi", "0x1007a16f"], ["0x100c94f0", "ret 4", "0x1007a170"]]}, {"orig": [["0x100c94f3", "push edi"], ["0x100c94f4", "mov ecx, esi"]], "recomp": [["0x1007a173", "push esi"], ["0x1007a174", "mov ecx, edi"]]}, {"both": [["0x100c94f6", "call MxDSMediaAction::operator= (FUNCTION)", "0x1007a176"]]}, {"orig": [["0x100c94fb", "push edi"], ["0x100c94fc", "mov ecx, esi"]], "recomp": [["0x1007a17b", "push esi"], ["0x1007a17c", "mov ecx, edi"]]}, {"both": [["0x100c94fe", "call MxDSSound::CopyFrom (FUNCTION)", "0x1007a17e"]]}, {"orig": [["0x100c9503", "mov eax, esi"]], "recomp": [["0x1007a183", "mov eax, edi"]]}, {"both": [["0x100c9505", "pop edi", "0x1007a185"], ["0x100c9506", "pop esi", "0x1007a186"], ["0x100c9507", "ret 4", "0x1007a187"]]}]]]}, {"address": "0x100c9510", "recomp": "0x1007a190", "name": "MxDSSound::Clone", "matching": 1.0, "diff": []}, {"address": "0x100c95a0", "recomp": "0x1007a220", "name": "MxDSSound::Deserialize", "matching": 1.0, "diff": []}, {"address": "0x100c95d0", "recomp": "0x1007a250", "name": "MxDSSound::GetSizeOnDisk", "matching": 1.0, "diff": []}, {"address": "0x100c95f0", "recomp": "0x10078570", "name": "MxDSEvent::MxDSEvent", "matching": 1.0, "diff": []}, {"address": "0x100c9660", "recomp": "0x100785e0", "name": "MxDSEvent::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c9670", "recomp": "0x100785f0", "name": "MxDSEvent::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c9780", "recomp": "0x10078700", "name": "MxDSEvent::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c97a0", "recomp": "0x10078720", "name": "MxDSEvent::~MxDSEvent", "matching": 1.0, "diff": []}, {"address": "0x100c97f0", "recomp": "0x10078770", "name": "MxDSEvent::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100c9800", "recomp": "0x10078780", "name": "MxDSEvent::operator=", "matching": 1.0, "diff": []}, {"address": "0x100c9830", "recomp": "0x100787b0", "name": "MxDSEvent::Clone", "matching": 1.0, "diff": []}, {"address": "0x100c98c0", "recomp": "0x10077090", "name": "MxDSStill::MxDSStill", "matching": 1.0, "diff": []}, {"address": "0x100c9930", "recomp": "0x10077100", "name": "MxDSStill::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c9940", "recomp": "0x10077110", "name": "MxDSStill::IsA", "matching": 1.0, "diff": []}, {"address": "0x100c9a50", "recomp": "0x10077220", "name": "MxDSStill::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c9a70", "recomp": "0x10077240", "name": "MxDSStill::~MxDSStill", "matching": 1.0, "diff": []}, {"address": "0x100c9ac0", "recomp": "0x10077290", "name": "MxDSStill::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100c9ad0", "recomp": "0x100772a0", "name": "MxDSStill::operator=", "matching": 1.0, "diff": []}, {"address": "0x100c9b00", "recomp": "0x100772d0", "name": "MxDSStill::Clone", "matching": 1.0, "effective": true, "diff": [["@@ -0x100c9b06,40 +0x100772d6,40 @@", [{"both": [["0x100c9b06", "push ebp", "0x100772d6"], ["0x100c9b07", "mov ebp, esp", "0x100772d7"], ["0x100c9b09", "push -1", "0x100772d9"], ["0x100c9b0b", "push <OFFSET1>", "0x100772db"], ["0x100c9b10", "push eax", "0x100772e0"], ["0x100c9b11", "mov dword ptr fs:[0], esp", "0x100772e1"], ["0x100c9b18", "sub esp, 4", "0x100772e8"], ["0x100c9b1b", "push ebx", "0x100772eb"], ["0x100c9b1c", "push esi", "0x100772ec"], ["0x100c9b1d", "push edi", "0x100772ed"]]}, {"orig": [["0x100c9b1e", "mov ebx, ecx"]], "recomp": [["0x100772ee", "mov esi, ecx"]]}, {"both": [["0x100c9b20", "push 0xb8", "0x100772f0"], ["0x100c9b25", "call ??2@YAPAXI@Z (FUNCTION)", "0x100772f5"], ["0x100c9b2a", "mov dword ptr [ebp - 0x10], eax", "0x100772fa"], ["0x100c9b2d", "add esp, 4", "0x100772fd"], ["0x100c9b30", "mov edi, eax", "0x10077300"]]}, {"orig": [["0x100c9b32", "mov esi, 0"]], "recomp": [["0x10077302", "mov ebx, 0"]]}, {"both": [["0x100c9b37", "mov dword ptr [ebp - 4], 0", "0x10077307"], ["0x100c9b3e", "test edi, edi", "0x1007730e"], ["0x100c9b40", "je 0x9", "0x10077310"], ["0x100c9b42", "mov ecx, edi", "0x10077312"], ["0x100c9b44", "call MxDSStill::MxDSStill (FUNCTION)", "0x10077314"]]}, {"orig": [["0x100c9b49", "mov esi, eax"]], "recomp": [["0x10077319", "mov ebx, eax"]]}, {"both": [["0x100c9b4b", "mov dword ptr [ebp - 4], 0xffffffff", "0x1007731b"]]}, {"orig": [["0x100c9b52", "test esi, esi"]], "recomp": [["0x10077322", "test ebx, ebx"]]}, {"both": [["0x100c9b54", "je 0x8", "0x10077324"]]}, {"orig": [["0x100c9b56", "push ebx"], ["0x100c9b57", "mov ecx, esi"]], "recomp": [["0x10077326", "push esi"], ["0x10077327", "mov ecx, ebx"]]}, {"both": [["0x100c9b59", "call MxDSStill::operator= (FUNCTION)", "0x10077329"]]}, {"orig": [["0x100c9b5e", "mov eax, esi"]], "recomp": [["0x1007732e", "mov eax, ebx"]]}, {"both": [["0x100c9b60", "mov ecx, dword ptr [ebp - 0xc]", "0x10077330"], ["0x100c9b63", "mov dword ptr fs:[0], ecx", "0x10077333"], ["0x100c9b6a", "pop edi", "0x1007733a"], ["0x100c9b6b", "pop esi", "0x1007733b"], ["0x100c9b6c", "pop ebx", "0x1007733c"], ["0x100c9b6d", "mov esp, ebp", "0x1007733d"], ["0x100c9b6f", "pop ebp", "0x1007733f"], ["0x100c9b70", "ret ", "0x10077340"], ["0x100c9b71", "mov eax, <OFFSET5>", "0x10077341"], ["0x100c9b76", "jmp ___CxxFrameHandler (FUNCTION)", "0x10077346"]]}]]]}, {"address": "0x100c9b90", "recomp": "0x10079110", "name": "MxDSMultiAction::MxDSMultiAction", "matching": 1.0, "diff": []}, {"address": "0x100c9c90", "recomp": "0x10079210", "name": "MxDSActionList::Compare", "matching": 1.0, "diff": []}, {"address": "0x100c9cb0", "recomp": "0x10079230", "name": "MxDSActionList::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c9cc0", "recomp": "0x100792a0", "name": "MxCollection<MxDSAction *>::Compare", "matching": 1.0, "diff": []}, {"address": "0x100c9cd0", "recomp": "0x10079250", "name": "MxCollection<MxDSAction *>::~MxCollection<MxDSAction *>", "matching": 1.0, "diff": []}, {"address": "0x100c9d20", "recomp": "0x10079240", "name": "MxCollection<MxDSAction *>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100c9d30", "recomp": "0x10079eb0", "name": "MxList<MxDSAction *>::~MxList<MxDSAction *>", "matching": 1.0, "diff": []}, {"address": "0x100c9dc0", "recomp": "0x100792b0", "name": "MxDSActionList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c9e30", "recomp": "0x10079320", "name": "MxCollection<MxDSAction *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c9ea0", "recomp": "0x10079390", "name": "MxList<MxDSAction *>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100c9f50", "recomp": "0x10079440", "name": "MxDSMultiAction::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100c9f60", "recomp": "0x10079450", "name": "MxDSMultiAction::IsA", "matching": 1.0, "diff": []}, {"address": "0x100ca040", "recomp": "0x10079530", "name": "MxDSMultiAction::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100ca060", "recomp": "0x10079550", "name": "MxDSMultiAction::~MxDSMultiAction", "matching": 1.0, "diff": []}, {"address": "0x100ca0d0", "recomp": "0x100795c0", "name": "MxDSMultiAction::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100ca260", "recomp": "0x10079750", "name": "MxDSMultiAction::operator=", "matching": 1.0, "diff": []}, {"address": "0x100ca290", "recomp": "0x10079780", "name": "MxDSMultiAction::SetUnknown90", "matching": 1.0, "diff": []}, {"address": "0x100ca370", "recomp": "0x10079860", "name": "MxDSMultiAction::MergeFrom", "matching": 1.0, "diff": []}, {"address": "0x100ca450", "recomp": "0x10079940", "name": "MxDSMultiAction::HasId", "matching": 1.0, "diff": []}, {"address": "0x100ca550", "recomp": "0x10079a40", "name": "MxDSMultiAction::Clone", "matching": 1.0, "diff": []}, {"address": "0x100ca5e0", "recomp": "0x10079ad0", "name": "MxDSMultiAction::VTable0x14", "matching": 1.0, "diff": []}, {"address": "0x100ca6c0", "recomp": "0x10079bb0", "name": "MxDSMultiAction::GetSizeOnDisk", "matching": 1.0, "diff": []}, {"address": "0x100ca7b0", "recomp": "0x10079ca0", "name": "MxDSMultiAction::Deserialize", "matching": 0.8636363636363636, "diff": [["@@ -0x100ca7e0,24 +0x10079cd0,24 @@", [{"both": [["0x100ca7e0", "mov eax, dword ptr [ecx + 4]", "0x10079cd0"], ["0x100ca7e3", "add ecx, 0xc", "0x10079cd3"], ["0x100ca7e6", "and eax, 1", "0x10079cd6"], ["0x100ca7e9", "mov dword ptr [ebp - 0x18], eax", "0x10079cd9"], ["0x100ca7ec", "mov dword ptr [esi], ecx", "0x10079cdc"], ["0x100ca7ee", "mov edx, dword ptr [ecx]", "0x10079cde"], ["0x100ca7f0", "add ecx, 4", "0x10079ce0"], ["0x100ca7f3", "mov dword ptr [ebp - 0x14], edx", "0x10079ce3"], ["0x100ca7f6", "mov dword ptr [esi], ecx", "0x10079ce6"], ["0x100ca7f8", "test edx, edx", "0x10079ce8"]]}, {"orig": [["0x100ca7fa", "je 0x86"]], "recomp": [["0x10079cea", "je 0x80"]]}, {"both": [["0x100ca800", "dec dword ptr [ebp - 0x14]", "0x10079cf0"], ["0x100ca803", "test edx, edx", "0x10079cf3"]]}, {"orig": [["0x100ca805", "je 0x7f"]], "recomp": [["0x10079cf5", "je 0x79"]]}, {"both": [["0x100ca807", "mov eax, dword ptr [esi]", "0x10079cf7"], ["0x100ca809", "mov ecx, dword ptr [ebp + 0xc]", "0x10079cf9"], ["0x100ca80c", "add eax, 8", "0x10079cfc"], ["0x100ca80f", "push ecx", "0x10079cff"], ["0x100ca810", "push esi", "0x10079d00"], ["0x100ca811", "mov edi, dword ptr [eax - 4]", "0x10079d01"], ["0x100ca814", "and edi, 1", "0x10079d04"], ["0x100ca817", "mov dword ptr [esi], eax", "0x10079d07"], ["0x100ca819", "call DeserializeDSObjectDispatch (FUNCTION)", "0x10079d09"], ["0x100ca81e", "add esp, 8", "0x10079d0e"]]}]], ["@@ -0x100ca824,44 +0x10079d14,46 @@", [{"both": [["0x100ca824", "mov dword ptr [ebp - 0x1c], eax", "0x10079d14"], ["0x100ca827", "add dword ptr [esi], edi", "0x10079d17"], ["0x100ca829", "mov edi, dword ptr [ecx + 0x98]", "0x10079d19"], ["0x100ca82f", "push 0xc", "0x10079d1f"], ["0x100ca831", "mov ebx, dword ptr [edi + 0x14]", "0x10079d21"], ["0x100ca834", "call ??2@YAPAXI@Z (FUNCTION)", "0x10079d24"], ["0x100ca839", "add esp, 4", "0x10079d29"], ["0x100ca83c", "mov dword ptr [ebp - 0x10], eax", "0x10079d2c"], ["0x100ca83f", "mov dword ptr [ebp - 4], 0", "0x10079d2f"], ["0x100ca846", "test eax, eax", "0x10079d36"]]}, {"orig": [["0x100ca848", "mov eax, 0"], ["0x100ca84d", "je 0x14"], ["0x100ca84f", "mov eax, dword ptr [ebp - 0x1c]"], ["0x100ca852", "mov ecx, dword ptr [ebp - 0x10]"], ["0x100ca855", "mov dword ptr [ecx], eax"], ["0x100ca857", "mov eax, ecx"], ["0x100ca859", "mov dword ptr [ecx + 4], ebx"], ["0x100ca85c", "mov dword ptr [ecx + 8], 0"]], "recomp": [["0x10079d38", "je 0x11"], ["0x10079d3a", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x10079d3d", "mov dword ptr [eax], ecx"], ["0x10079d3f", "mov dword ptr [eax + 4], ebx"], ["0x10079d42", "mov dword ptr [eax + 8], 0"], ["0x10079d49", "jmp 0x2"], ["0x10079d4b", "xor eax, eax"]]}, {"both": [["0x100ca863", "mov dword ptr [ebp - 4], 0xffffffff", "0x10079d4d"], ["0x100ca86a", "test ebx, ebx", "0x10079d54"], ["0x100ca86c", "je 0x5", "0x10079d56"], ["0x100ca86e", "mov dword ptr [ebx + 8], eax", "0x10079d58"], ["0x100ca871", "jmp 0x3", "0x10079d5b"], ["0x100ca873", "mov dword ptr [edi + 0x10], eax", "0x10079d5d"], ["0x100ca876", "mov dword ptr [edi + 0x14], eax", "0x10079d60"], ["0x100ca879", "mov eax, dword ptr [ebp - 0x14]", "0x10079d63"], ["0x100ca87c", "inc dword ptr [edi + 8]", "0x10079d66"], ["0x100ca87f", "dec dword ptr [ebp - 0x14]", "0x10079d69"], ["0x100ca882", "test eax, eax", "0x10079d6c"]]}, {"orig": [["0x100ca884", "jne -0x7f"]], "recomp": [["0x10079d6e", "jne -0x79"]]}, {"both": [["0x100ca886", "mov eax, dword ptr [ebp - 0x18]", "0x10079d70"], ["0x100ca889", "pop edi", "0x10079d73"], ["0x100ca88a", "add dword ptr [esi], eax", "0x10079d74"], ["0x100ca88c", "mov eax, dword ptr [ebp - 0xc]", "0x10079d76"], ["0x100ca88f", "mov dword ptr fs:[0], eax", "0x10079d79"], ["0x100ca895", "pop esi", "0x10079d7f"], ["0x100ca896", "pop ebx", "0x10079d80"], ["0x100ca897", "mov esp, ebp", "0x10079d81"], ["0x100ca899", "pop ebp", "0x10079d83"], ["0x100ca89a", "ret 8", "0x10079d84"], ["0x100ca89d", "mov eax, <OFFSET5>", "0x10079d87"], ["0x100ca8a2", "jmp ___CxxFrameHandler (FUNCTION)", "0x10079d8c"], ["0x100ca8a7", "mov eax, dword ptr [ebp - 0x10]", "0x10079d91"], ["0x100ca8aa", "push eax", "0x10079d94"]]}, {"orig": [], "recomp": [["0x10079d95", "call ??3@YAXPAX@Z (FUNCTION)"], ["0x10079d9a", "add esp, 4"], ["0x10079d9d", "ret "]]}]]]}, {"address": "0x100ca8c0", "recomp": "0x10079da0", "name": "MxDSMultiAction::SetAtomId", "matching": 1.0, "diff": []}, {"address": "0x100ca9d0", "recomp": "0x10078c60", "name": "MxDSSerialAction::MxDSSerialAction", "matching": 1.0, "diff": []}, {"address": "0x100caac0", "recomp": "0x10078e90", "name": "MxDSSerialAction::SetDuration", "matching": 1.0, "diff": []}, {"address": "0x100caad0", "recomp": "0x10078d50", "name": "MxDSSerialAction::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100caae0", "recomp": "0x10078d60", "name": "MxDSSerialAction::IsA", "matching": 1.0, "diff": []}, {"address": "0x100cabf0", "recomp": "0x10078e70", "name": "MxDSSerialAction::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100cac10", "recomp": "0x10078ea0", "name": "MxDSSerialAction::~MxDSSerialAction", "matching": 1.0, "diff": []}, {"address": "0x100cac90", "recomp": "0x10078f20", "name": "MxDSSerialAction::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100caca0", "recomp": "0x10078f30", "name": "MxDSSerialAction::operator=", "matching": 1.0, "diff": []}, {"address": "0x100cacd0", "recomp": "0x10078f60", "name": "MxDSSerialAction::Clone", "matching": 1.0, "diff": []}, {"address": "0x100cad60", "recomp": "0x10078ff0", "name": "MxDSSerialAction::GetDuration", "matching": 1.0, "diff": []}, {"address": "0x100cae80", "recomp": "0x10078840", "name": "MxDSParallelAction::MxDSParallelAction", "matching": 1.0, "diff": []}, {"address": "0x100caef0", "recomp": "0x10077470", "name": "MxDSParallelAction::SetDuration", "matching": 1.0, "diff": []}, {"address": "0x100caf00", "recomp": "0x100788b0", "name": "MxDSParallelAction::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100caf10", "recomp": "0x100788c0", "name": "MxDSParallelAction::IsA", "matching": 1.0, "diff": []}, {"address": "0x100cb020", "recomp": "0x100789d0", "name": "MxDSParallelAction::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100cb040", "recomp": "0x100789f0", "name": "MxDSParallelAction::~MxDSParallelAction", "matching": 1.0, "diff": []}, {"address": "0x100cb090", "recomp": "0x10078a40", "name": "MxDSParallelAction::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100cb0a0", "recomp": "0x10078a50", "name": "MxDSParallelAction::operator=", "matching": 1.0, "effective": true, "diff": [["@@ -0x100cb0a0,15 +0x10078a50,15 @@", [{"both": [["0x100cb0a0", "push esi", "0x10078a50"], ["0x100cb0a1", "push edi", "0x10078a51"], ["0x100cb0a2", "mov edi, ecx", "0x10078a52"], ["0x100cb0a4", "mov esi, dword ptr [esp + 0xc]", "0x10078a54"]]}, {"orig": [["0x100cb0a8", "cmp edi, esi"]], "recomp": [["0x10078a58", "cmp esi, edi"]]}, {"both": [["0x100cb0aa", "jne 0x7", "0x10078a5a"], ["0x100cb0ac", "mov eax, edi", "0x10078a5c"], ["0x100cb0ae", "pop edi", "0x10078a5e"], ["0x100cb0af", "pop esi", "0x10078a5f"], ["0x100cb0b0", "ret 4", "0x10078a60"], ["0x100cb0b3", "push esi", "0x10078a63"], ["0x100cb0b4", "mov ecx, edi", "0x10078a64"], ["0x100cb0b6", "call MxDSMultiAction::operator= (FUNCTION)", "0x10078a66"], ["0x100cb0bb", "push esi", "0x10078a6b"], ["0x100cb0bc", "mov ecx, edi", "0x10078a6c"]]}]]]}, {"address": "0x100cb0d0", "recomp": "0x10078a80", "name": "MxDSParallelAction::Clone", "matching": 1.0, "diff": []}, {"address": "0x100cb160", "recomp": "0x10078b10", "name": "MxDSParallelAction::GetDuration", "matching": 1.0, "diff": []}, {"address": "0x100cb2b0", "recomp": "0x10077360", "name": "MxDSSelectAction::MxDSSelectAction", "matching": 1.0, "diff": []}, {"address": "0x100cb3c0", "recomp": "0x10077520", "name": "MxCollection<MxString>::Compare", "matching": 1.0, "diff": []}, {"address": "0x100cb420", "recomp": "0x100774d0", "name": "MxCollection<MxString>::~MxCollection<MxString>", "matching": 1.0, "diff": []}, {"address": "0x100cb470", "recomp": "0x10077480", "name": "MxCollection<MxString>::Destroy", "matching": 1.0, "diff": []}, {"address": "0x100cb4c0", "recomp": "0x10078320", "name": "MxList<MxString>::~MxList<MxString>", "matching": 1.0, "diff": []}, {"address": "0x100cb590", "recomp": "0x10077580", "name": "MxCollection<MxString>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100cb600", "recomp": "0x100775f0", "name": "MxList<MxString>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100cb6f0", "recomp": "0x100776e0", "name": "MxDSSelectAction::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100cb700", "recomp": "0x100776f0", "name": "MxDSSelectAction::IsA", "matching": 1.0, "diff": []}, {"address": "0x100cb840", "recomp": "0x10077890", "name": "MxDSSelectAction::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100cb860", "recomp": "0x100778b0", "name": "MxStringList::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100cb8d0", "recomp": "0x10077920", "name": "MxDSSelectAction::~MxDSSelectAction", "matching": 1.0, "diff": []}, {"address": "0x100cb950", "recomp": "0x100779a0", "name": "MxDSSelectAction::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100cbb40", "recomp": "0x10077b90", "name": "MxList<MxString>::Append", "matching": 1.0, "diff": []}, {"address": "0x100cbbd0", "recomp": "0x10077c20", "name": "MxStringListCursor::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100cbc40", "recomp": "0x10077c90", "name": "MxListCursor<MxString>::~MxListCursor<MxString>", "matching": 1.0, "diff": []}, {"address": "0x100cbc90", "recomp": "0x10077ce0", "name": "MxListCursor<MxString>::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100cbd00", "recomp": "0x10077d50", "name": "MxStringListCursor::~MxStringListCursor", "matching": 1.0, "diff": []}, {"address": "0x100cbd50", "recomp": "0x10077da0", "name": "MxDSSelectAction::operator=", "matching": 1.0, "diff": []}, {"address": "0x100cbd80", "recomp": "0x10077dd0", "name": "MxDSSelectAction::Clone", "matching": 1.0, "effective": true, "diff": [["@@ -0x100cbd86,40 +0x10077dd6,40 @@", [{"both": [["0x100cbd86", "push ebp", "0x10077dd6"], ["0x100cbd87", "mov ebp, esp", "0x10077dd7"], ["0x100cbd89", "push -1", "0x10077dd9"], ["0x100cbd8b", "push <OFFSET1>", "0x10077ddb"], ["0x100cbd90", "push eax", "0x10077de0"], ["0x100cbd91", "mov dword ptr fs:[0], esp", "0x10077de1"], ["0x100cbd98", "sub esp, 4", "0x10077de8"], ["0x100cbd9b", "push ebx", "0x10077deb"], ["0x100cbd9c", "push esi", "0x10077dec"], ["0x100cbd9d", "push edi", "0x10077ded"]]}, {"orig": [["0x100cbd9e", "mov ebx, ecx"]], "recomp": [["0x10077dee", "mov esi, ecx"]]}, {"both": [["0x100cbda0", "push 0xb0", "0x10077df0"], ["0x100cbda5", "call ??2@YAPAXI@Z (FUNCTION)", "0x10077df5"], ["0x100cbdaa", "mov dword ptr [ebp - 0x10], eax", "0x10077dfa"], ["0x100cbdad", "add esp, 4", "0x10077dfd"], ["0x100cbdb0", "mov edi, eax", "0x10077e00"]]}, {"orig": [["0x100cbdb2", "mov esi, 0"]], "recomp": [["0x10077e02", "mov ebx, 0"]]}, {"both": [["0x100cbdb7", "mov dword ptr [ebp - 4], 0", "0x10077e07"], ["0x100cbdbe", "test edi, edi", "0x10077e0e"], ["0x100cbdc0", "je 0x9", "0x10077e10"], ["0x100cbdc2", "mov ecx, edi", "0x10077e12"], ["0x100cbdc4", "call MxDSSelectAction::MxDSSelectAction (FUNCTION)", "0x10077e14"]]}, {"orig": [["0x100cbdc9", "mov esi, eax"]], "recomp": [["0x10077e19", "mov ebx, eax"]]}, {"both": [["0x100cbdcb", "mov dword ptr [ebp - 4], 0xffffffff", "0x10077e1b"]]}, {"orig": [["0x100cbdd2", "test esi, esi"]], "recomp": [["0x10077e22", "test ebx, ebx"]]}, {"both": [["0x100cbdd4", "je 0x8", "0x10077e24"]]}, {"orig": [["0x100cbdd6", "push ebx"], ["0x100cbdd7", "mov ecx, esi"]], "recomp": [["0x10077e26", "push esi"], ["0x10077e27", "mov ecx, ebx"]]}, {"both": [["0x100cbdd9", "call MxDSSelectAction::operator= (FUNCTION)", "0x10077e29"]]}, {"orig": [["0x100cbdde", "mov eax, esi"]], "recomp": [["0x10077e2e", "mov eax, ebx"]]}, {"both": [["0x100cbde0", "mov ecx, dword ptr [ebp - 0xc]", "0x10077e30"], ["0x100cbde3", "mov dword ptr fs:[0], ecx", "0x10077e33"], ["0x100cbdea", "pop edi", "0x10077e3a"], ["0x100cbdeb", "pop esi", "0x10077e3b"], ["0x100cbdec", "pop ebx", "0x10077e3c"], ["0x100cbded", "mov esp, ebp", "0x10077e3d"], ["0x100cbdef", "pop ebp", "0x10077e3f"], ["0x100cbdf0", "ret ", "0x10077e40"], ["0x100cbdf1", "mov eax, <OFFSET5>", "0x10077e41"], ["0x100cbdf6", "jmp ___CxxFrameHandler (FUNCTION)", "0x10077e46"]]}]]]}, {"address": "0x100cbe10", "recomp": "0x10077e60", "name": "MxDSSelectAction::GetSizeOnDisk", "matching": 1.0, "diff": []}, {"address": "0x100cbf60", "recomp": "0x10077fb0", "name": "MxDSSelectAction::Deserialize", "matching": 0.9787985865724381, "diff": [["@@ -0x100cc104,22 +0x10078154,22 @@", [{"both": [["0x100cc104", "push eax", "0x10078154"], ["0x100cc105", "call ??3@YAXPAX@Z (FUNCTION)", "0x10078155"], ["0x100cc10a", "add esp, 4", "0x1007815a"], ["0x100cc10d", "mov eax, dword ptr [ebp - 0x38]", "0x1007815d"], ["0x100cc110", "jmp -0x57", "0x10078160"], ["0x100cc112", "xor esi, esi", "0x10078162"], ["0x100cc114", "mov eax, dword ptr [ebp - 0x10]", "0x10078164"], ["0x100cc117", "mov dword ptr [eax + 8], esi", "0x10078167"], ["0x100cc11a", "mov dword ptr [eax + 0x14], esi", "0x1007816a"], ["0x100cc11d", "mov dword ptr [eax + 0x10], esi", "0x1007816d"]]}, {"orig": [["0x100cc120", "cmp esi, dword ptr [ebp - 0x24]"], ["0x100cc123", "jae 0x80"]], "recomp": [["0x10078170", "cmp dword ptr [ebp - 0x24], esi"], ["0x10078173", "jbe 0x80"]]}, {"both": [["0x100cc129", "mov edx, dword ptr [ebp - 0x40]", "0x10078179"], ["0x100cc12c", "mov ecx, dword ptr [ebp + 8]", "0x1007817c"], ["0x100cc12f", "mov eax, dword ptr [ecx]", "0x1007817f"], ["0x100cc131", "mov cl, byte ptr [edx]", "0x10078181"], ["0x100cc133", "cmp cl, byte ptr [eax]", "0x10078183"], ["0x100cc135", "jne 0x1a", "0x10078185"], ["0x100cc137", "or cl, cl", "0x10078187"], ["0x100cc139", "je 0x12", "0x10078189"], ["0x100cc13b", "mov cl, byte ptr [edx + 1]", "0x1007818b"], ["0x100cc13e", "cmp cl, byte ptr [eax + 1]", "0x1007818e"]]}]], ["@@ -0x100cc1bf,23 +0x1007820f,23 @@", [{"both": [["0x100cc1bf", "mov eax, dword ptr [edx + 4]", "0x1007820f"], ["0x100cc1c2", "add edx, 8", "0x10078212"], ["0x100cc1c5", "and eax, 1", "0x10078215"], ["0x100cc1c8", "mov dword ptr [ebp - 0x2c], eax", "0x10078218"], ["0x100cc1cb", "mov dword ptr [ecx], edx", "0x1007821b"], ["0x100cc1cd", "mov eax, dword ptr [ebp + 0xc]", "0x1007821d"], ["0x100cc1d0", "push eax", "0x10078220"], ["0x100cc1d1", "push ecx", "0x10078221"], ["0x100cc1d2", "call DeserializeDSObjectDispatch (FUNCTION)", "0x10078222"], ["0x100cc1d7", "add esp, 8", "0x10078227"]]}, {"orig": [["0x100cc1da", "mov ecx, dword ptr [ebp - 0x10]"]], "recomp": [["0x1007822a", "mov ecx, dword ptr [ebp - 0x30]"]]}, {"both": [["0x100cc1dd", "mov dword ptr [ebp - 0x1a], eax", "0x1007822d"]]}, {"orig": [["0x100cc1e0", "cmp dword ptr [ebp - 0x30], ecx"]], "recomp": [["0x10078230", "cmp ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x100cc1e3", "jne 0x57", "0x10078233"], ["0x100cc1e5", "mov eax, dword ptr [ebp - 0x14]", "0x10078235"], ["0x100cc1e8", "push 0xc", "0x10078238"], ["0x100cc1ea", "mov ebx, dword ptr [eax + 0x98]", "0x1007823a"], ["0x100cc1f0", "mov esi, dword ptr [ebx + 0x14]", "0x10078240"], ["0x100cc1f3", "call ??2@YAPAXI@Z (FUNCTION)", "0x10078243"], ["0x100cc1f8", "mov dword ptr [ebp - 0x28], eax", "0x10078248"], ["0x100cc1fb", "add esp, 4", "0x1007824b"], ["0x100cc1fe", "mov byte ptr [ebp - 4], 4", "0x1007824e"], ["0x100cc202", "mov edi, eax", "0x10078252"]]}]], ["@@ -0x100cc242,22 +0x10078292,22 @@", [{"both": [["0x100cc242", "push 1", "0x10078292"], ["0x100cc244", "mov eax, dword ptr [ebp - 0x1a]", "0x10078294"], ["0x100cc247", "mov ecx, eax", "0x10078297"], ["0x100cc249", "mov ebx, dword ptr [eax]", "0x10078299"], ["0x100cc24b", "call dword ptr [ebx]", "0x1007829b"], ["0x100cc24d", "mov eax, dword ptr [ebp - 0x2c]", "0x1007829d"], ["0x100cc250", "mov ecx, dword ptr [ebp + 8]", "0x100782a0"], ["0x100cc253", "inc dword ptr [ebp - 0x10]", "0x100782a3"], ["0x100cc256", "add dword ptr [ecx], eax", "0x100782a6"], ["0x100cc258", "mov edx, dword ptr [ebp - 0x10]", "0x100782a8"]]}, {"orig": [["0x100cc25b", "cmp edx, dword ptr [ebp - 0x24]"], ["0x100cc25e", "jb -0xaa"]], "recomp": [["0x100782ab", "cmp dword ptr [ebp - 0x24], edx"], ["0x100782ae", "ja -0xaa"]]}, {"both": [["0x100cc264", "mov eax, dword ptr [ebp - 0x34]", "0x100782b4"], ["0x100cc267", "mov ecx, dword ptr [ebp + 8]", "0x100782b7"], ["0x100cc26a", "mov dword ptr [ebp - 4], 0xffffffff", "0x100782ba"], ["0x100cc271", "add dword ptr [ecx], eax", "0x100782c1"], ["0x100cc273", "call <OFFSET23>", "0x100782c3"], ["0x100cc278", "mov eax, dword ptr [ebp - 0xc]", "0x100782c8"], ["0x100cc27b", "pop edi", "0x100782cb"], ["0x100cc27c", "mov dword ptr fs:[0], eax", "0x100782cc"], ["0x100cc282", "pop esi", "0x100782d2"], ["0x100cc283", "pop ebx", "0x100782d3"]]}]]]}, {"address": "0x100cc2d0", "recomp": "0x100783f0", "name": "MxList<MxString>::InsertEntry", "matching": 1.0, "diff": []}, {"address": "0x100cc3c0", "recomp": "0x100784e0", "name": "MxListEntry<MxString>::MxListEntry<MxString>", "matching": 1.0, "diff": []}, {"address": "0x100cc450", "recomp": "0x10077830", "name": "MxListEntry<MxString>::GetValue", "matching": 1.0, "diff": []}, {"address": "0x100cc4b0", "recomp": "0x10063840", "name": "MxDSFile::MxDSFile", "matching": 1.0, "diff": []}, {"address": "0x100cc590", "recomp": "0x10063920", "name": "MxDSFile::Open", "matching": 1.0, "diff": []}, {"address": "0x100cc620", "recomp": "0x100639b0", "name": "MxDSFile::ReadChunks", "matching": 1.0, "diff": []}, {"address": "0x100cc740", "recomp": "0x10063ad0", "name": "MxDSFile::Close", "matching": 1.0, "diff": []}, {"address": "0x100cc780", "recomp": "0x10063b10", "name": "MxDSFile::Read", "matching": 1.0, "diff": []}, {"address": "0x100cc7b0", "recomp": "0x10063b40", "name": "MxDSFile::Seek", "matching": 1.0, "diff": []}, {"address": "0x100cc7e0", "recomp": "0x10063b70", "name": "MxDSFile::GetBufferSize", "matching": 1.0, "diff": []}, {"address": "0x100cc7f0", "recomp": "0x10063b80", "name": "MxDSFile::GetStreamBuffersNum", "matching": 1.0, "diff": []}, {"address": "0x100cc800", "recomp": "0x10063b90", "name": "MXIOINFO::MXIOINFO", "matching": 1.0, "diff": []}, {"address": "0x100cc820", "recomp": "0x10063bb0", "name": "MXIOINFO::~MXIOINFO", "matching": 1.0, "diff": []}, {"address": "0x100cc830", "recomp": "0x10063bc0", "name": "MXIOINFO::Open", "matching": 1.0, "diff": []}, {"address": "0x100cc8e0", "recomp": "0x10063c70", "name": "MXIOINFO::Close", "matching": 1.0, "diff": []}, {"address": "0x100cc930", "recomp": "0x10063cc0", "name": "MXIOINFO::Read", "matching": 1.0, "diff": []}, {"address": "0x100cca00", "recomp": "0x10063d90", "name": "MXIOINFO::Seek", "matching": 1.0, "effective": true, "diff": [["@@ -0x100ccabc,21 +0x10063e4c,21 @@", [{"both": [["0x100ccabc", "pop edi", "0x10063e4c"], ["0x100ccabd", "pop esi", "0x10063e4d"], ["0x100ccabe", "pop ebx", "0x10063e4e"], ["0x100ccabf", "ret 8", "0x10063e4f"], ["0x100ccac2", "mov ecx, esi", "0x10063e52"], ["0x100ccac4", "mov eax, esi", "0x10063e54"], ["0x100ccac6", "cdq ", "0x10063e56"], ["0x100ccac7", "idiv dword ptr [edi + 0x14]", "0x10063e57"], ["0x100ccaca", "sub ecx, edx", "0x10063e5a"], ["0x100ccacc", "mov dword ptr [edi + 0x28], ecx", "0x10063e5c"]]}, {"orig": [["0x100ccacf", "cmp esi, ecx"]], "recomp": [["0x10063e5f", "cmp ecx, esi"]]}, {"both": [["0x100ccad1", "je 0x1e", "0x10063e61"], ["0x100ccad3", "push 0", "0x10063e63"], ["0x100ccad5", "mov eax, dword ptr [edi + 0x44]", "0x10063e65"], ["0x100ccad8", "push ecx", "0x10063e68"], ["0x100ccad9", "push eax", "0x10063e69"], ["0x100ccada", "call ebp", "0x10063e6a"], ["0x100ccadc", "mov dword ptr [edi + 0x2c], eax", "0x10063e6c"], ["0x100ccadf", "cmp eax, -1", "0x10063e6f"], ["0x100ccae2", "jne 0xd", "0x10063e72"], ["0x100ccae4", "push 1", "0x10063e74"]]}]]]}, {"address": "0x100ccbc0", "recomp": "0x10063f50", "name": "MXIOINFO::SetBuffer", "matching": 1.0, "diff": []}, {"address": "0x100ccc10", "recomp": "0x10063fa0", "name": "MXIOINFO::Flush", "matching": 1.0, "effective": true, "diff": [["@@ -0x100ccc8c,21 +0x1006401c,21 @@", [{"both": [["0x100ccc8c", "pop ebx", "0x1006401c"], ["0x100ccc8d", "ret 4", "0x1006401d"], ["0x100ccc90", "push ebx", "0x10064020"], ["0x100ccc91", "mov eax, dword ptr [esi + 0x18]", "0x10064021"], ["0x100ccc94", "push eax", "0x10064024"], ["0x100ccc95", "mov ecx, dword ptr [esi + 0x44]", "0x10064025"], ["0x100ccc98", "push ecx", "0x10064028"], ["0x100ccc99", "call dword ptr [__imp___hwrite@12 (POINTER)]", "0x10064029"], ["0x100ccc9f", "cmp eax, -1", "0x1006402f"], ["0x100ccca2", "je 0x1d", "0x10064032"]]}, {"orig": [["0x100ccca4", "cmp ebx, eax"]], "recomp": [["0x10064034", "cmp eax, ebx"]]}, {"both": [["0x100ccca6", "jne 0x19", "0x10064036"], ["0x100ccca8", "pop ebp", "0x10064038"], ["0x100ccca9", "add dword ptr [esi + 0x2c], eax", "0x10064039"], ["0x100cccac", "mov eax, dword ptr [esi + 0x18]", "0x1006403c"], ["0x100cccaf", "and dword ptr [esi], 0xefffffff", "0x1006403f"], ["0x100cccb5", "mov dword ptr [esi + 0x1c], eax", "0x10064045"], ["0x100cccb8", "mov ax, di", "0x10064048"], ["0x100cccbb", "pop edi", "0x1006404b"], ["0x100cccbc", "pop esi", "0x1006404c"], ["0x100cccbd", "pop ebx", "0x1006404d"]]}]]]}, {"address": "0x100ccd00", "recomp": "0x10064090", "name": "MXIOINFO::Advance", "matching": 0.9624060150375939, "diff": [["@@ -0x100ccd3c,34 +0x100640cc,34 @@", [{"both": [["0x100ccd3c", "jle 0x67", "0x100640cc"], ["0x100ccd3e", "mov eax, dword ptr [esi + 0x28]", "0x100640ce"], ["0x100ccd41", "cmp dword ptr [esi + 0x2c], eax", "0x100640d1"], ["0x100ccd44", "je 0x10", "0x100640d4"], ["0x100ccd46", "push 0", "0x100640d6"], ["0x100ccd48", "push eax", "0x100640d8"], ["0x100ccd49", "mov eax, dword ptr [esi + 0x44]", "0x100640d9"], ["0x100ccd4c", "push eax", "0x100640dc"], ["0x100ccd4d", "call dword ptr [__imp___llseek@12 (POINTER)]", "0x100640dd"], ["0x100ccd53", "mov dword ptr [esi + 0x2c], eax", "0x100640e3"]]}, {"orig": [["0x100ccd56", "mov eax, dword ptr [esi + 0x28]"], ["0x100ccd59", "cmp dword ptr [esi + 0x2c], eax"]], "recomp": [["0x100640e6", "mov eax, dword ptr [esi + 0x2c]"], ["0x100640e9", "cmp dword ptr [esi + 0x28], eax"]]}, {"both": [["0x100ccd5c", "je 0x6", "0x100640ec"], ["0x100ccd5e", "mov di, 0x107", "0x100640ee"], ["0x100ccd62", "jmp 0x30", "0x100640f2"], ["0x100ccd64", "push ebx", "0x100640f4"], ["0x100ccd65", "mov eax, dword ptr [esi + 0x18]", "0x100640f5"], ["0x100ccd68", "push eax", "0x100640f8"], ["0x100ccd69", "mov ecx, dword ptr [esi + 0x44]", "0x100640f9"], ["0x100ccd6c", "push ecx", "0x100640fc"], ["0x100ccd6d", "call dword ptr [__imp___hwrite@12 (POINTER)]", "0x100640fd"], ["0x100ccd73", "cmp eax, -1", "0x10064103"], ["0x100ccd76", "je 0x18", "0x10064106"]]}, {"orig": [["0x100ccd78", "cmp ebx, eax"]], "recomp": [["0x10064108", "cmp eax, ebx"]]}, {"both": [["0x100ccd7a", "jne 0x14", "0x1006410a"], ["0x100ccd7c", "add dword ptr [esi + 0x2c], eax", "0x1006410c"], ["0x100ccd7f", "and dword ptr [esi], 0xefffffff", "0x1006410f"], ["0x100ccd85", "mov eax, dword ptr [esi + 0x18]", "0x10064115"], ["0x100ccd88", "mov dword ptr [esi + 0x1c], eax", "0x10064118"], ["0x100ccd8b", "mov dword ptr [esi + 0x20], eax", "0x1006411b"], ["0x100ccd8e", "jmp 0x15", "0x1006411e"], ["0x100ccd90", "mov di, 0x106", "0x10064120"], ["0x100ccd94", "push 1", "0x10064124"], ["0x100ccd96", "mov eax, dword ptr [esi + 0x44]", "0x10064126"]]}]], ["@@ -0x100ccdba,22 +0x1006414a,22 @@", [{"both": [["0x100ccdba", "test ebx, ebx", "0x1006414a"], ["0x100ccdbc", "jle 0x8b", "0x1006414c"], ["0x100ccdc2", "cmp dword ptr [esi + 0x2c], eax", "0x10064152"], ["0x100ccdc5", "je 0x10", "0x10064155"], ["0x100ccdc7", "push 0", "0x10064157"], ["0x100ccdc9", "push eax", "0x10064159"], ["0x100ccdca", "mov eax, dword ptr [esi + 0x44]", "0x1006415a"], ["0x100ccdcd", "push eax", "0x1006415d"], ["0x100ccdce", "call dword ptr [__imp___llseek@12 (POINTER)]", "0x1006415e"], ["0x100ccdd4", "mov dword ptr [esi + 0x2c], eax", "0x10064164"]]}, {"orig": [["0x100ccdd7", "mov eax, dword ptr [esi + 0x28]"], ["0x100ccdda", "cmp dword ptr [esi + 0x2c], eax"]], "recomp": [["0x10064167", "mov eax, dword ptr [esi + 0x2c]"], ["0x1006416a", "cmp dword ptr [esi + 0x28], eax"]]}, {"both": [["0x100ccddd", "je 0x1f", "0x1006416d"], ["0x100ccddf", "mov di, 0x107", "0x1006416f"], ["0x100ccde3", "push 1", "0x10064173"], ["0x100ccde5", "push 0", "0x10064175"], ["0x100ccde7", "mov eax, dword ptr [esi + 0x44]", "0x10064177"], ["0x100ccdea", "push eax", "0x1006417a"], ["0x100ccdeb", "call dword ptr [__imp___llseek@12 (POINTER)]", "0x1006417b"], ["0x100ccdf1", "pop ebp", "0x10064181"], ["0x100ccdf2", "mov dword ptr [esi + 0x2c], eax", "0x10064182"], ["0x100ccdf5", "mov ax, di", "0x10064185"]]}]]]}, {"address": "0x100cce60", "recomp": "0x100641f0", "name": "MXIOINFO::Descend", "matching": 0.9857142857142858, "diff": [["@@ -0x100ccf51,22 +0x100642e1,22 @@", [{"both": [["0x100ccf51", "test eax, eax", "0x100642e1"], ["0x100ccf53", "je 0xe", "0x100642e3"], ["0x100ccf55", "mov ecx, dword ptr [esi + 0x1c]", "0x100642e5"], ["0x100ccf58", "sub ecx, eax", "0x100642e8"], ["0x100ccf5a", "add ecx, dword ptr [esi + 0x28]", "0x100642ea"], ["0x100ccf5d", "mov dword ptr [esp + 0x24], ecx", "0x100642ed"], ["0x100ccf61", "jmp 0x7", "0x100642f1"], ["0x100ccf63", "mov eax, dword ptr [esi + 0x2c]", "0x100642f3"], ["0x100ccf66", "mov dword ptr [esp + 0x24], eax", "0x100642f6"], ["0x100ccf6a", "mov eax, dword ptr [esp + 0x14]", "0x100642fa"]]}, {"orig": [["0x100ccf6e", "cmp eax, dword ptr [esp + 0x24]"], ["0x100ccf72", "jae 0x6"]], "recomp": [["0x100642fe", "cmp dword ptr [esp + 0x24], eax"], ["0x10064302", "jbe 0x6"]]}, {"both": [["0x100ccf74", "mov bx, 0x109", "0x10064304"], ["0x100ccf78", "jmp 0x6e", "0x10064308"], ["0x100ccf7a", "cmp word ptr [esp + 0x38], 0x40", "0x1006430a"], ["0x100ccf80", "jne 0xa", "0x10064310"], ["0x100ccf82", "cmp dword ptr [esp + 0x18], 0x5453494c", "0x10064312"], ["0x100ccf8a", "je 0x12", "0x1006431a"], ["0x100ccf8c", "cmp word ptr [esp + 0x38], 0x20", "0x1006431c"], ["0x100ccf92", "jne 0x2e", "0x10064322"], ["0x100ccf94", "cmp dword ptr [esp + 0x18], 0x46464952", "0x10064324"], ["0x100ccf9c", "jne 0x24", "0x1006432c"]]}]]]}, {"address": "0x100cd010", "recomp": "0x1007a9f0", "name": "MxDSStreamingAction::MxDSStreamingAction", "matching": 1.0, "diff": []}, {"address": "0x100cd090", "recomp": "0x1007aa90", "name": "MxDSStreamingAction::HasId", "matching": 1.0, "diff": []}, {"address": "0x100cd0b0", "recomp": "0x1007aa70", "name": "MxDSStreamingAction::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100cd0d0", "recomp": "0x1007aab0", "name": "MxDSStreamingAction::MxDSStreamingAction", "matching": 1.0, "diff": []}, {"address": "0x100cd150", "recomp": "0x1007ab30", "name": "MxDSStreamingAction::~MxDSStreamingAction", "matching": 1.0, "diff": []}, {"address": "0x100cd1e0", "recomp": "0x1007abc0", "name": "MxDSStreamingAction::Init", "matching": 1.0, "diff": []}, {"address": "0x100cd220", "recomp": "0x1007ac00", "name": "MxDSStreamingAction::CopyFrom", "matching": 1.0, "diff": []}, {"address": "0x100cd2a0", "recomp": "0x1007ac80", "name": "MxDSStreamingAction::SetInternalAction", "matching": 1.0, "diff": []}, {"address": "0x100cd2d0", "recomp": "0x1007acb0", "name": "MxDSStreamingAction::FUN_100cd2d0", "matching": 1.0, "diff": []}, {"address": "0x100cd782", "recomp": "0x100984a0", "name": "_SmackGetSizeTables", "matching": 0.8571428571428571, "diff": [["@@ -0x100cd782,12 +0x100984a0,17 @@", [{"both": [["0x100cd782", "mov eax, 0x7468", "0x100984a0"], ["0x100cd787", "ret ", "0x100984a5"]]}, {"orig": [], "recomp": [["0x100984a6", "xchg ebx, ebx"], ["0x100984a8", "xchg ecx, ecx"], ["0x100984aa", "xchg ebx, ebx"], ["0x100984ac", "xchg ecx, ecx"], ["0x100984ae", "xchg ebx, ebx"]]}, {"both": [["0x100cd788", "add esi, 0x7468", "0x100984b0"], ["0x100cd78e", "shr eax, 2", "0x100984b6"], ["0x100cd791", "test byte ptr [esi], 1", "0x100984b9"], ["0x100cd794", "jne 0x8", "0x100984bc"], ["0x100cd796", "add esi, 4", "0x100984be"], ["0x100cd799", "dec eax", "0x100984c1"], ["0x100cd79a", "jne -0xb", "0x100984c2"], ["0x100cd79c", "jmp 0x19", "0x100984c4"], ["0x100cd79e", "movzx edx, word ptr [esi + 2]", "0x100984c6"], ["0x100cd7a2", "mov ch, 1", "0x100984ca"]]}]], ["@@ -0x100cd7d4,18 +0x100984fc,10 @@", [{"both": [["0x100cd7d4", "dec eax", "0x100984fc"], ["0x100cd7d5", "jne -0xe", "0x100984fd"], ["0x100cd7d7", "jmp 0xd", "0x100984ff"], ["0x100cd7d9", "mov dx, word ptr [esi + 2]", "0x10098501"], ["0x100cd7dd", "mov word ptr [esi], dx", "0x10098505"], ["0x100cd7e0", "add esi, 4", "0x10098508"], ["0x100cd7e3", "dec eax", "0x1009850b"], ["0x100cd7e4", "jne -0x1d", "0x1009850c"], ["0x100cd7e6", "pop ebp", "0x1009850e"], ["0x100cd7e7", "ret ", "0x1009850f"]]}, {"orig": [["0x100cd7e8", "push ebp"], ["0x100cd7e9", "mov ebp, esp"], ["0x100cd7eb", "push es"], ["0x100cd7ec", "push ebx"], ["0x100cd7ed", "push ecx"], ["0x100cd7ee", "push edx"], ["0x100cd7ef", "push edi"], ["0x100cd7f0", "push esi"]], "recomp": []}]]]}, {"address": "0x100cd7e8", "recomp": "0x10098510", "name": "_SmackDoTables", "matching": 0.9455445544554455, "diff": [["@@ -0x100cd9ca,20 +0x100986f2,28 @@", [{"both": [["0x100cd9ca", "add esi, ecx", "0x100986f2"], ["0x100cd9cc", "call <OFFSET14>", "0x100986f4"], ["0x100cd9d1", "pop esi", "0x100986f9"], ["0x100cd9d2", "pop edi", "0x100986fa"], ["0x100cd9d3", "pop edx", "0x100986fb"], ["0x100cd9d4", "pop ecx", "0x100986fc"], ["0x100cd9d5", "pop ebx", "0x100986fd"], ["0x100cd9d6", "pop es", "0x100986fe"], ["0x100cd9d7", "pop ebp", "0x100986ff"], ["0x100cd9d8", "ret ", "0x10098700"]]}, {"orig": [], "recomp": [["0x10098701", "xchg ebx, ebx"], ["0x10098703", "xchg ecx, ecx"], ["0x10098705", "xchg ebx, ebx"], ["0x10098707", "xchg ecx, ecx"], ["0x10098709", "xchg ebx, ebx"], ["0x1009870b", "xchg ecx, ecx"], ["0x1009870d", "xchg ebx, ebx"], ["0x1009870f", "nop "]]}, {"both": [["0x100cd9d9", "push esi", "0x10098710"], ["0x100cd9da", "push ecx", "0x10098711"], ["0x100cd9db", "push edx", "0x10098712"], ["0x100cd9dc", "push ebx", "0x10098713"], ["0x100cd9dd", "mov edx, edi", "0x10098714"], ["0x100cd9df", "mov esi, dword ptr [edx + 2]", "0x10098716"], ["0x100cd9e2", "mov edi, dword ptr [edx + 6]", "0x10098719"], ["0x100cd9e5", "mov ebp, dword ptr [<OFFSET15>]", "0x1009871c"], ["0x100cd9eb", "movzx ebx, word ptr [edx + 0xa]", "0x10098722"], ["0x100cd9ef", "cmp ebx, 0", "0x10098726"]]}]], ["@@ -0x100cda6b,21 +0x100987a2,13 @@", [{"both": [["0x100cda6b", "movzx eax, word ptr [edi]", "0x100987a2"], ["0x100cda6e", "add edi, 2", "0x100987a5"], ["0x100cda71", "mov dword ptr [<OFFSET22>], eax", "0x100987a8"], ["0x100cda76", "mov dword ptr [<OFFSET23>], edi", "0x100987ad"], ["0x100cda7c", "mov edi, edx", "0x100987b3"], ["0x100cda7e", "pop ebx", "0x100987b5"], ["0x100cda7f", "pop edx", "0x100987b6"], ["0x100cda80", "pop ecx", "0x100987b7"], ["0x100cda81", "pop esi", "0x100987b8"], ["0x100cda82", "ret ", "0x100987b9"]]}, {"orig": [["0x100cda83", "push ebp"], ["0x100cda84", "mov ebp, esp"], ["0x100cda86", "push es"], ["0x100cda87", "push ebx"], ["0x100cda88", "push edi"], ["0x100cda89", "push esi"], ["0x100cda8a", "push edx"], ["0x100cda8b", "mov ax, ds"], ["0x100cda8e", "mov es, eax"], ["0x100cda90", "cld "], ["0x100cda91", "mov esi, dword ptr [ebp + 0xc]"]], "recomp": [["0x100987ba", "xchg ebx, ebx"], ["0x100987bc", "xchg ecx, ecx"], ["0x100987be", "xchg ebx, ebx"]]}]]]}, {"address": "0x100cda83", "recomp": "0x100987c0", "name": "_SmackDoFrameToBuffer", "matching": 0.7640959170447181, "diff": [["@@ -0x100cdb33,53 +0x10098870,66 @@", [{"both": [["0x100cdb33", "mov eax, dword ptr [edi + 4]", "0x10098870"], ["0x100cdb36", "mov dword ptr [edi + 0x20], 0", "0x10098873"], ["0x100cdb3d", "mov dword ptr [edi + 0x2c], 0", "0x1009887a"], ["0x100cdb44", "mov dword ptr [edi + 0x30], 0", "0x10098881"], ["0x100cdb4b", "add edi, 0x38", "0x10098888"], ["0x100cdb4e", "mov dword ptr [<OFFSET15>], edi", "0x1009888b"], ["0x100cdb54", "xor edi, edi", "0x10098891"], ["0x100cdb56", "mov dword ptr [<OFFSET16>], edi", "0x10098893"], ["0x100cdb5c", "mov dword ptr [<OFFSET17>], edi", "0x10098899"], ["0x100cdb62", "mov edi, eax", "0x1009889f"]]}, {"orig": [["0x100cdb64", "jmp 0x1a"], ["0x100cdb66", "xchg ebx, ebx"], ["0x100cdb68", "xchg ecx, ecx"], ["0x100cdb6a", "xchg ebx, ebx"], ["0x100cdb6c", "xchg ecx, ecx"], ["0x100cdb6e", "xchg ebx, ebx"], ["0x100cdb70", "push eax"], ["0x100cdb71", "fmul qword ptr [eax + edx]"], ["0x100cdb74", "shl dl, 1"]], "recomp": [["0x100988a1", "jmp 0x1d"], ["0x100988a3", "xchg ebx, ebx"], ["0x100988a5", "xchg ecx, ecx"], ["0x100988a7", "xchg ebx, ebx"], ["0x100988a9", "xchg ecx, ecx"], ["0x100988ab", "xchg ebx, ebx"], ["0x100988ad", "xchg ecx, ecx"], ["0x100988af", "nop "], ["0x100988b0", "ror byte ptr [ecx - 0x6f6feff7], 9"], ["0x100988b7", "adc al, ah"], ["0x100988b9", "xchg edi, eax"], ["0x100988ba", "or dword ptr [eax], edx"], ["0x100988bc", "sbb byte ptr [eax - 0x4f5feff7], 0xa0"]]}, {"both": [["0x100cdb76", "or al, 0x10", "0x100988c3"]]}, {"orig": [["0x100cdb78", "mov al, 0xe8"], ["0x100cdb7a", "or al, 0x10"], ["0x100cdb7c", "push eax"], ["0x100cdb7d", "jmp 0x10a0100c"], ["0x100cdb82", "daa "], ["0x100cdb83", "adc byte ptr [eax], dl"], ["0x100cdb85", "cmp al, 0x11"], ["0x100cdb87", "ja 0x17"]], "recomp": [["0x100988c5", "cmp al, 8"], ["0x100988c7", "ja 0x47"]]}, {"both": [["0x100cdb89", "mov cl, al", "0x100988c9"]]}, {"orig": [["0x100cdb8b", "movzx edx, word ptr [esi]"]], "recomp": [["0x100988cb", "mov edx, dword ptr [esi]"], ["0x100988cd", "dec cl"]]}, {"both": [["0x100cdb8e", "add esi, 2", "0x100988cf"]]}, {"orig": [["0x100cdb91", "dec cl"]], "recomp": []}, {"both": [["0x100cdb93", "shl edx, cl", "0x100988d2"]]}, {"orig": [], "recomp": [["0x100988d4", "mov ecx, dword ptr [<OFFSET7>]"], ["0x100988da", "or edx, ebx"], ["0x100988dc", "mov ebx, edx"], ["0x100988de", "and edx, 0xff"]]}, {"both": [["0x100cdb95", "add al, 0x10", "0x100988e4"]]}, {"orig": [["0x100cdb97", "or ebx, edx"], ["0x100cdb99", "jmp 0x5"], ["0x100cdb9b", "xchg ebx, ebx"], ["0x100cdb9d", "xchg ecx, ecx"], ["0x100cdb9f", "nop "], ["0x100cdba0", "mov cx, bx"], ["0x100cdba3", "mov edx, dword ptr [<OFFSET7>]"], ["0x100cdba9", "and ecx, 0xff"], ["0x100cdbaf", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x100988e6", "mov ecx, dword ptr [ecx + edx*4]"], ["0x100988e9", "shr ebx, cl"], ["0x100988eb", "sub al, cl"], ["0x100988ed", "shr ecx, 8"], ["0x100988f0", "add ecx, dword ptr [<OFFSET1>]"], ["0x100988f6", "mov edx, dword ptr [ecx]"], ["0x100988f8", "cmp dx, word ptr [<OFFSET2>]"], ["0x100988ff", "jne 0x63"], ["0x10098901", "jmp 0x37"], ["0x10098903", "xchg ebx, ebx"], ["0x10098905", "xchg ecx, ecx"], ["0x10098907", "xchg ebx, ebx"], ["0x10098909", "xchg ecx, ecx"], ["0x1009890b", "xchg ebx, ebx"], ["0x1009890d", "xchg ecx, ecx"], ["0x1009890f", "nop "], ["0x10098910", "mov dx, bx"], ["0x10098913", "mov ecx, dword ptr [<OFFSET7>]"], ["0x10098919", "and edx, 0xff"], ["0x1009891f", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100cdbb2", "shr ebx, cl", "0x10098922"], ["0x100cdbb4", "sub al, cl", "0x10098924"], ["0x100cdbb6", "shr ecx, 8", "0x10098926"], ["0x100cdbb9", "add ecx, dword ptr [<OFFSET1>]", "0x10098929"], ["0x100cdbbf", "mov edx, dword ptr [ecx]", "0x1009892f"], ["0x100cdbc1", "cmp dx, word ptr [<OFFSET2>]", "0x10098931"], ["0x100cdbc8", "jne 0x2a", "0x10098938"], ["0x100cdbca", "shr edx, 0xd", "0x1009893a"], ["0x100cdbcd", "dec al", "0x1009893d"], ["0x100cdbcf", "jne 0x7", "0x1009893f"]]}]], ["@@ -0x100cdbd3,44 +0x10098943,44 @@", [{"both": [["0x100cdbd3", "add esi, 4", "0x10098943"], ["0x100cdbd6", "mov al, 0x20", "0x10098946"], ["0x100cdbd8", "and edx, 0xffff8", "0x10098948"], ["0x100cdbde", "shr ebx, 1", "0x1009894e"], ["0x100cdbe0", "jb 0x5", "0x10098950"], ["0x100cdbe2", "mov edx, 4", "0x10098952"], ["0x100cdbe7", "add ecx, edx", "0x10098957"], ["0x100cdbe9", "mov edx, dword ptr [ecx]", "0x10098959"], ["0x100cdbeb", "cmp dx, word ptr [<OFFSET2>]", "0x1009895b"], ["0x100cdbf2", "je -0x2a", "0x10098962"]]}, {"orig": [], "recomp": [["0x10098964", "mov ecx, dword ptr [<OFFSET18>]"], ["0x1009896a", "ror edx, 0x10"]]}, {"both": [["0x100cdbf4", "mov byte ptr [<OFFSET8>], al", "0x1009896d"]]}, {"orig": [["0x100cdbf9", "shld ecx, edx, 0x10"], ["0x100cdbfd", "mov ax, cx"], ["0x100cdc00", "mov ecx, dword ptr [<OFFSET18>]"]], "recomp": [["0x10098972", "mov ax, dx"], ["0x10098975", "ror edx, 0x10"]]}, {"both": [["0x100cdc06", "cmp dword ptr [ecx], edx", "0x10098978"], ["0x100cdc08", "je 0x20", "0x1009897a"], ["0x100cdc0a", "mov dword ptr [<OFFSET19>], eax", "0x1009897c"], ["0x100cdc0f", "mov eax, dword ptr [ecx]", "0x10098981"], ["0x100cdc11", "mov dword ptr [ecx], edx", "0x10098983"], ["0x100cdc13", "mov ecx, dword ptr [<OFFSET20>]", "0x10098985"], ["0x100cdc19", "mov edx, dword ptr [ecx]", "0x1009898b"], ["0x100cdc1b", "mov dword ptr [ecx], eax", "0x1009898d"], ["0x100cdc1d", "mov ecx, dword ptr [<OFFSET21>]", "0x1009898f"]]}, {"orig": [["0x100cdc23", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100cdc25", "mov eax, dword ptr [<OFFSET19>]", "0x10098995"]]}, {"orig": [], "recomp": [["0x1009899a", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100cdc2a", "mov edx, eax", "0x1009899c"], ["0x100cdc2c", "and edx, 0xfc", "0x1009899e"], ["0x100cdc32", "mov ecx, eax", "0x100989a4"]]}, {"orig": [["0x100cdc34", "mov edx, dword ptr [edx + 0x10102730]"]], "recomp": [["0x100989a6", "mov edx, dword ptr [edx + 0x100ca0d0]"]]}, {"both": [["0x100cdc3a", "and ecx, 3", "0x100989ac"], ["0x100cdc3d", "mov dword ptr [<OFFSET22>], edx", "0x100989af"]]}, {"orig": [["0x100cdc43", "jmp dword ptr cs:[ecx*4 + 0x100cdb70]"], ["0x100cdc4b", "xchg ebx, ebx"], ["0x100cdc4d", "xchg ecx, ecx"]], "recomp": [["0x100989b5", "jmp dword ptr cs:[ecx*4 + 0x100988b0]"], ["0x100989bd", "xchg ebx, ebx"]]}, {"both": [["0x100cdc4f", "nop ", "0x100989bf"], ["0x100cdc50", "add dword ptr [<OFFSET16>], edx", "0x100989c0"], ["0x100cdc56", "mov ecx, dword ptr [<OFFSET16>]", "0x100989c6"], ["0x100cdc5c", "cmp dword ptr [<OFFSET17>], ecx", "0x100989cc"], ["0x100cdc62", "ja 0x35", "0x100989d2"], ["0x100cdc64", "mov eax, dword ptr [<OFFSET17>]", "0x100989d4"], ["0x100cdc69", "add ecx, 0xf", "0x100989d9"], ["0x100cdc6c", "shr ecx, 4", "0x100989dc"], ["0x100cdc6f", "shr eax, 4", "0x100989df"], ["0x100cdc72", "cmp eax, ecx", "0x100989e2"]]}]], ["@@ -0x100cdc76,40 +0x100989e6,47 @@", [{"both": [["0x100cdc76", "add eax, dword ptr [<OFFSET15>]", "0x100989e6"], ["0x100cdc7c", "add ecx, dword ptr [<OFFSET15>]", "0x100989ec"], ["0x100cdc82", "mov byte ptr [eax], 1", "0x100989f2"], ["0x100cdc85", "inc eax", "0x100989f5"], ["0x100cdc86", "cmp eax, ecx", "0x100989f6"], ["0x100cdc88", "jne -0x8", "0x100989f8"], ["0x100cdc8a", "sub ecx, dword ptr [<OFFSET15>]", "0x100989fa"], ["0x100cdc90", "shl ecx, 4", "0x10098a00"], ["0x100cdc93", "mov dword ptr [<OFFSET17>], ecx", "0x10098a03"], ["0x100cdc99", "mov al, byte ptr [<OFFSET8>]", "0x10098a09"]]}, {"orig": [["0x100cdc9e", "cmp al, 0x11"], ["0x100cdca0", "ja 0x1e"]], "recomp": [["0x10098a0e", "cmp al, 0xa"], ["0x10098a10", "ja 0x3e"]]}, {"both": [["0x100cdca2", "mov cl, al", "0x10098a12"]]}, {"orig": [["0x100cdca4", "movzx edx, word ptr [esi]"]], "recomp": [["0x10098a14", "mov edx, dword ptr [esi]"], ["0x10098a16", "dec cl"]]}, {"both": [["0x100cdca7", "add esi, 2", "0x10098a18"]]}, {"orig": [["0x100cdcaa", "dec cl"]], "recomp": []}, {"both": [["0x100cdcac", "shl edx, cl", "0x10098a1b"]]}, {"orig": [], "recomp": [["0x10098a1d", "mov ecx, dword ptr [<OFFSET5>]"], ["0x10098a23", "or edx, ebx"], ["0x10098a25", "mov ebx, edx"], ["0x10098a27", "and edx, 0x3ff"]]}, {"both": [["0x100cdcae", "add al, 0x10", "0x10098a2d"]]}, {"orig": [["0x100cdcb0", "or ebx, edx"], ["0x100cdcb2", "jmp 0xc"], ["0x100cdcb4", "xchg ebx, ebx"], ["0x100cdcb6", "xchg ecx, ecx"], ["0x100cdcb8", "xchg ebx, ebx"], ["0x100cdcba", "xchg ecx, ecx"], ["0x100cdcbc", "xchg ebx, ebx"], ["0x100cdcbe", "xchg ecx, ecx"], ["0x100cdcc0", "mov cx, bx"], ["0x100cdcc3", "mov edx, dword ptr [<OFFSET5>]"], ["0x100cdcc9", "and ecx, 0x3ff"], ["0x100cdccf", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x10098a2f", "mov ecx, dword ptr [ecx + edx*4]"], ["0x10098a32", "shr ebx, cl"], ["0x10098a34", "sub al, cl"], ["0x10098a36", "shr ecx, 8"], ["0x10098a39", "add ecx, dword ptr [<OFFSET1>]"], ["0x10098a3f", "mov edx, dword ptr [ecx]"], ["0x10098a41", "cmp dx, word ptr [<OFFSET2>]"], ["0x10098a48", "jne 0x5a"], ["0x10098a4a", "jmp 0x2e"], ["0x10098a4c", "xchg ebx, ebx"], ["0x10098a4e", "xchg ecx, ecx"], ["0x10098a50", "mov dx, bx"], ["0x10098a53", "mov ecx, dword ptr [<OFFSET5>]"], ["0x10098a59", "and edx, 0x3ff"], ["0x10098a5f", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100cdcd2", "shr ebx, cl", "0x10098a62"], ["0x100cdcd4", "sub al, cl", "0x10098a64"], ["0x100cdcd6", "shr ecx, 8", "0x10098a66"], ["0x100cdcd9", "add ecx, dword ptr [<OFFSET1>]", "0x10098a69"], ["0x100cdcdf", "mov edx, dword ptr [ecx]", "0x10098a6f"], ["0x100cdce1", "cmp dx, word ptr [<OFFSET2>]", "0x10098a71"], ["0x100cdce8", "jne 0x2a", "0x10098a78"], ["0x100cdcea", "shr edx, 0xd", "0x10098a7a"], ["0x100cdced", "dec al", "0x10098a7d"], ["0x100cdcef", "jne 0x7", "0x10098a7f"]]}]], ["@@ -0x100cdcf3,49 +0x10098a83,64 @@", [{"both": [["0x100cdcf3", "add esi, 4", "0x10098a83"], ["0x100cdcf6", "mov al, 0x20", "0x10098a86"], ["0x100cdcf8", "and edx, 0xffff8", "0x10098a88"], ["0x100cdcfe", "shr ebx, 1", "0x10098a8e"], ["0x100cdd00", "jb 0x5", "0x10098a90"], ["0x100cdd02", "mov edx, 4", "0x10098a92"], ["0x100cdd07", "add ecx, edx", "0x10098a97"], ["0x100cdd09", "mov edx, dword ptr [ecx]", "0x10098a99"], ["0x100cdd0b", "cmp dx, word ptr [<OFFSET2>]", "0x10098a9b"], ["0x100cdd12", "je -0x2a", "0x10098aa2"]]}, {"orig": [], "recomp": [["0x10098aa4", "mov ecx, dword ptr [<OFFSET23>]"]]}, {"both": [["0x100cdd14", "mov byte ptr [<OFFSET8>], al", "0x10098aaa"], ["0x100cdd19", "mov eax, edx", "0x10098aaf"]]}, {"orig": [["0x100cdd1b", "mov ecx, dword ptr [<OFFSET23>]"]], "recomp": []}, {"both": [["0x100cdd21", "cmp dword ptr [ecx], edx", "0x10098ab1"], ["0x100cdd23", "je 0x20", "0x10098ab3"], ["0x100cdd25", "mov dword ptr [<OFFSET19>], eax", "0x10098ab5"], ["0x100cdd2a", "mov eax, dword ptr [ecx]", "0x10098aba"], ["0x100cdd2c", "mov dword ptr [ecx], edx", "0x10098abc"], ["0x100cdd2e", "mov ecx, dword ptr [<OFFSET24>]", "0x10098abe"], ["0x100cdd34", "mov edx, dword ptr [ecx]", "0x10098ac4"], ["0x100cdd36", "mov dword ptr [ecx], eax", "0x10098ac6"], ["0x100cdd38", "mov ecx, dword ptr [<OFFSET25>]", "0x10098ac8"]]}, {"orig": [["0x100cdd3e", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100cdd40", "mov eax, dword ptr [<OFFSET19>]", "0x10098ace"]]}, {"orig": [], "recomp": [["0x10098ad3", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100cdd45", "mov al, byte ptr [<OFFSET8>]", "0x10098ad5"]]}, {"orig": [["0x100cdd4a", "cmp al, 0x11"], ["0x100cdd4c", "ja 0x12"]], "recomp": [["0x10098ada", "cmp al, 0xb"], ["0x10098adc", "ja 0x42"]]}, {"both": [["0x100cdd4e", "mov cl, al", "0x10098ade"]]}, {"orig": [["0x100cdd50", "movzx edx, word ptr [esi]"]], "recomp": [["0x10098ae0", "mov edx, dword ptr [esi]"], ["0x10098ae2", "dec cl"]]}, {"both": [["0x100cdd53", "add esi, 2", "0x10098ae4"]]}, {"orig": [["0x100cdd56", "dec cl"]], "recomp": []}, {"both": [["0x100cdd58", "shl edx, cl", "0x10098ae7"]]}, {"orig": [], "recomp": [["0x10098ae9", "mov ecx, dword ptr [<OFFSET4>]"], ["0x10098aef", "or edx, ebx"], ["0x10098af1", "mov ebx, edx"], ["0x10098af3", "and edx, 0x7ff"]]}, {"both": [["0x100cdd5a", "add al, 0x10", "0x10098af9"]]}, {"orig": [["0x100cdd5c", "or ebx, edx"], ["0x100cdd5e", "jmp 0x0"], ["0x100cdd60", "mov cx, bx"], ["0x100cdd63", "mov edx, dword ptr [<OFFSET4>]"], ["0x100cdd69", "and ecx, 0x7ff"], ["0x100cdd6f", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x10098afb", "mov ecx, dword ptr [ecx + edx*4]"], ["0x10098afe", "shr ebx, cl"], ["0x10098b00", "sub al, cl"], ["0x10098b02", "shr ecx, 8"], ["0x10098b05", "add ecx, dword ptr [<OFFSET1>]"], ["0x10098b0b", "mov edx, dword ptr [ecx]"], ["0x10098b0d", "cmp dx, word ptr [<OFFSET2>]"], ["0x10098b14", "jne 0x5e"], ["0x10098b16", "jmp 0x32"], ["0x10098b18", "xchg ebx, ebx"], ["0x10098b1a", "xchg ecx, ecx"], ["0x10098b1c", "xchg ebx, ebx"], ["0x10098b1e", "xchg ecx, ecx"], ["0x10098b20", "mov dx, bx"], ["0x10098b23", "mov ecx, dword ptr [<OFFSET4>]"], ["0x10098b29", "and edx, 0x7ff"], ["0x10098b2f", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100cdd72", "shr ebx, cl", "0x10098b32"], ["0x100cdd74", "sub al, cl", "0x10098b34"], ["0x100cdd76", "shr ecx, 8", "0x10098b36"], ["0x100cdd79", "add ecx, dword ptr [<OFFSET1>]", "0x10098b39"], ["0x100cdd7f", "mov edx, dword ptr [ecx]", "0x10098b3f"], ["0x100cdd81", "cmp dx, word ptr [<OFFSET2>]", "0x10098b41"], ["0x100cdd88", "jne 0x2a", "0x10098b48"], ["0x100cdd8a", "shr edx, 0xd", "0x10098b4a"], ["0x100cdd8d", "dec al", "0x10098b4d"], ["0x100cdd8f", "jne 0x7", "0x10098b4f"]]}]], ["@@ -0x100cdd93,49 +0x10098b53,49 @@", [{"both": [["0x100cdd93", "add esi, 4", "0x10098b53"], ["0x100cdd96", "mov al, 0x20", "0x10098b56"], ["0x100cdd98", "and edx, 0xffff8", "0x10098b58"], ["0x100cdd9e", "shr ebx, 1", "0x10098b5e"], ["0x100cdda0", "jb 0x5", "0x10098b60"], ["0x100cdda2", "mov edx, 4", "0x10098b62"], ["0x100cdda7", "add ecx, edx", "0x10098b67"], ["0x100cdda9", "mov edx, dword ptr [ecx]", "0x10098b69"], ["0x100cddab", "cmp dx, word ptr [<OFFSET2>]", "0x10098b6b"], ["0x100cddb2", "je -0x2a", "0x10098b72"]]}, {"orig": [], "recomp": [["0x10098b74", "mov ecx, dword ptr [<OFFSET26>]"], ["0x10098b7a", "ror edx, 0x10"]]}, {"both": [["0x100cddb4", "mov byte ptr [<OFFSET8>], al", "0x10098b7d"]]}, {"orig": [["0x100cddb9", "shld ecx, edx, 0x10"], ["0x100cddbd", "mov ax, cx"], ["0x100cddc0", "mov ecx, dword ptr [<OFFSET26>]"]], "recomp": [["0x10098b82", "mov ax, dx"], ["0x10098b85", "ror edx, 0x10"]]}, {"both": [["0x100cddc6", "cmp dword ptr [ecx], edx", "0x10098b88"], ["0x100cddc8", "je 0x20", "0x10098b8a"], ["0x100cddca", "mov dword ptr [<OFFSET19>], eax", "0x10098b8c"], ["0x100cddcf", "mov eax, dword ptr [ecx]", "0x10098b91"], ["0x100cddd1", "mov dword ptr [ecx], edx", "0x10098b93"], ["0x100cddd3", "mov ecx, dword ptr [<OFFSET27>]", "0x10098b95"], ["0x100cddd9", "mov edx, dword ptr [ecx]", "0x10098b9b"], ["0x100cdddb", "mov dword ptr [ecx], eax", "0x10098b9d"], ["0x100cdddd", "mov ecx, dword ptr [<OFFSET28>]", "0x10098b9f"]]}, {"orig": [["0x100cdde3", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100cdde5", "mov eax, dword ptr [<OFFSET19>]", "0x10098ba5"]]}, {"orig": [], "recomp": [["0x10098baa", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100cddea", "mov edx, eax", "0x10098bac"], ["0x100cddec", "mov ecx, eax", "0x10098bae"], ["0x100cddee", "ror eax, 0x10", "0x10098bb0"], ["0x100cddf1", "mov dx, ax", "0x10098bb3"], ["0x100cddf4", "shrd eax, ecx, 0x1c", "0x10098bb6"], ["0x100cddf8", "and eax, 0xf0", "0x10098bba"], ["0x100cddfd", "add eax, <OFFSET29>", "0x10098bbf"], ["0x100cde02", "jmp eax", "0x10098bc4"], ["0x100cde04", "xchg ebx, ebx", "0x10098bc6"], ["0x100cde06", "xchg ecx, ecx", "0x10098bc8"], ["0x100cde08", "xchg ebx, ebx", "0x10098bca"], ["0x100cde0a", "xchg ecx, ecx", "0x10098bcc"], ["0x100cde0c", "xchg ebx, ebx", "0x10098bce"]]}, {"orig": [["0x100cde0e", "xchg ecx, ecx"]], "recomp": []}, {"both": [["0x100cde10", "mov al, dl", "0x10098bd0"], ["0x100cde12", "mov ah, dl", "0x10098bd2"], ["0x100cde14", "shl eax, 0x10", "0x10098bd4"], ["0x100cde17", "mov al, dl", "0x10098bd7"], ["0x100cde19", "mov ah, dl", "0x10098bd9"], ["0x100cde1b", "jmp 0xf0", "0x10098bdb"], ["0x100cde20", "mov eax, edx", "0x10098be0"], ["0x100cde22", "mov ah, dl", "0x10098be2"], ["0x100cde24", "rol eax, 8", "0x10098be4"], ["0x100cde27", "jmp 0xe4", "0x10098be7"]]}]], ["@@ -0x100ce267,37 +0x10099027,37 @@", [{"both": [["0x100ce267", "mov al, dh", "0x10099027"], ["0x100ce269", "mov ah, dh", "0x10099029"], ["0x100ce26b", "jmp 0x3", "0x1009902b"], ["0x100ce26d", "xchg ebx, ebx", "0x1009902d"], ["0x100ce26f", "nop ", "0x1009902f"], ["0x100ce270", "mov dword ptr [edi + ebp*2], eax", "0x10099030"], ["0x100ce273", "sub edi, dword ptr [<OFFSET12>]", "0x10099033"], ["0x100ce279", "dec dword ptr [<OFFSET10>]", "0x10099039"], ["0x100ce27f", "je 0x1f", "0x1009903f"], ["0x100ce281", "dec dword ptr [<OFFSET22>]", "0x10099041"]]}, {"orig": [["0x100ce287", "jne -0x5f4"], ["0x100ce28d", "jmp -0x712"]], "recomp": [["0x10099047", "jne -0x644"], ["0x1009904d", "jmp -0x792"]]}, {"both": [["0x100ce292", "xchg ebx, ebx", "0x10099052"], ["0x100ce294", "xchg ecx, ecx", "0x10099054"], ["0x100ce296", "xchg ebx, ebx", "0x10099056"], ["0x100ce298", "xchg ecx, ecx", "0x10099058"], ["0x100ce29a", "xchg ebx, ebx", "0x1009905a"], ["0x100ce29c", "xchg ecx, ecx", "0x1009905c"], ["0x100ce29e", "xchg ebx, ebx", "0x1009905e"], ["0x100ce2a0", "dec dword ptr [<OFFSET11>]", "0x10099060"]]}, {"orig": [["0x100ce2a6", "je 0x794"]], "recomp": [["0x10099066", "je 0x904"]]}, {"both": [["0x100ce2ac", "add edi, dword ptr [<OFFSET14>]", "0x1009906c"], ["0x100ce2b2", "mov eax, dword ptr [<OFFSET9>]", "0x10099072"], ["0x100ce2b7", "mov dword ptr [<OFFSET10>], eax", "0x10099077"], ["0x100ce2bc", "dec dword ptr [<OFFSET22>]", "0x1009907c"]]}, {"orig": [["0x100ce2c2", "jne -0x62f"], ["0x100ce2c8", "jmp -0x74d"]], "recomp": [["0x10099082", "jne -0x67f"], ["0x10099088", "jmp -0x7cd"]]}, {"both": [["0x100ce2cd", "xchg ebx, ebx", "0x1009908d"], ["0x100ce2cf", "nop ", "0x1009908f"], ["0x100ce2d0", "add dword ptr [<OFFSET16>], edx", "0x10099090"], ["0x100ce2d6", "mov ecx, dword ptr [<OFFSET16>]", "0x10099096"], ["0x100ce2dc", "cmp dword ptr [<OFFSET17>], ecx", "0x1009909c"], ["0x100ce2e2", "ja 0x35", "0x100990a2"], ["0x100ce2e4", "mov eax, dword ptr [<OFFSET17>]", "0x100990a4"], ["0x100ce2e9", "add ecx, 0xf", "0x100990a9"], ["0x100ce2ec", "shr ecx, 4", "0x100990ac"], ["0x100ce2ef", "shr eax, 4", "0x100990af"]]}]], ["@@ -0x100ce2f6,40 +0x100990b6,47 @@", [{"both": [["0x100ce2f6", "add eax, dword ptr [<OFFSET15>]", "0x100990b6"], ["0x100ce2fc", "add ecx, dword ptr [<OFFSET15>]", "0x100990bc"], ["0x100ce302", "mov byte ptr [eax], 1", "0x100990c2"], ["0x100ce305", "inc eax", "0x100990c5"], ["0x100ce306", "cmp eax, ecx", "0x100990c6"], ["0x100ce308", "jne -0x8", "0x100990c8"], ["0x100ce30a", "sub ecx, dword ptr [<OFFSET15>]", "0x100990ca"], ["0x100ce310", "shl ecx, 4", "0x100990d0"], ["0x100ce313", "mov dword ptr [<OFFSET17>], ecx", "0x100990d3"], ["0x100ce319", "mov al, byte ptr [<OFFSET8>]", "0x100990d9"]]}, {"orig": [["0x100ce31e", "cmp al, 0x11"], ["0x100ce320", "ja 0x1e"]], "recomp": [["0x100990de", "cmp al, 0xc"], ["0x100990e0", "ja 0x3e"]]}, {"both": [["0x100ce322", "mov cl, al", "0x100990e2"]]}, {"orig": [["0x100ce324", "movzx edx, word ptr [esi]"]], "recomp": [["0x100990e4", "mov edx, dword ptr [esi]"], ["0x100990e6", "dec cl"]]}, {"both": [["0x100ce327", "add esi, 2", "0x100990e8"]]}, {"orig": [["0x100ce32a", "dec cl"]], "recomp": []}, {"both": [["0x100ce32c", "shl edx, cl", "0x100990eb"]]}, {"orig": [], "recomp": [["0x100990ed", "mov ecx, dword ptr [<OFFSET6>]"], ["0x100990f3", "or edx, ebx"], ["0x100990f5", "mov ebx, edx"], ["0x100990f7", "and edx, 0xfff"]]}, {"both": [["0x100ce32e", "add al, 0x10", "0x100990fd"]]}, {"orig": [["0x100ce330", "or ebx, edx"], ["0x100ce332", "jmp 0xc"], ["0x100ce334", "xchg ebx, ebx"], ["0x100ce336", "xchg ecx, ecx"], ["0x100ce338", "xchg ebx, ebx"], ["0x100ce33a", "xchg ecx, ecx"], ["0x100ce33c", "xchg ebx, ebx"], ["0x100ce33e", "xchg ecx, ecx"], ["0x100ce340", "mov cx, bx"], ["0x100ce343", "mov edx, dword ptr [<OFFSET6>]"], ["0x100ce349", "and ecx, 0xfff"], ["0x100ce34f", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x100990ff", "mov ecx, dword ptr [ecx + edx*4]"], ["0x10099102", "shr ebx, cl"], ["0x10099104", "sub al, cl"], ["0x10099106", "shr ecx, 8"], ["0x10099109", "add ecx, dword ptr [<OFFSET1>]"], ["0x1009910f", "mov edx, dword ptr [ecx]"], ["0x10099111", "cmp dx, word ptr [<OFFSET2>]"], ["0x10099118", "jne 0x5a"], ["0x1009911a", "jmp 0x2e"], ["0x1009911c", "xchg ebx, ebx"], ["0x1009911e", "xchg ecx, ecx"], ["0x10099120", "mov dx, bx"], ["0x10099123", "mov ecx, dword ptr [<OFFSET6>]"], ["0x10099129", "and edx, 0xfff"], ["0x1009912f", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100ce352", "shr ebx, cl", "0x10099132"], ["0x100ce354", "sub al, cl", "0x10099134"], ["0x100ce356", "shr ecx, 8", "0x10099136"], ["0x100ce359", "add ecx, dword ptr [<OFFSET1>]", "0x10099139"], ["0x100ce35f", "mov edx, dword ptr [ecx]", "0x1009913f"], ["0x100ce361", "cmp dx, word ptr [<OFFSET2>]", "0x10099141"], ["0x100ce368", "jne 0x2a", "0x10099148"], ["0x100ce36a", "shr edx, 0xd", "0x1009914a"], ["0x100ce36d", "dec al", "0x1009914d"], ["0x100ce36f", "jne 0x7", "0x1009914f"]]}]], ["@@ -0x100ce373,49 +0x10099153,64 @@", [{"both": [["0x100ce373", "add esi, 4", "0x10099153"], ["0x100ce376", "mov al, 0x20", "0x10099156"], ["0x100ce378", "and edx, 0xffff8", "0x10099158"], ["0x100ce37e", "shr ebx, 1", "0x1009915e"], ["0x100ce380", "jb 0x5", "0x10099160"], ["0x100ce382", "mov edx, 4", "0x10099162"], ["0x100ce387", "add ecx, edx", "0x10099167"], ["0x100ce389", "mov edx, dword ptr [ecx]", "0x10099169"], ["0x100ce38b", "cmp dx, word ptr [<OFFSET2>]", "0x1009916b"], ["0x100ce392", "je -0x2a", "0x10099172"]]}, {"orig": [], "recomp": [["0x10099174", "mov ecx, dword ptr [<OFFSET33>]"]]}, {"both": [["0x100ce394", "mov byte ptr [<OFFSET8>], al", "0x1009917a"], ["0x100ce399", "mov eax, edx", "0x1009917f"]]}, {"orig": [["0x100ce39b", "mov ecx, dword ptr [<OFFSET33>]"]], "recomp": []}, {"both": [["0x100ce3a1", "cmp dword ptr [ecx], edx", "0x10099181"], ["0x100ce3a3", "je 0x20", "0x10099183"], ["0x100ce3a5", "mov dword ptr [<OFFSET19>], eax", "0x10099185"], ["0x100ce3aa", "mov eax, dword ptr [ecx]", "0x1009918a"], ["0x100ce3ac", "mov dword ptr [ecx], edx", "0x1009918c"], ["0x100ce3ae", "mov ecx, dword ptr [<OFFSET34>]", "0x1009918e"], ["0x100ce3b4", "mov edx, dword ptr [ecx]", "0x10099194"], ["0x100ce3b6", "mov dword ptr [ecx], eax", "0x10099196"], ["0x100ce3b8", "mov ecx, dword ptr [<OFFSET35>]", "0x10099198"]]}, {"orig": [["0x100ce3be", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100ce3c0", "mov eax, dword ptr [<OFFSET19>]", "0x1009919e"]]}, {"orig": [], "recomp": [["0x100991a3", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100ce3c5", "mov al, byte ptr [<OFFSET8>]", "0x100991a5"]]}, {"orig": [["0x100ce3ca", "cmp al, 0x11"], ["0x100ce3cc", "ja 0x12"]], "recomp": [["0x100991aa", "cmp al, 0xc"], ["0x100991ac", "ja 0x42"]]}, {"both": [["0x100ce3ce", "mov cl, al", "0x100991ae"]]}, {"orig": [["0x100ce3d0", "movzx edx, word ptr [esi]"]], "recomp": [["0x100991b0", "mov edx, dword ptr [esi]"], ["0x100991b2", "dec cl"]]}, {"both": [["0x100ce3d3", "add esi, 2", "0x100991b4"]]}, {"orig": [["0x100ce3d6", "dec cl"]], "recomp": []}, {"both": [["0x100ce3d8", "shl edx, cl", "0x100991b7"]]}, {"orig": [], "recomp": [["0x100991b9", "mov ecx, dword ptr [<OFFSET6>]"], ["0x100991bf", "or edx, ebx"], ["0x100991c1", "mov ebx, edx"], ["0x100991c3", "and edx, 0xfff"]]}, {"both": [["0x100ce3da", "add al, 0x10", "0x100991c9"]]}, {"orig": [["0x100ce3dc", "or ebx, edx"], ["0x100ce3de", "jmp 0x0"], ["0x100ce3e0", "mov cx, bx"], ["0x100ce3e3", "mov edx, dword ptr [<OFFSET6>]"], ["0x100ce3e9", "and ecx, 0xfff"], ["0x100ce3ef", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x100991cb", "mov ecx, dword ptr [ecx + edx*4]"], ["0x100991ce", "shr ebx, cl"], ["0x100991d0", "sub al, cl"], ["0x100991d2", "shr ecx, 8"], ["0x100991d5", "add ecx, dword ptr [<OFFSET1>]"], ["0x100991db", "mov edx, dword ptr [ecx]"], ["0x100991dd", "cmp dx, word ptr [<OFFSET2>]"], ["0x100991e4", "jne 0x5e"], ["0x100991e6", "jmp 0x32"], ["0x100991e8", "xchg ebx, ebx"], ["0x100991ea", "xchg ecx, ecx"], ["0x100991ec", "xchg ebx, ebx"], ["0x100991ee", "xchg ecx, ecx"], ["0x100991f0", "mov dx, bx"], ["0x100991f3", "mov ecx, dword ptr [<OFFSET6>]"], ["0x100991f9", "and edx, 0xfff"], ["0x100991ff", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100ce3f2", "shr ebx, cl", "0x10099202"], ["0x100ce3f4", "sub al, cl", "0x10099204"], ["0x100ce3f6", "shr ecx, 8", "0x10099206"], ["0x100ce3f9", "add ecx, dword ptr [<OFFSET1>]", "0x10099209"], ["0x100ce3ff", "mov edx, dword ptr [ecx]", "0x1009920f"], ["0x100ce401", "cmp dx, word ptr [<OFFSET2>]", "0x10099211"], ["0x100ce408", "jne 0x2a", "0x10099218"], ["0x100ce40a", "shr edx, 0xd", "0x1009921a"], ["0x100ce40d", "dec al", "0x1009921d"], ["0x100ce40f", "jne 0x7", "0x1009921f"]]}]], ["@@ -0x100ce413,56 +0x10099223,71 @@", [{"both": [["0x100ce413", "add esi, 4", "0x10099223"], ["0x100ce416", "mov al, 0x20", "0x10099226"], ["0x100ce418", "and edx, 0xffff8", "0x10099228"], ["0x100ce41e", "shr ebx, 1", "0x1009922e"], ["0x100ce420", "jb 0x5", "0x10099230"], ["0x100ce422", "mov edx, 4", "0x10099232"], ["0x100ce427", "add ecx, edx", "0x10099237"], ["0x100ce429", "mov edx, dword ptr [ecx]", "0x10099239"], ["0x100ce42b", "cmp dx, word ptr [<OFFSET2>]", "0x1009923b"], ["0x100ce432", "je -0x2a", "0x10099242"]]}, {"orig": [], "recomp": [["0x10099244", "mov ecx, dword ptr [<OFFSET33>]"], ["0x1009924a", "ror edx, 0x10"]]}, {"both": [["0x100ce434", "mov byte ptr [<OFFSET8>], al", "0x1009924d"]]}, {"orig": [["0x100ce439", "shld ecx, edx, 0x10"], ["0x100ce43d", "mov ax, cx"], ["0x100ce440", "mov ecx, dword ptr [<OFFSET33>]"]], "recomp": [["0x10099252", "mov ax, dx"], ["0x10099255", "ror edx, 0x10"]]}, {"both": [["0x100ce446", "cmp dword ptr [ecx], edx", "0x10099258"], ["0x100ce448", "je 0x20", "0x1009925a"], ["0x100ce44a", "mov dword ptr [<OFFSET19>], eax", "0x1009925c"], ["0x100ce44f", "mov eax, dword ptr [ecx]", "0x10099261"], ["0x100ce451", "mov dword ptr [ecx], edx", "0x10099263"], ["0x100ce453", "mov ecx, dword ptr [<OFFSET34>]", "0x10099265"], ["0x100ce459", "mov edx, dword ptr [ecx]", "0x1009926b"], ["0x100ce45b", "mov dword ptr [ecx], eax", "0x1009926d"], ["0x100ce45d", "mov ecx, dword ptr [<OFFSET35>]", "0x1009926f"]]}, {"orig": [["0x100ce463", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100ce465", "mov eax, dword ptr [<OFFSET19>]", "0x10099275"]]}, {"orig": [], "recomp": [["0x1009927a", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100ce46a", "mov dword ptr [edi], eax", "0x1009927c"], ["0x100ce46c", "add edi, ebp", "0x1009927e"], ["0x100ce46e", "mov al, byte ptr [<OFFSET8>]", "0x10099280"]]}, {"orig": [["0x100ce473", "cmp al, 0x11"], ["0x100ce475", "ja 0x19"]], "recomp": [["0x10099285", "cmp al, 0xc"], ["0x10099287", "ja 0x47"]]}, {"both": [["0x100ce477", "mov cl, al", "0x10099289"]]}, {"orig": [["0x100ce479", "movzx edx, word ptr [esi]"]], "recomp": [["0x1009928b", "mov edx, dword ptr [esi]"], ["0x1009928d", "dec cl"]]}, {"both": [["0x100ce47c", "add esi, 2", "0x1009928f"]]}, {"orig": [["0x100ce47f", "dec cl"]], "recomp": []}, {"both": [["0x100ce481", "shl edx, cl", "0x10099292"]]}, {"orig": [], "recomp": [["0x10099294", "mov ecx, dword ptr [<OFFSET6>]"], ["0x1009929a", "or edx, ebx"], ["0x1009929c", "mov ebx, edx"], ["0x1009929e", "and edx, 0xfff"]]}, {"both": [["0x100ce483", "add al, 0x10", "0x100992a4"]]}, {"orig": [["0x100ce485", "or ebx, edx"], ["0x100ce487", "jmp 0x7"], ["0x100ce489", "xchg ebx, ebx"], ["0x100ce48b", "xchg ecx, ecx"], ["0x100ce48d", "xchg ebx, ebx"], ["0x100ce48f", "nop "], ["0x100ce490", "mov cx, bx"], ["0x100ce493", "mov edx, dword ptr [<OFFSET6>]"], ["0x100ce499", "and ecx, 0xfff"], ["0x100ce49f", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x100992a6", "mov ecx, dword ptr [ecx + edx*4]"], ["0x100992a9", "shr ebx, cl"], ["0x100992ab", "sub al, cl"], ["0x100992ad", "shr ecx, 8"], ["0x100992b0", "add ecx, dword ptr [<OFFSET1>]"], ["0x100992b6", "mov edx, dword ptr [ecx]"], ["0x100992b8", "cmp dx, word ptr [<OFFSET2>]"], ["0x100992bf", "jne 0x63"], ["0x100992c1", "jmp 0x37"], ["0x100992c3", "xchg ebx, ebx"], ["0x100992c5", "xchg ecx, ecx"], ["0x100992c7", "xchg ebx, ebx"], ["0x100992c9", "xchg ecx, ecx"], ["0x100992cb", "xchg ebx, ebx"], ["0x100992cd", "xchg ecx, ecx"], ["0x100992cf", "nop "], ["0x100992d0", "mov dx, bx"], ["0x100992d3", "mov ecx, dword ptr [<OFFSET6>]"], ["0x100992d9", "and edx, 0xfff"], ["0x100992df", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100ce4a2", "shr ebx, cl", "0x100992e2"], ["0x100ce4a4", "sub al, cl", "0x100992e4"], ["0x100ce4a6", "shr ecx, 8", "0x100992e6"], ["0x100ce4a9", "add ecx, dword ptr [<OFFSET1>]", "0x100992e9"], ["0x100ce4af", "mov edx, dword ptr [ecx]", "0x100992ef"], ["0x100ce4b1", "cmp dx, word ptr [<OFFSET2>]", "0x100992f1"], ["0x100ce4b8", "jne 0x2a", "0x100992f8"], ["0x100ce4ba", "shr edx, 0xd", "0x100992fa"], ["0x100ce4bd", "dec al", "0x100992fd"], ["0x100ce4bf", "jne 0x7", "0x100992ff"]]}]], ["@@ -0x100ce4c3,49 +0x10099303,64 @@", [{"both": [["0x100ce4c3", "add esi, 4", "0x10099303"], ["0x100ce4c6", "mov al, 0x20", "0x10099306"], ["0x100ce4c8", "and edx, 0xffff8", "0x10099308"], ["0x100ce4ce", "shr ebx, 1", "0x1009930e"], ["0x100ce4d0", "jb 0x5", "0x10099310"], ["0x100ce4d2", "mov edx, 4", "0x10099312"], ["0x100ce4d7", "add ecx, edx", "0x10099317"], ["0x100ce4d9", "mov edx, dword ptr [ecx]", "0x10099319"], ["0x100ce4db", "cmp dx, word ptr [<OFFSET2>]", "0x1009931b"], ["0x100ce4e2", "je -0x2a", "0x10099322"]]}, {"orig": [], "recomp": [["0x10099324", "mov ecx, dword ptr [<OFFSET33>]"]]}, {"both": [["0x100ce4e4", "mov byte ptr [<OFFSET8>], al", "0x1009932a"], ["0x100ce4e9", "mov eax, edx", "0x1009932f"]]}, {"orig": [["0x100ce4eb", "mov ecx, dword ptr [<OFFSET33>]"]], "recomp": []}, {"both": [["0x100ce4f1", "cmp dword ptr [ecx], edx", "0x10099331"], ["0x100ce4f3", "je 0x20", "0x10099333"], ["0x100ce4f5", "mov dword ptr [<OFFSET19>], eax", "0x10099335"], ["0x100ce4fa", "mov eax, dword ptr [ecx]", "0x1009933a"], ["0x100ce4fc", "mov dword ptr [ecx], edx", "0x1009933c"], ["0x100ce4fe", "mov ecx, dword ptr [<OFFSET34>]", "0x1009933e"], ["0x100ce504", "mov edx, dword ptr [ecx]", "0x10099344"], ["0x100ce506", "mov dword ptr [ecx], eax", "0x10099346"], ["0x100ce508", "mov ecx, dword ptr [<OFFSET35>]", "0x10099348"]]}, {"orig": [["0x100ce50e", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100ce510", "mov eax, dword ptr [<OFFSET19>]", "0x1009934e"]]}, {"orig": [], "recomp": [["0x10099353", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100ce515", "mov al, byte ptr [<OFFSET8>]", "0x10099355"]]}, {"orig": [["0x100ce51a", "cmp al, 0x11"], ["0x100ce51c", "ja 0x12"]], "recomp": [["0x1009935a", "cmp al, 0xc"], ["0x1009935c", "ja 0x42"]]}, {"both": [["0x100ce51e", "mov cl, al", "0x1009935e"]]}, {"orig": [["0x100ce520", "movzx edx, word ptr [esi]"]], "recomp": [["0x10099360", "mov edx, dword ptr [esi]"], ["0x10099362", "dec cl"]]}, {"both": [["0x100ce523", "add esi, 2", "0x10099364"]]}, {"orig": [["0x100ce526", "dec cl"]], "recomp": []}, {"both": [["0x100ce528", "shl edx, cl", "0x10099367"]]}, {"orig": [], "recomp": [["0x10099369", "mov ecx, dword ptr [<OFFSET6>]"], ["0x1009936f", "or edx, ebx"], ["0x10099371", "mov ebx, edx"], ["0x10099373", "and edx, 0xfff"]]}, {"both": [["0x100ce52a", "add al, 0x10", "0x10099379"]]}, {"orig": [["0x100ce52c", "or ebx, edx"], ["0x100ce52e", "jmp 0x0"], ["0x100ce530", "mov cx, bx"], ["0x100ce533", "mov edx, dword ptr [<OFFSET6>]"], ["0x100ce539", "and ecx, 0xfff"], ["0x100ce53f", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x1009937b", "mov ecx, dword ptr [ecx + edx*4]"], ["0x1009937e", "shr ebx, cl"], ["0x10099380", "sub al, cl"], ["0x10099382", "shr ecx, 8"], ["0x10099385", "add ecx, dword ptr [<OFFSET1>]"], ["0x1009938b", "mov edx, dword ptr [ecx]"], ["0x1009938d", "cmp dx, word ptr [<OFFSET2>]"], ["0x10099394", "jne 0x5e"], ["0x10099396", "jmp 0x32"], ["0x10099398", "xchg ebx, ebx"], ["0x1009939a", "xchg ecx, ecx"], ["0x1009939c", "xchg ebx, ebx"], ["0x1009939e", "xchg ecx, ecx"], ["0x100993a0", "mov dx, bx"], ["0x100993a3", "mov ecx, dword ptr [<OFFSET6>]"], ["0x100993a9", "and edx, 0xfff"], ["0x100993af", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100ce542", "shr ebx, cl", "0x100993b2"], ["0x100ce544", "sub al, cl", "0x100993b4"], ["0x100ce546", "shr ecx, 8", "0x100993b6"], ["0x100ce549", "add ecx, dword ptr [<OFFSET1>]", "0x100993b9"], ["0x100ce54f", "mov edx, dword ptr [ecx]", "0x100993bf"], ["0x100ce551", "cmp dx, word ptr [<OFFSET2>]", "0x100993c1"], ["0x100ce558", "jne 0x2a", "0x100993c8"], ["0x100ce55a", "shr edx, 0xd", "0x100993ca"], ["0x100ce55d", "dec al", "0x100993cd"], ["0x100ce55f", "jne 0x7", "0x100993cf"]]}]], ["@@ -0x100ce563,56 +0x100993d3,71 @@", [{"both": [["0x100ce563", "add esi, 4", "0x100993d3"], ["0x100ce566", "mov al, 0x20", "0x100993d6"], ["0x100ce568", "and edx, 0xffff8", "0x100993d8"], ["0x100ce56e", "shr ebx, 1", "0x100993de"], ["0x100ce570", "jb 0x5", "0x100993e0"], ["0x100ce572", "mov edx, 4", "0x100993e2"], ["0x100ce577", "add ecx, edx", "0x100993e7"], ["0x100ce579", "mov edx, dword ptr [ecx]", "0x100993e9"], ["0x100ce57b", "cmp dx, word ptr [<OFFSET2>]", "0x100993eb"], ["0x100ce582", "je -0x2a", "0x100993f2"]]}, {"orig": [], "recomp": [["0x100993f4", "mov ecx, dword ptr [<OFFSET33>]"], ["0x100993fa", "ror edx, 0x10"]]}, {"both": [["0x100ce584", "mov byte ptr [<OFFSET8>], al", "0x100993fd"]]}, {"orig": [["0x100ce589", "shld ecx, edx, 0x10"], ["0x100ce58d", "mov ax, cx"], ["0x100ce590", "mov ecx, dword ptr [<OFFSET33>]"]], "recomp": [["0x10099402", "mov ax, dx"], ["0x10099405", "ror edx, 0x10"]]}, {"both": [["0x100ce596", "cmp dword ptr [ecx], edx", "0x10099408"], ["0x100ce598", "je 0x20", "0x1009940a"], ["0x100ce59a", "mov dword ptr [<OFFSET19>], eax", "0x1009940c"], ["0x100ce59f", "mov eax, dword ptr [ecx]", "0x10099411"], ["0x100ce5a1", "mov dword ptr [ecx], edx", "0x10099413"], ["0x100ce5a3", "mov ecx, dword ptr [<OFFSET34>]", "0x10099415"], ["0x100ce5a9", "mov edx, dword ptr [ecx]", "0x1009941b"], ["0x100ce5ab", "mov dword ptr [ecx], eax", "0x1009941d"], ["0x100ce5ad", "mov ecx, dword ptr [<OFFSET35>]", "0x1009941f"]]}, {"orig": [["0x100ce5b3", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100ce5b5", "mov eax, dword ptr [<OFFSET19>]", "0x10099425"]]}, {"orig": [], "recomp": [["0x1009942a", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100ce5ba", "mov dword ptr [edi], eax", "0x1009942c"], ["0x100ce5bc", "mov al, byte ptr [<OFFSET8>]", "0x1009942e"]]}, {"orig": [["0x100ce5c1", "cmp al, 0x11"], ["0x100ce5c3", "ja 0x1b"]], "recomp": [["0x10099433", "cmp al, 0xc"], ["0x10099435", "ja 0x49"]]}, {"both": [["0x100ce5c5", "mov cl, al", "0x10099437"]]}, {"orig": [["0x100ce5c7", "movzx edx, word ptr [esi]"]], "recomp": [["0x10099439", "mov edx, dword ptr [esi]"], ["0x1009943b", "dec cl"]]}, {"both": [["0x100ce5ca", "add esi, 2", "0x1009943d"]]}, {"orig": [["0x100ce5cd", "dec cl"]], "recomp": []}, {"both": [["0x100ce5cf", "shl edx, cl", "0x10099440"]]}, {"orig": [], "recomp": [["0x10099442", "mov ecx, dword ptr [<OFFSET6>]"], ["0x10099448", "or edx, ebx"], ["0x1009944a", "mov ebx, edx"], ["0x1009944c", "and edx, 0xfff"]]}, {"both": [["0x100ce5d1", "add al, 0x10", "0x10099452"]]}, {"orig": [["0x100ce5d3", "or ebx, edx"], ["0x100ce5d5", "jmp 0x9"], ["0x100ce5d7", "xchg ebx, ebx"], ["0x100ce5d9", "xchg ecx, ecx"], ["0x100ce5db", "xchg ebx, ebx"], ["0x100ce5dd", "xchg ecx, ecx"], ["0x100ce5df", "nop "], ["0x100ce5e0", "mov cx, bx"], ["0x100ce5e3", "mov edx, dword ptr [<OFFSET6>]"], ["0x100ce5e9", "and ecx, 0xfff"], ["0x100ce5ef", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x10099454", "mov ecx, dword ptr [ecx + edx*4]"], ["0x10099457", "shr ebx, cl"], ["0x10099459", "sub al, cl"], ["0x1009945b", "shr ecx, 8"], ["0x1009945e", "add ecx, dword ptr [<OFFSET1>]"], ["0x10099464", "mov edx, dword ptr [ecx]"], ["0x10099466", "cmp dx, word ptr [<OFFSET2>]"], ["0x1009946d", "jne 0x65"], ["0x1009946f", "jmp 0x39"], ["0x10099471", "xchg ebx, ebx"], ["0x10099473", "xchg ecx, ecx"], ["0x10099475", "xchg ebx, ebx"], ["0x10099477", "xchg ecx, ecx"], ["0x10099479", "xchg ebx, ebx"], ["0x1009947b", "xchg ecx, ecx"], ["0x1009947d", "xchg ebx, ebx"], ["0x1009947f", "nop "], ["0x10099480", "mov dx, bx"], ["0x10099483", "mov ecx, dword ptr [<OFFSET6>]"], ["0x10099489", "and edx, 0xfff"], ["0x1009948f", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100ce5f2", "shr ebx, cl", "0x10099492"], ["0x100ce5f4", "sub al, cl", "0x10099494"], ["0x100ce5f6", "shr ecx, 8", "0x10099496"], ["0x100ce5f9", "add ecx, dword ptr [<OFFSET1>]", "0x10099499"], ["0x100ce5ff", "mov edx, dword ptr [ecx]", "0x1009949f"], ["0x100ce601", "cmp dx, word ptr [<OFFSET2>]", "0x100994a1"], ["0x100ce608", "jne 0x2a", "0x100994a8"], ["0x100ce60a", "shr edx, 0xd", "0x100994aa"], ["0x100ce60d", "dec al", "0x100994ad"], ["0x100ce60f", "jne 0x7", "0x100994af"]]}]], ["@@ -0x100ce613,49 +0x100994b3,64 @@", [{"both": [["0x100ce613", "add esi, 4", "0x100994b3"], ["0x100ce616", "mov al, 0x20", "0x100994b6"], ["0x100ce618", "and edx, 0xffff8", "0x100994b8"], ["0x100ce61e", "shr ebx, 1", "0x100994be"], ["0x100ce620", "jb 0x5", "0x100994c0"], ["0x100ce622", "mov edx, 4", "0x100994c2"], ["0x100ce627", "add ecx, edx", "0x100994c7"], ["0x100ce629", "mov edx, dword ptr [ecx]", "0x100994c9"], ["0x100ce62b", "cmp dx, word ptr [<OFFSET2>]", "0x100994cb"], ["0x100ce632", "je -0x2a", "0x100994d2"]]}, {"orig": [], "recomp": [["0x100994d4", "mov ecx, dword ptr [<OFFSET33>]"]]}, {"both": [["0x100ce634", "mov byte ptr [<OFFSET8>], al", "0x100994da"], ["0x100ce639", "mov eax, edx", "0x100994df"]]}, {"orig": [["0x100ce63b", "mov ecx, dword ptr [<OFFSET33>]"]], "recomp": []}, {"both": [["0x100ce641", "cmp dword ptr [ecx], edx", "0x100994e1"], ["0x100ce643", "je 0x20", "0x100994e3"], ["0x100ce645", "mov dword ptr [<OFFSET19>], eax", "0x100994e5"], ["0x100ce64a", "mov eax, dword ptr [ecx]", "0x100994ea"], ["0x100ce64c", "mov dword ptr [ecx], edx", "0x100994ec"], ["0x100ce64e", "mov ecx, dword ptr [<OFFSET34>]", "0x100994ee"], ["0x100ce654", "mov edx, dword ptr [ecx]", "0x100994f4"], ["0x100ce656", "mov dword ptr [ecx], eax", "0x100994f6"], ["0x100ce658", "mov ecx, dword ptr [<OFFSET35>]", "0x100994f8"]]}, {"orig": [["0x100ce65e", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100ce660", "mov eax, dword ptr [<OFFSET19>]", "0x100994fe"]]}, {"orig": [], "recomp": [["0x10099503", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100ce665", "mov al, byte ptr [<OFFSET8>]", "0x10099505"]]}, {"orig": [["0x100ce66a", "cmp al, 0x11"], ["0x100ce66c", "ja 0x12"]], "recomp": [["0x1009950a", "cmp al, 0xc"], ["0x1009950c", "ja 0x42"]]}, {"both": [["0x100ce66e", "mov cl, al", "0x1009950e"]]}, {"orig": [["0x100ce670", "movzx edx, word ptr [esi]"]], "recomp": [["0x10099510", "mov edx, dword ptr [esi]"], ["0x10099512", "dec cl"]]}, {"both": [["0x100ce673", "add esi, 2", "0x10099514"]]}, {"orig": [["0x100ce676", "dec cl"]], "recomp": []}, {"both": [["0x100ce678", "shl edx, cl", "0x10099517"]]}, {"orig": [], "recomp": [["0x10099519", "mov ecx, dword ptr [<OFFSET6>]"], ["0x1009951f", "or edx, ebx"], ["0x10099521", "mov ebx, edx"], ["0x10099523", "and edx, 0xfff"]]}, {"both": [["0x100ce67a", "add al, 0x10", "0x10099529"]]}, {"orig": [["0x100ce67c", "or ebx, edx"], ["0x100ce67e", "jmp 0x0"], ["0x100ce680", "mov cx, bx"], ["0x100ce683", "mov edx, dword ptr [<OFFSET6>]"], ["0x100ce689", "and ecx, 0xfff"], ["0x100ce68f", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x1009952b", "mov ecx, dword ptr [ecx + edx*4]"], ["0x1009952e", "shr ebx, cl"], ["0x10099530", "sub al, cl"], ["0x10099532", "shr ecx, 8"], ["0x10099535", "add ecx, dword ptr [<OFFSET1>]"], ["0x1009953b", "mov edx, dword ptr [ecx]"], ["0x1009953d", "cmp dx, word ptr [<OFFSET2>]"], ["0x10099544", "jne 0x5e"], ["0x10099546", "jmp 0x32"], ["0x10099548", "xchg ebx, ebx"], ["0x1009954a", "xchg ecx, ecx"], ["0x1009954c", "xchg ebx, ebx"], ["0x1009954e", "xchg ecx, ecx"], ["0x10099550", "mov dx, bx"], ["0x10099553", "mov ecx, dword ptr [<OFFSET6>]"], ["0x10099559", "and edx, 0xfff"], ["0x1009955f", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100ce692", "shr ebx, cl", "0x10099562"], ["0x100ce694", "sub al, cl", "0x10099564"], ["0x100ce696", "shr ecx, 8", "0x10099566"], ["0x100ce699", "add ecx, dword ptr [<OFFSET1>]", "0x10099569"], ["0x100ce69f", "mov edx, dword ptr [ecx]", "0x1009956f"], ["0x100ce6a1", "cmp dx, word ptr [<OFFSET2>]", "0x10099571"], ["0x100ce6a8", "jne 0x2a", "0x10099578"], ["0x100ce6aa", "shr edx, 0xd", "0x1009957a"], ["0x100ce6ad", "dec al", "0x1009957d"], ["0x100ce6af", "jne 0x7", "0x1009957f"]]}]], ["@@ -0x100ce6b3,55 +0x10099583,70 @@", [{"both": [["0x100ce6b3", "add esi, 4", "0x10099583"], ["0x100ce6b6", "mov al, 0x20", "0x10099586"], ["0x100ce6b8", "and edx, 0xffff8", "0x10099588"], ["0x100ce6be", "shr ebx, 1", "0x1009958e"], ["0x100ce6c0", "jb 0x5", "0x10099590"], ["0x100ce6c2", "mov edx, 4", "0x10099592"], ["0x100ce6c7", "add ecx, edx", "0x10099597"], ["0x100ce6c9", "mov edx, dword ptr [ecx]", "0x10099599"], ["0x100ce6cb", "cmp dx, word ptr [<OFFSET2>]", "0x1009959b"], ["0x100ce6d2", "je -0x2a", "0x100995a2"]]}, {"orig": [], "recomp": [["0x100995a4", "mov ecx, dword ptr [<OFFSET33>]"], ["0x100995aa", "ror edx, 0x10"]]}, {"both": [["0x100ce6d4", "mov byte ptr [<OFFSET8>], al", "0x100995ad"]]}, {"orig": [["0x100ce6d9", "shld ecx, edx, 0x10"], ["0x100ce6dd", "mov ax, cx"], ["0x100ce6e0", "mov ecx, dword ptr [<OFFSET33>]"]], "recomp": [["0x100995b2", "mov ax, dx"], ["0x100995b5", "ror edx, 0x10"]]}, {"both": [["0x100ce6e6", "cmp dword ptr [ecx], edx", "0x100995b8"], ["0x100ce6e8", "je 0x20", "0x100995ba"], ["0x100ce6ea", "mov dword ptr [<OFFSET19>], eax", "0x100995bc"], ["0x100ce6ef", "mov eax, dword ptr [ecx]", "0x100995c1"], ["0x100ce6f1", "mov dword ptr [ecx], edx", "0x100995c3"], ["0x100ce6f3", "mov ecx, dword ptr [<OFFSET34>]", "0x100995c5"], ["0x100ce6f9", "mov edx, dword ptr [ecx]", "0x100995cb"], ["0x100ce6fb", "mov dword ptr [ecx], eax", "0x100995cd"], ["0x100ce6fd", "mov ecx, dword ptr [<OFFSET35>]", "0x100995cf"]]}, {"orig": [["0x100ce703", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100ce705", "mov eax, dword ptr [<OFFSET19>]", "0x100995d5"]]}, {"orig": [], "recomp": [["0x100995da", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100ce70a", "mov dword ptr [edi + ebp], eax", "0x100995dc"], ["0x100ce70d", "mov al, byte ptr [<OFFSET8>]", "0x100995df"]]}, {"orig": [["0x100ce712", "cmp al, 0x11"], ["0x100ce714", "ja 0x1a"]], "recomp": [["0x100995e4", "cmp al, 0xc"], ["0x100995e6", "ja 0x48"]]}, {"both": [["0x100ce716", "mov cl, al", "0x100995e8"]]}, {"orig": [["0x100ce718", "movzx edx, word ptr [esi]"]], "recomp": [["0x100995ea", "mov edx, dword ptr [esi]"], ["0x100995ec", "dec cl"]]}, {"both": [["0x100ce71b", "add esi, 2", "0x100995ee"]]}, {"orig": [["0x100ce71e", "dec cl"]], "recomp": []}, {"both": [["0x100ce720", "shl edx, cl", "0x100995f1"]]}, {"orig": [], "recomp": [["0x100995f3", "mov ecx, dword ptr [<OFFSET6>]"], ["0x100995f9", "or edx, ebx"], ["0x100995fb", "mov ebx, edx"], ["0x100995fd", "and edx, 0xfff"]]}, {"both": [["0x100ce722", "add al, 0x10", "0x10099603"]]}, {"orig": [["0x100ce724", "or ebx, edx"], ["0x100ce726", "jmp 0x8"], ["0x100ce728", "xchg ebx, ebx"], ["0x100ce72a", "xchg ecx, ecx"], ["0x100ce72c", "xchg ebx, ebx"], ["0x100ce72e", "xchg ecx, ecx"], ["0x100ce730", "mov cx, bx"], ["0x100ce733", "mov edx, dword ptr [<OFFSET6>]"], ["0x100ce739", "and ecx, 0xfff"], ["0x100ce73f", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x10099605", "mov ecx, dword ptr [ecx + edx*4]"], ["0x10099608", "shr ebx, cl"], ["0x1009960a", "sub al, cl"], ["0x1009960c", "shr ecx, 8"], ["0x1009960f", "add ecx, dword ptr [<OFFSET1>]"], ["0x10099615", "mov edx, dword ptr [ecx]"], ["0x10099617", "cmp dx, word ptr [<OFFSET2>]"], ["0x1009961e", "jne 0x64"], ["0x10099620", "jmp 0x38"], ["0x10099622", "xchg ebx, ebx"], ["0x10099624", "xchg ecx, ecx"], ["0x10099626", "xchg ebx, ebx"], ["0x10099628", "xchg ecx, ecx"], ["0x1009962a", "xchg ebx, ebx"], ["0x1009962c", "xchg ecx, ecx"], ["0x1009962e", "xchg ebx, ebx"], ["0x10099630", "mov dx, bx"], ["0x10099633", "mov ecx, dword ptr [<OFFSET6>]"], ["0x10099639", "and edx, 0xfff"], ["0x1009963f", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100ce742", "shr ebx, cl", "0x10099642"], ["0x100ce744", "sub al, cl", "0x10099644"], ["0x100ce746", "shr ecx, 8", "0x10099646"], ["0x100ce749", "add ecx, dword ptr [<OFFSET1>]", "0x10099649"], ["0x100ce74f", "mov edx, dword ptr [ecx]", "0x1009964f"], ["0x100ce751", "cmp dx, word ptr [<OFFSET2>]", "0x10099651"], ["0x100ce758", "jne 0x2a", "0x10099658"], ["0x100ce75a", "shr edx, 0xd", "0x1009965a"], ["0x100ce75d", "dec al", "0x1009965d"], ["0x100ce75f", "jne 0x7", "0x1009965f"]]}]], ["@@ -0x100ce763,49 +0x10099663,64 @@", [{"both": [["0x100ce763", "add esi, 4", "0x10099663"], ["0x100ce766", "mov al, 0x20", "0x10099666"], ["0x100ce768", "and edx, 0xffff8", "0x10099668"], ["0x100ce76e", "shr ebx, 1", "0x1009966e"], ["0x100ce770", "jb 0x5", "0x10099670"], ["0x100ce772", "mov edx, 4", "0x10099672"], ["0x100ce777", "add ecx, edx", "0x10099677"], ["0x100ce779", "mov edx, dword ptr [ecx]", "0x10099679"], ["0x100ce77b", "cmp dx, word ptr [<OFFSET2>]", "0x1009967b"], ["0x100ce782", "je -0x2a", "0x10099682"]]}, {"orig": [], "recomp": [["0x10099684", "mov ecx, dword ptr [<OFFSET33>]"]]}, {"both": [["0x100ce784", "mov byte ptr [<OFFSET8>], al", "0x1009968a"], ["0x100ce789", "mov eax, edx", "0x1009968f"]]}, {"orig": [["0x100ce78b", "mov ecx, dword ptr [<OFFSET33>]"]], "recomp": []}, {"both": [["0x100ce791", "cmp dword ptr [ecx], edx", "0x10099691"], ["0x100ce793", "je 0x20", "0x10099693"], ["0x100ce795", "mov dword ptr [<OFFSET19>], eax", "0x10099695"], ["0x100ce79a", "mov eax, dword ptr [ecx]", "0x1009969a"], ["0x100ce79c", "mov dword ptr [ecx], edx", "0x1009969c"], ["0x100ce79e", "mov ecx, dword ptr [<OFFSET34>]", "0x1009969e"], ["0x100ce7a4", "mov edx, dword ptr [ecx]", "0x100996a4"], ["0x100ce7a6", "mov dword ptr [ecx], eax", "0x100996a6"], ["0x100ce7a8", "mov ecx, dword ptr [<OFFSET35>]", "0x100996a8"]]}, {"orig": [["0x100ce7ae", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100ce7b0", "mov eax, dword ptr [<OFFSET19>]", "0x100996ae"]]}, {"orig": [], "recomp": [["0x100996b3", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100ce7b5", "mov al, byte ptr [<OFFSET8>]", "0x100996b5"]]}, {"orig": [["0x100ce7ba", "cmp al, 0x11"], ["0x100ce7bc", "ja 0x12"]], "recomp": [["0x100996ba", "cmp al, 0xc"], ["0x100996bc", "ja 0x42"]]}, {"both": [["0x100ce7be", "mov cl, al", "0x100996be"]]}, {"orig": [["0x100ce7c0", "movzx edx, word ptr [esi]"]], "recomp": [["0x100996c0", "mov edx, dword ptr [esi]"], ["0x100996c2", "dec cl"]]}, {"both": [["0x100ce7c3", "add esi, 2", "0x100996c4"]]}, {"orig": [["0x100ce7c6", "dec cl"]], "recomp": []}, {"both": [["0x100ce7c8", "shl edx, cl", "0x100996c7"]]}, {"orig": [], "recomp": [["0x100996c9", "mov ecx, dword ptr [<OFFSET6>]"], ["0x100996cf", "or edx, ebx"], ["0x100996d1", "mov ebx, edx"], ["0x100996d3", "and edx, 0xfff"]]}, {"both": [["0x100ce7ca", "add al, 0x10", "0x100996d9"]]}, {"orig": [["0x100ce7cc", "or ebx, edx"], ["0x100ce7ce", "jmp 0x0"], ["0x100ce7d0", "mov cx, bx"], ["0x100ce7d3", "mov edx, dword ptr [<OFFSET6>]"], ["0x100ce7d9", "and ecx, 0xfff"], ["0x100ce7df", "mov ecx, dword ptr [edx + ecx*4]"]], "recomp": [["0x100996db", "mov ecx, dword ptr [ecx + edx*4]"], ["0x100996de", "shr ebx, cl"], ["0x100996e0", "sub al, cl"], ["0x100996e2", "shr ecx, 8"], ["0x100996e5", "add ecx, dword ptr [<OFFSET1>]"], ["0x100996eb", "mov edx, dword ptr [ecx]"], ["0x100996ed", "cmp dx, word ptr [<OFFSET2>]"], ["0x100996f4", "jne 0x5e"], ["0x100996f6", "jmp 0x32"], ["0x100996f8", "xchg ebx, ebx"], ["0x100996fa", "xchg ecx, ecx"], ["0x100996fc", "xchg ebx, ebx"], ["0x100996fe", "xchg ecx, ecx"], ["0x10099700", "mov dx, bx"], ["0x10099703", "mov ecx, dword ptr [<OFFSET6>]"], ["0x10099709", "and edx, 0xfff"], ["0x1009970f", "mov ecx, dword ptr [ecx + edx*4]"]]}, {"both": [["0x100ce7e2", "shr ebx, cl", "0x10099712"], ["0x100ce7e4", "sub al, cl", "0x10099714"], ["0x100ce7e6", "shr ecx, 8", "0x10099716"], ["0x100ce7e9", "add ecx, dword ptr [<OFFSET1>]", "0x10099719"], ["0x100ce7ef", "mov edx, dword ptr [ecx]", "0x1009971f"], ["0x100ce7f1", "cmp dx, word ptr [<OFFSET2>]", "0x10099721"], ["0x100ce7f8", "jne 0x2a", "0x10099728"], ["0x100ce7fa", "shr edx, 0xd", "0x1009972a"], ["0x100ce7fd", "dec al", "0x1009972d"], ["0x100ce7ff", "jne 0x7", "0x1009972f"]]}]], ["@@ -0x100ce803,52 +0x10099733,52 @@", [{"both": [["0x100ce803", "add esi, 4", "0x10099733"], ["0x100ce806", "mov al, 0x20", "0x10099736"], ["0x100ce808", "and edx, 0xffff8", "0x10099738"], ["0x100ce80e", "shr ebx, 1", "0x1009973e"], ["0x100ce810", "jb 0x5", "0x10099740"], ["0x100ce812", "mov edx, 4", "0x10099742"], ["0x100ce817", "add ecx, edx", "0x10099747"], ["0x100ce819", "mov edx, dword ptr [ecx]", "0x10099749"], ["0x100ce81b", "cmp dx, word ptr [<OFFSET2>]", "0x1009974b"], ["0x100ce822", "je -0x2a", "0x10099752"]]}, {"orig": [], "recomp": [["0x10099754", "mov ecx, dword ptr [<OFFSET33>]"], ["0x1009975a", "ror edx, 0x10"]]}, {"both": [["0x100ce824", "mov byte ptr [<OFFSET8>], al", "0x1009975d"]]}, {"orig": [["0x100ce829", "shld ecx, edx, 0x10"], ["0x100ce82d", "mov ax, cx"], ["0x100ce830", "mov ecx, dword ptr [<OFFSET33>]"]], "recomp": [["0x10099762", "mov ax, dx"], ["0x10099765", "ror edx, 0x10"]]}, {"both": [["0x100ce836", "cmp dword ptr [ecx], edx", "0x10099768"], ["0x100ce838", "je 0x20", "0x1009976a"], ["0x100ce83a", "mov dword ptr [<OFFSET19>], eax", "0x1009976c"], ["0x100ce83f", "mov eax, dword ptr [ecx]", "0x10099771"], ["0x100ce841", "mov dword ptr [ecx], edx", "0x10099773"], ["0x100ce843", "mov ecx, dword ptr [<OFFSET34>]", "0x10099775"], ["0x100ce849", "mov edx, dword ptr [ecx]", "0x1009977b"], ["0x100ce84b", "mov dword ptr [ecx], eax", "0x1009977d"], ["0x100ce84d", "mov ecx, dword ptr [<OFFSET35>]", "0x1009977f"]]}, {"orig": [["0x100ce853", "mov dword ptr [ecx], edx"]], "recomp": []}, {"both": [["0x100ce855", "mov eax, dword ptr [<OFFSET19>]", "0x10099785"]]}, {"orig": [], "recomp": [["0x1009978a", "mov dword ptr [ecx], edx"]]}, {"both": [["0x100ce85a", "mov dword ptr [edi + ebp*2], eax", "0x1009978c"], ["0x100ce85d", "sub edi, dword ptr [<OFFSET12>]", "0x1009978f"], ["0x100ce863", "dec dword ptr [<OFFSET10>]", "0x10099795"]]}, {"orig": [["0x100ce869", "je 0x15"]], "recomp": [["0x1009979b", "je 0x13"]]}, {"both": [["0x100ce86b", "dec dword ptr [<OFFSET22>]", "0x1009979d"]]}, {"orig": [["0x100ce871", "jne -0x55e"], ["0x100ce877", "jmp -0xcfc"], ["0x100ce87c", "xchg ebx, ebx"], ["0x100ce87e", "xchg ecx, ecx"]], "recomp": [["0x100997a3", "jne -0x6d0"], ["0x100997a9", "jmp -0xeee"], ["0x100997ae", "xchg ebx, ebx"]]}, {"both": [["0x100ce880", "dec dword ptr [<OFFSET11>]", "0x100997b0"], ["0x100ce886", "je 0x1b4", "0x100997b6"], ["0x100ce88c", "add edi, dword ptr [<OFFSET14>]", "0x100997bc"], ["0x100ce892", "mov eax, dword ptr [<OFFSET9>]", "0x100997c2"], ["0x100ce897", "mov dword ptr [<OFFSET10>], eax", "0x100997c7"], ["0x100ce89c", "dec dword ptr [<OFFSET22>]", "0x100997cc"]]}, {"orig": [["0x100ce8a2", "jne -0x58f"], ["0x100ce8a8", "jmp -0xd2d"]], "recomp": [["0x100997d2", "jne -0x6ff"], ["0x100997d8", "jmp -0xf1d"]]}, {"both": [["0x100ce8ad", "xchg ebx, ebx", "0x100997dd"], ["0x100ce8af", "nop ", "0x100997df"], ["0x100ce8b0", "mov ecx, dword ptr [<OFFSET16>]", "0x100997e0"], ["0x100ce8b6", "add ecx, edx", "0x100997e6"], ["0x100ce8b8", "mov dword ptr [<OFFSET16>], ecx", "0x100997e8"], ["0x100ce8be", "mov eax, dword ptr [<OFFSET17>]", "0x100997ee"], ["0x100ce8c3", "cmp eax, ecx", "0x100997f3"], ["0x100ce8c5", "ja 0x2d", "0x100997f5"], ["0x100ce8c7", "shr ecx, 4", "0x100997f7"], ["0x100ce8ca", "shr eax, 4", "0x100997fa"]]}]], ["@@ -0x100ce8ee,35 +0x1009981e,35 @@", [{"both": [["0x100ce8ee", "mov dword ptr [<OFFSET17>], ecx", "0x1009981e"], ["0x100ce8f4", "mov ecx, dword ptr [<OFFSET10>]", "0x10099824"], ["0x100ce8fa", "cmp edx, ecx", "0x1009982a"], ["0x100ce8fc", "jae 0x2", "0x1009982c"], ["0x100ce8fe", "mov ecx, edx", "0x1009982e"], ["0x100ce900", "lea edi, [edi + ecx*4]", "0x10099830"], ["0x100ce903", "sub dword ptr [<OFFSET10>], ecx", "0x10099833"], ["0x100ce909", "je 0x15", "0x10099839"], ["0x100ce90b", "sub edx, ecx", "0x1009983b"], ["0x100ce90d", "jne -0x1b", "0x1009983d"]]}, {"orig": [["0x100ce90f", "jmp -0xd94"]], "recomp": [["0x1009983f", "jmp -0xf84"]]}, {"both": [["0x100ce914", "xchg ebx, ebx", "0x10099844"], ["0x100ce916", "xchg ecx, ecx", "0x10099846"], ["0x100ce918", "xchg ebx, ebx", "0x10099848"], ["0x100ce91a", "xchg ecx, ecx", "0x1009984a"], ["0x100ce91c", "xchg ebx, ebx", "0x1009984c"], ["0x100ce91e", "xchg ecx, ecx", "0x1009984e"], ["0x100ce920", "dec dword ptr [<OFFSET11>]", "0x10099850"], ["0x100ce926", "je 0x114", "0x10099856"], ["0x100ce92c", "add edi, dword ptr [<OFFSET14>]", "0x1009985c"], ["0x100ce932", "mov eax, dword ptr [<OFFSET9>]", "0x10099862"], ["0x100ce937", "mov dword ptr [<OFFSET10>], eax", "0x10099867"], ["0x100ce93c", "sub edx, ecx", "0x1009986c"], ["0x100ce93e", "jne -0x4c", "0x1009986e"]]}, {"orig": [["0x100ce940", "jmp -0xdc5"]], "recomp": [["0x10099870", "jmp -0xfb5"]]}, {"both": [["0x100ce945", "xchg ebx, ebx", "0x10099875"], ["0x100ce947", "xchg ecx, ecx", "0x10099877"], ["0x100ce949", "xchg ebx, ebx", "0x10099879"], ["0x100ce94b", "xchg ecx, ecx", "0x1009987b"], ["0x100ce94d", "xchg ebx, ebx", "0x1009987d"], ["0x100ce94f", "nop ", "0x1009987f"], ["0x100ce950", "add dword ptr [<OFFSET16>], edx", "0x10099880"], ["0x100ce956", "mov ecx, dword ptr [<OFFSET16>]", "0x10099886"], ["0x100ce95c", "cmp dword ptr [<OFFSET17>], ecx", "0x1009988c"], ["0x100ce962", "ja 0x3f", "0x10099892"]]}]], ["@@ -0x100ce9de,199 +0x1009990e,42 @@", [{"both": [["0x100ce9de", "rep stosd dword ptr es:[edi], eax", "0x1009990e"], ["0x100ce9e0", "add edi, ebp", "0x10099910"], ["0x100ce9e2", "mov ecx, edx", "0x10099912"], ["0x100ce9e4", "rep stosd dword ptr es:[edi], eax", "0x10099914"], ["0x100ce9e6", "sub edi, dword ptr [<OFFSET13>]", "0x10099916"], ["0x100ce9ec", "mov ebp, dword ptr [<OFFSET19>]", "0x1009991c"], ["0x100ce9f2", "sub dword ptr [<OFFSET10>], edx", "0x10099922"], ["0x100ce9f8", "je 0x16", "0x10099928"], ["0x100ce9fa", "sub dword ptr [<OFFSET22>], edx", "0x1009992a"], ["0x100cea00", "jne -0x55", "0x10099930"]]}, {"orig": [["0x100cea02", "jmp -0xe87"]], "recomp": [["0x10099932", "jmp -0x1077"]]}, {"both": [["0x100cea07", "xchg ebx, ebx", "0x10099937"], ["0x100cea09", "xchg ecx, ecx", "0x10099939"], ["0x100cea0b", "xchg ebx, ebx", "0x1009993b"], ["0x100cea0d", "xchg ecx, ecx", "0x1009993d"], ["0x100cea0f", "nop ", "0x1009993f"], ["0x100cea10", "dec dword ptr [<OFFSET11>]", "0x10099940"], ["0x100cea16", "je 0x28", "0x10099946"], ["0x100cea18", "add edi, dword ptr [<OFFSET14>]", "0x10099948"], ["0x100cea1e", "sub dword ptr [<OFFSET22>], edx", "0x1009994e"], ["0x100cea24", "mov ecx, dword ptr [<OFFSET9>]", "0x10099954"], ["0x100cea2a", "mov dword ptr [<OFFSET10>], ecx", "0x1009995a"], ["0x100cea30", "jne -0x89", "0x10099960"]]}, {"orig": [["0x100cea36", "jmp -0xebb"]], "recomp": [["0x10099966", "jmp -0x10ab"]]}, {"both": [["0x100cea3b", "xchg ebx, ebx", "0x1009996b"], ["0x100cea3d", "xchg ecx, ecx", "0x1009996d"], ["0x100cea3f", "nop ", "0x1009996f"], ["0x100cea40", "mov eax, dword ptr [<OFFSET17>]", "0x10099970"], ["0x100cea45", "shr eax, 4", "0x10099975"], ["0x100cea48", "add eax, dword ptr [<OFFSET15>]", "0x10099978"], ["0x100cea4e", "mov byte ptr [eax], 0", "0x1009997e"], ["0x100cea51", "pop edx", "0x10099981"], ["0x100cea52", "pop esi", "0x10099982"], ["0x100cea53", "pop edi", "0x10099983"], ["0x100cea54", "pop ebx", "0x10099984"], ["0x100cea55", "pop es", "0x10099985"], ["0x100cea56", "pop ebp", "0x10099986"], ["0x100cea57", "ret ", "0x10099987"]]}, {"orig": [["0x100cea58", "push ebp"], ["0x100cea59", "mov ebp, esp"], ["0x100cea5b", "push es"], ["0x100cea5c", "push ebx"], ["0x100cea5d", "push edi"], ["0x100cea5e", "push esi"], ["0x100cea5f", "push edx"], ["0x100cea60", "mov ax, ds"], ["0x100cea63", "mov es, eax"], ["0x100cea65", "cld "], ["0x100cea66", "mov esi, dword ptr [ebp + 0xc]"], ["0x100cea69", "mov dword ptr [<OFFSET1>], esi"], ["0x100cea6f", "add esi, 0x7410"], ["0x100cea75", "mov eax, dword ptr [esi]"], ["0x100cea77", "add esi, 4"], ["0x100cea7a", "mov word ptr [<OFFSET2>], ax"], ["0x100cea80", "mov edi, <OFFSET3>"], ["0x100cea85", "mov ecx, 4"], ["0x100cea8a", "lodsd eax, dword ptr [esi]"], ["0x100cea8b", "stosd dword ptr es:[edi], eax"], ["0x100cea8c", "mov edx, eax"], ["0x100cea8e", "lodsd eax, dword ptr [esi]"], ["0x100cea8f", "stosd dword ptr es:[edi], eax"], ["0x100cea90", "mov dword ptr [eax], edx"], ["0x100cea92", "lodsd eax, dword ptr [esi]"], ["0x100cea93", "stosd dword ptr es:[edi], eax"], ["0x100cea94", "mov dword ptr [eax], edx"], ["0x100cea96", "lodsd eax, dword ptr [esi]"], ["0x100cea97", "stosd dword ptr es:[edi], eax"], ["0x100cea98", "mov dword ptr [eax], edx"], ["0x100cea9a", "dec ecx"], ["0x100cea9b", "jne -0x13"], ["0x100cea9d", "mov eax, dword ptr [ebp + 0xc]"], ["0x100ceaa0", "add eax, 0x10"], ["0x100ceaa3", "mov dword ptr [<OFFSET4>], eax"], ["0x100ceaa8", "add eax, 0x2000"], ["0x100ceaad", "mov dword ptr [<OFFSET5>], eax"], ["0x100ceab2", "add eax, 0x1000"], ["0x100ceab7", "mov dword ptr [<OFFSET6>], eax"], ["0x100ceabc", "add eax, 0x4000"], ["0x100ceac1", "mov dword ptr [<OFFSET7>], eax"], ["0x100ceac6", "mov esi, dword ptr [ebp + 8]"], ["0x100ceac9", "mov ebx, dword ptr [esi]"], ["0x100ceacb", "add esi, 4"], ["0x100ceace", "mov byte ptr [<OFFSET8>], 0x21"], ["0x100cead5", "mov edi, dword ptr [ebp + 0x10]"], ["0x100cead8", "mov eax, dword ptr [edi + 4]"], ["0x100ceadb", "mov dword ptr [<OFFSET36>], eax"], ["0x100ceae0", "movzx eax, word ptr [edi + 8]"], ["0x100ceae4", "mov dword ptr [<OFFSET37>], eax"], ["0x100ceae9", "add edi, 0xa"], ["0x100ceaec", "mov dword ptr [<OFFSET38>], edi"], ["0x100ceaf2", "push eax"], ["0x100ceaf3", "mov edi, dword ptr [<OFFSET38>]"], ["0x100ceaf9", "mov ax, word ptr [edi]"], ["0x100ceafc", "cmp ax, 0xfffd"], ["0x100ceb00", "jb 0x1e"], ["0x100ceb02", "cmp ax, 0xfffe"], ["0x100ceb06", "ja 0x1084"], ["0x100ceb0c", "je 0x18"], ["0x100ceb0e", "push <OFFSET39>"], ["0x100ceb13", "jmp -0x113f"], ["0x100ceb18", "xchg ebx, ebx"], ["0x100ceb1a", "xchg ecx, ecx"], ["0x100ceb1c", "xchg ebx, ebx"], ["0x100ceb1e", "xchg ecx, ecx"], ["0x100ceb20", "call dword ptr [<OFFSET36>]"], ["0x100ceb26", "add edi, 2"], ["0x100ceb29", "movzx eax, word ptr [edi]"], ["0x100ceb2c", "mov ebp, eax"], ["0x100ceb2e", "movzx eax, word ptr [edi + 2]"], ["0x100ceb32", "mov dword ptr [<OFFSET9>], eax"], ["0x100ceb37", "mov dword ptr [<OFFSET10>], eax"], ["0x100ceb3c", "movzx eax, word ptr [edi + 4]"], ["0x100ceb40", "mov dword ptr [<OFFSET12>], eax"], ["0x100ceb45", "movzx eax, word ptr [edi + 6]"], ["0x100ceb49", "mov dword ptr [<OFFSET13>], eax"], ["0x100ceb4e", "movzx eax, word ptr [edi + 8]"], ["0x100ceb52", "mov dword ptr [<OFFSET14>], eax"], ["0x100ceb57", "add edi, 0xa"], ["0x100ceb5a", "movzx eax, word ptr [edi + 4]"], ["0x100ceb5e", "mov dword ptr [<OFFSET11>], eax"], ["0x100ceb63", "mov eax, dword ptr [edi]"], ["0x100ceb65", "add edi, 6"], ["0x100ceb68", "mov dword ptr [<OFFSET38>], edi"], ["0x100ceb6e", "mov edi, eax"], ["0x100ceb70", "cmp dword ptr [<OFFSET11>], 0"], ["0x100ceb77", "je -0x8a"], ["0x100ceb7d", "pop eax"], ["0x100ceb7e", "jmp 0x10"], ["0x100ceb80", "pushal "], ["0x100ceb81", "in al, dx"], ["0x100ceb82", "or al, 0x10"], ["0x100ceb84", "xor bl, dh"], ["0x100ceb86", "or al, 0x10"], ["0x100ceb88", "pushal "], ["0x100ceb89", "stc "], ["0x100ceb8a", "or al, 0x10"], ["0x100ceb8c", "push eax"], ["0x100ceb8d", "cli "], ["0x100ceb8e", "or al, 0x10"], ["0x100ceb90", "mov al, byte ptr [<OFFSET8>]"], ["0x100ceb95", "cmp al, 0x11"], ["0x100ceb97", "ja 0x17"], ["0x100ceb99", "mov cl, al"], ["0x100ceb9b", "movzx edx, word ptr [esi]"], ["0x100ceb9e", "add esi, 2"], ["0x100ceba1", "dec cl"], ["0x100ceba3", "shl edx, cl"], ["0x100ceba5", "add al, 0x10"], ["0x100ceba7", "or ebx, edx"], ["0x100ceba9", "jmp 0x5"], ["0x100cebab", "xchg ebx, ebx"], ["0x100cebad", "xchg ecx, ecx"], ["0x100cebaf", "nop "], ["0x100cebb0", "mov cx, bx"], ["0x100cebb3", "mov edx, dword ptr [<OFFSET7>]"], ["0x100cebb9", "and ecx, 0xff"], ["0x100cebbf", "mov ecx, dword ptr [edx + ecx*4]"], ["0x100cebc2", "shr ebx, cl"], ["0x100cebc4", "sub al, cl"], ["0x100cebc6", "shr ecx, 8"], ["0x100cebc9", "add ecx, dword ptr [<OFFSET1>]"], ["0x100cebcf", "mov edx, dword ptr [ecx]"], ["0x100cebd1", "cmp dx, word ptr [<OFFSET2>]"], ["0x100cebd8", "jne 0x2a"], ["0x100cebda", "shr edx, 0xd"], ["0x100cebdd", "dec al"], ["0x100cebdf", "jne 0x7"], ["0x100cebe1", "mov ebx, dword ptr [esi]"], ["0x100cebe3", "add esi, 4"], ["0x100cebe6", "mov al, 0x20"], ["0x100cebe8", "and edx, 0xffff8"], ["0x100cebee", "shr ebx, 1"], ["0x100cebf0", "jb 0x5"], ["0x100cebf2", "mov edx, 4"], ["0x100cebf7", "add ecx, edx"], ["0x100cebf9", "mov edx, dword ptr [ecx]"], ["0x100cebfb", "cmp dx, word ptr [<OFFSET2>]"], ["0x100cec02", "je -0x2a"], ["0x100cec04", "mov byte ptr [<OFFSET8>], al"], ["0x100cec09", "shld ecx, edx, 0x10"], ["0x100cec0d", "mov ax, cx"], ["0x100cec10", "mov ecx, dword ptr [<OFFSET18>]"], ["0x100cec16", "cmp dword ptr [ecx], edx"], ["0x100cec18", "je 0x20"], ["0x100cec1a", "mov dword ptr [<OFFSET19>], eax"], ["0x100cec1f", "mov eax, dword ptr [ecx]"], ["0x100cec21", "mov dword ptr [ecx], edx"], ["0x100cec23", "mov ecx, dword ptr [<OFFSET20>]"], ["0x100cec29", "mov edx, dword ptr [ecx]"], ["0x100cec2b", "mov dword ptr [ecx], eax"], ["0x100cec2d", "mov ecx, dword ptr [<OFFSET21>]"], ["0x100cec33", "mov dword ptr [ecx], edx"], ["0x100cec35", "mov eax, dword ptr [<OFFSET19>]"], ["0x100cec3a", "mov edx, eax"], ["0x100cec3c", "and edx, 0xfc"], ["0x100cec42", "mov ecx, eax"], ["0x100cec44", "mov edx, dword ptr [edx + 0x10102730]"], ["0x100cec4a", "and ecx, 3"], ["0x100cec4d", "mov dword ptr [<OFFSET22>], edx"]], "recomp": [["0x10099988", "xchg ebx, ebx"], ["0x1009998a", "xchg ecx, ecx"], ["0x1009998c", "xchg ebx, ebx"], ["0x1009998e", "xchg ecx, ecx"]]}]]]}, {"address": "0x100d052c", "recomp": "0x1009b480", "name": "_SmackGetSizeDeltas", "matching": 0.6666666666666666, "diff": [["@@ -0x100d0530,18 +0x1009b484,15 @@", [{"both": [["0x100d0530", "push ecx", "0x1009b484"], ["0x100d0531", "mov eax, dword ptr [ebp + 8]", "0x1009b485"], ["0x100d0534", "mov ecx, dword ptr [ebp + 0xc]", "0x1009b488"], ["0x100d0537", "mul ecx", "0x1009b48b"], ["0x100d0539", "shr eax, 8", "0x1009b48d"], ["0x100d053c", "add eax, 0x20", "0x1009b490"], ["0x100d053f", "pop ecx", "0x1009b493"], ["0x100d0540", "pop edx", "0x1009b494"], ["0x100d0541", "pop ebp", "0x1009b495"], ["0x100d0542", "ret ", "0x1009b496"]]}, {"orig": [["0x100d0543", "push ebp"], ["0x100d0544", "mov ebp, esp"], ["0x100d0546", "push esi"], ["0x100d0547", "push edi"], ["0x100d0548", "push ebx"], ["0x100d0549", "push ecx"], ["0x100d054a", "push edx"], ["0x100d054b", "cld "]], "recomp": [["0x1009b497", "xchg ebx, ebx"], ["0x1009b499", "xchg ecx, ecx"], ["0x1009b49b", "xchg ebx, ebx"], ["0x1009b49d", "xchg ecx, ecx"], ["0x1009b49f", "nop "]]}]]]}, {"address": "0x100d0543", "recomp": "0x1009b4a0", "name": "_SmackGetRect", "matching": 0.9134615384615384, "diff": [["@@ -0x100d0643,20 +0x1009b5a0,18 @@", [{"both": [["0x100d0643", "jmp 0x8", "0x1009b5a0"], ["0x100d0645", "mov byte ptr [esi], 1", "0x1009b5a2"], ["0x100d0648", "mov eax, 0", "0x1009b5a5"], ["0x100d064d", "pop edx", "0x1009b5aa"], ["0x100d064e", "pop ecx", "0x1009b5ab"], ["0x100d064f", "pop ebx", "0x1009b5ac"], ["0x100d0650", "pop edi", "0x1009b5ad"], ["0x100d0651", "pop esi", "0x1009b5ae"], ["0x100d0652", "pop ebp", "0x1009b5af"], ["0x100d0653", "ret ", "0x1009b5b0"]]}, {"orig": [["0x100d0654", "push ebp"], ["0x100d0655", "mov ebp, esp"], ["0x100d0657", "push edi"], ["0x100d0658", "push esi"], ["0x100d0659", "push ebx"], ["0x100d065a", "push edx"], ["0x100d065b", "push es"], ["0x100d065c", "cld "], ["0x100d065d", "mov edi, dword ptr [ebp + 0xc]"], ["0x100d0660", "xor ebx, ebx"]], "recomp": [["0x1009b5b1", "xchg ebx, ebx"], ["0x1009b5b3", "xchg ecx, ecx"], ["0x1009b5b5", "xchg ebx, ebx"], ["0x1009b5b7", "xchg ecx, ecx"], ["0x1009b5b9", "xchg ebx, ebx"], ["0x1009b5bb", "xchg ecx, ecx"], ["0x1009b5bd", "xchg ebx, ebx"], ["0x1009b5bf", "nop "]]}]]]}, {"address": "0x100d0730", "recomp": "0x1007ad60", "name": "MxRAMStreamProvider::MxRAMStreamProvider", "matching": 1.0, "diff": []}, {"address": "0x100d07c0", "recomp": "0x1007cba0", "name": "MxStreamProvider::SetResourceToGet", "matching": 1.0, "diff": []}, {"address": "0x100d07d0", "recomp": "0x1007cbb0", "name": "MxStreamProvider::VTable0x20", "matching": 1.0, "diff": []}, {"address": "0x100d07e0", "recomp": "0x1007adf0", "name": "MxStreamProvider::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100d07f0", "recomp": "0x1007ae00", "name": "MxStreamProvider::IsA", "matching": 1.0, "diff": []}, {"address": "0x100d0870", "recomp": "0x1007ae80", "name": "MxStreamProvider::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100d08e0", "recomp": "0x1007aef0", "name": "MxStreamProvider::~MxStreamProvider", "matching": 1.0, "diff": []}, {"address": "0x100d0930", "recomp": "0x1007b020", "name": "MxRAMStreamProvider::GetFileSize", "matching": 1.0, "diff": []}, {"address": "0x100d0940", "recomp": "0x1007b030", "name": "MxRAMStreamProvider::GetStreamBuffersNum", "matching": 1.0, "diff": []}, {"address": "0x100d0950", "recomp": "0x1007b040", "name": "MxRAMStreamProvider::GetLengthInDWords", "matching": 1.0, "diff": []}, {"address": "0x100d0960", "recomp": "0x1007b050", "name": "MxRAMStreamProvider::GetBufferForDWords", "matching": 1.0, "diff": []}, {"address": "0x100d0970", "recomp": "0x1007af40", "name": "MxRAMStreamProvider::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100d0980", "recomp": "0x1007af50", "name": "MxRAMStreamProvider::IsA", "matching": 1.0, "diff": []}, {"address": "0x100d0a30", "recomp": "0x1007b000", "name": "MxRAMStreamProvider::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100d0a50", "recomp": "0x1007b060", "name": "MxRAMStreamProvider::~MxRAMStreamProvider", "matching": 1.0, "diff": []}, {"address": "0x100d0ae0", "recomp": "0x1007b0f0", "name": "MxRAMStreamProvider::SetResourceToGet", "matching": 1.0, "diff": []}, {"address": "0x100d0d80", "recomp": "0x1007b390", "name": "ReadData", "matching": 0.9305555555555556, "diff": [["@@ -0x100d0d80,22 +0x1007b390,22 @@", [{"both": [["0x100d0d80", "mov eax, dword ptr [esp + 4]", "0x1007b390"], ["0x100d0d84", "sub esp, 0xc", "0x1007b394"], ["0x100d0d87", "mov dword ptr [esp], eax", "0x1007b397"], ["0x100d0d8b", "push ebx", "0x1007b39b"], ["0x100d0d8c", "add eax, dword ptr [esp + 0x18]", "0x1007b39c"], ["0x100d0d90", "push esi", "0x1007b3a0"], ["0x100d0d91", "mov ebx, dword ptr [esp + 0x10]", "0x1007b3a1"], ["0x100d0d95", "push edi", "0x1007b3a5"], ["0x100d0d96", "mov dword ptr [esp + 0x10], eax", "0x1007b3a6"], ["0x100d0d9a", "push ebp", "0x1007b3aa"]]}, {"orig": [["0x100d0d9b", "cmp dword ptr [esp + 0x20], eax"], ["0x100d0d9f", "jae 0x15b"]], "recomp": [["0x1007b3ab", "cmp eax, dword ptr [esp + 0x20]"], ["0x1007b3af", "jbe 0x15b"]]}, {"both": [["0x100d0da5", "mov eax, dword ptr [esp + 0x10]", "0x1007b3b5"], ["0x100d0da9", "cmp dword ptr [eax], 0x624f784d", "0x1007b3b9"], ["0x100d0daf", "jne 0x139", "0x1007b3bf"], ["0x100d0db5", "mov ebx, eax", "0x1007b3c5"], ["0x100d0db7", "push -1", "0x1007b3c7"], ["0x100d0db9", "add dword ptr [esp + 0x14], 8", "0x1007b3c9"], ["0x100d0dbe", "lea eax, [esp + 0x14]", "0x1007b3ce"], ["0x100d0dc2", "push eax", "0x1007b3d2"], ["0x100d0dc3", "call DeserializeDSObjectDispatch (FUNCTION)", "0x1007b3d3"], ["0x100d0dc8", "mov edx, dword ptr [eax + 0x1c]", "0x1007b3d8"]]}]], ["@@ -0x100d0dd8,45 +0x1007b3e8,45 @@", [{"both": [["0x100d0dd8", "push 1", "0x1007b3e8"], ["0x100d0dda", "mov eax, dword ptr [ecx]", "0x1007b3ea"], ["0x100d0ddc", "call dword ptr [eax]", "0x1007b3ec"], ["0x100d0dde", "mov eax, dword ptr [ebx + 4]", "0x1007b3ee"], ["0x100d0de1", "mov ecx, eax", "0x1007b3f1"], ["0x100d0de3", "and ecx, 1", "0x1007b3f3"], ["0x100d0de6", "add ecx, ebx", "0x1007b3f6"], ["0x100d0de8", "add ecx, eax", "0x1007b3f8"], ["0x100d0dea", "add ecx, 8", "0x1007b3fa"], ["0x100d0ded", "mov dword ptr [esp + 0x10], ecx", "0x1007b3fd"]]}, {"orig": [["0x100d0df1", "cmp ecx, dword ptr [esp + 0x14]"], ["0x100d0df5", "jae 0xf7"]], "recomp": [["0x1007b401", "cmp dword ptr [esp + 0x14], ecx"], ["0x1007b405", "jbe 0xf7"]]}, {"both": [["0x100d0dfb", "mov eax, dword ptr [esp + 0x10]", "0x1007b40b"], ["0x100d0dff", "cmp dword ptr [eax], 0x6843784d", "0x1007b40f"], ["0x100d0e05", "jne 0xcf", "0x1007b415"], ["0x100d0e0b", "mov esi, eax", "0x1007b41b"], ["0x100d0e0d", "lea edi, [eax + 4]", "0x1007b41d"], ["0x100d0e10", "mov eax, dword ptr [edi]", "0x1007b420"], ["0x100d0e12", "mov ecx, eax", "0x1007b422"], ["0x100d0e14", "and ecx, 1", "0x1007b424"], ["0x100d0e17", "add ecx, eax", "0x1007b427"], ["0x100d0e19", "add ecx, 8", "0x1007b429"], ["0x100d0e1c", "add dword ptr [esp + 0x10], ecx", "0x1007b42c"], ["0x100d0e20", "cmp dword ptr [ebx], 0x6843784d", "0x1007b430"], ["0x100d0e26", "jne 0x66", "0x1007b436"], ["0x100d0e28", "push ebx", "0x1007b438"], ["0x100d0e29", "call MxStreamChunk::IntoFlags (FUNCTION)", "0x1007b439"], ["0x100d0e2e", "add esp, 4", "0x1007b43e"], ["0x100d0e31", "test byte ptr [eax], 0x10", "0x1007b441"], ["0x100d0e34", "je 0x58", "0x1007b444"]]}, {"orig": [["0x100d0e36", "push esi"]], "recomp": [["0x1007b446", "push ebx"]]}, {"both": [["0x100d0e37", "call MxStreamChunk::IntoObjectId (FUNCTION)", "0x1007b447"], ["0x100d0e3c", "add esp, 4", "0x1007b44c"], ["0x100d0e3f", "mov ebp, dword ptr [eax]", "0x1007b44f"]]}, {"orig": [["0x100d0e41", "push ebx"]], "recomp": [["0x1007b451", "push esi"]]}, {"both": [["0x100d0e42", "call MxStreamChunk::IntoObjectId (FUNCTION)", "0x1007b452"], ["0x100d0e47", "add esp, 4", "0x1007b457"], ["0x100d0e4a", "cmp ebp, dword ptr [eax]", "0x1007b45a"], ["0x100d0e4c", "jne 0x32", "0x1007b45c"], ["0x100d0e4e", "push esi", "0x1007b45e"], ["0x100d0e4f", "call MxStreamChunk::IntoFlags (FUNCTION)", "0x1007b45f"], ["0x100d0e54", "add esp, 4", "0x1007b464"], ["0x100d0e57", "test byte ptr [eax], 0x10", "0x1007b467"], ["0x100d0e5a", "je 0x24", "0x1007b46a"], ["0x100d0e5c", "push ebx", "0x1007b46c"]]}]], ["@@ -0x100d0ec6,27 +0x1007b4d6,27 @@", [{"both": [["0x100d0ec6", "cmp dword ptr [eax], edx", "0x1007b4d6"], ["0x100d0ec8", "jne 0x14", "0x1007b4d8"], ["0x100d0eca", "push ebx", "0x1007b4da"], ["0x100d0ecb", "call MxStreamChunk::IntoFlags (FUNCTION)", "0x1007b4db"], ["0x100d0ed0", "add esp, 4", "0x1007b4e0"], ["0x100d0ed3", "test byte ptr [eax], 2", "0x1007b4e3"], ["0x100d0ed6", "je 0x6", "0x1007b4e6"], ["0x100d0ed8", "jmp 0x18", "0x1007b4e8"], ["0x100d0eda", "inc dword ptr [esp + 0x10]", "0x1007b4ea"], ["0x100d0ede", "mov eax, dword ptr [esp + 0x14]", "0x1007b4ee"]]}, {"orig": [["0x100d0ee2", "cmp dword ptr [esp + 0x10], eax"], ["0x100d0ee6", "jb -0xf1"]], "recomp": [["0x1007b4f2", "cmp eax, dword ptr [esp + 0x10]"], ["0x1007b4f6", "ja -0xf1"]]}, {"both": [["0x100d0eec", "jmp 0x4", "0x1007b4fc"], ["0x100d0eee", "inc dword ptr [esp + 0x10]", "0x1007b4fe"], ["0x100d0ef2", "mov eax, dword ptr [esp + 0x14]", "0x1007b502"]]}, {"orig": [["0x100d0ef6", "cmp dword ptr [esp + 0x10], eax"], ["0x100d0efa", "jb -0x15b"]], "recomp": [["0x1007b506", "cmp eax, dword ptr [esp + 0x10]"], ["0x1007b50a", "ja -0x15b"]]}, {"both": [["0x100d0f00", "push ebx", "0x1007b510"], ["0x100d0f01", "call MxStreamChunk::IntoFlags (FUNCTION)", "0x1007b511"], ["0x100d0f06", "and word ptr [eax], 0xffef", "0x1007b516"], ["0x100d0f0b", "add esp, 4", "0x1007b51b"], ["0x100d0f0e", "mov eax, dword ptr [ebx + 4]", "0x1007b51e"], ["0x100d0f11", "mov ecx, eax", "0x1007b521"], ["0x100d0f13", "and ecx, 1", "0x1007b523"], ["0x100d0f16", "sub ecx, dword ptr [esp + 0x20]", "0x1007b526"], ["0x100d0f1a", "pop ebp", "0x1007b52a"], ["0x100d0f1b", "add ecx, ebx", "0x1007b52b"]]}]]]}, {"address": "0x100d0f30", "recomp": "0x1007b540", "name": "MxDiskStreamProviderThread::Run", "matching": 1.0, "diff": []}, {"address": "0x100d0f50", "recomp": "0x1007b560", "name": "MxDiskStreamProviderThread::StartWithTarget", "matching": 1.0, "diff": []}, {"address": "0x100d0f70", "recomp": "0x1007b580", "name": "MxDiskStreamProvider::MxDiskStreamProvider", "matching": 1.0, "diff": []}, {"address": "0x100d10a0", "recomp": "0x1007b6b0", "name": "MxDiskStreamProviderThread::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100d1110", "recomp": "0x1007b720", "name": "MxDiskStreamProviderThread::~MxDiskStreamProviderThread", "matching": 1.0, "diff": []}, {"address": "0x100d1160", "recomp": "0x1007b770", "name": "MxDiskStreamProvider::ClassName", "matching": 1.0, "diff": []}, {"address": "0x100d1170", "recomp": "0x1007b780", "name": "MxDiskStreamProvider::IsA", "matching": 1.0, "diff": []}, {"address": "0x100d1220", "recomp": "0x1007b830", "name": "MxDiskStreamProvider::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100d1240", "recomp": "0x1007b850", "name": "MxDiskStreamProvider::~MxDiskStreamProvider", "matching": 1.0, "diff": []}, {"address": "0x100d13d0", "recomp": "0x1007b9e0", "name": "MxDiskStreamProvider::SetResourceToGet", "matching": 1.0, "diff": []}, {"address": "0x100d15e0", "recomp": "0x1007bbf0", "name": "MxDiskStreamProvider::VTable0x20", "matching": 0.8962264150943396, "diff": [["@@ -0x100d16a8,50 +0x1007bcb8,46 @@", [{"both": [["0x100d16a8", "jne -0x99", "0x1007bcb8"], ["0x100d16ae", "mov eax, dword ptr [ebp - 0xc]", "0x1007bcbe"], ["0x100d16b1", "mov esp, ebp", "0x1007bcc1"], ["0x100d16b3", "mov dword ptr fs:[0], eax", "0x1007bcc3"], ["0x100d16b9", "pop ebp", "0x1007bcc9"], ["0x100d16ba", "ret 4", "0x1007bcca"], ["0x100d16bd", "lea ecx, [ebp - 0x1c]", "0x1007bccd"], ["0x100d16c0", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x1007bcd0"], ["0x100d16c5", "mov eax, dword ptr [ebp - 0x14]", "0x1007bcd5"], ["0x100d16c8", "add eax, 0x38", "0x1007bcd8"]]}, {"orig": [], "recomp": [["0x1007bcdb", "mov dword ptr [ebp - 0x20], eax"], ["0x1007bcde", "mov eax, dword ptr [ebp - 0x14]"], ["0x1007bce1", "add eax, 0x54"]]}, {"both": [["0x100d16cb", "mov dword ptr [ebp - 0x1c], eax", "0x1007bce4"]]}, {"orig": [["0x100d16ce", "mov eax, dword ptr [ebp - 0x1c]"]], "recomp": [["0x1007bce7", "mov eax, dword ptr [ebp - 0x20]"]]}, {"both": [["0x100d16d1", "lea ecx, [ebp - 0x18]", "0x1007bcea"], ["0x100d16d4", "push eax", "0x1007bced"], ["0x100d16d5", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x1007bcee"], ["0x100d16da", "push 1", "0x1007bcf3"], ["0x100d16dc", "mov eax, dword ptr [ebp + 8]", "0x1007bcf5"]]}, {"orig": [], "recomp": [["0x1007bcf8", "mov dword ptr [ebp - 4], 1"]]}, {"both": [["0x100d16df", "push eax", "0x1007bcff"]]}, {"orig": [["0x100d16e0", "mov ecx, dword ptr [ebp - 0x14]"], ["0x100d16e3", "mov dword ptr [ebp - 4], 1"], ["0x100d16ea", "add ecx, 0x54"]], "recomp": [["0x1007bd00", "mov ecx, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100d16ed", "call MxStreamListMxDSAction::Find (FUNCTION)", "0x1007bd03"], ["0x100d16f2", "mov dword ptr [ebp - 4], 0xffffffff", "0x1007bd08"], ["0x100d16f9", "mov dword ptr [ebp - 0x10], eax", "0x1007bd0f"], ["0x100d16fc", "call <OFFSET9>", "0x1007bd12"], ["0x100d1701", "cmp dword ptr [ebp - 0x10], 0", "0x1007bd17"]]}, {"orig": [["0x100d1705", "je -0x59"]], "recomp": [["0x1007bd1b", "je -0x5f"]]}, {"both": [["0x100d1707", "mov eax, dword ptr [ebp - 0x10]", "0x1007bd1d"], ["0x100d170a", "mov ecx, dword ptr [eax + 0xa0]", "0x1007bd20"], ["0x100d1710", "cmp dword ptr [ecx + 0x28], 0x20000", "0x1007bd26"], ["0x100d1717", "jae 0x6", "0x1007bd2d"], ["0x100d1719", "dec dword ptr [g_unk0x10102878 (DATA)]", "0x1007bd2f"], ["0x100d171f", "mov eax, dword ptr [ebp - 0x10]", "0x1007bd35"], ["0x100d1722", "mov edx, dword ptr [ebp - 0x14]", "0x1007bd38"], ["0x100d1725", "push eax", "0x1007bd3b"], ["0x100d1726", "mov ecx, dword ptr [edx + 8]", "0x1007bd3c"], ["0x100d1729", "call MxDiskStreamController::FUN_100c8670 (FUNCTION)", "0x1007bd3f"], ["0x100d172e", "cmp dword ptr [ebp - 0x10], 0", "0x1007bd44"]]}, {"orig": [["0x100d1732", "jne -0x66"], ["0x100d1734", "jmp -0x8b"]], "recomp": [["0x1007bd48", "jne -0x63"], ["0x1007bd4a", "jmp -0x91"]]}, {"both": [["0x100d1739", "mov eax, <OFFSET10>", "0x1007bd4f"], ["0x100d173e", "jmp ___CxxFrameHandler (FUNCTION)", "0x1007bd54"], ["0x100d1743", "lea ecx, [ebp - 0x18]", "0x1007bd59"], ["0x100d1746", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x1007bd5c"]]}, {"orig": [["0x100d174b", "int3 "], ["0x100d174c", "int3 "], ["0x100d174d", "int3 "], ["0x100d174e", "int3 "], ["0x100d174f", "int3 "], ["0x100d1750", "push esi"]], "recomp": []}]]]}, {"address": "0x100d1750", "recomp": "0x1007bd70", "name": "MxDiskStreamProvider::WaitForWorkToComplete", "matching": 1.0, "effective": true, "diff": [["@@ -0x100d1750,19 +0x1007bd70,19 @@", [{"both": [["0x100d1750", "push esi", "0x1007bd70"], ["0x100d1751", "push edi", "0x1007bd71"], ["0x100d1752", "cmp byte ptr [ecx + 0x34], 0", "0x1007bd72"]]}, {"orig": [["0x100d1756", "mov edi, ecx"]], "recomp": [["0x1007bd76", "mov esi, ecx"]]}, {"both": [["0x100d1758", "je 0x1f", "0x1007bd78"]]}, {"orig": [["0x100d175a", "lea esi, [edi + 0x2c]"]], "recomp": [["0x1007bd7a", "lea edi, [esi + 0x2c]"]]}, {"both": [["0x100d175d", "push -1", "0x1007bd7d"]]}, {"orig": [], "recomp": [["0x1007bd7f", "mov ecx, edi"], ["0x1007bd81", "call MxSemaphore::Wait (FUNCTION)"], ["0x1007bd86", "cmp byte ptr [esi + 0x35], 0"], ["0x1007bd8a", "je 0x7"]]}, {"both": [["0x100d175f", "mov ecx, esi", "0x1007bd8c"]]}, {"orig": [["0x100d1761", "call MxSemaphore::Wait (FUNCTION)"], ["0x100d1766", "cmp byte ptr [edi + 0x35], 0"], ["0x100d176a", "je 0x7"], ["0x100d176c", "mov ecx, edi"]], "recomp": []}, {"both": [["0x100d176e", "call MxDiskStreamProvider::PerformWork (FUNCTION)", "0x1007bd8e"]]}, {"orig": [["0x100d1773", "cmp byte ptr [edi + 0x34], 0"]], "recomp": [["0x1007bd93", "cmp byte ptr [esi + 0x34], 0"]]}, {"both": [["0x100d1777", "jne -0x1c", "0x1007bd97"], ["0x100d1779", "xor eax, eax", "0x1007bd99"], ["0x100d177b", "pop edi", "0x1007bd9b"], ["0x100d177c", "pop esi", "0x1007bd9c"], ["0x100d177d", "ret ", "0x1007bd9d"]]}]]]}, {"address": "0x100d1780", "recomp": "0x1007bda0", "name": "MxDiskStreamProvider::FUN_100d1780", "matching": 0.8974358974358975, "diff": [["@@ -0x100d1780,18 +0x1007bda0,18 @@", [{"both": [["0x100d1780", "mov eax, dword ptr fs:[0]", "0x1007bda0"], ["0x100d1786", "push ebp", "0x1007bda6"], ["0x100d1787", "mov ebp, esp", "0x1007bda7"], ["0x100d1789", "push -1", "0x1007bda9"], ["0x100d178b", "push <OFFSET1>", "0x1007bdab"], ["0x100d1790", "push eax", "0x1007bdb0"], ["0x100d1791", "mov dword ptr fs:[0], esp", "0x1007bdb1"]]}, {"orig": [["0x100d1798", "sub esp, 0xc"]], "recomp": [["0x1007bdb8", "sub esp, 0x10"]]}, {"both": [["0x100d179b", "cmp byte ptr [ecx + 0x34], 0", "0x1007bdbb"], ["0x100d179f", "push ebx", "0x1007bdbf"], ["0x100d17a0", "mov dword ptr [ebp - 0x10], ecx", "0x1007bdc0"], ["0x100d17a3", "push esi", "0x1007bdc3"], ["0x100d17a4", "push edi", "0x1007bdc4"], ["0x100d17a5", "jne 0x18", "0x1007bdc5"], ["0x100d17a7", "mov eax, 0xffffffff", "0x1007bdc7"], ["0x100d17ac", "mov ecx, dword ptr [ebp - 0xc]", "0x1007bdcc"], ["0x100d17af", "pop edi", "0x1007bdcf"], ["0x100d17b0", "mov dword ptr fs:[0], ecx", "0x1007bdd0"]]}]], ["@@ -0x100d1836,58 +0x1007be56,54 @@", [{"both": [["0x100d1836", "mov eax, dword ptr [esi + 0xa0]", "0x1007be56"], ["0x100d183c", "cmp dword ptr [eax + 0x28], 0x20000", "0x1007be5c"], ["0x100d1843", "jae 0x6", "0x1007be63"], ["0x100d1845", "inc dword ptr [g_unk0x10102878 (DATA)]", "0x1007be65"], ["0x100d184b", "mov eax, dword ptr [ebp - 0x10]", "0x1007be6b"], ["0x100d184e", "lea ecx, [ebp - 0x18]", "0x1007be6e"], ["0x100d1851", "add eax, 0x38", "0x1007be71"], ["0x100d1854", "push eax", "0x1007be74"], ["0x100d1855", "call MxAutoLock::MxAutoLock (FUNCTION)", "0x1007be75"], ["0x100d185a", "mov ecx, dword ptr [ebp - 0x10]", "0x1007be7a"]]}, {"orig": [], "recomp": [["0x1007be7d", "mov dword ptr [ebp - 0x1c], esi"], ["0x1007be80", "mov edx, dword ptr [ecx + 0x58]"]]}, {"both": [["0x100d185d", "push 0xc", "0x1007be83"]]}, {"orig": [["0x100d185f", "mov edx, dword ptr [ecx + 0x58]"]], "recomp": []}, {"both": [["0x100d1862", "mov dword ptr [ebp - 0x14], edx", "0x1007be85"], ["0x100d1865", "lea edi, [edx + 4]", "0x1007be88"], ["0x100d1868", "mov dword ptr [ebp - 4], 1", "0x1007be8b"]]}, {"orig": [["0x100d186f", "mov ebx, dword ptr [edi]"]], "recomp": [["0x1007be92", "mov esi, dword ptr [edi]"]]}, {"both": [["0x100d1871", "call ??2@YAPAXI@Z (FUNCTION)", "0x1007be94"], ["0x100d1876", "add esp, 4", "0x1007be99"]]}, {"orig": [["0x100d1879", "test ebx, ebx"]], "recomp": [["0x1007be9c", "test esi, esi"]]}, {"both": [["0x100d187b", "je 0x17", "0x1007be9e"], ["0x100d187d", "mov ecx, dword ptr [ebp - 0x14]", "0x1007bea0"], ["0x100d1880", "mov dword ptr [eax], ecx", "0x1007bea3"]]}, {"orig": [["0x100d1882", "mov dword ptr [eax + 4], ebx"]], "recomp": [["0x1007bea5", "mov dword ptr [eax + 4], esi"]]}, {"both": [["0x100d1885", "jmp 0x12", "0x1007bea8"], ["0x100d1887", "mov eax, dword ptr [ebp - 0x14]", "0x1007beaa"], ["0x100d188a", "push eax", "0x1007bead"], ["0x100d188b", "call ??3@YAXPAX@Z (FUNCTION)", "0x1007beae"], ["0x100d1890", "add esp, 4", "0x1007beb3"], ["0x100d1893", "ret ", "0x1007beb6"], ["0x100d1894", "mov dword ptr [eax], eax", "0x1007beb7"], ["0x100d1896", "mov dword ptr [eax + 4], eax", "0x1007beb9"], ["0x100d1899", "mov dword ptr [edi], eax", "0x1007bebc"], ["0x100d189b", "mov ecx, dword ptr [eax + 4]", "0x1007bebe"], ["0x100d189e", "mov dword ptr [ecx], eax", "0x1007bec1"], ["0x100d18a0", "add eax, 8", "0x1007bec3"]]}, {"orig": [["0x100d18a3", "je 0x2"], ["0x100d18a5", "mov dword ptr [eax], esi"]], "recomp": [["0x1007bec6", "je 0x5"], ["0x1007bec8", "mov ecx, dword ptr [ebp - 0x1c]"], ["0x1007becb", "mov dword ptr [eax], ecx"]]}, {"both": [["0x100d18a7", "mov eax, dword ptr [ebp - 0x10]", "0x1007becd"], ["0x100d18aa", "mov dword ptr [ebp - 4], 0xffffffff", "0x1007bed0"], ["0x100d18b1", "inc dword ptr [eax + 0x5c]", "0x1007bed7"], ["0x100d18b4", "call <OFFSET8>", "0x1007beda"], ["0x100d18b9", "mov eax, dword ptr [ebp - 0x10]", "0x1007bedf"], ["0x100d18bc", "push 1", "0x1007bee2"], ["0x100d18be", "mov byte ptr [eax + 0x35], 1", "0x1007bee4"], ["0x100d18c2", "lea ecx, [eax + 0x2c]", "0x1007bee8"], ["0x100d18c5", "call MxSemaphore::Release (FUNCTION)", "0x1007beeb"], ["0x100d18ca", "xor eax, eax", "0x1007bef0"]]}, {"orig": [["0x100d18cc", "jmp -0x125"]], "recomp": [["0x1007bef2", "jmp -0x12b"]]}, {"both": [["0x100d18d1", "mov eax, <OFFSET10>", "0x1007bef7"], ["0x100d18d6", "jmp ___CxxFrameHandler (FUNCTION)", "0x1007befc"], ["0x100d18db", "lea ecx, [ebp - 0x18]", "0x1007bf01"], ["0x100d18de", "jmp MxAutoLock::~MxAutoLock (FUNCTION)", "0x1007bf04"]]}, {"orig": [["0x100d18e3", "int3 "], ["0x100d18e4", "int3 "], ["0x100d18e5", "int3 "], ["0x100d18e6", "int3 "], ["0x100d18e7", "int3 "], ["0x100d18e8", "int3 "]], "recomp": []}]]]}, {"address": "0x100d18f0", "recomp": "0x1007bf10", "name": "MxDiskStreamProvider::PerformWork", "matching": 1.0, "diff": []}, {"address": "0x100d1af0", "recomp": "0x1007c110", "name": "MxDiskStreamProvider::FUN_100d1af0", "matching": 1.0, "diff": []}, {"address": "0x100d1b20", "recomp": "0x1007c140", "name": "MxDiskStreamProvider::FUN_100d1b20", "matching": 0.5996533795493935, "diff": [["@@ -0x100d1b20,19 +0x1007c140,19 @@", [{"both": [["0x100d1b20", "mov eax, dword ptr fs:[0]", "0x1007c140"], ["0x100d1b26", "push ebp", "0x1007c146"], ["0x100d1b27", "mov ebp, esp", "0x1007c147"], ["0x100d1b29", "push -1", "0x1007c149"], ["0x100d1b2b", "push <OFFSET1>", "0x1007c14b"], ["0x100d1b30", "push eax", "0x1007c150"], ["0x100d1b31", "mov dword ptr fs:[0], esp", "0x1007c151"], ["0x100d1b38", "sub esp, 0x10", "0x1007c158"]]}, {"orig": [["0x100d1b3b", "mov dword ptr [ebp - 0x18], ecx"]], "recomp": [["0x1007c15b", "mov dword ptr [ebp - 0x1c], ecx"]]}, {"both": [["0x100d1b3e", "push ebx", "0x1007c15e"], ["0x100d1b3f", "push esi", "0x1007c15f"], ["0x100d1b40", "push edi", "0x1007c160"], ["0x100d1b41", "push 0x34", "0x1007c161"], ["0x100d1b43", "call ??2@YAPAXI@Z (FUNCTION)", "0x1007c163"], ["0x100d1b48", "mov dword ptr [ebp - 0x14], eax", "0x1007c168"], ["0x100d1b4b", "add esp, 4", "0x1007c16b"], ["0x100d1b4e", "mov dword ptr [ebp - 4], 0", "0x1007c16e"], ["0x100d1b55", "mov esi, eax", "0x1007c175"], ["0x100d1b57", "test esi, esi", "0x1007c177"]]}]], ["@@ -0x100d1bd8,238 +0x1007c1f8,225 @@", [{"both": [["0x100d1bd8", "je -0x5f", "0x1007c1f8"], ["0x100d1bda", "push 1", "0x1007c1fa"], ["0x100d1bdc", "mov eax, dword ptr [ebp - 0x10]", "0x1007c1fc"], ["0x100d1bdf", "mov ecx, eax", "0x1007c1ff"], ["0x100d1be1", "mov ebx, dword ptr [eax]", "0x1007c201"], ["0x100d1be3", "call dword ptr [ebx]", "0x1007c203"], ["0x100d1be5", "jmp -0x6c", "0x1007c205"], ["0x100d1be7", "mov edx, dword ptr [ebp + 8]", "0x1007c207"], ["0x100d1bea", "mov eax, dword ptr [edx + 0xa4]", "0x1007c20a"], ["0x100d1bf0", "test eax, eax", "0x1007c210"]]}, {"orig": [["0x100d1bf2", "jne 0x35"], ["0x100d1bf4", "mov eax, dword ptr [ebp - 0x10]"], ["0x100d1bf7", "mov ecx, dword ptr [edx + 0xa0]"], ["0x100d1bfd", "add eax, 8"], ["0x100d1c00", "mov esi, dword ptr [ecx + 8]"], ["0x100d1c03", "sub esi, dword ptr [edx + 0x98]"], ["0x100d1c09", "mov dword ptr [ebp - 0x1c], eax"], ["0x100d1c0c", "mov ebx, dword ptr [eax]"], ["0x100d1c0e", "add esi, dword ptr [edx + 0x94]"], ["0x100d1c14", "mov eax, dword ptr [ebp - 0x14]"], ["0x100d1c17", "mov edi, ebx"], ["0x100d1c19", "mov ecx, eax"], ["0x100d1c1b", "shr ecx, 2"], ["0x100d1c1e", "rep movsd dword ptr es:[edi], dword ptr [esi]"], ["0x100d1c20", "mov ecx, eax"], ["0x100d1c22", "and ecx, 3"], ["0x100d1c25", "rep movsb byte ptr es:[edi], byte ptr [esi]"], ["0x100d1c27", "jmp 0x4f"]], "recomp": [["0x1007c212", "je 0x51"]]}, {"both": [["0x100d1c29", "push eax", "0x1007c214"], ["0x100d1c2a", "mov ecx, dword ptr [ebp - 0x10]", "0x1007c215"], ["0x100d1c2d", "call MxDSBuffer::FUN_100c7090 (FUNCTION)", "0x1007c218"], ["0x100d1c32", "mov eax, dword ptr [ebp - 0x10]", "0x1007c21d"], ["0x100d1c35", "mov edx, dword ptr [ebp + 8]", "0x1007c220"], ["0x100d1c38", "add eax, 8", "0x1007c223"], ["0x100d1c3b", "mov ecx, dword ptr [edx + 0xa4]", "0x1007c226"]]}, {"orig": [["0x100d1c41", "mov dword ptr [ebp - 0x1c], eax"]], "recomp": [["0x1007c22c", "mov dword ptr [ebp - 0x18], eax"]]}, {"both": [["0x100d1c44", "mov ebx, dword ptr [ecx + 0x28]", "0x1007c22f"], ["0x100d1c47", "add ebx, dword ptr [eax]", "0x1007c232"], ["0x100d1c49", "mov eax, dword ptr [edx + 0xa0]", "0x1007c234"], ["0x100d1c4f", "mov edi, ebx", "0x1007c23a"], ["0x100d1c51", "mov edx, dword ptr [eax + 0x28]", "0x1007c23c"], ["0x100d1c54", "mov esi, dword ptr [eax + 8]", "0x1007c23f"], ["0x100d1c57", "mov ecx, edx", "0x1007c242"], ["0x100d1c59", "shr ecx, 2", "0x1007c244"], ["0x100d1c5c", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x1007c247"], ["0x100d1c5e", "mov ecx, edx", "0x1007c249"], ["0x100d1c60", "and ecx, 3", "0x1007c24b"], ["0x100d1c63", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x1007c24e"], ["0x100d1c65", "mov esi, dword ptr [ebp + 8]", "0x1007c250"], ["0x100d1c68", "mov ecx, dword ptr [esi + 0xa4]", "0x1007c253"], ["0x100d1c6e", "test ecx, ecx", "0x1007c259"]]}, {"orig": [["0x100d1c70", "je 0x6"], ["0x100d1c72", "push 1"], ["0x100d1c74", "mov eax, dword ptr [ecx]"], ["0x100d1c76", "call dword ptr [eax]"], ["0x100d1c78", "mov eax, dword ptr [ebp - 0x10]"], ["0x100d1c7b", "mov edx, dword ptr [ebp + 8]"]], "recomp": [["0x1007c25b", "je 0x3e"], ["0x1007c25d", "push 1"], ["0x1007c25f", "mov eax, dword ptr [ecx]"], ["0x1007c261", "call dword ptr [eax]"], ["0x1007c263", "jmp 0x36"], ["0x1007c265", "mov eax, dword ptr [ebp - 0x10]"], ["0x1007c268", "mov edx, dword ptr [ebp + 8]"], ["0x1007c26b", "add eax, 8"], ["0x1007c26e", "mov ecx, dword ptr [edx + 0xa0]"], ["0x1007c274", "mov dword ptr [ebp - 0x18], eax"], ["0x1007c277", "mov ebx, dword ptr [eax]"], ["0x1007c279", "mov eax, dword ptr [ebp - 0x14]"], ["0x1007c27c", "mov esi, dword ptr [ecx + 8]"], ["0x1007c27f", "sub esi, dword ptr [edx + 0x98]"], ["0x1007c285", "mov edi, ebx"], ["0x1007c287", "add esi, dword ptr [edx + 0x94]"], ["0x1007c28d", "mov ecx, eax"], ["0x1007c28f", "shr ecx, 2"], ["0x1007c292", "rep movsd dword ptr es:[edi], dword ptr [esi]"], ["0x1007c294", "mov ecx, eax"], ["0x1007c296", "and ecx, 3"], ["0x1007c299", "rep movsb byte ptr es:[edi], byte ptr [esi]"], ["0x1007c29b", "mov eax, dword ptr [ebp - 0x10]"], ["0x1007c29e", "mov edx, dword ptr [ebp + 8]"], ["0x1007c2a1", "mov dword ptr [edx + 0xa4], eax"]]}, {"both": [["0x100d1c7e", "test ebx, ebx", "0x1007c2a7"]]}, {"orig": [["0x100d1c80", "mov dword ptr [edx + 0xa4], eax"], ["0x100d1c86", "je 0x2d"]], "recomp": [["0x1007c2a9", "je 0x2b"]]}, {"both": [["0x100d1c88", "cmp dword ptr [ebx], 0x624f784d", "0x1007c2ab"], ["0x100d1c8e", "je 0x16", "0x1007c2b1"], ["0x100d1c90", "push ebx", "0x1007c2b3"], ["0x100d1c91", "call MxStreamChunk::IntoTime (FUNCTION)", "0x1007c2b4"], ["0x100d1c96", "add esp, 4", "0x1007c2b9"], ["0x100d1c99", "mov edx, dword ptr [ebp + 8]", "0x1007c2bc"], ["0x100d1c9c", "mov ecx, dword ptr [edx + 0x9c]", "0x1007c2bf"], ["0x100d1ca2", "cmp dword ptr [eax], ecx", "0x1007c2c5"]]}, {"orig": [["0x100d1ca4", "jg 0x4e"]], "recomp": [["0x1007c2c7", "jg 0x4c"]]}, {"both": [["0x100d1ca6", "push ebx", "0x1007c2c9"], ["0x100d1ca7", "mov ecx, dword ptr [ebp - 0x10]", "0x1007c2ca"], ["0x100d1caa", "call MxDSBuffer::FUN_100c6fa0 (FUNCTION)", "0x1007c2cd"], ["0x100d1caf", "mov ebx, eax", "0x1007c2d2"]]}, {"orig": [["0x100d1cb1", "test ebx, ebx"], ["0x100d1cb3", "jne -0x2d"], ["0x100d1cb5", "mov eax, dword ptr [ebp - 0x18]"]], "recomp": [["0x1007c2d4", "jmp -0x2f"], ["0x1007c2d6", "mov eax, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100d1cb8", "mov ecx, dword ptr [eax]", "0x1007c2d9"], ["0x100d1cba", "mov esi, dword ptr [ecx + 0x18]", "0x1007c2db"], ["0x100d1cbd", "mov ecx, eax", "0x1007c2de"], ["0x100d1cbf", "call esi", "0x1007c2e0"], ["0x100d1cc1", "mov edx, dword ptr [ebp + 8]", "0x1007c2e2"]]}, {"orig": [["0x100d1cc4", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": [["0x1007c2e5", "mov ecx, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100d1cc7", "add eax, dword ptr [edx + 0x98]", "0x1007c2e8"], ["0x100d1ccd", "mov dword ptr [edx + 0x94], eax", "0x1007c2ee"], ["0x100d1cd3", "call esi", "0x1007c2f4"], ["0x100d1cd5", "mov edx, dword ptr [ebp + 8]", "0x1007c2f6"]]}, {"orig": [["0x100d1cd8", "mov ecx, dword ptr [ebp - 0x18]"]], "recomp": [["0x1007c2f9", "mov ecx, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100d1cdb", "push edx", "0x1007c2fc"], ["0x100d1cdc", "add eax, dword ptr [edx + 0x98]", "0x1007c2fd"], ["0x100d1ce2", "mov dword ptr [edx + 0x98], eax", "0x1007c303"], ["0x100d1ce8", "call MxDiskStreamProvider::FUN_100d1780 (FUNCTION)", "0x1007c309"], ["0x100d1ced", "xor eax, eax", "0x1007c30e"]]}, {"orig": [["0x100d1cef", "jmp -0x174"], ["0x100d1cf4", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1007c310", "jmp -0x175"], ["0x1007c315", "mov eax, dword ptr [ebp - 0x18]"], ["0x1007c318", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1007c31b", "lea edi, [ebx + 8]"]]}, {"both": [["0x100d1cf7", "mov dword ptr [ebx], 0x20646170", "0x1007c31e"]]}, {"orig": [["0x100d1cfd", "lea edi, [ebx + 8]"], ["0x100d1d00", "mov ecx, dword ptr [eax + 0x28]"], ["0x100d1d03", "sub ecx, ebx"], ["0x100d1d05", "mov eax, dword ptr [ebp - 0x1c]"]], "recomp": []}, {"both": [["0x100d1d08", "mov esi, dword ptr [eax]", "0x1007c324"]]}, {"orig": [["0x100d1d0a", "xor eax, eax"], ["0x100d1d0c", "lea edx, [ecx + esi - 8]"], ["0x100d1d10", "mov ecx, edx"], ["0x100d1d12", "mov dword ptr [ebx + 4], edx"], ["0x100d1d15", "shr ecx, 2"], ["0x100d1d18", "rep stosd dword ptr es:[edi], eax"], ["0x100d1d1a", "mov ecx, edx"], ["0x100d1d1c", "and ecx, 3"], ["0x100d1d1f", "rep stosb byte ptr es:[edi], al"], ["0x100d1d21", "mov eax, dword ptr [ebp - 0x10]"], ["0x100d1d24", "mov edx, dword ptr [ebp - 0x1c]"], ["0x100d1d27", "mov ecx, dword ptr [eax + 0x28]"], ["0x100d1d2a", "mov eax, dword ptr [edx]"]], "recomp": [["0x1007c326", "mov eax, dword ptr [ecx + 0x28]"], ["0x1007c329", "sub eax, ebx"], ["0x1007c32b", "add eax, esi"], ["0x1007c32d", "sub eax, 8"], ["0x1007c330", "mov ecx, eax"], ["0x1007c332", "shr ecx, 2"], ["0x1007c335", "rep movsd dword ptr es:[edi], dword ptr [esi]"], ["0x1007c337", "mov ecx, eax"], ["0x1007c339", "and ecx, 3"], ["0x1007c33c", "rep movsb byte ptr es:[edi], byte ptr [esi]"], ["0x1007c33e", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1007c341", "mov edx, dword ptr [ebp - 0x18]"], ["0x1007c344", "mov eax, dword ptr [ecx + 0x28]"], ["0x1007c347", "mov ecx, dword ptr [edx]"], ["0x1007c349", "push eax"]]}, {"both": [["0x100d1d2c", "push ecx", "0x1007c34a"]]}, {"orig": [["0x100d1d2d", "push eax"]], "recomp": []}, {"both": [["0x100d1d2e", "call ReadData (FUNCTION)", "0x1007c34b"], ["0x100d1d33", "add esp, 8", "0x1007c350"], ["0x100d1d36", "mov dword ptr [ebp - 0x14], eax", "0x1007c353"], ["0x100d1d39", "push 0x34", "0x1007c356"], ["0x100d1d3b", "call ??2@YAPAXI@Z (FUNCTION)", "0x1007c358"]]}, {"orig": [["0x100d1d40", "mov dword ptr [ebp - 0x10], eax"], ["0x100d1d43", "add esp, 4"]], "recomp": [["0x1007c35d", "mov dword ptr [ebp - 0x18], eax"], ["0x1007c360", "add esp, 4"], ["0x1007c363", "mov dword ptr [ebp - 4], 1"]]}, {"both": [["0x100d1d46", "mov esi, eax", "0x1007c36a"]]}, {"orig": [["0x100d1d48", "mov ebx, 0"], ["0x100d1d4d", "mov dword ptr [ebp - 4], 1"]], "recomp": []}, {"both": [["0x100d1d54", "test esi, esi", "0x1007c36c"]]}, {"orig": [["0x100d1d56", "je 0x9"]], "recomp": [["0x1007c36e", "je 0xc"]]}, {"both": [["0x100d1d58", "mov ecx, esi", "0x1007c370"], ["0x100d1d5a", "call MxDSBuffer::MxDSBuffer (FUNCTION)", "0x1007c372"]]}, {"orig": [["0x100d1d5f", "mov ebx, eax"]], "recomp": [["0x1007c377", "mov dword ptr [ebp - 0x10], eax"], ["0x1007c37a", "jmp 0x7"], ["0x1007c37c", "mov dword ptr [ebp - 0x10], 0"]]}, {"both": [["0x100d1d61", "mov dword ptr [ebp - 4], 0xffffffff", "0x1007c383"]]}, {"orig": [["0x100d1d68", "test ebx, ebx"], ["0x100d1d6a", "je -0x1f5"], ["0x100d1d70", "push 1"], ["0x100d1d72", "mov eax, dword ptr [ebp - 0x14]"], ["0x100d1d75", "push eax"], ["0x100d1d76", "mov ecx, ebx"]], "recomp": [["0x1007c38a", "cmp dword ptr [ebp - 0x10], 0"], ["0x1007c38e", "je -0x1f9"], ["0x1007c394", "push 1"], ["0x1007c396", "mov eax, dword ptr [ebp - 0x14]"], ["0x1007c399", "push eax"], ["0x1007c39a", "mov ecx, dword ptr [ebp - 0x10]"]]}, {"both": [["0x100d1d78", "call MxDSBuffer::AllocateBuffer (FUNCTION)", "0x1007c39d"], ["0x100d1d7d", "test eax, eax", "0x1007c3a2"]]}, {"orig": [["0x100d1d7f", "jne 0xc8"], ["0x100d1d85", "mov eax, dword ptr [ebp - 0x14]"], ["0x100d1d88", "mov edx, dword ptr [ebp + 8]"], ["0x100d1d8b", "mov edi, dword ptr [ebx + 8]"], ["0x100d1d8e", "mov ecx, dword ptr [edx + 0xa4]"], ["0x100d1d94", "mov esi, dword ptr [ecx + 8]"], ["0x100d1d97", "mov ecx, eax"], ["0x100d1d99", "shr ecx, 2"], ["0x100d1d9c", "rep movsd dword ptr es:[edi], dword ptr [esi]"], ["0x100d1d9e", "mov ecx, eax"], ["0x100d1da0", "and ecx, 3"], ["0x100d1da3", "rep movsb byte ptr es:[edi], byte ptr [esi]"], ["0x100d1da5", "mov edx, dword ptr [ebp + 8]"], ["0x100d1da8", "mov ecx, dword ptr [edx + 0xa4]"], ["0x100d1dae", "mov dword ptr [ecx + 0x24], 1"], ["0x100d1db5", "mov ecx, dword ptr [edx + 0xa4]"]], "recomp": [["0x1007c3a4", "jne 0xda"], ["0x1007c3aa", "mov eax, dword ptr [ebp - 0x14]"], ["0x1007c3ad", "mov edx, dword ptr [ebp + 8]"], ["0x1007c3b0", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1007c3b3", "mov edx, dword ptr [edx + 0xa4]"], ["0x1007c3b9", "mov edi, dword ptr [ecx + 8]"], ["0x1007c3bc", "mov esi, dword ptr [edx + 8]"], ["0x1007c3bf", "mov ecx, eax"], ["0x1007c3c1", "shr ecx, 2"], ["0x1007c3c4", "rep movsd dword ptr es:[edi], dword ptr [esi]"], ["0x1007c3c6", "mov ecx, eax"], ["0x1007c3c8", "and ecx, 3"], ["0x1007c3cb", "rep movsb byte ptr es:[edi], byte ptr [esi]"], ["0x1007c3cd", "mov esi, dword ptr [ebp + 8]"], ["0x1007c3d0", "mov eax, dword ptr [esi + 0xa4]"], ["0x1007c3d6", "mov dword ptr [eax + 0x24], 1"], ["0x1007c3dd", "mov ecx, dword ptr [esi + 0xa4]"]]}, {"both": [["0x100d1dbb", "test ecx, ecx", "0x1007c3e3"], ["0x100d1dbd", "je 0x6", "0x1007c3e5"], ["0x100d1dbf", "push 1", "0x1007c3e7"], ["0x100d1dc1", "mov eax, dword ptr [ecx]", "0x1007c3e9"], ["0x100d1dc3", "call dword ptr [eax]", "0x1007c3eb"]]}, {"orig": [["0x100d1dc5", "mov edx, dword ptr [ebp + 8]"], ["0x100d1dc8", "mov dword ptr [ebx + 0x24], 3"]], "recomp": [["0x1007c3ed", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1007c3f0", "mov edx, dword ptr [ebp + 8]"], ["0x1007c3f3", "mov dword ptr [ecx + 0x24], 3"]]}, {"both": [["0x100d1dcf", "mov eax, dword ptr [edx + 0xa0]", "0x1007c3fa"]]}, {"orig": [["0x100d1dd5", "mov dword ptr [edx + 0xa4], ebx"]], "recomp": [["0x1007c400", "mov dword ptr [edx + 0xa4], ecx"]]}, {"both": [["0x100d1ddb", "mov esi, dword ptr [eax + 0x14]", "0x1007c406"], ["0x100d1dde", "mov edi, dword ptr [eax + 8]", "0x1007c409"], ["0x100d1de1", "push edi", "0x1007c40c"], ["0x100d1de2", "call MxStreamChunk::IntoTime (FUNCTION)", "0x1007c40d"], ["0x100d1de7", "add esp, 4", "0x1007c412"], ["0x100d1dea", "mov edx, dword ptr [ebp + 8]", "0x1007c415"], ["0x100d1ded", "mov ecx, dword ptr [edx + 0x9c]", "0x1007c418"], ["0x100d1df3", "cmp dword ptr [eax], ecx", "0x1007c41e"]]}, {"orig": [["0x100d1df5", "jg 0x14"], ["0x100d1df7", "mov eax, dword ptr [edi + 4]"]], "recomp": [["0x1007c420", "jg 0x20"], ["0x1007c422", "mov eax, dword ptr [ebx + 4]"]]}, {"both": [["0x100d1dfa", "mov ecx, eax", "0x1007c425"], ["0x100d1dfc", "and ecx, 1", "0x1007c427"]]}, {"orig": [["0x100d1dff", "add eax, ecx"], ["0x100d1e01", "lea esi, [eax + esi + 8]"], ["0x100d1e05", "lea edi, [eax + edi + 8]"], ["0x100d1e09", "jmp -0x2a"]], "recomp": [["0x1007c42a", "add ecx, eax"], ["0x1007c42c", "add ecx, 8"], ["0x1007c42f", "add ebx, ecx"], ["0x1007c431", "mov eax, dword ptr [ebx + 4]"], ["0x1007c434", "mov ecx, eax"], ["0x1007c436", "and ecx, 1"], ["0x1007c439", "add ecx, eax"], ["0x1007c43b", "add ecx, 8"], ["0x1007c43e", "add esi, ecx"], ["0x1007c440", "jmp -0x36"]]}, {"both": [["0x100d1e0b", "mov edx, dword ptr [ebp + 8]", "0x1007c442"], ["0x100d1e0e", "mov ecx, dword ptr [edx + 0xa0]", "0x1007c445"], ["0x100d1e14", "mov dword ptr [edx + 0x94], esi", "0x1007c44b"], ["0x100d1e1a", "test ecx, ecx", "0x1007c451"], ["0x100d1e1c", "mov eax, dword ptr [ecx + 0x14]", "0x1007c453"], ["0x100d1e1f", "mov dword ptr [edx + 0x98], eax", "0x1007c456"], ["0x100d1e25", "je 0x6", "0x1007c45c"], ["0x100d1e27", "push 1", "0x1007c45e"], ["0x100d1e29", "mov eax, dword ptr [ecx]", "0x1007c460"], ["0x100d1e2b", "call dword ptr [eax]", "0x1007c462"], ["0x100d1e2d", "mov edx, dword ptr [ebp + 8]", "0x1007c464"]]}, {"orig": [["0x100d1e30", "mov eax, dword ptr [ebp - 0x18]"]], "recomp": [["0x1007c467", "mov eax, dword ptr [ebp - 0x1c]"]]}, {"both": [["0x100d1e33", "push edx", "0x1007c46a"], ["0x100d1e34", "mov dword ptr [edx + 0xa0], 0", "0x1007c46b"], ["0x100d1e3e", "mov ecx, dword ptr [eax + 8]", "0x1007c475"], ["0x100d1e41", "call MxDiskStreamController::FUN_100c7890 (FUNCTION)", "0x1007c478"], ["0x100d1e46", "xor eax, eax", "0x1007c47d"]]}, {"orig": [["0x100d1e48", "jmp -0x2cd"], ["0x100d1e4d", "test ebx, ebx"], ["0x100d1e4f", "je -0x2da"], ["0x100d1e55", "push 1"], ["0x100d1e57", "mov eax, dword ptr [ebx]"], ["0x100d1e59", "mov ecx, ebx"], ["0x100d1e5b", "call dword ptr [eax]"], ["0x100d1e5d", "jmp -0x2e7"], ["0x100d1e62", "mov eax, dword ptr [ebp - 0x10]"]], "recomp": [["0x1007c47f", "jmp -0x2e4"], ["0x1007c484", "cmp dword ptr [ebp - 0x10], 0"], ["0x1007c488", "je -0x2f3"], ["0x1007c48e", "push 1"], ["0x1007c490", "mov ecx, dword ptr [ebp - 0x10]"], ["0x1007c493", "mov eax, dword ptr [ecx]"], ["0x1007c495", "call dword ptr [eax]"], ["0x1007c497", "jmp -0x301"], ["0x1007c49c", "mov eax, dword ptr [ebp - 0x18]"]]}, {"both": [["0x100d1e65", "push eax", "0x1007c49f"], ["0x100d1e66", "call ??3@YAXPAX@Z (FUNCTION)", "0x1007c4a0"], ["0x100d1e6b", "add esp, 4", "0x1007c4a5"], ["0x100d1e6e", "ret ", "0x1007c4a8"], ["0x100d1e6f", "mov eax, <OFFSET12>", "0x1007c4a9"], ["0x100d1e74", "jmp ___CxxFrameHandler (FUNCTION)", "0x1007c4ae"], ["0x100d1e79", "mov eax, dword ptr [ebp - 0x14]", "0x1007c4b3"], ["0x100d1e7c", "push eax", "0x1007c4b6"], ["0x100d1e7d", "call ??3@YAXPAX@Z (FUNCTION)", "0x1007c4b7"], ["0x100d1e82", "add esp, 4", "0x1007c4bc"], ["0x100d1e85", "ret ", "0x1007c4bf"]]}, {"orig": [["0x100d1e86", "int3 "], ["0x100d1e87", "int3 "], ["0x100d1e88", "int3 "], ["0x100d1e89", "int3 "], ["0x100d1e8a", "int3 "], ["0x100d1e8b", "int3 "], ["0x100d1e8c", "int3 "], ["0x100d1e8d", "int3 "], ["0x100d1e8e", "int3 "], ["0x100d1e8f", "int3 "], ["0x100d1e90", "mov ecx, dword ptr [ecx + 0xc]"], ["0x100d1e93", "mov eax, dword ptr [ecx]"], ["0x100d1e95", "jmp dword ptr [eax + 0x28]"], ["0x100d1e98", "int3 "], ["0x100d1e99", "int3 "], ["0x100d1e9a", "int3 "], ["0x100d1e9b", "int3 "], ["0x100d1e9c", "int3 "], ["0x100d1e9d", "int3 "], ["0x100d1e9e", "int3 "], ["0x100d1e9f", "int3 "]], "recomp": []}]]]}, {"address": "0x100d1e90", "recomp": "0x1007c4c0", "name": "MxDiskStreamProvider::GetFileSize", "matching": 1.0, "diff": []}, {"address": "0x100d1ea0", "recomp": "0x1007c4d0", "name": "MxDiskStreamProvider::GetStreamBuffersNum", "matching": 1.0, "diff": []}, {"address": "0x100d1eb0", "recomp": "0x1007c4e0", "name": "MxDiskStreamProvider::GetLengthInDWords", "matching": 1.0, "diff": []}, {"address": "0x100d1ec0", "recomp": "0x1007c4f0", "name": "MxDiskStreamProvider::GetBufferForDWords", "matching": 1.0, "diff": []}, {"address": "0x100d1ed0", "recomp": "0x10096d60", "name": "_strnicmp", "matching": 0.9215686274509803, "diff": [["@@ -0x100d1ed0,21 +0x10096d60,21 @@", [{"both": [["0x100d1ed0", "push ebp", "0x10096d60"], ["0x100d1ed1", "mov ebp, esp", "0x10096d61"], ["0x100d1ed3", "push edi", "0x10096d63"], ["0x100d1ed4", "push esi", "0x10096d64"], ["0x100d1ed5", "push ebx", "0x10096d65"], ["0x100d1ed6", "mov ecx, dword ptr [ebp + 0x10]", "0x10096d66"], ["0x100d1ed9", "or ecx, ecx", "0x10096d69"], ["0x100d1edb", "je 0xdc", "0x10096d6b"], ["0x100d1ee1", "mov esi, dword ptr [ebp + 8]", "0x10096d71"], ["0x100d1ee4", "mov edi, dword ptr [ebp + 0xc]", "0x10096d74"]]}, {"orig": [["0x100d1ee7", "lea eax, [<OFFSET1>]"]], "recomp": [["0x10096d77", "lea eax, [___lc_handle (UNK)]"]]}, {"both": [["0x100d1eed", "cmp dword ptr [eax + 8], 0", "0x10096d7d"], ["0x100d1ef1", "jne 0x4b", "0x10096d81"], ["0x100d1ef3", "mov bh, 0x41", "0x10096d83"], ["0x100d1ef5", "mov bl, 0x5a", "0x10096d85"], ["0x100d1ef7", "mov dh, 0x20", "0x10096d87"], ["0x100d1ef9", "mov eax, eax", "0x10096d89"], ["0x100d1efc", "mov ah, byte ptr [esi]", "0x10096d8c"], ["0x100d1efe", "or ah, ah", "0x10096d8e"], ["0x100d1f00", "mov al, byte ptr [edi]", "0x10096d90"], ["0x100d1f02", "je 0x21", "0x10096d92"]]}]], ["@@ -0x100d1f20,66 +0x10096db0,66 @@", [{"both": [["0x100d1f20", "jne 0xd", "0x10096db0"], ["0x100d1f22", "dec ecx", "0x10096db2"], ["0x100d1f23", "jne -0x29", "0x10096db3"], ["0x100d1f25", "xor ecx, ecx", "0x10096db5"], ["0x100d1f27", "cmp ah, al", "0x10096db7"], ["0x100d1f29", "je 0x8e", "0x10096db9"], ["0x100d1f2f", "mov ecx, 0xffffffff", "0x10096dbf"], ["0x100d1f34", "jb 0x83", "0x10096dc4"], ["0x100d1f3a", "neg ecx", "0x10096dca"], ["0x100d1f3c", "jmp 0x7f", "0x10096dcc"]]}, {"orig": [["0x100d1f3e", "cmp dword ptr [<OFFSET2>], 0"]], "recomp": [["0x10096dce", "cmp dword ptr [___setlc_active (UNK)], 0"]]}, {"both": [["0x100d1f45", "jg 0xa", "0x10096dd5"]]}, {"orig": [["0x100d1f47", "inc dword ptr [<OFFSET3>]"]], "recomp": [["0x10096dd7", "inc dword ptr [___unguarded_readlc_active (UNK)]"]]}, {"both": [["0x100d1f4d", "push 0", "0x10096ddd"], ["0x100d1f4f", "jmp 0x12", "0x10096ddf"], ["0x100d1f51", "mov ebx, ecx", "0x10096de1"], ["0x100d1f53", "push 0x13", "0x10096de3"]]}, {"orig": [["0x100d1f55", "call <OFFSET4>"]], "recomp": [["0x10096de5", "call __lock (UNK)"]]}, {"both": [["0x100d1f5a", "mov dword ptr [esp], 1", "0x10096dea"], ["0x100d1f61", "mov ecx, ebx", "0x10096df1"], ["0x100d1f63", "xor eax, eax", "0x10096df3"], ["0x100d1f65", "xor ebx, ebx", "0x10096df5"], ["0x100d1f67", "nop ", "0x10096df7"], ["0x100d1f68", "mov al, byte ptr [esi]", "0x10096df8"], ["0x100d1f6a", "or eax, eax", "0x10096dfa"], ["0x100d1f6c", "mov bl, byte ptr [edi]", "0x10096dfc"], ["0x100d1f6e", "je 0x23", "0x10096dfe"], ["0x100d1f70", "or ebx, ebx", "0x10096e00"], ["0x100d1f72", "je 0x1f", "0x10096e02"], ["0x100d1f74", "inc esi", "0x10096e04"], ["0x100d1f75", "inc edi", "0x10096e05"], ["0x100d1f76", "push ecx", "0x10096e06"], ["0x100d1f77", "push eax", "0x10096e07"], ["0x100d1f78", "push ebx", "0x10096e08"]]}, {"orig": [["0x100d1f79", "call <OFFSET5>"]], "recomp": [["0x10096e09", "call __tolower_lk (UNK)"]]}, {"both": [["0x100d1f7e", "mov ebx, eax", "0x10096e0e"], ["0x100d1f80", "add esp, 4", "0x10096e10"]]}, {"orig": [["0x100d1f83", "call <OFFSET5>"]], "recomp": [["0x10096e13", "call __tolower_lk (UNK)"]]}, {"both": [["0x100d1f88", "add esp, 4", "0x10096e18"], ["0x100d1f8b", "pop ecx", "0x10096e1b"], ["0x100d1f8c", "cmp eax, ebx", "0x10096e1c"], ["0x100d1f8e", "jne 0x9", "0x10096e1e"], ["0x100d1f90", "dec ecx", "0x10096e20"], ["0x100d1f91", "jne -0x2b", "0x10096e21"], ["0x100d1f93", "xor ecx, ecx", "0x10096e23"], ["0x100d1f95", "cmp eax, ebx", "0x10096e25"], ["0x100d1f97", "je 0x9", "0x10096e27"], ["0x100d1f99", "mov ecx, 0xffffffff", "0x10096e29"], ["0x100d1f9e", "jb 0x2", "0x10096e2e"], ["0x100d1fa0", "neg ecx", "0x10096e30"], ["0x100d1fa2", "pop eax", "0x10096e32"], ["0x100d1fa3", "or eax, eax", "0x10096e33"], ["0x100d1fa5", "jne 0x8", "0x10096e35"]]}, {"orig": [["0x100d1fa7", "dec dword ptr [<OFFSET3>]"]], "recomp": [["0x10096e37", "dec dword ptr [___unguarded_readlc_active (UNK)]"]]}, {"both": [["0x100d1fad", "jmp 0xe", "0x10096e3d"], ["0x100d1faf", "mov ebx, ecx", "0x10096e3f"], ["0x100d1fb1", "push 0x13", "0x10096e41"]]}, {"orig": [["0x100d1fb3", "call <OFFSET6>"]], "recomp": [["0x10096e43", "call __unlock (UNK)"]]}, {"both": [["0x100d1fb8", "add esp, 4", "0x10096e48"], ["0x100d1fbb", "mov ecx, ebx", "0x10096e4b"], ["0x100d1fbd", "mov eax, ecx", "0x10096e4d"], ["0x100d1fbf", "pop ebx", "0x10096e4f"], ["0x100d1fc0", "pop esi", "0x10096e50"], ["0x100d1fc1", "pop edi", "0x10096e51"], ["0x100d1fc2", "leave ", "0x10096e52"], ["0x100d1fc3", "ret ", "0x10096e53"]]}]]]}, {"address": "0x100d1fd0", "recomp": "0x10096e60", "name": "_strupr", "matching": 0.9312977099236641, "diff": [["@@ -0x100d1ffd,38 +0x10096e8d,38 @@", [{"both": [["0x100d1ffd", "inc eax", "0x10096e8d"], ["0x100d1ffe", "cmp byte ptr [eax], 0", "0x10096e8e"], ["0x100d2001", "jne -0x17", "0x10096e91"], ["0x100d2003", "mov eax, ebx", "0x10096e93"], ["0x100d2005", "pop ebp", "0x10096e95"], ["0x100d2006", "pop edi", "0x10096e96"], ["0x100d2007", "pop esi", "0x10096e97"], ["0x100d2008", "pop ebx", "0x10096e98"], ["0x100d2009", "add esp, 4", "0x10096e99"], ["0x100d200c", "ret ", "0x10096e9c"]]}, {"orig": [["0x100d200d", "cmp dword ptr [<OFFSET2>], 0"]], "recomp": [["0x10096e9d", "cmp dword ptr [___setlc_active (UNK)], 0"]]}, {"both": [["0x100d2014", "je 0x14", "0x10096ea4"], ["0x100d2016", "push 0x13", "0x10096ea6"]]}, {"orig": [["0x100d2018", "call <OFFSET3>"]], "recomp": [["0x10096ea8", "call __lock (UNK)"]]}, {"both": [["0x100d201d", "mov dword ptr [esp + 0x14], 1", "0x10096ead"], ["0x100d2025", "add esp, 4", "0x10096eb5"], ["0x100d2028", "jmp 0xe", "0x10096eb8"], ["0x100d202a", "mov dword ptr [esp + 0x10], 0", "0x10096eba"]]}, {"orig": [["0x100d2032", "inc dword ptr [<OFFSET4>]"]], "recomp": [["0x10096ec2", "inc dword ptr [___unguarded_readlc_active (UNK)]"]]}, {"both": [["0x100d2038", "cmp dword ptr [<OFFSET1>], 0", "0x10096ec8"], ["0x100d203f", "jne 0x45", "0x10096ecf"], ["0x100d2041", "cmp dword ptr [esp + 0x10], 0", "0x10096ed1"], ["0x100d2046", "je 0xc", "0x10096ed6"], ["0x100d2048", "push 0x13", "0x10096ed8"]]}, {"orig": [["0x100d204a", "call <OFFSET5>"]], "recomp": [["0x10096eda", "call __unlock (UNK)"]]}, {"both": [["0x100d204f", "add esp, 4", "0x10096edf"], ["0x100d2052", "jmp 0x6", "0x10096ee2"]]}, {"orig": [["0x100d2054", "dec dword ptr [<OFFSET4>]"]], "recomp": [["0x10096ee4", "dec dword ptr [___unguarded_readlc_active (UNK)]"]]}, {"both": [["0x100d205a", "mov ebx, dword ptr [esp + 0x18]", "0x10096eea"], ["0x100d205e", "mov eax, ebx", "0x10096eee"], ["0x100d2060", "cmp byte ptr [ebx], 0", "0x10096ef0"], ["0x100d2063", "je 0x17", "0x10096ef3"], ["0x100d2065", "mov cl, byte ptr [eax]", "0x10096ef5"], ["0x100d2067", "cmp cl, 0x61", "0x10096ef7"], ["0x100d206a", "jl 0xa", "0x10096efa"], ["0x100d206c", "cmp cl, 0x7a", "0x10096efc"], ["0x100d206f", "jg 0x5", "0x10096eff"], ["0x100d2071", "sub cl, 0x20", "0x10096f01"]]}]], ["@@ -0x100d2085,64 +0x10096f15,64 @@", [{"both": [["0x100d2085", "ret ", "0x10096f15"], ["0x100d2086", "mov ebx, dword ptr [esp + 0x18]", "0x10096f16"], ["0x100d208a", "push 0", "0x10096f1a"], ["0x100d208c", "push 0", "0x10096f1c"], ["0x100d208e", "mov eax, dword ptr [<OFFSET1>]", "0x10096f1e"], ["0x100d2093", "push 0", "0x10096f23"], ["0x100d2095", "push -1", "0x10096f25"], ["0x100d2097", "push ebx", "0x10096f27"], ["0x100d2098", "push 0x200", "0x10096f28"], ["0x100d209d", "push eax", "0x10096f2d"]]}, {"orig": [["0x100d209e", "call <OFFSET6>"]], "recomp": [["0x10096f2e", "call ___crtLCMapStringA (UNK)"]]}, {"both": [["0x100d20a3", "add esp, 0x1c", "0x10096f33"], ["0x100d20a6", "mov esi, eax", "0x10096f36"], ["0x100d20a8", "test esi, esi", "0x10096f38"], ["0x100d20aa", "je 0x4e", "0x10096f3a"], ["0x100d20ac", "push esi", "0x10096f3c"], ["0x100d20ad", "call _malloc (FUNCTION)", "0x10096f3d"], ["0x100d20b2", "add esp, 4", "0x10096f42"], ["0x100d20b5", "mov ebp, eax", "0x10096f45"], ["0x100d20b7", "test ebp, ebp", "0x10096f47"], ["0x100d20b9", "je 0x3f", "0x10096f49"], ["0x100d20bb", "push 0", "0x10096f4b"], ["0x100d20bd", "mov eax, dword ptr [<OFFSET1>]", "0x10096f4d"], ["0x100d20c2", "push esi", "0x10096f52"], ["0x100d20c3", "push ebp", "0x10096f53"], ["0x100d20c4", "push -1", "0x10096f54"], ["0x100d20c6", "push ebx", "0x10096f56"], ["0x100d20c7", "push 0x200", "0x10096f57"], ["0x100d20cc", "push eax", "0x10096f5c"]]}, {"orig": [["0x100d20cd", "call <OFFSET6>"]], "recomp": [["0x10096f5d", "call ___crtLCMapStringA (UNK)"]]}, {"both": [["0x100d20d2", "add esp, 0x1c", "0x10096f62"], ["0x100d20d5", "test eax, eax", "0x10096f65"], ["0x100d20d7", "je 0x21", "0x10096f67"], ["0x100d20d9", "mov edi, ebp", "0x10096f69"], ["0x100d20db", "mov ecx, 0xffffffff", "0x10096f6b"], ["0x100d20e0", "sub eax, eax", "0x10096f70"], ["0x100d20e2", "repne scasb al, byte ptr es:[edi]", "0x10096f72"], ["0x100d20e4", "not ecx", "0x10096f74"], ["0x100d20e6", "sub edi, ecx", "0x10096f76"], ["0x100d20e8", "mov eax, ecx", "0x10096f78"], ["0x100d20ea", "shr ecx, 2", "0x10096f7a"], ["0x100d20ed", "mov esi, edi", "0x10096f7d"], ["0x100d20ef", "mov edi, ebx", "0x10096f7f"], ["0x100d20f1", "rep movsd dword ptr es:[edi], dword ptr [esi]", "0x10096f81"], ["0x100d20f3", "mov ecx, eax", "0x10096f83"], ["0x100d20f5", "and ecx, 3", "0x10096f85"], ["0x100d20f8", "rep movsb byte ptr es:[edi], byte ptr [esi]", "0x10096f88"], ["0x100d20fa", "cmp dword ptr [esp + 0x10], 0", "0x10096f8a"], ["0x100d20ff", "je 0xc", "0x10096f8f"], ["0x100d2101", "push 0x13", "0x10096f91"]]}, {"orig": [["0x100d2103", "call <OFFSET5>"]], "recomp": [["0x10096f93", "call __unlock (UNK)"]]}, {"both": [["0x100d2108", "add esp, 4", "0x10096f98"], ["0x100d210b", "jmp 0x6", "0x10096f9b"]]}, {"orig": [["0x100d210d", "dec dword ptr [<OFFSET4>]"]], "recomp": [["0x10096f9d", "dec dword ptr [___unguarded_readlc_active (UNK)]"]]}, {"both": [["0x100d2113", "push ebp", "0x10096fa3"], ["0x100d2114", "call _free (FUNCTION)", "0x10096fa4"], ["0x100d2119", "add esp, 4", "0x10096fa9"], ["0x100d211c", "mov eax, ebx", "0x10096fac"], ["0x100d211e", "pop ebp", "0x10096fae"], ["0x100d211f", "pop edi", "0x10096faf"], ["0x100d2120", "pop esi", "0x10096fb0"], ["0x100d2121", "pop ebx", "0x10096fb1"], ["0x100d2122", "add esp, 4", "0x10096fb2"], ["0x100d2125", "ret ", "0x10096fb5"]]}]]]}, {"address": "0x100d2130", "recomp": "0x100840f0", "name": "_vsprintf", "matching": 0.9411764705882353, "diff": [["@@ -0x100d213b,31 +0x100840fb,31 @@", [{"both": [["0x100d213b", "push esi", "0x100840fb"], ["0x100d213c", "mov edx, dword ptr [esp + 0x2c]", "0x100840fc"], ["0x100d2140", "push ecx", "0x10084100"], ["0x100d2141", "mov dword ptr [esp + 0x14], 0x42", "0x10084101"], ["0x100d2149", "mov dword ptr [esp + 0x10], eax", "0x10084109"], ["0x100d214d", "push edx", "0x1008410d"], ["0x100d214e", "mov dword ptr [esp + 0xc], eax", "0x1008410e"], ["0x100d2152", "lea eax, [esp + 0xc]", "0x10084112"], ["0x100d2156", "mov dword ptr [esp + 0x10], 0x7fffffff", "0x10084116"], ["0x100d215e", "push eax", "0x1008411e"]]}, {"orig": [["0x100d215f", "call <OFFSET1>"]], "recomp": [["0x1008411f", "call __output (UNK)"]]}, {"both": [["0x100d2164", "add esp, 0xc", "0x10084124"], ["0x100d2167", "mov esi, eax", "0x10084127"], ["0x100d2169", "dec dword ptr [esp + 8]", "0x10084129"], ["0x100d216d", "js 0x12", "0x1008412d"], ["0x100d216f", "mov eax, dword ptr [esp + 4]", "0x1008412f"], ["0x100d2173", "mov byte ptr [eax], 0", "0x10084133"], ["0x100d2176", "mov eax, esi", "0x10084136"], ["0x100d2178", "inc dword ptr [esp + 4]", "0x10084138"], ["0x100d217c", "pop esi", "0x1008413c"], ["0x100d217d", "add esp, 0x20", "0x1008413d"], ["0x100d2180", "ret ", "0x10084140"], ["0x100d2181", "lea eax, [esp + 4]", "0x10084141"], ["0x100d2185", "push eax", "0x10084145"], ["0x100d2186", "push 0", "0x10084146"]]}, {"orig": [["0x100d2188", "call <OFFSET2>"]], "recomp": [["0x10084148", "call __flsbuf (UNK)"]]}, {"both": [["0x100d218d", "add esp, 8", "0x1008414d"], ["0x100d2190", "mov eax, esi", "0x10084150"], ["0x100d2192", "pop esi", "0x10084152"], ["0x100d2193", "add esp, 0x20", "0x10084153"], ["0x100d2196", "ret ", "0x10084156"]]}]]]}, {"address": "0x100d21c2", "recomp": "0x100840c2", "name": "__CIpow", "matching": 0.0, "diff": [["@@ -0x100d21c2,2 +0x100840c2,2 @@", [{"orig": [["0x100d21c2", "mov edx, <OFFSET1>"], ["0x100d21c7", "jmp -0x4443c"]], "recomp": [["0x100840c2", "mov edx, __OP_POWjmptab (UNK)"], ["0x100840c7", "jmp __cintrindisp2 (UNK)"]]}]]]}, {"address": "0x100d21f0", "recomp": "0x10084430", "name": "_strstr", "matching": 0.9848484848484849, "diff": [["@@ -0x100d224b,21 +0x1008448b,21 @@", [{"both": [["0x100d224b", "mov ah, byte ptr [esi - 1]", "0x1008448b"], ["0x100d224e", "add ecx, 2", "0x1008448e"], ["0x100d2251", "cmp al, ah", "0x10084491"], ["0x100d2253", "je -0x21", "0x10084493"], ["0x100d2255", "jmp -0x4f", "0x10084495"], ["0x100d2257", "xor eax, eax", "0x10084497"], ["0x100d2259", "pop esi", "0x10084499"], ["0x100d225a", "pop ebx", "0x1008449a"], ["0x100d225b", "pop edi", "0x1008449b"], ["0x100d225c", "mov al, dl", "0x1008449c"]]}, {"orig": [["0x100d225e", "jmp -0x3a74d"]], "recomp": [["0x1008449e", "jmp ___from_strstr_to_strchr (UNK)"]]}, {"both": [["0x100d2263", "lea eax, [edi - 1]", "0x100844a3"], ["0x100d2266", "pop esi", "0x100844a6"], ["0x100d2267", "pop ebx", "0x100844a7"], ["0x100d2268", "pop edi", "0x100844a8"], ["0x100d2269", "ret ", "0x100844a9"], ["0x100d226a", "mov eax, edi", "0x100844aa"], ["0x100d226c", "pop esi", "0x100844ac"], ["0x100d226d", "pop ebx", "0x100844ad"], ["0x100d226e", "pop edi", "0x100844ae"], ["0x100d226f", "ret ", "0x100844af"]]}]]]}, {"address": "0x100d2270", "recomp": "0x10084580", "name": "__beginthreadex", "matching": 0.9333333333333333, "diff": [["@@ -0x100d2270,22 +0x10084580,22 @@", [{"both": [["0x100d2270", "push esi", "0x10084580"], ["0x100d2271", "push edi", "0x10084581"], ["0x100d2272", "xor edi, edi", "0x10084582"], ["0x100d2274", "push 0x74", "0x10084584"], ["0x100d2276", "push 1", "0x10084586"]]}, {"orig": [["0x100d2278", "call <OFFSET1>"]], "recomp": [["0x10084588", "call _calloc (UNK)"]]}, {"both": [["0x100d227d", "add esp, 8", "0x1008458d"], ["0x100d2280", "mov esi, eax", "0x10084590"], ["0x100d2282", "cmp esi, edi", "0x10084592"], ["0x100d2284", "je 0x4a", "0x10084594"], ["0x100d2286", "push esi", "0x10084596"]]}, {"orig": [["0x100d2287", "call <OFFSET2>"]], "recomp": [["0x10084597", "call __initptd (UNK)"]]}, {"both": [["0x100d228c", "mov eax, dword ptr [esp + 0x18]", "0x1008459c"], ["0x100d2290", "mov ecx, dword ptr [esp + 0x1c]", "0x100845a0"], ["0x100d2294", "mov edx, dword ptr [esp + 0x24]", "0x100845a4"], ["0x100d2298", "add esp, 4", "0x100845a8"], ["0x100d229b", "mov dword ptr [esi + 0x48], eax", "0x100845ab"], ["0x100d229e", "push edx", "0x100845ae"], ["0x100d229f", "mov eax, dword ptr [esp + 0x20]", "0x100845af"], ["0x100d22a3", "mov dword ptr [esi + 0x4c], ecx", "0x100845b3"], ["0x100d22a6", "mov ecx, dword ptr [esp + 0x14]", "0x100845b6"], ["0x100d22aa", "push eax", "0x100845ba"]]}]], ["@@ -0x100d22c4,16 +0x100845d4,16 @@", [{"both": [["0x100d22c4", "test eax, eax", "0x100845d4"], ["0x100d22c6", "jne 0x20", "0x100845d6"], ["0x100d22c8", "call dword ptr [__imp__GetLastError@0 (POINTER)]", "0x100845d8"], ["0x100d22ce", "mov edi, eax", "0x100845de"], ["0x100d22d0", "push esi", "0x100845e0"], ["0x100d22d1", "call _free (FUNCTION)", "0x100845e1"], ["0x100d22d6", "add esp, 4", "0x100845e6"], ["0x100d22d9", "test edi, edi", "0x100845e9"], ["0x100d22db", "je 0x9", "0x100845eb"], ["0x100d22dd", "push edi", "0x100845ed"]]}, {"orig": [["0x100d22de", "call <OFFSET7>"]], "recomp": [["0x100845ee", "call __dosmaperr (UNK)"]]}, {"both": [["0x100d22e3", "add esp, 4", "0x100845f3"], ["0x100d22e6", "xor eax, eax", "0x100845f6"], ["0x100d22e8", "pop edi", "0x100845f8"], ["0x100d22e9", "pop esi", "0x100845f9"], ["0x100d22ea", "ret ", "0x100845fa"]]}]]]}, {"address": "0x100d3740", "recomp": "0x10056410", "name": "LegoBox::Read", "matching": 1.0, "diff": []}, {"address": "0x100d3770", "recomp": "0x10056440", "name": "LegoSphere::Read", "matching": 1.0, "diff": []}, {"address": "0x100d37b0", "recomp": "0x10056480", "name": "LegoVertex::LegoVertex", "matching": 1.0, "diff": []}, {"address": "0x100d37c0", "recomp": "0x10056490", "name": "LegoVertex::Read", "matching": 1.0, "diff": []}, {"address": "0x100d3810", "recomp": "0x100564e0", "name": "LegoMesh::LegoMesh", "matching": 1.0, "diff": []}, {"address": "0x100d3840", "recomp": "0x10056510", "name": "LegoMesh::`scalar deleting destructor'", "matching": 1.0, "diff": []}, {"address": "0x100d3860", "recomp": "0x10056530", "name": "LegoMesh::~LegoMesh", "matching": 1.0, "diff": []}, {"address": "0x100d38f0", "recomp": "0x100565c0", "name": "LegoMesh::Read", "matching": 1.0, "diff": []}, {"address": "0x100d3a20", "recomp": "0x10059710", "name": "LegoColor::Read", "matching": 0.7058823529411765, "diff": [["@@ -0x100d3a20,34 +0x10059710,34 @@", [{"both": [["0x100d3a20", "push ebx", "0x10059710"], ["0x100d3a21", "push esi", "0x10059711"]]}, {"orig": [["0x100d3a22", "mov esi, dword ptr [esp + 0xc]"]], "recomp": []}, {"both": [["0x100d3a26", "push edi", "0x10059712"]]}, {"orig": [["0x100d3a27", "mov edi, ecx"]], "recomp": [["0x10059713", "mov esi, ecx"], ["0x10059715", "mov edi, dword ptr [esp + 0x10]"]]}, {"both": [["0x100d3a29", "push 1", "0x10059719"]]}, {"orig": [["0x100d3a2b", "mov eax, dword ptr [esi]"], ["0x100d3a2d", "push edi"], ["0x100d3a2e", "mov ecx, esi"]], "recomp": [["0x1005971b", "mov eax, dword ptr [edi]"], ["0x1005971d", "push esi"], ["0x1005971e", "mov ecx, edi"]]}, {"both": [["0x100d3a30", "mov ebx, dword ptr [eax + 4]", "0x10059720"], ["0x100d3a33", "call ebx", "0x10059723"], ["0x100d3a35", "test eax, eax", "0x10059725"], ["0x100d3a37", "jne 0x27", "0x10059727"], ["0x100d3a39", "push 1", "0x10059729"]]}, {"orig": [["0x100d3a3b", "lea eax, [edi + 1]"]], "recomp": [["0x1005972b", "lea eax, [esi + 1]"]]}, {"both": [["0x100d3a3e", "push eax", "0x1005972e"]]}, {"orig": [["0x100d3a3f", "mov ecx, esi"]], "recomp": [["0x1005972f", "mov ecx, edi"]]}, {"both": [["0x100d3a41", "call ebx", "0x10059731"], ["0x100d3a43", "test eax, eax", "0x10059733"], ["0x100d3a45", "jne 0x19", "0x10059735"], ["0x100d3a47", "push 1", "0x10059737"]]}, {"orig": [["0x100d3a49", "add edi, 2"], ["0x100d3a4c", "push edi"], ["0x100d3a4d", "mov ecx, esi"]], "recomp": [["0x10059739", "add esi, 2"], ["0x1005973c", "push esi"], ["0x1005973d", "mov ecx, edi"]]}, {"both": [["0x100d3a4f", "call ebx", "0x1005973f"], ["0x100d3a51", "mov ecx, 0", "0x10059741"], ["0x100d3a56", "cmp eax, 1", "0x10059746"], ["0x100d3a59", "adc ecx, -1", "0x10059749"], ["0x100d3a5c", "and ecx, eax", "0x1005974c"], ["0x100d3a5e", "mov eax, ecx", "0x1005974e"], ["0x100d3a60", "pop edi", "0x10059750"], ["0x100d3a61", "pop esi", "0x10059751"], ["0x100d3a62", "pop ebx", "0x10059752"], ["0x100d3a63", "ret 4", "0x10059753"]]}]]]}, {"address": "0x100d4018", "recomp": "0x100a0be0", "name": "Score::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d40f8", "recomp": "0x1009cc50", "name": "Helicopter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d41e8", "recomp": "0x1009cbb0", "name": "Mx4DPointFloat::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4288", "recomp": "0x1009c130", "name": "Vector2::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4300", "recomp": "0x1009cb18", "name": "MxMatrix::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4350", "recomp": "0x1009cb68", "name": "Matrix4::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4398", "recomp": "0x1009c6e8", "name": "IslePathActor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4488", "recomp": "0x1009c080", "name": "Mx3DPointFloat::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4518", "recomp": "0x1009c1a8", "name": "Vector3::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d45a0", "recomp": "0x1009cd40", "name": "Vector4::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4650", "recomp": "0x100a07b0", "name": "GasStation::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d46c0", "recomp": "0x1009c110", "name": "LegoState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d46e0", "recomp": "0x1009f3a0", "name": "GasStationState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4718", "recomp": "0x1009d4b0", "name": "LegoCacheSound::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4768", "recomp": "0x1009db10", "name": "LegoObjectFactory::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4788", "recomp": "0x1009e010", "name": "Doors::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4858", "recomp": "0x1009cf40", "name": "LegoEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d48a8", "recomp": "0x1009e0e0", "name": "RaceStandsEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4900", "recomp": "0x1009deb0", "name": "LegoLoopingAnimPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d49a8", "recomp": "0x1009d668", "name": "MxWavePresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4a18", "recomp": "0x1009dd60", "name": "BeachHouseEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4a70", "recomp": "0x1009db30", "name": "LegoAct2State::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4a90", "recomp": "0x1009e3d8", "name": "JukeBoxState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4ab0", "recomp": "0x1009e448", "name": "PoliceEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4b08", "recomp": "0x1009d6d8", "name": "MxSoundPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4b70", "recomp": "0x1009e2a8", "name": "CarRaceState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4b90", "recomp": "0x1009dbb0", "name": "InfoCenterEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4be8", "recomp": "0x1009e4a0", "name": "MxVideoPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4c70", "recomp": "0x1009d4d8", "name": "MxAudioPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4cd8", "recomp": "0x1009d598", "name": "MxMediaPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4d38", "recomp": "0x1009d540", "name": "MxPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4d90", "recomp": "0x1009e138", "name": "LegoTexturePresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4df0", "recomp": "0x1009df58", "name": "LegoPartPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4e50", "recomp": "0x1009e2e8", "name": "LegoModelPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4fa8", "recomp": "0x1009e1b8", "name": "JetskiRaceState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4fc8", "recomp": "0x1009e198", "name": "Act3State::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d4fe8", "recomp": "0x1009de30", "name": "JetskiRace::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5068", "recomp": "0x1009dce8", "name": "HospitalEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5118", "recomp": "0x1009e248", "name": "LegoActionControlPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5178", "recomp": "0x1009d118", "name": "IsleActor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5200", "recomp": "0x1009db50", "name": "JailEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5258", "recomp": "0x1009ddb8", "name": "GasStationEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d52b0", "recomp": "0x1009e1d8", "name": "Lego3DWavePresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5320", "recomp": "0x1009dc78", "name": "LegoActorPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5390", "recomp": "0x1009cf90", "name": "MxEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d53a8", "recomp": "0x1009e3f8", "name": "Act2PoliceStation::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d53f8", "recomp": "0x1009dd40", "name": "ScoreState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5418", "recomp": "0x1009de10", "name": "HelicopterState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5520", "recomp": "0x1009e370", "name": "Pizzeria::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d55f0", "recomp": "0x1009d2b8", "name": "SkateBoard::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d56e0", "recomp": "0x1009d2a0", "name": "MxNotificationParam::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d56e8", "recomp": "0x1009d2a8", "name": "MxParam::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5778", "recomp": "0x1009d78c", "name": "LegoUnknown100d5778::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d57b0", "recomp": "0x1009ea78", "name": "LegoCameraController::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5c88", "recomp": "0x1009d828", "name": "BuildingEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5db0", "recomp": "0x1009f9f0", "name": "LegoRace::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5e30", "recomp": "0x1009fec8", "name": "RaceState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5e50", "recomp": "0x1009f968", "name": "CarRace::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5ee8", "recomp": "0x1009f918", "name": "PizzeriaState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5f20", "recomp": "0x100a0740", "name": "ElevatorBottom::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d5fa8", "recomp": "0x1009d5f8", "name": "LegoLoadCacheSoundPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6280", "recomp": "0x1009f030", "name": "LegoWorld::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d62f0", "recomp": "0x1009f0a0", "name": "MxPtrList<MxPresenter>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6308", "recomp": "0x1009f0b8", "name": "MxPresenterList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6320", "recomp": "0x1009f0d0", "name": "MxPtrList<LegoPathController>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6338", "recomp": "0x1009f0e8", "name": "LegoPathControllerList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6350", "recomp": "0x1009f130", "name": "MxCollection<MxPresenter *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6368", "recomp": "0x1009f148", "name": "MxList<MxPresenter *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6380", "recomp": "0x1009f100", "name": "MxCollection<LegoPathController *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6398", "recomp": "0x1009f118", "name": "MxList<LegoPathController *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d63b0", "recomp": "0x1009f1c0", "name": "MxCollection<LegoCacheSound *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d63c8", "recomp": "0x1009f1d8", "name": "MxList<LegoCacheSound *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d63e0", "recomp": "0x1009f1f0", "name": "MxPtrList<LegoCacheSound>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d63f8", "recomp": "0x1009f208", "name": "LegoCacheSoundList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6410", "recomp": "0x1009f160", "name": "MxCollection<LegoEntity *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6428", "recomp": "0x1009f178", "name": "MxList<LegoEntity *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6440", "recomp": "0x1009f190", "name": "MxPtrList<LegoEntity>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6458", "recomp": "0x1009f1a8", "name": "LegoEntityList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6470", "recomp": "0x1009e7d0", "name": "MxPresenterListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6488", "recomp": "0x1009e7e8", "name": "MxListCursor<MxPresenter *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d64a0", "recomp": "0x1009f250", "name": "MxListCursor<LegoCacheSound *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d64b8", "recomp": "0x1009f268", "name": "MxPtrListCursor<LegoEntity>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d64d0", "recomp": "0x1009f280", "name": "LegoEntityListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d64e8", "recomp": "0x1009f298", "name": "MxListCursor<LegoEntity *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6500", "recomp": "0x1009f220", "name": "MxPtrListCursor<LegoCacheSound>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6518", "recomp": "0x1009f238", "name": "LegoCacheSoundListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6530", "recomp": "0x1009e7b8", "name": "MxPtrListCursor<MxPresenter>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6548", "recomp": "0x1009f2b0", "name": "MxPtrListCursor<LegoPathController>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6560", "recomp": "0x1009f2c8", "name": "LegoPathControllerListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6578", "recomp": "0x1009f2e0", "name": "MxListCursor<LegoPathController *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6658", "recomp": "0x1009d8a8", "name": "LegoCarBuild::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d66e0", "recomp": "0x1009d918", "name": "LegoVehicleBuildState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6758", "recomp": "0x1009e530", "name": "LegoPlantManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6888", "recomp": "0x100a0c50", "name": "MxCollection<ModelDbPart *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d68a0", "recomp": "0x100a0c68", "name": "MxList<ModelDbPart *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d68b8", "recomp": "0x100a0c80", "name": "ModelDbPartList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d68d0", "recomp": "0x1009f370", "name": "MxListCursor<ModelDbPart *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d68e8", "recomp": "0x1009f388", "name": "ModelDbPartListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6918", "recomp": "0x1009d190", "name": "RaceCar::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6a20", "recomp": "0x1009e740", "name": "MxCollection<MxCore *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6a38", "recomp": "0x1009e758", "name": "MxList<MxCore *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6a50", "recomp": "0x1009e6e8", "name": "MxPtrList<MxCore>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6a68", "recomp": "0x1009e700", "name": "LegoNotifyList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6a80", "recomp": "0x1009e728", "name": "LegoControlManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6a98", "recomp": "0x1009e718", "name": "LegoControlManagerEvent::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6aa0", "recomp": "0x1009e720", "name": "LegoEventNotificationParam::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6aa8", "recomp": "0x1009e788", "name": "LegoNotifyListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6ac0", "recomp": "0x1009e7a0", "name": "MxListCursor<MxCore *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6ad8", "recomp": "0x1009e770", "name": "MxPtrListCursor<MxCore>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6b10", "recomp": "0x1009d748", "name": "LegoSoundManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6b4c", "recomp": "0x1009d784", "name": "LegoUnknown100d6b4c::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6d10", "recomp": "0x1009d288", "name": "Radio::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6d28", "recomp": "0x1009f4f8", "name": "RadioState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6d68", "recomp": "0x1009ea00", "name": "LegoActor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6e28", "recomp": "0x1009f7c8", "name": "LegoPathActor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6f50", "recomp": "0x1009d880", "name": "LegoBuildingManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d6fb8", "recomp": "0x100a0a10", "name": "Isle::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7028", "recomp": "0x1009c060", "name": "Act1State::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7090", "recomp": "0x1009cfb8", "name": "Motocycle::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d71a8", "recomp": "0x1009c5f8", "name": "Ambulance::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d72a0", "recomp": "0x1009f3c0", "name": "AmbulanceMissionState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d72d8", "recomp": "0x100a0978", "name": "InfocenterDoor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7380", "recomp": "0x1009d0b0", "name": "Pizza::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7408", "recomp": "0x1009e2c8", "name": "PizzaMissionState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7498", "recomp": "0x1009dac8", "name": "MxVariable::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d74a8", "recomp": "0x1009dab8", "name": "LegoBackgroundColor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d74b8", "recomp": "0x1009dae8", "name": "LegoFullScreenMovie::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7588", "recomp": "0x1009e578", "name": "MxPtrListCursor<LegoWorld>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d75a0", "recomp": "0x1009e590", "name": "LegoWorldListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d75b8", "recomp": "0x1009e5a8", "name": "MxListCursor<LegoWorld *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7a38", "recomp": "0x1009e890", "name": "MxStillPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7ac8", "recomp": "0x1009e800", "name": "LegoMeterPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7b88", "recomp": "0x1009e650", "name": "MxControlPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7c10", "recomp": "0x1009f8b8", "name": "LegoPathPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7c88", "recomp": "0x1009ff08", "name": "LegoUnknown100d7c88::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7d60", "recomp": "0x1009f898", "name": "LegoPathController::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7d80", "recomp": "0x1009ffc8", "name": "LegoStorage::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7de8", "recomp": "0x1009d9e0", "name": "LegoAnimMMPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7e50", "recomp": "0x1009da60", "name": "MxDSActionListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7e68", "recomp": "0x1009da48", "name": "MxListCursor<MxDSAction *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7ea0", "recomp": "0x1009e6c8", "name": "MxTransitionManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7ee0", "recomp": "0x1009d3b8", "name": "TowTrack::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d7fd8", "recomp": "0x1009fee8", "name": "TowTrackMissionState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8040", "recomp": "0x100a04d0", "name": "LegoPhonemePresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8110", "recomp": "0x100a0560", "name": "MxCollection<LegoNamedTexture *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8128", "recomp": "0x100a0578", "name": "MxList<LegoNamedTexture *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8140", "recomp": "0x100a0590", "name": "MxPtrList<LegoNamedTexture>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8158", "recomp": "0x100a05a8", "name": "LegoNamedTextureList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8170", "recomp": "0x100a05f0", "name": "MxListCursor<LegoNamedTexture *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8188", "recomp": "0x100a05c0", "name": "MxPtrListCursor<LegoNamedTexture>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d81a0", "recomp": "0x100a05d8", "name": "LegoNamedTextureListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d82e0", "recomp": "0x1009dc08", "name": "LegoAct2::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8350", "recomp": "0x100a1590", "name": "MxActionNotificationParam::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8358", "recomp": "0x100a15b0", "name": "MxEndActionNotificationParam::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8398", "recomp": "0x1009ec28", "name": "LegoEntityPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d85b8", "recomp": "0x1009ef98", "name": "LegoNavController::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8638", "recomp": "0x1009f5a0", "name": "LegoOmni::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8680", "recomp": "0x1009f660", "name": "LegoWorldList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8698", "recomp": "0x1009f698", "name": "WhoAmIVariable::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d86a8", "recomp": "0x1009f5e8", "name": "CursorVariable::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d86b8", "recomp": "0x1009f5f8", "name": "CameraLocationVariable::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d86c8", "recomp": "0x1009f6a8", "name": "VisibilityVariable::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d86d4", "recomp": "0x1009f604", "name": "LegoContainer<LegoTextureInfo>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d86d8", "recomp": "0x1009f608", "name": "MxTickleManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d86fc", "recomp": "0x1009f690", "name": "LegoTextureContainer::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8700", "recomp": "0x1009f630", "name": "MxCollection<LegoWorld *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8718", "recomp": "0x1009f648", "name": "MxList<LegoWorld *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8730", "recomp": "0x1009f678", "name": "MxPtrList<LegoWorld>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8760", "recomp": "0x1009f438", "name": "LegoInputManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d87b8", "recomp": "0x1009f490", "name": "MxCollection<LegoEventNotificationParam>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d87d0", "recomp": "0x1009f4a8", "name": "MxList<LegoEventNotificationParam>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d87e8", "recomp": "0x1009f4c0", "name": "MxQueue<LegoEventNotificationParam>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8800", "recomp": "0x1009f4d8", "name": "LegoEventQueue::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8958", "recomp": "0x100a0a88", "name": "JukeBox::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d89e0", "recomp": "0x100a0100", "name": "LegoFlcTexturePresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8a80", "recomp": "0x100a0b00", "name": "Police::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8af0", "recomp": "0x1009f940", "name": "PoliceState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8c18", "recomp": "0x1009d960", "name": "LegoAnimationManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8c30", "recomp": "0x1009ffe8", "name": "MxCollection<LegoROI *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8c48", "recomp": "0x100a0000", "name": "MxList<LegoROI *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8c60", "recomp": "0x100a0018", "name": "MxPtrList<LegoROI>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8c78", "recomp": "0x100a0030", "name": "LegoROIList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8c90", "recomp": "0x1009d9c0", "name": "LegoTranInfoList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8ca8", "recomp": "0x1009d978", "name": "MxCollection<LegoTranInfo *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8cc0", "recomp": "0x1009d990", "name": "MxList<LegoTranInfo *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8cd8", "recomp": "0x1009d9a8", "name": "MxPtrList<LegoTranInfo>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8d80", "recomp": "0x1009d938", "name": "AnimState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8dd8", "recomp": "0x1009efc8", "name": "LegoMouseController::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8e08", "recomp": "0x1009eff8", "name": "LegoPointOfViewController::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8ee0", "recomp": "0x1009f300", "name": "LegoWorldPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d8f98", "recomp": "0x1009c9d8", "name": "DuneBuggy::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d90c8", "recomp": "0x1009ff20", "name": "LegoAnimPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9170", "recomp": "0x100a0238", "name": "LegoLocomotionAnimPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9278", "recomp": "0x100a0190", "name": "LegoHideAnimPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9338", "recomp": "0x100a0908", "name": "Infocenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d93a8", "recomp": "0x1009f410", "name": "InfocenterState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9628", "recomp": "0x100a06d0", "name": "Act3::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d96b0", "recomp": "0x1009e5e0", "name": "MxCompositeMediaPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9730", "recomp": "0x100a0898", "name": "Hospital::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d97a0", "recomp": "0x1009f3e8", "name": "HospitalState::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9808", "recomp": "0x1009c7e8", "name": "Bike::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9928", "recomp": "0x100a0b70", "name": "RegistrationBook::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d99e0", "recomp": "0x100a0058", "name": "LegoCarBuildAnimPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9aa0", "recomp": "0x100a02f0", "name": "LegoPalettePresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9b60", "recomp": "0x1009e928", "name": "Act2Brick::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9c88", "recomp": "0x100a0638", "name": "LegoVideoManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9cc8", "recomp": "0x100a0678", "name": "MxDeviceEnumerate100d9cc8::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9cd0", "recomp": "0x100a0680", "name": "MxCollection<LegoUnknown100d7c88 *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9ce8", "recomp": "0x100a0698", "name": "MxList<LegoUnknown100d7c88 *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9d00", "recomp": "0x100a06b0", "name": "LegoUnknown100d9d00::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9d30", "recomp": "0x100a0380", "name": "MxCollection<LegoLOD *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9d48", "recomp": "0x100a0398", "name": "MxList<LegoLOD *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9d60", "recomp": "0x100a03b0", "name": "MxPtrList<LegoLOD>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9d78", "recomp": "0x100a03c8", "name": "LegoLODList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9d90", "recomp": "0x100a0428", "name": "MxCollection<LegoNamedPart *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9da8", "recomp": "0x100a03e0", "name": "MxList<LegoNamedPart *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9dc0", "recomp": "0x100a03f8", "name": "MxPtrList<LegoNamedPart>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9dd8", "recomp": "0x100a0410", "name": "LegoNamedPartList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9df0", "recomp": "0x100a0470", "name": "MxListCursor<LegoLOD *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9e08", "recomp": "0x100a0440", "name": "MxPtrListCursor<LegoLOD>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9e20", "recomp": "0x100a0458", "name": "LegoLODListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9e38", "recomp": "0x100a0488", "name": "MxPtrListCursor<LegoNamedPart>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9e50", "recomp": "0x100a04a0", "name": "LegoNamedPartListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9e68", "recomp": "0x100a04b8", "name": "MxListCursor<LegoNamedPart *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9ec8", "recomp": "0x1009cdf8", "name": "Jetski::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100d9fe8", "recomp": "0x1009d808", "name": "MxBackgroundAudioManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100da328", "recomp": "0x100a0828", "name": "HistoryBook::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100da878", "recomp": "0x1009e5c8", "name": "CustomizeAnimFileVariable::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100da8a0", "recomp": "0x1009cef0", "name": "JukeBoxEntity::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db710", "recomp": "0x100a12d0", "name": "LegoMemory::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db730", "recomp": "0x100a12f0", "name": "LegoFile::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db764", "recomp": "0x100a1310", "name": "LegoTreeNode::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db768", "recomp": "0x100a1318", "name": "LegoTree::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db778", "recomp": "0x100a1228", "name": "LegoTreeNodeData::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db800", "recomp": "0x100a1060", "name": "MxDirect3D::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db814", "recomp": "0x100a1074", "name": "MxDeviceEnumerate::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db818", "recomp": "0x100a1078", "name": "MxDirectDraw::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db8c8", "recomp": "0x100a1218", "name": "LegoAnimNodeData::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db8d8", "recomp": "0x100a1238", "name": "LegoAnim::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db910", "recomp": "0x100a0ca0", "name": "TglImpl::RendererImpl::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db948", "recomp": "0x100a0ce0", "name": "Tgl::Renderer::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db980", "recomp": "0x100a0cd8", "name": "Tgl::Object::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db988", "recomp": "0x100a0d18", "name": "TglImpl::DeviceImpl::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db9b8", "recomp": "0x100a0d48", "name": "Tgl::Device::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100db9e8", "recomp": "0x100a0d78", "name": "TglImpl::ViewImpl::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dba28", "recomp": "0x100a0db8", "name": "Tgl::View::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dba68", "recomp": "0x100a0df8", "name": "TglImpl::GroupImpl::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbaa0", "recomp": "0x100a0e30", "name": "Tgl::Group::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbad8", "recomp": "0x100a0e68", "name": "TglImpl::CameraImpl::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbae8", "recomp": "0x100a0e78", "name": "Tgl::Camera::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbaf8", "recomp": "0x100a0e88", "name": "TglImpl::LightImpl::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbb08", "recomp": "0x100a0e98", "name": "Tgl::Light::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbb18", "recomp": "0x100a0ea8", "name": "TglImpl::MeshBuilderImpl::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbb30", "recomp": "0x100a0ec0", "name": "Tgl::MeshBuilder::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbb48", "recomp": "0x100a0ed8", "name": "TglImpl::TextureImpl::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbb68", "recomp": "0x100a0ef8", "name": "Tgl::Texture::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbb88", "recomp": "0x100a0f40", "name": "TglImpl::MeshImpl::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbbb0", "recomp": "0x100a0f68", "name": "Tgl::Mesh::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbc08", "recomp": "0x100a1010", "name": "OrientableROI::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbc38", "recomp": "0x100a1040", "name": "ROI::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbd70", "recomp": "0x100a1180", "name": "ViewLOD::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbd88", "recomp": "0x100a0fe8", "name": "ViewManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbd90", "recomp": "0x100a1198", "name": "LODObject::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbdbc", "recomp": "0x100a0f98", "name": "ViewLODListManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbdc0", "recomp": "0x100a0f9c", "name": "LODList<ViewLOD>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbdc4", "recomp": "0x100a0fa0", "name": "ViewLODList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbdc8", "recomp": "0x100a0fa4", "name": "LODListBase::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbe38", "recomp": "0x100a10b8", "name": "LegoROI::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbe70", "recomp": "0x100a10f0", "name": "ViewROI::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbea8", "recomp": "0x100a1128", "name": "TimeROI::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbf10", "recomp": "0x100a11b0", "name": "LegoLOD::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbf78", "recomp": "0x100a1358", "name": "Lego3DView::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dbfa4", "recomp": "0x100a1374", "name": "Lego3DManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc000", "recomp": "0x100a13e8", "name": "LegoView::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc018", "recomp": "0x100a1400", "name": "LegoView1::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc060", "recomp": "0x100a1398", "name": "TglSurface::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc078", "recomp": "0x100a1478", "name": "MxNotificationManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc098", "recomp": "0x100a1498", "name": "MxDSAction::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc0e0", "recomp": "0x100a1448", "name": "MxTimer::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc0f8", "recomp": "0x100a1418", "name": "MxCore::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc110", "recomp": "0x100a1430", "name": "MxString::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc128", "recomp": "0x100a1648", "name": "MxSoundManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc168", "recomp": "0x100a14e0", "name": "MxOmni::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc1b0", "recomp": "0x100a1528", "name": "MxCollection<MxVariable *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc1c8", "recomp": "0x100a1560", "name": "MxVariableTable::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc1e8", "recomp": "0x100a1540", "name": "MxHashTable<MxVariable *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc208", "recomp": "0x100a1580", "name": "MxType4NotificationParam::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc210", "recomp": "0x100a1588", "name": "MxStartActionNotificationParam::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc218", "recomp": "0x100a332c", "name": "MxOmniCreateParam::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc220", "recomp": "0x100a17a0", "name": "MxObjectFactory::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc240", "recomp": "0x100a17c0", "name": "MxLoopingMIDIPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc2a8", "recomp": "0x100a1598", "name": "MxStreamChunk::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc2bc", "recomp": "0x100a1824", "name": "MxVideoPresenter::AlphaMask::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc2c0", "recomp": "0x100a1888", "name": "MxFlcPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc348", "recomp": "0x100a1cf8", "name": "MxSmkPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc3d8", "recomp": "0x100a1da0", "name": "MxPtrList<MxRect32>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc3f0", "recomp": "0x100a1db8", "name": "MxRectList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc408", "recomp": "0x100a1dd0", "name": "MxPtrListCursor<MxRect32>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc420", "recomp": "0x100a1e00", "name": "MxRectListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc438", "recomp": "0x100a1de8", "name": "MxListCursor<MxRect32 *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc450", "recomp": "0x100a1d88", "name": "MxList<MxRect32 *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc468", "recomp": "0x100a1e18", "name": "MxCollection<MxRect32 *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc480", "recomp": "0x100a1c08", "name": "MxLoopingFlcPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc510", "recomp": "0x100a15d0", "name": "MxStreamChunkListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc528", "recomp": "0x100a15b8", "name": "MxListCursor<MxStreamChunk *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc540", "recomp": "0x100a1b78", "name": "MxLoopingSmkPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc5d0", "recomp": "0x100a15e8", "name": "MxCollection<MxStreamChunk *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc5e8", "recomp": "0x100a1600", "name": "MxList<MxStreamChunk *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc600", "recomp": "0x100a1618", "name": "MxStreamChunkList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc618", "recomp": "0x100a1738", "name": "MxCompositePresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc680", "recomp": "0x100a1460", "name": "MxHashTableCursor<MxVariable *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc698", "recomp": "0x100a1630", "name": "MxDSSubscriber::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc6b0", "recomp": "0x100a1688", "name": "MxMediaManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc6d8", "recomp": "0x100a1a40", "name": "MxTickleThread::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc6e0", "recomp": "0x100a16b0", "name": "MxAudioManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc710", "recomp": "0x100a16e0", "name": "MxStreamer::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc728", "recomp": "0x100a16f8", "name": "MxRAMStreamController::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc760", "recomp": "0x100a1730", "name": "MxStreamerNotification::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc768", "recomp": "0x100a1828", "name": "MxDisplaySurface::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc7b0", "recomp": "0x100a1f00", "name": "MxBitmap::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc7f8", "recomp": "0x100a1870", "name": "MxDSChunk::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc810", "recomp": "0x100a1928", "name": "MxVideoManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc848", "recomp": "0x100a1910", "name": "MxPalette::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc860", "recomp": "0x100a1a48", "name": "MxThread::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc868", "recomp": "0x100a1960", "name": "MxDSObject::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc890", "recomp": "0x1009d798", "name": "MxDSFile::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc8c8", "recomp": "0x1009d7d0", "name": "MxDSSource::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc900", "recomp": "0x100a1988", "name": "MxEventManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc930", "recomp": "0x100a19b8", "name": "MxMusicManager::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc968", "recomp": "0x100a19f0", "name": "MxStreamController::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc9a0", "recomp": "0x100a1a28", "name": "MxNextActionDataStart::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dc9b8", "recomp": "0x100a1b10", "name": "MxMusicPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dca20", "recomp": "0x100a1aa8", "name": "MxMIDIPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dca88", "recomp": "0x100a1c98", "name": "MxEventPresenter::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcae8", "recomp": "0x100a1f48", "name": "MxRegion::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcb10", "recomp": "0x100a1f70", "name": "MxCollection<MxRegionTopBottom *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcb28", "recomp": "0x100a1f88", "name": "MxList<MxRegionTopBottom *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcb40", "recomp": "0x100a1fa0", "name": "MxPtrList<MxRegionTopBottom>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcb58", "recomp": "0x100a1fb8", "name": "MxRegionTopBottomList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcb70", "recomp": "0x100a1e88", "name": "MxPtrListCursor<MxRegionTopBottom>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcb88", "recomp": "0x100a1ea0", "name": "MxRegionTopBottomListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcba0", "recomp": "0x100a1e30", "name": "MxListCursor<MxRegionTopBottom *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcbb8", "recomp": "0x100a1e48", "name": "MxRegionCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcbf8", "recomp": "0x100a1eb8", "name": "MxPtrListCursor<MxRegionLeftRight>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcc10", "recomp": "0x100a1ed0", "name": "MxRegionLeftRightListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcc28", "recomp": "0x100a1ee8", "name": "MxListCursor<MxRegionLeftRight *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcc40", "recomp": "0x100a1fd0", "name": "MxCollection<MxRegionLeftRight *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcc58", "recomp": "0x100a1fe8", "name": "MxList<MxRegionLeftRight *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcc70", "recomp": "0x100a2000", "name": "MxPtrList<MxRegionLeftRight>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcc88", "recomp": "0x100a2018", "name": "MxRegionLeftRightList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcca0", "recomp": "0x100a1a58", "name": "MxDSBuffer::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dccb8", "recomp": "0x100a1a70", "name": "MxDiskStreamController::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dccf0", "recomp": "0x100a1a50", "name": "MxSemaphore::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dccf8", "recomp": "0x100a2030", "name": "MxDSObjectAction::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcd40", "recomp": "0x100a2378", "name": "MxDSMediaAction::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcd88", "recomp": "0x100a2330", "name": "MxDSAnim::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcdd0", "recomp": "0x100a22e8", "name": "MxDSSound::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dce18", "recomp": "0x100a2180", "name": "MxDSEvent::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dce60", "recomp": "0x100a2078", "name": "MxDSStill::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcea8", "recomp": "0x100a2258", "name": "MxCollection<MxDSAction *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcec0", "recomp": "0x100a2270", "name": "MxList<MxDSAction *>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dced8", "recomp": "0x100a2288", "name": "MxDSActionList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcef0", "recomp": "0x100a22a0", "name": "MxDSMultiAction::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcf38", "recomp": "0x100a2210", "name": "MxDSSerialAction::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcf80", "recomp": "0x100a21c8", "name": "MxDSParallelAction::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dcfc8", "recomp": "0x100a20c0", "name": "MxDSSelectAction::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd010", "recomp": "0x100a2108", "name": "MxCollection<MxString>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd028", "recomp": "0x100a2120", "name": "MxList<MxString>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd040", "recomp": "0x100a2138", "name": "MxStringList::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd058", "recomp": "0x100a2150", "name": "MxStringListCursor::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd070", "recomp": "0x100a2168", "name": "MxListCursor<MxString>::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd088", "recomp": "0x100a23c0", "name": "MxDSStreamingAction::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd0d0", "recomp": "0x100a2438", "name": "MxRAMStreamProvider::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd100", "recomp": "0x100a2408", "name": "MxStreamProvider::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd130", "recomp": "0x100a2468", "name": "MxDiskStreamProviderThread::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd138", "recomp": "0x100a2470", "name": "MxDiskStreamProvider::`vftable'", "matching": 1.0, "diff": []}, {"address": "0x100dd228", "recomp": "0x100a11cc", "name": "LegoMesh::`vftable'", "matching": 1.0, "diff": []}];</script>
<script>// reccmp.js
/* global data */
// Unwrap array of functions into a dictionary with address as the key.
const dataDict = Object.fromEntries(data.map(row => [row.address, row]));
function getDataByAddr(addr) {
return dataDict[addr];
}
//
// Pure functions
//
function formatAsm(entries, addrOption) {
const output = [];
const createTh = (text) => {
const th = document.createElement('th');
th.innerText = text;
return th;
};
const createTd = (text, className = '') => {
const td = document.createElement('td');
td.innerText = text;
td.className = className;
return td;
};
entries.forEach(obj => {
// These won't all be present. You get "both" for an equal node
// and orig/recomp for a diff.
const { both = [], orig = [], recomp = [] } = obj;
output.push(...both.map(([addr, line, recompAddr]) => {
const tr = document.createElement('tr');
tr.appendChild(createTh(addr));
tr.appendChild(createTh(recompAddr));
tr.appendChild(createTd(line));
return tr;
}));
output.push(...orig.map(([addr, line]) => {
const tr = document.createElement('tr');
tr.appendChild(createTh(addr));
tr.appendChild(createTh(''));
tr.appendChild(createTd(`-${line}`, 'diffneg'));
return tr;
}));
output.push(...recomp.map(([addr, line]) => {
const tr = document.createElement('tr');
tr.appendChild(createTh(''));
tr.appendChild(createTh(addr));
tr.appendChild(createTd(`+${line}`, 'diffpos'));
return tr;
}));
});
return output;
}
// Special internal values to ensure this sort order for matching column:
// 1. Stub
// 2. Any match percentage [0.0, 1.0)
// 3. Effective match
// 4. Actual 100% match
function matchingColAdjustment(row) {
if ('stub' in row) {
return -1;
}
if ('effective' in row) {
return 1.0;
}
if (row.matching === 1.0) {
return 1000;
}
return row.matching;
}
function getCppClass(str) {
const idx = str.indexOf('::');
if (idx !== -1) {
return str.slice(0, idx);
}
return str;
}
// Clamp string length to specified length and pad with ellipsis
function stringTruncate(str, maxlen = 20) {
str = getCppClass(str);
if (str.length > maxlen) {
return `${str.slice(0, maxlen)}...`;
}
return str;
}
function getMatchPercentText(row) {
if ('stub' in row) {
return 'stub';
}
if ('effective' in row) {
return '100.00%*';
}
return (row.matching * 100).toFixed(2) + '%';
}
function countDiffs(row) {
const { diff = '' } = row;
if (diff === '') {
return '';
}
const diffs = diff.map(([slug, subgroups]) => subgroups).flat();
const diffLength = diffs.filter(d => !('both' in d)).length;
const diffWord = diffLength === 1 ? 'diff' : 'diffs';
return diffLength === 0 ? '' : `${diffLength} ${diffWord}`;
}
// Helper for this set/remove attribute block
function setBooleanAttribute(element, attribute, value) {
if (value) {
element.setAttribute(attribute, '');
} else {
element.removeAttribute(attribute);
}
}
function copyToClipboard(value) {
navigator.clipboard.writeText(value);
}
const PAGE_SIZE = 200;
//
// Global state
//
class ListingState {
constructor() {
this._query = '';
this._sortCol = 'address';
this._filterType = 1;
this._sortDesc = false;
this._hidePerfect = false;
this._hideStub = false;
this._showRecomp = false;
this._expanded = {};
this._page = 0;
this._listeners = [];
this._results = [];
this.updateResults();
}
addListener(fn) {
this._listeners.push(fn);
}
callListeners() {
for (const fn of this._listeners) {
fn();
}
}
isExpanded(addr) {
return addr in this._expanded;
}
toggleExpanded(addr) {
this.setExpanded(addr, !this.isExpanded(addr));
}
setExpanded(addr, value) {
if (value) {
this._expanded[addr] = true;
} else {
delete this._expanded[addr];
}
}
updateResults() {
const filterFn = this.rowFilterFn.bind(this);
const sortFn = this.rowSortFn.bind(this);
this._results = data.filter(filterFn).sort(sortFn);
// Set _page directly to avoid double call to listeners.
this._page = this.pageClamp(this.page);
this.callListeners();
}
pageSlice() {
return this._results.slice(this.page * PAGE_SIZE, (this.page + 1) * PAGE_SIZE);
}
resultsCount() {
return this._results.length;
}
pageCount() {
return Math.ceil(this._results.length / PAGE_SIZE);
}
maxPage() {
return Math.max(0, this.pageCount() - 1);
}
// A list showing the range of each page based on the sort column and direction.
pageHeadings() {
if (this._results.length === 0) {
return [];
}
const headings = [];
for (let i = 0; i < this.pageCount(); i++) {
const startIdx = i * PAGE_SIZE;
const endIdx = Math.min(this._results.length, ((i + 1) * PAGE_SIZE)) - 1;
let start = this._results[startIdx][this.sortCol];
let end = this._results[endIdx][this.sortCol];
if (this.sortCol === 'matching') {
start = getMatchPercentText(this._results[startIdx]);
end = getMatchPercentText(this._results[endIdx]);
}
headings.push([i, stringTruncate(start), stringTruncate(end)]);
}
return headings;
}
rowFilterFn(row) {
// Destructuring sets defaults for optional values from this object.
const {
effective = false,
stub = false,
diff = '',
name,
address,
matching
} = row;
if (this.hidePerfect && (effective || matching >= 1)) {
return false;
}
if (this.hideStub && stub) {
return false;
}
if (this.query === '') {
return true;
}
// Name/addr search
if (this.filterType === 1) {
return (
address.includes(this.query) ||
name.toLowerCase().includes(this.query)
);
}
// no diff for review.
if (diff === '') {
return false;
}
// special matcher for combined diff
const anyLineMatch = ([addr, line]) => line.toLowerCase().trim().includes(this.query);
// Flatten all diff groups for the search
const diffs = diff.map(([slug, subgroups]) => subgroups).flat();
for (const subgroup of diffs) {
const { both = [], orig = [], recomp = [] } = subgroup;
// If search includes context
if (this.filterType === 2 && both.some(anyLineMatch)) {
return true;
}
if (orig.some(anyLineMatch) || recomp.some(anyLineMatch)) {
return true;
}
}
return false;
}
rowSortFn(rowA, rowB) {
const valA = this.sortCol === 'matching'
? matchingColAdjustment(rowA)
: rowA[this.sortCol];
const valB = this.sortCol === 'matching'
? matchingColAdjustment(rowB)
: rowB[this.sortCol];
if (valA > valB) {
return this.sortDesc ? -1 : 1;
} else if (valA < valB) {
return this.sortDesc ? 1 : -1;
}
return 0;
}
pageClamp(page) {
return Math.max(0, Math.min(page, this.maxPage()));
}
get page() {
return this._page;
}
set page(page) {
this._page = this.pageClamp(page);
this.callListeners();
}
get filterType() {
return parseInt(this._filterType);
}
set filterType(value) {
value = parseInt(value);
if (value >= 1 && value <= 3) {
this._filterType = value;
}
this.updateResults();
}
get query() {
return this._query;
}
set query(value) {
// Normalize search string
this._query = value.toLowerCase().trim();
this.updateResults();
}
get showRecomp() {
return this._showRecomp;
}
set showRecomp(value) {
// Don't sort by the recomp column we are about to hide
if (!value && this.sortCol === 'recomp') {
this._sortCol = 'address';
}
this._showRecomp = value;
this.callListeners();
}
get sortCol() {
return this._sortCol;
}
set sortCol(column) {
if (column === this._sortCol) {
this._sortDesc = !this._sortDesc;
} else {
this._sortCol = column;
}
this.updateResults();
}
get sortDesc() {
return this._sortDesc;
}
set sortDesc(value) {
this._sortDesc = value;
this.updateResults();
}
get hidePerfect() {
return this._hidePerfect;
}
set hidePerfect(value) {
this._hidePerfect = value;
this.updateResults();
}
get hideStub() {
return this._hideStub;
}
set hideStub(value) {
this._hideStub = value;
this.updateResults();
}
}
const appState = new ListingState();
//
// Custom elements
//
// Sets sort indicator arrow based on element attributes.
class SortIndicator extends window.HTMLElement {
static observedAttributes = ['data-sort'];
attributeChangedCallback(name, oldValue, newValue) {
if (newValue === null) {
// Reserve space for blank indicator so column width stays the same
this.innerHTML = '&nbsp;';
} else {
this.innerHTML = newValue === 'asc' ? '&#9650;' : '&#9660;';
}
}
}
class FuncRow extends window.HTMLElement {
connectedCallback() {
if (this.shadowRoot !== null) {
return;
}
const template = document.querySelector('template#funcrow-template').content;
const shadow = this.attachShadow({ mode: 'open' });
shadow.appendChild(template.cloneNode(true));
shadow.querySelector(':host > div[data-col="name"]').addEventListener('click', evt => {
this.dispatchEvent(new Event('name-click'));
});
}
get address() {
return this.getAttribute('data-address');
}
}
class NoDiffMessage extends window.HTMLElement {
connectedCallback() {
if (this.shadowRoot !== null) {
return;
}
const template = document.querySelector('template#nodiff-template').content;
const shadow = this.attachShadow({ mode: 'open' });
shadow.appendChild(template.cloneNode(true));
}
}
class CanCopy extends window.HTMLElement {
connectedCallback() {
if (this.shadowRoot !== null) {
return;
}
const template = document.querySelector('template#can-copy-template').content;
const shadow = this.attachShadow({ mode: 'open' });
shadow.appendChild(template.cloneNode(true));
const el = shadow.querySelector('slot').assignedNodes()[0];
el.addEventListener('mouseout', evt => { this.copied = false; });
el.addEventListener('click', evt => {
copyToClipboard(evt.target.textContent);
this.copied = true;
});
}
get copied() {
return this.getAttribute('copied');
}
set copied(value) {
if (value) {
setTimeout(() => { this.copied = false; }, 2000);
}
setBooleanAttribute(this, 'copied', value);
}
}
// Displays asm diff for the given @data-address value.
class DiffRow extends window.HTMLElement {
connectedCallback() {
if (this.shadowRoot !== null) {
return;
}
const template = document.querySelector('template#diffrow-template').content;
const shadow = this.attachShadow({ mode: 'open' });
shadow.appendChild(template.cloneNode(true));
}
get address() {
return this.getAttribute('data-address');
}
set address(value) {
this.setAttribute('data-address', value);
}
}
class DiffDisplayOptions extends window.HTMLElement {
static observedAttributes = ['data-option'];
connectedCallback() {
if (this.shadowRoot !== null) {
return;
}
const shadow = this.attachShadow({ mode: 'open' });
shadow.innerHTML = `
<style>
fieldset {
align-items: center;
display: flex;
margin-bottom: 20px;
}
label {
margin-right: 10px;
user-select: none;
}
label, input {
cursor: pointer;
}
</style>
<fieldset>
<legend>Address display:</legend>
<input type="radio" id="showNone" name="addrDisplay" value=0>
<label for="showNone">None</label>
<input type="radio" id="showOrig" name="addrDisplay" value=1>
<label for="showOrig">Original</label>
<input type="radio" id="showBoth" name="addrDisplay" value=2>
<label for="showBoth">Both</label>
</fieldset>`;
shadow.querySelectorAll('input[type=radio]').forEach(radio => {
const checked = this.option === radio.getAttribute('value');
setBooleanAttribute(radio, 'checked', checked);
radio.addEventListener('change', evt => (this.option = evt.target.value));
});
}
set option(value) {
this.setAttribute('data-option', parseInt(value));
}
get option() {
return this.getAttribute('data-option') ?? 1;
}
attributeChangedCallback(name, oldValue, newValue) {
if (name !== 'data-option') {
return;
}
this.dispatchEvent(new Event('change'));
}
}
class DiffDisplay extends window.HTMLElement {
static observedAttributes = ['data-option'];
connectedCallback() {
if (this.querySelector('diff-display-options') !== null) {
return;
}
const optControl = new DiffDisplayOptions();
optControl.option = this.option;
optControl.addEventListener('change', evt => (this.option = evt.target.option));
this.appendChild(optControl);
const div = document.createElement('div');
const obj = getDataByAddr(this.address);
const createHeaderLine = (text, className) => {
const div = document.createElement('div');
div.textContent = text;
div.className = className;
return div;
};
const groups = obj.diff;
groups.forEach(([slug, subgroups]) => {
const secondTable = document.createElement('table');
secondTable.classList.add('diffTable');
const hdr = document.createElement('div');
hdr.appendChild(createHeaderLine('---', 'diffneg'));
hdr.appendChild(createHeaderLine('+++', 'diffpos'));
hdr.appendChild(createHeaderLine(slug, 'diffslug'));
div.appendChild(hdr);
const tbody = document.createElement('tbody');
secondTable.appendChild(tbody);
const diffs = formatAsm(subgroups, this.option);
for (const el of diffs) {
tbody.appendChild(el);
}
div.appendChild(secondTable);
});
this.appendChild(div);
}
get address() {
return this.getAttribute('data-address');
}
set address(value) {
this.setAttribute('data-address', value);
}
get option() {
return this.getAttribute('data-option') ?? 1;
}
set option(value) {
this.setAttribute('data-option', value);
}
}
class ListingOptions extends window.HTMLElement {
constructor() {
super();
// Register to receive updates
appState.addListener(() => this.onUpdate());
const input = this.querySelector('input[type=search]');
input.oninput = evt => (appState.query = evt.target.value);
const hidePerf = this.querySelector('input#cbHidePerfect');
hidePerf.onchange = evt => (appState.hidePerfect = evt.target.checked);
hidePerf.checked = appState.hidePerfect;
const hideStub = this.querySelector('input#cbHideStub');
hideStub.onchange = evt => (appState.hideStub = evt.target.checked);
hideStub.checked = appState.hideStub;
const showRecomp = this.querySelector('input#cbShowRecomp');
showRecomp.onchange = evt => (appState.showRecomp = evt.target.checked);
showRecomp.checked = appState.showRecomp;
this.querySelector('button#pagePrev').addEventListener('click', evt => {
appState.page = appState.page - 1;
});
this.querySelector('button#pageNext').addEventListener('click', evt => {
appState.page = appState.page + 1;
});
this.querySelector('select#pageSelect').addEventListener('change', evt => {
appState.page = evt.target.value;
});
this.querySelectorAll('input[name=filterType]').forEach(radio => {
const checked = appState.filterType === parseInt(radio.getAttribute('value'));
setBooleanAttribute(radio, 'checked', checked);
radio.onchange = evt => (appState.filterType = radio.getAttribute('value'));
});
this.onUpdate();
}
onUpdate() {
// Update input placeholder based on search type
this.querySelector('input[type=search]').placeholder = appState.filterType === 1
? 'Search for offset or function name...'
: 'Search for instruction...';
// Update page number and max page
this.querySelector('fieldset#pageDisplay > legend').textContent = `Page ${appState.page + 1} of ${Math.max(1, appState.pageCount())}`;
// Disable prev/next buttons on first/last page
setBooleanAttribute(this.querySelector('button#pagePrev'), 'disabled', appState.page === 0);
setBooleanAttribute(this.querySelector('button#pageNext'), 'disabled', appState.page === appState.maxPage());
// Update page select dropdown
const pageSelect = this.querySelector('select#pageSelect');
setBooleanAttribute(pageSelect, 'disabled', appState.resultsCount() === 0);
pageSelect.innerHTML = '';
if (appState.resultsCount() === 0) {
const opt = document.createElement('option');
opt.textContent = '- no results -';
pageSelect.appendChild(opt);
} else {
for (const row of appState.pageHeadings()) {
const opt = document.createElement('option');
opt.value = row[0];
if (appState.page === row[0]) {
opt.setAttribute('selected', '');
}
const [start, end] = [row[1], row[2]];
opt.textContent = `${appState.sortCol}: ${start} to ${end}`;
pageSelect.appendChild(opt);
}
}
// Update row count
this.querySelector('#rowcount').textContent = `${appState.resultsCount()}`;
}
}
// Main application.
class ListingTable extends window.HTMLElement {
constructor() {
super();
// Register to receive updates
appState.addListener(() => this.somethingChanged());
}
setDiffRow(address, shouldExpand) {
const tbody = this.querySelector('tbody');
const funcrow = tbody.querySelector(`func-row[data-address="${address}"]`);
if (funcrow === null) {
return;
}
const existing = tbody.querySelector(`diff-row[data-address="${address}"]`);
if (existing !== null) {
if (!shouldExpand) {
tbody.removeChild(existing);
}
return;
}
const diffrow = document.createElement('diff-row');
diffrow.address = address;
// Decide what goes inside the diff row.
const obj = getDataByAddr(address);
if ('stub' in obj) {
const msg = document.createElement('no-diff');
const p = document.createElement('div');
p.innerText = 'Stub. No diff.';
msg.appendChild(p);
diffrow.appendChild(msg);
} else if (obj.diff.length === 0) {
const msg = document.createElement('no-diff');
const p = document.createElement('div');
p.innerText = 'Identical function - no diff';
msg.appendChild(p);
diffrow.appendChild(msg);
} else {
const dd = new DiffDisplay();
dd.option = '1';
dd.address = address;
diffrow.appendChild(dd);
}
// Insert the diff row after the parent func row.
tbody.insertBefore(diffrow, funcrow.nextSibling);
}
connectedCallback() {
const thead = this.querySelector('thead');
const headers = thead.querySelectorAll('th:not([data-no-sort])'); // TODO
headers.forEach(th => {
const col = th.getAttribute('data-col');
if (col) {
const span = th.querySelector('span');
if (span) {
span.addEventListener('click', evt => { appState.sortCol = col; });
}
}
});
this.somethingChanged();
}
somethingChanged() {
// Toggle recomp/diffs column
setBooleanAttribute(this.querySelector('table'), 'show-recomp', appState.showRecomp);
this.querySelectorAll('func-row[data-address]').forEach(row => {
setBooleanAttribute(row, 'show-recomp', appState.showRecomp);
});
const thead = this.querySelector('thead');
const headers = thead.querySelectorAll('th');
// Update sort indicator
headers.forEach(th => {
const col = th.getAttribute('data-col');
const indicator = th.querySelector('sort-indicator');
if (indicator === null) {
return;
}
if (appState.sortCol === col) {
indicator.setAttribute('data-sort', appState.sortDesc ? 'desc' : 'asc');
} else {
indicator.removeAttribute('data-sort');
}
});
// Add the rows
const tbody = this.querySelector('tbody');
tbody.innerHTML = ''; // ?
for (const obj of appState.pageSlice()) {
const row = document.createElement('func-row');
row.setAttribute('data-address', obj.address); // ?
row.addEventListener('name-click', evt => {
appState.toggleExpanded(obj.address);
this.setDiffRow(obj.address, appState.isExpanded(obj.address));
});
setBooleanAttribute(row, 'show-recomp', appState.showRecomp);
setBooleanAttribute(row, 'expanded', appState.isExpanded(row));
const items = [
['address', obj.address],
['recomp', obj.recomp],
['name', obj.name],
['diffs', countDiffs(obj)],
['matching', getMatchPercentText(obj)]
];
items.forEach(([slotName, content]) => {
const div = document.createElement('span');
div.setAttribute('slot', slotName);
div.innerText = content;
row.appendChild(div);
});
tbody.appendChild(row);
if (appState.isExpanded(obj.address)) {
this.setDiffRow(obj.address, true);
}
}
}
}
window.onload = () => {
window.customElements.define('listing-table', ListingTable);
window.customElements.define('listing-options', ListingOptions);
window.customElements.define('diff-display', DiffDisplay);
window.customElements.define('diff-display-options', DiffDisplayOptions);
window.customElements.define('sort-indicator', SortIndicator);
window.customElements.define('func-row', FuncRow);
window.customElements.define('diff-row', DiffRow);
window.customElements.define('no-diff', NoDiffMessage);
window.customElements.define('can-copy', CanCopy);
};
</script>
</script>
</head>
<body>
<div class="main">
<h1>Decompilation Status</h1>
<listing-options>
<input id="search" type="search" placeholder="Search for offset or function name...">
<div class="filters">
<fieldset>
<legend>Options:</legend>
<input type="checkbox" id="cbHidePerfect" />
<label for="cbHidePerfect">Hide 100% match</label>
<input type="checkbox" id="cbHideStub" />
<label for="cbHideStub">Hide stubs</label>
<input type="checkbox" id="cbShowRecomp" />
<label for="cbShowRecomp">Show recomp address</label>
</fieldset>
<fieldset>
<legend>Search filters on:</legend>
<input type="radio" name="filterType" id="filterName" value=1 checked />
<label for="filterName">Name/address</label>
<input type="radio" name="filterType" id="filterAsm" value=2 />
<label for="filterAsm">Asm output</label>
<input type="radio" name="filterType" id="filterDiff" value=3 />
<label for="filterDiff">Asm diffs only</label>
</fieldset>
</div>
<div class="filters">
<p class="rowcount">Results: <span id="rowcount"></span></p>
<fieldset id="pageDisplay">
<legend>Page</legend>
<button id="pagePrev">prev</button>
<select id="pageSelect">
</select>
<button id="pageNext">next</button>
</fieldset>
</div>
</listing-options>
<listing-table>
<table id="listing">
<thead>
<tr>
<th data-col="address">
<div>
<span>Address</span>
<sort-indicator/>
</div>
</th>
<th data-col="recomp">
<div>
<span>Recomp</span>
<sort-indicator/>
</div>
</th>
<th data-col="name">
<div>
<span>Name</span>
<sort-indicator/>
</div>
</th>
<th data-col="diffs" data-no-sort></th>
<th data-col="matching">
<div>
<sort-indicator></sort-indicator>
<span>Matching</span>
</div>
</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</listing-table>
</div>
<template id="funcrow-template">
<style>
:host(:not([hidden])) {
display: table-row;
}
:host(:not([show-recomp])) > div[data-col="recomp"] {
display: none;
}
div[data-col="name"]:hover {
cursor: pointer;
}
div[data-col="name"]:hover > ::slotted(*) {
text-decoration: underline;
text-decoration-style: dotted;
}
::slotted(*:not([slot="name"])) {
white-space: nowrap;
}
:host > div {
border-top: 1px #f0f0f0 solid;
display: table-cell;
padding: 0.5em;
word-break: break-all !important;
}
:host > div:last-child {
text-align: right;
}
</style>
<div data-col="address"><can-copy><slot name="address"></slot></can-copy></div>
<div data-col="recomp"><can-copy><slot name="recomp"></slot></can-copy></div>
<div data-col="name"><slot name="name"></slot></div>
<div data-col="diffs"><slot name="diffs"></slot></div>
<div data-col="matching"><slot name="matching"></slot></div>
</template>
<template id="diffrow-template">
<style>
:host(:not([hidden])) {
display: table-row;
contain: paint;
}
td.singleCell {
border: 1px #f0f0f0 solid;
border-bottom: 0px none;
display: table-cell;
padding: 0.5em;
word-break: break-all !important;
}
</style>
<td class="singleCell" colspan="5">
<slot></slot>
</td>
</template>
<template id="nodiff-template">
<style>
::slotted(*) {
font-style: italic;
text-align: center;
}
</style>
<slot></slot>
</template>
<template id="can-copy-template">
<style>
:host {
position: relative;
}
::slotted(*) {
cursor: pointer;
}
slot::after {
background-color: #fff;
color: #222;
display: none;
font-size: 12px;
padding: 1px 2px;
width: fit-content;
border-radius: 1px;
text-align: center;
bottom: 120%;
box-shadow: 0 4px 14px 0 rgba(0,0,0,.2), 0 0 0 1px rgba(0,0,0,.05);
position: absolute;
white-space: nowrap;
transition: .1s;
content: 'Copy to clipboard';
}
::slotted(*:hover) {
text-decoration: underline;
text-decoration-style: dotted;
}
slot:hover::after {
display: block;
}
:host([copied]) > slot:hover::after {
content: 'Copied!';
}
</style>
<slot></slot>
</template>
</body>
</html>