Function at 0x140157fd0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x14015801c
test edx, edx
je 0x14015806c
test r8d, r8d
je 0x1401580ac
test r9d, r9d
je 0x140158129
movzx eax, byte [0x14044622b]
cmp al, 0xc7
je 0x140158014
mov cl, 0xa7
nop dword [rax + rax]
mov al, 0xdc
lock cmpxchg byte [0x14044622b], cl
je 0x140158269
cmp al, 0xc7
jne 0x140158000
lea rax, [0x140446220]
ret
test edx, edx
je 0x1401580ec
test r8d, r8d
je 0x14015815c
test r9d, r9d
je 0x1401581cc
movzx eax, byte [0x14044606c]
cmp al, 0x7c
je 0x140158064
mov cl, 0xd1
nop word cs:[rax + rax]
mov al, 0x12
lock cmpxchg byte [0x14044606c], cl
je 0x140158349
cmp al, 0x7c
jne 0x140158050
lea rax, [0x140446060]
ret
test r8d, r8d
je 0x140158199
movzx eax, byte [0x14044628d]
cmp al, 8
je 0x1401580a4
mov cl, 0xb
nop word cs:[rax + rax]
mov al, 0x2e
lock cmpxchg byte [0x14044628d], cl
je 0x1401582a1
cmp al, 8
jne 0x140158090
lea rax, [0x140446280]
ret
test r9d, r9d
je 0x1401581f9
movzx eax, byte [0x14044605c]
cmp al, 0x2c
je 0x1401580e4
mov cl, 0xd2
nop word cs:[rax + rax]
mov al, 0x6f
lock cmpxchg byte [0x14044605c], cl
je 0x140158381
cmp al, 0x2c
jne 0x1401580d0
lea rax, [0x140446050]
ret
test r8d, r8d
je 0x140158229
test r9d, r9d
je 0x1401582e1
movzx eax, byte [0x1404462a4]
cmp al, 0xbc
je 0x140158499
mov cl, 0xc9
nop
mov al, 0x2d
lock cmpxchg byte [0x1404462a4], cl
je 0x14015846b
cmp al, 0xbc
jne 0x140158110
jmp 0x140158499
movzx eax, byte [0x14044639d]
cmp al, 0xe5
je 0x140158154
mov cl, 0xe0
nop word cs:[rax + rax]
mov al, 0x41
lock cmpxchg byte [0x14044639d], cl
je 0x1401583c1
cmp al, 0xe5
jne 0x140158140
lea rax, [0x140446390]
ret
test r9d, r9d
je 0x140158319
movzx eax, byte [0x1404460ad]
cmp al, 0xe
je 0x1401584d9
mov cl, 0xc0
nop word cs:[rax + rax]
mov al, 0x44
lock cmpxchg byte [0x1404460ad], cl
je 0x1401584a1
cmp al, 0xe
jne 0x140158180
jmp 0x1401584d9
movzx eax, byte [0x140446173]
cmp al, 0xc1
je 0x1401581c4
mov cl, 0xb2
nop word cs:[rax + rax]
mov al, 0xe8
lock cmpxchg byte [0x140446173], cl
je 0x140158401
cmp al, 0xc1
jne 0x1401581b0
lea rax, [0x140446170]
ret
movzx eax, byte [0x14044630d]
cmp al, 0x5d
je 0x140158519
mov cl, 0xdf
nop dword [rax]
mov al, 0x6d
lock cmpxchg byte [0x14044630d], cl
je 0x1401584e1
cmp al, 0x5d
jne 0x1401581e0
jmp 0x140158519
movzx eax, byte [0x1404460fe]
cmp al, 0x58
je 0x140158559
mov cl, 0x3c
nop word [rax + rax]
mov al, 0x50
lock cmpxchg byte [0x1404460fe], cl
je 0x140158521
cmp al, 0x58
jne 0x140158210
jmp 0x140158559
test r9d, r9d
je 0x140158441
movzx eax, byte [0x1404460e2]
cmp al, 0x13
je 0x140158599
mov cl, 0x7b
nop word cs:[rax + rax]
mov al, 0xb3
lock cmpxchg byte [0x1404460e2], cl
je 0x140158561
cmp al, 0x13
jne 0x140158250
jmp 0x140158599
xor eax, eax
lea rcx, [0x140446220]
lea rdx, [0x140363030]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x140158280
mov al, 0xc7
xchg byte [0x14044622b], al
lea rax, [0x140446220]
ret
xor eax, eax
lea rcx, [0x140446280]
lea rdx, [0x140363090]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401582c0
mov al, 8
xchg byte [0x14044628d], al
lea rax, [0x140446280]
ret
movzx eax, byte [0x14044608a]
cmp al, 0xd8
je 0x1401585d9
mov cl, 0xf
nop word cs:[rax + rax]
mov al, 6
lock cmpxchg byte [0x14044608a], cl
je 0x1401585a1
cmp al, 0xd8
jne 0x140158300
jmp 0x1401585d9
movzx eax, byte [0x1404462ed]
cmp al, 0x61
je 0x140158619
mov cl, 0x9f
nop word [rax + rax]
mov al, 0x52
lock cmpxchg byte [0x1404462ed], cl
je 0x1401585e1
cmp al, 0x61
jne 0x140158330
jmp 0x140158619
xor eax, eax
lea rcx, [0x140446060]
lea rdx, [0x140362e80]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x140158360
mov al, 0x7c
xchg byte [0x14044606c], al
lea rax, [0x140446060]
ret
xor eax, eax
lea rcx, [0x140446050]
lea rdx, [0x140362e70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x1401583a0
mov al, 0x2c
xchg byte [0x14044605c], al
lea rax, [0x140446050]
ret
xor eax, eax
lea rcx, [0x140446390]
lea rdx, [0x1403631a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401583e0
mov al, 0xe5
xchg byte [0x14044639d], al
lea rax, [0x140446390]
ret
xor eax, eax
lea rcx, [0x140446170]
lea rdx, [0x140362f80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x140158420
mov al, 0xc1
xchg byte [0x140446173], al
lea rax, [0x140446170]
ret
movzx eax, byte [0x14044640f]
cmp al, 0xa
je 0x14015864a
mov cl, 0x42
mov al, 0x8b
lock cmpxchg byte [0x14044640f], cl
je 0x140158621
cmp al, 0xa
jne 0x140158452
jmp 0x14015864a
xor eax, eax
lea rcx, [0x140446290]
lea rdx, [0x1403630a0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x140158480
mov al, 0xbc
xchg byte [0x1404462a4], al
lea rax, [0x140446290]
ret
xor eax, eax
lea rcx, [0x140446090]
lea rdx, [0x140362eb0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1d
jl 0x1401584c0
mov al, 0xe
xchg byte [0x1404460ad], al
lea rax, [0x140446090]
ret
xor eax, eax
lea rcx, [0x140446300]
lea rdx, [0x140363110]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140158500
mov al, 0x5d
xchg byte [0x14044630d], al
lea rax, [0x140446300]
ret
xor eax, eax
lea rcx, [0x1404460f0]
lea rdx, [0x140362f10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x140158540
mov al, 0x58
xchg byte [0x1404460fe], al
lea rax, [0x1404460f0]
ret
xor eax, eax
lea rcx, [0x1404460d0]
lea rdx, [0x140362ef0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x140158580
mov al, 0x13
xchg byte [0x1404460e2], al
lea rax, [0x1404460d0]
ret
xor eax, eax
lea rcx, [0x140446080]
lea rdx, [0x140362ea0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xa
jl 0x1401585c0
mov al, 0xd8
xchg byte [0x14044608a], al
lea rax, [0x140446080]
ret
xor eax, eax
lea rcx, [0x1404462e0]
lea rdx, [0x1403630f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140158600
mov al, 0x61
xchg byte [0x1404462ed], al
lea rax, [0x1404462e0]
ret
xor eax, eax
lea rcx, [0x140446400]
lea rdx, [0x140363210]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x140158631
mov al, 0xa
xchg byte [0x14044640f], al
lea rax, [0x140446400]
ret