Function at 0x42d2c0
Capabilities:
Delete file
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [sym.imp.MSVCR100.dll_fgets]
mov ebx, edx
mov dword [ebp - 0x50], eax
mov eax, dword [0x44390c]
push edi
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x4c], 0
push ebx
push 0x4000
push eax
call esi
add esp, 0xc
test eax, eax
je 0x42d378
mov eax, dword [0x44390c]
inc dword [0x443900]
cmp byte [eax], 0x23
je 0x42d2f3
mov esi, dword [sym.imp.MSVCR100.dll_strchr]
push 0xa
push eax
call esi
add esp, 8
test eax, eax
je 0x42d33e
mov byte [eax], 0
dec eax
cmp byte [eax], 0
je 0x42d33e
mov edi, edi
cmp byte [eax], 0x20
jne 0x42d33e
mov byte [eax], 0
dec eax
cmp byte [eax], 0
jne 0x42d330
mov edi, dword [0x44390c]
push 7
push str.level2:
push edi
call dword [sym.imp.MSVCR100.dll__strnicmp]
add esp, 0xc
test eax, eax
je 0x42d38b
mov edx, dword [0x4438f4]
mov eax, dword [0x4438f0]
push 0
push edx
push eax
push ebx
call dword [sym.imp.MSVCR100.dll__fseeki64]
add esp, 0x10
dec dword [0x443900]
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004391bc
mov esp, ebp
pop ebp
ret
add edi, 7
push 0x3d
push edi
call esi
mov ebx, eax
add esp, 8
mov dword [ebp - 0x40], ebx
test ebx, ebx
jne 0x42d402
mov ecx, dword [0x443900]
push ecx
push 0x440dc8
push edi
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0xc
push edi
push str._Error_in_batch_file_at_line__s_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov edx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push edx
mov dword [0x443e58], 1
call esi
mov eax, dword [0x448bc8]
add esp, 0xc
push eax
call esi
add esp, 4
cmp dword [0x443e58], ebx
je 0x42d3fa
call fcn.00406b90
push 8
call dword [sym.imp.MSVCR100.dll_exit]
push 0x2b
push edi
call esi
push 0
push edi
call esi
add esp, 0x10
mov dword [ebp - 0x38], eax
xor eax, eax
mov cl, byte [eax + 0x4532f0]
mov byte [ebp + eax - 0x20], cl
inc eax
test cl, cl
jne 0x42d414
sub ebx, edi
push ebx
lea ecx, [ebp - 0x20]
push edi
push ecx
call dword [sym.imp.MSVCR100.dll_strncpy]
add esp, 0xc
mov eax, 8
lea esi, [ebp - 0x20]
call fcn.00406820
mov edx, dword [0x453180]
mov eax, dword [0x45315c]
push edx
push eax
mov eax, esi
call fcn.00406f50
mov ebx, dword [ebp + 0xc]
add esp, 8
cmp eax, ebx
je 0x42d4c3
mov ecx, dword [0x443900]
push ecx
push 0x440dc8
push edi
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0xc
push edi
push str._Error_in_batch_file_at_line__s_n
call dword [sym.imp.MSVCR100.dll_printf]
call fcn.00406fe0
mov edx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push edx
mov dword [0x443e58], 1
call esi
mov eax, dword [0x448bc8]
add esp, 0xc
push eax
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x42d4bb
call fcn.00406b90
push 8
call dword [sym.imp.MSVCR100.dll_exit]
mov ecx, dword [ebp - 0x3c]
mov edi, 1
add dword [0x448c44], edi
push ecx
call dword [sym.imp.MSVCR100.dll__ftelli64]
mov esi, dword [ebp - 0x38]
add esp, 4
mov dword [0x4438f0], eax
add esi, 0xfffffffa
mov dword [0x4438f4], edx
xor eax, eax
mov edi, edi
mov cl, byte [eax + 0x4532f0]
mov byte [ebp + eax - 0x20], cl
add eax, edi
test cl, cl
jne 0x42d4f0
push 6
lea edx, [ebp - 0x20]
push esi
push edx
call dword [sym.imp.MSVCR100.dll_strncpy]
add esp, 0xc
push 6
lea eax, [ebp - 0x20]
push str.RANDOM
push eax
call dword [sym.imp.MSVCR100.dll__strnicmp]
add esp, 0xc
test eax, eax
jne 0x42d541
cmp byte [esi - 1], 0x2b
lea eax, [esi - 1]
mov dword [ebp - 0x38], eax
je 0x42d537
mov dword [ebp - 0x38], esi
mov ecx, dword [ebp - 0x38]
mov byte [ecx], 0
mov esi, edi
jmp 0x42d543
xor esi, esi
xor edx, edx
xor ecx, ecx
mov eax, 0x448cf0
lea esp, [esp]
cmp byte [eax], dl
je 0x42d5e4
add eax, 0x54
add ecx, edi
cmp eax, 0x453100
jl 0x42d550
push str.Model_is_too_big_for_the_program__n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
call fcn.00406fe0
mov eax, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push eax
mov dword [0x443e58], edi
call esi
mov ecx, dword [0x448bc8]
add esp, 4
push ecx
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x42d5dc
mov edi, dword [sym.imp.MSVCR100.dll_clock]
call edi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov esi, edx
shr esi, 0x1f
add esi, edx
mov edi, edi
call edi
mov ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, esi
cmp eax, 3
jbe 0x42d5c0
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
mov eax, ecx
imul eax, eax, 0x54
mov byte [eax + 0x448cf0], 1
mov dword [eax + 0x448cac], edx
mov dword [eax + 0x448cc0], edx
xor edx, edx
test esi, esi
sete dl
mov dword [eax + 0x448ca4], 2
mov dword [eax + 0x448cbc], ebx
mov dword [eax + 0x448cb0], edi
mov dword [eax + 0x448ccc], ebx
mov dword [ebp - 0x44], ecx
mov dword [eax + 0x448ca0], edx
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x448ce8], edx
mov eax, dword [ebp - 0x40]
cmp byte [eax + 1], 0
jne 0x42d682
mov eax, edx
imul eax, eax, 0x54
push ecx
push edx
mov dword [eax + 0x453364], ecx
mov ecx, dword [ebp - 0x3c]
push 0
push ebx
mov dword [eax + 0x453324], 0
mov byte [eax + 0x453370], 1
call fcn.0042d8b0
add esp, 0x10
add dword [0x448c2c], eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
mov eax, 1
pop ebx
call fcn.004391bc
mov esp, ebp
pop ebp
ret
mov ebx, eax
cmp eax, dword [ebp - 0x38]
je 0x42d66c
lea edi, [ebx + 1]
push 0x2b
push edi
call dword [sym.imp.MSVCR100.dll_strchr]
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x42d6a1
mov ebx, dword [ebp - 0x38]
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
cmp byte [ebx - 2], 0x2c
jne 0x42d6d3
mov al, byte [ebx - 1]
mov ecx, ebx
sub ecx, edi
sub ecx, 2
push ecx
push edi
lea edx, [ebp - 0x20]
mov byte [ebp - 0x31], al
push edx
jmp 0x42d6e1
mov eax, ebx
sub eax, edi
push eax
push edi
lea ecx, [ebp - 0x20]
mov byte [ebp - 0x31], 0x20
push ecx
call dword [sym.imp.MSVCR100.dll_strncpy]
add esp, 0xc
xor eax, eax
lea esp, [esp]
mov cl, byte [eax + 0x4532f0]
mov byte [ebp + eax - 0x30], cl
inc eax
test cl, cl
jne 0x42d6f0
xor eax, eax
mov cl, byte [ebp + eax - 0x20]
mov byte [ebp + eax - 0x30], cl
inc eax
test cl, cl
jne 0x42d701
mov eax, 8
lea esi, [ebp - 0x30]
call fcn.00406820
mov edx, dword [0x448664]
mov eax, dword [0x448bc0]
push edx
push eax
mov eax, esi
call fcn.00406f50
mov esi, eax
add esp, 8
test esi, esi
js 0x42d83b
cmp esi, dword [0x448664]
jg 0x42d83b
movsx eax, byte [ebp - 0x31]
mov dword [ebp - 0x40], eax
sub eax, 0x20
je 0x42d78b
sub eax, 0x11
je 0x42d7eb
dec eax
je 0x42d77e
push edi
mov edi, dword [sym.imp.MSVCR100.dll_printf]
push str.Problem_at_this_point:__s_n
call edi
mov ecx, dword [ebp - 0x40]
push ecx
push str.invalid_option_on_level_2_variable___c_n
call edi
add esp, 0x10
jmp 0x42d78b
mov edx, dword [0x4596d8]
mov dword [edx + esi*4], 2
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp + 0xc]
push eax
push ecx
mov ecx, dword [ebp - 0x3c]
push esi
push edx
call fcn.0042d8b0
mov ecx, dword [0x448664]
add dword [0x448c2c], eax
mov eax, dword [ebp - 0x4c]
mov edx, dword [0x453190]
inc ecx
imul ecx, dword [ebp - 0x50]
add ecx, eax
inc eax
add esp, 0x10
mov dword [edx + ecx*4], esi
mov dword [ebp - 0x4c], eax
test esi, esi
je 0x42d7dd
mov eax, dword [0x453170]
mov dword [eax + esi*4 - 4], esi
mov ecx, dword [0x4530c4]
mov dword [ecx + esi*4 - 4], esi
cmp ebx, dword [ebp - 0x38]
jne 0x42d689
jmp 0x42d66c
push str.Variables_cannot_be_group_centered_yet._n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
call fcn.00406fe0
mov edx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push edx
mov dword [0x443e58], 1
call esi
mov eax, dword [0x448bc8]
add esp, 4
push eax
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x42d833
call fcn.00406b90
push 0x64
call dword [sym.imp.MSVCR100.dll_exit]
mov esi, dword [sym.imp.MSVCR100.dll_printf]
push str.level2
push str.Batch_file__s_specification_invalid_n
call esi
add esp, 8
cmp byte [edi], 0
jne 0x42d85b
mov edi, dword [0x44390c]
push edi
push str._s_does_not_exist_n
call esi
call fcn.00406fe0
mov ecx, dword [0x4596c4]
mov esi, dword [sym.imp.MSVCR100.dll_remove]
push ecx
mov dword [0x443e58], 1
call esi
mov edx, dword [0x448bc8]
add esp, 0xc
push edx
call esi
add esp, 4
cmp dword [0x443e58], 0
je 0x42d89e
call fcn.00406b90
push 9
call dword [sym.imp.MSVCR100.dll_exit]
int3