Function at 0x100c01c7
Capabilities:
Encode data using base64

Disassembly:
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
sub esp, 8
push ebx
push ebp
push esi
push edi
xor edi, edi
cmp eax, edi
jne 0x100c01f4
mov eax, ecx
lea esi, [eax + 1]
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x100c01e7
sub eax, esi
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x1c]
mov ebp, ecx
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffffc
cmp ecx, edi
mov dword [esp + 0x10], edi
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], edi
jle 0x100c047d
dec ecx
shr ecx, 2
inc ecx
lea eax, [ecx*4]
lea edx, [ecx + ecx*2]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x10], edx
lea ecx, [ecx]
mov ebx, dword [ebp]
or edi, reloc.WINMM.dll_midiStreamOut
cmp bl, 0x41
jl 0x100c024f
cmp bl, 0x5a
jg 0x100c024f
movsx edi, bl
sub edi, 0x41
jmp 0x100c0289
cmp bl, 0x61
jl 0x100c0261
cmp bl, 0x7a
jg 0x100c0261
movsx edi, bl
sub edi, 0x47
jmp 0x100c0289
cmp bl, 0x30
jl 0x100c0273
cmp bl, 0x39
jg 0x100c0273
movsx edi, bl
add edi, 4
jmp 0x100c0289
cmp bl, 0x2b
jne 0x100c027f
mov edi, 0x3e
jmp 0x100c0289
cmp bl, 0x2f
jne 0x100c0289
mov edi, 0x3f
mov ecx, ebx
shr ecx, 8
or edx, reloc.WINMM.dll_midiStreamOut
cmp cl, 0x41
jl 0x100c02a3
cmp cl, 0x5a
jg 0x100c02a3
movsx edx, cl
sub edx, 0x41
jmp 0x100c02dd
cmp cl, 0x61
jl 0x100c02b5
cmp cl, 0x7a
jg 0x100c02b5
movsx edx, cl
sub edx, 0x47
jmp 0x100c02dd
cmp cl, 0x30
jl 0x100c02c7
cmp cl, 0x39
jg 0x100c02c7
movsx edx, cl
add edx, 4
jmp 0x100c02dd
cmp cl, 0x2b
jne 0x100c02d3
mov edx, 0x3e
jmp 0x100c02dd
cmp cl, 0x2f
jne 0x100c02dd
mov edx, 0x3f
lea esi, [edx*4]
sar esi, 6
lea edx, [edi*4]
or esi, edx
and esi, 0xff
or edx, reloc.WINMM.dll_midiStreamOut
cmp cl, 0x41
jl 0x100c030b
cmp cl, 0x5a
jg 0x100c030b
movsx edx, cl
sub edx, 0x41
jmp 0x100c0345
cmp cl, 0x61
jl 0x100c031d
cmp cl, 0x7a
jg 0x100c031d
movsx edx, cl
sub edx, 0x47
jmp 0x100c0345
cmp cl, 0x30
jl 0x100c032f
cmp cl, 0x39
jg 0x100c032f
movsx edx, cl
add edx, 4
jmp 0x100c0345
cmp cl, 0x2b
jne 0x100c033b
mov edx, 0x3e
jmp 0x100c0345
cmp cl, 0x2f
jne 0x100c0345
mov edx, 0x3f
mov ecx, ebx
shr ecx, 0x10
or edi, reloc.WINMM.dll_midiStreamOut
cmp cl, 0x41
jl 0x100c035f
cmp cl, 0x5a
jg 0x100c035f
movsx edi, cl
sub edi, 0x41
jmp 0x100c0399
cmp cl, 0x61
jl 0x100c0371
cmp cl, 0x7a
jg 0x100c0371
movsx edi, cl
sub edi, 0x47
jmp 0x100c0399
cmp cl, 0x30
jl 0x100c0383
cmp cl, 0x39
jg 0x100c0383
movsx edi, cl
add edi, 4
jmp 0x100c0399
cmp cl, 0x2b
jne 0x100c038f
mov edi, 0x3e
jmp 0x100c0399
cmp cl, 0x2f
jne 0x100c0399
mov edi, 0x3f
shl edi, 2
sar edi, 4
shl edx, 4
or edi, edx
and edi, 0xff
or edx, reloc.WINMM.dll_midiStreamOut
cmp cl, 0x41
jl 0x100c03bf
cmp cl, 0x5a
jg 0x100c03bf
movsx edx, cl
sub edx, 0x41
jmp 0x100c03f9
cmp cl, 0x61
jl 0x100c03d1
cmp cl, 0x7a
jg 0x100c03d1
movsx edx, cl
sub edx, 0x47
jmp 0x100c03f9
cmp cl, 0x30
jl 0x100c03e3
cmp cl, 0x39
jg 0x100c03e3
movsx edx, cl
add edx, 4
jmp 0x100c03f9
cmp cl, 0x2b
jne 0x100c03ef
mov edx, 0x3e
jmp 0x100c03f9
cmp cl, 0x2f
jne 0x100c03f9
mov edx, 0x3f
shr ebx, 0x18
or ecx, reloc.WINMM.dll_midiStreamOut
cmp bl, 0x41
jl 0x100c0411
cmp bl, 0x5a
jg 0x100c0411
movsx ecx, bl
sub ecx, 0x41
jmp 0x100c044b
cmp bl, 0x61
jl 0x100c0423
cmp bl, 0x7a
jg 0x100c0423
movsx ecx, bl
sub ecx, 0x47
jmp 0x100c044b
cmp bl, 0x30
jl 0x100c0435
cmp bl, 0x39
jg 0x100c0435
movsx ecx, bl
add ecx, 4
jmp 0x100c044b
cmp bl, 0x2b
jne 0x100c0441
mov ecx, 0x3e
jmp 0x100c044b
cmp bl, 0x2f
jne 0x100c044b
mov ecx, 0x3f
shl edx, 6
shl ecx, 2
sar ecx, 2
or ecx, edx
xor edx, edx
mov dh, cl
mov ecx, dword [esp + 0x1c]
add ebp, 4
add eax, 3
or edx, edi
shl edx, 8
or edx, esi
mov dword [eax - 3], edx
dec ecx
mov dword [esp + 0x1c], ecx
jne 0x100c0237
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
cmp eax, ecx
jge 0x100c0701
sub ecx, eax
xor eax, eax
test ecx, ecx
mov dword [esp + 0x24], eax
jle 0x100c04b1
mov eax, ecx
shr ecx, 2
mov esi, ebp
lea edi, [esp + 0x24]
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x24]
or ebx, reloc.WINMM.dll_midiStreamOut
cmp al, 0x41
jl 0x100c04c4
cmp al, 0x5a
jg 0x100c04c4
movsx ebx, al
sub ebx, 0x41
jmp 0x100c04f8
cmp al, 0x61
jl 0x100c04d4
cmp al, 0x7a
jg 0x100c04d4
movsx ebx, al
sub ebx, 0x47
jmp 0x100c04f8
cmp al, 0x30
jl 0x100c04e4
cmp al, 0x39
jg 0x100c04e4
movsx ebx, al
add ebx, 4
jmp 0x100c04f8
cmp al, 0x2b
jne 0x100c04ef
mov ebx, 0x3e
jmp 0x100c04f8
cmp al, 0x2f
jne 0x100c04f8
mov ebx, 0x3f
mov ecx, eax
shr ecx, 8
or edx, reloc.WINMM.dll_midiStreamOut
cmp cl, 0x41
jl 0x100c0512
cmp cl, 0x5a
jg 0x100c0512
movsx edx, cl
sub edx, 0x41
jmp 0x100c054c
cmp cl, 0x61
jl 0x100c0524
cmp cl, 0x7a
jg 0x100c0524
movsx edx, cl
sub edx, 0x47
jmp 0x100c054c
cmp cl, 0x30
jl 0x100c0536
cmp cl, 0x39
jg 0x100c0536
movsx edx, cl
add edx, 4
jmp 0x100c054c
cmp cl, 0x2b
jne 0x100c0542
mov edx, 0x3e
jmp 0x100c054c
cmp cl, 0x2f
jne 0x100c054c
mov edx, 0x3f
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x10]
shl edx, 2
sar edx, 6
shl bl, 2
or dl, bl
mov byte [esi], dl
inc esi
inc edi
cmp cl, 0x3d
je 0x100c0627
mov ebx, eax
shr ebx, 0x10
cmp bl, 0x3d
je 0x100c0627
or edx, reloc.WINMM.dll_midiStreamOut
cmp cl, 0x41
jl 0x100c058f
cmp cl, 0x5a
jg 0x100c058f
movsx edx, cl
sub edx, 0x41
jmp 0x100c05c9
cmp cl, 0x61
jl 0x100c05a1
cmp cl, 0x7a
jg 0x100c05a1
movsx edx, cl
sub edx, 0x47
jmp 0x100c05c9
cmp cl, 0x30
jl 0x100c05b3
cmp cl, 0x39
jg 0x100c05b3
movsx edx, cl
add edx, 4
jmp 0x100c05c9
cmp cl, 0x2b
jne 0x100c05bf
mov edx, 0x3e
jmp 0x100c05c9
cmp cl, 0x2f
jne 0x100c05c9
mov edx, 0x3f
or ecx, reloc.WINMM.dll_midiStreamOut
cmp bl, 0x41
jl 0x100c05de
cmp bl, 0x5a
jg 0x100c05de
movsx ecx, bl
sub ecx, 0x41
jmp 0x100c0618
cmp bl, 0x61
jl 0x100c05f0
cmp bl, 0x7a
jg 0x100c05f0
movsx ecx, bl
sub ecx, 0x47
jmp 0x100c0618
cmp bl, 0x30
jl 0x100c0602
cmp bl, 0x39
jg 0x100c0602
movsx ecx, bl
add ecx, 4
jmp 0x100c0618
cmp bl, 0x2b
jne 0x100c060e
mov ecx, 0x3e
jmp 0x100c0618
cmp bl, 0x2f
jne 0x100c0618
mov ecx, 0x3f
shl ecx, 2
sar ecx, 4
shl dl, 4
or cl, dl
mov byte [esi], cl
inc esi
inc edi
mov ecx, eax
shr ecx, 0x10
cmp cl, 0x3d
je 0x100c06f4
mov ebx, eax
shr ebx, 0x18
cmp ebx, 0x3d
je 0x100c06f4
or edx, reloc.WINMM.dll_midiStreamOut
cmp cl, 0x41
jl 0x100c0658
cmp cl, 0x5a
jg 0x100c0658
movsx edx, cl
sub edx, 0x41
jmp 0x100c0692
cmp cl, 0x61
jl 0x100c066a
cmp cl, 0x7a
jg 0x100c066a
movsx edx, cl
sub edx, 0x47
jmp 0x100c0692
cmp cl, 0x30
jl 0x100c067c
cmp cl, 0x39
jg 0x100c067c
movsx edx, cl
add edx, 4
jmp 0x100c0692
cmp cl, 0x2b
jne 0x100c0688
mov edx, 0x3e
jmp 0x100c0692
cmp cl, 0x2f
jne 0x100c0692
mov edx, 0x3f
or ecx, reloc.WINMM.dll_midiStreamOut
cmp bl, 0x41
jl 0x100c06a7
cmp bl, 0x5a
jg 0x100c06a7
movsx ecx, bl
sub ecx, 0x41
jmp 0x100c06e1
cmp bl, 0x61
jl 0x100c06b9
cmp bl, 0x7a
jg 0x100c06b9
movsx ecx, bl
sub ecx, 0x47
jmp 0x100c06e1
cmp bl, 0x30
jl 0x100c06cb
cmp bl, 0x39
jg 0x100c06cb
movsx ecx, bl
add ecx, 4
jmp 0x100c06e1
cmp bl, 0x2b
jne 0x100c06d7
mov ecx, 0x3e
jmp 0x100c06e1
cmp bl, 0x2f
jne 0x100c06e1
mov ecx, 0x3f
lea eax, [ecx*4]
sar eax, 2
shl dl, 6
or al, dl
mov byte [esi], al
inc esi
inc edi
mov eax, edi
pop edi
mov byte [esi], 0
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov byte [ecx], 0
pop ebx
add esp, 8
ret