;===============================================================================
; Disassm - IDA, compiled - MPLABX v4.20
; reassembled only for radiocat  
;===============================================================================
; 	
processor "16F74"
#include <P16F74.INC>
__config _CP_OFF & _BODEN_ON & _PWRTE_ON & _WDT_ON & _HS_OSC ; 0x3FF6
	
;===============================================================================
cblock 0x20
byte_20,byte_21,byte_22,byte_23,byte_24,byte_25,byte_26,byte_27,byte_28
byte_29,byte_2A,byte_2B,byte_2C,byte_2D,byte_2E,byte_2F
byte_30,byte_31,byte_32,byte_33,byte_34,byte_35,byte_36,byte_37,byte_38
byte_39,byte_3A,byte_3B,byte_3C,byte_3D,byte_3E,byte_3F
byte_40,byte_41,byte_42,byte_43,byte_44,byte_45,byte_46,byte_47,byte_48
byte_49,byte_4A,byte_4B,byte_4C,byte_4D,byte_4E,byte_4F
byte_50,byte_51,byte_52,byte_53
endc
;-------------------------------------------------------------------------------
cblock 0x60
byte_60,byte_61,byte_62,byte_63,byte_64,byte_65,byte_66,byte_67,byte_68
byte_69,byte_6A,byte_6B,byte_6C,byte_6D,byte_6E,byte_6F
byte_70,byte_71,byte_72,byte_73,byte_74,byte_75,byte_76,byte_77,byte_78
byte_79,byte_7A,byte_7B,byte_7C,byte_7D,byte_7E,byte_7F
endc
;-------------------------------------------------------------------------------	
cblock 0xA1
byte_A1,byte_A2,byte_A3,byte_A4,byte_A5,byte_A6,byte_A7,byte_A8
byte_A9,byte_AA,byte_AB,byte_AC,byte_AD
endc
;-------------------------------------------------------------------------------	
cblock 0xB0
byte_B0,byte_B1,byte_B2,byte_B3,byte_B4,byte_B5,byte_B6,byte_B7,byte_B8
byte_B9,byte_BA,byte_BB
endc
;===============================================================================
	
	     ORG 0x0
;============================================================================
RESET:
                b       RESET_0

        ORG 0x4
; =============== S U B R O U T I N E =======================================
ISR:
                movwf   byte_20
                swapf   STATUS, w
                bcf     STATUS, RP0
                movwf   byte_2F
                bcf     byte_2A, 0
                btfsc   PCLATH, 3
                 bsf     byte_2A, 0
                bcf     PCLATH, 3
                btfsc   PIR1, TMR2IF
                 b       loc_25
                btfsc   PIR1, CCP1IF
                 b       loc_14
                btfss   INTCON, INTF
                 b       loc_42
                bcf     INTCON, INTE
                b       loc_42
loc_14:                            
                bcf     PIR1, CCP1IF
                bsf     byte_28, 3
                movfw   byte_41
                bz      loc_42
                btfss   byte_72, 7
                 btfss   byte_72, 1
                 bsf     PORTD, RD3
                decf    byte_41, f
                movfw   byte_65
                bz      loc_42
                movfw   byte_41
                andlw   3
                skpnz
                 bcf     PORTD, RD3
                b       loc_42
loc_25:                            
                bcf     PIR1, TMR2IF
                btfsc   byte_2A, 7
                 btfsc   PORTA, RA4
                 b       loc_3A
                movfw   byte_6F
                btfss   byte_72, 0
                 bz      loc_3A
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_82A
                bcf     PCLATH, 3
; assume pclath = 0
                movwf   byte_4B
                bsf     byte_73, 5
                bsf     byte_73, 3
                movlw   0xD0
                iorwf   PORTB, f
                bsf     PORTD, RD2
                bsf     PORTC, RC2
                call    sub_8F
                movlw   0x96
                movwf   byte_46
loc_3A:                            
                tstf    byte_7D
                skpz
                 decf    byte_7D, f
                tstf    byte_4D
                skpz
                 decfsz  byte_4D, f
                 b       loc_42
                bcf     PORTC, RC5
loc_42:                            
                btfsc   byte_2A, 0
                 bsf     PCLATH, 3
; assume pclath = 8
                swapf   byte_2F, w
                movwf   STATUS
                swapf   byte_20, f
                swapf   byte_20, w
                retfie

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_49:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_AF2

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_4B:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_AF4

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_4D:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_C62

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_4F:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       sub_A9E

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_51:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_CB8
                bsf     PCLATH, 3
                b       loc_CCA
; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_55:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_CD7

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_57:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_D13

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_59:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_D5E

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_5B:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_D59

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_5D:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_D88

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_5F:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_DF9

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_61:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_E04

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_63:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_E08

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_65:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_E13

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_67:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_E17

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_69:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_E0F

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_6B:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_E85

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_6D:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       sub_E87

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_6F:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_A34

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_71:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_A37

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_73:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       sub_A39

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_75:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_9D8

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_77:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_A0B

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_79:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_9FB

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_7B:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_A03

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_7D:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_E7B

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_7F:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       sub_CA1

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_81:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_C9E

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_83:                            

                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_DA4

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_85:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_DA6

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_87:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_CFA

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_89:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_D08

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_8B:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_DDE

; assume pclath = 0
loc_8D:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_FF1

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_8F:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_A23

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_91:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       sub_A2A

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_93:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_DB4

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_95:                            
                movlw   0xF4
                b       loc_9E

; =============== S U B R O U T I N E =======================================
sub_97:                            
                movlw   0x92
                b       loc_9E

; =============== S U B R O U T I N E =======================================
sub_99:                            
                movlw   0x62
                b       loc_9E

; =============== S U B R O U T I N E =======================================
sub_9B:                            
                movlw   0x31
                b       loc_9E

; =============== S U B R O U T I N E =======================================
sub_9D:                            
                movlw   0x18
loc_9E:                            
                movwf   byte_23
                clrf    byte_24
loc_A0:                            
                call    sub_4B
loc_A1:                            
                b       loc_A2
loc_A2:                            
                b       loc_A3
loc_A3:                            
                decfsz  byte_24, f
                 b       loc_A1
                decfsz  byte_23, f
                 b       loc_A0
                return

; =============== S U B R O U T I N E =======================================
sub_A8:                            
                movlw   3
                b       loc_B8

; =============== S U B R O U T I N E =======================================
sub_AA:                            
                movlw   7
                b       loc_B8

; =============== S U B R O U T I N E =======================================
sub_AC:                            
                movlw   0x0B
                b       loc_B8

; =============== S U B R O U T I N E =======================================
sub_AE:                            
                movlw   0x0F
                b       loc_B8

; =============== S U B R O U T I N E =======================================
sub_B0:                            
                movlw   0x13
                b       loc_B8

; =============== S U B R O U T I N E =======================================
sub_B2:                            
                movlw   0x17
                b       loc_B8

; =============== S U B R O U T I N E =======================================
sub_B4:                            
                movfw   byte_43
                skpz
                 return
                movlw   0x27
loc_B8:                            
                bsf     byte_38, 1
                movwf   byte_43
                return

; =============== S U B R O U T I N E =======================================
sub_BB:                            
                movlw   2
                b       loc_C6

; =============== S U B R O U T I N E =======================================
sub_BD:                            
                movlw   4
                b       loc_C6

; =============== S U B R O U T I N E =======================================
sub_BF:                            
                movlw   6
                b       loc_C6

; =============== S U B R O U T I N E =======================================
sub_C1:                            
                movlw   8
                b       loc_C6

; =============== S U B R O U T I N E =======================================
sub_C3:                            
                movlw   0xA
                b       loc_C6

; =============== S U B R O U T I N E =======================================
sub_C5:                            
                movlw   0xC
loc_C6:                            
                movwf   byte_44
                bcf     PORTC, RC5
                return

; =============== S U B R O U T I N E =======================================
sub_C9:                            
                movlw   0
                b       loc_D4

; =============== S U B R O U T I N E =======================================
sub_CB:                            
                movlw   1
                b       loc_D4

; =============== S U B R O U T I N E =======================================
sub_CD:                            
                movlw   2
                b       loc_D4

; =============== S U B R O U T I N E =======================================
sub_CF:                            
                movlw   3
                b       loc_D4

; =============== S U B R O U T I N E =======================================
sub_D1:                            
                movlw   4
                b       loc_D4
loc_D3:                            
                movlw   5
loc_D4:                            
                bsf     PCLATH, 3
; assume pclath = 8
                b       sub_A39

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_D6:                            
                btfss   byte_73, 1
                 btfsc   byte_2A, 7
                 return
                btfss   byte_72, 4
                 return
                btfss   PORTB, RB1
                 b       loc_E1
                movfw   byte_6D
                sublw   1
                skpc
                 return
loc_E1:                            
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_8C9
                movfw   ADRES
                sublw   0x66
                bc      loc_A89
                movfw   ADRES
                sublw   0xCD
                skpnc
                 btfsc   byte_73, 2
                 return
                b       loc_A74

; assume pclath = 0
; =============== S U B R O U T I N E =======================================
sub_ED:                            
                movlw   0x10
                b       loc_10A

                movlw   0x20
                b       loc_10A
; =============== S U B R O U T I N E =======================================
sub_F1:                            
                movlw   0x30
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_F3:                            
                movlw   0x40
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_F5:                            
                movlw   0x50
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_F7:                            
                movlw   0x60
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_F9:                            
                movlw   0x70
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_FB:                            
                movlw   0x80
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_FD:                            
                movlw   0x90
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_FF:                            
                movlw   0xA0
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_101:                           
                movlw   0xB0
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_103:                           
                movlw   0xC0
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_105:                           
                movlw   0xD0
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_107:                           
                movlw   0xE0
                b       loc_10A

; =============== S U B R O U T I N E =======================================
sub_109:                           
                movlw   0xF0
loc_10A:                           
                movwf   byte_24
                movlw   0xF
                andwf   byte_3A, f
                movfw   byte_24
                iorwf   byte_3A, f
                return

; =============== S U B R O U T I N E =======================================
sub_110:                           
                movlw   0xF0
                bsf     STATUS, RP0
; assume bank = 1
                movwf   byte_AA
                bcf     STATUS, RP0
; assume bank = 0
                bsf     byte_2A, 3
                return

; =============== S U B R O U T I N E =======================================
sub_116:                           
                bsf     byte_28, 7
                bsf     byte_28, 5
                movlw   0x96
                movwf   byte_46
                movlw   0x78
                movwf   byte_47
                movlw   0x18
                movwf   byte_48
                bsf     STATUS, RP0
; assume bank = 1
                movwf   byte_AB
                bcf     STATUS, RP0
; assume bank = 0
                call    sub_C9
                return

; =============== S U B R O U T I N E =======================================
sub_123:                           
                call    sub_AA
                call    sub_CB
                return

; =============== S U B R O U T I N E =======================================
sub_126:                           
                call    sub_AC
                call    sub_CD
                return

; =============== S U B R O U T I N E =======================================
sub_129:                           
                movwf   byte_25
loc_12A:                           
                call    sub_6D
                btfss   byte_29, 2
                 b       loc_130
                call    sub_5F
                bz      loc_4E7
loc_130:                           
                btfsc   byte_72, 7
                 b       loc_4E9
                btfss   byte_72, 4
                 b       loc_136
                btfsc   byte_2C, 2
                 b       loc_4E9
loc_136:                           
                decfsz  byte_25, f
                 b       loc_12A
                return
RESET_0:                                
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_F34
; assume pclath = 0
loc_13B:                           
                bsf     INTCON, GIE
                call    sub_C5
                call    sub_AC
loc_13E:                           
                call    sub_95
                movfw   byte_44
                bnz     loc_13E
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_F6F
; assume pclath = 0
loc_144:                           
                call    sub_F7
                call    sub_65
                movlw   0x14
                movwf   byte_3F
                btfss   byte_72, 2
                 bsf     byte_29, 3
                call    sub_8F
loc_14B:                           
                call    sub_8B
loc_14C:                           
                call    sub_6D
                btfsc   byte_29, 2
                 b       loc_2FA
                call    sub_D6
                btfsc   PORTB, RB6
                 bsf     PORTC, RC5
                btfss   byte_73, 0
                 b       loc_157
                bsf     PORTC, RC2
                call    sub_91
                bsf     PORTC, RC5
loc_157:                           
                btfsc   byte_2B, 6
                 b       loc_34F
                btfss   byte_2B, 0
                 b       loc_15D
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_FC2
; assume pclath = 0
loc_15D:                           
                btfss   byte_72, 4
                 btfss   byte_72, 7
                 b       loc_162
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_AE5
; assume pclath = 0
loc_162:                           
                btfss   byte_73, 5
                 btfsc   byte_73, 7
                 b       loc_166
                b       loc_173
loc_166:                           
                call    sub_51
                bz      loc_16E
                btfsc   PORTE, RE1
                 bcf     byte_2B, 1
                movfw   byte_4B
                bnz     loc_193
loc_16E:                           
                bcf     byte_73, 5
                bcf     byte_73, 7
                call    sub_85
                call    sub_4D
                call    sub_65
loc_173:                           
                btfss   byte_28, 4
                 b       loc_193
                call    sub_51
                bz      loc_18B
                btfsc   byte_72, 0
                 b       loc_4E9
                movfw   byte_4B
                bz      loc_4FF
                btfsc   byte_2C, 6
                 b       loc_166
                xorlw   2
                bnz     loc_166
                bsf     byte_2C, 6
                call    sub_AE
                call    sub_75
                call    sub_65
                call    sub_109
                bsf     byte_39, 3
                call    sub_4D
                call    sub_69
                b       loc_166
loc_18B:                           
                bcf     byte_2B, 1
                btfsc   byte_2D, 0
                 b       loc_4E9
                call    sub_A8
                call    sub_85
                call    sub_9B
                btfss   PORTA, RA4
                 b       loc_4E9
loc_193:                           
                btfsc   INTCON, INTF
                 b       loc_61F
                call    sub_6D
                btfsc   byte_29, 2
                 b       loc_2FA
                call    sub_D6
                btfsc   PORTA, RA4
                 b       loc_19E
                btfss   byte_29, 6
                 call    sub_87
                b       loc_1AD
loc_19E:                           
                btfsc   INTCON, INTF
                 b       loc_61F
                call    sub_6D
                btfsc   byte_29, 2
                 b       loc_2FA
                call    sub_D6
                call    sub_5D
                btfss   byte_29, 4
                 btfss   PORTA, RA1
                 b       loc_1C5
                btfss   byte_29, 6
                 b       loc_1BD
                call    sub_89
                bc      loc_1C5
loc_1AD:                           
                btfss   byte_2A, 7
                 b       loc_1BD
                decfsz  byte_7A, f
                 b       loc_1D8
                btfsc   byte_72, 4
                 b       loc_1B5
                bcf     PORTC, RC2
                call    sub_8F
loc_1B5:                           
                btfss   byte_2A, 7
                 b       loc_1BD
                bcf     byte_2A, 7
                btfsc   PORTE, RE1
                 bcf     byte_2B, 1
                call    sub_85
                call    sub_4D
                call    sub_65
loc_1BD:                           
                btfsc   PORTE, RE1
                 bcf     byte_2B, 1
                bcf     byte_2A, 7
                movlw   4
                movwf   byte_7A
                btfsc   byte_28, 4
                 b       loc_3F5
                b       loc_1CC
loc_1C5:                           
                btfsc   byte_2A, 7
                 b       loc_1C9
                decfsz  byte_7A, f
                 b       loc_1D8
loc_1C9:                           
                bsf     byte_2A, 7
                movlw   2
                movwf   byte_7A
loc_1CC:                           
                btfsc   byte_73, 7
                 btfss   byte_2B, 1
                 b       loc_1D8
                bcf     byte_73, 7
                movlw   0x14
                movwf   byte_4F
                bcf     byte_2A, 5
                btfsc   byte_73, 5
                 b       loc_1D8
                call    sub_85
                call    sub_105
                b       loc_614
loc_1D8:                           
                btfsc   INTCON, INTF
                 b       loc_61F
                call    sub_6D
                btfsc   byte_29, 2
                 b       loc_2FA
                call    sub_D6
                btfsc   byte_28, 2
                 b       loc_2D1
                tstf    byte_77
                skpnz
                 btfsc   byte_72, 4
                 b       loc_1E8
loc_1E4:                           
                bcf     byte_2C, 2
                bcf     byte_2C, 3
                bcf     byte_2A, 1
                b       loc_1FB
loc_1E8:                           
                call    sub_4B
                btfss   byte_2C, 3
                 b       loc_1F0
                bcf     byte_2C, 3
                call    sub_C9
                call    sub_ED
                call    sub_4D
                call    sub_65
loc_1F0:                           
                btfss   byte_72, 4
                 b       loc_1E4
                bsf     PORTC, RC2
                btfss   PORTB, RB6
                 call    sub_91
                btfss   PORTA, RA4
                 b       loc_1F9
                btfss   PORTB, RB6
                 bsf     byte_2C, 2
loc_1F9:                           
                btfsc   byte_2C, 2
                 b       loc_298
loc_1FB:                           
                btfss   byte_29, 7
                 b       loc_204
                bcf     byte_29, 7
                bsf     byte_39, 6
                bsf     byte_39, 4
                bsf     byte_39, 3
                call    sub_AC
                call    sub_F9
                b       loc_614
loc_204:                           
                btfsc   byte_28, 4
                 b       loc_14C
                call    sub_4B
                btfss   byte_72, 0
                 btfsc   byte_72, 6
                 b       loc_236
                btfsc   byte_73, 3
                 b       loc_210
                btfsc   PORTB, RB6
                 b       loc_236
                btfsc   PORTA, RA4
                 b       loc_222
loc_210:                           
                btfsc   byte_2C, 4
                 btfss   byte_28, 1
                 b       loc_217
                bcf     byte_2C, 4
                bcf     byte_28, 1
                clrf    byte_78
                clrf    byte_43
loc_217:                           
                btfss   byte_72, 4
                 btfss   byte_2A, 2
                 b       loc_236
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_DE4
                movfw   byte_6A
                bz      loc_A36
                clrf    byte_4F
                bsf     byte_2A, 5
                b       loc_B1E
; assume pclath = 0
loc_222:                           
                btfss   PORTB, RB1
                 b       loc_228
                movfw   byte_6D
                sublw   1
                skpnc
                 bcf     PORTB, RB1
loc_228:                           
                btfsc   byte_2A, 2
                 b       loc_236
                bcf     byte_73, 6
                bcf     byte_2B, 1
                bcf     byte_28, 0
                movfw   byte_6A
                skpz
                 btfsc   PORTE, RE1
                 b       loc_236
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_800
                bcf     PCLATH, 3
; assume pclath = 0
                movwf   byte_4F
                bsf     byte_2A, 5
loc_236:                           
                bcf     byte_73, 3
                bcf     byte_2A, 2
                btfsc   PORTA, RA4
                 btfsc   PORTB, RB6
                 b       loc_23D
                bsf     byte_2A, 2
                clrf    byte_7E
loc_23D:                           
                btfss   byte_28, 0
                 b       loc_243
                bcf     byte_28, 0
                call    sub_A8
                movlw   0
                call    sub_6F
loc_243:                           
                btfss   byte_72, 4
                 reset
                b       loc_252
                movlw   14
                movwf   byte_3F
                btfsc   PORTE, RE1
                 b       loc_24E
                btfsc   PORTC, RC3
                 btfsc   byte_2D, 0
                 b       loc_24E
                b       loc_271
loc_24E:                           
                tstf    byte_44
                bz      loc_26C
                b       loc_271
loc_252:                           
                btfsc   byte_2A, 7
                 b       loc_271
                movfw   byte_3F
                bnz     loc_271
                movlw   14
                movwf   byte_3F
                btfsc   byte_72, 3
                 call    sub_55
                call    sub_4B
                btfss   byte_28, 5
                 btfsc   byte_28, 6
                 b       loc_3EE
                btfsc   byte_72, 0
                 b       loc_270
                btfsc   byte_28, 7
                 b       loc_268
                btfsc   byte_72, 3
                 b       loc_26C
                btfsc   byte_72, 4
                 call    sub_BB
                b       loc_271
loc_268:                           
                btfsc   byte_72, 3
                 b       loc_26E
                call    sub_BD
                b       loc_271
loc_26C:                           
                call    sub_BF
                b       loc_271
loc_26E:                           
                call    sub_C1
                b       loc_271
loc_270:                           
                call    sub_C3
loc_271:                           
                btfsc   INTCON, INTF
                 b       loc_61F
                b       loc_14C
                movfw   byte_4A
                bnz     loc_283
                decfsz  byte_42, f
                 b       loc_27A
                b       loc_291
loc_27A:                           
                call    sub_B2
                movlw   0x0E
                call    sub_71
                bsf     byte_39, 0
                bsf     byte_38, 1
                bsf     byte_39, 3
                call    sub_FB
                call    sub_4D
                call    sub_65
loc_283:                           
                movfw   byte_4A
                sublw   5
                movlw   5
                skpnc
                 movwf   byte_4A
                b       loc_1FB
                movfw   byte_4A
                sublw   0x5
                bnc     loc_2CF
                movlw   0x19
                nop
                decfsz  byte_42, f
                 b       loc_293
loc_291:                           
                bsf     byte_73, 1
                b       loc_1FB
loc_293:                           
                bsf     byte_2A, 1
                call    sub_FD
                movlw   0x98
                movwf   byte_41
                b       loc_2AF
loc_298:                           
                btfss   byte_72, 6
                 b       loc_2A5
                movfw   byte_27
                bnz     loc_1FB
                btfsc   byte_2B, 5
                 b       loc_2A5
                movlw   0x64
                movwf   byte_27
                bsf     byte_2B, 5
                call    sub_AE
                call    sub_CF
                b       loc_1FB
loc_2A5:                           
                movlw   0xF
                andwf   byte_2D, f
                swapf   byte_2D, w
                iorwf   byte_2D, f
                bsf     byte_2C, 1
                movlw   0x98
                movwf   byte_41
loc_2AC:                           
                call    sub_83
                call    sub_FF
                bsf     byte_39, 4
loc_2AF:                           
                movfw   byte_6D
                sublw   1
                skpnc
                 bsf     PORTB, RB1
                bcf     byte_2C, 2
                bsf     byte_39, 3
                bsf     byte_38, 1
                call    sub_4D
                call    sub_65
loc_2B8:                           
                call    sub_B4
                bsf     byte_39, 3
                bsf     byte_39, 4
                bsf     byte_38, 1
                call    sub_FF
                call    sub_4D
                call    sub_67
                btfss   byte_29, 2
                 b       loc_2C4
                call    sub_61
                bz      loc_2CE
loc_2C4:                           
                btfss   byte_72, 7
                 b       loc_2C8
                btfsc   byte_28, 2
                 b       loc_2D1
loc_2C8:                           
                btfsc   INTCON, INTF
                 b       loc_61E
                movfw   byte_41
                bnz     loc_2B8
                b       loc_2CF
loc_2CE:                           
                bsf     byte_2C, 0
loc_2CF:                           
                movlw   0x19
                movwf   byte_4A
loc_2D1:                           
                clrf    byte_41
                bcf     PORTD, RD3
                movfw   byte_6D
                sublw   1
                skpnc
                 bcf     PORTB, RB1
                bcf     byte_2C, 2
                bcf     byte_2C, 3
                btfsc   byte_28, 2
                 b       loc_2F0
                btfss   byte_2C, 0
                 b       loc_1FB
                bsf     byte_2B, 0
                bcf     byte_2C, 0
                bcf     byte_2A, 1
                bcf     byte_2C, 1
                bcf     byte_72, 7
                bcf     byte_28, 1
                bcf     byte_2A, 6
                call    sub_123
                call    sub_105
                call    sub_7D
                call    sub_4D
                call    sub_69
                btfsc   PORTA, RA4
                 btfsc   PORTB, RB6
                 b       loc_1FB
                bcf     byte_72, 4
                movlw   0x1E
                movwf   byte_77
                b       loc_1FB
loc_2F0:                           
                bcf     byte_2C, 4
                bcf     byte_28, 2
                bcf     byte_28, 1
                clrf    byte_78
                bcf     byte_72, 7
                bsf     byte_2B, 0
                call    sub_126
                call    sub_105
                call    sub_4D
                call    sub_65
loc_2FA:                           
                bcf     byte_29, 2
                call    sub_4B
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_842
                bnz     loc_94C
                bcf     byte_2A, 5
                movlw   0x20
                xorwf   byte_37, w
                bnz     loc_BAC
                bcf     byte_73, 6
                bcf     byte_2B, 3
                clrf    byte_7E
                btfss   byte_73, 0
                 b       loc_B10
                bcf     byte_73, 0
                bcf     PORTC, RC2
                call    sub_88F
                call    sub_8AA
                call    sub_8EF
                b       loc_E12
                movfw   byte_77
                bnz     loc_B18
                btfss   byte_72, 4
                 btfsc   byte_28, 1
                 b       loc_B18
                btfss   byte_72, 5
                 b       loc_B56
                btfsc   PORTE, RE1
                 b       loc_B1E
                movlw   0x96
                btfss   PORTB, RB6
                 btfss   PORTA, RA4
                 movwf   byte_4F
                bcf     PORTB, RB1
                clrf    byte_76
                bcf     byte_2B, 6
                bcf     PORTD, RD7
                bcf     byte_72, 5
                btfsc   byte_2A, 5
                 b       loc_B38
                call    loc_877
                btfsc   byte_72, 0
                 b       loc_B30
                btfss   PORTB, RB6
                 btfss   PORTA, RA4
                 b       loc_B2E
                call    sub_8EF
                call    loc_849
                b       loc_B3B
                btfsc   byte_2C, 1
                 b       loc_B35
                clrf    byte_4E
                call    sub_8AA
                call    loc_8CB
                call    sub_8EF
                b       loc_B38
                call    loc_8AE
                call    loc_8CF
                call    loc_8FF
; assume pclath = 0
loc_338:                           
                call    sub_49
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_C48
                movfw   byte_68
                xorlw   2
                skpnz
                 bsf     byte_73, 4
                movfw   byte_68
                bsf     PCLATH, 3
                call    sub_830
                bcf     PCLATH, 3
; assume pclath = 0
                movwf   byte_40
                bsf     PORTD, RD6
                btfss   byte_2B, 3
                 b       loc_34C
                bsf     STATUS, RP0
; assume bank = 1
                movwf   byte_A2
                bcf     STATUS, RP0
; assume bank = 0
                bsf     PORTD, RD5
                bcf     byte_2B, 3
loc_34C:                           
                btfsc   byte_2A, 5
                 b       loc_3A9
                b       loc_617
loc_34F:                           
                btfss   byte_2A, 5
                 btfss   PORTA, RA4
                 b       loc_357
                btfsc   PORTB, RB6
                 b       loc_357
                bcf     byte_2B, 6
                b       loc_14C
loc_356:                           
                bcf     byte_2B, 6
loc_357:                           
                clrf    byte_4F
                bcf     PORTD, RD6
                bcf     byte_73, 4
                movfw   byte_69
                bz      loc_364
                xorlw   2
                bz      loc_364
                bsf     STATUS, RP0
; assume bank = 1
                clrf    byte_A2
                bcf     STATUS, RP0
; assume bank = 0
                bcf     PORTD, RD5
loc_364:                           
                bcf     STATUS, RP0
                bcf     PORTB, RB1
                clrf    byte_76
                bsf     byte_72, 5
                btfsc   byte_2A, 5
                 b       loc_395
                btfsc   byte_72, 0
                 b       loc_38E
                btfsc   PORTA, RA4
                 btfsc   PORTB, RB6
                 b       loc_372
                call    sub_ED
                call    sub_49
                b       loc_39A
loc_372:                           
                movfw   byte_6C
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_80C
                bcf     PCLATH, 3
; assume pclath = 0
                btfss   byte_2B, 6
                 b       loc_37A
                btfss   byte_73, 6
                 movlw   1
loc_37A:                           
                movwf   byte_77
                bsf     PORTC, RC2
                btfss   PORTB, RB6
                 call    sub_91
                movfw   byte_6C
                skpz
                 bsf     byte_2A, 6
                bcf     byte_2D, 3
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_CA6
                bcf     PCLATH, 3
; assume pclath = 0
                bz      loc_38E
                call    sub_AE
                bcf     byte_72, 1
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_C54
                bcf     PCLATH, 3
; assume pclath = 0
                bcf     byte_2B, 6
                b       loc_590
loc_38E:                           
                btfss   byte_73, 5
                 btfss   byte_73, 7
                 b       loc_392
                call    sub_85
loc_392:                           
                call    sub_A8
                call    sub_C9
                call    sub_ED
loc_395:                           
                call    sub_49
                btfsc   byte_2A, 5
                 b       loc_39F
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_C54
; assume pclath = 0
loc_39A:                           
                btfss   byte_73, 6
                 b       loc_39F
                movfw   byte_6B
                xorlw   1
                skpz
loc_39F:                           
                 call    sub_7F
                btfsc   byte_2A, 5
                 b       loc_3A9
                btfss   byte_2B, 6
                 b       loc_617
                call    sub_4D
                bcf     byte_73, 6
                bcf     byte_2B, 3
                bcf     byte_2B, 6
                b       loc_615
loc_3A9:                           
                bcf     byte_2B, 6
                bcf     byte_2A, 5
                b       loc_236
                movlw   0x21
                xorwf   byte_37, w
                bnz     loc_3C7
                movlw   1
                xorwf   byte_69, w
                bz      loc_3C1
                movlw   3
                xorwf   byte_69, w
                bz      loc_3C1
                call    sub_126
                call    sub_49
                movlw   4
                bsf     STATUS, RP0
; assume bank = 1
                movwf   byte_A2
                bcf     STATUS, RP0
; assume bank = 0
                bsf     PORTD, RD5
                call    sub_F1
                b       loc_618
loc_3C1:                           
                bcf     byte_72, 5
                call    sub_77
                call    sub_123
                call    sub_49
                bsf     byte_2B, 3
                b       loc_338
loc_3C7:                           
                movlw   0xFE
                andwf   byte_37, w
                xorlw   0x40
                btfss   byte_72, 0
                 bnz     loc_507
                btfss   byte_73, 5
                 btfsc   byte_28, 4
                 b       loc_4E7
                btfsc   byte_73, 7
                 b       loc_4E7
                btfsc   byte_2A, 7
                 b       loc_3D7
                bcf     byte_28, 5
                bcf     byte_28, 6
                b       loc_3F0
loc_3D7:                           
                btfsc   PORTD, RD0
                 btfsc   PORTC, RC0
                 b       loc_507
                movlw   0xD0
                iorwf   PORTB, f
                bsf     PORTD, RD2
                bsf     PORTC, RC2
                bcf     byte_2A, 2
                call    sub_7D
                movlw   1
                movwf   byte_4B
                bsf     byte_73, 7
                bsf     byte_2A, 5
                bcf     byte_2B, 1
                movfw   byte_6F
                bz      loc_4DE
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_82A
                bcf     PCLATH, 3
; assume pclath = 0
                movwf   byte_4B
                bsf     byte_73, 5
                b       loc_4DE
loc_3EE:                           
                btfsc   byte_2A, 7
                 b       loc_4FC
loc_3F0:                           
                bcf     byte_2B, 2
                btfsc   PORTD, RD0
                 btfsc   byte_2B, 1
                 b       loc_3F8
                b       loc_4E9
loc_3F5:                           
                btfsc   byte_2B, 2
                 b       loc_3FA
                bsf     byte_2B, 2
loc_3F8:                           
                movlw   4
                movwf   byte_4C
loc_3FA:                           
                movfw   byte_66
                sublw   1
                btfss   PORTE, RE1
                 bc      loc_403
                movlw   1
                movwf   byte_77
                call    sub_49
                call    sub_81
loc_403:                           
                call    sub_8B
                btfsc   byte_2A, 4
                 btfsc   byte_72, 2
                 b       loc_40A
                call    sub_126
                call    sub_105
                b       loc_619
loc_40A:                           
                clrf    byte_45
                movlw   0xF
                andwf   PORTB, f
                bsf     PORTC, RC2
                call    sub_8F
                bcf     byte_2A, 7
                call    sub_51
                skpz
                 btfsc   byte_72, 0
                 b       loc_4E9
                bsf     byte_39, 2
                call    sub_126
                call    sub_4D
                btfss   byte_28, 5
                 btfsc   byte_28, 6
                 b       loc_424
                btfsc   byte_2B, 2
                 b       loc_424
                call    sub_FB
                call    sub_67
                btfss   byte_29, 2
                 b       loc_427
                call    sub_5F
                bz      loc_4E7
                b       loc_427
loc_424:                           
                bsf     byte_39, 3
                call    sub_F5
                call    sub_65
loc_427:                           
                call    sub_79
                call    sub_69
                btfss   byte_29, 2
                 b       loc_42E
                call    sub_5F
                bz      loc_4E7
loc_42E:                           
                clrf    byte_44
                bsf     PORTD, RD2
                bsf     PORTC, RC5
                movfw   byte_4B
                bnz     loc_44C
                call    sub_51
                bz      loc_4E9
                bsf     byte_28, 4
                movlw   0xD0
                iorwf   PORTB, f
                call    sub_49
                movfw   byte_67
                bz      loc_44C
                movlw   0x23
                movwf   byte_27
loc_440:                           
                call    sub_4B
                call    sub_51
                bz      loc_4E9
                movlw   1
                call    sub_129
                movfw   byte_27
                bnz     loc_440
                b       loc_44C
loc_44A:                           
                movlw   0xF
                andwf   PORTB, f
loc_44C:                           
                bsf     PORTC, RC2
                call    sub_8F
                bcf     byte_2A, 7
                movlw   7
                andwf   byte_4C, f
                bsf     byte_39, 2
                call    sub_4D
                call    sub_67
                btfss   byte_29, 2
                 b       loc_459
                call    sub_5F
                bz      loc_4E7
loc_459:                           
                btfss   PORTB, RB7
                 btfsc   PORTB, RB6
                 b       loc_465
                movlw   0xA
                call    sub_129
                call    sub_51
                bz      loc_4E9
                movlw   0xD0
                iorwf   PORTB, f
                movlw   0x19
                call    sub_129
loc_465:                           
                call    sub_87
                movfw   byte_63
                skpz
                 bcf     byte_29, 6
                call    sub_49
                movlw   3
                movwf   byte_4A
                movfw   byte_62
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_81E
                bcf     PCLATH, 3
; assume pclath = 0
                movwf   byte_27
                movfw   byte_45
                addwf   byte_27, f
                addwf   byte_4A, f
                call    sub_51
                bz      loc_4E9
                bsf     PORTC, RC5
                movfw   PORTB
                movwf   byte_24
                bcf     byte_24, 7
                movfw   byte_66
                bz      loc_481
                xorlw   2
                skpz
                 bcf     byte_24, 4
loc_481:                           
                bsf     byte_24, 5
                movfw   byte_24
                movwf   PORTB
                call    sub_9B
                btfss   byte_2A, 4
                 bcf     byte_72, 2
loc_487:                           
                call    sub_4B
                btfss   byte_2A, 4
                 b       loc_48C
                call    sub_5B
                b       loc_491
loc_48C:                           
                btfss   byte_72, 2
                 call    sub_57
                btfsc   byte_29, 3
                 b       loc_498
                call    sub_59
loc_491:                           
                btfss   byte_29, 4
                 b       loc_498
                tstf    byte_4A
                bnz     loc_49B
                call    sub_9B
                b       loc_4A4
loc_498:                           
                btfss   byte_2A, 4
                 btfsc   PORTA, RA1
                 b       loc_4A0
loc_49B:                           
                call    sub_4B
                tstf    byte_4A
                bnz     loc_49B
                b       loc_4A4
loc_4A0:                           
                movfw   byte_27
                bnz     loc_487
                bcf     PORTC, RC5
loc_4A4:                           
                movfw   PORTB
                andlw   0xDF
                iorlw   0xD0
                movwf   PORTB
                btfss   byte_2A, 4
                 bcf     byte_72, 2
                movlw   0x14
                call    sub_129
                movlw   3
                movwf   byte_25
loc_4AE:                           
                btfsc   byte_29, 3
                 b       loc_4B4
                call    sub_5D
                btfss   byte_29, 4
                 b       loc_4CD
                b       loc_4BD
loc_4B4:                           
                btfss   byte_29, 6
                 b       loc_4BA
                call    sub_89
                bc      loc_4BD
                bcf     byte_29, 6
loc_4BA:                           
                call    sub_99
                btfsc   PORTA, RA1
                 b       loc_4CD
loc_4BD:                           
                call    sub_4B
                call    sub_6D
                btfss   byte_29, 2
                 b       loc_4C4
                call    sub_5F
                bz      loc_4E7
loc_4C4:                           
                btfsc   byte_72, 7
                 b       loc_4E9
                btfss   byte_72, 4
                 b       loc_4CA
                btfsc   byte_2C, 2
                 b       loc_4E9
loc_4CA:                           
                decfsz  byte_25, f
                 b       loc_4AE
                b       loc_4D1
loc_4CD:                           
                incf    byte_45, f
                decfsz  byte_4C, f
                 b       loc_44A
                b       loc_4E9
loc_4D1:                           
                bsf     byte_28, 4
                btfsc   byte_28, 6
                 call    sub_110
                movfw   byte_60
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_812
                bcf     PCLATH, 3
; assume pclath = 0
                movwf   byte_4B
                bsf     byte_2A, 7
                bcf     byte_2C, 6
                bcf     byte_28, 5
                bcf     byte_28, 6
                call    sub_AC
loc_4DE:                           
                movlw   0x96
                movwf   byte_46
                call    sub_101
                bsf     byte_39, 3
                bsf     byte_39, 2
                call    sub_4D
                call    sub_67
                call    sub_75
                b       loc_619
loc_4E7:                           
                bsf     byte_2B, 4
                btfss   byte_2B, 4
loc_4E9:                           
                 bcf     byte_2B, 4
                bcf     byte_28, 5
                call    sub_83
                btfsc   byte_28, 6
                 call    sub_110
                bcf     byte_28, 6
                call    sub_AE
                call    sub_CF
                btfss   byte_2B, 4
                 b       loc_4F6
                bcf     byte_2B, 4
                call    sub_105
                b       loc_617
loc_4F6:                           
                call    sub_F3
                bsf     byte_39, 2
                call    sub_4D
                call    sub_65
                call    sub_7B
                b       loc_619
loc_4FC:                           
                bcf     byte_28, 5
                bcf     byte_28, 6
                b       loc_252
loc_4FF:                           
                call    sub_83
                call    sub_AE
                call    sub_CF
                call    sub_F3
                call    sub_4D
                call    sub_65
                call    sub_75
                b       loc_619
loc_507:                           
                movlw   80
                xorwf   byte_37, w
                bnz     loc_513
                call    sub_AC
                call    sub_7D
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_8D9
                call    loc_869
                call    loc_8F7
                bsf     byte_39, 3
                b       loc_E17
; assume pclath = 0
loc_513:                           
                movlw   0x81
                xorwf   byte_37, w
                bnz     loc_52C
                bsf     STATUS, RP0
; assume bank = 1
                movfw   byte_A3
                bcf     STATUS, RP0
; assume bank = 0
                bnz     loc_14C
                call    sub_AC
                call    sub_49
                bsf     PORTC, RC7
                movlw   4
                bsf     STATUS, RP0
; assume bank = 1
                movwf   byte_A3
                bcf     STATUS, RP0
; assume bank = 0
                call    sub_95
                call    sub_97
                call    sub_F1
                btfsc   byte_72, 4
                 bsf     byte_73, 1
                movlw   0x96
                movwf   byte_4E
                bcf     byte_2C, 2
                b       loc_618
loc_52C:                           
                movlw   0x10
                xorwf   byte_37, w
                skpnz
                 btfsc   byte_72, 0
                 b       loc_545
                btfsc   byte_72, 4
                 b       loc_536
                movfw   byte_77
                bz      loc_543
loc_536:                           
                btfsc   byte_72, 1
                 b       loc_53D
                bsf     byte_72, 1
                bsf     byte_38, 4
                call    sub_A8
                call    sub_103
                b       loc_612
loc_53D:                           
                bcf     byte_72, 1
                bcf     byte_38, 4
                call    sub_A8
                call    sub_C9
                call    sub_FF
                b       loc_612
loc_543:                           
                bsf     byte_72, 1
                b       loc_356
loc_545:                           
                movlw   0x11
                xorwf   byte_37, w
                bnz     loc_55C
                call    sub_A8
                call    sub_C9
                call    sub_49
                movfw   byte_64
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_806
                bcf     PCLATH, 3
; assume pclath = 0
                bsf     STATUS, RP0
; assume bank = 1
                movwf   byte_A1
                bcf     STATUS, RP0
; assume bank = 0
                bz      loc_557
                btfsc   PORTD, RD4
                 b       loc_559
loc_557:                           
                bsf     PORTD, RD4
                b       loc_55A
loc_559:                           
                bcf     PORTD, RD4
loc_55A:                           
                call    sub_ED
                b       loc_618
loc_55C:                           
                btfsc   byte_72, 0
                 b       loc_5F4
                movlw   0x60
                xorwf   byte_37, w
                bnz     loc_579
                bcf     byte_2C, 6
                movlw   0xA
                addwf   byte_4B, f
                movlw   0x29
                subwf   byte_4B, w
                bnc     loc_571
                call    sub_126
                movlw   0x28
                movwf   byte_4B
                call    sub_7D
loc_56D:                           
                call    sub_75
                call    sub_69
loc_56F:                           
                call    sub_F7
                b       loc_577
loc_571:                           
                call    sub_A8
                call    sub_C9
                call    sub_7D
                call    sub_75
                call    sub_69
                call    sub_101
loc_577:                           
                bsf     byte_39, 3
                b       loc_617
loc_579:                           
                movlw   0x61
                xorwf   byte_37, w
                bnz     loc_583
                call    sub_AC
                call    sub_7D
                movfw   byte_4B
                bz      loc_56F
                b       loc_56D
loc_583:                           
                movlw   0xA0
                xorwf   byte_37, w
                skpnz
                 btfsc   byte_72, 0
                 b       loc_59A
                btfsc   PORTA, RA4
                 b       loc_59A
                call    sub_AC
                btfsc   byte_72, 4
                 b       loc_591
                clrf    byte_77
                bsf     byte_72, 5
                bsf     byte_72, 4
loc_590:                           
                call    sub_7F
loc_591:                           
                movlw   0x19
                movwf   byte_4A
                call    sub_7D
                call    sub_FF
                call    sub_4D
                call    sub_69
                movlw   0xE
                call    sub_6F
                b       loc_14C
loc_59A:                           
                movlw   0xA1
                xorwf   byte_37, w
                bnz     loc_5AB
                btfsc   PORTA, RA4
                 btfsc   byte_28, 1
                 b       loc_2F0
                movlw   0x96
                movwf   byte_78
                movlw   0x97
                movwf   byte_43
                movlw   0x19
                movwf   byte_79
                bsf     byte_28, 1
                bsf     byte_39, 3
                call    sub_FF
                b       loc_618
loc_5AB:                           
                movlw   0x30
                xorwf   byte_37, w
                bnz     loc_5C6
                btfsc   byte_72, 4
                 b       loc_5B4
                tstf    byte_77
                bz      loc_5C6
loc_5B4:                           
                btfsc   byte_73, 1
                 b       loc_5BE
                btfsc   byte_73, 2
                 b       loc_5BA
                bsf     byte_73, 2
                b       loc_5E5
loc_5BA:                           
                bsf     byte_73, 1
                call    sub_126
                call    sub_F1
                b       loc_612
loc_5BE:                           
                bcf     byte_73, 1
                bcf     byte_73, 2
                call    sub_A8
                call    sub_C9
                call    sub_ED
                movlw   9
                movwf   byte_42
                b       loc_612
loc_5C6:                           
                movlw   0xC0
                xorwf   byte_37, w
                bnz     loc_5CE
                bcf     byte_72, 3
                bcf     byte_28, 6
                bsf     byte_2A, 3
                b       loc_5E5
loc_5CE:                           
                movlw   0xC1
                xorwf   byte_37, w
                bnz     loc_5DF
                bsf     byte_72, 3
                bcf     byte_2A, 3
                btfsc   byte_72, 3
                 call    sub_55
                call    sub_A8
                call    sub_C9
                call    sub_7D
                movfw   byte_61
                bsf     PCLATH, 3
; assume pclath = 8
                call    sub_818
                call    sub_8EA
                call    loc_869
                b       loc_E09
; assume pclath = 0
loc_5DF:                           
                movlw   0x50
                xorwf   byte_37, w
                bnz     loc_5E7
                bcf     byte_28, 7
                bcf     byte_28, 5
loc_5E5:                           
                call    sub_123
                b       loc_611
loc_5E7:                           
                movlw   0x51
                xorwf   byte_37, w
                bnz     loc_5F4
                call    sub_116
                call    sub_C9
                call    sub_107
                call    sub_7D
                call    sub_4D
                call    sub_69
                call    sub_93
                bsf     byte_2B, 0
                b       loc_61A
loc_5F4:                           
                movlw   0x90
                xorwf   byte_37, w
                bnz     loc_5FE
                call    sub_F7
                call    sub_B2
                call    sub_4D
                call    sub_67
                call    loc_D3
                b       loc_61A
loc_5FE:                           
                movlw   0xD1
                xorwf   byte_37, w
                bnz     loc_60B
                bsf     byte_72, 0
                bcf     byte_72, 3
                bcf     byte_28, 7
                clrf    byte_77
                clrf    byte_4F
                call    sub_AE
                call    sub_CF
                call    sub_107
                b       loc_612
loc_60B:                           
                movlw   0xD0
                xorwf   byte_37, w
                bnz     loc_14C
                bcf     byte_72, 0
                call    sub_126
loc_611:                           
                call    sub_105
loc_612:                           
                bsf     byte_2B, 0
                b       loc_617
loc_614:                           
                call    sub_4D
loc_615:                           
                call    sub_65
                b       loc_61A
loc_617:                           
                call    sub_7D
loc_618:                           
                call    sub_4D
loc_619:                           
                call    sub_69
loc_61A:                           
                bcf     byte_2C, 1
                movlw   0x14
                movwf   byte_3F
                b       loc_14C
loc_61E:                           
                bsf     byte_2B, 5
loc_61F:                           
                bsf     PORTC, RC5
                call    sub_4B
                clrf    byte_4F
                bcf     byte_2B, 6
                bcf     INTCON, INTF
                bcf     byte_29, 6
                clrf    byte_49
                btfss   PORTA, RA4
                 btfss   byte_73, 0
                 b       loc_62D
                bcf     byte_73, 0
                bsf     byte_2B, 0
                bcf     PORTC, RC2
                call    sub_8F
loc_62D:                           
                btfsc   byte_2A, 7
                 b       loc_7D0
                btfss   PORTA, RA4
                 b       loc_72E
                incf    byte_49, f
                movlw   0x32
                movwf   byte_25
loc_634:                           
                bsf     PORTC, RC5
                call    sub_9B
                btfsc   PORTB, RB0
                 b       loc_67A
                decfsz  byte_25, f
                 b       loc_634
                bcf     PORTC, RC5
                btfsc   byte_72, 4
                 b       loc_7D0
                bcf     byte_72, 1
                call    sub_CF
                clrf    byte_4C
loc_640:                           
                bcf     PORTC, RC5
                movlw   0x64
                movwf   byte_25
loc_643:                           
                movlw   5
                movwf   byte_26
loc_645:                           
                bcf     INTCON, INTF
                call    sub_6B
                btfss   byte_29, 2
                 b       loc_64E
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_FA6
; assume pclath = 0
loc_64B:                           
                decfsz  byte_26, f
                 b       loc_645
                b       loc_65E
loc_64E:                           
                btfss   PORTB, RB0
                 b       loc_655
                btfss   PORTA, RA4
                 b       loc_7CF
                decfsz  byte_25, f
                 b       loc_645
                b       loc_7CF
loc_655:                           
                bsf     PORTC, RC5
                movlw   0x32
                movwf   byte_25
loc_658:                           
                call    sub_9B
                btfsc   PORTB, RB0
                 b       loc_640
                decfsz  byte_25, f
                 b       loc_658
                b       loc_7CF
loc_65E:                           
                movfw   byte_3E
                andlw   0xF0
                xorlw   0x90
                bnz     loc_643
                movlw   0xF
                andwf   byte_3E, f
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_FCB
                movfw   byte_4C
                call    loc_873
                call    loc_84B
                movfw   byte_37
                andlw   0xF
                movwf   byte_3E
                call    loc_86B
                btfsc   byte_29, 2
                 b       loc_E6D
                movfw   byte_4C
                movwf   byte_26
                bcf     INTCON, INTF
                call    loc_863
                incf    byte_4C, f
                movlw   4
                subwf   byte_4C, w
                bnc     loc_E40
                b       loc_E3F
; assume pclath = 0
loc_67A:                           
                bcf     PORTC, RC5
                movlw   0x64
                movwf   byte_25
loc_67D:                           
                call    sub_9D
                btfss   PORTB, RB0
                 b       loc_685
                btfss   PORTA, RA4
                 b       loc_691
                decfsz  byte_25, f
                 b       loc_67D
                b       loc_7D0
loc_685:                           
                incf    byte_49, f
                bsf     PORTC, RC5
                movlw   0x64
                movwf   byte_25
loc_689:                           
                call    sub_9D
                btfsc   PORTB, RB0
                 b       loc_67A
                btfss   PORTA, RA4
                 b       loc_691
                decfsz  byte_25, f
                 b       loc_689
                b       loc_7CF
loc_691:                           
                bcf     byte_2B, 3
                bcf     byte_2B, 4
                movlw   4
                xorwf   byte_49, w
                bz      loc_7CB
                movlw   8
                xorwf   byte_49, w
                bz      loc_7C0
                btfsc   byte_72, 4
                 b       loc_7D0
                movlw   0x9
                xorwf   byte_49, w
                bz      loc_70C
                movlw   6
                xorwf   byte_49, w
                bz      loc_6AC
                movlw   0xA
                xorwf   byte_49, w
                bnz     loc_7D0
                bsf     byte_2B, 3
                movlw   0x9
                btfss   byte_2B, 3
loc_6AC:                           
                 movlw   5
                bcf     byte_72, 1
                call    sub_73
                clrf    byte_49
                movlw   0xC8
                movwf   byte_25
loc_6B2:                           
                btfss   PORTB, RB0
                 b       loc_6BA
                call    sub_9D
                btfsc   PORTA, RA4
                 b       loc_7CF
                decfsz  byte_25, f
                 b       loc_6B2
                b       loc_7CF
loc_6BA:                           
                bsf     PORTC, RC5
                movlw   0x64
                movwf   byte_25
loc_6BD:                           
                btfsc   PORTB, RB0
                 b       loc_6D0
                call    sub_9D
                btfsc   PORTA, RA4
                 b       loc_7CF
                decfsz  byte_25, f
                 b       loc_6BD
                b       loc_7CF
loc_6C5:                           
                bsf     PORTC, RC5
                movlw   0x64
                movwf   byte_25
loc_6C8:                           
                btfsc   PORTB, RB0
                 b       loc_6D0
                call    sub_9D
                btfsc   PORTA, RA4
                 b       loc_8D
                decfsz  byte_25, f
                 b       loc_6C8
                b       loc_8D
loc_6D0:                           
                bcf     PORTC, RC5
                movfw   byte_49
                call    sub_71
loc_6D3:                           
                bcf     PORTC, RC5
                movlw   0x64
                movwf   byte_25
loc_6D6:                           
                bcf     INTCON, INTF
                call    sub_6D
                btfsc   byte_29, 2
                 b       loc_6E9
                btfsc   PORTB, RB0
                 b       loc_6E4
                btfsc   byte_2B, 3
                 b       loc_6C5
                incf    byte_49, f
                movlw   0x10
                subwf   byte_49, w
                skpnc
                 clrf    byte_49
                b       loc_6C5
loc_6E4:                           
                btfsc   PORTA, RA4
                 b       loc_8D
                decfsz  byte_25, f
                 b       loc_6D6
                b       loc_8D
loc_6E9:                           
                movlw   0x24
                btfss   byte_2B, 3
                 movlw   0x60
                addwf   byte_49, w
                movwf   FSR
                btfss   byte_37, 5
                 b       loc_6F5
                btfsc   byte_2B, 3
                 bsf     byte_2B, 4
                call    sub_C9
                movlw   0
                b       loc_706
loc_6F5:                           
                btfss   byte_37, 6
                 b       loc_6FB
                bcf     byte_2B, 4
                call    sub_CB
                movlw   1
                b       loc_706
loc_6FB:                           
                btfss   byte_37, 7
                 b       loc_701
                bcf     byte_2B, 4
                call    sub_CD
                movlw   2
                b       loc_706
loc_701:                           
                btfss   byte_37, 4
                 b       loc_6D6
                bcf     byte_2B, 4
                call    sub_CF
                movlw   3
loc_706:                           
                movwf   INDF
                movwf   byte_26
                bcf     INTCON, INTF
                call    sub_7D
                call    sub_63
                b       loc_6D3
loc_70C:                           
                btfss   byte_2A, 4
                 b       loc_7CF
                bcf     PORTC, RC2
                call    sub_8F
                movlw   8
                call    sub_73
                movlw   0xB4
                movwf   byte_25
loc_714:                           
                call    sub_95
                btfss   PORTB, RB0
                 b       loc_71C
                call    sub_95
                bsf     PORTC, RC5
                decfsz  byte_25, f
                 b       loc_714
                b       loc_7CF
loc_71C:                           
                call    sub_57
                btfsc   byte_72, 2
                 b       loc_723
                call    sub_AE
                call    sub_CF
                bsf     byte_2B, 0
                b       loc_7D0
loc_723:                           
                call    sub_A8
                call    sub_C9
                movlw   0x11
                movwf   byte_26
                movlw   2
                movwf   byte_25
                movlw   byte_72
loc_72A:                           
                movwf   FSR
                bsf     byte_2B, 0
                call    sub_4F
                b       loc_7D0
loc_72E:                           
                btfsc   byte_72, 4
                 b       loc_7D0
                incf    byte_49, f
                bsf     PORTC, RC5
                movlw   0x64
                movwf   byte_25
loc_734:                           
                call    sub_9D
                btfsc   PORTB, RB0
                 b       loc_73C
                btfsc   PORTA, RA4
                 b       loc_747
                decfsz  byte_25, f
                 b       loc_734
                b       loc_7CF
loc_73C:                           
                bcf     PORTC, RC5
                movlw   0x64
                movwf   byte_25
loc_73F:                           
                call    sub_9D
                btfss   PORTB, RB0
                 b       loc_72E
                btfsc   PORTA, RA4
                 b       loc_747
                decfsz  byte_25, f
                 b       loc_73F
                b       loc_7D0
loc_747:                           
                movlw   3
                xorwf   byte_49, w
                bz      loc_754
                movlw   4
                xorwf   byte_49, w
                bz      loc_776
                movlw   5
                xorwf   byte_49, w
                bz      loc_797
                b       loc_7D0
loc_754:                           
                bcf     byte_72, 1
                call    sub_CD
loc_756:                           
                movlw   0x64
                movwf   byte_25
loc_758:                           
                btfsc   PORTB, RB0
                 b       loc_762
                bsf     PORTC, RC5
                bsf     byte_29, 6
                call    sub_9D
                btfss   PORTA, RA4
                 b       loc_7BA
                decfsz  byte_25, f
                 b       loc_758
                b       loc_7BA
loc_762:                           
                btfss   byte_29, 6
                 b       loc_76C
                bcf     byte_29, 6
                btfsc   byte_72, 0
                 b       loc_76A
                bsf     byte_72, 0
                call    sub_C9
                b       loc_76C
loc_76A:                           
                bcf     byte_72, 0
                call    sub_CB
loc_76C:                           
                movlw   0xC8
                movwf   byte_25
loc_76E:                           
                call    sub_9D
                btfss   PORTA, RA4
                 b       loc_7BA
                btfss   PORTB, RB0
                 b       loc_756
                decfsz  byte_25, f
                 b       loc_76E
                b       loc_7BA
loc_776:                           
                call    sub_CF
loc_777:                           
                movlw   0x64
                movwf   byte_25
loc_779:                           
                btfsc   PORTB, RB0
                 b       loc_783
                bsf     PORTC, RC5
                bsf     byte_29, 6
                call    sub_9D
                btfss   PORTA, RA4
                 b       loc_7BA
                decfsz  byte_25, f
                 b       loc_779
                b       loc_7BA
loc_783:                           
                btfss   byte_29, 6
                 b       loc_78D
                bcf     byte_29, 6
                btfsc   byte_28, 7
                 b       loc_78A
                call    sub_116
                b       loc_78D
loc_78A:                           
                bcf     byte_28, 7
                bcf     byte_28, 5
                call    sub_CB
loc_78D:                           
                movlw   0xC8
                movwf   byte_25
loc_78F:                           
                call    sub_9D
                btfss   PORTA, RA4
                 b       loc_7BA
                btfss   PORTB, RB0
                 b       loc_777
                decfsz  byte_25, f
                 b       loc_78F
                b       loc_7BA
loc_797:                           
                call    sub_D1
loc_798:                           
                movlw   0x64
                movwf   byte_25
loc_79A:                           
                btfsc   PORTB, RB0
                 b       loc_7A4
                bsf     PORTC, RC5
                bsf     byte_29, 6
                call    sub_9D
                btfss   PORTA, RA4
                 b       loc_7BA
                decfsz  byte_25, f
                 b       loc_79A
                b       loc_7BA
loc_7A4:                           
                btfss   byte_29, 6
                 b       loc_7B1
                bcf     byte_29, 6
                btfsc   byte_72, 3
                 b       loc_7AD
                bsf     byte_72, 3
                bcf     byte_2A, 3
                call    sub_C9
                b       loc_7B1
loc_7AD:                           
                bcf     byte_72, 3
                bcf     byte_28, 6
                bsf     byte_2A, 3
                call    sub_CB
loc_7B1:                           
                movlw   0xC8
                movwf   byte_25
loc_7B3:                           
                call    sub_9D
                btfss   PORTA, RA4
                 b       loc_7BA
                btfss   PORTB, RB0
                 b       loc_798
                decfsz  byte_25, f
                 b       loc_7B3
loc_7BA:                           
                movlw   0x11
                movwf   byte_26
                movlw   1
                movwf   byte_25
                movlw   0x72
                b       loc_72A
loc_7C0:                           
                bcf     byte_2B, 5
                call    sub_A8
                bcf     byte_72, 1
                call    sub_C9
                bsf     byte_72, 5
                bsf     byte_72, 6
                movlw   0x64
                movwf   byte_77
                bsf     byte_38, 6
                bsf     byte_2B, 0
                b       loc_7D0
loc_7CB:                           
                bcf     byte_72, 1
                call    sub_123
                call    sub_77
                b       loc_7D0
loc_7CF:                           
                call    sub_B0
loc_7D0:                           
                bcf     PORTC, RC5
                bcf     INTCON, INTF
                bsf     INTCON, INTE
                btfsc   byte_2B, 3
                 btfss   byte_2B, 4
                 b       loc_7DA
                bcf     byte_2B, 3
                bcf     byte_2B, 4
                bsf     PCLATH, 3
; assume pclath = 8
                b       loc_F79
; assume pclath = 0
loc_7DA:                           
                btfsc   byte_2B, 5
                 b       loc_2AF
                b       loc_14B
;============================================================================
          ORG 0x800
;============================================================================
; assume pclath = 8
; =============== S U B R O U T I N E =======================================
sub_800:                           
                andlw   3
                addwf   PCL, f
                retlw   0
                retlw   0
                retlw   0x32
                retlw   0x96
; =============== S U B R O U T I N E =======================================
sub_806:                           
                andlw   3
                addwf   PCL, f
                retlw   4
                retlw   0x32
                retlw   0x96
                retlw   0
; =============== S U B R O U T I N E =======================================
sub_80C:                           
                andlw   3
                addwf   PCL, f
                retlw   0x1E
                retlw   0x4B
                retlw   0x96
                retlw   0xE1
; =============== S U B R O U T I N E =======================================
sub_812:                           
                andlw   3
                addwf   PCL, f
                retlw   0x0A
                retlw   0x14
                retlw   0x1E
                retlw   0x28
; =============== S U B R O U T I N E =======================================
sub_818:                           
                andlw   3
                addwf   PCL, f
                retlw   0xBD
                retlw   0xC7
                retlw   0xD9
                retlw   0xE7
; =============== S U B R O U T I N E =======================================
sub_81E:                           
                andlw   3
                addwf   PCL, f
                retlw   4
                retlw   6
                retlw   0x9
                retlw   0x0F
; =============== S U B R O U T I N E =======================================
sub_824:                           
                andlw   3
                addwf   PCL, f
                retlw   0x64
                retlw   0x0A
                retlw   0x0F
                retlw   0x14
; =============== S U B R O U T I N E =======================================
sub_82A:                           
                andlw   3
                addwf   PCL, f
                retlw   0
                retlw   2
                retlw   6
                retlw   0x0C
; =============== S U B R O U T I N E =======================================
sub_830:                           
                andlw   3
                addwf   PCL, f
                retlw   4
                retlw   0x12
                retlw   4
                retlw   4
; =============== S U B R O U T I N E =======================================
sub_836:                           
                andlw   3
                addwf   PCL, f
                retlw   4
                retlw   0x12
                retlw   4
                retlw   0x96
; =============== S U B R O U T I N E =======================================
sub_83C:                           
                andlw   3
                addwf   PCL, f
                retlw   0x50
                retlw   0x54
                retlw   0x58
                retlw   0x5C
                
; =============== S U B R O U T I N E =======================================
sub_842:                           
                bsf     STATUS, RP0
; assume bank = 1
                movlw   0x55
                movwf   byte_BB
                movlw   4
                movwf   byte_BA
                movlw   4
                movwf   byte_B9
; assume bank = 0
loc_849:                           
                movlw   57
                movwf   byte_38
loc_84B:                           
                movlw   8
                movwf   byte_37
                movlw   0x30
                movwf   byte_36
                movlw   0x12
                movwf   byte_35
                movlw   3
                movwf   byte_34
                movlw   0x0C
                movwf   byte_25
loc_855:                           
                movlw   0x30
                movwf   byte_24
; assume bank = 1
loc_857:                           
                clrwdt
                movfw   byte_A5
                xorlw   1
                bz      loc_881
                clrc
                movlw   1
                btfsc   byte_B2, 3
                 movlw   10
                movwf   byte_A6
                btfss   byte_B1, 0
                 b       loc_865
; assume bank = 0
loc_863:                           
                rlf     byte_26, f
                rlf     byte_26, f
; assume bank = 1
loc_865:                           
                btfsc   byte_B0, 0
                 rlf     byte_A6, f
                movlw   0
                btfsc   byte_B3, 1
; assume bank = 0
loc_869:                           
                 iorlw   2
                btfsc   byte_33, 6
loc_86B:                           
                 iorlw   4
                addwf   PCL, f
                movlw   0x2E
                b       loc_874
                movlw   0x74
                b       loc_874
                movlw   0x5C
                b       loc_874
loc_873:                           
                movlw   0x3A
loc_874:                           
                andwf   byte_26, f
                movlw   0
                skpz
loc_877:                           
                movlw   0x80
                xorwf   byte_31, w
                xorwf   byte_33, w
                xorwf   byte_35, w
                movwf   byte_26
                rlf     byte_26, f
                rlf     byte_30, f
                rlf     byte_31, f
                rlf     byte_32, f
                rlf     byte_33, f
; assume bank = 1
loc_881:                           
                clrc
                btfsc   byte_BB, 7
                 setc
                rlf     byte_B4, f
                rlf     byte_B5, f
                rlf     byte_B6, f
                rlf     byte_B7, f
                rlf     byte_B8, f
                rlf     byte_B9, f
                rlf     byte_BA, f
                rlf     byte_BB, f
                decfsz  byte_A4, f
                 b       loc_857
                decfsz  byte_A5, f

; assume bank = 0
; =============== S U B R O U T I N E =======================================
sub_88F:                           
                 b       loc_855
                movfw   byte_33
                bcf     STATUS, RP0
                xorwf   byte_37, w
                bsf     STATUS, RP0
; assume bank = 1
                andlw   0xF0
                bnz     loc_8C7
                movlw   3
                andwf   byte_B3, f
                movlw   3
                bcf     STATUS, RP0
; assume bank = 0
                andwf   byte_3C, w
                bsf     STATUS, RP0
; assume bank = 1
                xorwf   byte_B3, w
                bnz     loc_8C7
                movfw   byte_B2
                bcf     STATUS, RP0
; assume bank = 0
                xorwf   byte_3B, w
                bsf     STATUS, RP0
; assume bank = 1
                bnz     loc_8C7
                setc
                movfw   byte_A7
                xorwf   byte_A8, w
                skpz
;
; assume bank = 0
; =============== S U B R O U T I N E =======================================
sub_8AA:                           
                 b       loc_8BE
                movfw   byte_30
                movwf   byte_24
                movfw   byte_31
loc_8AE:                           
                movwf   byte_25
                movfw   byte_3C
                subwf   byte_24, f
                skpc
                 decf    byte_25, f
                movfw   byte_3D
                subwf   byte_25, f
                tstf    byte_25
                bz      loc_8BA
                clrc
                b       loc_8BE
loc_8BA:                           
                movfw   byte_24
                bz      loc_8C6
                sublw   0x10
loc_8BE:                           
                movfw   byte_30
                movwf   byte_3C
                movfw   byte_31
                movwf   byte_3D
                movfw   byte_27
                movwf   byte_28
                setz
                skpc
loc_8C6:                           
                 clrz
; assume bank = 1
loc_8C7:                           
                bcf     STATUS, RP0
; assume bank = 0
                b       loc_F32

; =============== S U B R O U T I N E =======================================
sub_8C9:                           
                bsf     STATUS, RP0
; assume bank = 1
                movlw   0
; assume bank = 0
loc_8CB:                           
                movwf   ADCON0
                bcf     STATUS, RP0
                movlw   0x69
                movwf   ADCON0
loc_8CF:                           
                call    sub_E72
                bsf     ADCON0, GO_DONE
loc_8D1:                           
                btfsc   ADCON0, GO_DONE
                 b       loc_8D1
                clrf    ADCON0
                bsf     STATUS, RP0
; assume bank = 1
                movlw   7
                movwf   ADCON1
                bcf     STATUS, RP0
; assume bank = 0
                b       loc_F32

; =============== S U B R O U T I N E =======================================
sub_8D9:                           
                bsf     STATUS, RP0
; assume bank = 1
                movlw   4
                movwf   ADCON1
                bcf     STATUS, RP0
; assume bank = 0
                movlw   0x41
                movwf   ADCON0
                call    sub_E72
                bsf     ADCON0, GO_DONE
loc_8E1:                           
                btfsc   ADCON0, GO_DONE
                 b       loc_8E1
                clrf    ADCON0
                bsf     STATUS, RP0
; assume bank = 1
                movlw   7
                movwf   ADCON1
                bcf     STATUS, RP0
; assume bank = 0
                call    sub_AF0
                movfw   ADRES

; =============== S U B R O U T I N E =======================================
sub_8EA:                           
                sublw   0xFF
                movwf   byte_32
                movlw   0xE
                subwf   byte_32, f
                skpc

; =============== S U B R O U T I N E =======================================
sub_8EF:                           
                 b       loc_9BE
                movlw   0xCC
                subwf   byte_32, w
                bc      loc_9B7
                movlw   0xB3
                subwf   byte_32, w
                skpnc
loc_8F7:                           
                 b       loc_92F
                movlw   0x8E
                subwf   byte_32, w
                bc      loc_92C
                movlw   0x65
                subwf   byte_32, w
                skpnc
loc_8FF:                           
                 b       loc_91F
                movlw   0x39
                subwf   byte_32, w
                bc      loc_911
                movlw   0xE
                subwf   byte_32, w
                skpnc
loc_907:                           
                 b       loc_90E
                movfw   byte_32
                bz      loc_93D
                decf    byte_32, w
                addwf   byte_32, f
                b       loc_93D
loc_90E:                           
                movlw   0xE
                addwf   byte_32, f
                b       loc_93D
loc_911:                           
                movfw   byte_32
                sublw   0x65
                bz      loc_93D
                movwf   byte_33
                movlw   3
                addwf   byte_33, f
                clrc
                rrf     byte_33, f
                clrc
                rrf     byte_33, f
                movfw   byte_33
                addwf   byte_32, f
                b       loc_93D
loc_91F:                           
                movlw   0x65
                subwf   byte_32, w
                bz      loc_93D
                movwf   byte_33
                decf    byte_33, f
                clrc
                rrf     byte_33, f
                clrc
                rrf     byte_33, f
                movfw   byte_33
                subwf   byte_32, f
                b       loc_93D
loc_92C:                           
                movlw   0xA
                subwf   byte_32, f
                b       loc_93D
loc_92F:                           
                movfw   byte_32
                sublw   0xCB
                bz      loc_93D
                movwf   byte_33
                clrc
                rrf     byte_33, w
                addwf   byte_33, f
                clrc
                rrf     byte_33, f
                clrc
                rrf     byte_33, f
                movfw   byte_33
                subwf   byte_32, f
loc_93D:                           
                movfw   byte_32
                movwf   byte_33
                movfw   byte_6E
                bz      loc_945
                xorlw   2
                bnz     loc_98B
loc_945:                           
                clrf    byte_30
                clrf    byte_31
                clrf    byte_33
                movlw   0x64
                movwf   byte_26
                movlw   7
                movwf   byte_25
loc_94C:                           
                rrf     byte_26, f
                bnc     loc_955
                movfw   byte_32
                addwf   byte_30, f
                addcf   byte_31, f
                movfw   byte_33
                addwf   byte_31, f
loc_955:                           
                clrc
                rlf     byte_32, f
                rlf     byte_33, f
                decfsz  byte_25, f
                 b       loc_94C
                movfw   byte_6E
                bz      loc_960
                xorlw   2
                bnz     loc_976
loc_960:                           
                clrf    byte_32
                clrf    byte_33
                movlw   9
                movwf   byte_25
loc_964:                           
                movlw   0xB8
                subwf   byte_31, w
                bc      loc_96D
                tstf    byte_32
                bz      loc_96E
                clrf    byte_32
                setc
loc_96D:                           
                movwf   byte_31
loc_96E:                           
                rlf     byte_33, f
                clrc
                rlf     byte_30, f
                rlf     byte_31, f
                rlf     byte_32, f
                decfsz  byte_25, f
                 b       loc_964
                b       loc_98B
loc_976:                           
                clrf    byte_32
                clrf    byte_33
                movlw   9
                movwf   byte_25
loc_97A:                           
                movlw   0x67
                subwf   byte_31, w
                bc      loc_983
                tstf    byte_32
                bz      loc_984
                clrf    byte_32
                setc
loc_983:                           
                movwf   byte_31
loc_984:                           
                rlf     byte_33, f
                clrc
                rlf     byte_30, f
                rlf     byte_31, f
                rlf     byte_32, f
                decfsz  byte_25, f
                 b       loc_97A
loc_98B:                           
                movlw   0x28
                subwf   byte_33, w
                bc      loc_994
                movfw   byte_33
                sublw   0x28
                movwf   byte_32
                movlw   0xA0
                b       loc_996
loc_994:                           
                movwf   byte_32
                movlw   0xF0
loc_996:                           
                movwf   byte_38
                swapf   byte_32, w
                andlw   0xF
                clrf    byte_26
                movwf   byte_25
                incf    byte_25, f
                movfw   byte_32
                andlw   0xF
                movwf   byte_39
                b       loc_9A2
loc_9A0:                           
                movlw   0x16
                addwf   byte_39, f
loc_9A2:                           
                movlw   0xA
                subwf   byte_39, w
                bndc    loc_9AE
                addlw   10
                movwf   byte_39
                movlw   0xA0
                subwf   byte_39, w
                bnc     loc_9AE
                movwf   byte_39
                incf    byte_26, f
loc_9AE:                           
                decfsz  byte_25, f
                 b       loc_9A0
                movfw   byte_26
                bz      loc_9C4
                swapf   byte_26, w
                andlw   0xF0
                movwf   byte_38
                b       loc_9CA
loc_9B7:                           
                movlw   0xF4
                movwf   byte_38
                movlw   0x61
                movwf   byte_39
                movlw   0xF0
                andwf   byte_3A, f
                b       loc_9C4
loc_9BE:                           
                movlw   0xFC
                movwf   byte_38
                movlw   0x8A
                movwf   byte_39
                movlw   0xF0
                andwf   byte_3A, f
loc_9C4:                           
                movlw   0xF0
                andwf   byte_39, w
                bnz     loc_9CA
                movlw   0xF0
                iorwf   byte_39, f
loc_9CA:                           
                swapf   byte_39, f
                movlw   0xF0
                andwf   byte_3A, f
                movfw   byte_6E
                bz      loc_9D3
                xorlw   2
                bnz     loc_9D5
loc_9D3:                           
                movlw   9
                b       loc_9D6
loc_9D5:                           
                movlw   0xB
loc_9D6:                           
                iorwf   byte_3A, f
                b       loc_F32
;==========================================================
loc_9D8:                           
                clrc
                rrf     byte_4B, w
                movwf   byte_26
                swapf   byte_26, w
                andlw   0xF
                movwf   byte_25
                incf    byte_25, f
                movfw   byte_26
                andlw   0xF
                movwf   byte_39
                clrf    byte_26
                b       loc_9E6
loc_9E4:                           
                movlw   0x16
                addwf   byte_39, f
loc_9E6:                           
                movlw   0xA
                subwf   byte_39, w
                bndc    loc_9F2
                addlw   0x10
                movwf   byte_39
                movlw   0xA0
                subwf   byte_39, w
                bnc     loc_9F2
                movwf   byte_39
                incf    byte_26, f
loc_9F2:                           
                decfsz  byte_25, f
                 b       loc_9E4
                movlw   0xC2
                movwf   byte_38
                swapf   byte_39, f
                movlw   0xF0
                andwf   byte_3A, f
                bsf     byte_3A, 3
                b       loc_F32
;==========================================================
loc_9FB:                           
                movlw   0xF8
                movwf   byte_38
                movlw   0xD5
                movwf   byte_39
                movlw   0xF0
                andwf   byte_3A, f
                bsf     byte_3A, 3
                b       loc_F32
;==========================================================
loc_A03:                           
                movlw   0xF8
                movwf   byte_38
                movlw   0xB5
                movwf   byte_39
                movlw   0xF0
                andwf   byte_3A, f
                bsf     byte_3A, 3
                b       loc_F32
;==========================================================
loc_A0B:                           
                tstf    byte_78
                bz      loc_A10
                movlw   1
                movwf   byte_43
loc_A10:                           
                bcf     byte_2B, 5
                bcf     byte_72, 6
                btfsc   byte_72, 4
                 bsf     byte_2B, 0
                bcf     byte_72, 4
                bcf     byte_73, 1
                bcf     byte_73, 2
                bcf     byte_72, 5
                clrf    byte_41
                bcf     PORTD, RD3
                clrf    byte_77
                clrf    byte_78
                clrf    byte_79
                bcf     byte_28, 1
                bcf     byte_72, 7
                bcf     byte_2A, 6
                btfsc   byte_2A, 7
                 b       loc_F32
                bcf     PORTC, RC2
loc_A23:                           
                movfw   byte_6E
                bz      loc_A32
                xorlw   3
                bnz     loc_A30
                b       loc_A32

; =============== S U B R O U T I N E =======================================
sub_A2A:                           
                movfw   byte_6E
                bz      loc_A30
                xorlw   3
                bnz     loc_A32
loc_A30:                           
                bcf     PORTB, RB2
                b       loc_F32
loc_A32:                           
                bsf     PORTB, RB2
                b       loc_F32

loc_A34:                           
                bsf     byte_2B, 7
                bsf     byte_29, 0
loc_A36:                           
                b       loc_A3B

loc_A37:                           
                bsf     byte_29, 0
                btfss   byte_29, 0

; =============== S U B R O U T I N E =======================================
sub_A39:                           
                 bcf     byte_29, 0
                bcf     byte_2B, 7
loc_A3B:                           
                clrf    byte_44
                movwf   byte_21
                incf    byte_21, f
                clrf    byte_22
                btfss   byte_29, 0
                 b       loc_A4B
loc_A41:                           
                movlw   5
                subwf   byte_21, w
                bnc     loc_A48
                movwf   byte_21
                incf    byte_22, f
                b       loc_A41
loc_A48:                           
                movfw   byte_22
                skpnz
                 bcf     byte_29, 0
loc_A4B:                           
                btfss   byte_2B, 7
                 btfss   byte_72, 1
                 bsf     PORTD, RD3
                bsf     PORTC, RC5
                movfw   byte_65
                call    sub_824
                movwf   byte_23
loc_A52:                           
                call    sub_E68
                btfss   byte_29, 0
                 b       loc_A57
                call    sub_E68
                call    sub_E68
loc_A57:                           
                decfsz  byte_23, f
                 b       loc_A52
                bcf     PORTD, RD3
                bcf     PORTC, RC5
                btfsc   byte_29, 0
                 b       loc_A60
                decfsz  byte_21, f
                 b       loc_A60
                b       loc_F32
loc_A60:                           
                movfw   byte_65
                skpz
                 call    sub_D9B
                call    sub_D99
                btfss   byte_29, 0
                 b       loc_A4B
                call    sub_D9B
                decfsz  byte_22, f
                 b       loc_A4B
                bcf     byte_29, 0
                movfw   byte_21
                bnz     loc_A4B
                b       loc_F32

; =============== S U B R O U T I N E =======================================
sub_A6E:                           
                movwf   byte_23
                movlw   8
                movwf   byte_22
loc_A71:                           
                bcf     PORTC, RC4
                btfsc   byte_23, 7
                 bsf     PORTC, RC4
loc_A74:                           
                bsf     PORTC, RC5
                bcf     PORTC, RC5
                rlf     byte_23, f
                decfsz  byte_22, f
                 b       loc_A71
                return

; =============== S U B R O U T I N E =======================================
sub_A7A:                           
                clrf    byte_44
                clrf    byte_4D
                bcf     PORTC, RC5
                bsf     PORTC, RC6
                bsf     PORTC, RC4
                bsf     PORTC, RC5
                bcf     PORTC, RC5
                movlw   0x80
                addwf   byte_26, w
                call    sub_A6E
                bsf     STATUS, RP0
; assume bank = 1
                bsf     TRISC, TRISC4
                bcf     STATUS, RP0
; assume bank = 0
                movlw   0x10
                movwf   byte_21
loc_A89:                           
                bsf     PORTC, RC5
                bcf     PORTC, RC5
                clrc
                btfsc   PORTC, RC4
                 setc
                rlf     INDF, f
                incf    FSR, f
                rlf     INDF, f
                decf    FSR, f
                decfsz  byte_21, f
                 b       loc_A89
                bcf     PORTC, RC6
                bsf     STATUS, RP0
; assume bank = 1
                bcf     TRISC, TRISC4
                bcf     STATUS, RP0
; assume bank = 0
                incf    byte_26, f
                incf    FSR, f
                incf    FSR, f
                decfsz  byte_25, f
                 b       sub_A7A
                return

; =============== S U B R O U T I N E =======================================
sub_A9E:                           
                clrf    byte_44
                clrf    byte_4D
                bcf     PORTC, RC5
                btfss   byte_2B, 0
                 b       loc_AE1
                bsf     PORTC, RC6
                bsf     PORTC, RC4
                bsf     PORTC, RC5
                bcf     PORTC, RC5
                movlw   0x30
                call    sub_A6E
                bcf     PORTC, RC6
                btfss   byte_2B, 0
                 b       loc_AD2
loc_AAC:                           
                bsf     PORTC, RC6
                bsf     PORTC, RC4
                bsf     PORTC, RC5
                bcf     PORTC, RC5
                movlw   0x40
                addwf   byte_26, w
                call    sub_A6E
                incf    FSR, f
                movfw   INDF
                call    sub_A6E
                decf    FSR, f
                movfw   INDF
                call    sub_A6E
                bcf     PORTC, RC6
                bsf     STATUS, RP0
; assume bank = 1
                bsf     TRISC, TRISC4
                bcf     STATUS, RP0
; assume bank = 0
                bsf     PORTC, RC6
                clrf    byte_21
loc_ABF:                           
                btfsc   PORTC, RC4
                 b       loc_AD2
                call    sub_E68
                decfsz  byte_21, f
                 b       loc_ABF
                bcf     PORTC, RC6
                bsf     STATUS, RP0
; assume bank = 1
                bcf     TRISC, TRISC4
                bcf     STATUS, RP0
; assume bank = 0
                movlw   6
                movwf   byte_21
loc_ACA:                           
                bsf     PORTC, RC5
                call    sub_D9B
                bcf     PORTC, RC5
                decfsz  byte_21, f
                 b       loc_AD0
                b       loc_AE1
loc_AD0:                           
                call    sub_D9B
                b       loc_ACA
loc_AD2:                           
                bcf     PORTC, RC6
                bsf     STATUS, RP0
; assume bank = 1
                bcf     TRISC, TRISC4
                bcf     STATUS, RP0
; assume bank = 0
                incf    byte_26, f
                incf    FSR, f
                incf    FSR, f
                decfsz  byte_25, f
                 b       loc_AAC
                bsf     PORTC, RC6
                bsf     PORTC, RC4
                bsf     PORTC, RC5
                bcf     PORTC, RC5
                movlw   0
                call    sub_A6E
loc_AE1:                           
                bcf     PORTC, RC6
                bcf     PORTC, RC4
                bcf     byte_2B, 0
                b       loc_F32
                
;==========================================================
loc_AE5:                           
                bsf     PORTC, RC2
                call    sub_A2A
                bsf     byte_72, 4
                movlw   0xFC
                movwf   byte_41
                btfsc   byte_72, 5
                 b       loc_AEE
                bsf     byte_72, 5
                call    sub_CA1
loc_AEE:                           
                bcf     PCLATH, 3
; assume pclath = 0
                b       loc_2AC

; assume pclath = 8
; =============== S U B R O U T I N E =======================================
sub_AF0:                           
                bsf     byte_2C, 5
                b       loc_AF5
loc_AF2:                           
                btfss   byte_28, 3
                 b       loc_AF2
loc_AF4:                           
                bcf     byte_2C, 5
loc_AF5:                           
                btfss   byte_28, 3
                 b       loc_C21
                clrwdt
                bcf     byte_28, 3
                movfw   byte_40
                skpz
                 decfsz  byte_40, f
                 b       loc_B0C
                bcf     PORTD, RD7
                btfss   PORTD, RD6
                 b       loc_B06
                bcf     PORTD, RD6
                btfss   byte_73, 4
                 b       loc_B0C
                movlw   5
                movwf   byte_40
                b       loc_B0C
loc_B06:                           
                btfss   byte_73, 4
                 b       loc_B0C
                bcf     byte_73, 4
                bsf     PORTD, RD6
                movlw   4
                movwf   byte_40
loc_B0C:                           
                bsf     STATUS, RP0
; assume bank = 1
                movfw   byte_A1
                skpz
                 decfsz  byte_A1, f
; assume bank = 0
loc_B10:                           
                 b       loc_B13
                bcf     STATUS, RP0
                bcf     PORTD, RD4
loc_B13:                           
                bsf     STATUS, RP0
; assume bank = 1
                movfw   byte_A2
                skpz
                 decfsz  byte_A2, f
                 b       loc_B1A
; assume bank = 0
loc_B18:                           
                bcf     STATUS, RP0
                bcf     PORTD, RD5
; assume bank = 1
loc_B1A:                           
                bsf     STATUS, RP0
                movfw   byte_A3
                skpz
                 decfsz  byte_A3, f
; assume bank = 0
loc_B1E:                           
                 b       loc_B21
                bcf     STATUS, RP0
                bcf     PORTC, RC7
loc_B21:                           
                bcf     STATUS, RP0
                movfw   byte_27
                skpz
                 decf    byte_27, f
                movfw   byte_76
                skpz
                 decfsz  byte_76, f
                 b       loc_B2A
                bcf     PORTB, RB1
loc_B2A:                           
                btfsc   byte_72, 0
                 b       loc_B59
                btfsc   PORTC, RC1
                 b       loc_B38
loc_B2E:                           
                bsf     byte_29, 5
                movfw   byte_79
loc_B30:                           
                skpz
                 decfsz  byte_79, f
                 b       loc_B59
                movlw   1
                movwf   byte_43
loc_B35:                           
                bsf     byte_28, 2
                bcf     byte_73, 0
                b       loc_B59
loc_B38:                           
                btfss   byte_29, 5
                 b       loc_B41
                btfss   byte_28, 1
loc_B3B:                           
                 b       loc_B4D
                movfw   byte_79
                bnz     loc_B55
                bcf     byte_28, 1
                b       loc_B58
loc_B41:                           
                btfss   byte_2C, 4
                 btfss   byte_28, 1
                 b       loc_B59
                movfw   byte_78
                skpz
                 decfsz  byte_78, f
                 b       loc_B69
                bsf     byte_72, 7
                bcf     byte_72, 4
                clrf    byte_77
                bsf     byte_2B, 0
                b       loc_B69
loc_B4D:                           
                btfss   PORTA, RA4
                 b       loc_B58
                btfss   PORTE, RE1
                 bsf     byte_2C, 4
                movlw   0x96
                movwf   byte_78
                movlw   0x97
                movwf   byte_43
loc_B55:                           
                movlw   0x19
loc_B56:                           
                movwf   byte_79
                bsf     byte_28, 1
loc_B58:                           
                bcf     byte_29, 5
loc_B59:                           
                movfw   byte_77
                skpz
                 decfsz  byte_77, f
                 b       loc_B69
                movlw   3
                movwf   byte_43
                movlw   0x19
                movwf   byte_4A
                bsf     byte_72, 4
                bcf     byte_2A, 6
                bsf     byte_2B, 0
                bcf     byte_2C, 2
                movlw   9
                movwf   byte_42
                clrf    byte_7E
                bcf     byte_73, 0
loc_B69:                           
                btfsc   byte_2A, 6
                 b       loc_B95
                btfss   PORTE, RE1
                 b       loc_B78
                btfsc   byte_2D, 3
                 b       loc_B95
                bsf     byte_2D, 3
                bcf     byte_72, 5
                bcf     byte_2C, 4
                bsf     byte_2C, 2
                btfss   byte_2A, 7
                 bcf     byte_2B, 1
                clrf    byte_4F
                bcf     byte_2B, 6
                b       loc_B95
loc_B78:                           
                btfss   byte_2C, 2
                 btfss   byte_2D, 3
                 b       loc_B95
                bcf     byte_2D, 3
                btfsc   byte_73, 7
                 btfss   byte_2A, 7
                 b       loc_B80
                bsf     byte_2B, 1
loc_B80:                           
                bsf     byte_2C, 3
                btfss   byte_2B, 3
                 btfss   byte_73, 6
                 b       loc_B8E
                clrf    byte_4F
                movlw   0x32
                btfss   byte_73, 5
                 btfsc   byte_73, 7
                 b       loc_B8B
                btfsc   PORTA, RA4
                 b       loc_B8E
loc_B8B:                           
                movwf   byte_4F
                bsf     byte_2B, 3
                bsf     byte_28, 0
loc_B8E:                           
                btfsc   byte_72, 4
                 b       loc_B95
                tstf    byte_78
                bnz     loc_B95
                movlw   1
                movwf   byte_43
loc_B95:                           
                bsf     STATUS, RP0
; assume bank = 1
                movlw   4
                movwf   ADCON1
                bcf     STATUS, RP0
; assume bank = 0
                movlw   0x59
                movwf   ADCON0
                call    sub_E72
                bsf     ADCON0, GO_DONE
loc_B9D:                           
                btfsc   ADCON0, GO_DONE
                 b       loc_B9D
                clrf    ADCON0
                bsf     STATUS, RP0
; assume bank = 1
                movlw   7
                movwf   ADCON1
                bcf     STATUS, RP0
; assume bank = 0
                movfw   ADRES
                sublw   0x1E
                bnc     loc_BAE
                btfsc   byte_2D, 0
                 b       loc_BB7
                bsf     byte_2D, 0
                bsf     byte_2C, 2
loc_BAC:                           
                bcf     byte_2B, 1
                b       loc_BB7
loc_BAE:                           
                movfw   ADRES
                sublw   0xC8
                skpnc
                 bsf     byte_2B, 4
                btfss   byte_2C, 2
                 btfss   byte_2D, 0
                 b       loc_BB7
                bcf     byte_2D, 0
                bsf     byte_2C, 3
loc_BB7:                           
                btfsc   PORTC, RC3
                 b       loc_BBE
                btfsc   byte_2D, 2
                 b       loc_BC7
                bsf     byte_2D, 2
                bsf     byte_2C, 2
                b       loc_BC7
loc_BBE:                           
                btfss   byte_2C, 2
                 btfss   byte_2D, 2
                 b       loc_BC7
                bcf     byte_2D, 2
                bsf     byte_2C, 3
                btfss   byte_2A, 7
                 bcf     byte_73, 1
                movlw   0x19
                movwf   byte_4A
loc_BC7:                           
                movfw   byte_4E
                bz      loc_BCC
                decf    byte_4E, f
                bcf     byte_2C, 2
loc_BCC:                           
                btfss   PORTC, RC0
                 b       loc_BD4
                btfsc   byte_2D, 1
                 b       loc_BD9
                bsf     byte_2D, 1
                bsf     byte_2C, 2
                bcf     byte_2B, 1
                b       loc_BD9
loc_BD4:                           
                btfss   byte_2C, 2
                 btfss   byte_2D, 1
                 b       loc_BD9
                bcf     byte_2D, 1
                bsf     byte_2C, 3
loc_BD9:                           
                btfss   PORTA, RA5
                 bsf     byte_29, 7
                movfw   byte_4F
                skpz
                 decfsz  byte_4F, f
                 b       loc_BE0
                bsf     byte_2B, 6
loc_BE0:                           
                movfw   byte_3F
                skpz
                 decf    byte_3F, f
                movfw   byte_4A
                skpz
                 decf    byte_4A, f
                movfw   byte_43
                btfss   byte_2C, 4
                 bz      loc_BF1
                btfss   byte_43, 1
                 bcf     PORTB, RB3
                btfsc   byte_43, 1
                 bsf     PORTB, RB3
                decfsz  byte_43, f
                 b       loc_BF1
                bcf     PORTB, RB3
loc_BF1:                           
                movfw   byte_44
                bz      loc_BFA
                decf    byte_44, f
                btfss   byte_44, 0
                 b       loc_BFA
                movlw   0x32
                movwf   byte_4D
                bsf     PORTC, RC5
loc_BFA:                           
                movfw   byte_7E
                skpz
                 decfsz  byte_7E, f
                 b       loc_C00
                bsf     byte_73, 0
                bsf     byte_2B, 0
loc_C00:                           
                decfsz  byte_46, f
                 b       loc_C21
                movlw   0x96
                movwf   byte_46
                movfw   byte_4B
                skpz
                 decf    byte_4B, f
                bsf     STATUS, RP0
; assume bank = 1
                movfw   byte_AA
                bz      loc_C0D
                decfsz  byte_AA, f
                 b       loc_C0F
loc_C0D:                           
                bcf     STATUS, RP0
; assume bank = 0
                bcf     byte_2A, 3
; assume bank = 1
loc_C0F:                           
                bcf     STATUS, RP0
; assume bank = 0
                btfss   byte_28, 7
                 b       loc_C21
                movfw   byte_48
                skpz
                 decfsz  byte_47, f
                 b       loc_C21
                movlw   0x78
                movwf   byte_47
                movfw   byte_48
                skpz
                 decfsz  byte_48, f
                 b       loc_C21
                bsf     STATUS, RP0
; assume bank = 1
                movfw   byte_AB
                bcf     STATUS, RP0
; assume bank = 0
                movwf   byte_48
                bsf     byte_28, 5
loc_C21:                           
                btfss   byte_2C, 5
                 bcf     PCLATH, 3
; assume pclath = 0
                return

; assume bank = 1
; assume pclath = 8
; =============== S U B R O U T I N E =======================================
sub_C24:                           
                bsf     STATUS, RP0
                movlw   2
                movwf   ADCON1
                bcf     STATUS, RP0
; assume bank = 0
loc_C28:                           
                movlw   0x51
                movwf   ADCON0
                call    sub_E72
                bsf     ADCON0, GO_DONE
loc_C2C:                           
                btfsc   ADCON0, GO_DONE
                 b       loc_C2C
                movfw   ADRES
                bsf     STATUS, RP0
; assume bank = 1
                addwf   byte_AD, f
                rrf     byte_AD, f
                bcf     STATUS, RP0
; assume bank = 0
                btfsc   byte_28, 3
                 b       loc_C38
                movfw   byte_7D
                bnz     loc_C28
loc_C38:                           
                clrf    ADCON0
                movlw   7
                movwf   ADCON0
                bcf     STATUS, RP0
                call    sub_AF0
                movfw   byte_7D
                bnz     sub_C24
                return
                
;==========================================================
                movfw   byte_6C
                xorlw   3
                skpz
                 return
                btfsc   byte_72, 4
                 clrz
                return
; =============== S U B R O U T I N E =======================================
sub_C48:                           
                movfw   byte_6D
                bnz     loc_C4D
                movlw   0x64
                b       loc_C51
loc_C4D:                           
                xorlw   1
                bnz     loc_F32
                movlw   0x96
loc_C51:                           
                movwf   byte_76
                bsf     PORTB, RB1
                b       loc_F32

; =============== S U B R O U T I N E =======================================
sub_C54:                           
                movfw   byte_6D
                xorlw   2
                bnz     loc_C5A
                movlw   0x64
                b       loc_C5F
loc_C5A:                           
                movfw   byte_6D
                xorlw   3
                bnz     loc_F32
                movlw   0x96
loc_C5F:                           
                movwf   byte_76
                bsf     PORTB, RB1
                b       loc_F32
;==========================================================
loc_C62:                           
                movfw   byte_77
                bnz     loc_C67
                bcf     byte_38, 6
                btfsc   byte_72, 4
loc_C67:                           
                 bsf     byte_38, 6
                btfsc   byte_72, 1
                 bsf     byte_38, 4
                btfsc   byte_72, 5
                 bsf     byte_38, 5
                btfsc   byte_2B, 6
                 btfss   byte_73, 6
                 b       loc_C75
                movfw   byte_6B
                xorlw   1
                bnz     loc_C75
                bcf     byte_38, 5
                bcf     byte_72, 5
loc_C75:                           
                btfsc   byte_72, 0
                 bsf     byte_39, 7
                btfsc   byte_28, 7
                 bsf     byte_3A, 0
                btfsc   byte_72, 3
                 bsf     byte_3A, 1
                btfsc   byte_2A, 7
                 bsf     byte_38, 7
                btfsc   byte_2A, 1
                 bsf     byte_39, 1
                tstf    byte_78
                skpnz
                 btfsc   byte_72, 7
                 bsf     byte_39, 5
                btfsc   byte_2C, 1
                 b       loc_C95
                movfw   byte_4E
                bnz     loc_C8A
                btfsc   byte_73, 1
                 bsf     byte_39, 1
loc_C8A:                           
                btfsc   byte_73, 2
                 bsf     byte_39, 0
                btfsc   byte_2D, 3
                 bsf     byte_38, 0
                btfsc   byte_2D, 2
                 bsf     byte_38, 2
                btfsc   byte_2D, 0
                 bsf     byte_38, 3
                btfsc   byte_2D, 1
                 bsf     byte_3A, 2
                b       loc_F32
loc_C95:                           
                btfsc   byte_2D, 7
                 bsf     byte_38, 0
                btfsc   byte_2D, 6
                 bsf     byte_38, 2
                btfsc   byte_2D, 4
                 bsf     byte_38, 3
                btfsc   byte_2D, 5
                 bsf     byte_3A, 2
                b       loc_F32
;==========================================================
loc_C9E:                           
                btfsc   byte_72, 5
                 b       loc_F32
                bsf     byte_72, 5

; =============== S U B R O U T I N E =======================================
sub_CA1:                           
                bsf     PORTD, RD7
                movfw   byte_68
                call    sub_836
                movwf   byte_40
                b       loc_F32

; =============== S U B R O U T I N E =======================================
sub_CA6:                           
                movlw   3
                movwf   byte_26
loc_CA8:                           
                btfsc   byte_2A, 6
                 b       loc_CAC
                btfsc   PORTE, RE1
                 b       loc_CB3
loc_CAC:                           
                btfsc   PORTC, RC3
                 btfsc   byte_2D, 0
                 b       loc_CB3
                btfsc   PORTC, RC0
                 b       loc_CB3
                setz
                b       loc_F32
loc_CB3:                           
                call    sub_D9B
                decfsz  byte_26, f
                 b       loc_CA8
                clrz
                b       loc_F32
;==========================================================
loc_CB8:                           
                movlw   3
                movwf   byte_26
loc_CBA:                           
                btfsc   PORTB, RB6
                 b       loc_CBF
                btfsc   PORTA, RA4
                 b       loc_CC4
                bcf     byte_2A, 7
loc_CBF:                           
                btfss   byte_2D, 0
                 btfsc   PORTC, RC0
                 b       loc_CC4
                clrz
                b       loc_F32
loc_CC4:                           
                call    sub_AF0
                call    sub_D9B
                decfsz  byte_26, f
                 b       loc_CBA
                setz
                b       loc_F32
;==========================================================
loc_CCA:                           
                movlw   3
                movwf   byte_26
loc_CCC:                           
                btfss   byte_2D, 0
                 btfsc   PORTC, RC0
                 b       loc_CD1
                clrz
                b       loc_F32
loc_CD1:                           
                call    sub_AF0
                call    sub_D9B
                decfsz  byte_26, f
                 b       loc_CCC
                setz
                b       loc_F32
;==========================================================
loc_CD7:                           
                btfsc   byte_2A, 3
                 b       loc_F32
                bsf     STATUS, RP0
; assume bank = 1
                movlw   4
                movwf   ADCON1
                bcf     STATUS, RP0
; assume bank = 0
                movlw   0x41
                btfsc   byte_2B, 4
                 movlw   0x59
                movwf   ADCON0
                call    sub_E72
                bsf     ADCON0, GO_DONE
loc_CE3:                           
                btfsc   ADCON0, GO_DONE
                 b       loc_CE3
                clrf    ADCON0
                bsf     STATUS, RP0
; assume bank = 1
                movlw   7
                movwf   ADCON1
                bcf     STATUS, RP0
; assume bank = 0
                movfw   ADRES
                sublw   0xFA
                bc      loc_CF0
                bcf     byte_72, 3
                b       loc_F32
loc_CF0:                           
                movfw   byte_61
                call    sub_818
                btfsc   byte_2B, 4
                 addlw   0xD
                subwf   ADRES, w
                bnc     loc_F32
                btfss   byte_2A, 3
                 bsf     byte_28, 6
                b       loc_F32
;==========================================================
loc_CFA:                           
                movlw   0x40
                movwf   byte_7D
                call    sub_C24
                bsf     STATUS, RP0
; assume bank = 1
                movfw   byte_AD
                movwf   byte_AC
                movlw   0x1A
                addwf   byte_AC, w
                skpnc
                 movlw   0xFF
                movwf   byte_AC
                bcf     STATUS, RP0
; assume bank = 0
                bsf     byte_29, 6
                b       loc_F32
;==========================================================
loc_D08:                           
                movlw   0x40
                movwf   byte_7D
                bsf     STATUS, RP0
; assume bank = 1
                movfw   byte_AC
                movwf   byte_AD
                call    sub_C24
                bsf     STATUS, RP0
                movfw   byte_AC
                subwf   byte_AD, w
                bcf     STATUS, RP0
; assume bank = 0
                b       loc_F32
;==========================================================
loc_D13:                           
                bcf     byte_29, 4
                bcf     byte_29, 3
                movlw   0x80
                movwf   byte_7D
                bcf     byte_29, 1
loc_D18:                           
                btfsc   byte_29, 1
                 b       loc_D22
loc_D1A:                           
                call    sub_AF0
                movfw   byte_7D
                bz      loc_D57
                btfsc   PORTA, RA1
                 b       loc_D18
                bsf     byte_29, 1
                b       loc_D1A
loc_D22:                           
                bcf     byte_29, 1
                clrf    byte_7B
                clrf    byte_7C
loc_D25:                           
                btfsc   byte_29, 1
                 b       loc_D31
loc_D27:                           
                incfsz  byte_7C, f
                 b       loc_D2D
                incf    byte_7B, f
                movfw   byte_7D
                bz      loc_D57
loc_D2D:                           
                btfsc   PORTA, RA1
                 b       loc_D25
                bsf     byte_29, 1
                b       loc_D27
loc_D31:                           
                call    sub_AF0
                movfw   byte_7B
                movwf   byte_74
                movfw   byte_7C
                movwf   byte_75
                clrc
                rrf     byte_7B, f
                rrf     byte_7C, f
                clrc
                rrf     byte_7B, f
                rrf     byte_7C, f
                btfsc   byte_2A, 4
                 b       loc_D46
                movfw   byte_7C
                subwf   byte_75, f
                skpc
                 decf    byte_74, f
                movfw   byte_7B
                subwf   byte_74, f
                bsf     byte_72, 2
                b       loc_F32
loc_D46:                           
                movfw   byte_7C
                addwf   byte_75, f
                bnc     loc_D4E
                movlw   1
                addwf   byte_74, f
                bc      loc_D52
loc_D4E:                           
                movfw   byte_7B
                addwf   byte_74, f
                bnc     loc_D55
loc_D52:                           
                movlw   0xFF
                movwf   byte_74
                movwf   byte_75
loc_D55:                           
                bsf     byte_72, 2
                b       loc_F32
loc_D57:                           
                bsf     byte_29, 3
                b       loc_F32
;==========================================================
loc_D59:                           
                bcf     byte_29, 4
                movlw   0x80
                movwf   byte_7D
                bcf     byte_29, 1
                b       loc_D62
;=========================================================
loc_D5E:                           
                bcf     byte_29, 4
                movlw   0x40
                movwf   byte_7D
                bcf     byte_29, 1
loc_D62:                           
                btfsc   byte_29, 1
                 b       loc_D6C
loc_D64:                           
                call    sub_AF0
                movfw   byte_7D
                bz      loc_F32
                btfsc   PORTA, RA1
                 b       loc_D62
                bsf     byte_29, 1
                b       loc_D64
loc_D6C:                           
                bcf     byte_29, 1
                clrf    byte_7B
                clrf    byte_7C
loc_D6F:                           
                btfsc   byte_29, 1
                 b       loc_D7B
loc_D71:                           
                incfsz  byte_7C, f
                 b       loc_D77
                incf    byte_7B, f
                movfw   byte_7D
                bz      loc_F32
loc_D77:                           
                btfsc   PORTA, RA1
                 b       loc_D6F
                bsf     byte_29, 1
                b       loc_D71
loc_D7B:                           
                call    sub_AF0
                movfw   byte_74
                subwf   byte_7B, w
                bz      loc_D83
                skpc
                 bsf     byte_29, 4
                b       loc_F32
loc_D83:                           
                movfw   byte_75
                subwf   byte_7C, w
                skpc
                 bsf     byte_29, 4
                b       loc_F32
;==========================================================
loc_D88:                           
                bcf     byte_29, 4
                movlw   0x40
                movwf   byte_7D
                bcf     byte_29, 1
loc_D8C:                           
                btfsc   byte_29, 1
                 b       loc_D96
loc_D8E:                           
                call    sub_AF0
                movfw   byte_7D
                bz      loc_F32
                btfsc   PORTA, RA1
                 b       loc_D8C
                bsf     byte_29, 1
                b       loc_D8E
loc_D96:                           
                bsf     byte_29, 4
                bcf     byte_29, 3
                b       loc_F32

; =============== S U B R O U T I N E =======================================
sub_D99:                           
                movlw   0
                b       loc_D9C

; =============== S U B R O U T I N E =======================================
sub_D9B:                           
                movlw   0x80
loc_D9C:                           
                movwf   byte_23
                clrf    byte_24
                call    sub_AF0
loc_D9F:                           
                decfsz  byte_24, f
                 b       loc_D9F
                decfsz  byte_23, f
                 b       loc_D9F
                return
;==========================================================
loc_DA4:                           
                bsf     byte_39, 3
                bsf     byte_39, 2
loc_DA6:                           
                bcf     byte_2A, 7
                movlw   0xF
                andwf   PORTB, f
                movlw   0x19
                movwf   byte_4A
                bcf     byte_73, 7
                bcf     byte_28, 4
                clrf    byte_4B
                bcf     PORTD, RD2
                bcf     PORTC, RC5
                btfsc   byte_72, 4
                 b       loc_F32
                bcf     PORTC, RC2
                b       loc_A23
;============================================================================
loc_DB4:                           
                movlw   0x32
                movwf   byte_49
loc_DB6:                           
                call    sub_E87
                bsf     PCLATH, 3
                btfss   byte_29, 2
                 b       loc_DDB
                btfsc   byte_37, 5
                 movlw   1
                btfsc   byte_37, 6
                 movlw   2
                btfsc   byte_37, 7
                 movlw   4
                btfsc   byte_37, 4
                 movlw   0xC
                movwf   byte_48
                movfw   byte_48
                bsf     STATUS, RP0
; assume bank = 1
                movwf   byte_AB
                bcf     STATUS, RP0
; assume bank = 0
                btfsc   byte_37, 5
                 movlw   0
                btfsc   byte_37, 6
                 movlw   1
                btfsc   byte_37, 7
                 movlw   2
                btfsc   byte_37, 4
                 movlw   3
                call    sub_A39
                movlw   8
                movwf   byte_3A
                movlw   0xF0
                movwf   byte_38
                swapf   byte_48, w
                btfsc   byte_37, 4
                 movlw   0x21
                movwf   byte_39
                call    loc_907
                call    loc_869
                bsf     PCLATH, 3
loc_DDB:                           
                decfsz  byte_49, f
                 b       loc_DB6
                b       loc_F32
;============================================================================
loc_DDE:                           
                bcf     byte_2A, 4
                movfw   byte_63
                xorlw   2
                skpnz
                 bsf     byte_2A, 4
                b       loc_F32

; =============== S U B R O U T I N E =======================================
sub_DE4:                           
                btfsc   byte_72, 0
                 b       loc_F32
                movfw   byte_69
                sublw   1
                bc      loc_DEC
                movlw   0x96
                movwf   byte_7E
loc_DEC:                           
                btfsc   PORTE, RE1
                 b       loc_F32
                movfw   byte_6B
                xorlw   1
                bz      loc_DF6
                movfw   byte_6B
                xorlw   2
                bnz     loc_F32
loc_DF6:                           
                bsf     byte_73, 6
                bcf     byte_2B, 3
                b       loc_F32
;==========================================================
loc_DF9:                           
                bcf     byte_2C, 5
                movlw   0xA0
                xorwf   byte_37, w
                bnz     loc_E00
                bsf     byte_72, 7
                b       loc_F32
loc_E00:                           
                bcf     byte_37, 0
                movlw   0x40
                xorwf   byte_37, w
                b       loc_F32
;==========================================================
loc_E04:                           
                bcf     byte_37, 0
                movlw   0x20
                xorwf   byte_37, w
                b       loc_F32
;==========================================================
loc_E08:                           
                swapf   byte_26, w
loc_E09:                           
                addlw   0x10
                movwf   byte_24
                movlw   0xF
                andwf   byte_3A, f
                movfw   byte_24
                iorwf   byte_3A, f
loc_E0F:                           
                movlw   1
                movwf   byte_26
                movlw   0xA
loc_E12:                           
                b       loc_E2D
;==========================================================
loc_E13:                           
                movlw   1
                movwf   byte_26
                movlw   0x46
                b       loc_E2D
;==========================================================
loc_E17:                           
                movlw   5
                movwf   byte_26
                b       loc_E2C
;==========================================================
loc_E1A:                           
                bcf     PIR1, TMR2IF
                bsf     STATUS, RP0
; assume bank = 1
                bsf     TRISE, TRISE2
                bsf     PIE1, TMR2IE
                bcf     STATUS, RP0
; assume bank = 0
                movlw   2
                movwf   byte_25
loc_E21:                           
                bcf     PCLATH, 3
; assume pclath = 0
                call    sub_6D
                bsf     PCLATH, 3
; assume pclath = 8
                btfsc   byte_29, 2
                 b       loc_E5F
                btfss   PORTA, RA4
                 b       loc_E2A
                btfsc   INTCON, INTF
                 b       loc_E5F
loc_E2A:                           
                decfsz  byte_25, f
                 b       loc_E21
;============================================================
loc_E2C:                           
                movlw   4
loc_E2D:                           
                movwf   byte_21
                bcf     byte_29, 2
                bcf     PORTE, RE2
                bsf     STATUS, RP0
                bcf     TRISE, TRISE2
                bcf     PIE1, TMR2IE
                bcf     STATUS, RP0
loc_E34:                           
                movlw   0x30
                movwf   byte_25
                movlw   6
                movwf   byte_22
loc_E38:                           
                bsf     PORTE, RE2
                call    sub_E68
                bcf     PORTE, RE2
                call    sub_E68
                decfsz  byte_22, f
                 b       loc_E38
loc_E3E:                           
                rrf     byte_3D, f
loc_E3F:                           
                rrf     byte_3A, f
loc_E40:                           
                rrf     byte_39, f
                rrf     byte_38, f
                rrf     byte_3C, f
                rrf     byte_3B, f
                bc      loc_E4C
                bsf     PORTE, RE2
                call    sub_E70
                bcf     byte_3D, 7
                bcf     PORTE, RE2
                call    sub_E6E
                b       loc_E51
loc_E4C:                           
                bsf     PORTE, RE2
                call    sub_E6C
                bsf     byte_3D, 7
                bcf     PORTE, RE2
                call    sub_E6A
loc_E51:                           
                decfsz  byte_25, f
                 b       loc_E3E
                bsf     PORTE, RE2
                call    sub_AF0
                btfss   PORTA, RA4
                 b       loc_E59
                btfsc   INTCON, INTF
                 b       loc_E5F
loc_E59:                           
                decfsz  byte_21, f
                 b       loc_E34
                call    sub_E68
                bcf     PORTE, RE2
                decfsz  byte_26, f
                 b       loc_E1A
loc_E5F:                           
                bcf     PIR1, TMR2IF
                bsf     STATUS, RP0
                bsf     TRISE, TRISE2
                bsf     PIE1, TMR2IE
                bcf     STATUS, RP0
                clrf    byte_38
                clrf    byte_39
                clrf    byte_3A
loc_E67:                           
                b       loc_F32

; =============== S U B R O U T I N E =======================================
sub_E68:                           
                movlw   0xC7
                b       loc_E75

; =============== S U B R O U T I N E =======================================
sub_E6A:                           
                movlw   0x61
                b       loc_E75

; =============== S U B R O U T I N E =======================================
sub_E6C:                           
                movlw   0x63
loc_E6D:                           
                b       loc_E75

; =============== S U B R O U T I N E =======================================
sub_E6E:                           
                movlw   0x2F
                b       loc_E75

; =============== S U B R O U T I N E =======================================
sub_E70:                           
                movlw   0x31
                b       loc_E75

; =============== S U B R O U T I N E =======================================
sub_E72:                           
                movlw   1
                nop
                nop
loc_E75:                           
                movwf   byte_24
loc_E76:                           
                nop
                nop
                decfsz  byte_24, f
                 b       loc_E76
                return
;============================================================================
loc_E7B:                           
                movlw   2
                movwf   byte_25
loc_E7D:                           
                bcf     PCLATH, 3
                call    sub_6D
                bsf     PCLATH, 3
                btfsc   byte_29, 2
                 b       loc_E7B
                decfsz  byte_25, f
                 b       loc_E7D
                b       loc_F32
;============================================================================
loc_E85:                           
                bsf     byte_2C, 7
                btfss   byte_2C, 7

; =============== S U B R O U T I N E =======================================
sub_E87:                           
                 bcf     byte_2C, 7
                bcf     byte_29, 2
                movlw   7
                movwf   byte_22
loc_E8B:                           
                movlw   0x19
                movwf   byte_7D
loc_E8D:                           
                call    sub_AF0
                movlw   0x40
                movwf   byte_21
                bcf     byte_29, 0
                bcf     byte_29, 1
                clrf    byte_7C
                btfsc   INTCON, INTF
                 b       loc_F30
                movfw   byte_7D
                bz      loc_F30
                movlw   2
                movwf   byte_7F
loc_E9A:                           
                nop
                nop
                decfsz  byte_7C, f
                 b       loc_E9F
                b       loc_E8D
loc_E9F:                           
                btfsc   PORTE, RE2
                 b       loc_EAC
                movlw   2
                movwf   byte_7F
                movfw   byte_7D
                bz      loc_F30
loc_EA6:                           
                movlw   0x9C
                subwf   byte_7C, w
                skpc
                 bsf     byte_29, 0
                b       loc_EAB
loc_EAB:                           
                b       loc_E9A
loc_EAC:                           
                nop
                decfsz  byte_7F, f
                 b       loc_EA6
                btfss   byte_29, 0
                 b       loc_E8D
loc_EB1:                           
                movlw   0x78
                movwf   byte_7B
loc_EB3:                           
                nop
                decfsz  byte_7B, f
                 b       loc_EB7
                b       loc_E8D
loc_EB7:                           
                btfss   PORTE, RE2
                 b       loc_EBC
                movlw   5
                movwf   byte_7F
                b       loc_EB3
loc_EBC:                           
                decfsz  byte_7F, f
                 b       loc_EB3
                btfsc   INTCON, INTF
                 b       loc_F30
                btfsc   byte_29, 1
                 b       loc_EC5
                movfw   byte_7D
                bz      loc_F30
loc_EC5:                           
                movlw   0x78
                movwf   byte_7C
loc_EC7:                           
                nop
                decfsz  byte_7C, f
                 b       loc_ECB
                b       loc_E8D
loc_ECB:                           
                btfsc   PORTE, RE2
                 b       loc_ED0
                movlw   5
                movwf   byte_7F
                b       loc_EC7
loc_ED0:                           
                decfsz  byte_7F, f
                 b       loc_EC7
                movfw   byte_7C
                subwf   byte_7B, w
                rrf     byte_37, f
                rrf     byte_36, f
                rrf     byte_35, f
                rrf     byte_34, f
                rrf     byte_33, f
                rrf     byte_32, f
                rrf     byte_31, f
                rrf     byte_30, f
                bsf     byte_29, 1
                decfsz  byte_21, f
                 b       loc_EB1
                btfss   byte_2C, 7
                 b       loc_EE3
                bsf     byte_29, 2
                b       loc_F32
loc_EE3:                           
                movfw   byte_70
                bz      loc_EEA
                movlw   5
                subwf   byte_70, w
                bnc     loc_EEC
loc_EEA:                           
                movlw   1
                movwf   byte_70
loc_EEC:                           
                movfw   byte_70
                movwf   byte_21
                movlw   byte_50
                movwf   FSR
loc_EF0:                           
                bcf     byte_29, 0
                movfw   byte_34
                xorwf   INDF, w
                skpz
                 bsf     byte_29, 0
                incf    FSR, f
                movfw   byte_35
                xorwf   INDF, w
                skpz
                 bsf     byte_29, 0
                incf    FSR, f
                movfw   byte_36
                xorwf   INDF, w
                skpz
                 bsf     byte_29, 0
                incf    FSR, f
                movfw   byte_37
                andlw   0xF
                xorwf   INDF, w
                skpz
                 bsf     byte_29, 0
                btfss   byte_29, 0
                 b       loc_F0B
                incf    FSR, f
                decfsz  byte_21, f
                 b       loc_EF0
                b       loc_E8D
loc_F0B:                           
                bsf     byte_29, 2
                movfw   byte_34
                movwf   byte_3B
                movfw   byte_35
                movwf   byte_3C
                movfw   byte_36
                movwf   byte_3D
                movfw   byte_37
                andlw   0F
                movwf   byte_3E
                movlw   0xF0
                andwf   byte_37, f
                movfw   byte_37
                movwf   byte_23
                movfw   byte_30
                bsf     STATUS, RP0
                movwf   byte_B0
                bcf     STATUS, RP0
                movfw   byte_31
                bsf     STATUS, RP0
                movwf   byte_B1
                bcf     STATUS, RP0
                movfw   byte_32
                bsf     STATUS, RP0
                movwf   byte_B2
                bcf     STATUS, RP0
                movfw   byte_33
                bsf     STATUS, RP0
                movwf   byte_B3
                bcf     STATUS, RP0
                movfw   byte_21
                bsf     STATUS, RP0
                movwf   byte_A7
                bcf     STATUS, RP0
                decfsz  byte_22, f
                 b       loc_E8B
                bsf     byte_23, 0
loc_F30:                           
                movfw   byte_23
                movwf   byte_37
loc_F32:                           
                bcf     PCLATH, 3
; assume pclath = 0
                return
;======================================================
loc_F34:                           
                clrf    PORTA
                clrf    PORTB
                clrf    PORTC
                clrf    PORTD
                clrf    PORTE
                bsf     STATUS, RP0
; assume bank = 1
                movlw   0xFF
                movwf   TRISA
                movlw   1
                movwf   TRISB
                movlw   0xB
                movwf   TRISC
                movlw   3
                movwf   TRISD
                movlw   7
                movwf   TRISE
                movlw   0x8F
                movwf   OPTION_REG
                movlw   0xFA
                movwf   PR2
                bcf     STATUS, RP0
; assume bank = 0
                clrf    INTCON
                clrf    PIR1
                movlw   0x5F
                movwf   byte_20
                movlw   byte_21
                movwf   FSR
loc_F4F:                           
                clrf    INDF
                incf    FSR, f
                decfsz  byte_20, f
                 b       loc_F4F
                movlw   3
                movwf   byte_7A
                movlw   0x96
                movwf   byte_46
                movlw   0x78
                movwf   byte_47
                movlw   9
                movwf   byte_42
                movlw   0xA8
                movwf   CCPR1L
                movlw   0x61
                movwf   CCPR1H
                movlw   0x31
                movwf   T1CON
                movlw   0x7C
                movwf   T2CON
                movlw   0B
                movwf   CCP1CON
                bsf     STATUS, RP0
; assume bank = 1
                movlw   0x50
                movwf   INTCON
                movlw   7
                movwf   PIE1
                movlw   7
                movwf   ADCON1
                bcf     STATUS, RP0
; assume bank = 0
                bcf     PCLATH, 3
; assume pclath = 0
                b       loc_13B
; assume pclath = 8
loc_F6F:                           
                movlw   0x13
                movwf   byte_25
                movlw   byte_50
                movwf   FSR
                clrf    byte_26
                call    sub_A7A
                movlw   0x33
                xorwf   byte_71, w
                bz      loc_F9A
loc_F79:                           
                movlw   1
                movwf   byte_60
                movlw   1
                movwf   byte_61
                clrf    byte_62
                clrf    byte_63
                clrf    byte_64
                clrf    byte_65
                clrf    byte_66
                clrf    byte_67
                clrf    byte_68
                clrf    byte_69
                clrf    byte_6A
                clrf    byte_6B
                clrf    byte_6C
                clrf    byte_6D
                clrf    byte_6E
                clrf    byte_6F
                movlw   0x33
                movwf   byte_71
                movlw   2
                movwf   byte_70
                clrf    byte_72
                clrf    byte_73
                movlw   8
                movwf   byte_26
                movlw   0xA
                movwf   byte_25
                movlw   byte_60
                movwf   FSR
                bsf     byte_2B, 0
                call    sub_A9E
                bsf     PCLATH, 3
loc_F9A:                           
                movfw   byte_50
                movwf   byte_3B
                movfw   byte_51
                movwf   byte_3C
                movfw   byte_52
                movwf   byte_3D
                movfw   byte_53
                movwf   byte_3E
                movlw   7
                andwf   byte_73, f
                bcf     PCLATH, 3
; assume pclath = 0
                b       loc_144
; assume pclath = 8
loc_FA6:                           
                movfw   byte_34
                subwf   byte_3B, w
                bnz     loc_FB6
                movfw   byte_35
                subwf   byte_3C, w
                bnz     loc_FB6
                movfw   byte_36
                subwf   byte_3D, w
                bnz     loc_FB6
                movfw   byte_37
                subwf   byte_3E, w
                bz      loc_FC0
loc_FB6:                           
                movlw   5
                movwf   byte_26
                movfw   byte_34
                movwf   byte_3B
                movfw   byte_35
                movwf   byte_3C
                movfw   byte_36
                movwf   byte_3D
                movfw   byte_37
                movwf   byte_3E
loc_FC0:                           
                bcf     PCLATH, 3
; assume pclath = 0
                b       loc_64B
; assume pclath = 8
loc_FC2:                           
                movlw   0x11
                movwf   byte_26
                movlw   1
                movwf   byte_25
                movlw   byte_72
                movwf   FSR
                bsf     byte_2B, 0
                call    sub_A9E
                b       loc_94C
loc_FCB:                           
                movlw   7
                andwf   byte_4C, f
                movfw   byte_4C
                movwf   byte_70
                incf    byte_70, f
                call    sub_83C
                movwf   FSR
                movwf   byte_23
                movfw   byte_3B
                movwf   INDF
                incf    FSR, f
                movfw   byte_3C
                movwf   INDF
                incf    FSR, f
                movfw   byte_3D
                movwf   INDF
                incf    FSR, f
                movfw   byte_3E
                movwf   INDF
                clrc
                rlf     byte_4C, w
                movwf   byte_26
                movfw   byte_23
                movwf   FSR
                movlw   2
                movwf   byte_25
                bsf     byte_2B, 0
                call    sub_A9E
                bsf     PCLATH, 3
                movlw   byte_70
                movwf   FSR
                movlw   0x10
                movwf   byte_26
                movlw   1
                movwf   byte_25
                bsf     byte_2B, 0
                call    sub_A9E
                b       loc_E67
loc_FF1:                           
                btfsc   byte_2B, 3
                 b       loc_FFB
                movlw   8
                movwf   byte_26
                movlw   8
                movwf   byte_25
                movlw   byte_60
                movwf   FSR
                bsf     byte_2B, 0
                call    sub_A9E
loc_FFB:                           
                bcf     PCLATH, 3
                b       loc_7CF
;=============================================================================

		end


