Function at 0x140055590
Capabilities:
Encode data using xor

Disassembly:
push rbx
nop
sub rsp, 8
mov qword [rsp], rbp
nop
sub rsp, 8
mov qword [rsp], rsi
nop
sub rsp, 8
mov qword [rsp], rdi
push r12
push r13
mov dword [rsp - 0x18], ecx
nop
push 0x668d5456
mov qword [rsp], r14
nop
sub rsp, 0x584074dc
add rsp, 0x5840749c
lea rdi, [rcx + 8]
xorps xmm0, xmm0
xchg rdi, r11
mov qword [rcx], r11
xchg r11, rdi
lea rsi, [r8 + r8]
xchg r12, r12
xchg rdi, r10
movups xmmword [r10], xmm0
xchg r10, rdi
xchg rbx, r10
mov r10, rcx
xchg rbx, r10
xchg r8, r12
mov r8, r12
xchg r8, r12
xchg r11, rdi
movups xmmword [r11 + 0x10], xmm0
xchg r11, rdi
mov r14, rdx
mov rdx, rdx
xchg rdi, r11
movups xmmword [r11 + 0x20], xmm0
xchg rdi, r11
mov qword [rcx + 0x38], rsi
mov r11, r11
mov rcx, qword [rcx]
cmp rcx, rdi
je 0x140055638
call fcn.140099230
xchg r9, r9
xor r13d, r13d
xchg r15, r10
mov qword [rsp + 0x88], r10
xchg r10, r15
cmp rsi, 0x18
jbe 0x140055683
mov dword [rsp - 0xc], 0x4516d997
lea rcx, [rsi + rsi]
call fcn.140099500
xchg rdx, rax
mov qword [rbx], rdx
xchg rdx, rax
test rax, rax
jne 0x140055695
mov qword [rbx], rdi
mov dword [rsp - 0x34], ebx
mov r15d, r13d
jmp 0x1400556b7
xchg rdi, r8
mov qword [rbx], r8
xchg rdi, r8
xchg r12, rdi
mov rax, r12
xchg r12, rdi
xorps xmm0, xmm0
xchg r12, rax
movups xmmword [r12], xmm0
xchg r12, rax
movups xmmword [rax + 0x10], xmm0
xchg r15, rax
movups xmmword [r15 + 0x20], xmm0
xchg r15, rax
xchg r15, r14
mov r14, qword [rbx]
xchg r15, r14
mov ebp, 0x650fa197
xor ebp, 0x13e95fac
sub ebp, 0x6d96ea7d
xor ebp, 0x4628fd9e
add ebp, 0x13385635
xchg r13, rcx
mov rsi, rcx
xchg rcx, r13
test r12, r12
mov dword [rsp - 0x38], 0x52164047
je 0x1400558d1
mov eax, 0x7c8abf79
sub eax, 0x759eefff
xor eax, 0x789a23b6
sub eax, 0x8e0f56c
sub eax, 0x7590f753
mov dword [rsp + 0x20], 0x61516b11
xor dword [rsp + 0x20], 0x30f95289
sub dword [rsp + 0x20], 0x17fe843f
sub dword [rsp + 0x20], 0x384f574c
sub dword [rsp + 0x20], 0xe65d9d
mov word [rsp + 0x28], ax
mov rsp, rsp
mov dword [rsp + 0x24], 0x4fb5b6d1
xor dword [rsp + 0x24], 0x347fd588
sub dword [rsp + 0x24], 0x13fd7da0
sub dword [rsp + 0x24], 0x3eb46131
sub dword [rsp + 0x24], 0x28c883e9
nop
movzx r8d, byte [rsi + r14]
mov qword [rsp + 0x80], r13
mov rsi, rsi
mov rax, qword [rsp + 0x80]
nop word [rax + rax]
mov rcx, qword [rsp + 0x80]
mov dword [rsp - 0x38], ecx
mov rax, qword [rsp + 0x80]
and cl, 3
shl cl, 3
movzx edx, word [rsp + rax*2 + 0x20]
mov dword [rsp - 0x14], 0x6e8f837c
mov eax, 0x4c6d7cd0
sub eax, 0x34045951
xor eax, 0x213a7046
sub eax, 0x30c99d6f
xor eax, 0x6a38f19f
shr eax, cl
movzx ecx, al
mov r13, r13
xchg r11, rax
mov r11, qword [rsp + 0x80]
xchg r11, rax
xor cx, dx
xchg r15, r15
mov word [rsp + rax*2 + 0x2a], cx
mov rax, qword [rsp + 0x80]
inc rax
xchg r14, r14
xchg r12, rax
mov qword [rsp + 0x80], r12
xchg r12, rax
mov rax, qword [rsp + 0x80]
xchg rbx, rbx
cmp rax, 5
jb 0x140055784
lea rdx, [rsp + 0x2a]
mov dword [rsp - 0x40], 0x65107a8
mov word [rsp + 0x34], r13w
lea rcx, [rsp + 0x90]
call fcn.1400544c0
mov dword [rsp - 0x40], esp
xor eax, eax
lea rdi, [rsp + 0x2a]
mov ecx, 0x75b5620b
xor ecx, 0x54ca177b
add ecx, 0x5a45ff77
sub ecx, 0x7bc574e2
rep stosb byte [rdi], al
movzx eax, bp
mov dword [rsp - 0x40], 0x70888896
mov ecx, 0x3aed12af
sub ecx, 0x1d65a608
sub ecx, 0x3e9530d
xor ecx, 0x6d8de538
xor ecx, 0x7413fc5d
and ax, cx
ror ebp, 2
ror ebp, 3
ror ebp, 2
ror ebp, 1
xor ax, word [rsp + 0x90]
mov word [r15 + rsi*4], ax
mov dword [rsp - 0x3c], 0x6451634f
movzx eax, bp
and ax, cx
ror ebp, 5
ror ebp, 2
ror ebp, 1
xor ax, word [rsp + 0x92]
mov word [r15 + rsi*4 + 2], ax
inc rsi
mov dword [rsp - 0x20], 0x3b57c838
cmp rsi, r12
jb 0x140055761
mov r15, qword [rsp + 0x88]
mov dword [rsp - 0x40], ecx
xchg r10, rax
mov r10, rbx
xchg r10, rax
add rsp, 0x40
mov dword [rsp - 0x18], 0x683e7bd4
pop r14
pop r13
nop
mov r12, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
pop rsi
nop
add rsp, 8
mov rbp, qword [rsp - 8]
pop rbx
mov rdi, rdi
ret