F000 1203 dF000: MOV R03, A F002 EB TRAP 20 ---> @F26F F003 D4B4 INV RB4 F005 0A RETS F006 dF006: DB > 68 17 F008 dF008: DB > 0E 00 04 0F 0D 07 01 04 02 0E 0F 02 0B 0D 08 01 F018 DB > 03 0A 0A 06 06 0C 0C 0B 05 09 09 05 00 03 07 08 F028 DB > 04 0F 01 0C 0E 08 08 02 0D 04 06 09 02 01 0B 07 F038 DB > 0F 05 0C 0B 09 03 07 0E 03 0A 0A 00 05 06 00 0D F048 dF048: DB > 0F 03 01 0D 08 04 0E 07 06 0F 0B 02 03 08 04 0E F058 DB > 09 0C 07 00 02 01 0D 0A 0C 06 00 09 05 0B 0A 05 F068 DB > 00 0D 0E 08 07 0A 0B 01 0A 03 04 0F 0D 04 01 02 F078 DB > 05 0B 08 06 0C 07 06 0C 09 00 03 05 02 0E 0F 09 F088 dF088: DB > 0A 0D 00 07 09 00 0E 09 06 03 03 04 0F 06 05 0A F098 DB > 01 02 0D 08 0C 05 07 0E 0B 0C 04 0B 02 0F 08 01 F0A8 DB > 0D 01 06 0A 04 0D 09 00 08 06 0F 09 03 08 00 07 F0B8 DB > 0B 04 01 0F 02 0E 0C 03 05 0B 0A 05 0E 02 07 0C F0C8 dF0C8: DB > 07 0D 0D 08 0E 0B 03 05 00 06 06 0F 09 00 0A 03 F0D8 DB > 01 04 02 07 08 02 05 0C 0B 01 0C 0A 04 0E 0F 09 F0E8 DB > 0A 03 06 0F 09 00 00 06 0C 0A 0B 01 07 0D 0D 08 F0F8 DB > 0F 09 01 04 03 05 0E 0B 05 0C 02 07 08 02 04 0E F108 dF108: DB > 02 0E 0C 0B 04 02 01 0C 07 04 0A 07 0B 0D 06 01 F118 DB > 08 05 05 00 03 0F 0F 0A 0D 03 00 09 0E 08 09 06 F128 DB > 04 0B 02 08 01 0C 0B 07 0A 01 0D 0E 07 02 08 0D F138 DB > 0F 06 09 0F 0C 00 05 09 06 0A 03 04 00 05 0E 03 F148 dF148: DB > 0C 0A 01 0F 0A 04 0F 02 09 07 02 0C 06 09 08 05 F158 DB > 00 06 0D 01 03 0D 04 0E 0E 00 07 0B 05 03 0B 08 F168 DB > 09 04 0E 03 0F 02 05 0C 02 09 08 05 0C 0F 03 0A F178 DB > 07 0B 00 0E 04 01 0A 07 01 06 0D 00 0B 08 06 0D F188 dF188: DB > 04 0D 0B 00 02 0B 0E 07 0F 04 00 09 08 01 0D 0A F198 DB > 03 0E 0C 03 09 05 07 0C 05 02 0A 0F 06 08 01 06 F1A8 DB > 01 06 04 0B 0B 0D 0D 08 0C 01 03 04 07 0A 0E 07 F1B8 DB > 0A 09 0F 05 06 00 08 0F 00 0E 05 02 09 03 02 0C F1C8 dF1C8: DB > 0D 01 02 0F 08 0D 04 08 06 0A 0F 03 0B 07 01 04 F1D8 DB > 0A 0C 09 05 03 06 0E 0B 05 00 00 0E 0C 09 07 02 F1E8 DB > 07 02 0B 01 04 0E 01 07 09 04 0C 0A 0E 08 02 0D F1F8 DB > 00 0F 06 0C 0A 09 0D 00 0F 03 03 05 05 06 08 0B F208 dF208: DB > 65 66 69 72 69 6E 67 F20F dF20F: DB > CE 35 4E 8D E0 17 C5 0C F217 dF217: DB > B0 5C 4C 5A 71 08 87 91 **** NUMBER OF BYTES EXPECTED FROM U19 DURING TRAP 20 *** F21F dF21F: DB > 05 01 08 0C 13 04 04 01 01 02 14 09 08 01 02 01 F22F DB > 01 01 14 02 **** BRANCH TABLE **** *-- COMMAND FROM U19 | | *-- TOTAL NUMBER OF BYTES RCVD | | FROM U19 INCLUDING CMD | | F233 8CF343 aF233: BR @F343 0 5 4A-4D MEMORY F236 8CF36A aF236: BR @F36A 1 1 F239 8CF38C aF239: BR @F38C 2 8 4A-50 F23C 8CF3B5 aF23C: BR @F3B5 3 C 4A-54 F23F 8CF3E6 aF23F: BR @F3E6 4 13H 4A-5B F242 8CF498 aF242: BR @F498 5 4 4A-4C 18 BYTES TO U5 F245 8CF498 aF245: BR @F498 6 4 4A-4C 18 BYTES TO U5 F248 8CF556 aF248: BR @F556 7 1 12 BYTES TO U19 (3F-41),(5A-61),0 F24B 8CF519 aF24B: BR @F519 8 1 1 BYTE TO U5 F24E 8CF528 aF24E: BR @F528 9 2 4A DOES DECRYPTION F251 8CF5F9 aF251: BR @F5F9 A 14H 4A-5C RAM CHECK, ZERO RAM SET STACK = 79 F254 8CF57F aF254: BR @F57F B 9 4A-51 CALCULATE DESTINATION OF INITIAL KEYS ? F257 8CF5B4 aF257: BR @F5B4 C 8 4A-50 WRITE IN NEW ID # F25A 8CF5D3 aF25A: BR @F5D3 D 1 SEND 5 BYTES OF ID # TO U19 F25D 8CF56E aF25D: BR @F56E E 2 4A TO U19, C3 LO, C4 HI TALK TO U5 F260 8CF579 aF260: BR @F579 F 1 APORT DATA TO U19 F263 8CF498 aF263: BR @F498 10H 1 18 BYTES TO U5 F266 8CF61E aF266: BR @F61E 11H 1 DECRYPT WITH A MINIMUM KEY??? F269 8CF63C aF269: BR @F63C 12H 14H 4A-5C RAM & ROM CHECK F26C 8CF725 aF26C: BR @F725 13H 2 4A R4A TO U19???? ******* END RESULT OF ALL BRANCHES LEAD TO TRAP 20 FOR ANOTHER CMD *** ***** TRAP 20 ***** RECEIVE CMD AND ASSOCIATED BYTES, IF ANY, FROM U19 AND STORE ASSOCIATED BYTES STARTING AT 4A R4A - R5C = COMMAND BYTES BUFFER R6C, R6D = COMMAND BYTES BUFFER ADDRESS (004A) R6E = TIMER R6F = # BYTES TO RECEIVE R70,R71 = TIMER R72 = RECEIVED COMMAND AND FLAG F26F 72FF72 aF26F: MOV %FF, R72 F272 88050371 aF272: MOVD %0503, R71 F276 5201 MOV %01, B F278 5301 aF278: AND %01, B F27A 5501 XOR %01, B F27C 9206 MOVP B, P06 F27E 7DFF72 CMP %FF, R72 F281 E207 JZ F28A F283 DB71 DECD R71 F285 E303 JC F28A F287 8EFDD6 CALL @FDD6 F28A 8004 aF28A: MOVP P04, A F28C 2702E9 BTJZ %02, A, F278 F28F 7DFF72 CMP %FF, R72 F292 E615 JNZ F2A9 F294 910A MOVP P0A, B F296 5D14 CMP %14, B F298 E703 JNC F29D F29A 8EFDD6 CALL @FDD6 F29D 724A6D aF29D: MOV %4A, R6D F2A0 AAF21F LDA @F21F(B) ------> INDIRECT ADDRESS F2A3 D06F MOV A, R6F F2A5 D172 MOV B, R72 F2A7 E006 JMP F2AF F2A9 800A aF2A9: MOVP P0A, A F2AB 9B6D STA *R6D ------> INDIRECT ADDRESS F2AD D36D INC R6D F2AF 2208 aF2AF: MOV %08, A F2B1 8408 ORP A, P08 F2B3 72FF6E MOV %FF, R6E F2B6 9104 aF2B6: MOVP P04, B F2B8 570206 BTJZ %02, B, F2C1 F2BB DA6EF8 DJNZ R6E, F2B6 F2BE 8EFDD6 CALL @FDD6 F2C1 A3F708 aF2C1: ANDP %F7, P08 F2C4 DA6FAB DJNZ R6F, F272 F2C7 A20006 MOVP %00, P06 F2CA 0A RETS **** TRAP 15 **** GIVE U19 THE VALUE IN A THROUGH BUFFER U12 F2CB 72FF6E aF2CB: MOV %FF, R6E F2CE DA6E03 aF2CE: DJNZ R6E, F2D4 F2D1 8EFDD6 CALL @FDD6 F2D4 A70204F6 aF2D4: BTJZP %02, P04, F2CE F2D8 A7800404 BTJZP %80, P04, F2E0 F2DC 8206 MOVP A, P06 F2DE E005 JMP F2E5 F2E0 820A aF2E0: MOVP A, P0A F2E2 A2FF0B MOVP %FF, P0B F2E5 2208 aF2E5: MOV %08, A F2E7 8408 ORP A, P08 F2E9 72FF6E MOV %FF, R6E F2EC DA6E03 aF2EC: DJNZ R6E, F2F2 F2EF 8EFDD6 CALL @FDD6 F2F2 A60204F6 aF2F2: BTJOP %02, P04, F2EC F2F6 A2000B MOVP %00, P0B F2F9 A3F708 ANDP %F7, P08 F2FC 0A RETS **** TRAP 16 **** TALKS TO U5 F2FD 72626B aF2FD: MOV %62, R6B F300 9A6B aF300: LDA *R6B ------> INDIRECT ADDRESS F302 8206 MOVP A, P06 F304 D36B INC R6B F306 A3EF08 ANDP %EF, P08 F309 A41008 ORP %10, P08 F30C CAF2 DJNZ B, F300 F30E 0A RETS **** INT1, INT2, INT3 IF NOT IN FULL EXPANSION MODE F30F 06 aF30F: DINT F310 A20006 MOVP %00, P06 F313 A20008 MOVP %00, P08 F316 A2000A MOVP %00, P0A F319 A2FF09 MOVP %FF, P09 F31C A2FF0B MOVP %FF, P0B F31F A22000 MOVP %20, P00 F322 A22003 MOVP %20, P03 F325 01 IDLE **** PROGRAM STARTS HERE IF GOOD START UP FROM FF62 OR RET FROM IDLE ** F326 06 aF326: DINT F327 A20010 MOVP %00, P10 F32A A23000 MOVP %30, P00 F32D A31000 ANDP %10, P00 F330 5279 MOV %79, B F332 0D LDSP F333 A20006 MOVP %00, P06 F336 A29508 MOVP %95, P08 F339 A2FF09 MOVP %FF, P09 F33C A2000B MOVP %00, P0B F33F 05 EINT F340 8CFDC8 BR @FDC8 F343 984B4F aF343: MOVD R4B, R4F F346 984D51 MOVD R4D, R51 F349 981B4B MOVD R1B, R4B F34C 981D4D MOVD R1D, R4D F34F 324E MOV R4E, B F351 530F AND %0F, B F353 D13C MOV B, R3C F355 5303 AND %03, B F357 5C07 MPY %07, B F359 581E ADD %1E, B F35B D66B XCHB R6B F35D ED TRAP 18 ---> @F76B F35E 724A6B MOV %4A, R6B F361 72426D MOV %42, R6D F364 5208 MOV %08, B F366 EC TRAP 19 ---> @F74F F367 8CFDC8 BR @FDC8 F36A 72426B aF36A: MOV %42, R6B F36D 724A6D MOV %4A, R6D F370 5208 MOV %08, B F372 EC TRAP 19 ---> @F74F F373 323C MOV R3C, B F375 530C AND %0C, B F377 CC RR B F378 CC RR B F379 5C07 MPY %07, B F37B 581E ADD %1E, B F37D D66B XCHB R6B F37F ED TRAP 18 ---> @F76B F380 724A6B MOV %4A, R6B F383 72426D MOV %42, R6D F386 5208 MOV %08, B F388 EC TRAP 19 ---> @F74F F389 8CFDC8 BR @FDC8 F38C 724A6B aF38C: MOV %4A, R6B F38F 72136D MOV %13, R6D F392 5207 MOV %07, B F394 EC TRAP 19 ---> @F74F F395 72426B MOV %42, R6B F398 724A6D MOV %4A, R6D F39B 5208 MOV %08, B F39D EC TRAP 19 ---> @F74F F39E 323C MOV R3C, B F3A0 5303 AND %03, B F3A2 5C07 MPY %07, B F3A4 581E ADD %1E, B F3A6 D66B XCHB R6B F3A8 ED TRAP 18 ---> @F76B F3A9 72426D MOV %42, R6D F3AC 724A6B MOV %4A, R6B F3AF 5208 MOV %08, B F3B1 EC TRAP 19 ---> @F74F F3B2 8CFDC8 BR @FDC8 F3B5 98533E aF3B5: MOVD R53, R3E F3B8 42543C MOV R54, R3C F3BB 72426B MOV %42, R6B F3BE 72026D MOV %02, R6D F3C1 5207 MOV %07, B F3C3 EC TRAP 19 ---> @F74F F3C4 72136B MOV %13, R6B F3C7 72026D MOV %02, R6D F3CA 5207 MOV %07, B F3CC EE TRAP 17 ---> @F75A F3CD 72026B MOV %02, R6B F3D0 ED TRAP 18 ---> @F76B F3D1 453D4E XOR R3D, R4E F3D4 453E4F XOR R3E, R4F F3D7 453C50 XOR R3C, R50 F3DA 724A6B MOV %4A, R6B F3DD 72026D MOV %02, R6D F3E0 5207 MOV %07, B F3E2 EC TRAP 19 ---> @F74F F3E3 8CFDC8 BR @FDC8 F3E6 724A6B aF3E6: MOV %4A, R6B F3E9 720C6D MOV %0C, R6D F3EC 5207 MOV %07, B F3EE EC TRAP 19 ---> @F74F F3EF 98524B MOVD R52, R4B F3F2 98544D MOVD R54, R4D F3F5 98564F MOVD R56, R4F F3F8 985851 MOVD R58, R51 F3FB 72026B MOV %02, R6B F3FE 72526D MOV %52, R6D F401 5207 MOV %07, B F403 EC TRAP 19 ---> @F74F F404 455952 XOR R59, R52 F407 455A53 XOR R5A, R53 F40A 455B54 XOR R5B, R54 F40D 425B3C MOV R5B, R3C F410 D859 PUSH R59 F412 D85A PUSH R5A F414 72526B MOV %52, R6B F417 ED TRAP 18 ---> @F76B F418 D95A POP R5A F41A D959 POP R59 F41C 72136B MOV %13, R6B F41F 720C6D MOV %0C, R6D F422 72076E MOV %07, R6E F425 9A6B aF425: LDA *R6B ------> INDIRECT ADDRESS F427 B6 XCHB A F428 9A6D LDA *R6D ------> INDIRECT ADDRESS F42A 63 AND B, A F42B E64E JNZ F47B F42D D36B INC R6B F42F D36D INC R6D F431 DA6EF1 DJNZ R6E, F425 F434 77803C4C BTJZ %80, R3C, F484 F438 4D4A09 CMP R4A, R09 F43B E60A JNZ F447 F43D 4D4B0A CMP R4B, R0A F440 E605 JNZ F447 F442 4D4C0B CMP R4C, R0B F445 E034 JMP F47B F447 984063 aF447: MOVD R40, R63 F44A 424164 MOV R41, R64 F44D 06 DINT F44E B0 TSTA F44F 4E5962 DAC R59, R62 F452 495A63 ADC R5A, R63 F455 790064 ADC %00, R64 F458 E32A JC F484 F45A D565 CLR R65 F45C 983E67 MOVD R3E, R67 F45F 07 SETC F460 4F6265 DSB R62, R65 F463 4B6366 SBB R63, R66 F466 4B6467 SBB R64, R67 F469 E719 JNC F484 F46B 986340 MOVD R63, R40 F46E 426441 MOV R64, R41 F471 EA TRAP 21 ---> @F73D F472 D179 MOV B, R79 F474 984B0A MOVD R4B, R0A F477 424C0B MOV R4C, R0B F47A 05 EINT F47B 724A6B aF47B: MOV %4A, R6B F47E 720C6D MOV %0C, R6D F481 5207 MOV %07, B F483 EE TRAP 17 ---> @F75A F484 05 aF484: EINT F485 88000063 MOVD %0000, R63 F489 88000065 MOVD %0000, R65 F48D 88000067 MOVD %0000, R67 F491 88000069 MOVD %0000, R69 F495 8CFDC8 BR @FDC8 F498 7D1072 aF498: CMP %10, R72 F49B E60C JNZ F4A9 F49D 88F20F6B MOVD %F20F, R6B F4A1 72626D MOV %62, R6D F4A4 5208 MOV %08, B F4A6 EC TRAP 19 ---> @F74F F4A7 D56A CLR R6A F4A9 5208 aF4A9: MOV %08, B F4AB A39F08 ANDP %9F, P08 F4AE A44008 ORP %40, P08 F4B1 EF TRAP 16 ---> @F2FD F4B2 7D1072 CMP %10, R72 F4B5 E60E JNZ F4C5 F4B7 88F2176B MOVD %F217, R6B F4BB 72626D MOV %62, R6D F4BE 5208 MOV %08, B F4C0 EC TRAP 19 ---> @F74F F4C1 D56A CLR R6A F4C3 E013 JMP F4D8 F4C5 8800004E aF4C5: MOVD %0000, R4E F4C9 88000050 MOVD %0000, R50 F4CD D551 CLR R51 F4CF 5208 MOV %08, B F4D1 724A6B MOV %4A, R6B F4D4 72626D MOV %62, R6D F4D7 EC TRAP 19 ---> @F74F F4D8 5208 aF4D8: MOV %08, B F4DA A39F08 ANDP %9F, P08 F4DD A46008 ORP %60, P08 F4E0 EF TRAP 16 ---> @F2FD F4E1 A39F08 ANDP %9F, P08 F4E4 A40008 ORP %00, P08 F4E7 427462 MOV R74, R62 F4EA 5201 MOV %01, B F4EC EF TRAP 16 ---> @F2FD F4ED A39F08 ANDP %9F, P08 F4F0 A42008 ORP %20, P08 F4F3 427362 MOV R73, R62 F4F6 5201 MOV %01, B F4F8 EF TRAP 16 ---> @F2FD F4F9 7D1072 CMP %10, R72 F4FC E218 JZ F516 F4FE 7D0672 CMP %06, R72 F501 E205 JZ F508 F503 720C6B MOV %0C, R6B F506 E004 JMP F50C F508 88F2086B aF508: MOVD %F208, R6B F50C ED aF50C: TRAP 18 ---> @F76B F50D 5208 MOV %08, B F50F 724A6B MOV %4A, R6B F512 72626D MOV %62, R6D F515 EC TRAP 19 ---> @F74F F516 8CFDC8 aF516: BR @FDC8 F519 A39F08 aF519: ANDP %9F, P08 F51C A40008 ORP %00, P08 F51F 427562 MOV R75, R62 F522 5201 MOV %01, B F524 EF TRAP 16 ---> @F2FD F525 8CFDC8 BR @FDC8 F528 424A4F aF528: MOV R4A, R4F F52B 98404B MOVD R40, R4B F52E 42414C MOV R41, R4C F531 983E51 MOVD R3E, R51 F534 EA TRAP 21 ---> @F73D F535 4D0179 CMP R01, R79 F538 E206 JZ F540 F53A 8800004E MOVD %0000, R4E F53E E004 JMP F544 F540 88FFFF4E aF540: MOVD %FFFF, R4E F544 72426B aF544: MOV %42, R6B F547 ED TRAP 18 ---> @F76B F548 88004A6B MOVD %004A, R6B F54C 88005A6D MOVD %005A, R6D F550 5208 MOV %08, B F552 EC TRAP 19 ---> @F74F F553 8CFDC8 BR @FDC8 F556 723F6B aF556: MOV %3F, R6B F559 520B MOV %0B, B F55B 5D08 aF55B: CMP %08, B F55D E603 JNZ F562 F55F 725A6B MOV %5A, R6B F562 9A6B aF562: LDA *R6B ------> INDIRECT ADDRESS F564 F0 TRAP 15 ---> @F2CB F565 D36B INC R6B F567 CAF2 DJNZ B, F55B F569 B5 CLR A F56A F0 TRAP 15 ---> @F2CB F56B 8CFDC8 BR @FDC8 F56E 124A aF56E: MOV R4A, A F570 23F7 AND %F7, A F572 2410 OR %10, A F574 8208 MOVP A, P08 F576 8CFDC8 BR @FDC8 F579 8004 aF579: MOVP P04, A F57B F0 TRAP 15 ---> @F2CB F57C 8CFDC8 BR @FDC8 F57F 124A aF57F: MOV R4A, A F581 B3 INC A F582 C5 CLR B F583 07 SETC F584 CF aF584: RLC B F585 BAFD DJNZ A, F584 F587 D171 MOV B, R71 F589 333A AND R3A, B F58B E614 JNZ F5A1 F58D 324A MOV R4A, B F58F 5C07 MPY %07, B F591 581E ADD %1E, B F593 D66D XCHB R6D F595 724B6B MOV %4B, R6B F598 5207 MOV %07, B F59A EC TRAP 19 ---> @F74F F59B F1 TRAP 14 ---> @F72B F59C D13B MOV B, R3B F59E 44713A OR R71, R3A F5A1 8800004B aF5A1: MOVD %0000, R4B F5A5 8800004D MOVD %0000, R4D F5A9 8800004F MOVD %0000, R4F F5AD 88000051 MOVD %0000, R51 F5B1 8CFDC8 BR @FDC8 F5B4 76103A18 aF5B4: BTJO %10, R3A, F5D0 F5B8 724A6B MOV %4A, R6B F5BB 721A6D MOV %1A, R6D F5BE 5204 MOV %04, B F5C0 EC TRAP 19 ---> @F74F INSTALL NEW UNIT ID# ??? F5C1 724E6B MOV %4E, R6B F5C4 72736D MOV %73, R6D F5C7 5203 MOV %03, B F5C9 EC TRAP 19 ---> @F74F F5CA F1 TRAP 14 ---> @F72B F5CB D13B MOV B, R3B F5CD 74103A OR %10, R3A F5D0 8CFDC8 aF5D0: BR @FDC8 F5D3 F1 aF5D3: TRAP 14 ---> @F72B F5D4 123A MOV R3A, A F5D6 231F AND %1F, A F5D8 4D013B CMP R01, R3B F5DB E602 JNZ F5DF F5DD 2480 OR %80, A F5DF B8 aF5DF: PUSH A F5E0 EA TRAP 21 ---> @F73D F5E1 B9 POP A F5E2 4D0179 CMP R01, R79 F5E5 E602 JNZ F5E9 F5E7 2440 OR %40, A F5E9 F0 aF5E9: TRAP 15 ---> @F2CB F5EA 721A6B MOV %1A, R6B F5ED 5204 MOV %04, B F5EF 9A6B aF5EF: LDA *R6B ------> INDIRECT ADDRESS F5F1 F0 TRAP 15 ---> @F2CB F5F2 D36B INC R6B F5F4 CAF9 DJNZ B, F5EF F5F6 8CFDC8 BR @FDC8 F5F9 22ED aF5F9: MOV %ED, A RAM CHECK 4A - 5C F5FB 725C6B MOV %5C, R6B F5FE 9D6B aF5FE: CMPA *R6B ------> INDIRECT ADDRESS F600 E619 JNZ F61B F602 7D4A6B CMP %4A, R6B F605 E205 JZ F60C F607 B3 INC A F608 D26B DEC R6B F60A E0F2 JMP F5FE F60C 227F aF60C: MOV %7F, A ZERO RAM F60E C5 CLR B F60F 0D LDSP F610 06 DINT F611 C8 aF611: PUSH B F612 BAFD DJNZ A, F611 F614 5279 MOV %79, B F616 0D LDSP F617 EA TRAP 21 ---> @F73D F618 D179 MOV B, R79 F61A 05 EINT F61B 8CFDC8 aF61B: BR @FDC8 F61E 98774B aF61E: MOVD R77, R4B F621 42784C MOV R78, R4C F624 D54D CLR R4D F626 8800004F MOVD %0000, R4F F62A 88000051 MOVD %0000, R51 F62E 8800426B MOVD %0042, R6B F632 ED TRAP 18 ---> @F76B F633 984B77 MOVD R4B, R77 F636 424C78 MOV R4C, R78 F639 8CFDC8 BR @FDC8 F63C 22ED aF63C: MOV %ED, A RAM CHECK RCVD DATA F63E 725C6B MOV %5C, R6B F641 9D6B aF641: CMPA *R6B ------> INDIRECT ADDRESS F643 E6D6 JNZ F61B F645 7D4A6B CMP %4A, R6B F648 E205 JZ F64F F64A B3 INC A F64B D26B DEC R6B F64D E0F2 JMP F641 F64F 88F0086B aF64F: MOVD %F008, R6B CHECKSUM OF U7 ROM F653 8800006D MOVD %0000, R6D F657 9A6B aF657: LDA *R6B ------> INDIRECT ADDRESS F659 48006D ADD R00, R6D F65C 79006C ADC %00, R6C F65F 78016B ADD %01, R6B F662 79006A ADC %00, R6A F665 7D006A CMP %00, R6A F668 E6ED JNZ F657 F66A C5 CLR B F66B AAF006 LDA @F006(B) ------> INDIRECT ADDRESS F66E 4D006D CMP R00, R6D F671 E642 JNZ F6B5 F673 C3 INC B F674 AAF006 LDA @F006(B) ------> INDIRECT ADDRESS F677 4D006C CMP R00, R6C F67A E639 JNZ F6B5 FAILED F67C 88007F03 MOVD %007F, R03 F680 B5 CLR A F681 C5 CLR B F682 1203 aF682: MOV R03, A F684 9B03 STA *R03 ------> INDIRECT ADDRESS F686 B6 XCHB A F687 9A03 LDA *R03 ------> INDIRECT ADDRESS F689 B6 XCHB A F68A 3D00 CMP R00, B F68C E627 JNZ F6B5 F68E B4 INV A F68F 9B03 STA *R03 ------> INDIRECT ADDRESS F691 B6 XCHB A F692 9A03 LDA *R03 ------> INDIRECT ADDRESS F694 B6 XCHB A F695 3D00 CMP R00, B F697 E61C JNZ F6B5 F699 DB03 DECD R03 F69B 7D3B03 CMP %3B, R03 F69E E604 JNZ F6A4 F6A0 88001903 MOVD %0019, R03 F6A4 7D0303 aF6A4: CMP %03, R03 F6A7 E6D9 JNZ F682 F6A9 2255 MOV %55, A F6AB 720202 MOV %02, R02 F6AE D402 INV R02 F6B0 7DFD02 CMP %FD, R02 F6B3 E202 JZ F6B7 F6B5 22AA aF6B5: MOV %AA, A F6B7 A20006 aF6B7: MOVP %00, P06 F6BA A20008 MOVP %00, P08 F6BD A40108 ORP %01, P08 F6C0 A3FE08 ANDP %FE, P08 F6C3 A20208 MOVP %02, P08 F6C6 A40108 ORP %01, P08 F6C9 A3FE08 ANDP %FE, P08 F6CC 8206 MOVP A, P06 F6CE A40108 ORP %01, P08 F6D1 A3FE08 ANDP %FE, P08 F6D4 800A MOVP P0A, A F6D6 8206 MOVP A, P06 F6D8 A40108 ORP %01, P08 F6DB A3FE08 ANDP %FE, P08 F6DE 8004 MOVP P04, A F6E0 8206 MOVP A, P06 F6E2 A40108 ORP %01, P08 F6E5 A3FE08 ANDP %FE, P08 F6E8 A20006 MOVP %00, P06 F6EB A40108 ORP %01, P08 F6EE A3FE08 ANDP %FE, P08 F6F1 A20106 MOVP %01, P06 F6F4 A40108 ORP %01, P08 F6F7 A3FE08 ANDP %FE, P08 F6FA A20206 MOVP %02, P06 F6FD A40108 ORP %01, P08 F700 A3FE08 ANDP %FE, P08 F703 2204 MOV %04, A F705 B4 aF705: INV A F706 C0 MOV A, B F707 B4 INV A F708 8408 ORP A, P08 F70A 8406 ORP A, P06 F70C A40108 ORP %01, P08 F70F 9308 ANDP B, P08 F711 9306 ANDP B, P06 F713 A3FE08 ANDP %FE, P08 F716 BF RLC A F717 E7EC JNC F705 F719 A20008 MOVP %00, P08 F71C A40108 ORP %01, P08 F71F A3FE08 ANDP %FE, P08 F722 8CF63C BR @F63C F725 124A aF725: MOV R4A, A F727 F0 TRAP 15 ---> @F2CB F728 8CFDC8 BR @FDC8 **** TRAP 14 **** CREATE B THROUGH 32 BYTE XOR F72B 72396B aF72B: MOV %39, R6B F72E C5 CLR B F72F 9A6B aF72F: LDA *R6B ------> INDIRECT ADDRESS F731 3800 ADD R00, B F733 356B XOR R6B, B F735 D26B DEC R6B F737 7D196B CMP %19, R6B F73A E6F3 JNZ F72F F73C 0A RETS **** TRAP 21 **** CREATE B THROUGH 3 BYTE XOR F73D 72416B aF73D: MOV %41, R6B F740 C5 CLR B F741 9A6B aF741: LDA *R6B ------> INDIRECT ADDRESS F743 3800 ADD R00, B F745 356B XOR R6B, B F747 D26B DEC R6B F749 7D3E6B CMP %3E, R6B F74C E6F3 JNZ F741 F74E 0A RETS **** TRAP 19 **** REGISTER XFER F74F 9A6B aF74F: LDA *R6B ------> INDIRECT ADDRESS F751 9B6D STA *R6D ------> INDIRECT ADDRESS F753 D36B INC R6B F755 D36D INC R6D F757 CAF6 DJNZ B, F74F F759 0A RETS **** TRAP 17 **** 7 BYTE XOR F75A 9A6B aF75A: LDA *R6B ------> INDIRECT ADDRESS F75C D071 MOV A, R71 F75E 9A6D LDA *R6D ------> INDIRECT ADDRESS F760 1571 XOR R71, A F762 9B6D STA *R6D ------> INDIRECT ADDRESS F764 D36B INC R6B F766 D36D INC R6D F768 CAF0 DJNZ B, F75A F76A 0A RETS **** TRAP 18 **** SETUP R62 - R68, 7 BYTES --> 56BITS F76B A22006 aF76B: MOVP %20, P06 F76E 9A6B LDA *R6B ------> INDIRECT ADDRESS F770 D062 MOV A, R62 F772 D36B INC R6B F774 9A6B LDA *R6B ------> INDIRECT ADDRESS F776 D063 MOV A, R63 F778 D36B INC R6B F77A 9A6B LDA *R6B ------> INDIRECT ADDRESS F77C D064 MOV A, R64 F77E D36B INC R6B F780 9A6B LDA *R6B ------> INDIRECT ADDRESS F782 D065 MOV A, R65 F784 D36B INC R6B F786 9A6B LDA *R6B ------> INDIRECT ADDRESS F788 D066 MOV A, R66 F78A D36B INC R6B F78C 9A6B LDA *R6B ------> INDIRECT ADDRESS F78E D067 MOV A, R67 F790 D36B INC R6B F792 9A6B LDA *R6B ------> INDIRECT ADDRESS F794 D068 MOV A, R68 F796 D56A CLR R6A F798 B5 CLR A F799 77406202 BTJZ %40, R62, F79F F79D 2440 OR %40, A F79F 77206302 aF79F: BTJZ %20, R63, F7A5 F7A3 2420 OR %20, A F7A5 77106402 aF7A5: BTJZ %10, R64, F7AB F7A9 2410 OR %10, A F7AB 77086502 aF7AB: BTJZ %08, R65, F7B1 F7AF 2408 OR %08, A F7B1 77046602 aF7B1: BTJZ %04, R66, F7B7 F7B5 2404 OR %04, A F7B7 77026702 aF7B7: BTJZ %02, R67, F7BD F7BB 2402 OR %02, A F7BD 77016802 aF7BD: BTJZ %01, R68, F7C3 F7C1 2401 OR %01, A F7C3 D061 aF7C3: MOV A, R61 ----- R61 F7C5 B5 CLR A F7C6 77806802 BTJZ %80, R68, F7CC F7CA 2440 OR %40, A F7CC 77206202 aF7CC: BTJZ %20, R62, F7D2 F7D0 2420 OR %20, A F7D2 77106302 aF7D2: BTJZ %10, R63, F7D8 F7D6 2410 OR %10, A F7D8 77086402 aF7D8: BTJZ %08, R64, F7DE F7DC 2408 OR %08, A F7DE 77046502 aF7DE: BTJZ %04, R65, F7E4 F7E2 2404 OR %04, A F7E4 77026602 aF7E4: BTJZ %02, R66, F7EA F7E8 2402 OR %02, A F7EA 77016702 aF7EA: BTJZ %01, R67, F7F0 F7EE 2401 OR %01, A F7F0 D060 aF7F0: MOV A, R60 ----- R60 F7F2 B5 CLR A F7F3 77806702 BTJZ %80, R67, F7F9 F7F7 2440 OR %40, A F7F9 77406802 aF7F9: BTJZ %40, R68, F7FF F7FD 2420 OR %20, A F7FF 77106202 aF7FF: BTJZ %10, R62, F805 F803 2410 OR %10, A F805 77086302 aF805: BTJZ %08, R63, F80B F809 2408 OR %08, A F80B 77046402 aF80B: BTJZ %04, R64, F811 F80F 2404 OR %04, A F811 77026502 aF811: BTJZ %02, R65, F817 F815 2402 OR %02, A F817 77016602 aF817: BTJZ %01, R66, F81D F81B 2401 OR %01, A F81D D05F aF81D: MOV A, R5F ----- R5F F81F B5 CLR A F820 77806602 BTJZ %80, R66, F826 F824 2440 OR %40, A F826 77406702 aF826: BTJZ %40, R67, F82C F82A 2420 OR %20, A F82C 77206802 aF82C: BTJZ %20, R68, F832 F830 2410 OR %10, A F832 77086202 aF832: BTJZ %08, R62, F838 F836 2408 OR %08, A F838 77046302 aF838: BTJZ %04, R63, F83E F83C 2404 OR %04, A F83E 77026402 aF83E: BTJZ %02, R64, F844 F842 2402 OR %02, A F844 77016502 aF844: BTJZ %01, R65, F84A F848 2401 OR %01, A F84A D05E aF84A: MOV A, R5E ----- R5E F84C B5 CLR A F84D 77016202 BTJZ %01, R62, F853 F851 2440 OR %40, A F853 77806202 aF853: BTJZ %80, R62, F859 F857 2420 OR %20, A F859 77406302 aF859: BTJZ %40, R63, F85F F85D 2410 OR %10, A F85F 77206402 aF85F: BTJZ %20, R64, F865 F863 2408 OR %08, A F865 77106502 aF865: BTJZ %10, R65, F86B F869 2404 OR %04, A F86B 77086602 aF86B: BTJZ %08, R66, F871 F86F 2402 OR %02, A F871 77046702 aF871: BTJZ %04, R67, F877 F875 2401 OR %01, A F877 D05D aF877: MOV A, R5D ----- 5D F879 B5 CLR A F87A 77026802 BTJZ %02, R68, F880 F87E 2440 OR %40, A F880 77026202 aF880: BTJZ %02, R62, F886 F884 2420 OR %20, A F886 77016302 aF886: BTJZ %01, R63, F88C F88A 2410 OR %10, A F88C 77806302 aF88C: BTJZ %80, R63, F892 F890 2408 OR %08, A F892 77406402 aF892: BTJZ %40, R64, F898 F896 2404 OR %04, A F898 77206502 aF898: BTJZ %20, R65, F89E F89C 2402 OR %02, A F89E 77106602 aF89E: BTJZ %10, R66, F8A4 F8A2 2401 OR %01, A F8A4 D05C aF8A4: MOV A, R5C ----- 5C F8A6 B5 CLR A F8A7 77086702 BTJZ %08, R67, F8AD F8AB 2440 OR %40, A F8AD 77046802 aF8AD: BTJZ %04, R68, F8B3 F8B1 2420 OR %20, A F8B3 77046202 aF8B3: BTJZ %04, R62, F8B9 F8B7 2410 OR %10, A F8B9 77026302 aF8B9: BTJZ %02, R63, F8BF F8BD 2408 OR %08, A F8BF 77016402 aF8BF: BTJZ %01, R64, F8C5 F8C3 2404 OR %04, A F8C5 77806402 aF8C5: BTJZ %80, R64, F8CB F8C9 2402 OR %02, A F8CB 77406502 aF8CB: BTJZ %40, R65, F8D1 F8CF 2401 OR %01, A F8D1 D05B aF8D1: MOV A, R5B ----- 5B F8D3 B5 CLR A F8D4 77206602 BTJZ %20, R66, F8DA F8D8 2440 OR %40, A F8DA 77106702 aF8DA: BTJZ %10, R67, F8E0 F8DE 2420 OR %20, A F8E0 77086802 aF8E0: BTJZ %08, R68, F8E6 F8E4 2410 OR %10, A F8E6 77806502 aF8E6: BTJZ %80, R65, F8EC F8EA 2408 OR %08, A F8EC 77406602 aF8EC: BTJZ %40, R66, F8F2 F8F0 2404 OR %04, A F8F2 77206702 aF8F2: BTJZ %20, R67, F8F8 F8F6 2402 OR %02, A F8F8 77106802 aF8F8: BTJZ %10, R68, F8FE F8FC 2401 OR %01, A F8FE D05A aF8FE: MOV A, R5A ----- 5A ACCORDING TO JIM, INITIAL PERMUTATION "IP", 51 - 4A ... MSB --> LSB BIT 0 ---> BIT 64 INPUT BLOCK (51 - 4A) SUBJECT TO IP, ACCORDING TO TABLE IN FIPS PUB 46 PG9 F900 5208 MOV %08, B F902 72406E MOV %40, R6E F905 B5 aF905: CLR A F906 476E4A02 BTJZ R6E, R4A, F90C F90A 2480 OR %80, A F90C 476E4B02 aF90C: BTJZ R6E, R4B, F912 F910 2440 OR %40, A F912 476E4C02 aF912: BTJZ R6E, R4C, F918 F916 2420 OR %20, A F918 476E4D02 aF918: BTJZ R6E, R4D, F91E F91C 2410 OR %10, A F91E 476E4E02 aF91E: BTJZ R6E, R4E, F924 F922 2408 OR %08, A F924 476E4F02 aF924: BTJZ R6E, R4F, F92A F928 2404 OR %04, A F92A 476E5002 aF92A: BTJZ R6E, R50, F930 F92E 2402 OR %02, A F930 476E5102 aF930: BTJZ R6E, R51, F936 F934 2401 OR %01, A F936 AB0051 aF936: STA @0051(B) ------> INDIRECT ADDRESS *** R52-59 *** F939 DD6E RRC R6E F93B DD6E RRC R6E F93D CAC6 DJNZ B, F905 F93F 721071 MOV %10, R71 ROUND COUNT F942 B5 aF942: CLR A START 16 ROUNDS F943 77016002 BTJZ %01, R60, F949 F947 2480 OR %80, A F949 77105F02 aF949: BTJZ %10, R5F, F94F F94D 2440 OR %40, A 32 BIT SPLIT F94F 77086002 aF94F: BTJZ %08, R60, F955 (5E-61) --> (69-66) F953 2420 OR %20, A F955 77105E02 aF955: BTJZ %10, R5E, F95B F959 2410 OR %10, A F95B 77406102 aF95B: BTJZ %40, R61, F961 F95F 2408 OR %08, A F961 77046102 aF961: BTJZ %04, R61, F967 F965 2404 OR %04, A F967 D069 aF967: MOV A, R69 ----- R69 F969 B5 CLR A F96A 77106102 BTJZ %10, R61, F970 F96E 2480 OR %80, A F970 77015E02 aF970: BTJZ %01, R5E, F976 F974 2440 OR %40, A F976 77405F02 aF976: BTJZ %40, R5F, F97C F97A 2420 OR %20, A F97C 77026102 aF97C: BTJZ %02, R61, F982 F980 2410 OR %10, A F982 77015F02 aF982: BTJZ %01, R5F, F988 F986 2408 OR %08, A F988 77106002 aF988: BTJZ %10, R60, F98E F98C 2404 OR %04, A F98E D068 aF98E: MOV A, R68 ----- R68 F990 B5 CLR A F991 77205E02 BTJZ %20, R5E, F997 F995 2480 OR %80, A F997 77045F02 aF997: BTJZ %04, R5F, F99D F99B 2440 OR %40, A F99D 77046002 aF99D: BTJZ %04, R60, F9A3 F9A1 2420 OR %20, A F9A3 77086102 aF9A3: BTJZ %08, R61, F9A9 F9A7 2410 OR %10, A F9A9 77045E02 aF9A9: BTJZ %04, R5E, F9AF F9AD 2408 OR %08, A F9AF 77406002 aF9AF: BTJZ %40, R60, F9B5 F9B3 2404 OR %04, A F9B5 D067 aF9B5: MOV A, R67 ----- R67 F9B7 B5 CLR A F9B8 77205F02 BTJZ %20, R5F, F9BE F9BC 2480 OR %80, A F9BE 77016102 aF9BE: BTJZ %01, R61, F9C4 F9C2 2440 OR %40, A F9C4 77025E02 aF9C4: BTJZ %02, R5E, F9CA F9C8 2420 OR %20, A F9CA 77025F02 aF9CA: BTJZ %02, R5F, F9D0 F9CE 2410 OR %10, A F9D0 77026002 aF9D0: BTJZ %02, R60, F9D6 F9D4 2408 OR %08, A F9D6 77206102 aF9D6: BTJZ %20, R61, F9DC F9DA 2404 OR %04, A F9DC D066 aF9DC: MOV A, R66 ----- R66 F9DE B5 CLR A 32 BIT SPLIT F9DF 77025C02 BTJZ %02, R5C, F9E5 (5A-5D) --> (65-62) F9E3 2480 OR %80, A F9E5 77105A02 aF9E5: BTJZ %10, R5A, F9EB F9E9 2440 OR %40, A F9EB 77105D02 aF9EB: BTJZ %10, R5D, F9F1 F9EF 2420 OR %20, A F9F1 77205C02 aF9F1: BTJZ %20, R5C, F9F7 F9F5 2410 OR %10, A F9F7 77045B02 aF9F7: BTJZ %04, R5B, F9FD F9FB 2408 OR %08, A F9FD 77025A02 aF9FD: BTJZ %02, R5A, FA03 FA01 2404 OR %04, A FA03 D065 aFA03: MOV A, R65 ----- R65 FA05 B5 CLR A FA06 77205D02 BTJZ %20, R5D, FA0C FA0A 2480 OR %80, A FA0C 77045C02 aFA0C: BTJZ %04, R5C, FA12 FA10 2440 OR %40, A FA12 77205A02 aFA12: BTJZ %20, R5A, FA18 FA16 2420 OR %20, A FA18 77105B02 aFA18: BTJZ %10, R5B, FA1E FA1C 2410 OR %10, A FA1E 77045D02 aFA1E: BTJZ %04, R5D, FA24 FA22 2408 OR %08, A FA24 77025B02 aFA24: BTJZ %02, R5B, FA2A FA28 2404 OR %04, A FA2A D064 aFA2A: MOV A, R64 ----- R64 FA2C B5 CLR A FA2D 77205B02 BTJZ %20, R5B, FA33 FA31 2480 OR %80, A FA33 77015B02 aFA33: BTJZ %01, R5B, FA39 FA37 2440 OR %40, A FA39 77085C02 aFA39: BTJZ %08, R5C, FA3F FA3D 2420 OR %20, A FA3F 77015A02 aFA3F: BTJZ %01, R5A, FA45 FA43 2410 OR %10, A FA45 77025D02 aFA45: BTJZ %02, R5D, FA4B FA49 2408 OR %08, A FA4B 77085A02 aFA4B: BTJZ %08, R5A, FA51 FA4F 2404 OR %04, A FA51 D063 aFA51: MOV A, R63 ----- R63 FA53 B5 CLR A FA54 77085B02 BTJZ %08, R5B, FA5A FA58 2480 OR %80, A FA5A 77015C02 aFA5A: BTJZ %01, R5C, FA60 FA5E 2440 OR %40, A FA60 77405A02 aFA60: BTJZ %40, R5A, FA66 FA64 2420 OR %20, A FA66 77405C02 aFA66: BTJZ %40, R5C, FA6C FA6A 2410 OR %10, A FA6C 77405D02 aFA6C: BTJZ %40, R5D, FA72 FA70 2408 OR %08, A FA72 77085D02 aFA72: BTJZ %08, R5D, FA78 FA76 2404 OR %04, A FA78 D062 aFA78: MOV A, R62 ----- R62 ....................................................... FA7A 72016E MOV %01, R6E FA7D 7D1071 CMP %10, R71 DETERMINE # OF SHIFTS FOR 1ST, 2ND, 9TH, & 16TH ROUNDS FA80 E211 JZ FA93 FA82 7D0971 CMP %09, R71 FA85 E20C JZ FA93 FA87 7D0271 CMP %02, R71 FA8A E207 JZ FA93 SUBKEY GENERATION FA8C 7D0171 CMP %01, R71 FA8F E202 JZ FA93 FA91 D36E INC R6E FA93 DD5E aFA93: RRC R5E FA95 E703 JNC FA9A FA97 748061 OR %80, R61 R5A-61 FA9A DD61 aFA9A: RRC R61 FA9C E703 JNC FAA1 FA9E 748060 OR %80, R60 FAA1 DD60 aFAA1: RRC R60 FAA3 E703 JNC FAA8 FAA5 74805F OR %80, R5F FAA8 DD5F aFAA8: RRC R5F FAAA E703 JNC FAAF FAAC 74405E OR %40, R5E FAAF DD5A aFAAF: RRC R5A FAB1 E703 JNC FAB6 FAB3 74805D OR %80, R5D FAB6 DD5D aFAB6: RRC R5D FAB8 E703 JNC FABD FABA 74805C OR %80, R5C FABD DD5C aFABD: RRC R5C FABF E703 JNC FAC4 FAC1 74805B OR %80, R5B FAC4 DD5B aFAC4: RRC R5B FAC6 E703 JNC FACB FAC8 74405A OR %40, R5A FACB 227F aFACB: MOV %7F, A CLEAR MSB OF (5A-61) FACD 43005A AND R00, R5A FAD0 43005B AND R00, R5B FAD3 43005C AND R00, R5C FAD6 43005D AND R00, R5D FAD9 43005E AND R00, R5E FADC 43005F AND R00, R5F FADF 430060 AND R00, R60 FAE2 430061 AND R00, R61 FAE5 DA6EAB DJNZ R6E, FA93 FAE8 98534F MOVD R53, R4F FAEB 985551 MOVD R55, R51 FIGURE THE 6 BIT VALUES THAT WILL BE USED TO GET THE 4 BIT SEQUENCE FROM THE "S" BOXES 51-4E BIT32 -> BIT1 32 BIT INPUT --> 48 BIT OUTPUT (51 - 4E) (69-62) FUNCTION E FOR CALCULATION OF F(R,K) ACCORDING TO THE E BIT SELECTION TABLE OF FIPS PUB 46 PG 11 FAEE B5 CLR A FAEF 77014E02 BTJZ %01, R4E, FAF5 FAF3 2480 OR %80, A FAF5 77805102 aFAF5: BTJZ %80, R51, FAFB FAF9 2440 OR %40, A FAFB 77405102 aFAFB: BTJZ %40, R51, FB01 FAFF 2420 OR %20, A FB01 77205102 aFB01: BTJZ %20, R51, FB07 FB05 2410 OR %10, A FB07 77105102 aFB07: BTJZ %10, R51, FB0D FB0B 2408 OR %08, A FB0D 77085102 aFB0D: BTJZ %08, R51, FB13 FB11 2404 OR %04, A FB13 450069 aFB13: XOR R00, R69 ----- R69 FB16 B5 CLR A FB17 77105102 BTJZ %10, R51, FB1D FB1B 2480 OR %80, A FB1D 77085102 aFB1D: BTJZ %08, R51, FB23 FB21 2440 OR %40, A FB23 77045102 aFB23: BTJZ %04, R51, FB29 FB27 2420 OR %20, A FB29 77025102 aFB29: BTJZ %02, R51, FB2F FB2D 2410 OR %10, A FB2F 77015102 aFB2F: BTJZ %01, R51, FB35 FB33 2408 OR %08, A FB35 77805002 aFB35: BTJZ %80, R50, FB3B FB39 2404 OR %04, A FB3B 450068 aFB3B: XOR R00, R68 ----- R68 FB3E B5 CLR A FB3F 77015102 BTJZ %01, R51, FB45 FB43 2480 OR %80, A FB45 77805002 aFB45: BTJZ %80, R50, FB4B FB49 2440 OR %40, A FB4B 77405002 aFB4B: BTJZ %40, R50, FB51 FB4F 2420 OR %20, A FB51 77205002 aFB51: BTJZ %20, R50, FB57 FB55 2410 OR %10, A FB57 77105002 aFB57: BTJZ %10, R50, FB5D FB5B 2408 OR %08, A FB5D 77085002 aFB5D: BTJZ %08, R50, FB63 FB61 2404 OR %04, A FB63 450067 aFB63: XOR R00, R67 ----- R67 FB66 B5 CLR A FB67 77105002 BTJZ %10, R50, FB6D FB6B 2480 OR %80, A FB6D 77085002 aFB6D: BTJZ %08, R50, FB73 FB71 2440 OR %40, A FB73 77045002 aFB73: BTJZ %04, R50, FB79 FB77 2420 OR %20, A FB79 77025002 aFB79: BTJZ %02, R50, FB7F FB7D 2410 OR %10, A FB7F 77015002 aFB7F: BTJZ %01, R50, FB85 FB83 2408 OR %08, A FB85 77804F02 aFB85: BTJZ %80, R4F, FB8B FB89 2404 OR %04, A FB8B 450066 aFB8B: XOR R00, R66 ----- R66 FB8E B5 CLR A FB8F 77015002 BTJZ %01, R50, FB95 FB93 2480 OR %80, A FB95 77804F02 aFB95: BTJZ %80, R4F, FB9B FB99 2440 OR %40, A FB9B 77404F02 aFB9B: BTJZ %40, R4F, FBA1 FB9F 2420 OR %20, A FBA1 77204F02 aFBA1: BTJZ %20, R4F, FBA7 FBA5 2410 OR %10, A FBA7 77104F02 aFBA7: BTJZ %10, R4F, FBAD FBAB 2408 OR %08, A FBAD 77084F02 aFBAD: BTJZ %08, R4F, FBB3 FBB1 2404 OR %04, A FBB3 450065 aFBB3: XOR R00, R65 ----- R65 FBB6 B5 CLR A FBB7 77104F02 BTJZ %10, R4F, FBBD FBBB 2480 OR %80, A FBBD 77084F02 aFBBD: BTJZ %08, R4F, FBC3 FBC1 2440 OR %40, A FBC3 77044F02 aFBC3: BTJZ %04, R4F, FBC9 FBC7 2420 OR %20, A FBC9 77024F02 aFBC9: BTJZ %02, R4F, FBCF FBCD 2410 OR %10, A FBCF 77014F02 aFBCF: BTJZ %01, R4F, FBD5 FBD3 2408 OR %08, A FBD5 77804E02 aFBD5: BTJZ %80, R4E, FBDB FBD9 2404 OR %04, A FBDB 450064 aFBDB: XOR R00, R64 ----- R64 FBDE B5 CLR A FBDF 77014F02 BTJZ %01, R4F, FBE5 FBE3 2480 OR %80, A FBE5 77804E02 aFBE5: BTJZ %80, R4E, FBEB FBE9 2440 OR %40, A FBEB 77404E02 aFBEB: BTJZ %40, R4E, FBF1 FBEF 2420 OR %20, A FBF1 77204E02 aFBF1: BTJZ %20, R4E, FBF7 FBF5 2410 OR %10, A FBF7 77104E02 aFBF7: BTJZ %10, R4E, FBFD FBFB 2408 OR %08, A FBFD 77084E02 aFBFD: BTJZ %08, R4E, FC03 FC01 2404 OR %04, A FC03 450063 aFC03: XOR R00, R63 ----- R63 FC06 B5 CLR A FC07 77104E02 BTJZ %10, R4E, FC0D FC0B 2480 OR %80, A FC0D 77084E02 aFC0D: BTJZ %08, R4E, FC13 FC11 2440 OR %40, A FC13 77044E02 aFC13: BTJZ %04, R4E, FC19 FC17 2420 OR %20, A FC19 77024E02 aFC19: BTJZ %02, R4E, FC1F FC1D 2410 OR %10, A FC1F 77014E02 aFC1F: BTJZ %01, R4E, FC25 FC23 2408 OR %08, A FC25 77805102 aFC25: BTJZ %80, R51, FC2B FC29 2404 OR %04, A FC2B 450062 aFC2B: XOR R00, R62 ----- R62 FC2E 3262 MOV R62, B GET NEW ROUND KEY FC30 CC RR B FC31 CC RR B B <= 63 STAY WITHIN "S" BOX FC32 AAF1C8 LDA @F1C8(B) ------> INDIRECT ADDRESS FC35 D062 MOV A, R62 ***** CONVERT 6 BIT SEQUENCEES TO FC37 3263 MOV R63, B 4 BIT SEQUENCES THROUGH THE FC39 CC RR B "S" BOXES FC3A CC RR B (62-69) <= 0F FC3B AAF188 LDA @F188(B) ------> INDIRECT ADDRESS FC3E D063 MOV A, R63 ***** FC40 3264 MOV R64, B FC42 CC RR B FC43 CC RR B FC44 AAF148 LDA @F148(B) ------> INDIRECT ADDRESS FC47 D064 MOV A, R64 ***** FC49 3265 MOV R65, B FC4B CC RR B FC4C CC RR B FC4D AAF108 LDA @F108(B) ------> INDIRECT ADDRESS FC50 D065 MOV A, R65 ***** FC52 3266 MOV R66, B FC54 CC RR B FC55 CC RR B FC56 AAF0C8 LDA @F0C8(B) ------> INDIRECT ADDRESS FC59 D066 MOV A, R66 ***** FC5B 3267 MOV R67, B FC5D CC RR B FC5E CC RR B FC5F AAF088 LDA @F088(B) ------> INDIRECT ADDRESS FC62 D067 MOV A, R67 ***** FC64 3268 MOV R68, B FC66 CC RR B FC67 CC RR B FC68 AAF048 LDA @F048(B) ------> INDIRECT ADDRESS FC6B D068 MOV A, R68 ***** FC6D 3269 MOV R69, B FC6F CC RR B FC70 CC RR B FC71 AAF008 LDA @F008(B) ------> INDIRECT ADDRESS FC74 D069 MOV A, R69 ***** .............................................................. FC76 72596D MOV %59, R6D FC79 B5 CLR A R69-R62 FC7A 77016602 BTJZ %01, R66, FC80 BIT 0 --> BIT 32 FC7E 2480 OR %80, A PERMUTATION FUNCTION "P" FC80 77026802 aFC80: BTJZ %02, R68, FC86 FOR THE CALCULATION OF FC84 2440 OR %40, A F(R,K); FIPS 46, PG 12 FC86 77016502 aFC86: BTJZ %01, R65, FC8C FC8A 2420 OR %20, A 32 BIT IN --> 32 BIT OUT FC8C 77086402 aFC8C: BTJZ %08, R64, FC92 FC90 2410 OR %10, A FC92 77086202 aFC92: BTJZ %08, R62, FC98 FC96 2408 OR %08, A FC98 77016702 aFC98: BTJZ %01, R67, FC9E FC9C 2404 OR %04, A FC9E 77016302 aFC9E: BTJZ %01, R63, FCA4 FCA2 2402 OR %02, A FCA4 77086502 aFCA4: BTJZ %08, R65, FCAA FCA8 2401 OR %01, A FCAA B6 aFCAA: XCHB A FCAB 9A6D LDA *R6D ------> INDIRECT ADDRESS FCAD 65 XOR B, A FCAE 9B6D STA *R6D ------> INDIRECT ADDRESS **** R59 FCB0 D26D DEC R6D FCB2 B5 CLR A FCB3 77086902 BTJZ %08, R69, FCB9 FCB7 2480 OR %80, A FCB9 77026602 aFCB9: BTJZ %02, R66, FCBF FCBD 2440 OR %40, A FCBF 77026402 aFCBF: BTJZ %02, R64, FCC5 FCC3 2420 OR %20, A FCC5 77046302 aFCC5: BTJZ %04, R63, FCCB FCC9 2410 OR %10, A FCCB 77086802 aFCCB: BTJZ %08, R68, FCD1 FCCF 2408 OR %08, A FCD1 77046502 aFCD1: BTJZ %04, R65, FCD7 FCD5 2404 OR %04, A FCD7 77026202 aFCD7: BTJZ %02, R62, FCDD FCDB 2402 OR %02, A FCDD 77046702 aFCDD: BTJZ %04, R67, FCE3 FCE1 2401 OR %01, A FCE3 B6 aFCE3: XCHB A FCE4 9A6D LDA *R6D ------> INDIRECT ADDRESS FCE6 65 XOR B, A FCE7 9B6D STA *R6D ------> INDIRECT ADDRESS ***** R58 FCE9 D26D DEC R6D FCEB B5 CLR A FCEC 77046902 BTJZ %04, R69, FCF2 FCF0 2480 OR %80, A FCF2 77016802 aFCF2: BTJZ %01, R68, FCF8 FCF6 2440 OR %40, A FCF8 77016402 aFCF8: BTJZ %01, R64, FCFE FCFC 2420 OR %20, A FCFE 77046602 aFCFE: BTJZ %04, R66, FD04 FD02 2410 OR %10, A FD04 77016202 aFD04: BTJZ %01, R62, FD0A FD08 2408 OR %08, A FD0A 77026302 aFD0A: BTJZ %02, R63, FD10 FD0E 2404 OR %04, A FD10 77026902 aFD10: BTJZ %02, R69, FD16 FD14 2402 OR %02, A FD16 77086702 aFD16: BTJZ %08, R67, FD1C FD1A 2401 OR %01, A FD1C B6 aFD1C: XCHB A FD1D 9A6D LDA *R6D ------> INDIRECT ADDRESS FD1F 65 XOR B, A FD20 9B6D STA *R6D ------> INDIRECT ADDRESS ***** R57 FD22 D26D DEC R6D FD24 B5 CLR A FD25 77026502 BTJZ %02, R65, FD2B FD29 2480 OR %80, A FD2B 77086602 aFD2B: BTJZ %08, R66, FD31 FD2F 2440 OR %40, A FD31 77046202 aFD31: BTJZ %04, R62, FD37 FD35 2420 OR %20, A FD37 77046802 aFD37: BTJZ %04, R68, FD3D FD3B 2410 OR %10, A FD3D 77046402 aFD3D: BTJZ %04, R64, FD43 FD41 2408 OR %08, A FD43 77026702 aFD43: BTJZ %02, R67, FD49 FD47 2404 OR %04, A FD49 77016902 aFD49: BTJZ %01, R69, FD4F FD4D 2402 OR %02, A FD4F 77086302 aFD4F: BTJZ %08, R63, FD55 FD53 2401 OR %01, A FD55 B6 aFD55: XCHB A FD56 9A6D LDA *R6D ------> INDIRECT ADDRESS FD58 65 XOR B, A FD59 9B6D STA *R6D ------> INDIRECT ADDRESS ***** R56 FD5B 7D0171 CMP %01, R71 DONE 16 ROUNDS? FD5E E217 JZ FD77 YES FD60 985363 MOVD R53, R63 NO SO SWAP FD63 985565 MOVD R55, R65 FD66 985753 MOVD R57, R53 FD69 985955 MOVD R59, R55 FD6C 986357 MOVD R63, R57 FD6F 986559 MOVD R65, R59 FD72 D271 DEC R71 ONE LESS ROUND FD74 8CF942 BR @F942 DO IT FD77 5208 aFD77: MOV %08, B INDEX FOR FINAL PERM FD79 72016E MOV %01, R6E FD7C B5 aFD7C: CLR A FINAL PERMUTATION FD7D 476E5502 BTJZ R6E, R55, FD83 FD81 2480 OR %80, A 59-4A MSB -> LSB FD83 476E5902 aFD83: BTJZ R6E, R59, FD89 BIT 0 -> BIT 64 FD87 2440 OR %40, A INPUT BLOCK (59-4A) SUBJECTED FD89 476E5402 aFD89: BTJZ R6E, R54, FD8F TO IP - 1 ACCORDING TO FD8D 2420 OR %20, A TABLE FIPS 46 PG 9 FD8F 476E5802 aFD8F: BTJZ R6E, R58, FD95 FD93 2410 OR %10, A FD95 476E5302 aFD95: BTJZ R6E, R53, FD9B FD99 2408 OR %08, A FD9B 476E5702 aFD9B: BTJZ R6E, R57, FDA1 FD9F 2404 OR %04, A FDA1 476E5202 aFDA1: BTJZ R6E, R52, FDA7 FDA5 2402 OR %02, A FDA7 476E5602 aFDA7: BTJZ R6E, R56, FDAD FDAB 2401 OR %01, A FDAD AB0049 aFDAD: STA @0049(B) ------> INDIRECT ADDRESS R4A - R51 FDB0 DE6E RL R6E FDB2 CAC8 DJNZ B, FD7C FDB4 88000063 MOVD %0000, R63 ZERO R62 - R69 FDB8 88000065 MOVD %0000, R65 FDBC 88000067 MOVD %0000, R67 FDC0 88000069 MOVD %0000, R69 FDC4 A20006 MOVP %00, P06 BPORT 0 FDC7 0A RETS FDC8 D56A aFDC8: CLR R6A FDCA D56C CLR R6C FDCC EB TRAP 20 ---> @F26F COMMAND FROM U19 FDCD 3272 MOV R72, B FDCF 5C03 MPY %03, B FDD1 ACF233 BR @F233(B) EXECUTE IT ***** NO ENTRY AT THIS POINT ***** FDD4 E0F2 JMP FDC8 FDD6 A2000B aFDD6: MOVP %00, P0B FDD9 E0FE aFDD9: JMP FDD9 ENDLESS LOOP FDDB DS 357 FF40 A6800003 aFF40: BTJOP %80, P00, FF47 FULL EXPANSION MODE? FF44 8CF30F BR @F30F FF47 8CAA00 aFF47: BR @AA00 GO OFF CHIP FF4A A6800003 aFF4A: BTJOP %80, P00, FF51 FF4E 8CF30F BR @F30F FF51 8CAA00 aFF51: BR @AA00 FF54 A6800003 aFF54: BTJOP %80, P00, FF5B FF58 8CF30F BR @F30F FF5B 8CAA00 aFF5B: BR @AA00 FF5E A7010403 aFF5E: BTJZP %01, P04, FF65 FF62 8CF326 BR @F326 ***** ZERO FIRST 128 INTERNAL MEMORY LOCATIONS ***** FF65 A24000 aFF65: MOVP %40, P00 FF68 C5 CLR B FF69 227F MOV %7F, A FF6B C5 CLR B FF6C 0D LDSP FF6D C8 aFF6D: PUSH B FF6E BAFD DJNZ A, FF6D FF70 A28000 MOVP %80, P00 FF73 8CAA00 BR @AA00 FF76 DS 90 FFD0 7800 DW > 7800 TRAP 23 FFD2 FF5E DW > FF5E TRAP 22 FFD4 F73D DW > F73D TRAP 21 FFD6 F26F DW > F26F TRAP 20 FFD8 F74F DW > F74F TRAP 19 FFDA F76B DW > F76B TRAP 18 FFDC F75A DW > F75A TRAP 17 FFDE F2FD DW > F2FD TRAP 16 FFE0 F2CB DW > F2CB TRAP 15 FFE2 F72B DW > F72B TRAP 14 FFE4 FFFF DW > FFFF TRAP 13 FFE6 8800 DW > 8800 TRAP 12 FFE8 FFFF DW > FFFF TRAP 11 FFEA FFFF DW > FFFF TRAP 10 FFEC FFFF DW > FFFF TRAP 9 FFEE FFFF DW > FFFF TRAP 8 FFF0 FFFF DW > FFFF TRAP 7 FFF2 FFFF DW > FFFF TRAP 6 FFF4 9800 DW > 9800 TRAP 5 FFF6 FF5E DW > FF5E TRAP 4 FFF8 FF54 DW > FF54 TRAP 3 FFFA FF4A DW > FF4A TRAP 2 FFFC FF40 DW > FF40 TRAP 1 FFFE FF5E DW > FF5E TRAP 0 Labels not found: 0000 @ F485; 0000 @ F489; 0000 @ F48D; 0000 @ F491; 0000 @ F4C5; 0000 @ F4C9; 0000 @ F53A; 0000 @ F5A1; 0000 @ F5A5; 0000 @ F5A9; 0000 @ F5AD; 0000 @ F626; 0000 @ F62A; 0000 @ F653; 0000 @ FDB4; 0000 @ FDB8; 0000 @ FDBC; 0000 @ FDC0; 0019 @ F6A0; 0042 @ F62E; 0049 @ FDAD; 004A @ F548; 0051 @ F936; 005A @ F54C; 007F @ F67C; 0503 @ F272; 7800 @ FFD0; 8800 @ FFE6; 9800 @ FFF4; AA00 @ FF47; AA00 @ FF51; AA00 @ FF5B; AA00 @ FF73; XREF: 0000 F2C7 F2F6 F310 F313 F316 F327 F333 F33C F455 F485 F489 F48D F491 F4C5 F4C9 F4E4 F51C F53A F5A1 F5A5 F5A9 F5AD F626 F62A F653 F659 F65C F662 F665 F66E F677 F68A F695 F6B7 F6BA F6E8 F719 F731 F743 FACD FAD0 FAD3 FAD6 FAD9 FADC FADF FAE2 FB13 FB3B FB63 FB8B FBB3 FBDB FC03 FC2B FDB4 FDB8 FDBC FDC0 FDC4 FDD6 F485 F489 F48D F491 F4C5 F4C9 F53A F5A1 F5A5 F5A9 F5AD F626 F62A F653 FDB4 FDB8 FDBC FDC0 0001 F276 F278 F27A F4EA F4F6 F522 F535 F5D8 F5E2 F65F F6BD F6C6 F6CE F6D8 F6E2 F6EB F6F1 F6F4 F6FD F70C F71C F7BD F7C1 F7EA F7EE F817 F81B F844 F848 F84D F875 F886 F8A2 F8BF F8CF F8FC F934 F943 F970 F982 F9BE FA33 FA3F FA5A FA7A FA8C FAEF FB2F FB3F FB7F FB8F FBCF FBDF FC1F FC7A FC86 FC98 FC9E FCA8 FCE1 FCF2 FCF8 FD04 FD1A FD49 FD53 FD5B FD79 FDAB FF5E 0002 F28C F2B8 F2D4 F2F2 F3BE F3C7 F3CD F3DD F3FB F6AB F6AB F6AE F6B0 F6C3 F6FA F7B7 F7BB F7E4 F7E8 F811 F815 F83E F842 F86F F87A F880 F89C F8B9 F8C9 F8F6 F92E F97C F9C4 F9CA F9D0 F9DF F9FD FA24 FA45 FA87 FB29 FB79 FBC9 FC19 FC80 FCA2 FCB9 FCBF FCD7 FCDB FD0A FD10 FD14 FD25 FD43 FD4D FDA5 0003 F000 F355 F3A0 F5C7 F67C F682 F684 F687 F68F F692 F699 F69B F6A0 F6A4 F6A4 FDCF 0004 F5BE F5ED F703 F7B1 F7B5 F7DE F7E2 F80B F80F F838 F83C F869 F871 F896 F8AD F8B3 F8C3 F8F0 F928 F961 F965 F98C F997 F99D F9A9 F9B3 F9DA F9F7 FA01 FA0C FA1E FA28 FA4F FA76 FB11 FB23 FB39 FB61 FB73 FB89 FBB1 FBC3 FBD9 FC01 FC13 FC29 FC9C FCC5 FCD1 FCD5 FCDD FCEC FCFE FD0E FD31 FD37 FD3D FD47 FD9F 0006 F4FE 0007 F357 F379 F392 F3A2 F3C1 F3CA F3E0 F3EC F401 F422 F481 F58F F598 0008 F2AF F2E5 F364 F370 F386 F39B F3AF F4A4 F4A9 F4BE F4CF F4D8 F50D F550 F55B F7AB F7AF F7D8 F7DC F805 F809 F832 F836 F863 F86B F890 F8A7 F8BD F8E0 F8EA F900 F922 F94F F95F F986 F9A3 F9AD F9D4 F9FB FA22 FA39 FA49 FA4B FA54 FA70 FA72 FB0B FB0D FB1D FB33 FB5B FB5D FB6D FB83 FBAB FBAD FBBD FBD3 FBFB FBFD FC0D FC23 FC8C FC92 FC96 FCA4 FCB3 FCCB FCCF FD08 FD16 FD2B FD41 FD4F FD77 FD99 0009 F438 FA82 000A F43D F474 000B F442 F477 F559 000C F375 F3E9 F41F F47E F503 000F F351 0010 F309 F32D F498 F4B2 F4F9 F572 F5B4 F5CD F7A5 F7A9 F7D2 F7D6 F7FF F803 F830 F85D F865 F88A F89E F8B7 F8DA F8E4 F8F8 F91C F93F F949 F955 F959 F96A F980 F988 F9A7 F9CE F9E5 F9EB F9F5 FA18 FA1C FA43 FA6A FA7D FB05 FB07 FB17 FB2D FB55 FB57 FB67 FB7D FBA5 FBA7 FBB7 FBCD FBF5 FBF7 FC07 FC1D FC90 FCC9 FD02 FD3B FD93 0013 F38F F3C4 F41C 0014 F296 0019 F6A0 F737 F6A0 001A F5BB F5EA 001B F349 001D F34C 001E F359 F37B F3A4 F591 001F F5D6 0020 F31F F322 F4F0 F76B F79F F7A3 F7CC F7D0 F7FD F82A F82C F857 F85F F884 F898 F8B1 F8D4 F8DE F8F2 F916 F953 F97A F991 F9A1 F9B8 F9C8 F9D6 F9EF F9F1 FA06 FA12 FA16 FA2D FA3D FA64 FAFF FB01 FB27 FB4F FB51 FB77 FB9F FBA1 FBC7 FBEF FBF1 FC17 FC8A FCC3 FCFC FD35 FD8D 0030 F32A 0039 F72B 003A F589 F59E F5B4 F5CD F5D4 003B F59C F5CB F5D8 F69B 003C F353 F373 F39E F3B8 F3D7 F40D F434 003D F3D1 003E F3B5 F3D4 F45C F531 F749 003F F556 0040 F447 F46B F4AE F52B F5E7 F799 F79D F7CA F7F7 F7F9 F824 F826 F851 F859 F87E F892 F8AB F8CB F8D8 F8EC F902 F910 F94D F95B F974 F976 F99B F9AF F9C2 F9E9 FA10 FA37 FA5E FA60 FA66 FA6C FAAC FAC8 FAF9 FAFB FB21 FB49 FB4B FB71 FB99 FB9B FBC1 FBE9 FBEB FC11 FC84 FCBD FCF6 FD2F FD87 FF65 0041 F44A F46E F52E F73D 0042 F361 F36A F383 F395 F3A9 F3BB F544 F62E F62E 0049 FDAD 004A F29D F35E F36D F380 F38C F398 F3AC F3DA F3E6 F438 F47B F4D1 F50F F528 F548 F56E F57F F58D F5B8 F602 F645 F725 F906 F548 004B F343 F349 F3EF F43D F474 F52B F595 F5A1 F61E F633 F90C 004C F442 F477 F52E F621 F636 F912 004D F346 F34C F3F2 F5A5 F624 F918 004E F34F F3D1 F4C5 F53A F540 F5C1 F91E FAEF FBD5 FBE5 FBEB FBF1 FBF7 FBFD FC07 FC0D FC13 FC19 FC1F 004F F343 F3D4 F3F5 F528 F5A9 F626 F924 FAE8 FB85 FB95 FB9B FBA1 FBA7 FBAD FBB7 FBBD FBC3 FBC9 FBCF FBDF 0050 F3D7 F4C9 F92A FB35 FB45 FB4B FB51 FB57 FB5D FB67 FB6D FB73 FB79 FB7F FB8F 0051 F346 F3F8 F4CD F531 F5AD F62A F930 FAEB FAF5 FAFB FB01 FB07 FB0D FB17 FB1D FB23 FB29 FB2F FB3F FC25 F936 0052 F3EF F3FE F404 F414 FDA1 0053 F3B5 F407 FAE8 FD60 FD66 FD95 0054 F3B8 F3F2 F40A FD89 0055 F6A9 FAEB FD63 FD69 FD7D 0056 F3F5 FDA7 0057 FD66 FD6C FD9B 0058 F3F8 FD8F 0059 F404 F410 F41A F44F FC76 FD69 FD6F FD83 005A F407 F412 F418 F452 F54C F55F F8FE F9E5 F9FD FA12 FA3F FA4B FA60 FAAF FAC8 FACD F54C 005B F40A F40D F8D1 F9F7 FA18 FA24 FA2D FA33 FA54 FAC1 FAC4 FAD0 005C F5FB F63E F8A4 F9DF F9F1 FA0C FA39 FA5A FA66 FABA FABD FAD3 005D F877 F9EB FA06 FA1E FA45 FA6C FA72 FAB3 FAB6 FAD6 005E F84A F955 F970 F991 F9A9 F9C4 FA93 FAAC FAD9 005F F81D F949 F976 F982 F997 F9B8 F9CA FAA5 FAA8 FADC 0060 F4DD F7F0 F943 F94F F988 F99D F9AF F9D0 FA9E FAA1 FADF 0061 F7C3 F95B F961 F96A F97C F9A3 F9BE F9D6 FA97 FA9A FAE2 0062 F2FD F44F F460 F4A1 F4BB F4D4 F4E7 F4F3 F512 F51F F770 F799 F7CC F7FF F832 F84D F853 F880 F8B3 FA78 FC2B FC2E FC35 FC92 FCD7 FD04 FD31 0063 F447 F452 F463 F46B F485 F776 F79F F7D2 F805 F838 F859 F886 F88C F8B9 FA51 FC03 FC37 FC3E FC9E FCC5 FD0A FD4F FD60 FD6C FDB4 0064 F44A F455 F466 F46E F77C F7A5 F7D8 F80B F83E F85F F892 F8BF F8C5 FA2A FBDB FC40 FC47 FC8C FCBF FCF8 FD3D 0065 F45A F460 F489 F782 F7AB F7DE F811 F844 F865 F898 F8CB F8E6 FA03 FBB3 FC49 FC50 FC86 FCA4 FCD1 FD25 FD63 FD6F FDB8 0066 F463 F788 F7B1 F7E4 F817 F820 F86B F89E F8D4 F8EC F9DC FB8B FC52 FC59 FC7A FCB9 FCFE FD2B 0067 F45C F466 F48D F78E F7B7 F7EA F7F3 F826 F871 F8A7 F8DA F8F2 F9B5 FB63 FC5B FC62 FC98 FCDD FD16 FD43 FDBC 0068 F794 F7BD F7C6 F7F9 F82C F87A F8AD F8E0 F8F8 F98E FB3B FC64 FC6B FC80 FCCB FCF2 FD37 0069 F491 F967 FB13 FC6D FC74 FCB3 FCEC FD10 FD49 FDC0 006A F4A7 F4C1 F662 F665 F796 FDC8 006B F2FD F300 F304 F35B F35E F36A F37D F380 F38C F395 F3A6 F3AC F3BB F3C4 F3CD F3DA F3E6 F3FB F414 F41C F425 F42D F47B F49D F4B7 F4D1 F503 F508 F50F F544 F548 F556 F55F F562 F565 F595 F5B8 F5C1 F5EA F5EF F5F2 F5FB F5FE F602 F608 F62E F63E F641 F645 F64B F64F F657 F65F F72B F72F F733 F735 F737 F73D F741 F745 F747 F749 F74F F753 F75A F764 F76E F772 F774 F778 F77A F77E F780 F784 F786 F78A F78C F790 F792 006C F65C F677 FDCA 006D F29D F2AB F2AD F361 F36D F383 F38F F398 F3A9 F3BE F3C7 F3DD F3E9 F3FE F41F F428 F42F F47E F4A1 F4BB F4D4 F512 F54C F593 F5BB F5C4 F653 F659 F66E F751 F755 F75E F762 F766 FC76 FCAB FCAE FCB0 FCE4 FCE7 FCE9 FD1D FD20 FD22 FD56 FD59 006E F2B3 F2BB F2CB F2CE F2E9 F2EC F422 F431 F902 F906 F90C F912 F918 F91E F924 F92A F930 F939 F93B FA7A FA91 FAE5 FD79 FD7D FD83 FD89 FD8F FD95 FD9B FDA1 FDA7 FDB0 006F F2A3 F2C4 0071 F272 F283 F587 F59E F75C F760 F93F FA7D FA82 FA87 FA8C FD5B FD72 0072 F26F F27E F28F F2A5 F498 F4B2 F4F9 F4FE FDCD 0073 F4F3 F5C4 0074 F4E7 0075 F51F 0077 F61E F633 0078 F621 F636 0079 F330 F472 F535 F5E2 F614 F618 007F F60C F67C FACB FF69 F67C 0080 F2D8 F434 F5DD F7C6 F7F3 F820 F853 F88C F8C5 F8E6 F90A F947 F96E F995 F9BC F9E3 FA0A FA31 FA58 FA97 FA9E FAA5 FAB3 FABA FAC1 FAF3 FAF5 FB1B FB35 FB43 FB45 FB6B FB85 FB93 FB95 FBBB FBD5 FBE3 FBE5 FC0B FC25 FC7E FCB7 FCF0 FD29 FD81 FF40 FF4A FF54 FF70 0095 F336 009F F4AB F4DA F4E1 F4ED F519 00AA F6B5 00B4 F003 00ED F5F9 F63C 00EF F306 00F7 F2C1 F2F9 F570 00FD F6B0 00FE F6C0 F6C9 F6D1 F6DB F6E5 F6EE F6F7 F700 F713 F71F 00FF F26F F27E F28F F2B3 F2CB F2E2 F2E9 F319 F31C F339 0100 F31F F32A F32D FF40 FF4A FF54 FF65 FF70 0103 F322 0104 F28A F2B6 F2D4 F2D8 F2F2 F579 F6DE FF5E 0106 F27C F2C7 F2DC F302 F310 F333 F6B7 F6CC F6D6 F6E0 F6E8 F6F1 F6FA F70A F711 F76B FDC4 0108 F2B1 F2C1 F2E7 F2F9 F306 F309 F313 F336 F4AB F4AE F4DA F4DD F4E1 F4E4 F4ED F4F0 F519 F51C F574 F6BA F6BD F6C0 F6C3 F6C6 F6C9 F6CE F6D1 F6D8 F6DB F6E2 F6E5 F6EB F6EE F6F4 F6F7 F6FD F700 F708 F70C F70F F713 F719 F71C F71F 0109 F319 F339 010A F294 F2A9 F2E0 F316 F6D4 010B F2E2 F2F6 F31C F33C FDD6 0110 F327 0503 F272 F272 7800 FFD0 8800 FFE6 9800 FFF4 AA00 FF47 FF51 FF5B FF73 F006 F66B F674 F008 F64F F64F FC71 F048 FC68 F088 FC5F F0C8 FC56 F108 FC4D F148 FC44 F188 FC3B F1C8 FC32 F208 F508 F508 F20F F49D F49D F217 F4B7 F4B7 F21F F2A0 F233 0000 FDD1 F236 0000 F239 0000 F23C 0000 F23F 0000 F242 0000 F245 0000 F248 0000 F24B 0000 F24E 0000 F251 0000 F254 0000 F257 0000 F25A 0000 F25D 0000 F260 0000 F263 0000 F266 0000 F269 0000 F26C 0000 F26F F002 FDCC FFD6 F272 F2C4 F278 F28C F28A F281 F285 F29D F298 F2A9 F292 F2AF F2A7 F2B6 F2BB F2C1 F2B8 F2CB F564 F56A F57B F5E9 F5F1 F727 FFE0 F2CE F2D4 F2D4 F2CE F2E0 F2D8 F2E5 F2DE F2EC F2F2 F2F2 F2EC F2FD F4B1 F4E0 F4EC F4F8 F524 FFDE F300 F30C F30F FF44 FF4E FF58 F326 FF62 F343 F233 F36A F236 F38C F239 F3B5 F23C F3E6 F23F F425 F431 F447 F43B F440 F47B F42B F445 F484 F434 F458 F469 F498 F242 F245 F263 F4A9 F49B F4C5 F4B5 F4D8 F4C3 F508 F501 F50C F506 F516 F4FC F519 F24B F528 F24E F540 F538 F544 F53E F556 F248 F55B F567 F562 F55D F56E F25D F579 F260 F57F F254 F584 F585 F5A1 F58B F5B4 F257 F5D0 F5B4 F5D3 F25A F5DF F5DB F5E9 F5E5 F5EF F5F4 F5F9 F251 F5FE F60A F60C F605 F611 F612 F61B F600 F643 F61E F266 F63C F269 F722 F641 F64D F64F F648 F657 F668 F682 F6A7 F6A4 F69E F6B5 F671 F67A F68C F697 F6B7 F6B3 F705 F717 F725 F26C F72B F59B F5CA F5D3 FFE2 F72F F73A F73D F471 F534 F5E0 F617 FFD4 F741 F74C F74F F366 F372 F388 F394 F39D F3B1 F3C3 F3E2 F3EE F403 F4A6 F4C0 F4D7 F515 F552 F59A F5C0 F5C9 F757 FFD8 F75A F3CC F483 F768 FFDC F76B F35D F37F F3A8 F3D0 F417 F50C F547 F632 FFDA F79F F799 F7A5 F79F F7AB F7A5 F7B1 F7AB F7B7 F7B1 F7BD F7B7 F7C3 F7BD F7CC F7C6 F7D2 F7CC F7D8 F7D2 F7DE F7D8 F7E4 F7DE F7EA F7E4 F7F0 F7EA F7F9 F7F3 F7FF F7F9 F805 F7FF F80B F805 F811 F80B F817 F811 F81D F817 F826 F820 F82C F826 F832 F82C F838 F832 F83E F838 F844 F83E F84A F844 F853 F84D F859 F853 F85F F859 F865 F85F F86B F865 F871 F86B F877 F871 F880 F87A F886 F880 F88C F886 F892 F88C F898 F892 F89E F898 F8A4 F89E F8AD F8A7 F8B3 F8AD F8B9 F8B3 F8BF F8B9 F8C5 F8BF F8CB F8C5 F8D1 F8CB F8DA F8D4 F8E0 F8DA F8E6 F8E0 F8EC F8E6 F8F2 F8EC F8F8 F8F2 F8FE F8F8 F905 F93D F90C F906 F912 F90C F918 F912 F91E F918 F924 F91E F92A F924 F930 F92A F936 F930 F942 FD74 F949 F943 F94F F949 F955 F94F F95B F955 F961 F95B F967 F961 F970 F96A F976 F970 F97C F976 F982 F97C F988 F982 F98E F988 F997 F991 F99D F997 F9A3 F99D F9A9 F9A3 F9AF F9A9 F9B5 F9AF F9BE F9B8 F9C4 F9BE F9CA F9C4 F9D0 F9CA F9D6 F9D0 F9DC F9D6 F9E5 F9DF F9EB F9E5 F9F1 F9EB F9F7 F9F1 F9FD F9F7 FA03 F9FD FA0C FA06 FA12 FA0C FA18 FA12 FA1E FA18 FA24 FA1E FA2A FA24 FA33 FA2D FA39 FA33 FA3F FA39 FA45 FA3F FA4B FA45 FA51 FA4B FA5A FA54 FA60 FA5A FA66 FA60 FA6C FA66 FA72 FA6C FA78 FA72 FA93 FA80 FA85 FA8A FA8F FAE5 FA9A FA95 FAA1 FA9C FAA8 FAA3 FAAF FAAA FAB6 FAB1 FABD FAB8 FAC4 FABF FACB FAC6 FAF5 FAEF FAFB FAF5 FB01 FAFB FB07 FB01 FB0D FB07 FB13 FB0D FB1D FB17 FB23 FB1D FB29 FB23 FB2F FB29 FB35 FB2F FB3B FB35 FB45 FB3F FB4B FB45 FB51 FB4B FB57 FB51 FB5D FB57 FB63 FB5D FB6D FB67 FB73 FB6D FB79 FB73 FB7F FB79 FB85 FB7F FB8B FB85 FB95 FB8F FB9B FB95 FBA1 FB9B FBA7 FBA1 FBAD FBA7 FBB3 FBAD FBBD FBB7 FBC3 FBBD FBC9 FBC3 FBCF FBC9 FBD5 FBCF FBDB FBD5 FBE5 FBDF FBEB FBE5 FBF1 FBEB FBF7 FBF1 FBFD FBF7 FC03 FBFD FC0D FC07 FC13 FC0D FC19 FC13 FC1F FC19 FC25 FC1F FC2B FC25 FC80 FC7A FC86 FC80 FC8C FC86 FC92 FC8C FC98 FC92 FC9E FC98 FCA4 FC9E FCAA FCA4 FCB9 FCB3 FCBF FCB9 FCC5 FCBF FCCB FCC5 FCD1 FCCB FCD7 FCD1 FCDD FCD7 FCE3 FCDD FCF2 FCEC FCF8 FCF2 FCFE FCF8 FD04 FCFE FD0A FD04 FD10 FD0A FD16 FD10 FD1C FD16 FD2B FD25 FD31 FD2B FD37 FD31 FD3D FD37 FD43 FD3D FD49 FD43 FD4F FD49 FD55 FD4F FD77 FD5E FD7C FDB2 FD83 FD7D FD89 FD83 FD8F FD89 FD95 FD8F FD9B FD95 FDA1 FD9B FDA7 FDA1 FDAD FDA7 FDC8 F340 F367 F389 F3B2 F3E3 F495 F516 F525 F553 F56B F576 F57C F5B1 F5D0 F5F6 F61B F639 F728 FDD4 FDD6 F287 F29A F2BE F2D1 F2EF FDD9 FDD9 FF40 FFFC FF47 FF40 FF4A FFFA FF51 FF4A FF54 FFF8 FF5B FF54 FF5E FFD2 FFF6 FFFE FF65 FF5E FF6D FF6E FFFF F540 F540 FFE4 FFE8 FFEA FFEC FFEE FFF0 FFF2  FD7C FDB2 FD83 FD7D FD89 FD83 FD8F FD89 FD95 FD8F FD9B FD95 FDA1 FD9B FDA7 FDA1 FDAD FDA7 FDC8 F340 F367 F389 F3B2 F3E3 F495 F516 F525 F553 F56B F576 F57C F5B1 F5D0 F5F6 F61B F639 F728 FDD4 FDD6 F287 F29A F2BE F2D1 F2EF FDD9 FDD9 FF40 FFFC FF47 FF40 FF4A FFFA FF51 FF4A FF54 FFF8 FF5B FF54 FF5E FFD2 FFF6 FFFE FF65 FF5E FF6D FF6E FFFF F540 F540 FFE4 FFE8 FFEA FFEC FFEE FFF0 FFF2  FD7C FDB2 FD83 FD7D FD89 FD83 FD8F FD89 FD95 FD8F FD9B FD95 FDA1 FD9B FDA7 FDA1 FDAD