Function at 0x1800d6e90
Capabilities:
Parse credit card information

Disassembly:
push r14
sub rsp, 0x40
mov r14, rcx
test rcx, rcx
jne 0x1800d6ea7
xor eax, eax
add rsp, 0x40
pop r14
ret
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x60], rsi
mov esi, 0x50
lea ecx, [rsi + 1]
mov qword [rsp + 0x38], rdi
call qword [sym.VBoxRT.dll_xmlMallocAtomic]
mov rdi, rax
test rax, rax
jne 0x1800d6eec
call sym.VBoxRT.dll___xmlGenericError
mov rbx, rax
call sym.VBoxRT.dll___xmlGenericErrorContext
lea rdx, str.xmlSaveUri:_out_of_memory_n
mov rcx, qword [rax]
call qword [rbx]
xor eax, eax
jmp 0x1800d79f4
mov qword [rsp + 0x58], rbp
mov rbp, qword [r14]
xor ebx, ebx
mov qword [rsp + 0x30], r12
test rbp, rbp
je 0x1800d6f8a
mov r12d, ebx
cmp byte [rbp], bl
je 0x1800d6f81
nop dword [rax]
cmp ebx, esi
jl 0x1800d6f2d
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d6f61
movzx eax, byte [rbp]
inc rbp
inc r12
mov byte [r12 + rdi - 1], al
inc ebx
cmp byte [rbp], 0
jne 0x1800d6f10
cmp ebx, esi
jl 0x1800d6f81
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
jne 0x1800d6f81
call sym.VBoxRT.dll___xmlGenericError
mov rbx, rax
call sym.VBoxRT.dll___xmlGenericErrorContext
lea rdx, str.xmlSaveUri:_out_of_memory_n
mov rcx, qword [rax]
call qword [rbx]
xor eax, eax
jmp 0x1800d79ea
movsxd rax, ebx
inc ebx
mov byte [rax + rdi], 0x3a
mov rbp, qword [r14 + 8]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r15
mov r15d, reloc.WS2_32.dll_getservbyname
test rbp, rbp
je 0x1800d70f4
cmp byte [rbp], 0
movsxd r12, ebx
je 0x1800d7819
lea r13d, [rbx + 3]
cmp r13d, esi
jl 0x1800d6fda
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movzx eax, byte [rbp]
cmp al, 0x3b
je 0x1800d70d6
cmp al, 0x2f
je 0x1800d70d6
cmp al, 0x3f
je 0x1800d70d6
cmp al, 0x3a
je 0x1800d70d6
cmp al, 0x40
je 0x1800d70d6
cmp al, 0x26
je 0x1800d70d6
cmp al, 0x3d
je 0x1800d70d6
cmp al, 0x2b
je 0x1800d70d6
cmp al, 0x24
je 0x1800d70d6
cmp al, 0x2c
je 0x1800d70d6
cmp al, 0x5b
je 0x1800d70d6
cmp al, 0x5d
je 0x1800d70d6
cmp al, 0x61
jl 0x1800d704a
cmp al, 0x7a
jle 0x1800d70d6
cmp al, 0x41
jl 0x1800d7056
cmp al, 0x5a
jle 0x1800d70d6
cmp al, 0x30
jl 0x1800d705e
cmp al, 0x39
jle 0x1800d70d6
cmp al, 0x2d
je 0x1800d70d6
cmp al, 0x5f
je 0x1800d70d6
cmp al, 0x2e
je 0x1800d70d6
cmp al, 0x21
je 0x1800d70d6
cmp al, 0x7e
je 0x1800d70d6
cmp al, 0x2a
je 0x1800d70d6
cmp al, 0x27
je 0x1800d70d6
cmp al, 0x28
je 0x1800d70d6
cmp al, 0x29
je 0x1800d70d6
movzx eax, al
inc rbp
mov byte [r12 + rdi], 0x25
cdq
mov ecx, gethostbyname
and edx, 0xf
add eax, edx
mov r8d, eax
and eax, 0xf
sub eax, edx
sar r8d, 4
mov edx, eax
cmp r8d, 9
mov eax, gethostbyname
cmovg ecx, r15d
add cl, r8b
cmp edx, 9
cmovg eax, r15d
mov byte [r12 + rdi + 1], cl
add ebx, 3
add al, dl
add r13d, 3
add r12, 3
mov byte [r12 + rdi - 1], al
jmp 0x1800d70e5
mov byte [r12 + rdi], al
inc r12
inc ebx
inc r13d
inc rbp
cmp byte [rbp], 0
jne 0x1800d6fb8
jmp 0x1800d7819
cmp qword [r14 + 0x18], 0
je 0x1800d7324
lea eax, [rbx + 3]
cmp eax, esi
jl 0x1800d7123
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movsxd rax, ebx
inc ebx
mov byte [rax + rdi], 0x2f
movsxd rax, ebx
inc ebx
mov byte [rax + rdi], 0x2f
mov rbp, qword [r14 + 0x20]
test rbp, rbp
je 0x1800d728b
cmp byte [rbp], 0
movsxd r12, ebx
je 0x1800d725e
lea r13d, [rbx + 3]
cmp r13d, esi
jl 0x1800d7175
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movzx eax, byte [rbp]
cmp al, 0x61
jl 0x1800d7185
cmp al, 0x7a
jle 0x1800d7245
cmp al, 0x41
jl 0x1800d7191
cmp al, 0x5a
jle 0x1800d7245
cmp al, 0x30
jl 0x1800d719d
cmp al, 0x39
jle 0x1800d7245
cmp al, 0x2d
je 0x1800d7245
cmp al, 0x5f
je 0x1800d7245
cmp al, 0x2e
je 0x1800d7245
cmp al, 0x21
je 0x1800d7245
cmp al, 0x7e
je 0x1800d7245
cmp al, 0x2a
je 0x1800d7245
cmp al, 0x27
je 0x1800d7245
cmp al, 0x28
je 0x1800d7245
cmp al, 0x29
je 0x1800d7245
cmp al, 0x3b
je 0x1800d7245
cmp al, 0x3a
je 0x1800d7245
cmp al, 0x26
je 0x1800d7245
cmp al, 0x3d
je 0x1800d7245
cmp al, 0x2b
je 0x1800d7245
cmp al, 0x24
je 0x1800d7245
cmp al, 0x2c
je 0x1800d7245
movzx eax, al
inc rbp
mov byte [r12 + rdi], 0x25
cdq
mov ecx, gethostbyname
and edx, 0xf
add eax, edx
mov r8d, eax
and eax, 0xf
sub eax, edx
sar r8d, 4
mov edx, eax
cmp r8d, 9
mov eax, gethostbyname
cmovg ecx, r15d
add cl, r8b
cmp edx, 9
cmovg eax, r15d
mov byte [r12 + rdi + 1], cl
add ebx, 3
add al, dl
add r13d, 3
add r12, 3
mov byte [r12 + rdi - 1], al
jmp 0x1800d7254
mov byte [r12 + rdi], al
inc r12
inc ebx
inc r13d
inc rbp
cmp byte [rbp], 0
jne 0x1800d7153
lea eax, [rbx + 3]
cmp eax, esi
jl 0x1800d7282
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movsxd rax, ebx
inc ebx
mov byte [rax + rdi], 0x40
mov rbp, qword [r14 + 0x18]
movsxd r12, ebx
cmp byte [rbp], 0
je 0x1800d72d0
cmp ebx, esi
jl 0x1800d72b9
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movzx eax, byte [rbp]
inc rbp
inc r12
mov byte [r12 + rdi - 1], al
inc ebx
cmp byte [rbp], 0
jne 0x1800d7298
cmp dword [r14 + 0x28], 0
jle 0x1800d74d5
lea eax, [rbx + 0xa]
cmp eax, esi
jl 0x1800d72ff
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
mov r9d, dword [r14 + 0x28]
mov eax, esi
movsxd rcx, ebx
sub eax, ebx
lea r8, [0x18030dba0]
add rcx, rdi
movsxd rdx, eax
call qword [sym.imp.MSVCR100.dll__snprintf]
add ebx, eax
jmp 0x1800d74d5
cmp qword [r14 + 0x10], 0
je 0x1800d7499
lea eax, [rbx + 3]
cmp eax, esi
jl 0x1800d7353
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movsxd rax, ebx
inc ebx
mov byte [rax + rdi], 0x2f
movsxd rax, ebx
inc ebx
mov byte [rax + rdi], 0x2f
mov rbp, qword [r14 + 0x10]
movsxd r12, ebx
cmp byte [rbp], 0
je 0x1800d74d5
lea r13d, [rbx + 3]
nop word [rax + rax]
cmp r13d, esi
jl 0x1800d73a2
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movzx eax, byte [rbp]
cmp al, 0x61
jl 0x1800d73b2
cmp al, 0x7a
jle 0x1800d747e
cmp al, 0x41
jl 0x1800d73be
cmp al, 0x5a
jle 0x1800d747e
cmp al, 0x30
jl 0x1800d73ca
cmp al, 0x39
jle 0x1800d747e
cmp al, 0x2d
je 0x1800d747e
cmp al, 0x5f
je 0x1800d747e
cmp al, 0x2e
je 0x1800d747e
cmp al, 0x21
je 0x1800d747e
cmp al, 0x7e
je 0x1800d747e
cmp al, 0x2a
je 0x1800d747e
cmp al, 0x27
je 0x1800d747e
cmp al, 0x28
je 0x1800d747e
cmp al, 0x29
je 0x1800d747e
cmp al, 0x24
je 0x1800d747e
cmp al, 0x2c
je 0x1800d747e
cmp al, 0x3b
je 0x1800d747e
cmp al, 0x3a
je 0x1800d747e
cmp al, 0x40
je 0x1800d747e
cmp al, 0x26
je 0x1800d747e
cmp al, 0x3d
je 0x1800d747e
cmp al, 0x2b
je 0x1800d747e
movzx eax, al
inc rbp
mov byte [r12 + rdi], 0x25
cdq
mov ecx, gethostbyname
and edx, 0xf
add eax, edx
mov r8d, eax
and eax, 0xf
sub eax, edx
sar r8d, 4
mov edx, eax
cmp r8d, 9
mov eax, gethostbyname
cmovg ecx, r15d
add cl, r8b
cmp edx, 9
cmovg eax, r15d
mov byte [r12 + rdi + 1], cl
add ebx, 3
add al, dl
add r13d, 3
add r12, 3
mov byte [r12 + rdi - 1], al
jmp 0x1800d748d
mov byte [r12 + rdi], al
inc r12
inc ebx
inc r13d
inc rbp
cmp byte [rbp], 0
jne 0x1800d7380
jmp 0x1800d74d5
cmp qword [r14], 0
je 0x1800d74d5
lea eax, [rbx + 3]
cmp eax, esi
jl 0x1800d74c3
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movsxd rax, ebx
inc ebx
mov byte [rax + rdi], 0x2f
movsxd rax, ebx
inc ebx
mov byte [rax + rdi], 0x2f
mov rbp, qword [r14 + 0x30]
test rbp, rbp
je 0x1800d7606
cmp byte [rbp], 0
movsxd r12, ebx
je 0x1800d7606
lea r13d, [rbx + 3]
cmp r13d, esi
jl 0x1800d7515
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movzx eax, byte [rbp]
cmp al, 0x61
jl 0x1800d7525
cmp al, 0x7a
jle 0x1800d75ed
cmp al, 0x41
jl 0x1800d7531
cmp al, 0x5a
jle 0x1800d75ed
cmp al, 0x30
jl 0x1800d753d
cmp al, 0x39
jle 0x1800d75ed
cmp al, 0x2d
je 0x1800d75ed
cmp al, 0x5f
je 0x1800d75ed
cmp al, 0x2e
je 0x1800d75ed
cmp al, 0x21
je 0x1800d75ed
cmp al, 0x7e
je 0x1800d75ed
cmp al, 0x2a
je 0x1800d75ed
cmp al, 0x27
je 0x1800d75ed
cmp al, 0x28
je 0x1800d75ed
cmp al, 0x29
je 0x1800d75ed
cmp al, 0x2f
je 0x1800d75ed
cmp al, 0x3b
je 0x1800d75ed
cmp al, 0x40
je 0x1800d75ed
cmp al, 0x26
je 0x1800d75ed
cmp al, 0x3d
je 0x1800d75ed
cmp al, 0x2b
je 0x1800d75ed
cmp al, 0x24
je 0x1800d75ed
cmp al, 0x2c
je 0x1800d75ed
movzx eax, al
inc rbp
mov byte [r12 + rdi], 0x25
cdq
mov ecx, gethostbyname
and edx, 0xf
add eax, edx
mov r8d, eax
and eax, 0xf
sub eax, edx
sar r8d, 4
mov edx, eax
cmp r8d, 9
mov eax, gethostbyname
cmovg ecx, r15d
add cl, r8b
cmp edx, 9
cmovg eax, r15d
mov byte [r12 + rdi + 1], cl
add ebx, 3
add al, dl
add r13d, 3
add r12, 3
mov byte [r12 + rdi - 1], al
jmp 0x1800d75fc
mov byte [r12 + rdi], al
inc r12
inc ebx
inc r13d
inc rbp
cmp byte [rbp], 0
jne 0x1800d74f3
cmp qword [r14 + 0x50], 0
je 0x1800d7695
lea ebp, [rbx + 1]
cmp ebp, esi
jl 0x1800d7635
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movsxd rax, ebx
movsxd rbx, ebp
mov byte [rax + rdi], 0x3f
mov rbp, qword [r14 + 0x50]
mov r13, rbx
cmp byte [rbp], 0
je 0x1800d7819
lea r12d, [rbx + 1]
cmp r12d, esi
jl 0x1800d7676
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movzx eax, byte [rbp]
inc rbp
inc r13
mov byte [r13 + rdi - 1], al
inc ebx
inc r12d
cmp byte [rbp], 0
jne 0x1800d7654
jmp 0x1800d7819
cmp qword [r14 + 0x38], 0
je 0x1800d7819
lea eax, [rbx + 3]
cmp eax, esi
jl 0x1800d76c4
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movsxd rax, ebx
inc ebx
mov byte [rax + rdi], 0x3f
mov rbp, qword [r14 + 0x38]
movsxd r12, ebx
cmp byte [rbp], 0
je 0x1800d7819
lea r13d, [rbx + 3]
cmp r13d, esi
jl 0x1800d7704
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movzx eax, byte [rbp]
cmp al, 0x61
jl 0x1800d7714
cmp al, 0x7a
jle 0x1800d7800
cmp al, 0x41
jl 0x1800d7720
cmp al, 0x5a
jle 0x1800d7800
cmp al, 0x30
jl 0x1800d772c
cmp al, 0x39
jle 0x1800d7800
cmp al, 0x2d
je 0x1800d7800
cmp al, 0x5f
je 0x1800d7800
cmp al, 0x2e
je 0x1800d7800
cmp al, 0x21
je 0x1800d7800
cmp al, 0x7e
je 0x1800d7800
cmp al, 0x2a
je 0x1800d7800
cmp al, 0x27
je 0x1800d7800
cmp al, 0x28
je 0x1800d7800
cmp al, 0x29
je 0x1800d7800
cmp al, 0x3b
je 0x1800d7800
cmp al, 0x2f
je 0x1800d7800
cmp al, 0x3f
je 0x1800d7800
cmp al, 0x3a
je 0x1800d7800
cmp al, 0x40
je 0x1800d7800
cmp al, 0x26
je 0x1800d7800
cmp al, 0x3d
je 0x1800d7800
cmp al, 0x2b
je 0x1800d7800
cmp al, 0x24
je 0x1800d7800
cmp al, 0x2c
je 0x1800d7800
cmp al, 0x5b
je 0x1800d7800
cmp al, 0x5d
je 0x1800d7800
movzx eax, al
inc rbp
mov byte [r12 + rdi], 0x25
cdq
mov ecx, gethostbyname
and edx, 0xf
add eax, edx
mov r8d, eax
and eax, 0xf
sub eax, edx
sar r8d, 4
mov edx, eax
cmp r8d, 9
mov eax, gethostbyname
cmovg ecx, r15d
add cl, r8b
cmp edx, 9
cmovg eax, r15d
mov byte [r12 + rdi + 1], cl
add ebx, 3
add al, dl
add r13d, 3
add r12, 3
mov byte [r12 + rdi - 1], al
jmp 0x1800d780f
mov byte [r12 + rdi], al
inc r12
inc ebx
inc r13d
inc rbp
cmp byte [rbp], 0
jne 0x1800d76e2
cmp qword [r14 + 0x40], 0
je 0x1800d799d
lea eax, [rbx + 3]
cmp eax, esi
jl 0x1800d7848
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movsxd rax, ebx
inc ebx
mov byte [rax + rdi], 0x23
mov rbp, qword [r14 + 0x40]
movsxd r12, ebx
cmp byte [rbp], 0
je 0x1800d799d
lea r13d, [rbx + 3]
cmp r13d, esi
jl 0x1800d7888
add esi, esi
mov rcx, rdi
lea eax, [rsi + 1]
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
je 0x1800d79b9
movzx eax, byte [rbp]
cmp al, 0x61
jl 0x1800d7898
cmp al, 0x7a
jle 0x1800d7984
cmp al, 0x41
jl 0x1800d78a4
cmp al, 0x5a
jle 0x1800d7984
cmp al, 0x30
jl 0x1800d78b0
cmp al, 0x39
jle 0x1800d7984
cmp al, 0x2d
je 0x1800d7984
cmp al, 0x5f
je 0x1800d7984
cmp al, 0x2e
je 0x1800d7984
cmp al, 0x21
je 0x1800d7984
cmp al, 0x7e
je 0x1800d7984
cmp al, 0x2a
je 0x1800d7984
cmp al, 0x27
je 0x1800d7984
cmp al, 0x28
je 0x1800d7984
cmp al, 0x29
je 0x1800d7984
cmp al, 0x3b
je 0x1800d7984
cmp al, 0x2f
je 0x1800d7984
cmp al, 0x3f
je 0x1800d7984
cmp al, 0x3a
je 0x1800d7984
cmp al, 0x40
je 0x1800d7984
cmp al, 0x26
je 0x1800d7984
cmp al, 0x3d
je 0x1800d7984
cmp al, 0x2b
je 0x1800d7984
cmp al, 0x24
je 0x1800d7984
cmp al, 0x2c
je 0x1800d7984
cmp al, 0x5b
je 0x1800d7984
cmp al, 0x5d
je 0x1800d7984
movzx eax, al
inc rbp
mov byte [r12 + rdi], 0x25
cdq
mov ecx, gethostbyname
and edx, 0xf
add eax, edx
mov r8d, eax
and eax, 0xf
sub eax, edx
sar r8d, 4
mov edx, eax
cmp r8d, 9
mov eax, gethostbyname
cmovg ecx, r15d
add cl, r8b
cmp edx, 9
cmovg eax, r15d
mov byte [r12 + rdi + 1], cl
add ebx, 3
add al, dl
add r13d, 3
add r12, 3
mov byte [r12 + rdi - 1], al
jmp 0x1800d7993
mov byte [r12 + rdi], al
inc r12
inc ebx
inc r13d
inc rbp
cmp byte [rbp], 0
jne 0x1800d7866
cmp ebx, esi
jl 0x1800d79d6
lea eax, [rsi + rsi + 1]
mov rcx, rdi
movsxd rdx, eax
call qword [sym.VBoxRT.dll_xmlRealloc]
mov rdi, rax
test rax, rax
jne 0x1800d79d6
call sym.VBoxRT.dll___xmlGenericError
mov rbx, rax
call sym.VBoxRT.dll___xmlGenericErrorContext
lea rdx, str.xmlSaveUri:_out_of_memory_n
mov rcx, qword [rax]
call qword [rbx]
xor eax, eax
jmp 0x1800d79e0
movsxd rax, ebx
mov byte [rax + rdi], 0
mov rax, rdi
mov r13, qword [rsp + 0x28]
mov r15, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x58]
mov r12, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x38]
add rsp, 0x40
pop r14
ret