Function at 0x140158c00
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x140158c4c
test edx, edx
je 0x140158c9c
test r8d, r8d
je 0x140158cdc
test r9d, r9d
je 0x140158d59
movzx eax, byte [0x14044627d]
cmp al, 0xf9
je 0x140158c44
mov cl, 0x63
nop dword [rax + rax]
mov al, 0xec
lock cmpxchg byte [0x14044627d], cl
je 0x140158ed9
cmp al, 0xf9
jne 0x140158c30
lea rax, [0x140446270]
ret
test edx, edx
je 0x140158d1c
test r8d, r8d
je 0x140158d8c
test r9d, r9d
je 0x140158e09
movzx eax, byte [0x1404462db]
cmp al, 0xa4
je 0x140158c94
mov cl, 6
nop word cs:[rax + rax]
mov al, 0x97
lock cmpxchg byte [0x1404462db], cl
je 0x140158fa9
cmp al, 0xa4
jne 0x140158c80
lea rax, [0x1404462c0]
ret
test r8d, r8d
je 0x140158dc9
test r9d, r9d
je 0x140158e39
movzx eax, byte [0x1404461a3]
cmp al, 0x5a
je 0x140158cd4
mov cl, 0x82
nop dword [rax + rax]
mov al, 0xc1
lock cmpxchg byte [0x1404461a3], cl
je 0x140158fe1
cmp al, 0x5a
jne 0x140158cc0
lea rax, [0x140446180]
ret
test r9d, r9d
je 0x140158e69
movzx eax, byte [0x140446130]
cmp al, 0xf
je 0x140158d14
mov cl, 0x26
nop word cs:[rax + rax]
mov al, 0x10
lock cmpxchg byte [0x140446130], cl
je 0x140159021
cmp al, 0xf
jne 0x140158d00
lea rax, [0x140446120]
ret
test r8d, r8d
je 0x140158e99
test r9d, r9d
je 0x140158f11
movzx eax, byte [0x1404463fb]
cmp al, 0xab
je 0x1401590f9
mov cl, 0x29
nop
mov al, 0x33
lock cmpxchg byte [0x1404463fb], cl
je 0x1401590cb
cmp al, 0xab
jne 0x140158d40
jmp 0x1401590f9
movzx eax, byte [0x140446325]
cmp al, 0x26
je 0x140158d84
mov cl, 0x82
nop word cs:[rax + rax]
mov al, 0x51
lock cmpxchg byte [0x140446325], cl
je 0x140159061
cmp al, 0x26
jne 0x140158d70
lea rax, [0x140446310]
ret
test r9d, r9d
je 0x140158f49
movzx eax, byte [0x140446202]
cmp al, 0xe9
je 0x140159139
mov cl, 0x60
nop word cs:[rax + rax]
mov al, 0xd0
lock cmpxchg byte [0x140446202], cl
je 0x140159101
cmp al, 0xe9
jne 0x140158db0
jmp 0x140159139
test r9d, r9d
je 0x140158f79
movzx eax, byte [0x1404460c5]
cmp al, 0xad
je 0x140159179
mov cl, 0x2c
nop word cs:[rax + rax]
mov al, 8
lock cmpxchg byte [0x1404460c5], cl
je 0x140159141
cmp al, 0xad
jne 0x140158df0
jmp 0x140159179
movzx eax, byte [0x1404462fe]
cmp al, 2
je 0x1401591b9
mov cl, 0x4a
nop word [rax + rax]
mov al, 0x9a
lock cmpxchg byte [0x1404462fe], cl
je 0x140159181
cmp al, 2
jne 0x140158e20
jmp 0x1401591b9
movzx eax, byte [0x140446212]
cmp al, 0x13
je 0x1401591f9
mov cl, 0xd8
nop word [rax + rax]
mov al, 0xd2
lock cmpxchg byte [0x140446212], cl
je 0x1401591c1
cmp al, 0x13
jne 0x140158e50
jmp 0x1401591f9
movzx eax, byte [0x1404463b1]
cmp al, 0xb1
je 0x140159239
mov cl, 0x41
nop word [rax + rax]
mov al, 0x10
lock cmpxchg byte [0x1404463b1], cl
je 0x140159201
cmp al, 0xb1
jne 0x140158e80
jmp 0x140159239
test r9d, r9d
je 0x1401590a1
movzx eax, byte [0x14044623d]
cmp al, 0xe4
je 0x140159279
mov cl, 0x1a
nop word cs:[rax + rax]
mov al, 0xd
lock cmpxchg byte [0x14044623d], cl
je 0x140159241
cmp al, 0xe4
jne 0x140158ec0
jmp 0x140159279
xor eax, eax
lea rcx, [0x140446270]
lea rdx, [0x140363080]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140158ef0
mov al, 0xf9
xchg byte [0x14044627d], al
lea rax, [0x140446270]
ret
movzx eax, byte [0x1404461cf]
cmp al, 0x60
je 0x1401592b9
mov cl, 0x9b
nop word cs:[rax + rax]
mov al, 0xa3
lock cmpxchg byte [0x1404461cf], cl
je 0x140159281
cmp al, 0x60
jne 0x140158f30
jmp 0x1401592b9
movzx eax, byte [0x14044636d]
cmp al, 0xe0
je 0x1401592f9
mov cl, 0x59
nop word [rax + rax]
mov al, 0x47
lock cmpxchg byte [0x14044636d], cl
je 0x1401592c1
cmp al, 0xe0
jne 0x140158f60
jmp 0x1401592f9
movzx eax, byte [0x1404463cd]
cmp al, 0xef
je 0x140159339
mov cl, 0x32
nop word [rax + rax]
mov al, 0x57
lock cmpxchg byte [0x1404463cd], cl
je 0x140159301
cmp al, 0xef
jne 0x140158f90
jmp 0x140159339
xor eax, eax
lea rcx, [0x1404462c0]
lea rdx, [0x1403630d0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1b
jl 0x140158fc0
mov al, 0xa4
xchg byte [0x1404462db], al
lea rax, [0x1404462c0]
ret
xor eax, eax
lea rcx, [0x140446180]
lea rdx, [0x140362f90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x140159000
mov al, 0x5a
xchg byte [0x1404461a3], al
lea rax, [0x140446180]
ret
xor eax, eax
lea rcx, [0x140446120]
lea rdx, [0x140362f40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x140159040
mov al, 0xf
xchg byte [0x140446130], al
lea rax, [0x140446120]
ret
xor eax, eax
lea rcx, [0x140446310]
lea rdx, [0x140363120]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140159080
mov al, 0x26
xchg byte [0x140446325], al
lea rax, [0x140446310]
ret
movzx eax, byte [0x1404463e1]
cmp al, 0xa8
je 0x14015936a
mov cl, 0x74
mov al, 0x65
lock cmpxchg byte [0x1404463e1], cl
je 0x140159341
cmp al, 0xa8
jne 0x1401590b2
jmp 0x14015936a
xor eax, eax
lea rcx, [0x1404463f0]
lea rdx, [0x140363200]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1401590e0
mov al, 0xab
xchg byte [0x1404463fb], al
lea rax, [0x1404463f0]
ret
xor eax, eax
lea rcx, [0x140446200]
lea rdx, [0x140363010]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140159120
mov al, 0xe9
xchg byte [0x140446202], al
lea rax, [0x140446200]
ret
xor eax, eax
lea rcx, [0x1404460b0]
lea rdx, [0x140362ed0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140159160
mov al, 0xad
xchg byte [0x1404460c5], al
lea rax, [0x1404460b0]
ret
xor eax, eax
lea rcx, [0x1404462f0]
lea rdx, [0x140363100]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x1401591a0
mov al, 2
xchg byte [0x1404462fe], al
lea rax, [0x1404462f0]
ret
xor eax, eax
lea rcx, [0x140446210]
lea rdx, [0x140363020]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1401591e0
mov al, 0x13
xchg byte [0x140446212], al
lea rax, [0x140446210]
ret
xor eax, eax
lea rcx, [0x1404463a0]
lea rdx, [0x1403631b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x140159220
mov al, 0xb1
xchg byte [0x1404463b1], al
lea rax, [0x1404463a0]
ret
xor eax, eax
lea rcx, [0x140446230]
lea rdx, [0x140363040]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140159260
mov al, 0xe4
xchg byte [0x14044623d], al
lea rax, [0x140446230]
ret
xor eax, eax
lea rcx, [0x1404461c0]
lea rdx, [0x140362fd0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x1401592a0
mov al, 0x60
xchg byte [0x1404461cf], al
lea rax, [0x1404461c0]
ret
xor eax, eax
lea rcx, [0x140446360]
lea rdx, [0x140363170]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401592e0
mov al, 0xe0
xchg byte [0x14044636d], al
lea rax, [0x140446360]
ret
xor eax, eax
lea rcx, [0x1404463c0]
lea rdx, [0x1403631d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140159320
mov al, 0xef
xchg byte [0x1404463cd], al
lea rax, [0x1404463c0]
ret
xor eax, eax
lea rcx, [0x1404463d0]
lea rdx, [0x1403631e0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x140159351
mov al, 0xa8
xchg byte [0x1404463e1], al
lea rax, [0x1404463d0]
ret