Function at 0x401bde
Capabilities:
Delete file
Move file

Disassembly:
mov eax, 0x42c692
call fcn.004293bc
sub esp, 0x4a8
push ebx
push esi
push edi
mov ebx, ecx
push 0x42f208
lea eax, [ebp - 0x40]
push ebx
push eax
call fcn.0040270f
add esp, 0xc
and dword [ebp - 4], 0
cmp dword [ebp - 0x28], 0x10
mov ecx, dword [ebp - 0x3c]
jae 0x401c15
lea ecx, [ebp - 0x3c]
cmp dword [ebx + 0x18], 0x10
lea edi, [ebx + 4]
jb 0x401c22
mov eax, dword [edi]
jmp 0x401c24
mov eax, edi
push ecx
push eax
call dword [sym.imp.KERNEL32.DLL_MoveFileA]
cmp dword [ebp - 0x28], 0x10
mov eax, dword [ebp - 0x3c]
jae 0x401c38
lea eax, [ebp - 0x3c]
push eax
call fcn.004066ce
mov esi, eax
test esi, esi
pop ecx
mov dword [ebp - 0x20], esi
jne 0x401c64
push eax
push 1
lea ecx, [ebp - 0x40]
call fcn.0040209e
xor al, al
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret
cmp dword [ebx + 0x18], 0x10
jb 0x401c6c
mov edi, dword [edi]
push edi
call fcn.004072eb
test eax, eax
pop ecx
mov dword [ebp - 0x1c], eax
jne 0x401c93
mov eax, esi
call fcn.004068af
xor bl, bl
push 0
push 1
lea ecx, [ebp - 0x40]
call fcn.0040209e
mov al, bl
jmp 0x401c55
call fcn.00406b14
lea edi, [ebp - 0x4b4]
sub edi, 4
mov byte [ebp - 0x11], 0
mov dword [ebp - 0x24], edi
jmp 0x401cb0
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
push 0x400
lea eax, [ebp - 0x4b4]
push eax
lea eax, [ebp - 0xb4]
push 0
push eax
mov eax, esi
call fcn.004068df
push esi
call fcn.00406d7a
add esp, 0x14
push dword [ebp - 0x98]
call fcn.0041949c
pop ecx
mov ecx, dword [ebp - 0x98]
push eax
push esi
mov dword [ebp - 0x18], eax
call fcn.00406ea7
pop ecx
pop ecx
mov ebx, esi
call fcn.004070d4
lea eax, [ebp - 0x4b4]
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x401d03
sub eax, ecx
push 4
add edi, eax
push str..exe
push edi
call fcn.00428013
add esp, 0xc
test eax, eax
jne 0x401d3a
lea eax, [ebp - 0x98]
push eax
push dword [ebp - 0x18]
mov byte [ebp - 0x11], 1
call fcn.00401a60
pop ecx
pop ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xa4]
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x84]
push 6
pop ecx
push dword [ebp - 0xa8]
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x4b4]
push eax
lea esi, [ebp - 0x7c]
lea edi, [ebp - 0x64]
mov eax, ebx
rep movsd dword es:[edi], dword [esi]
call fcn.0040739d
mov eax, dword [ebp - 0x98]
mov edx, dword [ebp - 0x18]
add esp, 0xc
mov ecx, ebx
call fcn.004077a3
call fcn.00407880
mov esi, dword [ebp - 0x20]
call fcn.00406b4d
test eax, eax
je 0x401caa
cmp byte [ebp - 0x11], 0
jne 0x401ddb
and dword [ebp - 0x18], 0
lea eax, [ebp - 0x18]
push eax
call fcn.00401a31
pop ecx
push dword [ebp - 0xa8]
mov esi, eax
lea eax, [ebp - 0x64]
push eax
push str.crack.exe
mov eax, ebx
call fcn.0040739d
mov eax, dword [ebp - 0x18]
add esp, 0xc
mov edx, esi
mov ecx, ebx
call fcn.004077a3
mov eax, dword [ebp - 0x1c]
call fcn.00407a51
mov eax, dword [ebp - 0x20]
call fcn.004068af
cmp dword [ebp - 0x28], 0x10
mov eax, dword [ebp - 0x3c]
jae 0x401df7
lea eax, [ebp - 0x3c]
push eax
call dword [sym.imp.KERNEL32.DLL_DeleteFileA]
mov bl, 1
jmp 0x401c83