Function at 0x4053c0
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x4c
cmp dword [esp + 0x70], 0xc
mov eax, dword [esp + 0x60]
jle 0x406397
movzx ebx, byte [eax + 0xc]
mov esi, dword [eax]
mov edx, dword [eax + 4]
mov ecx, dword [eax + 8]
mov dword [esp], 1
mov dword [esp + 0x33], esi
mov byte [esp + 0x3f], bl
lea ebx, [esp + 0x33]
mov dword [esp + 0x37], edx
mov dword [esp + 0x3b], ecx
mov dword [esp + 4], ebx
call sym.__gfortran_string_len_trim
test eax, eax
je 0x40554e
cmp esi, dword [str._...__]
je 0x405560
cmp byte [esp + 0x33], 0x3c
je 0x4062e0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x433ae6
mov dword [esp + 8], 1
mov dword [esp + 4], ebx
mov dword [esp], 0xd
call sym.__gfortran_string_index
test eax, eax
jle 0x405530
mov edx, 0xe
sub edx, eax
test edx, edx
jle 0x405530
cmp edx, 4
lea ebp, [ebx + eax - 1]
mov esi, 0x20202020
jb 0x406302
lea ecx, [ebp + 4]
mov dword [ebp], 0x20202020
mov dword [ebp + edx - 4], 0x20202020
and ecx, 0xfffffffc
sub ebp, ecx
add edx, ebp
and edx, 0xfffffffc
cmp edx, 4
jb 0x405530
lea edi, [edx - 1]
mov eax, 4
mov ebp, edx
mov dword [ecx], 0x20202020
shr edi, 2
and edi, 7
cmp eax, edx
jae 0x405530
test edi, edi
je 0x405507
cmp edi, 1
je 0x4054fd
cmp edi, 2
je 0x4054f7
cmp edi, 3
je 0x4054f1
cmp edi, 4
je 0x4054eb
cmp edi, 5
je 0x4054e5
cmp edi, 6
je 0x4054df
mov dword [ecx + 4], esi
mov eax, 8
mov dword [ecx + eax], esi
add eax, 4
mov dword [ecx + eax], esi
add eax, 4
mov dword [ecx + eax], esi
add eax, 4
mov dword [ecx + eax], esi
add eax, 4
mov dword [ecx + eax], esi
add eax, 4
mov dword [ecx + eax], esi
add eax, 4
cmp eax, ebp
jae 0x405530
mov dword [ecx + eax], esi
mov dword [ecx + eax + 4], esi
mov dword [ecx + eax + 8], esi
mov dword [ecx + eax + 0xc], esi
mov dword [ecx + eax + 0x10], esi
mov dword [ecx + eax + 0x14], esi
mov dword [ecx + eax + 0x18], esi
mov dword [ecx + eax + 0x1c], esi
add eax, 0x20
cmp eax, ebp
jb 0x405507
lea esi, [esi]
mov dword [esp + 4], ebx
mov dword [esp], 0xd
call sym.__gfortran_string_len_trim
cmp eax, 0xd
jg 0x4063c3
cmp eax, 2
jg 0x405572
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret
movzx eax, byte [0x433ae5]
cmp byte [ebx + 4], al
jne 0x40541a
jmp 0x40554e
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
call sym.__gfortran_string_index
mov esi, eax
lea eax, [esp + 0x34]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
sub esi, 1
mov dword [esp + 0xc], eax
mov dword [esp], 0x26
call sym.__gfortran_string_index
mov ecx, eax
mov eax, 0x26
mov dword [esp + 0x10], 0
imul esi
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
mov esi, eax
mov edi, edx
lea eax, [ecx - 1]
mov ebp, edi
mov edi, esi
cdq
add edi, eax
lea eax, [esp + 0x35]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov dword [esp + 0x28], edi
mov ecx, eax
mov dword [esp + 0x2c], ebp
mov eax, 0x26
lea esi, [ecx - 1]
mov dword [esp + 0x10], 0
imul edi, dword [esp + 0x2c], 0x26
mul dword [esp + 0x28]
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x36]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov dword [esp + 0x28], edi
mov ecx, eax
mov dword [esp + 0x2c], ebp
mov eax, 0x26
lea esi, [ecx - 1]
mov dword [esp + 0x10], 0
imul edi, dword [esp + 0x2c], 0x26
mul dword [esp + 0x28]
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x37]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], ebp
mov ecx, eax
imul edi, dword [esp + 0x2c], 0x26
mov eax, 0x26
sub ecx, 1
mov dword [esp + 0x10], 0
mul dword [esp + 0x28]
mov esi, ecx
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, ecx
sar edi, 0x1f
add esi, eax
lea eax, [esp + 0x38]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, 0x26
mov dword [esp + 0x10], 0
mul esi
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
imul ebp, edi, 0x26
mov dword [esp], 0x26
mov esi, eax
lea eax, [ecx - 1]
mov edi, edx
add edi, ebp
cdq
add eax, esi
adc edx, edi
mov edi, eax
lea eax, [esp + 0x39]
mov ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov esi, eax
mov eax, 0x26
mov dword [esp + 8], 1
imul ecx, ebp, 0x26
sub esi, 1
mov dword [esp + 4], 0x41c7a0
mul edi
mov edi, esi
mov dword [esp], 0x26
sar edi, 0x1f
mov dword [esp + 0x10], 0
add edx, ecx
add esi, eax
lea eax, [esp + 0x3a]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, 0x26
mov dword [esp + 0x10], 0
mul esi
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
imul ebp, edi, 0x26
mov dword [esp], 0x26
mov esi, eax
lea eax, [ecx - 1]
mov edi, edx
add edi, ebp
cdq
add eax, esi
adc edx, edi
mov edi, eax
lea eax, [esp + 0x3b]
mov ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov esi, eax
mov eax, 0x26
mov dword [esp + 0x10], 0
imul ecx, ebp, 0x26
sub esi, 1
mov dword [esp + 8], 1
mul edi
mov edi, esi
mov dword [esp + 4], 0x41c7a0
sar edi, 0x1f
mov dword [esp], 0x26
add edx, ecx
add esi, eax
lea eax, [esp + 0x3c]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, 0x26
mov dword [esp + 0x10], 0
mul esi
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
imul ebp, edi, 0x26
mov dword [esp], 0x26
mov edi, edx
mov esi, eax
lea eax, [ecx - 1]
add edi, ebp
mov ebp, edi
mov edi, esi
cdq
add edi, eax
lea eax, [esp + 0x3d]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov dword [esp + 0x28], edi
mov ecx, eax
mov dword [esp + 0x2c], ebp
mov eax, 0x26
sub ecx, 1
imul edi, dword [esp + 0x2c], 0x26
mul dword [esp + 0x28]
mov esi, ecx
add edx, edi
mov edi, ecx
sar edi, 0x1f
add esi, eax
adc edi, edx
imul edi, edi, 0xf4bf0973
imul eax, esi, 0xa
add edi, eax
mov eax, 0xf4bf0973
mul esi
add edx, edi
mov edi, dword [0x41d0e4]
mov eax, edx
mov edx, dword [esp + 0x64]
shr eax, 0x16
cmp dword [ebx], edi
mov dword [edx], eax
je 0x406364
lea ebp, [eax + eax*2]
mov ecx, dword [esp + 0x37]
mov esi, dword [esp + 0x33]
mov edx, dword [esp + 0x3b]
lea edi, [eax + ebp*4]
lea eax, [edi + 0x42e3a0]
mov dword [edi + 0x42e3a0], esi
mov dword [eax + 4], ecx
movzx ecx, byte [esp + 0x3f]
mov dword [eax + 8], edx
mov byte [eax + 0xc], cl
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], ebx
mov ebp, 0x26
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
call sym.__gfortran_string_index
mov esi, eax
lea eax, [esp + 0x34]
mov dword [esp + 0x10], 0
sub esi, 1
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
mov dword [esp + 0xc], eax
mov dword [esp], 0x26
call sym.__gfortran_string_index
mov ecx, eax
mov eax, esi
mov dword [esp + 0x10], 0
imul ebp
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
mov esi, eax
lea eax, [ecx - 1]
mov edi, edx
cdq
add esi, eax
lea eax, [esp + 0x35]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, esi
mov dword [esp + 0x10], 0
imul edi, edi, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebp
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
add esi, eax
lea eax, [esp + 0x36]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, esi
mov dword [esp + 8], 1
imul edi, edi, 0x26
lea esi, [ecx - 1]
mov dword [esp + 4], 0x41c7a0
mul ebp
mov dword [esp], 0x26
mov dword [esp + 0x10], 0
add edx, edi
mov edi, esi
sar edi, 0x1f
add esi, eax
lea eax, [esp + 0x37]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, esi
mov dword [esp + 0x10], 0
imul edi, edi, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebp
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
add esi, eax
lea eax, [esp + 0x38]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, esi
mov dword [esp + 0x10], 0
imul edi, edi, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebp
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
add esi, eax
lea eax, [esp + 0x39]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, esi
mov dword [esp + 0x10], 0
imul edi, edi, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebp
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
add esi, eax
lea eax, [esp + 0x3a]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, esi
mov dword [esp + 0x10], 0
imul edi, edi, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebp
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
add esi, eax
lea eax, [esp + 0x3b]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, esi
mov dword [esp + 0x10], 0
imul edi, edi, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebp
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
add esi, eax
lea eax, [esp + 0x3c]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, esi
mov dword [esp + 0x10], 0
imul edi, edi, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebp
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
add esi, eax
lea eax, [esp + 0x3d]
adc edi, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, esi
imul edi, edi, 0x26
sub ecx, 1
mul ebp
mov esi, ecx
add edx, edi
mov edi, ecx
sar edi, 0x1f
add esi, eax
adc edi, edx
imul edi, edi, 0xf4bf0973
imul eax, esi, 0xa
add edi, eax
mov eax, 0xf4bf0973
mul esi
add edx, edi
mov edi, dword [0x41d0e4]
mov eax, edx
mov edx, dword [esp + 0x68]
shr eax, 0x14
cmp dword [esp + 0x33], edi
mov dword [edx], eax
je 0x406330
lea esi, [eax + eax*2]
mov ecx, dword [esp + 0x33]
mov edi, dword [esp + 0x37]
mov edx, dword [esp + 0x3b]
lea ebp, [eax + esi*4]
mov dword [ebp + 0x4213a0], ecx
movzx ecx, byte [esp + 0x3f]
lea eax, [ebp + 0x4213a0]
mov dword [eax + 4], edi
mov dword [eax + 8], edx
mov byte [eax + 0xc], cl
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], 0
mov ebx, 0x26
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
call sym.__gfortran_string_index
mov esi, eax
lea eax, [esp + 0x34]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
mov dword [esp + 0xc], eax
mov dword [esp], 0x26
call sym.__gfortran_string_index
mov ecx, eax
lea eax, [esi - 1]
mov dword [esp + 0x10], 0
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mov dword [esp + 4], 0x41c7a0
imul ebx
mov dword [esp], 0x26
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x35]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, edi
mov dword [esp + 0x10], 0
imul edi, ebp, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebx
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x36]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, edi
mov dword [esp + 8], 1
imul edi, ebp, 0x26
lea esi, [ecx - 1]
mov dword [esp + 4], 0x41c7a0
mul ebx
mov dword [esp], 0x26
mov dword [esp + 0x10], 0
add edx, edi
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x37]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, edi
mov dword [esp + 0x10], 0
imul edi, ebp, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebx
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x38]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, edi
mov dword [esp + 0x10], 0
imul edi, ebp, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebx
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x39]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, edi
mov dword [esp + 0x10], 0
imul edi, ebp, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebx
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x3a]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, edi
mov dword [esp + 0x10], 0
imul edi, ebp, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebx
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x3b]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, edi
mov dword [esp + 0x10], 0
imul edi, ebp, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebx
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x3c]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, edi
mov dword [esp + 0x10], 0
imul edi, ebp, 0x26
lea esi, [ecx - 1]
mov dword [esp + 8], 1
mul ebx
mov dword [esp + 4], 0x41c7a0
mov dword [esp], 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
mov ebp, edi
mov edi, esi
add edi, eax
lea eax, [esp + 0x3d]
adc ebp, edx
mov dword [esp + 0xc], eax
call sym.__gfortran_string_index
mov ecx, eax
mov eax, edi
mul ebx
lea esi, [ecx - 1]
imul edi, ebp, 0x26
add edx, edi
mov edi, esi
sar edi, 0x1f
add esi, eax
adc edi, edx
imul ecx, edi, 0xf4bf0973
imul eax, esi, 0xa
add ecx, eax
mov eax, 0xf4bf0973
mul esi
mov eax, dword [esp + 0x6c]
add edx, ecx
mov ecx, 0x41e0a0
mov edi, edx
shr edi, 0xa
mov dword [eax], edi
mov eax, 0x41d100
mov esi, dword [eax]
cmp esi, edi
je 0x4060f0
mov esi, dword [eax + 4]
cmp esi, edi
je 0x4060f0
mov esi, dword [eax + 8]
cmp esi, edi
je 0x4060f0
mov esi, dword [eax + 0xc]
cmp esi, edi
je 0x4060f0
mov esi, dword [eax + 0x10]
cmp esi, edi
je 0x4060f0
mov esi, dword [eax + 0x14]
cmp esi, edi
je 0x4060f0
mov esi, dword [eax + 0x18]
cmp esi, edi
je 0x4060f0
mov esi, dword [eax + 0x1c]
cmp esi, edi
je 0x4060f0
add eax, 0x20
cmp ecx, eax
jne 0x405f39
mov dword [esp + 8], 0xf9c
mov dword [esp + 4], 0x41d100
mov ebx, 0x42137b
mov dword [esp], 0x41d104
call sym._memmove
nop
lea esi, [esi]
lea ebp, [ebx - 0xd]
lea esi, [ebx - 0x1a]
mov dword [esp], ebx
mov dword [esp + 8], 0xd
mov dword [esp + 4], ebp
call sym._memmove
mov dword [esp + 4], esi
mov dword [esp], ebp
lea ebp, [ebx - 0x27]
mov dword [esp + 8], 0xd
call sym._memmove
mov dword [esp], esi
lea esi, [ebx - 0x34]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0xd
call sym._memmove
mov dword [esp + 4], esi
mov dword [esp], ebp
lea ebp, [ebx - 0x41]
mov dword [esp + 8], 0xd
call sym._memmove
mov dword [esp], esi
lea esi, [ebx - 0x4e]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0xd
call sym._memmove
mov dword [esp + 4], esi
mov dword [esp], ebp
lea ebp, [ebx - 0x5b]
mov dword [esp + 8], 0xd
call sym._memmove
mov dword [esp], esi
lea esi, [ebx - 0x68]
mov dword [esp + 8], 0xd
mov dword [esp + 4], ebp
call sym._memmove
mov dword [esp + 8], 0xd
mov dword [esp + 4], esi
mov dword [esp], ebp
call sym._memmove
lea eax, [ebx - 0x75]
mov dword [esp + 8], 0xd
mov dword [esp], esi
sub ebx, 0x75
mov dword [esp + 4], eax
call sym._memmove
mov edx, 0x41e0c0
cmp edx, ebx
jne 0x405fc0
movzx eax, byte [esp + 0x3f]
mov ebp, dword [0x43ade0]
mov dword [0x41d100], edi
mov ecx, dword [esp + 0x37]
mov edi, dword [esp + 0x33]
mov ebx, dword [esp + 0x3b]
cmp ebp, 0x3e7
mov dword [0x41e0c4], ecx
mov byte [0x41e0cc], al
mov dword [0x41e0c0], edi
mov dword [0x41e0c8], ebx
jg 0x40554e
add ebp, 1
mov dword [0x43ade0], ebp
jmp 0x40554e
xor edx, edx
cmp esi, dword [edx*4 + 0x41d100]
jne 0x40612a
lea edi, [edx + edx*2]
mov ebx, dword [esp + 0x33]
mov eax, dword [esp + 0x37]
mov ebp, dword [esp + 0x3b]
lea ecx, [edx + edi*4]
mov dword [ecx + 0x41e0c0], ebx
movzx ebx, byte [esp + 0x3f]
mov dword [ecx + 0x41e0c4], eax
mov dword [ecx + 0x41e0c8], ebp
mov byte [ecx + 0x41e0cc], bl
add edx, 1
cmp esi, dword [edx*4 + 0x41d100]
jne 0x406165
lea edi, [edx + edx*2]
mov eax, dword [esp + 0x33]
mov ebp, dword [esp + 0x37]
mov ebx, dword [esp + 0x3b]
lea ecx, [edx + edi*4]
mov dword [ecx + 0x41e0c0], eax
movzx eax, byte [esp + 0x3f]
mov dword [ecx + 0x41e0c4], ebp
mov dword [ecx + 0x41e0c8], ebx
mov byte [ecx + 0x41e0cc], al
lea edi, [edx + 1]
cmp esi, dword [edi*4 + 0x41d100]
jne 0x4061a0
lea ecx, [edi + edi*2]
mov ebx, dword [esp + 0x33]
mov eax, dword [esp + 0x37]
lea ebp, [edi + ecx*4]
movzx ecx, byte [esp + 0x3f]
mov edi, dword [esp + 0x3b]
mov dword [ebp + 0x41e0c0], ebx
mov dword [ebp + 0x41e0c4], eax
mov dword [ebp + 0x41e0c8], edi
mov byte [ebp + 0x41e0cc], cl
lea ebp, [edx + 2]
cmp esi, dword [ebp*4 + 0x41d100]
jne 0x4061dd
lea ebx, [ebp + ebp*2]
mov edi, dword [esp + 0x33]
mov ecx, dword [esp + 0x37]
lea eax, [ebp + ebx*4]
movzx ebx, byte [esp + 0x3f]
mov ebp, dword [esp + 0x3b]
mov dword [eax + 0x41e0c0], edi
mov dword [eax + 0x41e0c4], ecx
mov dword [eax + 0x41e0c8], ebp
mov byte [eax + 0x41e0cc], bl
lea eax, [edx + 3]
cmp esi, dword [eax*4 + 0x41d100]
jne 0x406218
lea edi, [eax + eax*2]
mov ebx, dword [esp + 0x37]
mov ebp, dword [esp + 0x33]
lea ecx, [eax + edi*4]
mov eax, dword [esp + 0x3b]
mov dword [ecx + 0x41e0c4], ebx
movzx ebx, byte [esp + 0x3f]
mov dword [ecx + 0x41e0c0], ebp
mov dword [ecx + 0x41e0c8], eax
mov byte [ecx + 0x41e0cc], bl
lea edi, [edx + 4]
cmp esi, dword [edi*4 + 0x41d100]
jne 0x406253
lea ecx, [edi + edi*2]
mov eax, dword [esp + 0x33]
mov ebx, dword [esp + 0x37]
lea ebp, [edi + ecx*4]
movzx ecx, byte [esp + 0x3f]
mov edi, dword [esp + 0x3b]
mov dword [ebp + 0x41e0c0], eax
mov dword [ebp + 0x41e0c4], ebx
mov dword [ebp + 0x41e0c8], edi
mov byte [ebp + 0x41e0cc], cl
lea ebp, [edx + 5]
cmp esi, dword [ebp*4 + 0x41d100]
jne 0x406290
lea eax, [ebp + ebp*2]
mov ebx, dword [esp + 0x33]
mov ecx, dword [esp + 0x37]
lea edi, [ebp + eax*4]
movzx eax, byte [esp + 0x3f]
mov ebp, dword [esp + 0x3b]
mov dword [edi + 0x41e0c0], ebx
mov dword [edi + 0x41e0c4], ecx
mov dword [edi + 0x41e0c8], ebp
mov byte [edi + 0x41e0cc], al
lea edi, [edx + 6]
cmp esi, dword [edi*4 + 0x41d100]
jne 0x4062cb
lea ebx, [edi + edi*2]
mov ebp, dword [esp + 0x33]
mov eax, dword [esp + 0x37]
lea ecx, [edi + ebx*4]
movzx ebx, byte [esp + 0x3f]
mov edi, dword [esp + 0x3b]
mov dword [ecx + 0x41e0c0], ebp
mov dword [ecx + 0x41e0c4], eax
mov dword [ecx + 0x41e0c8], edi
mov byte [ecx + 0x41e0cc], bl
add edx, 7
cmp edx, 0x3e8
jne 0x4060f2
jmp 0x40554e
lea edi, [esp + 0x34]
mov dword [esp + 8], 0xc
mov dword [esp], ebx
mov dword [esp + 4], edi
call sym._memmove
mov byte [esp + 0x3f], 0x20
jmp 0x405425
test edx, edx
je 0x405530
test dl, 2
mov byte [ebp], 0x20
je 0x405530
mov ecx, 0x2020
mov word [ebp + edx - 2], cx
jmp 0x405530
mov ebp, dword [0x41d0e8]
cmp dword [esp + 0x37], ebp
jne 0x405bf7
mov edi, dword [0x41d0ec]
cmp dword [ebx + 8], edi
jne 0x405bf7
movzx edx, byte [0x41d0f0]
cmp byte [ebx + 0xc], dl
jne 0x405bf7
jmp 0x405c23
mov esi, dword [0x41d0e8]
cmp dword [ebx + 4], esi
jne 0x4058cf
mov ecx, dword [0x41d0ec]
cmp dword [ebx + 8], ecx
jne 0x4058cf
movzx edx, byte [0x41d0f0]
cmp byte [ebx + 0xc], dl
jne 0x4058cf
jmp 0x4058fb
mov esi, dword [esp + 0x70]
mov dword [esp + 0x10], 0xd
mov dword [esp + 8], 0x4337c3
mov dword [esp + 4], 0x433640
mov dword [esp], 0x433a9c
mov dword [esp + 0xc], esi
call sym.__gfortran_runtime_error_at
mov dword [esp + 0xc], 0xd
mov dword [esp + 8], eax
mov dword [esp + 4], str.Substring_out_of_bounds:_upper_bound___ld__of_cw_exceeds_string_length___ld_
mov dword [esp], str.At_line_91_of_file_C:JTSDK64_Tools_tmpwsjtxlib77bitpackjt77.f90
call sym.__gfortran_runtime_error_at
lea esi, [esi]
lea edi, [edi]