Function at 0x140084150
Capabilities:
Delete file

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x90
mov qword [rbp - 0x41], 0xfffffffffffffffe
mov qword [rsp + 0xe8], rbx
mov rax, qword [0x140222080]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov r13, r8
mov r12, rdx
mov rsi, rcx
mov rcx, r8
call fcn.140002690
xor r15d, r15d
mov word [rbp - 0x49], r15w
mov qword [rax + 0x10], r15
cmp qword [rax + 0x18], 8
jb 0x1400841ad
mov rax, qword [rax]
lea rdx, [rbp - 0x49]
mov rcx, rax
call fcn.1400028d0
mov rcx, r12
call fcn.1400030a0
test al, al
jne 0x14008443e
mov rcx, rsi
call fcn.1400030a0
test al, al
jne 0x14008443e
cmp byte [rsi + 0x38], r15b
jne 0x1400842c1
mov r8, rsi
lea rdx, [rbp - 0x29]
call fcn.140086b60
nop
xor eax, eax
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x31], rax
mov qword [rbp - 0x39], r15
mov word [rbp - 0x31], ax
lea rdx, [rbp - 0x29]
lea rcx, [rbp - 0x39]
call fcn.140069a20
xor eax, eax
mov qword [rbp - 1], rax
mov qword [rbp + 7], rax
lea rax, [rbp - 0x39]
mov qword [rbp - 1], rax
mov byte [rbp + 7], 0
mov rcx, qword [rbp - 0x39]
test rcx, rcx
jne 0x140084232
xor bl, bl
jmp 0x14008424e
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, 0xffffff7f
je 0x140084248
xor bl, bl
jmp 0x14008424e
mov byte [rbp - 0x31], 1
mov bl, 1
mov byte [rbp + 7], bl
mov byte [rbp - 0x49], 0
lea r8, [rsi + 0x20]
lea r9, [rbp - 0x49]
mov rdx, rsi
call fcn.140086180
test al, al
jne 0x140084280
cmp byte [rbp - 0x49], al
je 0x140084280
mov rcx, rsi
call fcn.1400030b0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
nop
test bl, bl
je 0x140084297
mov rcx, qword [rbp - 0x39]
test rcx, rcx
je 0x140084293
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp - 0x31], 0
mov qword [rbp - 1], r15
mov rcx, qword [rbp - 0x39]
test rcx, rcx
je 0x1400842ae
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp - 0x39], r15
mov word [rbp - 0x31], 0
lea rcx, [rbp - 0x29]
call fcn.140002550
mov byte [rsi + 0x38], 1
mov rcx, qword [rsi + 0x20]
mov rax, qword [rsi + 0x28]
cmp rcx, rax
je 0x14008443e
mov r14d, r15d
sub rax, rcx
sar rax, 7
test rax, rax
je 0x140084457
mov rdi, r15
nop dword [rax + rax]
shl rdi, 7
add rdi, rcx
mov rcx, rdi
call fcn.1400030b0
mov rbx, rax
mov rcx, r12
call fcn.1400030b0
mov rcx, rax
mov rdx, rbx
call fcn.14017f070
test eax, eax
je 0x140084338
inc r14d
mov rcx, qword [rsi + 0x20]
mov edi, r14d
mov rax, qword [rsi + 0x28]
sub rax, rcx
sar rax, 7
cmp rdi, rax
jb 0x1400842f0
jmp 0x140084457
mov rcx, r12
call fcn.1400030a0
test al, al
jne 0x14008443e
xor eax, eax
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x21], rax
mov qword [rbp - 0x19], rax
mov qword [rbp - 0x11], rax
mov dword [rbp - 9], eax
lea r8, [rbp - 0x29]
mov rcx, r12
call fcn.140069930
test al, al
je 0x14008443e
mov edx, dword [rbp - 0x21]
shl rdx, 0x20
mov eax, dword [rbp - 0x25]
add rdx, rax
mov r8d, dword [rbp - 0x11]
shl r8, 0x20
mov eax, dword [rbp - 0x15]
add r8, rax
mov ecx, dword [rbp - 0xd]
shl rcx, 0x20
mov eax, dword [rbp - 9]
add rcx, rax
cmp qword [rdi + 0x60], rcx
jne 0x14008443e
cmp qword [rdi + 0x68], r8
jne 0x14008443e
cmp qword [rdi + 0x70], rdx
jne 0x14008443e
cmp byte [rsi + 0x39], 0
je 0x140084447
lea rcx, [rdi + 0x40]
call fcn.1400030a0
test al, al
jne 0x14008443e
lea rcx, [rbp - 1]
call fcn.140002670
nop
lea r8, [rbp - 1]
mov rdx, r12
call fcn.140086d40
test al, al
jne 0x140084410
lea rcx, [rbp - 1]
call fcn.140002690
mov word [rbp - 0x49], r15w
mov qword [rax + 0x10], r15
cmp qword [rax + 0x18], 8
jb 0x140084404
mov rax, qword [rax]
lea rdx, [rbp - 0x49]
mov rcx, rax
call fcn.1400028d0
lea rcx, [rdi + 0x40]
call fcn.1400030b0
mov rbx, rax
lea rcx, [rbp - 1]
call fcn.1400030b0
mov rcx, rax
mov rdx, rbx
call fcn.14017f070
nop
lea rcx, [rbp - 1]
test eax, eax
je 0x140084442
call fcn.140002550
xor eax, eax
jmp 0x14008445a
call fcn.140002550
lea rdx, [rdi + 0x20]
mov rcx, r13
call fcn.1400030c0
mov r15d, dword [rdi + 0x78]
mov eax, r15d
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.140158860
mov rbx, qword [rsp + 0xe8]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret