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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r13
sub rsp, 0x20
mov rsi, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x14003222c
mov ebp, 4
lea r13d, [rbp + 3]
mov edx, 0x10000000
cmp ecx, 0x7c
je 0x14003222c
cmp ecx, 0x29
jne 0x140031dba
cmp dword [rsi + 0x1c], 0
jne 0x14003222c
test dword [rsi + 0x80], edx
je 0x140032254
jmp 0x1400320e4
cmp ecx, 0x2e
jne 0x140031dda
lea rcx, [rsi + 0x40]
mov edx, 5
call fcn.1400323d0
mov rcx, rsi
call fcn.140031d14
jmp 0x140032126
cmp ecx, 0x5c
jne 0x140031f4d
mov rcx, rsi
call fcn.140031d14
mov ecx, dword [rsi + 0x80]
mov eax, ecx
and eax, 0x80
je 0x140031e18
cmp byte [rsi + 0x78], 0x62
jne 0x140031e18
mov edx, ebp
lea rcx, [rsi + 0x40]
call fcn.1400323d0
mov rcx, rsi
call fcn.140031d14
jmp 0x14003221e
test eax, eax
je 0x140031e37
cmp byte [rsi + 0x78], 0x42
jne 0x140031e37
lea rcx, [rsi + 0x40]
mov edx, ebp
call fcn.1400323d0
mov rax, qword [rsi + 0x48]
xor dword [rax + 0xc], 1
jmp 0x140031e0b
bt ecx, 8
jae 0x140031f16
mov edx, 0xa
mov r8d, 0x7fffffff
mov rcx, rsi
lea r9d, [rdx - 7]
call fcn.1400346f4
cmp eax, 0x7fffffff
je 0x140031f16
mov edi, dword [rsi + 0x74]
mov eax, dword [rsi + 0x80]
test edi, edi
jne 0x140031e8b
bt eax, 0x14
jae 0x140032293
mov dl, byte [rsi + 0x74]
lea rcx, [rsi + 0x40]
call fcn.140033418
jmp 0x140032126
bt eax, 9
jae 0x140031e9a
cmp edi, 9
ja 0x14003229e
mov eax, edi
movsxd rcx, eax
mov eax, dword [rsi + 0x18]
cmp rax, rcx
jb 0x14003229e
cmp qword [rsi + 0x38], rcx
jbe 0x14003229e
mov r8, qword [rsi + 0x20]
mov rdx, rcx
and ecx, 0x1f
shr rdx, 5
mov eax, 1
shl eax, cl
test dword [r8 + rdx*4], eax
je 0x14003229e
mov ecx, Ordinal_41
call fcn.1400cc560
lea rcx, vtable.std::_Node_back.0
mov qword [rsp + 0x40], rax
mov rdx, rax
and dword [rax + 0xc], 0
and qword [rax + 0x10], 0
and qword [rax + 0x18], 0
mov qword [rax], rcx
lea rcx, [rsi + 0x40]
mov dword [rax + 8], reloc.WS2_32.dll_ntohs
mov dword [rax + 0x20], edi
call fcn.140032398
jmp 0x140032126
mov rcx, rsi
call fcn.140033e78
test al, al
jne 0x140031e7a
test dword [rsi + 0x80], 0x20000
je 0x14003225f
mov dl, 1
mov rcx, rsi
call fcn.140033b7c
test al, al
je 0x14003225f
jmp 0x140032126
cmp ecx, 0x5b
jne 0x140031fb9
mov rcx, rsi
call fcn.140031d14
lea rcx, [rsi + 0x40]
call fcn.140034168
mov eax, dword [rsi + 0x7c]
cmp eax, 0x5e
jne 0x140031f7e
mov rax, qword [rsi + 0x48]
mov rcx, rsi
xor dword [rax + 0xc], 1
call fcn.140031d14
mov eax, dword [rsi + 0x7c]
test dword [rsi + 0x80], 0x20000000
je 0x140031fa2
cmp eax, 0x5d
jne 0x140031fa2
mov dl, al
lea rcx, [rsi + 0x40]
call fcn.1400341c4
mov rcx, rsi
call fcn.140031d14
mov rcx, rsi
call fcn.140033c18
cmp dword [rsi + 0x7c], 0x5d
jne 0x14003226a
jmp 0x140031dcd
cmp ecx, 0x28
jne 0x1400320ac
mov rcx, rsi
call fcn.140031d14
inc dword [rsi + 0x1c]
mov eax, dword [rsi + 0x80]
bt eax, 0x1b
jb 0x140031fe3
cmp dword [rsi + 0x7c], 0x29
je 0x1400322a9
test al, 0x20
je 0x14003202b
cmp dword [rsi + 0x7c], 0x3f
jne 0x14003202b
mov rcx, rsi
call fcn.140031d14
mov ebx, dword [rsi + 0x7c]
mov rcx, rsi
call fcn.140031d14
cmp ebx, 0x3a
je 0x140032034
cmp ebx, 0x21
jne 0x14003201e
mov dl, 1
mov rcx, rsi
call fcn.1400340ac
dec dword [rsi + 0x1c]
xor bl, bl
jmp 0x1400320a0
cmp ebx, 0x3d
jne 0x1400322b4
xor edx, edx
jmp 0x14003200c
test dword [rsi + 0x70], 0x200
je 0x14003203e
mov rcx, rsi
call fcn.140034064
jmp 0x14003209b
mov edx, dword [rsi + 0x18]
inc edx
mov dword [rsi + 0x18], edx
cmp edx, 0x3e8
jae 0x14003223f
lea rcx, [rsi + 0x40]
call fcn.1400312c4
mov rcx, rsi
mov rdi, rax
call fcn.140031124
mov rdx, rdi
lea rcx, [rsi + 0x40]
call fcn.140031248
mov edx, dword [rsi + 0x18]
lea rcx, [rsi + 0x20]
inc edx
call fcn.14003192c
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
dec dword [rsi + 0x1c]
mov bl, 1
cmp dword [rsi + 0x7c], 0x29
jne 0x140032272
jmp 0x140032116
cmp ecx, 0x5e
jne 0x1400320b9
lea edx, [rcx - 0x5c]
jmp 0x140031e02
cmp ecx, 0x24
jne 0x1400320c6
lea edx, [rcx - 0x21]
jmp 0x140031e02
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x140032288
cmp ecx, 0x3f
je 0x140032288
cmp ecx, 0x7b
je 0x140032288
cmp ecx, 0x7d
jne 0x1400320f7
test dword [rsi + 0x80], edx
je 0x14003227d
jmp 0x140032108
cmp ecx, 0x5d
jne 0x140032108
test dword [rsi + 0x80], edx
je 0x1400322bf
mov dl, byte [rsi + 0x78]
lea rcx, [rsi + 0x40]
call fcn.140033418
mov bl, 1
mov rcx, rsi
call fcn.140031d14
test bl, bl
je 0x14003221e
mov eax, dword [rsi + 0x7c]
xor edi, edi
or ebx, 0xffffffff
cmp eax, 0x2a
je 0x1400321d7
cmp eax, 0x2b
jne 0x140032144
lea edi, [rbx + 2]
jmp 0x1400321d7
cmp eax, 0x3f
jne 0x140032151
lea ebx, [rax - 0x3e]
jmp 0x1400321d7
cmp eax, 0x7b
jne 0x14003221e
mov rcx, rsi
call fcn.140031d14
mov edi, 0x7fffffff
mov r9d, r13d
mov r8d, edi
mov edx, 0xa
mov rcx, rsi
call fcn.1400346f4
cmp eax, edi
je 0x14003224b
cmp dword [rsi + 0x7c], 0x2c
mov edi, dword [rsi + 0x74]
je 0x14003218f
mov ebx, edi
jmp 0x1400321c0
mov rcx, rsi
call fcn.140031d14
cmp dword [rsi + 0x7c], 0x7d
je 0x1400321ca
mov ebx, 0x7fffffff
mov r9d, r13d
mov r8d, ebx
mov edx, 0xa
mov rcx, rsi
call fcn.1400346f4
cmp eax, ebx
je 0x1400322c7
mov ebx, dword [rsi + 0x74]
cmp dword [rsi + 0x7c], 0x7d
jne 0x1400322d0
cmp ebx, 0xffffffff
je 0x1400321d7
cmp ebx, edi
jl 0x1400322d0
mov rax, qword [rsi + 0x48]
mov rcx, rsi
or dword [rax + 0xc], ebp
call fcn.140031d14
test dword [rsi + 0x80], 0x400
je 0x140032205
cmp dword [rsi + 0x7c], 0x3f
jne 0x140032205
xor bpl, bpl
mov rcx, rsi
call fcn.140031d14
jmp 0x140032208
mov bpl, 1
lea rcx, [rsi + 0x40]
mov r9b, bpl
mov r8d, ebx
mov edx, edi
call fcn.140034240
mov ebp, 4
mov ecx, dword [rsi + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x140031d8c
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r13
pop rdi
pop rsi
ret
mov ecx, listen
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xregex_error_enum_std::regex_constants::error_type_]
int3
mov edx, r13d
call fcn.140030f3c
int3
mov edx, 5
call fcn.140030f3c
int3
mov edx, 2
call fcn.140030f3c
int3
mov edx, ebp
call fcn.140030f3c
int3
mov edx, 5
call fcn.140030f3c
int3
mov edx, 6
call fcn.140030f3c
int3
mov edx, 0xa
call fcn.140030f3c
int3
mov edx, 2
call fcn.140030f3c
int3
mov edx, 3
call fcn.140030f3c
int3
mov edx, 5
call fcn.140030f3c
int3
mov edx, reloc.WS2_32.dll_ntohl
call fcn.140030f3c
int3
mov edx, ebp
call fcn.140030f3c
int3
mov edx, r13d
call fcn.140030f3c
int3
mov edx, r13d
call fcn.140030f3c
int3