ShortSigServerVerifySig( BINK, CDKEY_PID_Part, 4, CDKEY_Sig_Part )

            PlausibleKey

                        checks integrity and CRC

            convert_external_key_to_internal(BINK,EBX)

            x{+7c}=p (30 byte)

           

            //signatureRemainBitsFromCDKEY => signature

            unpack_signature(   edi,

[Out_]BINK_Signature,                   [Out_]BINK_Hash,

EBX.BINK_Signature-BitSize,       EBX.BINK_Hash-BitSize,

CDKEY_Sig_Part)

//CDKEY_Sig_Part is D88(0x53) Bits  which is divided as the following:

                                                28(0x1c) Bits                length given by BINK  Hash

                                                55(0x37) Bits                length given by BINK  Signature

            //X=30-byte-int ; e=empty(output)

                  ecdig_affine_exponentiation  (x{+13C8}, BINK_Signature, 2, e{+38F4}, x{+12C8}, x{+7c})

                  ecdig_affine_exponentiation  (x{+14C8}, BINK_Hash, 1, e{+39F4}, x{+12C8}, x{+7c})

                  ecdig_affine_addition             (x{+38F4}, x{+39F4},      e{+3AF4}, x{+12C8}, x{+7c})

                  ecdig_to_dwords                     (x{+3AF4}, e{+3BF4}60-byte ,x{+7c} , [EBX.]0x0c)

                  ShortSigHash                           (CDKEY_PID_Part, CDKEY_PID_Part_size, x{+3BF4}60-byte, [EBX.]0x0C*2, e{+3CF4}4-Byte, 0x1C )

                  [cmpData]                                 ([EBX.]1, BINK_Hash, e{+3CF8}4-Byte)

 

‘Output of convert_external_key_to_internal()

$ ebx   >0000000C  ....

$+4     >0000001C  ..       .           BINK_Hash-BitSize

$+8     >00000001  ...

$+C     >00000037  7...                   BINK_Signature-BitSize

$+10    >0130DFAE  ®ß0

$+14    >6CCC8FD8  ØÌl  dpcdll.6CCC8FD8

$+18    >6CCC9008  Ìl  dpcdll.6CCC9008

$+1C    >6CCC9068  hÌl  dpcdll.6CCC9068

$+20    >6CCC90C8  ÈÌl  dpcdll.6CCC90C8

$+50     >00000001                         Dwords to compare in ‘cmpData

 

 

To debug open DPCDLL-LicViewer.exe under ollydebug  place dpcdll.pdb into same dir is where dpcdll.dll is in (mostly that is C:\Windows\system32)

Set a breakpoint to all references to Dpcdll.ecdig_affine_exponentiation and press the ‘Setkey CDKEY=’ to call validation.