Function at 0x42a68b
Capabilities:
Delete directory
Delete file
Get common file path

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x228
mov eax, dword [0x4434f4]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
mov ebx, dword [ebp + 8]
xor eax, eax
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x220], eax
push esi
mov esi, eax
push edi
mov edi, eax
test ebx, ebx
je 0x42a79e
mov ecx, ebx
call fcn.0041f3f3
mov ecx, ebx
test eax, eax
je 0x42a749
push 2
lea edx, [ecx + 2]
pop edi
mov ax, word [ecx]
add ecx, edi
cmp ax, si
jne 0x42a6d3
sub ecx, edx
sar ecx, 1
push 2
pop edx
lea edi, [ecx + 0xd]
xor ecx, ecx
mov eax, edi
mov dword [ebp - 0x218], edi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0044183a
mov esi, eax
pop ecx
test esi, esi
jne 0x42a711
mov eax, 0x8007000e
jmp 0x42a941
push ebx
mov edx, edi
mov ecx, esi
call fcn.0040c010
mov edi, eax
push esi
test edi, edi
js 0x42a939
call dword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
mov edx, dword [ebp - 0x218]
mov ecx, esi
push 0x407198
call fcn.0040c045
mov edi, eax
test edi, edi
jns 0x42a79e
jmp 0x42a938
call fcn.0041f47f
test eax, eax
je 0x42a79e
mov ecx, ebx
xor esi, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x42a759
sub ecx, edx
sar ecx, 1
push 2
pop edx
lea eax, [ecx + 1]
xor ecx, ecx
mov dword [ebp - 0x218], eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0044183a
mov esi, eax
pop ecx
test esi, esi
je 0x42a707
mov edx, dword [ebp - 0x218]
mov ecx, esi
push ebx
call fcn.0040c010
xor ebx, ebx
mov dword [ebp - 0x218], ebx
test esi, esi
je 0x42a7c2
mov ecx, esi
call fcn.0041f47f
test eax, eax
jne 0x42a7be
push esi
call fcn.00441807
pop ecx
mov esi, ebx
test esi, esi
jne 0x42a839
push 0x208
call fcn.0044183a
mov esi, eax
pop ecx
test esi, esi
jne 0x42a7dd
mov edi, 0x8007000e
jmp 0x42a868
mov ebx, dword [ebp - 0x21c]
mov ecx, ebx
call fcn.004282a2
test eax, eax
js 0x42a832
push dword [ebx + 0x23c]
mov edi, 0x104
mov ecx, esi
mov edx, edi
call fcn.0040c010
test eax, eax
js 0x42a832
push esi
call dword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
push 0x407198
mov edx, edi
mov ecx, esi
call fcn.0040c045
push ecx
push esi
mov ecx, ebx
call fcn.0042a5ca
mov edi, eax
mov dword [ebp - 0x220], 1
jmp 0x42a83f
mov edi, 0x80004005
jmp 0x42a83f
mov ebx, dword [ebp - 0x21c]
test edi, edi
js 0x42a84d
push ebx
mov ecx, esi
call fcn.0043e29a
mov edi, eax
cmp edi, 0xc00d1388
jne 0x42a866
test esi, esi
je 0x42a860
push esi
call fcn.00441807
pop ecx
xor ebx, ebx
mov esi, ebx
jmp 0x42a8db
xor ebx, ebx
cmp edi, 0x80040154
jne 0x42a905
push 0x103
lea eax, [ebp - 0x214]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
test eax, eax
je 0x42a8db
push ecx
lea eax, [ebp - 0x224]
mov edx, 0x104
push eax
lea ecx, [ebp - 0x214]
call fcn.0040c131
test eax, eax
js 0x42a8c8
mov eax, dword [ebp - 0x224]
mov edx, 0x104
push ecx
push 0x406b70
push ecx
lea ecx, [ebp - 0x214]
sub edx, eax
lea ecx, [ecx + eax*2]
call fcn.0040c197
xor edx, edx
lea ecx, [ebp - 0x214]
push ebx
inc edx
call fcn.00421c95
test eax, eax
jns 0x42a8f5
mov eax, dword [ebp - 0x218]
push 2
inc eax
pop ecx
mov dword [ebp - 0x218], eax
cmp eax, ecx
jl 0x42a7a6
jmp 0x42a905
mov ecx, dword [ebp - 0x21c]
push ecx
mov ecx, esi
call fcn.0043e29a
mov edi, eax
cmp dword [ebp - 0x220], 0
je 0x42a934
test esi, esi
je 0x42a93f
push esi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0x5c
push esi
call dword [sym.imp.msvcrt.dll_wcsrchr]
pop ecx
pop ecx
test eax, eax
je 0x42a92d
xor ecx, ecx
mov word [eax], cx
push esi
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test esi, esi
je 0x42a93f
push esi
call fcn.00441807
pop ecx
mov eax, edi
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00441b90
mov esp, ebp
pop ebp
ret 4