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

Disassembly:
push rsi
push rdi
sub rsp, 0x38
test ecx, ecx
je 0x200ed4f9
test edx, edx
je 0x200ed539
test r8d, r8d
je 0x200ed579
test r9d, r9d
je 0x200ed5f9
movzx eax, byte [0x2043dad8]
cmp al, 2
je 0x200ed7c9
mov cl, 0xde
nop word cs:[rax + rax]
mov al, 0xfa
lock cmpxchg byte [0x2043dad8], cl
je 0x200ed739
cmp al, 2
jne 0x200ed4e0
jmp 0x200ed7c9
test edx, edx
je 0x200ed5b9
test r8d, r8d
je 0x200ed629
movzx eax, byte [0x2043d985]
cmp al, 0x2e
je 0x200ed809
mov cl, 0xa5
nop dword [rax + rax]
mov al, 0xf0
lock cmpxchg byte [0x2043d985], cl
je 0x200ed7d5
cmp al, 0x2e
jne 0x200ed520
jmp 0x200ed809
test r8d, r8d
je 0x200ed659
test r9d, r9d
je 0x200ed699
movzx eax, byte [0x2043db5b]
cmp al, 0xef
je 0x200ed8a9
mov cl, 0x8c
nop dword [rax]
mov al, 0x1c
lock cmpxchg byte [0x2043db5b], cl
je 0x200ed879
cmp al, 0xef
jne 0x200ed560
jmp 0x200ed8a9
test r9d, r9d
je 0x200ed6c9
movzx eax, byte [0x2043d960]
cmp al, 0x9a
je 0x200ed8e9
mov cl, 0x32
nop word cs:[rax + rax]
mov al, 0x51
lock cmpxchg byte [0x2043d960], cl
je 0x200ed8b5
cmp al, 0x9a
jne 0x200ed5a0
jmp 0x200ed8e9
test r8d, r8d
je 0x200ed6f9
test r9d, r9d
je 0x200ed815
movzx eax, byte [0x2043db43]
cmp al, 0xcc
je 0x200ed9c9
mov cl, 0x63
nop dword [rax]
mov al, 0x38
lock cmpxchg byte [0x2043db43], cl
je 0x200ed99f
cmp al, 0xcc
jne 0x200ed5e0
jmp 0x200ed9c9
movzx eax, byte [0x2043da45]
cmp al, 0xbf
je 0x200ed929
mov cl, 0x85
nop word [rax + rax]
mov al, 0x92
lock cmpxchg byte [0x2043da45], cl
je 0x200ed8f5
cmp al, 0xbf
jne 0x200ed610
jmp 0x200ed929
movzx eax, byte [0x2043da26]
cmp al, 0xd0
je 0x200ed969
mov cl, 0x92
nop word [rax + rax]
mov al, 0x17
lock cmpxchg byte [0x2043da26], cl
je 0x200ed935
cmp al, 0xd0
jne 0x200ed640
jmp 0x200ed969
test r9d, r9d
je 0x200ed849
movzx eax, byte [0x2043db96]
cmp al, 0x6e
je 0x200eda09
mov cl, 0xd4
nop word cs:[rax + rax]
mov al, 0xd8
lock cmpxchg byte [0x2043db96], cl
je 0x200ed9d5
cmp al, 0x6e
jne 0x200ed680
jmp 0x200eda09
movzx eax, byte [0x2043dad7]
cmp al, 0xa5
je 0x200edaa9
mov cl, 0x2d
nop word [rax + rax]
mov al, 0x42
lock cmpxchg byte [0x2043dad7], cl
je 0x200eda15
cmp al, 0xa5
jne 0x200ed6b0
jmp 0x200edaa9
movzx eax, byte [0x2043da83]
cmp al, 0x64
je 0x200edae9
mov cl, 0x98
nop word [rax + rax]
mov al, 0x80
lock cmpxchg byte [0x2043da83], cl
je 0x200edab5
cmp al, 0x64
jne 0x200ed6e0
jmp 0x200edae9
test r9d, r9d
je 0x200ed975
movzx eax, byte [0x2043d9a2]
cmp al, 0x96
je 0x200edb29
mov cl, 0xa9
nop word cs:[rax + rax]
mov al, 0xbc
lock cmpxchg byte [0x2043d9a2], cl
je 0x200edaf5
cmp al, 0x96
jne 0x200ed720
jmp 0x200edb29
cmp qword [0x204a1c00], 0
jne 0x200ed79f
mov dword [rsp + 0x28], 0x51b55a0d
mov dword [rsp + 0x20], 4
xor edi, edi
mov ecx, 1
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.200ec990
mov rsi, rax
mov qword [0x204a1c00], rax
lea rcx, [0x200ec910]
mov edx, 0x404f9256
call fcn.200ec9f0
lea rax, [0x20370590]
nop dword [rax]
movzx ecx, byte [rdi + rax]
mov byte [rsi + rdi], cl
inc rdi
cmp edi, 2
jle 0x200ed790
mov rax, qword [0x204a1c00]
xor ecx, ecx
lea rdx, [0x203705a0]
nop
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 3
jl 0x200ed7b0
mov al, 2
xchg byte [0x2043dad8], al
mov rax, qword [0x204a1c00]
jmp 0x200edbe2
xor eax, eax
lea rcx, [0x2043d970]
lea rdx, [0x20370410]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x200ed7f0
mov al, 0x2e
xchg byte [0x2043d985], al
lea rax, [0x2043d970]
jmp 0x200edbe2
movzx eax, byte [0x2043d9e1]
cmp al, 0xe5
je 0x200edb69
mov cl, 0xa4
nop word cs:[rax + rax]
mov al, 0x3c
lock cmpxchg byte [0x2043d9e1], cl
je 0x200edb35
cmp al, 0xe5
jne 0x200ed830
jmp 0x200edb69
movzx eax, byte [0x2043dad6]
cmp al, 0x54
je 0x200edba9
mov cl, 0x53
nop word [rax + rax]
mov al, 0x11
lock cmpxchg byte [0x2043dad6], cl
je 0x200edb72
cmp al, 0x54
jne 0x200ed860
jmp 0x200edba9
xor eax, eax
lea rcx, [0x2043db50]
lea rdx, [0x20370620]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x200ed890
mov al, 0xef
xchg byte [0x2043db5b], al
lea rax, [0x2043db50]
jmp 0x200edbe2
xor eax, eax
lea rcx, [0x2043d950]
lea rdx, [0x20370400]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x200ed8d0
mov al, 0x9a
xchg byte [0x2043d960], al
lea rax, [0x2043d950]
jmp 0x200edbe2
xor eax, eax
lea rcx, [0x2043da30]
lea rdx, [0x203704d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x200ed910
mov al, 0xbf
xchg byte [0x2043da45], al
lea rax, [0x2043da30]
jmp 0x200edbe2
xor eax, eax
lea rcx, [0x2043da10]
lea rdx, [0x203704b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x16
jl 0x200ed950
mov al, 0xd0
xchg byte [0x2043da26], al
lea rax, [0x2043da10]
jmp 0x200edbe2
movzx eax, byte [0x2043dab9]
cmp al, 0xbf
je 0x200edbdb
mov cl, 0x61
mov al, 0xf5
lock cmpxchg byte [0x2043dab9], cl
je 0x200edbb2
cmp al, 0xbf
jne 0x200ed986
jmp 0x200edbdb
xor eax, eax
lea rcx, [0x2043db20]
lea rdx, [0x203705f0]
nop
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x200ed9b0
mov al, 0xcc
xchg byte [0x2043db43], al
lea rax, [0x2043db20]
jmp 0x200edbe2
xor eax, eax
lea rcx, [0x2043db70]
lea rdx, [0x20370640]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x200ed9f0
mov al, 0x6e
xchg byte [0x2043db96], al
lea rax, [0x2043db70]
jmp 0x200edbe2
cmp qword [0x204a1bf8], 0
jne 0x200eda74
mov dword [rsp + 0x28], 0x51b55a0d
mov dword [rsp + 0x20], 4
xor edi, edi
mov ecx, 1
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.200ec990
mov rsi, rax
mov qword [0x204a1bf8], rax
lea rcx, [0x200ec8f0]
mov edx, 0x404f9256
call fcn.200ec9f0
lea rax, [0x20370570]
movzx ecx, byte [rdi + rax]
mov byte [rsi + rdi], cl
inc rdi
cmp edi, 2
jle 0x200eda65
mov rax, qword [0x204a1bf8]
xor ecx, ecx
lea rdx, [0x20370580]
nop word cs:[rax + rax]
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 3
jl 0x200eda90
mov al, 0xa5
xchg byte [0x2043dad7], al
mov rax, qword [0x204a1bf8]
jmp 0x200edbe2
xor eax, eax
lea rcx, [0x2043da80]
lea rdx, [0x20370520]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x200edad0
mov al, 0x64
xchg byte [0x2043da83], al
lea rax, [0x2043da80]
jmp 0x200edbe2
xor eax, eax
lea rcx, [0x2043d990]
lea rdx, [0x20370430]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x200edb10
mov al, 0x96
xchg byte [0x2043d9a2], al
lea rax, [0x2043d990]
jmp 0x200edbe2
xor eax, eax
lea rcx, [0x2043d9d0]
lea rdx, [0x20370470]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x200edb50
mov al, 0xe5
xchg byte [0x2043d9e1], al
lea rax, [0x2043d9d0]
jmp 0x200edbe2
xor eax, eax
lea rcx, [0x2043dad0]
lea rdx, [0x20370560]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x200edb90
mov al, 0x54
xchg byte [0x2043dad6], al
lea rax, [0x2043dad0]
jmp 0x200edbe2
xor eax, eax
lea rcx, [0x2043dab0]
lea rdx, [0x20370540]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 9
jl 0x200edbc2
mov al, 0xbf
xchg byte [0x2043dab9], al
lea rax, [0x2043dab0]
add rsp, 0x38
pop rdi
pop rsi
ret