Function at 0x1402b2bd0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x1402b2c1c
test edx, edx
je 0x1402b2c6c
test r8d, r8d
je 0x1402b2cac
movzx eax, byte [0x140477f72]
cmp al, 0xec
je 0x1402b2c14
mov cl, 0xa4
nop word cs:[rax + rax]
mov al, 0x7c
lock cmpxchg byte [0x140477f72], cl
je 0x1402b2d8c
cmp al, 0xec
jne 0x1402b2c00
lea rax, [0x140477f70]
ret
test edx, edx
je 0x1402b2cdc
test r8d, r8d
je 0x1402b2d19
test r9d, r9d
je 0x1402b2dc1
movzx eax, byte [0x140478036]
cmp al, 0x80
je 0x1402b2c64
mov cl, 4
nop word cs:[rax + rax]
mov al, 0x91
lock cmpxchg byte [0x140478036], cl
je 0x1402b2f09
cmp al, 0x80
jne 0x1402b2c50
lea rax, [0x140478010]
ret
test r8d, r8d
je 0x1402b2d59
movzx eax, byte [0x14047806b]
cmp al, 0xe0
je 0x1402b2ca4
mov cl, 0xfc
nop word cs:[rax + rax]
mov al, 0x66
lock cmpxchg byte [0x14047806b], cl
je 0x1402b2e29
cmp al, 0xe0
jne 0x1402b2c90
lea rax, [0x140478060]
ret
movzx eax, byte [0x140477fa5]
cmp al, 0x77
je 0x1402b2cd4
mov cl, 0xa8
nop dword [rax]
mov al, 0xdd
lock cmpxchg byte [0x140477fa5], cl
je 0x1402b2e61
cmp al, 0x77
jne 0x1402b2cc0
lea rax, [0x140477fa0]
ret
test r8d, r8d
je 0x1402b2df9
test r9d, r9d
je 0x1402b2ea1
movzx eax, byte [0x140477fb3]
cmp al, 0xb
je 0x1402b2fb9
mov cl, 0x13
nop
mov al, 0x87
lock cmpxchg byte [0x140477fb3], cl
je 0x1402b2f81
cmp al, 0xb
jne 0x1402b2d00
jmp 0x1402b2fb9
test r9d, r9d
je 0x1402b2ed9
movzx eax, byte [0x14047800f]
cmp al, 0xe8
je 0x1402b2ff9
mov cl, 0x26
nop word cs:[rax + rax]
mov al, 0x13
lock cmpxchg byte [0x14047800f], cl
je 0x1402b2fc1
cmp al, 0xe8
jne 0x1402b2d40
jmp 0x1402b2ff9
movzx eax, byte [0x140478052]
cmp al, 0x10
je 0x1402b2d84
mov cl, 0x43
nop word cs:[rax + rax]
mov al, 0x1c
lock cmpxchg byte [0x140478052], cl
je 0x1402b2f41
cmp al, 0x10
jne 0x1402b2d70
lea rax, [0x140478050]
ret
xor eax, eax
lea rcx, [0x140477f70]
lea rdx, [0x1403879f0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1402b2da0
mov al, 0xec
xchg byte [0x140477f72], al
lea rax, [0x140477f70]
ret
movzx eax, byte [0x140477f9c]
cmp al, 0xda
je 0x1402b3039
mov cl, 0x5e
nop word cs:[rax + rax]
mov al, 0x36
lock cmpxchg byte [0x140477f9c], cl
je 0x1402b3001
cmp al, 0xda
jne 0x1402b2de0
jmp 0x1402b3039
movzx eax, byte [0x140478042]
cmp al, 0x9c
je 0x1402b3079
mov cl, 0xad
nop word [rax + rax]
mov al, 0x1b
lock cmpxchg byte [0x140478042], cl
je 0x1402b3041
cmp al, 0x9c
jne 0x1402b2e10
jmp 0x1402b3079
xor eax, eax
lea rcx, [0x140478060]
lea rdx, [0x140387ae0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1402b2e40
mov al, 0xe0
xchg byte [0x14047806b], al
lea rax, [0x140478060]
ret
xor eax, eax
lea rcx, [0x140477fa0]
lea rdx, [0x140387a20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x1402b2e80
mov al, 0x77
xchg byte [0x140477fa5], al
lea rax, [0x140477fa0]
ret
movzx eax, byte [0x140477fe3]
cmp al, 0xb0
je 0x1402b30b9
mov cl, 0x49
nop word cs:[rax + rax]
mov al, 0x36
lock cmpxchg byte [0x140477fe3], cl
je 0x1402b3081
cmp al, 0xb0
jne 0x1402b2ec0
jmp 0x1402b30b9
movzx eax, byte [0x140477ffb]
cmp al, 3
je 0x1402b30f9
mov cl, 0x82
nop word [rax + rax]
mov al, 0xbe
lock cmpxchg byte [0x140477ffb], cl
je 0x1402b30c1
cmp al, 3
jne 0x1402b2ef0
jmp 0x1402b30f9
xor eax, eax
lea rcx, [0x140478010]
lea rdx, [0x140387a90]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x1402b2f20
mov al, 0x80
xchg byte [0x140478036], al
lea rax, [0x140478010]
ret
xor eax, eax
lea rcx, [0x140478050]
lea rdx, [0x140387ad0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1402b2f60
mov al, 0x10
xchg byte [0x140478052], al
lea rax, [0x140478050]
ret
xor eax, eax
lea rcx, [0x140477fb0]
lea rdx, [0x140387a30]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x1402b2fa0
mov al, 0xb
xchg byte [0x140477fb3], al
lea rax, [0x140477fb0]
ret
xor eax, eax
lea rcx, [0x140478000]
lea rdx, [0x140387a80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x1402b2fe0
mov al, 0xe8
xchg byte [0x14047800f], al
lea rax, [0x140478000]
ret
xor eax, eax
lea rcx, [0x140477f80]
lea rdx, [0x140387a00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x1402b3020
mov al, 0xda
xchg byte [0x140477f9c], al
lea rax, [0x140477f80]
ret
xor eax, eax
lea rcx, [0x140478040]
lea rdx, [0x140387ac0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1402b3060
mov al, 0x9c
xchg byte [0x140478042], al
lea rax, [0x140478040]
ret
xor eax, eax
lea rcx, [0x140477fc0]
lea rdx, [0x140387a40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x1402b30a0
mov al, 0xb0
xchg byte [0x140477fe3], al
lea rax, [0x140477fc0]
ret
xor eax, eax
lea rcx, [0x140477ff0]
lea rdx, [0x140387a70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1402b30e0
mov al, 3
xchg byte [0x140477ffb], al
lea rax, [0x140477ff0]
ret