Function at 0x14017b4f0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
mov eax, dword [0x14054db68]
mov r8d, eax
xor r8d, 0xbc252bb4
and eax, 0x3c252bb4
lea eax, [r8 + rax*2]
cmp ecx, eax
jne 0x14017b5ac
mov eax, dword [0x1405b37b0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
nop word cs:[rax + rax]
xor eax, eax
test al, al
jne 0x14017b530
test edx, edx
je 0x14017b5e9
movzx eax, byte [0x14054d757]
nop word cs:[rax + rax]
cmp al, 0x12
je 0x14017b7fe
movzx ecx, byte [0x14054db78]
mov edx, ecx
xor dl, 0x93
mov eax, ecx
and al, 0x13
add al, al
add al, dl
add cl, 0xbd
lock cmpxchg byte [0x14054d757], cl
jne 0x14017b550
xor eax, eax
lea rcx, [0x14054d750]
lea rdx, [0x14046faa0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 6
jg 0x14017b683
inc rax
jmp 0x14017b590
test edx, edx
je 0x14017b619
movzx eax, byte [0x14054d825]
cmp al, 0xae
je 0x14017b8d6
mov cl, 0x54
nop word cs:[rax + rax]
mov al, 0xe
lock cmpxchg byte [0x14054d825], cl
je 0x14017b697
cmp al, 0xae
jne 0x14017b5d0
jmp 0x14017b8d6
movzx eax, byte [0x14054d95f]
cmp al, 0x62
je 0x14017b7c5
mov cl, 0x79
nop word [rax + rax]
mov al, 0xd7
lock cmpxchg byte [0x14054d95f], cl
je 0x14017b6b6
cmp al, 0x62
jne 0x14017b600
jmp 0x14017b7c5
movzx eax, byte [0x14054d85e]
cmp al, 0x69
je 0x14017b8a6
movzx ecx, byte [0x14054db78]
lea eax, [rcx + 0x2b]
add cl, 0xba
lock cmpxchg byte [0x14054d85e], cl
je 0x14017b772
mov ecx, dword [0x1405b37b4]
cmp ecx, 0x36
jg 0x14017b670
nop
mov ecx, dword [0x1405b37b0]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
je 0x14017b620
nop word cs:[rax + rax]
mov ecx, dword [0x1405b37b0]
lea edx, [rcx + 1]
imul edx, ecx
test dl, 1
jne 0x14017b670
jmp 0x14017b650
mov eax, dword [0x1405b37b4]
cmp eax, 0x48
jl 0x14017b7d0
jmp 0x14017b7e1
lea rax, [fcn.14017b4f0]
add eax, eax
add eax, 0xf80
mov ecx, eax
not ecx
test ecx, eax
jne 0x14017b900
jmp 0x14017b8e2
xor r8d, r8d
mov r9d, 0xbc252be8
lea r10, [0x14054d950]
lea r11, [0x14046fc90]
mov bl, 1
jmp 0x14017b6ed
inc r8d
cmp r8d, 0xf
jge 0x14017b781
mov eax, dword [0x1405b37b4]
mov ecx, dword [0x14054db68]
add ecx, r9d
movsxd rsi, r8d
cmp eax, ecx
jge 0x14017b720
nop word cs:[rax + rax]
movzx eax, byte [rsi + r11]
xor byte [rsi + r10], al
test bl, bl
jne 0x14017b6e0
nop dword [rax]
movzx ecx, byte [rsi + r10]
movzx eax, byte [rsi + r11]
sub al, cl
sub al, cl
mul cl
mov edx, eax
shl dl, cl
mov edi, eax
mov ecx, edx
shl dil, cl
mov ecx, eax
neg cl
mov edx, ecx
xor dl, dil
and dil, cl
add dil, dil
add dil, dl
sub dil, al
mov edx, ecx
xor dl, dil
and dil, cl
add dil, dil
add dil, dl
xor dil, al
mov byte [rsi + r10], dil
mov eax, dword [0x1405b37b4]
cmp eax, 0x15
jge 0x14017b720
jmp 0x14017b710
xor eax, eax
test al, al
jne 0x14017b830
jmp 0x14017b807
mov eax, 0xbc252c08
xor ecx, ecx
nop dword [rax + rax]
mov edx, dword [0x1405b37b4]
mov r8d, dword [0x14054db68]
add r8d, eax
cmp edx, r8d
jl 0x14017b7b9
mov edx, dword [0x1405b37b0]
lea r8d, [rdx + 1]
imul r8d, edx
test r8b, 1
jne 0x14017b790
test cl, cl
jne 0x14017b7a5
mov al, 0x62
xchg byte [0x14054d95f], al
lea rax, [0x14054d950]
pop rbx
pop rdi
pop rsi
ret
mov eax, dword [0x1405b37b0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x14017b7f6
mov al, 1
nop word cs:[rax + rax]
test al, al
je 0x14017b7f0
jmp 0x14017b7d0
mov al, 0x12
xchg byte [0x14054d757], al
lea rax, [0x14054d750]
jmp 0x14017b7cc
mov eax, dword [0x1405b37b4]
mov ecx, dword [0x14054db68]
mov edx, ecx
xor edx, 0xbc252c05
and ecx, 0x3c252c05
lea ecx, [rdx + rcx*2]
cmp eax, ecx
jl 0x14017b83d
nop dword [rax + rax]
mov eax, dword [0x1405b37b4]
cmp eax, 0x59
jge 0x14017b830
jmp 0x14017b807
xor edx, edx
lea rax, [0x14054d850]
lea rcx, [0x14046fb90]
nop dword [rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
add byte [rdx + rax], r8b
mov r8d, dword [0x14054db68]
add edx, r8d
add edx, 0xbc252bb5
add r8d, 0xbc252bc2
cmp edx, r8d
jl 0x14017b850
mov eax, dword [0x1405b37b4]
cmp eax, 0x2c
jge 0x14017b89c
mov al, 0x69
xchg byte [0x14054d85e], al
mov eax, dword [0x1405b37b0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x14017b8a6
mov al, 0x69
xchg byte [0x14054d85e], al
jmp 0x14017b883
mov eax, dword [0x1405b37b4]
nop dword [rax]
mov eax, dword [0x1405b37b0]
mov ecx, dword [0x14054db68]
neg ecx
add ecx, eax
inc ecx
imul ecx, eax
test cl, 1
jne 0x14017b8b0
lea rax, [0x14054d850]
jmp 0x14017b7cc
lea rax, [0x14054d810]
jmp 0x14017b7cc
mov eax, dword [0x1405b37b4]
mov ecx, 0xbc252bd3
add ecx, dword [0x14054db68]
cmp eax, ecx
jl 0x14017b923
nop word [rax + rax]
mov eax, dword [0x1405b37b4]
mov ecx, dword [0x14054db68]
mov edx, ecx
xor edx, 0xbc252bef
and ecx, 0x3c252bef
lea ecx, [rdx + rcx*2]
cmp eax, ecx
jge 0x14017b900
jmp 0x14017b8e2
xor eax, eax
lea rcx, [0x14054d810]
lea rdx, [0x14046fb50]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0x14
jg 0x14017b958
inc rax
jmp 0x14017b940
movzx eax, byte [0x14054db78]
add al, 0x35
xchg byte [0x14054d825], al
jmp 0x14017b8d6