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

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

?? mifare.c

?? 是上一個SMS消費機的充值機程序
?? C
?? 第 1 頁 / 共 5 頁
字號:
#include <api.h>
#include <console.h>
#include <mifare530.h>
#include "CPOS.h"

const unsigned char gcDefaultKeyA[6] = {0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5};
const unsigned char gcDefaultKeyB[6] = {0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5};
const unsigned char gcDefaultKeyAf[6] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
const unsigned char gcDefaultKeyBf[6] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};

extern unsigned char *BCD2ASC(unsigned char *strBCD, unsigned char cLenBCD);
extern unsigned char *ASC2BCD(unsigned char *strASC, unsigned char cLenASC);
extern void OverTurnString(void *strSource, void *strTarge, unsigned char cLength);
//認證卡片
unsigned char AuthenCard(unsigned long *lSerialNo, unsigned char Sector, unsigned char ModeSel)
{
	unsigned char keysel1, keysel2;
//	unsigned char cKey[6];
	unsigned char *pKey;
	int i;

	if (Sector>15) return 0;
	if(ModeSel == MIF_READ)
	{
		keysel1 = PICC_AUTHENT1A;
		pKey = gstWorkCardKey.cKeyA[Sector];
	}
	else if(ModeSel == MIF_WRITE)
	{
//		if ((gstWorkCardInfomation.cKeyVerision == 0xa0)||(gstWorkCardInfomation.cKeyVerision == 0xff))
//		{
//			keysel1 = PICC_AUTHENT1A;
//			pKey = gstWorkCardKey.cKeyA[Sector];
//		}
//		else
//		{
			keysel1 = PICC_AUTHENT1B;
			pKey = gstWorkCardKey.cKeyB[Sector];
//		}
	}
	else 
		return 0;		
	for(i=0;i<3;i++)
	{
//		clr_scr();
//		move_cursor(i,0);
//		puts("CardTypeARequest");
		if (CardTypeARequest(PICC_REQIDL, gcATQ)==MI_OK)
		{
//			move_cursor(i,1);
//			puts("CardTypeASelect");
			if (CardTypeASelectLevel1((unsigned char*)lSerialNo, gcATS)==MI_OK)
			{
//				move_cursor(i,2);
//				puts("CardMFCAuthKey");
				if (CardMFCAuthKey(keysel1, (unsigned char*)lSerialNo, pKey, Sector*4+3)==MI_OK)
				{
					break;
				}
			}
		}
	}
	if(i==3)
	{
//		move_cursor(i,3);
//		puts("ERR");
		return 0;
	}
	
//	move_cursor(i,3);
//	puts("OK");
	return 1;
}
//M1卡復制數據塊
unsigned char CopyBlock(unsigned char cSector, unsigned char cSource, unsigned char cTarget, unsigned char cMode)
{
	unsigned char i, k;

	for(k=0;k<3;k++)
	{
		if (CardMFCRead16Bytes(cSource, gcMifBuffer)==MI_OK)
		{
			if (cMode==1)
			{
				for(i=0;i<16;i++)
					gcMifBuffer[i] = 0xff - gcMifBuffer[i];
			}
			if (CardMFCWrite16Bytes(cTarget, gcMifBuffer)==MI_OK)
				break;
		}
	}
	if(k==3) return 0;
	return 1;
}
//M1卡比較數據塊
unsigned char CompareBlock(unsigned char cSector, unsigned char cBlock1, unsigned char cBlock2, unsigned char cMode)
{
	unsigned char cBuffer[16];
	unsigned char i;
	
	if (CardMFCRead16Bytes(cBlock2, gcMifBuffer)!=MI_OK) return 0;
	memcpy(cBuffer, gcMifBuffer, 16);
	if (CardMFCRead16Bytes(cBlock1, gcMifBuffer)!=MI_OK) return 0;
	if (cMode==1)
	{
		for(i=0;i<16;i++)
			gcMifBuffer[i] = 0xff - gcMifBuffer[i];
	}
	if (memcmp(cBuffer, gcMifBuffer, 16)!=0)
		return 1;
	else
		return 2;
}
//判斷錢包結構的合法性
unsigned char IsValidMoney(unsigned char cSector, unsigned char cBlock)
{
	unsigned char   i;

	CardMFCRead16Bytes(cBlock, gcMifBuffer);
	for(i=0;i<4;i++)
	{
		if(gcMifBuffer[i] != 0xff - gcMifBuffer[i+4]) return 0;
		if(gcMifBuffer[i]  != gcMifBuffer[i+8]) return 0;
	}
	if(gcMifBuffer[12] != gcMifBuffer[14]) return 0;
	if(gcMifBuffer[13] != gcMifBuffer[15]) return 0;
	if(gcMifBuffer[12] !=  0xff - gcMifBuffer[13]) return 0;
	return 1;
}
/*
//判斷是否在黑名單中
unsigned char IsInBlack(unsigned long lCardNo)
{
	unsigned int i, start, end;
	unsigned char buf[4], cFlag, j;
	
	start = 0;
	end = giBlackListNum - 1;
	if(lCardNo < gcBlackList[start])
		return 0;
	else if(lCardNo == gcBlackList[start])
		return 1;
	if(lCardNo > gcBlackList[end])
		return 0;
	else if(lCardNo == gcBlackList[end])
		return 1;
	while(start!=end-1)
	{
        	i = (start + end) / 2;
		if(lCardNo < gcBlackList[i])
		{
			cFlag = 1;	
			break;
		}
		else if(lCardNo > gcBlackList[i])
		{
			cFlag = 2;	
			break;
		}
		else
			return 1;
		if(cFlag == 1)
		{
			end = i;
		}
		else
		{
			start = i;
		}
	}
	return 0;
}
*/
//生成交易記錄
unsigned char BuildRecord()
{
	unsigned char  i;
	unsigned char  tmpbuf[100];
	
	memset(&gstWorkChargeRecord, 0, sizeof(gstWorkChargeRecord));
	memcpy(gstWorkChargeRecord.cSerialNo, &glSerialNo, 4);
	memcpy(gstWorkChargeRecord.cCityCode, gstWorkCardInfomation.cCityCode, 2);
	memcpy(gstWorkChargeRecord.cTradeCode, gstWorkCardInfomation.cTradeCode, 2);
	memcpy(gstWorkChargeRecord.cCardNo, &gstWorkCardInfomation.lCardNo, 4);
	memcpy(gstWorkChargeRecord.cCardAuthenCode, gstWorkCardInfomation.cAuthenCode, 4);
	gstWorkChargeRecord.cCardType = gstWorkCardInfomation.cCardType;
	gstWorkChargeRecord.cChargeType = gcChargeType;						
	memcpy((unsigned char*)&gstWorkChargeRecord.cChargeDateTime, gcNowTime, 7);	
	switch(gcChargeType)
	{
	case CHARGETYPE_LOGON:
		//管理卡設置流水號
		OverTurnString(gstWorkChargeRecord.cTotleChargeTimes, &gstWorkCardInfomation.iMoneyTotleTimes, 2);
		//操作員編號
		memcpy(gstWorkChargeRecord.cMoneyOrTimes, &gstWorkCardInfomation.lMoney, 4);
		//機具編號
		memcpy(gstWorkChargeRecord.cChargeMoneyOrTimes, &glChargeMoney, 3);
		gstWorkChargeRecord.cDate[0] = 0xff;						
		gstWorkChargeRecord.cDate[1] = 0xff;						
		gstWorkChargeRecord.cRecordType = 2;
		break;
	case CHARGETYPE_SALE:
		gstWorkChargeRecord.cCardType = gcNewCardType;							
	case CHARGETYPE_INCMONEY:
	case CHARGETYPE_DECMONEY:
	case CHARGETYPE_PURMONEY:
//		memcpy(gstWorkChargeRecord.cTotleChargeTimes, &gstWorkCardInfomation.iMoneyTotleTimes, 2);
		OverTurnString(gstWorkChargeRecord.cTotleChargeTimes, &gstWorkCardInfomation.iMoneyTotleTimes, 2);
//		memcpy(gstWorkChargeRecord.cMoneyOrTimes, &gstWorkCardInfomation.lMoney, 4);
		OverTurnString(gstWorkChargeRecord.cMoneyOrTimes, &gstWorkCardInfomation.lMoney, 4);
//		memcpy(gstWorkChargeRecord.cChargeMoneyOrTimes, &glChargeMoney, 3);
		OverTurnString(gstWorkChargeRecord.cChargeMoneyOrTimes, (unsigned char*)&glChargeMoney+1, 3);
		gstWorkChargeRecord.cDate[0] = 0xff;						
		gstWorkChargeRecord.cDate[1] = 0xff;						
		gstWorkChargeRecord.cRecordType = 2;
		break;
	case CHARGETYPE_INCTIMES:
	case CHARGETYPE_DECTIMES:
	case CHARGETYPE_PURTIMES:
//		memcpy(gstWorkChargeRecord.cTotleChargeTimes, &gstWorkCardInfomation.iTimesTotleTimes, 2);
		OverTurnString(gstWorkChargeRecord.cTotleChargeTimes, &gstWorkCardInfomation.iTimesTotleTimes, 2);
//		memcpy(gstWorkChargeRecord.cMoneyOrTimes, &gstWorkCardInfomation.lTimes, 4);
		OverTurnString(gstWorkChargeRecord.cMoneyOrTimes, &gstWorkCardInfomation.lTimes, 4);
//		memcpy(gstWorkChargeRecord.cChargeMoneyOrTimes, &glChargeMoney, 3);
		OverTurnString(gstWorkChargeRecord.cChargeMoneyOrTimes, (unsigned char*)&glChargeMoney+1, 3);
		gstWorkChargeRecord.cDate[0] = ((gcChargeTimesDate[1]/10)<<4)+gcChargeTimesDate[1]%10;						
		gstWorkChargeRecord.cDate[1] = ((gcChargeTimesDate[1]/10)<<4)+gcChargeTimesDate[1]%10;
		gstWorkChargeRecord.cRecordType = 2;
		break;
	}
//for debug
/*	memcpy(tmpbuf, (unsigned char*)&gstWorkChargeRecord, 36);
	tmpbuf[36] = 0x80;
	tmpbuf[37] = 0x00;
	tmpbuf[38] = 0x00;
	tmpbuf[39] = 0x00;
	i = InitForDescrypt(0, tmpbuf, 0x08, gstKeyMarkSet[gstWorkCardInfomation.cCardKeyIndex].KeyTradeMAC);

	if (i != 1) return ERR_PSAM_SPKEY;
	delay_n_ms(2);
	i = MAC(40, tmpbuf, tmpbuf);

	if (i != 4) return ERR_PSAM_SPKEY;
	delay_n_ms(100);
	if(!GetResponse(tmpbuf, i)) return ERR_PSAM_FUNC;

	memcpy(gstWorkChargeRecord.cTAC, tmpbuf, 4);
*/	
	memset(gstWorkChargeRecord.cTAC, 0, 4);
//for debug
	i=appendTradeRecord(&gstWorkChargeRecord);
//	Dispbcd(0,0,&i,1);
	if(i!=ST_OK)
	{
		return ERR_CHG_WRITEEEPROM;
	}
	return ST_OK;
}
//寫交易進程標志
unsigned char WriteChargeStep(unsigned char cFlag)
{
	unsigned char  i;
	
	gcSector = gstWorkCardInfomation.stCardStruct.cPublicSector;
	gcBlock = gcSector * 4;
	if (cFlag > 2) return 0;
	if(!AuthenCard(&glSerialNo,gcSector,MIF_WRITE)) return 0;
	for(i=0;i<3;i++)
	{
		if (CardMFCRead16Bytes(gcBlock, gcMifBuffer)==MI_OK)
			break;
	} 
	if(i==3)return 0;
	gcMifBuffer[3] = cFlag;
	gstWorkCardInfomation.cChargeStep = cFlag;
	gcMifBuffer[15] = 0;
	for(i=0;i<15;i++)
		gcMifBuffer[15] ^= gcMifBuffer[i];
	for(i=0;i<3;i++)
	{
		if (CardMFCWrite16Bytes(gcBlock, gcMifBuffer)==MI_OK)
			break;
	} 
	if(i==3)return 0;
	return 1;
}
//更改錢包
unsigned char ModifyMoney(unsigned char cMode,unsigned char blck, unsigned long lMoney)
{
	unsigned char  i;

	switch(blck)
	{
	case 9:
	case 10:
		for(i=0;i<3;i++)
		{
			gcSector = gstWorkCardInfomation.stCardStruct.cMoneySector;
			if(AuthenCard(&glSerialNo,gcSector,MIF_WRITE))
				if(CardMFCValueWithTransfer(cMode, blck, blck, lMoney)==MI_OK)
					break;
		}
		if (i==3) return 0;
		break;
	case 33:
	case 34:
		for(i=0;i<3;i++)
		{
			gcSector = gstWorkCardInfomation.stCardStruct.cEveTimesSector;
			if(AuthenCard(&glSerialNo,gcSector,MIF_WRITE))
				if(CardMFCValueWithTransfer(cMode, blck, blck, lMoney)==MI_OK)
					break;
		}
		if (i==3) return 0;
		break;
	default:
		return 0;
	}
	return 1;
}
//更改指針
unsigned char ModifyPoint()
{
	unsigned char  i;

	gcSector = gstWorkCardInfomation.cHisCharge / 3;
	gcBlock = gstWorkCardInfomation.cHisCharge % 3;
	gcSector = gstWorkCardInfomation.stCardStruct.cHistorySector[gcSector];
	gcBlock += gcSector * 4;

	memcpy(gcMifBuffer, gcNowTime+3, 4);		
//	memcpy(gcMifBuffer+4, &gstWorkCardInfomation.lMoney, 4);
	OverTurnString(gcMifBuffer+4, &gstWorkCardInfomation.lMoney, 4);
//	memcpy(gcMifBuffer+8, &glChargeMoney, 3);
	OverTurnString(gcMifBuffer+8, (unsigned char*)&glChargeMoney+1, 3);
	gcMifBuffer[11] = gcChargeType;
	memcpy(gcMifBuffer+12, gcPSAMNo, 4);

	if(!AuthenCard(&glSerialNo, gcSector, MIF_WRITE)) return 0;
	for(i=0;i<3;i++)
		if(CardMFCWrite16Bytes(gcBlock, gcMifBuffer)==MI_OK) break;
	if(i==3) return 0;
	if (gstWorkCardInfomation.cHisCharge < 8)
		gstWorkCardInfomation.cHisCharge ++;
	else
		gstWorkCardInfomation.cHisCharge = 0;

	switch(gcChargeType)
	{
	case CHARGETYPE_DECMONEY:
	case CHARGETYPE_INCMONEY:
	case CHARGETYPE_PURMONEY:
		if (gstWorkCardInfomation.iMoneyTotleTimes < 0xffff)		
			gstWorkCardInfomation.iMoneyTotleTimes ++;
		else
			gstWorkCardInfomation.iMoneyTotleTimes = 0;
		break;
	case CHARGETYPE_DECTIMES:
	case CHARGETYPE_INCTIMES:
	case CHARGETYPE_PURTIMES:
		if (gstWorkCardInfomation.iTimesTotleTimes < 0xffff)		
			gstWorkCardInfomation.iTimesTotleTimes ++;
		else
			gstWorkCardInfomation.iTimesTotleTimes = 0;
		break;
	}
	gcSector = gstWorkCardInfomation.stCardStruct.cPublicSector;
	gcBlock = gcSector * 4;
	if(!AuthenCard(&glSerialNo, gcSector, MIF_WRITE)) return 0;
	for(i=0;i<3;i++)
		if(CardMFCRead16Bytes(gcBlock, gcMifBuffer)==MI_OK) break;
	if(i==3) return 0;

	gcMifBuffer[0] = gstWorkCardInfomation.cHisCharge+1;		
	switch(gcChargeType)
	{
	case CHARGETYPE_DECMONEY:
	case CHARGETYPE_INCMONEY:
	case CHARGETYPE_PURMONEY:
//		memcpy(gcMifBuffer+1, &gstWorkCardInfomation.iMoneyTotleTimes, 2);
		OverTurnString(gcMifBuffer+1, &gstWorkCardInfomation.iMoneyTotleTimes, 2);
		break;
	case CHARGETYPE_DECTIMES:
	case CHARGETYPE_INCTIMES:
	case CHARGETYPE_PURTIMES:
//		memcpy(gcMifBuffer+4, &gstWorkCardInfomation.iTimesTotleTimes, 2);
		OverTurnString(gcMifBuffer+4, &gstWorkCardInfomation.iTimesTotleTimes, 2);
		break;
	}
	gcMifBuffer[15] = 0;
	for(i=0;i<15;i++)
		gcMifBuffer[15] ^= gcMifBuffer[i];

	for(i=0;i<3;i++)
		if(CardMFCWrite16Bytes(gcBlock, gcMifBuffer)==MI_OK) break;
	if(i==3) return 0;
	return 1;
}
//分析卡片目錄結構
void AnalyseCardStruct(unsigned char *CardDir)
{
	unsigned char i, j;
	
	j = 0;
	memset((unsigned char*)&gstWorkCardInfomation.stCardStruct, 0xff, 9);
	for(i=0;i<16;i++)
	{
		switch(CardDir[i])
		{
		case 0x00:
			gstWorkCardInfomation.stCardStruct.cDirSector = i;
			break;
		case 0x01:
			gstWorkCardInfomation.stCardStruct.cPublishSector = i;
			break;
		case 0x10:
			gstWorkCardInfomation.stCardStruct.cMoneySector = i;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人黄色av网站在线| 一本在线高清不卡dvd| 国产成人av在线影院| 91久久精品一区二区三区| 久久综合网色—综合色88| 一区二区三区在线视频免费| 国产精品一区二区黑丝| 欧美视频在线观看一区二区| 久久精品视频一区二区| 日韩高清不卡一区二区| 日本久久精品电影| 国产精品欧美精品| 九九久久精品视频| 欧美精品视频www在线观看| 国产精品区一区二区三| 国产一区二区三区四区在线观看| 91极品美女在线| 亚洲精品videosex极品| 经典三级一区二区| 91精品国产免费| 亚洲成人动漫在线免费观看| 91在线观看地址| 国产精品视频看| 国产91精品欧美| 久久久久久久久久久久久久久99 | 一区二区三区在线免费| 成人精品一区二区三区四区| 久久久久久久久一| 国产一区日韩二区欧美三区| 欧美刺激午夜性久久久久久久| 日日夜夜精品视频免费| 欧美视频一区二区| 一区二区三国产精华液| 一本大道久久a久久综合| 亚洲人亚洲人成电影网站色| 不卡电影免费在线播放一区| 国产欧美日韩麻豆91| 国产精品1区2区3区| 久久久久久9999| 国产精品自拍三区| 欧美国产乱子伦| 国产精品综合av一区二区国产馆| 国产亚洲欧洲一区高清在线观看| 国产自产视频一区二区三区| 2024国产精品| 成人午夜av在线| 亚洲精品国产高清久久伦理二区| 在线免费视频一区二区| 一二三区精品福利视频| 在线播放中文字幕一区| 狠狠色丁香婷婷综合久久片| 精品国产一区二区精华| 国产福利一区在线| 日韩毛片一二三区| 欧美日韩一区在线观看| 久久精品久久综合| 国产精品美日韩| 欧美写真视频网站| 加勒比av一区二区| 国产精品久久久久一区| 欧美揉bbbbb揉bbbbb| 久久99热这里只有精品| 国产日韩精品一区二区浪潮av | 国产在线播精品第三| 国产色产综合色产在线视频| 99re这里只有精品视频首页| 午夜伊人狠狠久久| 久久久久久**毛片大全| 一本久久a久久免费精品不卡| 三级在线观看一区二区| 久久久综合视频| 91久久香蕉国产日韩欧美9色| 蜜桃视频一区二区| 亚洲丝袜美腿综合| 91精品国产综合久久精品图片 | 亚洲一区二区三区在线播放| 欧美一区二区在线观看| 成人国产电影网| 日韩精品1区2区3区| 亚洲国产岛国毛片在线| 欧美一级夜夜爽| 99免费精品视频| 精品午夜一区二区三区在线观看 | 天堂资源在线中文精品| 国产日产欧产精品推荐色| 日本韩国欧美一区二区三区| 激情图片小说一区| 亚洲成人777| 国产精品欧美精品| 337p日本欧洲亚洲大胆精品| 色哟哟精品一区| 国产精品一区不卡| 久久国产精品无码网站| 亚洲成人动漫在线免费观看| 亚洲私人黄色宅男| 国产精品私人影院| 日韩精品一区二区三区中文不卡| 91久久精品一区二区三| 成人黄色大片在线观看| 国产伦精品一区二区三区免费| 日韩电影网1区2区| 亚洲精品国产品国语在线app| 日本一区二区三区四区| 亚洲精品在线电影| 欧美一区午夜视频在线观看| 欧美色欧美亚洲另类二区| 日本精品一区二区三区四区的功能| 国产mv日韩mv欧美| 国产成人免费在线观看不卡| 精品影院一区二区久久久| 视频在线观看一区| 婷婷国产v国产偷v亚洲高清| 一区二区三区在线影院| 一区二区三区四区五区视频在线观看| 中文字幕在线不卡视频| 亚洲国产精品v| 国产精品卡一卡二卡三| 欧美大黄免费观看| 日韩一区二区麻豆国产| 欧美精品色综合| 日韩一级完整毛片| 精品免费日韩av| 久久尤物电影视频在线观看| 欧美精品一区二区久久婷婷 | 一本到不卡免费一区二区| 91欧美一区二区| 欧美日韩日本视频| 欧美日韩在线直播| 欧美一区日韩一区| 日韩美女一区二区三区| 精品国产乱码91久久久久久网站| 欧美视频一区在线| 欧美裸体一区二区三区| 91精品国产美女浴室洗澡无遮挡| 日韩欧美aaaaaa| 精品国产乱码久久久久久夜甘婷婷| 久久久久久毛片| 国产精品二区一区二区aⅴ污介绍| 亚洲色图制服诱惑| 亚洲午夜免费电影| 免费观看30秒视频久久| 国产另类ts人妖一区二区| hitomi一区二区三区精品| 精品视频一区二区三区免费| 91精品国产乱| 国产精品久久久久国产精品日日| 国产精品成人一区二区三区夜夜夜 | 久久精品人人做人人爽人人| 国产精品传媒入口麻豆| 视频一区欧美精品| 国产精品影视在线观看| 色哟哟一区二区在线观看| 欧美丰满嫩嫩电影| 国产欧美日产一区| 首页综合国产亚洲丝袜| 国产.精品.日韩.另类.中文.在线.播放| av电影天堂一区二区在线| 欧美男同性恋视频网站| 国产农村妇女毛片精品久久麻豆 | 亚洲欧美偷拍卡通变态| 亚洲v日本v欧美v久久精品| 国产精品一级片在线观看| 在线国产电影不卡| 久久久国产精华| 天堂久久一区二区三区| 成人av网站免费| 精品久久久久一区| 亚洲国产日韩精品| 懂色一区二区三区免费观看| 69堂成人精品免费视频| 亚洲男人电影天堂| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 欧美成人官网二区| 亚洲最大的成人av| 国产成人福利片| 精品蜜桃在线看| 视频一区视频二区中文字幕| 国产99久久久久| 欧美成人猛片aaaaaaa| 亚洲va天堂va国产va久| 91欧美激情一区二区三区成人| 久久亚洲春色中文字幕久久久| 日韩精品电影在线| 欧美日韩一区二区三区四区五区| 国产精品久久久久一区二区三区 | 成人午夜激情视频| 精品国产一区二区三区四区四| 亚洲成人精品一区二区| 日韩女优视频免费观看| 亚洲va天堂va国产va久| 欧美在线视频日韩| 亚洲欧洲一区二区在线播放| 成人免费福利片| 国产精品色婷婷久久58| 国产精品白丝jk白祙喷水网站| 精品日韩欧美在线| 狠狠色狠狠色综合| 久久久久久久一区| 丰满亚洲少妇av| 日韩理论片中文av|