Rev 2874 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2874 | Rev 3020 | ||
---|---|---|---|
Line 24... | Line 24... | ||
24 | $pop ebx |
24 | $pop ebx |
25 | return EAX; |
25 | return EAX; |
26 | } |
26 | } |
Line 27... | Line 27... | ||
27 | 27 | ||
28 | //mem.ReAlloc |
- | |
29 | inline fastcall dword mem_ReAllocR( ECX, EDX) |
- | |
30 | { |
- | |
31 | $mov eax, 68 |
- | |
32 | $mov ebx, 20 |
- | |
33 | $int 0x40 |
- | |
34 | } |
- | |
35 | 28 | //mem.ReAlloc |
|
36 | stdcall dword mem_ReAlloc(dword mptr, size) |
29 | stdcall dword mem_ReAlloc(dword mptr, size) |
37 | { |
30 | { |
38 | $push ebx |
31 | $push ebx |
39 | $push ecx |
32 | $push ecx |
Line 70... | Line 63... | ||
70 | 63 | ||
71 | //stdcall dword ?? |
64 | //stdcall dword ?? |
72 | inline fastcall mem_Move( EDI, ESI, ECX) |
65 | inline fastcall mem_Move( EDI, ESI, ECX) |
73 | { |
66 | { |
74 | asm { |
67 | asm { |
75 | mov eax, ecx |
68 | MOV EAX, ECX |
76 | cmp edi, esi |
69 | CMP EDI, ESI |
77 | jg l1 |
70 | JG L1 |
78 | je l2 |
71 | JE L2 |
79 | sar ecx, 2 |
72 | SAR ECX, 2 |
80 | js l2 |
73 | JS L2 |
81 | rep movsd |
74 | REP MOVSD |
82 | mov ecx, eax |
75 | MOV ECX, EAX |
83 | and ecx, 3 |
76 | AND ECX, 3 |
84 | rep movsb |
77 | REP MOVSB |
85 | jmp short l2 |
78 | JMP SHORT L2 |
86 | l1: lea esi, dsdword[ esi+ecx-4] |
79 | L1: LEA ESI, DSDWORD[ ESI+ECX-4] |
87 | lea edi, dsdword[ edi+ecx-4] |
80 | LEA EDI, DSDWORD[ EDI+ECX-4] |
88 | sar ecx, 2 |
81 | SAR ECX, 2 |
89 | js l2 |
82 | JS L2 |
90 | std |
83 | STD |
91 | rep movsd |
84 | REP MOVSD |
92 | mov ecx, eax |
85 | MOV ECX, EAX |
93 | and ecx, 3 |
86 | AND ECX, 3 |
94 | add esi, 3 |
87 | ADD ESI, 3 |
95 | add edi, 3 |
88 | ADD EDI, 3 |
96 | rep movsb |
89 | REP MOVSB |
97 | cld |
90 | CLD |
98 | l2: |
91 | L2: |
99 | } |
92 | } |
Line 100... | Line 93... | ||
100 | } |
93 | } |