Function at 0x1800d8830
Capabilities:
Parse credit card information

Disassembly:
push rsi
push r13
sub rsp, 0x28
mov r13, rdx
mov rsi, rcx
test rdx, rdx
jne 0x1800d884e
or eax, 0xffffffff
add rsp, 0x28
pop r13
pop rsi
ret
mov qword [rsp + 0x40], rbx
mov rbx, qword [rdx]
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x20], r14
movzx eax, byte [rbx]
cmp al, 0x61
jl 0x1800d886f
cmp al, 0x7a
jle 0x1800d8917
cmp al, 0x41
jl 0x1800d887b
cmp al, 0x5a
jle 0x1800d8917
cmp al, 0x30
jl 0x1800d8887
cmp al, 0x39
jle 0x1800d8917
cmp al, 0x2d
je 0x1800d8917
cmp al, 0x5f
je 0x1800d8917
cmp al, 0x2e
je 0x1800d8917
cmp al, 0x21
je 0x1800d8917
cmp al, 0x7e
je 0x1800d8917
cmp al, 0x2a
je 0x1800d8917
cmp al, 0x27
je 0x1800d8917
cmp al, 0x28
je 0x1800d8917
cmp al, 0x29
je 0x1800d8917
cmp al, 0x25
jne 0x1800d88fb
movzx ecx, byte [rbx + 1]
cmp cl, 0x30
jl 0x1800d88c5
cmp cl, 0x39
jle 0x1800d88d9
cmp cl, 0x61
jl 0x1800d88cf
cmp cl, 0x66
jle 0x1800d88d9
cmp cl, 0x41
jl 0x1800d88fb
cmp cl, 0x46
jg 0x1800d88fb
movzx ecx, byte [rbx + 2]
cmp cl, 0x30
jl 0x1800d88e7
cmp cl, 0x39
jle 0x1800d8917
cmp cl, 0x61
jl 0x1800d88f1
cmp cl, 0x66
jle 0x1800d8917
cmp cl, 0x41
jl 0x1800d88fb
cmp cl, 0x46
jle 0x1800d8917
cmp al, 0x3b
je 0x1800d8917
cmp al, 0x3a
je 0x1800d8917
cmp al, 0x26
je 0x1800d8917
cmp al, 0x3d
je 0x1800d8917
cmp al, 0x2b
je 0x1800d8917
cmp al, 0x24
je 0x1800d8917
cmp al, 0x2c
jne 0x1800d892c
cmp al, 0x25
jne 0x1800d8924
add rbx, 3
jmp 0x1800d8860
inc rbx
jmp 0x1800d8860
xor r14d, r14d
cmp byte [rbx], 0x40
jne 0x1800d8975
test rsi, rsi
je 0x1800d8970
mov rcx, qword [rsi + 0x20]
test rcx, rcx
je 0x1800d8948
call qword [sym.VBoxRT.dll_xmlFree]
mov rcx, qword [r13]
mov edx, ebx
sub edx, ecx
test byte [rsi + 0x48], 2
je 0x1800d8964
call sym.VBoxRT.dll_xmlStrndup
inc rbx
mov qword [rsi + 0x20], rax
jmp 0x1800d8991
xor r8d, r8d
call sym.VBoxRT.dll_xmlURIUnescapeString
mov qword [rsi + 0x20], rax
inc rbx
jmp 0x1800d8991
test rsi, rsi
je 0x1800d898d
mov rcx, qword [rsi + 0x20]
test rcx, rcx
je 0x1800d8989
call qword [sym.VBoxRT.dll_xmlFree]
mov qword [rsi + 0x20], r14
mov rbx, qword [r13]
movzx eax, byte [rbx]
mov r12, rbx
cmp al, 0x2f
jne 0x1800d89d1
test rsi, rsi
je 0x1800d89ca
mov rcx, qword [rsi + 0x10]
test rcx, rcx
je 0x1800d89af
call qword [sym.VBoxRT.dll_xmlFree]
mov rcx, qword [rsi + 0x18]
mov qword [rsi + 0x10], r14
test rcx, rcx
je 0x1800d89c2
call qword [sym.VBoxRT.dll_xmlFree]
mov qword [rsi + 0x18], r14
mov dword [rsi + 0x28], r14d
xor eax, eax
jmp 0x1800d8c9d
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rdi
mov edi, r14d
cmp al, 0x5b
jne 0x1800d8a90
inc rbx
mov ecx, r14d
mov rbp, rbx
nop
cmp byte [rbx], 0x3a
jne 0x1800d8a14
test ecx, ecx
jne 0x1800d8c8e
test edi, edi
jne 0x1800d8a0d
inc rbx
cmp byte [rbx], 0x3a
jne 0x1800d8c8e
mov ecx, 1
jmp 0x1800d8a3e
movzx eax, byte [rbx]
cmp al, 0x30
jl 0x1800d8a1f
cmp al, 0x39
jle 0x1800d8a2f
cmp al, 0x61
jl 0x1800d8a27
cmp al, 0x66
jle 0x1800d8a2f
cmp al, 0x41
jl 0x1800d8a34
cmp al, 0x46
jg 0x1800d8a34
inc rbx
jmp 0x1800d8a14
cmp edi, 7
je 0x1800d8a41
cmp byte [rbx], 0x3a
jne 0x1800d8a48
inc rbx
inc edi
cmp edi, 8
jl 0x1800d89f0
test ecx, ecx
jne 0x1800d8a55
cmp edi, 8
jne 0x1800d8c8e
cmp byte [rbx], 0x5d
jne 0x1800d8c8e
test rsi, rsi
je 0x1800d8a85
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x1800d8a72
call qword [sym.VBoxRT.dll_xmlFree]
mov edx, ebx
mov rcx, rbp
sub edx, r12d
dec edx
call sym.VBoxRT.dll_xmlStrndup
mov qword [rsi + 0x18], rax
inc rbx
jmp 0x1800d8ac3
movzx eax, byte [rbx]
cmp al, 0x2e
je 0x1800d8c8e
cmp al, 0x30
jl 0x1800d8aaf
nop
cmp al, 0x39
jg 0x1800d8aaf
movzx eax, byte [rbx + 1]
inc rbx
cmp al, 0x30
jge 0x1800d8aa0
cmp edi, 3
je 0x1800d8abc
cmp byte [rbx], 0x2e
jne 0x1800d8ac3
inc rbx
inc edi
cmp edi, 4
jl 0x1800d8a90
cmp byte [r12], 0x5b
je 0x1800d8be8
cmp edi, 4
jl 0x1800d8af7
movzx eax, byte [rbx]
cmp al, 0x2e
jne 0x1800d8adf
inc rbx
jmp 0x1800d8af7
cmp al, 0x61
jl 0x1800d8ae7
cmp al, 0x7a
jle 0x1800d8af7
cmp al, 0x41
jl 0x1800d8be8
cmp al, 0x5a
jg 0x1800d8be8
movzx eax, byte [rbx]
cmp al, 0x61
jl 0x1800d8b02
cmp al, 0x7a
jle 0x1800d8b20
cmp al, 0x41
jl 0x1800d8b0a
cmp al, 0x5a
jle 0x1800d8b20
cmp al, 0x30
jl 0x1800d8bde
cmp al, 0x39
jg 0x1800d8bde
nop word [rax + rax]
movzx eax, byte [rbx + 1]
inc rbx
cmp al, 0x61
jl 0x1800d8b2f
cmp al, 0x7a
jle 0x1800d8b20
movzx eax, byte [rbx]
cmp al, 0x41
jl 0x1800d8b3a
cmp al, 0x5a
jle 0x1800d8b20
cmp al, 0x30
jl 0x1800d8b42
cmp al, 0x39
jle 0x1800d8b20
cmp al, 0x2d
jne 0x1800d8b56
cmp byte [rbx - 1], 0x2e
jne 0x1800d8b20
mov eax, 5
jmp 0x1800d8c93
cmp al, 0x2e
jne 0x1800d8b7a
movzx eax, byte [rbx - 1]
cmp al, 0x2d
je 0x1800d8b70
cmp al, 0x2e
jne 0x1800d8b20
mov eax, 7
jmp 0x1800d8c93
mov eax, 6
jmp 0x1800d8c93
cmp byte [rbx - 1], 0x2e
lea rax, [rbx - 1]
mov rcx, rbx
cmove rcx, rax
nop dword [rax]
dec rcx
cmp rcx, r12
jb 0x1800d8bb3
movzx eax, byte [rcx]
cmp al, 0x61
jl 0x1800d8ba3
cmp al, 0x7a
jle 0x1800d8b90
cmp al, 0x41
jl 0x1800d8bab
cmp al, 0x5a
jle 0x1800d8b90
cmp al, 0x30
jl 0x1800d8bb3
cmp al, 0x39
jle 0x1800d8b90
inc rcx
cmp rcx, r12
je 0x1800d8bc1
cmp byte [rcx - 1], 0x2e
jne 0x1800d8be8
movzx eax, byte [rcx]
cmp al, 0x61
jl 0x1800d8bcc
cmp al, 0x7a
jle 0x1800d8be8
cmp al, 0x41
jl 0x1800d8bd4
cmp al, 0x5a
jle 0x1800d8be8
mov eax, 8
jmp 0x1800d8c93
mov eax, 4
jmp 0x1800d8c93
test rsi, rsi
je 0x1800d8c37
mov rcx, qword [rsi + 0x10]
test rcx, rcx
je 0x1800d8bfc
call qword [sym.VBoxRT.dll_xmlFree]
mov qword [rsi + 0x10], r14
cmp byte [r12], 0x5b
je 0x1800d8c37
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x1800d8c16
call qword [sym.VBoxRT.dll_xmlFree]
mov edx, ebx
mov rcx, r12
sub edx, r12d
test byte [rsi + 0x48], 2
je 0x1800d8c2b
call sym.VBoxRT.dll_xmlStrndup
jmp 0x1800d8c33
xor r8d, r8d
call sym.VBoxRT.dll_xmlURIUnescapeString
mov qword [rsi + 0x18], rax
cmp byte [rbx], 0x3a
jne 0x1800d8c86
movzx eax, byte [rbx + 1]
inc rbx
cmp al, 0x30
jl 0x1800d8c86
cmp al, 0x39
jg 0x1800d8c86
test rsi, rsi
je 0x1800d8c54
mov dword [rsi + 0x28], r14d
movzx edx, byte [rbx]
cmp dl, 0x30
jl 0x1800d8c86
nop dword [rax]
cmp dl, 0x39
jg 0x1800d8c86
test rsi, rsi
je 0x1800d8c7a
mov eax, dword [rsi + 0x28]
lea ecx, [rax + rax*4]
movsx eax, dl
lea ecx, [rax + rcx*2 - 0x30]
mov dword [rsi + 0x28], ecx
movzx edx, byte [rbx + 1]
inc rbx
cmp dl, 0x30
jge 0x1800d8c60
mov qword [r13], rbx
xor eax, eax
jmp 0x1800d8c93
mov eax, 3
mov rdi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
mov r12, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x20]
add rsp, 0x28
pop r13
pop rsi
ret