Function at 0x10c9293
Capabilities:
Delete directory

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
mov eax, dword [0x111124c]
mov ebx, 0x100f634
cmp eax, 0x111124c
je 0x10c92c7
test byte [eax + 0x1c], 1
je 0x10c92c7
cmp byte [eax + 0x19], 5
jb 0x10c92c7
push ebx
push 0xf
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010189d0
push esi
xor esi, esi
push edi
cmp dword [ebp + 8], esi
jne 0x10c92e4
push 0x10075c0
push 0x183
push 0x100f644
call fcn.0107b4be
mov edi, dword [ebp + 0xc]
mov dword [ebp - 8], esi
mov dword [ebp - 0xc], esi
mov byte [ebp - 1], 0
cmp edi, esi
je 0x10c92fa
mov eax, dword [edi]
mov dword [ebp - 0xc], eax
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x10c9304
mov byte [esi], 0
lea eax, [ebp - 8]
push eax
push dword [ebp + 8]
call fcn.010caa56
mov dword [ebp + 8], eax
test eax, eax
jl 0x10c94cf
test edi, edi
je 0x10c9324
test byte [edi], 7
je 0x10c937c
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
call fcn.010c911e
mov dword [ebp + 8], eax
test eax, eax
jge 0x10c9378
test esi, esi
je 0x10c933e
mov byte [esi], 1
mov eax, dword [0x111124c]
cmp eax, 0x111124c
je 0x10c9461
test byte [eax + 0x1c], 1
je 0x10c9461
cmp byte [eax + 0x19], 2
jb 0x10c9461
push dword [ebp + 8]
push ebx
push 0x10
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010189f6
jmp 0x10c945c
mov byte [ebp - 1], 1
test byte [ebp - 0xc], 0x10
je 0x10c93f4
test dword [ebp - 0xc], 0x400
jne 0x10c93f4
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x10c945c
test esi, esi
je 0x10c93a3
mov byte [esi], 1
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x10c93b7
and eax, 0xffff
or eax, 0x80070000
mov dword [ebp + 8], eax
mov eax, dword [0x111124c]
cmp eax, 0x111124c
je 0x10c9461
test byte [eax + 0x1c], 1
je 0x10c9461
cmp byte [eax + 0x19], 2
jb 0x10c9461
push dword [ebp + 8]
push dword [ebp - 8]
push ebx
push 0x11
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010196ed
jmp 0x10c945c
push 0
push 0x6200000
push 3
push 0
push 7
push 0x10000
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
cmp eax, 0xffffffff
jne 0x10c9455
test esi, esi
je 0x10c941b
mov byte [esi], 1
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x10c942f
and eax, 0xffff
or eax, 0x80070000
mov dword [ebp + 8], eax
mov eax, dword [0x111124c]
cmp eax, 0x111124c
je 0x10c9461
test byte [eax + 0x1c], 1
je 0x10c9461
cmp byte [eax + 0x19], 2
jb 0x10c9461
push dword [ebp + 8]
push ebx
push 0x12
jmp 0x10c9368
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x111124c]
cmp dword [ebp + 8], 0
jge 0x10c94cf
cmp byte [ebp - 1], 0
je 0x10c94cf
mov esi, 0x111124c
cmp eax, esi
je 0x10c9496
test byte [eax + 0x1c], 1
je 0x10c9496
cmp byte [eax + 0x19], 4
jb 0x10c9496
push dword [ebp - 0xc]
push dword [ebp - 8]
push ebx
push 0x13
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010196ed
push 0
push dword [ebp - 0xc]
push dword [ebp - 8]
call fcn.010c6244
test eax, eax
jge 0x10c94cf
mov ecx, dword [0x111124c]
cmp ecx, esi
je 0x10c94cf
test byte [ecx + 0x1c], 1
je 0x10c94cf
cmp byte [ecx + 0x19], 2
jb 0x10c94cf
push eax
push dword [ebp - 8]
push ebx
push 0x14
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.010196ed
push dword [ebp - 8]
call dword [sym.imp.msvcrt.dll_free]
pop ecx
mov eax, dword [0x111124c]
pop edi
pop esi
cmp eax, 0x111124c
je 0x10c9501
test byte [eax + 0x1c], 1
je 0x10c9501
cmp byte [eax + 0x19], 5
jb 0x10c9501
push ebx
push 0x15
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010189d0
mov eax, dword [ebp + 8]
pop ebx
leave
ret 0xc