Function at 0x100d43a0
Capabilities:
Encrypt data using aes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov edx, dword [ebp + 8]
push ebx
push esi
push edi
mov eax, dword [edx]
xor dword [ecx + 0xc], eax
mov eax, dword [edx]
xor dword [ecx + 0x2c], eax
movzx eax, byte [ecx + 0x19]
movzx edx, byte [ecx + 0x12]
mov edi, dword [eax*4 + 0x101f4270]
xor edi, dword [edx*4 + 0x101f3e70]
movzx eax, byte [ecx + 0xf]
movzx edx, byte [ecx + 0x16]
xor edi, dword [eax*4 + 0x101f3a70]
movzx eax, byte [ecx + 0x1c]
xor edi, dword [eax*4 + 0x101f4670]
movzx eax, byte [ecx + 0x1d]
xor edi, 0x2ad01c64
mov ebx, dword [eax*4 + 0x101f4270]
xor ebx, dword [edx*4 + 0x101f3e70]
movzx eax, byte [ecx + 0x13]
movzx edx, byte [ecx + 0x1a]
xor ebx, dword [eax*4 + 0x101f3a70]
movzx eax, byte [ecx + 0x20]
xor ebx, dword [eax*4 + 0x101f4670]
movzx eax, byte [ecx + 0x21]
mov esi, dword [eax*4 + 0x101f4270]
xor esi, dword [edx*4 + 0x101f3e70]
movzx eax, byte [ecx + 0x17]
movzx edx, byte [ecx + 0x1e]
xor esi, dword [eax*4 + 0x101f3a70]
movzx eax, byte [ecx + 0x24]
xor esi, dword [eax*4 + 0x101f4670]
movzx eax, byte [ecx + 0x25]
mov dword [ebp + 8], esi
mov esi, dword [eax*4 + 0x101f4270]
xor esi, dword [edx*4 + 0x101f3e70]
movzx eax, byte [ecx + 0x1b]
movzx edx, byte [ecx + 0x22]
xor esi, dword [eax*4 + 0x101f3a70]
movzx eax, byte [ecx + 0x28]
xor esi, dword [eax*4 + 0x101f4670]
movzx eax, byte [ecx + 0x29]
mov dword [ebp - 0x14], esi
mov esi, dword [eax*4 + 0x101f4270]
xor esi, dword [edx*4 + 0x101f3e70]
movzx eax, byte [ecx + 0x1f]
movzx edx, byte [ecx + 0x23]
xor esi, dword [eax*4 + 0x101f3a70]
movzx eax, byte [ecx + 0xc]
xor esi, dword [eax*4 + 0x101f4670]
movzx eax, byte [ecx + 0x26]
mov dword [ebp - 0x18], esi
mov esi, dword [eax*4 + 0x101f3e70]
xor esi, dword [edx*4 + 0x101f3a70]
movzx eax, byte [ecx + 0xd]
movzx edx, byte [ecx + 0x27]
xor esi, dword [eax*4 + 0x101f4270]
movzx eax, byte [ecx + 0x10]
xor esi, dword [eax*4 + 0x101f4670]
movzx eax, byte [ecx + 0x2a]
mov dword [ebp - 4], esi
mov esi, dword [eax*4 + 0x101f3e70]
xor esi, dword [edx*4 + 0x101f3a70]
movzx eax, byte [ecx + 0x11]
movzx edx, byte [ecx + 0x15]
xor esi, dword [eax*4 + 0x101f4270]
movzx eax, byte [ecx + 0x14]
xor esi, dword [eax*4 + 0x101f4670]
movzx eax, byte [ecx + 0x2b]
mov dword [ebp - 8], esi
mov esi, dword [eax*4 + 0x101f3a70]
movzx eax, byte [ecx + 0xe]
xor esi, dword [edx*4 + 0x101f4270]
mov edx, dword [ecx + 0x68]
mov dword [ebp - 0x10], edx
xor esi, dword [eax*4 + 0x101f3e70]
movzx eax, byte [ecx + 0x18]
xor esi, dword [eax*4 + 0x101f4670]
mov dword [ebp - 0xc], esi
mov esi, 0xf
lea edx, [ecx + 0x68]
lea esp, [esp]
mov eax, dword [edx - 4]
lea edx, [edx - 4]
dec esi
mov dword [edx + 4], eax
test esi, esi
jg 0x100d4540
mov eax, dword [ebp - 0x10]
xor dword [ecx + 0x3c], edi
mov esi, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
xor dword [ecx + 0x40], ebx
xor dword [ecx + 0x4c], esi
xor dword [ecx + 0x48], edx
mov dword [ecx + 0x2c], eax
mov eax, dword [ebp + 8]
xor dword [ecx + 0x44], eax
mov eax, dword [ebp - 4]
xor dword [ecx + 0x50], eax
mov eax, dword [ebp - 8]
xor dword [ecx + 0x54], eax
mov eax, dword [ebp - 0xc]
xor dword [ecx + 0x58], eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp - 4]
mov dword [ecx + 0x20], eax
mov eax, dword [ebp - 8]
mov dword [ecx + 0x24], eax
mov eax, dword [ecx + 0x68]
xor eax, dword [ebp - 0xc]
mov dword [ecx + 0xc], edi
pop edi
mov dword [ecx + 0x1c], esi
pop esi
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x18], edx
mov dword [ecx + 0x28], eax
pop ebx
mov esp, ebp
pop ebp
ret 4