Function at 0x1402596a0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x1402596ec
mov eax, dword [0x1405286fc]
mov ecx, eax
xor ecx, 0x6f36147f
and eax, 0x6f36147f
lea eax, [rcx + rax*2]
cmp edx, eax
jne 0x14025975e
movzx eax, byte [0x140527879]
cmp al, 0x87
je 0x1402596e4
mov cl, 0xf9
nop
mov al, 0x33
lock cmpxchg byte [0x140527879], cl
je 0x1402597c9
cmp al, 0x87
jne 0x1402596d0
lea rax, [0x140527870]
ret
mov eax, dword [0x140565354]
cmp eax, 0x32
nop word cs:[rax + rax]
xor eax, eax
test al, al
jne 0x140259700
test edx, edx
je 0x14025979c
mov eax, 0x6f3614bb
nop word cs:[rax + rax]
mov ecx, dword [0x140565350]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
jne 0x140259743
movzx ecx, byte [0x140527985]
mov edx, dword [0x140565354]
cmp edx, 0xd
jle 0x14025976d
movzx ecx, byte [0x140527985]
mov ecx, dword [0x140565354]
mov edx, dword [0x1405286fc]
add edx, eax
cmp ecx, edx
jge 0x140259720
jmp 0x140259731
xor eax, eax
test al, al
je 0x1402599b6
jmp 0x1402599c9
cmp cl, 0xde
je 0x140259794
mov cl, 0x3d
nop word cs:[rax + rax]
mov al, 0xe2
lock cmpxchg byte [0x140527985], cl
je 0x140259846
cmp al, 0xde
jne 0x140259780
lea rax, [0x140527970]
ret
movzx eax, byte [0x1405279dc]
cmp al, 0x24
je 0x140259939
mov cl, 0x7b
nop dword [rax]
mov al, 0x6c
lock cmpxchg byte [0x1405279dc], cl
je 0x140259887
cmp al, 0x24
jne 0x1402597b0
jmp 0x140259939
xor edx, edx
lea rax, [0x140527870]
lea rcx, [0x140434740]
nop dword [rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
mov r9d, r8d
xor r9b, r8b
not r9b
and r9b, byte [rdx + rax]
xor r9b, r8b
mov byte [rdx + rax], r9b
mov r8d, dword [0x1405286fc]
add edx, r8d
add edx, 0x6f361480
neg r8d
mov r9d, r8d
xor r9d, 0x90c9eb78
and r8d, 0x10c9eb78
lea r8d, [r9 + r8*2]
neg r8d
cmp edx, r8d
jl 0x1402597e0
mov eax, dword [0x140565350]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140259993
jmp 0x140259974
xor eax, eax
lea rcx, [0x140527970]
lea rdx, [0x140434840]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0x14
jg 0x140259878
inc rax
jmp 0x140259860
xor eax, eax
test al, al
je 0x140259941
jmp 0x140259947
xor eax, eax
lea rcx, [0x1405279d0]
lea rdx, [0x1404348a0]
mov r8d, 0x6f36148b
nop dword [rax]
movzx r9d, byte [rax + rdx]
add byte [rax + rcx], r9b
lea r9d, [rax + 1]
mov r10d, dword [0x1405286fc]
add r10d, r8d
cmp r9d, r10d
jge 0x1402598c1
inc rax
jmp 0x1402598a0
mov ecx, 0x6f361481
lea rax, [fcn.1402596a0]
lea r8d, [rax + rax]
add r8d, 0x44c0
mov r9d, r8d
not r9d
nop
mov eax, dword [0x140565354]
cmp eax, 0x27
jle 0x140259912
mov al, 0x24
xchg byte [0x1405279dc], al
mov eax, dword [0x1405286fc]
mov edx, 0x90c9eb7f
sub edx, eax
add eax, 0x6f361480
and edx, r9d
xor eax, r8d
or eax, edx
cmp eax, 0xffffffff
jne 0x1402598e0
mov al, 0x24
xchg byte [0x1405279dc], al
mov edx, dword [0x140565350]
lea eax, [rdx - 1]
imul eax, edx
mov r10d, dword [0x1405286fc]
add r10d, ecx
xor edx, edx
div r10d
test edx, edx
jne 0x1402598eb
lea rax, [0x1405279d0]
ret
mov al, 1
test al, al
jne 0x140259964
mov eax, 0x6f3614c2
nop dword [rax]
mov ecx, dword [0x140565354]
mov edx, dword [0x1405286fc]
add edx, eax
cmp ecx, edx
jge 0x140259950
jmp 0x140259941
mov al, 0xde
xchg byte [0x140527985], al
lea rax, [0x140527970]
ret
mov ecx, dword [0x140565350]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, 0x6f361481
add ecx, dword [0x1405286fc]
xor edx, edx
div ecx
test edx, edx
je 0x1402599a6
mov al, 1
nop word cs:[rax + rax]
test al, al
je 0x1402599a0
jmp 0x140259974
mov al, 0x87
xchg byte [0x140527879], al
lea rax, [0x140527870]
ret
movzx eax, byte [0x140527632]
cmp dword [0x1405286fc], 0x90c9eb81
je 0x1402599d2
movzx eax, byte [0x140527632]
jmp 0x1402599b6
cmp al, 0x34
je 0x1402599f0
mov cl, 0xd1
nop dword [rax + rax]
mov al, 0xb2
lock cmpxchg byte [0x140527632], cl
je 0x1402599f8
cmp al, 0x34
jne 0x1402599e0
lea rax, [0x140527630]
ret
xor eax, eax
lea rcx, [0x140527630]
lea rdx, [0x140434550]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
mov r9d, r8d
xor r9b, r8b
not r9b
and r9b, byte [rax + rcx]
xor r9b, r8b
mov byte [rax + rcx], r9b
lea r8d, [rax + 1]
cmp r8d, 1
jg 0x140259a38
inc rax
jmp 0x140259a10
mov al, 0x34
xchg byte [0x140527632], al
lea rax, [0x140527630]
ret