Function at 0x1401fdae0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x1401fdb2c
test edx, edx
je 0x1401fdb7c
test r8d, r8d
je 0x1401fdbbc
test r9d, r9d
je 0x1401fdc39
movzx eax, byte [0x140459a12]
cmp al, 0x3e
je 0x1401fdb24
mov cl, 0xc1
nop dword [rax + rax]
mov al, 0xa0
lock cmpxchg byte [0x140459a12], cl
je 0x1401fddb9
cmp al, 0x3e
jne 0x1401fdb10
lea rax, [0x140459a10]
ret
test edx, edx
je 0x1401fdbfc
test r8d, r8d
je 0x1401fdc6c
test r9d, r9d
je 0x1401fdce9
movzx eax, byte [0x1404598a3]
cmp al, 0x69
je 0x1401fdb74
mov cl, 0x2e
nop word cs:[rax + rax]
mov al, 0x24
lock cmpxchg byte [0x1404598a3], cl
je 0x1401fde89
cmp al, 0x69
jne 0x1401fdb60
lea rax, [0x1404598a0]
ret
test r8d, r8d
je 0x1401fdca9
test r9d, r9d
je 0x1401fdd19
movzx eax, byte [0x140459940]
cmp al, 0xfc
je 0x1401fdbb4
mov cl, 0xb3
nop dword [rax + rax]
mov al, 0x41
lock cmpxchg byte [0x140459940], cl
je 0x1401fdec1
cmp al, 0xfc
jne 0x1401fdba0
lea rax, [0x140459930]
ret
test r9d, r9d
je 0x1401fdd49
movzx eax, byte [0x140459a06]
cmp al, 0x82
je 0x1401fdbf4
mov cl, 0x31
nop word cs:[rax + rax]
mov al, 0x77
lock cmpxchg byte [0x140459a06], cl
je 0x1401fdf01
cmp al, 0x82
jne 0x1401fdbe0
lea rax, [0x1404599e0]
ret
test r8d, r8d
je 0x1401fdd79
test r9d, r9d
je 0x1401fddf1
movzx eax, byte [0x140459975]
cmp al, 0x76
je 0x1401fdfd9
mov cl, 0x7e
nop
mov al, 0x1a
lock cmpxchg byte [0x140459975], cl
je 0x1401fdfab
cmp al, 0x76
jne 0x1401fdc20
jmp 0x1401fdfd9
movzx eax, byte [0x140459929]
cmp al, 0x4c
je 0x1401fdc64
mov cl, 0x76
nop word cs:[rax + rax]
mov al, 0x52
lock cmpxchg byte [0x140459929], cl
je 0x1401fdf41
cmp al, 0x4c
jne 0x1401fdc50
lea rax, [0x140459910]
ret
test r9d, r9d
je 0x1401fde29
movzx eax, byte [0x1404598e2]
cmp al, 0xba
je 0x1401fe019
mov cl, 0xf5
nop word cs:[rax + rax]
mov al, 0x75
lock cmpxchg byte [0x1404598e2], cl
je 0x1401fdfe1
cmp al, 0xba
jne 0x1401fdc90
jmp 0x1401fe019
test r9d, r9d
je 0x1401fde59
movzx eax, byte [0x140459a22]
cmp al, 0xd5
je 0x1401fe059
mov cl, 0x1d
nop word cs:[rax + rax]
mov al, 0xe
lock cmpxchg byte [0x140459a22], cl
je 0x1401fe021
cmp al, 0xd5
jne 0x1401fdcd0
jmp 0x1401fe059
movzx eax, byte [0x1404599df]
cmp al, 0x8c
je 0x1401fe099
mov cl, 0xa4
nop word [rax + rax]
mov al, 0x9b
lock cmpxchg byte [0x1404599df], cl
je 0x1401fe061
cmp al, 0x8c
jne 0x1401fdd00
jmp 0x1401fe099
movzx eax, byte [0x14045996c]
cmp al, 0x70
je 0x1401fe0d9
mov cl, 0x14
nop word [rax + rax]
mov al, 0x89
lock cmpxchg byte [0x14045996c], cl
je 0x1401fe0a1
cmp al, 0x70
jne 0x1401fdd30
jmp 0x1401fe0d9
movzx eax, byte [0x1404599cb]
cmp al, 0xf
je 0x1401fe119
mov cl, 0x4c
nop word [rax + rax]
mov al, 0xfd
lock cmpxchg byte [0x1404599cb], cl
je 0x1401fe0e1
cmp al, 0xf
jne 0x1401fdd60
jmp 0x1401fe119
test r9d, r9d
je 0x1401fdf81
movzx eax, byte [0x140459a3b]
cmp al, 0xb5
je 0x1401fe159
mov cl, 0xb8
nop word cs:[rax + rax]
mov al, 5
lock cmpxchg byte [0x140459a3b], cl
je 0x1401fe121
cmp al, 0xb5
jne 0x1401fdda0
jmp 0x1401fe159
xor eax, eax
lea rcx, [0x140459a10]
lea rdx, [0x14036da60]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1401fddd0
mov al, 0x3e
xchg byte [0x140459a12], al
lea rax, [0x140459a10]
ret
movzx eax, byte [0x140459983]
cmp al, 0x15
je 0x1401fe199
mov cl, 0xf2
nop word cs:[rax + rax]
mov al, 0xe3
lock cmpxchg byte [0x140459983], cl
je 0x1401fe161
cmp al, 0x15
jne 0x1401fde10
jmp 0x1401fe199
movzx eax, byte [0x140459901]
cmp al, 0xb2
je 0x1401fe1d9
mov cl, 0x4f
nop word [rax + rax]
mov al, 0xf4
lock cmpxchg byte [0x140459901], cl
je 0x1401fe1a1
cmp al, 0xb2
jne 0x1401fde40
jmp 0x1401fe1d9
movzx eax, byte [0x1404598c5]
cmp al, 0x87
je 0x1401fe219
mov cl, 0x6d
nop word [rax + rax]
mov al, 0xf7
lock cmpxchg byte [0x1404598c5], cl
je 0x1401fe1e1
cmp al, 0x87
jne 0x1401fde70
jmp 0x1401fe219
xor eax, eax
lea rcx, [0x1404598a0]
lea rdx, [0x14036d900]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x1401fdea0
mov al, 0x69
xchg byte [0x1404598a3], al
lea rax, [0x1404598a0]
ret
xor eax, eax
lea rcx, [0x140459930]
lea rdx, [0x14036d990]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1401fdee0
mov al, 0xfc
xchg byte [0x140459940], al
lea rax, [0x140459930]
ret
xor eax, eax
lea rcx, [0x1404599e0]
lea rdx, [0x14036da30]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x1401fdf20
mov al, 0x82
xchg byte [0x140459a06], al
lea rax, [0x1404599e0]
ret
xor eax, eax
lea rcx, [0x140459910]
lea rdx, [0x14036d970]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x19
jl 0x1401fdf60
mov al, 0x4c
xchg byte [0x140459929], al
lea rax, [0x140459910]
ret
movzx eax, byte [0x1404599b3]
cmp al, 2
je 0x1401fe24a
mov cl, 0x44
mov al, 0xbc
lock cmpxchg byte [0x1404599b3], cl
je 0x1401fe221
cmp al, 2
jne 0x1401fdf92
jmp 0x1401fe24a
xor eax, eax
lea rcx, [0x140459970]
lea rdx, [0x14036d9c0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x1401fdfc0
mov al, 0x76
xchg byte [0x140459975], al
lea rax, [0x140459970]
ret
xor eax, eax
lea rcx, [0x1404598d0]
lea rdx, [0x14036d930]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x1401fe000
mov al, 0xba
xchg byte [0x1404598e2], al
lea rax, [0x1404598d0]
ret
xor eax, eax
lea rcx, [0x140459a20]
lea rdx, [0x14036da70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1401fe040
mov al, 0xd5
xchg byte [0x140459a22], al
lea rax, [0x140459a20]
ret
xor eax, eax
lea rcx, [0x1404599d0]
lea rdx, [0x14036da20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x1401fe080
mov al, 0x8c
xchg byte [0x1404599df], al
lea rax, [0x1404599d0]
ret
xor eax, eax
lea rcx, [0x140459950]
lea rdx, [0x14036d9a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x1401fe0c0
mov al, 0x70
xchg byte [0x14045996c], al
lea rax, [0x140459950]
ret
xor eax, eax
lea rcx, [0x1404599c0]
lea rdx, [0x14036da10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1401fe100
mov al, 0xf
xchg byte [0x1404599cb], al
lea rax, [0x1404599c0]
ret
xor eax, eax
lea rcx, [0x140459a30]
lea rdx, [0x14036da80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1401fe140
mov al, 0xb5
xchg byte [0x140459a3b], al
lea rax, [0x140459a30]
ret
xor eax, eax
lea rcx, [0x140459980]
lea rdx, [0x14036d9d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x1401fe180
mov al, 0x15
xchg byte [0x140459983], al
lea rax, [0x140459980]
ret
xor eax, eax
lea rcx, [0x1404598f0]
lea rdx, [0x14036d950]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x1401fe1c0
mov al, 0xb2
xchg byte [0x140459901], al
lea rax, [0x1404598f0]
ret
xor eax, eax
lea rcx, [0x1404598b0]
lea rdx, [0x14036d910]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x1401fe200
mov al, 0x87
xchg byte [0x1404598c5], al
lea rax, [0x1404598b0]
ret
xor eax, eax
lea rcx, [0x140459990]
lea rdx, [0x14036d9e0]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x1401fe231
mov al, 2
xchg byte [0x1404599b3], al
lea rax, [0x140459990]
ret