Artifact 62a742c0235ee8c26932d5995ba5e75bf8aba6cc:


0000: 23 69 66 64 65 66 20 5f 4d 53 43 5f 56 45 52 0a  #ifdef _MSC_VER.
0010: 23 69 6e 63 6c 75 64 65 20 22 76 61 63 61 6c 6c  #include "vacall
0020: 5f 72 2e 68 22 0a 23 65 6e 64 69 66 0a 23 69 6e  _r.h".#endif.#in
0030: 63 6c 75 64 65 20 22 61 73 6d 69 33 38 36 2e 68  clude "asmi386.h
0040: 22 0a 54 45 58 54 28 29 0a 09 41 4c 49 47 4e 28  ".TEXT()..ALIGN(
0050: 32 29 0a 47 4c 4f 42 4c 28 43 28 5f 5f 76 61 63  2).GLOBL(C(__vac
0060: 61 6c 6c 5f 72 29 29 0a 09 44 45 43 4c 41 52 45  all_r))..DECLARE
0070: 5f 46 55 4e 43 54 49 4f 4e 28 5f 5f 76 61 63 61  _FUNCTION(__vaca
0080: 6c 6c 5f 72 29 0a 46 55 4e 42 45 47 49 4e 28 5f  ll_r).FUNBEGIN(_
0090: 5f 76 61 63 61 6c 6c 5f 72 29 0a 09 49 4e 53 4e  _vacall_r)..INSN
00a0: 32 28 73 75 62 2c 6c 09 2c 4e 55 4d 28 33 36 29  2(sub,l.,NUM(36)
00b0: 2c 52 28 65 73 70 29 29 0a 09 49 4e 53 4e 32 28  ,R(esp))..INSN2(
00c0: 6d 6f 76 2c 6c 09 2c 4e 55 4d 28 30 29 2c 58 34  mov,l.,NUM(0),X4
00d0: 20 4d 45 4d 28 65 73 70 29 29 0a 09 49 4e 53 4e   MEM(esp))..INSN
00e0: 32 28 6c 65 61 2c 6c 09 2c 58 34 20 4d 45 4d 5f  2(lea,l.,X4 MEM_
00f0: 44 49 53 50 28 65 73 70 2c 34 34 29 2c 52 28 65  DISP(esp,44),R(e
0100: 63 78 29 29 0a 09 49 4e 53 4e 32 28 6d 6f 76 2c  cx))..INSN2(mov,
0110: 6c 09 2c 52 28 65 63 78 29 2c 58 34 20 4d 45 4d  l.,R(ecx),X4 MEM
0120: 5f 44 49 53 50 28 65 73 70 2c 34 29 29 0a 09 49  _DISP(esp,4))..I
0130: 4e 53 4e 32 28 6d 6f 76 2c 6c 09 2c 4e 55 4d 28  NSN2(mov,l.,NUM(
0140: 30 29 2c 58 34 20 4d 45 4d 5f 44 49 53 50 28 65  0),X4 MEM_DISP(e
0150: 73 70 2c 38 29 29 0a 09 49 4e 53 4e 32 28 6d 6f  sp,8))..INSN2(mo
0160: 76 2c 6c 09 2c 4e 55 4d 28 30 29 2c 58 34 20 4d  v,l.,NUM(0),X4 M
0170: 45 4d 5f 44 49 53 50 28 65 73 70 2c 31 32 29 29  EM_DISP(esp,12))
0180: 0a 09 49 4e 53 4e 32 28 6d 6f 76 2c 6c 09 2c 52  ..INSN2(mov,l.,R
0190: 28 65 62 78 29 2c 58 34 20 4d 45 4d 5f 44 49 53  (ebx),X4 MEM_DIS
01a0: 50 28 65 73 70 2c 33 32 29 29 0a 09 49 4e 53 4e  P(esp,32))..INSN
01b0: 32 28 6d 6f 76 2c 6c 09 2c 52 28 65 73 70 29 2c  2(mov,l.,R(esp),
01c0: 52 28 65 64 78 29 29 0a 09 49 4e 53 4e 31 28 70  R(edx))..INSN1(p
01d0: 75 73 68 2c 6c 09 2c 52 28 65 64 78 29 29 0a 09  ush,l.,R(edx))..
01e0: 49 4e 53 4e 32 28 6d 6f 76 2c 6c 09 2c 58 34 20  INSN2(mov,l.,X4 
01f0: 4d 45 4d 5f 44 49 53 50 28 65 73 70 2c 34 34 29  MEM_DISP(esp,44)
0200: 2c 52 28 65 63 78 29 29 0a 09 49 4e 53 4e 32 28  ,R(ecx))..INSN2(
0210: 6d 6f 76 2c 6c 09 2c 58 34 20 4d 45 4d 5f 44 49  mov,l.,X4 MEM_DI
0220: 53 50 28 65 63 78 2c 34 29 2c 52 28 65 64 78 29  SP(ecx,4),R(edx)
0230: 29 0a 09 49 4e 53 4e 31 28 70 75 73 68 2c 6c 09  )..INSN1(push,l.
0240: 2c 52 28 65 64 78 29 29 0a 09 49 4e 53 4e 32 28  ,R(edx))..INSN2(
0250: 6d 6f 76 2c 6c 09 2c 58 34 20 4d 45 4d 5f 44 49  mov,l.,X4 MEM_DI
0260: 53 50 28 65 73 70 2c 34 38 29 2c 52 28 65 63 78  SP(esp,48),R(ecx
0270: 29 29 0a 09 49 4e 53 4e 32 28 6d 6f 76 2c 6c 09  ))..INSN2(mov,l.
0280: 2c 58 34 20 4d 45 4d 28 65 63 78 29 2c 52 28 65  ,X4 MEM(ecx),R(e
0290: 64 78 29 29 0a 09 49 4e 53 4e 31 28 63 61 6c 6c  dx))..INSN1(call
02a0: 2c 5f 09 2c 49 4e 44 49 52 28 52 28 65 64 78 29  ,_.,INDIR(R(edx)
02b0: 29 29 0a 09 49 4e 53 4e 32 28 61 64 64 2c 6c 09  ))..INSN2(add,l.
02c0: 2c 4e 55 4d 28 38 29 2c 52 28 65 73 70 29 29 0a  ,NUM(8),R(esp)).
02d0: 09 49 4e 53 4e 32 28 63 6d 70 2c 6c 09 2c 4e 55  .INSN2(cmp,l.,NU
02e0: 4d 28 30 29 2c 58 34 20 4d 45 4d 5f 44 49 53 50  M(0),X4 MEM_DISP
02f0: 28 65 73 70 2c 31 32 29 29 0a 09 49 4e 53 4e 31  (esp,12))..INSN1
0300: 28 6a 65 2c 5f 09 2c 4c 33 29 0a 09 49 4e 53 4e  (je,_.,L3)..INSN
0310: 32 28 63 6d 70 2c 6c 09 2c 4e 55 4d 28 31 29 2c  2(cmp,l.,NUM(1),
0320: 58 34 20 4d 45 4d 5f 44 49 53 50 28 65 73 70 2c  X4 MEM_DISP(esp,
0330: 31 32 29 29 0a 09 49 4e 53 4e 31 28 6a 65 2c 5f  12))..INSN1(je,_
0340: 09 2c 4c 34 35 29 0a 09 49 4e 53 4e 32 28 63 6d  .,L45)..INSN2(cm
0350: 70 2c 6c 09 2c 4e 55 4d 28 32 29 2c 58 34 20 4d  p,l.,NUM(2),X4 M
0360: 45 4d 5f 44 49 53 50 28 65 73 70 2c 31 32 29 29  EM_DISP(esp,12))
0370: 0a 09 49 4e 53 4e 31 28 6a 6e 65 2c 5f 09 2c 4c  ..INSN1(jne,_.,L
0380: 36 29 0a 4c 34 35 3a 0a 09 49 4e 53 4e 32 4d 4f  6).L45:..INSN2MO
0390: 56 58 28 6d 6f 76 73 2c 62 09 2c 58 31 20 4d 45  VX(movs,b.,X1 ME
03a0: 4d 5f 44 49 53 50 28 65 73 70 2c 32 34 29 2c 52  M_DISP(esp,24),R
03b0: 28 65 61 78 29 29 0a 09 49 4e 53 4e 31 28 6a 6d  (eax))..INSN1(jm
03c0: 70 2c 5f 09 2c 4c 33 29 0a 4c 36 3a 0a 09 49 4e  p,_.,L3).L6:..IN
03d0: 53 4e 32 28 63 6d 70 2c 6c 09 2c 4e 55 4d 28 33  SN2(cmp,l.,NUM(3
03e0: 29 2c 58 34 20 4d 45 4d 5f 44 49 53 50 28 65 73  ),X4 MEM_DISP(es
03f0: 70 2c 31 32 29 29 0a 09 49 4e 53 4e 31 28 6a 6e  p,12))..INSN1(jn
0400: 65 2c 5f 09 2c 4c 38 29 0a 09 49 4e 53 4e 32 4d  e,_.,L8)..INSN2M
0410: 4f 56 58 28 6d 6f 76 7a 2c 62 09 2c 58 31 20 4d  OVX(movz,b.,X1 M
0420: 45 4d 5f 44 49 53 50 28 65 73 70 2c 32 34 29 2c  EM_DISP(esp,24),
0430: 52 28 65 61 78 29 29 0a 09 49 4e 53 4e 31 28 6a  R(eax))..INSN1(j
0440: 6d 70 2c 5f 09 2c 4c 33 29 0a 4c 38 3a 0a 09 49  mp,_.,L3).L8:..I
0450: 4e 53 4e 32 28 63 6d 70 2c 6c 09 2c 4e 55 4d 28  NSN2(cmp,l.,NUM(
0460: 34 29 2c 58 34 20 4d 45 4d 5f 44 49 53 50 28 65  4),X4 MEM_DISP(e
0470: 73 70 2c 31 32 29 29 0a 09 49 4e 53 4e 31 28 6a  sp,12))..INSN1(j
0480: 6e 65 2c 5f 09 2c 4c 31 30 29 0a 09 49 4e 53 4e  ne,_.,L10)..INSN
0490: 32 4d 4f 56 58 28 6d 6f 76 73 2c 77 09 2c 58 32  2MOVX(movs,w.,X2
04a0: 20 4d 45 4d 5f 44 49 53 50 28 65 73 70 2c 32 34   MEM_DISP(esp,24
04b0: 29 2c 52 28 65 61 78 29 29 0a 09 49 4e 53 4e 31  ),R(eax))..INSN1
04c0: 28 6a 6d 70 2c 5f 09 2c 4c 33 29 0a 4c 31 30 3a  (jmp,_.,L3).L10:
04d0: 0a 09 49 4e 53 4e 32 28 63 6d 70 2c 6c 09 2c 4e  ..INSN2(cmp,l.,N
04e0: 55 4d 28 35 29 2c 58 34 20 4d 45 4d 5f 44 49 53  UM(5),X4 MEM_DIS
04f0: 50 28 65 73 70 2c 31 32 29 29 0a 09 49 4e 53 4e  P(esp,12))..INSN
0500: 31 28 6a 6e 65 2c 5f 09 2c 4c 31 32 29 0a 09 49  1(jne,_.,L12)..I
0510: 4e 53 4e 32 4d 4f 56 58 28 6d 6f 76 7a 2c 77 09  NSN2MOVX(movz,w.
0520: 2c 58 32 20 4d 45 4d 5f 44 49 53 50 28 65 73 70  ,X2 MEM_DISP(esp
0530: 2c 32 34 29 2c 52 28 65 61 78 29 29 0a 09 49 4e  ,24),R(eax))..IN
0540: 53 4e 31 28 6a 6d 70 2c 5f 09 2c 4c 33 29 0a 4c  SN1(jmp,_.,L3).L
0550: 31 32 3a 0a 09 49 4e 53 4e 32 28 63 6d 70 2c 6c  12:..INSN2(cmp,l
0560: 09 2c 4e 55 4d 28 36 29 2c 58 34 20 4d 45 4d 5f  .,NUM(6),X4 MEM_
0570: 44 49 53 50 28 65 73 70 2c 31 32 29 29 0a 09 49  DISP(esp,12))..I
0580: 4e 53 4e 31 28 6a 65 2c 5f 09 2c 4c 34 36 29 0a  NSN1(je,_.,L46).
0590: 09 49 4e 53 4e 32 28 63 6d 70 2c 6c 09 2c 4e 55  .INSN2(cmp,l.,NU
05a0: 4d 28 37 29 2c 58 34 20 4d 45 4d 5f 44 49 53 50  M(7),X4 MEM_DISP
05b0: 28 65 73 70 2c 31 32 29 29 0a 09 49 4e 53 4e 31  (esp,12))..INSN1
05c0: 28 6a 65 2c 5f 09 2c 4c 34 36 29 0a 09 49 4e 53  (je,_.,L46)..INS
05d0: 4e 32 28 63 6d 70 2c 6c 09 2c 4e 55 4d 28 38 29  N2(cmp,l.,NUM(8)
05e0: 2c 58 34 20 4d 45 4d 5f 44 49 53 50 28 65 73 70  ,X4 MEM_DISP(esp
05f0: 2c 31 32 29 29 0a 09 49 4e 53 4e 31 28 6a 65 2c  ,12))..INSN1(je,
0600: 5f 09 2c 4c 34 36 29 0a 09 49 4e 53 4e 32 28 63  _.,L46)..INSN2(c
0610: 6d 70 2c 6c 09 2c 4e 55 4d 28 39 29 2c 58 34 20  mp,l.,NUM(9),X4 
0620: 4d 45 4d 5f 44 49 53 50 28 65 73 70 2c 31 32 29  MEM_DISP(esp,12)
0630: 29 0a 09 49 4e 53 4e 31 28 6a 65 2c 5f 09 2c 4c  )..INSN1(je,_.,L
0640: 34 36 29 0a 09 49 4e 53 4e 32 28 6d 6f 76 2c 6c  46)..INSN2(mov,l
0650: 09 2c 58 34 20 4d 45 4d 5f 44 49 53 50 28 65 73  .,X4 MEM_DISP(es
0660: 70 2c 31 32 29 2c 52 28 65 64 78 29 29 0a 09 49  p,12),R(edx))..I
0670: 4e 53 4e 32 28 61 64 64 2c 6c 09 2c 4e 55 4d 28  NSN2(add,l.,NUM(
0680: 2d 31 30 29 2c 52 28 65 64 78 29 29 0a 09 49 4e  -10),R(edx))..IN
0690: 53 4e 32 28 63 6d 70 2c 6c 09 2c 4e 55 4d 28 31  SN2(cmp,l.,NUM(1
06a0: 29 2c 52 28 65 64 78 29 29 0a 09 49 4e 53 4e 31  ),R(edx))..INSN1
06b0: 28 6a 61 2c 5f 09 2c 4c 32 32 29 0a 09 49 4e 53  (ja,_.,L22)..INS
06c0: 4e 32 28 6d 6f 76 2c 6c 09 2c 58 34 20 4d 45 4d  N2(mov,l.,X4 MEM
06d0: 5f 44 49 53 50 28 65 73 70 2c 32 34 29 2c 52 28  _DISP(esp,24),R(
06e0: 65 61 78 29 29 0a 09 49 4e 53 4e 32 28 6d 6f 76  eax))..INSN2(mov
06f0: 2c 6c 09 2c 58 34 20 4d 45 4d 5f 44 49 53 50 28  ,l.,X4 MEM_DISP(
0700: 65 73 70 2c 32 38 29 2c 52 28 65 64 78 29 29 0a  esp,28),R(edx)).
0710: 09 49 4e 53 4e 31 28 6a 6d 70 2c 5f 09 2c 4c 33  .INSN1(jmp,_.,L3
0720: 29 0a 4c 32 32 3a 0a 09 49 4e 53 4e 32 28 63 6d  ).L22:..INSN2(cm
0730: 70 2c 6c 09 2c 4e 55 4d 28 31 32 29 2c 58 34 20  p,l.,NUM(12),X4 
0740: 4d 45 4d 5f 44 49 53 50 28 65 73 70 2c 31 32 29  MEM_DISP(esp,12)
0750: 29 0a 09 49 4e 53 4e 31 28 6a 6e 65 2c 5f 09 2c  )..INSN1(jne,_.,
0760: 4c 32 34 29 0a 09 49 4e 53 4e 31 28 66 6c 64 2c  L24)..INSN1(fld,
0770: 73 09 2c 58 34 20 4d 45 4d 5f 44 49 53 50 28 65  s.,X4 MEM_DISP(e
0780: 73 70 2c 32 34 29 29 0a 09 49 4e 53 4e 31 28 6a  sp,24))..INSN1(j
0790: 6d 70 2c 5f 09 2c 4c 33 29 0a 4c 32 34 3a 0a 09  mp,_.,L3).L24:..
07a0: 49 4e 53 4e 32 28 63 6d 70 2c 6c 09 2c 4e 55 4d  INSN2(cmp,l.,NUM
07b0: 28 31 33 29 2c 58 34 20 4d 45 4d 5f 44 49 53 50  (13),X4 MEM_DISP
07c0: 28 65 73 70 2c 31 32 29 29 0a 09 49 4e 53 4e 31  (esp,12))..INSN1
07d0: 28 6a 6e 65 2c 5f 09 2c 4c 32 36 29 0a 09 49 4e  (jne,_.,L26)..IN
07e0: 53 4e 31 28 66 6c 64 2c 6c 09 2c 58 38 20 4d 45  SN1(fld,l.,X8 ME
07f0: 4d 5f 44 49 53 50 28 65 73 70 2c 32 34 29 29 0a  M_DISP(esp,24)).
0800: 09 49 4e 53 4e 31 28 6a 6d 70 2c 5f 09 2c 4c 33  .INSN1(jmp,_.,L3
0810: 29 0a 4c 32 36 3a 0a 09 49 4e 53 4e 32 28 63 6d  ).L26:..INSN2(cm
0820: 70 2c 6c 09 2c 4e 55 4d 28 31 34 29 2c 58 34 20  p,l.,NUM(14),X4 
0830: 4d 45 4d 5f 44 49 53 50 28 65 73 70 2c 31 32 29  MEM_DISP(esp,12)
0840: 29 0a 09 49 4e 53 4e 31 28 6a 6e 65 2c 5f 09 2c  )..INSN1(jne,_.,
0850: 4c 32 38 29 0a 4c 34 36 3a 0a 09 49 4e 53 4e 32  L28).L46:..INSN2
0860: 28 6d 6f 76 2c 6c 09 2c 58 34 20 4d 45 4d 5f 44  (mov,l.,X4 MEM_D
0870: 49 53 50 28 65 73 70 2c 32 34 29 2c 52 28 65 61  ISP(esp,24),R(ea
0880: 78 29 29 0a 09 49 4e 53 4e 31 28 6a 6d 70 2c 5f  x))..INSN1(jmp,_
0890: 09 2c 4c 33 29 0a 4c 32 38 3a 0a 09 49 4e 53 4e  .,L3).L28:..INSN
08a0: 32 28 63 6d 70 2c 6c 09 2c 4e 55 4d 28 31 35 29  2(cmp,l.,NUM(15)
08b0: 2c 58 34 20 4d 45 4d 5f 44 49 53 50 28 65 73 70  ,X4 MEM_DISP(esp
08c0: 2c 31 32 29 29 0a 09 49 4e 53 4e 31 28 6a 6e 65  ,12))..INSN1(jne
08d0: 2c 5f 09 2c 4c 33 29 0a 09 49 4e 53 4e 32 28 74  ,_.,L3)..INSN2(t
08e0: 65 73 74 2c 62 09 2c 4e 55 4d 28 31 29 2c 58 31  est,b.,NUM(1),X1
08f0: 20 4d 45 4d 28 65 73 70 29 29 0a 09 49 4e 53 4e   MEM(esp))..INSN
0900: 31 28 6a 6e 65 2c 5f 09 2c 4c 34 37 29 0a 09 49  1(jne,_.,L47)..I
0910: 4e 53 4e 32 28 74 65 73 74 2c 62 09 2c 4e 55 4d  NSN2(test,b.,NUM
0920: 28 34 29 2c 58 31 20 4d 45 4d 5f 44 49 53 50 28  (4),X1 MEM_DISP(
0930: 65 73 70 2c 31 29 29 0a 09 49 4e 53 4e 31 28 6a  esp,1))..INSN1(j
0940: 65 2c 5f 09 2c 4c 33 33 29 0a 09 49 4e 53 4e 32  e,_.,L33)..INSN2
0950: 28 63 6d 70 2c 6c 09 2c 4e 55 4d 28 31 29 2c 58  (cmp,l.,NUM(1),X
0960: 34 20 4d 45 4d 5f 44 49 53 50 28 65 73 70 2c 31  4 MEM_DISP(esp,1
0970: 36 29 29 0a 09 49 4e 53 4e 31 28 6a 6e 65 2c 5f  6))..INSN1(jne,_
0980: 09 2c 4c 33 34 29 0a 09 49 4e 53 4e 32 28 6d 6f  .,L34)..INSN2(mo
0990: 76 2c 6c 09 2c 58 34 20 4d 45 4d 5f 44 49 53 50  v,l.,X4 MEM_DISP
09a0: 28 65 73 70 2c 38 29 2c 52 28 65 64 78 29 29 0a  (esp,8),R(edx)).
09b0: 09 49 4e 53 4e 32 4d 4f 56 58 28 6d 6f 76 7a 2c  .INSN2MOVX(movz,
09c0: 62 09 2c 58 31 20 4d 45 4d 28 65 64 78 29 2c 52  b.,X1 MEM(edx),R
09d0: 28 65 61 78 29 29 0a 09 49 4e 53 4e 31 28 6a 6d  (eax))..INSN1(jm
09e0: 70 2c 5f 09 2c 4c 33 29 0a 4c 33 34 3a 0a 09 49  p,_.,L3).L34:..I
09f0: 4e 53 4e 32 28 63 6d 70 2c 6c 09 2c 4e 55 4d 28  NSN2(cmp,l.,NUM(
0a00: 32 29 2c 58 34 20 4d 45 4d 5f 44 49 53 50 28 65  2),X4 MEM_DISP(e
0a10: 73 70 2c 31 36 29 29 0a 09 49 4e 53 4e 31 28 6a  sp,16))..INSN1(j
0a20: 6e 65 2c 5f 09 2c 4c 33 37 29 0a 09 49 4e 53 4e  ne,_.,L37)..INSN
0a30: 32 28 6d 6f 76 2c 6c 09 2c 58 34 20 4d 45 4d 5f  2(mov,l.,X4 MEM_
0a40: 44 49 53 50 28 65 73 70 2c 38 29 2c 52 28 65 64  DISP(esp,8),R(ed
0a50: 78 29 29 0a 09 49 4e 53 4e 32 4d 4f 56 58 28 6d  x))..INSN2MOVX(m
0a60: 6f 76 7a 2c 77 09 2c 58 32 20 4d 45 4d 28 65 64  ovz,w.,X2 MEM(ed
0a70: 78 29 2c 52 28 65 61 78 29 29 0a 09 49 4e 53 4e  x),R(eax))..INSN
0a80: 31 28 6a 6d 70 2c 5f 09 2c 4c 33 29 0a 4c 33 37  1(jmp,_.,L3).L37
0a90: 3a 0a 09 49 4e 53 4e 32 28 63 6d 70 2c 6c 09 2c  :..INSN2(cmp,l.,
0aa0: 4e 55 4d 28 34 29 2c 58 34 20 4d 45 4d 5f 44 49  NUM(4),X4 MEM_DI
0ab0: 53 50 28 65 73 70 2c 31 36 29 29 0a 09 49 4e 53  SP(esp,16))..INS
0ac0: 4e 31 28 6a 6e 65 2c 5f 09 2c 4c 33 39 29 0a 09  N1(jne,_.,L39)..
0ad0: 49 4e 53 4e 32 28 6d 6f 76 2c 6c 09 2c 58 34 20  INSN2(mov,l.,X4 
0ae0: 4d 45 4d 5f 44 49 53 50 28 65 73 70 2c 38 29 2c  MEM_DISP(esp,8),
0af0: 52 28 65 64 78 29 29 0a 09 49 4e 53 4e 32 28 6d  R(edx))..INSN2(m
0b00: 6f 76 2c 6c 09 2c 58 34 20 4d 45 4d 28 65 64 78  ov,l.,X4 MEM(edx
0b10: 29 2c 52 28 65 61 78 29 29 0a 09 49 4e 53 4e 31  ),R(eax))..INSN1
0b20: 28 6a 6d 70 2c 5f 09 2c 4c 33 29 0a 4c 33 39 3a  (jmp,_.,L3).L39:
0b30: 0a 09 49 4e 53 4e 32 28 63 6d 70 2c 6c 09 2c 4e  ..INSN2(cmp,l.,N
0b40: 55 4d 28 38 29 2c 58 34 20 4d 45 4d 5f 44 49 53  UM(8),X4 MEM_DIS
0b50: 50 28 65 73 70 2c 31 36 29 29 0a 09 49 4e 53 4e  P(esp,16))..INSN
0b60: 31 28 6a 6e 65 2c 5f 09 2c 4c 33 33 29 0a 09 49  1(jne,_.,L33)..I
0b70: 4e 53 4e 32 28 6d 6f 76 2c 6c 09 2c 58 34 20 4d  NSN2(mov,l.,X4 M
0b80: 45 4d 5f 44 49 53 50 28 65 73 70 2c 38 29 2c 52  EM_DISP(esp,8),R
0b90: 28 65 64 78 29 29 0a 09 49 4e 53 4e 32 28 6d 6f  (edx))..INSN2(mo
0ba0: 76 2c 6c 09 2c 58 34 20 4d 45 4d 28 65 64 78 29  v,l.,X4 MEM(edx)
0bb0: 2c 52 28 65 61 78 29 29 0a 09 49 4e 53 4e 32 28  ,R(eax))..INSN2(
0bc0: 6d 6f 76 2c 6c 09 2c 58 34 20 4d 45 4d 5f 44 49  mov,l.,X4 MEM_DI
0bd0: 53 50 28 65 73 70 2c 38 29 2c 52 28 65 64 78 29  SP(esp,8),R(edx)
0be0: 29 0a 09 49 4e 53 4e 32 28 6d 6f 76 2c 6c 09 2c  )..INSN2(mov,l.,
0bf0: 58 34 20 4d 45 4d 5f 44 49 53 50 28 65 64 78 2c  X4 MEM_DISP(edx,
0c00: 34 29 2c 52 28 65 64 78 29 29 0a 09 49 4e 53 4e  4),R(edx))..INSN
0c10: 31 28 6a 6d 70 2c 5f 09 2c 4c 33 29 0a 4c 33 33  1(jmp,_.,L3).L33
0c20: 3a 0a 09 49 4e 53 4e 32 28 74 65 73 74 2c 62 09  :..INSN2(test,b.
0c30: 2c 4e 55 4d 28 32 34 29 2c 58 31 20 4d 45 4d 28  ,NUM(24),X1 MEM(
0c40: 65 73 70 29 29 0a 09 49 4e 53 4e 31 28 6a 6e 65  esp))..INSN1(jne
0c50: 2c 5f 09 2c 4c 34 32 29 0a 09 49 4e 53 4e 32 28  ,_.,L42)..INSN2(
0c60: 61 64 64 2c 6c 09 2c 4e 55 4d 28 33 36 29 2c 52  add,l.,NUM(36),R
0c70: 28 65 73 70 29 29 0a 09 72 65 74 20 4e 55 4d 28  (esp))..ret NUM(
0c80: 38 29 0a 4c 34 32 3a 0a 09 49 4e 53 4e 32 28 74  8).L42:..INSN2(t
0c90: 65 73 74 2c 62 09 2c 4e 55 4d 28 31 36 29 2c 58  est,b.,NUM(16),X
0ca0: 31 20 4d 45 4d 28 65 73 70 29 29 0a 09 49 4e 53  1 MEM(esp))..INS
0cb0: 4e 31 28 6a 65 2c 5f 09 2c 4c 33 29 0a 4c 34 37  N1(je,_.,L3).L47
0cc0: 3a 0a 09 49 4e 53 4e 32 28 6d 6f 76 2c 6c 09 2c  :..INSN2(mov,l.,
0cd0: 58 34 20 4d 45 4d 5f 44 49 53 50 28 65 73 70 2c  X4 MEM_DISP(esp,
0ce0: 38 29 2c 52 28 65 61 78 29 29 0a 4c 33 3a 0a 09  8),R(eax)).L3:..
0cf0: 49 4e 53 4e 32 28 74 65 73 74 2c 62 09 2c 4e 55  INSN2(test,b.,NU
0d00: 4d 28 32 29 2c 58 31 20 4d 45 4d 5f 44 49 53 50  M(2),X1 MEM_DISP
0d10: 28 65 73 70 2c 31 29 29 0a 09 49 4e 53 4e 31 28  (esp,1))..INSN1(
0d20: 6a 65 2c 5f 09 2c 4c 34 34 29 0a 09 49 4e 53 4e  je,_.,L44)..INSN
0d30: 32 28 6d 6f 76 2c 6c 09 2c 58 34 20 4d 45 4d 5f  2(mov,l.,X4 MEM_
0d40: 44 49 53 50 28 65 73 70 2c 33 36 29 2c 52 28 65  DISP(esp,36),R(e
0d50: 63 78 29 29 0a 09 49 4e 53 4e 32 28 6d 6f 76 2c  cx))..INSN2(mov,
0d60: 6c 09 2c 58 34 20 4d 45 4d 5f 44 49 53 50 28 65  l.,X4 MEM_DISP(e
0d70: 73 70 2c 34 29 2c 52 28 65 73 70 29 29 0a 09 49  sp,4),R(esp))..I
0d80: 4e 53 4e 31 28 6a 6d 70 2c 5f 09 2c 49 4e 44 49  NSN1(jmp,_.,INDI
0d90: 52 28 52 28 65 63 78 29 29 29 0a 4c 34 34 3a 0a  R(R(ecx))).L44:.
0da0: 09 49 4e 53 4e 32 28 61 64 64 2c 6c 09 2c 4e 55  .INSN2(add,l.,NU
0db0: 4d 28 33 36 29 2c 52 28 65 73 70 29 29 0a 09 72  M(36),R(esp))..r
0dc0: 65 74 20 4e 55 4d 28 34 29 0a 09 49 4e 53 4e 32  et NUM(4)..INSN2
0dd0: 28 61 64 64 2c 6c 09 2c 4e 55 4d 28 33 36 29 2c  (add,l.,NUM(36),
0de0: 52 28 65 73 70 29 29 0a 09 72 65 74 0a 46 55 4e  R(esp))..ret.FUN
0df0: 45 4e 44 28 29 0a 0a                             END()..