Function at 0x1800881a0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x68
mov r10d, dword [rdx + 0x3c]
mov r13d, r10d
mov r14d, dword [rdx + 0xc]
mov ebp, dword [rdx + 8]
mov r12d, dword [rdx + 0x24]
mov esi, dword [rdx + 4]
mov eax, dword [rdx]
mov r8d, dword [rdx + 0x14]
mov r15d, dword [rdx + 0x20]
mov ebx, dword [rdx + 0x10]
mov r9d, dword [rdx + 0x18]
mov ecx, dword [rdx + 0x1c]
mov r11d, dword [rdx + 0x30]
mov dword [rsp + 0x14], eax
mov eax, dword [rdx + 0x2c]
mov dword [rsp + 0x50], r10d
mov r10d, dword [rdx + 0x38]
mov edi, r10d
mov dword [rsp], r12d
mov dword [rsp + 0x20], r14d
mov dword [rsp + 0xc], r14d
mov r14d, ebp
mov dword [rsp + 0x4c], r10d
mov r10d, dword [rdx + 0x34]
mov dword [rsp + 0x40], eax
mov dword [rsp + 0xc8], eax
mov eax, dword [rdx + 0x28]
mov dword [rsp + 0x1c], ebp
mov ebp, esi
mov dword [rsp + 0x18], esi
mov esi, dword [rsp]
mov dword [rsp + 0x38], r12d
mov r12d, dword [rdx]
mov dword [rsp + 0x48], r10d
mov dword [rsp + 0x3c], eax
mov dword [rsp + 0xc0], eax
mov dword [rsp + 0x24], ebx
mov dword [rsp + 0x28], r8d
mov dword [rsp + 0x2c], r9d
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x34], r15d
mov dword [rsp + 0x44], r11d
mov dword [rsp + 4], r15d
mov dword [rsp + 0xb8], r8d
mov qword [rsp + 0x58], 4
nop dword [rax]
nop dword [rax + rax]
lea eax, [r12 + rbx]
mov edx, eax
xor edx, r11d
rol edx, 0x10
lea r12d, [rdx + r15]
xor r12d, ebx
rol r12d, 0xc
lea r11d, [r12 + rax]
mov eax, edx
xor eax, r11d
rol eax, 8
mov dword [rsp + 8], eax
lea r15d, [rax + rdx]
add r15d, dword [rsp + 4]
lea edx, [r8 + rbp]
mov r8d, edx
xor r12d, r15d
xor r8d, r10d
rol r12d, 7
mov r10d, dword [rsp + 0xb8]
rol r8d, 0x10
lea eax, [r8 + rsi]
xor r10d, eax
mov eax, r8d
rol r10d, 0xc
lea ebx, [r10 + rdx]
xor eax, ebx
lea edx, [r14 + r9]
rol eax, 8
mov dword [rsp + 4], eax
lea ebp, [rax + r8]
mov r8d, edx
xor r8d, edi
add ebp, esi
rol r8d, 0x10
xor r10d, ebp
mov r14d, r8d
rol r10d, 7
mov dword [rsp + 0xb8], r10d
mov r10d, dword [rsp + 0xc0]
lea eax, [r8 + r10]
xor eax, r9d
rol eax, 0xc
lea edi, [rax + rdx]
mov edx, dword [rsp + 0xc]
add edx, ecx
xor r14d, edi
xor r13d, edx
rol r14d, 8
rol r13d, 0x10
lea r9d, [r14 + r8]
mov r8d, dword [rsp + 0xc8]
add r8d, r13d
add r9d, r10d
xor ecx, r8d
xor eax, r9d
rol eax, 7
rol ecx, 0xc
mov dword [rsp], eax
lea esi, [rcx + rdx]
xor r13d, esi
rol r13d, 8
lea r10d, [r8 + r13]
mov r8d, dword [rsp + 0xb8]
xor ecx, r10d
rol ecx, 7
lea eax, [r8 + r11]
xor r13d, eax
rol r13d, 0x10
lea edx, [r9 + r13]
xor r8d, edx
rol r8d, 0xc
add eax, r8d
xor r13d, eax
mov dword [rsp + 0x10], eax
rol r13d, 8
lea eax, [rdx + r13]
xor r8d, eax
mov dword [rsp + 0xc0], eax
rol r8d, 7
mov dword [rsp + 0xb8], r8d
mov r9d, dword [rsp]
mov r11d, dword [rsp + 8]
lea eax, [r9 + rbx]
mov ebx, r12d
xor r11d, eax
rol r11d, 0x10
lea edx, [r11 + r10]
mov r10d, dword [rsp + 4]
xor r9d, edx
rol r9d, 0xc
add eax, r9d
xor r11d, eax
mov dword [rsp + 8], eax
rol r11d, 8
lea eax, [r11 + rdx]
xor r9d, eax
mov dword [rsp + 0xc8], eax
lea eax, [rcx + rdi]
rol r9d, 7
xor r10d, eax
lea edi, [r12 + rsi]
xor edi, r14d
rol r10d, 0x10
rol edi, 0x10
lea edx, [r10 + r15]
xor ecx, edx
rol ecx, 0xc
add eax, ecx
xor r10d, eax
mov dword [rsp], eax
mov r14d, dword [rsp]
lea eax, [rdi + rbp]
mov ebp, dword [rsp + 8]
xor ebx, eax
rol ebx, 0xc
rol r10d, 8
lea r15d, [r10 + rdx]
lea edx, [rbx + r12]
mov dword [rsp + 4], r15d
mov r12d, dword [rsp + 0x10]
add edx, esi
xor edi, edx
mov dword [rsp + 0xc], edx
rol edi, 8
xor ecx, r15d
rol ecx, 7
lea esi, [rdi + rax]
xor ebx, esi
rol ebx, 7
sub qword [rsp + 0x58], 1
jne 0x180088280
mov eax, dword [rsp + 0x14]
add eax, r12d
mov dword [rsp + 0xb8], ecx
mov rcx, qword [rsp + 0xb0]
mov dword [rcx], eax
mov eax, dword [rsp + 0x18]
add eax, ebp
mov dword [rcx + 4], eax
mov eax, dword [rsp + 0x1c]
add eax, r14d
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0x20]
add eax, edx
mov dword [rcx + 0xc], eax
mov eax, dword [rsp + 0x24]
add eax, ebx
mov dword [rcx + 0x10], eax
mov eax, dword [rsp + 0x28]
add eax, r8d
mov dword [rcx + 0x14], eax
mov eax, dword [rsp + 0x2c]
add eax, r9d
mov dword [rcx + 0x18], eax
mov eax, dword [rsp + 0xb8]
add eax, dword [rsp + 0x30]
mov dword [rcx + 0x1c], eax
mov eax, dword [rsp + 0x34]
add eax, r15d
mov dword [rcx + 0x20], eax
mov eax, dword [rsp + 0x38]
add eax, esi
mov dword [rcx + 0x24], eax
mov eax, dword [rsp + 0x3c]
add eax, dword [rsp + 0xc0]
mov dword [rcx + 0x28], eax
mov eax, dword [rsp + 0x40]
add eax, dword [rsp + 0xc8]
mov dword [rcx + 0x2c], eax
mov eax, dword [rsp + 0x44]
add eax, r11d
mov dword [rcx + 0x30], eax
mov eax, dword [rsp + 0x48]
add eax, r10d
mov dword [rcx + 0x34], eax
mov eax, dword [rsp + 0x4c]
add eax, edi
mov dword [rcx + 0x38], eax
mov eax, dword [rsp + 0x50]
add eax, r13d
mov dword [rcx + 0x3c], eax
mov rax, rcx
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret