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

Disassembly:
test ecx, ecx
je 0x20288b9c
test edx, edx
je 0x20288bec
test r8d, r8d
je 0x20288c2c
test r9d, r9d
je 0x20288ca9
movzx eax, byte [0x203f29c9]
cmp al, 0x86
je 0x20288b94
mov cl, 0x34
nop dword [rax + rax]
mov al, 0x88
lock cmpxchg byte [0x203f29c9], cl
je 0x20288de9
cmp al, 0x86
jne 0x20288b80
lea rax, [0x203f29a0]
ret
test edx, edx
je 0x20288c6c
test r8d, r8d
je 0x20288cdc
test r9d, r9d
je 0x20288d4c
movzx eax, byte [0x203f28b5]
cmp al, 0xc0
je 0x20288be4
mov cl, 0xde
nop word cs:[rax + rax]
mov al, 0xb1
lock cmpxchg byte [0x203f28b5], cl
je 0x20288ec9
cmp al, 0xc0
jne 0x20288bd0
lea rax, [0x203f28b0]
ret
test r8d, r8d
je 0x20288d19
movzx eax, byte [0x203f2dc5]
cmp al, 7
je 0x20288c24
mov cl, 0xe1
nop word cs:[rax + rax]
mov al, 0xe6
lock cmpxchg byte [0x203f2dc5], cl
je 0x20288e21
cmp al, 7
jne 0x20288c10
lea rax, [0x203f2db0]
ret
test r9d, r9d
je 0x20288d79
movzx eax, byte [0x203f2ac7]
cmp al, 0xfb
je 0x20288c64
mov cl, 0xf4
nop word cs:[rax + rax]
mov al, 0xbe
lock cmpxchg byte [0x203f2ac7], cl
je 0x20288f01
cmp al, 0xfb
jne 0x20288c50
lea rax, [0x203f2a50]
ret
test r8d, r8d
je 0x20288da9
test r9d, r9d
je 0x20288e61
movzx eax, byte [0x203f2e2d]
cmp al, 0xe3
je 0x20289019
mov cl, 0xbb
nop
mov al, 0xcc
lock cmpxchg byte [0x203f2e2d], cl
je 0x20288feb
cmp al, 0xe3
jne 0x20288c90
jmp 0x20289019
movzx eax, byte [0x203f300d]
cmp al, 0xcc
je 0x20288cd4
mov cl, 0x6c
nop word cs:[rax + rax]
mov al, 0x49
lock cmpxchg byte [0x203f300d], cl
je 0x20288f41
cmp al, 0xcc
jne 0x20288cc0
lea rax, [0x203f3000]
ret
test r9d, r9d
je 0x20288e99
movzx eax, byte [0x203f311a]
cmp al, 0x7b
je 0x20289059
mov cl, 0x46
nop word cs:[rax + rax]
mov al, 0xf1
lock cmpxchg byte [0x203f311a], cl
je 0x20289021
cmp al, 0x7b
jne 0x20288d00
jmp 0x20289059
movzx eax, byte [0x203f2a07]
cmp al, 0x9c
je 0x20288d44
mov cl, 0x10
nop word cs:[rax + rax]
mov al, 0x3f
lock cmpxchg byte [0x203f2a07], cl
je 0x20288f81
cmp al, 0x9c
jne 0x20288d30
lea rax, [0x203f29d0]
ret
movzx eax, byte [0x203f28e3]
cmp al, 0xaf
je 0x20289099
mov cl, 0xe4
nop dword [rax]
mov al, 0x5e
lock cmpxchg byte [0x203f28e3], cl
je 0x20289061
cmp al, 0xaf
jne 0x20288d60
jmp 0x20289099
movzx eax, byte [0x203f2cc2]
cmp al, 0x77
je 0x202890d9
mov cl, 0x40
nop word [rax + rax]
mov al, 0xc2
lock cmpxchg byte [0x203f2cc2], cl
je 0x202890a1
cmp al, 0x77
jne 0x20288d90
jmp 0x202890d9
test r9d, r9d
je 0x20288fc1
movzx eax, byte [0x203f2f8c]
cmp al, 0xf8
je 0x20289119
mov cl, 0x81
nop word cs:[rax + rax]
mov al, 0x80
lock cmpxchg byte [0x203f2f8c], cl
je 0x202890e1
cmp al, 0xf8
jne 0x20288dd0
jmp 0x20289119
xor eax, eax
lea rcx, [0x203f29a0]
lea rdx, [0x20317ac0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x29
jl 0x20288e00
mov al, 0x86
xchg byte [0x203f29c9], al
lea rax, [0x203f29a0]
ret
xor eax, eax
lea rcx, [0x203f2db0]
lea rdx, [0x20317ed0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x20288e40
mov al, 7
xchg byte [0x203f2dc5], al
lea rax, [0x203f2db0]
ret
movzx eax, byte [0x203f2f4d]
cmp al, 0x28
je 0x20289159
mov cl, 0xcf
nop word cs:[rax + rax]
mov al, 0xc6
lock cmpxchg byte [0x203f2f4d], cl
je 0x20289121
cmp al, 0x28
jne 0x20288e80
jmp 0x20289159
movzx eax, byte [0x203f2df9]
cmp al, 0x31
je 0x20289199
mov cl, 0x85
nop word [rax + rax]
mov al, 0xdd
lock cmpxchg byte [0x203f2df9], cl
je 0x20289161
cmp al, 0x31
jne 0x20288eb0
jmp 0x20289199
xor eax, eax
lea rcx, [0x203f28b0]
lea rdx, [0x203179d0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x20288ee0
mov al, 0xc0
xchg byte [0x203f28b5], al
lea rax, [0x203f28b0]
ret
xor eax, eax
lea rcx, [0x203f2a50]
lea rdx, [0x20317b70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x77
jl 0x20288f20
mov al, 0xfb
xchg byte [0x203f2ac7], al
lea rax, [0x203f2a50]
ret
xor eax, eax
lea rcx, [0x203f3000]
lea rdx, [0x20318120]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x20288f60
mov al, 0xcc
xchg byte [0x203f300d], al
lea rax, [0x203f3000]
ret
xor eax, eax
lea rcx, [0x203f29d0]
lea rdx, [0x20317af0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x37
jl 0x20288fa0
mov al, 0x9c
xchg byte [0x203f2a07], al
lea rax, [0x203f29d0]
ret
movzx eax, byte [0x203f308d]
cmp al, 0xaf
je 0x202891ca
mov cl, 0x28
mov al, 0x1a
lock cmpxchg byte [0x203f308d], cl
je 0x202891a1
cmp al, 0xaf
jne 0x20288fd2
jmp 0x202891ca
xor eax, eax
lea rcx, [0x203f2e20]
lea rdx, [0x20317f40]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x20289000
mov al, 0xe3
xchg byte [0x203f2e2d], al
lea rax, [0x203f2e20]
ret
xor eax, eax
lea rcx, [0x203f3110]
lea rdx, [0x20318230]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xa
jl 0x20289040
mov al, 0x7b
xchg byte [0x203f311a], al
lea rax, [0x203f3110]
ret
xor eax, eax
lea rcx, [0x203f28d0]
lea rdx, [0x203179f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x20289080
mov al, 0xaf
xchg byte [0x203f28e3], al
lea rax, [0x203f28d0]
ret
xor eax, eax
lea rcx, [0x203f2cc0]
lea rdx, [0x20317de0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x202890c0
mov al, 0x77
xchg byte [0x203f2cc2], al
lea rax, [0x203f2cc0]
ret
xor eax, eax
lea rcx, [0x203f2f80]
lea rdx, [0x203180a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x20289100
mov al, 0xf8
xchg byte [0x203f2f8c], al
lea rax, [0x203f2f80]
ret
xor eax, eax
lea rcx, [0x203f2f40]
lea rdx, [0x20318060]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x20289140
mov al, 0x28
xchg byte [0x203f2f4d], al
lea rax, [0x203f2f40]
ret
xor eax, eax
lea rcx, [0x203f2de0]
lea rdx, [0x20317f00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x19
jl 0x20289180
mov al, 0x31
xchg byte [0x203f2df9], al
lea rax, [0x203f2de0]
ret
xor eax, eax
lea rcx, [0x203f3080]
lea rdx, [0x203181a0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x202891b1
mov al, 0xaf
xchg byte [0x203f308d], al
lea rax, [0x203f3080]
ret