Function at 0x140177a60
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x130b22f2
add eax, dword [0x14050cee0]
cmp ecx, eax
jne 0x140177acc
mov eax, dword [0x140564474]
cmp eax, 0x11
nop dword [rax + rax]
mov eax, dword [0x140564470]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140177a80
test edx, edx
je 0x140177b09
movzx eax, byte [0x14050ca29]
movzx ecx, byte [0x14050cee4]
add cl, 0xf4
cmp al, cl
je 0x140177ac4
mov cl, 0xb
nop dword [rax]
mov al, 0x6f
lock cmpxchg byte [0x14050ca29], cl
je 0x140177b7c
cmp al, 0x32
jne 0x140177ab0
lea rax, [0x14050ca20]
ret
test edx, edx
je 0x140177b46
movzx eax, byte [0x14050c9d5]
cmp al, 0x8e
je 0x140177dcb
mov cl, 0xa
nop word cs:[rax + rax]
mov al, 0xbd
lock cmpxchg byte [0x14050c9d5], cl
je 0x140177bcb
cmp al, 0x8e
jne 0x140177af0
jmp 0x140177dcb
movzx eax, byte [0x14050cb7d]
cmp al, 0x15
je 0x140177b3e
mov cl, 0x45
nop word cs:[rax + rax]
mov al, 8
lock cmpxchg byte [0x14050cb7d], cl
je 0x140177c32
movzx edx, byte [0x14050cee4]
add dl, 0xd7
cmp al, dl
jne 0x140177b20
lea rax, [0x14050cb70]
ret
movzx eax, byte [0x14050caf8]
cmp al, 0x2c
je 0x140177b74
mov cl, 0xe8
nop word cs:[rax + rax]
mov al, 0x2b
lock cmpxchg byte [0x14050caf8], cl
je 0x140177c78
cmp al, 0x2c
jne 0x140177b60
lea rax, [0x14050cae0]
ret
xor edx, edx
lea rax, [0x14050ca20]
lea rcx, [0x14042c480]
nop dword [rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
add byte [rdx + rax], r8b
add edx, 0xe8202de2
mov r8d, edx
xor r8d, 0x17dfd21f
and edx, 0x17dfd21f
lea edx, [r8 + rdx*2]
cmp edx, 9
jl 0x140177b90
mov al, 0x32
xchg byte [0x14050ca29], al
lea rax, [0x14050ca20]
ret
xor eax, eax
lea rcx, [0x14050c9d0]
lea rdx, [0x14042c430]
nop dword [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]
mov r9d, dword [0x14050cee0]
mov r10d, r9d
xor r10d, 0x130b22f7
and r9d, 0x130b22f7
lea r9d, [r10 + r9*2]
cmp r8d, r9d
jge 0x140177c23
inc rax
jmp 0x140177be0
mov al, 1
test al, al
je 0x140177db0
jmp 0x140177d84
xor eax, eax
lea rcx, [0x14050cb70]
lea rdx, [0x14042c5c0]
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, 0xc
jg 0x140177c80
inc rax
jmp 0x140177c50
xor eax, eax
test al, al
je 0x140177c90
jmp 0x140177c9b
mov al, 0x15
xchg byte [0x14050cb7d], al
lea rax, [0x14050cb70]
ret
mov eax, dword [0x140564474]
cmp eax, 0x5c
jl 0x140177cc1
mov ecx, 0x130b22f4
mov edx, dword [0x140564470]
lea eax, [rdx - 1]
imul eax, edx
mov r8d, dword [0x14050cee0]
add r8d, ecx
xor edx, edx
div r8d
test edx, edx
jne 0x140177ca0
jmp 0x140177c90
xor edx, edx
lea r8, [0x14050cae0]
lea r9, [0x14042c530]
nop word cs:[rax + rax]
mov eax, dword [0x140564474]
cmp eax, 0x28
jg 0x140177d40
nop dword [rax + rax]
movzx eax, byte [rdx + r9]
xor byte [rdx + r8], al
mov eax, dword [0x140564470]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
mov eax, dword [0x14050cee0]
mov r10d, eax
xor r10d, 0x4b577d5f
and eax, 0x4b577d5f
lea eax, [r10 + rax*2]
add eax, 0xc7b3a593
cmp ecx, eax
jne 0x140177d40
lea eax, [rdx + 1]
cmp eax, 0x17
jg 0x140177d74
inc rdx
jmp 0x140177ce0
movzx r10d, byte [rdx + r8]
movzx ecx, byte [rdx + r9]
mov eax, r10d
shl al, cl
mov r11d, r10d
mov ecx, eax
shl r11b, cl
mov eax, r10d
sub al, r11b
mul r11b
mov ecx, eax
xor cl, al
not cl
and cl, r10b
xor cl, al
mov byte [rdx + r8], cl
jmp 0x140177cf0
mov al, 0x2c
xchg byte [0x14050caf8], al
lea rax, [0x14050cae0]
ret
mov al, 0x8e
xchg byte [0x14050c9d5], al
mov ecx, dword [0x140564470]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, 0x130b22f4
add ecx, dword [0x14050cee0]
xor edx, edx
div ecx
test edx, edx
je 0x140177dcb
nop dword [rax + rax]
mov al, 0x8e
xchg byte [0x14050c9d5], al
mov eax, dword [0x140564470]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140177db0
jmp 0x140177d84
lea rax, [0x14050c9d0]
ret