int __usercall sub_479A58@<eax>(char *a1@<eax>) { char *v2; // eax int v4; // [esp-4h] [ebp-64h] sub_479930(); v4 = sub_405340(); v2 = sub_405540(a1); sub_479964(v4, v2); return sub_4799E4(); }
时间: 2024-03-31 16:35:37 浏览: 78
这段代码是对某个函数(名称未知)的反汇编结果。根据代码的结构和变量名,可以猜测这是一个Windows平台下的C/C++函数。函数的作用大致是:调用sub_479930函数和sub_405340函数,将返回值存储到v4中;再调用sub_405540函数,将传入的a1作为参数传递进去,将返回值存储到v2中;最后调用sub_479964函数,将v4和v2作为参数传递进去。最终,函数返回sub_4799E4函数的返回值。具体函数的逻辑需要查看sub_479930、sub_405340、sub_405540、sub_479964和sub_4799E4函数的实现。
相关问题
int __usercall sub_4032B0@<eax>(int a1@<eax>, _DWORD *a2@<edx>) { DWORD ModuleFileNameA; // eax int result; // eax CHAR Filename[272]; // [esp+4h] [ebp-110h] BYREF sub_405080(); if ( a1 ) { GetCommandLineA(); while ( 1 ) { result = sub_40314C(); if ( !a1 || !*a2 ) break; --a1; } } else { ModuleFileNameA = GetModuleFileNameA(0, Filename, 0x105u); return sub_405170(ModuleFileNameA, Filename); } return result; }
这段代码是对某个函数(名称未知)的反汇编结果。根据代码的结构和变量名,可以猜测这是一个Windows平台下的C/C++函数。函数的作用大致是:如果传入的a1不为0,则通过循环执行sub_40314C函数a1次,并返回sub_40314C的返回值;如果传入的a1为0,则获取当前可执行文件的文件名并返回它。
int __usercall sub_479A94@<eax>(int a1@<eax>) { char v1; // bl _BYTE *v2; // esi int v3; // ecx unsigned int v5[2]; // [esp-Ch] [ebp-2Ch] BYREF int *v6; // [esp-4h] [ebp-24h] char v7[12]; // [esp+Ch] [ebp-14h] BYREF int v8; // [esp+18h] [ebp-8h] _BYTE *v9; // [esp+1Ch] [ebp-4h] int savedregs; // [esp+20h] [ebp+0h] BYREF v8 = 0; v9 = (_BYTE *)a1; v6 = &savedregs; v5[1] = (unsigned int)&loc_479B3C; v5[0] = (unsigned int)NtCurrentTeb()->NtTib.ExceptionList; __writefsdword(0, (unsigned int)v5); sub_405080(); v1 = 16; v2 = v9; do { v7[9] = byte_59B940[((unsigned __int8)*v2 >> 4) & 0xF]; v7[8] = 1; sub_403824(); v7[1] = byte_59B940[*v2 & 0xF]; v7[0] = 1; LOBYTE(v3) = 2; sub_4037F4(v3, v7); sub_4052E4(); sub_405348(); ++v2; --v1; } while ( v1 ); __writefsdword(0, v5[0]); v6 = (int *)&loc_479B43; return sub_405080(); }
这段代码是对某个函数(名称未知)的反汇编结果。根据代码的结构和变量名,可以猜测这是一个Windows平台下的C/C++函数。函数的作用大致是:将传入的a1作为一个指针数组,遍历其中的所有元素,将每个元素的值转换为16进制字符串并存储到v7数组中,最后返回sub_405080的返回值。具体的实现逻辑需要查看sub_403824、sub_4037F4、sub_405080、sub_4052E4和sub_405348函数的实现。
阅读全文