Понимаю, что, возможно, я уже поздновато, но кому не лень - помогите с задачкой.
Имеем следующий код самопальной функции (сильно не пинать):
Code:
6399FD 55;               PUSH EBP
6399FE 8BEC;             MOV EBP,ESP
639A00 83F930;           CMP ECX,30
639A03 7328;             JNB SHORT mop.00639A2D
639A05 8B1DFCCC6900;     MOV EBX,DWORD PTR DS:[69CCFC]
639A0B A1F4CC6900;       MOV EAX,DWORD PTR DS:[69CCF4]
639A10 69C068010000;     IMUL EAX,EAX,168
639A16 2BD8;             SUB EBX,EAX
639A18 81C3440B0000;     ADD EBX,0B44
639A1E 8B03;             MOV EAX,DWORD PTR DS:[EBX]
639A20 69C968010000;     IMUL ECX,ECX,168
639A26 83C13C;           ADD ECX,3C
639A29 03C8;             ADD ECX,EAX
639A2B EB0E;             JMP SHORT mop.00639A3B
639A2D 8B0D4C956900;     MOV ECX,DWORD PTR DS:[69954C]
639A33 83C138;           ADD ECX,38
639A36 8B09;             MOV ECX,DWORD PTR DS:[ECX]
639A38 83C13C;           ADD ECX,3C
639A3B 85D2;             TEST EDX,EDX
639A3D 7410;             JE SHORT mop.00639A4F
639A3F 8B4508;           MOV EAX,DWORD PTR SS:[EBP+8]
639A42 8901;             MOV DWORD PTR DS:[ECX],EAX
639A44 8B450C;           MOV EAX,DWORD PTR SS:[EBP+C]
639A47 66894104;         MOV WORD PTR DS:[ECX+4],AX
639A4B 8BE5;             MOV ESP,EBP
639A4D 5D;               POP EBP
639A4E C3;               RETN
639A4F 8B01;             MOV EAX,DWORD PTR DS:[ECX]
639A51 894508;           MOV DWORD PTR SS:[EBP+8],EAX
639A54 0FBF4104;         MOVSX EAX,WORD PTR DS:[ECX+4]
639A58 89450C;           MOV DWORD PTR SS:[EBP+C],EAX
639A5B 8BE5;             MOV ESP,EBP
639A5D 5D;               POP EBP
639A5E C3;               RETN
 
Функция предсталяет собой не что иное, как контроль Портала Вызова, некогда написанный Михаником в ERM-е. 
Конвертирование - fastcall. Вызов: !!SN:E6527485/3/x1/x2/x3/x4;
Где:
x1 - номер города. Если больше или равно 48, то текущий
x2 - 0 - прочитать, 1 - записать
x3 и x4 - числа/переменные для записи/чтения типа и кол-ва существа.
Так вот: запись работает, а чтение - нет. Ибо я не пойму, как и куда ЭРА возвращает результаты. В v1, ясное дело, результат возвращается (кол-во существ), но судя по справке, можно возвращать и несколько результатов. 
Можно, конечно, записывать результат напрямую в адрес переменной, но это лишает универсальности, да и охота разобраться...