Function at 0x140017d20
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x4a0]
sub rsp, 0x5a0
mov rax, qword [0x140209000]
xor rax, rsp
mov qword [rbp + 0x490], rax
mov rdi, rcx
mov qword [rsp + 0x50], rcx
xor r15d, r15d
mov dword [rsp + 0x40], r15d
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x220], xmm0
mov rdx, rcx
lea rcx, [rbp + 0x220]
call fcn.14001acf0
test eax, eax
jne 0x1400190a2
xorps xmm0, xmm0
movups xmmword [rbp + 0x230], xmm0
mov rbx, qword [rbp + 0x228]
test rbx, rbx
je 0x140017dab
lock inc dword [rbx + 8]
mov rbx, qword [rbp + 0x228]
movaps xmm0, xmmword [rbp + 0x220]
movdqa xmmword [rbp + 0x230], xmm0
test rbx, rbx
je 0x140017dca
lock inc dword [rbx + 8]
mov rbx, qword [rbp + 0x228]
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x260], xmm1
mov r12, 0xffffffffffffffff
test rbx, rbx
je 0x140017e23
mov eax, r12d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140017e1c
mov rbx, qword [rbp + 0x228]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140017e1c
mov rbx, qword [rbp + 0x228]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
jmp 0x140017e23
mov rbx, qword [rbp + 0x228]
cmp qword [rbp + 0x220], 0
je 0x140018ea7
movabs r14, 0x7fffffffffffffff
lea r13, [0x1402124a0]
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [0x140213db8]
test al, al
jne 0x140018fce
mov rdx, qword [rbp + 0x230]
add rdx, 0x20
lea rcx, [rbp + 0x240]
call fcn.140005040
nop
lea rcx, [rbp + 0x240]
cmp qword [rbp + 0x258], 7
cmova rcx, qword [rbp + 0x240]
mov rax, qword [rbp + 0x250]
lea rdx, [rcx + rax*2]
mov rbx, rdx
call fcn.140002d50
cmp rax, rdx
je 0x140017eec
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x140017eb5
cmp cx, 0x2f
jne 0x140017ebe
add rax, 2
cmp rax, rdx
jne 0x140017ea6
cmp rax, rdx
je 0x140017eec
nop dword [rax]
nop word [rax + rax]
lea r8, [rbx - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x140017eec
cmp cx, 0x2f
je 0x140017eec
mov rbx, r8
cmp rax, r8
jne 0x140017ed0
mov r8d, 0x3a
mov rcx, rbx
call fcn.140198050
mov rcx, rax
cmp rbx, rax
je 0x140017f27
add rax, 0xfffffffffffffffe
cmp rbx, rax
je 0x140017f27
cmp word [rax], 0x2e
jne 0x14001804f
lea rdx, [rax - 2]
cmp rbx, rdx
jne 0x140017f24
cmp word [rdx], 0x2e
je 0x140017f27
mov rcx, rax
mov qword [rbp + 0x30], rbx
sub rcx, rbx
sar rcx, 1
mov qword [rbp + 0x38], rcx
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x100]
call fcn.14001bd50
mov esi, dword [rsp + 0x40]
or esi, 1
lea rax, [rbp + 0x100]
cmp qword [rbp + 0x118], 7
cmova rax, qword [rbp + 0x100]
mov qword [rbp + 0x40], rax
mov rax, qword [rbp + 0x110]
mov qword [rbp + 0x48], rax
call fcn.14019793c
movaps xmm0, xmmword [rbp + 0x40]
movdqa xmmword [rbp + 0x180], xmm0
lea r8, [rbp + 0x180]
mov edx, eax
lea rcx, [rbp + 0x368]
call fcn.14001cb10
or esi, 0xe
lea rcx, [rbp + 0x100]
call fcn.1400052a0
lea rcx, [rbp + 0x240]
cmp qword [rbp + 0x258], 7
cmova rcx, qword [rbp + 0x240]
mov rax, qword [rbp + 0x250]
lea rdx, [rcx + rax*2]
mov rbx, rdx
call fcn.140002d50
cmp rax, rdx
je 0x14001801c
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x140017fe5
cmp cx, 0x2f
jne 0x140017fee
add rax, 2
cmp rax, rdx
jne 0x140017fd6
cmp rax, rdx
je 0x14001801c
nop dword [rax]
nop word [rax + rax]
lea r8, [rbx - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x14001801c
cmp cx, 0x2f
je 0x14001801c
mov rbx, r8
cmp rax, r8
jne 0x140018000
mov r8d, 0x3a
mov rcx, rbx
call fcn.140198050
cmp rbx, rax
je 0x140018090
lea rcx, [rax - 2]
cmp rbx, rcx
je 0x140018090
cmp word [rcx], 0x2e
jne 0x140018078
lea rdx, [rcx - 2]
cmp rbx, rdx
jne 0x140018093
cmp word [rdx], 0x2e
jne 0x140018093
jmp 0x140018090
sub rax, 2
cmp rbx, rax
je 0x140017f27
nop dword [rax]
cmp word [rax], 0x2e
je 0x140017f24
sub rax, 2
cmp rbx, rax
jne 0x140018060
jmp 0x140017f27
sub rcx, 2
cmp rbx, rcx
je 0x140018090
cmp word [rcx], 0x2e
je 0x140018093
sub rcx, 2
cmp rbx, rcx
jne 0x140018081
mov rcx, rax
mov qword [rbp + 0x50], rcx
sub rax, rcx
sar rax, 1
mov qword [rbp + 0x58], rax
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0xe0]
call fcn.14001bd50
or esi, 0x10
lea rax, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 7
cmova rax, qword [rbp + 0xe0]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp - 0x18], rax
call fcn.14019793c
movaps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp + 0x190], xmm0
lea r8, [rbp + 0x190]
mov edx, eax
lea rcx, [rbp + 0x328]
call fcn.14001cb10
or esi, 0xe0
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0xe0]
call fcn.1400052a0
lea rcx, [rbp + 0x328]
cmp qword [rbp + 0x340], 0xf
cmova rcx, qword [rbp + 0x328]
mov r8, qword [rbp + 0x338]
cmp r8, 4
jne 0x140018e5a
lea rdx, str..dat
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140018e5a
cmp qword [rbp + 0x378], 4
jne 0x140018e5a
mov rcx, rdi
cmp qword [rdi + 0x18], 7
jbe 0x14001816d
mov rcx, qword [rdi]
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x80], rcx
mov qword [rbp + 0x88], rax
call fcn.14019793c
movaps xmm0, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x170], xmm0
lea r8, [rbp + 0x170]
mov edx, eax
lea rcx, [rbp + 0x1c0]
call fcn.14001cb10
or esi, 0x700000
mov rbx, qword [rbp + 0x1d0]
lea rax, [rbp + 0x240]
cmp qword [rbp + 0x258], 7
cmova rax, qword [rbp + 0x240]
mov qword [rbp + 0x90], rax
mov rax, qword [rbp + 0x250]
mov qword [rbp + 0x98], rax
call fcn.14019793c
movaps xmm0, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0x160], xmm0
lea r8, [rbp + 0x160]
mov edx, eax
lea rcx, [rbp + 0xc0]
call fcn.14001cb10
or esi, 0x3800000
xorps xmm0, xmm0
movups xmmword [rbp + 0x308], xmm0
mov qword [rbp + 0x318], r15
mov qword [rbp + 0x320], r15
mov rax, qword [rbp + 0xd0]
cmp rax, rbx
jb 0x14001909c
sub rax, rbx
mov r8, r12
cmp rax, r12
cmovb r8, rax
lea rdx, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 0xf
cmova rdx, qword [rbp + 0xc0]
add rdx, rbx
lea rcx, [rbp + 0x308]
call fcn.140003180
or esi, 0xc000000
lea rcx, [rbp + 0xc0]
call fcn.140005310
nop
lea rcx, [rbp + 0x1c0]
call fcn.140005310
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], r15
mov qword [rbp + 0x78], r15
mov r8d, 2
lea rdx, [0x1401cccbc]
lea rcx, [rbp + 0x60]
call fcn.140003180
nop
lea r8, [rbp + 0x60]
lea rdx, [rbp + 0x368]
lea rcx, [rbp + 0x288]
call fcn.140176210
nop
lea rcx, [rbp + 0x60]
call fcn.140005310
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], r15
mov r8d, 4
lea rdx, str.__XX
lea rcx, [rbp + 0x10]
call fcn.140003180
nop
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x368]
lea rcx, [rbp + 0x2a8]
call fcn.140176210
nop
lea rcx, [rbp + 0x10]
call fcn.140005310
lea rdx, [rbp + 0x288]
lea rcx, [rbp + 0x348]
call fcn.140013b00
nop
lea r8, [rbp + 0x2a8]
lea rdx, [rbp + 0x288]
lea rcx, [rbp + 0x2e8]
call fcn.140014460
nop
mov rax, r14
mov rcx, qword [rbp + 0x298]
sub rax, rcx
cmp rax, 1
jb 0x1400190b4
lea rax, [rbp + 0x288]
cmp qword [rbp + 0x2a0], 0xf
cmova rax, qword [rbp + 0x288]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1401ccdd8]
lea rcx, [rbp + 0x1e0]
call fcn.1400062f0
bts esi, 8
mov r8d, 1
lea rdx, [0x1401ccdd8]
lea rcx, [rbp + 0x1e0]
call fcn.140005370
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts esi, 9
lea rdx, [rbp + 0x2a8]
cmp qword [rbp + 0x2c0], 0xf
cmova rdx, qword [rbp + 0x2a8]
mov r8, qword [rbp + 0x2b8]
lea rcx, [rbp - 0x60]
call fcn.140005370
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x28], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
mov qword [rax + 0x18], 0xf
mov qword [rax + 0x10], r15
mov byte [rax], 0
bts esi, 0xa
mov r8d, 3
lea rdx, [0x1401cccc8]
lea rcx, [rbp - 0x40]
call fcn.140005370
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts esi, 0xb
lea rdx, [rbp + 0x2e8]
cmp qword [rbp + 0x300], 0xf
cmova rdx, qword [rbp + 0x2e8]
mov r8, qword [rbp + 0x2f8]
lea rcx, [rbp - 0x80]
call fcn.140005370
xorps xmm0, xmm0
movups xmmword [rbp + 0x2c8], xmm0
mov qword [rbp + 0x2d8], r15
mov qword [rbp + 0x2e0], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x2c8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x2d8], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts esi, 0xc
lea rcx, [rbp - 0x80]
call fcn.140005310
nop
lea rcx, [rbp - 0x40]
call fcn.140005310
nop
lea rcx, [rbp - 0x60]
call fcn.140005310
nop
lea rcx, [rbp + 0x1e0]
call fcn.140005310
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x270], xmm0
mov qword [rbp + 0x280], rax
lea rax, [rbp + 0x240]
cmp qword [rbp + 0x258], 7
cmova rax, qword [rbp + 0x240]
mov qword [rbp + 0xa0], rax
mov rax, qword [rbp + 0x250]
mov qword [rbp + 0xa8], rax
call fcn.14019793c
movaps xmm0, xmmword [rbp + 0xa0]
movdqa xmmword [rbp + 0x150], xmm0
lea r8, [rbp + 0x150]
mov edx, eax
lea rcx, [rbp - 0x10]
call fcn.14001cb10
or esi, 0xe000
mov rdi, qword [rbp]
lea rbx, [rbp - 0x10]
cmp qword [rbp + 8], 0xf
cmova rbx, qword [rbp - 0x10]
call fcn.14019793c
mov qword [rbp + 0xb0], rbx
mov qword [rbp + 0xb8], rdi
lea r8, [rbp + 0xb0]
mov edx, eax
lea rcx, [rbp + 0x1a0]
call fcn.140002c00
or esi, 0x30000
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp + 0x270]
call fcn.1401741e0
nop
lea rcx, [rbp + 0x1a0]
call fcn.1400052a0
nop
lea rcx, [rbp - 0x10]
call fcn.140005310
mov r14, qword [rbp + 0x278]
mov r8, qword [rbp + 0x270]
sub r14, r8
mov edi, 0xffffffff
mov edx, r15d
je 0x140018641
mov rax, r15
lea r9, [0x140000000]
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rax + r8]
mov eax, edi
xor rcx, rax
movzx eax, cl
shr edi, 8
xor edi, dword [r9 + rax*4 + 0x1bc530]
inc edx
mov eax, edx
cmp rax, r14
jb 0x140018620
not edi
lea rcx, [rbp + 0x270]
call fcn.14000afb0
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x390]
call sub.VCRUNTIME140.dll_memset
lea rax, [0x140000000]
lea rax, [rax + 0x1cd010]
mov qword [rbp + 0x390], rax
lea rax, [0x1401ccf50]
mov qword [rbp + 0x3a0], rax
lea rcx, [rbp + 0x428]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
bts esi, 0x12
mov dword [rsp + 0x40], esi
xor r8d, r8d
lea rdx, [rbp + 0x3a8]
lea rcx, [rbp + 0x390]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_iostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64____ptr64]
nop
mov rax, qword [rbp + 0x390]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x390], rax
mov rax, qword [rbp + 0x390]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx + 0x38c], edx
lea rcx, [rbp + 0x3a8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + 0x3a8], rax
mov qword [rbp + 0x410], r15
mov dword [rbp + 0x418], r15d
lea rdx, str._n_t_t_t_t_tINSERT_INTO_archives___n_t_t_t_t_t_tarchiveType__n_t_t_t_t_t_tfolderId__n_t_t_t_t_t_tarchiveId__n_t_t_t_t_t_tfolderName__n_t_t_t_t_t_tarchiveName__n_t_t_t_t_t_twindowName__n_t_t_t_t_t_tcrc32__n_t_t_t_t_t_tfilePath__n_t_t_t_t_t_tfileData__n_t_t_t_t_t_tfileSize_n_t_t_t_t_t__VALUES_________________________________n_t_t_t_t
lea rcx, [rbp + 0x3a0]
call fcn.14001af10
mov qword [rsp + 0x48], r15
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0x3a8]
call fcn.14001a9c0
bts esi, 0x13
mov dword [rsp + 0x40], esi
lea rdx, [rbp + 0x120]
cmp qword [rbp + 0x138], 0xf
cmova rdx, qword [rbp + 0x120]
mov qword [rsp + 0x30], r15
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
mov r9d, 0x80
mov r8d, r12d
mov rcx, qword [0x140214e20]
call fcn.140124010
nop
lea rcx, [rbp + 0x120]
call fcn.140005310
mov edx, 1
mov r8d, edx
mov rbx, qword [rsp + 0x48]
mov rcx, rbx
call fcn.1400d3570
lea r8, [rbp + 0x288]
cmp qword [rbp + 0x2a0], 0xf
cmova r8, qword [rbp + 0x288]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], r15
mov r9, r12
mov edx, 2
mov rcx, rbx
call fcn.1400d3170
lea r8, [rbp + 0x2a8]
cmp qword [rbp + 0x2c0], 0xf
cmova r8, qword [rbp + 0x2a8]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], r15
mov r9, r12
mov edx, 3
mov rcx, rbx
call fcn.1400d3170
lea r8, [rbp + 0x348]
cmp qword [rbp + 0x360], 0xf
cmova r8, qword [rbp + 0x348]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], r15
mov r9, r12
mov edx, 4
mov rcx, rbx
call fcn.1400d3170
lea r8, [rbp + 0x2e8]
cmp qword [rbp + 0x300], 0xf
cmova r8, qword [rbp + 0x2e8]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], r15
mov r9, r12
mov edx, 5
mov rcx, rbx
call fcn.1400d3170
lea r8, [rbp + 0x2c8]
cmp qword [rbp + 0x2e0], 0xf
cmova r8, qword [rbp + 0x2c8]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], r15
mov r9, r12
mov edx, 6
mov rcx, rbx
call fcn.1400d3170
movsxd r8, edi
mov edx, 7
mov rcx, rbx
call fcn.1400d3570
lea r8, [rbp + 0x308]
cmp qword [rbp + 0x320], 0xf
cmova r8, qword [rbp + 0x308]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], r15
mov r9, r12
mov edx, 8
mov rcx, rbx
call fcn.1400d3170
mov rsi, qword [rbp + 0x278]
mov rdi, qword [rbp + 0x270]
sub rsi, rdi
mov edx, 8
mov rcx, rbx
call fcn.1400d2f90
test eax, eax
jne 0x140018951
test rdi, rdi
je 0x14001893f
mov rcx, qword [rbx + 0x80]
add rcx, 0x1c0
movsxd r8, esi
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov rdx, rdi
call fcn.1400ca100
mov edi, eax
test eax, eax
je 0x14001893f
mov rcx, qword [rbx]
mov dword [rcx + 0x50], eax
mov edx, eax
call fcn.1400a1b50
mov rcx, qword [rbx]
mov edx, edi
call fcn.14009e680
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140018951
call qword [0x140209400]
movsxd r8, r14d
mov edx, 0xa
mov rcx, rbx
call fcn.1400d3570
mov edi, r15d
test rbx, rbx
jne 0x14001897a
lea rdx, str.API_called_with_NULL_prepared_statement
lea ecx, [rbx + 0x15]
call fcn.1400a0cd0
jmp 0x14001899f
cmp qword [rbx], 0
jne 0x140018998
lea rdx, str.API_called_with_finalized_prepared_statement
mov ecx, 0x15
call fcn.1400a0cd0
mov eax, 1
jmp 0x14001899b
mov eax, r15d
test eax, eax
je 0x1400189ce
lea rsi, [0x1401e7a54]
mov qword [rsp + 0x20], rsi
mov r9d, 0x16264
lea r8, str.misuse
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0x15
call fcn.1400a0cd0
jmp 0x140018b12
mov r13, qword [rbx]
mov rcx, qword [r13 + 0x18]
test rcx, rcx
je 0x1400189e0
call qword [0x1402093f0]
mov rcx, rbx
call fcn.1400d1730
cmp eax, 0x11
jne 0x140018af5
mov eax, edi
inc edi
cmp eax, 0x32
jge 0x140018af5
mov esi, dword [rbx + 0x30]
mov rcx, rbx
call fcn.140124230
mov r14d, eax
test eax, eax
jne 0x140018a35
mov rcx, rbx
call fcn.1400d0b20
test esi, esi
js 0x140018a23
mov byte [rbx + 0xc5], 0xfe
mov rcx, rbx
call fcn.1400d1730
cmp eax, 0x11
je 0x1400189f1
jmp 0x140018af5
mov rcx, qword [r13 + 0x190]
test rcx, rcx
jne 0x140018a46
mov rsi, r15
jmp 0x140018a7d
movzx edx, word [rcx + 0x14]
movzx eax, dx
mov r8d, 0x202
and ax, r8w
cmp ax, r8w
jne 0x140018a69
cmp byte [rcx + 0x16], 1
jne 0x140018a69
mov rsi, qword [rcx + 8]
jmp 0x140018a7d
test dl, 1
je 0x140018a73
mov rsi, r15
jmp 0x140018a7d
mov dl, 1
call fcn.1400ca560
mov rsi, rax
mov rdx, qword [rbx + 0xa8]
test rdx, rdx
je 0x140018a91
mov rcx, r13
call fcn.14009ddb0
cmp byte [r13 + 0x67], 0
jne 0x140018ae7
test rsi, rsi
je 0x140018acd
mov rdi, r12
lea rdi, [rdi + 1]
cmp byte [rsi + rdi], 0
jne 0x140018aa0
lea rdx, [rdi + 1]
mov rcx, r13
call fcn.14009e290
mov r15, rax
test rax, rax
je 0x140018acd
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbx + 0xa8], r15
mov edx, r14d
mov rcx, r13
call fcn.14009e680
mov dword [rbx + 0x34], eax
xor r15d, r15d
jmp 0x140018af5
mov qword [rbx + 0xa8], r15
mov dword [rbx + 0x34], 7
mov rcx, qword [r13 + 0x18]
test rcx, rcx
je 0x140018b04
call qword [0x140209400]
lea rsi, [0x1401e7a54]
lea r13, [0x1402124a0]
test rbx, rbx
je 0x140018ba7
mov rdi, qword [rbx]
test rdi, rdi
jne 0x140018b55
lea rdx, str.API_called_with_finalized_prepared_statement
lea ecx, [rdi + 0x15]
call fcn.1400a0cd0
mov qword [rsp + 0x20], rsi
mov r9d, 0x15f4a
lea r8, str.misuse
lea rdx, str._s_at_line__d_of___.10s_
lea ecx, [rdi + 0x15]
call fcn.1400a0cd0
jmp 0x140018ba7
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x140018b64
call qword [0x1402093f0]
cmp qword [rbx + 0xb8], 0
jle 0x140018b79
mov rdx, rbx
mov rcx, rdi
call fcn.1400d0960
mov rcx, rbx
call fcn.1400ce6b0
mov esi, eax
mov rcx, rbx
call fcn.1400ce7e0
cmp byte [rdi + 0x67], 0
jne 0x140018b95
test esi, esi
je 0x140018b9f
mov edx, esi
mov rcx, rdi
call fcn.14009e680
mov rcx, rdi
call fcn.1401645d0
lea rbx, [rbp + 0x2a8]
cmp qword [rbp + 0x2c0], 0xf
cmova rbx, qword [rbp + 0x2a8]
lea rdi, [rbp + 0x288]
cmp qword [rbp + 0x2a0], 0xf
cmova rdi, qword [rbp + 0x288]
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], r15
mov r8d, 0x24
lea rdx, str.____Inserting_entity_archive___s__s_n
lea rcx, [rsp + 0x60]
call fcn.140003180
nop
lea rsi, [0x140216690]
mov qword [rbp + 0x140], rsi
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x140018fc2
cmp dword [0x1402166dc], 0x7fffffff
je 0x140018fac
lea r8, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova r8, qword [rsp + 0x60]
mov qword [rsp + 0x20], rbx
mov r9, rdi
mov edx, 0x400
mov rcx, r13
call fcn.140002410
mov r8, r12
nop word [rax + rax]
inc r8
cmp byte [r8 + r13], 0
jne 0x140018c60
mov rdx, r13
lea rcx, [0x14020d748]
call fcn.140005370
mov rdx, r13
xor r8b, r8b
movzx eax, byte [0x1402124a0]
test al, al
je 0x140018d3b
mov ecx, dword [0x140212090]
cmp al, 0xa
jne 0x140018c9d
mov r8b, 1
inc ecx
inc rdx
movzx eax, byte [rdx]
test al, al
jne 0x140018c94
mov dword [0x140212090], ecx
test r8b, r8b
je 0x140018d3b
cmp ecx, dword [0x140209098]
jb 0x140018d3b
mov rbx, qword [0x14020d758]
cmp qword [0x14020d760], 0xf
seta r14b
lea rdi, [0x14020d748]
mov rsi, qword [0x14020d748]
cmova rdi, rsi
test rbx, rbx
je 0x140018d02
mov r8, rbx
mov edx, 0xa
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x140018d02
sub rax, rdi
jmp 0x140018d05
mov rax, r12
inc rax
cmp rbx, rax
cmovb rax, rbx
lea rcx, [0x14020d748]
test r14b, r14b
cmovne rcx, rsi
sub rbx, rax
lea r8, [rbx + 1]
lea rdx, [rcx + rax]
call sub.VCRUNTIME140.dll_memmove
mov qword [0x14020d758], rbx
lea rsi, [0x140216690]
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
nop
lea rcx, [rsp + 0x60]
call fcn.140005310
nop
mov rax, qword [rbp + 0x390]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x390], rax
mov rax, qword [rbp + 0x390]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx + 0x38c], edx
lea rcx, [rbp + 0x3a8]
call fcn.14001a6e0
lea rcx, [rbp + 0x3b0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_iostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x428]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
nop
mov rcx, qword [rbp + 0x270]
test rcx, rcx
je 0x140018dfe
mov rdx, qword [rbp + 0x280]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018de4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018fa5
call fcn.140198514
mov qword [rbp + 0x270], r15
mov qword [rbp + 0x278], r15
mov qword [rbp + 0x280], r15
lea rcx, [rbp + 0x2c8]
call fcn.140005310
nop
lea rcx, [rbp + 0x2e8]
call fcn.140005310
nop
lea rcx, [rbp + 0x348]
call fcn.140005310
nop
lea rcx, [rbp + 0x2a8]
call fcn.140005310
nop
lea rcx, [rbp + 0x288]
call fcn.140005310
nop
lea rcx, [rbp + 0x308]
call fcn.140005310
mov rdi, qword [rsp + 0x50]
movabs r14, 0x7fffffffffffffff
lea rcx, [rbp + 0x328]
call fcn.140005310
nop
lea rcx, [rbp + 0x368]
call fcn.140005310
nop
lea rcx, [rbp + 0x240]
call fcn.1400052a0
lea rcx, [rbp + 0x230]
call fcn.14000bc50
mov rax, qword [rbp + 0x260]
cmp qword [rbp + 0x230], rax
jne 0x140017e50
mov rbx, qword [rbp + 0x228]
mov rcx, qword [rbp + 0x268]
test rcx, rcx
je 0x140018ef0
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140018ee9
mov rbx, qword [rbp + 0x268]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140018ee9
mov rcx, qword [rbp + 0x268]
mov rax, qword [rcx]
call qword [rax + 8]
mov rbx, qword [rbp + 0x228]
mov rcx, qword [rbp + 0x238]
test rcx, rcx
je 0x140018f39
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140018f32
mov rbx, qword [rbp + 0x238]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140018f32
mov rcx, qword [rbp + 0x238]
mov rax, qword [rcx]
call qword [rax + 8]
mov rbx, qword [rbp + 0x228]
test rbx, rbx
je 0x140018f73
mov eax, r12d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140018f73
mov rbx, qword [rbp + 0x228]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r12d
cmp r12d, 1
jne 0x140018f73
mov rcx, qword [rbp + 0x228]
mov rax, qword [rcx]
call qword [rax + 8]
mov al, 1
mov rcx, qword [rbp + 0x490]
xor rcx, rsp
call fcn.1401981a0
lea r11, [rsp + 0x5a0]
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
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov dword [0x1402166dc], 0x7ffffffe
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov rcx, qword [rbp + 0x268]
test rcx, rcx
je 0x140019011
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140019011
mov rbx, qword [rbp + 0x268]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140019011
mov rcx, qword [rbp + 0x268]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x238]
test rcx, rcx
je 0x140019054
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140019054
mov rbx, qword [rbp + 0x238]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140019054
mov rcx, qword [rbp + 0x238]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x228]
test rcx, rcx
je 0x140019095
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140019095
mov rbx, qword [rbp + 0x228]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r12d
cmp r12d, 1
jne 0x140019095
mov rcx, qword [rbp + 0x228]
mov rax, qword [rcx]
call qword [rax + 8]
xor al, al
jmp 0x140018f75
call fcn.1400053f0
nop
mov r8, rdi
mov edx, eax
lea rcx, str.directory_iterator::directory_iterator
call fcn.14000b9d0
nop
call fcn.140002610
int3