查看信息
分析代码
int __cdecl main(int argc, const char **argv, const char **envp)
{
__int64 v3; // rax
_QWORD *v4; // rax
const CHAR *v5; // r11
__int64 v6; // r10
int v7; // er9
const CHAR *v8; // r10
__int64 v9; // rcx
__int64 v10; // rax
unsigned int v12; // ecx
__int64 v13; // r9
__int128 input[2]; // [rsp+20h] [rbp-38h] BYREF
memset(input, 0, sizeof(input));
sub_7FF714171080("%s", (const char *)input);
v3 = -1i64;
do
++v3;
while ( *((_BYTE *)input + v3) );
if ( v3 != 0x1F ) // 输入字符串长度为32
{
while ( 1 )
Sleep(0x3E8u);
}
v4 = sub_7FF714171280(input); // 加密(打乱顺序)
v5 = name;
if ( v4 )
{
sub_7FF7141715C0((unsigned __int8 *)v4[1]); //打乱顺序
sub_7FF7141715C0(*(unsigned __int8 **)(v6 + 16