Function at 0x10142bf0
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1021917e
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push esi
push edi
mov eax, dword [0x10282800]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0xc]
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
mov edi, dword [ebp + 8]
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
xor esi, esi
mov dword [ebp - 4], 0
cmp dword [eax + 0x14], 0xf
mov ecx, eax
mov dword [ebp - 0x28], 1
lea edx, [esi - 6]
jbe 0x10142c6e
mov ecx, dword [eax]
mov dword [ebp - 0x10], ecx
mov dword [ebp + 0xc], ecx
jmp 0x10142c74
mov dword [ebp - 0x10], eax
mov dword [ebp + 0xc], eax
mov eax, dword [eax + 0x10]
add eax, dword [ebp + 0xc]
mov dword [ebp - 0x24], eax
cmp ecx, eax
je 0x10142f07
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x24]
nop dword [eax + eax]
movzx eax, byte [eax]
shl esi, 8
add esi, eax
add edx, 8
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x20], edx
js 0x10142dd4
mov ecx, edx
mov eax, esi
mov esi, dword [edi + 0x10]
mov edx, dword [edi + 0x14]
sar eax, cl
and eax, 0x3f
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x18], edx
mov cl, byte [eax + 0x1021fb38]
mov byte [ebp + 0xf], cl
cmp esi, edx
jae 0x10142ce5
lea eax, [esi + 1]
mov dword [edi + 0x10], eax
mov eax, edi
cmp edx, 0xf
jbe 0x10142cd8
mov eax, dword [edi]
mov byte [eax + esi], cl
mov byte [eax + esi + 1], 0
jmp 0x10142dbf
mov eax, closesocket
sub eax, esi
cmp eax, 1
jb 0x1014302d
lea ecx, [esi + 1]
or ecx, 0xf
cmp ecx, 0x7fffffff
jbe 0x10142d0a
mov ecx, closesocket
jmp 0x10142d2e
mov eax, edx
shr eax, 1
mov dword [ebp - 0x14], eax
mov eax, closesocket
sub eax, dword [ebp - 0x14]
cmp edx, eax
jbe 0x10142d24
mov ecx, closesocket
jmp 0x10142d2e
mov eax, dword [ebp - 0x14]
add eax, edx
cmp ecx, eax
cmovb ecx, eax
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], ecx
push eax
push edi
call fcn.100ce050
mov ecx, eax
add esp, 8
cmp dword [ebp - 0x18], 0xf
lea eax, [esi + 1]
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0x14]
mov dword [edi + 0x14], eax
lea eax, [ecx + esi]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x14], eax
jbe 0x10142da3
push dword [ebp - 0x2c]
mov esi, dword [edi]
push esi
push ecx
call fcn.101e55c0
mov eax, dword [ebp - 0x14]
add esp, 0xc
mov cl, byte [ebp + 0xf]
mov byte [eax], cl
mov byte [eax + 1], 0
mov eax, dword [ebp - 0x18]
inc eax
cmp eax, 0x1000
jb 0x10142d97
mov ecx, dword [esi - 4]
add eax, 0x23
sub esi, ecx
add esi, 0xfffffffc
cmp esi, 0x1f
ja 0x10143032
mov esi, ecx
push eax
push esi
call fcn.101e3768
add esp, 8
jmp 0x10142dba
push esi
push edi
push ecx
call fcn.101e55c0
mov eax, dword [ebp - 0x14]
add esp, 0xc
mov cl, byte [ebp + 0xf]
mov byte [eax], cl
mov byte [eax + 1], 0
mov eax, dword [ebp - 0x1c]
mov dword [edi], eax
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x30]
sub edx, 6
mov dword [ebp - 0x20], edx
jns 0x10142ca7
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp eax, ecx
jne 0x10142c90
cmp edx, 0xfffffffa
jle 0x10142f07
shl esi, 8
lea ecx, [edx + 8]
mov edx, dword [edi + 0x14]
sar esi, cl
and esi, 0x3f
mov dword [ebp - 0x20], edx
mov cl, byte [esi + 0x1021fb38]
mov esi, dword [edi + 0x10]
mov byte [ebp + 0xf], cl
mov dword [ebp - 0x30], esi
cmp esi, edx
jae 0x10142e2c
lea eax, [esi + 1]
mov dword [edi + 0x10], eax
mov eax, edi
cmp edx, 0xf
jbe 0x10142e1f
mov eax, dword [edi]
mov byte [eax + esi], cl
mov byte [eax + esi + 1], 0
jmp 0x10142f07
mov eax, closesocket
sub eax, esi
cmp eax, 1
jb 0x1014302d
lea ecx, [esi + 1]
or ecx, 0xf
cmp ecx, 0x7fffffff
jbe 0x10142e51
mov ecx, closesocket
jmp 0x10142e75
mov eax, edx
shr eax, 1
mov dword [ebp - 0x24], eax
mov eax, closesocket
sub eax, dword [ebp - 0x24]
cmp edx, eax
jbe 0x10142e6b
mov ecx, closesocket
jmp 0x10142e75
mov eax, dword [ebp - 0x24]
add eax, edx
cmp ecx, eax
cmovb ecx, eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], ecx
push eax
push edi
call fcn.100ce050
mov ecx, eax
add esp, 8
cmp dword [ebp - 0x20], 0xf
lea eax, [esi + 1]
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0x24]
mov dword [edi + 0x14], eax
lea eax, [ecx + esi]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x24], eax
jbe 0x10142eeb
push dword [ebp - 0x30]
mov esi, dword [edi]
push esi
push ecx
call fcn.101e55c0
mov eax, dword [ebp - 0x24]
add esp, 0xc
mov cl, byte [ebp + 0xf]
mov byte [eax], cl
mov ecx, dword [ebp - 0x20]
inc ecx
mov byte [eax + 1], 0
cmp ecx, 0x1000
jb 0x10142edf
mov edx, dword [esi - 4]
add ecx, 0x23
sub esi, edx
lea eax, [esi - 4]
cmp eax, 0x1f
ja 0x10143032
mov esi, edx
push ecx
push esi
call fcn.101e3768
add esp, 8
jmp 0x10142f02
push esi
push edi
push ecx
call fcn.101e55c0
mov eax, dword [ebp - 0x24]
add esp, 0xc
mov cl, byte [ebp + 0xf]
mov byte [eax], cl
mov byte [eax + 1], 0
mov eax, dword [ebp - 0x1c]
mov dword [edi], eax
mov ecx, dword [edi + 0x10]
test cl, 3
je 0x1014301a
mov edx, ecx
mov dword [ebp - 0x20], edx
mov esi, dword [edi + 0x14]
mov dword [ebp - 0x2c], esi
cmp ecx, esi
jae 0x10142f3c
lea eax, [ecx + 1]
mov dword [edi + 0x10], eax
mov eax, edi
cmp esi, 0xf
jbe 0x10142f31
mov eax, dword [edi]
mov word [eax + ecx], 0x3d
jmp 0x10143009
mov eax, closesocket
sub eax, edx
cmp eax, 1
jb 0x1014302d
lea eax, [edx + 1]
mov ecx, eax
mov dword [ebp - 0x30], eax
or ecx, 0xf
cmp ecx, 0x7fffffff
jbe 0x10142f66
mov ecx, closesocket
jmp 0x10142f84
mov edx, esi
mov eax, closesocket
shr edx, 1
sub eax, edx
cmp esi, eax
jbe 0x10142f7c
mov ecx, closesocket
jmp 0x10142f84
lea eax, [esi + edx]
cmp ecx, eax
cmovb ecx, eax
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], ecx
push eax
push edi
call fcn.100ce050
mov ecx, dword [ebp - 0x20]
mov edx, eax
mov eax, dword [ebp - 0x30]
add esp, 8
mov dword [edi + 0x10], eax
mov eax, dword [ebp + 0xc]
mov dword [edi + 0x14], eax
lea eax, [edx + ecx]
mov dword [ebp - 0x24], edx
mov dword [ebp + 0xc], eax
push ecx
cmp esi, 0xf
jbe 0x10142ff2
mov esi, dword [edi]
push esi
push edx
call fcn.101e55c0
mov eax, dword [ebp + 0xc]
add esp, 0xc
mov ecx, dword [ebp - 0x2c]
inc ecx
mov word [eax], 0x3d
cmp ecx, 0x1000
jb 0x10142fe6
mov edx, dword [esi - 4]
add ecx, 0x23
sub esi, edx
lea eax, [esi - 4]
cmp eax, 0x1f
ja 0x10143032
mov esi, edx
push ecx
push esi
call fcn.101e3768
add esp, 8
jmp 0x10143004
push edi
push edx
call fcn.101e55c0
mov eax, dword [ebp + 0xc]
add esp, 0xc
mov word [eax], 0x3d
mov eax, dword [ebp - 0x24]
mov dword [edi], eax
mov ecx, dword [edi + 0x10]
mov edx, ecx
mov dword [ebp - 0x20], ecx
test cl, 3
jne 0x10142f18
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call fcn.100de3b0
call fcn.101e90af
int3