#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
void func(DWORD** a1,DWORD** a2)
{
DWORD** v9; // [sp+68h] [-18h]
DWORD** v10; // [sp+6Ch] [-14h]
v9 = a1;
v10 = a2;
DWORD* v7=NULL;
if (!v9 || *v9) // v9=a1为指针数组 参数一为指针数组,参数二为指针的指针
{
if (!v10 || *v10)
{
printf("hello world");
}
else
{
*v10 = v7;
}
}
else
{
*v9 = v7;// 根据这个可知参数一a1传入的是一个指针数组的第一个元素的地址(数组的首地址),不然的话v9就代表
}
}
int main(int argc, char* argv[])
{
DWORD* v7[7];
DWORD* v6;
v6 = 0;
v7[0] = 0;
func(v7, &v6);
}