Function at 0x180020500
Capabilities:
Encode data using xor

Disassembly:
mov rax, qword [rdi + 0x3c]
mov rbx, qword [rdi + 0x44]
mov rcx, qword [rdi + 0x4c]
mov rdx, qword [rdi + 0x54]
mov rbp, qword [rdi + 0x5c]
jmp 0x180020520
mov r8, qword [rdi - 0x64]
mov r9, qword [rdi - 0x34]
mov r10, qword [rdi - 4]
mov r11, qword [rdi + 0x2c]
xor rcx, qword [rdi - 0x54]
xor rdx, qword [rdi - 0x4c]
xor rax, r8
xor rbx, qword [rdi - 0x5c]
xor rcx, qword [rdi - 0x2c]
xor rax, qword [rdi - 0x3c]
mov r12, rbp
xor rbp, qword [rdi - 0x44]
xor rcx, r10
xor rax, qword [rdi - 0x14]
xor rdx, qword [rdi - 0x24]
xor rbx, r9
xor rbp, qword [rdi - 0x1c]
xor rcx, qword [rdi + 0x24]
xor rax, qword [rdi + 0x14]
xor rdx, qword [rdi + 4]
xor rbx, qword [rdi - 0xc]
xor rbp, qword [rdi + 0xc]
mov r13, rcx
rol rcx, 1
xor rcx, rax
xor rdx, r11
rol rax, 1
xor rax, rdx
xor rbx, qword [rdi + 0x1c]
rol rdx, 1
xor rdx, rbx
xor rbp, qword [rdi + 0x34]
rol rbx, 1
xor rbx, rbp
rol rbp, 1
xor rbp, r13
xor r9, rcx
xor r10, rdx
rol r9, 0x2c
xor r11, rbp
xor r12, rax
rol r10, 0x2b
xor r8, rbx
mov r13, r9
rol r11, 0x15
or r9, r10
xor r9, r8
rol r12, 0xe
xor r9, qword [r15]
lea r15, [r15 + 8]
mov r14, r12
and r12, r11
mov qword [rsi - 0x64], r9
xor r12, r10
not r10
mov qword [rsi - 0x54], r12
or r10, r11
mov r12, qword [rdi + 0x4c]
xor r10, r13
mov qword [rsi - 0x5c], r10
and r13, r8
mov r9, qword [rdi - 0x1c]
xor r13, r14
mov r10, qword [rdi - 0x14]
mov qword [rsi - 0x44], r13
or r14, r8
mov r8, qword [rdi - 0x4c]
xor r14, r11
mov r11, qword [rdi + 0x1c]
mov qword [rsi - 0x4c], r14
xor r8, rbp
xor r12, rdx
rol r8, 0x1c
xor r11, rcx
xor r9, rax
rol r12, 0x3d
rol r11, 0x2d
xor r10, rbx
rol r9, 0x14
mov r13, r8
or r8, r12
rol r10, 3
xor r8, r11
mov qword [rsi - 0x24], r8
mov r14, r9
and r9, r13
mov r8, qword [rdi - 0x5c]
xor r9, r12
not r12
mov qword [rsi - 0x1c], r9
or r12, r11
mov r9, qword [rdi - 0x2c]
xor r12, r10
mov qword [rsi - 0x2c], r12
and r11, r10
mov r12, qword [rdi + 0x3c]
xor r11, r14
mov qword [rsi - 0x34], r11
or r14, r10
mov r10, qword [rdi + 4]
xor r14, r13
mov r11, qword [rdi + 0x34]
mov qword [rsi - 0x3c], r14
xor r10, rbp
xor r11, rax
rol r10, 0x19
xor r9, rdx
rol r11, 8
xor r12, rbx
rol r9, 6
xor r8, rcx
rol r12, 0x12
mov r13, r10
and r10, r11
rol r8, 1
not r11
xor r10, r9
mov qword [rsi - 0xc], r10
mov r14, r12
and r12, r11
mov r10, qword [rdi - 0xc]
xor r12, r13
mov qword [rsi - 4], r12
or r13, r9
mov r12, qword [rdi + 0x54]
xor r13, r8
mov qword [rsi - 0x14], r13
and r9, r8
xor r9, r14
mov qword [rsi + 0xc], r9
or r14, r8
mov r9, qword [rdi - 0x3c]
xor r14, r11
mov r11, qword [rdi + 0x24]
mov qword [rsi + 4], r14
mov r8, qword [rdi - 0x44]
xor r10, rcx
xor r11, rdx
rol r10, 0xa
xor r9, rbx
rol r11, 0xf
xor r12, rbp
rol r9, 0x24
xor r8, rax
rol r12, 0x38
mov r13, r10
or r10, r11
rol r8, 0x1b
not r11
xor r10, r9
mov qword [rsi + 0x1c], r10
mov r14, r12
or r12, r11
xor r12, r13
mov qword [rsi + 0x24], r12
and r13, r9
xor r13, r8
mov qword [rsi + 0x14], r13
or r9, r8
xor r9, r14
mov qword [rsi + 0x34], r9
and r8, r14
xor r8, r11
mov qword [rsi + 0x2c], r8
xor rdx, qword [rdi - 0x54]
xor rbp, qword [rdi - 0x24]
rol rdx, 0x3e
xor rcx, qword [rdi + 0x44]
rol rbp, 0x37
xor rax, qword [rdi + 0xc]
rol rcx, 2
xor rbx, qword [rdi + 0x14]
xchg rsi, rdi
rol rax, 0x27
rol rbx, 0x29
mov r13, rdx
and rdx, rbp
not rbp
xor rdx, rcx
mov qword [rdi + 0x5c], rdx
mov r14, rax
and rax, rbp
xor rax, r13
mov qword [rdi + 0x3c], rax
or r13, rcx
xor r13, rbx
mov qword [rdi + 0x54], r13
and rcx, rbx
xor rcx, r14
mov qword [rdi + 0x4c], rcx
or rbx, r14
xor rbx, rbp
mov qword [rdi + 0x44], rbx
mov rbp, rdx
mov rdx, r13
test r15, 0xff
jne 0x180020520
lea r15, [r15 - 0xc0]
repz ret