Function at 0x492560
Capabilities:
Parse credit card information

Disassembly:
sub esp, 0x2c
push ebx
push ecx
push edx
push esi
push edi
push ebp
mov edi, eax
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ebx
mov eax, ecx
mov dword [esp + 0x18], eax
mov ebx, edx
mov dword [esp + 0x2c], ebx
mov ecx, dword [esp + 0x48]
mov byte [ecx], 0
mov dword [esp + 0x1c], 0
mov edx, 4
mov esi, dword [edx + 0x5a0984]
mov dword [esp + edx + 0x3c], esi
sub edx, 4
jae 0x492593
mov ebp, 0
mov edx, 0
mov esi, 0
jmp 0x4925cd
cmp eax, 0x57
jne 0x4925ba
jmp 0x4925d3
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x4c]
call dword [edi + 0x97]
jmp 0x492dab
cmp byte [edi + 0x3a], 0
je 0x4925b3
cmp eax, 2
je 0x49261e
cmp eax, 0xe
je 0x49261e
cmp eax, 0x17
je 0x49261e
cmp eax, 0x1b
je 0x49261e
cmp eax, 0x1c
je 0x49261e
cmp eax, 0x20
je 0x49261e
cmp eax, 0x21
je 0x49261e
cmp eax, 0x41
je 0x49261e
cmp eax, 0x49
je 0x49261e
cmp eax, 0x4a
je 0x49261e
cmp eax, 0x4d
je 0x49261e
call fcn.00413ca0
mov eax, edi
mov esi, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [esi]
mov esi, dword [esp + 0x18]
mov eax, esi
cmp eax, 0x57
jne 0x4926db
mov eax, dword [esp + 0x4c]
lea eax, [eax + 4]
mov ebx, dword [eax - 4]
mov dword [esp + 0x20], ebx
lea eax, [eax + 4]
mov ecx, dword [eax - 4]
lea eax, [eax + 4]
mov ebp, dword [eax - 4]
lea eax, [eax + 4]
mov eax, dword [eax - 4]
mov dword [esp + 0x34], eax
mov edi, dword [esp + 0x28]
cmp byte [edi + 0x3a], 0
jne 0x4926a9
mov byte [edi + 0x3a], 1
mov eax, 0x69
call fcn.004dbf88
mov dword [esp + 0x30], eax
cmp eax, 0
je 0x49267c
mov ebx, str.MSSQL
call fcn.00492520
mov eax, dword [esp + 0x30]
mov dword [edi + 0x9b], eax
cmp dword [edi + 0x97], 0
jne 0x49269a
mov eax, dword [edi + 0x3b]
mov eax, dword [eax]
mov dword [edi + 0x97], eax
mov eax, edi
mov ebx, dword [esp + 0x2c]
mov edi, dword [eax + 0xa1]
call dword [edi + 0x30]
imul eax, dword [esp + 0x34], 0x64
mov edi, dword [esp + 0x28]
mov dword [edi + 0x43], eax
cmp dword [edi + 0x43], 0
jne 0x4926c2
mov dword [edi + 0x43], 0xffffffff
mov eax, dword [esp + 0x20]
mov dword [edi + 0x47], eax
mov dword [edi + 0x4b], ebp
imul eax, ecx
mov dword [edi + 0x3f], eax
mov ebp, dword [esp + 0x24]
jmp 0x492d3e
cmp eax, 1
je 0x4926f4
cmp eax, 0x33
je 0x4926f4
cmp eax, 4
je 0x4926f4
cmp eax, 0x3b
je 0x4926f4
cmp eax, 3
jne 0x492744
mov eax, esi
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x4c]
call dword [edi + 0x97]
mov ebp, eax
call fcn.00413f8c
cmp eax, 0
jne 0x492d3e
mov eax, edi
mov ecx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
mov ebx, 1
call dword [ecx + 0x18]
mov eax, edi
call fcn.00494e5c
jmp 0x492d3e
mov eax, edi
mov eax, dword [eax + 0x57]
cmp dword [esp + 0x38], eax
je 0x49277e
jmp 0x492d3e
cmp eax, 5
je 0x492753
cmp eax, 0x22
je 0x492753
cmp eax, 6
jne 0x49278a
mov eax, dword [esp + 0x4c]
lea ecx, [eax + 4]
mov eax, dword [ecx - 4]
mov dword [esp + 0x38], eax
mov eax, esi
mov ebx, dword [esp + 0x2c]
call dword [edi + 0x97]
mov ebp, eax
call fcn.00413f8c
cmp eax, 0
je 0x492734
jmp 0x492d3e
mov eax, edi
call fcn.00494e5c
jmp 0x492d3e
cmp eax, 0xb
jne 0x4927e8
cmp byte [edi + 0x9f], 0
je 0x4927a1
mov eax, edi
mov bl, 0
call fcn.00492e28
call fcn.00413f8c
cmp eax, 0
jne 0x492d3e
mov eax, esi
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x4c]
call dword [edi + 0x97]
mov ebp, eax
call fcn.00413f8c
cmp eax, 0
jne 0x492d3e
mov eax, edi
mov ecx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
mov ebx, 0xb
call dword [ecx + 0x18]
jmp 0x492d3e
cmp eax, 0xf
jne 0x4928ca
mov ecx, dword [esp + 0x4c]
mov eax, ecx
lea eax, [eax + 4]
mov eax, dword [eax - 4]
mov ebx, dword [edi + 0x57]
cmp eax, ebx
jne 0x492872
mov eax, edi
mov ebx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [ebx + 0x10]
cmp dword [edi + 0x5f], 0
je 0x492829
mov ebx, dword [edi + 0x8f]
mov eax, dword [edi + 0x5f]
call fcn.00502100
jmp 0x49282e
mov eax, 0
cmp eax, 0
je 0x49285f
mov eax, dword [eax + 0x10]
mov dword [edi + 0x4f], eax
mov eax, edi
call fcn.004933f8
cmp eax, 0
je 0x492853
mov eax, edi
mov bl, 0
call fcn.00492e28
jmp 0x492d3e
mov eax, edi
call fcn.004933cc
jmp 0x492d3e
mov eax, esi
mov ebx, dword [esp + 0x2c]
call dword [edi + 0x97]
mov ebp, eax
jmp 0x492d3e
mov eax, esi
mov ebx, dword [esp + 0x2c]
call dword [edi + 0x97]
mov ebp, eax
jmp 0x492d3e
mov eax, edi
mov eax, dword [eax + 0x57]
cmp eax, ebx
je 0x492893
jmp 0x492939
sub esp, 8
mov eax, 4
mov ebx, dword [esp + eax + 0x44]
mov dword [esp + eax], ebx
sub eax, 4
jae 0x49289b
mov eax, edi
call fcn.00492db8
cmp eax, 0
je 0x492939
mov eax, edi
call fcn.0049347c
mov byte [edi + 0xa0], 1
jmp 0x492d3e
cmp eax, 0x42
je 0x4928d4
cmp eax, 0x43
jne 0x492945
lea eax, [esp + 0x3c]
call fcn.00425dec
mov eax, edi
call fcn.004933f8
call fcn.00413f8c
cmp eax, 0
jne 0x492d3e
cmp esi, 0x43
jne 0x492905
mov eax, dword [esp + 0x4c]
lea eax, [eax + 4]
mov eax, dword [eax - 4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x3c]
mov ebx, dword [esp + 0x40]
call fcn.00425f5c
mov ebx, dword [esp + 0x1c]
push ebx
push dword [esp + 0x30]
push esi
mov eax, dword [edi + 0x97]
push eax
call fcn.00493644
add esp, 0x10
call fcn.00413f8c
cmp eax, 0
je 0x492885
mov byte [edi + 0xa0], 0
jmp 0x492d3e
cmp eax, 0x12
jne 0x492959
mov ebx, 0xffffffff
mov eax, edi
mov dword [eax + 0x21], ebx
jmp 0x492d3e
cmp eax, 0x13
jne 0x492972
mov eax, dword [esp + 0x4c]
lea eax, [eax + 4]
mov ebx, dword [eax - 4]
mov eax, edi
mov dword [eax + 0x21], ebx
jmp 0x492d3e
cmp eax, 0x3a
jne 0x492983
mov bl, 1
mov eax, edi
mov byte [eax + 0x25], bl
jmp 0x492d3e
cmp eax, 0x18
je 0x49298d
cmp eax, 0x1f
jne 0x49299d
mov eax, edi
mov ebx, esi
call fcn.00492ee8
mov ebp, eax
jmp 0x492d3e
cmp eax, 0x3d
je 0x4929a7
cmp eax, 0x3e
jne 0x492a21
cmp dword [edi + 4], 0
jne 0x4929c4
mov eax, esi
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x4c]
call dword [edi + 0x97]
mov ebp, eax
jmp 0x492d3e
cmp esi, 0x3e
jne 0x4929d7
mov eax, dword [esp + 0x4c]
lea eax, [eax + 4]
mov eax, dword [eax - 4]
mov dword [esp + 0x1c], eax
mov eax, edi
mov ebx, dword [eax + 0x57]
mov eax, dword [esp + 0x1c]
cmp ebx, eax
je 0x492a00
push eax
push dword [esp + 0x30]
push esi
mov eax, dword [edi + 0x97]
push eax
call fcn.00493644
add esp, 0x10
mov ebp, eax
jmp 0x492d3e
mov eax, edi
mov ebx, dword [eax]
mov eax, dword [eax + 0x4f]
mov ebx, dword [ebx + eax*4]
mov eax, ebx
lea eax, [eax + 4]
mov eax, dword [eax]
lea ebx, [ebx + 4]
mov ebx, dword [ebx + 4]
call fcn.00425f5c
jmp 0x492d3e
cmp eax, 0x45
je 0x492a2b
cmp eax, 0x46
jne 0x492a51
mov eax, esi
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x4c]
call dword [edi + 0x97]
mov ebp, eax
mov eax, edi
mov ebx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [ebx + 0x40]
jmp 0x492d3e
cmp eax, 0x1e
je 0x492a64
cmp eax, 0x36
je 0x492a64
cmp eax, 0x37
jne 0x492af1
cmp byte [edi + 0x9f], 0
je 0x492a76
mov eax, edi
mov bl, 1
call fcn.00492e28
call fcn.00413f8c
cmp eax, 0
jne 0x492d3e
mov eax, esi
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x4c]
call dword [edi + 0x97]
mov ebp, eax
call fcn.00413f8c
cmp eax, 0
jne 0x492d3e
mov eax, edi
mov ecx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
mov ebx, 0x1e
call dword [ecx + 0x18]
cmp byte [edi + 0xa0], 0
je 0x492d3e
mov eax, edi
mov ebx, dword [eax]
mov eax, dword [eax + 0x4f]
mov eax, dword [ebx + eax*4]
mov ebx, dword [eax]
call dword [ebx + 8]
cmp eax, 0
je 0x492ae5
mov eax, edi
call fcn.00494e5c
jmp 0x492d3e
mov eax, edi
call fcn.0049347c
jmp 0x492d3e
cmp eax, 0x31
je 0x492d3e
cmp eax, 0x1d
je 0x492b04
cmp eax, 0x63
jne 0x492b22
mov eax, edi
call fcn.00494e5c
mov eax, esi
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x4c]
call dword [edi + 0x97]
mov ebp, eax
jmp 0x492d3e
cmp eax, 0x3f
jne 0x492b6b
mov eax, esi
mov ebx, dword [edi + 0x9b]
movsx eax, byte [ebx + eax]
cmp eax, 0
je 0x492b5c
mov eax, edi
mov ecx, esi
mov edx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
mov ebx, 0
call dword [edx + 0x64]
mov ebp, eax
call fcn.00413f8c
mov edx, eax
jmp 0x492d3e
call fcn.00425a70
mov edx, 0x50
jmp 0x492d3e
cmp eax, 0x51
jne 0x492b95
mov eax, dword [esp + 0x4c]
lea eax, [eax + 4]
mov ecx, dword [eax - 4]
mov eax, edi
mov ebx, esi
mov edx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [edx + 0x5c]
mov edx, 0
jmp 0x492d3e
cmp eax, 0x53
jne 0x492bbf
mov eax, dword [esp + 0x4c]
lea eax, [eax + 4]
mov ecx, dword [eax - 4]
mov eax, edi
mov ebx, esi
mov edx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [edx + 0x60]
mov edx, 0
jmp 0x492d3e
cmp eax, 0x29
jne 0x492c05
mov eax, esi
mov ebx, dword [edi + 0x9b]
movsx eax, byte [ebx + eax]
cmp eax, 0
je 0x492bfb
mov eax, edi
mov ecx, esi
mov ebp, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
mov ebx, 0
mov dl, 1
call dword [ebp + 0x58]
mov ebp, eax
call fcn.00413f8c
mov edx, eax
jmp 0x492d3e
mov edx, 0x50
jmp 0x492d3e
cmp eax, 0x40
jne 0x492c53
mov eax, dword [esp + 0x4c]
lea eax, [eax + 4]
mov ebx, dword [eax - 4]
mov eax, esi
mov ecx, dword [edi + 0x9b]
movsx eax, byte [ecx + eax]
cmp eax, 0
je 0x492c44
mov eax, edi
mov ecx, esi
mov edx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [edx + 0x64]
mov ebp, eax
call fcn.00413f8c
mov edx, eax
jmp 0x492d3e
call fcn.00425a70
mov edx, 0x50
jmp 0x492d3e
cmp eax, 0x2c
je 0x492c5d
cmp eax, 0x2d
jne 0x492ca3
mov eax, dword [esp + 0x4c]
lea eax, [eax + 4]
mov ebx, dword [eax - 4]
mov eax, esi
mov ecx, dword [edi + 0x9b]
movsx eax, byte [ecx + eax]
cmp eax, 0
je 0x492c99
mov eax, edi
mov ecx, esi
mov ebp, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
mov dl, 1
call dword [ebp + 0x58]
mov ebp, eax
call fcn.00413f8c
mov edx, eax
jmp 0x492d3e
mov edx, 0x50
jmp 0x492d3e
cmp eax, 0x19
jne 0x492cbe
mov eax, edi
mov ebx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [ebx + 0x20]
mov ebp, eax
jmp 0x492d3e
cmp eax, 0x25
jne 0x492cde
mov dword [edi + 0x6b], 0
mov eax, esi
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x4c]
call dword [edi + 0x97]
mov ebp, eax
jmp 0x492d3e
cmp eax, 7
jne 0x492cf8
mov eax, edi
mov ebx, ecx
mov ecx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [ecx + 4]
mov ebp, eax
jmp 0x492d3e
cmp eax, 0x47
jne 0x492d14
mov eax, edi
mov ebx, dword [esp + 0x4c]
mov ecx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [ecx + 0x44]
mov ebp, eax
jmp 0x492d3e
cmp eax, 0x48
jne 0x492d30
mov eax, edi
mov ebx, dword [esp + 0x4c]
mov ecx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [ecx + 0xc]
mov ebp, eax
jmp 0x492d3e
mov eax, esi
mov ecx, dword [esp + 0x4c]
call dword [edi + 0x97]
mov ebp, eax
cmp edx, 0
je 0x492d4a
mov eax, edx
call fcn.00413d90
cmp dword [esp + 0x3c], 0
je 0x492d5a
mov eax, dword [esp + 0x3c]
call fcn.0046688c
mov eax, esi
cmp eax, 0xf
je 0x492d75
cmp eax, 0x18
je 0x492d75
cmp eax, 0x1f
je 0x492d75
cmp eax, 0x42
je 0x492d75
cmp eax, 0x43
jne 0x492d88
mov ebx, 0
mov eax, edi
mov dword [eax + 0x21], ebx
mov bl, 0
mov eax, edi
mov byte [eax + 0x25], bl
jmp 0x492d8d
cmp eax, 0x1e
jne 0x492d9c
mov eax, edi
mov ebx, dword [edi + 0xa1]
mov eax, dword [esp + 0x28]
call dword [ebx + 0x14]
mov eax, edi
mov ebx, esi
mov ecx, dword [eax + 0xa1]
call dword [ecx + 0x48]
mov eax, ebp
pop ebp
pop edi
pop esi
pop edx
pop ecx
pop ebx
add esp, 0x2c
ret 8