Function at 0x1800b57c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rdi
push r12
push r13
sub rsp, 0x48
mov rax, qword [rcx + 0x10]
mov r12, r9
mov rbx, r8
mov rdi, rdx
mov r13, rcx
cmp qword [rcx + 8], rax
jne 0x1800b57ea
call fcn.180036630
mov qword [rsp + 0x40], rsi
call fcn.180048c80
test al, al
je 0x1800b582c
cmp r12, 4
jb 0x1800b582c
mov rsi, r12
shr rsi, 2
imul rax, rsi, 0xfffffffffffffffc
add r12, rax
nop dword [rax]
mov r8, rbx
mov rdx, rdi
mov rcx, r13
call fcn.18010e570
sub rdi, 0xffffffffffffff80
sub rbx, 0xffffffffffffff80
sub rsi, 1
jne 0x1800b5810
test r12, r12
je 0x1800b5c18
lea r9, [rbx + 8]
mov qword [rsp + 0x78], rbp
sub rbx, rdi
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r15
lea rax, [rdi + 8]
mov qword [rsp + 0x88], r9
lea rcx, [rbx - 8]
mov qword [rsp + 0x20], rcx
mov r10d, dword [rax - 8]
mov r9d, 8
mov r11d, dword [rax - 4]
mov ebx, dword [rax]
mov edi, dword [rax + 4]
mov esi, dword [rax + 8]
mov ebp, dword [rax + 0xc]
mov r14d, dword [rax + 0x10]
mov r15d, dword [rax + 0x14]
mov r13, qword [r13 + 8]
bswap r10d
bswap r11d
bswap ebx
bswap edi
bswap esi
bswap ebp
bswap r14d
bswap r15d
add r13, 0xf8
mov r8d, r11d
mov ecx, r11d
rol ecx, 0xa
mov edx, ebx
ror r8d, 0xd
or edx, r11d
xor r8d, ecx
and edx, edi
mov ecx, r11d
ror ecx, 2
xor r8d, ecx
mov ecx, ebx
and ecx, r11d
or edx, ecx
mov ecx, ebp
add r8d, edx
rol ecx, 7
sub r10d, r8d
mov edx, ebp
not edx
sub esi, r10d
and edx, r15d
mov r8d, ebp
ror r8d, 0xb
xor r8d, ecx
mov ecx, ebp
ror ecx, 6
xor r8d, ecx
mov ecx, r14d
and ecx, ebp
xor edx, ecx
mov ecx, ebx
add r8d, edx
rol ecx, 0xa
add r8d, dword [r13 + 4]
mov edx, edi
sub r10d, r8d
or edx, ebx
and edx, esi
mov r8d, ebx
ror r8d, 0xd
xor r8d, ecx
mov ecx, ebx
ror ecx, 2
xor r8d, ecx
mov ecx, edi
and ecx, ebx
or edx, ecx
mov ecx, r14d
add r8d, edx
rol ecx, 7
sub r11d, r8d
mov edx, r14d
not edx
sub ebp, r11d
and edx, r10d
mov r8d, r14d
ror r8d, 0xb
xor r8d, ecx
mov ecx, r14d
ror ecx, 6
xor r8d, ecx
mov ecx, r15d
and ecx, r14d
xor edx, ecx
mov ecx, edi
add r8d, edx
rol ecx, 0xa
add r8d, dword [r13]
mov edx, esi
sub r11d, r8d
or edx, edi
mov r8d, edi
and edx, ebp
ror r8d, 0xd
xor r8d, ecx
mov ecx, edi
ror ecx, 2
xor r8d, ecx
mov ecx, esi
and ecx, edi
or edx, ecx
mov ecx, r15d
add r8d, edx
rol ecx, 7
sub ebx, r8d
mov edx, r15d
not edx
sub r14d, ebx
and edx, r11d
mov r8d, r15d
ror r8d, 0xb
xor r8d, ecx
mov ecx, r15d
ror ecx, 6
xor r8d, ecx
mov ecx, r15d
and ecx, r10d
xor edx, ecx
mov ecx, esi
add r8d, edx
rol ecx, 0xa
add r8d, dword [r13 - 4]
mov edx, ebp
sub ebx, r8d
or edx, esi
and edx, r14d
mov r8d, esi
ror r8d, 0xd
xor r8d, ecx
mov ecx, esi
ror ecx, 2
xor r8d, ecx
mov ecx, ebp
and ecx, esi
or edx, ecx
mov ecx, r10d
add r8d, edx
rol ecx, 7
sub edi, r8d
mov edx, r10d
not edx
sub r15d, edi
and edx, ebx
mov r8d, r10d
ror r8d, 0xb
xor r8d, ecx
mov ecx, r10d
ror ecx, 6
xor r8d, ecx
mov ecx, r11d
and ecx, r10d
xor edx, ecx
mov ecx, ebp
add r8d, edx
rol ecx, 0xa
add r8d, dword [r13 - 8]
mov edx, r14d
sub edi, r8d
or edx, ebp
and edx, r15d
mov r8d, ebp
ror r8d, 0xd
xor r8d, ecx
mov ecx, ebp
ror ecx, 2
xor r8d, ecx
mov ecx, r14d
and ecx, ebp
or edx, ecx
mov ecx, r11d
add r8d, edx
rol ecx, 7
sub esi, r8d
mov edx, r11d
mov r8d, r11d
sub r10d, esi
ror r8d, 0xb
xor r8d, ecx
mov ecx, r11d
ror ecx, 6
xor r8d, ecx
not edx
mov ecx, ebx
and ecx, r11d
and edx, edi
xor edx, ecx
mov ecx, r14d
add r8d, edx
rol ecx, 0xa
add r8d, dword [r13 - 0xc]
mov edx, r15d
sub esi, r8d
or edx, r14d
and edx, r10d
mov r8d, r14d
ror r8d, 0xd
xor r8d, ecx
mov ecx, r14d
ror ecx, 2
xor r8d, ecx
mov ecx, r15d
and ecx, r14d
or edx, ecx
mov ecx, ebx
add r8d, edx
rol ecx, 7
sub ebp, r8d
mov edx, ebx
not edx
sub r11d, ebp
and edx, esi
mov r8d, ebx
ror r8d, 0xb
xor r8d, ecx
mov ecx, ebx
ror ecx, 6
xor r8d, ecx
mov ecx, edi
and ecx, ebx
xor edx, ecx
mov ecx, r15d
add r8d, edx
rol ecx, 0xa
add r8d, dword [r13 - 0x10]
mov edx, r15d
sub ebp, r8d
or edx, r10d
and edx, r11d
mov r8d, r15d
ror r8d, 0xd
xor r8d, ecx
mov ecx, r15d
ror ecx, 2
xor r8d, ecx
mov ecx, r15d
and ecx, r10d
or edx, ecx
mov ecx, edi
add r8d, edx
rol ecx, 7
sub r14d, r8d
mov edx, edi
not edx
sub ebx, r14d
and edx, ebp
mov r8d, edi
ror r8d, 0xb
xor r8d, ecx
mov ecx, edi
ror ecx, 6
xor r8d, ecx
mov ecx, esi
and ecx, edi
xor edx, ecx
mov ecx, r10d
add r8d, edx
rol ecx, 0xa
add r8d, dword [r13 - 0x14]
sub r14d, r8d
mov r8d, r10d
ror r8d, 0xd
xor r8d, ecx
mov ecx, r10d
lea r13, [r13 - 0x20]
ror ecx, 2
mov edx, r11d
xor r8d, ecx
or edx, r10d
and edx, ebx
mov ecx, r11d
and ecx, r10d
or edx, ecx
mov ecx, esi
add r8d, edx
rol ecx, 7
sub r15d, r8d
mov edx, esi
not edx
sub edi, r15d
and edx, r14d
mov r8d, esi
ror r8d, 0xb
xor r8d, ecx
mov ecx, esi
ror ecx, 6
xor r8d, ecx
mov ecx, ebp
and ecx, esi
xor edx, ecx
add r8d, edx
add r8d, dword [r13 + 8]
sub r15d, r8d
sub r9, 1
jne 0x1800b58a0
mov r9, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x20]
mov r13, qword [rsp + 0x70]
bswap r10d
bswap r11d
bswap ebx
bswap edi
bswap esi
bswap ebp
bswap r14d
bswap r15d
mov dword [rcx + rax], r10d
add rax, 0x20
mov dword [r9 - 4], r11d
mov dword [r9], ebx
mov dword [r9 + 4], edi
mov dword [r9 + 8], esi
mov dword [r9 + 0xc], ebp
mov dword [r9 + 0x10], r14d
mov dword [r9 + 0x14], r15d
add r9, 0x20
mov qword [rsp + 0x88], r9
sub r12, 1
jne 0x1800b5860
mov r15, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x40]
add rsp, 0x48
pop r13
pop r12
pop rdi
pop rbx
ret