Function at 0x10029df0
Capabilities:
Delete file
Set file attributes

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x1022482b
push eax
mov dword fs:[0], esp
sub esp, 0x81c
push ebx
push ebp
mov ebp, dword [esp + 0x834]
push esi
test ebp, ebp
push edi
je 0x10029f48
mov ebx, dword [esp + 0x844]
test ebx, ebx
je 0x10029f48
mov ecx, 0x100
xor eax, eax
lea edi, [esp + 0x42c]
lea edx, [esp + 0x42c]
rep stosd dword es:[edi], eax
mov edi, ebx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [0x107ab968]
and ecx, 3
cmp eax, 1
rep movsb byte es:[edi], byte [esi]
je 0x10029f48
lea ecx, [esp + 0x42c]
push ecx
push ebx
call sub.platform.dll_Ordinal_13
add esp, 8
test eax, eax
jne 0x10029ea8
mov edi, ebx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x42c]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x14]
call fcn.10012770
push ebp
lea ecx, [esp + 0x18]
mov dword [esp + 0x838], 0
call fcn.100127a0
mov esi, dword [esp + 0x840]
test eax, eax
je 0x10029f14
mov edx, dword [esp + 0x84c]
mov eax, dword [esp + 0x848]
push 0
lea ecx, [esp + 0x430]
push 0
push ecx
mov ecx, dword [esp + 0x85c]
push 0x13a3
push edx
push eax
push 0x93
push ecx
push 0x28
push esi
lea ecx, [esp + 0x3c]
call fcn.10012b00
lea ecx, [esp + 0x14]
call fcn.10013450
cmp dword [esp + 0x854], 1
jne 0x1002a020
mov edx, dword [esi]
push 0
push 0x8000
push ebx
mov ecx, esi
call dword [edx + 4]
mov ebp, eax
cmp ebp, 0xffffffff
jne 0x10029f63
lea ecx, [esp + 0x14]
mov dword [esp + 0x834], eax
call fcn.10012790
xor eax, eax
mov ecx, dword [esp + 0x82c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x828
ret
mov ecx, 0x100
xor eax, eax
lea edi, [esp + 0x2c]
mov dword [esp + 0x10], 0
rep stosd dword es:[edi], eax
lea eax, [esp + 0x10]
lea ecx, [esp + 0x2c]
push eax
push ecx
push ebx
push ebp
push esi
call fcn.10027f40
mov edi, dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
add esp, 0x14
cmp eax, 1
jne 0x10029fdd
push 0
lea edx, [esp + 0x30]
push 0
push edx
call fcn.10028810
add esp, 0xc
lea eax, [esp + 0x2c]
push 0x80
push eax
call edi
lea ecx, [esp + 0x2c]
push ecx
call dword [sym.imp.MSVCRT.dll_remove]
add esp, 4
cmp eax, 0xffffffff
jne 0x10029fdd
mov eax, dword [esp + 0x83c]
lea edx, [esp + 0x2c]
push edx
push eax
call fcn.10029940
add esp, 8
mov edx, dword [esi]
push ebp
mov ecx, esi
call dword [edx + 0x18]
lea eax, [esp + 0x42c]
push 0x80
push eax
call edi
mov edx, dword [esi]
lea eax, [esp + 0x42c]
push eax
mov ecx, esi
call dword [edx + 0x3c]
cmp eax, 0xffffffff
jne 0x1002a020
mov edx, dword [esp + 0x83c]
lea ecx, [esp + 0x42c]
push ecx
push edx
call fcn.10029940
add esp, 8
cmp dword [esp + 0x858], 1
jne 0x1002a075
mov ecx, 0x100
xor eax, eax
lea edi, [esp + 0x2c]
push 0x3ff
rep stosd dword es:[edi], eax
lea eax, [esp + 0x30]
push ebx
push eax
call dword [sym.imp.MSVCRT.dll_strncpy]
lea ecx, [esp + 0x38]
mov byte [esp + 0x437], 0
push ecx
call dword [sym.imp.MSVCRT.dll__strupr]
mov edx, dword [esp + 0x860]
lea eax, [esp + 0x3c]
push edx
push 0
push 8
push eax
push esi
call fcn.1002bc10
add esp, 0x24
lea ecx, [esp + 0x14]
mov dword [esp + 0x834], 0xffffffff
call fcn.10012790
mov eax, 1
jmp 0x10029f4a