brom.s 233 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098
  1. ;; Vector table
  2. ffff0000: ea000008 b reset ; reset
  3. ffff0004: ea000006 b unimplemented ; _undefined_instruction
  4. ffff0008: ea000005 b unimplemented ; _software_interrupt
  5. ffff000c: ea000004 b unimplemented ; _prefetch_abort
  6. ffff0010: ea000003 b unimplemented ; _data_abort
  7. ffff0014: ea000002 b unimplemented ; _not_used
  8. ffff0018: ea000011 b irq ; _irq
  9. ffff001c: ea000000 b unimplemented ; _fiq
  10. ffff0020: ea000013 b fel_setup ; FEL
  11. unimplemented:
  12. ffff0024: eafffffe b unimplemented ; loop forever
  13. ;; Entry point, clear all register and jump to BROM
  14. reset:
  15. ffff0028: e3a00001 mov r0, #1
  16. ffff002c: e3a01000 mov r1, #0
  17. ffff0030: e3a02000 mov r2, #0
  18. ffff0034: e3a03000 mov r3, #0
  19. ffff0038: e3a04000 mov r4, #0
  20. ffff003c: e3a05000 mov r5, #0
  21. ffff0040: e3a06000 mov r6, #0
  22. ffff0044: e3a07000 mov r7, #0
  23. ffff0048: e3a08000 mov r8, #0
  24. ffff004c: e3a09000 mov r9, #0
  25. ffff0050: e3a0a000 mov sl, #0
  26. ffff0054: e3a0b000 mov fp, #0
  27. ffff0058: e3a0c000 mov ip, #0
  28. ffff005c: e3a0d000 mov sp, #0
  29. ffff0060: e59ff100 ldr pc, [pc, #256] ; 0xffff0168 =0xffff2c00 jump to BROM
  30. ;; First-level interrrupt handler
  31. irq:
  32. ffff0064: e24ee004 sub lr, lr, #4
  33. ffff0068: e92d5fff push {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  34. ffff006c: eb000709 bl interrupt_handler
  35. ffff0070: e8fd9fff ldm sp!, {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, pc}^
  36. ;; FEL entry point
  37. fel_setup:
  38. ffff0074: e3a020d2 mov r2, #210 ; 0xd2
  39. ffff0078: e121f002 msr CPSR_c, r2
  40. ffff007c: e59fd0e8 ldr sp, [pc, #232] ; 0xffff016c =0x00002000
  41. ffff0080: e10f0000 mrs r0, CPSR
  42. ffff0084: e3c0001f bic r0, r0, #31
  43. ffff0088: e38000d3 orr r0, r0, #211 ; 0xd3
  44. ffff008c: e121f000 msr CPSR_c, r0
  45. ffff0090: e59fd0d8 ldr sp, [pc, #216] ; 0xffff0170 =0x00007000
  46. ffff0094: ee110f30 mrc 15, 0, r0, cr1, cr0, {1}
  47. ffff0098: e3c00002 bic r0, r0, #2
  48. ffff009c: ee010f30 mcr 15, 0, r0, cr1, cr0, {1}
  49. ffff00a0: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}
  50. ffff00a4: e3c00001 bic r0, r0, #1
  51. ffff00a8: e3c00b02 bic r0, r0, #2048 ; 0x800
  52. ffff00ac: e3c00a01 bic r0, r0, #4096 ; 0x1000
  53. ffff00b0: e3c00004 bic r0, r0, #4
  54. ffff00b4: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}
  55. ffff00b8: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}
  56. ffff00bc: e3800a02 orr r0, r0, #8192 ; 0x2000
  57. ffff00c0: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}
  58. ffff00c4: e59f10a8 ldr r1, [pc, #168] ; 0xffff0174 =0x01c20000 CCU_BASE
  59. ffff00c8: e3a02000 mov r2, #0
  60. ffff00cc: e5913050 ldr r3, [r1, #80] ; 0x50
  61. ffff00d0: e3c33a01 bic r3, r3, #4096 ; 0x1000
  62. ffff00d4: e1834002 orr r4, r3, r2
  63. ffff00d8: e5814050 str r4, [r1, #80] ; 0x50
  64. ffff00dc: e3a02000 mov r2, #0
  65. ffff00e0: e5913050 ldr r3, [r1, #80] ; 0x50
  66. ffff00e4: e3c33003 bic r3, r3, #3
  67. ffff00e8: e1834002 orr r4, r3, r2
  68. ffff00ec: e5814050 str r4, [r1, #80] ; 0x50
  69. ffff00f0: e3012110 movw r2, #4368 ; 0x1110
  70. ffff00f4: e5913054 ldr r3, [r1, #84] ; 0x54
  71. ffff00f8: e3c330f0 bic r3, r3, #240 ; 0xf0
  72. ffff00fc: e3c33c33 bic r3, r3, #13056 ; 0x3300
  73. ffff0100: e1834002 orr r4, r3, r2
  74. ffff0104: e5814054 str r4, [r1, #84] ; 0x54
  75. ffff0108: e3a02c01 mov r2, #256 ; 0x100
  76. ffff010c: e59130cc ldr r3, [r1, #204] ; 0xcc
  77. ffff0110: e3c33c01 bic r3, r3, #256 ; 0x100
  78. ffff0114: e1834002 orr r4, r3, r2
  79. ffff0118: e58140cc str r4, [r1, #204] ; 0xcc
  80. ffff011c: e3020710 movw r0, #10000 ; 0x2710
  81. ffff0120: e2500001 subs r0, r0, #1
  82. ffff0124: 1afffffd bne 0xffff0120
  83. ffff0128: e3a02401 mov r2, #16777216 ; 0x1000000
  84. ffff012c: e5913060 ldr r3, [r1, #96] ; 0x60
  85. ffff0130: e3c33401 bic r3, r3, #16777216 ; 0x1000000
  86. ffff0134: e1834002 orr r4, r3, r2
  87. ffff0138: e5814060 str r4, [r1, #96] ; 0x60
  88. ffff013c: e3a02401 mov r2, #16777216 ; 0x1000000
  89. ffff0140: e59132c0 ldr r3, [r1, #704] ; 0x2c0
  90. ffff0144: e3c33401 bic r3, r3, #16777216 ; 0x1000000
  91. ffff0148: e1834002 orr r4, r3, r2
  92. ffff014c: e58142c0 str r4, [r1, #704] ; 0x2c0
  93. ffff0150: e3a02001 mov r2, #1
  94. ffff0154: e59130cc ldr r3, [r1, #204] ; 0xcc
  95. ffff0158: e3c33001 bic r3, r3, #1
  96. ffff015c: e1834002 orr r4, r3, r2
  97. ffff0160: e58140cc str r4, [r1, #204] ; 0xcc
  98. ffff0164: eb00085f bl 0xffff22e8
  99. ;; Global Offset Table
  100. ffff0168: ffff2c00
  101. ffff016c: 00002000 andeq r2, r0, r0
  102. ffff0170: 00007000 andeq r7, r0, r0
  103. ffff0174: 01c20000 biceq r0, r2, r0 ; CCU_BASE
  104. ffff0178: e12fff1e bx lr
  105. ffff017c: e12fff1e bx lr
  106. ffff0180: e3a01000 mov r1, #0
  107. ffff0184: ea000000 b 0xffff018c
  108. ffff0188: e2811001 add r1, r1, #1
  109. ffff018c: e5d02018 ldrb r2, [r0, #24]
  110. ffff0190: e3520001 cmp r2, #1
  111. ffff0194: 0afffffb beq 0xffff0188
  112. ffff0198: e12fff1e bx lr
  113. ffff019c: e92d4010 push {r4, lr}
  114. ffff01a0: e1a04000 mov r4, r0
  115. ffff01a4: e3a02022 mov r2, #34 ; 0x22
  116. ffff01a8: e3a01000 mov r1, #0
  117. ffff01ac: e1a00004 mov r0, r4
  118. ffff01b0: eb0001c9 bl 0xffff08dc
  119. ffff01b4: e3a00000 mov r0, #0
  120. ffff01b8: e5c40020 strb r0, [r4, #32]
  121. ffff01bc: e5c40021 strb r0, [r4, #33] ; 0x21
  122. ffff01c0: e8bd8010 pop {r4, pc}
  123. ffff01c4: e5801000 str r1, [r0]
  124. ffff01c8: e5802004 str r2, [r0, #4]
  125. ffff01cc: e3a03000 mov r3, #0
  126. ffff01d0: e5c03008 strb r3, [r0, #8]
  127. ffff01d4: e5803010 str r3, [r0, #16]
  128. ffff01d8: e3a03001 mov r3, #1
  129. ffff01dc: e5c03018 strb r3, [r0, #24]
  130. ffff01e0: e12fff1e bx lr
  131. ffff01e4: e92d4070 push {r4, r5, r6, lr}
  132. ffff01e8: e24dd020 sub sp, sp, #32
  133. ffff01ec: e1a06000 mov r6, r0
  134. ffff01f0: e1a04001 mov r4, r1
  135. ffff01f4: e3a05000 mov r5, #0
  136. ffff01f8: e5965034 ldr r5, [r6, #52] ; 0x34
  137. ffff01fc: e1a00005 mov r0, r5
  138. ffff0200: ebffffde bl 0xffff0180
  139. ffff0204: e3a02020 mov r2, #32
  140. ffff0208: e3a01000 mov r1, #0
  141. ffff020c: e1a0000d mov r0, sp
  142. ffff0210: eb0001b1 bl 0xffff08dc
  143. ffff0214: e1a00006 mov r0, r6
  144. ffff0218: eb000324 bl 0xffff0eb0
  145. ffff021c: e3a02020 mov r2, #32
  146. ffff0220: e1a0100d mov r1, sp
  147. ffff0224: e1a00005 mov r0, r5
  148. ffff0228: ebffffe5 bl 0xffff01c4
  149. ffff022c: e3a00001 mov r0, #1
  150. ffff0230: e5c40020 strb r0, [r4, #32]
  151. ffff0234: e3a02000 mov r2, #0
  152. ffff0238: e1a01005 mov r1, r5
  153. ffff023c: e1a00006 mov r0, r6
  154. ffff0240: eb00039c bl 0xffff10b8
  155. ffff0244: e1a00005 mov r0, r5
  156. ffff0248: ebffffcc bl 0xffff0180
  157. ffff024c: e3a02022 mov r2, #34 ; 0x22
  158. ffff0250: e1a00004 mov r0, r4
  159. ffff0254: e5951000 ldr r1, [r5]
  160. ffff0258: eb000195 bl 0xffff08b4
  161. ffff025c: e28dd020 add sp, sp, #32
  162. ffff0260: e8bd8070 pop {r4, r5, r6, pc}
  163. ffff0264: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  164. ffff0268: e1a06000 mov r6, r0
  165. ffff026c: e1a04001 mov r4, r1
  166. ffff0270: e1a07002 mov r7, r2
  167. ffff0274: e1a05003 mov r5, r3
  168. ffff0278: e3a08000 mov r8, #0
  169. ffff027c: e3560000 cmp r6, #0
  170. ffff0280: 1a000001 bne 0xffff028c
  171. ffff0284: e5948034 ldr r8, [r4, #52] ; 0x34
  172. ffff0288: ea000000 b 0xffff0290
  173. ffff028c: e5948030 ldr r8, [r4, #48] ; 0x30
  174. ffff0290: e1a00008 mov r0, r8
  175. ffff0294: ebffffb9 bl 0xffff0180
  176. ffff0298: e3a00002 mov r0, #2
  177. ffff029c: e5c70020 strb r0, [r7, #32]
  178. ffff02a0: e1a00004 mov r0, r4
  179. ffff02a4: eb000301 bl 0xffff0eb0
  180. ffff02a8: e1a00008 mov r0, r8
  181. ffff02ac: e8950006 ldm r5, {r1, r2}
  182. ffff02b0: ebffffc3 bl 0xffff01c4
  183. ffff02b4: e3a02000 mov r2, #0
  184. ffff02b8: e1a01008 mov r1, r8
  185. ffff02bc: e1a00004 mov r0, r4
  186. ffff02c0: eb00037c bl 0xffff10b8
  187. ffff02c4: e1a00008 mov r0, r8
  188. ffff02c8: ebffffac bl 0xffff0180
  189. ffff02cc: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  190. ffff02d0: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  191. ffff02d4: e1a05000 mov r5, r0
  192. ffff02d8: e1a04001 mov r4, r1
  193. ffff02dc: e1a06002 mov r6, r2
  194. ffff02e0: e5d47010 ldrb r7, [r4, #16]
  195. ffff02e4: e3570011 cmp r7, #17
  196. ffff02e8: 0a000002 beq 0xffff02f8
  197. ffff02ec: e3570012 cmp r7, #18
  198. ffff02f0: 1a00000e bne 0xffff0330
  199. ffff02f4: ea000006 b 0xffff0314
  200. ffff02f8: e320f000 nop {0}
  201. ffff02fc: e1a03006 mov r3, r6
  202. ffff0300: e1a02004 mov r2, r4
  203. ffff0304: e1a01005 mov r1, r5
  204. ffff0308: e3a00001 mov r0, #1
  205. ffff030c: ebffffd4 bl 0xffff0264
  206. ffff0310: ea000008 b 0xffff0338
  207. ffff0314: e320f000 nop {0}
  208. ffff0318: e1a03006 mov r3, r6
  209. ffff031c: e1a02004 mov r2, r4
  210. ffff0320: e1a01005 mov r1, r5
  211. ffff0324: e3a00000 mov r0, #0
  212. ffff0328: ebffffcd bl 0xffff0264
  213. ffff032c: ea000001 b 0xffff0338
  214. ffff0330: e320f000 nop {0}
  215. ffff0334: e320f000 nop {0}
  216. ffff0338: e320f000 nop {0}
  217. ffff033c: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  218. ffff0340: e92d41ff push {r0, r1, r2, r3, r4, r5, r6, r7, r8, lr}
  219. ffff0344: e1a05000 mov r5, r0
  220. ffff0348: e1a04001 mov r4, r1
  221. ffff034c: e1a07002 mov r7, r2
  222. ffff0350: e3a06000 mov r6, #0
  223. ffff0354: e5956030 ldr r6, [r5, #48] ; 0x30
  224. ffff0358: e3a00003 mov r0, #3
  225. ffff035c: e5c40020 strb r0, [r4, #32]
  226. ffff0360: e59f02f0 ldr r0, [pc, #752] ; 0xffff0658 ="AWUS"
  227. ffff0364: e58d0000 str r0, [sp]
  228. ffff0368: e5940004 ldr r0, [r4, #4]
  229. ffff036c: e58d0004 str r0, [sp, #4]
  230. ffff0370: e3a00000 mov r0, #0
  231. ffff0374: e58d0008 str r0, [sp, #8]
  232. ffff0378: e5cd000c strb r0, [sp, #12]
  233. ffff037c: e1a00005 mov r0, r5
  234. ffff0380: eb0002ca bl 0xffff0eb0
  235. ffff0384: e3a0200d mov r2, #13
  236. ffff0388: e1a0100d mov r1, sp
  237. ffff038c: e1a00006 mov r0, r6
  238. ffff0390: ebffff8b bl 0xffff01c4
  239. ffff0394: e3a02000 mov r2, #0
  240. ffff0398: e1a01006 mov r1, r6
  241. ffff039c: e1a00005 mov r0, r5
  242. ffff03a0: eb000344 bl 0xffff10b8
  243. ffff03a4: e1a00006 mov r0, r6
  244. ffff03a8: ebffff74 bl 0xffff0180
  245. ffff03ac: e8bd81ff pop {r0, r1, r2, r3, r4, r5, r6, r7, r8, pc}
  246. ffff03b0: e92d4030 push {r4, r5, lr}
  247. ffff03b4: e24dd024 sub sp, sp, #36 ; 0x24
  248. ffff03b8: e1a05000 mov r5, r0
  249. ffff03bc: e1a04001 mov r4, r1
  250. ffff03c0: e1a0000d mov r0, sp
  251. ffff03c4: ebffff74 bl 0xffff019c
  252. ffff03c8: e1a0100d mov r1, sp
  253. ffff03cc: e1a00005 mov r0, r5
  254. ffff03d0: ebffff83 bl 0xffff01e4
  255. ffff03d4: e1a02004 mov r2, r4
  256. ffff03d8: e1a0100d mov r1, sp
  257. ffff03dc: e1a00005 mov r0, r5
  258. ffff03e0: ebffffba bl 0xffff02d0
  259. ffff03e4: e1a02004 mov r2, r4
  260. ffff03e8: e1a0100d mov r1, sp
  261. ffff03ec: e1a00005 mov r0, r5
  262. ffff03f0: ebffffd2 bl 0xffff0340
  263. ffff03f4: e3a00000 mov r0, #0
  264. ffff03f8: e5c40008 strb r0, [r4, #8]
  265. ffff03fc: e28dd024 add sp, sp, #36 ; 0x24
  266. ffff0400: e8bd8030 pop {r4, r5, pc}
  267. ffff0404: e92d4070 push {r4, r5, r6, lr}
  268. ffff0408: e1a04000 mov r4, r0
  269. ffff040c: e1a05001 mov r5, r1
  270. ffff0410: e1a01005 mov r1, r5
  271. ffff0414: e1a00004 mov r0, r4
  272. ffff0418: ebffffe4 bl 0xffff03b0
  273. ffff041c: e8bd8070 pop {r4, r5, r6, pc}
  274. ffff0420: e92d4070 push {r4, r5, r6, lr}
  275. ffff0424: e1a04000 mov r4, r0
  276. ffff0428: e1a05001 mov r5, r1
  277. ffff042c: e3a0200c mov r2, #12
  278. ffff0430: e3a01000 mov r1, #0
  279. ffff0434: e59f0220 ldr r0, [pc, #544] ; 0xffff065c = 0x00007d04
  280. ffff0438: eb000127 bl 0xffff08dc
  281. ffff043c: e59f0218 ldr r0, [pc, #536] ; 0xffff065c =0x00007d04
  282. ffff0440: e5804000 str r4, [r0]
  283. ffff0444: e5805004 str r5, [r0, #4]
  284. ffff0448: e3a00002 mov r0, #2
  285. ffff044c: e59f1208 ldr r1, [pc, #520] ; 0xffff065c =0x00007d04
  286. ffff0450: e5c10008 strb r0, [r1, #8]
  287. ffff0454: e2810000 add r0, r1, #0
  288. ffff0458: e8bd8070 pop {r4, r5, r6, pc}
  289. ffff045c: e92d4030 push {r4, r5, lr}
  290. ffff0460: e24dd024 sub sp, sp, #36 ; 0x24
  291. ffff0464: e1a04000 mov r4, r0
  292. ffff0468: e3a05000 mov r5, #0
  293. ffff046c: e3a02020 mov r2, #32
  294. ffff0470: e3a01000 mov r1, #0
  295. ffff0474: e28d0004 add r0, sp, #4
  296. ffff0478: eb000117 bl 0xffff08dc
  297. ffff047c: e3a02008 mov r2, #8
  298. ffff0480: e28f1f76 add r1, pc, #472 ; 0x1d8
  299. ffff0484: e28d0004 add r0, sp, #4
  300. ffff0488: eb000109 bl 0xffff08b4
  301. ffff048c: e59f01d8 ldr r0, [pc, #472] ; 0xffff066c =0x00168100
  302. ffff0490: e58d000c str r0, [sp, #12]
  303. ffff0494: e3a00001 mov r0, #1
  304. ffff0498: e58d0010 str r0, [sp, #16]
  305. ffff049c: e1cd01b4 strh r0, [sp, #20]
  306. ffff04a0: e3a00044 mov r0, #68 ; 0x44
  307. ffff04a4: e5cd0016 strb r0, [sp, #22]
  308. ffff04a8: e3a00008 mov r0, #8
  309. ffff04ac: e5cd0017 strb r0, [sp, #23]
  310. ffff04b0: e3070e00 movw r0, #32256 ; 0x7e00
  311. ffff04b4: e58d0018 str r0, [sp, #24]
  312. ffff04b8: e3a01020 mov r1, #32
  313. ffff04bc: e28d0004 add r0, sp, #4
  314. ffff04c0: ebffffd6 bl 0xffff0420
  315. ffff04c4: e1a05000 mov r5, r0
  316. ffff04c8: e1a01005 mov r1, r5
  317. ffff04cc: e1a00004 mov r0, r4
  318. ffff04d0: ebffffb6 bl 0xffff03b0
  319. ffff04d4: e28dd024 add sp, sp, #36 ; 0x24
  320. ffff04d8: e8bd8030 pop {r4, r5, pc}
  321. ffff04dc: e92d407f push {r0, r1, r2, r3, r4, r5, r6, lr}
  322. ffff04e0: e1a04000 mov r4, r0
  323. ffff04e4: e3a05000 mov r5, #0
  324. ffff04e8: e3a02010 mov r2, #16
  325. ffff04ec: e3a01000 mov r1, #0
  326. ffff04f0: e1a0000d mov r0, sp
  327. ffff04f4: eb0000f8 bl 0xffff08dc
  328. ffff04f8: e3a00001 mov r0, #1
  329. ffff04fc: e1cd00b0 strh r0, [sp]
  330. ffff0500: e3a00000 mov r0, #0
  331. ffff0504: e1cd00b2 strh r0, [sp, #2]
  332. ffff0508: e3a01010 mov r1, #16
  333. ffff050c: e1a0000d mov r0, sp
  334. ffff0510: ebffffc2 bl 0xffff0420
  335. ffff0514: e1a05000 mov r5, r0
  336. ffff0518: e1a01005 mov r1, r5
  337. ffff051c: e1a00004 mov r0, r4
  338. ffff0520: ebffffa2 bl 0xffff03b0
  339. ffff0524: e8bd807f pop {r0, r1, r2, r3, r4, r5, r6, pc}
  340. ffff0528: e92d407f push {r0, r1, r2, r3, r4, r5, r6, lr}
  341. ffff052c: e1a04000 mov r4, r0
  342. ffff0530: e3a05000 mov r5, #0
  343. ffff0534: e3a02010 mov r2, #16
  344. ffff0538: e3a01000 mov r1, #0
  345. ffff053c: e1a0000d mov r0, sp
  346. ffff0540: eb0000e5 bl 0xffff08dc
  347. ffff0544: e30001f4 movw r0, #500 ; 0x1f4
  348. ffff0548: e1cd00b2 strh r0, [sp, #2]
  349. ffff054c: e3a00002 mov r0, #2
  350. ffff0550: e1cd00b0 strh r0, [sp]
  351. ffff0554: e3a01010 mov r1, #16
  352. ffff0558: e1a0000d mov r0, sp
  353. ffff055c: ebffffaf bl 0xffff0420
  354. ffff0560: e1a05000 mov r5, r0
  355. ffff0564: e1a01005 mov r1, r5
  356. ffff0568: e1a00004 mov r0, r4
  357. ffff056c: ebffff8f bl 0xffff03b0
  358. ffff0570: e8bd807f pop {r0, r1, r2, r3, r4, r5, r6, pc}
  359. ffff0574: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  360. ffff0578: e1a06000 mov r6, r0
  361. ffff057c: e1a04001 mov r4, r1
  362. ffff0580: e3a05000 mov r5, #0
  363. ffff0584: e3a07000 mov r7, #0
  364. ffff0588: e3540000 cmp r4, #0
  365. ffff058c: 1a000001 bne 0xffff0598
  366. ffff0590: e3a00001 mov r0, #1
  367. ffff0594: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  368. ffff0598: e1a05004 mov r5, r4
  369. ffff059c: e5950008 ldr r0, [r5, #8]
  370. ffff05a0: e3500000 cmp r0, #0
  371. ffff05a4: 1a000001 bne 0xffff05b0
  372. ffff05a8: e3a00001 mov r0, #1
  373. ffff05ac: eafffff8 b 0xffff0594
  374. ffff05b0: e5951008 ldr r1, [r5, #8]
  375. ffff05b4: e5950004 ldr r0, [r5, #4]
  376. ffff05b8: ebffff98 bl 0xffff0420
  377. ffff05bc: e1a07000 mov r7, r0
  378. ffff05c0: e1a01007 mov r1, r7
  379. ffff05c4: e1a00006 mov r0, r6
  380. ffff05c8: ebffff78 bl 0xffff03b0
  381. ffff05cc: e3a00000 mov r0, #0
  382. ffff05d0: eaffffef b 0xffff0594
  383. ffff05d4: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  384. ffff05d8: e1a06000 mov r6, r0
  385. ffff05dc: e1a04001 mov r4, r1
  386. ffff05e0: e3a05000 mov r5, #0
  387. ffff05e4: e3a07000 mov r7, #0
  388. ffff05e8: e3540000 cmp r4, #0
  389. ffff05ec: 1a000001 bne 0xffff05f8
  390. ffff05f0: e3a00001 mov r0, #1
  391. ffff05f4: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  392. ffff05f8: e1a05004 mov r5, r4
  393. ffff05fc: e5950008 ldr r0, [r5, #8]
  394. ffff0600: e3500000 cmp r0, #0
  395. ffff0604: 1a000001 bne 0xffff0610
  396. ffff0608: e3a00001 mov r0, #1
  397. ffff060c: eafffff8 b 0xffff05f4
  398. ffff0610: e5951008 ldr r1, [r5, #8]
  399. ffff0614: e5950004 ldr r0, [r5, #4]
  400. ffff0618: ebffff80 bl 0xffff0420
  401. ffff061c: e1a07000 mov r7, r0
  402. ffff0620: e1a01007 mov r1, r7
  403. ffff0624: e1a00006 mov r0, r6
  404. ffff0628: ebffff60 bl 0xffff03b0
  405. ffff062c: e3a00000 mov r0, #0
  406. ffff0630: eaffffef b 0xffff05f4
  407. ffff0634: e1a03000 mov r3, r0
  408. ffff0638: e3a02000 mov r2, #0
  409. ffff063c: e3510000 cmp r1, #0
  410. ffff0640: 1a000001 bne 0xffff064c
  411. ffff0644: e3e00000 mvn r0, #0
  412. ffff0648: e12fff1e bx lr
  413. ffff064c: e1a02001 mov r2, r1
  414. ffff0650: e5920004 ldr r0, [r2, #4]
  415. ffff0654: eafffffb b 0xffff0648
  416. ;; Global Offset Table
  417. ffff0658: 53555741 .ascii "AWUS"
  418. ffff065c: 00007d04
  419. ffff0660: 53555741 .ascii "AWUS"
  420. ffff0664: 58454642 .ascii "BFEX"
  421. ffff0668: 00000000
  422. ffff066c: 00168100
  423. ffff0670: e92d41fc push {r2, r3, r4, r5, r6, r7, r8, lr}
  424. ffff0674: e1a06000 mov r6, r0
  425. ffff0678: e1a04001 mov r4, r1
  426. ffff067c: e1a05002 mov r5, r2
  427. ffff0680: e3a07000 mov r7, #0
  428. ffff0684: e3a02008 mov r2, #8
  429. ffff0688: e3a01000 mov r1, #0
  430. ffff068c: e1a0000d mov r0, sp
  431. ffff0690: eb000091 bl 0xffff08dc
  432. ffff0694: e30f0fff movw r0, #65535 ; 0xffff
  433. ffff0698: e1cd00b0 strh r0, [sp]
  434. ffff069c: e1cd40b2 strh r4, [sp, #2]
  435. ffff06a0: e5cd5004 strb r5, [sp, #4]
  436. ffff06a4: e3a01008 mov r1, #8
  437. ffff06a8: e1a0000d mov r0, sp
  438. ffff06ac: ebffff5b bl 0xffff0420
  439. ffff06b0: e1a07000 mov r7, r0
  440. ffff06b4: e1a01007 mov r1, r7
  441. ffff06b8: e1a00006 mov r0, r6
  442. ffff06bc: ebffff3b bl 0xffff03b0
  443. ffff06c0: e8bd81fc pop {r2, r3, r4, r5, r6, r7, r8, pc}
  444. ffff06c4: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  445. ffff06c8: e1a06000 mov r6, r0
  446. ffff06cc: e1a04001 mov r4, r1
  447. ffff06d0: e1a05002 mov r5, r2
  448. ffff06d4: e3a07000 mov r7, #0
  449. ffff06d8: e1a02005 mov r2, r5
  450. ffff06dc: e3a01000 mov r1, #0
  451. ffff06e0: e1a00004 mov r0, r4
  452. ffff06e4: eb00007c bl 0xffff08dc
  453. ffff06e8: e1a01005 mov r1, r5
  454. ffff06ec: e1a00004 mov r0, r4
  455. ffff06f0: ebffff4a bl 0xffff0420
  456. ffff06f4: e1a07000 mov r7, r0
  457. ffff06f8: e1a01007 mov r1, r7
  458. ffff06fc: e1a00006 mov r0, r6
  459. ffff0700: ebffff3f bl 0xffff0404
  460. ffff0704: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  461. ffff0708: e92d47ff push {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, lr}
  462. ffff070c: e1a06000 mov r6, r0
  463. ffff0710: e3a04000 mov r4, #0
  464. ffff0714: e3a07000 mov r7, #0
  465. ffff0718: e3a08000 mov r8, #0
  466. ffff071c: e3a0a001 mov sl, #1
  467. ffff0720: e3a02010 mov r2, #16
  468. ffff0724: e1a0100d mov r1, sp
  469. ffff0728: e1a00006 mov r0, r6
  470. ffff072c: ebffffe4 bl 0xffff06c4
  471. ffff0730: e1a0400d mov r4, sp
  472. ffff0734: e1d470b0 ldrh r7, [r4]
  473. ffff0738: e1d480b2 ldrh r8, [r4, #2]
  474. ffff073c: e3570010 cmp r7, #16
  475. ffff0740: 0a000022 beq 0xffff07d0
  476. ffff0744: ca000008 bgt 0xffff076c
  477. ffff0748: e3570001 cmp r7, #1
  478. ffff074c: 0a00000e beq 0xffff078c
  479. ffff0750: e3570002 cmp r7, #2
  480. ffff0754: 0a000011 beq 0xffff07a0
  481. ffff0758: e3570003 cmp r7, #3
  482. ffff075c: 0a000011 beq 0xffff07a8
  483. ffff0760: e3570004 cmp r7, #4
  484. ffff0764: 1a000037 bne 0xffff0848
  485. ffff0768: ea000013 b 0xffff07bc
  486. ffff076c: e3e00c01 mvn r0, #256 ; 0x100
  487. ffff0770: e0900007 adds r0, r0, r7
  488. ffff0774: 0a000017 beq 0xffff07d8
  489. ffff0778: e3500001 cmp r0, #1
  490. ffff077c: 0a000021 beq 0xffff0808
  491. ffff0780: e3500002 cmp r0, #2
  492. ffff0784: 1a00002f bne 0xffff0848
  493. ffff0788: ea000018 b 0xffff07f0
  494. ffff078c: e320f000 nop {0}
  495. ffff0790: e1a00006 mov r0, r6
  496. ffff0794: ebffff30 bl 0xffff045c
  497. ffff0798: e3a0a000 mov sl, #0
  498. ffff079c: ea00002c b 0xffff0854
  499. ffff07a0: e320f000 nop {0}
  500. ffff07a4: ea00002a b 0xffff0854
  501. ffff07a8: e320f000 nop {0}
  502. ffff07ac: e1a00006 mov r0, r6
  503. ffff07b0: ebffff5c bl 0xffff0528
  504. ffff07b4: e3a0a000 mov sl, #0
  505. ffff07b8: ea000025 b 0xffff0854
  506. ffff07bc: e320f000 nop {0}
  507. ffff07c0: e1a00006 mov r0, r6
  508. ffff07c4: ebffff44 bl 0xffff04dc
  509. ffff07c8: e3a0a000 mov sl, #0
  510. ffff07cc: ea000020 b 0xffff0854
  511. ffff07d0: e320f000 nop {0}
  512. ffff07d4: ea00001e b 0xffff0854
  513. ffff07d8: e320f000 nop {0}
  514. ffff07dc: e1a0100d mov r1, sp
  515. ffff07e0: e1a00006 mov r0, r6
  516. ffff07e4: ebffff62 bl 0xffff0574
  517. ffff07e8: e1a0a000 mov sl, r0
  518. ffff07ec: ea000018 b 0xffff0854
  519. ffff07f0: e320f000 nop {0}
  520. ffff07f4: e1a0100d mov r1, sp
  521. ffff07f8: e1a00006 mov r0, r6
  522. ffff07fc: ebffff74 bl 0xffff05d4
  523. ffff0800: e1a0a000 mov sl, r0
  524. ffff0804: ea000012 b 0xffff0854
  525. ffff0808: e320f000 nop {0}
  526. ffff080c: e3a05000 mov r5, #0
  527. ffff0810: e1a0100d mov r1, sp
  528. ffff0814: e1a00006 mov r0, r6
  529. ffff0818: ebffff85 bl 0xffff0634
  530. ffff081c: e1a05000 mov r5, r0
  531. ffff0820: e3a0a000 mov sl, #0
  532. ffff0824: e1a0200a mov r2, sl
  533. ffff0828: e1a01008 mov r1, r8
  534. ffff082c: e1a00006 mov r0, r6
  535. ffff0830: ebffff8e bl 0xffff0670
  536. ffff0834: e1a00006 mov r0, r6
  537. ffff0838: eb00073b bl 0xffff252c
  538. ffff083c: e1a09005 mov r9, r5
  539. ffff0840: e12fff39 blx r9
  540. ffff0844: e8bd87ff pop {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, pc}
  541. ffff0848: e320f000 nop {0}
  542. ffff084c: e3a0a001 mov sl, #1
  543. ffff0850: e320f000 nop {0}
  544. ffff0854: e320f000 nop {0}
  545. ffff0858: e1a0200a mov r2, sl
  546. ffff085c: e1a01008 mov r1, r8
  547. ffff0860: e1a00006 mov r0, r6
  548. ffff0864: ebffff81 bl 0xffff0670
  549. ffff0868: e320f000 nop {0}
  550. ffff086c: eafffff4 b 0xffff0844
  551. ffff0870: e1a05000 mov r5, r0
  552. ffff0874: e3a04000 mov r4, #0
  553. ffff0878: ea000003 b 0xffff088c
  554. ffff087c: ebfffe3d bl 0xffff0178
  555. ffff0880: e1a00005 mov r0, r5
  556. ffff0884: ebffff9f bl 0xffff0708
  557. ffff0888: e2844001 add r4, r4, #1
  558. ffff088c: eafffffa b 0xffff087c
  559. ffff0890: e3a01000 mov r1, #0
  560. ffff0894: e5c01018 strb r1, [r0, #24]
  561. ffff0898: e12fff1e bx lr
  562. ffff089c: e3a01000 mov r1, #0
  563. ffff08a0: e5c01018 strb r1, [r0, #24]
  564. ffff08a4: e12fff1e bx lr
  565. ffff08a8: e3a01000 mov r1, #0
  566. ffff08ac: e5c01018 strb r1, [r0, #24]
  567. ffff08b0: e12fff1e bx lr
  568. ffff08b4: e92d4030 push {r4, r5, lr}
  569. ffff08b8: e1a03000 mov r3, r0
  570. ffff08bc: e1a0c001 mov ip, r1
  571. ffff08c0: ea000001 b 0xffff08cc
  572. ffff08c4: e4dc4001 ldrb r4, [ip], #1
  573. ffff08c8: e4c34001 strb r4, [r3], #1
  574. ffff08cc: e1b04002 movs r4, r2
  575. ffff08d0: e2422001 sub r2, r2, #1
  576. ffff08d4: 1afffffa bne 0xffff08c4
  577. ffff08d8: e8bd8030 pop {r4, r5, pc}
  578. ffff08dc: e92d4030 push {r4, r5, lr}
  579. ffff08e0: e1a03000 mov r3, r0
  580. ffff08e4: ea000000 b 0xffff08ec
  581. ffff08e8: e4c31001 strb r1, [r3], #1
  582. ffff08ec: e1b04002 movs r4, r2
  583. ffff08f0: e2422001 sub r2, r2, #1
  584. ffff08f4: 1afffffb bne 0xffff08e8
  585. ffff08f8: e8bd8030 pop {r4, r5, pc}
  586. ffff08fc: e92d4070 push {r4, r5, r6, lr}
  587. ffff0900: e3a05001 mov r5, #1
  588. ffff0904: e1a05215 lsl r5, r5, r2
  589. ffff0908: e245c001 sub ip, r5, #1
  590. ffff090c: e5905000 ldr r5, [r0]
  591. ffff0910: e1c5411c bic r4, r5, ip, lsl r1
  592. ffff0914: e1844113 orr r4, r4, r3, lsl r1
  593. ffff0918: e5804000 str r4, [r0]
  594. ffff091c: e8bd8070 pop {r4, r5, r6, pc}
  595. ffff0920: e12fff1e bx lr
  596. ffff0924: e92d4070 push {r4, r5, r6, lr}
  597. ffff0928: e1a06000 mov r6, r0
  598. ffff092c: e1a04001 mov r4, r1
  599. ffff0930: e1a05002 mov r5, r2
  600. ffff0934: e6af0075 sxtb r0, r5
  601. ffff0938: e5c40018 strb r0, [r4, #24]
  602. ffff093c: e594100c ldr r1, [r4, #12]
  603. ffff0940: e1a00004 mov r0, r4
  604. ffff0944: e12fff31 blx r1
  605. ffff0948: e8bd8070 pop {r4, r5, r6, pc}
  606. ffff094c: e1a03000 mov r3, r0
  607. ffff0950: e5d30005 ldrb r0, [r3, #5]
  608. ffff0954: e200007f and r0, r0, #127 ; 0x7f
  609. ffff0958: e3500004 cmp r0, #4
  610. ffff095c: da000001 ble 0xffff0968
  611. ffff0960: e3e00000 mvn r0, #0
  612. ffff0964: e12fff1e bx lr
  613. ffff0968: e5d30005 ldrb r0, [r3, #5]
  614. ffff096c: e200007f and r0, r0, #127 ; 0x7f
  615. ffff0970: e3500005 cmp r0, #5
  616. ffff0974: 308ff100 addcc pc, pc, r0, lsl #2
  617. ffff0978: ea000004 b 0xffff0990
  618. ffff097c: ea000005 b 0xffff0998
  619. ffff0980: ea000009 b 0xffff09ac
  620. ffff0984: ea00000e b 0xffff09c4
  621. ffff0988: ea000013 b 0xffff09dc
  622. ffff098c: ea000018 b 0xffff09f4
  623. ffff0990: e320f000 nop {0}
  624. ffff0994: e320f000 nop {0}
  625. ffff0998: e3a00000 mov r0, #0
  626. ffff099c: e5810000 str r0, [r1]
  627. ffff09a0: e59f0f24 ldr r0, [pc, #3876] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  628. ffff09a4: e5820000 str r0, [r2]
  629. ffff09a8: ea000017 b 0xffff0a0c
  630. ffff09ac: e320f000 nop {0}
  631. ffff09b0: e3a00001 mov r0, #1
  632. ffff09b4: e5810000 str r0, [r1]
  633. ffff09b8: e59f0f10 ldr r0, [pc, #3856] ; 0xffff18d0 =01c19004 E_HCSPARAMS
  634. ffff09bc: e5820000 str r0, [r2]
  635. ffff09c0: ea000011 b 0xffff0a0c
  636. ffff09c4: e320f000 nop {0}
  637. ffff09c8: e3a00002 mov r0, #2
  638. ffff09cc: e5810000 str r0, [r1]
  639. ffff09d0: e59f0efc ldr r0, [pc, #3836] ; 0xffff18d4 =01c19008 E_HCCPARAMS
  640. ffff09d4: e5820000 str r0, [r2]
  641. ffff09d8: ea00000b b 0xffff0a0c
  642. ffff09dc: e320f000 nop {0}
  643. ffff09e0: e3a00003 mov r0, #3
  644. ffff09e4: e5810000 str r0, [r1]
  645. ffff09e8: e59f0ee8 ldr r0, [pc, #3816] ; 0xffff18d8 =01c1900c E_HCSPORTROUTE
  646. ffff09ec: e5820000 str r0, [r2]
  647. ffff09f0: ea000005 b 0xffff0a0c
  648. ffff09f4: e320f000 nop {0}
  649. ffff09f8: e3a00004 mov r0, #4
  650. ffff09fc: e5810000 str r0, [r1]
  651. ffff0a00: e59f0ed4 ldr r0, [pc, #3796] ; 0xffff18dc =01c19010 E_USBCMD
  652. ffff0a04: e5820000 str r0, [r2]
  653. ffff0a08: e320f000 nop {0}
  654. ffff0a0c: e320f000 nop {0}
  655. ffff0a10: e3a00000 mov r0, #0
  656. ffff0a14: eaffffd2 b 0xffff0964
  657. ffff0a18: e92d4ffe push {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, lr}
  658. ffff0a1c: e1a09000 mov r9, r0
  659. ffff0a20: e1a06001 mov r6, r1
  660. ffff0a24: e1a04002 mov r4, r2
  661. ffff0a28: e3a00001 mov r0, #1
  662. ffff0a2c: e58d0008 str r0, [sp, #8]
  663. ffff0a30: e3a08000 mov r8, #0
  664. ffff0a34: e1a0200d mov r2, sp
  665. ffff0a38: e28d1004 add r1, sp, #4
  666. ffff0a3c: e1a00006 mov r0, r6
  667. ffff0a40: ebffffc1 bl 0xffff094c
  668. ffff0a44: e3500000 cmp r0, #0
  669. ffff0a48: 0a000001 beq 0xffff0a54
  670. ffff0a4c: e3e00000 mvn r0, #0
  671. ffff0a50: e8bd8ffe pop {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, pc}
  672. ffff0a54: e5940000 ldr r0, [r4]
  673. ffff0a58: e5941010 ldr r1, [r4, #16]
  674. ffff0a5c: e080b001 add fp, r0, r1
  675. ffff0a60: e5940004 ldr r0, [r4, #4]
  676. ffff0a64: e5941010 ldr r1, [r4, #16]
  677. ffff0a68: e040a001 sub sl, r0, r1
  678. ffff0a6c: e35a0000 cmp sl, #0
  679. ffff0a70: 1a000001 bne 0xffff0a7c
  680. ffff0a74: e3e00000 mvn r0, #0
  681. ffff0a78: eafffff4 b 0xffff0a50
  682. ffff0a7c: e59d0004 ldr r0, [sp, #4]
  683. ffff0a80: e59f1e44 ldr r1, [pc, #3652] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  684. ffff0a84: e5c10042 strb r0, [r1, #66] ; 0x42
  685. ffff0a88: e1a00001 mov r0, r1
  686. ffff0a8c: e5908088 ldr r8, [r0, #136] ; 0x88
  687. ffff0a90: e5960008 ldr r0, [r6, #8]
  688. ffff0a94: e1500008 cmp r0, r8
  689. ffff0a98: 2a000001 bcs 0xffff0aa4
  690. ffff0a9c: e5967008 ldr r7, [r6, #8]
  691. ffff0aa0: ea000000 b 0xffff0aa8
  692. ffff0aa4: e1a07008 mov r7, r8
  693. ffff0aa8: e1a03007 mov r3, r7
  694. ffff0aac: e1a02004 mov r2, r4
  695. ffff0ab0: e1a0100b mov r1, fp
  696. ffff0ab4: e59d0000 ldr r0, [sp]
  697. ffff0ab8: eb0006b0 bl 0xffff2580
  698. ffff0abc: e1a08000 mov r8, r0
  699. ffff0ac0: e5960008 ldr r0, [r6, #8]
  700. ffff0ac4: e1500008 cmp r0, r8
  701. ffff0ac8: 9a000006 bls 0xffff0ae8
  702. ffff0acc: e3a00001 mov r0, #1
  703. ffff0ad0: e58d0008 str r0, [sp, #8]
  704. ffff0ad4: e1580007 cmp r8, r7
  705. ffff0ad8: 0a00000b beq 0xffff0b0c
  706. ffff0adc: e3a000ff mov r0, #255 ; 0xff
  707. ffff0ae0: e5c40018 strb r0, [r4, #24]
  708. ffff0ae4: ea000008 b 0xffff0b0c
  709. ffff0ae8: e5940004 ldr r0, [r4, #4]
  710. ffff0aec: e5941010 ldr r1, [r4, #16]
  711. ffff0af0: e1500001 cmp r0, r1
  712. ffff0af4: 1a000002 bne 0xffff0b04
  713. ffff0af8: e3a00001 mov r0, #1
  714. ffff0afc: e58d0008 str r0, [sp, #8]
  715. ffff0b00: ea000001 b 0xffff0b0c
  716. ffff0b04: e3a00000 mov r0, #0
  717. ffff0b08: e58d0008 str r0, [sp, #8]
  718. ffff0b0c: e59d0004 ldr r0, [sp, #4]
  719. ffff0b10: e59f1db4 ldr r1, [pc, #3508] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  720. ffff0b14: e5c10042 strb r0, [r1, #66] ; 0x42
  721. ffff0b18: e1a00001 mov r0, r1
  722. ffff0b1c: e5908088 ldr r8, [r0, #136] ; 0x88
  723. ffff0b20: e59d0008 ldr r0, [sp, #8]
  724. ffff0b24: e3500000 cmp r0, #0
  725. ffff0b28: 0a000018 beq 0xffff0b90
  726. ffff0b2c: e59d0004 ldr r0, [sp, #4]
  727. ffff0b30: e3500000 cmp r0, #0
  728. ffff0b34: 1a000007 bne 0xffff0b58
  729. ffff0b38: e59d0004 ldr r0, [sp, #4]
  730. ffff0b3c: e5c10042 strb r0, [r1, #66] ; 0x42
  731. ffff0b40: e3a00048 mov r0, #72 ; 0x48
  732. ffff0b44: e1c108b2 strh r0, [r1, #130] ; 0x82
  733. ffff0b48: e3a00000 mov r0, #0
  734. ffff0b4c: e5991024 ldr r1, [r9, #36] ; 0x24
  735. ffff0b50: e5810030 str r0, [r1, #48] ; 0x30
  736. ffff0b54: ea000006 b 0xffff0b74
  737. ffff0b58: e59d0004 ldr r0, [sp, #4]
  738. ffff0b5c: e59f1d68 ldr r1, [pc, #3432] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  739. ffff0b60: e5c10042 strb r0, [r1, #66] ; 0x42
  740. ffff0b64: e1a00001 mov r0, r1
  741. ffff0b68: e1d058b6 ldrh r5, [r0, #134] ; 0x86
  742. ffff0b6c: e3c55001 bic r5, r5, #1
  743. ffff0b70: e1c058b6 strh r5, [r0, #134] ; 0x86
  744. ffff0b74: e3a02000 mov r2, #0
  745. ffff0b78: e1a01004 mov r1, r4
  746. ffff0b7c: e1a00006 mov r0, r6
  747. ffff0b80: ebffff67 bl 0xffff0924
  748. ffff0b84: e3a00001 mov r0, #1
  749. ffff0b88: e58d0008 str r0, [sp, #8]
  750. ffff0b8c: ea00000f b 0xffff0bd0
  751. ffff0b90: e59d0004 ldr r0, [sp, #4]
  752. ffff0b94: e3500000 cmp r0, #0
  753. ffff0b98: 1a000005 bne 0xffff0bb4
  754. ffff0b9c: e59d0004 ldr r0, [sp, #4]
  755. ffff0ba0: e59f1d24 ldr r1, [pc, #3364] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  756. ffff0ba4: e5c10042 strb r0, [r1, #66] ; 0x42
  757. ffff0ba8: e3a00040 mov r0, #64 ; 0x40
  758. ffff0bac: e1c108b2 strh r0, [r1, #130] ; 0x82
  759. ffff0bb0: ea000006 b 0xffff0bd0
  760. ffff0bb4: e59d0004 ldr r0, [sp, #4]
  761. ffff0bb8: e59f1d0c ldr r1, [pc, #3340] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  762. ffff0bbc: e5c10042 strb r0, [r1, #66] ; 0x42
  763. ffff0bc0: e1a00001 mov r0, r1
  764. ffff0bc4: e1d058b6 ldrh r5, [r0, #134] ; 0x86
  765. ffff0bc8: e3c55001 bic r5, r5, #1
  766. ffff0bcc: e1c058b6 strh r5, [r0, #134] ; 0x86
  767. ffff0bd0: e59d0008 ldr r0, [sp, #8]
  768. ffff0bd4: eaffff9d b 0xffff0a50
  769. ffff0bd8: e92d47fc push {r2, r3, r4, r5, r6, r7, r8, r9, sl, lr}
  770. ffff0bdc: e1a07000 mov r7, r0
  771. ffff0be0: e1a06001 mov r6, r1
  772. ffff0be4: e1a05002 mov r5, r2
  773. ffff0be8: e3a09000 mov r9, #0
  774. ffff0bec: e1a0200d mov r2, sp
  775. ffff0bf0: e28d1004 add r1, sp, #4
  776. ffff0bf4: e1a00006 mov r0, r6
  777. ffff0bf8: ebffff53 bl 0xffff094c
  778. ffff0bfc: e3500000 cmp r0, #0
  779. ffff0c00: 0a000001 beq 0xffff0c0c
  780. ffff0c04: e3e00000 mvn r0, #0
  781. ffff0c08: e8bd87fc pop {r2, r3, r4, r5, r6, r7, r8, r9, sl, pc}
  782. ffff0c0c: e5968008 ldr r8, [r6, #8]
  783. ffff0c10: e1a02008 mov r2, r8
  784. ffff0c14: e1a01005 mov r1, r5
  785. ffff0c18: e59d0000 ldr r0, [sp]
  786. ffff0c1c: eb000694 bl 0xffff2674
  787. ffff0c20: e1a08000 mov r8, r0
  788. ffff0c24: e5960008 ldr r0, [r6, #8]
  789. ffff0c28: e1500008 cmp r0, r8
  790. ffff0c2c: 0a000001 beq 0xffff0c38
  791. ffff0c30: e3a04001 mov r4, #1
  792. ffff0c34: ea000009 b 0xffff0c60
  793. ffff0c38: e5950004 ldr r0, [r5, #4]
  794. ffff0c3c: e5951010 ldr r1, [r5, #16]
  795. ffff0c40: e1500001 cmp r0, r1
  796. ffff0c44: 1a000004 bne 0xffff0c5c
  797. ffff0c48: e5d50008 ldrb r0, [r5, #8]
  798. ffff0c4c: e3500000 cmp r0, #0
  799. ffff0c50: 1a000001 bne 0xffff0c5c
  800. ffff0c54: e3a04002 mov r4, #2
  801. ffff0c58: ea000000 b 0xffff0c60
  802. ffff0c5c: e3a04000 mov r4, #0
  803. ffff0c60: e3540000 cmp r4, #0
  804. ffff0c64: 0a000027 beq 0xffff0d08
  805. ffff0c68: e59d0004 ldr r0, [sp, #4]
  806. ffff0c6c: e3500000 cmp r0, #0
  807. ffff0c70: 1a000017 bne 0xffff0cd4
  808. ffff0c74: e1a00007 mov r0, r7
  809. ffff0c78: eb000674 bl 0xffff2650
  810. ffff0c7c: e3100004 tst r0, #4
  811. ffff0c80: 1a000019 bne 0xffff0cec
  812. ffff0c84: e3540001 cmp r4, #1
  813. ffff0c88: 1a000009 bne 0xffff0cb4
  814. ffff0c8c: e59d0004 ldr r0, [sp, #4]
  815. ffff0c90: e59f1c34 ldr r1, [pc, #3124] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  816. ffff0c94: e5c10042 strb r0, [r1, #66] ; 0x42
  817. ffff0c98: e3a0000a mov r0, #10
  818. ffff0c9c: e1c108b2 strh r0, [r1, #130] ; 0x82
  819. ffff0ca0: e3a00000 mov r0, #0
  820. ffff0ca4: e5971024 ldr r1, [r7, #36] ; 0x24
  821. ffff0ca8: e5810030 str r0, [r1, #48] ; 0x30
  822. ffff0cac: e3a09001 mov r9, #1
  823. ffff0cb0: ea00000d b 0xffff0cec
  824. ffff0cb4: e3540002 cmp r4, #2
  825. ffff0cb8: 1a00000b bne 0xffff0cec
  826. ffff0cbc: e59d0004 ldr r0, [sp, #4]
  827. ffff0cc0: e59f1c04 ldr r1, [pc, #3076] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  828. ffff0cc4: e5c10042 strb r0, [r1, #66] ; 0x42
  829. ffff0cc8: e3a00002 mov r0, #2
  830. ffff0ccc: e1c108b2 strh r0, [r1, #130] ; 0x82
  831. ffff0cd0: ea000005 b 0xffff0cec
  832. ffff0cd4: e59d0004 ldr r0, [sp, #4]
  833. ffff0cd8: e59f1bec ldr r1, [pc, #3052] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  834. ffff0cdc: e5c10042 strb r0, [r1, #66] ; 0x42
  835. ffff0ce0: e3020001 movw r0, #8193 ; 0x2001
  836. ffff0ce4: e1c108b2 strh r0, [r1, #130] ; 0x82
  837. ffff0ce8: e3a09001 mov r9, #1
  838. ffff0cec: e3590001 cmp r9, #1
  839. ffff0cf0: 1a000016 bne 0xffff0d50
  840. ffff0cf4: e3a02000 mov r2, #0
  841. ffff0cf8: e1a01005 mov r1, r5
  842. ffff0cfc: e1a00006 mov r0, r6
  843. ffff0d00: ebffff07 bl 0xffff0924
  844. ffff0d04: ea000011 b 0xffff0d50
  845. ffff0d08: e59d0004 ldr r0, [sp, #4]
  846. ffff0d0c: e3500000 cmp r0, #0
  847. ffff0d10: 1a000009 bne 0xffff0d3c
  848. ffff0d14: e1a00007 mov r0, r7
  849. ffff0d18: eb00064c bl 0xffff2650
  850. ffff0d1c: e3100004 tst r0, #4
  851. ffff0d20: 1a00000a bne 0xffff0d50
  852. ffff0d24: e59d0004 ldr r0, [sp, #4]
  853. ffff0d28: e59f1b9c ldr r1, [pc, #2972] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  854. ffff0d2c: e5c10042 strb r0, [r1, #66] ; 0x42
  855. ffff0d30: e3a00002 mov r0, #2
  856. ffff0d34: e1c108b2 strh r0, [r1, #130] ; 0x82
  857. ffff0d38: ea000004 b 0xffff0d50
  858. ffff0d3c: e59d0004 ldr r0, [sp, #4]
  859. ffff0d40: e59f1b84 ldr r1, [pc, #2948] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  860. ffff0d44: e5c10042 strb r0, [r1, #66] ; 0x42
  861. ffff0d48: e3020001 movw r0, #8193 ; 0x2001
  862. ffff0d4c: e1c108b2 strh r0, [r1, #130] ; 0x82
  863. ffff0d50: e1a00009 mov r0, r9
  864. ffff0d54: eaffffab b 0xffff0c08
  865. ffff0d58: e59f1b6c ldr r1, [pc, #2924] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  866. ffff0d5c: e5c10042 strb r0, [r1, #66] ; 0x42
  867. ffff0d60: e12fff1e bx lr
  868. ffff0d64: e92d47f0 push {r4, r5, r6, r7, r8, r9, sl, lr}
  869. ffff0d68: e1a09000 mov r9, r0
  870. ffff0d6c: e1a08001 mov r8, r1
  871. ffff0d70: e3a05000 mov r5, #0
  872. ffff0d74: e3a06000 mov r6, #0
  873. ffff0d78: e3a0a000 mov sl, #0
  874. ffff0d7c: e3580000 cmp r8, #0
  875. ffff0d80: 1a000000 bne 0xffff0d88
  876. ffff0d84: e8bd87f0 pop {r4, r5, r6, r7, r8, r9, sl, pc}
  877. ffff0d88: e5990024 ldr r0, [r9, #36] ; 0x24
  878. ffff0d8c: e0806208 add r6, r0, r8, lsl #4
  879. ffff0d90: e596500c ldr r5, [r6, #12]
  880. ffff0d94: e5d60005 ldrb r0, [r6, #5]
  881. ffff0d98: e200a080 and sl, r0, #128 ; 0x80
  882. ffff0d9c: e5d60005 ldrb r0, [r6, #5]
  883. ffff0da0: e200707f and r7, r0, #127 ; 0x7f
  884. ffff0da4: e5d50018 ldrb r0, [r5, #24]
  885. ffff0da8: e3500001 cmp r0, #1
  886. ffff0dac: 0a000000 beq 0xffff0db4
  887. ffff0db0: eafffff3 b 0xffff0d84
  888. ffff0db4: e35a0000 cmp sl, #0
  889. ffff0db8: 0a000013 beq 0xffff0e0c
  890. ffff0dbc: e5d60004 ldrb r0, [r6, #4]
  891. ffff0dc0: ebffffe4 bl 0xffff0d58
  892. ffff0dc4: e59f0b00 ldr r0, [pc, #2816] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  893. ffff0dc8: e1d048b2 ldrh r4, [r0, #130] ; 0x82
  894. ffff0dcc: e3140020 tst r4, #32
  895. ffff0dd0: 0a000004 beq 0xffff0de8
  896. ffff0dd4: e59f1af0 ldr r1, [pc, #2800] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  897. ffff0dd8: e1c174b2 strh r7, [r1, #66] ; 0x42
  898. ffff0ddc: e3a00000 mov r0, #0
  899. ffff0de0: e1c108b2 strh r0, [r1, #130] ; 0x82
  900. ffff0de4: eaffffe6 b 0xffff0d84
  901. ffff0de8: e3140001 tst r4, #1
  902. ffff0dec: 1a000025 bne 0xffff0e88
  903. ffff0df0: e3550000 cmp r5, #0
  904. ffff0df4: 0a000023 beq 0xffff0e88
  905. ffff0df8: e1a02005 mov r2, r5
  906. ffff0dfc: e1a01006 mov r1, r6
  907. ffff0e00: e1a00009 mov r0, r9
  908. ffff0e04: ebffff73 bl 0xffff0bd8
  909. ffff0e08: ea00001e b 0xffff0e88
  910. ffff0e0c: e59f1ab8 ldr r1, [pc, #2744] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  911. ffff0e10: e5c17042 strb r7, [r1, #66] ; 0x42
  912. ffff0e14: e1a00001 mov r0, r1
  913. ffff0e18: e1d048b6 ldrh r4, [r0, #134] ; 0x86
  914. ffff0e1c: e3140040 tst r4, #64 ; 0x40
  915. ffff0e20: 0a000003 beq 0xffff0e34
  916. ffff0e24: e1c174b2 strh r7, [r1, #66] ; 0x42
  917. ffff0e28: e3a00000 mov r0, #0
  918. ffff0e2c: e1c108b6 strh r0, [r1, #134] ; 0x86
  919. ffff0e30: eaffffd3 b 0xffff0d84
  920. ffff0e34: e320f000 nop {0}
  921. ffff0e38: e3140001 tst r4, #1
  922. ffff0e3c: 0a000011 beq 0xffff0e88
  923. ffff0e40: e3550000 cmp r5, #0
  924. ffff0e44: 0a00000f beq 0xffff0e88
  925. ffff0e48: e1a02005 mov r2, r5
  926. ffff0e4c: e1a01006 mov r1, r6
  927. ffff0e50: e1a00009 mov r0, r9
  928. ffff0e54: ebfffeef bl 0xffff0a18
  929. ffff0e58: e5d50018 ldrb r0, [r5, #24]
  930. ffff0e5c: e3500000 cmp r0, #0
  931. ffff0e60: 0a000008 beq 0xffff0e88
  932. ffff0e64: e59f1a60 ldr r1, [pc, #2656] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  933. ffff0e68: e5c17042 strb r7, [r1, #66] ; 0x42
  934. ffff0e6c: e1a00001 mov r0, r1
  935. ffff0e70: e1d048b6 ldrh r4, [r0, #134] ; 0x86
  936. ffff0e74: e3140001 tst r4, #1
  937. ffff0e78: 0a000002 beq 0xffff0e88
  938. ffff0e7c: e3550000 cmp r5, #0
  939. ffff0e80: 0a000000 beq 0xffff0e88
  940. ffff0e84: eaffffeb b 0xffff0e38
  941. ffff0e88: e320f000 nop {0}
  942. ffff0e8c: eaffffbc b 0xffff0d84
  943. ffff0e90: e59f0a34 ldr r0, [pc, #2612] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  944. ffff0e94: e5d00042 ldrb r0, [r0, #66] ; 0x42
  945. ffff0e98: e12fff1e bx lr
  946. ffff0e9c: e1a02000 mov r2, r0
  947. ffff0ea0: e10f1000 mrs r1, CPSR
  948. ffff0ea4: e3c11080 bic r1, r1, #128 ; 0x80
  949. ffff0ea8: e121f001 msr CPSR_c, r1
  950. ffff0eac: e12fff1e bx lr
  951. ffff0eb0: e1a02000 mov r2, r0
  952. ffff0eb4: e10f1000 mrs r1, CPSR
  953. ffff0eb8: e3811080 orr r1, r1, #128 ; 0x80
  954. ffff0ebc: e121f001 msr CPSR_c, r1
  955. ffff0ec0: e12fff1e bx lr
  956. ffff0ec4: e92d47f0 push {r4, r5, r6, r7, r8, r9, sl, lr}
  957. ffff0ec8: e1a06000 mov r6, r0
  958. ffff0ecc: e1a05001 mov r5, r1
  959. ffff0ed0: e1a07002 mov r7, r2
  960. ffff0ed4: e3a04000 mov r4, #0
  961. ffff0ed8: e3a08000 mov r8, #0
  962. ffff0edc: e3a09000 mov r9, #0
  963. ffff0ee0: e5950014 ldr r0, [r5, #20]
  964. ffff0ee4: e3d00003 bics r0, r0, #3
  965. ffff0ee8: 0a000001 beq 0xffff0ef4
  966. ffff0eec: e3e00000 mvn r0, #0
  967. ffff0ef0: e8bd87f0 pop {r4, r5, r6, r7, r8, r9, sl, pc}
  968. ffff0ef4: e3570000 cmp r7, #0
  969. ffff0ef8: 1a000001 bne 0xffff0f04
  970. ffff0efc: e1a00006 mov r0, r6
  971. ffff0f00: ebffffea bl 0xffff0eb0
  972. ffff0f04: e5960024 ldr r0, [r6, #36] ; 0x24
  973. ffff0f08: e5951014 ldr r1, [r5, #20]
  974. ffff0f0c: e0804201 add r4, r0, r1, lsl #4
  975. ffff0f10: e3a00000 mov r0, #0
  976. ffff0f14: e5850010 str r0, [r5, #16]
  977. ffff0f18: e5d40005 ldrb r0, [r4, #5]
  978. ffff0f1c: e3500000 cmp r0, #0
  979. ffff0f20: 0a00000c beq 0xffff0f58
  980. ffff0f24: e5d40005 ldrb r0, [r4, #5]
  981. ffff0f28: e200007f and r0, r0, #127 ; 0x7f
  982. ffff0f2c: e59f1998 ldr r1, [pc, #2456] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  983. ffff0f30: e5c10042 strb r0, [r1, #66] ; 0x42
  984. ffff0f34: e5d40005 ldrb r0, [r4, #5]
  985. ffff0f38: e3100080 tst r0, #128 ; 0x80
  986. ffff0f3c: 0a000001 beq 0xffff0f48
  987. ffff0f40: e2810082 add r0, r1, #130 ; 0x82
  988. ffff0f44: ea000000 b 0xffff0f4c
  989. ffff0f48: e59f0990 ldr r0, [pc, #2448] ; 0xffff18e0
  990. ffff0f4c: e1d080b0 ldrh r8, [r0]
  991. ffff0f50: e59f0974 ldr r0, [pc, #2420] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  992. ffff0f54: e1d098b8 ldrh r9, [r0, #136] ; 0x88
  993. ffff0f58: e5d40005 ldrb r0, [r4, #5]
  994. ffff0f5c: e3500000 cmp r0, #0
  995. ffff0f60: 1a00001c bne 0xffff0fd8
  996. ffff0f64: e5960024 ldr r0, [r6, #36] ; 0x24
  997. ffff0f68: e5900030 ldr r0, [r0, #48] ; 0x30
  998. ffff0f6c: e3500001 cmp r0, #1
  999. ffff0f70: 0a000002 beq 0xffff0f80
  1000. ffff0f74: e3500002 cmp r0, #2
  1001. ffff0f78: 1a00000e bne 0xffff0fb8
  1002. ffff0f7c: ea000008 b 0xffff0fa4
  1003. ffff0f80: e320f000 nop {0}
  1004. ffff0f84: e1a02005 mov r2, r5
  1005. ffff0f88: e1a01004 mov r1, r4
  1006. ffff0f8c: e1a00006 mov r0, r6
  1007. ffff0f90: ebffff10 bl 0xffff0bd8
  1008. ffff0f94: e3500000 cmp r0, #0
  1009. ffff0f98: 0a000000 beq 0xffff0fa0
  1010. ffff0f9c: e3a05000 mov r5, #0
  1011. ffff0fa0: ea00000b b 0xffff0fd4
  1012. ffff0fa4: e320f000 nop {0}
  1013. ffff0fa8: e3a00000 mov r0, #0
  1014. ffff0fac: e5961024 ldr r1, [r6, #36] ; 0x24
  1015. ffff0fb0: e5810030 str r0, [r1, #48] ; 0x30
  1016. ffff0fb4: ea000006 b 0xffff0fd4
  1017. ffff0fb8: e320f000 nop {0}
  1018. ffff0fbc: e3570000 cmp r7, #0
  1019. ffff0fc0: 1a000001 bne 0xffff0fcc
  1020. ffff0fc4: e1a00006 mov r0, r6
  1021. ffff0fc8: ebffffb3 bl 0xffff0e9c
  1022. ffff0fcc: e3e00000 mvn r0, #0
  1023. ffff0fd0: eaffffc6 b 0xffff0ef0
  1024. ffff0fd4: ea000031 b 0xffff10a0
  1025. ffff0fd8: e5d40005 ldrb r0, [r4, #5]
  1026. ffff0fdc: e3100080 tst r0, #128 ; 0x80
  1027. ffff0fe0: 0a000009 beq 0xffff100c
  1028. ffff0fe4: e3180001 tst r8, #1
  1029. ffff0fe8: 1a000007 bne 0xffff100c
  1030. ffff0fec: e1a02005 mov r2, r5
  1031. ffff0ff0: e1a01004 mov r1, r4
  1032. ffff0ff4: e1a00006 mov r0, r6
  1033. ffff0ff8: ebfffef6 bl 0xffff0bd8
  1034. ffff0ffc: e3500000 cmp r0, #0
  1035. ffff1000: 0a000001 beq 0xffff100c
  1036. ffff1004: e3a05000 mov r5, #0
  1037. ffff1008: ea000024 b 0xffff10a0
  1038. ffff100c: e5d40005 ldrb r0, [r4, #5]
  1039. ffff1010: e3100080 tst r0, #128 ; 0x80
  1040. ffff1014: 1a000021 bne 0xffff10a0
  1041. ffff1018: e3180001 tst r8, #1
  1042. ffff101c: 0a00001f beq 0xffff10a0
  1043. ffff1020: e59f08a4 ldr r0, [pc, #2212] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1044. ffff1024: e1d008b8 ldrh r0, [r0, #136] ; 0x88
  1045. ffff1028: e1b09000 movs r9, r0
  1046. ffff102c: 0a00001b beq 0xffff10a0
  1047. ffff1030: e320f000 nop {0}
  1048. ffff1034: e1a02005 mov r2, r5
  1049. ffff1038: e1a01004 mov r1, r4
  1050. ffff103c: e1a00006 mov r0, r6
  1051. ffff1040: ebfffe74 bl 0xffff0a18
  1052. ffff1044: e5d40005 ldrb r0, [r4, #5]
  1053. ffff1048: e200007f and r0, r0, #127 ; 0x7f
  1054. ffff104c: e59f1878 ldr r1, [pc, #2168] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1055. ffff1050: e5c10042 strb r0, [r1, #66] ; 0x42
  1056. ffff1054: e5d40005 ldrb r0, [r4, #5]
  1057. ffff1058: e3100080 tst r0, #128 ; 0x80
  1058. ffff105c: 0a000001 beq 0xffff1068
  1059. ffff1060: e2810082 add r0, r1, #130 ; 0x82
  1060. ffff1064: ea000000 b 0xffff106c
  1061. ffff1068: e59f0870 ldr r0, [pc, #2160] ; 0xffff18e0
  1062. ffff106c: e1d080b0 ldrh r8, [r0]
  1063. ffff1070: e59f0854 ldr r0, [pc, #2132] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1064. ffff1074: e1d098b8 ldrh r9, [r0, #136] ; 0x88
  1065. ffff1078: e5d50018 ldrb r0, [r5, #24]
  1066. ffff107c: e3500000 cmp r0, #0
  1067. ffff1080: 1a000000 bne 0xffff1088
  1068. ffff1084: ea000003 b 0xffff1098
  1069. ffff1088: e3180001 tst r8, #1
  1070. ffff108c: 0a000001 beq 0xffff1098
  1071. ffff1090: e3590000 cmp r9, #0
  1072. ffff1094: 1affffe6 bne 0xffff1034
  1073. ffff1098: e320f000 nop {0}
  1074. ffff109c: e3a05000 mov r5, #0
  1075. ffff10a0: e3570000 cmp r7, #0
  1076. ffff10a4: 1a000001 bne 0xffff10b0
  1077. ffff10a8: e1a00006 mov r0, r6
  1078. ffff10ac: ebffff7a bl 0xffff0e9c
  1079. ffff10b0: e3a00000 mov r0, #0
  1080. ffff10b4: eaffff8d b 0xffff0ef0
  1081. ffff10b8: e92d4070 push {r4, r5, r6, lr}
  1082. ffff10bc: e1a04000 mov r4, r0
  1083. ffff10c0: e1a05001 mov r5, r1
  1084. ffff10c4: e1a06002 mov r6, r2
  1085. ffff10c8: e1a02006 mov r2, r6
  1086. ffff10cc: e1a01005 mov r1, r5
  1087. ffff10d0: e1a00004 mov r0, r4
  1088. ffff10d4: ebffff7a bl 0xffff0ec4
  1089. ffff10d8: e8bd8070 pop {r4, r5, r6, pc}
  1090. ffff10dc: e92d47f0 push {r4, r5, r6, r7, r8, r9, sl, lr}
  1091. ffff10e0: e1a06000 mov r6, r0
  1092. ffff10e4: e1a04001 mov r4, r1
  1093. ffff10e8: e1a0a002 mov sl, r2
  1094. ffff10ec: e1a09003 mov r9, r3
  1095. ffff10f0: e1a05004 mov r5, r4
  1096. ffff10f4: e3590000 cmp r9, #0
  1097. ffff10f8: 0a000001 beq 0xffff1104
  1098. ffff10fc: e3e00000 mvn r0, #0
  1099. ffff1100: e8bd87f0 pop {r4, r5, r6, r7, r8, r9, sl, pc}
  1100. ffff1104: e5968014 ldr r8, [r6, #20]
  1101. ffff1108: e3a07000 mov r7, #0
  1102. ffff110c: e3a02009 mov r2, #9
  1103. ffff1110: e1a00004 mov r0, r4
  1104. ffff1114: e5961004 ldr r1, [r6, #4]
  1105. ffff1118: ebfffde5 bl 0xffff08b4
  1106. ffff111c: e2844009 add r4, r4, #9
  1107. ffff1120: e3a02009 mov r2, #9
  1108. ffff1124: e1a00004 mov r0, r4
  1109. ffff1128: e5961008 ldr r1, [r6, #8]
  1110. ffff112c: ebfffde0 bl 0xffff08b4
  1111. ffff1130: e2844009 add r4, r4, #9
  1112. ffff1134: e3a02007 mov r2, #7
  1113. ffff1138: e1a00004 mov r0, r4
  1114. ffff113c: e5981000 ldr r1, [r8]
  1115. ffff1140: ebfffddb bl 0xffff08b4
  1116. ffff1144: e2844007 add r4, r4, #7
  1117. ffff1148: e3a02007 mov r2, #7
  1118. ffff114c: e1a00004 mov r0, r4
  1119. ffff1150: e5981004 ldr r1, [r8, #4]
  1120. ffff1154: ebfffdd6 bl 0xffff08b4
  1121. ffff1158: e2844007 add r4, r4, #7
  1122. ffff115c: e3a07020 mov r7, #32
  1123. ffff1160: e3a00009 mov r0, #9
  1124. ffff1164: e5c50000 strb r0, [r5]
  1125. ffff1168: e3a00002 mov r0, #2
  1126. ffff116c: e5c50001 strb r0, [r5, #1]
  1127. ffff1170: e1c570b2 strh r7, [r5, #2]
  1128. ffff1174: e5d50007 ldrb r0, [r5, #7]
  1129. ffff1178: e3800080 orr r0, r0, #128 ; 0x80
  1130. ffff117c: e5c50007 strb r0, [r5, #7]
  1131. ffff1180: e1a00007 mov r0, r7
  1132. ffff1184: eaffffdd b 0xffff1100
  1133. ffff1188: e92d47f0 push {r4, r5, r6, r7, r8, r9, sl, lr}
  1134. ffff118c: e1a08000 mov r8, r0
  1135. ffff1190: e1a05001 mov r5, r1
  1136. ffff1194: e3a04000 mov r4, #0
  1137. ffff1198: e3a09000 mov r9, #0
  1138. ffff119c: e1d560b2 ldrh r6, [r5, #2]
  1139. ffff11a0: e3a07000 mov r7, #0
  1140. ffff11a4: e5989024 ldr r9, [r8, #36] ; 0x24
  1141. ffff11a8: e599400c ldr r4, [r9, #12]
  1142. ffff11ac: e5d50001 ldrb r0, [r5, #1]
  1143. ffff11b0: e3500006 cmp r0, #6
  1144. ffff11b4: 0a000002 beq 0xffff11c4
  1145. ffff11b8: e35000fe cmp r0, #254 ; 0xfe
  1146. ffff11bc: 1a000046 bne 0xffff12dc
  1147. ffff11c0: ea00003e b 0xffff12c0
  1148. ffff11c4: e320f000 nop {0}
  1149. ffff11c8: e5d50000 ldrb r0, [r5]
  1150. ffff11cc: e3500080 cmp r0, #128 ; 0x80
  1151. ffff11d0: 0a000000 beq 0xffff11d8
  1152. ffff11d4: ea000042 b 0xffff12e4
  1153. ffff11d8: e1a00446 asr r0, r6, #8
  1154. ffff11dc: e3500001 cmp r0, #1
  1155. ffff11e0: 0a000004 beq 0xffff11f8
  1156. ffff11e4: e3500002 cmp r0, #2
  1157. ffff11e8: 0a000011 beq 0xffff1234
  1158. ffff11ec: e3500003 cmp r0, #3
  1159. ffff11f0: 1a000030 bne 0xffff12b8
  1160. ffff11f4: ea00001f b 0xffff1278
  1161. ffff11f8: e320f000 nop {0}
  1162. ffff11fc: e1d500b6 ldrh r0, [r5, #6]
  1163. ffff1200: e3500012 cmp r0, #18
  1164. ffff1204: 9a000001 bls 0xffff1210
  1165. ffff1208: e3a07012 mov r7, #18
  1166. ffff120c: ea000000 b 0xffff1214
  1167. ffff1210: e1d570b6 ldrh r7, [r5, #6]
  1168. ffff1214: e5981000 ldr r1, [r8]
  1169. ffff1218: e1a02007 mov r2, r7
  1170. ffff121c: e5940000 ldr r0, [r4]
  1171. ffff1220: ebfffda3 bl 0xffff08b4
  1172. ffff1224: e5847004 str r7, [r4, #4]
  1173. ffff1228: e3a00000 mov r0, #0
  1174. ffff122c: e5c40008 strb r0, [r4, #8]
  1175. ffff1230: ea000020 b 0xffff12b8
  1176. ffff1234: e320f000 nop {0}
  1177. ffff1238: e20630ff and r3, r6, #255 ; 0xff
  1178. ffff123c: e1a02446 asr r2, r6, #8
  1179. ffff1240: e1a00008 mov r0, r8
  1180. ffff1244: e5941000 ldr r1, [r4]
  1181. ffff1248: ebffffa3 bl 0xffff10dc
  1182. ffff124c: e1a07000 mov r7, r0
  1183. ffff1250: e1d500b6 ldrh r0, [r5, #6]
  1184. ffff1254: e1500007 cmp r0, r7
  1185. ffff1258: ba000001 blt 0xffff1264
  1186. ffff125c: e5847004 str r7, [r4, #4]
  1187. ffff1260: ea000001 b 0xffff126c
  1188. ffff1264: e1d500b6 ldrh r0, [r5, #6]
  1189. ffff1268: e5840004 str r0, [r4, #4]
  1190. ffff126c: e3a00000 mov r0, #0
  1191. ffff1270: e5c40008 strb r0, [r4, #8]
  1192. ffff1274: ea00000f b 0xffff12b8
  1193. ffff1278: e320f000 nop {0}
  1194. ffff127c: e20610ff and r1, r6, #255 ; 0xff
  1195. ffff1280: e3510000 cmp r1, #0
  1196. ffff1284: 1a000009 bne 0xffff12b0
  1197. ffff1288: e5940000 ldr r0, [r4]
  1198. ffff128c: e3a02004 mov r2, #4
  1199. ffff1290: e5c02000 strb r2, [r0]
  1200. ffff1294: e3a02003 mov r2, #3
  1201. ffff1298: e5c02001 strb r2, [r0, #1]
  1202. ffff129c: e3a02009 mov r2, #9
  1203. ffff12a0: e5c02002 strb r2, [r0, #2]
  1204. ffff12a4: e3a02004 mov r2, #4
  1205. ffff12a8: e5c02003 strb r2, [r0, #3]
  1206. ffff12ac: ea000001 b 0xffff12b8
  1207. ffff12b0: e320f000 nop {0}
  1208. ffff12b4: e320f000 nop {0}
  1209. ffff12b8: e320f000 nop {0}
  1210. ffff12bc: ea000008 b 0xffff12e4
  1211. ffff12c0: e320f000 nop {0}
  1212. ffff12c4: e5940000 ldr r0, [r4]
  1213. ffff12c8: e3a01001 mov r1, #1
  1214. ffff12cc: e5841004 str r1, [r4, #4]
  1215. ffff12d0: e3a01000 mov r1, #0
  1216. ffff12d4: e5c01000 strb r1, [r0]
  1217. ffff12d8: ea000001 b 0xffff12e4
  1218. ffff12dc: e320f000 nop {0}
  1219. ffff12e0: e320f000 nop {0}
  1220. ffff12e4: e320f000 nop {0}
  1221. ffff12e8: e3a02001 mov r2, #1
  1222. ffff12ec: e1a01004 mov r1, r4
  1223. ffff12f0: e1a00008 mov r0, r8
  1224. ffff12f4: ebffff6f bl 0xffff10b8
  1225. ffff12f8: e3a00000 mov r0, #0
  1226. ffff12fc: e8bd87f0 pop {r4, r5, r6, r7, r8, r9, sl, pc}
  1227. ffff1300: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  1228. ffff1304: e1a06000 mov r6, r0
  1229. ffff1308: e3a08000 mov r8, #0
  1230. ffff130c: e3a04000 mov r4, #0
  1231. ffff1310: e1a07006 mov r7, r6
  1232. ffff1314: e3a00000 mov r0, #0
  1233. ffff1318: ebfffe8e bl 0xffff0d58
  1234. ffff131c: e59f05a8 ldr r0, [pc, #1448] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1235. ffff1320: e1d048b8 ldrh r4, [r0, #136] ; 0x88
  1236. ffff1324: e3540008 cmp r4, #8
  1237. ffff1328: 0a000008 beq 0xffff1350
  1238. ffff132c: e3a05000 mov r5, #0
  1239. ffff1330: ea000002 b 0xffff1340
  1240. ffff1334: e59f0590 ldr r0, [pc, #1424] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1241. ffff1338: e1d048b8 ldrh r4, [r0, #136] ; 0x88
  1242. ffff133c: e2855001 add r5, r5, #1
  1243. ffff1340: e3550010 cmp r5, #16
  1244. ffff1344: aa000001 bge 0xffff1350
  1245. ffff1348: e3540008 cmp r4, #8
  1246. ffff134c: 1afffff8 bne 0xffff1334
  1247. ffff1350: ea000004 b 0xffff1368
  1248. ffff1354: e59f0570 ldr r0, [pc, #1392] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1249. ffff1358: e5d00000 ldrb r0, [r0]
  1250. ffff135c: e5c70000 strb r0, [r7]
  1251. ffff1360: e2877001 add r7, r7, #1
  1252. ffff1364: e2888001 add r8, r8, #1
  1253. ffff1368: e1b00004 movs r0, r4
  1254. ffff136c: e2444001 sub r4, r4, #1
  1255. ffff1370: 1afffff7 bne 0xffff1354
  1256. ffff1374: e1a00008 mov r0, r8
  1257. ffff1378: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  1258. ffff137c: e92d47fc push {r2, r3, r4, r5, r6, r7, r8, r9, sl, lr}
  1259. ffff1380: e1a04000 mov r4, r0
  1260. ffff1384: e3a06000 mov r6, #0
  1261. ffff1388: e3a09000 mov r9, #0
  1262. ffff138c: e5946024 ldr r6, [r4, #36] ; 0x24
  1263. ffff1390: e596900c ldr r9, [r6, #12]
  1264. ffff1394: e5d60004 ldrb r0, [r6, #4]
  1265. ffff1398: ebfffe6e bl 0xffff0d58
  1266. ffff139c: e59f0528 ldr r0, [pc, #1320] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1267. ffff13a0: e1d058b2 ldrh r5, [r0, #130] ; 0x82
  1268. ffff13a4: e3150004 tst r5, #4
  1269. ffff13a8: 0a000005 beq 0xffff13c4
  1270. ffff13ac: e3a00000 mov r0, #0
  1271. ffff13b0: e59f1514 ldr r1, [pc, #1300] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1272. ffff13b4: e1c108b2 strh r0, [r1, #130] ; 0x82
  1273. ffff13b8: e5941024 ldr r1, [r4, #36] ; 0x24
  1274. ffff13bc: e5810030 str r0, [r1, #48] ; 0x30
  1275. ffff13c0: e8bd87fc pop {r2, r3, r4, r5, r6, r7, r8, r9, sl, pc}
  1276. ffff13c4: e3150010 tst r5, #16
  1277. ffff13c8: 0a000007 beq 0xffff13ec
  1278. ffff13cc: e59f04f8 ldr r0, [pc, #1272] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1279. ffff13d0: e1d008b2 ldrh r0, [r0, #130] ; 0x82
  1280. ffff13d4: e3c00010 bic r0, r0, #16
  1281. ffff13d8: e59f14ec ldr r1, [pc, #1260] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1282. ffff13dc: e1c108b2 strh r0, [r1, #130] ; 0x82
  1283. ffff13e0: e3a00000 mov r0, #0
  1284. ffff13e4: e5941024 ldr r1, [r4, #36] ; 0x24
  1285. ffff13e8: e5810030 str r0, [r1, #48] ; 0x30
  1286. ffff13ec: e5940024 ldr r0, [r4, #36] ; 0x24
  1287. ffff13f0: e5900030 ldr r0, [r0, #48] ; 0x30
  1288. ffff13f4: e3500005 cmp r0, #5
  1289. ffff13f8: 308ff100 addcc pc, pc, r0, lsl #2
  1290. ffff13fc: ea00009c b 0xffff1674
  1291. ffff1400: ea000003 b 0xffff1414
  1292. ffff1404: ea000066 b 0xffff15a4
  1293. ffff1408: ea00006f b 0xffff15cc
  1294. ffff140c: ea000078 b 0xffff15f4
  1295. ffff1410: ea000092 b 0xffff1660
  1296. ffff1414: e320f000 nop {0}
  1297. ffff1418: e3150001 tst r5, #1
  1298. ffff141c: 0a00005f beq 0xffff15a0
  1299. ffff1420: e1a0000d mov r0, sp
  1300. ffff1424: ebffffb5 bl 0xffff1300
  1301. ffff1428: e1a0a000 mov sl, r0
  1302. ffff142c: e35a0008 cmp sl, #8
  1303. ffff1430: 0a000003 beq 0xffff1444
  1304. ffff1434: e3a00060 mov r0, #96 ; 0x60
  1305. ffff1438: e59f148c ldr r1, [pc, #1164] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1306. ffff143c: e1c108b2 strh r0, [r1, #130] ; 0x82
  1307. ffff1440: eaffffde b 0xffff13c0
  1308. ffff1444: e5941024 ldr r1, [r4, #36] ; 0x24
  1309. ffff1448: e281003e add r0, r1, #62 ; 0x3e
  1310. ffff144c: e3a02008 mov r2, #8
  1311. ffff1450: e1a0100d mov r1, sp
  1312. ffff1454: ebfffd16 bl 0xffff08b4
  1313. ffff1458: e3a00001 mov r0, #1
  1314. ffff145c: e5941024 ldr r1, [r4, #36] ; 0x24
  1315. ffff1460: e5c1003d strb r0, [r1, #61] ; 0x3d
  1316. ffff1464: e5dd0001 ldrb r0, [sp, #1]
  1317. ffff1468: e3500005 cmp r0, #5
  1318. ffff146c: 0a000014 beq 0xffff14c4
  1319. ffff1470: e3500009 cmp r0, #9
  1320. ffff1474: 0a000002 beq 0xffff1484
  1321. ffff1478: e350000b cmp r0, #11
  1322. ffff147c: 1a000020 bne 0xffff1504
  1323. ffff1480: ea000009 b 0xffff14ac
  1324. ffff1484: e320f000 nop {0}
  1325. ffff1488: e5dd0000 ldrb r0, [sp]
  1326. ffff148c: e3500000 cmp r0, #0
  1327. ffff1490: 1a000004 bne 0xffff14a8
  1328. ffff1494: e320f000 nop {0}
  1329. ffff1498: e3a00048 mov r0, #72 ; 0x48
  1330. ffff149c: e59f1428 ldr r1, [pc, #1064] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1331. ffff14a0: e1c108b2 strh r0, [r1, #130] ; 0x82
  1332. ffff14a4: eaffffc5 b 0xffff13c0
  1333. ffff14a8: ea00001a b 0xffff1518
  1334. ffff14ac: e320f000 nop {0}
  1335. ffff14b0: e5dd0000 ldrb r0, [sp]
  1336. ffff14b4: e3500001 cmp r0, #1
  1337. ffff14b8: 1a000000 bne 0xffff14c0
  1338. ffff14bc: eafffff5 b 0xffff1498
  1339. ffff14c0: ea000014 b 0xffff1518
  1340. ffff14c4: e320f000 nop {0}
  1341. ffff14c8: e5dd0000 ldrb r0, [sp]
  1342. ffff14cc: e3500000 cmp r0, #0
  1343. ffff14d0: 1a00000a bne 0xffff1500
  1344. ffff14d4: e1dd00b2 ldrh r0, [sp, #2]
  1345. ffff14d8: e200707f and r7, r0, #127 ; 0x7f
  1346. ffff14dc: e5940024 ldr r0, [r4, #36] ; 0x24
  1347. ffff14e0: e5c0703c strb r7, [r0, #60] ; 0x3c
  1348. ffff14e4: e3a0004a mov r0, #74 ; 0x4a
  1349. ffff14e8: e59f13dc ldr r1, [pc, #988] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1350. ffff14ec: e1c108b2 strh r0, [r1, #130] ; 0x82
  1351. ffff14f0: e3a00003 mov r0, #3
  1352. ffff14f4: e5941024 ldr r1, [r4, #36] ; 0x24
  1353. ffff14f8: e5810030 str r0, [r1, #48] ; 0x30
  1354. ffff14fc: eaffffaf b 0xffff13c0
  1355. ffff1500: ea000004 b 0xffff1518
  1356. ffff1504: e320f000 nop {0}
  1357. ffff1508: e3a00040 mov r0, #64 ; 0x40
  1358. ffff150c: e59f13b8 ldr r1, [pc, #952] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1359. ffff1510: e1c108b2 strh r0, [r1, #130] ; 0x82
  1360. ffff1514: e320f000 nop {0}
  1361. ffff1518: e320f000 nop {0}
  1362. ffff151c: e5dd0000 ldrb r0, [sp]
  1363. ffff1520: e3100080 tst r0, #128 ; 0x80
  1364. ffff1524: 0a000003 beq 0xffff1538
  1365. ffff1528: e3a00001 mov r0, #1
  1366. ffff152c: e5941024 ldr r1, [r4, #36] ; 0x24
  1367. ffff1530: e5810030 str r0, [r1, #48] ; 0x30
  1368. ffff1534: ea000002 b 0xffff1544
  1369. ffff1538: e3a00002 mov r0, #2
  1370. ffff153c: e5941024 ldr r1, [r4, #36] ; 0x24
  1371. ffff1540: e5810030 str r0, [r1, #48] ; 0x30
  1372. ffff1544: e1a0100d mov r1, sp
  1373. ffff1548: e1a00004 mov r0, r4
  1374. ffff154c: ebffff0d bl 0xffff1188
  1375. ffff1550: e1a08000 mov r8, r0
  1376. ffff1554: e3580000 cmp r8, #0
  1377. ffff1558: aa000008 bge 0xffff1580
  1378. ffff155c: e3a00060 mov r0, #96 ; 0x60
  1379. ffff1560: e59f1364 ldr r1, [pc, #868] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1380. ffff1564: e1c108b2 strh r0, [r1, #130] ; 0x82
  1381. ffff1568: e3a00048 mov r0, #72 ; 0x48
  1382. ffff156c: e1c108b2 strh r0, [r1, #130] ; 0x82
  1383. ffff1570: e3a00000 mov r0, #0
  1384. ffff1574: e5941024 ldr r1, [r4, #36] ; 0x24
  1385. ffff1578: e5810030 str r0, [r1, #48] ; 0x30
  1386. ffff157c: ea000006 b 0xffff159c
  1387. ffff1580: e5940024 ldr r0, [r4, #36] ; 0x24
  1388. ffff1584: e5d0003d ldrb r0, [r0, #61] ; 0x3d
  1389. ffff1588: e3500000 cmp r0, #0
  1390. ffff158c: 0a000002 beq 0xffff159c
  1391. ffff1590: e3a00000 mov r0, #0
  1392. ffff1594: e5941024 ldr r1, [r4, #36] ; 0x24
  1393. ffff1598: e5c1003d strb r0, [r1, #61] ; 0x3d
  1394. ffff159c: e320f000 nop {0}
  1395. ffff15a0: ea000035 b 0xffff167c
  1396. ffff15a4: e320f000 nop {0}
  1397. ffff15a8: e3150002 tst r5, #2
  1398. ffff15ac: 1a000005 bne 0xffff15c8
  1399. ffff15b0: e3590000 cmp r9, #0
  1400. ffff15b4: 0a000003 beq 0xffff15c8
  1401. ffff15b8: e1a02009 mov r2, r9
  1402. ffff15bc: e1a01006 mov r1, r6
  1403. ffff15c0: e1a00004 mov r0, r4
  1404. ffff15c4: ebfffd83 bl 0xffff0bd8
  1405. ffff15c8: ea00002b b 0xffff167c
  1406. ffff15cc: e320f000 nop {0}
  1407. ffff15d0: e3150001 tst r5, #1
  1408. ffff15d4: 0a000005 beq 0xffff15f0
  1409. ffff15d8: e3590000 cmp r9, #0
  1410. ffff15dc: 0a000003 beq 0xffff15f0
  1411. ffff15e0: e1a02009 mov r2, r9
  1412. ffff15e4: e1a01006 mov r1, r6
  1413. ffff15e8: e1a00004 mov r0, r4
  1414. ffff15ec: ebfffd09 bl 0xffff0a18
  1415. ffff15f0: ea000021 b 0xffff167c
  1416. ffff15f4: e320f000 nop {0}
  1417. ffff15f8: e5940024 ldr r0, [r4, #36] ; 0x24
  1418. ffff15fc: e5d0003f ldrb r0, [r0, #63] ; 0x3f
  1419. ffff1600: e3500005 cmp r0, #5
  1420. ffff1604: 1a00000e bne 0xffff1644
  1421. ffff1608: e3a000c0 mov r0, #192 ; 0xc0
  1422. ffff160c: e59f12b8 ldr r1, [pc, #696] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1423. ffff1610: e1c108b2 strh r0, [r1, #130] ; 0x82
  1424. ffff1614: e3a07000 mov r7, #0
  1425. ffff1618: ebfffe1c bl 0xffff0e90
  1426. ffff161c: e1a07000 mov r7, r0
  1427. ffff1620: e3a00000 mov r0, #0
  1428. ffff1624: ebfffdcb bl 0xffff0d58
  1429. ffff1628: e5940024 ldr r0, [r4, #36] ; 0x24
  1430. ffff162c: e5d0003c ldrb r0, [r0, #60] ; 0x3c
  1431. ffff1630: e59f1294 ldr r1, [pc, #660] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1432. ffff1634: e5c10098 strb r0, [r1, #152] ; 0x98
  1433. ffff1638: e1a00007 mov r0, r7
  1434. ffff163c: ebfffdc5 bl 0xffff0d58
  1435. ffff1640: ea000001 b 0xffff164c
  1436. ffff1644: e320f000 nop {0}
  1437. ffff1648: e320f000 nop {0}
  1438. ffff164c: e320f000 nop {0}
  1439. ffff1650: e3a00000 mov r0, #0
  1440. ffff1654: e5941024 ldr r1, [r4, #36] ; 0x24
  1441. ffff1658: e5810030 str r0, [r1, #48] ; 0x30
  1442. ffff165c: ea000006 b 0xffff167c
  1443. ffff1660: e320f000 nop {0}
  1444. ffff1664: e3a00000 mov r0, #0
  1445. ffff1668: e5941024 ldr r1, [r4, #36] ; 0x24
  1446. ffff166c: e5810030 str r0, [r1, #48] ; 0x30
  1447. ffff1670: ea000001 b 0xffff167c
  1448. ffff1674: e320f000 nop {0}
  1449. ffff1678: e320f000 nop {0}
  1450. ffff167c: e320f000 nop {0}
  1451. ffff1680: e320f000 nop {0}
  1452. ffff1684: eaffff4d b 0xffff13c0
  1453. ffff1688: e92d4070 push {r4, r5, r6, lr}
  1454. ffff168c: e1a04000 mov r4, r0
  1455. ffff1690: e3a05000 mov r5, #0
  1456. ffff1694: e5d40004 ldrb r0, [r4, #4]
  1457. ffff1698: ebfffdae bl 0xffff0d58
  1458. ffff169c: e5d40005 ldrb r0, [r4, #5]
  1459. ffff16a0: e3100080 tst r0, #128 ; 0x80
  1460. ffff16a4: 0a00000d beq 0xffff16e0
  1461. ffff16a8: e3a00048 mov r0, #72 ; 0x48
  1462. ffff16ac: e59f1218 ldr r1, [pc, #536] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1463. ffff16b0: e1c108b2 strh r0, [r1, #130] ; 0x82
  1464. ffff16b4: e5940008 ldr r0, [r4, #8]
  1465. ffff16b8: e7df059f bfc r0, #11, #21
  1466. ffff16bc: e5810080 str r0, [r1, #128] ; 0x80
  1467. ffff16c0: e1a00001 mov r0, r1
  1468. ffff16c4: e5d05048 ldrb r5, [r0, #72] ; 0x48
  1469. ffff16c8: e5d40004 ldrb r0, [r4, #4]
  1470. ffff16cc: e3a01001 mov r1, #1
  1471. ffff16d0: e1850011 orr r0, r5, r1, lsl r0
  1472. ffff16d4: e59f11f0 ldr r1, [pc, #496] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1473. ffff16d8: e5c10048 strb r0, [r1, #72] ; 0x48
  1474. ffff16dc: ea00000c b 0xffff1714
  1475. ffff16e0: e3a00090 mov r0, #144 ; 0x90
  1476. ffff16e4: e59f11e0 ldr r1, [pc, #480] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1477. ffff16e8: e1c108b6 strh r0, [r1, #134] ; 0x86
  1478. ffff16ec: e5940008 ldr r0, [r4, #8]
  1479. ffff16f0: e7df059f bfc r0, #11, #21
  1480. ffff16f4: e1c108b4 strh r0, [r1, #132] ; 0x84
  1481. ffff16f8: e1a00001 mov r0, r1
  1482. ffff16fc: e5d0504a ldrb r5, [r0, #74] ; 0x4a
  1483. ffff1700: e5d40004 ldrb r0, [r4, #4]
  1484. ffff1704: e3a01001 mov r1, #1
  1485. ffff1708: e1850011 orr r0, r5, r1, lsl r0
  1486. ffff170c: e59f11b8 ldr r1, [pc, #440] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1487. ffff1710: e5c1004a strb r0, [r1, #74] ; 0x4a
  1488. ffff1714: e8bd8070 pop {r4, r5, r6, pc}
  1489. ffff1718: e92d4010 push {r4, lr}
  1490. ffff171c: e1a04000 mov r4, r0
  1491. ffff1720: e5941024 ldr r1, [r4, #36] ; 0x24
  1492. ffff1724: e2810020 add r0, r1, #32
  1493. ffff1728: ebffffd6 bl 0xffff1688
  1494. ffff172c: e5941024 ldr r1, [r4, #36] ; 0x24
  1495. ffff1730: e2810010 add r0, r1, #16
  1496. ffff1734: ebffffd3 bl 0xffff1688
  1497. ffff1738: e8bd8010 pop {r4, pc}
  1498. ffff173c: e92d47f0 push {r4, r5, r6, r7, r8, r9, sl, lr}
  1499. ffff1740: e3a08000 mov r8, #0
  1500. ffff1744: e3a04000 mov r4, #0
  1501. ffff1748: e3a06000 mov r6, #0
  1502. ffff174c: e3a09000 mov r9, #0
  1503. ffff1750: e3a0a000 mov sl, #0
  1504. ffff1754: ebfffdcd bl 0xffff0e90
  1505. ffff1758: e1a08000 mov r8, r0
  1506. ffff175c: e59f0180 ldr r0, [pc, #384] ; 0xffff18e4 =0x00007d00
  1507. ffff1760: e5900000 ldr r0, [r0]
  1508. ffff1764: eb0003b9 bl 0xffff2650
  1509. ffff1768: e1a06000 mov r6, r0
  1510. ffff176c: e59f1170 ldr r1, [pc, #368] ; 0xffff18e4 =0x00007d00
  1511. ffff1770: e5910000 ldr r0, [r1]
  1512. ffff1774: e5901038 ldr r1, [r0, #56] ; 0x38
  1513. ffff1778: e3510000 cmp r1, #0
  1514. ffff177c: 1a000002 bne 0xffff178c
  1515. ffff1780: e59f1144 ldr r1, [pc, #324] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1516. ffff1784: e5d11044 ldrb r1, [r1, #68] ; 0x44
  1517. ffff1788: e5801038 str r1, [r0, #56] ; 0x38
  1518. ffff178c: e320f000 nop {0}
  1519. ffff1790: e5901038 ldr r1, [r0, #56] ; 0x38
  1520. ffff1794: e1a09001 mov r9, r1
  1521. ffff1798: e59f1144 ldr r1, [pc, #324] ; 0xffff18e4 =0x00007d00
  1522. ffff179c: e5910000 ldr r0, [r1]
  1523. ffff17a0: e590103c ldr r1, [r0, #60] ; 0x3c
  1524. ffff17a4: e3510000 cmp r1, #0
  1525. ffff17a8: 1a000002 bne 0xffff17b8
  1526. ffff17ac: e59f1118 ldr r1, [pc, #280] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1527. ffff17b0: e5d11046 ldrb r1, [r1, #70] ; 0x46
  1528. ffff17b4: e580103c str r1, [r0, #60] ; 0x3c
  1529. ffff17b8: e320f000 nop {0}
  1530. ffff17bc: e590103c ldr r1, [r0, #60] ; 0x3c
  1531. ffff17c0: e1a0a001 mov sl, r1
  1532. ffff17c4: e3160004 tst r6, #4
  1533. ffff17c8: 0a000023 beq 0xffff185c
  1534. ffff17cc: e3a00002 mov r0, #2
  1535. ffff17d0: e59f110c ldr r1, [pc, #268] ; 0xffff18e4 =0x00007d00
  1536. ffff17d4: e5911000 ldr r1, [r1]
  1537. ffff17d8: e5911024 ldr r1, [r1, #36] ; 0x24
  1538. ffff17dc: e5c10034 strb r0, [r1, #52] ; 0x34
  1539. ffff17e0: e3a00000 mov r0, #0
  1540. ffff17e4: e59f10f8 ldr r1, [pc, #248] ; 0xffff18e4 =0x00007d00
  1541. ffff17e8: e5911000 ldr r1, [r1]
  1542. ffff17ec: e5911024 ldr r1, [r1, #36] ; 0x24
  1543. ffff17f0: e5810030 str r0, [r1, #48] ; 0x30
  1544. ffff17f4: e3a01004 mov r1, #4
  1545. ffff17f8: e59f00e4 ldr r0, [pc, #228] ; 0xffff18e4 =0x00007d00
  1546. ffff17fc: e5900000 ldr r0, [r0]
  1547. ffff1800: eb0003bf bl 0xffff2704
  1548. ffff1804: e59f10c0 ldr r1, [pc, #192] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1549. ffff1808: e5c18042 strb r8, [r1, #66] ; 0x42
  1550. ffff180c: ebfffc43 bl 0xffff0920
  1551. ffff1810: e59f00b4 ldr r0, [pc, #180] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1552. ffff1814: e5d00048 ldrb r0, [r0, #72] ; 0x48
  1553. ffff1818: e3800001 orr r0, r0, #1
  1554. ffff181c: e59f10a8 ldr r1, [pc, #168] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1555. ffff1820: e5c10048 strb r0, [r1, #72] ; 0x48
  1556. ffff1824: e59f00b8 ldr r0, [pc, #184] ; 0xffff18e4 =0x00007d00
  1557. ffff1828: e5900000 ldr r0, [r0]
  1558. ffff182c: ebffffb9 bl 0xffff1718
  1559. ffff1830: e3a05000 mov r5, #0
  1560. ffff1834: ebfffd95 bl 0xffff0e90
  1561. ffff1838: e1a05000 mov r5, r0
  1562. ffff183c: e3a00000 mov r0, #0
  1563. ffff1840: ebfffd44 bl 0xffff0d58
  1564. ffff1844: e3a00000 mov r0, #0
  1565. ffff1848: e59f107c ldr r1, [pc, #124] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1566. ffff184c: e5c10098 strb r0, [r1, #152] ; 0x98
  1567. ffff1850: e1a00005 mov r0, r5
  1568. ffff1854: ebfffd3f bl 0xffff0d58
  1569. ffff1858: e8bd87f0 pop {r4, r5, r6, r7, r8, r9, sl, pc}
  1570. ffff185c: e3160002 tst r6, #2
  1571. ffff1860: 0a000003 beq 0xffff1874
  1572. ffff1864: e3a01002 mov r1, #2
  1573. ffff1868: e59f0074 ldr r0, [pc, #116] ; 0xffff18e4 =0x00007d00
  1574. ffff186c: e5900000 ldr r0, [r0]
  1575. ffff1870: eb0003a3 bl 0xffff2704
  1576. ffff1874: e3160001 tst r6, #1
  1577. ffff1878: 0a000008 beq 0xffff18a0
  1578. ffff187c: e3a01001 mov r1, #1
  1579. ffff1880: e59f005c ldr r0, [pc, #92] ; 0xffff18e4 =0x00007d00
  1580. ffff1884: e5900000 ldr r0, [r0]
  1581. ffff1888: eb00039d bl 0xffff2704
  1582. ffff188c: e3a00000 mov r0, #0
  1583. ffff1890: e59f104c ldr r1, [pc, #76] ; 0xffff18e4 =0x00007d00
  1584. ffff1894: e5911000 ldr r1, [r1]
  1585. ffff1898: e5911024 ldr r1, [r1, #36] ; 0x24
  1586. ffff189c: e5810030 str r0, [r1, #48] ; 0x30
  1587. ffff18a0: e3190001 tst r9, #1
  1588. ffff18a4: 0a000006 beq 0xffff18c4
  1589. ffff18a8: e3a01001 mov r1, #1
  1590. ffff18ac: e59f0030 ldr r0, [pc, #48] ; 0xffff18e4 =0x00007d00
  1591. ffff18b0: e5900000 ldr r0, [r0]
  1592. ffff18b4: eb00038a bl 0xffff26e4
  1593. ffff18b8: e59f0024 ldr r0, [pc, #36] ; 0xffff18e4 =0x00007d00
  1594. ffff18bc: e5900000 ldr r0, [r0]
  1595. ffff18c0: ebfffead bl 0xffff137c
  1596. ffff18c4: e3a04001 mov r4, #1
  1597. ffff18c8: ea000022 b 0xffff1958
  1598. ;; Global Offset Table
  1599. ffff18cc: 01c19000 ; USB_OTG_BASE
  1600. ffff18d0: 01c19004 ; E_HCSPARAMS
  1601. ffff18d4: 01c19008 ; E_HCCPARAMS
  1602. ffff18d8: 01c1900c ; E_HCSPORTROUTE
  1603. ffff18dc: 01c19010 ; E_USBCMD
  1604. ffff18e0: 01c19086
  1605. ffff18e4: 00007d00
  1606. ffff18e8: e3a00001 mov r0, #1
  1607. ffff18ec: e1a07410 lsl r7, r0, r4
  1608. ffff18f0: e1190007 tst r9, r7
  1609. ffff18f4: 0a000016 beq 0xffff1954
  1610. ffff18f8: e3a05000 mov r5, #0
  1611. ffff18fc: e20710ff and r1, r7, #255 ; 0xff
  1612. ffff1900: e51f0024 ldr r0, [pc, #-36] ; 0xffff18e4 =0x00007d00
  1613. ffff1904: e5900000 ldr r0, [r0]
  1614. ffff1908: eb000375 bl 0xffff26e4
  1615. ffff190c: e3a05001 mov r5, #1
  1616. ffff1910: ea00000c b 0xffff1948
  1617. ffff1914: e51f0038 ldr r0, [pc, #-56] ; 0xffff18e4 =0x00007d00
  1618. ffff1918: e5900000 ldr r0, [r0]
  1619. ffff191c: e5900024 ldr r0, [r0, #36] ; 0x24
  1620. ffff1920: e0800205 add r0, r0, r5, lsl #4
  1621. ffff1924: e5d00005 ldrb r0, [r0, #5]
  1622. ffff1928: e2000080 and r0, r0, #128 ; 0x80
  1623. ffff192c: e3500080 cmp r0, #128 ; 0x80
  1624. ffff1930: 1a000003 bne 0xffff1944
  1625. ffff1934: e1a01005 mov r1, r5
  1626. ffff1938: e51f005c ldr r0, [pc, #-92] ; 0xffff18e4 =0x00007d00
  1627. ffff193c: e5900000 ldr r0, [r0]
  1628. ffff1940: ebfffd07 bl 0xffff0d64
  1629. ffff1944: e2855001 add r5, r5, #1
  1630. ffff1948: e3550003 cmp r5, #3
  1631. ffff194c: bafffff0 blt 0xffff1914
  1632. ffff1950: e320f000 nop {0}
  1633. ffff1954: e2844001 add r4, r4, #1
  1634. ffff1958: e3540005 cmp r4, #5
  1635. ffff195c: daffffe1 ble 0xffff18e8
  1636. ffff1960: e3a04001 mov r4, #1
  1637. ffff1964: ea000020 b 0xffff19ec
  1638. ffff1968: e3a00001 mov r0, #1
  1639. ffff196c: e1a07410 lsl r7, r0, r4
  1640. ffff1970: e11a0007 tst sl, r7
  1641. ffff1974: 0a00001b beq 0xffff19e8
  1642. ffff1978: e3a00000 mov r0, #0
  1643. ffff197c: e1a05000 mov r5, r0
  1644. ffff1980: e51f20a4 ldr r2, [pc, #-164] ; 0xffff18e4 =0x00007d00
  1645. ffff1984: e20710ff and r1, r7, #255 ; 0xff
  1646. ffff1988: e5920000 ldr r0, [r2]
  1647. ffff198c: e590203c ldr r2, [r0, #60] ; 0x3c
  1648. ffff1990: e1c22001 bic r2, r2, r1
  1649. ffff1994: e580203c str r2, [r0, #60] ; 0x3c
  1650. ffff1998: e51f20d4 ldr r2, [pc, #-212] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1651. ffff199c: e5c21046 strb r1, [r2, #70] ; 0x46
  1652. ffff19a0: e320f000 nop {0}
  1653. ffff19a4: e3a05001 mov r5, #1
  1654. ffff19a8: ea00000b b 0xffff19dc
  1655. ffff19ac: e51f00d0 ldr r0, [pc, #-208] ; 0xffff18e4 =0x00007d00
  1656. ffff19b0: e5900000 ldr r0, [r0]
  1657. ffff19b4: e5900024 ldr r0, [r0, #36] ; 0x24
  1658. ffff19b8: e0800205 add r0, r0, r5, lsl #4
  1659. ffff19bc: e5d00005 ldrb r0, [r0, #5]
  1660. ffff19c0: e3100080 tst r0, #128 ; 0x80
  1661. ffff19c4: 1a000003 bne 0xffff19d8
  1662. ffff19c8: e1a01005 mov r1, r5
  1663. ffff19cc: e51f00f0 ldr r0, [pc, #-240] ; 0xffff18e4 =0x00007d00
  1664. ffff19d0: e5900000 ldr r0, [r0]
  1665. ffff19d4: ebfffce2 bl 0xffff0d64
  1666. ffff19d8: e2855001 add r5, r5, #1
  1667. ffff19dc: e3550003 cmp r5, #3
  1668. ffff19e0: bafffff1 blt 0xffff19ac
  1669. ffff19e4: e320f000 nop {0}
  1670. ffff19e8: e2844001 add r4, r4, #1
  1671. ffff19ec: e3540005 cmp r4, #5
  1672. ffff19f0: daffffdc ble 0xffff1968
  1673. ffff19f4: ebfffbc9 bl 0xffff0920
  1674. ffff19f8: e51f1134 ldr r1, [pc, #-308] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  1675. ffff19fc: e5c18042 strb r8, [r1, #66] ; 0x42
  1676. ffff1a00: e51f1124 ldr r1, [pc, #-292] ; 0xffff18e4 =0x00007d00
  1677. ffff1a04: e5910000 ldr r0, [r1]
  1678. ffff1a08: e3a01000 mov r1, #0
  1679. ffff1a0c: e5801040 str r1, [r0, #64] ; 0x40
  1680. ffff1a10: e5801038 str r1, [r0, #56] ; 0x38
  1681. ffff1a14: e580103c str r1, [r0, #60] ; 0x3c
  1682. ffff1a18: e320f000 nop {0}
  1683. ffff1a1c: e320f000 nop {0}
  1684. ffff1a20: eaffff8c b 0xffff1858
  1685. ffff1a24: e92d4010 push {r4, lr}
  1686. ffff1a28: e1a04000 mov r4, r0
  1687. ffff1a2c: ebffff42 bl 0xffff173c
  1688. ffff1a30: e8bd8010 pop {r4, pc}
  1689. ffff1a34: e92d4010 push {r4, lr}
  1690. ffff1a38: e1a022a0 lsr r2, r0, #5
  1691. ffff1a3c: e1a04102 lsl r4, r2, #2
  1692. ffff1a40: e2841772 add r1, r4, #29884416 ; 0x1c80000 GIC_DIST
  1693. ffff1a44: e2811d4a add r1, r1, #4736 ; 0x1280
  1694. ffff1a48: e200301f and r3, r0, #31
  1695. ffff1a4c: e3a04001 mov r4, #1
  1696. ffff1a50: e1a04314 lsl r4, r4, r3
  1697. ffff1a54: e5814000 str r4, [r1]
  1698. ffff1a58: e8bd8010 pop {r4, pc}
  1699. ffff1a5c: e92d4070 push {r4, r5, r6, lr}
  1700. ffff1a60: e59f2cbc ldr r2, [pc, #3260] ; 0xffff2724 =0x01010101
  1701. ffff1a64: e3a03000 mov r3, #0
  1702. ffff1a68: e59f4cb8 ldr r4, [pc, #3256] ; 0xffff2728 =01c81000 GIC_DIST
  1703. ffff1a6c: e5843000 str r3, [r4]
  1704. ffff1a70: e1c431c2 bic r3, r4, r2, asr #3
  1705. ffff1a74: e5933004 ldr r3, [r3, #4]
  1706. ffff1a78: e203301f and r3, r3, #31
  1707. ffff1a7c: e2833001 add r3, r3, #1
  1708. ffff1a80: e1a01283 lsl r1, r3, #5
  1709. ffff1a84: e3510fff cmp r1, #1020 ; 0x3fc
  1710. ffff1a88: 9a000001 bls 0xffff1a94
  1711. ffff1a8c: e30013fc movw r1, #1020 ; 0x3fc
  1712. ffff1a90: ea000002 b 0xffff1aa0
  1713. ffff1a94: e351008c cmp r1, #140 ; 0x8c
  1714. ffff1a98: 2a000000 bcs 0xffff1aa0
  1715. ffff1a9c: e8bd8070 pop {r4, r5, r6, pc}
  1716. ffff1aa0: e3a00020 mov r0, #32
  1717. ffff1aa4: ea000006 b 0xffff1ac4
  1718. ffff1aa8: e3a03000 mov r3, #0
  1719. ffff1aac: e1a04220 lsr r4, r0, #4
  1720. ffff1ab0: e1a04104 lsl r4, r4, #2
  1721. ffff1ab4: e2844772 add r4, r4, #29884416 ; 0x1c80000 GIC_DIST
  1722. ffff1ab8: e2844b07 add r4, r4, #7168 ; 0x1c00
  1723. ffff1abc: e5843000 str r3, [r4]
  1724. ffff1ac0: e2800010 add r0, r0, #16
  1725. ffff1ac4: e350008c cmp r0, #140 ; 0x8c
  1726. ffff1ac8: 3afffff6 bcc 0xffff1aa8
  1727. ffff1acc: e3a00020 mov r0, #32
  1728. ffff1ad0: ea000007 b 0xffff1af4
  1729. ffff1ad4: e59f3c50 ldr r3, [pc, #3152] ; 0xffff272c =0xa0a0a0a0
  1730. 0ffff1ad8: e2404020 sub r4, r0, #32
  1731. ffff1adc: e1a04124 lsr r4, r4, #2
  1732. ffff1ae0: e59f5c48 ldr r5, [pc, #3144] ; 0xffff2730 =0x01c81420
  1733. ffff1ae4: e3a06004 mov r6, #4
  1734. ffff1ae8: e0245496 mla r4, r6, r4, r5
  1735. ffff1aec: e5843000 str r3, [r4]
  1736. ffff1af0: e2800004 add r0, r0, #4
  1737. ffff1af4: e350008c cmp r0, #140 ; 0x8c
  1738. ffff1af8: 3afffff5 bcc 0xffff1ad4
  1739. ffff1afc: e3a00020 mov r0, #32
  1740. ffff1b00: ea000006 b 0xffff1b20
  1741. ffff1b04: e2403020 sub r3, r0, #32
  1742. ffff1b08: e1a03123 lsr r3, r3, #2
  1743. ffff1b0c: e59f4c20 ldr r4, [pc, #3104] ; 0xffff2734 =0x01c81820
  1744. ffff1b10: e3a05004 mov r5, #4
  1745. ffff1b14: e0234395 mla r3, r5, r3, r4
  1746. ffff1b18: e5832000 str r2, [r3]
  1747. ffff1b1c: e2800004 add r0, r0, #4
  1748. ffff1b20: e350008c cmp r0, #140 ; 0x8c
  1749. ffff1b24: 3afffff6 bcc 0xffff1b04
  1750. ffff1b28: e3a00020 mov r0, #32
  1751. ffff1b2c: ea000006 b 0xffff1b4c
  1752. ffff1b30: e3e03000 mvn r3, #0
  1753. ffff1b34: e1a042a0 lsr r4, r0, #5
  1754. ffff1b38: e1a04104 lsl r4, r4, #2
  1755. ffff1b3c: e2844507 add r4, r4, #29360128 ; 0x1c00000
  1756. ffff1b40: e2844a81 add r4, r4, #528384 ; 0x81000
  1757. ffff1b44: e5843180 str r3, [r4, #384] ; 0x180
  1758. ffff1b48: e2800020 add r0, r0, #32
  1759. ffff1b4c: e350008c cmp r0, #140 ; 0x8c
  1760. ffff1b50: 3afffff6 bcc 0xffff1b30
  1761. ffff1b54: e3a00020 mov r0, #32
  1762. ffff1b58: ea000006 b 0xffff1b78
  1763. ffff1b5c: e3e03000 mvn r3, #0
  1764. ffff1b60: e1a042a0 lsr r4, r0, #5
  1765. ffff1b64: e1a04104 lsl r4, r4, #2
  1766. ffff1b68: e2844507 add r4, r4, #29360128 ; 0x1c00000
  1767. ffff1b6c: e2844a81 add r4, r4, #528384 ; 0x81000
  1768. ffff1b70: e5843380 str r3, [r4, #896] ; 0x380
  1769. ffff1b74: e2800020 add r0, r0, #32
  1770. ffff1b78: e350008c cmp r0, #140 ; 0x8c
  1771. ffff1b7c: 3afffff6 bcc 0xffff1b5c
  1772. ffff1b80: e3a03001 mov r3, #1
  1773. ffff1b84: e59f4b9c ldr r4, [pc, #2972] ; 0xffff2728 =01c81000 GIC_DIST
  1774. ffff1b88: e5843000 str r3, [r4]
  1775. ffff1b8c: e320f000 nop {0}
  1776. ffff1b90: eaffffc1 b 0xffff1a9c
  1777. ffff1b94: e92d4010 push {r4, lr}
  1778. ffff1b98: e3a01000 mov r1, #0
  1779. ffff1b9c: e59f2b94 ldr r2, [pc, #2964] ; 0xffff2738 =0x01c82000 GIC_CPUIF
  1780. ffff1ba0: e5821000 str r1, [r2]
  1781. ffff1ba4: e2411801 sub r1, r1, #65536 ; 0x10000
  1782. ffff1ba8: e0822241 add r2, r2, r1, asr #4
  1783. ffff1bac: e5821180 str r1, [r2, #384] ; 0x180
  1784. ffff1bb0: e30f1fff movw r1, #65535 ; 0xffff
  1785. ffff1bb4: e5821100 str r1, [r2, #256] ; 0x100
  1786. ffff1bb8: e3a00000 mov r0, #0
  1787. ffff1bbc: ea000006 b 0xffff1bdc
  1788. ffff1bc0: e59f1b64 ldr r1, [pc, #2916] ; 0xffff272c =0xa0a0a0a0
  1789. ffff1bc4: e1a02120 lsr r2, r0, #2
  1790. ffff1bc8: e1a02102 lsl r2, r2, #2
  1791. ffff1bcc: e2822772 add r2, r2, #29884416 ; 0x1c80000 GIC_DIST
  1792. ffff1bd0: e2822b05 add r2, r2, #5120 ; 0x1400
  1793. ffff1bd4: e5821000 str r1, [r2]
  1794. ffff1bd8: e2800004 add r0, r0, #4
  1795. ffff1bdc: e3500010 cmp r0, #16
  1796. ffff1be0: 3afffff6 bcc 0xffff1bc0
  1797. ffff1be4: e3a00010 mov r0, #16
  1798. ffff1be8: ea000007 b 0xffff1c0c
  1799. ffff1bec: e59f1b38 ldr r1, [pc, #2872] ; 0xffff272c =0xa0a0a0a0
  1800. ffff1bf0: e2402010 sub r2, r0, #16
  1801. ffff1bf4: e1a02122 lsr r2, r2, #2
  1802. ffff1bf8: e59f3b3c ldr r3, [pc, #2876] ; 0xffff273c =0x01c81410
  1803. ffff1bfc: e3a04004 mov r4, #4
  1804. ffff1c00: e0223294 mla r2, r4, r2, r3
  1805. ffff1c04: e5821000 str r1, [r2]
  1806. ffff1c08: e2800004 add r0, r0, #4
  1807. ffff1c0c: e3500020 cmp r0, #32
  1808. ffff1c10: 3afffff5 bcc 0xffff1bec
  1809. ffff1c14: e3a010f0 mov r1, #240 ; 0xf0
  1810. ffff1c18: e59f2b18 ldr r2, [pc, #2840] ; 0xffff2738 =0x01c82000 GIC_CPUIF
  1811. ffff1c1c: e5821004 str r1, [r2, #4]
  1812. ffff1c20: e3a01001 mov r1, #1
  1813. ffff1c24: e5821000 str r1, [r2]
  1814. ffff1c28: e8bd8010 pop {r4, pc}
  1815. ffff1c2c: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  1816. ffff1c30: e1a04000 mov r4, r0
  1817. ffff1c34: e1a062a4 lsr r6, r4, #5
  1818. ffff1c38: e1a00106 lsl r0, r6, #2
  1819. ffff1c3c: e2805772 add r5, r0, #29884416 ; 0x1c80000 GIC_DIST
  1820. ffff1c40: e2855c11 add r5, r5, #4352 ; 0x1100
  1821. ffff1c44: e204701f and r7, r4, #31
  1822. ffff1c48: e3a03001 mov r3, #1
  1823. ffff1c4c: e1a02003 mov r2, r3
  1824. ffff1c50: e1a01007 mov r1, r7
  1825. ffff1c54: e1a00005 mov r0, r5
  1826. ffff1c58: ebfffb27 bl 0xffff08fc
  1827. ffff1c5c: e3a00000 mov r0, #0
  1828. ffff1c60: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  1829. ffff1c64: e3a00000 mov r0, #0
  1830. ffff1c68: e3e01000 mvn r1, #0
  1831. ffff1c6c: e59f2ab4 ldr r2, [pc, #2740] ; 0xffff2728 =01c81000 GIC_DIST
  1832. ffff1c70: e5821180 str r1, [r2, #384] ; 0x180
  1833. ffff1c74: e5821184 str r1, [r2, #388] ; 0x184
  1834. ffff1c78: e5821188 str r1, [r2, #392] ; 0x188
  1835. ffff1c7c: e582118c str r1, [r2, #396] ; 0x18c
  1836. ffff1c80: e5821190 str r1, [r2, #400] ; 0x190
  1837. ffff1c84: e12fff1e bx lr
  1838. ffff1c88: e92d4010 push {r4, lr}
  1839. ffff1c8c: e3a00067 mov r0, #103 ; 0x67
  1840. ffff1c90: ebffffe5 bl 0xffff1c2c
  1841. ffff1c94: e8bd8010 pop {r4, pc}
  1842. interrupt_handler:
  1843. ffff1c98: e92d4010 push {r4, lr}
  1844. ffff1c9c: e59f0a94 ldr r0, [pc, #2708] ; 0xffff2738 =0x01c82000 GIC_CPUIF
  1845. ffff1ca0: e590400c ldr r4, [r0, #12]
  1846. ffff1ca4: e1a00004 mov r0, r4
  1847. ffff1ca8: e7df051f bfc r0, #10, #22
  1848. ffff1cac: e1a04000 mov r4, r0
  1849. ffff1cb0: e3540067 cmp r4, #103 ; 0x67
  1850. ffff1cb4: 1a000001 bne 0xffff1cc0
  1851. ffff1cb8: e1a00004 mov r0, r4
  1852. ffff1cbc: ebffff58 bl 0xffff1a24
  1853. ffff1cc0: e59f0a70 ldr r0, [pc, #2672] ; 0xffff2738 =0x01c82000 GIC_CPUIF
  1854. ffff1cc4: e5804010 str r4, [r0, #16]
  1855. ffff1cc8: e2800a01 add r0, r0, #4096 ; 0x1000
  1856. ffff1ccc: e5804000 str r4, [r0]
  1857. ffff1cd0: e1a00004 mov r0, r4
  1858. ffff1cd4: ebffff56 bl 0xffff1a34
  1859. ffff1cd8: e8bd8010 pop {r4, pc}
  1860. ffff1cdc: e92d4010 push {r4, lr}
  1861. ffff1ce0: ebffffdf bl 0xffff1c64
  1862. ffff1ce4: ebffff5c bl 0xffff1a5c
  1863. ffff1ce8: ebffffa9 bl 0xffff1b94
  1864. ffff1cec: e8bd8010 pop {r4, pc}
  1865. ffff1cf0: e92d4010 push {r4, lr}
  1866. ffff1cf4: ebffffe3 bl 0xffff1c88
  1867. ffff1cf8: e8bd8010 pop {r4, pc}
  1868. ffff1cfc: e3a01012 mov r1, #18
  1869. ffff1d00: e5c01000 strb r1, [r0]
  1870. ffff1d04: e3a01001 mov r1, #1
  1871. ffff1d08: e5c01001 strb r1, [r0, #1]
  1872. ffff1d0c: e3001110 movw r1, #272 ; 0x110
  1873. ffff1d10: e1c010b2 strh r1, [r0, #2]
  1874. ffff1d14: e3a01000 mov r1, #0
  1875. ffff1d18: e5c01004 strb r1, [r0, #4]
  1876. ffff1d1c: e5c01005 strb r1, [r0, #5]
  1877. ffff1d20: e5c01006 strb r1, [r0, #6]
  1878. ffff1d24: e3a01040 mov r1, #64 ; 0x40
  1879. ffff1d28: e5c01007 strb r1, [r0, #7]
  1880. ffff1d2c: e3011f3a movw r1, #7994 ; 0x1f3a
  1881. ffff1d30: e1c010b8 strh r1, [r0, #8]
  1882. ffff1d34: e30e1fe8 movw r1, #61416 ; 0xefe8
  1883. ffff1d38: e1c010ba strh r1, [r0, #10]
  1884. ffff1d3c: e30012b3 movw r1, #691 ; 0x2b3
  1885. ffff1d40: e1c010bc strh r1, [r0, #12]
  1886. ffff1d44: e3a01000 mov r1, #0
  1887. ffff1d48: e5c0100e strb r1, [r0, #14]
  1888. ffff1d4c: e5c0100f strb r1, [r0, #15]
  1889. ffff1d50: e5c01010 strb r1, [r0, #16]
  1890. ffff1d54: e3a01001 mov r1, #1
  1891. ffff1d58: e5c01011 strb r1, [r0, #17]
  1892. ffff1d5c: e12fff1e bx lr
  1893. ffff1d60: e3a0100a mov r1, #10
  1894. ffff1d64: e5c01000 strb r1, [r0]
  1895. ffff1d68: e3a01002 mov r1, #2
  1896. ffff1d6c: e5c01001 strb r1, [r0, #1]
  1897. ffff1d70: e3a01020 mov r1, #32
  1898. ffff1d74: e1c010b2 strh r1, [r0, #2]
  1899. ffff1d78: e3a01001 mov r1, #1
  1900. ffff1d7c: e5c01004 strb r1, [r0, #4]
  1901. ffff1d80: e5c01005 strb r1, [r0, #5]
  1902. ffff1d84: e3a01000 mov r1, #0
  1903. ffff1d88: e5c01006 strb r1, [r0, #6]
  1904. ffff1d8c: e3a01080 mov r1, #128 ; 0x80
  1905. ffff1d90: e5c01007 strb r1, [r0, #7]
  1906. ffff1d94: e3a01096 mov r1, #150 ; 0x96
  1907. ffff1d98: e5c01008 strb r1, [r0, #8]
  1908. ffff1d9c: e12fff1e bx lr
  1909. ffff1da0: e3a01009 mov r1, #9
  1910. ffff1da4: e5c01000 strb r1, [r0]
  1911. ffff1da8: e3a01004 mov r1, #4
  1912. ffff1dac: e5c01001 strb r1, [r0, #1]
  1913. ffff1db0: e3a01000 mov r1, #0
  1914. ffff1db4: e5c01002 strb r1, [r0, #2]
  1915. ffff1db8: e5c01003 strb r1, [r0, #3]
  1916. ffff1dbc: e3a01002 mov r1, #2
  1917. ffff1dc0: e5c01004 strb r1, [r0, #4]
  1918. ffff1dc4: e3a010ff mov r1, #255 ; 0xff
  1919. ffff1dc8: e5c01005 strb r1, [r0, #5]
  1920. ffff1dcc: e5c01006 strb r1, [r0, #6]
  1921. ffff1dd0: e5c01007 strb r1, [r0, #7]
  1922. ffff1dd4: e3a01000 mov r1, #0
  1923. ffff1dd8: e5c01008 strb r1, [r0, #8]
  1924. ffff1ddc: e12fff1e bx lr
  1925. ffff1de0: e3a01007 mov r1, #7
  1926. ffff1de4: e5c01000 strb r1, [r0]
  1927. ffff1de8: e3a01005 mov r1, #5
  1928. ffff1dec: e5c01001 strb r1, [r0, #1]
  1929. ffff1df0: e3a01040 mov r1, #64 ; 0x40
  1930. ffff1df4: e1c010b4 strh r1, [r0, #4]
  1931. ffff1df8: e3a01001 mov r1, #1
  1932. ffff1dfc: e5c01002 strb r1, [r0, #2]
  1933. ffff1e00: e3a01002 mov r1, #2
  1934. ffff1e04: e5c01003 strb r1, [r0, #3]
  1935. ffff1e08: e3a01000 mov r1, #0
  1936. ffff1e0c: e5c01006 strb r1, [r0, #6]
  1937. ffff1e10: e12fff1e bx lr
  1938. ffff1e14: e3a01007 mov r1, #7
  1939. ffff1e18: e5c01000 strb r1, [r0]
  1940. ffff1e1c: e3a01005 mov r1, #5
  1941. ffff1e20: e5c01001 strb r1, [r0, #1]
  1942. ffff1e24: e3a01040 mov r1, #64 ; 0x40
  1943. ffff1e28: e1c010b4 strh r1, [r0, #4]
  1944. ffff1e2c: e3a01082 mov r1, #130 ; 0x82
  1945. ffff1e30: e5c01002 strb r1, [r0, #2]
  1946. ffff1e34: e3a01002 mov r1, #2
  1947. ffff1e38: e5c01003 strb r1, [r0, #3]
  1948. ffff1e3c: e3a01000 mov r1, #0
  1949. ffff1e40: e5c01006 strb r1, [r0, #6]
  1950. ffff1e44: e12fff1e bx lr
  1951. ffff1e48: e5802000 str r2, [r0]
  1952. ffff1e4c: e5801004 str r1, [r0, #4]
  1953. ffff1e50: e12fff1e bx lr
  1954. ffff1e54: e12fff1e bx lr
  1955. ffff1e58: e12fff1e bx lr
  1956. ffff1e5c: e12fff1e bx lr
  1957. ffff1e60: e92d4010 push {r4, lr}
  1958. ffff1e64: e3a03000 mov r3, #0
  1959. ffff1e68: e5c03005 strb r3, [r0, #5]
  1960. ffff1e6c: e5c03006 strb r3, [r0, #6]
  1961. ffff1e70: e5803000 str r3, [r0]
  1962. ffff1e74: e5c03004 strb r3, [r0, #4]
  1963. ffff1e78: e3a03040 mov r3, #64 ; 0x40
  1964. ffff1e7c: e5803008 str r3, [r0, #8]
  1965. ffff1e80: e3a03000 mov r3, #0
  1966. ffff1e84: e580300c str r3, [r0, #12]
  1967. ffff1e88: e5d13002 ldrb r3, [r1, #2]
  1968. ffff1e8c: e5c03015 strb r3, [r0, #21]
  1969. ffff1e90: e5d13003 ldrb r3, [r1, #3]
  1970. ffff1e94: e5c03016 strb r3, [r0, #22]
  1971. ffff1e98: e5801010 str r1, [r0, #16]
  1972. ffff1e9c: e3a03001 mov r3, #1
  1973. ffff1ea0: e5c03014 strb r3, [r0, #20]
  1974. ffff1ea4: e1d130b4 ldrh r3, [r1, #4]
  1975. ffff1ea8: e5803018 str r3, [r0, #24]
  1976. ffff1eac: e3a03000 mov r3, #0
  1977. ffff1eb0: e580301c str r3, [r0, #28]
  1978. ffff1eb4: e5d23002 ldrb r3, [r2, #2]
  1979. ffff1eb8: e5c03025 strb r3, [r0, #37] ; 0x25
  1980. ffff1ebc: e5d23003 ldrb r3, [r2, #3]
  1981. ffff1ec0: e5c03026 strb r3, [r0, #38] ; 0x26
  1982. ffff1ec4: e5802020 str r2, [r0, #32]
  1983. ffff1ec8: e3a03002 mov r3, #2
  1984. ffff1ecc: e5c03024 strb r3, [r0, #36] ; 0x24
  1985. ffff1ed0: e1d230b4 ldrh r3, [r2, #4]
  1986. ffff1ed4: e5803028 str r3, [r0, #40] ; 0x28
  1987. ffff1ed8: e3a03000 mov r3, #0
  1988. ffff1edc: e580302c str r3, [r0, #44] ; 0x2c
  1989. ffff1ee0: e5803030 str r3, [r0, #48] ; 0x30
  1990. ffff1ee4: e5c03034 strb r3, [r0, #52] ; 0x34
  1991. ffff1ee8: e5803038 str r3, [r0, #56] ; 0x38
  1992. ffff1eec: e5c0303c strb r3, [r0, #60] ; 0x3c
  1993. ffff1ef0: e5c0303d strb r3, [r0, #61] ; 0x3d
  1994. ffff1ef4: e8bd8010 pop {r4, pc}
  1995. ffff1ef8: e92d4010 push {r4, lr}
  1996. ffff1efc: e5801000 str r1, [r0]
  1997. ffff1f00: e3a04000 mov r4, #0
  1998. ffff1f04: e5c04004 strb r4, [r0, #4]
  1999. ffff1f08: e5804008 str r4, [r0, #8]
  2000. ffff1f0c: e5802014 str r2, [r0, #20]
  2001. ffff1f10: e5804018 str r4, [r0, #24]
  2002. ffff1f14: e580300c str r3, [r0, #12]
  2003. ffff1f18: e5804010 str r4, [r0, #16]
  2004. ffff1f1c: e8bd8010 pop {r4, pc}
  2005. ffff1f20: e5801000 str r1, [r0]
  2006. ffff1f24: e3a02000 mov r2, #0
  2007. ffff1f28: e5802004 str r2, [r0, #4]
  2008. ffff1f2c: e59f280c ldr r2, [pc, #2060] ; 0xffff2740 =0xffff0890
  2009. ffff1f30: e580200c str r2, [r0, #12]
  2010. ffff1f34: e3a02000 mov r2, #0
  2011. ffff1f38: e5802010 str r2, [r0, #16]
  2012. ffff1f3c: e5c02008 strb r2, [r0, #8]
  2013. ffff1f40: e5c02018 strb r2, [r0, #24]
  2014. ffff1f44: e5802014 str r2, [r0, #20]
  2015. ffff1f48: e12fff1e bx lr
  2016. ffff1f4c: e5801000 str r1, [r0]
  2017. ffff1f50: e3a02000 mov r2, #0
  2018. ffff1f54: e5802004 str r2, [r0, #4]
  2019. ffff1f58: e59f27e4 ldr r2, [pc, #2020] ; 0xffff2744 =0xffff08a8
  2020. ffff1f5c: e580200c str r2, [r0, #12]
  2021. ffff1f60: e3a02000 mov r2, #0
  2022. ffff1f64: e5802010 str r2, [r0, #16]
  2023. ffff1f68: e5c02008 strb r2, [r0, #8]
  2024. ffff1f6c: e5c02018 strb r2, [r0, #24]
  2025. ffff1f70: e3a02001 mov r2, #1
  2026. ffff1f74: e5802014 str r2, [r0, #20]
  2027. ffff1f78: e12fff1e bx lr
  2028. ffff1f7c: e5801000 str r1, [r0]
  2029. ffff1f80: e3a02000 mov r2, #0
  2030. ffff1f84: e5802004 str r2, [r0, #4]
  2031. ffff1f88: e59f27b8 ldr r2, [pc, #1976] ; 0xffff2748 =0xffff089c
  2032. ffff1f8c: e580200c str r2, [r0, #12]
  2033. ffff1f90: e3a02000 mov r2, #0
  2034. ffff1f94: e5802010 str r2, [r0, #16]
  2035. ffff1f98: e5c02008 strb r2, [r0, #8]
  2036. ffff1f9c: e5c02018 strb r2, [r0, #24]
  2037. ffff1fa0: e3a02002 mov r2, #2
  2038. ffff1fa4: e5802014 str r2, [r0, #20]
  2039. ffff1fa8: e12fff1e bx lr
  2040. ffff1fac: e92d4010 push {r4, lr}
  2041. ffff1fb0: e580100c str r1, [r0, #12]
  2042. ffff1fb4: e580201c str r2, [r0, #28]
  2043. ffff1fb8: e580302c str r3, [r0, #44] ; 0x2c
  2044. ffff1fbc: e8bd8010 pop {r4, pc}
  2045. ffff1fc0: e3a00000 mov r0, #0
  2046. ffff1fc4: e51f1700 ldr r1, [pc, #-1792] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2047. ffff1fc8: e5d10040 ldrb r0, [r1, #64] ; 0x40
  2048. ffff1fcc: e3c00020 bic r0, r0, #32
  2049. ffff1fd0: e5c10040 strb r0, [r1, #64] ; 0x40
  2050. ffff1fd4: e5d10040 ldrb r0, [r1, #64] ; 0x40
  2051. ffff1fd8: e12fff1e bx lr
  2052. ffff1fdc: e3a01000 mov r1, #0
  2053. ffff1fe0: e3a02000 mov r2, #0
  2054. ffff1fe4: e59f0760 ldr r0, [pc, #1888] ; 0xffff274c =0x01c20000 CCU_BASE
  2055. ffff1fe8: e5901000 ldr r1, [r0]
  2056. ffff1fec: e59f075c ldr r0, [pc, #1884] ; 0xffff2750 =0x7ffce0ff
  2057. ffff1ff0: e0011000 and r1, r1, r0
  2058. ffff1ff4: e3811102 orr r1, r1, #-2147483648 ; 0x80000000
  2059. ffff1ff8: e3811a01 orr r1, r1, #4096 ; 0x1000
  2060. ffff1ffc: e59f0748 ldr r0, [pc, #1864] ; 0xffff274c =0x01c20000 CCU_BASE
  2061. ffff2000: e5801000 str r1, [r0]
  2062. ffff2004: e5901028 ldr r1, [r0, #40] ; 0x28
  2063. ffff2008: e3811102 orr r1, r1, #-2147483648 ; 0x80000000
  2064. ffff200c: e5801028 str r1, [r0, #40] ; 0x28
  2065. ffff2010: e30c2350 movw r2, #50000 ; 0xc350
  2066. ffff2014: e320f000 nop {0}
  2067. ffff2018: e1b00002 movs r0, r2
  2068. ffff201c: e2422001 sub r2, r2, #1
  2069. ffff2020: 1afffffc bne 0xffff2018
  2070. ffff2024: e59f0720 ldr r0, [pc, #1824] ; 0xffff274c =0x01c20000 CCU_BASE
  2071. ffff2028: e5901050 ldr r1, [r0, #80] ; 0x50
  2072. ffff202c: e3c11003 bic r1, r1, #3
  2073. ffff2030: e3811001 orr r1, r1, #1
  2074. ffff2034: e5801050 str r1, [r0, #80] ; 0x50
  2075. ffff2038: e30021f4 movw r2, #500 ; 0x1f4
  2076. ffff203c: e320f000 nop {0}
  2077. ffff2040: e1b00002 movs r0, r2
  2078. ffff2044: e2422001 sub r2, r2, #1
  2079. ffff2048: 1afffffc bne 0xffff2040
  2080. ffff204c: e59f06f8 ldr r0, [pc, #1784] ; 0xffff274c =0x01c20000 CCU_BASE
  2081. ffff2050: e5901050 ldr r1, [r0, #80] ; 0x50
  2082. ffff2054: e3c11803 bic r1, r1, #196608 ; 0x30000
  2083. ffff2058: e3811803 orr r1, r1, #196608 ; 0x30000
  2084. ffff205c: e5801050 str r1, [r0, #80] ; 0x50
  2085. ffff2060: e5901054 ldr r1, [r0, #84] ; 0x54
  2086. ffff2064: e3c11e3f bic r1, r1, #1008 ; 0x3f0
  2087. ffff2068: e3811e19 orr r1, r1, #400 ; 0x190
  2088. ffff206c: e5801054 str r1, [r0, #84] ; 0x54
  2089. ffff2070: e30021f4 movw r2, #500 ; 0x1f4
  2090. ffff2074: e320f000 nop {0}
  2091. ffff2078: e1b00002 movs r0, r2
  2092. ffff207c: e2422001 sub r2, r2, #1
  2093. ffff2080: 1afffffc bne 0xffff2078
  2094. ffff2084: e59f06c0 ldr r0, [pc, #1728] ; 0xffff274c =0x01c20000 CCU_BASE
  2095. ffff2088: e5901054 ldr r1, [r0, #84] ; 0x54
  2096. ffff208c: e3c11a03 bic r1, r1, #12288 ; 0x3000
  2097. ffff2090: e3811a03 orr r1, r1, #12288 ; 0x3000
  2098. ffff2094: e5801054 str r1, [r0, #84] ; 0x54
  2099. ffff2098: e12fff1e bx lr
  2100. ffff209c: e3a00000 mov r0, #0
  2101. ffff20a0: e59f16ac ldr r1, [pc, #1708] ; 0xffff2754 =0x01c19400 O_HcRevision
  2102. ffff20a4: e5910000 ldr r0, [r1]
  2103. ffff20a8: e3800903 orr r0, r0, #49152 ; 0xc000
  2104. ffff20ac: e5810000 str r0, [r1]
  2105. ffff20b0: e12fff1e bx lr
  2106. ffff20b4: e3a00000 mov r0, #0
  2107. ffff20b8: e3a01000 mov r1, #0
  2108. ffff20bc: e59f2690 ldr r2, [pc, #1680] ; 0xffff2754 =0x01c19400 O_HcRevision
  2109. ffff20c0: e5920000 ldr r0, [r2]
  2110. ffff20c4: e3800801 orr r0, r0, #65536 ; 0x10000
  2111. ffff20c8: e5820000 str r0, [r2]
  2112. ffff20cc: e30017d0 movw r1, #2000 ; 0x7d0
  2113. ffff20d0: e320f000 nop {0}
  2114. ffff20d4: e1b02001 movs r2, r1
  2115. ffff20d8: e2411001 sub r1, r1, #1
  2116. ffff20dc: 1afffffc bne 0xffff20d4
  2117. ffff20e0: e3800b03 orr r0, r0, #3072 ; 0xc00
  2118. ffff20e4: e59f2668 ldr r2, [pc, #1640] ; 0xffff2754 =0x01c19400 O_HcRevision
  2119. ffff20e8: e5820000 str r0, [r2]
  2120. ffff20ec: e12fff1e bx lr
  2121. ffff20f0: e3a01000 mov r1, #0
  2122. ffff20f4: e59f0658 ldr r0, [pc, #1624] ; 0xffff2754 =0x01c19400 O_HcRevision
  2123. ffff20f8: e5900000 ldr r0, [r0]
  2124. ffff20fc: e20020ff and r2, r0, #255 ; 0xff
  2125. ffff2100: e3120303 tst r2, #201326592 ; 0xc000000
  2126. ffff2104: 1a00000a bne 0xffff2134
  2127. ffff2108: e51f0844 ldr r0, [pc, #-2116] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2128. ffff210c: e5d00041 ldrb r0, [r0, #65] ; 0x41
  2129. ffff2110: e2000018 and r0, r0, #24
  2130. ffff2114: e3500018 cmp r0, #24
  2131. ffff2118: 0a000003 beq 0xffff212c
  2132. ffff211c: e59f0630 ldr r0, [pc, #1584] ; 0xffff2754 =0x01c19400 O_HcRevision
  2133. ffff2120: e5901000 ldr r1, [r0]
  2134. ffff2124: e3811a03 orr r1, r1, #12288 ; 0x3000
  2135. ffff2128: e5801000 str r1, [r0]
  2136. ffff212c: e3a00001 mov r0, #1
  2137. ffff2130: e12fff1e bx lr
  2138. ffff2134: e3a00000 mov r0, #0
  2139. ffff2138: eafffffc b 0xffff2130
  2140. ffff213c: e3a00000 mov r0, #0
  2141. ffff2140: e59f160c ldr r1, [pc, #1548] ; 0xffff2754 =0x01c19400 O_HcRevision
  2142. ffff2144: e5910000 ldr r0, [r1]
  2143. ffff2148: e3c00801 bic r0, r0, #65536 ; 0x10000
  2144. ffff214c: e5810000 str r0, [r1]
  2145. ffff2150: e12fff1e bx lr
  2146. ffff2154: e51f0890 ldr r0, [pc, #-2192] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2147. ffff2158: e5d01041 ldrb r1, [r0, #65] ; 0x41
  2148. ffff215c: e2010080 and r0, r1, #128 ; 0x80
  2149. ffff2160: e3500080 cmp r0, #128 ; 0x80
  2150. ffff2164: 1a000007 bne 0xffff2188
  2151. ffff2168: e51f08a4 ldr r0, [pc, #-2212] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2152. ffff216c: e5d02041 ldrb r2, [r0, #65] ; 0x41
  2153. ffff2170: e2020018 and r0, r2, #24
  2154. ffff2174: e3500018 cmp r0, #24
  2155. ffff2178: 1a000001 bne 0xffff2184
  2156. ffff217c: e3a00001 mov r0, #1
  2157. ffff2180: e12fff1e bx lr
  2158. ffff2184: e320f000 nop {0}
  2159. ffff2188: e3a00000 mov r0, #0
  2160. ffff218c: eafffffb b 0xffff2180
  2161. ffff2190: e92d4010 push {r4, lr}
  2162. ffff2194: ebffffc0 bl 0xffff209c
  2163. ffff2198: ebffffc5 bl 0xffff20b4
  2164. ffff219c: ea000009 b 0xffff21c8
  2165. ffff21a0: ebffffeb bl 0xffff2154
  2166. ffff21a4: e1a03000 mov r3, r0
  2167. ffff21a8: ebffffd0 bl 0xffff20f0
  2168. ffff21ac: e1a04000 mov r4, r0
  2169. ffff21b0: e3530000 cmp r3, #0
  2170. ffff21b4: 1a000001 bne 0xffff21c0
  2171. ffff21b8: e3540000 cmp r4, #0
  2172. ffff21bc: 0a000000 beq 0xffff21c4
  2173. ffff21c0: ea000001 b 0xffff21cc
  2174. ffff21c4: e320f000 nop {0}
  2175. ffff21c8: eafffff4 b 0xffff21a0
  2176. ffff21cc: e320f000 nop {0}
  2177. ffff21d0: ebffffd9 bl 0xffff213c
  2178. ffff21d4: ebffff80 bl 0xffff1fdc
  2179. ffff21d8: e8bd8010 pop {r4, pc}
  2180. ffff21dc: e92d4070 push {r4, r5, r6, lr}
  2181. ffff21e0: e1a04000 mov r4, r0
  2182. ffff21e4: e3a05000 mov r5, #0
  2183. ffff21e8: e3a06000 mov r6, #0
  2184. ffff21ec: ebffff73 bl 0xffff1fc0
  2185. ffff21f0: e59f0560 ldr r0, [pc, #1376] ; 0xffff2758 =0x01c19410 O_HcInterruptEnable
  2186. ffff21f4: e3a01000 mov r1, #0
  2187. ffff21f8: e5901000 ldr r1, [r0]
  2188. ffff21fc: e3c11002 bic r1, r1, #2
  2189. ffff2200: e5801000 str r1, [r0]
  2190. ffff2204: e3a00001 mov r0, #1
  2191. ffff2208: e51f1944 ldr r1, [pc, #-2372] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2192. ffff220c: e5c10042 strb r0, [r1, #66] ; 0x42
  2193. ffff2210: e3a00007 mov r0, #7
  2194. ffff2214: e5c10094 strb r0, [r1, #148] ; 0x94
  2195. ffff2218: e3a00080 mov r0, #128 ; 0x80
  2196. ffff221c: e1c109b6 strh r0, [r1, #150] ; 0x96
  2197. ffff2220: e3a00002 mov r0, #2
  2198. ffff2224: e5c10042 strb r0, [r1, #66] ; 0x42
  2199. ffff2228: e3a00007 mov r0, #7
  2200. ffff222c: e5c10090 strb r0, [r1, #144] ; 0x90
  2201. ffff2230: e3000100 movw r0, #256 ; 0x100
  2202. ffff2234: e1c109b2 strh r0, [r1, #146] ; 0x92
  2203. ffff2238: e3a00007 mov r0, #7
  2204. ffff223c: e5c10050 strb r0, [r1, #80] ; 0x50
  2205. ffff2240: e1c10000 bic r0, r1, r0
  2206. ffff2244: e5d00048 ldrb r0, [r0, #72] ; 0x48
  2207. ffff2248: e3800001 orr r0, r0, #1
  2208. ffff224c: e5c10048 strb r0, [r1, #72] ; 0x48
  2209. ffff2250: e51f0974 ldr r0, [pc, #-2420] ; 0xffff18e4 =0x00007d00
  2210. ffff2254: e5900000 ldr r0, [r0]
  2211. ffff2258: ebfffd2e bl 0xffff1718
  2212. ffff225c: e3a00002 mov r0, #2
  2213. ffff2260: e5941024 ldr r1, [r4, #36] ; 0x24
  2214. ffff2264: e5c10034 strb r0, [r1, #52] ; 0x34
  2215. ffff2268: ebffffc8 bl 0xffff2190
  2216. ffff226c: e51f09a8 ldr r0, [pc, #-2472] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2217. ffff2270: e5d00040 ldrb r0, [r0, #64] ; 0x40
  2218. ffff2274: e3800040 orr r0, r0, #64 ; 0x40
  2219. ffff2278: e51f19b4 ldr r1, [pc, #-2484] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2220. ffff227c: e5c10040 strb r0, [r1, #64] ; 0x40
  2221. ffff2280: e8bd8070 pop {r4, r5, r6, pc}
  2222. ffff2284: e92d4010 push {r4, lr}
  2223. ffff2288: e1a04000 mov r4, r0
  2224. ffff228c: e51f09c8 ldr r0, [pc, #-2504] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2225. ffff2290: e5d00043 ldrb r0, [r0, #67] ; 0x43
  2226. ffff2294: e20000fe and r0, r0, #254 ; 0xfe
  2227. ffff2298: e51f19d4 ldr r1, [pc, #-2516] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2228. ffff229c: e5c10043 strb r0, [r1, #67] ; 0x43
  2229. ffff22a0: e1a00004 mov r0, r4
  2230. ffff22a4: ebffffcc bl 0xffff21dc
  2231. ffff22a8: ebfffe90 bl 0xffff1cf0
  2232. ffff22ac: e1a00004 mov r0, r4
  2233. ffff22b0: ebfffaf9 bl 0xffff0e9c
  2234. ffff22b4: ebfff7b0 bl 0xffff017c
  2235. ffff22b8: e8bd8010 pop {r4, pc}
  2236. ffff22bc: e3a01000 mov r1, #0
  2237. ffff22c0: e5801008 str r1, [r0, #8]
  2238. ffff22c4: e5801004 str r1, [r0, #4]
  2239. ffff22c8: e5801000 str r1, [r0]
  2240. ffff22cc: e12fff1e bx lr
  2241. ffff22d0: e92d4010 push {r4, lr}
  2242. ffff22d4: e3002100 movw r2, #256 ; 0x100
  2243. ffff22d8: e3a010cc mov r1, #204 ; 0xcc
  2244. ffff22dc: e3070e00 movw r0, #32256 ; 0x7e00
  2245. ffff22e0: ebfff97d bl 0xffff08dc
  2246. ffff22e4: e8bd8010 pop {r4, pc}
  2247. ffff22e8: e92d4010 push {r4, lr}
  2248. ffff22ec: e24ddd47 sub sp, sp, #4544 ; 0x11c0
  2249. ffff22f0: ebfffff6 bl 0xffff22d0
  2250. ffff22f4: e28d0a01 add r0, sp, #4096 ; 0x1000
  2251. ffff22f8: e2800f5f add r0, r0, #380 ; 0x17c
  2252. ffff22fc: e51f1a20 ldr r1, [pc, #-2592] ; 0xffff18e4 =0x00007d00
  2253. ffff2300: e5810000 str r0, [r1]
  2254. ffff2304: e28d1a01 add r1, sp, #4096 ; 0x1000
  2255. ffff2308: e2811f5a add r1, r1, #360 ; 0x168
  2256. ffff230c: e28d0a01 add r0, sp, #4096 ; 0x1000
  2257. ffff2310: e580117c str r1, [r0, #380] ; 0x17c
  2258. ffff2314: e28d1a01 add r1, sp, #4096 ; 0x1000
  2259. ffff2318: e2811f57 add r1, r1, #348 ; 0x15c
  2260. ffff231c: e28d0a01 add r0, sp, #4096 ; 0x1000
  2261. ffff2320: e5801180 str r1, [r0, #384] ; 0x180
  2262. ffff2324: e28d1a01 add r1, sp, #4096 ; 0x1000
  2263. ffff2328: e2811e15 add r1, r1, #336 ; 0x150
  2264. ffff232c: e28d0a01 add r0, sp, #4096 ; 0x1000
  2265. ffff2330: e5801184 str r1, [r0, #388] ; 0x184
  2266. ffff2334: e28d1a01 add r1, sp, #4096 ; 0x1000
  2267. ffff2338: e2811f52 add r1, r1, #328 ; 0x148
  2268. ffff233c: e28d0a01 add r0, sp, #4096 ; 0x1000
  2269. ffff2340: e5801188 str r1, [r0, #392] ; 0x188
  2270. ffff2344: e28d1d45 add r1, sp, #4416 ; 0x1140
  2271. ffff2348: e28d0a01 add r0, sp, #4096 ; 0x1000
  2272. ffff234c: e580118c str r1, [r0, #396] ; 0x18c
  2273. ffff2350: e28d1a01 add r1, sp, #4096 ; 0x1000
  2274. ffff2354: e2811f4e add r1, r1, #312 ; 0x138
  2275. ffff2358: e28d0a01 add r0, sp, #4096 ; 0x1000
  2276. ffff235c: e5801190 str r1, [r0, #400] ; 0x190
  2277. ffff2360: e28d1a01 add r1, sp, #4096 ; 0x1000
  2278. ffff2364: e2811e13 add r1, r1, #304 ; 0x130
  2279. ffff2368: e28d0a01 add r0, sp, #4096 ; 0x1000
  2280. ffff236c: e5801194 str r1, [r0, #404] ; 0x194
  2281. ffff2370: e28d1a01 add r1, sp, #4096 ; 0x1000
  2282. ffff2374: e2811f4a add r1, r1, #296 ; 0x128
  2283. ffff2378: e28d0a01 add r0, sp, #4096 ; 0x1000
  2284. ffff237c: e5801198 str r1, [r0, #408] ; 0x198
  2285. ffff2380: e28d1a01 add r1, sp, #4096 ; 0x1000
  2286. ffff2384: e2811e12 add r1, r1, #288 ; 0x120
  2287. ffff2388: e28d0a01 add r0, sp, #4096 ; 0x1000
  2288. ffff238c: e580119c str r1, [r0, #412] ; 0x19c
  2289. ffff2390: e28d1a01 add r1, sp, #4096 ; 0x1000
  2290. ffff2394: e28110d8 add r1, r1, #216 ; 0xd8
  2291. ffff2398: e28d0a01 add r0, sp, #4096 ; 0x1000
  2292. ffff239c: e58011a0 str r1, [r0, #416] ; 0x1a0
  2293. ffff23a0: e28d1a01 add r1, sp, #4096 ; 0x1000
  2294. ffff23a4: e28110bc add r1, r1, #188 ; 0xbc
  2295. ffff23a8: e28d0a01 add r0, sp, #4096 ; 0x1000
  2296. ffff23ac: e58011a4 str r1, [r0, #420] ; 0x1a4
  2297. ffff23b0: e28d1a01 add r1, sp, #4096 ; 0x1000
  2298. ffff23b4: e28110a0 add r1, r1, #160 ; 0xa0
  2299. ffff23b8: e28d0a01 add r0, sp, #4096 ; 0x1000
  2300. ffff23bc: e58011a8 str r1, [r0, #424] ; 0x1a8
  2301. ffff23c0: e28d1a01 add r1, sp, #4096 ; 0x1000
  2302. ffff23c4: e2811084 add r1, r1, #132 ; 0x84
  2303. ffff23c8: e28d0a01 add r0, sp, #4096 ; 0x1000
  2304. ffff23cc: e58011ac str r1, [r0, #428] ; 0x1ac
  2305. ffff23d0: e28d1a01 add r1, sp, #4096 ; 0x1000
  2306. ffff23d4: e2811068 add r1, r1, #104 ; 0x68
  2307. ffff23d8: e28d0a01 add r0, sp, #4096 ; 0x1000
  2308. ffff23dc: e58011b0 str r1, [r0, #432] ; 0x1b0
  2309. ffff23e0: e28d0a01 add r0, sp, #4096 ; 0x1000
  2310. ffff23e4: e2800f6d add r0, r0, #436 ; 0x1b4
  2311. ffff23e8: ebffffb3 bl 0xffff22bc
  2312. ffff23ec: ebfffe3a bl 0xffff1cdc
  2313. ffff23f0: e28d0a01 add r0, sp, #4096 ; 0x1000
  2314. ffff23f4: e2800f5a add r0, r0, #360 ; 0x168
  2315. ffff23f8: ebfffe3f bl 0xffff1cfc
  2316. ffff23fc: e28d0a01 add r0, sp, #4096 ; 0x1000
  2317. ffff2400: e2800f57 add r0, r0, #348 ; 0x15c
  2318. ffff2404: ebfffe55 bl 0xffff1d60
  2319. ffff2408: e28d0a01 add r0, sp, #4096 ; 0x1000
  2320. ffff240c: e2800e15 add r0, r0, #336 ; 0x150
  2321. ffff2410: ebfffe62 bl 0xffff1da0
  2322. ffff2414: e28d0a01 add r0, sp, #4096 ; 0x1000
  2323. ffff2418: e2800f52 add r0, r0, #328 ; 0x148
  2324. ffff241c: ebfffe6f bl 0xffff1de0
  2325. ffff2420: e28d0d45 add r0, sp, #4416 ; 0x1140
  2326. ffff2424: ebfffe7a bl 0xffff1e14
  2327. ffff2428: e28d2a01 add r2, sp, #4096 ; 0x1000
  2328. ffff242c: e2822f52 add r2, r2, #328 ; 0x148
  2329. ffff2430: e28d1d45 add r1, sp, #4416 ; 0x1140
  2330. ffff2434: e28d0a01 add r0, sp, #4096 ; 0x1000
  2331. ffff2438: e2800f4e add r0, r0, #312 ; 0x138
  2332. ffff243c: ebfffe81 bl 0xffff1e48
  2333. ffff2440: e28d0a01 add r0, sp, #4096 ; 0x1000
  2334. ffff2444: e2800e13 add r0, r0, #304 ; 0x130
  2335. ffff2448: ebfffe81 bl 0xffff1e54
  2336. ffff244c: e28d0a01 add r0, sp, #4096 ; 0x1000
  2337. ffff2450: e2800f4a add r0, r0, #296 ; 0x128
  2338. ffff2454: ebfffe7f bl 0xffff1e58
  2339. ffff2458: e28d2a01 add r2, sp, #4096 ; 0x1000
  2340. ffff245c: e2822e13 add r2, r2, #304 ; 0x130
  2341. ffff2460: e28d1a01 add r1, sp, #4096 ; 0x1000
  2342. ffff2464: e2811f4a add r1, r1, #296 ; 0x128
  2343. ffff2468: e28d0a01 add r0, sp, #4096 ; 0x1000
  2344. ffff246c: e2800e12 add r0, r0, #288 ; 0x120
  2345. ffff2470: ebfffe79 bl 0xffff1e5c
  2346. ffff2474: e28d2d45 add r2, sp, #4416 ; 0x1140
  2347. ffff2478: e28d1a01 add r1, sp, #4096 ; 0x1000
  2348. ffff247c: e2811f52 add r1, r1, #328 ; 0x148
  2349. ffff2480: e28d0a01 add r0, sp, #4096 ; 0x1000
  2350. ffff2484: e28000d8 add r0, r0, #216 ; 0xd8
  2351. ffff2488: ebfffe74 bl 0xffff1e60
  2352. ffff248c: e28d3a01 add r3, sp, #4096 ; 0x1000
  2353. ffff2490: e2833084 add r3, r3, #132 ; 0x84
  2354. ffff2494: e28d2a01 add r2, sp, #4096 ; 0x1000
  2355. ffff2498: e2822068 add r2, r2, #104 ; 0x68
  2356. ffff249c: e28d1068 add r1, sp, #104 ; 0x68
  2357. ffff24a0: e28d0a01 add r0, sp, #4096 ; 0x1000
  2358. ffff24a4: e28000bc add r0, r0, #188 ; 0xbc
  2359. ffff24a8: ebfffe92 bl 0xffff1ef8
  2360. ffff24ac: e28d1024 add r1, sp, #36 ; 0x24
  2361. ffff24b0: e28d0a01 add r0, sp, #4096 ; 0x1000
  2362. ffff24b4: e28000a0 add r0, r0, #160 ; 0xa0
  2363. ffff24b8: ebfffe98 bl 0xffff1f20
  2364. ffff24bc: e28d1068 add r1, sp, #104 ; 0x68
  2365. ffff24c0: e28d0a01 add r0, sp, #4096 ; 0x1000
  2366. ffff24c4: e2800084 add r0, r0, #132 ; 0x84
  2367. ffff24c8: ebfffeab bl 0xffff1f7c
  2368. ffff24cc: e28d1068 add r1, sp, #104 ; 0x68
  2369. ffff24d0: e28d0a01 add r0, sp, #4096 ; 0x1000
  2370. ffff24d4: e2800068 add r0, r0, #104 ; 0x68
  2371. ffff24d8: ebfffe9b bl 0xffff1f4c
  2372. ffff24dc: e28d1a01 add r1, sp, #4096 ; 0x1000
  2373. ffff24e0: e28d3a01 add r3, sp, #4096 ; 0x1000
  2374. ffff24e4: e2833084 add r3, r3, #132 ; 0x84
  2375. ffff24e8: e28d2a01 add r2, sp, #4096 ; 0x1000
  2376. ffff24ec: e2822068 add r2, r2, #104 ; 0x68
  2377. ffff24f0: e59101a0 ldr r0, [r1, #416] ; 0x1a0
  2378. ffff24f4: e28d1a01 add r1, sp, #4096 ; 0x1000
  2379. ffff24f8: e28110a0 add r1, r1, #160 ; 0xa0
  2380. ffff24fc: ebfffeaa bl 0xffff1fac
  2381. ffff2500: e28d0a01 add r0, sp, #4096 ; 0x1000
  2382. ffff2504: e2800f5f add r0, r0, #380 ; 0x17c
  2383. ffff2508: ebfffa68 bl 0xffff0eb0
  2384. ffff250c: e28d0a01 add r0, sp, #4096 ; 0x1000
  2385. ffff2510: e2800f5f add r0, r0, #380 ; 0x17c
  2386. ffff2514: ebffff5a bl 0xffff2284
  2387. ffff2518: e28d0a01 add r0, sp, #4096 ; 0x1000
  2388. ffff251c: e2800f5f add r0, r0, #380 ; 0x17c
  2389. ffff2520: ebfff8d2 bl 0xffff0870
  2390. ffff2524: e28ddd47 add sp, sp, #4544 ; 0x11c0
  2391. ffff2528: e8bd8010 pop {r4, pc}
  2392. ffff252c: e92d4070 push {r4, r5, r6, lr}
  2393. ffff2530: e1a04000 mov r4, r0
  2394. ffff2534: e3a06000 mov r6, #0
  2395. ffff2538: e3045e20 movw r5, #20000 ; 0x4e20
  2396. ffff253c: e5940024 ldr r0, [r4, #36] ; 0x24
  2397. ffff2540: e2806020 add r6, r0, #32
  2398. ffff2544: e5d60004 ldrb r0, [r6, #4]
  2399. ffff2548: ebfffa02 bl 0xffff0d58
  2400. ffff254c: ea00000a b 0xffff257c
  2401. ffff2550: e51f0c8c ldr r0, [pc, #-3212] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2402. ffff2554: e1d008b2 ldrh r0, [r0, #130] ; 0x82
  2403. ffff2558: e3100001 tst r0, #1
  2404. ffff255c: 1a000001 bne 0xffff2568
  2405. ffff2560: e3a00001 mov r0, #1
  2406. ffff2564: e8bd8070 pop {r4, r5, r6, pc}
  2407. ffff2568: e3550000 cmp r5, #0
  2408. ffff256c: 1a000001 bne 0xffff2578
  2409. ffff2570: e3a00002 mov r0, #2
  2410. ffff2574: eafffffa b 0xffff2564
  2411. ffff2578: e2455001 sub r5, r5, #1
  2412. ffff257c: eafffff3 b 0xffff2550
  2413. ffff2580: e92d40f0 push {r4, r5, r6, r7, lr}
  2414. ffff2584: e1a04000 mov r4, r0
  2415. ffff2588: e3a05000 mov r5, #0
  2416. ffff258c: e5926004 ldr r6, [r2, #4]
  2417. ffff2590: e5927010 ldr r7, [r2, #16]
  2418. ffff2594: e0466007 sub r6, r6, r7
  2419. ffff2598: e1560003 cmp r6, r3
  2420. ffff259c: 2a000003 bcs 0xffff25b0
  2421. ffff25a0: e5926004 ldr r6, [r2, #4]
  2422. ffff25a4: e5927010 ldr r7, [r2, #16]
  2423. ffff25a8: e0466007 sub r6, r6, r7
  2424. ffff25ac: ea000000 b 0xffff25b4
  2425. ffff25b0: e1a06003 mov r6, r3
  2426. ffff25b4: e1a00006 mov r0, r6
  2427. ffff25b8: e5926010 ldr r6, [r2, #16]
  2428. ffff25bc: e0866000 add r6, r6, r0
  2429. ffff25c0: e5826010 str r6, [r2, #16]
  2430. ffff25c4: e1a03000 mov r3, r0
  2431. ffff25c8: e3530004 cmp r3, #4
  2432. ffff25cc: 9a00000a bls 0xffff25fc
  2433. ffff25d0: ea000005 b 0xffff25ec
  2434. ffff25d4: e5d46000 ldrb r6, [r4]
  2435. ffff25d8: e5c16000 strb r6, [r1]
  2436. ffff25dc: e3550008 cmp r5, #8
  2437. ffff25e0: 2a000000 bcs 0xffff25e8
  2438. ffff25e4: e2855001 add r5, r5, #1
  2439. ffff25e8: e2811001 add r1, r1, #1
  2440. ffff25ec: e1b06003 movs r6, r3
  2441. ffff25f0: e2433001 sub r3, r3, #1
  2442. ffff25f4: 1afffff6 bne 0xffff25d4
  2443. ffff25f8: ea000013 b 0xffff264c
  2444. ffff25fc: e1a06001 mov r6, r1
  2445. ffff2600: e1a0c001 mov ip, r1
  2446. ffff2604: e3530004 cmp r3, #4
  2447. ffff2608: 1a000002 bne 0xffff2618
  2448. ffff260c: e5947000 ldr r7, [r4]
  2449. ffff2610: e5867000 str r7, [r6]
  2450. ffff2614: ea00000b b 0xffff2648
  2451. ffff2618: e3530002 cmp r3, #2
  2452. ffff261c: 1a000002 bne 0xffff262c
  2453. ffff2620: e1d470b0 ldrh r7, [r4]
  2454. ffff2624: e1cc70b0 strh r7, [ip]
  2455. ffff2628: ea000006 b 0xffff2648
  2456. ffff262c: ea000002 b 0xffff263c
  2457. ffff2630: e5d47000 ldrb r7, [r4]
  2458. ffff2634: e5c17000 strb r7, [r1]
  2459. ffff2638: e2811001 add r1, r1, #1
  2460. ffff263c: e1b07003 movs r7, r3
  2461. ffff2640: e2433001 sub r3, r3, #1
  2462. ffff2644: 1afffff9 bne 0xffff2630
  2463. ffff2648: e320f000 nop {0}
  2464. ffff264c: e8bd80f0 pop {r4, r5, r6, r7, pc}
  2465. ffff2650: e1a01000 mov r1, r0
  2466. ffff2654: e5910040 ldr r0, [r1, #64] ; 0x40
  2467. ffff2658: e3500000 cmp r0, #0
  2468. ffff265c: 1a000002 bne 0xffff266c
  2469. ffff2660: e51f0d9c ldr r0, [pc, #-3484] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2470. ffff2664: e5d0004c ldrb r0, [r0, #76] ; 0x4c
  2471. ffff2668: e5810040 str r0, [r1, #64] ; 0x40
  2472. ffff266c: e5910040 ldr r0, [r1, #64] ; 0x40
  2473. ffff2670: e12fff1e bx lr
  2474. ffff2674: e92d4070 push {r4, r5, r6, lr}
  2475. ffff2678: e1a03000 mov r3, r0
  2476. ffff267c: e3a00000 mov r0, #0
  2477. ffff2680: e5915000 ldr r5, [r1]
  2478. ffff2684: e5916010 ldr r6, [r1, #16]
  2479. ffff2688: e0854006 add r4, r5, r6
  2480. ffff268c: e5915004 ldr r5, [r1, #4]
  2481. ffff2690: e5916010 ldr r6, [r1, #16]
  2482. ffff2694: e0455006 sub r5, r5, r6
  2483. ffff2698: e1550002 cmp r5, r2
  2484. ffff269c: 2a000003 bcs 0xffff26b0
  2485. ffff26a0: e5915004 ldr r5, [r1, #4]
  2486. ffff26a4: e5916010 ldr r6, [r1, #16]
  2487. ffff26a8: e045c006 sub ip, r5, r6
  2488. ffff26ac: ea000000 b 0xffff26b4
  2489. ffff26b0: e1a0c002 mov ip, r2
  2490. ffff26b4: e1a0000c mov r0, ip
  2491. ffff26b8: e5915010 ldr r5, [r1, #16]
  2492. ffff26bc: e0855000 add r5, r5, r0
  2493. ffff26c0: e5815010 str r5, [r1, #16]
  2494. ffff26c4: e1a02000 mov r2, r0
  2495. ffff26c8: ea000001 b 0xffff26d4
  2496. ffff26cc: e4d45001 ldrb r5, [r4], #1
  2497. ffff26d0: e5c35000 strb r5, [r3]
  2498. ffff26d4: e1b05002 movs r5, r2
  2499. ffff26d8: e2422001 sub r2, r2, #1
  2500. ffff26dc: 1afffffa bne 0xffff26cc
  2501. ffff26e0: e8bd8070 pop {r4, r5, r6, pc}
  2502. ffff26e4: e1a02000 mov r2, r0
  2503. ffff26e8: e5920038 ldr r0, [r2, #56] ; 0x38
  2504. ffff26ec: e1c00001 bic r0, r0, r1
  2505. ffff26f0: e5820038 str r0, [r2, #56] ; 0x38
  2506. ffff26f4: e51f0e30 ldr r0, [pc, #-3632] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2507. ffff26f8: e5c01044 strb r1, [r0, #68] ; 0x44
  2508. ffff26fc: e3a00000 mov r0, #0
  2509. ffff2700: e12fff1e bx lr
  2510. ffff2704: e1a02000 mov r2, r0
  2511. ffff2708: e5920040 ldr r0, [r2, #64] ; 0x40
  2512. ffff270c: e1c00001 bic r0, r0, r1
  2513. ffff2710: e5820040 str r0, [r2, #64] ; 0x40
  2514. ffff2714: e51f0e50 ldr r0, [pc, #-3664] ; 0xffff18cc =0x01c19000 USB_OTG_BASE
  2515. ffff2718: e5c0104c strb r1, [r0, #76] ; 0x4c
  2516. ffff271c: e3a00000 mov r0, #0
  2517. ffff2720: e12fff1e bx lr
  2518. ;; Global Offset Table
  2519. ffff2724: 01010101
  2520. ffff2728: 01c81000 ; GIC_DIST
  2521. ffff272c: a0a0a0a0
  2522. ffff2730: 01c81420
  2523. ffff2734: 01c81820
  2524. ffff2738: 01c82000
  2525. ffff273c: 01c81410
  2526. ffff2740: ffff0890
  2527. ffff2744: ffff08a8
  2528. ffff2748: ffff089c
  2529. ffff274c: 01c20000 ; CCU_BASE
  2530. ffff2750: 7ffce0ff
  2531. ffff2754: 01c19400 ; O_HcRevision
  2532. ffff2758: 01c19410 ; O_HcInterruptEnable
  2533. ffff275c: e92d4001 push {r0, lr}
  2534. ffff2760: ebffffff bl 0xffff2764
  2535. ffff2764: ebffffff bl 0xffff2768
  2536. ffff2768: ebffffff bl 0xffff276c
  2537. ffff276c: ebffffff bl 0xffff2770
  2538. ffff2770: ebffffff bl 0xffff2774
  2539. ffff2774: ebffffff bl 0xffff2778
  2540. ffff2778: ebffffff bl 0xffff277c
  2541. ffff277c: ebffffff bl 0xffff2780
  2542. ffff2780: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}
  2543. ffff2784: e3800b02 orr r0, r0, #2048 ; 0x800
  2544. ffff2788: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}
  2545. ffff278c: e8bd4001 pop {r0, lr}
  2546. ffff2790: e1a0f00e mov pc, lr
  2547. ffff2794: e92d4001 push {r0, lr}
  2548. ffff2798: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}
  2549. ffff279c: e3800a01 orr r0, r0, #4096 ; 0x1000
  2550. ffff27a0: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}
  2551. ffff27a4: e8bd4001 pop {r0, lr}
  2552. ffff27a8: e1a0f00e mov pc, lr
  2553. ffff27ac: e92d4001 push {r0, lr}
  2554. ffff27b0: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}
  2555. ffff27b4: e3800004 orr r0, r0, #4
  2556. ffff27b8: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}
  2557. ffff27bc: e8bd4001 pop {r0, lr}
  2558. ffff27c0: e1a0f00e mov pc, lr
  2559. ffff27c4: e92d4001 push {r0, lr}
  2560. ffff27c8: ee110f30 mrc 15, 0, r0, cr1, cr0, {1}
  2561. ffff27cc: e3800002 orr r0, r0, #2
  2562. ffff27d0: ee010f30 mcr 15, 0, r0, cr1, cr0, {1}
  2563. ffff27d4: e8bd4001 pop {r0, lr}
  2564. ffff27d8: e1a0f00e mov pc, lr
  2565. ffff27dc: e92d4001 push {r0, lr}
  2566. ffff27e0: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}
  2567. ffff27e4: e3800001 orr r0, r0, #1
  2568. ffff27e8: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}
  2569. ffff27ec: e8bd4001 pop {r0, lr}
  2570. ffff27f0: e1a0f00e mov pc, lr
  2571. ffff27f4: e92d4001 push {r0, lr}
  2572. ffff27f8: ee110f30 mrc 15, 0, r0, cr1, cr0, {1}
  2573. ffff27fc: e3c00002 bic r0, r0, #2
  2574. ffff2800: ee010f30 mcr 15, 0, r0, cr1, cr0, {1}
  2575. ffff2804: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}
  2576. ffff2808: e3c00001 bic r0, r0, #1
  2577. ffff280c: e3c00b02 bic r0, r0, #2048 ; 0x800
  2578. ffff2810: e3c00a01 bic r0, r0, #4096 ; 0x1000
  2579. ffff2814: e3c00004 bic r0, r0, #4
  2580. ffff2818: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}
  2581. ffff281c: e8bd4001 pop {r0, lr}
  2582. ffff2820: e1a0f00e mov pc, lr
  2583. ffff2824: e92d5fff push {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  2584. ffff2828: ee300f30 mrc 15, 1, r0, cr0, cr0, {1}
  2585. ffff282c: e2103407 ands r3, r0, #117440512 ; 0x7000000
  2586. ffff2830: e1a03ba3 lsr r3, r3, #23
  2587. ffff2834: 0a00001a beq 0xffff28a4
  2588. ffff2838: e3a0a000 mov sl, #0
  2589. ffff283c: e08a20aa add r2, sl, sl, lsr #1
  2590. ffff2840: e1a01230 lsr r1, r0, r2
  2591. ffff2844: e2011007 and r1, r1, #7
  2592. ffff2848: e3510002 cmp r1, #2
  2593. ffff284c: ba000011 blt 0xffff2898
  2594. ffff2850: ee40af10 mcr 15, 2, sl, cr0, cr0, {0}
  2595. ffff2854: f57ff06f isb sy
  2596. ffff2858: ee301f10 mrc 15, 1, r1, cr0, cr0, {0}
  2597. ffff285c: e2012007 and r2, r1, #7
  2598. ffff2860: e2822004 add r2, r2, #4
  2599. ffff2864: e30043ff movw r4, #1023 ; 0x3ff
  2600. ffff2868: e01441a1 ands r4, r4, r1, lsr #3
  2601. ffff286c: e16f5f14 clz r5, r4
  2602. ffff2870: e3077fff movw r7, #32767 ; 0x7fff
  2603. ffff2874: e01776a1 ands r7, r7, r1, lsr #13
  2604. ffff2878: e1a09004 mov r9, r4
  2605. ffff287c: e18ab519 orr fp, sl, r9, lsl r5
  2606. ffff2880: e18bb217 orr fp, fp, r7, lsl r2
  2607. ffff2884: ee07bf5e mcr 15, 0, fp, cr7, cr14, {2}
  2608. ffff2888: e2599001 subs r9, r9, #1
  2609. ffff288c: aafffffa bge 0xffff287c
  2610. ffff2890: e2577001 subs r7, r7, #1
  2611. ffff2894: aafffff7 bge 0xffff2878
  2612. ffff2898: e28aa002 add sl, sl, #2
  2613. ffff289c: e153000a cmp r3, sl
  2614. ffff28a0: caffffe5 bgt 0xffff283c
  2615. ffff28a4: e3a0a000 mov sl, #0
  2616. ffff28a8: ee40af10 mcr 15, 2, sl, cr0, cr0, {0}
  2617. ffff28ac: f57ff06f isb sy
  2618. ffff28b0: e8bd5fff pop {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  2619. ffff28b4: e1a0f00e mov pc, lr
  2620. ffff28b8: e92d0003 push {r0, r1}
  2621. ffff28bc: e3a00000 mov r0, #0
  2622. ffff28c0: ee070f15 mcr 15, 0, r0, cr7, cr5, {0}
  2623. ffff28c4: e8bd0003 pop {r0, r1}
  2624. ffff28c8: e1a0f00e mov pc, lr
  2625. ffff28cc: e92d4001 push {r0, lr}
  2626. ffff28d0: ebfffff8 bl 0xffff28b8
  2627. ffff28d4: ebffffd2 bl 0xffff2824
  2628. ffff28d8: e8bd4001 pop {r0, lr}
  2629. ffff28dc: e1a0f00e mov pc, lr
  2630. ffff28e0: e92d5fff push {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  2631. ffff28e4: e3a02040 mov r2, #64 ; 0x40
  2632. ffff28e8: e2423001 sub r3, r2, #1
  2633. ffff28ec: e1c00003 bic r0, r0, r3
  2634. ffff28f0: ee070f3b mcr 15, 0, r0, cr7, cr11, {1}
  2635. ffff28f4: f57ff04f dsb sy
  2636. ffff28f8: ee070f35 mcr 15, 0, r0, cr7, cr5, {1}
  2637. ffff28fc: e0800002 add r0, r0, r2
  2638. ffff2900: e1500001 cmp r0, r1
  2639. ffff2904: 3afffff9 bcc 0xffff28f0
  2640. ffff2908: e3a00000 mov r0, #0
  2641. ffff290c: ee070fd5 mcr 15, 0, r0, cr7, cr5, {6}
  2642. ffff2910: f57ff04f dsb sy
  2643. ffff2914: f57ff06f isb sy
  2644. ffff2918: e8bd5fff pop {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  2645. ffff291c: e1a0f00e mov pc, lr
  2646. ffff2920: e92d5fff push {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  2647. ffff2924: e3a02040 mov r2, #64 ; 0x40
  2648. ffff2928: e2423001 sub r3, r2, #1
  2649. ffff292c: e1c00003 bic r0, r0, r3
  2650. ffff2930: ee070f3e mcr 15, 0, r0, cr7, cr14, {1}
  2651. ffff2934: e0800002 add r0, r0, r2
  2652. ffff2938: e1500001 cmp r0, r1
  2653. ffff293c: 3afffffb bcc 0xffff2930
  2654. ffff2940: f57ff04f dsb sy
  2655. ffff2944: e8bd5fff pop {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  2656. ffff2948: e1a0f00e mov pc, lr
  2657. ffff294c: e92d5fff push {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  2658. ffff2950: e3a02040 mov r2, #64 ; 0x40
  2659. ffff2954: e2423001 sub r3, r2, #1
  2660. ffff2958: e1c00003 bic r0, r0, r3
  2661. ffff295c: ee070f3a mcr 15, 0, r0, cr7, cr10, {1}
  2662. ffff2960: e0800002 add r0, r0, r2
  2663. ffff2964: e1500001 cmp r0, r1
  2664. ffff2968: 3afffffb bcc 0xffff295c
  2665. ffff296c: f57ff04f dsb sy
  2666. ffff2970: e8bd5fff pop {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  2667. ffff2974: e1a0f00e mov pc, lr
  2668. ffff2978: e92d5fff push {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  2669. ffff297c: e3a02040 mov r2, #64 ; 0x40
  2670. ffff2980: e2423001 sub r3, r2, #1
  2671. ffff2984: e1100003 tst r0, r3
  2672. ffff2988: e1c00003 bic r0, r0, r3
  2673. ffff298c: 1e070f3e mcrne 15, 0, r0, cr7, cr14, {1}
  2674. ffff2990: e1110003 tst r1, r3
  2675. ffff2994: e1c11003 bic r1, r1, r3
  2676. ffff2998: 1e071f3e mcrne 15, 0, r1, cr7, cr14, {1}
  2677. ffff299c: ee070f36 mcr 15, 0, r0, cr7, cr6, {1}
  2678. ffff29a0: e0800002 add r0, r0, r2
  2679. ffff29a4: e1500001 cmp r0, r1
  2680. ffff29a8: 3afffffb bcc 0xffff299c
  2681. ffff29ac: f57ff04f dsb sy
  2682. ffff29b0: e8bd5fff pop {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
  2683. ffff29b4: e1a0f00e mov pc, lr
  2684. ffff29b8: e92d4001 push {r0, lr}
  2685. ffff29bc: e3a00000 mov r0, #0
  2686. ffff29c0: ee080f15 mcr 15, 0, r0, cr8, cr5, {0}
  2687. ffff29c4: ee080f16 mcr 15, 0, r0, cr8, cr6, {0}
  2688. ffff29c8: e8bd4001 pop {r0, lr}
  2689. ffff29cc: e1a0f00e mov pc, lr
  2690. ffff29d0: e92d4001 push {r0, lr}
  2691. ffff29d4: e10f0000 mrs r0, CPSR
  2692. ffff29d8: e3c01080 bic r1, r0, #128 ; 0x80
  2693. ffff29dc: e121f001 msr CPSR_c, r1
  2694. ffff29e0: e8bd4001 pop {r0, lr}
  2695. ffff29e4: e1a0f00e mov pc, lr
  2696. ffff29e8: e92d4001 push {r0, lr}
  2697. ffff29ec: e10f0000 mrs r0, CPSR
  2698. ffff29f0: e3801080 orr r1, r0, #128 ; 0x80
  2699. ffff29f4: e121f001 msr CPSR_c, r1
  2700. ffff29f8: e8bd4001 pop {r0, lr}
  2701. ffff29fc: e1a0f00e mov pc, lr
  2702. ffff2a00: e92d4001 push {r0, lr}
  2703. ffff2a04: e10f0000 mrs r0, CPSR
  2704. ffff2a08: e3c01040 bic r1, r0, #64 ; 0x40
  2705. ffff2a0c: e121f001 msr CPSR_c, r1
  2706. ffff2a10: e8bd4001 pop {r0, lr}
  2707. ffff2a14: e1a0f00e mov pc, lr
  2708. ffff2a18: e92d4001 push {r0, lr}
  2709. ffff2a1c: e10f0000 mrs r0, CPSR
  2710. ffff2a20: e3801040 orr r1, r0, #64 ; 0x40
  2711. ffff2a24: e121f001 msr CPSR_c, r1
  2712. ffff2a28: e8bd4001 pop {r0, lr}
  2713. ffff2a2c: e1a0f00e mov pc, lr
  2714. ffff2a30: e92d4001 push {r0, lr}
  2715. ffff2a34: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}
  2716. ffff2a38: e3800a02 orr r0, r0, #8192 ; 0x2000
  2717. ffff2a3c: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}
  2718. ffff2a40: e8bd4001 pop {r0, lr}
  2719. ffff2a44: e1a0f00e mov pc, lr
  2720. ffff2a48: e92d4001 push {r0, lr}
  2721. ffff2a4c: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}
  2722. ffff2a50: e3c00a02 bic r0, r0, #8192 ; 0x2000
  2723. ffff2a54: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}
  2724. ffff2a58: e8bd4001 pop {r0, lr}
  2725. ffff2a5c: e1a0f00e mov pc, lr
  2726. ...
  2727. BROM:
  2728. ;; BROM header
  2729. ffff2c00: ea000006 b start ; jump instruction, see below
  2730. ffff2c04: 4e4f4765 .ascii "eGON" ; magic
  2731. ffff2c08: 4d52422e .ascii ".BRM"
  2732. ffff2c0c: 00000020 .word 32 ; header length
  2733. ffff2c10: 30303131 .ascii "1100" ; boot version (1.1.00)
  2734. ffff2c14: 30303131 .ascii "1100" ; eGon version (1.1.00)
  2735. ffff2c18: 31383631 .ascii "1681" ; platform information (V3s)
  2736. ffff2c1c: 00000000 .word 0
  2737. ;;;*****************************************************************************
  2738. ;;;
  2739. ;;; About the jump_instruction field in Boot_file_head
  2740. ;;;
  2741. ;;; The jump_instruction field stores a branch instruction: ( B after_header ),
  2742. ;;; this jumps after the transfer instruction is executed, the program will jump
  2743. ;;; to the first instruction after the header.
  2744. ;;;
  2745. ;;; The encoding of the B instruction in ARM assembler is as follows:
  2746. ;;; +--------+---------+------------------------------+
  2747. ;;; | 31--28 | 27--24 | 23--0 |
  2748. ;;; +--------+---------+------------------------------+
  2749. ;;; | cond | 1 0 1 0 | signed_immed_24 |
  2750. ;;; +--------+---------+------------------------------+
  2751. ;;;
  2752. ;;; "ARM Architecture Reference Manual" explains this instruction as follows:
  2753. ;;; Syntax :
  2754. ;;; B{<cond>} <target_address>
  2755. ;;; <cond> Is the condition under which the instruction is executed. If the
  2756. ;;; <cond> is ommitted, the AL(always,its code is 0b1110 )is used.
  2757. ;;; <target_address>
  2758. ;;; Specified the address to branch to. The branch target address is
  2759. ;;; calculated by:
  2760. ;;; 1. Sign-extending the 24-bit signed (two's complement) immediate
  2761. ;;; to 32 bits.
  2762. ;;; 2. Shifting the result left two bits.
  2763. ;;; 3. Adding to the contents of the PC, which contains the address
  2764. ;;; of the branch instruction plus 8.
  2765. ;;;
  2766. ;;;*****************************************************************************
  2767. ;; BROM entry point
  2768. ;; Unknown sequence of pulsing, is this related to multi-CPU?
  2769. start:
  2770. ffff2c20: e59f11bc ldr r1, [pc, #444] ; 0xffff2de4 =0x01c000a4
  2771. ffff2c24: e5912000 ldr r2, [r1]
  2772. ffff2c28: e3a03001 mov r3, #1
  2773. ffff2c2c: e1822003 orr r2, r2, r3
  2774. ffff2c30: e5812000 str r2, [r1] ; set bit 1 of undocumented register
  2775. ffff2c34: e59f11a8 ldr r1, [pc, #424] ; 0xffff2de4 =0x01c000a4
  2776. ffff2c38: e5912000 ldr r2, [r1]
  2777. ffff2c3c: e3a03002 mov r3, #2
  2778. ffff2c40: e1822003 orr r2, r2, r3
  2779. ffff2c44: e5812000 str r2, [r1] ; set bit 2 of undocumented register
  2780. ffff2c48: e3a00014 mov r0, #20 ; delay loop 20 times
  2781. .delay0:
  2782. ffff2c4c: e2500001 subs r0, r0, #1
  2783. ffff2c50: 1afffffd bne .delay0
  2784. ffff2c54: e5912000 ldr r2, [r1]
  2785. ffff2c58: e1c22003 bic r2, r2, r3
  2786. ffff2c5c: e5812000 str r2, [r1] ; clear bit 2 of undocumented register
  2787. ffff2c60: e3a0001e mov r0, #30 ; delay loop 30 times
  2788. .delay1:
  2789. ffff2c64: e2500001 subs r0, r0, #1
  2790. ffff2c68: 1afffffd bne .delay1
  2791. ffff2c6c: e5912000 ldr r2, [r1]
  2792. ffff2c70: e1822003 orr r2, r2, r3
  2793. ffff2c74: e5812000 str r2, [r1] ; set bit 2 of undocumented register
  2794. ffff2c78: e3a00014 mov r0, #20 ; delay loop 20 times
  2795. .delay2:
  2796. ffff2c7c: e2500001 subs r0, r0, #1
  2797. ffff2c80: 1afffffd bne .delay2
  2798. ffff2c84: e5912000 ldr r2, [r1]
  2799. ffff2c88: e1c22003 bic r2, r2, r3
  2800. ffff2c8c: e5812000 str r2, [r1] ; clear bit 2 of undocumented register
  2801. ffff2c90: e3a0001e mov r0, #30 ; delay loop 30 times
  2802. .delay3:
  2803. ffff2c94: e2500001 subs r0, r0, #1
  2804. ffff2c98: 1afffffd bne .delay3
  2805. ffff2c9c: e5912000 ldr r2, [r1]
  2806. ffff2ca0: e1822003 orr r2, r2, r3
  2807. ffff2ca4: e5812000 str r2, [r1] ; set bit 2 of undocumented register
  2808. ffff2ca8: e3a00014 mov r0, #20 ; delay loop 20 times
  2809. .delay4:
  2810. ffff2cac: e2500001 subs r0, r0, #1
  2811. ffff2cb0: 1afffffd bne .delay4
  2812. ffff2cb4: e59f1128 ldr r1, [pc, #296] ; 0xffff2de4 =0x01c000a4
  2813. ffff2cb8: e5912000 ldr r2, [r1]
  2814. ffff2cbc: e3a03001 mov r3, #1
  2815. ffff2cc0: e1c22003 bic r2, r2, r3
  2816. ffff2cc4: e5812000 str r2, [r1] ; clear bit 1 of undocumented register
  2817. ffff2cc8: e3a00050 mov r0, #80 ; delay loop 80 times
  2818. .delay5:
  2819. ffff2ccc: e2500001 subs r0, r0, #1
  2820. ffff2cd0: 1afffffd bne .delay5
  2821. ffff2cd4: ea000001 b .check_multi_cpu
  2822. ;; Start a CPU other than #0, which is unlikely as the V3s only features a single core
  2823. .start_non_zero:
  2824. ffff2cd8: e59f0108 ldr r0, [pc, #264] ; 0xffff2de8 =0x01f01da4 (PRIVATE0) cpu0+ (or cpu0 hotplug) entry address register?
  2825. ffff2cdc: e590f000 ldr pc, [r0]
  2826. ;; Check for multi-CPU, which is unlikely as the V3s only features a single core
  2827. ;; For system CoProcessor instructions, see https://developer.arm.com/documentation/ddi0344/k/system-control-coprocessor/system-control-coprocessor-registers/register-allocation
  2828. .check_multi_cpu:
  2829. ffff2ce0: ee100fb0 mrc 15, 0, r0, cr0, cr0, {5}; read the MPIDR (Multiprocessor ID Register) from system CoProcessor
  2830. ffff2ce4: e2000003 and r0, r0, #3
  2831. ffff2ce8: e3500000 cmp r0, #0 ; 2 LSB bits are processor #
  2832. ffff2cec: 1afffff9 bne .start_non_zero ; start non-zero core
  2833. ffff2cf0: eaffffff b .start_zero ; start core 0
  2834. ;; Start Core #0
  2835. .start_zero:
  2836. ffff2cf4: e10f0000 mrs r0, CPSR ; read current program status register
  2837. ffff2cf8: e3c0001f bic r0, r0, #31 ; load System (ARMv4+) R0-R14, CPSR, PC as MASK
  2838. ffff2cfc: e3800013 orr r0, r0, #19 ; set SVC mode (supervisor) R0-R12, R13_svc R14_svc CPSR, SPSR_IRQ, PC
  2839. ffff2d00: e38000c0 orr r0, r0, #192 ; 0xc0e: enable FIQ + IRQ interrupts
  2840. ffff2d04: e3c00c02 bic r0, r0, #512 ; set little endianess
  2841. ffff2d08: e121f000 msr CPSR_c, r0 ; write to program status regsiter
  2842. ;; Disable MMU, I and D cache and program flow prediction
  2843. ffff2d0c: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}; read CR (Control Register) from CoProcessor
  2844. ffff2d10: e3c00005 bic r0, r0, #5 ; disable MMU and data caching
  2845. ffff2d14: e3c00b06 bic r0, r0, #6144 ; 0x1800: disable program flow prediction and instruction caching
  2846. ffff2d18: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}; write to CoProcessor CR
  2847. ;; Disable watchdog
  2848. ffff2d1c: e59f10c8 ldr r1, [pc, #200] ; 0xffff2dec =0x01c20cb8 load WDT_MODE (watchdog timer) address
  2849. ffff2d20: e5912000 ldr r2, [r1] ; load WDT_MODE value
  2850. ffff2d24: e3c22001 bic r2, r2, #1 ; disable watchdog reset
  2851. ffff2d28: e5812000 str r2, [r1] ; store WDT_MODE register
  2852. ;; Configure APB1 and AHB1 clocks, APB1 clock is /4
  2853. ffff2d2c: e59f10bc ldr r1, [pc, #188] ; 0xffff2df0 =0x01c20000 load CCU base address
  2854. ffff2d30: e5912054 ldr r2, [r1, #84] ; load AHB1_APB1_CFG_REG
  2855. ffff2d34: e3a03e33 mov r3, #816 ; 0x330: APB1_CLK_RATIO = 0x11, AHB1_PRE_DIV = 0x11, AHB1_CLK_DIV_RATIO = 0x11 MASK
  2856. ffff2d38: e1c22003 bic r2, r2, r3 ; APB1_CLK_RATIO = 0x00, AHB1_PRE_DIV = 0x00, AHB1_CLK_DIV_RATIO = 0x00
  2857. ffff2d3c: e3a03c01 mov r3, #256 ; 0x100: APB1_CLK_RATIO = 0x10 (/4)
  2858. ffff2d40: e1822003 orr r2, r2, r3
  2859. ffff2d44: e5812054 str r2, [r1, #84] ; store AHB1_APB1_CFG_REG
  2860. ;; Enable DMA and PIO clock gating, reset DMA
  2861. ffff2d48: e5912060 ldr r2, [r1, #96] ; load BUS_CLK_GATING_REG0
  2862. ffff2d4c: e3a03040 mov r3, #64 ; DMA_GATING = 0x1
  2863. ffff2d50: e1822003 orr r2, r2, r3
  2864. ffff2d54: e5812060 str r2, [r1, #96] ; store BUS_CLK_GATING_REG0
  2865. ffff2d58: e5912068 ldr r2, [r1, #104] ; load BUS_CLK_GATING_REG2
  2866. ffff2d5c: e3a03020 mov r3, #32 ; PIO_GATING = 0x1
  2867. ffff2d60: e1822003 orr r2, r2, r3
  2868. ffff2d64: e5812068 str r2, [r1, #104] ; store BUS_CLK_GATING_REG2
  2869. ffff2d68: e59122c0 ldr r2, [r1, #704] ; load BUS_SOFT_RST_REG0
  2870. ffff2d6c: e3a03040 mov r3, #64 ; DMA_RST = 1
  2871. ffff2d70: e1822003 orr r2, r2, r3
  2872. ffff2d74: e58122c0 str r2, [r1, #704] ; store BUS_SOFT_RST_REG0
  2873. ;; Setup (IRQ?) stack pointer to end of SRAM A1 (16KB)
  2874. ffff2d78: e59fd074 ldr sp, [pc, #116] ; 0xffff2df4 =0x00003ffc setup stack pointer to end of SRAM A1 (16KB)
  2875. ffff2d7c: e59f3074 ldr r3, [pc, #116] ; 0xffff2df8 =0x01f01da0 (PRIVATE0) standby flag register?
  2876. ffff2d80: e5932000 ldr r2, [r3]
  2877. ffff2d84: e30f1fff movw r1, #65535 ; 0xffff
  2878. ffff2d88: e0010002 and r0, r1, r2
  2879. ffff2d8c: e30e1fe8 movw r1, #61416 ; 0xefe8
  2880. ffff2d90: e1500001 cmp r0, r1
  2881. ffff2d94: 0a000058 beq resume_from_standby
  2882. ;; Clear undocument register in System Control block
  2883. ;; Is this to enable SRAM A1 and C, and CPU I + D + L2 caches?
  2884. ;; Or is this to exit from initial IRQ context?
  2885. ffff2d98: e3a01507 mov r1, #29360128 ; 0x1c00000: undocumented register in System Control block
  2886. ffff2d9c: e3a02000 mov r2, #0
  2887. ffff2da0: e5812000 str r2, [r1]
  2888. ;; Gate the Video Engine clock and reset it: why is it done here?
  2889. ;; Is it related to SRAM C being connected to the Video Engine?
  2890. ffff2da4: e59f1050 ldr r1, [pc, #80] ; 0xffff2dfc =0x01c20064 load BUS_CLK_GATING_REG1
  2891. ffff2da8: e5912000 ldr r2, [r1]
  2892. ffff2dac: e3a03001 mov r3, #1 ; VE_GATING = 0x1
  2893. ffff2db0: e1822003 orr r2, r2, r3
  2894. ffff2db4: e5812000 str r2, [r1] ; store BUS_CLK_GTING_REG1
  2895. ffff2db8: e59f1040 ldr r1, [pc, #64] ; 0xffff2e00 =0x01c202c4 load BUS_SOFT_RST_REG1
  2896. ffff2dbc: e5912000 ldr r2, [r1]
  2897. ffff2dc0: e3a03001 mov r3, #1 ; VE_RST = 0x1
  2898. ffff2dc4: e1822003 orr r2, r2, r3
  2899. ffff2dc8: e5812000 str r2, [r1] ; store BUS_SOFT_RST_REG1
  2900. ffff2dcc: e3a00e7d mov r0, #2000 ; 0x7d0
  2901. .delay_6:
  2902. ffff2dd0: e2500001 subs r0, r0, #1
  2903. ffff2dd4: 1afffffd bne .delay_6
  2904. ;; Setup (application?) stack pointer to 4k below end of SRAM C (44KB)
  2905. ffff2dd8: e59fd024 ldr sp, [pc, #36] ; 0xffff2e04 = 0x0000dffc setup stack pointer to 4k below end of SRAM C (44KB)
  2906. ffff2ddc: eb000014 bl boot ; jump to boot
  2907. ffff2de0: eafffffe b 0xffff2de0 ; loop forever
  2908. ;; Global Offset table
  2909. ffff2de4: 01c000a4
  2910. ffff2de8: 01f01da4 ; cpu0+ (or cpu hotplug) entry address register?
  2911. ffff2dec: 01c20cb8 ; WDOG_MODE_REG
  2912. ffff2df0: 01c20000 ; CCU_BASE
  2913. ffff2df4: 00003ffc
  2914. ffff2df8: 01f01da0 ; standby flag register?
  2915. ffff2dfc: 01c20064 ; BUS_CLK_GATING_REG1
  2916. ffff2e00: 01c202c4
  2917. ffff2e04: 0000dffc
  2918. ;; Fetch the content of 0x2000 + r0 * 256 into r2, for unknow purpose
  2919. ffff2e08: e3a02000 mov r2, #0
  2920. ffff2e0c: e3a01000 mov r1, #0
  2921. ffff2e10: e3a03802 mov r3, #131072 ; 0x20000
  2922. ffff2e14: e0831400 add r1, r3, r0, lsl #8
  2923. ffff2e18: e5912000 ldr r2, [r1]
  2924. ffff2e1c: e12fff1e bx lr
  2925. jump_spl:
  2926. ffff2e20: e1a04000 mov r4, r0
  2927. ffff2e24: e1a00004 mov r0, r4
  2928. ffff2e28: eb000ce6 bl jump_to
  2929. ffff2e2c: e320f000 nop {0}
  2930. ffff2e30: eafffffe b 0xffff2e30 ; loop forever
  2931. ;; Boot sequence check
  2932. ;; Check first uboot button, it does not like it is accessible on any of the V3s pins (please let me know!)
  2933. boot:
  2934. ffff2e34: eb000cce bl check_uboot ; check if uboot button is pressed, return value in r0
  2935. ffff2e38: e1a04000 mov r4, r0 ; r4 = check_uboot();
  2936. ffff2e3c: e3540000 cmp r4, #0 ; see if check_uboot returned 0
  2937. ffff2e40: 0a000000 beq .try_boot_MMC0 ; if check_uboot was 0, try to boot from MMC0
  2938. ffff2e44: ea000026 b .boot_fel ; else boot FEL mode
  2939. .try_boot_MMC0:
  2940. ffff2e48: e3a00000 mov r0, #0
  2941. ffff2e4c: ebffffed bl 0xffff2e08
  2942. ffff2e50: e3a00000 mov r0, #0 ; r0 = 0x0; (which card_no to boot, 0 = mmc0)
  2943. ffff2e54: eb000190 bl load_boot1_from_mmc ; load SPL from mmc0
  2944. ffff2e58: e1a04000 mov r4, r0 ; r4 = load_from_mmc();
  2945. ffff2e5c: e3540000 cmp r4, #0 ; see if load_from_mmc returned 0
  2946. ffff2e60: 1a000000 bne .try_boot_NAND ; if load_from_mmc returned 0 try to boot from NAND-flash
  2947. ffff2e64: ea000021 b .boot_spl ; else skip to .boot_spl
  2948. .try_boot_NAND:
  2949. ffff2e68: e3a00001 mov r0, #1
  2950. ffff2e6c: ebffffe5 bl 0xffff2e08
  2951. ffff2e70: e3a00002 mov r0, #2
  2952. ffff2e74: eb0001b0 bl 0xffff353c ; load SPL from NAND
  2953. ffff2e78: e1a04000 mov r4, r0 ; r4 = load_from_nand();
  2954. ffff2e7c: e3540000 cmp r4, #0 ; see if load_from_nand returned 0
  2955. ffff2e80: 1a000000 bne .try_boot_MMC2 ; if load_from_nand returned 0 try to boot from MMC2
  2956. ffff2e84: ea000019 b .boot_spl ; else skip to .boot_spl
  2957. .try_boot_MMC2:
  2958. ffff2e88: e3a00002 mov r0, #2 ; r0 = 0x2; (which card_no to boot, 2 = mmc2)
  2959. ffff2e8c: eb000182 bl load_boot1_from_mmc ; load SPL from mmc2
  2960. ffff2e90: e1a04000 mov r4, r0 ; r4 = load_from_mmc();
  2961. ffff2e94: e3540000 cmp r4, #0 ; see if load_from_mmc returned 0
  2962. ffff2e98: 1a000000 bne .try_boot_SPINOR; if load_from_mmc returned 0 try to boot from SPI NOR-flash
  2963. ffff2e9c: ea000013 b .boot_spl
  2964. .try_boot_SPINOR:
  2965. ffff2ea0: e3a00002 mov r0, #2
  2966. ffff2ea4: ebffffd7 bl 0xffff2e08
  2967. ffff2ea8: eb000c2b bl 0xffff5f5c ; load SPL from SPI NOR-flash
  2968. ffff2eac: e1a04000 mov r4, r0 ; r4 = load_from_spinor();
  2969. ffff2eb0: e3540000 cmp r4, #0 ; see if load_from_spinor returned 0
  2970. ffff2eb4: 1a000000 bne 0xffff2ebc ; if load_from_spinor returned 0 boot from FEL mode (via .none_found)
  2971. ffff2eb8: ea00000c b .boot_spl ; else skip to .boot_spl
  2972. ffff2ebc: e3a00003 mov r0, #3
  2973. ffff2ec0: ebffffd0 bl 0xffff2e08
  2974. ffff2ec4: eb0000d7 bl 0xffff3228
  2975. ffff2ec8: e1a04000 mov r4, r0
  2976. ffff2ecc: e3540000 cmp r4, #0
  2977. ffff2ed0: 1a000000 bne .none_found
  2978. ffff2ed4: ea000005 b .boot_spl
  2979. .none_found:
  2980. ffff2ed8: e3a00004 mov r0, #4
  2981. ffff2edc: ebffffc9 bl 0xffff2e08
  2982. ffff2ee0: e320f000 nop {0}
  2983. .boot_fel:
  2984. ffff2ee4: e59f006c ldr r0, [pc, #108] ; 0xffff2f58 =0x0xffff0020 load interrupt vector 'fel_setup' into r0
  2985. ffff2ee8: eb000cb6 bl jump_to ; execute 'fel_setup' (via jump_to)
  2986. ffff2eec: e320f000 nop {0}
  2987. .boot_spl:
  2988. ffff2ef0: e3a010fc mov r1, #252 ; 0xfc
  2989. ffff2ef4: e3a00000 mov r0, #0
  2990. ffff2ef8: ebffffc8 bl jump_spl
  2991. resume_from_standby:
  2992. ffff2efc: e59f4058 ldr r4, [pc, #88] ; 0xffff2f5c =0x01f01da8 standby resume entry address register?
  2993. ffff2f00: e3a06000 mov r6, #0
  2994. ffff2f04: e3a05000 mov r5, #0
  2995. ffff2f08: e5946000 ldr r6, [r4]
  2996. ffff2f0c: e5965010 ldr r5, [r6, #16]
  2997. ffff2f10: e28f1048 add r1, pc, #72 ; 0x48 =0xffff2f60 "eGON.BT0"
  2998. ffff2f14: e5940000 ldr r0, [r4]
  2999. ffff2f18: eb000c45 bl check_magic ; check magic
  3000. ffff2f1c: e3500000 cmp r0, #0
  3001. ffff2f20: 1a00000b bne resume_fail
  3002. ffff2f24: e1a00005 mov r0, r5 ; value pointed by standby resume entry address register + 16
  3003. ffff2f28: e7df051f bfc r0, #10, #22 ; check if 10 MSB bits are 0 (valid address)
  3004. ffff2f2c: e3500000 cmp r0, #0
  3005. ffff2f30: 1a000007 bne resume_fail
  3006. ffff2f34: e1a01005 mov r1, r5 ; value pointed by standby resume entry address register + 16
  3007. ffff2f38: e5940000 ldr r0, [r4]
  3008. ffff2f3c: eb000c4e bl check_sum
  3009. ffff2f40: e3500000 cmp r0, #0
  3010. ffff2f44: 1a000002 bne resume_fail
  3011. ffff2f48: e3a010fc mov r1, #252 ; 0xfc
  3012. ffff2f4c: e5940000 ldr r0, [r4]
  3013. ffff2f50: ebffffb2 bl jump_spl
  3014. resume_fail:
  3015. ffff2f54: ebffffb6 bl boot
  3016. ;; Global Offset Table
  3017. ffff2f58: ffff0020
  3018. ffff2f5c: 01f01da8 ; standby resume entry address register?
  3019. ffff2f60: 4e4f4765 .ascii "eGON"
  3020. ffff2f64: 3054422e .asci ".BT0"
  3021. ffff2f68: 00000000
  3022. ffff2f6c: e92d4070 push {r4, r5, r6, lr}
  3023. ffff2f70: e1a03000 mov r3, r0
  3024. ffff2f74: e3520000 cmp r2, #0
  3025. ffff2f78: 1a00000b bne 0xffff2fac
  3026. ffff2f7c: e3510002 cmp r1, #2
  3027. ffff2f80: 2a000007 bcs 0xffff2fa4
  3028. ffff2f84: e59f0058 ldr r0, [pc, #88] ; 0xffff2fe4 =0xffff61cc
  3029. ffff2f88: e7b04201 ldr r4, [r0, r1, lsl #4]!
  3030. ffff2f8c: e9900060 ldmib r0, {r5, r6}
  3031. ffff2f90: e590000c ldr r0, [r0, #12]
  3032. ffff2f94: e583000c str r0, [r3, #12]
  3033. ffff2f98: e8830070 stm r3, {r4, r5, r6}
  3034. ffff2f9c: e3a00000 mov r0, #0
  3035. ffff2fa0: e8bd8070 pop {r4, r5, r6, pc}
  3036. ffff2fa4: e3e00000 mvn r0, #0
  3037. ffff2fa8: eafffffc b 0xffff2fa0
  3038. ffff2fac: e3520001 cmp r2, #1
  3039. ffff2fb0: 1a000009 bne 0xffff2fdc
  3040. ffff2fb4: e3510004 cmp r1, #4
  3041. ffff2fb8: 2a000005 bcs 0xffff2fd4
  3042. ffff2fbc: e59f0024 ldr r0, [pc, #36] ; 0xffff2fe8 =0xffff61ec
  3043. ffff2fc0: e0806201 add r6, r0, r1, lsl #4
  3044. ffff2fc4: e8960071 ldm r6, {r0, r4, r5, r6}
  3045. ffff2fc8: e8830071 stm r3, {r0, r4, r5, r6}
  3046. ffff2fcc: e3a00000 mov r0, #0
  3047. ffff2fd0: eafffff2 b 0xffff2fa0
  3048. ffff2fd4: e3e00000 mvn r0, #0
  3049. ffff2fd8: eafffff0 b 0xffff2fa0
  3050. ffff2fdc: e3e00000 mvn r0, #0
  3051. ffff2fe0: eaffffee b 0xffff2fa0
  3052. ;; Global Offset Table
  3053. ffff2fe4: ffff61cc
  3054. ffff2fe8: ffff61ec
  3055. ffff2fec: e92d4ff0 push {r4, r5, r6, r7, r8, r9, sl, fp, lr}
  3056. ffff2ff0: e24dd024 sub sp, sp, #36 ; 0x24
  3057. ffff2ff4: eb000a1f bl 0xffff5878
  3058. ffff2ff8: eb000b4d bl 0xffff5d34
  3059. ffff2ffc: e3a06000 mov r6, #0
  3060. ffff3000: ea00003f b 0xffff3104
  3061. ffff3004: e3a0a020 mov sl, #32
  3062. ffff3008: ea00003a b 0xffff30f8
  3063. ffff300c: e3a02001 mov r2, #1
  3064. ffff3010: e1a01006 mov r1, r6
  3065. ffff3014: e28d000c add r0, sp, #12
  3066. ffff3018: ebffffd3 bl 0xffff2f6c
  3067. ffff301c: e1a09000 mov r9, r0
  3068. ffff3020: e3790001 cmn r9, #1
  3069. ffff3024: 1a000000 bne 0xffff302c
  3070. ffff3028: ea000031 b 0xffff30f4
  3071. ffff302c: e59d000c ldr r0, [sp, #12]
  3072. ffff3030: e58d0020 str r0, [sp, #32]
  3073. ffff3034: e59d4010 ldr r4, [sp, #16]
  3074. ffff3038: e59d7018 ldr r7, [sp, #24]
  3075. ffff303c: e59d8014 ldr r8, [sp, #20]
  3076. ffff3040: e88d0110 stm sp, {r4, r8}
  3077. ffff3044: e58d7008 str r7, [sp, #8]
  3078. ffff3048: e3a02001 mov r2, #1
  3079. ffff304c: e3a01000 mov r1, #0
  3080. ffff3050: e1a0000a mov r0, sl
  3081. ffff3054: e59d3020 ldr r3, [sp, #32]
  3082. ffff3058: eb000b46 bl 0xffff5d78
  3083. ffff305c: e3500002 cmp r0, #2
  3084. ffff3060: 1a000000 bne 0xffff3068
  3085. ffff3064: ea000022 b 0xffff30f4
  3086. ffff3068: e28f1f7b add r1, pc, #492 ; 0x1ec =0xffff325c "eGON.BT0"
  3087. ffff306c: e3a00000 mov r0, #0
  3088. ffff3070: eb000bef bl check_magic
  3089. ffff3074: e3500000 cmp r0, #0
  3090. ffff3078: 0a000000 beq 0xffff3080
  3091. ffff307c: ea00001c b 0xffff30f4
  3092. ffff3080: e3a0b000 mov fp, #0
  3093. ffff3084: e59b5010 ldr r5, [fp, #16]
  3094. ffff3088: e2440001 sub r0, r4, #1
  3095. ffff308c: e1100005 tst r0, r5
  3096. ffff3090: 0a000000 beq 0xffff3098
  3097. ffff3094: ea000016 b 0xffff30f4
  3098. ffff3098: e730f415 udiv r0, r5, r4
  3099. ffff309c: e58d001c str r0, [sp, #28]
  3100. ffff30a0: e88d0110 stm sp, {r4, r8}
  3101. ffff30a4: e58d7008 str r7, [sp, #8]
  3102. ffff30a8: e3a01000 mov r1, #0
  3103. ffff30ac: e1a0000a mov r0, sl
  3104. ffff30b0: e1cd21dc ldrd r2, [sp, #28]
  3105. ffff30b4: eb000b2f bl 0xffff5d78
  3106. ffff30b8: e3500002 cmp r0, #2
  3107. ffff30bc: 1a000000 bne 0xffff30c4
  3108. ffff30c0: ea00000b b 0xffff30f4
  3109. ffff30c4: e1a01005 mov r1, r5
  3110. ffff30c8: e3a00000 mov r0, #0
  3111. ffff30cc: eb000bea bl check_sum
  3112. ffff30d0: e3500000 cmp r0, #0
  3113. ffff30d4: 1a000005 bne 0xffff30f0
  3114. ffff30d8: e3a00003 mov r0, #3
  3115. ffff30dc: e5cb0028 strb r0, [fp, #40] ; 0x28
  3116. ffff30e0: eb000a08 bl 0xffff5908
  3117. ffff30e4: e3a00000 mov r0, #0
  3118. ffff30e8: e28dd024 add sp, sp, #36 ; 0x24
  3119. ffff30ec: e8bd8ff0 pop {r4, r5, r6, r7, r8, r9, sl, fp, pc}
  3120. ffff30f0: e320f000 nop {0}
  3121. ffff30f4: e28aa020 add sl, sl, #32
  3122. ffff30f8: e35a0c01 cmp sl, #256 ; 0x100
  3123. ffff30fc: 3affffc2 bcc 0xffff300c
  3124. ffff3100: e2866001 add r6, r6, #1
  3125. ffff3104: e3560004 cmp r6, #4
  3126. ffff3108: 3affffbd bcc 0xffff3004
  3127. ffff310c: eb0009fd bl 0xffff5908
  3128. ffff3110: e3e00000 mvn r0, #0
  3129. ffff3114: eafffff3 b 0xffff30e8
  3130. ffff3118: e92d4ff0 push {r4, r5, r6, r7, r8, r9, sl, fp, lr}
  3131. ffff311c: e24dd024 sub sp, sp, #36 ; 0x24
  3132. ffff3120: eb0009d4 bl 0xffff5878
  3133. ffff3124: eb000b02 bl 0xffff5d34
  3134. ffff3128: e3a06000 mov r6, #0
  3135. ffff312c: ea000038 b 0xffff3214
  3136. ffff3130: e3a02000 mov r2, #0
  3137. ffff3134: e1a01006 mov r1, r6
  3138. ffff3138: e28d0010 add r0, sp, #16
  3139. ffff313c: ebffff8a bl 0xffff2f6c
  3140. ffff3140: e1a09000 mov r9, r0
  3141. ffff3144: e3790001 cmn r9, #1
  3142. ffff3148: 1a000000 bne 0xffff3150
  3143. ffff314c: ea00002f b 0xffff3210
  3144. ffff3150: e59db010 ldr fp, [sp, #16]
  3145. ffff3154: e59d4014 ldr r4, [sp, #20]
  3146. ffff3158: e59d801c ldr r8, [sp, #28]
  3147. ffff315c: e59d7018 ldr r7, [sp, #24]
  3148. ffff3160: e1a0300b mov r3, fp
  3149. ffff3164: e3a02001 mov r2, #1
  3150. ffff3168: e3a01000 mov r1, #0
  3151. ffff316c: e1a00001 mov r0, r1
  3152. ffff3170: e88d0190 stm sp, {r4, r7, r8}
  3153. ffff3174: eb000aff bl 0xffff5d78
  3154. ffff3178: e3500002 cmp r0, #2
  3155. ffff317c: 1a000000 bne 0xffff3184
  3156. ffff3180: ea000022 b 0xffff3210
  3157. ffff3184: e28f10d0 add r1, pc, #208 ; 0xd0 =0xffff325c "eGON.BT0"
  3158. ffff3188: e3a00000 mov r0, #0
  3159. ffff318c: eb000ba8 bl check_magic
  3160. ffff3190: e3500000 cmp r0, #0
  3161. ffff3194: 0a000000 beq 0xffff319c
  3162. ffff3198: ea00001c b 0xffff3210
  3163. ffff319c: e3a0a000 mov sl, #0
  3164. ffff31a0: e59a5010 ldr r5, [sl, #16]
  3165. ffff31a4: e2440001 sub r0, r4, #1
  3166. ffff31a8: e1100005 tst r0, r5
  3167. ffff31ac: 0a000000 beq 0xffff31b4
  3168. ffff31b0: ea000016 b 0xffff3210
  3169. ffff31b4: e730f415 udiv r0, r5, r4
  3170. ffff31b8: e58d0020 str r0, [sp, #32]
  3171. ffff31bc: e1a0300b mov r3, fp
  3172. ffff31c0: e88d0190 stm sp, {r4, r7, r8}
  3173. ffff31c4: e3a01000 mov r1, #0
  3174. ffff31c8: e1a00001 mov r0, r1
  3175. ffff31cc: e59d2020 ldr r2, [sp, #32]
  3176. ffff31d0: eb000ae8 bl 0xffff5d78
  3177. ffff31d4: e3500002 cmp r0, #2
  3178. ffff31d8: 1a000000 bne 0xffff31e0
  3179. ffff31dc: ea00000b b 0xffff3210
  3180. ffff31e0: e1a01005 mov r1, r5
  3181. ffff31e4: e3a00000 mov r0, #0
  3182. ffff31e8: eb000ba3 bl check_sum
  3183. ffff31ec: e3500000 cmp r0, #0
  3184. ffff31f0: 1a000005 bne 0xffff320c
  3185. ffff31f4: e3a00003 mov r0, #3
  3186. ffff31f8: e5ca0028 strb r0, [sl, #40] ; 0x28
  3187. ffff31fc: eb0009c1 bl 0xffff5908
  3188. ffff3200: e3a00000 mov r0, #0
  3189. ffff3204: e28dd024 add sp, sp, #36 ; 0x24
  3190. ffff3208: e8bd8ff0 pop {r4, r5, r6, r7, r8, r9, sl, fp, pc}
  3191. ffff320c: e320f000 nop {0}
  3192. ffff3210: e2866001 add r6, r6, #1
  3193. ffff3214: e3560002 cmp r6, #2
  3194. ffff3218: 3affffc4 bcc 0xffff3130
  3195. ffff321c: eb0009b9 bl 0xffff5908
  3196. ffff3220: e3e00000 mvn r0, #0
  3197. ffff3224: eafffff6 b 0xffff3204
  3198. ffff3228: e92d4010 push {r4, lr}
  3199. ffff322c: ebffffb9 bl 0xffff3118
  3200. ffff3230: e3500000 cmp r0, #0
  3201. ffff3234: 1a000001 bne 0xffff3240
  3202. ffff3238: e3a00000 mov r0, #0
  3203. ffff323c: e8bd8010 pop {r4, pc}
  3204. ffff3240: ebffff69 bl 0xffff2fec
  3205. ffff3244: e3500000 cmp r0, #0
  3206. ffff3248: 1a000001 bne 0xffff3254
  3207. ffff324c: e3a00000 mov r0, #0
  3208. ffff3250: eafffff9 b 0xffff323c
  3209. ffff3254: e3e00000 mvn r0, #0
  3210. ffff3258: eafffff7 b 0xffff323c
  3211. ffff325c: 4e4f4765 .ascii "eGON"
  3212. ffff3260: 3054422e .ascii ".BT0"
  3213. ffff3264: 00000000 .word 0
  3214. ;;;*****************************************************************************
  3215. memcpy:
  3216. ffff3268: e92d4030 push {r4, r5, lr}
  3217. ffff326c: e1a03000 mov r3, r0
  3218. ffff3270: e3a00000 mov r0, #0
  3219. ffff3274: e1a04003 mov r4, r3
  3220. ffff3278: e1a0c001 mov ip, r1
  3221. ffff327c: e320f000 nop {0}
  3222. ffff3280: ea000002 b 0xffff3290
  3223. ffff3284: e7dc5000 ldrb r5, [ip, r0]
  3224. ffff3288: e7c45000 strb r5, [r4, r0]
  3225. ffff328c: e2800001 add r0, r0, #1
  3226. ffff3290: e1500002 cmp r0, r2
  3227. ffff3294: 3afffffa bcc 0xffff3284
  3228. ffff3298: e8bd8030 pop {r4, r5, pc}
  3229. ;;;*****************************************************************************
  3230. memset: ; r0 = dest, r1 = value, r2 = size
  3231. ffff329c: e92d4010 push {r4, lr}
  3232. ffff32a0: e1a03000 mov r3, r0
  3233. ffff32a4: e3a00000 mov r0, #0
  3234. ffff32a8: e1a0c003 mov ip, r3
  3235. ffff32ac: e320f000 nop {0}
  3236. ffff32b0: ea000001 b 0xffff32bc
  3237. ffff32b4: e7cc1000 strb r1, [ip, r0]
  3238. ffff32b8: e2800001 add r0, r0, #1
  3239. ffff32bc: e1500002 cmp r0, r2
  3240. ffff32c0: 3afffffb bcc 0xffff32b4
  3241. ffff32c4: e8bd8010 pop {r4, pc}
  3242. ;;;*****************************************************************************
  3243. memcmp: ; r0 = src, r1 = dest, r2 = size
  3244. ffff32c8: e92d4010 push {r4, lr}
  3245. ffff32cc: e1a03000 mov r3, r0
  3246. ffff32d0: e1a0c001 mov ip, r1
  3247. ffff32d4: e3a01000 mov r1, #0
  3248. ffff32d8: e320f000 nop {0}
  3249. ffff32dc: ea000006 b 0xffff32fc
  3250. ffff32e0: e7d30001 ldrb r0, [r3, r1]
  3251. ffff32e4: e7dc4001 ldrb r4, [ip, r1]
  3252. ffff32e8: e1500004 cmp r0, r4
  3253. ffff32ec: 0a000001 beq 0xffff32f8
  3254. ffff32f0: e3e00000 mvn r0, #0
  3255. ffff32f4: e8bd8010 pop {r4, pc}
  3256. ffff32f8: e2811001 add r1, r1, #1
  3257. ffff32fc: e1510002 cmp r1, r2
  3258. ffff3300: 3afffff6 bcc 0xffff32e0
  3259. ffff3304: e3a00000 mov r0, #0
  3260. ffff3308: eafffff9 b 0xffff32f4
  3261. ;;;*****************************************************************************
  3262. ffff330c: e92d47f0 push {r4, r5, r6, r7, r8, r9, sl, lr}
  3263. ffff3310: e1a07000 mov r7, r0
  3264. ffff3314: e1a06001 mov r6, r1
  3265. ffff3318: e1a08002 mov r8, r2
  3266. ffff331c: e3e09000 mvn r9, #0
  3267. ffff3320: e3a04000 mov r4, #0
  3268. ffff3324: e3a05000 mov r5, #0
  3269. ffff3328: e3a0a000 mov sl, #0
  3270. ffff332c: e3560000 cmp r6, #0
  3271. ffff3330: 1a000001 bne 0xffff333c
  3272. ffff3334: e3a0a010 mov sl, #16
  3273. ffff3338: ea000006 b 0xffff3358
  3274. ffff333c: e3560001 cmp r6, #1
  3275. ffff3340: 1a000001 bne 0xffff334c
  3276. ffff3344: e300a100 movw sl, #256 ; 0x100
  3277. ffff3348: ea000002 b 0xffff3358
  3278. ffff334c: e3e09000 mvn r9, #0
  3279. ffff3350: e1a00009 mov r0, r9
  3280. ffff3354: e8bd87f0 pop {r4, r5, r6, r7, r8, r9, sl, pc}
  3281. ffff3358: e3a03000 mov r3, #0
  3282. ffff335c: e3a02001 mov r2, #1
  3283. ffff3360: e1a0100a mov r1, sl
  3284. ffff3364: e1a00008 mov r0, r8
  3285. ffff3368: eb00085c bl 0xffff54e0
  3286. ffff336c: e3500001 cmp r0, #1
  3287. ffff3370: 0a00000c beq 0xffff33a8
  3288. ffff3374: e59f12fc ldr r1, [pc, #764] ; 0xffff3678 =0x005b8d80
  3289. ffff3378: e1a00008 mov r0, r8
  3290. ffff337c: eb00067e bl 0xffff4d7c
  3291. ffff3380: e3a03000 mov r3, #0
  3292. ffff3384: e3a02001 mov r2, #1
  3293. ffff3388: e1a0100a mov r1, sl
  3294. ffff338c: e1a00008 mov r0, r8
  3295. ffff3390: eb000852 bl 0xffff54e0
  3296. ffff3394: e3500001 cmp r0, #1
  3297. ffff3398: 0a000002 beq 0xffff33a8
  3298. ffff339c: e3e09000 mvn r9, #0
  3299. ffff33a0: e1a00009 mov r0, r9
  3300. ffff33a4: eaffffea b 0xffff3354
  3301. ffff33a8: e28f1fb3 add r1, pc, #716 ; 0x2cc = 0xffff367c "eGON.BT0"
  3302. ffff33ac: e3a00000 mov r0, #0
  3303. ffff33b0: eb000b1f bl check_magic
  3304. ffff33b4: e3500000 cmp r0, #0
  3305. ffff33b8: 0a000002 beq 0xffff33c8
  3306. ffff33bc: e3e09000 mvn r9, #0
  3307. ffff33c0: e1a00009 mov r0, r9
  3308. ffff33c4: eaffffe2 b 0xffff3354
  3309. ffff33c8: e3a05000 mov r5, #0
  3310. ffff33cc: e5954010 ldr r4, [r5, #16]
  3311. ffff33d0: e3540902 cmp r4, #32768 ; 0x8000
  3312. ffff33d4: 8a000003 bhi 0xffff33e8
  3313. ffff33d8: e1a00004 mov r0, r4
  3314. ffff33dc: e7df049f bfc r0, #9, #23
  3315. ffff33e0: e3500000 cmp r0, #0
  3316. ffff33e4: 0a000002 beq 0xffff33f4
  3317. ffff33e8: e3e09000 mvn r9, #0
  3318. ffff33ec: e1a00009 mov r0, r9
  3319. ffff33f0: eaffffd7 b 0xffff3354
  3320. ffff33f4: e1a024a4 lsr r2, r4, #9
  3321. ffff33f8: e3a03000 mov r3, #0
  3322. ffff33fc: e1a0100a mov r1, sl
  3323. ffff3400: e1a00008 mov r0, r8
  3324. ffff3404: eb000835 bl 0xffff54e0
  3325. ffff3408: e15004a4 cmp r0, r4, lsr #9
  3326. ffff340c: 0a00000c beq 0xffff3444
  3327. ffff3410: e59f1260 ldr r1, [pc, #608] ; 0xffff3678 =0x005b8d80
  3328. ffff3414: e1a00008 mov r0, r8
  3329. ffff3418: eb000657 bl 0xffff4d7c
  3330. ffff341c: e1a024a4 lsr r2, r4, #9
  3331. ffff3420: e3a03000 mov r3, #0
  3332. ffff3424: e1a0100a mov r1, sl
  3333. ffff3428: e1a00008 mov r0, r8
  3334. ffff342c: eb00082b bl 0xffff54e0
  3335. ffff3430: e15004a4 cmp r0, r4, lsr #9
  3336. ffff3434: 0a000002 beq 0xffff3444
  3337. ffff3438: e3e09000 mvn r9, #0
  3338. ffff343c: e1a00009 mov r0, r9
  3339. ffff3440: eaffffc3 b 0xffff3354
  3340. ffff3444: e1a01004 mov r1, r4
  3341. ffff3448: e3a00000 mov r0, #0
  3342. ffff344c: eb000b0a bl check_sum
  3343. ffff3450: e3500000 cmp r0, #0
  3344. ffff3454: 1a00000d bne 0xffff3490
  3345. ffff3458: e3570000 cmp r7, #0
  3346. ffff345c: 1a000002 bne 0xffff346c
  3347. ffff3460: e3a00000 mov r0, #0
  3348. ffff3464: e5c50028 strb r0, [r5, #40] ; 0x28
  3349. ffff3468: ea000003 b 0xffff347c
  3350. ffff346c: e3570002 cmp r7, #2
  3351. ffff3470: 1a000001 bne 0xffff347c
  3352. ffff3474: e3a00002 mov r0, #2
  3353. ffff3478: e5c50028 strb r0, [r5, #40] ; 0x28
  3354. ffff347c: e5d50028 ldrb r0, [r5, #40] ; 0x28
  3355. ffff3480: e1800206 orr r0, r0, r6, lsl #4
  3356. ffff3484: e5c50028 strb r0, [r5, #40] ; 0x28
  3357. ffff3488: e3a09000 mov r9, #0
  3358. ffff348c: ea000000 b 0xffff3494
  3359. ffff3490: e3e09000 mvn r9, #0
  3360. ffff3494: e1a00009 mov r0, r9
  3361. ffff3498: eaffffad b 0xffff3354
  3362. ;;;*****************************************************************************
  3363. load_boot1_from_mmc: ; r0 = card_no
  3364. ffff349c: e92d4030 push {r4, r5, lr}
  3365. ffff34a0: e24dd064 sub sp, sp, #100 ; allocate local variables
  3366. ffff34a4: e1a05000 mov r5, r0 ; save card_no in r5
  3367. ffff34a8: e3e04000 mvn r4, #0 ; -1
  3368. ffff34ac: e3a0204c mov r2, #76 ; length
  3369. ffff34b0: e3a01000 mov r1, #0 ; value
  3370. ffff34b4: e28d0018 add r0, sp, #24 ; dest
  3371. ffff34b8: ebffff77 bl memset
  3372. ffff34bc: e3a02018 mov r2, #24 ; length
  3373. ffff34c0: e3a01000 mov r1, #0 ; value
  3374. ffff34c4: e1a0000d mov r0, sp ; dest
  3375. ffff34c8: ebffff73 bl memset
  3376. ffff34cc: e58dd018 str sp, [sp, #24]
  3377. ffff34d0: e28d1018 add r1, sp, #24
  3378. ffff34d4: e1a00005 mov r0, r5 ; r0 = card_no, r1 = structure
  3379. ffff34d8: eb00088e bl 0xffff5718
  3380. ffff34dc: e1a04000 mov r4, r0
  3381. ffff34e0: e3540000 cmp r4, #0
  3382. ffff34e4: 0a000001 beq 0xffff34f0
  3383. ffff34e8: e3e04000 mvn r4, #0
  3384. ffff34ec: ea00000c b 0xffff3524
  3385. ffff34f0: e28d2018 add r2, sp, #24
  3386. ffff34f4: e3a01000 mov r1, #0
  3387. ffff34f8: e1a00005 mov r0, r5
  3388. ffff34fc: ebffff82 bl 0xffff330c
  3389. ffff3500: e1a04000 mov r4, r0
  3390. ffff3504: e3540000 cmp r4, #0
  3391. ffff3508: 0a000004 beq 0xffff3520
  3392. ffff350c: e28d2018 add r2, sp, #24
  3393. ffff3510: e3a01001 mov r1, #1
  3394. ffff3514: e1a00005 mov r0, r5
  3395. ffff3518: ebffff7b bl 0xffff330c
  3396. ffff351c: e1a04000 mov r4, r0
  3397. ffff3520: e320f000 nop {0}
  3398. ffff3524: e28d1018 add r1, sp, #24
  3399. ffff3528: e1a00005 mov r0, r5
  3400. ffff352c: eb0008b9 bl 0xffff5818
  3401. ffff3530: e1a00004 mov r0, r4
  3402. ffff3534: e28dd064 add sp, sp, #100 ; 0x64
  3403. ffff3538: e8bd8030 pop {r4, r5, pc}
  3404. ffff353c: e92d40f0 push {r4, r5, r6, r7, lr}
  3405. ffff3540: e24dd064 sub sp, sp, #100 ; 0x64
  3406. ffff3544: e1a06000 mov r6, r0
  3407. ffff3548: e3e07000 mvn r7, #0
  3408. ffff354c: e3a0204c mov r2, #76 ; 0x4c
  3409. ffff3550: e3a01000 mov r1, #0
  3410. ffff3554: e28d0018 add r0, sp, #24
  3411. ffff3558: ebffff4f bl memset
  3412. ffff355c: e3a02018 mov r2, #24
  3413. ffff3560: e3a01000 mov r1, #0
  3414. ffff3564: e1a0000d mov r0, sp
  3415. ffff3568: ebffff4b bl memset
  3416. ffff356c: e58dd018 str sp, [sp, #24]
  3417. ffff3570: e28d1018 add r1, sp, #24
  3418. ffff3574: e1a00006 mov r0, r6
  3419. ffff3578: eb000884 bl 0xffff5790
  3420. ffff357c: e3500000 cmp r0, #0
  3421. ffff3580: 0a000001 beq 0xffff358c
  3422. ffff3584: e320f000 nop {0}
  3423. ffff3588: ea000034 b 0xffff3660
  3424. ffff358c: e3a03000 mov r3, #0
  3425. ffff3590: e3a02001 mov r2, #1
  3426. ffff3594: e1a01003 mov r1, r3
  3427. ffff3598: e28d0018 add r0, sp, #24
  3428. ffff359c: eb0007f2 bl 0xffff556c
  3429. ffff35a0: e3500001 cmp r0, #1
  3430. ffff35a4: 0a000001 beq 0xffff35b0
  3431. ffff35a8: e3e07000 mvn r7, #0
  3432. ffff35ac: ea00002b b 0xffff3660
  3433. ffff35b0: e28f10c4 add r1, pc, #196 ; 0xc4 =0xffff367c "eGON.BT0"
  3434. ffff35b4: e3a00000 mov r0, #0
  3435. ffff35b8: eb000a9d bl check_magic
  3436. ffff35bc: e3500000 cmp r0, #0
  3437. ffff35c0: 0a000001 beq 0xffff35cc
  3438. ffff35c4: e3e07000 mvn r7, #0
  3439. ffff35c8: ea000024 b 0xffff3660
  3440. ffff35cc: e3a05000 mov r5, #0
  3441. ffff35d0: e5954010 ldr r4, [r5, #16]
  3442. ffff35d4: e3540902 cmp r4, #32768 ; 0x8000
  3443. ffff35d8: 8a000003 bhi 0xffff35ec
  3444. ffff35dc: e1a00004 mov r0, r4
  3445. ffff35e0: e7df049f bfc r0, #9, #23
  3446. ffff35e4: e3500000 cmp r0, #0
  3447. ffff35e8: 0a000001 beq 0xffff35f4
  3448. ffff35ec: e3e07000 mvn r7, #0
  3449. ffff35f0: ea00001a b 0xffff3660
  3450. ffff35f4: e1a024a4 lsr r2, r4, #9
  3451. ffff35f8: e3a03000 mov r3, #0
  3452. ffff35fc: e1a01003 mov r1, r3
  3453. ffff3600: e28d0018 add r0, sp, #24
  3454. ffff3604: eb0007d8 bl 0xffff556c
  3455. ffff3608: e15004a4 cmp r0, r4, lsr #9
  3456. ffff360c: 0a000001 beq 0xffff3618
  3457. ffff3610: e3e07000 mvn r7, #0
  3458. ffff3614: ea000011 b 0xffff3660
  3459. ffff3618: e1a01004 mov r1, r4
  3460. ffff361c: e3a00000 mov r0, #0
  3461. ffff3620: eb000a95 bl check_sum
  3462. ffff3624: e3500000 cmp r0, #0
  3463. ffff3628: 1a00000a bne 0xffff3658
  3464. ffff362c: e3560000 cmp r6, #0
  3465. ffff3630: 1a000002 bne 0xffff3640
  3466. ffff3634: e3a00000 mov r0, #0
  3467. ffff3638: e5c50028 strb r0, [r5, #40] ; 0x28
  3468. ffff363c: ea000003 b 0xffff3650
  3469. ffff3640: e3560002 cmp r6, #2
  3470. ffff3644: 1a000001 bne 0xffff3650
  3471. ffff3648: e3a00002 mov r0, #2
  3472. ffff364c: e5c50028 strb r0, [r5, #40] ; 0x28
  3473. ffff3650: e3a07000 mov r7, #0
  3474. ffff3654: ea000000 b 0xffff365c
  3475. ffff3658: e3e07000 mvn r7, #0
  3476. ffff365c: e320f000 nop {0}
  3477. ffff3660: e28d1018 add r1, sp, #24
  3478. ffff3664: e1a00006 mov r0, r6
  3479. ffff3668: eb00086a bl 0xffff5818
  3480. ffff366c: e1a00007 mov r0, r7
  3481. ffff3670: e28dd064 add sp, sp, #100 ; 0x64
  3482. ffff3674: e8bd80f0 pop {r4, r5, r6, r7, pc}
  3483. ;; Global Offset Table
  3484. ffff3678: 005b8d80
  3485. ffff367c: 4e4f4765 .ascii "eGON"
  3486. ffff3680: 3054422e .ascii ".BT0"
  3487. ffff3684: 00000000
  3488. ffff3688: e3a00001 mov r0, #1
  3489. ffff368c: e59f1e64 ldr r1, [pc, #3684] ; 0xffff44f8 =0x01c20cd0 CNT64_TEST_REG
  3490. ffff3690: e5810000 str r0, [r1]
  3491. ffff3694: e12fff1e bx lr
  3492. ;;;*****************************************************************************
  3493. get_counter:
  3494. ffff3698: e92d4030 push {r4, r5, lr}
  3495. ffff369c: e320f000 nop {0}
  3496. ffff36a0: e3a00002 mov r0, #2
  3497. ffff36a4: e59f1e4c ldr r1, [pc, #3660] ; 0xffff44f8 =0x01c20cd0 CNT64_TEST_REG
  3498. ffff36a8: e5810000 str r0, [r1] ; CNT64_RL_EN = 0x1
  3499. ffff36ac: e1810100 orr r0, r1, r0, lsl #2 ; r0 = 0x01c20cd8 CNT64_HIGH_REG
  3500. ffff36b0: e5902000 ldr r2, [r0] ; load CNT64_HIGH_REG
  3501. ffff36b4: e1a03002 mov r3, r2
  3502. ffff36b8: e3a02000 mov r2, #0
  3503. ffff36bc: e2400004 sub r0, r0, #4 ; r0 = 0x01c20cd4 CNT64_LOW_REG
  3504. ffff36c0: e5900000 ldr r0, [r0] ; load CNT64_LOW_REG
  3505. ffff36c4: e1822000 orr r2, r2, r0
  3506. ffff36c8: e1a00002 mov r0, r2
  3507. ffff36cc: e1a01003 mov r1, r3
  3508. ffff36d0: e8bd8030 pop {r4, r5, pc} ; r0 = CNT64_LOW, r1 = CNT64_HIGH
  3509. ;;;*****************************************************************************
  3510. ffff36d4: e92d4ff0 push {r4, r5, r6, r7, r8, r9, sl, fp, lr}
  3511. ffff36d8: e1a04000 mov r4, r0
  3512. ffff36dc: e1a05001 mov r5, r1
  3513. ffff36e0: e1a01185 lsl r1, r5, #3
  3514. ffff36e4: e1810ea4 orr r0, r1, r4, lsr #29
  3515. ffff36e8: e1a01184 lsl r1, r4, #3
  3516. ffff36ec: e1a03205 lsl r3, r5, #4
  3517. ffff36f0: e1832e24 orr r2, r3, r4, lsr #28
  3518. ffff36f4: e1a03204 lsl r3, r4, #4
  3519. ffff36f8: e091a003 adds sl, r1, r3
  3520. ffff36fc: e0a0b002 adc fp, r0, r2
  3521. ffff3700: ebffffe4 bl get_counter
  3522. ffff3704: e1a08000 mov r8, r0
  3523. ffff3708: e1a09001 mov r9, r1
  3524. ffff370c: e320f000 nop {0}
  3525. ffff3710: ebffffe0 bl get_counter
  3526. ffff3714: e0506008 subs r6, r0, r8
  3527. ffff3718: e0c17009 sbc r7, r1, r9
  3528. ffff371c: e056000a subs r0, r6, sl
  3529. ffff3720: e0d7000b sbcs r0, r7, fp
  3530. ffff3724: 3afffff9 bcc 0xffff3710
  3531. ffff3728: e8bd8ff0 pop {r4, r5, r6, r7, r8, r9, sl, fp, pc}
  3532. ffff372c: e92d4030 push {r4, r5, lr}
  3533. ffff3730: e1a04000 mov r4, r0
  3534. ffff3734: e1a05001 mov r5, r1
  3535. ffff3738: ea000002 b 0xffff3748
  3536. ffff373c: e3000320 movw r0, #800 ; 0x320
  3537. ffff3740: e3a01000 mov r1, #0
  3538. ffff3744: ebffffe2 bl 0xffff36d4
  3539. ffff3748: e1a01004 mov r1, r4
  3540. ffff374c: e1a00005 mov r0, r5
  3541. ffff3750: e2544001 subs r4, r4, #1
  3542. ffff3754: e2c55000 sbc r5, r5, #0
  3543. ffff3758: e3a03000 mov r3, #0
  3544. ffff375c: e0211003 eor r1, r1, r3
  3545. ffff3760: e0200003 eor r0, r0, r3
  3546. ffff3764: e1900001 orrs r0, r0, r1
  3547. ffff3768: 1afffff3 bne 0xffff373c
  3548. ffff376c: e8bd8030 pop {r4, r5, pc}
  3549. ;;;*****************************************************************************
  3550. init_SDC:
  3551. ffff3770: e3500002 cmp r0, #2 ; r0 = card_no, r1 = structure
  3552. ffff3774: 1a00001d bne .init_SDC0 ; SDC0
  3553. .init_SDC2:
  3554. ffff3778: e59f2d7c ldr r2, [pc, #3452] ; 0xffff44fc =0b01 01 01 01 01 01 01 01 01 01 01
  3555. ffff377c: e59f3d7c ldr r3, [pc, #3452] ; 0xffff4500 =0x01c20864 PC_PUL0
  3556. ffff3780: e5832000 str r2, [r3] ; enable pull-up on PC0-10
  3557. ffff3784: e59f2d78 ldr r2, [pc, #3448] ; 0xffff4504 =0b10 10 10 10 10 10 10 10
  3558. ffff3788: e243301c sub r3, r3, #28 ; PC_CFG0_REG
  3559. ffff378c: e5832000 str r2, [r3] ; configure PC as SDC2 function
  3560. ffff3790: e3002222 movw r2, #546 ; 0x222
  3561. ffff3794: e18331c2 orr r3, r3, r2, asr #3 ; PC_CFG1_REG
  3562. ffff3798: e5832000 str r2, [r3] ; configure PC as SDC2 function
  3563. ffff379c: e59f2d64 ldr r2, [pc, #3428] ; 0xffff4508 =0x01c20000 CCU_BASE
  3564. ffff37a0: e59222c0 ldr r2, [r2, #704] ; 0x2c0 0x01c202c0
  3565. ffff37a4: e3822b01 orr r2, r2, #1024 ; 0x400
  3566. ffff37a8: e59f3d58 ldr r3, [pc, #3416] ; 0xffff4508 =0x01c20000 CCU_BASE
  3567. ffff37ac: e58322c0 str r2, [r3, #704] ; 0x2c0 0x01c202c0
  3568. ffff37b0: e1a02003 mov r2, r3
  3569. ffff37b4: e5922060 ldr r2, [r2, #96] ; 0x60
  3570. ffff37b8: e3822b01 orr r2, r2, #1024 ; 0x400
  3571. ffff37bc: e5832060 str r2, [r3, #96] ; 0x60
  3572. ffff37c0: e3a02102 mov r2, #-2147483648 ; 0x80000000
  3573. ffff37c4: e5832090 str r2, [r3, #144] ; 0x90
  3574. ffff37c8: e2432a0f sub r2, r3, #61440 ; 0xf000
  3575. ffff37cc: e5812000 str r2, [r1]
  3576. ffff37d0: e5912000 ldr r2, [r1]
  3577. ffff37d4: e2822c02 add r2, r2, #512 ; 0x200
  3578. ffff37d8: e5812010 str r2, [r1, #16]
  3579. ffff37dc: e2832090 add r2, r3, #144 ; 0x90
  3580. ffff37e0: e5812008 str r2, [r1, #8]
  3581. ffff37e4: e59f2d20 ldr r2, [pc, #3360] ; 0xffff450c =0x016e3600
  3582. ffff37e8: e581200c str r2, [r1, #12]
  3583. ffff37ec: ea000019 b 0xffff3858
  3584. .init_SDC0:
  3585. ffff37f0: e3002565 movw r2, #1381 ; 0x565 =0b00 01 01 01 10 01 01
  3586. ffff37f4: e59f3d14 ldr r3, [pc, #3348] ; 0xffff4510 =0x01c208d0 PF_PUL0
  3587. ffff37f8: e5832000 str r2, [r3] ; enable pull-down on PF2, enable pull-up on PF0-1/PF3-5, disable pull-up/down on PF6
  3588. ffff37fc: e59f2d10 ldr r2, [pc, #3344] ; 0xffff4514 =0b111 0 010 0 010 0 010 0 010 0 010 0 010
  3589. ffff3800: e0433b42 sub r3, r3, r2, asr #22 ; PF_CFG0_REG
  3590. ffff3804: e5832000 str r2, [r3] ; configure PF as SDC0 function except for PF6
  3591. ffff3808: e59f2cf8 ldr r2, [pc, #3320] ; 0xffff4508 =0x01c20000 CCU_BASE
  3592. ffff380c: e59222c0 ldr r2, [r2, #704] ; 0x2c0
  3593. ffff3810: e3822c01 orr r2, r2, #256 ; 0x100
  3594. ffff3814: e59f3cec ldr r3, [pc, #3308] ; 0xffff4508 =0x01c20000 CCU_BASE
  3595. ffff3818: e58322c0 str r2, [r3, #704] ; 0x2c0
  3596. ffff381c: e1a02003 mov r2, r3
  3597. ffff3820: e5922060 ldr r2, [r2, #96] ; 0x60
  3598. ffff3824: e3822c01 orr r2, r2, #256 ; 0x100
  3599. ffff3828: e5832060 str r2, [r3, #96] ; 0x60
  3600. ffff382c: e3a02102 mov r2, #-2147483648 ; 0x80000000
  3601. ffff3830: e5832088 str r2, [r3, #136] ; 0x88
  3602. ffff3834: e2432a11 sub r2, r3, #69632 ; 0x11000
  3603. ffff3838: e5812000 str r2, [r1]
  3604. ffff383c: e5912000 ldr r2, [r1]
  3605. ffff3840: e2822c02 add r2, r2, #512 ; 0x200
  3606. ffff3844: e5812010 str r2, [r1, #16]
  3607. ffff3848: e2832088 add r2, r3, #136 ; 0x88
  3608. ffff384c: e5812008 str r2, [r1, #8]
  3609. ffff3850: e59f2cb4 ldr r2, [pc, #3252] ; 0xffff450c =0x016e3600
  3610. ffff3854: e581200c str r2, [r1, #12]
  3611. ffff3858: e3a02000 mov r2, #0
  3612. ffff385c: e5812004 str r2, [r1, #4]
  3613. ffff3860: e12fff1e bx lr
  3614. ;;;*****************************************************************************
  3615. ffff3864: e3500002 cmp r0, #2
  3616. ffff3868: 1a000019 bne 0xffff38d4
  3617. ffff386c: e59f2ca4 ldr r2, [pc, #3236] ; 0xffff4518 =0x77777777
  3618. ffff3870: e59f3ca4 ldr r3, [pc, #3236] ; 0xffff451c =0x01c20848 PC_CFG0
  3619. ffff3874: e5832000 str r2, [r3]
  3620. ffff3878: e2833004 add r3, r3, #4
  3621. ffff387c: e5832000 str r2, [r3]
  3622. ffff3880: e3002777 movw r2, #1911 ; 0x777
  3623. ffff3884: e2833004 add r3, r3, #4
  3624. ffff3888: e5832000 str r2, [r3]
  3625. ffff388c: e3052140 movw r2, #20800 ; 0x5140
  3626. ffff3890: e0833542 add r3, r3, r2, asr #10
  3627. ffff3894: e5832000 str r2, [r3]
  3628. ffff3898: e3a02014 mov r2, #20
  3629. ffff389c: e2833004 add r3, r3, #4
  3630. ffff38a0: e5832000 str r2, [r3]
  3631. ffff38a4: e3a02000 mov r2, #0
  3632. ffff38a8: e59f3c58 ldr r3, [pc, #3160] ; 0xffff4508 =0x01c20000 CCU_BASE
  3633. ffff38ac: e5832090 str r2, [r3, #144] ; 0x90
  3634. ffff38b0: e1c32002 bic r2, r3, r2
  3635. ffff38b4: e5922060 ldr r2, [r2, #96] ; 0x60
  3636. ffff38b8: e3c22b01 bic r2, r2, #1024 ; 0x400
  3637. ffff38bc: e5832060 str r2, [r3, #96] ; 0x60
  3638. ffff38c0: e1a02003 mov r2, r3
  3639. ffff38c4: e59222c0 ldr r2, [r2, #704] ; 0x2c0
  3640. ffff38c8: e3c22b01 bic r2, r2, #1024 ; 0x400
  3641. ffff38cc: e58322c0 str r2, [r3, #704] ; 0x2c0
  3642. ffff38d0: ea00000f b 0xffff3914
  3643. ffff38d4: e59f2c44 ldr r2, [pc, #3140] ; 0xffff4520 =0x07373733
  3644. ffff38d8: e59f3c44 ldr r3, [pc, #3140] ; 0xffff4524 =0x01c208b4 PF_CFG0
  3645. ffff38dc: e5832000 str r2, [r3]
  3646. ffff38e0: e3a02000 mov r2, #0
  3647. ffff38e4: e283301c add r3, r3, #28
  3648. ffff38e8: e5832000 str r2, [r3]
  3649. ffff38ec: e2433e8d sub r3, r3, #2256 ; 0x8d0
  3650. ffff38f0: e5832088 str r2, [r3, #136] ; 0x88
  3651. ffff38f4: e1c32002 bic r2, r3, r2
  3652. ffff38f8: e5922060 ldr r2, [r2, #96] ; 0x60
  3653. ffff38fc: e3c22c01 bic r2, r2, #256 ; 0x100
  3654. ffff3900: e5832060 str r2, [r3, #96] ; 0x60
  3655. ffff3904: e1a02003 mov r2, r3
  3656. ffff3908: e59222c0 ldr r2, [r2, #704] ; 0x2c0
  3657. ffff390c: e3c22c01 bic r2, r2, #256 ; 0x100
  3658. ffff3910: e58322c0 str r2, [r3, #704] ; 0x2c0
  3659. ffff3914: e12fff1e bx lr
  3660. ffff3918: e92d4070 push {r4, r5, r6, lr}
  3661. ffff391c: e1a02000 mov r2, r0
  3662. ffff3920: e5924000 ldr r4, [r2]
  3663. ffff3924: e5941000 ldr r1, [r4]
  3664. ffff3928: e3003190 movw r3, #400 ; 0x190
  3665. ffff392c: e59f5bf4 ldr r5, [pc, #3060] ; 0xffff4528 =0x80202000
  3666. ffff3930: e5815018 str r5, [r1, #24]
  3667. ffff3934: e320f000 nop {0}
  3668. ffff3938: e5910018 ldr r0, [r1, #24]
  3669. ffff393c: e3100102 tst r0, #-2147483648 ; 0x80000000
  3670. ffff3940: 0a000002 beq 0xffff3950
  3671. ffff3944: e1b00003 movs r0, r3
  3672. ffff3948: e2433001 sub r3, r3, #1
  3673. ffff394c: 1afffff9 bne 0xffff3938
  3674. ffff3950: e3530000 cmp r3, #0
  3675. ffff3954: ca000001 bgt 0xffff3960
  3676. ffff3958: e3e00000 mvn r0, #0
  3677. ffff395c: e8bd8070 pop {r4, r5, r6, pc}
  3678. ffff3960: e3e00000 mvn r0, #0
  3679. ffff3964: e5810038 str r0, [r1, #56] ; 0x38
  3680. ffff3968: e3a00000 mov r0, #0
  3681. ffff396c: eafffffa b 0xffff395c
  3682. ffff3970: e92d4ffe push {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, lr}
  3683. ffff3974: e1a0a000 mov sl, r0
  3684. ffff3978: e59a0000 ldr r0, [sl]
  3685. ffff397c: e58d0008 str r0, [sp, #8]
  3686. ffff3980: e59d0008 ldr r0, [sp, #8]
  3687. ffff3984: e5900000 ldr r0, [r0]
  3688. ffff3988: e58d0004 str r0, [sp, #4]
  3689. ffff398c: e3a00000 mov r0, #0
  3690. ffff3990: e58d0000 str r0, [sp]
  3691. ffff3994: e3a0b000 mov fp, #0
  3692. ffff3998: e320f000 nop {0}
  3693. ffff399c: e320f000 nop {0}
  3694. ffff39a0: e320f000 nop {0}
  3695. ffff39a4: ebffff3b bl get_counter
  3696. ffff39a8: e1a08000 mov r8, r0
  3697. ffff39ac: e1a09001 mov r9, r1
  3698. ffff39b0: e30f6fff movw r6, #65535 ; 0xffff
  3699. ffff39b4: e3a07000 mov r7, #0
  3700. ffff39b8: e320f000 nop {0}
  3701. ffff39bc: ebffff35 bl get_counter
  3702. ffff39c0: e0504008 subs r4, r0, r8
  3703. ffff39c4: e0c15009 sbc r5, r1, r9
  3704. ffff39c8: e59d0004 ldr r0, [sp, #4]
  3705. ffff39cc: e590b000 ldr fp, [r0]
  3706. ffff39d0: e31b0007 tst fp, #7
  3707. ffff39d4: 1a000001 bne 0xffff39e0
  3708. ffff39d8: e3a00000 mov r0, #0
  3709. ffff39dc: e8bd8ffe pop {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, pc}
  3710. ffff39e0: e0540006 subs r0, r4, r6
  3711. ffff39e4: e0d50007 sbcs r0, r5, r7
  3712. ffff39e8: 3afffff3 bcc 0xffff39bc
  3713. ffff39ec: e0540006 subs r0, r4, r6
  3714. ffff39f0: e0d50007 sbcs r0, r5, r7
  3715. ffff39f4: 3a000005 bcc 0xffff3a10
  3716. ffff39f8: e31b0007 tst fp, #7
  3717. ffff39fc: 0a000003 beq 0xffff3a10
  3718. ffff3a00: e3e00006 mvn r0, #6
  3719. ffff3a04: e58d0000 str r0, [sp]
  3720. ffff3a08: e59d0000 ldr r0, [sp]
  3721. ffff3a0c: eafffff2 b 0xffff39dc
  3722. ffff3a10: e3a00000 mov r0, #0
  3723. ffff3a14: eafffff0 b 0xffff39dc
  3724. ffff3a18: e92d43f0 push {r4, r5, r6, r7, r8, r9, lr}
  3725. ffff3a1c: e1a07000 mov r7, r0
  3726. ffff3a20: e1a05001 mov r5, r1
  3727. ffff3a24: e5974000 ldr r4, [r7]
  3728. ffff3a28: e5948000 ldr r8, [r4]
  3729. ffff3a2c: e3a09000 mov r9, #0
  3730. ffff3a30: e3a06010 mov r6, #16
  3731. ffff3a34: e320f000 nop {0}
  3732. ffff3a38: e5889004 str r9, [r8, #4]
  3733. ffff3a3c: e1a00007 mov r0, r7
  3734. ffff3a40: ebffffb4 bl 0xffff3918
  3735. ffff3a44: e3500000 cmp r0, #0
  3736. ffff3a48: 0a000001 beq 0xffff3a54
  3737. ffff3a4c: e3e00000 mvn r0, #0
  3738. ffff3a50: e8bd83f0 pop {r4, r5, r6, r7, r8, r9, pc}
  3739. ffff3a54: e3a00000 mov r0, #0
  3740. ffff3a58: e5941008 ldr r1, [r4, #8]
  3741. ffff3a5c: e5810000 str r0, [r1]
  3742. ffff3a60: e3a06010 mov r6, #16
  3743. ffff3a64: e320f000 nop {0}
  3744. ffff3a68: e1b00006 movs r0, r6
  3745. ffff3a6c: e2466001 sub r6, r6, #1
  3746. ffff3a70: 1afffffc bne 0xffff3a68
  3747. ffff3a74: e59f0ab0 ldr r0, [pc, #2736] ; 0xffff452c
  3748. ffff3a78: e1550000 cmp r5, r0
  3749. ffff3a7c: 8a000003 bhi 0xffff3a90
  3750. ffff3a80: e59f0aa8 ldr r0, [pc, #2728] ; 0xffff4530
  3751. ffff3a84: e5941008 ldr r1, [r4, #8]
  3752. ffff3a88: e5810000 str r0, [r1]
  3753. ffff3a8c: ea000009 b 0xffff3ab8
  3754. ffff3a90: e59f0a9c ldr r0, [pc, #2716] ; 0xffff4534
  3755. ffff3a94: e1550000 cmp r5, r0
  3756. ffff3a98: 8a000003 bhi 0xffff3aac
  3757. ffff3a9c: e3a00802 mov r0, #131072 ; 0x20000
  3758. ffff3aa0: e5941008 ldr r1, [r4, #8]
  3759. ffff3aa4: e5810000 str r0, [r1]
  3760. ffff3aa8: ea000002 b 0xffff3ab8
  3761. ffff3aac: e3a00801 mov r0, #65536 ; 0x10000
  3762. ffff3ab0: e5941008 ldr r1, [r4, #8]
  3763. ffff3ab4: e5810000 str r0, [r1]
  3764. ffff3ab8: e3a06010 mov r6, #16
  3765. ffff3abc: e320f000 nop {0}
  3766. ffff3ac0: e1b00006 movs r0, r6
  3767. ffff3ac4: e2466001 sub r6, r6, #1
  3768. ffff3ac8: 1afffffc bne 0xffff3ac0
  3769. ffff3acc: e5940008 ldr r0, [r4, #8]
  3770. ffff3ad0: e5900000 ldr r0, [r0]
  3771. ffff3ad4: e3800102 orr r0, r0, #-2147483648 ; 0x80000000
  3772. ffff3ad8: e5941008 ldr r1, [r4, #8]
  3773. ffff3adc: e5810000 str r0, [r1]
  3774. ffff3ae0: e3a06010 mov r6, #16
  3775. ffff3ae4: e320f000 nop {0}
  3776. ffff3ae8: e1b00006 movs r0, r6
  3777. ffff3aec: e2466001 sub r6, r6, #1
  3778. ffff3af0: 1afffffc bne 0xffff3ae8
  3779. ffff3af4: e3a09801 mov r9, #65536 ; 0x10000
  3780. ffff3af8: e5889004 str r9, [r8, #4]
  3781. ffff3afc: e1a00007 mov r0, r7
  3782. ffff3b00: ebffff84 bl 0xffff3918
  3783. ffff3b04: e3500000 cmp r0, #0
  3784. ffff3b08: 0a000001 beq 0xffff3b14
  3785. ffff3b0c: e3e00000 mvn r0, #0
  3786. ffff3b10: eaffffce b 0xffff3a50
  3787. ffff3b14: e3a00000 mov r0, #0
  3788. ffff3b18: eaffffcc b 0xffff3a50
  3789. ffff3b1c: e92d4070 push {r4, r5, r6, lr}
  3790. ffff3b20: e1a04000 mov r4, r0
  3791. ffff3b24: e5946000 ldr r6, [r4]
  3792. ffff3b28: e5965000 ldr r5, [r6]
  3793. ffff3b2c: e3a00000 mov r0, #0
  3794. ffff3b30: e5850078 str r0, [r5, #120] ; 0x78
  3795. ffff3b34: e3a0001e mov r0, #30
  3796. ffff3b38: e3a01000 mov r1, #0
  3797. ffff3b3c: ebfffee4 bl 0xffff36d4
  3798. ffff3b40: e3a00001 mov r0, #1
  3799. ffff3b44: e5850078 str r0, [r5, #120] ; 0x78
  3800. ffff3b48: e300012c movw r0, #300 ; 0x12c
  3801. ffff3b4c: e3a01000 mov r1, #0
  3802. ffff3b50: ebfffedf bl 0xffff36d4
  3803. ffff3b54: e8bd8070 pop {r4, r5, r6, pc}
  3804. ffff3b58: e92d4070 push {r4, r5, r6, lr}
  3805. ffff3b5c: e1a04000 mov r4, r0
  3806. ffff3b60: e5946000 ldr r6, [r4]
  3807. ffff3b64: e5965000 ldr r5, [r6]
  3808. ffff3b68: e594001c ldr r0, [r4, #28]
  3809. ffff3b6c: e3500000 cmp r0, #0
  3810. ffff3b70: 0a000007 beq 0xffff3b94
  3811. ffff3b74: e594101c ldr r1, [r4, #28]
  3812. ffff3b78: e1a00004 mov r0, r4
  3813. ffff3b7c: ebffffa5 bl 0xffff3a18
  3814. ffff3b80: e3500000 cmp r0, #0
  3815. ffff3b84: 0a000002 beq 0xffff3b94
  3816. ffff3b88: e3a00001 mov r0, #1
  3817. ffff3b8c: e5860014 str r0, [r6, #20]
  3818. ffff3b90: e8bd8070 pop {r4, r5, r6, pc}
  3819. ffff3b94: e5940018 ldr r0, [r4, #24]
  3820. ffff3b98: e3500004 cmp r0, #4
  3821. ffff3b9c: 1a000002 bne 0xffff3bac
  3822. ffff3ba0: e3a00001 mov r0, #1
  3823. ffff3ba4: e585000c str r0, [r5, #12]
  3824. ffff3ba8: ea000007 b 0xffff3bcc
  3825. ffff3bac: e5940018 ldr r0, [r4, #24]
  3826. ffff3bb0: e3500008 cmp r0, #8
  3827. ffff3bb4: 1a000002 bne 0xffff3bc4
  3828. ffff3bb8: e3a00002 mov r0, #2
  3829. ffff3bbc: e585000c str r0, [r5, #12]
  3830. ffff3bc0: ea000001 b 0xffff3bcc
  3831. ffff3bc4: e3a00000 mov r0, #0
  3832. ffff3bc8: e585000c str r0, [r5, #12]
  3833. ffff3bcc: e320f000 nop {0}
  3834. ffff3bd0: eaffffee b 0xffff3b90
  3835. ffff3bd4: e92d40f0 push {r4, r5, r6, r7, lr}
  3836. ffff3bd8: e1a05000 mov r5, r0
  3837. ffff3bdc: e5957000 ldr r7, [r5]
  3838. ffff3be0: e5974000 ldr r4, [r7]
  3839. ffff3be4: e3a00007 mov r0, #7
  3840. ffff3be8: e5840000 str r0, [r4]
  3841. ffff3bec: e1a00005 mov r0, r5
  3842. ffff3bf0: ebffff5e bl 0xffff3970
  3843. ffff3bf4: e1a06000 mov r6, r0
  3844. ffff3bf8: e3560000 cmp r6, #0
  3845. ffff3bfc: 0a000001 beq 0xffff3c08
  3846. ffff3c00: e1a00006 mov r0, r6
  3847. ffff3c04: e8bd80f0 pop {r4, r5, r6, r7, pc}
  3848. ffff3c08: e59f0928 ldr r0, [pc, #2344] ; 0xffff4538
  3849. ffff3c0c: e5840040 str r0, [r4, #64] ; 0x40
  3850. ffff3c10: e3a00000 mov r0, #0
  3851. ffff3c14: e5840030 str r0, [r4, #48] ; 0x30
  3852. ffff3c18: e3e00000 mvn r0, #0
  3853. ffff3c1c: e5840038 str r0, [r4, #56] ; 0x38
  3854. ffff3c20: e30003ff movw r0, #1023 ; 0x3ff
  3855. ffff3c24: e5840088 str r0, [r4, #136] ; 0x88
  3856. ffff3c28: e3000deb movw r0, #3563 ; 0xdeb
  3857. ffff3c2c: e5840050 str r0, [r4, #80] ; 0x50
  3858. ffff3c30: e3e00000 mvn r0, #0
  3859. ffff3c34: e5840008 str r0, [r4, #8]
  3860. ffff3c38: e3a00000 mov r0, #0
  3861. ffff3c3c: eafffff0 b 0xffff3c04
  3862. ffff3c40: e92d43f0 push {r4, r5, r6, r7, r8, r9, lr}
  3863. ffff3c44: e1a07000 mov r7, r0
  3864. ffff3c48: e5974000 ldr r4, [r7]
  3865. ffff3c4c: e5945000 ldr r5, [r4]
  3866. ffff3c50: e3a02000 mov r2, #0
  3867. ffff3c54: e591000c ldr r0, [r1, #12]
  3868. ffff3c58: e5918008 ldr r8, [r1, #8]
  3869. ffff3c5c: e00c0890 mul ip, r0, r8
  3870. ffff3c60: e59f68d4 ldr r6, [pc, #2260] ; 0xffff453c
  3871. ffff3c64: e3a0e000 mov lr, #0
  3872. ffff3c68: e5910004 ldr r0, [r1, #4]
  3873. ffff3c6c: e3100001 tst r0, #1
  3874. ffff3c70: 0a00001c beq 0xffff3ce8
  3875. ffff3c74: e5913000 ldr r3, [r1]
  3876. ffff3c78: e320f000 nop {0}
  3877. ffff3c7c: ea000016 b 0xffff3cdc
  3878. ffff3c80: e595003c ldr r0, [r5, #60] ; 0x3c
  3879. ffff3c84: e3100004 tst r0, #4
  3880. ffff3c88: 1a00000e bne 0xffff3cc8
  3881. ffff3c8c: e595003c ldr r0, [r5, #60] ; 0x3c
  3882. ffff3c90: e7e4e8d0 ubfx lr, r0, #17, #5
  3883. ffff3c94: e35e0000 cmp lr, #0
  3884. ffff3c98: 1a000000 bne 0xffff3ca0
  3885. ffff3c9c: e3a0e020 mov lr, #32
  3886. ffff3ca0: ea000005 b 0xffff3cbc
  3887. ffff3ca4: e5940010 ldr r0, [r4, #16]
  3888. ffff3ca8: e5908000 ldr r8, [r0]
  3889. ffff3cac: e1a00002 mov r0, r2
  3890. ffff3cb0: e2822001 add r2, r2, #1
  3891. ffff3cb4: e7838100 str r8, [r3, r0, lsl #2]
  3892. ffff3cb8: e59f687c ldr r6, [pc, #2172] ; 0xffff453c
  3893. ffff3cbc: e1b0000e movs r0, lr
  3894. ffff3cc0: e24ee001 sub lr, lr, #1
  3895. ffff3cc4: 1afffff6 bne 0xffff3ca4
  3896. ffff3cc8: e1b00006 movs r0, r6
  3897. ffff3ccc: e2466001 sub r6, r6, #1
  3898. ffff3cd0: 1a000001 bne 0xffff3cdc
  3899. ffff3cd4: e3e00000 mvn r0, #0
  3900. ffff3cd8: e8bd83f0 pop {r4, r5, r6, r7, r8, r9, pc}
  3901. ffff3cdc: e152012c cmp r2, ip, lsr #2
  3902. ffff3ce0: 3affffe6 bcc 0xffff3c80
  3903. ffff3ce4: ea000014 b 0xffff3d3c
  3904. ffff3ce8: e5913000 ldr r3, [r1]
  3905. ffff3cec: e3a02000 mov r2, #0
  3906. ffff3cf0: ea00000f b 0xffff3d34
  3907. ffff3cf4: e320f000 nop {0}
  3908. ffff3cf8: e2460001 sub r0, r6, #1
  3909. ffff3cfc: e1b06000 movs r6, r0
  3910. ffff3d00: 0a000002 beq 0xffff3d10
  3911. ffff3d04: e595003c ldr r0, [r5, #60] ; 0x3c
  3912. ffff3d08: e3100008 tst r0, #8
  3913. ffff3d0c: 1afffff9 bne 0xffff3cf8
  3914. ffff3d10: e3560000 cmp r6, #0
  3915. ffff3d14: ca000001 bgt 0xffff3d20
  3916. ffff3d18: e3e00000 mvn r0, #0
  3917. ffff3d1c: eaffffed b 0xffff3cd8
  3918. ffff3d20: e7930102 ldr r0, [r3, r2, lsl #2]
  3919. ffff3d24: e5948010 ldr r8, [r4, #16]
  3920. ffff3d28: e5880000 str r0, [r8]
  3921. ffff3d2c: e59f680c ldr r6, [pc, #2060] ; 0xffff4540
  3922. ffff3d30: e2822001 add r2, r2, #1
  3923. ffff3d34: e152012c cmp r2, ip, lsr #2
  3924. ffff3d38: 3affffed bcc 0xffff3cf4
  3925. ffff3d3c: e3a00000 mov r0, #0
  3926. ffff3d40: eaffffe4 b 0xffff3cd8
  3927. ffff3d44: e92d4ff3 push {r0, r1, r4, r5, r6, r7, r8, r9, sl, fp, lr}
  3928. ffff3d48: e24dd014 sub sp, sp, #20
  3929. ffff3d4c: e1a07001 mov r7, r1
  3930. ffff3d50: e59d0014 ldr r0, [sp, #20]
  3931. ffff3d54: e5900000 ldr r0, [r0]
  3932. ffff3d58: e58d0010 str r0, [sp, #16]
  3933. ffff3d5c: e59d0010 ldr r0, [sp, #16]
  3934. ffff3d60: e5906000 ldr r6, [r0]
  3935. ffff3d64: e59d0010 ldr r0, [sp, #16]
  3936. ffff3d68: e5904004 ldr r4, [r0, #4]
  3937. ffff3d6c: e597000c ldr r0, [r7, #12]
  3938. ffff3d70: e5971008 ldr r1, [r7, #8]
  3939. ffff3d74: e0000190 mul r0, r0, r1
  3940. ffff3d78: e58d000c str r0, [sp, #12]
  3941. ffff3d7c: e3a000ff mov r0, #255 ; 0xff
  3942. ffff3d80: e58d0008 str r0, [sp, #8]
  3943. ffff3d84: e3a05000 mov r5, #0
  3944. ffff3d88: e3a0a000 mov sl, #0
  3945. ffff3d8c: e3a00000 mov r0, #0
  3946. ffff3d90: e58d0000 str r0, [sp]
  3947. ffff3d94: e3a08000 mov r8, #0
  3948. ffff3d98: e5970004 ldr r0, [r7, #4]
  3949. ffff3d9c: e3100001 tst r0, #1
  3950. ffff3da0: 0a000001 beq 0xffff3dac
  3951. ffff3da4: e5970000 ldr r0, [r7]
  3952. ffff3da8: ea000000 b 0xffff3db0
  3953. ffff3dac: e5970000 ldr r0, [r7]
  3954. ffff3db0: e58d0004 str r0, [sp, #4]
  3955. ffff3db4: e59d000c ldr r0, [sp, #12]
  3956. ffff3db8: e1a0a7a0 lsr sl, r0, #15
  3957. ffff3dbc: e59d000c ldr r0, [sp, #12]
  3958. ffff3dc0: e7df079f bfc r0, #15, #17
  3959. ffff3dc4: e58d0000 str r0, [sp]
  3960. ffff3dc8: e59d0000 ldr r0, [sp]
  3961. ffff3dcc: e3500000 cmp r0, #0
  3962. ffff3dd0: 0a000001 beq 0xffff3ddc
  3963. ffff3dd4: e28aa001 add sl, sl, #1
  3964. ffff3dd8: ea000001 b 0xffff3de4
  3965. ffff3ddc: e3080000 movw r0, #32768 ; 0x8000
  3966. ffff3de0: e58d0000 str r0, [sp]
  3967. ffff3de4: e3a08000 mov r8, #0
  3968. ffff3de8: ea000045 b 0xffff3f04
  3969. ffff3dec: e0840205 add r0, r4, r5, lsl #4
  3970. ffff3df0: e3a01000 mov r1, #0
  3971. ffff3df4: e5801000 str r1, [r0]
  3972. ffff3df8: e5801004 str r1, [r0, #4]
  3973. ffff3dfc: e5801008 str r1, [r0, #8]
  3974. ffff3e00: e580100c str r1, [r0, #12]
  3975. ffff3e04: e7940205 ldr r0, [r4, r5, lsl #4]
  3976. ffff3e08: e3c00010 bic r0, r0, #16
  3977. ffff3e0c: e2800010 add r0, r0, #16
  3978. ffff3e10: e7840205 str r0, [r4, r5, lsl #4]
  3979. ffff3e14: e7940205 ldr r0, [r4, r5, lsl #4]
  3980. ffff3e18: e3c00102 bic r0, r0, #-2147483648 ; 0x80000000
  3981. ffff3e1c: e2800102 add r0, r0, #-2147483648 ; 0x80000000
  3982. ffff3e20: e7840205 str r0, [r4, r5, lsl #4]
  3983. ffff3e24: e7940205 ldr r0, [r4, r5, lsl #4]
  3984. ffff3e28: e3c00002 bic r0, r0, #2
  3985. ffff3e2c: e2800002 add r0, r0, #2
  3986. ffff3e30: e7840205 str r0, [r4, r5, lsl #4]
  3987. ffff3e34: e35a0001 cmp sl, #1
  3988. ffff3e38: 9a000009 bls 0xffff3e64
  3989. ffff3e3c: e24a0001 sub r0, sl, #1
  3990. ffff3e40: e1500008 cmp r0, r8
  3991. ffff3e44: 0a000006 beq 0xffff3e64
  3992. ffff3e48: e3080000 movw r0, #32768 ; 0x8000
  3993. ffff3e4c: e0841205 add r1, r4, r5, lsl #4
  3994. ffff3e50: e5911004 ldr r1, [r1, #4]
  3995. ffff3e54: e7cf1010 bfi r1, r0, #0, #16
  3996. ffff3e58: e0840205 add r0, r4, r5, lsl #4
  3997. ffff3e5c: e5801004 str r1, [r0, #4]
  3998. ffff3e60: ea000005 b 0xffff3e7c
  3999. ffff3e64: e0841205 add r1, r4, r5, lsl #4
  4000. ffff3e68: e59d0000 ldr r0, [sp]
  4001. ffff3e6c: e5911004 ldr r1, [r1, #4]
  4002. ffff3e70: e7cf1010 bfi r1, r0, #0, #16
  4003. ffff3e74: e0840205 add r0, r4, r5, lsl #4
  4004. ffff3e78: e5801004 str r1, [r0, #4]
  4005. ffff3e7c: e59d0004 ldr r0, [sp, #4]
  4006. ffff3e80: e0800788 add r0, r0, r8, lsl #15
  4007. ffff3e84: e0841205 add r1, r4, r5, lsl #4
  4008. ffff3e88: e5810008 str r0, [r1, #8]
  4009. ffff3e8c: e3580000 cmp r8, #0
  4010. ffff3e90: 1a000003 bne 0xffff3ea4
  4011. ffff3e94: e7940205 ldr r0, [r4, r5, lsl #4]
  4012. ffff3e98: e3c00008 bic r0, r0, #8
  4013. ffff3e9c: e2800008 add r0, r0, #8
  4014. ffff3ea0: e7840205 str r0, [r4, r5, lsl #4]
  4015. ffff3ea4: e24a0001 sub r0, sl, #1
  4016. ffff3ea8: e1500008 cmp r0, r8
  4017. ffff3eac: 1a00000e bne 0xffff3eec
  4018. ffff3eb0: e7940205 ldr r0, [r4, r5, lsl #4]
  4019. ffff3eb4: e3c00002 bic r0, r0, #2
  4020. ffff3eb8: e7840205 str r0, [r4, r5, lsl #4]
  4021. ffff3ebc: e7940205 ldr r0, [r4, r5, lsl #4]
  4022. ffff3ec0: e3c00004 bic r0, r0, #4
  4023. ffff3ec4: e2800004 add r0, r0, #4
  4024. ffff3ec8: e7840205 str r0, [r4, r5, lsl #4]
  4025. ffff3ecc: e7940205 ldr r0, [r4, r5, lsl #4]
  4026. ffff3ed0: e3c00020 bic r0, r0, #32
  4027. ffff3ed4: e2800020 add r0, r0, #32
  4028. ffff3ed8: e7840205 str r0, [r4, r5, lsl #4]
  4029. ffff3edc: e3a00000 mov r0, #0
  4030. ffff3ee0: e0841205 add r1, r4, r5, lsl #4
  4031. ffff3ee4: e581000c str r0, [r1, #12]
  4032. ffff3ee8: ea000003 b 0xffff3efc
  4033. ffff3eec: e2850001 add r0, r5, #1
  4034. ffff3ef0: e0840200 add r0, r4, r0, lsl #4
  4035. ffff3ef4: e0841205 add r1, r4, r5, lsl #4
  4036. ffff3ef8: e581000c str r0, [r1, #12]
  4037. ffff3efc: e2888001 add r8, r8, #1
  4038. ffff3f00: e2855001 add r5, r5, #1
  4039. ffff3f04: e158000a cmp r8, sl
  4040. ffff3f08: 3affffb7 bcc 0xffff3dec
  4041. ffff3f0c: e5969000 ldr r9, [r6]
  4042. ffff3f10: e3890024 orr r0, r9, #36 ; 0x24
  4043. ffff3f14: e5860000 str r0, [r6]
  4044. ffff3f18: e59d0014 ldr r0, [sp, #20]
  4045. ffff3f1c: ebfffe93 bl 0xffff3970
  4046. ffff3f20: e1a0b000 mov fp, r0
  4047. ffff3f24: e35b0000 cmp fp, #0
  4048. ffff3f28: 0a000002 beq 0xffff3f38
  4049. ffff3f2c: e1a0000b mov r0, fp
  4050. ffff3f30: e28dd01c add sp, sp, #28
  4051. ffff3f34: e8bd8ff0 pop {r4, r5, r6, r7, r8, r9, sl, fp, pc}
  4052. ffff3f38: e3a00001 mov r0, #1
  4053. ffff3f3c: e5860080 str r0, [r6, #128] ; 0x80
  4054. ffff3f40: e320f000 nop {0}
  4055. ffff3f44: e5960080 ldr r0, [r6, #128] ; 0x80
  4056. ffff3f48: e3100001 tst r0, #1
  4057. ffff3f4c: 1a000000 bne 0xffff3f54
  4058. ffff3f50: ea000005 b 0xffff3f6c
  4059. ffff3f54: e59d0008 ldr r0, [sp, #8]
  4060. ffff3f58: e2400001 sub r0, r0, #1
  4061. ffff3f5c: e58d0008 str r0, [sp, #8]
  4062. ffff3f60: e59d0008 ldr r0, [sp, #8]
  4063. ffff3f64: e3500000 cmp r0, #0
  4064. ffff3f68: cafffff5 bgt 0xffff3f44
  4065. ffff3f6c: e320f000 nop {0}
  4066. ffff3f70: e59d0008 ldr r0, [sp, #8]
  4067. ffff3f74: e3500000 cmp r0, #0
  4068. ffff3f78: 1a000001 bne 0xffff3f84
  4069. ffff3f7c: e3e00006 mvn r0, #6
  4070. ffff3f80: eaffffea b 0xffff3f30
  4071. ffff3f84: e3a00082 mov r0, #130 ; 0x82
  4072. ffff3f88: e5860080 str r0, [r6, #128] ; 0x80
  4073. ffff3f8c: e596008c ldr r0, [r6, #140] ; 0x8c
  4074. ffff3f90: e3c09003 bic r9, r0, #3
  4075. ffff3f94: e5970004 ldr r0, [r7, #4]
  4076. ffff3f98: e3100002 tst r0, #2
  4077. ffff3f9c: 0a000001 beq 0xffff3fa8
  4078. ffff3fa0: e3899001 orr r9, r9, #1
  4079. ffff3fa4: ea000000 b 0xffff3fac
  4080. ffff3fa8: e3899002 orr r9, r9, #2
  4081. ffff3fac: e586908c str r9, [r6, #140] ; 0x8c
  4082. ffff3fb0: e5864084 str r4, [r6, #132] ; 0x84
  4083. ffff3fb4: e59f0588 ldr r0, [pc, #1416] ; 0xffff4544
  4084. ffff3fb8: e5860040 str r0, [r6, #64] ; 0x40
  4085. ffff3fbc: e3a00000 mov r0, #0
  4086. ffff3fc0: eaffffda b 0xffff3f30
  4087. ffff3fc4: e92d4ff7 push {r0, r1, r2, r4, r5, r6, r7, r8, r9, sl, fp, lr}
  4088. ffff3fc8: e24dd020 sub sp, sp, #32
  4089. ffff3fcc: e1a0b001 mov fp, r1
  4090. ffff3fd0: e59d0020 ldr r0, [sp, #32]
  4091. ffff3fd4: e5900000 ldr r0, [r0]
  4092. ffff3fd8: e58d001c str r0, [sp, #28]
  4093. ffff3fdc: e59d001c ldr r0, [sp, #28]
  4094. ffff3fe0: e590a000 ldr sl, [r0]
  4095. ffff3fe4: e3a00102 mov r0, #-2147483648 ; 0x80000000
  4096. ffff3fe8: e58d0018 str r0, [sp, #24]
  4097. ffff3fec: e3a00000 mov r0, #0
  4098. ffff3ff0: e58d0014 str r0, [sp, #20]
  4099. ffff3ff4: e58d0010 str r0, [sp, #16]
  4100. ffff3ff8: e58d000c str r0, [sp, #12]
  4101. ffff3ffc: e58d0008 str r0, [sp, #8]
  4102. ffff4000: e320f000 nop {0}
  4103. ffff4004: e320f000 nop {0}
  4104. ffff4008: e320f000 nop {0}
  4105. ffff400c: e59d001c ldr r0, [sp, #28]
  4106. ffff4010: e5900014 ldr r0, [r0, #20]
  4107. ffff4014: e3500000 cmp r0, #0
  4108. ffff4018: 0a000002 beq 0xffff4028
  4109. ffff401c: e3e00000 mvn r0, #0
  4110. ffff4020: e28dd02c add sp, sp, #44 ; 0x2c
  4111. ffff4024: e8bd8ff0 pop {r4, r5, r6, r7, r8, r9, sl, fp, pc}
  4112. ffff4028: e59b0000 ldr r0, [fp]
  4113. ffff402c: e3500000 cmp r0, #0
  4114. ffff4030: 1a000002 bne 0xffff4040
  4115. ffff4034: e59d0018 ldr r0, [sp, #24]
  4116. ffff4038: e3800902 orr r0, r0, #32768 ; 0x8000
  4117. ffff403c: e58d0018 str r0, [sp, #24]
  4118. ffff4040: e59b0004 ldr r0, [fp, #4]
  4119. ffff4044: e3100001 tst r0, #1
  4120. ffff4048: 0a000002 beq 0xffff4058
  4121. ffff404c: e59d0018 ldr r0, [sp, #24]
  4122. ffff4050: e3800040 orr r0, r0, #64 ; 0x40
  4123. ffff4054: e58d0018 str r0, [sp, #24]
  4124. ffff4058: e59b0004 ldr r0, [fp, #4]
  4125. ffff405c: e3100002 tst r0, #2
  4126. ffff4060: 0a000002 beq 0xffff4070
  4127. ffff4064: e59d0018 ldr r0, [sp, #24]
  4128. ffff4068: e3800080 orr r0, r0, #128 ; 0x80
  4129. ffff406c: e58d0018 str r0, [sp, #24]
  4130. ffff4070: e59b0004 ldr r0, [fp, #4]
  4131. ffff4074: e3100004 tst r0, #4
  4132. ffff4078: 0a000002 beq 0xffff4088
  4133. ffff407c: e59d0018 ldr r0, [sp, #24]
  4134. ffff4080: e3800c01 orr r0, r0, #256 ; 0x100
  4135. ffff4084: e58d0018 str r0, [sp, #24]
  4136. ffff4088: e59b001c ldr r0, [fp, #28]
  4137. ffff408c: e3100001 tst r0, #1
  4138. ffff4090: 0a000002 beq 0xffff40a0
  4139. ffff4094: e59d0018 ldr r0, [sp, #24]
  4140. ffff4098: e3800405 orr r0, r0, #83886080 ; 0x5000000
  4141. ffff409c: e58d0018 str r0, [sp, #24]
  4142. ffff40a0: e59b0008 ldr r0, [fp, #8]
  4143. ffff40a4: e58a001c str r0, [sl, #28]
  4144. ffff40a8: e59d0028 ldr r0, [sp, #40] ; 0x28
  4145. ffff40ac: e3500000 cmp r0, #0
  4146. ffff40b0: 1a000004 bne 0xffff40c8
  4147. ffff40b4: e59b0000 ldr r0, [fp]
  4148. ffff40b8: e59d1018 ldr r1, [sp, #24]
  4149. ffff40bc: e1800001 orr r0, r0, r1
  4150. ffff40c0: e58a0018 str r0, [sl, #24]
  4151. ffff40c4: ea000032 b 0xffff4194
  4152. ffff40c8: e59d0028 ldr r0, [sp, #40] ; 0x28
  4153. ffff40cc: e5900000 ldr r0, [r0]
  4154. ffff40d0: e3100003 tst r0, #3
  4155. ffff40d4: 0a000002 beq 0xffff40e4
  4156. ffff40d8: e3e00003 mvn r0, #3
  4157. ffff40dc: e58d0014 str r0, [sp, #20]
  4158. ffff40e0: ea0000e1 b 0xffff446c
  4159. ffff40e4: e59d0018 ldr r0, [sp, #24]
  4160. ffff40e8: e3800c22 orr r0, r0, #8704 ; 0x2200
  4161. ffff40ec: e58d0018 str r0, [sp, #24]
  4162. ffff40f0: e59d0028 ldr r0, [sp, #40] ; 0x28
  4163. ffff40f4: e5900004 ldr r0, [r0, #4]
  4164. ffff40f8: e3100002 tst r0, #2
  4165. ffff40fc: 0a000002 beq 0xffff410c
  4166. ffff4100: e59d0018 ldr r0, [sp, #24]
  4167. ffff4104: e3800b01 orr r0, r0, #1024 ; 0x400
  4168. ffff4108: e58d0018 str r0, [sp, #24]
  4169. ffff410c: e59d0028 ldr r0, [sp, #40] ; 0x28
  4170. ffff4110: e5900008 ldr r0, [r0, #8]
  4171. ffff4114: e59d1028 ldr r1, [sp, #40] ; 0x28
  4172. ffff4118: e591100c ldr r1, [r1, #12]
  4173. ffff411c: e0000190 mul r0, r0, r1
  4174. ffff4120: e58d0008 str r0, [sp, #8]
  4175. ffff4124: e59d0028 ldr r0, [sp, #40] ; 0x28
  4176. ffff4128: e590000c ldr r0, [r0, #12]
  4177. ffff412c: e58a0010 str r0, [sl, #16]
  4178. ffff4130: e59d0008 ldr r0, [sp, #8]
  4179. ffff4134: e58a0014 str r0, [sl, #20]
  4180. ffff4138: e59a0000 ldr r0, [sl]
  4181. ffff413c: e3800102 orr r0, r0, #-2147483648 ; 0x80000000
  4182. ffff4140: e58a0000 str r0, [sl]
  4183. ffff4144: e59b0000 ldr r0, [fp]
  4184. ffff4148: e59d1018 ldr r1, [sp, #24]
  4185. ffff414c: e1800001 orr r0, r0, r1
  4186. ffff4150: e58a0018 str r0, [sl, #24]
  4187. ffff4154: e59b001c ldr r0, [fp, #28]
  4188. ffff4158: e3100001 tst r0, #1
  4189. ffff415c: 0a000002 beq 0xffff416c
  4190. ffff4160: e3a00000 mov r0, #0
  4191. ffff4164: e58d0014 str r0, [sp, #20]
  4192. ffff4168: ea000003 b 0xffff417c
  4193. ffff416c: e59d0020 ldr r0, [sp, #32]
  4194. ffff4170: e59d1028 ldr r1, [sp, #40] ; 0x28
  4195. ffff4174: ebfffeb1 bl 0xffff3c40
  4196. ffff4178: e58d0014 str r0, [sp, #20]
  4197. ffff417c: e59d0014 ldr r0, [sp, #20]
  4198. ffff4180: e3500000 cmp r0, #0
  4199. ffff4184: 0a000002 beq 0xffff4194
  4200. ffff4188: e3e00002 mvn r0, #2
  4201. ffff418c: e58d0014 str r0, [sp, #20]
  4202. ffff4190: ea0000b5 b 0xffff446c
  4203. ffff4194: e59b001c ldr r0, [fp, #28]
  4204. ffff4198: e3100001 tst r0, #1
  4205. ffff419c: 0a000043 beq 0xffff42b0
  4206. ffff41a0: ebfffd3c bl get_counter
  4207. ffff41a4: e1a08000 mov r8, r0
  4208. ffff41a8: e1a09001 mov r9, r1
  4209. ffff41ac: e59f6394 ldr r6, [pc, #916] ; 0xffff4548
  4210. ffff41b0: e3a07000 mov r7, #0
  4211. ffff41b4: e320f000 nop {0}
  4212. ffff41b8: ebfffd36 bl get_counter
  4213. ffff41bc: e0504008 subs r4, r0, r8
  4214. ffff41c0: e0c15009 sbc r5, r1, r9
  4215. ffff41c4: e59a0038 ldr r0, [sl, #56] ; 0x38
  4216. ffff41c8: e30b19c2 movw r1, #47554 ; 0xb9c2
  4217. ffff41cc: e1100001 tst r0, r1
  4218. ffff41d0: 0a000000 beq 0xffff41d8
  4219. ffff41d4: ea000002 b 0xffff41e4
  4220. ffff41d8: e0540006 subs r0, r4, r6
  4221. ffff41dc: e0d50007 sbcs r0, r5, r7
  4222. ffff41e0: 3afffff4 bcc 0xffff41b8
  4223. ffff41e4: e320f000 nop {0}
  4224. ffff41e8: e0540006 subs r0, r4, r6
  4225. ffff41ec: e0d50007 sbcs r0, r5, r7
  4226. ffff41f0: 2a000003 bcs 0xffff4204
  4227. ffff41f4: e59a0038 ldr r0, [sl, #56] ; 0x38
  4228. ffff41f8: e30b18c2 movw r1, #47298 ; 0xb8c2
  4229. ffff41fc: e1100001 tst r0, r1
  4230. ffff4200: 0a000004 beq 0xffff4218
  4231. ffff4204: e3e00004 mvn r0, #4
  4232. ffff4208: e58d0014 str r0, [sp, #20]
  4233. ffff420c: e3a00322 mov r0, #-2013265920 ; 0x88000000
  4234. ffff4210: e58a0018 str r0, [sl, #24]
  4235. ffff4214: ea000094 b 0xffff446c
  4236. ffff4218: e3000100 movw r0, #256 ; 0x100
  4237. ffff421c: e58a0038 str r0, [sl, #56] ; 0x38
  4238. ffff4220: ebfffd1c bl get_counter
  4239. ffff4224: e1a08000 mov r8, r0
  4240. ffff4228: e1a09001 mov r9, r1
  4241. ffff422c: e59f6318 ldr r6, [pc, #792] ; 0xffff454c
  4242. ffff4230: e3a07000 mov r7, #0
  4243. ffff4234: e320f000 nop {0}
  4244. ffff4238: ebfffd16 bl get_counter
  4245. ffff423c: e0504008 subs r4, r0, r8
  4246. ffff4240: e0c15009 sbc r5, r1, r9
  4247. ffff4244: e59a0038 ldr r0, [sl, #56] ; 0x38
  4248. ffff4248: e30b1ac2 movw r1, #47810 ; 0xbac2
  4249. ffff424c: e1100001 tst r0, r1
  4250. ffff4250: 0a000000 beq 0xffff4258
  4251. ffff4254: ea000002 b 0xffff4264
  4252. ffff4258: e0540006 subs r0, r4, r6
  4253. ffff425c: e0d50007 sbcs r0, r5, r7
  4254. ffff4260: 3afffff4 bcc 0xffff4238
  4255. ffff4264: e320f000 nop {0}
  4256. ffff4268: e0540006 subs r0, r4, r6
  4257. ffff426c: e0d50007 sbcs r0, r5, r7
  4258. ffff4270: 2a000003 bcs 0xffff4284
  4259. ffff4274: e59a0038 ldr r0, [sl, #56] ; 0x38
  4260. ffff4278: e30b18c2 movw r1, #47298 ; 0xb8c2
  4261. ffff427c: e1100001 tst r0, r1
  4262. ffff4280: 0a000004 beq 0xffff4298
  4263. ffff4284: e3e00005 mvn r0, #5
  4264. ffff4288: e58d0014 str r0, [sp, #20]
  4265. ffff428c: e3a00322 mov r0, #-2013265920 ; 0x88000000
  4266. ffff4290: e58a0018 str r0, [sl, #24]
  4267. ffff4294: ea000074 b 0xffff446c
  4268. ffff4298: e3000200 movw r0, #512 ; 0x200
  4269. ffff429c: e58a0038 str r0, [sl, #56] ; 0x38
  4270. ffff42a0: e59d0020 ldr r0, [sp, #32]
  4271. ffff42a4: e59d1028 ldr r1, [sp, #40] ; 0x28
  4272. ffff42a8: ebfffe64 bl 0xffff3c40
  4273. ffff42ac: e58d0014 str r0, [sp, #20]
  4274. ffff42b0: ebfffcf8 bl get_counter
  4275. ffff42b4: e1a08000 mov r8, r0
  4276. ffff42b8: e1a09001 mov r9, r1
  4277. ffff42bc: e3056dc0 movw r6, #24000 ; 0x5dc0
  4278. ffff42c0: e3a07000 mov r7, #0
  4279. ffff42c4: e320f000 nop {0}
  4280. ffff42c8: ebfffcf2 bl get_counter
  4281. ffff42cc: e0504008 subs r4, r0, r8
  4282. ffff42d0: e0c15009 sbc r5, r1, r9
  4283. ffff42d4: e59a0038 ldr r0, [sl, #56] ; 0x38
  4284. ffff42d8: e58d0010 str r0, [sp, #16]
  4285. ffff42dc: e30b0bc6 movw r0, #48070 ; 0xbbc6
  4286. ffff42e0: e59d1010 ldr r1, [sp, #16]
  4287. ffff42e4: e1100001 tst r0, r1
  4288. ffff42e8: 0a000000 beq 0xffff42f0
  4289. ffff42ec: ea000002 b 0xffff42fc
  4290. ffff42f0: e0540006 subs r0, r4, r6
  4291. ffff42f4: e0d50007 sbcs r0, r5, r7
  4292. ffff42f8: 3afffff2 bcc 0xffff42c8
  4293. ffff42fc: e320f000 nop {0}
  4294. ffff4300: e0540006 subs r0, r4, r6
  4295. ffff4304: e0d50007 sbcs r0, r5, r7
  4296. ffff4308: 2a000003 bcs 0xffff431c
  4297. ffff430c: e30b0bc2 movw r0, #48066 ; 0xbbc2
  4298. ffff4310: e59d1010 ldr r1, [sp, #16]
  4299. ffff4314: e1100001 tst r0, r1
  4300. ffff4318: 0a000002 beq 0xffff4328
  4301. ffff431c: e3e00001 mvn r0, #1
  4302. ffff4320: e58d0014 str r0, [sp, #20]
  4303. ffff4324: ea000050 b 0xffff446c
  4304. ffff4328: e59d0028 ldr r0, [sp, #40] ; 0x28
  4305. ffff432c: e3500000 cmp r0, #0
  4306. ffff4330: 0a000022 beq 0xffff43c0
  4307. ffff4334: e3a00000 mov r0, #0
  4308. ffff4338: e58d0000 str r0, [sp]
  4309. ffff433c: ebfffcd5 bl get_counter
  4310. ffff4340: e1a08000 mov r8, r0
  4311. ffff4344: e1a09001 mov r9, r1
  4312. ffff4348: e59f6200 ldr r6, [pc, #512] ; 0xffff4550
  4313. ffff434c: e3a07000 mov r7, #0
  4314. ffff4350: e30b0bca movw r0, #48074 ; 0xbbca
  4315. ffff4354: e58d0000 str r0, [sp]
  4316. ffff4358: e320f000 nop {0}
  4317. ffff435c: ebfffccd bl get_counter
  4318. ffff4360: e0504008 subs r4, r0, r8
  4319. ffff4364: e0c15009 sbc r5, r1, r9
  4320. ffff4368: e59a0038 ldr r0, [sl, #56] ; 0x38
  4321. ffff436c: e58d0010 str r0, [sp, #16]
  4322. ffff4370: e59d0000 ldr r0, [sp]
  4323. ffff4374: e59d1010 ldr r1, [sp, #16]
  4324. ffff4378: e1100001 tst r0, r1
  4325. ffff437c: 0a000000 beq 0xffff4384
  4326. ffff4380: ea000002 b 0xffff4390
  4327. ffff4384: e0540006 subs r0, r4, r6
  4328. ffff4388: e0d50007 sbcs r0, r5, r7
  4329. ffff438c: 3afffff2 bcc 0xffff435c
  4330. ffff4390: e320f000 nop {0}
  4331. ffff4394: e0540006 subs r0, r4, r6
  4332. ffff4398: e0d50007 sbcs r0, r5, r7
  4333. ffff439c: 2a000003 bcs 0xffff43b0
  4334. ffff43a0: e30b0bc2 movw r0, #48066 ; 0xbbc2
  4335. ffff43a4: e59d1010 ldr r1, [sp, #16]
  4336. ffff43a8: e1100001 tst r0, r1
  4337. ffff43ac: 0a000002 beq 0xffff43bc
  4338. ffff43b0: e3e00002 mvn r0, #2
  4339. ffff43b4: e58d0014 str r0, [sp, #20]
  4340. ffff43b8: ea00002b b 0xffff446c
  4341. ffff43bc: e320f000 nop {0}
  4342. ffff43c0: e59b0004 ldr r0, [fp, #4]
  4343. ffff43c4: e3100008 tst r0, #8
  4344. ffff43c8: 0a000018 beq 0xffff4430
  4345. ffff43cc: ebfffcb1 bl get_counter
  4346. ffff43d0: e1a08000 mov r8, r0
  4347. ffff43d4: e1a09001 mov r9, r1
  4348. ffff43d8: e59f6174 ldr r6, [pc, #372] ; 0xffff4554
  4349. ffff43dc: e3a07000 mov r7, #0
  4350. ffff43e0: e320f000 nop {0}
  4351. ffff43e4: ebfffcab bl get_counter
  4352. ffff43e8: e0504008 subs r4, r0, r8
  4353. ffff43ec: e0c15009 sbc r5, r1, r9
  4354. ffff43f0: e59a003c ldr r0, [sl, #60] ; 0x3c
  4355. ffff43f4: e58d0010 str r0, [sp, #16]
  4356. ffff43f8: e59d0010 ldr r0, [sp, #16]
  4357. ffff43fc: e3100c02 tst r0, #512 ; 0x200
  4358. ffff4400: 1a000000 bne 0xffff4408
  4359. ffff4404: ea000002 b 0xffff4414
  4360. ffff4408: e0540006 subs r0, r4, r6
  4361. ffff440c: e0d50007 sbcs r0, r5, r7
  4362. ffff4410: 3afffff3 bcc 0xffff43e4
  4363. ffff4414: e320f000 nop {0}
  4364. ffff4418: e0540006 subs r0, r4, r6
  4365. ffff441c: e0d50007 sbcs r0, r5, r7
  4366. ffff4420: 3a000002 bcc 0xffff4430
  4367. ffff4424: e3e00002 mvn r0, #2
  4368. ffff4428: e58d0014 str r0, [sp, #20]
  4369. ffff442c: ea00000e b 0xffff446c
  4370. ffff4430: e59b0004 ldr r0, [fp, #4]
  4371. ffff4434: e3100002 tst r0, #2
  4372. ffff4438: 0a000008 beq 0xffff4460
  4373. ffff443c: e59a002c ldr r0, [sl, #44] ; 0x2c
  4374. ffff4440: e58b000c str r0, [fp, #12]
  4375. ffff4444: e59a0028 ldr r0, [sl, #40] ; 0x28
  4376. ffff4448: e58b0010 str r0, [fp, #16]
  4377. ffff444c: e59a0024 ldr r0, [sl, #36] ; 0x24
  4378. ffff4450: e58b0014 str r0, [fp, #20]
  4379. ffff4454: e59a0020 ldr r0, [sl, #32]
  4380. ffff4458: e58b0018 str r0, [fp, #24]
  4381. ffff445c: ea000001 b 0xffff4468
  4382. ffff4460: e59a0020 ldr r0, [sl, #32]
  4383. ffff4464: e58b000c str r0, [fp, #12]
  4384. ffff4468: e320f000 nop {0}
  4385. ffff446c: e59d0028 ldr r0, [sp, #40] ; 0x28
  4386. ffff4470: e3500000 cmp r0, #0
  4387. ffff4474: 0a00000c beq 0xffff44ac
  4388. ffff4478: e59d000c ldr r0, [sp, #12]
  4389. ffff447c: e3500000 cmp r0, #0
  4390. ffff4480: 0a000009 beq 0xffff44ac
  4391. ffff4484: e59a0088 ldr r0, [sl, #136] ; 0x88
  4392. ffff4488: e58d0010 str r0, [sp, #16]
  4393. ffff448c: e59d0010 ldr r0, [sp, #16]
  4394. ffff4490: e58a0088 str r0, [sl, #136] ; 0x88
  4395. ffff4494: e3a00000 mov r0, #0
  4396. ffff4498: e58a008c str r0, [sl, #140] ; 0x8c
  4397. ffff449c: e58a0080 str r0, [sl, #128] ; 0x80
  4398. ffff44a0: e59a0000 ldr r0, [sl]
  4399. ffff44a4: e3c00020 bic r0, r0, #32
  4400. ffff44a8: e58a0000 str r0, [sl]
  4401. ffff44ac: e59d0014 ldr r0, [sp, #20]
  4402. ffff44b0: e3500000 cmp r0, #0
  4403. ffff44b4: 0a00000b beq 0xffff44e8
  4404. ffff44b8: e3a00007 mov r0, #7
  4405. ffff44bc: e58a0000 str r0, [sl]
  4406. ffff44c0: e59d0020 ldr r0, [sp, #32]
  4407. ffff44c4: ebfffd29 bl 0xffff3970
  4408. ffff44c8: e58d0004 str r0, [sp, #4]
  4409. ffff44cc: e59d0004 ldr r0, [sp, #4]
  4410. ffff44d0: e3500000 cmp r0, #0
  4411. ffff44d4: 0a000001 beq 0xffff44e0
  4412. ffff44d8: e59d0004 ldr r0, [sp, #4]
  4413. ffff44dc: eafffecf b 0xffff4020
  4414. ffff44e0: e59d0020 ldr r0, [sp, #32]
  4415. ffff44e4: ebfffd0b bl 0xffff3918
  4416. ffff44e8: e3e00000 mvn r0, #0
  4417. ffff44ec: e58a0038 str r0, [sl, #56] ; 0x38
  4418. ffff44f0: e59d0014 ldr r0, [sp, #20]
  4419. ffff44f4: eafffec9 b 0xffff4020
  4420. ;; Global Offset Table
  4421. ffff44f8: 01c20cd0 ; CNT64_TEST_REG
  4422. ffff44fc: 00155555
  4423. ffff4500: 01c20864 ; PC_PUL0
  4424. ffff4504: 22222222
  4425. ffff4508: 01c20000 ; CCU_BASE
  4426. ffff450c: 016e3600
  4427. ffff4510: 01c208d0 ; PF_PUL0
  4428. ffff4514: 07222222
  4429. ffff4518: 77777777
  4430. ffff451c: 01c20848 ; PC_CFG0
  4431. ffff4520: 07373733
  4432. ffff4524: 01c208b4 ; PF_CFG0
  4433. ffff4528: 80202000
  4434. ffff452c: 00061a80
  4435. ffff4530: 0002000e
  4436. ffff4534: 005b8d80
  4437. ffff4538: 00070008
  4438. ffff453c: 0007ffff
  4439. ffff4540: 000fffff
  4440. ffff4544: 20070008
  4441. ffff4548: 00249f00
  4442. ffff454c: 015be680
  4443. ffff4550: 00b71b00
  4444. ffff4554: 00493e00
  4445. ffff4558: e92d40f0 push {r4, r5, r6, r7, lr} ; r0 = card_no, r1 = structure
  4446. ffff455c: e1a07000 mov r7, r0
  4447. ffff4560: e1a04001 mov r4, r1
  4448. ffff4564: e5945000 ldr r5, [r4]
  4449. ffff4568: e1a01005 mov r1, r5
  4450. ffff456c: e1a00007 mov r0, r7
  4451. ffff4570: ebfffc7e bl init_SDC
  4452. ffff4574: e3a00007 mov r0, #7
  4453. ffff4578: e5951000 ldr r1, [r5]
  4454. ffff457c: e5810000 str r0, [r1]
  4455. ffff4580: e1a00004 mov r0, r4
  4456. ffff4584: ebfffcf9 bl 0xffff3970
  4457. ffff4588: e1a06000 mov r6, r0
  4458. ffff458c: e3560000 cmp r6, #0
  4459. ffff4590: 0a000001 beq 0xffff459c
  4460. ffff4594: e1a00006 mov r0, r6
  4461. ffff4598: e8bd80f0 pop {r4, r5, r6, r7, pc}
  4462. ffff459c: e3000911 movw r0, #2321 ; 0x911
  4463. ffff45a0: e5840024 str r0, [r4, #36] ; 0x24
  4464. ffff45a4: e3a008fe mov r0, #16646144 ; 0xfe0000
  4465. ffff45a8: e5840004 str r0, [r4, #4]
  4466. ffff45ac: e51f0088 ldr r0, [pc, #-136] ; 0xffff452c =0x00061a80
  4467. ffff45b0: e584000c str r0, [r4, #12]
  4468. ffff45b4: e59f002c ldr r0, [pc, #44] ; 0xffff45e8 =0x03197500
  4469. ffff45b8: e5840010 str r0, [r4, #16]
  4470. ffff45bc: e3a00000 mov r0, #0
  4471. ffff45c0: eafffff4 b 0xffff4598
  4472. ffff45c4: e92d4070 push {r4, r5, r6, lr}
  4473. ffff45c8: e1a05000 mov r5, r0
  4474. ffff45cc: e1a04001 mov r4, r1
  4475. ffff45d0: e5946000 ldr r6, [r4]
  4476. ffff45d4: e1a01006 mov r1, r6
  4477. ffff45d8: e1a00005 mov r0, r5
  4478. ffff45dc: ebfffca0 bl 0xffff3864
  4479. ffff45e0: e3a00000 mov r0, #0
  4480. ffff45e4: e8bd8070 pop {r4, r5, r6, pc}
  4481. ;; Global Offset Table
  4482. ffff45e8: 03197500
  4483. ffff45ec: e92d4070 push {r4, r5, r6, lr}
  4484. ffff45f0: e24dd028 sub sp, sp, #40 ; 0x28
  4485. ffff45f4: e1a06000 mov r6, r0
  4486. ffff45f8: e1a04001 mov r4, r1
  4487. ffff45fc: e3a0000d mov r0, #13
  4488. ffff4600: e58d0004 str r0, [sp, #4]
  4489. ffff4604: e3a00015 mov r0, #21
  4490. ffff4608: e58d0008 str r0, [sp, #8]
  4491. ffff460c: e5960034 ldr r0, [r6, #52] ; 0x34
  4492. ffff4610: e1a00800 lsl r0, r0, #16
  4493. ffff4614: e58d000c str r0, [sp, #12]
  4494. ffff4618: e3a00000 mov r0, #0
  4495. ffff461c: e58d0020 str r0, [sp, #32]
  4496. ffff4620: e320f000 nop {0}
  4497. ffff4624: e3a02000 mov r2, #0
  4498. ffff4628: e28d1004 add r1, sp, #4
  4499. ffff462c: e1a00006 mov r0, r6
  4500. ffff4630: ebfffe63 bl 0xffff3fc4
  4501. ffff4634: e1a05000 mov r5, r0
  4502. ffff4638: e3550000 cmp r5, #0
  4503. ffff463c: 0a000002 beq 0xffff464c
  4504. ffff4640: e1a00005 mov r0, r5
  4505. ffff4644: e28dd028 add sp, sp, #40 ; 0x28
  4506. ffff4648: e8bd8070 pop {r4, r5, r6, pc}
  4507. ffff464c: e59d0010 ldr r0, [sp, #16]
  4508. ffff4650: e3100c01 tst r0, #256 ; 0x100
  4509. ffff4654: 0a000000 beq 0xffff465c
  4510. ffff4658: ea00000b b 0xffff468c
  4511. ffff465c: e3a00001 mov r0, #1
  4512. ffff4660: e3a01000 mov r1, #0
  4513. ffff4664: ebfffc30 bl 0xffff372c
  4514. ffff4668: e59d0010 ldr r0, [sp, #16]
  4515. ffff466c: e59f1e10 ldr r1, [pc, #3600] ; 0xffff5484 = 0xfdf94080
  4516. ffff4670: e1100001 tst r0, r1
  4517. ffff4674: 0a000001 beq 0xffff4680
  4518. ffff4678: e3e00011 mvn r0, #17
  4519. ffff467c: eafffff0 b 0xffff4644
  4520. ffff4680: e1b00004 movs r0, r4
  4521. ffff4684: e2444001 sub r4, r4, #1
  4522. ffff4688: 1affffe5 bne 0xffff4624
  4523. ffff468c: e320f000 nop {0}
  4524. ffff4690: e3540000 cmp r4, #0
  4525. ffff4694: ca000001 bgt 0xffff46a0
  4526. ffff4698: e3e00012 mvn r0, #18
  4527. ffff469c: eaffffe8 b 0xffff4644
  4528. ffff46a0: e3a00000 mov r0, #0
  4529. ffff46a4: eaffffe6 b 0xffff4644
  4530. ffff46a8: e92d4030 push {r4, r5, lr}
  4531. ffff46ac: e24dd024 sub sp, sp, #36 ; 0x24
  4532. ffff46b0: e1a04000 mov r4, r0
  4533. ffff46b4: e3a05000 mov r5, #0
  4534. ffff46b8: e3a00000 mov r0, #0
  4535. ffff46bc: e58d0000 str r0, [sp]
  4536. ffff46c0: e58d0008 str r0, [sp, #8]
  4537. ffff46c4: e58d0004 str r0, [sp, #4]
  4538. ffff46c8: e58d001c str r0, [sp, #28]
  4539. ffff46cc: e3a02000 mov r2, #0
  4540. ffff46d0: e1a0100d mov r1, sp
  4541. ffff46d4: e1a00004 mov r0, r4
  4542. ffff46d8: ebfffe39 bl 0xffff3fc4
  4543. ffff46dc: e1a05000 mov r5, r0
  4544. ffff46e0: e3a00001 mov r0, #1
  4545. ffff46e4: e3a01000 mov r1, #0
  4546. ffff46e8: ebfffc0f bl 0xffff372c
  4547. ffff46ec: e1a00005 mov r0, r5
  4548. ffff46f0: e28dd024 add sp, sp, #36 ; 0x24
  4549. ffff46f4: e8bd8030 pop {r4, r5, pc}
  4550. ffff46f8: e92d4030 push {r4, r5, lr}
  4551. ffff46fc: e24dd024 sub sp, sp, #36 ; 0x24
  4552. ffff4700: e1a04000 mov r4, r0
  4553. ffff4704: e3a05000 mov r5, #0
  4554. ffff4708: e3a00000 mov r0, #0
  4555. ffff470c: e58d0000 str r0, [sp]
  4556. ffff4710: e59f0d70 ldr r0, [pc, #3440] ; 0xffff5488 =0xf0f0f0f0
  4557. ffff4714: e58d0008 str r0, [sp, #8]
  4558. ffff4718: e3a00000 mov r0, #0
  4559. ffff471c: e58d0004 str r0, [sp, #4]
  4560. ffff4720: e58d001c str r0, [sp, #28]
  4561. ffff4724: e3a02000 mov r2, #0
  4562. ffff4728: e1a0100d mov r1, sp
  4563. ffff472c: e1a00004 mov r0, r4
  4564. ffff4730: ebfffe23 bl 0xffff3fc4
  4565. ffff4734: e1a05000 mov r5, r0
  4566. ffff4738: e1a00005 mov r0, r5
  4567. ffff473c: e28dd024 add sp, sp, #36 ; 0x24
  4568. ffff4740: e8bd8030 pop {r4, r5, pc}
  4569. ffff4744: e92d4030 push {r4, r5, lr}
  4570. ffff4748: e24dd024 sub sp, sp, #36 ; 0x24
  4571. ffff474c: e1a04000 mov r4, r0
  4572. ffff4750: e3a05000 mov r5, #0
  4573. ffff4754: e3a00000 mov r0, #0
  4574. ffff4758: e58d0000 str r0, [sp]
  4575. ffff475c: e59f0d28 ldr r0, [pc, #3368] ; 0xffff548c =0xf0f0f0fa
  4576. ffff4760: e58d0008 str r0, [sp, #8]
  4577. ffff4764: e3a00000 mov r0, #0
  4578. ffff4768: e58d0004 str r0, [sp, #4]
  4579. ffff476c: e58d001c str r0, [sp, #28]
  4580. ffff4770: e3a02000 mov r2, #0
  4581. ffff4774: e1a0100d mov r1, sp
  4582. ffff4778: e1a00004 mov r0, r4
  4583. ffff477c: ebfffe10 bl 0xffff3fc4
  4584. ffff4780: e1a05000 mov r5, r0
  4585. ffff4784: e3a00001 mov r0, #1
  4586. ffff4788: e3a01000 mov r1, #0
  4587. ffff478c: ebfffbe6 bl 0xffff372c
  4588. ffff4790: e1a00005 mov r0, r5
  4589. ffff4794: e28dd024 add sp, sp, #36 ; 0x24
  4590. ffff4798: e8bd8030 pop {r4, r5, pc}
  4591. ffff479c: e92d4070 push {r4, r5, r6, lr}
  4592. ffff47a0: e24dd028 sub sp, sp, #40 ; 0x28
  4593. ffff47a4: e1a04000 mov r4, r0
  4594. ffff47a8: e30063e8 movw r6, #1000 ; 0x3e8
  4595. ffff47ac: e320f000 nop {0}
  4596. ffff47b0: e3a00037 mov r0, #55 ; 0x37
  4597. ffff47b4: e58d0004 str r0, [sp, #4]
  4598. ffff47b8: e3a00015 mov r0, #21
  4599. ffff47bc: e58d0008 str r0, [sp, #8]
  4600. ffff47c0: e3a00000 mov r0, #0
  4601. ffff47c4: e58d000c str r0, [sp, #12]
  4602. ffff47c8: e58d0020 str r0, [sp, #32]
  4603. ffff47cc: e3a02000 mov r2, #0
  4604. ffff47d0: e28d1004 add r1, sp, #4
  4605. ffff47d4: e1a00004 mov r0, r4
  4606. ffff47d8: ebfffdf9 bl 0xffff3fc4
  4607. ffff47dc: e1a05000 mov r5, r0
  4608. ffff47e0: e3550000 cmp r5, #0
  4609. ffff47e4: 0a000002 beq 0xffff47f4
  4610. ffff47e8: e1a00005 mov r0, r5
  4611. ffff47ec: e28dd028 add sp, sp, #40 ; 0x28
  4612. ffff47f0: e8bd8070 pop {r4, r5, r6, pc}
  4613. ffff47f4: e3a00029 mov r0, #41 ; 0x29
  4614. ffff47f8: e58d0004 str r0, [sp, #4]
  4615. ffff47fc: e3a00001 mov r0, #1
  4616. ffff4800: e58d0008 str r0, [sp, #8]
  4617. ffff4804: e5940004 ldr r0, [r4, #4]
  4618. ffff4808: e59f1c80 ldr r1, [pc, #3200] ; 0xffff5490 =0x00ff8000
  4619. ffff480c: e0000001 and r0, r0, r1
  4620. ffff4810: e58d000c str r0, [sp, #12]
  4621. ffff4814: e5940008 ldr r0, [r4, #8]
  4622. ffff4818: e2401802 sub r1, r0, #131072 ; 0x20000
  4623. ffff481c: e2511020 subs r1, r1, #32
  4624. ffff4820: 1a000002 bne 0xffff4830
  4625. ffff4824: e59d000c ldr r0, [sp, #12]
  4626. ffff4828: e3800101 orr r0, r0, #1073741824 ; 0x40000000
  4627. ffff482c: e58d000c str r0, [sp, #12]
  4628. ffff4830: e3a02000 mov r2, #0
  4629. ffff4834: e28d1004 add r1, sp, #4
  4630. ffff4838: e1a00004 mov r0, r4
  4631. ffff483c: ebfffde0 bl 0xffff3fc4
  4632. ffff4840: e1a05000 mov r5, r0
  4633. ffff4844: e3550000 cmp r5, #0
  4634. ffff4848: 0a000001 beq 0xffff4854
  4635. ffff484c: e1a00005 mov r0, r5
  4636. ffff4850: eaffffe5 b 0xffff47ec
  4637. ffff4854: e3a00001 mov r0, #1
  4638. ffff4858: e3a01000 mov r1, #0
  4639. ffff485c: ebfffbb2 bl 0xffff372c
  4640. ffff4860: e59d0010 ldr r0, [sp, #16]
  4641. ffff4864: e3100102 tst r0, #-2147483648 ; 0x80000000
  4642. ffff4868: 1a000002 bne 0xffff4878
  4643. ffff486c: e1b00006 movs r0, r6
  4644. ffff4870: e2466001 sub r6, r6, #1
  4645. ffff4874: 1affffcd bne 0xffff47b0
  4646. ffff4878: e3560000 cmp r6, #0
  4647. ffff487c: ca000001 bgt 0xffff4888
  4648. ffff4880: e3e00010 mvn r0, #16
  4649. ffff4884: eaffffd8 b 0xffff47ec
  4650. ffff4888: e5940008 ldr r0, [r4, #8]
  4651. ffff488c: e2401802 sub r1, r0, #131072 ; 0x20000
  4652. ffff4890: e2511020 subs r1, r1, #32
  4653. ffff4894: 0a000001 beq 0xffff48a0
  4654. ffff4898: e59f0bf4 ldr r0, [pc, #3060] ; 0xffff5494 =0x00020010
  4655. ffff489c: e5840008 str r0, [r4, #8]
  4656. ffff48a0: e59d0010 ldr r0, [sp, #16]
  4657. ffff48a4: e5840028 str r0, [r4, #40] ; 0x28
  4658. ffff48a8: e5940028 ldr r0, [r4, #40] ; 0x28
  4659. ffff48ac: e7e00f50 ubfx r0, r0, #30, #1
  4660. ffff48b0: e5840014 str r0, [r4, #20]
  4661. ffff48b4: e3a00000 mov r0, #0
  4662. ffff48b8: e5840034 str r0, [r4, #52] ; 0x34
  4663. ffff48bc: e320f000 nop {0}
  4664. ffff48c0: eaffffc9 b 0xffff47ec
  4665. ffff48c4: e92d4070 push {r4, r5, r6, lr}
  4666. ffff48c8: e24dd028 sub sp, sp, #40 ; 0x28
  4667. ffff48cc: e1a04000 mov r4, r0
  4668. ffff48d0: e30063e8 movw r6, #1000 ; 0x3e8
  4669. ffff48d4: e1a00004 mov r0, r4
  4670. ffff48d8: ebffff72 bl 0xffff46a8
  4671. ffff48dc: e3a00001 mov r0, #1
  4672. ffff48e0: e58d0004 str r0, [sp, #4]
  4673. ffff48e4: e58d0008 str r0, [sp, #8]
  4674. ffff48e8: e3a00000 mov r0, #0
  4675. ffff48ec: e58d000c str r0, [sp, #12]
  4676. ffff48f0: e58d0020 str r0, [sp, #32]
  4677. ffff48f4: e3a02000 mov r2, #0
  4678. ffff48f8: e28d1004 add r1, sp, #4
  4679. ffff48fc: e1a00004 mov r0, r4
  4680. ffff4900: ebfffdaf bl 0xffff3fc4
  4681. ffff4904: e1a05000 mov r5, r0
  4682. ffff4908: e3550000 cmp r5, #0
  4683. ffff490c: 0a000002 beq 0xffff491c
  4684. ffff4910: e1a00005 mov r0, r5
  4685. ffff4914: e28dd028 add sp, sp, #40 ; 0x28
  4686. ffff4918: e8bd8070 pop {r4, r5, r6, pc}
  4687. ffff491c: e3a00001 mov r0, #1
  4688. ffff4920: e3a01000 mov r1, #0
  4689. ffff4924: ebfffb80 bl 0xffff372c
  4690. ffff4928: e320f000 nop {0}
  4691. ffff492c: e3a00001 mov r0, #1
  4692. ffff4930: e58d0004 str r0, [sp, #4]
  4693. ffff4934: e58d0008 str r0, [sp, #8]
  4694. ffff4938: e5940004 ldr r0, [r4, #4]
  4695. ffff493c: e59d1010 ldr r1, [sp, #16]
  4696. ffff4940: e3c114ff bic r1, r1, #-16777216 ; 0xff000000
  4697. ffff4944: e3c1107f bic r1, r1, #127 ; 0x7f
  4698. ffff4948: e0000001 and r0, r0, r1
  4699. ffff494c: e59d1010 ldr r1, [sp, #16]
  4700. ffff4950: e2011206 and r1, r1, #1610612736 ; 0x60000000
  4701. ffff4954: e1800001 orr r0, r0, r1
  4702. ffff4958: e58d000c str r0, [sp, #12]
  4703. ffff495c: e5940024 ldr r0, [r4, #36] ; 0x24
  4704. ffff4960: e3100b02 tst r0, #2048 ; 0x800
  4705. ffff4964: 0a000002 beq 0xffff4974
  4706. ffff4968: e59d000c ldr r0, [sp, #12]
  4707. ffff496c: e3800101 orr r0, r0, #1073741824 ; 0x40000000
  4708. ffff4970: e58d000c str r0, [sp, #12]
  4709. ffff4974: e3a00000 mov r0, #0
  4710. ffff4978: e58d0020 str r0, [sp, #32]
  4711. ffff497c: e3a02000 mov r2, #0
  4712. ffff4980: e28d1004 add r1, sp, #4
  4713. ffff4984: e1a00004 mov r0, r4
  4714. ffff4988: ebfffd8d bl 0xffff3fc4
  4715. ffff498c: e1a05000 mov r5, r0
  4716. ffff4990: e3550000 cmp r5, #0
  4717. ffff4994: 0a000001 beq 0xffff49a0
  4718. ffff4998: e1a00005 mov r0, r5
  4719. ffff499c: eaffffdc b 0xffff4914
  4720. ffff49a0: e3a00001 mov r0, #1
  4721. ffff49a4: e3a01000 mov r1, #0
  4722. ffff49a8: ebfffb5f bl 0xffff372c
  4723. ffff49ac: e59d0010 ldr r0, [sp, #16]
  4724. ffff49b0: e3100102 tst r0, #-2147483648 ; 0x80000000
  4725. ffff49b4: 1a000002 bne 0xffff49c4
  4726. ffff49b8: e1b00006 movs r0, r6
  4727. ffff49bc: e2466001 sub r6, r6, #1
  4728. ffff49c0: 1affffd9 bne 0xffff492c
  4729. ffff49c4: e3560000 cmp r6, #0
  4730. ffff49c8: ca000001 bgt 0xffff49d4
  4731. ffff49cc: e3e00010 mvn r0, #16
  4732. ffff49d0: eaffffcf b 0xffff4914
  4733. ffff49d4: e3a00801 mov r0, #65536 ; 0x10000
  4734. ffff49d8: e5840008 str r0, [r4, #8]
  4735. ffff49dc: e59d0010 ldr r0, [sp, #16]
  4736. ffff49e0: e5840028 str r0, [r4, #40] ; 0x28
  4737. ffff49e4: e5940028 ldr r0, [r4, #40] ; 0x28
  4738. ffff49e8: e7e00f50 ubfx r0, r0, #30, #1
  4739. ffff49ec: e5840014 str r0, [r4, #20]
  4740. ffff49f0: e3a00001 mov r0, #1
  4741. ffff49f4: e5840034 str r0, [r4, #52] ; 0x34
  4742. ffff49f8: e3a00000 mov r0, #0
  4743. ffff49fc: eaffffc4 b 0xffff4914
  4744. ffff4a00: e92d4070 push {r4, r5, r6, lr}
  4745. ffff4a04: e24dd038 sub sp, sp, #56 ; 0x38
  4746. ffff4a08: e1a05000 mov r5, r0
  4747. ffff4a0c: e1a04001 mov r4, r1
  4748. ffff4a10: e3a00008 mov r0, #8
  4749. ffff4a14: e58d0014 str r0, [sp, #20]
  4750. ffff4a18: e3a00015 mov r0, #21
  4751. ffff4a1c: e58d0018 str r0, [sp, #24]
  4752. ffff4a20: e3a00000 mov r0, #0
  4753. ffff4a24: e58d001c str r0, [sp, #28]
  4754. ffff4a28: e58d0030 str r0, [sp, #48] ; 0x30
  4755. ffff4a2c: e58d4004 str r4, [sp, #4]
  4756. ffff4a30: e3a00001 mov r0, #1
  4757. ffff4a34: e58d000c str r0, [sp, #12]
  4758. ffff4a38: e3000200 movw r0, #512 ; 0x200
  4759. ffff4a3c: e58d0010 str r0, [sp, #16]
  4760. ffff4a40: e3a00001 mov r0, #1
  4761. ffff4a44: e58d0008 str r0, [sp, #8]
  4762. ffff4a48: e28d2004 add r2, sp, #4
  4763. ffff4a4c: e28d1014 add r1, sp, #20
  4764. ffff4a50: e1a00005 mov r0, r5
  4765. ffff4a54: ebfffd5a bl 0xffff3fc4
  4766. ffff4a58: e1a06000 mov r6, r0
  4767. ffff4a5c: e1a00006 mov r0, r6
  4768. ffff4a60: e28dd038 add sp, sp, #56 ; 0x38
  4769. ffff4a64: e8bd8070 pop {r4, r5, r6, pc}
  4770. ffff4a68: e92d43f0 push {r4, r5, r6, r7, r8, r9, lr}
  4771. ffff4a6c: e24dd024 sub sp, sp, #36 ; 0x24
  4772. ffff4a70: e1a06000 mov r6, r0
  4773. ffff4a74: e1a09001 mov r9, r1
  4774. ffff4a78: e1a04002 mov r4, r2
  4775. ffff4a7c: e1a05003 mov r5, r3
  4776. ffff4a80: e30073e8 movw r7, #1000 ; 0x3e8
  4777. ffff4a84: e3a00006 mov r0, #6
  4778. ffff4a88: e58d0000 str r0, [sp]
  4779. ffff4a8c: e3a0001d mov r0, #29
  4780. ffff4a90: e58d0004 str r0, [sp, #4]
  4781. ffff4a94: e3a00403 mov r0, #50331648 ; 0x3000000
  4782. ffff4a98: e1800804 orr r0, r0, r4, lsl #16
  4783. ffff4a9c: e1800405 orr r0, r0, r5, lsl #8
  4784. ffff4aa0: e58d0008 str r0, [sp, #8]
  4785. ffff4aa4: e3a00000 mov r0, #0
  4786. ffff4aa8: e58d001c str r0, [sp, #28]
  4787. ffff4aac: e3a02000 mov r2, #0
  4788. ffff4ab0: e1a0100d mov r1, sp
  4789. ffff4ab4: e1a00006 mov r0, r6
  4790. ffff4ab8: ebfffd41 bl 0xffff3fc4
  4791. ffff4abc: e1a08000 mov r8, r0
  4792. ffff4ac0: e1a01007 mov r1, r7
  4793. ffff4ac4: e1a00006 mov r0, r6
  4794. ffff4ac8: ebfffec7 bl 0xffff45ec
  4795. ffff4acc: e1a00008 mov r0, r8
  4796. ffff4ad0: e28dd024 add sp, sp, #36 ; 0x24
  4797. ffff4ad4: e8bd83f0 pop {r4, r5, r6, r7, r8, r9, pc}
  4798. ffff4ad8: e1a02000 mov r2, r0
  4799. ffff4adc: e3a00000 mov r0, #0
  4800. ffff4ae0: e5820020 str r0, [r2, #32]
  4801. ffff4ae4: e5920008 ldr r0, [r2, #8]
  4802. ffff4ae8: e59f39a8 ldr r3, [pc, #2472] ; 0xffff5498 =0x00010040
  4803. ffff4aec: e1500003 cmp r0, r3
  4804. ffff4af0: 2a000001 bcs 0xffff4afc
  4805. ffff4af4: e3a00000 mov r0, #0
  4806. ffff4af8: e12fff1e bx lr
  4807. ffff4afc: e5920020 ldr r0, [r2, #32]
  4808. ffff4b00: e3800c01 orr r0, r0, #256 ; 0x100
  4809. ffff4b04: e5820020 str r0, [r2, #32]
  4810. ffff4b08: e5920020 ldr r0, [r2, #32]
  4811. ffff4b0c: e3800001 orr r0, r0, #1
  4812. ffff4b10: e5820020 str r0, [r2, #32]
  4813. ffff4b14: e3a00000 mov r0, #0
  4814. ffff4b18: eafffff6 b 0xffff4af8
  4815. ffff4b1c: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  4816. ffff4b20: e24dd038 sub sp, sp, #56 ; 0x38
  4817. ffff4b24: e1a08000 mov r8, r0
  4818. ffff4b28: e1a05001 mov r5, r1
  4819. ffff4b2c: e1a04002 mov r4, r2
  4820. ffff4b30: e1a06003 mov r6, r3
  4821. ffff4b34: e59d7050 ldr r7, [sp, #80] ; 0x50
  4822. ffff4b38: e3a00006 mov r0, #6
  4823. ffff4b3c: e58d0014 str r0, [sp, #20]
  4824. ffff4b40: e3a00015 mov r0, #21
  4825. ffff4b44: e58d0018 str r0, [sp, #24]
  4826. ffff4b48: e3e004ff mvn r0, #-16777216 ; 0xff000000
  4827. ffff4b4c: e1800f85 orr r0, r0, r5, lsl #31
  4828. ffff4b50: e58d001c str r0, [sp, #28]
  4829. ffff4b54: e1a01104 lsl r1, r4, #2
  4830. ffff4b58: e3a0200f mov r2, #15
  4831. ffff4b5c: e59d001c ldr r0, [sp, #28]
  4832. ffff4b60: e1c00112 bic r0, r0, r2, lsl r1
  4833. ffff4b64: e58d001c str r0, [sp, #28]
  4834. ffff4b68: e1a01104 lsl r1, r4, #2
  4835. ffff4b6c: e59d001c ldr r0, [sp, #28]
  4836. ffff4b70: e1800116 orr r0, r0, r6, lsl r1
  4837. ffff4b74: e58d001c str r0, [sp, #28]
  4838. ffff4b78: e3a00000 mov r0, #0
  4839. ffff4b7c: e58d0030 str r0, [sp, #48] ; 0x30
  4840. ffff4b80: e58d7004 str r7, [sp, #4]
  4841. ffff4b84: e3a00040 mov r0, #64 ; 0x40
  4842. ffff4b88: e58d0010 str r0, [sp, #16]
  4843. ffff4b8c: e3a00001 mov r0, #1
  4844. ffff4b90: e58d000c str r0, [sp, #12]
  4845. ffff4b94: e58d0008 str r0, [sp, #8]
  4846. ffff4b98: e28d2004 add r2, sp, #4
  4847. ffff4b9c: e28d1014 add r1, sp, #20
  4848. ffff4ba0: e1a00008 mov r0, r8
  4849. ffff4ba4: ebfffd06 bl 0xffff3fc4
  4850. ffff4ba8: e28dd038 add sp, sp, #56 ; 0x38
  4851. ffff4bac: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  4852. ffff4bb0: e92d4070 push {r4, r5, r6, lr}
  4853. ffff4bb4: e24dd040 sub sp, sp, #64 ; 0x40
  4854. ffff4bb8: e1a04000 mov r4, r0
  4855. ffff4bbc: e3a00000 mov r0, #0
  4856. ffff4bc0: e5840020 str r0, [r4, #32]
  4857. ffff4bc4: e3a00037 mov r0, #55 ; 0x37
  4858. ffff4bc8: e58d001c str r0, [sp, #28]
  4859. ffff4bcc: e3a00015 mov r0, #21
  4860. ffff4bd0: e58d0020 str r0, [sp, #32]
  4861. ffff4bd4: e5940034 ldr r0, [r4, #52] ; 0x34
  4862. ffff4bd8: e1a00800 lsl r0, r0, #16
  4863. ffff4bdc: e58d0024 str r0, [sp, #36] ; 0x24
  4864. ffff4be0: e3a00000 mov r0, #0
  4865. ffff4be4: e58d0038 str r0, [sp, #56] ; 0x38
  4866. ffff4be8: e3a02000 mov r2, #0
  4867. ffff4bec: e28d101c add r1, sp, #28
  4868. ffff4bf0: e1a00004 mov r0, r4
  4869. ffff4bf4: ebfffcf2 bl 0xffff3fc4
  4870. ffff4bf8: e1a05000 mov r5, r0
  4871. ffff4bfc: e3550000 cmp r5, #0
  4872. ffff4c00: 0a000002 beq 0xffff4c10
  4873. ffff4c04: e1a00005 mov r0, r5
  4874. ffff4c08: e28dd040 add sp, sp, #64 ; 0x40
  4875. ffff4c0c: e8bd8070 pop {r4, r5, r6, pc}
  4876. ffff4c10: e3a00033 mov r0, #51 ; 0x33
  4877. ffff4c14: e58d001c str r0, [sp, #28]
  4878. ffff4c18: e3a00015 mov r0, #21
  4879. ffff4c1c: e58d0020 str r0, [sp, #32]
  4880. ffff4c20: e3a00000 mov r0, #0
  4881. ffff4c24: e58d0024 str r0, [sp, #36] ; 0x24
  4882. ffff4c28: e58d0038 str r0, [sp, #56] ; 0x38
  4883. ffff4c2c: e3a06003 mov r6, #3
  4884. ffff4c30: e320f000 nop {0}
  4885. ffff4c34: e28d0014 add r0, sp, #20
  4886. ffff4c38: e58d0004 str r0, [sp, #4]
  4887. ffff4c3c: e3a00008 mov r0, #8
  4888. ffff4c40: e58d0010 str r0, [sp, #16]
  4889. ffff4c44: e3a00001 mov r0, #1
  4890. ffff4c48: e58d000c str r0, [sp, #12]
  4891. ffff4c4c: e58d0008 str r0, [sp, #8]
  4892. ffff4c50: e28d2004 add r2, sp, #4
  4893. ffff4c54: e28d101c add r1, sp, #28
  4894. ffff4c58: e1a00004 mov r0, r4
  4895. ffff4c5c: ebfffcd8 bl 0xffff3fc4
  4896. ffff4c60: e1a05000 mov r5, r0
  4897. ffff4c64: e3550000 cmp r5, #0
  4898. ffff4c68: 0a000005 beq 0xffff4c84
  4899. ffff4c6c: e1b00006 movs r0, r6
  4900. ffff4c70: e2466001 sub r6, r6, #1
  4901. ffff4c74: 0a000000 beq 0xffff4c7c
  4902. ffff4c78: eaffffed b 0xffff4c34
  4903. ffff4c7c: e1a00005 mov r0, r5
  4904. ffff4c80: eaffffe0 b 0xffff4c08
  4905. ffff4c84: e30f2f00 movw r2, #65280 ; 0xff00
  4906. ffff4c88: e59d1014 ldr r1, [sp, #20]
  4907. ffff4c8c: e0021421 and r1, r2, r1, lsr #8
  4908. ffff4c90: e59d0014 ldr r0, [sp, #20]
  4909. ffff4c94: e1810c20 orr r0, r1, r0, lsr #24
  4910. ffff4c98: e3a028ff mov r2, #16711680 ; 0xff0000
  4911. ffff4c9c: e59d1014 ldr r1, [sp, #20]
  4912. ffff4ca0: e0021401 and r1, r2, r1, lsl #8
  4913. ffff4ca4: e1800001 orr r0, r0, r1
  4914. ffff4ca8: e3a024ff mov r2, #-16777216 ; 0xff000000
  4915. ffff4cac: e59d1014 ldr r1, [sp, #20]
  4916. ffff4cb0: e0021c01 and r1, r2, r1, lsl #24
  4917. ffff4cb4: e1800001 orr r0, r0, r1
  4918. ffff4cb8: e584002c str r0, [r4, #44] ; 0x2c
  4919. ffff4cbc: e30f2f00 movw r2, #65280 ; 0xff00
  4920. ffff4cc0: e59d1018 ldr r1, [sp, #24]
  4921. ffff4cc4: e0021421 and r1, r2, r1, lsr #8
  4922. ffff4cc8: e59d0018 ldr r0, [sp, #24]
  4923. ffff4ccc: e1810c20 orr r0, r1, r0, lsr #24
  4924. ffff4cd0: e3a028ff mov r2, #16711680 ; 0xff0000
  4925. ffff4cd4: e59d1018 ldr r1, [sp, #24]
  4926. ffff4cd8: e0021401 and r1, r2, r1, lsl #8
  4927. ffff4cdc: e1800001 orr r0, r0, r1
  4928. ffff4ce0: e3a024ff mov r2, #-16777216 ; 0xff000000
  4929. ffff4ce4: e59d1018 ldr r1, [sp, #24]
  4930. ffff4ce8: e0021c01 and r1, r2, r1, lsl #24
  4931. ffff4cec: e1800001 orr r0, r0, r1
  4932. ffff4cf0: e5840030 str r0, [r4, #48] ; 0x30
  4933. ffff4cf4: e594002c ldr r0, [r4, #44] ; 0x2c
  4934. ffff4cf8: e7e30c50 ubfx r0, r0, #24, #4
  4935. ffff4cfc: e3500000 cmp r0, #0
  4936. ffff4d00: 0a000004 beq 0xffff4d18
  4937. ffff4d04: e3500001 cmp r0, #1
  4938. ffff4d08: 0a000006 beq 0xffff4d28
  4939. ffff4d0c: e3500002 cmp r0, #2
  4940. ffff4d10: 1a00000c bne 0xffff4d48
  4941. ffff4d14: ea000007 b 0xffff4d38
  4942. ffff4d18: e320f000 nop {0}
  4943. ffff4d1c: e59f0770 ldr r0, [pc, #1904] ; 0xffff5494 =0x00020010
  4944. ffff4d20: e5840008 str r0, [r4, #8]
  4945. ffff4d24: ea00000b b 0xffff4d58
  4946. ffff4d28: e320f000 nop {0}
  4947. ffff4d2c: e59f0768 ldr r0, [pc, #1896] ; 0xffff549c =0x0002001a
  4948. ffff4d30: e5840008 str r0, [r4, #8]
  4949. ffff4d34: ea000007 b 0xffff4d58
  4950. ffff4d38: e320f000 nop {0}
  4951. ffff4d3c: e59f075c ldr r0, [pc, #1884] ; 0xffff54a0 =0x00020020
  4952. ffff4d40: e5840008 str r0, [r4, #8]
  4953. ffff4d44: ea000003 b 0xffff4d58
  4954. ffff4d48: e320f000 nop {0}
  4955. ffff4d4c: e59f0740 ldr r0, [pc, #1856] ; 0xffff5494 =0x00020010
  4956. ffff4d50: e5840008 str r0, [r4, #8]
  4957. ffff4d54: e320f000 nop {0}
  4958. ffff4d58: e320f000 nop {0}
  4959. ffff4d5c: e594002c ldr r0, [r4, #44] ; 0x2c
  4960. ffff4d60: e3100701 tst r0, #262144 ; 0x40000
  4961. ffff4d64: 0a000002 beq 0xffff4d74
  4962. ffff4d68: e5940020 ldr r0, [r4, #32]
  4963. ffff4d6c: e3800c01 orr r0, r0, #256 ; 0x100
  4964. ffff4d70: e5840020 str r0, [r4, #32]
  4965. ffff4d74: e3a00000 mov r0, #0
  4966. ffff4d78: eaffffa2 b 0xffff4c08
  4967. ffff4d7c: e92d4070 push {r4, r5, r6, lr}
  4968. ffff4d80: e1a04000 mov r4, r0
  4969. ffff4d84: e1a05001 mov r5, r1
  4970. ffff4d88: e5940010 ldr r0, [r4, #16]
  4971. ffff4d8c: e1500005 cmp r0, r5
  4972. ffff4d90: 2a000000 bcs 0xffff4d98
  4973. ffff4d94: e5945010 ldr r5, [r4, #16]
  4974. ffff4d98: e594000c ldr r0, [r4, #12]
  4975. ffff4d9c: e1500005 cmp r0, r5
  4976. ffff4da0: 9a000000 bls 0xffff4da8
  4977. ffff4da4: e594500c ldr r5, [r4, #12]
  4978. ffff4da8: e584501c str r5, [r4, #28]
  4979. ffff4dac: e1a00004 mov r0, r4
  4980. ffff4db0: ebfffb68 bl 0xffff3b58
  4981. ffff4db4: e8bd8070 pop {r4, r5, r6, pc}
  4982. ffff4db8: e92d4070 push {r4, r5, r6, lr}
  4983. ffff4dbc: e1a04000 mov r4, r0
  4984. ffff4dc0: e1a05001 mov r5, r1
  4985. ffff4dc4: e5845018 str r5, [r4, #24]
  4986. ffff4dc8: e1a00004 mov r0, r4
  4987. ffff4dcc: ebfffb61 bl 0xffff3b58
  4988. ffff4dd0: e8bd8070 pop {r4, r5, r6, pc}
  4989. ffff4dd4: e92d4070 push {r4, r5, r6, lr}
  4990. ffff4dd8: e24ddf8a sub sp, sp, #552 ; 0x228
  4991. ffff4ddc: e1a04000 mov r4, r0
  4992. ffff4de0: e30063e8 movw r6, #1000 ; 0x3e8
  4993. ffff4de4: e3a00002 mov r0, #2
  4994. ffff4de8: e58d0204 str r0, [sp, #516] ; 0x204
  4995. ffff4dec: e3a00007 mov r0, #7
  4996. ffff4df0: e58d0208 str r0, [sp, #520] ; 0x208
  4997. ffff4df4: e3a00000 mov r0, #0
  4998. ffff4df8: e58d020c str r0, [sp, #524] ; 0x20c
  4999. ffff4dfc: e58d0220 str r0, [sp, #544] ; 0x220
  5000. ffff4e00: e3a02000 mov r2, #0
  5001. ffff4e04: e28d1f81 add r1, sp, #516 ; 0x204
  5002. ffff4e08: e1a00004 mov r0, r4
  5003. ffff4e0c: ebfffc6c bl 0xffff3fc4
  5004. ffff4e10: e1a05000 mov r5, r0
  5005. ffff4e14: e3550000 cmp r5, #0
  5006. ffff4e18: 0a000002 beq 0xffff4e28
  5007. ffff4e1c: e1a00005 mov r0, r5
  5008. ffff4e20: e28ddf8a add sp, sp, #552 ; 0x228
  5009. ffff4e24: e8bd8070 pop {r4, r5, r6, pc}
  5010. ffff4e28: e3a00003 mov r0, #3
  5011. ffff4e2c: e58d0204 str r0, [sp, #516] ; 0x204
  5012. ffff4e30: e5940034 ldr r0, [r4, #52] ; 0x34
  5013. ffff4e34: e1a00800 lsl r0, r0, #16
  5014. ffff4e38: e58d020c str r0, [sp, #524] ; 0x20c
  5015. ffff4e3c: e3a00015 mov r0, #21
  5016. ffff4e40: e58d0208 str r0, [sp, #520] ; 0x208
  5017. ffff4e44: e3a00000 mov r0, #0
  5018. ffff4e48: e58d0220 str r0, [sp, #544] ; 0x220
  5019. ffff4e4c: e3a02000 mov r2, #0
  5020. ffff4e50: e28d1f81 add r1, sp, #516 ; 0x204
  5021. ffff4e54: e1a00004 mov r0, r4
  5022. ffff4e58: ebfffc59 bl 0xffff3fc4
  5023. ffff4e5c: e1a05000 mov r5, r0
  5024. ffff4e60: e3550000 cmp r5, #0
  5025. ffff4e64: 0a000001 beq 0xffff4e70
  5026. ffff4e68: e1a00005 mov r0, r5
  5027. ffff4e6c: eaffffeb b 0xffff4e20
  5028. ffff4e70: e5940008 ldr r0, [r4, #8]
  5029. ffff4e74: e3100802 tst r0, #131072 ; 0x20000
  5030. ffff4e78: 0a000003 beq 0xffff4e8c
  5031. ffff4e7c: e30f1fff movw r1, #65535 ; 0xffff
  5032. ffff4e80: e59d0210 ldr r0, [sp, #528] ; 0x210
  5033. ffff4e84: e0010820 and r0, r1, r0, lsr #16
  5034. ffff4e88: e5840034 str r0, [r4, #52] ; 0x34
  5035. ffff4e8c: e59f1610 ldr r1, [pc, #1552] ; 0xffff54a4
  5036. ffff4e90: e1a00004 mov r0, r4
  5037. ffff4e94: ebffffb8 bl 0xffff4d7c
  5038. ffff4e98: e3a00009 mov r0, #9
  5039. ffff4e9c: e58d0204 str r0, [sp, #516] ; 0x204
  5040. ffff4ea0: e3a00007 mov r0, #7
  5041. ffff4ea4: e58d0208 str r0, [sp, #520] ; 0x208
  5042. ffff4ea8: e5940034 ldr r0, [r4, #52] ; 0x34
  5043. ffff4eac: e1a00800 lsl r0, r0, #16
  5044. ffff4eb0: e58d020c str r0, [sp, #524] ; 0x20c
  5045. ffff4eb4: e3a00000 mov r0, #0
  5046. ffff4eb8: e58d0220 str r0, [sp, #544] ; 0x220
  5047. ffff4ebc: e3a02000 mov r2, #0
  5048. ffff4ec0: e28d1f81 add r1, sp, #516 ; 0x204
  5049. ffff4ec4: e1a00004 mov r0, r4
  5050. ffff4ec8: ebfffc3d bl 0xffff3fc4
  5051. ffff4ecc: e1a05000 mov r5, r0
  5052. ffff4ed0: e3550000 cmp r5, #0
  5053. ffff4ed4: 0a000001 beq 0xffff4ee0
  5054. ffff4ed8: e1a00005 mov r0, r5
  5055. ffff4edc: eaffffcf b 0xffff4e20
  5056. ffff4ee0: e1a01006 mov r1, r6
  5057. ffff4ee4: e1a00004 mov r0, r4
  5058. ffff4ee8: ebfffdbf bl 0xffff45ec
  5059. ffff4eec: e5940008 ldr r0, [r4, #8]
  5060. ffff4ef0: e3500801 cmp r0, #65536 ; 0x10000
  5061. ffff4ef4: 1a000023 bne 0xffff4f88
  5062. ffff4ef8: e59d1210 ldr r1, [sp, #528] ; 0x210
  5063. ffff4efc: e7e30d51 ubfx r0, r1, #26, #4
  5064. ffff4f00: e3500005 cmp r0, #5
  5065. ffff4f04: 308ff100 addcc pc, pc, r0, lsl #2
  5066. ffff4f08: ea000018 b 0xffff4f70
  5067. ffff4f0c: ea000003 b 0xffff4f20
  5068. ffff4f10: ea000006 b 0xffff4f30
  5069. ffff4f14: ea000009 b 0xffff4f40
  5070. ffff4f18: ea00000c b 0xffff4f50
  5071. ffff4f1c: ea00000f b 0xffff4f60
  5072. ffff4f20: e320f000 nop {0}
  5073. ffff4f24: e59f157c ldr r1, [pc, #1404] ; 0xffff54a8
  5074. ffff4f28: e5841008 str r1, [r4, #8]
  5075. ffff4f2c: ea000013 b 0xffff4f80
  5076. ffff4f30: e320f000 nop {0}
  5077. ffff4f34: e59f1570 ldr r1, [pc, #1392] ; 0xffff54ac
  5078. ffff4f38: e5841008 str r1, [r4, #8]
  5079. ffff4f3c: ea00000f b 0xffff4f80
  5080. ffff4f40: e320f000 nop {0}
  5081. ffff4f44: e59f1564 ldr r1, [pc, #1380] ; 0xffff54b0
  5082. ffff4f48: e5841008 str r1, [r4, #8]
  5083. ffff4f4c: ea00000b b 0xffff4f80
  5084. ffff4f50: e320f000 nop {0}
  5085. ffff4f54: e59f1558 ldr r1, [pc, #1368] ; 0xffff54b4
  5086. ffff4f58: e5841008 str r1, [r4, #8]
  5087. ffff4f5c: ea000007 b 0xffff4f80
  5088. ffff4f60: e320f000 nop {0}
  5089. ffff4f64: e59f152c ldr r1, [pc, #1324] ; 0xffff5498 =0x00010040
  5090. ffff4f68: e5841008 str r1, [r4, #8]
  5091. ffff4f6c: ea000003 b 0xffff4f80
  5092. ffff4f70: e320f000 nop {0}
  5093. ffff4f74: e59f152c ldr r1, [pc, #1324] ; 0xffff54a8
  5094. ffff4f78: e5841008 str r1, [r4, #8]
  5095. ffff4f7c: e320f000 nop {0}
  5096. ffff4f80: e320f000 nop {0}
  5097. ffff4f84: e320f000 nop {0}
  5098. ffff4f88: e59d0214 ldr r0, [sp, #532] ; 0x214
  5099. ffff4f8c: e7e30850 ubfx r0, r0, #16, #4
  5100. ffff4f90: e3a01001 mov r1, #1
  5101. ffff4f94: e1a00011 lsl r0, r1, r0
  5102. ffff4f98: e5840044 str r0, [r4, #68] ; 0x44
  5103. ffff4f9c: e5940044 ldr r0, [r4, #68] ; 0x44
  5104. ffff4fa0: e3500c02 cmp r0, #512 ; 0x200
  5105. ffff4fa4: 9a000001 bls 0xffff4fb0
  5106. ffff4fa8: e3000200 movw r0, #512 ; 0x200
  5107. ffff4fac: e5840044 str r0, [r4, #68] ; 0x44
  5108. ffff4fb0: e3a00007 mov r0, #7
  5109. ffff4fb4: e58d0204 str r0, [sp, #516] ; 0x204
  5110. ffff4fb8: e3a0001d mov r0, #29
  5111. ffff4fbc: e58d0208 str r0, [sp, #520] ; 0x208
  5112. ffff4fc0: e5940034 ldr r0, [r4, #52] ; 0x34
  5113. ffff4fc4: e1a00800 lsl r0, r0, #16
  5114. ffff4fc8: e58d020c str r0, [sp, #524] ; 0x20c
  5115. ffff4fcc: e3a00000 mov r0, #0
  5116. ffff4fd0: e58d0220 str r0, [sp, #544] ; 0x220
  5117. ffff4fd4: e3a02000 mov r2, #0
  5118. ffff4fd8: e28d1f81 add r1, sp, #516 ; 0x204
  5119. ffff4fdc: e1a00004 mov r0, r4
  5120. ffff4fe0: ebfffbf7 bl 0xffff3fc4
  5121. ffff4fe4: e1a05000 mov r5, r0
  5122. ffff4fe8: e3550000 cmp r5, #0
  5123. ffff4fec: 0a000001 beq 0xffff4ff8
  5124. ffff4ff0: e1a00005 mov r0, r5
  5125. ffff4ff4: eaffff89 b 0xffff4e20
  5126. ffff4ff8: e3a000ff mov r0, #255 ; 0xff
  5127. ffff4ffc: e5840038 str r0, [r4, #56] ; 0x38
  5128. ffff5000: e584003c str r0, [r4, #60] ; 0x3c
  5129. ffff5004: e5940008 ldr r0, [r4, #8]
  5130. ffff5008: e3100802 tst r0, #131072 ; 0x20000
  5131. ffff500c: 1a000036 bne 0xffff50ec
  5132. ffff5010: e5940008 ldr r0, [r4, #8]
  5133. ffff5014: e59f147c ldr r1, [pc, #1148] ; 0xffff5498 =0x00010040
  5134. ffff5018: e1500001 cmp r0, r1
  5135. ffff501c: 3a000032 bcc 0xffff50ec
  5136. ffff5020: e28d1004 add r1, sp, #4
  5137. ffff5024: e1a00004 mov r0, r4
  5138. ffff5028: ebfffe74 bl 0xffff4a00
  5139. ffff502c: e1a05000 mov r5, r0
  5140. ffff5030: e5dd00c4 ldrb r0, [sp, #196] ; 0xc4
  5141. ffff5034: e3500007 cmp r0, #7
  5142. ffff5038: 308ff100 addcc pc, pc, r0, lsl #2
  5143. ffff503c: ea00001e b 0xffff50bc
  5144. ffff5040: ea000005 b 0xffff505c
  5145. ffff5044: ea000008 b 0xffff506c
  5146. ffff5048: ea00000b b 0xffff507c
  5147. ffff504c: ea00000e b 0xffff508c
  5148. ffff5050: ea000019 b 0xffff50bc
  5149. ffff5054: ea000010 b 0xffff509c
  5150. ffff5058: ea000013 b 0xffff50ac
  5151. ffff505c: e320f000 nop {0}
  5152. ffff5060: e59f0430 ldr r0, [pc, #1072] ; 0xffff5498 =0x00010040
  5153. ffff5064: e5840008 str r0, [r4, #8]
  5154. ffff5068: ea000013 b 0xffff50bc
  5155. ffff506c: e320f000 nop {0}
  5156. ffff5070: e59f0440 ldr r0, [pc, #1088] ; 0xffff54b8
  5157. ffff5074: e5840008 str r0, [r4, #8]
  5158. ffff5078: ea00000f b 0xffff50bc
  5159. ffff507c: e320f000 nop {0}
  5160. ffff5080: e59f0434 ldr r0, [pc, #1076] ; 0xffff54bc
  5161. ffff5084: e5840008 str r0, [r4, #8]
  5162. ffff5088: ea00000b b 0xffff50bc
  5163. ffff508c: e320f000 nop {0}
  5164. ffff5090: e59f0428 ldr r0, [pc, #1064] ; 0xffff54c0
  5165. ffff5094: e5840008 str r0, [r4, #8]
  5166. ffff5098: ea000007 b 0xffff50bc
  5167. ffff509c: e320f000 nop {0}
  5168. ffff50a0: e59f041c ldr r0, [pc, #1052] ; 0xffff54c4
  5169. ffff50a4: e5840008 str r0, [r4, #8]
  5170. ffff50a8: ea000003 b 0xffff50bc
  5171. ffff50ac: e320f000 nop {0}
  5172. ffff50b0: e59f0410 ldr r0, [pc, #1040] ; 0xffff54c8
  5173. ffff50b4: e5840008 str r0, [r4, #8]
  5174. ffff50b8: e320f000 nop {0}
  5175. ffff50bc: e320f000 nop {0}
  5176. ffff50c0: e5dd00a4 ldrb r0, [sp, #164] ; 0xa4
  5177. ffff50c4: e3100001 tst r0, #1
  5178. ffff50c8: 0a000001 beq 0xffff50d4
  5179. ffff50cc: e5dd00b7 ldrb r0, [sp, #183] ; 0xb7
  5180. ffff50d0: e5840038 str r0, [r4, #56] ; 0x38
  5181. ffff50d4: e5940008 ldr r0, [r4, #8]
  5182. ffff50d8: e59f13e0 ldr r1, [pc, #992] ; 0xffff54c0
  5183. ffff50dc: e1500001 cmp r0, r1
  5184. ffff50e0: 3a000001 bcc 0xffff50ec
  5185. ffff50e4: e5dd00b5 ldrb r0, [sp, #181] ; 0xb5
  5186. ffff50e8: e584003c str r0, [r4, #60] ; 0x3c
  5187. ffff50ec: e5940008 ldr r0, [r4, #8]
  5188. ffff50f0: e3100802 tst r0, #131072 ; 0x20000
  5189. ffff50f4: 0a000003 beq 0xffff5108
  5190. ffff50f8: e1a00004 mov r0, r4
  5191. ffff50fc: ebfffeab bl 0xffff4bb0
  5192. ffff5100: e1a05000 mov r5, r0
  5193. ffff5104: ea000003 b 0xffff5118
  5194. ffff5108: e28d1004 add r1, sp, #4
  5195. ffff510c: e1a00004 mov r0, r4
  5196. ffff5110: ebfffe70 bl 0xffff4ad8
  5197. ffff5114: e1a05000 mov r5, r0
  5198. ffff5118: e3550000 cmp r5, #0
  5199. ffff511c: 0a000001 beq 0xffff5128
  5200. ffff5120: e1a00005 mov r0, r5
  5201. ffff5124: eaffff3d b 0xffff4e20
  5202. ffff5128: e1c402d0 ldrd r0, [r4, #32]
  5203. ffff512c: e0000001 and r0, r0, r1
  5204. ffff5130: e5840020 str r0, [r4, #32]
  5205. ffff5134: e5940008 ldr r0, [r4, #8]
  5206. ffff5138: e3100802 tst r0, #131072 ; 0x20000
  5207. ffff513c: 0a000033 beq 0xffff5210
  5208. ffff5140: e5940020 ldr r0, [r4, #32]
  5209. ffff5144: e3100c01 tst r0, #256 ; 0x100
  5210. ffff5148: 0a000025 beq 0xffff51e4
  5211. ffff514c: e3a00037 mov r0, #55 ; 0x37
  5212. ffff5150: e58d0204 str r0, [sp, #516] ; 0x204
  5213. ffff5154: e3a00015 mov r0, #21
  5214. ffff5158: e58d0208 str r0, [sp, #520] ; 0x208
  5215. ffff515c: e5940034 ldr r0, [r4, #52] ; 0x34
  5216. ffff5160: e1a00800 lsl r0, r0, #16
  5217. ffff5164: e58d020c str r0, [sp, #524] ; 0x20c
  5218. ffff5168: e3a00000 mov r0, #0
  5219. ffff516c: e58d0220 str r0, [sp, #544] ; 0x220
  5220. ffff5170: e3a02000 mov r2, #0
  5221. ffff5174: e28d1f81 add r1, sp, #516 ; 0x204
  5222. ffff5178: e1a00004 mov r0, r4
  5223. ffff517c: ebfffb90 bl 0xffff3fc4
  5224. ffff5180: e1a05000 mov r5, r0
  5225. ffff5184: e3550000 cmp r5, #0
  5226. ffff5188: 0a000001 beq 0xffff5194
  5227. ffff518c: e1a00005 mov r0, r5
  5228. ffff5190: eaffff22 b 0xffff4e20
  5229. ffff5194: e3a00006 mov r0, #6
  5230. ffff5198: e58d0204 str r0, [sp, #516] ; 0x204
  5231. ffff519c: e3a00015 mov r0, #21
  5232. ffff51a0: e58d0208 str r0, [sp, #520] ; 0x208
  5233. ffff51a4: e3a00002 mov r0, #2
  5234. ffff51a8: e58d020c str r0, [sp, #524] ; 0x20c
  5235. ffff51ac: e3a00000 mov r0, #0
  5236. ffff51b0: e58d0220 str r0, [sp, #544] ; 0x220
  5237. ffff51b4: e3a02000 mov r2, #0
  5238. ffff51b8: e28d1f81 add r1, sp, #516 ; 0x204
  5239. ffff51bc: e1a00004 mov r0, r4
  5240. ffff51c0: ebfffb7f bl 0xffff3fc4
  5241. ffff51c4: e1a05000 mov r5, r0
  5242. ffff51c8: e3550000 cmp r5, #0
  5243. ffff51cc: 0a000001 beq 0xffff51d8
  5244. ffff51d0: e1a00005 mov r0, r5
  5245. ffff51d4: eaffff11 b 0xffff4e20
  5246. ffff51d8: e3a01004 mov r1, #4
  5247. ffff51dc: e1a00004 mov r0, r4
  5248. ffff51e0: ebfffef4 bl 0xffff4db8
  5249. ffff51e4: e5940020 ldr r0, [r4, #32]
  5250. ffff51e8: e3100001 tst r0, #1
  5251. ffff51ec: 0a000003 beq 0xffff5200
  5252. ffff51f0: e59f12d4 ldr r1, [pc, #724] ; 0xffff54cc
  5253. ffff51f4: e1a00004 mov r0, r4
  5254. ffff51f8: ebfffedf bl 0xffff4d7c
  5255. ffff51fc: ea000035 b 0xffff52d8
  5256. ffff5200: e59f12c8 ldr r1, [pc, #712] ; 0xffff54d0
  5257. ffff5204: e1a00004 mov r0, r4
  5258. ffff5208: ebfffedb bl 0xffff4d7c
  5259. ffff520c: ea000031 b 0xffff52d8
  5260. ffff5210: e5940020 ldr r0, [r4, #32]
  5261. ffff5214: e3100c01 tst r0, #256 ; 0x100
  5262. ffff5218: 0a00000d beq 0xffff5254
  5263. ffff521c: e3a03001 mov r3, #1
  5264. ffff5220: e3a020b7 mov r2, #183 ; 0xb7
  5265. ffff5224: e1a01003 mov r1, r3
  5266. ffff5228: e1a00004 mov r0, r4
  5267. ffff522c: ebfffe0d bl 0xffff4a68
  5268. ffff5230: e1a05000 mov r5, r0
  5269. ffff5234: e3550000 cmp r5, #0
  5270. ffff5238: 0a000001 beq 0xffff5244
  5271. ffff523c: e1a00005 mov r0, r5
  5272. ffff5240: eafffef6 b 0xffff4e20
  5273. ffff5244: e3a01004 mov r1, #4
  5274. ffff5248: e1a00004 mov r0, r4
  5275. ffff524c: ebfffed9 bl 0xffff4db8
  5276. ffff5250: ea00000f b 0xffff5294
  5277. ffff5254: e5940020 ldr r0, [r4, #32]
  5278. ffff5258: e3100c02 tst r0, #512 ; 0x200
  5279. ffff525c: 0a00000c beq 0xffff5294
  5280. ffff5260: e3a03002 mov r3, #2
  5281. ffff5264: e3a020b7 mov r2, #183 ; 0xb7
  5282. ffff5268: e3a01001 mov r1, #1
  5283. ffff526c: e1a00004 mov r0, r4
  5284. ffff5270: ebfffdfc bl 0xffff4a68
  5285. ffff5274: e1a05000 mov r5, r0
  5286. ffff5278: e3550000 cmp r5, #0
  5287. ffff527c: 0a000001 beq 0xffff5288
  5288. ffff5280: e1a00005 mov r0, r5
  5289. ffff5284: eafffee5 b 0xffff4e20
  5290. ffff5288: e3a01008 mov r1, #8
  5291. ffff528c: e1a00004 mov r0, r4
  5292. ffff5290: ebfffec8 bl 0xffff4db8
  5293. ffff5294: e5940020 ldr r0, [r4, #32]
  5294. ffff5298: e3100001 tst r0, #1
  5295. ffff529c: 0a00000a beq 0xffff52cc
  5296. ffff52a0: e5940020 ldr r0, [r4, #32]
  5297. ffff52a4: e3100010 tst r0, #16
  5298. ffff52a8: 0a000003 beq 0xffff52bc
  5299. ffff52ac: e59f1220 ldr r1, [pc, #544] ; 0xffff54d4
  5300. ffff52b0: e1a00004 mov r0, r4
  5301. ffff52b4: ebfffeb0 bl 0xffff4d7c
  5302. ffff52b8: ea000006 b 0xffff52d8
  5303. ffff52bc: e59f1214 ldr r1, [pc, #532] ; 0xffff54d8
  5304. ffff52c0: e1a00004 mov r0, r4
  5305. ffff52c4: ebfffeac bl 0xffff4d7c
  5306. ffff52c8: ea000002 b 0xffff52d8
  5307. ffff52cc: e59f1208 ldr r1, [pc, #520] ; 0xffff54dc
  5308. ffff52d0: e1a00004 mov r0, r4
  5309. ffff52d4: ebfffea8 bl 0xffff4d7c
  5310. ffff52d8: e3a00000 mov r0, #0
  5311. ffff52dc: eafffecf b 0xffff4e20
  5312. ffff52e0: e92d4030 push {r4, r5, lr}
  5313. ffff52e4: e24dd024 sub sp, sp, #36 ; 0x24
  5314. ffff52e8: e1a04000 mov r4, r0
  5315. ffff52ec: e3a00008 mov r0, #8
  5316. ffff52f0: e58d0000 str r0, [sp]
  5317. ffff52f4: e5940004 ldr r0, [r4, #4]
  5318. ffff52f8: e59f1190 ldr r1, [pc, #400] ; 0xffff5490 =0x00ff8000
  5319. ffff52fc: e1100001 tst r0, r1
  5320. ffff5300: 0a000001 beq 0xffff530c
  5321. ffff5304: e3a00001 mov r0, #1
  5322. ffff5308: ea000000 b 0xffff5310
  5323. ffff530c: e3a00000 mov r0, #0
  5324. ffff5310: e3a010aa mov r1, #170 ; 0xaa
  5325. ffff5314: e1810400 orr r0, r1, r0, lsl #8
  5326. ffff5318: e58d0008 str r0, [sp, #8]
  5327. ffff531c: e3a00015 mov r0, #21
  5328. ffff5320: e58d0004 str r0, [sp, #4]
  5329. ffff5324: e3a00000 mov r0, #0
  5330. ffff5328: e58d001c str r0, [sp, #28]
  5331. ffff532c: e3a02000 mov r2, #0
  5332. ffff5330: e1a0100d mov r1, sp
  5333. ffff5334: e1a00004 mov r0, r4
  5334. ffff5338: ebfffb21 bl 0xffff3fc4
  5335. ffff533c: e1a05000 mov r5, r0
  5336. ffff5340: e3550000 cmp r5, #0
  5337. ffff5344: 0a000002 beq 0xffff5354
  5338. ffff5348: e1a00005 mov r0, r5
  5339. ffff534c: e28dd024 add sp, sp, #36 ; 0x24
  5340. ffff5350: e8bd8030 pop {r4, r5, pc}
  5341. ffff5354: e59d000c ldr r0, [sp, #12]
  5342. ffff5358: e20000ff and r0, r0, #255 ; 0xff
  5343. ffff535c: e35000aa cmp r0, #170 ; 0xaa
  5344. ffff5360: 0a000001 beq 0xffff536c
  5345. ffff5364: e3e00010 mvn r0, #16
  5346. ffff5368: eafffff7 b 0xffff534c
  5347. ffff536c: e59f012c ldr r0, [pc, #300] ; 0xffff54a0 =0x00020020
  5348. ffff5370: e5840008 str r0, [r4, #8]
  5349. ffff5374: e3a00000 mov r0, #0
  5350. ffff5378: eafffff3 b 0xffff534c
  5351. ffff537c: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  5352. ffff5380: e24dd038 sub sp, sp, #56 ; 0x38
  5353. ffff5384: e1a04000 mov r4, r0
  5354. ffff5388: e1a08001 mov r8, r1
  5355. ffff538c: e1a06002 mov r6, r2
  5356. ffff5390: e1a05003 mov r5, r3
  5357. ffff5394: e3550000 cmp r5, #0
  5358. ffff5398: 0a000004 beq 0xffff53b0
  5359. ffff539c: e3a00012 mov r0, #18
  5360. ffff53a0: e58d0014 str r0, [sp, #20]
  5361. ffff53a4: e3a00000 mov r0, #0
  5362. ffff53a8: e58d0034 str r0, [sp, #52] ; 0x34
  5363. ffff53ac: ea000002 b 0xffff53bc
  5364. ffff53b0: e3a00000 mov r0, #0
  5365. ffff53b4: e28dd038 add sp, sp, #56 ; 0x38
  5366. ffff53b8: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  5367. ffff53bc: e5940014 ldr r0, [r4, #20]
  5368. ffff53c0: e3500000 cmp r0, #0
  5369. ffff53c4: 0a000001 beq 0xffff53d0
  5370. ffff53c8: e58d601c str r6, [sp, #28]
  5371. ffff53cc: ea000002 b 0xffff53dc
  5372. ffff53d0: e5940044 ldr r0, [r4, #68] ; 0x44
  5373. ffff53d4: e0000690 mul r0, r0, r6
  5374. ffff53d8: e58d001c str r0, [sp, #28]
  5375. ffff53dc: e3a00015 mov r0, #21
  5376. ffff53e0: e58d0018 str r0, [sp, #24]
  5377. ffff53e4: e3a00000 mov r0, #0
  5378. ffff53e8: e58d0030 str r0, [sp, #48] ; 0x30
  5379. ffff53ec: e58d8004 str r8, [sp, #4]
  5380. ffff53f0: e58d500c str r5, [sp, #12]
  5381. ffff53f4: e5940044 ldr r0, [r4, #68] ; 0x44
  5382. ffff53f8: e58d0010 str r0, [sp, #16]
  5383. ffff53fc: e3a00001 mov r0, #1
  5384. ffff5400: e58d0008 str r0, [sp, #8]
  5385. ffff5404: e28d2004 add r2, sp, #4
  5386. ffff5408: e28d1014 add r1, sp, #20
  5387. ffff540c: e1a00004 mov r0, r4
  5388. ffff5410: ebfffaeb bl 0xffff3fc4
  5389. ffff5414: e1a07000 mov r7, r0
  5390. ffff5418: e59d0014 ldr r0, [sp, #20]
  5391. ffff541c: e3500012 cmp r0, #18
  5392. ffff5420: 1a000011 bne 0xffff546c
  5393. ffff5424: e59d0034 ldr r0, [sp, #52] ; 0x34
  5394. ffff5428: e3500000 cmp r0, #0
  5395. ffff542c: 1a00000e bne 0xffff546c
  5396. ffff5430: e3a0000c mov r0, #12
  5397. ffff5434: e58d0014 str r0, [sp, #20]
  5398. ffff5438: e3a0001d mov r0, #29
  5399. ffff543c: e58d0018 str r0, [sp, #24]
  5400. ffff5440: e3a00000 mov r0, #0
  5401. ffff5444: e58d001c str r0, [sp, #28]
  5402. ffff5448: e58d0030 str r0, [sp, #48] ; 0x30
  5403. ffff544c: e3a02000 mov r2, #0
  5404. ffff5450: e28d1014 add r1, sp, #20
  5405. ffff5454: e1a00004 mov r0, r4
  5406. ffff5458: ebfffad9 bl 0xffff3fc4
  5407. ffff545c: e3500000 cmp r0, #0
  5408. ffff5460: 0a000001 beq 0xffff546c
  5409. ffff5464: e3a00000 mov r0, #0
  5410. ffff5468: eaffffd1 b 0xffff53b4
  5411. ffff546c: e3570000 cmp r7, #0
  5412. ffff5470: 0a000001 beq 0xffff547c
  5413. ffff5474: e3a00000 mov r0, #0
  5414. ffff5478: eaffffcd b 0xffff53b4
  5415. ffff547c: e1a00005 mov r0, r5
  5416. ffff5480: eaffffcb b 0xffff53b4
  5417. ;; Global Offset Table
  5418. ffff5484: fdf94080
  5419. ffff5488: f0f0f0f0
  5420. ffff548c: f0f0f0fa
  5421. ffff5490: 00ff8000
  5422. ffff5494: 00020010
  5423. ffff5498: 00010040
  5424. ffff549c: 0002001a
  5425. ffff54a0: 00020020
  5426. ffff54a4: 005b8d80
  5427. ffff54a8: 00010012
  5428. ffff54ac: 00010014
  5429. ffff54b0: 00010022
  5430. ffff54b4: 00010030
  5431. ffff54b8: 00010041
  5432. ffff54bc: 00010042
  5433. ffff54c0: 00010043
  5434. ffff54c4: 00010044
  5435. ffff54c8: 00010045
  5436. ffff54cc: 02faf080
  5437. ffff54d0: 017d7840
  5438. ffff54d4: 03197500
  5439. ffff54d8: 018cba80
  5440. ffff54dc: 01312d00
  5441. ffff54e0: e92d47f0 push {r4, r5, r6, r7, r8, r9, sl, lr}
  5442. ffff54e4: e1a05000 mov r5, r0
  5443. ffff54e8: e1a08001 mov r8, r1
  5444. ffff54ec: e1a06002 mov r6, r2
  5445. ffff54f0: e1a09003 mov r9, r3
  5446. ffff54f4: e1a07006 mov r7, r6
  5447. ffff54f8: e3560000 cmp r6, #0
  5448. ffff54fc: 1a000001 bne 0xffff5508
  5449. ffff5500: e3a00000 mov r0, #0
  5450. ffff5504: e8bd87f0 pop {r4, r5, r6, r7, r8, r9, sl, pc}
  5451. ffff5508: e320f000 nop {0}
  5452. ffff550c: e5950048 ldr r0, [r5, #72] ; 0x48
  5453. ffff5510: e1500007 cmp r0, r7
  5454. ffff5514: 2a000001 bcs 0xffff5520
  5455. ffff5518: e5950048 ldr r0, [r5, #72] ; 0x48
  5456. ffff551c: ea000000 b 0xffff5524
  5457. ffff5520: e1a00007 mov r0, r7
  5458. ffff5524: e1a04000 mov r4, r0
  5459. ffff5528: e1a03004 mov r3, r4
  5460. ffff552c: e1a02008 mov r2, r8
  5461. ffff5530: e1a01009 mov r1, r9
  5462. ffff5534: e1a00005 mov r0, r5
  5463. ffff5538: ebffff8f bl 0xffff537c
  5464. ffff553c: e1500004 cmp r0, r4
  5465. ffff5540: 0a000001 beq 0xffff554c
  5466. ffff5544: e3a00000 mov r0, #0
  5467. ffff5548: eaffffed b 0xffff5504
  5468. ffff554c: e0477004 sub r7, r7, r4
  5469. ffff5550: e0888004 add r8, r8, r4
  5470. ffff5554: e5950044 ldr r0, [r5, #68] ; 0x44
  5471. ffff5558: e0299094 mla r9, r4, r0, r9
  5472. ffff555c: e3570000 cmp r7, #0
  5473. ffff5560: 1affffe9 bne 0xffff550c
  5474. ffff5564: e1a00006 mov r0, r6
  5475. ffff5568: eaffffe5 b 0xffff5504
  5476. ffff556c: e92d43f0 push {r4, r5, r6, r7, r8, r9, lr}
  5477. ffff5570: e24dd034 sub sp, sp, #52 ; 0x34
  5478. ffff5574: e1a05000 mov r5, r0
  5479. ffff5578: e1a09001 mov r9, r1
  5480. ffff557c: e1a06002 mov r6, r2
  5481. ffff5580: e1a07003 mov r7, r3
  5482. ffff5584: e3a04000 mov r4, #0
  5483. ffff5588: e3a08001 mov r8, #1
  5484. ffff558c: e59f02a4 ldr r0, [pc, #676] ; 0xffff5838 = 0x00b71b00
  5485. ffff5590: e585001c str r0, [r5, #28]
  5486. ffff5594: e320f000 nop {0}
  5487. ffff5598: e1a00005 mov r0, r5
  5488. ffff559c: ebfff95e bl 0xffff3b1c
  5489. ffff55a0: e1a00005 mov r0, r5
  5490. ffff55a4: ebfff96b bl 0xffff3b58
  5491. ffff55a8: e300012c movw r0, #300 ; 0x12c
  5492. ffff55ac: e3a01000 mov r1, #0
  5493. ffff55b0: ebfff847 bl 0xffff36d4
  5494. ffff55b4: e1a00005 mov r0, r5
  5495. ffff55b8: ebfffc4e bl 0xffff46f8
  5496. ffff55bc: e3a00000 mov r0, #0
  5497. ffff55c0: e58d0010 str r0, [sp, #16]
  5498. ffff55c4: e58d0018 str r0, [sp, #24]
  5499. ffff55c8: e58d0014 str r0, [sp, #20]
  5500. ffff55cc: e3a00001 mov r0, #1
  5501. ffff55d0: e58d002c str r0, [sp, #44] ; 0x2c
  5502. ffff55d4: e58d7000 str r7, [sp]
  5503. ffff55d8: e58d6008 str r6, [sp, #8]
  5504. ffff55dc: e3000200 movw r0, #512 ; 0x200
  5505. ffff55e0: e58d000c str r0, [sp, #12]
  5506. ffff55e4: e3a00001 mov r0, #1
  5507. ffff55e8: e58d0004 str r0, [sp, #4]
  5508. ffff55ec: e1a0200d mov r2, sp
  5509. ffff55f0: e28d1010 add r1, sp, #16
  5510. ffff55f4: e1a00005 mov r0, r5
  5511. ffff55f8: ebfffa71 bl 0xffff3fc4
  5512. ffff55fc: e1a04000 mov r4, r0
  5513. ffff5600: e3740005 cmn r4, #5
  5514. ffff5604: 0a000001 beq 0xffff5610
  5515. ffff5608: e3740006 cmn r4, #6
  5516. ffff560c: 1a000002 bne 0xffff561c
  5517. ffff5610: e1a00004 mov r0, r4
  5518. ffff5614: e28dd034 add sp, sp, #52 ; 0x34
  5519. ffff5618: e8bd83f0 pop {r4, r5, r6, r7, r8, r9, pc}
  5520. ffff561c: e3540000 cmp r4, #0
  5521. ffff5620: 0a000008 beq 0xffff5648
  5522. ffff5624: e3580000 cmp r8, #0
  5523. ffff5628: 0a000006 beq 0xffff5648
  5524. ffff562c: e3a08000 mov r8, #0
  5525. ffff5630: e51f0194 ldr r0, [pc, #-404] ; 0xffff54a4 =0x005b8d80
  5526. ffff5634: e585001c str r0, [r5, #28]
  5527. ffff5638: e3a00001 mov r0, #1
  5528. ffff563c: e3a01000 mov r1, #0
  5529. ffff5640: ebfff839 bl 0xffff372c
  5530. ffff5644: eaffffd3 b 0xffff5598
  5531. ffff5648: e3540000 cmp r4, #0
  5532. ffff564c: 0a000001 beq 0xffff5658
  5533. ffff5650: e1a00004 mov r0, r4
  5534. ffff5654: eaffffee b 0xffff5614
  5535. ffff5658: e1a00006 mov r0, r6
  5536. ffff565c: eaffffec b 0xffff5614
  5537. ffff5660: e92d4070 push {r4, r5, r6, lr}
  5538. ffff5664: e1a05000 mov r5, r0
  5539. ffff5668: e3a04000 mov r4, #0
  5540. ffff566c: e1a00005 mov r0, r5
  5541. ffff5670: ebfff957 bl 0xffff3bd4
  5542. ffff5674: e1a04000 mov r4, r0
  5543. ffff5678: e3540000 cmp r4, #0
  5544. ffff567c: 0a000001 beq 0xffff5688
  5545. ffff5680: e1a00004 mov r0, r4
  5546. ffff5684: e8bd8070 pop {r4, r5, r6, pc}
  5547. ffff5688: e1a00005 mov r0, r5
  5548. ffff568c: ebfff922 bl 0xffff3b1c
  5549. ffff5690: e59f01a4 ldr r0, [pc, #420] ; 0xffff583c =0x00061a80
  5550. ffff5694: e585001c str r0, [r5, #28]
  5551. ffff5698: e3a00001 mov r0, #1
  5552. ffff569c: e5850018 str r0, [r5, #24]
  5553. ffff56a0: e1a00005 mov r0, r5
  5554. ffff56a4: ebfff92b bl 0xffff3b58
  5555. ffff56a8: e300012c movw r0, #300 ; 0x12c
  5556. ffff56ac: e3a01000 mov r1, #0
  5557. ffff56b0: ebfff807 bl 0xffff36d4
  5558. ffff56b4: e1a00005 mov r0, r5
  5559. ffff56b8: ebfffbfa bl 0xffff46a8
  5560. ffff56bc: e1a04000 mov r4, r0
  5561. ffff56c0: e3540000 cmp r4, #0
  5562. ffff56c4: 0a000001 beq 0xffff56d0
  5563. ffff56c8: e1a00004 mov r0, r4
  5564. ffff56cc: eaffffec b 0xffff5684
  5565. ffff56d0: e3a00000 mov r0, #0
  5566. ffff56d4: e5850040 str r0, [r5, #64] ; 0x40
  5567. ffff56d8: e1a00005 mov r0, r5
  5568. ffff56dc: ebfffeff bl 0xffff52e0
  5569. ffff56e0: e1a00005 mov r0, r5
  5570. ffff56e4: ebfffc2c bl 0xffff479c
  5571. ffff56e8: e1a04000 mov r4, r0
  5572. ffff56ec: e3540000 cmp r4, #0
  5573. ffff56f0: 0a000006 beq 0xffff5710
  5574. ffff56f4: e1a00005 mov r0, r5
  5575. ffff56f8: ebfffc71 bl 0xffff48c4
  5576. ffff56fc: e1a04000 mov r4, r0
  5577. ffff5700: e3540000 cmp r4, #0
  5578. ffff5704: 0a000001 beq 0xffff5710
  5579. ffff5708: e3e00010 mvn r0, #16
  5580. ffff570c: eaffffdc b 0xffff5684
  5581. ffff5710: e1a00004 mov r0, r4
  5582. ffff5714: eaffffda b 0xffff5684
  5583. ffff5718: e92d4070 push {r4, r5, r6, lr} ; r0 = card_no, r1 = structure
  5584. ffff571c: e1a06000 mov r6, r0
  5585. ffff5720: e1a04001 mov r4, r1
  5586. ffff5724: e3e05000 mvn r5, #0
  5587. ffff5728: e1a01004 mov r1, r4
  5588. ffff572c: e1a00006 mov r0, r6
  5589. ffff5730: ebfffb88 bl 0xffff4558
  5590. ffff5734: e1a05000 mov r5, r0
  5591. ffff5738: e3550000 cmp r5, #0
  5592. ffff573c: 0a000001 beq 0xffff5748
  5593. ffff5740: e3e00000 mvn r0, #0
  5594. ffff5744: e8bd8070 pop {r4, r5, r6, pc}
  5595. ffff5748: e300012c movw r0, #300 ; 0x12c
  5596. ffff574c: e5840048 str r0, [r4, #72] ; 0x48
  5597. ffff5750: e1a00004 mov r0, r4
  5598. ffff5754: ebffffc1 bl 0xffff5660
  5599. ffff5758: e1a05000 mov r5, r0
  5600. ffff575c: e3550000 cmp r5, #0
  5601. ffff5760: 0a000001 beq 0xffff576c
  5602. ffff5764: e3e00000 mvn r0, #0
  5603. ffff5768: eafffff5 b 0xffff5744
  5604. ffff576c: e1a00004 mov r0, r4
  5605. ffff5770: ebfffd97 bl 0xffff4dd4
  5606. ffff5774: e1a05000 mov r5, r0
  5607. ffff5778: e3550000 cmp r5, #0
  5608. ffff577c: 0a000001 beq 0xffff5788
  5609. ffff5780: e3e00000 mvn r0, #0
  5610. ffff5784: eaffffee b 0xffff5744
  5611. ffff5788: e3a00000 mov r0, #0
  5612. ffff578c: eaffffec b 0xffff5744
  5613. ffff5790: e92d4070 push {r4, r5, r6, lr}
  5614. ffff5794: e1a06000 mov r6, r0
  5615. ffff5798: e1a04001 mov r4, r1
  5616. ffff579c: e3e05000 mvn r5, #0
  5617. ffff57a0: e1a01004 mov r1, r4
  5618. ffff57a4: e1a00006 mov r0, r6
  5619. ffff57a8: ebfffb6a bl 0xffff4558
  5620. ffff57ac: e1a05000 mov r5, r0
  5621. ffff57b0: e3550000 cmp r5, #0
  5622. ffff57b4: 0a000001 beq 0xffff57c0
  5623. ffff57b8: e3e00000 mvn r0, #0
  5624. ffff57bc: e8bd8070 pop {r4, r5, r6, pc}
  5625. ffff57c0: e300012c movw r0, #300 ; 0x12c
  5626. ffff57c4: e5840048 str r0, [r4, #72] ; 0x48
  5627. ffff57c8: e1a00004 mov r0, r4
  5628. ffff57cc: ebfff900 bl 0xffff3bd4
  5629. ffff57d0: e1a05000 mov r5, r0
  5630. ffff57d4: e3550000 cmp r5, #0
  5631. ffff57d8: 0a000001 beq 0xffff57e4
  5632. ffff57dc: e1a00005 mov r0, r5
  5633. ffff57e0: eafffff5 b 0xffff57bc
  5634. ffff57e4: e1a00004 mov r0, r4
  5635. ffff57e8: ebfff8cb bl 0xffff3b1c
  5636. ffff57ec: e59f0044 ldr r0, [pc, #68] ; 0xffff5838 =0x00b71b00
  5637. ffff57f0: e584001c str r0, [r4, #28]
  5638. ffff57f4: e3a00004 mov r0, #4
  5639. ffff57f8: e5840018 str r0, [r4, #24]
  5640. ffff57fc: e1a00004 mov r0, r4
  5641. ffff5800: ebfff8d4 bl 0xffff3b58
  5642. ffff5804: e300012c movw r0, #300 ; 0x12c
  5643. ffff5808: e3a01000 mov r1, #0
  5644. ffff580c: ebfff7b0 bl 0xffff36d4
  5645. ffff5810: e3a00000 mov r0, #0
  5646. ffff5814: eaffffe8 b 0xffff57bc
  5647. ffff5818: e92d4070 push {r4, r5, r6, lr}
  5648. ffff581c: e1a04000 mov r4, r0
  5649. ffff5820: e1a05001 mov r5, r1
  5650. ffff5824: e1a01005 mov r1, r5
  5651. ffff5828: e1a00004 mov r0, r4
  5652. ffff582c: ebfffb64 bl 0xffff45c4
  5653. ffff5830: e3a00000 mov r0, #0
  5654. ffff5834: e8bd8070 pop {r4, r5, r6, pc}
  5655. ;; Global Offset Table
  5656. ffff5838: 00b71b00
  5657. ffff583c: 00061a80
  5658. ffff5840: e59f06e8 ldr r0, [pc, #1768] ; 0xffff5f30 =0x77773333
  5659. ffff5844: e59f16e8 ldr r1, [pc, #1768] ; 0xffff5f34 =0x01c20848
  5660. ffff5848: e5810000 str r0, [r1]
  5661. ffff584c: e3a00010 mov r0, #16
  5662. ffff5850: e281101c add r1, r1, #28
  5663. ffff5854: e5810000 str r0, [r1]
  5664. ffff5858: e12fff1e bx lr
  5665. ffff585c: e59f06d4 ldr r0, [pc, #1748] ; 0xffff5f38 =0x77777777
  5666. ffff5860: e59f16cc ldr r1, [pc, #1740] ; 0xffff5f34 =0x01c20848
  5667. ffff5864: e5810000 str r0, [r1]
  5668. ffff5868: e3a00000 mov r0, #0
  5669. ffff586c: e281101c add r1, r1, #28
  5670. ffff5870: e5810000 str r0, [r1]
  5671. ffff5874: e12fff1e bx lr
  5672. ffff5878: e92d4010 push {r4, lr}
  5673. ffff587c: e59f06b8 ldr r0, [pc, #1720] ; 0xffff5f3c =0x01c20000 SCU_BASE
  5674. ffff5880: e59002c0 ldr r0, [r0, #704] ; 0x2c0
  5675. ffff5884: e3800601 orr r0, r0, #1048576 ; 0x100000
  5676. ffff5888: e59f16ac ldr r1, [pc, #1708] ; 0xffff5f3c =0x01c20000 SCU_BASE
  5677. ffff588c: e58102c0 str r0, [r1, #704] ; 0x2c0
  5678. ffff5890: e1a00001 mov r0, r1
  5679. ffff5894: e5900060 ldr r0, [r0, #96] ; 0x60
  5680. ffff5898: e3800601 orr r0, r0, #1048576 ; 0x100000
  5681. ffff589c: e5810060 str r0, [r1, #96] ; 0x60
  5682. ffff58a0: e3a00102 mov r0, #-2147483648 ; 0x80000000
  5683. ffff58a4: e58100a0 str r0, [r1, #160] ; 0xa0
  5684. ffff58a8: ebffffe4 bl 0xffff5840
  5685. ffff58ac: e59f0688 ldr r0, [pc, #1672] ; 0xffff5f3c =0x01c20000 SCU_BASE
  5686. ffff58b0: e59002c0 ldr r0, [r0, #704] ; 0x2c0
  5687. ffff58b4: e3800040 orr r0, r0, #64 ; 0x40
  5688. ffff58b8: e59f167c ldr r1, [pc, #1660] ; 0xffff5f3c =0x01c20000 SCU_BASE
  5689. ffff58bc: e58102c0 str r0, [r1, #704] ; 0x2c0
  5690. ffff58c0: e1a00001 mov r0, r1
  5691. ffff58c4: e5900060 ldr r0, [r0, #96] ; 0x60
  5692. ffff58c8: e3800040 orr r0, r0, #64 ; 0x40
  5693. ffff58cc: e5810060 str r0, [r1, #96] ; 0x60
  5694. ffff58d0: e3010001 movw r0, #4097 ; 0x1001
  5695. ffff58d4: e2811912 add r1, r1, #294912 ; 0x48000
  5696. ffff58d8: e5810024 str r0, [r1, #36] ; 0x24
  5697. ffff58dc: e59f065c ldr r0, [pc, #1628] ; 0xffff5f40 =0x80000083
  5698. ffff58e0: e5810004 str r0, [r1, #4]
  5699. ffff58e4: e3000184 movw r0, #388 ; 0x184
  5700. ffff58e8: e5810008 str r0, [r1, #8]
  5701. ffff58ec: e59f0650 ldr r0, [pc, #1616] ; 0xffff5f44 =0x80208020
  5702. ffff58f0: e5810018 str r0, [r1, #24]
  5703. ffff58f4: e3a00000 mov r0, #0
  5704. ffff58f8: e5810010 str r0, [r1, #16]
  5705. ffff58fc: e3e00000 mvn r0, #0
  5706. ffff5900: e5810014 str r0, [r1, #20]
  5707. ffff5904: e8bd8010 pop {r4, pc}
  5708. ffff5908: e92d4010 push {r4, lr}
  5709. ffff590c: e3a00000 mov r0, #0
  5710. ffff5910: e59f1630 ldr r1, [pc, #1584] ; 0xffff5f48 = 0x01c68000
  5711. ffff5914: e5810004 str r0, [r1, #4]
  5712. ffff5918: ebffffcf bl 0xffff585c
  5713. ffff591c: e3a00000 mov r0, #0
  5714. ffff5920: e59f1614 ldr r1, [pc, #1556] ; 0xffff5f3c =0x01c20000 SCU_BASE
  5715. ffff5924: e58100a0 str r0, [r1, #160] ; 0xa0
  5716. ffff5928: e1c10000 bic r0, r1, r0
  5717. ffff592c: e59002c0 ldr r0, [r0, #704] ; 0x2c0
  5718. ffff5930: e3c00601 bic r0, r0, #1048576 ; 0x100000
  5719. ffff5934: e58102c0 str r0, [r1, #704] ; 0x2c0
  5720. ffff5938: e1a00001 mov r0, r1
  5721. ffff593c: e5900060 ldr r0, [r0, #96] ; 0x60
  5722. ffff5940: e3c00601 bic r0, r0, #1048576 ; 0x100000
  5723. ffff5944: e5810060 str r0, [r1, #96] ; 0x60
  5724. ffff5948: e1a00001 mov r0, r1
  5725. ffff594c: e5900060 ldr r0, [r0, #96] ; 0x60
  5726. ffff5950: e3c00040 bic r0, r0, #64 ; 0x40
  5727. ffff5954: e5810060 str r0, [r1, #96] ; 0x60
  5728. ffff5958: e1a00001 mov r0, r1
  5729. ffff595c: e59002c0 ldr r0, [r0, #704] ; 0x2c0
  5730. ffff5960: e3c00040 bic r0, r0, #64 ; 0x40
  5731. ffff5964: e58102c0 str r0, [r1, #704] ; 0x2c0
  5732. ffff5968: e8bd8010 pop {r4, pc}
  5733. ffff596c: e1a01000 mov r1, r0
  5734. ffff5970: e320f000 nop {0}
  5735. ffff5974: e59f05d0 ldr r0, [pc, #1488] ; 0xffff5f4c =0x01c02000 DMA_BASE
  5736. ffff5978: e5900030 ldr r0, [r0, #48] ; 0x30
  5737. ffff597c: e3100001 tst r0, #1
  5738. ffff5980: 1a000001 bne 0xffff598c
  5739. ffff5984: e3a00000 mov r0, #0
  5740. ffff5988: e12fff1e bx lr
  5741. ffff598c: e2410001 sub r0, r1, #1
  5742. ffff5990: e1b01000 movs r1, r0
  5743. ffff5994: 1afffff6 bne 0xffff5974
  5744. ffff5998: e3a00002 mov r0, #2
  5745. ffff599c: eafffff9 b 0xffff5988
  5746. ffff59a0: e1a01000 mov r1, r0
  5747. ffff59a4: e320f000 nop {0}
  5748. ffff59a8: e59f0598 ldr r0, [pc, #1432] ; 0xffff5f48 =0x01c68000
  5749. ffff59ac: e5900014 ldr r0, [r0, #20]
  5750. ffff59b0: e3100a01 tst r0, #4096 ; 0x1000
  5751. ffff59b4: 0a000001 beq 0xffff59c0
  5752. ffff59b8: e3a00000 mov r0, #0
  5753. ffff59bc: e12fff1e bx lr
  5754. ffff59c0: e2410001 sub r0, r1, #1
  5755. ffff59c4: e1b01000 movs r1, r0
  5756. ffff59c8: 1afffff6 bne 0xffff59a8
  5757. ffff59cc: e3a00002 mov r0, #2
  5758. ffff59d0: eafffff9 b 0xffff59bc
  5759. ffff59d4: e3a00000 mov r0, #0
  5760. ffff59d8: e59f156c ldr r1, [pc, #1388] ; 0xffff5f4c =0x01c02000 DMA_BASE
  5761. ffff59dc: e5810100 str r0, [r1, #256] ; 0x100
  5762. ffff59e0: e2400b02 sub r0, r0, #2048 ; 0x800
  5763. ffff59e4: e5810108 str r0, [r1, #264] ; 0x108
  5764. ffff59e8: e3a0000f mov r0, #15
  5765. ffff59ec: e5810010 str r0, [r1, #16]
  5766. ffff59f0: e3a00000 mov r0, #0
  5767. ffff59f4: e12fff1e bx lr
  5768. ffff59f8: e92d4070 push {r4, r5, r6, lr}
  5769. ffff59fc: e1a04000 mov r4, r0
  5770. ffff5a00: e1a05001 mov r5, r1
  5771. ffff5a04: e59dc010 ldr ip, [sp, #16]
  5772. ffff5a08: e30e1000 movw r1, #57344 ; 0xe000
  5773. ffff5a0c: e5814000 str r4, [r1]
  5774. ffff5a10: e5812004 str r2, [r1, #4]
  5775. ffff5a14: e5813008 str r3, [r1, #8]
  5776. ffff5a18: e581c00c str ip, [r1, #12]
  5777. ffff5a1c: e5815010 str r5, [r1, #16]
  5778. ffff5a20: e2410b3a sub r0, r1, #59392 ; 0xe800
  5779. ffff5a24: e5810014 str r0, [r1, #20]
  5780. ffff5a28: e3a00000 mov r0, #0
  5781. ffff5a2c: e59f6518 ldr r6, [pc, #1304] ; 0xffff5f4c =0x01c02000 DMA_BASE
  5782. ffff5a30: e5860100 str r0, [r6, #256] ; 0x100
  5783. ffff5a34: e3a0000f mov r0, #15
  5784. ffff5a38: e5860010 str r0, [r6, #16]
  5785. ffff5a3c: e1c60000 bic r0, r6, r0
  5786. ffff5a40: e5801108 str r1, [r0, #264] ; 0x108
  5787. ffff5a44: e3a00001 mov r0, #1
  5788. ffff5a48: e5860100 str r0, [r6, #256] ; 0x100
  5789. ffff5a4c: e3a00000 mov r0, #0
  5790. ffff5a50: e8bd8070 pop {r4, r5, r6, pc}
  5791. ffff5a54: e92d4ffe push {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, lr}
  5792. ffff5a58: e1a04000 mov r4, r0
  5793. ffff5a5c: e1a05001 mov r5, r1
  5794. ffff5a60: e1a07002 mov r7, r2
  5795. ffff5a64: e1a09003 mov r9, r3
  5796. ffff5a68: e301bf07 movw fp, #7943 ; 0x1f07
  5797. ffff5a6c: e3a00037 mov r0, #55 ; 0x37
  5798. ffff5a70: e58d0008 str r0, [sp, #8]
  5799. ffff5a74: e59f04d4 ldr r0, [pc, #1236] ; 0xffff5f50 =0x01c68300 SPI_RXD
  5800. ffff5a78: e58d0004 str r0, [sp, #4]
  5801. ffff5a7c: e2408c01 sub r8, r0, #256 ; 0x100
  5802. ffff5a80: e0840005 add r0, r4, r5
  5803. ffff5a84: e280ae96 add sl, r0, #2400 ; 0x960
  5804. ffff5a88: e2480c02 sub r0, r8, #512 ; 0x200
  5805. ffff5a8c: e5804034 str r4, [r0, #52] ; 0x34
  5806. ffff5a90: e0840005 add r0, r4, r5
  5807. ffff5a94: e2481c02 sub r1, r8, #512 ; 0x200
  5808. ffff5a98: e5810030 str r0, [r1, #48] ; 0x30
  5809. ffff5a9c: e1a00001 mov r0, r1
  5810. ffff5aa0: e5804038 str r4, [r0, #56] ; 0x38
  5811. ffff5aa4: e5900018 ldr r0, [r0, #24]
  5812. ffff5aa8: e3800c01 orr r0, r0, #256 ; 0x100
  5813. ffff5aac: e5810018 str r0, [r1, #24]
  5814. ffff5ab0: e1a03009 mov r3, r9
  5815. ffff5ab4: e58d5000 str r5, [sp]
  5816. ffff5ab8: e1a0100b mov r1, fp
  5817. ffff5abc: e59d0008 ldr r0, [sp, #8]
  5818. ffff5ac0: e59d2004 ldr r2, [sp, #4]
  5819. ffff5ac4: ebffffcb bl 0xffff59f8
  5820. ffff5ac8: e3a06000 mov r6, #0
  5821. ffff5acc: ea000002 b 0xffff5adc
  5822. ffff5ad0: e7d70006 ldrb r0, [r7, r6]
  5823. ffff5ad4: e5c80000 strb r0, [r8]
  5824. ffff5ad8: e2866001 add r6, r6, #1
  5825. ffff5adc: e1560004 cmp r6, r4
  5826. ffff5ae0: 3afffffa bcc 0xffff5ad0
  5827. ffff5ae4: e59f045c ldr r0, [pc, #1116] ; 0xffff5f48 =0x01c68000
  5828. ffff5ae8: e5900008 ldr r0, [r0, #8]
  5829. ffff5aec: e3800102 orr r0, r0, #-2147483648 ; 0x80000000
  5830. ffff5af0: e59f1450 ldr r1, [pc, #1104] ; 0xffff5f48 =0x01c68000
  5831. ffff5af4: e5810008 str r0, [r1, #8]
  5832. ffff5af8: e1a0000a mov r0, sl
  5833. ffff5afc: ebffff9a bl 0xffff596c
  5834. ffff5b00: e3500002 cmp r0, #2
  5835. ffff5b04: 1a000002 bne 0xffff5b14
  5836. ffff5b08: ebffffb1 bl 0xffff59d4
  5837. ffff5b0c: e3a00002 mov r0, #2
  5838. ffff5b10: e8bd8ffe pop {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, pc}
  5839. ffff5b14: e1a0000a mov r0, sl
  5840. ffff5b18: ebffffa0 bl 0xffff59a0
  5841. ffff5b1c: e3500002 cmp r0, #2
  5842. ffff5b20: 1a000002 bne 0xffff5b30
  5843. ffff5b24: ebffffaa bl 0xffff59d4
  5844. ffff5b28: e3a00002 mov r0, #2
  5845. ffff5b2c: eafffff7 b 0xffff5b10
  5846. ffff5b30: ebffffa7 bl 0xffff59d4
  5847. ffff5b34: e3010000 movw r0, #4096 ; 0x1000
  5848. ffff5b38: e59f1408 ldr r1, [pc, #1032] ; 0xffff5f48 =0x01c68000
  5849. ffff5b3c: e5810014 str r0, [r1, #20]
  5850. ffff5b40: e1c10000 bic r0, r1, r0
  5851. ffff5b44: e5900014 ldr r0, [r0, #20]
  5852. ffff5b48: e3100c0f tst r0, #3840 ; 0xf00
  5853. ffff5b4c: 0a000001 beq 0xffff5b58
  5854. ffff5b50: e3a00002 mov r0, #2
  5855. ffff5b54: eaffffed b 0xffff5b10
  5856. ffff5b58: e3a00000 mov r0, #0
  5857. ffff5b5c: eaffffeb b 0xffff5b10
  5858. ffff5b60: e92d4ff8 push {r3, r4, r5, r6, r7, r8, r9, sl, fp, lr}
  5859. ffff5b64: e1a08000 mov r8, r0
  5860. ffff5b68: e1a09001 mov r9, r1
  5861. ffff5b6c: e1a0a002 mov sl, r2
  5862. ffff5b70: e1a0b009 mov fp, r9
  5863. ffff5b74: e3a04000 mov r4, #0
  5864. ffff5b78: e1a05408 lsl r5, r8, #8
  5865. ffff5b7c: e1a0740a lsl r7, sl, #8
  5866. ffff5b80: ea000018 b 0xffff5be8
  5867. ffff5b84: e3a00003 mov r0, #3
  5868. ffff5b88: e5cd0000 strb r0, [sp]
  5869. ffff5b8c: e1a00825 lsr r0, r5, #16
  5870. ffff5b90: e5cd0001 strb r0, [sp, #1]
  5871. ffff5b94: e1a00425 lsr r0, r5, #8
  5872. ffff5b98: e5cd0002 strb r0, [sp, #2]
  5873. ffff5b9c: e5cd5003 strb r5, [sp, #3]
  5874. ffff5ba0: e0470004 sub r0, r7, r4
  5875. ffff5ba4: e3500b02 cmp r0, #2048 ; 0x800
  5876. ffff5ba8: 9a000001 bls 0xffff5bb4
  5877. ffff5bac: e3000800 movw r0, #2048 ; 0x800
  5878. ffff5bb0: ea000000 b 0xffff5bb8
  5879. ffff5bb4: e0470004 sub r0, r7, r4
  5880. ffff5bb8: e1a06000 mov r6, r0
  5881. ffff5bbc: e08b3004 add r3, fp, r4
  5882. ffff5bc0: e1a0200d mov r2, sp
  5883. ffff5bc4: e1a01006 mov r1, r6
  5884. ffff5bc8: e3a00004 mov r0, #4
  5885. ffff5bcc: ebffffa0 bl 0xffff5a54
  5886. ffff5bd0: e3500002 cmp r0, #2
  5887. ffff5bd4: 1a000001 bne 0xffff5be0
  5888. ffff5bd8: e3a00002 mov r0, #2
  5889. ffff5bdc: e8bd8ff8 pop {r3, r4, r5, r6, r7, r8, r9, sl, fp, pc}
  5890. ffff5be0: e0855006 add r5, r5, r6
  5891. ffff5be4: e0844006 add r4, r4, r6
  5892. ffff5be8: e1540007 cmp r4, r7
  5893. ffff5bec: 3affffe4 bcc 0xffff5b84
  5894. ffff5bf0: e3a00000 mov r0, #0
  5895. ffff5bf4: eafffff8 b 0xffff5bdc
  5896. ffff5bf8: e92d47fc push {r2, r3, r4, r5, r6, r7, r8, r9, sl, lr}
  5897. ffff5bfc: e1a05000 mov r5, r0
  5898. ffff5c00: e1a07001 mov r7, r1
  5899. ffff5c04: e1a08002 mov r8, r2
  5900. ffff5c08: e1a0a007 mov sl, r7
  5901. ffff5c0c: e3a00000 mov r0, #0
  5902. ffff5c10: e58d0004 str r0, [sp, #4]
  5903. ffff5c14: e3a06000 mov r6, #0
  5904. ffff5c18: e3a09000 mov r9, #0
  5905. ffff5c1c: e1a04485 lsl r4, r5, #9
  5906. ffff5c20: ea000012 b 0xffff5c70
  5907. ffff5c24: e3a000e8 mov r0, #232 ; 0xe8
  5908. ffff5c28: e5cd0000 strb r0, [sp]
  5909. ffff5c2c: e1a00824 lsr r0, r4, #16
  5910. ffff5c30: e5cd0001 strb r0, [sp, #1]
  5911. ffff5c34: e1a00424 lsr r0, r4, #8
  5912. ffff5c38: e5cd0002 strb r0, [sp, #2]
  5913. ffff5c3c: e5cd4003 strb r4, [sp, #3]
  5914. ffff5c40: e08a3009 add r3, sl, r9
  5915. ffff5c44: e1a0200d mov r2, sp
  5916. ffff5c48: e3001100 movw r1, #256 ; 0x100
  5917. ffff5c4c: e3a00008 mov r0, #8
  5918. ffff5c50: ebffff7f bl 0xffff5a54
  5919. ffff5c54: e3500002 cmp r0, #2
  5920. ffff5c58: 1a000001 bne 0xffff5c64
  5921. ffff5c5c: e3a00002 mov r0, #2
  5922. ffff5c60: e8bd87fc pop {r2, r3, r4, r5, r6, r7, r8, r9, sl, pc}
  5923. ffff5c64: e2866001 add r6, r6, #1
  5924. ffff5c68: e2899c01 add r9, r9, #256 ; 0x100
  5925. ffff5c6c: e2844c02 add r4, r4, #512 ; 0x200
  5926. ffff5c70: e1560008 cmp r6, r8
  5927. ffff5c74: 3affffea bcc 0xffff5c24
  5928. ffff5c78: e3a00000 mov r0, #0
  5929. ffff5c7c: eafffff7 b 0xffff5c60
  5930. ffff5c80: e92d400c push {r2, r3, lr}
  5931. ffff5c84: e1a01000 mov r1, r0
  5932. ffff5c88: e59f22c4 ldr r2, [pc, #708] ; 0xffff5f54 =0xffff622c
  5933. ffff5c8c: e8920005 ldm r2, {r0, r2}
  5934. ffff5c90: e88d0005 stm sp, {r0, r2}
  5935. ffff5c94: e79d0101 ldr r0, [sp, r1, lsl #2]
  5936. ffff5c98: e8bd800c pop {r2, r3, pc}
  5937. ffff5c9c: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  5938. ffff5ca0: e1a04000 mov r4, r0
  5939. ffff5ca4: e1a06001 mov r6, r1
  5940. ffff5ca8: e59f72a8 ldr r7, [pc, #680] ; 0xffff5f58 =0x01c68200 SPI_TXD
  5941. ffff5cac: e2470c02 sub r0, r7, #512 ; 0x200
  5942. ffff5cb0: e5804034 str r4, [r0, #52] ; 0x34
  5943. ffff5cb4: e5804030 str r4, [r0, #48] ; 0x30
  5944. ffff5cb8: e5804038 str r4, [r0, #56] ; 0x38
  5945. ffff5cbc: e2848e96 add r8, r4, #2400 ; 0x960
  5946. ffff5cc0: e3a05000 mov r5, #0
  5947. ffff5cc4: ea000002 b 0xffff5cd4
  5948. ffff5cc8: e7d60005 ldrb r0, [r6, r5]
  5949. ffff5ccc: e5c70000 strb r0, [r7]
  5950. ffff5cd0: e2855001 add r5, r5, #1
  5951. ffff5cd4: e1550004 cmp r5, r4
  5952. ffff5cd8: 3afffffa bcc 0xffff5cc8
  5953. ffff5cdc: e59f0264 ldr r0, [pc, #612] ; 0xffff5f48 =0x01c68000
  5954. ffff5ce0: e5900008 ldr r0, [r0, #8]
  5955. ffff5ce4: e3800102 orr r0, r0, #-2147483648 ; 0x80000000
  5956. ffff5ce8: e59f1258 ldr r1, [pc, #600] ; 0xffff5f48 =0x01c68000
  5957. ffff5cec: e5810008 str r0, [r1, #8]
  5958. ffff5cf0: e1a00008 mov r0, r8
  5959. ffff5cf4: ebffff29 bl 0xffff59a0
  5960. ffff5cf8: e3500002 cmp r0, #2
  5961. ffff5cfc: 1a000001 bne 0xffff5d08
  5962. ffff5d00: e3a00002 mov r0, #2
  5963. ffff5d04: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  5964. ffff5d08: e3010000 movw r0, #4096 ; 0x1000
  5965. ffff5d0c: e59f1234 ldr r1, [pc, #564] ; 0xffff5f48 =0x01c68000
  5966. ffff5d10: e5810014 str r0, [r1, #20]
  5967. ffff5d14: e1c10000 bic r0, r1, r0
  5968. ffff5d18: e5900014 ldr r0, [r0, #20]
  5969. ffff5d1c: e3100c0f tst r0, #3840 ; 0xf00
  5970. ffff5d20: 0a000001 beq 0xffff5d2c
  5971. ffff5d24: e3a00002 mov r0, #2
  5972. ffff5d28: eafffff5 b 0xffff5d04
  5973. ffff5d2c: e3a00000 mov r0, #0
  5974. ffff5d30: eafffff3 b 0xffff5d04
  5975. ffff5d34: e92d4038 push {r3, r4, r5, lr}
  5976. ffff5d38: e3a000ff mov r0, #255 ; 0xff
  5977. ffff5d3c: e58d0000 str r0, [sp]
  5978. ffff5d40: e3a040f0 mov r4, #240 ; 0xf0
  5979. ffff5d44: e1a0100d mov r1, sp
  5980. ffff5d48: e3a00001 mov r0, #1
  5981. ffff5d4c: ebffffd2 bl 0xffff5c9c
  5982. ffff5d50: e3500002 cmp r0, #2
  5983. ffff5d54: 1a000001 bne 0xffff5d60
  5984. ffff5d58: e3a00002 mov r0, #2
  5985. ffff5d5c: e8bd8038 pop {r3, r4, r5, pc}
  5986. ffff5d60: e320f000 nop {0}
  5987. ffff5d64: e2440001 sub r0, r4, #1
  5988. ffff5d68: e1b04000 movs r4, r0
  5989. ffff5d6c: 1afffffc bne 0xffff5d64
  5990. ffff5d70: e3a00000 mov r0, #0
  5991. ffff5d74: eafffff8 b 0xffff5d5c
  5992. ffff5d78: e92d4ff0 push {r4, r5, r6, r7, r8, r9, sl, fp, lr}
  5993. ffff5d7c: e24dd024 sub sp, sp, #36 ; 0x24
  5994. ffff5d80: e1a05000 mov r5, r0
  5995. ffff5d84: e1a07001 mov r7, r1
  5996. ffff5d88: e1a08002 mov r8, r2
  5997. ffff5d8c: e1a06003 mov r6, r3
  5998. ffff5d90: e28db048 add fp, sp, #72 ; 0x48
  5999. ffff5d94: e89b0e00 ldm fp, {r9, sl, fp}
  6000. ffff5d98: e3a00000 mov r0, #0
  6001. ffff5d9c: e58d0010 str r0, [sp, #16]
  6002. ffff5da0: e58d700c str r7, [sp, #12]
  6003. ffff5da4: e58d0008 str r0, [sp, #8]
  6004. ffff5da8: e3a00032 mov r0, #50 ; 0x32
  6005. ffff5dac: e58d0004 str r0, [sp, #4]
  6006. ffff5db0: e1a04005 mov r4, r5
  6007. ffff5db4: ea000056 b 0xffff5f14
  6008. ffff5db8: e3a00013 mov r0, #19
  6009. ffff5dbc: e5cd001c strb r0, [sp, #28]
  6010. ffff5dc0: e1a00824 lsr r0, r4, #16
  6011. ffff5dc4: e5cd001d strb r0, [sp, #29]
  6012. ffff5dc8: e1a00424 lsr r0, r4, #8
  6013. ffff5dcc: e5cd001e strb r0, [sp, #30]
  6014. ffff5dd0: e5cd401f strb r4, [sp, #31]
  6015. ffff5dd4: e28d101c add r1, sp, #28
  6016. ffff5dd8: e3a00004 mov r0, #4
  6017. ffff5ddc: ebffffae bl 0xffff5c9c
  6018. ffff5de0: e3500002 cmp r0, #2
  6019. ffff5de4: 1a000002 bne 0xffff5df4
  6020. ffff5de8: e3a00002 mov r0, #2
  6021. ffff5dec: e58d0010 str r0, [sp, #16]
  6022. ffff5df0: ea00004b b 0xffff5f24
  6023. ffff5df4: e3a0000f mov r0, #15
  6024. ffff5df8: e5cd0018 strb r0, [sp, #24]
  6025. ffff5dfc: e3a000c0 mov r0, #192 ; 0xc0
  6026. ffff5e00: e5cd0019 strb r0, [sp, #25]
  6027. ffff5e04: e3a00032 mov r0, #50 ; 0x32
  6028. ffff5e08: e58d0004 str r0, [sp, #4]
  6029. ffff5e0c: e320f000 nop {0}
  6030. ffff5e10: e28d3008 add r3, sp, #8
  6031. ffff5e14: e28d2018 add r2, sp, #24
  6032. ffff5e18: e3a01001 mov r1, #1
  6033. ffff5e1c: e3a00002 mov r0, #2
  6034. ffff5e20: ebffff0b bl 0xffff5a54
  6035. ffff5e24: e3500002 cmp r0, #2
  6036. ffff5e28: 1a000002 bne 0xffff5e38
  6037. ffff5e2c: e3a00002 mov r0, #2
  6038. ffff5e30: e58d0010 str r0, [sp, #16]
  6039. ffff5e34: ea00003a b 0xffff5f24
  6040. ffff5e38: e5dd0008 ldrb r0, [sp, #8]
  6041. ffff5e3c: e2000001 and r0, r0, #1
  6042. ffff5e40: e58d0008 str r0, [sp, #8]
  6043. ffff5e44: e5dd0008 ldrb r0, [sp, #8]
  6044. ffff5e48: e3500000 cmp r0, #0
  6045. ffff5e4c: 1a000000 bne 0xffff5e54
  6046. ffff5e50: ea000003 b 0xffff5e64
  6047. ffff5e54: e59d0004 ldr r0, [sp, #4]
  6048. ffff5e58: e2500001 subs r0, r0, #1
  6049. ffff5e5c: e58d0004 str r0, [sp, #4]
  6050. ffff5e60: 1affffea bne 0xffff5e10
  6051. ffff5e64: e320f000 nop {0}
  6052. ffff5e68: e3a0000b mov r0, #11
  6053. ffff5e6c: e5cd001c strb r0, [sp, #28]
  6054. ffff5e70: e3560b02 cmp r6, #2048 ; 0x800
  6055. ffff5e74: 1a000010 bne 0xffff5ebc
  6056. ffff5e78: e35a0001 cmp sl, #1
  6057. ffff5e7c: 1a000006 bne 0xffff5e9c
  6058. ffff5e80: e730fb14 udiv r0, r4, fp
  6059. ffff5e84: e2000001 and r0, r0, #1
  6060. ffff5e88: e3500001 cmp r0, #1
  6061. ffff5e8c: 1a000002 bne 0xffff5e9c
  6062. ffff5e90: e3a00010 mov r0, #16
  6063. ffff5e94: e5cd001d strb r0, [sp, #29]
  6064. ffff5e98: ea000001 b 0xffff5ea4
  6065. ffff5e9c: e3a00000 mov r0, #0
  6066. ffff5ea0: e5cd001d strb r0, [sp, #29]
  6067. ffff5ea4: e3a00000 mov r0, #0
  6068. ffff5ea8: e5cd001e strb r0, [sp, #30]
  6069. ffff5eac: e5cd001f strb r0, [sp, #31]
  6070. ffff5eb0: e3a00004 mov r0, #4
  6071. ffff5eb4: e58d0014 str r0, [sp, #20]
  6072. ffff5eb8: ea000008 b 0xffff5ee0
  6073. ffff5ebc: e3560a01 cmp r6, #4096 ; 0x1000
  6074. ffff5ec0: 1a000006 bne 0xffff5ee0
  6075. ffff5ec4: e3a00000 mov r0, #0
  6076. ffff5ec8: e5cd001d strb r0, [sp, #29]
  6077. ffff5ecc: e5cd001e strb r0, [sp, #30]
  6078. ffff5ed0: e5cd001f strb r0, [sp, #31]
  6079. ffff5ed4: e5cd0020 strb r0, [sp, #32]
  6080. ffff5ed8: e3a00005 mov r0, #5
  6081. ffff5edc: e58d0014 str r0, [sp, #20]
  6082. ffff5ee0: e0441005 sub r1, r4, r5
  6083. ffff5ee4: e59d000c ldr r0, [sp, #12]
  6084. ffff5ee8: e0230199 mla r3, r9, r1, r0
  6085. ffff5eec: e28d201c add r2, sp, #28
  6086. ffff5ef0: e1a01009 mov r1, r9
  6087. ffff5ef4: e59d0014 ldr r0, [sp, #20]
  6088. ffff5ef8: ebfffed5 bl 0xffff5a54
  6089. ffff5efc: e3500002 cmp r0, #2
  6090. ffff5f00: 1a000002 bne 0xffff5f10
  6091. ffff5f04: e3a00002 mov r0, #2
  6092. ffff5f08: e58d0010 str r0, [sp, #16]
  6093. ffff5f0c: ea000004 b 0xffff5f24
  6094. ffff5f10: e2844001 add r4, r4, #1
  6095. ffff5f14: e0850008 add r0, r5, r8
  6096. ffff5f18: e1500004 cmp r0, r4
  6097. ffff5f1c: 8affffa5 bhi 0xffff5db8
  6098. ffff5f20: e320f000 nop {0}
  6099. ffff5f24: e59d0010 ldr r0, [sp, #16]
  6100. ffff5f28: e28dd024 add sp, sp, #36 ; 0x24
  6101. ffff5f2c: e8bd8ff0 pop {r4, r5, r6, r7, r8, r9, sl, fp, pc}
  6102. ;; Global Offset Table
  6103. ffff5f30: 77773333
  6104. ffff5f34: 01c20848
  6105. ffff5f38: 77777777
  6106. ffff5f3c: 01c20000 ; SCU_BASE
  6107. ffff5f40: 80000083
  6108. ffff5f44: 80208020
  6109. ffff5f48: 01c68000 ; SPI0_BASE
  6110. ffff5f4c: 01c02000 ; DMA_BASE
  6111. ffff5f50: 01c68300 ; SPI_RXD
  6112. ffff5f54: ffff622c
  6113. ffff5f58: 01c68200 ; SPI_TXD
  6114. ffff5f5c: e92d41f0 push {r4, r5, r6, r7, r8, lr}
  6115. ffff5f60: ebfffe44 bl 0xffff5878
  6116. ffff5f64: e3a07000 mov r7, #0
  6117. ffff5f68: ea000029 b 0xffff6014
  6118. ffff5f6c: e1a00007 mov r0, r7
  6119. ffff5f70: ebffff42 bl 0xffff5c80
  6120. ffff5f74: e1a05000 mov r5, r0
  6121. ffff5f78: e3a02001 mov r2, #1
  6122. ffff5f7c: e3a01000 mov r1, #0
  6123. ffff5f80: e1a00001 mov r0, r1
  6124. ffff5f84: e12fff35 blx r5
  6125. ffff5f88: e3500002 cmp r0, #2
  6126. ffff5f8c: 1a000000 bne 0xffff5f94
  6127. ffff5f90: ea00001e b 0xffff6010
  6128. ffff5f94: e28f108c add r1, pc, #140 ; 0x8c =0xffff5028 "eGON.BT0"
  6129. ffff5f98: e3a00000 mov r0, #0
  6130. ffff5f9c: eb000024 bl check_magic
  6131. ffff5fa0: e3500000 cmp r0, #0
  6132. ffff5fa4: 0a000000 beq 0xffff5fac
  6133. ffff5fa8: ea000018 b 0xffff6010
  6134. ffff5fac: e3a06000 mov r6, #0
  6135. ffff5fb0: e5964010 ldr r4, [r6, #16]
  6136. ffff5fb4: e1a00004 mov r0, r4
  6137. ffff5fb8: e7df049f bfc r0, #9, #23
  6138. ffff5fbc: e3500000 cmp r0, #0
  6139. ffff5fc0: 0a000000 beq 0xffff5fc8
  6140. ffff5fc4: ea000011 b 0xffff6010
  6141. ffff5fc8: e1a02424 lsr r2, r4, #8
  6142. ffff5fcc: e3a01000 mov r1, #0
  6143. ffff5fd0: e1a00001 mov r0, r1
  6144. ffff5fd4: e12fff35 blx r5
  6145. ffff5fd8: e3500002 cmp r0, #2
  6146. ffff5fdc: 1a000000 bne 0xffff5fe4
  6147. ffff5fe0: ea00000a b 0xffff6010
  6148. ffff5fe4: e1a01004 mov r1, r4
  6149. ffff5fe8: e3a00000 mov r0, #0
  6150. ffff5fec: eb000022 bl check_sum
  6151. ffff5ff0: e3500000 cmp r0, #0
  6152. ffff5ff4: 1a000004 bne 0xffff600c
  6153. ffff5ff8: e3a00003 mov r0, #3
  6154. ffff5ffc: e5c60028 strb r0, [r6, #40] ; 0x28
  6155. ffff6000: ebfffe40 bl 0xffff5908
  6156. ffff6004: e3a00000 mov r0, #0
  6157. ffff6008: e8bd81f0 pop {r4, r5, r6, r7, r8, pc}
  6158. ffff600c: e320f000 nop {0}
  6159. ffff6010: e2877001 add r7, r7, #1
  6160. ffff6014: e3570002 cmp r7, #2
  6161. ffff6018: 3affffd3 bcc 0xffff5f6c
  6162. ffff601c: ebfffe39 bl 0xffff5908
  6163. ffff6020: e3e00000 mvn r0, #0
  6164. ffff6024: eafffff7 b 0xffff6008
  6165. ffff6028: 4e4f4765 .ascii "eGON"
  6166. ffff602c: 3054422e .ascii ".BT0"
  6167. ffff6030: 00000000
  6168. ;;;*****************************************************************************
  6169. check_magic:
  6170. ffff6034: e92d40f0 push {r4, r5, r6, r7, lr}
  6171. ffff6038: e1a02000 mov r2, r0
  6172. ffff603c: e1a0c002 mov ip, r2
  6173. ffff6040: e28c4004 add r4, ip, #4
  6174. ffff6044: e3a03000 mov r3, #0 ; counter
  6175. ffff6048: e3a05008 mov r5, #8 ; length
  6176. ffff604c: ea000006 b 0xffff606c ; while
  6177. ffff6050: e4d40001 ldrb r0, [r4], #1 ; load byte from src
  6178. ffff6054: e4d16001 ldrb r6, [r1], #1 ; load byte from reference
  6179. ffff6058: e1500006 cmp r0, r6
  6180. ffff605c: 0a000001 beq 0xffff6068 ; check if bytes are equal
  6181. ffff6060: e3a00001 mov r0, #1 ; no match
  6182. ffff6064: e8bd80f0 pop {r4, r5, r6, r7, pc}
  6183. ffff6068: e2833001 add r3, r3, #1 ; increment counter
  6184. ffff606c: e1530005 cmp r3, r5
  6185. ffff6070: 3afffff6 bcc 0xffff6050 ; end of magic?
  6186. ffff6074: e3a00000 mov r0, #0 ; yes, this is a match!
  6187. ffff6078: eafffff9 b 0xffff6064
  6188. ;;;*****************************************************************************
  6189. check_sum:
  6190. ffff607c: e92d40f0 push {r4, r5, r6, r7, lr}
  6191. ffff6080: e1a03000 mov r3, r0
  6192. ffff6084: e1a05001 mov r5, r1
  6193. ffff6088: e1a04003 mov r4, r3
  6194. ffff608c: e594600c ldr r6, [r4, #12]
  6195. ffff6090: e59f00bc ldr r0, [pc, #188] ; 0xffff6154 =0x5f0a6c39
  6196. ffff6094: e584000c str r0, [r4, #12]
  6197. ffff6098: e1a07125 lsr r7, r5, #2
  6198. ffff609c: e3a02000 mov r2, #0
  6199. ffff60a0: e1a01003 mov r1, r3
  6200. ffff60a4: e320f000 nop {0}
  6201. ffff60a8: e4910004 ldr r0, [r1], #4
  6202. ffff60ac: e0822000 add r2, r2, r0
  6203. ffff60b0: e4910004 ldr r0, [r1], #4
  6204. ffff60b4: e0822000 add r2, r2, r0
  6205. ffff60b8: e4910004 ldr r0, [r1], #4
  6206. ffff60bc: e0822000 add r2, r2, r0
  6207. ffff60c0: e4910004 ldr r0, [r1], #4
  6208. ffff60c4: e0822000 add r2, r2, r0
  6209. ffff60c8: e2470004 sub r0, r7, #4
  6210. ffff60cc: e1a07000 mov r7, r0
  6211. ffff60d0: e3500003 cmp r0, #3
  6212. ffff60d4: 8afffff3 bhi 0xffff60a8
  6213. ffff60d8: ea000001 b 0xffff60e4
  6214. ffff60dc: e4910004 ldr r0, [r1], #4
  6215. ffff60e0: e0822000 add r2, r2, r0
  6216. ffff60e4: e1b00007 movs r0, r7
  6217. ffff60e8: e2477001 sub r7, r7, #1
  6218. ffff60ec: 1afffffa bne 0xffff60dc
  6219. ffff60f0: e584600c str r6, [r4, #12]
  6220. ffff60f4: e1520006 cmp r2, r6
  6221. ffff60f8: 1a000001 bne 0xffff6104
  6222. ffff60fc: e3a00000 mov r0, #0
  6223. ffff6100: e8bd80f0 pop {r4, r5, r6, r7, pc}
  6224. ffff6104: e3a00001 mov r0, #1
  6225. ffff6108: eafffffc b 0xffff6100
  6226. ffff610c: e92d4070 push {r4, r5, r6, lr}
  6227. ffff6110: e1a05000 mov r5, r0
  6228. ffff6114: e1a06001 mov r6, r1
  6229. ffff6118: e1a04002 mov r4, r2
  6230. ffff611c: e1a01004 mov r1, r4
  6231. ffff6120: e1a00005 mov r0, r5
  6232. ffff6124: ebffffc2 bl check_magic
  6233. ffff6128: e3500000 cmp r0, #0
  6234. ffff612c: 1a000006 bne 0xffff614c
  6235. ffff6130: e1a01006 mov r1, r6
  6236. ffff6134: e1a00005 mov r0, r5
  6237. ffff6138: ebffffcf bl check_sum
  6238. ffff613c: e3500000 cmp r0, #0
  6239. ffff6140: 1a000001 bne 0xffff614c
  6240. ffff6144: e3a00000 mov r0, #0
  6241. ffff6148: e8bd8070 pop {r4, r5, r6, pc}
  6242. ffff614c: e3a00001 mov r0, #1
  6243. ffff6150: eafffffc b 0xffff6148
  6244. ;; Global Offset Table
  6245. ffff6154: 5f0a6c39
  6246. ffff6158: e1a01000 mov r1, r0
  6247. ffff615c: e1a00001 mov r0, r1
  6248. ffff6160: ea000000 b 0xffff6168
  6249. ffff6164: e2400001 sub r0, r0, #1
  6250. ffff6168: e3500000 cmp r0, #0
  6251. ffff616c: cafffffc bgt 0xffff6164
  6252. ffff6170: e12fff1e bx lr
  6253. check_uboot:
  6254. ffff6174: e92d4070 push {r4, r5, r6, lr}
  6255. ffff6178: e3a05000 mov r5, #0
  6256. ffff617c: e3a0603c mov r6, #60 ; 0x3c
  6257. ffff6180: e3a04004 mov r4, #4
  6258. ffff6184: ea000006 b 0xffff61a4
  6259. ffff6188: e1a00006 mov r0, r6
  6260. ffff618c: ebfffff1 bl 0xffff6158
  6261. ffff6190: e3a00507 mov r0, #29360128 ; 0x1c00000
  6262. ffff6194: e5900024 ldr r0, [r0, #36] ; 0x24 VER_REG
  6263. ffff6198: e7e00450 ubfx r0, r0, #8, #1 ; UBOOT_SEL_PAD_STA
  6264. ffff619c: e0855000 add r5, r5, r0
  6265. ffff61a0: e2444001 sub r4, r4, #1
  6266. ffff61a4: e3540000 cmp r4, #0
  6267. ffff61a8: cafffff6 bgt 0xffff6188
  6268. ffff61ac: e3550000 cmp r5, #0
  6269. ffff61b0: 1a000001 bne 0xffff61bc
  6270. ffff61b4: e3e00000 mvn r0, #0
  6271. ffff61b8: e8bd8070 pop {r4, r5, r6, pc}
  6272. ffff61bc: e3a00000 mov r0, #0
  6273. ffff61c0: eafffffc b 0xffff61b8
  6274. ffff61c4: 00004770 andeq r4, r0, r0, ror r7
  6275. jump_to:
  6276. ffff61c8: e1a0f000 mov pc, r0
  6277. ffff61cc: 00000800
  6278. ffff61d0: 00000400
  6279. ffff61d4: 00000000
  6280. ffff61d8: 00000040
  6281. ffff61dc: 00001000
  6282. ffff61e0: 00000400
  6283. ffff61e4: 00000000
  6284. ffff61e8: 00000040
  6285. ffff61ec: 00000800
  6286. ffff61f0: 00000400
  6287. ffff61f4: 00000000
  6288. ffff61f8: 00000040
  6289. ffff61fc: 00001000
  6290. ffff6200: 00000400
  6291. ffff6204: 00000000
  6292. ffff6208: 00000040
  6293. ffff620c: 00000800
  6294. ffff6210: 00000400
  6295. ffff6214: 00000001
  6296. ffff6218: 00000040
  6297. ffff621c: 00000800
  6298. ffff6220: 00000400
  6299. ffff6224: 00000001
  6300. ffff6228: 00000080
  6301. ffff622c: ffff5b60
  6302. ffff6230: ffff5bf8
  6303. ...