Function at 0x14008c843
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
nop
mov qword [rsp - 8], rbp
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], rsi
push r12
push r13
mov dword [rsp - 0x44], 0x47b9ee14
push r8
mov qword [rsp], r14
lea rbp, [rsp - 0xe0]
add rsp, 0xfffffffffffffe20
mov dword [rsp - 0x30], 0x70bfc09
mov qword [rcx], 0x5ec39744
add qword [rcx], 0x360f0d0
xor qword [rcx], 0x51b7eabe
sub qword [rcx], 0x339362aa
mov r14, r9
mov r9, r9
mov qword [rcx + 8], 0x6196b812
xor qword [rcx + 8], 0x602b9cb2
add qword [rcx + 8], 0x5a3804e7
sub qword [rcx + 8], 0x5137c9fb
xor qword [rcx + 8], 0xabd5f8c
xchg r8, r15
mov r13, r15
xchg r15, r8
mov qword [rcx + 0x10], 0x12443a0d
xor qword [rcx + 0x10], 0x48f20890
sub qword [rcx + 0x10], 0x54a09139
sub qword [rcx + 0x10], 0x615a164
xchg rsp, rdx
mov r12, rsp
xchg rsp, rdx
mov qword [rcx + 0x18], 0x1392abcd
xor qword [rcx + 0x18], 0x21cfd7ff
add qword [rcx + 0x18], 0x450c1dd7
xor qword [rcx + 0x18], 0x77699a08
xchg rbp, rcx
mov rsi, rbp
xchg rbp, rcx
mov rax, qword [rdx + 0x78]
mov dword [rsp - 0x40], 0x1f8c5d25
cmp rax, 0x78
jbe 0x14008c8c4
mov rcx, qword [rdx]
jmp 0x14008c8d5
xor ecx, ecx
mov dword [rsp - 0x28], 0x5e14ac4f
test rax, rax
cmovne rcx, r12
xchg rsp, rax
mov rsp, qword [rcx]
xchg rsp, rax
lea r8, [rbp - 0x80]
xchg rbp, rbp
mov r9d, 0x5de90704
add r9d, 0x1f226f90
sub r9d, 0x3132b8dc
sub r9d, 0x4bd8bd90
xchg r13, rdi
mov rdx, rdi
xchg r13, rdi
call qword [rax + 8]
mov dword [rsp - 0x18], 0x4347195b
test al, al
jne 0x14008c930
xchg r12, r10
mov rcx, r10
xchg r12, r10
call fcn.140086130
xchg rbp, rbp
jmp 0x14008d2e5
xchg rcx, rbx
mov qword [rsp + 0x228], rcx
xchg rbx, rcx
xchg rsi, rdi
mov qword [rsp + 0x1d8], rsi
xchg rsi, rdi
nop
movabs rdi, 0xffffffff3a03045b
add rdi, 0x332671f6
sub rdi, 0x2581e6db
add rdi, 0x7fffffff
add rdi, 0x3858708a
xchg r12, rax
mov r12, rdi
xchg r12, rax
mov qword [rsp + 0x1d0], r15
nop word [rax + rax]
inc rax
mov dword [rsp - 0x1c], 0x65e62f08
cmp word [r14 + rax*2 + 8], 0
jne 0x14008c98d
mov ecx, dword [rbp - 0x74]
mov r14, r14
lea r15, [rax - 4]
cmp rax, 4
cmovbe r15, rax
mov eax, 0x7f58baae
sub eax, 0x4a4df3
sub eax, 0x73ccb8a9
add eax, 0x35b19d40
xor eax, 0x40f3514a
mul rcx
cmovo rax, rdi
xchg r15, rcx
mov r15, rax
xchg r15, rcx
call fcn.140098610
mov dword [rsp - 0x14], 0x528ba3eb
mov ecx, dword [rbp - 0x74]
xchg r13, rbx
mov r13, rax
xchg r13, rbx
mov rdx, qword [r12 + 0x78]
xchg rbx, rax
mov qword [rbp + 0x118], rbx
xchg rbx, rax
lea r9, [rcx + rcx*2]
mov dword [rsp - 0x18], 0x58873947
shl r9, 1
shl r9, 2
cmp rdx, 0x78
xchg r9, r9
jbe 0x14008ca32
mov rcx, qword [r12]
jmp 0x14008ca43
xor ecx, ecx
mov dword [rsp - 0x28], 0x4437185b
test rdx, rdx
cmovne rcx, r12
mov rax, qword [rcx]
mov dword [rsp - 0x18], esi
lea rdx, [r13 + 0x10]
mov r8, rbx
call qword [rax + 8]
test al, al
xchg r9, r9
je 0x14008d23a
xor edi, edi
cmp dword [rbp - 0x74], edi
jbe 0x14008d23a
xchg rcx, rcx
nop
xorps xmm0, xmm0
lea rcx, [rdi + rdi*2]
mov dword [rsp - 0x28], edx
mov eax, dword [rbx + rcx*8 + 8]
lea rbx, [rbx + rcx*8]
mov r9d, 0x41e44a2c
add r9d, 0x268438c3
sub r9d, 0x4ce41a4c
add r9d, 0x57b31978
xor r9d, 0x73378265
xchg rbp, r15
movups xmmword [r15 + 0x50], xmm0
xchg r15, rbp
xchg rbp, rdx
movups xmmword [rdx + 0x60], xmm0
xchg rdx, rbp
xchg rbp, r13
movups xmmword [r13 + 0x70], xmm0
xchg r13, rbp
xchg rbp, r10
movups xmmword [r10 + 0x80], xmm0
xchg r10, rbp
movups xmmword [rbp + 0x90], xmm0
mov dword [rsp - 0x10], ebp
xchg r9, rbp
movups xmmword [r9 + 0xa0], xmm0
xchg rbp, r9
xchg r15, rbp
movups xmmword [r15 + 0xb0], xmm0
xchg r15, rbp
xchg rbp, r15
movups xmmword [r15 + 0xc0], xmm0
xchg r15, rbp
cmp eax, 0x7e
ja 0x14008cb16
mov rsi, rsi
mov r9d, eax
mov edx, dword [rbx + 4]
xchg r11, rax
mov r11, qword [r12 + 0x78]
xchg r11, rax
add rdx, r13
mov dword [rsp - 0x2c], esi
cmp rax, 0x78
jbe 0x14008cb42
xchg rcx, rdi
mov rdi, qword [r12]
xchg rdi, rcx
jmp 0x14008cb4e
xor ecx, ecx
test rax, rax
cmovne rcx, r12
mov rdi, rdi
mov rax, qword [rcx]
lea r8, [rbp + 0x50]
call qword [rax + 8]
xchg r15, r15
test al, al
je 0x14008cb8c
xchg r9, r8
mov r9, r15
xchg r9, r8
lea rdx, [r14 + 8]
lea rcx, [rbp + 0x50]
mov rsp, rsp
call fcn.140099530
test eax, eax
je 0x14008cba6
mov dword [rsp - 0x10], 0x3d918913
mov rbx, qword [rbp + 0x118]
inc edi
cmp edi, dword [rbp - 0x74]
jae 0x14008d23a
mov rdx, rdx
jmp 0x14008ca6f
mov ebx, dword [rbx + 0x14]
mov rax, qword [r12 + 0x78]
mov rbp, rbp
add rbx, r13
xchg rbx, rdi
mov qword [rsp + 0x20], rdi
xchg rdi, rbx
cmp rax, 0x78
xchg rdi, rdi
jbe 0x14008cbdb
xchg rcx, rdx
mov rdx, qword [r12]
xchg rcx, rdx
jmp 0x14008cbe7
xor ecx, ecx
xchg rdx, rdx
test rax, rax
cmovne rcx, r12
mov rax, qword [rcx]
mov dword [rsp - 0x3c], 0x6195713a
lea r8, [rbp - 0x58]
mov r9d, 0x5fac60d0
xor r9d, 0x8bc0b11
sub r9d, 0x2666b0fb
sub r9d, 0x30a9baaa
xchg rsp, rdx
mov rsp, rbx
xchg rdx, rsp
call qword [rax + 8]
test al, al
je 0x14008d233
mov dword [rsp - 0x30], 0x627a9953
xor r14d, r14d
mov dword [rbp + 0x110], r14d
cmp dword [rbp - 0x54], r14d
xchg rbx, rbx
jbe 0x14008d233
mov r15d, 0x147217b8
xor r15d, 0x12397628
add r15d, 0x1dc18cc2
sub r15d, 0x240ced53
nop
mov rax, qword [r12 + 0x78]
mov dword [rsp - 0x44], 0x1142b383
cmp rax, 0x78
jbe 0x14008cc83
mov rcx, qword [r12]
xchg r13, r13
jmp 0x14008cc8f
xor ecx, ecx
test rax, rax
cmovne rcx, r12
mov rsi, rsi
xchg r11, rax
mov r11, qword [rcx]
xchg r11, rax
lea r8, [rsp + 0x68]
mov dword [rsp - 0x30], esi
mov edx, r14d
mov r9d, 0xf6e98e6
xor r9d, 0x212ef3b1
xor r9d, 0x60d962b4
sub r9d, 0x4e9909cf
sub rdx, 0xfffffffffffffffe
xchg r14, rdi
mov r14, qword [rax + 8]
xchg rdi, r14
lea rdx, [rdx + r14*4]
lea rdx, [rbx + rdx*4]
xchg rbp, rbp
call rdi
test al, al
je 0x14008d21c
mov eax, dword [rsp + 0x78]
xchg rdi, rdi
xorps xmm0, xmm0
mov r9d, 0x699414ab
xor r9d, 0x50333198
sub r9d, 0x28f1796b
sub r9d, 0x10b5ab4a
movups xmmword [rbp - 0x30], xmm0
xchg rbp, rcx
movups xmmword [rcx - 0x20], xmm0
xchg rcx, rbp
xchg rbp, r11
movups xmmword [r11 - 0x10], xmm0
xchg r11, rbp
xchg rbp, rbx
movups xmmword [rbx], xmm0
xchg rbp, rbx
xchg rbp, r13
movups xmmword [r13 + 0x10], xmm0
xchg rbp, r13
movups xmmword [rbp + 0x20], xmm0
xchg rbp, rcx
movups xmmword [rcx + 0x30], xmm0
xchg rbp, rcx
movups xmmword [rbp + 0x40], xmm0
xchg r10, r10
cmp eax, 0x7e
ja 0x14008cd56
mov r9d, eax
xchg r15, r15
mov edx, dword [rsp + 0x74]
mov rax, qword [r12 + 0x78]
add rdx, r13
cmp rax, 0x78
mov dword [rsp - 0x20], 0x49335f96
jbe 0x14008cd7d
mov rcx, qword [r12]
jmp 0x14008cd8e
xor ecx, ecx
test rax, rax
cmovne rcx, r12
mov dword [rsp - 0x2c], 0x7dcb55d7
xchg r8, rax
mov r8, qword [rcx]
xchg r8, rax
lea r8, [rbp - 0x30]
mov r12, r12
call qword [rax + 8]
test al, al
je 0x14008d21c
xorps xmm0, xmm0
mov r9, r9
lea rax, [rsp + 0x30]
xchg rbx, rax
mov qword [rsp + 0x28], rbx
xchg rbx, rax
nop
movabs rdx, 0xffffffff7e1c062c
sub rdx, 0x52fa352c
add rdx, 0x4bac70c0
add rdx, 0x7fffffff
xor rdx, 0x931be40
lea rax, [rbp - 0x30]
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x40], xmm0
mov dword [rsp - 0x38], 0x4f2499e3
xchg rsp, r10
movups xmmword [r10 + 0x50], xmm0
xchg rsp, r10
inc rdx
cmp word [rax + rdx*2], 0
mov dword [rsp - 0x1c], edx
jne 0x14008ce03
lea rcx, [rsp + 0x28]
mov qword [rsp + 0x60], rdx
mov r10, r10
call fcn.140017984
xor edi, edi
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
mov ecx, 0x78c9d02d
sub ecx, 0x2bebe8aa
add ecx, 0x183b9367
xor ecx, 0x2a78241a
cmp qword [rsp + 0x60], rdi
mov dword [rsp - 0x10], esp
jbe 0x14008ce99
lea r8, [rbp - 0x30]
sub r8, rax
nop word [rax + rax]
mov dword [rsp - 0xc], esp
movzx eax, cx
lea rdx, [rdx + 2]
and ax, r15w
ror ecx, 6
ror ecx, 1
ror ecx, 1
xor ax, word [r8 + rdx - 2]
inc rdi
mov word [rdx - 2], ax
mov r15, r15
cmp rdi, qword [rsp + 0x60]
jb 0x14008ce6c
xchg r8, rax
mov r8, qword [rsi + 8]
xchg r8, rax
test rax, rax
je 0x14008d0c6
mov dword [rsp - 0x38], ebp
xchg rcx, r11
mov r11, qword [rsi + 0x10]
xchg rcx, r11
cmp rax, rcx
mov dword [rsp - 0x14], edx
jb 0x14008d0b8
add rcx, qword [rsi + 0x18]
mov qword [rsi + 0x10], rcx
shl rcx, 2
shl rcx, 3
shl rcx, 1
call fcn.1400989f0
mov r11, r11
xchg rcx, rsp
mov rsp, qword [rsi + 8]
xchg rcx, rsp
xor r14d, r14d
mov dword [rsp - 0x24], ebp
mov r13, rax
test rcx, rcx
je 0x14008d013
nop
movabs r15, 0xffffffff22fe97ca
add r15, 0x38c0b1de
sub r15, 0x17252386
add r15, 0x7fffffff
xor r15, 0x3b65d9e9
lea rdi, [rax + 0x38]
sub r15, rax
mov dword [rsp - 0x18], ebp
nop word [rax + rax]
lea rax, [rdi - 0x30]
xorps xmm0, xmm0
xchg rsp, rsp
lea rcx, [rdi - 0x38]
lea rbx, [r15 + rdi]
add rbx, qword [rsi]
mov rdi, rdi
xchg rsi, rax
mov qword [rcx], rsi
xchg rsi, rax
xchg r8, rax
movups xmmword [r8], xmm0
xchg r8, rax
xchg rdx, rax
movups xmmword [rdx + 0x10], xmm0
xchg rdx, rax
xchg rsi, rax
movups xmmword [rsi + 0x20], xmm0
xchg rsi, rax
mov rdx, qword [rbx + 0x38]
mov dword [rsp - 0x38], esp
mov qword [rdi], rdx
call fcn.140017984
xor ecx, ecx
cmp qword [rdi], rcx
mov dword [rsp - 0x34], 0x775a3af7
jbe 0x14008cfc5
nop dword [rax]
nop word [rax + rax]
xchg rdx, r10
mov r10, qword [rbx]
xchg r10, rdx
movzx edx, word [rdx + rcx*2]
mov dword [rsp - 0x30], ecx
mov word [rax + rcx*2], dx
inc rcx
cmp rcx, qword [rdi]
jb 0x14008cf9c
mov dword [rsp - 0x1c], 0x6eb0449f
xchg r14, rcx
mov r14, qword [rsi + 8]
xchg r14, rcx
inc r14
mov dword [rsp - 0xc], edi
nop
add rdi, 0x123114ea
sub rdi, 0x123114aa
cmp r14, rcx
xchg r12, r12
jb 0x14008cf35
mov r15d, 0x4ddd87eb
add r15d, 0x29cdbd5f
xor r15d, 0x7634dd35
xor r15d, 0x254888f0
sub r15d, 0x24d70f90
cmp qword [rsi], 0
je 0x14008d0a6
xchg r14, r14
xor ebx, ebx
test rcx, rcx
je 0x14008d09e
mov r8, r8
xor r14d, r14d
nop dword [rax]
mov rax, qword [rsi]
mov rcx, qword [r14 + rax]
mov dword [rsp - 0x2c], ebp
lea rdi, [rax + 8]
add rdi, r14
cmp rcx, rdi
mov r15, r15
jne 0x14008d076
xor eax, eax
mov ecx, 0x1d9d34af
add ecx, 0x3998c491
sub ecx, 0x6e59fdf
sub ecx, 0x50505931
rep stosb byte [rdi], al
jmp 0x14008d07f
call fcn.140098770
mov dword [rsp - 0xc], ebp
inc rbx
nop
add r14, 0x28e59496
sub r14, 0x28e59456
cmp rbx, qword [rsi + 8]
mov r10, r10
jb 0x14008d038
mov rcx, qword [rsi]
call fcn.140098770
mov r14d, dword [rbp + 0x110]
mov rdi, rdi
mov qword [rsi], r13
jmp 0x14008d104
xchg r11, r13
mov r11, qword [rsi]
xchg r11, r13
jmp 0x14008d104
mov r13, qword [rsi]
test r13, r13
jne 0x14008d104
xchg rsp, rsp
mov rcx, qword [rsi + 0x18]
xchg rcx, r12
mov qword [rsi + 0x10], r12
xchg rcx, r12
shl rcx, 4
shl rcx, 1
shl rcx, 1
call fcn.1400989f0
mov dword [rsp - 0x30], edx
xchg r14, rax
mov r13, r14
xchg r14, rax
xchg rbp, rax
mov qword [rsi], rbp
xchg rbp, rax
xchg r9, rax
mov r9, qword [rsi + 8]
xchg r9, rax
xorps xmm0, xmm0
mov dword [rsp - 0x40], esp
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
shl rbx, 3
shl rbx, 2
shl rbx, 1
add rbx, r13
mov dword [rsp - 0x3c], edx
inc rax
xchg r15, rbx
mov rcx, r15
xchg rbx, r15
mov qword [rsi + 8], rax
mov r8, r8
lea rax, [rbx + 8]
xchg rsp, rax
mov qword [rbx], rsp
xchg rsp, rax
xchg rbp, rax
movups xmmword [rbp], xmm0
xchg rbp, rax
movups xmmword [rax + 0x10], xmm0
xchg rsp, rsp
xchg r13, rax
movups xmmword [r13 + 0x20], xmm0
xchg r13, rax
mov rax, qword [rsp + 0x60]
mov qword [rbx + 0x38], rax
xchg rsi, rdx
mov rsi, qword [rsp + 0x60]
xchg rsi, rdx
call fcn.140017984
xor edi, edi
cmp qword [rbx + 0x38], rdi
mov dword [rsp - 0x3c], ecx
jbe 0x14008d1b7
xchg rcx, r10
mov r10, qword [rsp + 0x28]
xchg r10, rcx
movzx edx, word [rcx + rdi*2]
mov dword [rsp - 0x28], 0x2fc473d6
mov word [rax + rdi*2], dx
inc rdi
cmp rdi, qword [rbx + 0x38]
jb 0x14008d18b
mov dword [rsp - 0x34], esp
mov rcx, qword [rsp + 0x28]
lea rax, [rsp + 0x30]
cmp rcx, rax
mov dword [rsp - 0x28], 0x6bc5445b
jne 0x14008d205
lea rdi, [rsp + 0x30]
xor eax, eax
mov ecx, 0x2c548f7e
add ecx, 0x4f5d8311
sub ecx, 0x132f08dc
sub ecx, 0x3ef8140d
sub ecx, 0x298af576
rep stosb byte [rdi], al
mov dword [rsp - 0x30], 0x40f819de
jmp 0x14008d20a
call fcn.140098770
xchg r13, rsp
mov rsp, qword [rbp + 0x120]
xchg r13, rsp
mov rbx, qword [rsp + 0x20]
inc r14d
mov dword [rbp + 0x110], r14d
xchg rsp, rsp
cmp r14d, dword [rbp - 0x54]
jb 0x14008cc60
mov rbx, qword [rbp + 0x118]
xchg rbx, rcx
mov rbx, rcx
xchg rbx, rcx
call fcn.140098620
mov dword [rsp - 0x10], 0x45231f22
mov rax, qword [r12 + 0x78]
mov r15, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1d8]
mov dword [rsp - 0x30], edx
mov rbx, qword [rsp + 0x228]
cmp rax, 0x78
jbe 0x14008d29b
mov dword [rsp - 0x34], ebp
mov rcx, qword [r12]
xor edx, edx
mov rax, qword [rcx]
xchg rdi, rdi
call qword [rax]
mov rcx, qword [r12]
call fcn.140098770
jmp 0x14008d2b8
test rax, rax
je 0x14008d2b8
mov rax, qword [r12]
xchg r11, r11
xor edx, edx
xchg rcx, r12
mov r12, rcx
xchg r12, rcx
call qword [rax]
mov qword [r12 + 0x78], 0x12fe0af9
add qword [r12 + 0x78], 0x62bf215c
xor qword [r12 + 0x78], 0x730261d5
add qword [r12 + 0x78], 0x6a0a84a5
xor qword [r12 + 0x78], 0x70c9d225
xchg rsi, rax
mov rsi, rax
xchg rsi, rax
sub rsp, 0x30b36c51
add rsp, 0x30b36e31
pop r14
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
mov r12, qword [rsp]
add rsp, 8
nop
mov rsi, qword [rsp]
add rsp, 8
pop rbp
mov dword [rsp - 0x24], 0xc55a63
ret