Function at 0x401c00
Capabilities:
Manually build aes constants

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x218
mov dword [ebp - 0x108], 0
mov byte [ebp - 0x102], 1
jmp 0x401c59
mov eax, dword [ebp - 0x108]
add eax, 1
mov dword [ebp - 0x108], eax
movzx ecx, byte [ebp - 0x102]
shl ecx, 1
movzx edx, byte [ebp - 0x102]
and edx, 0x80
neg edx
sbb edx, edx
and edx, 0x1b
xor ecx, edx
movzx eax, byte [ebp - 0x102]
xor eax, ecx
mov byte [ebp - 0x102], al
cmp dword [ebp - 0x108], 0x100
jge 0x401c8e
mov ecx, dword [ebp - 0x108]
mov dl, byte [ebp - 0x102]
mov byte [ebp + ecx - 0x208], dl
movzx eax, byte [ebp - 0x102]
mov cl, byte [ebp - 0x108]
mov byte [ebp + eax - 0x100], cl
jmp 0x401c1c
mov dword [ebp - 0x108], 0
mov byte [ebp - 0x102], 1
jmp 0x401cd5
mov edx, dword [ebp - 0x108]
add edx, 1
mov dword [ebp - 0x108], edx
movzx eax, byte [ebp - 0x102]
shl eax, 1
movzx ecx, byte [ebp - 0x102]
and ecx, 0x80
neg ecx
sbb ecx, ecx
and ecx, 0x1b
xor eax, ecx
mov byte [ebp - 0x102], al
cmp dword [ebp - 0x108], 0xa
jge 0x401cf7
movzx edx, byte [ebp - 0x102]
shl edx, 0x18
mov eax, dword [ebp - 0x108]
mov dword [eax*4 + 0x413c48], edx
jmp 0x401ca1
mov dword [str..cmd], 0x63
mov dword [0x4161fc], 0
mov dword [ebp - 0x108], 1
jmp 0x401d26
mov ecx, dword [ebp - 0x108]
add ecx, 1
mov dword [ebp - 0x108], ecx
cmp dword [ebp - 0x108], 0x100
jge 0x401e58
mov edx, dword [ebp - 0x108]
movzx eax, byte [ebp + edx - 0x100]
mov ecx, 0xff
sub ecx, eax
mov dl, byte [ebp + ecx - 0x208]
mov byte [ebp - 0x102], dl
mov al, byte [ebp - 0x102]
mov byte [ebp - 0x101], al
movzx ecx, byte [ebp - 0x101]
shl ecx, 1
movzx edx, byte [ebp - 0x101]
sar edx, 7
or ecx, edx
mov byte [ebp - 0x101], cl
movzx eax, byte [ebp - 0x101]
movzx ecx, byte [ebp - 0x102]
xor ecx, eax
mov byte [ebp - 0x102], cl
movzx edx, byte [ebp - 0x101]
shl edx, 1
movzx eax, byte [ebp - 0x101]
sar eax, 7
or edx, eax
mov byte [ebp - 0x101], dl
movzx ecx, byte [ebp - 0x101]
movzx edx, byte [ebp - 0x102]
xor edx, ecx
mov byte [ebp - 0x102], dl
movzx eax, byte [ebp - 0x101]
shl eax, 1
movzx ecx, byte [ebp - 0x101]
sar ecx, 7
or eax, ecx
mov byte [ebp - 0x101], al
movzx edx, byte [ebp - 0x101]
movzx eax, byte [ebp - 0x102]
xor eax, edx
mov byte [ebp - 0x102], al
movzx ecx, byte [ebp - 0x101]
shl ecx, 1
movzx edx, byte [ebp - 0x101]
sar edx, 7
or ecx, edx
mov byte [ebp - 0x101], cl
movzx eax, byte [ebp - 0x101]
xor eax, 0x63
movzx ecx, byte [ebp - 0x102]
xor ecx, eax
mov byte [ebp - 0x102], cl
movzx edx, byte [ebp - 0x102]
mov eax, dword [ebp - 0x108]
mov dword [eax*4 + str..cmd], edx
movzx ecx, byte [ebp - 0x102]
mov edx, dword [ebp - 0x108]
mov dword [ecx*4 + 0x416070], edx
jmp 0x401d17
mov dword [ebp - 0x108], 0
jmp 0x401e73
mov eax, dword [ebp - 0x108]
add eax, 1
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x108], 0x100
jge 0x4021cc
mov ecx, dword [ebp - 0x108]
mov dl, byte [ecx*4 + str..cmd]
mov byte [ebp - 0x102], dl
movzx eax, byte [ebp - 0x102]
shl eax, 1
movzx ecx, byte [ebp - 0x102]
and ecx, 0x80
neg ecx
sbb ecx, ecx
and ecx, 0x1b
xor eax, ecx
mov byte [ebp - 0x101], al
movzx edx, byte [ebp - 0x102]
movzx eax, byte [ebp - 0x101]
xor edx, eax
movzx ecx, byte [ebp - 0x102]
shl ecx, 8
xor edx, ecx
movzx eax, byte [ebp - 0x102]
shl eax, 0x10
xor edx, eax
movzx ecx, byte [ebp - 0x101]
shl ecx, 0x18
xor edx, ecx
mov eax, dword [ebp - 0x108]
mov dword [eax*4 + 0x415c70], edx
mov ecx, dword [ebp - 0x108]
mov edx, dword [ebp - 0x108]
mov eax, dword [edx*4 + 0x415c70]
mov dword [ecx*4 + 0x415c70], eax
mov ecx, dword [ebp - 0x108]
mov edx, dword [ecx*4 + 0x415c70]
shl edx, 0x18
mov eax, dword [ebp - 0x108]
mov ecx, dword [eax*4 + 0x415c70]
shr ecx, 8
or edx, ecx
mov eax, dword [ebp - 0x108]
mov dword [eax*4 + 0x415870], edx
mov ecx, dword [ebp - 0x108]
mov edx, dword [ecx*4 + 0x415870]
shl edx, 0x18
mov eax, dword [ebp - 0x108]
mov ecx, dword [eax*4 + 0x415870]
shr ecx, 8
or edx, ecx
mov eax, dword [ebp - 0x108]
mov dword [eax*4 + 0x415470], edx
mov ecx, dword [ebp - 0x108]
mov edx, dword [ecx*4 + 0x415470]
shl edx, 0x18
mov eax, dword [ebp - 0x108]
mov ecx, dword [eax*4 + 0x415470]
shr ecx, 8
or edx, ecx
mov eax, dword [ebp - 0x108]
mov dword [eax*4 + 0x415070], edx
mov ecx, dword [ebp - 0x108]
mov dl, byte [ecx*4 + 0x416070]
mov byte [ebp - 0x101], dl
mov eax, 0xb
test eax, eax
je 0x401ffa
movzx ecx, byte [ebp - 0x101]
test ecx, ecx
je 0x401ffa
movzx eax, byte [ebp - 0xf5]
movzx edx, byte [ebp - 0x101]
movzx ecx, byte [ebp + edx - 0x100]
add eax, ecx
cdq
mov ecx, 0xff
idiv ecx
movzx edx, byte [ebp + edx - 0x208]
mov dword [ebp - 0x20c], edx
jmp 0x402004
mov dword [ebp - 0x20c], 0
mov eax, 0xd
test eax, eax
je 0x402048
movzx ecx, byte [ebp - 0x101]
test ecx, ecx
je 0x402048
movzx eax, byte [ebp - 0xf3]
movzx edx, byte [ebp - 0x101]
movzx ecx, byte [ebp + edx - 0x100]
add eax, ecx
cdq
mov ecx, 0xff
idiv ecx
movzx edx, byte [ebp + edx - 0x208]
mov dword [ebp - 0x210], edx
jmp 0x402052
mov dword [ebp - 0x210], 0
mov eax, 9
test eax, eax
je 0x402096
movzx ecx, byte [ebp - 0x101]
test ecx, ecx
je 0x402096
movzx eax, byte [ebp - 0xf7]
movzx edx, byte [ebp - 0x101]
movzx ecx, byte [ebp + edx - 0x100]
add eax, ecx
cdq
mov ecx, 0xff
idiv ecx
movzx edx, byte [ebp + edx - 0x208]
mov dword [ebp - 0x214], edx
jmp 0x4020a0
mov dword [ebp - 0x214], 0
mov eax, 0xe
test eax, eax
je 0x4020e4
movzx ecx, byte [ebp - 0x101]
test ecx, ecx
je 0x4020e4
movzx eax, byte [ebp - 0xf2]
movzx edx, byte [ebp - 0x101]
movzx ecx, byte [ebp + edx - 0x100]
add eax, ecx
cdq
mov ecx, 0xff
idiv ecx
movzx edx, byte [ebp + edx - 0x208]
mov dword [ebp - 0x218], edx
jmp 0x4020ee
mov dword [ebp - 0x218], 0
mov eax, dword [ebp - 0x210]
shl eax, 8
xor eax, dword [ebp - 0x20c]
mov ecx, dword [ebp - 0x214]
shl ecx, 0x10
xor eax, ecx
mov edx, dword [ebp - 0x218]
shl edx, 0x18
xor eax, edx
mov ecx, dword [ebp - 0x108]
mov dword [ecx*4 + 0x414c70], eax
mov edx, dword [ebp - 0x108]
mov eax, dword [ebp - 0x108]
mov ecx, dword [eax*4 + 0x414c70]
mov dword [edx*4 + 0x414c70], ecx
mov edx, dword [ebp - 0x108]
mov eax, dword [edx*4 + 0x414c70]
shl eax, 0x18
mov ecx, dword [ebp - 0x108]
mov edx, dword [ecx*4 + 0x414c70]
shr edx, 8
or eax, edx
mov ecx, dword [ebp - 0x108]
mov dword [ecx*4 + 0x414870], eax
mov edx, dword [ebp - 0x108]
mov eax, dword [edx*4 + 0x414870]
shl eax, 0x18
mov ecx, dword [ebp - 0x108]
mov edx, dword [ecx*4 + 0x414870]
shr edx, 8
or eax, edx
mov ecx, dword [ebp - 0x108]
mov dword [ecx*4 + 0x413848], eax
mov edx, dword [ebp - 0x108]
mov eax, dword [edx*4 + 0x413848]
shl eax, 0x18
mov ecx, dword [ebp - 0x108]
mov edx, dword [ecx*4 + 0x413848]
shr edx, 8
or eax, edx
mov ecx, dword [ebp - 0x108]
mov dword [ecx*4 + 0x413448], eax
jmp 0x401e64
mov esp, ebp
pop ebp
ret