int __stdcall Java_jaclib_ping_IcmpService_run(int a1, int a2)
{
int v2; // edi@1
int v3; // eax@1
int (__stdcall *v4)(_DWORD, _DWORD, _DWORD, _DWORD); // edx@1
HHOOK v5; // eax@1
int (__stdcall *v6)(_DWORD, _DWORD, _DWORD, _DWORD); // edx@1
int v7; // eax@1
int result; // eax@3
struct tagMSG Msg; // [sp+30h] [bp-1Ch]@1
v2 = (*(int (__stdcall **)(int, int))(*(_DWORD *)a1 + 124))(a1, a2);
v3 = (*(int (__stdcall **)(int, int))(*(_DWORD *)a1 + 84))(a1, a2);
v4 = *(int (__stdcall **)(_DWORD, _DWORD, _DWORD, _DWORD))(*(_DWORD *)a1 + 132);
dword_100241B4 = v3;
dword_10024170 = v4(a1, v2, "notify", "(III)V");
idThread = GetCurrentThreadId();
v5 = SetWindowsHookExA(14, (HOOKPROC)fn, hmod, 0);
v6 = *(int (__stdcall **)(_DWORD, _DWORD, _DWORD, _DWORD))(*(_DWORD *)a1 + 132);
hhk = v5;
v7 = v6(a1, v2, "notify", "(I)V");
sub_10005DA0(a1, dword_100241B4, v7, 0);
while ( GetMessageA(&Msg, 0, 0, 0) )
{
TranslateMessage(&Msg);
DispatchMessageA(&Msg);
}
UnhookWindowsHookEx(hhk);
(*(void (__stdcall **)(int, int))(*(_DWORD *)a1 + 88))(a1, dword_100241B4);
result = 0;
dword_10024170 = 0;
hhk = 0;
return
}
a reference for the code https://msdn.microsoft.com/en-us/library/windows/desktop/ms644970(v=vs.85).aspx
check out LLMHF_INJECTED
Just curious why runescape would have something like that