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

Disassembly:
jns 0x8dce88
js 0x8dce88
xor byte [ecx - 8], 0x77
invalid
pushal
jns 0x8dcea4
js 0x8dcea4
xchg ecx, eax
invalid
mov eax, ecx
setns ah
jb 0x8dcec0
jae 0x8dcec0
sub eax, 0x811c734
invalid
push eax
jns 0x8dcedc
js 0x8dcedc
xchg ebp, eax
inc ebx
and dword [edx + 0x60a25730], esp
test al, 0x28
mov esi, 0x45fc28d9
les ebx, [edx + 0x3d]
int3
push sp
jp 0x8dcef8
jnp 0x8dcef8
mov esi, 0xd85acc4d
dec esi
sub eax, ebx
or byte [ebp + ecx - 0x28e81b63], cl
loope 0x8dcf5a
not dword [edx - 0x72f9449f]
and al, 2
lea esp, [esp + 2]
je 0x8dcf14
jne 0x8dcf14
adc al, 0x17
pop ss
loop 0x8dcf68
jge 0x8dceff
push 0x657dfa0f
in eax, 0x75
sbb al, 0xef
cmp eax, 0x85e26cef
je 0x8dcea2
lea esp, [esp + 4]
and al, 4
jnp 0x8dcf30
jp 0x8dcf30
xlatb
inc edi
and dl, cl
or al, 0xaa
sub al, 0xa2
lds esi, [ebx + esi*4]
rol byte [ebp - 0x2b], 0xbc
dec edi
retf 0xb939
popal
jbe 0x90a2c6
ja 0x90a2c6
mov eax, 0x74e6676c
ret
arpl bx, si
xchg esi, eax
mov al, 0x8d
xor al, 0x17
adc al, 0x9a
inc edx
mov dword [esp + 0x1c], edi
js 0x90a365
jns 0x90a365
sahf
pop ds
invalid
pushal
not ch
popal
push ebp
mov byte [esp], bl
pop word [esp]
mov word [esp], si
mov word [esp], si
lea esp, [esp + 1]
lea esp, [esp]
lea esp, [esp]
lea esp, [esp]
mov byte [esp], ah
lea esp, [esp]
lea esp, [esp]
mov byte [esp], dl
lea esp, [esp + 1]
pushal
pop dword [esp + 0x16]
mov dword [esp + 0x13], ecx
mov dword [esp + 7], eax
mov word [esp + 2], bp
push dword [esp + 1]
jl 0x90a1dc
jge 0x90a1dc
xor eax, 0xbe4324b6
jl 0x90a26c
cmpsd dword [esi], dword es:[edi]
aaa
push edx
mov eax, dword [0xa131b27b]
sal byte [ebx], 0xe2
out 0xd4, eax
shl dword [eax + 0x66], 1
xchg edx, eax
je 0x90a292
add eax, 0x2246c88
add byte [ecx + 0x1000c7d], al
add byte [eax], al
jbe 0x90a307
ja 0x90a33f
stosb byte es:[edi], al
sub al, 0xa2
lds esi, [ebx + esi*4]
lahf
sbb byte [esi + 0x599f18e9], cl
invalid
pushfd
pop word [esp]
jbe 0x90a56b
ja 0x90a56b
dec eax
enter 0x395e, 0xffffffffffffffc8
sbb al, 0x4a
pop edi
dec edi
cmpsd dword [esi], dword es:[edi]
sbb dword [edx + 0x5244c89], eax
pop word [esp + 0x13]
push di
lea esp, [esp + 2]
lea esp, [esp + 0x1c]
jmp 0x90a1f9
lea eax, [ebp - 0x1c]
push bp
lea esp, [esp + 1]
mov byte [esp], dl
mov byte [esp], bh
lea esp, [esp + 1]
jne 0x90a3ee
je 0x90a3ee
or cl, byte [edx + eax - 0x21ec6b9b]
pop edi
iretd
xor eax, eax
pop edi
ret
mov eax, 0x406
leave
ret
push bx
push word [esp + 1]
lea esp, [esp]
push dword [esp]
push word [esp + 5]
lea esp, [esp + 2]
lea esp, [esp + 0x24]
push dword [esp + 8]
mov edi, ecx
add edi, 4
mov dword [eax], 0x10
call fcn.00900459
pop ecx
jmp 0x90a333
mov dword [ebp + 0xc], 0x10
lea eax, [ebp - 0x1c]
jmp 0x90a4e8
push eax
lea eax, [ebp - 0xc]
mov ecx, edi
call fcn.00900438
mov ecx, dword [esp]
mov cl, ah
bswap ecx
bswap ecx
bswap cx
pushfd
mov ecx, dword [esp + 4]
pushfd
mov dword [esp], esi
lea esp, [esp + 2]
mov word [esp], ax
mov word [esp], sp
lea esp, [esp + 1]
mov byte [esp], bh
lea esp, [esp + 1]
lea esp, [esp + 8]
mov dword [ebp - 4], eax
test eax, eax
jne 0x90a3c6
push esi
lea eax, [ebp - 0x1c]
push eax
lea esi, [ebp - 0x40]
call fcn.00900354
push dword [ebp + 0xc]
lea eax, [ebp - 8]
push dword [ebp + 8]
push eax
lea eax, [ebp - 0x140]
push eax
mov eax, dword [ebp + 0x10]
call fcn.008e4243
add esp, 0x14
pop esi
test eax, eax
je 0x90a47a
mov dword [ebp - 4], 0x40a
jmp 0x90a3c6
cmp dword [ebp - 8], 0x22
jne 0x90aa05
push 0x22
lea ecx, [ebp - 0x40]
lea eax, [ebp - 0x140]
jb 0x90a76d
jae 0x90a76d
insb byte es:[edi], dx
ljmp 0x2fae
mov byte [eax], 0
inc eax
jmp 0x90a4e8
mov ecx, dword [ebp + 0xc]
jnp 0x90a502
jp 0x90a502
in eax, dx
insd dword es:[edi], dx
std
test byte [edi - 0x5b], dh
pop ss
xchg esp, eax
or ch, byte [ebp - 0x64]
pop esi
jge 0x42280901
xchg ecx, ebp
test ah, bl
mov ecx, dword [ebp + 0xc]
dec dword [ebp + 0xc]
test ecx, ecx
jne 0x90a4c1
mov dword [ebp + 0xc], 0x22
lea eax, [ebp - 0x40]
jmp 0x90a4cb
dec dword [ebp + 0xc]
test ecx, ecx
jne 0x90a527
mov dword [ebp + 0xc], pe_nt_image_headers32
jmp 0x90a6be
mov byte [eax], 0
inc eax
jmp 0x90a4cb
mov word [esp], bx
lea esp, [esp]
mov byte [esp], ch
mov word [esp], bx
jo 0x90a5cb
jno 0x90a5cb
push ebp
aam 0x4a
sub eax, 0x21a50fdc
mov cl, 0xd0
and esp, dword [esi - 0x4027b533]
dec edx
int 0x30
invalid
mov byte [eax], 0
inc eax
jmp 0x90a623
pushal
mov eax, 0x38292aa2
mov dh, byte [esp]
pushfd
lea esp, [esp + 4]
popal
push ecx
pop word [esp]
js 0x90a603
jns 0x90a603
out 0x64, al
cli
popfd
insb byte es:[edi], dx
mov esp, 0x3156c043
rol byte [edx], 0x74
hlt
lea esp, [esp + 1]
mov byte [esp], cl
mov byte [esp], ch
mov byte [esp], ah
lea esp, [esp]
push bx
push ax
lea esp, [esp + 1]
lea esp, [esp + 4]
lea esp, [esp + 4]
jge 0x90a6d7
jl 0x90a6d7
cld
adc dword [ebx], 0x76
test dword [eax + 8], edx
push ecx
mov bl, 0x86
adc dl, byte [ebx - 0x7699ae9a]
and al, 0x24
push cx
mov word [esp], sp
jno 0x90a657
jo 0x90a657
adc dl, byte [edx + ecx + 0x2d1b9c6d]
stosb byte es:[edi], al
cmp byte [edi - 0x56], bl
sub eax, 0x6603930f
xchg ebp, eax
inc ebx
aaa
lcall 0xff0c, 0x4d8b548c
dec ebp
or al, 0x85
leave
mov ecx, dword [ebp + 0xc]
dec dword [ebp + 0xc]
test ecx, ecx
jne 0x90a594
mov eax, dword [ebp - 4]
leave
ret
push dword [esp + 2]
lea esp, [esp + 8]
push 0x10
lea ecx, [esi + 4]
mov dword [esi], pe_nt_image_headers32
call fcn.008de0b5
and dword [esi + 0x14], 0
mov cx, 0x6cbc
mov cx, 0x1338
mov cl, bl
bswap cx
mov cx, word [esp]
not ch
mov ch, 5
mov ecx, dword [esp]
push dx
push eax
mov word [esp], sp
lea esp, [esp + 4]
push cx
lea esp, [esp + 8]
stc
sub esp, 8
jne 0x90a6f5
je 0x90a6f5
or ecx, dword [edx + eax + 0x7c139465]
invalid
lea eax, [ebp - 0x140]
jmp 0x90a623
xchg dword [esi - 0x51], edx
jne 0x90a738
pushal
mov esi, 0x4f395047
je 0x90a74f
jne 0x90a74f
sti
adc dword [ebx], 0x76
test dword [esp + eax*4], eax
add dword [ecx - 0x7379fc10], edx
push cs
pushfd
sti
push ss
invalid
sub esp, 0x12
sub esp, 0xe
xor eax, eax
pushfd
mov dword [esp], eax
mov byte [esp], bl
push dword [esp + 2]
mov dword [esp + 3], esp
push dword [esp + 7]
lea esp, [esp + 0x34]
ret
push si
jl 0x90a9ca
add byte [eax], al
jge 0x90a9ca
push ebx
fisttp dword [ebx + 0x2e]
fstp qword [edi + ecx - 0x78]
push ds
jns 0x90a6d3
movaps xmm3, xmmword [edx + 0x61616097]
pushal
popal
popal
jno 0x90a732
jo 0x90a732
cwde
sbb cl, byte [eax - 0x2735e511]
pop ecx
leave
test al, 0x5b
wait
mov ebx, 0x3bc8a939
in eax, dx
fisttp word [0xe85b13cf]
pop eax
cmp ebp, edi
dec dword [ebp - 0x2598fd73]
imul esi, esi, 0xffffffd5
call fcn.008de0ca
lea ecx, [ebp + 0x6bda6702]
not ch
mov ecx, dword [esp]
lea ecx, [ebx - 0x2bd2]
setge ch
mov cx, 0x80b
lea ecx, [esi + 0x63333773]
mov cx, word [esp]
pushal
mov ecx, dword [esp + 0x20]
pushal
pop dword [esp + 0x10]
lea esp, [esp + 5]
mov word [esp + 0xf], sp
mov word [esp + 0xb], bp
push edx
lea esp, [esp + 2]
push dword [esp + 0x13]
push dword [esp + 0x14]
lea esp, [esp + 1]
lea esp, [esp + 0x44]
test eax, eax
jne 0x90aa05
cmp dword [edi], 5
jne 0x90a3c6
lea eax, [edi + 4]
call fcn.0090046c
jmp 0x90a3c6
pushal
push esp
pop word [esp + 0x12]
pop word [esp + 0x19]
lea esp, [esp + 0x13]
lea esp, [esp + 3]
lea esp, [esp + 0xc]
jmp 0x90a59d
mov dword [ebp - 4], 0x40b
jmp 0x90a3c6