Function at 0x479588
Capabilities:
Encode data using base64

Disassembly:
movsx edx, cx
lea esi, [esi + ecx - 0x5a3eca0f]
add edx, edx
bts edx, 0x82
call fcn.004d4963
btr ecx, ecx
inc edx
add cx, 0xc11d
not edx
add dword [esp + ecx*2 - 0x18252], ecx
dec dword [esp + ecx*4 - 0x304a4]
call fcn.0043f077
mov eax, dword [esi]
mov ecx, 0x5a3eca13
jmp 0x425486
sal dx, 0xea
bswap edx
lea edi, [edi + edx*2 - 0x1781edc]
adc al, cl
pop ecx
mov word [edx + edi - 0xbc0f6f], ax
movsx eax, cl
mov dword [esp + edx - 0xbc0f6f], ebp
ret
add esi, ecx
lea ecx, [eax + eax*8 + 0x331e749c]
push eax
lea edi, [edi + edx - 3]
movzx eax, byte [eax + edi - 0x3c4bd450]
xchg dword [esp + edx - 2], ecx
xor al, bl
call fcn.00492b94
rol eax, 0x16
movsx edx, al
lea edi, [edi + edx*2 - 0x82]
mov dword [edx + edi - 0x3f], ecx
lea edx, [edx + edx*8 + 0x5dbc240f]
neg dl
mov eax, dword [esi + edx - 0x5dbc26ba]
xor edx, edx
lea esi, [esi + edx*8 + 4]
not dl
xor eax, ebx
xor eax, 0x7e264bab
and edx, edx
adc eax, 0xdf89608b
movzx ecx, dx
lea ecx, [ecx*2 - 0x785f72d5]
jmp 0x45916d
rol eax, 3
dec edx
not ecx
not eax
imul edx, edx
inc edx
neg eax
bswap eax
bts dx, dx
xchg edx, ecx
btc dx, dx
lea eax, [eax + ecx - 0x76206ee0]
sub dl, dh
rol dx, 0xa5
jne 0x478b3e
xor ebx, eax
push edx
ror dx, 0xca
lea ecx, [edx - 0x3c4f316f]
adc ebp, eax
sal edx, cl
sal byte [esp + ecx*2 - 0x78200424], 0x84
call fcn.0041c3b9
sub ebp, 4
mov edx, 0xed2761a9
movsx ecx, dx
mov edx, dword [ebp + ecx - 0x61a9]
xor edx, ebx
ror edx, 2
inc ecx
sub edx, 0x849974b0
xor edx, 0x8d26d39a
sub cl, cl
push ecx
shr byte [esp + ecx - 0x60ff], 0x67
ror edx, 2
sar cx, 0xcb
jp 0x43d0ab
adc edi, edx
mov dword [esp + ecx*8], 0x1f9d2f3d
mov dword [esp + ecx*2], edi
ret 4
sar eax, 0x53
sbb ecx, 0xa7bb7b9c
mov dword [esp + edx - 0x72a36726], eax
ror dx, 0xc1
ror ecx, 1
inc word [esp + edx - 0x72a33393]
inc dl
add ecx, eax
push eax
xchg dword [esp + edx - 0x72a33392], edx
xor ebx, ecx
add esi, ecx
lea ebp, [ebp + edx - 0x10000]
mul edx
jae 0x4b2c9f
movzx ecx, word [esp + edx*2 - 0x1fff8]
movzx ecx, byte [ebp + edx*2 - 0x1fffc]
xor cl, bl
sub byte [esp + edx - 0xfff7], al
ror cl, 1
and al, 0xae
bswap eax
mul edx
inc cl
xchg dword [esp + edx + 1], eax
cdq
add eax, dword [esp + 4]
xor cl, 2
xadd dword [esp + 3], edx
sar eax, 0x89
ror cl, 1
dec cl
bts ax, 0xa6
not word [esp + 5]
cbw
xor bl, cl
sub edi, 2
mov word [edi], cx
call fcn.0042a6bb
mov ecx, 0x332aff00
movzx ax, byte [esi + ecx*2 - 0x6655fe00]
push ecx
add cl, byte [ecx + esi - 0x332afefe]
mov edx, 0xe79142b7
bswap edx
add esi, 2
inc word [esp + 1]
or al, cl
dec dword [esp]
pop ecx
xor al, cl
mov word [esi + ecx*2 - 0x6655fffe], ax
mov ecx, dword [ecx + edi - 0x332affff]
lea edx, [edx + edx*8 + 0x6c8b0cb3]
movzx eax, dx
call fcn.004bb6d5
add edi, ecx
pop eax
btc ax, dx
sbb edx, eax
mov cx, word [ebp + eax*2 - 0x5e5ec934]
bts dx, ax
rol eax, 0x57
lea ebp, [ebp + eax - 0x4d1797b0]
div al
movzx eax, byte [esi + eax - 0x4d171eda]
and dx, dx
inc edx
adc esi, 1
call fcn.0043b85d
mov ecx, 0xca88931a
mov edx, dword [esi]
add esi, 4
bts ecx, ecx
sar ecx, 0xf3
movzx eax, cx
xor edx, ebx
inc edx
or al, ah
sal eax, cl
neg edx
rol ecx, 0x96
sbb eax, 0x85a1dc19
ror edx, 2
lea edx, [ecx + edx + 0x7e82f5a5]
not edx
sub edx, 0xcb9f4b98
btr ecx, 0xa1
setb cl
xor ebx, edx
add ebp, edx
mov edx, eax
sub edx, ecx
movzx edx, byte [esi + ecx - 0x747fff01]
neg ax
dec cx
lea esi, [ecx + esi - 0x747ffeff]
adc eax, 0xc9b22ba8
xor dl, bl
push ecx
push ecx
neg byte [esp + ecx - 0x747ffefb]
xor dl, 0xaa
and cl, ah
not dl
neg eax
cwde
adc ecx, dword [esp + ecx - 0x747ffefe]
neg dl
not byte [esp + ecx - 0x75807379]
shr dword [esp + ecx - 0x7580737c], 0x82
sets cl
ror dl, 1
btr eax, 0x12
pop ecx
shr ecx, 0x4e
xor dl, cl
neg byte [esp + ecx*2 - 0x3a3fc]
sbb dl, 0x92
shr cl, 0x44
and al, ch
sub byte [esp + ecx - 0x1d10c], al
xor bl, dl
pop ecx
add edx, esp
or ax, 0x253f
or eax, ecx
not cx
mov ax, word [edx + ecx*2 - 0x24427f7e]
lea edi, [edi + ecx - 0x12213fc1]
mov word [edi + ecx*4 - 0x4884fefc], ax
ja 0x4e4eff
rol dl, 0x87
ror dx, 0xca
lea eax, [edx + eax - 0x223323c9]
xor cl, dl
ror eax, 3
rol cx, 0xef
xor dx, dx
rol dl, 0xa6
lea eax, [eax + edx*4 - 0x1005b002]
neg dx
xor eax, 0xe5031826
lea ecx, [edx*8 + 0x6f0fb4af]
xchg edx, ecx
lea eax, [ecx + eax - 0x5e802bbf]
xor cx, dx
bt edx, 0xab
push ecx
xor ebx, eax
push ecx
rol dword [esp + ecx - 0xb4ab], cl
dec ecx
adc ebp, eax
shl byte [esp + ecx - 0xb4ad], 0x86
sar dword [esp + ecx*4 - 0x2d2b6], 0xd6
movsx eax, cx
movzx ax, byte [edi + ecx - 0xb4ae]
adc byte [esp + ecx - 0xb4a8], 0x20
and byte [esp + ecx*2 - 0x16956], 0x81
mov cl, byte [edi + edx - 0x6f0fb4ad]
jge 0x4470b8
sal byte [esp + 4], 0x83
mov dword [edx], eax
movzx edx, word [esp + 4]
push ecx
shr byte [esp + edx*2], 0x63
mov dword [esp + edx*2], esi
ret 8
inc word [esp + 1]
dec dl
sbb eax, 0xf4152a01
xor ebx, eax
shr dword [esp], cl
not cl
add ebp, eax
pop ecx
inc cx
jmp ebp
jnp fcn.004591d1
lea ecx, [ecx + eax - 0x459f640d]
sbb dl, al
mul dl
sar eax, 0xfd
rol ecx, 1
xadd eax, edx
sbb ecx, 0xe19eaabd
bt eax, 0xb4
jb 0x48f6af
xor ebx, ecx
jmp 0x447b0a