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

Disassembly:
test ecx, ecx
je 0x14015afbc
test edx, edx
je 0x14015b00c
test r8d, r8d
je 0x14015b04c
test r9d, r9d
je 0x14015b0c9
movzx eax, byte [0x14044838d]
cmp al, 0xb9
je 0x14015afb4
mov cl, 0xf9
nop dword [rax + rax]
mov al, 0x59
lock cmpxchg byte [0x14044838d], cl
je 0x14015b249
cmp al, 0xb9
jne 0x14015afa0
lea rax, [0x140448380]
ret
test edx, edx
je 0x14015b08c
test r8d, r8d
je 0x14015b0fc
test r9d, r9d
je 0x14015b179
movzx eax, byte [0x1404483bd]
cmp al, 0x8b
je 0x14015b004
mov cl, 0xd4
nop word cs:[rax + rax]
mov al, 0xeb
lock cmpxchg byte [0x1404483bd], cl
je 0x14015b319
cmp al, 0x8b
jne 0x14015aff0
lea rax, [0x1404483b0]
ret
test r8d, r8d
je 0x14015b139
test r9d, r9d
je 0x14015b1a9
movzx eax, byte [0x1404483cd]
cmp al, 0x60
je 0x14015b044
mov cl, 0xa7
nop dword [rax + rax]
mov al, 0xea
lock cmpxchg byte [0x1404483cd], cl
je 0x14015b351
cmp al, 0x60
jne 0x14015b030
lea rax, [0x1404483c0]
ret
test r9d, r9d
je 0x14015b1d9
movzx eax, byte [0x1404482fb]
cmp al, 0xbe
je 0x14015b084
mov cl, 0x84
nop word cs:[rax + rax]
mov al, 0xcb
lock cmpxchg byte [0x1404482fb], cl
je 0x14015b391
cmp al, 0xbe
jne 0x14015b070
lea rax, [0x1404482f0]
ret
test r8d, r8d
je 0x14015b209
test r9d, r9d
je 0x14015b281
movzx eax, byte [0x140448245]
cmp al, 0x48
je 0x14015b469
mov cl, 0xaf
nop
mov al, 0x9c
lock cmpxchg byte [0x140448245], cl
je 0x14015b43b
cmp al, 0x48
jne 0x14015b0b0
jmp 0x14015b469
movzx eax, byte [0x140448336]
cmp al, 0x5b
je 0x14015b0f4
mov cl, 0x8c
nop word cs:[rax + rax]
mov al, 0x57
lock cmpxchg byte [0x140448336], cl
je 0x14015b3d1
cmp al, 0x5b
jne 0x14015b0e0
lea rax, [0x140448310]
ret
test r9d, r9d
je 0x14015b2b9
movzx eax, byte [0x140448352]
cmp al, 0x92
je 0x14015b4a9
mov cl, 0x14
nop word cs:[rax + rax]
mov al, 0xed
lock cmpxchg byte [0x140448352], cl
je 0x14015b471
cmp al, 0x92
jne 0x14015b120
jmp 0x14015b4a9
test r9d, r9d
je 0x14015b2e9
movzx eax, byte [0x1404483db]
cmp al, 0xfb
je 0x14015b4e9
mov cl, 0xe3
nop word cs:[rax + rax]
mov al, 0xb3
lock cmpxchg byte [0x1404483db], cl
je 0x14015b4b1
cmp al, 0xfb
jne 0x14015b160
jmp 0x14015b4e9
movzx eax, byte [0x14044827e]
cmp al, 0xcd
je 0x14015b529
mov cl, 0x31
nop word [rax + rax]
mov al, 0xa5
lock cmpxchg byte [0x14044827e], cl
je 0x14015b4f1
cmp al, 0xcd
jne 0x14015b190
jmp 0x14015b529
movzx eax, byte [0x14044836b]
cmp al, 0x26
je 0x14015b569
mov cl, 0x83
nop word [rax + rax]
mov al, 0xcc
lock cmpxchg byte [0x14044836b], cl
je 0x14015b531
cmp al, 0x26
jne 0x14015b1c0
jmp 0x14015b569
movzx eax, byte [0x1404482e3]
cmp al, 0xef
je 0x14015b5a9
mov cl, 0x1c
nop word [rax + rax]
mov al, 0x39
lock cmpxchg byte [0x1404482e3], cl
je 0x14015b571
cmp al, 0xef
jne 0x14015b1f0
jmp 0x14015b5a9
test r9d, r9d
je 0x14015b411
movzx eax, byte [0x1404482b3]
cmp al, 0xe3
je 0x14015b5e9
mov cl, 0x85
nop word cs:[rax + rax]
mov al, 0x87
lock cmpxchg byte [0x1404482b3], cl
je 0x14015b5b1
cmp al, 0xe3
jne 0x14015b230
jmp 0x14015b5e9
xor eax, eax
lea rcx, [0x140448380]
lea rdx, [0x1403633f0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14015b260
mov al, 0xb9
xchg byte [0x14044838d], al
lea rax, [0x140448380]
ret
movzx eax, byte [0x14044829c]
cmp al, 0x46
je 0x14015b629
mov cl, 0xed
nop word cs:[rax + rax]
mov al, 0xdb
lock cmpxchg byte [0x14044829c], cl
je 0x14015b5f1
cmp al, 0x46
jne 0x14015b2a0
jmp 0x14015b629
movzx eax, byte [0x14044837d]
cmp al, 0x79
je 0x14015b669
mov cl, 0x73
nop word [rax + rax]
mov al, 0xac
lock cmpxchg byte [0x14044837d], cl
je 0x14015b631
cmp al, 0x79
jne 0x14015b2d0
jmp 0x14015b669
movzx eax, byte [0x140448220]
cmp al, 0xa1
je 0x14015b6a9
mov cl, 0x29
nop word [rax + rax]
mov al, 0x3f
lock cmpxchg byte [0x140448220], cl
je 0x14015b671
cmp al, 0xa1
jne 0x14015b300
jmp 0x14015b6a9
xor eax, eax
lea rcx, [0x1404483b0]
lea rdx, [0x140363420]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14015b330
mov al, 0x8b
xchg byte [0x1404483bd], al
lea rax, [0x1404483b0]
ret
xor eax, eax
lea rcx, [0x1404483c0]
lea rdx, [0x140363430]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14015b370
mov al, 0x60
xchg byte [0x1404483cd], al
lea rax, [0x1404483c0]
ret
xor eax, eax
lea rcx, [0x1404482f0]
lea rdx, [0x140363360]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x14015b3b0
mov al, 0xbe
xchg byte [0x1404482fb], al
lea rax, [0x1404482f0]
ret
xor eax, eax
lea rcx, [0x140448310]
lea rdx, [0x140363380]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x14015b3f0
mov al, 0x5b
xchg byte [0x140448336], al
lea rax, [0x140448310]
ret
movzx eax, byte [0x140448262]
cmp al, 0x3f
je 0x14015b6da
mov cl, 0xcf
mov al, 0xcc
lock cmpxchg byte [0x140448262], cl
je 0x14015b6b1
cmp al, 0x3f
jne 0x14015b422
jmp 0x14015b6da
xor eax, eax
lea rcx, [0x140448230]
lea rdx, [0x1403632a0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x14015b450
mov al, 0x48
xchg byte [0x140448245], al
lea rax, [0x140448230]
ret
xor eax, eax
lea rcx, [0x140448350]
lea rdx, [0x1403633c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x14015b490
mov al, 0x92
xchg byte [0x140448352], al
lea rax, [0x140448350]
ret
xor eax, eax
lea rcx, [0x1404483d0]
lea rdx, [0x140363440]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x14015b4d0
mov al, 0xfb
xchg byte [0x1404483db], al
lea rax, [0x1404483d0]
ret
xor eax, eax
lea rcx, [0x140448270]
lea rdx, [0x1403632e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x14015b510
mov al, 0xcd
xchg byte [0x14044827e], al
lea rax, [0x140448270]
ret
xor eax, eax
lea rcx, [0x140448360]
lea rdx, [0x1403633d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x14015b550
mov al, 0x26
xchg byte [0x14044836b], al
lea rax, [0x140448360]
ret
xor eax, eax
lea rcx, [0x1404482c0]
lea rdx, [0x140363330]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x14015b590
mov al, 0xef
xchg byte [0x1404482e3], al
lea rax, [0x1404482c0]
ret
xor eax, eax
lea rcx, [0x1404482b0]
lea rdx, [0x140363320]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x14015b5d0
mov al, 0xe3
xchg byte [0x1404482b3], al
lea rax, [0x1404482b0]
ret
xor eax, eax
lea rcx, [0x140448280]
lea rdx, [0x1403632f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x14015b610
mov al, 0x46
xchg byte [0x14044829c], al
lea rax, [0x140448280]
ret
xor eax, eax
lea rcx, [0x140448370]
lea rdx, [0x1403633e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14015b650
mov al, 0x79
xchg byte [0x14044837d], al
lea rax, [0x140448370]
ret
xor eax, eax
lea rcx, [0x140448210]
lea rdx, [0x140363290]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x14015b690
mov al, 0xa1
xchg byte [0x140448220], al
lea rax, [0x140448210]
ret
xor eax, eax
lea rcx, [0x140448250]
lea rdx, [0x1403632c0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x14015b6c1
mov al, 0x3f
xchg byte [0x140448262], al
lea rax, [0x140448250]
ret