0) { $read = hash_update_stream($ctx, $fp, min($chunkSize, $remaining)); //echo "$read\n"; $remaining -= $read; //printf("\r%04.1f%%",(1-$remaining/$length)*100); } //echo "\n"; return hash_final($ctx); } $fp = fopen('sl-x86-3.4.loop1-to-3.4.loop2b.xd3','rb'); $hash = hash_part($fp,0,40*1024*1024); echo "$hash\n"; if ($hash != "40d99ed59fba1844207283d25f833c35") { echo "WHAT THE HELL IS GOING ON\n"; } fclose($fp); ?> Output: > for /L %i in (1,1,10) do @php recover.php 40d99ed59fba1844207283d25f833c35 40d99ed59fba1844207283d25f833c35 40d99ed59fba1844207283d25f833c35 40d99ed59fba1844207283d25f833c35 40d99ed59fba1844207283d25f833c35 40d99ed59fba1844207283d25f833c35 553302d5d7f3a423338067eb4d4d3ec9 WHAT THE HELL IS GOING ON 40d99ed59fba1844207283d25f833c35 40d99ed59fba1844207283d25f833c35 831e04ff036bf6f76ec8d4bc262de8bf WHAT THE HELL IS GOING ON >