Function at 0x1400bd800
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
mov rdi, rdx
mov r15, qword [rcx + 0x18]
mov r8, qword [rcx + 0x28]
movzx r13d, word [r15 + 0x3d2]
movzx r11d, word [r8 + 0x3d2]
lea r14, [rdx + r13]
nop word cs:[rax + rax]
mov eax, dword [0x141dd52c0]
xor edx, edx
div dword [0x141dd52c4]
add eax, 0xe854f888
and eax, 0xb71cbcd5
cmp eax, 0x101c0e46
je 0x1400bd840
nop
mov eax, dword [0x141dd52c8]
or eax, dword [str._q_b]
add eax, 0xe2890ffc
and eax, 0x67dd348b
add eax, 0xdc150a5b
cmp eax, 0xa1503f6
jb 0x1400bd860
cmp r14, 0xc
jae 0x1400be2be
xor eax, eax
nop
test al, al
jne 0x1400bd890
mov rbx, r11
sub rbx, rdi
jb 0x1400be292
mov eax, dword [0x141dd52d8]
sub eax, dword [0x141dd52dc]
and eax, 0x27965016
xor eax, 0xeb1d1026
mov edx, 0x95c9e54d
imul rdx, rax
shr rdx, 0x3f
cmp edx, 0xd3c7c829
jbe 0x1400bd900
mov eax, r11d
sub eax, edi
mov word [r15 + 0x3d2], r14w
mov word [r8 + 0x3d2], ax
mov rax, rdi
shl rax, 5
movups xmm0, xmmword [rax + r8 - 0x20]
movups xmm1, xmmword [rax + r8 - 0x10]
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
lea rax, [rdi - 1]
lea rsi, [r8 + 0x168]
imul rdx, rax, 0x38
mov r12, rax
shl r12, 5
mov qword [rsp + 0x40], rdx
lea rbp, [r8 + rdx]
add rbp, 0x168
nop word cs:[rax + rax]
mov edx, dword [0x141dd52e0]
or edx, dword [0x141dd52e4]
imul edx, edx, 0x22574237
add edx, 0xfdea980a
or edx, 0xf44720e5
mov word [r15 + 0x3d2], r14w
mov word [r8 + 0x3d2], bx
movups xmm0, xmmword [r8 + r12]
movups xmm1, xmmword [r8 + r12 + 0x10]
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
cmp edx, 0x4ce35129
je 0x1400bd930
mov qword [rsp + 0x38], r8
mov rdx, qword [rcx]
mov qword [rsp + 0x60], rcx
mov r8, qword [rcx + 0x10]
imul r9, r8, 0x38
shl r8, 5
mov r10, qword [rdx + r9 + 0x198]
mov qword [rsp + 0xc0], r10
movups xmm0, xmmword [rdx + r9 + 0x168]
movups xmm1, xmmword [rdx + r9 + 0x178]
movups xmm2, xmmword [rdx + r9 + 0x188]
movaps xmmword [rsp + 0xb0], xmm2
movaps xmmword [rsp + 0xa0], xmm1
movaps xmmword [rsp + 0x90], xmm0
mov r10, qword [rbp + 0x30]
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
movups xmm2, xmmword [rbp + 0x20]
movups xmmword [rdx + r9 + 0x168], xmm0
mov qword [rdx + r9 + 0x198], r10
movups xmmword [rdx + r9 + 0x188], xmm2
movups xmmword [rdx + r9 + 0x178], xmm1
movups xmm0, xmmword [rdx + r8]
movups xmm1, xmmword [rdx + r8 + 0x10]
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xd0], xmm0
movaps xmm0, xmmword [rsp + 0x70]
movaps xmm1, xmmword [rsp + 0x80]
movups xmmword [rdx + r8 + 0x10], xmm1
movups xmmword [rdx + r8], xmm0
imul rcx, r13, 0x38
mov rdx, qword [rsp + 0xc0]
mov qword [r15 + rcx + 0x198], rdx
movaps xmm0, xmmword [rsp + 0x90]
movaps xmm1, xmmword [rsp + 0xa0]
movaps xmm2, xmmword [rsp + 0xb0]
movups xmmword [r15 + rcx + 0x188], xmm2
movups xmmword [r15 + rcx + 0x178], xmm1
movups xmmword [r15 + rcx + 0x168], xmm0
mov rcx, r13
shl rcx, 5
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmm1, xmmword [rsp + 0xe0]
movups xmmword [r15 + rcx + 0x10], xmm1
movups xmmword [r15 + rcx], xmm0
mov rcx, r13
mov qword [rsp + 0x50], r13
lea rbp, [r13 + 1]
mov rcx, r14
sub rcx, rbp
cmp rax, rcx
jne 0x1400be2be
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x48], r11
lea rax, [r15 + 0x168]
mov qword [rsp + 0x20], rax
mov eax, dword [0x141dd52e8]
imul eax, dword [0x141dd52ec]
add eax, 0xb2b7a2fe
or eax, 0xd6083878
add eax, 0x96abb45d
cmp eax, 0xc235e00
jae 0x1400bdb3d
imul rcx, rbp, 0x38
add rcx, qword [rsp + 0x20]
mov rdx, rsi
mov r8, qword [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcpy
mov rcx, rbp
shl rcx, 5
add rcx, r15
mov rdx, qword [rsp + 0x38]
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
imul rdx, rdi, 0x38
add rdx, rsi
imul r8, rbx, 0x38
mov rcx, rsi
call sub.VCRUNTIME140.dll_memmove
imul rax, rbp, 0x38
add qword [rsp + 0x20], rax
mov rax, rbp
shl rax, 5
add rax, r15
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x30], rdi
imul rdi, rdi, 0x38
add rdi, rsi
mov rax, rbx
mov qword [rsp + 0x28], rbx
imul rbx, rbx, 0x38
mov r13, r12
mov r12, qword [rsp + 0x40]
nop word cs:[rax + rax]
mov r14d, dword [0x141dd52f0]
sub r14d, dword [0x141dd52f4]
xor r14d, 0x40000800
and r14d, 0x42006880
mov rcx, qword [rsp + 0x20]
mov rdx, rsi
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x38]
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
mov rcx, rsi
mov rdx, rdi
mov r8, rbx
call sub.VCRUNTIME140.dll_memmove
cmp r14d, 0xa6cf825e
ja 0x1400bdb80
mov eax, dword [0x141dd52f8]
add eax, dword [0x141dd52fc]
imul rax, rax, 0x27aa6d37
shr rax, 0x3c
imul eax, eax, 0x303e79d2
add eax, 0x5892eb10
cmp eax, 0x1506137f
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x38]
jae 0x1400bdc26
mov rdx, rdi
shl rdx, 5
add rdx, rsi
mov r8, rbx
shl r8, 5
mov rcx, rsi
call sub.VCRUNTIME140.dll_memmove
shl rdi, 5
add rdi, rsi
shl rbx, 5
nop word cs:[rax + rax]
mov eax, dword [0x141dd5300]
or eax, dword [0x141dd5304]
add eax, 0xfc94c7a
imul r14, rax, 0x5e30a269
shr r14, 0x3b
and r14d, 1
mov rcx, rsi
mov rdx, rdi
mov r8, rbx
call sub.VCRUNTIME140.dll_memmove
cmp r14d, 0x7598eedd
je 0x1400bdc40
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x20]
mov rax, qword [rax + 0x30]
nop word cs:[rax + rax]
mov edx, dword [0x141dd5308]
or edx, dword [0x141dd530c]
xor edx, 0xa16dfd8b
imul edx, edx, 0x58ef6f2b
xor edx, 0xfae2c5b8
cmp edx, 0x9e813b5c
ja 0x1400bdc90
test rcx, rcx
je 0x1400be050
test rax, rax
mov rax, qword [rsp + 0x30]
je 0x1400be079
lea rbx, [rsi + 0x3d8]
lea r14, [rax*8]
lea r13, [r15 + rbp*8]
add r13, 0x3d8
nop word [rax + rax]
mov eax, dword [0x141dd5320]
xor eax, dword [0x141dd5324]
and eax, 0x2420409
xor eax, 0xa5010c1
cmp eax, 0xcc8cb33c
ja 0x1400bdcf0
mov eax, dword [0x141dd5328]
xor eax, dword [0x141dd532c]
and eax, 0x112528e8
add eax, 0x4868ac4b
and eax, 0x18c0853a
cmp eax, 0x96c59798
jne 0x1400bdd3d
mov rcx, r13
mov rdx, rbx
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x28]
lea rdi, [rax*8]
mov rax, qword [rsp + 0x30]
lea rax, [rbx + rax*8]
mov qword [rsp + 0x20], rax
nop dword [rax + rax]
mov eax, dword [0x141dd5330]
and eax, dword [0x141dd5334]
imul r12d, eax, 0xa155cd24
xor r12d, 0x3b7b12b1
add r12d, 0x49d71ff7
mov rcx, r13
mov rdx, rbx
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
cmp r12d, 0x1c18057e
jb 0x1400bdd60
add rdi, 8
mov rcx, rbx
mov rdx, qword [rsp + 0x20]
mov r8, rdi
call sub.VCRUNTIME140.dll_memmove
mov rbx, qword [rsp + 0x30]
test rbx, rbx
mov r10, qword [rsp + 0x28]
mov r11, qword [rsp + 0x58]
je 0x1400bdf90
mov eax, ebx
and eax, 3
mov ecx, 0xb7c40521
nop
mov edx, dword [0x141dd5338]
add edx, dword [0x141dd533c]
imul rdx, rcx
shr rdx, 0x3c
or edx, 0x51fb8f8e
add edx, 0x3ae14a1c
cmp edx, 0x56cfdef6
jb 0x1400bddd0
test rax, rax
je 0x1400bde32
mov rcx, qword [rsp + 0x50]
lea rdx, [r15 + rcx*8]
add rdx, 0x3e0
xor ecx, ecx
nop
mov r8, qword [rdx + rcx*8]
mov qword [r8 + 0x160], r15
lea r9d, [rcx + rbp]
mov word [r8 + 0x3d0], r9w
inc rcx
cmp rax, rcx
jne 0x1400bde10
add rbp, rcx
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400bde40
cmp rbx, 4
jb 0x1400bdf90
mov eax, 0xb7f82c81
nop word cs:[rax + rax]
mov ecx, dword [0x141dd5340]
imul ecx, dword [0x141dd5344]
add ecx, 0x4451a8cb
or ecx, 0x6747ec6f
imul rcx, rax
shr rcx, 0x3c
cmp ecx, 0xdaab47e4
jbe 0x1400bdef0
mov rcx, qword [r15 + rbp*8 + 0x3d8]
mov qword [rcx + 0x160], r15
mov word [rcx + 0x3d0], bp
mov rcx, qword [r15 + rbp*8 + 0x3e0]
mov qword [rcx + 0x160], r15
lea edx, [rbp + 1]
mov word [rcx + 0x3d0], dx
mov rcx, qword [r15 + rbp*8 + 0x3e8]
mov qword [rcx + 0x160], r15
lea edx, [rbp + 2]
mov word [rcx + 0x3d0], dx
mov rcx, qword [r15 + rbp*8 + 0x3f0]
mov qword [rcx + 0x160], r15
lea edx, [rbp + 3]
mov word [rcx + 0x3d0], dx
nop word [rax + rax]
mov ecx, dword [0x141dd5348]
and ecx, dword [0x141dd534c]
xor ecx, 0xcb86952c
imul rdx, rcx, 0x7174e171
shr rdx, 0x3e
lea r8d, [rbp + 1]
lea rcx, [rbp + 3]
mov r9, qword [r15 + rbp*8 + 0x3d8]
mov qword [r9 + 0x160], r15
mov word [r9 + 0x3d0], bp
mov r9, qword [r15 + rbp*8 + 0x3e0]
mov qword [r9 + 0x160], r15
mov word [r9 + 0x3d0], r8w
lea r8d, [rbp + 2]
mov r9, qword [r15 + rbp*8 + 0x3e8]
mov qword [r9 + 0x160], r15
mov word [r9 + 0x3d0], r8w
mov r8, qword [r15 + rbp*8 + 0x3f0]
mov qword [r8 + 0x160], r15
mov word [r8 + 0x3d0], cx
cmp edx, 0xe413b235
ja 0x1400bdef0
add rbp, 4
cmp rcx, r11
jne 0x1400bde60
nop
mov eax, dword [0x141dd5350]
xor edx, edx
div dword [0x141dd5354]
imul rax, rax, 0x38afc105
shr rax, 0x3d
imul eax, eax, 0x1b518408
cmp eax, 0xd5244bf9
je 0x1400bdf90
nop word cs:[rax + rax]
mov eax, dword [0x141dd5358]
sub eax, dword [0x141dd535c]
imul rax, rax, 0x10b921d7
shr rax, 0x3a
imul eax, eax, 0x30229888
xor eax, 0xe64d6fa4
cmp eax, 0x7cef1056
ja 0x1400bdfc0
cmp r10, 0xffffffffffffffff
je 0x1400be27e
mov r8, qword [rsp + 0x28]
lea rcx, [r8 + 1]
mov eax, dword [0x141dd5360]
xor edx, edx
div dword [0x141dd5364]
nop word [rax + rax]
mov eax, dword [0x141dd5368]
and eax, dword [0x141dd536c]
imul eax, eax, 0x8a73b992
add eax, 0xc1587e17
cmp eax, 0xabdaa6ed
ja 0x1400be010
cmp r8, 3
jae 0x1400be0b3
xor eax, eax
test cl, 3
jne 0x1400be24f
jmp 0x1400be27e
mov ecx, dword [0x141dd5310]
or ecx, dword [0x141dd5314]
xor ecx, 0x7767b1d1
imul ecx, ecx, 0x1306198f
cmp ecx, 0x72ce2c77
je 0x1400be050
test rax, rax
je 0x1400be27e
ud2
mov r8, rcx
and r8, 0xfffffffffffffffc
nop word [rax + rax]
mov eax, dword [0x141dd5370]
xor edx, edx
div dword [0x141dd5374]
add eax, 0x22be4df7
and eax, 0x50a28976
cmp eax, 0xced13f55
ja 0x1400be0c0
nop
mov eax, dword [0x141dd5378]
xor eax, dword [0x141dd537c]
add eax, 0x16fb6bb
and eax, 0x6043a048
cmp eax, 0x7e06d80
jb 0x1400be0e0
xor r9d, r9d
mov edx, 0x9d3b73e1
jmp 0x1400be11c
inc r9
cmp r9, r8
je 0x1400be246
mov rax, r9
mov r9d, dword [0x141dd5380]
imul r9d, dword [0x141dd5384]
imul r9, rdx
shr r9, 0x3d
imul r9d, r9d, 0x17a21bf8
cmp r9d, 0xc26de9a7
ja 0x1400be1d9
nop word [rax + rax]
mov r10d, dword [0x141dd5388]
sub r10d, dword [0x141dd538c]
or r10d, 0x707da953
lea r9d, [rax + 1]
lea r11d, [rax + 2]
mov rdi, qword [rsi + rax*8 + 0x3d8]
mov qword [rdi + 0x160], rsi
mov word [rdi + 0x3d0], ax
mov rdi, qword [rsi + rax*8 + 0x3e0]
mov qword [rdi + 0x160], rsi
mov word [rdi + 0x3d0], r9w
lea r9, [rax + 3]
mov rdi, qword [rsi + rax*8 + 0x3e8]
mov qword [rdi + 0x160], rsi
mov word [rdi + 0x3d0], r11w
mov r11, qword [rsi + rax*8 + 0x3f0]
mov qword [r11 + 0x160], rsi
mov word [r11 + 0x3d0], r9w
cmp r10d, 0x2973feff
jne 0x1400be110
mov r9, qword [rsi + rax*8 + 0x3d8]
mov qword [r9 + 0x160], rsi
mov word [r9 + 0x3d0], ax
mov r9, qword [rsi + rax*8 + 0x3e0]
mov qword [r9 + 0x160], rsi
lea r10d, [rax + 1]
mov word [r9 + 0x3d0], r10w
mov r9, qword [rsi + rax*8 + 0x3e8]
mov qword [r9 + 0x160], rsi
lea r10d, [rax + 2]
mov word [r9 + 0x3d0], r10w
mov r9, qword [rsi + rax*8 + 0x3f0]
mov qword [r9 + 0x160], rsi
lea r10d, [rax + 3]
mov word [r9 + 0x3d0], r10w
jmp 0x1400be150
add rax, 4
test cl, 3
je 0x1400be27e
mov rcx, qword [rsp + 0x48]
sub cl, bl
inc cl
movzx ecx, cl
and ecx, 3
nop
mov rdx, qword [rsi + rax*8 + 0x3d8]
mov qword [rdx + 0x160], rsi
mov word [rdx + 0x3d0], ax
inc rax
dec rcx
jne 0x1400be260
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2
ud2