Function at 0x1800d8f70
Capabilities:
Parse credit card information

Disassembly:
push rbp
push r12
push r13
sub rsp, 0x20
mov r13d, r8d
mov r12, rdx
mov rbp, rcx
test rdx, rdx
jne 0x1800d8f95
or eax, 0xffffffff
add rsp, 0x20
pop r13
pop r12
pop rbp
ret
mov qword [rsp + 0x40], rbx
mov rbx, qword [rdx]
nop dword [rax]
movzx eax, byte [rbx]
cmp al, 0x61
jl 0x1800d8faf
cmp al, 0x7a
jle 0x1800d909e
cmp al, 0x41
jl 0x1800d8fbb
cmp al, 0x5a
jle 0x1800d909e
cmp al, 0x30
jl 0x1800d8fc7
cmp al, 0x39
jle 0x1800d909e
cmp al, 0x2d
je 0x1800d909e
cmp al, 0x5f
je 0x1800d909e
cmp al, 0x2e
je 0x1800d909e
cmp al, 0x21
je 0x1800d909e
cmp al, 0x7e
je 0x1800d909e
cmp al, 0x2a
je 0x1800d909e
cmp al, 0x27
je 0x1800d909e
cmp al, 0x28
je 0x1800d909e
cmp al, 0x29
je 0x1800d909e
cmp al, 0x25
jne 0x1800d9057
movzx ecx, byte [rbx + 1]
cmp cl, 0x30
jl 0x1800d9021
cmp cl, 0x39
jle 0x1800d9035
cmp cl, 0x61
jl 0x1800d902b
cmp cl, 0x66
jle 0x1800d9035
cmp cl, 0x41
jl 0x1800d9057
cmp cl, 0x46
jg 0x1800d9057
movzx ecx, byte [rbx + 2]
cmp cl, 0x30
jl 0x1800d9043
cmp cl, 0x39
jle 0x1800d909e
cmp cl, 0x61
jl 0x1800d904d
cmp cl, 0x66
jle 0x1800d909e
cmp cl, 0x41
jl 0x1800d9057
cmp cl, 0x46
jle 0x1800d909e
cmp al, 0x3a
je 0x1800d909e
cmp al, 0x40
je 0x1800d909e
cmp al, 0x26
je 0x1800d909e
cmp al, 0x3d
je 0x1800d909e
cmp al, 0x2b
je 0x1800d909e
cmp al, 0x24
je 0x1800d909e
cmp al, 0x2c
je 0x1800d909e
test rbp, rbp
je 0x1800d90af
test byte [rbp + 0x48], 1
je 0x1800d90af
cmp al, 0x7b
je 0x1800d909e
cmp al, 0x7d
je 0x1800d909e
cmp al, 0x7c
je 0x1800d909e
cmp al, 0x5c
je 0x1800d909e
cmp al, 0x5e
je 0x1800d909e
cmp al, 0x5b
je 0x1800d909e
cmp al, 0x5d
je 0x1800d909e
cmp al, 0x60
jne 0x1800d90af
cmp al, 0x25
jne 0x1800d91e0
add rbx, 3
jmp 0x1800d8fa0
cmp byte [rbx], 0x3b
jne 0x1800d91db
nop dword [rax + rax]
inc rbx
movzx eax, byte [rbx]
cmp al, 0x61
jl 0x1800d90d2
cmp al, 0x7a
jle 0x1800d91c1
cmp al, 0x41
jl 0x1800d90de
cmp al, 0x5a
jle 0x1800d91c1
cmp al, 0x30
jl 0x1800d90ea
cmp al, 0x39
jle 0x1800d91c1
cmp al, 0x2d
je 0x1800d91c1
cmp al, 0x5f
je 0x1800d91c1
cmp al, 0x2e
je 0x1800d91c1
cmp al, 0x21
je 0x1800d91c1
cmp al, 0x7e
je 0x1800d91c1
cmp al, 0x2a
je 0x1800d91c1
cmp al, 0x27
je 0x1800d91c1
cmp al, 0x28
je 0x1800d91c1
cmp al, 0x29
je 0x1800d91c1
cmp al, 0x25
jne 0x1800d917a
movzx ecx, byte [rbx + 1]
cmp cl, 0x30
jl 0x1800d9144
cmp cl, 0x39
jle 0x1800d9158
cmp cl, 0x61
jl 0x1800d914e
cmp cl, 0x66
jle 0x1800d9158
cmp cl, 0x41
jl 0x1800d917a
cmp cl, 0x46
jg 0x1800d917a
movzx ecx, byte [rbx + 2]
cmp cl, 0x30
jl 0x1800d9166
cmp cl, 0x39
jle 0x1800d91c1
cmp cl, 0x61
jl 0x1800d9170
cmp cl, 0x66
jle 0x1800d91c1
cmp cl, 0x41
jl 0x1800d917a
cmp cl, 0x46
jle 0x1800d91c1
cmp al, 0x3a
je 0x1800d91c1
cmp al, 0x40
je 0x1800d91c1
cmp al, 0x26
je 0x1800d91c1
cmp al, 0x3d
je 0x1800d91c1
cmp al, 0x2b
je 0x1800d91c1
cmp al, 0x24
je 0x1800d91c1
cmp al, 0x2c
je 0x1800d91c1
test rbp, rbp
je 0x1800d91d2
test byte [rbp + 0x48], 1
je 0x1800d91d2
cmp al, 0x7b
je 0x1800d91c1
cmp al, 0x7d
je 0x1800d91c1
cmp al, 0x7c
je 0x1800d91c1
cmp al, 0x5c
je 0x1800d91c1
cmp al, 0x5e
je 0x1800d91c1
cmp al, 0x5b
je 0x1800d91c1
cmp al, 0x5d
je 0x1800d91c1
cmp al, 0x60
jne 0x1800d91d2
cmp al, 0x25
jne 0x1800d90c0
add rbx, 3
jmp 0x1800d90c3
cmp byte [rbx], 0x3b
je 0x1800d90c0
cmp byte [rbx], 0x2f
jne 0x1800d91e8
inc rbx
jmp 0x1800d8fa0
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], rdi
test rbp, rbp
je 0x1800d92d0
mov edx, ebx
xor esi, esi
sub edx, dword [r12]
test r8d, r8d
je 0x1800d920a
inc edx
mov rdi, qword [rbp + 0x30]
test rdi, rdi
je 0x1800d9226
or rcx, 0xffffffffffffffff
xor eax, eax
repne scasb al, byte [rdi]
not rcx
dec rcx
mov rsi, rcx
add edx, ecx
lea eax, [rdx + 1]
movsxd rcx, eax
call qword [sym.VBoxRT.dll_xmlMallocAtomic]
mov rdi, rax
test rax, rax
jne 0x1800d9258
call sym.VBoxRT.dll___xmlGenericError
mov rdi, rax
call sym.VBoxRT.dll___xmlGenericErrorContext
lea rdx, str.xmlParseURIPathSegments:_out_of_memory_n
mov rcx, qword [rax]
call qword [rdi]
or eax, 0xffffffff
jmp 0x1800d92d2
mov rdx, qword [rbp + 0x30]
test rdx, rdx
je 0x1800d926c
movsxd r8, esi
mov rcx, rax
call sub.MSVCR100.dll_memcpy
test r13d, r13d
je 0x1800d927a
movsxd rax, esi
inc esi
mov byte [rax + rdi], 0x2f
movsxd rsi, esi
mov r8, rbx
lea rax, [rsi + rdi]
mov byte [rax], 0
mov rcx, qword [r12]
sub r8, rcx
test r8, r8
jle 0x1800d92bd
test byte [rbp + 0x48], 2
je 0x1800d92b1
mov rdx, rcx
mov rcx, rax
call sub.MSVCR100.dll_memcpy
sub rsi, qword [r12]
add rsi, rdi
mov byte [rsi + rbx], 0
jmp 0x1800d92bd
mov edx, ebx
mov r8, rax
sub edx, ecx
call sym.VBoxRT.dll_xmlURIUnescapeString
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x1800d92cc
call qword [sym.VBoxRT.dll_xmlFree]
mov qword [rbp + 0x30], rdi
xor eax, eax
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov qword [r12], rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop r13
pop r12
pop rbp
ret