Function at 0x401000
Capabilities:
Delete file
Terminate process

Disassembly:
sub esp, 0x1a8
lea eax, [esp]
push ebx
push esi
push edi
push 1
push str._02d
push eax
call fcn.004157b1
mov ecx, 0x41
xor eax, eax
lea edi, [esp + 0xbc]
add esp, 0xc
rep stosd dword es:[edi], eax
mov ecx, dword [0x4ae788]
lea edx, [esp + 0xb0]
add ecx, 0x1cb
push ecx
push str._s_tuc_file_at04420.LOG
push edx
call fcn.004157b1
add esp, 0xc
lea eax, [esp + 0xb0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp dword [esp + 0x1b8], 4
je 0x40115a
mov ecx, 0xfa
xor eax, eax
mov edi, 0x4ae7a0
rep stosd dword es:[edi], eax
or ecx, 0xffffffff
mov edi, str.ERROR_:
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
or ecx, 0xffffffff
mov edi, 0x4ae7a0
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
or ecx, 0xffffffff
mov edi, 0x4202b8
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
or ecx, 0xffffffff
mov edi, 0x4ae7a0
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x420298
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x4ae7a0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x4202b8
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x4ae7a0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x42026c
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x4ae7a0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x420230
jmp 0x401485
mov ebx, dword [esp + 0x1bc]
mov eax, dword [ebx + 4]
movsx ecx, byte [eax]
push ecx
call fcn.00415789
add esp, 4
test eax, eax
je 0x401447
mov edx, dword [ebx + 8]
movsx eax, byte [edx]
push eax
call fcn.00415789
add esp, 4
test eax, eax
je 0x401407
mov ecx, dword [ebx + 0xc]
movsx edx, byte [ecx]
push edx
call fcn.00415789
add esp, 4
test eax, eax
je 0x4013c7
mov ecx, 0x62
xor eax, eax
mov edi, 0x49fb58
rep stosd dword es:[edi], eax
mov esi, dword [ebx + 4]
or ecx, 0xffffffff
mov edi, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x49fc2c
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [ebx + 8]
or ecx, 0xffffffff
mov edi, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x49fc40
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [ebx + 0xc]
or ecx, 0xffffffff
mov edi, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x49fc54
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004087a0
push str._n
call fcn.0041572a
add esp, 4
push str._________________________________________________n
call fcn.0041572a
add esp, 4
push 0x420188
call fcn.0041572a
add esp, 4
push str._________________________________F300____________n
call fcn.0041572a
add esp, 4
push str._________________________________________________n
call fcn.0041572a
add esp, 4
push str._n
call fcn.0041572a
add esp, 4
push 0x4202b8
call fcn.0041572a
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], 1
push ecx
mov dword [esp + 0x24], 0x4d
call fcn.00406ba0
mov eax, dword [esp + 0xb4]
add esp, 8
test eax, eax
jge 0x4012ac
push 0
push str.at04410
push 0x420124
jmp 0x4014e3
lea edx, [esp + 0x18]
mov dword [esp + 0x18], 0xb
push edx
mov dword [esp + 0x20], 0x12c
call fcn.00406ba0
call 0x401500
xor ecx, ecx
test eax, eax
setg cl
mov word [0x4b0fc8], cx
mov edx, dword [ebx + 0xc]
push edx
call fcn.0041571f
add esp, 8
push eax
mov eax, dword [ebx + 8]
push eax
call fcn.0041571f
mov ecx, dword [ebx + 4]
add esp, 4
push eax
push ecx
call fcn.0041571f
add esp, 4
push eax
call fcn.00401640
lea edx, [esp + 0x24]
mov dword [esp + 0x24], 0x63
push edx
movsx esi, ax
call fcn.00406ba0
mov ecx, 0x26
xor eax, eax
lea edi, [esp + 0x28]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 9
push eax
mov dword [esp + 0x30], 0x4d
call fcn.00406ba0
add esp, 0x14
test esi, esi
jge 0x401380
mov ecx, dword [0x4ae788]
mov word [ecx + 0x3a6], 0
mov edx, dword [0x4ae788]
mov al, byte [0x420120]
add ecx, 0x3a6
push str._____
mov byte [edx + 0x3a6], al
call fcn.0041572a
add esp, 4
jmp 0x4014eb
push 1
push 0x14
push str.e__d__dH
call fcn.0041572a
add esp, 0xc
push 0x4200e0
call fcn.0041572a
mov ecx, dword [0x4ae788]
add esp, 4
add ecx, 0x3a6
push 0
mov word [ecx], 0
mov edx, dword [0x4ae788]
mov al, byte [0x4200dc]
mov byte [edx + 0x3a6], al
call fcn.004155bf
mov ecx, 0xfa
xor eax, eax
mov edi, 0x4ae7a0
rep stosd dword es:[edi], eax
mov edi, 0x4200b8
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x4ae7a0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x4200a8
jmp 0x401485
mov ecx, 0xfa
xor eax, eax
mov edi, 0x4ae7a0
rep stosd dword es:[edi], eax
mov edi, 0x420080
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x4ae7a0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x420070
jmp 0x401485
mov ecx, 0xfa
xor eax, eax
mov edi, 0x4ae7a0
rep stosd dword es:[edi], eax
mov edi, 0x420048
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x4ae7a0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x420038
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push eax
mov esi, edi
mov edx, ecx
mov edi, 0x4ae7a0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push str.at04420
and ecx, 3
push 0x4ae7a0
rep movsb byte es:[edi], byte [esi]
mov edi, 0x4202b8
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x4ae7a0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call fcn.004155bf
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
sub esp, 0x80
push ebx
push ebp
xor ebx, ebx
call fcn.00406910
mov ebp, eax
cmp ebp, 1
jge 0x401522
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x80
ret
push esi
push edi
mov ecx, 0x20
xor eax, eax
lea edi, [esp + 0x10]
push 3
rep stosd dword es:[edi], eax
mov al, byte [0x420304]
lea ecx, [esp + 0x14]
push ecx
push 1
push ebp
mov byte [esp + 0x20], al
call fcn.00408940
add esp, 0x10
test ax, ax
jl 0x401621
lea edx, [esp + 0x10]
push ebx
push edx
push ebp
call fcn.00408960
add esp, 0xc
cmp eax, 1
jl 0x401621
lea ecx, [esp + 0x10]
mov eax, 0x420304
mov dl, byte [ecx]
mov cl, byte [eax]
cmp dl, cl
jne 0x401621
mov ecx, 3
mov edi, 0x420300
lea esi, [esp + 0x22]
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
mov ecx, 3
je 0x40160f
mov edi, 0x420300
lea esi, [esp + 0x22]
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4015af
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jge 0x4015e9
mov cx, word [0x420300]
mov dl, byte [0x420302]
lea eax, [esp + 0x10]
push 3
push eax
push 1
push ebp
mov word [esp + 0x32], cx
mov byte [esp + 0x34], dl
mov byte [esp + 0x35], bl
call fcn.00408940
add esp, 0x10
test ax, ax
jl 0x401621
jmp 0x401555
mov cl, byte [0x420120]
lea edx, [esp + 0x10]
push 3
push edx
push 1
push ebp
mov byte [esp + 0x31], cl
call fcn.00408940
add esp, 0x10
test ax, ax
jl 0x401621
jmp 0x401555
mov edi, 0x4202fc
lea esi, [esp + 0x2e]
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
mov ebx, eax
sete bl
push ebp
call fcn.00408850
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret