node/lib/metasm/metasm/disassemble.rb
# check if an addr has an xref :x from a :saveip, if so mark as Function
check if an addr has an xref :x from a :saveip, if so mark as Function
check if an addr has an xref : x from a : saveip if so mark as Function
def disassemble_fast_checkfunc(addr)
		if @decoded[addr].kind_of? DecodedInstruction and not @function[addr]
			func = false
			each_xref(addr, :x) { |x_|
				func = true if odi = di_at(x_.origin) and odi.opcode.props[:saveip]
			}
			if func
				auto_label_at(addr, 'sub', 'loc', 'xref')
				@function[addr] = (@function[:default] || DecodedFunction.new).dup
				@function[addr].finalized = true
				detect_function_thunk(addr)
				puts "found new function #{get_label_at(addr)} at #{Expression[addr]}" if $VERBOSE
			end
		end
	end
def disassemble_fast_checkfunc ( addr ) if @decoded [ addr ] . kind_of? DecodedInstruction and not @function [ addr ] func = false each_xref ( addr , :x ) { | x_ | func = true if odi = di_at ( x_ . origin ) and odi . opcode . props [ :saveip ] } if func auto_label_at ( addr , 'sub' , 'loc' , 'xref' ) @function [ addr ] = ( @function [ :default ] || DecodedFunction . new ) . dup @function [ addr ] . finalized = true detect_function_thunk ( addr ) puts "found new function #{get_label_at(addr)} at #{Expression[addr]}" if $VERBOSE end end end
check if an addr has an xref :x from a :saveip, if so mark as Function
check if an addr has an xref : x from a : saveip if so mark as Function
addr