Function at 0x421c71
Capabilities:
Encode data using base64
Manually build aes constants

Disassembly:
or edx, eax
mov dword [esi], edx
movsx edx, cx
mov ecx, dword [edi]
call fcn.00477dc1
ror byte [esp + 3], 1
adc esi, 4
xor ecx, ebx
ror ecx, 2
neg dword [esp]
and word [esp + 5], dx
sbb ecx, 0x763be234
movzx eax, dx
not ecx
not edx
neg ecx
xor ebx, ecx
xor ax, word [esp + eax - 0x2628]
adc ebp, ecx
ror dx, 0x2c
mov dword [esp + edx - 0x49419d4d], ebp
ret 4
ror ax, 1
xor dx, dx
inc edx
adc ecx, dword [esp]
sub ax, dx
shr cx, 0x8c
push ecx
push edx
xor bx, ax
bts edx, ecx
call fcn.0047fba8
bswap eax
neg eax
xor ebx, eax
lea ecx, [ecx + edx + 0x210739b]
add edi, eax
xor edx, edi
jmp edx
adc edx, 0x2d3cb62b
bt cx, 0xa6
xor ebx, edx
bt ax, cx
xadd eax, ecx
add esi, edx
cdq
not eax
rol al, 7
jb fcn.0048f31b
mov ecx, 0xd8b02f8b
movsx edx, cl
mov ax, word [esi]
ror ecx, cl
setae dl
inc ecx
mov cl, byte [esi + 2]
adc esi, 1
and edx, edx
adc edx, 0xf417c538
not dl
shr ax, cl
dec dl
mov word [esi], ax
movsx eax, dx
call fcn.0045eef1
shr edx, 0xe4
lea ebp, [ebp + edx*2 - 0xcf4]
xor ecx, ebx
cbw
xor ecx, 0x69aee323
shr eax, 0x2c
dec ecx
xor edx, edx
bts ax, dx
neg ecx
rol edx, 0xd
jae 0x494bff
xor ax, 0xdb9b
rol ax, 1
xadd dword [esp + ecx - 0x3fffff03], edx
or dword [esp + ecx - 0x3fffff03], edx
xor ecx, dword [esp + ecx - 0x3fffff03]
sbb ax, 0x10a9
and cl, 0xa9
jae 0x4cf308
mov dx, word [eax + ecx*2 - 0x6acbde6c]
call fcn.004be5ef
mov eax, 0x73360e02
push eax
mul byte [esp + eax - 0x73360e01]
mov ecx, dword [edi + eax - 0x7336001c]
movsx edx, word [esp + eax - 0x7336001c]
ror byte [esp + eax - 0x7336001a], 0x63
rol edx, 0x91
mov edx, dword [eax + edi - 0x73360018]
jb 0x42c065
lea edi, [edi + eax - 0x73360018]
bswap eax
ror eax, 0x42
and eax, dword [esp]
not ecx
not edx
setno al
cbw
jg 0x45e2d3
bts edx, ecx
sbb al, 0x94
sar edx, 0x9a
shl dx, 0xcb
neg al
sar dx, 0x86
btr dx, cx
setae cl
adc al, 0x1b
xor bl, al
sar cl, cl
add eax, esp
mov cx, word [eax + ecx - 0x82f8700]
or dx, 0x58b4
mov eax, 0x43924bab
lea edi, [edi + eax - 0x43924bad]
mov word [eax + edi - 0x43924bab], cx
sub eax, eax
lea ecx, [eax*8 - 0x27d88e75]
cwde
mov edx, dword [ebp + eax*4]
inc cx
sar ax, cl
lea ebp, [ebp + eax*2 + 4]
adc eax, ecx
xor edx, ebx
xor eax, ecx
bswap edx
add eax, ecx
sbb edx, 0x6f2f769c
inc eax
bswap edx
sar al, 0x26
jae 0x480ee4
sar cl, cl
btc eax, eax
call fcn.0047411e
mov ecx, 0xb188e7a3
mov eax, dword [edi]
movsx edx, cx
and dx, cx
movzx cx, byte ss:[eax]
mov eax, edx
call fcn.00454797
setne al
not edx
sbb ax, ax
jl 0x41ff06
or al, ah
lea ecx, [ecx + edx + 0x287ee69]
mul eax
not ecx
mul eax
and dl, byte [esp + edx - 0x52aff57b]
mul ax
lea ecx, [ecx + edx + 0x60ea5005]
ror ax, 0x2c
idiv byte [esp + edx - 0x52afc419]
neg ecx
call fcn.00421dc5
lea esi, [esi + eax*2 - 0x68c94024]
js 0x4a5598
jmp 0x4bd0b0
dec ecx
xchg ch, cl
add al, 0x1f
ror al, 1
add al, 0x96
xor bl, al
add eax, esp
inc ecx
mov word [eax], dx
mov edx, ecx
mov ecx, dword [edi]
je 0x43ebb7
lea eax, [edx + edx*2 + 0x19acfb36]
add dx, dx
adc edi, 3
cwde
dec dl
or dl, dl
xor ecx, ebx
dec ax
sub dl, al
call fcn.0048b0fb
and ecx, edx
movsx edx, ax
mov dword [edx + edi - 1], ecx
mov ecx, dword [eax + esi - 0x43000001]
xadd dword [esp + edx*2 - 2], eax
call fcn.004afc0f
sbb cl, 0xaf
xor edx, 0x7227a33c
neg ax
jl 0x433fa3
mov dx, word [esi]
add esi, 2
mov ecx, 0x49b0caab
movzx eax, byte [edi + ecx - 0x49b0caab]
lea edi, [ecx + edi - 0x49b0caaa]
and ecx, 0x89a2ccae
inc ecx
ror ecx, 0xf8
xor al, bl
add cl, 0xa5
btr cx, cx
rol al, 1
jmp 0x45c864
lea eax, [edx*8 - 0x27782bc8]
ror ecx, 1
jmp 0x495a0c
dec dx
lea ecx, [edx + ecx - 0x452e4a34]
inc dl
call fcn.004b4290
shr dl, 0x61
mov dx, word [edi]
mov eax, 0x8290d6b6
mov ecx, 0x443dbfa6
mov ax, word [ecx + edi - 0x443dbfa4]
rol ecx, 0x59
bts cx, 0x9c
mov cl, byte [edi + ecx - 0x4c887b7b]
call fcn.0040ee4f
not cx
not dx
push eax
shr eax, 0xca
or dword [esp + eax - 0xd1928], eax
and cx, dx
movsx edx, al
xor dword [esp + eax*8 - 0x68c940], eax
mov word [esi + eax*2 - 0x1a3250], cx
movzx ecx, word [esp + eax - 0xd1928]
mov eax, dword [ecx + edi - 0xa013]
jl 0x4a0116
bt ecx, ecx
lea edi, [edi + edx*8 - 0x13c]
sar dword [esp + ecx*8 - 0x50098], 0x4d
xor dx, dx
xor eax, ebx
bswap eax
not edx
xor eax, 0x90305f2e
xadd dword [esp + ecx*8 - 0x50098], ecx
btr ecx, ecx
shl cl, cl
xor eax, edx
shr dword [esp + ecx*8 - 0xd1d00], 0xe8
mov dword [esp + ecx - 0x1a3a0], 0x872eafb9
bswap eax
btc edx, 0xf
shl edx, 0x41
xor ebx, eax
pop ecx
add ebp, eax
jmp ebp
mov ecx, 0xc9365c8e
mov edx, dword [esi]
mov eax, dword [esi + 4]
add esi, 4
shl ecx, 0x29
push ecx
xor cx, 0xeb5
not edx
not ecx
sar dword [esp], 0xb0
not eax
jne 0x406eb5
mov cl, byte [edi + 2]
mov dword [esp], 0x57386603
add edi, 2
inc dword [esp]
mov eax, dword [esp]
dec ax
shr dx, cl
sub dword [esp + eax - 0x57386603], eax
lea ecx, [eax*4 + 0x399617b5]
mov word [eax + edi - 0x57386603], dx
mov edx, dword [esi + eax - 0x57386603]
lea esi, [esi + eax - 0x573865ff]
shr word [esp + eax - 0x57386602], cl
xchg word [esp + eax - 0x57386603], cx
xor edx, ebx
pop ecx
inc eax
and ecx, 0x94bcfe82
lea edx, [edx + ecx - 0x1a8c9e1e]
jae 0x48d5b7
jne 0x409a66