Function at 0x180030a30
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0xa8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x20], 0xfffffffffffffffe
mov rbx, r8
mov edi, edx
mov rsi, rcx
xorps xmm0, xmm0
movaps xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], 0
mov qword [rbp - 8], 0xf
cmp byte [0x18004ce03], 0
jne 0x180030b31
mov rdx, qword [0x18004af78]
movabs rax, 0x983cbd6fb97c50b9
add rax, rdx
movabs rcx, 0x983cbd6fb97c50cd
add rcx, rdx
xor edx, edx
lea r8, [0x18004cdf8]
nop word cs:[rax + rax]
movzx r11d, byte [rax + rdx]
mov r10d, r11d
and r10b, 0x45
or r10b, 0x28
mov r9d, r11d
and r9b, 0xba
xor r9b, r10b
mov r10d, r9d
xor r10b, 0x28
xor r9b, 0x37
or r9b, r10b
mov r14d, r11d
xor r14b, 3
and r14b, r11b
mov r10d, r11d
not r10b
and r11b, 3
mov r15d, r14d
and r15b, 0x1f
xor r15b, r11b
and r14b, 3
xor r15b, 0x83
or r15b, r14b
xor r15b, r9b
xor r15b, 0x7c
or r10b, r9b
not r10b
and r10b, 0x1f
or r10b, r15b
xor r10b, byte [rcx + rdx]
xor r10b, 0xe0
mov byte [rdx + r8], r10b
inc rdx
cmp rdx, 0xb
jne 0x180030ab0
mov byte [0x18004ce03], 1
movabs r14, 0x983cbd6fb97c25a8
add r14, qword [0x18004af80]
movaps xmmword [rbp - 0x60], xmm0
movaps xmmword [rbp - 0x50], xmm0
mov rcx, r14
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
lea rcx, [rbp - 0x60]
mov rdx, r14
mov r8, rax
call fcn.1800118c0
lea rcx, [rbp - 0x40]
lea rdx, [rbp - 0x60]
mov r8d, edi
call fcn.18001c3c0
xorps xmm0, xmm0
movaps xmmword [rbp], xmm0
mov qword [rbp + 0x10], 0
mov qword [rbp + 0x18], 0xf
mov rdx, qword [rbp - 0x30]
add rdx, qword [rbx + 0x10]
cmp rdx, 0x10
jb 0x180030ba6
mov rcx, rbp
call fcn.18000f6c0
mov qword [rbp + 0x10], 0
mov r14, rbp
lea rdx, [rbp - 0x40]
lea r8, [rbp - 0x20]
mov rcx, r14
mov r9, rbx
call fcn.18001c910
mov rax, qword [rbp - 0x28]
cmp rax, 0x10
jb 0x180030bfb
mov rcx, qword [rbp - 0x40]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180030bf6
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x180030d33
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1800376d4
mov qword [rbp - 0x30], 0
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], 0
mov rax, qword [rbp - 0x48]
cmp rax, 0x10
jb 0x180030c4e
mov rcx, qword [rbp - 0x60]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180030c49
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x180030d33
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1800376d4
mov rax, qword [rbp - 8]
cmp rax, 0x10
jb 0x180030c8d
mov rcx, qword [rbp - 0x20]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180030c88
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x180030d33
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1800376d4
cmp qword [rbp + 0x18], 0x10
jb 0x180030c98
mov r14, qword [rbp]
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], edi
lea rax, vtable.std::exception.0
mov qword [rsi + 0x20], rax
lea rdx, [rsi + 0x28]
movups xmmword [rsi + 0x28], xmm0
mov qword [rbp - 0x20], r14
mov byte [rbp - 0x18], 1
lea rcx, [rbp - 0x20]
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::type_error.0
mov qword [rsi], rax
mov rax, qword [rbp + 0x18]
cmp rax, 0x10
jb 0x180030d20
mov rcx, qword [rbp]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180030d1b
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x180030d33
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1800376d4
mov rax, rsi
add rsp, 0xa8
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3