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

Disassembly:
push rsi
push rdi
sub rsp, 0x38
test ecx, ecx
je 0x201aec59
test edx, edx
je 0x201aeca9
test r8d, r8d
je 0x201aece9
test r9d, r9d
je 0x201aed69
movzx eax, byte [0x2045f62e]
cmp al, 0xee
je 0x201aef19
mov cl, 0xeb
nop word cs:[rax + rax]
mov al, 0xda
lock cmpxchg byte [0x2045f62e], cl
je 0x201aeee9
cmp al, 0xee
jne 0x201aec40
jmp 0x201aef19
test edx, edx
je 0x201aed29
test r8d, r8d
je 0x201aed99
test r9d, r9d
je 0x201aee19
movzx eax, byte [0x2045f1b5]
cmp al, 0x4e
je 0x201aefe9
mov cl, 6
nop word cs:[rax + rax]
mov al, 0x2c
lock cmpxchg byte [0x2045f1b5], cl
je 0x201aefb9
cmp al, 0x4e
jne 0x201aec90
jmp 0x201aefe9
test r8d, r8d
je 0x201aedd9
test r9d, r9d
je 0x201aee49
movzx eax, byte [0x2045eff3]
cmp al, 0xdb
je 0x201af029
mov cl, 0x43
nop dword [rax]
mov al, 0x4c
lock cmpxchg byte [0x2045eff3], cl
je 0x201aeff5
cmp al, 0xdb
jne 0x201aecd0
jmp 0x201af029
test r9d, r9d
je 0x201aee79
movzx eax, byte [0x2045f3a2]
cmp al, 0x59
je 0x201af069
mov cl, 0xbe
nop word cs:[rax + rax]
mov al, 0xb2
lock cmpxchg byte [0x2045f3a2], cl
je 0x201af035
cmp al, 0x59
jne 0x201aed10
jmp 0x201af069
test r8d, r8d
je 0x201aeea9
test r9d, r9d
je 0x201aef25
movzx eax, byte [0x2045eca6]
cmp al, 0x9c
je 0x201af109
mov cl, 0xb1
nop dword [rax]
mov al, 0x55
lock cmpxchg byte [0x2045eca6], cl
je 0x201af0df
cmp al, 0x9c
jne 0x201aed50
jmp 0x201af109
movzx eax, byte [0x2045edd9]
cmp al, 0x1c
je 0x201af0a9
mov cl, 0x2f
nop word [rax + rax]
mov al, 0xfe
lock cmpxchg byte [0x2045edd9], cl
je 0x201af075
cmp al, 0x1c
jne 0x201aed80
jmp 0x201af0a9
test r9d, r9d
je 0x201aef59
movzx eax, byte [0x2045ed92]
cmp al, 0xef
je 0x201af149
mov cl, 0xf3
nop word cs:[rax + rax]
mov al, 0xa9
lock cmpxchg byte [0x2045ed92], cl
je 0x201af115
cmp al, 0xef
jne 0x201aedc0
jmp 0x201af149
test r9d, r9d
je 0x201aef89
movzx eax, byte [0x2045ede3]
cmp al, 0x11
je 0x201af189
mov cl, 0xae
nop word cs:[rax + rax]
mov al, 0xf9
lock cmpxchg byte [0x2045ede3], cl
je 0x201af155
cmp al, 0x11
jne 0x201aee00
jmp 0x201af189
movzx eax, byte [0x2045f0b8]
cmp al, 0xe8
je 0x201af1c9
mov cl, 0xee
nop word [rax + rax]
mov al, 0x31
lock cmpxchg byte [0x2045f0b8], cl
je 0x201af195
cmp al, 0xe8
jne 0x201aee30
jmp 0x201af1c9
movzx eax, byte [0x2045ee1a]
cmp al, 0xc
je 0x201af269
mov cl, 0xfd
nop word [rax + rax]
mov al, 0x33
lock cmpxchg byte [0x2045ee1a], cl
je 0x201af1d5
cmp al, 0xc
jne 0x201aee60
jmp 0x201af269
movzx eax, byte [0x2045f0f7]
cmp al, 0xcd
je 0x201af2a9
mov cl, 8
nop word [rax + rax]
mov al, 0x31
lock cmpxchg byte [0x2045f0f7], cl
je 0x201af275
cmp al, 0xcd
jne 0x201aee90
jmp 0x201af2a9
test r9d, r9d
je 0x201af0b5
movzx eax, byte [0x2045ee71]
cmp al, 0x7c
je 0x201af2e9
mov cl, 0xac
nop word cs:[rax + rax]
mov al, 0x9f
lock cmpxchg byte [0x2045ee71], cl
je 0x201af2b5
cmp al, 0x7c
jne 0x201aeed0
jmp 0x201af2e9
xor eax, eax
lea rcx, [0x2045f620]
lea rdx, [0x20379590]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x201aef00
mov al, 0xee
xchg byte [0x2045f62e], al
lea rax, [0x2045f620]
jmp 0x201af3e2
movzx eax, byte [0x2045f6ff]
cmp al, 0x99
je 0x201af329
mov cl, 0x1d
nop word cs:[rax + rax]
mov al, 0x90
lock cmpxchg byte [0x2045f6ff], cl
je 0x201af2f5
cmp al, 0x99
jne 0x201aef40
jmp 0x201af329
movzx eax, byte [0x2045f3dd]
cmp al, 0x71
je 0x201af369
mov cl, 0xfa
nop word [rax + rax]
mov al, 0xc3
lock cmpxchg byte [0x2045f3dd], cl
je 0x201af335
cmp al, 0x71
jne 0x201aef70
jmp 0x201af369
movzx eax, byte [0x2045f5fd]
cmp al, 0xc8
je 0x201af3a9
mov cl, 0x5f
nop word [rax + rax]
mov al, 0xd8
lock cmpxchg byte [0x2045f5fd], cl
je 0x201af372
cmp al, 0xc8
jne 0x201aefa0
jmp 0x201af3a9
xor eax, eax
lea rcx, [0x2045f1b0]
lea rdx, [0x20379130]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x201aefd0
mov al, 0x4e
xchg byte [0x2045f1b5], al
lea rax, [0x2045f1b0]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045efd0]
lea rdx, [0x20378f60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x201af010
mov al, 0xdb
xchg byte [0x2045eff3], al
lea rax, [0x2045efd0]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045f390]
lea rdx, [0x20379300]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x201af050
mov al, 0x59
xchg byte [0x2045f3a2], al
lea rax, [0x2045f390]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045edd0]
lea rdx, [0x20378b80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 9
jl 0x201af090
mov al, 0x1c
xchg byte [0x2045edd9], al
lea rax, [0x2045edd0]
jmp 0x201af3e2
movzx eax, byte [0x2045f88a]
cmp al, 7
je 0x201af3db
mov cl, 0xd9
mov al, 0x99
lock cmpxchg byte [0x2045f88a], cl
je 0x201af3b2
cmp al, 7
jne 0x201af0c6
jmp 0x201af3db
xor eax, eax
lea rcx, [0x2045eca0]
lea rdx, [0x20378a70]
nop
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x201af0f0
mov al, 0x9c
xchg byte [0x2045eca6], al
lea rax, [0x2045eca0]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045ed80]
lea rdx, [0x20378b40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x201af130
mov al, 0xef
xchg byte [0x2045ed92], al
lea rax, [0x2045ed80]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045ede0]
lea rdx, [0x20378b90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201af170
mov al, 0x11
xchg byte [0x2045ede3], al
lea rax, [0x2045ede0]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045f0a0]
lea rdx, [0x20379030]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x201af1b0
mov al, 0xe8
xchg byte [0x2045f0b8], al
lea rax, [0x2045f0a0]
jmp 0x201af3e2
cmp qword [0x204a25e0], 0
jne 0x201af235
mov dword [rsp + 0x28], 0x1f411150
mov qword [rsp + 0x20], 0
xor edi, edi
xor ecx, ecx
xor edx, edx
mov r8d, 4
xor r9d, r9d
call fcn.201ad7b0
mov rsi, rax
mov qword [0x204a25e0], rax
lea rcx, [0x201ad670]
mov edx, 0x8361c00d
call fcn.200ec9f0
lea rax, [0x20378bf0]
movzx ecx, byte [rdi + rax]
mov byte [rsi + rdi], cl
inc rdi
cmp edi, 2
jle 0x201af226
mov rax, qword [0x204a25e0]
xor ecx, ecx
lea rdx, [0x20378c00]
nop word cs:[rax + rax]
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 3
jl 0x201af250
mov al, 0xc
xchg byte [0x2045ee1a], al
mov rax, qword [0x204a25e0]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045f0c0]
lea rdx, [0x20379050]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x37
jl 0x201af290
mov al, 0xcd
xchg byte [0x2045f0f7], al
lea rax, [0x2045f0c0]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045ee30]
lea rdx, [0x20378c20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x41
jl 0x201af2d0
mov al, 0x7c
xchg byte [0x2045ee71], al
lea rax, [0x2045ee30]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045f6f0]
lea rdx, [0x20379660]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201af310
mov al, 0x99
xchg byte [0x2045f6ff], al
lea rax, [0x2045f6f0]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045f3d0]
lea rdx, [0x20379340]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201af350
mov al, 0x71
xchg byte [0x2045f3dd], al
lea rax, [0x2045f3d0]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045f5f0]
lea rdx, [0x20379560]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201af390
mov al, 0xc8
xchg byte [0x2045f5fd], al
lea rax, [0x2045f5f0]
jmp 0x201af3e2
xor eax, eax
lea rcx, [0x2045f870]
lea rdx, [0x203797b0]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1a
jl 0x201af3c2
mov al, 7
xchg byte [0x2045f88a], al
lea rax, [0x2045f870]
add rsp, 0x38
pop rdi
pop rsi
ret