19,8 → 19,6 |
|
*******************************************************************************/ |
|
dword generator; // random number generator - äëÿ ãåíåðàöèè ñëó÷àéíûõ ÷èñåë |
|
inline fastcall int random( ECX) |
// get pseudo-random number - ïîëó÷èòü ïñåâäîñëó÷àéíîå ÷èñëî |
{ |
30,11 → 28,11 |
$xor eax,edx |
$not eax |
|
EBX = generator; |
EBX = __generator; |
$ror ebx,3 |
$xor ebx,0xdeadbeef |
EBX += EAX; |
generator = EBX; |
__generator = EBX; |
|
EAX += EBX; |
EAX = EAX % ECX; |
43,7 → 41,7 |
} |
|
inline fastcall randomize() |
// initialize random number generator - èíèöèàëèçèðîâàòü ãåíåðàòîð ñëó÷àéíûõ ÷èñåë |
// initialize random number __generator - èíèöèàëèçèðîâàòü ãåíåðàòîð ñëó÷àéíûõ ÷èñåë |
{ |
asm |
{ |
51,5 → 49,6 |
int 0x40 |
ror eax,16 |
} |
generator = EAX; |
} |
__generator = EAX; |
} |
|