Function at 0x5dab23
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
movaps xmm0, xmmword [0x0065a610]
movaps xmmword [0x02158c40], xmm0
mov al, 0x12
mov byte [0x02158c50], al
xor edi, edi
mov qword [0x02158c58], rdi
movaps xmmword [0x02158c80], xmm0
mov byte [0x02158c90], al
mov qword [0x02158c98], rdi
lea rcx, [0x02158700]
mov qword [0x021585e0], rcx
movaps xmm0, xmmword [0x0065a620]
movaps xmmword [0x02158cc0], xmm0
mov byte [0x02158cd0], al
mov qword [0x02158cd8], rdi
lea rcx, [0x02158760]
mov qword [0x02158600], rcx
mov dl, 1
mov byte [0x02158760], dl
mov qword [0x02158768], rdi
mov r9, qword [0x02129550]
mov qword [0x02158770], r9
lea rcx, [0x0065a873]
mov qword [0x02158778], rcx
lea rbp, [0x02158790]
mov qword [0x02158608], rbp
mov byte [0x02158790], dl
mov qword [0x02158798], 8
mov qword [0x021587a0], r9
lea r10, [0x0065a87a]
mov qword [0x021587a8], r10
lea rbp, [0x021587c0]
mov qword [0x02158610], rbp
mov byte [0x021587c0], dl
mov qword [0x021587c8], 0x10
mov r11, qword [0x02129768]
mov qword [0x021587d0], r11
lea rcx, [0x0065a881]
mov qword [0x021587d8], rcx
lea rsi, [0x021587f0]
mov qword [0x02158618], rsi
movaps xmm0, xmmword [0x0065a630]
movaps xmmword [0x02158d00], xmm0
mov byte [0x02158d10], al
mov qword [0x02158d18], rdi
lea rsi, [0x02158850]
mov qword [0x02158620], rsi
movaps xmm1, xmmword [0x0065a640]
movaps xmmword [0x02158d40], xmm1
mov word [0x02158d50], 0x30e
mov qword [0x02158d58], rdi
lea r8, [0x021586a0]
lea rbp, [0x0065a850]
lea rsi, [0x02158640]
mov eax, edi
and eax, 0xa
mov rbx, rdi
xor rbx, 0xa
or rbx, rax
lea rax, [rbx + rbx*2]
shl rax, 4
lea rbx, [r8 + rax]
mov byte [rax + r8], 1
mov qword [rax + r8 + 8], rdi
mov rcx, qword [rbp + rdi*8]
mov qword [rax + r8 + 0x18], rcx
mov qword [rsi + rdi*8], rbx
mov edi, 1
test dl, 1
mov edx, 0
jne 0x5dac9d
mov qword [0x02158900], 2
lea rax, [0x021588e0]
mov dl, 2
mov byte [0x021588e0], dl
mov qword [0x02158908], rsi
mov qword [0x02158d60], rax
lea rcx, [0x02158d40]
mov al, 1
mov byte [0x02158850], al
xor esi, esi
mov qword [0x02158858], rsi
mov qword [0x02158860], rcx
lea rcx, [0x0065a888]
mov qword [0x02158868], rcx
lea rcx, [0x02158910]
mov qword [0x02158628], rcx
lea rbx, [0x02158620]
mov byte [0x02158910], al
mov r13d, 8
mov qword [0x02158918], r13
mov qword [0x02158920], r11
lea r12, [0x0065a88d]
mov qword [0x02158928], r12
lea rcx, [0x02158940]
mov qword [0x02158630], rcx
mov byte [0x02158940], al
mov r14d, 0x10
mov qword [0x02158948], r14
mov rcx, qword [0x02129778]
mov qword [0x02158950], rcx
lea rcx, [0x0065a896]
mov qword [0x02158958], rcx
lea rcx, [0x02158970]
mov qword [0x02158638], rcx
movaps xmm1, xmmword [0x0065a650]
movaps xmmword [0x02158d80], xmm1
lea rcx, [0x02158d80]
mov word [0x02158d90], 0x313
mov rdi, qword [0x02129510]
mov qword [0x02158d98], rdi
mov qword [0x021589c0], rsi
lea rdi, [0x021589a0]
mov byte [0x021589a0], 0
mov qword [0x02158da0], rdi
mov byte [0x02158970], al
mov qword [0x02158978], 0x20
mov qword [0x02158980], rcx
lea rcx, [0x0065a8a3]
mov qword [0x02158988], rcx
mov ebp, 4
mov qword [0x02158840], rbp
lea rcx, [0x02158820]
mov byte [0x02158820], dl
mov qword [0x02158848], rbx
mov qword [0x02158d20], rcx
lea rcx, [0x02158d00]
mov byte [0x021587f0], al
mov ebx, 0x18
mov qword [0x021587f8], rbx
mov qword [0x02158800], rcx
lea rcx, [0x0065a8af]
mov qword [0x02158808], rcx
mov qword [0x02158750], rbp
mov byte [0x02158730], dl
lea rcx, [0x02158600]
mov qword [0x02158758], rcx
lea rcx, [0x02158730]
mov qword [0x02158ce0], rcx
lea rcx, [0x02158cc0]
movaps xmm1, xmmword [0x0065a660]
movaps xmmword [0x02158dc0], xmm1
mov r15b, 0x18
mov byte [0x02158dd0], r15b
mov qword [0x02158dd8], rcx
lea rcx, [0x005db26b]
mov qword [0x02158df0], rcx
lea rcx, [0x02158dc0]
mov byte [0x02158700], al
mov qword [0x02158708], rsi
mov qword [0x02158710], rcx
lea rcx, [0x0065a8b6]
mov qword [0x02158718], rcx
lea rcx, [0x021589d0]
mov qword [0x021585e8], rcx
mov byte [0x021589d0], al
mov qword [0x021589d8], r13
mov qword [0x021589e0], r9
lea rcx, [0x0065a8bb]
mov qword [0x021589e8], rcx
lea rcx, [0x02158a00]
mov qword [0x021585f0], rcx
mov byte [0x02158a00], al
mov qword [0x02158a08], r14
mov qword [0x02158a10], r9
lea rcx, [0x0065a8c3]
mov qword [0x02158a18], rcx
lea rcx, [0x02158a30]
mov qword [0x021585f8], rcx
mov byte [0x02158a30], al
mov qword [0x02158a38], rbx
mov qword [0x02158a40], r9
lea rcx, [0x0065a8c9]
mov qword [0x02158a48], rcx
lea rcx, [0x021585e0]
mov qword [0x021586f0], rbp
mov byte [0x021586d0], dl
mov qword [0x021586f8], rcx
lea rcx, [0x021586d0]
mov qword [0x02158ca0], rcx
lea rcx, [0x02158c80]
mov byte [0x021586a0], al
mov qword [0x021586a8], rsi
mov qword [0x021586b0], rcx
mov qword [0x021586b8], r12
mov qword [0x02158c60], r8
lea rcx, [0x02158c40]
movaps xmmword [0x021585a0], xmm1
mov byte [0x021585b0], 0x16
mov qword [0x021585b8], rcx
lea rcx, [0x005db2bb]
mov qword [0x021585d0], rcx
lea rcx, [0x02158a90]
mov qword [0x02158650], rcx
mov byte [0x02158a90], al
mov qword [0x02158a98], rsi
mov qword [0x02158aa0], r9
lea rcx, [0x0065a873]
mov qword [0x02158aa8], rcx
lea rcx, [0x02158ac0]
mov qword [0x02158658], rcx
mov byte [0x02158ac0], al
mov qword [0x02158ac8], r13
mov qword [0x02158ad0], r11
movaps xmmword [0x02158e00], xmm0
mov qword [0x02158ad8], r10
lea rcx, [0x02158af0]
mov qword [0x02158660], rcx
mov cl, 0x12
mov byte [0x02158e10], cl
mov qword [0x02158e18], rsi
movaps xmm0, xmmword [0x0065a670]
movaps xmmword [0x02158e40], xmm0
mov byte [0x02158e50], cl
mov qword [0x02158e58], rsi
lea rcx, [0x02158b50]
mov qword [0x02158670], rcx
mov byte [0x02158b50], al
mov qword [0x02158b58], rsi
mov rcx, qword [0x02129798]
mov qword [0x02158b60], rcx
lea rbx, [0x0065a8ce]
mov qword [0x02158b68], rbx
lea rbx, [0x02158b80]
mov qword [0x02158678], rbx
mov byte [0x02158b80], al
mov qword [0x02158b88], rbp
mov qword [0x02158b90], rcx
lea rbp, [0x0065a8d5]
mov qword [0x02158b98], rbp
lea rbp, [0x02158bb0]
mov qword [0x02158680], rbp
mov byte [0x02158bb0], al
mov qword [0x02158bb8], r13
mov qword [0x02158bc0], rcx
lea rbp, [0x0065a8db]
mov qword [0x02158bc8], rbp
lea rbp, [0x02158be0]
mov qword [0x02158688], rbp
mov byte [0x02158e51], al
mov byte [0x02158be0], al
mov qword [0x02158be8], 0xc
mov qword [0x02158bf0], rcx
lea rcx, [0x0065a8e9]
mov qword [0x02158bf8], rcx
lea rcx, [0x02158c10]
mov qword [0x02158690], rcx
mov byte [0x02158c10], al
mov qword [0x02158c18], r14
mov rcx, qword [0x02129790]
mov qword [0x02158c20], rcx
lea rcx, [0x0065a8f9]
mov qword [0x02158c28], rcx
lea rcx, [0x02158670]
mov qword [0x02158b40], 5
mov byte [0x02158b20], dl
mov qword [0x02158b48], rcx
lea rcx, [0x02158b20]
mov qword [0x02158e60], rcx
mov byte [0x02158af0], al
mov qword [0x02158af8], r14
lea rax, [0x02158e40]
mov qword [0x02158b00], rax
lea rax, [0x0065a881]
mov qword [0x02158b08], rax
mov qword [0x02158a80], 3
mov byte [0x02158a60], dl
lea rax, [0x02158650]
mov qword [0x02158a88], rax
lea rax, [0x02158a60]
mov qword [0x02158e20], rax
movaps xmmword [0x02158e80], xmm1
mov byte [0x02158e90], r15b
lea rax, [0x02158e00]
mov qword [0x02158e98], rax
lea rax, [0x005db2c3]
mov qword [0x02158eb0], rax
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret