Function at 0x140218820
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
mov eax, dword [0x1405762c0]
mov r8d, 0xfcdfebdd
sub r8d, eax
imul r8d, eax
test r8b, 1
nop word [rax + rax]
mov eax, dword [0x1405762c0]
lea r8d, [rax + 1]
imul r8d, eax
test r8b, 1
jne 0x140218840
test ecx, ecx
je 0x140218a01
mov eax, 0x1a1baed4
xor ecx, ecx
lea r8, [fcn.140218820]
add r8d, r8d
add r8d, 0x35e0
mov r9d, r8d
not r9d
nop word [rax + rax]
cmp qword [0x140576400], 0
jne 0x14021888e
test cl, cl
je 0x140218895
test r9d, r8d
jne 0x140218880
jmp 0x14021888a
add eax, dword [0x14052b388]
cmp edx, eax
jne 0x140218a39
movzx eax, byte [0x14052953d]
cmp al, 0xf8
je 0x1402189f5
mov cl, 0x4e
nop word cs:[rax + rax]
mov al, 0x97
lock cmpxchg byte [0x14052953d], cl
je 0x1402188e0
cmp al, 0xf8
jne 0x1402188c0
jmp 0x1402189f5
cmp qword [0x140576400], 0
je 0x1402188fb
mov eax, dword [0x1405762c0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1402188e0
cmp dword [0x14052b388], 0xe5e4512c
jne 0x1402188ea
xor edx, edx
mov r8d, 0x1a1baed4
lea r9, [0x140529530]
lea r10, [0x1404417f0]
mov r11b, 1
jmp 0x14021893b
inc edx
cmp edx, 0xd
jge 0x1402189d1
mov eax, dword [0x1405762c0]
mov ecx, 0x2359fa75
sub ecx, eax
imul ecx, eax
and ecx, 1
mov eax, dword [0x14052b388]
add eax, r8d
movsxd rsi, edx
cmp ecx, eax
jne 0x1402189a0
nop
movzx eax, byte [rsi + r9]
movzx ecx, byte [rsi + r10]
mov ebx, eax
not bl
not cl
mov edi, ebx
xor dil, cl
and dil, bl
and cl, al
or cl, dil
mov byte [rsi + r9], cl
mov eax, dword [0x1405762c0]
mov ecx, eax
not ecx
add ecx, dword [0x14052b388]
imul ecx, eax
test cl, 1
je 0x140218930
nop dword [rax]
movzx eax, byte [rsi + r9]
movzx ecx, byte [rsi + r10]
mov ebx, eax
shl bl, cl
sub al, bl
mul bl
xor al, bl
mov byte [rsi + r9], al
test r11b, r11b
je 0x1402189a0
jmp 0x140218960
mov eax, dword [0x1405762c0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x1402189dc
mov eax, dword [0x1405762c4]
cmp eax, 0x3a
jg 0x1402189c0
mov eax, dword [0x1405762c0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1402189c0
mov al, 0xf8
xchg byte [0x14052953d], al
lea rax, [0x140529530]
jmp 0x140218c1b
test edx, edx
je 0x140218a60
movzx eax, byte [0x14052979d]
cmp al, 0x58
je 0x140218b98
mov cl, 0xb9
nop word cs:[rax + rax]
mov al, 0x17
lock cmpxchg byte [0x14052979d], cl
je 0x140218b08
cmp al, 0x58
jne 0x140218a20
jmp 0x140218b98
mov eax, dword [0x1405762c0]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
mov eax, 0x1a1baed4
add eax, dword [0x14052b388]
cmp ecx, eax
jne 0x140218c60
jmp 0x140218c1f
movzx eax, byte [0x1405298e3]
cmp al, 0x89
je 0x140218c00
mov r8d, 0x1a1baed6
xor r9d, r9d
mov r10b, 0x3a
nop dword [rax + rax]
mov eax, dword [0x1405762c4]
cmp eax, 0x3b
jg 0x140218af0
nop dword [rax + rax]
movzx ecx, byte [0x14052b38c]
lea eax, [rcx - 0x7b]
add cl, 0x14
lock cmpxchg byte [0x1405298e3], cl
mov ecx, eax
sete al
mov edx, dword [0x1405762c4]
cmp edx, 0x4e
jge 0x140218af0
test al, al
jne 0x140218ba1
mov edx, dword [0x1405762c0]
lea eax, [rdx - 1]
imul eax, edx
mov r11d, dword [0x14052b388]
add r11d, r8d
xor edx, edx
div r11d
test edx, edx
test r9b, r9b
jne 0x140218ada
cmp cl, 0x89
jne 0x140218a80
jmp 0x140218c00
mov al, 0xab
lock cmpxchg byte [0x1405298e3], r10b
mov eax, dword [0x1405762c4]
cmp eax, 0x44
jge 0x140218af0
jmp 0x140218a90
xor eax, eax
lea rcx, [0x140529790]
lea rdx, [0x140441a50]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0xc
jg 0x140218b38
inc rax
jmp 0x140218b20
mov eax, 0x1a1baed5
lea rcx, [fcn.140218820]
lea edx, [rcx + rcx]
add edx, 0x2e0
nop dword [rax]
mov r8d, dword [0x14052b388]
add r8d, eax
test edx, r8d
jne 0x140218b74
mov r8d, dword [0x1405762c0]
lea r9d, [r8 - 1]
imul r9d, r8d
test r9b, 1
je 0x140218b90
mov r8d, dword [0x14052b388]
add r8d, eax
lea r9d, [rcx + rcx]
add r9d, 0x2380
test r9d, r8d
jne 0x140218b50
jmp 0x140218b5f
mov al, 0x58
xchg byte [0x14052979d], al
lea rax, [0x140529790]
jmp 0x140218c1b
xor edx, edx
lea rax, [0x1405298d0]
lea rcx, [0x140441b90]
nop word cs:[rax + 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 [0x14052b388]
add edx, r8d
add edx, 0x1a1baed5
cmp edx, 0x13
jl 0x140218bc0
movzx eax, byte [0x14052b38c]
add al, 0x63
xchg byte [0x1405298e3], al
mov eax, dword [0x1405762c4]
xor eax, eax
nop dword [rax + rax]
test al, al
jne 0x140218c10
lea rax, [0x1405298d0]
pop rbx
pop rdi
pop rsi
ret
movzx eax, byte [0x14052936d]
mov ecx, dword [0x14052b388]
mov edx, ecx
xor edx, 0x65e4512a
and edx, ecx
xor ecx, 0x1a1baed5
lea ecx, [rcx + rdx*2]
lea rdx, [fcn.140218820]
add edx, edx
add edx, 0x1da0
xor edx, ecx
not edx
test edx, ecx
je 0x140218ca0
nop word cs:[rax + rax]
movzx eax, byte [0x14052936d]
mov eax, dword [0x1405762c4]
cmp eax, 0x50
jge 0x140218c60
jmp 0x140218c1f
movzx ecx, byte [0x14052b38c]
lea eax, [rcx + 0x40]
mov edx, ecx
xor dl, 0xf9
and cl, 0x79
add cl, cl
add cl, dl
lock cmpxchg byte [0x14052936d], cl
je 0x140218ca9
cmp al, 0x6b
jne 0x140218c80
jmp 0x140218d3c
xor eax, eax
mov cl, 1
nop dword [rax]
test al, al
jne 0x140218cbf
mov edx, dword [0x1405762c4]
cmp edx, 0x60
jle 0x140218cc5
test cl, cl
je 0x140218cb0
jmp 0x140218cb4
xor eax, eax
lea rcx, [0x140529340]
lea rdx, [0x140441610]
nop word cs:[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, 0x2c
jg 0x140218d08
inc rax
jmp 0x140218ce0
mov al, 1
test al, al
jne 0x140218d29
nop
mov al, 0x6b
xchg byte [0x14052936d], al
mov eax, dword [0x1405762c0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140218d10
mov al, 0x6b
xchg byte [0x14052936d], al
mov eax, dword [0x1405762c4]
cmp eax, 0x15
jge 0x140218d10
lea rax, [0x140529340]
jmp 0x140218c1b