亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? flt_analy.cc

?? 功能較全面的反匯編器:反匯編器ht-2.0.15.tar.gz
?? CC
字號:
/*  *	HT Editor *	flt_analy.cc * *	Copyright (C) 1999-2003 Sebastian Biallas (sb@biallas.net) * *	This program is free software; you can redistribute it and/or modify *	it under the terms of the GNU General Public License version 2 as *	published by the Free Software Foundation. * *	This program is distributed in the hope that it will be useful, *	but WITHOUT ANY WARRANTY; without even the implied warranty of *	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *	GNU General Public License for more details. * *	You should have received a copy of the GNU General Public License *	along with this program; if not, write to the Free Software *	Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */#include "analy.h"#include "analy_alpha.h"#include "analy_names.h"#include "analy_ia64.h"#include "analy_ppc.h"#include "analy_register.h"#include "analy_x86.h"#include "flt_analy.h"#include "htctrl.h"#include "htdebug.h"#include "htiobox.h"#include "htflt.h"#include "strtools.h"#include "pestruct.h"#include "snprintf.h"//#include "x86asm.h"#include <stdio.h>#include <stdlib.h>#include <string.h>/* * */void FLTAnalyser::init(ht_flt_shared_data *Flt_shared, File *File){	flt_shared = Flt_shared;	file = File;	validarea = new Area();	validarea->init();	Analyser::init();}void FLTAnalyser::beginAnalysis(){	setLocationTreeOptimizeThreshold(100);	setSymbolTreeOptimizeThreshold(100);		/*	 *	give all sections a descriptive comment:	 */	Address *secaddr;	secaddr = createAddress32(flt_shared->code_start);	if (validAddress(secaddr, scvalid)) {		addComment(secaddr, 0, "");		addComment(secaddr, 0, ";******************************************************************");		addComment(secaddr, 0, "; start of code");		addComment(secaddr, 0, ";******************************************************************");	}	delete secaddr;	secaddr = createAddress32(flt_shared->data_start);	if (validAddress(secaddr, scvalid)) {		addComment(secaddr, 0, "");		addComment(secaddr, 0, ";******************************************************************");		addComment(secaddr, 0, "; start of data");		addComment(secaddr, 0, ";******************************************************************");	}	delete secaddr;	secaddr = createAddress32(flt_shared->bss_start);	if (validAddress(secaddr, scvalid)) {		addComment(secaddr, 0, "");		addComment(secaddr, 0, ";******************************************************************");		addComment(secaddr, 0, "; start of bss");		addComment(secaddr, 0, ";******************************************************************");	}	delete secaddr;	Address *secaddr1, *secaddr2;	secaddr1 = createAddress32(flt_shared->code_start);	secaddr2 = createAddress32(flt_shared->bss_end);	validarea->add(secaddr1, secaddr2);	delete secaddr1;	delete secaddr2;	/*	 *	entrypoint	 */	 	Address *entry;	entry = createAddress32(flt_shared->header.entry);	pushAddress(entry, entry);	assignSymbol(entry, "entrypoint", label_func);	addComment(entry, 0, "");	addComment(entry, 0, ";****************************");	addComment(entry, 0, "; entrypoint");	addComment(entry, 0, ";****************************");	delete entry;	setLocationTreeOptimizeThreshold(1000);	setSymbolTreeOptimizeThreshold(1000);		Analyser::beginAnalysis();}/* * */void FLTAnalyser::load(ObjectStream &f){	GET_OBJECT(f, validarea);	Analyser::load(f);}/* * */void FLTAnalyser::done(){	validarea->done();	delete validarea;	Analyser::done();}ObjectID FLTAnalyser::getObjectID() const{	return ATOM_FLT_ANALYSER;}/* * */uint FLTAnalyser::bufPtr(Address *Addr, byte *buf, int size){	FileOfs ofs = addressToFileofs(Addr);/*     if (ofs == INVALID_FILE_OFS) {		int as = 1;	}*/	assert(ofs != INVALID_FILE_OFS);	file->seek(ofs);	return file->read(buf, size);}bool FLTAnalyser::convertAddressToFLTAddress(Address *addr, FLTAddress *r){	if (addr->getObjectID()==ATOM_ADDRESS_FLAT_32) {		*r = ((AddressFlat32*)addr)->addr;		return true;	} else {		return false;	}}Address *FLTAnalyser::createAddress(){	return new AddressFlat32();}Address *FLTAnalyser::createAddress32(uint32 addr){	return new AddressFlat32(addr);}/* * */Assembler *FLTAnalyser::createAssembler(){	return NULL;}/* * */FileOfs FLTAnalyser::addressToFileofs(Address *Addr){	if (validAddress(Addr, scinitialized)) {		FLTAddress ea;		if (!convertAddressToFLTAddress(Addr, &ea)) return INVALID_FILE_OFS;		return (FileOfs)ea;	} else {		return INVALID_FILE_OFS;	}}/* * */const char *FLTAnalyser::getSegmentNameByAddress(Address *Addr){	FLTAddress ea;	if (!convertAddressToFLTAddress(Addr, &ea)) return NULL;	if (ea >= flt_shared->code_start) {     	if (ea >= flt_shared->data_start) {			if (ea >= flt_shared->bss_start) {				if (ea >= flt_shared->bss_end) {					return NULL;				}				return "bss";			}			return "data";		}		return "code";	}	return NULL;}/* * */String &FLTAnalyser::getName(String &res){	return file->getDesc(res);}/* * */const char *FLTAnalyser::getType(){	return "FLAT/Analyser";}/* * */void FLTAnalyser::initCodeAnalyser(){	Analyser::initCodeAnalyser();}/* * */void FLTAnalyser::initUnasm(){	DPRINTF("flt_analy: ");//	DPRINTF("initing analy_ppc_disassembler\n");	analy_disasm = NULL;//	((AnalyPPCDisassembler*)analy_disasm)->init(this);}/* * */void FLTAnalyser::log(const char *msg){	/*	 *	log() does to much traffic so dont log	 *   perhaps we reactivate this later	 *	 *//*	LOG(msg);*/}/* * */Address *FLTAnalyser::nextValid(Address *Addr){	return (Address *)validarea->findNext(Addr);}/* * */void FLTAnalyser::store(ObjectStream &f) const{	PUT_OBJECT(f, validarea);	Analyser::store(f);}/* * */int FLTAnalyser::queryConfig(int mode){	switch (mode) {		case Q_DO_ANALYSIS:		case Q_ENGAGE_CODE_ANALYSER:		case Q_ENGAGE_DATA_ANALYSER:			return true;		default:			return 0;	}}/* * */Address *FLTAnalyser::fileofsToAddress(FileOfs fileofs){	FLTAddress ea = (FLTAddress)fileofs;	if (ea >= flt_shared->code_start && ea < flt_shared->data_end) {		return createAddress32(ea);	} else {		return new InvalidAddress();	}}/* * */bool FLTAnalyser::validAddress(Address *Addr, tsectype action){	FLTAddress ea;	if (!convertAddressToFLTAddress(Addr, &ea)) return false;	if (ea >= flt_shared->code_start) {     	if (ea >= flt_shared->data_start) {			if (ea >= flt_shared->bss_start) {				if (ea >= flt_shared->bss_end) {					return false;				}				switch (action) {				case scvalid:				case scread:				case scwrite:				case screadwrite:					return true;				case sccode:				case scinitialized:					return false;				}			}			switch (action) {			case scvalid:			case scread:			case scwrite:			case screadwrite:			case scinitialized:				return true;			case sccode:				return false;			}		}		switch (action) {		case scvalid:		case scread:		case scinitialized:			return true;		case scwrite:		case screadwrite:		case sccode:			return false;          }	}	return false;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美视频一区二区三区| 一区二区三区在线免费视频| 欧美日韩在线亚洲一区蜜芽| jlzzjlzz欧美大全| 不卡av电影在线播放| voyeur盗摄精品| 91香蕉视频mp4| 97se亚洲国产综合自在线观| 91福利国产成人精品照片| 欧美伊人久久久久久久久影院 | 成人午夜免费av| 成人自拍视频在线| 91首页免费视频| 色成年激情久久综合| 欧美色网一区二区| 日韩丝袜情趣美女图片| 日韩午夜av一区| 久久久久久久久久久久电影| 中文字幕欧美日韩一区| 综合色中文字幕| 亚洲成人免费视| 免费看日韩a级影片| 久久99国产精品免费网站| 国产乱人伦偷精品视频不卡| 不卡的av在线| 欧美喷潮久久久xxxxx| 精品少妇一区二区三区免费观看| 欧美videos中文字幕| 久久久精品免费观看| 国产精品久久久久久久久免费相片 | 欧美一区二区三区爱爱| 精品欧美一区二区在线观看| 欧美精品一区二区三区蜜桃| 国产精品国模大尺度视频| 亚洲人成网站影音先锋播放| 五月婷婷色综合| 国内国产精品久久| 99九九99九九九视频精品| 91麻豆精品国产自产在线| 精品国产123| 自拍偷拍亚洲激情| 亚洲国产精品欧美一二99| 精品一区二区综合| 一本色道久久综合亚洲91| 日韩欧美一级精品久久| 亚洲欧洲日韩av| 久久99精品国产麻豆不卡| www.亚洲色图.com| 日韩欧美中文字幕制服| 最新国产成人在线观看| 美女视频一区在线观看| 91在线免费看| 精品国产一区二区三区不卡 | 激情五月婷婷综合| 色婷婷av一区二区三区大白胸| 欧美成人猛片aaaaaaa| 亚洲男同性恋视频| 国产精品综合久久| 精品视频免费看| 国产精品久久久久一区| 麻豆视频观看网址久久| 91污片在线观看| 国产日产亚洲精品系列| 日韩中文字幕91| 成人精品一区二区三区中文字幕| 欧美精品久久一区| 自拍偷在线精品自拍偷无码专区| 久久国产精品99精品国产| 色婷婷亚洲综合| 国产视频在线观看一区二区三区 | 色婷婷久久久亚洲一区二区三区| 欧美一激情一区二区三区| 中文字幕一区免费在线观看 | 欧美精品久久久久久久多人混战 | 手机精品视频在线观看| 91网上在线视频| 国产亚洲欧美在线| 另类小说综合欧美亚洲| 欧美日韩一级二级| 亚洲美女精品一区| 成熟亚洲日本毛茸茸凸凹| 精品乱人伦小说| 日韩国产精品久久| 欧美视频在线一区二区三区| 亚洲图片你懂的| 成人av电影在线播放| 日本一区免费视频| 紧缚奴在线一区二区三区| 欧美一区二区三区白人| 日韩精品一二三| 欧美人与性动xxxx| 五月激情综合网| 欧美美女网站色| 性做久久久久久| 欧美蜜桃一区二区三区| 亚洲制服丝袜一区| 在线观看国产精品网站| 亚洲免费在线看| 日本精品视频一区二区三区| 亚洲视频一区在线| 色噜噜狠狠成人网p站| 中文字幕佐山爱一区二区免费| av福利精品导航| 国产精品激情偷乱一区二区∴| 成人免费毛片嘿嘿连载视频| 国产喂奶挤奶一区二区三区| 国产伦精一区二区三区| 国产日韩欧美精品电影三级在线| 国产一区二区三区久久久| 久久一日本道色综合| 国产乱人伦精品一区二区在线观看| 精品少妇一区二区三区免费观看| 久久99精品视频| 一区二区三区在线免费| 欧美日韩综合一区| 日韩va亚洲va欧美va久久| 日韩色视频在线观看| 精彩视频一区二区| 国产精品欧美精品| 日本久久一区二区三区| 婷婷综合五月天| 久久久久久久久97黄色工厂| av不卡一区二区三区| 亚洲综合视频网| 日韩久久久久久| 国产不卡视频在线观看| 亚洲美女区一区| 日韩女优制服丝袜电影| 成人永久免费视频| 亚洲国产一区在线观看| 日韩精品一区二区三区视频 | 91精品国产免费| 国产一区在线观看视频| 最新国产成人在线观看| 7777精品伊人久久久大香线蕉完整版 | 国产欧美一区二区精品婷婷| 91碰在线视频| 日韩经典一区二区| 久久久久一区二区三区四区| av在线这里只有精品| 亚洲一二三四在线观看| 欧美大度的电影原声| 91免费看视频| 奇米四色…亚洲| 亚洲欧美中日韩| 91精品国产91久久久久久一区二区| 国内精品久久久久影院色| 一区二区在线观看免费 | 亚洲麻豆国产自偷在线| 在线不卡免费欧美| 国产69精品久久久久毛片 | 成人18视频在线播放| 亚洲成人av资源| 国产农村妇女毛片精品久久麻豆| 欧美揉bbbbb揉bbbbb| 国产成人av电影免费在线观看| 一区二区三区免费网站| 精品成人在线观看| 欧美在线色视频| 国产成人精品1024| 天天av天天翘天天综合网 | 一级中文字幕一区二区| 久久色.com| 欧美日韩日日骚| 暴力调教一区二区三区| 免费成人小视频| 亚洲欧美韩国综合色| 国产丝袜在线精品| 日韩限制级电影在线观看| 97se亚洲国产综合自在线| 久久国产剧场电影| 亚洲影院免费观看| 国产亚洲午夜高清国产拍精品| 欧美亚洲国产bt| 成人激情av网| 国内精品在线播放| 亚洲成人动漫av| 亚洲男同1069视频| 国产婷婷色一区二区三区四区| 91精品国产综合久久香蕉麻豆| 99视频精品在线| 国产美女精品一区二区三区| 天天爽夜夜爽夜夜爽精品视频| 亚洲裸体在线观看| 国产精品乱码久久久久久| 久久久久97国产精华液好用吗| 3atv一区二区三区| 欧美视频一区二| 色吧成人激情小说| 99热99精品| 成人精品视频.| 国产高清不卡一区| 国产一区视频在线看| 精品无人区卡一卡二卡三乱码免费卡| 无码av免费一区二区三区试看| 亚洲综合色婷婷| 亚洲精品国产第一综合99久久| 国产精品国产三级国产aⅴ中文| 久久久一区二区三区捆绑**| 精品国产一区二区三区久久影院|