Function at 0x14021c730
Capabilities:
Check for software breakpoints
Encode data using xor

Disassembly:
test ecx, ecx
je 0x14021c77c
test edx, edx
je 0x14021c7cc
test r8d, r8d
je 0x14021c80c
test r9d, r9d
je 0x14021c889
movzx eax, byte [0x140511878]
cmp al, 0x4e
je 0x14021c774
mov cl, 0xc5
nop dword [rax + rax]
mov al, 0xab
lock cmpxchg byte [0x140511878], cl
je 0x14021ca09
cmp al, 0x4e
jne 0x14021c760
lea rax, [0x140511870]
ret
test edx, edx
je 0x14021c84c
test r8d, r8d
je 0x14021c8bc
test r9d, r9d
je 0x14021c939
movzx eax, byte [0x140511acd]
cmp al, 0xf7
je 0x14021c7c4
mov cl, 0x23
nop word cs:[rax + rax]
mov al, 0x8f
lock cmpxchg byte [0x140511acd], cl
je 0x14021cad9
cmp al, 0xf7
jne 0x14021c7b0
lea rax, [0x140511ac0]
ret
test r8d, r8d
je 0x14021c8f9
test r9d, r9d
je 0x14021c969
movzx eax, byte [0x140511b31]
cmp al, 0x65
je 0x14021c804
mov cl, 0x85
nop dword [rax + rax]
mov al, 0x69
lock cmpxchg byte [0x140511b31], cl
je 0x14021cb11
cmp al, 0x65
jne 0x14021c7f0
lea rax, [0x140511b20]
ret
test r9d, r9d
je 0x14021c999
movzx eax, byte [0x140511aed]
cmp al, 0x71
je 0x14021c844
mov cl, 0xe5
nop word cs:[rax + rax]
mov al, 0x34
lock cmpxchg byte [0x140511aed], cl
je 0x14021cb51
cmp al, 0x71
jne 0x14021c830
lea rax, [0x140511ae0]
ret
test r8d, r8d
je 0x14021c9c9
test r9d, r9d
je 0x14021ca41
movzx eax, byte [0x140511ea1]
cmp al, 0x44
je 0x14021cc29
mov cl, 0x85
nop
mov al, 0x4c
lock cmpxchg byte [0x140511ea1], cl
je 0x14021cbfb
cmp al, 0x44
jne 0x14021c870
jmp 0x14021cc29
movzx eax, byte [0x140511760]
cmp al, 0xaa
je 0x14021c8b4
mov cl, 0x1b
nop word cs:[rax + rax]
mov al, 0x87
lock cmpxchg byte [0x140511760], cl
je 0x14021cb91
cmp al, 0xaa
jne 0x14021c8a0
lea rax, [0x140511750]
ret
test r9d, r9d
je 0x14021ca79
movzx eax, byte [0x140511b03]
cmp al, 0xcd
je 0x14021cc69
mov cl, 0xde
nop word cs:[rax + rax]
mov al, 0x53
lock cmpxchg byte [0x140511b03], cl
je 0x14021cc31
cmp al, 0xcd
jne 0x14021c8e0
jmp 0x14021cc69
test r9d, r9d
je 0x14021caa9
movzx eax, byte [0x140511aad]
cmp al, 0x25
je 0x14021cca9
mov cl, 0xee
nop word cs:[rax + rax]
mov al, 0xb3
lock cmpxchg byte [0x140511aad], cl
je 0x14021cc71
cmp al, 0x25
jne 0x14021c920
jmp 0x14021cca9
movzx eax, byte [0x140511e5d]
cmp al, 0xd3
je 0x14021cce9
mov cl, 0x8b
nop word [rax + rax]
mov al, 0x2b
lock cmpxchg byte [0x140511e5d], cl
je 0x14021ccb1
cmp al, 0xd3
jne 0x14021c950
jmp 0x14021cce9
movzx eax, byte [0x140511531]
cmp al, 0x4f
je 0x14021cd29
mov cl, 0x97
nop word [rax + rax]
mov al, 0xa4
lock cmpxchg byte [0x140511531], cl
je 0x14021ccf1
cmp al, 0x4f
jne 0x14021c980
jmp 0x14021cd29
movzx eax, byte [0x140511a9d]
cmp al, 0x32
je 0x14021cd69
mov cl, 0xb7
nop word [rax + rax]
mov al, 0x14
lock cmpxchg byte [0x140511a9d], cl
je 0x14021cd31
cmp al, 0x32
jne 0x14021c9b0
jmp 0x14021cd69
test r9d, r9d
je 0x14021cbd1
movzx eax, byte [0x140511f0d]
cmp al, 0x6d
je 0x14021cda9
mov cl, 0x7e
nop word cs:[rax + rax]
mov al, 0x3a
lock cmpxchg byte [0x140511f0d], cl
je 0x14021cd71
cmp al, 0x6d
jne 0x14021c9f0
jmp 0x14021cda9
xor eax, eax
lea rcx, [0x140511870]
lea rdx, [0x14042b3e0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 8
jl 0x14021ca20
mov al, 0x4e
xchg byte [0x140511878], al
lea rax, [0x140511870]
ret
movzx eax, byte [0x140511e21]
cmp al, 3
je 0x14021cde9
mov cl, 0x2a
nop word cs:[rax + rax]
mov al, 0x63
lock cmpxchg byte [0x140511e21], cl
je 0x14021cdb1
cmp al, 3
jne 0x14021ca60
jmp 0x14021cde9
movzx eax, byte [0x140511d7d]
cmp al, 6
je 0x14021ce29
mov cl, 0x44
nop word [rax + rax]
mov al, 0x89
lock cmpxchg byte [0x140511d7d], cl
je 0x14021cdf1
cmp al, 6
jne 0x14021ca90
jmp 0x14021ce29
movzx eax, byte [0x140511a8d]
cmp al, 0x10
je 0x14021ce69
mov cl, 0x40
nop word [rax + rax]
mov al, 0x1e
lock cmpxchg byte [0x140511a8d], cl
je 0x14021ce31
cmp al, 0x10
jne 0x14021cac0
jmp 0x14021ce69
xor eax, eax
lea rcx, [0x140511ac0]
lea rdx, [0x14042b620]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021caf0
mov al, 0xf7
xchg byte [0x140511acd], al
lea rax, [0x140511ac0]
ret
xor eax, eax
lea rcx, [0x140511b20]
lea rdx, [0x14042b680]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x14021cb30
mov al, 0x65
xchg byte [0x140511b31], al
lea rax, [0x140511b20]
ret
xor eax, eax
lea rcx, [0x140511ae0]
lea rdx, [0x14042b640]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021cb70
mov al, 0x71
xchg byte [0x140511aed], al
lea rax, [0x140511ae0]
ret
xor eax, eax
lea rcx, [0x140511750]
lea rdx, [0x14042b2e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x14021cbb0
mov al, 0xaa
xchg byte [0x140511760], al
lea rax, [0x140511750]
ret
movzx eax, byte [0x140511a70]
cmp al, 0xcb
je 0x14021ce9a
mov cl, 0xd7
mov al, 0x6d
lock cmpxchg byte [0x140511a70], cl
je 0x14021ce71
cmp al, 0xcb
jne 0x14021cbe2
jmp 0x14021ce9a
xor eax, eax
lea rcx, [0x140511e90]
lea rdx, [0x14042b9f0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x14021cc10
mov al, 0x44
xchg byte [0x140511ea1], al
lea rax, [0x140511e90]
ret
xor eax, eax
lea rcx, [0x140511af0]
lea rdx, [0x14042b650]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x14021cc50
mov al, 0xcd
xchg byte [0x140511b03], al
lea rax, [0x140511af0]
ret
xor eax, eax
lea rcx, [0x140511aa0]
lea rdx, [0x14042b600]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021cc90
mov al, 0x25
xchg byte [0x140511aad], al
lea rax, [0x140511aa0]
ret
xor eax, eax
lea rcx, [0x140511e50]
lea rdx, [0x14042b9b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021ccd0
mov al, 0xd3
xchg byte [0x140511e5d], al
lea rax, [0x140511e50]
ret
xor eax, eax
lea rcx, [0x140511510]
lea rdx, [0x14042b0b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x21
jl 0x14021cd10
mov al, 0x4f
xchg byte [0x140511531], al
lea rax, [0x140511510]
ret
xor eax, eax
lea rcx, [0x140511a90]
lea rdx, [0x14042b5f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021cd50
mov al, 0x32
xchg byte [0x140511a9d], al
lea rax, [0x140511a90]
ret
xor eax, eax
lea rcx, [0x140511f00]
lea rdx, [0x14042ba60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021cd90
mov al, 0x6d
xchg byte [0x140511f0d], al
lea rax, [0x140511f00]
ret
xor eax, eax
lea rcx, [0x140511e10]
lea rdx, [0x14042b970]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x14021cdd0
mov al, 3
xchg byte [0x140511e21], al
lea rax, [0x140511e10]
ret
xor eax, eax
lea rcx, [0x140511d70]
lea rdx, [0x14042b8d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021ce10
mov al, 6
xchg byte [0x140511d7d], al
lea rax, [0x140511d70]
ret
xor eax, eax
lea rcx, [0x140511a80]
lea rdx, [0x14042b5e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14021ce50
mov al, 0x10
xchg byte [0x140511a8d], al
lea rax, [0x140511a80]
ret
xor eax, eax
lea rcx, [0x140511a60]
lea rdx, [0x14042b5d0]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x14021ce81
mov al, 0xcb
xchg byte [0x140511a70], al
lea rax, [0x140511a60]
ret