Function at 0x425be1
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
push eax
push eax
xor eax, eax
cmp dword [ebp + 8], 0
je 0x4264d0
mov dword [ebp - 0x10], 0x50
push 0x51
call dword [0x4fa8d8]
mov ebx, eax
pop eax
test ebx, ebx
je 0x4264b5
mov edx, dword [ebp + 8]
xor esi, esi
mov eax, dword [edx]
test eax, eax
je 0x425c6f
mov edi, eax
cmp byte [edi], 0
je 0x425c4a
cmp esi, dword [ebp - 0x10]
jl 0x425c41
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
pop ecx
mov ebx, eax
pop eax
test ebx, ebx
je 0x4264b5
mov al, byte [edi]
inc edi
mov byte [esi + ebx], al
inc esi
jmp 0x425c1c
cmp esi, dword [ebp - 0x10]
jl 0x425c6a
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
mov ebx, eax
pop eax
test ebx, ebx
pop edx
je 0x4264b5
mov byte [esi + ebx], 0x3a
inc esi
mov edx, dword [ebp + 8]
mov eax, dword [edx + 4]
test eax, eax
je 0x425d96
mov edi, eax
cmp byte [edi], 0
je 0x426347
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x425cab
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
pop ecx
mov ebx, eax
pop eax
test ebx, ebx
je 0x4264b5
mov cl, byte [edi]
cmp cl, 0x3b
sete dl
cmp cl, 0x2f
sete al
or eax, edx
test al, 1
jne 0x425d47
cmp cl, 0x3f
je 0x425d47
cmp cl, 0x3a
je 0x425d47
cmp cl, 0x40
je 0x425d47
cmp cl, 0x26
je 0x425d47
cmp cl, 0x3d
je 0x425d47
cmp cl, 0x2b
je 0x425d47
cmp cl, 0x24
je 0x425d47
cmp cl, 0x2c
je 0x425d47
cmp cl, 0x5b
je 0x425d47
cmp cl, 0x5d
je 0x425d47
lea eax, [ecx - 0x61]
cmp al, 0x19
lea eax, [ecx - 0x41]
setbe dl
cmp al, 0x19
setbe al
or eax, edx
test al, 1
jne 0x425d47
lea eax, [ecx - 0x30]
cmp al, 9
jbe 0x425d47
cmp cl, 0x2d
sete dl
cmp cl, 0x5f
sete al
or eax, edx
test al, 1
jne 0x425d47
cmp cl, 0x2e
je 0x425d47
cmp cl, 0x21
je 0x425d47
cmp cl, 0x7e
je 0x425d47
cmp cl, 0x2a
je 0x425d47
cmp cl, 0x27
je 0x425d47
cmp cl, 0x28
je 0x425d47
cmp cl, 0x29
jne 0x425d51
mov byte [esi + ebx], cl
inc edi
inc esi
jmp 0x425c7f
movzx edx, cl
mov eax, edx
mov ecx, 0x10
cdq
idiv ecx
mov dword [ebp - 0x14], eax
mov byte [esi + ebx], 0x25
inc esi
inc edi
mov ecx, esi
inc esi
cmp eax, 9
jle 0x425d77
mov al, byte [ebp - 0x14]
add eax, 0x37
jmp 0x425d7d
mov al, byte [ebp - 0x14]
add eax, 0x30
mov byte [ecx + ebx], al
mov ecx, esi
lea eax, [edx + 0x37]
inc esi
cmp edx, 9
jg 0x425d8e
lea eax, [edx + 0x30]
mov byte [ecx + ebx], al
jmp 0x425c7f
mov edx, dword [ebp + 8]
cmp dword [edx + 0xc], 0
je 0x425f82
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x425dc6
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
mov ebx, eax
pop eax
test ebx, ebx
pop edx
je 0x4264b5
mov byte [esi + ebx], 0x2f
inc esi
mov byte [esi + ebx], 0x2f
inc esi
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x10]
test eax, eax
je 0x425efa
mov edi, eax
cmp byte [edi], 0
je 0x425ed2
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x425e0c
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
pop ecx
mov ebx, eax
pop eax
test ebx, ebx
je 0x4264b5
mov cl, byte [edi]
lea eax, [ecx - 0x61]
cmp al, 0x19
lea eax, [ecx - 0x41]
setbe dl
cmp al, 0x19
setbe al
or eax, edx
test al, 1
jne 0x425e83
lea eax, [ecx - 0x30]
cmp al, 9
jbe 0x425e83
cmp cl, 0x2d
sete dl
cmp cl, 0x5f
sete al
or eax, edx
test al, 1
jne 0x425e83
cmp cl, 0x2e
je 0x425e83
cmp cl, 0x21
je 0x425e83
cmp cl, 0x7e
je 0x425e83
cmp cl, 0x2a
je 0x425e83
cmp cl, 0x27
je 0x425e83
cmp cl, 0x28
je 0x425e83
cmp cl, 0x29
je 0x425e83
cmp cl, 0x3b
je 0x425e83
cmp cl, 0x3a
je 0x425e83
cmp cl, 0x26
je 0x425e83
cmp cl, 0x3d
je 0x425e83
cmp cl, 0x2b
je 0x425e83
cmp cl, 0x24
je 0x425e83
cmp cl, 0x2c
jne 0x425e8d
mov byte [esi + ebx], cl
inc edi
inc esi
jmp 0x425de0
movzx edx, cl
mov eax, edx
mov ecx, 0x10
cdq
idiv ecx
mov dword [ebp - 0x14], eax
mov byte [esi + ebx], 0x25
inc esi
inc edi
mov ecx, esi
inc esi
cmp eax, 9
jle 0x425eb3
mov al, byte [ebp - 0x14]
add eax, 0x37
jmp 0x425eb9
mov al, byte [ebp - 0x14]
add eax, 0x30
mov byte [ecx + ebx], al
mov ecx, esi
lea eax, [edx + 0x37]
inc esi
cmp edx, 9
jg 0x425eca
lea eax, [edx + 0x30]
mov byte [ecx + ebx], al
jmp 0x425de0
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x425ef5
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
mov ebx, eax
pop eax
test ebx, ebx
pop edx
je 0x4264b5
mov byte [esi + ebx], 0x40
inc esi
mov edx, dword [ebp + 8]
mov edi, dword [edx + 0xc]
cmp byte [edi], 0
je 0x425f2e
cmp esi, dword [ebp - 0x10]
jl 0x425f25
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
pop ecx
mov ebx, eax
pop eax
test ebx, ebx
je 0x4264b5
mov al, byte [edi]
inc edi
mov byte [esi + ebx], al
inc esi
jmp 0x425f00
mov eax, dword [ebp + 8]
cmp dword [eax + 0x14], 0
jle 0x4260ee
lea eax, [esi + 0xa]
cmp eax, dword [ebp - 0x10]
jl 0x425f5e
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
mov ebx, eax
pop eax
test ebx, ebx
pop edx
je 0x4264b5
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x10]
sub eax, esi
push dword [edx + 0x14]
push 0x63e36d
push eax
lea eax, [ebx + esi]
push eax
call sub.msvcrt.dll__snprintf
add esp, 0x10
add esi, eax
jmp 0x4260ee
mov eax, dword [ebp + 8]
cmp dword [eax + 8], 0
je 0x4260b9
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x425fb2
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
pop ecx
mov ebx, eax
pop edi
test eax, eax
je 0x4264b5
mov byte [esi + ebx], 0x2f
inc esi
mov byte [esi + ebx], 0x2f
inc esi
mov edx, dword [ebp + 8]
mov edi, dword [edx + 8]
cmp byte [edi], 0
je 0x4260ee
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x425fee
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
mov ebx, eax
pop eax
test ebx, ebx
pop edx
je 0x4264b5
mov cl, byte [edi]
lea eax, [ecx - 0x61]
cmp al, 0x19
lea eax, [ecx - 0x41]
setbe dl
cmp al, 0x19
setbe al
or eax, edx
test al, 1
jne 0x42606a
lea eax, [ecx - 0x30]
cmp al, 9
jbe 0x42606a
cmp cl, 0x2d
sete dl
cmp cl, 0x5f
sete al
or eax, edx
test al, 1
jne 0x42606a
cmp cl, 0x2e
je 0x42606a
cmp cl, 0x21
je 0x42606a
cmp cl, 0x7e
je 0x42606a
cmp cl, 0x2a
je 0x42606a
cmp cl, 0x27
je 0x42606a
cmp cl, 0x28
je 0x42606a
cmp cl, 0x29
je 0x42606a
cmp cl, 0x24
je 0x42606a
cmp cl, 0x2c
je 0x42606a
cmp cl, 0x3b
je 0x42606a
cmp cl, 0x3a
je 0x42606a
cmp cl, 0x40
je 0x42606a
cmp cl, 0x26
je 0x42606a
cmp cl, 0x3d
je 0x42606a
cmp cl, 0x2b
jne 0x426074
mov byte [esi + ebx], cl
inc edi
inc esi
jmp 0x425fc2
movzx edx, cl
mov eax, edx
mov ecx, 0x10
cdq
idiv ecx
mov dword [ebp - 0x14], eax
mov byte [esi + ebx], 0x25
inc esi
inc edi
mov ecx, esi
inc esi
cmp eax, 9
jle 0x42609a
mov al, byte [ebp - 0x14]
add eax, 0x37
jmp 0x4260a0
mov al, byte [ebp - 0x14]
add eax, 0x30
mov byte [ecx + ebx], al
mov ecx, esi
lea eax, [edx + 0x37]
inc esi
cmp edx, 9
jg 0x4260b1
lea eax, [edx + 0x30]
mov byte [ecx + ebx], al
jmp 0x425fc2
mov edx, dword [ebp + 8]
cmp dword [edx], 0
je 0x4260ee
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x4260e4
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
pop ecx
mov ebx, eax
pop edi
test eax, eax
je 0x4264b5
mov byte [esi + ebx], 0x2f
inc esi
mov byte [esi + ebx], 0x2f
inc esi
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x18]
test eax, eax
je 0x4261f5
mov edi, eax
cmp byte [edi], 0
je 0x4261f5
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x42612a
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
mov ebx, eax
pop eax
test ebx, ebx
pop edx
je 0x4264b5
mov cl, byte [edi]
lea eax, [ecx - 0x61]
cmp al, 0x19
lea eax, [ecx - 0x41]
setbe dl
cmp al, 0x19
setbe al
or eax, edx
test al, 1
jne 0x4261a6
lea eax, [ecx - 0x30]
cmp al, 9
jbe 0x4261a6
cmp cl, 0x2d
sete dl
cmp cl, 0x5f
sete al
or eax, edx
test al, 1
jne 0x4261a6
cmp cl, 0x2e
je 0x4261a6
cmp cl, 0x21
je 0x4261a6
cmp cl, 0x7e
je 0x4261a6
cmp cl, 0x2a
je 0x4261a6
cmp cl, 0x27
je 0x4261a6
cmp cl, 0x28
je 0x4261a6
cmp cl, 0x29
je 0x4261a6
cmp cl, 0x2f
je 0x4261a6
cmp cl, 0x3b
je 0x4261a6
cmp cl, 0x40
je 0x4261a6
cmp cl, 0x26
je 0x4261a6
cmp cl, 0x3d
je 0x4261a6
cmp cl, 0x2b
je 0x4261a6
cmp cl, 0x24
je 0x4261a6
cmp cl, 0x2c
jne 0x4261b0
mov byte [esi + ebx], cl
inc edi
inc esi
jmp 0x4260fe
movzx edx, cl
mov eax, edx
mov ecx, 0x10
cdq
idiv ecx
mov dword [ebp - 0x14], eax
mov byte [esi + ebx], 0x25
inc esi
inc edi
mov ecx, esi
inc esi
cmp eax, 9
jle 0x4261d6
mov al, byte [ebp - 0x14]
add eax, 0x37
jmp 0x4261dc
mov al, byte [ebp - 0x14]
add eax, 0x30
mov byte [ecx + ebx], al
mov ecx, esi
lea eax, [edx + 0x37]
inc esi
cmp edx, 9
jg 0x4261ed
lea eax, [edx + 0x30]
mov byte [ecx + ebx], al
jmp 0x4260fe
mov edx, dword [ebp + 8]
cmp dword [edx + 0x1c], 0
je 0x426347
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x426225
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
pop ecx
mov ebx, eax
pop edi
test eax, eax
je 0x4264b5
mov byte [esi + ebx], 0x3f
inc esi
mov eax, dword [ebp + 8]
mov edi, dword [eax + 0x1c]
cmp byte [edi], 0
je 0x426347
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x42625c
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
mov ebx, eax
pop eax
test ebx, ebx
pop edx
je 0x4264b5
mov cl, byte [edi]
lea eax, [ecx - 0x61]
cmp al, 0x19
lea eax, [ecx - 0x41]
setbe dl
cmp al, 0x19
setbe al
or eax, edx
test al, 1
jne 0x4262f8
lea eax, [ecx - 0x30]
cmp al, 9
jbe 0x4262f8
cmp cl, 0x2d
sete dl
cmp cl, 0x5f
sete al
or eax, edx
test al, 1
jne 0x4262f8
cmp cl, 0x2e
je 0x4262f8
cmp cl, 0x21
je 0x4262f8
cmp cl, 0x7e
je 0x4262f8
cmp cl, 0x2a
je 0x4262f8
cmp cl, 0x27
je 0x4262f8
cmp cl, 0x28
je 0x4262f8
cmp cl, 0x29
je 0x4262f8
cmp cl, 0x3b
sete dl
cmp cl, 0x2f
sete al
or eax, edx
test al, 1
jne 0x4262f8
cmp cl, 0x3f
je 0x4262f8
cmp cl, 0x3a
je 0x4262f8
cmp cl, 0x40
je 0x4262f8
cmp cl, 0x26
je 0x4262f8
cmp cl, 0x3d
je 0x4262f8
cmp cl, 0x2b
je 0x4262f8
cmp cl, 0x24
je 0x4262f8
cmp cl, 0x2c
je 0x4262f8
cmp cl, 0x5b
je 0x4262f8
cmp cl, 0x5d
jne 0x426302
mov byte [esi + ebx], cl
inc edi
inc esi
jmp 0x426230
movzx edx, cl
mov eax, edx
mov ecx, 0x10
cdq
idiv ecx
mov dword [ebp - 0x14], eax
mov byte [esi + ebx], 0x25
inc esi
inc edi
mov ecx, esi
inc esi
cmp eax, 9
jle 0x426328
mov al, byte [ebp - 0x14]
add eax, 0x37
jmp 0x42632e
mov al, byte [ebp - 0x14]
add eax, 0x30
mov byte [ecx + ebx], al
mov ecx, esi
lea eax, [edx + 0x37]
inc esi
cmp edx, 9
jg 0x42633f
lea eax, [edx + 0x30]
mov byte [ecx + ebx], al
jmp 0x426230
mov edx, dword [ebp + 8]
cmp dword [edx + 0x20], 0
je 0x426499
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x426377
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
pop ecx
mov ebx, eax
pop edi
test eax, eax
je 0x4264b5
mov byte [esi + ebx], 0x23
inc esi
mov eax, dword [ebp + 8]
mov edi, dword [eax + 0x20]
cmp byte [edi], 0
je 0x426499
lea eax, [esi + 3]
cmp eax, dword [ebp - 0x10]
jl 0x4263ae
shl dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
inc eax
push eax
push ebx
call dword [0x4fa8d4]
mov ebx, eax
pop eax
test ebx, ebx
pop edx
je 0x4264b5
mov cl, byte [edi]
lea eax, [ecx - 0x61]
cmp al, 0x19
lea eax, [ecx - 0x41]
setbe dl
cmp al, 0x19
setbe al
or eax, edx
test al, 1
jne 0x42644a
lea eax, [ecx - 0x30]
cmp al, 9
jbe 0x42644a
cmp cl, 0x2d
sete dl
cmp cl, 0x5f
sete al
or eax, edx
test al, 1
jne 0x42644a
cmp cl, 0x2e
je 0x42644a
cmp cl, 0x21
je 0x42644a
cmp cl, 0x7e
je 0x42644a
cmp cl, 0x2a
je 0x42644a
cmp cl, 0x27
je 0x42644a
cmp cl, 0x28
je 0x42644a
cmp cl, 0x29
je 0x42644a
cmp cl, 0x3b
sete dl
cmp cl, 0x2f
sete al
or eax, edx
test al, 1
jne 0x42644a
cmp cl, 0x3f
je 0x42644a
cmp cl, 0x3a
je 0x42644a
cmp cl, 0x40
je 0x42644a
cmp cl, 0x26
je 0x42644a
cmp cl, 0x3d
je 0x42644a
cmp cl, 0x2b
je 0x42644a
cmp cl, 0x24
je 0x42644a
cmp cl, 0x2c
je 0x42644a
cmp cl, 0x5b
je 0x42644a
cmp cl, 0x5d
jne 0x426454
mov byte [esi + ebx], cl
inc edi
inc esi
jmp 0x426382
movzx edx, cl
mov eax, edx
mov ecx, 0x10
cdq
idiv ecx
mov dword [ebp - 0x14], eax
mov byte [esi + ebx], 0x25
inc esi
inc edi
mov ecx, esi
inc esi
cmp eax, 9
jle 0x42647a
mov al, byte [ebp - 0x14]
add eax, 0x37
jmp 0x426480
mov al, byte [ebp - 0x14]
add eax, 0x30
mov byte [ecx + ebx], al
mov ecx, esi
lea eax, [edx + 0x37]
inc esi
cmp edx, 9
jg 0x426491
lea eax, [edx + 0x30]
mov byte [ecx + ebx], al
jmp 0x426382
cmp esi, dword [ebp - 0x10]
jl 0x4264ca
mov edx, dword [ebp - 0x10]
lea eax, [edx + edx + 1]
push eax
push ebx
call dword [0x4fa8d4]
pop edx
mov ebx, eax
pop ecx
test eax, eax
jne 0x4264ca
push str.xmlSaveUri:_out_of_memory_n
push dword [0x667cd4]
call dword [0x4fa8b8]
xor eax, eax
jmp 0x4264d0
mov byte [esi + ebx], 0
mov eax, ebx
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret