============================== Sample 1 ============================== ASM: ;************************************************************************************************************************************************************ ;* ccl::EmissionNode::compile(ccl::SVMCompiler&) * ;************************************************************************************************************************************************************ ;undefined compile(EmissionNode * this, SVMCompiler * param_1) ;this EmissionNode * RDI ;param_1 SVMCompiler * RSI ;local_30 undefined8 -30 ;local_3c undefined4 -3c ;local_40 undefined4 -40 ;local_44 undefined4 -44 ;local_48 undefined4 -48 PUSH R13 PUSH R12 PUSH RBP MOV RBP,param_1 LEA param_1,[.rodata:s_Color_03a76446] ;= "Color" PUSH RBX MOV RBX,this SUB RSP,0x28 MOV RAX,qword ptr FS:[0x28] MOV qword ptr [RSP + local_30+0x48],RAX XOR EAX,EAX CALL ccl::ShaderNode::input ;undefined input(ShaderNode * this, c... LEA param_1,[.rodata:s_Strength_03a7bfa8] ;= "Strength" MOV this,RBX MOV R12,RAX CALL ccl::ShaderNode::input ;undefined input(ShaderNode * this, c... CMP qword ptr [R12 + 0x10],0x0 MOV param_1,RAX JZ LAB_02777090 LAB_02777029: MOV this,RBP CALL ccl::SVMCompiler::stack_assign ;undefined stack_assign(ShaderInput *... MOV param_1,R12 MOV this,RBP MOV R13D,EAX CALL ccl::SVMCompiler::stack_assign ;undefined stack_assign(ShaderInput *... XOR R8D,R8D MOV ECX,R13D MOV param_1,0x7 MOV EDX,EAX MOV this,RBP CALL ccl::SVMCompiler::add_node ;undefined add_node(SVMCompiler * thi... LAB_02777054: MOV RAX,qword ptr [RSP + local_30+0x48] SUB RAX,qword ptr FS:[0x28] JNZ LAB_027770e4 MOV EDX,dword ptr [RBP + 0x440] ADD RSP,0x28 MOV this,RBP XOR R8D,R8D POP RBX XOR ECX,ECX POP RBP MOV param_1,0x3 POP R12 POP R13 JMP ccl::SVMCompiler::add_node ;undefined add_node(SVMCompiler * thi... ?? 66h f ?? 0Fh ?? 1Fh ?? 44h D ?? 00h ?? 00h LAB_02777090: CMP qword ptr [RAX + 0x10],0x0 JNZ LAB_02777029 MOVSS XMM1,dword ptr [RBX + 0x78] MOVSS XMM2,dword ptr [RBX + 0x74] MOV RDX,RSP MOV this,RBP MOVSS XMM0,dword ptr [RBX + 0x80] MOV param_1,0x5 MOV dword ptr [RSP + local_3c+0x48],0x0 MULSS XMM1,XMM0 MULSS XMM2,XMM0 MULSS XMM0,dword ptr [RBX + 0x70] MOVSS dword ptr [RSP + local_40+0x48],XMM1 MOVSS dword ptr [RSP + local_44+0x48],XMM2 MOVSS dword ptr [RSP]=>local_48,XMM0 CALL ccl::SVMCompiler::add_node ;undefined add_node(SVMCompiler * thi... JMP LAB_02777054 LAB_027770e4: CALL .plt:::__stack_chk_fail ;undefined __stack_chk_fail() NOP Actual src: void EmissionNode::compile(SVMCompiler &compiler) { ShaderInput *color_in = input("Color"); ShaderInput *strength_in = input("Strength"); if (color_in->link || strength_in->link) { compiler.add_node( NODE_EMISSION_WEIGHT, compiler.stack_assign(color_in), compiler.stack_assign(strength_in)); } else compiler.add_node(NODE_CLOSURE_SET_WEIGHT, color * strength); compiler.add_node(NODE_CLOSURE_EMISSION, compiler.closure_mix_weight_offset()); } Predicted src: void node_node::add_node(Node *node) { node_node *node = node_node_node(node); node_node_node *node = node_node_node_node(node); node_node_node_node *node = node_node_node_node(node); node_node_node_node_node_node(node, node, node_node_node_node_node); node_node_node_node_node_node(node, node, node_node_node_node_node); node_node_node_node_node_node_node(node, node, node_node_node_node_node_node); node_node_node_node_node_node(node, node_node_node_node_node, node_node_node_node); node_node_node_node_node_node(node, node_node_node, node_node_node_node_node); node_node_node_node_node_node(node, node_node_node_node_node, node_node_node_node, node_node_node_node); } ============================== Sample 2 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined wvprintfx() JMP trio_vprintf ?? 66h f Actual src: int wvprintfx(const char* fmt, va_list args) { return trio_vprintf(fmt, args); } Predicted src: static void write_io(int argc, char **argv) { (void)argc; (void)argv; (void)argv; } ============================== Sample 3 ============================== ASM: ;************************************************************************************************************************************************************ ;* Gui::Dragable::isValidDragPosition(QPoint const&) const * ;************************************************************************************************************************************************************ ;undefined isValidDragPosition(QPoint * param_1) ;param_1 QPoint * RDI MOV EAX,0x1 RET ?? 66h f Actual src: bool Dragable::isValidDragPosition(const QPoint& p) const { Q_UNUSED(p) return true; } Predicted src: bool operator==(const QString& other) const override { return true; } ============================== Sample 4 ============================== ASM: ;************************************************************************************************************************************************************ ;* vtkImageReslice::WrapOff() * ;************************************************************************************************************************************************************ ;undefined WrapOff(vtkImageReslice * this) ;this vtkImageRes... RDI MOV RAX,qword ptr [this] XOR ESI,ESI MOV RAX,qword ptr [RAX + 0x330] JMP RAX ?? 66h f Actual src: vtkBooleanMacro(Wrap, int); Predicted src: vtkBooleanMacro(int, vtkTypeBool); ============================== Sample 5 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined ffmax() MOV EDX,0x6 JMP ave ;undefined ave() ?? 66h f Actual src: gaint ffmax (struct gafunc *pfc, struct gastat *pst) { gaint rc; rc = ave (pfc, pst, 6); return (rc); } Predicted src: static int read (int argc, char **argv, char **argv) { return 1; }