Function at 0x1400e2a60
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
xchg rcx, r9
mov qword [rsp + 8], r9
xchg r9, rcx
nop
sub rsp, 8
mov qword [rsp], rbp
nop
push 0x4a187244
mov qword [rsp], rsi
nop
sub rsp, 8
mov qword [rsp], rdi
push r12
nop
sub rsp, 8
mov qword [rsp], r13
push r14
nop
sub rsp, 8
mov qword [rsp], r15
lea rbp, [rsp - 0x27]
sub rsp, 0x100
movzx eax, byte [rdx + 1]
xchg rdx, r12
mov r9, r12
xchg rdx, r12
movzx r8d, byte [rdx]
shl r8d, 6
shl r8d, 1
shl r8d, 1
or r8d, eax
movzx eax, byte [rdx + 2]
shl r8d, 7
shl r8d, 1
or r8d, eax
movzx eax, byte [rdx + 3]
movzx edx, byte [rdx + 4]
shl edx, 8
shl r8d, 4
shl r8d, 3
shl r8d, 1
or r8d, eax
movzx eax, byte [r9 + 5]
or edx, eax
mov dword [rsp], r8d
shl edx, 7
shl edx, 1
movzx eax, byte [r9 + 6]
or edx, eax
movzx eax, byte [r9 + 7]
shl edx, 6
shl edx, 2
or edx, eax
movzx eax, byte [r9 + 9]
mov dword [rsp + 4], edx
movzx edx, byte [r9 + 8]
shl edx, 8
or edx, eax
movzx eax, byte [r9 + 0xa]
shl edx, 2
shl edx, 6
or edx, eax
movzx eax, byte [r9 + 0xb]
shl edx, 6
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0xd]
mov dword [rsp + 8], edx
movzx edx, byte [r9 + 0xc]
shl edx, 3
shl edx, 1
shl edx, 2
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0xe]
shl edx, 3
shl edx, 2
shl edx, 1
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0xf]
shl edx, 2
shl edx, 4
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x11]
mov dword [rsp + 0xc], edx
movzx edx, byte [r9 + 0x10]
shl edx, 8
or edx, eax
movzx eax, byte [r9 + 0x12]
shl edx, 6
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x13]
shl edx, 3
shl edx, 4
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x15]
mov dword [rsp + 0x10], edx
movzx edx, byte [r9 + 0x14]
shl edx, 6
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x16]
shl edx, 2
shl edx, 5
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x17]
shl edx, 4
shl edx, 2
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x19]
mov dword [rsp + 0x14], edx
movzx edx, byte [r9 + 0x18]
shl edx, 7
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x1a]
shl edx, 3
shl edx, 3
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x1b]
shl edx, 6
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x1d]
mov dword [rsp + 0x18], edx
movzx edx, byte [r9 + 0x1c]
shl edx, 6
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x1e]
shl edx, 2
shl edx, 1
shl edx, 5
or edx, eax
movzx eax, byte [r9 + 0x1f]
shl edx, 3
shl edx, 3
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x21]
mov dword [rsp + 0x1c], edx
movzx edx, byte [r9 + 0x20]
shl edx, 2
shl edx, 6
or edx, eax
movzx eax, byte [r9 + 0x22]
shl edx, 6
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x23]
shl edx, 2
shl edx, 1
shl edx, 2
shl edx, 2
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x25]
mov dword [rsp + 0x20], edx
movzx edx, byte [r9 + 0x24]
shl edx, 2
shl edx, 4
shl edx, 2
or edx, eax
movzx eax, byte [r9 + 0x26]
shl edx, 6
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x27]
shl edx, 6
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x29]
mov dword [rsp + 0x24], edx
movzx edx, byte [r9 + 0x28]
shl edx, 6
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x2a]
shl edx, 4
shl edx, 2
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x2b]
shl edx, 5
shl edx, 3
or edx, eax
movzx eax, byte [r9 + 0x2d]
mov dword [rsp + 0x28], edx
movzx edx, byte [r9 + 0x2c]
shl edx, 4
shl edx, 2
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x2e]
shl edx, 3
shl edx, 5
or edx, eax
movzx eax, byte [r9 + 0x2f]
shl edx, 4
shl edx, 2
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x31]
mov dword [rsp + 0x2c], edx
movzx edx, byte [r9 + 0x30]
shl edx, 7
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x32]
shl edx, 8
or edx, eax
movzx eax, byte [r9 + 0x33]
shl edx, 7
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x35]
mov dword [rsp + 0x30], edx
movzx edx, byte [r9 + 0x34]
shl edx, 5
shl edx, 1
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x36]
shl edx, 3
shl edx, 5
or edx, eax
movzx eax, byte [r9 + 0x37]
shl edx, 2
shl edx, 5
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x39]
mov dword [rsp + 0x34], edx
movzx edx, byte [r9 + 0x38]
shl edx, 7
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x3a]
shl edx, 4
shl edx, 3
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x3b]
mov r13d, 0xe
shl edx, 4
shl edx, 1
shl edx, 3
or edx, eax
movzx eax, byte [r9 + 0x3d]
mov dword [rsp + 0x38], edx
movzx edx, byte [r9 + 0x3c]
shl edx, 8
or edx, eax
movzx eax, byte [r9 + 0x3e]
shl edx, 1
shl edx, 2
shl edx, 3
shl edx, 1
shl edx, 1
or edx, eax
movzx eax, byte [r9 + 0x3f]
shl edx, 7
shl edx, 1
or edx, eax
mov dword [rsp + 0x3c], edx
nop dword [rax + rax]
lea eax, [r13 - 0xd]
mov r10d, dword [rsp + rax*4]
mov r15d, r10d
mov eax, r13d
ror r15d, 0xe
ror r15d, 2
ror r15d, 1
ror r15d, 1
mov r14d, dword [rsp + rax*4]
mov eax, r10d
ror eax, 1
ror eax, 6
mov edx, r14d
xor r15d, eax
ror edx, 0xa
ror edx, 3
ror edx, 2
ror edx, 1
ror edx, 1
ror edx, 1
ror edx, 1
mov eax, r10d
shr eax, 1
shr eax, 2
xor r15d, eax
mov eax, r14d
ror eax, 1
ror eax, 0x10
xor edx, eax
mov eax, r14d
shr eax, 9
shr eax, 1
xor edx, eax
lea eax, [r13 - 0xe]
add r15d, edx
add r15d, dword [rsp + rax*4]
lea eax, [r13 - 5]
add r15d, dword [rsp + rax*4]
lea eax, [r13 + 2]
mov dword [rsp + rax*4], r15d
lea eax, [r13 - 0xc]
mov r9d, dword [rsp + rax*4]
lea eax, [r13 + 1]
mov esi, dword [rsp + rax*4]
mov edx, r9d
mov eax, esi
ror edx, 0x10
ror edx, 1
ror edx, 1
ror eax, 4
ror eax, 5
ror eax, 6
ror eax, 1
ror eax, 1
mov r8d, esi
ror r8d, 0x13
xor r8d, eax
mov eax, esi
shr eax, 2
shr eax, 7
shr eax, 1
xor r8d, eax
mov eax, r9d
ror eax, 1
ror eax, 3
ror eax, 3
xor edx, eax
mov eax, r9d
shr eax, 1
shr eax, 1
shr eax, 1
xor edx, eax
lea eax, [r13 - 4]
add r8d, edx
mov edx, r15d
ror edx, 3
ror edx, 0xb
ror edx, 1
ror edx, 3
ror edx, 1
add r8d, dword [rsp + rax*4]
lea eax, [r13 + 3]
add r10d, r8d
mov dword [rsp + rax*4], r10d
lea eax, [r13 - 0xb]
mov r11d, dword [rsp + rax*4]
mov eax, r11d
ror eax, 4
ror eax, 2
ror eax, 1
mov r8d, r11d
ror r8d, 0xe
ror r8d, 1
ror r8d, 1
ror r8d, 1
ror r8d, 1
xor r8d, eax
mov eax, r11d
shr eax, 1
shr eax, 1
shr eax, 1
xor r8d, eax
mov eax, r15d
ror eax, 8
ror eax, 7
ror eax, 1
ror eax, 1
xor edx, eax
mov eax, r15d
shr eax, 1
shr eax, 7
shr eax, 1
shr eax, 1
xor edx, eax
lea eax, [r13 - 3]
add r8d, edx
add r8d, dword [rsp + rax*4]
lea eax, [r13 + 4]
add r9d, r8d
mov dword [rsp + rax*4], r9d
lea eax, [r13 - 0xa]
mov edi, dword [rsp + rax*4]
mov ebx, edi
ror ebx, 5
ror ebx, 3
ror ebx, 3
ror ebx, 6
ror ebx, 1
mov eax, edi
mov edx, r10d
ror eax, 5
ror eax, 1
ror eax, 1
xor ebx, eax
ror edx, 3
ror edx, 6
ror edx, 0xa
mov eax, edi
shr eax, 3
xor ebx, eax
mov eax, r10d
ror eax, 0xd
ror eax, 4
xor edx, eax
shr r10d, 9
shr r10d, 1
xor edx, r10d
lea eax, [r13 - 2]
add ebx, edx
add ebx, dword [rsp + rax*4]
lea eax, [r13 + 5]
add ebx, r11d
mov r11d, r9d
mov dword [rsp + rax*4], ebx
lea eax, [r13 - 9]
mov r10d, dword [rsp + rax*4]
mov eax, r9d
ror eax, 6
ror eax, 0xa
ror eax, 1
mov edx, r10d
ror edx, 3
ror edx, 5
ror edx, 7
ror edx, 2
ror edx, 1
ror r11d, 6
ror r11d, 7
ror r11d, 3
ror r11d, 1
ror r11d, 1
ror r11d, 1
xor r11d, eax
shr r9d, 1
shr r9d, 6
shr r9d, 2
shr r9d, 1
mov eax, r10d
xor r11d, r9d
ror eax, 4
ror eax, 2
ror eax, 1
xor edx, eax
mov eax, r10d
shr eax, 3
xor edx, eax
lea eax, [r13 - 1]
add r11d, edx
mov edx, ebx
ror edx, 0xa
ror edx, 2
ror edx, 3
ror edx, 1
ror edx, 1
ror edx, 1
ror edx, 1
add r11d, dword [rsp + rax*4]
lea eax, [r13 + 6]
add r11d, edi
lea edi, [r13 + 8]
mov dword [rsp + rax*4], r11d
lea eax, [r13 - 8]
mov r9d, dword [rsp + rax*4]
mov eax, r9d
ror eax, 4
ror eax, 2
ror eax, 1
mov r8d, r9d
ror r8d, 0xc
ror r8d, 2
ror r8d, 1
ror r8d, 2
ror r8d, 1
xor r8d, eax
mov eax, r9d
shr eax, 2
shr eax, 1
xor r8d, eax
mov eax, ebx
ror eax, 0xa
ror eax, 1
ror eax, 1
ror eax, 4
ror eax, 1
xor edx, eax
shr ebx, 4
shr ebx, 6
xor ebx, edx
mov edx, r11d
lea eax, [r14 + r8]
ror edx, 0x13
add ebx, eax
lea eax, [r13 + 7]
add ebx, r10d
mov dword [rsp + rax*4], ebx
lea eax, [r13 - 7]
mov r10d, dword [rsp + rax*4]
mov r8d, r10d
ror r8d, 3
ror r8d, 0xf
mov eax, r10d
ror eax, 7
xor r8d, eax
mov eax, r10d
shr eax, 1
shr eax, 1
shr eax, 1
xor r8d, eax
mov eax, r11d
ror eax, 1
ror eax, 3
ror eax, 3
ror eax, 5
ror eax, 4
ror eax, 1
xor edx, eax
shr r11d, 3
shr r11d, 2
shr r11d, 4
shr r11d, 1
lea eax, [r9 + r8]
xor edx, r11d
add edx, eax
lea eax, [r13 - 6]
mov r8d, dword [rsp + rax*4]
add edx, esi
mov eax, r8d
mov dword [rsp + rdi*4], edx
mov edx, r8d
ror eax, 1
ror eax, 4
ror eax, 1
ror eax, 1
shr r8d, 2
shr r8d, 1
ror edx, 5
ror edx, 5
ror edx, 3
ror edx, 2
ror edx, 2
ror edx, 1
xor edx, eax
mov eax, ebx
xor edx, r8d
ror eax, 0xf
ror eax, 2
mov r8d, ebx
shr ebx, 6
shr ebx, 3
shr ebx, 1
ror r8d, 0x12
ror r8d, 1
xor r8d, eax
xor r8d, ebx
lea eax, [r10 + rdx]
add r8d, eax
lea eax, [r13 + 9]
add r8d, r15d
mov r13d, edi
mov dword [rsp + rax*4], r8d
lea eax, [rdi + 2]
cmp eax, 0x40
jb 0x1400e2e05
mov edi, dword [rcx + 0x50]
lea r8, [0x140004100]
mov ebx, dword [rcx + 0x54]
xor r13d, r13d
mov r11d, dword [rcx + 0x58]
mov r10d, dword [rcx + 0x5c]
mov r12d, dword [rcx + 0x60]
mov r15d, dword [rcx + 0x64]
mov r14d, dword [rcx + 0x68]
mov esi, dword [rcx + 0x6c]
mov ecx, 0xa6048625
mov qword [rbp + 0x77], 0x10
nop dword [rax]
nop word [rax + rax]
mov edx, r12d
mov r9d, r12d
ror r9d, 0xe
ror r9d, 5
ror r9d, 6
not edx
and edx, r14d
mov eax, r12d
ror eax, 6
ror eax, 2
ror eax, 3
xor r9d, eax
mov eax, r12d
ror eax, 3
ror eax, 1
ror eax, 1
ror eax, 1
xor r9d, eax
mov eax, r15d
and eax, r12d
xor edx, eax
lea eax, [rcx - 2]
xor eax, dword [r8 + r13]
add r9d, edx
add r9d, eax
mov edx, ebx
add r9d, dword [rsp + r13]
xor edx, edi
add r9d, esi
and edx, r11d
mov eax, edi
mov r8d, edi
ror eax, 3
ror eax, 9
ror eax, 1
ror r8d, 0xc
ror r8d, 6
ror r8d, 3
ror r8d, 1
xor r8d, eax
lea esi, [r9 + r10]
mov eax, edi
ror eax, 1
ror eax, 1
xor r8d, eax
mov eax, ebx
and eax, edi
xor edx, eax
mov eax, esi
ror eax, 6
ror eax, 4
ror eax, 1
add r8d, edx
mov edx, esi
not edx
and edx, r15d
lea r10d, [r8 + r9]
mov r9d, esi
ror r9d, 0xa
ror r9d, 2
ror r9d, 4
ror r9d, 2
ror r9d, 5
ror r9d, 1
ror r9d, 1
mov r8d, r10d
xor r9d, eax
ror r8d, 0x10
ror r8d, 3
ror r8d, 2
ror r8d, 1
mov eax, esi
ror eax, 1
ror eax, 4
ror eax, 1
xor r9d, eax
mov eax, r12d
and eax, esi
xor edx, eax
lea eax, [rcx - 1]
add r9d, edx
lea rdx, [0x140004100]
xor eax, dword [rdx + r13 + 4]
mov edx, edi
add r9d, eax
xor edx, r10d
add r9d, dword [rsp + r13 + 4]
and edx, ebx
add r9d, r14d
mov eax, r10d
ror eax, 7
ror eax, 3
ror eax, 2
ror eax, 1
xor r8d, eax
mov eax, r10d
ror eax, 2
xor r8d, eax
lea r14d, [r9 + r11]
mov eax, edi
and eax, r10d
xor edx, eax
mov eax, r14d
add r8d, edx
ror eax, 2
ror eax, 6
ror eax, 1
ror eax, 1
ror eax, 1
lea r11d, [r8 + r9]
mov r9d, r14d
ror r9d, 0x17
ror r9d, 1
ror r9d, 1
xor r9d, eax
mov eax, r14d
ror eax, 1
ror eax, 1
ror eax, 4
lea r13, [r13 + 0x10]
xor r9d, eax
mov edx, r14d
not edx
mov r8d, r11d
and edx, r12d
ror r8d, 0xd
ror r8d, 8
ror r8d, 1
mov eax, esi
and eax, r14d
xor edx, eax
mov eax, ecx
add r9d, edx
lea rdx, [0x140004100]
xor eax, dword [rdx + r13 - 8]
mov edx, r10d
add r9d, eax
xor edx, r11d
add r9d, dword [rsp + r13 - 8]
and edx, edi
add r9d, r15d
mov eax, r11d
ror eax, 8
ror eax, 2
ror eax, 1
ror eax, 1
ror eax, 1
xor r8d, eax
mov eax, r11d
ror eax, 2
xor r8d, eax
lea r15d, [r9 + rbx]
mov eax, r10d
and eax, r11d
xor edx, eax
mov eax, r15d
add r8d, edx
ror eax, 8
ror eax, 2
ror eax, 1
mov edx, r15d
not edx
and edx, esi
lea ebx, [r8 + r9]
mov r9d, r15d
ror r9d, 3
ror r9d, 0xd
ror r9d, 4
ror r9d, 1
ror r9d, 1
ror r9d, 2
ror r9d, 1
mov r8d, ebx
xor r9d, eax
ror r8d, 1
ror r8d, 8
ror r8d, 9
ror r8d, 3
ror r8d, 1
mov eax, r15d
ror eax, 4
ror eax, 1
ror eax, 1
xor r9d, eax
mov eax, r14d
and eax, r15d
xor edx, eax
lea eax, [rcx + 1]
add r9d, edx
nop
sub ecx, 0x76fce9e5
add ecx, 0x76fce9e9
lea rdx, [0x140004100]
xor eax, dword [rdx + r13 - 4]
mov edx, r11d
add r9d, eax
xor edx, ebx
add r9d, dword [rsp + r13 - 4]
and edx, r10d
add r9d, r12d
mov eax, ebx
ror eax, 4
ror eax, 1
ror eax, 4
ror eax, 4
xor r8d, eax
mov eax, ebx
ror eax, 1
ror eax, 1
xor r8d, eax
lea r12d, [r9 + rdi]
mov eax, r11d
and eax, ebx
xor edx, eax
add r8d, edx
sub qword [rbp + 0x77], 1
lea edi, [r8 + r9]
lea r8, [0x140004100]
jne 0x1400e31c6
xchg r10, rcx
mov r10, qword [rbp + 0x67]
xchg r10, rcx
add dword [rcx + 0x54], ebx
add dword [rcx + 0x50], edi
add dword [rcx + 0x58], r11d
add dword [rcx + 0x5c], r10d
add dword [rcx + 0x60], r12d
add dword [rcx + 0x64], r15d
add dword [rcx + 0x68], r14d
add dword [rcx + 0x6c], esi
mov rbx, qword [rsp + 0x148]
add rsp, 0x100
push rbx
push rbx
push rdx
xchg qword [rsp + 0x18], r15
add rsp, 0x20
push rcx
push rdx
push rbx
push rax
push rdx
push rbx
push rdx
xchg qword [rsp + 0x38], r14
add rsp, 0x40
nop
mov r13, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
xchg qword [rsp], rsi
add rsp, 8
nop
mov rbp, qword [rsp]
add rsp, 8
ret