Function at 0x140114010
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x14011405c
test edx, edx
je 0x1401140ac
test r8d, r8d
je 0x1401140ec
test r9d, r9d
je 0x140114169
movzx eax, byte [0x140467873]
cmp al, 0xf3
je 0x140114054
mov cl, 0xfe
nop dword [rax + rax]
mov al, 0xc
lock cmpxchg byte [0x140467873], cl
je 0x1401142e9
cmp al, 0xf3
jne 0x140114040
lea rax, [0x140467870]
ret
test edx, edx
je 0x14011412c
test r8d, r8d
je 0x14011419c
test r9d, r9d
je 0x140114219
movzx eax, byte [0x1404678cf]
cmp al, 0xe4
je 0x1401140a4
mov cl, 0xaf
nop word cs:[rax + rax]
mov al, 0xb2
lock cmpxchg byte [0x1404678cf], cl
je 0x1401143b9
cmp al, 0xe4
jne 0x140114090
lea rax, [0x1404678c0]
ret
test r8d, r8d
je 0x1401141d9
test r9d, r9d
je 0x140114249
movzx eax, byte [0x1404678bb]
cmp al, 0xbd
je 0x1401140e4
mov cl, 0xe6
nop dword [rax + rax]
mov al, 0x50
lock cmpxchg byte [0x1404678bb], cl
je 0x1401143f1
cmp al, 0xbd
jne 0x1401140d0
lea rax, [0x1404678b0]
ret
test r9d, r9d
je 0x140114279
movzx eax, byte [0x140467805]
cmp al, 0xb9
je 0x140114124
mov cl, 0x19
nop word cs:[rax + rax]
mov al, 0x1b
lock cmpxchg byte [0x140467805], cl
je 0x140114431
cmp al, 0xb9
jne 0x140114110
lea rax, [0x1404677f0]
ret
test r8d, r8d
je 0x1401142a9
test r9d, r9d
je 0x140114321
movzx eax, byte [0x14046792b]
cmp al, 0x26
je 0x140114509
mov cl, 0xef
nop
mov al, 0xa1
lock cmpxchg byte [0x14046792b], cl
je 0x1401144db
cmp al, 0x26
jne 0x140114150
jmp 0x140114509
movzx eax, byte [0x140467912]
cmp al, 0x34
je 0x140114194
mov cl, 0x68
nop word cs:[rax + rax]
mov al, 0xf9
lock cmpxchg byte [0x140467912], cl
je 0x140114471
cmp al, 0x34
jne 0x140114180
lea rax, [0x140467910]
ret
test r9d, r9d
je 0x140114359
movzx eax, byte [0x140467822]
cmp al, 0xb6
je 0x140114549
mov cl, 0xd5
nop word cs:[rax + rax]
mov al, 0xd0
lock cmpxchg byte [0x140467822], cl
je 0x140114511
cmp al, 0xb6
jne 0x1401141c0
jmp 0x140114549
test r9d, r9d
je 0x140114389
movzx eax, byte [0x1404678f6]
cmp al, 0xe8
je 0x140114589
mov cl, 0xc7
nop word cs:[rax + rax]
mov al, 0x12
lock cmpxchg byte [0x1404678f6], cl
je 0x140114551
cmp al, 0xe8
jne 0x140114200
jmp 0x140114589
movzx eax, byte [0x14046793d]
cmp al, 0xbc
je 0x1401145c9
mov cl, 0xcc
nop word [rax + rax]
mov al, 0x13
lock cmpxchg byte [0x14046793d], cl
je 0x140114591
cmp al, 0xbc
jne 0x140114230
jmp 0x1401145c9
movzx eax, byte [0x140467865]
cmp al, 0xc0
je 0x140114609
mov cl, 0xc1
nop word [rax + rax]
mov al, 0x37
lock cmpxchg byte [0x140467865], cl
je 0x1401145d1
cmp al, 0xc0
jne 0x140114260
jmp 0x140114609
movzx eax, byte [0x14046785c]
cmp al, 0x5e
je 0x140114649
mov cl, 0x6e
nop word [rax + rax]
mov al, 0xaa
lock cmpxchg byte [0x14046785c], cl
je 0x140114611
cmp al, 0x5e
jne 0x140114290
jmp 0x140114649
test r9d, r9d
je 0x1401144b1
movzx eax, byte [0x14046783e]
cmp al, 0xdf
je 0x140114689
mov cl, 0x1f
nop word cs:[rax + rax]
mov al, 0xc7
lock cmpxchg byte [0x14046783e], cl
je 0x140114651
cmp al, 0xdf
jne 0x1401142d0
jmp 0x140114689
xor eax, eax
lea rcx, [0x140467870]
lea rdx, [0x14038d500]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x140114300
mov al, 0xf3
xchg byte [0x140467873], al
lea rax, [0x140467870]
ret
movzx eax, byte [0x1404677e0]
cmp al, 0xe4
je 0x1401146c9
mov cl, 0x66
nop word cs:[rax + rax]
mov al, 0xdf
lock cmpxchg byte [0x1404677e0], cl
je 0x140114691
cmp al, 0xe4
jne 0x140114340
jmp 0x1401146c9
movzx eax, byte [0x1404678a3]
cmp al, 0x57
je 0x140114709
mov cl, 0x53
nop word [rax + rax]
mov al, 0xff
lock cmpxchg byte [0x1404678a3], cl
je 0x1401146d1
cmp al, 0x57
jne 0x140114370
jmp 0x140114709
movzx eax, byte [0x140467902]
cmp al, 0x60
je 0x140114749
mov cl, 0xe9
nop word [rax + rax]
mov al, 0x5e
lock cmpxchg byte [0x140467902], cl
je 0x140114711
cmp al, 0x60
jne 0x1401143a0
jmp 0x140114749
xor eax, eax
lea rcx, [0x1404678c0]
lea rdx, [0x14038d550]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x1401143d0
mov al, 0xe4
xchg byte [0x1404678cf], al
lea rax, [0x1404678c0]
ret
xor eax, eax
lea rcx, [0x1404678b0]
lea rdx, [0x14038d540]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x140114410
mov al, 0xbd
xchg byte [0x1404678bb], al
lea rax, [0x1404678b0]
ret
xor eax, eax
lea rcx, [0x1404677f0]
lea rdx, [0x14038d480]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140114450
mov al, 0xb9
xchg byte [0x140467805], al
lea rax, [0x1404677f0]
ret
xor eax, eax
lea rcx, [0x140467910]
lea rdx, [0x14038d5a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140114490
mov al, 0x34
xchg byte [0x140467912], al
lea rax, [0x140467910]
ret
movzx eax, byte [0x140467953]
cmp al, 0xf4
je 0x14011477a
mov cl, 0x10
mov al, 0x77
lock cmpxchg byte [0x140467953], cl
je 0x140114751
cmp al, 0xf4
jne 0x1401144c2
jmp 0x14011477a
xor eax, eax
lea rcx, [0x140467920]
lea rdx, [0x14038d5b0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1401144f0
mov al, 0x26
xchg byte [0x14046792b], al
lea rax, [0x140467920]
ret
xor eax, eax
lea rcx, [0x140467810]
lea rdx, [0x14038d4a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x140114530
mov al, 0xb6
xchg byte [0x140467822], al
lea rax, [0x140467810]
ret
xor eax, eax
lea rcx, [0x1404678d0]
lea rdx, [0x14038d560]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x140114570
mov al, 0xe8
xchg byte [0x1404678f6], al
lea rax, [0x1404678d0]
ret
xor eax, eax
lea rcx, [0x140467930]
lea rdx, [0x14038d5c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401145b0
mov al, 0xbc
xchg byte [0x14046793d], al
lea rax, [0x140467930]
ret
xor eax, eax
lea rcx, [0x140467860]
lea rdx, [0x14038d4f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x1401145f0
mov al, 0xc0
xchg byte [0x140467865], al
lea rax, [0x140467860]
ret
xor eax, eax
lea rcx, [0x140467840]
lea rdx, [0x14038d4d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x140114630
mov al, 0x5e
xchg byte [0x14046785c], al
lea rax, [0x140467840]
ret
xor eax, eax
lea rcx, [0x140467830]
lea rdx, [0x14038d4c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x140114670
mov al, 0xdf
xchg byte [0x14046783e], al
lea rax, [0x140467830]
ret
xor eax, eax
lea rcx, [0x1404677d0]
lea rdx, [0x14038d470]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1401146b0
mov al, 0xe4
xchg byte [0x1404677e0], al
lea rax, [0x1404677d0]
ret
xor eax, eax
lea rcx, [0x140467880]
lea rdx, [0x14038d510]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x1401146f0
mov al, 0x57
xchg byte [0x1404678a3], al
lea rax, [0x140467880]
ret
xor eax, eax
lea rcx, [0x140467900]
lea rdx, [0x14038d590]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140114730
mov al, 0x60
xchg byte [0x140467902], al
lea rax, [0x140467900]
ret
xor eax, eax
lea rcx, [0x140467940]
lea rdx, [0x14038d5d0]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x140114761
mov al, 0xf4
xchg byte [0x140467953], al
lea rax, [0x140467940]
ret