Function at 0x641ad1
Capabilities:
Encode data using base64

Disassembly:
add ebp, 0xfb08fbee
xor eax, ebp
pop ebp
xor edi, eax
push dword [esp]
pop eax
jmp 0x6419f3
pop ebp
add eax, esi
add eax, 0x7ff8b468
jmp 0x641b2d
shl ebx, 2
inc ebx
jmp 0x641825
mov eax, esp
push ebx
mov ebx, 0x1fffcf4b
not ebx
jmp 0x641405
push edi
jmp 0x641576
xor dword [ebx], 0x6ffd9818
jmp 0x64117d
add esp, 4
push edi
jmp 0x641b5d
pop esp
mov dword [esp], edx
push edi
mov edi, 0x17f53400
not edi
add edi, 0x96f52401
mov edx, edi
pop edi
push 0x74b00c0c
mov dword [esp], edx
mov edx, 0x17fb48b5
xor edx, 0x7ef765a6
push esi
mov esi, 0x7c9ecb1e
shl esi, 3
xor esi, 0xfe2150cc
add edx, esi
jmp 0x641379
mov ebx, dword [esp]
add esp, 4
push dword [esp]
mov eax, dword [esp]
add esp, 4
add esp, 4
jmp 0x641506
add ecx, 4
jmp 0x641b04
mov eax, 0x7bdc8f5d
push ecx
jmp 0x64131f
pop esi
xchg dword [esp], eax
pop esp
jmp 0x641688
mov eax, dword [esp]
jmp 0x64184f
sub ebx, ecx
pop ecx
jmp 0x641241
push eax
mov eax, 0x7bfe9e7e
or edi, eax
mov eax, dword [esp]
add esp, 4
push ebp
push 0x20944808
mov dword [esp], eax
jmp 0x641225
mov eax, 0x7df3a3e5
mov ebp, eax
jmp 0x641364
push edi
mov dword [esp], ecx
mov ecx, 0x7febaa20
or edi, ecx
jmp 0x641628
add ebx, eax
add ebx, 0x67ff92e5
add ebx, 0x735b71a0
jmp 0x641128
push eax
mov eax, 0x7f97d439
xor eax, 0x191ec19c
jmp 0x64126c
add eax, 0x1edf2c84
and eax, 0x7cfa1728
jmp 0x641122
shl ebx, 5
xor ebx, 0xfffcf4c4
add eax, ebx
pop ebx
add eax, 4
xor eax, dword [esp]
jmp 0x641302
mov ebp, dword [esp]
add esp, 4
or edx, 0x7ff72f69
or edx, 0x39d17e3a
xor edx, 0xc32cbd4
xor ebx, edx
pop edx
push ebx
mov eax, dword [esp]
add esp, 4
push dword [esp]
pop ebx
push ecx
mov ecx, esp
add ecx, 4
jmp 0x6411a2
mov dword [esp], 0x6cb17c3e
pop eax
sub eax, 0x2cc0563e
mov ebx, eax
jmp 0x6415ab
add dword [esp], 0x37cb0541
pop esi
sub esi, 0x37cb0541
mov ebx, dword [esp]
push edi
mov edi, esp
add edi, 4
add edi, 4
xchg dword [esp], edi
jmp 0x641b7d
xor dword [esp], eax
xor eax, dword [esp]
pop esp
mov dword [esp], ebx
push ecx
mov ecx, 0x3adf2c7e
mov ebx, ecx
pop ecx
neg ebx
shl ebx, 4
jmp 0x641aec
mov ecx, 0x7fe7a709
neg ecx
add ecx, 0x7ffdf375
jmp 0x6413dc
mov dword [esp], edi
mov edi, 0x697c4c27
and edi, 0x66de33be
push eax
mov eax, 0x66ff8225
shr eax, 2
sub eax, 0x7bb3f8cc
push ebp
push edx
mov edx, 0x7fdfe0fa
mov ebp, 0x9703285b
add ebp, edx
pop edx
shr ebp, 4
jmp 0x641032
pop eax
shl ebp, 6
add ebp, 0x2c70a5ed
add edi, 0x7efe6f73
jmp 0x6414b5
pop esi
or edx, 0x7789de91
jmp 0x64177e
mov dword [esp + 4], ecx
mov ecx, dword [esp]
jmp 0x64148f
sub ecx, 0x5f1f1680
xor ecx, 0x7e275cfe
add eax, 0x3dafe97a
add eax, ecx
sub eax, 0x3dafe97a
pop ecx
jmp 0x641254
add esp, 4
jmp 0x641ad9
shr ebx, 1
jmp 0x64168e
push 0x394b8e05
jmp 0x6418c2
add edx, 0x5fdbb8b1
sub edx, 0x3f4f0961
jmp 0x641902
add edi, ebp
push ecx
mov ecx, 0x7bfb9aca
jmp 0x64158f
add esp, 4
sub esi, 1
and esi, 0x7c7f84ae
inc esi
push edi
jmp 0x64151d
push ebp
mov dword [esp], eax
mov eax, 4
push ebp
push edx
mov dword [esp], 0x564953d
jmp 0x6415e2
mov edi, 0x2573e646
sub esi, edi
pop edi
xor ebx, esi
push dword [esp]
pop esi
push ecx
mov ecx, esp
add ecx, 4
jmp 0x64163d
push edx
mov edx, 4
add ebp, edx
jmp 0x641920
mov dword [esp], ecx
mov ecx, 0
sub ecx, eax
xchg ecx, eax
pop ecx
jmp 0x641726
mov esp, dword [esp]
jmp 0x641730
shr ecx, 6
neg ecx
xor ecx, 0x57eeb226
or ecx, 0x7ffbc82e
sub ecx, 0x76fe329b
jmp 0x641b1a
pop eax
shr ebx, 2
or ebx, 0x72ef1988
sub ebx, 0x7e87b421
not ebx
and ebx, 0x53f262a3
sub ebx, 0x339f52e5
add ebp, 0x53e6024b
add ebp, ebx
sub ebp, 0x53e6024b
pop ebx
mov esi, ebp
mov ebp, dword [esp]
jmp 0x6414ed
mov dword [esp], ebx
mov ebx, 0x77d75523
mov ebp, ebx
pop ebx
push 0x2578495f
mov dword [esp], esi
mov esi, 0x6aaaf170
jmp 0x6418f6
mov edx, 0x7eff4cd5
not edx
add edx, 0xf65e7cd5
add ebp, edx
pop edx
sub ebp, esi
sub ebp, 0x775f2fff
pop esi
jmp 0x64161d
sub esp, 4
jmp 0x641a09
pop ecx
shl edi, 8
jmp 0x641849
push esi
mov dword [esp], edi
mov eax, dword [esp]
jmp 0x6413fa
push 0x47a65b5f
mov dword [esp], esi
mov esi, 0x3fe18150
xor esi, 0x3fe18154
add ecx, 0x71ed9d2b
add ecx, esi
sub ecx, 0x71ed9d2b
jmp 0x641676
pop esi
xchg dword [esp], ecx
pop esp
jmp 0x6417b8
push eax
jmp 0x6411ca
push edx
mov edx, 0
sub edx, ebx
mov ebx, edx
pop edx
jmp 0x64127b
xor ecx, 0x2672b851
add edi, ecx
pop ecx
xchg dword [esp], edi
mov esp, dword [esp]
add ebx, eax
sub ebx, 0x5dfd8bf1
pop eax
push eax
jmp 0x641b0d
or eax, 0x1fdcd65d
jmp 0x64180f
push esi
mov esi, esp
add esi, 4
push 0x70c67385
jmp 0x641743
mov dword [esp], ebx
jmp 0x6419af
add esi, 0x7dc340d0
pop ebx
xchg dword [esp], esi
jmp 0x64113f
add edx, 0x2dffc18a
inc edx
sub edx, 0xa5d6cfe6
mov eax, edx
mov edx, dword [esp]
jmp 0x6418aa
add edi, ebx
pop ebx
jmp 0x641631
sub esp, 4
mov dword [esp], ebx
push eax
mov eax, 0x6ffd9818
xor dword [esp + 4], eax
pop eax
pop dword [esi]
push eax
push ecx
mov dword [esp], 0
mov eax, dword [esp]
add esp, 4
add eax, esi
push ebx
push 0x77c856db
mov dword [esp], ecx
mov ecx, 0
push ecx
pop ebx
pop ecx
sub ebx, 0x735b71a0
sub esp, 4
mov dword [esp], ecx
push esi
mov esi, 0x7f7ff491
mov ecx, 0x18806674
xor ecx, esi
pop esi
jmp 0x641201
xor eax, 0xa222742c
add ebx, eax
jmp 0x6411df
inc ebx
shr ebx, 5
add ebx, 0x35dd91b6
add eax, ebx
mov ebx, dword [esp]
add esp, 4
jmp 0x6419d0
push ebx
jmp 0x641916
push edi
mov edi, esp
add edi, 4
jmp 0x6418d1
mov ecx, esp
add ecx, 4
add ecx, 4
xchg dword [esp], ecx
pop esp
mov eax, edi
pop edi
sub ebx, eax
mov eax, dword [esp]
add esp, 4
push esi
push ebp
push 0x3ef86e26
push dword [esp]
pop ebp
jmp 0x641133
add esp, 4
sub eax, 0x38fd3781
sub eax, edx
push ebx
mov ebx, 0x58fd2e5b
jmp 0x641084
mov dword [esp], eax
jmp 0x6410e2
add eax, esi
jmp 0x6411d5
push ecx
push edx
mov edx, 0x5373d05f
jmp 0x6414a4
sub esi, 0xefb34d7b
push edx
jmp 0x6415ff
sub edx, 0x144630cd
jmp 0x641948
mov ebx, 0x1441e000
jmp 0x641795
pop edx
sub ebp, 4
xchg dword [esp], ebp
pop esp
jmp 0x641abf
mov ecx, edx
pop edx
sub esp, 4
mov dword [esp], edx
mov edx, 0x6bff0000
inc edx
dec edx
shl edx, 1
push eax
mov eax, 0xa898e6c3
sub edx, eax
push dword [esp]
pop eax
add esp, 4
xor ecx, edx
mov edx, dword [esp]
add esp, 4
xor ecx, 0x57a7e5c0
jmp 0x641a5e
mov ebx, 0x67be855e
not ebx
inc ebx
shr ebx, 8
sub ebx, 0xffffffff
sub ebx, 0x984177
sub esi, 0x7dc340d0
sub esi, ebx
jmp 0x64174b
mov edx, dword [esp]
push esi
jmp 0x6419d9
mov dword [esp], ebp
mov ebp, esp
add ebp, 4
add ebp, 4
xchg dword [esp], ebp
pop esp
jmp 0x641bfb
add esp, 4
shl edi, 2
jmp 0x641209
mov dword [esp], esi
mov esi, 0x4edf8689
add ebp, esi
pop esi
add esi, 0x57ee3f9e
sub esi, 0x2b9f5b0f
sub esi, ebp
add esi, 0x2b9f5b0f
sub esi, 0x57ee3f9e
mov ebp, dword [esp]
add esp, 4
add esi, 0x7f13e687
sub esi, eax
sub esi, 0x7f13e687
push edx
mov edx, 0x74ff1fc2
or edx, 0x51ff50a7
sub edx, 0x2a402830
add esi, edx
jmp 0x641a85
sub ecx, 0x4deb6a75
not ecx
jmp 0x6416c1
push ecx
push 0x4beb779c
pop ecx
jmp 0x6413c8
mov edx, dword [esp]
add esp, 4
mov eax, dword [esp]
add esp, 4
sub ecx, 1
jne 0x641980
sti
push eax
jmp 0x641a6b
mov dword [esp], edi
mov dword [esp], 0x38beca00
pop edi
neg edi
jmp 0x641231
push ebp
mov ebp, esp
jmp 0x64154a
mov edi, dword [esp]
add esp, 4
push ebp
mov ebp, 0x7ff8b468
sub eax, ebp
jmp 0x641046
push edx
jmp 0x641af2
push ebp
mov ebp, 0x5f07bd21
mov edx, 0x1c3835b0
add edx, ebp
jmp 0x641292
xchg dword [esp], ecx
pop esp
jmp 0x641b46
push edx
mov dword [esp], 0x984a6f8
jmp 0x641331
xor ecx, 0xf7ffd657
sub edi, ecx
pop ecx
push dword [esp]
pop ebp
push ecx
jmp 0x64187a
push dword [eax]
pop ebx
mov eax, dword [esp]
push eax
mov eax, esp
add eax, 4
push esi
mov esi, 4
jmp 0x6418ca
push ebx
mov dword [esp], 0x2c7df914
mov dword [esp], esi
push ebx
mov ebx, 0x726f377f
push ebx
jmp 0x6412da
mov edi, 0x5fe636a1
xor ebp, edi
pop edi
push esi
jmp 0x641b6b
mov dword [esp], ebx
sub esp, 4
mov dword [esp], eax
push eax
jmp 0x6412c6
pop esp
mov eax, 0x76dbbc7f
add eax, 0x7db99a92
add eax, 0x3cbfedca
sub eax, esi
sub eax, 0x3cbfedca
push ebx
mov ebx, 0x7db99a92
push ecx
mov ecx, 0x17bf7d77
add eax, ecx
pop ecx
jmp 0x641ba8
push ebp
mov ebp, 0x5c6ec511
jmp 0x641bb3
sub ebp, 0x3d1fc075
sub ebp, 0xffffffff
sub ebp, 0xa1119e87
add eax, ebp
jmp 0x641bc9
pop ebp
sub eax, ebx
sub eax, 0x7e3d6616
push ebx
mov ebx, 0x17bf7d77
sub eax, ebx
pop ebx
pop ebx
mov esi, dword [esp]
push esi
mov esi, esp
add esi, 4
add esi, 4
xor esi, dword [esp]
add byte [eax], al
add byte [ebx], dh
xor al, 0x24
xor dword [esp], esi
xor esi, dword [esp]
jmp 0x641587
out dx, eax
outsd dx, dword [esi]
jne 0x641c13
ficom word [ebp + 0xd]
and dl, byte [edi]
jg 0x641c0b
mov eax, 0xe320a082
push ss
mov bl, 0xdb
sbb eax, 0x3dbbfdbd
ja 0x641bea
mov al, byte [0xb7656ee3]
and dword [edi], edx
cwde
sbb ecx, edi
xchg ecx, eax
mov bh, 0x3f
pushfd
leave
mov dl, 0x69
test byte [ecx], bh
and eax, 0xb77ece89
and dword [edi + 0x17223c55], edi
jg 0x641c6c
inc esi
cmp edi, dword [edx - 0x1c]
inc edx
and dh, byte [ecx + 0x3b11105d]
cdq
xor ebx, ecx
mov byte [0x7f1788bb], al
mov bh, 0x21
mov ebp, 0x6e3dbbf5
add byte [edi - 0x6109e8df], dh
sar dword [edi - 0x532a7103], cl
dec ebx
and byte [edx], cl
xor al, 0xc5
inc edi
mov es, word [edx - 0x107a4625]
mov eax, dword [0xa11a6e45]
jae 0x641cd0
sbb ah, byte [ecx - 0x4c0a9f8d]
cmp eax, 0x21b7fd6e
cmc
mov bl, 0x3d
outsb dx, byte [esi]
std
mov bh, 0x21
pop ss
mov dl, 0xf
mov esi, 0xd4ce3a27
cwde
dec ecx
int1
mov byte [esi + edi*2 + 0x6c721b7], bh
xlatb
movsb byte es:[edi], byte [esi]
mov eax, dword [0x970deadb]
dec ebx
and edx, edx
push 0x56d9db6a
pop esi
mov ecx, 0x1331923c
xor edx, dword [esi + 0x5e]
adc esi, dword [ebx]
push esi
pop esi
mov ebx, 0xe8774844
add cl, byte [esi + 0x6ea1003d]
cmp eax, 0x7e370e86
outsd dx, dword [esi]
fxch st(0)
push ebp
cmp al, 0x22
pop ss
jg 0x641cb9
inc dword [eax + edi*4 + 3]
and ebx, esi
mov esi, 0x3b1e78b3
imul ebp, dword [esi - 0x1c0a2a1e], 0x3d
inc esp
mov eax, 0xbef32103
mov bl, 0x78
push ds
cmp ebp, dword [ebx - 0x52]
loop 0x641c9d
cmc
jecxz 0x641d08
out dx, eax
adc byte [ebx], 0xe9
adc ebp, ecx
and dh, dh
mov ebx, 0xdb82583d
idiv byte [ebx - 0x247da7c3]
imul esp, esi, 0x2e
sub byte [ecx + 0x628ea323], ch
pop ss
jg 0x641c99
lcall 0xd296, 0xbd7afd62
sub ch, byte [ebx + 0x42]
std
jp 0x641c90
lea edi, [ebp - 0x3f]
inc eax
outsd dx, dword [esi]
push ebp
loop 0x641d18
pop ss
jg 0x641d09
sbb ecx, dword [ebx - 0x69]
fisttp word [eax + 0x21b77f0b]
ret
xchg byte [edi + 0x78fe1721], dh
call 0x898a58a6
int3
mov bh, 0x21
pop ss
invalid
xchg ebx, eax
cmp esp, dword [esi]
mov esp, ecx
jle 0x641ccd
and dword [esi - 0x2a46247e], ecx
sub al, 0x53
sbb bl, 0xb9
aad 0x2c
push ebx
xlatb
push esi
push esi
mov esp, 0x65c2033c
div dword [edx]
jg 0x641d0f
cli
cdq
adc esp, esp
inc edx
mov dword [esi], 0xa14bc789
jae 0x641cfa
push ebp
in al, dx
and dword [edi], edx
jg 0x641d6c
pop ebx
outsb dx, byte [esi]
outsb dx, byte [esi]
mov al, byte [0x36b36073]
inc esi
cmp ecx, dword [ecx + 0x73]
pushal
stosd dword es:[edi], eax
sub dword ss:[edx - 0x71f1e79b], 0xffffffca
fistp dword [0x9edb8a8c]
pop ebx
or byte [esi - 0x5eb49e41], 0xe3
push 0x9ed10833
xchg ebx, eax
and dl, byte [esi - 4]
push esi
cld
and dword [edi], edx
jg 0x641d5c
and edi, dword [ebx + 0x7e6ea12e]
pop ss
mov bl, 8
invalid