Function at 0xeac127
Capabilities:
Encode data using xor
Manually build aes constants

Disassembly:
inc ecx
rol eax, 1
inc esp
xchg esi, esi
dec ecx
inc ebp
inc ecx
xor eax, 0xfc0c699d
shr dword [esp + ecx - 0x5ca701ab], 0x33
sal dl, 1
cwde
inc ecx
ror eax, 1
push ebp
inc ecx
bt ebx, 0x91
dec eax
mov dword [esp + ecx - 0x5ca701a4], ebx
ror si, cl
inc esp
xor dword [esp + ecx - 0x5ca701a4], eax
dec eax
mov ebx, dword [esp + ebp - 0x77f8]
dec ebp
arpl ax, ax
inc ecx
pop edi
call fcn.0095818e
push 0x2b8a993
lea esp, [esp + 0x20]
ret
xor bl, dl
or word [esp + ecx - 0xa196f99], 0x1b1b
mov dword [ebp + ecx*2 - 0x1432df3a], edx
or dword [esp + ecx*8 - 0x50cb7cc8], eax
rol dword [esp + ecx - 0xa196f99], cl
jae 0x989704
sar dl, 0xa1
neg al
and dword [esp + ecx - 0xfff3], ecx
inc edx
sbb dword [esp + ecx*2 - 0x1fff6], ecx
xor al, cl
sal dword [esp + ecx*2 - 0x1fffe], cl
or edx, edx
xor bl, al
sar dx, 0x62
lea eax, [esp + eax + 0x10]
add ecx, 0xeca97431
ja 0xaa08f3
pop edx
lea esi, [esi + eax*8 - 0x1ffffffc]
xor ecx, ebx
sar edx, 0x30
btr eax, edx
inc ecx
or al, dh
seta byte [esp + eax - 0x3fffffc]
neg edx
rol ecx, 1
jmp 0xa98fcf
lea ebp, [ebp + ecx - 0xa196fa1]
pop eax
ja fcn.00989a2c
push 0xd43e32b0
call fcn.00944ce2
lea ebp, [ebp + eax - 0x45f5f794]
ror byte [esp + eax - 0x45f5f788], 0x62
dec dl
mov dword [ebp + eax - 0x45f5f790], ecx
mov ecx, 0x582fff17
jge 0xa91ddf
lea esi, [ecx + esi - 0x7494a895]
mov edx, ecx
lea edx, [edx*2 - 0x355a6a6c]
xor eax, ebx
lea ecx, [edx*8 - 0x57d9abf1]
btc cx, dx
rol eax, 1
bswap edx
btc edx, 0x9b
dec eax
neg edx
jge 0xa4d985
sub ebp, 0xaab3bf92
rol ebp, 1
inc sp
add ebx, eax
push edx
inc ecx
push eax
xor ebp, 0xd8923f87
dec eax
rol edx, 0x84
jb 0x9559a1
rol byte [esp + ecx*2 - 0x1ff], 0x87
ror ebp, 2
dec eax
cdq
inc ecx
imul eax
inc ecx
movsx esi, si
xor ebp, 0xbaa54227
dec ecx
shr esi, 0x55
mov byte [esp + ecx*2 - 0x1fb], cl
dec eax
mov dword [esp + ecx*4 - 0x3f8], ebx
xor dword [esp + ecx - 0xf8], ebp
inc esp
mov esp, dword [esp + eax - 0x217c4e69]
mov dword [esp + ecx - 0x100], ecx
not word [esp + eax*2 - 0x42f89ccf]
dec eax
mov ebx, dword [esp + eax*2 - 0x42f89cca]
jmp 0xa5b652
inc ecx
dec bl
mov esi, 0x7285da10
dec ecx
lea ebp, [edi + esi*8 - 0x59c48f80]
dec edi
lea ebp, [esp + edi*8 + 0x64b0c604]
inc ecx
neg bl
sal eax, 0x7f
inc ecx
xor bl, bl
dec ecx
btr edi, 0x28
dec ecx
adc edx, edi
dec esi
lea ebx, [esp + ebx + 8]
dec eax
ror dword [esp + eax - 0x80000000], 0x1d
inc di
movzx edi, byte [esp + ebx - 0x4cb61629]
or si, 0xdf3b
dec ebp
lea ecx, [ecx + edx - 0x4cb61454]
dec byte [esp + esi - 0x7285df37]
inc cx
neg ebp
inc si
mov dword [esi + ecx - 0x7285df3b], edi
imul byte [esp + eax - 0x80000000]
jno 0xab6a6d
sub ebp, 4
mov eax, 0xd61ee50e
rol al, 0x27
movzx ecx, ax
mov eax, dword [ebp + ecx*2 - 0x1ca0e]
setae cl
shr ecx, 0x81
seto cl
xor eax, ebx
movzx edx, cl
shl dx, 0xa4
bswap eax
btc ecx, edx
lea eax, [ecx + eax + 0x44a1fd23]
neg eax
neg cl
add ecx, ecx
not cl
bswap eax
or dl, dl
rol eax, cl
sal dl, cl
sbb cl, cl
neg eax
xor ebx, eax
add edi, eax
movzx ax, byte [esi + ecx*2 - 0x1ca00]
add cl, byte [esi + ecx*4 - 0x393fe]
shl edx, 0x44
lea esi, [esi + edx*4 + 2]
xor dx, 0x7c24
shr dx, 0x6c
xor edx, edx
sal al, cl
mov word [esi + edx], ax
or edx, edi
jmp edx
bt dx, 0
mul eax
xor ecx, 0x2bb07120
sal al, 0x61
sal edx, 0x62
sbb eax, eax
ror ecx, 1
bt eax, 0x3f
mul dx
mul dx
xor ebx, ecx
mul eax
jb 0x9f1da7
and cl, 0xb
not eax
btr dx, cx
xor eax, 0xdd11d828
xor ebx, eax
inc edx
add edi, eax
mov edx, dword [ebp + ecx - 0x469d8a0b]
mov eax, dword [ebp + ecx - 0x469d8a07]
sar cl, 0x24
mov ecx, dword [ebp + ecx - 0x469d89f8]
jb 0x990648
call fcn.0094f8a7
xchg dword [esp + ecx - 0x80000], ecx
neg cx
not dl
btr ax, cx
jae 0x9581df
dec esp
mov dword [esp + ecx*2 - 0x1f8], eax
dec eax
btc ecx, 0xa2
dec eax
arpl bp, bp
ror ecx, 0xcd
call fcn.0096ec82
inc ecx
ror bl, 1
inc bp
btr edi, esp
inc esp
and bh, al
inc ecx
sbb bl, 0xbd
dec eax
cwde
inc ecx
ror bl, 1
jmp 0xa1d6d9
xor dword [esp + edx - 0x4cb6116d], esi
mul word [esp + edx - 0x4cb61174]
dec ebp
lea esi, [ebp + ebp*8 + 0x592683b1]
cwde
dec eax
mov ebx, dword [esp + edx - 0x4cb60608]
dec eax
imul dword [esp + eax - 0x677c]
dec eax
arpl si, si
dec eax
add edi, esi
movsx esi, bp
inc ecx
pop ebp
inc ecx
pop ebx
jmp fcn.00987526
and al, dl
pop eax
pop eax
pop edx
pop edx
jge fcn.00989a2c
xor ecx, 0x9f156bae
sub al, byte [esp + eax - 0x4000004]
push edx
rol ecx, 3
lea eax, [eax + eax + 0x510ce985]
xchg dword [esp + eax - 0x590ce97f], eax
dec ecx
jmp 0xa4d179
mov edx, dword [eax]
mov dword [ebp - 4], edx
lea edx, [ecx - 0x47c1a44e]
movsx eax, word [esp + 4]
mov eax, dword [eax + ebp - 0x76c1]
xor dword [esp + 0xc], 0xfa88b017
sal dx, 0x6a
xchg byte [esp + 0xe], ch
mov edx, dword [ebp]
sal ecx, cl
adc ecx, dword [esp + 0xc]
push ecx
or eax, edx
movsx edx, cx
not eax
mov dword [ebp], eax
dec byte [esp + 9]
sub dword [esp + 0x10], edx
movsx eax, cx
pop eax
pop edx
pop edx
pop eax
pop ecx
jmp edi
push ebp
dec ebp
lea edx, [edx + edx - 0x4cb61456]
mov ecx, 0xe2a1c4ad
inc ebx
mov esi, dword [esp + edx - 0x4cb61629]
inc esi
movsx edi, word [esp - 0x4cb6161f]
inc cx
sbb eax, ebp
dec ebp
lea esp, [ebp + edx*2 - 0x576b2d53]
xor esi, ebx
dec ecx
or eax, edi
inc ebp
movsx eax, di
sbb esi, 0xaab3bf92
rol esi, 1
xor esi, 0xd8923f87
neg word [esp + edx - 0x4cb61446]
xor byte [esp + edx - 0x4cb6144c], ch
ror esi, 2
xor esi, 0xbaa54227
inc sp
bt edx, ebp
inc dx
idiv dword [esp + edi + 0xb]
dec edx
mov dword [esp + edi + 8], ebx
inc dx
dec dword [esp + edi + 2]
jno 0xa7d5d5
mov edx, 0x31b99189
push edx
mov edx, dword [esi + edx*2 - 0x63732312]
push 0x718d76bd
mov dword [esp + 8], 0xf116732c
mov eax, 0x5c107e29
xor edx, ebx
dec al
lea eax, [eax + eax*8 - 0x4f5f4cfe]
and eax, dword [esp + 8]
rol edx, 3
sar eax, 0x67
dec edx
shl eax, 0x49
rol byte [esp + 3], 7
movsx ecx, word [esp + 4]
rol edx, 1
shl byte [esp + 4], 0xc7
rol cl, 0x41
dec edx
push eax
neg cx
neg byte [esp + 0xf]
ror edx, 2
sar ecx, cl
sal eax, cl
add cx, word [esp + eax + 0xe]
xor ebx, edx
add edi, edx
cwde
sar ax, 0x8e
add al, byte [esi + eax*8 + 4]
lea edx, [ecx + ecx*2 + 0x6bb3f027]
lea esi, [edx + esi - 0x6bb11d55]
sub edx, dword [esp + edx - 0x6bb11d4e]
inc byte [esp + edx - 0x5c9aaa24]
ror dl, 0xe6
xor al, bl
imul edx, dword [esp + edx - 0x5c9aaaac]
and byte [esp], 0x2d
not al
btc dx, dx
inc al
shr ecx, 0xd0
jne 0x976369
mov eax, 0x492a5716