;==============================================================
; Intel Asm
;==============================================================
         .486
         .model flat, stdcall
         option casemap :none
         include \masm32\include\windows.inc
         include \masm32\include\masm32.inc
         include \masm32\include\kernel32.inc
         include \masm32\macros\macros.asm

         includelib \masm32\lib\masm32.lib
         includelib \masm32\lib\kernel32.lib

;==============================================================
         .data
Txt db ?, 0

;==============================================================
; Entry point:
         .code
start:
         FINIT
         PUSH  EBP
         MOV   EBP,  ESP
         SUB   ESP,  8
         ; Let Ti1_59 = 
         ; Integer 0
         MOV   EAX,  0
         MOV   [EBP-4],  EAX
         ; Let Ti2_58 = 
         ; Apply direct f_56
         PUSH  dword ptr [EBP-4]
         CALL  f_56
         ADD   ESP,  4
         MOV   [EBP-8],  EAX
         ; Apply direct min_caml_print_int
         PUSH  dword ptr [EBP-8]
         CALL  min_caml_print_int
         ADD   ESP,  4
         MOV   ESP,  EBP
         POP   EBP
         PUSH  0
         CALL  ExitProcess

;==============================================================
; Function f_56:

f_56 proc
         PUSH  EBP
         MOV   EBP,  ESP
         SUB   ESP,  356
         ; Let Ti3_148 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-4],  EAX
         ; Let x1_60 = 
         ; Add x0_57 + Ti3_148
         MOV   EAX,  [EBP+8]
         ADD   EAX,  [EBP-4]
         MOV   [EBP-8],  EAX
         ; Let Ti4_147 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-12],  EAX
         ; Let x2_61 = 
         ; Add x1_60 + Ti4_147
         MOV   EAX,  [EBP-8]
         ADD   EAX,  [EBP-12]
         MOV   [EBP-16],  EAX
         ; Let Ti5_146 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-20],  EAX
         ; Let x3_62 = 
         ; Add x2_61 + Ti5_146
         MOV   EAX,  [EBP-16]
         ADD   EAX,  [EBP-20]
         MOV   [EBP-24],  EAX
         ; Let Ti6_145 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-28],  EAX
         ; Let x4_63 = 
         ; Add x3_62 + Ti6_145
         MOV   EAX,  [EBP-24]
         ADD   EAX,  [EBP-28]
         MOV   [EBP-32],  EAX
         ; Let Ti7_144 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-36],  EAX
         ; Let x5_64 = 
         ; Add x4_63 + Ti7_144
         MOV   EAX,  [EBP-32]
         ADD   EAX,  [EBP-36]
         MOV   [EBP-40],  EAX
         ; Let Ti8_143 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-44],  EAX
         ; Let x6_65 = 
         ; Add x5_64 + Ti8_143
         MOV   EAX,  [EBP-40]
         ADD   EAX,  [EBP-44]
         MOV   [EBP-48],  EAX
         ; Let Ti9_142 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-52],  EAX
         ; Let x7_66 = 
         ; Add x6_65 + Ti9_142
         MOV   EAX,  [EBP-48]
         ADD   EAX,  [EBP-52]
         MOV   [EBP-56],  EAX
         ; Let Ti10_141 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-60],  EAX
         ; Let x8_67 = 
         ; Add x7_66 + Ti10_141
         MOV   EAX,  [EBP-56]
         ADD   EAX,  [EBP-60]
         MOV   [EBP-64],  EAX
         ; Let Ti11_140 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-68],  EAX
         ; Let x9_68 = 
         ; Add x8_67 + Ti11_140
         MOV   EAX,  [EBP-64]
         ADD   EAX,  [EBP-68]
         MOV   [EBP-72],  EAX
         ; Let Ti12_139 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-76],  EAX
         ; Let x10_69 = 
         ; Add x9_68 + Ti12_139
         MOV   EAX,  [EBP-72]
         ADD   EAX,  [EBP-76]
         MOV   [EBP-80],  EAX
         ; Let Ti13_138 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-84],  EAX
         ; Let x11_70 = 
         ; Add x10_69 + Ti13_138
         MOV   EAX,  [EBP-80]
         ADD   EAX,  [EBP-84]
         MOV   [EBP-88],  EAX
         ; Let Ti14_137 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-92],  EAX
         ; Let x12_71 = 
         ; Add x11_70 + Ti14_137
         MOV   EAX,  [EBP-88]
         ADD   EAX,  [EBP-92]
         MOV   [EBP-96],  EAX
         ; Let Ti15_136 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-100],  EAX
         ; Let x13_72 = 
         ; Add x12_71 + Ti15_136
         MOV   EAX,  [EBP-96]
         ADD   EAX,  [EBP-100]
         MOV   [EBP-104],  EAX
         ; Let Ti16_135 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-108],  EAX
         ; Let x14_73 = 
         ; Add x13_72 + Ti16_135
         MOV   EAX,  [EBP-104]
         ADD   EAX,  [EBP-108]
         MOV   [EBP-112],  EAX
         ; Let Ti17_134 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-116],  EAX
         ; Let x15_74 = 
         ; Add x14_73 + Ti17_134
         MOV   EAX,  [EBP-112]
         ADD   EAX,  [EBP-116]
         MOV   [EBP-120],  EAX
         ; Let Ti18_133 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-124],  EAX
         ; Let x16_75 = 
         ; Add x15_74 + Ti18_133
         MOV   EAX,  [EBP-120]
         ADD   EAX,  [EBP-124]
         MOV   [EBP-128],  EAX
         ; Let Ti19_132 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-132],  EAX
         ; Let x17_76 = 
         ; Add x16_75 + Ti19_132
         MOV   EAX,  [EBP-128]
         ADD   EAX,  [EBP-132]
         MOV   [EBP-136],  EAX
         ; Let Ti20_131 = 
         ; Integer 1
         MOV   EAX,  1
         MOV   [EBP-140],  EAX
         ; Let x18_77 = 
         ; Add x17_76 + Ti20_131
         MOV   EAX,  [EBP-136]
         ADD   EAX,  [EBP-140]
         MOV   [EBP-144],  EAX
         ; Let x19_78 = 
         ; Add x18_77 + x1_60
         MOV   EAX,  [EBP-144]
         ADD   EAX,  [EBP-8]
         MOV   [EBP-148],  EAX
         ; Let x20_79 = 
         ; Add x19_78 + x2_61
         MOV   EAX,  [EBP-148]
         ADD   EAX,  [EBP-16]
         MOV   [EBP-152],  EAX
         ; Let x21_80 = 
         ; Add x20_79 + x3_62
         MOV   EAX,  [EBP-152]
         ADD   EAX,  [EBP-24]
         MOV   [EBP-156],  EAX
         ; Let x22_81 = 
         ; Add x21_80 + x4_63
         MOV   EAX,  [EBP-156]
         ADD   EAX,  [EBP-32]
         MOV   [EBP-160],  EAX
         ; Let x23_82 = 
         ; Add x22_81 + x5_64
         MOV   EAX,  [EBP-160]
         ADD   EAX,  [EBP-40]
         MOV   [EBP-164],  EAX
         ; Let x24_83 = 
         ; Add x23_82 + x6_65
         MOV   EAX,  [EBP-164]
         ADD   EAX,  [EBP-48]
         MOV   [EBP-168],  EAX
         ; Let x25_84 = 
         ; Add x24_83 + x7_66
         MOV   EAX,  [EBP-168]
         ADD   EAX,  [EBP-56]
         MOV   [EBP-172],  EAX
         ; Let x26_85 = 
         ; Add x25_84 + x8_67
         MOV   EAX,  [EBP-172]
         ADD   EAX,  [EBP-64]
         MOV   [EBP-176],  EAX
         ; Let x27_86 = 
         ; Add x26_85 + x9_68
         MOV   EAX,  [EBP-176]
         ADD   EAX,  [EBP-72]
         MOV   [EBP-180],  EAX
         ; Let x28_87 = 
         ; Add x27_86 + x10_69
         MOV   EAX,  [EBP-180]
         ADD   EAX,  [EBP-80]
         MOV   [EBP-184],  EAX
         ; Let x29_88 = 
         ; Add x28_87 + x11_70
         MOV   EAX,  [EBP-184]
         ADD   EAX,  [EBP-88]
         MOV   [EBP-188],  EAX
         ; Let x30_89 = 
         ; Add x29_88 + x12_71
         MOV   EAX,  [EBP-188]
         ADD   EAX,  [EBP-96]
         MOV   [EBP-192],  EAX
         ; Let x31_90 = 
         ; Add x30_89 + x13_72
         MOV   EAX,  [EBP-192]
         ADD   EAX,  [EBP-104]
         MOV   [EBP-196],  EAX
         ; Let x32_91 = 
         ; Add x31_90 + x14_73
         MOV   EAX,  [EBP-196]
         ADD   EAX,  [EBP-112]
         MOV   [EBP-200],  EAX
         ; Let x33_92 = 
         ; Add x32_91 + x15_74
         MOV   EAX,  [EBP-200]
         ADD   EAX,  [EBP-120]
         MOV   [EBP-204],  EAX
         ; Let x34_93 = 
         ; Add x33_92 + x16_75
         MOV   EAX,  [EBP-204]
         ADD   EAX,  [EBP-128]
         MOV   [EBP-208],  EAX
         ; Let x35_94 = 
         ; Add x34_93 + x17_76
         MOV   EAX,  [EBP-208]
         ADD   EAX,  [EBP-136]
         MOV   [EBP-212],  EAX
         ; Let x36_95 = 
         ; Add x35_94 + x0_57
         MOV   EAX,  [EBP-212]
         ADD   EAX,  [EBP+8]
         MOV   [EBP-216],  EAX
         ; Let Ti21_130 = 
         ; Add x1_60 + x2_61
         MOV   EAX,  [EBP-8]
         ADD   EAX,  [EBP-16]
         MOV   [EBP-220],  EAX
         ; Let Ti22_129 = 
         ; Add Ti21_130 + x3_62
         MOV   EAX,  [EBP-220]
         ADD   EAX,  [EBP-24]
         MOV   [EBP-224],  EAX
         ; Let Ti23_128 = 
         ; Add Ti22_129 + x4_63
         MOV   EAX,  [EBP-224]
         ADD   EAX,  [EBP-32]
         MOV   [EBP-228],  EAX
         ; Let Ti24_127 = 
         ; Add Ti23_128 + x5_64
         MOV   EAX,  [EBP-228]
         ADD   EAX,  [EBP-40]
         MOV   [EBP-232],  EAX
         ; Let Ti25_126 = 
         ; Add Ti24_127 + x6_65
         MOV   EAX,  [EBP-232]
         ADD   EAX,  [EBP-48]
         MOV   [EBP-236],  EAX
         ; Let Ti26_125 = 
         ; Add Ti25_126 + x7_66
         MOV   EAX,  [EBP-236]
         ADD   EAX,  [EBP-56]
         MOV   [EBP-240],  EAX
         ; Let Ti27_124 = 
         ; Add Ti26_125 + x8_67
         MOV   EAX,  [EBP-240]
         ADD   EAX,  [EBP-64]
         MOV   [EBP-244],  EAX
         ; Let Ti28_123 = 
         ; Add Ti27_124 + x9_68
         MOV   EAX,  [EBP-244]
         ADD   EAX,  [EBP-72]
         MOV   [EBP-248],  EAX
         ; Let Ti29_122 = 
         ; Add Ti28_123 + x10_69
         MOV   EAX,  [EBP-248]
         ADD   EAX,  [EBP-80]
         MOV   [EBP-252],  EAX
         ; Let Ti30_121 = 
         ; Add Ti29_122 + x11_70
         MOV   EAX,  [EBP-252]
         ADD   EAX,  [EBP-88]
         MOV   [EBP-256],  EAX
         ; Let Ti31_120 = 
         ; Add Ti30_121 + x12_71
         MOV   EAX,  [EBP-256]
         ADD   EAX,  [EBP-96]
         MOV   [EBP-260],  EAX
         ; Let Ti32_119 = 
         ; Add Ti31_120 + x13_72
         MOV   EAX,  [EBP-260]
         ADD   EAX,  [EBP-104]
         MOV   [EBP-264],  EAX
         ; Let Ti33_118 = 
         ; Add Ti32_119 + x14_73
         MOV   EAX,  [EBP-264]
         ADD   EAX,  [EBP-112]
         MOV   [EBP-268],  EAX
         ; Let Ti34_117 = 
         ; Add Ti33_118 + x15_74
         MOV   EAX,  [EBP-268]
         ADD   EAX,  [EBP-120]
         MOV   [EBP-272],  EAX
         ; Let Ti35_116 = 
         ; Add Ti34_117 + x16_75
         MOV   EAX,  [EBP-272]
         ADD   EAX,  [EBP-128]
         MOV   [EBP-276],  EAX
         ; Let Ti36_115 = 
         ; Add Ti35_116 + x17_76
         MOV   EAX,  [EBP-276]
         ADD   EAX,  [EBP-136]
         MOV   [EBP-280],  EAX
         ; Let Ti37_114 = 
         ; Add Ti36_115 + x18_77
         MOV   EAX,  [EBP-280]
         ADD   EAX,  [EBP-144]
         MOV   [EBP-284],  EAX
         ; Let Ti38_113 = 
         ; Add Ti37_114 + x19_78
         MOV   EAX,  [EBP-284]
         ADD   EAX,  [EBP-148]
         MOV   [EBP-288],  EAX
         ; Let Ti39_112 = 
         ; Add Ti38_113 + x20_79
         MOV   EAX,  [EBP-288]
         ADD   EAX,  [EBP-152]
         MOV   [EBP-292],  EAX
         ; Let Ti40_111 = 
         ; Add Ti39_112 + x21_80
         MOV   EAX,  [EBP-292]
         ADD   EAX,  [EBP-156]
         MOV   [EBP-296],  EAX
         ; Let Ti41_110 = 
         ; Add Ti40_111 + x22_81
         MOV   EAX,  [EBP-296]
         ADD   EAX,  [EBP-160]
         MOV   [EBP-300],  EAX
         ; Let Ti42_109 = 
         ; Add Ti41_110 + x23_82
         MOV   EAX,  [EBP-300]
         ADD   EAX,  [EBP-164]
         MOV   [EBP-304],  EAX
         ; Let Ti43_108 = 
         ; Add Ti42_109 + x24_83
         MOV   EAX,  [EBP-304]
         ADD   EAX,  [EBP-168]
         MOV   [EBP-308],  EAX
         ; Let Ti44_107 = 
         ; Add Ti43_108 + x25_84
         MOV   EAX,  [EBP-308]
         ADD   EAX,  [EBP-172]
         MOV   [EBP-312],  EAX
         ; Let Ti45_106 = 
         ; Add Ti44_107 + x26_85
         MOV   EAX,  [EBP-312]
         ADD   EAX,  [EBP-176]
         MOV   [EBP-316],  EAX
         ; Let Ti46_105 = 
         ; Add Ti45_106 + x27_86
         MOV   EAX,  [EBP-316]
         ADD   EAX,  [EBP-180]
         MOV   [EBP-320],  EAX
         ; Let Ti47_104 = 
         ; Add Ti46_105 + x28_87
         MOV   EAX,  [EBP-320]
         ADD   EAX,  [EBP-184]
         MOV   [EBP-324],  EAX
         ; Let Ti48_103 = 
         ; Add Ti47_104 + x29_88
         MOV   EAX,  [EBP-324]
         ADD   EAX,  [EBP-188]
         MOV   [EBP-328],  EAX
         ; Let Ti49_102 = 
         ; Add Ti48_103 + x30_89
         MOV   EAX,  [EBP-328]
         ADD   EAX,  [EBP-192]
         MOV   [EBP-332],  EAX
         ; Let Ti50_101 = 
         ; Add Ti49_102 + x31_90
         MOV   EAX,  [EBP-332]
         ADD   EAX,  [EBP-196]
         MOV   [EBP-336],  EAX
         ; Let Ti51_100 = 
         ; Add Ti50_101 + x32_91
         MOV   EAX,  [EBP-336]
         ADD   EAX,  [EBP-200]
         MOV   [EBP-340],  EAX
         ; Let Ti52_99 = 
         ; Add Ti51_100 + x33_92
         MOV   EAX,  [EBP-340]
         ADD   EAX,  [EBP-204]
         MOV   [EBP-344],  EAX
         ; Let Ti53_98 = 
         ; Add Ti52_99 + x34_93
         MOV   EAX,  [EBP-344]
         ADD   EAX,  [EBP-208]
         MOV   [EBP-348],  EAX
         ; Let Ti54_97 = 
         ; Add Ti53_98 + x35_94
         MOV   EAX,  [EBP-348]
         ADD   EAX,  [EBP-212]
         MOV   [EBP-352],  EAX
         ; Let Ti55_96 = 
         ; Add Ti54_97 + x36_95
         MOV   EAX,  [EBP-352]
         ADD   EAX,  [EBP-216]
         MOV   [EBP-356],  EAX
         ; Add Ti55_96 + x0_57
         MOV   EAX,  [EBP-356]
         ADD   EAX,  [EBP+8]
         MOV   ESP,  EBP
         POP   EBP
         RET
f_56 endp

;==============================================================
; need to copy min_caml_intel.asm from min-caml directory to output directoty
include min_caml_intel.asm

END start

;==============================================================

