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

Disassembly:
movzx ebx, byte [esi + 0x11]
push esi
jmp 0xe13d5e
call fcn.00dccc87
mov dl, byte [ecx + 1]
cmp dl, 0x41
jb 0xdcce53
jmp 0xdcce30
mov eax, 0x403
pop ebx
ret
cmp dl, 0x5a
jbe 0xe140d2
ja 0xdcce53
add al, 0x86
adc al, 0x73
mov cs, word [ecx]
pushfd
dec ebp
mov ebx, 0x44e9a520
loope 0xdcce58
add byte [esi - 0x56d12c4c], ah
xor bl, dh
cmp dl, 0x61
jb 0xe140b1
push ebp
jb 0xdcce5f
add byte [eax - 0x79f08506], al
insd dword es:[edi], dx
jb 0xdcce68
cmp dl, 0x7a
jbe 0xe140d2
add byte [edi], cl
xchg dword [esi + 0x72], eax
add al, 0
ja 0xe140b1
jb 0xdcce6e
add byte [ecx + esi*8 + 0x306d6172], bl
add dword [eax - 0x6d], esp
pushfd
int1
jb 0xdcced0
popal
insd dword es:[edi], dx
xor byte [ecx], al
pushal
xchg ebx, eax
push ss
aam 0x88
or ax, 0x63e8
invalid
mov dword [esp], edx
pushfd
pop word [esp]
lea esp, [esp + 2]
lea esp, [esp + 0x20]
pushal
shl eax, 8
pushal
push dword [esp + 0x1e]
lea esp, [esp + 0x44]
pushfd
or eax, ecx
pushal
pop word [esp + 0xa]
pop word [esp]
pop word [esp + 0xd]
pop dword [esp + 7]
lea esp, [esp + 2]
lea esp, [esp + 0x18]
mov ecx, eax
push 0x3f
mov bh, 0xdb
mov ebx, dword [esp]
pushal
lea esp, [esp + 0x24]
pushal
mov esi, dword [esp]
mov si, word [esp]
mov di, word [esp]
jmp 0xdcce7e
mov esi, ebx
lea esi, [esi*4]
lea esi, [esi + 0xdda724]
mov ebx, dword [esi]
pop esi
add esi, 0x10
mov edx, dword [esi]
mov edi, edx
shr edi, 0x18
mov edi, dword [edi*4 + 0xdda724]
and edi, ecx
mov edi, dword [edi*4 + 0xddab24]
and ebx, ecx
xor edi, dword [ebx*4 + 0xddb324]
movzx ebx, byte [esi + 2]
mov ebx, dword [ebx*4 + 0xdda724]
and ebx, ecx
xor edi, dword [ebx*4 + 0xddaf24]
movzx ebx, byte [esi + 5]
sub esp, 0xe
push edx
mov dword [esp + 9], esp
add esp, 0xd
push dword [esp + 3]
lea esp, [esp + 1]
and edx, ecx
pushfd
mov word [esp + 1], bx
push dword [esp + 3]
pop dword [esp]
mov word [esp], bx
mov word [esp + 1], di
push word [esp + 3]
mov byte [esp + 1], cl
pop word [esp + 1]
lea esp, [esp + 0xc]
mov edx, dword [edx*4 + 0xdda724]
push ebx
push dword [esp + 1]
push word [esp + 4]
stc
push ax
add esp, 9
lea esp, [esp + 3]
and edx, ecx
push si
lea esp, [esp + 2]
xor edi, dword [edx*4 + 0xddb724]
push eax
mov eax, esi
lea eax, [eax + 4]
mov edx, dword [eax]
pop eax
mov dword [esi], edi
mov ebx, dword [ebx*4 + 0xdda724]
mov edi, edx
shr edi, 0x18
push ecx
mov ecx, edi
lea ecx, [ecx*4]
lea ecx, [ecx + 0xdda724]
mov edi, dword [ecx]
pop ecx
and edi, ecx
mov edi, dword [edi*4 + 0xddab24]
clc
stc
pushfd
sub esp, 2
push word [esp + 3]
add esp, 4
pop word [esp]
lea esp, [esp + 2]
and ebx, ecx
pushfd
push dword [esp + 1]
pop dword [esp]
lea esp, [esp + 4]
xor edi, dword [ebx*4 + 0xddb324]
movzx ebx, byte [esi + 6]
mov ebx, dword [ebx*4 + 0xdda724]
sub esp, 0x10
lea esp, [esp + 1]
mov dword [esp + 0xa], esp
lea esp, [esp + 3]
and ebx, ecx
lea esp, [esp + 0xc]
xor edi, dword [ebx*4 + 0xddaf24]
movzx ebx, byte [esi + 9]
cmc
sub esp, 0x1f
lea esp, [esp + 3]
and edx, ecx
push ax
mov byte [esp], dh
mov word [esp], di
lea esp, [esp + 1]
lea esp, [esp]
lea esp, [esp]
mov byte [esp], dl
mov byte [esp], bh
lea esp, [esp + 1]
lea esp, [esp + 0x1c]
push eax
pushal
mov edi, 0x69e4dbe
xchg bl, ah
lea esi, [eax - 0x66e7]
lea ebp, [ebx - 0x9c]
mov esi, 0x2bfd53a6
setb bh
mov ch, byte [esp]
mov eax, 0x60655c42
mov dword [esp + 0x1c], edx
pushfd
mov word [esp], cx
pop word [esp]
mov byte [esp], bl
mov word [esp], bp
push word [esp]
pop word [esp]
lea esp, [esp + 2]
popal
lea eax, [eax*4]
lea eax, [eax + 0xdda724]
mov edx, dword [eax]
pop eax
pushal
mov word [esp + 0x17], bx
pop dword [esp + 2]
and edx, ecx
pushal
push esi
pop word [esp + 1]
pop dword [esp + 0x19]
lea esp, [esp + 2]
lea esp, [esp + 0x38]
xor edi, dword [edx*4 + 0xddb724]
mov edx, dword [esi + 8]
mov dword [esi + 4], edi
mov ebx, dword [ebx*4 + 0xdda724]
mov edi, edx
push dx
push esp
mov word [esp + 1], ax
mov word [esp + 3], di
lea esp, [esp + 2]
shr edi, 0x18
pushfd
push dword [esp + 2]
pop word [esp + 3]
push dword [esp + 3]
push dword [esp + 5]
pop dword [esp + 4]
lea esp, [esp + 2]
lea esp, [esp + 0xc]
mov edi, dword [edi*4 + 0xdda724]
and edi, ecx
mov edi, dword [edi*4 + 0xddab24]
cmc
sub esp, 5
push bp
mov dword [esp], esp
add esp, 4
push word [esp + 2]
sub esp, 0x13
and ebx, ecx
pushfd
mov byte [esp + 1], bl
push dword [esp + 2]
mov word [esp + 1], di
mov word [esp + 2], sp
lea esp, [esp + 0x20]
xor edi, dword [ebx*4 + 0xddb324]
movzx ebx, byte [esi + 0xa]
mov ebx, dword [ebx*4 + 0xdda724]
sub esp, 2
push word [esp]
add esp, 1
lea esp, [esp + 3]
and ebx, ecx
pushfd
mov dword [esp], esp
mov byte [esp], ah
push dword [esp]
mov dword [esp], eax
push di
lea esp, [esp + 2]
lea esp, [esp + 8]
xor edi, dword [ebx*4 + 0xddaf24]
movzx ebx, byte [esi + 0xd]
and edx, ecx
mov edx, dword [edx*4 + 0xdda724]
and edx, ecx
xor edi, dword [edx*4 + 0xddb724]
push edi
mov edi, esi
lea edi, [edi + 0xc]
mov edx, dword [edi]
pop edi
mov dword [esi + 8], edi
mov ebx, dword [ebx*4 + 0xdda724]
mov edi, edx
shr edi, 0x18
push eax
mov eax, edi
lea eax, [eax*4]
lea eax, [eax + 0xdda724]
mov edi, dword [eax]
pop eax
and edi, ecx
mov edi, dword [edi*4 + 0xddab24]
and ebx, ecx
xor edi, dword [ebx*4 + 0xddb324]
movzx ebx, byte [esi + 0xe]
mov ebx, dword [ebx*4 + 0xdda724]
and edx, ecx
mov edx, dword [edx*4 + 0xdda724]
and ebx, ecx
xor edi, dword [ebx*4 + 0xddaf24]
and edx, ecx
xor edi, dword [edx*4 + 0xddb724]
dec dword [ebp - 4]
mov dword [esi + 0xc], edi
jne 0xdcc85c
je 0xe14902
cmp dl, 0x2b
je 0xe140d2
cmp dl, 0x2f
jne 0xdccdf3
je 0xe140d2
rcl byte [eax - 0x3a], cl
mov eax, dword [0x73efd750]
jecxz 0xe1402e
jne 0xe1409e
sbb ebx, dword [edi + 0x20996a0f]
cld
cmp dl, 0x30
jb 0xe1408e
cmp dl, 0x39
jbe 0xe140d2
ja 0xe1408e
pop esp
fimul word [ebx + ebp - 0x1a]
popal
cmpsd dword [esi], dword es:[edi]
sub edi, dword [ebx + 0x35ac2dde]
mov ch, 0x25
dec esp
mov edi, 0x2a852e3a
mov bl, byte [ecx + 2]
cmp bl, 0x41
jb 0xe14144
cmp bl, 0x5a
jbe 0xe14122
ja 0xe14144
arpl si, bp
out dx, al
insb byte es:[edi], dx
loop 0xe1406a
je 0xe140da
jae 0xe140e0
add dh, cl
js 0xe14091
daa
mov bh, 0xd2
and dword [eax + 0x7b8f7646], ebp
cmp bl, 0x30
jb 0xe14150
cmp bl, 0x39
jbe 0xe14122
ja 0xe14150
add byte [edx], 0x90
test dword [edx], 0xd84ac885
mov edi, 0x5fdbcd4a
dec edx
fdivr dword [edi + 0x5fdbcd4a]
iretd
mov cl, byte [ecx + 3]
cmp cl, 0x41
jb 0xe14191
cmp cl, 0x5a
jbe 0xe14248
ja 0xe14191
ljmp 0xb7ef:0x6899fe68
cmp bl, 0x61
jb 0xe14101
cmp bl, 0x7a
jbe 0xe14122
ja 0xe14101
cmp bl, 0x2b
je 0xe14122
cmp bl, 0x2f
jne 0xdccdf3
test dword [ebp + 0x74fffb8c], edx
ret 0xf773
je 0xe14122
jae 0xe14159
add dh, cl
js 0xe14114
sub eax, 0xb237c4bd
mov ebx, 0x528c8051
xor cl, byte [eax - 0x72fddb94]
and al, 4
cmp cl, 0x61
jb 0xe1422b
cmp cl, 0x7a
jbe 0xe14248
ja 0xe1422b
sub dword [ecx + 0x2eab5839], ebp
in eax, dx
and al, 1
cmp cl, 0x2b
je 0xe14248
cmp cl, 0x2f
je 0xe14248
jne 0xdccdf3
fstp qword [ebp - 0x33]
xchg esp, eax
loop 0xe141b5
adc al, byte [eax - 0x726aed19]
cmp cl, 0x30
jb 0xe1420e
cmp cl, 0x39
jbe 0xe14248
ja 0xe1420e
invalid
cmp al, 0x2b
jne 0xe1430a
push 0x3e
jmp 0xe1429d
push bp
push word [esp + 1]
push bx
push dword [esp]
lea esp, [esp + 6]
lea esp, [esp + 2]
mov byte [esp], bl
pushal
jmp 0xe142a5
cmp al, 0x39
ja 0xe142c4
movzx eax, al
add eax, 4
jmp 0xe14255
pop eax
jmp 0xe14255
sub eax, 0x47
jmp 0xe14255
mov word [esp + 2], ax
lea esp, [esp + 2]
mov dword [esp + 0x1c], esi
pushal
jmp 0xe142ed
cmp al, 0x5a
movzx eax, al
ja 0xe142a0
sub eax, 0x41
jmp 0xe14255
mov dword [esp + 8], edx
pop dword [esp + 0x1a]
lea esp, [esp + 0x3c]
jmp 0xe14340
mov byte [esp + 0x13], bh
push word [esp + 0x1d]
push word [esp + 0x16]
jmp 0xe142d1
cmp al, 0x2f
jne 0xe1427d
push 0x3f
jmp 0xe1429d
cmp dl, 0x2f
jne 0xe143e9
push 0x3f
jmp 0xe14357
cmp bl, 0x2b
jne 0xe143aa
push 0x3e
jmp 0xe1438d
cmp dl, 0x2b
jne 0xe14317
push 0x3e
jmp 0xe14357
mov esi, dword [esp]
pushfd
mov dword [esp], eax
pushal
pushal
lea esp, [esp + 0x48]
jmp 0xe14324
cmp dl, 0x5a
ja 0xe143c7
sub esi, 0x41
jmp 0xe14324
mov dx, 0x1684
not dx
lea edx, [edx*4]
jmp 0xe143fd
cmp bl, 0x2f
jne 0xe14431
push 0x3f
jmp 0xe1438d
sub esi, 0x47
jmp 0xe14324
movzx esi, dl
cmp dl, 0x39
ja 0xe14366
add esi, 4
jmp 0xe14324
mov dl, 0xa9
setle dl
mov edx, 0x30191cb7
mov dh, dl
mov edx, dword [esp]
push dx
mov word [esp], sp
mov word [esp], ax
push esi
push esp
lea esp, [esp + 2]
lea esp, [esp + 0xc]
jmp 0xe144ea
movzx edx, bl
cmp bl, 0x39
ja 0xe144c0
add edx, 4
jmp 0xe144ea
cmp cl, 0x2f
jne 0xe144ca
push 0x3f
jmp 0xe14493
setge ch
mov ecx, dword [esp]
pushal
push word [esp + 0x15]
pop dword [esp + 6]
lea esp, [esp + 0xc]
jmp 0xe14525
sub edx, 0x47
jmp 0xe144ea
setnp ch
mov ch, bl
mov ecx, 0x7825307e
mov ecx, 0x2603735b
mov ch, 0x33
mov cx, 0x2cca
mov ch, bl
not cl
jmp 0xe1446c
cmp bl, 0x5a
ja 0xe1448e
sub edx, 0x41
jmp 0xe144ea
cmp cl, 0x39
ja 0xe1463a
movzx ecx, cl
add ecx, 4
jmp 0xe144f7
cmp cl, 0x2b
jne 0xe14463
push 0x3e
jmp 0xe14493
push bx
mov byte [esp], bl
lea esp, [esp + 1]
lea esp, [esp]
mov byte [esp], bl
push esp
push ebx
mov dword [esp], esp
lea esp, [esp + 6]
lea esp, [esp + 3]
shl eax, 6
jmp 0xe1458c
mov word [esp + 0xd], cx
push word [esp + 0xe]
push word [esp + 0x10]
push word [esp + 0xd]
push dword [esp + 4]
lea esp, [esp + 0x20]
jmp 0xe144f7
push word [esp + 0xc]
shl eax, 6
pushfd
mov word [esp], si
jmp 0xe14613
push di
push word [esp + 1]
push word [esp + 3]
lea esp, [esp + 2]
lea esp, [esp + 4]
stc
sub esp, 4
lea esp, [esp + 1]
sub esp, 9
pop word [esp]
pop dword [esp]
push dword [esp + 1]
lea esp, [esp + 2]
or eax, esi
lea esp, [esp + 8]
pushal
mov word [esp + 1], cx
push word [esp + 0x13]
jmp 0xe1456f
sub ecx, 0x47
jmp 0xe144f7
push dword [esp + 2]
push dword [esp + 5]
mov byte [esp + 0x13], ah
lea esp, [esp + 1]
or eax, ecx
push eax
mov word [esp + 1], ax
push dword [esp + 1]
lea esp, [esp + 0x20]
jmp 0xe1467e
mov dword [esp], ebx
mov word [esp], bx
lea esp, [esp + 0x28]
or eax, edx
shl eax, 6
stc
stc
sub esp, 0x13
pop word [esp + 5]
jmp 0xe145e3
cmp cl, 0x5a
movzx ecx, cl
ja 0xe145db
sub ecx, 0x41
jmp 0xe144f7
shr edx, 0x10
push esi
pop word [esp]
mov word [esp], ax
mov word [esp], si
pushal
mov dword [esp + 7], ecx
lea esp, [esp + 2]
lea esp, [esp + 0x40]
mov byte [ecx], dl
mov edx, eax
shr edx, 8
pop esi
jmp 0xe1475e
mov ecx, dword [esp + 0xc]
pushal
mov bp, 0x2a8b
lea esi, [eax - 0xdd]
mov edi, ebp
mov dx, word [esp]
mov dword [esp + 0x14], eax
push eax
mov dword [esp], ecx
mov byte [esp + 1], cl
lea esp, [esp + 4]
popal
pushal
jmp 0xe1464a
mov byte [ecx + 2], al
mov byte [ecx + 1], dl
xor eax, eax
pop ebx
ret
push edi
mov byte [esp + 2], dh
push dword [esp + 2]
mov di, 0x2d5
mov edi, dword [esp + 8]
push di
mov word [esp], si
mov byte [esp], al
push word [esp]
mov word [esp], di
push bp
mov byte [esp + 1], dl
mov byte [esp + 2], ah
lea esp, [esp + 2]
lea esp, [esp + 0x10]
pop esi
pop ebx
leave
ret