Function at 0x401660
Capabilities:
Parse credit card information
Parse pe header

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x64
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov ecx, 6
xor eax, eax
lea ebx, [esi + 0x20]
mov edi, ebx
rep stosd dword es:[edi], eax
mov eax, dword [esi]
test eax, eax
jne 0x4016b4
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], ecx
mov edx, dword [0x46a1dc]
mov dword [ebx], edx
mov eax, dword [0x46a1e0]
mov dword [ebx + 4], eax
mov ecx, dword [0x46a1e4]
mov dword [ebx + 8], ecx
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 1
jl 0x4016c2
cmp eax, 9
jle 0x401be5
cmp eax, 0xa
jl 0x4016e9
cmp eax, 0x13
jg 0x4016e9
mov ecx, dword [esi + 0xc]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 8]
push ecx
push edx
push eax
call fcn.00403570
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x5c
jl 0x401710
cmp eax, 0x5d
jg 0x401710
mov edx, dword [esi + 0xc]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 8]
push edx
push ecx
push eax
call fcn.00403570
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x14
jl 0x401737
cmp eax, 0x1d
jg 0x401737
mov ecx, dword [esi + 0xc]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 8]
push ecx
push edx
push eax
call fcn.00403b60
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x1e
jl 0x401741
cmp eax, 0x23
jle 0x401772
cmp eax, 0x24
jl 0x401768
cmp eax, 0x28
jg 0x401768
mov ecx, dword [esi + 0xc]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 8]
push ecx
push edx
push eax
call fcn.00404f00
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x29
jl 0x40178f
cmp eax, 0x31
jg 0x40178f
mov edx, dword [esi + 0xc]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 8]
push edx
push ecx
push eax
call fcn.00404f00
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x32
jl 0x401799
cmp eax, 0x3b
jle 0x4017a3
cmp eax, 0x6a
jl 0x4017c0
cmp eax, 0x6d
jg 0x4017c0
mov ecx, dword [esi + 0xc]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 8]
push ecx
push edx
push eax
call fcn.00404260
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x3c
jl 0x4017ef
cmp eax, 0x3f
jg 0x4017ef
mov edx, dword [esi + 0x14]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 0x10]
push edx
mov edx, dword [esi + 0xc]
push ecx
mov ecx, dword [esi + 8]
push edx
push ecx
push eax
call fcn.00404aa0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x40
jl 0x40181e
cmp eax, 0x42
jg 0x40181e
mov ecx, dword [esi + 0x14]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 0x10]
push ecx
mov ecx, dword [esi + 0xc]
push edx
mov edx, dword [esi + 8]
push ecx
push edx
push eax
call fcn.00404c00
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x43
jl 0x40184d
cmp eax, 0x45
jg 0x40184d
mov edx, dword [esi + 0x14]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 0x10]
push edx
mov edx, dword [esi + 0xc]
push ecx
mov ecx, dword [esi + 8]
push edx
push ecx
push eax
call fcn.00404d60
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x46
jl 0x40187c
cmp eax, 0x48
jg 0x40187c
mov ecx, dword [esi + 0x14]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 0x10]
push ecx
mov ecx, dword [esi + 0xc]
push edx
mov edx, dword [esi + 8]
push ecx
push edx
push eax
call fcn.00403380
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x4b
jl 0x4018ab
cmp eax, 0x4d
jg 0x4018ab
mov edx, dword [esi + 0x14]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 0x10]
push edx
mov edx, dword [esi + 0xc]
push ecx
mov ecx, dword [esi + 8]
push edx
push ecx
push eax
call fcn.00402f60
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x49
je 0x401be5
cmp eax, 0x4a
je 0x401be5
cmp eax, 0x4e
je 0x401be5
cmp eax, 0x4f
je 0x401be5
cmp eax, 0x50
jne 0x4018fa
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x10]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 0xc]
push eax
mov eax, dword [esi + 8]
push ecx
push edx
push eax
push 0x50
call fcn.00405680
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x51
jl 0x401929
cmp eax, 0x53
jg 0x401929
mov edx, dword [esi + 0x14]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 0x10]
push edx
mov edx, dword [esi + 0xc]
push ecx
mov ecx, dword [esi + 8]
push edx
push ecx
push eax
call fcn.004031c0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x54
jl 0x4019cd
cmp eax, 0x56
jg 0x4019cd
mov edx, dword [0x534800]
cmp byte [edx + 0x33d], 0x31
jne 0x4019a8
lea edi, [edx + 0x33a]
mov ecx, 0x46a180
mov di, word [edi]
cmp di, word [ecx]
jne 0x4019a8
mov ecx, 0x19
xor eax, eax
lea edi, [esp + 0xc]
rep stosd dword es:[edi], eax
mov dx, word [edx + 0x303]
lea eax, [esp + 0xc]
push eax
mov word [esp + 0x10], dx
call dword [sym.imp.MSVCRT.dll_atoi]
mov edx, dword [esi + 0x14]
mov eax, dword [esi + 0x10]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 0xc]
push edx
mov edx, dword [esi + 8]
push eax
mov eax, dword [esi]
push ecx
push edx
push eax
call fcn.004081c0
add esp, 0x20
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x14]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 0x10]
push edx
mov edx, dword [esi + 0xc]
push ecx
mov ecx, dword [esi + 8]
push edx
push ecx
push eax
call fcn.00402d20
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x57
jl 0x4019fc
cmp eax, 0x59
jg 0x4019fc
mov ecx, dword [esi + 0x14]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 0x10]
push ecx
mov ecx, dword [esi + 0xc]
push edx
mov edx, dword [esi + 8]
push ecx
push edx
push eax
call fcn.00402b90
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x5a
je 0x401c14
cmp eax, 0x61
je 0x401c14
cmp eax, 0x5b
jne 0x401a39
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x10]
lea eax, [esi + 0x18]
push ebx
push eax
mov eax, dword [esi + 0xc]
push ecx
mov ecx, dword [esi + 8]
push edx
push eax
push ecx
push 0x5b
call fcn.004057f0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x62
jne 0x401a64
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x10]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 0xc]
push eax
mov eax, dword [esi + 8]
push ecx
push edx
push eax
push 0x62
call fcn.00408490
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x5e
je 0x401bef
cmp eax, 0x5f
je 0x401bef
cmp eax, 0x60
je 0x401bef
cmp eax, 0x62
jl 0x401a8d
cmp eax, 0x63
jle 0x401be5
cmp eax, 0x66
jne 0x401ac6
mov edx, dword [esi + 0x14]
mov eax, dword [esi + 0x10]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 0xc]
push edx
mov edx, dword [esi + 8]
push eax
push ecx
push edx
push 0x66
call fcn.004049c0
mov ecx, 5
mov esi, 0x46a057
mov edi, ebx
add esp, 0x1c
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x6e
jl 0x401b16
cmp eax, 0x77
jg 0x401b16
mov edx, dword [esi + 0xc]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 8]
add eax, 0xffffff9c
push edx
push ecx
push eax
call fcn.00403570
mov edx, eax
mov edi, 0x46a1d0
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x78
jl 0x401b68
cmp eax, 0x81
jg 0x401b68
mov edx, dword [esi + 0xc]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 8]
add eax, 0xffffff92
push edx
push ecx
push eax
call fcn.00403570
mov edx, eax
mov edi, 0x46a1c4
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x64
jl 0x401b97
cmp eax, 0x65
jg 0x401b97
mov edx, dword [esi + 0x14]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 0x10]
push edx
mov edx, dword [esi + 0xc]
push ecx
mov ecx, dword [esi + 8]
push edx
push ecx
push eax
call fcn.004048e0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x82
jl 0x401bc2
cmp eax, 0x8e
jg 0x401bc2
mov ecx, dword [esi + 0xc]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 8]
push ecx
push edx
push eax
call fcn.00401c40
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x46a1b4]
mov dword [ebx], eax
mov ecx, dword [0x46a1b8]
mov dword [ebx + 4], ecx
mov edx, dword [0x46a1bc]
mov dword [ebx + 8], edx
mov ax, word [0x46a1c0]
mov word [ebx + 0xc], ax
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x14]
lea ecx, [esi + 0x18]
push ebx
push ecx
mov ecx, dword [esi + 0x10]
push edx
mov edx, dword [esi + 0xc]
push ecx
mov ecx, dword [esi + 8]
push edx
push ecx
push eax
call fcn.00405910
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0x14]
lea edx, [esi + 0x18]
push ebx
push edx
mov edx, dword [esi + 0x10]
push ecx
mov ecx, dword [esi + 0xc]
push edx
mov edx, dword [esi + 8]
push ecx
push edx
push eax
call fcn.00402950
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret