Function at 0x484a60
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x53ed28
mov eax, dword fs:[0]
push eax
sub esp, 0x6c
mov eax, dword [0x58d984]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov ecx, dword [ebp + 8]
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x64], eax
or edx, 0xffffffff
mov dword [ebp - 0x60], eax
xor esi, esi
mov dword [ebp - 0x70], eax
mov eax, dword [edi + 8]
mov dword [ecx + 4], eax
mov dword [ecx + 0xc], ebx
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x54], ecx
mov ecx, dword [edi + 8]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x5c], esi
lea eax, [eax + ecx*2]
movzx ecx, word [eax]
mov dword [ebp - 0x4c], eax
test ecx, ecx
jne 0x484dc9
sub eax, dword [edi + 0xc]
mov esi, dword [edi + 0x1c]
sar eax, 1
mov dword [edi + 8], eax
test esi, esi
je 0x4853bc
mov eax, dword [esi + 0xcc]
mov dword [ebp - 0x74], eax
mov eax, dword [esi + 0x14]
cmp eax, dword [esi + 0x10]
jge 0x484db1
mov ecx, dword [esi + 0x50]
mov edx, dword [esi + 0xc8]
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x6c], edx
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x68], eax
mov eax, dword [esi + 0xd0]
mov dword [esi + 0xcc], edx
cmp eax, 0xffffffff
je 0x484beb
cmp edx, eax
jle 0x484be1
sub edx, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x58], edx
xor edx, edx
mov word [ebp - 0x28], dx
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x14], 7
cmp edx, eax
jb 0x4854b3
sub edx, eax
cmp edx, dword [ebp - 0x58]
jb 0x484b60
mov edx, dword [ebp - 0x58]
cmp dword [ecx + 0x14], 8
jb 0x484b68
mov ecx, dword [ecx]
lea eax, [ecx + eax*2]
push edx
push eax
lea ecx, [ebp - 0x28]
call fcn.00403190
or dword [ebp - 0x78], 1
mov eax, dword [esi + 0xe4]
lea edx, [esi + 0xd4]
mov ecx, dword [ebp - 0x18]
add ecx, eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x58], eax
cmp ecx, dword [edx + 0x14]
jle 0x484bb7
mov eax, ecx
test eax, eax
jns 0x484ba2
add eax, 1
sar eax, 1
sub ecx, 0xffffff80
add eax, ecx
mov ecx, edx
push eax
call fcn.00448c90
lea edx, [esi + 0xd4]
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
jb 0x484bc3
mov eax, dword [ebp - 0x28]
push dword [ebp - 0x18]
mov ecx, edx
push eax
push 0
push dword [ebp - 0x58]
call fcn.004866b0
lea ecx, [ebp - 0x28]
call fcn.00403110
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x6c]
mov dword [esi + 0xd0], 0
mov eax, dword [ebp - 0x68]
sub eax, edx
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x68]
cdq
sub eax, edx
sar eax, 1
cmp dword [ebp - 0x58], eax
jle 0x484c08
mov eax, dword [esi + 0xc]
add eax, eax
mov dword [esi + 0xc], eax
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x484c66
xor edx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], dx
mov edx, dword [ecx + 0x10]
sub edx, eax
mov dword [ebp - 4], 1
cmp edx, dword [ecx + 0x14]
jle 0x484c50
mov eax, edx
test eax, eax
jns 0x484c3d
add eax, 1
sar eax, 1
sub edx, 0xffffff80
add eax, edx
push eax
call fcn.00448c90
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x6c]
push 0
lea edx, [ebp - 0x28]
push edx
push eax
push 0
call fcn.004866b0
lea ecx, [ebp - 0x28]
call fcn.00403110
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
mov ecx, dword [esi + 0xc]
sub ecx, dword [ebp - 0x58]
mov eax, ecx
mov dword [ebp - 4], 2
and eax, 0x80000003
jns 0x484c95
dec eax
or eax, 0xfffffffc
inc eax
sub ecx, eax
lea eax, [ebp - 0x40]
add ecx, 4
mov dword [esi + 8], ecx
mov ecx, esi
push eax
call fcn.00482cb0
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x30]
add edx, dword [ecx + 0x10]
cmp edx, dword [ecx + 0x14]
jle 0x484ccf
mov eax, edx
test eax, eax
jns 0x484cbf
add eax, 1
sar eax, 1
sub edx, 0xffffff80
add eax, edx
push eax
call fcn.00448c90
mov ecx, dword [ebp - 0x4c]
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
jb 0x484cdb
mov eax, dword [ebp - 0x40]
push dword [ebp - 0x30]
push eax
push 0
push dword [ebp - 0x58]
call fcn.004866b0
mov edx, dword [ebp - 0x2c]
mov dword [esi + 0xc8], 0
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x484d34
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x484d2a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4854b8
push edx
push ecx
call fcn.004ed797
add esp, 8
xor eax, eax
mov dword [ebp - 0x30], 0
mov word [ebp - 0x40], ax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x2c], 7
mov edx, dword [eax + 4]
mov eax, dword [edi + 8]
sub eax, edx
mov dword [ebp - 0x68], eax
mov eax, dword [edi + 0x1c]
mov esi, eax
mov ecx, dword [eax + 0xcc]
test ecx, ecx
je 0x484d8e
mov eax, dword [ebp - 0x54]
sub edx, ecx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x5c]
test eax, eax
je 0x484d7b
sub eax, ecx
mov dword [ebp - 0x5c], eax
jmp 0x484d86
cmp dword [ebp - 0x64], 0
je 0x484d86
sub dword [edi], ecx
sub dword [edi + 4], ecx
mov eax, dword [edi + 0x1c]
mov esi, eax
sub dword [edi + 8], ecx
mov ecx, dword [ebp - 0x54]
mov eax, dword [eax + 0x50]
mov ecx, dword [ecx + 4]
add ecx, dword [ebp - 0x68]
cmp dword [eax + 0x14], 8
jb 0x484da2
mov eax, dword [eax]
mov edx, dword [ebp - 0x44]
lea ecx, [eax + ecx*2]
mov dword [edi + 0xc], eax
mov dword [ebp - 0x4c], ecx
movzx ecx, word [ecx]
mov eax, dword [ebp - 0x74]
test eax, eax
je 0x484dbe
mov dword [esi + 0xcc], eax
test ecx, ecx
je 0x4853bc
mov esi, dword [ebp - 0x5c]
test esi, esi
je 0x484e07
lea eax, [ecx - 9]
cmp eax, 0x35
ja 0x484ec7
cmp byte [ecx + 0x559d33], 0
je 0x484ec7
mov eax, dword [ebp - 0x4c]
sub eax, dword [edi + 0xc]
sar eax, 1
mov dword [ebp - 0x64], eax
dec eax
sub dword [ebp - 0x64], esi
mov dword [edi], esi
xor esi, esi
mov dword [edi + 4], eax
xor eax, eax
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x48], 0
je 0x485078
cmp ecx, 0x3e
jne 0x484ed9
test bl, 0xc0
jne 0x484ef0
mov ecx, dword [ebp - 0x4c]
mov esi, ecx
sub esi, dword [edi + 0xc]
sar esi, 1
lea eax, [esi + 1]
mov dword [edi + 8], eax
mov eax, dword [ebp - 0x50]
cmp eax, 1
jne 0x484e7e
mov dword [ebp - 0x48], 0
cmp edx, eax
jne 0x484e76
cmp dword [ebp - 0x60], 0x2f
jne 0x484e76
mov ecx, dword [ebp - 0x70]
test ecx, ecx
je 0x484e6c
test ebx, 0x200
je 0x484e6c
lea eax, [ecx - 9]
cmp eax, 0x1e
ja 0x484e76
cmp byte [ecx + 0x559d6b], 0
je 0x484e76
mov eax, dword [ebp - 0x54]
or dword [eax + 0xc], 0x10000
and ebx, 0xfffffdff
jmp 0x484ebb
cmp esi, eax
jle 0x484eab
mov esi, dword [ebp - 0x50]
add eax, eax
sub ecx, eax
mov eax, dword [ebp - 0x48]
lea edx, [ecx + 2]
sub eax, edx
mov dword [ebp - 0x74], eax
sub esi, 1
je 0x484ed2
mov ax, word [eax + edx]
movzx ecx, word [edx]
add edx, 2
cmp cx, ax
mov eax, dword [ebp - 0x74]
je 0x484e94
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
and ebx, 0xfffffdff
test eax, eax
jne 0x484ec4
test bl, 0x20
je 0x485470
mov esi, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x4c]
add eax, 2
jmp 0x484aca
xor eax, eax
mov dword [ebp - 0x48], eax
jmp 0x484eae
cmp ecx, 0x3c
jne 0x484ef0
cmp edx, 2
je 0x485465
cmp edx, 0xffffffff
je 0x485465
test dl, 1
je 0x485031
test ebx, 0x2c0
je 0x484f88
cmp ecx, 0x22
jne 0x484f28
test bl, bl
jns 0x484f49
mov eax, dword [ebp - 0x60]
xor ebx, 0x80
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x60], ecx
add eax, 2
jmp 0x484aca
cmp ecx, 0x27
jne 0x484f49
test bl, 0x40
je 0x484f49
mov eax, dword [ebp - 0x60]
xor ebx, 0x40
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x60], ecx
add eax, 2
jmp 0x484aca
test ebx, 0x200
je 0x48501d
lea eax, [ecx - 9]
cmp eax, 0x17
ja 0x48501d
cmp byte [ecx + 0x559a07], 0
je 0x48501d
mov eax, dword [ebp - 0x60]
xor ebx, 0x200
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x60], ecx
add eax, 2
jmp 0x484aca
mov eax, ebx
cmp ecx, 0x22
jne 0x484fb0
and eax, 0x100
je 0x484fb5
mov eax, dword [ebp - 0x60]
xor ebx, 0x180
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x60], ecx
add eax, 2
jmp 0x484aca
and eax, 0x100
cmp ecx, 0x27
jne 0x484fd8
test eax, eax
je 0x48501d
mov eax, dword [ebp - 0x60]
xor ebx, 0x140
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x60], ecx
add eax, 2
jmp 0x484aca
cmp ecx, 0x3d
jne 0x485000
cmp dword [ebp - 0x60], ecx
je 0x485000
test eax, eax
jne 0x485017
mov eax, dword [ebp - 0x60]
xor ebx, 0x100
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x60], ecx
add eax, 2
jmp 0x484aca
test eax, eax
je 0x48501d
cmp ecx, 9
jb 0x485017
cmp ecx, 0x20
ja 0x485017
cmp byte [ecx + 0x559a07], 0
jne 0x48501d
xor ebx, 0x300
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x60], ecx
add eax, 2
jmp 0x484aca
test dl, 0x40
je 0x484ec7
cmp ecx, 0x22
jne 0x485059
test bl, 0x40
jne 0x484ec7
mov eax, dword [ebp - 0x4c]
xor ebx, 0x80
add eax, 2
jmp 0x484aca
cmp ecx, 0x27
jne 0x484ec7
test bl, bl
js 0x484ec7
mov eax, dword [ebp - 0x4c]
xor ebx, 0x40
add eax, 2
jmp 0x484aca
test ebx, ebx
je 0x48537a
test bl, 0x10
je 0x4850c6
cmp ecx, 0x3c
je 0x4854a1
lea eax, [ecx - 9]
cmp eax, 0x17
ja 0x4850a3
cmp byte [ecx + 0x559a07], 0
jne 0x484ec7
xor ebx, 0x10
mov eax, dword [ebp - 0x4c]
mov edx, 2
mov dword [ebp - 0x48], 0x559d94
add eax, edx
mov dword [ebp - 0x50], 1
mov dword [ebp - 0x44], edx
jmp 0x484aca
test bl, 1
je 0x4851e2
xor ebx, 1
cmp ecx, 0x60
ja 0x4851b6
cmp ecx, 0x40
jbe 0x4850e9
cmp ecx, 0x5b
jb 0x4851b6
cmp ecx, 0x5f
je 0x4851b6
cmp ecx, 0x3a
je 0x4851b6
cmp ecx, 0x2f
jne 0x48512a
mov esi, dword [ebp - 0x4c]
xor edx, edx
sub esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x4c]
sar esi, 1
inc esi
mov dword [ebp - 0x48], 0x559d98
mov dword [ebp - 0x50], 1
add eax, 2
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x5c], esi
jmp 0x484aca
cmp ecx, 0x21
jne 0x48513d
mov eax, dword [ebp - 0x4c]
or ebx, 2
add eax, 2
jmp 0x484aca
cmp ecx, 0x3f
jne 0x48516f
mov esi, dword [ebp - 0x4c]
mov edx, 0x10
sub esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x4c]
sar esi, 1
inc esi
mov dword [ebp - 0x48], 0x559d9c
mov dword [ebp - 0x50], 2
add eax, 2
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x5c], esi
jmp 0x484aca
push 0xffffffffffffffff
push dword [edi + 8]
push 0
push ecx
mov eax, esp
push ecx
mov dword [eax], 0
mov eax, esp
mov dword [eax], str.first_tag_syntax
mov eax, dword [ebp - 0x54]
add eax, 0x10
mov dword [ebp - 0x50], 1
push eax
mov dword [ebp - 0x48], 0x559d98
call fcn.00486c40
mov eax, dword [ebp - 0x4c]
or edx, 0xffffffff
add esp, 0x18
mov dword [ebp - 0x44], edx
add eax, 2
jmp 0x484aca
mov esi, dword [ebp - 0x4c]
mov edx, 1
sub esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x4c]
sar esi, 1
add eax, 2
mov dword [ebp - 0x48], 0x559d98
mov dword [ebp - 0x50], 1
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x5c], esi
jmp 0x484aca
test bl, 2
je 0x4852a9
xor ebx, 2
cmp ecx, 0x2d
jne 0x485201
mov eax, dword [ebp - 0x4c]
or ebx, 4
add eax, 2
jmp 0x484aca
test bl, 0x20
je 0x485265
lea eax, [ecx - 0x41]
cmp eax, 0xd
ja 0x48521e
cmp byte [ecx + 0x559d87], 0
je 0x48521e
mov edx, 0x40
jmp 0x485249
push 0xffffffffffffffff
push dword [edi + 8]
push 0
push ecx
mov eax, esp
push ecx
mov dword [eax], 0
mov eax, esp
mov dword [eax], str.doctype_tag_syntax
mov eax, dword [ebp - 0x54]
add eax, 0x10
push eax
call fcn.00486c40
add esp, 0x18
or edx, 0xffffffff
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x44], edx
add eax, 2
mov dword [ebp - 0x48], 0x559d98
mov dword [ebp - 0x50], 1
jmp 0x484aca
cmp ecx, 0x5b
jne 0x485278
mov eax, dword [ebp - 0x4c]
or ebx, 8
add eax, 2
jmp 0x484aca
cmp ecx, 0x44
jne 0x48528b
mov eax, dword [ebp - 0x4c]
or ebx, 0x20
add eax, 2
jmp 0x484aca
push 0xffffffffffffffff
push dword [edi + 8]
push 0
push ecx
mov eax, esp
push ecx
mov dword [eax], 0
mov eax, esp
mov dword [eax], str.exclamation_tag_syntax
jmp 0x485188
test bl, 4
je 0x4852f5
xor ebx, 4
cmp ecx, 0x2d
jne 0x4852d7
mov eax, dword [ebp - 0x4c]
mov edx, 0x20
mov dword [ebp - 0x48], 0x559e30
add eax, 2
mov dword [ebp - 0x50], 3
mov dword [ebp - 0x44], edx
jmp 0x484aca
push 0xffffffffffffffff
push dword [edi + 8]
push 0
push ecx
mov eax, esp
push ecx
mov dword [eax], 0
mov eax, esp
mov dword [eax], str.comment_tag_syntax
jmp 0x485188
test bl, 8
je 0x485341
xor ebx, 8
cmp ecx, 0x43
jne 0x485323
mov eax, dword [ebp - 0x4c]
mov edx, 8
mov dword [ebp - 0x48], 0x559e60
add eax, 2
mov dword [ebp - 0x50], 3
mov dword [ebp - 0x44], edx
jmp 0x484aca
push 0xffffffffffffffff
push dword [edi + 8]
push 0
push ecx
mov eax, esp
push ecx
mov dword [eax], 0
mov eax, esp
mov dword [eax], str.cdata_section_syntax
jmp 0x485188
test bl, 0x20
je 0x484ec7
cmp ecx, 0x3c
jne 0x48535d
mov eax, dword [ebp - 0x4c]
or ebx, 1
add eax, 2
jmp 0x484aca
cmp ecx, 0x3e
jne 0x484ec7
mov eax, dword [ebp - 0x4c]
lea esi, [ecx + 2]
sub eax, dword [edi + 0xc]
sar eax, 1
inc eax
mov dword [edi + 8], eax
jmp 0x485473
cmp ecx, 0x3c
jne 0x48538d
mov eax, dword [ebp - 0x4c]
lea ebx, [ecx - 0x3b]
add eax, 2
jmp 0x484aca
lea eax, [ecx - 9]
mov edx, 4
mov dword [ebp - 0x44], edx
cmp eax, 0x17
ja 0x4850a6
cmp byte [ecx + 0x559a07], 0
je 0x4850a6
mov eax, dword [ebp - 0x4c]
lea ebx, [edx + 0xc]
add eax, 2
jmp 0x484aca
mov ecx, dword [ebp - 0x54]
mov eax, dword [ecx + 4]
cmp dword [edi + 8], eax
jne 0x4853de
mov dword [ecx + 8], 0
mov eax, 0xfffffffe
mov dword [ecx], 0
jmp 0x485483
cmp edx, 4
je 0x485470
cmp edx, 2
je 0x485470
mov ecx, 0x559c68
test bl, 0x20
jne 0x48543a
cmp edx, 0x40
je 0x48543a
cmp edx, 1
jne 0x48540b
mov ecx, str.start_tag
jmp 0x48543f
test edx, edx
jne 0x485416
mov ecx, str.end_tag
jmp 0x48543f
cmp edx, 8
jne 0x485422
mov ecx, 0x559cb0
jmp 0x48543f
cmp edx, 0x10
jne 0x48542e
mov ecx, str.processing_instruction
jmp 0x48543f
cmp edx, 0x20
jne 0x48543f
mov ecx, 0x559cfc
jmp 0x48543f
mov ecx, str.document_type
or esi, 0xffffffff
push esi
push eax
push 2
push ecx
mov eax, esp
push ecx
mov dword [eax], ecx
mov eax, esp
mov dword [eax], str.unterminated_tag_syntax
mov eax, dword [ebp - 0x54]
add eax, 0x10
push eax
call fcn.00486c40
add esp, 0x18
jmp 0x485473
mov eax, dword [ebp - 0x4c]
sub eax, dword [edi + 0xc]
sar eax, 1
mov dword [edi + 8], eax
mov esi, dword [ebp - 0x44]
mov eax, dword [ebp - 0x54]
mov ecx, dword [edi + 8]
sub ecx, dword [eax + 4]
mov dword [eax + 8], ecx
mov dword [eax], esi
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004eda39
mov esp, ebp
pop ebp
ret 4
mov eax, dword [ebp - 0x4c]
mov esi, 4
sub eax, dword [edi + 0xc]
sar eax, 1
mov dword [edi + 8], eax
jmp 0x485473
call fcn.0041b390
call fcn.0051042e
int3