Function at 0x1400e9d40
Capabilities:
Encode data using xor

Disassembly:
xchg rdx, rsi
mov qword [rsp + 0x10], rsi
xchg rsi, rdx
mov qword [rsp + 8], rcx
push rbp
nop
mov qword [rsp - 8], rbx
sub rsp, 8
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
mov qword [rsp - 8], rdi
sub rsp, 8
push r10
mov qword [rsp], r12
push r13
push r14
nop
sub rsp, 8
mov qword [rsp], r15
lea rbp, [rsp - 0x17]
sub rsp, 0xf8
movzx r12d, r8b
mov r14d, r8d
and r12b, 0xf
xchg r11, rdx
mov rdx, r11
xchg rdx, r11
mov r15d, 0x10
mov byte [rbp + 0x6f], r12b
sub r11, rcx
mov rbx, rdx
xchg r10, rsi
mov r10, rcx
xchg rsi, r10
mov r10d, r15d
nop word [rax + rax]
movzx eax, byte [r11 + rcx]
mov byte [rcx], al
lea rcx, [rcx + 1]
sub r10, 1
jne 0x1400e9dc8
lea r13, [0x140000000]
test r9, r9
je 0x1400e9f63
movzx eax, byte [r9]
mov r10d, 4
mov byte [rsp + 0x40], al
movzx eax, byte [r9 + 1]
mov byte [rsp + 0x41], al
movzx eax, byte [r9 + 2]
mov byte [rsp + 0x42], al
movzx eax, byte [r9 + 3]
mov byte [rsp + 0x43], al
movzx eax, byte [r9 + 4]
mov byte [rsp + 0x44], al
movzx eax, byte [r9 + 5]
mov byte [rsp + 0x45], al
movzx eax, byte [r9 + 6]
mov byte [rsp + 0x46], al
movzx eax, byte [r9 + 7]
mov byte [rsp + 0x47], al
movzx eax, byte [r9 + 8]
mov byte [rsp + 0x48], al
movzx eax, byte [r9 + 9]
mov byte [rsp + 0x49], al
movzx eax, byte [r9 + 0xa]
mov byte [rsp + 0x4a], al
movzx eax, byte [r9 + 0xb]
mov byte [rsp + 0x4b], al
movzx eax, byte [r9 + 0xc]
mov byte [rsp + 0x4c], al
movzx eax, byte [r9 + 0xd]
mov byte [rsp + 0x4d], al
movzx eax, byte [r9 + 0xe]
mov byte [rsp + 0x4e], al
movzx eax, byte [r9 + 0xf]
mov byte [rsp + 0x4f], al
nop word [rax + rax]
lea edx, [r10*4 - 4]
movzx r9d, byte [rsp + rdx + 0x40]
lea eax, [rdx + 1]
movzx r8d, byte [rsp + rax + 0x40]
lea eax, [rdx + 2]
movzx r11d, byte [rsp + rax + 0x40]
lea eax, [rdx + 3]
movzx ebx, byte [rsp + rax + 0x40]
movzx edi, r8b
test r10b, 3
jne 0x1400e9f07
movzx edi, byte [r11 + r13 + 0x4320]
mov eax, r10d
movzx r11d, byte [rbx + r13 + 0x4320]
xor dil, 0xec
movzx ebx, byte [r9 + r13 + 0x4320]
xor r11b, 0xec
shr eax, 1
shr eax, 1
xor bl, 0xec
movzx ecx, al
movzx r9d, byte [rcx + r13 + 0x4520]
xor r9b, byte [r8 + r13 + 0x4320]
xor r9b, 0x46
lea edx, [r10*4 - 0x10]
xor r9b, byte [rsp + rdx + 0x40]
lea eax, [rdx + 1]
xor dil, byte [rsp + rax + 0x40]
lea r8d, [r10*4]
lea eax, [r8 + 1]
mov byte [rsp + r8 + 0x40], r9b
mov byte [rsp + rax + 0x40], dil
inc r10d
lea eax, [rdx + 2]
xor r11b, byte [rsp + rax + 0x40]
lea eax, [r8 + 2]
mov byte [rsp + rax + 0x40], r11b
lea eax, [rdx + 3]
xor bl, byte [rsp + rax + 0x40]
lea eax, [r8 + 3]
mov byte [rsp + rax + 0x40], bl
cmp r10d, 0x2c
jb 0x1400e9e8c
mov rbx, qword [rbp + 0x67]
xchg r12, rdx
mov r12, qword [rbp + 0x7f]
xchg rdx, r12
test rdx, rdx
je 0x1400e9f82
mov qword [0x1401682a0], rdx
jmp 0x1400e9f89
mov rdx, qword [0x1401682a0]
mov edi, 9
mov rax, r14
xchg r13, rdi
mov qword [rsp + 0x30], r13
xchg rdi, r13
test r14d, r14d
je 0x1400ea3b8
lea r9, [rsp + 0x50]
sub r9, rsi
dec rax
xchg r9, rdx
mov qword [rsp + 0x20], rdx
xchg rdx, r9
shr rax, 4
inc rax
mov qword [rsp + 0x28], rax
nop dword [rax]
mov rcx, rbx
sub rdx, rbx
mov r8, r15
nop dword [rax]
movzx eax, byte [rdx + rcx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x1400e9fda
mov r8, rbx
xchg rsi, rcx
mov rsi, rcx
xchg rcx, rsi
sub r8, rsi
mov rdx, r15
nop dword [rax]
movzx eax, byte [r8 + rcx]
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x1400ea004
lea rax, [r9 - 0x10]
xchg rsi, r14
mov rsi, r14
xchg r14, rsi
mov qword [rbp + 0x77], rax
xchg r11, rax
mov rsi, r11
xchg r11, rax
mov edx, 4
nop dword [rax]
nop dword [rax + rax]
mov ecx, 4
nop word [rax + rax]
movzx eax, byte [rsi + r14]
xor byte [r14], al
inc r14
sub rcx, 1
jne 0x1400ea052
sub rdx, 1
jne 0x1400ea042
mov rsi, qword [rbp + 0x5f]
xchg r15, r11
mov r11, r9
xchg r11, r15
mov qword [rbp + 0x7f], rdi
xchg rsi, r8
mov rsi, r8
xchg rsi, r8
mov r9d, 4
nop dword [rax + rax]
xchg r8, rdx
mov rcx, rdx
xchg r8, rdx
mov edx, 4
nop dword [rax + rax]
movzx eax, byte [rcx]
lea rcx, [rcx + 4]
movzx eax, byte [rax + r13 + 0x4320]
xor al, 0xec
mov byte [rcx - 4], al
sub rdx, 1
jne 0x1400ea0ac
inc r8
sub r9, 1
jne 0x1400ea096
movzx eax, byte [rsi + 5]
lea r12, [rsi + 2]
movzx ecx, byte [rsi + 1]
lea r13d, [rdx + 4]
mov byte [rsi + 1], al
movzx eax, byte [rsi + 9]
mov byte [rsi + 5], al
movzx eax, byte [rsi + 0xd]
mov byte [rsi + 9], al
movzx eax, byte [rsi + 0xa]
mov byte [rsi + 0xd], cl
movzx ecx, byte [rsi + 2]
mov byte [rsi + 2], al
movzx eax, byte [rsi + 0xe]
mov byte [rsi + 0xa], cl
movzx ecx, byte [rsi + 6]
mov byte [rsi + 6], al
movzx eax, byte [rsi + 0xf]
mov byte [rsi + 0xe], cl
movzx ecx, byte [rsi + 3]
mov byte [rsi + 3], al
movzx eax, byte [rsi + 0xb]
mov byte [rsi + 0xf], al
movzx eax, byte [rsi + 7]
mov byte [rsi + 0xb], al
mov byte [rsi + 7], cl
movzx edi, byte [r12 - 2]
movzx r8d, byte [r12 - 1]
movzx edx, dil
movzx ebx, byte [r12 + 1]
xor dl, r8b
movzx r10d, byte [r12]
lea r12, [r12 + 4]
movzx eax, dl
movzx r9d, bl
shr al, 4
shr al, 1
shr al, 1
shr al, 1
add dl, dl
movzx eax, al
xor r9b, r10b
imul ecx, eax, 0x1b
movzx r11d, r9b
xor r11b, dil
xor r11b, r8b
xor cl, dl
movzx edx, r8b
xor cl, dil
xor dl, r10b
xor cl, r11b
movzx eax, dl
mov byte [r12 - 6], cl
xor dil, bl
shr al, 6
shr al, 1
add dl, dl
movzx eax, al
imul ecx, eax, 0x1b
movzx eax, r9b
shr al, 5
shr al, 1
shr al, 1
add r9b, r9b
movzx eax, al
xor cl, dl
xor cl, r8b
xor cl, r11b
mov byte [r12 - 5], cl
imul ecx, eax, 0x1b
movzx eax, dil
shr al, 2
shr al, 3
shr al, 1
shr al, 1
add dil, dil
movzx eax, al
xor cl, r9b
xor cl, r10b
xor cl, r11b
mov byte [r12 - 4], cl
imul ecx, eax, 0x1b
xor cl, dil
xor cl, bl
xor cl, r11b
mov byte [r12 - 3], cl
sub r13, 1
jne 0x1400ea134
mov rax, rsi
lea r8d, [r13 + 4]
mov edx, 4
nop word [rax + rax]
movzx ecx, byte [r15 + rax]
xor byte [rax], cl
inc rax
sub rdx, 1
jne 0x1400ea217
sub r8, 1
jne 0x1400ea207
nop
add r15, 0x50380490
sub r15, 0x50380480
lea r13, [0x140000000]
sub qword [rbp + 0x7f], 1
jne 0x1400ea082
mov r8, rsi
lea r9d, [rdx + 4]
lea r13, [0x140000000]
nop word [rax + rax]
mov rcx, r8
mov edx, 4
nop dword [rax + rax]
movzx eax, byte [rcx]
lea rcx, [rcx + 4]
movzx eax, byte [rax + r13 + 0x4320]
xor al, 0xec
mov byte [rcx - 4], al
sub rdx, 1
jne 0x1400ea27a
inc r8
sub r9, 1
jne 0x1400ea26a
movzx ecx, byte [rsi + 1]
lea r8d, [rdx + 4]
movzx eax, byte [rsi + 5]
xchg r9, rcx
mov rcx, qword [rsp + 0x20]
xchg rcx, r9
mov byte [rsi + 1], al
movzx eax, byte [rsi + 9]
mov byte [rsi + 5], al
movzx eax, byte [rsi + 0xd]
mov byte [rsi + 9], al
movzx eax, byte [rsi + 0xa]
mov byte [rsi + 0xd], cl
movzx ecx, byte [rsi + 2]
mov byte [rsi + 2], al
movzx eax, byte [rsi + 0xe]
mov byte [rsi + 0xa], cl
movzx ecx, byte [rsi + 6]
mov byte [rsi + 6], al
movzx eax, byte [rsi + 0xf]
mov byte [rsi + 0xe], cl
movzx ecx, byte [rsi + 3]
mov byte [rsi + 3], al
movzx eax, byte [rsi + 0xb]
mov byte [rsi + 0xf], al
movzx eax, byte [rsi + 7]
mov byte [rsi + 7], cl
xchg rsi, rcx
mov rsi, rcx
xchg rsi, rcx
mov byte [rsi + 0xb], al
nop dword [rax]
nop dword [rax + rax]
mov edx, 4
nop word [rax + rax]
movzx eax, byte [r9 + rcx + 0x90]
xor byte [rcx], al
inc rcx
sub rdx, 1
jne 0x1400ea32e
sub r8, 1
jne 0x1400ea31e
xchg r12, rbx
mov r12, qword [rbp + 0x67]
xchg rbx, r12
lea edi, [r8 + 9]
xchg r11, rax
mov r11, qword [rbp + 0x77]
xchg r11, rax
lea r15d, [r8 + 0x10]
add rbx, 0x10
xchg r14, r11
mov qword [rbp + 0x5f], r11
xchg r11, r14
sub qword [rsp + 0x28], 1
xchg rdx, rsi
mov rsi, rdx
xchg rsi, rdx
xchg r14, rbx
mov qword [rbp + 0x67], r14
xchg rbx, r14
xchg rsi, r14
mov r14, rsi
xchg rsi, r14
xchg r9, rax
mov rax, r9
xchg r9, rax
mov qword [rsp + 0x20], rax
jne 0x1400e9fca
movzx r12d, byte [rbp + 0x6f]
mov qword [0x1401682a0], rdx
test r12b, r12b
je 0x1400ea727
xchg rcx, r12
mov r12, rsi
xchg rcx, r12
sub rbx, rsi
xchg rsi, r15
mov rdx, rsi
xchg r15, rsi
nop
movzx eax, byte [rbx + rcx]
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x1400ea3d8
movzx eax, r12b
sub r15, rax
xchg r15, r8
mov r15, r8
xchg r15, r8
lea rcx, [rax + rsi]
call fcn.14014ff06
lea r8, [rsp + 0x40]
xchg rcx, rsi
mov rsi, rcx
xchg rsi, rcx
sub r8, rsi
mov r9d, 4
nop dword [rax]
nop dword [rax + rax]
mov edx, 4
nop word [rax + rax]
movzx eax, byte [rcx + r8]
xor byte [rcx], al
inc rcx
sub rdx, 1
jne 0x1400ea438
sub r9, 1
jne 0x1400ea428
lea r14, [rsp + 0x50]
sub r14, rsi
nop
xchg rsi, r8
mov rsi, r8
xchg rsi, r8
lea r10, [0x140000000]
mov r9d, 4
xchg r8, rcx
mov r8, rcx
xchg r8, rcx
mov edx, 4
nop dword [rax + rax]
movzx eax, byte [rcx]
lea rcx, [rcx + 4]
movzx eax, byte [rax + r10 + 0x4320]
xor al, 0xec
mov byte [rcx - 4], al
sub rdx, 1
jne 0x1400ea48c
inc r8
sub r9, 1
jne 0x1400ea476
movzx eax, byte [rsi + 5]
lea r15, [rsi + 2]
movzx ecx, byte [rsi + 1]
lea r12d, [rdx + 4]
mov byte [rsi + 1], al
movzx eax, byte [rsi + 9]
mov byte [rsi + 5], al
movzx eax, byte [rsi + 0xd]
mov byte [rsi + 9], al
movzx eax, byte [rsi + 0xa]
mov byte [rsi + 0xd], cl
movzx ecx, byte [rsi + 2]
mov byte [rsi + 2], al
movzx eax, byte [rsi + 0xe]
mov byte [rsi + 0xa], cl
movzx ecx, byte [rsi + 6]
mov byte [rsi + 6], al
movzx eax, byte [rsi + 0xf]
mov byte [rsi + 0xe], cl
movzx ecx, byte [rsi + 3]
mov byte [rsi + 3], al
movzx eax, byte [rsi + 0xb]
mov byte [rsi + 0xf], al
movzx eax, byte [rsi + 7]
mov byte [rsi + 0xb], al
mov byte [rsi + 7], cl
movzx edi, byte [r15 - 2]
movzx r8d, byte [r15 - 1]
movzx edx, dil
movzx ebx, byte [r15 + 1]
xor dl, r8b
movzx r10d, byte [r15]
lea r15, [r15 + 4]
movzx eax, dl
movzx r9d, bl
shr al, 5
shr al, 1
shr al, 1
add dl, dl
movzx eax, al
xor r9b, r10b
imul ecx, eax, 0x1b
movzx r11d, r9b
xor r11b, dil
xor r11b, r8b
xor cl, dl
movzx edx, r8b
xor cl, dil
xor dl, r10b
xor cl, r11b
movzx eax, dl
mov byte [r15 - 6], cl
xor dil, bl
shr al, 4
shr al, 1
shr al, 1
shr al, 1
add dl, dl
movzx eax, al
imul ecx, eax, 0x1b
movzx eax, r9b
shr al, 5
shr al, 1
shr al, 1
add r9b, r9b
movzx eax, al
xor cl, dl
xor cl, r8b
xor cl, r11b
mov byte [r15 - 5], cl
imul ecx, eax, 0x1b
movzx eax, dil
shr al, 7
add dil, dil
movzx eax, al
xor cl, r9b
xor cl, r10b
xor cl, r11b
mov byte [r15 - 4], cl
imul ecx, eax, 0x1b
xor cl, dil
xor cl, bl
xor cl, r11b
mov byte [r15 - 3], cl
sub r12, 1
jne 0x1400ea514
xchg rsi, rcx
mov rsi, rcx
xchg rcx, rsi
lea r8d, [r12 + 4]
nop dword [rax + rax]
mov edx, 4
nop word [rax + rax]
movzx eax, byte [r14 + rcx]
xor byte [rcx], al
inc rcx
sub rdx, 1
jne 0x1400ea5f8
sub r8, 1
jne 0x1400ea5e8
neg r14
add r14, 0xfffffffffffffff0
neg r14
sub qword [rsp + 0x30], 1
jne 0x1400ea460
xchg rsi, r8
mov rsi, r8
xchg r8, rsi
lea r9d, [rdx + 4]
lea r10, [0x140000000]
nop dword [rax]
nop dword [rax + rax]
xchg r8, rcx
mov r8, rcx
xchg rcx, r8
mov edx, 4
nop dword [rax + rax]
movzx eax, byte [rcx]
lea rcx, [rcx + 4]
movzx eax, byte [rax + r10 + 0x4320]
xor al, 0xec
mov byte [rcx - 4], al
sub rdx, 1
jne 0x1400ea662
inc r8
sub r9, 1
jne 0x1400ea64c
movzx eax, byte [rsi + 5]
lea rdx, [rbp - 1]
movzx ecx, byte [rsi + 1]
lea r8d, [r9 + 4]
mov byte [rsi + 1], al
sub rdx, rsi
movzx eax, byte [rsi + 9]
mov byte [rsi + 5], al
movzx eax, byte [rsi + 0xd]
mov byte [rsi + 9], al
movzx eax, byte [rsi + 0xa]
mov byte [rsi + 0xd], cl
movzx ecx, byte [rsi + 2]
mov byte [rsi + 2], al
movzx eax, byte [rsi + 0xe]
mov byte [rsi + 0xa], cl
movzx ecx, byte [rsi + 6]
mov byte [rsi + 6], al
movzx eax, byte [rsi + 0xf]
mov byte [rsi + 0xe], cl
movzx ecx, byte [rsi + 3]
mov byte [rsi + 3], al
movzx eax, byte [rsi + 0xb]
mov byte [rsi + 0xf], al
movzx eax, byte [rsi + 7]
mov byte [rsi + 0xb], al
mov byte [rsi + 7], cl
nop dword [rax]
nop word [rax + rax]
mov ecx, 4
nop word [rax + rax]
movzx eax, byte [rsi + rdx]
xor byte [rsi], al
inc rsi
sub rcx, 1
jne 0x1400ea70a
sub r8, 1
jne 0x1400ea6fa
add rsp, 0xf8
push rax
push rax
push rax
xchg qword [rsp + 0x18], r15
add rsp, 0x20
push rdx
push rbx
push rbx
push rdx
push rdx
push rbx
xchg qword [rsp + 0x30], r14
pop rbx
pop rdx
pop rdx
pop rbx
pop rbx
pop rdx
add rsp, 8
nop
mov r13, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], r12
add rsp, 8
nop
xchg qword [rsp], rdi
add rsp, 8
push rbx
push rax
push rcx
push rbx
push rax
push rbx
push rdx
push rdx
xchg qword [rsp + 0x40], rsi
add rsp, 0x48
nop
add rsp, 8
xchg qword [rsp - 8], rbx
nop
mov rbp, qword [rsp]
add rsp, 8
ret