Function at 0x140088ec0
Capabilities:
Delete file

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x790
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x7e8], rbx
mov rax, qword [0x1402ba4e0]
xor rax, rsp
mov qword [rsp + 0x780], rax
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x48], rdx
mov rbx, rcx
mov eax, 0x10a
test rcx, rcx
je 0x140089991
cmp dword [0x1402c0964], 0
jne 0x140089991
lea r8, str.svrltwp.dll
lea rdx, str.._vsext
lea rcx, [rsp + 0x60]
call fcn.140019410
nop
lea rcx, [rsp + 0x60]
call fcn.140019bd0
test eax, eax
je 0x140088f59
lea rcx, [rsp + 0x60]
call fcn.140019520
lea rcx, [rsp + 0x60]
call fcn.1400194e0
lea r8, str.svrltwp.dll
lea rdx, str.._ntext
lea rcx, [rsp + 0x2e0]
call fcn.140019410
nop
lea rcx, [rsp + 0x2e0]
call fcn.140019bd0
test eax, eax
je 0x140088fa0
lea rcx, [rsp + 0x2e0]
call fcn.140019520
lea rcx, [rsp + 0x2e0]
call fcn.1400194e0
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1f38
cmp byte [rcx], 0
je 0x140088fb9
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov byte [rsp + 0x560], 0
xor edx, edx
mov r8d, 0x103
lea rcx, [rsp + 0x561]
call fcn.14010da60
mov edx, 0x104
lea rcx, [rsp + 0x560]
call fcn.140071fd0
lea rcx, [rsp + 0x560]
call fcn.1400c9bc0
lea rdi, [rsp + 0x560]
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
mov rax, qword [str.xsysym.dll]
mov qword [rdi - 1], rax
movzx eax, word [0x1402203a8]
mov word [rdi + 7], ax
movzx eax, byte [0x1402203aa]
mov byte [rdi + 9], al
lea rcx, [rsp + 0x560]
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
xor ebp, ebp
mov edx, ebp
cmp dword [0x1402bfc3c], edx
sete dl
mov r8d, dword [0x1402c0744]
mov rcx, rbx
call fcn.140082860
mov rcx, rbx
call fcn.140083630
mov edx, dword [0x1402c0744]
mov rcx, rbx
call fcn.1400838b0
mov rcx, rbx
call fcn.140082570
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1b28
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 1
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, str..dll
lea r8d, [rbp + 0xb]
lea rdx, [0x1402c0310]
call fcn.140086980
mov rcx, qword [rbx + 0xb0]
add rcx, 0x454
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 1
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, str..dll
lea r8d, [rbp + 0x12]
lea rdx, [0x1402c0420]
call fcn.140086980
mov rcx, qword [rbx + 0xb0]
add rcx, 0x181c
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 1
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, str..dll
xor r8d, r8d
lea r13, [0x1402c0200]
mov rdx, r13
call fcn.140086980
mov rcx, qword [rbx + 0xb0]
add rcx, 0xa6c
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 1
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, str..dll
lea r8d, [rbp + 1]
lea rdx, [0x1402c0ba0]
call fcn.140086980
mov rcx, qword [rbx + 0xb0]
add rcx, 0x760
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 1
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, str..dll
lea r8d, [rbp + 8]
lea rdx, [0x1402c0ed0]
call fcn.140086980
lea rsi, [0x1402c1200]
cmp dword [0x1402c0744], ebp
je 0x1400891d9
xor r9d, r9d
mov edx, 0x104
lea r8d, [rbp + 0xa]
mov rcx, rsi
call fcn.1400821b0
jmp 0x1400891ef
mov rcx, rbp
nop dword [rax]
movzx eax, byte [rcx + r13]
mov byte [rcx + rsi], al
inc rcx
test al, al
jne 0x1400891e0
mov rcx, rsi
call fcn.1400d4940
mov edx, 0x104
lea r12, [0x1402c10f0]
mov rcx, r12
call fcn.140071fd0
mov rcx, r12
call fcn.1400c9bc0
mov rdi, r12
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
xor ecx, ecx
movzx eax, byte [rsi + rcx]
mov byte [rdi + rcx - 1], al
inc rcx
test al, al
jne 0x140089220
mov rdi, r12
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
mov eax, dword [str..sys]
mov dword [rdi - 1], eax
movzx eax, byte [0x14022039c]
mov byte [rdi + 3], al
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1920
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 1
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, [0x1401eb360]
mov r8d, 5
lea rdx, [0x1402c0530]
call fcn.140086980
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1a24
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 1
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, str..dll
mov r8d, 6
lea rdx, [0x1402c0640]
call fcn.140086980
mov rcx, qword [rbx + 0xb0]
add rcx, 0x998c
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 1
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, str..dll
mov r8d, 7
lea r14, [0x1402c0970]
mov rdx, r14
call fcn.140086980
mov edx, 4
lea r8d, [rdx + 0x43]
lea rcx, str.shell32.dll
call fcn.1400cf190
lea rdi, [0x1402c0a80]
test eax, eax
jne 0x140089378
mov rcx, qword [rbx + 0xb0]
add rcx, 0x9b94
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 1
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, [0x1401eb360]
mov r8d, 4
mov rdx, rdi
call fcn.140086980
mov rcx, qword [rbx + 0xb0]
add rcx, 0xb70
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ebp
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, str..dll
mov r8d, 2
lea rdx, [0x1402c0cb0]
call fcn.140086980
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1e34
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 1
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, [0x1401eb360]
mov r8d, 3
lea rdx, [0x1402c0dc0]
call fcn.140086980
mov rcx, qword [rbx + 0xb0]
add rcx, 0x864
mov eax, dword [0x1402c0744]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ebp
mov eax, dword [0x1402bfc3c]
mov dword [rsp + 0x20], eax
lea r9, str..dll
mov r8d, 9
lea r15, [0x1402c0fe0]
mov rdx, r15
call fcn.140086980
mov rdx, rbp
lea r12, str.ocxdrv32.dll
nop word [rax + rax]
movzx eax, byte [rdx + r12]
mov byte [rsp + rdx + 0x670], al
inc rdx
test al, al
jne 0x140089450
mov edx, 0x5c
lea rcx, [0x1402bfd40]
call fcn.14010db4c
test rax, rax
lea r12, [0x1402c10f0]
je 0x14008949e
lea rcx, [rax + 1]
lea r8, str.ocxdrv32.dll
sub r8, rcx
nop
movzx eax, byte [rcx]
mov byte [r8 + rcx], al
inc rcx
test al, al
jne 0x140089490
mov rdx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.140088c80
mov r8d, 1
mov rdx, qword [rsp + 0x48]
mov rcx, rbx
call fcn.140087540
mov edx, eax
mov dword [rsp + 0x48], eax
lea rax, str.ocxdrv32.dll
nop dword [rax + rax]
movzx ecx, byte [rsp + rbp + 0x670]
mov byte [rax + rbp], cl
inc rbp
test cl, cl
jne 0x1400894d0
test edx, edx
je 0x140089522
mov rax, qword [0x1402b9cc8]
mov qword [rsp + 0x40], rax
mov r8d, edx
mov edx, 0xe001
lea rcx, [rsp + 0x40]
call fcn.1400cc3a0
mov edx, 0xa
lea r8d, [rdx - 9]
mov rcx, qword [rsp + 0x40]
call fcn.14000a910
nop
lea rcx, [rsp + 0x40]
call fcn.1400ca400
cmp byte [0x1402bfcc0], 0
je 0x140089539
xor edx, edx
lea rcx, [0x1402bfcc0]
call fcn.1400d67e0
mov rcx, qword [rbx + 0xb0]
add rcx, 0x181c
nop word [rax + rax]
movzx eax, byte [r13]
mov byte [rcx], al
inc r13
inc rcx
test al, al
jne 0x140089550
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1b28
lea rdx, [0x1402c0310]
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x140089580
mov rcx, qword [rbx + 0xb0]
add rcx, 0xa6c
lea rdx, [0x1402c0ba0]
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x1400895b0
mov rcx, qword [rbx + 0xb0]
add rcx, 0xb70
lea rdx, [0x1402c0cb0]
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x1400895e0
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1e34
lea rdx, [0x1402c0dc0]
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x140089610
mov rcx, qword [rbx + 0xb0]
add rcx, 0x760
lea rdx, [0x1402c0ed0]
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x140089640
mov rcx, qword [rbx + 0xb0]
add rcx, 0x864
nop dword [rax]
movzx eax, byte [r15]
mov byte [rcx], al
inc r15
inc rcx
test al, al
jne 0x140089660
mov rcx, qword [rbx + 0xb0]
add rcx, 0x65c
nop
movzx eax, byte [r12]
mov byte [rcx], al
inc r12
inc rcx
test al, al
jne 0x140089680
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1920
lea rdx, [0x1402c0530]
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x1400896b0
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1a24
lea rdx, [0x1402c0640]
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x1400896e0
mov rcx, qword [rbx + 0xb0]
add rcx, 0x998c
nop dword [rax]
movzx eax, byte [r14]
mov byte [rcx], al
inc r14
inc rcx
test al, al
jne 0x140089700
mov rcx, qword [rbx + 0xb0]
add rcx, 0x9b94
nop
movzx eax, byte [rdi]
mov byte [rcx], al
inc rdi
inc rcx
test al, al
jne 0x140089720
mov rcx, qword [rbx + 0xb0]
add rcx, 0x454
lea rdx, [0x1402c0420]
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x140089750
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1c2c
nop dword [rax]
movzx eax, byte [rsi]
mov byte [rcx], al
inc rsi
inc rcx
test al, al
jne 0x140089770
lea rdx, [0x1402c1310]
mov rcx, qword [rbx + 0xb0]
add rcx, 0x558
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x1400897a0
lea rdx, [0x1402c1420]
mov rcx, qword [rbx + 0xb0]
add rcx, 0x1f38
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x1400897d0
cmp dword [0x1402c0744], 0
je 0x14008986f
lea rdx, str.__923__
mov rcx, qword [rbx + 0xb0]
add rcx, 0x9680
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x140089801
lea rdx, [0x1402b9050]
mov rcx, qword [rbx + 0xb0]
add rcx, 0x9784
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x140089830
lea rdx, [0x1402b9030]
mov rcx, qword [rbx + 0xb0]
add rcx, 0x9888
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x140089860
mov rcx, qword [rbx + 0xb0]
add rcx, 0x248c
call qword [sym.imp.ole32.dll_CoCreateGuid]
mov rcx, qword [rbx + 0xb0]
add rcx, 0xc8c
call qword [sym.imp.ole32.dll_CoCreateGuid]
mov rcx, qword [rbx + 0xb0]
add rcx, 0xc9c
call qword [sym.imp.ole32.dll_CoCreateGuid]
mov rcx, qword [rbx + 0xb0]
add rcx, 0x249c
cmp dword [0x1402c0744], 0
je 0x1400898e1
lea rdx, str._34_.__.
nop dword [rax]
movzx eax, byte [rdx]
mov byte [rcx], al
inc rdx
inc rcx
test al, al
jne 0x1400898d0
jmp 0x1400898e6
call fcn.1400e6f70
mov rax, qword [rbx + 0xb0]
movsx ecx, byte [rax + 0x249c]
call fcn.1401108e4
mov rcx, qword [rbx + 0xb0]
mov byte [rcx + 0x249c], al
mov rcx, qword [rbx + 0xb0]
add rcx, 0xcac
call fcn.1400e6f70
mov rdx, qword [rbx + 0xb0]
movsx ecx, byte [rdx + 0xcac]
call fcn.1401108e4
mov rdx, qword [rbx + 0xb0]
mov byte [rdx + 0xcac], al
mov rcx, qword [rbx + 0xb0]
add rcx, 0xd2c
call fcn.1400e6f70
mov rdx, qword [rbx + 0xb0]
movsx ecx, byte [rdx + 0xd2c]
call fcn.1401108e4
mov rdx, qword [rbx + 0xb0]
mov byte [rdx + 0xd2c], al
mov rcx, rbx
call fcn.140088470
nop
lea rcx, [rsp + 0x2e0]
call fcn.140019ba0
nop
lea rcx, [rsp + 0x60]
call fcn.140019ba0
mov eax, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x780]
xor rcx, rsp
call fcn.14010d170
mov rbx, qword [rsp + 0x7e8]
add rsp, 0x790
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret