360 複賽 re題目

2021-09-29 13:59:23 字數 1457 閱讀 9271

這個題目當時沒有做出來  然後當時看到這一堆的 int3

第一反應就是 異常函式,。。。。

只不過沒有想到用的是

然後 去看這個401090

這個看了一下 大概意思就是

這裡可以用ida指令碼實現, 也可以按照exe檔案直接讀取的方法寫

這裡我直接用 檔案操作的方法= =

f=open("360.exe","rb")

data=f.read()

codes=data[0x2200:0x2400]

encodes=

for i in codes:

cun=0

cuns=0

print hex(len(encodes))

while true:

cuns=cun+1

if cuns>0x200:

break

while encodes[cuns]!=0xcc:

cuns+=1

if cuns>=0x200:

break

if cuns>0x200:

break

for i in range(cun+1,cuns):

encodes[i]=encodes[i]^(cun&0xff)

encodes[cun]=0x90

cun=cuns

decode=""

for i in encodes:

decode+=chr(i)

ls=data[:0x2200]+decode+data[0x2400:]

fs=open("360write.exe",'wb')

fs.write(ls)

然後得到了**

然後用指令碼解出來flag 即可

cmpstr="immbpopdfafbnkppjgpfpkmdponhmmebgomnoklbfmil"

ls=flag=""

for i in range(0,len(cmpstr),2):

#print ls

for i in range(len(ls)):

flag+= chr((ls[i] ^ 0x4c ^ 0x52 ^i)/2)

print flag

參考鏈結

quot 有道難題2009 quot 複賽題目

突然發現,有道難題也有程式設計比賽,先看了一下去年的題目,自己寫了乙個方法,再與官方給出的方法相比較,下面我對我的方法和官方方法作一下比較,找出不足,進步進步 problem statement 如果乙個數字十進位制表達時,不存在連續兩位數字相等,則稱之為 不重複數 例如,105,1234和1212...

題目1101 計算表示式 RE

題目描述 對於乙個不存在括號的表示式進行計算 輸入 存在多種資料,每組資料一行,表示式不存在空格 輸出 輸出結果 樣例輸入 6 2 3 3 4 樣例輸出 18 include include using namespace std stackin stackop char str 100 int p...

360一道關於this的題目

原題目是這樣子的 window.val 1 var obj 說出下面的輸出結果 obj.dbl var func obj.dbl func this呢其實就是這樣,分清楚呼叫就好了。obj中的沒有指定呼叫。預設從函式中查詢。如果沒有則往上一級查詢。所以 上面的式子可以寫成這樣 window.val ...