Function at 0x100198ff
Capabilities:
Delete file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x570
mov eax, dword [0x1008a418]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x540], eax
xor eax, eax
push edi
mov dword [ebp - 0x52c], eax
mov edi, ecx
push 0x208
lea eax, [ebp - 0x524]
mov dword [ebp - 0x548], edx
push eax
lea ecx, [ebp - 0x554]
mov dword [ebp - 0x560], ebx
mov dword [ebp - 0x55c], esi
call fcn.100102ed
xor eax, eax
lea ecx, [ebp - 0x538]
mov dword [ebp - 0x544], eax
lea eax, [ebp - 0x294]
push 0x80
push eax
call fcn.100102ed
xor eax, eax
lea ecx, [ebp - 0x570]
mov dword [ebp - 0x53c], eax
lea eax, [ebp - 0x31c]
push 0x82
push eax
call fcn.10031469
xor eax, eax
mov dword [ebp - 0x564], eax
mov dword [ebp - 0x528], eax
test edi, edi
je 0x100199b9
cmp dword [ebp - 0x548], eax
je 0x100199b9
test ebx, ebx
jne 0x10019a17
test esi, esi
jne 0x10019a19
mov esi, 0x80070057
lea ecx, [ebp - 0x52c]
call int.1000b34b
xor eax, eax
lea ecx, [ebp - 0x570]
mov dword [ebp - 0x564], eax
call fcn.1000deab
xor eax, eax
lea ecx, [ebp - 0x538]
mov dword [ebp - 0x53c], eax
call fcn.1000deab
xor eax, eax
lea ecx, [ebp - 0x554]
mov dword [ebp - 0x558], eax
call fcn.1000deab
mov ecx, dword [ebp - 8]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10087900
mov esp, ebp
pop ebp
ret 0xc
mov dword [ebx], eax
lea edx, [ebp - 0x53c]
mov ecx, edi
call fcn.1001aabe
mov esi, eax
test esi, esi
js 0x100199be
lea eax, [ebp - 0x528]
push eax
lea eax, [ebp - 0x53c]
push eax
lea ecx, [ebp - 0x570]
call fcn.1007136d
mov esi, eax
test esi, esi
js 0x100199be
mov ecx, dword [ebp - 0x528]
call fcn.100633e6
mov eax, dword [ebp - 0x53c]
xor esi, esi
add eax, eax
push eax
push esi
push dword [ebp - 0x538]
call sub.msvcrt.dll_memset
add esp, 0xc
mov dword [ebp - 0x53c], esi
lea eax, [ebp - 0x528]
lea ecx, [ebp - 0x53c]
push eax
lea eax, [ebp - 0x570]
push eax
call fcn.1007120d
mov esi, eax
test esi, esi
js 0x100199be
mov edx, dword [ebp - 0x548]
xor esi, esi
lea ecx, [edx + 2]
mov ax, word [edx]
add edx, 2
cmp ax, si
jne 0x10019aa8
mov eax, dword [ebp - 0x540]
sub edx, ecx
sar edx, 1
test eax, eax
je 0x10019adb
mov ecx, eax
xor edi, edi
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, di
jne 0x10019ac8
sub ecx, esi
sar ecx, 1
xor esi, esi
jmp 0x10019add
mov ecx, esi
mov eax, dword [ebp - 0x53c]
lea edi, [edx + 0x16]
add eax, ecx
add edi, eax
cmp edi, 0x104
jl 0x10019b66
lea eax, [ebp - 0x528]
push eax
lea eax, [ebp - 0x53c]
push eax
lea ecx, [ebp - 0x570]
call fcn.1007136d
mov esi, eax
test esi, esi
js 0x100199be
mov ecx, dword [ebp - 0x53c]
xor edx, edx
mov eax, dword [ebp - 0x528]
sub ecx, edi
xor esi, esi
mov word [eax + ecx*2 + 0x206], dx
mov eax, dword [ebp - 0x53c]
add eax, eax
push eax
push esi
push dword [ebp - 0x538]
call sub.msvcrt.dll_memset
add esp, 0xc
mov dword [ebp - 0x53c], esi
lea eax, [ebp - 0x528]
lea ecx, [ebp - 0x53c]
push eax
lea eax, [ebp - 0x570]
push eax
call fcn.1007120d
mov ebx, dword [ebp - 0x554]
mov edi, 0x10003f08
mov dword [ebp - 0x528], esi
push 0x208
lea eax, [ebp - 0x214]
push esi
push eax
call sub.msvcrt.dll_memset
mov eax, dword [ebp - 0x544]
add esp, 0xc
add eax, eax
push eax
push esi
push ebx
call sub.msvcrt.dll_memset
add esp, 0xc
mov dword [ebp - 0x558], esi
lea ecx, [ebp - 0x558]
push dword [ebp - 0x548]
call fcn.100115f7
mov esi, eax
test esi, esi
js 0x100199be
push 0x10004d60
lea ecx, [ebp - 0x558]
call fcn.100115f7
mov esi, eax
test esi, esi
js 0x100199be
mov eax, dword [ebp - 0x528]
test eax, eax
jne 0x10019c16
cmp dword [ebp - 0x53c], eax
mov eax, edi
je 0x10019bf4
mov eax, dword [ebp - 0x538]
push dword [ebp - 0x540]
push eax
push 0x10004d64
lea eax, [ebp - 0x214]
push 0x104
push eax
call fcn.10010229
add esp, 0x14
jmp 0x10019c6d
cmp eax, 0x28
jge 0x10019c36
cmp dword [ebp - 0x53c], 0
mov ecx, edi
je 0x10019c2c
mov ecx, dword [ebp - 0x538]
push dword [ebp - 0x540]
push eax
push ecx
jmp 0x10019c54
cmp dword [ebp - 0x53c], 0
mov esi, edi
je 0x10019c47
mov esi, dword [ebp - 0x538]
push dword [ebp - 0x540]
call fcn.1007161c
push eax
push esi
push 0x10004d70
lea eax, [ebp - 0x214]
push 0x104
push eax
call fcn.10010229
add esp, 0x18
mov esi, eax
test esi, esi
js 0x100199be
lea eax, [ebp - 0x214]
push eax
lea ecx, [ebp - 0x558]
call fcn.100115f7
mov esi, eax
test esi, esi
js 0x100199be
mov eax, dword [ebp - 0x558]
test eax, eax
mov ebx, dword [ebp - 0x554]
mov dword [ebp - 0x544], eax
mov eax, edi
je 0x10019cad
mov eax, ebx
lea ecx, [ebp - 0x52c]
push ecx
push 0x40000000
push 1
push eax
call dword [sym.imp.MSOERT2.dll_OpenFileStreamW]
mov esi, eax
test esi, esi
jns 0x10019cd4
cmp esi, 0x80070050
jne 0x100199be
mov eax, dword [ebp - 0x52c]
test eax, eax
jne 0x10019d01
mov eax, dword [ebp - 0x528]
inc eax
mov dword [ebp - 0x528], eax
push 0
pop esi
cmp eax, 0x32
jle 0x10019b77
mov esi, 0x8000ffff
jmp 0x100199be
mov esi, dword [ebp - 0x55c]
test esi, esi
je 0x10019d49
mov eax, dword [esi]
add eax, eax
push eax
xor eax, eax
push eax
push dword [esi + 4]
call sub.msvcrt.dll_memset
mov ecx, dword [ebp - 0x544]
xor eax, eax
add esp, 0xc
mov dword [esi], eax
mov eax, edi
test ecx, ecx
je 0x10019d30
mov eax, ebx
push ecx
push eax
mov ecx, esi
call fcn.10071022
mov esi, eax
test esi, esi
js 0x100199be
mov eax, dword [ebp - 0x52c]
mov ecx, dword [ebp - 0x560]
test ecx, ecx
je 0x10019d5f
mov dword [ecx], eax
xor eax, eax
mov dword [ebp - 0x52c], eax
jmp 0x10019d73
cmp dword [ebp - 0x544], 0
je 0x10019d6a
mov edi, ebx
push edi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
xor eax, eax
mov esi, eax
jmp 0x100199be