Function at 0x1400491e0
Capabilities:
Resume thread

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xc8
mov rbx, rcx
call fcn.1400a2364
mov rcx, rax
test rax, rax
je 0x14004983d
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x61], rax
mov r14, qword [rbx + 0x10]
mov r15, 0xffffffffffffffff
test r14, r14
jne 0x140049251
lea r9, str.Internal_error_trackfinder
lea r8d, [r14 + 0x11]
lea rdx, str.C:WorkVSRevoWindowsProjectsRevo_HelperRevo_HelperSourcesLeftoverScannerWrapper.cpp
lea ecx, [r14 + 1]
call fcn.1400473d0
xor bl, bl
jmp 0x1400497f2
mov rbx, qword [rbx]
lea rdx, [rbx + 0x18]
lea rcx, [r14 + 0x370]
call fcn.14000d7c0
lea rdx, [rbx + 0x38]
lea rcx, [r14 + 0x390]
call fcn.14000d7c0
lea rdx, [rbx + 0x20]
lea rcx, [r14 + 0x378]
call fcn.14000d7c0
lea rcx, [r14 + 0x380]
lea rdx, [rbx + 8]
call fcn.14000d7c0
mov eax, dword [rbx + 0x94]
test eax, eax
je 0x1400492b4
lea rcx, [r14 + 0x3c0]
lea rdx, [rbx + 8]
call fcn.14000d7c0
mov eax, dword [rbx + 0x94]
mov dword [r14 + 0x3e0], eax
mov eax, dword [rbx + 0x90]
mov dword [r14 + 0x3e4], eax
mov rcx, qword [rbx + 0x28]
sub rcx, 0x18
call fcn.14000de80
lea rdi, [rax + 0x18]
mov qword [rbp - 0x69], rdi
lea r12, [rdi - 0x18]
mov rcx, r12
call fcn.14000de80
lea rbx, [rax + 0x18]
mov qword [rbp - 0x71], rbx
call fcn.1400a2364
mov rcx, rax
test rax, rax
je 0x140049827
mov rax, qword [rax]
call qword [rax + 0x18]
lea rsi, [rax + 0x18]
mov qword [rbp - 0x79], rsi
mov edx, dword [r12 + 8]
test edx, edx
je 0x140049799
cmp dword [r12 + 0x10], 1
jle 0x140049332
lea rcx, [rbp - 0x69]
call fcn.14000dd30
mov rdi, qword [rbp - 0x69]
mov rcx, rdi
call qword [sym.imp.SHLWAPI.dll_PathRemoveBackslashW]
mov rcx, rdi
call qword [sym.imp.SHLWAPI.dll_PathRemoveExtensionW]
mov rcx, rdi
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
xor r13d, r13d
test rax, rax
jne 0x14004935a
mov ecx, r13d
jmp 0x14004936a
mov rcx, r15
nop dword [rax]
inc rcx
cmp word [rax + rcx*2], r13w
jne 0x140049360
mov r8d, ecx
mov rdx, rax
lea rcx, [rbp - 0x79]
call fcn.14000df90
lea r12, [rdi - 0x18]
test rdi, rdi
jne 0x140049387
mov eax, r13d
jmp 0x14004939c
movsxd rdx, dword [r12 + 0xc]
mov rcx, rdi
call fcn.14024bd08
test eax, eax
js 0x140049832
cmp eax, dword [r12 + 0xc]
jg 0x140049832
mov dword [r12 + 8], eax
mov eax, eax
mov word [rdi + rax*2], r13w
cmp dword [rbx - 8], 1
jle 0x1400493c9
mov edx, dword [rbx - 0x10]
lea rcx, [rbp - 0x71]
call fcn.14000dd30
mov rbx, qword [rbp - 0x71]
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea rsi, [rbx - 0x18]
test rbx, rbx
jne 0x1400493e0
mov eax, r13d
jmp 0x1400493f4
movsxd rdx, dword [rsi + 0xc]
mov rcx, rbx
call fcn.14024bd08
test eax, eax
js 0x140049832
cmp eax, dword [rsi + 0xc]
jg 0x140049832
mov dword [rsi + 8], eax
mov eax, eax
mov word [rbx + rax*2], r13w
mov rdi, qword [r14 + 0x3d0]
sub rdi, 0x18
cmp rsi, rdi
je 0x14004946e
mov eax, dword [rdi + 0x10]
shr eax, 0x1f
test al, al
jne 0x14004945b
mov rax, qword [rdi]
cmp qword [rsi], rax
jne 0x14004945b
mov rcx, rsi
call fcn.14000de80
mov rbx, rax
mov ecx, r15d
lock xadd dword [rdi + 0x10], ecx
sub ecx, 1
jg 0x14004944e
mov rcx, qword [rdi]
mov r8, qword [rcx]
mov rdx, rdi
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rbx + 0x18]
mov qword [r14 + 0x3d0], rax
jmp 0x14004946e
mov r8d, dword [rsi + 8]
mov rdx, rbx
lea rcx, [r14 + 0x3d0]
call fcn.14000df90
mov rsi, qword [rbp - 0x79]
lea rcx, [rsi - 0x18]
mov rbx, qword [r14 + 0x3c8]
sub rbx, 0x18
cmp rcx, rbx
je 0x1400494de
mov eax, dword [rbx + 0x10]
shr eax, 0x1f
test al, al
jne 0x1400494cb
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x1400494cb
call fcn.14000de80
mov rsi, rax
mov ecx, r15d
lock xadd dword [rbx + 0x10], ecx
sub ecx, 1
jg 0x1400494ba
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rsi + 0x18]
mov qword [r14 + 0x3c8], rax
mov rsi, qword [rbp - 0x79]
jmp 0x1400494de
mov r8d, dword [rcx + 8]
mov rdx, rsi
lea rcx, [r14 + 0x3c8]
call fcn.14000df90
mov dword [rbp + 0x6f], 1
mov r8d, 0x200
mov ecx, r8d
lea rax, [0x1402ed7f8]
cmp word [rax], r13w
je 0x140049505
add rax, 2
sub rcx, 1
jne 0x1400494f5
test rcx, rcx
je 0x14004951c
sub r8, rcx
add r8, r8
test rcx, rcx
mov rdi, r13
cmove r8, r13
jmp 0x140049521
xor edi, edi
mov r8d, edi
mov edx, 0x1000
mov ecx, edx
lea rbx, str.SOFTWAREVS_Revo_GroupRevo_Uninstaller_
mov rax, rbx
cmp word [rax], r13w
je 0x140049542
add rax, 2
sub rcx, 1
jne 0x140049532
test rcx, rcx
je 0x140049556
sub rdx, rcx
add rdx, rdx
test rcx, rcx
cmove rdx, rdi
jmp 0x140049559
mov rdx, rdi
lea r13, [r8 + 2]
add r13, rdx
mov eax, 2
mul r13
cmovo rax, r15
mov rcx, rax
call fcn.1400164e0
mov rdi, rax
mov r8, r13
xor edx, edx
mov rcx, rax
call fcn.140241ba0
test r13, r13
je 0x1400495e1
cmp r13, 0x7fffffff
jbe 0x140049599
xor ebx, ebx
mov word [rdi], bx
jmp 0x1400495e3
mov r9, r13
mov rcx, rdi
mov r10d, 0x7ffffffe
sub r10, r13
sub rbx, rdi
nop dword [rax + rax]
lea rax, [r10 + r9]
test rax, rax
je 0x1400495cf
movzx eax, word [rbx + rcx]
test ax, ax
je 0x1400495cf
mov word [rcx], ax
add rcx, 2
sub r9, 1
jne 0x1400495b0
lea rax, [rcx - 2]
test r9, r9
cmovne rax, rcx
xor ebx, ebx
mov word [rax], bx
jmp 0x1400495e3
xor ebx, ebx
lea r8, [0x1402ed7f8]
mov rdx, r13
mov rcx, rdi
call fcn.140022690
mov rdx, 0xffffffff80000001
lea rcx, [rbp - 0x59]
call fcn.14001fc70
nop
mov r8d, 0x20019
mov rdx, rdi
lea rcx, [rbp - 0x59]
call fcn.1400210b0
test eax, eax
je 0x1400496ce
mov dword [rbp + 0x77], 4
mov dword [rbp + 0x7f], 4
mov rax, qword [rbp - 0x59]
lea rcx, [rbp + 0x77]
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0x6f]
lea r8, [rbp + 0x7f]
lea rdx, str.NTUninstall_Mode
lea rcx, [rbp - 0x59]
call qword [rax + pe_nt_image_headers64]
test eax, eax
je 0x1400496ce
mov rcx, qword [rbp - 0x51]
test rcx, rcx
je 0x14004966b
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rbp - 0x51], rbx
cmp qword [rbp - 0x49], 0
je 0x1400496ce
cmp dword [rbp - 0x41], 0
jne 0x1400496ce
mov qword [rbp - 0x49], rbx
lea rcx, [rbp - 0x39]
call fcn.14000e0b0
lea rcx, [rbp - 0x31]
call fcn.14000e0b0
lea rcx, [rbp - 0x29]
call fcn.14000e0b0
lea rcx, [rbp - 0x21]
call fcn.14000e0b0
mov qword [rbp - 0x51], rbx
mov dword [rbp - 0x41], ebx
mov qword [rbp - 0x19], 0
mov qword [rbp - 0x11], 0
mov qword [rbp - 9], 0
mov qword [rbp - 1], 0
mov dword [rbp + 7], ebx
mov qword [rbp - 0x49], rbx
mov rcx, rdi
call fcn.140095d64
nop
lea rcx, [rbp - 0x59]
call fcn.14001feb0
mov ebx, dword [rbp + 0x6f]
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x1400496f6
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov rcx, qword [r14 + 0x40]
test rcx, rcx
je 0x14004972a
mov edx, 0xffffffff
mov rcx, qword [rcx + 0x58]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [r14 + 0x40]
test rcx, rcx
je 0x140049722
mov rax, qword [rcx]
mov edx, 1
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor edi, edi
mov qword [r14 + 0x40], rdi
jmp 0x14004972c
xor edi, edi
mov dword [r14 + 0x48], ebx
mov dword [r14 + 0x4c], edi
mov byte [r14 + 0x50], 0
mov rcx, qword [r14 + 8]
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_ResetEvent]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 4
xor r9d, r9d
xor r8d, r8d
mov rdx, r14
lea rcx, [0x140055ce0]
call fcn.1400ac61c
mov qword [r14 + 0x40], rax
mov dword [rax + 0x50], edi
mov rcx, qword [r14 + 0x40]
mov rcx, qword [rcx + 0x58]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
mov rcx, qword [r14 + 8]
mov edx, 0xffffffff
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rax, qword [rbp + 0x67]
mov byte [rax + 0x18], 1
mov bl, 1
lea rdx, [rsi - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400497b6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x71]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400497d5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov eax, r15d
lock xadd dword [r12 + 0x10], eax
sub eax, 1
jg 0x1400497f2
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rdx, r12
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x61]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r15d
sub r15d, 1
jg 0x140049810
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
movzx eax, bl
add rsp, 0xc8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, 0x80004005
call fcn.1400080b0
nop
mov ecx, 0x80070057
call fcn.1400080b0
nop
mov ecx, 0x80004005
call fcn.1400080b0
int3