Function at 0x180102270
Capabilities:
Encode data using xor

Disassembly:
jmp 0x180102270
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x68]
mov eax, 0x168
call fcn.180001055
sub rsp, rax
mov rax, qword [0x1802946b8]
xor rax, rsp
mov qword [rbp + 0x50], rax
mov r12, qword [rbp + 0xd0]
xor r14d, r14d
mov rax, qword [rcx]
mov rdi, r9
movsxd rbx, r8d
mov r15, rdx
mov rsi, rcx
mov r13d, r14d
test r9, r9
je 0x1801022da
cmp r9, rax
je 0x1801022d5
test rdx, rdx
je 0x180102545
test r8d, r8d
js 0x180102545
mov qword [rcx], r9
jmp 0x1801022e6
test rax, rax
je 0x180102545
mov rdi, rax
mov rcx, rdi
call sym.libcrypto_1_1_x64.dll_EVP_MD_meth_get_flags
test al, 2
jne 0x180102545
mov eax, 1
test r15, r15
je 0x180102506
mov rcx, rdi
mov r13d, eax
call sym.libcrypto_1_1_x64.dll_EVP_MD_block_size
cmp eax, 0x90
jg 0x180102545
cmp eax, ebx
jge 0x18010236d
mov rcx, qword [rsi + 8]
mov r8, r12
mov rdx, rdi
call sym.libcrypto_1_1_x64.dll_EVP_DigestInit_ex
test eax, eax
je 0x180102545
mov rcx, qword [rsi + 8]
mov r8, rbx
mov rdx, r15
call sym.libcrypto_1_1_x64.dll_EVP_DigestUpdate
test eax, eax
je 0x180102545
mov rcx, qword [rsi + 8]
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x30]
call sym.libcrypto_1_1_x64.dll_EVP_DigestFinal_ex
test eax, eax
je 0x180102545
mov ebx, dword [rsp + 0x20]
jmp 0x18010238d
cmp ebx, 0x90
ja 0x180102545
mov r8, rbx
lea rcx, [rsp + 0x30]
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsp + 0x20], ebx
cmp ebx, 0x90
je 0x1801023af
mov r8d, 0x90
mov eax, ebx
lea rcx, [rsp + 0x30]
sub r8d, ebx
add rcx, rax
xor edx, edx
call sub.VCRUNTIME140.dll_memset
movdqa xmm2, xmmword [str.6666666666666666]
mov rax, r14
mov ebx, 0x80
nop
movdqu xmm0, xmmword [rsp + rax + 0x30]
movdqu xmm1, xmmword [rsp + rax + 0x40]
pxor xmm0, xmm2
movdqu xmmword [rbp + rax - 0x40], xmm0
movdqu xmm0, xmmword [rsp + rax + 0x50]
pxor xmm1, xmm2
movdqu xmmword [rbp + rax - 0x30], xmm1
movdqu xmm1, xmmword [rsp + rax + 0x60]
pxor xmm0, xmm2
movdqu xmmword [rbp + rax - 0x20], xmm0
pxor xmm1, xmm2
movdqu xmmword [rbp + rax - 0x10], xmm1
add rax, 0x40
cmp rax, rbx
jl 0x1801023c0
mov rcx, rbx
nop dword [rax]
movzx eax, byte [rsp + rcx + 0x30]
xor al, 0x36
mov byte [rbp + rcx - 0x40], al
inc rcx
cmp rcx, 0x90
jl 0x180102410
mov rcx, qword [rsi + 0x10]
mov r8, r12
mov rdx, rdi
call sym.libcrypto_1_1_x64.dll_EVP_DigestInit_ex
test eax, eax
je 0x180102523
mov rcx, rdi
call sym.libcrypto_1_1_x64.dll_EVP_MD_block_size
mov rcx, qword [rsi + 0x10]
lea rdx, [rbp - 0x40]
movsxd r8, eax
call sym.libcrypto_1_1_x64.dll_EVP_DigestUpdate
test eax, eax
je 0x180102523
movdqa xmm2, xmmword [0x18020a4d0]
mov rax, r14
nop dword [rax]
movdqu xmm0, xmmword [rsp + rax + 0x30]
movdqu xmm1, xmmword [rsp + rax + 0x40]
pxor xmm0, xmm2
movdqu xmmword [rbp + rax - 0x40], xmm0
movdqu xmm0, xmmword [rsp + rax + 0x50]
pxor xmm1, xmm2
movdqu xmmword [rbp + rax - 0x30], xmm1
movdqu xmm1, xmmword [rsp + rax + 0x60]
pxor xmm0, xmm2
movdqu xmmword [rbp + rax - 0x20], xmm0
pxor xmm1, xmm2
movdqu xmmword [rbp + rax - 0x10], xmm1
add rax, 0x40
cmp rax, rbx
jl 0x180102470
nop dword [rax]
movzx eax, byte [rsp + rbx + 0x30]
xor al, 0x5c
mov byte [rbp + rbx - 0x40], al
inc rbx
cmp rbx, 0x90
jl 0x1801024c0
mov rcx, qword [rsi + 0x18]
mov r8, r12
mov rdx, rdi
call sym.libcrypto_1_1_x64.dll_EVP_DigestInit_ex
test eax, eax
je 0x180102523
mov rcx, rdi
call sym.libcrypto_1_1_x64.dll_EVP_MD_block_size
mov rcx, qword [rsi + 0x18]
lea rdx, [rbp - 0x40]
movsxd r8, eax
call sym.libcrypto_1_1_x64.dll_EVP_DigestUpdate
test eax, eax
je 0x180102523
mov rdx, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
call sym.libcrypto_1_1_x64.dll_EVP_MD_CTX_copy_ex
test eax, eax
mov eax, 1
cmovne r14d, eax
test r13d, r13d
je 0x180102540
mov edx, 0x90
lea rcx, [rsp + 0x30]
call sym.libcrypto_1_1_x64.dll_OPENSSL_cleanse
mov edx, 0x90
lea rcx, [rbp - 0x40]
call sym.libcrypto_1_1_x64.dll_OPENSSL_cleanse
mov eax, r14d
jmp 0x180102547
xor eax, eax
mov rcx, qword [rbp + 0x50]
xor rcx, rsp
call fcn.1800028c4
add rsp, 0x168
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret