提交 990b0012 编写于 作者: K Knine

代码目录结构调整

上级 500654df
node_modules
build
\ No newline at end of file
(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){
"use strict";
class L07 {
constructor() {
this.module_name_winmine = "winmine.exe";
console.log("======================", new Date().toISOString(), "==========================");
console.log("Frida.version", Frida.version);
//获取模块基址
this.module_winmine = Process.getModuleByName(this.module_name_winmine);
}
board_info() {
let height = this.module_winmine.base.add(0x5338).readU32();
console.log("棋盘高度:", height);
let width = this.module_winmine.base.add(0x5334).readU32();
console.log("棋盘宽度:", width);
let mine_count = this.module_winmine.base.add(0x5330).readU32();
console.log("地雷数量:", mine_count);
let head = this.module_winmine.base.add(0x5340);
console.log("棋盘头:", head);
//遍历棋盘,按行遍历
for (let i = 0; i < height + 2; i++) {
//按列遍历
let data = [];
for (let j = 0; j < width + 2; j++) {
let byte_data = head.add(j + 0x20 * i).readU8();
data.push(byte_data.toString(16).padStart(2, '0'));
}
console.log(data.join(" "));
}
}
}
let l07 = new L07();
l07.board_info();
},{}]},{},[1])
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCIuLi8wNV/or7vlj5bmo4vnm5jmlbDmja4vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FDQUEsTUFBTSxHQUFHO0lBR0w7UUFGUSx3QkFBbUIsR0FBRyxhQUFhLENBQUM7UUFHeEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxFQUFFLDRCQUE0QixDQUFDLENBQUM7UUFDOUYsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVDLFFBQVE7UUFDUixJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELFVBQVU7UUFDTixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDNUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFN0IsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzNELE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRTVCLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNoRSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVqQyxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFMUIsV0FBVztRQUNYLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDbEMsTUFBTTtZQUNOLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNkLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ2pDLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDaEQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN2RCxDQUFDO1lBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDaEMsQ0FBQztJQUNMLENBQUM7Q0FDSjtBQUVELElBQUksR0FBRyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7QUFDcEIsR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFDIiwiZmlsZSI6ImdlbmVyYXRlZC5qcyIsInNvdXJjZVJvb3QiOiIifQ==
class L07 { class L07 {
private module_name_winmine = "winmine.exe"; private module_name_winmine = "winmine.exe";
private module_winmine: Module; private module_winmine: Module;
private offset地雷数量: number = 0x56A4;
private offset棋盘高度: number = 0x56A8;
private offset棋盘宽度: number = 0x56AC;
constructor() { constructor() {
console.log("======================", new Date().toISOString(), "=========================="); console.log("======================", new Date().toISOString(), "==========================");
console.log("Frida.version", Frida.version); console.log("Frida.version", Frida.version);
...@@ -9,13 +12,13 @@ class L07 { ...@@ -9,13 +12,13 @@ class L07 {
} }
board_info() { board_info() {
let height = this.module_winmine.base.add(0x5338).readU32(); let height = this.module_winmine.base.add(this.offset棋盘高度).readU32();
console.log("棋盘高度:", height); console.log("棋盘高度:", height);
let width = this.module_winmine.base.add(0x5334).readU32(); let width = this.module_winmine.base.add(this.offset棋盘宽度).readU32();
console.log("棋盘宽度:", width); console.log("棋盘宽度:", width);
let mine_count = this.module_winmine.base.add(0x5330).readU32(); let mine_count = this.module_winmine.base.add(this.offset地雷数量).readU32();
console.log("地雷数量:", mine_count); console.log("地雷数量:", mine_count);
let head = this.module_winmine.base.add(0x5340); let head = this.module_winmine.base.add(0x5340);
......
...@@ -4,9 +4,10 @@ ...@@ -4,9 +4,10 @@
"description": "", "description": "",
"main": "src/index.ts", "main": "src/index.ts",
"scripts": { "scripts": {
"build": "frida-compile src/index.ts -o index.js -c", "build": "frida-compile 04_frida_with_typescript/src/index.ts -o build/04.js -c",
"watch": "frida-compile src/index.ts -o index.js -w", "watch04": "frida-compile 04_frida_with_typescript/src/index.ts -o build/04.js -w",
"watch05": "frida-compile ../05_读取棋盘数据/index.ts -o index.js -w" "watch05": "frida-compile ./05_读取棋盘数据/index.ts -o ./build/05.js -w",
"runx": "D:/Python/Python371/Scripts/frida.exe -n winmine.exe -l ./build/05.js"
}, },
"keywords": [], "keywords": [],
"author": "", "author": "",
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册