Function at 0x17c2318
Capabilities:
Encode data using base64

Disassembly:
lea esi, [esi + ecx*2 + 4]
not eax
shr eax, 0xb8
call fcn.01799046
not dl
sal word [esp + ecx*4 - 0x14076], 0xee
add ecx, dword [esp + ecx - 0x501e]
rol dl, 1
rol cl, 0x83
call fcn.0181345d
sub edx, edx
lea edi, [edx + edi - 4]
mov ecx, dword [edx + edi]
sal dl, 0x67
xor ecx, ebx
sub dl, dh
sub eax, 0x438a11b5
xor ecx, 0xc3b2ce8b
sal al, 2
dec ecx
not edx
add eax, edx
rol ecx, 3
xor ecx, 0xc104d903
shl dx, 0xad
ror ecx, 3
add ecx, 0xfa756a2
ror eax, 0x68
rol ax, 0x81
sub al, dl
xor ebx, ecx
add ebp, ecx
rol eax, 0x4d
jmp ebp
xor cl, 0xbf
add edx, 0x7f032c07
xor bl, cl
sar ax, 0xc6
mov dword [esp + edx*2 - 0x3325d450], edx
sal dl, 0xa6
lea ecx, [esp + ecx + 8]
push edx
shl eax, 0x74
inc byte [esp + edx - 0x1992e9fd]
mov dx, word [ecx + edx*4 - 0x664ba800]
js 0x18153d0
push eax
sal byte [esp + eax - 0x157ffff3], 1
lea esi, [esi + eax - 0x15800002]
setl al
mov word [esi + eax - 0x15800000], dx
lea edi, [eax + edi - 0x15800004]
mov edx, dword [edi + eax*2 - 0x2b000000]
movsx ecx, ax
xor edx, ebx
ror edx, 1
inc edx
neg ax
not edx
sar cx, 0x8d
shr dword [esp + eax*2 - 0x2affffff], 0x90
neg edx
sal cx, 0xcc
not edx
rol edx, 1
sal eax, 0xb6
dec al
adc edx, 0xdcb67594
add ecx, eax
rol edx, 2
jmp 0x1860f84
rol cx, 0x63
mov dword [esp], ecx
mov eax, dword [edi]
movsx edx, cx
mov dword [esp + 4], ecx
xor eax, ebx
ror eax, 1
xadd word [esp + 1], cx
xor eax, 0x8313a73f
not dl
ror eax, 2
add dword [esp + 4], ecx
call fcn.0183d9e2
mov eax, 0x983f108e
mov eax, dword [esi]
add esi, 4
push 0xa493cd0e
mov edx, 0x249b4383
sar dword [esp + edx - 0x249b4383], 0x22
xor eax, ebx
mov ecx, 0xf59fbbb3
dec dword [esp + edx - 0x249b4383]
pop ecx
xor eax, 0x7ab8df05
lea eax, [eax + ecx*8 - 0x38d01fbc]
not dl
ror eax, 3
neg eax
xor ecx, edx
jns 0x178cc20
setae cl
xor ebx, eax
shr dx, cl
adc edi, eax
mov ax, word [ebp + edx - 0x249b21be]
xor ecx, ecx
lea ebp, [ebp + edx*2 - 0x4936437a]
xor cl, byte [esi + edx*2 - 0x4936437c]
not dl
neg dl
and edx, edx
lea esi, [esi + edx*2 - 0x4936437d]
setnp dl
xor dx, dx
shr edx, 0x32
xor cl, bl
sub cl, 0xbd
shl dl, 0xa1
sub dl, 0x22
sal dx, 0x4d
neg cl
rol cl, 1
dec cl
sar dl, 0xa2
shr edx, 0x3e
call fcn.017e66e1
mov ecx, 0x7035ca26
sub ecx, ecx
sal cx, 0x68
mov edx, dword [ecx + esi]
lea eax, [ecx*4 + 0x23b82498]
jae 0x177b3b1
mov cl, byte [ebp + 8]
add ebp, 6
shl dword [esp + 8], 0xef
shrd edx, eax, cl
mov dword [ebp], edx
mov eax, dword [esp + 7]
mov ecx, 0xd1845c8c
call fcn.017e9ea0
mov ecx, 0x349e5f3e
lea esi, [esi + ecx*2 - 0x693cbe80]
mov edx, ecx
mov ecx, dword [esi + ecx - 0x349e5f3e]
lea edx, [edx + edx*4 - 0x6d42b772]
movsx eax, dl
xor ecx, ebx
not eax
shr eax, 0xa7
ror ecx, 1
dec eax
sub ecx, 0x9e99d5a9
xadd edx, eax
jge 0x17c4659
ror ecx, 1
xor edx, eax
adc edx, eax
dec ecx
shr eax, 0xa1
not ecx
call fcn.0184901e
mov edx, 0xbe01d52d
mov eax, dword [esi]
add esi, 4
jmp 0x17bb2ca
mov ax, word [eax + esi - 0x13d75962]
mov edx, 0xaaaa3993
inc dx
dec dx
adc esi, 2
add cx, ax
movzx eax, dx
and eax, edx
mov word [esi + eax*2 - 0x7326], cx
jg 0x17a8faf
xor ebx, edx
add ebp, edx
and ecx, ecx
jg 0x17a4a5f
adc ecx, 0x361224
not dl
xor ebx, ecx
not dword [esp + 7]
movsx eax, dl
add edx, dword [esp + eax - 0x43]
add edi, ecx
mov edx, dword [ebp + eax*4 - 0x120]
mov eax, dword [eax + ebp - 0x44]
mov ecx, 0xb611529e
jmp 0x17ed34d