Function at 0x448d00
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
mov ebx, ecx
push esi
push edi
mov ecx, dword [ebx + 0xc0]
cmp ecx, dword [ebx + 0x7c]
mov dword [ebp - 8], ecx
jl 0x448d3c
and byte [ebp - 0x1c], 0
and dword [ebp - 0x10], 0
push 1
lea edi, [ebx + 0xb0]
pop eax
lea esi, [ebp - 0x1c]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x449692
push 1
xor edi, edi
cmp ecx, dword [ebx + 0x7c]
pop eax
mov dword [ebp - 0xc], eax
jl 0x448d4d
xor dl, dl
jmp 0x448d53
mov edx, dword [ebx + 0x78]
mov dl, byte [edx + ecx]
cmp dword [ebx + 0xc8], edi
mov byte [ebp - 2], dl
je 0x448dea
cmp dl, 0x5c
jne 0x448d8e
lea esi, [ecx + 1]
cmp esi, dword [ebx + 0x7c]
jge 0x448d8e
mov edi, dword [ebx + 0x78]
cmp byte [edi + esi], 0x45
jne 0x448d8e
and dword [ebx + 0xcc], 0
and dword [ebx + 0xc8], 0
add ecx, 2
jmp 0x448e7c
mov esi, dword [ebx + 0xcc]
test esi, esi
je 0x448dc5
movsx eax, dl
push eax
call esi
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], al
mov eax, dword [ebp - 8]
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 1
pop ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 1
movsd dword es:[edi], dword [esi]
pop eax
jmp 0x448ddf
and dword [ebp - 0x18], 0
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
inc dword [ebx + 0xc0]
jmp 0x449692
movsx esi, dl
cmp esi, 0x2e
jg 0x448fdf
je 0x44957e
cmp esi, 0x24
jg 0x448ebf
je 0x44957e
cmp esi, edi
je 0x448ea4
cmp esi, 8
jle 0x4495bb
cmp esi, 0xd
jle 0x448e75
cmp esi, 0x20
je 0x448e75
cmp esi, 0x23
jne 0x4495bb
test byte [ebx + 4], 0x20
je 0x448e5a
lea eax, [ecx + 1]
mov dword [ebx + 0xc0], eax
cmp eax, dword [ebx + 0x7c]
jge 0x448e82
mov ecx, dword [ebx + 0x78]
cmp byte [ecx + eax], 0xa
je 0x448e82
cmp eax, dword [ebx + 0x7c]
jge 0x448e57
cmp byte [ecx + eax], 0xd
je 0x448e82
inc eax
jmp 0x448e38
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
test byte [ebx + 4], 0x20
je 0x448e89
inc ecx
mov dword [ebx + 0xc0], ecx
xor eax, eax
jmp 0x449692
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
cmp esi, 0x28
je 0x448f19
jle 0x4495bb
cmp esi, 0x2b
jle 0x44957e
cmp esi, 0x2d
jne 0x4495bb
cmp dword [ebx + 0xc4], edi
jle 0x448efe
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
lea esi, [ecx + 1]
cmp esi, dword [ebx + 0x7c]
jl 0x448f27
and byte [ebp - 1], 0
jmp 0x448f30
mov edx, dword [ebx + 0x78]
mov dl, byte [edx + esi]
mov byte [ebp - 1], dl
lea esi, [ecx + 2]
cmp esi, dword [ebx + 0x7c]
jl 0x448f3e
and byte [ebp - 3], 0
jmp 0x448f47
mov edx, dword [ebx + 0x78]
mov dl, byte [edx + esi]
mov byte [ebp - 3], dl
cmp byte [ebp - 1], 0x3f
jne 0x448f9f
cmp byte [ebp - 3], 0x23
jne 0x448f9f
mov dword [ebx + 0xc0], esi
cmp esi, dword [ebx + 0x7c]
jge 0x448f7e
mov ecx, dword [ebx + 0xc0]
cmp ecx, dword [ebx + 0x7c]
jge 0x448f72
mov edx, dword [ebx + 0x78]
cmp byte [edx + ecx], 0x29
je 0x448f7e
inc ecx
mov dword [ebx + 0xc0], ecx
cmp ecx, dword [ebx + 0x7c]
jl 0x448f5e
mov ecx, dword [ebx + 0xc0]
cmp ecx, dword [ebx + 0x7c]
jge 0x449687
mov edx, dword [ebx + 0x78]
cmp byte [edx + ecx], 0x29
jne 0x449687
jmp 0x448e7b
cmp dword [ebx + 0xc4], edi
mov dl, byte [ebp - 2]
jle 0x448fc5
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
cmp esi, 0x5c
jg 0x449566
je 0x4490a9
cmp esi, 0x3a
je 0x449060
cmp esi, 0x3f
je 0x44957e
cmp esi, 0x5b
jne 0x4495bb
cmp dword [ebx + 0xc4], edi
je 0x449039
lea esi, [ecx + 1]
cmp esi, dword [ebx + 0x7c]
jge 0x44901e
mov edi, dword [ebx + 0x78]
cmp byte [edi + esi], 0x3a
je 0x449039
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
mov esi, dword [ebx + 0xc4]
mov byte [ebp - 0x1c], dl
inc esi
mov dword [ebp - 0x18], eax
mov dword [ebx + 0xc4], esi
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
cmp byte [ebx + 0xa0], 0x5b
lea esi, [ebx + 0xa0]
jne 0x44908e
cmp dword [esi + 4], eax
jne 0x44908e
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
lea edi, [ecx + 1]
cmp edi, dword [ebx + 0x7c]
jl 0x44913b
and byte [ebp - 1], 0
movsx edx, byte [ebp - 1]
push 2
cmp edx, 0x64
pop esi
mov dword [ebp - 0xc], esi
jg 0x44928b
je 0x449410
cmp edx, 0x51
jg 0x4491e1
je 0x449280
test edx, edx
je 0x44919d
cmp edx, 0x40
jle 0x449359
cmp edx, 0x42
jle 0x449410
cmp edx, 0x44
je 0x449410
cmp edx, 0x45
je 0x448d78
cmp edx, 0x47
je 0x449173
cmp edx, 0x4c
jne 0x449359
cmp dword [ebx + 0xcc], 0
lea edx, [ebx + 0xcc]
jne 0x449269
mov esi, dword [sym.imp.MSVCRT.dll_tolower]
mov dword [edx], esi
jmp 0x449269
mov edx, dword [ebx + 0x78]
mov dl, byte [edx + edi]
cmp dl, 0x30
mov byte [ebp - 1], dl
jl 0x4490b9
cmp dl, 0x39
jg 0x4490b9
mov dl, byte [ebp - 2]
mov dword [ebp - 0x18], eax
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
cmp dword [ebx + 0xc4], 0
jg 0x448d86
mov dl, byte [ebp - 1]
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
cmp edi, dword [ebx + 0x7c]
jl 0x4491c3
mov dl, byte [ebp - 2]
and dword [ebp - 0x18], 0
mov dword [ebp - 0xc], eax
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
mov dl, byte [ebp - 1]
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
sub edx, 0x53
je 0x449410
sub edx, esi
je 0x449269
sub edx, esi
je 0x449410
sub edx, 3
je 0x449410
sub edx, 7
je 0x44924d
dec edx
jne 0x449359
cmp dword [ebx + 0xc4], 0
jle 0x449230
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], 8
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
mov dl, byte [ebp - 1]
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], 7
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
cmp dword [ebx + 0xcc], 0
lea edx, [ebx + 0xcc]
jne 0x449280
mov esi, dword [sym.imp.MSVCRT.dll_toupper]
mov dword [edx], esi
mov dword [ebx + 0xc8], eax
jmp 0x448d86
cmp edx, 0x73
jg 0x449330
je 0x449410
sub edx, 0x65
je 0x449314
dec edx
je 0x4492f8
dec edx
je 0x449410
sub edx, 4
je 0x449410
sub edx, 3
je 0x4492dc
sub edx, 4
jne 0x449359
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], 0xd
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], 0xa
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], 0xc
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], 0x1b
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
sub edx, 0x74
je 0x44954a
dec edx
je 0x449449
dec edx
je 0x44942d
dec edx
je 0x449410
dec edx
je 0x449377
sub edx, esi
je 0x449410
mov dl, byte [ebp - 1]
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
lea eax, [ecx + 2]
cmp eax, dword [ebx + 0x7c]
jge 0x44938c
mov edx, dword [ebx + 0x78]
cmp byte [edx + eax], 0x7b
je 0x449449
mov eax, dword [ebx + 0x78]
and dword [ebp - 0xc], 0
test eax, eax
jne 0x44939c
mov eax, 0x4c8700
lea ecx, [ebp - 0xc]
push ecx
mov ecx, dword [ebp - 8]
push esi
lea eax, [ecx + eax + 2]
push eax
call fcn.00449d53
mov ecx, dword [ebp - 0xc]
add esp, 0xc
test ecx, ecx
lea edx, [ecx + 2]
mov dword [ebp - 0xc], edx
jle 0x4493df
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], al
mov eax, dword [ebx + 0xc0]
mov dword [ebp - 0x10], edx
mov dword [ebp - 8], eax
mov dword [ebp - 0x14], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449401
mov al, byte [ebp - 1]
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], al
mov eax, dword [ebx + 0xc0]
mov dword [ebp - 8], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], edx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 8]
push 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop eax
jmp 0x449687
mov dl, byte [ebp - 1]
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], 0xb
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
add ecx, 2
cmp ecx, dword [ebx + 0x7c]
jge 0x44945a
mov eax, dword [ebx + 0x78]
cmp byte [eax + ecx], 0x7b
je 0x4494d8
mov eax, dword [ebx + 0x78]
and dword [ebp - 0xc], 0
test eax, eax
jne 0x44946a
mov eax, 0x4c8700
lea ecx, [ebp - 0xc]
push ecx
mov ecx, dword [ebp - 8]
push 4
lea eax, [eax + ecx + 2]
push eax
call fcn.00449d53
mov edx, dword [ebp - 0xc]
add esp, 0xc
test edx, edx
lea ecx, [edx + 2]
mov dword [ebp - 0xc], ecx
jle 0x4494b1
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], al
mov eax, dword [ebx + 0xc0]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 8], eax
mov dword [ebp - 0x14], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449401
mov al, byte [ebp - 1]
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], al
mov eax, dword [ebx + 0xc0]
mov dword [ebp - 8], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449401
mov eax, dword [ebx + 0x78]
and dword [ebp - 0xc], 0
test eax, eax
jne 0x4494e8
mov eax, 0x4c8700
lea ecx, [ebp - 0xc]
push ecx
mov ecx, dword [ebp - 8]
push 8
lea eax, [eax + ecx + 3]
push eax
call fcn.00449d53
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebx + 0x7c]
add esp, 0xc
lea esi, [ecx + 2]
mov ecx, dword [ebx + 0xc0]
mov dword [ebp - 8], ecx
add ecx, esi
cmp ecx, edx
jge 0x449528
cmp ecx, dword [ebx + 0x7c]
jge 0x449524
mov edi, dword [ebx + 0x78]
cmp byte [edi + ecx], 0x7d
je 0x449528
inc esi
inc ecx
jmp 0x449512
inc esi
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], al
mov eax, dword [ebp - 8]
mov dword [ebp - 0xc], esi
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449401
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 0x1c], 9
mov dword [ebp - 0x14], ecx
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
cmp esi, 0x5d
je 0x449643
cmp esi, 0x5e
je 0x4495d6
cmp esi, 0x7a
jle 0x4495bb
cmp esi, 0x7d
jg 0x4495bb
cmp dword [ebx + 0xc4], edi
jle 0x4495a1
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
cmp dword [ebx + 0xc4], edi
je 0x44962c
cmp byte [ebx + 0xa0], 0x5b
jne 0x4495ef
cmp dword [ebx + 0xa4], eax
je 0x44962c
cmp byte [ebx + 0x90], 0x5b
lea esi, [ebx + 0x90]
jne 0x449614
cmp dword [esi + 4], eax
jne 0x449614
cmp byte [ebx + 0xa0], 0x3a
jne 0x449614
cmp dword [ebx + 0xa4], eax
je 0x44962c
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
mov edi, dword [ebx + 0xc4]
lea esi, [ebx + 0xc4]
test edi, edi
jle 0x44966d
dec edi
mov byte [ebp - 0x1c], dl
mov dword [esi], edi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
jmp 0x449683
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], dl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], eax
lea edi, [ebx + 0xb0]
lea esi, [ebp - 0x1c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edx, dword [ebp - 0xc]
add ecx, edx
mov dword [ebx + 0xc0], ecx
pop edi
pop esi
pop ebx
leave
ret