Function at 0x100d03670
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push rbp
mov rbp, rsp
lea rsp, [rsp - 0xc0]
mov qword [rbp - 0xa0], rbx
mov qword [rbp - 0x98], rsi
mov qword [rbp - 8], rcx
mov qword [rbp - 0x90], 0
mov qword [rbp - 0x88], 0
mov qword [rbp - 0x80], 0
nop
lea rax, [0x100e86808]
mov rcx, rax
mov r8d, 0
movabs rdx, 1
call fcn.100cf3df0
mov rdx, qword [rbp - 8]
mov qword [rdx - 0x20], rax
mov rax, qword [rbp - 8]
mov rax, qword [rax - 0x10]
mov eax, dword [rax + 0x38]
lea ebx, [eax - 1]
mov dword [rbp - 0x18], 0
cmp ebx, dword [rbp - 0x18]
jl 0x100d0375f
sub dword [rbp - 0x18], 1
nop
nop
add dword [rbp - 0x18], 1
mov rax, qword [rbp - 8]
mov rax, qword [rax - 0x10]
mov eax, dword [rax + 0x3c]
lea esi, [eax - 1]
mov dword [rbp - 0x10], 0
cmp esi, dword [rbp - 0x10]
jl 0x100d0375a
sub dword [rbp - 0x10], 1
nop
nop
add dword [rbp - 0x10], 1
mov r8d, dword [rbp - 0x18]
mov edx, dword [rbp - 0x10]
mov rcx, qword [rbp - 8]
call fcn.100d03a90
mov qword [rbp - 0x58], rax
lea rdx, [rbp - 0x58]
mov rax, qword [rbp - 8]
mov rcx, qword [rax - 0x20]
mov rax, qword [rbp - 8]
mov rax, qword [rax - 0x20]
mov rax, qword [rax]
call qword [rax + 0x100]
cmp esi, dword [rbp - 0x10]
jg 0x100d03720
cmp ebx, dword [rbp - 0x18]
jg 0x100d036f8
mov rax, qword [rbp - 8]
mov dword [rax - 0x38], 0
mov rax, qword [rbp - 8]
mov rcx, qword [rax - 0x20]
call fcn.100cf4250
mov dword [rbp - 0x28], eax
jmp 0x100d037a7
movsxd rcx, dword [rbp - 0x28]
movabs rax, 0x6906906906906907
imul rcx
sar rdx, 5
shr rcx, 0x3f
add rdx, rcx
mov dword [rbp - 0x28], edx
mov rax, qword [rbp - 8]
add dword [rax - 0x38], 1
cmp dword [rbp - 0x28], 0
jg 0x100d03780
mov rax, qword [rbp - 8]
mov rcx, qword [rax - 0x20]
call fcn.100cf4250
shl eax, 3
mov dword [rbp - 0x20], eax
movsxd rdx, dword [rbp - 0x20]
mov rax, qword [rbp - 8]
lea rcx, [rax - 0x28]
call fcn.100c94dc0
mov rax, qword [rbp - 8]
mov rcx, qword [rax - 0x28]
movsxd rdx, dword [rbp - 0x20]
mov r8d, 0
call fcn.100c872e0
mov rax, qword [rbp - 8]
mov rcx, qword [rax - 0x20]
call fcn.100cf4250
lea ebx, [eax - 1]
mov dword [rbp - 0x28], 0
cmp ebx, dword [rbp - 0x28]
jl 0x100d038d3
sub dword [rbp - 0x28], 1
nop
add dword [rbp - 0x28], 1
mov rax, qword [rbp - 8]
mov rdx, qword [rax - 0x28]
movsxd rax, dword [rbp - 0x28]
lea rcx, [rdx + rax*8]
mov rax, qword [rbp - 8]
movsxd rdx, dword [rax - 0x38]
mov r8d, 0
call fcn.100c8e480
mov eax, dword [rbp - 0x28]
mov dword [rbp - 0x30], eax
mov rax, qword [rbp - 8]
mov eax, dword [rax - 0x38]
mov dword [rbp - 0x40], eax
cmp dword [rbp - 0x40], 1
jl 0x100d038ca
add dword [rbp - 0x40], 1
nop
sub dword [rbp - 0x40], 1
movsxd rax, dword [rbp - 0x30]
cqo
movabs rcx, 0x4e
idiv rcx
lea rax, [rdx + 1]
and eax, 0xff
lea rdx, str.N.__abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789__:______
mov al, byte [rdx + rax]
mov byte [rbp - 0x38], al
mov rax, qword [rbp - 8]
mov rdx, qword [rax - 0x28]
movsxd rax, dword [rbp - 0x28]
lea rcx, [rdx + rax*8]
call fcn.100c8e640
movsxd rdx, dword [rbp - 0x40]
mov cl, byte [rbp - 0x38]
mov byte [rax + rdx - 1], cl
movsxd rcx, dword [rbp - 0x30]
movabs rax, 0x6906906906906907
imul rcx
sar rdx, 5
shr rcx, 0x3f
add rdx, rcx
mov dword [rbp - 0x30], edx
cmp dword [rbp - 0x40], 1
jg 0x100d03858
cmp ebx, dword [rbp - 0x28]
jg 0x100d03810
mov rax, qword [rbp - 8]
mov rcx, qword [rax - 0x20]
call fcn.100cf4250
shl eax, 3
mov dword [rbp - 0x48], eax
movsxd rdx, dword [rbp - 0x48]
mov rax, qword [rbp - 8]
lea rcx, [rax - 0x30]
call fcn.100c94dc0
mov rax, qword [rbp - 8]
mov rcx, qword [rax - 0x30]
movsxd rdx, dword [rbp - 0x48]
mov r8d, 0
call fcn.100c872e0
mov rax, qword [rbp - 8]
mov rcx, qword [rax - 0x20]
call fcn.100cf4250
lea ebx, [eax - 1]
mov dword [rbp - 0x28], 0
cmp ebx, dword [rbp - 0x28]
jl 0x100d03a10
sub dword [rbp - 0x28], 1
nop
nop
add dword [rbp - 0x28], 1
mov rax, qword [rbp - 8]
mov rcx, qword [rax - 0x20]
mov edx, dword [rbp - 0x28]
call fcn.100cf4200
mov qword [rbp - 0x50], rax
cmp word [rbp - 0x4a], 0
jne 0x100d03979
mov rax, qword [rbp - 8]
mov rdx, qword [rax - 0x30]
movsxd rax, dword [rbp - 0x28]
lea rcx, [rdx + rax*8]
lea rdx, str.None
call fcn.100c8d560
jmp 0x100d03a07
lea rax, [0x100e885b0]
mov qword [rbp - 0x78], rax
movzx r8d, word [rbp - 0x50]
lea rdx, [rbp - 0x80]
mov rcx, qword [rbp - 8]
call fcn.100d03a30
mov rax, qword [rbp - 0x80]
mov qword [rbp - 0x70], rax
movzx r8d, word [rbp - 0x4e]
lea rdx, [rbp - 0x88]
mov rcx, qword [rbp - 8]
call fcn.100d03a30
mov rax, qword [rbp - 0x88]
mov qword [rbp - 0x68], rax
movzx r8d, word [rbp - 0x4c]
lea rdx, [rbp - 0x90]
mov rcx, qword [rbp - 8]
call fcn.100d03a30
mov rax, qword [rbp - 0x90]
mov qword [rbp - 0x60], rax
lea rdx, [rbp - 0x78]
mov rax, qword [rbp - 8]
mov rcx, qword [rax - 0x30]
movsxd rax, dword [rbp - 0x28]
lea rcx, [rcx + rax*8]
mov r9d, 0
movabs r8, 3
call fcn.100c8d9a0
cmp ebx, dword [rbp - 0x28]
jg 0x100d03938
nop
mov rcx, rbp
call fcn.100d03630
mov rbx, qword [rbp - 0xa0]
mov rsi, qword [rbp - 0x98]
lea rsp, [rbp]
pop rbp
ret