Function at 0x102248f6
Capabilities:
Encode data using base64

Disassembly:
xor word [esp + edx*4 - 0x67], 0x8a3a
pop eax
pop ecx
pop eax
jne fcn.101ad508
dec eax
ror esi, cl
jae 0x10230e38
lea ebp, [ebp + edi*2 + 0x43c73389]
jge 0x1006e124
or edi, edi
or edi, edi
xor dword [esp + edi + 0x420cf5b5], edi
jae 0x10182399
mov dx, word [ecx + ebp - 0x1a026593]
lea ebp, [ebp + ecx*2 - 0x3404cb28]
ror cx, 2
or ax, dx
movzx edx, cx
jmp 0x10337260
mov ax, word [ebp + 4]
add ebp, 6
mov word [edx], ax
mov ecx, 0x8a219b25
mov edx, ecx
mov edx, dword [edi]
mov eax, ecx
lea ecx, [eax*8 + 0x889b53e]
lea edi, [edi + ecx - 0x59968e62]
sal al, cl
push ecx
xchg ecx, eax
xor edx, ebx
call fcn.103af271
xor cx, dx
adc esi, eax
lea eax, [edx + edx*4 + 0x1f1723a8]
mov dword [esp + edx*2], esi
ret
jno 0x1052ebe3
not ecx
xor dl, dl
shr edx, 0xb4
or eax, ecx
movsx ecx, dl
mov dword [ebp + edx - 0xc00], eax
lea edi, [edx + edi - 0xc04]
mov edx, dword [edi + ecx*8]
xor edx, ebx
and cl, cl
rol ecx, 0xef
je 0x101873d5
jno 0x1034784f
xor ecx, ebx
lea ecx, [ecx + edx*2 - 0x47d1e3ad]
bswap ecx
movzx eax, dl
call fcn.106509c4
lea ecx, [ecx + edx*8 + 0x409a97b2]
not eax
inc dx
rol dword [esp + ecx - 0x23aa97aa], 0x2e
xor ebx, eax
shl dx, 0x4b
not word [esp + ecx - 0x23aa97a8]
adc esi, eax
call fcn.10316e3e
dec esp
mov dword [esp + esi - 0x90], edx
dec eax
mov dword [esp + esi - 0x98], ebx
ret 8
not edx
jae 0x104194a9
add esi, 6
shrd eax, edx, cl
mov dword [esi], eax
mov eax, dword [ebp]
pop edx
add ebp, 4
xor eax, ebx
mov edx, 0xe6127c07
xor eax, 0xfc906e00
push edx
not dword [esp]
shr dword [esp], 0x53
ror eax, 1
inc word [esp + 1]
dec eax
rol eax, 1
xchg byte [esp], dl
not eax
xor ebx, eax
sal byte [esp + 2], 0xa3
adc edi, eax
xchg dword [esp], edx
movsx eax, word [esp + edx*2 - 0x80e]
mov dword [esp + edx - 0x407], edi
ret
sub ecx, ecx
shl ecx, 0x14
not cx
bswap ecx
lea esi, [esi + ecx + 0x390558b4]
call fcn.1032374c
mov ecx, 0xb61ce015
sub edi, 4
movzx eax, cl
lea eax, [ecx + ecx*4 + 0x2c2251aa]
mov ecx, dword [edi]
movzx edx, al
sar edx, 1
xor ecx, ebx
shr dx, 0x2f
push eax
inc ecx
shr dl, 0x61
ror al, 0x44
xor ecx, 0x92254413
lea ecx, [ecx + edx*2 - 0x258ef90b]
shl dword [esp + edx*4], 0xca
bswap ecx
neg al
xor ebx, ecx
mov dword [esp + edx*4], eax
add esi, ecx
mov ecx, edx
jmp 0x10583268
mov edx, ecx
xor eax, ebx
ror dword [esp + ecx - 0x5e860101], cl
call fcn.10527d45
mov ax, word [ebp]
mov ecx, 0x1a026595
lea edx, [ecx + ecx*8 + 0x519b0720]
jmp 0x10102987
movsx eax, dl
jns fcn.1031df4e
inc dword [esp]
sal dword [esp], 0xe7
adc ecx, 0x6d3950af
pop eax
xor ecx, 0xf11ab93c
bswap ecx
add ax, ax
not ecx
xor ebx, ecx
mov dword [esp], eax
push eax
xor eax, eax
adc edi, ecx
add eax, dword [ebp + eax]
mov ecx, dword [esp + 4]
mov ecx, dword [ebp + 4]
shl dword [esp + 1], 0xf
add ebp, 4
inc dword [esp + 3]
xor edx, edx
test ecx, ecx
lea esp, [esp + 8]
je 0x1051bf99
push 0x8c1df93f
jmp 0x10322d85
test word [esp + edi + 0x420cf5b1], 0x5e90
jae 0x100642c2
lea edi, [edi + ebx - 0x71f519ea]
and word [esp + 0x14], 0x220
cmp word [esp + 0x14], 0x7534
ja 0x101bbe2e
mov dword [esp + 0xc], ebx
je fcn.1023675c
sub word [esp + 0xc], 0x17ad
cmp bx, word [esp + 0xe]
call fcn.1067b215
mov ecx, 0x5e860101
mov dl, byte [esi + ecx - 0x5e860101]
jmp 0x10435052
dec esp
mov esp, dword [esp + esi*2 - 0x4a]
jb 0x10352587
inc ebp
movzx eax, dl
dec eax
arpl ax, ax
dec eax
adc ebx, eax
mov ecx, dword [esi + ebp - 0x29]
dec ebx
lea edi, [eax + eax*2 - 0x36f88f5]
inc cx
neg eax
mov esi, dword [ebp + esi*2 - 0x4e]
mov eax, 0xfd058c80
inc cx
dec ebx
inc ecx
pop ebp
dec eax
lea ebp, [ebp + edx*4 - 0x14a40]
neg dl
not ecx
dec eax
mov dword [esp + edx*8 - 0x29378], 0x70cc6b8
not di
dec edi
lea edi, [eax + ebp*8 - 0x33ce4271]
not esi
jae 0x106cb05a
xadd dword [esp + edx - 0x526f], edx
or ecx, esi
pop eax
dec ebp
xor edi, ebp
mov dword [ebp + edx*2 - 0xe198d70], ecx
jmp ebx
sar ax, 0x85
not edx
call fcn.102f7715
je 0x101f8a56
mov word [edi + edx - 0x2c0154c8], ax
jbe 0x101e34eb
dec esp
lea ebx, [edx + esi - 0x136878f5]
dec edx
mov dword [esp + ebp + 0x35ee], ebx
ret 0x18
xor ebx, eax
neg word [esp + 3]
add edi, eax
lea ecx, [edx - 0x6f43b7e8]
push ecx
pop ecx
pop ecx
pop ecx
jmp edi
xor esi, edx
push 0x22863a13
and esi, 0xff
mov esi, dword [esi*4 + 0x101932c0]
shr edx, 8
jmp 0x1033dc50
mov eax, 0xa4b6d983
call fcn.102efa16
call fcn.1006e112
inc ecx
pop edi
inc ecx
pop esi
inc ecx
pop esi
jmp fcn.102e94b3
ror edx, 3
lea edx, [edx + ecx*4 + 0x7500143e]
jmp 0x10392926
not dword [esp]
mov dword [esp], esi
mov esi, 0xf8b17090
shl esi, 0x1b
movzx esi, byte [esi + eax - 0x80000000]
jae 0x102741d6
dec ebx
push 0xff9eb406
push 0xb68f1f0f
lea esp, [esp + 8]
jne 0x102a6efe
mov eax, 0xeea0e926
bswap eax
mov eax, dword [ebp + eax*2 - 0x4dd341dc]
call fcn.101417e1
mov edx, 0x1905fe88
jmp 0x106da7a1
call fcn.10423732
jmp 0x102e93b6
sar dword [esp], 0x9d
xor edx, esi
call fcn.1064171f
dec eax
arpl dx, dx
dec eax
add ebx, edx
jmp 0x10184b0c
inc ecx
not ebp
inc ecx
xor ebp, 0xab1ecb90
dec esp
mov dword [esp + 8], esp
inc ecx
push eax
ror word [esp + 1], 0xe4
inc esp
xor dword [esp + 0x10], ebp
dec esp
mov esp, dword [esp + 0x10]
dec ebp
arpl bp, bp
dec esp
lea edx, [edi*2 - 0x18eaf2d5]
dec ecx
add ebx, ebp
jmp 0x102ddcb4
neg edx
shr cl, 0xc1
jno 0x1000c160
rol edx, 2
inc edx
jmp 0x1023dde0
call fcn.105740fa
lea eax, [ecx + ecx*2 + 0x5e32d20e]
and al, ah
movzx ax, byte [eax + esi - 0x79c4d50f]
jbe 0x10255131
and cl, 0x29
lea esi, [esi + ecx - 0x5e8600ff]
imul dl
and cx, cx
mov word [esi + ecx - 0x5e860101], ax
lea edi, [edi + ecx - 0x5e860105]
push ecx
mov eax, dword [edi + ecx - 0x5e860101]
jge 0x101d89af
not edx
mov dword [ebp], edx
mov edx, 0x71bc0e81
neg dl
lea ecx, [edx + edx*2 + 0x1b25239d]
jmp edi
xchg dword [esp + edi + 0x420cf5c1], ebp
mov edi, dword [esp + edi + 0x420cf5bd]
xor byte [esp + 0x10], 0xb3
sub dword [esp + 0x10], 0xd5314a84
cmp dword [esp + 0xc], 0xc12955b0
not byte [esp + 0x10]
je 0x106b4c61
sub dword [esp + 0x10], 0x19ace826
shl word [esp + 0x10], 0x4b
not dword [esp + 0x10]
cmp dword [esp + 0xc], 0x972ba83c
push dword [esp + 0x14]
popfd
lea esp, [esp + 0x1c]
ret
mov eax, dword [0x8156efd5]
test byte [eax + ecx*2 - 0x38dfe6d0], dh
ljmp 0x2444
call fcn.10299979
das
adc eax, 0xbf9d2cd8
jo 0x10583217
invalid
lea ebx, [ebx + edi - 0x7b3bf79a]
add dword [esp + ebp + 0xe4faf4c], 0xefcda8e5
or edi, 0x15aa78a5
call fcn.100183ec
mov ecx, 0x3921e09c
lea edi, [edi + ecx - 0x3921e0a0]
movsx edx, cx
mov eax, dword [edi + ecx - 0x3921e09c]
add cx, 0x1b86
xor eax, ebx
call fcn.1029644e
add edi, eax
call fcn.105c5c83
jnp fcn.102e94b3
mov edx, dword [ebp + edx - 0x1905fe88]
jmp 0x1017ae22