var ticks = lastModified.Ticks; 00000000 push ebp 00000001 mov ebp,esp 00000003 push edi 00000004 push esi 00000005 push ebx 00000006 sub esp,54h 00000009 mov dword ptr [ebp-48h],ecx 0000000c mov eax,dword ptr [ebp+8] 0000000f mov edx,dword ptr [ebp+0Ch] 00000012 and edx,3FFFFFFFh 00000018 mov dword ptr [ebp-14h],eax 0000001b mov dword ptr [ebp-10h],edx //DF: Not sure why this is needed but the below comparison randomly fails on some machines without it. NO IDEA WHY?!? //long rightTicks = ticks - (ticks % 10000); //Log.Debug((ticks == rightTicks).ToString()); if (ticks != ticks - (ticks % 10000) && lastModified != DateTime.MaxValue) 0000001e mov ecx,eax 00000020 mov ebx,edx 00000022 mov esi,2710h 00000027 cmp edx,1388h 0000002d jb 00000042 0000002f mov edi,eax 00000031 mov eax,edx 00000033 cdq 00000034 idiv eax,esi 00000036 mov eax,edi 00000038 mov edi,4E20h 0000003d idiv eax,edi 0000003f mov eax,edx 00000041 cdq 00000042 idiv eax,esi 00000044 mov eax,edx 00000046 cdq 00000047 sub ecx,eax 00000049 sbb ebx,edx 0000004b cmp edx,ebx 0000004d jne 00000053 0000004f cmp eax,ecx 00000051 je 000000AC 00000053 lea ecx,[ebp+8] 00000056 mov eax,dword ptr [ecx] 00000058 mov edx,dword ptr [ecx+4] 0000005b mov dword ptr [ebp-2Ch],eax 0000005e mov dword ptr [ebp-28h],edx 00000061 mov ecx,dword ptr ds:[0349103Ch] 00000067 add ecx,4 0000006a mov eax,dword ptr [ecx] 0000006c mov edx,dword ptr [ecx+4] 0000006f mov dword ptr [ebp-34h],eax 00000072 mov dword ptr [ebp-30h],edx 00000075 mov eax,dword ptr [ebp-2Ch] 00000078 mov edx,dword ptr [ebp-28h] 0000007b and edx,3FFFFFFFh 00000081 mov dword ptr [ebp-1Ch],eax 00000084 mov dword ptr [ebp-18h],edx 00000087 mov ecx,dword ptr [ebp-34h] 0000008a mov ebx,dword ptr [ebp-30h] 0000008d and ebx,3FFFFFFFh 00000093 cmp edx,ebx 00000095 jne 0000009B 00000097 cmp eax,ecx 00000099 je 0000009F 0000009b xor eax,eax 0000009d jmp 000000A4 0000009f mov eax,1 000000a4 test eax,eax 000000a6 je 00000142 } if (lastModified.Kind != DateTimeKind.Utc && lastModified != DateTime.MaxValue) 000000ac lea ecx,[ebp+8] 000000af call 54F593A0 000000b4 cmp eax,1 000000b7 je 00000112 000000b9 lea ecx,[ebp+8] 000000bc mov eax,dword ptr [ecx] 000000be mov edx,dword ptr [ecx+4] 000000c1 mov dword ptr [ebp-3Ch],eax 000000c4 mov dword ptr [ebp-38h],edx 000000c7 mov ecx,dword ptr ds:[0349103Ch] 000000cd add ecx,4 000000d0 mov eax,dword ptr [ecx] 000000d2 mov edx,dword ptr [ecx+4] 000000d5 mov dword ptr [ebp-44h],eax 000000d8 mov dword ptr [ebp-40h],edx 000000db mov eax,dword ptr [ebp-3Ch] 000000de mov edx,dword ptr [ebp-38h] 000000e1 and edx,3FFFFFFFh 000000e7 mov dword ptr [ebp-24h],eax 000000ea mov dword ptr [ebp-20h],edx 000000ed mov ecx,dword ptr [ebp-44h] 000000f0 mov ebx,dword ptr [ebp-40h] 000000f3 and ebx,3FFFFFFFh 000000f9 cmp edx,ebx 000000fb jne 00000101 000000fd cmp eax,ecx 000000ff je 00000105 00000101 xor eax,eax 00000103 jmp 0000010A 00000105 mov eax,1 0000010a test eax,eax 0000010c je 0000022A 00000112 mov esi,dword ptr ds:[034B3FC8h] 00000118 lea eax,[ebp+8] 0000011b sub esp,8 0000011e movq xmm0,mmword ptr [eax] 00000122 movq mmword ptr [esp],xmm0 00000127 call dword ptr ds:[0502F5F8h] 0000012d push eax 0000012e mov ecx,esi 00000130 mov edx,dword ptr [ebp-48h] 00000133 call 54EF76D4 00000138 lea esp,[ebp-0Ch] 0000013b pop ebx 0000013c pop esi 0000013d pop edi 0000013e pop ebp 0000013f ret 8 00000142 mov ecx,5532A204h 00000147 call FFF12F50 0000014c mov dword ptr [ebp-4Ch],eax 0000014f mov ecx,5532A204h 00000154 call FFF12F50 00000159 mov dword ptr [ebp-50h],eax 0000015c mov edx,34A1A8h 00000161 mov ecx,70002584h 00000166 call 5C91F349 0000016b mov dword ptr [ebp-54h],eax 0000016e mov edx,34A1A8h 00000173 mov ecx,700025FEh 00000178 call 5C91F349 0000017d mov edx,eax 0000017f lea ecx,[ebp+8] 00000182 call 55497FB8 00000187 mov dword ptr [ebp-58h],eax 0000018a mov eax,dword ptr [ebp-4Ch] 0000018d mov ecx,dword ptr [ebp-14h] 00000190 mov edx,dword ptr [ebp-10h] 00000193 mov dword ptr [eax+4],ecx 00000196 mov dword ptr [eax+8],edx 00000199 push eax 0000019a mov ecx,dword ptr [ebp-14h] 0000019d mov ebx,dword ptr [ebp-10h] 000001a0 mov eax,dword ptr [ebp-14h] 000001a3 mov edx,dword ptr [ebp-10h] 000001a6 mov esi,2710h 000001ab cmp edx,1388h 000001b1 jb 000001C6 000001b3 mov edi,eax 000001b5 mov eax,edx 000001b7 cdq 000001b8 idiv eax,esi 000001ba mov eax,edi 000001bc mov edi,4E20h 000001c1 idiv eax,edi 000001c3 mov eax,edx 000001c5 cdq 000001c6 idiv eax,esi 000001c8 mov eax,edx 000001ca cdq 000001cb sub ecx,eax 000001cd sbb ebx,edx 000001cf mov eax,dword ptr [ebp-50h] 000001d2 mov dword ptr [eax+4],ecx 000001d5 mov dword ptr [eax+8],ebx 000001d8 push eax 000001d9 mov ecx,dword ptr [ebp-54h] 000001dc mov edx,dword ptr [ebp-58h] 000001df call 54EF2634 000001e4 mov ecx,eax 000001e6 call FFFF58A0 throw new ArgumentException("lastModified specifies too accurate a date", "lastModified"); 000001eb mov ecx,55321B68h 000001f0 call FFF12F50 000001f5 mov esi,eax 000001f7 mov edx,34A1A8h 000001fc mov ecx,7000262Eh 00000201 call 5C91F349 00000206 mov dword ptr [ebp-5Ch],eax 00000209 mov edx,34A1A8h 0000020e mov ecx,70002684h 00000213 call 5C91F349 00000218 push eax 00000219 mov edx,dword ptr [ebp-5Ch] 0000021c mov ecx,esi 0000021e call 554C1CA0 00000223 mov ecx,esi 00000225 call 5C91BC8E { throw new ArgumentException("lastModified should be in UTC", "lastModified"); 0000022a mov ecx,55321B68h 0000022f call FFF12F50 00000234 mov esi,eax 00000236 mov edx,34A1A8h 0000023b mov ecx,7000269Eh 00000240 call 5C91F349 00000245 mov dword ptr [ebp-60h],eax 00000248 mov edx,34A1A8h 0000024d mov ecx,70002684h 00000252 call 5C91F349 00000257 push eax 00000258 mov edx,dword ptr [ebp-60h] 0000025b mov ecx,esi 0000025d call 554C1CA0 00000262 mov ecx,esi 00000264 call 5C91BC8E 00000269 int 3