Function at 0x56969f
Capabilities:
Encode data using base64
Encrypt data using speck

Disassembly:
jmp 0x5696bb
lea esp, [esp + 4]
jmp 0x56987b
jmp 0x5696f3
jmp 0x56970f
push ebp
jmp 0x56972b
jmp 0x569747
mov ebp, esp
jmp 0x569763
jmp 0x56977f
movzx eax, byte [ecx]
jmp 0x56979b
jmp 0x5697b7
shl eax, 0x10
jmp 0x5697d3
jmp 0x5697ef
cmp dword [ebp + 0xc], 2
jmp 0x569827
jmp 0x5987c6
jmp 0x569843
jb 0x56980b
jae 0x56985f
push ecx
add dword [ebx + 0x1176e076], edi
loopne 0x569852
lds edx, [edx - 0x40]
cmpsd dword [esi], dword es:[edi]
push edx
mov eax, 0x3257c755
shl dword [edi], 0xbf
sub bh, byte [eax + 0x2e813e9]
add byte [edx + 5], ah
shl byte [edi - 0x38aa47ae], 0x57
xor al, cl
daa
mov edi, 0x13e9b82a
call 0x5b89868
jmp 0x598077
hlt
jmp 0x5696d7
movzx edx, byte [ecx + 1]
jmp 0x598744
shl edx, 8
jmp 0x598813
mov edi, dword [ebp + 0xc]
jmp 0x598821
mov ebx, dword [ebp + 0xc]
jmp 0x598892
push ebx
push esi
push edi
mov ecx, eax
push 0x3f
mov esi, eax
shr ecx, 0x12
pop edx
shr esi, 0xc
and ecx, edx
and esi, edx
cmp dword [ebp + 0xc], 2
jb 0x59876a
jae 0x5987da
ror byte [esi - 0x24], cl
mov ebx, 0x1885ff56
mov gs, ecx
sbb byte [edi + 0x7b1c8e2c], ch
xchg esi, eax
adc dword [eax + ebx], edx
daa
push esi
test al, 0x42
cmp dword [ebp + 0xc], 3
jne 0x598792
movzx ecx, byte [ecx + 2]
or eax, ecx
jmp 0x598792
mov edi, eax
shr edi, 6
and edi, edx
jmp 0x598821
or eax, edx
jmp 0x56980b
cmp dword [ebp + 0xc], 3
jne 0x598773
je 0x598861
mov bl, 0x31
mov eax, dword [0x62d033c0]
loope 0x5988a7
adc bl, ah
add ebp, dword [eax - 0x12]
jl 0x598858
neg byte [edi]
test eax, 0xe63e2bc5
aaa
mov ch, ch
sbb al, 0xfc
hlt
and eax, edx
mov ebx, eax
jmp 0x598892
push 0x3e
pop eax
cmp ecx, 0x1a
jae 0x5988e8
lea edx, [ecx + 0x41]
jmp 0x5988b7
shl dword [eax + 0x109bb353], 0x86
loope 0x5988c0
mov bh, 0x44
jle 0x598900
and dl, ah
push ecx
mov ecx, dword [ebp + 8]
mov byte [ecx], dl
cmp esi, 0x1a
jae 0x598aca
add dword [0x8d000002], 0x4e
inc ecx
lea ecx, [esi + 0x41]
jmp 0x598a70
cmp ecx, 0x34
jmp 0x59898c
push 0x253b2080
add byte [eax], al
ficom dword [ebx - 0x3d]
cmpsb byte [esi], byte es:[edi]
push ebp
mov ecx, 0xfe450eb
dec eax
cmp ecx, eax
jae 0x59a771
jb 0x599e5e
xor eax, 0xa15237a7
inc edi
jecxz 0x5989f9
in al, 0x83
jle 0x598960
mov byte [ebx + edi*8], ah
arpl word [edx + 0x518ddf73], dx
inc edi
jae 0x59896d
lea edx, [ecx + 0x47]
jmp 0x5988b7
cmp esi, eax
jae 0x598a3f
jb 0x598aad
aad 0x4e
fdivr qword [ebx + 0x20b8e056]
mov dh, 0xd1
and byte [ecx - 0xe69ff67], cl
add byte [edi + 0xa21528], bh
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 [0x2d84bf6c], ch
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
sub eax, 0x2d84bf6c
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
stosd dword es:[edi], eax
cmp ebp, dword [ebx + 0x37923dce]
dec ecx
xchg ecx, eax
xor ecx, ecx
cmp esi, eax
setne cl
lea ecx, [ecx*4 + 0x2b]
jmp 0x598a70
mov edx, dword [ebp + 8]
mov byte [edx + 1], cl
jmp 0x598b63
cmp dword [ebp + 0xc], 2
jmp 0x598a4f
lea ecx, [esi - 4]
jmp 0x598a70
cmp esi, 0x34
jae 0x5989da
lea ecx, [esi + 0x47]
jmp 0x598a70
mov byte [edx + 2], cl
jmp 0x598e69
cmp edi, 0x34
jae 0x598bd8
jb 0x598bb6
movsb byte es:[edi], byte [esi]
mov esp, 0x46d436db
rol dword [ebx + 0x26], cl
aad 0x74
push esi
fimul word [ebx + ebp - 0x1a]
sub eax, 0xec998f84
sar bh, 1
jb 0x598c2a
cmp edi, 0x1a
jae 0x598b40
lea ecx, [edi + 0x41]
jmp 0x598aea
xor ecx, ecx
cmp edi, eax
setne cl
jmp 0x598c06
lea ecx, [edi + 0x47]
jmp 0x598aea
cmp edi, eax
jae 0x598b96
lea ecx, [edi - 4]
jmp 0x598aea
lea ecx, [ecx*4 + 0x2b]
jmp 0x598aea
mov byte [edx + 2], 0x3d
jmp 0x598e69
cmp ebx, 0x34
jae 0x598c87
lea ecx, [ebx + 0x47]
jmp 0x598d56
mov byte [edx + 3], 0x3d
jmp 0x598cf1
cmp ebx, eax
jae 0x598ce1
lea ecx, [ebx - 4]
jmp 0x598d56
xor ecx, ecx
cmp ebx, eax
setne cl
lea ecx, [ecx*4 + 0x2b]
jmp 0x598d56
pop edi
pop esi
pop ebx
pop ebp
ret
mov byte [edx + 3], cl
jmp 0x598cf1
cmp dword [ebp + 0xc], 3
jne 0x598c6a
cmp ebx, 0x1a
jae 0x598c48
lea ecx, [ebx + 0x41]
jmp 0x598d56
lea edx, [ecx - 4]
jmp 0x5988b7
xor edx, edx
cmp ecx, eax
setne dl
lea edx, [edx*4 + 0x2b]
jmp 0x5988b7