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

Disassembly:
push di
lea esp, [esp + 2]
jmp 0x100d7c9a
movzx ebx, byte [esi + 0x11]
jmp 0x100870b8
dec edx
inc edi
mov ebx, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
setne dh
not dx
jmp 0x100d7725
adc dh, bh
jmp 0x100d775f
mov edx, dword [esi]
jmp 0x100d7853
add esi, 0x10
xchg dl, dh
pushfd
xchg dl, dh
bswap edx
jmp 0x100d7749
lea ecx, [ecx*4]
lea ecx, reloc.USER32.dll_GetTopWindow
mov edi, dword [ecx]
pop ecx
jmp 0x100d77ba
shr edi, 0x18
push ecx
mov ecx, edi
jmp 0x100d7786
clc
jmp 0x100d781c
sub esp, 0x16
lea esp, [esp + 2]
and edi, ecx
mov edi, dword [edi*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d77a4
sub esp, 0xf
pop dword [esp + 5]
clc
lea esp, [esp + 3]
lea esp, [esp + 8]
popal
jmp 0x100d779c
dec bx
mov ebx, dword [esp]
push eax
mov eax, esi
jmp 0x100d77ff
add eax, 2
movzx ebx, byte [eax]
pop eax
mov ebx, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d782c
and ebx, ecx
stc
lea esp, [esp + 0x18]
xor edi, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d77f1
cmc
call fcn.100d7bea
bswap ebx
mov bh, 0x59
movzx ebx, byte [esi + 5]
sub esp, 0x17
cmc
jmp 0x100d7943
pushal
xchg cx, di
mov eax, 0x41aea0ff
mov dword [esp], edx
stc
jmp 0x100d77de
mov edx, dword [esi + 4]
call 0x100d7865
mov ebx, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
mov edi, esp
mov edi, edx
stc
jmp 0x100d78df
and edx, ecx
stc
lea esp, [esp + 0x18]
xor edi, dword [edx*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d787b
sub esp, 0x15
lea esp, [esp + 1]
and edi, ecx
push ecx
jmp 0x100d78c4
mov ecx, edi
lea ecx, [ecx*4]
lea ecx, reloc.USER32.dll_GetTopWindow
mov edi, dword [ecx]
jmp 0x100d7908
shr edi, 0x18
sub esp, 3
lea esp, [esp + 3]
mov edi, dword [edi*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d78b4
lea esp, [esp + 0x1c]
xor edi, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
mov bh, dl
btr ebx, edx
jmp 0x100d792a
pop ecx
and ebx, ecx
push bx
pushfd
lea esp, [esp + 2]
jmp 0x100d78f2
movzx ebx, byte [esi + 6]
jmp 0x100d7a59
sub esp, 0xd
lea esp, [esp + 1]
jmp 0x100d7914
lea esp, [esp + 3]
and edx, ecx
mov edx, dword [edx*4 + reloc.USER32.dll_GetTopWindow]
pushfd
jmp 0x100d78a4
and edx, ecx
jmp 0x100d7982
lea esp, [esp + 0x3c]
xor edi, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
mov bx, sp
not bh
movzx ebx, byte [esi + 9]
jmp 0x100d7956
mov edx, dword [edx*4 + reloc.USER32.dll_GetTopWindow]
cmc
and edx, ecx
stc
jmp 0x100d79cd
push edi
mov edi, esi
jmp 0x100d79b7
and ebx, ecx
pushal
push dword [esp + 0x1a]
pop dword [esp + 2]
push dword [esp + 0xe]
jmp 0x100d796c
add edi, 8
mov edx, dword [edi]
pop edi
sub esp, 7
mov dword [esp], esi
jmp 0x100d7a13
xor edi, dword [edx*4 + reloc.USER32.dll_GetTopWindow]
lea edx, [ecx + 0xb5]
mov dx, word [esp]
jmp 0x100d798f
lea esi, reloc.USER32.dll_GetTopWindow
mov ebx, dword [esi]
pop esi
cmc
sub esp, 0xc
jmp 0x100d79a6
mov ebx, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d7a37
push dword [esp + 6]
lea esp, [esp + 3]
mov dword [esi + 4], edi
cmc
jmp 0x100d79fd
mov edi, edx
pushfd
shr edi, 0x18
call 0x100d7a21
mov edi, dword [edi*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d7b33
push esi
mov esi, ebx
lea esi, [esi*4]
jmp 0x100d79ee
lea esp, [esp + 0x40]
xor edi, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
lea ebx, [edx + esi]
mov bx, 0x2970
jmp 0x100d7ab7
and ebx, ecx
pushal
mov dword [esp + 0x17], esp
add esp, 0xe
lea esp, [esp + 2]
jmp 0x100d7a65
movzx ebx, byte [esi + 0xa]
sub esp, 0x19
lea esp, [esp + 1]
mov ebx, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
call fcn.100d7a79
lea esp, [esp + 0x24]
xor edi, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d7b01
sub esp, 9
sub esp, 0x1f
push word [esp + 0x26]
lea esp, [esp + 2]
jmp 0x100d7b10
movzx ebx, byte [esi + 0xd]
and edx, ecx
mov edx, dword [edx*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d7aeb
and edx, ecx
push bp
push word [esp]
lea esp, [esp + 0x2c]
jmp 0x100d7b89
and edi, ecx
push ax
lea esp, [esp + 2]
mov edi, dword [edi*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d7a91
dec di
lea edi, reloc.USER32.dll_GetTopWindow
jmp 0x100d7b67
mov eax, esi
add eax, 8
mov dword [eax], edi
pop eax
jmp 0x100d7b47
push ebp
mov ebp, ebx
lea ebp, [ebp*4]
jmp 0x100d7bad
mov edi, edx
pushfd
add esp, 2
push word [esp + 1]
jmp 0x100d7b97
xor edi, dword [edx*4 + reloc.USER32.dll_GetTopWindow]
mov edx, dword [esi + 0xc]
pushal
push eax
jmp 0x100d7b5d
shr edi, 0x18
stc
sub esp, 0x15
lea esp, [esp + 1]
jmp 0x100d7bc3
lea ebp, reloc.USER32.dll_GetTopWindow
mov ebx, dword [ebp]
pop ebp
inc di
neg di
mov edi, 0x3f206430
jmp 0x100d7b73
mov edi, dword [edi*4 + reloc.USER32.dll_GetTopWindow]
and edi, ecx
mov edi, dword [edi*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d7c55
stc
jmp 0x100d7c3c
xor bx, di
mov bx, 0x8706
movzx ebx, byte [esi + 0xe]
mov ebx, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
jmp 0x100d7bfc
and ebx, ecx
sub esp, 0xd
lea esp, [esp + 1]
jmp 0x100d7cb0
and edx, ecx
mov edx, dword [edx*4 + reloc.USER32.dll_GetTopWindow]
stc
jmp 0x100d7c26
and ebx, ecx
lea esp, [esp + 0x38]
xor edi, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
not bl
jmp 0x100d7c12
mov dword [esi + 0xc], edi
jmp 0x100d7c8e
xor edi, dword [edx*4 + reloc.USER32.dll_GetTopWindow]
push bp
lea esp, [esp + 2]
dec dword [ebp - 4]
jmp 0x100d7c66
jne 0x100870ae
je 0x10087082
mov edi, dword [esp]
jmp 0x100d7cd6
lea esp, [esp + 0xc]
xor edi, dword [ebx*4 + reloc.USER32.dll_GetTopWindow]
and edx, ecx
stc
jmp 0x100d7c7c
lea esp, [esp + 4]
leave
ret
lea esp, [esp + 4]
pop esi
mov ebx, dword [esp]
jmp 0x100d7cc0