Function at 0x14009c799
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
mov rcx, rcx
nop
sub rsp, 8
mov qword [rsp], rbp
push rsi
nop
sub rsp, 8
mov qword [rsp], r12
push r13
nop
sub rsp, 8
mov qword [rsp], r14
lea rbp, [rsp - 0xe0]
sub rsp, 0x1e0
mov dword [rsp - 0x28], edx
mov qword [rcx], 0x35c1b17e
add qword [rcx], 0x589e695
add qword [rcx], 0x35e80699
sub qword [rcx], 0x39ec4d8f
xor qword [rcx], 0x3747511d
xchg r12, rsi
mov r12, r9
xchg r12, rsi
mov qword [rcx + 8], 0x4e489f8e
add qword [rcx + 8], 0x233e3018
sub qword [rcx + 8], 0x527655ab
sub qword [rcx + 8], 0x1f1079fb
xchg r8, r15
mov r13, r15
xchg r8, r15
mov qword [rcx + 0x10], 0x12cd0a62
xor qword [rcx + 0x10], 0xeec7c24
xor qword [rcx + 0x10], 0x40726359
xor qword [rcx + 0x10], 0x16938dce
sub qword [rcx + 0x10], 0x4ac098d1
xchg rdx, rsp
mov r12, rsp
xchg rdx, rsp
mov qword [rcx + 0x18], 0x14374835
xor qword [rcx + 0x18], 0x638beef6
sub qword [rcx + 0x18], 0x3976a285
add qword [rcx + 0x18], 0x125197b5
sub qword [rcx + 0x18], 0x50979bf2
xchg r14, rcx
mov rcx, r14
xchg r14, rcx
mov rax, qword [rdx + 0x78]
xchg rbx, rbx
cmp rax, 0x78
jbe 0x14009c33f
xchg rcx, r9
mov r9, qword [rdx]
xchg r9, rcx
jmp 0x14009c350
xor ecx, ecx
mov dword [rsp - 0x2c], 0x53804721
test rax, rax
cmovne rcx, r12
mov rax, qword [rcx]
lea r8, [rbp - 0x80]
mov dword [rsp - 0x1c], esi
mov r9d, 0x62ede3d6
sub r9d, 0x33e108d9
sub r9d, 0x23e0c1bd
xor r9d, 0xb2c1968
xchg r13, r11
mov rdx, r11
xchg r13, r11
call qword [rax + 8]
test al, al
mov r8, r8
jne 0x14009c3a0
xchg r11, rcx
mov r11, r12
xchg r11, rcx
call fcn.1400958f0
jmp 0x14009cd75
xchg rbx, r11
mov qword [rsp + 0x228], r11
xchg r11, rbx
mov qword [rsp + 0x1d8], rdi
nop
movabs rdi, 0xffffffff73377de9
xor rdi, 0x775a3b79
add rdi, 0x3fe6e02d
sub rdi, 0x1dd8e780
add rdi, 0x7fffffff
xor rdi, 0x5984c0c3
mov rax, rdi
xchg r15, r14
mov qword [rsp + 0x1d0], r14
xchg r15, r14
inc rax
cmp word [rsi + rax*2 + 8], 0
mov rbp, rbp
jne 0x14009c3f5
mov ecx, dword [rbp - 0x74]
lea r15, [rax - 4]
mov rbp, rbp
cmp rax, 4
cmovbe r15, rax
mov eax, 0x188d7945
add eax, 0x53f04303
xor eax, 0xf0729ab
sub eax, 0x637a95cb
mul rcx
xchg r13, r13
cmovo rax, rdi
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.1400b6e40
mov ecx, dword [rbp - 0x74]
mov r14, r14
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
mov rdx, qword [r12 + 0x78]
mov dword [rsp - 0x2c], esi
mov qword [rbp + 0x118], rax
lea r9, [rcx + rcx*2]
shl r9, 2
shl r9, 1
cmp rdx, 0x78
jbe 0x14009c487
mov r14, r14
xchg rcx, r10
mov r10, qword [r12]
xchg rcx, r10
jmp 0x14009c494
xor ecx, ecx
test rdx, rdx
cmovne rcx, r12
mov dword [rsp - 0x20], edi
xchg r9, rax
mov r9, qword [rcx]
xchg r9, rax
lea rdx, [r13 + 0x10]
mov dword [rsp - 0x1c], ebx
mov r8, rbx
call qword [rax + 8]
test al, al
je 0x14009ccb8
mov r12, r12
xor edi, edi
cmp dword [rbp - 0x74], edi
jbe 0x14009ccb8
xchg rbp, rbp
nop dword [rax]
nop word [rax + rax]
xorps xmm0, xmm0
lea rcx, [rdi + rdi*2]
mov rbp, rbp
mov eax, dword [rbx + rcx*8 + 8]
lea rbx, [rbx + rcx*8]
mov r9d, 0x3e5c9719
xor r9d, 0x744f04a9
sub r9d, 0x19a16ce9
sub r9d, 0x3190f66
xor r9d, 0x2d59171f
xchg rbp, rcx
movups xmmword [rcx + 0x50], xmm0
xchg rcx, rbp
xchg rbp, r15
movups xmmword [r15 + 0x60], xmm0
xchg rbp, r15
xchg r9, rbp
movups xmmword [r9 + 0x70], xmm0
xchg rbp, r9
xchg r14, rbp
movups xmmword [r14 + 0x80], xmm0
xchg r14, rbp
xchg rbp, rdi
movups xmmword [rdi + 0x90], xmm0
xchg rdi, rbp
xchg r10, rbp
movups xmmword [r10 + 0xa0], xmm0
xchg rbp, r10
movups xmmword [rbp + 0xb0], xmm0
xchg rbp, rbp
xchg rbp, r8
movups xmmword [r8 + 0xc0], xmm0
xchg r8, rbp
cmp eax, 0x7e
mov rsp, rsp
ja 0x14009c574
mov r9d, eax
mov edx, dword [rbx + 4]
mov dword [rsp - 0xc], 0x35790cc7
xchg rcx, rax
mov rcx, qword [r12 + 0x78]
xchg rcx, rax
add rdx, r13
cmp rax, 0x78
mov dword [rsp - 0x14], 0x7cdd0546
jbe 0x14009c5ac
xchg rcx, r10
mov r10, qword [r12]
xchg r10, rcx
jmp 0x14009c5bd
xor ecx, ecx
test rax, rax
mov dword [rsp - 0x1c], 0x4d8be5d4
cmovne rcx, r12
xchg r12, rax
mov r12, qword [rcx]
xchg r12, rax
lea r8, [rbp + 0x50]
call qword [rax + 8]
mov r10, r10
test al, al
je 0x14009c5f4
mov r8, r15
mov r15, r15
lea rdx, [rsi + 8]
lea rcx, [rbp + 0x50]
call fcn.1400b7e20
test eax, eax
mov r8, r8
je 0x14009c619
xchg r13, rbx
mov r13, qword [rbp + 0x118]
xchg rbx, r13
inc edi
mov dword [rsp - 0x1c], 0x71aa0ed7
cmp edi, dword [rbp - 0x74]
jae 0x14009ccb8
jmp 0x14009c4d0
mov ebx, dword [rbx + 0x14]
mov rax, qword [r12 + 0x78]
add rbx, r13
mov rsp, rsp
mov qword [rsp + 0x20], rbx
cmp rax, 0x78
jbe 0x14009c645
xchg rsi, rcx
mov rsi, qword [r12]
xchg rsi, rcx
jmp 0x14009c652
xor ecx, ecx
mov dword [rsp - 0xc], ebp
test rax, rax
cmovne rcx, r12
mov rax, qword [rcx]
mov r8, r8
lea r8, [rbp - 0x58]
mov r9d, 0x97d194f
xor r9d, 0x6f3253a8
sub r9d, 0x415562df
sub r9d, 0x24f9e7ec
mov rdx, rbx
call qword [rax + 8]
xchg rbp, rbp
test al, al
je 0x14009ccb1
xor esi, esi
mov dword [rbp + 0x110], esi
mov r11, r11
cmp dword [rbp - 0x54], esi
jbe 0x14009ccb1
mov r15d, 0x2b40ec99
sub r15d, 0x5addedb
sub r15d, 0xc783b39
sub r15d, 0xa2b121c
sub r15d, 0xeefbf6a
nop dword [rax]
mov rax, qword [r12 + 0x78]
xchg rbp, rbp
cmp rax, 0x78
jbe 0x14009c6e0
mov rcx, qword [r12]
xchg r8, r8
jmp 0x14009c6ec
xor ecx, ecx
test rax, rax
cmovne rcx, r12
mov r10, r10
xchg rbx, rax
mov rbx, qword [rcx]
xchg rbx, rax
lea r8, [rsp + 0x68]
mov dword [rsp - 0x28], edx
mov edx, esi
mov r9d, 0x48c69762
sub r9d, 0x1a963683
add r9d, 0x6e7594d
sub r9d, 0x3517ba18
nop
sub rdx, 0x703e09a2
add rdx, 0x703e09a4
mov rdi, qword [rax + 8]
mov dword [rsp - 0x18], ecx
lea rdx, [rdx + rsi*4]
lea rdx, [rbx + rdx*4]
call rdi
test al, al
mov dword [rsp - 0x24], edx
je 0x14009cc9c
mov eax, dword [rsp + 0x78]
xorps xmm0, xmm0
mov r9d, 0x713b9d69
sub r9d, 0x16622fe7
xor r9d, 0x2b405d39
xor r9d, 0x719930c5
xchg rdx, rbp
movups xmmword [rdx - 0x30], xmm0
xchg rdx, rbp
xchg rcx, rbp
movups xmmword [rcx - 0x20], xmm0
xchg rbp, rcx
xchg rbp, rdx
movups xmmword [rdx - 0x10], xmm0
xchg rdx, rbp
xchg r12, rbp
movups xmmword [r12], xmm0
xchg rbp, r12
xchg r10, rbp
movups xmmword [r10 + 0x10], xmm0
xchg rbp, r10
xchg rbp, r10
movups xmmword [r10 + 0x20], xmm0
xchg r10, rbp
movups xmmword [rbp + 0x30], xmm0
mov r13, r13
movups xmmword [rbp + 0x40], xmm0
cmp eax, 0x7e
ja 0x14009c7c1
mov r9d, eax
xchg rbp, rbp
mov edx, dword [rsp + 0x74]
mov rax, qword [r12 + 0x78]
add rdx, r13
mov rbx, rbx
cmp rax, 0x78
jbe 0x14009c7eb
mov rcx, qword [r12]
mov dword [rsp - 0x44], 0x53e34ccb
jmp 0x14009c7f8
xor ecx, ecx
test rax, rax
mov dword [rsp - 0x28], ebx
cmovne rcx, r12
mov rax, qword [rcx]
lea r8, [rbp - 0x30]
call qword [rax + 8]
mov rbp, rbp
test al, al
je 0x14009cc9c
xorps xmm0, xmm0
mov rdx, rdx
lea rax, [rsp + 0x30]
xchg r15, rax
mov qword [rsp + 0x28], r15
xchg r15, rax
nop
movabs rdx, 0xffffffff30e0be14
xor rdx, 0x117063fe
xor rdx, 0x7201b239
add rdx, 0x7fffffff
xor rdx, 0x2c6e902d
lea rax, [rbp - 0x30]
mov r14, r14
xchg rsp, r9
movups xmmword [r9 + 0x30], xmm0
xchg rsp, r9
xchg r8, rsp
movups xmmword [r8 + 0x40], xmm0
xchg r8, rsp
xchg rsp, r14
movups xmmword [r14 + 0x50], xmm0
xchg rsp, r14
inc rdx
cmp word [rax + rdx*2], 0
mov dword [rsp - 0x40], edx
jne 0x14009c870
lea rcx, [rsp + 0x28]
xchg rbx, rdx
mov qword [rsp + 0x60], rbx
xchg rdx, rbx
call fcn.140010f10
mov dword [rsp - 0x18], 0x23fae441
xor edi, edi
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
mov ecx, 0x610c47eb
sub ecx, 0x51e80965
add ecx, 0x608d5dc8
sub ecx, 0x6913f77c
add ecx, 0x2a9288b5
cmp qword [rsp + 0x60], rdi
mov rdi, rdi
jbe 0x14009c91c
lea r8, [rbp - 0x30]
sub r8, rax
nop dword [rax]
mov r8, r8
nop dword [rax + rax]
movzx eax, cx
lea rdx, [rdx + 2]
mov r14, r14
and ax, r15w
ror ecx, 3
ror ecx, 2
ror ecx, 3
xor ax, word [r8 + rdx - 2]
inc rdi
mov word [rdx - 2], ax
mov dword [rsp - 0x40], edi
cmp rdi, qword [rsp + 0x60]
jb 0x14009c8e9
mov rax, qword [r14 + 8]
mov dword [rsp - 0x1c], ecx
test rax, rax
je 0x14009cb41
xchg r9, rcx
mov r9, qword [r14 + 0x10]
xchg r9, rcx
cmp rax, rcx
mov rbp, rbp
jb 0x14009cb39
add rcx, qword [r14 + 0x18]
xchg r13, rcx
mov qword [r14 + 0x10], r13
xchg r13, rcx
shl rcx, 2
shl rcx, 3
shl rcx, 1
call fcn.1400b71e0
mov rsi, rsi
mov rcx, qword [r14 + 8]
xor esi, esi
mov r13, rax
test rcx, rcx
xchg r14, r14
je 0x14009ca74
nop
movabs r15, 0xffffffff499b7d71
sub r15, 0xa324a99
xor r15, 0x515f2684
add r15, 0x7fffffff
xor r15, 0x11c9eb93
lea rdi, [rax + 0x38]
sub r15, rax
mov r14, r14
nop dword [rax]
lea rax, [rdi - 0x30]
xorps xmm0, xmm0
lea rcx, [rdi - 0x38]
xchg r8, r8
lea rbx, [r15 + rdi]
add rbx, qword [r14]
xchg rbp, rax
mov qword [rcx], rbp
xchg rbp, rax
xchg rdx, rax
movups xmmword [rdx], xmm0
xchg rdx, rax
xchg rbx, rax
movups xmmword [rbx + 0x10], xmm0
xchg rbx, rax
xchg r15, rax
movups xmmword [r15 + 0x20], xmm0
xchg r15, rax
mov rdx, qword [rbx + 0x38]
mov qword [rdi], rdx
call fcn.140010f10
mov rsi, rsi
xor ecx, ecx
cmp qword [rdi], rcx
jbe 0x14009ca2e
mov dword [rsp - 0x30], edi
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rbx]
xchg r15, r15
movzx edx, word [rdx + rcx*2]
mov word [rax + rcx*2], dx
inc rcx
mov dword [rsp - 0xc], edx
cmp rcx, qword [rdi]
jb 0x14009ca10
mov rcx, qword [r14 + 8]
inc rsi
mov dword [rsp - 0x14], esi
nop
add rdi, 0x7923751a
sub rdi, 0x792374da
cmp rsi, rcx
mov dword [rsp - 0x40], 0x37bcf58b
jb 0x14009c9b1
mov r15d, 0x621dace0
sub r15d, 0x20006671
add r15d, 0x22ad55b9
xor r15d, 0x64ca9cd7
cmp qword [r14], 0
mov dword [rsp - 0xc], 0x3fbc0875
je 0x14009cb25
xor esi, esi
test rcx, rcx
xchg r12, r12
je 0x14009cb15
xor ebx, ebx
nop dword [rax + rax]
mov rax, qword [r14]
mov dword [rsp - 0x30], 0x2359c6b8
xchg r15, rcx
mov r15, qword [rbx + rax]
xchg r15, rcx
lea rdi, [rax + 8]
add rdi, rbx
cmp rcx, rdi
mov dword [rsp - 0x10], ebp
jne 0x14009caed
xor eax, eax
mov ecx, 0x1d830504
add ecx, 0x22b5e52d
add ecx, 0x1f4c4ba7
sub ecx, 0x274ab0ef
sub ecx, 0x383a84b9
rep stosb byte [rdi], al
jmp 0x14009caf2
call fcn.1400b6f90
inc rsi
xchg r8, r8
nop
sub rbx, 0x4bc76fa4
add rbx, 0x4bc76fe4
cmp rsi, qword [r14 + 8]
mov dword [rsp - 0x18], ebx
jb 0x14009ca9e
mov rcx, qword [r14]
call fcn.1400b6f90
mov dword [rsp - 0x44], 0x48306789
mov esi, dword [rbp + 0x110]
xchg r13, r8
mov qword [r14], r8
xchg r8, r13
jmp 0x14009cb89
mov r13, qword [r14]
jmp 0x14009cb89
xchg r13, rsi
mov rsi, qword [r14]
xchg r13, rsi
test r13, r13
jne 0x14009cb89
mov dword [rsp - 0x38], edx
xchg rdi, rcx
mov rdi, qword [r14 + 0x18]
xchg rcx, rdi
xchg rcx, rsi
mov qword [r14 + 0x10], rsi
xchg rcx, rsi
shl rcx, 2
shl rcx, 3
shl rcx, 1
call fcn.1400b71e0
mov dword [rsp - 0x34], 0x648933f4
mov r13, rax
mov qword [r14], rax
mov rax, qword [r14 + 8]
xorps xmm0, xmm0
xchg rcx, rcx
xchg rsi, rax
mov rbx, rsi
xchg rsi, rax
shl rbx, 5
shl rbx, 1
add rbx, r13
inc rax
xchg rsi, rsi
mov rcx, rbx
xchg r11, rax
mov qword [r14 + 8], r11
xchg r11, rax
lea rax, [rbx + 8]
xchg r10, rax
mov qword [rbx], r10
xchg r10, rax
xchg r11, rax
movups xmmword [r11], xmm0
xchg r11, rax
movups xmmword [rax + 0x10], xmm0
mov dword [rsp - 0xc], ebx
xchg r10, rax
movups xmmword [r10 + 0x20], xmm0
xchg r10, rax
mov rax, qword [rsp + 0x60]
mov dword [rsp - 0x38], 0x640c03f5
mov qword [rbx + 0x38], rax
xchg rdx, r13
mov r13, qword [rsp + 0x60]
xchg r13, rdx
call fcn.140010f10
mov dword [rsp - 0x10], edx
xor edi, edi
cmp qword [rbx + 0x38], rdi
jbe 0x14009cc3a
nop
mov dword [rsp - 0xc], 0xd55658d
xchg rcx, r15
mov r15, qword [rsp + 0x28]
xchg r15, rcx
movzx edx, word [rcx + rdi*2]
xchg r11, r11
mov word [rax + rdi*2], dx
inc rdi
cmp rdi, qword [rbx + 0x38]
jb 0x14009cc13
mov dword [rsp - 0x14], ebp
xchg rcx, rdx
mov rdx, qword [rsp + 0x28]
xchg rcx, rdx
lea rax, [rsp + 0x30]
cmp rcx, rax
jne 0x14009cc85
mov dword [rsp - 0xc], edx
lea rdi, [rsp + 0x30]
xor eax, eax
mov ecx, 0x3bb60bcb
xor ecx, 0x35cf9c4e
add ecx, 0x63f876c1
sub ecx, 0x34b6ce3c
sub ecx, 0x3dbb3fda
rep stosb byte [rdi], al
mov r14, r14
jmp 0x14009cc8a
call fcn.1400b6f90
mov r13, qword [rbp + 0x120]
xchg r13, rbx
mov r13, qword [rsp + 0x20]
xchg r13, rbx
inc esi
mov dword [rbp + 0x110], esi
cmp esi, dword [rbp - 0x54]
mov dword [rsp - 0x34], ebx
jb 0x14009c6c2
mov rbx, qword [rbp + 0x118]
mov rcx, rbx
call fcn.1400b6e50
mov rdi, rdi
mov rax, qword [r12 + 0x78]
xchg r15, rsi
mov rsi, qword [rsp + 0x1d0]
xchg rsi, r15
xchg rdi, rcx
mov rcx, qword [rsp + 0x1d8]
xchg rcx, rdi
mov rbx, qword [rsp + 0x228]
mov dword [rsp - 0x18], ebx
cmp rax, 0x78
jbe 0x14009cd26
xchg rcx, rdx
mov rdx, qword [r12]
xchg rcx, rdx
xor edx, edx
mov dword [rsp - 0x2c], ecx
mov rax, qword [rcx]
call qword [rax]
xchg rbp, rcx
mov rbp, qword [r12]
xchg rcx, rbp
call fcn.1400b6f90
mov r8, r8
jmp 0x14009cd48
test rax, rax
je 0x14009cd48
xchg r8, rax
mov r8, qword [r12]
xchg r8, rax
xor edx, edx
mov dword [rsp - 0x18], ebx
xchg r10, r12
mov rcx, r10
xchg r12, r10
call qword [rax]
mov qword [r12 + 0x78], 0x72a17af0
sub qword [r12 + 0x78], 0x113e6198
xor qword [r12 + 0x78], 0x2fb1daf0
add qword [r12 + 0x78], 0x2ca585eb
sub qword [r12 + 0x78], 0x7b784993
xchg r14, rax
mov r14, rax
xchg r14, rax
neg rsp
add rsp, 0xfffffffffffffe20
neg rsp
nop
mov r14, qword [rsp]
add rsp, 8
nop
mov r13, qword [rsp]
add rsp, 8
nop
mov r12, qword [rsp]
add rsp, 8
nop
mov rsi, qword [rsp]
add rsp, 8
nop
mov rbp, qword [rsp]
add rsp, 8
ret