Function at 0x5baf19
Capabilities:
Encode data using base64

Disassembly:
call 0x5baef7
jb 0x586cda
call fcn.005baf19
mov ds, word [bx + di]
js 0x586cd6
sbb eax, 0x32f3d926
movsd dword es:[edi], dword [esi]
push cs
movsw word es:[edi], word [esi]
jmp 0x60aab3
xor dh, byte [ebp + ebx - 0x2b]
call 0x5baf48
invalid
pushfd
jmp 0x5bb02e
call fcn.005bafa9
mov byte [esp + 1], ah
lea esp, [esp + 3]
lea esp, [esp + 1]
cmp al, 0x2b
call fcn.005baf92
mov bh, 0x9e
jmp 0xc4b7c92d
cmp bl, 0x61
jmp 0x586d3b
jb 0x586d7d
cmp bl, 0x7a
pushfd
jmp 0x5bb9b0
push esi
call fcn.005bb339
lea esp, [esp + 8]
jmp 0x5bab31
cmp bl, 0x30
pushal
jmp 0x5bb43a
mov dl, byte [ecx + 2]
jmp 0x5bb096
cmp dl, 0x61
jmp 0x5bb0a4
call 0x5bb1ba
lds ecx, [edx + 0x5a]
pop ebx
insd dword es:[edi], dx
cld
xor byte [ecx - 0x3e], ch
cdq
sbb eax, 0x2a33d4bf
inc ebp
hlt
mov cl, byte [ecx + 3]
cmp cl, 0x41
pushfd
jmp 0x5bb1a3
push ecx
jmp 0x5bbb4b
push ebx
shl cx, cl
jmp 0x5bba4e
mov ebx, dword [ebp + 0xc]
jmp 0x586eed
call fcn.005bbb35
mov dword [esp], ebx
lea esp, [esp + 4]
cmp dword [ebp + 0xc], 3
jne 0x586e32
je 0x5bbb58
mov eax, dword [reloc.SHELL32.dll_ShellExecuteW]
movsd dword es:[edi], dword [esi]
jmp 0x60b1e7
pushal
mov dword [esp + 0x1b], eax
jmp 0x5bb9db
push sp
call fcn.005bbc93
xor dword [ebx], edi
cdq
ret
mov byte [eax], 0
jmp 0x5baa6b
mov ecx, dword [ebp + 0x14]
cmc
push edi
jmp 0x5baa4a
lea esp, [esp + 4]
dec dword [ebp + 0x14]
pushal
lea esp, [esp + 0x20]
jmp 0x5bab0e
inc eax
jmp 0x5ba2ae
pushfd
jmp 0x5baa78
lea esp, [esp + 4]
cmp dl, 0x2b
pushfd
pop word [esp]
lea esp, [esp + 2]
jmp 0x5bb130
call 0x5bb0b1
retf
cmp dl, 0x3d
jmp 0x5bb30b
cmp cl, 0x61
jmp 0x5bb1cd
jmp 0x5bb286
call fcn.005bb238
imul esi, esp, 0x6a
or eax, 0xe17f48fc
jno 0x5bab14
jecxz 0x5bab57
mov edi, 0x22d7b022
xchg edi, eax
jecxz 0x5bab28
test ecx, ecx
jne 0x5ba208
invalid
call fcn.005baad9
call fcn.005bb2e9
push ebp
cmc
or al, 0xff
jp 0x5bab8b
out 0x74, al
adc ebp, esi
je 0x5bab3d
out dx, al
pop ecx
xchg edi, eax
dec cl
push 0xeb5b5f8b
add al, 0x22
pop ebp
lodsb al, byte [esi]
mov edi, 0x7d83c3c9
pop edi
pop ebx
jmp 0x5bab39
leave
ret
cmp dword [ebp + 0xc], 3
or al, 3
jmp 0x5bbe80
invalid
pushal
lea esp, [esp + 0x20]
cmp al, 0x2f
push bp
jmp 0x5bb394
jmp 0x5bb364
invalid
jmp 0x5bb41b
call 0x5bb462
push word [esp + 3]
lea esp, [esp + 2]
mov dword [esp], esi
sub esp, 0x12
lea esp, [esp + 2]
jmp 0x5bb44c
movzx esi, bl
jmp 0x5bac0a
pop esi
jmp 0x5bac37
cmp bl, 0x39
call 0x5bb4b2
and dword [edx + reloc.SHELL32.dll_ShellExecuteW], ebp
mov ecx, 0x7bb4829
sbb byte [ebx + 0x52], bh
cmp bl, 0x2f
jmp 0x5bb488
mov edi, dword [edi]
jmp 0x5bac3f
cmp edi, 2
jb 0x5bac98
cmp dl, 0x2b
jmp 0x5bb4e9
pushfd
push word [esp + 3]
jmp 0x5bac7c
lea esp, [esp + 2]
lea esp, [esp + 4]
cmp dl, 0x2f
push cx
push word [esp + 1]
jmp 0x5bb52b
push ebx
jmp 0x5bb58b
cmp dl, 0x39
push bx
lea esp, [esp + 2]
jmp 0x5bacc9
jmp 0x5bb651
ja 0x5bad10
push edx
lea esp, [esp + 4]
movzx edx, dl
jmp 0x5bb57d
jmp 0x5bb5a1
cmp dl, 0x5a
jmp 0x5bb566
jmp 0x5bb6e7
dec eax
das
ficomp dword [edi]
mov ebx, 0xe89c0d92
movsd dword es:[edi], dword [esi]
or byte [eax], al
add ch, ch
call 0x5bb5e8
in eax, dx
jae 0x5bad29
xchg byte [ebp - 0x3d], dh
cmc
je 0x5bad36
lea edi, [ecx + edi*4 - 0x1f]
and byte [ebx - 0x66], ah
cmc
jmp 0x5bad72
push bx
lea esp, [esp + 2]
jmp 0x5bb6a3
shl eax, 6
jmp 0x5bb762
cmp edi, 3
jmp 0x5bb76b
call 0x5bb657
pop eax
into
pop esp
cmp edx, esi
push 0x96f363ca
shl dword gs:[esi], cl
push ecx
rcl byte [ebx - 0x36]
pop word [esp]
push word [esp]
jmp 0x5bae50
lea esp, [esp + 4]
push ebp
push bx
mov ebp, dword [esp]
lea esp, [esp + 2]
jmp 0x5baea8
push ecx
push ecx
push ebx
jmp 0x5baeb8
pushfd
push dword [esp + 3]
lea esp, [esp + 8]
cmp al, 0x41
push ebx
jmp 0x5baec1
mov ebp, esp
sub esp, 8
mov word [esp + 1], bp
lea esp, [esp + 8]
jmp 0x5bae87
push edi
rol edi, cl
mov edi, eax
mov al, byte [ecx]
jmp 0x5bae8c
lea esp, [esp + 4]
jb 0x586ca3
cmp al, 0x5a
jmp 0x5baf0d
jmp 0x5bb7ae
jbe 0x586cf0
ja 0x586ca3
lea esp, [esp + 4]
cmp al, 0x7a
jmp 0x5baf70
call 0x5bb7fc
xchg esp, eax
adc dword [ecx + reloc.SHELL32.dll_ShellExecuteW], eax
xchg edx, eax
add byte [edi - 0x6e], ah
and al, 0x93
or ah, byte [ebp - 0x77abb82c]
push esp
and al, 1
lea esp, [esp + 8]
jmp 0x5baf57
cmp al, 0x30
push edx
lea esp, [esp + 4]
jb 0x586d06
cmc
jmp 0x5bafe1
jbe 0x586cf0
ja 0x586cda
lea esp, [esp + 3]
jmp 0x5bafc4
jne 0x586d5c
je 0x586cf0
push ecx
fisttp qword [ebp + 0x14]
out 0x57, eax
lodsb al, byte [esi]
mov edi, 0x840f3186
mov ebp, 0x2f3cfffc
xor dword [edi], ecx
test byte [esi], ah
mov ebp, 0x2f3cfffc
je 0x586cf0
cmp al, 0x2f
jmp 0x5bafae
cmp al, 0x39
push si
lea esp, [esp + 2]
jbe 0x586cf0
ja 0x586d06
cmp bl, 0x5a
call fcn.005bb03c
in al, 0x76
in al, 0x83
jle 0x5bafc3
imul byte [ebx - 5]
sahf
insd dword es:[edi], dx
test al, 0xe
cdq
mov byte [ebp - 1], bl
cmp bl, 0x41
jb 0x586d32
jmp 0x5baff5
lea esp, [esp + 4]
mov bl, byte [ecx + 1]
pushfd
lea esp, [esp + 4]
jmp 0x5bb00b
cmp dl, 0x41
jb 0x586da9
call fcn.005bb06b
jb 0x5baa95
clc
stc
cmp dl, 0x7a
jmp 0x5bb0f0
jbe 0x586de5
ja 0x5baa95
lea esp, [esp + 8]
jb 0x5baa71
stc
cmp dl, 0x39
jmp 0x5bb158
je 0x586de5
call 0x5bb13c
movsb byte es:[edi], byte [esi]
sub esp, 0x13
lea esp, [esp + 3]
jmp 0x5bb187
pushfd
mov dword [esp], eax
lea esp, [esp + 4]
jbe 0x586de5
ja 0x5baa71
push dword [esp]
lea esp, [esp + 8]
jmp 0x5bb193
lea esp, [esp + 0x14]
cmp dl, 0x2f
call 0x5bb16c
je 0x586de5
cmp dl, 0x3d
pushal
lea esp, [esp + 0x20]
jmp 0x5bb216
push dword [esp + 2]
jmp 0x5bb1e6
jb 0x5baaf5
jae 0x5bb261
mov edx, 0xcba4f28
sbb al, 0x9f
punpckhdq mm3, qword [ecx + 0x648d7210]
and al, 8
lea esp, [esp + 8]
jb 0x5baac1
stc
cmp cl, 0x5a
call fcn.005bb1cb
lea esp, [esp + 4]
jbe 0x5baaab
ja 0x5baac1
in eax, dx
jge 0x5bb211
test dword [edx + 0x75], reloc.SHELL32.dll_ShellExecuteW
insb byte es:[edi], dx
or eax, dword [esi]
mov dh, 0x4f
jne 0x586d5c
je 0x586de5
cmp cl, 0x30
jmp 0x5bb23e
jb 0x5baadf
cmp cl, 0x39
jbe 0x5baaab
ja 0x5baadf
push edx
fdiv qword [edx + 0x15]
in al, 0x56
movsb byte es:[edi], byte [esi]
sub dword [ecx - reloc.SHELL32.dll_ShellExecuteW], edi
imul eax, dword [eax - reloc.SHELL32.dll_ShellExecuteW], 0x41
clc
invalid
cmp cl, 0x7a
jbe 0x5baaab
ja 0x5baaf5
lea esp, [esp + 4]
jmp 0x5bb294
cmp cl, 0x2b
je 0x5baaab
call 0x5bb270
cmp cl, 0x2f
pushfd
push dword [esp + 1]
jmp 0x5bb3e8
jbe 0x586d93
ja 0x586dcf
lea esp, [esp + 4]
je 0x5baaab
jne 0x586d5c
aaa
movsd dword es:[edi], dword [esi]
xor eax, 0x5412af5c
jmp 0x5bb2ba
jne 0x5bab1b
mov dword [edi], 1
jmp 0x5bab7a
cmp al, 0x2b
jne 0x5bab5e
call fcn.005bb3ac
pop ss
invalid
mov word [esp], sp
lea esp, [esp + 2]
jmp 0x5bb3c8
jnp 0x5bb3e0
in eax, dx
insb byte es:[edi], dx
mov ds, word [ecx]
js 0x5bb423
jne 0x5bab90
call fcn.005bb3b2
mov dl, 0x30
cmpsb byte [esi], byte es:[edi]
sal dword [eax], 0x87
lodsb al, byte [esi]
sub eax, 0xf037c4bd
mov esi, 0x46cbac3e
test byte [edi + 0x648d8116], 0x24
or byte [edi], cl
test byte [ecx - 0x7f00000a], bh
stc
cmp eax, 0xfffed7e8
dec dword [ebp + reloc.SHELL32.dll_ShellExecuteW]
lodsb al, byte ds:[esi]
retf
lea esp, [esp + 8]
je 0x5baaab
cmp cl, 0x3d
call 0x5bb2d1
lea esp, [esp + 4]
pop eax
jmp 0x5babc3
cmp al, 0x39
ja 0x5baf32
movzx eax, al
call fcn.005bab95
in eax, dx
imul edi, ecx, 0xdde6b98
mov bl, byte [eax]
jg 0x5bb3c0
xor al, 0xab
ret 0x8d7d
lea esp, [esp + 0x20]
jb 0x586dcf
cmp bl, 0x39
jmp 0x5bb2ae
lea esp, [esp + 0x10]
cmp bl, 0x2b
jmp 0x5bb49e
jne 0x5babf1
je 0x5bb4ab
outsb dx, byte [esi]
in eax, 0x75
sbb al, 0xef
pop esp
cwde
push ss
test bl, ah
push ds
lodsb al, byte [esi]
pop es
scasb al, byte es:[edi]
jne 0x5bac21
push 0x3e
jmp 0x5bac07
push 0x3f
jmp 0x5bac07
jne 0x5bac70
push 0x3e
jmp 0x5bacc4
lea esp, [esp + 4]
jne 0x5bacae
call fcn.005bb515
lodsb al, byte [esi]
cmp al, 0xd2
mov ch, 0x44
sti
lcall 0x28cb, 0xbf89909
dec ebx
add esi, 4
jmp 0x5bac37
ja 0x5bacfa
call fcn.005bb5c6
mul byte [eax - 0xa]
xchg ecx, eax
pushal
ficomp word [0xf1467f6c]
movzx edx, dl
jmp 0x5bb550
push di
lea esp, [esp + 2]
add edx, 4
jmp 0x5bad3e
mov edx, dword [ebp - 8]
jmp 0x5bb5a9
sub edx, 0x47
jmp 0x5bad3e
lea esp, [esp + 4]
jmp 0x5bad3e
pop edx
jmp 0x5bad3e
add ecx, 4
jmp 0x5bada2
cmp cl, 0x39
ja 0x5bae0e
movzx ecx, cl
jmp 0x5bb66d
lea edi, [edi - 8]
mov ecx, dword [edi]
pop edi
jmp 0x5bada2
jb 0x5badd0
clc
jmp 0x5bb78e
pop esi
pushal
lea esp, [esp + 0x20]
cmp edi, 2
jmp 0x5bb72f
or eax, esi
mov esi, ebx
shl eax, 0xc
jmp 0x5bb745
jne 0x5baee1
push di
lea esp, [esp + 2]
or eax, ecx
jmp 0x5baee1
shl edx, 6
or eax, edx
jmp 0x5badd0
mov ecx, dword [ebx]
pop ebx
mov dx, 0x4b11
push edx
clc
jmp 0x5bb7cc
push ebx
mov ebx, ebp
lea ebx, [ebx + 8]
jmp 0x5bb798
push dword [esp + 0xf]
lea esp, [esp + 1]
jmp 0x5bb7d7
mov edx, eax
shr edx, 0x10
pushfd
sub esp, 0x1d
jmp 0x5bb7b6
lea esp, [esp + 0x28]
mov byte [ecx], dl
cmp edi, 2
jmp 0x5bb81a
jb 0x5bae71
xchg dl, dh
bsr dx, cx
pushal
lea edx, [ecx + esi]
mov byte [edx + 3], 0x3d
jmp 0x5bb925
lea esp, [esp + 4]
jbe 0x586d93
ja 0x586d7d
or eax, edx
jmp 0x5bb9f1
lea esp, [esp + 0x20]
cmp dword [ebp + 0xc], 3
jmp 0x5bba3c
lea esp, [esp + 0x2c]
jmp 0x586e6e
lea esp, [esp + 2]
movzx ecx, byte [ecx + 2]
push ebx
push dword [esp + 3]
jmp 0x5bba64
jne 0x586e1c
stc
pushfd
mov word [esp + 1], ax
add esp, 2
jmp 0x5bba18
mov dh, 0xb
mov cx, bx
jmp 0x5bbae5
or eax, ecx
lea esp, [esp + 8]
jmp 0x586e1c
xor dx, dx
neg dh
mov esi, eax
lea edx, [edx*4]
jmp 0x5bbac3
clc
mov ecx, eax
mov dx, word [esp]
push 0x3f
jmp 0x5bba96
shr ecx, 0x12
dec dl
mov edx, esi
pop edx
jmp 0x5bbb07
cmc
cmp dword [ebp + 0xc], 2
jmp 0x5bbaf1
push esi
mov ecx, edx
push edi
lea esi, reloc.SHELL32.dll_ShellExecuteW
jmp 0x5bbab8
jb 0x586e06
jae 0x5bbb2d
push ebx
int 0x5d
and al, 0xd7
ret
shr esi, 0xc
and ecx, edx
and esi, edx
jmp 0x5bbacd
and edi, edx
lea esp, [esp + 0x20]
jmp 0x586e48
mov edi, eax
shr edi, 6
pushal
jmp 0x5bbb10
mov ecx, ebp
lea ecx, [ecx + 0xc]
mov edi, dword [ecx]
pop ecx
jmp 0x586e48
mov bl, 0xc8
and eax, edx
bswap ebx
mov ebx, 0x3784f6e
jmp 0x5bbd8a
mov ebx, eax
jmp 0x586eed
jne 0x5bb897
clc
call fcn.005bbeb9
fist word [edi - 0x39]
mov byte [0xe54aed51], al
adc al, 0x87
mov word [esp], sp
lea esp, [esp + 4]
mov byte [edx + 2], 0x3d
jmp 0x5bab3b
push 0x9ff2c561
call fcn.0059b62a
xchg cx, ax
adc byte [ebx + 0xe6b87df], dl
unpckhps xmm2, xmm5
sub al, dh
dec ebp
test bh, ah
sub al, 3
cmp al, 0xe8
cwde
or eax, 0xa50afabf
aam 0x47
adc al, 0x37
call 0xfb1fb86d
or ah, byte [ebp + 0x371447d4]
pop ebp
add ebx, dword [esi]
loop 0x60ab08
aad 0xdb
dec ecx
jg 0x60ab25
mov bh, 0x43
mov eax, dword [reloc.SHELL32.dll_ShellExecuteW]
pop es
leave
outsb dx, byte [esi]
mov eax, dword [reloc.SHELL32.dll_ShellExecuteW]
adc dl, byte [esi - 0x5d39ed3e]
xlatb
jl 0x60ab02
add byte [eax + 0x51d016f8], 0x61
push ecx
popal
invalid
int1
stc
outsb dx, byte [esi]
js 0x60aad0
out 0xb8, eax
ror dword [ecx + reloc.SHELL32.dll_ShellExecuteW], 0x70
inc esp
sbb bl, byte [edx + 0x3b]
cmp byte [esi], cl
fcomi st(4)
out dx, al
stc
fdivr dword [eax + eax*2 + 0xa513f0d]
retf 0x3b1d
push ecx
or cl, dl
sbb eax, 0x123bd13b
lea ebx, [ecx + ebp]
lodsd eax, dword [esi]
or eax, 0x5494513f
cmpsd dword [esi], dword es:[edi]
loop 0x60aba7
arpl word [esi], ax
cmc
jbe 0x60aba1
mov al, byte [0x99d6deab]
movsb byte es:[edi], byte [esi]
mov al, byte [0xbf272f89]
enter 0xffffffffffffd039, 0x33
jae 0x60abb1
inc ebx
jecxz 0x60ab6e
jne 0x60abba
sub eax, 0xdea9881a
into
mov fs, ecx
bound esp, qword [eax]
dec ecx
retf 0xbda4
jns 0x60ab9c
scasb al, byte es:[edi]
xchg dword cs:[ebx - 0x59], ebp
xchg edi, eax
dec cl
push 0x33219d28
push 0x1339171f
mov dword [edi], ecx
lahf
cli
or dword [edi - reloc.SHELL32.dll_ShellExecuteW], esp
xchg byte [ecx], dh
stc
iretd
sbb dh, byte [edi + 0x4e8c2a96]
dec esi
hlt
clc
jmp 0x60aba1
dec byte [0xa6be5a97]
push ds
ret
dec esi
int 0x31
cmp al, 0x42
je 0x60ac2f
lea ebp, [edx]
fld qword [edx - 0x20f476ab]
adc ebp, dword [ebp - 0xa]
jne 0x60ac31
imul edi, ebx, 0x2b6f6891
xor dword [ebx + 0x45], 0x37
invalid
out 0xe, eax
cdq
clc
fist dword [ebx + 0xc]
sbb dl, bl
add cl, ch
mov edx, ds
ret
push 0x7d68700c
call fcn.00598dc6
in eax, dx
cld
iretd