Function at 0x180027d74
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r14
sub rsp, 0x30
mov rsi, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
or rbp, 0xffffffffffffffff
cmp ecx, ebp
je 0x180028259
lea r14d, [rbp + 2]
lea r12d, [rbp + 8]
mov edx, 0x10000000
cmp ecx, 0x7c
je 0x180028259
cmp ecx, 0x29
jne 0x180027dd6
cmp dword [rsi + 0x1c], 0
jne 0x180028259
test dword [rsi + 0x80], edx
je 0x18002827b
jmp 0x180028112
cmp ecx, 0x2e
jne 0x180027df6
lea rcx, [rsi + 0x40]
mov edx, 5
call fcn.180028420
mov rcx, rsi
call fcn.180027d28
jmp 0x180028155
cmp ecx, 0x5c
jne 0x180027f72
mov rcx, rsi
call fcn.180027d28
mov eax, dword [rsi + 0x80]
test al, al
jns 0x180027e50
cmp byte [rsi + 0x78], 0x62
jne 0x180027e32
mov edx, 4
lea rcx, [rsi + 0x40]
call fcn.180028420
mov rcx, rsi
call fcn.180027d28
jmp 0x18002824b
cmp byte [rsi + 0x78], 0x42
jne 0x180027e50
lea rcx, [rsi + 0x40]
mov edx, 4
call fcn.180028420
mov rax, qword [rsi + 0x48]
xor dword [rax + 0xc], r14d
jmp 0x180027e25
bt eax, 8
jae 0x180027f3a
mov edx, 0xa
mov r8d, 0x7fffffff
mov rcx, rsi
lea r9d, [rdx - 7]
call fcn.180029818
cmp eax, 0x7fffffff
je 0x180027f3a
mov edi, dword [rsi + 0x74]
mov eax, dword [rsi + 0x80]
test edi, edi
jne 0x180027ea4
bt eax, 0x14
jae 0x1800282bd
mov dl, byte [rsi + 0x74]
lea rcx, [rsi + 0x40]
call fcn.180028c50
jmp 0x180028155
bt eax, 9
jae 0x180027eb3
cmp edi, 9
ja 0x1800282c8
mov eax, edi
movsxd rcx, eax
mov eax, dword [rsi + 0x18]
cmp rax, rcx
jb 0x1800282c8
cmp qword [rsi + 0x38], rcx
jbe 0x1800282c8
mov r8, qword [rsi + 0x20]
mov rdx, rcx
and ecx, 0x1f
shr rdx, 5
mov eax, r14d
shl eax, cl
test dword [r8 + rdx*4], eax
je 0x1800282c8
mov ecx, 0x28
call fcn.18008e338
xor ecx, ecx
mov qword [rsp + 0x20], rax
xorps xmm0, xmm0
mov rdx, rax
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax + 0x20], rcx
and dword [rax + 0xc], ecx
and qword [rax + 0x10], rcx
and qword [rax + 0x18], rcx
lea rcx, vtable.std::_Node_back.0
mov qword [rax], rcx
lea rcx, [rsi + 0x40]
mov dword [rax + 8], send
mov dword [rax + 0x20], edi
call fcn.1800283e8
jmp 0x180028155
mov rcx, rsi
call fcn.1800290b8
test al, al
jne 0x180027e93
test dword [rsi + 0x80], 0x20000
je 0x180028286
mov dl, r14b
mov rcx, rsi
call fcn.180028db8
test al, al
je 0x180028286
jmp 0x180028155
cmp ecx, 0x5b
jne 0x180027fda
mov rcx, rsi
call fcn.180027d28
lea rcx, [rsi + 0x40]
call fcn.1800293ec
cmp dword [rsi + 0x7c], 0x5e
jne 0x180027f9e
mov rax, qword [rsi + 0x48]
mov rcx, rsi
xor dword [rax + 0xc], r14d
call fcn.180027d28
test dword [rsi + 0x80], 0x20000000
je 0x180027fc3
cmp dword [rsi + 0x7c], 0x5d
jne 0x180027fc3
mov dl, 0x5d
lea rcx, [rsi + 0x40]
call fcn.180029464
mov rcx, rsi
call fcn.180027d28
mov rcx, rsi
call fcn.180028e54
cmp dword [rsi + 0x7c], 0x5d
jne 0x180028291
jmp 0x180027de9
cmp ecx, 0x28
jne 0x1800280da
mov rcx, rsi
call fcn.180027d28
add dword [rsi + 0x1c], r14d
mov eax, dword [rsi + 0x80]
bt eax, 0x1b
jb 0x180028005
cmp dword [rsi + 0x7c], 0x29
je 0x1800282d3
test al, 0x20
je 0x18002804f
cmp dword [rsi + 0x7c], 0x3f
jne 0x18002804f
mov rcx, rsi
call fcn.180027d28
mov ebx, dword [rsi + 0x7c]
mov rcx, rsi
call fcn.180027d28
cmp ebx, 0x3a
je 0x180028058
cmp ebx, 0x21
jne 0x180028042
mov dl, r14b
mov rcx, rsi
call fcn.1800292ec
sub dword [rsi + 0x1c], r14d
xor bl, bl
jmp 0x1800280ce
cmp ebx, 0x3d
jne 0x1800282de
xor edx, edx
jmp 0x18002802f
test dword [rsi + 0x70], 0x200
je 0x180028062
mov rcx, rsi
call fcn.1800292a4
jmp 0x1800280c7
mov edx, dword [rsi + 0x18]
inc edx
mov dword [rsi + 0x18], edx
cmp edx, 0x3e8
jae 0x1800282e9
lea rcx, [rsi + 0x40]
call fcn.1800273e8
mov rcx, rsi
mov rdi, rax
call fcn.180027230
mov rdx, rdi
lea rcx, [rsi + 0x40]
call fcn.180027364
mov edx, dword [rsi + 0x18]
lea rcx, [rsi + 0x20]
add edx, r14d
cmovb rdx, rbp
xor r8d, r8d
call fcn.180026314
mov ecx, dword [rdi + 0x20]
mov r8, qword [rsi + 0x20]
mov edx, ecx
shr rdx, 5
and ecx, 0x1f
mov eax, dword [r8 + rdx*4]
bts eax, ecx
mov dword [r8 + rdx*4], eax
sub dword [rsi + 0x1c], r14d
mov bl, r14b
cmp dword [rsi + 0x7c], 0x29
jne 0x18002829c
jmp 0x180028145
cmp ecx, 0x5e
jne 0x1800280e7
lea edx, [rcx - 0x5c]
jmp 0x180027e1c
cmp ecx, 0x24
jne 0x1800280f4
lea edx, [rcx - 0x21]
jmp 0x180027e1c
lea eax, [rcx - 0x2a]
cmp eax, r14d
jbe 0x1800282b2
cmp ecx, 0x3f
je 0x1800282b2
cmp ecx, 0x7b
je 0x1800282b2
cmp ecx, 0x7d
jne 0x180028125
test dword [rsi + 0x80], edx
je 0x1800282a7
jmp 0x180028136
cmp ecx, 0x5d
jne 0x180028136
test dword [rsi + 0x80], edx
je 0x1800282f4
mov dl, byte [rsi + 0x78]
lea rcx, [rsi + 0x40]
call fcn.180028c50
mov bl, r14b
mov rcx, rsi
call fcn.180027d28
test bl, bl
je 0x18002824b
mov eax, dword [rsi + 0x7c]
xor edi, edi
mov ebx, ebp
cmp eax, 0x2a
je 0x180028204
cmp eax, 0x2b
jne 0x180028172
mov edi, r14d
jmp 0x180028204
cmp eax, 0x3f
jne 0x18002817f
mov ebx, r14d
jmp 0x180028204
cmp eax, 0x7b
jne 0x18002824b
mov rcx, rsi
call fcn.180027d28
mov edi, 0x7fffffff
mov r9d, r12d
mov r8d, edi
mov edx, 0xa
mov rcx, rsi
call fcn.180029818
cmp eax, edi
je 0x180028272
cmp dword [rsi + 0x7c], 0x2c
mov edi, dword [rsi + 0x74]
je 0x1800281bd
mov ebx, edi
jmp 0x1800281ee
mov rcx, rsi
call fcn.180027d28
cmp dword [rsi + 0x7c], 0x7d
je 0x1800281f8
mov ebx, 0x7fffffff
mov r9d, r12d
mov r8d, ebx
mov edx, 0xa
mov rcx, rsi
call fcn.180029818
cmp eax, ebx
je 0x1800282ff
mov ebx, dword [rsi + 0x74]
cmp dword [rsi + 0x7c], 0x7d
jne 0x180028308
cmp ebx, ebp
je 0x180028204
cmp ebx, edi
jl 0x180028308
mov rax, qword [rsi + 0x48]
mov rcx, rsi
or dword [rax + 0xc], 4
call fcn.180027d28
test dword [rsi + 0x80], 0x400
je 0x180028233
cmp dword [rsi + 0x7c], 0x3f
jne 0x180028233
xor bpl, bpl
mov rcx, rsi
call fcn.180027d28
jmp 0x180028236
mov bpl, r14b
lea rcx, [rsi + 0x40]
mov r9b, bpl
mov r8d, ebx
mov edx, edi
call fcn.1800294e0
or rbp, 0xffffffffffffffff
mov ecx, dword [rsi + 0x7c]
mov al, r14b
cmp ecx, ebp
jne 0x180027da8
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x30
pop r14
pop r12
pop rdi
ret
mov edx, r12d
call fcn.180027050
int3
mov edx, 5
call fcn.180027050
int3
mov edx, 2
call fcn.180027050
int3
mov edx, 4
call fcn.180027050
int3
mov edx, 5
call fcn.180027050
int3
mov edx, 6
call fcn.180027050
int3
mov edx, 0xa
call fcn.180027050
int3
mov edx, 2
call fcn.180027050
int3
mov edx, 3
call fcn.180027050
int3
mov edx, 5
call fcn.180027050
int3
mov edx, recv
call fcn.180027050
int3
mov ecx, recv
call fcn.18008bd70
int3
mov edx, 4
call fcn.180027050
int3
mov edx, r12d
call fcn.180027050
int3
mov edx, r12d
call fcn.180027050
int3