/* vim: set filetype=c ts=8 noexpandtab: */ #include "common.h" __declspec(naked) void * __stdcall thiscall0(void *address, void *this) { _asm { add esp, 0xC mov ecx, [esp-0x4] mov eax, [esp-0x8] push [esp-0xC] jmp eax } } __declspec(naked) void * __stdcall thiscall1(void *address, void *this, int a) { _asm { add esp, 0xC mov ecx, [esp-0x4] mov eax, [esp-0x8] push [esp-0xC] jmp eax } } __declspec(naked) void * __stdcall thiscall2(void *address, void *this, int a, int b) { _asm { add esp, 0xC mov ecx, [esp-0x4] mov eax, [esp-0x8] push [esp-0xC] jmp eax } } __declspec(naked) void * __stdcall thiscall3(void *address, void *this, int a, int b, int c) { _asm { add esp, 0xC mov ecx, [esp-0x4] mov eax, [esp-0x8] push [esp-0xC] jmp eax } } __declspec(naked) void * __stdcall thiscall4(void *address, void *this, int a, int b, int c, int d) { _asm { add esp, 0xC mov ecx, [esp-0x4] mov eax, [esp-0x8] push [esp-0xC] jmp eax } } __declspec(naked) void __stdcall RangeList__ctor(struct CRangeList *this) { _asm { pop eax pop ecx push eax mov eax, 0x45F2D0 jmp eax } } __declspec(naked) void __stdcall RangeList__dtor(struct CRangeList *this) { _asm { pop eax pop ecx push eax mov eax, 0x45F300 jmp eax } } __declspec(naked) int __stdcall BPlusTree__IsEmpty(void *this) { _asm { pop eax pop ecx push eax mov eax, 0x45B570 jmp eax } } int RaknetTimeNS_IsBigger( struct CRaknetTimeNS isbigger, struct CRaknetTimeNS than) { if (isbigger.hi32 > than.hi32) { return 1; } return isbigger.hi32 == than.hi32 && isbigger.lo32 > than.lo32; }