Function at 0x404d50
Capabilities:
Encrypt data using aes
Reference aes constants

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
movzx ecx, byte [eax]
movzx edx, byte [ecx + 0x4b4a80]
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax]
xor edx, ecx
mov eax, dword [ebp + 8]
mov byte [eax], dl
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 1]
movzx eax, byte [edx + 0x4b4a80]
mov ecx, dword [ebp + 0xc]
movzx edx, byte [ecx + 1]
xor eax, edx
mov ecx, dword [ebp + 8]
mov byte [ecx + 1], al
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 2]
movzx ecx, byte [eax + 0x4b4a80]
mov edx, dword [ebp + 0xc]
movzx eax, byte [edx + 2]
xor ecx, eax
mov edx, dword [ebp + 8]
mov byte [edx + 2], cl
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 3]
movzx edx, byte [ecx + 0x4b4a80]
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 3]
xor edx, ecx
mov eax, dword [ebp + 8]
mov byte [eax + 3], dl
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 4]
movzx eax, byte [edx + 0x4b4a80]
mov ecx, dword [ebp + 0xc]
movzx edx, byte [ecx + 4]
xor eax, edx
mov ecx, dword [ebp + 8]
mov byte [ecx + 4], al
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 5]
movzx ecx, byte [eax + 0x4b4a80]
mov edx, dword [ebp + 0xc]
movzx eax, byte [edx + 5]
xor ecx, eax
mov edx, dword [ebp + 8]
mov byte [edx + 5], cl
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 6]
movzx edx, byte [ecx + 0x4b4a80]
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 6]
xor edx, ecx
mov eax, dword [ebp + 8]
mov byte [eax + 6], dl
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 7]
movzx eax, byte [edx + 0x4b4a80]
mov ecx, dword [ebp + 0xc]
movzx edx, byte [ecx + 7]
xor eax, edx
mov ecx, dword [ebp + 8]
mov byte [ecx + 7], al
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 8]
movzx ecx, byte [eax + 0x4b4a80]
mov edx, dword [ebp + 0xc]
movzx eax, byte [edx + 8]
xor ecx, eax
mov edx, dword [ebp + 8]
mov byte [edx + 8], cl
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 9]
movzx edx, byte [ecx + 0x4b4a80]
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 9]
xor edx, ecx
mov eax, dword [ebp + 8]
mov byte [eax + 9], dl
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 0xa]
movzx eax, byte [edx + 0x4b4a80]
mov ecx, dword [ebp + 0xc]
movzx edx, byte [ecx + 0xa]
xor eax, edx
mov ecx, dword [ebp + 8]
mov byte [ecx + 0xa], al
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 0xb]
movzx ecx, byte [eax + 0x4b4a80]
mov edx, dword [ebp + 0xc]
movzx eax, byte [edx + 0xb]
xor ecx, eax
mov edx, dword [ebp + 8]
mov byte [edx + 0xb], cl
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 0xc]
movzx edx, byte [ecx + 0x4b4a80]
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 0xc]
xor edx, ecx
mov eax, dword [ebp + 8]
mov byte [eax + 0xc], dl
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 0xd]
movzx eax, byte [edx + 0x4b4a80]
mov ecx, dword [ebp + 0xc]
movzx edx, byte [ecx + 0xd]
xor eax, edx
mov ecx, dword [ebp + 8]
mov byte [ecx + 0xd], al
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 0xe]
movzx ecx, byte [eax + 0x4b4a80]
mov edx, dword [ebp + 0xc]
movzx eax, byte [edx + 0xe]
xor ecx, eax
mov edx, dword [ebp + 8]
mov byte [edx + 0xe], cl
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 0xf]
movzx edx, byte [ecx + 0x4b4a80]
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 0xf]
xor edx, ecx
mov eax, dword [ebp + 8]
mov byte [eax + 0xf], dl
pop ebp
ret