Function at 0x14026a960
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x148
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xc0], 0xfffffffffffffffe
mov rsi, rdx
mov rdi, rcx
lea rcx, [rbp - 0x58]
mov edx, 1
call fcn.1400b1110
mov edx, dword [rdi + 8]
mov eax, dword [0x14062ae80]
mov ecx, eax
xor ecx, 0x31
mov r8d, eax
and r8d, 0x31
lea ecx, [rcx + r8*2]
add cl, 0xb0
mov r8d, edx
shr r8d, cl
lea rbx, [rbp - 0x48]
cmp byte [0x1406952e0], 0
cmove r8d, edx
mov ecx, r8d
not ecx
add eax, 0xde5f1dd9
mov edx, ecx
and edx, eax
or eax, ecx
not eax
or eax, edx
xor r8d, 0xf00
and ecx, 0xfffff0ff
or ecx, r8d
not ecx
or ecx, r8d
mov edx, ecx
not edx
mov r8d, eax
not r8d
mov r9d, r8d
and r9d, ecx
and ecx, eax
xor eax, edx
or r9d, eax
not r9d
and r8d, edx
or ecx, r8d
or ecx, r9d
not ecx
add ecx, 0xffffff00
cmp ecx, 0x7ff
ja 0x14026aa37
shr ecx, 8
lea rax, [0x140538e88]
mov rdx, qword [rax + rcx*8]
jmp 0x14026aa3e
lea rdx, [0x14052f5b8]
mov rcx, rbx
call fcn.1400b1340
mov r14, rax
mov dword [rsp + 0x20], 0xc20e7c04
mov ecx, 1
mov edx, 1
mov r8d, 0x45d192f
mov r9d, 0x9fa8d01c
call fcn.14026dd80
mov rcx, r14
mov rdx, rax
call fcn.1400b1340
mov cl, 1
test cl, cl
je 0x14026aab0
mov r15, qword [0x14062a4a0]
mov ecx, dword [0x1406945a8]
mov edx, dword [0x14062ae80]
mov r8d, ecx
sub r8d, edx
add r8d, 0x534885d6
imul r8d, ecx
and r8d, 1
add edx, 0xde5f0ed9
cmp r8d, edx
je 0x14026aaca
mov rcx, qword [0x14062a4a0]
mov ecx, dword [0x1406945a8]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
jne 0x14026aab0
jmp 0x14026aa7d
movsxd r12, dword [r15]
mov ecx, dword [0x1406945a8]
lea edx, [rcx + 1]
imul edx, ecx
test dl, 1
jne 0x14026ab03
mov r13d, dword [0x140538e84]
mov ecx, 0xde5f0eda
add ecx, dword [0x14062ae80]
lea rdx, [fcn.14026a960]
add edx, edx
add edx, 0x1f80
test edx, ecx
je 0x14026ab2d
lea rcx, [fcn.14026a960]
add ecx, ecx
add ecx, 0x3800
mov edx, ecx
not edx
nop word cs:[rax + rax]
mov r8d, dword [0x140538e84]
test edx, ecx
jne 0x14026ab20
jmp 0x14026aade
mov ecx, dword [rdi + 0x18]
cmp byte [0x1406952e0], 0
mov edx, ecx
bswap edx
cmove edx, ecx
mov rcx, rax
call fcn.1401dfb60
mov r14, rax
mov dword [rsp + 0x20], 0xdc46482e
mov ecx, 1
mov edx, 1
mov r8d, 0xa4cf73b9
mov r9d, 0xad2e9abf
call fcn.14026d8f0
mov rcx, r14
mov rdx, rax
call fcn.1400b1340
mov rcx, rax
add r12, r15
mov r8d, dword [rdi + 0x1c]
mov eax, dword [0x14062a490]
lea edx, [rax - 0x1642e1f3]
mov r9d, edx
xor r9d, 1
and edx, 1
lea r14d, [r9 + rdx*2]
add r14d, 0x1642e1f3
mov dword [0x14062a490], r14d
xor edx, edx
sub edx, dword [0x14062ae80]
mov r9d, edx
xor r9d, 0x21a0f128
and edx, 0x21a0f128
lea r10d, [r9 + rdx*2]
neg r10d
mov r11d, eax
not r11d
lea edx, [r9 + rdx*2]
dec edx
mov r9d, r11d
xor r9d, r10d
mov r15d, eax
and r15d, edx
or r15d, r9d
not r15d
xor edx, eax
and r11d, r10d
or r11d, edx
not r11d
or r11d, r15d
xor eax, r14d
xor r14d, r11d
and r14d, r11d
or r14d, eax
mov eax, dword [0x1406945ac]
not r14d
nop dword [rax]
mov eax, dword [0x1406945ac]
cmp eax, 0xb
jg 0x14026ac10
xor r15d, r15d
test r14d, r14d
jne 0x14026ac2c
test r13d, r13d
jg 0x14026af24
cmp byte [0x1406952e0], 0
mov edx, r8d
bswap edx
cmove edx, r8d
call fcn.1401dfb60
mov ecx, dword [rdi + 8]
movzx eax, byte [0x1406952e0]
test al, al
mov edx, ecx
bswap edx
cmove edx, ecx
mov ecx, dword [0x14062ae80]
mov r8d, ecx
xor r8d, 0xde5f0fd9
and ecx, 0x5e5f0fd9
lea ecx, [r8 + rcx*2]
cmp edx, ecx
je 0x14026ace7
mov ecx, dword [0x1406945b8]
mov edx, ecx
xor edx, 0x85fb171a
and ecx, 0x5fb171a
test al, al
mov eax, dword [rdi + 0x20]
lea ecx, [rdx + rcx*2]
lea eax, [rax + rcx + 0x7a04e8e6]
mov ecx, eax
bswap ecx
cmove ecx, eax
test ecx, ecx
je 0x14026ace7
mov dword [rsp + 0x20], 0xdc46482e
mov ecx, 1
mov edx, 1
mov r8d, 0xa4cf73b9
mov r9d, 0xad2e9abf
call fcn.14026d8f0
mov rcx, rbx
mov rdx, rax
call fcn.1400b1340
mov ecx, dword [rdi + 0x20]
cmp byte [0x1406952e0], 0
mov edx, ecx
bswap edx
cmove edx, ecx
mov rcx, rax
call fcn.1401dfb60
lea rcx, [rbp - 0x40]
lea rdi, [rbp + 0xa0]
mov rdx, rdi
call fcn.1401646b0
xorps xmm0, xmm0
movups xmmword [rsi + 0x18], xmm0
mov rbx, qword [rbp + 0xb0]
mov rax, qword [0x14062ae88]
movabs r12, 0x79b3e0457d2bd041
mov rcx, rax
xor rcx, r12
and rax, r12
lea rax, [rcx + rax*2]
cmp qword [rbp + 0xb8], rax
jbe 0x14026ad36
mov rdi, qword [rbp + 0xa0]
lea r13, [rsi + 8]
cmp rbx, 0xf
ja 0x14026ad53
movups xmm0, xmmword [rdi]
movups xmmword [r13], xmm0
mov r12d, 0xf
jmp 0x14026ae12
mov eax, ebx
add r12, qword [0x14062ae88]
and eax, 0xf
not r12
mov rcx, rbx
and rcx, r12
or r12, rbx
not r12
or r12, rcx
mov rcx, rax
not rcx
xor rax, r12
not r12
and r12, rcx
or r12, rax
not r12
or r12, rax
movabs rax, 0x7fffffffffffffff
cmp r12, rax
cmovae r12, rax
cmp r12, 0xfff
jb 0x14026adce
lea rcx, [r12 + 0x28]
call fcn.1404e9d4c
mov rdx, qword [0x14062ae88]
add rdx, rax
movabs rcx, 0x79b3e0457d2bd059
add rcx, rdx
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x14026addb
lea rcx, [r12 + 1]
call fcn.1404e9d4c
mov rcx, rax
mov qword [r13], rcx
movabs rax, 0x110313be3cbe3ae8
add rax, rbx
movabs rdx, 0x75490bfc4615f4e7
sub rdx, qword [0x14062ae88]
mov r8, rax
xor r8, rdx
and rdx, rax
lea r8, [r8 + rdx*2]
mov rdx, rdi
call fcn.140511c70
mov qword [rsi + 0x18], rbx
mov qword [rsi + 0x20], r12
lea rax, [0x14052ecd8]
mov qword [rsi], rax
mov r11, qword [rbp + 0xb8]
cmp r11, 0x10
jb 0x14026b245
mov rax, qword [rbp + 0xa0]
lea rdx, [r11 + 1]
cmp r14d, 1
mov ecx, 0
sbb ecx, ecx
xor r8d, r8d
sub r8d, dword [0x140538e80]
mov r9d, dword [0x1406945a8]
lea r10d, [r9 - 1]
imul r10d, r9d
test r10b, 1
je 0x14026ae7b
mov ecx, dword [0x140538e80]
mov ecx, dword [0x1406945ac]
cmp ecx, 0x1e
jmp 0x14026ae40
add r15d, r8d
neg r15d
mov r9d, r15d
and r9d, ecx
not ecx
mov r8d, ecx
xor r8d, r15d
and r8d, ecx
or r8d, r9d
lea rcx, [fcn.14026a960]
add ecx, ecx
add ecx, 0x18a0
mov r9d, ecx
not r9d
nop word [rax + rax]
mov r10d, dword [0x1406945a8]
mov edi, dword [0x14062ae80]
mov ebx, r10d
sub ebx, edi
imul ebx, r10d
and ebx, 1
mov r10d, edi
xor r10d, 0xde5f0ed9
and edi, 0x5e5f0ed9
lea r10d, [r10 + rdi*2]
cmp ebx, r10d
jne 0x14026aef7
mov r10d, dword [0x1406945a8]
lea edi, [r10 - 1]
imul edi, r10d
test dil, 1
je 0x14026aefe
test r9d, ecx
jne 0x14026aeb0
jmp 0x14026aee2
and r8d, r15d
mov edi, dword [0x1406945b8]
mov ecx, dword [0x1406945a8]
lea r9d, [rcx - 1]
imul r9d, ecx
test r9b, 1
jne 0x14026b01b
jmp 0x14026aff9
xor r9d, r9d
xor r15d, r15d
jmp 0x14026af4a
sub eax, r9d
add eax, 0xde5f0ed9
mov r9d, 4
sub r9d, eax
cmp r9d, r13d
jge 0x14026ac2c
mov eax, dword [0x1406945a8]
mov eax, dword [0x1406945a8]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
jne 0x14026af50
movsxd rax, r9d
mov edx, dword [0x1406945ac]
cmp edx, 0x27
jg 0x14026afe0
nop
mov edx, dword [0x1406945ac]
cmp edx, 0x3a
jge 0x14026afe0
add rax, r12
xor r15d, dword [rax]
nop word cs:[rax + rax]
mov edx, dword [0x1406945a8]
lea eax, [rdx - 1]
imul eax, edx
mov r10d, dword [0x14062ae80]
lea r11d, [r10 - 0x21a0f125]
xor edx, edx
div r11d
add r10d, 0xde5f0ed9
cmp edx, r10d
jne 0x14026afcc
mov eax, dword [0x14062ae80]
cmp eax, 0x21a0f127
je 0x14026af30
mov eax, dword [0x1406945ac]
cmp eax, 0x4a
jge 0x14026af90
jmp 0x14026afbb
mov edx, dword [0x1406945a8]
lea r10d, [rdx - 1]
imul r10d, edx
test r10b, 1
jne 0x14026afe0
jmp 0x14026af70
lea ecx, [r8 + rdi]
mov dword [0x1406945b8], ecx
mov ecx, dword [0x1406945a8]
lea r9d, [rcx - 1]
imul r9d, ecx
test r9b, 1
je 0x14026b1cb
mov ecx, edi
xor ecx, 0x19256c4a
mov r9d, edi
and r9d, 0x19256c4a
lea ebx, [rcx + r9*2]
mov r14d, 0x19256c4a
sub r14d, ebx
neg ebx
mov r15d, r14d
not r15d
nop word cs:[rax + rax]
mov r12d, dword [0x14062ae80]
lea ecx, [r12 + rbx]
add ecx, 0x19256c4a
lea r9d, [rdi + rcx]
add r9d, 0xde5f0ed9
add ecx, edi
add ecx, r14d
add ecx, 0xde5f0ed9
mov r10d, 0x30862bf4
sub r10d, ecx
mov ecx, r10d
xor ecx, 0xcf79d40c
and r10d, 0x4f79d40c
lea r10d, [rcx + r10*2]
imul r10d, r9d
mov ecx, r10d
not ecx
mov r9d, r15d
and r9d, r10d
mov r13d, r14d
and r13d, ecx
or r13d, r9d
mov r9d, r14d
xor r9d, r10d
and ecx, r15d
or ecx, r9d
not ecx
lea r9d, [r13 + rcx*2]
mov ecx, r9d
sub ecx, r10d
imul ecx, r10d
mov r13d, ecx
sub r13d, r9d
mov r10d, r13d
shl r10d, cl
mov r9d, r13d
mov ecx, r10d
shl r9d, cl
sub r13d, r9d
imul r13d, r9d
mov ecx, r9d
shl r13d, cl
sub r9d, r13d
mov ecx, r12d
xor ecx, 0xde5f0ed9
mov r10d, r12d
and r10d, 0x5e5f0ed9
lea r10d, [rcx + r10*2]
mov ecx, r8d
shl r10d, cl
mov ecx, r10d
sub ecx, r8d
add ecx, r10d
add r9d, ecx
mov r10d, 0x2e794270
sub r10d, r9d
mov r9d, r10d
xor r9d, 0xd186bd90
and r10d, 0x5186bd90
lea r9d, [r9 + r10*2]
imul r9d, ecx
mov r10d, r9d
shl r10d, cl
mov ecx, r10d
neg ecx
mov r13d, r9d
xor r13d, ecx
and ecx, r9d
lea ecx, [r13 + rcx*2]
imul ecx, r10d
sub r9d, ecx
add r9d, 0x9dd22ea4
mov r10d, r9d
xor r10d, 0x622dd15c
and r9d, 0x622dd15c
lea r10d, [r10 + r9*2]
imul r10d, ecx
shl r10d, cl
mov r9d, r10d
shl r9d, cl
mov ecx, r9d
shl r10d, cl
sub r9d, r10d
mov ecx, r12d
sub ecx, r9d
add ecx, 0xde5f0ed9
imul ecx, r9d
sub ecx, r9d
mov dword [0x1406945b8], ecx
mov ecx, dword [0x1406945a8]
lea r9d, [rcx - 1]
imul r9d, ecx
and r9d, 1
add r12d, 0xde5f0ed9
cmp r9d, r12d
jne 0x14026b050
jmp 0x14026aff9
cmp rdx, 0xfff
jbe 0x14026b23d
mov rdx, qword [rax - 8]
add rdx, qword [0x1406945b0]
mov rcx, qword [0x14062ae88]
movabs r8, 0x5a95bbe220f884ef
mov r9, rcx
xor r9, r8
and rcx, r8
add rcx, rcx
mov r8, r9
xor r8, rcx
and rcx, r9
lea r8, [r8 + rcx*2]
movabs rcx, 0x1f1e24635c334b43
add rcx, rdx
add rcx, r8
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x20
jae 0x14026b265
add r11, qword [0x14062ae88]
movabs rdx, 0x79b3e0457d2bd05a
add rdx, r11
mov rax, rcx
mov rcx, rax
call fcn.1400a75d0
lea rcx, [rbp - 0x58]
call fcn.1400b1fb0
mov rax, rsi
add rsp, 0x148
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.1404ca324
int3