Function at 0x18002e2f0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
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 [0x180046915], 0
jne 0x18002e3ef
mov rdx, qword [0x180044db8]
movabs rax, 0x6066cddaff4d6003
add rax, rdx
movabs rcx, 0x6066cddaff4d6016
add rcx, rdx
xor edx, edx
lea r8, [0x18004690a]
nop dword [rax]
movzx r11d, byte [rcx + rdx]
movzx r9d, byte [rax + rdx]
mov r14d, r11d
xor r14b, 0x21
and r14b, r11b
mov r10d, r11d
and r10b, 0x21
xor r10b, 0x23
and r14b, 0x29
or r14b, r10b
mov r10d, r11d
and r10b, 0xd6
xor r10b, r14b
mov r14d, r11d
xor r14b, 0x29
xor r11b, 0xd6
or r11b, r14b
xor r10b, 0xa
mov r14d, r10d
xor r14b, r11b
or r10b, r11b
not r10b
or r10b, r14b
mov r11d, r9d
xor r11b, 0x29
or r11b, r10b
xor r9b, r10b
xor r9b, 0xd6
and r9b, r10b
not r11b
or r11b, r9b
mov byte [rdx + r8], r11b
inc rdx
cmp rdx, 0xb
jne 0x18002e370
mov byte [0x180046915], 1
movabs r15, 0x6066cddaff4d388c
add r15, qword [0x180044dc0]
movaps xmmword [rbp], xmm0
movaps xmmword [rbp + 0x10], xmm0
mov rcx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test rax, rax
js 0x18002e682
mov r14, rax
cmp rax, 0xf
ja 0x18002e441
mov qword [rbp + 0x10], r14
mov qword [rbp + 0x18], 0xf
mov rcx, rbp
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, rbp
jmp 0x18002e4a3
mov rax, r14
or rax, 0xf
cmp rax, 0x17
mov r13d, 0x16
cmovae r13, rax
cmp r13, 0xfff
jb 0x18002e47a
lea rcx, [r13 + 0x28]
call fcn.180033070
mov r12, rax
add r12, 0x27
and r12, 0xffffffffffffffe0
mov qword [r12 - 8], rax
jmp 0x18002e486
lea rcx, [r13 + 1]
call fcn.180033070
mov r12, rax
mov qword [rbp], r12
mov qword [rbp + 0x10], r14
mov qword [rbp + 0x18], r13
mov rcx, r12
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, r12
mov byte [r14], 0
lea rcx, [rbp - 0x60]
mov rdx, rbp
mov r8d, edi
call fcn.180016ff0
xorps xmm0, xmm0
movaps xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], 0
mov rdx, qword [rbp - 0x10]
add rdx, qword [rbp - 0x50]
mov qword [rbp - 0x28], 0xf
add rdx, qword [rbx + 0x10]
cmp rdx, 0x10
jb 0x18002e4f0
lea rcx, [rbp - 0x40]
call fcn.180017490
mov qword [rbp - 0x30], 0
lea r14, [rbp - 0x40]
lea rdx, [rbp - 0x60]
lea r8, [rbp - 0x20]
mov rcx, r14
mov r9, rbx
call fcn.180017360
mov rax, qword [rbp - 0x48]
cmp rax, 0x10
jb 0x18002e546
mov rcx, qword [rbp - 0x60]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18002e541
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x18002e687
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1800330b4
mov qword [rbp - 0x50], 0
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
mov rax, qword [rbp + 0x18]
cmp rax, 0x10
jb 0x18002e599
mov rcx, qword [rbp]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18002e594
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x18002e687
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1800330b4
mov rax, qword [rbp - 8]
cmp rax, 0x10
jb 0x18002e5d8
mov rcx, qword [rbp - 0x20]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18002e5d3
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x18002e687
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1800330b4
cmp qword [rbp - 0x28], 0x10
jb 0x18002e5e3
mov r14, qword [rbp - 0x40]
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 - 0x28]
cmp rax, 0x10
jb 0x18002e66b
mov rcx, qword [rbp - 0x40]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18002e666
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x18002e687
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1800330b4
mov rax, rsi
add rsp, 0xa8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.18000b930
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3