Function at 0x140407b60
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x140407bac
mov eax, dword [0x1405beff8]
mov ecx, eax
xor ecx, 0x3fa6f791
and eax, 0x3fa6f791
lea eax, [rcx + rax*2]
cmp edx, eax
jne 0x140407bec
movzx eax, byte [0x1405befe9]
cmp al, 0xc2
je 0x140407ba4
mov cl, 0xaf
nop dword [rax + rax]
mov al, 0x93
lock cmpxchg byte [0x1405befe9], cl
je 0x140407c49
cmp al, 0xc2
jne 0x140407b90
lea rax, [0x1405befe0]
ret
mov eax, 0x3fa6f791
add eax, dword [0x1405beff8]
cmp edx, eax
jne 0x140407c1f
movzx eax, byte [0x1405beefd]
cmp al, 0x7d
je 0x140407be4
mov cl, 0x2a
nop dword [rax + rax]
mov al, 0x3e
lock cmpxchg byte [0x1405beefd], cl
je 0x140407cf2
cmp al, 0x7d
jne 0x140407bd0
lea rax, [0x1405beef0]
ret
mov ecx, dword [0x1405d40f0]
mov r8d, dword [0x1405beff8]
mov eax, ecx
sub eax, r8d
add eax, 0xc059086e
imul eax, ecx
add r8d, 0x3fa6f793
xor edx, edx
div r8d
test edx, edx
jne 0x140407def
jmp 0x140407ddd
movzx eax, byte [0x1405bef8a]
cmp al, 0x21
je 0x140407dd5
mov cl, 0xd1
mov al, 0xfe
lock cmpxchg byte [0x1405bef8a], cl
je 0x140407d41
cmp al, 0x21
jne 0x140407c30
jmp 0x140407dd5
xor eax, eax
lea rcx, [0x1405befe0]
lea rdx, [0x1404b2010]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 8
jg 0x140407c80
inc rax
jmp 0x140407c60
mov eax, dword [0x1405d40f4]
cmp eax, 0x5b
jle 0x140407cca
mov ecx, dword [0x1405d40f0]
mov r8d, dword [0x1405beff8]
mov eax, ecx
sub eax, r8d
add eax, 0xc059086e
imul eax, ecx
mov ecx, r8d
xor ecx, 0x3fa6f793
mov edx, r8d
and edx, 0x3fa6f793
lea ecx, [rcx + rdx*2]
xor edx, edx
div ecx
add r8d, 0x3fa6f791
cmp edx, r8d
jne 0x140407c80
mov eax, dword [0x1405d40f0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140407c8b
movzx eax, byte [0x1405beffc]
add al, 0x72
xchg byte [0x1405befe9], al
lea rax, [0x1405befe0]
ret
xor eax, eax
lea rcx, [0x1405beef0]
lea rdx, [0x1404b1f20]
mov r8d, 0x3fa6f79e
nop dword [rax + rax]
movzx r9d, byte [rax + rdx]
mov r10d, r9d
xor r10b, r9b
not r10b
and r10b, byte [rax + rcx]
xor r10b, r9b
mov byte [rax + rcx], r10b
lea r9d, [rax + 1]
mov r10d, dword [0x1405beff8]
add r10d, r8d
cmp r9d, r10d
jge 0x140407d92
inc rax
jmp 0x140407d10
xor edx, edx
lea rax, [0x1405bef70]
lea rcx, [0x1404b1fa0]
nop word cs:[rax + rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
xor byte [rdx + rax], r8b
mov r8d, edx
xor r8d, 1
and edx, 1
lea edx, [r8 + rdx*2]
cmp edx, 0x1a
jl 0x140407d60
mov eax, dword [0x1405d40f0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
jne 0x140407dc0
jmp 0x140407da2
mov al, 0x7d
xchg byte [0x1405beefd], al
lea rax, [0x1405beef0]
ret
mov al, 0x21
xchg byte [0x1405bef8a], al
mov eax, dword [0x1405d40f0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x140407dd5
nop dword [rax + rax]
mov al, 0x21
xchg byte [0x1405bef8a], al
mov eax, dword [0x1405d40f4]
cmp eax, 0x42
jge 0x140407dc0
jmp 0x140407da2
lea rax, [0x1405bef70]
ret
movzx eax, byte [0x1405befdf]
mov ecx, dword [0x1405d40f4]
cmp ecx, 0x14
jle 0x140407df8
movzx eax, byte [0x1405befdf]
jmp 0x140407ddd
cmp al, 0x22
je 0x140407e2e
nop dword [rax]
movzx ecx, byte [0x1405beffc]
lea eax, [rcx + 0x7c]
add cl, 0x53
lock cmpxchg byte [0x1405befdf], cl
je 0x140407e36
movzx ecx, byte [0x1405beffc]
mov edx, ecx
xor dl, 0xd2
and cl, 0x52
add cl, cl
add cl, dl
cmp al, cl
jne 0x140407e00
lea rax, [0x1405befd0]
ret
xor eax, eax
lea rcx, [0x1405befd0]
lea rdx, [0x1404b2000]
mov r8d, 0x3fa6f7a0
nop dword [rax]
movzx r9d, byte [rax + rdx]
add byte [rax + rcx], r9b
lea r9d, [rax + 1]
mov r10d, dword [0x1405beff8]
add r10d, r8d
cmp r9d, r10d
jge 0x140407e71
inc rax
jmp 0x140407e50
mov eax, dword [0x1405d40f0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
jne 0x140407e93
mov eax, dword [0x1405d40f0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
je 0x140407ebe
mov eax, 0x3fa6f792
lea rcx, [fcn.140407b60]
add ecx, ecx
add ecx, 0x1b40
nop word [rax + rax]
mov edx, dword [0x1405beff8]
add edx, eax
test ecx, edx
jne 0x140407eb0
jmp 0x140407e82
mov al, 0x22
xchg byte [0x1405befdf], al
lea rax, [0x1405befd0]
ret