Function at 0x709d80
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
push rbp
push rdi
push rsi
sub rsp, 0x440
mov rbp, rsp
mov qword [rbp + 0x460], rcx
mov qword [rbp + 0x468], rdx
mov qword [rbp + 0x470], r8
mov byte [rbp + 0x478], r9b
mov byte [rbp + 0x43f], 1
mov rcx, qword [rbp + 0x460]
movzx rdx, byte [rbp + 0x43f]
call fcn.007098d0
movzx rcx, byte [rbp + 0x43f]
mov byte [rcx + rbp + 0x24], al
add byte [rbp + 0x43f], 1
cmp byte [rbp + 0x43f], 0x41
jne 0x709db0
nop
mov byte [rbp + 0x43f], 1
mov rcx, qword [rbp + 0x470]
lea rax, [0x007fa46f]
movzx rdx, byte [rbp + 0x43f]
movzx rdx, byte [rax + rdx]
call fcn.007098d0
movzx rcx, byte [rbp + 0x43f]
mov byte [rcx + rbp + 0x404], al
mov rcx, qword [rbp + 0x470]
lea rax, [0x007fa46f]
movzx rdx, byte [rbp + 0x43f]
add edx, 0x1c
mov edx, edx
movzx rdx, byte [rax + rdx]
call fcn.007098d0
movzx rcx, byte [rbp + 0x43f]
mov byte [rcx + rbp + 0x420], al
add byte [rbp + 0x43f], 1
cmp byte [rbp + 0x43f], 0x1d
jne 0x709de8
nop
mov byte [rbp + 0x43f], 1
lea rcx, [rbp + 0x25]
movzx rdx, byte [rbp + 0x43f]
movzx rax, byte [rbp + 0x43f]
add rax, rax
lea rax, [rax + rax*2]
lea r8, [rbp + rax*8 + 0x75]
call fcn.00709ca0
add byte [rbp + 0x43f], 1
cmp byte [rbp + 0x43f], 0x11
jne 0x709e63
nop
mov byte [rbp + 0x43f], 1
cmp byte [rbp + 0x43f], 0x20
ja 0x709ed4
movzx rax, byte [rbp + 0x43f]
lea rcx, [0x007fa39f]
movzx rdx, byte [rbp + 0x43f]
movzx rcx, byte [rcx + rdx]
movzx rcx, byte [rcx + rbp + 0x24]
mov byte [rax + rbp + 0x3a4], cl
jmp 0x709f03
movzx rax, byte [rbp + 0x43f]
sub eax, 0x20
movsxd rax, eax
lea rcx, [0x007fa39f]
movzx rdx, byte [rbp + 0x43f]
movzx rcx, byte [rcx + rdx]
movzx rcx, byte [rcx + rbp + 0x24]
mov byte [rax + rbp + 0x3c4], cl
add byte [rbp + 0x43f], 1
cmp byte [rbp + 0x43f], 0x41
jne 0x709ea0
nop
mov byte [rbp + 0x43d], 1
cmp byte [rbp + 0x478], 0
je 0x709f4d
lea rcx, [rbp + 0x3c5]
movzx rax, byte [rbp + 0x43d]
add rax, rax
lea rax, [rax + rax*2]
lea rdx, [rbp + rax*8 + 0x75]
lea r8, [rbp + 0x3e5]
call fcn.007099a0
jmp 0x709f7e
lea rcx, [rbp + 0x3c5]
mov eax, 0x11
movzx rdx, byte [rbp + 0x43d]
sub eax, edx
movsxd rax, eax
add rax, rax
lea rax, [rax + rax*2]
lea rdx, [rbp + rax*8 + 0x75]
lea r8, [rbp + 0x3e5]
call fcn.007099a0
mov byte [rbp + 0x43f], 1
movzx rax, byte [rbp + 0x43f]
lea rax, [rax + rbp + 0x3e4]
movzx rcx, byte [rbp + 0x43f]
movzx rcx, byte [rcx + rbp + 0x3a4]
xor byte [rax], cl
add byte [rbp + 0x43f], 1
cmp byte [rbp + 0x43f], 0x21
jne 0x709f85
nop
lea rdi, [rbp + 0x3a5]
lea rsi, [rbp + 0x3c5]
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
lea rdi, [rbp + 0x3c5]
lea rsi, [rbp + 0x3e5]
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
add byte [rbp + 0x43d], 1
cmp byte [rbp + 0x43d], 0x11
jne 0x709f1b
nop
mov byte [rbp + 0x43f], 1
lea rax, str._a__b0
movzx rcx, byte [rbp + 0x43f]
movzx rax, byte [rax + rcx]
mov byte [rbp + 0x43e], al
cmp byte [rbp + 0x43e], 0x20
ja 0x70a043
movzx rax, byte [rbp + 0x43f]
movzx rcx, byte [rbp + 0x43e]
movzx rcx, byte [rcx + rbp + 0x3c4]
mov byte [rax + rbp + 0x64], cl
jmp 0x70a066
movzx rax, byte [rbp + 0x43f]
movzx rcx, byte [rbp + 0x43e]
sub ecx, 0x20
movsxd rcx, ecx
movzx rcx, byte [rcx + rbp + 0x3a4]
mov byte [rax + rbp + 0x64], cl
add byte [rbp + 0x43f], 1
cmp byte [rbp + 0x43f], 0x41
jne 0x70a001
nop
mov byte [rbp + 0x43f], 1
mov rcx, qword [rbp + 0x468]
movzx rdx, byte [rbp + 0x43f]
movzx rax, byte [rbp + 0x43f]
movzx r8, byte [rax + rbp + 0x64]
call fcn.00709920
add byte [rbp + 0x43f], 1
cmp byte [rbp + 0x43f], 0x41
jne 0x70a07e
nop
lea rsp, [rbp + 0x440]
pop rsi
pop rdi
pop rbp
ret