Function at 0x1403109f0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x140310a2c
test edx, edx
je 0x140310a6c
test r8d, r8d
je 0x140310aac
movzx eax, byte [0x1404d63f5]
cmp al, 0x96
je 0x140310a24
mov cl, 0x1b
nop
mov al, 0xf2
lock cmpxchg byte [0x1404d63f5], cl
je 0x140310b8c
cmp al, 0x96
jne 0x140310a10
lea rax, [0x1404d63f0]
ret
test edx, edx
je 0x140310adc
test r8d, r8d
je 0x140310b19
movzx eax, byte [0x1404d64bb]
cmp al, 0xb5
je 0x140310a64
mov cl, 0xdf
nop word [rax + rax]
mov al, 0xbc
lock cmpxchg byte [0x1404d64bb], cl
je 0x140310bf9
cmp al, 0xb5
jne 0x140310a50
lea rax, [0x1404d64b0]
ret
test r8d, r8d
je 0x140310b59
movzx eax, byte [0x1404d6492]
cmp al, 0x73
je 0x140310aa4
mov cl, 0xde
nop word cs:[rax + rax]
mov al, 0x6a
lock cmpxchg byte [0x1404d6492], cl
je 0x140310c31
cmp al, 0x73
jne 0x140310a90
lea rax, [0x1404d6490]
ret
movzx eax, byte [0x1404d64a2]
cmp al, 0x14
je 0x140310ad4
mov cl, 0xe6
nop dword [rax]
mov al, 0x17
lock cmpxchg byte [0x1404d64a2], cl
je 0x140310c71
cmp al, 0x14
jne 0x140310ac0
lea rax, [0x1404d64a0]
ret
test r8d, r8d
je 0x140310bc1
test r9d, r9d
je 0x140310cb1
movzx eax, byte [0x1404d644b]
cmp al, 0x7a
je 0x140310da9
mov cl, 0xcb
nop
mov al, 0x46
lock cmpxchg byte [0x1404d644b], cl
je 0x140310d7b
cmp al, 0x7a
jne 0x140310b00
jmp 0x140310da9
test r9d, r9d
je 0x140310ce9
movzx eax, byte [0x1404d645f]
cmp al, 0xd0
je 0x140310de9
mov cl, 0xfb
nop word cs:[rax + rax]
mov al, 0xc0
lock cmpxchg byte [0x1404d645f], cl
je 0x140310db1
cmp al, 0xd0
jne 0x140310b40
jmp 0x140310de9
movzx eax, byte [0x1404d6433]
cmp al, 0x45
je 0x140310b84
mov cl, 0xe9
nop word cs:[rax + rax]
mov al, 0x90
lock cmpxchg byte [0x1404d6433], cl
je 0x140310d19
cmp al, 0x45
jne 0x140310b70
lea rax, [0x1404d6410]
ret
xor eax, eax
lea rcx, [0x1404d63f0]
lea rdx, [0x1403e4e30]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x140310ba0
mov al, 0x96
xchg byte [0x1404d63f5], al
lea rax, [0x1404d63f0]
ret
test r9d, r9d
je 0x140310d51
movzx eax, byte [0x1404d6486]
cmp al, 0x82
je 0x140310e29
mov cl, 0x18
nop dword [rax + rax]
mov al, 0x9e
lock cmpxchg byte [0x1404d6486], cl
je 0x140310df1
cmp al, 0x82
jne 0x140310be0
jmp 0x140310e29
xor eax, eax
lea rcx, [0x1404d64b0]
lea rdx, [0x1403e4ef0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x140310c10
mov al, 0xb5
xchg byte [0x1404d64bb], al
lea rax, [0x1404d64b0]
ret
xor eax, eax
lea rcx, [0x1404d6490]
lea rdx, [0x1403e4ed0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140310c50
mov al, 0x73
xchg byte [0x1404d6492], al
lea rax, [0x1404d6490]
ret
xor eax, eax
lea rcx, [0x1404d64a0]
lea rdx, [0x1403e4ee0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140310c90
mov al, 0x14
xchg byte [0x1404d64a2], al
lea rax, [0x1404d64a0]
ret
movzx eax, byte [0x1404d6403]
cmp al, 0xae
je 0x140310e69
mov cl, 0x2a
nop word cs:[rax + rax]
mov al, 0xfd
lock cmpxchg byte [0x1404d6403], cl
je 0x140310e31
cmp al, 0xae
jne 0x140310cd0
jmp 0x140310e69
movzx eax, byte [0x1404d63ec]
cmp al, 0x77
je 0x140310ea9
mov cl, 0x71
nop word [rax + rax]
mov al, 0xa7
lock cmpxchg byte [0x1404d63ec], cl
je 0x140310e71
cmp al, 0x77
jne 0x140310d00
jmp 0x140310ea9
xor eax, eax
lea rcx, [0x1404d6410]
lea rdx, [0x1403e4e50]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x140310d30
mov al, 0x45
xchg byte [0x1404d6433], al
lea rax, [0x1404d6410]
ret
movzx eax, byte [0x1404d63c2]
cmp al, 0xb3
je 0x140310eda
mov cl, 0x73
mov al, 0x36
lock cmpxchg byte [0x1404d63c2], cl
je 0x140310eb1
cmp al, 0xb3
jne 0x140310d62
jmp 0x140310eda
xor eax, eax
lea rcx, [0x1404d6440]
lea rdx, [0x1403e4e80]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x140310d90
mov al, 0x7a
xchg byte [0x1404d644b], al
lea rax, [0x1404d6440]
ret
xor eax, eax
lea rcx, [0x1404d6450]
lea rdx, [0x1403e4e90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x140310dd0
mov al, 0xd0
xchg byte [0x1404d645f], al
lea rax, [0x1404d6450]
ret
xor eax, eax
lea rcx, [0x1404d6460]
lea rdx, [0x1403e4ea0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x140310e10
mov al, 0x82
xchg byte [0x1404d6486], al
lea rax, [0x1404d6460]
ret
xor eax, eax
lea rcx, [0x1404d6400]
lea rdx, [0x1403e4e40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x140310e50
mov al, 0xae
xchg byte [0x1404d6403], al
lea rax, [0x1404d6400]
ret
xor eax, eax
lea rcx, [0x1404d63d0]
lea rdx, [0x1403e4e10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x140310e90
mov al, 0x77
xchg byte [0x1404d63ec], al
lea rax, [0x1404d63d0]
ret
xor eax, eax
lea rcx, [0x1404d63c0]
lea rdx, [0x1403e4e00]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140310ec1
mov al, 0xb3
xchg byte [0x1404d63c2], al
lea rax, [0x1404d63c0]
ret