Function at 0x140032790
Capabilities:
Delete file

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x168]
sub rsp, 0x268
mov rax, qword [0x14037da00]
xor rax, rsp
mov qword [rbp + 0x150], rax
mov rdi, r9
mov rbx, r8
mov r13, rdx
mov rsi, qword [rbp + 0x1d0]
mov r12, qword [rbp + 0x1d8]
mov rax, qword [rbp + 0x1e0]
mov qword [rsp + 0x70], rax
mov rax, qword [rbp + 0x1e8]
xor r14d, r14d
mov qword [rsp + 0x20], rax
lea r9d, [r14 + 2]
mov r8, rcx
lea rcx, [rbp + 0xb0]
call fcn.14002dd40
nop
mov rdx, rbx
lea rcx, [rbp + 0xe0]
call fcn.14003d4a0
mov rdx, rdi
lea rcx, [rbp + 0xc8]
call fcn.14003d4a0
lea edx, [r14 + 0x68]
lea rcx, [rbp + 0x20]
call fcn.140011160
mov rbx, rax
mov rdi, qword [rax + 0x10]
mov rcx, rax
call fcn.140042c40
test al, al
je 0x140032846
mov ecx, r14d
jmp 0x140032858
mov rax, qword [rbx + 8]
lea rcx, [0x14024ecc0]
test rax, rax
cmovne rcx, rax
mov qword [rbp - 0x20], rdi
mov qword [rbp - 0x18], rcx
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x10]
call fcn.14008e300
nop
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0xb0]
call fcn.140032c80
nop
mov ebx, 0xffffffff
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x1400328ad
mov eax, ebx
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1400328ad
mov rcx, qword [rbp - 0x10]
call fcn.14021b7f0
nop
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x1400328ca
mov eax, ebx
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1400328ca
mov rcx, qword [rbp + 0x20]
call fcn.14021b7f0
xor r15b, r15b
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], r14
lea rdx, [rbp - 0x38]
lea rcx, [rbp + 0xb0]
call fcn.140032da0
test al, al
jne 0x1400328f7
mov edi, 1
jmp 0x140032b55
mov rcx, rsi
call fcn.140043170
test al, al
je 0x140032970
mov rdx, r12
mov rcx, rsi
call fcn.140044070
mov edx, 0x136
lea rcx, [rbp + 0x50]
call fcn.140011160
nop
mov rdx, rax
lea rcx, [rbp + 0x38]
call fcn.14000e810
mov byte [rsp + 0x38], 0
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x38]
mov rcx, r13
call fcn.14001dda0
nop
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x140032970
mov eax, ebx
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x140032970
mov rcx, qword [rbp + 0x50]
call fcn.14021b7f0
nop dword [rax]
mov rdx, rsi
lea rcx, [rsp + 0x78]
call fcn.140042e70
nop
lea rcx, [rsp + 0x78]
call fcn.1400434e0
mov edx, 2
lea rcx, [rsp + 0x78]
call fcn.1400431e0
test al, al
je 0x1400329b3
lea rdx, [rbp - 0x38]
lea rcx, [rsp + 0x78]
call fcn.140049d00
test rax, rax
jle 0x1400329b3
mov dil, 1
jmp 0x1400329b6
xor dil, dil
lea rcx, [rsp + 0x78]
call fcn.140044850
nop
lea rcx, [rsp + 0x78]
call fcn.140042f50
test dil, dil
jne 0x1400329e5
mov edi, 5
mov ecx, 0x9c4
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140032a89
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], 0
lea rdx, [rbp - 0x68]
mov rcx, rsi
call fcn.14002b820
test al, al
jne 0x140032a2f
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x140032a68
mov eax, ebx
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x140032a68
mov rcx, qword [rbp - 0x68]
call fcn.14021b7f0
jmp 0x140032a68
lea rdx, [rbp + 0xc8]
lea rcx, [rbp - 0x68]
call fcn.14002b9d0
movzx edi, al
mov rdx, qword [rbp - 0x68]
test rdx, rdx
je 0x140032a5f
mov ecx, ebx
lock xadd dword [rdx], ecx
cmp ecx, 1
jne 0x140032a5f
mov rcx, qword [rbp - 0x68]
call fcn.14021b7f0
test dil, dil
jne 0x140032b2e
mov rcx, rsi
call fcn.140094f20
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov ecx, 0x9c4
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edi, 2
inc r14d
cmp r14d, 3
jl 0x140032970
mov rcx, r12
call fcn.140043170
test al, al
je 0x140032b52
mov rcx, rsi
call fcn.140043170
test al, al
jne 0x140032b52
mov rdx, rsi
mov rcx, r12
call fcn.140044070
mov edx, 0x137
lea rcx, [rbp + 0x80]
call fcn.140011160
nop
mov rdx, rax
lea rcx, [rbp + 0x68]
call fcn.14000e810
mov byte [rsp + 0x38], 0
xor r14d, r14d
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x68]
mov rcx, r13
call fcn.14001dda0
nop
mov rcx, qword [rbp + 0x80]
test rcx, rcx
je 0x140032b55
mov eax, ebx
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x140032b55
mov rcx, qword [rbp + 0x80]
call fcn.14021b7f0
jmp 0x140032b55
mov r15b, 1
mov rdx, qword [rsp + 0x70]
lea rcx, [rbp - 0x38]
call fcn.1400024f0
mov edi, 3
test al, al
mov r14d, 0
cmovne edi, r14d
jmp 0x140032b55
xor r14d, r14d
mov edx, 0x135
lea rcx, [rbp + 0x98]
call fcn.140011160
nop
mov rdx, rax
lea rcx, [rbp - 0x50]
call fcn.14000e810
lea rax, [rbp - 0x50]
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x60], 0
mov qword [rbp - 0x78], 0
mov dword [rbp - 0x70], r14d
movups xmm1, xmmword [rbp - 0x50]
movups xmmword [rbp + 8], xmm1
movsd xmm0, qword [rbp - 0x40]
movsd qword [rbp + 0x18], xmm0
movq rax, xmm1
test rax, rax
je 0x140032baf
lock inc dword [rax]
mov byte [rsp + 0x48], 0
mov dword [rsp + 0x40], r14d
mov dword [rsp + 0x38], r14d
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], edi
lea r9, [rbp - 0x78]
lea r8, [rsp + 0x60]
lea rdx, [rbp + 8]
mov rcx, r13
call fcn.14001de70
nop
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x140032c00
mov eax, ebx
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x140032c00
mov rcx, qword [rbp - 0x50]
call fcn.14021b7f0
nop
mov rcx, qword [rbp + 0x98]
test rcx, rcx
je 0x140032c24
mov eax, ebx
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x140032c24
mov rcx, qword [rbp + 0x98]
call fcn.14021b7f0
nop
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x140032c40
lock xadd dword [rcx], ebx
cmp ebx, 1
jne 0x140032c40
mov rcx, qword [rbp - 0x38]
call fcn.14021b7f0
nop
lea rcx, [rbp + 0xb0]
call fcn.14002de80
movzx eax, r15b
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
call fcn.140214310
add rsp, 0x268
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret