Function at 0x140174900
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x14017494c
test edx, edx
je 0x14017499c
test r8d, r8d
je 0x1401749dc
test r9d, r9d
je 0x140174a59
movzx eax, byte [0x140448f04]
cmp al, 0xf
je 0x140174944
mov cl, 0xda
nop dword [rax + rax]
mov al, 9
lock cmpxchg byte [0x140448f04], cl
je 0x140174bd9
cmp al, 0xf
jne 0x140174930
lea rax, [0x140448ef0]
ret
test edx, edx
je 0x140174a1c
test r8d, r8d
je 0x140174a8c
test r9d, r9d
je 0x140174b09
movzx eax, byte [0x140448f4b]
cmp al, 0x69
je 0x140174994
mov cl, 0x79
nop word cs:[rax + rax]
mov al, 0xa
lock cmpxchg byte [0x140448f4b], cl
je 0x140174ca9
cmp al, 0x69
jne 0x140174980
lea rax, [0x140448f40]
ret
test r8d, r8d
je 0x140174ac9
test r9d, r9d
je 0x140174b39
movzx eax, byte [0x140448f33]
cmp al, 0x91
je 0x1401749d4
mov cl, 0x52
nop dword [rax + rax]
mov al, 0x8c
lock cmpxchg byte [0x140448f33], cl
je 0x140174ce1
cmp al, 0x91
jne 0x1401749c0
lea rax, [0x140448f20]
ret
test r9d, r9d
je 0x140174b69
movzx eax, byte [0x140448eed]
cmp al, 0xfe
je 0x140174a14
mov cl, 0x77
nop word cs:[rax + rax]
mov al, 0x33
lock cmpxchg byte [0x140448eed], cl
je 0x140174d21
cmp al, 0xfe
jne 0x140174a00
lea rax, [0x140448ee0]
ret
test r8d, r8d
je 0x140174b99
test r9d, r9d
je 0x140174c11
movzx eax, byte [0x140448ea2]
cmp al, 0x8b
je 0x140174df9
mov cl, 0xbd
nop
mov al, 0xd0
lock cmpxchg byte [0x140448ea2], cl
je 0x140174dcb
cmp al, 0x8b
jne 0x140174a40
jmp 0x140174df9
movzx eax, byte [0x140448dae]
cmp al, 0x45
je 0x140174a84
mov cl, 0xbc
nop word cs:[rax + rax]
mov al, 0xf8
lock cmpxchg byte [0x140448dae], cl
je 0x140174d61
cmp al, 0x45
jne 0x140174a70
lea rax, [0x140448da0]
ret
test r9d, r9d
je 0x140174c49
movzx eax, byte [0x140448ecd]
cmp al, 0xfc
je 0x140174e39
mov cl, 0xe6
nop word cs:[rax + rax]
mov al, 0xf2
lock cmpxchg byte [0x140448ecd], cl
je 0x140174e01
cmp al, 0xfc
jne 0x140174ab0
jmp 0x140174e39
test r9d, r9d
je 0x140174c79
movzx eax, byte [0x140448ede]
cmp al, 0x57
je 0x140174e79
mov cl, 0x8e
nop word cs:[rax + rax]
mov al, 0x17
lock cmpxchg byte [0x140448ede], cl
je 0x140174e41
cmp al, 0x57
jne 0x140174af0
jmp 0x140174e79
movzx eax, byte [0x140448f1d]
cmp al, 0x39
je 0x140174eb9
mov cl, 0x6f
nop word [rax + rax]
mov al, 0x11
lock cmpxchg byte [0x140448f1d], cl
je 0x140174e81
cmp al, 0x39
jne 0x140174b20
jmp 0x140174eb9
movzx eax, byte [0x140448d50]
cmp al, 0x9d
je 0x140174ef9
mov cl, 0x8b
nop word [rax + rax]
mov al, 0x4c
lock cmpxchg byte [0x140448d50], cl
je 0x140174ec1
cmp al, 0x9d
jne 0x140174b50
jmp 0x140174ef9
movzx eax, byte [0x140448d25]
cmp al, 0x89
je 0x140174f39
mov cl, 0x2b
nop word [rax + rax]
mov al, 0x8e
lock cmpxchg byte [0x140448d25], cl
je 0x140174f01
cmp al, 0x89
jne 0x140174b80
jmp 0x140174f39
test r9d, r9d
je 0x140174da1
movzx eax, byte [0x140448ebb]
cmp al, 0xf7
je 0x140174f79
mov cl, 0xa3
nop word cs:[rax + rax]
mov al, 0x36
lock cmpxchg byte [0x140448ebb], cl
je 0x140174f41
cmp al, 0xf7
jne 0x140174bc0
jmp 0x140174f79
xor eax, eax
lea rcx, [0x140448ef0]
lea rdx, [0x140363e80]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x140174bf0
mov al, 0xf
xchg byte [0x140448f04], al
lea rax, [0x140448ef0]
ret
movzx eax, byte [0x140448dec]
cmp al, 0xba
je 0x140174fb9
mov cl, 0xf6
nop word cs:[rax + rax]
mov al, 0xd6
lock cmpxchg byte [0x140448dec], cl
je 0x140174f81
cmp al, 0xba
jne 0x140174c30
jmp 0x140174fb9
movzx eax, byte [0x140448e92]
cmp al, 0xc2
je 0x140174ff9
mov cl, 0x59
nop word [rax + rax]
mov al, 0x14
lock cmpxchg byte [0x140448e92], cl
je 0x140174fc1
cmp al, 0xc2
jne 0x140174c60
jmp 0x140174ff9
movzx eax, byte [0x140448f5f]
cmp al, 0x10
je 0x140175039
mov cl, 0xd3
nop word [rax + rax]
mov al, 0x89
lock cmpxchg byte [0x140448f5f], cl
je 0x140175001
cmp al, 0x10
jne 0x140174c90
jmp 0x140175039
xor eax, eax
lea rcx, [0x140448f40]
lea rdx, [0x140363ed0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x140174cc0
mov al, 0x69
xchg byte [0x140448f4b], al
lea rax, [0x140448f40]
ret
xor eax, eax
lea rcx, [0x140448f20]
lea rdx, [0x140363eb0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x140174d00
mov al, 0x91
xchg byte [0x140448f33], al
lea rax, [0x140448f20]
ret
xor eax, eax
lea rcx, [0x140448ee0]
lea rdx, [0x140363e70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140174d40
mov al, 0xfe
xchg byte [0x140448eed], al
lea rax, [0x140448ee0]
ret
xor eax, eax
lea rcx, [0x140448da0]
lea rdx, [0x140363d40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x140174d80
mov al, 0x45
xchg byte [0x140448dae], al
lea rax, [0x140448da0]
ret
movzx eax, byte [0x140448e03]
cmp al, 0xf6
je 0x14017506a
mov cl, 0xb3
mov al, 0x8c
lock cmpxchg byte [0x140448e03], cl
je 0x140175041
cmp al, 0xf6
jne 0x140174db2
jmp 0x14017506a
xor eax, eax
lea rcx, [0x140448ea0]
lea rdx, [0x140363e30]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140174de0
mov al, 0x8b
xchg byte [0x140448ea2], al
lea rax, [0x140448ea0]
ret
xor eax, eax
lea rcx, [0x140448ec0]
lea rdx, [0x140363e50]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140174e20
mov al, 0xfc
xchg byte [0x140448ecd], al
lea rax, [0x140448ec0]
ret
xor eax, eax
lea rcx, [0x140448ed0]
lea rdx, [0x140363e60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x140174e60
mov al, 0x57
xchg byte [0x140448ede], al
lea rax, [0x140448ed0]
ret
xor eax, eax
lea rcx, [0x140448f10]
lea rdx, [0x140363ea0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140174ea0
mov al, 0x39
xchg byte [0x140448f1d], al
lea rax, [0x140448f10]
ret
xor eax, eax
lea rcx, [0x140448d40]
lea rdx, [0x140363cf0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x140174ee0
mov al, 0x9d
xchg byte [0x140448d50], al
lea rax, [0x140448d40]
ret
xor eax, eax
lea rcx, [0x140448d20]
lea rdx, [0x140363cd0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x140174f20
mov al, 0x89
xchg byte [0x140448d25], al
lea rax, [0x140448d20]
ret
xor eax, eax
lea rcx, [0x140448eb0]
lea rdx, [0x140363e40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x140174f60
mov al, 0xf7
xchg byte [0x140448ebb], al
lea rax, [0x140448eb0]
ret
xor eax, eax
lea rcx, [0x140448dd0]
lea rdx, [0x140363d60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x140174fa0
mov al, 0xba
xchg byte [0x140448dec], al
lea rax, [0x140448dd0]
ret
xor eax, eax
lea rcx, [0x140448e90]
lea rdx, [0x140363e20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140174fe0
mov al, 0xc2
xchg byte [0x140448e92], al
lea rax, [0x140448e90]
ret
xor eax, eax
lea rcx, [0x140448f50]
lea rdx, [0x140363ee0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x140175020
mov al, 0x10
xchg byte [0x140448f5f], al
lea rax, [0x140448f50]
ret
xor eax, eax
lea rcx, [0x140448e00]
lea rdx, [0x140363d90]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x140175051
mov al, 0xf6
xchg byte [0x140448e03], al
lea rax, [0x140448e00]
ret