el programa toma solo los 17 primeros caracteres. transformando cada uno en un numero de dos cifras(no es cod ascii).
bien, yo creia que bastaba con encontrar esos numeros y formar un numero de 34 digitos (4246453541463846334430363642373743)
pero no, sigue con la ventanita de "Wrong Serial"
Código:
0041B510 /$ 51 PUSH ECX
0041B511 |. 55 PUSH EBP
0041B512 |. 8B6C24 18 MOV EBP,DWORD PTR SS:[ESP+18]
0041B516 |. 56 PUSH ESI
0041B517 |. 57 PUSH EDI
0041B518 |. 8BFD MOV EDI,EBP
0041B51A |. 83C9 FF OR ECX,FFFFFFFF
0041B51D |. 33C0 XOR EAX,EAX
0041B51F |. 33F6 XOR ESI,ESI
0041B521 |. 33D2 XOR EDX,EDX
0041B523 |. F2:AE REPNE SCAS BYTE PTR ES:[EDI]
0041B525 |. F7D1 NOT ECX
0041B527 |. 49 DEC ECX
0041B528 |. 74 1A JE SHORT PAP800.0041B544
primer bucle
0041B52A |> 33C0 /XOR EAX,EAX
0041B52C |. 8BFD |MOV EDI,EBP mueve ASCII "BFE5AF8F3D066B77C114A429" a EDI
0041B52E |. 8A042A |MOV AL,BYTE PTR DS:[EDX+EBP] eax =42
0041B531 |. 83C9 FF |OR ECX,FFFFFFFF queda FFFFFFFF
0041B534 |. 33C2 |XOR EAX,EDX queda igual (42)
0041B536 |. 03F0 |ADD ESI,EAX esi queda en 42
0041B538 |. 33C0 |XOR EAX,EAX eax se pone a cero
0041B53A |. 42 |INC EDX se pone a uno (contador)
0041B53B |. F2:AE |REPNE SCAS BYTE PTR ES:[EDI] ECX que estaba en ffffffff decrementa hasta FFFFFFE6 mientras que la cadena en EDI
se achica desde el primer numero hasta el ultimo
0041B53D |. F7D1 |NOT ECX 00000019
0041B53F |. 49 |DEC ECX 00000018
0041B540 |. 3BD1 |CMP EDX,ECX
0041B542 |.^72 E6 \JB SHORT PAP800.0041B52A
0041B544 |> 8BC6 MOV EAX,ESI
0041B546 |. 33D2 XOR EDX,EDX
0041B548 |. B9 FF000000 MOV ECX,0FF
0041B54D |. 33F6 XOR ESI,ESI
0041B54F |. F7F1 DIV ECX
0041B551 |. 8B4424 1C MOV EAX,DWORD PTR SS:[ESP+1C]
0041B555 |. 85C0 TEST EAX,EAX
0041B557 |. 895424 0C MOV DWORD PTR SS:[ESP+C],EDX
0041B55B |. 76 46 JBE SHORT PAP800.0041B5A3
0041B55D |. 8B4424 18 MOV EAX,DWORD PTR SS:[ESP+18] ; PAP800.00707EA0 (aqui esta mi serial malo transformado )
0041B561 |. 8B4C24 14 MOV ECX,DWORD PTR SS:[ESP+14]
0041B565 |. 2BC1 SUB EAX,ECX
0041B567 |. 53 PUSH EBX
0041B568 |. 894424 24 MOV DWORD PTR SS:[ESP+24],EAX
2do bucle
0041B56C |> 8B5424 18 /MOV EDX,DWORD PTR SS:[ESP+18]
0041B570 |. 8BFD |MOV EDI,EBP
0041B572 |. 83C9 FF |OR ECX,FFFFFFFF
0041B575 |. 33C0 |XOR EAX,EAX
0041B577 |. F2:AE |REPNE SCAS BYTE PTR ES:[EDI]
0041B579 |. F7D1 |NOT ECX
0041B57B |. 8D1C16 |LEA EBX,DWORD PTR DS:[ESI+EDX]
0041B57E |. 49 |DEC ECX
0041B57F |. 8BC6 |MOV EAX,ESI
0041B581 |. 33D2 |XOR EDX,EDX
0041B583 |. F7F1 |DIV ECX
0041B585 |. 8B4C24 24 |MOV ECX,DWORD PTR SS:[ESP+24]
0041B589 |. 8A042A |MOV AL,BYTE PTR DS:[EDX+EBP]
0041B58C |. 8A1419 |MOV DL,BYTE PTR DS:[ECX+EBX]
0041B58F |. 32C2 |XOR AL,DL
aca hace XOR entre con dos caracteres de los seriales DL=35 ('5') AL=35 ('5')
0041B591 |. 8A5424 10 |MOV DL,BYTE PTR SS:[ESP+10]
0041B595 |. 32C2 |XOR AL,DL
0041B597 |. 46 |INC ESI
0041B598 |. 8803 |MOV BYTE PTR DS:[EBX],AL
0041B59A |. 8B4424 20 |MOV EAX,DWORD PTR SS:[ESP+20]
0041B59E |. 3BF0 |CMP ESI,EAX
0041B5A0 |.^72 CA \JB SHORT PAP800.0041B56C
0041B5A2 |. 5B POP EBX
0041B5A3 |> 5F POP EDI
0041B5A4 |. 5E POP ESI
0041B5A5 |. 5D POP EBP
0041B5A6 |. 59 POP ECX
Alguna pista?
saludos
gracias por leer