-
-
[求助]小白请教,帮忙看看代码
-
发表于:
2018-3-4 19:52
2828
-
FILE *__fastcall ext_fopen(FILE *file)
{
FILE *v1; // rbp
uLong v2; // r13
_BYTE *v3; // rax
_BYTE *v4; // rbx
uLong v5; // r13
__int64 v6; // rdx
void *v7; // r14
FILE *result; // rax
uLong flen; // [rsp+8h] [rbp-40h]
uLong ulen; // [rsp+10h] [rbp-38h]
unsigned __int64 v11; // [rsp+18h] [rbp-30h]
v1 = file;
v11 = __readfsqword(0x28u);
fread(&ulen, 8uLL, 1uLL, file);
fread(&flen, 8uLL, 1uLL, file);
v2 = flen;
v3 = malloc(flen);
if ( !v3 )
goto LABEL_14;
v4 = v3;
fread(v3, 1uLL, v2, file);
v5 = flen;
if ( flen )
{
v6 = 0LL;
do
{
v4[v6] = v4[v6] - 7 - v6;
++v6;
}
while ( v5 != v6 );
}
v7 = malloc(ulen);
if ( v7 )
{
if ( (unsigned int)uncompress() )
{
php_printf();
}
else
{
fclose(file);
v1 = tmpfile();
fwrite(v7, 1uLL, ulen, v1);
free(v4);
free(v7);
rewind(v1);
}
result = v1;
}
else
{
LABEL_14:
php_printf();
result = file;
}
return result;
好心人能帮我翻译成C/C++的代码吗?看不太懂。。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课