Function at 0x10001d40
Capabilities:
Encode data using xor
Encrypt data using aes
Encrypt data using rc4 ksa
Reference aes constants

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov byte [0x1001067f], 0
mov dl, 1
push ebx
push esi
push edi
xor ebx, ebx
movzx eax, dl
mov cl, dl
sar cl, 7
and cl, 0x1b
mov byte [ebx + 0x100128a0], dl
mov byte [eax + 0x10010678], bl
mov al, dl
add al, al
inc ebx
xor cl, al
xor dl, cl
cmp ebx, 0x100
jb 0x10001d54
mov byte [0x10010679], 0
mov cl, 1
xor edx, edx
nop word [eax + eax]
movzx eax, cl
mov dword [edx + 0x10010878], eax
mov al, cl
sar al, 7
add cl, cl
and al, 0x1b
add edx, 4
xor cl, al
cmp edx, 0x28
jb 0x10001d90
xor ebx, ebx
nop
test ebx, ebx
je 0x10001dc6
movzx eax, byte [ebx + 0x10010678]
mov ecx, 0x1001299f
sub ecx, eax
mov dl, byte [ecx]
jmp 0x10001dc8
xor dl, dl
mov al, dl
mov cl, dl
add al, al
shr cl, 7
or cl, al
mov al, cl
xor dl, cl
shr al, 7
add cl, cl
or al, cl
mov cl, al
xor dl, al
add al, al
shr cl, 7
or cl, al
mov al, cl
ror al, 7
xor al, cl
xor al, dl
xor al, 0x63
mov byte [ebx + 0x100139a0], al
movzx eax, al
mov byte [eax + 0x10010778], bl
inc ebx
cmp ebx, 0x100
jb 0x10001db0
mov ebx, 0xff
xor esi, esi
mov dword [ebp - 8], ebx
nop word [eax + eax]
mov cl, byte [esi + 0x100139a0]
movzx edi, cl
mov eax, edi
mov dword [esi*4 + 0x100108a0], edi
rol eax, 8
mov dword [esi*4 + 0x10010ca0], eax
mov eax, edi
rol eax, 0x10
mov dword [esi*4 + 0x100110a0], eax
mov eax, edi
rol eax, 0x18
mov dword [esi*4 + 0x100114a0], eax
test cl, cl
je 0x10001e8e
movzx ecx, byte [edi + 0x10010678]
xor edx, edx
movzx eax, byte [0x1001067a]
add eax, ecx
div ebx
movzx eax, byte [0x1001067b]
add eax, ecx
mov ecx, 0xff
movzx ebx, byte [edx + 0x100128a0]
xor edx, edx
div ecx
movzx ecx, byte [edx + 0x100128a0]
jmp 0x10001e92
xor ebx, ebx
xor ecx, ecx
shl ecx, 8
or ecx, edi
shl ecx, 8
or ecx, edi
shl ecx, 8
or ecx, ebx
mov eax, ecx
mov dword [esi*4 + 0x1000f678], ecx
rol eax, 8
mov dword [esi*4 + 0x1000fa78], eax
mov eax, ecx
rol eax, 0x10
rol ecx, 0x18
mov dword [esi*4 + 0x1000fe78], eax
mov dword [esi*4 + 0x10010278], ecx
mov cl, byte [esi + 0x10010778]
movzx edx, cl
mov eax, edx
mov dword [esi*4 + str.R_tj068_], edx
rol eax, 8
mov dword [esi*4 + 0x10012da0], eax
mov eax, edx
rol eax, 0x10
mov dword [esi*4 + 0x100131a0], eax
mov eax, edx
rol eax, 0x18
mov dword [esi*4 + 0x100135a0], eax
test cl, cl
je 0x10001f69
movzx ecx, byte [edx + 0x10010678]
mov ebx, 0xff
movzx eax, byte [0x10010686]
xor edx, edx
add eax, ecx
div ebx
movzx eax, byte [0x10010681]
add eax, ecx
movzx edi, byte [edx + 0x100128a0]
xor edx, edx
div ebx
movzx eax, byte [0x10010685]
add eax, ecx
movzx ebx, byte [edx + 0x100128a0]
xor edx, edx
div dword [ebp - 8]
movzx eax, byte [edx + 0x100128a0]
xor edx, edx
mov dword [ebp - 4], eax
movzx eax, byte [0x10010683]
add eax, ecx
mov ecx, 0xff
div ecx
movzx eax, byte [edx + 0x100128a0]
jmp 0x10001f72
xor ebx, ebx
xor edi, edi
mov dword [ebp - 4], ebx
xor eax, eax
shl eax, 8
or eax, dword [ebp - 4]
shl eax, 8
or eax, ebx
mov ebx, 0xff
shl eax, 8
or eax, edi
mov ecx, eax
mov dword [esi*4 + 0x100118a0], eax
rol ecx, 8
mov dword [esi*4 + 0x10011ca0], ecx
mov ecx, eax
rol ecx, 0x10
rol eax, 0x18
mov dword [esi*4 + 0x100120a0], ecx
mov dword [esi*4 + 0x100124a0], eax
inc esi
cmp esi, 0x100
jb 0x10001e20
pop edi
pop esi
pop ebx
mov dword [0x1000f674], 1
mov esp, ebp
pop ebp
ret