Function at 0x140093244
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov byte [rax + 0x18], r8b
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xd0
mov qword [rax - 0x50], 0xfffffffffffffffe
movaps xmmword [rax - 0x48], xmm6
mov rsi, rdx
mov rdi, rcx
xor ebx, ebx
mov dword [rsp + 0x34], ebx
mov dword [rsp + 0x128], ebx
mov r12d, ebx
mov qword [rsp + 0x50], rbx
xorps xmm0, xmm0
movdqu xmmword [rax - 0x70], xmm0
mov qword [rax - 0x60], rbx
mov qword [rax - 0x58], rbx
mov r13d, ebx
mov dword [rsp + 0x38], ebx
test rdx, rdx
jne 0x1400932c1
lea r8, str.pBackupSet
mov edx, 0x586
lea rcx, str.base_stor_blbcatalogcatalog.cpp
call fcn.140081b60
nop
add rdi, 0x2a8
mov dword [rsp + 0x80], 6
movups xmm0, xmmword [rsi]
movdqu xmmword [rsp + 0x88], xmm0
cmp dword [rdi + 0x90], ebx
jne 0x1400932f0
lea rcx, [rdi + 0x60]
call fcn.1400a83a0
lea r15, [rdi + 0x60]
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x80]
mov esi, 1
mov r8d, esi
xor edx, edx
mov rcx, r15
call fcn.1400a89d4
mov r14d, eax
mov dword [rsp + 0x68], eax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x80]
mov r8d, esi
mov edx, esi
mov rcx, r15
call fcn.1400a89d4
mov esi, eax
mov dword [rsp + 0x6c], eax
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x58], r15
inc eax
cmp eax, r14d
jge 0x14009336d
lea r8, str.result.m_high__1___result.m_low
mov edx, 0x596
lea rcx, str.base_stor_blbcatalogcatalog.cpp
call fcn.140081b60
sub esi, r14d
add esi, 1
jne 0x140093389
mov rax, qword [rsp + 0x118]
mov dword [rax + 0x50], ebx
mov qword [rax + 0x58], rbx
jmp 0x140093917
mov r14d, esi
mov dword [rsp + 0x128], esi
mov r15b, byte [rsp + 0x120]
test r15b, r15b
je 0x140093466
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x98]
call fcn.1400a8344
mov r15d, ebx
or r13d, 0xffffffff
cmp r15d, esi
jae 0x14009346c
lea rcx, [rsp + 0x98]
call fcn.1400a827c
cmp eax, r13d
jne 0x140093402
mov rcx, qword [rsp + 0x110]
mov eax, dword [rcx + 0xc]
neg eax
sbb ecx, ecx
add ecx, 0x80780002
mov dword [rsp + 0x3c], ecx
lea rdx, [0x1401694c8]
lea rcx, [rsp + 0x3c]
call sub.msvcrt.dll__CxxThrowException
mov edx, eax
mov rcx, rdi
call fcn.1400a5d3c
mov rdx, rax
mov rcx, rdi
call fcn.1400a76a0
mov r14d, eax
test eax, eax
je 0x14009343b
cmp eax, 7
je 0x140093441
lea r8, str.eReason___EReasonForExclusion_eNone__eReason___EReasonForExclusion_eSkippedInSnapshot
mov edx, 0x5b9
lea rcx, str.base_stor_blbcatalogcatalog.cpp
call fcn.140081b60
cmp r14d, 7
jne 0x140093456
mov r14d, dword [rsp + 0x128]
add r14d, r13d
mov dword [rsp + 0x128], r14d
jmp 0x14009345e
mov r14d, dword [rsp + 0x128]
inc r15d
jmp 0x1400933bd
or r13d, 0xffffffff
jmp 0x140093474
mov r15b, byte [rsp + 0x120]
mov eax, r14d
imul rcx, rax, 0x88
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov r12, rax
mov qword [rsp + 0x50], rax
test rax, rax
jne 0x1400934e5
lea rax, [0x14016d090]
mov rcx, qword [0x14016d090]
cmp rcx, rax
je 0x1400934cc
test byte [rcx + 0x1c], 2
je 0x1400934cc
cmp byte [rcx + 0x19], 1
jb 0x1400934cc
imul r9d, r14d, 0x88
lea edx, [r12 + 0x20]
lea r8, [0x14014c150]
mov rcx, qword [rcx + 0x10]
call fcn.140004988
mov dword [rsp + 0x40], 0x8007000e
lea rdx, [0x1401694c8]
lea rcx, [rsp + 0x40]
call sub.msvcrt.dll__CxxThrowException
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x98]
call fcn.1400a8344
mov eax, 1
test al, al
je 0x14009390a
lea rcx, [rsp + 0x98]
call fcn.1400a827c
cmp eax, r13d
je 0x14009390a
mov edx, eax
mov rcx, rdi
call fcn.1400a5d3c
mov rsi, rax
mov rdx, rax
mov rcx, rdi
call fcn.1400a76a0
test r15b, r15b
je 0x14009353c
cmp eax, 7
je 0x1400934f7
mov ecx, dword [rsp + 0x34]
imul r14, rcx, 0x88
add r14, r12
mov r13d, 1
add ecx, r13d
mov dword [rsp + 0x34], ecx
xor r9d, r9d
mov r8, rsi
lea rdx, [rsp + 0x80]
mov rcx, rdi
call fcn.1400a5954
movups xmm0, xmmword [rsp + 0x80]
movdqu xmmword [r14], xmm0
mov r9d, r13d
mov r8, rsi
lea rdx, [rsp + 0x58]
mov rcx, rdi
call fcn.1400a5954
movups xmm0, xmmword [rsp + 0x58]
movdqu xmmword [r14 + 0x10], xmm0
test rsi, rsi
jne 0x1400935b5
lea r8, str.pRow___NULL
mov edx, 0x209
lea rcx, str.base_stor_blbcatalogcmpnttbl.cpp
call fcn.140081b60
movups xmm6, xmmword [0x140156cf8]
lea r9, [rsp + 0x44]
mov r8d, 7
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5854
mov r15, rax
test rax, rax
je 0x1400935fd
cmp dword [rsp + 0x44], 0x10
je 0x1400935f9
lea r8, str.cb__sizeof_GUID_
mov edx, 0x218
lea rcx, str.base_stor_blbcatalogcmpnttbl.cpp
call fcn.140081b60
movups xmm6, xmmword [r15]
movdqu xmmword [r14 + 0x20], xmm6
mov r8d, 2
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5764
mov rdx, rax
call fcn.1400941e8
mov qword [r14 + 0x30], rax
mov r8d, 3
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5764
mov rdx, rax
call fcn.1400941e8
mov qword [r14 + 0x38], rax
mov r15d, 0xa
mov r8d, r15d
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5764
mov rdx, rax
call fcn.1400941e8
mov qword [r14 + 0x48], rax
mov r8d, r15d
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5764
mov rdx, rax
call fcn.1400941e8
mov qword [r14 + 0x40], rax
lea r8d, [r15 + 1]
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5bfc
cmp rax, 0xffffffffffffffff
cmove rax, rbx
mov qword [r14 + 0x50], rax
lea r8d, [r15 - 6]
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5764
mov rdx, rax
call fcn.1400941e8
mov qword [r14 + 0x58], rax
test rsi, rsi
jne 0x1400936ca
lea r8, str.pRow___NULL
mov edx, 0x13c
lea rcx, str.base_stor_blbcatalogcmpnttbl.cpp
call fcn.140081b60
mov dword [rsp + 0x30], ebx
lea r9, [rsp + 0x30]
mov r8d, 5
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5854
mov r15d, dword [rsp + 0x30]
shr r15d, 4
mov dword [r14 + 0x60], r15d
mov ecx, r15d
shl rcx, 4
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov qword [r14 + 0x68], rax
test rax, rax
jne 0x14009375b
lea rax, [0x14016d090]
mov rcx, qword [0x14016d090]
cmp rcx, rax
je 0x140093742
test byte [rcx + 0x1c], 2
je 0x140093742
cmp byte [rcx + 0x19], r13b
jb 0x140093742
shl r15d, 4
mov edx, 0x21
mov r9d, r15d
lea r8, [0x14014c150]
mov rcx, qword [rcx + 0x10]
call fcn.140004988
mov dword [rsp + 0x48], 0x8007000e
lea rdx, [0x1401694c8]
lea rcx, [rsp + 0x48]
call sub.msvcrt.dll__CxxThrowException
mov r13d, ebx
cmp r13d, r15d
jae 0x140093817
test rsi, rsi
jne 0x140093784
lea r8, str.pRow___NULL
mov edx, 0x166
lea rcx, str.base_stor_blbcatalogcmpnttbl.cpp
call fcn.140081b60
mov dword [rsp + 0x30], ebx
lea r9, [rsp + 0x30]
mov r8d, 5
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5854
mov r8, rax
mov qword [rsp + 0x78], rax
mov edx, dword [rsp + 0x30]
shr edx, 4
cmp r13d, edx
jb 0x1400937cf
lea r8, str.iVolume___cb_sizeof_GUID_
mov edx, 0x170
lea rcx, str.base_stor_blbcatalogcmpnttbl.cpp
call fcn.140081b60
mov r8, qword [rsp + 0x78]
test r8, r8
jne 0x1400937fb
mov rcx, rdi
call fcn.1400a5348
neg eax
sbb ecx, ecx
add ecx, 0x80780002
mov dword [rsp + 0x4c], ecx
lea rdx, [0x1401694c8]
lea rcx, [rsp + 0x4c]
call sub.msvcrt.dll__CxxThrowException
mov ecx, r13d
add rcx, rcx
mov rax, qword [r14 + 0x68]
movups xmm0, xmmword [r8 + rcx*8]
movdqu xmmword [rax + rcx*8], xmm0
inc r13d
jmp 0x14009375e
test rsi, rsi
jne 0x140093834
lea r8, str.pRow___NULL
mov edx, 0x18d
lea rcx, str.base_stor_blbcatalogcmpnttbl.cpp
call fcn.140081b60
mov r8d, 6
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5b30
test eax, eax
setne al
mov byte [r14 + 0x70], al
test rsi, rsi
jne 0x14009386b
lea r8, str.pRow___NULL
mov edx, 0x1ad
lea rcx, str.base_stor_blbcatalogcmpnttbl.cpp
call fcn.140081b60
mov r8d, 8
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5b30
test eax, eax
setne al
mov byte [r14 + 0x71], al
test rsi, rsi
jne 0x1400938a2
lea r8, str.pRow___NULL
mov edx, 0x1ec
lea rcx, str.base_stor_blbcatalogcmpnttbl.cpp
call fcn.140081b60
mov r8d, 0xd
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5b30
test eax, eax
setne cl
movzx r8d, cl
or r13d, 0xffffffff
cmp eax, r13d
cmove r8d, ebx
mov byte [r14 + 0x84], r8b
mov rdx, rsi
mov rcx, rdi
call fcn.1400a76a0
mov dword [r14 + 0x80], eax
mov r8d, 9
mov rdx, rsi
mov rcx, rdi
call fcn.1400a5764
mov rdx, rax
call fcn.1400941e8
mov qword [r14 + 0x78], rax
mov r15b, byte [rsp + 0x120]
jmp 0x1400934f7
mov rax, qword [rsp + 0x118]
mov r13d, dword [rsp + 0x38]
mov edx, dword [rsp + 0x34]
cmp edx, dword [rsp + 0x128]
je 0x140093955
lea r8, str.cRestorableComponentCount__cValidComponents
mov edx, 0x65c
lea rcx, str.base_stor_blbcatalogcatalog.cpp
call fcn.140081b60
mov rcx, qword [rsp + 0x110]
mov eax, dword [rcx + 0xc]
neg eax
sbb r13d, r13d
add r13d, 0x80780002
jmp 0x14009396b
mov dword [rax + 0x50], edx
mov qword [rax + 0x58], r12
jmp 0x14009397f
test r12, r12
je 0x14009397f
lea rdx, [rsp + 0x34]
lea rcx, [rsp + 0x50]
call fcn.140092fb4
lea rax, [0x14016d090]
mov rcx, qword [0x14016d090]
cmp rcx, rax
je 0x1400939b6
test byte [rcx + 0x1c], 2
je 0x1400939b6
cmp byte [rcx + 0x19], 4
jb 0x1400939b6
mov edx, 0x22
mov r9d, r13d
lea r8, [0x14014c150]
mov rcx, qword [rcx + 0x10]
call fcn.140004988
mov eax, r13d
movaps xmm6, xmmword [rsp + 0xc0]
add rsp, 0xd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret