Function at 0xcafa94
Capabilities:
Encode data using base64

Disassembly:
mov edx, 0xaa2b3019
dec esi
mov dword [esp + ebp - 0x4119], ebp
bswap edi
not bl
inc ecx
pop ebp
ror cl, 1
inc edi
dec ecx
lea esi, [ebp + eax + 0xf908b10]
dec edi
lea ebx, [ebp + esi*2 - 0x20dbb2de]
inc esp
movzx esp, cl
xor edi, 0xa22b912c
sub edi, 0xa6165a26
dec edx
lea eax, [eax + ebp - 0x1e147dc]
ror edi, 1
imul cx
jae 0xcb371f
inc ecx
mov edx, 0x7021f700
inc ecx
push eax
inc esp
or edx, esi
dec esp
adc ebp, ecx
inc cx
inc esp
inc edx
xor dword [esp + ebp*2 - 0x834a], edi
inc ecx
pop eax
inc ecx
imul ebx, esi
xadd edx, eax
dec eax
arpl di, di
shl cx, cl
inc ecx
xor eax, esp
dec esp
adc edi, edi
inc eax
and dh, 0xbc
dec ebx
mov edi, dword [ebp + ecx - 0x41a5]
xor ecx, 0x38ad4a83
inc cx
or ebx, ebx
inc si
mov ebp, dword [edi + ebp - 0x41a5]
neg ebx
inc esp
bts edx, edx
inc eax
xor dh, 0x15
dec edi
lea ecx, [ecx - 0x462]
inc si
mov dword [ecx + ecx - 0x38ad8a83], ebp
inc ecx
jmp edi
jmp 0x152b96c
inc ecx
bt edx, eax
neg dx
shr eax, 0x26
dec esp
mov dword [esp + ebx + 8], edx
inc edx
adc dword [esp + edx - 0x6abcb161], 0x1110d521
sbb dx, 0x4d07
inc ecx
mov ebx, 0x52101337
dec ecx
sal edx, 0x17
push ebx
neg dx
dec dx
movsx ecx, si
call fcn.00cb4ddb
mov eax, 0xbb19dfb8
call fcn.01514a48
mov edx, 0xaa8d4037
mov edx, dword [ebp]
mov ecx, 0x540ed295
lea ebp, [ecx + ebp - 0x540ed291]
imul cx, cx
movsx eax, cx
sal ax, 0x41
xor edx, ebx
and eax, ecx
shr ecx, 0x35
lea eax, [ecx*4 + 0x7b9e611f]
dec edx
bt ecx, eax
cwde
dec eax
not edx
seta al
or eax, 0x67277711
xchg ecx, eax
dec edx
shr ecx, cl
not edx
inc ax
inc cl
xor ebx, edx
ror cl, 0x47
bt ecx, eax
inc cl
adc esi, edx
shl ecx, cl
neg ecx
sar cl, 0x24
mov eax, dword [edi + eax*2 - 0x542]
sbb ecx, 0xdd3adc80
mov cl, byte [edi + ecx*2 - 0x43f0f6fc]
mov edx, 0xf3140614
rol edx, 0xa8
lea edi, [edx + edi - 0x140614f1]
shl edx, 0x43
sal eax, cl
call fcn.00ceb6fd
adc eax, edx
mov dword [esp + edx*2 - 2], ecx
ror eax, 1
lea eax, [ecx + eax - 0x1378b62d]
rol ecx, cl
rol eax, 1
dec ecx
bt dx, dx
ret 0x4c89
bt edx, edx
xor ebx, eax
bswap edx
pop edx
add esi, eax
add byte [esp + edx - 0x5990d83c], ch
pop eax
jnp fcn.00cbc794
int1
xchg ebp, eax
sub bh, al
push 0x3a
sub al, 0x27
xchg ebp, eax
push esp
inc esi
adc bl, byte [edi]
xchg ebp, eax
push esp
into
xor dh, byte [edi]
xchg ebp, eax
push esp
jb 0x152bafd
adc dword [esi - 0x4e], esi
stc
xchg esp, eax
mov ebx, ecx
salc
jo 0x152ba82
lahf
outsd dx, dword [esi]
jns 0x152baab
jne 0x152bb06
mov edx, 0xe2e05d95
xchg ecx, eax
retf 0xe1a2
push ebx
cmp ebp, esp
jae 0x152ba39
jecxz 0x152ba4d
movsb byte es:[edi], byte [esi]
mov dword [0x50f78eef], eax
ret
push 0x45
sal bl, 0x6b
les edx, [edi]
rcl byte [ebx]
pop esp
lodsd eax, dword [esi]
imul edi, dword [edx - 0x73], 0x1fe95b67
pop ds
loopne 0x152bb31
mov dword [ebp - 0x41], esp
and bh, byte [ecx - 0x76]
cwde
mov edx, 0x3aad9ba7
sti
pop ebx
push eax
sub edi, dword [edi]
mov byte [0x2f36a826], al
lcall 0x3628, 0x8bd9907d
jae 0x152bb6e
insd dword es:[edi], dx
fcom dword [eax - 0x78f93b6b]
xlatb
push esp
pop esi
out dx, al
jb 0x152baec
sti
stosb byte es:[edi], al
lodsd eax, dword [esi]
scasd eax, dword es:[edi]
test dword [edi + ebp*4 + 0x66], 0xb8f51030
cmp al, 0x15
add eax, 0x12659c77
mov ebp, 0xc2f7d471
dec esp
scasd eax, dword es:[edi]
xor byte [eax], dl
cmc
mov eax, 0x7705153c
pushfd
adc bh, byte gs:[ebp - 0x3d082b8f]
scasd eax, dword es:[edi]
mov ecx, 0x2944a31d
fild qword [eax + 0x55]
dec esi
fcomp dword [ebp + 0x994d2e4]
ret
imul edx, dword [ebp + 0x1c4640f1], 0x71
adc byte [esi + 0xb], dh
jno 0x152bb80
jbe 0x152bb7d
cmp al, 0x1d
mov ch, 0x5c
sbb al, 0xb1
mov bl, 0x65
cmp dword [ecx - 0x4d], edx
push 0xddbe7e1
int3
mov bl, 0x68
loope 0x152bb68
out 0xdb, eax
or eax, 0xa8d88acc
fisttp dword [0xa8d88acc]
invalid