Function at 0x1800257d0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
movaps xmmword [rsp + 0x30], xmm6
mov ebp, edx
mov rsi, rcx
mov edi, 1
cmp edx, 0x3a
je 0x180025804
xor edi, edi
cmp ebp, 0x3d
je 0x180025804
xor eax, eax
cmp ebp, 0x2e
mov edi, 0xe
cmove edi, eax
mov rbx, qword [rsi]
xor r14d, r14d
movabs r15, 0x4800800000000001
jmp 0x180025831
mov rax, rcx
nop dword [rax]
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.180022020
inc r14
mov eax, dword [rsi + 0x7c]
lea ecx, [rax + 1]
cmp ecx, 0x3e
ja 0x180025846
bt r15, rcx
jb 0x1800258e5
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
cmp rax, rdx
je 0x180025826
cmp byte [rax], 0x5c
jne 0x180025820
lea rcx, [rax + 1]
cmp rcx, rdx
je 0x180025820
mov edx, dword [rsi + 0x80]
test dl, 8
jne 0x180025879
movzx r8d, byte [rcx]
and r8b, 0xfe
cmp r8b, 0x28
je 0x180025816
mov r8d, edx
not r8d
mov r9d, edx
and r9d, 0x5cf5bcb9
and edx, 0xa30a4346
or edx, 0x4842010
xor edx, r9d
xor edx, 0x4842000
and r8d, 0xffffffef
or r8d, edx
mov edx, r8d
and edx, 0x1679a5fd
or edx, 0x60024a02
and r8d, 0xe9865a02
xor r8d, edx
cmp r8d, 0x9ffdb5fd
jne 0x180025820
movzx edx, byte [rcx]
cmp edx, 0x7d
je 0x180025816
cmp edx, 0x7b
je 0x180025816
jmp 0x180025820
cmp eax, ebp
jne 0x180025aaf
cmp ebp, 0x3a
jne 0x180025998
mov r8, qword [rsi]
mov rcx, qword [rsi + 0x68]
mov r9d, dword [rsi + 0x70]
shr r9d, 8
and r9d, 1
mov rdx, rbx
call fcn.1800245f0
test ax, ax
je 0x180025ab6
mov ebx, eax
mov r14, qword [rsi + 0x48]
xor r15d, r15d
xorps xmm6, xmm6
jmp 0x180025953
mov ecx, r15d
and cl, 7
mov dl, 1
shl dl, cl
mov ecx, r15d
shr ecx, 3
or byte [rax + rcx], dl
inc r15
cmp r15, 0x100
je 0x1800259e7
mov rax, qword [rsi + 0x58]
mov ecx, ebx
cmp bx, 0xffff
jne 0x180025969
mov cx, 0x107
cmp r15, 0x5f
je 0x180025978
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x18]
test word [rax + r15*2], cx
je 0x180025943
mov rax, qword [r14 + 0x28]
test rax, rax
jne 0x180025930
mov ecx, 0x20
call fcn.18004a3a8
movups xmmword [rax], xmm6
movups xmmword [rax + 0x10], xmm6
mov qword [r14 + 0x28], rax
jmp 0x180025930
cmp ebp, 0x2e
je 0x1800259bf
cmp ebp, 0x3d
jne 0x1800259e7
mov r8, qword [rsi]
cmp rbx, r8
je 0x180025ac0
lea rcx, [rsi + 0x40]
mov rdx, rbx
mov r9, r14
call fcn.180025ad0
jmp 0x1800259e7
mov r8, qword [rsi]
cmp rbx, r8
je 0x180025ac0
lea rcx, [rsi + 0x40]
mov rax, qword [rsi + 0x48]
add rax, 0x20
mov qword [rsp + 0x20], rax
mov rdx, rbx
mov r9, r14
call fcn.180025f90
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
cmp rax, rdx
je 0x180025a86
cmp byte [rax], 0x5c
jne 0x180025a80
lea rcx, [rax + 1]
cmp rcx, rdx
je 0x180025a80
mov edx, dword [rsi + 0x80]
test dl, 8
jne 0x180025a22
movzx r8d, byte [rcx]
and r8b, 0xfe
cmp r8b, 0x28
je 0x180025a7d
mov r8d, edx
not r8d
mov r9d, edx
and r9d, 0x5cf5bcb9
and edx, 0xa30a4346
or edx, 0x4842010
xor edx, r9d
xor edx, 0x4842000
and r8d, 0xffffffef
or r8d, edx
mov edx, r8d
and edx, 0x1679a5fd
or edx, 0x60024a02
and r8d, 0xe9865a02
xor r8d, edx
cmp r8d, 0x9ffdb5fd
jne 0x180025a80
movzx edx, byte [rcx]
cmp edx, 0x7d
je 0x180025a7d
cmp edx, 0x7b
jne 0x180025a80
mov rax, rcx
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.180022020
mov rcx, rsi
mov edx, 0x5d
mov r8d, edi
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
jmp fcn.180023190
mov ecx, edi
call sub.MSVCP140.dll_void___cdecl_std::_Xregex_error_enum_std::regex_constants::error_type_
mov ecx, 1
call sub.MSVCP140.dll_void___cdecl_std::_Xregex_error_enum_std::regex_constants::error_type_
xor ecx, ecx
call sub.MSVCP140.dll_void___cdecl_std::_Xregex_error_enum_std::regex_constants::error_type_
int3