Function at 0x14012026c
Capabilities:
Encode data using base64
Get disk size
Get system information on windows

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1e8]
sub rsp, 0x2b0
mov qword [rbp + 0x78], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov rax, qword [0x14017b608]
xor rax, rsp
mov qword [rbp + 0x1a0], rax
mov dword [rbp - 0x6c], r9d
mov r14, r8
mov rbx, rdx
mov r13, rcx
mov qword [rbp + 0x60], rcx
mov rax, qword [rbp + 0x210]
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x220]
mov qword [rbp + 0x48], rax
mov rax, qword [rbp + 0x228]
mov qword [rbp + 0x50], rax
mov r12, qword [rbp + 0x230]
mov qword [rbp - 0x50], r12
xor edi, edi
mov r15d, edi
mov dword [rbp - 0x70], edi
lea rax, [0x14017b048]
mov rcx, qword [0x14017b048]
cmp rcx, rax
je 0x14012031c
test byte [rcx + 0x1c], 1
je 0x14012031c
cmp byte [rcx + 0x19], 4
jb 0x14012031c
lea edx, [rdi + 0x29]
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140004c10
mov qword [rsp + 0x70], rdi
mov qword [rbp + 0x28], rdi
mov qword [rsp + 0x68], rdi
mov qword [rbp + 0x20], rdi
mov dword [rbp - 0x58], edi
mov qword [rbp + 0x30], rdi
mov qword [rbp + 0x40], rdi
mov qword [rbp + 0x38], rdi
mov qword [rbp - 0x48], rdi
mov dword [rbp - 0x68], edi
mov qword [rbp - 0x60], rdi
mov dword [rsp + 0x7c], edi
mov rsi, rdi
mov qword [rsp + 0x60], rdi
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x28], rdi
mov dword [rbp - 0x20], 0x11
mov dword [rbp - 0x1c], 0x3f400000
mov dword [rbp - 0x18], 0x3e800000
mov dword [rbp - 0x14], 0x40100000
mov eax, 0xffffffff
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdi
mov dword [rbp], edi
mov dword [rbp + 4], 0xa
mov qword [rbp + 8], rdi
mov qword [rbp + 0x10], rdi
mov dword [rbp - 0x1c], 0x3f400000
mov dword [rbp - 0x18], 0x3e800000
mov dword [rbp - 0x14], 0x40100000
lea rcx, [rbp - 0x30]
call fcn.14003b7bc
nop
mov byte [rsp + 0x79], dil
mov byte [rbp - 0x80], dil
mov byte [rbp - 0x7f], dil
lea rcx, [rbp - 0x7f]
call fcn.140092088
mov edi, eax
test eax, eax
js 0x140120407
mov rcx, r12
call fcn.140102894
movups xmm0, xmmword [rbx]
movdqu xmmword [r12], xmm0
mov ebx, 0xa8
mov ecx, ebx
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
nop dword [rax + rax]
mov rsi, rax
test rax, rax
jne 0x140120691
mov edi, 0x8007000e
mov r13, qword [rsp + 0x68]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x70]
mov rcx, qword [rbp + 0x50]
call fcn.1400fe164
lea rcx, [rbp - 0x30]
call fcn.14010d65c
mov qword [rbp - 0x58], rax
xor r12d, r12d
test rax, rax
je 0x140120467
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x30]
call fcn.14010d6ac
mov rbx, qword [rax + 0x10]
mov rcx, rbx
call fcn.1401423e4
test rbx, rbx
je 0x140120461
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
cmp qword [rbp - 0x58], r12
jne 0x140120434
test r13, r13
je 0x14012047b
mov rcx, r13
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov rax, qword [rbp + 0x20]
xor r13d, r13d
test rax, rax
je 0x140120496
mov rcx, rax
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
test r15, r15
je 0x1401204aa
mov rcx, r15
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x1401204bf
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
cmp qword [rbp - 0x48], r13
je 0x1401204d2
lea rdx, [rbp - 0x68]
lea rcx, [rbp - 0x48]
call fcn.140141df4
cmp qword [rbp - 0x60], r13
je 0x1401204e6
lea rdx, [rsp + 0x7c]
lea rcx, [rbp - 0x60]
call fcn.140141df4
test rsi, rsi
je 0x140120502
mov rcx, rsi
call fcn.140141ff8
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
test r14, r14
je 0x140120517
mov rcx, r14
call fcn.140105168
mov rcx, r14
call fcn.14014b728
test edi, edi
jns 0x14012055b
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140120552
test byte [rcx + 0x1c], 1
je 0x140120552
cmp byte [rcx + 0x19], 2
jb 0x140120552
mov edx, 0x46
mov r9d, edi
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140004c3c
mov rcx, qword [rbp - 0x50]
call fcn.140102894
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140120590
test byte [rcx + 0x1c], 1
je 0x140120590
cmp byte [rcx + 0x19], 4
jb 0x140120590
mov edx, 0x47
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140004c10
nop
mov r14d, dword [rbp]
inc r14d
mov dword [rbp], r14d
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x140122022
mov r12d, r13d
mov edx, dword [rbp - 0x20]
test edx, edx
je 0x140122022
mov rsi, qword [rbp + 8]
mov r15, qword [rbp - 0x28]
xor ebx, ebx
mov eax, r12d
mov r13, qword [rcx + rax*8]
test r13, r13
je 0x14012067d
mov rdx, r13
lea rcx, [r13 + 0x18]
mov r13, qword [rcx]
mov rax, qword [rbp + 0x10]
mov qword [rcx], rax
mov qword [rbp + 0x10], rdx
test r15, r15
jne 0x140120602
lea r8, str.m_nElements___0
mov edx, 0xa19
lea rcx, str.onecoreexternal_sdkinc_atlmfc_atlcoll.h
call fcn.140087b08
dec r15
mov qword [rbp - 0x28], r15
cmp r15, qword [rbp - 8]
jae 0x140120637
test r14d, r14d
jne 0x140120637
mov rdx, r15
lea rcx, [rbp - 0x30]
call fcn.14003b524
mov edx, eax
lea rcx, [rbp - 0x30]
call fcn.14003b404
mov rsi, qword [rbp + 8]
mov r14d, dword [rbp]
mov r15, qword [rbp - 0x28]
test r15, r15
jne 0x14012066d
mov qword [rbp + 0x10], rbx
test rsi, rsi
je 0x14012066d
xor r14d, r14d
mov rbx, qword [rsi]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_free]
nop dword [rax + rax]
mov rsi, rbx
test rbx, rbx
jne 0x140120648
mov rsi, r14
mov qword [rbp + 8], r14
mov r14d, dword [rbp]
test r13, r13
jne 0x1401205d0
mov edx, dword [rbp - 0x20]
mov rcx, qword [rbp - 0x30]
inc r12d
cmp r12d, edx
jb 0x1401205c0
xor r13d, r13d
jmp 0x140122026
mov r8, rbx
xor edx, edx
mov rcx, rsi
call sub.msvcrt.dll_memset
mov rdx, rsi
mov rcx, r14
call fcn.140143124
mov edi, eax
xor r14d, r14d
test eax, eax
js 0x140120704
lea rdx, [r12 + 0x10]
xor r8d, r8d
mov rcx, qword [rsi]
call fcn.1400889dc
mov edi, eax
test eax, eax
js 0x140120704
mov eax, dword [rsi + 8]
mov dword [r12 + 0x1c], eax
mov al, byte [rsi + 0x6b]
mov byte [r12 + 0x73], al
mov eax, dword [rsi + 0x70]
mov dword [r12 + 0x74], eax
mov al, byte [rsi + 0x74]
mov byte [r12 + 0x78], al
mov eax, dword [rsi + 0xa0]
mov dword [r12 + 0x88], eax
mov rcx, qword [rsi + 0x10]
test rcx, rcx
jne 0x14012070e
mov edi, 0x8078000c
mov r13, qword [rsp + 0x68]
jmp 0x140120411
lea rdx, [r12 + 0x20]
xor r8d, r8d
call fcn.1400889dc
mov edi, eax
test eax, eax
js 0x140120704
mov ecx, 0x20
call fcn.14014b734
mov qword [rsp + 0x60], rax
mov qword [rbp + 0xb0], rax
test rax, rax
je 0x140120764
mov qword [rax + 8], r14
mov qword [rax], r14
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x14012076c
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140005bb3.0]
mov rax, qword [rsp + 0x60]
mov qword [rax + 8], r14
jmp 0x14012076c
mov rax, r14
mov qword [rsp + 0x60], rax
test rax, rax
je 0x140120402
mov rax, qword [rsi + 0x50]
test rax, rax
je 0x140120b9b
cmp qword [rsi + 0x58], r14
je 0x140120b9b
cmp qword [rsi + 0x60], r14
je 0x140120b9b
mov rdx, rax
mov rcx, qword [0x14017b048]
lea rbx, [0x14017b048]
cmp rcx, rbx
je 0x1401207dc
test byte [rcx + 0x1c], 1
je 0x1401207dc
cmp byte [rcx + 0x19], 4
jb 0x1401207dc
mov edx, 0x2a
mov r9d, dword [rsi + 0x48]
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140004c3c
mov rdx, qword [rsi + 0x50]
mov rcx, qword [0x14017b048]
test rdx, rdx
je 0x140120b6c
cmp qword [rsi + 0x58], r14
je 0x140120b6c
cmp qword [rsi + 0x60], r14
je 0x140120b6c
cmp qword [rsi + 0x80], r14
je 0x140120821
lea r8, str.pTemplate__m_rgFileSpecs__NULL
mov edx, 0x35a
lea rcx, str.base_stor_blbengine_blbengutils_blbcatalogutils.cpp
call fcn.140087b08
mov rcx, qword [0x14017b048]
cmp dword [rsi + 0x78], r14d
je 0x140120846
lea r8, str.pTemplate__m_cFileSpecs__0
mov edx, 0x35b
lea rcx, str.base_stor_blbengine_blbengutils_blbcatalogutils.cpp
call fcn.140087b08
mov rcx, qword [0x14017b048]
cmp qword [rsi + 0x80], r14
jne 0x140120b2a
cmp dword [rsi + 0x78], r14d
jne 0x140120b2a
mov rax, qword [r13]
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x68]
mov rcx, r13
mov rax, qword [rax + 0x40]
call qword [case.0x140005bb3.0]
mov edi, eax
xor r13d, r13d
test eax, eax
js 0x140120407
mov eax, dword [rsi + 0x48]
mov dword [rsp + 0x7c], eax
mov ecx, eax
shl rcx, 7
mov edi, 0xffffffff
cmp rcx, rdi
ja 0x140120b20
mov ebx, ecx
mov ecx, ecx
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x60], rax
test rax, rax
je 0x140120402
mov r8d, ebx
xor edx, edx
mov rcx, rax
call sub.msvcrt.dll_memset
mov r8d, r13d
mov dword [rbp - 0x78], r13d
cmp dword [rsi + 0x48], r13d
jbe 0x140120931
mov edx, dword [rbp - 0x68]
mov r12d, r13d
test edx, edx
je 0x140120917
mov r13d, r8d
mov r9d, r8d
shl r9, 4
add r9, qword [rsi + 0x50]
mov edi, r12d
shl rdi, 7
mov rcx, qword [rbp - 0x48]
mov rax, qword [rdi + rcx]
cmp rax, qword [r9]
jne 0x14012090c
mov rax, qword [rdi + rcx + 8]
cmp rax, qword [r9 + 8]
je 0x140120941
inc r12d
cmp r12d, edx
jb 0x1401208ed
xor r13d, r13d
cmp r12d, edx
je 0x140120a9a
inc r8d
mov dword [rbp - 0x78], r8d
cmp r8d, dword [rsi + 0x48]
jb 0x1401208d8
mov r12, qword [rbp - 0x50]
mov edx, dword [rsp + 0x7c]
lea r15, [0x14017b048]
jmp 0x140120d90
mov rax, qword [0x14017b048]
lea rcx, [0x14017b048]
cmp rax, rcx
je 0x1401209a2
test byte [rax + 0x1c], 1
je 0x1401209a2
cmp byte [rax + 0x19], 4
jb 0x1401209a2
mov rdx, r9
lea rcx, [rbp + 0x68]
call fcn.14001020c
nop
or r15d, 1
mov dword [rbp - 0x70], r15d
mov r9, qword [rax]
mov rax, qword [rsi + 0x60]
movzx ecx, byte [rax + r13]
mov edx, 0x2d
mov dword [rsp + 0x20], ecx
lea r8, [0x140164450]
mov rcx, qword [0x14017b048]
mov rcx, qword [rcx + 0x10]
call fcn.140005d40
nop
test r15b, 1
je 0x1401209c0
and r15d, 0xfffffffe
mov dword [rbp - 0x70], r15d
mov rcx, qword [rbp + 0x68]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop dword [rax + rax]
mov rbx, r13
shl rbx, 7
mov rdx, qword [rbp - 0x60]
add rdx, rbx
mov rcx, qword [rbp - 0x48]
add rcx, rdi
call fcn.14014288c
mov edi, eax
xor edx, edx
test eax, eax
js 0x140120407
mov r14, qword [rbp - 0x60]
add r14, rbx
mov qword [rbp + 0xb0], r14
mov rax, qword [rsi + 0x60]
mov cl, byte [rax + r13]
mov byte [r14 + 0x54], cl
test cl, cl
je 0x140120a8b
mov dword [rbp - 0x40], edx
mov bl, byte [r14 + 0x58]
and bl, 1
mov rcx, qword [r14 + 0x30]
call fcn.14008c944
mov r8d, dword [r14 + 0x58]
shr r8d, 9
and r8b, 1
lea rcx, [rbp - 0x40]
mov qword [rsp + 0x38], rcx
mov ecx, dword [r14 + 0x68]
mov dword [rsp + 0x30], ecx
mov rcx, qword [r14 + 0x70]
mov qword [rsp + 0x28], rcx
mov byte [rsp + 0x20], al
mov r9b, bl
mov dl, byte [rsi + 0x74]
mov cl, byte [rsi + 0x6c]
call fcn.14010a238
mov edi, eax
test eax, eax
js 0x140120407
mov eax, dword [rbp - 0x40]
or dword [r14 + 0x58], eax
mov ecx, dword [r14 + 0x58]
mov rax, qword [rsi + 0x58]
mov dword [rax + r13*4], ecx
lea rcx, [rbp + 0xb0]
call fcn.14010a410
mov edi, eax
xor r13d, r13d
test eax, eax
js 0x140120407
jmp 0x140120a8e
xor r13d, r13d
mov edx, dword [rbp - 0x68]
mov r8d, dword [rbp - 0x78]
jmp 0x140120917
mov edi, 0x80780089
mov rax, qword [0x14017b048]
lea rcx, [0x14017b048]
cmp rax, rcx
je 0x140120afe
test byte [rax + 0x1c], 1
je 0x140120afe
cmp byte [rax + 0x19], 2
jb 0x140120afe
mov edx, r8d
shl rdx, 4
add rdx, qword [rsi + 0x50]
lea rcx, [rbp + 0xb0]
call fcn.14001020c
nop
or r15d, 2
mov dword [rbp - 0x70], r15d
mov edx, 0x2e
mov r9, qword [rax]
lea r8, [0x140164450]
mov rcx, qword [0x14017b048]
mov rcx, qword [rcx + 0x10]
call fcn.140005cd0
nop
test r15b, 2
je 0x140120407
mov rcx, qword [rbp + 0xb0]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop dword [rax + rax]
jmp 0x140120407
mov edi, 0x80070216
jmp 0x140120407
mov edi, 0x80070057
cmp rcx, rbx
je 0x140120407
test byte [rcx + 0x1c], 1
je 0x140120407
cmp byte [rcx + 0x19], 2
jb 0x140120407
mov edx, 0x2c
mov r9d, 0x80070057
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140004c3c
jmp 0x140120407
mov edi, 0x80004003
cmp rcx, rbx
je 0x140120407
test byte [rcx + 0x1c], 1
je 0x140120407
cmp byte [rcx + 0x19], 2
jb 0x140120407
mov edx, 0x2b
mov r9d, 0x80004003
jmp 0x140120b57
mov rcx, qword [0x14017b048]
lea r15, [0x14017b048]
cmp rcx, r15
je 0x140120bd3
test byte [rcx + 0x1c], 1
je 0x140120bd3
cmp byte [rcx + 0x19], 4
jb 0x140120bd3
mov edx, 0x2f
mov r9d, dword [rsi + 0x78]
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140004c3c
mov rax, qword [r13]
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x68]
mov rcx, r13
mov rax, qword [rax + 0x40]
call qword [case.0x140005bb3.0]
mov edi, eax
test eax, eax
js 0x140120407
mov dword [rbp - 0x78], r14d
mov rax, qword [r13]
lea rdx, [rbp - 0x78]
mov rcx, r13
mov rax, qword [rax + 0x190]
call qword [case.0x140005bb3.0]
mov edi, eax
xor r13d, r13d
test eax, eax
js 0x140120407
lea rax, [rbp - 0x60]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x7c]
mov qword [rsp + 0x50], rax
mov byte [rsp + 0x48], r13b
mov byte [rsp + 0x40], r13b
mov eax, dword [rbp - 0x78]
mov dword [rsp + 0x38], eax
mov al, byte [rsi + 0x74]
mov byte [rsp + 0x30], al
mov al, byte [rsi + 0x6c]
mov byte [rsp + 0x28], al
mov qword [rsp + 0x20], r13
mov r9, qword [rsi + 0x80]
mov r8d, dword [rsi + 0x78]
mov rdx, qword [rbp - 0x48]
mov ecx, dword [rbp - 0x68]
call fcn.140108cd4
mov edi, eax
test eax, eax
jns 0x140120c8b
cmp eax, 0x80780140
jne 0x140120407
cmp dword [rsi + 0x88], r13d
je 0x140120407
mov eax, dword [rsp + 0x7c]
mov dword [rsi + 0x48], eax
mov ecx, eax
shl rcx, 4
mov edi, 0xffffffff
cmp rcx, rdi
ja 0x140120b20
mov ebx, ecx
mov ecx, ecx
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
nop dword [rax + rax]
mov qword [rsi + 0x50], rax
test rax, rax
je 0x140120402
mov r8d, ebx
xor edx, edx
mov rcx, rax
call sub.msvcrt.dll_memset
mov eax, dword [rsi + 0x48]
shl rax, 2
cmp rax, rdi
ja 0x140120b20
mov ebx, eax
mov ecx, eax
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
nop dword [rax + rax]
mov qword [rsi + 0x58], rax
test rax, rax
je 0x140120402
mov r8d, ebx
xor edx, edx
mov rcx, rax
call sub.msvcrt.dll_memset
mov ebx, dword [rsi + 0x48]
mov ecx, ebx
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
nop dword [rax + rax]
mov qword [rsi + 0x60], rax
test rax, rax
je 0x140120402
mov r8d, ebx
xor edx, edx
mov rcx, rax
call sub.msvcrt.dll_memset
mov r10d, r13d
mov edx, dword [rsp + 0x7c]
test edx, edx
je 0x140120d90
mov r9d, r10d
mov r8d, r10d
shl r8, 7
mov rdx, qword [rsi + 0x60]
mov rax, qword [rbp - 0x60]
mov cl, byte [r8 + rax + 0x54]
mov byte [r9 + rdx], cl
mov rdx, qword [rsi + 0x50]
mov ecx, r10d
add rcx, rcx
mov rax, qword [rbp - 0x60]
movups xmm0, xmmword [r8 + rax]
movdqu xmmword [rdx + rcx*8], xmm0
mov rdx, qword [rsi + 0x58]
mov rax, qword [rbp - 0x60]
mov ecx, dword [r8 + rax + 0x58]
mov dword [rdx + r9*4], ecx
inc r10d
mov edx, dword [rsp + 0x7c]
cmp r10d, edx
jb 0x140120d40
mov r8d, r13d
test edx, edx
je 0x140120db1
mov ecx, r8d
shl rcx, 7
mov rax, qword [rbp - 0x60]
cmp byte [rcx + rax + 0x54], r13b
jne 0x140120db1
inc r8d
cmp r8d, edx
jb 0x140120d97
cmp r8d, edx
jne 0x140120df8
cmp dword [rsi + 0x88], r13d
jne 0x140120df8
mov edi, 0x80780172
mov rcx, qword [0x14017b048]
cmp rcx, r15
je 0x140120407
test byte [rcx + 0x1c], 1
je 0x140120407
cmp byte [rcx + 0x19], 2
jb 0x140120407
mov edx, 0x30
mov r9d, 0x80780172
jmp 0x140120b57
mov edi, r13d
mov r14d, r13d
mov ebx, r13d
test edx, edx
je 0x140120ee9
mov ecx, ebx
shl rcx, 7
mov rax, qword [rbp - 0x60]
cmp byte [rcx + rax + 0x54], r13b
je 0x140120e33
mov rcx, qword [rcx + rax + 0x30]
call fcn.14008c944
mov edx, dword [rsp + 0x7c]
test al, al
je 0x140120e30
inc edi
jmp 0x140120e33
inc r14d
inc ebx
cmp ebx, edx
jb 0x140120e09
test edi, edi
je 0x140120ee9
test r14d, r14d
je 0x140120e7f
mov edi, 0x80780188
mov rcx, qword [0x14017b048]
cmp rcx, r15
je 0x140120407
test byte [rcx + 0x1c], 1
je 0x140120407
cmp byte [rcx + 0x19], 2
jb 0x140120407
mov edx, 0x31
mov r9d, 0x80780188
jmp 0x140120b57
mov dword [rbp - 0x78], r13d
lea r9, [rbp - 0x78]
mov r8d, 1
lea rdx, str.CsvSourceSupported
lea rcx, str.CsvSupportSettings
call fcn.140094c10
mov edi, eax
test eax, eax
js 0x140120407
cmp dword [rbp - 0x78], r13d
jne 0x140120ee9
mov edi, 0x8078015f
mov rcx, qword [0x14017b048]
cmp rcx, r15
je 0x140120407
test byte [rcx + 0x1c], 1
je 0x140120407
cmp byte [rcx + 0x19], 2
jb 0x140120407
mov edx, 0x32
mov r9d, 0x8078015f
jmp 0x140120b57
lea rdx, [r12 + 0x48]
xor r8d, r8d
mov rcx, qword [rsi + 0x40]
call fcn.1400889dc
mov edi, eax
test eax, eax
js 0x140120407
mov eax, dword [rsi + 0x48]
mov dword [r12 + 0x50], eax
mov eax, dword [rsi + 8]
dec eax
test eax, 0xfffffffb
jne 0x140120f86
mov ecx, r13d
mov r8d, dword [rsp + 0x7c]
test r8d, r8d
je 0x140120f44
mov rdx, qword [rbp - 0x60]
mov eax, ecx
shl rax, 7
cmp byte [rax + rdx + 0x54], r13b
je 0x140120f3d
test byte [rax + rdx + 0x58], 8
je 0x140120f4d
inc ecx
cmp ecx, r8d
jb 0x140120f29
cmp dword [rsi + 0x88], r13d
je 0x140120f86
mov edi, 0x80780141
mov rcx, qword [0x14017b048]
cmp rcx, r15
je 0x140120407
test byte [rcx + 0x1c], 1
je 0x140120407
cmp byte [rcx + 0x19], 2
jb 0x140120407
mov edx, 0x33
mov r9d, 0x80780141
jmp 0x140120b57
cmp dword [rsi + 0x48], r13d
jbe 0x14012133c
mov eax, dword [rsi + 0x48]
imul rcx, rax, 0x78
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
nop dword [rax + rax]
mov rcx, rax
mov qword [r12 + 0x58], rax
test rax, rax
je 0x140120402
mov eax, dword [rsi + 0x48]
imul r8, rax, 0x78
xor edx, edx
call sub.msvcrt.dll_memset
mov ecx, r13d
mov dword [rbp - 0x70], ecx
cmp dword [rsi + 0x48], r13d
jbe 0x14012133c
xor r9d, r9d
mov r12d, ecx
mov eax, ecx
shl rax, 4
mov qword [rbp - 0x78], rax
mov rdi, qword [rsi + 0x50]
lea r15, [rax + rdi]
mov r14, qword [rsi + 0x58]
mov r13d, dword [r14 + r12*4]
mov rax, qword [rsi + 0x60]
mov al, byte [r12 + rax]
mov byte [rsp + 0x78], al
mov ebx, r9d
test ecx, ecx
je 0x14012102e
mov eax, ebx
mov ecx, ebx
shl rcx, 4
add rcx, rdi
mov r9d, r13d
mov r8, r15
mov edx, dword [r14 + rax*4]
call fcn.14008be10
test al, al
jne 0x14012134f
inc ebx
cmp ebx, dword [rbp - 0x70]
jb 0x140121005
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x14012104a
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
and qword [rsp + 0x68], 0
mov r9b, 1
lea r8, [rsp + 0x68]
mov edx, r13d
mov rcx, r15
call fcn.14008b8e4
mov edi, eax
xor edx, edx
test eax, eax
js 0x140120407
mov rax, qword [rsi + 0x58]
mov r12d, dword [rax + r12*4]
mov r15, qword [rbp - 0x78]
add r15, qword [rsi + 0x50]
jne 0x140121095
lea r8, str.pguidVolumeId
mov edx, 0x435
lea rcx, str.base_stor_blbengine_blbengutils_blbvolumeutils.cpp
call fcn.140087b08
xor edx, edx
mov r14d, 0xffffffff
mov ebx, edx
cmp dword [rbp + 0x218], edx
jbe 0x1401210de
mov rdx, qword [rbp + 0x48]
lea rdi, [rdx + 0x10]
mov eax, ebx
imul rcx, rax, 0x78
add rcx, rdx
mov r9d, r12d
mov r8, r15
mov edx, dword [rdi]
call fcn.14008be10
test al, al
jne 0x1401210db
inc ebx
add rdi, 0x78
cmp ebx, dword [rbp + 0x218]
mov rdx, qword [rbp + 0x48]
jb 0x1401210ad
jmp 0x1401210de
mov r14d, ebx
mov eax, dword [rbp - 0x70]
mov r15d, eax
imul rbx, rax, 0x78
mov r12, qword [rbp - 0x50]
mov r9, qword [r12 + 0x58]
add r9, rbx
mov eax, 0xffffffff
cmp r14d, eax
je 0x140121141
mov eax, r14d
imul rcx, rax, 0x78
add rcx, qword [rbp + 0x48]
mov rdx, r9
call fcn.140102664
mov edi, eax
xor r9d, r9d
test eax, eax
js 0x140120407
mov rax, qword [r12 + 0x58]
mov r14b, byte [rsp + 0x78]
mov byte [rbx + rax + 0x28], r14b
mov rax, qword [r12 + 0x58]
mov dword [rbx + rax + 0x10], r13d
mov r13, qword [rsp + 0x68]
jmp 0x1401211dd
mov r14b, byte [rsp + 0x78]
mov r8b, r14b
mov edx, r13d
mov r13, qword [rsp + 0x68]
mov rcx, r13
call fcn.14011f594
mov edi, eax
xor r9d, r9d
test eax, eax
jns 0x1401211dd
test r14b, r14b
jne 0x14012040c
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x1401211a8
test byte [rcx + 0x1c], 1
je 0x1401211a8
cmp byte [rcx + 0x19], 3
jb 0x1401211a8
lea edx, [r9 + 0x34]
mov dword [rsp + 0x20], edi
mov r9, r13
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140005d40
xor r9d, r9d
mov rcx, qword [rsi + 0x50]
imul r8, r15, 0x78
mov rax, qword [r12 + 0x58]
mov rdx, qword [rbp - 0x78]
movups xmm0, xmmword [rdx + rcx]
movdqu xmmword [r8 + rax], xmm0
mov rdx, r9
lea rcx, [r8 + rdx]
mov rax, qword [r12 + 0x58]
mov byte [rcx + rax + 0x28], r9b
inc rdx
cmp rdx, 2
jl 0x1401211c6
test r14b, r14b
je 0x140121321
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x140121200
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
and qword [rbp + 0x28], 0
lea r8, [rbp + 0x28]
lea rdx, [0x140153978]
mov rcx, r13
call fcn.140088abc
mov edi, eax
xor r9d, r9d
test eax, eax
js 0x14012040c
mov rax, qword [rsi + 0x58]
test byte [rax + r15*4], 8
je 0x140121317
mov qword [rbp - 0x78], r9
mov r14d, r9d
mov r15d, r9d
lea r9, [rbp - 0x40]
lea r8, [rbp + 0xb0]
lea rdx, [rbp + 0x68]
mov rbx, qword [rbp + 0x28]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
nop dword [rax + rax]
xor ecx, ecx
test eax, eax
jne 0x14012126d
mov rcx, rbx
call fcn.140137834
mov edi, eax
jmp 0x14012127a
mov r14, qword [rbp + 0xb0]
mov r15, qword [rbp + 0x68]
mov edi, ecx
test edi, edi
js 0x14012040c
lea rdx, [rbp - 0x78]
mov rcx, rbx
call fcn.140137988
mov edi, eax
xor ebx, ebx
test eax, eax
js 0x14012040c
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x1401212b3
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rbp + 0x20], rbx
lea rdx, [rbp + 0x20]
mov rcx, r13
call fcn.140134398
mov rbx, qword [rbp - 0x78]
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140121308
test byte [rcx + 0x1c], 1
je 0x140121308
cmp byte [rcx + 0x19], 4
jb 0x140121308
mov r9, r13
mov rax, qword [rbp + 0x20]
test rax, rax
cmovne r9, rax
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r14
mov rcx, qword [rcx + 0x10]
call fcn.14011f1a8
add qword [rbp + 0x40], r14
add qword [rbp + 0x38], r15
add qword [rbp + 0x30], rbx
xor r9d, r9d
mov eax, dword [rbp - 0x58]
inc eax
mov dword [rbp - 0x58], eax
jmp 0x140121324
mov eax, dword [rbp - 0x58]
mov ecx, dword [rbp - 0x70]
inc ecx
mov dword [rbp - 0x70], ecx
cmp ecx, dword [rsi + 0x48]
jb 0x140120fd5
xor r13d, r13d
test eax, eax
jne 0x140121359
cmp dword [rsi + 0x88], r13d
jne 0x140121359
mov edi, 0x80780172
jmp 0x140120407
mov edi, 0x80780013
jmp 0x140120407
mov edx, dword [r12 + 0x50]
mov rcx, qword [r12 + 0x58]
call fcn.140111e00
mov edi, eax
test eax, eax
js 0x140120407
cmp byte [rsi + 0x6c], r13b
je 0x1401213eb
mov rax, qword [0x14017d518]
cmp rax, qword [0x14015af68]
jne 0x1401213f5
mov rax, qword [0x14017d520]
cmp rax, qword [0x14015af70]
jne 0x1401213f5
test byte [0x14017d3e0], 1
jne 0x1401213f5
mov edi, 0x80780168
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140120407
test byte [rcx + 0x1c], 1
je 0x140120407
cmp byte [rcx + 0x19], 2
jb 0x140120407
mov edx, 0x36
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140004c10
jmp 0x140120407
cmp byte [rsi + 0x74], r13b
je 0x14012151c
mov r15d, r13d
cmp dword [r12 + 0x50], r13d
jbe 0x14012151c
mov byte [rsp + 0x78], r13b
mov eax, r15d
imul rbx, rax, 0x78
mov rax, qword [r12 + 0x58]
mov r14d, dword [rbx + rax + 0x10]
cmp byte [rbx + rax + 0x28], r13b
je 0x14012150e
bt r14d, 9
jae 0x14012150e
test r14b, 1
jne 0x14012150e
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140121459
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rsp + 0x68], r13
mov rax, qword [r12 + 0x58]
lea rcx, [rax + rbx]
xor r9d, r9d
lea r8, [rsp + 0x68]
mov edx, r14d
call fcn.14008b8e4
mov edi, eax
mov r13, qword [rsp + 0x68]
test eax, eax
js 0x14012040c
lea rdx, [rsp + 0x78]
mov rcx, r13
call fcn.14011bea4
xor edi, edi
test eax, eax
jns 0x1401214d8
mov rcx, qword [0x14017b048]
lea rbx, [0x14017b048]
cmp rcx, rbx
je 0x1401214cf
test byte [rcx + 0x1c], 1
je 0x1401214cf
cmp byte [rcx + 0x19], 3
jb 0x1401214cf
lea edx, [rdi + 0x37]
mov dword [rsp + 0x20], eax
mov r9, r13
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140005d40
mov rcx, qword [0x14017b048]
mov al, dil
mov byte [rsp + 0x78], al
jmp 0x1401214ea
mov rcx, qword [0x14017b048]
mov al, byte [rsp + 0x78]
lea rbx, [0x14017b048]
test al, al
je 0x14012150b
cmp byte [rsi + 0x6c], dil
jne 0x14012164a
cmp byte [rsi + 0x74], dil
je 0x14012150b
test r14d, 0x402
je 0x140121603
xor r13d, r13d
inc r15d
cmp r15d, dword [r12 + 0x50]
jb 0x140121403
mov r14d, r13d
cmp dword [rsp + 0x7c], r13d
jbe 0x1401216e3
mov ebx, r14d
shl rbx, 7
add rbx, qword [rbp - 0x60]
cmp byte [rbx + 0x54], r13b
je 0x1401216d5
test byte [rbx + 0x58], 1
jne 0x1401216d5
mov ecx, 0x20
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
je 0x140120402
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [rbx]
movdqu xmmword [rbp + 0xb0], xmm0
mov rdx, rax
lea rcx, [rbp + 0xb0]
call fcn.14011c710
mov r15d, eax
test eax, eax
jns 0x14012167b
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x1401215e7
test byte [rcx + 0x1c], 1
je 0x1401215e7
cmp byte [rcx + 0x19], 3
jb 0x1401215e7
mov rdx, rbx
lea rcx, [rbp + 0xc0]
call fcn.1400886e8
mov edx, 0x3a
mov dword [rsp + 0x20], r15d
mov r9, rax
lea r8, [0x140164450]
mov rcx, qword [0x14017b048]
mov rcx, qword [rcx + 0x10]
call fcn.140005d40
mov rcx, rdi
call fcn.1401423e4
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
jmp 0x1401216d5
mov edi, 0x8078015a
cmp rcx, rbx
je 0x14012040c
test byte [rcx + 0x1c], 1
je 0x14012040c
cmp byte [rcx + 0x19], 2
jb 0x14012040c
mov edx, 0x39
mov dword [rsp + 0x20], 0x8078015a
mov r9, r13
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140005d40
jmp 0x14012040c
mov edi, 0x8078014f
cmp rcx, rbx
je 0x14012040c
test byte [rcx + 0x1c], 1
je 0x14012040c
cmp byte [rcx + 0x19], 2
jb 0x14012040c
mov edx, 0x38
mov dword [rsp + 0x20], 0x8078014f
jmp 0x140121632
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x78]
lea r8, [rbp - 0x40]
mov rdx, rbx
lea rcx, [rbp - 0x30]
call fcn.14010d9f4
test rax, rax
jne 0x1401216d1
cmp qword [rbp - 0x30], r13
jne 0x1401216bd
mov r8b, 1
mov edx, dword [rbp - 0x20]
lea rcx, [rbp - 0x30]
call fcn.14003b324
test al, al
je 0x1401220d6
mov r9d, dword [rbp - 0x78]
mov r8d, dword [rbp - 0x40]
mov rdx, rbx
lea rcx, [rbp - 0x30]
call fcn.14003b5c0
mov qword [rax + 0x10], rdi
inc r14d
cmp r14d, dword [rsp + 0x7c]
jb 0x14012152a
lea rcx, [rbp - 0x30]
call fcn.14010d65c
mov qword [rbp - 0x58], rax
test rax, rax
je 0x1401217b8
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x30]
call fcn.14010d6ac
movups xmm0, xmmword [rax]
movdqu xmmword [rbp + 0x68], xmm0
mov rbx, qword [rax + 0x10]
cmp byte [rbx], r13b
je 0x140121742
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x78]
lea r8, [rbp - 0x40]
lea rdx, [rbx + 4]
lea rcx, [rbp - 0x30]
call fcn.14010d9f4
test rax, rax
setne al
test al, al
jne 0x140121748
cmp qword [rbp - 0x58], r13
jmp 0x1401216f3
mov rax, qword [0x14017b048]
lea rcx, [0x14017b048]
cmp rax, rcx
je 0x1401217ae
test byte [rax + 0x1c], 1
je 0x1401217ae
cmp byte [rax + 0x19], 2
jb 0x1401217ae
lea rdx, [rbx + 4]
lea rcx, [rbp + 0xc0]
call fcn.1400886e8
mov rbx, rax
lea rdx, [rbp + 0x68]
lea rcx, [rbp + 0x130]
call fcn.1400886e8
mov edx, 0x3b
mov qword [rsp + 0x20], rbx
mov r9, rax
lea r8, [0x140164450]
mov rcx, qword [0x14017b048]
mov rcx, qword [rcx + 0x10]
call fcn.140005dc4
mov edi, 0x80780159
jmp 0x140120407
cmp dword [rsi + 0x18], r13d
jne 0x1401217c8
mov edi, 0x8078005e
jmp 0x140120407
mov ecx, dword [rsi + 8]
call fcn.140093380
bt eax, 8
jb 0x1401217e6
cmp dword [rsi + 0x18], 1
jbe 0x1401217e6
mov edi, 0x80780060
jmp 0x140120407
mov eax, dword [rsi + 0x18]
mov dword [r12 + 0x28], eax
cmp qword [rsi + 0x20], r13
jne 0x1401217fe
mov edi, 0x80004003
jmp 0x140120407
mov eax, dword [rsi + 0x18]
lea rcx, [rax + rax*4]
shl rcx, 3
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
nop dword [rax + rax]
mov rcx, rax
mov qword [r12 + 0x30], rax
test rax, rax
je 0x140120402
mov eax, dword [rsi + 0x18]
lea r8, [rax + rax*4]
shl r8, 3
xor edx, edx
call sub.msvcrt.dll_memset
cmp dword [rsi + 8], 4
jne 0x140121a01
mov dl, 1
mov rbx, qword [rbp + 0x50]
mov rcx, rbx
call fcn.1400fdfb8
mov edi, eax
test eax, eax
js 0x140120407
mov byte [rsp + 0x78], r13b
lea r8, [rsp + 0x78]
mov dl, 1
mov rcx, qword [rsi + 0x10]
call fcn.140087e9c
mov edi, eax
test eax, eax
jns 0x1401218c2
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140120407
test byte [rcx + 0x1c], 1
je 0x140120407
cmp byte [rcx + 0x19], 2
jb 0x140120407
mov edx, 0x3c
mov dword [rsp + 0x20], edi
mov r9, qword [rsi + 0x10]
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140005d40
jmp 0x140120407
mov rcx, rbx
call fcn.1400fe164
cmp byte [rsp + 0x78], r13b
jne 0x1401218db
mov edi, 0x8078000c
jmp 0x140120407
cmp dword [rsi + 0x18], 1
je 0x1401218f9
lea r8, str.pTemplate__m_cTarget__1
mov edx, 0x5c1
lea rcx, str.base_stor_blbengine_blbengutils_blbcatalogutils.cpp
call fcn.140087b08
mov rcx, qword [rsi + 0x20]
xor r8d, r8d
mov rdx, qword [r12 + 0x30]
mov rcx, qword [rcx]
call fcn.1400889dc
mov edi, eax
test eax, eax
js 0x140120407
mov rdx, qword [r12 + 0x30]
add rdx, 8
mov rcx, qword [rsi + 0x20]
xor r8d, r8d
mov rcx, qword [rcx + 8]
call fcn.1400889dc
mov edi, eax
test eax, eax
js 0x140120407
mov rax, qword [r12 + 0x30]
mov qword [rax + 0x10], r13
mov rax, qword [r12 + 0x30]
mov word [rax + 0x18], r13w
mov rax, qword [r12 + 0x30]
mov qword [rax + 0x20], r13
lea rdx, [r12 + 0x38]
xor r8d, r8d
mov rcx, qword [rsi + 0x28]
call fcn.1400889dc
mov edi, eax
test eax, eax
js 0x140120407
lea rdx, [r12 + 0x40]
xor r8d, r8d
mov rcx, qword [rsi + 0x30]
call fcn.1400889dc
mov edi, eax
test eax, eax
js 0x140120407
mov rax, qword [rbp + 0x30]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0x38]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp + 0x40]
mov qword [rsp + 0x38], rax
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0x20], rax
mov r9, rsi
mov r8, rbx
mov rcx, qword [rbp + 0x60]
call fcn.14011ff30
mov edi, eax
test eax, eax
jns 0x140121e81
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140120407
test byte [rcx + 0x1c], 1
je 0x140120407
cmp byte [rcx + 0x19], 2
jb 0x140120407
mov edx, 0x3d
mov r9d, edi
jmp 0x140120b57
mov r8, qword [rbp + 0x58]
mov edx, dword [rbp - 0x6c]
mov rcx, qword [rsi + 0x10]
call fcn.140115464
mov ecx, 0xffffffff
cmp eax, ecx
jne 0x140121aa9
lea r8, [rsp + 0x70]
lea rdx, [0x140153978]
mov rcx, qword [rsi + 0x10]
call fcn.140088abc
mov edi, eax
mov r15, qword [rsp + 0x70]
test eax, eax
js 0x140121a8b
lea rdx, [rbp - 0x78]
mov rcx, r15
call fcn.14010dd98
mov edi, eax
test eax, eax
jns 0x140121a9a
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140121a8b
test byte [rcx + 0x1c], 1
je 0x140121a8b
cmp byte [rcx + 0x19], 2
jb 0x140121a8b
mov edx, 0x3e
mov dword [rsp + 0x20], edi
mov r9, r15
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140005d40
mov r13, qword [rsp + 0x68]
mov r14, qword [rsp + 0x60]
jmp 0x140120416
mov eax, dword [rbp - 0x78]
cmp eax, dword [rsi + 8]
je 0x140121aa9
mov edi, 0x80780011
jmp 0x140121a8b
mov byte [rsp + 0x78], r13b
cmp byte [rsi + 0x74], r13b
je 0x140121ac9
cmp dword [rsi + 0x78], r13d
jne 0x140121ac9
cmp byte [rsi + 0x6c], r13b
jne 0x140121ac9
call fcn.14012cc68
mov byte [rsp + 0x78], al
mov r12d, r13d
cmp dword [rsi + 0x18], r13d
jbe 0x140121e7d
mov edi, r13d
mov r14d, r12d
test r12d, r12d
je 0x140121b13
lea r15, [r14 + r14*2]
mov rbx, r13
mov rcx, qword [rsi + 0x20]
mov rdx, qword [rcx + r15*8]
mov rcx, qword [rbx + rcx]
call qword [sym.imp.msvcrt.dll__wcsicmp]
nop dword [rax + rax]
test eax, eax
je 0x140121d7e
inc edi
add rbx, 0x18
cmp edi, r12d
jb 0x140121ae8
lea r15, [r14 + r14*2]
mov rcx, qword [rsi + 0x20]
lea rdx, [rbp + 0xb0]
mov rcx, qword [rcx + r15*8]
call fcn.14008b72c
test eax, eax
js 0x1401218d1
mov ebx, r13d
cmp dword [rsi + 0x48], r13d
jbe 0x140121bf5
mov rdi, qword [rbp + 0xb8]
mov r13, qword [rbp + 0xb0]
mov r9, qword [0x14017b048]
cmp r13, qword [0x14015af68]
jne 0x140121b86
cmp rdi, qword [0x14015af70]
jne 0x140121b86
lea r8, str.guidTargetVolumeId___GUID_NULL
mov edx, 0x62e
lea rcx, str.base_stor_blbengine_blbengutils_blbcatalogutils.cpp
call fcn.140087b08
mov r9, qword [0x14017b048]
mov ecx, ebx
mov rax, qword [rsi + 0x60]
cmp byte [rcx + rax], 1
jne 0x140121be7
shl rcx, 4
add rcx, qword [rsi + 0x50]
cmp r13, qword [rcx]
jne 0x140121be7
cmp rdi, qword [rcx + 8]
jne 0x140121be7
xor eax, eax
cmp byte [rsp + 0x78], al
je 0x140121d88
lea rax, [0x14017b048]
cmp r9, rax
je 0x140121be7
test byte [r9 + 0x1c], 1
je 0x140121be7
cmp byte [r9 + 0x19], 4
jb 0x140121be7
mov edx, 0x3f
lea r8, [0x140164450]
mov rcx, qword [r9 + 0x10]
call fcn.140004c10
mov r9, qword [0x14017b048]
inc ebx
cmp ebx, dword [rsi + 0x48]
jb 0x140121b55
xor r13d, r13d
mov rcx, qword [rsi + 0x20]
mov rbx, qword [rbp + 0x58]
mov r8, rbx
mov edx, dword [rbp - 0x6c]
mov rcx, qword [rcx + r15*8]
call fcn.140115464
mov ecx, 0xffffffff
cmp eax, ecx
je 0x140121c48
lea rdx, [r14 + r14*4]
mov rcx, qword [rbp - 0x50]
mov rcx, qword [rcx + 0x30]
lea rdx, [rcx + rdx*8]
mov eax, eax
lea rcx, [rax + rax*4]
lea rcx, [rbx + rcx*8]
call fcn.14010259c
mov edi, eax
mov r15, qword [rsp + 0x70]
test eax, eax
js 0x140121a8b
jmp 0x140121d1e
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140121c63
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rsp + 0x70], r13
mov rax, qword [rsi + 0x20]
lea r8, [rsp + 0x70]
lea rdx, [0x140153978]
mov rcx, qword [rax + r15*8]
call fcn.140088abc
mov edi, eax
test eax, eax
js 0x140120407
lea rcx, [r14 + r14*4]
mov rax, qword [rbp - 0x50]
mov rax, qword [rax + 0x30]
lea r8, [rax + rcx*8]
mov rdx, qword [rsi + 0x20]
mov rdx, qword [rdx + r15*8 + 8]
mov r15, qword [rsp + 0x70]
mov rcx, r15
call fcn.14011f320
mov edi, eax
test eax, eax
js 0x140121a8b
mov eax, dword [rbp - 0x78]
add eax, 0xfffffffe
cmp eax, 1
ja 0x140121d1e
lea rdx, [rbp - 0x80]
mov rcx, r15
call fcn.14011186c
mov edi, eax
test eax, eax
js 0x140121dc4
mov al, byte [rbp - 0x80]
mov cl, byte [rsp + 0x79]
or cl, al
mov byte [rsp + 0x79], cl
test al, al
jne 0x140121d22
mov rax, qword [rbp + 0x30]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0x38]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp + 0x40]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x20], r15
mov r9, rsi
mov r8, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x60]
call fcn.14011ff30
mov edi, eax
test eax, eax
js 0x140121d92
mov cl, byte [rsp + 0x79]
inc r12d
cmp r12d, dword [rsi + 0x18]
jb 0x140121ad6
test cl, cl
je 0x140121e7d
cmp byte [rsi + 0x6c], r13b
je 0x140121e0c
mov edi, 0x80780191
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140121a8b
test byte [rcx + 0x1c], 1
je 0x140121a8b
cmp byte [rcx + 0x19], 2
jb 0x140121a8b
mov edx, 0x42
mov r9d, 0x80780191
jmp 0x140121df7
mov edi, 0x8078005f
jmp 0x140120407
mov edi, 0x80780040
jmp 0x140120407
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140121a8b
test byte [rcx + 0x1c], 1
je 0x140121a8b
cmp byte [rcx + 0x19], 2
jb 0x140121a8b
mov edx, 0x41
jmp 0x140121df4
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140121a8b
test byte [rcx + 0x1c], 1
je 0x140121a8b
cmp byte [rcx + 0x19], 2
jb 0x140121a8b
mov edx, 0x40
mov r9d, edi
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140004c3c
jmp 0x140121a8b
mov dword [rbp - 0x6c], r13d
lea r9, [rbp - 0x6c]
mov r8d, 1
lea rdx, str.CsvTargetSupported
lea rcx, str.CsvSupportSettings
call fcn.140094c10
mov edi, eax
test eax, eax
js 0x140121a8b
cmp dword [rbp - 0x6c], r13d
jne 0x140121e7d
mov edi, 0x80780161
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140121a8b
test byte [rcx + 0x1c], 1
je 0x140121a8b
cmp byte [rcx + 0x19], 2
jb 0x140121a8b
mov edx, 0x43
mov r9d, 0x80780161
jmp 0x140121df7
mov r12, qword [rbp - 0x50]
mov dword [rbp - 0x6c], 1
lea rax, [rbp - 0x6c]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x60]
mov r8d, dword [rsp + 0x7c]
mov rdx, qword [rbp - 0x48]
mov ecx, dword [rbp - 0x68]
call fcn.1400522c8
mov edi, eax
test eax, eax
jns 0x140121ee1
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140120407
test byte [rcx + 0x1c], 1
je 0x140120407
cmp byte [rcx + 0x19], 2
jb 0x140120407
mov edx, 0x44
jmp 0x1401219f9
mov r9d, dword [rbp - 0x6c]
mov dword [r12 + 0x18], r9d
mov rcx, qword [0x14017b048]
lea rax, [0x14017b048]
cmp rcx, rax
je 0x140121f1e
test byte [rcx + 0x1c], 1
je 0x140121f1e
cmp byte [rcx + 0x19], 4
jb 0x140121f1e
mov edx, 0x45
lea r8, [0x140164450]
mov rcx, qword [rcx + 0x10]
call fcn.140004c3c
mov ecx, dword [rsi + 8]
call fcn.140093380
test al, 0x10
jne 0x140121f40
cmp byte [rsi + 0x68], r13b
jne 0x140121f36
cmp byte [rsi + 0x69], r13b
je 0x140121f40
mov edi, 0x80780037
jmp 0x140120407
movzx eax, word [rsi + 0x68]
mov word [r12 + 0x60], ax
mov al, byte [rbp - 0x7f]
mov byte [r12 + 0x62], al
lea rcx, [r12 + 0x68]
call fcn.14008ff1c
mov edi, eax
test eax, eax
js 0x140120407
lea rcx, [rbp + 0x80]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
nop dword [rax + rax]
movzx eax, word [rbp + 0x80]
mov word [r12 + 0x70], ax
mov al, byte [rsi + 0x6a]
mov byte [r12 + 0x72], al
lea rbx, [r12 + 0x80]
mov rcx, qword [rbx]
test rcx, rcx
je 0x140121fad
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rbx], r13
mov al, byte [rsi + 0x6c]
mov byte [rsp + 0x30], al
mov al, byte [rsi + 0x74]
mov byte [rsp + 0x28], al
mov rax, qword [rsi + 0x90]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsi + 0x88]
mov r8, qword [rbp - 0x60]
mov edx, dword [rsp + 0x7c]
mov r14, qword [rsp + 0x60]
mov rcx, r14
call fcn.1401051b8
mov edi, eax
test eax, eax
js 0x140122018
mov rdx, rbx
mov rcx, r14
call fcn.1401082b4
mov edi, eax
mov r15, qword [rsp + 0x70]
test eax, eax
js 0x14012200e
cmp dword [rsi + 0x88], r13d
seta al
mov byte [r12 + 0x79], al
mov r13, qword [rsp + 0x68]
jmp 0x140120416
mov r13, qword [rsp + 0x68]
jmp 0x140120411
mov rsi, qword [rbp + 8]
call fcn.14014b728
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x28], r13
test r14d, r14d
jne 0x140122059
xor edx, edx
lea rcx, [rbp - 0x30]
call fcn.14003b524
mov edx, eax
xor r8d, r8d
lea rcx, [rbp - 0x30]
call fcn.14003b324
mov rsi, qword [rbp + 8]
mov r14d, dword [rbp]
mov qword [rbp + 0x10], r13
test rsi, rsi
je 0x140122080
mov rbx, qword [rsi]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_free]
nop dword [rax + rax]
mov rsi, rbx
test rbx, rbx
jne 0x140122062
mov qword [rbp + 8], r13
test r14d, r14d
jne 0x14012209d
lea r8, str.m_nLockCount___0
mov edx, 0x8d8
lea rcx, str.onecoreexternal_sdkinc_atlmfc_atlcoll.h
call fcn.140087b08
mov eax, 0xffffffff
add r14d, eax
mov dword [rbp], r14d
mov eax, edi
mov rcx, qword [rbp + 0x1a0]
xor rcx, rsp
call fcn.14014bb60
mov rbx, qword [rsp + 0x2f8]
add rsp, 0x2b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x8007000e
call fcn.140001950
int3