Function at 0x151f3d4
Capabilities:
Encode data using base64

Disassembly:
sbb eax, ecx
xor edx, ebx
xor edx, 0xc2869489
dec eax
jne 0xd66792
inc ecx
lea edx, [edx + eax - 0x59fd80af]
xor ax, 0xc0d
adc ax, cx
ror edx, 2
not edx
bswap eax
or cl, 0x21
xor edx, 0x83b329bd
not edx
rol cx, 0x27
dec ecx
lea edx, [ecx + edx - 0x460356aa]
bt ax, ax
call fcn.00d59473
mov edx, 0x5d8b2b9c
dec eax
lea eax, [edx + edx*4 - 0x7b6ac1f1]
xor dx, dx
inc esp
mov esp, dword [edx + esi - 0x5d8b0000]
mov ebp, 0xba3290b1
movsx ebx, dl
movzx ecx, ax
dec eax
lea esi, [esi + edx - 0x5d8afffc]
xchg ecx, eax
dec esp
lea ecx, [ebp + ebx + 0x2f95ae39]
inc esp
movzx edx, al
movzx ebp, byte [edi + eax*2 - 0x3036]
dec eax
bt ebx, ecx
sal dx, 0xd
dec eax
lea edi, [edi + edx - 0x5d8affff]
inc ebp
movzx eax, dl
dec eax
sub edx, 0x86b2be9d
inc ecx
xor ch, bl
dec eax
and ebx, ecx
inc eax
ror ch, 1
or bl, 0x1a
dec eax
lea ecx, [ecx + ecx*2 - 0x3bc1894c]
inc cx
btr edx, 0x2f
inc eax
dec ch
dec esp
lea esi, [ecx + ebx*2 + 0x691f5691]
dec eax
xchg edx, ecx
inc cx
add ecx, 0xf6408e08
aad 0xf
mov ch, bl
stc
add byte [eax], 0xc7
push eax
sub al, 0xfd
jne 0xd668b8
push eax
add dh, byte [ebx + 0x2786baa6]
mov fs, esp
push edx
movsx eax, word [esp]
mov eax, dword [esi + eax*2 - 0x4f10]
and edx, 0x843d1232
bt edx, edx
xor eax, ebx
dec word [esp]
sal dx, 1
inc eax
mov ecx, edx
neg eax
xor eax, 0x53963a17
xchg dword [esp], ecx
not eax
jmp 0x14f5712
loop 0xd66928
ret
and edi, ecx
and dword [ecx + 0x58], 0xf5cf21f3
inc ecx
pop esp
and edi, ecx
sar dword [edi - 0x1d], 0x1f
salc
mov edi, 0x92a251aa
cmpsd dword [esi], dword es:[edi]
mov esp, 0x6b8958c1
pop edx
sahf
leave
and al, 0x89
imul ebx, dword [edx - 0x70], 0xffffffed
or byte [ecx - 0x6202a595], cl
popfd
dec esp
mov dword [ebx + 0x5a], ebp
xchg ecx, eax
add al, 0x4b
pop ebp
jno 0xd66955
fdiv qword [edx + 0x36]
jecxz 0xd669df
mov dword [edi + 0x4d], esi
sbb edx, 0x53
add al, 0x4a
jbe 0xd669eb
invalid
pop esi
jbe 0xd66a3b
lock xor ebx, dword [esi - 0x1630c0ed]
test eax, 0xcf21f398
sbb dword [ebx - 0x30de0c5c], ebp
aad 0xe5
cld
and edi, ecx
dec ebp
mov cl, 3
pop ds
salc
mov edi, 0x86d6a750
sar dword [ecx + 0xb], 0xc2
std
jg 0xd66a24
salc
xchg cl, al
jns 0xd669ef
ret 0x7ffd
jbe 0xd669e8
xchg ebp, eax
sub dword [ebp - 0x6d], esp
dec eax
or ah, ah
loop 0xd669e2
stosd dword es:[edi], eax
bound eax, qword [eax]
push ebx
add dl, ah
xchg edx, eax
into
rcr dword [edi], 1
sbb esi, dword [ebp - 0x42]
add bh, byte [edx + ebp - 0x3d35b62e]
arpl word [edx + 0x5a7aef04], dx
jp 0xd66a67
xchg edi, eax
test eax, 0xc8fbd44b
nop
xor eax, 0xcf165f21
mov cl, 0xd8
lodsb al, byte [esi]
cmp edi, esi
salc
mov ecx, 0xf8f10a6
cld
je 0xd669bc
add al, 0x7b
push es
inc ecx
jmp 0xdb40b744
push 0x35
mov al, 0x78
jns 0xd66a77
xchg edi, eax
add al, 0x70
xchg edx, eax
jno 0xd66a76
cdq
cmp dh, byte [ebp + 0x77]
inc ecx
stosb byte es:[edi], al
sub dword [esi - 0x72], 0x5688decf
out dx, al
jp 0xd66a7b
pop ebp
push 0xffffffffffffffae
enter 0xffffffffffffbe92, 0xffffffffffffff93
jno 0xd66a0b
pop ds
mov dl, 0x17
mov word [0xc0fe4d8c], cs
inc al
invalid
push edi
mov edx, 0x7769ec2
pop es
push ecx
lodsb al, byte [esi]
scasb al, byte es:[edi]
in al, 0x9b
pop ds
sub ah, byte [edx + 0x61]
invalid
int 0xb8
into
cli
cmp ch, byte [ebx]
int 0xb8
into
jbe 0x14f5780
imul ecx, ebp, 0xffffffb8
into
rcr byte [esi - 0x34], cl
and dword [edi - 0x42], ecx
xor ebx, eax
not dl
add edi, eax
mov eax, ecx
or dword [esp], eax
mov ecx, dword [ebp]
ja 0x158d6b5
out dx, al
jg 0x14f56fd
pushal
mov edx, edi
xchg edx, eax
std
pop esp
push ds
sti
pop es
stc
xor dword [esi + ebx - 5], 0x3485fc07
push ds
sti
pop es
mov dh, 0x7d
sub al, byte [esi - 0x1325eb49]
fstp st(4)
add dword [eax + 0x7b], edx
invalid
int1
and ch, cl
sub eax, 0x86a2cea6
mov ecx, ebp
mov eax, 0x8f9226ce
int 0xb8
into
cli
test al, 0x9f
int 0xb8
into
out dx, al
inc eax
and dword [edi - 0x42], ecx
inc ecx
mov eax, 0xe2161b9c
inc sp
movzx ecx, byte [esi]
call fcn.0154254f
inc bp
mov edx, dword [ecx + esi - 0x2b]
dec ecx
lea esi, [edi + esi - 0x502cfffe]
inc ecx
push ecx
inc bp
add esp, edx
inc bp
mov dword [ecx + esi - 0x2d], esp
dec edx
lea ecx, [edx + esi*2 - 0x54f4bc7d]
dec esi
mov dword [esp + ecx - 0x2d], eax
dec esi
mov dword [esp + edi - 0x502d0000], ebp
ret
pop eax
mov eax, dword [ebp]
mov dl, byte [ebp + 4]
mov ecx, 0xd194c136
add ebp, 6
mov byte ss:[eax], dl
sub esi, 4
movsx eax, cl
or ax, ax
mov edx, dword [eax + esi - 0x36]
jno 0xcd436b
idiv ax