Function at 0x401300
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x458
mov eax, dword [0x440010]
xor eax, ebp
mov dword [ebp - 4], eax
push 0x403b40
push str.Reading_parameters_for_runoff_simulation.
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
push 1
push 0x40
push 1
push str..._param_dhm_event_ver400.dat
lea ecx, [ebp - 0x2c0]
call fcn.00404050
mov eax, dword [ebp - 0x2c0]
mov ecx, dword [eax + 4]
lea ecx, [ebp + ecx - 0x2c0]
call fcn.00405be0
movzx edx, al
test edx, edx
je 0x4013df
push 0x403b40
push str.param_dhm_event_ver400.dat_cannot_open.
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
push 0x403b40
mov ecx, 0x441178
call fcn.00405bc0
push 0x403b40
push 0x430244
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
lea eax, [ebp - 0x14e]
push eax
mov ecx, 0x441110
call fcn.0040bf50
mov dword [ebp - 0x1c0], 1
lea ecx, [ebp - 0x2c0]
call fcn.00406000
mov eax, dword [ebp - 0x1c0]
jmp 0x40232f
push 0x403b40
push str.1__Reading_parameters_for_study_area.
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
lea ecx, [ebp - 0x1c4]
push ecx
lea ecx, [ebp - 0x2c0]
call fcn.00405700
push 0x403b40
push ecx
movss xmm0, dword [ebp - 0x1c4]
movss dword [esp], xmm0
push str.__Topography_scale_:
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.004058e0
mov ecx, eax
call fcn.00405bc0
lea edx, [ebp - 0x170]
push edx
lea ecx, [ebp - 0x2c0]
call fcn.004056d0
lea eax, [ebp - 0x174]
push eax
lea ecx, [ebp - 0x2c0]
call fcn.004056d0
push 0x403b40
mov ecx, dword [ebp - 0x174]
push ecx
push 0x4302a0
mov edx, dword [ebp - 0x170]
push edx
push 0x4302b4
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405740
push eax
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405740
mov ecx, eax
call fcn.00405bc0
lea eax, [ebp - 0x1cc]
push eax
lea ecx, [ebp - 0x2c0]
call fcn.00405720
lea ecx, [ebp - 0x1f4]
push ecx
lea ecx, [ebp - 0x2c0]
call fcn.00405720
push 0x403b40
sub esp, 8
movsd xmm0, qword [ebp - 0x1f4]
movsd qword [esp], xmm0
push str._Latitude__deg__:
sub esp, 8
movsd xmm0, qword [ebp - 0x1cc]
movsd qword [esp], xmm0
push str._Sorth_West_corner_Longitude__degree__:
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405a50
push eax
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405a50
mov ecx, eax
call fcn.00405bc0
mov edx, dword [ebp - 0x170]
mov dword [ebp - 0x138], edx
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x134], eax
movsd xmm0, qword [ebp - 0x1cc]
movsd qword [ebp - 0x2c8], xmm0
movsd xmm0, qword [ebp - 0x1f4]
movsd qword [ebp - 0x2d0], xmm0
push 0x403b40
push str.2__Reading_parameters_for_input_data.
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
lea ecx, [ebp - 0x1fc]
push ecx
lea ecx, [ebp - 0x2c0]
call fcn.004056d0
lea edx, [ebp - 0x178]
push edx
lea ecx, [ebp - 0x2c0]
call fcn.004056d0
push 0x403b40
mov eax, dword [ebp - 0x178]
push eax
push str.__Rainfall_time_interval__min_:
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405740
mov ecx, eax
call fcn.00405bc0
mov eax, 0x3c
cdq
idiv dword [ebp - 0x178]
test edx, edx
je 0x40161e
push 0x403b40
push 0x403b40
push str.____Error_:_Rainfall_time_interval_is_wrong_
push 0x403b40
mov ecx, 0x441178
call fcn.00405bc0
push eax
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
mov ecx, eax
call fcn.00405bc0
push 1
call fcn.0041497c
lea ecx, [ebp - 0x17c]
push ecx
lea ecx, [ebp - 0x2c0]
call fcn.004056d0
lea edx, [ebp - 0x180]
push edx
lea ecx, [ebp - 0x2c0]
call fcn.004056d0
push 0x403b40
mov eax, dword [ebp - 0x180]
push eax
push str.__Number_of_row_:
mov ecx, dword [ebp - 0x17c]
push ecx
push str.__Number_of_col_:
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405740
push eax
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405740
mov ecx, eax
call fcn.00405bc0
lea edx, [ebp - 0x1d4]
push edx
lea ecx, [ebp - 0x2c0]
call fcn.00405720
lea eax, [ebp - 0x1dc]
push eax
lea ecx, [ebp - 0x2c0]
call fcn.00405720
push 0x403b40
sub esp, 8
movsd xmm0, qword [ebp - 0x1d4]
movsd qword [esp], xmm0
push str.__Input_data_grid_size_of_x_direction_:
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405a50
mov ecx, eax
call fcn.00405bc0
push 0x403b40
sub esp, 8
movsd xmm0, qword [ebp - 0x1dc]
movsd qword [esp], xmm0
push str.__Input_data_grid_size_of_y_direction_:
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405a50
mov ecx, eax
call fcn.00405bc0
lea ecx, [ebp - 0x1e4]
push ecx
lea ecx, [ebp - 0x2c0]
call fcn.00405720
push 0x403b40
sub esp, 8
movsd xmm0, qword [ebp - 0x1e4]
movsd qword [esp], xmm0
push str.__West_corner_longitude_of_input_data_:
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405a50
mov ecx, eax
call fcn.00405bc0
lea edx, [ebp - 0x1ec]
push edx
lea ecx, [ebp - 0x2c0]
call fcn.00405720
push 0x403b40
sub esp, 8
movsd xmm0, qword [ebp - 0x1ec]
movsd qword [esp], xmm0
push str.__South_corner_latitude_of_input_data_:
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405a50
mov ecx, eax
call fcn.00405bc0
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x208], eax
mov ecx, dword [ebp - 0x180]
mov dword [ebp - 0x1f8], ecx
movsd xmm0, qword [ebp - 0x1d4]
movsd qword [ebp - 0x2f0], xmm0
movsd xmm0, qword [ebp - 0x1dc]
movsd qword [ebp - 0x2d8], xmm0
movsd xmm0, qword [ebp - 0x1e4]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x1ec]
movsd qword [ebp - 0x2e8], xmm0
push 0x403b40
push str.3__Reading_parameters_for_simuration_duration.
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
lea edx, [ebp - 0x184]
push edx
lea ecx, [ebp - 0x2c0]
call fcn.004056d0
push 0x403b40
mov eax, dword [ebp - 0x184]
push eax
push str.__Simulation_duration__days__:
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405740
mov ecx, eax
call fcn.00405bc0
mov ecx, dword [ebp - 0x184]
mov dword [ebp - 0x18c], ecx
push 0x403b40
mov ecx, 0x441178
call fcn.00405bc0
lea ecx, [ebp - 0x2c0]
call fcn.0040a330
push 1
lea ecx, [ebp - 0x3a8]
call fcn.00404110
push 0x4304ac
push 0x100
lea edx, [ebp - 0x104]
push edx
call fcn.0040e110
add esp, 0xc
push 0x403b40
lea eax, [ebp - 0x104]
push eax
push 0x4304c8
push 0x441178
call fcn.00402670
add esp, 8
push eax
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
push 0x40
push 0x21
lea ecx, [ebp - 0x104]
push ecx
lea ecx, [ebp - 0x3a8]
call fcn.0040c6e0
mov edx, dword [ebp - 0x3a8]
mov eax, dword [edx + 4]
lea ecx, [ebp + eax - 0x3a8]
call fcn.00405be0
movzx ecx, al
test ecx, ecx
je 0x40194f
push 0x403b40
push 0x4304d0
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
mov dword [ebp - 0x188], 1
lea ecx, [ebp - 0x3a8]
call fcn.00406000
lea ecx, [ebp - 0x2c0]
call fcn.00406000
mov eax, dword [ebp - 0x188]
jmp 0x40232f
imul edx, dword [ebp - 0x18c], 0x18
imul eax, edx, 6
mov dword [ebp - 0x160], eax
cmp dword [ebp - 0x160], 0x2710
jle 0x4019b4
push 0x403b40
push str.Max_time_counter_exceeds_10000_
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
mov dword [ebp - 0x190], 1
lea ecx, [ebp - 0x3a8]
call fcn.00406000
lea ecx, [ebp - 0x2c0]
call fcn.00406000
mov eax, dword [ebp - 0x190]
jmp 0x40232f
lea ecx, [ebp - 0x11c]
call fcn.004045a0
push 0x403b40
mov ecx, 0x441178
call fcn.00405bc0
push 0x403b40
push str.Do_you_want_to_set_the_maximum_and_minimun_values_of_rainfall_intensity___y_n_
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
lea ecx, [ebp - 0x11c]
push ecx
push 0x441110
call fcn.00402650
add esp, 8
push 0x43050c
lea edx, [ebp - 0x11c]
push edx
call fcn.00402970
add esp, 8
movzx eax, al
test eax, eax
je 0x401acf
push str.Input_maximum_value_:
push 0x441178
call fcn.00402670
add esp, 8
lea ecx, [ebp - 0x130]
push ecx
mov ecx, 0x441110
call fcn.00405700
push str.Input_minimum_value_:
push 0x441178
call fcn.00402670
add esp, 8
lea edx, [ebp - 0x124]
push edx
mov ecx, 0x441110
call fcn.00405700
movss xmm0, dword [ebp - 0x124]
comiss xmm0, dword [ebp - 0x130]
jb 0x401aca
push 0x403b40
push str.Wrong_values_inputted_
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
mov dword [ebp - 0x194], 1
lea ecx, [ebp - 0x11c]
call fcn.00405240
lea ecx, [ebp - 0x3a8]
call fcn.00406000
lea ecx, [ebp - 0x2c0]
call fcn.00406000
mov eax, dword [ebp - 0x194]
jmp 0x40232f
jmp 0x401bec
movss xmm0, dword [0x430afc]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [0x430af8]
movss dword [ebp - 0x124], xmm0
mov dword [ebp - 0x154], 1
jmp 0x401b0a
mov eax, dword [ebp - 0x154]
add eax, 1
mov dword [ebp - 0x154], eax
mov ecx, dword [ebp - 0x154]
cmp ecx, dword [ebp - 0x160]
jg 0x401bec
mov dword [ebp - 0x158], 1
jmp 0x401b37
mov edx, dword [ebp - 0x158]
add edx, 1
mov dword [ebp - 0x158], edx
mov eax, dword [ebp - 0x158]
cmp eax, dword [ebp - 0x134]
jg 0x401be7
mov dword [ebp - 0x15c], 1
jmp 0x401b64
mov ecx, dword [ebp - 0x15c]
add ecx, 1
mov dword [ebp - 0x15c], ecx
mov edx, dword [ebp - 0x15c]
cmp edx, dword [ebp - 0x138]
jg 0x401be2
push 0
push 4
lea eax, [ebp - 0x120]
push eax
lea ecx, [ebp - 0x3a8]
call fcn.0040ce70
cvtss2sd xmm0, dword [ebp - 0x120]
xorps xmm1, xmm1
comisd xmm1, xmm0
jbe 0x401b9b
jmp 0x401b55
movss xmm0, dword [ebp - 0x120]
comiss xmm0, dword [ebp - 0x130]
jbe 0x401bbc
movss xmm0, dword [ebp - 0x120]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [ebp - 0x124]
comiss xmm0, dword [ebp - 0x120]
jbe 0x401bdd
movss xmm0, dword [ebp - 0x120]
movss dword [ebp - 0x124], xmm0
jmp 0x401b55
jmp 0x401b28
jmp 0x401afb
lea ecx, [ebp - 0x3a8]
call fcn.0040a330
movss xmm0, dword [ebp - 0x124]
comiss xmm0, dword [ebp - 0x130]
jb 0x401c5c
push 0x403b40
push str.Maximun_discharge___Minimum_discharge_
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
mov dword [ebp - 0x198], 1
lea ecx, [ebp - 0x11c]
call fcn.00405240
lea ecx, [ebp - 0x3a8]
call fcn.00406000
lea ecx, [ebp - 0x2c0]
call fcn.00406000
mov eax, dword [ebp - 0x198]
jmp 0x40232f
push 0x403b40
push ecx
movss xmm0, dword [ebp - 0x124]
movss dword [esp], xmm0
push str._Minimum_discharge_
push ecx
movss xmm0, dword [ebp - 0x130]
movss dword [esp], xmm0
push str.Maximun_discharge_
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.004058e0
push eax
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.004058e0
mov ecx, eax
call fcn.00405bc0
push str.._discharge10minMean.bin
push 0x100
lea ecx, [ebp - 0x104]
push ecx
call fcn.0040e110
add esp, 0xc
push 0x403b40
lea edx, [ebp - 0x104]
push edx
push str.Read
push 0x441178
call fcn.00402670
add esp, 8
push eax
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
push 0x40
push 0x21
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebp - 0x3a8]
call fcn.0040c6e0
mov ecx, dword [ebp - 0x3a8]
mov edx, dword [ecx + 4]
lea ecx, [ebp + edx - 0x3a8]
call fcn.00405be0
movzx eax, al
test eax, eax
je 0x401dc1
push 0x403b40
push str.Discharge_data_cannot_open.
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
push 0x403b40
mov ecx, 0x441178
call fcn.00405bc0
push 0x403b40
push str.Program_ends._Hit_any_key_
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
lea ecx, [ebp - 0x14d]
push ecx
mov ecx, 0x441110
call fcn.0040bf50
mov dword [ebp - 0x19c], 1
lea ecx, [ebp - 0x11c]
call fcn.00405240
lea ecx, [ebp - 0x3a8]
call fcn.00406000
lea ecx, [ebp - 0x2c0]
call fcn.00406000
mov eax, dword [ebp - 0x19c]
jmp 0x40232f
xor ecx, ecx
mov eax, dword [ebp - 0x134]
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0040f8b3
add esp, 4
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x140], 0
jmp 0x401e0d
mov ecx, dword [ebp - 0x140]
add ecx, 1
mov dword [ebp - 0x140], ecx
mov edx, dword [ebp - 0x140]
cmp edx, dword [ebp - 0x134]
jge 0x401e57
xor ecx, ecx
mov eax, dword [ebp - 0x138]
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0040f8b3
add esp, 4
mov dword [ebp - 0x1a4], eax
mov eax, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x13c]
mov edx, dword [ebp - 0x1a4]
mov dword [ecx + eax*4], edx
jmp 0x401dfe
mov dword [ebp - 0x16c], 5
mov dword [ebp - 0x1ac], 5
mov dword [ebp - 0x144], 1
jmp 0x401e86
mov eax, dword [ebp - 0x144]
add eax, 1
mov dword [ebp - 0x144], eax
mov ecx, dword [ebp - 0x144]
cmp ecx, dword [ebp - 0x160]
jg 0x4022db
push 1
lea ecx, [ebp - 0x458]
call fcn.00404250
mov edx, dword [ebp - 0x144]
push edx
push str.._image__4d_discharge.ppm
push 0x100
lea eax, [ebp - 0x104]
push eax
call fcn.0040e110
add esp, 0x10
push 0x430678
lea ecx, [ebp - 0x104]
push ecx
push str.Write
push 0x441178
call fcn.00402670
add esp, 8
push eax
call fcn.00402670
add esp, 8
push eax
call fcn.00402670
add esp, 8
push 0x40
push 0x22
lea edx, [ebp - 0x104]
push edx
lea ecx, [ebp - 0x458]
call fcn.0040c740
mov eax, dword [ebp - 0x458]
mov ecx, dword [eax + 4]
lea ecx, [ebp + ecx - 0x458]
call fcn.00405be0
movzx edx, al
test edx, edx
je 0x401f86
push 0x403b40
push str.Image_output_file_cannot_open.
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
mov dword [ebp - 0x1a8], 1
lea ecx, [ebp - 0x458]
call fcn.00406060
lea ecx, [ebp - 0x11c]
call fcn.00405240
lea ecx, [ebp - 0x3a8]
call fcn.00406000
lea ecx, [ebp - 0x2c0]
call fcn.00406000
mov eax, dword [ebp - 0x1a8]
jmp 0x40232f
push 0x4306a4
push 0x4306a8
lea eax, [ebp - 0x458]
push eax
call fcn.00402670
add esp, 8
push eax
call fcn.00402670
add esp, 8
push 0x4306ac
mov ecx, dword [ebp - 0x134]
imul ecx, dword [ebp - 0x1ac]
push ecx
push 0x4306b0
mov edx, dword [ebp - 0x138]
imul edx, dword [ebp - 0x16c]
push edx
lea ecx, [ebp - 0x458]
call fcn.00405740
push eax
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405740
push eax
call fcn.00402670
add esp, 8
push 0x4306b4
push 0x4306b8
lea eax, [ebp - 0x458]
push eax
call fcn.00402670
add esp, 8
push eax
call fcn.00402670
add esp, 8
mov dword [ebp - 0x128], 0
jmp 0x40202f
mov ecx, dword [ebp - 0x128]
add ecx, 1
mov dword [ebp - 0x128], ecx
mov edx, dword [ebp - 0x128]
cmp edx, dword [ebp - 0x134]
jge 0x402184
mov dword [ebp - 0x12c], 0
jmp 0x40205c
mov eax, dword [ebp - 0x12c]
add eax, 1
mov dword [ebp - 0x12c], eax
mov ecx, dword [ebp - 0x12c]
cmp ecx, dword [ebp - 0x138]
jge 0x40217f
push 0
push 4
lea edx, [ebp - 0x120]
push edx
lea ecx, [ebp - 0x3a8]
call fcn.0040ce70
cmp dword [ebp - 0x128], 1
je 0x4020b8
mov eax, dword [ebp - 0x134]
sub eax, 2
cmp dword [ebp - 0x128], eax
je 0x4020b8
cmp dword [ebp - 0x12c], 1
je 0x4020b8
mov ecx, dword [ebp - 0x138]
sub ecx, 2
cmp dword [ebp - 0x12c], ecx
jne 0x4020d9
mov edx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x13c]
mov ecx, dword [eax + edx*4]
mov edx, dword [ebp - 0x12c]
mov dword [ecx + edx*4], 0xfffffc19
jmp 0x40217a
cvtss2sd xmm0, dword [ebp - 0x120]
xorps xmm1, xmm1
comisd xmm1, xmm0
jbe 0x402108
mov eax, dword [ebp - 0x128]
mov ecx, dword [ebp - 0x13c]
mov edx, dword [ecx + eax*4]
mov eax, dword [ebp - 0x12c]
mov dword [edx + eax*4], 0xfffffc19
jmp 0x40217a
push ecx
movss xmm0, dword [0x430ad4]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x120]
subss xmm0, dword [ebp - 0x124]
movss xmm1, dword [ebp - 0x130]
subss xmm1, dword [ebp - 0x124]
divss xmm0, xmm1
push ecx
movss dword [esp], xmm0
call fcn.0040cb70
add esp, 8
fstp qword [ebp - 0x204]
movsd xmm0, qword [ebp - 0x204]
mulsd xmm0, qword [0x430ae0]
cvttsd2si ecx, xmm0
mov edx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x13c]
mov edx, dword [eax + edx*4]
mov eax, dword [ebp - 0x12c]
mov dword [edx + eax*4], ecx
jmp 0x40204d
jmp 0x402020
mov ecx, dword [ebp - 0x134]
sub ecx, 1
mov dword [ebp - 0x148], ecx
jmp 0x4021a4
mov edx, dword [ebp - 0x148]
sub edx, 1
mov dword [ebp - 0x148], edx
cmp dword [ebp - 0x148], 0
jl 0x4022c0
mov dword [ebp - 0x164], 0
jmp 0x4021cc
mov eax, dword [ebp - 0x164]
add eax, 1
mov dword [ebp - 0x164], eax
mov ecx, dword [ebp - 0x164]
cmp ecx, dword [ebp - 0x16c]
jge 0x4022bb
mov dword [ebp - 0x14c], 0
jmp 0x4021f9
mov edx, dword [ebp - 0x14c]
add edx, 1
mov dword [ebp - 0x14c], edx
mov eax, dword [ebp - 0x14c]
cmp eax, dword [ebp - 0x138]
jge 0x4022b6
mov ecx, dword [ebp - 0x148]
mov edx, dword [ebp - 0x13c]
mov eax, dword [edx + ecx*4]
mov ecx, dword [ebp - 0x14c]
mov edx, dword [eax + ecx*4]
mov dword [ebp - 0x1b0], edx
lea eax, [ebp - 0x1bc]
push eax
lea ecx, [ebp - 0x1b8]
push ecx
lea edx, [ebp - 0x1b4]
push edx
mov eax, dword [ebp - 0x1b0]
push eax
call fcn.004011d0
add esp, 0x10
mov dword [ebp - 0x168], 0
jmp 0x402268
mov ecx, dword [ebp - 0x168]
add ecx, 1
mov dword [ebp - 0x168], ecx
mov edx, dword [ebp - 0x168]
cmp edx, dword [ebp - 0x16c]
jge 0x4022b1
movzx eax, byte [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x458]
call fcn.0040cc90
movzx ecx, byte [ebp - 0x1b8]
push ecx
lea ecx, [ebp - 0x458]
call fcn.0040cc90
movzx edx, byte [ebp - 0x1bc]
push edx
lea ecx, [ebp - 0x458]
call fcn.0040cc90
jmp 0x402259
jmp 0x4021ea
jmp 0x4021bd
jmp 0x402195
lea ecx, [ebp - 0x458]
call fcn.0040a360
lea ecx, [ebp - 0x458]
call fcn.00406060
jmp 0x401e77
push 0x403b40
mov ecx, 0x441178
call fcn.00405bc0
push 0x403b40
push str.Program_ends_
push 0x441178
call fcn.00402670
add esp, 8
mov ecx, eax
call fcn.00405bc0
lea ecx, [ebp - 0x11c]
call fcn.00405240
lea ecx, [ebp - 0x3a8]
call fcn.00406000
lea ecx, [ebp - 0x2c0]
call fcn.00406000
jmp 0x40232d
xor eax, eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040f8c1
mov esp, ebp
pop ebp
ret