Function at 0x5e6f1487
Capabilities:
Encode data using base64
Encrypt data using aes
Reference aes constants

Disassembly:
mov eax, 0x5e729ebc
call fcn.5e711585
sub esp, 0x28
push ebx
test byte [0x61014f7b], 0x91
js 0x5e6f14d0
hlt
push esi
mov esi, dword [ebp + 0xc]
test word [0x610bed1d], 0xe335
jo 0x5e729d2d
mov ebx, ecx
test word [0x6100bad7], 0xfb15
jns 0x5e6c15da
push edi
push 8
mov dword [ebp - 0x1c], ebx
nop
nop
nop
call fcn.5e6efb53
xor ecx, ecx
cmp dword [esi + 0x1c], ecx
jbe 0x5e6f15ae
mov eax, dword [esi + 0x18]
push ebx
mov ebx, dword [eax]
sub ebx, 1
pop ebx
jne 0x5e6f152d
inc ecx
mov eax, eax
add eax, 4
push ebx
mov ebx, ecx
sub ebx, dword [esi + 0x1c]
pop ebx
jb 0x5e6f1510
jmp 0x5e6f15ae
push 0xd
cmp word [0x6105faf4], 0x1579
jns 0x5e71d5cc
mov ecx, ebx
call fcn.5e6efb53
xor edi, edi
push ecx
mov ecx, dword [esi + 0x1c]
sub ecx, edi
pop ecx
jbe 0x5e6f15ae
mov eax, dword [esi + 0x18]
mov ecx, ebx
test word [0x610ae136], 0xc0ce
jne 0x5e6f158d
scasb al, byte es:[edi]
add al, 0x5a
sbb bl, dl
adc dword [ebx + eax*2], edx
mov edi, 0xf602249c
xor dword [ebp - 0x25], edi
sar dword [esi - 0x47], 0xe5
out 0x64, al
xor byte [edx], 0x5f
or eax, 0x9028384c
or eax, 0xcc63e30b
popal
sub dword [edx - 0x46d79a48], ebp
dec ebp
wait
dec ebx
push 0
push dword [eax + edi*4]
cmp byte [0x610668c0], 0xd8
js 0x5e72a238
call fcn.5e6f10a3
inc edi
push ecx
mov ecx, edi
sub ecx, dword [esi + 0x1c]
pop ecx
jb 0x5e6f1550
xor ecx, ecx
cmp dword [esi + 0x1c], ecx
jbe 0x5e6f16bc
mov eax, dword [esi + 0x18]
cmp dword [eax], 1
ja 0x5e6f15d5
mov eax, eax
inc ecx
add eax, 4
push edx
mov edx, ecx
sub edx, dword [esi + 0x1c]
pop edx
jb 0x5e6f15bc
jmp 0x5e6f16bc
mov ecx, ecx
push 9
nop
nop
nop
mov ecx, ebx
call fcn.5e6efb53
and dword [ebp - 0x10], 0
test word [0x610d20da], 0xf01d
js 0x5e6bed96
xor edi, edi
nop
nop
nop
mov dword [ebp - 0x14], edi
cmp dword [esi + 0x1c], edi
jbe 0x5e6f16bc
mov eax, dword [esi + 0x18]
mov ecx, dword [eax + edi*4]
xor eax, eax
mov dword [ebp - 0x18], ecx
push edx
mov edx, ecx
and edx, ecx
pop edx
je 0x5e6f1669
mov esi, dword [ebp - 0x10]
nop
nop
mov edi, dword [ebp + 0x10]
inc eax
cmp word [0x6106c94a], 0x236b
jne 0x5e7125f9
mov dword [ebp - 0x10], eax
push edx
mov edx, eax
sub edx, ecx
pop edx
je 0x5e6f1655
mov ecx, ecx
mov eax, dword [edi]
mov ecx, ebx
push dword [eax + esi*8 + 4]
push dword [eax + esi*8]
call fcn.5e6f10a3
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
inc esi
push edx
mov edx, eax
sub edx, ecx
pop edx
jb 0x5e6f1622
mov ecx, ecx
mov edi, dword [ebp - 0x14]
mov dword [ebp - 0x10], esi
mov esi, dword [ebp + 0xc]
or al, 0x47
inc edi
cmp dword [0x610cecc8], 0x8742a48b
jns 0x5e6f16ac
pop ss
mov eax, dword [0xa1ac85d1]
stc
pop esi
push ss
jbe 0x5e6f16f6
push ebx
push 0x9356e043
jae 0x5e6f169b
xor eax, dword [eax + ebp*8]
pushal
or al, 0xc
mov esp, 0xb3d76560
mov edx, 0xa50056aa
push ecx
jo 0x5e6f16de
inc ecx
jl 0x5e6f1668
sbb dword [esi - 0x36], eax
mov edx, 0x80a14beb
dec byte [ebp + 0x7d89c108]
in al, dx
mov dword [ebp - 0x14], edi
push edx
mov edx, edi
sub edx, dword [esi + 0x1c]
pop edx
jb 0x5e6f1607
and dword [ebp - 0x34], 0
and dword [ebp - 0x30], 0
and dword [ebp - 0x2c], 0
and dword [ebp - 0x28], 0
and dword [ebp - 0x24], 0
mov eax, eax
and dword [ebp - 0x20], 0
cmp byte [0x610b71fc], 0xc7
jne 0x5e72a875
cld
jno 0x5e6f16e6
popal
invalid
test dword [edx - 0x74fffc6f], edx
inc ebp
or byte [eax - 0xcc6f70], dl
mov eax, dword [ebp + 8]
nop
nop
nop
xor edi, edi
and dword [ebp - 4], 0
and dword [ebp + 0x10], 0
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jbe 0x5e6f17b8
nop
nop
mov eax, dword [esi + 0x18]
mov eax, dword [eax + edi*4]
test dword [0x610c867e], 0xa80fcaa
jns 0x5e6f1733
jne 0x5e6f178c
sbb edx, dword [ecx]
movsb byte es:[edi], byte [esi]
sbb dword [edx], edi
jnp 0x5e6f16d8
cmp eax, dword [ebp + 0x15]
mov dword [ebp + 0x424d0e74], esp
pop esp
imul eax, dword [ebp - 0x60], 0x72b87a5a
jmp 0x931e615a
mov dword [ebp - 0x18], eax
push ecx
mov ecx, eax
sub ecx, 1
pop ecx
jne 0x5e6f1751
push edi
mov ecx, esi
call fcn.5e6bf271
test al, al
je 0x5e6f1759
inc dword [ebp + 0x10]
nop
jmp 0x5e6f1791
push ebx
mov ebx, eax
and ebx, eax
pop ebx
je 0x5e6f1791
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x18]
mov edi, dword [ebp + 0x14]
mov eax, dword [edi]
lea ecx, [ebp - 0x34]
movzx eax, byte [eax + esi]
push eax
nop
call fcn.5e6eedeb
mov eax, dword [edi + 0xc]
nop
lea ecx, [ebp - 0x28]
push dword [eax + esi*4]
call fcn.5e6eed81
nop
nop
nop
inc esi
dec ebx
jne 0x5e6f1762
mov edi, dword [ebp - 0x14]
mov dword [ebp + 0x10], esi
jne 0x5e6f179e
mov esi, dword [ebp + 0xc]
cmp dword [0x61014510], 0x8a81a0ac
je 0x5e7035ab
push ds
add dword [eax], eax
mov eax, dword [ebp + 8]
inc edi
mov dword [ebp - 0x14], edi
push edx
mov edx, edi
sub edx, dword [eax + 4]
pop edx
jb 0x5e6f16ff
mov ebx, dword [ebp - 0x1c]
mov eax, eax
lea eax, [ebp - 0x34]
mov ecx, ebx
push eax
mov eax, eax
call fcn.5e6f082a
push 0
mov eax, eax
mov ecx, ebx
call fcn.5e6efb53
push dword [ebp - 0x28]
call fcn.5e6d68f8
push dword [ebp - 0x34]
call fcn.5e6d68f8
pop ecx
pop ecx
mov eax, eax
mov ecx, dword [ebp - 0xc]
mov ecx, ecx
pop edi
pop esi
mov ecx, ecx
pop ebx
mov dword fs:[0], ecx
mov ecx, ecx
mov esp, ebp
nop
pop ebp
ret 0x10
mov byte [0xb733be48], al
and bh, byte [edi - 0x75]
push esi
cld
sbb eax, 0xe00d299f
into
adc al, 0x8a
or eax, 0x7aa01237
sar esi, 0x69
or eax, 0x3ea85064
push esp
mov ah, al
add dl, byte [eax - 0x5c849f26]
jb 0x5e71d5f2
test dword [edx], eax
invalid
push ss
neg esi
pop eax
in eax, dx
shl edi, 0x20
push ss
jae 0x5e71d589
lea ecx, [ebp - 0x28]
jmp fcn.5e70436b