Function at 0x140078be0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
lea rbp, [rsp - 0x4f]
sub rsp, 0xb8
mov dword [rsp - 0x28], ecx
cmp qword [rcx + 8], 0
mov r14, rcx
jne 0x140078c0e
xor eax, eax
mov r9, r9
add rsp, 0xb8
pop r14
pop rbp
ret
mov rcx, qword [rcx + 0x18]
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xb0], rsi
mov qword [rsp + 0xa8], rdi
xchg r9, r9
mov qword [rsp + 0xa0], r12
mov qword [rsp + 0x98], r13
mov qword [rsp + 0x90], r15
mov r15, r15
xor r15d, r15d
mov esi, r15d
lea r12, [r15 - 1]
mov dword [rsp - 0x34], esi
test rcx, rcx
je 0x140079454
test edx, edx
mov dword [rsp - 0x28], 0x64a3e4f6
je 0x14007905b
cmp edx, 1
jne 0x140079454
call fcn.14007a050
mov r8, r8
lea r8, [r14 + 0x10]
mov rdx, rax
mov rcx, r14
mov dword [rsp - 0x34], 0x10d81cc0
mov rbx, rax
call fcn.1400764c0
lea rdx, [rbp - 0x29]
mov qword [rbp - 0x29], 0x10844fb9
mov dword [rsp - 0x20], edx
add qword [rbp - 0x29], 0x2f0ad3c9
sub qword [rbp - 0x29], 0x1a5aeb27
add qword [rbp - 0x29], 0x233c408
sub qword [rbp - 0x29], 0x151d8b69
mov rbp, rbp
sub qword [rbp - 0x29], 0x124a70f8
mov rcx, rbx
mov dword [rbp - 0x21], 0x20d8c389
mov dword [rsp - 0x34], esi
add dword [rbp - 0x21], 0x5eaf5c73
sub dword [rbp - 0x21], 0x390d882d
add dword [rbp - 0x21], 0x31a4f12c
mov rdi, rdi
sub dword [rbp - 0x21], 0x49fffb87
sub dword [rbp - 0x21], 0x2e1f8d72
call fcn.140079b90
mov dword [rsp - 0x44], 0x1322d922
mov rcx, rax
call fcn.140072200
lea r8, [rbp - 0x29]
mov dword [rsp - 0x20], edi
mov qword [rbp - 0x29], 0x381b33e8
xor qword [rbp - 0x29], 0x54adda5d
sub qword [rbp - 0x29], 0x454295e6
mov dword [rsp - 0x3c], 0x6e2ad377
add qword [rbp - 0x29], 0x48560aab
xor qword [rbp - 0x29], 0x73b13060
sub qword [rbp - 0x29], 0x1c7b6e18
mov rdx, rbx
mov dword [rsp - 0x40], 0x29f3d5f7
mov dword [rbp - 0x21], 0x7edc3b3a
sub dword [rbp - 0x21], 0x640423b8
sub dword [rbp - 0x21], 0xa55898f
mov dword [rsp - 0x24], 0x220b5b33
add dword [rbp - 0x21], 0x190e34c5
sub dword [rbp - 0x21], 0x2990c2b6
mov rcx, rax
mov dword [rsp - 0x14], ebx
mov rsi, rax
call fcn.14007a340
mov rcx, rbx
mov dword [rsp - 0x20], esi
call fcn.1400799b0
movdqa xmm0, xmmword [0x140002900]
lea ecx, [r15 + 0x5c]
mov rcx, rcx
movdqa xmm1, xmmword [0x140002920]
movdqa xmmword [rbp - 0x19], xmm0
movdqa xmmword [rbp - 9], xmm1
mov dword [rbp + 7], 0x2551e147
mov r15, r15
add dword [rbp + 7], 0x2450d619
add dword [rbp + 7], 0x18ba678c
sub dword [rbp + 7], 0x4f8f5002
add dword [rbp + 7], 0x5f4863b8
mov r11, r11
xor dword [rbp + 7], 0x1d8c5715
sub dword [rbp + 7], 0x4d4726aa
mov dword [rbp + 0xb], 0x64d73d66
mov dword [rsp - 0x10], 0x21c15bab
sub dword [rbp + 0xb], 0x1f8d3212
sub dword [rbp + 0xb], 0x378782f6
add dword [rbp + 0xb], 0x360492cc
mov dword [rsp - 0x14], ecx
sub dword [rbp + 0xb], 0x173be2ae
sub dword [rbp + 0xb], 0x86f0e7c
mov dword [rbp + 0xf], 0x2fffd1d0
mov dword [rsp - 0x2c], edi
xor dword [rbp + 0xf], 0x1fb486f
xor dword [rbp + 0xf], 0x58e40310
sub dword [rbp + 0xf], 0x2bce31f5
xor dword [rbp + 0xf], 0x221e50ab
mov dword [rsp - 0x3c], 0x2fdd185d
mov word [rbp + 0x13], 0x303
sub word [rbp + 0x13], 0xe1
xor word [rbp + 0x13], 0x6fc8
xor word [rbp + 0x13], 0x5e0
mov dword [rsp - 0x28], 0x5b5b0abb
sub word [rbp + 0x13], 0x13a2
mov qword [rbp - 0x21], 0x4262fde0
sub qword [rbp - 0x21], 0x3321285d
xor qword [rbp - 0x21], 0x4232c17
mov rcx, rcx
xor qword [rbp - 0x21], 0x5f07e251
sub qword [rbp - 0x21], 0x50b90efb
add qword [rbp - 0x21], 0x5efed965
xor qword [rbp - 0x21], 0x62aae601
xchg r15, r15
call fcn.140072200
mov rdx, rax
mov qword [rbp - 0x29], rax
mov dword [rsp - 0xc], 0xa204fdb
mov ecx, r15d
nop dword [rax]
nop word [rax + rax]
mov rsi, rsi
movsx eax, byte [rbp + rcx - 0x19]
mov word [rdx + rcx*2], ax
inc rcx
xchg r11, r11
mov rdi, qword [rbp - 0x21]
cmp rcx, rdi
jb 0x140078ef8
xchg r15, r15
lea rbx, [rdi + 1]
mov eax, 0x1dea9aa2
sub eax, 0x8e5f23a
add eax, 0x5f591b71
mov r9, r9
sub eax, 0x5f8570e8
sub eax, 0x14d852ef
mul rbx
cmovo rax, r12
xchg r11, r11
mov rcx, rax
call fcn.140072200
mov r13, qword [rbp - 0x29]
mov rdi, rdi
lea r15, [rbp - 0x29]
mov r12, rax
cmp rdi, 4
pushf
xchg rsp, rsp
movabs rcx, 0xffffffff2457169b
add rcx, 0x48b63078
xor rcx, 0x26a9c48d
xor rcx, 0x73f8048f
mov rcx, rcx
sub rcx, 0x13bfaed5
add rcx, 0x7fffffff
add rcx, 0x5b6327c4
popf
mov dword [rsp - 0x38], edi
pushf
mov eax, 0x23c862e5
add eax, 0x352d30f9
xchg r8, r8
sub eax, 0x2fbb55e4
add eax, 0x54d6a7ed
sub eax, 0x75f208be
mov dword [rsp - 0x24], 0x1e834c0a
add eax, 0x59814d2b
xor eax, 0x61a02a56
popf
mov dword [rsp - 0x18], edi
cmova r15, r13
mul rbx
cmovo rax, rcx
mov rcx, rax
mov dword [rsp - 0x40], 0x6b4bbab
call fcn.140072200
xor r9d, r9d
mov rbx, rax
xchg r9, r9
test rdi, rdi
je 0x140079343
mov r8, rax
sub r15, rax
mov rdx, rdx
movzx ecx, r9b
lea r8, [r8 + 2]
and cl, 3
mov eax, 0x50bec7c1
mov dword [rsp - 0x3c], ecx
xor eax, 0x74f40b0e
sub eax, 0x1f0727b
add eax, 0x52ed75f2
mov r15, r15
sub eax, 0x242671e1
shl cl, 3
inc r9
mov dword [rsp - 0x24], 0x4ed56e00
sar eax, cl
movsx eax, al
xor ax, word [r15 + r8 - 2]
mov word [r8 - 2], ax
mov r9, r9
cmp r9, rdi
jb 0x140079005
jmp 0x140079343
mov rcx, r14
call fcn.1400767f0
movdqa xmm0, xmmword [0x140002900]
mov dword [rsp - 0x34], ebx
mov ecx, 0x2bf7b2aa
add ecx, 0x3a85d8e3
sub ecx, 0x57f9fa50
add ecx, 0x209250c6
mov dword [rsp - 0x3c], esi
sub ecx, 0x9d41aed
add ecx, 0x55645dfb
xor ecx, 0x7aa6256f
xchg rdx, rdx
movdqa xmm1, xmmword [0x140002960]
mov rsi, rax
movdqa xmmword [rbp - 0x19], xmm0
movdqa xmm0, xmmword [0x140002950]
mov dword [rsp - 0x18], edx
movdqa xmmword [rbp + 7], xmm0
movdqa xmmword [rbp - 9], xmm1
mov dword [rbp + 0x17], 0x338563c0
xchg r8, r8
sub dword [rbp + 0x17], 0x2bc0339d
add dword [rbp + 0x17], 0x5548131f
sub dword [rbp + 0x17], 0x4a2c9cfd
xchg rdx, rdx
add dword [rbp + 0x17], 0x105f8fc1
mov dword [rbp + 0x1b], 0x18bb638e
sub dword [rbp + 0x1b], 0xdb9aa52
add dword [rbp + 0x1b], 0x46f0c0f6
mov dword [rsp - 0xc], 0x15ef0441
sub dword [rbp + 0x1b], 0x3cb4d3d1
xor dword [rbp + 0x1b], 0x1eca347f
add dword [rbp + 0x1b], 0x605da8f8
mov dword [rbp + 0x1f], 0x6697938a
xchg rbx, rbx
sub dword [rbp + 0x1f], 0x40b3e4e2
add dword [rbp + 0x1f], 0x2946910b
sub dword [rbp + 0x1f], 0x12ad0ce1
xchg r13, r13
add dword [rbp + 0x1f], 0x3fc9f73e
mov word [rbp + 0x23], 0x913
xor word [rbp + 0x23], 0x30cf
xchg r13, r13
sub word [rbp + 0x23], 0x9cb
xor word [rbp + 0x23], 0x28ba
xor word [rbp + 0x23], 0x1eff
add word [rbp + 0x23], 0x4d09
mov dword [rsp - 0x30], ecx
mov byte [rbp + 0x25], 0x26
add byte [rbp + 0x25], 0x3e
sub byte [rbp + 0x25], 0x63
xor byte [rbp + 0x25], 0x26
xchg r15, r15
add byte [rbp + 0x25], 0x49
xor byte [rbp + 0x25], 0x5b
mov qword [rbp - 0x21], 0x5424a0f1
mov rbp, rbp
xor qword [rbp - 0x21], 0x39c20394
sub qword [rbp - 0x21], 0x394a36fb
xor qword [rbp - 0x21], 0x6088e4f2
xor qword [rbp - 0x21], 0x58ac316a
mov r14, r14
sub qword [rbp - 0x21], 0x7ed86be
xor qword [rbp - 0x21], 0x4cb330b
call fcn.140072200
mov qword [rbp - 0x29], rax
xchg rbx, rbx
mov rdx, r15
nop word [rax + rax]
movsx ecx, byte [rbp + rdx - 0x19]
mov word [rax + rdx*2], cx
mov dword [rsp - 0x38], ecx
inc rdx
mov rdi, qword [rbp - 0x21]
cmp rdx, rdi
xchg rsp, rsp
jb 0x1400791e2
lea rbx, [rdi + 1]
mov eax, 0x10f94f7a
add eax, 0x6ee3b34
mov dword [rsp - 0x20], ecx
add eax, 0x142e4058
xor eax, 0x1961e520
xor eax, 0x3442ca61
sub eax, 0x136e445
mov dword [rsp - 0x24], esi
mul rbx
cmovo rax, r12
mov rcx, rax
mov dword [rsp - 0x20], esp
call fcn.140072200
mov r13, qword [rbp - 0x29]
lea r15, [rbp - 0x29]
mov r12, rax
mov r9, r9
cmp rdi, 4
pushf
movabs rcx, 0xffffffff08ac08a1
mov dword [rsp - 0x10], esp
add rcx, 0x653f2e0a
sub rcx, 0x832b404
xor rcx, 0x533af27f
xchg rdi, rdi
add rcx, 0x7fffffff
add rcx, 0x497d8f28
popf
mov dword [rsp - 0x20], 0x21b2c246
pushf
mov eax, 0x53290d25
add eax, 0x1e077d4
xchg rbp, rbp
xor eax, 0x3b7c0784
sub eax, 0x6b6db9f4
xor eax, 0x307c98b
popf
xchg r13, r13
cmova r15, r13
mul rbx
cmovo rax, rcx
mov r13, r13
mov rcx, rax
call fcn.140072200
xor r9d, r9d
mov rdi, rdi
mov rbx, rax
test rdi, rdi
je 0x140079343
mov dword [rsp - 0x10], ecx
mov r8, rax
sub r15, rax
nop dword [rax]
mov dword [rsp - 0x34], 0x5af0cfff
movzx ecx, r9b
lea r8, [r8 + 2]
and cl, 3
mov r11, r11
mov eax, 0x11d26d95
add eax, 0x30c65a58
xor eax, 0x7aeab2d2
xchg rsi, rsi
sub eax, 0x50ced1c
sub eax, 0x114d1f98
add eax, 0x426e0951
xchg rbx, rbx
xor eax, 0x35a72fb9
shl cl, 3
inc r9
xchg r9, r9
sar eax, cl
movsx eax, al
xor ax, word [r15 + r8 - 2]
mov word [r8 - 2], ax
mov dword [rsp - 0xc], edx
cmp r9, rdi
jb 0x1400792ea
xor r15d, r15d
lea rdx, [rdi + 1]
mov dword [rsp - 0x34], 0x629f5bdc
mov r8, rbx
mov word [rbx + rdi*2], r15w
mov rcx, r12
mov rsp, rsp
call fcn.140072ae0
mov rcx, rbx
call fcn.140072210
mov rax, qword [0x1400a3670]
xchg rsi, rsi
mov r9d, 0x53726396
xor r9d, 0x569dcf58
xor r9d, 0x3ed3f951
xor r9d, 0x68e31a45
mov dword [rsp - 0x2c], ecx
sub r9d, 0x443aae29
xor r9d, 0xafa4a1b1
xor rax, qword [0x1400a2a90]
xchg r9, r9
mov r8d, 0x62da48ce
add r8d, 0x12be1a0e
sub r8d, 0x387a42fb
xor r8d, 0x6106d6f7
mov r11, r11
add r8d, 0xa3e736e9
mov rcx, qword [r14 + 8]
mov rdx, r12
mov dword [rsp - 0xc], ebp
call rax
mov rcx, r12
call fcn.140072210
mov r9, r9
cmp rdi, 4
jbe 0x1400793fd
mov rcx, r13
mov dword [rsp - 0x2c], esp
call fcn.140072210
nop
movabs r12, 0xffffffff6795eec2
add r12, 0x70cac86
mov rdi, rdi
sub r12, 0x9161093
xor r12, 0x3bdf0086
add r12, 0x7fffffff
add r12, 0x21ac75cd
mov dword [rsp - 0x1c], 0x42ead59
test rsi, rsi
je 0x140079454
mov rcx, r12
xchg rcx, rcx
inc rcx
cmp byte [rsi + rcx], 0
jne 0x140079441
mov dword [rsp - 0x14], 0x1f80587d
jmp 0x140079457
mov ecx, r15d
mov rax, qword [0x1400a3680]
mov dword [rsp - 0x38], esi
mov r9, rsi
xor rax, qword [0x1400a2a90]
xor edx, edx
mov qword [rsp + 0x30], r15
mov rdi, rdi
mov r8d, 0x5d7bc787
sub r8d, 0x40a95fce
add r8d, 0x152bf8de
sub r8d, 0x9949b15
mov r15, r15
add r8d, 0xd7963a7d
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], ecx
mov rcx, qword [r14 + 8]
xchg r11, r11
call rax
mov r13, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
xchg r10, r10
mov rbx, qword [rsp + 0xd8]
test eax, eax
je 0x140079605
test rsi, rsi
mov rdx, rdx
je 0x1400794df
mov rcx, rsi
call fcn.140072210
mov rax, qword [0x1400a3690]
mov dword [rsp - 0x20], 0x6120e624
xor edx, edx
xor rax, qword [0x1400a2a90]
mov rcx, qword [r14 + 8]
call rax
mov rdx, rdx
test eax, eax
je 0x1400795da
mov rax, qword [0x1400a36a0]
mov dword [rsp - 0x38], ebp
lea rcx, [rbp + 0x77]
xor rax, qword [0x1400a2a90]
lea r9, [rbp + 0x67]
mov qword [rsp + 0x28], rcx
mov dword [rsp - 0x30], ebx
xor r8d, r8d
lea rcx, [rbp + 0x7f]
mov dword [rbp + 0x67], r15d
mov dword [rsp - 0x20], esp
mov qword [rsp + 0x20], rcx
mov edx, 0x30954301
sub edx, 0x2d883ce5
add edx, 0x3750a35e
xchg r8, r8
add edx, 0x2ee623fa
sub edx, 0x4943cd61
mov rcx, qword [r14 + 8]
xchg rsp, rsp
mov dword [rbp + 0x7f], 0x658526ae
sub dword [rbp + 0x7f], 0x3e8c2f71
xor dword [rbp + 0x7f], 0x14210b32
xchg rbx, rbx
add dword [rbp + 0x7f], 0x334a6fbb
xor dword [rbp + 0x7f], 0x66246bce
mov dword [rbp + 0x77], r15d
xchg rcx, rcx
call rax
test eax, eax
pushf
mov dword [rsp - 0x20], 0x4dff18dc
mov ecx, 0x673e347b
sub ecx, 0x1039be7d
sub ecx, 0x3196df6e
mov dword [rsp - 0xc], ebp
add ecx, 0x3bb083b9
xor ecx, 0x17e9f285
xor ecx, 0x89081731
popf
mov dword [rsp - 0x2c], 0xbd9ed5b
cmovne ecx, dword [rbp + 0x67]
mov eax, ecx
jmp 0x140079618
mov eax, 0x12775aa4
sub eax, 0xccbab4a
xchg r10, r10
add eax, 0x5ff0cfb6
sub eax, 0x4a6f9ae0
add eax, 0x49bc8491
mov r8, r8
xor eax, 0x4ae29529
add eax, 0xd1f40216
jmp 0x140079618
test rsi, rsi
je 0x140079615
mov rcx, rsi
call fcn.140072210
mov rsp, rsp
mov eax, r12d
mov r12, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xb0]
mov dword [rsp - 0x18], 0x3b03ef0d
mov r15, qword [rsp + 0x90]
add rsp, 0xb8
pop r14
mov dword [rsp - 0x2c], 0x61de05ac
pop rbp
ret