Function at 0x180026b50
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x108
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x80], 0xfffffffffffffffe
mov r14, r9
mov dword [rbp + 0x7c], edx
mov rsi, rcx
xorps xmm0, xmm0
movaps xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0xf
lea rcx, [rbp - 0x40]
mov qword [rbp - 0x20], r8
mov rdx, r8
call fcn.180031b20
cmp byte [0x180052ed7], 0
jne 0x180026c7a
mov qword [rbp - 0x18], r14
mov rdx, qword [0x180050c00]
movabs rax, 0x4e7b11bc091286b2
add rax, rdx
movabs rcx, 0x4e7b11bc091286c8
add rcx, rdx
xor edx, edx
lea r8, [0x180052ecb]
nop word cs:[rax + rax]
movzx r9d, byte [rcx + rdx]
movzx r10d, byte [rax + rdx]
mov edi, r10d
and dil, 0x83
mov r11d, r9d
xor r11b, 0x3c
mov r15d, r10d
and r15b, 0xc3
mov ebx, r10d
and bl, 0x40
mov r12d, r10d
and r12b, 0x3c
mov r13d, r12d
xor r13b, 0x4c
or dil, 0x30
mov r14d, r12d
xor r14b, 0xb3
and r14b, dil
or bl, 0xc
and bl, r13b
or bl, r14b
or r12b, 0x40
xor r12b, r15b
xor r12b, 0x7c
xor r10b, 0xc3
or r10b, r12b
not r10b
or r10b, bl
xor r9b, 0xc3
or r9b, r10b
not r10b
or r10b, r11b
xor r9b, r10b
mov byte [rdx + r8], r9b
inc rdx
cmp rdx, 0xc
jne 0x180026bf0
mov byte [0x180052ed7], 1
mov r14, qword [rbp - 0x18]
movabs r15, 0x4e7b11bc091258b7
mov r13, qword [0x180050c08]
add r13, r15
xorps xmm0, xmm0
movaps xmmword [rbp + 0x50], xmm0
movaps xmmword [rbp + 0x60], xmm0
mov rcx, r13
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test rax, rax
js 0x1800273e6
mov r12, rax
cmp rax, 0xf
ja 0x180026cda
mov qword [rbp + 0x60], r12
mov qword [rbp + 0x68], 0xf
lea rcx, [rbp + 0x50]
mov rdx, r13
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
add r12, rbp
add r12, 0x50
jmp 0x180026d88
mov rax, r12
or rax, 0xf
cmp rax, 0x17
mov ebx, 0x16
cmovae rbx, rax
cmp rbx, 0xfff
jb 0x180026d5f
lea rcx, [rbx + 0x28]
call fcn.18003c980
mov rcx, 0xffffffffffffffd8
sub rcx, rax
mov rdx, rax
add rdx, 0x27
mov r8d, ecx
and r8d, 5
movabs r9, 0x5867f20cf71b6f6b
and r9, rdx
and rdx, 0xfffffffffffffffa
or rdx, r8
movabs r8, 0xa7980df308e49094
and rcx, r8
or r9, rcx
xor r8, r9
xor r9, rdx
xor rdx, 0x1a
or r8, rdx
movabs rdi, 0x5867f20cf71b6f71
xor rdi, r9
and rdi, r8
mov qword [rdi - 8], rax
jmp 0x180026d6b
lea rcx, [rbx + 1]
call fcn.18003c980
mov rdi, rax
mov qword [rbp + 0x50], rdi
mov qword [rbp + 0x60], r12
mov qword [rbp + 0x68], rbx
mov rcx, rdi
mov rdx, r13
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
add r12, rdi
mov byte [r12], 0
lea rcx, [rbp - 0x10]
lea rdx, [rbp + 0x50]
mov r13d, dword [rbp + 0x7c]
mov r8d, r13d
call fcn.18001f3b0
mov rax, qword [0x180050c00]
cmp byte [0x180052eca], 0
jne 0x1800270a4
movabs rcx, 0x4e7b11bc0912868a
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc09128676
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ebe], dl
movabs rcx, 0x4e7b11bc0912868b
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc09128677
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ebf], dl
movabs rcx, 0x4e7b11bc0912868c
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc09128678
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ec0], dl
movabs rcx, 0x4e7b11bc0912868d
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc09128679
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ec1], dl
movabs rcx, 0x4e7b11bc0912868e
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc0912867a
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ec2], dl
movabs rcx, 0x4e7b11bc0912868f
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc0912867b
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ec3], dl
movabs rcx, 0x4e7b11bc09128690
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc0912867c
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ec4], dl
movabs rcx, 0x4e7b11bc09128691
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc0912867d
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ec5], dl
movabs rcx, 0x4e7b11bc09128692
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc0912867e
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ec6], dl
movabs rcx, 0x4e7b11bc09128693
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc0912867f
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ec7], dl
movabs rcx, 0x4e7b11bc09128694
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc09128680
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ec8], dl
movabs rcx, 0x4e7b11bc09128695
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc09128681
movzx edx, byte [rax + rdx]
mov r8d, ecx
xor r8b, 0x96
mov r9d, edx
xor r9b, 0x96
xor cl, 0x69
and cl, r9b
xor dl, 0x69
and dl, r8b
or dl, cl
mov byte [0x180052ec9], dl
mov byte [0x180052eca], 1
cmp byte [0x180051f4d], 0
jne 0x180027117
movabs rcx, 0x4e7b11bc0912655d
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc09126579
xor cl, byte [rax + rdx]
mov byte [0x180051f4a], cl
movabs rcx, 0x4e7b11bc0912655e
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc0912657a
xor cl, byte [rax + rdx]
mov byte [0x180051f4b], cl
movabs rcx, 0x4e7b11bc0912655f
movzx ecx, byte [rax + rcx]
movabs rdx, 0x4e7b11bc0912657b
xor cl, byte [rax + rdx]
mov byte [0x180051f4c], cl
mov byte [0x180051f4d], 1
mov r12, qword [0x180050c10]
add r12, r15
add r15, qword [0x180050c18]
xorps xmm0, xmm0
movaps xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], 0
mov qword [rbp + 0x28], 0xf
mov rbx, qword [rbp]
mov rcx, r12
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rdi, rax
add rdi, rbx
add rdi, qword [rbp - 0x30]
mov rcx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add rax, rdi
add rax, qword [rbp + 0x40]
add rax, qword [r14 + 0x10]
cmp rax, 0x10
jb 0x180027182
lea rcx, [rbp + 0x10]
mov rdx, rax
call fcn.180012f10
mov qword [rbp + 0x20], 0
mov qword [rsp + 0x30], r14
lea rax, [rbp + 0x30]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
lea r14, [rbp + 0x10]
lea rdx, [rbp - 0x10]
lea r9, [rbp - 0x40]
mov rcx, r14
mov r8, r12
call fcn.180031df0
mov rax, qword [rbp + 8]
cmp rax, 0x10
jb 0x180027201
mov rcx, qword [rbp - 0x10]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1800271fc
mov r8, qword [rcx - 8]
sub rcx, r8
movabs rdx, 0x5537c683897700f8
add rdx, rcx
shr rdx, 5
movabs rcx, 0x2a9be341c4bb808
cmp rdx, rcx
jne 0x1800273e0
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.18003c9c4
mov qword [rbp], 0
mov qword [rbp + 8], 0xf
mov byte [rbp - 0x10], 0
mov rax, qword [rbp + 0x68]
cmp rax, 0x10
jb 0x18002726a
mov rcx, qword [rbp + 0x50]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180027265
mov r8, qword [rcx - 8]
sub rcx, r8
movabs rdx, 0x5537c683897700f8
add rdx, rcx
shr rdx, 5
movabs rcx, 0x2a9be341c4bb808
cmp rdx, rcx
jne 0x1800273e0
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.18003c9c4
mov rax, qword [rbp - 0x28]
cmp rax, 0x10
jb 0x1800272bf
mov rcx, qword [rbp - 0x40]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1800272ba
mov r8, qword [rcx - 8]
sub rcx, r8
movabs rdx, 0x5537c683897700f8
add rdx, rcx
shr rdx, 5
movabs rcx, 0x2a9be341c4bb808
cmp rdx, rcx
jne 0x1800273e0
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.18003c9c4
mov rax, qword [rbp + 0x48]
cmp rax, 0x10
jb 0x180027314
mov rcx, qword [rbp + 0x30]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18002730f
mov r8, qword [rcx - 8]
sub rcx, r8
movabs rdx, 0x5537c683897700f8
add rdx, rcx
shr rdx, 5
movabs rcx, 0x2a9be341c4bb808
cmp rdx, rcx
jne 0x1800273e0
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.18003c9c4
mov rax, qword [rbp - 0x20]
mov rdi, qword [rax]
cmp qword [rbp + 0x28], 0x10
jb 0x180027326
mov r14, qword [rbp + 0x10]
xorps xmm0, xmm0
movups xmmword [rsi + 8], xmm0
lea rax, vtable.nlohmann::json_abi_v3_11_3::detail::exception.0
mov qword [rsi], rax
mov dword [rsi + 0x18], r13d
lea rax, vtable.std::exception.0
mov qword [rsi + 0x20], rax
lea rdx, [rsi + 0x28]
movups xmmword [rsi + 0x28], xmm0
mov qword [rbp + 0x30], r14
mov byte [rbp + 0x38], 1
lea rcx, [rbp + 0x30]
call sub.VCRUNTIME140.dll___std_exception_copy
lea rax, vtable.std::runtime_error.0
mov qword [rsi + 0x20], rax
lea rax, vtable.nlohmann::json_abi_v3_11_3::detail::parse_error.0
mov qword [rsi], rax
mov qword [rsi + 0x38], rdi
mov rax, qword [rbp + 0x28]
cmp rax, 0x10
jb 0x1800273c9
mov rcx, qword [rbp + 0x10]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1800273c4
mov r8, qword [rcx - 8]
sub rcx, r8
movabs rdx, 0x5537c683897700f8
add rdx, rcx
shr rdx, 5
movabs rcx, 0x2a9be341c4bb808
cmp rdx, rcx
jne 0x1800273e0
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.18003c9c4
mov rax, rsi
add rsp, 0x108
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
call fcn.18000f240
int3