Function at 0x432ba0
Capabilities:
Parse credit card information

Disassembly:
sub esp, 0x1bc
mov eax, dword [0x4fcb54]
xor eax, esp
mov dword [esp + 0x1b8], eax
mov eax, dword [esp + 0x1c0]
mov edx, dword [eax + 8]
push ebx
push ebp
push esi
push edi
xor edi, edi
mov dword [ecx + 4], edx
mov dword [ecx + 0xc], edi
mov edx, dword [eax + 8]
mov esi, dword [eax + 0xc]
add esi, edx
mov dword [esp + 0x1c], eax
mov al, byte [esi]
or ebx, 0xffffffff
xor ebp, ebp
test al, al
mov dword [esp + 0x24], ecx
mov dword [esp + 0x10], edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x20], edx
mov dword [esp + 0x2c], esi
jne 0x432c0e
mov dword [ecx + 8], edi
mov dword [ecx], edi
lea eax, [edi - 2]
jmp 0x4332ae
movsx eax, al
cmp eax, edi
mov dword [esp + 0x14], eax
je 0x432f81
lea ecx, [ecx]
test edi, edi
je 0x432ce9
movsx eax, byte [esp + 0x14]
push eax
push str.__t_n_r__
call fcn.004a6730
add esp, 8
test eax, eax
je 0x432f6a
mov esi, dword [esp + 0x2c]
mov eax, dword [esp + 0x1c]
sub esi, dword [eax + 0xc]
sub esi, edi
test ebx, ebx
jne 0x432c5f
lea ecx, [esi + edi - 1]
mov dword [eax], edi
mov dword [eax + 4], ecx
jmp 0x432cd7
mov edi, dword [esp + 0x24]
mov eax, dword [edi + 0x10]
add edi, 0x10
sub eax, 0x10
mov edx, 1
sub edx, dword [eax + 0xc]
mov eax, dword [eax + 8]
sub eax, esi
or edx, eax
jge 0x432c85
push esi
mov ecx, edi
call fcn.00402260
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 0xc]
add edx, dword [esp + 0x28]
mov eax, dword [edi]
push esi
push edx
push eax
call fcn.004af300
add esp, 0xc
cmp esi, 0xffffffff
mov eax, esi
jne 0x432cbb
mov eax, dword [edi]
test eax, eax
je 0x432cc3
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x432cb0
sub eax, edx
test eax, eax
jl 0x43336c
mov ecx, dword [edi]
cmp eax, dword [ecx - 8]
jg 0x43336c
mov dword [ecx - 0xc], eax
mov ecx, dword [edi]
mov byte [eax + ecx], 0
mov esi, dword [esp + 0x2c]
xor edi, edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], edi
cmp dword [esp + 0x18], 0
je 0x432f1f
mov ecx, dword [esp + 0x14]
cmp ecx, 0x3e
jne 0x432dc1
mov eax, dword [esp + 0x10]
test al, 0xc0
jne 0x432ddc
mov edx, dword [esp + 0x1c]
mov ecx, esi
sub ecx, dword [edx + 0xc]
cmp ebp, 1
mov dword [esp + 0x20], ecx
jne 0x432d69
cmp ebx, ebp
mov dword [esp + 0x18], 0
jne 0x432db4
cmp dword [esp + 0x30], 0x2f
jne 0x432db4
cmp dword [esp + 0x34], 0
je 0x432d5c
movsx eax, byte [esp + 0x34]
push eax
push 0x4e45f0
call fcn.004a6730
add esp, 8
test eax, eax
mov eax, dword [esp + 0x10]
je 0x432db4
mov ecx, dword [esp + 0x24]
or dword [ecx + 0xc], 0x10000
jmp 0x432db4
cmp ecx, ebp
jle 0x432f6a
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x18]
sub eax, ebp
add eax, 1
mov edi, ebp
sub esi, eax
sub edi, 1
je 0x432da0
mov cl, byte [eax]
mov dl, byte [esi + eax]
add eax, 1
cmp cl, dl
je 0x432d82
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x2c]
jmp 0x432f6a
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x18], 0
test al, 0x20
je 0x433292
jmp 0x432f6a
cmp ecx, 0x3c
jne 0x432dd8
cmp ebx, 2
je 0x433376
cmp ebx, 0xffffffff
je 0x433376
mov eax, dword [esp + 0x10]
test bl, 1
je 0x432eed
test al, 0xc0
je 0x432e39
cmp ecx, 0x22
jne 0x432e10
test al, al
jns 0x432edf
mov edx, dword [esp + 0x30]
xor eax, 0x80
mov dword [esp + 0x10], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], ecx
jmp 0x432f6a
cmp ecx, 0x27
jne 0x432edf
test al, 0x40
je 0x432edf
mov edx, dword [esp + 0x30]
xor eax, 0x40
mov dword [esp + 0x10], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], ecx
jmp 0x432f6a
cmp ecx, 0x22
jne 0x432e63
test eax, 0x100
je 0x432edf
mov edx, dword [esp + 0x30]
xor eax, 0x180
mov dword [esp + 0x10], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], ecx
jmp 0x432f6a
cmp ecx, 0x27
jne 0x432e89
test eax, 0x100
je 0x432edf
mov edx, dword [esp + 0x30]
xor eax, 0x140
mov dword [esp + 0x10], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], ecx
jmp 0x432f6a
cmp ecx, 0x3d
jne 0x432eb5
cmp dword [esp + 0x30], ecx
je 0x432eb5
test eax, 0x100
jne 0x432ebc
mov edx, dword [esp + 0x30]
xor eax, 0x100
mov dword [esp + 0x10], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], ecx
jmp 0x432f6a
test eax, 0x100
je 0x432edf
movsx eax, byte [esp + 0x14]
push eax
push str.__t_n_r
call fcn.004a6730
mov ecx, dword [esp + 0x1c]
add esp, 8
test eax, eax
jne 0x432edf
xor dword [esp + 0x10], 0x100
mov edx, dword [esp + 0x30]
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], ecx
jmp 0x432f6a
test bl, 0x40
je 0x432f6a
mov eax, dword [esp + 0x14]
cmp eax, 0x22
jne 0x432f0c
test byte [esp + 0x10], 0x40
jne 0x432f6a
xor dword [esp + 0x10], 0x80
jmp 0x432f6a
cmp eax, 0x27
jne 0x432f6a
test byte [esp + 0x10], 0x80
jne 0x432f6a
xor dword [esp + 0x10], 0x40
jmp 0x432f6a
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4332c7
test al, 0x10
je 0x432fcd
cmp dword [esp + 0x14], 0x3c
je 0x433385
movsx eax, byte [esp + 0x14]
push eax
push str.__t_n_r
call fcn.004a6730
add esp, 8
test eax, eax
jne 0x432f6a
xor dword [esp + 0x10], 0x10
mov ebx, 2
lea ebp, [ebx - 1]
mov dword [esp + 0x18], 0x4e45f8
movsx eax, byte [esi + 1]
add esi, 1
test eax, eax
mov dword [esp + 0x2c], esi
mov dword [esp + 0x14], eax
jne 0x432c20
mov eax, dword [esp + 0x1c]
sub esi, dword [eax + 0xc]
sub esi, 1
cmp ebx, 4
mov dword [esp + 0x20], esi
je 0x433292
cmp ebx, 2
je 0x433292
test byte [esp + 0x10], 0x20
mov eax, 0x4e4570
jne 0x433337
cmp ebx, 0x40
je 0x433337
cmp ebx, 1
jne 0x433308
mov eax, str.Element_tag
jmp 0x43333c
test al, 1
je 0x4330d1
mov ecx, dword [esp + 0x14]
xor eax, 1
cmp ecx, 0x60
mov dword [esp + 0x10], eax
ja 0x4330b0
cmp ecx, 0x40
jbe 0x432ff7
cmp ecx, 0x5b
jb 0x4330b0
cmp ecx, 0x5f
je 0x4330b0
cmp ecx, 0x3a
je 0x4330b0
cmp ecx, 0x2f
jne 0x43302f
lea ebp, [ecx - 0x2e]
mov ecx, dword [esp + 0x1c]
mov edi, esi
sub edi, dword [ecx + 0xc]
xor ebx, ebx
add edi, ebp
mov dword [esp + 0x18], 0x4e45fc
mov dword [esp + 0x28], edi
jmp 0x432f6a
cmp ecx, 0x21
jne 0x433040
or eax, 2
mov dword [esp + 0x10], eax
jmp 0x432f6a
cmp ecx, 0x3f
jne 0x433068
mov edx, dword [esp + 0x1c]
mov edi, esi
sub edi, dword [edx + 0xc]
mov dword [esp + 0x18], 0x4e4458
add edi, 1
lea ebp, [ecx - 0x3d]
lea ebx, [ecx - 0x2f]
mov dword [esp + 0x28], edi
jmp 0x432f6a
mov eax, dword [esp + 0x20]
push eax
push str.tag_name_character
lea ecx, [esp + 0xa4]
push str.Incorrect__s_at_offset__d
push ecx
mov dword [esp + 0x28], 0x4e45fc
mov ebp, 1
call fcn.004a6fb4
mov ecx, dword [esp + 0x34]
add esp, 0x10
lea edx, [esp + 0x9c]
push edx
add ecx, 0x10
call fcn.004023b0
or ebx, 0xffffffff
jmp 0x432f6a
mov eax, dword [esp + 0x1c]
mov edi, esi
sub edi, dword [eax + 0xc]
mov ebp, 1
mov dword [esp + 0x18], 0x4e45fc
mov ebx, ebp
mov dword [esp + 0x28], edi
jmp 0x432f6a
test al, 2
je 0x433186
mov ecx, dword [esp + 0x14]
xor eax, 2
cmp ecx, 0x2d
mov dword [esp + 0x10], eax
jne 0x4330f5
or eax, 4
mov dword [esp + 0x10], eax
jmp 0x432f6a
cmp ecx, 0x5b
jne 0x43310a
test al, 0x20
jne 0x43311f
or eax, 8
mov dword [esp + 0x10], eax
jmp 0x432f6a
cmp ecx, 0x44
jne 0x43311f
test al, 0x20
jne 0x43311f
or eax, 0x20
mov dword [esp + 0x10], eax
jmp 0x432f6a
movsx ecx, byte [esp + 0x14]
push ecx
push 0x4e4630
call fcn.004a6730
add esp, 8
test eax, eax
mov dword [esp + 0x18], 0x4e45fc
mov ebp, 1
je 0x43314b
lea ebx, [ebp + 0x3f]
jmp 0x432f6a
mov edx, dword [esp + 0x20]
push edx
push str.__tag
lea eax, [esp + 0x16c]
push str.Incorrect__s_at_offset__d
push eax
call fcn.004a6fb4
add esp, 0x10
lea ecx, [esp + 0x164]
push ecx
mov ecx, dword [esp + 0x28]
add ecx, 0x10
call fcn.004023b0
or ebx, 0xffffffff
jmp 0x432f6a
test al, 4
je 0x4331f5
xor eax, 4
cmp dword [esp + 0x14], 0x2d
mov dword [esp + 0x10], eax
jne 0x4331ad
mov ebp, 3
mov dword [esp + 0x18], 0x4e463c
lea ebx, [ebp + 0x1d]
jmp 0x432f6a
mov edx, dword [esp + 0x20]
push edx
push str.comment_tag
lea eax, [esp + 0x108]
push str.Incorrect__s_at_offset__d
push eax
mov dword [esp + 0x28], 0x4e45fc
mov ebp, 1
call fcn.004a6fb4
add esp, 0x10
lea ecx, [esp + 0x100]
push ecx
mov ecx, dword [esp + 0x28]
add ecx, 0x10
call fcn.004023b0
or ebx, 0xffffffff
jmp 0x432f6a
test al, 8
je 0x43325e
xor eax, 8
cmp dword [esp + 0x14], 0x43
mov dword [esp + 0x10], eax
jne 0x43321c
mov ebp, 3
mov dword [esp + 0x18], 0x4e464c
lea ebx, [ebp + 5]
jmp 0x432f6a
mov edx, dword [esp + 0x20]
push edx
push 0x4e4570
lea eax, [esp + 0x40]
push str.Incorrect__s_at_offset__d
push eax
mov dword [esp + 0x28], 0x4e45fc
mov ebp, 1
call fcn.004a6fb4
add esp, 0x10
lea ecx, [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x28]
add ecx, 0x10
call fcn.004023b0
or ebx, 0xffffffff
jmp 0x432f6a
test al, 0x20
je 0x432f6a
mov eax, dword [esp + 0x14]
cmp eax, 0x3c
jne 0x433279
or dword [esp + 0x10], 1
jmp 0x432f6a
cmp eax, 0x3e
jne 0x432f6a
mov eax, dword [esp + 0x1c]
sub esi, dword [eax + 0xc]
mov ebx, 0x40
mov dword [esp + 0x20], esi
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
add eax, 1
mov dword [ecx + 8], eax
mov ecx, dword [esp + 0x24]
sub eax, dword [ecx + 4]
mov dword [ecx], ebx
mov dword [ecx + 8], eax
mov eax, ebx
mov ecx, dword [esp + 0x1c8]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004a3135
add esp, 0x1bc
ret
cmp dword [esp + 0x14], 0x3c
jne 0x4332db
mov dword [esp + 0x10], 1
jmp 0x432f6a
movsx edx, byte [esp + 0x14]
push edx
push str.__t_n_r
mov ebx, 4
call fcn.004a6730
add esp, 8
test eax, eax
je 0x432f5a
mov dword [esp + 0x10], 0x10
jmp 0x432f6a
test ebx, ebx
jne 0x433313
mov eax, str.Element_end_tag
jmp 0x43333c
cmp ebx, 8
jne 0x43331f
mov eax, str.CDATA_Section
jmp 0x43333c
cmp ebx, 0x10
jne 0x43332b
mov eax, str.Processing_instruction
jmp 0x43333c
cmp ebx, 0x20
jne 0x43333c
mov eax, str.Comment
jmp 0x43333c
mov eax, str.Doctype
mov esi, dword [esp + 0x24]
mov ecx, dword [esi + 4]
push ecx
push eax
lea edx, [esp + 0x40]
push str._s_at_offset__d_unterminated
push edx
or ebx, 0xffffffff
call fcn.004a6fb4
add esp, 0x10
lea eax, [esp + 0x38]
push eax
lea ecx, [esi + 0x10]
call fcn.004023b0
jmp 0x433292
push 0x80070057
call fcn.004021e0
mov ecx, dword [esp + 0x1c]
sub esi, dword [ecx + 0xc]
sub esi, 1
jmp 0x43328e
mov edx, dword [esp + 0x1c]
sub esi, dword [edx + 0xc]
mov ebx, 4
sub esi, 1
jmp 0x43328e