Function at 0x180012f90
Capabilities:
Encode data using xor

Disassembly:
jmp 0x180012f90
push rbx
mov eax, 0x20
call fcn.180001055
sub rsp, rax
mov rbx, r8
call sym.libcrypto_1_1_x64.dll_AES_set_encrypt_key
test eax, eax
js 0x180013204
mov ecx, dword [rbx + 0xf0]
lea eax, [rcx*4]
movsxd r9, eax
test eax, eax
jle 0x180013033
lea r8, [rbx + 8]
xor r10d, r10d
lea r8, [r8 + r9*4]
lea rax, [rbx + 8]
nop dword [rax]
nop word [rax + rax]
mov edx, dword [rax - 8]
add r10, 4
mov ecx, dword [r8 - 8]
lea r8, [r8 - 0x10]
mov dword [rax - 8], ecx
lea rax, [rax + 0x10]
mov ecx, dword [r8 + 0xc]
sub r9, 4
mov dword [r8 + 8], edx
mov edx, dword [rax - 0x14]
mov dword [rax - 0x14], ecx
mov ecx, dword [r8 + 0x10]
mov dword [r8 + 0xc], edx
mov edx, dword [rax - 0x10]
mov dword [rax - 0x10], ecx
mov ecx, dword [r8 + 0x14]
mov dword [r8 + 0x10], edx
mov edx, dword [rax - 0xc]
mov dword [rax - 0xc], ecx
mov dword [r8 + 0x14], edx
cmp r10, r9
jl 0x180012fe0
mov ecx, dword [rbx + 0xf0]
mov r11d, 1
cmp ecx, r11d
jle 0x180013202
mov qword [rsp + 0x30], rdi
lea r10, [rbx + 4]
lea rdi, [0x180000000]
nop dword [rax]
nop word [rax + rax]
mov r9d, dword [r10 + 0x10]
lea r10, [r10 + 0x10]
mov edx, dword [r10 - 4]
inc r11d
movzx eax, byte [r10 - 3]
movzx ecx, byte [rdi + rax*4 + 0x1c3c80]
mov eax, edx
shr rax, 0x18
mov r8d, dword [rdi + rcx*4 + 0x1c5080]
movzx eax, byte [rdi + rax*4 + 0x1c3c80]
xor r8d, dword [rdi + rax*4 + 0x1c4880]
movzx eax, dl
movzx ecx, byte [rdi + rax*4 + 0x1c3c80]
movzx eax, byte [r10 - 2]
xor r8d, dword [rdi + rcx*4 + 0x1c5480]
movzx ecx, byte [rdi + rax*4 + 0x1c3c80]
mov eax, r9d
shr eax, 0x10
xor r8d, dword [rdi + rcx*4 + 0x1c4c80]
movzx ecx, al
mov eax, r9d
shr eax, 8
mov dword [r10 - 4], r8d
movzx edx, byte [rdi + rcx*4 + 0x1c3c80]
movzx ecx, al
mov r8d, dword [rdi + rdx*4 + 0x1c4c80]
movzx eax, byte [rdi + rcx*4 + 0x1c3c80]
xor r8d, dword [rdi + rax*4 + 0x1c5080]
mov eax, r9d
shr rax, 0x18
movzx ecx, byte [rdi + rax*4 + 0x1c3c80]
movzx eax, r9b
mov r9d, dword [r10 + 4]
xor r8d, dword [rdi + rcx*4 + 0x1c4880]
movzx ecx, byte [rdi + rax*4 + 0x1c3c80]
mov eax, r9d
shr eax, 0x10
xor r8d, dword [rdi + rcx*4 + 0x1c5480]
movzx ecx, al
mov eax, r9d
shr eax, 8
mov dword [r10], r8d
movzx edx, byte [rdi + rcx*4 + 0x1c3c80]
movzx ecx, al
mov r8d, dword [rdi + rdx*4 + 0x1c4c80]
movzx eax, byte [rdi + rcx*4 + 0x1c3c80]
xor r8d, dword [rdi + rax*4 + 0x1c5080]
mov eax, r9d
shr rax, 0x18
movzx ecx, byte [rdi + rax*4 + 0x1c3c80]
movzx eax, r9b
mov r9d, dword [r10 + 8]
xor r8d, dword [rdi + rcx*4 + 0x1c4880]
movzx ecx, byte [rdi + rax*4 + 0x1c3c80]
mov eax, r9d
shr eax, 0x10
xor r8d, dword [rdi + rcx*4 + 0x1c5480]
movzx ecx, al
mov eax, r9d
shr eax, 8
mov dword [r10 + 4], r8d
movzx edx, byte [rdi + rcx*4 + 0x1c3c80]
movzx ecx, al
mov r8d, dword [rdi + rdx*4 + 0x1c4c80]
movzx eax, byte [rdi + rcx*4 + 0x1c3c80]
xor r8d, dword [rdi + rax*4 + 0x1c5080]
mov eax, r9d
shr rax, 0x18
movzx ecx, byte [rdi + rax*4 + 0x1c3c80]
movzx eax, r9b
xor r8d, dword [rdi + rcx*4 + 0x1c4880]
movzx ecx, byte [rdi + rax*4 + 0x1c3c80]
xor r8d, dword [rdi + rcx*4 + 0x1c5480]
mov dword [r10 + 8], r8d
cmp r11d, dword [rbx + 0xf0]
jl 0x180013060
mov rdi, qword [rsp + 0x30]
xor eax, eax
add rsp, 0x20
pop rbx
ret