Function at 0x659e55
Capabilities:
Encode data using base64

Disassembly:
call fcn.00659cd5
jmp 0x659e71
lea esp, [esp + 4]
jmp 0x65a015
jmp 0x659ea9
jmp 0x659ec5
push ebp
jmp 0x659ee1
jmp 0x659efd
mov ebp, esp
jmp 0x659f19
jmp 0x659f35
push ecx
jmp 0x659f51
jmp 0x659f6d
push ecx
jmp 0x659f89
jmp 0x659fa5
push ebx
jmp 0x659fc1
jmp 0x659fdd
push edi
jmp 0x659ff9
jmp 0x68b3aa
jmp 0x659e8d
jmp 0x659e50
mov edi, eax
mov al, byte [ecx]
jmp 0x68b3e9
cmp al, 0x41
jb 0x68b5cc
jae 0x68b5af
test eax, 0x23d0b121
ret
mov bl, byte [ecx + 1]
mov byte [ebp - 1], bl
cmp bl, 0x41
jb 0x68b86a
jae 0x68b6eb
push ecx
fmul dword [esi + 0x29]
fdiv dword [esi]
ror dword [ebp - 0x23], 0xa4
push edi
mov cl, 0x3d
mov dl, 0x20
inc edi
mov dl, 0x50
neg byte [eax + 0x5af88003]
cmp al, 0x5a
jmp 0x68b640
cmp al, 0x61
jb 0x68b5fa
cmp al, 0x7a
jbe 0x68b585
jmp 0x68b5fa
cmp al, 0x2b
je 0x68b585
cmp al, 0x2f
jmp 0x68b649
cmp al, 0x30
jb 0x68b5d9
cmp al, 0x39
jbe 0x68b585
jmp 0x68b5d9
mov eax, 0x403
jmp fcn.0068b8f8
jbe 0x68b585
jmp 0x68b5cc
jne 0x68b611
jmp 0x68b585
cmp bl, 0x5a
jbe 0x68b750
jmp 0x68b86a
cmp bl, 0x2b
je 0x68b750
cmp bl, 0x2f
jmp 0x68b7b3
cmp bl, 0x30
jmp 0x68b7d4
mov dl, byte [ecx + 2]
cmp dl, 0x41
jb 0x68b788
cmp dl, 0x5a
jbe 0x68b7fb
jmp 0x68b788
cmp dl, 0x30
jb 0x68b796
cmp dl, 0x39
jbe 0x68b7fb
jmp 0x68b796
cmp dl, 0x61
jb 0x68b763
cmp dl, 0x7a
jbe 0x68b7fb
jmp 0x68b763
cmp dl, 0x2b
jmp 0x68b83a
jne 0x68b611
jmp 0x68b750
jb 0x68b70f
cmp bl, 0x39
jbe 0x68b750
jmp 0x68b70f
mov cl, byte [ecx + 3]
cmp cl, 0x41
jmp 0x68b84c
cmp cl, 0x61
jmp 0x68b898
je 0x68b7fb
cmp dl, 0x2f
je 0x68b7fb
cmp dl, 0x3d
jne 0x68b611
jmp 0x68b7fb
jb 0x68b81c
cmp cl, 0x5a
jmp 0x68b95a
cmp bl, 0x61
jb 0x68b732
cmp bl, 0x7a
jbe 0x68b750
jmp 0x68b732
jb 0x68b8d7
cmp cl, 0x7a
jbe 0x68ba4b
jmp 0x68b8d7
cmp cl, 0x2b
je 0x68ba4b
cmp cl, 0x2f
je 0x68ba4b
jne 0x68b926
xor byte [ecx + 0x16936001], dl
pushal
xchg ebx, eax
push ss
ja 0x68b8c4
imul ecx, dword [esi], 0xfffffffd
das
stosd dword es:[edi], eax
sub byte [esi + 0xfce28d9], bh
push ebp
aad 0x4a
cmp cl, 0x30
jb 0x68b8ad
cmp cl, 0x39
jbe 0x68ba4b
jmp 0x68b8ad
cmp cl, 0x3d
je 0x68ba4b
jmp 0x68b611
xor ebx, ebx
cmp cl, 0x3d
setne bl
inc ebx
jmp 0x68b9d2
jbe 0x68ba4b
jmp 0x68b81c
cmp al, 0x2b
jne 0x68b9b2
push 0x3e
jmp 0x68b9f7
cmp al, 0x2f
jne 0x68ba17
je 0x68baa6
sbb dword [ebx + 0x729d6e0b], ebx
or byte [0xe117e49d], 0x59
leave
pop ecx
cmp bl, cl
and dword [edi + 7], esp
inc ebx
inc ebx
mov dword [edi], ebx
mov bl, byte [ebp - 1]
jmp 0x68b98e
pop eax
jmp 0x68ba64
cmp al, 0x39
ja 0x68ba81
movzx eax, al
add eax, 4
jmp 0x68ba64
cmp dl, 0x3d
jne 0x68b936
mov dword [edi], 1
jmp 0x68b98e
push esi
cmp bl, 0x2b
jmp 0x68bb05
cmp al, 0x5a
movzx eax, al
ja 0x68bafd
sub eax, 0x41
jmp 0x68ba64
push 0x3f
jmp 0x68b9f7
cmp bl, 0x2f
jne 0x68bb63
je 0x68bbec
lodsb al, byte [esi]
cmp ebp, dword [ebx + 0x38843dce]
cmpsb byte [esi], byte es:[edi]
xor al, 0x53
scasb al, byte es:[edi]
pop es
xor al, 0x71
and eax, eax
sub eax, 0x47
jmp 0x68ba64
jne 0x68bade
push 0x3e
jmp 0x68bc3a
movzx esi, bl
cmp bl, 0x39
ja 0x68bc1c
add esi, 4
jmp 0x68bbb6
mov edi, dword [edi]
cmp edi, 2
jb 0x68bc67
cmp dl, 0x2b
jne 0x68bc48
push 0x3e
jmp 0x68bcc5
push 0x3f
jmp 0x68bc3a
cmp bl, 0x5a
jmp 0x68bd3f
pop esi
jmp 0x68bbb6
cmp dl, 0x2f
jne 0x68bca6
je 0x68bd12
xchg esi, eax
pop ds
invalid
mov edx, dword [ebp - 8]
jmp 0x68bd18
and byte [ebp + 0x365e], 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax - 0x78f0c606], al
mov eax, dword [0xf000000]
xchg byte [ebp + 2], ah
add byte [eax], al
cmp dl, 0x39
ja 0x68bd50
jbe 0x68bf1a
or eax, 0x9b680999
jnp 0x68bc86
arpl bx, si
xchg esi, eax
mov dword gs:[eax], esi
jg 0x68bd00
mov eax, 0x1550eb5a
mov ebp, 0xbf5160f8
daa
mov eax, dword [0x4fa35031]
jne 0x68bd44
pop edx
jmp 0x68bd18
mov ebx, 0x45b6d343
stosb byte es:[edi], al
std
pop ds
push ebp
dec edi
cmp eax, 0
add byte [eax], al
add cl, dl
mov ch, 0xd2
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
les edx, [eax - 0x3a]
mov eax, dword [0x69bdb850]
invalid
add byte [eax], al
add byte [eax], al
add byte [eax], al
add ah, al
push eax
invalid
push 0x3f
jmp 0x68bcc5
cmp edi, 3
jne 0x68bec7
cmp cl, 0x2b
jmp 0x68bfa2
ja 0x68bd6f
sub esi, 0x41
jmp 0x68bbb6
cmp dl, 0x5a
movzx edx, dl
jmp 0x68be07
sub esi, 0x47
jmp 0x68bbb6
ja 0x68be25
sub edx, 0x41
jmp 0x68bd18
sub edx, 0x47
jmp 0x68bd18
cmp cl, 0x2f
jne 0x68bf7d
je 0x68bfc1
add byte [eax], al
jo 0x68beb1
xchg edx, eax
cmc
add al, 0xed
adc ebx, dword [esi + 0x52a66b0c]
hlt
mov ecx, dword [ebp - 8]
jmp 0x68bfdf
movzx edx, dl
add edx, 4
jmp 0x68bd18
pop ecx
jmp 0x68bfdf
cmp cl, 0x39
ja 0x68ee64
movzx ecx, cl
jmp 0x68cd74
jne 0x68bea4
push 0x3e
jmp 0x68bf34
push 0x3f
jmp 0x68bf34
shl eax, 6
jmp fcn.0068c3a1
sub ecx, 0x47
jmp 0x68bfdf
add ecx, 4
jmp 0x68bfdf
cmp cl, 0x5a
movzx ecx, cl
ja 0x68c7c4
sub ecx, 0x41
jmp 0x68bfdf