Function at 0x1401674f0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x140167513
lea rax, [fcn.1401674f0]
add eax, eax
add eax, 0xb00
mov ecx, eax
not ecx
test ecx, eax
jne 0x140167780
jmp 0x14016775b
test edx, edx
je 0x14016757d
movzx eax, byte [0x1404df822]
cmp al, 0x4c
je 0x140167667
mov cl, 0x20
jmp 0x140167538
cmp al, 0x4c
je 0x140167667
mov al, 0x14
lock cmpxchg byte [0x1404df822], cl
je 0x14016762f
nop dword [rax + rax]
mov edx, dword [0x1405319a0]
lea r8d, [rdx - 1]
imul r8d, edx
test r8b, 1
jne 0x140167570
cmp dword [0x1404e0188], 0x625c22af
je 0x140167530
mov edx, dword [0x1405319a4]
cmp edx, 0x24
jge 0x140167550
jmp 0x140167564
movzx eax, byte [0x1404df6b0]
movzx ecx, byte [0x1404e0198]
mov edx, ecx
xor dl, 0xa0
and cl, 0x20
add cl, cl
add cl, dl
cmp al, cl
je 0x1401676f9
mov cl, 0xfa
mov dl, 1
jmp 0x1401675db
movzx r8d, byte [0x1404e0198]
xor r9d, r9d
sub r9b, r8b
mov r8d, r9d
xor r8b, 0x60
and r9b, 0x60
add r9b, r9b
add r9b, r8b
neg r9b
cmp al, r9b
je 0x1401676f9
mov al, 0x96
lock cmpxchg byte [0x1404df6b0], cl
je 0x140167676
mov r8d, dword [0x1404e0188]
mov r9d, r8d
xor r9d, 0x9da3dd51
and r8d, 0x1da3dd51
add r8d, r8d
add r8d, r9d
jne 0x140167620
nop dword [rax + rax]
test dl, dl
jne 0x1401675b0
nop word cs:[rax + rax]
mov r8d, dword [0x1405319a4]
cmp r8d, 0x16
jge 0x140167620
jmp 0x140167610
xor edx, edx
lea rax, [0x1404df810]
lea rcx, [0x140403e10]
nop
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, 0x12
jl 0x140167640
mov al, 0x4c
xchg byte [0x1404df822], al
xor eax, eax
test al, al
jne 0x140167740
jmp 0x140167701
mov eax, dword [0x1405319a4]
mov eax, 0x9da3dd78
nop word cs:[rax + rax]
mov ecx, dword [0x1405319a4]
mov edx, dword [0x1404e0188]
add edx, eax
cmp ecx, edx
jge 0x140167690
xor edx, edx
lea rax, [0x1404df6a0]
lea rcx, [0x140403cb0]
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 [0x1404e0188]
add edx, r8d
add edx, 0x9da3dd52
cmp edx, 0x10
jl 0x1401676c0
mov al, 0x44
xchg byte [0x1404df6b0], al
lea rax, [0x1404df6a0]
ret
mov ecx, dword [0x1405319a0]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, dword [0x1404e0188]
mov edx, ecx
xor edx, 0x5a812354
and ecx, 0x5a812354
lea ecx, [rdx + rcx*2]
add ecx, 0x4322b9ff
xor edx, edx
div ecx
test edx, edx
je 0x140167753
nop word cs:[rax + rax]
mov eax, dword [0x1405319a0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140167740
jmp 0x140167701
lea rax, [0x1404df810]
ret
lea rax, [fcn.1401674f0]
add eax, eax
add eax, 0x3880
mov ecx, eax
not ecx
test ecx, eax
je 0x140167797
nop word cs:[rax + rax]
mov eax, dword [0x1405319a0]
mov ecx, 0x4c82717b
sub ecx, eax
imul ecx, eax
test cl, 1
jne 0x140167780
jmp 0x14016775b
test edx, edx
je 0x1401677b9
mov eax, dword [0x1405319a4]
mov ecx, 0x9da3dd9b
add ecx, dword [0x1404e0188]
cmp eax, ecx
jge 0x140167930
jmp 0x1401678ee
xor eax, eax
test al, al
jne 0x1401677f8
movzx ecx, byte [0x1404df7dd]
mov edx, dword [0x1405319a0]
mov r8d, dword [0x1404e0188]
mov eax, edx
sub eax, r8d
add eax, 0x625c22ae
imul eax, edx
lea r9d, [r8 - 0x625c22ad]
xor edx, edx
div r9d
add r8d, 0x9da3dd51
cmp edx, r8d
je 0x140167824
mov eax, 0x9da3dd51
nop dword [rax]
movzx ecx, byte [0x1404df7dd]
mov ecx, dword [0x1405319a0]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
mov ecx, dword [0x1404e0188]
add ecx, eax
cmp edx, ecx
jne 0x140167800
jmp 0x1401677bf
cmp cl, 0x51
je 0x1401678e6
mov cl, 0x8c
nop
mov al, 0x4c
lock cmpxchg byte [0x1404df7dd], cl
je 0x140167845
cmp al, 0x51
jne 0x140167830
jmp 0x1401678e6
mov eax, 0x9da3dd52
lea rcx, [fcn.1401674f0]
add ecx, ecx
add ecx, 0x33a0
mov edx, ecx
not edx
xor r8d, r8d
mov r9d, dword [0x1404e0188]
add r9d, eax
mov r10d, ecx
xor r10d, r9d
not r9d
and r9d, edx
or r9d, r10d
cmp r9d, 0xffffffff
jne 0x140167884
test r8b, r8b
je 0x14016789b
mov r9d, dword [0x1405319a0]
lea r10d, [r9 - 1]
imul r10d, r9d
test r10b, 1
jne 0x140167860
jmp 0x14016787f
xor eax, eax
lea rcx, [0x1404df7d0]
lea rdx, [0x140403dd0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0xc
jg 0x1401678c8
inc rax
jmp 0x1401678b0
mov al, 1
test al, al
je 0x1401678dc
mov al, 0x51
xchg byte [0x1404df7dd], al
xor eax, eax
test al, al
je 0x1401678e6
mov al, 0x51
xchg byte [0x1404df7dd], al
jmp 0x1401678ce
lea rax, [0x1404df7d0]
ret
movzx eax, byte [0x1404df80d]
mov ecx, dword [0x1404e0188]
mov edx, ecx
xor edx, 0x9da3dd52
and ecx, 0x1da3dd52
lea ecx, [rdx + rcx*2]
lea rdx, [fcn.1401674f0]
add edx, edx
add edx, 0x14a0
xor edx, ecx
not edx
test edx, ecx
je 0x140167944
nop word cs:[rax + rax]
movzx eax, byte [0x1404df80d]
mov eax, dword [0x1405319a4]
cmp eax, 0x46
jge 0x140167930
jmp 0x1401678ee
movzx ecx, byte [0x1404e0198]
add cl, 6
cmp al, cl
je 0x1401679b0
mov cl, 0x99
nop word cs:[rax + rax]
mov al, 0xcc
lock cmpxchg byte [0x1404df80d], cl
je 0x140167972
cmp al, 0xaa
jne 0x140167960
jmp 0x1401679b0
xor eax, eax
lea rcx, [0x1404df800]
lea rdx, [0x140403e00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0xc
jg 0x1401679a8
inc rax
jmp 0x140167990
mov al, 0xaa
xchg byte [0x1404df80d], al
mov eax, 0x9da3dd7d
mov cl, 1
nop word [rax + rax]
mov edx, dword [0x1405319a4]
mov r8d, dword [0x1404e0188]
add r8d, eax
cmp edx, r8d
jge 0x1401679e0
mov edx, dword [0x1405319a4]
cmp edx, 0x49
jle 0x1401679e6
test cl, cl
je 0x1401679c0
jmp 0x1401679d5
lea rax, [0x1404df800]
ret