Function at 0x410ce8
Capabilities:
Delete file
Set current directory

Disassembly:
mov eax, 0x45040f
call fcn.0041db18
sub esp, 0x38
push esi
push edi
lea eax, [ebp - 0x1c]
push eax
mov esi, ecx
call fcn.004043a2
mov ecx, dword [eax]
mov dword [esi + 0x4c], ecx
mov eax, dword [eax + 4]
lea ecx, [ebp - 0x44]
mov dword [esi + 0x50], eax
call fcn.004149dc
xor edi, edi
mov dword [ebp - 4], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], edi
call fcn.0042d3f5
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp - 0x10], eax
push edi
push edi
push edi
push dword [ebp + 0xc]
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 1
call fcn.0040fc9a
mov ecx, dword [eax]
mov edx, dword [esi + 0x4c]
mov eax, dword [eax + 4]
sub edx, ecx
mov ecx, dword [esi + 0x50]
sbb ecx, eax
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
call fcn.0042d3f5
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp + 0xc], eax
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 4], 2
call fcn.0041e3ea
cmp eax, edi
pop ecx
je 0x410d82
mov esi, dword [eax + 0xc]
jmp 0x410d84
xor esi, esi
lea eax, [ebp - 0x2c]
push eax
call fcn.0041e3ea
cmp eax, edi
pop ecx
je 0x410d98
mov eax, dword [eax + 0x10]
inc eax
jmp 0x410d9a
xor eax, eax
push esi
push eax
lea ecx, [ebp - 0x2c]
call fcn.0040fcf8
push eax
lea eax, [ebp + 0xc]
push str._04d_02d_02d
push eax
call fcn.00401c5e
mov eax, dword [ebp + 8]
add esp, 0x14
push dword [eax]
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
push edi
push edi
lea ecx, [ebp - 0x44]
call fcn.00414a6f
test eax, eax
je 0x410fe5
push ebx
lea ecx, [ebp - 0x44]
call fcn.004147bd
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov esi, str..TXT
jmp 0x410eea
call fcn.0042d3f5
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp + 8], eax
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 3
call fcn.00414c97
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 4
call fcn.00401c11
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
mov byte [ebp - 4], 3
call fcn.004011ce
push 4
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x10]
call fcn.0040ff89
push eax
lea ecx, [ebp + 8]
mov byte [ebp - 4], 5
call fcn.00401c11
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
mov byte [ebp - 4], 3
call fcn.004011ce
mov edi, dword [ebp + 8]
push esi
push edi
call fcn.0041f2d4
test eax, eax
pop ecx
pop ecx
je 0x410e75
push str..txt
push edi
call fcn.0041f2d4
test eax, eax
pop ecx
pop ecx
jne 0x410ed6
push 8
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x10]
call fcn.0040ffd2
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 6
call fcn.00401c11
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 3
call fcn.004011ce
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.0040fe0a
test al, al
pop ecx
pop ecx
je 0x410ed6
push esi
lea ecx, [ebp - 0x10]
call fcn.0040150b
mov eax, dword [ebp - 0x10]
push dword [eax - 0xc]
lea ecx, [ebp - 0x10]
call fcn.00401370
push eax
call ebx
push 0xffffffffffffffff
lea ecx, [ebp - 0x10]
call fcn.0040fdcd
lea ecx, [edi - 0x10]
mov byte [ebp - 4], 2
call fcn.004011ce
lea ecx, [ebp - 0x44]
call fcn.004147bd
test eax, eax
jne 0x410dec
call fcn.0042d3f5
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp + 8], eax
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 7
call fcn.00414c97
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 8
call fcn.00401c11
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 7
call fcn.004011ce
push 4
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x10]
call fcn.0040ff89
push eax
lea ecx, [ebp + 8]
mov byte [ebp - 4], 9
call fcn.00401c11
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
mov byte [ebp - 4], 7
call fcn.004011ce
mov edi, dword [ebp + 8]
push esi
push edi
call fcn.0041f2d4
test eax, eax
pop ecx
pop ecx
je 0x410f7b
push str..txt
push edi
call fcn.0041f2d4
test eax, eax
pop ecx
pop ecx
jne 0x410fdc
push 8
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x10]
call fcn.0040ffd2
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xa
call fcn.00401c11
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 7
call fcn.004011ce
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.0040fe0a
test al, al
pop ecx
pop ecx
je 0x410fdc
push esi
lea ecx, [ebp - 0x10]
call fcn.0040150b
mov eax, dword [ebp - 0x10]
push dword [eax - 0xc]
lea ecx, [ebp - 0x10]
call fcn.00401370
push eax
call ebx
push 0xffffffffffffffff
lea ecx, [ebp - 0x10]
call fcn.0040fdcd
lea ecx, [edi - 0x10]
call fcn.004011ce
pop ebx
mov ecx, dword [ebp + 0xc]
add ecx, 0xfffffff0
call fcn.004011ce
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.004011ce
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x44]
call fcn.00414a00
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
leave
ret 8