Function at 0x75d1e0
Capabilities:
Parse credit card information

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rbx, rcx
mov rax, qword [rcx + 0xb0]
mov rcx, qword [rcx + 0xb8]
cmp rax, rcx
je 0x75d530
mov edx, dword [rbx + 0x88]
test edx, edx
je 0x75d230
cmp edx, 2
je 0x75d340
cmp edx, 1
je 0x75d550
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
lea r10, [rax + 1]
mov r13, qword [rbx + 0xc0]
mov r8d, 0x20
mov rdi, rbx
mov qword [rbx + 0xb0], r10
movsx ebp, byte [rax]
movzx r12d, bpl
mov esi, ebp
movzx eax, byte [r13 + r12 + 0x139]
mov rcx, r13
test al, al
jne 0x75d3b0
mov rax, qword [r13]
mov edx, ebp
call qword [rax + 0x40]
cmp al, 0x20
je 0x75d3b0
movsx edx, al
mov byte [r13 + r12 + 0x139], al
mov rcx, qword [rbx + 0xa0]
call sub.msvcrt.dll_strchr
mov edx, ebp
test rax, rax
je 0x75d720
cmp bpl, 0x5c
je 0x75d5d0
cmp bpl, 0x28
je 0x75d470
cmp bpl, 0x29
je 0x75d6e0
cmp bpl, 0x5b
je 0x75d6a0
cmp bpl, 0x7b
je 0x75d8e0
and esi, 0xffffffdf
cmp sil, 0x5d
je 0x75d720
mov rsi, qword [rbx + 0xc0]
mov rcx, rsi
movzx eax, byte [rsi + r12 + 0x139]
test al, al
jne 0x75d446
mov r13, qword [rsi]
xor r8d, r8d
call qword [r13 + 0x40]
test al, al
je 0x75d957
mov byte [rsi + r12 + 0x139], al
movzx r10d, byte [rbx]
test r10b, r10b
jne 0x75d331
jmp 0x75d222
add rdi, 8
movzx r10d, byte [rdi]
test r10b, r10b
je 0x75d222
cmp r10b, al
jne 0x75d320
jmp 0x75d460
lea rbp, [rax + 1]
mov qword [rbx + 0xb0], rbp
movsx edx, byte [rax]
cmp dl, 0x2d
je 0x75d750
cmp dl, 0x5b
je 0x75d620
cmp dl, 0x5d
je 0x75d900
cmp dl, 0x5c
jne 0x75d890
test byte [rbx + 0x8c], 0x90
je 0x75d890
mov rcx, qword [rbx + 0xf0]
mov rax, qword [rbx + 0xe8]
add rcx, rbx
test al, 1
je 0x75d950
mov rsi, qword [rcx]
call qword [rax + rsi - 1]
mov byte [rbx + 0xa8], 0
jmp 0x75d222
mov rcx, qword [rbx + 0xa0]
movsx edx, al
call sub.msvcrt.dll_strchr
test rax, rax
je 0x75d720
cmp sil, 0x5c
je 0x75d5d0
mov edx, esi
cmp sil, 0x28
je 0x75d470
cmp sil, 0x29
je 0x75d6e0
cmp sil, 0x5b
movsx ebp, sil
movzx r13d, sil
je 0x75d6a0
cmp sil, 0x7b
mov rdi, rbx
je 0x75d8e0
and edx, 0xffffffdf
cmp dl, 0x5d
mov edx, ebp
je 0x75d720
mov r12, qword [rbx + 0xc0]
mov rcx, r12
movzx eax, byte [r12 + r13 + 0x139]
test al, al
jne 0x75d446
mov rax, qword [r12]
xor r8d, r8d
call qword [rax + 0x40]
test al, al
je 0x75d957
mov byte [r12 + r13 + 0x139], al
movzx r8d, byte [rbx]
test r8b, r8b
je 0x75d222
cmp al, r8b
jne 0x75d320
nop dword [rax]
mov r9d, dword [rdi + 4]
mov dword [rbx + 0x90], r9d
jmp 0x75d222
mov eax, dword [rbx + 0x8c]
test al, 0x10
je 0x75d510
mov rcx, qword [rbx + 0xb0]
cmp byte [rcx], 0x3f
jne 0x75d510
lea rdx, [rcx + 1]
mov r9d, 1
mov qword [rbx + 0xb0], rdx
cmp rdx, qword [rbx + 0xb8]
je 0x75da40
movzx edi, byte [rcx + 1]
cmp dil, 0x3a
je 0x75d9a5
cmp dil, 0x3d
je 0x75d9bf
cmp dil, 0x21
jne 0x75d9fc
add rcx, 2
xor edx, edx
mov dword [rbx + 0x90], 7
mov qword [rbx + 0xb0], rcx
lea rcx, [rbx + 0xc8]
mov dword [rsp + 0x20], 0x6e
mov r8, qword [rbx + 0xd0]
call fcn.0077d700
jmp 0x75d222
test al, 2
setne sil
movzx ebp, sil
add ebp, 5
mov dword [rbx + 0x90], ebp
jmp 0x75d222
mov dword [rbx + 0x90], 0x1b
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov r9, qword [rbx + 0xc0]
lea r8, [rax + 1]
mov qword [rbx + 0xb0], r8
movzx r10d, byte [rax]
mov rdi, qword [r9 + 0x30]
test byte [rdi + r10*2], 8
jne 0x75d770
cmp r10b, 0x2c
je 0x75d690
test dword [rbx + 0x8c], 0x120
je 0x75d8b0
cmp rcx, r8
je 0x75da1e
cmp r10b, 0x5c
jne 0x75da1e
cmp byte [rax + 1], 0x7d
jne 0x75da1e
add rax, 2
mov dword [rbx + 0x88], 0
mov dword [rbx + 0x90], 0xd
mov qword [rbx + 0xb0], rax
jmp 0x75d222
mov r9, qword [rbx + 0xb0]
cmp r9, qword [rbx + 0xb8]
je 0x75da0d
test dword [rbx + 0x8c], 0x120
je 0x75d6f0
movzx r11d, byte [r9]
lea ecx, [r11 - 0x28]
cmp cl, 1
jbe 0x75d60b
cmp r11b, 0x7b
jne 0x75d6f0
lea rbp, [r9 + 1]
mov qword [rbx + 0xb0], rbp
movzx esi, byte [r9]
jmp 0x75d3d2
cmp rcx, rbp
je 0x75da2f
movzx edi, byte [rax + 1]
lea rcx, [rbx + 0xc8]
cmp dil, 0x2e
je 0x75d98d
cmp dil, 0x3a
je 0x75d999
cmp dil, 0x3d
je 0x75d967
mov dword [rbx + 0x90], 1
mov dword [rsp + 0x20], 0x5b
mov r8, qword [rbx + 0xd0]
mov r9d, 1
xor edx, edx
call fcn.0077d700
mov byte [rbx + 0xa8], 0
jmp 0x75d222
mov dword [rbx + 0x90], 0x19
jmp 0x75d222
mov r11, qword [rbx + 0xb0]
mov byte [rbx + 0xa8], 1
mov dword [rbx + 0x88], 2
cmp r11, qword [rbx + 0xb8]
je 0x75d6cb
cmp byte [r11], 0x5e
je 0x75d936
mov dword [rbx + 0x90], 9
jmp 0x75d222
mov dword [rbx + 0x90], 8
jmp 0x75d222
mov rcx, qword [rbx + 0xf0]
mov rax, qword [rbx + 0xe8]
add rcx, rbx
test al, 1
je 0x75d70d
mov rbx, qword [rcx]
mov rax, qword [rbx + rax - 1]
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
jmp rax
lea rcx, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov dword [rbx + 0x90], 1
mov dword [rsp + 0x20], ebp
mov r8, qword [rbx + 0xd0]
call fcn.0077d700
jmp 0x75d222
mov dword [rbx + 0x90], 0x1c
mov byte [rbx + 0xa8], 0
jmp 0x75d222
movsx ebp, r10b
lea r12, [rbx + 0xc8]
xor edx, edx
mov r9d, 1
mov dword [rbx + 0x90], 0x1a
mov rcx, r12
mov dword [rsp + 0x20], ebp
mov r8, qword [rbx + 0xd0]
call fcn.0077d700
mov r10, qword [rbx + 0xb0]
cmp r10, qword [rbx + 0xb8]
je 0x75d222
mov r11, qword [rbx + 0xc0]
movzx r13d, byte [r10]
mov rcx, qword [r11 + 0x30]
test byte [rcx + r13*2], 8
je 0x75d222
lea r13, [rbx + 0xd8]
jmp 0x75d826
mov byte [rax + rsi], bpl
mov r8, qword [rbx + 0xc8]
mov qword [rbx + 0xd0], rdi
mov byte [r8 + rsi + 1], 0
mov r10, qword [rbx + 0xb0]
cmp r10, qword [rbx + 0xb8]
je 0x75d222
mov r9, qword [rbx + 0xc0]
movzx r11d, byte [r10]
mov rcx, qword [r9 + 0x30]
test byte [rcx + r11*2], 8
je 0x75d222
mov rsi, qword [rbx + 0xd0]
mov rax, qword [rbx + 0xc8]
lea rdx, [r10 + 1]
mov qword [rbx + 0xb0], rdx
lea rdi, [rsi + 1]
movzx ebp, byte [r10]
cmp rax, r13
je 0x75d880
cmp rdi, qword [rbx + 0xd8]
jbe 0x75d7e0
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov rcx, r12
mov qword [rsp + 0x20], 1
call fcn.0077d690
mov rax, qword [rbx + 0xc8]
jmp 0x75d7e0
cmp rdi, 0xf
jbe 0x75d7e0
jmp 0x75d855
mov dword [rbx + 0x90], 1
lea rcx, [rbx + 0xc8]
mov dword [rsp + 0x20], edx
jmp 0x75d664
cmp r10b, 0x7d
jne 0x75da1e
mov dword [rbx + 0x88], 0
mov dword [rbx + 0x90], 0xd
jmp 0x75d222
mov dword [rbx + 0x88], 1
mov dword [rbx + 0x90], 0xc
jmp 0x75d222
test byte [rbx + 0x8c], 0x10
jne 0x75d916
cmp byte [rbx + 0xa8], 0
jne 0x75d890
mov dword [rbx + 0x90], 0xb
mov dword [rbx + 0x88], 0
mov byte [rbx + 0xa8], 0
jmp 0x75d222
mov dword [rbx + 0x90], 0xa
add r11, 1
mov qword [rbx + 0xb0], r11
jmp 0x75d222
call rax
jmp 0x75d678
cmp byte [rbx], 0
je 0x75d222
xor eax, eax
jmp 0x75d320
mov dword [rbx + 0x90], 0x11
lea r8, [rax + 2]
mov rcx, rbx
mov qword [rbx + 0xb0], r8
movsx edx, byte [rax + 1]
call fcn.0075d020
jmp 0x75d678
mov dword [rbx + 0x90], 0x10
jmp 0x75d971
mov dword [rbx + 0x90], 0xf
jmp 0x75d971
mov dword [rbx + 0x90], 6
add rcx, 2
mov qword [rbx + 0xb0], rcx
jmp 0x75d222
add rcx, 2
mov r9d, 1
xor edx, edx
mov dword [rbx + 0x90], 7
mov qword [rbx + 0xb0], rcx
lea rcx, [rbx + 0xc8]
mov dword [rsp + 0x20], 0x70
mov r8, qword [rbx + 0xd0]
call fcn.0077d700
jmp 0x75d222
lea rdx, str.Invalid_special_open_parenthesis.
mov ecx, 5
call fcn.0075b380
lea rdx, str.Unexpected_end_of_regex_when_escaping.
mov ecx, 2
call fcn.0075b380
lea rdx, str.Unexpected_character_in_brace_expression.
mov ecx, 7
call fcn.0075b380
lea rdx, str.Unexpected_character_class_open_bracket.
mov ecx, 4
call fcn.0075b380
lea rdx, str.Unexpected_end_of_regex_when_in_an_open_parenthesis.
mov ecx, 5
call fcn.0075b380
nop
nop dword [rax]
nop word cs:[rax + rax]