Function at 0x1781396
Capabilities:
Encode data using base64

Disassembly:
neg ecx
shl eax, 0xfa
xor ebx, ecx
shl ax, 2
adc esi, ecx
xor ax, word [esp + eax*2 - 0x58000000]
mov dword [esp + eax*2 - 0x5801ff32], esi
ret
or dword [esp], 0x25af2ab3
mov edi, dword [edi*4 + 0x25dcee4]
shr edx, 8
xor edx, edi
inc eax
push 0xe1368cbc
xor edx, 0x373e2a84
rol word [esp], 0x21
dec ecx
lea esp, [esp + 8]
jne 0x17ecb40
mov ecx, 0x63c9980
pop edi
mov eax, 0xf68a0023
not edx
mov dword [esi], edx
movsx ecx, al
lea eax, [eax + eax*2 + 0x6b839fa9]
lea edi, [edi + ecx*2 - 0x4a]
shl ecx, cl
mov eax, dword [edi + eax - 0x4f21a012]
xor ecx, 0x179498b8
seta cl
mov edx, ecx
xor eax, ebx
imul dx, cx
ror eax, 3
rol edx, cl
sub dl, 0x8d
lea eax, [eax + ecx + 0x2d0a29a9]
not dx
jno 0x15d232a
dec ecx
js 0x15829a2
xor eax, 0x54fabf84
pop edx
das
sub dword [ecx - 0x257b6f1f], 0x4cffe1f7
mul ecx
dec dword [esp + 8]
mov ecx, 0xa8184305
setno cl
mov dword [esi], edx
btr ecx, ecx
movsx edx, byte [esp + 8]
mov dword [esi + 4], eax
setae byte [esp + 0xa]
shr dword [esp + 8], cl
xchg dword [esp + 4], edx
add edx, 0xff084793
jmp edx
leave
xchg dword [esi - 0x4f], eax
mov dh, 0x81
leave
movsb byte es:[edi], byte [esi]
invalid
shl byte [esp + 6], 0x84
mov dword [ebp - 4], eax
or dword [esp + 1], 0x659104bf
dec dword [esp]
jle 0x17ab2c0
adc esi, 1
xor cl, bl
jmp 0x16367fc
ror ecx, cl
xor eax, 0xde12511a
inc dx
dec eax
call fcn.0192bec7
nop
int3
movzx eax, word [esp + 8]
dec cl
neg cl
shr eax, 0xff
inc cl
shr byte [esp + eax*2], 0x22
ror cl, 1
xor bl, cl
not dl
xor edx, edx
mov dword [esp + edx + 8], esi
cwde
mov dword [esp + edx + 4], ebp
and byte [esp + edx + 1], 0x9e
xchg byte [esp + edx + 1], dh
mov dword [esp + edx*4], ebx
movzx ebp, dl
sub ebp, eax
add ebp, edi
mov ebx, ecx
imul eax
add edx, ebx
or al, ah
setne al
sar eax, 0xad
shl edx, 2
xor eax, 0x873c74b2
inc eax
dec eax
mov eax, ebp
push 0x3257f28
jno 0x163ebc7
jmp 0x15828d0
inc ebp
xor dl, bh
inc ecx
add ecx, esi
inc cx
rol esi, cl
dec ecx
lea ecx, [esi + edi*4 - 0x3a586a5f]
dec esp
adc edi, esp
shl dl, 0xe3
jb 0x16aecda
push eax
add esi, edx
lea edx, [ecx + 0x1bfbb6]
mov dword [esp + 8], ecx
pop eax
mov ecx, dword [ebp]
ror eax, 0x61
bts eax, eax
mov edx, dword fs:[eax + ecx - 0x7fffdb30]
mov ecx, eax
sal cl, 0x42
mov dword [ebp + ecx - 0x7fffdbc0], edx
mov dword [esp + ecx - 0x7fffdbc0], esi
ret 4
adc eax, edx
ror dword [esp], 0x16
jb 0x1779e23
div ecx
call fcn.01598283
rol ecx, 3
push eax
inc word [esp + edx]
bswap ecx
xor dword [esp + eax], 0x8084aba2
xor ebx, ecx
ror dword [esp + edx*2], 0x56
adc ebp, ecx
lea ecx, [eax + edx*8 - 0x3febc0fe]
add eax, ecx
rol ecx, cl
movzx ecx, byte [edx + esi]
lea esi, [esi + edx*2 + 1]
xor cl, bl
idiv dword [esp + edx*4]
mul edx
dec cl
mul eax
xchg dword [esp + edx - 0xacf54bc], edx
sal dl, 0x85
neg cl
bswap eax
inc cl
ror cl, 1
xor bl, cl
ror dl, 0x66
or edx, 0xe0364d20
dec byte [esp + 1]
mov dword [esp], esi
sbb eax, edx
btc edx, edx
cdq
push ebp
lea ebp, [edx*2 + 0x55338fb3]
jae 0x19121e6
dec ebx
lea edi, [eax + edi*2 - 0x13fc8051]
dec eax
bswap edi
inc ebx
movzx edx, word [esp + esi*2 - 0xc94a]
call fcn.0190f854
inc ecx
lea eax, [edx*2 + 0x6c226a94]
xor ebx, ecx
rol dword [esp + eax - 0x50ce146], 0xb
add edx, dword [esp + eax - 0x50ce146]
mov word [esp + eax*8 - 0x28670a2f], dx
add esi, ecx
movzx ax, byte [ebp + eax*4 - 0x14338518]
mov cl, byte [ebp + 2]
push edx
add ebp, 2
sar edx, 0x1b
bt dx, dx
xor dword [esp + 3], edx
adc al, cl
mov word [ebp], ax
sar dword [esp + 4], 0xcb
movzx ecx, dx
mov dword [esp + ecx*2 - 0x1ffee], esi
ret 4
bts eax, 8
xchg al, cl
xor edx, 0xd91d2d95
bt eax, ecx
call fcn.017e9663
dec ebx
mov edx, dword [edi + eax*2 + 0x262c0164]
inc cx
sub edi, eax
sbb di, di
dec edi
lea ebx, [ebx + eax + 0x131600aa]
jg 0x1683a70
dec ebx
mov dword [ebx + eax*4 + 0x4c5802c8], edx
jl fcn.0256c8bf
xor eax, 0xedaf8ca8
inc eax
shl edx, 0xf2
rol eax, 3
call fcn.018fc5a2
push esp
add esp, esp
mov al, byte [0xd2c68c5f]
jg 0x16aecc6
cli
add ah, byte [edx - 0x58]
xchg ecx, eax
pop ecx
add eax, 0x1556a582
mov ecx, 0xeea98f34
mov dword [0x6ba1a5fa], eax
mov ecx, dword [ebx - 0x40]
xlatb
pop esi
fidiv dword [eax]
retf 0x165f
inc dword [esp]
mov dword [ebp - 4], eax
shr dword [esp], 0xef
inc dword [esp]
setne byte [esp + 1]
test ebx, ebx
push 0xa32bcf2c
jmp 0x2809600
jae 0x163f263
test ebx, ebx
push 0x1999b209
call int.02598d12
dec ebp
arpl bp, bp
bts di, di
dec ecx
adc ebx, ebp
dec ecx
bts eax, 0x83
inc cx
shr ecx, 0x48
sub dx, bp
inc bp
movzx ebp, byte [ebx + edx*4 - 0x35ee4]
inc edx
mov cl, byte [edi + ebx - 0xa7ff]
dec esi
lea eax, [eax + ecx - 0x4f53e8c8]
dec edi
lea ebx, [ecx + ebx - 0x758000f6]
inc ecx
shr ch, cl
inc bp
mov dword [ebx + edx*2 - 0x1af72], ebp
jmp ebx
movzx edi, byte [eax]
push 0x1594c932
shr dword [esp], 0x1b
dec dword [esp]
xor edi, edx
sal word [esp], 0xee
shr dword [esp], 0xa5
sal byte [esp + 2], 0x27
and edi, 0xff
jmp 0x1636857
bts ax, dx
push ebx
mov ebp, edi
mov ebx, ecx
jb 0x15743d2
mov edx, ebx
jae 0x259a39e
mov dl, byte [eax + 0x5c]
sub al, 0x86
adc al, dl
mov dword [0x5353d33d], eax
and dl, dl
stosd dword es:[edi], eax
cmc
das
sub eax, 0xf3f39921
sbb ebx, 0x5b
stosd dword es:[edi], eax
out dx, al
sub al, 0xee
xchg byte [ebp - 0x6e569ed5], bh
xor al, 0x2a
cmp eax, 0xbb338599
aad 0xe2
sbb dword [edi - 0x50c91126], ecx
scasd eax, dword es:[edi]
movsd dword es:[edi], dword [esi]
and eax, 0x83f7b05d
sub edi, ebx
insd dword es:[edi], dx
xchg dword [eax - 0x4f332ac4], ecx
dec eax
inc esi
mov byte [edx*8 + 0x4648b0cc], bh
add edx, ebx
fnstenv [esi + 0x772dd21e]
rcl dword [ecx], cl
sub eax, 0x35407c1b
cmp eax, 0x6d79e8ec
fisttp dword [edx + 0x36a29fa0]
mov word [esi], ss
dec edx
jecxz 0x19122ce
xchg ebx, eax
or byte [ebx], cl
pop ecx
cdq
push eax
jbe 0x1912230
push edx
cmc
xchg byte [ecx + 0x29613bd5], dh
into
and dword [ecx], esp
mov dh, 0xd2
dec esi
mov ch, byte [edi - 0x65226b46]
pushal
jp 0xf5ba9e5e
fisttp word [eax + 0x45]
loopne 0x19122f5
jnp 0x191223b
cmc
sbb dword [esi], esi
xchg edx, eax
insb byte es:[edi], dx
mov byte [edx], cl
push ds
xchg ebx, eax
pop ds
shr cl, 1
sbb al, 0
neg byte [edi + 0x1f]
jae 0x19122f8
retf 0x4ac4
mov dh, 0x1c
iretd
sbb al, 0xcf
call 0x359c48ff
cmp bh, bl
or al, 0x68
ret
mov dword [edx + 0x422532ca], esi
add dword [edi - 0x314af128], 0xc2efbc5
push 0x9c570bb7
popfd
sbb esp, dword [edx + ecx*4]
push ecx
xor ah, byte [0xd8878142]
push cs
mov ch, 0xce
invalid
mov ah, byte [eax + 0x4f]
mov al, byte [0x2c2438e0]
loope 0x1912373
rol dword [edx + ecx + 0x36], cl
cmpsd dword [esi], dword es:[edi]
movsd dword es:[edi], dword [esi]
push 0xfb752079
or al, 0x68
in eax, 0x7a
jbe 0x1912311
stosd dword es:[edi], eax
mul byte [edx]
cmp ah, byte [edx]
arpl di, bx
clc
stc
jo 0x19122cd
jbe 0x1912362
movsd dword es:[edi], dword [esi]
invalid
and cl, byte [esi]
adc ch, byte [ebp + eax*2 + 0x4d8d954e]
or byte [ecx], al
hlt
sar ebx, 0x2e
or al, 0x68
bound edx, qword [ecx + 0xd04dd1]
push 0xd1219462
dec ebp
rol byte [eax], 1
sub byte [ebx], ch
mov es, ebp
stosb byte es:[edi], al
out 0x1d, eax
sub ebp, dword [esp + esi*4 + 0x422f83ac]
pushal
rol dword [ecx - 0x5147f134], 1
popal
cmp dword [ecx + 0x2e], esi
dec edi
push 0xe2bccf86
xlatb
fcom dword [esi + 0x28]
test al, 0xc1
sti
or al, 0x68
mov al, 0xb6
mov bl, 0x45
jnp 0x19123eb
inc ebx
mov cs, word [eax - 0x3e]
cmp bh, byte [edi - 0x1afe0730]
push cs
jl 0x1912428
sub ebp, ebx
rcr byte [0x67ce49ac], 0x70
sti
or al, 0x68
mov ebx, 0x899675e9
add bl, dl
sub al, byte [edi + 0x72fc5cd5]
jp 0x1912428
int1
sub al, 0xb1
fmul dword [ebp - 0x3ca2bf22]
and ecx, ebp
jns 0x191236f
rcl esi, 0x9d
jge 0x19123a0
add esi, dword [eax]
invalid
enter 0xffffffffffffcbb1, 0x7a
push 0xffffffffffffffd9
and eax, 0x7bc102c1
das
int3
out 0xa8, al
outsb dx, byte [esi]
enter 0xffffffffffff9ff8, 0xfffffffffffffff9
in eax, dx
and ebp, esi
fsub dword [ebp + 0x76b205dd]
adc eax, 0x2b96626e
inc ecx
pop ecx
dec ecx
sar esi, 0xb6
fist word [ecx + eax*2]
fisub word [esi]
cmp dh, dh
push ebp
add eax, 0x115a91ec
xchg ebx, eax
loop 0x19123eb
invalid
shl al, 0x21
shl edx, 2
sub al, al
mov eax, ebp
push 0xdb0a1b08
push 0xca21f6b9
adc eax, edx
sal dword [esp + 1], 0x26
jae 0x159cc94
mov esi, 0x642fc7a2
dec ebp
lea esp, [esp + esi - 0x642fc7a6]
dec esp
lea eax, [esi - 0x774620ec]
inc esp
mov edi, esi
inc edi
mov edi, dword [esp + edi - 0x642fc7a2]
inc cx
sar eax, 0x27
inc ecx
mov edx, eax
inc ebp
xor edi, edx
movzx ebp, dx
inc ecx
xor edi, 0x26006f0a
shr bp, 0x46
inc eax
movsx edi, dh
movsx ecx, bp
inc ecx
ror edi, 2
inc esp
movzx ecx, ch
inc ecx
dec edi
inc ecx
ror edi, 1
dec eax
not edx
inc ecx
inc edi
inc ecx
push edx
inc esi
xor dword [esp + eax*4 + 0x4c5802cc], edi
dec esp
lea edx, [ebp*2 + 0x4402d3b7]
inc ecx
pop edx
inc esp
xor ecx, edx
dec ebp
arpl di, di
inc eax
neg ch
dec ecx
btc ecx, edx
dec ecx
adc ebx, edi
xor edi, 0xe11ab09
dec edi
lea esp, [eax + 0x131600b2]
inc cx
inc eax
inc eax
neg ch
dec edx
lea eax, [eax*2 - 0x74465dc8]
inc edi
movzx edi, byte [esp + eax + 0x131600b2]
inc ebp
xor bh, dl
cwde
inc cx
shr ecx, 0xc2
inc ecx
neg bh
inc cx
inc ecx
inc eax
sub bh, dl
inc sp
xadd eax, ecx
inc ecx
rol bh, 1
inc ecx
mov esi, 0x13a10504
inc ecx
sub bh, 0xb7
inc ecx
xor bh, 0xa8
jmp 0x2819aa8
mov eax, 0x4f8a21b3
mov eax, dword [ebp + eax - 0x4f8a21b3]
call eax
mov edx, 0x1e0e6c1f
push edx
mov ebp, dword [ebp + edx - 0x1e0e6c23]
mov dword [ebp + edx*4 - 0x7839b07c], eax
not byte [esp + edx*2 - 0x3c1cd83b]
mov esi, edx
shl si, 0x86
mov edi, ebp
sbb dword [esp + edx - 0x1e0e6c1f], esi
lea ebp, [edx*8 + 0x1209fbaf]
sub word [esp + esi - 0x1e0e07c0], dx
mov ebx, dword [esp + edx*4 - 0x7839b078]
cmovge si, word [esp + edx - 0x1e0e6c1e]
neg dl
mov eax, 0x9a8b4114
mov ebp, dword [esp + edx - 0x1e0e6cd9]
rol byte [esp + edx - 0x1e0e6ce0], 0xc7
mov esi, dword [esp + edx*2 - 0x3c1cd9b6]
mov dword [esp + edx*4 - 0x7839b378], edx
mov dword [esp + edx - 0x1e0e6ce1], ebp
ret 0xc
push 0x41b4b1ac
lea esp, [esp + 0xc]
je 0x27d2794
mov eax, 0xf9b0adbb
mov eax, dword [ebp + ebx*4]
call fcn.0255bcdc
add eax, 0x19ad4db9
imul edx, edx
not eax
adc cx, 0x8236
btc edx, 0x84
bts dx, dx
lea eax, [eax + edx + 0x43466729]
xor ebx, eax
neg dx
adc dx, dx
add ebp, eax
mov edx, dword [edx + esi - 0x5a6acddf]
call fcn.018483f5
jmp 0x163813d