Function at 0x140004540
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
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov rax, qword [0x14000b008]
xor rax, rsp
mov qword [rbp + 0x40], rax
mov rbx, rdx
mov qword [rsp + 0x38], rcx
xor edx, edx
lea rcx, [rbp - 0x80]
mov r8d, 0xc0
call sub.VCRUNTIME140.dll_memset
movzx eax, byte [rbx + 1]
movzx ecx, byte [rbx]
shl ecx, 8
or ecx, eax
movzx r10d, byte [rbx + 4]
shl ecx, 8
movzx eax, byte [rbx + 2]
or ecx, eax
shl r10d, 8
shl ecx, 8
movzx eax, byte [rbx + 3]
or ecx, eax
movzx eax, byte [rbx + 5]
mov dword [rsp + 0x40], ecx
or r10d, eax
movzx eax, byte [rbx + 6]
movzx ecx, byte [rbx + 8]
shl ecx, 8
shl r10d, 8
or r10d, eax
movzx eax, byte [rbx + 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [rbx + 9]
or ecx, eax
mov dword [rsp + 0x44], r10d
movzx eax, byte [rbx + 0xa]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0xb]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0xd]
mov dword [rsp + 0x48], ecx
movzx ecx, byte [rbx + 0xc]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0xe]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0xf]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x11]
mov dword [rsp + 0x4c], ecx
movzx ecx, byte [rbx + 0x10]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x12]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x13]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x15]
mov dword [rsp + 0x50], ecx
movzx ecx, byte [rbx + 0x14]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x16]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x17]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x19]
mov dword [rsp + 0x54], ecx
movzx ecx, byte [rbx + 0x18]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x1a]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x1b]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x1d]
mov dword [rsp + 0x58], ecx
movzx ecx, byte [rbx + 0x1c]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x1e]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x1f]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x21]
mov dword [rsp + 0x5c], ecx
movzx ecx, byte [rbx + 0x20]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x22]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x23]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x25]
mov dword [rsp + 0x60], ecx
movzx ecx, byte [rbx + 0x24]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x26]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x27]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x29]
mov dword [rsp + 0x64], ecx
movzx ecx, byte [rbx + 0x28]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x2a]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x2b]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x2d]
mov dword [rsp + 0x68], ecx
movzx ecx, byte [rbx + 0x2c]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x2e]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x2f]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x31]
mov dword [rsp + 0x6c], ecx
movzx ecx, byte [rbx + 0x30]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x32]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x33]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x35]
mov dword [rsp + 0x70], ecx
movzx ecx, byte [rbx + 0x34]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x36]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x37]
shl ecx, 8
or ecx, eax
mov dword [rsp + 0x74], ecx
movzx ecx, byte [rbx + 0x38]
shl ecx, 8
movzx eax, byte [rbx + 0x39]
lea rdi, [rsp + 0x44]
or ecx, eax
mov qword [rsp + 0x28], rdi
movzx eax, byte [rbx + 0x3a]
shl ecx, 8
or ecx, eax
mov qword [rsp + 0x30], 4
movzx eax, byte [rbx + 0x3b]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x3d]
mov dword [rsp + 0x78], ecx
movzx ecx, byte [rbx + 0x3c]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x3e]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0x3f]
shl ecx, 8
or ecx, eax
mov dword [rsp + 0x7c], ecx
nop word [rax + rax]
mov r8d, dword [rdi + 4]
mov r12d, r10d
mov r11d, dword [rdi + 0x34]
mov eax, r10d
mov ebx, dword [rdi + 0x38]
mov ecx, r11d
ror eax, 7
mov edx, r8d
mov r9d, dword [rdi + 8]
mov r15d, ebx
ror edx, 0x12
ror r12d, 0x12
xor r12d, eax
ror r15d, 0x13
ror ecx, 0x13
mov eax, r10d
shr eax, 3
xor r12d, eax
mov eax, r11d
ror eax, 0x11
xor ecx, eax
mov eax, r11d
shr eax, 0xa
xor ecx, eax
mov eax, r8d
ror eax, 7
add r12d, ecx
xor edx, eax
add r12d, dword [rdi - 4]
add r12d, dword [rdi + 0x20]
mov eax, r8d
shr eax, 3
mov r14d, r12d
xor edx, eax
ror r14d, 0x13
mov eax, ebx
mov dword [rdi + 0x3c], r12d
ror eax, 0x11
xor r15d, eax
mov eax, ebx
shr eax, 0xa
xor r15d, eax
lea eax, [r10 + rdx]
mov r10d, dword [rdi + 0xc]
add r15d, eax
add r15d, dword [rdi + 0x24]
mov eax, r9d
ror eax, 7
mov edx, r9d
ror edx, 0x12
mov esi, r15d
xor edx, eax
ror esi, 0x13
mov eax, r9d
mov dword [rdi + 0x40], r15d
shr eax, 3
xor edx, eax
mov eax, r12d
ror eax, 0x11
xor r14d, eax
mov eax, r12d
shr eax, 0xa
xor r14d, eax
lea eax, [r8 + rdx]
add r14d, eax
mov edx, r10d
add r14d, dword [rdi + 0x28]
mov eax, r10d
ror eax, 7
ror edx, 0x12
xor edx, eax
mov dword [rdi + 0x44], r14d
mov eax, r10d
shr eax, 3
xor edx, eax
mov eax, r15d
ror eax, 0x11
xor esi, eax
mov eax, r15d
shr eax, 0xa
xor esi, eax
mov r8d, dword [rdi + 0x10]
lea eax, [r9 + rdx]
mov r9d, dword [rdi + 0x30]
lea r13, [rdi + 0x30]
add esi, eax
mov dword [rsp + 0x20], r9d
add esi, dword [rdi + 0x2c]
mov eax, r8d
ror eax, 7
mov edx, r8d
ror edx, 0x12
mov ecx, esi
xor edx, eax
ror ecx, 0x13
mov dword [rdi + 0x48], esi
mov eax, r8d
shr eax, 3
mov edi, r14d
xor edx, eax
ror edi, 0x13
mov eax, r14d
ror eax, 0x11
xor edi, eax
mov eax, r14d
shr eax, 0xa
xor edi, eax
lea eax, [r10 + rdx]
mov r10, qword [rsp + 0x28]
add edi, eax
add edi, r9d
mov r9d, dword [r10 + 0x14]
mov edx, r9d
ror edx, 0x12
mov eax, r9d
ror eax, 7
xor edx, eax
mov dword [r10 + 0x4c], edi
mov eax, r9d
shr eax, 3
xor edx, eax
mov eax, esi
ror eax, 0x11
add r8d, edx
xor ecx, eax
mov eax, esi
shr eax, 0xa
xor ecx, eax
add r8d, ecx
mov ecx, edi
ror ecx, 0x13
add r8d, r11d
mov r11d, dword [r10 + 0x18]
mov edx, r11d
ror edx, 0x12
mov eax, r11d
ror eax, 7
xor edx, eax
mov dword [r10 + 0x50], r8d
mov eax, r11d
shr eax, 3
xor edx, eax
mov eax, edi
ror eax, 0x11
xor ecx, eax
mov eax, edi
shr eax, 0xa
xor ecx, eax
lea eax, [rbx + rdx]
add ecx, eax
add r9d, ecx
mov ecx, r8d
mov dword [r10 + 0x54], r9d
mov r10d, dword [r10 + 0x1c]
mov edx, r10d
ror edx, 0x12
mov eax, r10d
ror eax, 7
xor edx, eax
mov eax, r10d
shr eax, 3
xor edx, eax
ror ecx, 0x13
mov eax, r8d
ror eax, 0x11
xor ecx, eax
shr r8d, 0xa
xor r8d, ecx
lea eax, [r12 + rdx]
mov r12, qword [rsp + 0x28]
add r8d, eax
add r8d, r11d
mov ecx, r9d
ror ecx, 0x13
mov ebx, dword [r12 + 0x20]
mov edx, ebx
mov r11d, dword [r12 + 0x24]
mov eax, ebx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov dword [r12 + 0x58], r8d
mov eax, ebx
shr eax, 3
xor edx, eax
mov eax, r9d
ror eax, 0x11
xor ecx, eax
shr r9d, 0xa
xor r9d, ecx
mov ecx, r8d
lea eax, [r15 + rdx]
ror ecx, 0x13
add r9d, eax
mov edx, r11d
ror edx, 0x12
add r9d, r10d
mov r10d, dword [r12 + 0x28]
mov eax, r11d
ror eax, 7
xor edx, eax
mov dword [r12 + 0x5c], r9d
mov eax, r11d
shr eax, 3
xor edx, eax
mov eax, r8d
ror eax, 0x11
xor ecx, eax
shr r8d, 0xa
xor r8d, ecx
mov ecx, r9d
lea eax, [r14 + rdx]
ror ecx, 0x13
add r8d, eax
mov edx, r10d
ror edx, 0x12
add r8d, ebx
mov eax, r10d
mov dword [r12 + 0x60], r8d
ror eax, 7
xor edx, eax
mov eax, r10d
shr eax, 3
xor edx, eax
mov eax, r9d
ror eax, 0x11
xor ecx, eax
shr r9d, 0xa
xor ecx, r9d
lea eax, [rsi + rdx]
add ecx, eax
add ecx, r11d
mov dword [r12 + 0x64], ecx
mov ecx, dword [r12 + 0x2c]
mov edx, ecx
mov eax, ecx
ror edx, 0x12
shr ecx, 3
ror eax, 7
xor edx, eax
xor edx, ecx
mov ecx, r8d
ror ecx, 0x13
mov eax, r8d
mov qword [rsp + 0x28], r13
ror eax, 0x11
xor ecx, eax
shr r8d, 0xa
xor ecx, r8d
lea eax, [rdi + rdx]
add ecx, eax
mov rdi, r13
add ecx, r10d
mov r10d, dword [rsp + 0x20]
sub qword [rsp + 0x30], 1
mov dword [r12 + 0x68], ecx
jne 0x1400047e0
mov r12, qword [rsp + 0x38]
xor r13d, r13d
mov ebx, dword [r12]
mov r11d, dword [r12 + 4]
mov r10d, dword [r12 + 8]
mov r9d, dword [r12 + 0xc]
mov r15d, dword [r12 + 0x10]
mov r14d, dword [r12 + 0x14]
mov esi, dword [r12 + 0x18]
mov edi, dword [r12 + 0x1c]
lea r12, [0x140008570]
nop word [rax + rax]
mov r8d, r15d
mov eax, r15d
ror eax, 0xb
mov ecx, r15d
ror r8d, 0x19
not ecx
xor r8d, eax
and ecx, esi
mov eax, r15d
ror eax, 6
xor r8d, eax
mov eax, r14d
and eax, r15d
xor ecx, eax
mov eax, ebx
add r8d, ecx
ror eax, 0xd
add r8d, dword [r12 + r13]
mov ecx, r11d
add r8d, dword [rsp + r13 + 0x40]
xor ecx, ebx
add r8d, edi
and ecx, r10d
add r9d, r8d
mov edi, ebx
ror edi, 0x16
xor edi, eax
mov eax, ebx
ror eax, 2
xor edi, eax
mov eax, r11d
and eax, ebx
xor ecx, eax
mov eax, r9d
ror eax, 0xb
add edi, ecx
add edi, r8d
mov ecx, r9d
not ecx
mov r8d, r9d
ror r8d, 0x19
and ecx, r14d
xor r8d, eax
mov eax, r9d
ror eax, 6
xor r8d, eax
mov eax, r15d
and eax, r9d
xor ecx, eax
mov eax, edi
add r8d, ecx
ror eax, 0xd
add r8d, dword [rsp + r13 + 0x44]
mov ecx, ebx
add r8d, dword [r12 + r13 + 4]
xor ecx, edi
add r8d, esi
and ecx, r11d
add r10d, r8d
mov esi, edi
ror esi, 0x16
xor esi, eax
mov eax, edi
ror eax, 2
xor esi, eax
mov eax, ebx
and eax, edi
xor ecx, eax
mov eax, r10d
add esi, ecx
ror eax, 0xb
add esi, r8d
mov ecx, r10d
mov r8d, r10d
not ecx
ror r8d, 0x19
xor r8d, eax
mov eax, r10d
ror eax, 6
xor r8d, eax
and ecx, r15d
mov eax, r9d
and eax, r10d
xor ecx, eax
mov eax, esi
add r8d, ecx
ror eax, 0xd
add r8d, dword [rsp + r13 + 0x48]
mov ecx, edi
add r8d, dword [r12 + r13 + 8]
xor ecx, esi
add r8d, r14d
and ecx, ebx
add r11d, r8d
mov r14d, esi
ror r14d, 0x16
xor r14d, eax
mov eax, esi
ror eax, 2
xor r14d, eax
mov eax, edi
and eax, esi
xor ecx, eax
mov eax, r11d
ror eax, 0xb
add r14d, ecx
add r14d, r8d
mov ecx, r11d
not ecx
mov r8d, r11d
ror r8d, 0x19
and ecx, r9d
xor r8d, eax
mov eax, r11d
ror eax, 6
xor r8d, eax
mov eax, r10d
and eax, r11d
xor ecx, eax
mov eax, r14d
add r8d, ecx
ror eax, 0xd
add r8d, dword [rsp + r13 + 0x4c]
mov ecx, esi
add r8d, dword [r12 + r13 + 0xc]
xor ecx, r14d
add r8d, r15d
and ecx, edi
add ebx, r8d
mov r15d, r14d
ror r15d, 0x16
xor r15d, eax
mov eax, r14d
ror eax, 2
xor r15d, eax
mov eax, esi
and eax, r14d
xor ecx, eax
mov eax, ebx
ror eax, 0xb
add r15d, ecx
add r15d, r8d
mov ecx, ebx
not ecx
mov r8d, ebx
ror r8d, 0x19
and ecx, r10d
xor r8d, eax
mov eax, ebx
ror eax, 6
xor r8d, eax
mov eax, r11d
and eax, ebx
xor ecx, eax
mov eax, r15d
add r8d, ecx
add r8d, dword [rsp + r13 + 0x50]
add r8d, dword [r12 + r13 + 0x10]
add r8d, r9d
mov r9d, r15d
ror r9d, 0x16
ror eax, 0xd
xor r9d, eax
add edi, r8d
mov eax, r15d
mov ecx, r14d
ror eax, 2
xor ecx, r15d
xor r9d, eax
and ecx, esi
mov eax, r14d
and eax, r15d
xor ecx, eax
mov eax, edi
ror eax, 0xb
add r9d, ecx
add r9d, r8d
mov ecx, edi
not ecx
mov r8d, edi
and ecx, r11d
ror r8d, 0x19
xor r8d, eax
mov eax, edi
ror eax, 6
xor r8d, eax
mov eax, ebx
and eax, edi
xor ecx, eax
mov eax, r9d
add r8d, ecx
ror eax, 0xd
add r8d, dword [rsp + r13 + 0x54]
mov ecx, r15d
add r8d, dword [r12 + r13 + 0x14]
xor ecx, r9d
add r8d, r10d
and ecx, r14d
add esi, r8d
mov r10d, r9d
ror r10d, 0x16
xor r10d, eax
mov eax, r9d
ror eax, 2
xor r10d, eax
mov eax, r15d
and eax, r9d
xor ecx, eax
mov eax, esi
ror eax, 0xb
add r10d, ecx
add r10d, r8d
mov ecx, esi
not ecx
mov r8d, esi
ror r8d, 0x19
and ecx, ebx
xor r8d, eax
mov eax, esi
ror eax, 6
xor r8d, eax
mov eax, edi
and eax, esi
xor ecx, eax
mov eax, r10d
add r8d, ecx
ror eax, 0xd
add r8d, dword [rsp + r13 + 0x58]
mov ecx, r9d
add r8d, dword [r12 + r13 + 0x18]
xor ecx, r10d
add r8d, r11d
and ecx, r15d
mov r11d, r10d
ror r11d, 0x16
xor r11d, eax
mov eax, r10d
ror eax, 2
xor r11d, eax
mov eax, r9d
and eax, r10d
xor ecx, eax
add r11d, ecx
add r11d, r8d
add r14d, r8d
mov r8d, r14d
mov eax, r14d
ror eax, 0xb
mov ecx, r14d
ror r8d, 0x19
not ecx
xor r8d, eax
and ecx, edi
mov eax, r14d
ror eax, 6
xor r8d, eax
mov eax, esi
and eax, r14d
xor ecx, eax
mov eax, r11d
add r8d, ecx
ror eax, 0xd
add r8d, dword [rsp + r13 + 0x5c]
mov ecx, r10d
add r8d, dword [r12 + r13 + 0x1c]
xor ecx, r11d
add r8d, ebx
and ecx, r9d
mov ebx, r11d
add r15d, r8d
ror ebx, 0x16
add r13, 0x20
xor ebx, eax
mov eax, r11d
ror eax, 2
xor ebx, eax
mov eax, r10d
and eax, r11d
xor ecx, eax
add ebx, ecx
add ebx, r8d
cmp r13, 0x100
jb 0x140004b30
mov r12, qword [rsp + 0x38]
add dword [r12], ebx
add dword [r12 + 4], r11d
add dword [r12 + 8], r10d
add dword [r12 + 0xc], r9d
add dword [r12 + 0x10], r15d
add dword [r12 + 0x14], r14d
add dword [r12 + 0x18], esi
add dword [r12 + 0x1c], edi
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.140005f50
lea r11, [rsp + 0x150]
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