Function at 0xca7658
Capabilities:
Encode data using base64

Disassembly:
movzx edx, word [esp + eax*2 - 0x873fffc]
lea ecx, [edx + edx*8 - 0x3b7122ff]
movzx eax, word [eax + edi - 0x439fff9]
lea edx, [edx*8 + 0x1f0610b6]
lea edi, [edi + edx*2 - 0x3e0c4325]
and dword [esp + edx - 0x1f062196], 0xf49f0504
shr cx, 0xc7
xor ax, bx
mov dword [esp + edx*2 - 0x3e0c432c], ecx
xor ax, 0xa680
inc ecx
sal edx, 0xed
dec ax
and dx, 0xed93
jge 0xce9da1
dec dx
not ax
js 0xc3d1fa
movsx ecx, al
lea edx, [esp + 0x50]
bswap ecx
and ecx, ecx
movzx ax, byte [edx]
not word [esp + 2]
mov edx, 0x28280a8e
add ecx, 0x1387f101
mov word [edi + edx - 0x28280a8e], ax
mov edx, dword [esi + edx*2 - 0x5050151b]
xor edx, ebx
bswap edx
lea eax, [ecx + ecx*8 - 0x36fdb658]
rol eax, 0xc8
add eax, 0x46a76abc
lea edx, [edx + ecx - 0x6055fe65]
xor edx, 0x2f26cd26
xor ecx, ecx
neg edx
shl dword [esp + ecx*2], 0xc4
xor ebx, edx
lea ecx, [eax + eax*8 - 0x5057cd44]
call fcn.00af13ae
call fcn.007ce0c9
dec dl
shr al, 0x82
ror dl, 1
cwde
ror ax, 0x8f
and eax, eax
dec dl
sar al, 0xe1
xor dl, 0xb8
add ax, 0x480d
jns 0xc5ff10
xor bl, dl
push eax
ror eax, 0x4f
lea edx, [esp + edx + 4]
mov byte [edx + eax*2 - 0x873fffc], cl
jae 0x7ae24c
rol ecx, 1
inc ecx
imul ax
rol ecx, 1
cdq
or eax, 0xe9b4bf94
bswap ecx
or eax, 0x660a0883
pop edx
xor ebx, ecx
movsx edx, ax
cwde
shr dx, 0x2c
add ebp, ecx
push edx
sub esi, 1
bts ax, ax
push eax
movzx edx, byte [esi]
xor word [esp + 8], ax
seto al
xor dl, bl
call fcn.00c6f2f0
shr edx, 8
rol dword [esp], 0xb8
xor edx, edi
push 0x6a912f17
sar dword [esp + 7], 0xe3
ja 0xcedf63
mov ecx, 0x2ac0d9f
lea esi, [esi + ecx*2 - 0x5581b42]
mov edx, dword [esi + ecx - 0x2ac0d9f]
lea eax, [ecx + ecx*2 - 0x72694bfd]
xadd ecx, eax
adc ecx, eax
xor edx, ebx
lea eax, [ecx - 0x3051e4fb]
sar ecx, cl
bswap edx
btc ecx, eax
xchg cx, ax
imul ecx, ecx
xor edx, 0x9ead0eae
dec ecx
lea eax, [ecx*2 + 0x1e9d1590]
cbw
rol edx, 1
btr eax, ecx
inc edx
dec cx
xor eax, eax
ror edx, 1
or ax, cx
shr al, 0xa1
call fcn.007608ac
inc eax
xor dword [esp + 0xb], 0xfdbda88a
jge 0xbb1d14
bswap ecx
btc ax, 0x26
lea ecx, [edx + ecx + 0x603048cf]
rol ecx, 1
mov dword [esp + edx*4 - 0x52ec], edx
call fcn.00d43b4c
pop ecx
lea edi, [edi + eax - 0x50332404]
jmp 0xd1653d
btr eax, eax
mov ecx, 0xe31dae02
mov ecx, dword [eax + edi - 0x50332400]
cdq
bt dx, dx
xor ecx, ebx
neg ecx
sar al, 0x47
and dx, ax
lea ecx, [ecx + eax*2 - 0x7e422e5a]
cwd
ror ecx, 1
idiv ax
imul edx
dec ecx
add al, ah
jbe 0xd37f11
mov eax, ecx
bt ecx, eax
mov edx, dword [edi + ecx - 0x247da882]
call fcn.00b5df2c
xor dl, ch
lea edx, [ecx + ecx*2 - 0x2ccb1afb]
adc ebp, eax
not dl
bt edx, ecx
inc edx
movzx ax, byte [esi + ecx]
sal dl, 0xc1
bt edx, ecx
or cx, dx
mov dl, byte [ecx + esi - 0xe5f4]
and al, dl
mov edx, ecx
sar edx, cl
bswap ecx
not al
sar dl, 0x26
adc cx, ax
xor dl, 0x28
mov eax, 0xc085589b
div eax
movzx edx, byte [eax + edi - 0x32]
xor dl, bl
or eax, 0x8881dd3e
rol dl, 1
not dl
jmp 0xc5f966
sar edx, 0x2e
xor ebx, ecx
add ebp, ecx
add edx, dword [esi + eax]
lea ecx, [eax + eax*8 - 0x4ecb6d61]
push ecx
xor ax, ax
movzx cx, byte [edx + eax*4]
sal byte [esp + eax], 0x41
lea edx, [eax*4 - 0x3eed33eb]
ror byte [esp + eax*8 + 1], 0xe1
lea esi, [esi + eax + 2]
rol byte [esp + eax*2 + 3], 0x23
btr eax, 0x3c
sal edx, 8
mov word [esi + edx*2 - 0x25982a00], cx
mov dword [esp + eax*2], ebp
ret