Function at 0x14005f68c
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x108]
sub rsp, 0x1e0
mov rax, qword [0x140173708]
xor rax, rsp
mov qword [rbp + 0xd0], rax
mov rsi, rcx
mov rcx, qword [0x140173048]
lea rdx, [0x140173048]
mov eax, 1
cmp rcx, rdx
je 0x14005f6fc
test byte [rcx + 0x1c], al
je 0x14005f6fc
cmp byte [rcx + 0x19], 4
jb 0x14005f6fc
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x52]
lea r8, [0x140153810]
call fcn.14000c328
mov eax, dword [rsi + 0x110]
lea rcx, [rbp - 0x10]
xor edi, edi
xor edx, edx
mov r15d, edi
mov dword [rbp - 0x70], edi
mov r8d, 0xd0
mov qword [rbp - 0x58], rdi
lea r13, [rax + rax*2]
mov qword [rbp - 0x78], rdi
shl r13, 6
mov r14d, edi
add r13, qword [rsi + 0x108]
mov qword [rbp - 0x68], rdi
mov dword [rsp + 0x74], edi
mov dword [rbp - 0x60], r15d
mov qword [rbp - 0x80], rdi
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x38], rdi
mov byte [rsp + 0x70], dil
mov byte [rsp + 0x78], dil
mov qword [rbp - 0x40], rdi
mov qword [rbp + 0xc0], rdi
mov qword [rbp + 0xc8], rdi
call sub.msvcrt.dll_memset
lea r12, [rsi + 8]
mov rcx, r12
call fcn.14000b920
mov rbx, rax
test rax, rax
jne 0x14005f795
lea r8, str.pCatalogSystem
mov edx, 0x8bd
lea rcx, str.base_stor_blbengine_service_restore.cpp
call fcn.1400906e0
mov rcx, qword [rbx]
movups xmm0, xmmword [rsi + 0xd0]
mov rax, qword [rcx + 0x58]
movdqu xmmword [rbp - 0x20], xmm0
movabs r10, 0xf81d3e6538d5fb70
mov r9b, 1
lea r8, [rbp - 0x10]
lea rdx, [rbp - 0x20]
mov rcx, rbx
call qword [vtable.H_MA8HI.0]
mov edi, eax
test eax, eax
js 0x14005f8f1
mov edx, dword [rbp + 0xb4]
lea r9, [rsp + 0x70]
mov ecx, dword [rbp + 0xb0]
lea r8, [rbp - 0x40]
mov byte [rsp + 0x78], 1
call fcn.140115410
mov edi, eax
test eax, eax
js 0x14005f8f1
mov r12, qword [rbp - 0x40]
test r12, r12
jne 0x14005f81a
lea r8, str.wszVhdExtension___NULL
mov edx, 0x8cf
lea rcx, str.base_stor_blbengine_service_restore.cpp
call fcn.1400906e0
lea rdx, [rbp - 0x58]
mov rcx, r13
call fcn.14005cc10
mov edi, eax
test eax, eax
js 0x14005f8e9
mov r8d, dword [r13 + 0x4c]
lea rcx, [rbp - 0x68]
mov qword [rsp + 0x20], rcx
lea rdx, [r13 + 0x3c]
mov rcx, qword [rsi + 0xc8]
mov r9, r12
call fcn.1401132c0
mov edi, eax
test eax, eax
js 0x14005f8e9
test byte [r13 + 0x4c], 8
mov r14d, 1
je 0x14005f878
test byte [r13 + 0x4c], 0x20
movzx r15d, r15b
cmove r15d, r14d
mov dword [rbp - 0x60], r15d
xor edx, edx
lea rcx, [rsi + 0x18]
call fcn.1400ffdd4
mov edi, eax
test eax, eax
js 0x14005f8e9
mov r15, qword [rbp - 0x68]
xor r8d, r8d
mov rcx, r15
call fcn.1401045c8
mov edi, eax
test eax, eax
jns 0x14005fa56
mov rcx, qword [0x140173048]
lea rbx, [0x140173048]
cmp rcx, rbx
je 0x14005fa49
test byte [rcx + 0x1c], r14b
je 0x14005fa49
cmp byte [rcx + 0x19], 2
jb 0x14005fa49
mov rcx, qword [rcx + 0x10]
lea r8, [0x140153810]
mov edx, 0x54
mov dword [rsp + 0x20], eax
mov r9, r15
call fcn.1400151b8
mov r14, qword [rbp - 0x58]
lea r12, [rsi + 8]
lea rbx, [0x140173048]
mov r15d, 1
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x14005f98c
test byte [rsi + 0x148], 2
je 0x14005f930
lea r8, str._CHUNKED_m_ulFeatures_
mov edx, 0xa2d
lea rcx, str.base_stor_blbengine_service_restore.cpp
call fcn.1400906e0
mov rcx, qword [rbp - 0x80]
test edi, edi
jns 0x14005f976
call fcn.140119f00
test eax, eax
jns 0x14005f972
mov rcx, qword [0x140173048]
cmp rcx, rbx
je 0x14005f972
test byte [rcx + 0x1c], r15b
je 0x14005f972
cmp byte [rcx + 0x19], 2
jb 0x14005f972
mov r9, qword [rbp - 0x80]
lea r8, [0x140153810]
mov rcx, qword [rcx + 0x10]
mov edx, 0x68
mov dword [rsp + 0x20], eax
call fcn.1400151b8
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x14005f98c
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
and qword [rbp - 0x80], 0
lea rcx, [rsi + 0x18]
call fcn.1401005a4
lea rbx, [rsi + 0x118]
mov rcx, r12
mov rdx, rbx
call fcn.14002f0d4
mov eax, dword [rsi + 0x11c]
cmp dword [rbx], eax
jbe 0x14005f9c9
lea r8, str.m_ulBagsProcessed___m_cBags
mov edx, 0xa41
lea rcx, str.base_stor_blbengine_service_restore.cpp
call fcn.1400906e0
test edi, edi
jns 0x140060506
cmp edi, 0x80780118
je 0x140060497
test r14, r14
je 0x140060497
mov rdx, qword [rsi + 0x164]
mov rcx, r14
call fcn.140112154
test eax, eax
jns 0x140060497
mov rcx, qword [0x140173048]
lea rbx, [0x140173048]
cmp rcx, rbx
je 0x14006049e
test byte [rcx + 0x1c], r15b
je 0x14006049e
cmp byte [rcx + 0x19], 2
jb 0x14006049e
mov rcx, qword [rcx + 0x10]
lea r8, [0x140153810]
mov edx, 0x69
mov dword [rsp + 0x20], eax
mov r9, r14
call fcn.1400151b8
jmp 0x14006049e
mov r14, qword [rbp - 0x58]
lea r12, [rsi + 8]
jmp 0x14005f8f8
lea rcx, [rsi + 0x18]
call fcn.1401005a4
mov r8b, r14b
mov edx, 3
mov rcx, rsi
call fcn.140060a4c
mov r14, qword [rbp - 0x58]
lea rdx, [rbp - 0x78]
mov rcx, r14
call fcn.140091dd8
mov edi, eax
test eax, eax
js 0x14005f8ed
mov ebx, dword [r13 + 0x4c]
lea r12, [rsi + 0x158]
and ebx, 2
cmp qword [r12], 0
jne 0x14005fe25
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call fcn.140060c88
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14005faf2
mov eax, 1
test byte [rcx + 0x1c], al
je 0x14005faf2
cmp byte [rcx + 0x19], 4
jb 0x14005faf2
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x54]
mov eax, dword [rsi + 0x110]
lea r8, [0x140153810]
mov r9, r14
mov dword [rsp + 0x20], eax
call fcn.140040370
test ebx, ebx
jne 0x14005fb08
mov rcx, rsi
call fcn.14005ceb0
mov edi, eax
test eax, eax
js 0x14005f8ed
mov r15, qword [rbp - 0x78]
lea r8, [r13 + 0xb0]
mov rcx, r15
lea rdx, [rsp + 0x74]
call fcn.1400cd674
mov ebx, eax
test eax, eax
je 0x14005fb81
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14005fb6b
mov eax, 1
test byte [rcx + 0x1c], al
je 0x14005fb6b
cmp byte [rcx + 0x19], 2
jb 0x14005fb6b
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x55]
mov eax, dword [rsp + 0x74]
lea r8, [0x140153810]
mov dword [rsp + 0x28], eax
mov r9, r15
mov dword [rsp + 0x20], ebx
call fcn.14003fe80
mov edx, dword [rsp + 0x74]
lea r8, [rbp - 0x70]
mov ecx, ebx
call fcn.140104330
mov edi, eax
jmp 0x14005f8ed
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14005fbc5
mov eax, 1
test byte [rcx + 0x1c], al
je 0x14005fbc5
cmp byte [rcx + 0x19], 4
mov rbx, qword [rbp - 0x68]
jb 0x14005fbc9
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x56]
mov r9, r15
mov qword [rsp + 0x20], rbx
lea r8, [0x140153810]
call fcn.140015238
jmp 0x14005fbc9
mov rbx, qword [rbp - 0x68]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
nop dword [rax + rax]
test byte [rsi + 0x148], 2
mov r15d, eax
jne 0x14005fd37
cmp byte [rsp + 0x70], 0
jne 0x14005fd37
lea rax, [rbp - 0x80]
xor r9d, r9d
mov qword [rsp + 0x28], rax
lea rcx, [rsi + 0x18]
and dword [rsp + 0x20], 0
xor r8d, r8d
mov rdx, rbx
call fcn.14011bf24
mov edi, eax
test eax, eax
jns 0x14005fc60
mov rcx, qword [0x140173048]
lea rbx, [0x140173048]
mov r15d, 1
cmp rcx, rbx
je 0x14005fc57
test byte [rcx + 0x1c], r15b
je 0x14005fc57
cmp byte [rcx + 0x19], 2
jb 0x14005fc57
mov r9, qword [rbp - 0x80]
lea edx, [r15 + 0x57]
mov rcx, qword [rcx + 0x10]
lea r8, [0x140153810]
mov dword [rsp + 0x20], eax
call fcn.1400151b8
lea r12, [rsi + 8]
jmp 0x14005f8fe
mov r10, qword [rbp - 0x80]
test r10, r10
jne 0x14005fc85
lea r8, str.wszMountedVhdPath___NULL
mov edx, 0x947
lea rcx, str.base_stor_blbengine_service_restore.cpp
call fcn.1400906e0
mov r10, qword [rbp - 0x80]
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14005fcc7
mov eax, 1
test byte [rcx + 0x1c], al
je 0x14005fcc7
cmp byte [rcx + 0x19], 4
jb 0x14005fcc7
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x58]
mov r9, rbx
mov qword [rsp + 0x20], r10
lea r8, [0x140153810]
call fcn.140015238
mov r10, qword [rbp - 0x80]
mov eax, dword [r13 + 0x4c]
lea rcx, [rsp + 0x74]
mov r8b, byte [rsi + 0x161]
mov ebx, 1
mov dl, byte [rsi + 0x160]
mov r9b, bl
mov qword [rsp + 0x68], rcx
lea rcx, [rbp - 0x38]
mov qword [rsp + 0x60], rcx
lea rcx, [rbp - 0x48]
mov qword [rsp + 0x58], rcx
lea rcx, [rbp - 0x50]
mov qword [rsp + 0x50], rcx
lea rcx, [rbp - 0x30]
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], rcx
mov rcx, r10
shr eax, 0xd
and al, bl
mov byte [rsp + 0x38], al
lea rax, [fcn.14005b080]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call fcn.1400cc868
jmp 0x14005fd62
lea rcx, [rsi + 0x18]
call fcn.140028f5c
mov r8b, byte [rbp - 0x60]
lea rcx, [rsp + 0x74]
mov qword [rsp + 0x28], rcx
mov r9, rax
mov rcx, qword [rbp - 0x78]
mov rdx, rbx
mov qword [rsp + 0x20], r12
call fcn.1400ccac0
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
nop dword [rax + rax]
mov r9d, dword [rsi + 0x16c]
sub r9d, r15d
add r9d, eax
mov dword [rsi + 0x16c], r9d
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
mov r15d, 1
cmp rcx, rax
je 0x14005fdcb
test byte [rcx + 0x1c], r15b
je 0x14005fdcb
cmp byte [rcx + 0x19], 4
jb 0x14005fdcb
mov rcx, qword [rcx + 0x10]
lea edx, [r15 + 0x59]
lea r8, [0x140153810]
call fcn.14000c47c
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
test ebx, ebx
je 0x14005fe2e
cmp rcx, rax
je 0x14005fe04
test byte [rcx + 0x1c], r15b
je 0x14005fe04
cmp byte [rcx + 0x19], 2
jb 0x14005fe04
mov edx, 0x5b
mov eax, dword [rsp + 0x74]
lea r8, [0x140153810]
mov rcx, qword [rcx + 0x10]
mov r9, r14
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.14003fe80
mov edx, dword [rsp + 0x74]
lea r8, [rbp - 0x70]
mov ecx, ebx
call fcn.140104330
mov edi, eax
lea r12, [rsi + 8]
lea rbx, [0x140173048]
jmp 0x14005f8fe
mov rcx, qword [0x140173048]
jmp 0x14005fe32
mov r15, qword [rbp - 0x68]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14005fe6f
mov eax, 1
test byte [rcx + 0x1c], al
je 0x14005fe6f
cmp byte [rcx + 0x19], 4
mov rbx, qword [rbp - 0x78]
jb 0x14005fe73
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x5b]
mov r9, rbx
mov qword [rsp + 0x20], r15
lea r8, [0x140153810]
call fcn.140015238
jmp 0x14005fe73
mov rbx, qword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
nop dword [rax + rax]
test byte [rsi + 0x148], 2
mov r15d, eax
jne 0x14005fefc
xor ecx, ecx
cmp byte [rsp + 0x70], cl
jne 0x14005fefc
movups xmm0, xmmword [0x14014fdf0]
lea rax, [rsp + 0x74]
mov r9, rbx
mov qword [rsp + 0x60], rax
lea rdx, [fcn.14005b080]
mov qword [rsp + 0x58], rcx
lea rax, [rbp - 0x48]
mov qword [rsp + 0x50], rax
mov r8, rsi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0xc0]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x20]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov rcx, qword [r12]
movdqu xmmword [rbp - 0x20], xmm0
call fcn.1400021f0
jmp 0x14005ff49
lea rcx, [rsi + 0x18]
call fcn.140028f5c
mov rdx, qword [rbp - 0x68]
lea rcx, [rsp + 0x74]
mov qword [rsp + 0x40], rcx
lea r8, [fcn.14005b080]
lea rcx, [rbp - 0x48]
mov r9, rsi
mov qword [rsp + 0x38], rcx
lea rcx, [rbp - 0x50]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0xc0]
mov qword [rsp + 0x28], rcx
mov rcx, qword [r12]
mov qword [rsp + 0x20], rax
call fcn.1400cd95c
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
nop dword [rax + rax]
sub eax, r15d
add dword [rsi + 0x170], eax
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
mov r15d, 1
cmp rcx, rax
je 0x14005ffa0
test byte [rcx + 0x1c], r15b
je 0x14005ffa0
cmp byte [rcx + 0x19], 4
jb 0x14005ffa0
mov r9d, dword [rsi + 0x16c]
lea edx, [r15 + 0x5c]
mov rcx, qword [rcx + 0x10]
lea r8, [0x140153810]
call fcn.14000c47c
mov r8, qword [rbp - 0x50]
mov rcx, rsi
mov rdx, qword [rbp - 0x48]
call fcn.140060c88
test ebx, ebx
je 0x140060033
cmp ebx, 1
je 0x14005ffee
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14005fe04
test byte [rcx + 0x1c], r15b
je 0x14005fe04
cmp byte [rcx + 0x19], 2
jb 0x14005fe04
mov edx, 0x5e
jmp 0x14005fde5
lea r12, [rsi + 8]
mov rax, qword [r12]
movabs r10, 0xb0e41f4d3e5c9b70
mov rax, qword [rax + 0x10]
mov rcx, r12
call qword [vtable.H_MA8HI.0]
test al, al
jne 0x140060029
lea r8, str.IsAborted__
mov edx, 0x999
lea rcx, str.base_stor_blbengine_service_restore.cpp
call fcn.1400906e0
mov edi, 0x80780167
jmp 0x14005fe19
mov eax, dword [rsi + 0x118]
mov r8, qword [rsi + 0x120]
imul rcx, rax, 0x6c
mov rax, qword [rbp + 0xc0]
sub rax, qword [rcx + r8 + 0x50]
jne 0x14006005e
mov rax, qword [rbp + 0xc8]
sub rax, qword [rcx + r8 + 0x58]
test rax, rax
je 0x1400600e9
cmp byte [rbp - 0x60], 0
je 0x1400600e9
mov rbx, qword [0x140173048]
lea rax, [0x140173048]
cmp rbx, rax
je 0x1400600f0
test byte [rbx + 0x1c], r15b
je 0x1400600f0
cmp byte [rbx + 0x19], 3
jb 0x1400600f0
mov eax, dword [rbp + 0xcc]
mov edx, 0x5f
mov r9d, dword [rcx + r8 + 0x50]
mov dword [rsp + 0x50], eax
mov eax, dword [rbp + 0xc8]
mov dword [rsp + 0x48], eax
mov eax, dword [rbp + 0xc4]
mov dword [rsp + 0x40], eax
mov eax, dword [rbp + 0xc0]
mov dword [rsp + 0x38], eax
mov eax, dword [rcx + r8 + 0x5c]
mov dword [rsp + 0x30], eax
mov eax, dword [rcx + r8 + 0x58]
mov dword [rsp + 0x28], eax
mov eax, dword [rcx + r8 + 0x54]
lea r8, [0x140153810]
mov rcx, qword [rbx + 0x10]
mov dword [rsp + 0x20], eax
call fcn.140061480
mov rbx, qword [0x140173048]
mov eax, dword [rsi + 0x118]
inc eax
cmp eax, dword [rsi + 0x11c]
je 0x14006012b
mov r9d, dword [r13 + 0x4c]
lea r8, [r13 + 0x3c]
imul rdx, rax, 0x6c
mov rax, qword [rsi + 0x120]
lea rcx, [rax + 0x2c]
add rcx, rdx
mov edx, dword [rdx + rax + 0x3c]
call fcn.140094a44
test al, al
jne 0x1400603b4
lea rax, [0x140173048]
cmp rbx, rax
je 0x140060165
test byte [rbx + 0x1c], r15b
je 0x140060165
cmp byte [rbx + 0x19], 4
jb 0x140060165
mov eax, dword [rsi + 0x110]
lea r8, [0x140153810]
mov rcx, qword [rbx + 0x10]
mov edx, 0x60
mov r9, r14
mov dword [rsp + 0x20], eax
call fcn.140040370
test byte [rsi + 0x148], 2
jne 0x140060175
cmp byte [rsp + 0x70], 0
je 0x140060181
mov rdx, qword [r12]
mov rcx, r13
call fcn.140060724
cmp qword [r12], 0
jne 0x1400601a0
lea r8, str.m_pCurrentRestoreContext
mov edx, 0x9cd
lea rcx, str.base_stor_blbengine_service_restore.cpp
call fcn.1400906e0
mov rcx, qword [r12]
call fcn.1400cb870
and qword [r12], 0
test byte [r13 + 0x4c], r15b
jne 0x14006038a
cmp byte [rsi + 0x180], 0
jne 0x1400602fb
mov r15, qword [rbp - 0x78]
lea rdx, [r13 + 0xb0]
mov rcx, r15
mov byte [rsp + 0x70], 0
lea r9, [rsp + 0x70]
lea r8, [rsp + 0x74]
call fcn.1400cc30c
mov ebx, eax
test eax, eax
je 0x140060227
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
mov r15d, 1
cmp rcx, rax
je 0x14005fe04
test byte [rcx + 0x1c], r15b
je 0x14005fe04
cmp byte [rcx + 0x19], 2
jb 0x14005fe04
lea edx, [r15 + 0x60]
jmp 0x14005fde5
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
mov bl, byte [rsp + 0x70]
cmp rcx, rax
mov eax, 1
je 0x140060281
test byte [rcx + 0x1c], al
je 0x140060281
cmp byte [rcx + 0x19], 4
jb 0x140060281
mov rcx, qword [rcx + 0x10]
lea rax, [0x1401536a0]
test bl, bl
mov qword [rsp + 0x20], r15
lea r9, [0x1401529d8]
mov edx, 0x62
cmove r9, rax
lea r8, [0x140153810]
call fcn.140015238
mov eax, 1
test bl, bl
je 0x140060335
mov r8b, al
mov edx, 0xc
mov rcx, rsi
call fcn.140060a4c
mov rdx, r15
mov rcx, r13
call fcn.14005f3dc
mov edi, eax
test eax, eax
jns 0x140060335
mov rcx, qword [0x140173048]
lea rbx, [0x140173048]
mov r15d, 1
cmp rcx, rbx
je 0x14005fc57
test byte [rcx + 0x1c], r15b
je 0x14005fc57
cmp byte [rcx + 0x19], 2
jb 0x14005fc57
mov rcx, qword [rcx + 0x10]
lea edx, [r15 + 0x62]
mov r9d, eax
lea r8, [0x140153810]
call fcn.14000c354
jmp 0x14005fc57
mov rcx, qword [0x140173048]
lea rbx, [0x140173048]
cmp rcx, rbx
je 0x14006032f
test byte [rcx + 0x1c], r15b
je 0x14006032f
cmp byte [rcx + 0x19], 4
jb 0x14006032f
mov rcx, qword [rcx + 0x10]
lea r8, [0x140153810]
mov edx, 0x64
call fcn.14000c328
mov r15, qword [rbp - 0x78]
jmp 0x14006033c
lea rbx, [0x140173048]
mov rcx, r15
call fcn.1401021c0
mov edi, eax
test eax, eax
jns 0x140060399
mov rcx, qword [0x140173048]
cmp rcx, rbx
je 0x140060380
mov eax, 1
test byte [rcx + 0x1c], al
je 0x140060380
cmp byte [rcx + 0x19], 2
jb 0x140060380
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x64]
mov r9, r15
mov dword [rsp + 0x20], edi
lea r8, [0x140153810]
call fcn.1400151b8
mov edi, 0x80780124
jmp 0x14005fa4d
mov edx, 9
mov rcx, r13
call fcn.140060b00
jmp 0x14006039f
mov r15d, 1
lea r12, [rsi + 8]
mov rcx, r12
lea rdx, [rsi + 0x150]
call fcn.14002f0d4
jmp 0x1400603b8
lea r12, [rsi + 8]
lea rdx, [r13 + 0x10]
mov rcx, r12
call fcn.14002f0d4
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x14005f98c
test byte [rsi + 0x148], 2
je 0x1400603f6
lea r8, str._CHUNKED_m_ulFeatures_
mov edx, 0xa1b
lea rcx, str.base_stor_blbengine_service_restore.cpp
call fcn.1400906e0
mov rcx, qword [rbp - 0x80]
call fcn.140119f00
mov edi, eax
test eax, eax
jns 0x14006044e
mov rcx, qword [0x140173048]
lea rbx, [0x140173048]
cmp rcx, rbx
je 0x14005f8fe
test byte [rcx + 0x1c], r15b
je 0x14005f8fe
cmp byte [rcx + 0x19], 2
jb 0x14005f8fe
mov r9, qword [rbp - 0x80]
lea r8, [0x140153810]
mov rcx, qword [rcx + 0x10]
mov edx, 0x66
mov dword [rsp + 0x20], eax
call fcn.1400151b8
jmp 0x14005f8fe
mov rcx, qword [0x140173048]
lea rbx, [0x140173048]
cmp rcx, rbx
je 0x14005f8fe
test byte [rcx + 0x1c], r15b
je 0x14005f8fe
cmp byte [rcx + 0x19], 4
jb 0x14005f8fe
mov r9, qword [rbp - 0x80]
lea r8, [0x140153810]
mov rcx, qword [rcx + 0x10]
mov edx, 0x67
call fcn.140015150
jmp 0x14005f8fe
lea rbx, [0x140173048]
mov rcx, qword [rsi + 0x158]
test rcx, rcx
je 0x1400604b7
call fcn.1400cb870
and qword [rsi + 0x158], 0
mov r8d, dword [rbp - 0x70]
mov edx, edi
mov rcx, r13
call fcn.1400606b0
mov rcx, qword [0x140173048]
cmp rcx, rbx
je 0x140060514
test byte [rcx + 0x1c], r15b
je 0x140060514
cmp byte [rcx + 0x19], 2
jb 0x140060514
mov rcx, qword [rcx + 0x10]
lea r9, [0x1401536c8]
test r14, r14
mov dword [rsp + 0x20], edi
mov edx, 0x6a
lea r8, [0x140153810]
cmovne r9, r14
call fcn.1400151b8
jmp 0x14006050d
lea rbx, [0x140173048]
mov rcx, qword [0x140173048]
mov rax, qword [rbp - 0x68]
test rax, rax
je 0x140060533
mov rcx, rax
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov rcx, qword [0x140173048]
mov rax, qword [rbp - 0x78]
test rax, rax
je 0x140060552
mov rcx, rax
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov rcx, qword [0x140173048]
test r14, r14
je 0x14006056d
mov rcx, r14
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov rcx, qword [0x140173048]
mov rax, qword [rbp - 0x40]
test rax, rax
je 0x14006058c
mov rcx, rax
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov rcx, qword [0x140173048]
cmp byte [rsp + 0x78], 0
je 0x1400605a3
lea rcx, [rbp - 0x10]
call fcn.1400a30ac
mov rcx, qword [0x140173048]
cmp rcx, rbx
je 0x1400605c9
test byte [rcx + 0x1c], r15b
je 0x1400605c9
cmp byte [rcx + 0x19], 4
jb 0x1400605c9
mov rcx, qword [rcx + 0x10]
lea r8, [0x140153810]
mov edx, 0x6b
call fcn.14000c328
mov eax, edi
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.140007410
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret