Function at 0x140116960
Capabilities:
Parse credit card information

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rsi
push rdi
push r14
sub rsp, 0x50
mov qword [rax - 0x40], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rbp
mov rbx, rdx
mov rsi, rcx
xor r14d, r14d
mov dword [rax - 0x48], r14d
movups xmm0, xmmword [str.0123456789ABCDEF]
movups xmmword [rax - 0x38], xmm0
movzx eax, byte [0x14015ba20]
mov byte [rsp + 0x40], al
mov qword [rcx + 0x18], reloc.WS2_32.dll_ntohs
mov qword [rcx + 0x10], r14
cmp qword [rcx + 0x18], 0x10
jb 0x1401169be
mov rax, qword [rcx]
jmp 0x1401169c1
mov rax, rsi
mov byte [rax], 0
xor r8d, r8d
lea rdx, [0x14015b600]
call fcn.14001c360
mov dword [rsp + 0x20], 1
movsxd rbp, dword [rbx + 0x10]
test rbp, rbp
jle 0x140116bea
mov rdi, r14
nop dword [rax + rax]
mov rax, qword [rbx + 0x18]
cmp rax, 0x10
jb 0x1401169ff
mov rcx, qword [rbx]
jmp 0x140116a02
mov rcx, rbx
cmp byte [rcx + rdi], 0x24
je 0x140116b8c
cmp rax, 0x10
jb 0x140116a17
mov rcx, qword [rbx]
jmp 0x140116a1a
mov rcx, rbx
cmp byte [rcx + rdi], 0x26
je 0x140116b8c
cmp rax, 0x10
jb 0x140116a2f
mov rcx, qword [rbx]
jmp 0x140116a32
mov rcx, rbx
cmp byte [rcx + rdi], 0x2b
je 0x140116b8c
cmp rax, 0x10
jb 0x140116a47
mov rcx, qword [rbx]
jmp 0x140116a4a
mov rcx, rbx
cmp byte [rcx + rdi], 0x2c
je 0x140116b8c
cmp rax, 0x10
jb 0x140116a5f
mov rcx, qword [rbx]
jmp 0x140116a62
mov rcx, rbx
cmp byte [rcx + rdi], 0x2f
je 0x140116b8c
cmp rax, 0x10
jb 0x140116a77
mov rcx, qword [rbx]
jmp 0x140116a7a
mov rcx, rbx
cmp byte [rcx + rdi], 0x3a
je 0x140116b8c
cmp rax, 0x10
jb 0x140116a8f
mov rcx, qword [rbx]
jmp 0x140116a92
mov rcx, rbx
cmp byte [rcx + rdi], 0x5b
je 0x140116b8c
cmp rax, 0x10
jb 0x140116aa7
mov rcx, qword [rbx]
jmp 0x140116aaa
mov rcx, rbx
cmp byte [rcx + rdi], 0x5d
je 0x140116b8c
cmp rax, 0x10
jb 0x140116abf
mov rcx, qword [rbx]
jmp 0x140116ac2
mov rcx, rbx
cmp byte [rcx + rdi], 0x5c
je 0x140116b8c
cmp rax, 0x10
jb 0x140116ad7
mov rcx, qword [rbx]
jmp 0x140116ada
mov rcx, rbx
cmp byte [rcx + rdi], 0x3b
je 0x140116b8c
cmp rax, 0x10
jb 0x140116aef
mov rcx, qword [rbx]
jmp 0x140116af2
mov rcx, rbx
cmp byte [rcx + rdi], 0x3d
je 0x140116b8c
cmp rax, 0x10
jb 0x140116b07
mov rcx, qword [rbx]
jmp 0x140116b0a
mov rcx, rbx
cmp byte [rcx + rdi], 0x3f
je 0x140116b8c
cmp rax, 0x10
jb 0x140116b1b
mov rcx, qword [rbx]
jmp 0x140116b1e
mov rcx, rbx
cmp byte [rcx + rdi], 0x40
je 0x140116b8c
cmp rax, 0x10
jb 0x140116b2f
mov rcx, qword [rbx]
jmp 0x140116b32
mov rcx, rbx
cmp byte [rcx + rdi], 0x23
je 0x140116b8c
cmp rax, 0x10
jb 0x140116b43
mov rcx, qword [rbx]
jmp 0x140116b46
mov rcx, rbx
cmp byte [rcx + rdi], 0x20
jl 0x140116b8c
cmp rax, 0x10
jb 0x140116b57
mov rcx, qword [rbx]
jmp 0x140116b5a
mov rcx, rbx
cmp byte [rcx + rdi], 0x7e
jg 0x140116b8c
cmp rax, 0x10
jb 0x140116b6b
mov rcx, qword [rbx]
jmp 0x140116b6e
mov rcx, rbx
cmp byte [rcx + rdi], 0x20
jne 0x140116b78
mov dl, 0x2b
jmp 0x140116bd6
cmp rax, 0x10
jb 0x140116b83
mov rax, qword [rbx]
jmp 0x140116b86
mov rax, rbx
movzx edx, byte [rax + rdi]
jmp 0x140116bd6
mov dl, 0x25
mov rcx, rsi
call fcn.140020b70
cmp qword [rbx + 0x18], 0x10
jb 0x140116ba2
mov rax, qword [rbx]
jmp 0x140116ba5
mov rax, rbx
movzx eax, byte [rax + rdi]
shr rax, 4
movzx edx, byte [rsp + rax + 0x30]
mov rcx, rsi
call fcn.140020b70
cmp qword [rbx + 0x18], 0x10
jb 0x140116bc6
mov rax, qword [rbx]
jmp 0x140116bc9
mov rax, rbx
movsx rax, byte [rax + rdi]
and eax, 0xf
movzx edx, byte [rsp + rax + 0x30]
mov rcx, rsi
call fcn.140020b70
inc rdi
cmp rdi, rbp
jl 0x1401169f0
mov rax, qword [rbx + 0x18]
cmp rax, 0x10
jb 0x140116c3f
inc rax
mov rcx, qword [rbx]
cmp rax, 0x1000
jb 0x140116c3a
test cl, 0x1f
je 0x140116c0d
call fcn.1400a5694
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x140116c1c
call fcn.1400a5694
int3
sub rcx, rax
cmp rcx, 8
jae 0x140116c2b
call fcn.1400a5694
int3
cmp rcx, 0x27
jbe 0x140116c37
call fcn.1400a5694
int3
mov rcx, rax
call fcn.14006dab0
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov qword [rbx + 0x10], r14
cmp qword [rbx + 0x18], 0x10
jb 0x140116c55
mov rbx, qword [rbx]
mov byte [rbx], 0
mov rax, rsi
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret