Function at 0x1017cdf3
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using aes
Read file on windows
Reference aes constants
Terminate process

Disassembly:
mov dword [esp], eax
and ecx, edx
neg dword [esp]
not ecx
mul dword [esp]
sar ax, 0x8a
mov dword [eax + ebp - 0x1c00000], ecx
jbe 0x101dc37a
sub ebp, 1
mov eax, 0x2c2d332a
mov ecx, eax
movzx edx, byte [eax + ebp - 0x2c2d332a]
btr eax, 0xb3
setb cl
dec ax
xor dl, bl
neg cx
adc dl, 0x2f
btr eax, eax
xor dl, cl
sal cx, 1
shl al, 0x65
or al, ah
sbb dl, 0
not dl
sar ecx, cl
not cx
xor bl, dl
lea ecx, [ecx + ecx*8 - 0x7e8615c]
add edx, esp
mov cx, word [eax + edx - 0x2c253131]
mov edx, eax
shr edx, 0x32
sbb edx, edx
lea edi, [edi + edx*4 - 2]
mov word [edi + eax*2 - 0x584a6262], cx
adc al, al
lea ebp, [ebp + eax - 0x2c253166]
sal dx, 0xa9
btr dx, ax
lea ecx, [eax + eax - 0x70fbb354]
mov ecx, dword [eax + ebp - 0x2c253162]
shl eax, 0xa7
xor ecx, ebx
xor ecx, 0x4d8f858c
mul edx
lea ecx, [ecx + eax - 0x3198dc26]
rol ecx, 1
not dl
inc dx
bswap ecx
sub ecx, 0xafb90e8d
xor ebx, ecx
cwd
cbw
add esi, ecx
neg eax
jp fcn.1017fa23
xor dl, bl
xor word [esp + eax + 5], ax
lea ecx, [eax + eax*8 - 0x40c7d1cd]
bts ax, 0xad
not dl
xor dl, 0x26
cwde
dec dl
ror eax, cl
sub word [esp + eax - 0x3fffffc], 0x110a
setge byte [esp + eax - 0x3fffff9]
rol dl, 1
pop ecx
sub dl, 0x9c
ror dl, 1
not ecx
shr dword [esp + eax - 0x4000000], cl
sbb dl, al
lea eax, [ecx*2 - 0x21476557]
xor bl, dl
dec cl
lea edx, [esp + edx + 4]
xor dword [esp], 0x4b0912ab
push ecx
movzx cx, byte [edx]
lea edx, [eax + eax + 0x6f34d930]
xor dword [esp + edx*2 - 0x594c1c80], 0xb82e7da8
call fcn.1022d085
rol ecx, 0xd2
lea ebp, [ecx + ebp + 4]
push edx
add word [esp + ecx + 1], cx
xor eax, ebx
add word [esp + ecx*2 + 1], 0x1084
not eax
imul ecx, edx
ror eax, 3
pop edx
sub edx, ecx
sar edx, 0x85
neg eax
xchg dh, dl
ror eax, 1
lea eax, [eax + edx - 0x60ee6382]
jmp 0x101b53c4
rol ecx, 1
neg ecx
bt eax, edx
inc ecx
shr dl, 0x87
btr edx, 0x2e
and edx, edx
xor ebx, ecx
bts edx, edx
ror al, 0xe6
adc esi, ecx
lea ecx, [eax + edx*8 + 0x19bbc928]
jmp esi
btr edx, 0xb1
sal eax, cl
shl edx, 0x23
mov dword [ebp], eax
btc edx, 0x85
jb 0x101a6e9f
inc edx
xor byte [esp + ecx - 0x17fff9], 0xa8
lea eax, [ecx + ecx*2 + 0x211d2518]
xchg byte [esp + ecx - 0x17fffa], ah
rol edx, 2
xor ebx, edx
inc cx
add esi, edx
mov eax, dword [ebp + ecx*8 - 0xc00008]
dec ecx
lea edx, [ecx - 0x79f19872]
sal dword [esp + ecx*2 - 0x2fffff], 0xb6
mov ecx, dword [ebp + ecx - 0x17fffc]
not dx
imul dx, dx
adc ebp, 3
btr edx, edx
not eax
ror dword [esp + 4], 0xc
xchg dword [esp + 4], edx
xor edx, edx
not ecx
or dl, dh
pop edx
rol dl, 5
and eax, ecx
lea ecx, [edx - 0x3640ce62]
sub word [esp + 2], 0x92a1
mov dword [ebp], eax
pop edx
jmp esi
movsx eax, dl
mov ecx, dword [edi + eax*2 - 0x30]
div al
btc eax, 0x2f
sbb eax, eax
lea edi, [eax + edi + 4]
btc eax, edx
btc eax, edx
and edx, 0x4393f295
xor ecx, ebx
dec dx
xor al, dl
mul dl
inc ecx
mul ax
xor ecx, 0xd61f948a
xor edx, eax
jnp 0x10187207
shr cl, 0x44
bswap ecx
xor ebx, eax
add esi, eax
jmp 0x10235b8e
push 0x3b35b289
add edi, 6
dec dword [esp]
neg dword [esp]
shrd eax, edx, cl
mov edx, 0xc5ba7ea0
xadd byte [esp], dl
shr dword [esp], 0x8a
mov dword [edi], eax
mov eax, dword [ebp]
shl edx, 0x31
add edx, edx
mov byte [esp], dh
adc ebp, 3
xor eax, ebx
movzx ecx, dx
neg ecx
neg ecx
lea eax, [eax + ecx*8 + 0x60b89008]
or byte [esp + ecx*4], ch
dec dl
lea ecx, [ecx + ecx*8 + 0x2ebc27a3]
not eax
lea eax, [eax + ecx*4 - 0x26e4081]
setle cl
bswap eax
sbb ecx, dword [esp + ecx - 0x2ebc2701]
ror cl, cl
add ecx, ecx
xor ebx, eax
xchg byte [esp + ecx - 0x5d15eaff], dl
add esi, eax
movzx eax, dl
mov dword [esp + eax*8 - 0x190], eax
mul byte [esp + eax - 0x31]
mov dword [esp + eax], esi
ret
lea ebp, [edx + ebp - 0x56b58565]
btc edx, edx
jae 0x101a55e4
mov ecx, dword [eax + edi - 0x1c00000]
dec dword [esp + eax - 0x1c00000]
lea edi, [eax + edi - 0x1bffffc]
xchg word [esp + eax*8 - 0xe000000], dx
xor ecx, ebx
xor dword [esp + eax*2 - 0x3800000], 0xa40f9c25
sbb ecx, 0x9303fb26
bt dx, 0xab
div dl
sub dl, 0x83
bswap ecx
push eax
inc ecx
call fcn.101dcc67
mov edx, 0x56b57a99
jmp 0x1025fb01
jmp 0x101d4945
mov eax, dword [edi]
mov edx, dword [edi + 4]
mov ecx, 0x671e9609
mov cl, byte [edi + ecx - 0x671e9601]
jmp 0x101fc49f
mov eax, dword [ebp + edx - 0x56b57a99]
mov cl, byte [ebp + edx - 0x56b57a95]
and dx, dx
neg dx
jnp 0x101d9e02
jmp 0x1024dc24