Написание программы на С#, реализующей сортировку методом Шелла, страница 2

0000009d  call        76369CDE

000000a2  add         eax,1

000000a5  adc         edx,0

000000a8  mov         esi,eax

000000aa  mov         edi,edx

000000ac  cmp         edi,dword ptr [ebp-0Ch]

000000af  jg          000000B8

000000b1  jl          00000097

000000b3  cmp         esi,dword ptr [ebp-10h]

000000b6  jb          00000097

h /= 3;

000000b8  push        edi 

h /= 3;

000000b9  push        esi 

000000ba  push        0   

000000bc  push        3   

000000be  call        76369ED1

000000c3  mov         esi,eax

000000c5  mov         edi,edx

h /= 3;

000000c7  push        edi 

000000c8  push        esi 

000000c9  push        0   

000000cb  push        3   

000000cd  call        76369ED1

000000d2  mov         esi,eax

000000d4  mov         edi,edx

000000d6  nop             

000000d7  jmp         00000295

for (i = lb + h; i <= ub; i++)

000000dc  mov         eax,dword ptr [ebp+10h]

000000df  mov         edx,dword ptr [ebp+14h]

000000e2  add         eax,esi

000000e4  adc         edx,edi

000000e6  mov         dword ptr [ebp-20h],eax

000000e9  mov         dword ptr [ebp-1Ch],edx

000000ec  nop             

000000ed  jmp         0000026C

t = a[i];

000000f2  mov         eax,dword ptr [ebp-20h]

000000f5  test        eax,eax

000000f7  jl          00000108

000000f9  cmp         dword ptr [ebp-1Ch],0

000000fd  je          00000106

000000ff  xor         ecx,ecx

00000101  call        7636AB77

t = a[i];

00000106  jmp         00000115

00000108  cmp         dword ptr [ebp-1Ch],0FFFFFFFFh

0000010c  je          00000115

0000010e  xor         ecx,ecx

00000110  call        7636AB77

00000115  mov         edx,dword ptr [ebp-8]

00000118  cmp         eax,dword ptr [edx+4]

0000011b  jb          00000124

0000011d  xor         ecx,ecx

0000011f  call        762B6BFF

00000124  movzx       eax,word ptr [edx+eax*2+8]

00000129  mov         dword ptr [ebp-2Ch],eax

for (j = i-h; j >= lb && (a[j] > t); j -= h) a[j+h] = a[j];

0000012c  mov         eax,dword ptr [ebp-20h]

0000012f  mov         edx,dword ptr [ebp-1Ch]

00000132  sub         eax,esi

00000134  sbb         edx,edi

00000136  mov         dword ptr [ebp-28h],eax

00000139  mov         dword ptr [ebp-24h],edx

0000013c  nop             

0000013d  jmp         000001CA

00000142  mov         eax,dword ptr [ebp-28h]

00000145  mov         edx,dword ptr [ebp-24h]

00000148  add         eax,esi

0000014a  adc         edx,edi

0000014c  test        eax,eax

0000014e  jl          0000015D

00000150  test        edx,edx

00000152  je          0000015B

00000154  xor         ecx,ecx

00000156  call        7636AB77

for (j = i-h; j >= lb && (a[j] > t); j -= h) a[j+h] = a[j];

0000015b  jmp         00000169

0000015d  cmp         edx,0FFFFFFFFh

00000160  je          00000169

00000162  xor         ecx,ecx

00000164  call        7636AB77

00000169  mov         dword ptr [ebp-30h],eax

0000016c  mov         eax,dword ptr [ebp-28h]

0000016f  test        eax,eax

00000171  jl          00000182

00000173  cmp         dword ptr [ebp-24h],0

00000177  je          00000180

00000179  xor         ecx,ecx

0000017b  call        7636AB77

00000180  jmp         0000018F

00000182  cmp         dword ptr [ebp-24h],0FFFFFFFFh

00000186  je          0000018F

00000188  xor         ecx,ecx

0000018a  call        7636AB77

0000018f  mov         edx,dword ptr [ebp-8]

00000192  cmp         eax,dword ptr [edx+4]

00000195  jb          0000019E

00000197  xor         ecx,ecx

00000199  call        762B6BFF

0000019e  movzx       ebx,word ptr [edx+eax*2+8]

000001a3  mov         eax,dword ptr [ebp-30h]

000001a6  mov         edx,dword ptr [ebp-8]

000001a9  cmp         eax,dword ptr [edx+4]

000001ac  jb          000001B5

000001ae  xor         ecx,ecx

000001b0  call        762B6BFF

for (j = i-h; j >= lb && (a[j] > t); j -= h) a[j+h] = a[j];

000001b5  mov         word ptr [edx+eax*2+8],bx

000001ba  mov         eax,dword ptr [ebp-28h]

000001bd  mov         edx,dword ptr [ebp-24h]

000001c0  sub         eax,esi

000001c2  sbb         edx,edi

000001c4  mov         dword ptr [ebp-28h],eax

000001c7  mov         dword ptr [ebp-24h],edx

000001ca  mov         eax,dword ptr [ebp-28h]

000001cd  mov         edx,dword ptr [ebp-24h]

000001d0  cmp         edx,dword ptr [ebp+14h]

000001d3  jg          000001DC

000001d5  jl          0000021C

000001d7  cmp         eax,dword ptr [ebp+10h]

000001da  jb          0000021C

000001dc  mov         eax,dword ptr [ebp-28h]

000001df  test        eax,eax

000001e1  jl          000001F2

000001e3  cmp         dword ptr [ebp-24h],0

000001e7  je          000001F0

000001e9  xor         ecx,ecx

000001eb  call        7636AB77

000001f0  jmp         000001FF

000001f2  cmp         dword ptr [ebp-24h],0FFFFFFFFh

000001f6  je          000001FF

000001f8  xor         ecx,ecx

000001fa  call        7636AB77

000001ff  mov         edx,dword ptr [ebp-8]

00000202  cmp         eax,dword ptr [edx+4]