Function at 0x103d9170
Capabilities:
Encode data using base64

Disassembly:
sbb ebp, 0xfffffffc
shr ecx, 0x9b
xor edx, ebx
ror edx, 3
xadd ecx, eax
btr ecx, 0x1f
dec edx
jmp 0x103e3597
adc edi, 1
xor cl, bl
movsx eax, dx
inc edx
cwd
not cl
neg ax
shl eax, 0x84
xor cl, 0x27
ror cl, 1
not cl
cbw
dec edx
add cl, 0x3e
jmp 0x104259d8
inc byte [esp + eax - 0x73712ff2]
mov dword [ebp + eax - 0x73712fef], ecx
mov dword [ebp + eax - 0x73712ff3], edx
push eax
movsx edx, ax
movzx ecx, word [esp + eax - 0x73712ff3]
mov ebx, dword [esp + edx*4 - 0xbfc4]
pop edx
pop eax
pop eax
js fcn.1044af2a
movzx ecx, byte [edi]
mov edx, 0x9e127a3a
or dl, dl
jns 0x10352b6d
xor ecx, ebx
push eax
lea ecx, [ecx + edx*8 + 0x7f057057]
xor ecx, 0xe294d014
dec dword [esp + eax*8 - 0x1b0b0]
sub eax, dword [esp + eax - 0x3616]
neg dword [esp + eax*2 - 2]
bswap ecx
je 0x103a510f
pop edx
add ecx, eax
ror ecx, 1
mov dword [esp + eax - 1], eax
xchg dword [esp + eax*4 - 4], eax
bswap ecx
xor edx, 0x3495df08
pop edx
xor ebx, ecx
dec eax
bts eax, 0xb6
adc esi, ecx
mov ecx, edx
mov eax, dword [eax + ebp - 0x400000]
xor edx, 0x9bafbe13
add ecx, edx
and edx, 0x7cb97f13
mov edx, dword [edx + ebp - 0x18a93e0e]
sar ecx, 0xe1
imul ecx, ecx
xchg ch, cl
and eax, edx
imul cx, cx
not eax
mov edx, 0x8f3f4783
mov dword [ebp + 4], eax
bswap edx
mov eax, 0x84255288
rol cl, 0xc2
mov ecx, dword [ebp + 4]
rol dl, 0x27
inc edx
adc ebp, 7
bts eax, edx
lea edx, [edx*8 - 0x60ce3cf9]
movzx edx, byte [edi + 4]
adc edi, 5
jmp 0x1043b88b
cwde
not edx
sub ax, ax
inc edx
sub cl, ch
sar eax, cl
push ecx
xor ebx, edx
bt ecx, eax
sub ecx, 0xc33ad398
neg cl
add esi, edx
mov dword [esp + eax], esi
ret
xor cl, 0x9d
cdq
sal al, 0x27
inc cl
xor bl, cl
inc al
add edx, eax
adc ecx, esp
bt dx, 0x24
mov al, byte [ecx + edx*2 - 0x100002]
lea esi, [esi + edx*2 - 0x100004]
lea ecx, [edx*4 + 0x3d312892]
mov word [edx + esi - 0x80001], ax
push edx
movsx eax, dl
mov edx, dword [edi + edx*4 - 0x200004]
and eax, 0xbf0a5b8e
sar al, 0x45
lea eax, [ecx - 0xaeb40ee]
lea edi, [eax + edi - 0x3265e7a4]
add cx, cx
neg ax
xor edx, ebx
btc eax, ecx
jae 0x104326a4
dec eax
sbb edx, 0x93175a1e
not edx
inc edx
xor dword [esp + ecx*2 - 0x7aa2a258], ecx
imul cx, cx
sub dword [esp + ecx - 0x3d51df90], 0x433c7802
bswap edx
shr dword [esp + ecx - 0x3d51df90], cl
rol edx, 3
and al, 0x83
and ecx, dword [esp + ecx - 0x3d51df90]
dec byte [esp + ecx*8 - 0x6d080]
xor ebx, edx
add ebp, edx
pop eax
shr ecx, 0x10
inc ecx
jne fcn.10440eae
call fcn.10476a3c
mov ecx, 0x5388ecb4
dec eax
lea ebp, [ebp + ecx - 0x5388ecb8]
inc esp
movsx esp, cx
inc esp
mov edx, dword [ecx + ebp - 0x5388ecb4]
inc ecx
movzx eax, sp
inc ebp
xor edx, ecx
inc ecx
movsx edi, sp
inc ebp
movzx ebp, sp
dec eax
cdq
inc ecx
not edx
movzx esi, di
call fcn.102c8f2b
inc al
ror ax, 0x6a
xor dl, bl
shr ax, 0x28
not dl
ror ax, 0xed
bts ax, 0x9d
ror ax, 0xc
dec dl
not al
cwde
btc ax, ax
neg dl
cwde
not al
ror dl, 1
sub eax, eax
xor dl, 0x34
neg dl
cwde
shr ax, 0xc7
neg eax
sbb dl, 0x1d
or eax, 0x3b9e428a
neg al
cwde
xor bl, dl
xor ax, ax
shl al, 0x46
adc edx, esp
bts eax, 0xb
cwde
ror eax, 0x44
mov dword [edx + eax - 0x80], ecx
mov edx, 0xd62c950b
call fcn.102e2d07
mov eax, dword [edi]
mov edx, 0x60b1fa00
mov edx, dword [edx + edi - 0x60b1f9fc]
mov ecx, 0x84a6a6b8
add eax, edx
mov edx, eax
mov eax, dword [edx]
mov dword [edi + 4], eax
movsx eax, cx
dec cl
btc eax, eax
adc edi, 3
mov edx, eax
bts cx, dx
dec eax
mov edx, dword [ebp]
jp 0x10349c2e
sbb dword [esp + esi*8 - 0x32], ecx
push ds
mov bh, 0x98
push ebp
popal
imul byte [eax]
scasd eax, dword es:[edi]
cwde
push ebp
popal
push ds
push ss
jecxz 0x1043b8d4
push ebp
popal
mov edx, 0x15b28372
outsd dx, dword [esi]
cmp eax, 0x8a56468f
inc ebp
xchg ecx, eax
outsb dx, byte cs:[esi]
rcr byte [ebp + 0x19], 0x32
jno 0x1043b93a
sar dword [eax + edx*4 + 0x6d], 1
adc byte [edi + 0x72], dh
iretd