ulong bitmap = 0x000000FFF;
00000000 push ebp
00000001 mov ebp,esp
00000003 push edi
00000004 push esi
00000005 sub esp,4Ch
00000008 xor eax,eax
0000000a mov dword ptr [ebp-1Ch],eax
0000000d mov dword ptr [ebp-18h],eax
00000010 mov dword ptr [ebp-0Ch],ecx
00000013 cmp dword ptr ds:[005014BCh],0
0000001a je 00000021
0000001c call 68D2403F
00000021 xor edx,edx
00000023 mov dword ptr [ebp-40h],edx
00000026 xor edx,edx
00000028 mov dword ptr [ebp-20h],edx
0000002b mov dword ptr [ebp-14h],0
00000032 mov dword ptr [ebp-10h],0
00000039 mov eax,0FFFh
0000003e cdq
0000003f mov dword ptr [ebp-14h],eax
00000042 mov dword ptr [ebp-10h],edx
BitBoard bitboard = bitmap;
00000045 push dword ptr [ebp-10h]
00000048 push dword ptr [ebp-14h]
0000004b lea ecx,[ebp-28h]
0000004e call dword ptr ds:[005028A4h]
00000054 lea edi,[ebp-1Ch]
00000057 lea esi,[ebp-28h]
0000005a movq xmm0,mmword ptr [esi]
0000005e movq mmword ptr [edi],xmm0
Stopwatch watch = Stopwatch.StartNew();
00000062 call 674CCFA0
00000067 mov dword ptr [ebp-44h],eax
0000006a mov eax,dword ptr [ebp-44h]
0000006d mov dword ptr [ebp-40h],eax
for (int i = 0; i < 1000000000; i++)
00000070 xor edx,edx
00000072 mov dword ptr [ebp-20h],edx
00000075 nop
00000076 jmp 0000008A
{
//bitmap &= bitmap;
bitboard.And(bitmap);
00000078 push dword ptr [ebp-10h]
0000007b push dword ptr [ebp-14h]
0000007e lea ecx,[ebp-1Ch]
00000081 call dword ptr ds:[005028C8h]
for (int i = 0; i < 1000000000; i++)
00000087 inc dword ptr [ebp-20h]
0000008a cmp dword ptr [ebp-20h],3B9ACA00h
00000091 jl 00000078
}
watch.Stop();
00000093 mov ecx,dword ptr [ebp-40h]
00000096 cmp dword ptr [ecx],ecx
00000098 call 674CD000
Console.WriteLine("Tempo impiegato: {0}", watch.ElapsedMilliseconds);
0000009d mov eax,dword ptr ds:[035D2088h]
000000a3 mov dword ptr [ebp-48h],eax
000000a6 mov ecx,dword ptr [ebp-40h]
000000a9 cmp dword ptr [ecx],ecx
000000ab call 674C8908
000000b0 mov dword ptr [ebp-30h],eax
000000b3 mov dword ptr [ebp-2Ch],edx
000000b6 mov ecx,6827A360h
000000bb call FFE1FBE0
000000c0 mov dword ptr [ebp-4Ch],eax
000000c3 mov eax,dword ptr [ebp-48h]
000000c6 mov dword ptr [ebp-50h],eax
000000c9 mov eax,dword ptr [ebp-4Ch]
000000cc mov ecx,dword ptr [ebp-30h]
000000cf mov edx,dword ptr [ebp-2Ch]
000000d2 mov dword ptr [eax+4],ecx
000000d5 mov dword ptr [eax+8],edx
000000d8 mov eax,dword ptr [ebp-4Ch]
000000db mov dword ptr [ebp-54h],eax
000000de mov ecx,dword ptr [ebp-50h]
000000e1 mov edx,dword ptr [ebp-54h]
000000e4 call 67E2B060
Console.ReadKey();
000000e9 lea ecx,[ebp-3Ch]
000000ec call 68405E60
000000f1 nop
}
000000f2 nop
000000f3 lea esp,[ebp-8]
000000f6 pop esi
000000f7 pop edi
000000f8 pop ebp
000000f9 ret