Function at 0x14011fddc
Capabilities:
Encode data using base64
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1b0]
sub rsp, 0x2b0
mov rax, qword [0x140173708]
xor rax, rsp
mov qword [rbp + 0x1a0], rax
mov dword [rbp - 0x5c], r9d
mov r14, r8
mov rsi, rdx
mov qword [rbp], rcx
mov rax, qword [rbp + 0x210]
mov qword [rbp + 0x10], rax
mov rax, qword [rbp + 0x220]
mov qword [rbp + 0xb0], rax
mov rax, qword [rbp + 0x228]
mov qword [rbp + 0x18], rax
mov r12, qword [rbp + 0x230]
mov qword [rsp + 0x70], r12
xor ebx, ebx
mov r15d, ebx
mov dword [rbp - 0x78], ebx
lea rax, [0x140173048]
mov rcx, qword [0x140173048]
cmp rcx, rax
je 0x14011fe84
test byte [rcx + 0x1c], 1
je 0x14011fe84
cmp byte [rcx + 0x19], 4
jb 0x14011fe84
lea edx, [rbx + 0x29]
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.14000c328
mov qword [rbp - 0x38], rbx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x60], rbx
mov qword [rbp - 0x20], rbx
mov dword [rbp - 0x40], ebx
mov qword [rbp - 0x18], rbx
mov qword [rbp - 8], rbx
mov qword [rbp - 0x10], rbx
mov qword [rbp - 0x48], rbx
mov dword [rbp - 0x58], ebx
mov qword [rbp - 0x50], rbx
mov dword [rbp - 0x70], ebx
mov rdi, rbx
mov qword [rbp - 0x68], rbx
mov r13, rbx
movss xmm0, dword [0x1401642f8]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1401642cc]
movss xmm2, dword [0x1401642d0]
lea rcx, [rbp + 0x30]
call fcn.140015670
nop
mov byte [rbp - 0x80], bl
mov byte [rbp - 0x6c], bl
mov byte [rbp - 0x6b], bl
lea rcx, [rbp - 0x6b]
call fcn.140099910
mov ebx, eax
test eax, eax
js 0x14011ff96
mov rcx, r12
call fcn.140104c58
movups xmm0, xmmword [rsi]
movdqu xmmword [r12], xmm0
mov edx, 1
mov r8d, 0xa8
lea rcx, [rbp - 0x68]
call fcn.14000d5bc
mov ebx, eax
mov rdi, qword [rbp - 0x68]
test eax, eax
js 0x14011ff96
mov rdx, rdi
mov rcx, r14
call fcn.1401410fc
mov ebx, eax
xor r14d, r14d
test eax, eax
js 0x14011ff96
lea rdx, [r12 + 0x10]
xor r8d, r8d
mov rcx, qword [rdi]
call fcn.140091bf0
mov ebx, eax
test eax, eax
js 0x14011ff96
mov eax, dword [rdi + 8]
mov dword [r12 + 0x1c], eax
mov al, byte [rdi + 0x6b]
mov byte [r12 + 0x73], al
mov eax, dword [rdi + 0x70]
mov dword [r12 + 0x74], eax
mov al, byte [rdi + 0x74]
mov byte [r12 + 0x78], al
mov eax, dword [rdi + 0xa0]
mov dword [r12 + 0x88], eax
mov rcx, qword [rdi + 0x10]
test rcx, rcx
jne 0x14011ffa0
mov ebx, 0x8078000c
mov r14, qword [rsp + 0x70]
jmp 0x140120322
lea rdx, [r12 + 0x20]
xor r8d, r8d
call fcn.140091bf0
mov ebx, eax
test eax, eax
js 0x14011ff96
mov ecx, 0x20
call fcn.140006fcc
mov r13, rax
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x30], rax
test rax, rax
je 0x140121997
mov qword [rax + 8], r14
mov qword [rax], r14
test rax, rax
je 0x14012199a
lea rsi, [rdi + 0x50]
cmp qword [rsi], r14
je 0x14012055d
cmp qword [rdi + 0x58], r14
je 0x14012055d
cmp qword [rdi + 0x60], r14
je 0x14012055d
mov rcx, qword [0x140173048]
lea r12, [0x140173048]
cmp rcx, r12
je 0x140120042
test byte [rcx + 0x1c], 1
je 0x140120042
cmp byte [rcx + 0x19], 4
jb 0x140120042
mov edx, 0x2a
mov r9d, dword [rdi + 0x48]
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.1400155dc
mov rcx, qword [0x140173048]
cmp qword [rsi], r14
je 0x14012052e
cmp qword [rdi + 0x58], r14
je 0x14012052e
cmp qword [rdi + 0x60], r14
je 0x14012052e
cmp qword [rdi + 0x80], r14
je 0x140120087
lea r8, str.pTemplate__m_rgFileSpecs__NULL
mov edx, 0x35a
lea rcx, str.base_stor_blbengine_blbengutils_blbcatalogutils.cpp
call fcn.1400906e0
mov rcx, qword [0x140173048]
cmp dword [rdi + 0x78], r14d
je 0x1401200ac
lea r8, str.pTemplate__m_cFileSpecs__0
mov edx, 0x35b
lea rcx, str.base_stor_blbengine_blbengutils_blbcatalogutils.cpp
call fcn.1400906e0
mov rcx, qword [0x140173048]
cmp qword [rdi + 0x80], r14
jne 0x1401204ec
cmp dword [rdi + 0x78], r14d
jne 0x1401204ec
mov rcx, qword [rbp]
mov rax, qword [rcx]
movabs r10, 0xc3602e9012585270
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x58]
mov rax, qword [rax + 0x40]
call qword [vtable.H_MA8HI.0]
mov ebx, eax
test eax, eax
js 0x14011ff96
mov edx, dword [rdi + 0x48]
mov dword [rbp - 0x70], edx
mov r8d, 0x80
lea rcx, [rbp - 0x50]
call fcn.14000d5bc
mov ebx, eax
test eax, eax
js 0x14011ff96
mov ecx, r14d
mov qword [rbp - 0x68], r13
mov edx, dword [rbp - 0x58]
mov dword [rbp - 0x60], ecx
cmp ecx, dword [rdi + 0x48]
jae 0x1401204d7
cmp r14d, edx
jae 0x14012029d
mov r12d, ecx
mov r8d, ecx
shl r8, 4
add r8, qword [rsi]
mov r13d, r14d
shl r13, 7
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx + r13]
sub rax, qword [r8]
jne 0x140120158
mov rax, qword [rcx + r13 + 8]
sub rax, qword [r8 + 8]
test rax, rax
je 0x140120165
inc r14d
mov ecx, dword [rbp - 0x60]
jmp 0x140120125
mov rax, qword [0x140173048]
lea rcx, [0x140173048]
cmp rax, rcx
je 0x1401201c0
test byte [rax + 0x1c], 1
je 0x1401201c0
cmp byte [rax + 0x19], 4
jb 0x1401201c0
mov rax, qword [rdi + 0x60]
movzx ebx, byte [r12 + rax]
mov rdx, r8
lea rcx, [rbp - 0x30]
call fcn.14000c660
or r15d, 1
mov r9, qword [rax]
mov rax, qword [0x140173048]
mov edx, 0x2d
mov dword [rsp + 0x20], ebx
lea r8, [0x140160d20]
mov rcx, qword [rax + 0x10]
call fcn.140040370
test r15b, 1
je 0x1401201da
and r15d, 0xfffffffe
mov rcx, qword [rbp - 0x30]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop dword [rax + rax]
mov rsi, r12
shl rsi, 7
mov rdx, qword [rbp - 0x50]
add rdx, rsi
mov rcx, qword [rbp - 0x48]
add rcx, r13
call fcn.140141440
mov ebx, eax
xor r13d, r13d
test eax, eax
js 0x140120318
add rsi, qword [rbp - 0x50]
mov qword [rbp + 8], rsi
mov rax, qword [rdi + 0x60]
mov cl, byte [r12 + rax]
mov byte [rsi + 0x54], cl
test cl, cl
je 0x140120290
mov dword [rbp - 0x78], r13d
mov ebx, dword [rsi + 0x58]
mov rcx, qword [rsi + 0x30]
call fcn.140094270
mov edx, dword [rsi + 0x68]
mov r8, qword [rsi + 0x70]
and bl, 1
mov ecx, dword [rsi + 0x58]
shr ecx, 9
and cl, 1
lea r9, [rbp - 0x78]
mov qword [rsp + 0x38], r9
mov dword [rsp + 0x30], edx
mov qword [rsp + 0x28], r8
mov byte [rsp + 0x20], al
mov r9b, bl
mov r8b, cl
mov dl, byte [rdi + 0x74]
mov cl, byte [rdi + 0x6c]
call fcn.14010b9a0
mov ebx, eax
test eax, eax
js 0x140120318
mov eax, dword [rbp - 0x78]
or dword [rsi + 0x58], eax
mov ecx, dword [rsi + 0x58]
mov rax, qword [rdi + 0x58]
mov dword [rax + r12*4], ecx
lea rcx, [rbp + 8]
call fcn.14010e144
mov ebx, eax
test eax, eax
js 0x140120318
mov edx, dword [rbp - 0x58]
mov ecx, dword [rbp - 0x60]
lea rsi, [rdi + 0x50]
cmp r14d, edx
je 0x1401202a9
inc ecx
xor r14d, r14d
jmp 0x140120119
mov ebx, 0x80780089
mov rax, qword [0x140173048]
lea rdx, [0x140173048]
cmp rax, rdx
je 0x140120302
test byte [rax + 0x1c], 1
je 0x140120302
cmp byte [rax + 0x19], 2
jb 0x140120302
mov edx, ecx
shl rdx, 4
add rdx, qword [rsi]
lea rcx, [rbp + 0x10]
call fcn.14000c660
or r15d, 2
mov r9, qword [rax]
mov rax, qword [0x140173048]
mov edx, 0x2e
lea r8, [0x140160d20]
mov rcx, qword [rax + 0x10]
call fcn.140015150
test r15b, 2
je 0x140120318
mov rcx, qword [rbp + 0x10]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop dword [rax + rax]
mov r14, qword [rsp + 0x70]
mov r13, qword [rsp + 0x78]
mov r12, qword [rsp + 0x60]
mov r15, qword [rsp + 0x68]
mov rcx, qword [rbp + 0x18]
call fcn.1401005a4
lea rcx, [rbp + 0x30]
call fcn.14002a07c
mov qword [rbp - 0x78], rax
test rax, rax
je 0x140120382
xor r14d, r14d
lea rdx, [rbp - 0x78]
lea rcx, [rbp + 0x30]
call fcn.140029ac4
mov rsi, qword [rax + 0x10]
mov rcx, rsi
call fcn.1401426a8
test rsi, rsi
je 0x140120377
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
cmp qword [rbp - 0x78], r14
jne 0x14012034a
mov r14, qword [rsp + 0x70]
test r12, r12
je 0x140120396
mov rcx, r12
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov rax, qword [rbp - 0x20]
xor r12d, r12d
test rax, rax
je 0x1401203b1
mov rcx, rax
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x1401203c6
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
test r15, r15
je 0x1401203da
mov rcx, r15
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
cmp qword [rbp - 0x48], r12
je 0x1401203ed
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x48]
call fcn.1401426e0
cmp qword [rbp - 0x50], r12
je 0x140120400
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 0x50]
call fcn.1401426e0
test rdi, rdi
je 0x14012041c
mov rcx, rdi
call fcn.140142534
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
test r13, r13
je 0x140120429
mov rcx, r13
call fcn.1400165d8
test ebx, ebx
jns 0x14012046c
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120464
test byte [rcx + 0x1c], 1
je 0x140120464
cmp byte [rcx + 0x19], 2
jb 0x140120464
mov edx, 0x46
mov r9d, ebx
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.14000c354
mov rcx, r14
call fcn.140104c58
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x1401204a1
test byte [rcx + 0x1c], 1
je 0x1401204a1
cmp byte [rcx + 0x19], 4
jb 0x1401204a1
mov edx, 0x47
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.14000c328
nop
lea rcx, [rbp + 0x30]
call fcn.140036b54
mov eax, ebx
mov rcx, qword [rbp + 0x1a0]
xor rcx, rsp
call fcn.140007410
mov rbx, qword [rsp + 0x2f8]
add rsp, 0x2b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov edx, dword [rbp - 0x70]
mov r12, qword [rsp + 0x70]
mov r13, qword [rsp + 0x78]
mov r15, r13
jmp 0x140120722
mov ebx, 0x80070057
cmp rcx, r12
je 0x14011ff96
test byte [rcx + 0x1c], 1
je 0x14011ff96
cmp byte [rcx + 0x19], 2
jb 0x14011ff96
mov edx, 0x2c
mov r9d, 0x80070057
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.14000c354
jmp 0x14011ff96
mov ebx, 0x80004003
cmp rcx, r12
je 0x14011ff96
test byte [rcx + 0x1c], 1
je 0x14011ff96
cmp byte [rcx + 0x19], 2
jb 0x14011ff96
mov edx, 0x2b
mov r9d, 0x80004003
jmp 0x140120519
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120595
test byte [rcx + 0x1c], 1
je 0x140120595
cmp byte [rcx + 0x19], 4
jb 0x140120595
mov edx, 0x2f
mov r9d, dword [rdi + 0x78]
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.1400155dc
mov r14, qword [rbp]
mov rax, qword [r14]
movabs r10, 0xc3602e9012585270
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x58]
mov rcx, r14
mov rax, qword [rax + 0x40]
call qword [vtable.H_MA8HI.0]
mov ebx, eax
xor r15d, r15d
test eax, eax
js 0x14011ff96
mov dword [rbp - 0x78], r15d
mov rax, qword [r14]
movabs r10, 0x9f6c8fd95051b970
lea rdx, [rbp - 0x78]
mov rcx, r14
mov rax, qword [rax + 0x190]
call qword [vtable.H_MA8HI.0]
mov ebx, eax
test eax, eax
js 0x14011ff96
lea rax, [rbp - 0x50]
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x50], rax
mov byte [rsp + 0x48], r15b
mov byte [rsp + 0x40], r15b
mov eax, dword [rbp - 0x78]
mov dword [rsp + 0x38], eax
mov al, byte [rdi + 0x74]
mov byte [rsp + 0x30], al
mov al, byte [rdi + 0x6c]
mov byte [rsp + 0x28], al
mov qword [rsp + 0x20], r15
mov r9, qword [rdi + 0x80]
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rbp - 0x48]
mov ecx, dword [rbp - 0x58]
call fcn.14010bd60
mov ebx, eax
test eax, eax
jns 0x140120662
cmp eax, 0x80780140
jne 0x14011ff96
cmp dword [rdi + 0x88], r15d
je 0x14011ff96
mov eax, dword [rbp - 0x70]
mov dword [rdi + 0x48], eax
mov r8d, 0x10
mov edx, dword [rbp - 0x70]
mov rcx, rsi
call fcn.14000d5bc
mov ebx, eax
test eax, eax
js 0x14011ff96
mov r8d, 4
mov edx, dword [rdi + 0x48]
lea rcx, [rdi + 0x58]
call fcn.14000d5bc
mov ebx, eax
test eax, eax
js 0x14011ff96
mov r8d, 1
mov edx, dword [rdi + 0x48]
lea rcx, [rdi + 0x60]
call fcn.14000d5bc
mov ebx, eax
test eax, eax
js 0x14011ff96
mov r10d, r15d
mov r15, r13
mov qword [rbp - 0x68], r13
mov edx, dword [rbp - 0x70]
test edx, edx
je 0x14012071f
mov qword [rbp - 0x68], r13
mov r9d, r10d
mov r8d, r10d
shl r8, 7
mov rdx, qword [rdi + 0x60]
mov rax, qword [rbp - 0x50]
mov cl, byte [r8 + rax + 0x54]
mov byte [r9 + rdx], cl
mov edx, r10d
add rdx, rdx
mov rcx, qword [rdi + 0x50]
mov rax, qword [rbp - 0x50]
movups xmm0, xmmword [r8 + rax]
movdqu xmmword [rcx + rdx*8], xmm0
mov rdx, qword [rdi + 0x58]
mov rax, qword [rbp - 0x50]
mov ecx, dword [r8 + rax + 0x58]
mov dword [rdx + r9*4], ecx
inc r10d
mov edx, dword [rbp - 0x70]
cmp r10d, edx
jb 0x1401206d0
xor r14d, r14d
mov r8d, r14d
test edx, edx
je 0x140120743
mov ecx, r8d
shl rcx, 7
mov rax, qword [rbp - 0x50]
cmp byte [rcx + rax + 0x54], r14b
jne 0x140120743
inc r8d
cmp r8d, edx
jb 0x140120729
cmp r8d, edx
jne 0x140120791
cmp dword [rdi + 0x88], r14d
jne 0x140120791
mov ebx, 0x80780172
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14011ff96
test byte [rcx + 0x1c], 1
je 0x14011ff96
cmp byte [rcx + 0x19], 2
jb 0x14011ff96
mov edx, 0x30
mov r9d, 0x80780172
jmp 0x140120519
mov esi, r14d
xor r8d, r8d
mov ebx, r8d
test edx, edx
je 0x140120892
mov ecx, ebx
shl rcx, 7
mov rax, qword [rbp - 0x50]
cmp byte [rcx + rax + 0x54], r8b
je 0x1401207ce
mov rcx, qword [rcx + rax + 0x30]
call fcn.140094270
xor r8d, r8d
mov edx, dword [rbp - 0x70]
test al, al
je 0x1401207cb
inc esi
jmp 0x1401207ce
inc r14d
inc ebx
cmp ebx, edx
jb 0x1401207a2
test esi, esi
je 0x140120892
test r14d, r14d
je 0x140120821
mov ebx, 0x80780188
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14011ff96
test byte [rcx + 0x1c], 1
je 0x14011ff96
cmp byte [rcx + 0x19], 2
jb 0x14011ff96
mov edx, 0x31
mov r9d, 0x80780188
jmp 0x140120519
xor r14d, r14d
mov dword [rbp - 0x78], r14d
lea r9, [rbp - 0x78]
lea r8d, [r14 + 1]
lea rdx, str.CsvSourceSupported
lea rcx, str.CsvSupportSettings
call fcn.14009d3a8
mov ebx, eax
test eax, eax
js 0x14011ff96
cmp dword [rbp - 0x78], r14d
jne 0x140120895
mov ebx, 0x8078015f
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14011ff96
test byte [rcx + 0x1c], 1
je 0x14011ff96
cmp byte [rcx + 0x19], 2
jb 0x14011ff96
lea edx, [r14 + 0x32]
mov r9d, 0x8078015f
jmp 0x140120519
xor r14d, r14d
lea rdx, [r12 + 0x48]
xor r8d, r8d
mov rcx, qword [rdi + 0x40]
call fcn.140091bf0
mov ebx, eax
test eax, eax
js 0x14011ff96
mov eax, dword [rdi + 0x48]
mov dword [r12 + 0x50], eax
mov eax, dword [rdi + 8]
dec eax
test eax, 0xfffffffb
jne 0x140120931
mov eax, r14d
mov rdx, qword [rbp - 0x50]
cmp eax, dword [rbp - 0x70]
jae 0x1401208e8
mov ecx, eax
shl rcx, 7
cmp byte [rcx + rdx + 0x54], r14b
je 0x1401208e4
test byte [rcx + rdx + 0x58], 8
je 0x1401208f1
inc eax
jmp 0x1401208cb
cmp dword [rdi + 0x88], r14d
je 0x140120931
mov ebx, 0x80780141
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14011ff96
test byte [rcx + 0x1c], 1
je 0x14011ff96
cmp byte [rcx + 0x19], 2
jb 0x14011ff96
mov edx, 0x33
mov r9d, 0x80780141
jmp 0x140120519
cmp dword [rdi + 0x48], r14d
jbe 0x140120d33
mov eax, dword [rdi + 0x48]
imul rcx, rax, 0x78
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
nop dword [rax + rax]
mov rcx, rax
lea r13, [r12 + 0x58]
mov qword [rbp - 0x78], r13
mov qword [r13], rax
test rax, rax
jne 0x14012096d
mov ebx, 0x8007000e
jmp 0x140120318
mov eax, dword [rdi + 0x48]
imul r8, rax, 0x78
xor edx, edx
call sub.msvcrt.dll_memset
mov edx, r14d
mov dword [rbp - 0x60], edx
cmp edx, dword [rdi + 0x48]
jae 0x140120c88
mov ecx, edx
mov eax, edx
shl rax, 4
mov qword [rbp - 0x30], rax
mov rsi, qword [rdi + 0x50]
lea r13, [rsi + rax]
mov r15, qword [rdi + 0x58]
mov r12d, dword [r15 + rcx*4]
mov rax, qword [rdi + 0x60]
mov r14b, byte [rcx + rax]
xor eax, eax
mov ebx, eax
cmp ebx, edx
jae 0x1401209df
mov eax, ebx
mov ecx, ebx
shl rcx, 4
add rcx, rsi
mov r9d, r12d
mov r8, r13
mov edx, dword [r15 + rax*4]
call fcn.140094a44
test al, al
jne 0x140120c6f
inc ebx
mov edx, dword [rbp - 0x60]
jmp 0x1401209b2
mov rax, qword [rsp + 0x60]
xor r15d, r15d
test rax, rax
je 0x140120a00
mov rcx, rax
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rsp + 0x60], r15
mov r9b, 1
lea r8, [rsp + 0x60]
mov edx, r12d
mov rcx, r13
call fcn.140094f30
mov ebx, eax
test eax, eax
js 0x140120318
mov rdx, qword [rdi + 0x58]
mov rcx, qword [rdi + 0x50]
mov r15, qword [rbp - 0x30]
add rcx, r15
mov rbx, qword [rbp + 0xb0]
mov r9, rbx
mov r8d, dword [rbp + 0x218]
mov eax, dword [rbp - 0x60]
mov r13d, eax
mov edx, dword [rdx + rax*4]
call fcn.140110e30
imul rsi, r13, 0x78
mov rcx, qword [rbp - 0x78]
mov r9, qword [rcx]
add r9, rsi
cmp eax, 0xffffffff
je 0x140120bca
mov eax, eax
imul rcx, rax, 0x78
add rcx, rbx
mov rdx, r9
call fcn.1401055b0
mov ebx, eax
test eax, eax
js 0x140120318
mov rcx, qword [rbp - 0x78]
mov rax, qword [rcx]
mov byte [rsi + rax + 0x28], r14b
mov rax, qword [rcx]
mov dword [rsi + rax + 0x10], r12d
mov r12, qword [rsp + 0x60]
test r14b, r14b
je 0x140120c5e
mov rcx, qword [rsp + 0x68]
xor r14d, r14d
test rcx, rcx
je 0x140120abd
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rsp + 0x68], r14
lea r8, [rsp + 0x68]
lea rdx, [0x14014ff70]
mov rcx, r12
call fcn.140091810
mov ebx, eax
test eax, eax
js 0x140120f73
mov rax, qword [rdi + 0x58]
test byte [rax + r13*4], 8
je 0x140120bc2
mov qword [rbp + 0x20], r14
mov qword [rbp + 8], r14
mov qword [rbp - 0x30], r14
lea r8, [rbp + 8]
lea rdx, [rbp + 0x20]
mov r15, qword [rsp + 0x68]
mov rcx, r15
call fcn.1401373f0
mov ebx, eax
test eax, eax
js 0x140120c79
lea rdx, [rbp - 0x30]
mov rcx, r15
call fcn.1401370f8
mov ebx, eax
test eax, eax
js 0x140120c79
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x140120b44
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rbp - 0x20], r14
lea rdx, [rbp - 0x20]
mov rcx, r12
call fcn.14013612c
mov rbx, qword [rbp + 0x20]
mov rsi, qword [rbp + 8]
mov r14, qword [rbp - 0x30]
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120ba1
test byte [rcx + 0x1c], 1
je 0x140120ba1
cmp byte [rcx + 0x19], 4
jb 0x140120ba1
mov r9, r12
mov rax, qword [rbp - 0x20]
test rax, rax
cmovne r9, rax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rbx
mov rcx, qword [rcx + 0x10]
call fcn.140122948
add qword [rbp - 8], rbx
add qword [rbp - 0x10], rsi
add qword [rbp - 0x18], r14
mov rax, qword [rbp - 0x68]
mov qword [rbp - 0x68], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x78], rax
xor r14d, r14d
inc dword [rbp - 0x40]
jmp 0x140120c61
mov r8b, r14b
mov edx, r12d
mov r12, qword [rsp + 0x60]
mov rcx, r12
call fcn.1401219ac
mov ebx, eax
test eax, eax
jns 0x140120a96
test r14b, r14b
jne 0x140120f73
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120c2b
test byte [rcx + 0x1c], 1
je 0x140120c2b
cmp byte [rcx + 0x19], 3
jb 0x140120c2b
mov edx, 0x34
mov dword [rsp + 0x20], ebx
mov r9, r12
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.1400151b8
mov rax, qword [rdi + 0x50]
mov r13, qword [rbp - 0x78]
mov rcx, qword [r13]
movups xmm0, xmmword [r15 + rax]
movdqu xmmword [rsi + rcx], xmm0
xor r14d, r14d
mov edx, r14d
mov rcx, qword [r13]
add rcx, rsi
mov byte [rcx + rdx + 0x28], r14b
inc rdx
cmp rdx, 2
jl 0x140120c47
jmp 0x140120c65
xor r14d, r14d
mov r13, qword [rbp - 0x78]
mov edx, dword [rbp - 0x60]
inc edx
jmp 0x14012097e
mov ebx, 0x80780013
jmp 0x140120318
mov r13, qword [rsp + 0x78]
mov r14, qword [rsp + 0x70]
jmp 0x14012032c
mov r12, qword [rsp + 0x70]
mov r15, qword [rbp - 0x68]
cmp dword [rbp - 0x40], 0
je 0x140120d38
mov edx, dword [r12 + 0x50]
mov rcx, qword [r13]
call fcn.14010ed40
mov ebx, eax
test eax, eax
js 0x140120318
cmp byte [rdi + 0x6c], r14b
je 0x140120d53
mov rax, qword [0x140175968]
sub rax, qword [0x14014fdf0]
jne 0x140120cdb
mov rax, qword [0x140175970]
sub rax, qword [0x14014fdf8]
test rax, rax
jne 0x140120d5d
test byte [0x1401758c0], 1
jne 0x140120d5d
mov ebx, 0x80780168
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120318
test byte [rcx + 0x1c], 1
je 0x140120318
cmp byte [rcx + 0x19], 2
jb 0x140120318
mov edx, 0x36
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.14000c328
jmp 0x140120318
lea r13, [r12 + 0x58]
mov qword [rbp - 0x78], r13
cmp dword [rdi + 0x88], r14d
jne 0x140120c9b
mov ebx, 0x80780172
jmp 0x140120318
cmp byte [rdi + 0x74], r14b
je 0x140120f88
mov r12d, r14d
mov rax, qword [rsp + 0x78]
mov rbx, rax
mov r14, r15
mov rax, qword [rsp + 0x70]
cmp r12d, dword [rax + 0x50]
jae 0x140120f82
xor edx, edx
mov byte [rbp - 0x7f], dl
mov eax, r12d
imul r15, rax, 0x78
mov rax, qword [r13]
mov esi, dword [r15 + rax + 0x10]
cmp byte [r15 + rax + 0x28], dl
je 0x140120ec0
bt esi, 9
jae 0x140120ec0
mov qword [rbp - 0x68], r14
mov rax, rbx
mov qword [rsp + 0x78], rbx
test sil, 1
jne 0x140120ecb
mov qword [rsp + 0x78], rbx
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x140120de4
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
xor eax, eax
mov qword [rsp + 0x60], rax
mov rax, rbx
mov qword [rsp + 0x78], rbx
mov r13, rax
mov rcx, qword [rbp - 0x78]
mov rcx, qword [rcx]
add rcx, r15
xor r9d, r9d
lea r8, [rsp + 0x60]
mov edx, esi
call fcn.140094f30
mov ebx, eax
test eax, eax
js 0x140120318
lea rdx, [rbp - 0x7f]
mov rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.14011b420
xor edx, edx
test eax, eax
jns 0x140120e6c
mov rcx, qword [0x140173048]
lea r8, [0x140173048]
cmp rcx, r8
je 0x140120e65
test byte [rcx + 0x1c], 1
je 0x140120e65
cmp byte [rcx + 0x19], 3
jb 0x140120e65
mov edx, 0x37
mov dword [rsp + 0x20], eax
mov r9, rbx
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.1400151b8
mov rcx, qword [0x140173048]
xor edx, edx
mov al, dl
mov byte [rbp - 0x7f], dl
jmp 0x140120e76
mov rcx, qword [0x140173048]
mov al, byte [rbp - 0x7f]
mov r15, r14
mov qword [rbp - 0x68], r14
test al, al
je 0x140120e9d
cmp byte [rdi + 0x6c], dl
jne 0x140120f29
mov qword [rbp - 0x68], r14
cmp byte [rdi + 0x74], dl
je 0x140120e9d
test sil, 2
je 0x140120ea8
mov qword [rbp - 0x68], r14
mov r13, qword [rbp - 0x78]
mov rax, qword [rsp + 0x78]
jmp 0x140120ece
bt esi, 0xa
jae 0x140120ed6
mov qword [rbp - 0x68], r14
mov rax, r13
mov qword [rsp + 0x78], rax
mov r13, qword [rbp - 0x78]
jmp 0x140120ece
mov rax, qword [rsp + 0x78]
mov r15, qword [rbp - 0x68]
jmp 0x140120ece
mov r15, r14
inc r12d
jmp 0x140120d65
mov ebx, 0x8078015a
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120f1a
test byte [rcx + 0x1c], 1
je 0x140120f1a
mov r12, qword [rsp + 0x60]
cmp byte [rcx + 0x19], 2
jb 0x140120f1f
mov edx, 0x39
mov dword [rsp + 0x20], 0x8078015a
mov r9, r12
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.1400151b8
jmp 0x140120f1f
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x70]
jmp 0x140120327
mov ebx, 0x8078014f
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120318
test byte [rcx + 0x1c], 1
je 0x140120318
mov r12, qword [rsp + 0x60]
cmp byte [rcx + 0x19], 2
jb 0x140120f73
mov edx, 0x38
mov dword [rsp + 0x20], 0x8078014f
mov r9, r12
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.1400151b8
mov r14, qword [rsp + 0x70]
mov r13, qword [rsp + 0x78]
jmp 0x140120327
mov r12, rax
xor r14d, r14d
xor r13d, r13d
cmp r14d, dword [rbp - 0x70]
jae 0x140121080
mov esi, r14d
shl rsi, 7
add rsi, qword [rbp - 0x50]
cmp byte [rsi + 0x54], r13b
je 0x140121078
test byte [rsi + 0x58], 1
jne 0x140121078
mov qword [rbp - 0x30], r13
mov edx, 1
lea r8d, [rdx + 0x1f]
lea rcx, [rbp - 0x30]
call fcn.14000d5bc
mov ebx, eax
test eax, eax
js 0x140120318
movups xmm0, xmmword [rsi]
movdqu xmmword [rbp + 0xb0], xmm0
mov rbx, qword [rbp - 0x30]
mov rdx, rbx
lea rcx, [rbp + 0xb0]
call fcn.14011a46c
mov r15d, eax
test eax, eax
jns 0x140121069
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14012104b
test byte [rcx + 0x1c], 1
je 0x14012104b
cmp byte [rcx + 0x19], 3
jb 0x14012104b
mov rdx, rsi
lea rcx, [rbp + 0xc0]
call fcn.140091318
mov edx, 0x3a
mov dword [rsp + 0x20], r15d
mov r9, rax
lea r8, [0x140160d20]
mov rcx, qword [0x140173048]
mov rcx, qword [rcx + 0x10]
call fcn.1400151b8
mov rcx, rbx
call fcn.1401426a8
test rbx, rbx
je 0x140121078
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
jmp 0x140121078
mov rdx, rsi
lea rcx, [rbp + 0x30]
call fcn.14011fae0
mov qword [rax], rbx
inc r14d
jmp 0x140120f8b
lea rcx, [rbp + 0x30]
call fcn.14002a07c
mov qword [rbp - 0x78], rax
xor r14d, r14d
test rax, rax
je 0x140121145
lea rdx, [rbp - 0x78]
lea rcx, [rbp + 0x30]
call fcn.140029ac4
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x30], xmm0
mov rbx, qword [rax + 0x10]
cmp byte [rbx], r14b
je 0x1401210cf
lea r8, [rbp + 0xb0]
lea rdx, [rbx + 4]
lea rcx, [rbp + 0x30]
call fcn.140122778
test al, al
jne 0x1401210d5
mov rax, qword [rbp - 0x78]
jmp 0x140121090
mov rax, qword [0x140173048]
lea rcx, [0x140173048]
cmp rax, rcx
je 0x14012113b
test byte [rax + 0x1c], 1
je 0x14012113b
cmp byte [rax + 0x19], 2
jb 0x14012113b
lea rdx, [rbx + 4]
lea rcx, [rbp + 0xc0]
call fcn.140091318
mov rbx, rax
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x130]
call fcn.140091318
mov rcx, qword [0x140173048]
mov edx, 0x3b
mov qword [rsp + 0x20], rbx
mov r9, rax
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.140015238
mov ebx, 0x80780159
jmp 0x140120318
cmp dword [rdi + 0x18], r14d
jne 0x140121155
mov ebx, 0x8078005e
jmp 0x140120318
mov ecx, dword [rdi + 8]
call fcn.14009c21c
bt eax, 8
jb 0x140121173
cmp dword [rdi + 0x18], 1
jbe 0x140121173
mov ebx, 0x80780060
jmp 0x140120318
mov eax, dword [rdi + 0x18]
mov dword [r12 + 0x28], eax
cmp qword [rdi + 0x20], r14
jne 0x14012118b
mov ebx, 0x80004003
jmp 0x140120318
mov eax, dword [rdi + 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 0x140120963
mov eax, dword [rdi + 0x18]
lea r8, [rax + rax*4]
shl r8, 3
xor edx, edx
call sub.msvcrt.dll_memset
cmp dword [rdi + 8], 4
jne 0x14012139b
mov dl, 1
mov rsi, qword [rbp + 0x18]
mov rcx, rsi
call fcn.1400ffdd4
mov ebx, eax
test eax, eax
js 0x140120318
mov byte [rbp - 0x80], r14b
lea r8, [rbp - 0x80]
mov dl, 1
mov rcx, qword [rdi + 0x10]
call fcn.140090834
mov ebx, eax
test eax, eax
jns 0x14012124d
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120318
test byte [rcx + 0x1c], 1
je 0x140120318
cmp byte [rcx + 0x19], 2
jb 0x140120318
mov edx, 0x3c
mov r9, qword [rdi + 0x10]
mov dword [rsp + 0x20], ebx
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.1400151b8
jmp 0x140120318
mov rcx, rsi
call fcn.1401005a4
cmp byte [rbp - 0x80], r14b
jne 0x140121265
mov ebx, 0x8078000c
jmp 0x140120318
cmp dword [rdi + 0x18], 1
je 0x140121283
lea r8, str.pTemplate__m_cTarget__1
mov edx, 0x5c1
lea rcx, str.base_stor_blbengine_blbengutils_blbcatalogutils.cpp
call fcn.1400906e0
mov rcx, qword [rdi + 0x20]
xor r8d, r8d
mov rdx, qword [r12 + 0x30]
mov rcx, qword [rcx]
call fcn.140091bf0
mov ebx, eax
test eax, eax
js 0x140120318
mov rdx, qword [r12 + 0x30]
add rdx, 8
mov rcx, qword [rdi + 0x20]
xor r8d, r8d
mov rcx, qword [rcx + 8]
call fcn.140091bf0
mov ebx, eax
test eax, eax
js 0x140120318
mov rax, qword [r12 + 0x30]
mov qword [rax + 0x10], r14
mov rax, qword [r12 + 0x30]
mov word [rax + 0x18], r14w
mov rax, qword [r12 + 0x30]
mov qword [rax + 0x20], r14
lea rdx, [r12 + 0x38]
xor r8d, r8d
mov rcx, qword [rdi + 0x28]
call fcn.140091bf0
mov ebx, eax
test eax, eax
js 0x140120318
lea rdx, [r12 + 0x40]
xor r8d, r8d
mov rcx, qword [rdi + 0x30]
call fcn.140091bf0
mov ebx, eax
test eax, eax
js 0x140120318
mov rax, qword [rbp - 0x18]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp - 0x10]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp - 8]
mov qword [rsp + 0x38], rax
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x20], rax
mov r9, rdi
mov r8, rsi
mov rcx, qword [rbp]
call fcn.14012243c
mov ebx, eax
test eax, eax
jns 0x1401217f5
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120318
test byte [rcx + 0x1c], 1
je 0x140120318
cmp byte [rcx + 0x19], 2
jb 0x140120318
mov edx, 0x3d
mov r9d, ebx
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.14000c354
jmp 0x140120318
mov r8, qword [rbp + 0x10]
mov edx, dword [rbp - 0x5c]
mov rcx, qword [rdi + 0x10]
call fcn.1401161b8
cmp eax, 0xffffffff
jne 0x140121434
lea r8, [rbp - 0x38]
lea rdx, [0x14014ff70]
mov rcx, qword [rdi + 0x10]
call fcn.140091810
mov ebx, eax
test eax, eax
js 0x140120318
lea rdx, [rbp - 0x78]
mov rsi, qword [rbp - 0x38]
mov rcx, rsi
call fcn.1401125e8
mov ebx, eax
test eax, eax
jns 0x140121420
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120318
test byte [rcx + 0x1c], 1
je 0x140120318
cmp byte [rcx + 0x19], 2
jb 0x140120318
mov edx, 0x3e
mov r9, rsi
jmp 0x140121234
mov r13d, dword [rbp - 0x78]
cmp r13d, dword [rdi + 8]
je 0x140121438
mov ebx, 0x80780011
jmp 0x140120318
mov r13d, dword [rbp - 0x78]
mov r12b, r14b
cmp byte [rdi + 0x74], r14b
je 0x140121455
cmp dword [rdi + 0x78], r14d
jne 0x140121455
cmp byte [rdi + 0x6c], r14b
jne 0x140121455
call fcn.14012dbd4
mov r12b, al
mov r15d, r14d
cmp r15d, dword [rdi + 0x18]
jae 0x14012172f
mov ebx, r14d
mov r14d, r15d
lea rsi, [r14 + r14*2]
mov r8, qword [rdi + 0x20]
cmp ebx, r15d
jae 0x14012149b
mov eax, ebx
lea rcx, [rax + rax*2]
mov rdx, qword [r8 + rsi*8]
mov rcx, qword [r8 + rcx*8]
call qword [sym.imp.msvcrt.dll__wcsicmp]
nop dword [rax + rax]
test eax, eax
je 0x1401216a1
inc ebx
jmp 0x14012146c
lea rdx, [rbp + 0xb0]
mov rcx, qword [r8 + rsi*8]
call fcn.140093e30
xor edx, edx
test eax, eax
js 0x14012125b
mov ebx, edx
mov r9, qword [0x140173048]
cmp ebx, dword [rdi + 0x48]
jae 0x14012157f
mov rax, qword [rbp + 0xb0]
sub rax, qword [0x14014fdf0]
jne 0x1401214e5
mov rax, qword [rbp + 0xb8]
sub rax, qword [0x14014fdf8]
test rax, rax
jne 0x140121509
lea r8, str.guidTargetVolumeId___GUID_NULL
mov edx, 0x62e
lea rcx, str.base_stor_blbengine_blbengutils_blbcatalogutils.cpp
call fcn.1400906e0
mov r9, qword [0x140173048]
mov ecx, ebx
mov rax, qword [rdi + 0x60]
cmp byte [rcx + rax], 1
jne 0x140121578
shl rcx, 4
add rcx, qword [rdi + 0x50]
mov rax, qword [rbp + 0xb0]
sub rax, qword [rcx]
jne 0x140121534
mov rax, qword [rbp + 0xb8]
sub rax, qword [rcx + 8]
test rax, rax
jne 0x140121578
test r12b, r12b
je 0x1401216ab
lea rax, [0x140173048]
cmp r9, rax
je 0x140121578
test byte [r9 + 0x1c], 1
je 0x140121578
cmp byte [r9 + 0x19], 4
jb 0x140121578
mov edx, 0x3f
lea r8, [0x140160d20]
mov rcx, qword [r9 + 0x10]
call fcn.14000c328
mov r9, qword [0x140173048]
inc ebx
jmp 0x1401214be
mov rcx, qword [rdi + 0x20]
mov rbx, qword [rbp + 0x10]
mov r8, rbx
mov edx, dword [rbp - 0x5c]
mov rcx, qword [rcx + rsi*8]
call fcn.1401161b8
cmp eax, 0xffffffff
je 0x1401215ca
lea rdx, [r14 + r14*4]
mov r14, qword [rsp + 0x70]
mov rcx, qword [r14 + 0x30]
lea rdx, [rcx + rdx*8]
mov eax, eax
lea rcx, [rax + rax*4]
lea rcx, [rbx + rcx*8]
call fcn.1401054e8
mov ebx, eax
test eax, eax
js 0x14012031d
jmp 0x140121696
mov rcx, qword [rbp - 0x38]
xor ebx, ebx
test rcx, rcx
je 0x1401215e5
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rbp - 0x38], rbx
mov rax, qword [rdi + 0x20]
lea r8, [rbp - 0x38]
lea rdx, [0x14014ff70]
mov rcx, qword [rax + rsi*8]
call fcn.140091810
mov ebx, eax
test eax, eax
js 0x140120318
lea rcx, [r14 + r14*4]
mov r14, qword [rsp + 0x70]
mov rax, qword [r14 + 0x30]
lea r8, [rax + rcx*8]
mov rdx, qword [rdi + 0x20]
mov rdx, qword [rdx + rsi*8 + 8]
mov rsi, qword [rbp - 0x38]
mov rcx, rsi
call fcn.14011fb5c
mov ebx, eax
test eax, eax
js 0x14012031d
lea eax, [r13 - 2]
cmp eax, 1
ja 0x140121696
lea rdx, [rbp - 0x6c]
mov rcx, rsi
call fcn.14011136c
mov ebx, eax
test eax, eax
js 0x1401216fd
mov al, byte [rbp - 0x6c]
or byte [rbp - 0x80], al
test al, al
jne 0x140121696
mov rax, qword [rbp - 0x18]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp - 0x10]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp - 8]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x20], rsi
mov r9, rdi
mov r8, qword [rbp + 0x18]
mov rcx, qword [rbp]
call fcn.14012243c
mov ebx, eax
test eax, eax
js 0x1401216b5
inc r15d
xor r14d, r14d
jmp 0x140121458
mov ebx, 0x8078005f
jmp 0x140120318
mov ebx, 0x80780040
jmp 0x140120318
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14012031d
test byte [rcx + 0x1c], 1
je 0x14012031d
cmp byte [rcx + 0x19], 2
jb 0x14012031d
mov edx, 0x41
mov r9d, ebx
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.14000c354
jmp 0x14012031d
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x14012031d
test byte [rcx + 0x1c], 1
je 0x14012031d
cmp byte [rcx + 0x19], 2
jb 0x14012031d
mov edx, 0x40
jmp 0x1401216e5
cmp byte [rbp - 0x80], r14b
je 0x1401217f0
cmp byte [rdi + 0x6c], r14b
je 0x14012177f
mov ebx, 0x80780191
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120318
test byte [rcx + 0x1c], 1
je 0x140120318
cmp byte [rcx + 0x19], 2
jb 0x140120318
mov edx, 0x42
mov r9d, 0x80780191
jmp 0x140121386
mov dword [rbp - 0x5c], r14d
lea r9, [rbp - 0x5c]
mov r8d, 1
lea rdx, str.CsvTargetSupported
lea rcx, str.CsvSupportSettings
call fcn.14009d3a8
mov ebx, eax
test eax, eax
js 0x140120318
cmp dword [rbp - 0x5c], r14d
jne 0x1401217f0
mov ebx, 0x80780161
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120318
test byte [rcx + 0x1c], 1
je 0x140120318
cmp byte [rcx + 0x19], 2
jb 0x140120318
mov edx, 0x43
mov r9d, 0x80780161
jmp 0x140121386
mov r12, qword [rsp + 0x70]
mov dword [rbp - 0x5c], 1
lea rax, [rbp - 0x5c]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x50]
mov r8d, dword [rbp - 0x70]
mov rdx, qword [rbp - 0x48]
mov ecx, dword [rbp - 0x58]
call fcn.140040d58
mov ebx, eax
test eax, eax
jns 0x140121854
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140120318
test byte [rcx + 0x1c], 1
je 0x140120318
cmp byte [rcx + 0x19], 2
jb 0x140120318
mov edx, 0x44
jmp 0x140121383
mov r9d, dword [rbp - 0x5c]
mov dword [r12 + 0x18], r9d
mov rcx, qword [0x140173048]
lea rax, [0x140173048]
cmp rcx, rax
je 0x140121891
test byte [rcx + 0x1c], 1
je 0x140121891
cmp byte [rcx + 0x19], 4
jb 0x140121891
mov edx, 0x45
lea r8, [0x140160d20]
mov rcx, qword [rcx + 0x10]
call fcn.1400155dc
mov ecx, dword [rdi + 8]
call fcn.14009c21c
test al, 0x10
jne 0x1401218b3
cmp byte [rdi + 0x68], r14b
jne 0x1401218a9
cmp byte [rdi + 0x69], r14b
je 0x1401218b3
mov ebx, 0x80780037
jmp 0x140120318
movzx eax, word [rdi + 0x68]
mov word [r12 + 0x60], ax
mov al, byte [rbp - 0x6b]
mov byte [r12 + 0x62], al
lea rcx, [r12 + 0x68]
call fcn.140098b0c
mov ebx, eax
test eax, eax
js 0x140120318
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 [rdi + 0x6a]
mov byte [r12 + 0x72], al
lea rsi, [r12 + 0x80]
mov rcx, qword [rsi]
test rcx, rcx
je 0x140121920
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop dword [rax + rax]
mov qword [rsi], r14
mov al, byte [rdi + 0x6c]
mov byte [rsp + 0x30], al
mov al, byte [rdi + 0x74]
mov byte [rsp + 0x28], al
mov rax, qword [rdi + 0x90]
mov qword [rsp + 0x20], rax
mov r9d, dword [rdi + 0x88]
mov r8, qword [rbp - 0x50]
mov edx, dword [rbp - 0x70]
mov r13, qword [rbp - 0x68]
mov rcx, r13
call fcn.14010ccf8
mov ebx, eax
test eax, eax
js 0x140120318
mov rdx, rsi
mov rcx, r13
call fcn.140108e1c
mov ebx, eax
mov r13, qword [rsp + 0x78]
mov r15, qword [rsp + 0x68]
test eax, eax
js 0x140121988
cmp dword [rdi + 0x88], r14d
seta al
mov byte [r12 + 0x79], al
mov r14, qword [rsp + 0x70]
mov r12, qword [rsp + 0x60]
jmp 0x14012032c
mov r13, r14
mov ebx, 0x8007000e
jmp 0x14011ff96