Function at 0x5bb330
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8c
mov eax, dword [0x9dd804]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, ecx
mov byte [esi + 0x50], 0
nop word [eax + eax]
cmp dword [esi + 0x5c], 0
jne 0x5bb35d
mov ecx, esi
call fcn.005baf20
cmp dword [esi + 0x5c], 0
mov eax, dword [esi + 0x6c]
mov edx, dword [esi + 0x44]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x70]
mov dword [esi + 0x48], edx
mov dword [esi + 4], edx
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], 0
mov dword [esi], 0x46
jne 0x5bbb50
mov ecx, dword [esi + 0x4c]
cmp ecx, 0x7e
ja case.0x5bb39c.1
movzx eax, byte [ecx + 0x5bbc84]
jmp dword [eax*4 + 0x5bbc0c]
mov ecx, esi
call fcn.005bb230
mov eax, dword [esi + 0x4c]
mov dword [esi], 0x28
cmp eax, 0x2f
jne 0x5bb3c4
mov ecx, esi
call fcn.005bae60
jmp 0x5bb534
cmp eax, 0x2a
jne 0x5bb54c
mov ecx, esi
call fcn.005bad70
jmp 0x5bb534
mov ecx, esi
call fcn.005bb230
mov eax, dword [esi + 0x4c]
mov dword [esi], 0xa
cmp eax, 0x2e
je 0x5bb572
add eax, 0xffffffd0
cmp eax, 9
ja 0x5bbbf8
push 1
mov ecx, esi
call fcn.005bc540
jmp 0x5bb534
inc edx
cmp edx, dword [esi + 0x40]
jge 0x5bb424
mov eax, dword [esi + 0x74]
push edx
push dword [esi + 0x3c]
call eax
add esp, 8
cmp ax, 0x22
je 0x5bb447
mov ecx, dword [esi + 0x44]
inc ecx
cmp ecx, dword [esi + 0x40]
jge 0x5bb52b
mov eax, dword [esi + 0x74]
push ecx
push dword [esi + 0x3c]
call eax
add esp, 8
cmp ax, 0x27
jne 0x5bb52b
mov ecx, esi
call fcn.005bb230
push 1
mov ecx, esi
call fcn.005bc100
jmp 0x5bb534
push 0
mov ecx, esi
call fcn.005bc100
jmp 0x5bb534
inc edx
cmp edx, dword [esi + 0x40]
jge 0x5bb58e
mov eax, dword [esi + 0x74]
push edx
push dword [esi + 0x3c]
call eax
add esp, 8
cmp ax, 0x21
jne 0x5bb58e
mov ecx, esi
call fcn.005bb230
mov ecx, esi
call fcn.005bb230
mov ecx, esi
mov dword [esi], 0x47
call fcn.005bc790
jmp 0x5bb534
cmp ecx, 0x41
jl 0x5bb4b4
cmp ecx, 0x5a
jle 0x5bb52b
lea eax, [ecx - 0x61]
cmp eax, 0x19
jbe 0x5bb52b
cmp ecx, 0x5f
je 0x5bb52b
cmp ecx, 0x24
je 0x5bb52b
lea eax, [ecx - 0x30]
cmp eax, 9
ja 0x5bb4d9
push 0
mov ecx, esi
call fcn.005bc540
jmp 0x5bb534
lea eax, [ebp - 0xc]
push eax
push ecx
call fcn.0056bff0
add esp, 8
cmp eax, 5
jae 0x5bbc07
push dword [esi + 0x4c]
mov byte [ebp + eax - 0xc], 0
lea eax, [ebp - 0xc]
push eax
push 0x961140
lea eax, [ebp - 0x8c]
push 0x80
push eax
call fcn.004b7180
add esp, 0x14
lea eax, [ebp - 0x8c]
mov ecx, esi
push eax
call fcn.005bafd0
mov ecx, esi
call fcn.005bb230
jmp 0x5bb534
push 1
mov ecx, esi
call fcn.005bbf60
cmp dword [esi], 0x44
je 0x5bb350
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp dword [esi + 0x4c], 0x3d
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x18
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x1b
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x42
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov dword [esi], 0
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov eax, dword [esi + 0x4c]
mov dword [esi], 0x25
cmp eax, 0x2b
jne 0x5bb5f0
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0xc
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp eax, 0x3d
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x14
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov eax, dword [esi + 0x4c]
mov dword [esi], 0x26
cmp eax, 0x2d
jne 0x5bb646
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0xd
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp eax, 0x3d
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x15
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x3d
mov dword [esi], 0x27
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x16
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x3d
mov dword [esi], 0x2a
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x19
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov eax, dword [esi + 0x4c]
mov dword [esi], 0x21
cmp eax, 0x3d
jne 0x5bb702
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x11
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp eax, 0x26
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x1e
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov eax, dword [esi + 0x4c]
mov dword [esi], 0x1f
cmp eax, 0x3d
jne 0x5bb758
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0xf
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp eax, 0x7c
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x1d
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x3d
mov dword [esi], 0x20
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x10
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x5d
mov dword [esi], 3
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x3d
mov dword [esi], 0x37
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x38
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov dword [esi], 4
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov eax, dword [esi + 0x4c]
mov dword [esi], 0x32
cmp eax, 0x3d
jne 0x5bb847
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x34
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp eax, 0x3c
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x3d
mov dword [esi], 0x23
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x12
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov eax, dword [esi + 0x4c]
mov dword [esi], 0x33
cmp eax, 0x3d
jne 0x5bb8b4
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x35
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp eax, 0x3e
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x3d
mov dword [esi], 0x24
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x13
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x3d
mov dword [esi], 0x2b
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x2f
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x2f
mov dword [esi], 0x22
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x3d
mov dword [esi], 0x29
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x17
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov eax, dword [esi + 0x4c]
mov dword [esi], 0xe
cmp eax, 0x3d
jne 0x5bb99e
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x2e
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp eax, 0x3e
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 7
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov eax, dword [esi + 0x4c]
mov dword [esi], 0x2c
cmp eax, 0x2e
jne 0x5bb9f4
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0xb
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp eax, 0x3f
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x4c], 0x3d
mov dword [esi], 0x2d
jne 0x5bbbf8
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x1a
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov dword [esi], 8
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov dword [esi], 9
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
cmp dword [esi + 0x58], 0
mov dword [esi], 5
je 0x5bbbf8
inc dword [esi + 0x64]
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov ecx, dword [esi + 0x58]
mov dword [esi], 6
test ecx, ecx
je 0x5bbbf8
add dword [esi + 0x64], 0xffffffff
jne 0x5bbbf8
mov dword [esi], 0x40
movsx eax, byte [ecx + 4]
mov dword [esi + 0x5c], eax
mov al, byte [ecx + 5]
mov byte [esi + 0x60], al
mov eax, dword [ecx + 8]
mov dword [esi + 0x64], eax
mov eax, dword [ecx]
mov dword [esi + 0x58], eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov dword [esi], 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov dword [esi], 2
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x1c
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.005bb230
mov dword [esi], 0x41
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp dword [esi + 0x4c], 0x24
mov ecx, esi
jne 0x5bbbef
call fcn.005bb230
mov ecx, dword [esi + 0x4c]
cmp ecx, 0x41
jl 0x5bbb6e
cmp ecx, 0x5a
jle 0x5bbb80
lea eax, [ecx - 0x61]
cmp eax, 0x19
jbe 0x5bbb80
cmp ecx, 0x5f
je 0x5bbb80
cmp ecx, 0x24
jne 0x5bbba3
cmp ecx, 0x24
je 0x5bbba3
push 0
mov ecx, esi
call fcn.005bbf60
mov dword [esi], 0x3e
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
cmp ecx, 0x7b
mov ecx, esi
jne 0x5bbbcb
call fcn.005bb230
mov ecx, esi
mov dword [esi], 0x3f
call fcn.005bb1e0
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
push 0x96110c
call fcn.005bafd0
mov dword [esi + 0x5c], 0
mov byte [esi + 0x60], 0
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00698575
mov esp, ebp
pop ebp
ret
push 0
push 0
call fcn.005bc160
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.00698575
mov esp, ebp
pop ebp
ret
call fcn.00698cbc
stosb byte es:[edi], al
mov ch, 91
add al, dh
mov eax, 0xb45c005b
pop ebx
add byte [edx - 0x4c], ch
pop ebx
add byte [esi - 0x2effa44a], bl
mov dh, 0x5b
add al, ah
mov edx, 0xbafc005b
pop ebx
add byte [ebx - 0x4a], ch
pop ebx
add byte [edi + 0x18005bb5], bh
mov ebx, 0xb615005b
pop ebx
add cl, bl
mov bl, 0x5b
add byte [ebx + 0x30005bb3], ah
mov edx, 0xba4c005b
pop ebx
add byte [esi], dl
mov eax, 0xb96d005b
pop ebx
add byte [ebx - 0x3cffa448], al
mov ecx, 0xbb34005b
pop ebx
add byte [eax - 0x5ffa449], dh
mov bh, 0x5b
add byte [ebp - 0x49], bh
pop ebx
add byte [esp + esi*4], cl
pop ebx
add byte [eax - 0x46], ch
pop ebx
add byte [edi], ah
mov bh, 0x5b
add byte [ecx + 0x23005bba], dl
mov ecx, 0xb4aa005b
pop ebx
add byte [eax], al
sbb eax, 0x1d1d1d1d
sbb eax, 488447261
sbb eax, 488447261
sbb eax, 488447261
sbb eax, 488447261
sbb eax, 488447261
sbb eax, 50463005
sbb eax, 100795652
pop es
or byte [ecx], cl
or cl, byte [ebx]
or al, 13
sbb eax, 488447261
sbb eax, 488447261
push cs
movups xmm2, xmmword [ecx]
adc dl, byte [ebx]
adc al, 29
sbb eax, 488447261
sbb eax, 488447261
sbb eax, 488447261
sbb eax, 488447261
sbb eax, 488447261
adc eax, 488052253
sbb eax, 488447261
sbb eax, 488447261
sbb eax, 488447261
sbb eax, 488119581
sbb eax, 488447261
sbb eax, 454695197
sbb al, 204
int3