Function at 0xa84f30
Capabilities:
Parse credit card information

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x1c
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0x34]
mov edx, dword [eax + 0x38]
mov edi, ecx
shl edi, 4
add edi, 0x1133f80
movzx ebp, byte [edi + 9]
mov ebx, ebp
shr bl, 3
mov ebp, ebx
and ebp, 0xf
mov ebx, ebp
cmp bl, 0xf
je 0xa85067
lea esi, [ebp + 8]
and esi, 0xf
mov ebx, esi
cmp bl, 1
jbe 0xa85410
lea ebx, [ecx - 0x19]
cmp ebx, 1
mov dword [eax + 0x4a14], 0xa74560
mov dword [eax + 0x4a18], 0xa744c0
jbe 0xa850a0
mov ebx, dword [eax + 0x8ec]
test bh, 0x20
je 0xa84fb4
cmp ecx, 0x1e
jbe 0xa85047
mov edi, dword [eax + 0x4a28]
test edi, edi
jne case.0xa85040.0
cmp ecx, 0x44
jbe switch.0x00a85040
cmp edx, 0x58
mov dword [eax + 0x4a34], 0
ja case.0xa84fcc.0
jmp dword [edx*4 + 0x1132b68]
mov dword [eax + 0x4a34], 0xa820f0
lea esi, [esi]
mov edi, dword [eax + 0x4c]
test edi, edi
je 0xa85031
cmp edx, 0x52
jbe 0xa85057
cmp edx, 0x58
mov dword [eax + 0x4a2c], 0
mov dword [eax + 0x4a30], 0
jbe switch.0x00a854a0
lea esi, [esi]
mov esi, dword [eax + 0x884]
test esi, esi
je case.0xa8502a.12
lea esi, [edx - 0xb]
cmp esi, 0x37
ja case.0xa8502a.12
jmp dword [esi*4 + 0x1132ccc]
cmp edx, 0x44
ja case.0xa85036.0
jmp dword [edx*4 + 0x1132dac]
jmp dword [ecx*4 + 0x1132ec0]
mov esi, esi
lea edi, [edi]
jmp dword [ecx*4 + 0x1132fd4]
mov esi, esi
lea edi, [edi]
jmp dword [edx*4 + 0x1133050]
movzx ebx, byte [edi + 7]
mov esi, 0xa74320
mov edi, ebx
mov ebx, 0xa74410
and edi, 1
mov edi, 0xa743d0
cmove esi, ebx
mov ebx, 0xa742d0
cmove ebx, edi
mov dword [eax + 0x4a18], esi
mov dword [eax + 0x4a14], ebx
jmp 0xa84f96
mov dword [eax + 0x4a1c], 0xa745c0
jmp 0xa84f96
mov dword [eax + 0x4a34], 0xa81e20
jmp case.0xa84fcc.0
mov dword [eax + 0x4a34], 0xa821e0
jmp case.0xa84fcc.0
mov dword [eax + 0x4a34], 0xa82220
jmp case.0xa84fcc.0
mov dword [eax + 0x4a34], 0xa82260
jmp case.0xa84fcc.0
mov dword [eax + 0x4a34], 0xa82160
jmp case.0xa84fcc.0
mov dword [eax + 0x4a3c], 0xa82690
jmp case.0xa84fcc.0
mov dword [eax + 0x4a3c], 0xa827d0
jmp case.0xa84fcc.0
mov dword [eax + 0x4a3c], 0xa82730
jmp case.0xa84fcc.0
mov edi, dword [eax + 0x884]
mov esi, 0xa7df40
test edi, edi
mov edi, 0xa7e7c0
cmove esi, edi
mov dword [eax + 0x4a28], esi
jmp case.0xa85040.0
mov ebp, dword [eax + 0x884]
mov esi, 0xa7e160
mov edi, 0xa7e990
test ebp, ebp
cmove esi, edi
mov dword [eax + 0x4a28], esi
jmp case.0xa85040.0
mov edi, dword [eax + 0x884]
mov esi, 0xa7e380
test edi, edi
mov edi, 0xa7eb60
cmove esi, edi
mov dword [eax + 0x4a28], esi
jmp case.0xa85040.0
mov ebp, dword [eax + 0x884]
mov esi, 0xa7e5a0
mov edi, 0xa7ed30
test ebp, ebp
cmove esi, edi
mov dword [eax + 0x4a28], esi
jmp case.0xa85040.0
mov dword [eax + 0x4a28], 0xa7ef00
jmp case.0xa85040.0
mov dword [eax + 0x4a28], 0xa7f0d0
jmp case.0xa85040.0
mov dword [eax + 0x4a30], 0xa81d70
lea esi, [esi]
cmp dword [eax + 0x48], 8
mov esi, dword [eax + 0x44]
je 0xa853b0
mov ebx, 0xa82a90
cmp esi, 0xa
mov edi, 0xa82880
cmovg ebx, edi
mov dword [eax + 0x4a4c], ebx
mov dword [eax + 0x4a48], ebx
mov ebx, dword [eax + 0x1920]
cmp ebx, dword [eax + 0x1924]
je 0xa85342
lea edi, [ecx - 0x29]
cmp edi, 1
jbe 0xa85342
cmp ecx, 0x123
je 0xa85342
cmp ecx, 0x124
je 0xa85342
cmp ecx, 0x1e
je 0xa85342
cmp ecx, 0x1d
je 0xa85342
cmp ecx, 2
je 0xa85342
cmp ecx, 0x2b
je 0xa85342
cmp ecx, 0x2c
je 0xa85342
cmp ecx, 0x2d
nop
je 0xa85342
cmp ecx, 0x2e
je 0xa85342
cmp ecx, 0x3f
je 0xa85342
cmp ecx, 0x3e
je 0xa85342
cmp ecx, 0x16
je 0xa85342
cmp ecx, 0x17
je 0xa85342
cmp ecx, 0x18
je 0xa85342
cmp ecx, 0xa
nop
je 0xa85342
cmp ecx, 9
je 0xa85342
lea edi, [ecx - 0x43]
cmp edi, 1
jbe 0xa85342
cmp ecx, 0x125
je 0xa85342
cmp ecx, 0x126
je 0xa85342
cmp ecx, 0x1c
je 0xa85342
cmp ecx, 0x1b
je 0xa85342
cmp ecx, 3
je 0xa85342
cmp ecx, 0x2f
je 0xa85342
cmp ecx, 0x30
nop
je 0xa85342
cmp ecx, 0x31
je 0xa85342
cmp ecx, 0x32
je 0xa85342
cmp ecx, 0x41
nop
je 0xa85342
cmp ecx, 0x40
je 0xa85342
cmp ecx, 0x13
je 0xa85342
cmp ecx, 0x14
nop
je 0xa85342
cmp ecx, 0x15
je 0xa85342
cmp ecx, 0x52
je 0xa85342
cmp esi, 0xa
nop
jg 0xa85c66
test ebx, ebx
je 0xa85c4d
mov dword [eax + 0x4a50], 0xa82ee0
mov dword [eax + 0x4a54], 0xa82e40
cmp edx, 0x42
je 0xa85381
cmp edx, 8
je 0xa85381
cmp edx, 0x20
je 0xa85381
cmp edx, 0x1f
je 0xa85381
cmp ecx, 0x42
je 0xa85381
cmp ecx, 8
nop
je 0xa85381
cmp ecx, 0x1f
je 0xa85381
cmp ecx, 0x20
je 0xa85381
cmp edx, 9
nop
je 0xa85381
cmp edx, 0xa
je 0xa85381
mov dword [eax + 0x4a58], 1
mov dword [esp], eax
call fcn.00a94180
add esp, 0x1c
mov eax, 0xa83210
pop ebx
pop esi
pop edi
pop ebp
ret
cmp dword [eax + 0x48], 8
mov dword [eax + 0x4a30], 0xa821b0
mov esi, dword [eax + 0x44]
jne 0xa851ed
lea esi, [esi]
cmp esi, 0xa
jg 0xa85450
and ebx, 1
mov dword [eax + 0x4a4c], 0xa82ca0
mov dword [eax + 0x4a48], 0xa82ca0
je 0xa85209
mov dword [eax + 0x4a40], 0xa83040
mov dword [eax + 0x4a44], 0xa83100
jmp 0xa85209
mov dword [eax + 0x4a30], 0xa81d40
jmp case.0xa8502a.12
mov dword [eax + 0x4a30], 0xa81da0
jmp case.0xa8502a.12
mov ebx, ebp
cmp bl, 8
movzx ebx, byte [edi + 7]
je 0xa85470
mov edi, ebx
mov esi, 0xa74170
and edi, 1
mov ebx, 0xa74240
cmove esi, ebx
mov edi, 0xa74200
mov ebx, 0xa74120
cmove ebx, edi
mov dword [eax + 0x4a18], esi
mov dword [eax + 0x4a14], ebx
jmp 0xa84f96
mov dword [eax + 0x4a4c], 0xa82d30
mov dword [eax + 0x4a48], 0xa82d30
jmp 0xa85209
mov edi, ebx
mov esi, 0xa73fc0
and edi, 1
mov ebx, 0xa74090
cmove esi, ebx
mov edi, 0xa74050
mov ebx, 0xa73f70
cmove ebx, edi
mov dword [eax + 0x4a18], esi
mov dword [eax + 0x4a14], ebx
jmp 0xa84f96
jmp dword [edx*4 + 0x113319c]
mov dword [eax + 0x4a20], 0xa752f0
mov dword [eax + 0x4a24], 0xa75120
mov dword [eax + 0x4a28], 0xa74fa0
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa7cea0
mov dword [eax + 0x4a24], 0xa7ccd0
mov dword [eax + 0x4a28], 0xa7ca50
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa7d570
mov dword [eax + 0x4a24], 0xa7d3a0
mov dword [eax + 0x4a28], 0xa7d120
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa7dc80
mov dword [eax + 0x4a24], 0xa7daa0
mov dword [eax + 0x4a28], 0xa7d810
jmp case.0xa85040.0
mov ebp, dword [eax + 0x884]
test ebp, ebp
je 0xa85c07
mov dword [eax + 0x4a20], 0xa795f0
mov dword [eax + 0x4a24], 0xa79420
mov dword [eax + 0x4a28], 0xa79130
jmp case.0xa85040.0
mov esi, dword [eax + 0x884]
test esi, esi
je 0xa85c2a
mov dword [eax + 0x4a20], 0xa79d00
mov dword [eax + 0x4a24], 0xa79b30
mov dword [eax + 0x4a28], 0xa79830
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa75b20
mov dword [eax + 0x4a24], 0xa75a10
mov dword [eax + 0x4a28], 0xa75840
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa7c0a0
mov dword [eax + 0x4a24], 0xa7bed0
mov dword [eax + 0x4a28], 0xa7bc50
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa7c7a0
mov dword [eax + 0x4a24], 0xa7c5d0
mov dword [eax + 0x4a28], 0xa7c350
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa77dd0
mov dword [eax + 0x4a24], 0xa77a50
mov dword [eax + 0x4a28], 0xa776b0
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa78b10
mov dword [eax + 0x4a24], 0xa78790
mov dword [eax + 0x4a28], 0xa783f0
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa75710
mov dword [eax + 0x4a24], 0xa75600
mov dword [eax + 0x4a28], 0xa75430
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa7ad70
mov dword [eax + 0x4a24], 0xa7ac00
mov dword [eax + 0x4a28], 0xa7a9d0
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa7b300
mov dword [eax + 0x4a24], 0xa7b190
mov dword [eax + 0x4a28], 0xa7af60
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa74e60
mov dword [eax + 0x4a24], 0xa74c90
mov dword [eax + 0x4a28], 0xa74b10
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa74900
mov dword [eax + 0x4a24], 0xa74880
mov dword [eax + 0x4a28], 0xa74790
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa76380
mov dword [eax + 0x4a24], 0xa75ff0
mov dword [eax + 0x4a28], 0xa75c50
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa770b0
mov dword [eax + 0x4a24], 0xa76d20
mov dword [eax + 0x4a28], 0xa76980
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa7b970
mov dword [eax + 0x4a24], 0xa7b780
mov dword [eax + 0x4a28], 0xa7b4f0
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa74ac0
mov dword [eax + 0x4a24], 0xa74a30
mov dword [eax + 0x4a28], 0xa74940
jmp case.0xa85040.0
mov dword [eax + 0x4a34], 0xa80320
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa802c0
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa80180
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa80120
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa7ffe0
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa7ff80
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa7fe40
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa7fde0
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa7f620
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa7f570
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa7f350
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa7f2a0
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa81740
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa81690
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa80b20
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa80a70
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa81a40
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa81990
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa80e20
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa80d70
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa81130
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa81080
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa80510
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa80460
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa81430
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa81380
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa80810
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa80760
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa7fbc0
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa7fb10
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa7f8f0
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa7f840
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa82450
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa82400
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa822f0
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a2c], 0xa822a0
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa80c30
jmp 0xa858ba
mov dword [eax + 0x4a34], 0xa81b50
jmp 0xa858dd
mov dword [eax + 0x4a34], 0xa80f30
jmp 0xa85900
mov dword [eax + 0x4a34], 0xa81240
jmp 0xa8592a
mov dword [eax + 0x4a34], 0xa80620
jmp 0xa8594d
mov dword [eax + 0x4a34], 0xa81540
jmp 0xa85970
mov dword [eax + 0x4a34], 0xa80920
jmp 0xa8599a
mov dword [eax + 0x4a34], 0xa824d0
jmp 0xa85a0a
mov dword [eax + 0x4a34], 0xa7fa00
jmp 0xa859e0
mov dword [eax + 0x4a34], 0xa81ca0
mov dword [eax + 0x4a2c], 0
mov dword [eax + 0x4a30], 0
mov dword [eax + 0x4a38], 0xa82560
jmp case.0xa854a0.0
mov dword [eax + 0x4a34], 0xa81850
jmp 0xa85890
mov dword [eax + 0x4a34], 0xa82370
jmp 0xa85a2d
mov dword [eax + 0x4a34], 0xa803b0
jmp 0xa857b0
mov dword [eax + 0x4a34], 0xa80210
jmp 0xa857da
mov dword [eax + 0x4a34], 0xa80070
jmp 0xa857fd
mov dword [eax + 0x4a34], 0xa7fed0
jmp 0xa85820
mov dword [eax + 0x4a34], 0xa7f730
jmp 0xa8584a
mov dword [eax + 0x4a34], 0xa7f460
jmp 0xa8586d
mov dword [eax + 0x4a34], 0xa7fcd0
jmp 0xa859bd
mov dword [eax + 0x4a38], 0xa82620
jmp case.0xa854a0.0
mov dword [eax + 0x4a38], 0xa825c0
jmp case.0xa854a0.0
mov dword [eax + 0x4a2c], 0xa821b0
jmp case.0xa854a0.0
mov dword [eax + 0x4a2c], 0xa82130
jmp case.0xa854a0.0
mov dword [eax + 0x4a2c], 0xa820c0
jmp case.0xa854a0.0
mov dword [eax + 0x4a2c], 0xa81e70
jmp case.0xa854a0.0
mov dword [eax + 0x4a2c], 0xa81de0
jmp case.0xa854a0.0
mov dword [eax + 0x4a2c], 0xa81fa0
jmp case.0xa854a0.0
mov dword [eax + 0x4a20], 0xa7a2b0
mov dword [eax + 0x4a24], 0xa7a140
mov dword [eax + 0x4a28], 0xa79f30
jmp case.0xa85040.0
mov dword [eax + 0x4a20], 0xa7a800
mov dword [eax + 0x4a24], 0xa7a690
mov dword [eax + 0x4a28], 0xa7a480
jmp case.0xa85040.0
mov dword [eax + 0x4a50], 0xa82e90
mov dword [eax + 0x4a54], 0xa82dc0
jmp 0xa85342
test ebx, ebx
je 0xa85c83
mov dword [eax + 0x4a50], 0xa83010
mov dword [eax + 0x4a54], 0xa82f80
jmp 0xa85342
mov dword [eax + 0x4a50], 0xa82fd0
mov dword [eax + 0x4a54], 0xa82f10
jmp 0xa85342