Function at 0x10046f2b
Capabilities:
Encode data using base64

Disassembly:
pushfd
test byte [0x10046dfa], 0x74
je 0x10046dfb
dec edi
test al, 0xea
xor dword [eax + 0x22], esp
in eax, 0x97
inc esi
pop esp
mov edi, 0x33afe218
xor byte [ecx + 0x75], 0x97
cmc
mov ecx, 0xb9323d0e
popf
stosd dword es:[edi], eax
pop esi
in al, 0xb7
pop ss
std
dec ebp
loop 0x10046de0
inc ebx
xor byte [eax], ah
adc dword [esi], edi
lea ecx, [ebp + ebp*2 + 0x753d00d8]
je 0x10046df1
mov word [ebp - 0x28], gs
add byte [0x1af87475], bh
add byte [ebp - 0x7c1374ab], bl
in al, dx
adc al, 0x9c
sbb al, byte [eax]
popfd
push ebp
mov ebp, esp
sub esp, 0x14
pushfd
test byte [0x10046e2a], 0xf1
jne 0x10046f2b
adc ecx, dword gs:[esi]
adc ecx, dword [esi]
das
xor byte [eax], ah
dec ecx
xchg byte [ebp + 0xed33b46], dh
jno 0x10046e65
jl 0x10046e6c
mov eax, 0x4890570d
mov dword [0xc9913780], eax
push ecx
pop esp
inc ecx
into
jbe 0x10046e5c
je 0x10046de3
inc eax
push eax
xor eax, 0x3f8d51a
cdq
and dword [edi], eax
mov bh, 0xf8
inc eax
adc cl, byte [ebx - 0xc]
push es
dec eax
test dword [edi + 0x5dc1ef30], ebx
mov esp, 0xcf7891bf
cmp eax, 0x2580dd08
mov ah, 0xe6
sub byte [ecx + 0x65], bl
int 0xf7
js 0x10046dee
sub dword [ebx - 0x5d], 0x5d208c65
stosd dword es:[edi], eax
mov ch, 0xc6
add al, 0xac
out dx, al
jnp 0x10046e11
movsb byte es:[edi], byte [esi]
lodsb al, byte [esi]
mov dword [0x2d99a7eb], eax
mov eax, dword [edi + edx*4]
dec esp
inc esp
pop edx
outsd dx, dword [esi]
jno 0x10046ecb
cmc
push ds
mov al, byte [esi - 0x104141d]
aas
and dword [ecx + ebx*2 + 0x4488f09], edx
xor dword [edx], eax
std
imul eax, dword [ebp - 0x55], 0xd3547c58
stc
pop eax
jl 0x10046ee9
sar ecx, cl
daa
lahf
loopne 0x10046eca
or byte [0x29db4066], ch
mov dword [0x290a5e76], eax
push ebx
lodsb al, byte [esi]
aad 0x5a
imul ebp, dword [edx - 0x71], 0xdf551f50
sbb bl, byte [esi + eax + 0x727ab339]
jp 0x10046f2a
stc
mov edi, 0x6cb9188f
add dword [esi], ebp
dec bh
lds edi, [ebx + 8]
push eax
adc ch, ah
push eax
ja 0x10046ec5
cli
aaa
mov bl, 0xfc
pop ecx
cld
and byte [0x2c554a5], ch
inc ebx
pop ss
imul esi, edi, 0x536e9984
out 0xe1, eax
cmc
pop eax
pop ebp
mov ebp, 0x89ced50f
aas
test dword [ecx + ebx*4 - 0x1e18ac92], 0xbd5d58f5
pmullw mm1, mm6
mov dword [edi], edi
push ebx
xor byte [esi], bh
push 0xffffffffffffffdc
lahf
ror ebx, cl
arpl word [edx + esi + 0x64f79d4b], sp
out dx, al
cli
loopne 0x10046e92
xor byte [eax + 0x771d6f67], dh
jnp 0x10046eb6
add ecx, 0x15cfe98f
sal byte [edx], cl
and dword [edi + ebx*2], eax
neg byte [0xc1ae82e2]
fbld tbyte [esp + eax*8 - 0x7c08888a]
das
xchg edx, eax
stc
mov ch, 0xa9
cmp dword [esi*8 + 0x4e604e6c], esi
push 3
add ebx, dword [ebp + 0x170c30a1]
adc byte [ebx], dh
lds ecx, [ecx - 0x74a903bb]
jne 0x10046f42
popfd
mov eax, dword [0x10170c30]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [ebp + 8]
push 0x10
lea eax, [ebp - 0x14]
pushfd
test byte [0x10046f8f], 0xea
jne 0x10046f90
invalid
sub ch, byte [esi - 0x65]
mov al, byte ss:[0x96d7c834]
add byte [ecx], bl
loopne 0x10046ed9
test byte [eax + 0x7c], ch
sbb byte [edi + 0x4266c0da], cl
pop ebp
mov ah, 0x3d
popal
shl byte [ecx], 0x8a
and ecx, dword [edi + 0x61]
mov eax, dword [0x92b5e245]
mov ecx, 0x2becbb7e
push eax
dec ebp
lodsb al, byte [esi]
lodsb al, byte [esi]
mov ecx, gs
push cs
or byte [ebp + 0x51], cl
mov ebx, 0x64fa84f
loop 0x10046f29
adc edi, edx
xchg edx, eax
outsb dx, byte [esi]
mov eax, 0x188dadc
jge 0x10046f96
popfd
push 0
push eax
call fcn.1011df60
push 0x10
lea eax, [ebp - 0x14]
outsd dx, dword [esi]
or eax, 0x8d106a00
inc ebp
in al, dx
push eax
pushfd
test byte [0x10047051], 0xa2
jne 0x10047052
imul esi, dword [0xe9b32282], 0xb752f674
test eax, 0x6277bb8
rcr dword [edx + 0x4c8d591f], 1
inc eax
stosd dword es:[edi], eax
adc edx, dword [ecx - 0x49]
add dword [ebx + ebx*4 + 0x79], edx
add eax, 0xf88ce70f
loop 0x10046fc2
inc esp
imul ebx, ebp, 0xffffffe5
xor ecx, dword [ebx]
lodsb al, byte [esi]
mov esp, dword [edi]
stosb byte es:[edi], al
xchg ebp, eax
cmp eax, 0x3439e535
xor ebx, dword [edx + edx*8 + 0x12]
adc edi, dword [esi - 0x74659cb3]
xor dword [ecx], ecx
mov dh, 0x63
leave
shl byte [eax], 0x28
pop esi
shr dword [edi - 0xcc8fd82], cl
or ebx, eax
add dl, bl
mov bl, 0x1f
fild qword [eax]
xchg ebp, eax
mov edx, 0x9a7094c8
stosd dword es:[edi], eax
sub dl, ch
lea eax, [ebp - 0x50]
sub al, al
rcl dword [ecx], 0x49
dec esp
popal
xor byte [0xc4561cb8], ah
int1
mov byte [ebx - 3], cl
add byte cs:[ecx + 0x21aa3cc], bh
fld xword [ebp + 0x10c042bb]
sbb eax, 0x8ce3836c
jno 0x1004703f
cmp eax, 0x9c047cee
push edi
mov byte [edx - 0x1c], bl
les esi, [eax - 0x41]
in al, 0xc4
jo 0x10047002
in al, 0xe7
xlatb
aas
xor al, 0xa6
xchg edx, eax
add edx, dword [0x7f5fe07e]
scasd eax, dword es:[edi]
popfd
push esi
call fcn.1011c1e1
mov ecx, dword [ebp - 4]
add esp, 0x18
neg eax
sbb eax, eax
xor ecx, ebp
inc eax
pop esi
call fcn.1011e48a
pushfd
test byte [0x100470f4], 0xf3
jne 0x100470f5
add al, 0x10
jne 0x100470f5
pop ebx
nop
xchg esi, eax
loop 0x10047071
or eax, 0xd352126f
jnp 0x100470ba
push esp
dec esp
sar byte [ebp - 0x7a], 1
fsubr dword [edi - 0x40]
and byte [eax], bh
or byte [ebx - 0x58], ch
scasb al, byte es:[edi]
mov es, word [eax - 0x2942fd5c]
push ss
sub ebp, dword [ebp + 0x5c]
xchg ebp, eax
inc ebp
pushal
push ebp
loop 0x1004704b
sbb eax, 0x1cd96870
xchg ebp, eax
or eax, 0x40570d95
clc
add al, 0x21
jecxz 0x1004708a
jno 0x10047119
loop 0x100470cf
sbb ecx, dword [ecx + 0x1e]
dec ecx
push ds
outsd dx, dword [esi]
cmc
stosb byte es:[edi], al
or edx, eax
sti
or al, 0x8c
or bl, byte [ecx + eax]
and ebp, dword [edx - 0x32]
dec eax
dec ecx
int 0x5e
movsd dword es:[edi], dword [esi]
sub byte [edx], ah
jecxz 0x10047124
ret 0xcfb
sub eax, 0x31cbc693
add dword [eax], edx
inc ecx
in al, dx
xchg ecx, eax
mov gs, word [0x46037312]
sbb dword [edx - 0x182ed8c6], esi
push ss
jae 0x1004715d
invalid
adc byte [ebp + 0x54a4f2a5], cl
sbb byte [ebp - 0x4b], bl
mov ebx, 0xd2adae94
popfd
leave
pushfd
test byte [0x100471d8], 0xc7
jne 0x100471d9
dec ebx
mov esi, 0xc5349799
neg dword [ebp - 0x12]
inc edi
jg 0x100470b3
imul ebx, dword [esp + edx*2 - 0x44], 0xb29886d9
mov esp, 0xb29886d9
push esp
push ebp
sbb al, 0x69
aad 0x74
or ecx, dword [esi]
mov dword [edi - 0x1b1d625d], eax
popfd
loop 0x1004710b
or esp, esp
push ss
sub byte [eax], bh
pop eax
test byte [eax - 0x67], al
inc ebx
scasb al, byte es:[edi]
stosb byte es:[edi], al
inc esi
sbb al, 0x10
ja 0x10047166
cli
inc esp
div eax
jne 0x100471bb
inc edi
in eax, dx
in eax, dx
lds edx, [ebp + 0x5d]
fnstsw word [ebx + 0x764b7335]
stosb byte es:[edi], al
rcl byte [ebx + 0x15965518], 0xbb
stosb byte es:[edi], al
int 0x44
sbb byte [ebp - 0x6a], dl
adc eax, 0x44cdaabb
stosb byte es:[edi], al
inc ecx
rcl dword [esi - 0x68]
mov ebx, 0x6d4745a4
inc ebp
inc edi
insd dword es:[edi], dx
push eax
mov dword gs:[0xa498f67a], eax
movsb byte es:[edi], byte [esi]
cmp dword [edi + edx], ebx
shl dword [edi], 0x42
je 0x1004714b
rcr dword [eax + ecx*8 - 0x25d2c5d6], 1
dec edx
out dx, al
mov dword [0x47e93f2a], eax
inc edi
js 0x10047114
xchg ebp, eax
jg 0x100471f8
dec eax
inc ecx
mov ah, 0x43
push esi
sbb al, 0x59
stosb byte es:[edi], al
outsb dx, byte [esi]
insb byte es:[edi], dx
sahf
loopne 0x1004714b
add al, 0xa4
sahf
adc bh, dh
jbe 0x1004713f
nop
ror byte [ebx + 0x46], 0x87
jecxz 0x1004718b
scasd eax, dword es:[edi]
inc ebx
xor byte [esi + 0x5e769a5f], bh
xchg esp, eax
jns 0x1004717c
xchg edi, eax
dec esi
adc edi, dword [ebp + 0x11]
jbe 0x100471e3
add byte [edx + 0x24], ah
add edx, ebx
jecxz 0x1004717e
insb byte es:[edi], dx
mov dword [eax + 0x7b], ebx
pop ebp
js 0x1004714e
aaa
dec edi
jg 0x100471c4
lahf
mov bh, byte [edi]
lds ebp, [esi + 9]
rol byte [ebx + 0x4e], cl
sbb ebp, dword [edx]
lodsd eax, dword es:[esi]
inc eax
daa
salc
xlatb
fst st(3)
salc
xor al, byte [edi - 0x71]
popfd