Function at 0x9405e1
Capabilities:
Encode data using base64

Disassembly:
add edx, edx
neg edx
mov edx, dword [ebp]
mov eax, 0xaa2b103b
cwde
xor edx, ebx
shl eax, 0xb2
jne 0xdedda6
mov ecx, dword [ebp + ecx*4 - 0x1dad0]
or dx, word [esp + eax - 0x40742421]
sal byte [esp + eax - 0x40742423], 0x46
xchg dword [esp + eax - 0x40742423], edx
lea ebp, [eax + ebp - 0x40742427]
or al, dl
xor ecx, ebx
xadd eax, edx
add dx, dx
xor ecx, 0xcd83ad9b
dec ecx
call fcn.00ebfc07
lea esi, [esi + edx*2 - 0x33e8]
mov dword [esp + edx*4 - 0x67c8], eax
not ecx
inc al
mov eax, dword [esi + ecx*2 - 0x7a41abfe]
pop ecx
xor eax, ebx
and cx, 0xf28c
bswap eax
not dx
lea eax, [eax + edx*8 - 0x422a6ffd]
not eax
call fcn.00c67b94
mov ecx, 0xbb1c6091
movsx edx, cl
ror edx, cl
mov eax, dword [esi]
neg ecx
jnp 0xe01baf
mov edx, dword [ecx + esi - 0x44e39f6b]
bts ecx, ecx
imul ecx, ecx
lea esi, [esi + ecx*4 - 0x68944880]
btc ecx, ecx
jae 0xe95ff2
test eax, eax
push 0x6a29b803
push 0xeda9f62b
lea esp, [esp + 0x10]
je 0xe47ce4
push edi
movzx edi, byte [edx]
call fcn.00ec94ef
push ebx
mov dword [esp], 0x149ac6d3
call fcn.00c650fd
xor ecx, 0xd8a65b12
call fcn.00e910aa
scasd eax, dword es:[edi]
mov cl, 0xd3
cmp ah, al
xor edx, dword [edx + 0x62]
xchg edi, eax
cmc
invalid
jae 0xda1093
not dl
sar cl, 2
sal cl, 0x64
inc cx
not al
and dl, al
sar cx, 0xc9
sar dword [esp + ecx*2 - 0x941ffe2], cl
mov word [ebp + ecx*4 - 0x1283ffc4], dx
mov edx, 0x689ab2ba
mov dword [esp + ecx - 0x4a0fff1], edi
ret
lea esp, [esp + 4]
je 0xe400a1
mov eax, dword [ebp + ebx*4]
call fcn.00929cf7
btr eax, eax
mov eax, ebp
call fcn.009abfc4
mov edx, 0xf11e1392
imul edx, edx
adc dl, dl
mov eax, dword [edi + edx - 0x7bb6ff89]
xor dl, dl
movzx ecx, dx
movzx dx, byte [edx + eax - 0x7bb6ff00]
lea edi, [edi + ecx - 0xfefe]
mov word [edi + ecx*4 - 0x3fc00], dx
dec cl
mov eax, dword [esi + ecx - 0xffff]
lea edx, [ecx - 0x48f655d0]
shr eax, cl
sets byte [esp + eax + 8]
call fcn.009b8d88
mov eax, 0xc4a2ce16
movzx edx, byte [edi]
mov ecx, eax
add edi, 1
xor dl, bl
bt ax, 9
ror al, 0x41
rol dl, 1
dec ecx
xchg ah, al
sub ax, 0xb63c
neg dl
sub dl, 0xa2
rol dl, 1
and eax, eax
xor bl, dl
xchg ch, cl
inc ecx
sub esi, 2
mov word [esi], dx
not al
mov edx, dword [edi]
add edi, 4
shl cl, 0x25
adc ax, 0x82b6
and ecx, eax
xor edx, ebx
bts ecx, ecx
not edx
neg edx
bswap edx
not edx
lea edx, [edx + eax - 0x1967df99]
btr eax, 0x85
imul cx, ax
ror ecx, 0x88
neg edx
inc cl
xor ebx, edx
and ax, 0xd3bf
sbb cx, cx
lea ecx, [ecx - 0x447012c8]
adc ebp, edx
jmp fcn.00c575b7
sal eax, cl
bswap edx
bt edx, 0x9b
mov dword [esi + edx*2], eax
movzx ecx, dl
shr ecx, 0x49
call fcn.00ce9c47
inc eax
movzx ecx, bh
rol ebp, 3
xor ebp, 0x8a91178d
inc ebp
movzx esi, bp
inc esp
xor ebp, edi
ror ebp, 1
inc cx
rol ebp, cl
dec eax
cdq
dec ebp
inc ebp
movsx ebx, bp
neg ebp
inc ebp
inc ecx
push edx
inc ebp
xadd edi, esi
xor dword [esp + eax - 0x21adddac], ebp
inc esp
movsx edx, bh
dec esp
xor ebp, edi
inc ecx
pop edx
inc ecx
mov ebx, esi
div bl
inc edi
dec eax
arpl bp, bp
add bl, 0xb0
dec esp
add ecx, ebp
dec ecx
sub ebx, 0xfc306f34
inc cx
bts ebp, edi
inc si
mov ebx, dword [esi + ebp - 0x1bbae394]
dec eax
dec eax
xchg ebx, eax
mov ebp, eax
inc dx
mov ebx, dword [esi + ebp - 0x1bbae392]
jl 0x94b318
inc ecx
shr bh, 0x21
inc ecx
div edi
mov cl, byte [esi + eax*2 + 4]
inc ecx
sar edi, 0x23
inc ecx
xadd ch, al
dec eax
lea esi, [esi + eax - 0x90]
inc ecx
push esi
not dx
inc cx
shrd ebx, ebx, cl
shl dx, 0x8f
sal byte [esp + eax - 0x92], 0xc2
shl word [esp + eax - 0x92], 0xca
inc sp
mov dword [esi + eax*4 - 0x250], ebx
dec esp
mov dword [esp + eax - 0x94], ecx
ret
or dword [esp], 0xdea4ac82
test ebx, ebx
not dword [esp]
jmp 0x974435
dec ebp
adc ecx, eax
sar byte [esp + edx - 0x2b247af6], 0xc3
adc word [esp + edx - 0x2b247af4], bp
dec eax
mov ebx, dword [esi + edi - 0x7b23dd8e]
mov bp, word ss:[edx + ebx - 0x2b247af7]
btc edx, 0x99
xor al, dh
dec eax
lea esi, [esi + edx - 0x29247af1]
inc esp
xchg dword [esp + edi - 0x7b23dd8e], ebp
inc esp
movsx esi, di
mov word [edx + esi - 0x29247af7], bp
dec eax
shr dword [esp + edx - 0x29247af7], 0xad
dec byte [esp + edx*2 - 0x5248f5ec]
inc ecx
mov eax, 0xfb0aa988
dec esp
mov dword [esp + edx - 0x29247af7], ecx
ret
bt edx, edx
lea ebp, [eax + ebp - 1]
sbb byte [esp + eax], al
or edx, dword [esp + eax + 6]
cwde
add al, byte [ebp + eax]
xor al, bl
xor dx, dx
inc word [esp + edx*8 + 0xa]
and byte [esp + edx*2 + 2], 0x2b
neg al
pop edx
btr dx, 0xd
inc dx
sbb al, 0x92
and edx, dword [esp + edx]
adc dl, 0x9e
xor al, 0xa7
sal dx, 0xa1
not al
ror al, 1
neg dl
sub dword [esp + edx - 0x1c0], edx
dec edx
xor bl, al
xor edx, 0x421f8c9c
push edx
xor dx, 0xacbb
mov dword [esp + edx - 0x421f21dc], ebp
rol dword [esp + edx - 0x421f21e4], 0xd
mov dword [esp + edx - 0x421f21e0], edi
not byte [esp + edx - 0x421f21e1]
inc edx
pop edx
push ebx
movsx ebx, dl
mov ebp, esi
or bx, 0x7005
sbb ebx, 0xf51c539e
mov ebx, eax
inc dl
jae 0x9a2d98
mov eax, edx
mov edx, ebx
and eax, 0xba6928f
adc eax, eax
sal edx, 2
jmp 0x9a293a
jno fcn.00ee70d9
mov edx, 0xdaa262a
add edx, 0x2511f10b
lea ebp, [ebp + edx*2 - 0x65782e6e]
ja 0x92a32a
lea edx, [eax + edx - 0x511086bb]
push eax
push eax
sets al
bswap edx
shr byte [esp + eax - 0x40ebfffb], 0x23
inc edx
bswap eax
xor eax, eax
not edx
push eax
ror ax, 0x64
bt eax, 0x81
xor ebx, edx
add edi, edx
movsx edx, al
jmp 0xdc7e56
cdq
imul ax
jae 0xe60280
neg al
sub al, 0x87
ror al, 1
add al, 0x2b
movzx edx, word [esp + edi*2 - 0x66]
not al
dec dx
inc eax
or bh, byte [esp + edi*2 - 0x63]
shl byte [esp + edi*4 - 0xc7], 0xe3
inc esp
xor dl, al
dec ecx
bt ebp, ebx
dec eax
shl dword [esp + edi*4 - 0xcc], 0xc
dec ecx
ror eax, 0xcc
dec eax
lea eax, [esp + eax + 8]
rol dword [esp + edi - 0x2f], 0x44
sar bp, 0x85
dec eax
add dword [esp + edi*4 - 0xcc], 0xa5aba1b9
mov edx, dword [edi + eax - 0x33]
mov dword [esi + edi - 0x3f], edx
inc esp
and ebp, dword [esp + edi - 0x2f]
inc ecx
movzx ebx, byte [esp + edi*2 - 0x70]
inc ecx
movzx eax, bx
cwde
dec ebp
lea esi, [ebp + ebp*4 + 0x348cbfa0]
inc ecx
xor bl, dl
movzx edx, byte [esp + edi - 0x33]
imul dword [esp + edi*2 - 0x63]
inc ax
ror bl, 1
dec ecx
btc esi, 0x87
inc esp
movsx edi, ax
adc bl, 0xf
inc cx
sar ebp, 0x64
inc word [esp + edi - 0x32]
not bl
sar byte [esp + edi*4 - 0xc8], 0x61
inc ecx
pop eax
inc ecx
mul esi
rol bl, 1
inc cx
mul edi
inc esp
xor dl, bl
dec ecx
bts ebp, edi
inc ecx
sbb ebx, 0xf26023a
inc eax
movsx ecx, ch
dec eax
adc ebx, esp
inc esp
mov ebp, dword [edi + ebx - 0x33]
dec ecx
idiv eax
inc esi
mov dword [esi + eax + 0x5a512d37], ebp
dec eax
bts eax, ebp
inc ebp
movsx ebp, di
dec eax
lea esi, [edi + esi - 0x43]
inc ebx
mov edx, dword [esp + eax + 0x5a512d39]
inc cx
bts edi, 0xd
adc cx, 0x3280
sar al, 5
dec edi
lea esp, [esp + eax + 0x5a512d39]
inc ecx
xor edx, edx
dec ebp
sub ebp, ebx
lea edx, [edx + ecx - 0x2a670859]
inc cx
or ebx, 0xdd8bc688
ror edx, 1
inc ecx
not al
dec ecx
btr eax, 0x1a
bswap edx
inc ecx
ror eax, 0x3c
inc eax
adc ch, 0x9a
neg edx
dec ecx
ror ebx, 0x41
dec eax
sar ecx, cl
cmovs eax, ecx
inc ecx
push edx
dec esp
sub ebx, ebx
sbb bp, 0x7a80
inc eax
xor dword [esp + edi - 0x33], edx
inc ecx
pop edx
dec ecx
or eax, 0xc526b288
adc al, al
dec eax
arpl dx, dx
jb 0xe61732
mov word [esp + edx - 0x1034ee71], dx
mov dword [edi + edx - 0x1034ee73], eax
lea esi, [edx + esi - 0x1034ee77]
mov eax, 0x3013c69c
or dl, byte [esp + edx - 0x1034ee73]
mov edx, dword [edx + esi - 0x1034eeff]
xor edx, ebx
ror edx, 1
dec edx
xor ax, ax
div byte [esp + ecx - 0xbc]
xchg dword [esp + ecx - 0xbe], eax
bswap edx
inc edx
imul ax, ax
rol cl, 0xc1
inc byte [esp + ecx*2 - 0xf9]
xor ebx, edx
ror ecx, 0xde
imul ax, word [esp + ecx - 0x1f4]
add ebp, edx
pop edx
jmp ebp
push 0x74886d96
mov eax, dword [esp]
mov edx, 0x5b0f607
movzx eax, dl
xor dl, dl
not ecx
inc dx
mov dword [edi + edx*2 - 0xb61ec02], ecx
mov ecx, eax
jmp esi
adc esi, ecx
btc eax, edx
lea ebp, [ebp + edx*4 - 1]
push edx
movzx eax, byte [ebp + edx*4]
xor al, bl
xchg dword [esp + edx], edx
lea edx, [edx + 0x2532681d]
neg al
not dx
ror al, 1
lea edx, [edx*8 - 0x2efa76e1]
push edx
pop edx
add al, 0x37
or edx, 0xf036689b
neg al
shl dword [esp], 0xdb
add dx, dx
setle byte [esp + 2]
ror al, 1
xor bl, al
add dword [esp], ebp
push esi
btr dx, dx
push ebx
movsx ebp, dx
mov ebp, edi
mov ebx, eax
or edx, edx
movzx eax, dl
mov edx, ebx
sal al, 0xc4
shl edx, 2
mov eax, ebp
push 0x811ca30e
shl dword [esp], 0x44
adc eax, edx
jmp 0xf364ed
inc ecx
xchg esi, eax
inc ecx
push eax
dec esp
add ecx, edx
cwde
inc ecx
rol eax, 0xd8
dec eax
lea ebx, [ecx*4 - 0x54d1b55c]
pop ecx
jae fcn.00d1a075
push 0xd899ef94
mov eax, dword [edi]
mov edx, 0x70016880
mov cl, byte [edx + edi - 0x7001687c]
shr dword [esp + edx - 0x70016880], 0x26
dec dx
lea edi, [edi + edx - 0x7001687d]
lea edx, [edx*4 - 0x59d0b7e3]
imul edx, dword [esp + edx - 0x6634ea19]
lea edx, [edx*4 - 0x27ea47c5]
sal eax, cl
movzx ecx, byte [esp + edx*4 - 0x40d3b9cc]
jmp 0xe316e3
sal cl, cl
or eax, edx
neg cl
push ecx
jge 0xe28cb1
not eax
lea edx, [ecx + 0x5a0113c]
call fcn.00dc1766
bswap edx
dec ecx
cdq
xor ecx, 0x950e4386
shl edx, 0x93
inc eax
xor ebx, ecx
cdq
sub dx, ax
add edi, ecx
mov cx, word [eax + esi - 0x4faf930f]
sar dl, 0x21
btr ax, 0x10
cbw
mov dx, word [esi + edx*2 - 0xd9ee]
or ax, 0x11a1
ror al, 0x82
lea esi, [esi + eax - 0x4faf11e9]
shr eax, 0xc
call fcn.009ac5a3
xor ecx, ebx
bswap ecx
push edx
xor ecx, 0x140ea38d
movzx eax, dl
imul ax
rol edx, 0x94
sbb ecx, 0xf322cc8c
call fcn.00ca9a0d
lea edx, [ecx*4 - 0x1050ac59]
inc eax
or ecx, ecx
dec cl
xor ebx, eax
shr cl, 0x22
shr ecx, cl
add ebp, eax
push edx
or dword [esp + edx*2 - 0x7eaa7e8e], 0x410b33ac
inc ecx
lea esi, [esi + ecx*2 - 0xd5]
btr edx, 0x1e
setae byte [esp + ecx - 0x6a]
lea eax, [edx + edx - 0x1b4d6380]
movzx edx, byte [esi + ecx*8 - 0x350]
cwde
cmovb eax, ecx
xor dl, bl
ror byte [esp + ecx*8 - 0x34f], 0xc6
shr cx, cl
btc eax, ecx
ror dl, 1
pop eax
xor cl, ch
sar eax, 0x3f
sbb dl, cl
xor cl, ah
or eax, ecx
dec eax
rol dl, 1
inc al
btc ax, 7
cwde
adc dl, 0x96
rol eax, 0x1a
ror eax, 0x61
imul ax, ax
rol dl, 1
xor al, cl
xor bl, dl
add edx, esp
shr eax, 0xfd
setne al
add ecx, dword [ecx + edx]
imul ax, ax
lea edi, [eax + edi - 4]
mov dword [edi + eax], ecx
jae 0xdd8057
mov eax, 0x48847915
not ax
xor ax, ax
mov eax, dword [ebp + eax - 0x48840000]
mov ecx, 0x7639d0ae
mov edx, ecx
lea ebp, [ecx + ebp - 0x7639d0aa]
rol cx, cl
xor eax, ebx
shr dx, 0xa5
ror dl, 0xa1
not eax
or ecx, ecx
dec ecx
inc eax
bt edx, ecx
or ecx, ecx
xadd ecx, edx
bswap eax
rol eax, 1
lea eax, [eax + edx + 0x38f7167d]
xor ebx, eax
call fcn.00ed72ab
dec ecx
sub esp, 4
inc ecx
mov ebp, dword [esp]
inc ecx
xor ebp, edx
mov eax, 0x21adddac
inc ecx
mov ebp, 0x1bba3c2d
not ebp
bswap ebp
dec esp
lea edi, [eax + eax + 0x42077e8c]
not ebp
movsx edi, al
jmp 0xc97585
mov dword [ebp - 4], eax
shr byte [esp + 2], 0xa7
jbe 0xd944e8
movzx ecx, dl
xor eax, 0x9bb0ccbd
add ecx, ecx
push edx
neg edx
not eax
inc eax
ror eax, 3
lea eax, [edx + eax + 0x38335a6d]
bswap edx
and dword [esp + ecx - 0x1b4], ecx
xor ebx, eax
not cl
shr ecx, cl
adc ebp, eax
neg word [esp + edx - 0x2671f03a]
movzx eax, dl
btr ecx, edx
mov eax, dword [esi + edx - 0x2671f03a]
pop edx
btc dx, cx
add ecx, dword [edx + esi - 0xff6d]
lea esi, [esi + edx - 0xff69]
not edx
mov dword fs:[eax], ecx
or edx, edx
jne 0x92c7e4
mov eax, dword [esi]
mov ecx, 0x851df509
sar cx, cl
movzx edx, cl
mov cl, byte [edx + esi - 0xf6]
shl dl, 6
shl dx, 0x2b
jne 0xefb306
lea esi, [esi + edx*2 + 2]
rol dl, 0xc2
sar dx, 0x27
jae 0x9bc688
mov eax, 0x19b9e017
shr eax, 0xcf
lea eax, [eax*4 - 0x736f707e]
mov eax, dword [esi]
push 0x90840f0e
mov ecx, dword fs:[eax]
mov dword [esi], ecx
mov eax, 0xa19acb0b
mov edx, dword [ebp]
adc ebp, 3
xor edx, ebx
rol dword [esp], 0x6a
bswap edx
call fcn.00e808c5