Function at 0x401de0
Capabilities:
Encrypt data using aes mixcolumns step

Disassembly:
sub esp, 0x1c
mov eax, dword [0x41f608]
push ebx
push esi
push edi
mov edi, ecx
mov dword [esp + 0x24], eax
xor eax, eax
lea edx, [edi + 5]
mov cl, byte [edx - 1]
mov byte [esp + eax*4 + 0x14], cl
mov cl, byte [edx]
mov byte [esp + eax*4 + 0x15], cl
mov cl, byte [edx + 1]
mov byte [esp + eax*4 + 0x16], cl
mov cl, byte [edx + 2]
mov byte [esp + eax*4 + 0x17], cl
inc eax
add edx, 4
cmp eax, 4
jl 0x401df6
xor esi, esi
lea esp, [esp]
mov cl, byte [esp + esi + 0x14]
mov dl, cl
shl dl, 1
cmp cl, 0x80
mov al, dl
jb 0x401e31
xor al, 0x1b
cmp al, 0x80
jae 0x401e39
shl al, 1
jmp 0x401e3d
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x401e45
shl al, 1
jmp 0x401e49
shl al, 1
xor al, 0x1b
cmp cl, 0x80
mov byte [esp + 0x12], al
mov al, dl
jb 0x401e56
xor al, 0x1b
cmp al, 0x80
jae 0x401e5e
shl al, 1
jmp 0x401e62
shl al, 1
xor al, 0x1b
cmp cl, 0x80
mov byte [esp + 0x10], al
jb 0x401e6e
xor dl, 0x1b
mov cl, byte [esp + esi + 0x18]
mov bl, cl
shl bl, 1
cmp cl, 0x80
mov byte [esp + 0xf], dl
mov al, bl
jb 0x401e83
xor al, 0x1b
cmp al, 0x80
jae 0x401e8b
shl al, 1
jmp 0x401e8f
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x401e97
shl al, 1
jmp 0x401e9b
shl al, 1
xor al, 0x1b
cmp cl, 0x80
mov byte [esp + 0x11], al
jb 0x401ea7
xor bl, 0x1b
mov cl, byte [esp + esi + 0x1c]
mov byte [esp + 0x13], bl
mov bl, cl
shl bl, 1
cmp cl, 0x80
mov al, bl
jb 0x401ebc
xor al, 0x1b
cmp al, 0x80
jae 0x401ec4
shl al, 1
jmp 0x401ec8
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x401ed0
shl al, 1
jmp 0x401ed4
shl al, 1
xor al, 0x1b
cmp cl, 0x80
mov dl, al
jb 0x401ede
xor bl, 0x1b
mov al, bl
cmp al, 0x80
jae 0x401ee8
shl al, 1
jmp 0x401eec
shl al, 1
xor al, 0x1b
mov bl, al
mov al, byte [esp + esi + 0x20]
cmp al, 0x80
jae 0x401efa
shl al, 1
jmp 0x401efe
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x401f06
shl al, 1
jmp 0x401f0a
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x401f12
shl al, 1
jmp 0x401f16
shl al, 1
xor al, 0x1b
xor al, byte [esp + esi + 0x20]
mov cl, byte [esp + esi + 0x1c]
xor al, bl
mov bl, byte [esp + 0x13]
xor al, dl
mov dl, byte [esp + 0x11]
xor al, cl
mov cl, byte [esp + esi + 0x18]
xor al, bl
mov bl, byte [esp + 0xf]
xor al, dl
mov dl, byte [esp + 0x10]
xor al, cl
mov cl, byte [esp + 0x12]
xor al, bl
xor al, dl
xor al, cl
mov byte [edi + esi + 4], al
mov al, byte [esp + esi + 0x14]
cmp al, 0x80
jae 0x401f58
shl al, 1
jmp 0x401f5c
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x401f64
shl al, 1
jmp 0x401f68
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x401f70
shl al, 1
jmp 0x401f74
shl al, 1
xor al, 0x1b
mov cl, byte [esp + esi + 0x18]
mov dl, cl
shl dl, 1
cmp cl, 0x80
mov byte [esp + 0x13], al
mov al, dl
jb 0x401f89
xor al, 0x1b
cmp al, 0x80
jae 0x401f91
shl al, 1
jmp 0x401f95
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x401f9d
shl al, 1
jmp 0x401fa1
shl al, 1
xor al, 0x1b
cmp cl, 0x80
mov byte [esp + 0x11], al
mov al, dl
jb 0x401fae
xor al, 0x1b
cmp al, 0x80
jae 0x401fb6
shl al, 1
jmp 0x401fba
shl al, 1
xor al, 0x1b
cmp cl, 0x80
mov byte [esp + 0xf], al
jb 0x401fc6
xor dl, 0x1b
mov cl, byte [esp + esi + 0x1c]
mov bl, cl
shl bl, 1
cmp cl, 0x80
mov byte [esp + 0x10], dl
mov al, bl
jb 0x401fdb
xor al, 0x1b
cmp al, 0x80
jae 0x401fe3
shl al, 1
jmp 0x401fe7
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x401fef
shl al, 1
jmp 0x401ff3
shl al, 1
xor al, 0x1b
cmp cl, 0x80
mov byte [esp + 0x12], al
jb 0x401fff
xor bl, 0x1b
mov cl, bl
mov bl, byte [esp + esi + 0x20]
cmp bl, 0x80
jae 0x402010
shl bl, 1
mov al, bl
jmp 0x402016
shl bl, 1
mov al, bl
xor al, 0x1b
cmp al, 0x80
jae 0x40201e
shl al, 1
jmp 0x402022
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x40202a
shl al, 1
jmp 0x40202e
shl al, 1
xor al, 0x1b
mov dl, al
cmp byte [esp + esi + 0x20], 0x80
jb 0x40203a
xor bl, 0x1b
mov al, bl
cmp al, 0x80
jae 0x402044
shl al, 1
jmp 0x402048
shl al, 1
xor al, 0x1b
mov bl, byte [esp + esi + 0x1c]
xor al, dl
xor al, byte [esp + esi + 0x20]
mov dl, byte [esp + 0x12]
xor al, cl
mov cl, byte [esp + 0xf]
xor al, dl
mov dl, byte [esp + 0x10]
xor al, bl
xor al, dl
mov dl, byte [esp + 0x11]
xor al, cl
mov cl, byte [esp + 0x13]
xor al, dl
xor al, cl
mov cl, byte [esp + esi + 0x14]
xor al, cl
mov dl, cl
shl dl, 1
cmp cl, 0x80
mov byte [edi + esi + 8], al
mov al, dl
jb 0x40208b
xor al, 0x1b
cmp al, 0x80
jae 0x402093
shl al, 1
jmp 0x402097
shl al, 1
xor al, 0x1b
cmp al, 0x80
jae 0x40209f
shl al, 1
jmp 0x4020a3
shl al, 1
xor al, 0x1b
cmp cl, 0x80
mov byte [esp + 0x13], al
jb 0x4020af
xor dl, 0x1b
mov al, dl
cmp al, 0x80
jae 0x4020b9
shl al, 1
jmp 0x4020bd
shl al, 1
xor al, 0x1b
jmp 0x4df4c8