# Reversing checksum algorithm

I am writing a program to control an old camera over serial. I have no access to the protocol or source code of the demonstration program that i have, but i can generate some correct checksums by monitoring the communications in wireshark.

The length of the packets changes depending on what function i perform, and seems to sometimes change depending on the values of the contained data. (FF sometimes repeats in longer frames, although i cant be sure that these arent just errors)

The last 2 bytes of data are the checksum i assume. Other parts are the message function and data. In the packet below, the 01 46 corresponds with the value 326 which the software reports.

``````10 02 41 02 20 01 46 10 03 cb a4
``````

I personally cant see an obvious pattern to the checksum. The first byte seems to increment by 0x10 nicely with the data for a while, before jumping around then decrementing by 0x10, acting erratically.

Does this seem familiar to anyone? How can I go about determining the algorithm to generate the checksum on an arbitrary message?

Ill attach lots of data for you to look at:

```10 02 41 02 20 01 46 10 03 cb a4
10 02 41 02 20 00 18 10 03 43 ae
10 02 41 02 20 00 19 10 03 53 8f
10 02 41 02 20 00 1a 10 03 63 ec
10 02 41 02 20 00 1b 10 03 73 cd
10 02 41 02 20 00 1c 10 03 03 2a
10 02 41 02 20 00 1d 10 03 13 0b
10 02 41 02 20 00 1e 10 03 23 68
10 02 41 02 20 00 1f 10 03 33 49
10 02 41 02 20 00 20 10 03 f4 f5
10 02 41 02 20 00 21 10 03 e4 d4
10 02 41 02 20 00 22 10 03 d4 b7
10 02 41 02 20 00 23 10 03 c4 96
10 02 41 02 20 00 24 10 03 b4 71
10 02 41 02 20 00 25 10 03 a4 50
10 02 41 02 20 00 26 10 03 94 33
10 02 41 02 20 00 27 10 03 84 12
10 02 41 02 20 00 28 10 03 75 fd
10 02 41 02 20 00 29 10 03 65 dc
10 02 41 02 20 00 2a 10 03 55 bf
10 02 41 02 20 00 2b 10 03 45 9e
10 02 41 02 20 00 2c 10 03 35 79
10 02 41 02 20 00 2d 10 03 25 58
10 02 41 02 20 00 2e 10 03 15 3b
10 02 41 02 20 00 2f 10 03 05 1a
10 02 41 02 20 00 30 10 03 e6 c4
10 02 41 02 20 00 31 10 03 f6 e5
10 02 41 02 20 00 32 10 03 c6 86
10 02 41 02 20 00 33 10 03 d6 a7
10 02 41 02 20 00 34 10 03 a6 40
10 02 41 02 20 00 35 10 03 b6 61
10 02 41 02 20 00 36 10 03 86 02
10 02 41 02 20 00 37 10 03 96 23
10 02 41 02 20 00 38 10 03 67 cc
10 02 41 02 20 00 39 10 03 77 ed
10 02 41 02 20 00 3a 10 03 47 8e
10 02 41 02 20 00 3b 10 03 57 af
10 02 41 02 20 00 3c 10 03 27 48
10 02 41 02 20 00 3d 10 03 37 69
10 02 41 02 20 00 3e 10 03 07 0a
10 02 41 02 20 00 3f 10 03 17 2b
10 02 41 02 20 00 40 10 03 98 53
10 02 41 02 20 00 41 10 03 88 72
10 02 41 02 20 00 42 10 03 b8 11
10 02 41 02 20 00 43 10 03 a8 30
10 02 41 02 20 00 44 10 03 d8 d7
10 02 41 02 20 00 45 10 03 c8 f6
10 02 41 02 20 00 46 10 03 f8 95
10 02 41 02 20 00 47 10 03 e8 b4
10 02 41 02 20 00 48 10 03 19 5b
10 02 41 02 20 00 49 10 03 09 7a
10 02 41 02 20 00 4a 10 03 39 19
10 02 41 02 20 00 4b 10 03 29 38
10 02 41 02 20 00 4c 10 03 59 df
10 02 41 02 20 00 4d 10 03 49 fe
10 02 41 02 20 00 4e 10 03 79 9d
10 02 41 02 20 00 4f 10 03 69 bc
10 02 41 02 20 00 50 10 03 8a 62
10 02 41 02 20 00 51 10 03 9a 43
10 02 41 02 20 00 52 10 03 aa 20
10 02 41 02 20 00 53 10 03 ba 01
10 02 41 02 20 00 54 10 03 ca e6
10 02 41 02 20 00 55 10 03 da c7
10 02 41 02 20 00 56 10 03 ea a4
10 02 41 02 20 00 57 10 03 fa 85
10 02 41 02 20 00 58 10 03 0b 6a
10 02 41 02 20 00 59 10 03 1b 4b
10 02 41 02 20 00 5a 10 03 2b 28
10 02 41 02 20 00 5b 10 03 3b 09
10 02 41 02 20 00 5c 10 03 4b ee
10 02 41 02 20 00 5d 10 03 5b cf
10 02 41 02 20 00 5e 10 03 6b ac
10 02 41 02 20 00 5f 10 03 7b 8d
10 02 41 02 20 00 60 10 03 bc 31
10 02 41 02 20 00 61 10 03 ac 10
10 02 41 02 20 00 62 10 03 9c 73
10 02 41 02 20 00 63 10 03 8c 52
10 02 41 02 20 00 64 10 03 fc b5
10 02 41 02 20 00 65 10 03 ec 94
10 02 41 02 20 00 66 10 03 dc f7
10 02 41 02 20 00 67 10 03 cc d6
10 02 41 02 20 00 68 10 03 3d 39
10 02 41 02 20 00 69 10 03 2d 18
10 02 41 02 20 00 6a 10 03 1d 7b
10 02 41 02 20 00 6b 10 03 0d 5a
10 02 41 02 20 00 6c 10 03 7d bd
10 02 41 02 20 00 6d 10 03 6d 9c
10 02 41 02 20 00 6e 10 03 5d ff ff
10 02 41 02 20 00 6f 10 03 4d de
10 02 41 02 20 00 70 10 03 ae 00
10 02 41 02 20 00 71 10 03 be 21
10 02 41 02 20 00 72 10 03 8e 42
10 02 41 02 20 00 73 10 03 9e 63
10 02 41 02 20 00 74 10 03 ee 84
10 02 41 02 20 00 75 10 03 fe a5
10 02 41 02 20 00 76 10 03 ce c6
10 02 41 02 20 00 77 10 03 de e7
10 02 41 02 20 00 78 10 03 2f 08
10 02 41 02 20 00 79 10 03 3f 29
10 02 41 02 20 00 7a 10 03 0f 4a
10 02 41 02 20 00 7b 10 03 1f 6b
10 02 41 02 20 00 7c 10 03 6f 8c
10 02 41 02 20 00 7d 10 03 7f ad
10 02 41 02 20 00 7e 10 03 4f ce
10 02 41 02 20 00 7f 10 03 5f ef
10 02 41 02 20 00 80 10 03 41 1f
10 02 41 02 20 00 81 10 03 51 3e
10 02 41 02 20 00 82 10 03 61 5d
10 02 41 02 20 00 83 10 03 71 7c
10 02 41 02 20 00 84 10 03 01 9b
10 02 41 02 20 00 85 10 03 11 ba
10 02 41 02 20 00 86 10 03 21 d9
10 02 41 02 20 00 87 10 03 31 f8
10 02 41 02 20 00 88 10 03 c0 17
10 02 41 02 20 00 89 10 03 d0 36
10 02 41 02 20 00 8a 10 03 e0 55
10 02 41 02 20 00 8b 10 03 f0 74
10 02 41 02 20 00 8c 10 03 80 93
10 02 41 02 20 00 8d 10 03 90 b2
10 02 41 02 20 00 8e 10 03 a0 d1
10 02 41 02 20 00 8f 10 03 b0 f0
10 02 41 02 20 00 90 10 03 53 2e
10 02 41 02 20 00 91 10 03 43 0f
10 02 41 02 20 00 92 10 03 73 6c
10 02 41 02 20 00 93 10 03 63 4d
10 02 41 02 20 00 94 10 03 13 aa
10 02 41 02 20 00 95 10 03 03 8b
10 02 41 02 20 00 97 10 03 23 c9
10 02 41 02 20 00 98 10 03 d2 26
10 02 41 02 20 00 99 10 03 c2 07
10 02 41 02 20 00 9a 10 03 f2 64
10 02 41 02 20 00 9b 10 03 e2 45
10 02 41 02 20 00 9c 10 03 92 a2
10 02 41 02 20 00 9d 10 03 82 83
10 02 41 02 20 00 9e 10 03 b2 e0
10 02 41 02 20 00 9f 10 03 a2 c1
10 02 41 02 20 00 a0 10 03 65 7d
10 02 41 02 20 00 a1 10 03 75 5c
10 02 41 02 20 00 a2 10 03 45 3f
10 02 41 02 20 00 a3 10 03 55 1e
10 02 41 02 20 00 a4 10 03 25 f9
10 02 41 02 20 00 a5 10 03 35 d8
10 02 41 02 20 00 a6 10 03 05 bb
10 02 41 02 20 00 a7 10 03 15 9a
10 02 41 02 20 00 a8 10 03 e4 75
10 02 41 02 20 00 a9 10 03 f4 54
10 02 41 02 20 00 aa 10 03 c4 37
10 02 41 02 20 00 ab 10 03 d4 16
10 02 41 02 20 00 ac 10 03 a4 f1
10 02 41 02 20 00 ad 10 03 b4 d0
10 02 41 02 20 00 ae 10 03 84 b3
10 02 41 02 20 00 af 10 03 94 92
10 02 41 02 20 00 b0 10 03 77 4c
10 02 41 02 20 00 b1 10 03 67 6d
10 02 41 02 20 00 b2 10 03 57 0e
10 02 41 02 20 00 b3 10 03 47 2f
10 02 41 02 20 00 b4 10 03 37 c8
10 02 41 02 20 00 b5 10 03 27 e9
10 02 41 02 20 00 b6 10 03 17 8a
10 02 41 02 20 00 b7 10 03 07 ab
10 02 41 02 20 00 b8 10 03 f6 44
10 02 41 02 20 00 b9 10 03 e6 65
10 02 41 02 20 00 ba 10 03 d6 06
10 02 41 02 20 00 bb 10 03 c6 27
10 02 41 02 20 00 bc 10 03 b6 c0
10 02 41 02 20 00 bd 10 03 a6 e1
10 02 41 02 20 00 be 10 03 96 82
10 02 41 02 20 00 bf 10 03 86 a3
10 02 41 02 20 00 c0 10 03 09 db
10 02 41 02 20 00 c1 10 03 19 fa
10 02 41 02 20 00 c2 10 03 29 99
10 02 41 02 20 00 c3 10 03 39 b8
10 02 41 02 20 00 c4 10 03 49 5f
10 02 41 02 20 00 c5 10 03 59 7e
10 02 41 02 20 00 c6 10 03 69 1d
10 02 41 02 20 00 c7 10 03 79 3c
10 02 41 02 20 00 c8 10 03 88 d3
10 02 41 02 20 00 c9 10 03 98 f2
10 02 41 02 20 00 ca 10 03 a8 91
10 02 41 02 20 00 cb 10 03 b8 b0
10 02 41 02 20 00 cc 10 03 c8 57
10 02 41 02 20 00 cd 10 03 d8 76
10 02 41 02 20 00 ce 10 03 e8 15
10 02 41 02 20 00 cf 10 03 f8 34
10 02 41 02 20 00 d0 10 03 1b ea
10 02 41 02 20 00 d1 10 03 0b cb
10 02 41 02 20 00 d2 10 03 3b a8
10 02 41 02 20 00 d3 10 03 2b 89
10 02 41 02 20 00 d4 10 03 5b 6e
10 02 41 02 20 00 d5 10 03 4b 4f
10 02 41 02 20 00 d6 10 03 7b 2c
10 02 41 02 20 00 d7 10 03 6b 0d
10 02 41 02 20 00 d8 10 03 9a e2
10 02 41 02 20 00 d9 10 03 8a c3
10 02 41 02 20 00 da 10 03 ba a0
10 02 41 02 20 00 db 10 03 aa 81
10 02 41 02 20 00 dc 10 03 da 66
10 02 41 02 20 00 dd 10 03 ca 47
10 02 41 02 20 00 de 10 03 fa 24
10 02 41 02 20 00 df 10 03 ea 05
10 02 41 02 20 00 e0 10 03 2d b9
10 02 41 02 20 00 e1 10 03 3d 98
10 02 41 02 20 00 e2 10 03 0d fb
10 02 41 02 20 00 e3 10 03 1d da
10 02 41 02 20 00 e4 10 03 6d 3d
10 02 41 02 20 00 e5 10 03 7d 1c
10 02 41 02 20 00 e6 10 03 4d 7f
10 02 41 02 20 00 e7 10 03 5d 5e
10 02 41 02 20 00 e8 10 03 ac b1
10 02 41 02 20 00 e9 10 03 bc 90
10 02 41 02 20 00 ea 10 03 8c f3
10 02 41 02 20 00 eb 10 03 9c d2
10 02 41 02 20 00 ec 10 03 ec 35
10 02 41 02 20 00 ed 10 03 fc 14
10 02 41 02 20 00 ee 10 03 cc 77
10 02 41 02 20 00 ef 10 03 dc 56
10 02 41 02 20 00 f0 10 03 3f 88
10 02 41 02 20 00 f1 10 03 2f a9
10 02 41 02 20 00 f2 10 03 1f ca
10 02 41 02 20 00 f3 10 03 0f eb
10 02 41 02 20 00 f4 10 03 7f 0c
10 02 41 02 20 00 f5 10 03 6f 2d
10 02 41 02 20 00 f6 10 03 5f 4e
10 02 41 02 20 00 f7 10 03 4f 6f
10 02 41 02 20 00 f8 10 03 be 80
10 02 41 02 20 00 f9 10 03 ae a1
10 02 41 02 20 00 fa 10 03 9e c2
10 02 41 02 20 00 fb 10 03 8e e3
10 02 41 02 20 00 fc 10 03 fe 04
10 02 41 02 20 00 fd 10 03 ee 25
10 02 41 02 20 00 fe 10 03 de 46
10 02 41 02 20 00 ff ff 10 03 ce 67
10 02 41 02 20 01 00 10 03 e3 a6
10 02 41 02 20 01 01 10 03 f3 87
10 02 41 02 20 01 02 10 03 c3 e4
10 02 41 02 20 01 03 10 03 d3 c5
10 02 41 02 20 01 04 10 03 a3 22
10 02 41 02 20 01 05 10 03 b3 03
10 02 41 02 20 01 06 10 03 83 60
10 02 41 02 20 01 07 10 03 93 41
10 02 41 02 20 01 08 10 03 62 ae
10 02 41 02 20 01 09 10 03 72 8f
10 02 41 02 20 01 0a 10 03 42 ec
10 02 41 02 20 01 0b 10 03 52 cd
10 02 41 02 20 01 0c 10 03 22 2a
10 02 41 02 20 01 0d 10 03 32 0b
10 02 41 02 20 01 0e 10 03 02 68
10 02 41 02 20 01 0f 10 03 12 49
10 02 41 02 20 01 10 10 10 03 f1 97
10 02 41 02 20 01 11 10 03 e1 b6
10 02 41 02 20 01 12 10 03 d1 d5
10 02 41 02 20 01 13 10 03 c1 f4
10 02 41 02 20 01 14 10 03 b1 13
10 02 41 02 20 01 15 10 03 a1 32
10 02 41 02 20 01 16 10 03 91 51
10 02 41 02 20 01 17 10 03 81 70
10 02 41 02 20 01 18 10 03 70 9f
10 02 41 02 20 01 19 10 03 60 be
10 02 41 02 20 01 1a 10 03 50 dd
10 02 41 02 20 01 1b 10 03 40 fc
10 02 41 02 20 01 1c 10 03 30 1b
10 02 41 02 20 01 1d 10 03 20 3a
10 02 41 02 20 01 1e 10 03 10 59
10 02 41 02 20 01 1f 10 03 00 78
10 02 41 02 20 01 20 10 03 c7 c4
10 02 41 02 20 01 21 10 03 d7 e5
10 02 41 02 20 01 22 10 03 e7 86
10 02 41 02 20 01 23 10 03 f7 a7
10 02 41 02 20 01 24 10 03 87 40
10 02 41 02 20 01 25 10 03 97 61
10 02 41 02 20 01 26 10 03 a7 02
10 02 41 02 20 01 27 10 03 b7 23
10 02 41 02 20 01 28 10 03 46 cc
10 02 41 02 20 01 29 10 03 56 ed
10 02 41 02 20 01 2a 10 03 66 8e
10 02 41 02 20 01 2b 10 03 76 af
10 02 41 02 20 01 2c 10 03 06 48
10 02 41 02 20 01 2d 10 03 16 69
10 02 41 02 20 01 2e 10 03 26 0a
10 02 41 02 20 01 2f 10 03 36 2b
10 02 41 02 20 01 30 10 03 d5 f5
10 02 41 02 20 01 31 10 03 c5 d4
10 02 41 02 20 01 32 10 03 f5 b7
10 02 41 02 20 01 33 10 03 e5 96
10 02 41 02 20 01 34 10 03 95 71
10 02 41 02 20 01 35 10 03 85 50
10 02 41 02 20 01 36 10 03 b5 33
10 02 41 02 20 01 37 10 03 a5 12
10 02 41 02 20 01 38 10 03 54 fd
10 02 41 02 20 01 39 10 03 44 dc
10 02 41 02 20 01 3a 10 03 74 bf
10 02 41 02 20 01 3b 10 03 64 9e
10 02 41 02 20 01 3c 10 03 14 79
10 02 41 02 20 01 3d 10 03 04 58
10 02 41 02 20 01 3e 10 03 34 3b
10 02 41 02 20 01 3f 10 03 24 1a
10 02 41 02 20 01 40 10 03 ab 62
10 02 41 02 20 01 41 10 03 bb 43
10 02 41 02 20 01 42 10 03 8b 20
10 02 41 02 20 01 43 10 03 9b 01
10 02 41 02 20 01 44 10 03 eb e6
10 02 41 02 20 01 45 10 03 fb c7
10 02 41 02 20 01 46 10 03 cb a4
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 05 10 03 68 94
10 02 41 02 02 00 06 10 03 58 f7
10 02 41 02 02 00 06 10 03 58 f7
10 02 41 02 02 00 06 10 03 58 f7
10 02 41 02 02 00 06 10 03 58 f7
10 02 41 02 02 00 06 10 03 58 f7
10 02 41 02 02 00 07 10 03 48 d6
10 02 41 02 02 00 07 10 03 48 d6
10 02 41 02 02 00 07 10 03 48 d6
10 02 41 02 02 00 07 10 03 48 d6
10 02 41 02 02 00 07 10 03 48 d6
10 02 41 02 02 00 08 10 03 b9 39
10 02 41 02 02 00 08 10 03 b9 39
10 02 41 02 02 00 09 10 03 a9 18
10 02 41 02 02 00 09 10 03 a9 18
10 02 41 02 02 00 09 10 03 a9 18
10 02 41 02 02 00 0a 10 03 99 7b
10 02 41 02 02 00 0a 10 03 99 7b
10 02 41 02 02 00 0b 10 03 89 5a
10 02 41 02 02 00 0b 10 03 89 5a
10 02 41 02 02 00 0d 10 03 e9 9c
10 02 41 02 02 00 0d 10 03 e9 9c
10 02 41 02 02 00 0e 10 03 d9 ff ff
10 02 41 02 02 00 0f 10 03 c9 de
10 02 41 02 02 00 10 10 10 03 2a 00
10 02 41 02 02 00 11 10 03 3a 21
10 02 41 02 02 00 12 10 03 0a 42
10 02 41 02 02 00 13 10 03 1a 63
10 02 41 02 02 00 14 10 03 6a 84
10 02 41 02 02 00 17 10 03 5a e7
10 02 41 02 02 00 19 10 03 bb 29
10 02 41 02 02 00 1d 10 03 fb ad
10 02 41 02 02 00 20 10 03 1c 53
10 02 41 02 02 00 27 10 03 6c b4
10 02 41 02 02 00 2d 10 03 cd fe
10 02 41 02 02 00 3c 10 03 cf ee
10 02 41 02 02 00 49 10 03 e1 dc
10 02 41 02 02 00 7e 10 03 a7 68
10 02 41 02 02 00 c4 10 03 a1 f9
10 02 41 02 02 7e e3 10 03 de 2a
10 02 41 02 02 7e da 10 03 79 50
10 02 41 02 02 7e d1 10 03 c8 3b
10 02 41 02 02 7e c8 10 03 4b 23
10 02 41 02 02 7e b3 10 03 84 df
10 02 41 02 02 7e 80 10 03 82 ef
10 02 41 02 02 7e 3a 10 03 84 7e
10 02 41 02 02 7d d5 10 03 dd ec
10 02 41 02 02 7d 36 10 03 10 a1
10 02 41 02 02 7c 18 10 03 e6 3c
10 02 41 02 02 7b a9 10 03 c8 51
10 02 41 02 02 00 49 10 03 e1 dc
10 02 41 02 02 00 2d 10 03 cd fe
10 02 41 02 02 00 3c 10 03 cf ee
10 02 41 02 02 00 7e 10 03 a7 68
10 02 41 02 02 01 c6 10 03 b2 8a
10 02 41 02 02 7e e3 10 03 de 2a
10 02 42 02 01 10 03 05 8e
10 02 f4 02 20 00 01 00 01 10 03 4a bb
10 02 f4 02 20 00 01 00 00 10 03 5a 9a
10 02 f4 02 20 00 02 01 10 03 92 93
10 02 f4 02 20 00 02 00 10 03 82 b2
10 02 f4 02 28 00 00 fc 10 03 4f 80
10 02 f4 02 28 00 00 f9 10 03 1f 25
10 02 f4 02 28 00 00 f6 10 03 ee ca
10 02 f4 02 28 00 00 f3 10 03 be 6f
10 02 f4 02 28 00 00 f0 10 03 8e 0c
10 02 f4 02 28 00 00 ed 10 03 4d 90
10 02 f4 02 28 00 00 ea 10 03 3d 77
10 02 f4 02 28 00 00 e7 10 03 ec da
10 02 f4 02 28 00 00 e4 10 03 dc b9
10 02 f4 02 28 00 00 e1 10 03 8c 1c
10 02 f4 02 28 00 00 de 10 03 4b a0
10 02 f4 02 28 00 00 db 10 03 1b 05
10 02 f4 02 28 00 00 d8 10 03 2b 66
10 02 f4 02 28 00 00 d5 10 03 fa cb
10 02 f4 02 28 00 00 d3 10 03 9a 0d
10 02 f4 02 28 00 00 d0 10 03 aa 6e
10 02 f4 02 28 00 00 cd 10 03 69 f2
10 02 f4 02 28 00 00 ca 10 03 19 15
10 02 f4 02 28 00 00 c7 10 03 c8 b8
10 02 f4 02 28 00 00 c4 10 03 f8 db
10 02 f4 02 28 00 00 c1 10 03 a8 7e
10 02 f4 02 28 00 00 be 10 03 27 06
10 02 f4 02 28 00 00 bb 10 03 77 a3
10 02 f4 02 28 00 00 b8 10 03 47 c0
10 02 f4 02 28 00 00 b5 10 03 96 6d
10 02 f4 02 28 00 00 b2 10 03 e6 8a
10 02 f4 02 28 00 00 af 10 03 25 16
10 02 f4 02 28 00 00 ac 10 03 15 75
10 02 f4 02 28 00 00 a9 10 03 45 d0
10 02 f4 02 28 00 00 a6 10 03 b4 3f
10 02 f4 02 28 00 00 a3 10 03 e4 9a
10 02 f4 02 28 00 00 a0 10 03 d4 f9
10 02 f4 02 28 00 00 9d 10 03 33 07
10 02 f4 02 28 00 00 9a 10 03 43 e0
10 02 f4 02 28 00 00 94 10 03 a2 2e
10 02 f4 02 28 00 00 91 10 03 f2 8b
10 02 f4 02 28 00 00 8e 10 03 11 55
10 02 f4 02 28 00 00 8b 10 03 41 f0
10 02 f4 02 28 00 00 88 10 03 71 93
10 02 f4 02 28 00 00 85 10 03 a0 3e
10 02 f4 02 28 00 00 82 10 03 d0 d9
10 02 f4 02 28 00 00 7f 10 03 ee 6b
10 02 f4 02 28 00 00 7d 10 03 ce 29
10 02 f4 02 28 00 00 7a 10 03 be ce
10 02 f4 02 28 00 00 77 10 03 6f 63
10 02 f4 02 28 00 00 74 10 03 5f 00
10 02 f4 02 28 00 00 71 10 03 0f a5
10 02 f4 02 28 00 00 6e 10 03 ec 7b
10 02 f4 02 28 00 00 6b 10 03 bc de
10 02 f4 02 28 00 00 68 10 03 8c bd
10 02 f4 02 28 00 00 65 10 03 5d 10
10 02 f4 02 28 00 00 62 10 03 2d f7
10 02 f4 02 28 00 00 5f 10 03 ca 09
10 02 f4 02 28 00 00 5c 10 03 fa 6a
10 02 f4 02 28 00 00 59 10 03 aa cf
10 02 f4 02 28 00 00 56 10 03 5b 20
10 02 f4 02 28 00 00 53 10 03 0b 85
10 02 f4 02 28 00 00 50 10 03 3b e6
10 02 f4 02 28 00 00 4d 10 03 f8 7a
10 02 f4 02 28 00 00 4a 10 03 88 9d
10 02 f4 02 28 00 00 47 10 03 59 30
10 02 f4 02 28 00 00 44 10 03 69 53
10 02 f4 02 28 00 00 41 10 03 39 f6
10 02 f4 02 28 00 00 3e 10 03 b6 8e
10 02 f4 02 28 00 00 3b 10 03 e6 2b
10 02 f4 02 28 00 00 38 10 03 d6 48
10 02 f4 02 28 00 00 35 10 03 07 e5
10 02 f4 02 28 00 00 32 10 03 77 02
10 02 f4 02 28 00 00 2f 10 03 b4 9e
10 02 f4 02 28 00 00 2c 10 03 84 fd
10 02 f4 02 28 00 00 2a 10 03 e4 3b
10 02 f4 02 28 00 00 27 10 03 35 96
10 02 f4 02 28 00 00 24 10 03 05 f5
10 02 f4 02 28 00 00 21 10 03 55 50
10 02 f4 02 28 00 00 1e 10 03 92 ec
10 02 f4 02 28 00 00 1b 10 03 c2 49
10 02 f4 02 28 00 00 18 10 03 f2 2a
10 02 f4 02 28 00 00 15 10 03 23 87
10 02 f4 02 28 00 00 12 10 03 53 60
10 02 f4 02 28 00 00 0f 10 03 90 fc
10 02 f4 02 28 00 00 0c 10 03 a0 9f
10 02 f4 02 28 00 00 09 10 03 f0 3a
10 02 f4 02 28 00 00 06 10 03 01 d5
10 02 f4 02 28 00 00 03 10 03 51 70
10 02 f4 02 28 00 00 00 10 03 61 13
10 02 f4 02 28 00 00 01 10 03 71 32
10 02 f4 02 28 00 00 00 10 03 61 13
10 02 f4 02 28 00 00 fe 10 03 6f c2
10 02 f4 02 28 00 00 ff ff 10 03 7f e3
10 02 f4 02 28 00 00 01 10 03 71 32
10 02 f4 02 28 00 00 00 10 03 61 13
10 02 f4 02 00 00 00 10 03 5b 38
10 02 f4 02 20 00 00 10 03 dd fe
```
• Did you try reveng on your data? Although it doesn't seem like a CRC to me, with the 2nd-to-last byte changing its value so neatly, maybe it'll find something. – Guntram Blohm Mar 26 '15 at 9:52
• Also, if you have a link to a downloadable version of the demo program, please post it; if there's no obfuscation, it might be quite easy to pull the algorithm from the program once it's loaded in Ida, and there have been cases here where users took this kind of question for a challenge. – Guntram Blohm Mar 26 '15 at 10:03

I'm not sure it's a checksum either. FF may be used as a padding flag. Also I think your "record size" needs to be reevaluated. I see this as a series of bytes that start with `10 02 xx yy yy zz zz` x and y might be options z looks like data or a sequence (ish) Then the next record looks like this `10 03 xx xx` Here's an observation on the `10 03` records: ``` 10 03 d2 26 10 03 c2 07 10 03 f2 64 10 03 e2 45``` looking at the last 2 bytes,

`0xD226 - 0xC207 = 0x101F`

`0xF264 - 0xE245 = 0x101F`

I don't know what that means, but I think that relationship is not coincidence.

I took the data and did some binary find and replace to shift it from one line with two records to two lines, one of each record type. Specifically, I added three leading bytes to `0x1002`, removed those bytes at the very start to align the first record with the start of the file. Then they aligned nicely. However, when I found the FF, I saw that the records got misaligned, hence more evidence that its some sort of padding flag or something to keep the protocol on track, I guess. I added null bytes to shift the records back into conformance. I'll paste the results below, but only partial, because of the hastiness of my find and replace I think a portion of the data towards the end got borked up and I had "run out of time" to mess with it. I'll leave a little bit of where things got shifted, but keep in mind I tinkered with it a bit so I don't think I preserved it as well as the first section.

Edit: That last byte of the `0x1002` record might be some sort of counter, note that when it becomes a full byte that's when some sort of sequence starts to reset. Search for this string 10 02 41 02 20 00 FF

PS: Politely, it would have been nice to know what you were doing with the hardware to generate this data, some context for the evaluation may have been helpful.

``` 10 02 41 02 20 01 46 10 03 CB A4 00 00 00 10 02 41 02 20 00 18 10 03 43 AE 00 00 00 10 02 41 02 20 00 19 10 03 53 8F 00 00 00 10 02 41 02 20 00 1A 10 03 63 EC 00 00 00 10 02 41 02 20 00 1B 10 03 73 CD 00 00 00 10 02 41 02 20 00 1C 10 03 03 2A 00 00 00 10 02 41 02 20 00 1D 10 03 13 0B 00 00 00 10 02 41 02 20 00 1E 10 03 23 68 00 00 00 10 02 41 02 20 00 1F 10 03 33 49 00 00 00 10 02 41 02 20 00 20 10 03 F4 F5 00 00 00 10 02 41 02 20 00 21 10 03 E4 D4 00 00 00 10 02 41 02 20 00 22 10 03 D4 B7 00 00 00 10 02 41 02 20 00 23 10 03 C4 96 00 00 00 10 02 41 02 20 00 24 10 03 B4 71 00 00 00 10 02 41 02 20 00 25 10 03 A4 50 00 00 00 10 02 41 02 20 00 26 10 03 94 33 00 00 00 10 02 41 02 20 00 27 10 03 84 12 00 00 00 10 02 41 02 20 00 28 10 03 75 FD 00 00 00 10 02 41 02 20 00 29 10 03 65 DC 00 00 00 10 02 41 02 20 00 2A 10 03 55 BF 00 00 00 10 02 41 02 20 00 2B 10 03 45 9E 00 00 00 10 02 41 02 20 00 2C 10 03 35 79 00 00 00 10 02 41 02 20 00 2D 10 03 25 58 00 00 00 10 02 41 02 20 00 2E 10 03 15 3B 00 00 00 10 02 41 02 20 00 2F 10 03 05 1A 00 00 00 10 02 41 02 20 00 30 10 03 E6 C4 00 00 00 10 02 41 02 20 00 31 10 03 F6 E5 00 00 00 10 02 41 02 20 00 32 10 03 C6 86 00 00 00 10 02 41 02 20 00 33 10 03 D6 A7 00 00 00 10 02 41 02 20 00 34 10 03 A6 40 00 00 00 10 02 41 02 20 00 35 10 03 B6 61 00 00 00 10 02 41 02 20 00 36 10 03 86 02 00 00 00 10 02 41 02 20 00 37 10 03 96 23 00 00 00 10 02 41 02 20 00 38 10 03 67 CC 00 00 00 10 02 41 02 20 00 39 10 03 77 ED 00 00 00 10 02 41 02 20 00 3A 10 03 47 8E 00 00 00 10 02 41 02 20 00 3B 10 03 57 AF 00 00 00 10 02 41 02 20 00 3C 10 03 27 48 00 00 00 10 02 41 02 20 00 3D 10 03 37 69 00 00 00 10 02 41 02 20 00 3E 10 03 07 0A 00 00 00 10 02 41 02 20 00 3F 10 03 17 2B 00 00 00 10 02 41 02 20 00 40 10 03 98 53 00 00 00 10 02 41 02 20 00 41 10 03 88 72 00 00 00 10 02 41 02 20 00 42 10 03 B8 11 00 00 00 10 02 41 02 20 00 43 10 03 A8 30 00 00 00 10 02 41 02 20 00 44 10 03 D8 D7 00 00 00 10 02 41 02 20 00 45 10 03 C8 F6 00 00 00 10 02 41 02 20 00 46 10 03 F8 95 00 00 00 10 02 41 02 20 00 47 10 03 E8 B4 00 00 00 10 02 41 02 20 00 48 10 03 19 5B 00 00 00 10 02 41 02 20 00 49 10 03 09 7A 00 00 00 10 02 41 02 20 00 4A 10 03 39 19 00 00 00 10 02 41 02 20 00 4B 10 03 29 38 00 00 00 10 02 41 02 20 00 4C 10 03 59 DF 00 00 00 10 02 41 02 20 00 4D 10 03 49 FE 00 00 00 10 02 41 02 20 00 4E 10 03 79 9D 00 00 00 10 02 41 02 20 00 4F 10 03 69 BC 00 00 00 10 02 41 02 20 00 50 10 03 8A 62 00 00 00 10 02 41 02 20 00 51 10 03 9A 43 00 00 00 10 02 41 02 20 00 52 10 03 AA 20 00 00 00 10 02 41 02 20 00 53 10 03 BA 01 00 00 00 10 02 41 02 20 00 54 10 03 CA E6 00 00 00 10 02 41 02 20 00 55 10 03 DA C7 00 00 00 10 02 41 02 20 00 56 10 03 EA A4 00 00 00 10 02 41 02 20 00 57 10 03 FA 85 00 00 00 10 02 41 02 20 00 58 10 03 0B 6A 00 00 00 10 02 41 02 20 00 59 10 03 1B 4B 00 00 00 10 02 41 02 20 00 5A 10 03 2B 28 00 00 00 10 02 41 02 20 00 5B 10 03 3B 09 00 00 00 10 02 41 02 20 00 5C 10 03 4B EE 00 00 00 10 02 41 02 20 00 5D 10 03 5B CF 00 00 00 10 02 41 02 20 00 5E 10 03 6B AC 00 00 00 10 02 41 02 20 00 5F 10 03 7B 8D 00 00 00 10 02 41 02 20 00 60 10 03 BC 31 00 00 00 10 02 41 02 20 00 61 10 03 AC 10 00 00 00 10 02 41 02 20 00 62 10 03 9C 73 00 00 00 10 02 41 02 20 00 63 10 03 8C 52 00 00 00 10 02 41 02 20 00 64 10 03 FC B5 00 00 00 10 02 41 02 20 00 65 10 03 EC 94 00 00 00 10 02 41 02 20 00 66 10 03 DC F7 00 00 00 10 02 41 02 20 00 67 10 03 CC D6 00 00 00 10 02 41 02 20 00 68 10 03 3D 39 00 00 00 10 02 41 02 20 00 69 10 03 2D 18 00 00 00 10 02 41 02 20 00 6A 10 03 1D 7B 00 00 00 10 02 41 02 20 00 6B 10 03 0D 5A 00 00 00 10 02 41 02 20 00 6C 10 03 7D BD 00 00 00 10 02 41 02 20 00 6D 10 03 6D 9C 00 00 00 10 02 41 02 20 00 6E 10 03 5D FF 00 00 00 FF 00 00 00 00 00 00 10 02 41 02 20 00 6F 10 03 4D DE 00 00 00 10 02 41 02 20 00 70 10 03 AE 00 00 00 00 10 02 41 02 20 00 71 10 03 BE 21 00 00 00 10 02 41 02 20 00 72 10 03 8E 42 00 00 00 10 02 41 02 20 00 73 10 03 9E 63 00 00 00 10 02 41 02 20 00 74 10 03 EE 84 00 00 00 10 02 41 02 20 00 75 10 03 FE A5 00 00 00 10 02 41 02 20 00 76 10 03 CE C6 00 00 00 10 02 41 02 20 00 77 10 03 DE E7 00 00 00 10 02 41 02 20 00 78 10 03 2F 08 00 00 00 10 02 41 02 20 00 79 10 03 3F 29 00 00 00 10 02 41 02 20 00 7A 10 03 0F 4A 00 00 00 10 02 41 02 20 00 7B 10 03 1F 6B 00 00 00 10 02 41 02 20 00 7C 10 03 6F 8C 00 00 00 10 02 41 02 20 00 7D 10 03 7F AD 00 00 00 10 02 41 02 20 00 7E 10 03 4F CE 00 00 00 10 02 41 02 20 00 7F 10 03 5F EF 00 00 00 10 02 41 02 20 00 80 10 03 41 1F 00 00 00 10 02 41 02 20 00 81 10 03 51 3E 00 00 00 10 02 41 02 20 00 82 10 03 61 5D 00 00 00 10 02 41 02 20 00 83 10 03 71 7C 00 00 00 10 02 41 02 20 00 84 10 03 01 9B 00 00 00 10 02 41 02 20 00 85 10 03 11 BA 00 00 00 10 02 41 02 20 00 86 10 03 21 D9 00 00 00 10 02 41 02 20 00 87 10 03 31 F8 00 00 00 10 02 41 02 20 00 88 10 03 C0 17 00 00 00 10 02 41 02 20 00 89 10 03 D0 36 00 00 00 10 02 41 02 20 00 8A 10 03 E0 55 00 00 00 10 02 41 02 20 00 8B 10 03 F0 74 00 00 00 10 02 41 02 20 00 8C 10 03 80 93 00 00 00 10 02 41 02 20 00 8D 10 03 90 B2 00 00 00 10 02 41 02 20 00 8E 10 03 A0 D1 00 00 00 10 02 41 02 20 00 8F 10 03 B0 F0 00 00 00 10 02 41 02 20 00 90 10 03 53 2E 00 00 00 10 02 41 02 20 00 91 10 03 43 0F 00 00 00 10 02 41 02 20 00 92 10 03 73 6C 00 00 00 10 02 41 02 20 00 93 10 03 63 4D 00 00 00 10 02 41 02 20 00 94 10 03 13 AA 00 00 00 10 02 41 02 20 00 95 10 03 03 8B 00 00 00 10 02 41 02 20 00 97 10 03 23 C9 00 00 00 10 02 41 02 20 00 98 10 03 D2 26 00 00 00 10 02 41 02 20 00 99 10 03 C2 07 00 00 00 10 02 41 02 20 00 9A 10 03 F2 64 00 00 00 10 02 41 02 20 00 9B 10 03 E2 45 00 00 00 10 02 41 02 20 00 9C 10 03 92 A2 00 00 00 10 02 41 02 20 00 9D 10 03 82 83 00 00 00 10 02 41 02 20 00 9E 10 03 B2 E0 00 00 00 10 02 41 02 20 00 9F 10 03 A2 C1 00 00 00 10 02 41 02 20 00 A0 10 03 65 7D 00 00 00 10 02 41 02 20 00 A1 10 03 75 5C 00 00 00 10 02 41 02 20 00 A2 10 03 45 3F 00 00 00 10 02 41 02 20 00 A3 10 03 55 1E 00 00 00 10 02 41 02 20 00 A4 10 03 25 F9 00 00 00 10 02 41 02 20 00 A5 10 03 35 D8 00 00 00 10 02 41 02 20 00 A6 10 03 05 BB 00 00 00 10 02 41 02 20 00 A7 10 03 15 9A 00 00 00 10 02 41 02 20 00 A8 10 03 E4 75 00 00 00 10 02 41 02 20 00 A9 10 03 F4 54 00 00 00 10 02 41 02 20 00 AA 10 03 C4 37 00 00 00 10 02 41 02 20 00 AB 10 03 D4 16 00 00 00 10 02 41 02 20 00 AC 10 03 A4 F1 00 00 00 10 02 41 02 20 00 AD 10 03 B4 D0 00 00 00 10 02 41 02 20 00 AE 10 03 84 B3 00 00 00 10 02 41 02 20 00 AF 10 03 94 92 00 00 00 10 02 41 02 20 00 B0 10 03 77 4C 00 00 00 10 02 41 02 20 00 B1 10 03 67 6D 00 00 00 10 02 41 02 20 00 B2 10 03 57 0E 00 00 00 10 02 41 02 20 00 B3 10 03 47 2F 00 00 00 10 02 41 02 20 00 B4 10 03 37 C8 00 00 00 10 02 41 02 20 00 B5 10 03 27 E9 00 00 00 10 02 41 02 20 00 B6 10 03 17 8A 00 00 00 10 02 41 02 20 00 B7 10 03 07 AB 00 00 00 10 02 41 02 20 00 B8 10 03 F6 44 00 00 00 10 02 41 02 20 00 B9 10 03 E6 65 00 00 00 10 02 41 02 20 00 BA 10 03 D6 06 00 00 00 10 02 41 02 20 00 BB 10 03 C6 27 00 00 00 10 02 41 02 20 00 BC 10 03 B6 C0 00 00 00 10 02 41 02 20 00 BD 10 03 A6 E1 00 00 00 10 02 41 02 20 00 BE 10 03 96 82 00 00 00 10 02 41 02 20 00 BF 10 03 86 A3 00 00 00 10 02 41 02 20 00 C0 10 03 09 DB 00 00 00 10 02 41 02 20 00 C1 10 03 19 FA 00 00 00 10 02 41 02 20 00 C2 10 03 29 99 00 00 00 10 02 41 02 20 00 C3 10 03 39 B8 00 00 00 10 02 41 02 20 00 C4 10 03 49 5F 00 00 00 10 02 41 02 20 00 C5 10 03 59 7E 00 00 00 10 02 41 02 20 00 C6 10 03 69 1D 00 00 00 10 02 41 02 20 00 C7 10 03 79 3C 00 00 00 10 02 41 02 20 00 C8 10 03 88 D3 00 00 00 10 02 41 02 20 00 C9 10 03 98 F2 00 00 00 10 02 41 02 20 00 CA 10 03 A8 91 00 00 00 10 02 41 02 20 00 CB 10 03 B8 B0 00 00 00 10 02 41 02 20 00 CC 10 03 C8 57 00 00 00 10 02 41 02 20 00 CD 10 03 D8 76 00 00 00 10 02 41 02 20 00 CE 10 03 E8 15 00 00 00 10 02 41 02 20 00 CF 10 03 F8 34 00 00 00 10 02 41 02 20 00 D0 10 03 1B EA 00 00 00 10 02 41 02 20 00 D1 10 03 0B CB 00 00 00 10 02 41 02 20 00 D2 10 03 3B A8 00 00 00 10 02 41 02 20 00 D3 10 03 2B 89 00 00 00 10 02 41 02 20 00 D4 10 03 5B 6E 00 00 00 10 02 41 02 20 00 D5 10 03 4B 4F 00 00 00 10 02 41 02 20 00 D6 10 03 7B 2C 00 00 00 10 02 41 02 20 00 D7 10 03 6B 0D 00 00 00 10 02 41 02 20 00 D8 10 03 9A E2 00 00 00 10 02 41 02 20 00 D9 10 03 8A C3 00 00 00 10 02 41 02 20 00 DA 10 03 BA A0 00 00 00 10 02 41 02 20 00 DB 10 03 AA 81 00 00 00 10 02 41 02 20 00 DC 10 03 DA 66 00 00 00 10 02 41 02 20 00 DD 10 03 CA 47 00 00 00 10 02 41 02 20 00 DE 10 03 FA 24 00 00 00 10 02 41 02 20 00 DF 10 03 EA 05 00 00 00 10 02 41 02 20 00 E0 10 03 2D B9 00 00 00 10 02 41 02 20 00 E1 10 03 3D 98 00 00 00 10 02 41 02 20 00 E2 10 03 0D FB 00 00 00 10 02 41 02 20 00 E3 10 03 1D DA 00 00 00 10 02 41 02 20 00 E4 10 03 6D 3D 00 00 00 10 02 41 02 20 00 E5 10 03 7D 1C 00 00 00 10 02 41 02 20 00 E6 10 03 4D 7F 00 00 00 10 02 41 02 20 00 E7 10 03 5D 5E 00 00 00 10 02 41 02 20 00 E8 10 03 AC B1 00 00 00 10 02 41 02 20 00 E9 10 03 BC 90 00 00 00 10 02 41 02 20 00 EA 10 03 8C F3 00 00 00 10 02 41 02 20 00 EB 10 03 9C D2 00 00 00 10 02 41 02 20 00 EC 10 03 EC 35 00 00 00 10 02 41 02 20 00 ED 10 03 FC 14 00 00 00 10 02 41 02 20 00 EE 10 03 CC 77 00 00 00 10 02 41 02 20 00 EF 10 03 DC 56 00 00 00 10 02 41 02 20 00 F0 10 03 3F 88 00 00 00 10 02 41 02 20 00 F1 10 03 2F A9 00 00 00 10 02 41 02 20 00 F2 10 03 1F CA 00 00 00 10 02 41 02 20 00 F3 10 03 0F EB 00 00 00 10 02 41 02 20 00 F4 10 03 7F 0C 00 00 00 10 02 41 02 20 00 F5 10 03 6F 2D 00 00 00 10 02 41 02 20 00 F6 10 03 5F 4E 00 00 00 10 02 41 02 20 00 F7 10 03 4F 6F 00 00 00 10 02 41 02 20 00 F8 10 03 BE 80 00 00 00 10 02 41 02 20 00 F9 10 03 AE A1 00 00 00 10 02 41 02 20 00 FA 10 03 9E C2 00 00 00 10 02 41 02 20 00 FB 10 03 8E E3 00 00 00 10 02 41 02 20 00 FC 10 03 FE 04 00 00 00 10 02 41 02 20 00 FD 10 03 EE 25 00 00 00 10 02 41 02 20 00 FE 10 03 DE 46 00 00 00 10 02 41 02 20 00 FF FF 00 00 00 00 00 00 10 03 CE 67 00 00 00 10 02 41 02 20 01 00 10 03 E3 A6 00 00 00 10 02 41 02 20 01 01 10 03 F3 87 00 00 00 10 02 41 02 20 01 02 10 03 C3 E4 00 00 00 10 02 41 02 20 01 03 10 03 D3 C5 00 00 00 10 02 41 02 20 01 04 10 03 A3 22 00 00 00 10 02 41 02 20 01 05 10 03 B3 03 00 00 00 10 02 41 02 20 01 06 10 03 83 60 00 00 00 10 02 41 02 20 01 07 10 03 93 41 00 00 00 10 02 41 02 20 01 08 10 03 62 AE 00 00 00 10 02 41 02 20 01 09 10 03 72 8F 00 00 00 10 02 41 02 20 01 0A 10 03 42 EC 00 00 00 10 02 41 02 20 01 0B 10 03 52 CD 00 00 00 10 02 41 02 20 01 0C 10 03 22 2A 00 00 00 10 02 41 02 20 01 0D 10 03 32 0B 00 00 00 10 02 41 02 20 01 0E 10 03 02 68 00 00 00 10 02 41 02 20 01 0F 10 03 12 49 00 00 00 10 02 41 02 20 01 10 10 10 03 F1 97 00 00 10 02 41 02 20 01 11 10 03 E1 B6 00 00 00 10 02 41 02 20 01 12 10 03 D1 D5 00 00 00 10 02 41 02 20 01 13 10 03 C1 F4 00 00 00 10 02 41 02 20 01 14 10 03 B1 13 00 00 00 10 02 41 02 20 01 15 10 03 A1 32 00 00 00 10 02 41 02 20 01 16 10 03 91 51 00 00 00 10 02 41 02 20 01 17 10 03 81 70 00 00 00 10 02 41 02 20 01 18 10 03 70 9F 00 00 00 10 02 41 02 20 01 19 10 03 60 BE 00 00 00 10 02 41 02 20 01 1A 10 03 50 DD 00 00 00 10 02 41 02 20 01 1B 10 03 40 FC 00 00 00 10 02 41 02 20 01 1C 10 03 30 1B 00 00 00 10 02 41 02 20 01 1D 10 03 20 3A 00 00 00 10 02 41 02 20 01 1E 10 03 10 59 00 00 00 10 02 41 02 20 01 1F 10 03 00 78 00 00 00 10 02 41 02 20 01 20 10 03 C7 C4 00 00 00 10 02 41 02 20 01 21 10 03 D7 E5 00 00 00 10 02 41 02 20 01 22 10 03 E7 86 00 00 00 10 02 41 02 20 01 23 10 03 F7 A7 00 00 00 10 02 41 02 20 01 24 10 03 87 40 00 00 00 10 02 41 02 20 01 25 10 03 97 61 00 00 00 10 02 41 02 20 01 26 10 03 A7 02 00 00 00 10 02 41 02 20 01 27 10 03 B7 23 00 00 00 10 02 41 02 20 01 28 10 03 46 CC 00 00 00 10 02 41 02 20 01 29 10 03 56 ED 00 00 00 10 02 41 02 20 01 2A 10 03 66 8E 00 00 00 10 02 41 02 20 01 2B 10 03 76 AF 00 00 00 10 02 41 02 20 01 2C 10 03 06 48 00 00 00 10 02 41 02 20 01 2D 10 03 16 69 00 00 00 10 02 41 02 20 01 2E 10 03 26 0A 00 00 00 10 02 41 02 20 01 2F 10 03 36 2B 00 00 00 10 02 41 02 20 01 30 10 03 D5 F5 00 00 00 10 02 41 02 20 01 31 10 03 C5 D4 00 00 00 10 02 41 02 20 01 32 10 03 F5 B7 00 00 00 10 02 41 02 20 01 33 10 03 E5 96 00 00 00 10 02 41 02 20 01 34 10 03 95 71 00 00 00 10 02 41 02 20 01 35 10 03 85 50 00 00 00 10 02 41 02 20 01 36 10 03 B5 33 00 00 00 10 02 41 02 20 01 37 10 03 A5 12 00 00 00 10 02 41 02 20 01 38 10 03 54 FD 00 00 00 10 02 41 02 20 01 39 10 03 44 DC 00 00 00 10 02 41 02 20 01 3A 10 03 74 BF 00 00 00 10 02 41 02 20 01 3B 10 03 64 9E 00 00 00 10 02 41 02 20 01 3C 10 03 14 79 00 00 00 10 02 41 02 20 01 3D 10 03 04 58 00 00 00 10 02 41 02 20 01 3E 10 03 34 3B 00 00 00 10 02 41 02 20 01 3F 10 03 24 1A 00 00 00 10 02 41 02 20 01 40 10 03 AB 62 00 00 00 10 02 41 02 20 01 41 10 03 BB 43 00 00 00 10 02 41 02 20 01 42 10 03 8B 20 00 00 00 10 02 41 02 20 01 43 10 03 9B 01 00 00 00 10 02 41 02 20 01 44 10 03 EB E6 00 00 00 10 02 41 02 20 01 45 10 03 FB C7 00 00 00 10 02 41 02 20 01 46 10 03 CB A4 00 00 00 10 02 41 02 20 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 05 10 03 68 94 00 00 00 10 02 41 02 02 00 06 10 03 58 F7 00 00 00 10 02 41 02 02 00 06 10 03 58 F7 00 00 00 10 02 41 02 02 00 06 10 03 58 F7 00 00 00 10 02 41 02 02 00 06 10 03 58 F7 00 00 00 10 02 41 02 02 00 06 10 03 58 F7 00 00 00 10 02 41 02 02 00 07 10 03 48 D6 00 00 00 10 02 41 02 02 00 07 10 03 48 D6 00 00 00 10 02 41 02 02 00 07 10 03 48 D6 00 00 00 10 02 41 02 02 00 07 10 03 48 D6 00 00 00 10 02 41 02 02 00 07 10 03 48 D6 00 00 00 10 02 41 02 02 00 08 10 03 B9 39 00 00 00 10 02 41 02 02 00 08 10 03 B9 39 00 00 00 10 02 41 02 02 00 09 10 03 A9 18 00 00 00 10 02 41 02 02 00 09 10 03 A9 18 00 00 00 10 02 41 02 02 00 09 10 03 A9 18 00 00 00 10 02 41 02 02 00 0A 10 03 99 7B 00 00 00 10 02 41 02 02 00 0A 10 03 99 7B 00 00 00 10 02 41 02 02 00 0B 10 03 89 5A 00 00 00 10 02 41 02 02 00 0B 10 03 89 5A 00 00 00 10 02 41 02 02 00 0D 10 03 E9 9C 00 00 00 10 02 41 02 02 00 0D 10 03 E9 9C 00 00 00 10 02 41 02 02 00 0E 10 03 D9 FF 00 00 00 FF 00 00 00 00 00 00 10 02 41 02 02 00 0F 10 03 C9 DE 00 00 00 10 02 41 02 02 00 10 10 00 00 00 00 00 00 10 03 2A 00 00 00 00 10 02 41 02 02 00 11 10 03 3A 21 00 00 00 10 02 41 02 02 00 12 10 03 0A 42 00 00 00 10 02 41 02 02 00 13 10 03 1A 63 00 00 00 10 02 41 02 02 00 14 10 03 6A 84 00 00 00 10 02 41 02 02 00 17 10 03 5A E7 00 00 00 10 02 41 02 02 00 19 10 03 BB 29 00 00 00 10 02 41 02 02 00 1D 10 03 FB AD 00 00 00 10 02 41 02 02 00 20 10 03 1C 53 00 00 00 10 02 41 02 02 00 27 10 03 6C B4 00 00 00 10 02 41 02 02 00 2D 10 03 CD FE 00 00 00 10 02 41 02 02 00 3C 10 03 CF EE 00 00 00 10 02 41 02 02 00 49 10 03 E1 DC 00 00 00 10 02 41 02 02 00 7E 10 03 A7 68 00 00 00 10 02 41 02 02 00 C4 10 03 A1 F9 00 00 00 10 02 41 02 02 7E E3 10 03 DE 2A 00 00 00 10 02 41 02 02 7E DA 10 03 79 50 00 00 00 10 02 41 02 02 7E D1 10 03 C8 3B 00 00 00 10 02 41 02 02 7E C8 10 03 4B 23 00 00 00 10 02 41 02 02 7E B3 10 03 84 DF 00 00 00 10 02 41 02 02 7E 80 10 03 82 EF 00 00 00 10 02 41 02 02 7E 3A 10 03 84 7E 00 00 00 10 02 41 02 02 7D D5 10 03 DD EC 00 00 00 10 02 41 02 02 7D 36 10 03 10 A1 00 00 00 10 02 41 02 02 7C 18 10 03 E6 3C 00 00 00 10 02 41 02 02 7B A9 10 03 C8 51 00 00 00 10 02 41 02 02 00 49 10 03 E1 DC 00 00 00 10 02 41 02 02 00 2D 10 03 CD FE 00 00 00 10 02 41 02 02 00 3C 10 03 CF EE 00 00 00 10 02 41 02 02 00 7E 10 03 A7 68 00 00 00 10 02 41 02 02 01 C6 10 03 B2 8A 00 00 00 10 02 41 02 02 7E E3 10 03 DE 2A 00 00 00 10 02 42 02 01 00 00 10 03 05 8E 00 00 00 10 02 F4 02 20 00 01 00 01 10 03 4A BB 00 10 02 F4 02 20 00 01 10 03 5A 9A 00 00 00 10 02 F4 02 20 00 02 01 10 03 92 93 00 00 10 02 F4 02 20 00 02 00 10 03 82 B2 00 00 10 02 F4 02 28 00 FC 10 03 4F 80 00 00 00 10 02 F4 02 28 00 00 F9 10 03 1F 25 00 00 10 02 F4 02 28 00 00 F6 10 03 EE CA 00 00 00 10 02 F4 02 28 00 00 F3 10 03 BE 6F 00 00 00 10 02 F4 02 28 00 00 F0 10 03 8E 0C 00 00 00 10 02 F4 02 28 00 00 ED 10 03 4D 90 00 00 00 10 02 F4 02 28 00 00 EA 10 03 3D 77 00 00 00 10 02 F4 02 28 00 00 E7 10 03 EC DA 00 00 00 10 02 F4 02 28 00 00 E4 10 03 DC B9 00 00 00 10 02 F4 02 28 00 00 E1 10 03 8C 1C 00 00 00 10 02 F4 02 28 00 00 DE 10 03 4B A0 00 00 00 10 02 F4 02 28 00 00 DB 10 03 1B 05 00 00 00 10 02 F4 02 28 00 00 D8 10 03 2B 66 00 00 00 10 02 F4 02 28 00 00 D5 10 03 FA CB 00 00 00 10 02 F4 02 28 00 00 D3 10 03 9A 0D 00 00 00 10 02 F4 02 28 00 00 D0 10 03 AA 6E 00 00 00 10 02 F4 02 28 00 00 CD 10 03 69 F2 00 00 00 10 02 F4 02 28 00 00 CA 10 03 19 15 00 00 00 10 02 F4 02 28 00 00 C7 10 03 C8 B8 00 00 00 10 02 F4 02 28 00 00 C4 10 03 F8 DB 00 00 00 10 02 F4 02 28 00 00 C1 10 03 A8 7E 00 00 00 10 02 F4 02 28 00 00 BE 10 03 27 06 00 00 00 10 02 F4 02 28 00 00 BB 10 03 77 A3 00 00 00 10 02 F4 02 28 00 00 B8 10 03 47 C0 00 00 00 10 02 F4 02 28 00 00 B5 10 03 96 6D 00 00 00 10 02 F4 02 28 00 00 B2 10 03 E6 8A 00 00 00 10 02 F4 02 28 00 00 AF 10 03 25 16 00 00 00 10 02 F4 02 28 00 00 AC 10 03 15 75 00 00 00 10 02 F4 02 28 00 00 A9 10 03 45 D0 00 00 00 10 02 F4 02 28 00 00 A6 10 03 B4 3F 00 00 00 10 02 F4 02 28 00 00 A3 10 03 E4 9A 00 00 00 10 02 F4 02 28 00 00 A0 10 03 D4 F9 00 00 00 10 02 F4 02 28 00 00 9D 10 03 33 07 00 00 00 10 02 F4 02 28 00 00 9A 10 03 43 E0 00 00 00 10 02 F4 02 28 00 00 94 10 03 A2 2E 00 00 00 10 02 F4 02 28 00 00 91 10 03 F2 8B 00 00 00 10 02 F4 02 28 00 00 8E 10 03 11 55 00 00 00 10 02 F4 02 28 00 00 8B 10 03 41 F0 00 00 00 10 02 F4 02 28 00 00 88 10 03 71 93 00 00 00 10 02 F4 02 28 00 00 85 10 03 A0 3E 00 00 00 10 02 F4 02 28 00 00 82 10 03 D0 D9 00 00 00 10 02 F4 02 28 00 00 7F 10 03 EE 6B 00 00 00 10 02 F4 02 28 00 00 7D 10 03 CE 29 00 00 00 10 02 F4 02 28 00 00 7A 10 03 BE CE 00 00 00 10 02 F4 02 28 00 00 77 10 03 6F 63 00 00 00 10 02 F4 02 28 00 00 74 10 03 5F 00 00 00 00 10 02 F4 02 28 00 00 71 10 03 0F A5 00 00 00 10 02 F4 02 28 00 00 6E 10 03 EC 7B 00 00 00 10 02 F4 02 28 00 00 6B 10 03 BC DE 00 00 00 10 02 F4 02 28 00 00 68 10 03 8C BD 00 00 00 10 02 F4 02 28 00 00 65 10 03 5D 10 00 00 00 10 02 F4 02 28 00 00 62 10 03 2D F7 00 00 00 10 02 F4 02 28 00 00 5F 10 03 CA 09 00 00 00 10 02 F4 02 28 00 00 5C 10 03 FA 6A 00 00 00 10 02 F4 02 28 00 00 59 10 03 AA CF 00 00 00 10 02 F4 02 28 00 00 56 10 03 5B 20 00 00 00 10 02 F4 02 28 00 00 53 10 03 0B 85 00 00 00 10 02 F4 02 28 00 00 50 10 03 3B E6 00 00 00 10 02 F4 02 28 00 00 4D 10 03 F8 7A 00 00 00 10 02 F4 02 28 00 00 4A 10 03 88 9D 00 00 00 10 02 F4 02 28 00 00 47 10 03 59 30 00 00 00 10 02 F4 02 28 00 00 44 10 03 69 53 00 00 00 10 02 F4 02 28 00 00 41 10 03 39 F6 00 00 00 10 02 F4 02 28 00 00 3E 10 03 B6 8E 00 00 00 10 02 F4 02 28 00 00 3B 10 03 E6 2B 00 00 00 10 02 F4 02 28 00 00 38 10 03 D6 48 00 00 00 10 02 F4 02 28 00 00 35 10 03 07 E5 00 00 00 10 02 F4 02 28 00 00 32 10 03 77 02 00 00 00 10 02 F4 02 28 00 00 2F 10 03 B4 9E 00 00 00 10 02 F4 02 28 00 00 2C 10 03 84 FD 00 00 00 10 02 F4 02 28 00 00 2A 10 03 E4 3B 00 00 00 10 02 F4 02 28 00 00 27 10 03 35 96 00 00 00 10 02 F4 02 28 00 00 24 10 03 05 F5 00 00 00 10 02 F4 02 28 00 00 21 10 03 55 50 00 00 00 10 02 F4 02 28 00 00 1E 10 03 92 EC 00 00 00 10 02 F4 02 28 00 00 1B 10 03 C2 49 00 00 00 10 02 F4 02 28 00 00 18 10 03 F2 2A 00 00 00 10 02 F4 02 28 00 00 15 10 03 23 87 00 00 00 10 02 F4 02 28 00 00 12 10 03 53 60 00 00 00 10 02 F4 02 28 00 00 0F 10 03 90 FC 00 00 00 10 02 F4 02 28 00 00 0C 10 03 A0 9F 00 00 00 10 02 F4 02 28 00 00 09 10 03 F0 3A 00 00 00 10 02 F4 02 28 00 00 06 10 03 01 D5 00 00 00 10 02 F4 02 28 00 00 03 10 03 51 70 00 00 00 10 02 F4 02 28 00 00 00 10 03 61 13 00 00 00 10 02 F4 02 28 00 00 01 10 03 71 32 00 00 00 10 02 F4 02 28 00 00 00 10 03 61 13 00 00 00 10 02 F4 02 28 00 00 FE 10 03 6F C2 00 00 00 10 02 F4 02 28 00 00 FF FF 10 03 7F E3 00 00 00 10 02 F4 02 28 00 00 01 10 03 71 32 00 00 00 10 02 F4 02 28 00 00 00 10 03 61 13 00 00 00 10 02 F4 02 00 00 00 10 03 5B 38 00 00 00 10 02 F4 02 20 00 00 10 03 DD FE ```