Function at 0xfe0852
Capabilities:
Encode data using base64
Execute anti-debugging instructions

Disassembly:
mov dl, byte [edi + 4]
add edi, 6
neg ax
mov byte ss:[ecx], dl
movzx edx, al
jb 0xf439ac
mov ecx, dword [edi]
mov edx, 0x2021c097
lea edi, [edi + edx*2 - 0x4043812a]
lea eax, [edx + edx*4 + 0xcac1c07]
mul eax
xor ecx, ebx
add edx, eax
not dl
rol ecx, 2
neg ecx
sub dl, dl
call fcn.00dbd093
lea esi, [edx + esi - 0x5c83d096]
movzx edx, byte [esi + edx - 0x5c83d095]
mov eax, 0x28c8927
xor dl, bl
lea ecx, [eax + 0x579f2098]
bt cx, ax
rol dl, 1
shr al, 0xe5
shr eax, 0x68
jne 0xebbac5
cdq
jmp 0xdf6f03
ror edx, 1
inc cl
not edx
sar eax, 0x51
lea ecx, [ecx + 0x33b43635]
bt eax, ecx
rol edx, 1
shl cl, 0x87
jp 0xfdbc07
xor ebx, edx
add esi, edx
xchg ecx, eax
shl cl, 0xc7
movzx edx, cl
jb fcn.017f4682
mov edx, 0x5c83d895
btc dx, 0xab
jb 0xea6250
mul eax
jmp ebp
mov ecx, 0xa5177900
xor eax, ebx
mov edx, ecx
sal cl, 0x46
setne dl
inc eax
sal ecx, 0x3b
bswap edx
rol dl, 0xc6
neg eax
ror dx, 0xc6
ror eax, 2
add edx, edx
sbb eax, 0xef07781a
bswap eax
ror eax, 1
sar edx, 0x83
shr ecx, 0x1a
bts ecx, 0x3e
xor ebx, eax
lea edx, [ecx*2 - 0x3fd57e6e]
add ebp, eax
btc dx, 0x90
inc ecx
add ecx, 0xad1c61a4
rdtsc
sbb edi, 8
bswap ecx
and cx, cx
jae 0x1a54965
mov edx, 0x378ae1a2
lea esi, [esi + edx*2 - 0x6f15c348]
mov ecx, dword [esi + edx*2 - 0x6f15c344]
xor ecx, ebx
call fcn.00ef2010
mov edx, 0xcfb9c300
mov ecx, edx
mov edx, dword [esi]
mov eax, dword [esi + 4]
shr ecx, 5
sal cx, 0x25
rol ecx, 0x1f
mov cl, byte [ecx + esi - 0x33ee178]
call fcn.017de7d3
sub edx, ecx
mov dword [esp], 0x4a14c423
mov esp, edx
call fcn.01984368
mov edx, 0xc0270812
movzx ecx, dl
lea esi, [ecx + esi - 0x14]
movzx edx, word [esi + ecx*4 - 0x48]
xor dx, bx
inc dx
neg dx
imul cx, cx
inc cx
movsx eax, cx
ror dx, 1
xor dx, 0x862f
not eax
bt ecx, 0x9a
not dx
ror ecx, 0x44
ror ecx, cl
inc cx
xor bx, dx
push ecx
lea edi, [edi + ecx*2 - 0x28a04]
and byte [esp + ecx - 0x144ff], ch
ror cx, 0xa9
imul eax, eax
mov word [edi + ecx - 0x180a2], dx
bts eax, eax
cmovae cx, ax
lea esi, [ecx + esi - 0x19f38]
rol cl, 0x65
mov edx, dword [esi + ecx - 0x19f86]
xor edx, ebx
add ax, ax
rol eax, 0x5a
sal ax, 0x25
ror edx, 1
xadd cx, ax
or dword [esp + ecx*8 - 0x9f530], ecx
xchg byte [esp + ecx*8 - 0x9f52e], ch
neg edx
sar word [esp + ecx - 0x101a6], cl
inc edx
bswap edx
bswap eax
xchg ecx, eax
ror edx, 3
add eax, ecx
sbb edx, 0xda074b38
xor ebx, edx
neg eax
add ebp, edx
sar word [esp + eax - 0x795ffdb9], 0x4f
jp 0x1a4b660
mov dx, word [ebp]
mov ecx, 0xe20d258b
ror ecx, cl
movsx eax, cl
mov cl, byte [ebp + 2]
adc ebp, 1
add al, ah
rol eax, 0xb6
sal dx, cl
mov word [ebp], dx
lea ecx, [eax + 0x219363a9]
bt eax, 0x21
bts cx, cx
mov eax, dword [edi + ecx*4 - 0x2a4d8ea0]
movzx edx, cx
lea edi, [edi + ecx*8 - 0x549b1d3c]
sub cx, dx
adc ecx, ecx
xor eax, ebx
dec edx
xor eax, 0xb7266f10
rol eax, 1
lea eax, [eax + ecx*2 + 0x25e660b2]
call fcn.00fe1db0
neg edx
or ecx, 0x6527bb35
jnp 0xf17329
mov eax, 0x22bc890d
push eax
movzx cx, byte [eax + edx - 0x22bc890d]
mov edx, eax
lea ebp, [ebp + eax - 0x22bc890b]
mul byte [esp + edx*2 - 0x45791219]
call fcn.00ed86d1
call fcn.00e4d1dd
pop ecx
jns fcn.00e6e49e
jmp 0xf5787f
mov dword [edi + 4], eax
setne cl
imul cx, cx
mov eax, 0x86b14501
mov dword [edi], edx
mov edx, eax
sal eax, cl
jle fcn.00e6e49e
mov edx, 0x7b3a45be
movzx ecx, byte [edi + edx - 0x7b3a45be]
lea edi, [edx + edi - 0x7b3a45bd]
movzx eax, dx
xor cl, bl
imul edx, eax
lea edx, [eax - 0x6654d9ef]
sbb dx, ax
dec cl
sal dl, 0x81
not cl
btr dx, 0xab
cbw
adc edx, edx
adc cl, 0xa1
ror edx, 0xcb
add dx, 0x86af
neg cl
xor bl, cl
sar dx, 0xaa
lea ebp, [ebp + eax*2 - 0x1ff7e]
not al
mov word [ebp + eax*2 - 0x1fe82], cx
mov edx, dword [edi + eax*4 - 0x3fd04]
sbb ax, 0xa8b6
movzx ecx, al
lea edi, [edi + eax*4 - 0x15a28]
sbb ecx, eax
xor edx, ebx
lea ecx, [ecx - 0x2af05c44]
xchg ecx, eax
jmp 0x1810708