Function at 0x1007dd30
Capabilities:
Check if file exists
Delete directory
Delete file
Get file attributes
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xa0
mov dword [esp + 0x24], edx
mov esi, ecx
mov eax, dword [0x101b9014]
xor eax, ebp
mov dword [esp + 0x98], eax
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x80], xmm0
movdqa xmmword [esp + 0x70], xmm0
movdqa xmmword [esp + 0x60], xmm0
movdqa xmmword [esp + 0x50], xmm0
lea ebx, [esp + 0x38]
mov dword [esp], ebx
mov dword [esp + 0xc], 0xfc
mov dword [esp + 8], str....._base_files_file_util_win.cc
mov dword [esp + 4], str.DoDeleteFile
call fcn.10065960
mov dword [esp], ebx
mov dword [esp + 8], 0
mov dword [esp + 4], 0
lea ecx, [esp + 0x50]
call fcn.100bcee0
sub esp, 0xc
test byte [0x101bacd0], 0x19
jne 0x1007ddcb
cmp byte [esi + 0xb], 0
js 0x1007ddfe
jne 0x1007de19
jmp 0x1007df96
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 0
movq xmm0, qword [esp + 0x28]
movq qword [esp], xmm0
lea edx, [esp + 0x4c]
mov ecx, str.ScopedBlockingCall
call fcn.10079ed0
cmp byte [esi + 0xb], 0
jns 0x1007ddc4
mov eax, dword [esi + 4]
test eax, eax
je 0x1007df96
mov edi, 0xa1
cmp eax, 0x103
ja 0x1007df4f
mov dword [esp], ebx
mov ecx, esi
call fcn.10061370
sub esp, 4
movzx ecx, byte [esp + 0x43]
mov eax, dword [esp + 0x38]
mov edx, ecx
test cl, cl
jns 0x1007de3b
mov edx, dword [esp + 0x3c]
mov ebx, eax
mov dword [esp + 0x20], eax
test edx, edx
je 0x1007de7e
add edx, edx
xor edi, edi
nop word [eax + eax]
movzx eax, word [ebx + edi]
cmp eax, 0x2a
je 0x1007de67
cmp eax, 0x3f
je 0x1007de67
add edi, 2
cmp edx, edi
jne 0x1007de50
jmp 0x1007de7e
cmp edx, edi
je 0x1007de7e
test cl, cl
js 0x1007dfb3
cmp edi, 0xfffffffe
jne 0x1007dfc8
jmp 0x1007de8e
test cl, cl
jns 0x1007de8e
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.10145bd4
cmp byte [esi + 0xb], 0
mov eax, esi
jns 0x1007de98
mov eax, dword [esi]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub esp, 4
cmp eax, 0xffffffff
je 0x1007df82
mov ebx, eax
test bl, 1
je 0x1007dedb
mov eax, ebx
and eax, 0xfffffffe
cmp byte [esi + 0xb], 0
mov ecx, esi
jns 0x1007dec3
mov ecx, dword [esi]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
sub esp, 8
test eax, eax
je 0x1007df82
test bl, 0x10
jne 0x1007def6
cmp byte [esi + 0xb], 0
jns 0x1007dee8
mov esi, dword [esi]
mov dword [esp], esi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x1007df7b
cmp byte [esp + 0x24], 0
je 0x1007df6a
mov byte [esp + 0x43], 1
lea eax, [esp + 0x38]
cmp eax, 0x101a0f4c
ja 0x1007df1c
lea eax, [esp + 0x3a]
cmp eax, 0x101a0f4c
ja 0x1007e132
mov dword [esp + 0x38], 0x2a
mov dword [esp], 1
lea edx, [esp + 0x38]
mov ecx, esi
call fcn.1007f880
mov edi, eax
cmp byte [esp + 0x43], 0
jns 0x1007df4b
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.10145bd4
test edi, edi
je 0x1007df6a
test byte [0x101bacd0], 0x19
jne 0x1007e0ed
lea ecx, [esp + 0x50]
call fcn.100bd410
jmp 0x1007e03d
cmp byte [esi + 0xb], 0
jns 0x1007df72
mov esi, dword [esi]
mov dword [esp], esi
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
sub esp, 4
test eax, eax
jne 0x1007df96
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x1007e023
test byte [0x101bacd0], 0x19
jne 0x1007e063
lea ecx, [esp + 0x50]
call fcn.100bd410
mov bl, 1
jmp 0x1007e04b
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.10145bd4
cmp edi, 0xfffffffe
je 0x1007de8e
lea edi, [esp + 0x38]
mov dword [esp], edi
mov ecx, esi
call fcn.10061370
sub esp, 4
lea ebx, [esp + 0x28]
mov dword [esp], ebx
mov ecx, esi
call fcn.10060ec0
sub esp, 4
movzx eax, byte [esp + 0x24]
mov dword [esp], eax
mov ecx, ebx
mov edx, edi
call fcn.1007f880
mov edi, eax
cmp byte [esp + 0x33], 0
jns 0x1007e010
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.10145bd4
cmp byte [esp + 0x43], 0
jns 0x1007e023
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.10145bd4
test byte [0x101bacd0], 0x19
jne 0x1007e0a8
lea ecx, [esp + 0x50]
call fcn.100bd410
test edi, edi
je 0x1007dfac
mov dword [esp], edi
call dword [sym.imp.KERNEL32.dll_SetLastError]
sub esp, 4
xor ebx, ebx
mov ecx, dword [esp + 0x98]
xor ecx, ebp
call fcn.101465a3
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
movq xmm0, qword [esp + 0x38]
movq qword [esp + 0x10], xmm0
mov dword [esp + 0xc], 0x10178420
mov dword [esp + 8], 0x1019dfb6
mov dword [esp + 4], 0x101bacd0
mov dword [esp], 0x45
call fcn.1003beb0
jmp 0x1007dfa3
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
movq xmm0, qword [esp + 0x38]
movq qword [esp + 0x10], xmm0
mov dword [esp + 0xc], 0x10178420
mov dword [esp + 8], 0x1019dfb6
mov dword [esp + 4], 0x101bacd0
mov dword [esp], 0x45
call fcn.1003beb0
jmp 0x1007e02c
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
movq xmm0, qword [esp + 0x38]
movq qword [esp + 0x10], xmm0
mov dword [esp + 0xc], 0x10178420
mov dword [esp + 8], 0x1019dfb6
mov dword [esp + 4], 0x101bacd0
mov dword [esp], 0x45
call fcn.1003beb0
jmp 0x1007df5c
int3