Function at 0x43be6a
Capabilities:
Encode data using base64

Disassembly:
neg eax
inc dword [esp]
jge 0x47ff4b
call fcn.004599a2
add dword [esp + 3], eax
xor ebx, edx
add edi, edx
or dword [esp + 4], eax
pop eax
adc ax, word [esp + 2]
movzx ecx, byte [ebp]
adc ebp, 0
movzx edx, ax
or dword [esp + edx - 0xd01], eax
xor cl, bl
inc word [esp + edx - 0xd00]
xchg dword [esp + edx - 0xd01], edx
add cl, al
neg cl
jmp 0x441052
mov dword [esp + eax*2 - 0x47902964], eax
lea esi, [esi + eax*2 - 0x4790295c]
ror eax, 0xbd
bt ax, ax
mov dword [ecx + eax - 0x1e40a591], edx
jb 0x4214fd
sub eax, eax
setp al
lea ebp, [ebp + eax - 5]
mov eax, dword [eax + ebp - 1]
mov edx, 0x7baf8934
xor eax, ebx
ror eax, 1
lea ecx, [edx + edx*2 + 0x4b2f77b6]
lea edx, [edx*2 - 0x5946fc54]
jmp 0x4339af
xor cl, 0x3d
add cl, 0x2b
rol cl, 1
shl dword [esp], 0xbe
xor bl, cl
xchg byte [esp + 1], al
lea ecx, [esp + ecx + 4]
inc dl
movzx dx, byte [ecx]
lea ecx, [eax*2 - 0x5e673fe1]
push eax
sub esi, 2
xchg cl, al
bts ecx, ecx
xor al, ch
mov word [esi], dx
mov edx, dword [esp + 1]
call fcn.00437bd0
bt cx, 0x86
neg dl
sar dword [esp + eax - 0x65f48061], cl
not eax
xor bl, dl
pop ecx
mov word [esp + 4], cx
xadd byte [esp + 2], al
lea edx, [esp + edx + 8]
xchg cl, al
push eax
add dword [esp], 0x940a8ebc
mov cx, word [edx]
btr ax, ax
sbb edi, 1
mov word [edi], cx
pop ecx
pop eax
pop edx
jmp fcn.00425fbc
xadd byte [esp + ecx*8 - 0x27b5], ch
adc edi, eax
mov dword [esp + ecx - 0xf7], edi
ret
or ax, 0xae35
dec cl
add eax, eax
not cl
xor bl, cl
jmp 0x478e39
adc edx, esp
neg ecx
adc cl, 0x30
cbw
mov ax, word [eax + edx - 0x75ffffcc]
lea esi, [esi + ecx - 0x7674561c]
movzx edx, cx
shl ecx, 0xa8
mov word [esi + edx - 0x561a], ax
mov ecx, dword [ebp + ecx - 0x74561a00]
lea eax, [edx + edx*8 + 0x37b9a08f]
lea ebp, [edx + ebp - 0x5616]
cdq
lea edx, [edx*4 - 0xb7f51f1]
shl dl, 0x64
xor ecx, ebx
xor ecx, 0x77099597
neg edx
sbb ecx, 0xc1149338
rol eax, 0x2d
push eax
call fcn.004d3872
mov edx, 0x34331804
lea edx, [edx + edx*8 - 0x76c3b975]
lea esi, [esi + edx - 0x5f081eb3]
lea ecx, [edx*4 - 0x7dd2c572]
not cx
mov eax, 0xb41b5004
mov ecx, dword [esi + edx - 0x5f081eaf]
xor ecx, ebx
sub edx, edx
btr ax, 0x27
lea ecx, [ecx + edx*2 - 0x39104d94]
push eax
mov dword [esp + edx*4], edx
push eax
rol ecx, 3
shl word [esp + edx*2 + 1], 0xaf
sub eax, dword [esp + edx + 2]
not dword [esp + edx*2 + 4]
not ecx
shl edx, 0xd8
lea edx, [edx*4 + 0x333e5d30]
rol byte [esp + edx - 0x333e5d29], 0x81
xor ecx, 0xe91b7a2d
shr eax, 0x57
xor ebx, ecx
call fcn.004bd10f
xor ebx, ecx
cwde
bswap edx
add ebp, ecx
bswap eax
jmp ebp
and eax, eax
adc ecx, esp
sar ax, 0x6d
div al
dec al
mov word [ecx], dx
jmp edi
inc edx
and al, ah
cbw
bswap edx
bt eax, ecx
bswap eax
xor ebx, edx
not dword [esp + eax*4 - 0x80000000]
pop eax
add edi, edx
mov dx, word [eax + ebp - 0x1d8ed33d]
inc ecx
btc ecx, 0x18
xor eax, 0xb0a96f23
adc ebp, 2
sub esi, 1
shr ax, cl
movzx ecx, byte [esi]
xor cl, bl
bswap eax
neg al
rol cl, 1
add ax, ax
bts eax, 0x8e
sbb eax, eax
xor cl, 0x33
neg ax
jge 0x46473a
mov edx, 0xed0dba82
mov edx, dword [esi]
mov ecx, dword [esi + 4]
mov eax, 0x7c9eb63a
or eax, eax
cbw
lea esi, [esi + eax - 0x7c9e0036]
call fcn.004c7497
inc eax
or cl, dh
or dword [esp + 3], 0xe4be16a9
ror eax, 3
shl edx, 0x11
jp 0x497253
inc dx
lea eax, [eax + edx + 0xa23caec]
push ecx
jae 0x4c4b47
ror eax, 1
ror cx, 0xce
xor ebx, eax
push edx
add edi, eax
neg word [esp + edx - 0x23957da3]
mov dword [esp + edx - 0x23957da5], edi
ret 0x10
xor ebx, eax
lea edx, [ecx + edx*2 - 0x434e09d9]
add edi, eax
pop ecx
pop edx
jmp edi
sar cl, 0xe3
jae 0x47aac2
lea ecx, [esp + ecx + 8]
ror byte [esp + edx - 0x5b269041], 0x43
cmovae edx, dword [esp + edx - 0x5b26903f]
movzx dx, byte [eax + ecx - 0x5b229010]
cwde
movzx ecx, ax
adc ax, word [esp + ecx*2 - 0x1201c]
lea ebp, [ebp + ecx*4 - 0x24042]
shr al, 0xa1
dec dword [esp + ecx*2 - 0x12020]
mov word [ebp + ecx*8 - 0x48080], dx
sbb dword [esp + ecx*8 - 0x4807c], eax
cdq
pop edx
pop ecx
jnp fcn.004e3209
lea ecx, [eax + eax*2 + 0x4698bb37]
ror ecx, 0x67
xor dl, 0xb4
ror ecx, cl
adc dl, 1
xor bl, dl
shr cl, 0x83
jne 0x468766
rol cl, 0x26
mov edx, dword [esi]
bswap ecx
ror cx, 0x43
sal eax, cl
xor edx, ebx
inc ecx
dec edx
lea eax, [ecx + eax*4 + 0x5d13b738]
neg ecx
xor al, ah
neg edx
inc cl
not edx
dec edx
sub cl, cl
and cl, ch
xor ebx, edx
xchg ah, cl
xchg cx, ax
sub cx, ax
add ebp, edx
not cx
bt eax, eax
bswap ecx
lea esi, [ecx + esi - 0xa6a0674]
movzx edx, byte [esi + ecx*8 - 0x53503398]
rol ecx, 0xf1
xor dl, bl
bt ecx, eax
sbb dl, 0x3f
lea ecx, [eax + eax*4 + 0x339b1abd]
xor cl, 0xba
neg dl
not dl
and ax, 0x6539
ror eax, 0x26
ror dl, 1
bswap eax
xor bl, dl
add edx, esp
neg al
movzx ax, byte [edx + ecx - 0x35de2e84]
call fcn.004dc053
movsx edx, cx
jmp edi
mov eax, 0x62a3d63d
mov edx, dword [ebp + eax - 0x62a3d63d]
movsx ecx, ax
mov eax, dword ss:[edx + eax - 0x62a3d63d]
xchg ch, cl
push ecx
mov dword [ebp], eax
sub esi, 4
or word [esp + 2], 0xd811
movzx eax, byte [esp]
mov eax, dword [esi + eax - 0xd6]
dec cl
lea edx, [ecx + ecx*2 + 0x1ba116a7]
neg dx
xor eax, ebx
shl ecx, cl
sal edx, 0xce
rol eax, 1
bts cx, dx
btc edx, ecx
neg eax
rol word [esp + 1], 0xca
or dword [esp], 0xf6b27730
lea eax, [eax + ecx - 0x5eeeef6]
sub cl, 0x1a
shr dword [esp], 0xf5
and ecx, ecx
rol eax, 3
ror ecx, 0x7b
xor ebx, eax
and ecx, dword [esp + ecx - 0x54001cf7]
ja 0x4427d7
inc eax
sub dx, 0xda1c
shl dword [esp + ecx - 0x5a3c4943], 0xa3
neg eax
push ecx
xor ebx, eax
pop ecx
call fcn.004c68dd
mov eax, 0x98932025
push eax
shr dword [esp], 0x86
mov edx, dword [ebp]
mov ecx, dword [esp]
movzx cx, byte ss:[edx + ecx*4 - 0x9893200]
setns al
adc ebp, 1
movsx edx, al
call fcn.0042e0c7
shrd ax, dx, cl
mov word [esi], ax
sub edi, 4
mov ecx, dword [edi]
mov eax, 0xe823a83c
lea edx, [eax*2 - 0x2ecb206c]
xor ecx, ebx
dec edx
sub ecx, 0x1f064682
or dx, ax
neg edx
neg ecx
sub dx, dx
dec edx
cwd
rol ecx, 3
btr dx, ax
dec dx
mul ax
neg ecx
xor ecx, 0xa08ab330
imul al
jo 0x46a099
lea edx, [edx + eax*8 - 0x189b8694]
push ecx
not edx
inc word [esp + eax*2 - 0x1683e]
shl cx, 8
sub dword [esp + eax*2 - 0x16840], 0x8b36d33d
inc edx
rol edx, 1
ror cx, 0xf
adc ecx, 0xf78b8309
adc word [esp + eax - 0xb41e], cx
xor edx, 0xbe979c23
jmp 0x4b0eac