Function at 0xda2848
Capabilities:
Encode data using base64

Disassembly:
shr al, 5
xor ebx, edx
xadd al, ah
dec ax
neg ecx
add edi, edx
cbw
jmp edi
adc edi, 0xfffffffc
cwde
mov dword [esp + eax*2 - 0x254c], 0xac1e0b33
xor edx, ebx
ror byte [esp + eax*8 - 0x952f], 0x41
jo 0x142b14c
ror dword [esp + eax - 0x1f9a30ae], 0x3b
not cl
adc cl, 0x15
rol word [esp + eax - 0x1f9a30ad], 0xec
jb 0x13a2d70
xor bl, cl
shl esi, 0x31
lea ecx, [esp + ecx + 4]
btr eax, esi
mov eax, dword [eax + ecx - 0x1f9a30ae]
movzx ecx, word [esp + edx*4 - 0x7e68c2b8]
dec ecx
mov ecx, eax
mov esi, ecx
neg dl
pop ecx
jge 0x1513583
push 0x63056006
push 0xdaaa181
mov edx, dword [esi]
mov eax, dword [esp + 4]
lea esi, [esi + eax - 0x63056002]
or dword [esp + eax - 0x63056002], eax
xor edx, ebx
pop ecx
xadd ecx, eax
inc edx
not dword [esp + eax*8 - 0x6d550c08]
neg edx
neg eax
sar cl, cl
bswap edx
rol edx, 2
neg eax
inc edx
xor ebx, edx
rol cx, 3
adc ebp, edx
xchg dword [esp + ecx - 0x70b00ff8], ecx
shl cx, 0xcb
xchg dword [esp + eax - 0xdaaa181], eax
mov ecx, dword [edi + eax - 0x70b00ff8]
mov dl, byte [edi + eax - 0x70b00ff4]
lea edi, [eax + edi - 0x70b00ff2]
add dword [esp + eax - 0x70b00ff8], eax
mov byte ss:[eax + ecx - 0x70b00ff8], dl
mov dword [esp + eax - 0x70b00ff8], ebp
ret
inc edx
jmp 0x14051d1
sal byte [esp + 2], 0xa4
adc ebp, 3
div ecx
inc byte [esp]
setle byte [esp]
mov dword [ebp], edx
mov ecx, 0x661573af
movzx edx, cl
call fcn.012eddca
mov edi, 0x9b1a5ea4
mov esp, esi
lea ebp, [edi - 0x3deee9ed]
movzx esi, di
pop ebp
mov ebx, 0x9f009826
mov ecx, 0x4099db2
lea ebx, [ebx - 0x3de32752]
pop edi
mov edx, 0x4810762a
mov eax, esi
popfd
cdq
cwd
cdq
pop esi
lea eax, [edx + edx*2 - 0x7f4912fc]
pop eax
call fcn.00d46b37
inc ecx
shl dl, 0x46
mov ecx, dword [eax + edx*8 - 0x420]
dec esi
lea esi, [edx + esi - 0x88]
sal edx, 0xce
movzx eax, dx
inc ebp
movzx esp, bp
inc ecx
mov dword [esi + edx*8 - 0x1080000], ecx
inc ecx
and dl, 0x8d
dec eax
lea esi, [esi + edx*2 - 0x420004]
sbb bl, 6
inc esp
mov ecx, dword [esi + edx*2 - 0x420000]
dec eax
sal dword [esp + edx - 0x210000], 0xd6
inc esp
or al, byte [esp + edx - 0x20fffb]
inc esp
adc dword [esp + edx*2 - 0x41ffff], edx
inc ebp
xor ecx, edi
add byte [esp + edx - 0x20fffb], dh
dec eax
lea ecx, [ebx*4 - 0x154ae959]
shr dword [esp + edx*2 - 0x41fffc], cl
inc edi
lea ecx, [eax + ecx - 0x2d965a5c]
inc ecx
xor ecx, 0xd59adf23
inc ecx
inc ecx
inc ecx
rol ecx, 3
jmp 0x14b36a6
mov ebx, dword [esp + ebx - 0x923a]
call fcn.00c7ef7e
rol eax, 1
pop ecx
xor eax, 0x1eb49e93
and cl, 0xaf
lea edx, [ecx + ecx*8 - 0x2a6d75e8]
call fcn.014ca399
xor edx, 0x85b3c6b7
call fcn.014d35a8
neg ax
inc bp
sub eax, edx
sbb byte [esp + edx - 0x81], dh
dec eax
xadd dword [esp + edx - 0x84], ebx
rol ax, 1
movzx ecx, bx
neg ax
inc esp
mov ebp, dword [esp + edx*2 - 0x106]
dec eax
inc ecx
inc ecx
sal dl, cl
inc sp
xor edi, eax
inc bp
bts edx, ebp
and dx, 0x878c
inc cx
bt edx, 0x1d
dec eax
lea eax, [esp + eax + 8]
sbb bl, 0xa8
jne 0x1346f3f
inc edx
sal cx, 0x48
ror edx, 1
add al, cl
jae 0x12e800e
btc edx, edx
setae al
ror ecx, 1
rol eax, 0xab
xadd al, dl
xor ecx, 0x573d6304
neg dx
dec ecx
not ecx
xor ebx, ecx
shl edx, 0xbf
sub dl, dh
sub dx, 0xefbc
add edi, ecx
movzx dx, byte [edx + esi - 0x1044]
not eax
mov al, byte [esi + 2]
or dl, al
mov ecx, 0x7ea6d6a6
not dl
movzx eax, cl
mov ax, dx
movzx edx, cl
movzx ax, al
inc ecx
ror cx, cl
and cx, cx
mov dl, byte [esi + ecx - 0x7ea64fa9]
seto cl
ja 0x14e0679
dec eax
mov dword [esp + 8], 0xfe3680cb
dec eax
lea esp, [esp + 8]
call fcn.01386605
xor ebx, ecx
bts ax, 0x11
add ebp, ecx
cwde
mov ecx, dword [esp + eax - 0x1e]
sub word [esp + eax - 0x1c], dx
pop eax
jle fcn.01556dc6
cbw
inc ecx
dec ecx
dec esp
mov dword [esp + edx*2 - 0x420000], edi
dec edx
lea edx, [edx*4 - 0x3befc37d]
inc ecx
movzx ebp, ax
inc esi
xor dword [esp + eax - 0x2ecf], ecx
inc esp
movsx ebx, al
rol bp, 0xa1
inc cx
rol ebp, 0x27
inc ecx
pop edi
inc ecx
sar ah, 0x63
setns cl
dec ebp
arpl cx, cx
inc ebp
add ch, bl
btr ecx, 0x3a
inc cx
ror ebx, cl
dec ecx
adc edi, ecx
btc ebp, 2
jb fcn.012e2664
or al, dl
dec cl
xor al, cl
or ecx, ecx
mov word [esi + ecx - 0x7ea64ffb], ax
xor cl, cl
mov edx, ecx
lea edx, [ecx*8 - 0x1352d95c]
lea esi, [esi + ecx - 0x7ea64efc]
jae 0x15402e7
sub al, ah
ror edx, 1
or eax, eax
dec edx
rol edx, 3
neg ecx
jne 0xc8b97e
mov ecx, 0x1a111432
mov edx, dword [ebp + ecx*4 - 0x684450c8]
push ecx
imul cx, word [esp + ecx*2 - 0x34222863]
adc cl, byte [esp + ecx - 0x1a11e5e7]
mov eax, dword [ebp + ecx*4 - 0x684797f0]
bt ecx, 0x3f
shl ecx, cl
mov ecx, dword [ebp + 8]
js 0x12ed204
add ebp, ecx
mul al
rol dword [esp + edx*2 - 0x6dbb27ed], 0x21
mov dword [esp + edx*2 - 0x6dbb27f0], ebp
ret 4
mov eax, 0x5a83112f
jmp edi