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

Disassembly:
test ecx, ecx
je 0x200ecd6c
test edx, edx
je 0x200ecdbc
test r8d, r8d
je 0x200ecdfc
test r9d, r9d
je 0x200ece79
movzx eax, byte [0x2043d9c8]
cmp al, 0xec
je 0x200ecd64
mov cl, 0x8f
nop dword [rax + rax]
mov al, 0x2e
lock cmpxchg byte [0x2043d9c8], cl
je 0x200ecff9
cmp al, 0xec
jne 0x200ecd50
lea rax, [0x2043d9b0]
ret
test edx, edx
je 0x200ece3c
test r8d, r8d
je 0x200eceac
test r9d, r9d
je 0x200ecf29
movzx eax, byte [0x2043daa0]
cmp al, 0x79
je 0x200ecdb4
mov cl, 0x95
nop word cs:[rax + rax]
mov al, 0xe2
lock cmpxchg byte [0x2043daa0], cl
je 0x200ed0c9
cmp al, 0x79
jne 0x200ecda0
lea rax, [0x2043da90]
ret
test r8d, r8d
je 0x200ecee9
test r9d, r9d
je 0x200ecf59
movzx eax, byte [0x2043db13]
cmp al, 0x1b
je 0x200ecdf4
mov cl, 0x37
nop dword [rax + rax]
mov al, 0xfd
lock cmpxchg byte [0x2043db13], cl
je 0x200ed101
cmp al, 0x1b
jne 0x200ecde0
lea rax, [0x2043db10]
ret
test r9d, r9d
je 0x200ecf89
movzx eax, byte [0x2043da76]
cmp al, 0x57
je 0x200ece34
mov cl, 0x43
nop word cs:[rax + rax]
mov al, 0xb5
lock cmpxchg byte [0x2043da76], cl
je 0x200ed141
cmp al, 0x57
jne 0x200ece20
lea rax, [0x2043da60]
ret
test r8d, r8d
je 0x200ecfb9
test r9d, r9d
je 0x200ed031
movzx eax, byte [0x2043d948]
cmp al, 0xf7
je 0x200ed219
mov cl, 0x43
nop
mov al, 0x45
lock cmpxchg byte [0x2043d948], cl
je 0x200ed1eb
cmp al, 0xf7
jne 0x200ece60
jmp 0x200ed219
movzx eax, byte [0x2043db6f]
cmp al, 0xc7
je 0x200ecea4
mov cl, 0x7c
nop word cs:[rax + rax]
mov al, 0x9e
lock cmpxchg byte [0x2043db6f], cl
je 0x200ed181
cmp al, 0xc7
jne 0x200ece90
lea rax, [0x2043db60]
ret
test r9d, r9d
je 0x200ed069
movzx eax, byte [0x2043dbdb]
cmp al, 0x45
je 0x200ed259
mov cl, 0x24
nop word cs:[rax + rax]
mov al, 0x43
lock cmpxchg byte [0x2043dbdb], cl
je 0x200ed221
cmp al, 0x45
jne 0x200eced0
jmp 0x200ed259
test r9d, r9d
je 0x200ed099
movzx eax, byte [0x2043dba2]
cmp al, 0xcb
je 0x200ed299
mov cl, 0x2c
nop word cs:[rax + rax]
mov al, 0x5c
lock cmpxchg byte [0x2043dba2], cl
je 0x200ed261
cmp al, 0xcb
jne 0x200ecf10
jmp 0x200ed299
movzx eax, byte [0x2043da05]
cmp al, 0xa3
je 0x200ed2d9
mov cl, 0x83
nop word [rax + rax]
mov al, 0x45
lock cmpxchg byte [0x2043da05], cl
je 0x200ed2a1
cmp al, 0xa3
jne 0x200ecf40
jmp 0x200ed2d9
movzx eax, byte [0x2043dbef]
cmp al, 0x48
je 0x200ed319
mov cl, 0xa4
nop word [rax + rax]
mov al, 0xf2
lock cmpxchg byte [0x2043dbef], cl
je 0x200ed2e1
cmp al, 0x48
jne 0x200ecf70
jmp 0x200ed319
movzx eax, byte [0x2043dbb2]
cmp al, 9
je 0x200ed359
mov cl, 0xbd
nop word [rax + rax]
mov al, 0x76
lock cmpxchg byte [0x2043dbb2], cl
je 0x200ed321
cmp al, 9
jne 0x200ecfa0
jmp 0x200ed359
test r9d, r9d
je 0x200ed1c1
movzx eax, byte [0x2043dbcb]
cmp al, 0x58
je 0x200ed399
mov cl, 0x6d
nop word cs:[rax + rax]
mov al, 0x4c
lock cmpxchg byte [0x2043dbcb], cl
je 0x200ed361
cmp al, 0x58
jne 0x200ecfe0
jmp 0x200ed399
xor eax, eax
lea rcx, [0x2043d9b0]
lea rdx, [0x20370450]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x200ed010
mov al, 0xec
xchg byte [0x2043d9c8], al
lea rax, [0x2043d9b0]
ret
movzx eax, byte [0x2043da59]
cmp al, 0xc0
je 0x200ed3d9
mov cl, 0x67
nop word cs:[rax + rax]
mov al, 0x65
lock cmpxchg byte [0x2043da59], cl
je 0x200ed3a1
cmp al, 0xc0
jne 0x200ed050
jmp 0x200ed3d9
movzx eax, byte [0x2043db05]
cmp al, 0xcc
je 0x200ed419
mov cl, 0x94
nop word [rax + rax]
mov al, 0x5a
lock cmpxchg byte [0x2043db05], cl
je 0x200ed3e1
cmp al, 0xcc
jne 0x200ed080
jmp 0x200ed419
movzx eax, byte [0x2043dac3]
cmp al, 0xcc
je 0x200ed459
mov cl, 0xce
nop word [rax + rax]
mov al, 0xb
lock cmpxchg byte [0x2043dac3], cl
je 0x200ed421
cmp al, 0xcc
jne 0x200ed0b0
jmp 0x200ed459
xor eax, eax
lea rcx, [0x2043da90]
lea rdx, [0x20370530]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x200ed0e0
mov al, 0x79
xchg byte [0x2043daa0], al
lea rax, [0x2043da90]
ret
xor eax, eax
lea rcx, [0x2043db10]
lea rdx, [0x203705e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x200ed120
mov al, 0x1b
xchg byte [0x2043db13], al
lea rax, [0x2043db10]
ret
xor eax, eax
lea rcx, [0x2043da60]
lea rdx, [0x20370500]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x16
jl 0x200ed160
mov al, 0x57
xchg byte [0x2043da76], al
lea rax, [0x2043da60]
ret
xor eax, eax
lea rcx, [0x2043db60]
lea rdx, [0x20370630]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x200ed1a0
mov al, 0xc7
xchg byte [0x2043db6f], al
lea rax, [0x2043db60]
ret
movzx eax, byte [0x2043dafc]
cmp al, 0x17
je 0x200ed48a
mov cl, 0x24
mov al, 0x3d
lock cmpxchg byte [0x2043dafc], cl
je 0x200ed461
cmp al, 0x17
jne 0x200ed1d2
jmp 0x200ed48a
xor eax, eax
lea rcx, [0x2043d940]
lea rdx, [0x203703f0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 8
jl 0x200ed200
mov al, 0xf7
xchg byte [0x2043d948], al
lea rax, [0x2043d940]
ret
xor eax, eax
lea rcx, [0x2043dbd0]
lea rdx, [0x203706a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x200ed240
mov al, 0x45
xchg byte [0x2043dbdb], al
lea rax, [0x2043dbd0]
ret
xor eax, eax
lea rcx, [0x2043dba0]
lea rdx, [0x20370670]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x200ed280
mov al, 0xcb
xchg byte [0x2043dba2], al
lea rax, [0x2043dba0]
ret
xor eax, eax
lea rcx, [0x2043d9f0]
lea rdx, [0x20370490]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x200ed2c0
mov al, 0xa3
xchg byte [0x2043da05], al
lea rax, [0x2043d9f0]
ret
xor eax, eax
lea rcx, [0x2043dbe0]
lea rdx, [0x203706b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x200ed300
mov al, 0x48
xchg byte [0x2043dbef], al
lea rax, [0x2043dbe0]
ret
xor eax, eax
lea rcx, [0x2043dbb0]
lea rdx, [0x20370680]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x200ed340
mov al, 9
xchg byte [0x2043dbb2], al
lea rax, [0x2043dbb0]
ret
xor eax, eax
lea rcx, [0x2043dbc0]
lea rdx, [0x20370690]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x200ed380
mov al, 0x58
xchg byte [0x2043dbcb], al
lea rax, [0x2043dbc0]
ret
xor eax, eax
lea rcx, [0x2043da50]
lea rdx, [0x203704f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 9
jl 0x200ed3c0
mov al, 0xc0
xchg byte [0x2043da59], al
lea rax, [0x2043da50]
ret
xor eax, eax
lea rcx, [0x2043db00]
lea rdx, [0x203705d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x200ed400
mov al, 0xcc
xchg byte [0x2043db05], al
lea rax, [0x2043db00]
ret
xor eax, eax
lea rcx, [0x2043dac0]
lea rdx, [0x20370550]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x200ed440
mov al, 0xcc
xchg byte [0x2043dac3], al
lea rax, [0x2043dac0]
ret
xor eax, eax
lea rcx, [0x2043dae0]
lea rdx, [0x203705b0]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x200ed471
mov al, 0x17
xchg byte [0x2043dafc], al
lea rax, [0x2043dae0]
ret