//////////////////////////////////////////////////////////////////////////////
//                                                                           /
// IAR ARM ANSI C/C++ Compiler V4.41A/W32 EVALUATION   14/Feb/2008  19:04:02 /
// Copyright 1999-2005 IAR Systems. All rights reserved.                     /
//                                                                           /
//    Cpu mode        =  interwork                                           /
//    Endian          =  little                                              /
//    Stack alignment =  4                                                   /
//    Source file     =  D:\Pasha\elf\_MY_PROJECT\AltIdleScr\main.c          /
//    Command line    =  D:\Pasha\elf\_MY_PROJECT\AltIdleScr\main.c -D       /
//                       NEWSGLOD --preprocess D:\Pasha\elf\_MY_PROJECT\AltI /
//                       dleScr\Release_ELKA\List\ -lC                       /
//                       D:\Pasha\elf\_MY_PROJECT\AltIdleScr\Release_ELKA\Li /
//                       st\ -lA D:\Pasha\elf\_MY_PROJECT\AltIdleScr\Release /
//                       _ELKA\List\ -o D:\Pasha\elf\_MY_PROJECT\AltIdleScr\ /
//                       Release_ELKA\Obj\ -s9 --no_unroll --cpu_mode arm    /
//                       --endian little --cpu ARM926EJ-S --stack_align 4    /
//                       --interwork -e --fpu None --dlib_config             /
//                       "D:\Pasha\ARM_Embedded_Workbench\Embedded           /
//                       Workbench 4.0 Evaluation\ARM\LIB\dl5tpainl8n.h" -I  /
//                       "D:\Pasha\ARM_Embedded_Workbench\Embedded           /
//                       Workbench 4.0 Evaluation\ARM\INC\"                  /
//                       --inline_threshold=2                                /
//    List file       =  D:\Pasha\elf\_MY_PROJECT\AltIdleScr\Release_ELKA\Li /
//                       st\main.s79                                         /
//                                                                           /
//                                                                           /
//////////////////////////////////////////////////////////////////////////////

        NAME main

        RTMODEL "StackAlign4", "USED"
        RTMODEL "__cpu_mode", "__pcs__interwork"
        RTMODEL "__data_model", "absolute"
        RTMODEL "__endian", "little"
        RTMODEL "__rt_version", "6"

        RSEG CSTACK:DATA:NOROOT(2)

        EXTERN ??div32_a

        PUBWEAK `?*?DATA_ID`
        MULTWEAK ??AddToFList??rT
        MULTWEAK ??BG1??rT
        MULTWEAK ??BG3??rT
        MULTWEAK ??CreateRootMenu??rT
??DataTable0 EQU 0
??DataTable1 EQU 0
??DataTable10 EQU 0
??DataTable11 EQU 0
??DataTable12 EQU 0
??DataTable13 EQU 0
??DataTable17 EQU 0
??DataTable18 EQU 0
??DataTable19 EQU 0
??DataTable20 EQU 0
??DataTable21 EQU 0
??DataTable23 EQU 0
??DataTable24 EQU 0
??DataTable25 EQU 0
??DataTable28 EQU 0
??DataTable29 EQU 0
??DataTable3 EQU 0
??DataTable30 EQU 0
??DataTable34 EQU 0
??DataTable35 EQU 0
??DataTable36 EQU 0
??DataTable37 EQU 0
??DataTable39 EQU 0
??DataTable4 EQU 0
??DataTable42 EQU 0
??DataTable43 EQU 0
??DataTable45 EQU 0
??DataTable46 EQU 0
??DataTable47 EQU 0
??DataTable48 EQU 0
??DataTable52 EQU 0
??DataTable53 EQU 0
??DataTable54 EQU 0
??DataTable55 EQU 0
??DataTable56 EQU 0
??DataTable7 EQU 0
??DataTable8 EQU 0
??DataTable9 EQU 0
        MULTWEAK ??DrawBG??rT
        MULTWEAK ??DrawBar??rT
        MULTWEAK ??DrawBattCap??rT
        MULTWEAK ??DrawBattExt??rT
        MULTWEAK ??DrawBattStd??rT
        MULTWEAK ??DrawBattVolt??rT
        MULTWEAK ??DrawClock??rT
        MULTWEAK ??DrawContur_h??rT
        MULTWEAK ??DrawContur_w??rT
        MULTWEAK ??DrawCross??rT
        MULTWEAK ??DrawDialogs??rT
        MULTWEAK ??DrawFreeMamory??rT
        MULTWEAK ??DrawFreeRam??rT
        MULTWEAK ??DrawIconBar??rT
        MULTWEAK ??DrawLineCross??rT
        MULTWEAK ??DrawMenu??rT
        MULTWEAK ??DrawName??rT
        MULTWEAK ??DrawNameContr??rT
        MULTWEAK ??DrawNameMenu??rT
        MULTWEAK ??DrawNetAdv??rT
        MULTWEAK ??DrawNetDb??rT
        MULTWEAK ??DrawNetExt??rT
        MULTWEAK ??DrawNetStd??rT
        MULTWEAK ??DrawPanel_h??rT
        MULTWEAK ??DrawPanel_w??rT
        MULTWEAK ??DrawPusk??rT
        MULTWEAK ??DrawStrChar??rT
        MULTWEAK ??DrawStrInt??rT
        MULTWEAK ??DrawSysBar??rT
        MULTWEAK ??DrawWorkDesc??rT
        MULTWEAK ??ElfKiller??rT
        MULTWEAK ??FindFLISTtByN??rT
        MULTWEAK ??FindFLISTtByNS??rT
        MULTWEAK ??FindFiles??rT
        MULTWEAK ??FindSizeInSubDir??rT
        MULTWEAK ??Free_FLIST??rT
        MULTWEAK ??GetFListN??rT
        MULTWEAK ??GetFoldersLevel??rT
        MULTWEAK ??LoadAllConfig??rT
        MULTWEAK ??LoadParamsConfig??rT
        MULTWEAK ??LoadParamsCrd??rT
        MULTWEAK ??LoadParamsMENU??rT
        MULTWEAK ??LoadParamsPanel??rT
        MULTWEAK ??OnKey??rT
        MULTWEAK ??OnRedraw??rT
        MULTWEAK ??QuitCallbackProc??rT
        MULTWEAK ??SaveNameMENU??rT
        MULTWEAK ??SaveNamePanel??rT
        MULTWEAK ??SaveParamsConfig??rT
        MULTWEAK ??SavePath??rT
        MULTWEAK ??SizeDir??rT
        MULTWEAK ??StartFileMenu??rT
        MULTWEAK ??StartFilePanel_h??rT
        MULTWEAK ??StartFilePanel_w??rT
        MULTWEAK ??StartFilePusk??rT
        MULTWEAK ??TimerProc??rT
        MULTWEAK ??UpdateCSMname??rT
        MULTWEAK ??atoi??rT
        MULTWEAK ??filelist_menu_ghook??rT
        MULTWEAK ??filelist_menu_iconhndl??rT
        MULTWEAK ??filelist_menu_onkey??rT
        MULTWEAK ??kill_data??rA
        MULTWEAK ??main??rT
        MULTWEAK ??maincsm_onclose??rT
        MULTWEAK ??maincsm_oncreate??rT
        MULTWEAK ??maincsm_onmessage??rT
        MULTWEAK ??method8??rT
        MULTWEAK ??method9??rT
        MULTWEAK ??onClose??rT
        MULTWEAK ??onCreate??rT
        MULTWEAK ??onFocus??rT
        MULTWEAK ??onUnfocus??rT
        MULTWEAK ??open_fm??rT
        MULTWEAK ??process??rT
        MULTWEAK ??processmenu??rT
        MULTWEAK ??rA??div32_a
        MULTWEAK ??shortcut??rT
        MULTWEAK ??start??rT
        MULTWEAK ??start_vibra??rT
        MULTWEAK ??stop_vibra??rT
        MULTWEAK ??strcmp_nocase??rT
        PUBWEAK ?init?tab?DATA_I
        PUBWEAK ?init?tab?DATA_Z
        PUBLIC AddToFList
        FUNCTION AddToFList,0203H
        LOCFRAME CSTACK, 20, STACK
        PUBLIC BG1
        FUNCTION BG1,0201H
        LOCFRAME CSTACK, 8, STACK
        PUBLIC BG3
        FUNCTION BG3,0201H
        LOCFRAME CSTACK, 8, STACK
        PUBLIC CreateRootMenu
        FUNCTION CreateRootMenu,0201H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC Cross_x
        PUBLIC Cross_y
        PUBLIC DrawBG
        FUNCTION DrawBG,0201H
        LOCFRAME CSTACK, 40, STACK
        PUBLIC DrawBar
        FUNCTION DrawBar,0201H
        PUBLIC DrawBattCap
        FUNCTION DrawBattCap,0203H
        LOCFRAME CSTACK, 40, STACK
        PUBLIC DrawBattExt
        FUNCTION DrawBattExt,0203H
        LOCFRAME CSTACK, 12, STACK
        PUBLIC DrawBattStd
        FUNCTION DrawBattStd,0203H
        LOCFRAME CSTACK, 12, STACK
        PUBLIC DrawBattVolt
        FUNCTION DrawBattVolt,0203H
        LOCFRAME CSTACK, 40, STACK
        PUBLIC DrawClock
        FUNCTION DrawClock,0203H
        LOCFRAME CSTACK, 64, STACK
        PUBLIC DrawContur_h
        FUNCTION DrawContur_h,0603H
        LOCFRAME CSTACK, 24, STACK
        PUBLIC DrawContur_w
        FUNCTION DrawContur_w,0603H
        LOCFRAME CSTACK, 24, STACK
        PUBLIC DrawCross
        FUNCTION DrawCross,0203H
        LOCFRAME CSTACK, 48, STACK
        PUBLIC DrawDialogs
        FUNCTION DrawDialogs,0203H
        LOCFRAME CSTACK, 44, STACK
        PUBLIC DrawFreeMamory
        FUNCTION DrawFreeMamory,0203H
        LOCFRAME CSTACK, 84, STACK
        PUBLIC DrawFreeRam
        FUNCTION DrawFreeRam,0203H
        LOCFRAME CSTACK, 40, STACK
        PUBLIC DrawIconBar
        FUNCTION DrawIconBar,0201H
        LOCFRAME CSTACK, 12, STACK
        PUBLIC DrawLineCross
        FUNCTION DrawLineCross,0203H
        LOCFRAME CSTACK, 24, STACK
        PUBLIC DrawMamory
        PUBLIC DrawMenu
        FUNCTION DrawMenu,0603H
        LOCFRAME CSTACK, 52, STACK
        PUBLIC DrawName
        FUNCTION DrawName,0203H
        LOCFRAME CSTACK, 40, STACK
        PUBLIC DrawNameContr
        FUNCTION DrawNameContr,0201H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC DrawNameMenu
        FUNCTION DrawNameMenu,0203H
        LOCFRAME CSTACK, 32, STACK
        PUBLIC DrawNetAdv
        FUNCTION DrawNetAdv,0203H
        LOCFRAME CSTACK, 48, STACK
        PUBLIC DrawNetDb
        FUNCTION DrawNetDb,0203H
        LOCFRAME CSTACK, 40, STACK
        PUBLIC DrawNetExt
        FUNCTION DrawNetExt,0203H
        LOCFRAME CSTACK, 24, STACK
        PUBLIC DrawNetStd
        FUNCTION DrawNetStd,0203H
        LOCFRAME CSTACK, 12, STACK
        PUBLIC DrawPanel_h
        FUNCTION DrawPanel_h,0601H
        LOCFRAME CSTACK, 40, STACK
        PUBLIC DrawPanel_w
        FUNCTION DrawPanel_w,0601H
        LOCFRAME CSTACK, 44, STACK
        PUBLIC DrawPusk
        FUNCTION DrawPusk,0203H
        LOCFRAME CSTACK, 80, STACK
        PUBLIC DrawPuskk
        PUBLIC DrawStrChar
        FUNCTION DrawStrChar,0203H
        LOCFRAME CSTACK, 40, STACK
        PUBLIC DrawStrInt
        FUNCTION DrawStrInt,0203H
        LOCFRAME CSTACK, 40, STACK
        PUBLIC DrawSysBar
        FUNCTION DrawSysBar,0201H
        PUBLIC DrawWorkDesc
        FUNCTION DrawWorkDesc,0201H
        LOCFRAME CSTACK, 8, STACK
        PUBLIC ElfKiller
        FUNCTION ElfKiller,0603H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC FindFLISTtByN
        FUNCTION FindFLISTtByN,0203H
        LOCFRAME CSTACK, 8, STACK
        PUBLIC FindFLISTtByNS
        FUNCTION FindFLISTtByNS,0203H
        PUBLIC FindFiles
        FUNCTION FindFiles,0203H
        LOCFRAME CSTACK, 840, STACK
        PUBLIC FindSizeInSubDir
        FUNCTION FindSizeInSubDir,0203H
        LOCFRAME CSTACK, 272, STACK
        PUBLIC Free_FLIST
        FUNCTION Free_FLIST,0203H
        LOCFRAME CSTACK, 16, STACK
        PUBLIC GetFListN
        FUNCTION GetFListN,0201H
        PUBLIC GetFoldersLevel
        FUNCTION GetFoldersLevel,0203H
        PUBLIC IMG1
        PUBLIC IMG2
        PUBLIC IMG3
        PUBLIC IMG4
        PUBLIC IMG5
        PUBLIC IMG6
        PUBLIC IRDA
        PUBLIC LoadAllConfig
        FUNCTION LoadAllConfig,0201H
        PUBLIC LoadParamsConfig
        FUNCTION LoadParamsConfig,0201H
        LOCFRAME CSTACK, 10020, STACK
        PUBLIC LoadParamsCrd
        FUNCTION LoadParamsCrd,0201H
        LOCFRAME CSTACK, 10032, STACK
        PUBLIC LoadParamsMENU
        FUNCTION LoadParamsMENU,0201H
        LOCFRAME CSTACK, 32, STACK
        PUBLIC LoadParamsPanel
        FUNCTION LoadParamsPanel,0201H
        LOCFRAME CSTACK, 36, STACK
        PUBLIC MAINCSM
        PUBLIC MAINCSM_ID
        PUBLIC MAINGUI_ID
        PUBLIC MENU1_b
        PUBLIC MENU1_s
        PUBLIC MENU2_b
        PUBLIC MENU2_s
        PUBLIC MENU3_b
        PUBLIC MENU3_s
        PUBLIC MENU4_b
        PUBLIC MENU4_s
        PUBLIC MENU5_b
        PUBLIC MENU5_s
        PUBLIC MENU6_b
        PUBLIC MENU6_s
        PUBLIC NAME
        PUBLIC NAME2
        PUBLIC NumOfItems
        PUBLIC NumOfItems2
        PUBLIC OnKey
        FUNCTION OnKey,0603H
        LOCFRAME CSTACK, 40, STACK
        PUBLIC OnRedraw
        FUNCTION OnRedraw,0603H
        LOCFRAME CSTACK, 8, STACK
        PUBLIC Pusk
        PUBLIC QuitCallbackProc
        FUNCTION QuitCallbackProc,0603H
        PUBLIC Quit_Required
        PUBLIC RED
        PUBLIC SaveNameMENU
        FUNCTION SaveNameMENU,0201H
        PUBLIC SaveNamePanel
        FUNCTION SaveNamePanel,0201H
        PUBLIC SaveParamsConfig
        FUNCTION SaveParamsConfig,0201H
        LOCFRAME CSTACK, 10024, STACK
        PUBLIC SavePath
        FUNCTION SavePath,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC SizeDir
        FUNCTION SizeDir,0203H
        LOCFRAME CSTACK, 272, STACK
        PUBLIC StartFileMenu
        FUNCTION StartFileMenu,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC StartFilePanel_h
        FUNCTION StartFilePanel_h,0201H
        LOCFRAME CSTACK, 12, STACK
        PUBLIC StartFilePanel_w
        FUNCTION StartFilePanel_w,0201H
        LOCFRAME CSTACK, 16, STACK
        PUBLIC StartFilePusk
        FUNCTION StartFilePusk,0201H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC TimerProc
        FUNCTION TimerProc,0603H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC TypeLine
        PUBLIC UpdateCSMname
        FUNCTION UpdateCSMname,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC _percent_t
        PUBLIC atoi
        FUNCTION atoi,0203H
        PUBLIC back
        PUBLIC bg3img
        PUBLIC black
        PUBLIC config
        PUBLIC coord
        PUBLIC cr_y
        PUBLIC crd
        PUBLIC descmenu
        PUBLIC dir_size
        PUBLIC err
        PUBLIC filelist_HDR
        PUBLIC filelist_STRUCT
        PUBLIC filelist_menu_ghook
        FUNCTION filelist_menu_ghook,0603H
        LOCFRAME CSTACK, 12, STACK
        PUBLIC filelist_menu_iconhndl
        FUNCTION filelist_menu_iconhndl,0603H
        LOCFRAME CSTACK, 28, STACK
        PUBLIC filelist_menu_onkey
        FUNCTION filelist_menu_onkey,0603H
        LOCFRAME CSTACK, 16, STACK
        PUBLIC fl
        PUBLIC fltop
        PUBLIC fmenu_sk
        PUBLIC fmenu_skt
        PUBLIC fmenusoftkeys
        PUBLIC gui_methods
        PUBLIC header
        PUBLIC img_x
        PUBLIC img_y
        PUBLIC kdblock
        PUBLIC main
        FUNCTION main,0a03H
        LOCFRAME CSTACK, 48, STACK
        PUBLIC maincsm_name_body
        PUBLIC maincsm_onclose
        FUNCTION maincsm_onclose,0603H
        LOCFRAME CSTACK, 8, STACK
        PUBLIC maincsm_oncreate
        FUNCTION maincsm_oncreate,0603H
        LOCFRAME CSTACK, 16, STACK
        PUBLIC maincsm_onmessage
        FUNCTION maincsm_onmessage,0603H
        PUBLIC menu
        PUBLIC menu_tmr
        PUBLIC menu_x
        PUBLIC menu_y
        PUBLIC menucfg
        PUBLIC method8
        FUNCTION method8,0603H
        PUBLIC method9
        FUNCTION method9,0603H
        PUBLIC minus11
        PUBLIC mnu
        PUBLIC moveclock
        PUBLIC mytmr
        PUBLIC name
        PUBLIC onClose
        FUNCTION onClose,0603H
        PUBLIC onCreate
        FUNCTION onCreate,0603H
        PUBLIC onFocus
        FUNCTION onFocus,0603H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC onUnfocus
        FUNCTION onUnfocus,0603H
        PUBLIC open_fm
        FUNCTION open_fm,0201H
        LOCFRAME CSTACK, 36, STACK
        PUBLIC panel
        PUBLIC panel_x
        PUBLIC panel_y
        PUBLIC per_6s
        PUBLIC per_d
        PUBLIC per_s
        PUBLIC per_t
        PUBLIC process
        FUNCTION process,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC processmenu
        FUNCTION processmenu,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC prozr
        PUBLIC pusk_y
        PUBLIC shortcut
        FUNCTION shortcut,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC size
        PUBLIC speed_cur
        PUBLIC start
        FUNCTION start,0203H
        LOCFRAME CSTACK, 12, STACK
        PUBLIC start_vibra
        FUNCTION start_vibra,0603H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC startmenu
        PUBLIC stop_vibra
        FUNCTION stop_vibra,0603H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC strcmp_nocase
        FUNCTION strcmp_nocase,0203H
        PUBLIC timer
        PUBLIC tmr_vibra
        PUBLIC typecur
        PUBLIC vibra_count
        PUBLIC white
        PUBLIC workdesctop
        
        CFI Names cfiNames0
        CFI StackFrame CFA R13 HUGEDATA
        CFI Resource R0:32, R1:32, R2:32, R3:32, R4:32, R5:32, R6:32, R7:32
        CFI Resource R8:32, R9:32, R10:32, R11:32, R12:32, CPSR:32, R13:32
        CFI Resource R14:32, SPSR:32
        CFI VirtualResource ?RET:32
        CFI EndNames cfiNames0
        
        CFI Common cfiCommon0 Using cfiNames0
        CFI CodeAlign 2
        CFI DataAlign 4
        CFI ReturnAddress ?RET CODE
        CFI CFA R13+0
        CFI R0 Undefined
        CFI R1 Undefined
        CFI R2 Undefined
        CFI R3 Undefined
        CFI R4 SameValue
        CFI R5 SameValue
        CFI R6 SameValue
        CFI R7 SameValue
        CFI R8 SameValue
        CFI R9 SameValue
        CFI R10 SameValue
        CFI R11 SameValue
        CFI R12 Undefined
        CFI CPSR SameValue
        CFI R14 Undefined
        CFI SPSR SameValue
        CFI ?RET R14
        CFI EndCommon cfiCommon0
        
        
        CFI Common cfiCommon1 Using cfiNames0
        CFI CodeAlign 4
        CFI DataAlign 4
        CFI ReturnAddress ?RET CODE
        CFI CFA R13+0
        CFI R0 Undefined
        CFI R1 Undefined
        CFI R2 Undefined
        CFI R3 Undefined
        CFI R4 SameValue
        CFI R5 SameValue
        CFI R6 SameValue
        CFI R7 SameValue
        CFI R8 SameValue
        CFI R9 SameValue
        CFI R10 SameValue
        CFI R11 SameValue
        CFI R12 Undefined
        CFI CPSR SameValue
        CFI R14 Undefined
        CFI SPSR SameValue
        CFI ?RET R14
        CFI EndCommon cfiCommon1
        
kill_data           SYMBOL "kill_data"
AddToFList          SYMBOL "AddToFList"
??AddToFList??rT    SYMBOL "??rT", AddToFList
BG1                 SYMBOL "BG1"
??BG1??rT           SYMBOL "??rT", BG1
BG3                 SYMBOL "BG3"
??BG3??rT           SYMBOL "??rT", BG3
CreateRootMenu      SYMBOL "CreateRootMenu"
??CreateRootMenu??rT SYMBOL "??rT", CreateRootMenu
DrawBG              SYMBOL "DrawBG"
??DrawBG??rT        SYMBOL "??rT", DrawBG
DrawBar             SYMBOL "DrawBar"
??DrawBar??rT       SYMBOL "??rT", DrawBar
DrawBattCap         SYMBOL "DrawBattCap"
??DrawBattCap??rT   SYMBOL "??rT", DrawBattCap
DrawBattExt         SYMBOL "DrawBattExt"
??DrawBattExt??rT   SYMBOL "??rT", DrawBattExt
DrawBattStd         SYMBOL "DrawBattStd"
??DrawBattStd??rT   SYMBOL "??rT", DrawBattStd
DrawBattVolt        SYMBOL "DrawBattVolt"
??DrawBattVolt??rT  SYMBOL "??rT", DrawBattVolt
DrawClock           SYMBOL "DrawClock"
??DrawClock??rT     SYMBOL "??rT", DrawClock
DrawContur_h        SYMBOL "DrawContur_h"
??DrawContur_h??rT  SYMBOL "??rT", DrawContur_h
DrawContur_w        SYMBOL "DrawContur_w"
??DrawContur_w??rT  SYMBOL "??rT", DrawContur_w
DrawCross           SYMBOL "DrawCross"
??DrawCross??rT     SYMBOL "??rT", DrawCross
DrawDialogs         SYMBOL "DrawDialogs"
??DrawDialogs??rT   SYMBOL "??rT", DrawDialogs
DrawFreeMamory      SYMBOL "DrawFreeMamory"
??DrawFreeMamory??rT SYMBOL "??rT", DrawFreeMamory
DrawFreeRam         SYMBOL "DrawFreeRam"
??DrawFreeRam??rT   SYMBOL "??rT", DrawFreeRam
DrawIconBar         SYMBOL "DrawIconBar"
??DrawIconBar??rT   SYMBOL "??rT", DrawIconBar
DrawLineCross       SYMBOL "DrawLineCross"
??DrawLineCross??rT SYMBOL "??rT", DrawLineCross
DrawMenu            SYMBOL "DrawMenu"
??DrawMenu??rT      SYMBOL "??rT", DrawMenu
DrawName            SYMBOL "DrawName"
??DrawName??rT      SYMBOL "??rT", DrawName
DrawNameContr       SYMBOL "DrawNameContr"
??DrawNameContr??rT SYMBOL "??rT", DrawNameContr
DrawNameMenu        SYMBOL "DrawNameMenu"
??DrawNameMenu??rT  SYMBOL "??rT", DrawNameMenu
DrawNetAdv          SYMBOL "DrawNetAdv"
??DrawNetAdv??rT    SYMBOL "??rT", DrawNetAdv
DrawNetDb           SYMBOL "DrawNetDb"
??DrawNetDb??rT     SYMBOL "??rT", DrawNetDb
DrawNetExt          SYMBOL "DrawNetExt"
??DrawNetExt??rT    SYMBOL "??rT", DrawNetExt
DrawNetStd          SYMBOL "DrawNetStd"
??DrawNetStd??rT    SYMBOL "??rT", DrawNetStd
DrawPanel_h         SYMBOL "DrawPanel_h"
??DrawPanel_h??rT   SYMBOL "??rT", DrawPanel_h
DrawPanel_w         SYMBOL "DrawPanel_w"
??DrawPanel_w??rT   SYMBOL "??rT", DrawPanel_w
DrawPusk            SYMBOL "DrawPusk"
??DrawPusk??rT      SYMBOL "??rT", DrawPusk
DrawStrChar         SYMBOL "DrawStrChar"
??DrawStrChar??rT   SYMBOL "??rT", DrawStrChar
DrawStrInt          SYMBOL "DrawStrInt"
??DrawStrInt??rT    SYMBOL "??rT", DrawStrInt
DrawSysBar          SYMBOL "DrawSysBar"
??DrawSysBar??rT    SYMBOL "??rT", DrawSysBar
DrawWorkDesc        SYMBOL "DrawWorkDesc"
??DrawWorkDesc??rT  SYMBOL "??rT", DrawWorkDesc
ElfKiller           SYMBOL "ElfKiller"
??ElfKiller??rT     SYMBOL "??rT", ElfKiller
FindFLISTtByN       SYMBOL "FindFLISTtByN"
??FindFLISTtByN??rT SYMBOL "??rT", FindFLISTtByN
FindFLISTtByNS      SYMBOL "FindFLISTtByNS"
??FindFLISTtByNS??rT SYMBOL "??rT", FindFLISTtByNS
FindFiles           SYMBOL "FindFiles"
??FindFiles??rT     SYMBOL "??rT", FindFiles
FindSizeInSubDir    SYMBOL "FindSizeInSubDir"
??FindSizeInSubDir??rT SYMBOL "??rT", FindSizeInSubDir
Free_FLIST          SYMBOL "Free_FLIST"
??Free_FLIST??rT    SYMBOL "??rT", Free_FLIST
GetFListN           SYMBOL "GetFListN"
??GetFListN??rT     SYMBOL "??rT", GetFListN
GetFoldersLevel     SYMBOL "GetFoldersLevel"
??GetFoldersLevel??rT SYMBOL "??rT", GetFoldersLevel
LoadAllConfig       SYMBOL "LoadAllConfig"
??LoadAllConfig??rT SYMBOL "??rT", LoadAllConfig
LoadParamsConfig    SYMBOL "LoadParamsConfig"
??LoadParamsConfig??rT SYMBOL "??rT", LoadParamsConfig
LoadParamsCrd       SYMBOL "LoadParamsCrd"
??LoadParamsCrd??rT SYMBOL "??rT", LoadParamsCrd
LoadParamsMENU      SYMBOL "LoadParamsMENU"
??LoadParamsMENU??rT SYMBOL "??rT", LoadParamsMENU
LoadParamsPanel     SYMBOL "LoadParamsPanel"
??LoadParamsPanel??rT SYMBOL "??rT", LoadParamsPanel
OnKey               SYMBOL "OnKey"
??OnKey??rT         SYMBOL "??rT", OnKey
OnRedraw            SYMBOL "OnRedraw"
??OnRedraw??rT      SYMBOL "??rT", OnRedraw
QuitCallbackProc    SYMBOL "QuitCallbackProc"
??QuitCallbackProc??rT SYMBOL "??rT", QuitCallbackProc
SaveNameMENU        SYMBOL "SaveNameMENU"
??SaveNameMENU??rT  SYMBOL "??rT", SaveNameMENU
SaveNamePanel       SYMBOL "SaveNamePanel"
??SaveNamePanel??rT SYMBOL "??rT", SaveNamePanel
SaveParamsConfig    SYMBOL "SaveParamsConfig"
??SaveParamsConfig??rT SYMBOL "??rT", SaveParamsConfig
SavePath            SYMBOL "SavePath"
??SavePath??rT      SYMBOL "??rT", SavePath
SizeDir             SYMBOL "SizeDir"
??SizeDir??rT       SYMBOL "??rT", SizeDir
StartFileMenu       SYMBOL "StartFileMenu"
??StartFileMenu??rT SYMBOL "??rT", StartFileMenu
StartFilePanel_h    SYMBOL "StartFilePanel_h"
??StartFilePanel_h??rT SYMBOL "??rT", StartFilePanel_h
StartFilePanel_w    SYMBOL "StartFilePanel_w"
??StartFilePanel_w??rT SYMBOL "??rT", StartFilePanel_w
StartFilePusk       SYMBOL "StartFilePusk"
??StartFilePusk??rT SYMBOL "??rT", StartFilePusk
TimerProc           SYMBOL "TimerProc"
??TimerProc??rT     SYMBOL "??rT", TimerProc
UpdateCSMname       SYMBOL "UpdateCSMname"
??UpdateCSMname??rT SYMBOL "??rT", UpdateCSMname
atoi                SYMBOL "atoi"
??atoi??rT          SYMBOL "??rT", atoi
filelist_menu_ghook SYMBOL "filelist_menu_ghook"
??filelist_menu_ghook??rT SYMBOL "??rT", filelist_menu_ghook
filelist_menu_iconhndl SYMBOL "filelist_menu_iconhndl"
??filelist_menu_iconhndl??rT SYMBOL "??rT", filelist_menu_iconhndl
filelist_menu_onkey SYMBOL "filelist_menu_onkey"
??filelist_menu_onkey??rT SYMBOL "??rT", filelist_menu_onkey
??kill_data??rA     SYMBOL "??rA", kill_data
main                SYMBOL "main"
??main??rT          SYMBOL "??rT", main
maincsm_onclose     SYMBOL "maincsm_onclose"
??maincsm_onclose??rT SYMBOL "??rT", maincsm_onclose
maincsm_oncreate    SYMBOL "maincsm_oncreate"
??maincsm_oncreate??rT SYMBOL "??rT", maincsm_oncreate
maincsm_onmessage   SYMBOL "maincsm_onmessage"
??maincsm_onmessage??rT SYMBOL "??rT", maincsm_onmessage
method8             SYMBOL "method8"
??method8??rT       SYMBOL "??rT", method8
method9             SYMBOL "method9"
??method9??rT       SYMBOL "??rT", method9
onClose             SYMBOL "onClose"
??onClose??rT       SYMBOL "??rT", onClose
onCreate            SYMBOL "onCreate"
??onCreate??rT      SYMBOL "??rT", onCreate
onFocus             SYMBOL "onFocus"
??onFocus??rT       SYMBOL "??rT", onFocus
onUnfocus           SYMBOL "onUnfocus"
??onUnfocus??rT     SYMBOL "??rT", onUnfocus
open_fm             SYMBOL "open_fm"
??open_fm??rT       SYMBOL "??rT", open_fm
process             SYMBOL "process"
??process??rT       SYMBOL "??rT", process
processmenu         SYMBOL "processmenu"
??processmenu??rT   SYMBOL "??rT", processmenu
shortcut            SYMBOL "shortcut"
??shortcut??rT      SYMBOL "??rT", shortcut
start               SYMBOL "start"
??start??rT         SYMBOL "??rT", start
start_vibra         SYMBOL "start_vibra"
??start_vibra??rT   SYMBOL "??rT", start_vibra
stop_vibra          SYMBOL "stop_vibra"
??stop_vibra??rT    SYMBOL "??rT", stop_vibra
strcmp_nocase       SYMBOL "strcmp_nocase"
??strcmp_nocase??rT SYMBOL "??rT", strcmp_nocase

        EXTERN ELF_BEGIN
        EXTERN kill_data
        FUNCTION kill_data,0602H

// D:\Pasha\elf\_MY_PROJECT\AltIdleScr\main.c
//    1 #include "..\inc\swilib.h"
//    2 #include "draw.c"

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// DESC __data descmenu[16]
descmenu:
        DS8 10048

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// MENUPIC __data mnu[9]
mnu:
        DS8 7236

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// Panel __data name[9]
name:
        DS8 5220

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// int __data NumOfItems
NumOfItems:
        DS8 4

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// int __data NumOfItems2
NumOfItems2:
        DS8 4

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// int __data DrawMamory
DrawMamory:
        DS8 4

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// int __data Pusk
Pusk:
        DS8 4

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// int __data img_x
img_x:
        DS8 4

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock0 Using cfiCommon0
        CFI NoFunction
        THUMB
??start??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock0
        REQUIRE start

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock1 Using cfiCommon1
        CFI Function start
        ARM
// __??Code32?? __code __interwork __atpcs int start(char *)
start:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        MOV      R4,R0
        MOV      R0,#+256
        SWI      +293
        MOV      R5,R0
        MOV      R2,#+256
        MOV      R1,R4
        SWI      +364
        MOV      R2,#+0
        MOV      R1,#+0
        MOV      R0,R5
        SWI      +148
        MOV      R0,R5
        SWI      +297
        MOV      R0,#+1
        POP      {R4,R5,PC}       ;; return
        CFI EndBlock cfiBlock1

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock2 Using cfiCommon0
        CFI NoFunction
        THUMB
??shortcut??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock2
        REQUIRE shortcut

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock3 Using cfiCommon1
        CFI Function shortcut
        ARM
// __??Code32?? __code __interwork __atpcs char *shortcut(char *)
shortcut:
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
        SWI      +116
        CMP      R0,#+0
        BEQ      ??shortcut_0
        BLX      R0
        MOV      R0,#+0
        POP      {PC}
??shortcut_0:
        LDR      R1,??shortcut_1  ;; `?<Constant "NULL pointer function!">`
        MOV      R0,#+1
        SWI      +328
        MOV      R0,#+0
        POP      {PC}             ;; return
        DATA
??shortcut_1:
        DC32     `?<Constant "NULL pointer function!">`
        CFI EndBlock cfiBlock3

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock4 Using cfiCommon0
        CFI NoFunction
        THUMB
??TimerProc??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock4
        REQUIRE TimerProc

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// GBSTMR __data mytmr
mytmr:
        DS8 16

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock5 Using cfiCommon1
        CFI Function TimerProc
        ARM
// __??Code32?? __code __interwork __atpcs void TimerProc(void)
TimerProc:
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
        SWI      +370
        LDR      R2,??TimerProc_0  ;; TimerProc
        LDR      R0,??TimerProc_0+0x4  ;; mytmr
        MOV      R1,#+216
        SWI      +77
        POP      {PC}             ;; return
        DATA
??TimerProc_0:
        DC32     TimerProc
        DC32     mytmr
        CFI EndBlock cfiBlock5

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock6 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawBG??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock6
        REQUIRE DrawBG

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock7 Using cfiCommon1
        CFI Function DrawBG
        ARM
// __??Code32?? __code __interwork __atpcs void DrawBG()
DrawBG:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        LDR      R4,??DataTable15  ;; crd
        LDR      R0,[R4, #+292]
        CMP      R0,#+1
        BNE      ??DrawBG_0
        SWI      +302
        MOV      R5,R0
        MOV      R0,#+4
        SWI      +302
        MOV      R6,R0
        SWI      +33161
        MOV      R7,R0
        SWI      +33160
        PUSH     {R5}
        CFI CFA R13+24
        PUSH     {R6}
        CFI CFA R13+28
        MOV      R1,#+0
        PUSH     {R1}
        CFI CFA R13+32
        PUSH     {R1}
        CFI CFA R13+36
        PUSH     {R1}
        CFI CFA R13+40
        SUB      R3,R7,#+1
        SUB      R2,R0,#+1
        MOV      R0,#+0
        SWI      +336
        ADD      SP,SP,#+20
        CFI CFA R13+20
??DrawBG_0:
        SWI      +33009
        MOV      R5,R0
        SWI      +33161
        MOV      R6,R0
        SWI      +33160
        MOV      R1,#+1
        PUSH     {R1}
        CFI CFA R13+24
        SUB      R3,R0,#+1
        MOV      R2,#+0
        MOV      R0,R5
        SUB      R1,R6,#+1
        PUSH     {R1}
        CFI CFA R13+28
        MOV      R1,#+0
        SWI      +37
        LDR      R0,[R4, #+292]
        ADD      SP,SP,#+8
        CFI CFA R13+20
        CMP      R0,#+3
        POPNE    {R4-R7,PC}
        LDR      R2,??DrawBG_1    ;; bg3img
        MOV      R1,#+0
        MOV      R0,#+0
        SWI      +35
        POP      {R4-R7,PC}       ;; return
        DATA
??DrawBG_1:
        DC32     bg3img
        CFI EndBlock cfiBlock7

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock8 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawNetAdv??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock8
        REQUIRE DrawNetAdv

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock9 Using cfiCommon1
        CFI Function DrawNetAdv
        ARM
// __??Code32?? __code __interwork __atpcs void DrawNetAdv(int, int)
DrawNetAdv:
        PUSH     {R4-R9,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R9 Frame(CFA, -8)
        CFI R8 Frame(CFA, -12)
        CFI R7 Frame(CFA, -16)
        CFI R6 Frame(CFA, -20)
        CFI R5 Frame(CFA, -24)
        CFI R4 Frame(CFA, -28)
        CFI CFA R13+28
        MOV      R6,R0
        MOV      R4,R1
        MOV      R5,#+0
??DrawNetAdv_0:
        MOV      R0,#+12
        MUL      R7,R0,R5
        SWI      +32970
        ADD      R0,R7,R0
        LDRB     R0,[R0, #+6]
        CMP      R0,#+0
        BEQ      ??DrawNetAdv_1
        SWI      +32970
        LDRH     R0,[R7, +R0]
        CMP      R0,#+255
        MOVCC    R0,#+2
        MOVCS    R0,#+4
        SWI      +302
        MOV      R8,R0
        SWI      +32970
        LDRH     R0,[R7, +R0]
        CMP      R0,#+255
        MOVCC    R0,#+2
        MOVCS    R0,#+4
        SWI      +302
        MOV      R9,R0
        SWI      +32970
        ADD      R0,R7,R0
        LDRB     R0,[R0, #+6]
        PUSH     {R8}
        CFI CFA R13+32
        PUSH     {R9}
        CFI CFA R13+36
        MOV      R2,#+0
        PUSH     {R2}
        CFI CFA R13+40
        PUSH     {R2}
        CFI CFA R13+44
        PUSH     {R2}
        CFI CFA R13+48
        RSB      R0,R0,#+115
        ADD      R1,R4,#+14
        MOV      R3,R1
        ADD      R2,R6,#+3
        ASR      R7,R0,#+1
        ADD      R0,R0,R7, LSR #+30
        SUB      R1,R1,R0, ASR #+2
        MOV      R0,R6
        SWI      +336
        ADD      SP,SP,#+20
        CFI CFA R13+28
??DrawNetAdv_1:
        ADD      R5,R5,#+1
        ADD      R6,R6,#+5
        CMP      R5,#+6
        BNE      ??DrawNetAdv_0
        POP      {R4-R9,PC}       ;; return
        CFI EndBlock cfiBlock9

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock10 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawNetStd??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock10
        REQUIRE DrawNetStd

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock11 Using cfiCommon1
        CFI Function DrawNetStd
        ARM
// __??Code32?? __code __interwork __atpcs void DrawNetStd(int, int)
DrawNetStd:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        MOV      R4,R0
        MOV      R5,R1
        SWI      +32970
        LDRB     R0,[R0, #+6]
        LDR      R1,??DrawNetStd_0  ;; 0x2aaaaaab
        RSB      R0,R0,#+115
        SMULL    R2,R3,R1,R0
        MOV      R1,R5
        ADD      R0,R3,R0, LSR #+31
        ADD      R2,R0,#+860
        MOV      R0,R4
        SWI      +35
        POP      {R4,R5,PC}       ;; return
        DATA
??DrawNetStd_0:
        DC32     0x2aaaaaab
        CFI EndBlock cfiBlock11

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock12 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawNetDb??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock12
        REQUIRE DrawNetDb

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock13 Using cfiCommon1
        CFI Function DrawNetDb
        ARM
// __??Code32?? __code __interwork __atpcs void DrawNetDb(int, int)
DrawNetDb:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        MOV      R4,R0
        MOV      R5,R1
        MOV      R0,#+256
        SWI      +293
        MOV      R6,R0
        SWI      +32970
        MOV      R7,R0
        SWI      +32970
        LDRH     R0,[R0, #+0]
        LDRB     R3,[R7, #+6]
        LDR      R1,??DrawNetDb_0  ;; `?<Constant "%c%ddb">`
        CMP      R0,#+255
        MOVCC    R2,#+45
        MOVCS    R2,#+61
        MOV      R0,R6
        SWI      +292
        MOV      R0,#+23
        SWI      +302
        MOV      R7,R0
        MOV      R0,#+0
        SWI      +302
        PUSH     {R7}
        CFI CFA R13+24
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R3,#+128
        MOV      R2,R5
        MOV      R1,R4
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+36
        MOV      R0,#+172
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R0,R6
        SWI      +332
        MOV      R0,R6
        SWI      +297
        ADD      SP,SP,#+20
        CFI CFA R13+20
        POP      {R4-R7,PC}       ;; return
        DATA
??DrawNetDb_0:
        DC32     `?<Constant "%c%ddb">`
        CFI EndBlock cfiBlock13

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock14 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawNetExt??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock14
        REQUIRE DrawNetExt

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock15 Using cfiCommon1
        CFI Function DrawNetExt
        ARM
// __??Code32?? __code __interwork __atpcs void DrawNetExt(int, int)
DrawNetExt:
        PUSH     {R4-R8,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R8 Frame(CFA, -8)
        CFI R7 Frame(CFA, -12)
        CFI R6 Frame(CFA, -16)
        CFI R5 Frame(CFA, -20)
        CFI R4 Frame(CFA, -24)
        CFI CFA R13+24
        MOV      R6,R0
        MOV      R4,R1
        ADD      R6,R6,#+6
        SWI      +32970
        LDRH     R0,[R0, #+0]
        CMP      R0,#+255
        MOVCC    R5,#+2
        MOVCS    R5,#+4
        SWI      +32970
        LDRB     R0,[R0, #+6]
        CMP      R0,#+112
        POPCS    {R4-R8,PC}
        SWI      +32970
        LDRB     R7,[R0, #+6]
        B        ??DrawNetExt_0
??DrawNetExt_1:
        MOV      R0,R5
        SWI      +302
        MOV      R2,R0
        MOV      R1,R4
        ADD      R0,R6,#+4
        SWI      +515
        MOV      R0,R5
        SWI      +302
        MOV      R2,R0
        ADD      R1,R4,#+1
        ADD      R0,R6,#+3
        SWI      +515
        MOV      R0,R5
        SWI      +302
        MOV      R2,R0
        ADD      R1,R4,#+2
        ADD      R0,R6,#+2
        SWI      +515
        MOV      R0,R5
        SWI      +302
        ADD      R8,R6,#+1
        MOV      R2,R0
        ADD      R1,R4,#+3
        MOV      R0,R8
        SWI      +515
        MOV      R0,R5
        SWI      +302
        MOV      R2,R0
        ADD      R1,R4,#+4
        MOV      R0,R6
        SWI      +515
        MOV      R0,R5
        SWI      +302
        MOV      R2,R0
        ADD      R1,R4,#+5
        SUB      R0,R6,#+1
        SWI      +515
        ADD      R7,R7,#+2
        MOV      R6,R8
??DrawNetExt_0:
        CMP      R7,#+112
        BLT      ??DrawNetExt_1
        POP      {R4-R8,PC}       ;; return
        CFI EndBlock cfiBlock15

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock16 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawBattStd??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock16
        REQUIRE DrawBattStd

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock17 Using cfiCommon1
        CFI Function DrawBattStd
        ARM
// __??Code32?? __code __interwork __atpcs void DrawBattStd(int, int)
DrawBattStd:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        MOV      R4,R0
        MOV      R5,R1
        SWI      +32968
        LDRH     R0,[R0, #+0]
        LDR      R1,??DataTable2  ;; 0x38e38e39
        SMULL    R2,R3,R1,R0
        MOV      R1,#+89
        ASR      R3,R3,#+1
        ADD      R0,R3,R0, LSR #+31
        ORR      R1,R1,#0x200
        ADD      R2,R1,R0
        MOV      R1,R5
        MOV      R0,R4
        SWI      +35
        POP      {R4,R5,PC}       ;; return
        CFI EndBlock cfiBlock17

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock18 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawBattExt??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock18
        REQUIRE DrawBattExt

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock19 Using cfiCommon1
        CFI Function DrawBattExt
        ARM
// __??Code32?? __code __interwork __atpcs void DrawBattExt(int, int)
DrawBattExt:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        MOV      R4,R0
        MOV      R5,R1
        SWI      +32968
        LDRH     R0,[R0, #+0]
        LDR      R1,??DataTable2  ;; 0x38e38e39
        SMULL    R2,R3,R1,R0
        MOV      R1,#+89
        ASR      R3,R3,#+1
        ADD      R0,R3,R0, LSR #+31
        ORR      R1,R1,#0x200
        ADD      R2,R1,R0
        MOV      R1,R5
        MOV      R0,R4
        SWI      +35
        POP      {R4,R5,PC}       ;; return
        CFI EndBlock cfiBlock19

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable2:
        DC32     0x38e38e39

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock20 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawBattCap??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock20
        REQUIRE DrawBattCap

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock21 Using cfiCommon1
        CFI Function DrawBattCap
        ARM
// __??Code32?? __code __interwork __atpcs void DrawBattCap(int, int)
DrawBattCap:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        MOV      R4,R0
        MOV      R5,R1
        MOV      R0,#+256
        SWI      +293
        MOV      R6,R0
        SWI      +32968
        LDRH     R2,[R0, #+0]
        LDR      R1,??DrawBattCap_0  ;; `?<Constant "%d%%">`
        MOV      R0,R6
        SWI      +292
        MOV      R0,#+23
        SWI      +302
        MOV      R7,R0
        MOV      R0,#+0
        SWI      +302
        PUSH     {R7}
        CFI CFA R13+24
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R3,#+128
        MOV      R2,R5
        MOV      R1,R4
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+36
        MOV      R0,#+172
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R0,R6
        SWI      +332
        MOV      R0,R6
        SWI      +297
        ADD      SP,SP,#+20
        CFI CFA R13+20
        POP      {R4-R7,PC}       ;; return
        DATA
??DrawBattCap_0:
        DC32     `?<Constant "%d%%">`
        CFI EndBlock cfiBlock21

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock22 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawBattVolt??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock22
        REQUIRE DrawBattVolt

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock23 Using cfiCommon1
        CFI Function DrawBattVolt
        ARM
// __??Code32?? __code __interwork __atpcs void DrawBattVolt(int, int)
DrawBattVolt:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        MOV      R4,R0
        MOV      R5,R1
        MOV      R0,#+256
        SWI      +293
        MOV      R6,R0
        MOV      R1,#+9
        MOV      R0,#+0
        SWI      +6
        MOV      R7,R0
        MOV      R1,#+9
        MOV      R0,#+0
        SWI      +6
        LDR      R1,??DataTable5  ;; 0x10624dd3
        SMULL    R2,R3,R7,R1
        MOV      R2,#+1000
        ASR      R3,R3,#+6
        ADD      R3,R3,R7, LSR #+31
        MUL      R3,R2,R3
        LDR      R2,??DrawBattVolt_0  ;; 0x66666667
        SUB      R1,R7,R3
        SMULL    R3,R7,R2,R1
        ASR      R7,R7,#+2
        ADD      R3,R7,R1, LSR #+31
        LDR      R1,??DataTable5  ;; 0x10624dd3
        SMULL    R2,R7,R1,R0
        LDR      R1,??DrawBattVolt_0+0x4  ;; `?<Constant "%d,%dV">`
        ASR      R7,R7,#+6
        ADD      R2,R7,R0, LSR #+31
        MOV      R0,R6
        SWI      +292
        MOV      R0,#+23
        SWI      +302
        MOV      R7,R0
        MOV      R0,#+0
        SWI      +302
        PUSH     {R7}
        CFI CFA R13+24
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R3,#+128
        MOV      R2,R5
        MOV      R1,R4
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+36
        MOV      R0,#+172
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R0,R6
        SWI      +332
        MOV      R0,R6
        SWI      +297
        ADD      SP,SP,#+20
        CFI CFA R13+20
        POP      {R4-R7,PC}       ;; return
        DATA
??DrawBattVolt_0:
        DC32     0x66666667
        DC32     `?<Constant "%d,%dV">`
        CFI EndBlock cfiBlock23

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock24 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawClock??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock24
        REQUIRE DrawClock

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock25 Using cfiCommon1
        CFI Function DrawClock
        ARM
// __??Code32?? __code __interwork __atpcs void DrawClock(int, int)
DrawClock:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        SUB      SP,SP,#+16
        CFI CFA R13+36
        MOV      R4,R0
        MOV      R5,R1
        MOV      R0,#+256
        SWI      +293
        MOV      R6,R0
        MOV      R1,SP
        ADD      R0,SP,#+8
        SWI      +180
        SWI      +32975
        LDR      R0,[R0, #+0]
        LDR      R1,??DrawClock_0  ;; `?<Constant "%c%02d:%02d:%02d">`
        CMP      R0,#+15
        LDRB     R0,[SP, #+2]
        MOVEQ    R2,#+150
        ORREQ    R2,R2,#0xE100
        PUSH     {R0}
        CFI CFA R13+40
        LDRB     R0,[SP, #+5]
        MOVNE    R2,#+32
        PUSH     {R0}
        CFI CFA R13+44
        LDRB     R3,[SP, #+8]
        MOV      R0,R6
        SWI      +292
        MOV      R0,#+23
        SWI      +302
        MOV      R7,R0
        MOV      R0,#+0
        SWI      +302
        PUSH     {R7}
        CFI CFA R13+48
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R3,#+128
        MOV      R2,R5
        MOV      R1,R4
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+56
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+60
        MOV      R0,#+172
        PUSH     {R0}
        CFI CFA R13+64
        MOV      R0,R6
        SWI      +332
        MOV      R0,R6
        SWI      +297
        ADD      SP,SP,#+44
        CFI CFA R13+20
        POP      {R4-R7,PC}       ;; return
        DATA
??DrawClock_0:
        DC32     `?<Constant "%c%02d:%02d:%02d">`
        CFI EndBlock cfiBlock25

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock26 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawBar??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock26
        REQUIRE DrawBar

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock27 Using cfiCommon1
        CFI Function DrawBar
        ARM
// __??Code32?? __code __interwork __atpcs void DrawBar()
DrawBar:
        BX       LR               ;; return
        CFI EndBlock cfiBlock27

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock28 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawDialogs??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock28
        REQUIRE DrawDialogs

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock29 Using cfiCommon1
        CFI Function DrawDialogs
        ARM
// __??Code32?? __code __interwork __atpcs void DrawDialogs(int, int)
DrawDialogs:
        PUSH     {R4-R8,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R8 Frame(CFA, -8)
        CFI R7 Frame(CFA, -12)
        CFI R6 Frame(CFA, -16)
        CFI R5 Frame(CFA, -20)
        CFI R4 Frame(CFA, -24)
        CFI CFA R13+24
        MOV      R4,R0
        MOV      R5,R1
        MOV      R6,#+0
        MOV      R7,#+0
        MOV      R8,#+136
        ORR      R8,R8,#0x1300
??DrawDialogs_0:
        MOV      R0,R6
        SWI      +264
        CMP      R0,#+0
        ADDNE    R7,R7,#+1
        ADD      R6,R6,#+1
        CMP      R6,R8
        BNE      ??DrawDialogs_0
        MOV      R0,#+256
        SWI      +293
        LDR      R1,??DrawDialogs_1  ;; `?<Constant "csm:%i">`
        MOV      R6,R0
        MOV      R2,R7
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R7,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R7}
        CFI CFA R13+28
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R3,#+132
        MOV      R2,R5
        MOV      R1,R4
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+36
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R0,#+176
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R0,R6
        SWI      +332
        MOV      R0,R6
        SWI      +297
        ADD      SP,SP,#+20
        CFI CFA R13+24
        POP      {R4-R8,PC}       ;; return
        DATA
??DrawDialogs_1:
        DC32     `?<Constant "csm:%i">`
        CFI EndBlock cfiBlock29

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock30 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawFreeRam??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock30
        REQUIRE DrawFreeRam

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock31 Using cfiCommon1
        CFI Function DrawFreeRam
        ARM
// __??Code32?? __code __interwork __atpcs void DrawFreeRam(int, int)
DrawFreeRam:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        MOV      R4,R0
        MOV      R5,R1
        MOV      R0,#+256
        SWI      +293
        MOV      R6,R0
        SWI      +95
        LDR      R1,??DataTable5  ;; 0x10624dd3
        SMULL    R2,R3,R1,R0
        LDR      R1,??DataTable6  ;; per_d
        ASR      R3,R3,#+6
        ADD      R2,R3,R0, LSR #+31
        MOV      R0,R6
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R7,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R7}
        CFI CFA R13+24
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R3,#+128
        MOV      R2,R5
        MOV      R1,R4
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+36
        MOV      R0,#+172
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R0,R6
        SWI      +332
        MOV      R0,R6
        SWI      +297
        ADD      SP,SP,#+20
        CFI CFA R13+20
        POP      {R4-R7,PC}       ;; return
        CFI EndBlock cfiBlock31

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable5:
        DC32     0x10624dd3

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable6:
        DC32     per_d

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock32 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawCross??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock32
        REQUIRE DrawCross

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock33 Using cfiCommon1
        CFI Function DrawCross
        ARM
// __??Code32?? __code __interwork __atpcs void DrawCross(int, int, char *)
DrawCross:
        PUSH     {R4-R6,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R6 Frame(CFA, -8)
        CFI R5 Frame(CFA, -12)
        CFI R4 Frame(CFA, -16)
        CFI CFA R13+16
        MOV      R4,R0
        LDR      R0,??DrawCross_0  ;; crd + 296
        MOV      R5,R1
        LDR      R0,[R0, #+0]
        MOV      R6,R2
        CMP      R0,#+0
        BEQ      ??DrawCross_1
        LDR      R2,??DrawCross_0+0x4  ;; `?<Constant "0:\\\\shell\\\\img\\\\cursor.png">`
        MOV      R0,R4
        SWI      +35
        POP      {R4-R6,PC}
??DrawCross_1:
        MOV      R0,R6
        PUSH     {R0}
        CFI CFA R13+20
        MOV      R3,R5
        SUB      R2,R4,#+4
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+24
        MOV      R0,R4
        SWI      +435
        MOV      R0,R6
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R3,R5
        ADD      R2,R4,#+4
        MOV      R1,R5
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,R4
        SWI      +435
        MOV      R0,R6
        PUSH     {R0}
        CFI CFA R13+36
        ADD      R3,R5,#+4
        MOV      R2,R4
        MOV      R1,R5
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R0,R4
        SWI      +435
        PUSH     {R6}
        CFI CFA R13+44
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+48
        SUB      R3,R5,#+4
        MOV      R2,R4
        MOV      R1,R5
        MOV      R0,R4
        SWI      +435
        ADD      SP,SP,#+32
        CFI CFA R13+16
        POP      {R4-R6,PC}       ;; return
        DATA
??DrawCross_0:
        DC32     crd + 296
        DC32     `?<Constant "0:\\\\shell\\\\img\\\\cursor.png">`
        CFI EndBlock cfiBlock33

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock34 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawLineCross??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock34
        REQUIRE DrawLineCross

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock35 Using cfiCommon1
        CFI Function DrawLineCross
        ARM
// __??Code32?? __code __interwork __atpcs void DrawLineCross(int, int, char *, int)
DrawLineCross:
        PUSH     {R4-R8,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R8 Frame(CFA, -8)
        CFI R7 Frame(CFA, -12)
        CFI R6 Frame(CFA, -16)
        CFI R5 Frame(CFA, -20)
        CFI R4 Frame(CFA, -24)
        CFI CFA R13+24
        MOV      R4,R0
        MOV      R5,R2
        ADD      R6,R1,#+3
        ADD      R7,R1,#+2
        ADD      R8,R1,#+1
        SUBS     R3,R3,#+1
        BEQ      ??DrawLineCross_0
        SUBS     R3,R3,#+1
        BEQ      ??DrawLineCross_1
        SUB      R3,R3,#+1
        CMP      R3,#+1
        POPHI    {R4-R8,PC}
??DrawLineCross_0:
        ADD      R0,R4,#+5
        SWI      +515
        MOV      R2,R5
        MOV      R1,R8
        ADD      R0,R4,#+6
        SWI      +515
        MOV      R2,R5
        MOV      R1,R7
        ADD      R0,R4,#+7
        SWI      +515
        MOV      R2,R5
        MOV      R1,R6
        ADD      R0,R4,#+8
        B        ??DrawLineCross_2
??DrawLineCross_1:
        SUB      R0,R4,#+5
        SWI      +515
        MOV      R2,R5
        MOV      R1,R8
        SUB      R0,R4,#+6
        SWI      +515
        MOV      R2,R5
        MOV      R1,R7
        SUB      R0,R4,#+7
        SWI      +515
        MOV      R2,R5
        MOV      R1,R6
        SUB      R0,R4,#+8
??DrawLineCross_2:
        SWI      +515
        POP      {R4-R8,PC}       ;; return
        CFI EndBlock cfiBlock35

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock36 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawName??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock36
        REQUIRE DrawName

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock37 Using cfiCommon1
        CFI Function DrawName
        ARM
// __??Code32?? __code __interwork __atpcs void DrawName(int, int, int)
DrawName:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        MOV      R4,R0
        MOV      R6,R1
        MOV      R7,R2
        BL       SaveNamePanel
        MOV      R0,#+64
        SWI      +293
        MOV      R5,R0
        LDR      R0,??DataTable15  ;; crd
        ADD      R1,R0,R6, LSL #+2
        LDR      R2,[R1, #+248]
        ADD      R1,R0,#+412
        MOV      R0,R5
        SWI      +292
        CMP      R7,#+0
        MOV      R0,#+125
        BEQ      ??DrawName_0
        SWI      +302
        MOV      R6,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R6}
        CFI CFA R13+24
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R3,#+132
        MOV      R2,R4
        MOV      R1,#+30
        B        ??DrawName_1
        CFI CFA R13+20
??DrawName_0:
        SWI      +302
        MOV      R6,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R6}
        CFI CFA R13+24
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R3,#+132
        MOV      R2,#+30
        MOV      R1,R4
??DrawName_1:
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+36
        MOV      R0,#+176
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R0,R5
        SWI      +332
        ADD      SP,SP,#+20
        CFI CFA R13+20
        MOV      R0,R5
        SWI      +297
        POP      {R4-R7,PC}       ;; return
        CFI EndBlock cfiBlock37

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock38 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawContur_w??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock38
        REQUIRE DrawContur_w

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock39 Using cfiCommon1
        CFI Function DrawContur_w
        ARM
// __??Code32?? __code __interwork __atpcs void DrawContur_w(int)
DrawContur_w:
        LDR      R1,??DataTable15  ;; crd
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
        ADD      R2,R1,#+424
        PUSH     {R2}
        CFI CFA R13+8
        ADD      R1,R1,#+420
        PUSH     {R1}
        CFI CFA R13+12
        ADD      R3,R0,#+17
        MOV      R2,#+17
        MOV      R1,#+0
        PUSH     {R1}
        CFI CFA R13+16
        MOV      R1,#+2
        PUSH     {R1}
        CFI CFA R13+20
        PUSH     {R1}
        CFI CFA R13+24
        ADD      R1,R0,#+1
        MOV      R0,#+2
        SWI      +336
        ADD      SP,SP,#+20
        CFI CFA R13+4
        POP      {PC}             ;; return
        CFI EndBlock cfiBlock39

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock40 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawContur_h??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock40
        REQUIRE DrawContur_h

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock41 Using cfiCommon1
        CFI Function DrawContur_h
        ARM
// __??Code32?? __code __interwork __atpcs void DrawContur_h(int)
DrawContur_h:
        LDR      R1,??DataTable15  ;; crd
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
        ADD      R2,R1,#+424
        PUSH     {R2}
        CFI CFA R13+8
        ADD      R1,R1,#+420
        PUSH     {R1}
        CFI CFA R13+12
        MOV      R3,#+17
        ADD      R2,R0,#+17
        ADD      R0,R0,#+1
        MOV      R1,#+0
        PUSH     {R1}
        CFI CFA R13+16
        MOV      R1,#+2
        PUSH     {R1}
        CFI CFA R13+20
        PUSH     {R1}
        CFI CFA R13+24
        SWI      +336
        ADD      SP,SP,#+20
        CFI CFA R13+4
        POP      {PC}             ;; return
        CFI EndBlock cfiBlock41

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock42 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawPanel_w??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock42
        REQUIRE DrawPanel_w

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock43 Using cfiCommon1
        CFI Function DrawPanel_w
        ARM
// __??Code32?? __code __interwork __atpcs void DrawPanel_w()
DrawPanel_w:
        PUSH     {R4-R6,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R6 Frame(CFA, -8)
        CFI R5 Frame(CFA, -12)
        CFI R4 Frame(CFA, -16)
        CFI CFA R13+16
        LDR      R4,??DataTable16  ;; name
        LDR      R6,??DataTable15  ;; crd
        SWI      +33009
        LDR      R1,[R4, #+576]
        MOV      R2,#+20
        MUL      R5,R2,R1
        MOV      R1,#+1
        PUSH     {R1}
        CFI CFA R13+20
        MOV      R3,#+19
        MOV      R2,#+1
        MOV      R1,R5
        PUSH     {R1}
        CFI CFA R13+24
        MOV      R1,#+1
        SWI      +37
        ADD      R0,R6,#+424
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R3,R5
        MOV      R2,#+19
        MOV      R1,#+0
        ADD      R0,R6,#+416
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+36
        MOV      R0,#+2
        PUSH     {R0}
        CFI CFA R13+40
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R0,R1
        SWI      +336
        LDR      R1,[R6, #+380]
        ADD      R2,R4,#+320
        MOV      R0,#+2
        SWI      +35
        LDR      R0,[R6, #+380]
        ADD      R2,R4,#+900
        ADD      R1,R0,#+20
        MOV      R0,#+2
        SWI      +35
        MOV      R0,#+200
        ORR      R0,R0,#0x500
        ADD      R2,R0,R4
        LDR      R0,[R6, #+380]
        ADD      R1,R0,#+40
        MOV      R0,#+2
        SWI      +35
        MOV      R0,#+12
        ORR      R0,R0,#0x800
        ADD      R2,R0,R4
        LDR      R0,[R6, #+380]
        ADD      R1,R0,#+60
        MOV      R0,#+2
        SWI      +35
        LDR      R0,[R6, #+380]
        ADD      R2,R4,#+2640
        ADD      R1,R0,#+80
        MOV      R0,#+2
        SWI      +35
        MOV      R0,#+148
        ORR      R0,R0,#0xC00
        ADD      R2,R0,R4
        LDR      R0,[R6, #+380]
        MOV      R4,#+428
        ADD      R1,R0,#+100
        MOV      R0,#+2
        SWI      +35
        LDR      R1,[R6, #+312]
        LDR      R0,[R6, #+308]
        ADD      R2,R6,#+420
        BL       DrawCross
        LDR      R2,??DrawPanel_w_0  ;; DrawPanel_w
        MOV      R1,#+1
        ADD      R0,R4,R6
        SWI      +77
        LDR      R2,??DrawPanel_w_0+0x4  ;; DrawContur_w
        MOV      R1,#+1
        ADD      R0,R4,R6
        SWI      +77
        ADD      SP,SP,#+28
        CFI CFA R13+16
        POP      {R4-R6,PC}       ;; return
        DATA
??DrawPanel_w_0:
        DC32     DrawPanel_w
        DC32     DrawContur_w
        CFI EndBlock cfiBlock43

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock44 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawPanel_h??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock44
        REQUIRE DrawPanel_h

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock45 Using cfiCommon1
        CFI Function DrawPanel_h
        ARM
// __??Code32?? __code __interwork __atpcs void DrawPanel_h()
DrawPanel_h:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        LDR      R4,??DataTable15  ;; crd
        LDR      R5,??DrawPanel_h_0  ;; IMG1
        SWI      +33009
        MOV      R1,#+1
        PUSH     {R1}
        CFI CFA R13+16
        LDR      R1,[R4, #+372]
        MOV      R2,#+0
        PUSH     {R1}
        CFI CFA R13+20
        LDR      R3,[R4, #+376]
        MOV      R1,#+40
        SWI      +37
        ADD      R0,R4,#+424
        PUSH     {R0}
        CFI CFA R13+24
        MOV      R1,#+0
        ADD      R0,R4,#+416
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,#+2
        PUSH     {R0}
        CFI CFA R13+36
        PUSH     {R0}
        CFI CFA R13+40
        LDR      R3,[R4, #+372]
        LDR      R2,[R4, #+376]
        MOV      R0,#+40
        SWI      +336
        LDR      R0,[R4, #+380]
        MOV      R2,R5
        MOV      R1,#+2
        ADD      R0,R0,#+40
        SWI      +35
        LDR      R0,[R4, #+380]
        ADD      R2,R5,#+128
        MOV      R1,#+2
        ADD      R0,R0,#+60
        SWI      +35
        LDR      R0,[R4, #+380]
        ADD      R2,R5,#+256
        MOV      R1,#+2
        ADD      R0,R0,#+80
        SWI      +35
        LDR      R0,[R4, #+380]
        ADD      R2,R5,#+384
        MOV      R1,#+2
        ADD      R0,R0,#+100
        SWI      +35
        LDR      R1,[R4, #+312]
        LDR      R0,[R4, #+308]
        ADD      R2,R4,#+420
        BL       DrawCross
        LDR      R2,??DrawPanel_h_0+0x4  ;; DrawPanel_h
        MOV      R5,#+428
        MOV      R1,#+1
        ADD      R0,R5,R4
        SWI      +77
        LDR      R2,??DrawPanel_h_0+0x8  ;; DrawContur_h
        MOV      R1,#+1
        ADD      R0,R5,R4
        SWI      +77
        ADD      SP,SP,#+28
        CFI CFA R13+12
        POP      {R4,R5,PC}       ;; return
        DATA
??DrawPanel_h_0:
        DC32     IMG1
        DC32     DrawPanel_h
        DC32     DrawContur_h
        CFI EndBlock cfiBlock45

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock46 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawNameContr??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock46
        REQUIRE DrawNameContr

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock47 Using cfiCommon1
        CFI Function DrawNameContr
        ARM
// __??Code32?? __code __interwork __atpcs void DrawNameContr()
DrawNameContr:
        LDR      R0,??DataTable15  ;; crd
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
        LDR      R1,[R0, #+308]
        CMP      R1,#+0
        POPMI    {PC}
        CMP      R1,#+18
        POPGE    {PC}
        LDR      R1,??DataTable14  ;; name + 576
        LDR      R0,[R0, #+312]
        LDR      R1,[R1, #+0]
        CMP      R0,#+0
        BMI      ??DrawNameContr_0
        CMP      R0,#+21
        BGE      ??DrawNameContr_0
        CMP      R1,#+1
        BLT      ??DrawNameContr_0
        MOV      R2,#+1
        MOV      R1,#+1
        MOV      R0,#+2
        BL       DrawName
        MOV      R0,#+0
        B        ??DrawNameContr_1
??DrawNameContr_0:
        CMP      R0,#+20
        BLT      ??DrawNameContr_2
        CMP      R0,#+41
        BGE      ??DrawNameContr_2
        CMP      R1,#+2
        BLT      ??DrawNameContr_2
        MOV      R2,#+1
        MOV      R1,#+2
        MOV      R0,#+19
        BL       DrawName
        MOV      R0,#+20
        B        ??DrawNameContr_3
??DrawNameContr_2:
        CMP      R0,#+40
        BLT      ??DrawNameContr_4
        CMP      R0,#+61
        BGE      ??DrawNameContr_4
        CMP      R1,#+3
        BLT      ??DrawNameContr_4
        MOV      R2,#+1
        MOV      R1,#+3
        MOV      R0,#+35
        BL       DrawName
        MOV      R0,#+40
??DrawNameContr_1:
        BL       DrawContur_w
        POP      {PC}
??DrawNameContr_4:
        CMP      R0,#+60
        BLT      ??DrawNameContr_5
        CMP      R0,#+81
        BGE      ??DrawNameContr_5
        CMP      R1,#+4
        BLT      ??DrawNameContr_5
        MOV      R2,#+1
        MOV      R1,#+4
        MOV      R0,#+52
        BL       DrawName
        MOV      R0,#+60
        B        ??DrawNameContr_1
??DrawNameContr_5:
        CMP      R0,#+80
        BLT      ??DrawNameContr_6
        CMP      R0,#+101
        BGE      ??DrawNameContr_6
        CMP      R1,#+5
        BLT      ??DrawNameContr_6
        MOV      R2,#+1
        MOV      R1,#+5
        MOV      R0,#+69
        BL       DrawName
        MOV      R0,#+80
        B        ??DrawNameContr_1
??DrawNameContr_6:
        CMP      R0,#+100
        POPLT    {PC}
        CMP      R0,#+121
        POPGE    {PC}
        CMP      R1,#+6
        POPLT    {PC}
        MOV      R2,#+1
        MOV      R1,#+6
        MOV      R0,#+87
        BL       DrawName
        MOV      R0,#+100
??DrawNameContr_3:
        BL       DrawContur_w
        POP      {PC}             ;; return
        CFI EndBlock cfiBlock47

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable14:
        DC32     name + 576

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock48 Using cfiCommon0
        CFI NoFunction
        THUMB
??StartFilePanel_w??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock48
        REQUIRE StartFilePanel_w

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock49 Using cfiCommon1
        CFI Function StartFilePanel_w
        ARM
// __??Code32?? __code __interwork __atpcs void StartFilePanel_w()
StartFilePanel_w:
        PUSH     {R4-R6,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R6 Frame(CFA, -8)
        CFI R5 Frame(CFA, -12)
        CFI R4 Frame(CFA, -16)
        CFI CFA R13+16
        LDR      R4,??DataTable15  ;; crd
        LDR      R0,[R4, #+308]
        CMP      R0,#+0
        POPMI    {R4-R6,PC}
        CMP      R0,#+21
        POPGE    {R4-R6,PC}
        LDR      R5,??DataTable16  ;; name
        LDR      R1,[R4, #+312]
        LDR      R0,[R5, #+576]
        CMP      R1,#+0
        BMI      ??StartFilePanel_w_0
        CMP      R1,#+21
        BGE      ??StartFilePanel_w_0
        CMP      R0,#+1
        BLT      ??StartFilePanel_w_0
        ADD      R0,R5,#+64
        SWI      +27
        CMP      R0,#+15
        ADD      R0,R5,#+64
??StartFilePanel_w_1:
        BNE      ??StartFilePanel_w_2
??StartFilePanel_w_3:
        BL       shortcut
        B        ??StartFilePanel_w_4
??StartFilePanel_w_2:
        BL       start
        ADD      R0,R4,#+428
        SWI      +396
        POP      {R4-R6,PC}       ;; return
??StartFilePanel_w_0:
        CMP      R1,#+20
        BLT      ??StartFilePanel_w_5
        CMP      R1,#+41
        BGE      ??StartFilePanel_w_5
        CMP      R0,#+2
        BLT      ??StartFilePanel_w_5
        MOV      R6,#+644
??StartFilePanel_w_6:
        ADD      R0,R6,R5
        SWI      +27
        CMP      R0,#+15
        ADD      R0,R6,R5
        B        ??StartFilePanel_w_1
??StartFilePanel_w_5:
        CMP      R1,#+40
        BLT      ??StartFilePanel_w_7
        CMP      R1,#+61
        BGE      ??StartFilePanel_w_7
        CMP      R0,#+3
        BLT      ??StartFilePanel_w_7
        MOV      R6,#+200
        ORR      R6,R6,#0x400
        B        ??StartFilePanel_w_6
??StartFilePanel_w_7:
        CMP      R1,#+60
        BLT      ??StartFilePanel_w_8
        CMP      R1,#+81
        BGE      ??StartFilePanel_w_8
        CMP      R0,#+4
        BLT      ??StartFilePanel_w_8
        MOV      R6,#+12
        ORR      R6,R6,#0x700
        ADD      R0,R6,R5
        SWI      +27
        CMP      R0,#+15
        ADD      R0,R6,R5
        B        ??StartFilePanel_w_1
??StartFilePanel_w_8:
        CMP      R1,#+80
        BLT      ??StartFilePanel_w_9
        CMP      R1,#+101
        BGE      ??StartFilePanel_w_9
        CMP      R0,#+5
        BLT      ??StartFilePanel_w_9
        MOV      R6,#+2384
        B        ??StartFilePanel_w_6
??StartFilePanel_w_9:
        CMP      R1,#+100
        POPLT    {R4-R6,PC}
        CMP      R1,#+121
        POPGE    {R4-R6,PC}
        CMP      R0,#+6
        POPLT    {R4-R6,PC}
        MOV      R6,#+148
        ORR      R6,R6,#0xB00
        ADD      R0,R6,R5
        SWI      +27
        CMP      R0,#+15
        ADD      R0,R6,R5
        BNE      ??StartFilePanel_w_3
        BL       start
??StartFilePanel_w_4:
        ADD      R0,R4,#+428
        SWI      +396
        POP      {R4-R6,PC}
        CFI EndBlock cfiBlock49

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable15:
        DC32     crd

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable16:
        DC32     name

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock50 Using cfiCommon0
        CFI NoFunction
        THUMB
??StartFilePanel_h??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock50
        REQUIRE StartFilePanel_h

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock51 Using cfiCommon1
        CFI Function StartFilePanel_h
        ARM
// __??Code32?? __code __interwork __atpcs void StartFilePanel_h()
StartFilePanel_h:
        LDR      R0,??DataTable31  ;; `?<Constant "0:\\\\zbin\\\\mc\\\\mc.elf">`
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        LDR      R4,??DataTable33  ;; crd
        MOV      R5,#+428
        LDR      R2,[R4, #+308]
        LDR      R1,[R4, #+312]
        CMP      R2,#+0
        BMI      ??StartFilePanel_h_0
        CMP      R2,#+21
        BGE      ??StartFilePanel_h_0
        CMP      R1,#+0
        BMI      ??StartFilePanel_h_0
        CMP      R1,#+21
        BLT      ??StartFilePanel_h_1
??StartFilePanel_h_0:
        CMP      R2,#+20
        BLT      ??StartFilePanel_h_2
        CMP      R2,#+41
        BGE      ??StartFilePanel_h_2
        CMP      R1,#+0
        BMI      ??StartFilePanel_h_2
        CMP      R1,#+21
        BGE      ??StartFilePanel_h_2
        ADD      R0,R0,#+96
??StartFilePanel_h_1:
        BL       start
        B        ??StartFilePanel_h_3
??StartFilePanel_h_2:
        CMP      R2,#+40
        BLT      ??StartFilePanel_h_4
        CMP      R2,#+61
        BGE      ??StartFilePanel_h_4
        CMP      R1,#+0
        BMI      ??StartFilePanel_h_4
        CMP      R1,#+21
        BGE      ??StartFilePanel_h_4
        ADD      R0,R0,#+80
        B        ??StartFilePanel_h_5
??StartFilePanel_h_4:
        CMP      R2,#+60
        BLT      ??StartFilePanel_h_6
        CMP      R2,#+81
        BGE      ??StartFilePanel_h_6
        CMP      R1,#+0
        BMI      ??StartFilePanel_h_6
        CMP      R1,#+21
        BGE      ??StartFilePanel_h_6
        ADD      R0,R0,#+64
??StartFilePanel_h_5:
        BL       shortcut
        ADD      R0,R5,R4
        SWI      +396
        POP      {R4,R5,PC}
??StartFilePanel_h_6:
        CMP      R2,#+80
        BLT      ??StartFilePanel_h_7
        CMP      R2,#+101
        BGE      ??StartFilePanel_h_7
        CMP      R1,#+0
        BMI      ??StartFilePanel_h_7
        CMP      R1,#+21
        ADDLT    R0,R0,#+36
        BLT      ??StartFilePanel_h_1
??StartFilePanel_h_7:
        CMP      R2,#+100
        POPLT    {R4,R5,PC}
        CMP      R2,#+121
        POPGE    {R4,R5,PC}
        CMP      R1,#+0
        POPMI    {R4,R5,PC}
        CMP      R1,#+21
        POPGE    {R4,R5,PC}
        ADD      R0,R0,#+20
        BL       shortcut
??StartFilePanel_h_3:
        ADD      R0,R5,R4
        SWI      +396
        POP      {R4,R5,PC}       ;; return
        CFI EndBlock cfiBlock51

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock52 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawMenu??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock52
        REQUIRE DrawMenu

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock53 Using cfiCommon1
        CFI Function DrawMenu
        ARM
// __??Code32?? __code __interwork __atpcs void DrawMenu(int)
DrawMenu:
        PUSH     {R4-R11,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R11 Frame(CFA, -8)
        CFI R10 Frame(CFA, -12)
        CFI R9 Frame(CFA, -16)
        CFI R8 Frame(CFA, -20)
        CFI R7 Frame(CFA, -24)
        CFI R6 Frame(CFA, -28)
        CFI R5 Frame(CFA, -32)
        CFI R4 Frame(CFA, -36)
        CFI CFA R13+36
        LDR      R5,??DataTable33  ;; crd
        SUB      SP,SP,#+16
        CFI CFA R13+52
        LDR      R11,??DataTable22  ;; mnu
        MOV      R4,R0
        MOV      R0,#+45
        STR      R0,[R5, #+384]
        MOV      R0,#+70
        STR      R0,[R5, #+388]
        SUB      R0,R4,#+1
        CMP      R0,#+5
        BHI      ??DrawMenu_2
        MOV      R1,#+804
        MLA      R2,R1,R4,R11
        MVN      R0,#+3
        BIC      R0,R0,#0x100
        ADD      R2,R0,R2
        MOV      R1,#+70
        MOV      R0,#+45
        SWI      +35
??DrawMenu_2:
        LDR      R0,[R5, #+384]
        LDR      R1,[R5, #+388]
        SUB      R0,R0,#+40
        SUB      R1,R1,#+15
        MOV      R2,#+212
        ORR      R2,R2,#0x1000
        ADD      R6,R2,R11
        ADD      R7,R11,#+288
        SUB      R2,R2,#+3216
        ADD      R8,R2,R11
        ADD      R2,R2,#+804
        ADD      R9,R2,R11
        ADD      R2,R2,#+804
        ADD      R10,R2,R11
        ADD      R11,R11,#+3504
        CMP      R4,#+1
        BEQ      ??DrawMenu_3
        SUB      R2,R4,#+1
        SUB      R2,R2,#+1
        CMP      R2,#+5
        BHI      ??DrawMenu_4
        ADR      R3,??DrawMenu_0
        LDRB     R3,[R3, R2]
        ADD      PC,PC,R3, LSL #+2
        DATA
??DrawMenu_0:
        DC8      +1,+3,+5,+7
        DC8      +9,+11,+0,+0
        ARM
??DrawMenu_5:
        MOV      R2,R7
        B        ??DrawMenu_6
??DrawMenu_7:
        MOV      R2,R8
        B        ??DrawMenu_6
??DrawMenu_8:
        MOV      R2,R9
        B        ??DrawMenu_6
??DrawMenu_9:
        MOV      R2,R10
        B        ??DrawMenu_6
??DrawMenu_10:
        MOV      R2,R11
        B        ??DrawMenu_6
??DrawMenu_3:
        MOV      R2,R6
??DrawMenu_6:
        SWI      +35
??DrawMenu_4:
        LDR      R0,[R5, #+384]
        LDR      R1,[R5, #+388]
        CMP      R4,#+6
        MOVEQ    R4,#+0
        ADD      R0,R0,#+50
        SUB      R1,R1,#+15
        ADD      R2,R4,#+1
        SUB      R2,R2,#+1
        CMP      R2,#+5
        BHI      ??DrawMenu_11
        ADR      R3,??DrawMenu_1
        LDRB     R3,[R3, R2]
        ADD      PC,PC,R3, LSL #+2
        DATA
??DrawMenu_1:
        DC8      +1,+3,+5,+7
        DC8      +9,+11,+0,+0
        ARM
??DrawMenu_12:
        MOV      R2,R7
        B        ??DrawMenu_13
??DrawMenu_14:
        MOV      R2,R8
        B        ??DrawMenu_13
??DrawMenu_15:
        MOV      R2,R9
        B        ??DrawMenu_13
??DrawMenu_16:
        MOV      R2,R10
        B        ??DrawMenu_13
??DrawMenu_17:
        MOV      R2,R11
        B        ??DrawMenu_13
??DrawMenu_18:
        MOV      R2,R6
??DrawMenu_13:
        SWI      +35
??DrawMenu_11:
        LDR      R2,??DrawMenu_19  ;; DrawMenu
        MOV      R1,#+1
        ADD      R0,R5,#+444
        SWI      +77
        POP      {R0-R11,PC}      ;; return
        DATA
??DrawMenu_19:
        DC32     DrawMenu
        CFI EndBlock cfiBlock53

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock54 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawNameMenu??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock54
        REQUIRE DrawNameMenu

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock55 Using cfiCommon1
        CFI Function DrawNameMenu
        ARM
// __??Code32?? __code __interwork __atpcs void DrawNameMenu(int)
DrawNameMenu:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        MOV      R4,R0
        BL       SaveNameMENU
        MOV      R0,#+64
        SWI      +293
        MOV      R5,R0
        LDR      R0,??DataTable33  ;; crd
        ADD      R1,R0,R4, LSL #+2
        LDR      R2,[R1, #+332]
        ADD      R1,R0,#+412
        MOV      R0,R5
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R4,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R4}
        CFI CFA R13+16
        PUSH     {R0}
        CFI CFA R13+20
        MOV      R3,#+132
        MOV      R2,#+120
        MOV      R1,#+45
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+24
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R0,#+176
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,R5
        SWI      +332
        MOV      R0,R5
        SWI      +297
        ADD      SP,SP,#+20
        CFI CFA R13+12
        POP      {R4,R5,PC}       ;; return
        CFI EndBlock cfiBlock55

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock56 Using cfiCommon0
        CFI NoFunction
        THUMB
??StartFileMenu??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock56
        REQUIRE StartFileMenu

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock57 Using cfiCommon1
        CFI Function StartFileMenu
        ARM
// __??Code32?? __code __interwork __atpcs void StartFileMenu(int)
StartFileMenu:
        LDR      R1,??DataTable22  ;; mnu
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
        MOV      R2,#+804
        MLA      R1,R2,R0,R1
        RSB      R2,R2,#+0
        SUBS     R0,R0,#+1
        BEQ      ??StartFileMenu_0
        SUB      R0,R0,#+1
        CMP      R0,#+4
        BLS      ??StartFileMenu_1
        POP      {PC}
??StartFileMenu_0:
        ADD      R0,R2,R1
        BL       shortcut
        LDR      R0,??DataTable33  ;; crd
        LDR      R1,[R0, #+300]
        CMP      R1,#+0
        MOVEQ    R1,#+1
        MOVNE    R1,#+0
        STR      R1,[R0, #+300]
        POP      {PC}
??StartFileMenu_1:
        ADD      R0,R2,R1
        POP      {LR}             ;; Pop
        CFI ?RET R14
        CFI CFA R13+0
        B        shortcut         ;; tailcall
        CFI EndBlock cfiBlock57

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable22:
        DC32     mnu

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock58 Using cfiCommon0
        CFI NoFunction
        THUMB
??FindSizeInSubDir??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock58
        REQUIRE FindSizeInSubDir

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// static DIR_ENTRY __data de
de:
        DS8 440
// int __data dir_size
dir_size:
        DS8 4

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock59 Using cfiCommon1
        CFI Function FindSizeInSubDir
        ARM
// __??Code32?? __code __interwork __atpcs int FindSizeInSubDir(char *)
FindSizeInSubDir:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        LDR      R5,??DataTable26  ;; de
        SUB      SP,SP,#+260
        CFI CFA R13+272
        MOV      R1,R0
        ADD      R0,SP,#+4
        SWI      +26
        ADD      R0,SP,#+4
        SWI      +27
        ADD      R1,SP,#+4
        ADD      R0,R0,R1
        LDR      R1,??DataTable27  ;; `?<Constant "\\\\*.*">`
        ADD      R4,R0,#+1
        ADD      R0,SP,#+4
        SWI      +23
        MOV      R2,SP
        ADD      R1,SP,#+4
        MOV      R0,R5
        SWI      +107
        CMP      R0,#+0
        BEQ      ??FindSizeInSubDir_0
??FindSizeInSubDir_1:
        ADD      R1,R5,#+169
        MOV      R0,R4
        SWI      +26
        LDR      R0,[R5, #+440]
        LDR      R1,[R5, #+20]
        ADD      R0,R1,R0
        STR      R0,[R5, #+440]
        MOV      R1,SP
        MOV      R0,R5
        SWI      +108
        CMP      R0,#+0
        BNE      ??FindSizeInSubDir_1
??FindSizeInSubDir_0:
        MOV      R1,SP
        MOV      R0,R5
        SWI      +109
        LDR      R0,[R5, #+440]
        ADD      SP,SP,#+260
        CFI CFA R13+12
        POP      {R4,R5,PC}       ;; return
        CFI EndBlock cfiBlock59

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock60 Using cfiCommon0
        CFI NoFunction
        THUMB
??SizeDir??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock60
        REQUIRE SizeDir

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock61 Using cfiCommon1
        CFI Function SizeDir
        ARM
// __??Code32?? __code __interwork __atpcs int SizeDir(char *)
SizeDir:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        LDR      R5,??DataTable26  ;; de
        SUB      SP,SP,#+260
        CFI CFA R13+272
        MOV      R4,R0
        MOV      R0,#+64
        SWI      +293
        MOV      R1,R4
        ADD      R0,SP,#+4
        SWI      +26
        ADD      R0,SP,#+4
        SWI      +27
        ADD      R1,SP,#+4
        ADD      R0,R0,R1
        LDR      R1,??DataTable27  ;; `?<Constant "\\\\*.*">`
        ADD      R4,R0,#+1
        ADD      R0,SP,#+4
        SWI      +23
        MOV      R2,SP
        ADD      R1,SP,#+4
        MOV      R0,R5
        SWI      +107
        CMP      R0,#+0
        BEQ      ??SizeDir_0
??SizeDir_1:
        ADD      R1,R5,#+169
        MOV      R0,R4
        SWI      +26
        LDRSH    R0,[R5, #+14]
        CMP      R0,#+0
        BEQ      ??SizeDir_2
        ADD      R0,SP,#+4
        BL       FindSizeInSubDir
        LDR      R1,[R5, #+440]
        ADD      R0,R0,R1
        B        ??SizeDir_3
??SizeDir_2:
        LDR      R0,[R5, #+440]
        LDR      R1,[R5, #+20]
        ADD      R0,R1,R0
??SizeDir_3:
        STR      R0,[R5, #+440]
        MOV      R1,SP
        MOV      R0,R5
        SWI      +108
        CMP      R0,#+0
        BNE      ??SizeDir_1
??SizeDir_0:
        MOV      R1,SP
        MOV      R0,R5
        SWI      +109
        LDR      R0,[R5, #+440]
        ADD      SP,SP,#+260
        CFI CFA R13+12
        POP      {R4,R5,PC}       ;; return
        CFI EndBlock cfiBlock61

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable26:
        DC32     de

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable27:
        DC32     `?<Constant "\\\\*.*">`

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock62 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawFreeMamory??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock62
        REQUIRE DrawFreeMamory

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock63 Using cfiCommon1
        CFI Function DrawFreeMamory
        ARM
// __??Code32?? __code __interwork __atpcs void DrawFreeMamory(char *, int)
DrawFreeMamory:
        PUSH     {R4-R11,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R11 Frame(CFA, -8)
        CFI R10 Frame(CFA, -12)
        CFI R9 Frame(CFA, -16)
        CFI R8 Frame(CFA, -20)
        CFI R7 Frame(CFA, -24)
        CFI R6 Frame(CFA, -28)
        CFI R5 Frame(CFA, -32)
        CFI R4 Frame(CFA, -36)
        CFI CFA R13+36
        MOV      R9,R0
        MOV      R4,R1
        LDR      R6,??DataTable33  ;; crd
        LDR      R10,??DrawFreeMamory_0+0x4  ;; `?<Constant "Applications: %d kb">`
        MOV      R0,#+256
        SWI      +293
        MOV      R5,R0
        SWI      +33009
        MOV      R1,#+1
        PUSH     {R1}
        CFI CFA R13+40
        MOV      R3,#+132
        MOV      R2,#+0
        MOV      R1,#+176
        PUSH     {R1}
        CFI CFA R13+44
        MOV      R1,#+0
        SWI      +37
        LDR      R1,[R6, #+392]
        MOV      R0,#+0
        SWI      +139
        ASR      R1,R0,#+9
        ADD      R0,R0,R1, LSR #+22
        LDR      R1,[R6, #+392]
        ASR      R11,R0,#+10
        MOV      R0,#+0
        SWI      +138
        ASR      R1,R0,#+9
        ADD      R0,R0,R1, LSR #+22
        ASR      R7,R0,#+10
        MOV      R1,#+100
        MUL      R0,R1,R7
        MOV      R1,R11
        _BLF     ??div32_a,??rA??div32_a
        MOV      R8,R1
        MOV      R0,R9
        BL       SizeDir
        MOV      R9,R0
        MOV      R3,R7
        MOV      R2,R11
        ADD      R1,R10,#+20
        MOV      R0,R5
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R11,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R11}
        CFI CFA R13+48
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R3,#+131
        MOV      R2,#+2
        MOV      R1,R2
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+56
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+60
        MOV      R0,#+175
        PUSH     {R0}
        CFI CFA R13+64
        MOV      R0,R5
        SWI      +332
        MOV      R2,R7
        ADR      R1,??DrawFreeMamory_0  ;; "%d"
        MOV      R0,R5
        SWI      +292
        ADD      R0,R6,#+424
        PUSH     {R0}
        CFI CFA R13+68
        MOV      R3,#+131
        MOV      R2,#+60
        ADD      R1,R8,#+10
        ADD      R0,R6,#+416
        PUSH     {R0}
        CFI CFA R13+72
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+76
        MOV      R0,#+6
        PUSH     {R0}
        CFI CFA R13+80
        MOV      R0,#+175
        PUSH     {R0}
        CFI CFA R13+84
        MOV      R0,R5
        SWI      +332
        ADD      SP,SP,#+48
        CFI CFA R13+36
        ADD      R0,R6,#+424
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R3,#+57
        MOV      R2,#+117
        MOV      R1,#+50
        ADD      R0,R6,#+416
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+48
        PUSH     {R0}
        CFI CFA R13+52
        PUSH     {R0}
        CFI CFA R13+56
        MOV      R0,#+2
        SWI      +336
        ADD      R0,R6,#+420
        PUSH     {R0}
        CFI CFA R13+60
        PUSH     {R0}
        CFI CFA R13+64
        MOV      R3,#+56
        ADD      R2,R8,#+18
        MOV      R1,#+51
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+68
        PUSH     {R0}
        CFI CFA R13+72
        PUSH     {R0}
        CFI CFA R13+76
        MOV      R0,#+3
        SWI      +336
        ADD      SP,SP,#+40
        CFI CFA R13+36
        ASR      R0,R9,#+9
        ADD      R0,R9,R0, LSR #+22
        ASR      R2,R0,#+10
        MOV      R1,R10
        MOV      R0,R5
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R6,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R6}
        CFI CFA R13+40
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R3,#+131
        MOV      R2,R4
        MOV      R1,#+2
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+48
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R0,#+175
        PUSH     {R0}
        CFI CFA R13+56
        MOV      R0,R5
        SWI      +332
        ADD      SP,SP,#+20
        CFI CFA R13+36
        POP      {R4-R11,PC}      ;; return
        DATA
??DrawFreeMamory_0:
        DC8      "%d",+0
        DC32     `?<Constant "Applications: %d kb">`
        CFI EndBlock cfiBlock63

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock64 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawPusk??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock64
        REQUIRE DrawPusk

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock65 Using cfiCommon1
        CFI Function DrawPusk
        ARM
// __??Code32?? __code __interwork __atpcs void DrawPusk(int, int)
DrawPusk:
        PUSH     {R4-R11,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R11 Frame(CFA, -8)
        CFI R10 Frame(CFA, -12)
        CFI R9 Frame(CFA, -16)
        CFI R8 Frame(CFA, -20)
        CFI R7 Frame(CFA, -24)
        CFI R6 Frame(CFA, -28)
        CFI R5 Frame(CFA, -32)
        CFI R4 Frame(CFA, -36)
        CFI CFA R13+36
        LDR      R4,??DataTable33  ;; crd
        MOV      R9,#+272
        MOV      R11,R0
        SWI      +33009
        MOV      R1,#+1
        PUSH     {R1}
        CFI CFA R13+40
        MOV      R3,#+75
        MOV      R2,#+80
        MOV      R8,#+268
        MOV      R1,#+158
        PUSH     {R1}
        CFI CFA R13+44
        MOV      R7,#+264
        MOV      R6,#+260
        MOV      R10,#+256
        MOV      R1,#+0
        SWI      +37
        ADD      R0,R4,#+424
        PUSH     {R0}
        CFI CFA R13+48
        MOV      R3,#+158
        MOV      R2,#+75
        MOV      R1,#+80
        ADD      R0,R4,#+416
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R0,#+0
        PUSH     {R0}
        CFI CFA R13+56
        MOV      R0,#+5
        PUSH     {R0}
        CFI CFA R13+60
        MOV      R0,#+3
        PUSH     {R0}
        CFI CFA R13+64
        MOV      R0,#+0
        SWI      +336
        MOV      R0,#+256
        SWI      +293
        MOV      R5,R0
        LDR      R0,[R9, +R4]
        ADD      R1,R4,#+460
        PUSH     {R0}
        CFI CFA R13+68
        LDR      R0,[R8, +R4]
        PUSH     {R0}
        CFI CFA R13+72
        LDR      R0,[R7, +R4]
        PUSH     {R0}
        CFI CFA R13+76
        LDR      R0,[R6, +R4]
        PUSH     {R0}
        CFI CFA R13+80
        LDR      R3,[R10, +R4]
        LDR      R2,[R4, #+252]
        MOV      R0,R5
        SWI      +292
        ADD      SP,SP,#+44
        CFI CFA R13+36
        ADD      R0,R4,#+424
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R3,#+132
        MOV      R2,R11
        MOV      R1,#+2
        ADD      R0,R4,#+416
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+48
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R0,#+176
        PUSH     {R0}
        CFI CFA R13+56
        MOV      R0,R5
        SWI      +332
        LDR      R0,[R4, #+308]
        ADD      SP,SP,#+20
        CFI CFA R13+36
        CMP      R0,#+0
        BMI      ??DrawPusk_0
        CMP      R0,#+61
        BGE      ??DrawPusk_0
        LDR      R1,[R4, #+400]
        LDR      R2,[R4, #+312]
        ADD      R3,R1,#+50
        MOV      R0,#+412
        ADD      R11,R1,#+35
        CMP      R2,R11
        CMPGE    R3,R2
        BLT      ??DrawPusk_1
        LDR      R2,[R4, #+252]
        ADD      R1,R0,R4
        MOV      R0,R5
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R6,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R6}
        CFI CFA R13+40
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R3,#+132
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+48
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R0,#+176
        PUSH     {R0}
        CFI CFA R13+56
        LDR      R0,[R4, #+400]
        ADD      R2,R0,#+35
??DrawPusk_2:
        MOV      R1,#+2
        MOV      R0,R5
        SWI      +332
        MOV      R0,#+1
        ADD      SP,SP,#+20
        CFI CFA R13+36
        B        ??DrawPusk_3
??DrawPusk_1:
        ADD      R11,R1,#+62
        CMP      R2,R3
        CMPGE    R11,R2
        BLT      ??DrawPusk_4
        LDR      R2,[R10, +R4]
        ADD      R1,R0,R4
        MOV      R0,R5
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R6,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R6}
        CFI CFA R13+40
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R3,#+132
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+48
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R0,#+176
        PUSH     {R0}
        CFI CFA R13+56
        LDR      R0,[R4, #+400]
        ADD      R2,R0,#+47
        B        ??DrawPusk_2
        CFI CFA R13+36
??DrawPusk_4:
        ADD      R3,R1,#+75
        CMP      R2,R11
        CMPGE    R3,R2
        BLT      ??DrawPusk_5
        LDR      R2,[R6, +R4]
        ADD      R1,R0,R4
        MOV      R0,R5
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R6,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R6}
        CFI CFA R13+40
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R3,#+132
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+48
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R0,#+176
        PUSH     {R0}
        CFI CFA R13+56
        LDR      R0,[R4, #+400]
        ADD      R2,R0,#+59
??DrawPusk_6:
        B        ??DrawPusk_2
        CFI CFA R13+36
??DrawPusk_5:
        ADD      R6,R1,#+87
        CMP      R2,R3
        CMPGE    R6,R2
        BLT      ??DrawPusk_7
        LDR      R2,[R7, +R4]
        ADD      R1,R0,R4
        MOV      R0,R5
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R6,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R6}
        CFI CFA R13+40
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R3,#+132
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+48
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R0,#+176
        PUSH     {R0}
        CFI CFA R13+56
        LDR      R0,[R4, #+400]
        ADD      R2,R0,#+71
        B        ??DrawPusk_2
        CFI CFA R13+36
??DrawPusk_7:
        ADD      R3,R1,#+99
        CMP      R2,R6
        CMPGE    R3,R2
        BLT      ??DrawPusk_8
        LDR      R2,[R8, +R4]
        ADD      R1,R0,R4
        MOV      R0,R5
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R6,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R6}
        CFI CFA R13+40
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R3,#+132
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+48
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R0,#+176
        PUSH     {R0}
        CFI CFA R13+56
        LDR      R0,[R4, #+400]
        ADD      R2,R0,#+83
        B        ??DrawPusk_2
        CFI CFA R13+36
??DrawPusk_8:
        CMP      R2,R3
        ADDGE    R1,R1,#+111
        CMPGE    R1,R2
        BLT      ??DrawPusk_0
        LDR      R2,[R9, +R4]
        ADD      R1,R0,R4
        MOV      R0,R5
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R6,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R6}
        CFI CFA R13+40
        PUSH     {R0}
        CFI CFA R13+44
        MOV      R3,#+132
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+48
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+52
        MOV      R0,#+176
        PUSH     {R0}
        CFI CFA R13+56
        LDR      R0,[R4, #+400]
        ADD      R2,R0,#+95
        B        ??DrawPusk_2
        CFI CFA R13+36
??DrawPusk_0:
        MOV      R0,#+0
??DrawPusk_3:
        STR      R0,[R4, #+396]
        MOV      R0,R5
        SWI      +297
        POP      {R4-R11,PC}      ;; return
        CFI EndBlock cfiBlock65

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock66 Using cfiCommon0
        CFI NoFunction
        THUMB
??StartFilePusk??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock66
        REQUIRE StartFilePusk

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock67 Using cfiCommon1
        CFI Function StartFilePusk
        ARM
// __??Code32?? __code __interwork __atpcs void StartFilePusk()
StartFilePusk:
        LDR      R0,??DataTable33  ;; crd
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
        LDR      R1,[R0, #+308]
        CMP      R1,#+0
        POPMI    {PC}
        CMP      R1,#+61
        POPGE    {PC}
        LDR      R1,[R0, #+400]
        LDR      R3,[R0, #+312]
        LDR      R0,??DataTable31  ;; `?<Constant "0:\\\\zbin\\\\mc\\\\mc.elf">`
        ADD      R2,R1,#+50
        ADD      R12,R1,#+35
        CMP      R3,R12
        CMPGE    R2,R3
        BGE      ??StartFilePusk_0
        ADD      R12,R1,#+62
        CMP      R3,R2
        CMPGE    R12,R3
        BLT      ??StartFilePusk_1
        ADD      R0,R0,#+96
??StartFilePusk_0:
        BL       start
        POP      {PC}
??StartFilePusk_1:
        ADD      R2,R1,#+75
        CMP      R3,R12
        CMPGE    R2,R3
        ADDGE    R0,R0,#+80
        BGE      ??StartFilePusk_2
        ADD      R12,R1,#+87
        CMP      R3,R2
        CMPGE    R12,R3
        BLT      ??StartFilePusk_3
        ADD      R0,R0,#+64
??StartFilePusk_4:
        B        ??StartFilePusk_2
??StartFilePusk_3:
        ADD      R2,R1,#+99
        CMP      R3,R12
        CMPGE    R2,R3
        ADDGE    R0,R0,#+36
        BGE      ??StartFilePusk_0
        CMP      R3,R2
        ADDGE    R1,R1,#+111
        CMPGE    R1,R3
        POPLT    {PC}
        ADD      R0,R0,#+20
??StartFilePusk_2:
        BL       shortcut
        POP      {PC}             ;; return
        CFI EndBlock cfiBlock67

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable31:
        DC32     `?<Constant "0:\\\\zbin\\\\mc\\\\mc.elf">`

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock68 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawStrInt??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock68
        REQUIRE DrawStrInt

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock69 Using cfiCommon1
        CFI Function DrawStrInt
        ARM
// __??Code32?? __code __interwork __atpcs void DrawStrInt(int, int, int)
DrawStrInt:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        MOV      R4,R0
        MOV      R5,R1
        MOV      R6,R2
        MOV      R0,#+5
        SWI      +293
        LDR      R1,??DataTable32  ;; per_d
        MOV      R7,R0
        MOV      R2,R4
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R4,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R4}
        CFI CFA R13+24
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R3,#+128
        MOV      R2,R6
        MOV      R1,R5
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+36
        MOV      R0,#+172
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R0,R7
        SWI      +332
        MOV      R0,R7
        SWI      +297
        ADD      SP,SP,#+20
        CFI CFA R13+20
        POP      {R4-R7,PC}       ;; return
        CFI EndBlock cfiBlock69

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable32:
        DC32     per_d

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock70 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawStrChar??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock70
        REQUIRE DrawStrChar

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock71 Using cfiCommon1
        CFI Function DrawStrChar
        ARM
// __??Code32?? __code __interwork __atpcs void DrawStrChar(char *, int, int)
DrawStrChar:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        MOV      R4,R1
        MOV      R5,R2
        MOV      R7,R0
        SWI      +27
        SWI      +293
        LDR      R1,??DrawStrChar_0  ;; crd + 412
        MOV      R6,R0
        MOV      R2,R7
        SWI      +292
        MOV      R0,#+125
        SWI      +302
        MOV      R7,R0
        MOV      R0,#+124
        SWI      +302
        PUSH     {R7}
        CFI CFA R13+24
        PUSH     {R0}
        CFI CFA R13+28
        MOV      R3,#+128
        MOV      R2,R5
        MOV      R1,R4
        MOV      R0,#+32
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R0,#+7
        PUSH     {R0}
        CFI CFA R13+36
        MOV      R0,#+172
        PUSH     {R0}
        CFI CFA R13+40
        MOV      R0,R6
        SWI      +332
        MOV      R0,R6
        SWI      +297
        ADD      SP,SP,#+20
        CFI CFA R13+20
        POP      {R4-R7,PC}       ;; return
        DATA
??DrawStrChar_0:
        DC32     crd + 412
        CFI EndBlock cfiBlock71

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock72 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawWorkDesc??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock72
        REQUIRE DrawWorkDesc

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock73 Using cfiCommon1
        CFI Function DrawWorkDesc
        ARM
// __??Code32?? __code __interwork __atpcs void DrawWorkDesc()
DrawWorkDesc:
        PUSH     {R4,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R4 Frame(CFA, -8)
        CFI CFA R13+8
        LDR      R4,??DataTable33  ;; crd
        LDR      R0,[R4, #+308]
        CMP      R0,#+121
        BLT      ??DrawWorkDesc_0
        CMP      R0,#+129
        BGE      ??DrawWorkDesc_0
        LDR      R0,[R4, #+312]
        LDR      R1,[R4, #+304]
        CMP      R0,R1
        BLT      ??DrawWorkDesc_0
        CMP      R0,#+171
        BGE      ??DrawWorkDesc_0
        MOV      R2,#+130
        MOV      R1,#+120
        MOV      R0,#+1
        BL       DrawStrInt
        MOV      R2,#+144
        MOV      R1,#+120
        MOV      R0,#+2
        BL       DrawStrInt
        MOV      R2,#+158
        MOV      R1,#+120
        MOV      R0,#+3
        BL       DrawStrInt
        MOV      R0,#+130
        B        ??DrawWorkDesc_1
??DrawWorkDesc_0:
        LDR      R0,[R4, #+292]
        MOV      R2,#+158
        MOV      R1,#+120
        BL       DrawStrInt
        MOV      R0,#+157
??DrawWorkDesc_1:
        STR      R0,[R4, #+304]
        LDR      R0,[R4, #+332]
        CMP      R0,#+0
        LDREQ    R0,[R4, #+320]
        CMPEQ    R0,#+0
        POPNE    {R4,PC}
        LDR      R1,[R4, #+308]
        LDR      R0,[R4, #+292]
        CMP      R1,#+131
        BLT      ??DrawWorkDesc_2
        CMP      R0,#+3
        ADDLT    R0,R0,#+1
        MOVGE    R0,#+1
        MOV      R1,#+1
        B        ??DrawWorkDesc_3
??DrawWorkDesc_2:
        LDR      R2,[R4, #+312]
        CMP      R2,#+176
        MOVGE    R1,#+175
        STRGE    R1,[R4, #+312]
        CMPLT    R1,#+2
        BGE      ??DrawWorkDesc_4
        CMP      R0,#+2
        SUBGE    R0,R0,#+1
        MOVLT    R0,#+3
        MOV      R1,#+131
??DrawWorkDesc_3:
        STR      R1,[R4, #+308]
??DrawWorkDesc_4:
        LDR      R1,[R4, #+312]
        STR      R0,[R4, #+292]
        LDR      R0,[R4, #+308]
        ADD      R2,R4,#+416
        BL       DrawCross
        POP      {R4,PC}          ;; return
        CFI EndBlock cfiBlock73

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable33:
        DC32     crd

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock74 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawSysBar??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock74
        REQUIRE DrawSysBar

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock75 Using cfiCommon1
        CFI Function DrawSysBar
        ARM
// __??Code32?? __code __interwork __atpcs void DrawSysBar()
DrawSysBar:
        BX       LR               ;; return
        CFI EndBlock cfiBlock75

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock76 Using cfiCommon0
        CFI NoFunction
        THUMB
??atoi??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock76
        REQUIRE atoi

        RSEG DATA_C:CONST:SORT:NOROOT(2)
        DATA
        DC8 "2:\\"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "csm:%i">`:
        DATA
        DC8 "csm:%i"
        DC8 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "%c%02d:%02d:%02d">`:
        DATA
        DC8 "%c%02d:%02d:%02d"
        DC8 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "%d,%dV">`:
        DATA
        DC8 "%d,%dV"
        DC8 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "%d%%">`:
        DATA
        DC8 "%d%%"
        DC8 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "%c%ddb">`:
        DATA
        DC8 "%c%ddb"
        DC8 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "NULL pointer function!">`:
        DATA
        DC8 "NULL pointer function!"
        DC8 0

        RSEG DATA_C:CONST:SORT:NOROOT(0)
`?<Constant "+">`:
        DATA
        DC8 "+"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "Close">`:
        DATA
        DC8 "Close"
        DC8 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "0:\\\\shell\\\\img\\\\784.png">`:
        DATA
        DC8 "0:\\shell\\img\\784.png"
        DC8 0, 0, 0
        DC8 "KeyBoard Lock"
        DC8 0, 0
        DC8 "0:\\shell\\img\\785.png"
        DC8 0, 0, 0
        DC8 "0:\\shell\\img\\792.png"
        DC8 0, 0, 0
        DC8 "0:\\shell\\img\\779.png"
        DC8 0, 0, 0
//    3 #include "ReadCFG.c"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "NetDB x">`:
        DATA
        DC8 "NetDB x"
        DC8 "Can't open coor2.ini"
        DC8 0, 0, 0
        DC8 "0:\\coor2.ini"
        DC8 0, 0, 0
        DC8 "ShowFreeRam"
        DC8 "FreeRam y"
        DC8 0, 0
        DC8 "FreeRam x"
        DC8 0, 0
        DC8 "ShowDialogs"
        DC8 "Dialogs y"
        DC8 0, 0
        DC8 "Dialogs x"
        DC8 0, 0
        DC8 "ShowNetDB"
        DC8 0, 0
        DC8 "NetDB y"
        DC8 "ShowNetAdv"
        DC8 0
        DC8 "NetAdv y"
        DC8 0, 0, 0
        DC8 "NetAdv x"
        DC8 0, 0, 0
        DC8 "ShowClock"
        DC8 0, 0
        DC8 "Clock y"
        DC8 "Clock x"
        DC8 "ShowVolt"
        DC8 0, 0, 0
        DC8 "Volt y"
        DC8 0
        DC8 "Volt x"
        DC8 0
        DC8 "ShowCap"
        DC8 "Cap y"
        DC8 0, 0
        DC8 "Cap x"
        DC8 0, 0
        DC8 "Can't open coord.ini"
        DC8 0, 0, 0
// char const __data coord[19]
coord:
        DC8 "0:\\shell\\coord.ini"
        DC8 0

        RSEG DATA_C:CONST:SORT:NOROOT(0)
        DATA
        DC8 ":"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "Exit?">`:
        DATA
        DC8 "Exit?"
        DC8 0, 0
        DC8 "Killed"
        DC8 0

        RSEG DATA_C:CONST:SORT:NOROOT(0)
        DATA
        DC8 "0"

        RSEG DATA_C:CONST:SORT:NOROOT(0)
        DATA
        DC8 "*"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "Root">`:
        DATA
        DC8 "Root"
        DC8 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
        DATA
        DC8 "4:\\"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
        DATA
        DC8 "exe"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
        DATA
        DC8 "1:\\"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
        DATA
        DC8 "0:\\"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "\\316\\370\\350\\341\\352\\340">`:
        DATA
        DC8 "\316\370\350\341\352\340"
        DC8 0

        RSEG DATA_C:CONST:SORT:NOROOT(0)
        DATA
        DC8 "\\"

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock77 Using cfiCommon1
        CFI Function atoi
        ARM
// __??Code32?? __code __interwork __atpcs int atoi(char *)
atoi:
        MOV      R1,#+0
        MOV      R2,#+1
        MOV      R12,#+10
        B        ??atoi_0
??atoi_1:
        CMP      R3,#+58
        BCS      ??atoi_2
        MLA      R1,R12,R1,R3
        SUB      R1,R1,#+48
??atoi_3:
        ADD      R0,R0,#+1
??atoi_0:
        LDRB     R3,[R0, #+0]
        CMP      R3,#+48
        BCS      ??atoi_1
        CMP      R3,#+45
        MVNEQ    R2,#+0
        BEQ      ??atoi_3
??atoi_2:
        MUL      R0,R2,R1
        BX       LR               ;; return
        CFI EndBlock cfiBlock77

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock78 Using cfiCommon0
        CFI NoFunction
        THUMB
??LoadParamsCrd??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock78
        REQUIRE LoadParamsCrd

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock79 Using cfiCommon1
        CFI Function LoadParamsCrd
        ARM
// __??Code32?? __code __interwork __atpcs void LoadParamsCrd()
LoadParamsCrd:
        PUSH     {R4-R9,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R9 Frame(CFA, -8)
        CFI R8 Frame(CFA, -12)
        CFI R7 Frame(CFA, -16)
        CFI R6 Frame(CFA, -20)
        CFI R5 Frame(CFA, -24)
        CFI R4 Frame(CFA, -28)
        CFI CFA R13+28
        LDR      R4,??DataTable40  ;; `?<Constant "NetDB x">`
        SUB      SP,SP,#+788
        CFI CFA R13+816
        SUB      SP,SP,#+9216
        CFI CFA R13+10032
        MOV      R3,SP
        MOV      R2,#+128
        MOV      R1,#+32768
        ADD      R0,R4,#+280
        SWI      +10
        MOV      R5,R0
        CMN      R5,#+1
        BNE      ??LoadParamsCrd_0
        ADD      R1,R4,#+256
        MOV      R0,#+1
        SWI      +328
        MOV      R1,SP
        MVN      R0,#+0
        SWI      +13
??LoadParamsCrd_0:
        MOV      R3,SP
        MOV      R2,#+15
        ORR      R2,R2,#0x2700
        ADD      R1,SP,#+4
        MOV      R0,R5
        SWI      +11
        LDR      R0,??DataTable41  ;; crd
        MOV      R6,#+12
        ADD      R7,R0,#+40
        ADD      R8,R0,#+4
        MOV      R9,#+3
??LoadParamsCrd_1:
        ADD      R1,R4,#+248
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+68]
        ADD      R1,R4,#+240
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+72]
        ADD      R1,R4,#+232
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+76]
        ADD      R1,R4,#+224
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+104]
        ADD      R1,R4,#+216
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+108]
        ADD      R1,R4,#+204
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+112]
        ADD      R1,R4,#+196
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R8, #+0]
        ADD      R1,R4,#+188
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R8], #+4
        ADD      R1,R4,#+176
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R8], #+8
        ADD      R1,R4,#+164
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+36]
        ADD      R1,R4,#+152
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+36]
        ADD      R1,R4,#+140
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+40]
        MOV      R1,R4
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+0]
        ADD      R1,R4,#+132
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+0]
        ADD      R1,R4,#+120
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+4]
        ADD      R1,R4,#+108
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+140]
        ADD      R1,R4,#+96
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+144]
        ADD      R1,R4,#+84
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+148]
        ADD      R1,R4,#+72
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+176]
        ADD      R1,R4,#+60
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+180]
        ADD      R1,R4,#+48
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R6,R0
        BL       atoi
        STR      R0,[R7, #+184]
        ADD      R6,R6,#+4
        ADD      R7,R7,#+12
        SUBS     R9,R9,#+1
        BNE      ??LoadParamsCrd_1
        MOV      R1,SP
        MOV      R0,R5
        SWI      +13
        ADD      SP,SP,#+788
        CFI CFA R13+9244
        ADD      SP,SP,#+9216
        CFI CFA R13+28
        POP      {R4-R9,PC}       ;; return
        CFI EndBlock cfiBlock79

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock80 Using cfiCommon0
        CFI NoFunction
        THUMB
??process??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock80
        REQUIRE process

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock81 Using cfiCommon1
        CFI Function process
        ARM
// __??Code32?? __code __interwork __atpcs void process(char *, int)
process:
        PUSH     {R4}
        CFI R4 Frame(CFA, -4)
        CFI CFA R13+4
        LDR      R4,??DataTable38  ;; name
        MOV      R12,#+580
        MLA      R1,R12,R1,R4
        MOV      R2,#+0
        MOV      R3,R0
        MOV      R12,R1
        B        ??process_0
??process_1:
        LDRB     R4,[R3], #+1
        STRB     R4,[R12], #+1
??process_0:
        LDRB     R4,[R3, #+0]
        ADD      R2,R2,#+1
        CMP      R4,#+124
        BNE      ??process_1
        ADD      R3,R1,#+64
        B        ??process_2
??process_3:
        MOV      R2,R4
        STRB     R2,[R3], #+1
        MOV      R2,R12
??process_2:
        LDRB     R4,[R2, +R0]
        ADD      R12,R2,#+1
        CMP      R4,#+124
        BNE      ??process_3
        ADD      R1,R1,#+320
        B        ??process_4
??process_5:
        STRB     R2,[R1], #+1
        ADD      R12,R12,#+1
??process_4:
        LDRB     R2,[R12, +R0]
        CMP      R2,#+124
        BNE      ??process_5
        POP      {R4}
        CFI R4 SameValue
        CFI CFA R13+0
        BX       LR               ;; return
        CFI EndBlock cfiBlock81

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock82 Using cfiCommon0
        CFI NoFunction
        THUMB
??SaveNamePanel??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock82
        REQUIRE SaveNamePanel

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock83 Using cfiCommon1
        CFI Function SaveNamePanel
        ARM
// __??Code32?? __code __interwork __atpcs void SaveNamePanel()
SaveNamePanel:
        LDR      R1,??DataTable38  ;; name
        MOV      R0,#+0
        LDR      R2,[R1, #+576]
        CMP      R2,#+0
        BXMI     LR
        LDR      R3,??SaveNamePanel_0  ;; crd + 252
??SaveNamePanel_1:
        STR      R1,[R3], #+4
        ADD      R0,R0,#+1
        ADD      R1,R1,#+580
        CMP      R2,R0
        BGE      ??SaveNamePanel_1
        BX       LR               ;; return
        DATA
??SaveNamePanel_0:
        DC32     crd + 252
        CFI EndBlock cfiBlock83

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock84 Using cfiCommon0
        CFI NoFunction
        THUMB
??LoadParamsPanel??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock84
        REQUIRE LoadParamsPanel

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock85 Using cfiCommon1
        CFI Function LoadParamsPanel
        ARM
// __??Code32?? __code __interwork __atpcs void LoadParamsPanel()
LoadParamsPanel:
        PUSH     {R4-R10,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R10 Frame(CFA, -8)
        CFI R9 Frame(CFA, -12)
        CFI R8 Frame(CFA, -16)
        CFI R7 Frame(CFA, -20)
        CFI R6 Frame(CFA, -24)
        CFI R5 Frame(CFA, -28)
        CFI R4 Frame(CFA, -32)
        CFI CFA R13+32
        LDR      R5,??LoadParamsPanel_0+0x4  ;; `?<Constant "Can\\'t open panel.ini">`
        SUB      SP,SP,#+4
        CFI CFA R13+36
        MOV      R3,SP
        MOV      R2,#+128
        MOV      R1,#+32768
        ADD      R0,R5,#+24
        SWI      +10
        MOV      R4,R0
        CMN      R4,#+1
        BNE      ??LoadParamsPanel_1
        MOV      R1,R5
        MOV      R0,#+1
        SWI      +328
        MOV      R1,SP
        MVN      R0,#+0
        SWI      +13
        POP      {R0,R4-R10,PC}
??LoadParamsPanel_1:
        MOV      R0,#+16
        ORR      R0,R0,#0x2700
        SWI      +20
        MOV      R5,R0
        MOV      R0,#+256
        SWI      +20
        MOV      R6,R0
        CMP      R5,#+0
        CMPNE    R6,#+0
        BEQ      ??LoadParamsPanel_2
        LDR      R10,??LoadParamsPanel_0+0x8  ;; NumOfItems
        MOV      R3,SP
        MOV      R2,#+15
        ORR      R2,R2,#0x2700
        MOV      R1,R5
        MOV      R0,R4
        SWI      +11
        MOV      R7,R0
        MOV      R9,#+0
        CMP      R7,#+1
        BGE      ??LoadParamsPanel_3
??LoadParamsPanel_2:
        MOV      R0,R5
        SWI      +21
        MOV      R0,R6
        SWI      +21
        MOV      R1,SP
        MOV      R0,R4
        SWI      +13
        POP      {R0,R4-R10,PC}   ;; return
??LoadParamsPanel_4:
        LDRB     R2,[R1], #+1
        MOV      R9,R8
        STRB     R2,[R0], #+1
??LoadParamsPanel_5:
        LDRB     R2,[R1, #+0]
        ADD      R8,R9,#+1
        CMP      R2,#+13
        BEQ      ??LoadParamsPanel_6
        CMP      R9,R7
        BLT      ??LoadParamsPanel_4
??LoadParamsPanel_6:
        LDR      R1,[R10, #+0]
        MOV      R0,R6
        BL       process
        LDR      R0,[R10, #+0]
        LDR      R1,??DataTable38  ;; name
        ADD      R0,R0,#+1
        STR      R0,[R10, #+0]
        MOV      R0,#+576
        LDR      R2,[R0, +R1]
        MOV      R9,R8
        ADD      R2,R2,#+1
        STR      R2,[R0, +R1]
??LoadParamsPanel_3:
        CMP      R9,R7
        BGE      ??LoadParamsPanel_2
        ADR      R1,??LoadParamsPanel_0  ;; ""
        MOV      R0,R6
        SWI      +26
        ADD      R1,R9,R5
        MOV      R0,R6
        B        ??LoadParamsPanel_5
        DATA
??LoadParamsPanel_0:
        DC8      "",+0,+0,+0
        DC32     `?<Constant "Can\\'t open panel.ini">`
        DC32     NumOfItems
        CFI EndBlock cfiBlock85

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable38:
        DC32     name

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock86 Using cfiCommon0
        CFI NoFunction
        THUMB
??LoadParamsConfig??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock86
        REQUIRE LoadParamsConfig

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock87 Using cfiCommon1
        CFI Function LoadParamsConfig
        ARM
// __??Code32?? __code __interwork __atpcs void LoadParamsConfig()
LoadParamsConfig:
        PUSH     {R4-R6,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R6 Frame(CFA, -8)
        CFI R5 Frame(CFA, -12)
        CFI R4 Frame(CFA, -16)
        CFI CFA R13+16
        LDR      R4,??LoadParamsConfig_0  ;; `?<Constant "cursor_img">`
        SUB      SP,SP,#+788
        CFI CFA R13+804
        SUB      SP,SP,#+9216
        CFI CFA R13+10020
        MOV      R3,SP
        MOV      R2,#+128
        MOV      R1,#+32768
        ADD      R0,R4,#+52
        SWI      +10
        MOV      R5,R0
        CMN      R5,#+1
        BNE      ??LoadParamsConfig_1
        ADD      R1,R4,#+28
        MOV      R0,#+1
        SWI      +328
        MOV      R1,SP
        MVN      R0,#+0
        SWI      +13
??LoadParamsConfig_1:
        LDR      R6,??DataTable51  ;; crd
        MOV      R3,SP
        MOV      R2,#+15
        ORR      R2,R2,#0x2700
        ADD      R1,SP,#+4
        MOV      R0,R5
        SWI      +11
        ADD      R1,R4,#+12
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R0,#+13
        BL       atoi
        STR      R0,[R6, #+288]
        MOV      R1,R4
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R0,R0,#+11
        BL       atoi
        STR      R0,[R6, #+296]
        MOV      R1,SP
        MOV      R0,R5
        SWI      +13
        ADD      SP,SP,#+788
        CFI CFA R13+9232
        ADD      SP,SP,#+9216
        CFI CFA R13+16
        POP      {R4-R6,PC}       ;; return
        DATA
??LoadParamsConfig_0:
        DC32     `?<Constant "cursor_img">`
        CFI EndBlock cfiBlock87

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock88 Using cfiCommon0
        CFI NoFunction
        THUMB
??SaveParamsConfig??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock88
        REQUIRE SaveParamsConfig

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock89 Using cfiCommon1
        CFI Function SaveParamsConfig
        ARM
// __??Code32?? __code __interwork __atpcs void SaveParamsConfig()
SaveParamsConfig:
        PUSH     {R4-R6,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R6 Frame(CFA, -8)
        CFI R5 Frame(CFA, -12)
        CFI R4 Frame(CFA, -16)
        CFI CFA R13+16
        LDR      R4,??DataTable40  ;; `?<Constant "NetDB x">`
        SUB      SP,SP,#+788
        CFI CFA R13+804
        SUB      SP,SP,#+9216
        CFI CFA R13+10020
        MOV      R3,SP
        MOV      R2,#+128
        ADD      R1,R2,#+138
        ADD      R0,R4,#+32
        SWI      +10
        MOV      R5,R0
        CMN      R5,#+1
        BNE      ??SaveParamsConfig_0
        ADD      R1,R4,#+8
        MOV      R0,#+1
        SWI      +328
        MOV      R1,SP
        MVN      R0,#+0
        SWI      +13
??SaveParamsConfig_0:
        MOV      R0,#+5
        SWI      +20
        MOV      R6,R0
        ADD      R1,R4,#+196
        ADD      R0,SP,#+4
        SWI      +280
        ADD      R1,R0,#+8
        MOV      R0,SP
        PUSH     {R0}
        CFI CFA R13+10024
        ADD      R3,SP,#+4
        MOV      R2,#+0
        MOV      R0,R5
        SWI      +15
        LDR      R0,??DataTable41  ;; crd
        LDR      R2,[R0, #+0]
        ADD      R1,R0,#+412
        MOV      R0,R6
        SWI      +22
        ADD      R3,SP,#+4
        MOV      R2,#+2
        MOV      R1,R6
        MOV      R0,R5
        SWI      +12
        ADD      R1,SP,#+4
        MOV      R0,R5
        SWI      +13
        ADD      SP,SP,#+792
        CFI CFA R13+9232
        ADD      SP,SP,#+9216
        CFI CFA R13+16
        POP      {R4-R6,PC}       ;; return
        CFI EndBlock cfiBlock89

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable40:
        DC32     `?<Constant "NetDB x">`

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable41:
        DC32     crd

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock90 Using cfiCommon0
        CFI NoFunction
        THUMB
??processmenu??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock90
        REQUIRE processmenu

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock91 Using cfiCommon1
        CFI Function processmenu
        ARM
// __??Code32?? __code __interwork __atpcs void processmenu(char *, int)
processmenu:
        PUSH     {R4}
        CFI R4 Frame(CFA, -4)
        CFI CFA R13+4
        LDR      R4,??DataTable44  ;; mnu
        MOV      R12,#+804
        MLA      R1,R12,R1,R4
        MOV      R2,#+0
        MOV      R3,R0
        ADD      R12,R1,#+256
        B        ??processmenu_0
??processmenu_1:
        LDRB     R4,[R3], #+1
        STRB     R4,[R12], #+1
??processmenu_0:
        LDRB     R4,[R3, #+0]
        ADD      R2,R2,#+1
        CMP      R4,#+124
        BNE      ??processmenu_1
        MOV      R3,R1
        B        ??processmenu_2
??processmenu_3:
        MOV      R2,R4
        STRB     R2,[R3], #+1
        MOV      R2,R12
??processmenu_2:
        LDRB     R4,[R2, +R0]
        ADD      R12,R2,#+1
        CMP      R4,#+124
        BNE      ??processmenu_3
        ADD      R2,R1,#+544
        B        ??processmenu_4
??processmenu_5:
        STRB     R4,[R2], #+1
        MOV      R12,R3
??processmenu_4:
        LDRB     R4,[R12, +R0]
        ADD      R3,R12,#+1
        CMP      R4,#+124
        BNE      ??processmenu_5
        ADD      R1,R1,#+288
        B        ??processmenu_6
??processmenu_7:
        STRB     R2,[R1], #+1
        ADD      R3,R3,#+1
??processmenu_6:
        LDRB     R2,[R3, +R0]
        CMP      R2,#+124
        BNE      ??processmenu_7
        POP      {R4}
        CFI R4 SameValue
        CFI CFA R13+0
        BX       LR               ;; return
        CFI EndBlock cfiBlock91

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock92 Using cfiCommon0
        CFI NoFunction
        THUMB
??SaveNameMENU??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock92
        REQUIRE SaveNameMENU

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock93 Using cfiCommon1
        CFI Function SaveNameMENU
        ARM
// __??Code32?? __code __interwork __atpcs void SaveNameMENU()
SaveNameMENU:
        LDR      R1,??DataTable44  ;; mnu
        MOV      R0,#+0
        LDR      R2,[R1, #+800]
        CMP      R2,#+0
        BXMI     LR
        LDR      R3,??SaveNameMENU_0  ;; crd + 336
        ADD      R1,R1,#+256
??SaveNameMENU_1:
        STR      R1,[R3], #+4
        ADD      R0,R0,#+1
        ADD      R1,R1,#+804
        CMP      R2,R0
        BGE      ??SaveNameMENU_1
        BX       LR               ;; return
        DATA
??SaveNameMENU_0:
        DC32     crd + 336
        CFI EndBlock cfiBlock93

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock94 Using cfiCommon0
        CFI NoFunction
        THUMB
??LoadParamsMENU??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock94
        REQUIRE LoadParamsMENU

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock95 Using cfiCommon1
        CFI Function LoadParamsMENU
        ARM
// __??Code32?? __code __interwork __atpcs void LoadParamsMENU()
LoadParamsMENU:
        PUSH     {R4-R9,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R9 Frame(CFA, -8)
        CFI R8 Frame(CFA, -12)
        CFI R7 Frame(CFA, -16)
        CFI R6 Frame(CFA, -20)
        CFI R5 Frame(CFA, -24)
        CFI R4 Frame(CFA, -28)
        CFI CFA R13+28
        LDR      R5,??LoadParamsMENU_0  ;; `?<Constant "Can\\'t open menu.ini">`
        SUB      SP,SP,#+4
        CFI CFA R13+32
        MOV      R3,SP
        MOV      R2,#+128
        MOV      R1,#+32768
        ADD      R0,R5,#+20
        SWI      +10
        MOV      R4,R0
        CMN      R4,#+1
        BNE      ??LoadParamsMENU_1
        MOV      R1,R5
        MOV      R0,#+1
        SWI      +328
        MOV      R1,SP
        MVN      R0,#+0
        SWI      +13
        POP      {R0,R4-R9,PC}
??LoadParamsMENU_1:
        MOV      R0,#+16
        ORR      R0,R0,#0x2700
        SWI      +20
        MOV      R5,R0
        MOV      R0,#+256
        SWI      +20
        MOV      R6,R0
        CMP      R5,#+0
        CMPNE    R6,#+0
        BEQ      ??LoadParamsMENU_2
        LDR      R9,??LoadParamsMENU_0+0x4  ;; NumOfItems2
        MOV      R3,SP
        MOV      R2,#+15
        ORR      R2,R2,#0x2700
        MOV      R1,R5
        MOV      R0,R4
        SWI      +11
        MOV      R7,R0
        MOV      R0,#+0
        CMP      R7,#+1
        BGE      ??LoadParamsMENU_3
??LoadParamsMENU_2:
        MOV      R0,R5
        SWI      +21
        MOV      R0,R6
        SWI      +21
        MOV      R1,SP
        MOV      R0,R4
        SWI      +13
        POP      {R0,R4-R9,PC}    ;; return
??LoadParamsMENU_4:
        LDRB     R0,[R2], #+1
        STRB     R0,[R1], #+1
        MOV      R0,R8
??LoadParamsMENU_5:
        LDRB     R3,[R2, #+0]
        ADD      R8,R0,#+1
        CMP      R3,#+13
        BEQ      ??LoadParamsMENU_6
        CMP      R0,R7
        BLT      ??LoadParamsMENU_4
??LoadParamsMENU_6:
        LDR      R1,[R9, #+0]
        MOV      R0,R6
        BL       processmenu
        LDR      R1,[R9, #+0]
        LDR      R2,??DataTable44  ;; mnu
        ADD      R1,R1,#+1
        STR      R1,[R9, #+0]
        MOV      R1,#+800
        LDR      R3,[R1, +R2]
        MOV      R0,R8
        ADD      R3,R3,#+1
        STR      R3,[R1, +R2]
??LoadParamsMENU_3:
        CMP      R0,R7
        BGE      ??LoadParamsMENU_2
        ADD      R2,R0,R5
        MOV      R1,R6
        B        ??LoadParamsMENU_5
        DATA
??LoadParamsMENU_0:
        DC32     `?<Constant "Can\\'t open menu.ini">`
        DC32     NumOfItems2
        CFI EndBlock cfiBlock95

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable44:
        DC32     mnu

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock96 Using cfiCommon0
        CFI NoFunction
        THUMB
??LoadAllConfig??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock96
        REQUIRE LoadAllConfig

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock97 Using cfiCommon1
        CFI Function LoadAllConfig
        ARM
// __??Code32?? __code __interwork __atpcs void LoadAllConfig()
LoadAllConfig:
        BX       LR               ;; return
        CFI EndBlock cfiBlock97

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock98 Using cfiCommon0
        CFI NoFunction
        THUMB
??Free_FLIST??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock98
        REQUIRE Free_FLIST
//    4 #include "main.h"
//    5 #include "fileman.c"

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// int __data size
size:
        DS8 4

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
// FLIST volatile *__data fltop
fltop:
        DS8 4

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock99 Using cfiCommon1
        CFI Function Free_FLIST
        ARM
// __??Code32?? __code __interwork __atpcs void Free_FLIST(void)
Free_FLIST:
        PUSH     {R4-R6,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R6 Frame(CFA, -8)
        CFI R5 Frame(CFA, -12)
        CFI R4 Frame(CFA, -16)
        CFI CFA R13+16
        SWI      +326
        LDR      R0,??DataTable49  ;; fltop
        MOV      R1,#+0
        LDR      R4,[R0, #+0]
        STR      R1,[R0, #+0]
        SWI      +327
        CMP      R4,#+0
        POPEQ    {R4-R6,PC}
??Free_FLIST_0:
        MOV      R5,R4
        LDR      R4,[R4, #+0]
        ADD      R6,R5,#+4
        LDR      R0,[R6, #+0]
        SWI      +21
        LDR      R0,[R6, #+4]
        SWI      +21
        MOV      R0,R5
        SWI      +21
        CMP      R4,#+0
        BNE      ??Free_FLIST_0
        POP      {R4-R6,PC}       ;; return
        CFI EndBlock cfiBlock99

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock100 Using cfiCommon0
        CFI NoFunction
        THUMB
??GetFListN??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock100
        REQUIRE GetFListN

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data back[3]
back:
        DATA
        DC8 ".."
        DC8 0
        DC8 "ROOT"
        DC8 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "Can\\'t open menu.ini">`:
        DATA
        DC8 "Can't open menu.ini"
// char const __data menucfg[18]
menucfg:
        DC8 "0:\\shell\\menu.ini"
        DC8 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "cursor_img">`:
        DATA
        DC8 "cursor_img"
        DC8 0
        DC8 "cursor_speed"
        DC8 0, 0, 0
        DC8 "Can't open config.ini"
        DC8 0, 0
// char const __data config[20]
config:
        DC8 "0:\\shell\\config.ini"

        RSEG DATA_C:CONST:SORT:NOROOT(0)
        DATA
        DC8 ""

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "Can\\'t open panel.ini">`:
        DATA
        DC8 "Can't open panel.ini"
        DC8 0, 0, 0
// char const __data panel[19]
panel:
        DC8 "0:\\shell\\panel.ini"
        DC8 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "Select">`:
        DATA
        DC8 "Select"
        DC8 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "Applications: %d kb">`:
        DATA
        DC8 "Applications: %d kb"
        DC8 "\321\356\361\362\356\377\355\350\345 \357\340\354\377\362\350:\012\304\356\361\362\363\357\355\356: %d kb\012\321\342\356\341\356\344\355\356: %d kb"
        DC8 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "0:\\\\zbin\\\\mc\\\\mc.elf">`:
        DATA
        DC8 "0:\\zbin\\mc\\mc.elf"
        DC8 0, 0
        DC8 "FLSH_FLEXPLORER"
        DC8 "0:\\zbin\\naticq\\naticq.elf"
        DC8 0, 0
        DC8 "ELSE_DEVELP_MNU"
        DC8 "ORGZ_CALENDERMV"
        DC8 "0:\\zbin\\utilities\\CfgEdit.elf"
        DC8 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(0)
        DATA
        DC8 "%d"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "\\\\*.*">`:
        DATA
        DC8 "\\*.*"
        DC8 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "0:\\\\shell\\\\img\\\\cursor.png">`:
        DATA
        DC8 "0:\\shell\\img\\cursor.png"

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data IMG1[126]
IMG1:
        DATA
        DC8 "0:\\shell\\icons\\app.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0
// char const __data IMG2[126]
IMG2:
        DC8 "0:\\shell\\icons\\BCFG.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0
// char const __data IMG3[126]
IMG3:
        DC8 "0:\\shell\\icons\\calendar.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
// char const __data IMG4[126]
IMG4:
        DC8 "0:\\shell\\icons\\dev.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data IMG5[126]
IMG5:
        DATA
        DC8 "0:\\shell\\icons\\ELF.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data IMG6[126]
IMG6:
        DATA
        DC8 "0:\\shell\\icons\\explorer.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU1_s[128]
MENU1_s:
        DATA
        DC8 "0:\\shell\\menu\\1_s.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU2_s[128]
MENU2_s:
        DATA
        DC8 "0:\\shell\\menu\\2_s.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU3_s[128]
MENU3_s:
        DATA
        DC8 "0:\\shell\\menu\\3_s.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU4_s[128]
MENU4_s:
        DATA
        DC8 "0:\\shell\\menu\\4_s.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU5_s[128]
MENU5_s:
        DATA
        DC8 "0:\\shell\\menu\\5_s.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU6_s[128]
MENU6_s:
        DATA
        DC8 "0:\\shell\\menu\\6_s.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU1_b[128]
MENU1_b:
        DATA
        DC8 "0:\\shell\\menu\\1_b.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU2_b[128]
MENU2_b:
        DATA
        DC8 "0:\\shell\\menu\\2_b.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU3_b[128]
MENU3_b:
        DATA
        DC8 "0:\\shell\\menu\\3_b.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU4_b[128]
MENU4_b:
        DATA
        DC8 "0:\\shell\\menu\\4_b.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU5_b[128]
MENU5_b:
        DATA
        DC8 "0:\\shell\\menu\\5_b.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data MENU6_b[128]
MENU6_b:
        DATA
        DC8 "0:\\shell\\menu\\6_b.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_C:CONST:SORT:NOROOT(2)
// char const __data bg3img[128]
bg3img:
        DATA
        DC8 "0:\\shell\\img\\BG.png"
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock101 Using cfiCommon1
        CFI Function GetFListN
        ARM
// __??Code32?? __code __interwork __atpcs int GetFListN()
GetFListN:
        LDR      R1,??DataTable49  ;; fltop
        MOV      R0,#+0
        B        ??GetFListN_0
??GetFListN_1:
        ADD      R0,R0,#+1
??GetFListN_0:
        LDR      R1,[R1, #+0]
        CMP      R1,#+0
        BNE      ??GetFListN_1
        BX       LR               ;; return
        CFI EndBlock cfiBlock101

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock102 Using cfiCommon0
        CFI NoFunction
        THUMB
??GetFoldersLevel??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock102
        REQUIRE GetFoldersLevel

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock103 Using cfiCommon1
        CFI Function GetFoldersLevel
        ARM
// __??Code32?? __code __interwork __atpcs int GetFoldersLevel(char *)
GetFoldersLevel:
        MOV      R1,#+0
        B        ??GetFoldersLevel_0
??GetFoldersLevel_1:
        LDRB     R2,[R0, #+0]
        CMP      R2,#+92
        BNE      ??GetFoldersLevel_0
        LDRB     R2,[R0, #+1]
        CMP      R2,#+0
        ADDNE    R1,R1,#+1
??GetFoldersLevel_0:
        LDRB     R2,[R0], #+1
        CMP      R2,#+0
        BNE      ??GetFoldersLevel_1
        MOV      R0,R1
        BX       LR               ;; return
        CFI EndBlock cfiBlock103

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock104 Using cfiCommon0
        CFI NoFunction
        THUMB
??strcmp_nocase??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock104
        REQUIRE strcmp_nocase

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock105 Using cfiCommon1
        CFI Function strcmp_nocase
        ARM
// __??Code32?? __code __interwork __atpcs int strcmp_nocase(char const *, char const *)
strcmp_nocase:
??strcmp_nocase_0:
        LDRB     R2,[R0], #+1
        LDRB     R3,[R1], #+1
        TST      R2,#0x40
        ANDNE    R2,R2,#0xDF
        TST      R3,#0x40
        ANDNE    R3,R3,#0xDF
        SUBS     R2,R2,R3
        BNE      ??strcmp_nocase_1
        CMP      R3,#+0
        BNE      ??strcmp_nocase_0
??strcmp_nocase_1:
        MOV      R0,R2
        BX       LR               ;; return
        CFI EndBlock cfiBlock105

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock106 Using cfiCommon0
        CFI NoFunction
        THUMB
??AddToFList??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock106
        REQUIRE AddToFList

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock107 Using cfiCommon1
        CFI Function AddToFList
        ARM
// __??Code32?? __code __interwork __atpcs struct <unnamed> *AddToFList(char const *, char const *, int)
AddToFList:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        MOV      R5,R0
        MOV      R6,R1
        MOV      R7,R2
        MOV      R0,#+16
        SWI      +20
        MOV      R4,R0
        MOV      R0,R5
        SWI      +27
        ADD      R0,R0,#+1
        SWI      +20
        MOV      R1,R5
        LDR      R5,??DataTable49  ;; fltop
        STR      R0,[R4, #+4]
        SWI      +26
        MOV      R0,R6
        SWI      +27
        ADD      R0,R0,#+1
        SWI      +20
        STR      R0,[R4, #+8]
        MOV      R1,R6
        SWI      +26
        STR      R7,[R4, #+12]
        MOV      R0,#+0
        STR      R0,[R4, #+0]
        LDR      R6,[R5, #+0]
        CMP      R6,#+0
        BEQ      ??AddToFList_0
        LDR      R7,[R4, #+8]
??AddToFList_1:
        LDR      R0,[R6, #+8]
        MOV      R1,R7
        BL       strcmp_nocase
        CMP      R0,#+0
        BPL      ??AddToFList_2
        MOV      R5,R6
        LDR      R6,[R6, #+0]
        CMP      R6,#+0
        BNE      ??AddToFList_1
??AddToFList_2:
        STR      R6,[R4, #+0]
??AddToFList_0:
        STR      R4,[R5, #+0]
        MOV      R0,R4
        POP      {R4-R7,PC}       ;; return
        CFI EndBlock cfiBlock107

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock108 Using cfiCommon0
        CFI NoFunction
        THUMB
??FindFiles??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock108
        REQUIRE FindFiles

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock109 Using cfiCommon1
        CFI Function FindFiles
        ARM
// __??Code32?? __code __interwork __atpcs void FindFiles(char *, int)
FindFiles:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        SUB      SP,SP,#+828
        CFI CFA R13+840
        MOV      R4,R1
        MOV      R5,R0
        BL       Free_FLIST
        MOV      R1,R5
        ADD      R0,SP,#+444
        SWI      +26
        ADR      R1,??FindFiles_0  ;; "*"
        ADD      R0,SP,#+444
        SWI      +23
        MOV      R0,R5
        BL       GetFoldersLevel
        LDR      R3,??DataTable50  ;; back
        CMP      R0,#+0
        BNE      ??FindFiles_1
        MOV      R2,#+1
        MOV      R1,R3
        ADD      R0,R3,#+4
        B        ??FindFiles_2
??FindFiles_1:
        ADD      R1,SP,#+700
        MOV      R2,#+0
??FindFiles_3:
        LDRB     R12,[R5, #+0]
        CMP      R12,#+0
        BEQ      ??FindFiles_4
        LDRB     R12,[R5], #+1
        STRB     R12,[R1], #+1
        CMP      R12,#+92
        ADDEQ    R2,R2,#+1
        CMPEQ    R2,R0
        BNE      ??FindFiles_3
??FindFiles_4:
        MOV      R0,#+0
        STRB     R0,[R1, #+0]
        MOV      R2,#+1
        MOV      R1,R3
        ADD      R0,SP,#+700
??FindFiles_2:
        BL       AddToFList
        MOV      R2,SP
        ADD      R1,SP,#+444
        ADD      R0,SP,#+4
        SWI      +107
        CMP      R0,#+0
        ADR      R5,??FindFiles_0+0x4  ;; "\\"
        BEQ      ??FindFiles_5
??FindFiles_6:
        ADD      R1,SP,#+44
        ADD      R0,SP,#+444
        SWI      +26
        MOV      R1,R5
        ADD      R0,SP,#+444
        SWI      +23
        ADD      R1,SP,#+173
        ADD      R0,SP,#+444
        SWI      +23
        LDRSH    R0,[SP, #+18]
        TST      R0,#0x10
        BEQ      ??FindFiles_7
        MOV      R1,R5
        ADD      R0,SP,#+700
        SWI      +26
        ADD      R1,SP,#+173
        ADD      R0,SP,#+700
        SWI      +23
        MOV      R1,R5
        ADD      R0,SP,#+444
        SWI      +23
        MOV      R2,#+1
        ADD      R1,SP,#+700
        B        ??FindFiles_8
??FindFiles_7:
        CMP      R4,#+0
        BEQ      ??FindFiles_9
        MOV      R2,#+0
        ADD      R1,SP,#+173
??FindFiles_8:
        ADD      R0,SP,#+444
        BL       AddToFList
??FindFiles_9:
        MOV      R1,SP
        ADD      R0,SP,#+4
        SWI      +108
        CMP      R0,#+0
        BNE      ??FindFiles_6
??FindFiles_5:
        MOV      R1,SP
        ADD      R0,SP,#+4
        SWI      +109
        ADD      SP,SP,#+828
        CFI CFA R13+12
        POP      {R4,R5,PC}       ;; return
        DATA
??FindFiles_0:
        DC8      "*",+0,+0
        DC8      "\\",+0,+0
        CFI EndBlock cfiBlock109

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock110 Using cfiCommon0
        CFI NoFunction
        THUMB
??FindFLISTtByNS??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock110
        REQUIRE FindFLISTtByNS

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock111 Using cfiCommon1
        CFI Function FindFLISTtByNS
        ARM
// __??Code32?? __code __interwork __atpcs struct <unnamed> *FindFLISTtByNS(int *, int)
FindFLISTtByNS:
        LDR      R2,??DataTable49  ;; fltop
        B        ??FindFLISTtByNS_0
??FindFLISTtByNS_1:
        SUB      R3,R3,#+1
        STR      R3,[R0, #+0]
??FindFLISTtByNS_0:
        LDR      R2,[R2, #+0]
        CMP      R2,#+0
        BEQ      ??FindFLISTtByNS_2
        LDR      R3,[R2, #+12]
        CMP      R3,R1
        BNE      ??FindFLISTtByNS_0
        LDR      R3,[R0, #+0]
        CMP      R3,#+0
        BNE      ??FindFLISTtByNS_1
        MOV      R0,R2
        BX       LR
??FindFLISTtByNS_2:
        MOV      R0,#+0
        BX       LR               ;; return
        CFI EndBlock cfiBlock111

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable49:
        DC32     fltop

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock112 Using cfiCommon0
        CFI NoFunction
        THUMB
??FindFLISTtByN??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock112
        REQUIRE FindFLISTtByN

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock113 Using cfiCommon1
        CFI Function FindFLISTtByN
        ARM
// __??Code32?? __code __interwork __atpcs struct <unnamed> *FindFLISTtByN(int)
FindFLISTtByN:
        PUSH     {R0,LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+8
        MOV      R1,#+1
        MOV      R0,SP
        BL       FindFLISTtByNS
        LDR      R1,[SP, #+0]
        CMP      R1,#+0
        BNE      ??FindFLISTtByN_0
        CMP      R0,#+0
        POPNE    {R1,PC}
??FindFLISTtByN_0:
        MOV      R1,#+0
        MOV      R0,SP
        BL       FindFLISTtByNS
        POP      {R1,PC}
        CFI EndBlock cfiBlock113

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock114 Using cfiCommon0
        CFI NoFunction
        THUMB
??SavePath??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock114
        REQUIRE SavePath

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock115 Using cfiCommon1
        CFI Function SavePath
        ARM
// __??Code32?? __code __interwork __atpcs void SavePath(void *, struct <unnamed> *)
SavePath:
        LDR      R0,[R1, #+4]
        B        start            ;; tailcall
        CFI EndBlock cfiBlock115

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock116 Using cfiCommon0
        CFI NoFunction
        THUMB
??filelist_menu_onkey??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock116
        REQUIRE filelist_menu_onkey

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock117 Using cfiCommon1
        CFI Function filelist_menu_onkey
        ARM
// __??Code32?? __code __interwork __atpcs int filelist_menu_onkey(void *, GUI_MSG *)
filelist_menu_onkey:
        PUSH     {R4-R6,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R6 Frame(CFA, -8)
        CFI R5 Frame(CFA, -12)
        CFI R4 Frame(CFA, -16)
        CFI CFA R13+16
        MOV      R4,R0
        MOV      R6,R1
        SWI      +480
        MOV      R0,R4
        SWI      +399
        BL       FindFLISTtByN
        LDR      R1,??DataTable50  ;; back
        MOV      R5,R0
        LDRSH    R0,[R6, #+2]
        CMP      R0,#+61
        BNE      ??filelist_menu_onkey_0
        CMP      R5,#+0
        BEQ      ??filelist_menu_onkey_1
        LDR      R0,[R5, #+12]
        CMP      R0,#+1
        BNE      ??filelist_menu_onkey_2
        LDR      R0,[R5, #+4]
        ADD      R1,R1,#+4
        SWI      +25
        CMP      R0,#+0
        BEQ      ??filelist_menu_onkey_3
        LDR      R6,??filelist_menu_onkey_4  ;; filelist_HDR
        LDR      R1,[R5, #+4]
        MOV      R2,#+127
        ADD      R0,R6,#+20
        SWI      +278
        LDR      R0,[R5, #+4]
        SWI      +27
        CMP      R0,#+128
        MOVGE    R0,#+127
        ADD      R0,R0,R6
        MOV      R1,#+0
        STRB     R1,[R0, #+20]
        LDR      R0,[R5, #+4]
        MOV      R1,#+1
        BL       FindFiles
        B        ??filelist_menu_onkey_5
??filelist_menu_onkey_3:
        BL       CreateRootMenu
??filelist_menu_onkey_5:
        BL       GetFListN
        MOV      R1,R0
        MOV      R0,R4
        SWI      +486
        MOV      R1,#+0
        MOV      R0,R4
        SWI      +452
        SWI      +406
??filelist_menu_onkey_1:
        MVN      R0,#+0
        POP      {R4-R6,PC}
??filelist_menu_onkey_0:
        CMP      R0,#+24
        BNE      ??filelist_menu_onkey_6
        CMP      R5,#+0
        BEQ      ??filelist_menu_onkey_1
        LDR      R0,[R5, #+8]
        SWI      +25
        CMP      R0,#+0
        BEQ      ??filelist_menu_onkey_1
??filelist_menu_onkey_2:
        LDR      R0,[R5, #+4]
        BL       start
        MOV      R0,#+1
        POP      {R4-R6,PC}
??filelist_menu_onkey_6:
        MOV      R0,#+0
        POP      {R4-R6,PC}       ;; return
        DATA
??filelist_menu_onkey_4:
        DC32     filelist_HDR
        CFI EndBlock cfiBlock117

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable50:
        DC32     back

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock118 Using cfiCommon0
        CFI NoFunction
        THUMB
??filelist_menu_ghook??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock118
        REQUIRE filelist_menu_ghook

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock119 Using cfiCommon1
        CFI Function filelist_menu_ghook
        ARM
// __??Code32?? __code __interwork __atpcs void filelist_menu_ghook(void *, int)
filelist_menu_ghook:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
        MOV      R4,R1
        SWI      +480
        MOV      R5,R0
        CMP      R4,#+3
        POPNE    {R4,R5,PC}
        BL       Free_FLIST
        MOV      R0,R5
        SWI      +21
        POP      {R4,R5,PC}       ;; return
        CFI EndBlock cfiBlock119

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock120 Using cfiCommon0
        CFI NoFunction
        THUMB
??filelist_menu_iconhndl??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock120
        REQUIRE filelist_menu_iconhndl

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock121 Using cfiCommon1
        CFI Function filelist_menu_iconhndl
        ARM
// __??Code32?? __code __interwork __atpcs void filelist_menu_iconhndl(void *, int, void *)
filelist_menu_iconhndl:
        PUSH     {R4-R9,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R9 Frame(CFA, -8)
        CFI R8 Frame(CFA, -12)
        CFI R7 Frame(CFA, -16)
        CFI R6 Frame(CFA, -20)
        CFI R5 Frame(CFA, -24)
        CFI R4 Frame(CFA, -28)
        CFI CFA R13+28
        MOV      R4,R0
        MOV      R5,R1
        SWI      +407
        MOV      R6,R0
        MOV      R0,R5
        BL       FindFLISTtByN
        MOVS     R7,R0
        BEQ      ??filelist_menu_iconhndl_0
        LDR      R0,[R7, #+8]
        SWI      +27
        MOV      R8,R0
        ADD      R1,R8,#+4
        MOV      R0,R4
        SWI      +408
        LDR      R1,[R7, #+8]
        MOV      R9,R0
        LDR      R0,[R7, #+12]
        MOV      R2,R8
        CMP      R0,#+0
        MOV      R0,R9
        BEQ      ??filelist_menu_iconhndl_1
        SWI      +364
        MOV      R2,#+1
        MOV      R1,#+7
        MOV      R0,R9
        SWI      +29
        MOV      R2,#+1
        MOV      R1,#+8
        ORR      R1,R1,#0xE000
        MOV      R0,R9
        SWI      +29
        B        ??filelist_menu_iconhndl_2
??filelist_menu_iconhndl_1:
        SWI      +364
        B        ??filelist_menu_iconhndl_2
??filelist_menu_iconhndl_0:
        MOV      R1,#+10
        MOV      R0,R4
        SWI      +408
        LDR      R1,??filelist_menu_iconhndl_3  ;; `?<Constant "\\316\\370\\350\\341\\352\\340">`
        MOV      R9,R0
        SWI      +292
??filelist_menu_iconhndl_2:
        MOV      R3,R5
        MOV      R2,R9
        MOV      R1,R6
        MOV      R0,R4
        SWI      +410
        POP      {R4-R9,PC}       ;; return
        DATA
??filelist_menu_iconhndl_3:
        DC32     `?<Constant "\\316\\370\\350\\341\\352\\340">`
        CFI EndBlock cfiBlock121

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock122 Using cfiCommon0
        CFI NoFunction
        THUMB
??CreateRootMenu??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock122
        REQUIRE CreateRootMenu

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock123 Using cfiCommon1
        CFI Function CreateRootMenu
        ARM
// __??Code32?? __code __interwork __atpcs void CreateRootMenu()
CreateRootMenu:
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
        BL       Free_FLIST
        ADR      R0,??CreateRootMenu_0  ;; "0:\\"
        MOV      R2,#+1
        MOV      R1,R0
        BL       AddToFList
        ADR      R0,??CreateRootMenu_0+0x4  ;; "1:\\"
        MOV      R2,#+1
        MOV      R1,R0
        BL       AddToFList
        ADR      R0,??CreateRootMenu_0+0x8  ;; "2:\\"
        MOV      R2,#+1
        MOV      R1,R0
        BL       AddToFList
        ADR      R0,??CreateRootMenu_0+0xC  ;; "4:\\"
        MOV      R2,#+1
        MOV      R1,R0
        BL       AddToFList
        LDR      R1,??CreateRootMenu_0+0x10  ;; `?<Constant "Root">`
        LDR      R0,??CreateRootMenu_0+0x14  ;; filelist_HDR + 20
        SWI      +26
        POP      {PC}             ;; return
        DATA
??CreateRootMenu_0:
        DC8      "0:\\"
        DC8      "1:\\"
        DC8      "2:\\"
        DC8      "4:\\"
        DC32     `?<Constant "Root">`
        DC32     filelist_HDR + 20
        CFI EndBlock cfiBlock123

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock124 Using cfiCommon0
        CFI NoFunction
        THUMB
??open_fm??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock124
        REQUIRE open_fm

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock125 Using cfiCommon1
        CFI Function open_fm
        ARM
// __??Code32?? __code __interwork __atpcs void open_fm()
open_fm:
        PUSH     {R4-R7,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R7 Frame(CFA, -8)
        CFI R6 Frame(CFA, -12)
        CFI R5 Frame(CFA, -16)
        CFI R4 Frame(CFA, -20)
        CFI CFA R13+20
        LDR      R5,??open_fm_0   ;; filelist_HDR
        MOV      R0,#+256
        MOV      R7,#+0
        SWI      +293
        MOV      R6,R0
        MOV      R0,#+8
        SWI      +20
        MOV      R4,R0
        LDR      R0,[R6, #+0]
        LDRH     R0,[R0, #+0]
        CMP      R0,#+0
        BNE      ??open_fm_1
        BL       CreateRootMenu
        B        ??open_fm_2
??open_fm_1:
        MOV      R2,#+127
        ADD      R1,R5,#+20
        MOV      R0,R6
        SWI      +163
        MOV      R1,#+92
        ADD      R0,R5,#+20
        SWI      +279
        CMP      R0,#+0
        STRBNE   R7,[R0, #+1]
        ADD      R0,R5,#+20
        SWI      +27
        CMP      R0,#+128
        MOVGE    R0,#+127
        ADD      R0,R0,R5
        STRB     R7,[R0, #+20]
        MOV      R1,#+1
        ADD      R0,R5,#+20
        BL       FindFiles
??open_fm_2:
        STR      R7,[R5, #+0]
        SWI      +33160
        SUB      R0,R0,#+1
        STRH     R0,[R5, #+4]
        SWI      +33162
        SUB      R0,R0,#+1
        STRH     R0,[R5, #+6]
        BL       GetFListN
        MOV      R1,#+0
        PUSH     {R1}
        CFI CFA R13+24
        PUSH     {R4}
        CFI CFA R13+28
        PUSH     {R0}
        CFI CFA R13+32
        MOV      R3,R5
        ADD      R2,R5,#+148
        MOV      R0,R1
        PUSH     {R0}
        CFI CFA R13+36
        SWI      +338
        POP      {R0-R7,PC}       ;; return
        DATA
??open_fm_0:
        DC32     filelist_HDR
        CFI EndBlock cfiBlock125

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock126 Using cfiCommon0
        CFI NoFunction
        THUMB
??start_vibra??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock126
        REQUIRE start_vibra
//    6 //#include "menu_desc.c"
//    7 //#include "relocated.c"
//    8 
//    9 #define TMR_SECOND 216
//   10 
//   11 //#pragma swi_number=0x80CF: RamAlarm
//   12 //__swi __arm int *RamAlarm;

        RSEG DATA_C:CONST:SORT:NOROOT(2)
//   13 const int minus11=-11;
minus11:
        DATA
        DC32 -11

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
//   14 unsigned short maincsm_name_body[140];
maincsm_name_body:
        DS8 280
//   15 
//   16 unsigned int MAINCSM_ID = 0;

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
//   17 unsigned int MAINGUI_ID = 0;
MAINGUI_ID:
        DS8 4
//   18 typedef struct
//   19 {
//   20   CSM_RAM csm;
//   21   int gui_id;
//   22 }MAIN_CSM;
//   23 
//   24 typedef struct
//   25 {
//   26   GUI gui;
//   27   WSHDR *ws1;
//   28   WSHDR *ws2;
//   29   int i1;
//   30 }MAIN_GUI;
//   31 

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
//   32 int fl[48]/*={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}*/;
fl:
        DS8 192
//   33 #define FLAG_NET_STD fl[0]
//   34 #define FLAG_NET_ADV fl[1]
//   35 #define FLAG_NET_DB  fl[2]
//   36 #define FLAG_NET_EXT fl[3]
//   37 
//   38 #define FLAG_BAT_STD  fl[4]
//   39 #define FLAG_BAT_EXT  fl[5]
//   40 #define FLAG_BAT_CAP  fl[6]
//   41 #define FLAG_BAT_VOLT fl[7]
//   42 
//   43 #define FLAG_CSM fl[8]
//   44 //#define FLAG_NET_STD fl[9]
//   45 //#define FLAG_NET_STD fl[10]
//   46 
//   47 
//   48 //=============================================================================
//   49 GBSTMR tmr_vibra;
//   50 volatile int vibra_count=1;
//   51 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock127 Using cfiCommon1
        CFI Function start_vibra
        ARM
//   52 void start_vibra(void)
//   53 {
start_vibra:
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
//   54   void stop_vibra(void);
//   55   if(!IsCalling())
        SWI      +110
        CMP      R0,#+0
        POPNE    {PC}
//   56   {
//   57     unsigned int vibraPower=10;
//   58     SetVibration(vibraPower);
        MOV      R0,#+10
        SWI      +124
//   59     GBS_StartTimerProc(&tmr_vibra,TMR_SECOND>>1,stop_vibra);
        LDR      R2,??start_vibra_0  ;; stop_vibra
        LDR      R0,??start_vibra_0+0x4  ;; vibra_count + 4
        MOV      R1,#+108
        SWI      +77
//   60   }
//   61 }
        POP      {PC}             ;; return
        DATA
??start_vibra_0:
        DC32     stop_vibra
        DC32     vibra_count + 4
        CFI EndBlock cfiBlock127

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock128 Using cfiCommon0
        CFI NoFunction
        THUMB
??stop_vibra??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock128
        REQUIRE stop_vibra
//   62 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock129 Using cfiCommon1
        CFI Function stop_vibra
        ARM
//   63 void stop_vibra(void)
//   64 {
stop_vibra:
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
//   65   
//   66   SetVibration(0);
        MOV      R0,#+0
        SWI      +124
//   67   if (--vibra_count)
        LDR      R0,??stop_vibra_0  ;; vibra_count
        LDR      R1,[R0, #+0]
        SUBS     R1,R1,#+1
        STR      R1,[R0, #+0]
        POPEQ    {PC}
//   68   {
//   69     GBS_StartTimerProc(&tmr_vibra,TMR_SECOND>>1,start_vibra);
        LDR      R2,??stop_vibra_0+0x4  ;; start_vibra
        MOV      R1,#+108
        ADD      R0,R0,#+4
        SWI      +77
//   70   }
//   71 }
        POP      {PC}             ;; return
        DATA
??stop_vibra_0:
        DC32     vibra_count
        DC32     start_vibra
        CFI EndBlock cfiBlock129

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock130 Using cfiCommon0
        CFI NoFunction
        THUMB
??DrawIconBar??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock130
        REQUIRE DrawIconBar
//   72 //=============================================================================

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock131 Using cfiCommon1
        CFI Function DrawIconBar
        ARM
//   73 void DrawIconBar()
//   74 {
DrawIconBar:
        PUSH     {R4,R5,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R5 Frame(CFA, -8)
        CFI R4 Frame(CFA, -12)
        CFI CFA R13+12
//   75  if(IRDA)DrawImg(120,60,(int)"0:\\shell\\img\\784.png");
        LDR      R5,??DataTable51  ;; crd
        LDR      R4,??DrawIconBar_0  ;; `?<Constant "0:\\\\shell\\\\img\\\\784.png">`
        LDR      R0,[R5, #+300]
        CMP      R0,#+0
        BEQ      ??DrawIconBar_1
        MOV      R2,R4
        MOV      R1,#+60
        MOV      R0,#+120
        SWI      +35
//   76  if(kdblock)
??DrawIconBar_1:
        LDR      R0,[R5, #+320]
        CMP      R0,#+0
        BEQ      ??DrawIconBar_2
//   77  {
//   78    DrawStrChar("KeyBoard Lock",25,40);
        MOV      R2,#+40
        MOV      R1,#+25
        ADD      R0,R4,#+24
        BL       DrawStrChar
//   79    DrawImg(115,40,(int)"0:\\shell\\img\\785.png");
        ADD      R2,R4,#+40
        MOV      R1,#+40
        MOV      R0,#+115
        SWI      +35
//   80  }
//   81  
//   82  if(IsGPRSEnabled())DrawImg(120,50,(int)"0:\\shell\\img\\792.png");
??DrawIconBar_2:
        SWI      +167
        CMP      R0,#+0
        BEQ      ??DrawIconBar_3
        ADD      R2,R4,#+64
        B        ??DrawIconBar_4
//   83  else if(IsGPRSConnected())DrawImg(120,50,(int)"0:\\shell\\img\\779.png");
??DrawIconBar_3:
        SWI      +168
        CMP      R0,#+0
        POPEQ    {R4,R5,PC}
        ADD      R2,R4,#+88
??DrawIconBar_4:
        MOV      R1,#+50
        MOV      R0,#+120
        SWI      +35
//   84 }
        POP      {R4,R5,PC}       ;; return
        DATA
??DrawIconBar_0:
        DC32     `?<Constant "0:\\\\shell\\\\img\\\\784.png">`
        CFI EndBlock cfiBlock131

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable51:
        DC32     crd

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock132 Using cfiCommon0
        CFI NoFunction
        THUMB
??BG1??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock132
        REQUIRE BG1
//   85 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock133 Using cfiCommon1
        CFI Function BG1
        ARM
//   86 void BG1()
//   87 {
BG1:
        PUSH     {R4,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R4 Frame(CFA, -8)
        CFI CFA R13+8
//   88  DrawBG();
//   89  if(crd[clock][0].show) DrawClock (crd[clock][0].x, crd[clock][0].y);
        LDR      R4,??DataTable58  ;; crd
        BL       DrawBG
        LDR      R0,[R4, #+8]
        CMP      R0,#+0
        BEQ      ??BG1_0
        LDR      R1,[R4, #+4]
        LDR      R0,[R4, #+0]
        BL       DrawClock
//   90  if(crd[BattCap][0].show)  DrawBattCap (crd[BattCap][0].x, crd[BattCap][0].y);
??BG1_0:
        LDR      R0,[R4, #+116]
        CMP      R0,#+0
        BEQ      ??BG1_1
        LDR      R1,[R4, #+112]
        LDR      R0,[R4, #+108]
        BL       DrawBattCap
//   91  if(crd[BattVolt][0].show) DrawBattVolt (crd[BattVolt][0].x, crd[BattVolt][0].y);
??BG1_1:
        LDR      R0,[R4, #+152]
        CMP      R0,#+0
        BEQ      ??BG1_2
        LDR      R1,[R4, #+148]
        LDR      R0,[R4, #+144]
        BL       DrawBattVolt
//   92  if(crd[Dialogs][0].show)  DrawDialogs (crd[Dialogs][0].x, crd[Dialogs][0].y);
??BG1_2:
        LDR      R0,[R4, #+188]
        CMP      R0,#+0
        BEQ      ??BG1_3
        LDR      R1,[R4, #+184]
        LDR      R0,[R4, #+180]
        BL       DrawDialogs
//   93  if(crd[FreeRam][0].show)  DrawFreeRam(crd[FreeRam][0].x,crd[FreeRam][0].y); 
??BG1_3:
        LDR      R0,[R4, #+224]
        CMP      R0,#+0
        BEQ      ??BG1_4
        LDR      R1,[R4, #+220]
        LDR      R0,[R4, #+216]
        BL       DrawFreeRam
//   94  DrawNetExt(2,20);
??BG1_4:
        MOV      R1,#+20
        MOV      R0,#+2
        BL       DrawNetExt
//   95 
//   96   /*
//   97   if(!startmenu && !kdblock)
//   98   {
//   99     if(Cross_x>131)Cross_x=131;
//  100     else if(Cross_y>175)Cross_y=175;
//  101     else if(Cross_x<1)Cross_x=1;
//  102     DrawCross(Cross_x,Cross_y,white);
//  103   }*/
//  104   DrawWorkDesc();
        BL       DrawWorkDesc
//  105     
//  106     
//  107   if(Cross_x<=17 && Cross_y<=(name[0].NumItems*20) && !(startmenu))
        LDR      R0,[R4, #+308]
        CMP      R0,#+18
        BGE      ??BG1_5
        LDR      R0,??DataTable57  ;; name + 576
        MOV      R1,#+20
        LDR      R0,[R0, #+0]
        MUL      R0,R1,R0
        LDR      R1,[R4, #+312]
        CMP      R0,R1
        BLT      ??BG1_5
        LDR      R0,[R4, #+332]
        CMP      R0,#+0
        BNE      ??BG1_5
//  108   {
//  109     DrawPanel_w();
        BL       DrawPanel_w
//  110     DrawNameContr();
        BL       DrawNameContr
        B        ??BG1_6
//  111   }
//  112  // if(Cross_x>=40 && Cross_x<=132 && Cross_y<=17)DrawPanel_h();
//  113   else GBS_DelTimer(&timer);
??BG1_5:
        ADD      R0,R4,#+428
        SWI      +396
//  114  DrawStrInt(workdesctop,120,158);  
??BG1_6:
        LDR      R0,[R4, #+292]
        MOV      R2,#+158
        MOV      R1,#+120
        BL       DrawStrInt
//  115   
//  116  //if(kdblock) DrawStrChar("KeyBoard Lock",25,40);
//  117  DrawIconBar();
        BL       DrawIconBar
//  118  if(menu<1)menu=6;
        LDR      R0,[R4, #+328]
        CMP      R0,#+1
        MOVLT    R0,#+6
        BLT      ??BG1_7
//  119  else if(menu>6)menu=1;
        CMP      R0,#+7
        BLT      ??BG1_8
        MOV      R0,#+1
??BG1_7:
        STR      R0,[R4, #+328]
//  120  if(startmenu)
??BG1_8:
        LDR      R0,[R4, #+332]
        CMP      R0,#+0
        BEQ      ??BG1_9
//  121  {
//  122    DrawMenu(menu);
        LDR      R0,[R4, #+328]
        BL       DrawMenu
//  123    DrawNameMenu(menu);
        LDR      R0,[R4, #+328]
        BL       DrawNameMenu
        POP      {R4,PC}
//  124  }
//  125  else GBS_DelTimer(&menu_tmr);
??BG1_9:
        ADD      R0,R4,#+444
        SWI      +396
//  126 }
        POP      {R4,PC}          ;; return
        CFI EndBlock cfiBlock133

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock134 Using cfiCommon0
        CFI NoFunction
        THUMB
??BG3??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock134
        REQUIRE BG3
//  127 //--------------------

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock135 Using cfiCommon1
        CFI Function BG3
        ARM
//  128 void BG3()
//  129 {
BG3:
        PUSH     {R4,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R4 Frame(CFA, -8)
        CFI CFA R13+8
//  130  DrawBG();
//  131  if(crd[clock][workdesctop-1].show) DrawClock (crd[clock][workdesctop-1].x, crd[clock][workdesctop-1].y);
        LDR      R4,??DataTable58  ;; crd
        BL       DrawBG
        LDR      R0,[R4, #+292]
        MOV      R1,#+12
        MLA      R0,R1,R0,R4
        SUB      R0,R0,#+12
        LDR      R1,[R0, #+8]
        CMP      R1,#+0
        BEQ      ??BG3_0
        LDR      R1,[R0, #+4]
        LDR      R0,[R0, #+0]
        BL       DrawClock
//  132  if(crd[BattCap][workdesctop-1].show)  DrawBattCap (crd[BattCap][workdesctop-1].x, crd[BattCap][workdesctop-1].y);
??BG3_0:
        LDR      R0,[R4, #+292]
        MOV      R1,#+12
        MLA      R0,R1,R0,R4
        LDR      R1,[R0, #+104]
        CMP      R1,#+0
        BEQ      ??BG3_1
        LDR      R1,[R0, #+100]
        LDR      R0,[R0, #+96]
        BL       DrawBattCap
//  133  if(crd[BattVolt][workdesctop-1].show) DrawBattVolt (crd[BattVolt][workdesctop-1].x, crd[BattVolt][workdesctop-1].y);
??BG3_1:
        LDR      R0,[R4, #+292]
        MOV      R1,#+12
        MLA      R0,R1,R0,R4
        LDR      R1,[R0, #+140]
        CMP      R1,#+0
        BEQ      ??BG3_2
        LDR      R1,[R0, #+136]
        LDR      R0,[R0, #+132]
        BL       DrawBattVolt
//  134  if(crd[Dialogs][workdesctop-1].show)  DrawDialogs (crd[Dialogs][workdesctop-1].x, crd[Dialogs][workdesctop-1].y);
??BG3_2:
        LDR      R0,[R4, #+292]
        MOV      R1,#+12
        MLA      R0,R1,R0,R4
        LDR      R1,[R0, #+176]
        CMP      R1,#+0
        BEQ      ??BG3_3
        LDR      R1,[R0, #+172]
        LDR      R0,[R0, #+168]
        BL       DrawDialogs
//  135  if(crd[FreeRam][workdesctop-1].show)  DrawFreeRam(crd[FreeRam][workdesctop-1].x,crd[FreeRam][workdesctop-1].y); 
??BG3_3:
        LDR      R0,[R4, #+292]
        MOV      R1,#+12
        MLA      R0,R1,R0,R4
        LDR      R1,[R0, #+212]
        CMP      R1,#+0
        BEQ      ??BG3_4
        LDR      R1,[R0, #+208]
        LDR      R0,[R0, #+204]
        BL       DrawFreeRam
//  136   
//  137  /* if(!startmenu && !kdblock)
//  138   {
//  139     if(Cross_x>131)Cross_x=131;
//  140     else if(Cross_y>175)Cross_y=175;
//  141     else if(Cross_x<1)Cross_x=1;
//  142     DrawCross(Cross_x,Cross_y,white);
//  143   }*/
//  144   DrawWorkDesc();
??BG3_4:
        BL       DrawWorkDesc
//  145 
//  146   if(Cross_x<=17 && Cross_y<=(name[0].NumItems*20) && !(startmenu))
        LDR      R0,[R4, #+308]
        CMP      R0,#+18
        BGE      ??BG3_5
        LDR      R0,??DataTable57  ;; name + 576
        MOV      R1,#+20
        LDR      R0,[R0, #+0]
        MUL      R0,R1,R0
        LDR      R1,[R4, #+312]
        CMP      R0,R1
        BLT      ??BG3_5
        LDR      R0,[R4, #+332]
        CMP      R0,#+0
        BNE      ??BG3_5
//  147   {
//  148     DrawPanel_w();
        BL       DrawPanel_w
//  149     DrawNameContr();
        BL       DrawNameContr
        B        ??BG3_6
//  150   }
//  151  // if(Cross_x>=40 && Cross_x<=132 && Cross_y<=17)DrawPanel_h();
//  152   else GBS_DelTimer(&timer);
??BG3_5:
        ADD      R0,R4,#+428
        SWI      +396
//  153   
//  154   
//  155 // if(kdblock) DrawStrChar("KeyBoard Lock",25,40);
//  156   DrawStrInt(workdesctop,120,158);
??BG3_6:
        LDR      R0,[R4, #+292]
        MOV      R2,#+158
        MOV      R1,#+120
        BL       DrawStrInt
//  157   DrawIconBar();
        BL       DrawIconBar
//  158 
//  159  if(menu<1)menu=6;
        LDR      R0,[R4, #+328]
        CMP      R0,#+1
        MOVLT    R0,#+6
        BLT      ??BG3_7
//  160  else if(menu>6)menu=1;
        CMP      R0,#+7
        BLT      ??BG3_8
        MOV      R0,#+1
??BG3_7:
        STR      R0,[R4, #+328]
//  161  if(startmenu)
??BG3_8:
        LDR      R0,[R4, #+332]
        CMP      R0,#+0
        BEQ      ??BG3_9
//  162  {
//  163    DrawMenu(menu);
        LDR      R0,[R4, #+328]
        BL       DrawMenu
//  164    DrawNameMenu(menu);
        LDR      R0,[R4, #+328]
        BL       DrawNameMenu
        POP      {R4,PC}
//  165  }
//  166  else GBS_DelTimer(&menu_tmr);
??BG3_9:
        ADD      R0,R4,#+444
        SWI      +396
//  167 }
        POP      {R4,PC}          ;; return
        CFI EndBlock cfiBlock135

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock136 Using cfiCommon0
        CFI NoFunction
        THUMB
??OnRedraw??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock136
        REQUIRE OnRedraw
//  168 
//  169 //------------------------------------------------
//  170 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock137 Using cfiCommon1
        CFI Function OnRedraw
        ARM
//  171 void OnRedraw(MAIN_GUI *data)
//  172 {
OnRedraw:
        PUSH     {R4,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R4 Frame(CFA, -8)
        CFI CFA R13+8
//  173   LockSched();
//  174 
//  175 //if(workdesctop==2)
//  176 //{
//  177  DrawBG();
//  178  DrawNetExt(2,20);
//  179  DrawNetStd(2,100);
//  180  //DrawNetAdv (crd[NetAdv][1].x, crd[NetAdv][1].y);
//  181  DrawNetDb  (crd[NetDB][1].x,  crd[NetDB][1].y);
        LDR      R4,??DataTable58  ;; crd
        SWI      +326
        BL       DrawBG
        MOV      R1,#+20
        MOV      R0,#+2
        BL       DrawNetExt
        MOV      R1,#+100
        MOV      R0,#+2
        BL       DrawNetStd
        LDR      R1,[R4, #+52]
        LDR      R0,[R4, #+48]
        BL       DrawNetDb
//  182  if(crd[clock][workdesctop-1].show) DrawClock (crd[clock][workdesctop-1].x, crd[clock][workdesctop-1].y);
        LDR      R0,[R4, #+292]
        MOV      R1,#+12
        MLA      R0,R1,R0,R4
        SUB      R0,R0,#+12
        LDR      R1,[R0, #+8]
        CMP      R1,#+0
        BEQ      ??OnRedraw_0
        LDR      R1,[R0, #+4]
        LDR      R0,[R0, #+0]
        BL       DrawClock
//  183  //DrawBattStd(BattStd_x,BattStd_y);
//  184  if(crd[BattCap][1].show)  DrawBattCap (crd[BattCap][1].x, crd[BattCap][1].y);
??OnRedraw_0:
        LDR      R0,[R4, #+128]
        CMP      R0,#+0
        BEQ      ??OnRedraw_1
        LDR      R1,[R4, #+124]
        LDR      R0,[R4, #+120]
        BL       DrawBattCap
//  185  if(crd[BattVolt][workdesctop-1].show) DrawBattVolt (crd[BattVolt][workdesctop-1].x, crd[BattVolt][workdesctop-1].y);
??OnRedraw_1:
        LDR      R0,[R4, #+292]
        MOV      R1,#+12
        MLA      R0,R1,R0,R4
        LDR      R1,[R0, #+140]
        CMP      R1,#+0
        BEQ      ??OnRedraw_2
        LDR      R1,[R0, #+136]
        LDR      R0,[R0, #+132]
        BL       DrawBattVolt
//  186  if(crd[Dialogs][workdesctop-1].show)  DrawDialogs (crd[Dialogs][workdesctop-1].x, crd[Dialogs][workdesctop-1].y);
??OnRedraw_2:
        LDR      R0,[R4, #+292]
        MOV      R1,#+12
        MLA      R0,R1,R0,R4
        LDR      R1,[R0, #+176]
        CMP      R1,#+0
        BEQ      ??OnRedraw_3
        LDR      R1,[R0, #+172]
        LDR      R0,[R0, #+168]
        BL       DrawDialogs
//  187  if(crd[FreeRam][workdesctop-1].show)  DrawFreeRam(crd[FreeRam][workdesctop-1].x,crd[FreeRam][workdesctop-1].y); 
??OnRedraw_3:
        LDR      R0,[R4, #+292]
        MOV      R1,#+12
        MLA      R0,R1,R0,R4
        LDR      R1,[R0, #+212]
        CMP      R1,#+0
        BEQ      ??OnRedraw_4
        LDR      R1,[R0, #+208]
        LDR      R0,[R0, #+204]
        BL       DrawFreeRam
//  188  
//  189 
//  190  DrawWorkDesc();
??OnRedraw_4:
        BL       DrawWorkDesc
//  191  if(Cross_x<10)
        LDR      R0,[R4, #+308]
        CMP      R0,#+10
//  192    DrawStrInt(Cross_x,88,158);
        MOVLT    R2,#+158
        MOVLT    R1,#+88
        BLT      ??OnRedraw_5
//  193  else if(Cross_x<100)
        CMP      R0,#+100
        MOV      R2,#+158
//  194    DrawStrInt(Cross_x,82,158);
        MOVLT    R1,#+82
//  195  else DrawStrInt(Cross_x,76,158);
        MOVGE    R1,#+76
??OnRedraw_5:
        BL       DrawStrInt
//  196    DrawStrChar(":",95,158);
        MOV      R2,#+158
        MOV      R1,#+95
        ADR      R0,??OnRedraw_6  ;; ":"
        BL       DrawStrChar
//  197  DrawStrInt(Cross_y,100,158);
        LDR      R0,[R4, #+312]
        MOV      R2,#+158
        MOV      R1,#+100
        BL       DrawStrInt
//  198  
//  199 
//  200   
//  201   if(Cross_x<=17 && Cross_y<=(name[0].NumItems*20) && !(startmenu))
        LDR      R0,[R4, #+308]
        CMP      R0,#+18
        BGE      ??OnRedraw_7
        LDR      R0,??DataTable57  ;; name + 576
        MOV      R1,#+20
        LDR      R0,[R0, #+0]
        MUL      R0,R1,R0
        LDR      R1,[R4, #+312]
        CMP      R0,R1
        BLT      ??OnRedraw_7
        LDR      R0,[R4, #+332]
        CMP      R0,#+0
        BNE      ??OnRedraw_7
//  202   {
//  203     DrawPanel_w();
        BL       DrawPanel_w
//  204     DrawNameContr();
        BL       DrawNameContr
        B        ??OnRedraw_8
//  205   }
//  206  // if(Cross_x>=40 && Cross_x<=132 && Cross_y<=17)DrawPanel_h();
//  207   else GBS_DelTimer(&timer);
??OnRedraw_7:
        ADD      R0,R4,#+428
        SWI      +396
//  208   DrawIconBar();
??OnRedraw_8:
        BL       DrawIconBar
//  209  
//  210 
//  211  //DrawStrChar(descmenu[1].file,20,60);
//  212  if(menu<1)menu=6;
        LDR      R0,[R4, #+328]
        CMP      R0,#+1
        MOVLT    R0,#+6
        BLT      ??OnRedraw_9
//  213  else if(menu>6)menu=1;
        CMP      R0,#+7
        BLT      ??OnRedraw_10
        MOV      R0,#+1
??OnRedraw_9:
        STR      R0,[R4, #+328]
//  214  if(startmenu)
??OnRedraw_10:
        LDR      R0,[R4, #+332]
        CMP      R0,#+0
        BEQ      ??OnRedraw_11
//  215  {
//  216    DrawMenu(menu);
        LDR      R0,[R4, #+328]
        BL       DrawMenu
//  217    DrawNameMenu(menu);
        LDR      R0,[R4, #+328]
        BL       DrawNameMenu
        SWI      +327
        POP      {R4,PC}
//  218  }
//  219  else GBS_DelTimer(&menu_tmr);
??OnRedraw_11:
        ADD      R0,R4,#+444
        SWI      +396
//  220 // DrawStrInt(RamNet()->power,50,50);
//  221 //if(DrawMamory)DrawFreeMamory("0:\\Java\\jam\\Applications",100);
//  222 /*if(Cross_x>=0 && Cross_x <=25 && Cross_y>=159 && Cross_y <=162)Pusk=1;
//  223 if(Pusk && Cross_x>=0 && Cross_x <=80 && Cross_y>=75 && Cross_y <=162)//0,80,75,162
//  224     DrawPusk(85,1);
//  225 else Pusk=0;*/
//  226 //TimerProc();
//  227 //}
//  228 /*
//  229 else if(workdesctop==1) BG1();
//  230 else if(workdesctop==3) BG3();
//  231 */
//  232 UnlockSched();
        SWI      +327
//  233 }
        POP      {R4,PC}          ;; return
        DATA
??OnRedraw_6:
        DC8      ":",+0,+0
        CFI EndBlock cfiBlock137

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable57:
        DC32     name + 576

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock138 Using cfiCommon0
        CFI NoFunction
        THUMB
??onCreate??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock138
        REQUIRE onCreate
//  234 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock139 Using cfiCommon1
        CFI Function onCreate
        ARM
//  235 void onCreate(MAIN_GUI *data, void *(*malloc_adr)(int))
//  236 {
//  237   data->gui.state=1;
onCreate:
        MOV      R1,#+1
        STRB     R1,[R0, #+12]
//  238 }
        BX       LR               ;; return
        CFI EndBlock cfiBlock139

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock140 Using cfiCommon0
        CFI NoFunction
        THUMB
??onClose??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock140
        REQUIRE onClose
//  239 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock141 Using cfiCommon1
        CFI Function onClose
        ARM
//  240 void onClose(MAIN_GUI *data, void (*mfree_adr)(void *))
//  241 {
//  242   data->gui.state=0;
onClose:
        MOV      R1,#+0
        STRB     R1,[R0, #+12]
//  243 }
        BX       LR               ;; return
        CFI EndBlock cfiBlock141

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock142 Using cfiCommon0
        CFI NoFunction
        THUMB
??onFocus??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock142
        REQUIRE onFocus
//  244 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock143 Using cfiCommon1
        CFI Function onFocus
        ARM
//  245 void onFocus(MAIN_GUI *data, void *(*malloc_adr)(int), void (*mfree_adr)(void *))
//  246 {
onFocus:
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
//  247   data->gui.state=2;
        MOV      R1,#+2
        STRB     R1,[R0, #+12]
//  248   DisableIDLETMR();
        SWI      +383
//  249 }
        POP      {PC}             ;; return
        CFI EndBlock cfiBlock143

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock144 Using cfiCommon0
        CFI NoFunction
        THUMB
??onUnfocus??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock144
        REQUIRE onUnfocus
//  250 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock145 Using cfiCommon1
        CFI Function onUnfocus
        ARM
//  251 void onUnfocus(MAIN_GUI *data, void (*mfree_adr)(void *))
//  252 {
//  253   if (data->gui.state!=2) return;
onUnfocus:
        LDRB     R1,[R0, #+12]
        CMP      R1,#+2
//  254   data->gui.state=1;
        MOVEQ    R1,#+1
        STRBEQ   R1,[R0, #+12]
//  255 }
        BX       LR               ;; return
        CFI EndBlock cfiBlock145

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock146 Using cfiCommon0
        CFI NoFunction
        THUMB
??QuitCallbackProc??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock146
        REQUIRE QuitCallbackProc

        RSEG DATA_I:DATA:SORT:NOROOT(2)
// crds __data crd[7][3]
crd:
        DS8 252
        REQUIRE `?<Initializer for crd>`
// char *__data NAME[9]
NAME:
        DS8 36
        REQUIRE `?<Initializer for NAME>`
// int __data speed_cur
speed_cur:
        DS8 4
        REQUIRE `?<Initializer for speed_cur>`
// int __data workdesctop
workdesctop:
        DS8 4
        REQUIRE `?<Initializer for workdesctop>`
// int __data typecur
typecur:
        DS8 4
        REQUIRE `?<Initializer for typecur>`
// int __data IRDA
IRDA:
        DS8 4
        REQUIRE `?<Initializer for IRDA>`
// int __data cr_y
cr_y:
        DS8 4
        REQUIRE `?<Initializer for cr_y>`
// int __data Cross_x
Cross_x:
        DS8 4
        REQUIRE `?<Initializer for Cross_x>`
// int __data Cross_y
Cross_y:
        DS8 4
        REQUIRE `?<Initializer for Cross_y>`
// int __data TypeLine
TypeLine:
        DS8 4
        REQUIRE `?<Initializer for TypeLine>`
// int __data kdblock
kdblock:
        DS8 4
        REQUIRE `?<Initializer for kdblock>`
// int __data moveclock
moveclock:
        DS8 4
        REQUIRE `?<Initializer for moveclock>`
// int __data menu
menu:
        DS8 4
        REQUIRE `?<Initializer for menu>`
// int __data startmenu
startmenu:
        DS8 4
        REQUIRE `?<Initializer for startmenu>`
// char *__data NAME2[9]
NAME2:
        DS8 36
        REQUIRE `?<Initializer for NAME2>`
// int __data panel_x
panel_x:
        DS8 4
        REQUIRE `?<Initializer for panel_x>`
// int __data panel_y
panel_y:
        DS8 4
        REQUIRE `?<Initializer for panel_y>`
// int __data img_y
img_y:
        DS8 4
        REQUIRE `?<Initializer for img_y>`
// int __data menu_x
menu_x:
        DS8 4
        REQUIRE `?<Initializer for menu_x>`
// int __data menu_y
menu_y:
        DS8 4
        REQUIRE `?<Initializer for menu_y>`
// unsigned int *__data err
err:
        DS8 4
        REQUIRE `?<Initializer for err>`
// int __data DrawPuskk
DrawPuskk:
        DS8 4
        REQUIRE `?<Initializer for DrawPuskk>`
// int __data pusk_y
pusk_y:
        DS8 4
        REQUIRE `?<Initializer for pusk_y>`
MAINCSM_ID:
        DS8 4
        REQUIRE `?<Initializer for MAINCSM_ID>`
//  256 int Quit_Required=0;
Quit_Required:
        DS8 4
        REQUIRE `?<Initializer for Quit_Required>`
// char __data per_s[3]
per_s:
        DS8 3
        REQUIRE `?<Initializer for per_s>`
        DS8 1
// char __data white[4]
white:
        DS8 4
        REQUIRE `?<Initializer for white>`
// char __data RED[4]
RED:
        DS8 4
        REQUIRE `?<Initializer for RED>`
// char __data prozr[4]
prozr:
        DS8 4
        REQUIRE `?<Initializer for prozr>`
// GBSTMR __data timer
timer:
        DS8 16
        REQUIRE `?<Initializer for timer>`
// GBSTMR __data menu_tmr
menu_tmr:
        DS8 16
        REQUIRE `?<Initializer for menu_tmr>`
// char __data per_6s[18]
per_6s:
        DS8 20
        REQUIRE `?<Initializer for per_6s>`

        RSEG DATA_I:DATA:SORT:NOROOT(2)
// char __data black[4]
black:
        DS8 4
        REQUIRE `?<Initializer for black>`

        RSEG DATA_I:DATA:SORT:NOROOT(0)
// char __data per_d[3]
per_d:
        DS8 3
        REQUIRE `?<Initializer for per_d>`

        RSEG DATA_I:DATA:SORT:NOROOT(0)
// char __data per_t[3]
per_t:
        DS8 3
        REQUIRE `?<Initializer for per_t>`

        RSEG DATA_I:DATA:SORT:NOROOT(0)
// char __data _percent_t[3]
_percent_t:
        DS8 3
        REQUIRE `?<Initializer for _percent_t>`

        RSEG DATA_I:DATA:SORT:NOROOT(2)
// int __data fmenusoftkeys[3]
fmenusoftkeys:
        DS8 12
        REQUIRE `?<Initializer for fmenusoftkeys>`

        RSEG DATA_I:DATA:SORT:NOROOT(2)
// SOFTKEY_DESC __data fmenu_sk[3]
fmenu_sk:
        DS8 24
        REQUIRE `?<Initializer for fmenu_sk>`

        RSEG DATA_I:DATA:SORT:NOROOT(2)
// SOFTKEYSTAB __data fmenu_skt
fmenu_skt:
        DS8 8
        REQUIRE `?<Initializer for fmenu_skt>`

        RSEG DATA_I:DATA:SORT:NOROOT(2)
// HEADER_DESC __data filelist_HDR
filelist_HDR:
        DS8 20
        REQUIRE `?<Initializer for filelist_HDR>`
// char __data header[128]
header:
        DS8 128
        REQUIRE `?<Initializer for header>`
// MENU_DESC __data filelist_STRUCT
filelist_STRUCT:
        DS8 44
        REQUIRE `?<Initializer for filelist_STRUCT>`

        RSEG DATA_I:DATA:SORT:NOROOT(2)
vibra_count:
        DS8 4
        REQUIRE `?<Initializer for vibra_count>`
tmr_vibra:
        DS8 16
        REQUIRE `?<Initializer for tmr_vibra>`

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock147 Using cfiCommon1
        CFI Function QuitCallbackProc
        ARM
//  257 void QuitCallbackProc(int decision)
//  258 {
//  259 if(!decision)Quit_Required = 1;
QuitCallbackProc:
        CMP      R0,#+0
        LDREQ    R0,??QuitCallbackProc_0  ;; crd + 408
        MOVEQ    R1,#+1
        STREQ    R1,[R0, #+0]
//  260 }
        BX       LR               ;; return
        DATA
??QuitCallbackProc_0:
        DC32     crd + 408
        CFI EndBlock cfiBlock147

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock148 Using cfiCommon0
        CFI NoFunction
        THUMB
??OnKey??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock148
        REQUIRE OnKey

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock149 Using cfiCommon1
        CFI Function OnKey
        ARM
//  261 int OnKey(MAIN_GUI *data, GUI_MSG *msg)
//  262 {
OnKey:
        PUSH     {R1,R4-R11,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R11 Frame(CFA, -8)
        CFI R10 Frame(CFA, -12)
        CFI R9 Frame(CFA, -16)
        CFI R8 Frame(CFA, -20)
        CFI R7 Frame(CFA, -24)
        CFI R6 Frame(CFA, -28)
        CFI R5 Frame(CFA, -32)
        CFI R4 Frame(CFA, -36)
        CFI CFA R13+40
//  263   DirectRedrawGUI();  
//  264   if(Quit_Required) return 1; //Ïðîèñõîäèò âûçîâ GeneralFunc äëÿ òåê. GUI -> çàêðûòèå GUI
        LDR      R5,??DataTable58  ;; crd
        SWI      +319
        LDR      R0,[R5, #+408]
        CMP      R0,#+0
        MOVNE    R0,#+1
        POPNE    {R1,R4-R11,PC}
//  265   
//  266   if (msg->gbsmsg->msg==/*LONG_PRESS*/KEY_DOWN && msg->gbsmsg->submess=='#') kdblock=!kdblock; 
        LDR      R0,[SP, #+0]
        MOV      R2,#+147
        LDR      R0,[R0, #+4]
        ORR      R2,R2,#0x100
        LDRSH    R3,[R0, #+2]
        MOV      R4,#+1
        MOV      R1,#+0
        CMP      R3,R2
        LDREQ    R3,[R0, #+4]
        CMPEQ    R3,#+35
        BNE      ??OnKey_2
        LDR      R3,[R5, #+320]
        CMP      R3,#+0
        MOVEQ    R3,#+1
        MOVNE    R3,#+0
        STR      R3,[R5, #+320]
//  267   if (msg->gbsmsg->msg==KEY_DOWN && !kdblock)
??OnKey_2:
        LDRSH    R3,[R0, #+2]
        MVN      R6,#+11
        CMP      R3,R2
        LDREQ    R2,[R5, #+320]
        CMPEQ    R2,#+0
        BNE      ??OnKey_3
//  268   {
//  269     switch(msg->gbsmsg->submess)
        LDR      R12,[R5, #+292]
        LDR      R0,[R0, #+4]
        LDR      R10,[R5, #+332]
        LDR      R9,[R5, #+308]
        LDR      R7,??OnKey_4     ;; `?<Constant "Exit?">`
        MOV      R2,#+12
        MLA      R3,R2,R12,R5
        LDR      R2,[R5, #+324]
        ADD      LR,R6,R3
        LDR      R3,[R5, #+312]
        MOV      R8,#+3
        SUB      R0,R0,#+1
        CMP      R0,#+61
        BHI      ??OnKey_3
        ADR      R11,??OnKey_0
        LDRB     R11,[R11, R0]
        ADD      PC,PC,R11, LSL #+2
        DATA
??OnKey_0:
        DC8      +46,+156,+156,+156
        DC8      +156,+156,+156,+156
        DC8      +156,+156,+41,+15
        DC8      +156,+156,+156,+156
        DC8      +156,+156,+156,+156
        DC8      +156,+156,+156,+156
        DC8      +156,+106,+156,+156
        DC8      +156,+156,+156,+156
        DC8      +156,+156,+156,+156
        DC8      +156,+156,+156,+156
        DC8      +156,+24,+156,+156
        DC8      +156,+156,+156,+15
        DC8      +135,+82,+156,+50
        DC8      +106,+66,+148,+94
        DC8      +152,+156,+82,+94
        DC8      +50,+66,+0,+0
        ARM
//  270     {
//  271    
//  272     case RED_BUTTON:case '0':
//  273       if(!startmenu) MsgBoxYesNo(1,(int)"Exit?",QuitCallbackProc);//return(1);
??OnKey_5:
        CMP      R10,#+0
        BNE      ??OnKey_6
        LDR      R2,??OnKey_4+0x4  ;; QuitCallbackProc
        MOV      R1,R7
        MOV      R0,#+1
        SWI      +79
        B        ??OnKey_3
//  274       else startmenu=!startmenu;break;
??OnKey_6:
        STR      R1,[R5, #+332]
        B        ??OnKey_3
//  275     case '*': {for (int i=7; i!=MAINCSM_ID-1; i++){ if (FindCSMbyID(i)!=NULL) CloseCSM(i);} ShowMSG(1,(int)"Killed");}  break;
??OnKey_7:
        MOV      R4,#+7
        B        ??OnKey_8
??OnKey_9:
        MOV      R0,R4
        SWI      +264
        CMP      R0,#+0
        BEQ      ??OnKey_10
        MOV      R0,R4
        SWI      +508
??OnKey_10:
        ADD      R4,R4,#+1
??OnKey_8:
        LDR      R0,[R5, #+404]
        SUB      R0,R0,#+1
        CMP      R4,R0
        BNE      ??OnKey_9
        ADD      R1,R7,#+8
        MOV      R0,#+1
        SWI      +328
        B        ??OnKey_3
//  276     case GREEN_BUTTON: MakeVoiceCall("0",0x10,0x20C0);   break;
??OnKey_11:
        MOV      R2,#+8384
        MOV      R1,#+16
        ADR      R0,??OnKey_12    ;; "0"
        SWI      +368
        B        ??OnKey_3
//  277     case RIGHT_SOFT:
//  278        break;
//  279     case LEFT_SOFT:startmenu=!startmenu; break;
??OnKey_13:
        CMP      R10,#+0
        MOVNE    R4,#+0
        STR      R4,[R5, #+332]
        B        ??OnKey_3
//  280     case '4': case LEFT_BUTTON:
//  281       if(Cross_x>0 && (!startmenu)) Cross_x--;TypeLine=1;
??OnKey_14:
        CMP      R9,#+1
        BLT      ??OnKey_15
        CMP      R10,#+0
        SUBEQ    R0,R9,#+1
        STREQ    R0,[R5, #+308]
//  282       if(startmenu)menu--;
??OnKey_15:
        CMP      R10,#+0
        LDRNE    R0,[R5, #+328]
        STR      R4,[R5, #+316]
        SUBNE    R0,R0,#+1
        STRNE    R0,[R5, #+328]
//  283       if(moveclock)crd[clock][workdesctop-1].x--;
        CMP      R2,#+0
        BEQ      ??OnKey_3
        LDR      R0,[LR, #+0]
        SUB      R0,R0,#+1
??OnKey_16:
        STR      R0,[LR, #+0]
        B        ??OnKey_3
//  284       break;
//  285     case '6': case RIGHT_BUTTON: 
//  286       if(Cross_x<131&& (!startmenu))Cross_x++;TypeLine=2;
??OnKey_17:
        CMP      R9,#+131
        BGE      ??OnKey_18
        CMP      R10,#+0
        ADDEQ    R0,R9,#+1
        STREQ    R0,[R5, #+308]
??OnKey_18:
        MOV      R0,#+2
        STR      R0,[R5, #+316]
//  287       if(startmenu)menu++;
        CMP      R10,#+0
        LDRNE    R0,[R5, #+328]
        ADDNE    R0,R0,#+1
        STRNE    R0,[R5, #+328]
//  288       if(moveclock)crd[clock][workdesctop-1].x++;
        CMP      R2,#+0
        BEQ      ??OnKey_3
        LDR      R0,[LR, #+0]
        ADD      R0,R0,#+1
        B        ??OnKey_16
//  289       break;
//  290     case '2': case UP_BUTTON:    
//  291       if(Cross_y>0&& (!startmenu))  Cross_y--;TypeLine=3;
??OnKey_19:
        CMP      R3,#+1
        BLT      ??OnKey_20
        CMP      R10,#+0
        SUBEQ    R0,R3,#+1
        STREQ    R0,[R5, #+312]
??OnKey_20:
        STR      R8,[R5, #+316]
//  292       if(moveclock) crd[clock][workdesctop-1].y--;
        CMP      R2,#+0
        BEQ      ??OnKey_3
        LDR      R0,[LR, #+4]
        SUB      R0,R0,#+1
??OnKey_21:
        STR      R0,[LR, #+4]
        B        ??OnKey_3
//  293       break;
//  294     case '8': case DOWN_BUTTON:  
//  295       if(Cross_y<175&& (!startmenu))Cross_y++;TypeLine=4;
??OnKey_22:
        CMP      R3,#+175
        BGE      ??OnKey_23
        CMP      R10,#+0
        ADDEQ    R0,R3,#+1
        STREQ    R0,[R5, #+312]
??OnKey_23:
        MOV      R0,#+4
        STR      R0,[R5, #+316]
//  296       if(moveclock)crd[clock][workdesctop-1].y++;
        CMP      R2,#+0
        BEQ      ??OnKey_3
        LDR      R0,[LR, #+4]
        ADD      R0,R0,#+1
        B        ??OnKey_21
//  297       break;
//  298     case '5': case ENTER_BUTTON:
//  299       StartFilePanel_w();
??OnKey_24:
        BL       StartFilePanel_w
//  300       if(startmenu)StartFileMenu(menu);
        LDR      R0,[R5, #+332]
        CMP      R0,#+0
        BEQ      ??OnKey_25
        LDR      R0,[R5, #+328]
        BL       StartFileMenu
//  301       // StartFilePanel_h();
//  302       // StartFilePusk();
//  303       if(Cross_x>=121 && Cross_x<=128 && Cross_y>=130 && Cross_y<=143)workdesctop=1;
??OnKey_25:
        LDR      R0,[R5, #+308]
        CMP      R0,#+121
        BLT      ??OnKey_3
        CMP      R0,#+129
        BGE      ??OnKey_3
        LDR      R0,[R5, #+312]
        CMP      R0,#+130
        BLT      ??OnKey_26
        CMP      R0,#+144
        BLT      ??OnKey_27
??OnKey_26:
        CMP      R0,#+144
        BLT      ??OnKey_28
        CMP      R0,#+158
        BGE      ??OnKey_28
//  304       else if(Cross_x>=121 && Cross_x<=128 && Cross_y>=144 && Cross_y<=157)workdesctop=2;
        MOV      R0,#+2
??OnKey_29:
        STR      R0,[R5, #+292]
        B        ??OnKey_3
??OnKey_28:
        CMP      R0,#+158
        BLT      ??OnKey_3
        CMP      R0,#+171
        BGE      ??OnKey_3
//  305       else if(Cross_x>=121 && Cross_x<=128 && Cross_y>=158 && Cross_y<=170)workdesctop=3;
??OnKey_30:
        STR      R8,[R5, #+292]
        B        ??OnKey_3
//  306       break;
//  307     case '1'://vibra_count=1;start_vibra();//SetVibration(0);
//  308       if(Cross_x>=crd[clock][workdesctop-1].x && Cross_x<=crd[clock][workdesctop-1].x+20 
//  309          && Cross_y>=crd[clock][workdesctop-1].y && Cross_y<=crd[clock][workdesctop-1].y+7)
??OnKey_31:
        LDR      R0,[LR, #+0]
        CMP      R9,R0
        ADDGE    R0,R0,#+20
        CMPGE    R0,R9
        LDRGE    R0,[LR, #+4]
        CMPGE    R3,R0
        ADDGE    R0,R0,#+7
        CMPGE    R0,R3
        BLT      ??OnKey_3
//  310       moveclock=!moveclock; 
        CMP      R2,#+0
        MOVNE    R4,#+0
        STR      R4,[R5, #+324]
        B        ??OnKey_3
//  311       break;
//  312     // case '7':  if(Cross_y<172)Cross_y+=18;break;
//  313   //  case '3':ShowBMmenu1();break;
//  314     case '7':if(workdesctop>1) workdesctop--; else workdesctop=3;break;
??OnKey_32:
        CMP      R12,#+2
        BLT      ??OnKey_30
        SUB      R0,R12,#+1
        B        ??OnKey_29
//  315     case '9':if(workdesctop<3) workdesctop++; else workdesctop=1;break;    
??OnKey_33:
        CMP      R12,#+3
        ADDLT    R0,R12,#+1
        BLT      ??OnKey_29
??OnKey_27:
        STR      R4,[R5, #+292]
//  316     }    
//  317   }
//  318   if (msg->gbsmsg->msg==LONG_PRESS && !kdblock)
??OnKey_3:
        LDR      R0,[SP, #+0]
        MOV      R2,#+149
        LDR      R0,[R0, #+4]
        ORR      R2,R2,#0x100
        LDRSH    R1,[R0, #+2]
        CMP      R1,R2
        LDREQ    R1,[R5, #+320]
        CMPEQ    R1,#+0
        BNE      ??OnKey_34
//  319   {
//  320     switch(msg->gbsmsg->submess)
        LDR      R1,[R5, #+288]
        LDR      R2,[R5, #+312]
        LDR      R4,[R5, #+308]
        LDR      R0,[R0, #+4]
        LDR      R10,[R5, #+328]
        LDR      R12,[R5, #+332]
        SUB      R3,R2,R1
        SUB      R7,R4,R1
        ADD      R8,R1,R2
        ADD      R9,R1,R4
        SUB      R0,R0,#+49
        CMP      R0,#+13
        BHI      ??OnKey_34
        ADR      R11,??OnKey_1
        LDRB     R11,[R11, R0]
        ADD      PC,PC,R11, LSL #+2
        DATA
??OnKey_1:
        DC8      +69,+40,+82,+3
        DC8      +117,+22,+93,+55
        DC8      +104,+117,+40,+55
        DC8      +3,+22,+0,+0
        ARM
//  321     {
//  322     
//  323     case '4': case LEFT_BUTTON: 
//  324       if(Cross_x>0&& (!startmenu))Cross_x-=speed_cur;
??OnKey_35:
        CMP      R4,#+1
        BLT      ??OnKey_36
        CMP      R12,#+0
        STREQ    R7,[R5, #+308]
        BEQ      ??OnKey_37
//  325       if(startmenu)menu--;/*DrawCross(Cross_x+7,Cross_y,white);*/ 
??OnKey_36:
        CMP      R12,#+0
        SUBNE    R0,R10,#+1
        STRNE    R0,[R5, #+328]
//  326       if(moveclock)crd[clock][workdesctop-1].x-=speed_cur;
??OnKey_37:
        LDR      R0,[R5, #+324]
        CMP      R0,#+0
        POPEQ    {R1,R4-R11,PC}
        LDR      R0,[R5, #+292]
        MOV      R2,#+12
        MLA      R0,R2,R0,R5
        ADD      R0,R6,R0
        LDR      R2,[R0, #+0]
        SUB      R1,R2,R1
??OnKey_38:
        STR      R1,[R0, #+0]
        B        ??OnKey_39
//  327       break;
//  328     case '6': case RIGHT_BUTTON:
//  329       if(Cross_x<131&& (!startmenu)) Cross_x+=speed_cur;
??OnKey_40:
        CMP      R4,#+131
        BGE      ??OnKey_41
        CMP      R12,#+0
        STREQ    R9,[R5, #+308]
        BEQ      ??OnKey_42
//  330       if(startmenu)menu++;/*DrawCross(Cross_x-7,Cross_y,white);*/ 
??OnKey_41:
        CMP      R12,#+0
        ADDNE    R0,R10,#+1
        STRNE    R0,[R5, #+328]
//  331       if(moveclock)crd[clock][workdesctop-1].x+=speed_cur;
??OnKey_42:
        LDR      R0,[R5, #+324]
        CMP      R0,#+0
        POPEQ    {R1,R4-R11,PC}
        LDR      R0,[R5, #+292]
        MOV      R2,#+12
        MLA      R0,R2,R0,R5
        ADD      R0,R6,R0
        LDR      R2,[R0, #+0]
        ADD      R1,R1,R2
        B        ??OnKey_38
//  332       break;
//  333     case '2': case UP_BUTTON:   
//  334       if(Cross_y>0&& (!startmenu))   Cross_y-=speed_cur;/*DrawCross(Cross_x,Cross_y+7,white);*/
??OnKey_43:
        CMP      R2,#+1
        BLT      ??OnKey_44
        CMP      R12,#+0
        STREQ    R3,[R5, #+312]
//  335       if(moveclock)crd[clock][workdesctop-1].y-=speed_cur;
??OnKey_44:
        LDR      R0,[R5, #+324]
        CMP      R0,#+0
        POPEQ    {R1,R4-R11,PC}
        LDR      R0,[R5, #+292]
        MOV      R2,#+12
        MLA      R0,R2,R0,R5
        ADD      R0,R6,R0
        LDR      R2,[R0, #+4]
        SUB      R1,R2,R1
??OnKey_45:
        STR      R1,[R0, #+4]
        B        ??OnKey_39
//  336       break;
//  337     case '8': case DOWN_BUTTON: 
//  338       if(Cross_y<175&& (!startmenu)) Cross_y+=speed_cur;/*DrawCross(Cross_x,Cross_y-7,white);*/
??OnKey_46:
        CMP      R2,#+175
        BGE      ??OnKey_47
        CMP      R12,#+0
        STREQ    R8,[R5, #+312]
//  339       if(moveclock)crd[clock][workdesctop-1].y+=speed_cur;
??OnKey_47:
        LDR      R0,[R5, #+324]
        CMP      R0,#+0
        POPEQ    {R1,R4-R11,PC}
        LDR      R0,[R5, #+292]
        MOV      R2,#+12
        MLA      R0,R2,R0,R5
        ADD      R0,R6,R0
        LDR      R2,[R0, #+4]
        ADD      R1,R1,R2
        B        ??OnKey_45
//  340       break;
//  341     case '1': if(Cross_x>0 && Cross_y>0 && (!startmenu)){ Cross_x-=speed_cur;Cross_y-=speed_cur; }
??OnKey_48:
        CMP      R4,#+1
        CMPGE    R2,#+1
        BLT      ??OnKey_49
        CMP      R12,#+0
        STREQ    R7,[R5, #+308]
??OnKey_50:
        STR      R3,[R5, #+312]
        B        ??OnKey_39
//  342               else if (Cross_y>0)Cross_y-=speed_cur; 
??OnKey_49:
        CMP      R2,#+1
        BGE      ??OnKey_50
//  343               else if (Cross_x>0)Cross_x-=speed_cur; break;
??OnKey_51:
        CMP      R4,#+1
        BLT      ??OnKey_34
        STR      R7,[R5, #+308]
        B        ??OnKey_39
//  344     case '3': if(Cross_x<131 && Cross_y>0&& (!startmenu)){ Cross_x+=speed_cur;Cross_y-=speed_cur;}
??OnKey_52:
        CMP      R4,#+131
        BGE      ??OnKey_53
        CMP      R2,#+1
        BLT      ??OnKey_53
        CMP      R12,#+0
        BNE      ??OnKey_50
        STR      R9,[R5, #+308]
        B        ??OnKey_50
//  345               else if (Cross_y>0)Cross_y-=speed_cur; 
??OnKey_53:
        CMP      R2,#+1
        BGE      ??OnKey_50
//  346               else if (Cross_x<131)Cross_x+=speed_cur;break;
        B        ??OnKey_54
//  347     case '7': if(Cross_x>0 && Cross_y<175&& (!startmenu)){Cross_x-=speed_cur;Cross_y+=speed_cur;}
??OnKey_55:
        CMP      R4,#+1
        BLT      ??OnKey_56
        CMP      R2,#+175
        BGE      ??OnKey_56
        CMP      R12,#+0
        STREQ    R7,[R5, #+308]
??OnKey_57:
        B        ??OnKey_58
//  348               else if (Cross_y<175)Cross_y+=speed_cur; 
??OnKey_56:
        CMP      R2,#+175
        BGE      ??OnKey_51
        B        ??OnKey_58
        DATA
??OnKey_12:
        DC8      "0",+0,+0
        ARM
//  349               else if (Cross_x>0)Cross_x-=speed_cur;break;
//  350     case '9': if(Cross_x<131 && Cross_y<175&& (!startmenu)){Cross_x+=speed_cur;Cross_y+=speed_cur;}
??OnKey_59:
        CMP      R4,#+131
        CMPLT    R2,#+175
        BGE      ??OnKey_60
        CMP      R12,#+0
        BNE      ??OnKey_58
        STR      R9,[R5, #+308]
??OnKey_58:
        STR      R8,[R5, #+312]
??OnKey_39:
        MOV      R0,#+0
        POP      {R1,R4-R11,PC}
//  351               else if (Cross_y<175)Cross_y+=speed_cur; 
??OnKey_60:
        CMP      R2,#+175
        BLT      ??OnKey_58
//  352               else if (Cross_x<131)Cross_x+=speed_cur;break;
??OnKey_54:
        CMP      R4,#+131
        STRLT    R9,[R5, #+308]
//  353     case ENTER_BUTTON: case '5':break;
//  354     
//  355    }
//  356     
//  357   }  
//  358   return(0);
??OnKey_34:
        MOV      R0,#+0
        POP      {R1,R4-R11,PC}   ;; return
        DATA
??OnKey_4:
        DC32     `?<Constant "Exit?">`
        DC32     QuitCallbackProc
        CFI EndBlock cfiBlock149
//  359 }

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable58:
        DC32     crd

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock150 Using cfiCommon0
        CFI NoFunction
        THUMB
??method8??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock150
        REQUIRE method8
//  360 
//  361 extern void kill_data(void *p, void (*func_p)(void *));
//  362 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock151 Using cfiCommon1
        CFI Function method8
        ARM
//  363 int method8(void){return(0);}
method8:
        MOV      R0,#+0
        BX       LR               ;; return
        CFI EndBlock cfiBlock151

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock152 Using cfiCommon0
        CFI NoFunction
        THUMB
??method9??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock152
        REQUIRE method9

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock153 Using cfiCommon1
        CFI Function method9
        ARM
//  364 int method9(void){return(0);}
method9:
        MOV      R0,#+0
        BX       LR               ;; return
        CFI EndBlock cfiBlock153

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock154 Using cfiCommon0
        CFI NoFunction
        THUMB
??maincsm_oncreate??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock154
        REQUIRE maincsm_oncreate
//  365 const void * const gui_methods[11]={
//  366   (void *)OnRedraw,	
//  367   (void *)onCreate,	
//  368   (void *)onClose,	
//  369   (void *)onFocus,	
//  370   (void *)onUnfocus,
//  371   (void *)OnKey,	
//  372    0,
//  373   (void *)kill_data,	//Destroy
//  374   (void *)method8,
//  375   (void *)method9,
//  376   0
//  377 };
//  378 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock155 Using cfiCommon1
        CFI Function maincsm_oncreate
        ARM
//  379 void maincsm_oncreate(CSM_RAM *data)
//  380 {
maincsm_oncreate:
        PUSH     {R4-R6,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R6 Frame(CFA, -8)
        CFI R5 Frame(CFA, -12)
        CFI R4 Frame(CFA, -16)
        CFI CFA R13+16
        MOV      R4,R0
//  381   static const RECT Canvas={0,0,0,0};
//  382   MAIN_GUI *main_gui=malloc(sizeof(MAIN_GUI));
        MOV      R0,#+60
        SWI      +20
        MOV      R5,R0
//  383   MAIN_CSM*csm=(MAIN_CSM*)data;
//  384   zeromem(main_gui,sizeof(MAIN_GUI));
        MOV      R1,#+60
        SWI      +285
//  385   patch_rect((RECT*)&Canvas,0,YDISP,ScreenW()-1,ScreenH()-1);
        SWI      +33161
        MOV      R6,R0
        SWI      +33160
        LDR      R2,??maincsm_oncreate_0  ;; ??Canvas
        SUB      R1,R6,#+1
        SUB      R0,R0,#+1
        MOV      R6,#+0
        STR      R6,[R2, #+0]
        STRH     R0,[R2, #+4]
        STRH     R1,[R2, #+6]
//  386   main_gui->gui.canvas=(void *)(&Canvas);
        STR      R2,[R5, #+0]
//  387   main_gui->gui.flag30=2;
        MOV      R0,#+2
        STR      R0,[R5, #+44]
//  388   main_gui->gui.methods=(void *)gui_methods;
        ADD      R0,R2,#+8
        STR      R0,[R5, #+4]
//  389   main_gui->gui.item_ll.data_mfree=(void (*)(void *))mfree_adr();
        SWI      +32789
        STR      R0,[R5, #+28]
//  390   csm->csm.state=0;
        STR      R6,[R4, #+16]
//  391   csm->csm.unk1=0;
        STR      R6,[R4, #+20]
//  392   csm->gui_id=CreateGUI(main_gui);
        MOV      R0,R5
        SWI      +311
        STR      R0,[R4, #+40]
//  393 }
        POP      {R4-R6,PC}       ;; return
        DATA
??maincsm_oncreate_0:
        DC32     ??Canvas
        CFI EndBlock cfiBlock155

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock156 Using cfiCommon0
        CFI NoFunction
        THUMB
??ElfKiller??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock156
        REQUIRE ElfKiller

        RSEG DATA_C:CONST:SORT:NOROOT(2)
??Canvas:
        DATA
        DC16 0, 0, 0, 0
gui_methods:
        DC32 OnRedraw, onCreate, onClose, onFocus, onUnfocus, OnKey, 0H
        DC32 kill_data, method8, method9, 0H
//  394 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock157 Using cfiCommon1
        CFI Function ElfKiller
        ARM
//  395 void ElfKiller(void)
//  396 { 
ElfKiller:
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
//  397   extern void kill_data(void *p, void (*func_p)(void *));
//  398   extern void *ELF_BEGIN;
//  399   kill_data(&ELF_BEGIN,(void (*)(void *))mfree_adr());
        SWI      +32789
        MOV      R1,R0
        LDR      R0,??ElfKiller_0  ;; ELF_BEGIN
        POP      {LR}             ;; Pop
        CFI ?RET R14
        CFI CFA R13+0
        _BF      kill_data,??kill_data??rA  ;; tailcall
        DATA
??ElfKiller_0:
        DC32     ELF_BEGIN
        CFI EndBlock cfiBlock157
//  400 }

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock158 Using cfiCommon0
        CFI NoFunction
        THUMB
??maincsm_onclose??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock158
        REQUIRE maincsm_onclose
//  401 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock159 Using cfiCommon1
        CFI Function maincsm_onclose
        ARM
//  402 void maincsm_onclose(CSM_RAM *csm)
//  403 {
maincsm_onclose:
        PUSH     {R4,LR}
        CFI ?RET Frame(CFA, -4)
        CFI R4 Frame(CFA, -8)
        CFI CFA R13+8
//  404   GBS_DelTimer(&menu_tmr);
        LDR      R4,??DataTable59  ;; crd
        ADD      R0,R4,#+444
        SWI      +396
//  405   GBS_DelTimer(&timer);
        ADD      R0,R4,#+428
        SWI      +396
//  406   SUBPROC((void *)ElfKiller);
        LDR      R0,??maincsm_onclose_0  ;; ElfKiller
        SWI      +369
//  407 }
        POP      {R4,PC}          ;; return
        DATA
??maincsm_onclose_0:
        DC32     ElfKiller
        CFI EndBlock cfiBlock159

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable59:
        DC32     crd

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock160 Using cfiCommon0
        CFI NoFunction
        THUMB
??maincsm_onmessage??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock160
        REQUIRE maincsm_onmessage
//  408 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock161 Using cfiCommon1
        CFI Function maincsm_onmessage
        ARM
//  409 int maincsm_onmessage(CSM_RAM *data, GBS_MSG *msg)
//  410 {
//  411   MAIN_CSM *csm=(MAIN_CSM*)data;
//  412   if ((msg->msg==MSG_GUI_DESTROYED)&&((int)msg->data0==csm->gui_id))
maincsm_onmessage:
        LDRSH    R2,[R1, #+2]
        CMP      R2,#+152
        BNE      ??maincsm_onmessage_0
        LDR      R1,[R1, #+8]
        LDR      R2,[R0, #+40]
        CMP      R1,R2
//  413   {
//  414     csm->csm.state=-3;
        MVNEQ    R1,#+2
        STREQ    R1,[R0, #+16]
//  415   }
//  416   return(1);
??maincsm_onmessage_0:
        MOV      R0,#+1
        BX       LR               ;; return
        CFI EndBlock cfiBlock161
//  417 }

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock162 Using cfiCommon0
        CFI NoFunction
        THUMB
??UpdateCSMname??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock162
        REQUIRE UpdateCSMname
//  418 
//  419 const struct
//  420 {
//  421   CSM_DESC maincsm;
//  422   WSHDR maincsm_name;

        RSEG DATA_C:CONST:SORT:NOROOT(2)
//  423 }MAINCSM =
MAINCSM:
        DATA
        DC32 maincsm_onmessage, maincsm_oncreate, maincsm_onclose, 44, 1
        DC32 minus11, maincsm_name_body, 55AACCCCH, 3333AA55H, 0
        DC16 139
        DC8 0, 0
//  424 {
//  425   {
//  426   maincsm_onmessage,
//  427   maincsm_oncreate,
//  428 #ifdef NEWSGOLD
//  429   0,
//  430   0,
//  431   0,
//  432   0,
//  433 #endif
//  434   maincsm_onclose,
//  435   sizeof(MAIN_CSM),
//  436   1,
//  437   &minus11
//  438   },
//  439   {
//  440     maincsm_name_body,
//  441     NAMECSM_MAGIC1,
//  442     NAMECSM_MAGIC2,
//  443     0x0,
//  444     139
//  445   }
//  446 };
//  447 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock163 Using cfiCommon1
        CFI Function UpdateCSMname
        ARM
//  448 void UpdateCSMname(void)
//  449 {
//  450   wsprintf((WSHDR *)(&MAINCSM.maincsm_name),"exe");
UpdateCSMname:
        LDR      R0,??UpdateCSMname_0+0x4  ;; MAINCSM + 24
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
        ADR      R1,??UpdateCSMname_0  ;; "exe"
        SWI      +292
//  451 }
        POP      {PC}             ;; return
        DATA
??UpdateCSMname_0:
        DC8      "exe"
        DC32     MAINCSM + 24
        CFI EndBlock cfiBlock163

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock164 Using cfiCommon0
        CFI NoFunction
        THUMB
??main??rT:
        BX       PC
        Nop      
        CFI EndBlock cfiBlock164
        REQUIRE main
//  452 
//  453 

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock165 Using cfiCommon1
        CFI Function main
        ARM
//  454 int main(char *exename, char *fname)
//  455 {
main:
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
        SUB      SP,SP,#+44
        CFI CFA R13+48
//  456   LockSched();
        SWI      +326
//  457   UpdateCSMname();//îáíîâëÿåì èìÿ äëÿ õòàñêà
        BL       UpdateCSMname
//  458   MAIN_CSM main_csm;
//  459   CreateCSM(&MAINCSM.maincsm,&main_csm,0);//ñîçäàåì öñì
        LDR      R0,??main_0      ;; MAINCSM
        MOV      R2,#+0
        MOV      R1,SP
        SWI      +263
//  460   UnlockSched();
        SWI      +327
//  461 
//  462   LoadAllConfig();
//  463   return 0;
        MOV      R0,#+0
        ADD      SP,SP,#+44
        CFI CFA R13+4
        POP      {PC}             ;; return
        DATA
??main_0:
        DC32     MAINCSM
        CFI EndBlock cfiBlock165
//  464 }

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock166 Using cfiCommon1
        CFI NoFunction
        ARM
??rA??div32_a:
        LDR      R12,??Subroutine83_0  ;; ??div32_a
        MOV      PC,R12
        DATA
??Subroutine83_0:
        DC32     ??div32_a
        CFI EndBlock cfiBlock166

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock167 Using cfiCommon1
        CFI NoFunction
        ARM
??kill_data??rA:
        LDR      R12,??Subroutine84_0  ;; kill_data
        BX       R12
        DATA
??Subroutine84_0:
        DC32     kill_data
        CFI EndBlock cfiBlock167

        RSEG DATA_ID:CONST:SORT:NOROOT(2)
`?<Initializer for crd>`:
        DATA
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
`?<Initializer for NAME>`:
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
`?<Initializer for speed_cur>`:
        DC8 0, 0, 0, 0
`?<Initializer for workdesctop>`:
        DC32 2
`?<Initializer for typecur>`:
        DC32 0
`?<Initializer for IRDA>`:
        DC32 0
`?<Initializer for cr_y>`:
        DC32 157
`?<Initializer for Cross_x>`:
        DC32 50
`?<Initializer for Cross_y>`:
        DC32 50
`?<Initializer for TypeLine>`:
        DC32 0
`?<Initializer for kdblock>`:
        DC32 0
`?<Initializer for moveclock>`:
        DC32 0
`?<Initializer for menu>`:
        DC32 1
`?<Initializer for startmenu>`:
        DC32 0
`?<Initializer for NAME2>`:
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
`?<Initializer for panel_x>`:
        DC32 20
`?<Initializer for panel_y>`:
        DC32 120
`?<Initializer for img_y>`:
        DC32 2
`?<Initializer for menu_x>`:
        DC32 40
`?<Initializer for menu_y>`:
        DC32 140
`?<Initializer for err>`:
        DC8 0, 0, 0, 0
`?<Initializer for DrawPuskk>`:
        DC32 0
`?<Initializer for pusk_y>`:
        DC32 50
`?<Initializer for MAINCSM_ID>`:
        DC32 0
`?<Initializer for Quit_Required>`:
        DC32 0
`?<Initializer for per_s>`:
        DC8 "%s"
        DC8 0
`?<Initializer for white>`:
        DC8 255, 255, 255, 96
`?<Initializer for RED>`:
        DC8 255, 0, 0, 96
`?<Initializer for prozr>`:
        DC8 0, 0, 0, 0
`?<Initializer for timer>`:
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
`?<Initializer for menu_tmr>`:
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
`?<Initializer for per_6s>`:
        DC8 "%s\012%s\012%s\012%s\012%s\012%s"
        DC8 0, 0

        RSEG DATA_ID:CONST:SORT:NOROOT(2)
`?<Initializer for black>`:
        DATA
        DC8 0, 0, 0, 96

        RSEG DATA_ID:CONST:SORT:NOROOT(0)
`?<Initializer for per_d>`:
        DATA
        DC8 "%d"

        RSEG DATA_ID:CONST:SORT:NOROOT(0)
`?<Initializer for per_t>`:
        DATA
        DC8 "%t"

        RSEG DATA_ID:CONST:SORT:NOROOT(0)
`?<Initializer for _percent_t>`:
        DATA
        DC8 "%t"

        RSEG DATA_ID:CONST:SORT:NOROOT(2)
`?<Initializer for fmenusoftkeys>`:
        DATA
        DC32 0, 1, 2

        RSEG DATA_ID:CONST:SORT:NOROOT(2)
`?<Initializer for fmenu_sk>`:
        DATA
        DC16 1, 0
        DC32 `?<Constant "Close">`
        DC16 24, 0
        DC32 `?<Constant "Select">`
        DC16 61, 0
        DC32 `?<Constant "+">`

        RSEG DATA_ID:CONST:SORT:NOROOT(2)
`?<Initializer for fmenu_skt>`:
        DATA
        DC32 fmenu_sk, 1

        RSEG DATA_ID:CONST:SORT:NOROOT(2)
`?<Initializer for filelist_HDR>`:
        DATA
        DC16 0, 0, 0, 0
        DC32 0H, header, 32767
`?<Initializer for header>`:
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
`?<Initializer for filelist_STRUCT>`:
        DC32 8, filelist_menu_onkey, filelist_menu_ghook, 0H, fmenusoftkeys
        DC32 fmenu_skt, 16, filelist_menu_iconhndl, 0H, 0H, 0

        RSEG DATA_ID:CONST:SORT:NOROOT(2)
`?<Initializer for vibra_count>`:
        DATA
        DC32 1
`?<Initializer for tmr_vibra>`:
        DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

        RSEG DATA_ID:CONST:SORT:NOROOT(2)
`?*?DATA_ID`:

        RSEG INITTAB:CODE:ROOT(2)
        DATA
?init?tab?DATA_I:
        DCD      sfe(DATA_I) - sfb(DATA_I), sfb(DATA_I), sfb(DATA_ID)

        RSEG INITTAB:CODE:ROOT(2)
        DATA
?init?tab?DATA_Z:
        DCD      sfe(DATA_Z) - sfb(DATA_Z), sfb(DATA_Z), sfb(DATA_Z)

        END
// 
// 14 768 bytes in segment CODE
//  3 502 bytes in segment DATA_C
//    749 bytes in segment DATA_I
//    749 bytes in segment DATA_ID
// 23 468 bytes in segment DATA_Z
//     24 bytes in segment INITTAB
// 
// 14 412 bytes of CODE  memory (+ 380 bytes shared)
//  4 251 bytes of CONST memory
// 24 217 bytes of DATA  memory
//
//Errors: none
//Warnings: none
