Function at 0x14012f450
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x14012f49c
test edx, edx
je 0x14012f4ec
test r8d, r8d
je 0x14012f52c
test r9d, r9d
je 0x14012f5a9
movzx eax, byte [0x140442513]
cmp al, 0xd0
je 0x14012f494
mov cl, 0xec
nop dword [rax + rax]
mov al, 0x61
lock cmpxchg byte [0x140442513], cl
je 0x14012f729
cmp al, 0xd0
jne 0x14012f480
lea rax, [0x140442510]
ret
test edx, edx
je 0x14012f56c
test r8d, r8d
je 0x14012f5dc
test r9d, r9d
je 0x14012f659
movzx eax, byte [0x1404424d5]
cmp al, 0x56
je 0x14012f4e4
mov cl, 0x90
nop word cs:[rax + rax]
mov al, 0xdb
lock cmpxchg byte [0x1404424d5], cl
je 0x14012f7f9
cmp al, 0x56
jne 0x14012f4d0
lea rax, [0x1404424c0]
ret
test r8d, r8d
je 0x14012f619
test r9d, r9d
je 0x14012f689
movzx eax, byte [0x140442626]
cmp al, 0xf8
je 0x14012f524
mov cl, 0xa3
nop dword [rax + rax]
mov al, 0xdf
lock cmpxchg byte [0x140442626], cl
je 0x14012f831
cmp al, 0xf8
jne 0x14012f510
lea rax, [0x140442600]
ret
test r9d, r9d
je 0x14012f6b9
movzx eax, byte [0x140442566]
cmp al, 0xc9
je 0x14012f564
mov cl, 0x1a
nop word cs:[rax + rax]
mov al, 0xd6
lock cmpxchg byte [0x140442566], cl
je 0x14012f871
cmp al, 0xc9
jne 0x14012f550
lea rax, [0x140442560]
ret
test r8d, r8d
je 0x14012f6e9
test r9d, r9d
je 0x14012f761
movzx eax, byte [0x14044268b]
cmp al, 0x58
je 0x14012f949
mov cl, 0x79
nop
mov al, 0x51
lock cmpxchg byte [0x14044268b], cl
je 0x14012f91b
cmp al, 0x58
jne 0x14012f590
jmp 0x14012f949
movzx eax, byte [0x140442530]
cmp al, 0x7b
je 0x14012f5d4
mov cl, 0xf3
nop word cs:[rax + rax]
mov al, 0x9b
lock cmpxchg byte [0x140442530], cl
je 0x14012f8b1
cmp al, 0x7b
jne 0x14012f5c0
lea rax, [0x140442520]
ret
test r9d, r9d
je 0x14012f799
movzx eax, byte [0x1404425ff]
cmp al, 0xea
je 0x14012f989
mov cl, 0x99
nop word cs:[rax + rax]
mov al, 0x97
lock cmpxchg byte [0x1404425ff], cl
je 0x14012f951
cmp al, 0xea
jne 0x14012f600
jmp 0x14012f989
test r9d, r9d
je 0x14012f7c9
movzx eax, byte [0x14044269c]
cmp al, 0x5f
je 0x14012f9c9
mov cl, 0x63
nop word cs:[rax + rax]
mov al, 0xcf
lock cmpxchg byte [0x14044269c], cl
je 0x14012f991
cmp al, 0x5f
jne 0x14012f640
jmp 0x14012f9c9
movzx eax, byte [0x1404424b6]
cmp al, 0x23
je 0x14012fa09
mov cl, 0x4c
nop word [rax + rax]
mov al, 0x64
lock cmpxchg byte [0x1404424b6], cl
je 0x14012f9d1
cmp al, 0x23
jne 0x14012f670
jmp 0x14012fa09
movzx eax, byte [0x14044241e]
cmp al, 0xe
je 0x14012fa49
mov cl, 0x1c
nop word [rax + rax]
mov al, 0xc0
lock cmpxchg byte [0x14044241e], cl
je 0x14012fa11
cmp al, 0xe
jne 0x14012f6a0
jmp 0x14012fa49
movzx eax, byte [0x140442506]
cmp al, 0x1a
je 0x14012fa89
mov cl, 0xfc
nop word [rax + rax]
mov al, 0xbb
lock cmpxchg byte [0x140442506], cl
je 0x14012fa51
cmp al, 0x1a
jne 0x14012f6d0
jmp 0x14012fa89
test r9d, r9d
je 0x14012f8f1
movzx eax, byte [0x140442642]
cmp al, 0x3e
je 0x14012fac9
mov cl, 0x8b
nop word cs:[rax + rax]
mov al, 0xd0
lock cmpxchg byte [0x140442642], cl
je 0x14012fa91
cmp al, 0x3e
jne 0x14012f710
jmp 0x14012fac9
xor eax, eax
lea rcx, [0x140442510]
lea rdx, [0x140361e90]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x14012f740
mov al, 0xd0
xchg byte [0x140442513], al
lea rax, [0x140442510]
ret
movzx eax, byte [0x140442478]
cmp al, 0xaf
je 0x14012fb09
mov cl, 0x8c
nop word cs:[rax + rax]
mov al, 0xe2
lock cmpxchg byte [0x140442478], cl
je 0x14012fad1
cmp al, 0xaf
jne 0x14012f780
jmp 0x14012fb09
movzx eax, byte [0x1404425a3]
cmp al, 0x82
je 0x14012fb49
mov cl, 0x5f
nop word [rax + rax]
mov al, 0xe3
lock cmpxchg byte [0x1404425a3], cl
je 0x14012fb11
cmp al, 0x82
jne 0x14012f7b0
jmp 0x14012fb49
movzx eax, byte [0x1404425eb]
cmp al, 0xc7
je 0x14012fb89
mov cl, 0xfa
nop word [rax + rax]
mov al, 0xff
lock cmpxchg byte [0x1404425eb], cl
je 0x14012fb51
cmp al, 0xc7
jne 0x14012f7e0
jmp 0x14012fb89
xor eax, eax
lea rcx, [0x1404424c0]
lea rdx, [0x140361e40]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x14012f810
mov al, 0x56
xchg byte [0x1404424d5], al
lea rax, [0x1404424c0]
ret
xor eax, eax
lea rcx, [0x140442600]
lea rdx, [0x140361fb0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x14012f850
mov al, 0xf8
xchg byte [0x140442626], al
lea rax, [0x140442600]
ret
xor eax, eax
lea rcx, [0x140442560]
lea rdx, [0x140361ed0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x14012f890
mov al, 0xc9
xchg byte [0x140442566], al
lea rax, [0x140442560]
ret
xor eax, eax
lea rcx, [0x140442520]
lea rdx, [0x140361ea0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x14012f8d0
mov al, 0x7b
xchg byte [0x140442530], al
lea rax, [0x140442520]
ret
movzx eax, byte [0x140442632]
cmp al, 0x2e
je 0x14012fbba
mov cl, 0xfd
mov al, 0x47
lock cmpxchg byte [0x140442632], cl
je 0x14012fb91
cmp al, 0x2e
jne 0x14012f902
jmp 0x14012fbba
xor eax, eax
lea rcx, [0x140442680]
lea rdx, [0x140362030]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x14012f930
mov al, 0x58
xchg byte [0x14044268b], al
lea rax, [0x140442680]
ret
xor eax, eax
lea rcx, [0x1404425f0]
lea rdx, [0x140361fa0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x14012f970
mov al, 0xea
xchg byte [0x1404425ff], al
lea rax, [0x1404425f0]
ret
xor eax, eax
lea rcx, [0x140442690]
lea rdx, [0x140362040]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x14012f9b0
mov al, 0x5f
xchg byte [0x14044269c], al
lea rax, [0x140442690]
ret
xor eax, eax
lea rcx, [0x1404424a0]
lea rdx, [0x140361e20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x16
jl 0x14012f9f0
mov al, 0x23
xchg byte [0x1404424b6], al
lea rax, [0x1404424a0]
ret
xor eax, eax
lea rcx, [0x140442410]
lea rdx, [0x140361da0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x14012fa30
mov al, 0xe
xchg byte [0x14044241e], al
lea rax, [0x140442410]
ret
xor eax, eax
lea rcx, [0x1404424f0]
lea rdx, [0x140361e70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x16
jl 0x14012fa70
mov al, 0x1a
xchg byte [0x140442506], al
lea rax, [0x1404424f0]
ret
xor eax, eax
lea rcx, [0x140442640]
lea rdx, [0x140361ff0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x14012fab0
mov al, 0x3e
xchg byte [0x140442642], al
lea rax, [0x140442640]
ret
xor eax, eax
lea rcx, [0x140442460]
lea rdx, [0x140361de0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x14012faf0
mov al, 0xaf
xchg byte [0x140442478], al
lea rax, [0x140442460]
ret
xor eax, eax
lea rcx, [0x1404425a0]
lea rdx, [0x140361f50]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x14012fb30
mov al, 0x82
xchg byte [0x1404425a3], al
lea rax, [0x1404425a0]
ret
xor eax, eax
lea rcx, [0x1404425e0]
lea rdx, [0x140361f90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x14012fb70
mov al, 0xc7
xchg byte [0x1404425eb], al
lea rax, [0x1404425e0]
ret
xor eax, eax
lea rcx, [0x140442630]
lea rdx, [0x140361fe0]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x14012fba1
mov al, 0x2e
xchg byte [0x140442632], al
lea rax, [0x140442630]
ret