Function at 0x140005ed0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x68]
sub rsp, 0x168
mov rax, qword [0x1405fa008]
xor rax, rsp
mov qword [rbp + 0x50], rax
and qword [rsp + 0x44], 0
lea r13, [0x140000000]
and dword [rsp + 0x40], 0
mov rbx, r9
and dword [rsp + 0x4c], 0
mov r15, r8
cmp dword [rbp + 0xe0], 0
mov r14, rdx
mov qword [rsp + 0x58], r8
mov r12, rcx
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x60], rcx
je 0x140005f6e
mov edx, ecx
lea rcx, [rsp + 0x40]
sub edx, r13d
call fcn.1400063e0
mov r8, qword [0x140604c80]
lea rcx, [rbp - 0x70]
movups xmm0, xmmword [rsp + 0x40]
mov rdx, r14
sub r8, r13
movsd xmm1, qword [rsp + 0x50]
sub rdx, r12
movaps xmmword [rbp - 0x70], xmm0
movsd qword [rbp - 0x60], xmm1
call fcn.140006374
test r15, r15
je 0x140037d8e
mov eax, r15d
and eax, 7
mov dword [rsp + 0x28], eax
je 0x140006342
mov edx, dword [rbp + 0xd0]
mov r11, rbx
shr r11, 0x20
mov ecx, edx
sub ecx, r11d
movzx r9d, bx
ror ecx, 5
mov esi, edx
not esi
mov qword [rbp - 0x50], rbx
mov rax, rbx
mov qword [rbp + 0x10], rbx
shr rax, 0x10
mov edi, r11d
movzx r10d, ax
mov eax, edx
imul ecx, r10d
ror eax, 0xf
mov qword [rbp + 0x28], rbx
mov qword [rbp + 0x38], rbx
mov qword [rbp + 0x48], rbx
xor ecx, eax
mov qword [rbp + 0x40], rbx
xor esi, ecx
mov qword [rbp - 0x30], rbx
sub edi, esi
mov qword [rbp - 0x48], rbx
ror edi, 0x1f
mov eax, esi
ror eax, 0xd
mov ecx, r10d
imul edi, r9d
mov qword [rbp - 0x20], rbx
mov qword [rbp + 0x30], rbx
mov qword [rbp - 0x10], rbx
mov qword [rbp + 0x20], rbx
add edi, eax
mov qword [rbp], rbx
xor edi, edx
mov qword [rbp - 0x40], rbx
xor ecx, edi
movzx edx, r11w
rol ecx, 6
mov rax, rbx
shr rax, 0x30
imul ecx, eax
mov r8d, eax
mov eax, edi
mov qword [rbp - 0x38], rbx
shr eax, 1
mov qword [rbp - 0x28], rbx
add ecx, eax
xor esi, ecx
mov eax, esi
ror eax, 0xe
sub eax, edx
imul eax, r9d
xor edi, eax
mov ecx, edi
mov eax, edi
sub ecx, edx
shr eax, 0xf
imul ecx, r10d
sub ecx, eax
xor esi, ecx
mov ecx, esi
mov eax, esi
sub ecx, r10d
shr eax, 0xb
rol ecx, 2
imul ecx, r9d
xor ecx, eax
mov eax, r10d
xor edi, ecx
xor eax, edi
mov ecx, edi
ror ecx, 0xa
imul eax, r8d
xor ecx, eax
xor esi, ecx
mov ecx, r10d
xor ecx, esi
mov qword [rbp - 0x18], rbx
imul ecx, edx
mov eax, esi
shr eax, 0xa
mov qword [rbp - 8], rbx
mov qword [rbp + 8], rbx
mov qword [rbp + 0x18], rbx
add ecx, eax
xor edi, ecx
mov rcx, r12
mov eax, edi
not eax
ror eax, 1
add eax, r10d
movsxd r10, dword [rsp + 0x28]
imul eax, r8d
mov rdx, r10
xor esi, eax
xor r11d, esi
mov dword [rsp + 0x20], esi
rol r11d, 4
mov eax, esi
imul r11d, r9d
mov r9, r10
shr eax, 0xe
sub r11d, eax
xor eax, eax
xor edi, r11d
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x24], edi
test r10d, r10d
je 0x140006103
lea r8, [rsp + 0x30]
sub r8, r12
mov al, byte [rcx]
mov byte [r8 + rcx], al
inc rcx
sub r9, 1
jne 0x1400060e7
mov edi, dword [rsp + 0x24]
mov esi, dword [rsp + 0x20]
mov rax, qword [rsp + 0x30]
xor edi, dword [rsp + 0x34]
lea r8, [rsp + 0x20]
xor esi, eax
mov dword [rsp + 0x24], edi
mov ecx, 8
mov dword [rsp + 0x20], esi
mov qword [rsp + 0x38], rax
lea r8, [r8 + r10]
sub rcx, rdx
je 0x14000613e
mov byte [r8], 0
inc r8
sub rcx, 1
jne 0x140006129
mov edi, dword [rsp + 0x24]
mov esi, dword [rsp + 0x20]
lea r8, [rsp + 0x20]
test r10d, r10d
je 0x14000616b
lea rcx, [rsp + 0x20]
mov r9, r14
sub r9, rcx
mov cl, byte [r8]
mov byte [r9 + r8], cl
inc r8
sub rdx, 1
jne 0x140006153
mov edi, dword [rsp + 0x24]
mov esi, dword [rsp + 0x20]
movsxd rcx, r10d
mov r11, r15
add rcx, r14
shr r11, 3
mov qword [rsp + 0x30], rcx
test r11, r11
je 0x1400062da
mov r13, qword [rsp + 0x30]
mov rcx, rbx
shr rcx, 0x30
mov r15, rbx
mov qword [rbp - 0x50], rcx
mov rcx, rbx
movzx r8d, bx
mov rbx, r12
shr rcx, 0x20
shr r15, 0x10
mov r12, rcx
sub rbx, r14
mov qword [rsp + 0x20], rcx
mov r14, qword [rbp - 0x50]
mov dword [rsp + 0x28], r8d
xor esi, dword [rbx + r13]
mov rcx, qword [rbx + r13]
shr rcx, 0x20
xor edi, ecx
movzx r10d, r15w
mov edx, edi
movzx r9d, r14w
sub edx, r12d
mov ecx, edi
ror edx, 5
imul edx, r10d
ror ecx, 0xf
xor edx, ecx
xor esi, edx
mov edx, r12d
sub edx, esi
mov ecx, esi
ror edx, 0x1f
imul edx, r8d
ror ecx, 0xd
movzx r8d, r12w
add edx, ecx
xor edi, edx
mov edx, r10d
xor edx, edi
mov ecx, edi
rol edx, 6
imul edx, r9d
shr ecx, 1
add edx, ecx
xor esi, edx
mov ecx, esi
ror ecx, 0xe
sub ecx, r8d
imul ecx, dword [rsp + 0x28]
xor edi, ecx
mov edx, edi
mov ecx, edi
sub edx, r8d
shr ecx, 0xf
imul edx, r10d
sub edx, ecx
xor esi, edx
mov edx, esi
mov ecx, esi
sub edx, r10d
shr ecx, 0xb
rol edx, 2
imul edx, dword [rsp + 0x28]
xor edx, ecx
mov ecx, r10d
xor edi, edx
xor ecx, edi
mov edx, edi
imul ecx, r9d
ror edx, 0xa
xor edx, ecx
xor esi, edx
mov edx, r10d
xor edx, esi
mov ecx, esi
shr ecx, 0xa
imul edx, r8d
mov r8d, dword [rsp + 0x28]
add edx, ecx
xor edi, edx
mov edx, r12d
mov ecx, edi
not ecx
ror ecx, 1
add ecx, r10d
imul ecx, r9d
xor esi, ecx
xor edx, esi
mov ecx, esi
rol edx, 4
imul edx, r8d
shr ecx, 0xe
sub edx, ecx
xor edi, edx
xor esi, dword [rsp + 0x38]
shr rax, 0x20
xor edi, eax
mov rax, qword [rbx + r13]
mov dword [r13], esi
mov dword [r13 + 4], edi
lea r13, [r13 + 8]
mov qword [rsp + 0x38], rax
sub r11, 1
jne 0x1400061bf
mov r14, qword [rsp + 0x68]
lea r13, [0x140000000]
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
mov bl, byte [r15 + r14 - 1]
cmp dword [rbp + 0xe0], 0
je 0x14000631a
mov rax, qword [0x140604c80]
lea rcx, [rsp + 0x70]
movups xmm0, xmmword [rsp + 0x40]
sub r13, rax
sub r14, r12
movsd xmm1, qword [rsp + 0x50]
mov r8, r13
mov rdx, r14
movaps xmmword [rsp + 0x70], xmm0
movsd qword [rbp - 0x80], xmm1
call fcn.140006374
cmp bl, byte [rbp + 0xd8]
jne 0x140006365
mov rcx, qword [rbp + 0x50]
xor rcx, rsp
call fcn.14001af10
add rsp, 0x168
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov eax, dword [rbp + 0xd0]
xor esi, esi
mov r10d, dword [rsp + 0x28]
xor edi, edi
mov dword [rsp + 0x3c], eax
not eax
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x38]
jmp 0x14000616b
call fcn.140108d08
jmp 0x140006322
mov bl, byte [rsp + 0x2c]
jmp 0x1400062df