Function at 0xbac5d0
Capabilities:
Encode data using base64
Encrypt data using speck
Parse credit card information

Disassembly:
lea esi, [esi + edx*4 - 0x4c002]
add edx, 0x841c2e15
sal dl, 0xa3
dec edx
mov byte es:[ecx], al
lea ecx, [edx*8 - 0x55d2244c]
not byte [esp + 1]
not byte [esp + 1]
pop eax
jmp edi
bswap ecx
shl dword [esp + 7], 0x37
ja 0x80ef15
sub dl, al
or al, al
bts eax, 0x94
rol dl, 1
xor dl, 0xbb
sub dl, al
ror ax, 0x86
xor bl, dl
btc eax, eax
push ebp
btr eax, eax
push edi
push ebx
mov ebp, esi
mov ebx, edx
movzx edx, al
inc dx
mov edx, ebx
shl edx, 2
mov eax, ebp
jmp 0x8149f9
bswap ecx
call fcn.00c5f5d7
mov eax, dword [ebp]
not ecx
bts cx, cx
mov edx, ecx
lea ebp, [edx + ebp - 0x5b5980eb]
and dl, dl
not dl
imul edx, edx
xor eax, ebx
push edx
ror byte [esp + ecx - 0x5b5980ed], 0x61
sbb eax, 0xcc18d487
rol eax, 3
inc eax
sub dword [esp + ecx - 0x5b5980ef], ecx
ror eax, 3
lea eax, [ecx + eax - 0x6b925387]
bswap eax
ror cl, 0x21
inc cl
bswap edx
rol eax, 2
shr dword [esp + edx - 0x130ab], 0x62
ja 0xc7542e
mov bl, 0x5f
adc eax, 0xb41e08fb
jl 0x7b09e9
div edi
and dword [esp + eax + 0x21f7f75d], eax
in al, 0xb0
invalid
test dword [esi], edi
push ss
push esp
lodsd eax, dword [esi]
rol byte [ebp - 0x52c3003a], 0xc0
test dword [esi - 0x3f52eb59], edx
test dword [edx], esp
les ebp, [di - 0x7a40]
or al, byte [esi + 0x74]
lodsd eax, dword [esi]
rol byte [ebp - 0x520bd88e], 0xc0
test esi, edi
scasd eax, dword es:[edi]
inc esp
lodsd eax, dword [esi]
rol byte [ebp + 0x190a7f1e], 3
pop esi
dec edx
loope 0x7b0a73
rol byte [ebp - 0x528bb9f6], 0xc0
test dword [edx + 0x27], esi
hlt
ret 0x8418
in al, dx
fadd dword cs:[esi]
mov al, 0xd2
pushal
and al, 0xc1
jb 0x7b0a00
sbb al, 4
aam 8
bound edx, qword [ecx]
and eax, 0xc2440622
mov byte [ecx], bh
adc dword [edi + 0x2d43c721], ebx
xchg dword [esi + ecx], ebp
or eax, 0xad38ec1c
jo 0x7b0b19
loope 0x7b0aaf
ret 0x84d4
jnp 0x7b0ad2
mul byte [esp + ebp*8]
dec edi
fdiv dword [edi + 0x6060b4b0]
rol dword [ecx + 0x4ee], 0
mov ecx, dword [esi]
xor ecx, ebx
xor ecx, 0xbc1e52ae
mov edx, 0x449429aa
inc ecx
or dx, dx
movzx eax, dl
add edx, 0x27800f3b
xor ecx, 0xc32fc416
xor eax, edx
and dx, 0x72a9
sbb ecx, 0x75021417
btc edx, edx
mul eax
bswap ecx
shl dl, 0xa4
xchg edx, eax
xor ebx, ecx
or eax, 0x97aed838
btr eax, edx
sbb ebp, 4
push eax
or al, dl
sbb edx, dword [esp]
mov dword [ebp], ecx
rol edx, 0x9c
pushfd
sbb esi, 4
mov eax, dword [esi]
xor eax, ebx
xchg dword [esp], edx
xchg dword [esp], edx
dec edx
bswap eax
neg eax
mov ecx, edx
add dx, 0xfc05
jle 0x7744f6
neg ecx
sal byte [esp + 8], 2
sbb ecx, 0x612a4eb5
push 0x74b1223b
xor ebx, ecx
push 0x889c4080
shr byte [esp + 0x12], 0x61
mov dword [esp + 8], 0x62239a25
add edi, ecx
lea esp, [esp + 0x14]
jmp 0x86f0d3
call fcn.0078b65e
inc ecx
mov ebx, 0xe2049b30
inc cx
xor ebx, 0x8b4d0f22
stc
jnp fcn.008bf20c
dec esi
lea esi, [ebx*4 - 0x665eec6b]
dec ecx
sbb ecx, 2
mov eax, 0xeeaf7fa5
dec eax
btr eax, eax
inc bp
mov dword [ecx], edi
inc ecx
mov ebp, ebx
dec eax
sbb edi, 4
dec ecx
xor esi, 0x1887750a
mov edx, dword [edi]
mov esi, 0x850af621
inc ecx
xor edx, esp
lea edx, [eax + edx - 0x38890608]
and ebp, eax
xor edx, 0xa126d481
inc esp
movzx edx, si
inc eax
movsx ecx, dh
dec eax
cwde
ror edx, cl
call fcn.008e721b
xor ax, 0x9abd
mov word [eax + ebp + 0x88c2], dx
movzx edx, byte [esi + eax*8 + 0x445ff]
shl ecx, cl
adc ax, word [esp + eax + 0x88c2]
xor dl, bl
bswap ecx
xor cl, ah
ror word [esp + eax + 0x88c1], 0xca
xor dl, 0x25
sal eax, cl
bt eax, eax
bts eax, 0x13
rol dl, 1
not dl
neg al
rol eax, 3
ror dl, 1
call fcn.008c200b
mov eax, 0x4609cb1a
mov ecx, dword [ebp + eax - 0x4609cb1a]
call fcn.007660ad
or ax, word [esp + 1]
sbb edx, 0x1038d298
xchg byte [esp + 3], cl
shr eax, cl
btr ax, 0xac
bswap edx
sal dword [esp + eax - 0x30cace], cl
call fcn.007dab97
movzx ax, byte [edi + 2]
mov ecx, dword [esp + 4]
adc edi, 2
mov dword [esp], ecx
not cx
neg cl
imul dl
add dword [esp + 2], 0xd38a7800
movzx edx, cx
ror dl, 7
mov word [edx + edi - 0xff02], ax
mov ecx, dword [ebp + edx*2 - 0x1fe04]
movzx eax, dx
pop edx
lea ebp, [ebp + eax*2 - 0x1fe00]
btc eax, 0x2c
jb 0x843f80
sub esi, 4
mov eax, 0xe19e292
jmp 0x85ddcf
push edx
xor ecx, ebx
ror dword [esp + eax - 0xef00], 0x93
bswap eax
cwde
dec ecx
inc dword [esp + eax + 1]
xor edx, 0xb587e13b
and word [esp + eax + 5], 0x55b3
xor ecx, 0xa79e50be
inc ecx
btc eax, 0x15
jb 0xb9fda4
jae 0x7b0943
mov ecx, dword [esi + eax - 0xe19e292]
cdq
xor ecx, ebx
sub dl, 0xaf
xor ecx, 0x33b0fe1d
add ax, 0x9e04
inc ecx
ror ecx, 3
btc eax, 0x35
not ecx
bswap ecx
xor ebx, ecx
and dl, dl
dec edx
adc edi, ecx
shr eax, 0xd2
lea ecx, [edx + edx*2 - 0x18f38e78]
lea esi, [esi + eax - 0x390]
movzx ecx, word [esi + eax*2 - 0x71c]
neg edx
push edx
xor cx, bx
shl ax, 0xe5
ror edx, 0xd5
ja 0xc67a1f
sbb cx, 0x6e84
cdq
xor cx, 0x4cb8
or edx, edx
adc word [esp + eax - 0x71bf], dx
div byte [esp + eax - 0x71be]
dec cx
xor edx, dword [esp + eax*4 - 0xc9c8]
ror cx, 1
cbw
neg ax
pop eax
neg cx
btc ax, ax
shl dx, 0xc7
inc cx
push eax
ror ax, 0x84
rol cx, 1
sub dword [esp], eax
jne 0x8b1877
and dword [esp], eax
xor bx, cx
sar al, 0xe2
sbb ebp, 1
mov word [ebp], cx
push eax
pop ecx
pop edx
jmp fcn.008c0304
cwde
neg cl
inc cl
mov dword [esp + eax - 0x6e], eax
inc word [esp + eax*2 - 0xdb]
btc ax, dx
not cl
dec edx
inc word [esp + eax - 0x86d]
xor bl, cl
push edx
call int.00891bb3
or al, 0xa0
lahf
dec ecx
and dword [eax - 0x30], edx
mov eax, dword [0xb8214e63]
les eax, [ecx - 0x27deb19d]
adc byte [ecx], ah
arpl word [esi + 0x21], cx
sbb byte [ecx + ebx*2], ch
arpl word [esi + 0x21], cx
add byte [eax], ch
jns 0xb9fe51
dec esi
and dword [eax - 0x60], eax
and dword [ebx + 0x4e], 0x9703821
arpl word [esi + 0x21], cx
mov al, 0x71
mov esp, dword [edi + 0x2323c174]
insd dword es:[edi], dx
invalid
arpl word es:[esi + 0x21], cx
aas
sti
salc
arpl word [esi + 0x21], cx
invalid
ror ecx, 1
sar word [esp + 8], 0x69
inc ecx
jmp 0x77aacb
sar byte [esp + 2], cl
sbb edx, 0xf41f6daf
ror word [esp], 0x69
rol eax, cl
ror edx, 1
or dword [esp], eax
ror dword [esp], 0x64
dec dx
sbb eax, 0xd912613f
shr word [esp + edx*4 - 0x4c2a6], 0xab
and dl, byte [esp + ecx - 0x5b5980f6]
xor ebx, eax
sar word [esp + edx - 0x13000], 0xcd
adc edi, eax
mov ecx, dword [esi + edx - 0x13002]
mov al, byte [esi + edx - 0x12ffe]
inc edx
dec dx
jne 0x719569
mov edx, dword [ebp]
mov eax, 0x8293e898
push eax
dec byte [esp + 2]
add ebp, 4
movsx ecx, byte [esp]
mov esi, edx
call fcn.0075bdee
shrd edx, eax, cl
mov eax, 0xdf803337
mov dword [edi], edx
sal al, 0xa4
mov ecx, dword [esi]
adc esi, 3
jmp 0xb6d8ed