Function at 0x140244490
Capabilities:
Encode data using xor

Disassembly:
mov eax, dword [0x14057685c]
cmp eax, 0x58
jg 0x1402444b0
mov al, 1
test al, al
jne 0x1402444c6
nop word cs:[rax + rax]
mov eax, dword [0x140576858]
lea r8d, [rax - 1]
imul r8d, eax
test r8b, 1
jne 0x1402444b0
jmp 0x14024449b
test ecx, ecx
je 0x140244520
test edx, edx
je 0x140244559
movzx eax, byte [0x14052f374]
movzx ecx, byte [0x1405312e8]
add cl, 0x6a
cmp al, cl
je 0x140244518
nop word [rax + rax]
movzx ecx, byte [0x1405312e8]
lea eax, [rcx - 0x20]
mov edx, ecx
xor dl, 0x9d
and cl, 0x1d
add cl, cl
add cl, dl
lock cmpxchg byte [0x14052f374], cl
je 0x1402445bd
cmp al, 0x59
jne 0x1402444f0
lea rax, [0x14052f350]
ret
test edx, edx
je 0x140244596
movzx eax, byte [0x14052f94f]
cmp al, 0x1c
je 0x1402447c9
mov cl, 0x8c
nop word cs:[rax + rax]
mov al, 0xf2
lock cmpxchg byte [0x14052f94f], cl
je 0x140244628
cmp al, 0x1c
jne 0x140244540
jmp 0x1402447c9
movzx eax, byte [0x14052fa3d]
cmp al, 0xca
je 0x14024458e
mov cl, 0x6f
nop word cs:[rax + rax]
mov al, 7
lock cmpxchg byte [0x14052fa3d], cl
je 0x14024469a
movzx edx, byte [0x1405312e8]
add dl, 0xdb
cmp al, dl
jne 0x140244570
lea rax, [0x14052fa30]
ret
mov eax, 0x4a2b697
add eax, dword [0x1405312d8]
lea rcx, [fcn.140244490]
add ecx, ecx
add ecx, 0x2b20
test ecx, eax
jne 0x1402446bb
jmp 0x1402446ae
xor eax, eax
lea rcx, [0x14052f350]
lea rdx, [0x140443190]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0x23
jg 0x1402445f0
inc rax
jmp 0x1402445d0
mov ecx, dword [0x140576858]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, dword [0x1405312d8]
lea r8d, [rcx + 0x4a2b698]
xor edx, edx
div r8d
add ecx, 0x4a2b696
cmp edx, ecx
jne 0x1402445f0
mov al, 0x59
xchg byte [0x14052f374], al
lea rax, [0x14052f350]
ret
xor eax, eax
lea rcx, [0x14052f940]
lea rdx, [0x140443750]
nop dword [rax + rax]
cdqe
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
mov r8d, dword [0x1405312d8]
mov r9d, r8d
xor r9d, 0x4a2b697
mov r10d, r8d
and r10d, 0x4a2b697
lea r9d, [r9 + r10*2]
add eax, r9d
add r8d, 0x4a2b6a5
cmp eax, r8d
jl 0x140244640
mov eax, dword [0x140576858]
mov ecx, dword [0x1405312d8]
add ecx, eax
inc ecx
imul ecx, eax
test cl, 1
jne 0x14024483e
jmp 0x14024482d
mov eax, dword [0x14057685c]
cmp eax, 0x22
jle 0x140244863
jmp 0x14024486e
movzx eax, byte [0x14052f80d]
mov cl, 1
test cl, cl
jne 0x1402446cd
mov al, 1
nop dword [rax]
movzx ecx, byte [0x14052f80d]
test al, al
je 0x1402446c0
jmp 0x1402446ae
cmp al, 0xbf
je 0x14024474d
mov cl, 0xc8
nop word cs:[rax + rax]
mov al, 0xe5
lock cmpxchg byte [0x14052f80d], cl
je 0x1402446f2
cmp al, 0xbf
jne 0x1402446e0
jmp 0x14024474d
xor eax, eax
lea rcx, [0x14052f800]
lea rdx, [0x140443610]
mov r8d, 0x4a2b6a3
nop dword [rax + rax]
movzx r9d, byte [rax + rcx]
movzx r10d, byte [rax + rdx]
mov r11d, r9d
xor r11b, r10b
and r9b, r10b
add r9b, r9b
add r9b, r11b
mov byte [rax + rcx], r9b
lea r9d, [rax + 1]
mov r10d, dword [0x1405312d8]
add r10d, r8d
cmp r9d, r10d
jge 0x140244745
inc rax
jmp 0x140244710
mov al, 0xbf
xchg byte [0x14052f80d], al
mov eax, 0x4a2b697
mov ecx, dword [0x1405312d8]
add ecx, eax
lea rdx, [fcn.140244490]
add edx, edx
add edx, 0x3360
mov r8d, edx
not r8d
xor edx, ecx
not ecx
and ecx, r8d
or ecx, edx
cmp ecx, 0xffffffff
jne 0x140244788
mov ecx, dword [0x14057685c]
cmp ecx, 0x21
jl 0x1402447c1
lea rcx, [fcn.140244490]
add ecx, ecx
add ecx, 0xae0
mov edx, ecx
not edx
nop dword [rax + rax]
mov r8d, dword [0x1405312d8]
add r8d, eax
mov r9d, ecx
xor r9d, r8d
not r8d
and r8d, edx
or r8d, r9d
cmp r8d, 0xffffffff
jne 0x1402447a0
jmp 0x14024477d
lea rax, [0x14052f800]
ret
mov eax, 0x4a2b696
lea rcx, [fcn.140244490]
add ecx, ecx
add ecx, 0x3880
mov edx, ecx
not edx
nop word cs:[rax + rax]
mov r8d, dword [0x140576858]
lea r9d, [r8 - 1]
imul r9d, r8d
and r9d, 1
mov r8d, dword [0x1405312d8]
add r8d, eax
cmp r9d, r8d
jne 0x14024481f
mov r8d, dword [0x14057685c]
cmp r8d, 0x1f
jle 0x140244825
test edx, ecx
jne 0x1402447f0
jmp 0x140244812
lea rax, [0x14052f940]
ret
mov eax, dword [0x140576858]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x140244846
mov al, 1
test al, al
je 0x140244840
jmp 0x14024482d
movzx eax, byte [0x1405312e8]
mov ecx, eax
xor cl, 0x2d
and al, 0x2d
add al, al
add al, cl
xchg byte [0x14052f94f], al
jmp 0x1402447c9
mov eax, dword [0x14057685c]
cmp eax, 0x2f
jl 0x140244894
mov eax, 0x4a2b6e4
nop word cs:[rax + rax]
mov ecx, dword [0x14057685c]
mov edx, dword [0x1405312d8]
add edx, eax
cmp ecx, edx
jge 0x140244880
jmp 0x140244863
xor edx, edx
lea rax, [0x14052fa30]
lea rcx, [0x140443840]
nop word cs:[rax + rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
xor byte [rdx + rax], r8b
mov r8d, dword [0x1405312d8]
add edx, r8d
add edx, 0x4a2b697
cmp edx, 0xd
jl 0x1402448b0
mov al, 0xca
xchg byte [0x14052fa3d], al
lea rax, [0x14052fa30]
ret