Function at 0x14025ddc0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x68
lea rbp, [rsp + 0x60]
mov qword [rbp], 0xfffffffffffffffe
mov rsi, rcx
lea rdi, [rcx + 0x40]
xorps xmm0, xmm0
movaps xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], 0
mov rcx, rdi
call fcn.140176610
mov qword [rbp - 8], rdi
mov r14, qword [rsi]
mov r15, qword [r14]
cmp r15, r14
je 0x14025dedf
lea rdi, [rbp - 0x28]
lea rbx, [rbp - 0x20]
jmp 0x14025de2c
mov rax, r15
nop dword [rax + rax]
mov r15, rax
cmp rax, r14
je 0x14025dedf
movups xmm0, xmmword [r15 + 0x20]
movaps xmmword [rbp - 0x30], xmm0
mov rcx, qword [rbp - 0x28]
call fcn.1402608d0
test al, al
jne 0x14025de70
mov rdx, qword [rbp - 0x18]
cmp rdx, qword [rbp - 0x10]
je 0x14025de5a
mov rax, qword [rbp - 0x28]
mov qword [rdx], rax
add qword [rbp - 0x18], 8
jmp 0x14025de70
mov rcx, rbx
mov r8, rdi
call fcn.14025eb00
nop word cs:[rax + rax]
mov rcx, qword [r15 + 0x10]
movzx eax, byte [0x140628738]
add al, 0xa
cmp byte [rcx + 0x19], al
jne 0x14025dea0
nop word cs:[rax + rax]
mov rax, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x14025de90
jmp 0x14025de20
mov rax, qword [r15 + 8]
movzx ecx, byte [0x140628738]
mov edx, ecx
xor dl, 0xa
and cl, 0xa
add cl, cl
add cl, dl
cmp byte [rax + 0x19], cl
jne 0x14025de20
mov rcx, r15
mov r15, rax
cmp rcx, qword [rax + 0x10]
jne 0x14025de18
mov rax, qword [r15 + 8]
cmp byte [rax + 0x19], 0
je 0x14025dec0
jmp 0x14025de20
mov r14, qword [0x140628220]
mov ebx, dword [r14]
add ebx, dword [0x140694008]
mov edi, dword [0x140537df4]
mov rcx, qword [rbp - 8]
call fcn.140176700
movsxd rbx, ebx
add rbx, r14
mov r14, qword [rbp - 0x20]
mov r15, qword [rbp - 0x18]
cmp r14, r15
je 0x14025df49
nop word cs:[rax + rax]
mov rcx, qword [rsi + 0xa8]
test rcx, rcx
je 0x14025dfe9
mov rdx, qword [r14]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x1405fc400]
add r14, 8
cmp r14, r15
jne 0x14025df20
mov rax, qword [rbp - 0x20]
mov qword [rbp - 8], rax
mov edx, dword [0x140628218]
lea ecx, [rdx + 1]
mov dword [0x140628218], ecx
mov r8d, edx
not r8d
not ecx
mov r9d, r8d
xor r9d, ecx
and r9d, r8d
and edx, ecx
and ecx, r8d
or ecx, edx
or ecx, r9d
not ecx
mov edx, 0xfb3068ec
nop word cs:[rax + rax]
mov r8d, dword [0x140628728]
add r8d, edx
mov r9d, r8d
xor r9d, 0x44297446
and r9d, r8d
xor r8d, 0xbbd68bb9
add r9d, r9d
add r9d, r8d
jne 0x14025df90
xor edx, edx
mov r8d, 0
test ecx, ecx
jne 0x14025e107
mov edx, 0xb706f4a6
add edx, dword [0x140628728]
lea r8, [fcn.14025ddc0]
add r8d, r8d
add r8d, 0x3b60
test r8d, edx
jne 0x14025e000
jmp 0x14025dfee
call fcn.1404eb994
mov edx, dword [0x1406944f0]
cmp edx, 0x24
jl 0x14025e00d
nop dword [rax]
mov eax, dword [0x1406944f0]
cmp eax, 0x36
jge 0x14025e000
jmp 0x14025dfee
xor r9d, r9d
mov edx, 0
mov r8d, 0
test edi, edi
jle 0x14025e107
xor r11d, r11d
xor r14d, r14d
nop dword [rax]
movsxd r9, r9d
mov r15, qword [rbx + r9]
mov r12, qword [rbx + r9 + 8]
mov rsi, r15
not rsi
mov r10, r12
not r10
mov r8, r12
xor r8, r14
mov rdx, r15
xor rdx, r11
and rdx, r15
and r8, r12
mov r13, r11
not r13
mov rax, r14
not rax
and r12, rax
and r15, r13
and r10, r14
and rsi, r11
or rsi, r15
or r10, r12
not r10
not rsi
and r11, rsi
and r14, r10
or r14, r12
or r11, r15
and r10, rax
or r10, r14
and rsi, r13
or rsi, r11
mov rax, r10
xor rax, r8
mov r11, rsi
xor r11, rdx
not r8
not rdx
mov r14, r11
not r14
mov r15, rax
not r15
and rdx, rsi
or rdx, r14
and r8, r10
or r8, r15
mov r10, r11
xor r10, rdx
mov rsi, rax
xor rsi, r8
or r8, rax
or rdx, r11
not rdx
or rdx, r10
not r8
or r8, rsi
mov eax, r9d
xor eax, 0x10
not r9d
and r9d, 0x7fffffef
or r9d, eax
not r9d
lea r9d, [rax + r9*2]
mov r11, rdx
mov r14, r8
cmp r9d, edi
jl 0x14025e030
mov eax, dword [0x140628728]
lea r9d, [rax - 0x48f90b5a]
lea r10, [fcn.14025ddc0]
add r10d, r10d
add r10d, 0x2080
mov r11d, r10d
xor r11d, r9d
or r10d, r9d
not r10d
or r10d, r11d
not r10d
add eax, 0xb706f4a5
cmp r10d, eax
je 0x14025e166
nop word cs:[rax + rax]
mov eax, dword [0x1406944ec]
mov r9d, eax
not r9d
imul r9d, eax
test r9b, 1
jne 0x14025e150
mov r12, qword [rbp - 8]
test r12, r12
je 0x14025e50e
mov r9, qword [0x140537e98]
mov rsi, qword [0x140537e90]
mov r10d, dword [0x1406944ec]
nop dword [rax + rax]
xor r10d, r10d
test ecx, ecx
setne r10b
add r10, 0xffffffffffffffff
mov r11d, 0
adc r11, 0xffffffffffffffff
mov eax, dword [0x1406944ec]
mov edi, dword [0x140628728]
lea ebx, [rdi + rax]
add ebx, 0xb706f4a6
imul ebx, eax
and ebx, 1
add edi, 0xb706f4a5
cmp ebx, edi
jne 0x14025e190
lea rax, [fcn.14025ddc0]
lea ecx, [rax + rax]
add ecx, 0x2c20
not ecx
nop
mov rdi, rdx
neg rdi
mov ebx, 0
sbb rbx, r8
mov eax, dword [0x140628728]
mov r14d, eax
xor r14d, 0x48f90b59
and r14d, eax
xor eax, 0xb706f4a6
lea eax, [rax + r14*2]
mov r14d, ecx
and r14d, eax
not eax
mov r15d, eax
xor r15d, ecx
and r15d, eax
or r15d, r14d
and eax, ecx
mov r14d, r15d
and r14d, eax
xor eax, r15d
xor eax, r14d
cmp eax, 0xffffffff
jne 0x14025e1e0
add rsi, rdi
adc r9, rbx
movabs rcx, 0xf2fc4636c93690e4
sub rcx, rsi
mov rdx, 0xffffffffffffffff
sbb rdx, r9
movabs rax, 0xd03b9c936c96f1c
mov r8, rcx
xor r8, rax
and rcx, rax
add rcx, rcx
add rcx, r8
adc rdx, 0
xor r8d, r8d
mov r9, rcx
neg r9
sbb r8, rdx
add rcx, 0xffffffffffffffff
adc rdx, 0xffffffffffffffff
mov rax, r10
not rax
mov rsi, r11
not rsi
and rdx, rsi
and rcx, rax
and r8, r11
or r8, rdx
and r9, r10
or r9, rcx
xor r8, rsi
xor r9, rax
and r8, r11
and r9, r10
mov rax, r9
not rax
mov rcx, rax
xor rcx, r8
and rcx, rax
mov r10, r9
and r10, r8
or r10, rcx
mov eax, 0xb706f4a6
add eax, dword [0x140628728]
and r10, r9
lea rcx, [fcn.14025ddc0]
add ecx, ecx
add ecx, 0x18e0
test ecx, eax
jne 0x14025e349
mov rax, r8
not rax
mov rcx, r8
xor rcx, rax
and rcx, r9
mov rdx, r9
and rdx, rax
xor rdx, rax
xor rdx, rcx
not rdx
mov rax, r9
xor rax, r8
and rax, r9
or rax, rdx
mov rcx, rax
not rcx
mov rdx, r10
not rdx
mov r11, rdx
xor r11, rcx
and r11, rdx
or r11, rcx
not r11
and rdx, rax
and rcx, r10
or rcx, rdx
or rcx, r11
add qword [0x140694268], rcx
mov eax, dword [0x1406944f0]
cmp eax, 0x63
jl 0x14025e42e
mov r11, r9
sub r11, r8
imul r11, r8
mov rsi, r11
neg rsi
nop dword [rax]
lea ecx, [rsi + r8]
neg ecx
imul ecx, r8d
mov rax, r11
shl rax, cl
mov rcx, r11
sub rcx, rax
imul rcx, rax
mov rax, rsi
xor rax, rcx
mov rdx, rsi
and rdx, rcx
lea rdi, [rax + rdx*2]
neg rdi
imul rdi, rcx
mov rax, rdi
shl rax, cl
sub rdi, rax
imul rdi, rax
mov rcx, rax
neg rcx
xor rcx, rdi
mov rdx, rdi
not rdx
dec rax
and rax, rdx
or rax, rcx
not rax
lea rcx, [rcx + rax*2]
neg rcx
shl rdi, cl
mov edx, ecx
xor edx, ecx
xor edx, edi
and edx, edi
xor edx, ecx
or edx, r10d
mov rax, qword [0x140694268]
mov rdi, rax
mov ecx, edx
shl rdi, cl
mov rcx, rax
sub rcx, rdi
imul rcx, rdi
sub rax, rcx
imul rax, rcx
neg rax
mov rdx, rax
xor rdx, rcx
and rax, rcx
lea rax, [rdx + rax*2]
shl rax, cl
sub rax, rcx
imul rax, rcx
mov rdx, rcx
sub rdx, rax
add rdx, rcx
mov qword [0x140694268], rdx
mov eax, dword [0x1406944f0]
cmp eax, 0xc
jge 0x14025e360
jmp 0x14025e2e2
mov rdx, qword [rbp - 0x10]
add rdx, qword [0x140694268]
sub rdx, r12
cmp rdx, 0xfff
jbe 0x14025e4f2
mov rcx, qword [r12 - 8]
mov r8, r12
neg r8
dec r12
mov r9d, r12d
and r9d, 8
mov r10, r8
and r10, 0xfffffffffffffff7
or r10, r9
xor r8, 8
movabs r9, 0x7ffffffffffffff7
and r9, r12
or r9, r8
not r9
lea rax, [r10 + r9*2]
movabs r8, 0x91326dd944a7ba83
sub r8, rax
movabs rax, 0x6ecd9226bb58457d
mov r9, r8
xor r9, rax
and r8, rax
lea rax, [r9 + r8*2]
sub rax, qword [0x140628730]
movabs r8, 0x54ed85b78d37abe7
add r8, rax
mov rax, rcx
neg rax
mov r9, r8
xor r9, rax
and rax, r8
lea rax, [r9 + rax*2]
movabs r8, 0x7a15b6f7b4615f39
mov r9, rax
xor r9, r8
and rax, r8
lea rax, [r9 + rax*2]
cmp rax, 0x20
jae 0x14025e520
add rdx, 0x27
mov r12, rcx
mov dword [rsp + 0x20], 0x4c6a26ba
mov rcx, r12
mov r8d, 0x416ba2c1
mov r9d, 0xedfa3b2b
call fcn.1400a75d0
nop
add rsp, 0x68
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.1404ca324
int3