рдЙрд▓рдЯреА рд╣реБрдИ .NET рдЕрд╕реЗрдВрдмрд▓реА рдХреА рд░рд┐рд╡рд░реНрд╕ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ

рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐



рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ PokeIn COMET рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ obfuscated .NET рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рд╕рдВрд╢реЛрдзрди рдореЗрдВ рдПрдХ рд╕рдореНрдорд╛рдирд┐рдд рдирд┐рд╡рд╛рд╕ рд╕рдореБрджрд╛рдп рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред



рд░рд┐рд╡рд░реНрд╕ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ



рдХреБрдЫ рджрд┐рдиреЛрдВ рдкрд╣рд▓реЗ, рдореИрдВ ASP.NET рдХреЗ рд▓рд┐рдП COMET рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрдиреЗ рд▓рдЧрд╛ рдФрд░ рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдкрд╛рдпрд╛, рдЙрдирдореЗрдВ рд╕реЗ рдкреВрд░реНрд╡ рдореЗрдВ рдореБрдлреНрдд PokeIn рдерд╛ред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЗрд╕реЗ рдХреБрдЫ рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдорд┐рд▓реА, рдХреНрдпреЛрдВрдХрд┐ рд▓реЗрдЦрдХреЛрдВ рдиреЗ рдЗрд╕реЗ рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдХреА рд╢реНрд░реЗрдгреА рд╕реЗ рднреБрдЧрддрд╛рди рдХрд┐рдпрд╛ред рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЗ рдкрд╛рд╕ рдХреБрдЫ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЗ рд╕рд╛рде рдореБрдлреНрдд рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ, рд╢рд╛рдпрдж, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг 10 рдПрдХ рд╕рд╛рде рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдкреНрд░рддрд┐рдмрдВрдз рд╣реИред рд╣рдо рдЙрд╕рд╕реЗ рд▓рдбрд╝реЗрдВрдЧреЗред





decompilation



.NET рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд░рд┐рд╡рд░реНрд╕ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдкрд╣рд▓рд╛ рдЙрдкрдХрд░рдг рдкреНрд░рд╕рд┐рджреНрдз рдкрд░рд╛рд╡рд░реНрддрдХ рд╣реИред PokeIn рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдореБрдлреНрдд рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ, рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ .NET рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рд▓рд┐рдП рдЕрд╕реЗрдВрдмрд▓реА рджреЗрдЦреЗрдВ рдФрд░ рд░рд┐рдлреНрд▓реЗрдХреНрдЯрд░ рдЪрд▓рд╛рдПрдВред рдпрд╣рд╛рдВ рд╣рдо рдкрд╣рд▓реА рдирд┐рд░рд╛рд╢рд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ: рд░рд┐рдлреНрд▓реЗрдХреНрдЯрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЛ рдЦреЛрд▓рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред



рд░рд┐рдлреНрд▓реЗрдХреНрдЯрд░ рдлреЗрд▓



рдареАрдХ рд╣реИ, рдкрд░рд╛рд╡рд░реНрддрдХ рдХреЛ рдмрдВрдж рдХрд░реЗрдВ рдФрд░ ildasm.exe рдХреЛ рдпрд╛рдж рдХрд░реЗрдВ, MSIL рдХреЛрдб (Microsoft рдордзреНрдпрд╡рд░реНрддреА рднрд╛рд╖рд╛) рдореЗрдВ .NET рдЕрд╕реЗрдВрдмрд▓рд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП Windows SDK рдХреА рдПрдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛ред рдпрд╣ рд╣рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдХреЛрдб рджреЗрдЧрд╛ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЗрддрдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рд╣рдо ildasm рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рд╣рдорд╛рд░реА рдЕрд╕реЗрдВрдмрд▓реА рдЦреЛрд▓реЗрдВ ... рдФрд░ рдлрд┐рд░ рд╕реЗ рдлрд╛рдЗрд▓ рдХрд░реЗрдВ: "рд╕рдВрд░рдХреНрд╖рд┐рдд рдореЙрдбреНрдпреВрд▓ - рдбрд┐рд╕рд╛рдЗрдб рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛"ред



ILDasm рд╡рд┐рдлрд▓



рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЛ SupressIldasmAttribute рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рд╡рд┐рдШрдЯрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЗрд╕ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП PE CFF рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рдВрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдореБрдлреНрдд рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рдЗрд╕рдореЗрдВ рдЕрд╕реЗрдВрдмрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдлреБрд▓ .NET рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╕рдкреЛрд░реНрдЯ рд╣реИред рд╣рдорд╛рд░реА рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓реЗрдВ рдФрд░ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рджреЗрдЦреЗрдВ: '.NET рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛' / 'рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо' / '# ~' / 'рдЯреЗрдмрд▓реНрд╕'ред рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрджрд░реНрднреЛрдВ рдХреЗ рд▓рд┐рдП рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреА рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ (TypeRef) рд╣рдо рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕рдВрджрд░реНрдн рдкрд╛рддреЗ рд╣реИрдВ SupressIldasmAttribute рдФрд░ рдЗрд╕реЗ рдирд╛рдо рдФрд░ рдирд╛рдорд╕реНрдерд╛рди рдлрд╝реАрд▓реНрдб рдХреЛ 0 рдкрд░ рд╕реЗрдЯ рдХрд░рдХреЗ рд╣рдЯрд╛ рджреЗрдВред



рд╕реАрдПрдлрдПрдл рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рд╡рд┐рди



рдЕрдм рд╣рдо ildasm рдореЗрдВ рдЕрд╕реЗрдВрдмрд▓реА рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ MSIL рдХреЛрдб рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдЪреНрдЫрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд░рд┐рдлреНрд▓реЗрдХреНрдЯрд░ рдореЗрдВ рд╣рдорд╛рд░реА рдлрд╛рдЗрд▓ рдЕрднреА рднреА рдирд╣реАрдВ рдЦреБрд▓реА рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, MSIL рдХреЛ " ildasm.exe pokein.dll / source /out/pokein.il " рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рд╣реЗрдЬреЗрдВ рдФрд░ .NET рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рд╕рд╛рде рд╢рд╛рдорд┐рд▓ рдХрд┐рдП рдЧрдП ilasm рдпреВрдЯрд┐рд▓рд┐рдЯреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдПрдВ : " ilasm.exe pokein.il / dll /out:pokein.dll "ред рджреБрд░реНрднрд╛рдЧреНрдпрд╡рд╢, рдЗрд╕рд╕реЗ рдмрд╣реБрдд рдХрдо рд▓рд╛рдн рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЕрд╕реНрдкрд╖реНрдЯ рддрд░реАрдХреЗ рдЕрднреА рднреА рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рдФрд░ рдХреНрд▓рд╛рд╕ / рдлрд╝реАрд▓реНрдбреНрд╕ / рд╡рд┐рдзрд┐рдпреЛрдВ рдХреА рд╕реВрдЪреА рдСрдмреНрдЬреЗрдХреНрдЯ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рджреЗрдЦреА рдЬрд╛ рд╕рдХрддреА рд╣реИред



рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг



рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рд╕реНрдХреИрдВрдЯреА рдкреНрд░рд▓реЗрдЦрди рдФрд░ рд╕рдВрдЧреНрд░рд╣ рд╕реЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣рдореЗрдВ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдореБрдЦреНрдп рдХрд╛рд░реНрдп рд╕реНрдерд┐рд░ рд╡рд░реНрдЧ PokeIn.Comet.CometWorker рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЕрдзреНрдпрдпрди рдкрд░, рд╣рдо рд╕реНрдереИрддрд┐рдХ рд╕рдВрдкрддреНрддрд┐ ActiveClientCount рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рд╕реАрдорд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдХрдИ рдЕрддрд┐рднрд╛рд░рд┐рдд рдмрд┐рдВрдж рд╡рд┐рдзрд┐рдпрд╛рдВ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдПрдХ рдирдпрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХрдиреЗрдХреНрдЯ рд╣реЛрдиреЗ рдкрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╣рдо il-file рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред ActiveClientCount рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рдЦреЛрдЬ рдХрд░рддреЗ рд╕рдордп, рд╣рдореЗрдВ рдирд┐рдореНрди рдлрд╝реЙрд░реНрдо рдХреА рдХрдИ рд╕рдВрдкрддреНрддрд┐ рдХреЙрд▓ рдорд┐рд▓рддреА рд╣реИрдВ:



IL_0007: call int32 PokeIn.Comet.CometWorker::get_ActiveClientCount()

IL_000c: ldc.i4.s 10

IL_000e: ble IL_0027








рдЖрдЗрдП рдЗрд╕ рдХреЛрдб рдХреЛ рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рдкрд╛рд░реНрд╕ рдХрд░реЗрдВ:

IL_0007: ActiveClientCount рдЧреБрдг рдХреЗ рдЧреЗрдЯ рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдХреЛ рд╕реНрдЯреИрдХ рдкрд░ рдзрдХреЗрд▓рддрд╛ рд╣реИ

IL_000c: рд╕реНрдЯреИрдХ рдкрд░ рд╕рдВрдЦреНрдпрд╛ 10 рдХреЛ рдзрдХреНрдХрд╛ рджреЗрддрд╛ рд╣реИ

IL_000e: рдпрджрд┐ рд╕реНрдЯреИрдХ рд╕реЗ рдкрд╣рд▓рд╛ рдСрдкрд░реЗрдВрдб рджреВрд╕рд░реЗ рд╕реЗ рдХрдо рдпрд╛ рдЙрд╕рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ, рддреЛ IL_0027 рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреВрджреЗрдВ



рдЖрдорддреМрд░ рдкрд░, рдпреЗ рдХреЙрд▓ рдмрд┐рдВрдж рдФрд░ рдбрд╛рдпрдиреЗрдорд┐рдХрдмрд╛рдЗрдВрдб рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рд╣реИрдВ, рдЬреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕рд╣реА рд░рд╛рд╕реНрддреЗ рдкрд░ рд╣реИрдВред



MSIL рдбрд┐рдмрдЧрд┐рдВрдЧ



рдЕрдЧрд▓рд╛ рдЪрд░рдг рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╣рдореЗрд╢рд╛ рдпрд╣ рджреЗрдЦрдиреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЪрд▓реЛ рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рдбрд┐рдмрдЧ рдореЛрдб рдореЗрдВ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред

рдмрдВрдж рдХрд░реЛ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ рд╕реНрд░реЛрдд рдХреЛрдб рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд░рд┐рдлреНрд▓реЗрдХреНрдЯрд░ рд╡рд┐рдШрдЯрди рдХреЗ рд╕рд╛рде рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рди рд╣реА рдбрд┐рдмрдЧрд┐рдВрдЧ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ?

рдпрд╣ рд╕рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди MSIL рдХреЛрдб рдХреЛ рд╕реАрдзреЗ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВред рдореИрдВ рдбреАрдмрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдкрдХреЛ рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдмрддрд╛рдКрдВрдЧрд╛ред

рдбрд┐рдмрдЧрд┐рдВрдЧ рдЬрд╛рдирдХрд╛рд░реА рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ / рдбрд┐рдмрдЧ рд╕реНрд╡рд┐рдЪ рдХреЗ рд╕рд╛рде рдлрд┐рд░ рд╕реЗ рдмрдирд╛рддреЗ рд╣реИрдВ : " ilasm.exe pokein.il / dll / debug /out:pokein.dll "ред рдбреАрдмрдЧ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рдбреАрдмрдЧ рдкреАрдбреАрдмреА рднреА рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред рдкрд░реАрдХреНрд╖рдг рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рд╣рдо рдореВрд▓ pokein.dll рд╕реЗ рд▓рд┐рдВрдХ рдХреЛ рдПрдХ рдирдП рдХреЗ рд╕рд╛рде рдмрджрд▓ рджреЗрддреЗ рд╣реИрдВ, рдФрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ il рдлрд╝рд╛рдЗрд▓ рдореЗрдВ get_ActiveClientCount () рдкрд░ рдмреНрд░реЗрдХрдкреНрд╡рд╛рдЗрдВрдЯ рд▓рдЧрд╛рддреЗ рд╣реИрдВред рдХрдИ рдХреНрд▓рд╛рдЗрдВрдЯреНрд╕ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдХрдИ рдЯреИрдм рдореЗрдВ рдЯреЗрд╕реНрдЯ рдкреЗрдЬ рдЦреЛрд▓реЗрдВред рдЬрдм рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдирдпрд╛ рдЯреИрдм рдЦреЛрд▓рддреЗ рд╣реИрдВ, рддреЛ рдмреНрд░реЗрдХрдкрд╛рдЗрдВрдб рдХреЛ рдмрд┐рдВрдж () рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдЯреНрд░рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЬрдм рдЯреИрдм 10 рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрд▓рд░реНрдЯ рдкреЗрдЬ рдкрд░ рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ рдХрд┐ рд╣рдордиреЗ рдПрдХ рд╕рд╛рде рдЕрдзрд┐рдХрддрдо рдХрдиреЗрдХреНрд╢рди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдкрд╛рд░ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИред



MSIL рд╕рдВрд╢реЛрдзрди



рдЕрдм рд╣рдореЗрдВ 10 рдПрдХ рд╕рд╛рде рдХрдиреЗрдХреНрд╢рди рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред Il рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓реЗрдВ рдФрд░ рд╕рддреНрдпрд╛рдкрди рдХреЛрдб рдкрд░ рдЬрд╛рдПрдВред рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ (рдЙрджрд╛рд╣рд░рдг рдореЗрдВ - IL_0007) рдХреЛ рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдпрд╛рдж рдХрд░рддреЗ рд╣реИрдВ, рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдкрд░рд┐рдгрд╛рдо рдХреЛ рд╕реНрдЯреИрдХ рдкрд░ рд░рдЦреЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЗрд╕реЗ рд╡рд╣рд╛рдВ рд╕реЗ рд▓реЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

IL_000c: ldc.i4.s 10





рдкрд░

IL_000c: pop





рдЕрдм рд╕рд╢рд░реНрдд рдХреВрдж рдХреЛ рдмрджрд▓реЗрдВ

IL_000e: ble IL_0027





рдмрд┐рдирд╛ рд╢рд░реНрдд рдХреЗ

IL_000d: br IL_0027







рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, ActiveClientCount рдХреЙрд▓ рдХреЛ рднреА рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ рдЗрд╕реЗ рдЖрдкрдХреЗ рд╣реЛрдорд╡рд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЫреЛрдбрд╝рддрд╛ рд╣реВрдВред

рд╣рдо рдХрдиреЗрдХреНрд╢рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд╕рднреА рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХреЛ рджреЛрд╣рд░рд╛рддреЗ рд╣реИрдВ, рдЗрд▓рд╕реНрдо рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЗ рд╕рд╛рде il рдлрд╝рд╛рдЗрд▓ рд╡рд╛рдкрд╕ рдЗрдХрдЯреНрдард╛ рдХрд░рддреЗ рд╣реИрдВ, рдкрд░реАрдХреНрд╖рдг рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд▓рд┐рдВрдХ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреЛрдИ рдФрд░ рдкреНрд░рддрд┐рдмрдВрдз рдирд╣реАрдВ рд╣реИрдВ, рдЕрд▓рд░реНрдЯ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВ, рдХрд╛рд░реНрдп рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИред



рдЗрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдореБрдлреНрдд рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдХреБрдЫ рдФрд░ рд╕реАрдорд╛рдПрдБ рд╣реИрдВ рдЬрд┐рдирд╕реЗ рдЖрдк рдЙрд╕реА рддрд░рд╣ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред



рдпрд╣ рд▓реЗрдЦ рд╢реИрдХреНрд╖рд┐рдХ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рднреБрдЧрддрд╛рди рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рд╣реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкреАрд▓ рдпрд╛ рдирд┐рд░реНрджреЗрд╢ рдирд╣реАрдВ рд╣реИред

рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕рдХрд╛ рдЖрдирдВрдж рд▓рд┐рдпрд╛, рдФрд░ рдЖрдкрдиреЗ рдЕрдкрдиреЗ рд▓рд┐рдП рдХреБрдЫ рдирдпрд╛ рд╕реАрдЦрд╛ред



All Articles