Function at 0xcab4cd
Capabilities:
Encode data using base64

Disassembly:
shrd dx, ax, cl
sar byte [esp + 3], 6
mov word [edi], dx
pop edx
jmp ebp
inc ebp
mov ebp, ebx
inc esp
mov edx, dword [ebp - 4]
inc ebp
xor edx, eax
dec edx
lea ecx, [ebp*8 - 0x1de6337e]
inc ecx
movzx eax, bl
inc ebp
movzx esi, ch
inc ecx
neg edx
inc ecx
mov ebx, esi
dec eax
lea edx, [eax*8 - 0x405eedcd]
xchg dx, ax
inc ecx
xor edx, 0x972e7f2b
inc ecx
rol edx, 1
inc ecx
bswap edx
inc ecx
neg dh
cwd
push ecx
inc ecx
rol edx, 1
dec esp
or dword [esp + eax*4 - 0x5cac], ebx
mov byte [esp + eax - 0x1728], ah
xchg word [esp + eax*2 - 0x2e50], ax
dec esp
mov dword [esp + eax], eax
inc sp
sbb ebx, eax
add edx, 0xb4068437
inc esp
xor dword [esp + eax], edx
inc ecx
movzx edi, ch
inc ecx
push ebx
dec eax
cdq
dec esi
mov eax, dword [esp + esi*8 - 0x300]
mul dword [esp + eax + 1]
dec eax
cdq
dec esp
mov dword [esp + eax*4 + 8], ebx
inc ebp
mov dword [edi + eax - 4], edx
mov ebx, dword [ebp + eax - 8]
dec eax
lea esi, [eax*8 - 0x5b68df6c]
inc ecx
push esi
inc ecx
xor ebx, eax
rol ebx, 3
dec eax
or dword [esp + eax*2 + 8], 0x24bd761b
lea ebx, [ebx + eax + 0x579b2d84]
dec edx
bswap ebx
lea ebx, [ebx + eax + 0x1305bf80]
dec esp
mov dword [esp + eax + 0x10], eax
inc esp
movsx eax, byte [esp + eax + 8]
inc eax
and bh, byte [esp + eax*4 + 0xa]
dec eax
cdq
xor dword [esp + eax + 0x10], ebx
dec esp
mov eax, dword [esp + eax*2 + 0x10]
inc cx
rol esi, 0x46
btc di, ax
dec eax
arpl bx, bx
add word [esp + eax + 1], si
dec esp
adc esp, ebx
inc ecx
sal ebp, 0xe7
xor dl, byte [ebp + eax*4 - 9]
inc si
add dword [esp + esi - 0x183d], esi
inc ecx
bt esi, ecx
inc ebp
mov edx, esi
dec eax
lea ebp, [eax + ebp - 9]
inc ecx
xor dl, al
inc cx
shr edx, 0x82
jns 0x7960ec
mov ecx, 0x70102fb1
or cl, 0
mov edx, ecx
mov edx, dword [edx + esi - 0x70102fb1]
lea esi, [ecx + esi - 0x70102fad]
imul ecx, ecx
shr cx, cl
movzx eax, cx
xor edx, ebx
and al, al
dec edx
cbw
dec eax
xor edx, 0xb00ea480
rol edx, 2
btr ax, ax
jae 0xcc34ba
inc esp
mul byte [0x59ccdcf4]
fstp xword [edx]
cmpsd dword [esi], dword es:[edi]
dec eax
and byte [ebp - 0x25], al
cmp ah, byte [edi - 0x24b2d724]
cmp ah, byte [edi + 0x70c17c34]
in al, 0xa9
sub eax, 0xef918df0
xchg ecx, eax
out dx, eax
dec ebp
repne stosb byte es:[edi], al
jo 0x77745a
test al, 0x2b
salc
aam 0x48
mov ebp, 0x7477a22f
cwde
nop
insd dword es:[edi], dx
push cs
mov bh, 2
mov dl, 5
popal
ror dword [ebx - 0x7a], 0x30
push ds
xor byte [esi], bl
imul ebx, dword [eax - 0x5fe5902a], 0x6b98bb4d
outsb dx, byte [esi]
test eax, 0x553f982c
and eax, 0xa950200d
jge 0x777533
jns 0x7774e7
inc esp
adc dword [ebx + 0x7683b271], 0xffffff88
dec edx
insd dword es:[edi], dx
mov dl, 0x85
ja 0x7774ca
xchg byte [ebx], bl
xchg ebx, eax
xchg byte [esi - 9], ah
shl dword [esi - 1], 1
leave
sub ebp, 4
mov ecx, dword [ebp]
push 0x5c386c9f
rol word [esp + 2], 0x28
jae 0xb28553
adc byte [ebx], bh
add cl, ch
fdivr dword [ecx - 0x362f0000]
jmp 0x782f13
xor edx, esi
jmp fcn.00772c49
inc ecx
bts ebp, edi
dec dl
dec eax
sar ecx, cl
dec ecx
sal esi, 1
rol dl, 1
neg cx
xor dl, 0xb1
call fcn.007e7cfe
mov edx, 0xe7384a98
movzx ecx, dx
mov ecx, dword [ecx + edi - 0x4a98]
xor ecx, ebx
call fcn.007a9fd1
xor ebx, ecx
bts dx, 0x99
adc ebp, ecx
sal ax, 0x6f
mov dx, word [edi + eax*2]
lea ecx, [eax + eax*2 - 0x667dd6c2]
bt eax, ecx
add ax, word [edi + eax*4 + 2]
not cl
ror cl, cl
bswap ecx
mov cl, byte [edi + 4]
push 0xce318385
dec byte [esp + 3]
adc edi, 3
jmp 0x752435
inc ecx
xor ch, 0x1e
dec ebp
xor ecx, eax
dec ecx
neg ebp
xchg ecx, eax
dec ecx
bswap ecx
movzx edx, cx
dec ecx
bswap ebp
dec ecx
ror ecx, 2
dec eax
mul esi
dec ecx
bswap ecx
btr edx, edi
dec eax
idiv edi
dec ebp
lea ecx, [ecx + ecx - 0x1e4db64f]
inc ecx
xor ebp, 0xaaa718ba
dec ebp
xor eax, ecx
dec edx
mov edx, dword [ecx + edi - 0x7fff]
inc ecx
btc ebx, 0x9a
dec esp
adc ecx, edx
inc ecx
not dl
dec ebp
mov dword [edi + ecx - 0x7fff], ecx
inc ecx
movzx edx, bp
inc ecx
jmp esp
mov ecx, dword [eax + edi + 6]
xor ecx, ebx
sal byte [esp], 0xa1
not ecx
dec dword [esp]
sar byte [esp + 1], 1
push 0xaf84809b
adc ecx, 0xc294bd27
rol ecx, 3
call fcn.00d3b241
dec esp
mov ecx, dword [ebx + ebp - 0x921bbfb]
xor edi, ecx
inc ecx
xchg ch, bl
dec eax
lea ebp, [ebp + edi - 0x531a6201]
inc ebp
movzx esi, dx
jns 0x7d8d83
jae 0x7f9aa5
dec eax
mov dword [esp + edi - 0x2f300000], 0x9c3f8b2f
dec eax
sar dword [esp + edi*2 - 0x5e600000], 0xa7
dec eax
arpl ax, ax
neg dword [esp + edi - 0x2f2ffffd]
dec esp
add esp, eax
shl edi, 0x62
dec edx
lea edx, [edx + esi - 0x364e64ce]
inc ecx
mov eax, esi
inc edx
mov esi, dword [ebp + edx - 9]
call fcn.00d2cf03
mov ecx, 0xac0a68b3
not cx
mov ecx, esi
mov edx, 0xaa19f006
mov dword [esi - 4], ecx
lea eax, [edx*2 + 0x6186181e]
mul al
mov edx, dword [ebp - 4]
sbb ebp, 3
mov ecx, eax
bt ecx, eax
xor edx, ebx
neg edx
xor edx, 0xc2a7a0ac
inc edx
rol edx, 2
lea ecx, [ecx - 0x62f91c49]
add ax, cx
neg edx
bt cx, ax
push eax
sbb byte [esp + ecx - 0x52bfea9a], ch
not edx
cbw
lea eax, [eax + ecx*2 - 0x61d063db]
neg edx
cbw
push eax
xor ebx, edx
pop ecx
or word [esp], 0x8ea8
sbb ax, ax
adc edi, edx
and cx, cx
lea ecx, [esp + 0x34]
shl byte [esp], 0xc3
movsx edx, word [esp]
mov eax, dword [ecx]
mov dword [esi - 8], eax
adc esi, 0xfffffff7
or edx, edx
sar word [esp], 0x22
sbb edx, dword [esp]
pop edx
jne fcn.00ad155b
inc ecx
mov ebx, 0xf101379f
jmp 0x77735c
xor edx, 0x41151138
btc cx, 0x23
shr ecx, 0x8b
or al, al
xor ebx, edx
idiv cl
shr cl, cl
add ebp, edx
shl ecx, 0xf7
mul al
mov edx, dword [edi + ecx]
neg cl
xor cl, byte [edi + ecx + 4]
shr edx, cl
rol eax, 0xd6
mov dword [eax + edi + 2], edx
lea ecx, [eax + eax*8 - 0x736709cb]
mov edx, dword [edi + eax*2 + 2]
jae 0xc2cefc
dec eax
xor ebx, eax
inc ecx
push eax
inc cl
inc cx
bt edx, edi
btc ax, ax
xor dword [esp + ebx - 0x921bbef], edx
inc cx
rol ebx, 0x64
inc bp
bts ebx, ebx
dec ecx
adc edi, ebp
inc ecx
pop eax
cwde
dec eax
imul edi, eax
movsx esi, cl
dec eax
arpl dx, dx
dec esp
adc edx, ecx
dec esp
adc esp, edx
jmp 0xb5508b