Function at 0x140187a30
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x140187a7c
test edx, edx
je 0x140187acc
test r8d, r8d
je 0x140187b0c
movzx eax, byte [0x140474a74]
cmp al, 0xca
je 0x140187a74
mov cl, 8
nop word cs:[rax + rax]
mov al, 0xcc
lock cmpxchg byte [0x140474a74], cl
je 0x140187bec
cmp al, 0xca
jne 0x140187a60
lea rax, [0x140474a60]
ret
test edx, edx
je 0x140187b3c
test r8d, r8d
je 0x140187b79
test r9d, r9d
je 0x140187c21
movzx eax, byte [0x140474885]
cmp al, 0x28
je 0x140187ac4
mov cl, 0x34
nop word cs:[rax + rax]
mov al, 0x21
lock cmpxchg byte [0x140474885], cl
je 0x140187d79
cmp al, 0x28
jne 0x140187ab0
lea rax, [0x140474880]
ret
test r8d, r8d
je 0x140187bb9
movzx eax, byte [0x1404749dd]
cmp al, 0xdc
je 0x140187b04
mov cl, 0x66
nop word cs:[rax + rax]
mov al, 0xd0
lock cmpxchg byte [0x1404749dd], cl
je 0x140187c99
cmp al, 0xdc
jne 0x140187af0
lea rax, [0x1404749d0]
ret
movzx eax, byte [0x140474799]
cmp al, 0xd5
je 0x140187b34
mov cl, 0x82
nop dword [rax]
mov al, 0xc1
lock cmpxchg byte [0x140474799], cl
je 0x140187cd1
cmp al, 0xd5
jne 0x140187b20
lea rax, [0x140474790]
ret
test r8d, r8d
je 0x140187c59
test r9d, r9d
je 0x140187d11
movzx eax, byte [0x140474972]
cmp al, 0x68
je 0x140187e49
mov cl, 0x66
nop
mov al, 0xea
lock cmpxchg byte [0x140474972], cl
je 0x140187e1b
cmp al, 0x68
jne 0x140187b60
jmp 0x140187e49
test r9d, r9d
je 0x140187d49
movzx eax, byte [0x140474916]
cmp al, 0xe4
je 0x140187e89
mov cl, 0xb5
nop word cs:[rax + rax]
mov al, 0xd8
lock cmpxchg byte [0x140474916], cl
je 0x140187e51
cmp al, 0xe4
jne 0x140187ba0
jmp 0x140187e89
movzx eax, byte [0x14047487c]
cmp al, 7
je 0x140187be4
mov cl, 0x97
nop word cs:[rax + rax]
mov al, 0xa3
lock cmpxchg byte [0x14047487c], cl
je 0x140187db1
cmp al, 7
jne 0x140187bd0
lea rax, [0x140474860]
ret
xor eax, eax
lea rcx, [0x140474a60]
lea rdx, [0x140392170]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x140187c00
mov al, 0xca
xchg byte [0x140474a74], al
lea rax, [0x140474a60]
ret
movzx eax, byte [0x14047498d]
cmp al, 0x50
je 0x140187ec9
mov cl, 0x3f
nop word cs:[rax + rax]
mov al, 0x9e
lock cmpxchg byte [0x14047498d], cl
je 0x140187e91
cmp al, 0x50
jne 0x140187c40
jmp 0x140187ec9
test r9d, r9d
je 0x140187df1
movzx eax, byte [0x140474aa5]
cmp al, 0x1d
je 0x140187f09
mov cl, 0xea
nop word cs:[rax + rax]
mov al, 0xd3
lock cmpxchg byte [0x140474aa5], cl
je 0x140187ed1
cmp al, 0x1d
jne 0x140187c80
jmp 0x140187f09
xor eax, eax
lea rcx, [0x1404749d0]
lea rdx, [0x1403920e0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140187cb0
mov al, 0xdc
xchg byte [0x1404749dd], al
lea rax, [0x1404749d0]
ret
xor eax, eax
lea rcx, [0x140474790]
lea rdx, [0x140391eb0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 9
jl 0x140187cf0
mov al, 0xd5
xchg byte [0x140474799], al
lea rax, [0x140474790]
ret
movzx eax, byte [0x140474831]
cmp al, 0xdf
je 0x140187f49
mov cl, 0xd2
nop word cs:[rax + rax]
mov al, 0x1a
lock cmpxchg byte [0x140474831], cl
je 0x140187f11
cmp al, 0xdf
jne 0x140187d30
jmp 0x140187f49
movzx eax, byte [0x140474a5d]
cmp al, 0xc5
je 0x140187f89
mov cl, 0x3a
nop word [rax + rax]
mov al, 0x9d
lock cmpxchg byte [0x140474a5d], cl
je 0x140187f51
cmp al, 0xc5
jne 0x140187d60
jmp 0x140187f89
xor eax, eax
lea rcx, [0x140474880]
lea rdx, [0x140391f90]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x140187d90
mov al, 0x28
xchg byte [0x140474885], al
lea rax, [0x140474880]
ret
xor eax, eax
lea rcx, [0x140474860]
lea rdx, [0x140391f70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x140187dd0
mov al, 7
xchg byte [0x14047487c], al
lea rax, [0x140474860]
ret
movzx eax, byte [0x1404748db]
cmp al, 0x21
je 0x140187fba
mov cl, 0x13
mov al, 0xac
lock cmpxchg byte [0x1404748db], cl
je 0x140187f91
cmp al, 0x21
jne 0x140187e02
jmp 0x140187fba
xor eax, eax
lea rcx, [0x140474960]
lea rdx, [0x140392070]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x140187e30
mov al, 0x68
xchg byte [0x140474972], al
lea rax, [0x140474960]
ret
xor eax, eax
lea rcx, [0x1404748f0]
lea rdx, [0x140392000]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x140187e70
mov al, 0xe4
xchg byte [0x140474916], al
lea rax, [0x1404748f0]
ret
xor eax, eax
lea rcx, [0x140474980]
lea rdx, [0x140392090]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140187eb0
mov al, 0x50
xchg byte [0x14047498d], al
lea rax, [0x140474980]
ret
xor eax, eax
lea rcx, [0x140474a90]
lea rdx, [0x1403921a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140187ef0
mov al, 0x1d
xchg byte [0x140474aa5], al
lea rax, [0x140474a90]
ret
xor eax, eax
lea rcx, [0x140474820]
lea rdx, [0x140391f40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x140187f30
mov al, 0xdf
xchg byte [0x140474831], al
lea rax, [0x140474820]
ret
xor eax, eax
lea rcx, [0x140474a50]
lea rdx, [0x140392160]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140187f70
mov al, 0xc5
xchg byte [0x140474a5d], al
lea rax, [0x140474a50]
ret
xor eax, eax
lea rcx, [0x1404748d0]
lea rdx, [0x140391fe0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x140187fa1
mov al, 0x21
xchg byte [0x1404748db], al
lea rax, [0x1404748d0]
ret