Function at 0x44d51b
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x2c
xor ebx, ebx
cmp dword [ebp + 8], 0
je 0x44deaf
mov dword [esp], 0x51
call dword [sym.evasi0n_gui.exe_xmlMallocAtomic]
mov ebx, eax
test eax, eax
je 0x44da81
mov eax, dword [ebp + 8]
mov edx, dword [eax]
test edx, edx
je 0x44d5b3
mov edi, 0x50
xor esi, esi
jmp 0x44d586
cmp esi, edi
jl 0x44d57f
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
mov edx, dword [ebp - 0x28]
je 0x44de81
mov ebx, eax
mov al, byte [edx + esi]
mov byte [ebx + esi], al
inc esi
cmp byte [edx + esi], 0
jne 0x44d559
cmp esi, edi
jl 0x44d5ac
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
je 0x44de81
mov ebx, eax
mov byte [ebx + esi], 0x3a
inc esi
jmp 0x44d5ba
mov edi, 0x50
xor esi, esi
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 4]
test edx, edx
jne 0x44d6a9
jmp 0x44d6b7
lea eax, [esi + 3]
cmp eax, edi
jl 0x44d5f6
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
mov edx, dword [ebp - 0x28]
je 0x44de81
mov ebx, eax
mov al, byte [edx]
cmp al, 0x2f
je 0x44d664
cmp al, 0x3b
je 0x44d664
cmp al, 0x3f
je 0x44d664
cmp al, 0x3a
je 0x44d664
cmp al, 0x40
je 0x44d664
cmp al, 0x26
je 0x44d664
cmp al, 0x3d
je 0x44d664
cmp al, 0x2b
je 0x44d664
cmp al, 0x24
je 0x44d664
cmp al, 0x2c
je 0x44d664
cmp al, 0x5b
je 0x44d664
cmp al, 0x5d
je 0x44d664
lea ecx, [eax - 0x41]
cmp cl, 0x19
jbe 0x44d664
lea ecx, [eax - 0x61]
cmp cl, 0x19
jbe 0x44d664
lea ecx, [eax - 0x30]
cmp cl, 9
jbe 0x44d664
cmp al, 0x5f
je 0x44d664
cmp al, 0x2d
je 0x44d664
cmp al, 0x2e
je 0x44d664
cmp al, 0x21
je 0x44d664
cmp al, 0x7e
je 0x44d664
cmp al, 0x2a
je 0x44d664
cmp al, 0x27
je 0x44d664
cmp al, 0x28
je 0x44d664
cmp al, 0x29
jne 0x44d66b
mov byte [ebx + esi], al
inc esi
inc edx
jmp 0x44d6a9
movzx eax, byte [edx]
inc edx
mov ecx, eax
sar ecx, 4
and eax, 0xf
mov dword [ebp - 0x20], eax
mov byte [ebx + esi], 0x25
cmp ecx, 0xa
setge al
dec eax
and eax, 0xfffffff9
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 1], al
cmp dword [ebp - 0x20], 0xa
setge al
dec eax
and eax, 0xfffffff9
mov cl, byte [ebp - 0x20]
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 2], al
add esi, 3
cmp byte [edx], 0
jne 0x44d5cd
jmp 0x44dd41
mov eax, dword [ebp + 8]
cmp dword [eax + 0xc], 0
je 0x44d893
lea eax, [esi + 3]
cmp eax, edi
jl 0x44d6e7
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
je 0x44de81
mov ebx, eax
mov byte [ebx + esi], 0x2f
mov byte [ebx + esi + 1], 0x2f
add esi, 2
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
test edx, edx
jne 0x44d7cb
jmp 0x44d7fc
cmp eax, edi
jl 0x44d72c
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
mov edx, dword [ebp - 0x28]
je 0x44de81
mov ebx, eax
mov al, byte [edx]
lea ecx, [eax - 0x41]
cmp cl, 0x19
jbe 0x44d786
lea ecx, [eax - 0x61]
cmp cl, 0x19
jbe 0x44d786
lea ecx, [eax - 0x30]
cmp cl, 9
jbe 0x44d786
cmp al, 0x5f
je 0x44d786
cmp al, 0x2d
je 0x44d786
cmp al, 0x2e
je 0x44d786
cmp al, 0x21
je 0x44d786
cmp al, 0x7e
je 0x44d786
cmp al, 0x2a
je 0x44d786
cmp al, 0x27
je 0x44d786
cmp al, 0x28
je 0x44d786
cmp al, 0x29
je 0x44d786
cmp al, 0x3b
je 0x44d786
cmp al, 0x3a
je 0x44d786
cmp al, 0x26
je 0x44d786
cmp al, 0x3d
je 0x44d786
cmp al, 0x2b
je 0x44d786
cmp al, 0x24
je 0x44d786
cmp al, 0x2c
jne 0x44d78d
mov byte [ebx + esi], al
inc esi
inc edx
jmp 0x44d7cb
movzx eax, byte [edx]
inc edx
mov ecx, eax
sar ecx, 4
and eax, 0xf
mov dword [ebp - 0x20], eax
mov byte [ebx + esi], 0x25
cmp ecx, 0xa
setge al
dec eax
and eax, 0xfffffff9
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 1], al
cmp dword [ebp - 0x20], 0xa
setge al
dec eax
and eax, 0xfffffff9
mov cl, byte [ebp - 0x20]
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 2], al
add esi, 3
cmp byte [edx], 0
lea eax, [esi + 3]
jne 0x44d706
cmp eax, edi
jl 0x44d7f7
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
je 0x44de81
mov ebx, eax
mov byte [ebx + esi], 0x40
inc esi
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0xc]
jmp 0x44d831
cmp esi, edi
jl 0x44d82a
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
mov edx, dword [ebp - 0x28]
je 0x44de81
mov ebx, eax
mov al, byte [edx]
mov byte [ebx + esi], al
inc esi
inc edx
cmp byte [edx], 0
jne 0x44d804
mov edx, dword [ebp + 8]
cmp dword [edx + 0x14], 0
jle 0x44d9ea
lea eax, [esi + 0xa]
cmp eax, edi
jl 0x44d866
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
je 0x44de81
mov ebx, eax
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x14]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x67e498
mov eax, edi
sub eax, esi
mov dword [esp + 4], eax
lea eax, [ebx + esi]
mov dword [esp], eax
call fcn.00597e90
lea esi, [eax + esi]
jmp 0x44d9ea
mov eax, dword [ebp + 8]
cmp dword [eax + 8], 0
je 0x44d9b3
lea eax, [esi + 3]
cmp eax, edi
jl 0x44d8c3
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
je 0x44de81
mov ebx, eax
mov byte [ebx + esi], 0x2f
mov byte [ebx + esi + 1], 0x2f
add esi, 2
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
jmp 0x44d9a6
lea eax, [esi + 3]
cmp eax, edi
jl 0x44d903
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
mov edx, dword [ebp - 0x28]
je 0x44de81
mov ebx, eax
mov al, byte [edx - 1]
lea ecx, [eax - 0x41]
cmp cl, 0x19
jbe 0x44d962
lea ecx, [eax - 0x61]
cmp cl, 0x19
jbe 0x44d962
lea ecx, [eax - 0x30]
cmp cl, 9
jbe 0x44d962
cmp al, 0x5f
je 0x44d962
cmp al, 0x2d
je 0x44d962
cmp al, 0x2e
je 0x44d962
cmp al, 0x21
je 0x44d962
cmp al, 0x7e
je 0x44d962
cmp al, 0x2a
je 0x44d962
cmp al, 0x27
je 0x44d962
cmp al, 0x28
je 0x44d962
cmp al, 0x29
je 0x44d962
cmp al, 0x24
je 0x44d962
cmp al, 0x2c
je 0x44d962
cmp al, 0x3b
je 0x44d962
cmp al, 0x3a
je 0x44d962
cmp al, 0x40
je 0x44d962
cmp al, 0x26
je 0x44d962
cmp al, 0x3d
je 0x44d962
cmp al, 0x2b
jne 0x44d968
mov byte [ebx + esi], al
inc esi
jmp 0x44d9a6
movzx eax, byte [edx - 1]
mov ecx, eax
sar ecx, 4
and eax, 0xf
mov dword [ebp - 0x20], eax
mov byte [ebx + esi], 0x25
cmp ecx, 0xa
setge al
dec eax
and eax, 0xfffffff9
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 1], al
cmp dword [ebp - 0x20], 0xa
setge al
dec eax
and eax, 0xfffffff9
mov cl, byte [ebp - 0x20]
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 2], al
add esi, 3
inc edx
cmp byte [edx - 1], 0
jne 0x44d8da
jmp 0x44d9ea
mov eax, dword [ebp + 8]
cmp dword [eax], 0
je 0x44d9ea
lea eax, [esi + 3]
cmp eax, edi
jl 0x44d9de
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
je 0x44de81
mov ebx, eax
mov byte [ebx + esi], 0x2f
mov byte [ebx + esi + 1], 0x2f
add esi, 2
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x44dba2
mov ecx, dword [ecx]
test ecx, ecx
je 0x44dac1
mov eax, edx
cmp byte [edx], 0x2f
jne 0x44dac3
lea eax, [edx + 1]
mov dword [ebp - 0x20], eax
mov al, byte [edx + 1]
mov byte [ebp - 0x1c], al
sub eax, 0x41
cmp al, 0x19
jbe 0x44da35
mov al, byte [ebp - 0x1c]
sub eax, 0x61
mov byte [ebp - 0x21], al
mov eax, edx
cmp byte [ebp - 0x21], 0x19
ja 0x44dac3
mov eax, edx
cmp byte [edx + 2], 0x3a
jne 0x44dac3
mov dword [esp + 4], str.file
mov dword [esp], ecx
mov dword [ebp - 0x28], edx
call sym.evasi0n_gui.exe_xmlStrEqual
mov ecx, eax
mov edx, dword [ebp - 0x28]
mov eax, edx
test ecx, ecx
je 0x44dac3
lea eax, [esi + 3]
cmp eax, edi
jl 0x44daa1
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
mov ebx, eax
test eax, eax
mov edx, dword [ebp - 0x28]
jne 0x44daa1
call sym.evasi0n_gui.exe___xmlGenericError
mov esi, dword [eax]
call sym.evasi0n_gui.exe___xmlGenericErrorContext
mov dword [esp + 4], str.xmlSaveUri:_out_of_memory_n
mov eax, dword [eax]
mov dword [esp], eax
call esi
jmp 0x44deaf
mov al, byte [edx]
mov byte [ebx + esi], al
mov al, byte [edx + 1]
mov byte [ebx + esi + 1], al
mov edx, dword [ebp - 0x20]
mov al, byte [edx + 1]
mov byte [ebx + esi + 2], al
add esi, 3
mov eax, edx
add eax, 2
jmp 0x44dac3
mov eax, edx
lea edx, [eax + 1]
jmp 0x44db98
lea eax, [esi + 3]
cmp eax, edi
jl 0x44daf4
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
mov edx, dword [ebp - 0x28]
je 0x44de81
mov ebx, eax
mov al, byte [edx - 1]
lea ecx, [eax - 0x41]
cmp cl, 0x19
jbe 0x44db53
lea ecx, [eax - 0x61]
cmp cl, 0x19
jbe 0x44db53
lea ecx, [eax - 0x30]
cmp cl, 9
jbe 0x44db53
cmp al, 0x5f
je 0x44db53
cmp al, 0x2d
je 0x44db53
cmp al, 0x2e
je 0x44db53
cmp al, 0x21
je 0x44db53
cmp al, 0x7e
je 0x44db53
cmp al, 0x2a
je 0x44db53
cmp al, 0x27
je 0x44db53
cmp al, 0x28
je 0x44db53
cmp al, 0x29
je 0x44db53
cmp al, 0x2f
je 0x44db53
cmp al, 0x3b
je 0x44db53
cmp al, 0x40
je 0x44db53
cmp al, 0x26
je 0x44db53
cmp al, 0x3d
je 0x44db53
cmp al, 0x2b
je 0x44db53
cmp al, 0x24
je 0x44db53
cmp al, 0x2c
jne 0x44db59
mov byte [ebx + esi], al
inc esi
jmp 0x44db97
movzx eax, byte [edx - 1]
mov ecx, eax
sar ecx, 4
and eax, 0xf
mov dword [ebp - 0x20], eax
mov byte [ebx + esi], 0x25
cmp ecx, 0xa
setge al
dec eax
and eax, 0xfffffff9
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 1], al
cmp dword [ebp - 0x20], 0xa
setge al
dec eax
and eax, 0xfffffff9
mov cl, byte [ebp - 0x20]
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 2], al
add esi, 3
inc edx
cmp byte [edx - 1], 0
jne 0x44dacb
mov eax, dword [ebp + 8]
cmp dword [eax + 0x28], 0
je 0x44dc1a
lea ecx, [esi + 1]
cmp ecx, edi
jl 0x44dbd4
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], ecx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
mov ecx, dword [ebp - 0x28]
je 0x44de81
mov ebx, eax
mov byte [ebx + esi], 0x3f
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x28]
mov esi, ecx
jmp 0x44dc10
inc esi
cmp esi, edi
jl 0x44dc09
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
mov edx, dword [ebp - 0x28]
je 0x44de81
mov ebx, eax
mov al, byte [edx]
mov byte [ebx + esi - 1], al
inc edx
cmp byte [edx], 0
jne 0x44dbe2
jmp 0x44dd41
mov edx, dword [ebp + 8]
cmp dword [edx + 0x1c], 0
je 0x44dd41
lea eax, [esi + 3]
cmp eax, edi
jl 0x44dc4a
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
je 0x44de81
mov ebx, eax
mov byte [ebx + esi], 0x3f
inc esi
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1c]
jmp 0x44dd36
lea eax, [esi + 3]
cmp eax, edi
jl 0x44dc83
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
mov edx, dword [ebp - 0x28]
je 0x44de81
mov ebx, eax
mov al, byte [edx - 1]
lea ecx, [eax - 0x41]
cmp cl, 0x19
jbe 0x44dcf2
lea ecx, [eax - 0x61]
cmp cl, 0x19
jbe 0x44dcf2
lea ecx, [eax - 0x30]
cmp cl, 9
jbe 0x44dcf2
cmp al, 0x5f
je 0x44dcf2
cmp al, 0x2d
je 0x44dcf2
cmp al, 0x2e
je 0x44dcf2
cmp al, 0x21
je 0x44dcf2
cmp al, 0x7e
je 0x44dcf2
cmp al, 0x2a
je 0x44dcf2
cmp al, 0x27
je 0x44dcf2
cmp al, 0x28
je 0x44dcf2
cmp al, 0x29
je 0x44dcf2
cmp al, 0x2f
je 0x44dcf2
cmp al, 0x3b
je 0x44dcf2
cmp al, 0x3f
je 0x44dcf2
cmp al, 0x3a
je 0x44dcf2
cmp al, 0x40
je 0x44dcf2
cmp al, 0x26
je 0x44dcf2
cmp al, 0x3d
je 0x44dcf2
cmp al, 0x2b
je 0x44dcf2
cmp al, 0x24
je 0x44dcf2
cmp al, 0x2c
je 0x44dcf2
cmp al, 0x5b
je 0x44dcf2
cmp al, 0x5d
jne 0x44dcf8
mov byte [ebx + esi], al
inc esi
jmp 0x44dd36
movzx eax, byte [edx - 1]
mov ecx, eax
sar ecx, 4
and eax, 0xf
mov dword [ebp - 0x20], eax
mov byte [ebx + esi], 0x25
cmp ecx, 0xa
setge al
dec eax
and eax, 0xfffffff9
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 1], al
cmp dword [ebp - 0x20], 0xa
setge al
dec eax
and eax, 0xfffffff9
mov cl, byte [ebp - 0x20]
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 2], al
add esi, 3
inc edx
cmp byte [edx - 1], 0
jne 0x44dc5a
mov eax, dword [ebp + 8]
cmp dword [eax + 0x20], 0
je 0x44de68
lea eax, [esi + 3]
cmp eax, edi
jl 0x44dd71
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
je 0x44de81
mov ebx, eax
mov byte [ebx + esi], 0x23
inc esi
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x20]
jmp 0x44de5d
lea eax, [esi + 3]
cmp eax, edi
jl 0x44ddaa
shl edi, 1
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
mov edx, dword [ebp - 0x28]
je 0x44de81
mov ebx, eax
mov al, byte [edx - 1]
lea ecx, [eax - 0x41]
cmp cl, 0x19
jbe 0x44de19
lea ecx, [eax - 0x61]
cmp cl, 0x19
jbe 0x44de19
lea ecx, [eax - 0x30]
cmp cl, 9
jbe 0x44de19
cmp al, 0x5f
je 0x44de19
cmp al, 0x2d
je 0x44de19
cmp al, 0x2e
je 0x44de19
cmp al, 0x21
je 0x44de19
cmp al, 0x7e
je 0x44de19
cmp al, 0x2a
je 0x44de19
cmp al, 0x27
je 0x44de19
cmp al, 0x28
je 0x44de19
cmp al, 0x29
je 0x44de19
cmp al, 0x2f
je 0x44de19
cmp al, 0x3b
je 0x44de19
cmp al, 0x3f
je 0x44de19
cmp al, 0x3a
je 0x44de19
cmp al, 0x40
je 0x44de19
cmp al, 0x26
je 0x44de19
cmp al, 0x3d
je 0x44de19
cmp al, 0x2b
je 0x44de19
cmp al, 0x24
je 0x44de19
cmp al, 0x2c
je 0x44de19
cmp al, 0x5b
je 0x44de19
cmp al, 0x5d
jne 0x44de1f
mov byte [ebx + esi], al
inc esi
jmp 0x44de5d
movzx eax, byte [edx - 1]
mov ecx, eax
sar ecx, 4
and eax, 0xf
mov dword [ebp - 0x1c], eax
mov byte [ebx + esi], 0x25
cmp ecx, 0xa
setge al
dec eax
and eax, 0xfffffff9
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 1], al
cmp dword [ebp - 0x1c], 0xa
setge al
dec eax
and eax, 0xfffffff9
mov cl, byte [ebp - 0x1c]
lea eax, [eax + ecx + 0x37]
mov byte [ebx + esi + 2], al
add esi, 3
inc edx
cmp byte [edx - 1], 0
jne 0x44dd81
cmp esi, edi
jl 0x44deab
lea eax, [edi + edi + 1]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlRealloc]
test eax, eax
jne 0x44dea9
call sym.evasi0n_gui.exe___xmlGenericError
mov esi, dword [eax]
call sym.evasi0n_gui.exe___xmlGenericErrorContext
mov dword [esp + 4], str.xmlSaveUri:_out_of_memory_n
mov eax, dword [eax]
mov dword [esp], eax
call esi
mov dword [esp], ebx
call dword [sym.evasi0n_gui.exe_xmlFree]
xor ebx, ebx
jmp 0x44deaf
mov ebx, eax
mov byte [ebx + esi], 0
mov eax, ebx
add esp, 0x2c
pop ebx
pop esi
pop edi
leave
ret