Function at 0x1400ff090
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x1400ff0dc
test edx, edx
je 0x1400ff12c
test r8d, r8d
je 0x1400ff16c
movzx eax, byte [0x14043d563]
cmp al, 0x31
je 0x1400ff0d4
mov cl, 0x9b
nop word cs:[rax + rax]
mov al, 0x61
lock cmpxchg byte [0x14043d563], cl
je 0x1400ff24c
cmp al, 0x31
jne 0x1400ff0c0
lea rax, [0x14043d540]
ret
test edx, edx
je 0x1400ff19c
test r8d, r8d
je 0x1400ff1d9
test r9d, r9d
je 0x1400ff281
movzx eax, byte [0x14043d57b]
cmp al, 0x90
je 0x1400ff124
mov cl, 0x8c
nop word cs:[rax + rax]
mov al, 9
lock cmpxchg byte [0x14043d57b], cl
je 0x1400ff3c9
cmp al, 0x90
jne 0x1400ff110
lea rax, [0x14043d570]
ret
test r8d, r8d
je 0x1400ff219
test r9d, r9d
je 0x1400ff2b9
movzx eax, byte [0x14043d5eb]
cmp al, 0xaf
je 0x1400ff164
xor ecx, ecx
nop dword [rax + rax]
mov al, 0x34
lock cmpxchg byte [0x14043d5eb], cl
je 0x1400ff401
cmp al, 0xaf
jne 0x1400ff150
lea rax, [0x14043d5e0]
ret
movzx eax, byte [0x14043d5c2]
cmp al, 1
je 0x1400ff194
mov cl, 0x45
nop dword [rax]
mov al, 0x9f
lock cmpxchg byte [0x14043d5c2], cl
je 0x1400ff329
cmp al, 1
jne 0x1400ff180
lea rax, [0x14043d5c0]
ret
test r8d, r8d
je 0x1400ff2e9
test r9d, r9d
je 0x1400ff36b
movzx eax, byte [0x14043d533]
cmp al, 0xf4
je 0x1400ff4d9
mov cl, 0x58
nop
mov al, 0xe3
lock cmpxchg byte [0x14043d533], cl
je 0x1400ff4ab
cmp al, 0xf4
jne 0x1400ff1c0
jmp 0x1400ff4d9
test r9d, r9d
je 0x1400ff399
movzx eax, byte [0x14043d4d5]
cmp al, 0xb4
je 0x1400ff519
mov cl, 0x9c
nop word cs:[rax + rax]
mov al, 0xa7
lock cmpxchg byte [0x14043d4d5], cl
je 0x1400ff4e1
cmp al, 0xb4
jne 0x1400ff200
jmp 0x1400ff519
movzx eax, byte [0x14043d5d2]
cmp al, 0x74
je 0x1400ff244
mov cl, 0xf2
nop word cs:[rax + rax]
mov al, 0x1c
lock cmpxchg byte [0x14043d5d2], cl
je 0x1400ff441
cmp al, 0x74
jne 0x1400ff230
lea rax, [0x14043d5d0]
ret
xor eax, eax
lea rcx, [0x14043d540]
lea rdx, [0x140361080]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x1400ff260
mov al, 0x31
xchg byte [0x14043d563], al
lea rax, [0x14043d540]
ret
movzx eax, byte [0x14043d58f]
cmp al, 0x67
je 0x1400ff559
mov cl, 0x29
nop word cs:[rax + rax]
mov al, 0xf0
lock cmpxchg byte [0x14043d58f], cl
je 0x1400ff521
cmp al, 0x67
jne 0x1400ff2a0
jmp 0x1400ff559
movzx eax, byte [0x14043d4f2]
cmp al, 0xab
je 0x1400ff599
mov cl, 0x6f
nop word [rax + rax]
mov al, 0xf8
lock cmpxchg byte [0x14043d4f2], cl
je 0x1400ff561
cmp al, 0xab
jne 0x1400ff2d0
jmp 0x1400ff599
test r9d, r9d
je 0x1400ff481
movzx eax, byte [0x14043d4b0]
cmp al, 0x37
je 0x1400ff5d9
mov cl, 0x71
nop word cs:[rax + rax]
mov al, 0x89
lock cmpxchg byte [0x14043d4b0], cl
je 0x1400ff5a1
cmp al, 0x37
jne 0x1400ff310
jmp 0x1400ff5d9
xor eax, eax
lea rcx, [0x14043d5c0]
lea rdx, [0x140361100]
nop dword [rax]
mov dword [0x1404905f0], 0
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1400ff340
mov al, 1
xchg byte [0x14043d5c2], al
lea rax, [0x14043d5c0]
ret
movzx eax, byte [0x14043d525]
cmp al, 0xd0
je 0x1400ff619
mov cl, 0xe1
nop dword [rax]
mov al, 0x70
lock cmpxchg byte [0x14043d525], cl
je 0x1400ff5e1
cmp al, 0xd0
jne 0x1400ff380
jmp 0x1400ff619
movzx eax, byte [0x14043d5b6]
cmp al, 0x89
je 0x1400ff659
mov cl, 0xbf
nop word [rax + rax]
mov al, 0x3b
lock cmpxchg byte [0x14043d5b6], cl
je 0x1400ff621
cmp al, 0x89
jne 0x1400ff3b0
jmp 0x1400ff659
xor eax, eax
lea rcx, [0x14043d570]
lea rdx, [0x1403610b0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1400ff3e0
mov al, 0x90
xchg byte [0x14043d57b], al
lea rax, [0x14043d570]
ret
xor eax, eax
lea rcx, [0x14043d5e0]
lea rdx, [0x140361120]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1400ff420
mov al, 0xaf
xchg byte [0x14043d5eb], al
lea rax, [0x14043d5e0]
ret
xor eax, eax
lea rcx, [0x14043d5d0]
lea rdx, [0x140361110]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1400ff460
mov al, 0x74
xchg byte [0x14043d5d2], al
lea rax, [0x14043d5d0]
ret
movzx eax, byte [0x14043d51c]
cmp al, 0xc7
je 0x1400ff68a
mov cl, 0x9c
mov al, 7
lock cmpxchg byte [0x14043d51c], cl
je 0x1400ff661
cmp al, 0xc7
jne 0x1400ff492
jmp 0x1400ff68a
xor eax, eax
lea rcx, [0x14043d530]
lea rdx, [0x140361070]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x1400ff4c0
mov al, 0xf4
xchg byte [0x14043d533], al
lea rax, [0x14043d530]
ret
xor eax, eax
lea rcx, [0x14043d4c0]
lea rdx, [0x140361000]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x1400ff500
mov al, 0xb4
xchg byte [0x14043d4d5], al
lea rax, [0x14043d4c0]
ret
xor eax, eax
lea rcx, [0x14043d580]
lea rdx, [0x1403610c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x1400ff540
mov al, 0x67
xchg byte [0x14043d58f], al
lea rax, [0x14043d580]
ret
xor eax, eax
lea rcx, [0x14043d4e0]
lea rdx, [0x140361020]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x1400ff580
mov al, 0xab
xchg byte [0x14043d4f2], al
lea rax, [0x14043d4e0]
ret
xor eax, eax
lea rcx, [0x14043d4a0]
lea rdx, [0x140360ff0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1400ff5c0
mov al, 0x37
xchg byte [0x14043d4b0], al
lea rax, [0x14043d4a0]
ret
xor eax, eax
lea rcx, [0x14043d520]
lea rdx, [0x140361060]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x1400ff600
mov al, 0xd0
xchg byte [0x14043d525], al
lea rax, [0x14043d520]
ret
xor eax, eax
lea rcx, [0x14043d590]
lea rdx, [0x1403610d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x1400ff640
mov al, 0x89
xchg byte [0x14043d5b6], al
lea rax, [0x14043d590]
ret
xor eax, eax
lea rcx, [0x14043d500]
lea rdx, [0x140361040]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x1400ff671
mov al, 0xc7
xchg byte [0x14043d51c], al
lea rax, [0x14043d500]
ret