Function at 0x180044a74
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x1801724e0]
xor rax, rsp
mov qword [rbp - 0x10], rax
lea rax, [rbp - 0x40]
mov qword [rbp - 0x60], rcx
mov r14, rcx
sub rdx, rax
lea rcx, [rbp - 0x40]
mov r8d, 2
mov rax, qword [rdx + rcx]
bswap rax
ror rax, 0x20
mov qword [rcx - 0x10], rax
mov rax, qword [rdx + rcx + 8]
bswap rax
ror rax, 0x20
mov qword [rcx - 8], rax
mov rax, qword [rdx + rcx + 0x10]
bswap rax
ror rax, 0x20
mov qword [rcx], rax
mov rax, qword [rdx + rcx + 0x18]
lea rcx, [rcx + 0x20]
bswap rax
ror rax, 0x20
mov qword [rcx - 0x18], rax
sub r8, 1
jne 0x180044abc
mov r11d, dword [r14]
lea r10, [0x180119740]
mov ebx, dword [r14 + 4]
mov r15d, dword [r14 + 8]
mov r12d, dword [r14 + 0xc]
mov r13d, dword [r14 + 0x10]
mov edi, dword [r14 + 0x14]
mov esi, dword [r14 + 0x18]
mov r9d, dword [r14 + 0x1c]
xor r14d, r14d
mov eax, r13d
mov r8d, r13d
ror eax, 0xb
mov ecx, r13d
ror r8d, 0x19
not ecx
xor r8d, eax
and ecx, esi
mov eax, r13d
ror eax, 6
xor r8d, eax
mov eax, edi
and eax, r13d
xor ecx, eax
mov eax, r11d
add r8d, ecx
ror eax, 0xd
add r8d, dword [r10 + r14*4]
mov ecx, r11d
add r8d, dword [rbp + r14*4 - 0x50]
mov r10d, ebx
add r8d, r9d
ror ecx, 0x16
xor ecx, eax
add r12d, r8d
inc r14d
and r10d, r11d
mov eax, r11d
mov r9d, ebx
ror eax, 2
xor r9d, r11d
xor eax, ecx
mov edx, r9d
add eax, r8d
and edx, r15d
xor edx, r10d
mov r8d, r12d
add edx, eax
ror r8d, 0x19
mov eax, r12d
mov ecx, r12d
ror eax, 0xb
not ecx
xor r8d, eax
and ecx, edi
mov eax, r12d
ror eax, 6
xor r8d, eax
mov eax, r13d
and eax, r12d
xor ecx, eax
lea rax, [0x180119740]
add r8d, ecx
mov ecx, edx
add r8d, dword [rax + r14*4]
mov eax, edx
add r8d, dword [rbp + r14*4 - 0x50]
inc r14d
ror eax, 0xd
add r8d, esi
add r15d, r8d
ror ecx, 0x16
xor ecx, eax
mov esi, r9d
and esi, edx
mov eax, edx
ror eax, 2
xor esi, r10d
xor eax, ecx
mov ecx, r15d
add eax, r8d
not ecx
add esi, eax
mov r8d, r15d
ror r8d, 0x19
mov eax, r15d
ror eax, 0xb
xor r8d, eax
mov eax, r15d
ror eax, 6
xor r8d, eax
and ecx, r13d
lea r10, [0x180119740]
mov eax, r12d
and eax, r15d
xor ecx, eax
mov eax, esi
add r8d, ecx
ror eax, 0xd
add r8d, dword [r10 + r14*4]
mov ecx, esi
add r8d, dword [rbp + r14*4 - 0x50]
inc r14d
add r8d, edi
ror ecx, 0x16
xor ecx, eax
add ebx, r8d
mov eax, esi
mov edi, esi
ror eax, 2
xor edi, r11d
xor ecx, eax
and edi, edx
mov eax, esi
and eax, r11d
xor edi, eax
lea eax, [r8 + rcx]
mov r8d, ebx
add edi, eax
ror r8d, 0x19
mov eax, ebx
mov ecx, ebx
ror eax, 0xb
not ecx
xor r8d, eax
and ecx, r12d
mov eax, ebx
ror eax, 6
xor r8d, eax
mov eax, r15d
and eax, ebx
xor ecx, eax
mov eax, edi
add r8d, ecx
ror eax, 0xd
add r8d, dword [r10 + r14*4]
mov ecx, edi
add r8d, dword [rbp + r14*4 - 0x50]
inc r14d
add r8d, r13d
ror ecx, 0x16
xor ecx, eax
add r11d, r8d
mov eax, edi
mov r13d, esi
ror eax, 2
xor r13d, edi
xor ecx, eax
and r13d, edx
mov eax, esi
and eax, edi
xor r13d, eax
lea eax, [r8 + rcx]
mov r8d, r11d
add r13d, eax
ror r8d, 0x19
mov eax, r11d
mov ecx, r11d
ror eax, 0xb
not ecx
xor r8d, eax
and ecx, r15d
mov eax, r11d
ror eax, 6
xor r8d, eax
mov eax, ebx
and eax, r11d
xor ecx, eax
add r8d, ecx
add r8d, dword [r10 + r14*4]
add r8d, dword [rbp + r14*4 - 0x50]
add r8d, r12d
lea r9d, [r8 + rdx]
inc r14d
mov r12d, edi
mov dword [rbp - 0x80], r9d
xor r12d, r13d
mov ecx, r13d
ror ecx, 0x16
and r12d, esi
mov eax, r13d
ror eax, 0xd
xor ecx, eax
mov eax, r13d
ror eax, 2
xor ecx, eax
mov eax, edi
and eax, r13d
xor r12d, eax
lea eax, [r8 + rcx]
mov r8d, r9d
add r12d, eax
ror r8d, 0x19
mov eax, r9d
mov ecx, r9d
ror eax, 0xb
not ecx
xor r8d, eax
and ecx, ebx
mov eax, r9d
ror eax, 6
xor r8d, eax
mov eax, r9d
and eax, r11d
xor ecx, eax
mov eax, r12d
add r8d, ecx
ror eax, 0xd
add r8d, dword [r10 + r14*4]
mov ecx, r12d
add r8d, dword [rbp + r14*4 - 0x50]
inc r14d
add r8d, r15d
ror ecx, 0x16
xor ecx, eax
add esi, r8d
mov eax, r12d
mov r15d, r13d
ror eax, 2
xor r15d, r12d
xor ecx, eax
and r15d, edi
mov eax, r13d
and eax, r12d
xor r15d, eax
lea eax, [r8 + rcx]
mov r8d, esi
add r15d, eax
ror r8d, 0x19
mov eax, esi
mov ecx, esi
ror eax, 0xb
not ecx
xor r8d, eax
and ecx, r11d
mov eax, esi
ror eax, 6
xor r8d, eax
mov eax, r9d
and eax, esi
xor ecx, eax
mov eax, r15d
add r8d, ecx
ror eax, 0xd
add r8d, dword [r10 + r14*4]
mov ecx, r15d
add r8d, dword [rbp + r14*4 - 0x50]
ror ecx, 0x16
add r8d, ebx
xor ecx, eax
add edi, r8d
mov eax, r15d
ror eax, 2
xor ecx, eax
inc r14d
mov ebx, r12d
mov eax, r12d
and eax, r15d
xor ebx, r15d
and ebx, r13d
xor ebx, eax
lea eax, [r8 + rcx]
add ebx, eax
mov r8d, edi
ror r8d, 0x19
mov eax, edi
ror eax, 0xb
mov ecx, edi
xor r8d, eax
not ecx
and ecx, r9d
mov eax, edi
ror eax, 6
xor r8d, eax
mov eax, esi
and eax, edi
xor ecx, eax
mov eax, ebx
add r8d, ecx
ror eax, 0xd
add r8d, dword [r10 + r14*4]
mov ecx, ebx
add r8d, dword [rbp + r14*4 - 0x50]
inc r14d
add r8d, r11d
ror ecx, 0x16
xor ecx, eax
mov r11d, r15d
xor r11d, ebx
mov eax, ebx
ror eax, 2
and r11d, r12d
xor ecx, eax
add r13d, r8d
mov eax, r15d
and eax, ebx
xor r11d, eax
lea eax, [r8 + rcx]
add r11d, eax
cmp r14d, 0x10
jb 0x180044b2d
mov qword [rbp - 0x68], r14
cmp r14d, 0x40
mov r14, qword [rbp - 0x60]
mov dword [rbp - 0x7c], ebx
mov dword [rbp - 0x70], r11d
mov dword [rbp - 0x78], edi
jae 0x1800454c6
mov rdx, qword [rbp - 0x68]
mov r14d, esi
lea eax, [rdx - 2]
mov r9d, edx
and eax, 0xf
mov r10d, edx
lea esi, [rdx + 1]
and r9d, 0xf
mov ebx, esi
and ebx, 0xf
mov ecx, dword [rbp + rax*4 - 0x50]
mov edx, ecx
mov eax, ecx
ror edx, 0x13
ror eax, 0x11
mov r8d, dword [rbp + rbx*4 - 0x50]
xor edx, eax
shr ecx, 0xa
mov eax, r8d
xor edx, ecx
ror eax, 7
mov ecx, r8d
shr r8d, 3
ror ecx, 0x12
xor ecx, eax
mov rax, qword [rbp - 0x68]
add eax, 0xfffffff9
xor ecx, r8d
and eax, 0xf
add edx, ecx
mov ecx, r13d
not ecx
and ecx, r14d
add edx, dword [rbp + rax*4 - 0x50]
mov eax, r13d
add dword [rbp + r9*4 - 0x50], edx
mov edx, r13d
ror eax, 0xb
ror edx, 0x19
xor edx, eax
mov eax, r13d
ror eax, 6
xor edx, eax
mov eax, edi
and eax, r13d
lea edi, [rsi + 1]
xor ecx, eax
lea rax, [0x180119740]
add edx, ecx
mov ecx, r11d
add edx, dword [rax + r10*4]
mov eax, r11d
add edx, dword [rbp + r9*4 - 0x50]
add edx, dword [rbp - 0x80]
mov r9d, dword [rbp - 0x7c]
add r12d, edx
mov r10d, dword [rbp - 0x7c]
xor r9d, r11d
ror eax, 0xd
and r10d, r11d
ror ecx, 0x16
mov r8d, r9d
xor ecx, eax
and r8d, r15d
xor r8d, r10d
mov eax, r11d
ror eax, 2
mov r11d, edi
xor eax, ecx
and r11d, 0xf
add eax, edx
add r8d, eax
lea eax, [rsi - 2]
and eax, 0xf
mov dword [rbp - 0x80], r8d
mov edx, dword [rbp + r11*4 - 0x50]
mov ecx, dword [rbp + rax*4 - 0x50]
mov r8d, ecx
mov eax, ecx
ror r8d, 0x13
ror eax, 0x11
xor r8d, eax
shr ecx, 0xa
xor r8d, ecx
mov eax, edx
ror eax, 7
mov ecx, edx
ror ecx, 0x12
xor ecx, eax
shr edx, 3
xor edx, ecx
lea eax, [rsi - 7]
and eax, 0xf
add edx, r8d
mov r8d, r12d
mov ecx, r12d
ror r8d, 0x19
not ecx
and ecx, dword [rbp - 0x78]
add edx, dword [rbp + rax*4 - 0x50]
mov eax, r12d
add edx, dword [rbp + rbx*4 - 0x50]
ror eax, 0xb
xor r8d, eax
mov dword [rbp + rbx*4 - 0x50], edx
mov eax, r12d
lea ebx, [rdi + 1]
ror eax, 6
xor r8d, eax
mov eax, r13d
and eax, r12d
xor ecx, eax
mov eax, esi
add r8d, ecx
lea rsi, [0x180119740]
add r8d, dword [rsi + rax*4]
add r8d, edx
mov edx, dword [rbp - 0x80]
add r8d, r14d
mov eax, edx
ror eax, 0xd
add r15d, r8d
mov ecx, edx
mov r14d, r9d
ror ecx, 0x16
and r14d, edx
xor ecx, eax
xor r14d, r10d
mov eax, edx
ror eax, 2
xor eax, ecx
add eax, r8d
add r14d, eax
mov eax, ebx
and eax, 0xf
mov edx, dword [rbp + rax*4 - 0x50]
lea eax, [rdi - 2]
and eax, 0xf
mov ecx, dword [rbp + rax*4 - 0x50]
mov eax, ecx
ror eax, 0x11
mov r8d, ecx
shr ecx, 0xa
ror r8d, 0x13
xor r8d, eax
mov eax, edx
ror eax, 7
xor r8d, ecx
mov ecx, edx
shr edx, 3
ror ecx, 0x12
xor ecx, eax
lea eax, [rdi - 7]
and eax, 0xf
xor ecx, edx
add r8d, ecx
mov edx, r15d
ror edx, 0x19
add r8d, dword [rbp + rax*4 - 0x50]
mov eax, r15d
add dword [rbp + r11*4 - 0x50], r8d
ror eax, 0xb
xor edx, eax
mov eax, r15d
ror eax, 6
mov ecx, r15d
xor edx, eax
mov r9d, ebx
not ecx
mov eax, r12d
and eax, r15d
and ecx, r13d
xor ecx, eax
and r9d, 0xf
add edx, ecx
mov eax, r14d
add edx, dword [rsi + rdi*4]
mov ecx, r14d
add edx, dword [rbp + r11*4 - 0x50]
mov edi, r14d
add edx, dword [rbp - 0x78]
lea r11d, [rbx + 1]
add dword [rbp - 0x7c], edx
mov esi, dword [rbp - 0x70]
xor edi, esi
and edi, dword [rbp - 0x80]
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, r14d
ror eax, 2
xor ecx, eax
mov eax, r14d
and eax, esi
xor edi, eax
lea eax, [rdx + rcx]
add edi, eax
mov eax, r11d
and eax, 0xf
mov r8d, dword [rbp + rax*4 - 0x50]
lea eax, [rbx - 2]
and eax, 0xf
mov ecx, dword [rbp + rax*4 - 0x50]
mov eax, ecx
ror eax, 0x11
mov edx, ecx
ror edx, 0x13
xor edx, eax
shr ecx, 0xa
xor edx, ecx
mov eax, r8d
ror eax, 7
mov ecx, r8d
ror ecx, 0x12
xor ecx, eax
shr r8d, 3
xor ecx, r8d
lea eax, [rbx - 7]
mov r8d, dword [rbp - 0x7c]
add edx, ecx
and eax, 0xf
mov ecx, r8d
not ecx
and ecx, r12d
add edx, dword [rbp + rax*4 - 0x50]
mov eax, r8d
add dword [rbp + r9*4 - 0x50], edx
mov edx, r8d
ror edx, 0x19
ror eax, 0xb
xor edx, eax
mov eax, r8d
ror eax, 6
xor edx, eax
mov eax, r15d
and eax, r8d
xor ecx, eax
lea rax, [0x180119740]
add edx, ecx
mov ecx, edi
add edx, dword [rax + rbx*4]
add edx, dword [rbp + r9*4 - 0x50]
add edx, r13d
add esi, edx
ror ecx, 0x16
mov r9d, r11d
lea ebx, [r11 + 1]
mov eax, edi
and r9d, 0xf
ror eax, 0xd
mov r13d, r14d
xor ecx, eax
xor r13d, edi
and r13d, dword [rbp - 0x80]
mov eax, edi
ror eax, 2
xor ecx, eax
mov eax, r14d
and eax, edi
xor r13d, eax
lea eax, [rdx + rcx]
add r13d, eax
mov eax, ebx
and eax, 0xf
mov r8d, dword [rbp + rax*4 - 0x50]
lea eax, [r11 - 2]
and eax, 0xf
mov ecx, dword [rbp + rax*4 - 0x50]
mov eax, ecx
ror eax, 0x11
mov edx, ecx
shr ecx, 0xa
ror edx, 0x13
xor edx, eax
mov eax, r8d
xor edx, ecx
ror eax, 7
mov ecx, r8d
shr r8d, 3
ror ecx, 0x12
xor ecx, eax
lea eax, [r11 - 7]
and eax, 0xf
xor ecx, r8d
add edx, ecx
mov ecx, esi
not ecx
and ecx, r15d
add edx, dword [rbp + rax*4 - 0x50]
mov eax, esi
add dword [rbp + r9*4 - 0x50], edx
mov edx, esi
ror eax, 0xb
ror edx, 0x19
xor edx, eax
mov eax, esi
ror eax, 6
xor edx, eax
mov eax, dword [rbp - 0x7c]
and eax, esi
xor ecx, eax
lea rax, [0x180119740]
add edx, ecx
mov ecx, r13d
add edx, dword [rax + r11*4]
mov eax, r13d
add edx, dword [rbp + r9*4 - 0x50]
lea r11d, [rbx + 1]
ror eax, 0xd
add edx, r12d
add dword [rbp - 0x80], edx
mov r12d, edi
xor r12d, r13d
ror ecx, 0x16
xor ecx, eax
and r12d, r14d
mov eax, r13d
ror eax, 2
xor ecx, eax
mov eax, edi
and eax, r13d
xor r12d, eax
lea eax, [rdx + rcx]
add r12d, eax
mov eax, r11d
and eax, 0xf
mov r8d, dword [rbp + rax*4 - 0x50]
lea eax, [rbx - 2]
and eax, 0xf
mov r9d, ebx
and r9d, 0xf
mov ecx, dword [rbp + rax*4 - 0x50]
mov eax, ecx
ror eax, 0x11
mov edx, ecx
ror edx, 0x13
xor edx, eax
shr ecx, 0xa
xor edx, ecx
mov eax, r8d
ror eax, 7
mov ecx, r8d
ror ecx, 0x12
xor ecx, eax
shr r8d, 3
xor ecx, r8d
lea eax, [rbx - 7]
mov r8d, dword [rbp - 0x80]
add edx, ecx
and eax, 0xf
mov ecx, r8d
not ecx
and ecx, dword [rbp - 0x7c]
add edx, dword [rbp + rax*4 - 0x50]
mov eax, r8d
add dword [rbp + r9*4 - 0x50], edx
mov edx, r8d
ror eax, 0xb
ror edx, 0x19
xor edx, eax
mov eax, r8d
ror eax, 6
xor edx, eax
mov eax, r8d
and eax, esi
xor ecx, eax
lea rax, [0x180119740]
add edx, ecx
mov ecx, r12d
add edx, dword [rax + rbx*4]
mov eax, r12d
add edx, dword [rbp + r9*4 - 0x50]
lea ebx, [r11 + 1]
ror eax, 0xd
add edx, r15d
ror ecx, 0x16
add r14d, edx
xor ecx, eax
mov r9d, r11d
mov eax, r12d
mov r15d, r13d
ror eax, 2
xor r15d, r12d
xor ecx, eax
and r15d, edi
mov eax, r13d
and r9d, 0xf
and eax, r12d
xor r15d, eax
lea eax, [rdx + rcx]
add r15d, eax
mov eax, ebx
and eax, 0xf
mov r8d, dword [rbp + rax*4 - 0x50]
lea eax, [r11 - 2]
and eax, 0xf
mov ecx, dword [rbp + rax*4 - 0x50]
mov edx, ecx
mov eax, ecx
ror edx, 0x13
ror eax, 0x11
xor edx, eax
shr ecx, 0xa
xor edx, ecx
mov eax, r8d
mov ecx, r8d
ror ecx, 0x12
ror eax, 7
xor ecx, eax
shr r8d, 3
xor ecx, r8d
lea eax, [r11 - 7]
add edx, ecx
and eax, 0xf
mov ecx, r14d
mov r8d, r12d
not ecx
xor r8d, r15d
and ecx, esi
and r8d, r13d
add edx, dword [rbp + rax*4 - 0x50]
mov eax, r14d
add dword [rbp + r9*4 - 0x50], edx
mov edx, r14d
ror eax, 0xb
ror edx, 0x19
xor edx, eax
mov eax, r14d
ror eax, 6
xor edx, eax
mov eax, dword [rbp - 0x80]
and eax, r14d
xor ecx, eax
lea rax, [0x180119740]
add edx, ecx
mov ecx, r15d
add edx, dword [rax + r11*4]
mov eax, r15d
add edx, dword [rbp + r9*4 - 0x50]
add edx, dword [rbp - 0x7c]
ror eax, 0xd
add edi, edx
ror ecx, 0x16
xor ecx, eax
mov r9d, ebx
mov eax, r15d
mov dword [rbp - 0x78], edi
ror eax, 2
and r9d, 0xf
xor ecx, eax
mov eax, r12d
and eax, r15d
xor r8d, eax
lea eax, [rdx + rcx]
add r8d, eax
lea eax, [rbx + 1]
mov qword [rbp - 0x68], rax
and eax, 0xf
mov dword [rbp - 0x7c], r8d
mov r8d, dword [rbp + rax*4 - 0x50]
lea eax, [rbx - 2]
and eax, 0xf
mov ecx, dword [rbp + rax*4 - 0x50]
mov eax, ecx
ror eax, 0x11
mov edx, ecx
ror edx, 0x13
xor edx, eax
shr ecx, 0xa
xor edx, ecx
mov eax, r8d
ror eax, 7
mov ecx, r8d
ror ecx, 0x12
xor ecx, eax
shr r8d, 3
lea eax, [rbx - 7]
xor ecx, r8d
and eax, 0xf
add edx, ecx
add edx, dword [rbp + rax*4 - 0x50]
mov eax, edi
add dword [rbp + r9*4 - 0x50], edx
mov edx, edi
ror eax, 0xb
ror edx, 0x19
xor edx, eax
mov eax, edi
ror eax, 6
mov ecx, edi
xor edx, eax
not ecx
and ecx, dword [rbp - 0x80]
mov eax, r14d
and eax, edi
mov r11d, r15d
xor ecx, eax
lea rax, [0x180119740]
add edx, ecx
add edx, dword [rax + rbx*4]
mov ebx, dword [rbp - 0x7c]
mov ecx, ebx
add edx, dword [rbp + r9*4 - 0x50]
xor r11d, ebx
add edx, esi
ror ecx, 0x16
and r11d, r12d
add r13d, edx
mov eax, ebx
ror eax, 0xd
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, r15d
and eax, ebx
xor r11d, eax
lea eax, [rdx + rcx]
mov rdx, qword [rbp - 0x68]
add r11d, eax
mov dword [rbp - 0x70], r11d
cmp edx, 0x40
jb 0x180044ea1
mov r9d, dword [rbp - 0x80]
mov dword [rbp - 0x74], r14d
mov esi, dword [rbp - 0x74]
mov r14, qword [rbp - 0x60]
add dword [r14], r11d
add dword [r14 + 4], ebx
add dword [r14 + 8], r15d
add dword [r14 + 0xc], r12d
add dword [r14 + 0x10], r13d
add dword [r14 + 0x14], edi
add dword [r14 + 0x18], esi
add dword [r14 + 0x1c], r9d
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.18008b0e0
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret