Function at 0x46dde3
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push eax
push ebx
push ecx
push edx
push esi
push edi
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b469
push dword [0x4012a0]
push dword [0x4012a4]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0
mov edi, 0x4610fc
mov ecx, pe_nt_image_headers32
xor eax, eax
rep stosd dword es:[edi], eax
mov esi, dword [ebp + 8]
cmp word [esi], 0
je 0x46e3d1
cmp dword [esi], 0x5b001b
jne 0x46dea9
add esi, 4
add dword [ebp - 8], 1
mov dword [ebp - 4], 0
cmp word [esi], 0x1b
je 0x46dea9
cmp word [esi], 0
je 0x46dea9
cmp word [esi], 0x40
jl 0x46de5b
cmp word [esi], 0x7e
jle 0x46dea9
call fcn.0046e5d0
call fcn.00472e3f
js 0x46de77
mov ecx, dword [ebp - 4]
mov dword [ecx*4 + 0x4610fc], eax
add dword [ebp - 4], 1
jmp 0x46dea7
cmp word [esi], 0x3a
jl 0x46dea7
cmp word [esi], 0x3f
jg 0x46dea7
mov ax, word [esi]
cmp ax, 0x3b
je 0x46de92
cmp ax, 0x3a
jne 0x46dea4
mov ecx, dword [ebp - 4]
mov dword [ecx*4 + 0x4610fc], 0xffffffff
add dword [ebp - 4], 1
add esi, 2
jmp 0x46de43
cmp word [esi], 0x6d
jne 0x46df1c
add esi, 2
cmp dword [ebp - 4], 0
jne 0x46dec1
xor eax, eax
call fcn.0046e407
jmp 0x46df17
cmp dword [ebp - 4], 1
jne 0x46ded3
mov eax, dword [0x4610fc]
call fcn.0046e407
jmp 0x46df17
cmp dword [ebp - 4], 2
jne 0x46dee5
mov eax, dword [0x461100]
call fcn.0046e407
jmp 0x46df17
cmp dword [ebp - 4], 3
jne 0x46df01
mov eax, dword [0x4610fc]
call fcn.0046e407
mov eax, dword [0x461104]
call fcn.0046e407
jmp 0x46df17
xor ecx, ecx
mov eax, dword [ecx*4 + 0x4610fc]
call fcn.0046e407
add ecx, 2
cmp ecx, dword [ebp - 4]
jl 0x46df03
jmp 0x46e36d
cmp word [esi], 0x48
je 0x46df32
cmp word [esi], 0x68
je 0x46df32
cmp word [esi], 0x66
jne 0x46dfd5
add esi, 2
cmp dword [ebp - 4], 0
jne 0x46df4a
xor eax, eax
push eax
push 0
call fcn.0046b8c7
jmp 0x46dfd0
cmp dword [ebp - 4], 1
jne 0x46df67
mov eax, dword [0x4610fc]
cmp eax, 0
jle 0x46df5d
sub eax, 1
push eax
push 0
call fcn.0046b8c7
jmp 0x46dfd0
cmp dword [ebp - 4], 2
jne 0x46df84
mov eax, dword [0x461100]
cmp eax, 0
jle 0x46df7a
sub eax, 1
push 0
push eax
call fcn.0046b8c7
jmp 0x46dfd0
mov ecx, dword [ebp - 4]
mov eax, dword [ecx*4 + 0x4610f8]
cmp eax, 0xffffffff
jne 0x46df97
xor eax, eax
jmp 0x46df9f
cmp eax, 0
jle 0x46df9f
sub eax, 1
mov ebx, dword [ecx*4 + 0x4610f0]
cmp ebx, 0xffffffff
jne 0x46dfaf
xor ebx, ebx
jmp 0x46dfb7
cmp ebx, 0
jle 0x46dfb7
sub ebx, 1
mov ecx, dword [0x4012bc]
sub ecx, 1
cmp ebx, ecx
jl 0x46dfc9
mov ebx, 0xffffffff
push ebx
push eax
call fcn.0046b8c7
jmp 0x46e36d
cmp word [esi], 0x4a
jne 0x46e080
add esi, 2
mov eax, dword [ebp - 4]
cmp eax, 0
je 0x46dff6
mov ecx, eax
sub ecx, 1
mov eax, dword [ecx*4 + 0x4610fc]
cmp eax, 1
jge 0x46e03c
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x4012b4]
mov ecx, dword [0x40129c]
imul eax, ecx
mov ebx, eax
mov eax, dword [0x4012b4]
mov ecx, dword [0x4012bc]
imul eax, ecx
sub eax, ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
push dword [0x40129c]
push dword [0x401298]
call fcn.0046b605
jmp 0x46e07b
cmp eax, 1
jne 0x46e071
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x4012b4]
mov ecx, dword [0x40129c]
imul eax, ecx
add eax, dword [0x401298]
add eax, 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
push 0
push 0
call fcn.0046b605
jmp 0x46e07b
cmp eax, 2
jne 0x46e07b
call fcn.0046b3ff
jmp 0x46e36d
cmp word [esi], 0x4b
jne 0x46e11d
add esi, 2
mov eax, dword [ebp - 4]
cmp eax, 0
je 0x46e0a1
mov ecx, eax
sub ecx, 1
mov eax, dword [ecx*4 + 0x4610fc]
cmp eax, 1
jge 0x46e0d2
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x4012b4]
sub eax, dword [0x401298]
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
push dword [0x40129c]
push dword [0x401298]
call fcn.0046b605
jmp 0x46e118
cmp eax, 1
jne 0x46e0fc
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x401298]
add eax, 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
push dword [0x40129c]
push 0
call fcn.0046b605
jmp 0x46e118
cmp eax, 2
jne 0x46e118
push 0xffffffffffffffff
push 0xffffffffffffffff
push dword [0x4012b4]
push dword [0x40129c]
push 0
call fcn.0046b605
jmp 0x46e36d
cmp word [esi], 0x73
jne 0x46e148
add esi, 2
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x401298]
mov dword [0x4050bc], eax
mov eax, dword [0x40129c]
mov dword [0x4050c0], eax
jmp 0x46e36d
cmp word [esi], 0x75
jne 0x46e167
add esi, 2
push dword [0x4050c0]
push dword [0x4050bc]
call fcn.0046b8c7
jmp 0x46e36d
cmp word [esi], 0x52
je 0x46e173
cmp word [esi], 0x6e
jne 0x46e1ad
add esi, 2
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
push dword [0x401298]
push dword [0x40129c]
call 0x46e19c
and eax, 0x2c006400
add byte [0x6400], ah
add byte [edx - 1], ch
push 0xffffffffffffffff
call fcn.0046b9dd
add esp, 0x14
jmp 0x46e36d
cmp word [esi], 0x41
jne 0x46e1f2
add esi, 2
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x40129c]
cmp dword [ebp - 4], 0
jne 0x46e1d1
mov ecx, 1
jmp 0x46e1de
mov ebx, dword [ebp - 4]
sub ebx, 1
mov ecx, dword [ebx*4 + 0x4610fc]
sub eax, ecx
cmp eax, 0xffffffff
jle 0x46e1ed
push eax
push 0xffffffffffffffff
call fcn.0046b8c7
jmp 0x46e36d
cmp word [esi], 0x42
jne 0x46e23a
add esi, 2
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x40129c]
cmp dword [ebp - 4], 0
jne 0x46e216
mov ecx, 1
jmp 0x46e223
mov ebx, dword [ebp - 4]
sub ebx, 1
mov ecx, dword [ebx*4 + 0x4610fc]
add eax, ecx
cmp eax, dword [0x4012bc]
jge 0x46e235
push eax
push 0xffffffffffffffff
call fcn.0046b8c7
jmp 0x46e36d
cmp word [esi], 0x43
jne 0x46e282
add esi, 2
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x401298]
cmp dword [ebp - 4], 0
jne 0x46e25e
mov ecx, 1
jmp 0x46e26b
mov ebx, dword [ebp - 4]
sub ebx, 1
mov ecx, dword [ebx*4 + 0x4610fc]
add eax, ecx
cmp eax, dword [0x4012b4]
jge 0x46e27d
push 0xffffffffffffffff
push eax
call fcn.0046b8c7
jmp 0x46e36d
cmp word [esi], 0x44
jne 0x46e2c7
add esi, 2
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x401298]
cmp dword [ebp - 4], 0
jne 0x46e2a6
mov ecx, 1
jmp 0x46e2b3
mov ebx, dword [ebp - 4]
sub ebx, 1
mov ecx, dword [ebx*4 + 0x4610fc]
sub eax, ecx
cmp eax, 0xffffffff
jle 0x46e2c2
push 0xffffffffffffffff
push eax
call fcn.0046b8c7
jmp 0x46e36d
cmp word [esi], 0x45
jne 0x46e310
add esi, 2
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x40129c]
cmp dword [ebp - 4], 0
jne 0x46e2eb
mov ecx, 1
jmp 0x46e2f8
mov ebx, dword [ebp - 4]
sub ebx, 1
mov ecx, dword [ebx*4 + 0x4610fc]
add eax, ecx
cmp eax, dword [0x4012bc]
jge 0x46e30e
push eax
push dword [0x401298]
call fcn.0046b8c7
jmp 0x46e36d
cmp word [esi], 0x46
jne 0x46e356
add esi, 2
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0046b8c7
mov eax, dword [0x40129c]
cmp dword [ebp - 4], 0
jne 0x46e334
mov ecx, 1
jmp 0x46e341
mov ebx, dword [ebp - 4]
sub ebx, 1
mov ecx, dword [ebx*4 + 0x4610fc]
sub eax, ecx
cmp eax, 0xffffffff
jle 0x46e354
push eax
push dword [0x401298]
call fcn.0046b8c7
jmp 0x46e36d
cmp word [esi], 0x20
jge 0x46e36d
cmp word [esi], 0x20
jge 0x46e36d
cmp word [esi], 0
je 0x46e36d
add esi, 2
jmp 0x46e35c
cmp word [esi], 0x1b
je 0x46e3aa
cmp word [esi], 7
je 0x46e3aa
cmp word [esi], 0
je 0x46e3aa
xor eax, eax
mov ax, word [esi]
push eax
call 0x46e390
and eax, 0x6300
add byte [edx - 1], ch
push 0xffffffffffffffff
call fcn.0046b9dd
add esp, 0x10
push 0x1b
call fcn.0046b847
jne 0x46e3d1
add esi, 2
jmp 0x46e36d
cmp word [esi + 2], 0x1b
jne 0x46e3b6
add esi, 2
jmp 0x46e3aa
cmp dword [ebp + 0xc], 0
jle 0x46e3cc
mov eax, dword [ebp - 8]
and eax, 7
jne 0x46e3cc
push dword [ebp + 0xc]
call fcn.0046bc96
jmp 0x46de23
pop dword [0x4012a4]
pop dword [0x4012a0]
push dword [0x4012a4]
push dword [0x4012a0]
call fcn.0046b469
mov edx, dword [0x405044]
push dword [ebp - 8]
pop dword [edx + 0x44]
add edx, 0x58
pop edi
pop esi
pop edx
pop ecx
pop ebx
pop eax
leave
ret 8