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

Disassembly:
mov edi, edi
push ebx
mov ebx, eax
movzx ecx, byte [ebx]
xor eax, eax
inc eax
cmp ecx, 0x2e
push edi
mov dl, 4
jg 0x54818a
je 0x548176
cmp ecx, 0x26
jg 0x5480f7
je 0x5480ef
cmp ecx, 0x21
jg 0x54809d
je 0x548085
cmp ecx, 9
jl 0x5481c1
cmp ecx, 0xa
jle 0x548060
cmp ecx, 0xb
jle 0x5481c1
cmp ecx, 0xd
jle 0x548060
cmp ecx, 0x20
jne 0x5481c1
movzx edx, byte [ebx + 1]
xor eax, eax
inc eax
mov ecx, eax
jmp 0x548070
inc ecx
movzx edx, byte [ecx + ebx]
test byte [edx + 0x665688], al
jne 0x54806b
mov dword [esi], 0x95
mov eax, ecx
jmp 0x5484e5
cmp byte [ebx + 1], 0x3d
push 2
pop eax
jne 0x5484df
mov dword [esi], 0x4b
jmp 0x5484e5
mov edx, ecx
sub edx, 0x22
je 0x5483c3
dec edx
je 0x5480be
dec edx
dec edx
jne 0x5481c1
mov dword [esi], 0x5a
jmp 0x548146
movzx edi, byte [ebx + 1]
mov dl, 4
mov ecx, eax
test byte [edi + 0x665688], dl
je 0x5484b5
inc ecx
movzx edi, byte [ecx + ebx]
test byte [edi + 0x665688], dl
jne 0x5480d2
cmp ecx, eax
jle 0x5484b5
mov dword [esi], 0x84
jmp 0x54807e
mov dword [esi], 0x52
jmp 0x548146
mov eax, ecx
sub eax, 0x27
je 0x5483c3
dec eax
je 0x54816e
dec eax
je 0x548166
dec eax
je 0x54815e
dec eax
je 0x548156
dec eax
je 0x54814e
dec eax
jne 0x5481c1
cmp byte [ebx + 1], 0x2d
jne 0x548140
movzx ecx, byte [ebx + 2]
push 2
pop eax
jmp 0x548131
cmp ecx, 0xa
je 0x548135
inc eax
movzx ecx, byte [eax + ebx]
test ecx, ecx
jne 0x548127
mov dword [esi], 0x95
jmp 0x5484e5
mov dword [esi], 0x57
xor eax, eax
inc eax
jmp 0x5484e5
mov dword [esi], 0x19
jmp 0x548146
mov dword [esi], 0x56
jmp 0x548146
mov dword [esi], 0x58
jmp 0x548146
mov dword [esi], 0x17
jmp 0x548146
mov dword [esi], 0x16
jmp 0x548146
movzx eax, byte [ebx + 1]
test byte [eax + 0x665688], dl
jne 0x5481d6
mov dword [esi], 0x76
jmp 0x548146
cmp ecx, 0x3f
jg 0x548364
je 0x548341
cmp ecx, 0x3b
jg 0x5482b6
je 0x5482ac
cmp ecx, 0x2f
je 0x54826e
jle 0x5481c1
cmp ecx, 0x39
jle 0x5481d6
cmp ecx, 0x3a
je 0x5484b5
test byte [ecx + 0x665688], 0x46
jne 0x548493
xor eax, eax
inc eax
jmp 0x5484df
mov dword [esi], 0x81
movzx ecx, byte [ebx]
xor eax, eax
jmp 0x5481e8
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x665688], dl
jne 0x5481e3
cmp byte [eax + ebx], 0x2e
jne 0x548209
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x665688], dl
jne 0x5481f6
mov dword [esi], 0x82
mov cl, byte [eax + ebx]
cmp cl, 0x65
je 0x548216
cmp cl, 0x45
jne 0x54825c
mov cl, byte [eax + ebx + 1]
movzx edi, cl
test byte [edi + 0x665688], dl
jne 0x54823c
cmp cl, 0x2b
je 0x54822f
cmp cl, 0x2d
jne 0x54825c
movzx ecx, byte [eax + ebx + 2]
test byte [ecx + 0x665688], dl
je 0x54825c
inc eax
inc eax
jmp 0x548241
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x665688], dl
jne 0x548240
mov dword [esi], 0x82
jmp 0x54825c
mov dword [esi], 0x94
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x665688], 0x46
jne 0x548255
jmp 0x5484e5
cmp byte [ebx + 1], 0x2a
jne 0x5482a1
mov cl, byte [ebx + 2]
test cl, cl
je 0x5482a1
push 3
pop eax
movzx ecx, cl
cmp ecx, 0x2a
jne 0x54828c
cmp byte [eax + ebx], 0x2f
je 0x54829b
movzx ecx, byte [eax + ebx]
test ecx, ecx
je 0x548135
inc eax
jmp 0x548281
inc eax
jmp 0x548135
mov dword [esi], 0x59
jmp 0x548146
xor eax, eax
inc eax
mov dword [esi], eax
jmp 0x5484e5
mov eax, ecx
sub eax, 0x3c
je 0x548305
dec eax
je 0x5482f0
dec eax
jne 0x5481c1
movzx eax, byte [ebx + 1]
cmp eax, 0x3d
jne 0x5482d8
mov dword [esi], 0x50
jmp 0x548314
cmp eax, 0x3e
jne 0x5482e5
mov dword [esi], 0x55
jmp 0x548314
mov dword [esi], 0x4d
jmp 0x548146
xor eax, eax
mov dword [esi], 0x4c
cmp byte [ebx + 1], 0x3d
sete al
inc eax
jmp 0x5484e5
movzx eax, byte [ebx + 1]
cmp eax, 0x3d
jne 0x54831c
mov dword [esi], 0x4e
push 2
pop eax
jmp 0x5484e5
cmp eax, 0x3e
jne 0x548329
mov dword [esi], 0x4b
jmp 0x548314
cmp eax, 0x3c
jne 0x548336
mov dword [esi], 0x54
jmp 0x548314
mov dword [esi], 0x4f
jmp 0x548146
xor eax, eax
mov dword [esi], 0x85
movzx ecx, byte [ebx + 1]
inc eax
mov dl, 4
jmp 0x548357
inc eax
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x665688], dl
jne 0x548352
jmp 0x5484e5
mov edx, ecx
sub edx, 0x40
je 0x5484b5
sub edx, 0x18
je 0x548432
sub edx, 3
je 0x548406
sub edx, 5
je 0x5483c3
sub edx, 0x18
je 0x548432
sub edx, 4
je 0x5483a7
dec edx
dec edx
jne 0x5481c1
mov dword [esi], 0x5d
jmp 0x548146
cmp byte [ebx + 1], 0x7c
je 0x5483b8
mov dword [esi], 0x53
jmp 0x548146
mov dword [esi], 0x5b
jmp 0x548314
movzx edx, byte [ebx + 1]
xor eax, eax
inc eax
jmp 0x5483df
cmp edx, ecx
jne 0x5483da
movzx edi, byte [ebx + eax + 1]
cmp edi, ecx
jne 0x5483e3
inc eax
inc eax
movzx edx, byte [eax + ebx]
test edx, edx
jne 0x5483cc
cmp edx, 0x27
jne 0x5483f3
mov dword [esi], 0x5e
jmp 0x5482ff
test edx, edx
je 0x5484df
mov dword [esi], 0x1a
jmp 0x5482ff
xor eax, eax
inc eax
jmp 0x548414
movzx ecx, byte [eax + ebx]
test ecx, ecx
je 0x548419
inc eax
cmp ecx, 0x5d
jne 0x54840b
xor edx, edx
cmp ecx, 0x5d
setne dl
dec edx
and edx, 0xffffff86
add edx, 0x94
mov dword [esi], edx
jmp 0x5484e5
cmp byte [ebx + 1], 0x27
jne 0x5481c1
push 2
mov dword [esi], 0x83
movzx ecx, byte [ebx + 2]
pop eax
jmp 0x548467
cmp ecx, 0x27
je 0x54846b
movzx ecx, cl
test byte [ecx + 0x665688], 8
jne 0x548462
mov dword [esi], 0x94
inc eax
movzx ecx, byte [eax + ebx]
test ecx, ecx
jne 0x54844b
mov edx, eax
and edx, 0x80000001
jns 0x54847a
dec edx
or edx, 0xfffffffe
inc edx
jne 0x548484
test ecx, ecx
jne 0x5482ff
mov dword [esi], 0x94
test ecx, ecx
je 0x5484e5
jmp 0x5482ff
movzx eax, byte [ebx + 1]
xor edi, edi
inc edi
jmp 0x5484a1
inc edi
movzx eax, byte [edi + ebx]
test byte [eax + 0x665688], 0x46
jne 0x54849c
call fcn.00547f90
mov dword [esi], eax
mov eax, edi
jmp 0x5484e5
mov dword [esi], 0x85
movzx ecx, byte [ebx + 1]
xor edx, edx
test ecx, ecx
je 0x5484df
movzx ecx, cl
test byte [ecx + 0x665688], 0x46
je 0x5484db
inc edx
inc eax
movzx ecx, byte [eax + ebx]
test ecx, ecx
jne 0x5484c5
test edx, edx
jne 0x5484e5
mov dword [esi], 0x94
pop edi
pop ebx
ret