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

Disassembly:
push ebx
mov ebx, eax
movzx ecx, byte [ebx]
push edi
mov dl, 4
cmp ecx, 0x2e
jg 0x1004b09a
je 0x1004b086
cmp ecx, 0x26
jg 0x1004b009
je 0x1004b001
cmp ecx, 0x22
jg 0x1004afab
je 0x1004b2e1
cmp ecx, 9
jl 0x1004b0d1
cmp ecx, 0xa
jle 0x1004af89
cmp ecx, 0xb
jle 0x1004b0d1
cmp ecx, 0xd
jle 0x1004af89
cmp ecx, 0x20
je 0x1004af89
cmp ecx, 0x21
jne 0x1004b0d1
cmp byte [ebx + 1], 0x3d
push 2
pop eax
jne 0x1004b43d
mov dword [esi], 0x4b
jmp 0x1004b443
movzx ecx, byte [ebx + 1]
xor eax, eax
inc eax
jmp 0x1004af97
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x10082cf0], 1
jne 0x1004af92
mov dword [esi], 0x95
jmp 0x1004b443
mov eax, ecx
sub eax, 0x23
je 0x1004afcb
dec eax
je 0x1004b3d2
dec eax
jne 0x1004b0d1
mov dword [esi], 0x5a
jmp 0x1004b056
movzx ecx, byte [ebx + 1]
xor eax, eax
mov dl, 4
inc eax
test byte [ecx + 0x10082cf0], dl
je 0x1004b3d2
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x10082cf0], dl
jne 0x1004afe0
cmp eax, 1
jle 0x1004b3d2
mov dword [esi], 0x84
jmp 0x1004b443
mov dword [esi], 0x52
jmp 0x1004b056
mov eax, ecx
sub eax, 0x27
je 0x1004b2e1
dec eax
je 0x1004b07e
dec eax
je 0x1004b076
dec eax
je 0x1004b06e
dec eax
je 0x1004b066
dec eax
je 0x1004b05e
dec eax
jne 0x1004b0d1
cmp byte [ebx + 1], 0x2d
jne 0x1004b050
movzx ecx, byte [ebx + 2]
push 2
pop eax
jmp 0x1004b047
cmp ecx, 0xa
je 0x1004afa0
inc eax
movzx ecx, byte [eax + ebx]
test ecx, ecx
jne 0x1004b039
jmp 0x1004afa0
mov dword [esi], 0x57
xor eax, eax
inc eax
jmp 0x1004b443
mov dword [esi], 0x19
jmp 0x1004b056
mov dword [esi], 0x56
jmp 0x1004b056
mov dword [esi], 0x58
jmp 0x1004b056
mov dword [esi], 0x17
jmp 0x1004b056
mov dword [esi], 0x16
jmp 0x1004b056
movzx eax, byte [ebx + 1]
test byte [eax + 0x10082cf0], dl
jne 0x1004b0e6
mov dword [esi], 0x76
jmp 0x1004b056
cmp ecx, 0x3f
jg 0x1004b282
je 0x1004b25f
cmp ecx, 0x3b
jg 0x1004b1d4
je 0x1004b1ca
cmp ecx, 0x2f
je 0x1004b18c
jle 0x1004b0d1
cmp ecx, 0x39
jle 0x1004b0e6
cmp ecx, 0x3a
je 0x1004b3d2
test byte [ecx + 0x10082cf0], 0x46
jne 0x1004b3b0
xor eax, eax
inc eax
jmp 0x1004b43d
mov dword [esi], 0x81
xor eax, eax
jmp 0x1004b0f5
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x10082cf0], dl
jne 0x1004b0f0
cmp byte [eax + ebx], 0x2e
jne 0x1004b116
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x10082cf0], dl
jne 0x1004b103
mov dword [esi], 0x82
mov cl, byte [eax + ebx]
cmp cl, 0x65
je 0x1004b123
cmp cl, 0x45
jne 0x1004b161
mov cl, byte [eax + ebx + 1]
movzx edi, cl
test byte [edi + 0x10082cf0], dl
jne 0x1004b149
cmp cl, 0x2b
je 0x1004b13c
cmp cl, 0x2d
jne 0x1004b161
movzx ecx, byte [eax + ebx + 2]
test byte [ecx + 0x10082cf0], dl
je 0x1004b161
add eax, 2
jmp 0x1004b14f
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x10082cf0], dl
jne 0x1004b14e
mov dword [esi], 0x82
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x10082cf0], 0x46
je 0x1004b443
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x10082cf0], 0x46
mov edx, 0x94
jne 0x1004b172
mov dword [esi], edx
jmp 0x1004b443
cmp byte [ebx + 1], 0x2a
jne 0x1004b1bf
mov cl, byte [ebx + 2]
test cl, cl
je 0x1004b1bf
push 3
pop eax
movzx ecx, cl
cmp ecx, 0x2a
jne 0x1004b1aa
cmp byte [eax + ebx], 0x2f
je 0x1004b1b9
movzx ecx, byte [eax + ebx]
test ecx, ecx
je 0x1004afa0
inc eax
jmp 0x1004b19f
inc eax
jmp 0x1004afa0
mov dword [esi], 0x59
jmp 0x1004b056
xor eax, eax
inc eax
mov dword [esi], eax
jmp 0x1004b443
mov eax, ecx
sub eax, 0x3c
je 0x1004b223
dec eax
je 0x1004b20e
dec eax
jne 0x1004b0d1
movzx eax, byte [ebx + 1]
cmp eax, 0x3d
jne 0x1004b1f6
mov dword [esi], 0x50
jmp 0x1004b232
cmp eax, 0x3e
jne 0x1004b203
mov dword [esi], 0x55
jmp 0x1004b232
mov dword [esi], 0x4d
jmp 0x1004b056
xor eax, eax
cmp byte [ebx + 1], 0x3d
mov dword [esi], 0x4c
sete al
inc eax
jmp 0x1004b443
movzx eax, byte [ebx + 1]
cmp eax, 0x3d
jne 0x1004b23a
mov dword [esi], 0x4e
push 2
pop eax
jmp 0x1004b443
cmp eax, 0x3e
jne 0x1004b247
mov dword [esi], 0x4b
jmp 0x1004b232
cmp eax, 0x3c
jne 0x1004b254
mov dword [esi], 0x54
jmp 0x1004b232
mov dword [esi], 0x4f
jmp 0x1004b056
movzx ecx, byte [ebx + 1]
xor eax, eax
mov dword [esi], 0x85
inc eax
mov dl, 4
jmp 0x1004b275
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x10082cf0], dl
jne 0x1004b270
jmp 0x1004b443
mov eax, ecx
sub eax, 0x40
je 0x1004b3d2
sub eax, 0x18
je 0x1004b34e
sub eax, 3
je 0x1004b324
sub eax, 5
je 0x1004b2e1
sub eax, 0x18
je 0x1004b34e
sub eax, 4
je 0x1004b2c5
dec eax
dec eax
jne 0x1004b0d1
mov dword [esi], 0x5d
jmp 0x1004b056
cmp byte [ebx + 1], 0x7c
je 0x1004b2d6
mov dword [esi], 0x53
jmp 0x1004b056
mov dword [esi], 0x5b
jmp 0x1004b232
movzx edx, byte [ebx + 1]
xor eax, eax
inc eax
jmp 0x1004b2fd
cmp edx, ecx
jne 0x1004b2f8
movzx edi, byte [ebx + eax + 1]
cmp edi, ecx
jne 0x1004b301
inc eax
inc eax
movzx edx, byte [eax + ebx]
test edx, edx
jne 0x1004b2ea
cmp edx, 0x27
jne 0x1004b311
mov dword [esi], 0x5e
jmp 0x1004b21d
test edx, edx
je 0x1004b43d
mov dword [esi], 0x1a
jmp 0x1004b21d
xor eax, eax
inc eax
jmp 0x1004b332
movzx ecx, byte [eax + ebx]
test ecx, ecx
je 0x1004b337
inc eax
cmp ecx, 0x5d
jne 0x1004b329
xor edx, edx
cmp ecx, 0x5d
setne dl
dec edx
and edx, 0xffffff86
add edx, 0x94
jmp 0x1004b185
cmp byte [ebx + 1], 0x27
jne 0x1004b0d1
movzx ecx, byte [ebx + 2]
push 2
mov dword [esi], 0x83
pop eax
mov edx, 0x94
jmp 0x1004b384
cmp ecx, 0x27
je 0x1004b388
movzx ecx, cl
test byte [ecx + 0x10082cf0], 8
jne 0x1004b37f
mov dword [esi], edx
inc eax
movzx ecx, byte [eax + ebx]
test ecx, ecx
jne 0x1004b36c
mov edi, eax
and edi, 0x80000001
jns 0x1004b397
dec edi
or edi, 0xfffffffe
inc edi
jne 0x1004b3a1
test ecx, ecx
jne 0x1004b21d
mov dword [esi], edx
test ecx, ecx
je 0x1004b443
jmp 0x1004b21d
movzx eax, byte [ebx + 1]
xor edi, edi
inc edi
jmp 0x1004b3be
inc edi
movzx eax, byte [edi + ebx]
test byte [eax + 0x10082cf0], 0x46
jne 0x1004b3b9
call fcn.1004ae9f
mov dword [esi], eax
mov eax, edi
jmp 0x1004b443
movzx ecx, byte [ebx + 1]
xor eax, eax
xor edx, edx
inc eax
mov dword [esi], 0x85
test ecx, ecx
je 0x1004b43d
movzx edi, cl
test byte [edi + 0x10082cf0], 0x46
je 0x1004b3f4
inc edx
jmp 0x1004b409
cmp ecx, 0x28
jne 0x1004b3fd
test edx, edx
jg 0x1004b414
cmp ecx, 0x3a
jne 0x1004b439
cmp byte [ebx + eax + 1], cl
jne 0x1004b439
inc eax
inc eax
movzx ecx, byte [eax + ebx]
test ecx, ecx
jne 0x1004b3e5
jmp 0x1004b439
inc eax
movzx ecx, byte [eax + ebx]
test ecx, ecx
je 0x1004b42b
test byte [ecx + 0x10082cf0], 1
jne 0x1004b42b
cmp ecx, 0x29
jne 0x1004b414
cmp ecx, 0x29
jne 0x1004b433
inc eax
jmp 0x1004b439
mov dword [esi], 0x94
test edx, edx
jne 0x1004b443
mov dword [esi], 0x94
pop edi
pop ebx
ret