Function at 0x40fec0
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 0x40ff14
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], ecx
mov edx, dword [0x433338]
mov dword [ebx], edx
mov eax, dword [0x43333c]
mov dword [ebx + 4], eax
mov ecx, dword [0x433340]
mov dword [ebx + 8], ecx
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 1
jl 0x40ff22
cmp eax, 9
jle 0x410444
cmp eax, 0xa
jl 0x40ff49
cmp eax, 0x13
jg 0x40ff49
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.00411d90
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x5c
jl 0x40ff70
cmp eax, 0x5d
jg 0x40ff70
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.00411d90
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x14
jl 0x40ff97
cmp eax, 0x1d
jg 0x40ff97
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.00412380
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x1e
jl 0x40ffa1
cmp eax, 0x23
jle 0x40ffd2
cmp eax, 0x24
jl 0x40ffc8
cmp eax, 0x28
jg 0x40ffc8
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.00413510
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x29
jl 0x40ffef
cmp eax, 0x31
jg 0x40ffef
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.00413510
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x32
jl 0x40fff9
cmp eax, 0x3b
jle 0x410003
cmp eax, 0x6a
jl 0x410020
cmp eax, 0x6d
jg 0x410020
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.00412870
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x3c
jl 0x41004f
cmp eax, 0x3f
jg 0x41004f
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.004130b0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x40
jl 0x41007e
cmp eax, 0x42
jg 0x41007e
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.00413210
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x43
jl 0x4100ad
cmp eax, 0x45
jg 0x4100ad
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.00413370
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x46
jl 0x4100dc
cmp eax, 0x48
jg 0x4100dc
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.00411bb0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x4b
jl 0x41010b
cmp eax, 0x4d
jg 0x41010b
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.00411790
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x49
je 0x410444
cmp eax, 0x4a
je 0x410444
cmp eax, 0x4e
je 0x410444
cmp eax, 0x4f
je 0x410444
cmp eax, 0x50
jne 0x41015a
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.00413c80
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x51
jl 0x410189
cmp eax, 0x53
jg 0x410189
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.004119f0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x54
jl 0x41022c
cmp eax, 0x56
jg 0x41022c
mov edx, dword [0x97cfb8]
cmp byte [edx + 0x33d], 0x31
jne 0x410207
lea edi, [edx + 0x33a]
mov ecx, 0x4332e4
mov di, word [edi]
cmp di, word [ecx]
jne 0x410207
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 fcn.004196ac
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.00414130
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.00411550
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x57
jl 0x41025b
cmp eax, 0x59
jg 0x41025b
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.004113c0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x5a
je 0x410473
cmp eax, 0x61
je 0x410473
cmp eax, 0x5b
jne 0x410298
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.00413df0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x62
jne 0x4102c3
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.00414400
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x5e
je 0x41044e
cmp eax, 0x5f
je 0x41044e
cmp eax, 0x60
je 0x41044e
cmp eax, 0x62
jl 0x4102ec
cmp eax, 0x63
jle 0x410444
cmp eax, 0x66
jne 0x410325
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.00412fd0
mov ecx, 5
mov esi, 0x432fbb
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 0x410375
cmp eax, 0x77
jg 0x410375
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.00411d90
mov edx, eax
mov edi, 0x43332c
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 0x4103c7
cmp eax, 0x81
jg 0x4103c7
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.00411d90
mov edx, eax
mov edi, 0x433320
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 0x4103f6
cmp eax, 0x65
jg 0x4103f6
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.00412ef0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x82
jl 0x410421
cmp eax, 0x8e
jg 0x410421
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.004104a0
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x433310]
mov dword [ebx], eax
mov ecx, dword [0x433314]
mov dword [ebx + 4], ecx
mov edx, dword [0x433318]
mov dword [ebx + 8], edx
mov ax, word [0x43331c]
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.00413f10
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.00411190
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret