Function at 0xab3cc0
Capabilities:
Parse credit card information

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x1c
mov eax, dword [esp + 0x30]
mov edx, dword [eax + 0x34]
mov ecx, dword [eax + 0x38]
mov edi, edx
shl edi, 4
add edi, 0x1254d20
movzx ebp, byte [edi + 9]
mov ebx, ebp
shr bl, 3
mov ebp, ebx
and ebp, 0xf
mov ebx, ebp
cmp bl, 0xf
je 0xab3de7
lea esi, [ebp + 8]
and esi, 0xf
mov ebx, esi
cmp bl, 1
jbe 0xab4030
lea ebx, [edx - 0x19]
cmp ebx, 1
mov dword [eax + 0x5a14], 0xaa2c10
mov dword [eax + 0x5a18], 0xaa2b70
jbe 0xab3e20
mov ebx, dword [eax + 0x8ec]
test bh, 0x20
je 0xab3d44
cmp edx, 0x1e
jbe 0xab3dd7
mov edi, dword [eax + 0x5a28]
test edi, edi
jne case.0xab3dc0.0
cmp edx, 0x44
jbe 0xab3db7
cmp edx, 0x20
jbe switch.0x00ab3db0
cmp ecx, 0x58
mov dword [eax + 0x5a34], 0
ja case.0xab3d5d.0
jmp dword [ecx*4 + 0x1253878]
mov dword [eax + 0x5a34], 0xab0ef0
nop
mov edi, dword [eax + 0x4c]
test edi, edi
je 0xab3da0
cmp ecx, 0x52
jbe 0xab3dc7
cmp ecx, 0x58
mov dword [eax + 0x5a2c], 0
mov dword [eax + 0x5a30], 0
ja case.0xab3d99.0
jmp dword [ecx*4 + 0x12539dc]
cmp ecx, 0x44
ja case.0xab3da5.0
jmp dword [ecx*4 + 0x1253b40]
jmp dword [edx*4 + 0x1253c54]
mov esi, esi
lea edi, [edi]
jmp dword [edx*4 + 0x1253cd8]
mov esi, esi
lea edi, [edi]
jmp dword [ecx*4 + 0x1253dec]
mov esi, esi
lea edi, [edi]
jmp dword [edx*4 + 0x1253f38]
movzx ebx, byte [edi + 7]
mov esi, 0xaa29d0
mov edi, ebx
mov ebx, 0xaa2ac0
and edi, 1
mov edi, 0xaa2a80
cmove esi, ebx
mov ebx, 0xaa2980
cmove ebx, edi
mov dword [eax + 0x5a18], esi
mov dword [eax + 0x5a14], ebx
jmp 0xab3d26
mov dword [eax + 0x5a1c], 0xaa2c70
jmp 0xab3d26
mov dword [eax + 0x5a20], 0xaa4200
mov dword [eax + 0x5a24], 0xaa40f0
mov dword [eax + 0x5a28], 0xaa3f20
jmp case.0xab3db0.0
mov dword [eax + 0x5a20], 0xaa39d0
mov dword [eax + 0x5a24], 0xaa3800
mov dword [eax + 0x5a28], 0xaa3680
jmp case.0xab3db0.0
mov dword [eax + 0x5a20], 0xaa3540
mov dword [eax + 0x5a24], 0xaa3370
mov dword [eax + 0x5a28], 0xaa31f0
jmp case.0xab3db0.0
mov dword [eax + 0x5a20], 0xaa3df0
mov dword [eax + 0x5a24], 0xaa3ce0
mov dword [eax + 0x5a28], 0xaa3b10
jmp case.0xab3db0.0
mov dword [eax + 0x5a20], 0xaa2fc0
mov dword [eax + 0x5a24], 0xaa2f40
mov dword [eax + 0x5a28], 0xaa2e40
jmp case.0xab3db0.0
mov dword [eax + 0x5a20], 0xaa31a0
mov dword [eax + 0x5a24], 0xaa3110
mov dword [eax + 0x5a28], 0xaa3000
jmp case.0xab3db0.0
mov dword [eax + 0x5a3c], 0xab15e0
jmp case.0xab3d5d.0
mov dword [eax + 0x5a3c], 0xab1540
jmp case.0xab3d5d.0
mov dword [eax + 0x5a34], 0xab1020
jmp case.0xab3d5d.0
mov dword [eax + 0x5a34], 0xab1060
jmp case.0xab3d5d.0
mov dword [eax + 0x5a34], 0xab0f60
jmp case.0xab3d5d.0
mov dword [eax + 0x5a3c], 0xab14a0
jmp case.0xab3d5d.0
mov dword [eax + 0x5a34], 0xab0c20
jmp case.0xab3d5d.0
mov dword [eax + 0x5a34], 0xab0fe0
jmp case.0xab3d5d.0
mov edi, dword [eax + 0x884]
mov esi, 0xaac0c0
test edi, edi
mov edi, 0xaac940
cmove esi, edi
mov dword [eax + 0x5a28], esi
jmp case.0xab3dc0.0
mov ebp, dword [eax + 0x884]
mov esi, 0xaac2e0
mov edi, 0xaacb10
test ebp, ebp
cmove esi, edi
mov dword [eax + 0x5a28], esi
jmp case.0xab3dc0.0
mov edi, dword [eax + 0x884]
mov esi, 0xaac500
test edi, edi
mov edi, 0xaacce0
cmove esi, edi
mov dword [eax + 0x5a28], esi
jmp case.0xab3dc0.0
mov ebp, dword [eax + 0x884]
mov esi, 0xaac720
mov edi, 0xaaceb0
test ebp, ebp
cmove esi, edi
mov dword [eax + 0x5a28], esi
jmp case.0xab3dc0.0
mov dword [eax + 0x5a28], 0xaad080
jmp case.0xab3dc0.0
mov dword [eax + 0x5a28], 0xaad250
jmp case.0xab3dc0.0
mov ebx, ebp
cmp bl, 8
movzx ebx, byte [edi + 7]
je 0xab4070
mov edi, ebx
mov esi, 0xaa2820
and edi, 1
mov ebx, 0xaa28f0
cmove esi, ebx
mov edi, 0xaa28b0
mov ebx, 0xaa27d0
cmove ebx, edi
mov dword [eax + 0x5a18], esi
mov dword [eax + 0x5a14], ebx
jmp 0xab3d26
mov edi, ebx
mov esi, 0xaa2670
and edi, 1
mov ebx, 0xaa2740
cmove esi, ebx
mov edi, 0xaa2700
mov ebx, 0xaa2620
cmove ebx, edi
mov dword [eax + 0x5a18], esi
mov dword [eax + 0x5a14], ebx
jmp 0xab3d26
mov dword [eax + 0x5a20], 0xaa91f0
mov dword [eax + 0x5a24], 0xaa9070
mov dword [eax + 0x5a28], 0xaa8ec0
jmp case.0xab3db0.0
mov dword [eax + 0x5a20], 0xaa9700
mov dword [eax + 0x5a24], 0xaa9590
mov dword [eax + 0x5a28], 0xaa93e0
jmp case.0xab3db0.0
mov esi, dword [eax + 0x884]
test esi, esi
je 0xab4a70
mov dword [eax + 0x5a20], 0xaa82f0
mov dword [eax + 0x5a24], 0xaa8120
mov dword [eax + 0x5a28], 0xaa7ec0
jmp case.0xab3dc0.0
mov dword [eax + 0x5a20], 0xaa4a70
mov dword [eax + 0x5a24], 0xaa46d0
mov dword [eax + 0x5a28], 0xaa4330
jmp case.0xab3db0.0
mov dword [eax + 0x5a20], 0xaaa3d0
mov dword [eax + 0x5a24], 0xaaa200
mov dword [eax + 0x5a28], 0xaaa000
jmp case.0xab3dc0.0
mov dword [eax + 0x5a20], 0xaaaa50
mov dword [eax + 0x5a24], 0xaaa880
mov dword [eax + 0x5a28], 0xaaa680
jmp case.0xab3dc0.0
mov dword [eax + 0x5a20], 0xaa64f0
mov dword [eax + 0x5a24], 0xaa6150
mov dword [eax + 0x5a28], 0xaa5db0
jmp case.0xab3db0.0
mov dword [eax + 0x5a20], 0xaa7250
mov dword [eax + 0x5a24], 0xaa6eb0
mov dword [eax + 0x5a28], 0xaa6b10
jmp case.0xab3db0.0
mov dword [eax + 0x5a20], 0xaab0f0
mov dword [eax + 0x5a24], 0xaaaf20
mov dword [eax + 0x5a28], 0xaaad10
jmp case.0xab3dc0.0
mov dword [eax + 0x5a20], 0xaab750
mov dword [eax + 0x5a24], 0xaab590
mov dword [eax + 0x5a28], 0xaab380
jmp case.0xab3dc0.0
mov dword [eax + 0x5a20], 0xaabdf0
mov dword [eax + 0x5a24], 0xaabc10
mov dword [eax + 0x5a28], 0xaab9f0
jmp case.0xab3dc0.0
mov ebp, dword [eax + 0x884]
test ebp, ebp
je 0xab4a93
mov dword [eax + 0x5a20], 0xaa7c80
mov dword [eax + 0x5a24], 0xaa7ab0
mov dword [eax + 0x5a28], 0xaa7870
jmp case.0xab3dc0.0
mov dword [eax + 0x5a20], 0xaa57b0
mov dword [eax + 0x5a24], 0xaa5410
mov dword [eax + 0x5a28], 0xaa5070
jmp case.0xab3db0.0
mov dword [eax + 0x5a20], 0xaa9d10
mov dword [eax + 0x5a24], 0xaa9b10
mov dword [eax + 0x5a28], 0xaa9900
jmp case.0xab3dc0.0
mov dword [eax + 0x5a34], 0xaadd70
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaadcc0
nop
mov esi, dword [eax + 0x884]
test esi, esi
je case.0xab42f2.12
lea esi, [ecx - 0xb]
cmp esi, 0x37
ja case.0xab42f2.12
jmp dword [esi*4 + 0x1253fb4]
mov dword [eax + 0x5a30], 0xab0b70
lea esi, [esi]
cmp dword [eax + 0x48], 8
mov esi, dword [eax + 0x44]
je 0xab44e0
mov ebx, 0xab18a0
cmp esi, 0xa
mov edi, 0xab1690
cmovg ebx, edi
mov dword [eax + 0x5a4c], ebx
mov dword [eax + 0x5a48], ebx
mov ebx, dword [eax + 0x2920]
cmp ebx, dword [eax + 0x2924]
je 0xab4472
lea edi, [edx - 0x29]
cmp edi, 1
jbe 0xab4472
cmp edx, 0x123
je 0xab4472
cmp edx, 0x124
je 0xab4472
cmp edx, 0x1e
je 0xab4472
cmp edx, 0x1d
je 0xab4472
cmp edx, 2
je 0xab4472
cmp edx, 0x2b
je 0xab4472
cmp edx, 0x2c
je 0xab4472
cmp edx, 0x2d
nop
je 0xab4472
cmp edx, 0x2e
je 0xab4472
cmp edx, 0x3f
je 0xab4472
cmp edx, 0x3e
je 0xab4472
cmp edx, 0x16
je 0xab4472
cmp edx, 0x17
je 0xab4472
cmp edx, 0x18
je 0xab4472
cmp edx, 0xa
nop
je 0xab4472
cmp edx, 9
je 0xab4472
lea edi, [edx - 0x43]
cmp edi, 1
jbe 0xab4472
cmp edx, 0x125
je 0xab4472
cmp edx, 0x126
je 0xab4472
cmp edx, 0x1c
je 0xab4472
cmp edx, 0x1b
je 0xab4472
cmp edx, 3
je 0xab4472
cmp edx, 0x2f
je 0xab4472
cmp edx, 0x30
nop
je 0xab4472
cmp edx, 0x31
je 0xab4472
cmp edx, 0x32
je 0xab4472
cmp edx, 0x41
nop
je 0xab4472
cmp edx, 0x40
je 0xab4472
cmp edx, 0x13
je 0xab4472
cmp edx, 0x14
nop
je 0xab4472
cmp edx, 0x15
je 0xab4472
cmp edx, 0x52
je 0xab4472
cmp esi, 0xa
nop
jg 0xab4acf
test ebx, ebx
je 0xab4ab6
mov dword [eax + 0x5a50], 0xab1cf0
mov dword [eax + 0x5a54], 0xab1c50
cmp ecx, 0x42
je 0xab44b1
cmp ecx, 8
je 0xab44b1
cmp ecx, 0x20
je 0xab44b1
cmp ecx, 0x1f
je 0xab44b1
cmp edx, 0x42
je 0xab44b1
cmp edx, 8
nop
je 0xab44b1
cmp edx, 0x1f
je 0xab44b1
cmp edx, 0x20
je 0xab44b1
cmp ecx, 9
nop
je 0xab44b1
cmp ecx, 0xa
je 0xab44b1
mov dword [eax + 0x5a58], 1
mov dword [esp], eax
call fcn.00ac2e20
add esp, 0x1c
mov eax, 0xab2020
pop ebx
pop esi
pop edi
pop ebp
ret
cmp dword [eax + 0x48], 8
mov dword [eax + 0x5a30], 0xab0fb0
mov esi, dword [eax + 0x44]
jne 0xab431d
lea esi, [esi]
cmp esi, 0xa
jg 0xab4a57
and ebx, 1
mov dword [eax + 0x5a4c], 0xab1ab0
mov dword [eax + 0x5a48], 0xab1ab0
je 0xab4339
mov dword [eax + 0x5a40], 0xab1e50
mov dword [eax + 0x5a44], 0xab1f10
jmp 0xab4339
mov dword [eax + 0x5a30], 0xab0b40
jmp case.0xab42f2.12
mov dword [eax + 0x5a30], 0xab0ba0
jmp case.0xab42f2.12
mov dword [eax + 0x5a34], 0xab1250
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xab1200
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xab10f0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xab10a0
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaae4e0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaae480
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaae340
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaae2e0
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaae1a0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaae140
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaae000
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaadfa0
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaad7b0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaad700
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaad4d0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaad420
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xab0230
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xab0180
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaaeff0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaaef40
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xab0530
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xab0480
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaaf2f0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaaf240
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaaf910
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaaf860
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaae6d0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaae620
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaafc10
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaafb60
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaae9d0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaae920
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaaf600
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaaf550
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xab0840
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xab0790
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaaece0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaaec30
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaaff20
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaafe70
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaada90
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a2c], 0xaad9e0
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaae570
jmp 0xab4590
mov dword [eax + 0x5a34], 0xaae3d0
jmp 0xab45ba
mov dword [eax + 0x5a34], 0xaae230
jmp 0xab45dd
mov dword [eax + 0x5a34], 0xaafd20
jmp 0xab4750
mov dword [eax + 0x5a34], 0xaaeae0
jmp 0xab477a
mov dword [eax + 0x5a34], 0xaaf710
jmp 0xab479d
mov dword [eax + 0x5a34], 0xab0950
jmp 0xab47c0
mov dword [eax + 0x5a34], 0xaae090
jmp 0xab4600
mov dword [eax + 0x5a34], 0xaad8c0
jmp 0xab462a
mov dword [eax + 0x5a34], 0xaad5e0
jmp 0xab464d
mov dword [eax + 0x5a34], 0xab0340
jmp 0xab4670
mov dword [eax + 0x5a34], 0xaaf100
jmp 0xab469a
mov dword [eax + 0x5a34], 0xab12d0
jmp 0xab454a
mov dword [eax + 0x5a34], 0xab1170
jmp 0xab456d
mov dword [eax + 0x5a34], 0xab0aa0
mov dword [eax + 0x5a2c], 0
mov dword [eax + 0x5a30], 0
mov dword [eax + 0x5a38], 0xab1360
jmp case.0xab3d99.0
mov dword [eax + 0x5a34], 0xaaedf0
jmp 0xab47ea
mov dword [eax + 0x5a34], 0xab0030
jmp 0xab480d
mov dword [eax + 0x5a34], 0xaade80
jmp 0xab42ca
mov dword [eax + 0x5a34], 0xaadba0
jmp 0xab4830
mov dword [eax + 0x5a34], 0xab0640
jmp 0xab46bd
mov dword [eax + 0x5a34], 0xaaf400
jmp 0xab46e0
mov dword [eax + 0x5a34], 0xaafa20
jmp 0xab470a
mov dword [eax + 0x5a34], 0xaae7e0
jmp 0xab472d
mov dword [eax + 0x5a2c], 0xab0ec0
jmp case.0xab3d99.0
mov dword [eax + 0x5a2c], 0xab0fb0
jmp case.0xab3d99.0
mov dword [eax + 0x5a2c], 0xab0be0
jmp case.0xab3d99.0
mov dword [eax + 0x5a2c], 0xab0da0
jmp case.0xab3d99.0
mov dword [eax + 0x5a2c], 0xab0c70
jmp case.0xab3d99.0
mov dword [eax + 0x5a38], 0xab13c0
jmp case.0xab3d99.0
mov dword [eax + 0x5a38], 0xab1420
jmp case.0xab3d99.0
mov dword [eax + 0x5a2c], 0xab0f30
jmp case.0xab3d99.0
mov dword [eax + 0x5a4c], 0xab1b40
mov dword [eax + 0x5a48], 0xab1b40
jmp 0xab4339
mov dword [eax + 0x5a20], 0xaa8cf0
mov dword [eax + 0x5a24], 0xaa8b80
mov dword [eax + 0x5a28], 0xaa89f0
jmp case.0xab3dc0.0
mov dword [eax + 0x5a20], 0xaa8820
mov dword [eax + 0x5a24], 0xaa86b0
mov dword [eax + 0x5a28], 0xaa8520
jmp case.0xab3dc0.0
mov dword [eax + 0x5a50], 0xab1ca0
mov dword [eax + 0x5a54], 0xab1bd0
jmp 0xab4472
test ebx, ebx
je 0xab4aec
mov dword [eax + 0x5a50], 0xab1e20
mov dword [eax + 0x5a54], 0xab1d90
jmp 0xab4472
mov dword [eax + 0x5a50], 0xab1de0
mov dword [eax + 0x5a54], 0xab1d20
jmp 0xab4472